From fd7e9c6d9076c7d45b29cc16a98bade499c86e1c Mon Sep 17 00:00:00 2001 From: Fede85 Date: Fri, 19 Jul 2013 16:20:34 +0200 Subject: [PATCH] WiFi library to the new format --- .../WiFiTwitterClient/WiFiTwitterClient.ino | 163 - .../avr/libraries/WiFi/utility/socket.c | 20 - hardware/arduino/sam/libraries/WiFi/WiFi.cpp | 199 - hardware/arduino/sam/libraries/WiFi/WiFi.h | 183 - .../arduino/sam/libraries/WiFi/WiFiClient.h | 40 - .../arduino/sam/libraries/WiFi/WiFiServer.cpp | 88 - .../arduino/sam/libraries/WiFi/WiFiServer.h | 27 - .../ConnectNoEncryption.ino | 123 - .../ConnectWithWEP/ConnectWithWEP.ino | 128 - .../ConnectWithWPA/ConnectWithWPA.ino | 118 - .../examples/ScanNetworks/ScanNetworks.ino | 118 - .../SimpleWebServerWiFi.ino | 130 - .../WifiChatServer/WifiChatServer.ino | 111 - .../WifiPachubeClient/WifiPachubeClient.ino | 191 - .../WifiPachubeClientString.ino | 177 - .../WifiTwitterClient/WifiTwitterClient.ino | 164 - .../examples/WifiWebClient/WifiWebClient.ino | 120 - .../WifiWebClientRepeating.ino | 138 - .../examples/WifiWebServer/WifiWebServer.ino | 132 - .../arduino/sam/libraries/WiFi/keywords.txt | 43 - .../sam/libraries/WiFi/utility/debug.h | 77 - .../sam/libraries/WiFi/utility/server_drv.cpp | 260 - .../sam/libraries/WiFi/utility/server_drv.h | 34 - .../sam/libraries/WiFi/utility/spi_drv.h | 83 - .../sam/libraries/WiFi/utility/wifi_drv.cpp | 491 - .../sam/libraries/WiFi/utility/wifi_drv.h | 219 - .../sam/libraries/WiFi/utility/wl_types.h | 31 - .../WiFi/arch/avr}/WiFiClient.cpp | 4 +- .../WiFi/arch/avr}/WiFiUdp.cpp | 4 +- .../WiFi/arch/avr}/utility/socket.h | 2 +- .../WiFi/arch/avr}/utility/spi_drv.cpp | 34 +- .../WiFi/arch/avr}/utility/wifi_spi.h | 4 +- .../WiFi/arch/sam}/WiFiClient.cpp | 20 +- libraries/WiFi/arch/sam/WiFiUdp.cpp | 163 + .../WiFi/arch/sam}/utility/socket.h | 4 +- .../WiFi/arch/sam}/utility/spi_drv.cpp | 4 +- .../WiFi/arch/sam}/utility/wifi_spi.h | 298 +- .../ConnectNoEncryption.ino | 0 .../ConnectWithWEP/ConnectWithWEP.ino | 0 .../ConnectWithWPA/ConnectWithWPA.ino | 0 .../examples/ScanNetworks/ScanNetworks.ino | 0 .../SimpleWebServerWiFi.ino | 0 .../WiFiChatServer/WiFiChatServer.ino | 0 .../WiFiPachubeClient/WiFiPachubeClient.ino | 0 .../WiFiPachubeClientString.ino | 0 .../WiFiUdpNtpClient/WiFiUdpNtpClient.ino | 0 .../WiFiUdpSendReceiveString.ino | 0 .../examples/WiFiWebClient/WiFiWebClient.ino | 0 .../WiFiWebClientRepeating.ino | 0 .../examples/WiFiWebServer/WiFiWebServer.ino | 0 libraries/WiFi/extras/binary/wifiHD.elf | Bin 0 -> 724331 bytes libraries/WiFi/extras/binary/wifiHD.hex | 16358 +++++++++++++ libraries/WiFi/extras/binary/wifiHD_2_1.elf | Bin 0 -> 1308530 bytes libraries/WiFi/extras/binary/wifi_dnld.elf | Bin 0 -> 182489 bytes libraries/WiFi/extras/binary/wifi_dnld.hex | 10470 +++++++++ .../WiFi/extras/binary/wifi_dnld_2_1.elf | Bin 0 -> 182264 bytes .../scripts/ArduinoWifiShield_upgrade.sh | 121 + libraries/WiFi/extras/wifiHD/.cproject | 4045 ++++ libraries/WiFi/extras/wifiHD/.project | 77 + .../WiFi/extras/wifiHD/Release/wifiHD.elf | Bin 0 -> 724331 bytes .../WiFi/extras/wifiHD/Release/wifiHD.hex | 16358 +++++++++++++ .../extras/wifiHD/src/CONFIG/conf_access.h | 170 + .../extras/wifiHD/src/CONFIG/conf_at45dbx.h | 83 + .../WiFi/extras/wifiHD/src/CONFIG/conf_ebi.h | 108 + .../wifiHD/src/CONFIG/conf_sd_mmc_spi.h | 73 + .../src/SOFTWARE_FRAMEWORK/ASM/trampoline.x | 74 + .../BOARDS/ARDUINO/arduino.h | 237 + .../SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c | 346 + .../SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h | 191 + .../BOARDS/EVK1105/evk1105.h | 433 + .../SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c | 346 + .../SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h | 187 + .../src/SOFTWARE_FRAMEWORK/BOARDS/board.h | 120 + .../src/SOFTWARE_FRAMEWORK/BOARDS/board.h.my | 120 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx.c | 653 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx.h | 270 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c | 234 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h | 164 + .../v2.7.0/UCR1/GCC/lib_ucr1_hd_sdio_v2.7.0.a | Bin 0 -> 11978 bytes .../v2.7.0/UCR1/GCC/lib_ucr1_hd_spi_v2.7.0.a | Bin 0 -> 13134 bytes .../GCC/lib_ucr1_hd_wl_sta_intwpa_v2.7.0.a | Bin 0 -> 1007102 bytes .../v2.7.0/UCR2/GCC/lib_ucr2_hd_sdio_v2.7.0.a | Bin 0 -> 11946 bytes .../v2.7.0/UCR2/GCC/lib_ucr2_hd_spi_v2.7.0.a | Bin 0 -> 13110 bytes .../GCC/lib_ucr2_hd_wl_sta_intwpa_v2.7.0.a | Bin 0 -> 1004426 bytes .../COMPONENTS/WIFI/HD/v2.7.0/revision.txt | 1 + .../COMPONENTS/WIFI/HD/wl_api.h | 1687 ++ .../COMPONENTS/WIFI/HD/wl_fw.h | 19287 ++++++++++++++++ .../COMPONENTS/WIFI/HD/wl_os.h | 35 + .../COMPONENTS/WIFI/HD/wl_sdio.h | 172 + .../COMPONENTS/WIFI/HD/wl_spi.h | 185 + .../COMPONENTS/WIFI/HD/wlap_api.h | 154 + .../DRIVERS/CPU/CYCLE_COUNTER/cycle_counter.h | 309 + .../SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.c | 995 + .../SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.h | 68 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.c | 183 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.h | 275 + .../DRIVERS/FLASHC/flashc.c | 1117 + .../DRIVERS/FLASHC/flashc.h | 1002 + .../SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c | 458 + .../SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h | 583 + .../DRIVERS/INTC/exception.x | 239 + .../SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c | 214 + .../SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h | 100 + .../SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.c | 296 + .../SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.h | 251 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c | 546 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h | 493 + .../DRIVERS/PM/pm_conf_clocks.c | 268 + .../DRIVERS/PM/power_clocks_lib.c | 566 + .../DRIVERS/PM/power_clocks_lib.h | 379 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.c | 213 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.h | 191 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c | 443 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h | 342 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.c | 314 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.h | 591 + .../SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c | 914 + .../SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h | 889 + .../SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.c | 87 + .../SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.h | 80 + .../SERVICES/LWIP/lwip-1.3.2/src/core/dhcp.c | 1724 ++ .../SERVICES/LWIP/lwip-1.3.2/src/core/dns.c | 982 + .../SERVICES/LWIP/lwip-1.3.2/src/core/init.c | 276 + .../LWIP/lwip-1.3.2/src/core/ipv4/autoip.c | 499 + .../LWIP/lwip-1.3.2/src/core/ipv4/icmp.c | 333 + .../LWIP/lwip-1.3.2/src/core/ipv4/igmp.c | 759 + .../LWIP/lwip-1.3.2/src/core/ipv4/inet.c | 280 + .../lwip-1.3.2/src/core/ipv4/inet_chksum.c | 440 + .../LWIP/lwip-1.3.2/src/core/ipv4/ip.c | 725 + .../LWIP/lwip-1.3.2/src/core/ipv4/ip_addr.c | 86 + .../LWIP/lwip-1.3.2/src/core/ipv4/ip_frag.c | 794 + .../SERVICES/LWIP/lwip-1.3.2/src/core/mem.c | 635 + .../SERVICES/LWIP/lwip-1.3.2/src/core/memp.c | 388 + .../SERVICES/LWIP/lwip-1.3.2/src/core/netif.c | 683 + .../SERVICES/LWIP/lwip-1.3.2/src/core/pbuf.c | 931 + .../SERVICES/LWIP/lwip-1.3.2/src/core/raw.c | 355 + .../SERVICES/LWIP/lwip-1.3.2/src/core/stats.c | 151 + .../SERVICES/LWIP/lwip-1.3.2/src/core/tcp.c | 1463 ++ .../LWIP/lwip-1.3.2/src/core/tcp_in.c | 1508 ++ .../LWIP/lwip-1.3.2/src/core/tcp_out.c | 1071 + .../SERVICES/LWIP/lwip-1.3.2/src/core/udp.c | 843 + .../lwip-1.3.2/src/include/ipv4/lwip/autoip.h | 118 + .../lwip-1.3.2/src/include/ipv4/lwip/icmp.h | 113 + .../lwip-1.3.2/src/include/ipv4/lwip/igmp.h | 164 + .../lwip-1.3.2/src/include/ipv4/lwip/inet.h | 105 + .../src/include/ipv4/lwip/inet_chksum.h | 62 + .../lwip-1.3.2/src/include/ipv4/lwip/ip.h | 200 + .../src/include/ipv4/lwip/ip_addr.h | 175 + .../src/include/ipv4/lwip/ip_frag.h | 78 + .../LWIP/lwip-1.3.2/src/include/lwip/api.h | 224 + .../lwip-1.3.2/src/include/lwip/api_msg.h | 164 + .../LWIP/lwip-1.3.2/src/include/lwip/arch.h | 235 + .../LWIP/lwip-1.3.2/src/include/lwip/debug.h | 100 + .../LWIP/lwip-1.3.2/src/include/lwip/def.h | 49 + .../LWIP/lwip-1.3.2/src/include/lwip/dhcp.h | 248 + .../LWIP/lwip-1.3.2/src/include/lwip/dns.h | 99 + .../LWIP/lwip-1.3.2/src/include/lwip/err.h | 89 + .../LWIP/lwip-1.3.2/src/include/lwip/init.h | 74 + .../LWIP/lwip-1.3.2/src/include/lwip/mem.h | 109 + .../LWIP/lwip-1.3.2/src/include/lwip/memp.h | 118 + .../lwip-1.3.2/src/include/lwip/memp_std.h | 104 + .../LWIP/lwip-1.3.2/src/include/lwip/netbuf.h | 88 + .../LWIP/lwip-1.3.2/src/include/lwip/netdb.h | 113 + .../LWIP/lwip-1.3.2/src/include/lwip/netif.h | 265 + .../lwip-1.3.2/src/include/lwip/netifapi.h | 107 + .../LWIP/lwip-1.3.2/src/include/lwip/opt.h | 1842 ++ .../LWIP/lwip-1.3.2/src/include/lwip/pbuf.h | 122 + .../LWIP/lwip-1.3.2/src/include/lwip/raw.h | 99 + .../LWIP/lwip-1.3.2/src/include/lwip/sio.h | 143 + .../LWIP/lwip-1.3.2/src/include/lwip/snmp.h | 366 + .../lwip-1.3.2/src/include/lwip/snmp_asn1.h | 103 + .../lwip-1.3.2/src/include/lwip/snmp_msg.h | 313 + .../src/include/lwip/snmp_structs.h | 264 + .../lwip-1.3.2/src/include/lwip/sockets.h | 359 + .../LWIP/lwip-1.3.2/src/include/lwip/stats.h | 285 + .../LWIP/lwip-1.3.2/src/include/lwip/sys.h | 245 + .../LWIP/lwip-1.3.2/src/include/lwip/tcp.h | 709 + .../LWIP/lwip-1.3.2/src/include/lwip/tcpip.h | 143 + .../LWIP/lwip-1.3.2/src/include/lwip/udp.h | 155 + .../lwip-1.3.2/src/include/netif/etharp.h | 194 + .../lwip-1.3.2/src/include/netif/loopif.h | 55 + .../lwip-1.3.2/src/include/netif/ppp_oe.h | 163 + .../lwip-1.3.2/src/include/netif/slipif.h | 53 + .../LWIP/lwip-1.3.2/src/netif/etharp.c | 1224 + .../LWIP/lwip-1.3.2/src/netif/loopif.c | 68 + .../lwip-port-1.3.2/HD/if/include/arch/cc.h | 79 + .../lwip-port-1.3.2/HD/if/include/arch/perf.h | 7 + .../lwip-port-1.3.2/HD/if/include/lwipopts.h | 426 + .../HD/if/include/netif/wlif.h | 10 + .../LWIP/lwip-port-1.3.2/HD/if/netif/wlif.c | 386 + .../LWIP/lwip-port-1.3.2/HD/readme.txt | 1 + .../SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c | 571 + .../SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h | 369 + .../SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c | 133 + .../SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h | 116 + .../UTILS/DEBUG/print_funcs.c | 215 + .../UTILS/DEBUG/print_funcs.h | 294 + .../LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h | 63 + .../NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h | 120 + .../NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h | 82 + .../LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h | 174 + .../LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h | 208 + .../libnewlib_addons-at32ucr2-speed_opt.a | Bin 0 -> 25540 bytes .../AT32UC3A/0512/GCC/link_uc3a0512.lds | 266 + .../AT32UC3A/1256/GCC/link_uc3a1256.lds | 266 + .../UTILS/PREPROCESSOR/mrepeat.h | 328 + .../UTILS/PREPROCESSOR/preprocessor.h | 55 + .../UTILS/PREPROCESSOR/stringz.h | 75 + .../UTILS/PREPROCESSOR/tpaste.h | 95 + .../UTILS/STARTUP_FILES/GCC/crt0.x | 121 + .../src/SOFTWARE_FRAMEWORK/UTILS/compiler.h | 1145 + .../src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h | 136 + .../src/SOFTWARE_FRAMEWORK/UTILS/parts.h | 203 + libraries/WiFi/extras/wifiHD/src/ard_spi.c | 1969 ++ libraries/WiFi/extras/wifiHD/src/ard_spi.h | 88 + libraries/WiFi/extras/wifiHD/src/ard_tcp.c | 987 + libraries/WiFi/extras/wifiHD/src/ard_tcp.h | 124 + libraries/WiFi/extras/wifiHD/src/ard_utils.c | 347 + libraries/WiFi/extras/wifiHD/src/ard_utils.h | 295 + libraries/WiFi/extras/wifiHD/src/avr32_spi.c | 394 + libraries/WiFi/extras/wifiHD/src/board_init.c | 297 + libraries/WiFi/extras/wifiHD/src/board_init.h | 313 + libraries/WiFi/extras/wifiHD/src/cmd_wl.c | 731 + libraries/WiFi/extras/wifiHD/src/cmd_wl.h | 66 + libraries/WiFi/extras/wifiHD/src/console.c | 212 + libraries/WiFi/extras/wifiHD/src/console.h | 46 + libraries/WiFi/extras/wifiHD/src/debug.h | 191 + .../WiFi/extras/wifiHD/src/fw_download.h | 38 + .../extras/wifiHD/src/fw_download_extflash.c | 82 + libraries/WiFi/extras/wifiHD/src/license.txt | 42 + libraries/WiFi/extras/wifiHD/src/lwip_setup.c | 145 + libraries/WiFi/extras/wifiHD/src/lwip_setup.h | 30 + libraries/WiFi/extras/wifiHD/src/lwipopts.h | 450 + libraries/WiFi/extras/wifiHD/src/main.c | 454 + libraries/WiFi/extras/wifiHD/src/nvram.c | 153 + libraries/WiFi/extras/wifiHD/src/nvram.h | 10 + libraries/WiFi/extras/wifiHD/src/owl_os.c | 140 + libraries/WiFi/extras/wifiHD/src/ping.c | 340 + libraries/WiFi/extras/wifiHD/src/ping.h | 45 + .../WiFi/extras/wifiHD/src/printf-stdarg.c | 323 + .../WiFi/extras/wifiHD/src/printf-stdarg.h | 34 + libraries/WiFi/extras/wifiHD/src/timer.c | 232 + libraries/WiFi/extras/wifiHD/src/timer.h | 51 + libraries/WiFi/extras/wifiHD/src/top_defs.h | 120 + libraries/WiFi/extras/wifiHD/src/trace.h | 44 + libraries/WiFi/extras/wifiHD/src/util.c | 260 + libraries/WiFi/extras/wifiHD/src/util.h | 71 + libraries/WiFi/extras/wifiHD/src/wifi_spi.h | 160 + libraries/WiFi/extras/wifiHD/src/wl_cm.c | 431 + libraries/WiFi/extras/wifiHD/src/wl_cm.h | 51 + .../WiFi/extras/wifiHD/src}/wl_definitions.h | 15 +- libraries/WiFi/extras/wifiHD/wifiHD.cproj | 1291 ++ libraries/WiFi/extras/wifi_dnld/.cproject | 1281 + libraries/WiFi/extras/wifi_dnld/.project | 70 + .../extras/wifi_dnld/Release/wifi_dnld.elf | Bin 0 -> 182489 bytes .../extras/wifi_dnld/src/CONFIG/conf_access.h | 170 + .../wifi_dnld/src/CONFIG/conf_at45dbx.h | 83 + .../src/Doc/SPB104 product brief.pdf | Bin 0 -> 760252 bytes .../wifi_dnld/src/Doc/gettingstarted.pdf | Bin 0 -> 701930 bytes .../src/SOFTWARE_FRAMEWORK/ASM/trampoline.x | 74 + .../BOARDS/ARDUINO/arduino.h | 234 + .../SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c | 346 + .../SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h | 191 + .../BOARDS/EVK1105/evk1105.h | 433 + .../SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c | 346 + .../SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h | 187 + .../src/SOFTWARE_FRAMEWORK/BOARDS/board.h | 120 + .../src/SOFTWARE_FRAMEWORK/BOARDS/board.h.ori | 121 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx.c | 672 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx.h | 269 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c | 234 + .../MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h | 164 + .../DRIVERS/FLASHC/flashc.c | 1117 + .../DRIVERS/FLASHC/flashc.h | 1002 + .../SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c | 458 + .../SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h | 583 + .../DRIVERS/INTC/exception.x | 239 + .../SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c | 214 + .../SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h | 100 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c | 546 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h | 493 + .../DRIVERS/PM/pm_conf_clocks.c | 268 + .../DRIVERS/PM/power_clocks_lib.c | 566 + .../DRIVERS/PM/power_clocks_lib.h | 379 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c | 443 + .../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h | 342 + .../SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c | 914 + .../SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h | 889 + .../SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c | 571 + .../SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h | 369 + .../SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c | 119 + .../SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h | 116 + .../UTILS/DEBUG/print_funcs.c | 215 + .../UTILS/DEBUG/print_funcs.h | 294 + .../LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h | 63 + .../NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h | 120 + .../NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h | 82 + .../LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h | 174 + .../LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h | 208 + .../libnewlib_addons-at32ucr2-speed_opt.a | Bin 0 -> 25540 bytes .../AT32UC3A/0512/GCC/link_uc3a0512.lds | 266 + .../AT32UC3A/1256/GCC/link_uc3a1256.lds | 266 + .../UTILS/PREPROCESSOR/mrepeat.h | 328 + .../UTILS/PREPROCESSOR/preprocessor.h | 55 + .../UTILS/PREPROCESSOR/stringz.h | 75 + .../UTILS/PREPROCESSOR/tpaste.h | 95 + .../UTILS/STARTUP_FILES/GCC/crt0.x | 121 + .../src/SOFTWARE_FRAMEWORK/UTILS/compiler.h | 1145 + .../src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h | 136 + .../src/SOFTWARE_FRAMEWORK/UTILS/parts.h | 203 + libraries/WiFi/extras/wifi_dnld/src/clocks.c | 101 + libraries/WiFi/extras/wifi_dnld/src/clocks.h | 78 + .../WiFi/extras/wifi_dnld/src/flash_fw.c | 125 + .../WiFi/extras/wifi_dnld/src/license.txt | 42 + .../WiFi/extras/wifi_dnld/src/nor_flash.c | 99 + .../WiFi/extras/wifi_dnld/src/nor_flash.h | 41 + .../WiFi/extras/wifi_dnld/src/printf-stdarg.c | 323 + .../WiFi/extras/wifi_dnld/src/printf-stdarg.h | 36 + libraries/WiFi/extras/wifi_dnld/src/startup.c | 75 + libraries/WiFi/extras/wifi_dnld/src/startup.h | 35 + libraries/WiFi/extras/wifi_dnld/src/wl_fw.h | 19287 ++++++++++++++++ .../WiFi/extras/wifi_dnld/wifi_dnld.cproj | 495 + libraries/WiFi/extras/wifishield.atsln | 36 + .../libraries => libraries}/WiFi/keywords.txt | 10 +- libraries/WiFi/library.properties | 10 + .../WiFi => libraries/WiFi/src}/WiFi.cpp | 4 +- .../WiFi => libraries/WiFi/src}/WiFi.h | 0 .../WiFi => libraries/WiFi/src}/WiFiClient.h | 0 .../WiFi/src}/WiFiServer.cpp | 2 +- .../WiFi => libraries/WiFi/src}/WiFiServer.h | 0 .../WiFi => libraries/WiFi/src}/WiFiUdp.h | 0 .../WiFi/src}/utility/debug.h | 0 .../WiFi/src}/utility/server_drv.cpp | 126 +- .../WiFi/src}/utility/server_drv.h | 22 +- .../WiFi/src}/utility/socket.c | 2 +- .../WiFi/src}/utility/spi_drv.h | 4 +- .../WiFi/src}/utility/wifi_drv.cpp | 50 +- .../WiFi/src}/utility/wifi_drv.h | 18 +- .../WiFi/src}/utility/wl_definitions.h | 2 +- .../WiFi/src}/utility/wl_types.h | 0 340 files changed, 167023 insertions(+), 3927 deletions(-) delete mode 100644 hardware/arduino/avr/libraries/WiFi/examples/WiFiTwitterClient/WiFiTwitterClient.ino delete mode 100644 hardware/arduino/avr/libraries/WiFi/utility/socket.c delete mode 100644 hardware/arduino/sam/libraries/WiFi/WiFi.cpp delete mode 100644 hardware/arduino/sam/libraries/WiFi/WiFi.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/WiFiClient.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/WiFiServer.cpp delete mode 100644 hardware/arduino/sam/libraries/WiFi/WiFiServer.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino delete mode 100644 hardware/arduino/sam/libraries/WiFi/keywords.txt delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/debug.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/server_drv.cpp delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/server_drv.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/spi_drv.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.cpp delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.h delete mode 100644 hardware/arduino/sam/libraries/WiFi/utility/wl_types.h rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/arch/avr}/WiFiClient.cpp (98%) mode change 100644 => 100755 rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/arch/avr}/WiFiUdp.cpp (97%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/arch/avr}/utility/socket.h (94%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/arch/avr}/utility/spi_drv.cpp (93%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/arch/avr}/utility/wifi_spi.h (98%) rename {hardware/arduino/sam/libraries/WiFi => libraries/WiFi/arch/sam}/WiFiClient.cpp (89%) mode change 100644 => 100755 create mode 100644 libraries/WiFi/arch/sam/WiFiUdp.cpp rename {hardware/arduino/sam/libraries/WiFi => libraries/WiFi/arch/sam}/utility/socket.h (93%) rename {hardware/arduino/sam/libraries/WiFi => libraries/WiFi/arch/sam}/utility/spi_drv.cpp (99%) rename {hardware/arduino/sam/libraries/WiFi => libraries/WiFi/arch/sam}/utility/wifi_spi.h (88%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/ScanNetworks/ScanNetworks.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiChatServer/WiFiChatServer.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiUdpNtpClient/WiFiUdpNtpClient.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiWebClient/WiFiWebClient.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino (100%) rename {hardware/arduino/avr/libraries => libraries}/WiFi/examples/WiFiWebServer/WiFiWebServer.ino (100%) create mode 100644 libraries/WiFi/extras/binary/wifiHD.elf create mode 100644 libraries/WiFi/extras/binary/wifiHD.hex create mode 100644 libraries/WiFi/extras/binary/wifiHD_2_1.elf create mode 100644 libraries/WiFi/extras/binary/wifi_dnld.elf create mode 100644 libraries/WiFi/extras/binary/wifi_dnld.hex create mode 100644 libraries/WiFi/extras/binary/wifi_dnld_2_1.elf create mode 100755 libraries/WiFi/extras/scripts/ArduinoWifiShield_upgrade.sh create mode 100644 libraries/WiFi/extras/wifiHD/.cproject create mode 100644 libraries/WiFi/extras/wifiHD/.project create mode 100644 libraries/WiFi/extras/wifiHD/Release/wifiHD.elf create mode 100644 libraries/WiFi/extras/wifiHD/Release/wifiHD.hex create mode 100644 libraries/WiFi/extras/wifiHD/src/CONFIG/conf_access.h create mode 100644 libraries/WiFi/extras/wifiHD/src/CONFIG/conf_at45dbx.h create mode 100644 libraries/WiFi/extras/wifiHD/src/CONFIG/conf_ebi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/CONFIG/conf_sd_mmc_spi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.my create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_sdio_v2.7.0.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_spi_v2.7.0.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_wl_sta_intwpa_v2.7.0.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_sdio_v2.7.0.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_spi_v2.7.0.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_wl_sta_intwpa_v2.7.0.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/revision.txt create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_api.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_os.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_sdio.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_spi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wlap_api.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER/cycle_counter.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dhcp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dns.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/init.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/autoip.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/icmp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/igmp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet_chksum.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_addr.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_frag.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/mem.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/memp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/netif.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/pbuf.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/raw.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/stats.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_in.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_out.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/udp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/autoip.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/icmp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/igmp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet_chksum.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_addr.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_frag.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api_msg.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/arch.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/debug.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/def.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dhcp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dns.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/err.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/init.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/mem.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp_std.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netbuf.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netdb.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netif.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netifapi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/opt.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/pbuf.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/raw.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sio.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_asn1.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_msg.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_structs.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sockets.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/stats.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sys.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcpip.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/udp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/etharp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/loopif.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/ppp_oe.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/slipif.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/etharp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/loopif.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/cc.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/perf.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/lwipopts.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/netif/wlif.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/netif/wlif.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/readme.txt create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/libnewlib_addons-at32ucr2-speed_opt.a create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/parts.h create mode 100644 libraries/WiFi/extras/wifiHD/src/ard_spi.c create mode 100644 libraries/WiFi/extras/wifiHD/src/ard_spi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/ard_tcp.c create mode 100644 libraries/WiFi/extras/wifiHD/src/ard_tcp.h create mode 100644 libraries/WiFi/extras/wifiHD/src/ard_utils.c create mode 100644 libraries/WiFi/extras/wifiHD/src/ard_utils.h create mode 100644 libraries/WiFi/extras/wifiHD/src/avr32_spi.c create mode 100644 libraries/WiFi/extras/wifiHD/src/board_init.c create mode 100644 libraries/WiFi/extras/wifiHD/src/board_init.h create mode 100644 libraries/WiFi/extras/wifiHD/src/cmd_wl.c create mode 100644 libraries/WiFi/extras/wifiHD/src/cmd_wl.h create mode 100644 libraries/WiFi/extras/wifiHD/src/console.c create mode 100644 libraries/WiFi/extras/wifiHD/src/console.h create mode 100644 libraries/WiFi/extras/wifiHD/src/debug.h create mode 100644 libraries/WiFi/extras/wifiHD/src/fw_download.h create mode 100644 libraries/WiFi/extras/wifiHD/src/fw_download_extflash.c create mode 100644 libraries/WiFi/extras/wifiHD/src/license.txt create mode 100644 libraries/WiFi/extras/wifiHD/src/lwip_setup.c create mode 100644 libraries/WiFi/extras/wifiHD/src/lwip_setup.h create mode 100644 libraries/WiFi/extras/wifiHD/src/lwipopts.h create mode 100644 libraries/WiFi/extras/wifiHD/src/main.c create mode 100644 libraries/WiFi/extras/wifiHD/src/nvram.c create mode 100644 libraries/WiFi/extras/wifiHD/src/nvram.h create mode 100644 libraries/WiFi/extras/wifiHD/src/owl_os.c create mode 100644 libraries/WiFi/extras/wifiHD/src/ping.c create mode 100644 libraries/WiFi/extras/wifiHD/src/ping.h create mode 100644 libraries/WiFi/extras/wifiHD/src/printf-stdarg.c create mode 100644 libraries/WiFi/extras/wifiHD/src/printf-stdarg.h create mode 100644 libraries/WiFi/extras/wifiHD/src/timer.c create mode 100644 libraries/WiFi/extras/wifiHD/src/timer.h create mode 100644 libraries/WiFi/extras/wifiHD/src/top_defs.h create mode 100644 libraries/WiFi/extras/wifiHD/src/trace.h create mode 100644 libraries/WiFi/extras/wifiHD/src/util.c create mode 100644 libraries/WiFi/extras/wifiHD/src/util.h create mode 100644 libraries/WiFi/extras/wifiHD/src/wifi_spi.h create mode 100644 libraries/WiFi/extras/wifiHD/src/wl_cm.c create mode 100644 libraries/WiFi/extras/wifiHD/src/wl_cm.h rename {hardware/arduino/sam/libraries/WiFi/utility => libraries/WiFi/extras/wifiHD/src}/wl_definitions.h (70%) create mode 100644 libraries/WiFi/extras/wifiHD/wifiHD.cproj create mode 100644 libraries/WiFi/extras/wifi_dnld/.cproject create mode 100644 libraries/WiFi/extras/wifi_dnld/.project create mode 100644 libraries/WiFi/extras/wifi_dnld/Release/wifi_dnld.elf create mode 100644 libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_access.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_at45dbx.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/Doc/SPB104 product brief.pdf create mode 100644 libraries/WiFi/extras/wifi_dnld/src/Doc/gettingstarted.pdf create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.ori create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/libnewlib_addons-at32ucr2-speed_opt.a create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/parts.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/clocks.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/clocks.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/flash_fw.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/license.txt create mode 100644 libraries/WiFi/extras/wifi_dnld/src/nor_flash.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/nor_flash.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/startup.c create mode 100644 libraries/WiFi/extras/wifi_dnld/src/startup.h create mode 100644 libraries/WiFi/extras/wifi_dnld/src/wl_fw.h create mode 100644 libraries/WiFi/extras/wifi_dnld/wifi_dnld.cproj create mode 100644 libraries/WiFi/extras/wifishield.atsln rename {hardware/arduino/avr/libraries => libraries}/WiFi/keywords.txt (86%) create mode 100644 libraries/WiFi/library.properties rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/WiFi.cpp (98%) mode change 100644 => 100755 rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/WiFi.h (100%) mode change 100644 => 100755 rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/WiFiClient.h (100%) mode change 100644 => 100755 rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/WiFiServer.cpp (98%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/WiFiServer.h (100%) mode change 100644 => 100755 rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/WiFiUdp.h (100%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/debug.h (100%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/server_drv.cpp (98%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/server_drv.h (97%) rename {hardware/arduino/sam/libraries/WiFi => libraries/WiFi/src}/utility/socket.c (95%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/spi_drv.h (98%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/wifi_drv.cpp (98%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/wifi_drv.h (99%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/wl_definitions.h (98%) rename {hardware/arduino/avr/libraries/WiFi => libraries/WiFi/src}/utility/wl_types.h (100%) diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiTwitterClient/WiFiTwitterClient.ino b/hardware/arduino/avr/libraries/WiFi/examples/WiFiTwitterClient/WiFiTwitterClient.ino deleted file mode 100644 index d500cfb9b..000000000 --- a/hardware/arduino/avr/libraries/WiFi/examples/WiFiTwitterClient/WiFiTwitterClient.ino +++ /dev/null @@ -1,163 +0,0 @@ -/* - Wifi Twitter Client with Strings - - This sketch connects to Twitter using using an Arduino WiFi shield. - It parses the XML returned, and looks for this is a tweet - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - This example uses the String library, which is part of the Arduino core from - version 0019. - - Circuit: - * WiFi shield attached to pins 10, 11, 12, 13 - - created 23 apr 2012 - modified 31 May 2012 - by Tom Igoe - - This code is in the public domain. - - */ -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "password"; // your network password (use for WPA, or use as key for WEP) -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; // status of the wifi connection - -// initialize the library instance: -WiFiClient client; - -const unsigned long requestInterval = 30*1000; // delay between requests; 30 seconds - -// if you don't want to use DNS (and reduce your sketch size) -// use the numeric IP instead of the name for the server: -//IPAddress server(199,59,149,200); // numeric IP for api.twitter.com -char server[] = "api.twitter.com"; // name address for twitter API - -boolean requested; // whether you've made a request since connecting -unsigned long lastAttemptTime = 0; // last time you connected to the server, in milliseconds - -String currentLine = ""; // string to hold the text from server -String tweet = ""; // string to hold the tweet -boolean readingTweet = false; // if you're currently reading the tweet - -void setup() { - // reserve space for the strings: - currentLine.reserve(256); - tweet.reserve(150); - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - // you're connected now, so print out the status: - printWifiStatus(); - connectToServer(); -} - -void loop() -{ - if (client.connected()) { - if (client.available()) { - // read incoming bytes: - char inChar = client.read(); - - // add incoming byte to end of line: - currentLine += inChar; - - // if you get a newline, clear the line: - if (inChar == '\n') { - currentLine = ""; - } - // if the current line ends with , it will - // be followed by the tweet: - if ( currentLine.endsWith("")) { - // tweet is beginning. Clear the tweet string: - readingTweet = true; - tweet = ""; - // break out of the loop so this character isn't added to the tweet: - return; - } - // if you're currently reading the bytes of a tweet, - // add them to the tweet String: - if (readingTweet) { - if (inChar != '<') { - tweet += inChar; - } - else { - // if you got a "<" character, - // you've reached the end of the tweet: - readingTweet = false; - Serial.println(tweet); - // close the connection to the server: - client.stop(); - } - } - } - } - else if (millis() - lastAttemptTime > requestInterval) { - // if you're not connected, and two minutes have passed since - // your last connection, then attempt to connect again: - connectToServer(); - } -} - -void connectToServer() { - // attempt to connect, and wait a millisecond: - Serial.println("connecting to server..."); - if (client.connect(server, 80)) { - Serial.println("making HTTP request..."); - // make HTTP GET request to twitter: - client.println("GET /1/statuses/user_timeline.xml?screen_name=arduino HTTP/1.1"); - client.println("Host: api.twitter.com"); - client.println("Connection: close"); - client.println(); - } - // note the time of this connect attempt: - lastAttemptTime = millis(); -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - - - diff --git a/hardware/arduino/avr/libraries/WiFi/utility/socket.c b/hardware/arduino/avr/libraries/WiFi/utility/socket.c deleted file mode 100644 index 665073b04..000000000 --- a/hardware/arduino/avr/libraries/WiFi/utility/socket.c +++ /dev/null @@ -1,20 +0,0 @@ -/* -* -@file socket.c -@brief define function of socket API -* -*/ -#include -#include "socket.h" - -SOCKET socket(uint8 protocol) {return 0;} // Opens a socket(TCP or UDP or IP_RAW mode) -void close(SOCKET s) {} // Close socket -uint8 connect(SOCKET s, uint8 * addr, uint16 port) {return 0;} // Establish TCP connection (Active connection) -void disconnect(SOCKET s) {} // disconnect the connection -uint8 listen(SOCKET s) { return 0;} // Establish TCP connection (Passive connection) -uint16 send(SOCKET s, const uint8 * buf, uint16 len) { return 0;} // Send data (TCP) -uint16 recv(SOCKET s, uint8 * buf, uint16 len) {return 0;} // Receive data (TCP) -uint16 sendto(SOCKET s, const uint8 * buf, uint16 len, uint8 * addr, uint16 port) {return 0;} // Send data (UDP/IP RAW) -uint16 recvfrom(SOCKET s, uint8 * buf, uint16 len, uint8 * addr, uint16 *port) {return 0;} // Receive data (UDP/IP RAW) - -uint16 igmpsend(SOCKET s, const uint8 * buf, uint16 len) {return 0;} diff --git a/hardware/arduino/sam/libraries/WiFi/WiFi.cpp b/hardware/arduino/sam/libraries/WiFi/WiFi.cpp deleted file mode 100644 index c0cb0016d..000000000 --- a/hardware/arduino/sam/libraries/WiFi/WiFi.cpp +++ /dev/null @@ -1,199 +0,0 @@ -#include "wifi_drv.h" -#include "WiFi.h" - -extern "C" { - #include "utility/wl_definitions.h" - #include "utility/wl_types.h" - #include "debug.h" -} - -// XXX: don't make assumptions about the value of MAX_SOCK_NUM. -int16_t WiFiClass::_state[MAX_SOCK_NUM] = { 0, 0, 0, 0 }; -uint16_t WiFiClass::_server_port[MAX_SOCK_NUM] = { 0, 0, 0, 0 }; - -WiFiClass::WiFiClass() -{ - // Driver initialization - init(); -} - -void WiFiClass::init() -{ - WiFiDrv::wifiDriverInit(); -} - -uint8_t WiFiClass::getSocket() -{ - for (uint8_t i = 0; i < MAX_SOCK_NUM; ++i) - { - if (WiFiClass::_server_port[i] == 0) - { - return i; - } - } - return NO_SOCKET_AVAIL; -} - -char* WiFiClass::firmwareVersion() -{ - return WiFiDrv::getFwVersion(); -} - -int WiFiClass::begin(char* ssid) -{ - uint8_t status = WL_IDLE_STATUS; - uint8_t attempts = WL_MAX_ATTEMPT_CONNECTION; - - if (WiFiDrv::wifiSetNetwork(ssid, strlen(ssid)) != WL_FAILURE) - { - do - { - delay(WL_DELAY_START_CONNECTION); - status = WiFiDrv::getConnectionStatus(); - } - while ((( status == WL_IDLE_STATUS)||(status == WL_SCAN_COMPLETED))&&(--attempts>0)); - }else - { - status = WL_CONNECT_FAILED; - } - return status; -} - -int WiFiClass::begin(char* ssid, uint8_t key_idx, const char *key) -{ - uint8_t status = WL_IDLE_STATUS; - uint8_t attempts = WL_MAX_ATTEMPT_CONNECTION; - - // set encryption key - if (WiFiDrv::wifiSetKey(ssid, strlen(ssid), key_idx, key, strlen(key)) != WL_FAILURE) - { - do - { - delay(WL_DELAY_START_CONNECTION); - status = WiFiDrv::getConnectionStatus(); - } - while ((( status == WL_IDLE_STATUS)||(status == WL_SCAN_COMPLETED))&&(--attempts>0)); - }else{ - status = WL_CONNECT_FAILED; - } - return status; -} - -int WiFiClass::begin(char* ssid, const char *passphrase) -{ - uint8_t status = WL_IDLE_STATUS; - uint8_t attempts = WL_MAX_ATTEMPT_CONNECTION; - - // set passphrase - if (WiFiDrv::wifiSetPassphrase(ssid, strlen(ssid), passphrase, strlen(passphrase))!= WL_FAILURE) - { - do - { - delay(WL_DELAY_START_CONNECTION); - status = WiFiDrv::getConnectionStatus(); - } - while ((( status == WL_IDLE_STATUS)||(status == WL_SCAN_COMPLETED))&&(--attempts>0)); - }else{ - status = WL_CONNECT_FAILED; - } - return status; -} - -int WiFiClass::disconnect() -{ - return WiFiDrv::disconnect(); -} - -uint8_t* WiFiClass::macAddress(uint8_t* mac) -{ - uint8_t* _mac = WiFiDrv::getMacAddress(); - memcpy(mac, _mac, WL_MAC_ADDR_LENGTH); - return mac; -} - -IPAddress WiFiClass::localIP() -{ - IPAddress ret; - WiFiDrv::getIpAddress(ret); - return ret; -} - -IPAddress WiFiClass::subnetMask() -{ - IPAddress ret; - WiFiDrv::getSubnetMask(ret); - return ret; -} - -IPAddress WiFiClass::gatewayIP() -{ - IPAddress ret; - WiFiDrv::getGatewayIP(ret); - return ret; -} - -char* WiFiClass::SSID() -{ - return WiFiDrv::getCurrentSSID(); -} - -uint8_t* WiFiClass::BSSID(uint8_t* bssid) -{ - uint8_t* _bssid = WiFiDrv::getCurrentBSSID(); - memcpy(bssid, _bssid, WL_MAC_ADDR_LENGTH); - return bssid; -} - -int32_t WiFiClass::RSSI() -{ - return WiFiDrv::getCurrentRSSI(); -} - -uint8_t WiFiClass::encryptionType() -{ - return WiFiDrv::getCurrentEncryptionType(); -} - - -int8_t WiFiClass::scanNetworks() -{ - uint8_t attempts = 10; - uint8_t numOfNetworks = 0; - - if (WiFiDrv::startScanNetworks() == WL_FAILURE) - return WL_FAILURE; - do - { - delay(2000); - numOfNetworks = WiFiDrv::getScanNetworks(); - } - while (( numOfNetworks == 0)&&(--attempts>0)); - return numOfNetworks; -} - -char* WiFiClass::SSID(uint8_t networkItem) -{ - return WiFiDrv::getSSIDNetoworks(networkItem); -} - -int32_t WiFiClass::RSSI(uint8_t networkItem) -{ - return WiFiDrv::getRSSINetoworks(networkItem); -} - -uint8_t WiFiClass::encryptionType(uint8_t networkItem) -{ - return WiFiDrv::getEncTypeNetowrks(networkItem); -} - -uint8_t WiFiClass::status() -{ - return WiFiDrv::getConnectionStatus(); -} - -int WiFiClass::hostByName(const char* aHostname, IPAddress& aResult) -{ - return WiFiDrv::getHostByName(aHostname, aResult); -} - -WiFiClass WiFi; diff --git a/hardware/arduino/sam/libraries/WiFi/WiFi.h b/hardware/arduino/sam/libraries/WiFi/WiFi.h deleted file mode 100644 index 9a86701a0..000000000 --- a/hardware/arduino/sam/libraries/WiFi/WiFi.h +++ /dev/null @@ -1,183 +0,0 @@ -#ifndef WiFi_h -#define WiFi_h - -#include - -extern "C" { - #include "utility/wl_definitions.h" - #include "utility/wl_types.h" -} - -#include "IPAddress.h" -#include "WiFiClient.h" -#include "WiFiServer.h" - -class WiFiClass -{ -private: - - static void init(); -public: - static int16_t _state[MAX_SOCK_NUM]; - static uint16_t _server_port[MAX_SOCK_NUM]; - - WiFiClass(); - - /* - * Get the first socket available - */ - static uint8_t getSocket(); - - /* - * Get firmware version - */ - static char* firmwareVersion(); - - - /* Start Wifi connection for OPEN networks - * - * param ssid: Pointer to the SSID string. - */ - int begin(char* ssid); - - /* Start Wifi connection with WEP encryption. - * Configure a key into the device. The key type (WEP-40, WEP-104) - * is determined by the size of the key (5 bytes for WEP-40, 13 bytes for WEP-104). - * - * param ssid: Pointer to the SSID string. - * param key_idx: The key index to set. Valid values are 0-3. - * param key: Key input buffer. - */ - int begin(char* ssid, uint8_t key_idx, const char* key); - - /* Start Wifi connection with passphrase - * the most secure supported mode will be automatically selected - * - * param ssid: Pointer to the SSID string. - * param passphrase: Passphrase. Valid characters in a passphrase - * must be between ASCII 32-126 (decimal). - */ - int begin(char* ssid, const char *passphrase); - - /* - * Disconnect from the network - * - * return: one value of wl_status_t enum - */ - int disconnect(void); - - /* - * Get the interface MAC address. - * - * return: pointer to uint8_t array with length WL_MAC_ADDR_LENGTH - */ - uint8_t* macAddress(uint8_t* mac); - - /* - * Get the interface IP address. - * - * return: Ip address value - */ - IPAddress localIP(); - - /* - * Get the interface subnet mask address. - * - * return: subnet mask address value - */ - IPAddress subnetMask(); - - /* - * Get the gateway ip address. - * - * return: gateway ip address value - */ - IPAddress gatewayIP(); - - /* - * Return the current SSID associated with the network - * - * return: ssid string - */ - char* SSID(); - - /* - * Return the current BSSID associated with the network. - * It is the MAC address of the Access Point - * - * return: pointer to uint8_t array with length WL_MAC_ADDR_LENGTH - */ - uint8_t* BSSID(uint8_t* bssid); - - /* - * Return the current RSSI /Received Signal Strength in dBm) - * associated with the network - * - * return: signed value - */ - int32_t RSSI(); - - /* - * Return the Encryption Type associated with the network - * - * return: one value of wl_enc_type enum - */ - uint8_t encryptionType(); - - /* - * Start scan WiFi networks available - * - * return: Number of discovered networks - */ - int8_t scanNetworks(); - - /* - * Return the SSID discovered during the network scan. - * - * param networkItem: specify from which network item want to get the information - * - * return: ssid string of the specified item on the networks scanned list - */ - char* SSID(uint8_t networkItem); - - /* - * Return the encryption type of the networks discovered during the scanNetworks - * - * param networkItem: specify from which network item want to get the information - * - * return: encryption type (enum wl_enc_type) of the specified item on the networks scanned list - */ - uint8_t encryptionType(uint8_t networkItem); - - /* - * Return the RSSI of the networks discovered during the scanNetworks - * - * param networkItem: specify from which network item want to get the information - * - * return: signed value of RSSI of the specified item on the networks scanned list - */ - int32_t RSSI(uint8_t networkItem); - - /* - * Return Connection status. - * - * return: one of the value defined in wl_status_t - */ - uint8_t status(); - - /* - * Resolve the given hostname to an IP address. - * param aHostname: Name to be resolved - * param aResult: IPAddress structure to store the returned IP address - * result: 1 if aIPAddrString was successfully converted to an IP address, - * else error code - */ - int hostByName(const char* aHostname, IPAddress& aResult); - - friend class WiFiClient; - friend class WiFiServer; -}; - -extern WiFiClass WiFi; - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/WiFiClient.h b/hardware/arduino/sam/libraries/WiFi/WiFiClient.h deleted file mode 100644 index 5a7f0f3b8..000000000 --- a/hardware/arduino/sam/libraries/WiFi/WiFiClient.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef wificlient_h -#define wificlient_h -#include "Arduino.h" -#include "Print.h" -#include "Client.h" -#include "IPAddress.h" - -class WiFiClient : public Client { - -public: - WiFiClient(); - WiFiClient(uint8_t sock); - - uint8_t status(); - virtual int connect(IPAddress ip, uint16_t port); - virtual int connect(const char *host, uint16_t port); - virtual size_t write(uint8_t); - virtual size_t write(const uint8_t *buf, size_t size); - virtual int available(); - virtual int read(); - virtual int read(uint8_t *buf, size_t size); - virtual int peek(); - virtual void flush(); - virtual void stop(); - virtual uint8_t connected(); - virtual operator bool(); - - friend class WiFiServer; - - using Print::write; - -private: - static uint16_t _srcport; - uint8_t _sock; //not used - uint16_t _socket; - - uint8_t getFirstSocket(); -}; - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/WiFiServer.cpp b/hardware/arduino/sam/libraries/WiFi/WiFiServer.cpp deleted file mode 100644 index 77dbac0b9..000000000 --- a/hardware/arduino/sam/libraries/WiFi/WiFiServer.cpp +++ /dev/null @@ -1,88 +0,0 @@ -#include -#include "server_drv.h" - -extern "C" { - #include "utility/debug.h" -} - -#include "WiFi.h" -#include "WiFiClient.h" -#include "WiFiServer.h" - -WiFiServer::WiFiServer(uint16_t port) -{ - _port = port; -} - -void WiFiServer::begin() -{ - uint8_t _sock = WiFiClass::getSocket(); - if (_sock != NO_SOCKET_AVAIL) - { - ServerDrv::startServer(_port, _sock); - WiFiClass::_server_port[_sock] = _port; - } -} - -WiFiClient WiFiServer::available(byte* status) -{ - static int cycle_server_down = 0; - const int TH_SERVER_DOWN = 50; - - for (int sock = 0; sock < MAX_SOCK_NUM; sock++) - { - if (WiFiClass::_server_port[sock] == _port) - { - WiFiClient client(sock); - uint8_t _status = client.status(); - uint8_t _ser_status = this->status(); - - if (status != NULL) - *status = _status; - - //server not in listen state, restart it - if ((_ser_status == 0)&&(cycle_server_down++ > TH_SERVER_DOWN)) - { - ServerDrv::startServer(_port, sock); - cycle_server_down = 0; - } - - if (_status == ESTABLISHED) - { - return client; //TODO - } - } - } - - return WiFiClient(255); -} - -uint8_t WiFiServer::status() { - return ServerDrv::getServerState(0); -} - - -size_t WiFiServer::write(uint8_t b) -{ - return write(&b, 1); -} - -size_t WiFiServer::write(const uint8_t *buffer, size_t size) -{ - size_t n = 0; - - for (int sock = 0; sock < MAX_SOCK_NUM; sock++) - { - if (WiFiClass::_server_port[sock] != 0) - { - WiFiClient client(sock); - - if (WiFiClass::_server_port[sock] == _port && - client.status() == ESTABLISHED) - { - n+=client.write(buffer, size); - } - } - } - return n; -} diff --git a/hardware/arduino/sam/libraries/WiFi/WiFiServer.h b/hardware/arduino/sam/libraries/WiFi/WiFiServer.h deleted file mode 100644 index 68b574c29..000000000 --- a/hardware/arduino/sam/libraries/WiFi/WiFiServer.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef wifiserver_h -#define wifiserver_h - -extern "C" { - #include "utility/wl_definitions.h" -} - -#include "Server.h" - -class WiFiClient; - -class WiFiServer : public Server { -private: - uint16_t _port; - void* pcb; -public: - WiFiServer(uint16_t); - WiFiClient available(uint8_t* status = NULL); - void begin(); - virtual size_t write(uint8_t); - virtual size_t write(const uint8_t *buf, size_t size); - uint8_t status(); - - using Print::write; -}; - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino b/hardware/arduino/sam/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino deleted file mode 100644 index 1437ff263..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino +++ /dev/null @@ -1,123 +0,0 @@ -/* - - This example connects to an unencrypted Wifi network. - Then it prints the MAC address of the Wifi shield, - the IP address obtained, and other network details. - - Circuit: - * WiFi shield attached - - created 13 July 2010 - by dlf (Metodo2 srl) - modified 31 May 2012 - by Tom Igoe - */ - -#include -#include - -char ssid[] = "yourNetwork"; // the name of your network -int status = WL_IDLE_STATUS; // the Wifi radio's status - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to open SSID: "); - Serial.println(ssid); - status = WiFi.begin(ssid); - - // wait 10 seconds for connection: - delay(10000); - } - - // you're connected now, so print out the data: - Serial.print("You're connected to the network"); - printCurrentNet(); - printWifiData(); -} - -void loop() { - // check the network connection once every 10 seconds: - delay(10000); - printCurrentNet(); -} - -void printWifiData() { - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - Serial.println(ip); - - // print your MAC address: - byte mac[6]; - WiFi.macAddress(mac); - Serial.print("MAC address: "); - Serial.print(mac[5],HEX); - Serial.print(":"); - Serial.print(mac[4],HEX); - Serial.print(":"); - Serial.print(mac[3],HEX); - Serial.print(":"); - Serial.print(mac[2],HEX); - Serial.print(":"); - Serial.print(mac[1],HEX); - Serial.print(":"); - Serial.println(mac[0],HEX); - - // print your subnet mask: - IPAddress subnet = WiFi.subnetMask(); - Serial.print("NetMask: "); - Serial.println(subnet); - - // print your gateway address: - IPAddress gateway = WiFi.gatewayIP(); - Serial.print("Gateway: "); - Serial.println(gateway); -} - -void printCurrentNet() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print the MAC address of the router you're attached to: - byte bssid[6]; - WiFi.BSSID(bssid); - Serial.print("BSSID: "); - Serial.print(bssid[5],HEX); - Serial.print(":"); - Serial.print(bssid[4],HEX); - Serial.print(":"); - Serial.print(bssid[3],HEX); - Serial.print(":"); - Serial.print(bssid[2],HEX); - Serial.print(":"); - Serial.print(bssid[1],HEX); - Serial.print(":"); - Serial.println(bssid[0],HEX); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.println(rssi); - - // print the encryption type: - byte encryption = WiFi.encryptionType(); - Serial.print("Encryption Type:"); - Serial.println(encryption,HEX); -} - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino b/hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino deleted file mode 100644 index 184951241..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino +++ /dev/null @@ -1,128 +0,0 @@ -/* - - This example connects to a WEP-encrypted Wifi network. - Then it prints the MAC address of the Wifi shield, - the IP address obtained, and other network details. - - If you use 40-bit WEP, you need a key that is 10 characters long, - and the characters must be hexadecimal (0-9 or A-F). - e.g. for 40-bit, ABBADEAF01 will work, but ABBADEAF won't work - (too short) and ABBAISDEAF won't work (I and S are not - hexadecimal characters). - - For 128-bit, you need a string that is 26 characters long. - D0D0DEADF00DABBADEAFBEADED will work because it's 26 characters, - all in the 0-9, A-F range. - - Circuit: - * WiFi shield attached - - created 13 July 2010 - by dlf (Metodo2 srl) - modified 31 May 2012 - by Tom Igoe - */ - -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char key[] = "D0D0DEADF00DABBADEAFBEADED"; // your network key -int keyIndex = 0; // your network key Index number -int status = WL_IDLE_STATUS; // the Wifi radio's status - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to WEP network, SSID: "); - Serial.println(ssid); - status = WiFi.begin(ssid, keyIndex, key); - - // wait 10 seconds for connection: - delay(10000); - } - - // once you are connected : - Serial.print("You're connected to the network"); - printCurrentNet(); - printWifiData(); -} - -void loop() { - // check the network connection once every 10 seconds: - delay(10000); - printCurrentNet(); -} - -void printWifiData() { - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - Serial.println(ip); - - // print your MAC address: - byte mac[6]; - WiFi.macAddress(mac); - Serial.print("MAC address: "); - Serial.print(mac[5],HEX); - Serial.print(":"); - Serial.print(mac[4],HEX); - Serial.print(":"); - Serial.print(mac[3],HEX); - Serial.print(":"); - Serial.print(mac[2],HEX); - Serial.print(":"); - Serial.print(mac[1],HEX); - Serial.print(":"); - Serial.println(mac[0],HEX); -} - -void printCurrentNet() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print the MAC address of the router you're attached to: - byte bssid[6]; - WiFi.BSSID(bssid); - Serial.print("BSSID: "); - Serial.print(bssid[5],HEX); - Serial.print(":"); - Serial.print(bssid[4],HEX); - Serial.print(":"); - Serial.print(bssid[3],HEX); - Serial.print(":"); - Serial.print(bssid[2],HEX); - Serial.print(":"); - Serial.print(bssid[1],HEX); - Serial.print(":"); - Serial.println(bssid[0],HEX); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.println(rssi); - - // print the encryption type: - byte encryption = WiFi.encryptionType(); - Serial.print("Encryption Type:"); - Serial.println(encryption,HEX); - Serial.println(); -} - - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino b/hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino deleted file mode 100644 index 957bad4ed..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino +++ /dev/null @@ -1,118 +0,0 @@ -/* - - This example connects to an unencrypted Wifi network. - Then it prints the MAC address of the Wifi shield, - the IP address obtained, and other network details. - - Circuit: - * WiFi shield attached - - created 13 July 2010 - by dlf (Metodo2 srl) - modified 31 May 2012 - by Tom Igoe - */ - -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password -int status = WL_IDLE_STATUS; // the Wifi radio's status - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to WPA SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - - // you're connected now, so print out the data: - Serial.print("You're connected to the network"); - printCurrentNet(); - printWifiData(); - -} - -void loop() { - // check the network connection once every 10 seconds: - delay(10000); - printCurrentNet(); -} - -void printWifiData() { - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - Serial.println(ip); - - // print your MAC address: - byte mac[6]; - WiFi.macAddress(mac); - Serial.print("MAC address: "); - Serial.print(mac[5],HEX); - Serial.print(":"); - Serial.print(mac[4],HEX); - Serial.print(":"); - Serial.print(mac[3],HEX); - Serial.print(":"); - Serial.print(mac[2],HEX); - Serial.print(":"); - Serial.print(mac[1],HEX); - Serial.print(":"); - Serial.println(mac[0],HEX); - -} - -void printCurrentNet() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print the MAC address of the router you're attached to: - byte bssid[6]; - WiFi.BSSID(bssid); - Serial.print("BSSID: "); - Serial.print(bssid[5],HEX); - Serial.print(":"); - Serial.print(bssid[4],HEX); - Serial.print(":"); - Serial.print(bssid[3],HEX); - Serial.print(":"); - Serial.print(bssid[2],HEX); - Serial.print(":"); - Serial.print(bssid[1],HEX); - Serial.print(":"); - Serial.println(bssid[0],HEX); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.println(rssi); - - // print the encryption type: - byte encryption = WiFi.encryptionType(); - Serial.print("Encryption Type:"); - Serial.println(encryption,HEX); - Serial.println(); -} - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino b/hardware/arduino/sam/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino deleted file mode 100644 index bfbd727ac..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino +++ /dev/null @@ -1,118 +0,0 @@ -/* - - This example prints the Wifi shield's MAC address, and - scans for available Wifi networks using the Wifi shield. - Every ten seconds, it scans again. It doesn't actually - connect to any network, so no encryption scheme is specified. - - Circuit: - * WiFi shield attached - - created 13 July 2010 - by dlf (Metodo2 srl) - modified 21 Junn 2012 - by Tom Igoe and Jaymes Dec - */ - -#include -#include - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // Print WiFi MAC address: - printMacAddress(); - - // scan for existing networks: - Serial.println("Scanning available networks..."); - listNetworks(); -} - -void loop() { - delay(10000); - // scan for existing networks: - Serial.println("Scanning available networks..."); - listNetworks(); -} - -void printMacAddress() { - // the MAC address of your Wifi shield - byte mac[6]; - - // print your MAC address: - WiFi.macAddress(mac); - Serial.print("MAC: "); - Serial.print(mac[5],HEX); - Serial.print(":"); - Serial.print(mac[4],HEX); - Serial.print(":"); - Serial.print(mac[3],HEX); - Serial.print(":"); - Serial.print(mac[2],HEX); - Serial.print(":"); - Serial.print(mac[1],HEX); - Serial.print(":"); - Serial.println(mac[0],HEX); -} - -void listNetworks() { - // scan for nearby networks: - Serial.println("** Scan Networks **"); - int numSsid = WiFi.scanNetworks(); - if (numSsid == -1) - { - Serial.println("Couldn't get a wifi connection"); - while(true); - } - - // print the list of networks seen: - Serial.print("number of available networks:"); - Serial.println(numSsid); - - // print the network number and name for each network found: - for (int thisNet = 0; thisNet -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; -WiFiServer server(80); - -void setup() { - Serial.begin(9600); // initialize serial communication - pinMode(9, OUTPUT); // set the LED pin mode - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - while(true); // don't continue - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to Network named: "); - Serial.println(ssid); // print the network name (SSID); - - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - // wait 10 seconds for connection: - delay(10000); - } - server.begin(); // start the web server on port 80 - printWifiStatus(); // you're connected now, so print out the status -} - - -void loop() { - WiFiClient client = server.available(); // listen for incoming clients - - if (client) { // if you get a client, - Serial.println("new client"); // print a message out the serial port - String currentLine = ""; // make a String to hold incoming data from the client - while (client.connected()) { // loop while the client's connected - if (client.available()) { // if there's bytes to read from the client, - char c = client.read(); // read a byte, then - Serial.write(c); // print it out the serial monitor - if (c == '\n') { // if the byte is a newline character - - // if the current line is blank, you got two newline characters in a row. - // that's the end of the client HTTP request, so send a response: - if (currentLine.length() == 0) { - // HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK) - // and a content-type so the client knows what's coming, then a blank line: - client.println("HTTP/1.1 200 OK"); - client.println("Content-type:text/html"); - client.println(); - - // the content of the HTTP response follows the header: - client.print("Click here turn the LED on pin 9 on
"); - client.print("Click here turn the LED on pin 9 off
"); - - // The HTTP response ends with another blank line: - client.println(); - // break out of the while loop: - break; - } - else { // if you got a newline, then clear currentLine: - currentLine = ""; - } - } - else if (c != '\r') { // if you got anything else but a carriage return character, - currentLine += c; // add it to the end of the currentLine - } - - // Check to see if the client request was "GET /H" or "GET /L": - if (currentLine.endsWith("GET /H")) { - digitalWrite(9, HIGH); // GET /H turns the LED on - } - if (currentLine.endsWith("GET /L")) { - digitalWrite(9, LOW); // GET /L turns the LED off - } - } - } - // close the connection: - client.stop(); - Serial.println("client disonnected"); - } -} - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); - // print where to go in a browser: - Serial.print("To see this page in action, open a browser to http://"); - Serial.println(ip); -} diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino deleted file mode 100644 index e4b1d1a3b..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino +++ /dev/null @@ -1,111 +0,0 @@ -/* - Chat Server - - A simple server that distributes any incoming messages to all - connected clients. To use telnet to your device's IP address and type. - You can see the client's input in the serial monitor as well. - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - - Circuit: - * WiFi shield attached - - created 18 Dec 2009 - by David A. Mellis - modified 31 May 2012 - by Tom Igoe - - */ - -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password (use for WPA, or use as key for WEP) - -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; - -WiFiServer server(23); - -boolean alreadyConnected = false; // whether or not the client was connected previously - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - // start the server: - server.begin(); - // you're connected now, so print out the status: - printWifiStatus(); - } - - -void loop() { - // wait for a new client: - WiFiClient client = server.available(); - - - // when the client sends the first byte, say hello: - if (client) { - if (!alreadyConnected) { - // clead out the input buffer: - client.flush(); - Serial.println("We have a new client"); - client.println("Hello, client!"); - alreadyConnected = true; - } - - if (client.available() > 0) { - // read the bytes incoming from the client: - char thisChar = client.read(); - // echo the bytes back to the client: - server.write(thisChar); - // echo the bytes to the server as well: - Serial.write(thisChar); - } - } -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino deleted file mode 100644 index 307df3109..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino +++ /dev/null @@ -1,191 +0,0 @@ -/* - Wifi Pachube sensor client - - This sketch connects an analog sensor to Pachube (http://www.pachube.com) - using an Arduino Wifi shield. - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - This example has been updated to use version 2.0 of the Pachube API. - To make it work, create a feed with a datastream, and give it the ID - sensor1. Or change the code below to match your feed. - - Circuit: - * Analog sensor attached to analog in 0 - * Wifi shield attached to pins 10, 11, 12, 13 - - created 13 Mar 2012 - modified 31 May 2012 - by Tom Igoe - modified 8 Sept 2012 - by Scott Fitzgerald - - This code is in the public domain. - - */ - -#include -#include - -#define APIKEY "YOUR API KEY GOES HERE" // replace your pachube api key here -#define FEEDID 00000 // replace your feed ID -#define USERAGENT "My Arduino Project" // user agent is the project name - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password - -int status = WL_IDLE_STATUS; - -// initialize the library instance: -WiFiClient client; -// if you don't want to use DNS (and reduce your sketch size) -// use the numeric IP instead of the name for the server: -IPAddress server(216,52,233,121); // numeric IP for api.pachube.com -//char server[] = "api.pachube.com"; // name address for pachube API - -unsigned long lastConnectionTime = 0; // last time you connected to the server, in milliseconds -boolean lastConnected = false; // state of the connection last time through the main loop -const unsigned long postingInterval = 10*1000; //delay between updates to pachube.com - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - // you're connected now, so print out the status: - printWifiStatus(); -} - - -void loop() { - // read the analog sensor: - int sensorReading = analogRead(A0); - - // if there's incoming data from the net connection. - // send it out the serial port. This is for debugging - // purposes only: - while (client.available()) { - char c = client.read(); - Serial.print(c); - } - - // if there's no net connection, but there was one last time - // through the loop, then stop the client: - if (!client.connected() && lastConnected) { - Serial.println(); - Serial.println("disconnecting."); - client.stop(); - } - - // if you're not connected, and ten seconds have passed since - // your last connection, then connect again and send data: - if(!client.connected() && (millis() - lastConnectionTime > postingInterval)) { - sendData(sensorReading); - } - // store the state of the connection for next time through - // the loop: - lastConnected = client.connected(); -} - -// this method makes a HTTP connection to the server: -void sendData(int thisData) { - // if there's a successful connection: - if (client.connect(server, 80)) { - Serial.println("connecting..."); - // send the HTTP PUT request: - client.print("PUT /v2/feeds/"); - client.print(FEEDID); - client.println(".csv HTTP/1.1"); - client.println("Host: api.pachube.com"); - client.print("X-ApiKey: "); - client.println(APIKEY); - client.print("User-Agent: "); - client.println(USERAGENT); - client.print("Content-Length: "); - - // calculate the length of the sensor reading in bytes: - // 8 bytes for "sensor1," + number of digits of the data: - int thisLength = 8 + getLength(thisData); - client.println(thisLength); - - // last pieces of the HTTP PUT request: - client.println("Content-Type: text/csv"); - client.println("Connection: close"); - client.println(); - - // here's the actual content of the PUT request: - client.print("sensor1,"); - client.println(thisData); - - } - else { - // if you couldn't make a connection: - Serial.println("connection failed"); - Serial.println(); - Serial.println("disconnecting."); - client.stop(); - } - // note the time that the connection was made or attempted: - lastConnectionTime = millis(); -} - - -// This method calculates the number of digits in the -// sensor reading. Since each digit of the ASCII decimal -// representation is a byte, the number of digits equals -// the number of bytes: - -int getLength(int someValue) { - // there's at least one byte: - int digits = 1; - // continually divide the value by ten, - // adding one to the digit count for each - // time you divide, until you're at 0: - int dividend = someValue /10; - while (dividend > 0) { - dividend = dividend /10; - digits++; - } - // return the number of digits: - return digits; -} - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino deleted file mode 100644 index 243fe8383..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino +++ /dev/null @@ -1,177 +0,0 @@ -/* - Wifi Pachube sensor client with Strings - - This sketch connects an analog sensor to Pachube (http://www.pachube.com) - using a Arduino Wifi shield. - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - This example has been updated to use version 2.0 of the pachube.com API. - To make it work, create a feed with a datastream, and give it the ID - sensor1. Or change the code below to match your feed. - - This example uses the String library, which is part of the Arduino core from - version 0019. - - Circuit: - * Analog sensor attached to analog in 0 - * Wifi shield attached to pins 10, 11, 12, 13 - - created 16 Mar 2012 - modified 31 May 2012 - by Tom Igoe - modified 8 Sept 2012 - by Scott Fitzgerald - - This code is in the public domain. - - */ - -#include -#include - -#define APIKEY "YOUR API KEY GOES HERE" // replace your pachube api key here -#define FEEDID 00000 // replace your feed ID -#define USERAGENT "My Arduino Project" // user agent is the project name - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password - -int status = WL_IDLE_STATUS; - -// initialize the library instance: -WiFiClient client; - -// if you don't want to use DNS (and reduce your sketch size) -// use the numeric IP instead of the name for the server: -//IPAddress server(216,52,233,121); // numeric IP for api.pachube.com -char server[] = "api.pachube.com"; // name address for pachube API - -unsigned long lastConnectionTime = 0; // last time you connected to the server, in milliseconds -boolean lastConnected = false; // state of the connection last time through the main loop -const unsigned long postingInterval = 10*1000; //delay between updates to pachube.com - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - // you're connected now, so print out the status: - printWifiStatus(); -} - -void loop() { - // read the analog sensor: - int sensorReading = analogRead(A0); - // convert the data to a String to send it: - - String dataString = "sensor1,"; - dataString += sensorReading; - - // you can append multiple readings to this String if your - // pachube feed is set up to handle multiple values: - int otherSensorReading = analogRead(A1); - dataString += "\nsensor2,"; - dataString += otherSensorReading; - - // if there's incoming data from the net connection. - // send it out the serial port. This is for debugging - // purposes only: - while (client.available()) { - char c = client.read(); - Serial.print(c); - } - - // if there's no net connection, but there was one last time - // through the loop, then stop the client: - if (!client.connected() && lastConnected) { - Serial.println(); - Serial.println("disconnecting."); - client.stop(); - } - - // if you're not connected, and ten seconds have passed since - // your last connection, then connect again and send data: - if(!client.connected() && (millis() - lastConnectionTime > postingInterval)) { - sendData(dataString); - } - // store the state of the connection for next time through - // the loop: - lastConnected = client.connected(); -} - -// this method makes a HTTP connection to the server: -void sendData(String thisData) { - // if there's a successful connection: - if (client.connect(server, 80)) { - Serial.println("connecting..."); - // send the HTTP PUT request: - client.print("PUT /v2/feeds/"); - client.print(FEEDID); - client.println(".csv HTTP/1.1"); - client.println("Host: api.pachube.com"); - client.print("X-ApiKey: "); - client.println(APIKEY); - client.print("User-Agent: "); - client.println(USERAGENT); - client.print("Content-Length: "); - client.println(thisData.length()); - - // last pieces of the HTTP PUT request: - client.println("Content-Type: text/csv"); - client.println("Connection: close"); - client.println(); - - // here's the actual content of the PUT request: - client.println(thisData); - } - else { - // if you couldn't make a connection: - Serial.println("connection failed"); - Serial.println(); - Serial.println("disconnecting."); - client.stop(); - } - // note the time that the connection was made or attempted: - lastConnectionTime = millis(); -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino deleted file mode 100644 index 5ae339b03..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino +++ /dev/null @@ -1,164 +0,0 @@ -/* - Wifi Twitter Client with Strings - - This sketch connects to Twitter using using an Arduino WiFi shield. - It parses the XML returned, and looks for this is a tweet - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - This example uses the String library, which is part of the Arduino core from - version 0019. - - Circuit: - * WiFi shield attached to pins 10, 11, 12, 13 - - created 23 apr 2012 - modified 31 May 2012 - by Tom Igoe - - This code is in the public domain. - - */ - -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "password"; // your network password (use for WPA, or use as key for WEP) -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; // status of the wifi connection - -// initialize the library instance: -WiFiClient client; - -const unsigned long requestInterval = 30*1000; // delay between requests; 30 seconds - -// if you don't want to use DNS (and reduce your sketch size) -// use the numeric IP instead of the name for the server: -//IPAddress server(199,59,149,200); // numeric IP for api.twitter.com -char server[] = "api.twitter.com"; // name address for twitter API - -boolean requested; // whether you've made a request since connecting -unsigned long lastAttemptTime = 0; // last time you connected to the server, in milliseconds - -String currentLine = ""; // string to hold the text from server -String tweet = ""; // string to hold the tweet -boolean readingTweet = false; // if you're currently reading the tweet - -void setup() { - // reserve space for the strings: - currentLine.reserve(256); - tweet.reserve(150); - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - // you're connected now, so print out the status: - printWifiStatus(); - connectToServer(); -} - -void loop() -{ - if (client.connected()) { - if (client.available()) { - // read incoming bytes: - char inChar = client.read(); - - // add incoming byte to end of line: - currentLine += inChar; - - // if you get a newline, clear the line: - if (inChar == '\n') { - currentLine = ""; - } - // if the current line ends with , it will - // be followed by the tweet: - if ( currentLine.endsWith("")) { - // tweet is beginning. Clear the tweet string: - readingTweet = true; - tweet = ""; - // break out of the loop so this character isn't added to the tweet: - return; - } - // if you're currently reading the bytes of a tweet, - // add them to the tweet String: - if (readingTweet) { - if (inChar != '<') { - tweet += inChar; - } - else { - // if you got a "<" character, - // you've reached the end of the tweet: - readingTweet = false; - Serial.println(tweet); - // close the connection to the server: - client.stop(); - } - } - } - } - else if (millis() - lastAttemptTime > requestInterval) { - // if you're not connected, and two minutes have passed since - // your last connection, then attempt to connect again: - connectToServer(); - } -} - -void connectToServer() { - // attempt to connect, and wait a millisecond: - Serial.println("connecting to server..."); - if (client.connect(server, 80)) { - Serial.println("making HTTP request..."); - // make HTTP GET request to twitter: - client.println("GET /1/statuses/user_timeline.xml?screen_name=arduino HTTP/1.1"); - client.println("Host:api.twitter.com"); - client.println("Connection:close"); - client.println(); - } - // note the time of this connect attempt: - lastAttemptTime = millis(); -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino deleted file mode 100644 index 1989297ac..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino +++ /dev/null @@ -1,120 +0,0 @@ - -/* - Web client - - This sketch connects to a website (http://www.google.com) - using a WiFi shield. - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - Circuit: - * WiFi shield attached - - created 13 July 2010 - by dlf (Metodo2 srl) - modified 31 May 2012 - by Tom Igoe - */ - -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password (use for WPA, or use as key for WEP) -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; -// if you don't want to use DNS (and reduce your sketch size) -// use the numeric IP instead of the name for the server: -IPAddress server(173,194,73,105); // numeric IP for Google (no DNS) -//char server[] = "www.google.com"; // name address for Google (using DNS) - -// Initialize the Ethernet client library -// with the IP address and port of the server -// that you want to connect to (port 80 is default for HTTP): -WiFiClient client; - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - Serial.println("Connected to wifi"); - printWifiStatus(); - - Serial.println("\nStarting connection to server..."); - // if you get a connection, report back via serial: - if (client.connect(server, 80)) { - Serial.println("connected to server"); - // Make a HTTP request: - client.println("GET /search?q=arduino HTTP/1.1"); - client.println("Host:www.google.com"); - client.println("Connection: close"); - client.println(); - } -} - -void loop() { - // if there are incoming bytes available - // from the server, read them and print them: - while (client.available()) { - char c = client.read(); - Serial.write(c); - } - - // if the server's disconnected, stop the client: - if (!client.connected()) { - Serial.println(); - Serial.println("disconnecting from server."); - client.stop(); - - // do nothing forevermore: - while(true); - } -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - - - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino deleted file mode 100644 index 96eb6283d..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino +++ /dev/null @@ -1,138 +0,0 @@ -/* - Repeating Wifi Web client - - This sketch connects to a a web server and makes a request - using an Arduino Wifi shield. - - Circuit: - * Wifi shield attached to pins 10, 11, 12, 13 - - created 23 April 2012 - modifide 31 May 2012 - by Tom Igoe - - http://arduino.cc/en/Tutorial/WifiWebClientRepeating - This code is in the public domain. - */ - -#include -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; - -// Initialize the Wifi client library -WiFiClient client; - -// server address: -char server[] = "www.arduino.cc"; -//IPAddress server(64,131,82,241); - -unsigned long lastConnectionTime = 0; // last time you connected to the server, in milliseconds -boolean lastConnected = false; // state of the connection last time through the main loop -const unsigned long postingInterval = 10*1000; // delay between updates, in milliseconds - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - // you're connected now, so print out the status: - printWifiStatus(); -} - -void loop() { - // if there's incoming data from the net connection. - // send it out the serial port. This is for debugging - // purposes only: - while (client.available()) { - char c = client.read(); - Serial.write(c); - } - - // if there's no net connection, but there was one last time - // through the loop, then stop the client: - if (!client.connected() && lastConnected) { - Serial.println(); - Serial.println("disconnecting."); - client.stop(); - } - - // if you're not connected, and ten seconds have passed since - // your last connection, then connect again and send data: - if(!client.connected() && (millis() - lastConnectionTime > postingInterval)) { - httpRequest(); - } - // store the state of the connection for next time through - // the loop: - lastConnected = client.connected(); -} - -// this method makes a HTTP connection to the server: -void httpRequest() { - // if there's a successful connection: - if (client.connect(server, 80)) { - Serial.println("connecting..."); - // send the HTTP PUT request: - client.println("GET /latest.txt HTTP/1.1"); - client.println("Host: www.arduino.cc"); - client.println("User-Agent: arduino-ethernet"); - client.println("Connection: close"); - client.println(); - - // note the time that the connection was made: - lastConnectionTime = millis(); - } - else { - // if you couldn't make a connection: - Serial.println("connection failed"); - Serial.println("disconnecting."); - client.stop(); - } -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - - - - - - diff --git a/hardware/arduino/sam/libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino b/hardware/arduino/sam/libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino deleted file mode 100644 index eaa99783e..000000000 --- a/hardware/arduino/sam/libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino +++ /dev/null @@ -1,132 +0,0 @@ -/* - Web Server - - A simple web server that shows the value of the analog input pins. - using a WiFi shield. - - This example is written for a network using WPA encryption. For - WEP or WPA, change the Wifi.begin() call accordingly. - - Circuit: - * WiFi shield attached - * Analog inputs attached to pins A0 through A5 (optional) - - created 13 July 2010 - by dlf (Metodo2 srl) - modified 31 May 2012 - by Tom Igoe - */ - -#inlcude -#include - -char ssid[] = "yourNetwork"; // your network SSID (name) -char pass[] = "secretPassword"; // your network password -int keyIndex = 0; // your network key Index number (needed only for WEP) - -int status = WL_IDLE_STATUS; - -WiFiServer server(80); - -void setup() { - //Initialize serial and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // check for the presence of the shield: - if (WiFi.status() == WL_NO_SHIELD) { - Serial.println("WiFi shield not present"); - // don't continue: - while(true); - } - - // attempt to connect to Wifi network: - while ( status != WL_CONNECTED) { - Serial.print("Attempting to connect to SSID: "); - Serial.println(ssid); - // Connect to WPA/WPA2 network. Change this line if using open or WEP network: - status = WiFi.begin(ssid, pass); - - // wait 10 seconds for connection: - delay(10000); - } - server.begin(); - // you're connected now, so print out the status: - printWifiStatus(); -} - - -void loop() { - // listen for incoming clients - WiFiClient client = server.available(); - if (client) { - Serial.println("new client"); - // an http request ends with a blank line - boolean currentLineIsBlank = true; - while (client.connected()) { - if (client.available()) { - char c = client.read(); - Serial.write(c); - // if you've gotten to the end of the line (received a newline - // character) and the line is blank, the http request has ended, - // so you can send a reply - if (c == '\n' && currentLineIsBlank) { - // send a standard http response header - client.println("HTTP/1.1 200 OK"); - client.println("Content-Type: text/html"); - client.println("Connection: close"); - client.println(); - client.println(""); - client.println(""); - // add a meta refresh tag, so the browser pulls again every 5 seconds: - client.println(""); - // output the value of each analog input pin - for (int analogChannel = 0; analogChannel < 6; analogChannel++) { - int sensorReading = analogRead(analogChannel); - client.print("analog input "); - client.print(analogChannel); - client.print(" is "); - client.print(sensorReading); - client.println("
"); - } - client.println(""); - break; - } - if (c == '\n') { - // you're starting a new line - currentLineIsBlank = true; - } - else if (c != '\r') { - // you've gotten a character on the current line - currentLineIsBlank = false; - } - } - } - // give the web browser time to receive the data - delay(1); - // close the connection: - client.stop(); - Serial.println("client disonnected"); - } -} - - -void printWifiStatus() { - // print the SSID of the network you're attached to: - Serial.print("SSID: "); - Serial.println(WiFi.SSID()); - - // print your WiFi shield's IP address: - IPAddress ip = WiFi.localIP(); - Serial.print("IP Address: "); - Serial.println(ip); - - // print the received signal strength: - long rssi = WiFi.RSSI(); - Serial.print("signal strength (RSSI):"); - Serial.print(rssi); - Serial.println(" dBm"); -} - diff --git a/hardware/arduino/sam/libraries/WiFi/keywords.txt b/hardware/arduino/sam/libraries/WiFi/keywords.txt deleted file mode 100644 index 47704cd00..000000000 --- a/hardware/arduino/sam/libraries/WiFi/keywords.txt +++ /dev/null @@ -1,43 +0,0 @@ -####################################### -# Syntax Coloring Map For WiFi -####################################### - -####################################### -# Datatypes (KEYWORD1) -####################################### - -WiFi KEYWORD1 -Client KEYWORD1 -Server KEYWORD1 - -####################################### -# Methods and Functions (KEYWORD2) -####################################### - -status KEYWORD2 -connect KEYWORD2 -write KEYWORD2 -available KEYWORD2 -read KEYWORD2 -flush KEYWORD2 -stop KEYWORD2 -connected KEYWORD2 -begin KEYWORD2 -disconnect KEYWORD2 -macAddress KEYWORD2 -localIP KEYWORD2 -subnetMask KEYWORD2 -gatewayIP KEYWORD2 -SSID KEYWORD2 -BSSID KEYWORD2 -RSSI KEYWORD2 -encryptionType KEYWORD2 -getResult KEYWORD2 -getSocket KEYWORD2 -WiFiClient KEYWORD2 -WiFiServer KEYWORD2 - -####################################### -# Constants (LITERAL1) -####################################### - diff --git a/hardware/arduino/sam/libraries/WiFi/utility/debug.h b/hardware/arduino/sam/libraries/WiFi/utility/debug.h deleted file mode 100644 index 9f71055b2..000000000 --- a/hardware/arduino/sam/libraries/WiFi/utility/debug.h +++ /dev/null @@ -1,77 +0,0 @@ -//*********************************************/ -// -// File: debug.h -// -// Author: dlf (Metodo2 srl) -// -//********************************************/ - - -#ifndef Debug_H -#define Debug_H - -#include -#include - -#define PRINT_FILE_LINE() do { \ - Serial.print("[");Serial.print(__FILE__); \ - Serial.print("::");Serial.print(__LINE__);Serial.print("]");\ -}while (0); - -#ifdef _DEBUG_ - -#define INFO(format, args...) do { \ - char buf[250]; \ - sprintf(buf, format, args); \ - Serial.println(buf); \ -} while(0); - -#define INFO1(x) do { PRINT_FILE_LINE() Serial.print("-I-");\ - Serial.println(x); \ -}while (0); - - -#define INFO2(x,y) do { PRINT_FILE_LINE() Serial.print("-I-");\ - Serial.print(x,16);Serial.print(",");Serial.println(y,16); \ -}while (0); - - -#else -#define INFO1(x) do {} while(0); -#define INFO2(x,y) do {} while(0); -#define INFO(format, args...) do {} while(0); -#endif - -#if 0 -#define WARN(args) do { PRINT_FILE_LINE() \ - Serial.print("-W-"); Serial.println(args); \ -}while (0); -#else -#define WARN(args) do {} while (0); -#endif - -#if _DEBUG_SPI_ -#define DBG_PIN2 5 -#define DBG_PIN 4 - -#define START() digitalWrite(DBG_PIN2, HIGH); -#define END() digitalWrite(DBG_PIN2, LOW); -#define SET_TRIGGER() digitalWrite(DBG_PIN, HIGH); -#define RST_TRIGGER() digitalWrite(DBG_PIN, LOW); - -#define INIT_TRIGGER() pinMode(DBG_PIN, OUTPUT); \ - pinMode(DBG_PIN2, OUTPUT); \ - RST_TRIGGER() -#define TOGGLE_TRIGGER() SET_TRIGGER() \ - delayMicroseconds(2); \ - RST_TRIGGER() -#else -#define START() -#define END() -#define SET_TRIGGER() -#define RST_TRIGGER() -#define INIT_TRIGGER() -#define TOGGLE_TRIGGER() -#endif - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/utility/server_drv.cpp b/hardware/arduino/sam/libraries/WiFi/utility/server_drv.cpp deleted file mode 100644 index ce03604b4..000000000 --- a/hardware/arduino/sam/libraries/WiFi/utility/server_drv.cpp +++ /dev/null @@ -1,260 +0,0 @@ -//#define _DEBUG_ - -#include "server_drv.h" - -#include "Arduino.h" -#include "spi_drv.h" - -extern "C" { -#include "wl_types.h" -#include "debug.h" -} - - -// Start server TCP on port specified -void ServerDrv::startServer(uint16_t port, uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(START_SERVER_TCP_CMD, PARAM_NUMS_2); - SpiDrv::sendParam(port); - SpiDrv::sendParam(&sock, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(START_SERVER_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); -} - -// Start server TCP on port specified -void ServerDrv::startClient(uint32_t ipAddress, uint16_t port, uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(START_CLIENT_TCP_CMD, PARAM_NUMS_3); - SpiDrv::sendParam((uint8_t*)&ipAddress, sizeof(ipAddress)); - SpiDrv::sendParam(port); - SpiDrv::sendParam(&sock, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(START_CLIENT_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); -} - -// Start server TCP on port specified -void ServerDrv::stopClient(uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(STOP_CLIENT_TCP_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(STOP_CLIENT_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); -} - - -uint8_t ServerDrv::getServerState(uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(GET_STATE_TCP_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(GET_STATE_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - return _data; -} - -uint8_t ServerDrv::getClientState(uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(GET_CLIENT_STATE_TCP_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(GET_CLIENT_STATE_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - return _data; -} - -uint8_t ServerDrv::availData(uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(AVAIL_DATA_TCP_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(AVAIL_DATA_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - - if (_dataLen!=0) - { - return (_data == 1); - } - return false; -} - -bool ServerDrv::getData(uint8_t sock, uint8_t *data, uint8_t peek) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(GET_DATA_TCP_CMD, PARAM_NUMS_2); - SpiDrv::sendParam(&sock, sizeof(sock)); - SpiDrv::sendParam(peek, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseData8(GET_DATA_TCP_CMD, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - if (_dataLen!=0) - { - *data = _data; - return true; - } - return false; -} - -bool ServerDrv::getDataBuf(uint8_t sock, uint8_t *_data, uint16_t *_dataLen) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(GET_DATABUF_TCP_CMD, PARAM_NUMS_1); - SpiDrv::sendBuffer(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - if (!SpiDrv::waitResponseData16(GET_DATABUF_TCP_CMD, _data, _dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - if (*_dataLen!=0) - { - return true; - } - return false; -} - - -bool ServerDrv::sendData(uint8_t sock, const uint8_t *data, uint16_t len) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(SEND_DATA_TCP_CMD, PARAM_NUMS_2); - SpiDrv::sendBuffer(&sock, sizeof(sock)); - SpiDrv::sendBuffer((uint8_t *)data, len, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseData8(SEND_DATA_TCP_CMD, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - if (_dataLen!=0) - { - return (_data == 1); - } - return false; -} - - -uint8_t ServerDrv::checkDataSent(uint8_t sock) -{ - const uint16_t TIMEOUT_DATA_SENT = 25; - uint16_t timeout = 0; - uint8_t _data = 0; - uint8_t _dataLen = 0; - - do { - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(DATA_SENT_TCP_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - if (!SpiDrv::waitResponseCmd(DATA_SENT_TCP_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse isDataSent"); - } - SpiDrv::spiSlaveDeselect(); - - if (_data) timeout = 0; - else{ - ++timeout; - delay(100); - } - - }while((_data==0)&&(timeout -#include "wifi_spi.h" - -class ServerDrv -{ -public: - // Start server TCP on port specified - static void startServer(uint16_t port, uint8_t sock); - - static void startClient(uint32_t ipAddress, uint16_t port, uint8_t sock); - - static void stopClient(uint8_t sock); - - static uint8_t getServerState(uint8_t sock); - - static uint8_t getClientState(uint8_t sock); - - static bool getData(uint8_t sock, uint8_t *data, uint8_t peek = 0); - - static bool getDataBuf(uint8_t sock, uint8_t *data, uint16_t *len); - - static bool sendData(uint8_t sock, const uint8_t *data, uint16_t len); - - static uint8_t availData(uint8_t sock); - - static uint8_t checkDataSent(uint8_t sock); -}; - -extern ServerDrv serverDrv; - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/utility/spi_drv.h b/hardware/arduino/sam/libraries/WiFi/utility/spi_drv.h deleted file mode 100644 index 5c2e7063f..000000000 --- a/hardware/arduino/sam/libraries/WiFi/utility/spi_drv.h +++ /dev/null @@ -1,83 +0,0 @@ -#ifndef SPI_Drv_h -#define SPI_Drv_h - -#include -#include "wifi_spi.h" - -#define SPI_START_CMD_DELAY 12 - -#define NO_LAST_PARAM 0 -#define LAST_PARAM 1 - -#define DUMMY_DATA 0xFF - -#define WAIT_FOR_SLAVE_SELECT() \ - SpiDrv::waitForSlaveReady(); \ - SpiDrv::spiSlaveSelect(); - - - -class SpiDrv -{ -private: - //static bool waitSlaveReady(); - static void waitForSlaveSign(); - static void getParam(uint8_t* param); -public: - - static void begin(); - - static void end(); - - static void spiDriverInit(); - - static void spiSlaveSelect(); - - static void spiSlaveDeselect(); - - static char spiTransfer(volatile char data); - - static void waitForSlaveReady(); - - //static int waitSpiChar(char waitChar, char* readChar); - - static int waitSpiChar(unsigned char waitChar); - - static int readAndCheckChar(char checkChar, char* readChar); - - static char readChar(); - - static int waitResponseParams(uint8_t cmd, uint8_t numParam, tParam* params); - - static int waitResponseCmd(uint8_t cmd, uint8_t numParam, uint8_t* param, uint8_t* param_len); - - static int waitResponseData8(uint8_t cmd, uint8_t* param, uint8_t* param_len); - - static int waitResponseData16(uint8_t cmd, uint8_t* param, uint16_t* param_len); - /* - static int waitResponse(uint8_t cmd, tParam* params, uint8_t* numParamRead, uint8_t maxNumParams); - - static int waitResponse(uint8_t cmd, uint8_t numParam, uint8_t* param, uint16_t* param_len); -*/ - static int waitResponse(uint8_t cmd, uint8_t* numParamRead, uint8_t** params, uint8_t maxNumParams); - - static void sendParam(uint8_t* param, uint8_t param_len, uint8_t lastParam = NO_LAST_PARAM); - - static void sendParamLen8(uint8_t param_len); - - static void sendParamLen16(uint16_t param_len); - - static uint8_t readParamLen8(uint8_t* param_len = NULL); - - static uint16_t readParamLen16(uint16_t* param_len = NULL); - - static void sendBuffer(uint8_t* param, uint16_t param_len, uint8_t lastParam = NO_LAST_PARAM); - - static void sendParam(uint16_t param, uint8_t lastParam = NO_LAST_PARAM); - - static void sendCmd(uint8_t cmd, uint8_t numParam); -}; - -extern SpiDrv spiDrv; - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.cpp b/hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.cpp deleted file mode 100644 index 1ca169682..000000000 --- a/hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.cpp +++ /dev/null @@ -1,491 +0,0 @@ -#include -#include -#include - -#include "Arduino.h" -#include "spi_drv.h" -#include "wifi_drv.h" - -#define _DEBUG_ - -extern "C" { -#include "wifi_spi.h" -#include "wl_types.h" -#include "debug.h" -} - -// Array of data to cache the information related to the networks discovered -char WiFiDrv::_networkSsid[][WL_SSID_MAX_LENGTH] = {{"1"},{"2"},{"3"},{"4"},{"5"}}; -int32_t WiFiDrv::_networkRssi[WL_NETWORKS_LIST_MAXNUM] = { 0 }; -uint8_t WiFiDrv::_networkEncr[WL_NETWORKS_LIST_MAXNUM] = { 0 }; - -// Cached values of retrieved data -char WiFiDrv::_ssid[] = {0}; -uint8_t WiFiDrv::_bssid[] = {0}; -uint8_t WiFiDrv::_mac[] = {0}; -uint8_t WiFiDrv::_localIp[] = {0}; -uint8_t WiFiDrv::_subnetMask[] = {0}; -uint8_t WiFiDrv::_gatewayIp[] = {0}; -// Firmware version -char WiFiDrv::fwVersion[] = {0}; - - -// Private Methods - -void WiFiDrv::getNetworkData(uint8_t *ip, uint8_t *mask, uint8_t *gwip) -{ - tParam params[PARAM_NUMS_3] = { {0, (char*)ip}, {0, (char*)mask}, {0, (char*)gwip}}; - - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_IPADDR_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, sizeof(_dummy), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - SpiDrv::waitResponseParams(GET_IPADDR_CMD, PARAM_NUMS_3, params); - - SpiDrv::spiSlaveDeselect(); -} - -// Public Methods - - -void WiFiDrv::wifiDriverInit() -{ - SpiDrv::begin(); -} - -int8_t WiFiDrv::wifiSetNetwork(char* ssid, uint8_t ssid_len) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(SET_NET_CMD, PARAM_NUMS_1); - SpiDrv::sendParam((uint8_t*)ssid, ssid_len, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(SET_NET_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - _data = WL_FAILURE; - } - SpiDrv::spiSlaveDeselect(); - - return(_data == WIFI_SPI_ACK) ? WL_SUCCESS : WL_FAILURE; -} - -int8_t WiFiDrv::wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *passphrase, const uint8_t len) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(SET_PASSPHRASE_CMD, PARAM_NUMS_2); - SpiDrv::sendParam((uint8_t*)ssid, ssid_len, NO_LAST_PARAM); - SpiDrv::sendParam((uint8_t*)passphrase, len, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(SET_PASSPHRASE_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - _data = WL_FAILURE; - } - SpiDrv::spiSlaveDeselect(); - return _data; -} - - -int8_t WiFiDrv::wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const void *key, const uint8_t len) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(SET_KEY_CMD, PARAM_NUMS_3); - SpiDrv::sendParam((uint8_t*)ssid, ssid_len, NO_LAST_PARAM); - SpiDrv::sendParam(&key_idx, KEY_IDX_LEN, NO_LAST_PARAM); - SpiDrv::sendParam((uint8_t*)key, len, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(SET_KEY_CMD, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - _data = WL_FAILURE; - } - SpiDrv::spiSlaveDeselect(); - return _data; -} - -int8_t WiFiDrv::disconnect() -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(DISCONNECT_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - int8_t result = SpiDrv::waitResponseCmd(DISCONNECT_CMD, PARAM_NUMS_1, &_data, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return result; -} - -uint8_t WiFiDrv::getConnectionStatus() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_CONN_STATUS_CMD, PARAM_NUMS_0); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = -1; - uint8_t _dataLen = 0; - SpiDrv::waitResponseCmd(GET_CONN_STATUS_CMD, PARAM_NUMS_1, &_data, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return _data; -} - -uint8_t* WiFiDrv::getMacAddress() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_MACADDR_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _dataLen = 0; - SpiDrv::waitResponseCmd(GET_MACADDR_CMD, PARAM_NUMS_1, _mac, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return _mac; -} - -void WiFiDrv::getIpAddress(IPAddress& ip) -{ - getNetworkData(_localIp, _subnetMask, _gatewayIp); - ip = _localIp; -} - - void WiFiDrv::getSubnetMask(IPAddress& mask) - { - getNetworkData(_localIp, _subnetMask, _gatewayIp); - mask = _subnetMask; - } - - void WiFiDrv::getGatewayIP(IPAddress& ip) - { - getNetworkData(_localIp, _subnetMask, _gatewayIp); - ip = _gatewayIp; - } - -char* WiFiDrv::getCurrentSSID() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_CURR_SSID_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _dataLen = 0; - SpiDrv::waitResponseCmd(GET_CURR_SSID_CMD, PARAM_NUMS_1, (uint8_t*)_ssid, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return _ssid; -} - -uint8_t* WiFiDrv::getCurrentBSSID() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_CURR_BSSID_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _dataLen = 0; - SpiDrv::waitResponseCmd(GET_CURR_BSSID_CMD, PARAM_NUMS_1, _bssid, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return _bssid; -} - -int32_t WiFiDrv::getCurrentRSSI() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_CURR_RSSI_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _dataLen = 0; - int32_t rssi = 0; - SpiDrv::waitResponseCmd(GET_CURR_RSSI_CMD, PARAM_NUMS_1, (uint8_t*)&rssi, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return rssi; -} - -uint8_t WiFiDrv::getCurrentEncryptionType() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_CURR_ENCT_CMD, PARAM_NUMS_1); - - uint8_t _dummy = DUMMY_DATA; - SpiDrv::sendParam(&_dummy, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t dataLen = 0; - uint8_t encType = 0; - SpiDrv::waitResponseCmd(GET_CURR_ENCT_CMD, PARAM_NUMS_1, (uint8_t*)&encType, &dataLen); - - SpiDrv::spiSlaveDeselect(); - - return encType; -} - -int8_t WiFiDrv::startScanNetworks() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(START_SCAN_NETWORKS, PARAM_NUMS_0); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - - if (!SpiDrv::waitResponseCmd(START_SCAN_NETWORKS, PARAM_NUMS_1, &_data, &_dataLen)) - { - WARN("error waitResponse"); - _data = WL_FAILURE; - } - - SpiDrv::spiSlaveDeselect(); - - return (_data == WL_FAILURE)? _data : WL_SUCCESS; -} - - -uint8_t WiFiDrv::getScanNetworks() -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(SCAN_NETWORKS, PARAM_NUMS_0); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t ssidListNum = 0; - SpiDrv::waitResponse(SCAN_NETWORKS, &ssidListNum, (uint8_t**)_networkSsid, WL_NETWORKS_LIST_MAXNUM); - - SpiDrv::spiSlaveDeselect(); - - return ssidListNum; -} - -char* WiFiDrv::getSSIDNetoworks(uint8_t networkItem) -{ - if (networkItem >= WL_NETWORKS_LIST_MAXNUM) - return NULL; - - return _networkSsid[networkItem]; -} - -uint8_t WiFiDrv::getEncTypeNetowrks(uint8_t networkItem) -{ - if (networkItem >= WL_NETWORKS_LIST_MAXNUM) - return NULL; - - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_IDX_ENCT_CMD, PARAM_NUMS_1); - - SpiDrv::sendParam(&networkItem, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t dataLen = 0; - uint8_t encType = 0; - SpiDrv::waitResponseCmd(GET_IDX_ENCT_CMD, PARAM_NUMS_1, (uint8_t*)&encType, &dataLen); - - SpiDrv::spiSlaveDeselect(); - - return encType; -} - -int32_t WiFiDrv::getRSSINetoworks(uint8_t networkItem) -{ - if (networkItem >= WL_NETWORKS_LIST_MAXNUM) - return NULL; - int32_t networkRssi = 0; - - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_IDX_RSSI_CMD, PARAM_NUMS_1); - - SpiDrv::sendParam(&networkItem, 1, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t dataLen = 0; - SpiDrv::waitResponseCmd(GET_IDX_RSSI_CMD, PARAM_NUMS_1, (uint8_t*)&networkRssi, &dataLen); - - SpiDrv::spiSlaveDeselect(); - - return networkRssi; -} - -uint8_t WiFiDrv::reqHostByName(const char* aHostname) -{ - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(REQ_HOST_BY_NAME_CMD, PARAM_NUMS_1); - SpiDrv::sendParam((uint8_t*)aHostname, strlen(aHostname), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - uint8_t result = SpiDrv::waitResponseCmd(REQ_HOST_BY_NAME_CMD, PARAM_NUMS_1, &_data, &_dataLen); - - SpiDrv::spiSlaveDeselect(); - - return result; -} - -int WiFiDrv::getHostByName(IPAddress& aResult) -{ - uint8_t _ipAddr[WL_IPV4_LENGTH]; - IPAddress dummy(0xFF,0xFF,0xFF,0xFF); - int result = 0; - - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(GET_HOST_BY_NAME_CMD, PARAM_NUMS_0); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(GET_HOST_BY_NAME_CMD, PARAM_NUMS_1, _ipAddr, &_dataLen)) - { - WARN("error waitResponse"); - }else{ - aResult = _ipAddr; - result = (aResult != dummy); - } - SpiDrv::spiSlaveDeselect(); - return result; -} - -int WiFiDrv::getHostByName(const char* aHostname, IPAddress& aResult) -{ - uint8_t retry = 10; - if (reqHostByName(aHostname)) - { - while(!getHostByName(aResult) && --retry > 0) - { - delay(1000); - } - }else{ - return 0; - } - return (retry>0); -} - -char* WiFiDrv::getFwVersion() -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(GET_FW_VERSION_CMD, PARAM_NUMS_0); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseCmd(GET_FW_VERSION_CMD, PARAM_NUMS_1, (uint8_t*)fwVersion, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - return fwVersion; -} - -WiFiDrv wiFiDrv; diff --git a/hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.h b/hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.h deleted file mode 100644 index c4f04dbe7..000000000 --- a/hardware/arduino/sam/libraries/WiFi/utility/wifi_drv.h +++ /dev/null @@ -1,219 +0,0 @@ -#ifndef WiFi_Drv_h -#define WiFi_Drv_h - -#include -#include "wifi_spi.h" -#include "IPAddress.h" - -// Key index length -#define KEY_IDX_LEN 1 -// 5 secs of delay to have the connection established -#define WL_DELAY_START_CONNECTION 5000 -// firmware version string length -#define WL_FW_VER_LENGTH 6 - -class WiFiDrv -{ -private: - // settings of requested network - static char _networkSsid[WL_NETWORKS_LIST_MAXNUM][WL_SSID_MAX_LENGTH]; - static int32_t _networkRssi[WL_NETWORKS_LIST_MAXNUM]; - static uint8_t _networkEncr[WL_NETWORKS_LIST_MAXNUM]; - - // firmware version string in the format a.b.c - static char fwVersion[WL_FW_VER_LENGTH]; - - // settings of current selected network - static char _ssid[WL_SSID_MAX_LENGTH]; - static uint8_t _bssid[WL_MAC_ADDR_LENGTH]; - static uint8_t _mac[WL_MAC_ADDR_LENGTH]; - static uint8_t _localIp[WL_IPV4_LENGTH]; - static uint8_t _subnetMask[WL_IPV4_LENGTH]; - static uint8_t _gatewayIp[WL_IPV4_LENGTH]; - - /* - * Get network Data information - */ - static void getNetworkData(uint8_t *ip, uint8_t *mask, uint8_t *gwip); - - static uint8_t reqHostByName(const char* aHostname); - - static int getHostByName(IPAddress& aResult); - -public: - - /* - * Driver initialization - */ - static void wifiDriverInit(); - - /* - * Set the desired network which the connection manager should try to - * connect to. - * - * The ssid of the desired network should be specified. - * - * param ssid: The ssid of the desired network. - * param ssid_len: Lenght of ssid string. - * return: WL_SUCCESS or WL_FAILURE - */ - static int8_t wifiSetNetwork(char* ssid, uint8_t ssid_len); - - /* Start Wifi connection with passphrase - * the most secure supported mode will be automatically selected - * - * param ssid: Pointer to the SSID string. - * param ssid_len: Lenght of ssid string. - * param passphrase: Passphrase. Valid characters in a passphrase - * must be between ASCII 32-126 (decimal). - * param len: Lenght of passphrase string. - * return: WL_SUCCESS or WL_FAILURE - */ - static int8_t wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *passphrase, const uint8_t len); - - /* Start Wifi connection with WEP encryption. - * Configure a key into the device. The key type (WEP-40, WEP-104) - * is determined by the size of the key (5 bytes for WEP-40, 13 bytes for WEP-104). - * - * param ssid: Pointer to the SSID string. - * param ssid_len: Lenght of ssid string. - * param key_idx: The key index to set. Valid values are 0-3. - * param key: Key input buffer. - * param len: Lenght of key string. - * return: WL_SUCCESS or WL_FAILURE - */ - static int8_t wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const void *key, const uint8_t len); - - /* - * Disconnect from the network - * - * return: WL_SUCCESS or WL_FAILURE - */ - static int8_t disconnect(); - - /* - * Disconnect from the network - * - * return: one value of wl_status_t enum - */ - static uint8_t getConnectionStatus(); - - /* - * Get the interface MAC address. - * - * return: pointer to uint8_t array with length WL_MAC_ADDR_LENGTH - */ - static uint8_t* getMacAddress(); - - /* - * Get the interface IP address. - * - * return: copy the ip address value in IPAddress object - */ - static void getIpAddress(IPAddress& ip); - - /* - * Get the interface subnet mask address. - * - * return: copy the subnet mask address value in IPAddress object - */ - static void getSubnetMask(IPAddress& mask); - - /* - * Get the gateway ip address. - * - * return: copy the gateway ip address value in IPAddress object - */ - static void getGatewayIP(IPAddress& ip); - - /* - * Return the current SSID associated with the network - * - * return: ssid string - */ - static char* getCurrentSSID(); - - /* - * Return the current BSSID associated with the network. - * It is the MAC address of the Access Point - * - * return: pointer to uint8_t array with length WL_MAC_ADDR_LENGTH - */ - static uint8_t* getCurrentBSSID(); - - /* - * Return the current RSSI /Received Signal Strength in dBm) - * associated with the network - * - * return: signed value - */ - static int32_t getCurrentRSSI(); - - /* - * Return the Encryption Type associated with the network - * - * return: one value of wl_enc_type enum - */ - static uint8_t getCurrentEncryptionType(); - - /* - * Start scan WiFi networks available - * - * return: Number of discovered networks - */ - static int8_t startScanNetworks(); - - /* - * Get the networks available - * - * return: Number of discovered networks - */ - static uint8_t getScanNetworks(); - - /* - * Return the SSID discovered during the network scan. - * - * param networkItem: specify from which network item want to get the information - * - * return: ssid string of the specified item on the networks scanned list - */ - static char* getSSIDNetoworks(uint8_t networkItem); - - /* - * Return the RSSI of the networks discovered during the scanNetworks - * - * param networkItem: specify from which network item want to get the information - * - * return: signed value of RSSI of the specified item on the networks scanned list - */ - static int32_t getRSSINetoworks(uint8_t networkItem); - - /* - * Return the encryption type of the networks discovered during the scanNetworks - * - * param networkItem: specify from which network item want to get the information - * - * return: encryption type (enum wl_enc_type) of the specified item on the networks scanned list - */ - static uint8_t getEncTypeNetowrks(uint8_t networkItem); - - /* - * Resolve the given hostname to an IP address. - * param aHostname: Name to be resolved - * param aResult: IPAddress structure to store the returned IP address - * result: 1 if aIPAddrString was successfully converted to an IP address, - * else error code - */ - static int getHostByName(const char* aHostname, IPAddress& aResult); - - /* - * Get the firmware version - * result: version as string with this format a.b.c - */ - static char* getFwVersion(); - -}; - -extern WiFiDrv wiFiDrv; - -#endif diff --git a/hardware/arduino/sam/libraries/WiFi/utility/wl_types.h b/hardware/arduino/sam/libraries/WiFi/utility/wl_types.h deleted file mode 100644 index 82b309d7f..000000000 --- a/hardware/arduino/sam/libraries/WiFi/utility/wl_types.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * wl_types.h - * - * Created on: Jul 30, 2010 - * Author: dlafauci - */ - - -#ifndef _WL_TYPES_H_ -#define _WL_TYPES_H_ - -#include - -typedef enum { - WL_FAILURE = -1, - WL_SUCCESS = 1, -} wl_error_code_t; - -/* Authentication modes */ -enum wl_auth_mode { - AUTH_MODE_INVALID, - AUTH_MODE_AUTO, - AUTH_MODE_OPEN_SYSTEM, - AUTH_MODE_SHARED_KEY, - AUTH_MODE_WPA, - AUTH_MODE_WPA2, - AUTH_MODE_WPA_PSK, - AUTH_MODE_WPA2_PSK -}; - -#endif //_WL_TYPES_H_ diff --git a/hardware/arduino/avr/libraries/WiFi/WiFiClient.cpp b/libraries/WiFi/arch/avr/WiFiClient.cpp old mode 100644 new mode 100755 similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/WiFiClient.cpp rename to libraries/WiFi/arch/avr/WiFiClient.cpp index 0b4b6dc8a..cd996305c --- a/hardware/arduino/avr/libraries/WiFi/WiFiClient.cpp +++ b/libraries/WiFi/arch/avr/WiFiClient.cpp @@ -1,7 +1,7 @@ extern "C" { #include "utility/wl_definitions.h" #include "utility/wl_types.h" - #include "socket.h" + #include "utility/socket.h" #include "string.h" #include "utility/debug.h" } @@ -9,7 +9,7 @@ extern "C" { #include "WiFi.h" #include "WiFiClient.h" #include "WiFiServer.h" -#include "server_drv.h" +#include "utility/server_drv.h" uint16_t WiFiClient::_srcport = 1024; diff --git a/hardware/arduino/avr/libraries/WiFi/WiFiUdp.cpp b/libraries/WiFi/arch/avr/WiFiUdp.cpp similarity index 97% rename from hardware/arduino/avr/libraries/WiFi/WiFiUdp.cpp rename to libraries/WiFi/arch/avr/WiFiUdp.cpp index 7020df80b..d4d6795c7 100644 --- a/hardware/arduino/avr/libraries/WiFi/WiFiUdp.cpp +++ b/libraries/WiFi/arch/avr/WiFiUdp.cpp @@ -4,8 +4,8 @@ extern "C" { #include "utility/wifi_spi.h" } #include -#include "server_drv.h" -#include "wifi_drv.h" +#include "utility/server_drv.h" +#include "utility/wifi_drv.h" #include "WiFi.h" #include "WiFiUdp.h" diff --git a/hardware/arduino/avr/libraries/WiFi/utility/socket.h b/libraries/WiFi/arch/avr/utility/socket.h similarity index 94% rename from hardware/arduino/avr/libraries/WiFi/utility/socket.h rename to libraries/WiFi/arch/avr/utility/socket.h index 9b06d00d1..de3cc786a 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/socket.h +++ b/libraries/WiFi/arch/avr/utility/socket.h @@ -14,7 +14,7 @@ #define SOCK_NOT_AVAIL 255 -#include "wl_definitions.h" +#include "utility/wl_definitions.h" /** * The 8-bit signed data type. */ diff --git a/hardware/arduino/avr/libraries/WiFi/utility/spi_drv.cpp b/libraries/WiFi/arch/avr/utility/spi_drv.cpp similarity index 93% rename from hardware/arduino/avr/libraries/WiFi/utility/spi_drv.cpp rename to libraries/WiFi/arch/avr/utility/spi_drv.cpp index 12a320b0d..7f56fe867 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/spi_drv.cpp +++ b/libraries/WiFi/arch/avr/utility/spi_drv.cpp @@ -1,16 +1,17 @@ #include "Arduino.h" -#include "spi_drv.h" +#include +#include "utility/spi_drv.h" #include "pins_arduino.h" //#define _DEBUG_ extern "C" { -#include "debug.h" +#include "utility/debug.h" } #define DATAOUT 11 // MOSI #define DATAIN 12 // MISO #define SPICLOCK 13 // sck -#define SLAVESELECT 10 // ss +#define SLAVESELECT 10 // ss #define SLAVEREADY 7 // handshake pin #define WIFILED 9 // led on wifi shield @@ -20,15 +21,7 @@ extern "C" { void SpiDrv::begin() { - // Set direction register for SCK and MOSI pin. - // MISO pin automatically overrides to INPUT. - // When the SS pin is set as OUTPUT, it can be used as - // a general purpose output port (it doesn't influence - // SPI operations). - - pinMode(SCK, OUTPUT); - pinMode(MOSI, OUTPUT); - pinMode(SS, OUTPUT); + SPI.begin(); pinMode(SLAVESELECT, OUTPUT); pinMode(SLAVEREADY, INPUT); pinMode(WIFILED, OUTPUT); @@ -42,17 +35,10 @@ void SpiDrv::begin() #ifdef _DEBUG_ INIT_TRIGGER() #endif - - // Warning: if the SS pin ever becomes a LOW INPUT then SPI - // automatically switches to Slave, so the data direction of - // the SS pin MUST be kept as OUTPUT. - SPCR |= _BV(MSTR); - SPCR |= _BV(SPE); - //SPSR |= _BV(SPI2X); } void SpiDrv::end() { - SPCR &= ~_BV(SPE); + SPI.end(); } void SpiDrv::spiSlaveSelect() @@ -66,6 +52,7 @@ void SpiDrv::spiSlaveDeselect() digitalWrite(SLAVESELECT,HIGH); } +/* void delaySpi() { int i = 0; @@ -75,14 +62,11 @@ void delaySpi() int a =a+1; } } +*/ char SpiDrv::spiTransfer(volatile char data) { - SPDR = data; // Start the transmission - while (!(SPSR & (1<(1)); + return write(&b, 1); } size_t WiFiClient::write(const uint8_t *buf, size_t size) { @@ -130,13 +130,13 @@ void WiFiClient::stop() { return; ServerDrv::stopClient(_sock); + WiFiClass::_state[_sock] = NA_STATE; - unsigned long start = millis(); - + int count = 0; + // wait maximum 5 secs for the connection to close + while (status() != CLOSED && ++count < 50) + delay(100); - // wait a second for the connection to close - while (status() != CLOSED && millis() - start < 1000) - delay(1); _sock = 255; } @@ -150,7 +150,7 @@ uint8_t WiFiClient::connected() { return !(s == LISTEN || s == CLOSED || s == FIN_WAIT_1 || s == FIN_WAIT_2 || s == TIME_WAIT || s == SYN_SENT || s== SYN_RCVD || - (s == CLOSE_WAIT && !available())); + (s == CLOSE_WAIT)); } } @@ -170,7 +170,7 @@ WiFiClient::operator bool() { uint8_t WiFiClient::getFirstSocket() { for (int i = 0; i < MAX_SOCK_NUM; i++) { - if (WiFiClass::_state[i] == 0) + if (WiFiClass::_state[i] == NA_STATE) { return i; } diff --git a/libraries/WiFi/arch/sam/WiFiUdp.cpp b/libraries/WiFi/arch/sam/WiFiUdp.cpp new file mode 100644 index 000000000..19e087f4c --- /dev/null +++ b/libraries/WiFi/arch/sam/WiFiUdp.cpp @@ -0,0 +1,163 @@ + +extern "C" { + #include "utility/debug.h" + #include "utility/wifi_spi.h" +} +#include +#include "utility/server_drv.h" +#include "utility/wifi_drv.h" + +#include "WiFi.h" +#include "WiFiUdp.h" +#include "WiFiClient.h" +#include "WiFiServer.h" + + +/* Constructor */ +WiFiUDP::WiFiUDP() : _sock(NO_SOCKET_AVAIL) {} + +/* Start WiFiUDP socket, listening at local port PORT */ +uint8_t WiFiUDP::begin(uint16_t port) { + + uint8_t sock = WiFiClass::getSocket(); + if (sock != NO_SOCKET_AVAIL) + { + ServerDrv::startServer(port, sock, UDP_MODE); + WiFiClass::_server_port[sock] = port; + _sock = sock; + _port = port; + return 1; + } + return 0; + +} + +/* return number of bytes available in the current packet, + will return zero if parsePacket hasn't been called yet */ +int WiFiUDP::available() { + if (_sock != NO_SOCKET_AVAIL) + { + return ServerDrv::availData(_sock); + } + return 0; +} + +/* Release any resources being used by this WiFiUDP instance */ +void WiFiUDP::stop() +{ + if (_sock == NO_SOCKET_AVAIL) + return; + + ServerDrv::stopClient(_sock); + + _sock = NO_SOCKET_AVAIL; +} + +int WiFiUDP::beginPacket(const char *host, uint16_t port) +{ + // Look up the host first + int ret = 0; + IPAddress remote_addr; + if (WiFi.hostByName(host, remote_addr)) + { + return beginPacket(remote_addr, port); + } + return ret; +} + +int WiFiUDP::beginPacket(IPAddress ip, uint16_t port) +{ + if (_sock == NO_SOCKET_AVAIL) + _sock = WiFiClass::getSocket(); + if (_sock != NO_SOCKET_AVAIL) + { + ServerDrv::startClient(uint32_t(ip), port, _sock, UDP_MODE); + WiFiClass::_state[_sock] = _sock; + return 1; + } + return 0; +} + +int WiFiUDP::endPacket() +{ + return ServerDrv::sendUdpData(_sock); +} + +size_t WiFiUDP::write(uint8_t byte) +{ + return write(&byte, 1); +} + +size_t WiFiUDP::write(const uint8_t *buffer, size_t size) +{ + ServerDrv::insertDataBuf(_sock, buffer, size); + return size; +} + +int WiFiUDP::parsePacket() +{ + return available(); +} + +int WiFiUDP::read() +{ + uint8_t b; + if (available()) + { + ServerDrv::getData(_sock, &b); + return b; + }else{ + return -1; + } +} + +int WiFiUDP::read(unsigned char* buffer, size_t len) +{ + if (available()) + { + uint16_t size = 0; + if (!ServerDrv::getDataBuf(_sock, buffer, &size)) + return -1; + // TODO check if the buffer is too smal respect to buffer size + return size; + }else{ + return -1; + } +} + +int WiFiUDP::peek() +{ + uint8_t b; + if (!available()) + return -1; + + ServerDrv::getData(_sock, &b, 1); + return b; +} + +void WiFiUDP::flush() +{ + while (available()) + read(); +} + +IPAddress WiFiUDP::remoteIP() +{ + uint8_t _remoteIp[4] = {0}; + uint8_t _remotePort[2] = {0}; + + WiFiDrv::getRemoteData(_sock, _remoteIp, _remotePort); + IPAddress ip(_remoteIp); + return ip; +} + +uint16_t WiFiUDP::remotePort() +{ + uint8_t _remoteIp[4] = {0}; + uint8_t _remotePort[2] = {0}; + + WiFiDrv::getRemoteData(_sock, _remoteIp, _remotePort); + uint16_t port = (_remotePort[0]<<8)+_remotePort[1]; + return port; +} + diff --git a/hardware/arduino/sam/libraries/WiFi/utility/socket.h b/libraries/WiFi/arch/sam/utility/socket.h similarity index 93% rename from hardware/arduino/sam/libraries/WiFi/utility/socket.h rename to libraries/WiFi/arch/sam/utility/socket.h index cd7e1640a..c96262b20 100644 --- a/hardware/arduino/sam/libraries/WiFi/utility/socket.h +++ b/libraries/WiFi/arch/sam/utility/socket.h @@ -14,7 +14,7 @@ #define SOCK_NOT_AVAIL 255 -#include "wl_definitions.h" +#include "utility/wl_definitions.h" /** * The 8-bit signed data type. */ @@ -67,7 +67,7 @@ typedef volatile unsigned long vuint32; /* bsd */ typedef uint8 u_char; /**< 8-bit value */ -typedef uint16_t SOCKET; +typedef uint16_t SOCKET; //typedef uint16 u_short; /**< 16-bit value */ typedef uint16 u_int; /**< 16-bit value */ typedef uint32 u_long; /**< 32-bit value */ diff --git a/hardware/arduino/sam/libraries/WiFi/utility/spi_drv.cpp b/libraries/WiFi/arch/sam/utility/spi_drv.cpp similarity index 99% rename from hardware/arduino/sam/libraries/WiFi/utility/spi_drv.cpp rename to libraries/WiFi/arch/sam/utility/spi_drv.cpp index d41dd7b9c..53c93fb87 100644 --- a/hardware/arduino/sam/libraries/WiFi/utility/spi_drv.cpp +++ b/libraries/WiFi/arch/sam/utility/spi_drv.cpp @@ -1,11 +1,11 @@ #include "Arduino.h" #include -#include "spi_drv.h" +#include "utility/spi_drv.h" #include "pins_arduino.h" //#define _DEBUG_ extern "C" { -#include "debug.h" +#include "utility/debug.h" } #define DATAOUT 11 // MOSI diff --git a/hardware/arduino/sam/libraries/WiFi/utility/wifi_spi.h b/libraries/WiFi/arch/sam/utility/wifi_spi.h similarity index 88% rename from hardware/arduino/sam/libraries/WiFi/utility/wifi_spi.h rename to libraries/WiFi/arch/sam/utility/wifi_spi.h index bf479e2ec..b00dc10e3 100644 --- a/hardware/arduino/sam/libraries/WiFi/utility/wifi_spi.h +++ b/libraries/WiFi/arch/sam/utility/wifi_spi.h @@ -1,144 +1,154 @@ -#ifndef WiFi_Spi_h -#define WiFi_Spi_h - -#include "wl_definitions.h" - -#define CMD_FLAG 0 -#define REPLY_FLAG 1<<7 -#define DATA_FLAG 0x40 - -#define WIFI_SPI_ACK 1 -#define WIFI_SPI_ERR 0xFF - -#define TIMEOUT_CHAR 1000 - -//#define MAX_SOCK_NUM 4 /**< Maxmium number of socket */ -#define NO_SOCKET_AVAIL 255 - -#define START_CMD 0xE0 -#define END_CMD 0xEE -#define ERR_CMD 0xEF - -enum { - SET_NET_CMD = 0x10, - SET_PASSPHRASE_CMD = 0x11, - SET_KEY_CMD = 0x12, - TEST_CMD = 0x13, - - GET_CONN_STATUS_CMD = 0x20, - GET_IPADDR_CMD = 0x21, - GET_MACADDR_CMD = 0x22, - GET_CURR_SSID_CMD = 0x23, - GET_CURR_BSSID_CMD = 0x24, - GET_CURR_RSSI_CMD = 0x25, - GET_CURR_ENCT_CMD = 0x26, - SCAN_NETWORKS = 0x27, - START_SERVER_TCP_CMD= 0x28, - GET_STATE_TCP_CMD = 0x29, - DATA_SENT_TCP_CMD = 0x2A, - AVAIL_DATA_TCP_CMD = 0x2B, - GET_DATA_TCP_CMD = 0x2C, - START_CLIENT_TCP_CMD= 0x2D, - STOP_CLIENT_TCP_CMD = 0x2E, - GET_CLIENT_STATE_TCP_CMD= 0x2F, - DISCONNECT_CMD = 0x30, - GET_IDX_SSID_CMD = 0x31, - GET_IDX_RSSI_CMD = 0x32, - GET_IDX_ENCT_CMD = 0x33, - REQ_HOST_BY_NAME_CMD= 0x34, - GET_HOST_BY_NAME_CMD= 0x35, - START_SCAN_NETWORKS = 0x36, - GET_FW_VERSION_CMD = 0x37, - - // All command with DATA_FLAG 0x40 send a 16bit Len - - SEND_DATA_TCP_CMD = 0x44, - GET_DATABUF_TCP_CMD = 0x45, -}; - - -enum wl_tcp_state { - CLOSED = 0, - LISTEN = 1, - SYN_SENT = 2, - SYN_RCVD = 3, - ESTABLISHED = 4, - FIN_WAIT_1 = 5, - FIN_WAIT_2 = 6, - CLOSE_WAIT = 7, - CLOSING = 8, - LAST_ACK = 9, - TIME_WAIT = 10 -}; - - -enum numParams{ - PARAM_NUMS_0, - PARAM_NUMS_1, - PARAM_NUMS_2, - PARAM_NUMS_3, - PARAM_NUMS_4, - PARAM_NUMS_5, - MAX_PARAM_NUMS -}; - -#define MAX_PARAMS MAX_PARAM_NUMS-1 -#define PARAM_LEN_SIZE 1 - -typedef struct __attribute__((__packed__)) -{ - uint8_t paramLen; - char* param; -}tParam; - -typedef struct __attribute__((__packed__)) -{ - uint16_t dataLen; - char* data; -}tDataParam; - - -typedef struct __attribute__((__packed__)) -{ - unsigned char cmd; - unsigned char tcmd; - unsigned char nParam; - tParam params[MAX_PARAMS]; -}tSpiMsg; - -typedef struct __attribute__((__packed__)) -{ - unsigned char cmd; - unsigned char tcmd; - unsigned char nParam; - tDataParam params[MAX_PARAMS]; -}tSpiMsgData; - - -typedef struct __attribute__((__packed__)) -{ - unsigned char cmd; - unsigned char tcmd; - //unsigned char totLen; - unsigned char nParam; -}tSpiHdr; - -typedef struct __attribute__((__packed__)) -{ - uint8_t paramLen; - uint32_t param; -}tLongParam; - -typedef struct __attribute__((__packed__)) -{ - uint8_t paramLen; - uint16_t param; -}tIntParam; - -typedef struct __attribute__((__packed__)) -{ - uint8_t paramLen; - uint8_t param; -}tByteParam; - -#endif +#ifndef WiFi_Spi_h +#define WiFi_Spi_h + +#include +#include "utility/wl_definitions.h" + +#define CMD_FLAG 0 +#define REPLY_FLAG 1<<7 +#define DATA_FLAG 0x40 + +#define WIFI_SPI_ACK 1 +#define WIFI_SPI_ERR 0xFF + +#define TIMEOUT_CHAR 1000 + +//#define MAX_SOCK_NUM 4 /**< Maxmium number of socket */ +#define NO_SOCKET_AVAIL 255 + +#define START_CMD 0xE0 +#define END_CMD 0xEE +#define ERR_CMD 0xEF +#define CMD_POS 1 // Position of Command OpCode on SPI stream +#define PARAM_LEN_POS 2 // Position of Param len on SPI stream + + +enum { + SET_NET_CMD = 0x10, + SET_PASSPHRASE_CMD = 0x11, + SET_KEY_CMD = 0x12, + TEST_CMD = 0x13, + SET_IP_CONFIG_CMD = 0x14, + SET_DNS_CONFIG_CMD = 0x15, + + GET_CONN_STATUS_CMD = 0x20, + GET_IPADDR_CMD = 0x21, + GET_MACADDR_CMD = 0x22, + GET_CURR_SSID_CMD = 0x23, + GET_CURR_BSSID_CMD = 0x24, + GET_CURR_RSSI_CMD = 0x25, + GET_CURR_ENCT_CMD = 0x26, + SCAN_NETWORKS = 0x27, + START_SERVER_TCP_CMD= 0x28, + GET_STATE_TCP_CMD = 0x29, + DATA_SENT_TCP_CMD = 0x2A, + AVAIL_DATA_TCP_CMD = 0x2B, + GET_DATA_TCP_CMD = 0x2C, + START_CLIENT_TCP_CMD= 0x2D, + STOP_CLIENT_TCP_CMD = 0x2E, + GET_CLIENT_STATE_TCP_CMD= 0x2F, + DISCONNECT_CMD = 0x30, + GET_IDX_SSID_CMD = 0x31, + GET_IDX_RSSI_CMD = 0x32, + GET_IDX_ENCT_CMD = 0x33, + REQ_HOST_BY_NAME_CMD= 0x34, + GET_HOST_BY_NAME_CMD= 0x35, + START_SCAN_NETWORKS = 0x36, + GET_FW_VERSION_CMD = 0x37, + GET_TEST_CMD = 0x38, + SEND_DATA_UDP_CMD = 0x39, + GET_REMOTE_DATA_CMD = 0x3A, + + // All command with DATA_FLAG 0x40 send a 16bit Len + + SEND_DATA_TCP_CMD = 0x44, + GET_DATABUF_TCP_CMD = 0x45, + INSERT_DATABUF_CMD = 0x46, +}; + + +enum wl_tcp_state { + CLOSED = 0, + LISTEN = 1, + SYN_SENT = 2, + SYN_RCVD = 3, + ESTABLISHED = 4, + FIN_WAIT_1 = 5, + FIN_WAIT_2 = 6, + CLOSE_WAIT = 7, + CLOSING = 8, + LAST_ACK = 9, + TIME_WAIT = 10 +}; + + +enum numParams{ + PARAM_NUMS_0, + PARAM_NUMS_1, + PARAM_NUMS_2, + PARAM_NUMS_3, + PARAM_NUMS_4, + PARAM_NUMS_5, + MAX_PARAM_NUMS +}; + +#define MAX_PARAMS MAX_PARAM_NUMS-1 +#define PARAM_LEN_SIZE 1 + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + char* param; +}tParam; + +typedef struct __attribute__((__packed__)) +{ + uint16_t dataLen; + char* data; +}tDataParam; + + +typedef struct __attribute__((__packed__)) +{ + unsigned char cmd; + unsigned char tcmd; + unsigned char nParam; + tParam params[MAX_PARAMS]; +}tSpiMsg; + +typedef struct __attribute__((__packed__)) +{ + unsigned char cmd; + unsigned char tcmd; + unsigned char nParam; + tDataParam params[MAX_PARAMS]; +}tSpiMsgData; + + +typedef struct __attribute__((__packed__)) +{ + unsigned char cmd; + unsigned char tcmd; + //unsigned char totLen; + unsigned char nParam; +}tSpiHdr; + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + uint32_t param; +}tLongParam; + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + uint16_t param; +}tIntParam; + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + uint8_t param; +}tByteParam; + +#endif diff --git a/hardware/arduino/avr/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino b/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino rename to libraries/WiFi/examples/ConnectNoEncryption/ConnectNoEncryption.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino b/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino rename to libraries/WiFi/examples/ConnectWithWEP/ConnectWithWEP.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino b/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino rename to libraries/WiFi/examples/ConnectWithWPA/ConnectWithWPA.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino b/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino rename to libraries/WiFi/examples/ScanNetworks/ScanNetworks.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino b/libraries/WiFi/examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino rename to libraries/WiFi/examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiChatServer/WiFiChatServer.ino b/libraries/WiFi/examples/WiFiChatServer/WiFiChatServer.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiChatServer/WiFiChatServer.ino rename to libraries/WiFi/examples/WiFiChatServer/WiFiChatServer.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino b/libraries/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino rename to libraries/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino b/libraries/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino rename to libraries/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiUdpNtpClient/WiFiUdpNtpClient.ino b/libraries/WiFi/examples/WiFiUdpNtpClient/WiFiUdpNtpClient.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiUdpNtpClient/WiFiUdpNtpClient.ino rename to libraries/WiFi/examples/WiFiUdpNtpClient/WiFiUdpNtpClient.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino b/libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino rename to libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiWebClient/WiFiWebClient.ino b/libraries/WiFi/examples/WiFiWebClient/WiFiWebClient.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiWebClient/WiFiWebClient.ino rename to libraries/WiFi/examples/WiFiWebClient/WiFiWebClient.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino b/libraries/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino rename to libraries/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino diff --git a/hardware/arduino/avr/libraries/WiFi/examples/WiFiWebServer/WiFiWebServer.ino b/libraries/WiFi/examples/WiFiWebServer/WiFiWebServer.ino similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/examples/WiFiWebServer/WiFiWebServer.ino rename to libraries/WiFi/examples/WiFiWebServer/WiFiWebServer.ino diff --git a/libraries/WiFi/extras/binary/wifiHD.elf b/libraries/WiFi/extras/binary/wifiHD.elf new file mode 100644 index 0000000000000000000000000000000000000000..d4a8bde55f5e9f4440ca6881789df6174559b9f5 GIT binary patch literal 724331 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

m@+A`c*P=h+aD^p|e)CJn= zpg!WRGwRg;+dXXp&fpuk|FLc-{A$(=tK${7Z5F%+Ey37Dzajq}EY|>~fp;lmTaI;X>mRnb$5A)HA>Z2cxmdYe>!0$+813dG$e!=<+2#>N;>a~7dH@%cdAML4eaex z?Co=;$;tZRU(jQ}v%(`Xd)mrXD>Tbs*5S%=jtx1h^|j2(?H72uC{F+{0iIR$wWq(& z?4t7mtGoG|Hjt7-g1*%j;D5@{ih|C25$TxrDfhg|-L% z9&JYDRKko{b6WFk`#3A(anwEzkYIk|9>e`oEgyIrS9;*fjc5UNg8wmeiQr|pOhvkR z%nuuE4&lYE7GB)WAb(oRs`;~UjYb)rNb@7iQQ+Kj`qLpH4W6{Prsu6Sc>ls^9XGtU z>bS8SUw(?c7wqwV<_PcUU_*L5#P(u0b;aP{%J6v-)@S^^k9B#&>RUb)m%XON#2|lI zJHZRU8b0a+(C~R3^G|3%+-dzs_*S-nVmQE;BFcx~dggzGe9lVvCZ8zQSE4NV<~Dp` zMA}%*FYVeEP1loj6v)>i`B@_WOXPQJjBhRY8)QDX44-?UscL=d_D@K&pI^IPHosru zu3qc4Bf1J{^D{p&Bxi!PVo@!A9{~0=&nlyGOZ~Gi05*~nhNKEREcuilPk$Myu!p9I zHHj1t0lq@ur*uu(zm?TOx2!sS5#DK9+-MtYbD2-d4GUrC)I>Jiavow7U1H~I%?<>( z{Uq^@e^@)5HF2%rnY9+)@z!F+So=MXZ*8XMxwW~T(zQjN%C*1n{B~`%=l!+&Jjd5I zc{AXGMMOITxwrji(ABrT>$Ls#9>C*_7&sTlcOj*y#+q&B zuC6$~*AN}~<@u;>g5gWNcdCKBLsNq8@Bh3L20Nl)6TSq*SM|~2*Xak>)@bMO%tdeC z=(7JdkXP9ebmta}R^@{p)OX=j9Df5f7*(agBzTV4gh1{9TCgeY2H@^TU9gsl90*3$ z#Ip8^>cGV~LDU%m0csa7oR50MX}W+`T>u_q7dmvOBBIB4owWCf5!7m@s(c>E{nH+zjfxPi|2HmU5Z=ARPmLL(VU8vD15H!klQ4Qoivn}YlQE3whiW`KJ zuRtQGBFai89EgFu)L#VMzg|bsP+3kBpya6sV^skdO_r_#sz5G(N6?k=ZdcIWM|~qk z5ZoG+1Q+_n`Q>^0tLPWhCVGMO9|rR7ULJJ!Pb6b1CuBA@LFu?^jgAQ9{+AMT!83g@ z>JJ2;$*Rm2&4HB*vx3fhp6Y?MC{dH(H4)t{Km10}e*V3FJ*V%rM4JcBM?IhH0zLtw z$qNWgCcVuR`0=?7!KjYiy#~(EZH~5HITtnAX}$soW4*xQQJY>V3aqd#2}XaG5Lo7T zEI3}D))~P?T-9;9*a)ZYj1cVz_^vkvCw}>H-zodi9xG?H3w`H-Q?K%Y9dv4o2&`;9 z7j)invLEn)jw1%nMt$J03KMO|hf5@imMaiek(dH{BqtuTD)&eT@i}v&<9q&8VWjxE(L{XGhwywY}9k3HQ80= zS2n%VaK;jC9XJ&=b+mM9hyHjl`lkgp!w}kW&Km8waoXPIwB7(VsU3EmO^1j+J8kQI;{g3 zRk3W;DoGf%#z5Y8uLa$~-59lpXw=4m`+ag}#_M9^(4As7gjZ@^Kn!EtP6&~^NiZ-t{%gQMzf(0%TUZ-ax)9DrkeDCqjm zE8hagB7)v-*mcJ^X zT~^Fmw_(uusMMa8{_xAQxACB6`Qi!J8+{@gKL zlhq`d*OGPMNJi4zb?zh@>uDMJQhg3wswWuN^j=u8cY?!MC)P};gf#el zvSyh8NwKZuO6Pd9bB{E;Jz3*Gad*vlDa;d&6KlYoYx?Usz~|1UT##ORpjWv7dr(+S zqn@6>o`%N-BQHE2p%5spD}Tk z`!$qXKLGhwWNoIlQ@ihY zI^exa7nFYbaKQIwX>j7DRyoqcdnN|FCx(Mk<@*8Og0;bkw&{pj{G=z|^F3*seJgYk z6vuYw4tGVufLXA>gDpzttuxS$!ElW4i2MG7YI0X-GRT*4mf2L#_?so3SdRtrPQ

    UXR;jmfeUiiqj0)rK1c3JfK`)w#NEjh>)KS-?Y1=c9It_j|i(C z+~dRs4En=*abs+*AK?&d7PTV{v%!A&6V1D*j3~C;eCAcOA*{ul8rI^aSo63?e?u=6 zo@93<&PVQu!2!2nu-|PQ>~j-cfQ?u-iPBJtB5=kVa#WMQI2@PCj~s%3H#GS6V*Cw} z9UGP5S18(RTf;5CIm}OlQY6Jm&Wb9jXkO7w5t=oOqw`fCYmimS@LC|%WPFH{Vkrt2 zyK@mQvoVfQmE_|Up|Bg?ym?2gttP~a^D~45YI~G#YCo)HVKc~4nrEh2s~oY2>GKAq zu@P*7CaZ)8n0h8Di)=4$`=D4~envZQZ;`e0I-R@A_M+YJ`9_poWQOhX*P{WONLI|+ zpjikLzR))$Un?j7qG*e>lR<3tfve?jXyDiIjvDBKVHN@`X7)B`&3Oefz2WMSE9`BA z2B8K=*;OhFes1`pDShyPT{O9ONJspkuulKuZ$WOWFJDfELT*n`jF z5%uc_zxI%?nT7CeG9=V^q(p(8;~&GwBE9v;@gDZ=%7?zm@R8ynnf8WG$hWWSJXZ(7 zJI;IYJ3)6=*MHCK6-?=}`}Hcxyy4nOXn@0y!!$PHl25{dF5!mHq?!cjQC5 ze6U!mfDVx#Q9ubtbK0}=JNTr79yQ`Zh=Uf1fQYCzt_v0+tY%S60^f(b5)x8Ha0M9# zWuFNeO(AfhAtTx!Css#8*Vz{jyu?$K@{(9n|;%!Y z*JQ8AC;fpf8_b(I-!z{@^Fl(XOhRnvc&-AabS{w&&hwdC-rQg+gGMZ%jcRKq%wqlO z#?!c?%SgixPehx-k;}{@qGkV^G^S{c0ncX={%VW$Z>O>TW^y2{&xwwRhNNF%)WP<` zxs#2iVj5ZPdkd1B(9dvpII7mi`#$e!8g7DCZ+9%CD)Lc=Sfs#}&5AK@rMRS|)rxyZ zYge&;3+dGl!SYeOG+!q=DlqGAzt{(!Gi(Q(h_T7Ix6pegFXl_5$Z7%pe$7`-Bev!; z)woo;(usJRyCCr@7Dv}3RuXK=Kjh%oSI5yTFAEek5A8NCHB(t_voRN9OhLW{dAIhD z+K15v!(N?@W-4$i|7N^xr1ujKs}T}l-6YHhHVM6$5sO;J1I|gf+MutFn0c2T(M`J8 zGEBTe*jDQtxQcj(cuYWMFYX_1a({-HY1x6i zlEWrM>(VKBp9*X^5`L+QhkEcP4bTMKpCRIH<-C2A4k>0K1-Nz?3xWGZJU=8=9NY_z zJN9B#X1dC*LSbHfm8&YgDzoaLd1U)Kt*WFdyXvR(^%-;39(HwA?L+RVC~eaIV~N=H zu(>E6sb$r8K4e>Z9UhWplV>vGxz=F4LOe2t!#LS1XV1MxPfWsbyB43AVKau}sIgRt z7ZARa#7b*b#&Z;pOsAqor&xQad2aWiH|Mq-+QjC^sJSN&QU4ph0B@9Ztg3sk*8tsP z9O$d@S9Jh3O|=^CDQ4N@KVjnoamzHGE9;*%;V}W)MgQ9nIiLsE`1x-Xii{JUfmVYm z{3O$epPv_gn?}@#H#y{UpS~1|g|I$Q*SCFyr+igHWZ^!P76DH}jl=c9{p1&j^%jq| zJSgW$+bIen?(g^KsK)(;x#@`Zm)w=a!G{KZ5wY45!e8gbeqB7Sh{I=T%6tPFYccuM zdy^okH2TYd_4rPBDl*k*Ge;gTU?DX1F(;aIkSmbB*D|F2X6UL-?DIm}jKV5F#Jn z*p2N3$NzrJ3LeB&N1G3R1n<@U&VJy^bYPbpi5Yt*&DaMN_<@E8lkhw@4gQ@YX^w_1 z4(4hW$vQ2NYWNcK@$AlP$SoY;@@KEX4CY_4zkW4c7uc)U&|JHFvw4Tf{jsIP@-pfn zY+{62>T$&gvs7k~#$=591jDO??Fge1en}&e{t^k>@C@kh83WC@%`;k73Dxk-K)s3h z29$EMaQ+dUt)&@l2M+!W`XidGn8WCi=4H%LZ2WJA7T!*22dM0R*vyc89Xpt@At+zFCOMD7?z zPn9b22#1ku%xb?TMn5?;cK@8O;b}YMAr*5_HuL)c+`!t+zie(l_84Tr5uhXq#f{b{d_gm_QL13HYG6LHZpB^?#BB!lD_|MC zEVIbnK_lQ2T0=e_sU^5aOK^{t;2tf(eQd_()DlJ^u?*MRFZ|aqj0M~~rVGr+pVV-N zyJkA90d)75!Q(!FB(SFec4&?&4;>mlgGlrrFkHjm2+<{ZjA1)yXurW# z4y+8rGprHzLi+8T*1s%vYv@|5jzf$j_<)3W@f|YnuIlBXWgH5?J4XB4h;&*TThncc zG`n5`?*V6d?DDu9up)^yUr8F_q^2u*BV59D^bKd7J@|p1v(0JSf;rGHTVr>|)%mY4uwM zP(S4z$i)@+HuII^ex7Qx3*$=Zja?O+Q0o0C^^0la2s6U3gxXfiCpz#cE2XN~8b_^6 z5>4j6q(-6L1f3&w#rF%>4h;LVM4B6n|KoirE6-cy+2gJARC?d@Z1g_ty~8Ufuk@Vt zKI-|SH_vm_yUw%E%V(*l!3*_%ii3mdg{Q7)ou{|2GwNE_bKXvGzj9XDW6M@5>8oDl zvgx}qo4)tzqjkweXU|9VW>shXt8!2&wPkyoAUQcDsQCSiQi?1km!0)Sa;5T~@@evN zXRr~&VBr0=vMtwR;Fh3uY)XdU>Ex~|TsKJXsnx!szbWieU$-hfJl`<1)(;aH^Q4QwgYv06n za>t_wQ(j3v`{;Wq*#vXSQRMN8YKn<4lH3m&m97Ukhm>&mY-dz&iYukap{58aciYvJ zQb_Z%!41?2+28~AJF-Wi5qCJYrObTv+@sf0oGF=){xJo;g7kY(W_HRw4n|GXdt&xu zf}^4rKD<*FUOpcc0>rhCNh$Rv&_+rgavVWRvr{r}<)E~b(pK|WQcBT{?l?2xRc+ZG zS4!zw$Rm&^7ZMTJ${~(+5v5ejkEJWTcK?`~QVH23OI0s)#+g&ruE|4!4 zRE#{O1IS~qOgTdM_!^XTqfn-1JXW8IT7>La%Cjexr8S|q75nbhMEQ?3QlC(Nq}HeA z+OkuNXe6Z`6jX#NQy=>yjS@;XNicPvjoGPxEPdiDb-Z4>BJE#OgQ-W-l4yL4spFm0Pt!6`M}O&RF*}VHveWX63vCO< zg@gsdz=A_*&zEi#7hR?2AfC^qMW?-zdOl4p{k5>j2<)OXY6~#6;M39_(xQIqk*=uT z1-+&3q-Ca+rqu}9;-a*Ow0qL(sP-%8AWv3>g`W7pigi`N=!O64$xJq-P0wpxt-eljK=vw2D<8U%>m}iJ(*#BUanQgqJ*vv!+CuvRujh8pCQaAw4T8 zSx6AFG7E*|^g?s8D)7V=2hTg=^0}yb;^g+7jx$TS7++>CQVHR^0DlCQ=!pZ}_NfDq z-HMRiQo4&Infx+pU$+oF5oxV`=j>C4@Q$RWS1v~FyM*(xQ$-AWF?ym&H~6J}noT!I z<53sug#OH5` z8yl|o9Hl$0)tl_q>K&qbFKYFgzOCLp0we|JsMgbeqt?p*U9C!~V3y2(uTF2ct$(Lh zo%gr^J&CP6<~M)8|m1Py?2 zzn(KiPrPv2e$NH;YZ$*mAl$EzNEwp9+EPd^IjlJ-O&qN=xf1pxI=}`w5Bwuf90;Jd z(5vBE`O!8gKcoJ4L=qH`b4{e4?mMmZ7`5XfD1~}Hxz5NaWNZtVB#|Gj5vd}Q_Zfk+ zu~ey1e~@558>WpWlmwcj+D2=_zT|5Zi5&p&6(oF}4O0e7Gm0%%TPI4wc>78pu~c8F zZ_xNPs`zGYDZJLYzg=I7i(2=$YfFjOS~r#ozoovJf4_Ap>HnM7Vb}5ZTj%{>w9b&S z?%P{8wtrJfzh2un`q!FLMQs~9x>);f(m7Fi${wl<66c8*&W5R+`t2(;p0bZ{Xf)IO zA({J###Lnn(YPamU?Qrf`GzQ)XdToooWjg(T6pU2`B_J z?5%_^!?295R3ybFxKrZ=L>&X%kl_+Wplt<>D-9Ncn{3Vq?ry+9SQ|WNpO!lFETBNS zkiDM`!!m@lcFX09QT3@Akl{u^cV^8ivG_sv3Ff zUj_+!xC@YUg&`rR86;R^X+$zeFbkySUH~L07m!>S0|~)F+EYjuky>QrX@sI@1X`g8 zlCdyQ{e*F<8|h6%U8$v1JIV!C#=<~rJi$Trr&bzyf(6uJp&5xF84Cl|PjFD(1P9ff zy61m^hx-2qJRJGEcrc`P{B=AK4v3nFk{Hg;8`-K!?I(PE32b~B?h9)FXx}kB3>w+k zraquGdn|=2PZC`?BE$Uw+c;1KC=^&QlV%0_fv7J+@%aY^$kU6 z^>tme-%aIqp%$8*phdPEb=!|FPg`WPh!!f}W}zDFmJ85if<{(^Nrg_jy6b2b47>3x4`;B_^qZmr-!0c%a{Kjrm9PMf7a7_#mPJ{NluXF=b&_2<$JfVFi4C$jM0%N+f7wvbB($QI9mUcK2 z+cl?McUY86(X#tFn>hh@w?5(grqZSbKq>HOzfvAFLf~W;OZ6$iSi1Sdg(Dfy_Jb*|L;Zj8; zm~0~L+3eyDG1;}6kL9-!O-)Rma;3{YS<}Z!PAUYQY%!M}D?M4-m;6XRb~}9SW}dVc zh?6>HT*q|qYKeypy#wMq7O9TyuRce*MOE2$(ql0}kHr+$V=;jvxUzFplf_Fmxt&(* zGBcpVvI!pSO+zgsXW)n562yGcY0?qT%|ZOQA=7w;zKPZJ1#hkJS$2kTamT?@r@?kV zbYN~n&Pd`|Pb1sc$Z00+3%Gg%vNaq_2E6uK#4d}wmtt{3LbY9;Jy>sX4A%2fzZu$W zyg>kWQ2*+>t7ajy(_#@20e2Jpv$-?6{7Ll7_@@)|VUwUE-lxBPnf#Jl^L8%Dkr#QV z{-RdSlw0KlBT>#k_V?Sz%h1k&+=AqURx5NYG;S=(Z)Io(;Vtj34d20%mc>sq{6z)K zo?`ufk}f~tc<7FQ`ntZ1hac6If#%FaoMgiqGXd|(o}je|5UQBtg&TlWYDFKeUNDnJh0+NlFNLlH4CFNm(UIe3loS z@XD-8IbC@qt7zXwSR_V)+r8_$ms=%4HhX;~=T#n79+9U=Ti$-rSbKd1m%C>p-jbyE zJBgX58YbIEY<2}cq#)^vm7RQLVulHRj9GnBVkWP7gpTGQZJm%5T?)P3ChM&Bw-fpm zUQB}B+j->)u`>G+#5{J0l349gxf-%#gZ4XYuMmkSUE~pcKIXos!(+Uj=?yS>)jKlu zKrSHWz-uxG@no&^Jt_mB+I9Nm{!vwW46UYmQto=y;3G&q|9l&eT3dVu}9=y<3zz+Q>;X)anHw- zbb8VvQ7y2iG2pDmp!gLG=}JMvp+64(4RP&@n~StdN%zOiqAT8c4p4&s`ZPOP=q?)U zO;=?vx{1FYG=UZ&ZbuYTv(+qu1C-WoF#EZyzlAfKAkaCe14V)`2031j^ zOYyGm6LF5254c59^krygkcI7T^7W{K{})v-Vi>`|uh20TC;#~^TY0kIh8`L8JswpR z08)OyyFH{scIIpKue)dc8&Lncpzn=4>R)$P{Tu$v`d8nx{yfyb`X2SKzN`Mcd(=Ou z=&zMx1Sq!d;A(ggrPKZc{y>*18)u)MK(}gH*7LAt@BVJ9nErkN==&hN1d$)TE%4H5 zeJAkF1z3*-{KZ68&;vfH|^=RV{>(-ZZMZORbS(}Qh# z@bKC!6`mTA^MO+S{sTLaUaO=>9|nakxYo(<}15bh0PPLiLVGq}Ei-zNN^L-2V4 ze);*DvmN-sN6_ar_-)4zHiVz!4EXci$cLWA=XLmPpt+~`JY5nvHrT902?^@+pfONs-TYNLxvTnF;z`Pv#F9!HQ`Djg1UMqA2gE3Ih59M8BONl~(p)J=kD+yX} zN-jtGKH_MMf^#8xgSNv9sv$Sk0FSKD8KC;n*OQ58IW%oVeNwuv=89JFCiVoyeuIyX z0%lS>R)_EY5qoQ`j2##JeC&?#lJ7=S_(+)tA`9tB(;jw;Z+AoyG+*-(fozauy{5@c zKbr`NFT7ujdHLap0!RDHDG`OYzmHX?t#v9^BR{-j@bGuAk(mh}sQsqNNR5y2iqEtK z{e&F4BEwGz=A6RijBnf;Q5br%pMgGoI?bA~u;~V!c=`E=0-N*Yf{4N+A4C-0YRl1g z&rFT+CZ^DLK#5P%oWlr_7mipT>N|#coVGTU6D>azc|laX82XrqqNC3#HD@U`dm;)C zT|z7SUUni?9T^C~^8Liwm&27F3K4||`w6y~XL$;oHJ`tO^j7>Ro@u_Aj<|}?(N`5; z%eYUQuZ&ooTQ1UA5{HN3R4;;6E`GH02m z%v}~H7L-jcvzH0(H5m2kFIwaQc%v#TUR#_|{9N(;vXnBmETPP*h*QcIUo%c~LI2&$o=*m?daqlSmmBBqEq1#6|XkSte{du9s`4`Y!?+xPPqU2*bLk;wy{L z`vA(N6;D8(fv3Eui=&a-GYk`WEtuRh0u^|Pc;pVaOuHvsX5S7M)DSZa8N6>Ch7EL% zFt71-dqdRMAk(ctCMKdF!W)DP`L81XR|=;#fM^Wf!3*v3u*K5g-Gx*q>0QNJFVo6MjnqmHRUxv=Z-!ebu7-UL!EzcTaN8Hx<6n2 zVV<(42Io{I?mL0sw6@ZktE{QYIy&YIj}>M$yg$j7Drha{1*7I-UJhb@!uL-$$V}Dw6CAoHRy8Xj&0xO4`E20mC1Z!fA83+HrrI*FLIiEA&|9j})C@@X|_r zIAy(4^x|MMfcOEM@K!YZ_H7jf|MEH+b{HMKX)4zw&&0#fbbhk;QI#F{ZUGwCPU3TT za2+f>_DMk-j}d=;)$~2mliiPR7H`5lC%y0`F|Xg(DwL1f)S>A1-3L9%`=BRzAM_;e zt8@|va0Xs1rz!e;dd@@x&MB`-t?%b(PrR8nj-;ddXs_Zbx6VmDfI&O-Anu!-{`fXlV~x zI|MaaBPljb`+>oF=*}xP<|HM)R}3;D!t6@Y|6*8LMGiU9K;^t;F64ba7l>Pq_Rh} z#{EEL>f z4Ju$2G-u^p((xqhC*6F&+V2(`MYsKEZF)kmHAu0?^y%Eu@$P~KTNZn?B(3%6Mune1 zpI43*t>V;$7DW@AtU`#>$adR(E_ev?rp+@|E7nLc$Ewquhfh0O4}XxBa=1Dzq4|R} zuDRN|qj~Mfn?~}|majQz2QI+&h4f)pEpeZ6gV)1DBJ*KPm z#sx+j(82@G$ABy#p&6&~YU=1Km+_68f0i|_oOrJ&z#}1NWx!i$XI?)>a9ozfD$yT| zh^}QduV_bYaz64sS?r0<%kRVgjeKP|BF@gUf0j*5Wt(8jKVf33+TvKoHSW02ae(o< zo@%qI7+31SS<<{OQkjKcq%e!dPNnbP!1phlmQCzb|F6Oj845eo1b=>*>+)^}K7ce6 z+f0mjv{r(|3LbxsD0nhIh$q86p!z5p*ca27MbMIT-MC=d2!C7f?x*gaBS11FUH&a& zXh?*;K|OS2C!zK0$bXRb%h`viR&6u(XzSeiLtAHmif0>4Qx7q-2WNN0eI8R8cLveE zYX^;cJHY9?drIlBGQt~Xwb2$NvI%vPEaNSOxXoeP% zhkc^?>OX3$B+_+0W2ls}aNk02617kt$7+`@7Qxd_e~>3v`xFnufrC56BJ3wj=uJP$ zHDX0~&Ai@nL>iCpQk}n}I;p-Z2Zm~B7pLAg(xUpKh|&Q+rxazAPS(6sj1W)GtG1*RGD*4c+=f7(16FgQHBWA>+qj>bbiqTb%J9?ub3 z3b=YciAQU%qQ*&h@*3LzbIm?YGmYm}j0DOpa~Gi8u`IxuIf8pTWNH)QPUZeN*D$#k zQnhcxgUvKW>lr%}!09Qf+rOL{blbZTwR_IIy#|`jEv*=z64yHCdB3M% zOWY|y^$e^^yu`Jta};QIEcm(OGhm8N?i%dl>L^NV-vwsfa9=dnsV|yS{MI&;8cybRJ;TCI!W%U#Gh(buYqH&t0!54VRk@QMG+t3P7n68+h+%6UqC(gDV~^Lp!tZ|Sg=q) zFMp==e15R!(lkg&T}kN*o<`#d#!L2L-Y=wiYN&!8_V6ra=fJ`Y5LIYCVEi#zYKAZz z9;h|47>4&@i2__Y30q3S*lfkael_M<2j=p6^>4A`dD6vRIf6NUc&MhWdFZOE=*q#t zX2@;fXD8<+X(P2n)eYZ}{jjmy2x<36v|Cf1ho##J!1xH#UnKDoR$QdoQSKwU!;>c5 zpFvuW^me3AO)|!PF8!YI#(h2s(HjQ)!e1dgQk}yr%!X_j<0BT4b)Kq)ufa}qnOLNF zNI$B>xr>Osz3Q-nadnQ%kZR>!=>%s6&&)SJA)Lb8uwVGoZc|(Hq+^tSo3VsF75k7(WPm7bmBS+K@XwQc|Iw}aI5U?S$oa?Ftxm?POlWyB(y zBdWLNc&?uGv0ckCOFVp4*N>S+O!b`Xaq)QehNPd9oy0q)BmJ6GDD9l%QRYv!p(^f- zGKW4<`uuC@C{ckVp72dos(1tccUohVSv@`p{3G&z-S|urUtEMXPtsBJkm_5O1S)R` z_YgmN1p6Wlz+uz^n-tY6z(J!te@^x-ELJ^#_^6~$;zMKe^Uyfa*sN*9X;C9ODE#fat+oM|1Sl}i;JqJ)KW3ol_^<0tul#T*swQcfq)m&#G*MplgLB-we+$}sV9tWuaLRl)-3?M*V9hDa#`?IE1}|X`(O;#Vk&e%# zeeUNmPF<*3;X765{e`MCG}~1f_!5G0BgW(Rf;=YdSRPaCSTYrxmJB7GuB6kHv@^(W zBB~?dqmKHI_!*$ZqGh4g@!H_8`xkZnN!A2y;DS_|o*@4TM7;t%9=g_{w`c$}8L+Gc zZXW~RcnuWsdneW=(yI3fQF3Ls{TC%x%rRgg?Tk(a>G{x~K=)+63MGTK&nNgwgO{!G zuTU{bbYl92@6v*`#HR##6y`ATC`Y$m#pt`N@D*q{nmEU9qfu)%Rn0Ak0j>nGggJEN znK`3lmDR!(h`npIaGjcC?>xe&$;KJIc*SuE?IQd0U4+5nb3vZz1j(uGA{TecO!78` zwkWuuP?i2yK#%N#7q&|VTbV(7^vz00Ur((dtffxqa$8iP10 zDmy&-y$|c3Y4~Pc=$3%!zAsrvw+W$;Y7KnGg6)ICiWr%t(RfE6oD<+;~u%!P# z@DyB{{0y$}sE9WkX9v*kR;)#*j5V_ZICppw@2sVDs6RPWs-$1pNuaOwSdo6+A7%22 z)9?%!>&pkc8-az*Lmw(@_j1_E378dJ+!>Pb>Z(Y>3-5YS;`k))#B+e&h7;B9pCgJx z$Hjy2n)vI%u|KRl`YC?L%Uv1Y(S%d3BNJZEM z1*S4r-h!Vil6EDUK;PW9rlDHF%T`?kzJ>5?enTRi{wdfc(R#(ql=3ce7IuOA3sC7V zJj|j6(Bm*6j$z-*xKHCwqHp%c$dYsX%i0DPRcXtQEF3rGwkh@r6nhA0yj0J7;-p-jYTHwSP?6D|r8|{kKJ$u-1n&Gp7XhJA1{?Yl9D10sJ1|M_?3#Ejs&oYaQ;HXthf51e3MIY<>^eiZWg39*H|y_(2UVLv}3{?x-sDn;~0Z_ z+KH8@uTzXpdnxT-*$Rg?hwtDcD=)HgQVm1y3Q zMNh7?qlB(YW>`MOWEpoDCmlcQxa!_^yaY0tK?d@qPfX~`0QCj)qwrL{0xPQoHZBs|SgS(9$Zn(E?eB^%gaiq^}%-wxP`43zk zsla2!v!XUO@*VSh^p2%>sBHu(JlT)BYfSSATITr#FZ7so<#`hD{yV`hC?(amU|^bO zo+shdEV9~@iuRZQeb&4Pa3(K;Ec9{(_~a_=`m4FXyhyT|7NNKBv=PnS1T^HGQeoF8 zJ~s38%~LXaoekHW<1NA^^!7R*&Rq`+XRjN>4ZRnlHi64xd)uQ7Qo%l)#)QLDW;lBl zxItKoG=KFYAL}7nz|tMjlX&>W2OQ_^t>0S+xeaeI?I?J+>fO5Y$PK=MFQOKzfuN0V zQayjfzA99Ul;ycUSkt?KP+f;dYWnoucK>iqe+<@i^^;rep*pBmpHeGodL&rWRS)7x zDDAqo9Qse8c0tm?;R)|amFD%HH*GR62ml8HoW*o4n~A*UVGKJqp?n1HjO2AcIA_mx z60H_0vh+B)ZONArQ)f45kxnRY*-E=NMmtQYm9<&@Nhi&5GtPYxiBL~_+rEaObBY$% zB#Le&!EemA7x114pJK%EI)u^#xe`_loVun+oXfr-RpJ+9_3(_{WxW6kYS9HPw4OfS zP=^FB2aq}^NDrCI#Ud@_7+vrwr1*bYXSKMm)AQ6u**JUn%=S= zaGC1(mornbhGE@n&COSz{E*hOMK>3Lw#8N0zGHgbOxi|VQ;8)7lG3L;Su-Plbe-ig zI=Lv@0LwiNUCgu|mV5N-B@_HiT1>s4%ckpL5qt-0F~xYhE=95XrXpHl0b{UP<5|-T zNQ4m!1v;myuFo$)hgqe+3`r`zarsh|E~c`_pw2W*M|s{R#On-HKFl!vMm@@3h|-G& z@=62k%OnfM2%g(*Ff#`dV^S6uS|%?}F{LT-e_i6}Ceo6dOOY!gSkvnRXf<}7CGn%F zg;&u+F@Cs>J)C+DwKAsKG*M~g=#f@VyzxP(l^T_XT6sP!LVfv*D4n+Q9H&k*q~6ua zRHc=dqV&UU6!n&x;dHlw`+mR}W$QF>b9#*Yqn$?HdELlA&O19*7Sn(#LVM+}LxJlC zF6~mQY`P3NAY0yTw3x2+3DRMTig zJ5?B2z^O;Y&%UnWXPIZWh2aZ;+Bu!Y#FSn>8>RDep-~FAMJuBOFLxaVmFmVHWfPUY zaW+cN)S%QXOCnlfu*JvgEy~zi5^sE{SKavhlAf?eJ-YXcC`02;^Ng#lmpFp=k&W@w zZoIEo-E6&NJgmpazo%DS{``{e_-Kj^EWWL1;wtBBogF7tPA9=P7g8)ni547&GoCZh zA@0$uGmwW^S@2cfH#Fdn8yc{sW54)qV2vPDW)Vh4ikxYOX-C$6q?HssmlG+Eo|ITi zIN3SuYpwMGTKn5R%vZO6cyf$r#7;+bT^FMYuncyQ;1Kh2wK-wN?ImH3L7USsqos_z zEDIG>PBc=f+W9CGmZLMiS)!vd7Ak|MwODE4BaoHz@{FtW=3QRBBVfynNogr-eE@w< zv@LW^aHWv$34AZ<5!c0FF6+f?lfDp@GknM=NS4XLUp`Btszj?;uU?aJP8#oFF>g1h zbHNKtpvZUX=Q4;^OqHMUfI}^0{l)5~9#)wvLPl00w9MiEN=iBvq0oxO>ZE-{GZwRd zg(peqG^%^wh3}|$8MWiOT#)__Y8r)6VRu@u`+=r6%$2LOqAKZh z(*9hoTOJw$PZDgyG;85?j?PvP`2g8UfSDCzWdoX#}B^Au`elRlt3)S+n*z+>0vYdSDiI6Goq_z-FAbKt*S zeP-_}mUtrc)*n@nbV{LyTd4+>KiE%5W=@Noi*s4A6Uk?`XPon};y8j`#%Z+cyE0BH zkzeUi>WL~$s;9GlP?qA1)qtXaR8fYIJNyo<2O^zmUkLC_`d$y4{xQ|Hl%06mL>N0> zD3#ADbxpusf`?m5eA|PF`k9{>x zG@bRitn-6hYK7i${9xWK7=CF|V5shRCtrQ}BgCEG&M=r`nvR%!&9~Z_R~?-W)lx+G zJGx$1F3p+WBPX(za$P$jn_Yy~QLZ36X9h%#=~c)*tyj-!dgVk>cfgr(b}5_j1zMl* zENiIgX2S_m(-BwT;|#QfVo5CJo>f|jXJ~Z}ei`muHetM$>499mqrXI-es~ps zh1X07=)(=7{yI(tZ|rA=uJ-Yaq9NAHGZO=*nr6XTIdO+F-Xi8%fprIsTS(hLm3Aa; z$11|Dgw>jeBF9zov7L6R6ix$tF39mE_?D6z*zm%Mie|@+_n4tHPk50C8z<<`s6<_f z?vQZ%QxRpUe&23qbBRW@I-MmPdL3Z!?}hqdc-{s}mjX*h`v#uLnXEKE7jx5+(omMs zu0TW1VKe?hP{=r{^nbeJCLp~vhkbKd#!ieP_O-baWKRwoQJAro(tzef$IbK$6YEyN zQ=g-+l+Q>gWe>JySOIgymn-E><>|dXclrg?^YJP~}(QC$oi{v}eGmI2= zz9O5RW-13&Q2X{sT)G`}#)>uxK}ti>rQ}XYKrEIa@H-PE8pqKT!vyv(I%m6Fm*%0; z@=9PB=jiQ5Zix;!DM{1Z`WroQ%$v*Duocr+U{3n{B?i&pBlzGqf@hFNe5)P!_9}ig z$X8$#gyEUJ&gNW$Y$s1_tw|+}qYF}%W6q5gth1mSEfTFIyt&4iQo^<9F$UTbM{j$- z9%~6n21%Pi4P63tzWOs8ttYpyCP7>uv+kbxSPM=jUOzN+O(@IyN$-EK&}PvGzG}Vn zuw}~Pl&&wM1Ms!j>`n0(t9tMam;VQ<8(4eduV^fq%+^kLlFdy?Kp1@*H0@wZd|RlV{PJ4S5v%meC=toA9d!HjD1UIva=H^wmLk z{K?QWL&AeTJ1k&^?<4J{avk0=`<-D=Vztvw`9ika=cMn4N872ZlYN!hR=;&6j99gIGH6`Q9QdSAIb)~}5R#SOQ@`;s>t7-dtpskcQR!BbB zIZ^}b4nSw3#5>(P0hIQs;M*sr`O{QGXkGL+FRZ#!a>s8@**v}?xn%6NwADCIyv}iH zboN}YpmPSMfmOK(#hws$y*U8*X7caCAo3LE5xL>l;);xPTg!TNiH3G zo{dq9qcb)T-|ImPKlCH#MmxjFd;HNu1GQ@%jdF^kv34!xwaD!nW`^#S_>!f`4ei-V zZ9U=esHpg$%$}N^P?k_S)#&XAXTocDc&B(D-i%qvvBeXLr`Oi;HN}G5nw<*BUF(3Y z>uNxpuPGC3oQU$igI=G@iC6>u0P6ZS#+#FwllsG`#rV1-eV;{*Te@D z3UXfOVTQFu=TZbuQ|;PN+f5kPkF=$?+I(bX%LfEs!1sZ~rQM6) zzJ`&(y7!yRf?QQ*fkTzc8ddWHvSg3)M-4%^s7QLhCzQ`0IOspGhPLT+Ifo{c>WNPWBL6|pZR>v7az;vohp?|+3(oX3+4}WP#pF>3QBWUu0I^RuYOzi3Ei1_`YZ*9crAa5dm+z*Uc{9#3x5*DzeQ zxN33L;7awYaaH50!c~PUgDd$Wm2Gh(CkgO+u4NB)xhi3r?-kGm&OF`s1lTk^pzi_K zVMIArZ?p-3cu6b#?bBEUSUu+m$aaxM?#fm*H1twTM{RMq`xw5O@t^i6_u7-Rw}X$r z&+@A9N=&s|E6>HK&lk!L>~ldUhRKrj?LP4B2ZydLjn8_v_x<2na=G==SW7b2lJmi} zL=1Z=r71z!>NgDy7)1XDl{vG%4d|Bp5T7b>_~wq~iomeD*gJ^Cw)FV!$nE?Z?+SFB1UT64lF@-g1a zA2M_<``Xg*ws2K=PP{)Jk;XY#(et&hjyJ#U!M!K0G)~TQ zv22jam?ZYf9ev1AX0qwgV#`r`jK(n07q-eC>_Lt_CshuF_H4@ff%)|dYPn%zjU^I>FZP2o@-q7AO25~ud(oca^#PFR0 zr@7I*>Fwd)D!znYWi7GFPUWkk$zLi|bY4q>xprc(0<`z>kGXwkcoRzRdjK`VMRwK@C6|alBM_vo=!7qOV`igKYv=1?4Qe9~URMJwB ztHa8+4E{Jb&K%gB(qMP%ud}g?JG}P;)zDX`&$2EztZzMPcE4w4fWEswFJv9eqqX0o z_co`X^giX(i0SIRp9y|b`Ih>cXTf~g?ijEZV0CuUF1w``wto6WhDG=NMFVQgw}GBE z&dTH0a0@Q_a?MkHbMxZXSdliFr^;P<mqAxmDM|ve%rcZ zB)#9dZ#eBZ>Ns}dIffBQX3PaC8F^V9rdeO(d)1d~P9iF@rQAaJ#Nza5$XKIzq*T1n z)7dTZ;e{S&JJ=fr=h>IZA_uBycLbt}Xn)k=>olm~#~vQf*DvbBUy2U5)iL1cx5Zft zVwHVTi_5wxw!jp>2-@VPsf!GEv~NA-1Y6tk!M$ngmG40w!&=HL<@oM(d}E0%E+SZS z32%Xvb_neZhlD0SWc?T>f`;f3iT##L=gVaDwGx&?dRc}yTPM5nfB7LrMgm!l6tf> zS-C!2`j5)>{nCF^u755)s9dj?o~P^8N15;8Cxz0PNIRAEvrK#^;@e63l5!{ZRFD<- zG3}xi--F$3aDI{Ot8II}`YXu4piew&wE^C-x1v`SQ8VN^!wke<!9NROAtM9sjC(SS&*VPbgiUrk|G z!muy)lN6upHdHNf6Ayh(kMZKQLIof5ie#@oO*v+$;m%KlFXy{`6 zFNehNfl>L4vDBCx2#duz`$aB7%f8|YLtC_GPs*y^-Kr_QyP2n5rhx-MdFV01Zfd<` zx^Plf4=}1Qx7H_{C;PTT68ig_Uq%m}2an}b;m#<98z(QW`05H{q&)eV_oj=n&kk29}&(KBdFNX%=^BKwJ)^&pmO-fjwDm&e}e)v2G4(2L!WT@-ZS$&z_ z@flfZYZ3Fo>5lQ3s|Z*fp_j?@-_F_z&~wrdujp z>oU(oP7UzkMrmEVA@lbG25^7(yNsE;kTST|Ne1^iv@wwRivfeik&Im=WPbTf=akWu zl5-~=RjzZl?LFasbMJ|i$c@QIdSF{6&wX<*biam<*T1>_c)_JV$zjRssAZ_@;pF-B zPScB%`ju-w@(h!dyhi_|wUpQR#-t3nV6yVH1{u%8CkLO;Z4{EHQHh4m( zP$DAv5~Y2eNXH~sE9tW+p}Z%*F-56MUNS{_+ZQF*U*3yZ@do~e$t9vqE)XTzBZ`oD zo515T(lqSNq&7WgJ5=djf;#^>n}?w3g)zUg~e-H2m8a`K~*|D4Wq{ZokM~mZo zFEWaR3{Q@Vtn_$nQCk=@hOiA36K6zBithCWwAeirlnznQ-EqD*+~a)fWw(2tEX%+3 zrJ#l2I5!)5z`l2W!7x7d?i@K!$r;#eSPlNpam`WS@R=tgF36wbOQk2IoR`90(@PoW z^~`j~W`!5SnM6#*YRJ*#S!Dv|&jYkx!8%JQwv+C~gP1>k$8`m+9hR-|qfPelOY%G@ zO?oYlXSSO}Iq_LWuFGsyQYP7*S#J`*>}1sWq#Lb~XDxA}^hzdp2KlIeyG$9&^%peTVvEh#-_`i7!!O_U^vpp2_jI|acY-ThDA$#^Y|>NU5U%M9U}HOv__xJY ziU+?~FnbhkE>X(5$f?2`{Cxpko{=r&sMf+*+^u#5sBU*2#xvTn!B>a9y5?Ic`I@gL z;0Il*ud?$s@hSP>5kada^d0HlDk)LBnOgsP{@(}yoz|%o|yxDg=;#^#K;ucZhi&wy&r*s9YY(wk8~=o zV{uKyPOuW!@pz^}UL?{Ff+iSNS z*cb`hXGU~af~wsQEy*EK{~&i=&y0uvv(Zth-AC|@D8midFnt^EN#sYwUvqx*Vw z`Q~YInUAFuNxsd=zH1GhzQetFrV6}2?Rxjk?TzlfL%kc~{$i@=Yv}tZ?vH)V{m0Zb zi1gIlyBd3yW72-iyLiWEdFlqX??i82O!VB$YFkq5r8d<*qs@1zNLZgUk7fgZt4M zYh+3{hh7bjVqoTAx6zR1N>wQv^+d;K*7^qQVIU#c(08;q?>gT6D&^)|z=<7*VN}SNajr4odV3Yu z*U+1Hj%B7g0@u=RZYO%z1#KYN8C~xmoVFZit#QZQXq~oc)*WyIb_@{Q z+P~g9V|83BqJM{G5;Wiciq`QBLa1#UhGCAjZTERX?J@-+N9|t4L;jh1HGQN-PMm-N zYG_Sdb1T}SYg&ItTbg_GI`3-B2%JK#7#>4agX6PG$eTyn0ysd{JLN0(=D*!z6sebY zjpA;T?0iL__P7LX`5)Xaw#j`*YeIPOcR}XYcR_|`D_V0;$k2#EYv-FF^M`pZz7L$8 zn_nxhNn!kZ%!203Y`Hd~gyrV@#lfS7&e*?#) z6|}#xSMMm4ywKKFn4bxp_8Cu0P2zRcX z%F2{?*9t(b;%M!pl{2&^xv?e<(24|aTC{dJ}VJqHVBj4XqT4HfJhY8{Tj?b-VHP^=egkXr)iR`h$_yI#-3$ z`XJ448+~E%@KmX2j*f*U)cXPW=aZ%jll_J2-Dvawf&~f#PSYlo;cmys91E>)4UEDG zgk~-{(L1Q1vHETf4mI(ZTcKIfsNkaS+rt=tr5$th0?wX1#A|}*JeRMrLmqkgqtFP9 z`g>-XoOk;iqt!&U@BiQ|``7cgprDWn^?eD7xs$j; z;xPIs_e;WO>}J5b9`$r12XvK6?T9Hq(yom7GeH`q(AANZpgAS@UH=B=#bHkGP=P{Q zhxyw(Iq$%&K7Au?<&;sc3-#zEaf$Hsg&rwc-y3wD+t|)m z=(aXA^A&wqfv>g7n(y$&zD`*EbsH?28yBKZ3tmg5n_ZC5GKOdc#*JxuW}>1?*JLyH zHqqJP%VOPkc#+#xMC&i^H(0zel~no)WP)Oy$WcCg_f#zy59`khqXSIoci0AY6#4* z0wf`Bcy(00FB$+HXMZ+$+fgEe()DtRG+AVHRXQ(D{M3+vZEzL2p1;T#W-HPLoH{}e z@mg!nm5jQ6M0F|c z!+9D>iBVe~=I-;*16CwmqLu0|wB9D`y1Px^Mm;l?Hf@9#jo}*BIod-tB>a~(M5BiL zl^R~aS$6&b$nCXO7kNA>WD=U{oXv?wf=(fOTW?H|xa9@s;LoId^(mbDUdFjT$u&CK zZ-dwq(1ht!>YhFZGKRY$mbpI!v6jCBVlz?K5vq$fxf!%=bYnfWE0NErDU2&Ld?Tb2 z@!l?aZwzzy_tW=hF&MAUnc?v=ePb<<*D)KZ78;|%QH9~~8Xrcm?fHwyA1;7 zgI)9%b{EJ>61nE_1!$dfD|f&Iq@Lqlu$sDd77Azy|R{P@S&!e-7UI65~AC)Pqv^bp3W zQ1_~-#Pmw?kx7}8w@7PaQ(bG5Gf2N3lGYC(X`4+pDM;@{dd$RX<;h0XA16Zh0{Jg8 zuO`i>)IkZ)^-2qWm=t_}z3LCmbxAvwa_d$54z>;iYub*I2An$K?hrGnFQ`AS+R@xR zdB2i|hI;bUQ10u8+mrj1l774ui&G(b%Z4f~D0mv0njgYVP*Y0txJ@7$o?SbmrJqOlqt35EEPHt*f zJ*YOToBI8;A)mu}*g2BV38K2`xkQgNwG5iJx}CMPnT6smS7AeaW;VF>O|JP3&m%8g zEChwlYOrQLBEI9=;#%N4oYB8yk85Kh?^`ZfU98J0t%Vi*NsRrpw`y_bhxJb0_g1aQ z$%PqN?NMr*t1!{%S|oFq_rQ94>)m)B01lnEudw-4Y}r#!IQifQkHSX z%4mJePDj8rsig^8P0)~z8tObWG~{S!SvDN{@ehG#3h!$kJlUz$eB0N29&%{oL>a66 zpv_cz9ksRh3}yP*6EPshx8YzOjSut#_U3CI!FfeOM_Uy70FMLzfA_)9#(b;LR7idYzBAIA!-KZ&|0#$z z5Jb=28=@x$ZICeB2GK$WdgK=*q7EE-3|FNb4SYdzurX z;#Wm>r^4X>KDQP8$7pp;TRdZOO(5$VMg<*M6~?(5CwQW$Y64Fa8a-eQ;mm&@0~_ok z7zivgmG%t7%QJ$3QNTbNms{{E2;!3+dV<;-Qz=^_Y9Cv)jz!FeeC@exHmVT#ZDZkg zXXsdPwr9h(K`h$LitsQrNR|p2jvkbmz3-EF+D#nce!{y(;F$9%i7whf#+pjy^cwWDD7xHbw3+aVGO-&ZG*xHNHi1t3V6S?AffWcEk9)53AUQY@9<4+Gxd#Du7Iy?MfNUYy+Qo zBGIiqGz(DC{m;SSzf0?YU97JlIJ=^!s*h~uV3+bywpHOCBSz-qOQ78@HqnRC)BGlz zr+&qFZRSxF{g}Ttbug38>W_cird4S%%c`VI$ABwSWPek@V&?aEsNo|C^KE<(ilO=T zAvD8Wz|e2IRy2W+56!v%Ng9P#no4mVb}y<=n0IT=f$F=KiK@(|1F%FhC87@wnq}(0 zHOpo@x@eZEm02b|r_8b$G|Mzmm|wG`=PHyL)*wnNR+AQ6ijP6`WSd(1;FEFzx6u}5 zi!oFwZ%uToTGlr-s~IT)Gm#6ZVom)4=wjDnHU@ZIf7jP$qF0`3@f-95e z#M~h6vL=y*DhczO0{F_=bnY;t0&hANJW?2Vpyy=wxg*TONvm8duyZ~!_@vA0daFGu zBH#7MA`hY2Db9uwE0g0%!|C9*^ifUW4IjVtv0P6xSjYG?)J((N9Umu#w?~Cx-LM>SjlXSW zj>v}H+h*P;5RL@bFX(ZA6C9x1ulhQczRP;_SB^aur z*GkjDK_+0)U9>9`l4-0U3bBXPRu<6-x3ADL~pxR1jH#Je8Y`q*;mMRSr|qQEta z#sQ=7gj{gP{SOg`XP9D#U<@wl7=0g9bprTwqp<70!KZ^Nn@Wl6zXzZGwOJ0Sf&R9Y z1N6ERZ~phWwcDr-#)NoVQ|Ue0LH)(bLAwRV4cadh8iF(ftHF~}waFxnvoIippq7E3 z(mWu#7~CIBfc$>^Bq`0!$*xVL1xEYsfXgXm+M#nsdiT&ID>qlU!-G2a-jtaG(76x4 zLN;0ZpmBfdtic2icp-iJ3~2Q0T@yxh?zz9Mb5FWdCspRkpuVhgdLFGx!#4h!(e)?C zWTXh?(D{d!^KH6pj`RQ|+jG;KbJ^T*xjnsAxhue3telr#hr3y1sh<1r7V444=f_`d z<5~Pw`{w4H#wz~?c};_^OVB6Tx1dAUy2S&_%+tF(q)(UQEM~WOw$< zL7ne+su|g32b#^;N(Wh8%kD8Rh%o@|ZK@TE_)# z8Sd66gI$H@;cTZp*Wf^$Au4lnj0F&1gZB@8bVskhn?e0d%nq09GU}C7tnAJ}Z!h0q z)LT}>RMOs}$+mOHV!+f1N+H0T6>f$i+cKua=3FBjm?LGkxovL!` zLSK)8w*sv4^yQfY^lbq;+mJhbMbNri_YPKEv>#gO^f=-F5O@;as)m;Q2*yB8SVww! z`I?6yl@6;UOD*UlPaDRle9h9W@DU&ZzGc^SrUkGWAe&vX8QAI_CF&iShAP-+l6A8t zXzwuW2O_OmD9;Vg@nA$}DW`DOD~E>ch*2;hN02?0%P&GF(q|i&X%kxB$^pdXm12g0 z>?use*uUk3pExQuZ%%1_KxE+)KGVy3?Ows_^t!zsZ>zT*d9a_a&l81uK!Ey9{UAKK ze-rE#%JY8W4sTkS?i5FP>w15{wBmOLKfm|K_=0V-LHW}Co8y&hd^RUKOT*vwl*X1m zoGrZj&!s;oeY*4~rG+KoC9x$Br#+rFzx4IeooVT5PnPa4Z4$k^m+$_0NmI!WN}ewH zNl8J;>m@r&_HUk$X!nNKd%UsUhedmRp0~;S6YuNZo!l<_HF%SWwrH-=MqZrTWWcqLbfD zn`~ObBPDLlgXyq0&b9b0i1E}sRMHuy3iFQ|%D;Gk$%hBcUt<0}7&^U;^VkiroAuRR z)JMUd0WGo2AMmXVJ&pE|7YGhkTty6D3(q9ZKrZJD1UMDqKPsgoTE}_pyruTvN-WOG zT#mOIYf3oO68s$<}lXA}t~w2zG?<2+TZg``65i*~02adSU-n z+l-SWZq;c2XqY*q`aXuv6pQg#pUs&qW;T0Tc0xr$=`@qKY%JNcW?EOl-;DgDOjxGm z(ma`|v}$JS1Er(!mI%v!Hrv<(3$l1iJe&OpKLfECRF|)rG?xbB)HkoiX`nf2TzCKF z-$RmxaCvygm;U=z;~iV#r^zcTk}Jk;9=~~-7?0De@v!b2Uy*9^cECc9zU?*~TnStE zpmlj=56%}?jfdqntjkNsZgZ}-!n&O0oOEVYCLFNClN9Gp1GlQfsg!QQ#)j4`x(mY@ z+M5k|;F}ejc|0>DjQ0g#wLW|wX|ML>A>ZszQ*7v?rd*P-?H-0L_7~d$*JIdkoFv%V zGoXn$Jug8>mCvpgwq=O%0X>(|1-~uk%CgaN-70#rBxt1xUoWMrQeY9EPzsB91#)U- zzS9^b+P)j}Dxz^J+TGwP)612WOP)pRfb64~nt*q$9HP=<<;Il8tSvwCFuHPB<)|A> zqQ<{ei#yr5M6<-=$cG(|?0;0tba1ix=eXG2I)&=;MDs16x<#rOk6jQ7$s28qpgB?f zQ-%AJUQPcU2rvXAeT*U`UgsD^P5aL89AKA>f&;; zOf}HBj1%oWm|Zx3)0$qDxVCsLz`=t?f>Ol zSa0Qawo2*ia^V$ueNKjw{)yPUG398T#7kT|bkWXn3|stU@wj5Pc(&nHHn{^e>#EtR z99jz&f+o=1wzGoa)na=i%O)@0pJT{znx-$VzlPIL#Y2dn%A@oXRN7cwjCfzT`=M`Z zb6!rCIa%J8QwNA`RN(b0)+pnldh!yAGT$fKftv9JP!Ic3eCJp8LnhY3Y7U+Tw4y}T zk?&%$e||&a5uIthx=P%s_~%N+N~r3ErTgVi&RW1bsrq~4$Ulkdi&npmuGm>KYU)jX zn>KcLPFBuC-8d2ACoM+LZnZzC=PaWKJoR8q4$CV&km7OoEnj|v$2>`XGuVD9p4ND3 zzptJRwtp1$m@NxJs2J2lUI{x0deCX`yX@+GLxJhS^e)=6Jp&e)t7$D?xVCbo^W!XwZo z;T&BhUClz1@cnU*+G0A6G6uJ{MVk}u4nINff|>`?8f!?(6Kr1&t!(MBSpkXr!yCpRpACmjalLwwKY!IR$^}pp22pr+(SGh zPQBEPzVfx5dcftWIKq~3a?h3@^OZa6+eR_@;B~cRtI_*gmDC9fJLvZcZ8+=qJ8iJm zgNIs1{y1kJ*5OpS1T*xX`ID1=b@q}G~>Nb?}IcbmLGu^RAv5AJCvc+eLi3gH$0>v!&Y+4)UhU&3y z@xY>6EiXySOWUYmw2+gYQ)#Fv=0Qmmp1nB!-&=Qii27rXH4Z(R^(ID2b}KDItIv!( za}T~dIJblQlpt@Ka8lu;Rh8HkF`T5s9<50+!(s53qXOb;zetZUOO#+tJ4t0m@)^1Uv^&Wh#nw|S5l-ARH`v*Ubx01tcf$h`3AD%z( zRj)z!)j-@R|8f&EjHwEqo;*2*W*Xw)yozYlj8G08nFNtn-qvmL{ChL)cDAfF)a)X= zM_9-Mw*k9<*gNu#aQVkSbqk2+O8X{ygLXmGj^&wT3;9^ROAi}~b*^zZ=@u*%k;zhA zk1kx>76VJ%TK}VDi5rB^a%{%2qZ8}-W}SPU`) zQTfb8P0Y9WN}ZQMq+|37@ef?{cxV|YcS*XMm`aOR`yLI9EtEXYF zyASrd`(UrT9A4YR%O5amIbT|ic?XZE@SUS?_=rzw*sB%KtD>33`w)A*kEDveu22pq z&4Ulfs%sYzbsbdJm*@}ErC(I3(_GE~oO%7h4enA8YZ5=~O_?@5WR`KT=k1G3KH5LO z&$sg4y-Bi5&zGk7SO)*-Y&)oXg0k4xL-U~&Y5jMw7>x^NA2HEtiT=>KoV>!OxMhV{%NrC(UZpg&WU)E~`3@!A=OCbucP>n5W}|_S4UFs8oiVpUdjT zTz-1vlYl0CoVIZok>88V%}de!e&9^QGn5}Qeevs|XL@=D+b%rwt?vxeNf$YFM&DV6 zX=gPV*WuR(IIQ}^0=&hzvc=KR8^eh}x9b04?_J=Vs54Ek%75X~)hC zxlN=?XQlc1tp{SR^Y>ft1?;!?TUWww{g_U9S_$YSzxBtM-#XsFZ=L>C{v_tOw%_{5 zbH~)(y?{!QMt;3;iwg7b$H zie56NFKZy<@GS`a+Gf&BY2H^pb@Zvgr#?R{%pF4POq`{pSPK-*5*DV*?_1i#m@T!!3aI~%Zxs?Cq6R(bc7kd4z@f+$(g zpwuCARj?q^=@dgV?VO%U<4h&0Cz`Q>f9HwA#)K!17*CW z79-Z-gl&)I5BqtsKiuAn{or)+Vm~^ayx1Gy#ZDgVu`}4>Oz$!;_IKgMeh^X%UhF+4JPh0Rv+!c?k;l$AZp9hLYFvwP zZKm1S^1P)I=OgQ}=Q07F>;y}4=sJtT@}=b`%UhwVOwYzoM6|Lf!`VP#ts<^8&tbN0 z#B6)OY}#}*NT%Gu;Z$X{R<$sQT38s4UyIop(#6c5y_eyU+C8LK-ho&S9c-QC(+>MA z>G?R1St;TTzS+U&2{O~$T8-uHz=eoI46UoaDi~jwfyd1D;FU*lmJL4b%Pr>M<%%Vi zg_ajAv6dmB%R;Mlt29f!mCUz&fH%R2lg-S#y&B%fJgjf|^@}ta*=x?L0}SYYm3Eb4 zg=(dIDfao6>#9v=%a`>}sa^uUhA6jFoBMASJi0$R>F3dX6K1mOdUWp_D|j{sS2KU^ ztv-M5t#r~}^yl8+lB`?RO1{mFR~GEZhbQ-*77LxzzqE~=*54|}X?+Fxp_*XT-U_aa z#c6#GUNrk!lEYSFUofE&C2JR$Rc-#Apd~We=d=I89qu8M-of1x}PF z5#2K3Ob#$`2|nE!%B`W~)2(Gb-2*~b zjztt)oCI0%%PGyO0~+$y?va4Fp?!Sb+RY;`oz=jnJ9>Y{^RIn$=>|UCpMbOA)7`y> z`E=vF`M#MOUfY-P{DysZ_E<1@f2#^>9W(iL?|tdH4SOHQeWt*Dx@y%*#R}7M`O@Ik zCi0!xY8po042EukU3kz@$qi<{lI=Ky_(R|d1)^k;1dzpxzTFp@Z#Q8WB~K+>Sp@!2 zxA}ID)iAG;WZ2#X-)@Y0<<>Ue?y)q!rWu1FA3}*YEU_35JN-wBFixJ^;C-Re1Gm?zCX!fs}R?BaKq&* ziyKYa?0^Ld;Zt(sY{QhzpQ_W~)Pn6Jd{Uh8%68?8rGVh-)zJ9f*4*A*KfI8e>=KoVH z_G&rtu+Xbhsw29J$r40y^cp z`3+5w68FAeEcS-H^uZ5o6kv>49W>1(+k5^HkZ3k)VkZ^pyTsHJl6ED;*!ujmSQsmE$869{h0 z9Gr{)L4=->(1#0{|gJN*&RCI36 zJB_Rmv`=7(GF9S~(ND_dFKz&)mP6aIo2DAI7N-SvP1B_KuTJ-?;w)<{vrt1StEWh) z$CBnXnQk)L<)utivN!jSl z*L?u$Y=rGxjeHwTBO($GxLM17xPx!YMr|L9gDf~y+oZ$Z@umU#1Xw|5@;qz-CeDtz zEA`T4<;$0+DcAA+;Op|Tcl6|;@rS)pYCy+6?l!&@S`)lZi)gZ1W$@aV zAl+r{+WeI`v(OTQ??5P4>Mmnuo$gHt85*`1@t8mL*2DzC^KO>%FW`%(kv0u@vz>=k z!*X1=)HEwxj_zP!XMtPmp9)-Od0w$XyGp)PwbEoZEoX8dkVVK~@>!e+%}N6YEXviv&Q!N(HRh`%7jd0{$E!|^K%$ZwLx zUl3kHvEkWv!k(fJtK@A7EiVgU%p% z3j1a>6TEx^-lM#x1j=bx2;D)Acdru%;B2P9*5L7J4fs|v=_|X>`*en4D@;xoD+B znhbQ9j*`ozWO@!b_*|+F_B5B0bVKrJsSVU4ZUfsLBCGjL_ttEYMV z6fPk?Ll;!*uzun8w8d1ZJMJ6Ls5xvE)!iVD=Q@>0!|-1>p1lj&Jpae4!(dH?$IXHN z_OZO=f81Cu`A?5!quvr+*T{+$`Rl@aMxHirZFxM8-gUiH2aB?|3H2lmt0fw zkCb9V_&CJ3l9D*&BmKX}A$x1ubI4vjz5arWG^>;UOa>B>uW?jHV>=s`}WPIh? z{NT&2`2CLT7kIn`!1L@8%P*F-h#2v>X-H^aO9s415npr1VFSKAksTbT#pM|h!NFTD+0Fb*3b(z z{Dal77FJt|7~zkZyLQ$PX43X|ff*rg1RI-D+=#Ol!S;D}8swXVu`IN(xC@NkFJkQD zUxl%usKvo*8K8)Ow=SJu7wMLn8AlO1suu<=?0Zd&--Yt&tbFvXYD=_4w~UFV*nfj= zeNan(ss)@ZtZJ(lhAvb#;;TECM=23+OZGKe)jlr!CtEcO)`{TV6!W$^?St!3wmbF- z(rBN6Y{zG(33|j|y?%H^R95+MY8!REY%0+wc*oOt!rM}+-Oy~>i{49IgRdMe>~l?Q z*iovEVWWr-&sPGMH$e|dCt5R1$`|UcS@vF(-AH9`ReBS$;>M)fM>M737 zj)SJhFjEWs+;>N@kDmh;wjX8e92~QV--0M?D2<-wr=N?HBg#&tG@{bqmU>70jGkf4 zi%|BoBygmIn+l zwD950>h7v0#DY1!^J;@`MZRjM&Zt(dQPqSl!D-0gEl*l*?iJk1h3jxiO?M(VzF`2K)Y?S10dh=~o`~{nvO>pAD7;Z@#%z9i}tkUmT}a*W+ut9>A9KPl835RKDE_%dwQ_2X+x_}Vp% z!@|>t;%Q&QEPMel^z?LoZh$Uhqk77}MY*YjsAwdEyF{IhwvF>NV>ST{Ey2-zjZ2M=pZB zFmOB0TCBs)<1;8ZEO_0?&+8VUM}6?sfzd*71JL`!1h04LzX>F*Rv5S@0H0)n;K2gT9dyVB@O-&fyHux%rYF zgLel{XhV2YB7Gqn?agY{|DrSYIk8JI5b@E2#?CXUTKkNoFJRg0i<7J;^o3>hjz2wr zqR+@r@XlIayyvwO`bE>~9gj!h-TQbqMYArfI-GnKCf66wyL>`#`AfYcxhGOT#k=uz z8df|Tn=9ta#aLNsREuvdUN5r{W%=dIy7&esn@~g?Xw;8QtBuN9Kp1IM$`ep$a?4gk zVLq=3yZ8qDN$@2atSQ3G)x1ul^QKx%MvlH`J=tiQC3gj-gObjvYVG;8A{QQ=!8rkIw)!K`%s}+|otkJe?Rdc3&`NQfC zLZ%1i52%$P8sXmjOz*V(N#6CwzLu}*qKthkU&5bMWel_I8F|5osDqXjmLr-aaZ#3& zbt4*y#;LNBBm<2jIK-W?|eviX-yRb(^vhLjCnSIyKGhABK*SP}wiw!y& z+08TiG5*iZ|F&SkBJG)@oWfay^SKM)^;83W^Ks5}?sKmqYfqzEJ_w^r-=GLnu3K)99D~|);$bQ0C za}Wyz=f2?&hE;BBAJgp(J2@HUGhDFPkXLP5F2O743ATK~bydLmysCimD1jbjUQ3aD zIh*wy)GErsiyE~>;HgL~AJwXF^_rg31zMiVSJZ_NMp&LO@cIIwcp5k7XQ=yLg5txIXmuDpwaXy9rIU;7&^MIj3fEt?l2 z|9HR=iuhG%opfRR>iyv~yiYS7#%wxPQNyh;9oqSVX;*$P$hq6h9(WI!&VO+EBX62{ z^;vbuV9HU~EQ}Sxbs5HxfNy~wL-M2oWc@4(ld$=ggZ_uZKgch)T0&Y5|De6xIx(bW8{(d1h6Y(wmdsGj$RwUjWm4&vn=;@Hf^P;2 zJ`?b@$Z8Jko*o(zsE;;KNbo2=v1^(-LouYOM*g zl9={}emQYJX2iP+YUq4J9U>srhA7s`R~sj?(y!>3>V;ZgLhpN^Z*s+Q(+Q(`@>ixu zEi*0Y-WJtTQ;}l1p~+G-P;Yuvv&X2y8I5#m5&qh*=LZt3@R$`~T?LxXf>kz7wXQay zm{FQrQJkS)aU8J>3?~d(8^|+msb;OQFKd61CE1i{?1MNAGW~MQ#E&8>P=Cv}Vow(W zm)@%fnQ!XDsx_7pg+Q-I^h+v1C!8z@_ZExr->+X8ypDPJcuf0FHRx2{kBM`<>rMS( zX&SPFBbx~Ncst_zI6%8cLu*X?^l7y$SM7T3YEyrP_gjHm0XCart$rDxEkr40t@+eu z>^p~0UEXI5jfmV!v$IyH-D@6LquKL*rJ+&d-3_JGw8r#PXyQ)z{Q78-Yf8h1>=V38 zbZzf)ELq;;rc7U+4Aojh0F$Vf3S6#3Ot5vk*BbR$k3Xtfrd_UEsaVSqpO1>sYWB&o zL&Aym8Jh5Rh`#zjkZPqd2;U;gyc6HkpVplt=;nNLCBkrYb#9);WJOt zW`RiM#oHFtCJbBySu>BkMi0P0dh6Gm0gT$c!|}BQhgFj7{R8v%`H5^%Es;F$UH(i$04tIrr$XzVl8K;(@fh9(YxZ zm@?KWM9>KDB3cVPte-kuM!OT`tnKbb@}EmHs+gA@zPL?(cH}qQ@tpI`b0l9z`o^e# zgbKm$*XnIs^QO%STif-DmlM8mOL1C$?fRJ4*VIQK%C)+eE+4uIBImrr=}2?et-(9h zvA$Qii|=sFl)~O9j`eM%H?6)m@?(9y^yU|OldqaO`P4S()i9bYp8Ac)K*08)*;S;E+5~?5#YIa*sDSr z_~8*O=kXSASY&PXrd50+M;exL!b9!fljqpxuc_-j%%R6$}VYzMyVsbPcma}iruBcoIt`b(Zn$?4` zvJGF|f3*_p!RncPoHgYMjp~3q7ik*R>PR7O!gm{4xs{b|E8;$WE8-P1Ns4WW(-KH{6n>_%@UT`y1UvWDw?oLoAG3tKwjOb3 zoAtDYyv3yV9yH-yW)rJklIDr`i>x3#Kqjx&KU2ODz=dFxL z0Cie+z5oi?f@_Suus4RU?;`F^Kh%G_Grc5v_1%W8XLnt_+i(8}YYrS-oqjmpNYO_WMnus8ZSu)pWy^=p{;D~t=jCC6hNiG(`sE7c zoPN$IZvr9>SLz1CHhx7#n1nB~eg(l8x(45Mf636I7;@k%x+g7sW!MVckOoz6%L!#~3w-S@B~f#dJfr6HI~u@s)7^7%yPCdVJQxbJe-0x1nDu%d44VKUoSmW+YTMo{z<3jOGW1QoG z@8MBc#mZ&n>MajJ+tt+v2ADU+fBU6Z$H|WdbFhJJc``z_S@s>UY}lg&&Q0ni!OI`Z zSJobM$x+MG#=y;?H_56W{uUOsSB&-8PdW-ezs-SL9^LYgVb3dZ)l0v_I}P53>y#t* zZ&)HXd}#Qx<3wTXg9t+Df{!!N%%}=Q z)Dy(JN`}{WgDa>>D{#Phtvu^|P(aGX&tThoR3CUk+e-({FDMkTmbW~rO4twGsP>>U zN;jxB#o150&OjcoT4x5n#d==9%%=;f#hFH>Ty-4&B8II`rJYu&BPn`A+dM~ff~VrD z@a1O^vC3P`>oc&o9dIYp^?CjB4XHcI{j6>``N^1NMUfaCA0yV`Y$juR{|PHW{fgBp zZ-R22e#NObAdPE%`Ws@O=$B!hUJh7;*Wc^)&J4&8*k7x``iPZQEz+(I*gr`n#(p?g z#pYvX%c413n6Lkhc?TZ#t$pC{PTuc`ICK%R=ECuwm}g{&9TCE{;CG`o>=pweWqlEF z;iN7CI_Hr?w_f~-5B~Y*MzUkYwHID{L-XSCL?ZT@_CgqwMnhaP<1;W$Yo3pg0FX&*Rp=@(A+iac4OFK$QXT1y;9x#d6Tas%p3-;n zMiu+Di0U9%!ZLN~)O+ue{Gc5V5e9bPtJ^!K?SQ3ohq11C@-Rc|nRgUk#3x`Qm2QGCMkkgMd_g#uvlj98A|E!ipNP_dK;X2>Vz(w@|-)N>xLW|#-QE( zBGw+miEg9j@NFY6kGzEMzRto|HAMW-TTm>Bam*q4r$u@$G8tq zeq^c-Uw15`ihJ+t_rBC6o(<~Bd6$N-3SAq#I&770O>oU=q&0O558LzrXg+Dv{qJo* zs|*j@Y1%aJ-0_|hHdVg&7WH~(V{rdkz9BG#C;acO1CDZlyOc(yChe?Jldeh24=%Vl zB2Cw~NiEAHntAJY|FI!hq*AaZCxTH)+Z$Xk zk{x&PP1)7pAqCN);Dzr$s;ZZuz`2fm`c| zA93QZH@@%t?w(2b&WT8yUshg?ZBH9`s=55>Vq~Kc^J3WRo7fm^Jcsr3>n{>D5Tm%i zw^5?Tj&Yr-q0_(*EfXWK*AA0_;TBpC=A6D6W9?l9A0guR^}U2S#8U=8dyUk`*FPX! zBbpuTYSim_eZ1SwBei84sIU!GK&nxr z6QW5QC&TIoud%`2Bv4jUS8Q;c1y7J4nfF!X%t2jg=hYamYE7mNU+Tv1oUoj5oa&^v z#HHS)5x>Xj{I@xoca-7M#qIK|lUt_*P0<{d*B1v|#rq({OuniEjxW9y@JoFEf{bKzC1;f_QE4XKJYwOLF)`~R5I=d-f)rzPMc+%$wT>zxDmVVv( z1?La*K9e8e9f;a)655z*m^wTxp$U2Esb9Cln*81c+I;neZ5&4>khAqSw9|d+En+({ zQ%8#J;7M#J!mpj~Q(G|(U|-~eNeaD4Qs{vf@Bhd4qy0u+-Sh?KrhUXsm@{4{x%47Q zrFkz_{^PBqeUSb+(!V3#Mf$54W%snoS|QJx1HxrLeYs=$Cm`t;#rYGrbBpe*uO zpfdSHKri_Xf2)+Hqv~!Z$|qM$4%}crd9>#b8*GyYp_Y_m3Zw=i6}3?+)%fGlp5Gsr zqvrp5NeyZZLajl{QF8fY`l4low|c#6@;Scu29lItZCLBgf9`QSefZp>eA2iU)rVf? zj)!tpQmaQX4+G{jF0fI?rA=11d{QgRS4@sPuj(SPaypXfn?$)EO#7c0P~PmaQ0zTQL@qYSgHDZ=k-M*s!R!-v*-Tmm4Y}cNFh8 zp7pEgtOBz$)s)_-P^YQFz1tf7YQnp8qe>ONVZoW7LXK}(c;Lf!l0NUWGK4?cO*874 zQk|tAb*!5v3DVe1QXiT_mOca0J=4h5=2N~FSfXf$#A`tw6Qv{nC}RL}oAqXz2aG{} z_)Z0Xq)PbK1~zshd?TI+FwPD7F0d!JbCxuFL#AFGdD*C;J7LRPEu@@)bQRv7`AOGn zf8$Ryizj!xy5Ef7yY}n$&pH&>cNHI_TNk<_?CJ1j;VbdADRVgOP)}@xZ1Wz3TuNrTk!ndiO_QHKsiS+!mrI*g(sh7LV< z$Ul`PgY^4wTESmA zs}98%z7U;fk@D_>M9d>B@{o60E9}I_0%fUTPixmktfBl^k&mU5quo`ybDJM9w+xI%b323%_xc4mP zffH(VN|Rchc`R6y1e<{wJL01ngEeWG8!|L$;Tes}a2;$Wx?{@jit}h)wf4s!LIRF! zhGF9u2YGs;+AX#by<`bGh8iKK3&G6VL1Lb6zOrj!o zvC|u58uLY*vz74jT|jpZUpmv_j6=@FZ$pB@N1%PBJ}8{vxT7f;wjHeVDA&1fL)6HX zc`X{#yteae?XZh)2gyzyKB@e0sPgWM+k<339zGecXM6aFi$_ideY6P2DE@ zm^fKz6({4poGiAA+X!3Y|G)m+cBgHey}V=|z@B0E6xggDYk{Y*yr8huR!}&dy>n4| zL2;SeQ!ssAfzw)QrxYQ-kmfG5It!e3&)hQCEH_J}x`Z@`t&)<2BAgpf&ZAr0;OPzz9yHV!V`XF|kGoh;I+fzfDm;8y5%01( zXV?>YmXo!To131T80n^h?Dsgl5G!K8Q*x5>{D0@#t**ji2OujdbMZvEMBY(8oVCe_ zIlQgz4#Z95Q;FJQAsS=DBi&MA0KnRF6y<`)D%{j70r9N$EQi~}CzX|!TAemGUsO?2 zax3fWxRj)n^m`HbeVjQbH#A<7IpWuHiF~^{a>_iw zAt3}~h}FRp7BvF=zziW$Y%>KpKs_|XmlNsTzJ8K0Gn3#DAQ1EC_Abl^gOy z$iwg~{^S|c`oE_U?)MwiaC!I~LGJOn7{LB;*URIIy`M~rl<0@vboN-_kQil_eFETo6bp^pCjQ=_pD>{*t+vO{~B<8|7{MDR816{VkaEAX@~^_2D1CG4k0M z<2_|ODnhH$>`3D(Nk9oDit{UQfcFw}jmd1oA*2;wVt2L^XTGr@h%p~dXjsv3M?GaO z&|&!S5!|rh!=?1`&RI_2n++;q;GrUsR@D0>n!-rRVFKez-4J+!oFI_7N|9yN7qif?=Z~ZP5aAO<@Rg6JA{4TZyAl3rNj-$_vY5 zBFm@5_@pB6?UuPL zoim2xCZyzY$q*?#Q$~bw6m#7_X*`f*Ac<30R$5+S2ZOVL#duhh9_}`Y#L^1ODoQYy zp$udxp!C@3fuB*~AU@!&E|+y4A@lnA1bnl0fUg*Fj7-4;`$hi<)a}j%aas-)(j4wT zr&n=>CAeyE{a(C3Dc)`3y%_h$aaCGLkszgmGyo^Zk=6qd>Vk@cxxTb)jy=adSCAmY z)|{0xxa@^mtHvfE(lYV(wd23;z zyBA$-3B?lM=aljHVq(N}BnUy8IK)!YxW~wl>Y)m# zJ|KY28GK2n7xp3&&pcF5y8FhlG(GudVmnw}gifketjt%&2V1(0=^j#kp-uFH^>KQI zAhYbwcI{DvlQ51F!JnPDt{jC>-hb{C@-hrUj6_9?gP-AwwZmpu0Cm{=g#ee~x1v-F-=DHltmYIZ>R7Ql0`pXX=&gYEJ%4!>1?Xkdj z=)Tb29g*%kB>Y&cOb8J{c#&EHc)YEGS_H6+WKw>qpVY|`yVXfTjBzj+)W5GuC1q}! z`x*7b-q5)7>j>++l#fyOI{8vvc01KqZk<OZp#Y9N;i2|MT7Xhh!Da4eE1S{(^ z6e~X6iG`qtaiO3jcAkvd)fEF~a5(2MK~ah&X~(ww)16(6E&p^Rga4>|?ct?7T?|zL zc;EQ%T<)4Tz0E%9$(?MqkdnznCRHVj2Rc}n^Ni72b-Cu!j4?u0XNs|qcB!{bxooHf+-)| zE~H$GFG#XTB1{lTzB)#wq>dSv!jDSNN%l!-Nz4l-C7kjo8J6%>jyWM}vZ6mqZjFDzx)<>o+iHaFtKAa|19^$xtbw0Tu4(xKKF0t~WeGC(m zU(KR!1|}kf5TgnfHpxB)05MK{`lIyhryI8EgMvN@T`|?+a(e`I5@khw(PnphTxIj1 zwSxAd9!l+ux0RFX&N-MkZ>KhLnDv<&YKQ(vaEYUxX_-_uuTUu4R%ZbNxYL{uxT!o% zcGNl2dr`O9X`>07HBYuUW|0u<95v5l=V<2f2+5T0pTuE(QkZRb&9GO))%bMquVW9z;BsFGd*dzjAa-71N5%3}CCjwz2v4Wv=$|h1)P8_=YB!YH|M$Kr=1Q8a&ITfYT?Jf;RoddNQp)FPq ztisN`dF7HNm*Xt1vN=}35f?vj(A|UYNf=@TOb(|#53+*bD=RAElI_zgX7FQDQ_*@k z44af7yi?nqjGYt3r839eYj;g2eYs;oaz$x5-#I&H8G|)(7YSmUIn-eZ2Mmm1Zdk#f zxQ^h5mDuOlOGcpM!W+^p9i9QO%fPBv?!Y<~+6fdkn9m0AbFD6?M$Jm_Fe@4PDD*6P z03U}3C+_il6j+x)kJhNmT);SMjdj;h<}@HT!#y=YctHas&p=PWhZg7^wLy0nBRJMy z=wv(?2cv))8>D^!6&CRS^$CZ1oMlez+7PZ`7oib#Uy21fz&xtV#{(X`;D^!n5Jnjv zWsDgZ4b;#}hZEzo68Pb%KVU|BNp(_3q`LUh3K+tnk=ETR|6Kh0;;(`>T62gTqwHC6afZa`{isuUJ0?Ecz z;&9Gl3KQAA0E?sCmky%~`fc}=THUk2v~Ko$2CM{gt@G$Nflm3sgmzbvwGaz4H?w|H zf~^+nsXx% zMHqoRQC9|-9oq8EAwqYqm$eNH9~^cMcCz?MaWU~wFRj+t>C>mj78Vx9+H4HXTrM~O zxR#m+D!>*Z?O;o#v^a^F;_rCrx7b%O5p5Ci!)W)5HUmiViD`35kb*#NhmFYPGYK={ zh^}1MXe`!Y^Q(jLNr!Sa8gh0lfBfyuVp&HylpySo63+ktkz4U3@@WiSvpRViNVLl( z=BKg8M*$ZCgYwB~Nfs0-HD#ZSsJU__@Lc246Y@o5<35fE=ME5@le!YBWljY@qFo0azEo zZiK0XhBbrNmxf>LxdQruh#5O$vfCovw`pKcon3+HizFr!3D^|?7BH`|jTH?yoo$}A z@uUb3wyZ^&LQqwdGev@S@2RZV3@3N%7Oi07!0$HP zm*bcLQIX8CK9Ul4$u!1rn&h);+Q9IIj8Zo2dllLT2&+-i&Xq2jZQ5#qM%g|Km&*1z zXt1+h5Yc_KWjm&5F)lVP7Agkt#J0UFgcA`QC&xSP&3+t?oZ!1#92e!pR&6x&Zex69 z%(ebOk;syYSig%SsQ?JduzdmYN0nMDAyP5OFupnB4r+#{y=s!Qwo#=#{WjZT(qKHn zBgbYv4A4T?ymC@A00Q3SWu{x&zvQEmlCnF#<9UKNpDKzhr1_inBe3gC{D!_uID|?& z!&3~HY_Zb+9JPRA9Mwv9OvN;=3QO70qP>R_P=^kSu<=IhSb$|5GuR^^J7nTN{_qak z5l&uUEaJJ;ZgW_r#haa-UJ>O^Qg))G{7MEsruWnPHo@Ss&mgmmi)WScel{`6=cBSP z&-#@Y_bl5cfR1UR-Vcop1I;Ngn_nKu9SG1cxLLiPveM`pRI!_lX4m_u@-Z zS_p6c4f@Kq_4k_XQQ3CwF_%IO_bjuUOwUA3LX6a7Y`9`#Agv2L$yAQmSOZp+hTJi! zdH0#er4*!&GiRsVH)dR>Ava~*z3E9QxrVI!(k%wstB#3_9T*$W@)yGPW1z_+7UP)i z1!YVeU|oP8F(ZUu?gEJ30t{#VE-WDK;)S>D#jxRQdM_Ab$x9!TlUtCLlH*?w4vS&u z>l&2}>s+*5S&xeZEv-=i3xBJyvjfEV!CBBQPs|8xLldl0X3h2TcI;bcaKJSFZMln~ z$zH27gqg08(E(l(*VnFMP?uG(Gjv$lxt(|5L<|{PMYsxKLC0}3Q4dHYDeNec`hJZ( zUE#80J(MSA1b6|M6fH04hJcH%^GbO4|4bq81 zB2I<0c2L7uPN;V~?zfi}MRmYTG?t5`RJR*-w7<^E2+&I0?ZEsAv*B-&4^B6U2aZ-l z(o#z}Eys=^_`ff<(jf*OS_CZ^u`EUbW=CMSk=EdlS+qnbci;>q>SeV+kog_MW2!6E zPOd^cghFQuJxsTUFo&rg6Bh&v^kX``L5nBkjW;I54!$QgK0clPdZ_b5C$-cmsp`GaF9E`H?&s(gC^b!Ru^lDyNpaP(!lvG z{UFGR8Ka7&>Z1An{ju6?`xym-%)lAIQm9Wj*j55Yar0(NI;prE3LE(x%p`@=V@9wkfsme*H6}L&n)I*9o0XoM z2bJ|#<;_daPKmkC%nng^sM`Y;Zi4}mrDI-UiYHa4%!#Rj9g2XU5nvVpraEc6(+)*} z#L`?Qdgr=uQrm?Ca&u{MU4eZXoJ?}tXOK{GBcGLy6yrUOAUa6aApv+VgSCHl7b#*N z&?cSBgCOw7ZB#VFiEv6Gk$Q)r3g*U%4d1#GbyFEPnA1}VJ^eb=p!L^{^9t1Xb$NXl zrtIzOE_K+j^5fASu>&ud7b#BSHe&Tx3<{wf%J*;xA` zzG0`3*vCf!VX57Yi#RTKLQX+04SM|1^SGpYXfIX!1Imu1e)D=;TzQXPZ>F_{ZcYW2oxl^kL~wpMYiI3s!`2iMjr?w7&B z^DmWnZvKtq9+n|C^f_UK;k*EwCTN6=z}y4D1t%7}Gm3N<2rz+fF^ALrYDHd-#X{f5}YyruUk4(^Tjr(6$~GCC*vFlZ$Z0q z!g2uJUpVSEK(ylEs2_~x5EBN70sgwWGu7^^lb8<(F!J-~)7dM@PH?>%+Lfn4=B5)x z!qCKa85y;(5dt?X3`XHCc9LSSKJv_K-yf_nI~SjhlN&-YH!qaI$-)^vB@8&Z0Sd@)BAygOJRdP@d_?$Xo~7XBztbc2`-9AZr+$Xu3W8UC5+y zxp_={*elB+H6TAwr5&>9x5!Rx<}%)K*_pb5`OSDE9EgSnloa{MPcub%M>%oVZ-L2C zK4*}@QOFk3H=qaQ!UEe(Cqp>;Aqg00D`aK%0}Ub;o8=wI^eg*HWKX9(4xu<`<=+;m zwA2_{pu>@DY7piCO}l)sb>JKw<;1@;;E-7251&*5bE=h$c%*Ofq}NL@LlqPTDe=m0 z$FD&58{k)@HFl_osAS8h#_{(bXdmVg>kMK(PcaTI2!h8dV9($9b1R3L*WrOm$$W`u zvlFaOIw!$_UA;LpejVj5_8c=pGEdMOwzmd_)a@=Hs$fq8dNC9N(gmckPEZJXvaO8p zPAD(2mZL0*5XtXN%7v3O1g&JHBE}H3Ln#Bsqd&X^BOA(Ogr$*BR)<7_kwJ7TJ2cs4 z9w{@#i0#(lzF!2nxT*4AqyaPY7$A_WE`bNwif7^p#k6=fc ziM;>bSfJA<;^s#iJ$s$5rkO=I+M!5S9h(ez$lZgnO0jy((NwalL?RBCaA_ zhs5W4@lNmmH(tQGH(BVLbg#ub>T7Mec(--#d+p0@?`oeB^DS?C_rDTX{|o5v9RRxK zgXXxi=LG`IB-(o|;&17Wd_+r@KLK~~^1Y+_vfAigYifJG5f9W3x_;i;sOzWSsQ&*; z|L?FfZ)N!!-(*5!cPQw5aP6uH!=9ouA`*XInX`{{OrGzsJeW zSF2<{LwERjKd$@5>tWnM=bynhKd-^{EUuSuQQo(4)!_n7Tc+U}foorttog6Fzl$qE zcy9hqyyHEk{ja+)HZEbDH8%=ZOK{t>^zK^s8|A%}_Ur4qRvZ8K{=Wx@M9WK%vxM&( z(bYfw(g2jZ9T&#Sr7&EOnU@r}OhR3kEcc}pz|*uK!5AMGS3p5DQj+p$udChrf#0`n1rH1rOph(XWJh8~*pP!Z}LLPRHLnr7r z?kK_T3@-de&FuGJ@tz>w@4a9^r9Cf7j*!6bGN zJ|@NKf)|h79upTsd(I9Uw%}mBpz==FT%20Q85w(#6+yPzC5Z2n%viuCoAXi%$e@n=={e@4JPPoHzYfiCxyYTv zIDq5Kxw&JK(#?7FQ+g)a54z7hp&$*l=BAl5QH#)U+l!ynf= zE-NPGUhFW%TgGJ3ftW&A{wTX-l5JOqo3_Hlb8p>8ZX$-8e~()A#^}Pfro{*I;8RD|ARP#)`@$Sd(4Y zVsfEr7_B4+93CeFD&Q>+Qz?>I#08wrcF$suba2aMp9u>usu1AnvW{}A1N;OiZdeV& zS(kN?7Zjp_!FWm*u>JacVIxmxFN3%P;W5>2Tyu;CLcuh(DXe*ERgJ^j8~&qUJ}SUa2AKVZk~n_JwoYia38P7{l@omMCn<1Ol$V!4 zRDgr$7|9-H)Fi2hmR_ZhI5W_U=03A7{F)11nhwK4jqkl^227D=ElVqIk2&W z^W~rpc4l$Jt;|Ko3b{P8^oj??$hVG;8o{Hj$V1*hvHXOx3bxyhQ7sgM10K#QIc)}P zmcil8Q3St3j|L~#F~|vcoYgPIc2*JlF*;{FKiclJyC4iL71IGfp9N17Y&-iL3gcrn z8gmIsQRqUrcg_=y&k_h2x;P~Qr1$^;cXZjBW>hXhehJmb^10~7xD<18b_(lu(iqDG zlFf9y9#KtDpPhV~-LZ6Nf_yj#7gYf}TdU+5)m8Fz`l-VeMi2Po>7S~APaCS_*^O25 zv<3J%joyiWGP)zZ8R`3wPUqY^{Z$3*QXri}`p!;?94D&^ID|CQ;wt&*7rIDC{fAUl z@{!3^^3?g)NDo809_g@TcK$zZl;4%$hreQEXa@)CALN%_j`VizARXVt_2It~>C{i61CNXFWARI`!n;Rs`Tmfe z=a)`2TI@>{%1`r4ul7r0k0@X4m%hA<^m4!Snl94k`=zhzB7K2h`ZFEUsekMI(l>TU zC;EUkKKyjz5u|VROMkhG@_YQ!H+PYK$S-|s7wPqW>D#(U$Jp?}_fF^Z&%oclbZ>`r z^#8Lkzw}OH1nJ;kU->;9$^$>28U51tb&-y-<12rti}WnN^ut}G`}5b4F48Cam9OuR zPW|)ezvCU!3H}nl@(rESKS%vO`E#^$`ez=$^u{jIt5AO>#&>?lH2fy`AbTFq+Mmq5)XppS9M*8M9_+-f)^PqiiTRLL!b@)U2zP5DP{0_;4zawbBT9Dte zsxH!x`;}kUMS8Pe`XhenqJ00HYfI;Be(7?0t_t{E)s`+x^Glb?^M2|6@L27+-e3Mm<%jvDXZe+v(m^|ke`Fim((fP{%iW1<47LX88Oxw?v@XiRI)r{p zO0J~TlAcLPw9ueMI58C7(HeyAY<(K(7HW%hOSNIHbqh5{x&_b2NVnh#8R?c68WHqIbG@hZ^Le zH4X9>l+Gyi;E|J7AoR>uG`N%gT3{`iLGP?MnlrBy=YJ87L0Sc4%}mQ^&S`a^yxWaP z;EY!a;gJa^HV*f4E6(2up#g+<2s|-|w$ITv_V|6zEI#;Ll(rQY6hYzU+!fPl*@RR0 zp2A{kzr@q=71dAeFdB$$3C}`^YhRjQJ1pJ*x74uME=zCM5Z-ibn=+Nd^TiH}1iRx! zd7&GcJnjxBhf{~pNP#H)CLGfPa8*`Pz~Yc{BAtwsUwme^4e^=5AU-o&2t9i$31tX{ zL2bAkICLV|Ay97tMPRpL73xGgI8`Db5c#BI3gx?gn0XM`OuouiNccY#%@tiC{ zNvH6z{zkgAw57ZbgnMB=3wFDUXjbZ|BsW_u?WulpNOu;JL1e*`=nE_&Lf{Bz`Mo)~GH|8hGT}nK_YTGtj|+0?-u}3j z;=&wp?*d#83a4lWn25?n=9@=1_UlU2Ca<9Ztx>ZW(nHKndfJ~a_nXq9}*lgNwT z6Pxf1Sf}i-k{2JTlFxh=7gr^BDDe9%?x%(KlvWJf2$$$sf?)%jNSiGNVkstfd=gwe zbIFR*(az#qk@D^e#6WesDM`lW18%SmC-V3QEBxzP0SJ$N z~n?}9rwx1#tzw`DmL$BJK)o0FX3TQWlaJVv=$bSin?hw?gCX3`H_P{HgHP1(wV2C zfj66Z18>RBgmJ?FQ&71>v=Bv+V+YxTZ0=~JAdEWB1;I3dP#uMA-3?y2u9*gnkTr3G6InCjcZEJ63xA-b%d9j1--FCHDK@tJCK^MMn?2LY0-Y7nfbYDGmcN@gl~% zC7Svpg&2t8183+^o0N((i++f^ejjOy20g`kI(PEd*xkrb&Wv}&3tdZdv3@~}(x4{C zK3JbAl7yS==@9cYxR`sM1O-VRnA`>8BBB*$eLEX7BCq@x*oo!Uo3THij{*%LUm#tX zoH6*N8PGqbn|FFCM8D$6y#I{1(hyaoq}Z!g$S|__eq46iN<;c{;K>y!yp#P-#2`ix-BrLkYkkH3c+TuxXPyE z6FBa2hWPZ9k%ajFY8@!bS<1kj6uOC`_TU_?4d+rl9-PedNon)|3`t=SaB7x3!J!7g zuuJdIFug_x;G<8S7=Utncp8x%jhu0de{%O#YNy$6E`Dt(71Iy$8TKBu* zr?XZBjk>fWM-{uiDC*1GU!61Q+4RyyA4j^Hn{1C2*MuM1ICfNmZCg3;O3`39N9x&`}cnY$a+3LD{)DPdCZI> zCsv(3u)lHZG55-sJ-7Y%%H5BC*K*JCh>CwXN1y3C`=;n!3(MY|9{iI2-F~h2j>vrf zlX?7_uf4xiel+p?E&qIB;DTa zZ|{ve67QJ0a_FX6dvE!3%9)oh+=Q5sn*Gmrza8^N z7&XZ`JwUmkiUqD6Jr^76Fe z{HIc`^jZE*$)CnO(ER2m_ou&eWy-(%{+6fiD;mG)&R0)Hbu+wP7x37w2iAOgkLo#N z)Su4&?!D(;l?Tjx`&9VDlOI12ao6+nwk|!_?QCO?9=;t(^cMGW2{H`XD80h zbVP*q4gYT0+ZyjPcm6Q!w)&*de!XuBR(B6NyJ+_-F>k!^R@lui?z!(wpGW^*(Jkxr z>VIzE@P}zvF3S4xG97 zJa_*$QD43JWdD(`yti>c;-8ONDwlSjS+H+y-tSYVH$Bm_uKMt{#e{eh4ASE`*8^yeGayea$Rm^CjP zTj8|7boJQpZ++*0>gQg^kG=il+AlN82Jb)d7xkg&&GSEx+xY6=?;QENxc8r1ZoK>1 zBCjXsoqJjz{_wB$)dx2ZeEx8+Gm4rFbHi5`|L~C|xc8DK!<_8TpGf+7bN0TMvh$9v zRQ&7dk6-^jYvzJ}wF7S1mTDjShd)m}p^z=Ud&;FhdEA$S%(1V{xM||juRj_0lkVPu zrJs-Px#kP&;(OL>@1M{d_T|Vtbcq{R<>oyu3dT4j7E!GCJWd6 zc{ix=g8+_!H`@t{GI$3FMm`Hz42VNlDNGpg@q&tA6a@L~7#xVYRqd-WQr zQYf@5cJCgS`n%uR|GZotLaJq&BsydK=GoBH<9(82wxs@DGNyYGg7 zbn;~XoICDt{NdGCKRQuS@t07wy5CKI{NvO40|s~o_3axwxL?1RBTnb5TPIFDJ?WWe zE^iz+u4&HDq1kVK{<-zR*IwH{E;{;we}4b{h^Yp{?4FN2vg)t7xfkC0_+v83akZyT z4KVTiwC`J6Z<)7c%bqtTO*(aG=FE4W*t<7%#=Gx+=^8R5b9qL_H#J#Vhc@TuAAj_~ zfsE}356;^4^UrsVdFiDePF=nn{#a7dt~J@&{~vqb0bf;-{eS0{*OHJxLK;a3B%v83 z6d@oWfuJA=NUT6F)?3qiHfd6spORAY!H+*?|7-W|dXK&Q@`Sn1Ki@wy zF)^)KYU&Yx-MO>Pqv7y-M_hU3jSI@lpF2Dwqw{4OHk>%@)?2^){;adkncc11F&nF@ zRy{OwDZyITAg*|qD6NkELd>v z!lRFV=IPHqYkB(GwXd{DOY3^;JMWya?$lGarY9ui-nnVhj7?j%99h+_-3imWbQzEq z3gunex9_GzAC4<8EUZ~OV#Ky(PdqX5kyl=+?X_yv=Nm?kzNPcx#kaM+{PGpAY}?l9 z%QMcn@U;&=YB@ z@7d#j@#Bw+o*6UdFMDRszWA8C?)oSt5XhYP&_l27nl)>|u|-7_M;w0ml+v7>!V_<~ z<%_ASS3iB_Q%@cL?2a7;H@yA!nLDOUyRLiV#!as1*YE9$M;_Unbm4{PC0}sC{4J9v zEjqJ%_nwp2tl99~*s&`Y_3875&$66XMt=y!q0l55D={d!?Uz{dMYLS6y{q)B5$>zdU~Y!?(Zr<|O~c7yr5a zk|npczV_PtyXNIJZFv6qm;UXekMhrd;f1~{hYkC2P>U9`ZhrUO+1A2^mz;dV4POWU z{O3q^Qc}j4#~yp@AKSOLo!7JHQ!iCluRW)%?5{1azWVOrty|B`OHQu;r@QZd_O_uz zzn}2%!><>or*|=MG?ltq@N$8ezaXXVWk)X^UnVbcfJ+hdl$Uvci}-v#IDhcfx;13c zfkXP9)c<6d6b{CbfkUxgfbA0HR&e>FXzKzKiHZr>USvAA{Ai&z5QKTcsMf8Cg+@Sy zxXr6f>u!Fdd9-c~f}%>EvZL_$WO%x?OQO!0HeymVc5^fg$rsdaqF%C%?As#d9_U*4 zEQpw2LLdAkbfS9(!wrgF`ya!n+g!5GCCmgn!SRWNXdofMLQI0Z zq5%au0T3tn0R)+fks-#Y%MDm=L_h^(spX$AEW2*N@aq_C38+xOtAOdo2*dF?OvZpr z9wVkcN?y@`hD)NGoR{_NRo?q(M#thRMpwc}k#Vt3u0nyIx%`2E--HVUeExvn2^i5n zuM^sM8{r~k1p@RDqXLpb<1O0)9)$R_Bp%fN1(y**Go$Ho6C7yz{LuIX5yw-}l8k!T z4^plcvgLliD`K6!I%1ub|8q`$F^IpuLk6}kEj^-hYpfVWtoBXe$|F|W8n_h**Mm!p zSnVEy+X{D;b_=wB3w%1nckB?cjzt=}j^N>j_w_sWiCCR-6uwg?!i6ea+B0I69{uxf zUw#LJJEIIoUZHrqzL&OiR;-L=qhnz&P48y0_>S4Ju$SgQ;Zn3m=iw@U=1o_6riydv zOCyTkQ8z}cGL)qk+O2eniYq@!`MtZw@;s(CI?O}^{~O~?-vLKsPnEI8fU*Ht`>ow? zT-j&XE%~`e{eOL&=?imGe)Y~#WI%;9JKz|f1vlrYU5qu19);RJS^Jmtkbxe5U7-B0 zPm_Mx;qxL4lvOs6>z!p+{$rkmpMPGi8T2%lhw~B9vs0fLJLpfyUUDP-8%wVHpa=Zd z*KNpKgte8#)Au&(0Ke?7XLQ;UF?!ADaN_(omK(k9cznXR0UM28@13-5)Z%VNdBeZt z&RVmuM|r>OZLe?rd{B90*NeX6Uc0n>O>6V%_m2Il{Nq`@&Uo|s)h?f-FI&52jZ>R( zTouf3;Y2sU=LI0@W`_?TTg4# zdP@E&t@T#2Be5am)M+7CYHVGjLVBYcm_ExLeRwJo&$W{qrc9$LN`4FdQ4G#rY1g4; zj6tnpfa8{Ngb!_}e=UPaih(@zLvum4JWhbwN3(@>c!?+5=_(cWxQP{IhKj@296TBa z^Nxsh_0T_{{eSN)<@Dl?=b24bEyY<^j{I>tUIKFWi64KEanp(AZWKTM0BP8Wh`u|$ z4oF-k-WW!ryO%_X+(|+r+`kkU;H6FIe%{?GA4Xez4bd(S&dS$ecyfK6_JmagaPgg( z9P?B0;-mAwr2Os?;7I>d`2%ejNqQs7Krob$m?Wd>yL;V8=zxFG60@upoG!B@cEhgE zNQTjKWVs2m{O-0o#PKo@Azvh8osB9>2*bx3qt55dyKrHHD>4fY(B{OuP-Tr`-nlbkAw`Dtx-l+HHeRw^O@4@aeu+&S#@*&?Rb@2A?iR zyF&PM#oBd%PuEqua`<%pwHpebZiIGK@abx_n+BimOzq~ur(3Aq68Lo2X}1DC-74)? z!>3!P-3It{&uRB6e7eorZG%s@Q@cIz>AqLaZ{t~^OVln6K3$G>h4AT$wd(+%uB&$C z@ag(%HxxeI2<@ui)75A<4L;qO+RcMcw@|w!@aeA8ZUub0RobnFPq$9H4e;rn)9zLH zbepx?2A^)Hc6;E{eXkr(`;#saK3$r2Iq>NUwJU~C*Fn3k@af96>kpr9sCFaZ(^Y9# z1D|f1c4xw;o2T7E_;gFOyAD3x3hh?Gr(3PvI{0)Ow0jOd-K*MdhEKOmyPfdq_GtG# ze7K;kT_SwCH0^TW(-mr044IDe}7D`US0BAl$|g*+`e6SG!CW0H)r9Y6DQWlt;@sh564&7;r1O$ zTjqB_5N5+FLF*R%$Jb7u)p~sU(vB^O!$BZ%Tz-pqyTtoM{CS9v1sqi4W5Iv(SfB*r z969qdYzal=e||ur>h_^vE(L3I?r8o1LU=G*y@ z+4%_?uQcTum``oxXF)E^Xj$JbjotKHAy*igpj$zo1p1QY>_rg>7x3$_A}JNrUi`ol zUHpfvV>6ATC({q=>f(2tg}Cnf;*XcjO#VB-A1iCIOO|tRLNxs|K$)O>j(&_x3cfbXzx z`lY8v@obayeeuh3qWJB=?RS5dec<9hD+YeQ{BOH2iZ2JA&b?&)?}^@*&lUht;v(To z{Jm47>DMBTb#O1)&JT}p@t+R`;#7@Haf#qdx^)|(bgS{SmqyH8JAupb(Cy(}eX2sy z>3H`(Q!T>F^)n;p7XiTZ^R-{9{XyEV)_#OO952#e1)ns$T;IhPs^}QKhTU=;vX6Xs zfL9OA&)bhWu--3T>$cCAEui9po&MfFpv{MmdZcgD>AdYF(`~&{r?V3KLq%7!58Vh2 zyYU3&{n)+7P1k5G;;JH64taa|=dfJ=y4a=5DFvQ&a4+J8KgGr8<^z%FBH=S1k*vq# zh?QH6`<@xG^2&iL@z9+~x~w-`K6%rCgI+3+FN$B<-fp?E7M?c?>C!a+G{6fHE`h%e zKGuyJvmSSAJUv;?W~Q5eW7g5-m$ENio6}sndU<8b1zAE^3g7zW=nu@%aiF6 z!IyNS`$y^623Kjk+g=1^xlUi}(lzfR<1`_>uDoA0Hz~Z1hFwGRDue?XcKxmz_Lf8P zpZRo@Kl>)z$h~Aa&l&0BTl4?|eMeqyy$DD?7jBNykx!|lQhyS^P z@~sN5)4Am>)bM`gS~e`oZ=LGTElIOq{cfk)3RlExxf7mOPLbtWX}I`Sd@pyU|bl!YqdB3=xWNgPFtKk((K>bPlw=1LgEr@R6!LvT5b*76Siasd{Bi1nR zNOa#*B$sq4@3?do>kxI| zHe0_J#k2o-@vE4=W3*pa0&R?nSe2vTUkv{<`0e0$^--R&T>B%mk9#k#!?h1ReN{ff z=r>g-!Jh^HCHU(i)|iFx--uXatKh?CX6)B!r$EH2254l$XWd|odMTV!ic|_@UAJFn$*Bt@cen>~C)RsXfr_Q})3dW-mzB_!7=KEgYU+HGW3b zc<9m8RlvLCzaN9oX1LkmifI$ahshwYnn9N=i)1Ny5Cbp3&99V)r@2U$(a0JF?cS9@ zzKaj;Yj9$uGSDzi)}SQC-)W>SKm#V7h@*^O$45qE3@5;lfiuwq6Sv_Ke? z;~%IfHIE0GHmfq242PLf7efK*E^ZE*Z@s+a`0+4CXTf3hyfAA8wB#+C zdH_k?oVQ}#1~mNjWTl8}Byq4*64xlUhL}Lorz$|&1%u-j9Lt0C2l-vPY*Fhg6@&3) z29nr~!rUg2p&mG0oQJa*_Iw=K215%5?+({Y9W#cdw)e8L@ey^pglR`YymR*WsrV9< z_t9Ay9?P$k!}`2mXDf4!g1&5p2Bq(8iD7747^9rrV{~j)#Tjl=f3rH#AoNcQ<0-)b zGz>2bPdx)4P4m(BKZD})P)3Hggz@par1&a4vqDxXkceGRu|*9k!8!(-0_6Ag-1C!g zX?Sd9?KHMsU_e;&4^)LuM+(NxW;rH}XQcy+ocbQ!iG!`*wp z>>3nrRd`0-XEWF~7U3qzW0HSej3nnE$&bi!CYos9zKzKou(!Zr{KC7YcA}e}9THPH zjQ>q#`mtkcrcbR_9r6YRXj0LTq*-rZoW?soI1X8jorG6k<>@&0QGQ(j!r%-~^b~BT zp+^1Sd_>C*yf6KdItWjS@4{iQS3@ecL*i`=p+Tcrs+i_Hl(3>!*EclC1xY=IMd6ME z<7%d}Uxgl!WkV<-Rp-j^Q;ZFd#V#4>%~jY)2yt8M#HoFA6ZY1LRBvn$8wLks(G2$? zh#??w!`SHP8u%LJl|!v;P)S@w;x?zDI6aXd#1pP7s#JU5D#MZrf9#H;^D3048wf9P zU&r$8%fUF5B2UMTac;~6=3#D|e`bbnCdKB13kw9Gj0EgwD* z$BNO2U}(ho{tH*l3T6%g}Wn&7B9qXtJEv1}MP-V2T#b#O*B#@blzWPxt?qcGpV z@wHf4$!Azz^8T+xP@u~gUxmZtr^2G0EiSJf4j=v#Y}0^Ef1(b!%_;IT4G^tWi*z{|4Cvf*NA$~l-gV+j8zI6M`unl`awA8ZQW zhkU0F#v?l($4|RCAI`KX?||*!C2Jf~IYSQrAP6kOYXx9k37GE|GwUzNX&p#@#4DP& zQRWvMpa7RS%Z-^enh#HJD5xb6KDhFd=++QM1L)$A9HlH1Ex72&)E)73q~X08>=zDK zk1v6>25SCb8L$%@X=yvRV3Hjl$++B#_Tf-BucS|Kwk84}P zh;5h~VpC+zIPth}7~9)m+6P?Xo8g{%l9kjx+|!+aCanyItJ;kQLA}Yy82cGh=1xXm zt(jUqek@0_lm$RwEBo=2(OSy~y$ zWI3^2(HR(KS?RQs-AH^(=*FQTG@&8_osz1}erR(!#4p10u3ttHE1P{Nx{EjtuzXH2 z;38;j@fh zT}BL>I%dk$5ff@Eu-|{>_z~q3E9Li$Q%96xVllpUqU&Rr)+BgGRB?Cd5%47i4i}uj zh^ZsEQy$uVOih&x_9-7RSW76}O1f-FJ`Pc62OC_Jl&>JPqbzzjf|bpPHFMCxi(Wn$ zhXV{A(x&f#p}pFSnN>MPe$)BKR^f43g%+|3Z=*6lame1Vp?&)gX(M-N!+8it_wC<% zNE=u(wW*vkt>h1_gfmfAq6;e_0{rWUikuk15;2y4TLGS6+8CjYy{64~O()BCFtasG z5dbvU6cAjDehTVqnxGVErb)^NZTuZ(UWEVl47M^MLmN{So34y`*IbPM`DTFpcQNK2 zxhQ?586bmprp>rQGho5XF=@<~6*5x*i9BZ1I$(;R8wp^%SOsXnDa10n!CsnnL25V!nwVv2^QG&@N;9ypr zG?@e{I2xgGGII2UXmI9CL)aKVtughW{%b{B^G}3z6Ui9f?g_u?3BT$IJDxE3%Ct!s z&fG8;x6OH)^F|NnXc(NMVQ`Ly!8sZRHyPHPWms~4M{|DO!#NrT=V%z5qhWB4hQV2e zHD?(%Qj#X12?GCM055cNF9SED zT~f*8ZvH*QN<8U1`7-;Y%j`xG^Q~EMui{-Z0a)|T{JR{f%o~uZEdzHVP|m=E2uxt$ zNdzur0OE|b)Buw=@h$sX=&ANYh!(FQdL0ArA@CvtpCYi8fo~9Cp*Wz}c?{G?peqBp z2n>{qJ`ubZTd^ST^6z8t-!vBPG!Se9r8NkF2?iT!ITL;ha6aQPT-Y};fIDM9&HyAz z`&|Yw;5p3B!YJr4JF6!GV+_eC`kP(5&>+nLA9LAY2C-iWb| zwu-@KB3d+asVzn!JkV!bD7~=?!>w3h^+9khg4P9AU&hK6$u0=33-Zr0Lbg94V3h;d zmWV7;t=9j_| zu}E!~IEOO`UdiFp4F|1E#x_xXU5HlPO}n~KA|UHM7fMME&oUfzEm30@q#0aU7ybaa ze2>7Hvi#CQ$NIF;IRa&;RlGIc!EJUcV4mf4isfoeaY_}$T+K#KX9Y1=`wEAxg7T#h zI^IE7Ae2VRd!4Qd$|P=v(@jA+fUMR|cLn7e=+4$M5pdA_<{+k9=b-t`L8>wB^$zZU zImjxA2qx_2ura>}Xp(D|GeCj!OnHycv&~Vmj*aDTdgMZ9FrscDZHa?!Y2Kpwu5gB` z60l{>Yn@^EUu71^Ixcrk0JOm>SRiEknWNBt=A&@x{x>!n2)3)aPX7CG3&p(wXFOtd zgInke2Tz{4Tjdn|mxInP@1bO7bm1M}vCAofHzgHwj7mqGil^d9&=Y(+3fcq*N5KHV zoQ;m`uxR8&fc7#+j8@!J06O&?Q3dZc+yY_&@@)y?OoD%Rq~aK04#CeIfg=0-WJt73p=FGp~s2CEWc*EwRU%C`ft9UU

    kur0gCS&F$3TUWL01MfJ;Q5Z24Q#bpP)_hjN6dkT`_zYE$Ps738)X*s z2WVaChzQC&&nkFB5H5AZT(+H6uuZ~?9dQnrO|uGi5Ed^v;#}rs73|da@*6b2lQqIw z3h(~pFsi)_{CTsIG0St78|q#qLrIqk2RbX z;PH%p3?6W9R_WOB1HGKv(3(@w=1jN2Sq0p;XmUdHoV!qpt!QyTVvln-s?q=r4#-~M z+zY6aSx`*M0nUAZ2BW!?!_!Bj!gsNPT@<+U@}R+L(6gi0X0cnvgJUCn1QyhW8(?5}%FLuOHV8QnTSv~5A9# zAu^KX6=PY__XjxwqiulCwS9^s`l3znFiL(GIf5^*ZK}fd?T+Ah3y`CY^`#@VXaG69 zh-(~9)&nincw$a=!~j(mIe=h1;oAmeXA`n1l}+N874a8kp&tg0l{a6;1iH&x@htzvnG#za>o9>@#s^05-#(YcMo^C6KE4T()s491&016V^nKlEsswzH2K)&|4pR>EmCKa03Wmd5&YwrJ zUZ5u#Uvx%5u6UbYMr9kP1*6p^kehSdPfZ!!$)%iXc0HI-Q?{Q_Q;pv33N?MSP;)a1 zrG=W=2x_6`X4%*9BpYkkuxq?R&D(hBwNQg0&Lh;ES68T^d6yPyMtX!A?75?+$b8fN zjBEq`9@z#E2U{)M0P@H-fDS6#?Bz|D)i{`JgVd~tmTdqrS1sEBVy;@Y0pyWw0C{8^ zKpxo!kVm!w!(todcK4NAZ|{yNzPynnrH!<^(pXcY5~ z|5n)s?7XrKz@Lz9fX(CpqGcO^hb-G5tyi`I_&+GypjLKNwgJG7uVtI|`f*dT4WNU{ zHb{3+*#?r-?=0IO_d}9xkj^990P@H-JEF2p8Q+Fcp<*{eO13GJJ^Vnj4N`by8>UdQ zjY_e@8-PC{+n_97*#^X3*#@9j zwgKpsZ2)>@8-V-BHfw&ZY@<3%UD*b2;5kMv5R)AX(NNPddGIo7YV6T5X$I3L_Y#n7{H}flVs*>i zCh|8rX(7ON_2j=&cLPr5@fHLYqdS7u(Kb4|Q6%LXQ;b5m!e`sZz<)r>H#Wp(W1*C9 zY)G`m15&=}kI>T;44&5Vja?4l^F;7YwRu^Qz>muQDxCe zn^Wp2ZG^v$U_(#|HdGLsr^`Cl5p3>J4Lbzbdo*9Av_T0xg3SZEj!J3sVoYgsI@-_t z8=SiTQNiYEP6EsZxP`9L<_F}Yl{P=9oV3!0IVr)Wzeli{19`($+PnmMf?8<N~N zS80QL$WhBx+Emn4+JKmYn5(pzT32a<`_zY6t+YA4uF~d`eUvsY?W43gdmp9EmZ;Lk z;(CRvw0S(LwD|#zA643*Rx!Z_fJd+yq8~RU*Z}efHkkOz$3Q7r z`Z-qE6>I={1si}~!KS?$Ph6!9%2LR*T4@7fuV4evE7$<^3N`?HAg!yk0jLC>VUTo2HFE9neP#QcW6|kN)IK74}ZXN;zqXNIV^qj&LX> z!L3G~mxJx1MxYD=iN=|OxYaojoCr|~>VFzo=YkmgR_-KVCxPoLxs_9ABRrXuxiUDF z!93W@A^Hqv1qPosMqZ=gZplYJwn)5HaSo&tF%52c-URYNd~gx?b^x9Y!t8P2BgHaj zZ&WPvwPmcj0*?Ua%N5N5wigbim+LI1?99LJQt4?7rcj3G+&IC{KeRx=_A^~eN_EER zNQVu(zGsTwa7ja$p>IGmL+*p*Ug9K_@d)6x09ayaLkVRXVNuI!^tF^}gk>_r2eojh zD7#w90K(E%4|o`q05}BdFi`IWZ!HJT2AsK6$$`UvfgH#x{-hj;w*ti|u`(tHA~#nK zWX4JkoS0-YUde$azd#NIV~-pN$Rh^=^2mXJeuEr{)E+qykVg&#4# zP!2?`Vsan=j~v)rKW<761awe25b6FvIS{!Yk{pP19yt)u0p-9Ucw-z$4jdwTxU*f2 z(}Vevag-d06bF<8Rf=CO2WomH2a@T5!y*BB+V5ksT8N6;2c~+gE)WO(h|kb6N_ZyaQ`Fh zQ8WwX`Nl93o<`LI^#sIT)-?DMKr}o+wnOlJR=gKMUjsxX0`y%f7Bd~ds|Y?y5G%1p z=y4LiM3AgPueJjA2XPs&pCdu(VZe3~OMoq+pgemWB7Cn2OaP1`bB+yaSk7Ld5+|Gh z(EqTwQiGQhJX~BwTJU<5tgjVUvu-e*m`kjmwuQ_%DU;y);#v)kF0MphxlYk0y-#FA zalJy;yB0QK!BVsd_=q0jaWKD_jXRWoeR;cxeWwJjh9-mwt2|gp?-Dx&*ek?l4@NeA z!t;ltm>-~C^V^{5{TqB|%R7Lqd8I+y2xMY;2`K6b_ZB4Q0LCqF??G}Kz_KPq9~hU994xdjS*XYG?)@}H2~y`W}pe?|$=SjmK$8(`k?ZwK*G!|rPgSR1X?XVM~HSP%yGV%ymy!-q0_8q%qkyxFCKFlvz9TNeVFX&7<&a{ zUh~b4#Vkhp@3P8m@0=8C`*h&xZG#ccGI{4 zq+*5H2f-N#S{Imo87md(=ugHyLH=n)x>*k3O^mW;s@WUCZteuiMB^FfP-3<@fin96 zT#cYL+@vD?WNj#5Hw5r~9YX;d9bSwEOS{BI_Y|YSlKOPJ4M@RX&7)jM&7)jM&7)jM z&ZBJHK!F#t)~8zmaQOmJaAT^J&yD3P`qioJfQLpGcipv>hf41p5E@zk!GFTRSJy$f$ z{!x9pT%7nKs!x|2x&hRN0vOTE5%N~K`gD6RqHa_TiwDcRQS)74bNa4Z*1Xmp2Hb6W zuDIOB&~C1e>C;D`{mh5p)@t6`P+%Ktf{HcwJ*`cT&cDfDL@JG_F_P7TtVKxR6$CRw=tfZPwDyW z12%_q6?4Ro)!hg~CL^E~1x;QdHVBzw{r8k`jD73Q}qe432_S&gE>B;sV*K z8JsQ6F9E6++tU2zB@I;m`OSe-bph$!E)VyhoGoE0#)krl8v2lY*d|;@k}2kLPpjJ5|!-VfEcvhu%2d zLw|9U>Bbn5%KSc#vMrGO9XU!UO+MkzB#fJnN}py+^UKdNAu^>U+Efhsk3e_BxKHy- z{}Jk0H1TMLSV{~VzzTHL1ofn9P5!sC$YcXezAeo!FC?34TNHxuLdC{vZcFn^fJ&2Z zOY_T)?hMYB=9jRoRhs;cNO`R;JUGMr(&o~*{{wQq*p}v(d^52`kJ_R~tbq1&wkSg^ zupBJR#kT0lgzk((jAlvSA7o4O%cbOZiY@x0aquuoeizx&{PImzVf%JlnqLCsXk)>c zus?DGs5JSuG{0P`#uIb0EzK{{SZW4mOY=(*w_w^kZ81ot<%nSx+0y(HSf$CgrTHa5 zjtOG3EzK_hN=?4+cnpMh$tKa7{A;DIe!aZ;^1cUF^H%uF_%CKj>^rdz6WGT1z{`^6 zlWYXLIeY*oQcALKYlMj5wm1)hP_hu1YXv?)5%)6sRa=~|q6zi2Ia4B0E}+S_v{2X~ zWi96_MxAC`@Pfk;6|r{ShHlMe03)!S@>S@Vn0)mEV)aGgHKpb^$yidC9XH0*ADZk% z7l<2U-hxLOecViSSJ63){U86(guNnejEQj=4dKyM zLrm9_4&J75V@$j{eZT2LlejUaVZ7~1I_g6cfJ)L)ADRIC4;W(}ezvbQl)GCO!mWVN zfvHpAF3L4uil^`p>_*gb`H4y3pS~i&7!tx^+K_S|=r(~kc!I#Zfp(iIFYj-tnRqNE zorK4tl8%FkmU{_Ia2kx)svt;SaYIcimSFm#6if08T0op{>Mu|LDaDeD`wa{9;6;Hz ze}STN)nB0KT=f?yI#>O5Eg;VVJs_o6l3&*XQi>({buA#z0zIIpVo82o8#mO%a}zhz zoP$0XH`J70*Y(10t|H!=IaWi&Ma6f%zr45DzDH#h53d8 zsbCMCD$F+(NDWx1y)fTWAQkMvUBcX?Kq}aS>xH>lf%zofB+R!JSjbP0Tw~JUWFUWu zF=>$ZJ!(u!NZAntTSBF&jY)%(5e_aDK4cJ_3`JM)E)f_?vw=`&$Zjws4PeE^o|99H z{fiicZ78;-M)+hDVoM$p{7nRgGalj4ks@%48(t@P)}qm!G`EPrNKGGlSp-gXX>JvP zQ9#dR+80EiLdOReiNI)=|2HBq)}NN$5xP%At zWyyodEV+Tbd;kYe1TonFZrTL!G!bNVX9Dg4ICQ=UqQVmYc+>G!vkbwb7HMkQpl8$3 z*!on^{vdcR;BQHPy$G^qNS`{8{N@U7KgkvK)Ct5}BABnzr#?^oRU!xvMK{uzf2frR zHdXkveoe>DgaL4{K=Df(-*hy#&ld8SNAOR(ujyn!;LO|`wrt9K5p0gcs7%9^Om#`b z{9skY+`dwTLWO{D=il`(o=~wgfmn?M!SzV6k%8wB*v{xT2yHWrbeqsF{(av9#S4hR zz=YC(DPm7;kyYGon%yS1)_o@ zg>OYPYW8!a+9rH=@MbHj+er0>@L{DxC!D>JRH?#;B~UkN1EVGg-)aDaoOK2~#vTTKGz`Wb^hpr>QwgQ#l4NQ+8zV_d}C zaTeS<)bDA)--dvDQgk5-QQHZ=Ai-||euMfXjFI31F+8zq>NFURfOHb>R7T>|DV2sO z1Biz>qm?`oSilSd*WY9dd>w0ne=t^E;%jW(xbpXE0o2{CHuv01Y-7i6B-)>&|31sgB+rRfCb1u*)n%q&4Y%2$Rt9%V z?x)qaBhPzHbv`u)TUCq zU8{!QZBr@auB;k<<)%_d=dnu%6xa3Rb%b_MRt^8wO{Ls&iZUL*^9oYYK#|x6?2}J{oLP>*JQesCX=1^u);!MgLF>z)+ zqt#`CaqilY517w{Hu;TmbGJu)#wC?id^M<&bs4|41gr*{92ZzL7pNUA?p>D=AF;~PoE?Gxlu zV%$DKF7Lq7i<+eWiVXx%7O!N3Pp!O?4M4AC1JEnk0PKN!{GZ)O3X7w9?O$ywmDELq zo`uxJ74;oEBIYM+Ar#?@$Iutb79jL2ZWq{I%AKt7YNZ# z0$}E8xgakVp*J9By&{e$G+l&f7*Q++VHG`TjtFfc4z!mMt`?!qIxTk0wc@QC^1Ja&WAqIa6hc_C-oKy*P?kw;p6|0UX7R^<0I)%H8Ywd5=JUUjqYdy zC5z$W~LSKO6tAv}y;D5n-6XPSK)6go-1Hvd9E~hPce7p!wrU4Hi$RlUC=HbG# za6CH-WWvb?MLCve9ybtC5AIl94j?3tXEYBNMhi=uDWf=mx}tp(0tJZT`hFpjV12(o zyng}&`YnpZX~C#ioU|CR`Z7_PrtikJd}t2Lo8nr&h)9Giq)x(#?-q|PK}#|BBpiUW z6g$XCIKa|UEWTSjO&NZ{NjQAo;vXoffhWFbsRv*@K>y~GaN>)Wf6$^OhJmE>?aOgv ztGRxe^r5dG#Sv)vKG_Jj3!>3?kWOAwOOzcja!$dDV>Z-$N#_WFRP*JQ=1##$>7o>) z?rQ-184!eW{wA{7U8Hma^GHZH4HrbEn|jPdU*;miD2z)t{1SJ(aPFu!qaZ29k>0=E7&TC?LUd`p6}X})a=s6N3$4YA&Q{r- z>=!<_274mr&K_X)9EqRTlBsPNYb-)|) zDUFQ;@eNHNjh%|X6_m!BNRcs2=?;6NGyi&T`^8e3zm|}ykbEohx=Trd5U;3JYg|ti z2Ox{nxL6g3!WW9u_*hjOfGkeqYF(VRsyK}o%i=(?RmExV7Kclrb%i&4DhuH)^NW}= z?h9Qmc>LJD)lr8kydC(P-f8+{SNX;5TzuJUOyf7b^*%Ovnzm8PI|BC<8`F3#z>jsi zA@nEI@-G2ws!yN{!1FE!vZ+SP7b1|IpC@YvXJ6gfy;fz(6 zxyvvPEBlXBFuAYE&+1vhPba~hBSvB&IC+??P_5v0%E^ONRq;J5>eiFQEN0+dS%Y1% z8bIoIFK%O9-04tjfafOu32XeDk0Td4gV7V>pRmSPgLeukV#HU2ebw&9+|FZoHgIZ; z+L+sU0z)t4^7tpLhVL;LrbD1~kJzMw17LhL_%AfhU2G)S<3YLM_DYY~@J}R}OK(XpxR=!~zo)(u{&>nnf;#$GDRuBVc zTq`Id7*OU#j}vitoQUtq=y4*BJWga<^f(cR$B8(vMUNASOD%D!1;>dv@;H%MnbYn#zic%{5sV1y2Dcqsq)E{X8;BUwQRLOANXna1u>=s;lPrDi zz*y<=ErNSl&~LWA=s#Eb`lVJOOOJ*2Pq#I_DN z)ZpPvKUM@s!sy#jzXy=|vZ`^)dB&kuB(4@SM0_h0Gp-gJi^mBQl(eSJZi{3D~2nF%!O6O zz+*~77F1GYljKI+m zx(vfjTwNAdmrWmS$m3bCJQp{j8=Ov!2L7=7mOP%N8`fuN1mmm5n4#qK>+($N2X*np~wmguwC^RB0zPmZ~(IFhEsWlRMBO4dW?FJ^8Wo=^F495q()#;XsPyLzQ~= zQ>96Rvx8WlHSn9wQEeJ$eYOB@EeiN*07h8N5ed_?Cc9~RMxYFvZ}h>_WLL^fd4X$s zCd-R6icym$oucwv18AV!%i3ZXrJ09X6WpS>kyhMDE3S=-Yop@JoxYRIf^xi2;@T)< z4c??^i1>0R-oF3eYNIH$HCXQ}c7?XJ5%cq*5K68=qrBA!63nSe-fH?JEVNR46QpR? z^nH9!VBMV;#>b|kIcpF@8L_c(G{P_nC=um@&t%6!V$d)`R8i1r8e9Er@H}GmWqoZJ zT|$Q{==>^?Ew#C5!ty|5`+O)IY~l;jP`n(9ZB2+kM0-eTs5C)HY6Ww!7Mj|QpvV!! zi7S=3GT^R-(AwZ>DdREahD3Z(&;sd*`$ytb5A<>3w23%CuBFc7Uyx{1`-x8KyMtP8 zW|G>{YzI%7@54{Qo+c?Q*GLsv*hZC$Aj(zPlVCey1sb|=7^02f)oka2%cBBiDk$B{ z&NPf8=cB#G*G@Amir+>*OK`T=*D^6Eh&0Q@T{a%HgR?P3CDk!2IH z7cth+7G{b@HQ>ypwitzQAD?X<1OH~E5-Y4e2+l^(y1?qoScCbshg*Z<8*3~hWcw2W zRylyTIYOsey%8*eZWxeQX&npbJXpIK$j$C(^#iz;84tGxA~-V1W_-kH2x3E(yHh>H zlw~@t5j7S}V8L-XgJ78)KHZR~FoVBGAqdEG(gPsRNe_U2!$}WF?K!U*5OdY%H3MR< z`n+a9%vGP)49Ig{Ga%1-&44`TH3RaT*9<7%sE;g`iGVz>nFhz^ItO>b9Hh#k_d_0J z75pv=L6m@X{0|&l#hldUi0ygDckFVC;7x&!FHq^oA?r!hn4mtd86Yi<1B0X306_I0A=Kaz%xEpPJ`80t*HKEV`8wJkk+!;Ne7$J_JLKI1An=v!FjfcR%Fc z*M1JQitPahfE{0a>fDG&nEQ4C(kDFts+SxdJ=Snmpo~z^$;aRU=VnkM-5+>x6>>kM zuWFIbWAzW{fV-ri>pBNI>7hvWaA%Vmrw3F0;@sbmuL-2^`D3~}gd~V~sl`jm0Ocl0 zzeCbb1VN`d^u|PhE`4T{>46o3?UCH85F|WH4&lfLx9V34lxTEX>6Y zKe77{e^radDr8xV|B90yR0pf85TrnvdZKRzJ7zWHs?`y5*G>o})euSAH3F_$oQDd) zaIWw&2rI!G2>Sfu6v~&=2n5@S;UElsNr0WZ@RnT2J_{w;NqH5Okfkod?E$jz#XJBP zYqC$FAxs@4E>XCmCV91E#u;Lf!WJEsS5bRL3>=vc;t2|CVo;RN$7{0m6~5`Z^t*OO z%r79O6tP%yo1heLu@s27S$&xcFxUxKv_THjT^PupalLxG3`b~r+q=IIOB2z8@_B!K(HFY^v|vN2$EmJ=PVB6BN@!G zZbEP(3Hn+q5S)!*>bus>2+n8hh1Np|_CYZ1BkM5)C5L*}4+wH}Nq?=YosGvV7czJH zr8e5v*n*chptQqn^c4ed1QSrhOKsFg2#g|x-n8=oCE^(+)YL|oFg`I0LV(hT+4+FJ z!pK1AFuMsL@T^D5h>bgD;I)}TXr|o~5Db0O2(`3Z0m3^p6HxjV`!I#eA+Eh$tZ@0n z)w3aLGF>5Y-E2skOxJ?YH+CBZ6$48B&Mr|<3312R`10D!#T(whG{QhLo2~ICG!_X1 zP0?^c4+nkD+y&C~OC8>iK5kPu9LoU7%3tb$f=wYS|E5D;z_Gdwn>u6&h!sp9<|HYI z6-+W#!)~Q6ra3<528eY{AK_zefD&bHvjcuIIUlHoEB#~=&CL%cB7?c1SZUt`{FpCTcayN1 z?@*en$zomYM|tJfH3k|deZ7#=SL;=@P5KLB3KB8caDfcIW$;lEP5E!OPQmDr_6n^v zIQx^ADMr?3Y=P(uPhKI;*X%|pPD4}B+V(OW=_iSDMUT2fJwVjtdeH+!Wgto=ry=4P z5|zR6%9PyZqZQK65yv3nI*c#xu&$p;5QiKyr^_`kTr#l+hyjubM>)8B$>eS@v7Q$L zzy#cjzEJtC7sFiAe2|t((!C&UI7)EB3DRaZ^ZT0uRemRHK<774jC7gc)WR3q1BH0rP^}0kRo*kFbVl>qSH% z>PCR+uMxCf1-J&i6`gT0`=7OV)!CG7?ndgBa9hL@JYv>H{yl8F7YIwePSCvDW2IsHth)U;{LJe83Jv-ABX$JoBPM6za`!|KHp%8dFEB(0n;1rmhDe(Bf?zK~ z9xd9dTb7lJw%sZk34uUb3Ik;DH6^EJ-$f;-tk20;T@FfJZv6(yDZWk`Unl)AInTi2HDb)N&A#Z|8p+=B%WUWvm=vAnpY;rQb z%;91Ii|SFR`5^jnUr@WABlx}s)~iqh=vAoAg<3N$JOM2rPDg(C>iKXJhi~n`27Nxz z%Z`|+SQUe_t55?gk3x<4dKGGzPk0q-I3vxYP$RKdp| zslI{H4^pkEXnrSa1dlcJmB<^v%zNXPt4hWcYN(<|p%%OGc-^ua98{r(bRLBoZ#+B9 z0ZxMVjX;aDYwdCFMwu3(!2#I|oO=P?gLwhd4RG!Q^c|U<3LW`C@COKRK zJ3YK*4|N+2-$01=_D;(8yYVMMylbR-Y?z+xN}xpQzVH_E&8?e)pqt`+yaav2B>iYf zkG|%+rw+YRsOcOojWT^MMx-)-AON<-NWL|QfM=V!FC|<@q4p(YI`@NAe`h{1B@QPU z{?6)IJn%Le@>x`w{UD1>Hg;{ML#>4W60)gw1OzMpC5nyJ+z~|z9 z2OpKXs~G^3tdPkyIipZPj$;_vLxg~$CHM?8F$N+gvz}m2GOs%x?q*&QPX|X^*02Ee;6L7EwD<*o>Y+pcRZVgtOKN(H`tl z5Y7~Wr%f2u3_mZ#5r}U@`W8ZTMEGvfcNbWaHG;R3=0w5cD1r}=rb2MC9{iT^dxhwN zyb>9|M2I61zXRc{8A5bLcr(J;0|oWV!AB9!3<-XK8hnZ2n+0{v#z2I#Duw8Q@Cl5+ zMhFZ)#%v=`2ux*0eBe;SK{%tGk1#C*r0Q z(2Nw2oI)%rko#T}_6-E~rUGuSNHFOrfL|kV#zYB+e0aRl0b92zJZ^5wmVmRi$MC13 zQ)aeN_}=EUKv88ixQ$eqwfr+WW!BZg$Hx%2uI0Uep>>JEFQJQOJ}i7;;>93RcND%+ zn))-$S+e>HUj=I14mkTB;Tw(c71%m411YmIHEhmlOwtj;SIPEmIcXxMP`)a%G3O+b za=8Y@$>5XmH{lzj@@RF0d@4hEd`yCE`R^Op3WX{Zx1epQY1rEbt{PdQ5=l25CN(g( zsHSZ-=diJ8JU~e|f#BN1rjMVfz}o@dRXk=2Y(VbNIX$PI|7J3$n${>rC-I2P1Ap}r z567&qT0BC=ZO9a%q?_8vdxfBHZX4bvgo15Lp-1#7gXsGQNwitY+YrqQ7u)l>Md6xdqIhAZyj;d7v{s zkg#tq;ICwdAv%ccOIj7lGIH^h{i(xUvIlVSly|)2aYg8S;%o(V&M%q}gSvfPRLP7Y zDrNU{-WpQ~WD-Qi-M0ZoXW_;qWOdYV-s4R|oJ;zm0Z2JtV_pJfCW?5Tf_wJ_jE*GE zS8zX$gjs(VVgXZHbG~PnK&KXeX6>!Tkv|c?T~PH@|2)8RkUk?rhznKvK~0f!MylXC zi&556Hosh1LGQ{W=^nwA6&7;P2C^y?R6fbh2XxbJg32ep`;I@K-wgV!4JtL{Ty>7UBlh+MH9^Qua=&mx49s;_{Z`Cqmi84e;w@Kh@1=wUix5+zj{@ zYw>kwx12Z&=vx5ZZ!SIwEs%M)U}yFXWEGzg;y$2WcdUr@>DP=ICd3-VY+}sL9e9ak z94nl5=x2u`+^D5+N)Qg=g_7YHW*B~EH(~x2I1CW>+=%7BifPUe_MZ^Gv}5%cWN%N7 zSk7sroh0l>JE2GZ1rH-OWB97OFdHJb)_D0OZQoFiI8oYs$KE|sjX)kW- zSqRiK5SVHhT_fh#=fFWuuYU}0?w!Isja4J&n^|zIcZJ5F!GY-zqxhi*{+iWnTk`>y^i6800%eo+5@2{(_zPf1ur;nyXcY-E7;DfuTK z;YdJa2z7h$53>xz7>c{zptE{pYfx3(-l4tqBMX?1?9h|cBMXp^?9kIuFZ&W9CQD8z zQUb<_27P6gKN`4~nNJF?G&DGc_wus<@^8?YWEglG%#dUW@;^Z0tog#%9*70<#(z!X zQ6%1qz)kxRw-mmfK&+Adri#QDb;s~C+~LF9V55BV!{FaAzhU&NjyPXM6YA^m2__LC zy=u5q>b~lqOx;(j#!=l@_VcoV;6N!F9&La zmA2@`VE{8)eG(TnUUsKI3zi8%SNVltqY(nqnsEXwiJ(<*0aUVa%jt{PH{qgB^u)Ey>knx1H2JmC66z+@nAHF(GKkfr&LHpb@Ll zTF9ekVg7SxzMTJx`f3t7bY&Ac2?dyZCrCB|%}FR=Dba41M|2USjoGl0rfL!jd6H9| zoC27>iA-4zW7vQ~q{S313qs=_!#J^C0cV}i>2bb#;&IfD2-KX@w-XnFmUB)B)`U;W zESgjTG-~M^2thj=(<#)FGrJT}W-ky_;7H2t1)PyKQP9cBz;Z^~RKcf=2h161fr3X| z17@6oBHA2eExzq61UTa?QutHH0Os5e@-?|v^g^z|6NKQ+D=V1E>a|1+g!GCN0J1{R zS|npiR&gzoHtH()4K1r%@d2`e=0p^OzPY)WN|x+xd4oA8A7G=15N!ZHgMysd zR80d*0KWzJY-HT%Pf~G+Nw>@h!ajminI~p!$sZSuXAqOL;59`x3}T{{ysM~2hPxsB z74tY;D(_MfDfoXLK)o6j3Fl(eC;I_R`6E^mbwQ2LM2ivEs9HGZp?552Trc5V)RLct zSi2)uW;M|>g!MJTwWxEjPsFOXIbtP;go#O6Vq4TZ_$U5N=>25e!I!RMEUCQARD`kY7Y9_vUkaUWsZo2xX zMy&b^g?St1cl8gFPSNOe$fv<1xEqn6O~KUZ(7Kq+XoJkP|?(_UE0eLt0C?#I&{+K2T7-B z>ZVIy8nM!!6Bh15z2*l=r)YFK^n#4R>{aZK#|vvF9;QA@g_FHPShM(SK~Dm*%S0F(X#S^D@NQw%A)Z5G+NdyB)Ub= zaI)UcgC&$Sbt|83N384=Ve>gHJV-i4qtl`A+1=qjLxLF`B9;idBTA14boA@G2HEpK zaIdhBJQzcXcWa;%HA+NVbrE*iK@usvn@Cv`2XmwrGzFz+(ugq zgu~nO&GIeC?lg?bTnu4&u>kbV1z6IauQ@<`tyK1sCq8DM=@)CgoJIh30ysU8kH-dz zQ@n1eIIWzk-dO-8>t#*UO9`;#{fK&J0hG))DdyMu1sA!Z#e|Zk@*8MMR#j7f_ zz2pUutg1T7Vge$ks-Xr3U#&u^pDY(@lnRB>N`=B`LP~|=LNOIeCos+pVzl+mm5V!# z&JT5Fp`>ypcmT*sWLas|j-$6TUv1;|{-+$eJ;@&-U_jC_RZek^wuC9}h4MJ2PGY*#Kr z29VN*o2J~R;NNhJVV~GHb9zIAi4bMo4GjkB4GmVI+Dn=jB8yY-@px)4+%Cn(?QN;K3&+KFX#x%y#%U*zJ z3EH%)gDH&s3Jj3-o(mmxCxh=%v@>P-F3PYWH~b<@w(;~h+<$cq&)&vGD86JoA< zCj*_U-pK%vXD0(do}CN;d3G`YxE%sx^cE za!%K+spo$n|Cwbk7E6i-i&RRF$#?8i`b&X}eM)~Ba*TaSzeJ_`Jxsn)Hm^(w@Fz^Z zf%Tev13YAtZ>05_d;|O+H2FrYVlp8BkI8rJ#=}O!bK_Ukx$!sGx$zi6rL8|7V`cLF zEgm^S^PIadO8*`v-zaqt=1}Q8j2wQs$v4t@_D}%i*+b!Tv*08{+FJJk&zQ;gx9J)* z`p9R?cL0-brid+j$rN(gOQ+b+ac8QukzXfShuQYaDSLM$vstzEKvhObFr@Onaxp!@3QC95Kuy zM;xy}eidT>=!n4zU zDXp0c#k6JyTaXf1o2@YkY%*f?<*YZ15&hzONufEol?etlEr9{@NML~EM_5V%19VUc zY%ltkl)%;;Oaen{j|2wDBY^>8uJOI3pjtl^35=~7lfZtnZVc?aau7g|9JH@)3|Oxm z1kfu7{VLrU(t70}fF3#Me?>QjTE*lb0EZ+8A)V*bxBs+m47q#cpkJ;VLpqNf1jr)? z?TE@jMVx^{EYZ8VBP2m1zL%8Y|K+-|edHkQeiD;|ex+^WP-V^RtrkCXz)Bc%X3sFd=(E2XSEn3RIl9w`No zM@j+Ykx~G~^+a(!k?NZs`G_C-de;uoPrULGK(Bl>x9-~Ey?S^%@YVoG>y?iHdgLSK z>s>qizq&O5Y88`@034EhgmfPHsIGZ*Tu+2KdR$MW=Qwda(I2ZP%I)A26Sbl!7Y2TL z<tKgdPROy*C!u`C%5KS#KsJeJVFxKD(0?2Jifa-pIi)M9G1tlB8t1M=Qi`* zsSB7_jsi{t1s3yy&&v|Mrb;xfGk4E)l~(u`7FAG6D@JRj6`~1grIm(aN-N?{b1W=8 zhH`{}xg0BQBsQaj*zW77gqZsdV)f-KF^o~K#%;XN9GLKUBt$?S36YZ_NRN6Y5zs*; z#Glt=A+<+B1muwr0eK`uKpqJZkY^}EAtAC1oGt&|5!I?AAF_l9R$d7a;Qye6h+4%YL;xNMF?Qp* zk{G-3`>!M--9aV9-M{-vB69a=(0=(!BGP#@Xn+o=K`VoR7h6e;Zyx2fE{ks-_3zi9 z@xy?B?+0|=mBhRw_}v%R6mz?a9V(R92RrJjxViY4K;YczDg$<1APQC}YqI7HLY6{e z1m%88*dW*q;_CneAz)E27ub^r;vi)^xEW$3z`&0T!p)Lk5CgQluvIFF!Po`yomuXE z*erxHBAz@q8bmMV%e78bDoBl^xwTO44MHUBPy3ywg?VJK0<_Z&DSN(vbxsoV!h+|x z1v2(zA=13Dw>AZodxcmkSYWt?AbkpQF5YX%W}s49E)B13X~ zM2rQ;Ukv_5a*?Z|2S0U5dccSr%COf+#2n zB7&kWhA0YHuuud9>0kg+a4o1YsKFjhA}ShdVl2^EQ86}*J;tbsn#8{vjRg}mM)UuE z&$%;m-?F;`V#?3=KA)YvXKwG`Irp4%f7%T?K{si-GxzF^BzwYlHjWQIHjl%9av!`J z&&NJ|?8e6+FAjGS*37mB4A;`{)*G%bLNmP^nWK5R-Y_(Z*XaTCC#eA4$Cy8ho8pOT zNTc)xBYJk#{qYK({wMU)?}ONHG+*gQLi}nr4QPX?h1Y0hV&TuZOvIM>tLWYvSaS&_(vlX zo!_X~40g}oVGcV|*S{;B)-iQjS0TcgRpwRt$G+t40 zYtAf@bP^N;LMzn9mTgI13L_^hw^+_HIM8_5bu^D ziiJWK9T8mx{>ztXQBQ4NARcp zp9mQ~#P46f1-dX+^Y|QTTQ!f*H7Bd)!JH&9Zy18d%-I!*Wq*cFEc-KX!kh)+FlYC) z{jHY$K{=NFAt@yNa9ePm*3DtgeuS1Mzd9Cg{0R6hw(JijTS^$kmi<9eVkx%l4>AH7 zgFO_-1$!V}=In&R<9qnJU=O6roP{ZQ*RucJg~#_#6srCrt_$`+y3ASR>mJ{uCBA_& z8+%pei-nf`5tyP(@l~1c6k7Jj2&tj3y()87!Bv^Ld>zaF`_!@Q|4ALo{u5Hm{wvV@ zv1R{V63hNc$FH&DF#&t1qQjg`JD$whwBy&JsA``cO z_*u*T7Z#}g-i7vNJhklqJeoVT?2r5gfx?vxw;^}bU??cuN^!g9?l5N|CN>hO*t^%! z(vD?+q*4RF@=t^NHJ-zqMco~+2cZM2<}nuA%>;^;eT0Vz@DS1)D|0KHlrfm9o?Mj~ z?jnjIjIpXP2FWn3(avvUfqf2@OQiC z9Su5vnI7M-MEO3#tI7^yy$U3ExTD8`mkFI-kdUGDj$RJZFHguz1bD4& zej+BG8TOqD0KhXbCMTG&ona#BETl2E((^iZ7E{kwB=cY7lQvx*ZiveUedEe!J#QB3 zRpM!3pi#-f%-Tr{1CoWARilN8$wQ?upjen$bDd-UlBUTqe}*?PS~ebElTr>|Oj!i^ zkzs*Kzv-bJzwyTeLGrGY_!qu`THauFdNT=-9Bk!4Em&-flcynZp8;y;z31x%=t#)| z$zgC>1lb)SVgxyPGY}-ESK|nB80G?2L>ECKw-`Y(V?~gQn`HT35u|(Nc|!;i2@~g7 zH5E|YSgfKjCagLAeoaaINoRn$1TUA6<>Ld3yipwS{xUGbZ{I=7snwv7sr8ga9r?8 zA&!Hui{n7LIIcw@j@zRU$Bi$A4G^R@UOHc@7LAgwkUN+xj#~s@ zJHVo2=^GuzXRa3ARkEU&@t*;(>5XdUk25~-k%yAA5%TvLAEJ#U*$5?rjQ<-YxdP|s z8vl7E*?T1)8UMFRas@6q!uT&JNvK;g(D=Vok}GijJ>x^;hADFe&aX56OG&+J__@jcKP9uRrsGgK3*?k1es47eMoF`8Dy7|? z?+vIEwltKf%rAgD|6>y(gZu)**v{Qe*`J8ah7lW{?tal=c(;ON*VIH0s2+Q$q zO~?6@krQd2_RiuJNhMF4GUO%T@udnRHprB{McRx92eI>RrtB{$`zvtguQFxGU)&|r zP1#=&YOqH=>CWFWCEvt}c9-L8Gu_&I-fWbx?TrXR)mnBzpojDb^c9h`L1*5^6{V)p-SW_}e!_V2D^aN8vHXy1w=jE|55g9%mm$P@JtYgB{gfWHwD=U zc!sYFof> zDR@>EW$?Pg1Pv5CBSyX8*)laZ8$8?a3Z9v0{ot8c-38C2zXW(jI}k?2_7C|XyA8l| zV@%L31kbjB{}tdFW%(}x&pKcV!87oMWrCiJFKOIRngf!Ieu?d-?Y=pjCr7^oLM3%h z4p>f1tSCUgw>`q+hSD5(jL}C7F(U`)6yb=2;oBdP1AdIp^x9m(3noeFV2QrZBlOPm z%=Sd8V*wPQTizX*m*)QR@9I%Ej>d@<=M9jfZczDmK~3!_SIm)whReK*I?bL2Ny|Yj z8_4H70Y~n{3Fdk8TUW^Sb33zCW=y9go*B&C;Imt22v`cydG2h_e1ns=5(Rpemy4p9 z%e^k3W+;X5A9a;$77fghcfY+Gii^ttst)V4=ooNqPeBWQ?s*F;nZRV>{MrPX%piA{ z87?^5s$s2^50`a#TXMLEwjVk_#eR?%h<~{?i1S)wj8UAR&zyUVS1*4wixTbcdx}@eDMU4*-wy z^-+1UqKIS6EiK2W!XS>hr665y=@9$TX1S$_QJ*2;=xw1`Nn=`EekJX#r^WQVQ@l#M&MCO)>`|@BDUrge*WU3Xn$+Ej$ca=6gs1^4m)R@9IZU@W%s1xNn!3vg!jCODHo zKE|1wW49ag-fPruH#y~4)VICeZY1mgOi&KM1myrsPz?gif5rgwt^$Eh$8I-bI{*`u z12923027o0FhMy06O;omK{)^ulmjq9Z5_beW_G(#0@l$U$6s&jsK@c^Q-RJ&0Ocnt!~e_-Gf{)zSMujED*oG}9e16D$Kui~xvI3Ddl{1$T*AHklUF2Dp?2Vln5vp3snqz;(E8&!A+T{$V-AOC{qhhX`%)zpXu3qX%)PusY5*07`!ysCCJEFd?QPF)8^?8tp3Nm^h zA>Pu}znUD#0u7h^45Faj?oCn9?=@XMbFaX9(uqYBgr?va$D(Q3Y@muLXdB&LVq3O| zf+oUtSwJ%g(KqZOW^F@4kX{zCrvo!jhhh;00lyScP|9X2q9E*piBRI^+s-bcAh}ZH zKZJrF3CG1K2*y@=0<0|j49nkNfn6YpHx@k#F3_Tmiflj<*(@5O$OdHeSC9vHlmkw| zNFc>rx4IT#zKkq|u>niUvBUl&_XY>9avDS!hCs?b? zH;{<^Mfkt;?X5l1O!-SOQ>iA%<}7lv^2s48?wy7zc*`PGyUXgJ3jfG|>sf=pspfD{ z>+)!_-Qk#us(!l!!7er<8Okd~{X6+R;XcvOqKF5;>b=|qkNKta>~eVqb@v{Zs+Lwt zRsWV$wd<+yv%d&)b=h1rMVH40`0UO885~)*@ric(4_~D^l6u>(QmT?62l-$XGR-Pb-FESN zfEt8-m(*^oHL2c=ceme5sXmPNPrtWPeMv3#`zTdSs=MD;seYs;`1oREDpK2=-%qLS zy)63039pD3dWzCS#~)+UQt>92%(3PoO$Kc%?c&=Ab~&wDCq&f6NM` z-1f(TnS^|f$cys0xf5Nh%H!tyaH{gSxsx5q?l+I2hs|RduSqu7G@|mj*@#N0^0+xj zJ4sc4%n#8?9&%IFAM&M4@#t1-7;)F|TL@B$BW|Cm zwhQ-F5<29pAJ_$%#Zt%4tRoD3h6mskE_Y2 z+U%zqk|m*8!5)auv_n&iGM|~8X@}-Swq0_j9h#Gn*z)8|J2WRVFFDg@Z)KaI`Ju@j z{ut}`hUODd?MrQEHJ`Z93)g6^vdt$h@xsfL;J`QUgqPzvN(X*sLwJQ!O`A`gGTjT; zqKwd@kZEvRc%{bUz>oF_uVzQ1%|T_>hu5Q07#dtETVFhJ(e+ko$%=gMv!cfaVjwGsO#kq4^C0g&N$ZH5dvCRk&SqAI^A3hIb;~WV9_P z|6Ac*pwQBLH=j5gsobln)WEO&)9`+cHwKh>ID9~`WFpcOsGjz79<{q+Y>fW`w4SZcQfBGc?#iN$N3nXt;%f2`|&O zZ)kdhoQ)A9Tg(^)?QaW@l%c#G@{}}M%9PIv&2Fdww*;2xp3n@(KU=`;hLDhozFZ&t z)gfyhEk#CBUjKNO^p9ggg9SFf1JgS+G^3CJ=AWc@W=Q321E~&HID1XVV{DQvY375_ zj8;;)jG-Jq?x0JEzaTVNfLWF*#>En{p9YpS zLLyv}HPR%5P}~vHBsr-_)SpT}`LWXZ@+QBxbj7oL`sax6f^@*-m+*al8lTY$;@hsH zeI8!tFP8^^7EEE9G&!$3?M-&;V@z}WH`s;cS7r_e^va)1NQl4LgoXK+EATiUkZ_jA z^XV>6`8!IYHcn&?uVh-K{?2Yv*bk4vVpg&%wO5vK`ryTnx}xEJCo3Xm%rSS8{Fr2} zImj18N2crU{tj+J=+a|8LPE!3^dTU*yThm3K(5*)R|OfCyA3OiK^iRxGk~7K>4t_vJDjE)42(CT%Gcvfx3*>)^OHB8 zhc{iP>o()OdCwfhMRR#8Q#(WD?XzfPnCkGn)_Z3$0KCy~wtP8TX`NP$d}Tl^>6=M- z9UCJ0V-D3-Lqxa3X$=wmQRE|sA>2kRHy+?)Nj6uiSh54!rCvis>xm_iu~j4gJDgu+ zi0DU1%L+#R2s1npj2w%k=%s>@pd5}ZDCgW7RC;cG1wkag-^?(qm}VgUZkF1F+8P0xWp`X+VwqQp@ZbaD^L45J_LTZ+8Aor|G%%h1`YyhCl89S-L1aJ>NilB)kpY*Z5cw*I)N^a}A-9Y8-1^KI zM9R4}19SI?&#fub>F z@U!NCum`8-)?queIQ*;{IbdoprgC}!5E;%zdo!Mz1NttSJ23~u{8Dp3tU-h3fX+tS zA{A>62rZqeku#MV_V>10F)+y_`a~$S4Ou_*3tQ#y4XO zD~v%hjxiEDSlB`$cb4!sfSy|r-n+pGzh9E*chf+c`7xNQR2K~|m31IB2lO+$_F>tN z&#ixkjUqX>{yWA`d~W@Bos03gHTsfsF+R8ET-40&lp-^kgkw9J$yhb=(V9#w7zxr9 zj0CBOG9aS#W)M-b@S_1B4zqFa1HsZ)5mBfyF$*{s!jhv(+%0Lh$NJW%->oYzMxt`Q-4v29TQOd2)Bo$H0 ztJgY2xrSb@B`7i zoNvDu-T~(XI9t8R&oN2Cnvnb%7Ma%14UO7kH)w|0)%u)>pcQu}aPw)^KLSdN?((~F z6DvO_0!WEA>Ly?QLR0|?A8cH8%DYAYh!GaU5~eafss#0hZuzbIMqNN5&87@l8+8Ts zkgh@HOCk)Z=;!Dt`t^?bpnNNJMQZ&@)K~quB9#w}s@0DxQtPG>xLJ(H6{&pJsK5Gg zMJoR!0!NFfa7AkQX*58o0rcBD!q!{T3@efhVKit-XX!5^NB!LnG(Dgw-g9HmFn4K(MvMVs{6*7G$??CFK3o{Xr!RGX2gg6^n3# z5{i~@m05k`2{Ib;%sYP^@zb=>RPq5D^Yx7BA^AU%m3>pw1^?dcbVQj6vS4 z7+H0aS2O!=cZU5Xdy9t4sNvY(=aL8{-g+~lq zD395J@N2L468Kd`Flm3$={S7<3H<9Y1<^?Dul1$D_Q2^c6`vb3Lauhohi3EuIim;2 zNYxsR+#}@*TBhHr$RK9=O}DlqA4r*g7o|+U2L#COkMcf4F!_wb^z%L~Ll$a%99H+Z z;al60Yq8-wOuyftD34(^?fYpWu#ayj6G$`h3wV^>V*X#ws5HtuVM_C1wqpSkT zQC0!vD64>~^e`?nmzpTp8;Kvq9F*yIl$OOZ{f;VR`n4=%`hm1eKP2WakvbMI{qAO2 z6_wp>(^aM)O29f=RQ7e1TaBdrJ(TGO(qZ~BUzh2JKID=c zGyUciF#Q;qD{##8JE0Jjp`U8#Yngsa3YmVF)M5I)REO#Jy+Wp6@OH}dYmVlRnSPHa zOh0y3!t_I}Ql=jW4t(=Ya5;uL^onJ=shB1xM_J`nI}McShj9-x49BEo* zl}`$oe!UBre)|@nvY7>_4Ed#~EQ1<2s0_IeXAY_j4My%rP?qV3mQI;|K2oWHpJnwI+8ALKn0~b5Ozi&Z!?@W+!`0bNKXQqK9^KcyIs)w~YJVDk0MP;PVwrd}!thE7tw#)SU z4Tf9H^!ts@#hB@bcHmr$nSPv$n%N~Ra>!&7rXQzA%=D|)WMZZtNSEmcW|_=ktE_Si zhL3DC6T!S1Y76f&{Z3`dmg&d+fhDp`KU=_9Sp~jaEMjfwQ<0IB*DQCLe!DR}s|}6G zDCt=n;Gb%RW80A+S<+Y=8l=ng+pUo4hqAb+41rx#2GT`kAh|@u+Rz}mCdAs%AQhE; zfQ4{BX%fry8!BwQ$tb9Fw>#~4806Q*ze-Sn2rLzK;~PRLpuTr!5LPV2?RoLk~g*FSRkM5&q?Od z&`VZ*6KBcs#GymbGWR zMcw2%SdR87gnJlZF5Cm@!o8wyGJumk<3-araIet#O;I-)TV+ucvFK$4uLtU!iVt)xS(F;SGO70a2dBT6d?i*J?3`!CqVPX-AwSo`ikjD(I|K(dx~~2wV-3 zJc7jTO-z?Kfhq*p9SLmI1iEMfOD6;FbuTv{c?P`n1Q9CizBI^)@f+q047Kz}073_7 z#C|s7U6t@778==QrboMkUUmFtP**qfw*P||Aa->njNgcR|=?YZw>|tJCF;M1GzvskPFn8fLw^}aM(aGSIc1o z#au0i4V1%S1LbhoKsg*XP!5L;l*3^IRmfrE$GzpSHEM5go0)?_30TK}1LR^(`eii` zUmWrMev5>~a~4W~V=HCxK&ZfD;N*Tk5Nvs{c=$C&BW0kViF=Mxmc@ga!-FvC2fg19 z@$8;|0cP^sXnFU3zqebW6e`e{!zZ#wQh9qM9o`;Em$!#xg)d-vdmtU&UI_l2%iCia zkaEo11L^YiPAuf@-BifigIub7np+iY#C5?QNC)gOUzfLsmT-A{PZsd@7P#jx3?(e?S+tzgXa0AZpW{2JN_~yY{y@& zU2Qx53Z)$0UfS_jYCH$*vEw;l)(6+auK?_YhZXSlRu%B}AX-z+cq-7hp@6rC{8HXt zofB7djKkZ5(9cMuVtIRLX@|FmRBGU7d3%WG@b*BZygl#TgtrGc67EO73K@K!n3W;v z)yUim$2<4Jgad>P#~31hmBt_$$2g4weafAgBHW zm`uXkJDbT^fxfdfnV7c+(&g=quyeSsA({~Ydm@ck#}Lh%Ou2qTG`4^-Z*RIT7BO${ zO=KkHEj)3(oatGCK1@a~KJmRUKv}GC%-aLW)h6ccfpmF$m+N{G3-qBZE^iNkUEUr@ zm$wJftcwEJ6z$uNFz+^f0oPL4b$1m;w{IMx`7?fn@A`GhB-&j#i+ zeN9Sl)ng!1M+X`F%U^E{CJ9SIqs2gMqt8hZ+dueLe{7{Qe(~jbffn-xXe{rTSdkhA z4EOU7!<%aI1A823y0YRQu+p`eJ}Xdhpk(iZ=$OeU9FDrw7qrfvBzc`uJVgf-7RztOhbJTv2HkMhSdRJmES3G`ot21=Cnt;O*h(E!%s z_)0jf#qk^E%%d8qtmE)r=R*HC$}ovqX75QihKi^D-WIGp*qIQ-B;96q@K zhcmE?!xt6eZ~#yjhZo+n{T1KOh+3s*>>wN*J`nAW$!AR=fpTy-SkCqX>`Gk}92|~Q zPX~uXY`&7Is6oiD;(kVy+QH#R7T|ESw1dM@Y6piSo`b_dIXHY{g2PAPEIhel#`_$2 zN3WQ%7RT$kpAj+AD`q5y-p{BpHoc#58Nw&`GfH@G8DW(TuUE`4(d3F5%ze&Dy`Qlf zjzzL$r;?9y#SGRyto|_$-`x8d(GCs{-&XfC@?)N0w?2#Ga>dL#pT-6g#hOO$XS4;3 zarlBl9KH-0N#ktx{fuvDg<~8J(#7E*T^x>C;40RjEG`a5U>Apjba6OH7l(s%aX3gl zV}BiZbPwrIi^DhjenuTIg;&gQ=~f(mG68hY!_8v+qg|dpKg8elz$(Wg!`~``eM8Dx3H8t{@jN+c- zmC=l>`ZmYkAO!xsX4A!H^OBT&(~mDA^VF5BRwQ%3%+Ka@fP59QH7%tz!>wv+HP30@iWM*uz_;7Q>tr z9Fjd8gTt*>i$QWOI0Wf}Lu~jiIE1eY4nex$Fjoi;8@H2*xGp#Z>4HP#>w-hD__^|% zPyffPg`-v}I0WHI*TGznpy*Ra0>w0U|VvxH7 z4k0KylEeI4!Clx4W)y(KLMAQZIp7eK0}ioOTWjI?uBrDrn(i{fgBO**Z~(zt@C)Im zB8Fovd?Rq4p2%yAO|6B4|KL~)XLxTOA2z&N3umIKweXFSc_`Mxv1F^Y@LN+R?UzuC zK|8qM@Ied-&Fo8A3kQm-7aU^a+|ui4Yyo3%ScgeF4;e{$3z@XUY?et&)BP@!_GPVb z3=ToM;1Hw>4to`XLzKk@hY0L~Ly#^w1nGi9kS;g``DN8&biizCExhNv@H&G5wI4A~ zZKnD)pcUY+{LUSqQ9Ogk+&q;({#=mx%Scl1fUA%dYmwiBNNWF7wz21Pcx!+8rJi^0-bEyZ=HNWx;;Qy* zKoyacYrlr~{8={JMr;?8_&El&1Hb|!h`|B)cNJT&J_TdjvPC4dxfaLKU_~T_&kI#$ z0j_e`Y=y_&XsIHSDk3T3llZv1ywT%sTuY>?EJY+0A9sI+NUGNk;SIzf2LeU?sW#Jp zw&$(b8<1omvC<6Q-A5#~Vi8CnDUd``D^}C@7?OE_^%Xw@2_yxQNNUCXL{b1xDUu?1 z0+L$s7a}P_Cj>j8r6MUprvnv5?PYxqP!tuD^A$zKaWm6b+Az{=3ze*TVy~ZFt z`^$gd^Dfx22&2#(cC#a}aQ6fnwogiy7a?N0%|xee%OfWoNL6h@u!T1SCVAc2hz1pyER zB0m7CzyhH_2sZj#CqSq(CD_3g!i+kLse4{+MFk)frO*MPYIh(q8e@QMjAst05LOh$ z(CIg=LRe8Td9s2iA$^=T3VT;Bed$#bE|Ib$B7Z1W?e!?s36&_ruUH1Wc&t(`LIz0@ zu-e~iaY0I6?|WSkF5zi)#gSow4VRMkgl6MTPNCV&l9fF2H+tR=+HC`wvP}fZW(1oG zl3j_~SV6L7a9TmKD-%JoM$Zbt^yL|w)gjs3v%*aU$)+nKrazJbw>LG`LNNh)DTfP` z!{H*s8Gac(D+Ki=&I%FRIV%LkTjp5R`LP2t*RuT8dN1gJj-Ia0ApvHsgfXB zIpMIXBp{tr%DSo~ECW9AV^tE6?kVMog`n^zd&po#*w$}>2;2V^RT4B%dP)hx0flMD z^OQ2}__Y|mg}gPyb9ifosw5lHdri4`!bN0o#zQdJU(A*v)c#wMyHJf%!kNzzkF8(vjOm}sg>VoxbWm82Rz zqDo>B5aMQlGp+^a7wx5sw7}) zvBH~oN?Avh1ZCOQrK7`r2EU?r# z#fM|KZsS$Aj?3@Q&1s}o0bf<`YKl({-_B5f6;jQ&Ot%VmR!KCD2Ry>MO2HF4S> z)@BC$2>~ua5?5&2VBbmFckt>z5R%$oB_mMG=%hnLPOW#V@G(gTVfe$iIB5w&yu^r4 z;RT9u(ghL`ltjG71FDRy?#f%nRD$|5%J>OiTiq4BCS`S3EM?K*+j9O{{vy%gfmI1Q zZ1*m5v%eBZxBc*-%|M4}POGvpwqBJD_*-*+BV3@E#k}=Y;~+4T;2vwu`KiW1mcn(a zagZGaX9F4sybsQMqYPQ7IX?_g1&Y~y;E`$^WK)fU?0)c>(S({JS-B6+6lxssJ~+ec zjPyP@1DR0)ioE5G8Vw2*V~YES-UmlN1&Xns07c#hXTDJ5fcL@qs&T;k;9|`Qy$>$V zRqul%#a#71xHwn64~~=qMcxNTN`WHpgCnItk@vxoQlJJ%cDS%3xc0$9PmCke@itE zcpseqIm)c}!TAs?XASf|ILWC1D2Djp%dDX4X^5{q2~D$d;n~_Sf)~Q?E1`HHEC7n( zIq*yHLU=CHfMkgD!)@Vt8c*>;NTB!;THfj$hxlO3euULHzKL!hl$4~si4G*!>i8x) zkP%3G6CEp}Kv8a@BdI`9ZlVh(#Nupn6CHgOD9TNABo!#iO>`lYT%DWfqPt_DC^ykX zPsBh`ZlYscJ%p8;=t!zKo7_ald{vxHZla6O5-QFnH_=5e#<~u26CDFnbj9987eV5G zBuTxAjw7Uoq~1j5C%O)L6J0*hIo6x#_DOV(o9K3t zj=vPyaF|HPuhBl!j=xL^+wqr!N`PWm02ITuNF(j|D>a_&_^WNlV;Jg9bY7zCAUDy$ z>|z!C^d`FS!dRS*H_?T6p}iSTZlVjHM{~<1BD{%?`Kiuv2(|}np!NiL6CFE7fg*3B z3$gEyL@Ig{U5J)eT?d-IU@A56)0^lRPl00ifTp5AkvGwKfVWnh4ZBh}p*5?8hiWd6 z#BL?(29sQ!<6T6YjWJdg#vmETI0x#K;UtMXN5WIr;jV)41-cGDN)mlO4WyahA0gRl zM1MzQ<5OLS&xE!>QLd%Seun)vxt5NjFTR#;q|QZqEgf5hb1}Y_j&o5m%jKoWOeVgT zE_X4L(QD~)7i%*1S~`-db1c`=iQxhU)@$j!$(X~!5*Y$ z8+$DsN#!2OwRF)9x}Ml;=~$L3#?@=-7`PYX>a}zvRh&((r6Z~0Y;r9fNv;X@S~`-d zb36$P;oZ_CR@dQL(JFpII$x?5J;1KWjp5UrCcf{a11ys3o}yPJ%s&vM_r~BE1T2NK z>Ev85Y!JA6%=4O1AGzHxqa!ee#=_b5sc51N=FiUWh*9+!W6a1+M~o7zByH}GO3+97 z`Itg&_bq8hCz_JfIpDx~(ZA4=Qo#J;4hY|FyRs58B!9{fGfFzqso~onQG&x+=}Gvt zxuOIJj+BnH{NDAdxgx3FlcQ2>N%=QAP4!B#8|7~Sge^UnZ)7xK8_$0%O{X@k#~RZW zyJMD3;Z49-Q`@G-bc6eIxZ5o=rV6#>`!*LD(;XrEOGv`CHq#6>giD6Yn-O@^_7l0T zu0$kPy@9AeyVa55-5#YqQ2sW%8-qskM!?T`~3_rb4t<-*z2|i$x zFvSnyc#`4fGsSl6nPTg|GsQN4V2W+VWchv!Q*8SUrr5SKQ*3uHQ*8aWJf7`mmf+du z-BLcED`OsQUVyzd9?Y5lzK18<21=*Jo9MNm3g%OlzFtTky76p zNm{ig#8@qTsoRl@p)4MZG#nCml)Zz&f%_YSk(l2f!ELS=cm5W*dmkchZv@}}HFbC0 z)dYJo0fy--?vml%kDP&o@mhkzFeTl1J>@&o^?f)2Bdz>=Lp#&n2)KLCP2Js41dQu& zLeDAqLbJ|=i>D>-V{oyq3Gf||f5gM&?%lxzm!tepbH^Otqx<{;@Wpl>PUt>uDMNB= zXSsW$r^MZpZ`Vo|Yyokx5LG6)l1XrCg_GbKD^n}KQQ4DN}tjTG&(Dx_rjM>+dEA- zk^W{3L+@-@Q5N--sc3?Bqf9s%gJU-QU^_LO!to5hGZC|0TTA=PJ2U8ECOncualrg} zIM)cLG8un)8AGnIq&WoXw0XpY(`+8s$!b|5x7X)~a-|6;U_EJDWv)Wo@@sxj7JpU9 z@>$Po7VRj9Bv)zEp0aUAe$9hwh7MY}-HzXxIZw%^AgcyWTL=@e*J(~Gch_}!2j-Dq zg5GK~*xW67;L&UW79~jI+|7h{W}_s#%>T<9f-HI;n>TmFb*ie(jJ*+M#1~Mj2|8YQ9Vy4l8U6Y) zf0C@#_s-{t__NUAD%e>#SOyHe^H}s&t?DOb&E}YiyNM=;4F)uueUE>>bB2xaT=UsFSXbct_U1L%|n9M$Y(a1G@6Z-9om@C!i z;-(1M7DYT&=^xJlje*32H^y8$mqXwwV@_vIndLV&0gXXzzRTKYR{v=k{a-ic4A4h| zJ|1+NHpYC9@iBssahsOLp!VK~0n+;BEcL2JPHjFka$JX;u362TtBjFvIM2IwAZV;e z23ux03H0emxhqmWmnHF+4*=PF4`a@wx4*pSF4)b^_q^>!4Fz9_E^ow8=?pmYw|Gdb z_Ye(%PPz7d(xZ*Jkl{SybIF?Tznrp@-`V+bDu_~^cS z9A*zt`;Ekd!)-Yo)8JUhOUE)hkHcRrlGvH!>;~f>&8pF7@KF4LYB|RGpuN>+=##aX zp}&LA(LEmK>gNa&|)qBi6WN$fR8iz zIEjzNd>qZk5quoL$6kC4!N!>XxCSnC%g=s?8kGIqUtNQGmEBF^5lj>MVv+pW$9(Zh zX7w$Y_RRO4+RU)4F@V~d%>C#WHd2$;qwpvJw`~|x{})m(8G!gry5iMxI><(+T~aC*e3m zf|bfMV&HZwO*jx9vl#gO84SD!0+*p|<)>~ExVH&+hsQ+{_*n*?57t^VA>`6oew{I+ zLH!wvBe|H-v!OXnUy~XYa{Xi=QhI-M_9Mdv!6kY=psmS*FcBWTvB<=~lBJ$^^|H-i z?>5ZS^>aw9fTx?O#+w;g~cKR zpp57YTQ+Xdpp0dT+Dlt7*s?9rS{nibz>zXp^`_=!b(ySz0nmvCGKRgh1=gLE$r_k_ z(BR;1N_y7>auWwgWwOdm&GdCeG%+Xs=M2i&tMp1~1g7`uP)_4v1ZM0l_ zpYze@ohrn#b}ObKU?}=E!O)?LQ!w-o_}O0xJ`Art?JEI80gz)I1au{EQ&AG~KaGHR z!nHX@wYQno6s{c1bBpdV*($3k%t_`!fl0lswwi+ExF%)ml}Drv1TInWwRH&Gh&^q}nap<(eRmGbcd!=xuUbt(t+us1;=kK!3aX&T%mI&?H{WUs z;^{GS@Br3fPz}i=)@wCI@k#KabIfe5reM>k*J_GIG)?e<9lS_>Z}5hkAQJ%%CIVVW z1hk1fqFPO1qV-!%sfN!Ce$zYhh+o2L3I_znb$o5zHd0aqLGd8^>eoDqzI^EP1x z4uR_-PMC+R*?Y$>OK)rt+wwLHA@F5+&6@@01pz~b^Ag)=iD*bmNmR){YL zPOsM;Uz@NOoa;waj(H1|>Ajc|>Af7fqptKGt9F`{ zAE$FD%sW-Noltg_-plQ*`SA4LUy&m&MRmCGXBOtj69dIu{SG-E1A$_$*$Z-P6;RDd z?Vn>$fKutb92k_ORC+JBt5Pbxmm8*3Wqc=ZZf_*6(t9~He=5C~Lk~F8dpR_w$tCuJ zbNec((t8G7s`i2(iVd0M4!|pw-ph@pQ#&cUHaAX7px`Dq9)5}RUhY6p4YGHTc767O zb2AZ1**m!c_D+uM9khc5H$&LtZ@ic5j(^JD$(bXt7~@(Ceqlu~CnOit=zxS&8M>Sd zSR|+5CTFH->MBE*lRJ6wv8LcAXQr#Kf}5O~p`^;tgo7`ne zD0?S&IVh~$GTk=h$ld{^S~j`0NCVJLronBwD>a_7cXC&=qht0??s^Q^AXc`>{S<{u z*gLr!QI$@y3|;OfP`k%6bh(>B9UjZj<$j_0sSI82Hm!lm(B*E|+!fs92yPO4!MVFY zfsv*%bh&#ql^RUm@=tU3Ydi%vIf5H>uY#N0qoDqg$k0`@Nn5j8c$feWwHI71@I9!< zUNB;$_JSpb+6&ego3eM|xq;X;yx}3w_$(d2?J}s#^Gbikw zcNNWLugM8}2P8|H`5?zL9bVwV<;7f_GvCH!OV~R(gVmUgrQjxKxZ5GH%FyMgs6bL> z=yGO%B~^wlXRuJycQ{jiDQCtiS;t=RLtAPuSO-j@z2JJq(b|L0GdYSzqC&syFx89p zgkxognO?LP-v|Ogb)rWwJiLcQ94$K{;>u-O;CQU>LQ`enQ%#&yn;DOxc{8@Z{2iTe zfdz&_{tmo2s?*q%xTFHI480h|9M~BNgfa+_-p%VPVG@ob0>mv%;n(MN(+Bxr1HYxZ zVu7cG8DDuU1XE&K5zTC;a>n`I3Bg0d^?5J-q##pLfWe;{QAvh0`sF&;c2?I0Aweq1F& zQY7z%Xb|R8pAXF|ObEyLl~Z=~l<>S?bgP`QQ%X&#oPw5+fbhGma_UUj-;2plDp6lc z+;#|?`qh}ceOHqACgeFiKu%DSnNL!uzr3pQ=p>C_?pAs94k`6&<*bCb;|D!w4X_mB zFE_8U@R{XLdL&mW=`SBtIR|wSKhL{!ugW>7OH5r=u_*TQmp89i6nkZsua`s?#fh|K z*{@6DeOiG&cny7UF~ln>ry>m@a06buifQxF$=0t|&(WUwBZ{?*MY`1dSxfkmSBc^C zx(ee%|;m*JdVG(tWG(Uw}KJ z`zn(;2m^8orcj?JjK6yyVYOyp{BiQm^j~i>ooX|ahQq(_Op_Vj7bAEy{-*SV_JsK> z2QCI@$<--|X5hg0s`(6FiF7oVJ=u?_NVo9vSS=W$)Wpi0U2X z`JOj%aQfM^l5h2QdnfpLgYdUQh7S~hmuSN|B;?-Y9e}yt_gGU2XO{p$mi-fNEAQjV z;!Tw+81pwuc%~6OE?HfaX7wK4+F!{lo_G5NMV>L51L%$5zozc{neGK^fz^S<^|Pv;Q}ZIvxX3fkmB*h|fdNKKRg(e%(TRP?A@~w1 z@{IXe_41duw5^8{n_Akg9%cF)04>~qIQbrPIKarI4!77GCYs~bn( zgVC5>h(P?H`aM5wR5~($I|0q4za@aCdLg{*uN439=u-qVXoe!78Ix#v3)B67{t&!q z4rnI0aVN$c>OeTuH(3T#(HxK$T&B}rIn=@Bpc)fEYz#`h9doFI>ygUFm_tng#G*MM zFD#k^g2|PbLro}EGza8Dsjt=?Q1#@{%r>0rL`=1rDc|?Jd!7OduBHQ2Z)TX0z)f%C z)q7%X2UNbs^X_fh3G6I52%_$_d~h)VR6Q%a-ljI?`$+9-_~ZODzf7VpveA!mjrE*v zOeMe^7=i`Hdhi-7zt~uhr3#Golq@86n{q*l-JU>+?60&EEXdW{0J~+uR^H@#;PUnv z9G`dt;n{lcOeZ*pz}fQU4008xy&|r@`-7hX!_5jiUInK$`}mX`1AsZ`y_)C4xj)$C z!Ah$4{$OlZ?iF!=LK*72KNtcE$jEcAh&u;K;{FXV6wNs}pJ_I6mM0g#Z6(fwM1s9P zcp$ikrVIYAmTJWE00H>-{y=2<-=gkuJlpgxievc4qXF0)>nM@oA76m;OqWC+AlR2R zi>>)^aQdsHje4Z(G(fu6}D}9@dDu$9tJ>ryJn|`>W7? zK6ujp8#Zk#4e*|b&nsn#B4e;5P5+25uW7B z390e`390e`ftjQQm$Srrg&ji^%L4==4}e-WBJ2nNq4EHVwx$-Mt;MlCKp^q}NUCAR z74vn49npt8>@)U?xRYXefPnG<49v5?Sl#2iLUj-HQw@DfRNZ5h-)%I=%!R7%abq2I zkN4}Sd#ou`_kabJZf|Q}W+;FIn>wQI@mj3zA)Q5=I>8!k+^rFI{Cgves~@{)%V20! zVxU;#i%rqupzIZK!(w@Wfbsx1$**R}eS@1pt%&6T0-QGZ$WP?~0>}ff1}YB_+^$tn zc>oc1JSDcN6Hp!iE$!SNj8s$}Ah=)SsXRdNfKnt0s4-ilufaGvi>!pD503_9>4tC0Dsx*m} z2iRY%<}8-Zmwu0qmah1SPjj{So|g`o=wiN)PUkas86M?Nhmdyi7Qxy2-H=Cf#0upb z!pq^LYG`@K@CrDWF~F#BEu1UiZ25=qN;tpIx8DozfU^e9R&UZel}ACZ*3S*4z+C|!ylX^|g%z*_ zRO|6kB`EOlD2UX$FD693DxtN3YVdlpGE_e8bH6jBb;33Kfy92 zIB5~KJ}C17CmCV;_3M!vX+Q$RPPrO?&jNOyhA>l(NNn zkBHTrDIlNkB!{`XSl_p_uRlj?LCCZ{->TZoM?{@d%M;YukLlT8Dctw`mwpfVLQ zE$R@vpfV9M6;PQ7nFcol_as850xBWYnu5yIP-8uyG7&NrP>CJF0hLH)^FU>xp~h6m zR5W~5$W%dPeL|+#FH#{>HSO3U-SamUGF^u7iIA!45HEAW7j=j&2&^AeV)t-CPk_rTBoN*_jww``$)jZd`Ih<;6me5(Te z8ZnZs`Zda)fPPJOZ-i3)nk*5J>epn6fEv)R5hK~EUz6QavJl{GuFdWPD%GzMBiX87 zlZA+GqF)o1gRuHFjatWs#Ig#4i3My>MBUapHYgGJe>L`N&^k6+p^kn{NPe0^AF+;& zw21tzb!?lfwT^9bwbrq1uGTs>D3O5KU#w$;BA)ke66@HYRKG^7V}nxt8nKQID$%dm zBJ0?xeoeS9Y6Y@E{hG$DW1|FYS^pC9$5ZGN9tdhn^=rbJh}58UY~~~%1M=Ag{hF{l zz9&?_CM?viNl4|VB_vm~*hV#yQ+}G-s0P^_zCly5QB73A58f=u={hi#pQbjd5!kg+ z-2%PPih^Kap?;0ps7|1d+Nefc<)^8QYLF@jCN`>5=%Y5O6X>HhsuSoVHmXzT6Bg>% zgoXMwVWEDF*r;~&Ys5yiqhF&os#E z!%v`(*r-mRPgnqbzR*TBa#wzu*r-mRPe^`R0)6VSQH^-YPYWN=hERT52!7iCDg7F? zQEl~WM26Yw*M!1POZ02PLj9VsG5wlQ_-U1#c-BUBr2>@LMm0#+Ms=cJqpB5+=+}gf zeoa`YUlW?)+EH9A8n98l3G`7L)oMN^EYzuVR545VKYjT{0zj!`~!ItL0C0)FIZb?gAZ;H<=Eg)z7@H2;T1&WAbsd zNr?7WiS}?e==E^;=TY}{_g5hvhr2|4r3xArhU*|;#C>^cb41TEW^HC_CEoM|pR6OK z8>2Ts>_x{1aLmK&=%3~g{LAOe!Ti_K9NG*2DthAqe&2m((gCf2`_@R&`v2JYym^q? zIP$Au(Mslaquob;se0UZPX#G_9z_>du}#H=G=5VB{Sf~+M8uo>KKJ^tvS%CrDmTS7 zo_9YmYiav#jCvKa-wkhe=>{zvQl;%d?OP>%bqzex7WdBv$&QKXGpd#-#n!n0>MFDw z{e=2e6%>|Y>Vf8LMgLlq2+jY%H>;rM;$O#dgPH;kXa6zA|9|lPzG8!FDe(_Y<}A0w zhaoU3RQeN^ICGYk_<<|CVcaCt1JzUMxteK*2c4Te@Z4hDSRwt@Q>Eeh?`SelxWzy(t=}ER_)|C0QOZ1_X|11J1%sxUr?qd^pWyXF zr2c!F%&ZZ^yMpGZyUgPvIbVD*vcip(D+;33uM zY3rU)MYS*`5bn2H%1I{kDKcW)%WpKi{*LTkkVHS#L?0~g#@d5oh7S&`V)p;C)c)I} zyr-n}JdSlRET!)sJhNgcx?aiZrBEiK(?IFDdMWgjEOCf8fR$cuPJ!I$)JpsvjBGZ* zpyxonXz~;+h|BTnFO_I35UlC1@;e}45Bv??k(xcHGR#0U@R*cDUW1TwzqRIY{LAl# zzz5^+NyNr%YI3cnj^<_RzuJrXTp(DQu)GJ)b`dWdG{ z`~N_Eh3+h~0DZw(@X)T+T>k#avYByJQ#lJi(;7T9zKUyLOf8bB6jMKxCE#;J+f$|= zTpR)qJt))9QV+M(CE$AFSJ`SzTUDExKGpLc9tH!Zci3uFX*C``T$Th-?4E~@;|TI& zYHbyUua8C-zsIF$SjpJb5C5fV3D*)!K9a9k!k9v0Y(aI>$12A)>5-07*q9ol%M8{* zE;EnJ19Ce zHa}e((mbjS`REgDI#O(`N8jP(BgMvgtdvb>Hdv~6)hx`Zgxs4mGoj{J&2>G`s-iNV zd0dly>@wMtehmtZ_ZW64ddB2NSuA35L&(M<#X+*6oz~{N#_Sc>2G(|Gphz3Az-@P@ zt<7Fqn+;3r8WDF6eu^Ar!q*}(1(q?QmN022ZfWY`s z%3q$9;S)#vbsLaa=n{ITs%2Q;cwou`{d%l6SqEGMVVi6Q0LP5B@WQUqBD77mi#FM> zf8LFq42li$>-AME#je^&zkW@YwEhR0v*VQ7BBeD5_cx?;n=WZ*YeG-7szg)}Z2Bj5 ztb|2%5KQ!mF_q|*n3&rI`JHclF6^>|>Y6cmYZokp7ijxD@k|#qEC^QWiTArKMYM~Q zdNSJuVp8a=h363q!BYytnXE9XwdKmo}bJ@o*{l=`Uh*l!BO_I$7qNq4;yMB5 z%9#wVP|Dt~z1HPS2H081wN%bza5dNWm@^r0wF4it5`$1B{Zh_kP{5h|S|7^J!!}sw zP_}5;8Q%@Dq#uQLKsF%hS3Hyj+=>>p<}_4p-mxO-ca%u_)n+~1o|kzf6 zL3j^_ooB)V$jqg{N5EZm3_CylvU@)J^rwkoXYX^*d!}iDVdrP63k*9yv)d;25Ai_) z6m)cp1O;thiW1mg+37&dk2Q*dVDa!te+a^l&Sry|uqmCP4MaJkJ)&M4h!zk9*_=K1 zwbHotT0shfI7PA?3ilC ze!<_e=16dX!P9#SA(rDm&UOxz#(XzvO!7iJSbteGyf*Wln*g8pwAHVB=FM^)&{#ub zsCa$-Gx4MXiPy(J3(rNih56}~MP4fyvuM^ZDBnZ$Npg^V&2%gBhEM6wKD5!SVEzB)4#o6M#E6oj1CWGVw3DNf!r zmYK>toA6U4GYtvMXfhR_PS!a$eM=5P{1zXy*13QIrc1O144_VYtz?dpms9YeX`M^J z>&*^ezD==}_Tdoti^*KUV06FkxLxxgrYvqr`S&*E$DNcDH&RaANI7vM<;0DY#cfj-x7WPM9JE{(MMvAu zL3^qbbY?%zFxxK8Fm=CRQunitJ8;}cOyX*W>PChWC$cZvv*VHSb{xN}@JVWdmKagn zPczx+GP2U?_00LLzJnO--Bp;B>so;g8dJ}FKWe=lJW_Lcm&Bwtk$&sG-?A3J4^}Od=(s3*tE9f`{jyLHz+w*>N0b^Xu z$CZ5C$oF^P{Vk*(?10qY!zOwOUi*K*>o@4YLh_qW;ngI9*LVcXjG@K7CYAL3hvz-t z6pl;?M>QR2is$#CqXG_=AkznqAJTzk=lMJ6*d31FdL9!UjzphDqW*XJIG>Np__zV# z{9k(BZ_DU-5RN`{JOxLM2kTagu-q-eHWakOYx5jlPp9KmIF3bp^9~=MFbaCVtbg=WlrZ$8HI)kM77gN|8n%%)=r9A}`rko)v~gb z>6QgaLg=4C4$-vKFhDcBlQ>MEIk&CtnxXKdTJ-SvuVsI;TUnYe>o^>BY?Y?W!^rYZ zW`~vsnDODkrH7#HS_j?^h})(VZ*Z}~Afejv9|N}+2kP0O)G$33q$7jUfo8W2x}9Ny zo7xkO}-0iMQ)jm_A5%IL zPwA{q#vonU!+0gh$x4DnFN#+ZH{oOnb2~WR6|g~kt@}C~Z-TN;cIbt%-m!@+Svr?` zmgzRuDV<#C-E@6J-`cL09jnrAfU+QJ%r5DxbSQOAljAt(#=VQa*t?`4Rl0k1kH<}q zc;o6BZ(P0HDEP!qb8%PVKIw2`K7Ab$W2-tXI(_>&JE)YRe-AVVH-hc!Tfw=~53u#X z7Qz&Eu<3);HD|{(LmkfUz}$SO^0ixn(q`it(4lU#LM%x;reKk0P`7=PiJvYR@wDFr z41Voe*d5X7yd-jQ_RxBf3&(vyyB9ZCHpymVMnx0x!Wy?YmJBSrc3~A_lMU7Gy;yRS z&a1OSR~9ZuUDA2O)u}5;yF-(77hUX~^)9)drwcBE_lj5E-tlf5FRrrMZQG}%@qbc+_%Q#54Va7%4r$GLfZjiGU=teGWszxL459qpvU5a>we z=ofr-*uAN^A=NW(g&R@#W7?Tgm_x;lNI4&0f_YJA4{axM&ZgnCHx~|m=Q*E* zol7ja9oSfa|C}V8B3)t}-!#JX6)o^f~|Tr0`lN;=BvHFgxiw_Pc>xT6Z7DZdj!#iaGYWEp&QVRBk7 z7Sn;rEZG(ylr1U<*m2I%gNz`2o;J@Glu#A32_!| zOriMO+^)jTF3JhE1!KFx8RhoLW_;7xX>CjVA1i{>N?W$FxYhkSe^xerkXW4Ka?JZB zK6ac%bW7$qrdNEVWv4v1erJ8y7E`{yFJRq7W2lH?a1-6Se2Y`8?kZoGdxPdB=yRI4 zlZsE&)Avr7IER{FDYO%INL^@GSYDU^hy}Q`aIn`H)XjFLC2>9`PFCv+0fodDadB#vkO+*kvzUaaf)f*debO1= zj<>#rL#eK)f*VOEPJdfI%oGSLq_H8SU^5h-SVTdH9b+!+z+~9hX_G-NM|Y=~@VuSj zlF~{%?K^~Lhn}}fe1teOWex9|wua{oOWR4O#%}RJe`7mQV?v&G z!l0MHHTgQoBqnpjju7cj9U(D8OBy3)ND2{uzY5VXGt!v>7~}B{gh-q&?&&gyHTNH9 zemHD?26ko-R4me7=gjJvjVHP)WREzxbydekTC z`}B7f4z#!XafWrIBHmb>1tnch>|z688Go-NT_?Lp{CSovJKZ*CRup^D?L}u+RDxx} zb65FVjwR`0cq7O*hBrb~^anPGKOX^a6pJT4B%g&8opbO?m*mS607{}_40Lt7S6^}* z#UBcG5L6{m0VU$7-QB1z&L{YhYUp;w4~Lk5WBgCn!fJ{+V$pP8*&v$1m5`=Uj#B`X5jh*;!R;Rdp z0GA7w_R!b(5T(v1Y+Zm-h~N`mjLtu&llU#t&|)tz8`BQ@_?qDal${Pfv1X zvtOL?B(r4Pla_S8Y2%)>aj|W?Iiw4DEV98A(E08cEhh06imbW4S)8J(FxdmkAolJ0 zCr;d*b{nmWzpySk8)HKgll>Npz1xJkx_pCfF^nss=PgrM5VnZ&k(>p!;J~Z^Gh@GN zsG~a0R+T$F=Js2B(RMm=V*kyL>h3?w+v**)sZ1;eZ;cKzjbn4M!1N2;Bz z?yR*%Hp(_*qtt2dc)25hw5X7C1kE4sZ6Il=oQt82yS2T6Ee|FU3eNiYCRTo_XOhWR zldD#OVp6iu7Np?tSxZ$G9|ksw4+HC+rG*EInZg6bY<&Fa>H(*yH|OrUvC59rE$=e_ zol{DbGcHzoMj5vQtPP|`mCcwn&LpkX0JJ?#4*Vx94W!F38(XT^G5P3BF%#!$f2&wK zT)GR2ySjXKPJ*ZGZUj$pQTkf=7csBjuF>&HnI-uFY)itgotW28UnJT+W_37xejO0; zDH#H8svVnXZ@OJt1X7z?o=EYlvoW(D+%?;-ABTG`<_Wu9uy$zh5S5@!-oO9BWLOeI+MvNHCu?!`a zVKS5vVvRC{X&lNBVi{|!W1A+EkhIfeOr~wX+}=Y8ZNS_ZAYk;9KSqd9xdEyMC=jt% zD@LqZFqd1gTq9J-|5~sYi}q^u-tSt!{p{K2InOzHAyX>O^GTlB&)RFRx4rh-Ywzdf zBuS+OzSdQKGGSUsYFRy;f#>J*g1@zj{nP&H`Y?W&6m3+dQzoL6Jh7Dw(s}uG=kJQv z^~lW`2%HM|?|4TjZp5Bq+rJPc=^p#kMbddK_r|9KFB7s|Xz3ZcPx}XbuN^vjN!>9_z*AcG+nL8{H&>(~(&<>|^946~NF;E$T51FtMH zcnB*#%ZUr*W8We}a*1O;BRmV?w*pQjTgpD&O3Vd4KP0wpO8Y#Q@x=s|(YAf-%-qta zp5nL8+V*j1oqz8vB!BrA&$#3%(|nlZ-#jxUR6CV6!Ru%5JDkB>n8%vdkk)b+!c0FM z(2|V5dymZCt3S=)lXOA;7IhdEC3~9*a!Og|=N%$LTSWu94C>@b7#6Pw%-} z>X_L3v^%F|r^QCkY}b6tUmr-qPM(~lU6b?_Lm?eET&7D{i)GU(l#d(Q=F=&)$z1^r zqqZA$v(wON-x6q>`QwtT(0NG*q@729Oy3@u-m!8jc{j$4tZ^0@*}w0=7oShKgsFV` zL3w{@#2%Cny+S9nK1BbVu-WR_UL$>o{s;1h=r7J6qJM69{>FPxJCeyG@@)Hs;peoH ztv@{+AM#C}a7iD>5t;m3eg(haX_s`DF@HcF`WA|NlUhQ9J@pcJSZ!Yj4FP#catU(& zfV|am`J(cb!ey=TLeN&y$J} ztu1j+kUKxOI~~Gp8p&^T85M}ye3w(zUBRtkig`RDu>JIH&dnqq&LgoO|hjd4q&$(En^9nyp`NovJrkf;cwifr4OGfe6*TZ`?WMTQs>meAS#B3&X z)|pUo+dc0E3r0z&aB0EljMk><7T>q;9w(9~_c(2g)u;91*PU{IojAO_z53jQu`i_VP;QpX=Y1 zRXDiff2FT)$+oTQmb~^gD@K3nNQurYRSuA`|2#4+Isy>lUpV> zZC>BU??4)%^QukGwR^KlwK@1b)wvMk`VCJ0m1jVH=&Dya}SmG7y2_m$NVao_FSUvmcBe{%GdBd=ZZ+R>L^ zHTsjQu3PcSkt<%if^`{S(gq9w0>(Gre+{$FMV zE7dOOt6uE#@C$Kf?5Q?+mTcT|)A}V-TeeJWTe9)y@oif+FS&Kg)*H7?UcYYrlIw5T z`r^x8_`1zEzt9lYZM=TdX78HUty{NbV$)jtLuc_P%XE2J-#Y7({94NP1O09AMzfl>^mw35)LB>zq%<)>4&v*ELz96F+_|)nQM3|gE2WY%fJ9(R9 z{l}a(HBa}}wF|QOmD-2YM9m=%L9w{NNzrUxrFIw9W0l$m#PIW(SG_y3k8Mx@@@fxT z$`TYfRA2~1I4VPSB*zD`pi&F8ACSYUPNkq?nR4Aw&0&QmA< zqjhrSW9O!mH?O~yeq0j%P+YfU+tfIJv$OJ<5^|e1uba4eeEpJbuitj&G)sK*g#?A0 zw_mq?=}WGA$$&Yixu%?W$w1#g-;0+7j%Uuz0#auUvh4b)Et`VxZ&`O^-$v_*>!w~m zxqh3)xl*DD*gz-Q?Y| zRs9i%9V3fQvVq9}i~}E*YXj>fRyQlyyk9 zdB!>@CDyo~Y=KYy3c^V>WzAPpd!>4Zt`vpU!Q2Tdi_d@A{3qxQB+rKU8e?o77& znKH~NlZmLzAh^hf0^})^c95qqENo`-j7PcAB8LDc`+F}-@yq8<^EqxK z!Qp}o$b;2@5QrjQT2XG~6e12;r{w1>Rn=B!YNMRgNwiNG_?= z7HUx{;Q&X+z8wGe8rKb|8jS_~=ZqyHXw29IQF~j>DTw~ljdxP{)((};>X)|H z-jr6_%^vc zMW@Z~>xzHFofh*KwE3mowLfIe(xByRXEf%Q( zhfdU5@VG6YEuzGVAfN% zy&=-n(pU-?dYD!s>b0=4TqdjB=HYT^#xjy^Q(HG}e%+bx!9A6hm|1qy`kU6>G}*o! zly=%^(2l}a=hv3{N(+0_mFg><85_6|{d1X}sZ$U5&4bDnvpvvt&y^myY0E8^nt>3e+EVsR7 z)hF+-{ctNZt32dA@`)LYPP2EJ^1$b}-Qrqm>-w|3*U-M0I{83Nc^IRQ9-qF~P_jkI9m&f*I`5a_JTsYz31`r?9Y;)Qma zc7VtloWU0bK~&}}NvNe2WzNEsY(Q+{dX|#7Cwv%vbjHG@w#ClzZI17R9j9$;x84}; z|Al*gr*|_x-#!fY;+xgKJyv^(_cJ{o$71vajg{yr8YPy*>tT%QZ+idVH)H)z;<9PW znXjV0^LHG#ZQ8c(`pp~8V#^VeUcdEqTD!S^o}f>E}I$ z5NGfb#RQ@aF@&=sq2TeXm?PgJ;(_@F$5f>9_!;j%;E#{h-cn$t^<;EHvEnRgdUGHPJB#^5-JL6HH6;oCfz)T$D?uJlOic^=L01?6!e} z_ai~%q#3%%N!wJ}znZINpP4~dJ-cnH?g7^BSZ!UmF+QJSJcu%;ia+A@$YFZ~2+OoD zjj;^&G+XP|VfKxG!xor)eZFr~w7}OU%>rz|$ZOI1Inp|8j{Sv)sF{4yZ6^BtJ0h`~ z+B$x7*z!E1%qs2x#mV$*JD)wBWXJn>S>^A&b3gfSY*2sabnbO$lQ@@j?}2CA2xjaO ztrYvUR?=($oCs&nR?MHh<^!l4a~?Ot1I5f7(f;uv#;-k4yWHnCZVQ^P@2dTvr}LWh zF%V`#c{a2Oi3)%$JS_l*cOAa&17tSAfAZgAVt`C-x$&$v&cZ4#Ciq{!r*?vgk6xw6 zH5e#s7;JU;e6Ib`+N^S`yZ-(E7F{2EgHcdn)mLmmi>V&`&9`?7bg}gJw)&`q)QECf)u+8W$_3SHy zA*pY@nd^gX;;aUn-5=N1bpCcw9Cv?rr1nd zISB7BXw2eIl+`MF8+7!}tTqF+fyXnDz^9xeaA?L+4_sv^K%X-ZS}`?BDj;}p0UsP~ zT0%|bi*rfP3;E|ewWtv|lu4%}9b}Lsz@;NNKr9&x&+Rv>k3LfSV*1>$?XT$$&Ux4R z*x+Y}3NNUit9x#|_o}y3XXGwU26=loahqH$J~U5sYI!mB`uttg9DSobPc^maru^Mi zD^71wdNd*N!H&iIAUr98@f7uKai7MYW%+W{F~VFQwu}EzO{N?Au7Ev$^1tWSJ_8s( z=#0{+efCr+OKT5;!nSf}DywRLO(m&GXOxY#|DQ^HwKGby_IFhB$a4o2H{Kn%TURRk zYr7+gKZs_=X5g%K_r`#7^>5`2wKz;DKg(#wLE%#FM}(C5PtO?h=d?3_k4B`d825>S zyZm~oaeQ2dNR_Gvyr|l5b))`~NZmcvC>8}^dopw&#EXM~skCft{82ghPs_o7UJib+ z9BlEcM3OI+gTLAaW}Ka@@k$)S3}0}Cjh=#Kd`L*oS%72PwF_*oBJ>9s+O4OJ+RHO3 z3!=x4RmSnFwAWt81@k<@BL7T9*x7sJFD+Xj z|Hk6lUotf-peT9Z?K(U}yOT@3JnYjnW&CH{AxdL3oben|5hi`^9Fjc9JE4%4@lFy6 zXp$bNOe@k1LO*RO)9QJ7TX4)19h39`9MR;=vUIQG1OGk`d_aId)9KR+IMmeY5>L$; z1yFz&i9YvFg~M58+NMDXxOl<6fGG&)h!3XlY2J}QaHfwCS5O8Sz!DqviK=zh`x`8#V3|H!L9NcuV@TDnb zWI$#~cslf13yA)^y)9CSnk>K>%1}c>>>TBc?j0fRl8ZYDR@6P(LH2|%5bUWld~xN= zbI5JUD?U&FN1o-HR#&*R;vNT%B>yG;NDZoKw#!u#>g{~=qo7+4z*YX#Yh#PCVK;kl1R`fk9r$SxD?7rBFgX;9nO@+ zU517-;Wio_E>SzlnaWQB%RrVE@rD$MZq{>#D;RQ|jqLKK58M{_|S+xigxXQvm zSgF0}f(&m0t`P|Z%1x(9TdcR(mlKTuLB1qq`a2n3=jj#a({J~D=qt1N(3Ac6)h!#& z@iT+B^0l}ScKVF(2V3#~*48MH;DT6B!H5dx+rggCUJ{2bRpGC&`_RF<52YYSdTrMMZ}3IZ48 zBq@sf* z-a-O`B@lOox0F@nW0(!zP>(%=e9FYskMs+lEdfWZz=W&LV5Y6Wfg1Sg9ei?=mlruc za3~-oI8X*BZ7Xf%1JDPPPUM{8sH`(S0G*F?*7=X5Gqgr?iKQo2fG(U;S_3EPU;ihkwFgiL#hvDaP;~-ZAAfVvgYMHoR4+5^n3YL zenvNBKq}5E<6YyqccCp>ah8P8N6!MjB$RcK5FGlIGY~Kp$B8cLSLhHqD5o^VH$rFy zK4-MRkI|q?7&{S)9L=wrJ&YAmxIcX#Y@W?DwSDpkX)8 zwD~lD5P*((CIW}Guy4iw3rlK1U~-PxV%U9q3t-ZQ*qKt+DDeN;NzVEAkxKMPX^NKz zx{C}wtFHGfluxb9?#ey6UlF}!rrrXmecwH`%W^-#(dl@+O+JI8Yxn|T&?$gv7-*8k zIq;Tkk#J z%8UAE`6PGT<<AQt5FSfG(Fd?>^*4-WJh^UC{}d=xtb*EyYnQaELJX{Ai8 zp{%S|8MZLBViFu5g_q7ih%BtQ1);5?jB5Q|`j|R3YZndGJ|FLCL=jLCbfvI%f7ow` zX6OCH?2Pv9`2hQdO`FFzoZY)gg&FOlsoF{Uo8C=s?c)Zw)V|&Z_VoO*a_~QugKx*_ z7z7DzC$hU7d;qX~j-g=_UU)Rd+w7wfuuzgpgxy~IRoJT~n%G((d@0dezCTt{VeT7~ zwTpK9<1`xj$SL9sO_h}e>YPF}OeGBbY&yul%vihVXzi;+6Rj6D>Qr{#A!=yk$0U<6 zNts9ioHCdZ!aA72myT*`6@w5~Ygz5<0hjotXT&VPC-cY!HCDi;ME)dF?Kw+pzm3sk z7wL%-5)CpETyO#%1SAw8h%!M^tb`xc`m)Rx^Cpnec=sDp;4e~GyH2nu=ppM$Kebhv zI2kdcrGe;9yad+6g4+_zc8)1EyE_YsuXNW$Ep#_uU%eJ2rKCp(Mb6>uc4|FZ^`JVV zBW6Uvqe=jI`iw)EmTCu_a=P8LHZE(pVphW5B|D(WmY=?%52|DI1}=Dw%mVxIYv zm`|mz5}w_AsHb{ieFLAJ8dqA0jr21nJVYAa0Op;;_-HBR{39w9+xopR$Dd7B3?&#T zK_rKwqm@}^cdU98fq)er2b9pw&% z+?7WWARuBiq6`FQq1#`v+${vuqa1a3eif* z7dX_aOcnu0Q3DQ+XmUnrAUX?9LZ^LbikvJ#f5BX~g@41cXy~J1j;5@bfdWk^gPEqFKyX00s>U;AoKbXeKHbU#!dQ)t83#n< z4i|8MYgowT;U#L~LM`}8l0`rAij={O+$E=QG}Od5YJtTl(^hc=9LnHhhm>QgFSU}2 zwop@45*;K*Dp5cNwbB*`^r;m@0g1K@Ww?lrX!bZw%G82St!z#i2$b6;k^GWGyd*i8 zv_e|wbEYkJL)ugl`U|*tIsFT=9wqMY_E7PZOWC?7JZG0gJ(beHEZcDF^%H0J9%o@Q z)i=jWgG?!F``>&`S?FDI14$k{kk%UJ`HvfPhz-?USOxy4ejO9pFy z2E(6n@;~TjmF1zAI^?IF4AX7&JA5-`h#>6@FKc5s`@10DzF$n_SFzS_zUAz8tK;jB zn!qmE$8T!-%p-rW_xsY_E_;OxkR}GJ47VR&=izB4KQ=V`A>;DbPt^JOi_>TLEvf0Z zUqkob?cJ|Dong=5*A%Q2g(r1lTmllObtW>Ni!)d8DUvf~MJIWRS^*IS1t3lF(4p3+ z$guSv_AYK``6%WPv$dsME&Qg!&&*iT?C$}e`Q}CUnefc%eM_@owrSg~{=35p3i+$e z+G@Cdf~RKF@BFjDaBG4hS9tz#?e`e$Oimi|&$3=nF0#%C`^|A$2 zcY5E3UC)F7A)n2m)ofESQwF zu2osoM4wioW?P#J6&b&8h9e`LLBe*fBjdLrlAWvXKExfJo7VEZom;J;fm*l-KOGc6z)S}e z)SwfG5@k7XY-JC6`Ge%P0sVu=Yu}gC1+J{yFcgd{6XxPG`m+OU!OuvtoNZgTF1Sd( zm+#iMn4 zSeRDyXv2L4%-eIdRy&LWgI%Ii*1`s ziC*=cZtmGzc29Z)Cru|1pLy=0cGJI8RJ-&*?QuF+qtfCQ|HEcjvv%p>+TT#AT`vuE z4QR>?bd5mDmil|Zv*2*)gS9`PkroW`0bZgkWyY=GG{BiSLk0+NY8msYWt>|KjeB)3 zm~ZcdNeu0CXdgvX5D6-rqwHDjyWKHo^rghJT84IC#GT#3@Ts+`(T7SW@^xs~wk6P{ zK_{+G2{rk)Ehy>YGvBSxzg1d$!GQhJ3)^Bi%T{+EZIQ*YCUR<{bETVL)B@L8uE+fx zJeV@BqeoX1--H7lrXDEJN)u2a?Z6RnJDwe@-3I5ih7gIgT94 zaOcb@y3~0w2nv{z792F?J-GBEQKA+ll$>A!k>p4M{RLe6pw6ma^?`A0h9<~$OVowu ze1hcbq-Rd^DL620o|u7=(fcqzL7jgvMGwaFsuOM#%eaAD4o8qXeTzdQI#@a=xZE2E4ln0adBB}kpLmdjoN;&tX6o=7ERj2HV_DSfh4-+${Ia|Hj6Qle zI|p?BSoO_kxxmDx+J0=C0s1CtzrdCYzD>VJ-^Nc0zMW?S(*Ymfz%S%iY1r2-ecGq6E3L;D5a3G0v6ZxxsAc%0FbB#c%4$S>=Vd>@QOOFo3pV*@4qe(^0E zHmzU3o>z-E+T%ysBkg~9_G`xZ$kX^^xGH35FmsLrUSm|@gR%xTXTpTa1dG@h^gt5@-^eyz?^gOHRIYqPx3WmHb_Y@zRAu9e~6~N9)sh9h%@s|W9`9cw??qX1V>pF6o9BKI9yoV0|$R^j<2beR>J2@8GN}LGC=v1 z^raVPt-!$lkjqb7s6{8$%tb9y;i^&2=;jd;C6APWP{v}CkTbhsu^hFC6lA4nD~8(T zP65bHx8cREm%o3)Ho93`ZQ}rv}zSktwyAxjI{8=lA;{p zSR=6x}^R9S5lK0FyIJux*X&3oDmHX5>KT$W#LD`)S;ZU zQvy+Nq%1g;fzUNT4#1N?Uxg=T_+?2TJ8%Z%dz5Aknmhs)%IwoE)~|6THxqZxs)s&s z=yMiCw?QJlB!M7gkq6TO(ZB%$9k~rEoFsY zYGEmZQVaa8jw8xI=)YYKf0v&zBA=}8ckj8)g$6VBDB@Ctuk1uC;9?{8bRZD*w&=?}QJZ(l zfv6wo>L>~H!I3;jQs^1+b*W>jFP3_F$j`_|Ee;)J zpq8j0zS3^H*CIJRKHx4+Oab3k0qOG<9X_)SCQF3M%q_6LQy!=}$4|-e#J>G5$l3hF zbbd=A-aB~hk=hUCH;@<;c$UU)95IX}yg}nBmVsz=Ca-4v%d9hedp_B;Zeq)}bL0#s zYW*HI=;$+W01p+}Gv4MK27NQRVK4)`%4dG_

    )*zjJmVvhk@c*XvfgZeFo=x7(G) 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Πxs2zu|BTUC%4e~V2WB~AOff!V|WO%g4bodX5 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

    rxwh^E8)G)h8xl<%Sajgka$?k%e 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 OIX(+#DCueSWB(skxo>~~ literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/binary/wifiHD.hex b/libraries/WiFi/extras/binary/wifiHD.hex new file mode 100644 index 000000000..0122587ff --- /dev/null +++ b/libraries/WiFi/extras/binary/wifiHD.hex @@ -0,0 +1,16358 @@ +:0200000480007A +:10000000E08F100000000000000000000000000071 +:1000100000000000000000000000000000000000E0 +:1000200000000000000000000000000000000000D0 +:1000300000000000000000000000000000000000C0 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:100090000000000000000000000000000000000060 +:1000A0000000000000000000000000000000000050 +:1000B0000000000000000000000000000000000040 +:1000C0000000000000000000000000000000000030 +:1000D0000000000000000000000000000000000020 +:1000E0000000000000000000000000000000000010 +:1000F0000000000000000000000000000000000000 +:1001000000000000000000000000000000000000EF +:1001100000000000000000000000000000000000DF +:1001200000000000000000000000000000000000CF +:1001300000000000000000000000000000000000BF +:1001400000000000000000000000000000000000AF +:10015000000000000000000000000000000000009F +:10016000000000000000000000000000000000008F +:10017000000000000000000000000000000000007F +:10018000000000000000000000000000000000006F +:10019000000000000000000000000000000000005F +:1001A000000000000000000000000000000000004F +:1001B000000000000000000000000000000000003F +:1001C000000000000000000000000000000000002F +:1001D000000000000000000000000000000000001F +:1001E000000000000000000000000000000000000F +:1001F00000000000000000000000000000000000FF +:1002000000000000000000000000000000000000EE +:1002100000000000000000000000000000000000DE +:1002200000000000000000000000000000000000CE +:1002300000000000000000000000000000000000BE +:1002400000000000000000000000000000000000AE +:10025000000000000000000000000000000000009E +:10026000000000000000000000000000000000008E +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:10029000000000000000000000000000000000005E +:1002A000000000000000000000000000000000004E +:1002B000000000000000000000000000000000003E +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E000000000000000000000000000000000000E +:1002F00000000000000000000000000000000000FE +:1003000000000000000000000000000000000000ED +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:1003300000000000000000000000000000000000BD +:1003400000000000000000000000000000000000AD +:10035000000000000000000000000000000000009D +:10036000000000000000000000000000000000008D +:10037000000000000000000000000000000000007D +:10038000000000000000000000000000000000006D +:10039000000000000000000000000000000000005D +:1003A000000000000000000000000000000000004D +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000000000002D +:1003D000000000000000000000000000000000001D +:1003E000000000000000000000000000000000000D +:1003F00000000000000000000000000000000000FD +:1004000000000000000000000000000000000000EC +:1004100000000000000000000000000000000000DC +:1004200000000000000000000000000000000000CC +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000000000000AC +:10045000000000000000000000000000000000009C +:10046000000000000000000000000000000000008C +:10047000000000000000000000000000000000007C +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A000000000000000000000000000000000004C +:1004B000000000000000000000000000000000003C +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000000000001C +:1004E000000000000000000000000000000000000C +:1004F00000000000000000000000000000000000FC +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:1005300000000000000000000000000000000000BB +:1005400000000000000000000000000000000000AB +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000000000008B +:10057000000000000000000000000000000000007B +:10058000000000000000000000000000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C000000000000000000000000000000000002B +:1005D000000000000000000000000000000000001B +:1005E000000000000000000000000000000000000B +:1005F00000000000000000000000000000000000FB +:1006000000000000000000000000000000000000EA +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:10065000000000000000000000000000000000009A +:10066000000000000000000000000000000000008A +:10067000000000000000000000000000000000007A +:10068000000000000000000000000000000000006A +:10069000000000000000000000000000000000005A +:1006A000000000000000000000000000000000004A +:1006B000000000000000000000000000000000003A +:1006C000000000000000000000000000000000002A +:1006D000000000000000000000000000000000001A +:1006E000000000000000000000000000000000000A +:1006F00000000000000000000000000000000000FA +:1007000000000000000000000000000000000000E9 +:1007100000000000000000000000000000000000D9 +:1007200000000000000000000000000000000000C9 +:1007300000000000000000000000000000000000B9 +:1007400000000000000000000000000000000000A9 +:100750000000000000000000000000000000000099 +:100760000000000000000000000000000000000089 +:100770000000000000000000000000000000000079 +:100780000000000000000000000000000000000069 +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000000000000049 +:1007B0000000000000000000000000000000000039 +:1007C0000000000000000000000000000000000029 +:1007D0000000000000000000000000000000000019 +:1007E0000000000000000000000000000000000009 +:1007F00000000000000000000000000000000000F9 +:1008000000000000000000000000000000000000E8 +:1008100000000000000000000000000000000000D8 +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000000000000B8 +:1008400000000000000000000000000000000000A8 +:100850000000000000000000000000000000000098 +:100860000000000000000000000000000000000088 +:100870000000000000000000000000000000000078 +:100880000000000000000000000000000000000068 +:100890000000000000000000000000000000000058 +:1008A0000000000000000000000000000000000048 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000000000000028 +:1008D0000000000000000000000000000000000018 +:1008E0000000000000000000000000000000000008 +:1008F00000000000000000000000000000000000F8 +:1009000000000000000000000000000000000000E7 +:1009100000000000000000000000000000000000D7 +:1009200000000000000000000000000000000000C7 +:1009300000000000000000000000000000000000B7 +:1009400000000000000000000000000000000000A7 +:100950000000000000000000000000000000000097 +:100960000000000000000000000000000000000087 +:100970000000000000000000000000000000000077 +:100980000000000000000000000000000000000067 +:100990000000000000000000000000000000000057 +:1009A0000000000000000000000000000000000047 +:1009B0000000000000000000000000000000000037 +:1009C0000000000000000000000000000000000027 +:1009D0000000000000000000000000000000000017 +:1009E0000000000000000000000000000000000007 +:1009F00000000000000000000000000000000000F7 +:100A000000000000000000000000000000000000E6 +:100A100000000000000000000000000000000000D6 +:100A200000000000000000000000000000000000C6 +:100A300000000000000000000000000000000000B6 +:100A400000000000000000000000000000000000A6 +:100A50000000000000000000000000000000000096 +:100A60000000000000000000000000000000000086 +:100A70000000000000000000000000000000000076 +:100A80000000000000000000000000000000000066 +:100A90000000000000000000000000000000000056 +:100AA0000000000000000000000000000000000046 +:100AB0000000000000000000000000000000000036 +:100AC0000000000000000000000000000000000026 +:100AD0000000000000000000000000000000000016 +:100AE0000000000000000000000000000000000006 +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000000000000E5 +:100B100000000000000000000000000000000000D5 +:100B200000000000000000000000000000000000C5 +:100B300000000000000000000000000000000000B5 +:100B400000000000000000000000000000000000A5 +:100B50000000000000000000000000000000000095 +:100B60000000000000000000000000000000000085 +:100B70000000000000000000000000000000000075 +:100B80000000000000000000000000000000000065 +:100B90000000000000000000000000000000000055 +:100BA0000000000000000000000000000000000045 +:100BB0000000000000000000000000000000000035 +:100BC0000000000000000000000000000000000025 +:100BD0000000000000000000000000000000000015 +:100BE0000000000000000000000000000000000005 +:100BF00000000000000000000000000000000000F5 +:100C000000000000000000000000000000000000E4 +:100C100000000000000000000000000000000000D4 +:100C200000000000000000000000000000000000C4 +:100C300000000000000000000000000000000000B4 +:100C400000000000000000000000000000000000A4 +:100C50000000000000000000000000000000000094 +:100C60000000000000000000000000000000000084 +:100C70000000000000000000000000000000000074 +:100C80000000000000000000000000000000000064 +:100C90000000000000000000000000000000000054 +:100CA0000000000000000000000000000000000044 +:100CB0000000000000000000000000000000000034 +:100CC0000000000000000000000000000000000024 +:100CD0000000000000000000000000000000000014 +:100CE0000000000000000000000000000000000004 +:100CF00000000000000000000000000000000000F4 +:100D000000000000000000000000000000000000E3 +:100D100000000000000000000000000000000000D3 +:100D200000000000000000000000000000000000C3 +:100D300000000000000000000000000000000000B3 +:100D400000000000000000000000000000000000A3 +:100D50000000000000000000000000000000000093 +:100D60000000000000000000000000000000000083 +:100D70000000000000000000000000000000000073 +:100D80000000000000000000000000000000000063 +:100D90000000000000000000000000000000000053 +:100DA0000000000000000000000000000000000043 +:100DB0000000000000000000000000000000000033 +:100DC0000000000000000000000000000000000023 +:100DD0000000000000000000000000000000000013 +:100DE0000000000000000000000000000000000003 +:100DF00000000000000000000000000000000000F3 +:100E000000000000000000000000000000000000E2 +:100E100000000000000000000000000000000000D2 +:100E200000000000000000000000000000000000C2 +:100E300000000000000000000000000000000000B2 +:100E400000000000000000000000000000000000A2 +:100E50000000000000000000000000000000000092 +:100E60000000000000000000000000000000000082 +:100E70000000000000000000000000000000000072 +:100E80000000000000000000000000000000000062 +:100E90000000000000000000000000000000000052 +:100EA0000000000000000000000000000000000042 +:100EB0000000000000000000000000000000000032 +:100EC0000000000000000000000000000000000022 +:100ED0000000000000000000000000000000000012 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000000000000F2 +:100F000000000000000000000000000000000000E1 +:100F100000000000000000000000000000000000D1 +:100F200000000000000000000000000000000000C1 +:100F300000000000000000000000000000000000B1 +:100F400000000000000000000000000000000000A1 +:100F50000000000000000000000000000000000091 +:100F60000000000000000000000000000000000081 +:100F70000000000000000000000000000000000071 +:100F80000000000000000000000000000000000061 +:100F90000000000000000000000000000000000051 +:100FA0000000000000000000000000000000000041 +:100FB0000000000000000000000000000000000031 +:100FC0000000000000000000000000000000000021 +:100FD0000000000000000000000000000000000011 +:100FE0000000000000000000000000000000000001 +:100FF00000000000000000000000000000000000F1 +:1010000000000000000000000000000000000000E0 +:1010100000000000000000000000000000000000D0 +:1010200000000000000000000000000000000000C0 +:1010300000000000000000000000000000000000B0 +:1010400000000000000000000000000000000000A0 +:101050000000000000000000000000000000000090 +:101060000000000000000000000000000000000080 +:101070000000000000000000000000000000000070 +:101080000000000000000000000000000000000060 +:101090000000000000000000000000000000000050 +:1010A0000000000000000000000000000000000040 +:1010B0000000000000000000000000000000000030 +:1010C0000000000000000000000000000000000020 +:1010D0000000000000000000000000000000000010 +:1010E0000000000000000000000000000000000000 +:1010F00000000000000000000000000000000000F0 +:1011000000000000000000000000000000000000DF +:1011100000000000000000000000000000000000CF +:1011200000000000000000000000000000000000BF +:1011300000000000000000000000000000000000AF +:10114000000000000000000000000000000000009F +:10115000000000000000000000000000000000008F +:10116000000000000000000000000000000000007F +:10117000000000000000000000000000000000006F +:10118000000000000000000000000000000000005F +:10119000000000000000000000000000000000004F +:1011A000000000000000000000000000000000003F +:1011B000000000000000000000000000000000002F +:1011C000000000000000000000000000000000001F +:1011D000000000000000000000000000000000000F +:1011E00000000000000000000000000000000000FF +:1011F00000000000000000000000000000000000EF +:1012000000000000000000000000000000000000DE +:1012100000000000000000000000000000000000CE +:1012200000000000000000000000000000000000BE +:1012300000000000000000000000000000000000AE +:10124000000000000000000000000000000000009E +:10125000000000000000000000000000000000008E +:10126000000000000000000000000000000000007E +:10127000000000000000000000000000000000006E +:10128000000000000000000000000000000000005E +:10129000000000000000000000000000000000004E +:1012A000000000000000000000000000000000003E +:1012B000000000000000000000000000000000002E +:1012C000000000000000000000000000000000001E +:1012D000000000000000000000000000000000000E +:1012E00000000000000000000000000000000000FE +:1012F00000000000000000000000000000000000EE +:1013000000000000000000000000000000000000DD +:1013100000000000000000000000000000000000CD +:1013200000000000000000000000000000000000BD +:1013300000000000000000000000000000000000AD +:10134000000000000000000000000000000000009D +:10135000000000000000000000000000000000008D +:10136000000000000000000000000000000000007D +:10137000000000000000000000000000000000006D +:10138000000000000000000000000000000000005D +:10139000000000000000000000000000000000004D +:1013A000000000000000000000000000000000003D +:1013B000000000000000000000000000000000002D +:1013C000000000000000000000000000000000001D +:1013D000000000000000000000000000000000000D +:1013E00000000000000000000000000000000000FD +:1013F00000000000000000000000000000000000ED +:1014000000000000000000000000000000000000DC +:1014100000000000000000000000000000000000CC +:1014200000000000000000000000000000000000BC +:1014300000000000000000000000000000000000AC +:10144000000000000000000000000000000000009C +:10145000000000000000000000000000000000008C +:10146000000000000000000000000000000000007C +:10147000000000000000000000000000000000006C +:10148000000000000000000000000000000000005C +:10149000000000000000000000000000000000004C +:1014A000000000000000000000000000000000003C +:1014B000000000000000000000000000000000002C +:1014C000000000000000000000000000000000001C +:1014D000000000000000000000000000000000000C +:1014E00000000000000000000000000000000000FC +:1014F00000000000000000000000000000000000EC +:1015000000000000000000000000000000000000DB +:1015100000000000000000000000000000000000CB +:1015200000000000000000000000000000000000BB +:1015300000000000000000000000000000000000AB +:10154000000000000000000000000000000000009B +:10155000000000000000000000000000000000008B +:10156000000000000000000000000000000000007B +:10157000000000000000000000000000000000006B +:10158000000000000000000000000000000000005B +:10159000000000000000000000000000000000004B +:1015A000000000000000000000000000000000003B +:1015B000000000000000000000000000000000002B +:1015C000000000000000000000000000000000001B +:1015D000000000000000000000000000000000000B +:1015E00000000000000000000000000000000000FB +:1015F00000000000000000000000000000000000EB +:1016000000000000000000000000000000000000DA +:1016100000000000000000000000000000000000CA +:1016200000000000000000000000000000000000BA +:1016300000000000000000000000000000000000AA +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000000000008A +:10166000000000000000000000000000000000007A +:10167000000000000000000000000000000000006A +:10168000000000000000000000000000000000005A +:10169000000000000000000000000000000000004A +:1016A000000000000000000000000000000000003A +:1016B000000000000000000000000000000000002A +:1016C000000000000000000000000000000000001A +:1016D000000000000000000000000000000000000A +:1016E00000000000000000000000000000000000FA +:1016F00000000000000000000000000000000000EA +:1017000000000000000000000000000000000000D9 +:1017100000000000000000000000000000000000C9 +:1017200000000000000000000000000000000000B9 +:1017300000000000000000000000000000000000A9 +:101740000000000000000000000000000000000099 +:101750000000000000000000000000000000000089 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000000000000069 +:101780000000000000000000000000000000000059 +:101790000000000000000000000000000000000049 +:1017A0000000000000000000000000000000000039 +:1017B0000000000000000000000000000000000029 +:1017C0000000000000000000000000000000000019 +:1017D0000000000000000000000000000000000009 +:1017E00000000000000000000000000000000000F9 +:1017F00000000000000000000000000000000000E9 +:1018000000000000000000000000000000000000D8 +:1018100000000000000000000000000000000000C8 +:1018200000000000000000000000000000000000B8 +:1018300000000000000000000000000000000000A8 +:101840000000000000000000000000000000000098 +:101850000000000000000000000000000000000088 +:101860000000000000000000000000000000000078 +:101870000000000000000000000000000000000068 +:101880000000000000000000000000000000000058 +:101890000000000000000000000000000000000048 +:1018A0000000000000000000000000000000000038 +:1018B0000000000000000000000000000000000028 +:1018C0000000000000000000000000000000000018 +:1018D0000000000000000000000000000000000008 +:1018E00000000000000000000000000000000000F8 +:1018F00000000000000000000000000000000000E8 +:1019000000000000000000000000000000000000D7 +:1019100000000000000000000000000000000000C7 +:1019200000000000000000000000000000000000B7 +:1019300000000000000000000000000000000000A7 +:101940000000000000000000000000000000000097 +:101950000000000000000000000000000000000087 +:101960000000000000000000000000000000000077 +:101970000000000000000000000000000000000067 +:101980000000000000000000000000000000000057 +:101990000000000000000000000000000000000047 +:1019A0000000000000000000000000000000000037 +:1019B0000000000000000000000000000000000027 +:1019C0000000000000000000000000000000000017 +:1019D0000000000000000000000000000000000007 +:1019E00000000000000000000000000000000000F7 +:1019F00000000000000000000000000000000000E7 +:101A000000000000000000000000000000000000D6 +:101A100000000000000000000000000000000000C6 +:101A200000000000000000000000000000000000B6 +:101A300000000000000000000000000000000000A6 +:101A40000000000000000000000000000000000096 +:101A50000000000000000000000000000000000086 +:101A60000000000000000000000000000000000076 +:101A70000000000000000000000000000000000066 +:101A80000000000000000000000000000000000056 +:101A90000000000000000000000000000000000046 +:101AA0000000000000000000000000000000000036 +:101AB0000000000000000000000000000000000026 +:101AC0000000000000000000000000000000000016 +:101AD0000000000000000000000000000000000006 +:101AE00000000000000000000000000000000000F6 +:101AF00000000000000000000000000000000000E6 +:101B000000000000000000000000000000000000D5 +:101B100000000000000000000000000000000000C5 +:101B200000000000000000000000000000000000B5 +:101B300000000000000000000000000000000000A5 +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000000000000085 +:101B60000000000000000000000000000000000075 +:101B70000000000000000000000000000000000065 +:101B80000000000000000000000000000000000055 +:101B90000000000000000000000000000000000045 +:101BA0000000000000000000000000000000000035 +:101BB0000000000000000000000000000000000025 +:101BC0000000000000000000000000000000000015 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000000000000F5 +:101BF00000000000000000000000000000000000E5 +:101C000000000000000000000000000000000000D4 +:101C100000000000000000000000000000000000C4 +:101C200000000000000000000000000000000000B4 +:101C300000000000000000000000000000000000A4 +:101C40000000000000000000000000000000000094 +:101C50000000000000000000000000000000000084 +:101C60000000000000000000000000000000000074 +:101C70000000000000000000000000000000000064 +:101C80000000000000000000000000000000000054 +:101C90000000000000000000000000000000000044 +:101CA0000000000000000000000000000000000034 +:101CB0000000000000000000000000000000000024 +:101CC0000000000000000000000000000000000014 +:101CD0000000000000000000000000000000000004 +:101CE00000000000000000000000000000000000F4 +:101CF00000000000000000000000000000000000E4 +:101D000000000000000000000000000000000000D3 +:101D100000000000000000000000000000000000C3 +:101D200000000000000000000000000000000000B3 +:101D300000000000000000000000000000000000A3 +:101D40000000000000000000000000000000000093 +:101D50000000000000000000000000000000000083 +:101D60000000000000000000000000000000000073 +:101D70000000000000000000000000000000000063 +:101D80000000000000000000000000000000000053 +:101D90000000000000000000000000000000000043 +:101DA0000000000000000000000000000000000033 +:101DB0000000000000000000000000000000000023 +:101DC0000000000000000000000000000000000013 +:101DD0000000000000000000000000000000000003 +:101DE00000000000000000000000000000000000F3 +:101DF00000000000000000000000000000000000E3 +:101E000000000000000000000000000000000000D2 +:101E100000000000000000000000000000000000C2 +:101E200000000000000000000000000000000000B2 +:101E300000000000000000000000000000000000A2 +:101E40000000000000000000000000000000000092 +:101E50000000000000000000000000000000000082 +:101E60000000000000000000000000000000000072 +:101E70000000000000000000000000000000000062 +:101E80000000000000000000000000000000000052 +:101E90000000000000000000000000000000000042 +:101EA0000000000000000000000000000000000032 +:101EB0000000000000000000000000000000000022 +:101EC0000000000000000000000000000000000012 +:101ED0000000000000000000000000000000000002 +:101EE00000000000000000000000000000000000F2 +:101EF00000000000000000000000000000000000E2 +:101F000000000000000000000000000000000000D1 +:101F100000000000000000000000000000000000C1 +:101F200000000000000000000000000000000000B1 +:101F300000000000000000000000000000000000A1 +:101F40000000000000000000000000000000000091 +:101F50000000000000000000000000000000000081 +:101F60000000000000000000000000000000000071 +:101F70000000000000000000000000000000000061 +:101F80000000000000000000000000000000000051 +:101F90000000000000000000000000000000000041 +:101FA0000000000000000000000000000000000031 +:101FB0000000000000000000000000000000000021 +:101FC0000000000000000000000000000000000011 +:101FD0000000000000000000000000000000000001 +:101FE00000000000000000000000000000000000F1 +:101FF00000000000000000000000000000000000E1 +:08200000481F000080013E04AE +:102008003038F00C19005EBC5C7C4848F00C003994 +:10201800F00C093BB22A5EFC000011C0F80815015B +:102028003039F20C1800E08800035EFDF00B000B5D +:102038004828F00B032C5EFC00007B08580CC0D02D +:1020480048787829F00900293008720A143CC060E1 +:102058002FF82F895848CFA13FF85EF800007B0879 +:102068003038F00C18005EBCF60C001C30094838FB +:10207800F00C09295EFC000000007B085EFFD70316 +:10208800D4011988301EB6881998B6BEEA18FFFF21 +:10209800E818FF80B6AEB698580AC0301588C0A8B0 +:1020A80048981188F4081800C0303038C03848788B +:1020B80011B8B6C83EE8B6D83008B6E8302C306853 +:1020C800B208D802000016AB00000008D40130188E +:1020D800198EB68E199CB6A8EA1CFFFFE81CFF8073 +:1020E800B6B8B69C580AC0A0158CE06A00FFF00C80 +:1020F8001800F4081710F9B80001B6C83EE8B6D8B9 +:102108003008B6E8302C3068B208D802D421202D27 +:102118004AAA189E1698129674075807C071FACAE8 +:10212800FFF814F7F01F0026C4681989B6891999B1 +:10213800EA19FFFFE819FF80B6993039B0A9740988 +:102148007219F20C1618B0F9B0CCF9D9C108F3D944 +:10215800C208B0ECB0D9304BB0BB74097229F20C8C +:102168001618F169000CF16C0009F9D9C108F3D906 +:10217800C208F16C000BF16B0008F169000A7409E0 +:10218800300A7239F16A00133EEAF16A0012F20A63 +:102198001618F1690011F16A000EF16B000DF5D9FE +:1021A800C108F3D9C208F16A0010F169000F302C98 +:1021B8003138AC082FEDD8220000152C800020D42F +:1021C8003038F00C18005EBCF60C001B48F8F00B19 +:1021D800032858085E0C704958195E1C7029581954 +:1021E800C09148B8F00C003C9828B42878089508A5 +:1021F8005EFC71E85808F0091700F1F91001F1F8D0 +:10220800120A9509B4285EFC00007B08000011C082 +:10221800D4314BC8300A10941499910A1893301A83 +:102228004B984BA7910A3EE14B921296C0280A9907 +:10223800E0682710C0485808C5602018664AE21AA6 +:102248000201E04A0201CF81C4F8F2C5FFFFE20AA9 +:102258001800CEE10F9BF7DBC0C15825E0890005C7 +:102268003038300AC2E80FAA3038C148580BC0A02D +:10227800EE08070EEE08000CA96E2FE8199C1C0842 +:10228800C058F0CCFFFFEE080708201AF80800082D +:102298005C5A10395F9CEC0A18005F9EFDEC000C3C +:1022A800EC0C1800CE4110395F09F9DAC008EC0CC3 +:1022B80018005F0CF9E90009EC091800C020D83AA9 +:1022C800840C3009F20C1900CB34201D5C6A1ADB2F +:1022D8001AD849081ADA490C1AD51AD8F01F000F6B +:1022E8002FADCA6BDA3A662A68085C5A2FF8EE09ED +:1022F8000B0A8908E0480063FE9AFFA9305CD832CF +:10230800000014B0000011B8000014B8000016A2B4 +:102318008003792C80037AB0800094C4D431202DB6 +:102328004C68149570081896169712945808C0713E +:10233800FACAFFF814F8F01F0042CC38198830198F +:10234800B6881998B6A9EA18FFFFE818FF80B6986A +:102358004BC89088EDB80002C171189330023EE175 +:102368000788201D4B8C1AD8F01F00382FF22FED4C +:102378000788E2081800C0502FF3E0420400CF118C +:102388004B3CF01F00320DC83099F2081800E08865 +:1023980000114B09920A3009F20A1900E0840091F1 +:1023A8001AD84AD84ADC1AD8F01F00282FEDC88856 +:1023B800E0450032C290A3684A99E0450033C5D091 +:1023C800129B7209F2080309EECAFFFCF3360020DB +:1023D8003009AEB6C088760CF808030CF809070C6B +:1023E8002FF914CCEC091900CF7349A99289EDB9DA +:1023F8000004C5F149A97209F2080308499C1AD8D2 +:1024080049581AD8C538304BA368495A7409F20894 +:10241800030972C9AEBBF20B1618AEC9AEFBF7D9E9 +:10242800C108F3D9C208AEDBAEE948A99289EDB973 +:102438000004C1903046C3D80000152C800020D479 +:10244800000016A080037AF0800094C4800384D42E +:10245800000016A28003785880037AF8000015203F +:1024680080037B187409F208030870C8496C1AD8ED +:10247800304649681AD8C1A8301AAEBA720AF408A8 +:10248800030AF53A0038AECA491A948AEDBA00042C +:10249800C0303016C0E87209F2080308F138003875 +:1024A80048CC1AD8301648981AD8F01F000B2FEDD0 +:1024B8003EE80C07AEC83008AED82FB6A806302CB8 +:1024C8002FEDD83280037B2880037858000016A2AD +:1024D80080037B38800094C4D421204D4A981897F3 +:1024E800118A580AC0313FF6C0D84A7811BC118EFB +:1024F800119611A8B166EDEE1186EDE81086F9E6A1 +:1025080010064A289088EDB80002C0E14A08201D4C +:102518004A0C1ADA1AD61AD8505B5049F01F001E16 +:102528002FCD4009401B49D870085808C081FACA05 +:10253800FFF00E9C14F8F01F001AC2080F88B68826 +:102548000F98EA18FFFFE818FF80B6983018B6A869 +:102558003048B6B8F1D6C108B6E83EE8EC0A161815 +:10256800B6F6F7680008B6CA3008EDD6C208F768AC +:102578000009B6D63098302CB2082FCDD8220000EA +:102588000000152800007B28000016A28003782090 +:1025980080037B48800094C40000152C800020D460 +:1025A800D401580BC0313FF8C0C8178A17B917981B +:1025B800B168F1EA118817AAF1EA1088F3E810085F +:1025C800F00A161848E9B28AF5D8C208B2B8B29A21 +:1025D800F5D8C108B2AA48B99289EDB90002C0A1DC +:1025E800201D1AD848881ADC488C1AD8F01F000811 +:1025F8002FCD30194878B089D802000000007B2818 +:10260800000016A28003799C80037B74800094C428 +:1026180000001528D431204D4AE8189570081697FF +:1026280012965808C071FACAFFF014F8F01F002A71 +:10263800C4D84AA89088EDB80002C1711894300334 +:102648003EE20988201D4A6C1AD8F01F00262FF395 +:102658002FED0988E4081800C0502FF4E043040067 +:10266800CF114A1CF01F001F0B880BCCAE880B98AB +:10267800EA18FFFFE818FF80AE983004BA445014F7 +:102688003025FACAFFFCAEA5301BF01F0018304AEF +:10269800EF64000CEF6500084018F0091618AEF852 +:1026A800AEC99A49AEBAF5D8C108F1D8C208EF69DF +:1026B800000AAED8AEEA3EE8F3D9C108EF68000BCD +:1026C800EF69000930C8302CAC082FCDD832000093 +:1026D8000000152C800020D4000016A080037AF09A +:1026E800800094C4800384D4800021C8D40148A801 +:1026F8009088EDB80002C0E148887008201D1AD8FB +:10270800487811881AD84878487C1AD8F01F0007EA +:102718002FCDDA0A000016A200000008000016AB50 +:10272800800379E480037BA8800094C4D42148E620 +:10273800189E30076C0C580CC0A02FF72EC6E04727 +:102748000024CF91489CF01F000ADC2A4866EE0757 +:102758000027EC070027EF680010AECE8F0B8F2AFA +:102768008F39D822000011E080037BC4800094C414 +:10277800D4214C8618970C9A302830094C6B310CB0 +:10278800F01F00460C9A302830094C5B311CF01FB2 +:1027980000430C9A302830094C2B312CF01F003F95 +:1027A8000E990C9A30284C0B314CF01F003C0E99B6 +:1027B8000C9A30284BDB315CF01F00383018300998 +:1027C8004BBA4BCB320CF01F003530184BA73009F1 +:1027D8000E9B4BAA321CF01F00310E9B301830099B +:1027E8004B7A322CF01F002D4B6532390A9A0E9B1A +:1027F8003018129CF01F002932490A9A0E9B301893 +:10280800129CF01F002632590A9A0E9B3018129C0F +:10281800F01F00220A9A32690E9B3018129CF01F92 +:10282800001F0C9A302830094A7B336CF01F001BBC +:102838000E9B301830094A5A327CF01F00180C9A47 +:10284800302830094A2B330CF01F00144A1533394D +:102858000A9A0E9B3018129CF01F001033190A9A1E +:102868000E9B3018129CF01F000D0A9A33290E9BFC +:102878003018129CF01F00090C9A30283009496B57 +:10288800334CF01F00060E9B30183009493AC278C5 +:10289800800020D48000427C8000273480004118CA +:1028A8008000433080003FD080003EA88000208810 +:1028B800800026F48000208480002114800035ECFC +:1028C80080003514800034A480004B5480003740C9 +:1028D8008000232480003678800024E0335CF01FD9 +:1028E80000370C9A302830094B5B328CF01F0033CC +:1028F8000C9A302830094B3B32DCF01F00300C9A20 +:10290800302830094B0B32ECF01F002C0E9B30188E +:1029180030094AEA329CF01F00290E9B3018300912 +:102928004ABA32CCF01F00250E9B301830094A9A5B +:1029380032BCF01F00220C9A304830094A6B344CE4 +:10294800F01F001E0E9B301830094A4A32ACF01FA7 +:10295800001B0E9B301830094A1A345CF01F001710 +:102968000E9B3018300949FA32FCF01F00140E9BF8 +:102978003018300949CA337CF01F00100E9B3018FC +:10298800300949AA338CF01F000D0C9A30483009E1 +:10299800497B346CF01F00090C9A30283009495BD8 +:1029A800339CF01F00060E9B30183009492A33ACBF +:1029B800F01F0002D82200008000273480003D88E4 +:1029C80080003AC8800038B4800033FC800030D4DE +:1029D800800032848000375C800032088000300438 +:1029E8008000332880002F8C80002EC4800038841B +:1029F800800037CC8000261CD4013038580B5F1972 +:102A0800F00C18005F88F3E80008C060F40C0019A7 +:102A180048D8F009092B48D89088EDB80001C111B1 +:102A280048B848C9580AF20A1700F00A171048A807 +:102A38001ADA1ADB1ADC489C1AD8F01F00092FCDC5 +:102A4800D802000000007B08000016A280037BDC8F +:102A580080037BE4800378C080037BF0800094C40B +:102A6800D401580BF60A1700F7FA180BF01F0002EA +:102A7800D802000080002A00D401320A300B483CFA +:102A8800F01F0003D802000000007B088002E8BCA9 +:102A9800D421206D3087FAC6FFF00E9A4C6B18953A +:102AA8000C9CF01F0046304B0C9CF01F0045300872 +:102AB800FB68000DBA88FB680009FB68000BFB681F +:102AC800000CEE784240501830480E9BFB67000817 +:102AD800FB68000A300AFE7C2400F01F003A1897B1 +:102AE800C0F04B989088EDB80002C0814B78201D4B +:102AF8004B7C1AD8F01F00372FED301CC5A8E06AB0 +:102B0800F980EA1A03371A9BFE7C2400F01F003272 +:102B1800582CC0D14AC89008EE081900C0844AB899 +:102B2800201D4AEC1AD8F01F002B2FEDD303300AD2 +:102B3800E06B01204AACF01F002BD503E1B8000080 +:102B4800EE180001F5D8C201C020D303FE78240096 +:102B58003019705BF7D9D001915B705BF7D9D0C1A0 +:102B6800915B705BF7D9D081915B580AC020D5037F +:102B7800FE7C2400F01F001C0A9CF01F001C364A33 +:102B8800300B49BCF01F001BE06A0400300B49AC55 +:102B9800F01F0018E06A0400300B498CF01F001584 +:102BA800F01F0017497830079107F01F00170E9C97 +:102BB8002FADD822800382078002E7368000A280EA +:102BC8008000A618000016A2800379BC80037C0848 +:102BD800800094C48000A73C80037C2880002C10CF +:102BE8008000A3A08000A7EC80002778000014B81C +:102BF8008002E8BC00000DB8000009B880002A80F7 +:102C0800000000088000751CD401E1B80000EE182F +:102C18000001F5D8C201C020D303FE782400301982 +:102C2800706BF7D9D001916B706BF7D9D0C1916BEC +:102C3800706BF7D9D081916B580AC020D503FE7C00 +:102C480024007848EDB80000C0F1F01F0016C0C19C +:102C5800319CF01F0015495890092FF9B009301917 +:102C68004938B089C1B8E1B80000EE180001F5D8BC +:102C7800C201C020D303FE7824003019705BF7D955 +:102C8800D001915B705BF7D9D0C1915B705BF7D9CC +:102C9800D081915B580AC020D503D402D603000026 +:102CA800800022188000A2E6000014B40000151C61 +:102CB800D4313006189714931694950618983E093F +:102CC800C2C81095118A2FF8F20A1800C251580686 +:102CD800C21049E890093008F0091900C064089B3F +:102CE8000E9C5C7BF01F001A49A890093008F00977 +:102CF8001900C1040C070F98201D1AD849681AD466 +:102D08001AD690881AD84958495C1AD8F01F001565 +:102D18002FAD8706C1882FF60836CD4548D89009CB +:102D28003008F0091900C0353005C0D8201D48A862 +:102D38001AD690881AD8489848BC1AD83005F01F77 +:102D480000092FCD0A9CD832000016A680013DB498 +:102D5800000016A2000014B4800378D080037C48D9 +:102D6800800094C480037C6CD42118971696F01FB9 +:102D780000325F080E3C5F191895F1E91009C03060 +:102D88005808C5710B893E08F0091800C5210B9930 +:102D98003008F0091800C4D5E2190040C0E1EACAB9 +:102DA800FFFD0BAC1298C068158B2FF92FFB160A84 +:102DB80016081839CFA5C2384A089088EDB800021D +:102DC800C0D149F8201D49FC1AD8F01F001FF7D6BA +:102DD800C0100E9CF01F001D2FED3009EACAFFFD40 +:102DE8000BAC1298C0A81587159B2FF9F7E7108B25 +:102DF8002FEB160AF60800081839CF6510053EE9CA +:102E08000BB8F2081800C021DA2A4919920A3009C9 +:102E1800F20A1900C0E4201D1AD848E890881AD888 +:102E2800487848DC1AD8F01F0008300C2FCDD8227B +:102E3800D82A000080002CB8000016A080037974FE +:102E480080037C84800094C480013DB4000016A2F5 +:102E5800000014B480037C8CD4014918581CC0713C +:102E68003039334C9109F01F000FC0683049334C9A +:102E78009109F01F000D48D89088EDB80002C0D124 +:102E880048787008201D1AD848981AD8489848AC2D +:102E98001AD8F01F000A2FCDD80200000000000841 +:102EA8008000A2E68000A300000016A280037A3CFE +:102EB8008003821080037CB0800094C4D421FACDB2 +:102EC80001004AC81697700512965805C071FACACB +:102ED800FF0014F5F01F0028C4A81989301AB68914 +:102EE8001999B6AAEA19FFFFE819FF80B69919B926 +:102EF800F4091800C20119C53FF8F0051800C1B05F +:102F0800E06A00FF300B1A9CF01F001C1A9430086E +:102F1800C048E8080B082FF80A38CFC51A94AEB590 +:102F2800EEC8FFFCFA050009C038093A10CA123485 +:102F3800CFD1C15849256A0CF01F00120A98EECA71 +:102F4800FFFCEBDCC0083009AEB5C068700BF609B1 +:102F5800070B2FF914CBEA091900CF933EE80A07AB +:102F6800AEC83008AED82FB5302CAC052C0DD82201 +:102F78000000152C800020D48002E8BC0000011459 +:102F88008002EDD0D421202D49981697700E129604 +:102F9800580EC071FACAFFF814FEF01F0016C25886 +:102FA8001989B6891998EA18FFFFE818FF80B698BA +:102FB80030184915B6A86A0CF01F0010EEC9FFFCBE +:102FC8005C5C3008AEBCC0686A0AF408070A2FF8CF +:102FD80012CAF8081900CF933EE818072FBCAEC8EC +:102FE8003008AED8AC0C302C2FEDD8220000152CB0 +:102FF800800020D4000001148002EDD0D421202DBF +:103008004AE818967008169712955808C071FACAB7 +:10301800FFF814F8F01F002AC4D84AA811D4303891 +:10302800F0041800E08B0046FACAFFFC1A9B089CC3 +:10303800F01F00250D88C300AE880D98EA18FFFF21 +:10304800E818FF80AE983018AEA81BC8AEB89A280A +:10305800AEC83008C0B8F3D8C010400BF1DAB010D1 +:10306800EE09000AF6090709B4D9F0CAFFFF9A2940 +:10307800F2081900CF13F1D9C010EE0800083EEA93 +:10308800B0DA9AA82FA910073008AEE8AA09089C58 +:10309800F01F000EC0E8AE880D98EA18FFFFE81888 +:1030A800FF80AECCAE98AEAC3EE8AEB83048AA08C9 +:1030B800302C2FEDD82200000000152C800020D4E1 +:1030C80000000DB880006BF480006FBCD431202D57 +:1030D8004C5818967008169712955808C071BAE897 +:1030E800FACAFFFAF01F0041C728F8C8FFFDC3C09D +:1030F80011842FF4F0040004C37009893018F00912 +:103108001800C67109993EE8F0091800C6214B88D5 +:1031180090093008F0091900C5C44B681AD44B6CE3 +:103128001AD8F01F00362FEDC548099309A9F3E313 +:1031380010835C83C54809893018F0091800C1510B +:1031480009993EE8F0091800C1014A989009300829 +:10315800F0091900C0A44A781AD44A7C1AD8F01F7A +:1031680000272FEDC02830030DB43018F0041800E4 +:10317800C2D10DCC3038F00C1800E08B0028F5D304 +:10318800C008FACBFFF9F01F001E0D88C120AE88D9 +:103198000D98EA18FFFFE818FF80AEB4AE98AEA409 +:1031A8001BF8AEC83EE8AED83008AEE83068C0D8E4 +:1031B800AE880D98EA18FFFFE818FF80AE983EE841 +:1031C800AECCAEB8AEAC3048AA08302C2FEDD83211 +:1031D80009883029F2081800CA9030032FF8100423 +:1031E800CAB1CC3B0000152C800020D4000016A2E8 +:1031F8008003780C80037CBC800094C480006FE05E +:10320800D421202D49A81697700E1296580EC07119 +:10321800FACAFFF814FEF01F0017C2681989301A9D +:10322800B6891999B6AAEA19FFFFE819FF80B69975 +:1032380019B9F4091800C0D119C83039F2081800B2 +:10324800E08B000848C9F208033CF01F000CC028B6 +:10325800300C3018AEB83EE8AECCAED83008AEE888 +:10326800302C3068AC082FEDD82200000000152C57 +:10327800800020D400007B0880004D78D421202DC8 +:103288004A181697700E1296580EC071FACAFFF8AF +:1032980014FEF01F001EC3481989301AB6891999FF +:1032A800B6AAEA19FFFFE819FF80B69919B9F40917 +:1032B8001800C0B119CC3038F00C1800E08B0006AB +:1032C800F01F00135C8CC028300C3028AEB83EE8E4 +:1032D800AECCAEE85C7CF8081608AED83008AEF87C +:1032E8003078AC0848B89088EDB80002C08148A88A +:1032F8001ADC48AC1AD8F01F000A2FED302C2FED3D +:10330800D82200000000152C800020D480006D38E1 +:10331800000016A8800378A880037CD8800094C495 +:10332800D421202D4AA81697700512965805C07109 +:10333800FACAFFF814F5F01F0027C4781989301A63 +:10334800B6891999B6AAEA19FFFFE819FF80B69954 +:10335800303819B919C5F40918005F09F0051800C3 +:103368005F881268C19049C8F00503345804C060EA +:10337800089C301BF01F0019C10849989009E809FA +:103388001900C0A449781AD5497C1AD8F01F00172B +:10339800089C2FEDC028300C3018AEB83EE8AECCF3 +:1033A800AED83008AEE83068AC0849189088EDB857 +:1033B8000002C0A148B8201D1ADC48EC1AD51AD85A +:1033C800F01F000A2FCD302C2FEDD8220000152C2D +:1033D800800020D400007B0880004F1C000016A647 +:1033E8008003794080037CEC800094C4000016A818 +:1033F80080037D10D421202D4A181697700E12963E +:10340800580EC071FACAFFF814FEF01F001EC34818 +:103418001989301AB6891999B6AAEA19FFFFE81965 +:10342800FF80B69919B9F4091800C0F119C83039E4 +:10343800F2081800E08B000A4939F2080038300B0E +:10344800701CF01F0012C028300C3018AEB83EE8CF +:10345800AECCAED83008AEE83068AC0848C8908822 +:10346800EDB80002C08148B81ADC48BC1AD8F01F71 +:10347800000B2FED302C2FEDD82200000000152C6A +:10348800800020D400007B0880004F1C000016A894 +:1034980080037A6480037D28800094C4D40149584D +:1034A8009088EDB80002C08149381ADC493C1AD826 +:1034B800F01F00132FED49383009118AF20A18005D +:1034C800C021DC0AB089F01F0010581CC1004898C0 +:1034D80090093008F0091900C025DA0A48681ADC92 +:1034E80048AC1AD8F01F0006301C2FEDD802000097 +:1034F800000016A28003798480037D38800094C47C +:10350800000016AA80019EF880037D54D421202D46 +:103518004B281496700E16971295580EC071FACA59 +:10352800FFF814FEF01F002EC5681989B68919988E +:10353800EA18FFFFE818FF803014B698B6A4F01F09 +:103548000029C3E0E0460025C260E0460026C3200B +:10355800EEC9FFFCE0460024C0F0129AF9380020BA +:103568003009AEB8C058F809070B2FF914CBF00989 +:103578001900CFA3C28830682DACAEB8306A3008C5 +:10358800198B12CB2FF8201C5C88F4081900CF91F6 +:103598003068C19878C8F0091618AEF93049AEC835 +:1035A800AEB9F3D8C108F1D8C208AED9AEE83048F0 +:1035B800C0A8AEB4F9380038AEC83018C048AEB4A8 +:1035C800AECC18983EE91007AEC93009AED92FB86D +:1035D800302CAA082FEDD8220000152C800020D40A +:1035E8008001997CD421202D49F8189670081697E7 +:1035F80012955808C041FACAFFF8C1881988B688D8 +:103608001998EA18FFFFE818FF803019B698306853 +:10361800B6A9B6B81A9CF01F0015581CC0B00A9974 +:103628000E9B0C9CFACAFFF8300814F8F01F001023 +:10363800C1881BD8AEC81BC8AED81BB8AEE81BA83B +:10364800AEF81B98EF6800081B88EF6800093EE891 +:10365800EF68000A3008EF68000B302C30B8AA0871 +:103668002FEDD8220000152C80019128800020D44D +:10367800D421FACD010016961A971A9C173AF01F12 +:103688000025FAC9FF000D88F20800083009F16921 +:10369800FF004A189088EDB80002C08149F81AD78F +:1036A80049FC1AD8F01F001F2FED300849E749FAE6 +:1036B800AE88AE98AEA8AEB8B488109949CA0E9B29 +:1036C8001A9C1A96F01F001B5C5CC040E06C00FF5F +:1036D800C1E849189088EDB80002C1510F8A0FB9A6 +:1036E8000F98B168F1EA11880FAAF1EA1088F3E897 +:1036F8001008201D1AD848981AD648FC1AD8F01F66 +:1037080000092FCD30194898301CB0892C0DD822CB +:103718008002E736000016A280037A7C80037D646D +:10372800800094C400007B2800001528800025A88C +:103738008000C4C080037D84D401F01F0006E068C7 +:1037480000FF581CF00C1710F9BC0001D80200004B +:10375800800199CCD42118971696335CF01F001677 +:103768005827C1F10D980D89F1E910893018F00931 +:103778001900C1710DA80DBA0DC9303BF608180023 +:10378800E0880004300CC04848CBF608033CA96A1E +:10379800ECCBFFFB120A5C7AF01F00091897C028CF +:1037A8003FF7335CF01F0007E06C00FF5817F9BCC7 +:1037B8000001D8228000A30000007B08800053C0CD +:1037C8008000A2E6D421202D581CC4211789F809AD +:1037D8001800C3E1F6C8FFFE1796C170118AF20AF5 +:1037E8001800C131119A3EE9F20A1800C0E149B93E +:1037F800920A3009F20A1900C0841AD84988499CEB +:103808001AD8F01F00192FED3008FACAFFF8300B4C +:1038180014E80C9CF01F00159A3A18973038F006F7 +:103828001800E0880004300CC0484918F006033C32 +:103838005C7A0E9BF01F000F18950C9CF01F000E71 +:103848000E9CF01F000E5815C0310A9CC038E06C61 +:1038580000FF2FEDD8220000000016A28003795C3B +:1038680080037CBC800094C4800072DC00007B086C +:103878008000514080006E188002E28CD401582CE0 +:10388800C13117981789F1E910893018F009190022 +:10389800C0B117C817BA17ACA96A2FBBF00A000A3B +:1038A8005C7AF01F0002DA0A80007380D421581C69 +:1038B800C391580BC0311697C1E81788F80818004B +:1038C800C3411797C33817893018F0091800C13158 +:1038D80017993EE8F0091800C0E1497890093008C6 +:1038E800F0091900C08449581ADB495C1AD8F01F3E +:1038F80000152FED49089088EDB80002C08148F8FE +:103908001AD7491C1AD8F01F000F2FED3038F007CE +:103918001800E08B000848D8F007033CF01F000CA3 +:10392800DA2AE06C00FFD82230072FF8100BCCC140 +:10393800CE2B0000000016A2800379F880037CBC1F +:10394800800094C480037DA800007B088000599CF7 +:10395800D421202D4B981896169414971295908878 +:10396800EDB80002C1314B694B685805F2081700E1 +:10397800201D1AD816985C781ADA1AD84B281ADC3F +:103988004B2C1AD8F01F00322FAD3038F007180032 +:10399800E0880005E06C00FFC8584AE8F0070338E3 +:1039A80050085808C1504A59920A3009F20A1900B9 +:1039B800C0841AD84A484A8C1AD8F01F00252FED1F +:1039C800400CF01F002630094A28F00709391A9CD4 +:1039D800E06A04005016300B1ADC14981AD75C748D +:1039E8001ADB16991AD5089C1ADA169A1AD6F01FF5 +:1039F800001C49282FAD580CC3819088EDB80002EF +:103A0800C1511AD71AD41AD6403850461AD848D8AD +:103A180048B95805F2051700F005171048A81AD537 +:103A2800490C1AD8F01F000A2FAD0E9C400BF01F4E +:103A3800000E301CC3780000000016A280037DC869 +:103A480080037DC4800379C480037DCC800094C446 +:103A580000007B0880037DF88000599C80005D642D +:103A680080037E2480002A689088EDB80002C15146 +:103A78001AD71AD41AD6403850461AD848B848C95E +:103A88005805F2051700F005171048A81AD548ACD4 +:103A98001AD8F01F000A2FAD300948983FFCF007EC +:103AA80009392FEDD822000080037DC480037DC82A +:103AB800800379C480037E50800094C400007B0892 +:103AC800D431584CE081008E580BC2A01785F805F8 +:103AD8001800E081008A179817A7B167EFE81187E7 +:103AE80017B8EFE8108717C8F1E71007C7E80B8980 +:103AF8003018F0091800C7E10B993EE8F0091800E2 +:103B0800C7914C2890093008F0091900C7344C08AF +:103B18001AD54C0C1AD8F01F00402FEDC6B81697CE +:103B28003006C1F80B960BA8F1E610865C86C688AD +:103B380007893018F0091800C72107993EE8F009ED +:103B48001800C6D14B1890093008F0091900C6743E +:103B58004AF81AD34AFC1AD8F01F002F2FEDC5F8DF +:103B68003005C1B80795C61809893018F00918003A +:103B7800C61109993EE8F0091800C5C14A389009EC +:103B88003008F0091900C5644A181AD44A1C1AD812 +:103B9800F01F00212FEDC4E83003C1A80993C50820 +:103BA80009893018F0091800C13109993EE8F0096F +:103BB8001800C0E1495890093008F0091900C0847C +:103BC80049381AD4493C1AD8F01F00132FED06992A +:103BD8000A9AF7D6C0100E9CF01F0010581CC0306F +:103BE800E06C00FFD83230072FF5F6050005C80154 +:103BF800C98B0B833028F0031800C95030062FF307 +:103C0800EA030003C961CADB000016A280037A98A0 +:103C180080037CBC800094C4800039580784301825 +:103C2800F0041800CA0030052FF4E6040004C9D1D6 +:103C3800CB4B09883019F2081800CB1030032FF845 +:103C48001004CAF1CC5B0000D421202D3038169620 +:103C58001494F00B1800E08B0072300750074BA843 +:103C68001188EE081800C0B04B889008EE081900BB +:103C7800C654201D4B684B7C1AD8C0F84B69138971 +:103C8800F0091800C0E14B589008EE081900C56407 +:103C9800201D4AF84B2C1AD8F01F00322FEDC4E82B +:103CA8001A9AE0690400501712981ADAEBDCC0106F +:103CB8001ADB0E9A1AD70E9B1AD40A9C1AD93019F5 +:103CC8001AD7F01F00294A182FAD580CC1B1908897 +:103CD800EDB80002C1114A584A595804F2041700B5 +:103CE800F004171049A81AD64A2C1AD51AD41AD88B +:103CF800F01F001C2FCD0C9C400BF01F001F301C28 +:103D0800C1F89008EE081900C11449884989580477 +:103D1800F2041700F004171048D81AD6497C1AD5AF +:103D28001AD41AD8F01F000F2FCDA17630092FF61C +:103D380049383FFCF0060929C038E06C00FF2FED38 +:103D4800D822000000007B07000016A280037A102A +:103D580080037E80000016AB000016A680037EA0BC +:103D6800800094C480005D6480037DC480037DC8A6 +:103D780080037EB880002A6880037EDC00007B0810 +:103D8800D421583CC661580BC24017843028F0042F +:103D98001800C621179717A8F1E710875C87C5D8C0 +:103DA80009893018F0091800C5D109993EE8F009C9 +:103DB8001800C5814B6890093008F0091900C5241E +:103DC8004B481AD44B4C1AD8F01F00342FEDC4A816 +:103DD80016973006C1B80996C4B80B893018F0098F +:103DE8001800C4B10B993EE8F0091800C4614A886C +:103DF80090093008F0091900C4044A681AD54A6CB9 +:103E08001AD8F01F00262FEDC3883004C1A80B94E0 +:103E1800C3A80B893018F0091800C1310B993EE886 +:103E2800F0091800C0E149A890093008F009190004 +:103E3800C08449881AD5498C1AD8F01F00182FED6C +:103E48000E9C089A0C9B5C7CF01F0015581CC03017 +:103E5800E06C00FFD82230072FF4F6040004CA11E2 +:103E6800CB9B09853018F0051800CB6030062FF57C +:103E7800E8050005CB31CCAB0B883019F2081800E7 +:103E8800CC7030042FF81005CC51CDBB000016A221 +:103E98008003791480037CBC800094C480003C506B +:103EA800D431204D1495740A501A18961788301971 +:103EB800F2081800C771F6C7FFFE1794C1700F8982 +:103EC800F0091800C1310F993EE8F0091800C0E167 +:103ED8004B7890093008F0091900C0844B581AD75C +:103EE8004B5C1AD8F01F00352FED4B189088EDB8B1 +:103EF8000002C0A14AF81AD44B1C1AD61AD51AD8EF +:103F0800F01F002E2FCD3028F0041800E08B004B56 +:103F18003006304030114A624A63C3E80F88E0082F +:103F28001800C4010F990FA8B168F1E911880FB9F9 +:103F3800F1E910880FC92FB7F3E810085807C170C6 +:103F48000F89E2091800C1310F993EEAF4091800F7 +:103F5800C0E18409300AF4091900C0941AD7496CE1 +:103F68001AD35028F01F00152FED400850388489C7 +:103F7800EDB90002C0A11AD84029492C1AD91AD67D +:103F88001AD3F01F000E2FCDF9D6C008FACBFFF4D4 +:103F98002FF6F01F000D0836CC253008301CAAC8B3 +:103FA800C038E06C00FF2FCDD8320000000016A208 +:103FB80080037A4C80037CBC800094C480037F0813 +:103FC80080037F308000C19CD431203D3019149487 +:103FD800189674051788F2081800E0810085F6C75E +:103FE800FFFE1792C1700F89F0091800C1310F99AF +:103FF8003EE8F0091800C0E14BD890093008F009F4 +:104008001900C0844BB81AD74BBC1AD8F01F003B14 +:104018002FED4B789088EDB80002C0A14B581AD20A +:104028004B7C1AD61AD41AD8F01F00342FCD30384A +:10403800F0021800E08B005830064AD04AD1FAC383 +:10404800FFF8C4B80F88304AF4081800C4C10F99A3 +:104058000FA8B168F1E911880FB9F1E910880FC903 +:104068002FB7F3E810085807C1800F89301AF409F0 +:104078001800C1310F993EEAF4091800C0E180091F +:10408800300AF4091900C0941AD749BC1AD150282B +:10409800F01F001A2FED400850288089EDB9000262 +:1040A800C0911AD8497C1AD51AD61AD1F01F001314 +:1040B8002FCD5816C0805826C0B0069B0A9CF01F0A +:1040C8000012C0A8069B0A9CF01F0010C058069B4F +:1040D8000A9CF01F000F2FF60436CB553008301C11 +:1040E800A8C8C038E06C00FF2FDDD832000016A247 +:1040F800800378F080037CBC800094C480037F0830 +:1041080080037F308000CBC88000CA748000CA92C8 +:10411800D421FACD00884C6816979088EDB8000233 +:10412800C0B14C48201D1ADC1AD84C384C3C1AD85F +:10413800F01F00432FCD344A300BFAC6FFFC0C9C0D +:10414800F01F0040306AE06B00FFFACCFFDBF01F85 +:10415800003D0F8A31F8F00A1800E08B008930889A +:10416800EECBFFFFFB68003C0C9CF01F00370F896B +:10417800FB6900244AE89088EDB80002C0A14AE82B +:10418800201D4B2C1AD91AD61AD8F01F002D2FCD66 +:104198000F882FF8FAC6FFB810070C9C0E9B173A29 +:1041A800F01F002BFAC9FF780F88F20800083009C1 +:1041B800F169FFC049E89088EDB80002C0B10F88E6 +:1041C800201D1AD849C81AD64A2C1AD8F01F001C24 +:1041D8002FCD0F8A3018FAC7FFFC3089FACBFFB809 +:1041E8000E9CF01F001D581CC0C0491890093008CB +:1041F800F0091900C3C44908498C1AD81AD8C0E86C +:10420800497CF01F000F0E9C300BF01F001618970A +:10421800581CC080201D1ADC493CF01F00092FEDF6 +:10422800C268492CF01F00060E9CC238000016A276 +:1042380080037A248003787080037F50800094C4C0 +:104248008002E8BC8002E73680037CB08002EE0C76 +:1042580080037F648001908480037F7880037FA03F +:10426800800099A880037FB880037FC0E06C00FFBE +:104278002DEDD822D42120AD4A461697178A31F859 +:10428800F00A1800E08B002FFAC5FFF92FFB0A9CF3 +:10429800F01F001F0F88FAC9FFD8FB680027100914 +:1042A8003008F368FFDF8C88EDB80002C0814998B8 +:1042B8001AD5499C1AD8F01F00192FED300BFACCEB +:1042C800FFF9F01F00171897581CC1B048F890095B +:1042D8003008F0091900C1541ADC48E8491C1AD8FA +:1042E800C0D88C093008F0091900C0353FF7C098CC +:1042F800201D488848CC1AD83FF7F01F00082FED3A +:104308000E9C2F6DD8220000000016A28002E7360E +:10431800800378E080037B18800094C4800099A80B +:1043280080037D5480037FC4D431216D4D281697B6 +:104338009088EDB80002C0B14D08201D1ADC1AD8CB +:104348004CF84D0C1AD8F01F00502FCD321AFAC66F +:10435800FFFD300B0C9CF01F004D0F8A31F8F00A5E +:104368001800E08B0085EECBFFFF0C9CF01F004887 +:104378000F88FB6800234C089088EDB80002C081C4 +:104388004BF81AD64C3C1AD8F01F003F2FED0F8679 +:104398002FF6EE060006FAC7FFAC0C9B0E9C173AE8 +:1043A800F01F003D0D88FAC9FFA8F20800080E9C0E +:1043B8003003F163FFFCF01F00393038EFDCC00830 +:1043C8000D89F00718005FB53018F00918005F185C +:1043D80010450A94E6051800C4A1ECCBFFFDFAC30A +:1043E800FFDC2FE6069C0D8AF01F002B0D88FAC90A +:1043F800FFA8F2080008069BF165FFCCFAC5FFC0CC +:104408000A9CF01F002730D81896F00C18005F1986 +:104418003058F00C18005F18F3E80008E808180096 +:10442800C261FAC4FFB2306AE06B00FF089CF01F5B +:1044380000170C9B08990A9A0E9CF01F001A0E9CF4 +:10444800F01F0019300BFACCFFFDF01F0018581CA4 +:10445800C100489890093008F0091900C0844888BC +:104468001ADC493C1AD8F01F00082FEDE06C00FF59 +:104478002EADD832000016A280037888800379AC6C +:1044880080037F50800094C48002E8BC8002E73635 +:1044980080037FE48002EE0C8002DC2C80009868A8 +:1044A8008001927080019258800099A880037D5401 +:1044B800D401319CF01F0010E06B00EFFE7C280057 +:1044C800F01F000E581CC060FE7C2800F01F000C76 +:1044D800CFC0319CF01F000B48B890093008F00994 +:1044E8001900C0844898201D489C1AD8F01F00095C +:1044F8002FEDD8028000A3008000A7FA8000A7F261 +:104508008000A2E6000016A28003790880037FF0ED +:10451800800094C4D431202D3008FAC7FFF81696CD +:10452800189514930EE81694098B0A9C2FF4F01F23 +:104538000009581CC0B00E9B0A9CF01F0007089881 +:104548000C18E6081900CF13300C2FEDD8320000F4 +:104558008000A7FA8000A816D421202D30081496D0 +:10456800F80C002C129AFAC9FFF812E84A88F00CE5 +:10457800002C169578280C9B0A9C5D184A583049DF +:10458800319C9109F01F00249ABA0C9BFE7C2400F0 +:10459800F01F00221897319CF01F00214A189088BC +:1045A800EDB80002C0414A0CF01F002049D890889D +:1045B800EDB80002C0D149E8201D49EC1AD8F01F17 +:1045C800001B49D80A9C908BF01F001C2FED4958FE +:1045D8009088EDB80002C041499CF01F00144918AA +:1045E8009088EDB80002C0C14918201D491C1AD88E +:1045F800F01F000E9AFB0C9CF01F00102FED9A394B +:1046080049080E9CB0092FEDD8220000000011E0E7 +:10461800000011B88000A3008000451C8000A2E6BD +:10462800000016A080038008800094C480037800EE +:1046380080037C84000011BE80013DB48003800C9F +:10464800000011BCD431202D4BC43048E8C3FFF022 +:10465800BAF81897199616910C90F8C2FFFD2FC456 +:104668003005E21000400988EC081800C4B107883A +:104678003029F2081800C1F10A9C4B08EA05002508 +:10468800029AF00500240E9BE8C5FFF46839F01F74 +:10469800002CC030301CC4E868086A0A049B0FACC0 +:1046A8005D18BAFCE216004030181BF9F009180032 +:1046B800C3C1C3D85800E00A1700F9BA0100E8F8E6 +:1046C800FFFC049B0FAC5D18BAFC30190788F20890 +:1046D8001800C0B10A9C4998EA050025029AF0051D +:1046E80000250E9B6A39C0A83049F2081800C0A1FD +:1046F800029A0E9B0A9CFAC9FFF9F01F0011C170BB +:10470800C1882FF52EC42EC3E0450024CAD148D84D +:1047180090093008F0091900C08448B81AD648BC76 +:104728001AD8F01F000B2FED302CC048304CC02891 +:10473800300C2FEDD8320000000011E080004560F9 +:10474800000016A28003789880038010800094C42B +:10475800D421202D4BD8910C30094BD8118AF20A5C +:104768001800E08000DAB08930085018E1B800007D +:10477800EE180001F5D8C201C020D303FE7824004A +:104788003019706BF7D9D001916B706BF7D9D0C124 +:10479800916B706BF7D9D081916B580AC020D50303 +:1047A8004AC7FACAFFFC6E0B4ABCF01F002C1896C9 +:1047B800C6E04AB8303A6E09910A401B4A98161961 +:1047C800B009E06A03FFF4091900E0880005E06910 +:1047D8000400B0094A064A37EC0B000B4A2C8E8AB3 +:1047E800F01F002230084A2BAC8849FCF01F00213A +:1047F800584CC2204A089088EDB80002C0C149F858 +:10480800201D49FC1AD8F01F001F8E8B496CF01F21 +:10481800001E2FED49889088EDB80002C0D1497874 +:10482800201D497C1AD8F01F00174988490C908B25 +:10483800F01F00152FED4879300893084899B20801 +:1048480048799308C46800000000152C0000151C66 +:10485800000014B0000014B880002D70000011B8DA +:10486800000011BE00000DB88002E736000009B84C +:104878008000464C000016A0800379D880037C8411 +:10488800800094C480013DB4000011BCF01F0024D6 +:104898004A489008EC081900C0A44A3890881AD8E9 +:1048A8004A284A3C1AD8F01F00232FED4A289009BD +:1048B8003008F0091900C0644A084A1C909BF01F90 +:1048C80000214A19300893084A09B20849C9B28830 +:1048D800E06B0120FE7C0D80F01F001DE1B8000098 +:1048E800EE180001F5D8C201C020D303FE782400D9 +:1048F8003019705BF7D9D001915B705BF7D9D0C1E3 +:10490800915B705BF7D9D081915B580AC020D503C1 +:10491800319CF01F00102FEDD8220000800044B811 +:10492800000016A2000014B4800379D88003802CFC +:10493800800094C4000016A6000014B0000014B84B +:1049480080013DB4000011B8000011BE8000A20033 +:104958008000A300D431207D4B6730054B664B782F +:104968001188EA081800EC081710EE0817004B4CDD +:104978001AD8F01F00344B481188EA081800EC07D1 +:1049880017104B2C50074B2230074B23F01F002DDC +:104998000E942FED4B01CBD86A005800E08000B28E +:1049A80080286009201D1AD95028F01F002C602A81 +:1049B8002FFD580AE60A1700E20A171040185C781B +:1049C80060491AD84A681ADC1ADA4A6A5809F40996 +:1049D8001700F00917104A4C1AD91AD01AD61AD744 +:1049E800F01F001860482F8D5808C431E0C9FFBC7B +:1049F800720A580AC0E0744B201D49CC1ADB1ADA37 +:104A08001AD850595048F01F000F2FCD40084019B0 +:104A18002FF82FC95848CED161585808C610704988 +:104A2800493C1AD91AD8F01F00072FEDC598000085 +:104A3800800380548003805C000016AB8003806094 +:104A4800800094C400007B078003807400007B080A +:104A580080037BE480037BDC800096A880037DC410 +:104A680080037DC880038088800380B8800380D05D +:104A780061E85808C350F11900127008201D1AD8AF +:104A8800507850395028F01F002761EA2FFDF53B78 +:104A9800001040291AD940281AD81ADC4A2C1ADBE7 +:104AA8001ADA50B8F01F0021FACAFFE00C9B5084B4 +:104AB800FB5400240E9CF01F001E2FBD40305050A8 +:104AC8001AD0FB1800145028F01F00162FFD4018AC +:104AD8001AD81AD01ADC497CF01F00142FCD0E9C6E +:104AE800F01F001549594968580CF2081710201D85 +:104AF800494C1AD8F01F000D493CF01F000C2FED4F +:104B08002FF62FC55826FE91FF492FF75847C0505A +:104B1800E40700353006C41BF01F000C2FADD83257 +:104B2800800096A8800380E8800094C4800021C893 +:104B380080038114800070788003812C8003812891 +:104B480080038130800381408000D680D431204D9D +:104B58004BE812911896169711895809C1A119881E +:104B6800B6881998EA18FFFFE818FF80B6C9B69802 +:104B7800B6A93EE8B6B83048A2084B589088EDB8B8 +:104B88000002E08100E7201D4B284B3C1AD8C228C0 +:104B9800FACCFFF4F01F0031403366105800C1E131 +:104BA8000D88AE880D98EA18FFFFE818FF80AEA0C0 +:104BB800AE9830093EE8AEC9AEB83048A2084A48B7 +:104BC8009088EDB80002E08100C5201D4A184A4CC3 +:104BD8001AD8F01F00242FEDCBC858B0F9B0020A3C +:104BE80030044A12C0786408F004032C2FF4F01F34 +:104BF800001F641849C51034CF736A0C3004F01FC5 +:104C0800001B8B14661B580BC460A36B301CF01F71 +:104C180000188B0CC3A1497CC1486608F002030B3D +:104C28006A080408501B5008F01F00134008910C34 +:104C3800401B6A082FF4F002030C580CC20148FC10 +:104C4800F01F0008C2880000000016AA000016A283 +:104C58008003783C8003816080018F048003817C1D +:104C6800800094C4000015208002E28C8002DC3CA5 +:104C7800800381988002E2A4800381C0344AF01F37 +:104C880000376A182FF88B18E8021502344C66189A +:104C98001034CC430D88AE880D98EA18FFFFE81849 +:104CA800FF803005AE98AEA030364AD20A984AD96D +:104CB8000E93640AEA0B1502F40B030AF537002079 +:104CC800F4070B08ECCCFFFF2FF7E60C000C5C5741 +:104CD800300AE6060B07C0886404E80B0304E80AF8 +:104CE80007042FFA18C40E9EEE0A1900CF630E9A15 +:104CF8002FFAF4060006928A5C56EDBA0002C1D17A +:104D0800640A202DF40B0304503950281A9C306A89 +:104D1800E8CBFFDFF01F001168CA1ADAE93A003859 +:104D28001ADA491A1AD7491C1AD41AD51ADAF01FEE +:104D380000102F8D400840192FF50035CBB53EE8FF +:104D4800E6060B08069730080C07AE982FF6A20661 +:104D5800302C2FCDD83200008002E7360000152015 +:104D6800000016A28003783C800381E4800094C48C +:104D780048781188580CC0215EFF5C68100C300818 +:104D8800F9390015F00918005F1C5EFC00001530A9 +:104D9800D4211897580CC2A04968F129000030089E +:104DA800F2CA0004F00900065836F5D8E9062FF8CB +:104DB800EE06002C791C163CC17148F89088EDB8B5 +:104DC8000001C0A148D81ADB48DC1AD61AD71AD86D +:104DD800F01F000C2FCDF9D6C00830082F06EE06BC +:104DE80000278F18D8225848CDE1E06C00FFD82260 +:104DF80000001530000016A2800382688003830437 +:104E0800800094C4D42118971695580CC2B04978DC +:104E1800F12900003008F2CB0004F00900065836EA +:104E2800F7D8E9062FF8EE06002A751A580AC03096 +:104E38000A3AC16148E89088EDB80001C0A148D895 +:104E48001AD548DC1AD61AD71AD8F01F000C2FCD5D +:104E5800EE060027F9D6C008EF450044D822584886 +:104E6800CDD1E06C00FFD82200001530000016A25A +:104E780080038CF080038304800094C4D4211897A5 +:104E8800580CC2A049E8F12A00003008F4CC00040C +:104E9800F00A00065836F9D8E9062FF8EE06002978 +:104EA80073195809C170580BC0F049689088EDB85B +:104EB8000001C0A149481AD9494C1AD61AD71AD89C +:104EC800F01F00132FCDEE06002748D8B0866F1CC0 +:104ED800D8225848CDE1580BC10048A8900930089D +:104EE800F0091900C0A448881AD748AC1AD8F01F8E +:104EF8000008300C2FEDD822D82A00000000153009 +:104F0800000016A280038CB880038304800094C438 +:104F180080038324D4214CB816951188189730063D +:104F2800EC081800E08000B6300BF01F004718941A +:104F38005807E0800097580C5F19EC0518005F08C7 +:104F4800F3E81008EC081800E080008C4BF8908813 +:104F5800EDB80002C3314BE811894BE89088EDB8F1 +:104F68000001C2C15C69EE09002871185808C041E7 +:104F7800109E1096C098EE09000AF53E0015F2CA78 +:104F8800FFF8EE0A03266F5A201D580AF40C170082 +:104F9800F5FC10045808F00B1700F1FB10041ADE9A +:104FA8001AD61ADC1ADA1ADB1AD84AB81AD74ABC3F +:104FB8001AD91AD8F01F002A2F6D5805C3D068488F +:104FC80058485F1958085F181268C3304A08118991 +:104FD8004A089088EDB80001C2C15C69EE09002852 +:104FE80071185808C04110951096C098EE09000A2B +:104FF800F5350015F2CAFFF8EE0A03266F5A201D90 +:10500800580AF40C1700F5FC10045808F00B1700A8 +:10501800F1FB10041AD51AD61ADC1ADA1ADB1AD8D8 +:1050280048D81AD748DC1AD91AD8F01F000D2F6DA6 +:10503800E93C0013D8226F58F13C0013D822000035 +:10504800000016AB80004E84000016A80000153042 +:10505800000016A28003828C80038348800094C4D9 +:1050680048D890093008F0091900C1345807EE08EB +:105078001700EE041700EFF810151AD848781AD45C +:10508800487C1AD71AD8F01F0007300C2FCDD82229 +:10509800D82A0000000016A88003828C8003838C25 +:1050A800800094C4D421580CC25049D8F12900007A +:1050B8003008F2CA0004F00900075837F5D8E907A4 +:1050C8002FF8F807002E7D1E163EC12149589088FA +:1050D800EDB80001C0A149481ADB1AD71ADC493CCF +:1050E8001AD8F01F00132FCD0E9C5C5CD8225848AC +:1050F800CE31490890093008F0091900C045E06C24 +:1051080000FFD8224888201D1ADB1ADC48AC1AD8C0 +:10511800F01F0007E06C00FF2FCDD82200001530EB +:10512800000016A6800382BC80038304800094C418 +:10513800000016A2800383C0D421580C5F18580BB6 +:105148005F1918961695F3E800081494C590580A44 +:10515800C5704AC89088EDB80001C0C114985C7841 +:10516800201D1AD84A881ADB4A8C1AD8F01F002842 +:105178002FCD4A889088EDB80001C0D14A28201D5B +:105188004A5C1AD8F01F0022089B0A9C5C7BF01F1F +:1051980000232FED300A5C74149C089BF01F00203C +:1051A8001897C0E149789008F8081900C29449682E +:1051B8001AD649CC1AD8F01F00162FEDC1C8089A84 +:1051C8000A9B781CF01F00180E9B6DECF01F00174F +:1051D8005C5CC12048B890093008F0091900C08407 +:1051E80048981AD6492C1AD8F01F00092FED0E9CA2 +:1051F800F01F0010DC2A0E9CF01F000EDA2ADC2AB1 +:10520800000016A280038CE4800383E8800094C425 +:10521800000016A080037C8480013DB48000D31870 +:10522800800383FC8002E7368001153880038428D8 +:105238008000D13CD421149518971696580CC0417B +:10524800E06C00F6D822F01F00163FF8E9DCC00831 +:10525800F0041800C041E06C00FFD822491890887B +:10526800EDB80001C0E16C48201D1AD848E85C651B +:1052780048EC1AD51AD61AD71AD8F01F000D2FAD38 +:105288006C4858485F0948B8B0893008EE040004F3 +:10529800E9680068F01F00088F7CD82A800050ACAD +:1052A800000016A280038D1080038450800094C4EF +:1052B80000007B0780009504D43118971695F01FDD +:1052C80000353FF8EDDCC008F0061800C5E0EE0632 +:1052D80000083009F1690015ECC8FFF8EE0803244E +:1052E8005804C5304AC89088EDB80001C0A14AB832 +:1052F800201D4ABC1AD41AD41AD8F01F002A2FCD60 +:10530800EB1800726EF91238F20817B00838F0047A +:1053180017804A589088EDB80001C051F01F00234B +:105328004A38910CECC8FFEA3019EE08032B089AAA +:105338000A9C5C7AF01F001FE7DCC008C19049A8EE +:105348009088EDB80001C0F16A48201DF3D3B00879 +:105358001AD91AD41AD849181AD5497C1AD8F01F5C +:1053680000112FAD0C073008EF680015C10830197F +:10537800ECC8FFF8EE060006ED690015EE080329F3 +:105388000819EE080929C038E06300FF069CD832E6 +:10539800800050AC000016A680038C7880038474CB +:1053A800800094C4000016A2800095040000153403 +:1053B800800109C08003848CD43116941493189703 +:1053C800580CC1014AB89008F8081900E08400D3C5 +:1053D8004A98201D4A9C1AD8F01F00293FFC2FED3F +:1053E800D832300BF01F0027189B18960E9CF01F20 +:1053F80000263FF8EBDCC008F0051800E08000BB91 +:105408004A289088EDB80001C0E1F1D3C010201DF2 +:105418001AD849981AD449EC1AD61AD71AD8F01FAC +:1054280000182FAD49B89088EDB80001C0D14928BF +:10543800201D499C1AD8F01F0012F7D3C010089CF1 +:10544800F01F00162FED49189088EDB80001C4B17F +:105458004938118948789088EDB80001C4415C69E1 +:10546800EE09002871185808C1C11092109EC21880 +:10547800000016A280038D20800384C0800094C49D +:1054880080004E84800050AC000016A6800384D8AB +:10549800000016A080037C8480013DB40000153014 +:1054A800EE09000AF5320015F2CAFFF8EE0A032EDB +:1054B8006F5A201D580AF40C1700F5FC1004580800 +:1054C800F00B1700F1FB10041AD21ADE1ADC1ADAF4 +:1054D8001ADB1AD84A881AD74A8C1AD91AD8F01F50 +:1054E80000282F6D5806C46058045F183009F2036D +:1054F80019005F1AF5E80008F2081800C3B0EAC8F6 +:10550800FFEAEE08032C580CC3506C4858785F0B20 +:1055180058485F0AF7EA100AF20A1800C0515828DA +:10552800C0305838C2715C73089B069AF01F00158A +:10553800EAC9FFEA300AEE090328F0030B0A4928F2 +:105548009088EDB80001C0A1EE0903281AD848A830 +:1055580048EC1AD8F01F000A2FED48DB0C9C2F8569 +:10556800EE050923F01F000B0C9B0E9CF01F000A90 +:10557800DA3ADC3A80038D2080038348800094C4A3 +:105588008002E736000016A6800384FC800055A040 +:105598008000D662800052C0D431149518971696B0 +:1055A800580CC041E06C00F6D832F01F001D3FF8DF +:1055B800E9DCC008F0041800C041E06C00FFD832F4 +:1055C8003009EE040008F16900683019F169001526 +:1055D80049489088EDB80001C171E8C8FFF8EE08A5 +:1055E8000323F01F00114918201D1AD37008F8086A +:1055F80001081AD848E85C7548EC1AD51AD61AD8A2 +:10560800F01F000D2FAD2F84EE04032C580CC06042 +:105618000C9B0E9CF01F0009300CD832800050AC57 +:10562800000016A2800095040000153480038D50F8 +:1056380080038508800094C4800052C0D421189744 +:10564800580CC1C0F01F000E18965BFCC060EF3B01 +:10565800000B5C5CF01F000B48B89088EDB80001A7 +:10566800C0A148A8201D48AC1AD61AD71AD8F01FCE +:1056780000092FCD30094888B089D82280002044FD +:1056880080002068000016A280038D3C80038538C6 +:10569800800094C400007B07D4314898189711897A +:1056A80048889088EDB80001C3015C69F8090028B2 +:1056B80071185808C08110951096C0D80000153090 +:1056C800000016A2F809000AF5350015F2CAFFF81D +:1056D800F80A03266F5A201D580AF40C1700F5FC27 +:1056E80010045808F00B1700F1FB10041AD51AD64D +:1056F8001ADC1ADA1ADB1AD84C281AD74C2C1AD901 +:105708001AD8F01F00422F6D0E9C3005F01F004084 +:10571800EEC6FFBC0A924BF34BA45C5CF01F003E44 +:105728006C08300B2FF5109C5808C1D0F01F003BB7 +:105738006C0C300BF01F003A6C0C300BF01F00396A +:105748006C0C300BF01F00388688EDB80001C0B132 +:10575800201D1AD26C0870484B4C1AD81AD4F01F66 +:10576800002B2FCD2FC65845CDC16F5C580CC1D02A +:10577800300BF01F002A300B6F5CF01F002D6F5CA0 +:10578800F01F002C4A385C5C9088EDB80001C0D14D +:10579800201D5C6C1ADC6F5870481AD849984A6CFE +:1057A8001AD8F01F001A2FCD6FEC580CC060F01FEC +:1057B80000236FECF01F00224A28F1260000495808 +:1057C8009088EDB80001C0E1ECC8FFEAEE080328B4 +:1057D800201D1AD848B81AD649BC1AD8F01F000B91 +:1057E8002FCD2EA6EE06032C580CC060F01F001714 +:1057F8003008EE0609280E9CF01F0014D83200006D +:1058080080038CC880038348800094C480002044AF +:10581800000016A280006F288000D6588000D6624B +:105828008000D65C8000D668800385608000D66ED4 +:105838008000E50480038588800111C88001122852 +:1058480000001530800385B08002E28CD4211897BF +:10585800580CE080007EF01F00413FF8EDDCC008E6 +:10586800F0061800C750EE0600287114089CF01FB7 +:10587800003CEBDCC008C0D10A9B089CF01F003933 +:105888000A9B089CF01F00380A9B089CF01F0037F1 +:105898004B789088EDB80001C0D1F1D5B0081AD87E +:1058A80068481AD84B381AD44B3C1AD8F01F003322 +:1058B8002FCD4AF43FF8F0051800C1718809300867 +:1058C800F0091900C0D4EE0600287118201D1AD856 +:1058D8004AB81AD64ABC1AD8F01F00282FCD0C0790 +:1058E8003018EF68006CC368EE0600083009F169EB +:1058F800006CEE0600280E9C711BF01F00238888A0 +:10590800EDB80001C0E1ECC8FFEAEE080328201D4D +:105918001AD849B81AD649DC1AD8F01F00182FCD62 +:105928002EA6EE06032C580CC060F01F0019300894 +:10593800EE06092848E89088EDB80001C0B149088A +:10594800201D494C1AD8F01F000D2FEDC038E06516 +:1059580000FF0A9CD8220000800050AC8000E504BB +:105968008000D6588000D6628000D65C000016A25F +:1059780080038D2C800385CC800094C480038CD850 +:10598800800385F880004D98800385B08002E28C02 +:1059980080038624D4211897580CC0E14BE890085E +:1059A800F8081900C7744BD8201D4BDC1AD8F01F13 +:1059B800003D2FEDD82278264BB85806C121F12595 +:1059C8000000F01F003A0E9CEF34000BF01F003867 +:1059D800089B5C5CF01F00370A07EF660068D82256 +:1059E80011894AD89088EDB80001C2C15C69F809EC +:1059F800002871185808C04110951096C098F809E9 +:105A0800000AF5350015F2CAFFF8F80A03266F5A9E +:105A1800201D580AF40C1700F5FC10045808F00B68 +:105A28001700F1FB10041AD51AD61ADC1ADA1ADB99 +:105A38001AD849A81AD74A0C1AD91AD8F01F001927 +:105A48002F6D4998F1260000ECC5FFF0EE05002502 +:105A58006A1C580CC1F078485898C1C05808C1A0B1 +:105A6800F01F001648C85C5C9088EDB80001C0C102 +:105A7800201D5C6C1ADC6A181AD84888490C1AD898 +:105A8800F01F00082FCDEE0600260E9C6D1BF01FA0 +:105A9800000DD822000016A2800382988003864455 +:105AA800800094C400001530800056A08000204477 +:105AB800800020688003834880010CEC8003865CAA +:105AC80080005854D4214B0818979009169630082E +:105AD800F0091900C0F44AD8F12800001AD8F1DBFF +:105AE800B0081AD84AA81ADC4AAC1AD8F01F002AFB +:105AF8002FCD4AA811893008F0091800C0414A8CF6 +:105B0800F01F00253FB8F0061800C3C15807C110A0 +:105B180049E830091188F2081800C0B53039F20890 +:105B28001800E08900075C68EE080028711BC0288F +:105B3800300B0E9CF01F001B49389088EDB800010F +:105B4800C1114928F1280000201DF0C9FFEAEE091B +:105B580003291AD91AD848E8493C1AD8F01F000E68 +:105B68002FCD48A6ED2800002EA8EE08032C580CCF +:105B7800C090F01F000EED28000030092EA8EE0896 +:105B88000929D822000016A200001530800382A837 +:105B980080038680800094C4000016AB800386B41E +:105BA80080004D98800385B08002E28CD42118973C +:105BB8001696580CC4E04A8890093008F009190074 +:105BC800C0C4F1DBB0081ADC1AD84A481ADC4A4CBF +:105BD8001AD8F01F00242FCD4A3811893008F0094F +:105BE8001800C0414A1CF01F001F3FB8F0061800FB +:105BF800C301499890093008F0091900C084497810 +:105C08001AD749BC1AD8F01F00172FED0E9CF01FA9 +:105C180000194998F126000048F89088EDB800016D +:105C2800C0E1ECC8FFEAEE080328201D1AD848B8DE +:105C38001AD6492C1AD8F01F000B2FCD2EA6EE0627 +:105C4800032C580CC060F01F000E3008EE0609281F +:105C5800D8220000000016A2800382D0800386C8E4 +:105C6800800094C4000016AB800386B4800386F8D5 +:105C78008000564400001530800385B08002E28C15 +:105C8800D4311897149678CC94CAF80A000A8FCAA7 +:105C98001093169512946E385808C1504A5CF01F3C +:105CA8000026EF18001A3509F0090D083008F00928 +:105CB8001900C0414A1CF01F0020EF08001A2FF8F5 +:105CC800EF58001A49E89088EDB80001C171202DFD +:105CD800304A1A9C089BF01F001BF01F001BEF386E +:105CE8000014F3D3C01050091ADC1AD849781AD610 +:105CF800497C1AD8F01F00102FAD0A9AEF3B001408 +:105D08000C9CF01F001409890998B168F1E9118801 +:105D180009A9F1E9108809BBEF3C0014F5D3C010BC +:105D2800104BF01F000D0C9CF01F000CD832000027 +:105D380080037FB4800094C4800384D4000016A23A +:105D48008002E736800096A88003827C800387184B +:105D580080007130800020088000D13CD431204D73 +:105D6800502C503BFAC4FFCC10916800681268238D +:105D780068386846129568545819E088000E4B58E0 +:105D880090093008F0091900E08402B0201D4B2862 +:105D98004B2C1AD8C2F85801C0C14AE89008E2084A +:105DA8001900E08402A3201D4AB84ADC1AD8C22888 +:105DB8005802C0C14A789008E4081900E0840296A5 +:105DC800201D4A584A7C1AD8C158501A500837CB57 +:105DD800301CF01F0025401A18974008C10149D807 +:105DE8009008F8081900E0840281201D49A849FCA0 +:105DF8001AD8F01F001F2FEDE08F0278402999383C +:105E0800B829300840395C729900B831992599DA77 +:105E180099E999F29943F9480050F9480044F9483A +:105E28000048F948004C5803E080008C3058F95875 +:105E38000074F01F0010EF4C00784865580CC1D171 +:105E48008A08F8081900E084020C1AD748A8C8582C +:105E5800000016A280038CA880038744800387640F +:105E6800800387848002DC3C800387A8800094C478 +:105E780080011200800382F88A88EDB80001C131E0 +:105E88006E08201D8EA51AD8F01F00366FE8500541 +:105E98001ADC1AD84B481AD84B484B5C1AD8F01F52 +:105EA80000352FAD6E258EAA6FEC5805C1210E9BCB +:105EB800F01F00315C5CC2504B089008EA081900DA +:105EC800E08401CF1AD74A984ADC1AD8E08F0175C6 +:105ED8004ACBF01F002DF5DCC008C0E04A789009D5 +:105EE8003008F0091900E08401BC201D5C6A49F8FB +:105EF8001ADA1AD7C499EF3C0014149BF01F002338 +:105F08006FEC0E9A4A2BF01F002349C8908CE21CB4 +:105F18000002E08001A76FE8F11900141AD970197E +:105F28001AD9F11900121AD970081AD848E81AD8DB +:105F380048E8499C1AD8F01F000F2FADE08F018F59 +:105F4800F01F00161892C2F148C89008F808190006 +:105F5800E08401871AD749281AD8492CC2D90000E9 +:105F6800800096A88003825C800382F88003880CF6 +:105F7800800094C480011320000016A280038824A6 +:105F88008003B409800112608000200880005C88CA +:105F9800800111F8800388848000E34080038C6CC2 +:105FA800800387E04B880E9BB083F01F0038EF63B7 +:105FB800006FEF63006CEF63006DEF63006E6E2897 +:105FC8004B355808E08100BD049B0E9CF01F003142 +:105FD800E7DCB0086EFCF01F0030E6C8FFEAEE0808 +:105FE800092C8A88EDB80001C0A14AC8201D1ADC16 +:105FF8004ABC1AD31AD8F01F002B2FCD2EA34A451E +:10600800EE0303285808C0B18A09F0091900E08492 +:1060180001281AD74A184A4C1AD8CCE84A3B049C9B +:10602800F01F00234A3B049CF01F00234A3B049CBA +:10603800F01F0023304A4A3B049CF01F00234A38D3 +:106048003009B0898A88EDB80001C0C1EE03032881 +:10605800201D1AD849181AD249DC1AD8F01F001185 +:106068002FCD4898118948A89088EDB80001C5310E +:106078005C69EE09002871185808C2B11093109590 +:10608800C3080000000015308000D658000016A292 +:1060980080004E0C8002E2A480038C6C800388A8E8 +:1060A800800094C4800388C480005BB48000D668F4 +:1060B800800069888000D65C800055A08000D66288 +:1060C800800067B48000D67200007B07800388F4E4 +:1060D800EE09000AF5330015F2CAFFF8EE0A0325A7 +:1060E800201D5808F00B1700F1FB10046F5A580ACE +:1060F800F40C1700F5FC10041AD31AD51ADC1ADAB6 +:106108001ADB1AD84B681AD74B6C1AD91AD8F01F51 +:1061180000362F6D049C4B598EAA0E9BF01F00343D +:106128005C5CE080009F4B3890093008F00919004A +:10613800E08400971AD74AA84AFC1AD8C3D88A8894 +:10614800EDB80001C0F1301B0E9CF01F002C6F58F9 +:106158001ADC1AD84A281AD74A9C1AD8F01F0022E3 +:106168002FCD8EAA4A7B049CF01F00275C5CC120BF +:106178004A0890093008F0091900C724201D5C6CF2 +:1061880049781ADC1AD71AD84A0CF01F00172FCDF5 +:10619800C678049CE06B00FFF01F001DEF4C005414 +:1061A8004945580CC0D18A08F8081900C5941AD76F +:1061B80048B8498C1AD8F01F000C2FEDC5188A88EA +:1061C8004959E21800021389C4505C69EE09002895 +:1061D80071185808C2211095109BC27880038C6CE6 +:1061E80080038348800094C48000523C8000E350C0 +:1061F800000016A28003891080004E84800389382D +:106208008003B4098000D7708003884C8000DC04C8 +:106218008003896400001530EE09000AF535001581 +:10622800F2CAFFF8EE0A032B7843201D5808F00A3B +:106238001700F1FA10041AD51ADB1AD31ADC1ADA85 +:106248001AD84AC81AD74ACC1AD91AD8F01F002B1C +:106258002F6D4ABB6F5CF01F002B300CC0283FFC31 +:106268004A95580CC0E08A093008F0091900C3A4FF +:106278004A68201D4A6C1AD8F01F00202FEDC32849 +:106288008A88EDB80001C2914A284A396E204A31FD +:106298005800F2001700F00017108E226E484A09C5 +:1062A8006EF35808F20117108E355818C0316FEC8C +:1062B800C058301B0E9CF01F001B49481AD05C7256 +:1062C8001AD15C751AD21AD31AD51ADC496C1AD7A6 +:1062D8001AD8F01F000A2F8D8907EF660014300CBA +:1062E800C0580E9CF01F00113FFC2FCDD832000083 +:1062F80080038C6C80038348800094C480006434DD +:106308008000D66E000016A280038CA880038988BE +:1063180080037BDC80037BE480037DC880037DC42D +:1063280080004E84800389A8800056A0D431203D87 +:10633800300730194B38E06504001892169191091E +:10634800E06007D00A9350070E964AF4C22826CC7C +:1063580058ACE08B001F4ADEFC0C032F3016C198A6 +:106368003006C178680CF01F002AE7DCB010C118AD +:1063780030185008C0E8680CF01F0025EBDCB0109E +:10638800C0883017C068680CF01F0021E1DCB0102D +:106398004A0A029B049CF01F00205BFCCD91580622 +:1063A800C161498870080438C0A4E208032BFACCFC +:1063B800FFF8F01F001A402B580BC0A14988201D78 +:1063C800498C1AD8F01F00182FEDC198300B502BAC +:1063D800F1D5C0100C99FAC5FFFC300650161AD535 +:1063E8001AD6402E5C731ADEF9D0C0101AD70C9A50 +:1063F8001AD31ADB0C9BF01F000D2FAD2FDDD83AF6 +:1064080000007AB800007AC0800382208002DC2C69 +:10641800800389E08002E278800098FC0000000C8C +:10642800800389EC800094C480005D64D4211897AF +:106438001696580CC041E06C00F6D8224C1890888B +:10644800EDB80001C0A14C08201D1ADB1ADC4BFC7A +:106458001AD8F01F003F2FCD4BA89088EDB8000147 +:10646800C0F16C481AD8ED1800241AD8ED18001C91 +:106478001AD84B584B7C1AD8F01F00352FCD0C9BDF +:106488000E9CF01F0035EDDCB008ECC8FFEAEE0802 +:1064980003285808C0804B18201D4B1C1AD8F01F21 +:1064A800002C2FED6EFCF01F002FECC8FFEAEE0861 +:1064B800092C4A489088EDB80001C0A14A28201D3F +:1064C8001ADC4A9C1AD61AD8F01F00212FCDECC826 +:1064D800FFEAEE0803285808C10149A99209F00902 +:1064E8001900C08449881AD74A0C1AD8F01F001816 +:1064F8002FEDE06C00FFD8220E9B2F06EE0600263B +:106508006C1CF01F001B49BB6C1CF01F001B49BB17 +:106518006C1CF01F001B6C1C304A49ABF01F001AA2 +:106528000E9CF01F001A583CE08B00075C5C300A98 +:106538000E9BF01F0017F01F00178F7CD82A000051 +:10654800000016A2800382E8800389F0800094C4CA +:1065580080038A1480004E0C80038A3880039DC013 +:106568008002E2A4800388A8800388C48000D658EB +:10657800800069888000D65C80005ACC8000D6688C +:106588008000659C8000D6728000204480002A002C +:1065980080009504D43118971695580CC041E06CCA +:1065A80000F6D832F01F00473FF8EDDCC008F006CF +:1065B8001800C041E06C00FFD832ECC8FFF8EE08C4 +:1065C80003285808EFD6E108F1F91868F7B901FF70 +:1065D800F1F91E68EE0600083049F1380068F20843 +:1065E8001800E088001E4B89920A3009F20A190047 +:1065F800C0A41AD84B581AD74B5C1AD51AD8F01F12 +:1066080000352FCD0C070A9C3006301BEF6600685A +:10661800F01F0031E06C00FBEF66006CD8325805C3 +:10662800C1504AE89088EDB80001C101EAF800A815 +:106638001AD8EAF8009C1AD8EB3800AD1AD84A38AC +:106648004A7C1AD8F01F00232FCDECC8FFF8EE08BB +:1066580003245804C1D049C89088EDB80001C1810D +:10666800EE060008301BF1330068F132006C0E9C16 +:10667800F01F001C4958201D1AD41AD21AD31AD751 +:106688001AD51ADC498C1AD8F01F00122F8D0A9BD4 +:106698000E9CF01F0016EE0600033002E738006C6F +:1066A800E4081800C7100A9CF01F00113FF8E9DC45 +:1066B800C008F0041800C1D13018E768006CC4A8FD +:1066C800800050AC000016A280038C8C80038A4C9A +:1066D800800094C48000E124000016A880038A7C0E +:1066E80080004E8480038AB0800052C08000E50498 +:1066F800EE060028E762006C711B0E9CF01F002359 +:106708004A389088EDB80001C0E1ECC8FFEAEE080D +:106718000328201D1AD849F81AD649FC1AD8F01FA0 +:10672800001F2FCDECC3FFEAEE03032C580CC0600A +:10673800F01F001B3008EE03092849589088EDB86F +:106748000001C0814938201D496C1AD8F01F001378 +:106758002FED48F89088EDB80001C1610E9C301B00 +:106768000C07EF37006CF01F001048A81AD65C64BD +:106778001AD41AD71ADC48DC1AD51AD8F01F000721 +:10678800300C2FADD832D83A80004D98000016A2B0 +:1067980080038C8C800385B0800094C48002E28CD6 +:1067A8008003862480004E8480038AF0D4311897B1 +:1067B8001695580CC041E06C00F6D832F01F003E28 +:1067C8003FF8EDDCC008F0061800C041E06C00FF9F +:1067D800D8324BA89088EDB80001C1A1EE06000898 +:1067E800F1340068F133006C4B58301B11820E9C59 +:1067F800F01F00344B48201D1AD21AD31AD41AD7C6 +:106808001AD51ADC4B1C1AD8F01F00312F8DEE0652 +:1068180000083009F13A006CF20A1800C060F1393A +:1068280000682FF9F1690068EE060008F134006885 +:106838003088F0041800E08800224A68900930087F +:10684800F0091900C104301B0E9CF01F001E49E816 +:10685800201D1AD41AD71ADC49FC1AD51AD8F01FE9 +:10686800001C2FAD30080C070A9CEF680068301B2D +:10687800F01F001AE06C00FBD83249181189300863 +:10688800F0091800C0500A9B0E9CF01F0015EE0678 +:1068980000043008E939006CF0091800C6100A9C99 +:1068A800F01F00103FF8F00C1800C1D13018E9684B +:1068B800006CC3E8800050AC000016A800007B07FD +:1068C80080004E848003824C80038B2C800094C40B +:1068D800000016A280038B6C8000E124800052C067 +:1068E8008000E5040E9CF01F001F49F89088EDB861 +:1068F8000001C0E1ECC8FFEAEE080328201D1AD801 +:1069080049A81AD649AC1AD8F01F001A2FCDECC4E2 +:10691800FFEAEE04032C580CC060F01F0017300883 +:10692800EE040928EE0600083009F169006C48E811 +:106938009088EDB80001C1410E9C301BEE060006A0 +:10694800ED37006CF01F000D48881AD71ADC48CCC8 +:106958001AD51AD8F01F0007300C2FCDD832D83AE4 +:1069680080005644000016A28003824C800385B044 +:10697800800094C48002E28C80004E8480038B984F +:10698800D4311294580A5F1830091497F204180089 +:106998005F0318961695E7E80008F2081800C55036 +:1069A800335CF01F00406CC98EC8F20800088DC81F +:1069B8006C385808C0614BC89088EDB80001C231E6 +:1069C8004BA89088EDB80001C0918EC81AD84B88A2 +:1069D8004B8C1AD8F01F00382FED4B889088EDB8F3 +:1069E8000001C0C14B28201D4B5C1AD8F01F003293 +:1069F8008ECB6E1CF01F00332FEDED08001A2FF818 +:106A0800ED58001A0A9AED3B00140E9CF01F002E58 +:106A18004A689088EDB80001C1218EC8201D1AD897 +:106A28001ADCED38001430091AD91AD71AD51AD831 +:106A380049F84A6C1AD8F01F00202F8D0E9CF01FC1 +:106A48000024335CF01F002358075F081063C160FF +:106A580049689088EDB80001C0C1201D1AD5ED38ED +:106A680000141AD8492849CC1AD8F01F00132FCD82 +:106A78000A9B0C9CF01F0019C1385804C11048B873 +:106A880090093008F0091900C0B44898201D5C64CA +:106A98001AD7493C1AD41AD8F01F00072FCDD83A74 +:106AA8008000A300000016A6000016A280038C98A0 +:106AB80080038BC8800094C4000016A080037C84E7 +:106AC80080013DB48000713080038BD88000D13CB8 +:106AD8008000A2E680038C108000585480038C3C10 +:106AE800D42148C8189716969088EDB80001C0A11F +:106AF8004898201D1ADB1ADC488C1AD8F01F0008A9 +:106B08002FCDF7D6C0100E9CF01F0006D82200002B +:106B1800000016A280038D0480038C50800094C46A +:106B28008000D984D4213007C1B80C9C0E9B2FF665 +:106B3800F01F000D1895C0F078485808C0C1F01F24 +:106B4800000B0A9CEB35000BF01F00090A9B5C5CEC +:106B5800F01F00085846CEA12FF75827C03030063E +:106B6800CE5BD82280002024800056A080002044DC +:106B780080002068D4214978F00C07085808C071B3 +:106B88004959F20C070AF00A1800C1F04929F20C19 +:106B9800070AF4081800C1904909F80C001CF0080D +:106BA8000017A567EE0C0027120748D99289EDB99E +:106BB8000004C0C11AD848B81ADA48BC1AD71AD87B +:106BC800F01F000A2FCDC02830070E9CD8220000E5 +:106BD8000000153C0000153800007B2C000016A6AC +:106BE8008003901080038DE0800094C4D421169710 +:106BF8001496F01F0005C0609828AC087808301C6F +:106C08008F08D82280006B7CD43149B849B91092DA +:106C1800F00C0708F20C070718961AD7498C1AD8EF +:106C2800EC060014F01F001749732FEDA36431E53B +:106C3800EE070018A568E8080008E60800087009CB +:106C48005809C0C090BA90AB1ADB1AD9702848FC12 +:106C58001AD81ADAF01F000B2FCD2FF7E406070811 +:106C68005C57EE051800F9B70000EE081800CE11C1 +:106C7800D8320000000015380000153C80038DF460 +:106C8800800094C400007B2C80038E0CD431201D1E +:106C98004A181896F00C07073005F80C001849F048 +:106CA800A36849F149F231E349F4EE070019A569EF +:106CB800F0090009E0090009720A580AC1D0923B9C +:106CC800922A8289F40B010CE2190010F8050005DC +:106CD8005C855809C1105C7B5C7AF3D5C010201D17 +:106CE800492C1AD91ADB1ADA1AD61AD25068F01FA8 +:106CF80000102FAD40082FF7E80607095C57EE0390 +:106D08001800F9B70000EE091800CD010A9C2FFD04 +:106D1800D83200000000153C00007B2C000016A6AD +:106D280080038DA00000153880038E28800094C44D +:106D3800D421F01F000B48B8EFDCB0109088EDB8F4 +:106D48000004C0A10E985C781AD84878487C1AD8F4 +:106D5800F01F00072FED0E9CD822000080006C94D5 +:106D6800000016A680038D7080038E4C800094C4AA +:106D7800D4214A181897169631D9F20C1800E088D1 +:106D8800000F90093008F0091900C33449B81ADC1B +:106D980049BC1AD8F01F001B2FEDD822F60B001A99 +:106DA8009088F80C0019E2180010A569F20A002969 +:106DB800495AF40903055808C0A04908201D1ADCDF +:106DC800492C1AD51AD8F01F000F2FCD0A9CF01F96 +:106DD80000103008EC060016EE07001748A9A56752 +:106DE800EE060026F20600068D288D08AC28AC3881 +:106DF800D8220000000016A280038DD080038E6880 +:106E0800800094C400007B2C80038E888002E28C72 +:106E1800D4314948F80C00121896F00C0707A36201 +:106E2800491331E44915EE070018A568E40800087D +:106E3800E60803085808C0500E9C0C9BF01F000C75 +:106E48002FF7EA0607085C57EE041800F9B70000A8 +:106E5800EE081800CE914839300CF2060B08D832EB +:106E68000000153C00007B2C0000153880006D7870 +:106E7800D4211897580CC0E14A189008F80819004E +:106E8800C3C44A08201D4A0C1AD8F01F00202FED51 +:106E9800D82249FAF40B070CF8CEFFFFF80C001CB7 +:106EA800A56CF40B0B0E3008F60B0019F809002935 +:106EB800498CF809000993289308B228B23831E9B7 +:106EC800F20E1800C031F40B0B0848D89088EDB8C2 +:106ED8000004C10148E8F00B07081AD848E8F00B8D +:106EE80007081AD848781AD748CC1AD8F01F0007CC +:106EF8002FCD0E9CF01F000AD8220000000016A219 +:106F080080038D8480038E98800094C40000153C13 +:106F180000007B2C0000153880038DE08002E28C95 +:106F2800D42118970E9CF01F0005C060780C0E9BAA +:106F3800F01F0003CF8BD82280006B7C80006E7816 +:106F4800D421496818971696149512949088EDB82C +:106F58000001C0C14928201D1AD91ADA1ADB1ADC27 +:106F6800490C1AD8F01F00102FAD301B0A9CF01FD7 +:106F7800000FC080301B0A9CF01F000C784858088E +:106F8800C0510C9B0E9CF01F000A5804C0500A9B6D +:106F9800089CF01F0008D822000016A280038D600C +:106FA80080038EAC800094C48000202480006AE8AE +:106FB80080006E78D4211897F01F00061898C02119 +:106FC800D8220E9A782C700990ABF01F0003DA2AA9 +:106FD80080006B7C80006F48D42116961494189515 +:106FE800F01F001E1897C021D8229838982B7809CE +:106FF800F6081900C2B2F5D8C0105804C050F20AF9 +:107008000708AC88C068F20A0709AC892FF8B838B5 +:1070180049389088EDB80004C0D10D881AD86E0898 +:107028001AD88EB81AD848F848FC1AD8F01F000F9A +:107038002FCD8E3B8E28F6081900C0710A9A5C7B0A +:107048006E2C6E09F01F000ADA2A0A9A5C7B782CEB +:10705800F01F0007D82A000080006B7C000016A6ED +:1070680080038D9080038ED4800094C480006F4884 +:10707800D4211897F01F00231896C021D8224A2837 +:107088009088EDB80004C0D178081AD898A81AD802 +:107098008CB81AD849D849EC1AD8F01F001E2FCD41 +:1070A8008C398C28F0091900C020DA2A49A8908860 +:1070B800EDB80004C1614998201DF0070709498807 +:1070C8001AD9F00707081AD8F20818005F191AD950 +:1070D8006C081AD848D8493C1AD8F01F000E2FADB2 +:1070E8006C2C6C090E9A8CABF01F000F48C8F00787 +:1070F800070948A8F0070708F00918005F1CD822FC +:1071080080006B7C000016A680038DBC80038EE88F +:10711800800094C4000016A2000015380000153C39 +:1071280080038F0080006F48D43118951697149308 +:10713800580CC0311894CBD8F60B001A4A58F00BEB +:107148000708F0080019A569F20A00294A2AF40973 +:1071580003095809C1604A1A940B300AF40B190044 +:10716800C0A4201D1AD849E81AD949EC1AD8F01F2A +:10717800001E2FCD49780E9BF007070CF01F001B4F +:10718800301B8ACCF01F001A18961894E0800092E1 +:10719800189B30098ACA0A9CF01F00168A485C8C22 +:1071A800F00C1900C2C048D9920A3009F20A190035 +:1071B800C0B45C781AD848A81AD648FC1AD51AD888 +:1071C800F01F00092FCD0C9C3004F01F000CC718CD +:1071D8000000153800007B2C000016A280039004E4 +:1071E80080038F2C800094C480006D788002DC3C82 +:1071F8008000CEC480038F548002E28C4AE9F207F3 +:10720800070AF4CBFFFFF40A001AA56AEE07001874 +:10721800F2070B0BF40800284A8AF4080008300A21 +:107228009123B02C9106B03A31E8F00B1800C03128 +:10723800F2070B0A4A084A29F0070708F207070964 +:10724800F0091800C1C149F9920A3009F20A190077 +:10725800C0A4201D1AD81AD849B849CC1AD8F01F8A +:10726800001C2FCD4948F00707095809F9BA01FF52 +:10727800F3DAE109F9B9001DF0070B0949189088FC +:10728800EDB80004C1618AC848DAF407070A201D6E +:107298000D891ADA488AF407070A1ADA1AD91AD8A5 +:1072A80048981AD648BC1AD71AD8F01F00092F8D4B +:1072B800089CD8320000153800007B2C0000153CD3 +:1072C800000016A28003900480038F90800094C46D +:1072D80080038FBCD431203D1690502A1895F01F9A +:1072E8000021301BE5DCB010F9D2C010F01F001EE1 +:1072F8001896C2C049D8EA050019F0050707A3691E +:10730800189431E849A1189349ABEE070016A56611 +:10731800F2060006F60600066C0B580BC0B0089C77 +:107328008CAA50095018F01F00148CAA4018140495 +:1073380040092FF7E205070A5C57EE081800F9B76D +:107348000000EE0A1800CE110696402A5800E1F611 +:107358001A00580AF5F21C000C9C2FDDD8320000E8 +:1073680080006C948002DC3C0000153C000015385D +:1073780000007B2C8002E736D431303818971693FA +:107388001494F00C1800E088001B48989009300805 +:10739800F0091900C0353005CA2848681ADC3005DC +:1073A8001AD8485CF01F00052FEDC998000016A2F6 +:1073B80080038DB080038FE0800094C4F80C001A1D +:1073C8004C88F00C0708F0080019A569F20A002992 +:1073D8004C5AF40903095809C1604C4A940B300A05 +:1073E800F40B1900C0A4201D1AD84C181AD94C1C2B +:1073F8001AD8F01F00412FCD4BA80E9BF007070CA1 +:10740800F01F003E0892301B5C72049CF01F003C89 +:1074180018961895C640049A069BF01F003AEE0786 +:1074280000184B03E6070702E4020012A562E4080D +:1074380000224AD83001F0020002300B8506A4244D +:10744800A4310E9CF01F0030852CE60707082FF8A2 +:10745800E6070B0831E9F2081800C031E6070B010E +:107468004A084AA9F0070708F2070709F0091800AF +:10747800C1C149E9920A3009F20A1900C0A4201DC5 +:107488001AD81AD849A84A2C1AD8F01F001B2FCD91 +:107498004948F00707095809F9BA01FFF3DAE10981 +:1074A800F9B9001DF0070B0949089088EDB80004E8 +:1074B800C1610D884959F2070709201D1AD9489951 +:1074C800F20707091AD91AD848985C74491C1AD4C3 +:1074D8001AD61AD71AD8F01F00082F8D0A9CD8324E +:1074E8000000153800007B2C000016A280038DB028 +:1074F80080038F2C800094C480006D788002DC3C6F +:107508008002E736800020240000153C80038F901D +:1075180080038FBCD401E06A05A0300B482CF01F13 +:107528000003D80200007B2C8002E8BCD421202D67 +:10753800FE782800501C500B3FF7109E301CC308E3 +:10754800300B7049EDB90001CFD17049EDB9000990 +:10755800CFD140195809C0B01396F2C5FFFE138960 +:107568005015EDE91089F7D9D010C038F7D7D010E9 +:10757800913B7049EDB90000CFD17C2B40095C8B61 +:107588005809C080B29BF7DBC108B28B40092FE9CC +:107598005009F80A1900E0880006202A5C8A580A6F +:1075A800CD01FE78280070482FEDD822580CC06015 +:1075B800FE782800300A7019C058FE78280030FA82 +:1075C8007019F3DAD20491195EFC202D3008E069B5 +:1075D80013885018F8090249C058401A2FF82FFA92 +:1075E800501A1238CFB12FED5EFCD703D401303CCE +:1075F800F01F0005C060303CF01F0004F01F0004BD +:10760800D402D6038000A3708000A38880014014B0 +:10761800D401580CC060300B303CF01F0004D80275 +:10762800303CF01F0003D8028000A31A8000A35C3E +:10763800D401202D3008B888303CF01F0022303C9F +:10764800F01F0021309CF01F001F307CF01F001D30 +:107658003008501840192FF950192FF8E04861A840 +:10766800CFA1309CF01F00193008501840192FF98D +:1076780050192FF8E05886A0CFA1307CF01F0013D6 +:10768800340B300A492CF01F0013FE782800302AEA +:1076980070C9F3DAD108308A91C970C9F3DAD08495 +:1076A800301A91C970C9F3DAD06191C970C9F3DA97 +:1076B800D001303C91C9F01F00082FEDD80A000016 +:1076C8008000A2A88000A2BE8000A2E6800075F417 +:1076D8008000A3A08000A388D42120AD4C68E3B823 +:1076E8000001D5533017FE6810007109F3D7D20294 +:1076F800303AF1490040E06B1B00EA1B00B7FE7C02 +:107708000C00F01F003E310A201D30081ADA0E99CD +:10771800109B308AFE7C0C00F01F003930080E994F +:107728000E9A109BFE7C0C00F01F0036300BFE7C7E +:107738000C00F01F0035FE7C0C00F01F0034300CEC +:107748001ADC18981899189A1ADC189BFE7C0C00F9 +:10775800F01F002F0E9CF01F002F302BFE7C0C001A +:10776800F01F002DF01F002DD503304AFAC7FFD0B7 +:107778004ABB0E9CF01F002B302B0E9CF01F002ADA +:10778800FAC8FFDC4A99722C109B912CE06AF980A8 +:10779800EA1A0337F2E40000FE7C1800F0E5000066 +:1077A800F01F0023308A4A3B0E9CF01F001E310A4E +:1077B800FAC6FFEC300B0C9CF01F001F3018304B42 +:1077C800FB68002149DCF01F00180C9BFE7C280098 +:1077D800F01F001B3009FE7C2800129B129AF01F34 +:1077E80000190E9C0E96304BF01F000F2FCDFAC7D4 +:1077F800FFD8C2D8800376008000A5088000A4B016 +:107808008000A4CE8000A4E68000A4F48000A470C8 +:107818008000A2228000A4FE8000A3D080039038BC +:107828008002E7368000A2808003901C8000AA1C9A +:10783800800390308002E8BC800390288000A66214 +:107848008000A69C0D8C2FE6F01F000F0E36CFB1DE +:10785800FACBFFFCFE7C2800F01F000C3009FE7CF0 +:107868002800129A129BF01F000AFE7C2800F01FC5 +:107878000009302CF01F0008FE7C2800F01F0005CE +:107888002F6DD8228000A2BE8000A6628000A69C30 +:107898008000A7EC8000A2E6D42130A81896F00C4E +:1078A8001800C0C1E067271020175BF7C13030DB34 +:1078B800FE7C1800F01F0008CF81E0672710201712 +:1078C8005BF7C0800C9BFE7C1800F01F0003CF8183 +:1078D800D822DC2A8000A9AED401178A17B91798D4 +:1078E800B168F1EA118817AAF1EA1088F3E81008DC +:1078F8001AD81ADC483CF01F00042FEDD80200000B +:1079080080039064800094C4D421202D4AB811D9F2 +:10791800BAD97009500911C8BAC81A961895169498 +:10792800581CE08900064A6CF01F0026C448761CE3 +:10793800F01F0025201DEFDCC0084A4C1AD7F01FA5 +:1079480000212FED5825C2A0682CF01F001F201D14 +:10795800EDDCC00849EC1AD6F01F001A30182FEDDC +:10796800F0061800C111305A49AB0E9CF01F001ADE +:1079780030AA49AB0E9CF01F00180E9C308A498B28 +:10798800F01F0015C1883028F0061800C141300AE0 +:107998000E9C149BF01F0013C0E83038F007180045 +:1079A800E08B000A300B0E9CF01F000F1A9B306A08 +:1079B800F01F000E2FEDD82A800396B88003909808 +:1079C800800094C48002DC2C800390C4800390D093 +:1079D800800390E480007380800390EC800390F82B +:1079E800800072DC8000202480005140D421189649 +:1079F8001695582CC45176174B3B0E9CF01F00333C +:107A08001896C1014B2CF01F00334B38FE798000CB +:107A1800B0094B28B0064B28B0064B28B006E08FBB +:107A280001C44B1B0E9CF01F0029C1D14AA89088A5 +:107A3800201D4AEC1AD8F01F00274A8890884ACCA3 +:107A48005008F01F00244A6890884AAC5008F01F7C +:107A580000214A4890884A8C5008F01F001E2FEDDC +:107A6800E08F01A30E9C4A5BF01F0018C0C14A4C6E +:107A7800F01F0018E06900FF4978E08F0195582C45 +:107A8800E089000749FCF01F0013E08F018E762C77 +:107A9800F01F001D18975836E08101876A1649BB08 +:107AA8000C9CF01F000AC53148B85807E08A000846 +:107AB8009009A1A9B0095817C2A1C3089009A1C982 +:107AC800B009C2C8800391048002ECC88003910801 +:107AD800800094C4000016A2000016A6000016A09C +:107AE800000016A8800391148003911C8003913430 +:107AF8008003914C800391648003E18C8003917C26 +:107B0800800391888002DC2C800392144B799208C0 +:107B1800A1A8B2085827C071C0D84B499208A1C87B +:107B2800B208C0884B299208A1A8B2085837C0717A +:107B3800C0A84AF99208A1C8B208C0584AD9920800 +:107B4800A1A8CAC84AB99208A1C8CA884AAB0C9C5D +:107B5800F01F002AC2F14AA85807E08A00089009D5 +:107B6800A3A9B0095817C061C0C89009A3C9B00932 +:107B7800C08849E99208A3A8B2085827C071C0D89C +:107B880049A99208A3C8B208C08849999208A3A82D +:107B9800B2085837C071C0A849599208A3C8B2089A +:107BA800C05849499208A3A8C79849299208A3C868 +:107BB800C758494B0C9CF01F0011C3E149085807EE +:107BC800E08A00089009A1B9B0095817C061C1B886 +:107BD8009009A1D9B009C17848499208A1B8B2085A +:107BE8005827C161C1C80000000016A6000016A0F1 +:107BF800000016A88003921C8002ECC8000016A2A0 +:107C0800800392204B699208A1D8B208C0884B59CA +:107C18009208A1B8B2085837C071C0A84B19920889 +:107C2800A1D8B208C0584B099208A1B8C3784AE94C +:107C38009208A1D8C3384ADB0C9CF01F002DC30161 +:107C48004AC85807E08A00089009A3B9B00958172C +:107C5800C061C0C89009A3D9B009C0884A09920870 +:107C6800A3B8B2085827C071C0D849D99208A3D878 +:107C7800B208C08849B99208A3B8B2085837C07189 +:107C8800C0A849899208A3D8B208C058496992087F +:107C9800A3B8C04849499208A3D8B208C858496B44 +:107CA8000C9CF01F0013C3D149285807E08A00082C +:107CB8009009A5A9B0095817C061C0C89009A5C9FD +:107CC800B009C08848699208A5A8B2085827C151C8 +:107CD800C1B848399208A5C8B208C168000016A6FC +:107CE800000016A0000016A8800392248002ECC8A9 +:107CF800000016A2800392284AC99208A5A8B208D3 +:107D08005837C071C0A84A999208A5C8B208C05887 +:107D18004A799208A5A8CC2B4A599208A5C8CBEB5A +:107D28000C9C4A4BF01F0024C3F14A485807E08ACC +:107D3800000B9009EA19FFFFE8198000B0095817ED +:107D4800C071C1089009F3D9C00FB009C0B849C9BA +:107D58009208EA18FFFFE8188000B2085827C08187 +:107D6800C11849789009F3D9C00FB009C0B848F9CB +:107D78009208EA18FFFFE8188000B2085837C08157 +:107D8800C0E848A89009F3D9C00FB009C08848894D +:107D98009208EA18FFFFE8188000C80B48489009C5 +:107DA800F3D9C00FB009D82A000016A0000016A801 +:107DB800800392308002ECC8000016A2000016A6CC +:107DC800D421582CC2717617495B0E9CF01F001500 +:107DD800C1211897494CF01F0015201D494C1AD78E +:107DE800F01F00120E9C2FF7F01F00122FED5847BE +:107DF800CF51C1380E9CF01F0010201DEFDCC008C9 +:107E080048BC1AD7F01F00090E9CF01F000A2FED7E +:107E1800C04848ACF01F0005D82A000080039238FB +:107E28008002ECC88003923C800094C4800390C414 +:107E380080006C108002DC2C80039250D421207DBD +:107E4800306A18951696FAC7FFEAE06B00FF0E9C99 +:107E5800F01F00385825C1B16C1C4B7BF01F003750 +:107E68001896C4B14B6CF01F00370E9B0C9CF01F8A +:107E780000360E9B301CF01F00340E9B0A9CF01F2E +:107E880000320E9B303CF01F0030C5085825E08AB0 +:107E980000356C1CF01F002D6C2B1897500B169C8E +:107EA800F01F002B58DC5F04585C5F08E9E81008F5 +:107EB800ECC5FFFC109418963008FACCFFF8400B7C +:107EC800F0041800C0500C9AF01F0022C238F01FAE +:107ED800002258375F98580C5F091896F3E8100885 +:107EE800E8081800C0A15807C085C0916A08118920 +:107EF8003308F0091800C030498CC098585C5F18E6 +:107F080058DC5F19F3E80008C050495CF01F000D09 +:107F1800C0D85C570C9BFAC9FFEAFACAFFF80E9C56 +:107F2800F01F00100E9CF01F00102F9DD82A000093 +:107F38008002E8BC800392808002ECC880039288AB +:107F4800800094C48001921C8002DC2C8002EDD059 +:107F58008002EE0C800098688003929C800392DC7B +:107F68008001927080019258D421204D4ABC149609 +:107F7800F01F002B1A9CF01F002B581CC0504AAC55 +:107F8800F01F0027C0A81A9CF01F0028201D1ADC2B +:107F98004A7CF01F00232FEDF01F002618974A6C2B +:107FA800F01F001F5807C0514A4CF01F001DC04861 +:107FB8000E9CF01F00234A376E0CF01F0023C1F0FF +:107FC8006E087018201D1AD8F01F0020500C4A0C9B +:107FD800F01F00136E0870285008F01F001C500C8A +:107FE80049CCF01F000F6E0870385008F01F0017BA +:107FF800500C499CF01F000A2FEDC048497CF01F27 +:108008000008497CF01F00060DC93018F009180057 +:10801800C2A1494CC298000080039314800094C404 +:10802800800191288003932C8000967080039348E8 +:108038008001997C80039358800393A880009784DB +:10804800000080D08000CAE4800096A8800393686E +:10805800800393788003938880039398800393B078 +:10806800800393B8493CF01F0014FACCFFF4300B9E +:10807800F01F0012301B4037FACCFFF8F01F000F3A +:10808800201D1AD750574047F01F000D500C48DCF0 +:10809800F01F000950075047F01F0009500C48AC6A +:1080A800F01F0005F01F0009300C2FED2FCDD8224E +:1080B800800393C4800094C48000C1EC800096A81B +:1080C800800393D080039DC08000495CD421202D7B +:1080D8001695584CE089000649ECF01F001FC3684C +:1080E800FACCFFFC761BF01F001D6A2C4014F01F11 +:1080F800001C18976A3CF01F001A18966A4CF01F6B +:108108000018501418951ADC496C1AD61AD71AD4C4 +:10811800F01F0011089CF3D5C008F5D6C0080E9BC7 +:108128005C7BF01F00112FCD5BFCC10148F8900962 +:108138003008F0091900C0A448D81AD548DC1AD666 +:108148001AD71AD8F01F00042FCD2FEDD82A000017 +:10815800800393DC800094C4800098FC8002DC2CAF +:108168008003941480003958000016A280039054AC +:1081780080039448D4211695583CE089000649CCE0 +:10818800F01F001CC338761CF01F001B18976A2CC0 +:10819800F01F001918966A3CF01F00174978201D37 +:1081A80018941AD649651AD7580CF0051710495C67 +:1081B8001AD5F01F0010089AF7D6C0085C5A0E9C12 +:1081C8005C7CF01F00112FCD5BFCC10148F89009C1 +:1081D8003008F0091900C0A448D81AD648DC1AD7C4 +:1081E8001AD51AD8F01F00032FCDD82A80039488F7 +:1081F800800094C48002DC2C80037DC480037DC889 +:10820800800394B880003C50000016A28003969C1E +:10821800800394DCD421206D1697582CE089000641 +:108228004A4CF01F0025C438761CF01F00246E2B22 +:10823800F8C700011A9CF01F0022304A1A9BFAC6A0 +:10824800FFEC0C9CF01F001F201D40681AD8F01F7F +:10825800001E1ADC49DC1AD7F01F00170C9B0E9C75 +:108268005C5CF01F001BFACCFFE0300BF01F00191C +:10827800301B4087FACCFFE4F01F00162FDD505763 +:108288001AD74056F01F00101AD71ADC492C50870D +:10829800F01F00092FDD50461AD6F01F000B1AD622 +:1082A8001ADC48EC5076F01F00042FCD2FADD82AE9 +:1082B80080039510800094C48002DC2C800098FC18 +:1082C8008002E736800096A8800395388000C19C1C +:1082D8008000C1EC8003955480039564D421FACDC5 +:1082E8000108581CE0890006491CF01F0012C1D87B +:1082F800F6C9FFFCF8CA0001FAC7FFFCE06B0100F1 +:108308000E9CF01F000DC110300948CAFACBFEFCC4 +:108318000E9CF01F000B5C5CC0814418489C1AD866 +:108328001AD7F01F00042FED2BEDD82A800395747F +:10833800800094C480009710800078E08000C4C05A +:1083480080039064D43121AD18961695582CE08995 +:1083580000064A1CF01F0021C3B8FAC7FFFC344AC4 +:10836800300B0E9CF01F001E306AE06B00FFFACC49 +:10837800FFDBF01F001BFAC4FFB8EAC9FFFCECCA18 +:108388000002320B089CF01F00171893C210189AAD +:10839800089B0E9CF01F00143088FB6300242016F5 +:1083A800EA060326FB68003C0C9CF01F00100C9B9F +:1083B800189A30180E9C3089F01F000D581CC08088 +:1083C80048C8201D48CC1AD8F01F00042FED2E6D88 +:1083D800D83A000080039590800094C48002E8BCDD +:1083E800800097108002E7368002EDD080019084EB +:1083F80080039048800395B4D42121AD1696582C5B +:10840800C05049BCF01F001BC308FAC7FFFC344A20 +:10841800300B0E9CF01F0018306AE06B00FFFACC9E +:10842800FFDBF01F0015ECC9FFFC301AFAC6FFB8D5 +:10843800320B0C9CF01F00111895C170189A0C9BF8 +:108448000E9CF01F000F3088FB6500240E9CFB6813 +:10845800003CF01F000C581CC08048B8201D48BCC8 +:108468001AD8F01F00042FED2E6DD82A800395D45A +:10847800800094C48002E8BC800097108002E73630 +:1084880080018FF8800396AC800395ECD431204DA1 +:108498001493189516947406582CC091761C304A7B +:1084A8004A7BF01F0028C0513018C458584CC0806F +:1084B8004A5CF01F00264A6CF01F0024C3D8761BC4 +:1084C8001A9CF01F00240A9A1A9BFACCFFF4F01F9A +:1084D80000224A289088EDB80002C0B1201D40480B +:1084E8001AD849F81AD649FC1AD8F01F00182FCD07 +:1084F800FAC7FFF40C9C0E9BF01F001B682B1A9CFC +:10850800F01F0014304A1A9B0E9CF01F00130E9B9C +:108518000C9CF01F0016683B1A9CF01F000E304A96 +:108528001A9B0E9CF01F000C0E9B0C9CF01F001059 +:108538001A953008A6C82FCDD83A0000800392803B +:108548008002EDE680039610800094C48003964074 +:10855800800098FC8002E736000016A28003903C59 +:10856800800396688000CBC88000CA928000CA74D5 +:10857800D421212D581CE0890006491CF01F001148 +:10858800C1C8F6C9FFFCF8CA0001FAC7FFD8320B08 +:108598000E9CF01F000D1896C1000E9B189AFAC782 +:1085A800FFF90E9CF01F0009300BFB6600270E9C9C +:1085B800F01F0007F01F00072EEDD82A80039684CD +:1085C800800094C4800097108002E736800099A844 +:1085D8008000998CD401F01F0003F01F0003D80A13 +:1085E80080019EF880009820D40148BE1898300970 +:1085F8007C0C580CC0A1F2090019487EFC0900291E +:10860800932A9318930BD8022FF92F4E58F9CF11AC +:10861800DC0A000000001544D401484CF01F000497 +:1086280030194848B089D802800396C0800094C4A5 +:10863800000015F8D4314B68169570065806C050DE +:108648005816E08100BAC938580CE08000B5F01F10 +:1086580000314B18910C1897580CE08000AD19891F +:10866800EC091800C0415805C460C4284AB44AC37C +:108678008906C188EC060018E60800287012049CD8 +:108688005802C0E0F01F002718910E9CF01F00252B +:108698000E9BE20C0D4A049CF01F0023C3102FF61A +:1086A8008906680649D258E6FE98FFE658F6C28160 +:1086B8005805C210049749DCF01F001D3008498690 +:1086C8008508C128F0080018EC0800287009580926 +:1086D800C0807018201D497C1AD8F01F00152FED96 +:1086E8006E082FF88F086E0858E8FE98FFED492CA1 +:1086F800F01F000F4888700CF01F0010C5C80E9CB2 +:1087080048FB49074906F01F0011C2C8000016407F +:108718008002ED8400001644000015400000154456 +:108728008002EDD08002EDE6800396C8800094C4F4 +:10873800800396E0800396C48002E28C80039364F1 +:10874800000015FC000016008002EEB86E08EC0868 +:10875800092C2FF88F085908C070498B300CF01F6E +:108768000018580CCF41301949689109496949786E +:108778007008F0080018F20800284959702A720C8D +:108788007008494B5D18581CC1705805C040492CE9 +:10879800F01F001248E83007340A0E9B910748DCA6 +:1087A800F01F000F48F8700CF01F000F4858301CDD +:1087B8009107D832D83ADA3A800393648002EEB847 +:1087C800000016400000154400001540000015FC8C +:1087D80000001600800396C4800094C48002E8BCA0 +:1087E800000016448002E28CD421202D1897FACB81 +:1087F800FFFCFE7C1800F01F0012583CC080584C4B +:10880800C081E0690100FE7818009109301CC15848 +:10881800401C58DCC03130ACC0B8588CC081F01F47 +:108828000009320CF01F00071BFCC0285C5CF01F1D +:1088380000054018300CAE882FEDD8228000A9C260 +:10884800800078A0D431202D30A1FAC0FFF930D2B1 +:10885800308349B749B630043005009CF01F001A30 +:10886800C2A11BF8E20818005F0AE40818005F09B3 +:10887800124AF80A1800C0904929491A1298740B2C +:10888800950CF20B0B0CC188E6081800C0916E0815 +:108898002018F00C17708F0CEC0C0B04C0686E09D4 +:1088A800EC090B082FF98F096E08E0480050CD61DC +:1088B8008F05CD4B3008109C2FEDD832000016489C +:1088C8000000164C800087F0D401F01F0004301B14 +:1088D800F01F0003D80200008000884C8000863C0E +:1088E800D4314974169714951293580BC0B1680C7B +:1088F800580CC0311896C2181696F01F0012890736 +:10890800C1C868085808C0C1E06C0200F01F000E1A +:10891800890CC061189648DCF01F000DC0E80A9C5D +:10892800E066020048650C33E60617806A0B0C9A6D +:10893800F01F00086A088F080C9CD8320000169CAB +:108948008002E28C8002E2A4800396E8800094C44E +:10895800800090B4D401F01F0002D80A800091086A +:10896800D4213008FAC4FFEC19C9F0091800F9B885 +:108978000100E9F81A01E9F81A02E9F81A004A1898 +:108988001AD84A1818971AD8089B3008E8C9FFF867 +:10899800E8CAFFFC780CF01F001D8F0C2FED580C57 +:1089A800C021DC2AF01F001A300949AA301BE06CEC +:1089B8001388F01F00193009498A301BE06C00FA4F +:1089C800F01F00153009496A301BE06C01F4F01FF4 +:1089D80000123009493A301BE06CEA60F01F000EC3 +:1089E8003009491A301BE06C03E8F01F000B30090E +:1089F80048EA301BE06C03E8F01F0007DA2A0000A1 +:108A08008001365C80013C948000CCA88000CAB00C +:108A180080008A708000956C80008A6480008A5883 +:108A280080008A4C80008A4080008A34D401F01F7C +:108A38000002D8028000C664D401F01F0002D802E8 +:108A480080012984D401F01F0002D8028000B8B048 +:108A5800D401F01F0002D8028000C074D401F01FB6 +:108A68000002D8028000E68CD401F01F0002D80270 +:108A78008001326430194828B0895EFC000016AACB +:108A8800D401319CF01F0003319CF01F0003D80271 +:108A98008000A2D28000A2E6D421204D3FF819C957 +:108AA8001897F0091800F9B80001EFF80E0430081B +:108AB800201D1AD850581AD81AD850685058F01F84 +:108AC800001C49CB6E0CF01F001C0E9949BA49CB0B +:108AD80049CCF01F001D2FCD581CC08049B8201D5F +:108AE80049BC1AD8F01F001B2FEDF01F001BF01F08 +:108AF800001B0E9CF01F001AC0F049A8900930080E +:108B0800F0091900C0F44988201D498C1AD8F01FB3 +:108B180000112FEDC07830194958319CB089F01FE9 +:108B280000153018EF6800082FCDD822800089681A +:108B380080008C5C8000CAEE80008B7C80008BDC1F +:108B480080008A7C80009A188003973C80039DC02F +:108B5800800094C48000998C80019EF880002A9837 +:108B6800000016A28003972880039758000016A4D7 +:108B78008000A300D4211897333CF01F000F300663 +:108B88000FD8EC081800C0C048CCF01F000D6E0CC0 +:108B9800F01F000C6E0CF01F000CAED6C07848BC5D +:108BA800F01F00076E0CF01F000A3FFCF01F0009C1 +:108BB800D82200008000A2E680039774800094C445 +:108BC8008000B1D88000AE50800397908000CABC66 +:108BD80080002E60D42116971896333CF01F00149D +:108BE8000C9CF01F0014201D1ADC493CF01F0013D8 +:108BF80030182FED0FC6F0061800C121490CF01FE0 +:108C0800000F6E0CF01F000F48F849095C5CF20C6D +:108C18001700F00C1710F01F0009AED6C0486E0CF4 +:108C2800F01F000BF01F000BD82200008000A300EB +:108C3800800096E48003979C800094C4800397B8D2 +:108C48008000B950800397D080037FC08000CB8814 +:108C58008000C690D42149471896F01F0014189533 +:108C6800C110301CF01F00126C18201D1AD8F01FFC +:108C78000011500C490CF01F001130182FEDAE8870 +:108C8800D822AE8CF01F000E48E89008EA081900B8 +:108C9800C08448D8201D48DC1AD8F01F00082FEDE2 +:108CA800D8220000000016AB8000CAE480002E60C5 +:108CB800800096A8800397D8800094C480006B2C0D +:108CC800000016A28003995C800397E8D4211897C6 +:108CD800F01F0027300A4A7B4A7CF01F0028300A20 +:108CE8004A7B4A8CF01F00254A7B300A4A7CF01FD9 +:108CF80000230E9A4A6B4A7CF01F0020300A4A6B08 +:108D08004A6CF01F001E4A6B300A4A6CF01F001BA9 +:108D18000E9A4A5B4A5CF01F0019300A4A4B4A5CBB +:108D2800F01F0016300A4A4B4A4CF01F0014300A54 +:108D38004A3B4A4CF01F0011300A4A3B4A3CF01F9C +:108D4800000F300A4A2B4A3CF01F000C300A4A2B0D +:108D58004A2CF01F000A300A4A1B4A2CF01F000751 +:108D6800300A4A1B4A1CF01F0005D82280008620C2 +:108D7800800085DC80039804800085F08000857879 +:108D88008003980C80007E448003981480007F70D4 +:108D98008003981C800079F48003982480007DC8A3 +:108DA8008003982C80008494800398348000633476 +:108DB800800398408000834C80039848800084009A +:108DC80080039850800082E4800398588000821CB9 +:108DD800800398608000817C80039868800080D43C +:108DE800800398748000791080039880D4211897A4 +:108DF800F01F000BF01F000BF01F000BF01F000B03 +:108E08006E0CF01F000B48B811893008F0091800E3 +:108E1800C0406E0CF01F0008D82200008000951496 +:108E2800800088D080009504800193A080013BBC1D +:108E3800000016A480004758D421202D3029EE7850 +:108E48000000F1D9D1A23019F1D9D0033007501858 +:108E58000E9B5007337CF01F000F1A9BFE7C3800D6 +:108E6800F01F000D0E9BE06A01A4FE7C3800F01F85 +:108E7800000B0E9BE06A0348FE7C3800F01F0008D8 +:108E88000E9BFE7C3800F01F00072FEDD822000053 +:108E98008000A2308000A8388000A8F08000A926B1 +:108EA8008000A8D4D401333CF01F0009334CF01FD4 +:108EB8000008335CF01F0006333CF01F0006334CFB +:108EC800F01F0004335CF01F0003D8028000A2A842 +:108ED8008000A2E6D421202DF01F0034F01F0034BA +:108EE800F01F0034F01F0034E06C1B00EA1C00B7D0 +:108EF800F01F00324B28201D4B2C1AD8F01F0032CF +:108F080030CB301CF01F00312FED1897580CC08162 +:108F18004AF8201D4AFC1AD8F01F002B2FED344BBD +:108F2800301CF01F002A8F0CC0814A98201D4A9CD3 +:108F38001AD8F01F00252FED3FF80E9CAEC8F01F81 +:108F48000026300B169CF01F0025F01F0025F01F8F +:108F58000025C0804A48201D49EC1AD8F01F001A85 +:108F68002FEDFACAFFFC0E9B4A0CF01F0021581C7B +:108F7800C0C1401A49FB0E9CF01F001F581CC0516D +:108F88000E9CF01F001ECFDB58CCC04058DCC061DF +:108F9800C03849BCC04849BCC02849BCF01F000AB9 +:108FA800F01F001ACFEB000080008A88800076E06E +:108FB80080008EAC80008E408000AAE88003970C69 +:108FC80080039888800094C48002DC3C800398A8C1 +:108FD80080039DC080008CD4800095C88000C8E4C0 +:108FE8008000895C800398B8800088E880013E880A +:108FF80080008AA0800193BC80008DF4800398E4EF +:109008008003990C8003993080009514D4314A1458 +:1090180058095F081296189716951493A888E06067 +:109028000100E06100FFC2E88920A868E203190096 +:10903800E069FFFFE7D9E828E9F88A02E06901005A +:1090480088E8F2080108682989151039E9F8BA0290 +:10905800EE021608049CF01F0010301CF01F000FD1 +:10906800F01F000F5806C090049CF01F000E301C23 +:10907800F01F000DF01F000D6828101310071005D1 +:109088005C83F1D7C0085803CD01069CD832000094 +:10909800000016AC8000A0408000A19880009ED4FB +:1090A80080009F5C8000A17080009E94D4013009EC +:1090B8005C7AF01F0002D80280009014D40148584E +:1090C80090E9701B120C702AF01F0003D8020000F0 +:1090D800000016AC8002E736D4014888189B118A34 +:1090E8003009F20A1800C07090E9701C120B702A3F +:1090F800F01F0003D8020000000016AC8002E7361B +:10910800D421208D48D8F0E60008FAE70008F0EAF4 +:109118000000FAC8FFF0FAEB0000F0E70008F0EBF7 +:109128000000E06CF980EA1C0337F01F0005300CE2 +:109138002FCD2FCDD82200008003996C8000A1C0CC +:10914800D401FAC9FFFCF01F0002D80280031C1CDE +:10915800D401F01F0002D8028002EE88D401F01F6B +:109168000002D8028002ECACD401F01F0002D80241 +:109178008002F0ECD401F01F0002D8028002E71050 +:10918800D401F01F0002D8028002EE2CD401F01F97 +:109198000002D8028002ED84D401F01F0002D80238 +:1091A8008002ECC8D401F01F0002D8028002EE0C45 +:1091B800D401F01F0002D8028002EDD0D401F01FC4 +:1091C8000002D8028002E87ED401F01F0002D80213 +:1091D8008002E8BCD401F01F0002D8028002E73602 +:1091E800D401F01F0002D8028002E28CD401F01FE3 +:1091F8000002D8028002E8D0D401F01F0002D80291 +:109208008002E2A4D401580CC0707808B08B7808AA +:109218002FF89908D802F9DBC008F01F0002D8021D +:10922800800078A0D431189616971495580AE08AC9 +:1092380000153008109AC0282FF8EE08070BF40B19 +:109248001800CFB10A38F9B50400EBD8E515EDB927 +:109258000001C0313303C0283203E9D9C001C090EE +:109268003004C1082FF42015069B0C9CF01F000D3C +:109278005805FE99FFF9C0682FF42FF70C9CF01FD2 +:1092880000090F8B580BCF91C0782FF42015069B3F +:109298000C9CF01F00045805FE99FFF9089CD83271 +:1092A8008000920CD431204DFAC4FFCC109368177B +:1092B800189568041698580BC0B13308BADB08999A +:1092C800069ABAC8FACBFFFCF01F001FC3985809CA +:1092D8005F1B58AA5F09F7E90009C0605808C04435 +:1092E8005C383016C0283006EECB003A3009FAC791 +:1092F800FFF00EF9C0B8F00A0D00029912985898BC +:10930800F1DBE9082D080EF800985808CF515806E7 +:10931800C1005803C0B0EDB40001C08132DB0A9C23 +:109328002013F01F000A3016C04832D830060EF855 +:109338000899069A0E9B0A9CF01F00030C0C2FCD6F +:10934800D83200008000922C8000920CD431203D4D +:109358003007500A18951696325432D3330230919A +:109368003730C978E8081800E081008E2FF60D889C +:109378005808E0800093E8081800E0800085E608B7 +:109388001800F9B90100F7B600FFF9B90001C038B3 +:109398002FF6A1B90D88E4081800CFB03008C048EE +:1093A800F80E00182FF60D8AF008002EF4CC0030C5 +:1093B800F4CB0030E20B1800FE98FFF4E00A180026 +:1093C800C0A1109A4008110B50084B98580BF00B8D +:1093D8001700C548364BF60A1800C0A1361B400ACC +:1093E8001ADB1AD93019740B2FCA502AC358370BF5 +:1093F800F60A1800C121361A40091ADAF2CAFFFC27 +:10940800501A308A1ADA720B3009310A0A9CF01F96 +:1094180000292FED1807C3C8378BF60A1800C0417A +:10942800400A361BC078358BF60A1800C091400AEE +:10943800341B1ADB1AD9740B2FCA502ACE6B375B30 +:10944800F60A1800C0B1361B400A1ADB1AD93009CF +:10945800740B2FCA502A30AACDAB363BF60A180037 +:10946800C171109A4008700B2FC8FB6B0008500898 +:10947800FACBFFF83008FB6800090A9CF01F000EC1 +:109488001807C0682FF70D8B0A9CF01F000C2FF6E9 +:109498000D885808FE91FF685805EBF81000F9B9D7 +:1094A8000100F1F91E000E9C2FDDD8328003997C53 +:1094B800800092AC8000922C8000920CD401189B02 +:1094C800FACAFFFC300CF01F0002D8028000935447 +:1094D800D40148A972082FF89308F2F800CC58086C +:1094E800C040F2FC00D45D18FE780D003019918957 +:1094F8007078D402D6030000000001184838F0F94B +:1095080000D0700CB33C5EFC00000118D431495601 +:1095180030020C9730152F46EEC1FF2C0E930E9497 +:109528000D88E4081800C18166086E291039E08B9F +:1095380000146C185808C0306C2C5D180D98EA0897 +:109548001800E9F80000EFF90001F3D8E008EFF897 +:109558000A02EDF51E002EC62EC70236CE21D832DD +:1095680000000118D431300E189830A5494C1C96CB +:109578002FCCFCC3FFFF1897F9340008EC0418003F +:10958800C071FDD3C0082ECCEA0E1800CF311C9C48 +:1095980048B530030A96FC0E002EEAF500D0F00517 +:1095A8000D048F040D08EF630008EC0E0026080870 +:1095B800EF6B00098F188D498D3AD83200000118D9 +:1095C800D421300A16971896328B495CF01F001583 +:1095D800300AFE7C0D00149BF01F00134935FE7CF9 +:1095E8000D00EAFB00D0F60B1073A19BF01F0010D2 +:1095F800FE7C0D00F01F000FFE7C0D00F01F000E1A +:10960800EAC9FF2CEB4600CCEB4700D430182F45B5 +:10961800AA882EC51235CFD1D8220000800094D850 +:109628008000A3A08000A594000001188000A580F8 +:109638008000A57A8000A562D401306AF01F00027C +:109648005F0CD8028002E710D401F93A0020F738FD +:109658000020F4081800C020D80AF01F00035F0C8F +:10966800D80200008002E710D42119D919881AD924 +:1096780019C91AD919B91AD919A91AD91999486732 +:109688001AD9486A1AD8312B0E9CF01F00050E9C77 +:109698002FADD822000016E0800399848002EC40A8 +:1096A800D4214058F5D8C008F00916181ADAF5D8A8 +:1096B800C108F1D8C2081ADA48671AD8486A1AD90C +:1096C800310B0E9CF01F00050E9C2FCDD8220000F8 +:1096D800000016F4800399A48002EC40D421488746 +:1096E8001896321A300B0E9CF01F00060C9BED3AB0 +:1096F80000200E9CF01F00040E9CD822000016BC0F +:109708008002E8BC8002E736D431300318971696F9 +:109718001491129218950694C1D805002FF4009C54 +:10972800F01F0012F80300030C33E0880009201D25 +:1097380048FC1AD6F01F000F2FEDC108201DEE05BA +:10974800010B1AD00A9C0C0B48BAF01F000C2FED25 +:1097580018050234CE350E35C021D83A30080AF83B +:10976800EA07010CD83200008002EDD0800399B4DA +:10977800800094C4800399CC8002EC40D4211897CF +:109788002DFCF01F001B201D1ADC49ACF01F001A2D +:109798000E9CF01F001A500C499CF01F00176EC851 +:1097A800498C5008F01F00146EF82FED5818C0416E +:1097B800495CF01F0011EF3800383049F2081800F2 +:1097C800C0E03059F2081800C0603029F2081800CB +:1097D800C091C03848DCC04848DCC02848DCF01FCD +:1097E800000648DCF01F0004D822000080009670B4 +:1097F800800399CC800094C4800096E4800399D0BB +:10980800800399D8800399E8800399F480039A0823 +:1098180080039A1C800384D4D421202DFACCFFFC29 +:10982800F01F000C401870185808C04148ACF01FD1 +:10983800000B3007C0887008F007032CF01F0008E1 +:109848002FF75C57401870191237CF632FEDD822C5 +:1098580080018F0480039A40800094C4800097841C +:10986800D431202D300818921696BAE8169CF01FAD +:10987800001DEDBC0000C04149BCF01F001C3007B2 +:109888002FF649B30E94FAC5FFFCC208660BF6081A +:109898000709E2190044C210E04700405F9C0D8AA6 +:1098A800F60A0709E21900445F09F9E91009E8090D +:1098B8001800C131BADABAC8310A300B0A9C2FE64F +:1098C800F01F000CE4070B0C2FF7ED38FFFF5808CA +:1098D800CDE10E9C5C5CC028300C2FEDD832000026 +:1098E8008002EDD080039A50800094C40000049C4C +:1098F8008002F0ECD421204D1A981AD8FAC8FFF843 +:109908001AD8FAC8FFF01AD8FAC8FFE818971AD870 +:10991800169C49BBF01F001B2FCD584CC221403864 +:10992800E04800FFE08B001E402B580BC1A5E04B20 +:1099380000FFE089001740195809C135E04900FFC8 +:10994800E0890010400A580AC0C5E04A00FFE089D3 +:109958000009B16BF7E811881448F1E91088C028AC +:109968003008F0091618AEB8AE890E9CF3D8C208B4 +:10997800F1D8C108AE99AEA82FCDD82280039A603D +:109988008002EBF4486870085808F9BC00FFF9B980 +:109998000101F1F91E10F9BC01015EFC0000170479 +:1099A800D4214988169770085808C021DC2A580C19 +:1099B800C080189B321AF0CCFFEFF01F0013C0389C +:1099C800F16C003148F85807C080700C0E9B306A63 +:1099D8002CECF01F000DC088700C306A2CECE06B8A +:1099E80000FFF01F000A48787008F139003130088C +:1099F800F0091800C021DA2AF01F0005DA2A000051 +:109A0800000017048002E7368002E8BC80019EF857 +:109A1800D4314A241896169714951292680358035D +:109A2800C3B1338B301CF01F001E890C189BC0B1CA +:109A380049C89088EDB80003C2F1201D49A849BC67 +:109A48001AD8C10849ACF01F001B49691891581C65 +:109A5800C0E09288EDB80003C1F1201D4928496C87 +:109A68001AD8F01F00163FFC2FEDD8326808913243 +:109A7800F16300109106911791259288EDB80003C3 +:109A8800C020D8324888201D48DC1AD8F01F000BA7 +:109A9800029C2FEDD832DC3A000017048002DC3C2F +:109AA800000016A280039A8080039AE080009AC87A +:109AB80080018F2480039AF8800094C480039B203F +:109AC800D431202D1697581CC290C083582CC670CC +:109AD8004A78583CE08101A8C998F01F00264A48F6 +:109AE80018969088EDB80003C0A1F01F00234A38EB +:109AF8001ADC4A3C1AD8F01F00232FED333CF01F24 +:109B08000022334CF01F00216E185808E08001979E +:109B18006E3B0C9C5D18E08F019249589088EDB817 +:109B28000003C08149A8201D49AC1AD8F01F0015B0 +:109B38002FED334CF01F0014333CF01F0014EF39A5 +:109B480000103008F0091800E0800179F01F0012B9 +:109B5800581CE080017448689088EDB80003E081E3 +:109B6800016E201D48A848DC1AD8C659000016A264 +:109B78008001997C800096E480039AC880039B3812 +:109B8800800094C48000A3008000A2E680039CE8C3 +:109B980080039B5480019EF880039B784B589088E3 +:109BA800EDB80003C0814B48201D4B4C1AD8F01F5C +:109BB80000342FED4AF89088EDB80003C0814B18A7 +:109BC800201D4B1C1AD8F01F002E2FED333CF01F20 +:109BD800002F6E285808C0306E3C5D18EF39001011 +:109BE8003008F0091800E080012AF01F0029581CED +:109BF800E080012549F89088EDB80003E081011F55 +:109C0800201D4A084A3C1AD8C1699088EDB800035B +:109C1800C0814A18201D4A1C1AD8F01F00192FEDC0 +:109C28006E085808C0306E3C5D18EF3900103008D7 +:109C3800F0091800E0800103EF390031F00918003D +:109C4800E08000FDF01F00161894FACCFFFCF01F0E +:109C58000015581CC591401870185808C550300593 +:109C6800EEC1FFEFEEC3FFCE0A960A92C488000049 +:109C7800000016A280039ABC80039BAC800094C4A9 +:109C880080039A9880039BC48000A2E680019EF816 +:109C980080039BE880039AA880039C1C8001997C20 +:109CA80080018F04EF390031E4091800C080700882 +:109CB800029CF005032BF01F0041C1F0306A4C0BE9 +:109CC800069CF01F0040C0A040187008069CF005D4 +:109CD800032B2DFBF01F003CC1005806C0A0401804 +:109CE8006CC97008F005032870C81039E0890006AF +:109CF80040187008F00503262FF55C5540187019B8 +:109D08001235CD13C02830060C34C0415804E08108 +:109D1800009658065F1858045F19F1E90009C20057 +:109D2800089B0C9CF01F0025C1D068C8FE58FFC0D6 +:109D3800E08400856CCAF0C9FFF71439E084007F1D +:109D48004A299289EDB90003C0D1201D1ADA1AD820 +:109D580049F84A0C1AD8F01F00202FCDC0385808EF +:109D6800C0C0202DECCBFFDF306A1A9CF01F001B0F +:109D7800F01F001B2FEDC17849489088EDB800030B +:109D8800C0C1EECCFFEFF01F001749181ADC496C70 +:109D98001AD8F01F00112FEDEECCFFEFEF3B00318A +:109DA800F01F0012588CC060589CC2F0581CC21199 +:109DB800C458F01F000FC4288000965080039C38B8 +:109DC8008002EDE680009640000016A280039A8C7F +:109DD80080039C40800094C48002E73680019DDCAB +:109DE800800096E480039C6880019EA0800199CC45 +:109DF80049489088EDB80003C0814938201D493C86 +:109E08001AD8F01F00132FEDF01F0012581CC16064 +:109E180048C89088EDB80003C111201D48A848EC37 +:109E28001AD8C0989088EDB80003C081201D48B8A2 +:109E380048BC1AD8F01F00062FED2FEDD8320000CD +:109E4800000016A280039A8C80039C94800094C41E +:109E580080019EF880039CB080039ABC80039CCC50 +:109E6800D4012FEC580BC080F7DCC008FE7C28001A +:109E7800F01F0005D802F7DCC008FE7C2800F01FA0 +:109E88000003D8028000A6C68000A716D42148C7C0 +:109E9800C098300BFE7C2800F01F000A6E082FF8CF +:109EA8008F086E0CF7DCC008CF51F9DCC288F01FB0 +:109EB800000630194858B089D82200000000170859 +:109EC8008000A7FA80009E680000170CD40148683B +:109ED800300B700CF9DCC288F01F000430094848C8 +:109EE800B089D8020000170880009E680000170C8F +:109EF800D421202D4948301B700CF9DCC288F01F92 +:109F08000013E06B00D7FE7C2800F01F0011FAC791 +:109F1800FFFAE06B00FFFE7C2800F01F000D0E9B8F +:109F2800FE7C2800F01F000B9AB8EDB80007CF217F +:109F38004858300B700CF9DCC288F01F00042FED74 +:109F4800D82200000000170880009E688000A7FA49 +:109F58008000A816D421202D49B8A96C910C49B8C5 +:109F680011893008F0091800C030F01F00193009B5 +:109F780049684957B0896E0C301BF9DCC288F01F5C +:109F88000015E06B0082FE7C2800F01F00136E08AD +:109F9800F3D8C008FAC7FFF8F7D8C10CFE7C280030 +:109FA800F3EB109B0EDBB18BF01F000B0FABFE7CAD +:109FB8002800F01F00090FBBFE7C2800F01F0006D8 +:109FC8002FEDDA2A000017080000170C80009EF811 +:109FD80080009E688000A7FAD42149381897118913 +:109FE8003008F0091800C0604908700CA98CF01FEF +:109FF8000010EEC6FF000F3BFE7C2800F01F000D8E +:10A008000C37CFA14898300B700CF8CCFF00910C9E +:10A01800F9DCC288F01F000830194838301CB089B4 +:10A02800D82200000000170C0000170880009F5C71 +:10A038008000A7FA80009E68D421202D4A78A96C58 +:10A04800910C4A7811893008F0091800C030F01FC7 +:10A05800002530094A284A17B0896E0C301BF9DCF4 +:10A06800C288F01F0021E06B00D2FE7C2800F01FA0 +:10A07800001F6E08F3D8C008FAC7FFF8F7D8C10C5C +:10A08800FE7C2800F3EB109B0EDBB18BF01F001752 +:10A098000FABFE7C2800F01F00150FBBFE7C2800CC +:10A0A800F01F0012E06B00FFFE7C2800F01F000F7D +:10A0B800E06B00FFFE7C2800F01F000CE06B00FF47 +:10A0C800FE7C2800F01F0009E06B00FFFE7C2800E2 +:10A0D800F01F00062FEDDA2A000017080000170C01 +:10A0E80080009EF880009E688000A7FAD421202D69 +:10A0F800498818973009118AF20A1800C070B08987 +:10A108004958700CA98CF01F0015FAC5FFFAEEC665 +:10A11800FF00E06B00FFFE7C2800F01F00110A9B87 +:10A12800FE7C2800F01F000F9A380EC80C37CF218C +:10A138004898300B700CF8CCFF00910CF9DCC28801 +:10A14800F01F000930194838301CB0892FEDD8228B +:10A158000000170C000017088000A0408000A7FA34 +:10A168008000A81680009E68D4211897C088F01F28 +:10A178000006486CF01F000620175C87483C58070B +:10A18800CF71DA2A800090C40000171080009FE089 +:10A19800D4211897C088F01F0006486CF01F0006ED +:10A1A80020175C87483C5807CF71DA2A8000A0F452 +:10A1B80000001710800090E0D4213027FAC4FFEC8B +:10A1C8001896A887C0C80C9A089BFE7C2800F01F28 +:10A1D8000009C020D82A09882FF8A8880988EE081D +:10A1E8001800FE98FFF230094838301CB089D82290 +:10A1F8008000A73C0000170CE1B80000EE18000131 +:10A20800F1D8C201C020D3033019F20B094B994B86 +:10A21800783958085E0CD5035EFCFE681400700996 +:10A22800F3DCD0C191095EFCF8081605A968E0289E +:10A23800F000581BC0D0C063582BC0F0583BC12059 +:10A248005EFF3019F20C0949916991A9C108F60C11 +:10A25800094B915B91ABC0B83019F20C094991696F +:10A26800C0583019F20C0949915991993019F20CDA +:10A27800094C912C5EFDD703D4213007189616940B +:10A288000E95C0880D9B0D8C2FF72FE6F01F00044C +:10A2980018450837CF830A9CD82200008000A230D6 +:10A2A8003018F00C0948A59CA96CE02CF000F9487E +:10A2B800004899185EFC3018F00C0948A59CA96C58 +:10A2C800E02CF000F94800745EFC3018F00C0948E6 +:10A2D800A59CA96CE02CF000F94800785EFC3018C9 +:10A2E800F00C0948A59CA96CE02CF000F948005432 +:10A2F800F948004499185EFC3018F00C0948A59CF0 +:10A30800A96CE02CF000F9480058F9480044991865 +:10A318005EFC301AF8081605F40C0949A968E0280B +:10A32800F000F14900C4143BC080C043582BC0F171 +:10A33800C098F14900A8C038F14900A4F14900B813 +:10A34800C078F14900A8F14900B4C0285EFAF14983 +:10A3580000945EFD3018F00C0948A59CA96CE02C0F +:10A36800F000F94800985EFCF8081605A968E0288E +:10A37800F000F0F800D0F00C0A4CF9DCC0015EFCEB +:10A388003018F00C0948A59CA96CE02CF000F9489D +:10A3980000D85EFCC008D703F3DBC0054898A59B2E +:10A3A800F00B00387018F009092C4878F5DAC0026B +:10A3B800F00A0329FE780800F00B09295EFC00006A +:10A3C80080039CFC8003773CD42148F8E3B8000163 +:10A3D80048E848F9700E48FC3008FE7B0800C0E8E1 +:10A3E8007216EC0A00262FFA8D0C0E3ACFA3F60847 +:10A3F800092E2F892FF85948C0407207300ACF6BB1 +:10A40800D8220000800376008003773C80039CFC00 +:10A418008000A39CE0680083FE790800F00C010C22 +:10A42800F20C0328F0CAFFC0F20A032C580C5E0C89 +:10A438004869F80C1200F2080038F80C111F70185F +:10A44800F00C032C5EFC000080039CFC78C83019DB +:10A45800F1D9D10399C85EFC78C83019F1D9D00177 +:10A46800F1DBD20399C85EFCD421FAC4FFEC68176B +:10A47800680EEFD7C003FDDEC0013004E9D7D00372 +:10A48800E9DED0E1E9D7D103E9DED1E1E9DAD203A7 +:10A49800E9DBD2E1E9D8D303E9D9D3E199147958B2 +:10A4A800EDB80005CFD1D822D4213007405E2F8BDC +:10A4B800EFD8D021EFD9D104EFDAD204EFDED306FA +:10A4C800F80B0927D822F5E910192F8BF3E8102883 +:10A4D800F80B0329F3D8D043F80B09295EFC2F8B1E +:10A4E800F80B0328A1A8F80B09285EFC7958EDB8E9 +:10A4F8000000CFD15EFC7808F1DBD00299085EFC41 +:10A50800EC5BBB9FE08B0004304BC138E068C6BFF2 +:10A51800EA18002D103BE08B0004305BC0A8E0680F +:10A528001200EA18007A103BF9BB0306F9BB0207D0 +:10A5380078A8F1DBD00399A878A8F1DAD10399A813 +:10A548007808A3A899087958EDB80007CFD17808FA +:10A558003019F1D9D00299085EFC7808EDB80004EA +:10A56800CFD07808A1A899087808EDB80004CFD012 +:10A578005EFC301899485EFC7808EDB80004CFD02E +:10A58800992B7808EDB80004CFD05EFCD42130F8C0 +:10A5980014951697F00A18005FBA30181896F00B41 +:10A5A80018005FB9F5E91009C020D82AF00B180087 +:10A5B800C0A1FE7C0C00F01F0015300BFE7C0C00C7 +:10A5C800F01F00136C08EDB80004CFD0A377B1A733 +:10A5D800EFE510878D076C08EDB80004CFD06C0844 +:10A5E800E2180010CFD18D186C08EDB80004CFD058 +:10A5F8006C08EDB80004CFD03FF88D286C08EDB892 +:10A608000004CFD0DA2A00008000A4548000A4609F +:10A618003038F00A18005FB93078F00B18005F88FE +:10A62800F3E81008C1913108F00B1800E08B001511 +:10A63800E06800809908208BF4081601F5DAC0015B +:10A64800F1EB104B580AF9BA0100F9BA0002F7EA1F +:10A65800100A99CA5EFD302C5EFCD4013019189896 +:10A66800F73B000DF20B1800E0880004302CD802EC +:10A67800300AE06900809909301E7019149CF3DED5 +:10A68800D001F3DBD081F3DAD0E130FAF3DAD20487 +:10A698009119D802D4013018F00B18005FBEF00AE7 +:10A6A80018005FB81C48C030302CD8027818F1DB8D +:10A6B800D021F1DAD041F1D9D3089918D80A7819FC +:10A6C8001898EA19000F9919781CE21C0004C100B7 +:10A6D80030E9F20B1800E08B001A7019B16B300CDE +:10A6E800EA1BFFF0E81BFFFF126B911B5EFC303981 +:10A6F800F20B1800E08B000B70192F0B301AF40BBB +:10A70800094B5CDB126B911B5EFC302C5EFCE06835 +:10A718002710C0585808C0215EFF20187849EDB9A5 +:10A728000009CF917818EA18000F9918FC18010051 +:10A7380099085EFDD4313036F737000CEC07180065 +:10A74800E08B0050F733000B301EFC031800E08B41 +:10A758000049F73800083079F2081800E08800420C +:10A768003109F2081800E08B003D7619F205160150 +:10A77800F4050005EA090D04E8C90001E04900FEF6 +:10A78800E08B0030F0CA00080E923008EC1200018D +:10A79800A197F1D7D001F1D2D021F1D3D061F1DA6C +:10A7A800D084F73A0009F1D4D1081789F1DAD20830 +:10A7B800F73A000AF1DAD308FC091800C0C0C093C0 +:10A7C800302AF4091800C090EC091800C0A1C0781C +:10A7D80099C8C06899D8C04899E8C02899F8D83A63 +:10A7E800302CD832301899085EFC784CF9DCC0213E +:10A7F8005EFCE0682710C0585808C0215EFF20188A +:10A808007849EDB90001CF915C7B993B5EFDE0682A +:10A818002710C0585808C0215EFF20187849E2194F +:10A828000201E0490201CF717828300CB6085EFCBD +:10A8380076095829E08800035EFE7618A769109B00 +:10A84800E61BC000120CF3D8C003AFB91649109B21 +:10A85800E61B30001649109BE61B0C001649109B9E +:10A86800E61B03001649109BE61B00C01649109B07 +:10A87800E61B00301649109BE61B000C1649109B7E +:10A88800E61B00031649109BE21B60001649109B4B +:10A89800E21B10001649109BE21B0C001649109B86 +:10A8A800E21B03002FCC1649109BE21B0080109A74 +:10A8B8001649E21A0008109BE2180030E21B00401B +:10A8C8001649F3E81008144899085EFDF6081506BD +:10A8D800582BF9BC0BFFF9D8E80CF9B80805F9F8BA +:10A8E8008A00F9BC08005EFC582BE08800035EFE75 +:10A8F800F6081506F80800082FC87008EDB8000F0C +:10A90800C0C1A76BF3DAC010160C2ECC7808E0187B +:10A918000000F3E810089908F9DAC0105EFC582B1B +:10A92800E08800035EFEA76B160C7818EDB8000FE0 +:10A93800C0A12E4CF3DAC0107808E0180000F3E844 +:10A9480010089908F9DAC0105EFCD401F60E150457 +:10A958001C3AF9BE0210F9BE0308FC0B024BF608BC +:10A968001601F00A003AF40B0D0AF4091603F2C8AE +:10A978000001E048FFFEE0880003DA0A7818E86B77 +:10A988000000E418FFF7E018FECF590EF60E171076 +:10A99800F9BE0000FDE810089918F5DAC003F3EADB +:10A9A80011099989D80A7858EDB80001C030302CBF +:10A9B8005EFCF7DBC009997B5EFD7858E21800E081 +:10A9C800C030304C5EFC7859EDB90000F9BC010389 +:10A9D800F9F90006F00C1700E06A01FFF3DAE02845 +:10A9E800F7F80A005EFCE1B80000EE180001F1D8A3 +:10A9F800C201C020D3033FF9993978595808C020BB +:10AA0800D50330089918999899A8EA68610C9908AB +:10AA18005EFCD703D421201D500A16961897F01F04 +:10AA2800002F400A5806C5500DC83049F2081800D2 +:10AA3800E08800503095EA081800E08B004B0DD9EB +:10AA48003078F0091800E08B00458C39E068010186 +:10AA5800F0091900E08B003EED3900083038F009A4 +:10AA68001800E08B00376C0B0E9CF01F001D581C63 +:10AA7800C3000DC8EA081800C0416E18B1B8C05824 +:10AA880020586E19F3E810688F186E19ED3A00080F +:10AA98000DD8A978F1EA10E812488F18302A8C38B6 +:10AAA800F3D8C010F4081900E08800086E18ADB893 +:10AAB8008F1820298FA9C0586E18F1E910C98F196D +:10AAC8006E18E018FFF08F18300C35088F08C02872 +:10AAD800301C2FFDD82200008000A9EE8000A9526A +:10AAE8004828910C5EFC0000000018E8D431189842 +:10AAF800783E580EC620F90600105806C5E0300901 +:10AB08003FF3129A3344C1780E91E8071800C0A1A8 +:10AB1800F2CAFFFEF4C9FFFF5C7A5C89FC0A070AE7 +:10AB2800C0A8F6071800C4A05C75FC050709E4096D +:10AB380000095C89EC091900C0F2F2C5FFFFF9D9D8 +:10AB4800C0105C85FC0C000CEAC2FFFF19870E914F +:10AB5800E6071800CDA1580AC3003019F20A1800F8 +:10AB6800C0617028E06900802948C0C87028302971 +:10AB7800F20A1800C0412D483409C0482D48E06940 +:10AB880000C0300C3FF7C0D8F60A1800C1705C7ED0 +:10AB9800F00E070CEC0C000C5C8CF20C1900C0D207 +:10ABA800F8CEFFFF5C7C5C8EF00C000CFCC6FFFF4F +:10ABB800198AEE0A1800CE91300CD832D401F9085F +:10ABC800001CF3D8C010F2CEFFFE140EE04E004475 +:10ABD800E088000F48F8201D1AD8E06804E31AD866 +:10ABE80048D848EC1AD8F01F000E2FCDC008786E50 +:10ABF800FC090009F36B00F02FF8786BF3D8C0104C +:10AC0800F6090009F36A00F02FF8F958001CD80279 +:10AC180080039DC480039E0880039D9C800094C48B +:10AC2800D4013439F908001CF2081900E088000F33 +:10AC380048C8201D1AD8E06804EE1AD848A848BCAD +:10AC48001AD8F01F000B2FCDC008786AF3D8C010AF +:10AC5800F4090009F36B00F02FF8F958001CD8022A +:10AC680080039DC480039E5080039D9C800094C4F3 +:10AC7800D401580CC0E14B18201D1AD8E068062BE7 +:10AC88001AD84AF84AFC1AD8F01F002F2FCDC0084E +:10AC9800786A580AC0E14A98201D1AD8E068062C3C +:10ACA8001AD84AA84A7C1AD8F01F00272FCDC00806 +:10ACB800F908001C3439F2081900E088000F49F837 +:10ACC800201D1AD8E068062D1AD84A1849DC1AD867 +:10ACD800F01F001D2FCDC008F7D8C010160A3FFB83 +:10ACE800F56B00F02FF8129B5C88300AF958001CAD +:10ACF800C1584928201D1AD8E06806321AD8494890 +:10AD0800490C1AD8F01F00102FCDC008F1DEB01082 +:10AD1800786EFC090009F36A00F0F0CEFFFFF3D863 +:10AD2800C010F6081900FE98FFF3F958001CF3D973 +:10AD3800C002CE01D802000080039DC480039E8C0F +:10AD480080039D9C800094C480039EB080039EDC99 +:10AD5800D401F908001CF3D8C010F2CAFFFEE04A7B +:10AD68000044E088000F4918201D1AD8E06804F54F +:10AD78001AD848F848FC1AD8F01F000F2FCDC00881 +:10AD8800786AF4090009F5DBC108F36A00F02FF8C6 +:10AD9800786AF3D8C010F4090009F36B00F02FF8B3 +:10ADA800F958001CD802000080039DC480039F1C32 +:10ADB80080039D9C800094C4D401F908001CF3D83A +:10ADC800C010F2CAFFFCE04A0044E088000F49B80E +:10ADD800201D1AD8E06804FD1AD84998499C1AD849 +:10ADE800F01F00192FCDC008786AF4090009F60A87 +:10ADF8001618F36A00F0786A2FF8F3D8C010F4092F +:10AE08000009F5DBC208F36A00F0786A2FF8F3D876 +:10AE1800C010F4090009F5DBC108F36A00F02FF847 +:10AE2800786AF3D8C010F4090009F36B00F02FF822 +:10AE3800F958001CD802000080039DC480039F605D +:10AE480080039D9C800094C4D421F9380035A3D890 +:10AE5800F9680035189678A75807C2406E1C580C38 +:10AE6800C050F01F001130088F186E285808C09184 +:10AE78006E355805C061EF090010EA091900C0E0F5 +:10AE880048A8201D1AD8E06804C51AD84888489CE4 +:10AE98001AD8F01F00092FCDC0080E9CF01F00071C +:10AEA8008DA5D8228001122880039DC480039FA00D +:10AEB80080039D9C800094C48002E28CD421189762 +:10AEC800782C580CC050F01F000830088F286E3CB2 +:10AED800580CC070F01F00043008EF5800108F386D +:10AEE800D82200008002E28CD4211896580CC0E1C8 +:10AEF8004AE8201D1AD8E06805D11AD84AC84ADCA1 +:10AF08001AD8F01F002D2FCDC00878A75807C0E128 +:10AF18004A68201D1AD8E06805D31AD84A784A5CCE +:10AF28001AD8F01F00252FCDC0086E585808C0E069 +:10AF380049E8201D1AD8E06805D41AD84A0849DC1F +:10AF48001AD8F01F001D2FCDC0086E655805C0E047 +:10AF58004968201D1AD8E06805D51AD84998495C6F +:10AF68001AD8F01F00152FCDC0080A9AE06B0134DB +:10AF78000A9CF01F00158F5CC041E06C00FFD822CE +:10AF88009859E0680133F0091900E08B00214878EE +:10AF9800201D1AD8E06805DD1AD848C8485C1AD8B8 +:10AFA800F01F00052FCDC00880039DC480039FB407 +:10AFB80080039D9C800094C480039FD880039FFCDD +:10AFC8008003A0288000D3188003A054EF38001312 +:10AFD800EA081800C0514D3870092FF991097818FE +:10AFE800301B8F684CF9720A8F0AB09BB08B306B9C +:10AFF800B0ABF40B1618B0CBF7DAC2083009B0FAC8 +:10B00800B0DBF5DAC108305BB0B9F1690008F16965 +:10B018000009F169000AF169000BF169000CF16996 +:10B02800000DF169000EF169000FB0EAEF3A001265 +:10B03800F60A18005F0C30ABF60A18005F0BF9EB44 +:10B04800100BF20B1800C0513049F20A1800C0D199 +:10B058000DC9F169000C0DD9F169000D0DE9F1690F +:10B06800000E0DF9F169000F3009ECCAFFD1F16942 +:10B078000010F1690011F1690012F1690013F1691A +:10B088000014F1690015F1690016F1690017F169FA +:10B098000018F1690019F169001AF169001BF0CB79 +:10B0A800FFE4ED35002E3106EA091900F9BC02006B +:10B0B800F5FC380016CC2FF92FFA5C89EC09190039 +:10B0C800CF413009F0CAFFD4129C340B14CC2FF9AD +:10B0D8005C89F6091900CFB13009F0CAFF94129CB7 +:10B0E800E06B008014CC2FF95C89F6091900CFB108 +:10B0F8003639F16900EFF16900EC3829F16900EDA2 +:10B108003539F16900EE344A3009F0C8FF10EF59BB +:10B11800001C10C92FF95C89F4091900CFB1D82A8D +:10B12800000001F0D421580CC0E14A28201D1AD88B +:10B13800E06806141AD84A084A0C1AD8F01F0020EA +:10B148002FCDC00878A75807C0E149A8201D1AD8F4 +:10B15800E06806161AD849B8498C1AD8F01F0018A2 +:10B168002FCDC0086E5C580CC0E14928201D1AD8A4 +:10B17800E06806171AD84948490C1AD8F01F001079 +:10B188002FCDC0086E685808C0E148A8201D1AD8FD +:10B19800E06806181AD848D8488C1AD8F01F000852 +:10B1A8002FCDC008F01F000A30088F688F58D822AA +:10B1B80080039DC48003A09880039D9C800094C454 +:10B1C8008003A0BC8003A0E08003A10C8000D13CD8 +:10B1D800D42130D878A7EF390012F0091800EFF819 +:10B1E8001E12F9B80100EFF81E13300818968FE800 +:10B1F8008F988FB88FA88FD88FC8EF48004CEF482A +:10B208000048EF480044F01F0029EBDCC008C201E9 +:10B21800301A335B0E9CF01F0026307B0E9CF01F0B +:10B2280000250E9CF01F00246E5CEF0B001CF6CB73 +:10B23800FF105C7BF01F00210C983439EECAFFDC4C +:10B248006E5B6E1CF01F001E0C9CF01F001EEF387A +:10B2580000132FF85C58EF6800133099F2081800B3 +:10B26800E0880005E0692710C058E06903E8F009A4 +:10B2780002495C79E06801F4F2C9FE0DF2080C0895 +:10B288000C9CEF58001EF01F00100C9C48FBF01F90 +:10B2980000100C9C48DBF01F000F0C9C48BBF01FF3 +:10B2A800000E0A9CD82200008000AEF08000ABC4DB +:10B2B8008000AC288000AC788000D2108001139008 +:10B2C8008000B12C8000CABC8003B4098000CBC8C0 +:10B2D8008000CA748000CA92D421305878A7EF3908 +:10B2E8000012F0091800EFF81E12F9B80100EFF883 +:10B2F8001E131896F01F0026EBDCC008C2A1301AF6 +:10B30800335B0E9CF01F0023303B0E9CF01F002285 +:10B31800302A339B0E9CF01F001FED1B002C0E9C47 +:10B32800F01F001E0E9CF01F001E6E5CEF0B001C31 +:10B33800F6CBFF105C7BF01F001B0C983439EECA6B +:10B34800FFDC6E5B6E1CF01F00180C9CF01F0017D2 +:10B35800EF3800132FF85C58EF6800133099F208A3 +:10B368001800E0880005E0694E20C058E06907D061 +:10B37800F00902495C790A9CF2C9FE0DE06801F403 +:10B38800F2080C08EF58001ED82200008000AEF02A +:10B398008000ABC48000AC288000AD588000AC7839 +:10B3A8008000D210800113908000B12CD42118960F +:10B3B800580CC0E14AF8201D1AD8E06802F51AD8DE +:10B3C8004AD84AEC1AD8F01F002E2FCDC00878A70B +:10B3D8005807C4E0EF3900123088F0091800C4811A +:10B3E80017B8178A1799B169F3EA118917AAF3EA06 +:10B3F8001089F1E910096EA81039C3A130C8EF68A7 +:10B4080000123008EF680013F01F001E5C5CC28158 +:10B41800301A335B0E9CF01F001C304B0E9CF01F43 +:10B42800001B304A332B0E9CF01F00176EAB0E9C8E +:10B43800F01F00170E9CF01F00176E5CEF0B001C2E +:10B44800F6CBFF105C7BF01F00140C983439493A96 +:10B458006E5B6E1CF01F00120C9CF01F0012EF3880 +:10B4680000132FF8EF6800133148EF58001ED82258 +:10B4780080039DC48003A13880039D9C800094C4F0 +:10B488008000AEF08000ABC48000AC288000ADC066 +:10B498008000AC788000D2108003B405800113903E +:10B4A8008000B12CD421303878A7EF390012F00988 +:10B4B8001800EFF81E12F9B80100EFF81E131896DD +:10B4C800F01F002AEBDCC008C321301A335B0E9C46 +:10B4D800F01F0027303B0E9CF01F0026302A339BBC +:10B4E8000E9CF01F0023E06B02400E9CF01F002210 +:10B4F800304A332B0E9CF01F001E6EAB0E9CF01FC3 +:10B50800001F0E9CF01F001E6E5CEF0B001CF6CB9C +:10B51800FF105C7BF01F001B0C98343949AA6E5B46 +:10B528006E1CF01F001A0C9CF01F0019EF38001356 +:10B538002FF85C58EF6800133099F2081800E0887B +:10B548000005E0692710C058E06903E8F0090249DE +:10B558005C790A9CF2C9FE0DE06801F4F2080C0857 +:10B56800EF58001ED82200008000AEF08000ABC467 +:10B578008000AC288000AD588000ADC08000AC7859 +:10B588008000D2108003B405800113908000B12C94 +:10B59800D4214BD811B9118B119A11A8B16AF5EBC6 +:10B5A800118AF5E81088F3E8100878A78FA8EF3912 +:10B5B80000123068F0091800EFF81E12F9B80100FF +:10B5C800EFF81E131896F01F0031EBDCC008C3E13A +:10B5D800301A335B0E9CF01F002E301B0E9CF01FA0 +:10B5E800002D302A339B0E9CF01F0029ED1B002CE8 +:10B5F8000E9CF01F0029304A337B0E9CF01F00245C +:10B60800301B0E9CF01F0023303B0E9CF01F0021C6 +:10B6180031CB0E9CF01F001F306B0E9CF01F001DDD +:10B628000E9CF01F001E6E5CEF0B001CF6CBFF108B +:10B638005C7BF01F001B0C98343949AA6E5B6E1CAA +:10B64800F01F00190C9CF01F0019EF3800132FF899 +:10B658005C58EF6800133059F2081800E0880005BC +:10B66800FE79EA60C058E06903E8F20809495C79A4 +:10B678000A9CF2C9FE0DE06801F4F2080C08EF58C4 +:10B68800001ED8228003B4098000AEF08000ABC44D +:10B698008000AC288000AD588000AC788000D210C3 +:10B6A8008003B405800113908000B12CD421301898 +:10B6B80078A7EF390012F0091800EFF81E12F9B850 +:10B6C8000100EFF81E131896F01F0039EBDCC008D4 +:10B6D800C501301A335B0E9CF01F0036303B0E9CC0 +:10B6E800F01F0035302A339B0E9CF01F0032ED1BF3 +:10B6F800002C0E9CF01F0031304A332B0E9CF01F9B +:10B70800002D6EAB0E9CF01F002E304A336B0E9C42 +:10B71800F01F00286E9B0E9CF01F0029304A337BD7 +:10B728000E9CF01F0024301B0E9CF01F0023303BA2 +:10B738000E9CF01F002131CB0E9CF01F001F306BB8 +:10B748000E9CF01F001D0E9CF01F001E6E5CEF0B80 +:10B75800001CF6CBFF105C7BF01F001B0C983439E3 +:10B7680049AA6E5B6E1CF01F001A0C9CF01F001992 +:10B77800EF3800132FF85C58EF6800133059F208BF +:10B788001800E0880005FE79EA60C058E06903E81F +:10B79800F20809495C790A9CF2C9FE0DE06801F4D7 +:10B7A800F2080C08EF58001ED82200008000AEF006 +:10B7B8008000ABC48000AC288000AD588000ADC0CC +:10B7C8008000AC788000D2108003B405800113900B +:10B7D8008000B12CD421304878A7EF390012F00945 +:10B7E8001800EFF81E12F9B80100EFF81E131896AA +:10B7F800F01F0025EBDCC008C291301A335B0E9CA9 +:10B80800F01F0022303B0E9CF01F0021302A339B92 +:10B818000E9CF01F001EED1B002C0E9CF01F001D3F +:10B828000E9CF01F001D6E5CEF0B001CF6CBFF108A +:10B838005C7BF01F001A0C983439499A6E5B6E1CB9 +:10B84800F01F00180C9CF01F0018EF3800132FF899 +:10B858005C58EF6800133099F2081800E08800057A +:10B86800E0692710C058E06903E8F00902495C79EB +:10B878000A9CF2C9FE0DE06801F4F2080C08EF58C2 +:10B88800001ED8228000AEF08000ABC48000AC2837 +:10B898008000AD588000AC788000D2108003B405D9 +:10B8A800800113908000B12CD4314A5830167007AB +:10B8B80030A20C9330043055C3E86EA85808C3A0D2 +:10B8C800F1090022F2CA0001F15A0022EC0919001C +:10B8D800C151F1380012E40818005F0AE6081800A0 +:10B8E8005F09F5E91009E8091800C041EA081800DD +:10B8F800C2110E9CF01F0013C1D8F1090020F2CA32 +:10B908000001F15A0020EC091900C141F138001278 +:10B91800E40818005F0AE60818005F09F5E910094D +:10B92800E8091800C041EA081800C0410E9CF01F41 +:10B9380000066E075807CC21D8320000000080CCE2 +:10B948008000B7DC8000B2E0D4211896580CC0E122 +:10B958004C08201D1AD8E068024E1AD84BE84BFC58 +:10B968001AD8F01F003F2FCDC008F9380035A3D8EA +:10B97800F968003578A7F909002CE068023FF0095A +:10B988001900E088008B5807C091350CF01F00356E +:10B998001897E08000838DACC2E86E1C580CC0304C +:10B9A800F01F00316E585808C0E04AA8201D1AD868 +:10B9B800E068026C1AD84AD84A8C1AD8F01F0028B6 +:10B9C8002FCDC0086E285808C0916E385808C0613D +:10B9D800EF090010F0091900C0E049E8201D1AD845 +:10B9E800E068026E1AD84A2849CC1AD8F01F001C01 +:10B9F8002FCDC008350A300B0E9CF01F001EF01F1B +:10BA0800001E8F1C1895C0610E9CF01F001C8DA590 +:10BA1800C178344A49ABF01F001B499B343A6E1C6D +:10BA2800F01F00190C9A499B6E1CF01F00190C9C02 +:10BA3800F01F00185C5CC0700C9CF01F0017E06CD5 +:10BA480000FFD822ED380035A3B8ED680035D822BC +:10BA580080039DC48003A13880039D9C800094C40A +:10BA68008002E2A4800112288003A14880039FA0DD +:10BA78008002E8BC800112008002E28C8003B409D5 +:10BA880080011260800113208000BBBC800111F886 +:10BA98008000B5988000AE50E06C00FFD82200000E +:10BAA800D421202D1896580CC0E14BA8201D1AD877 +:10BAB800E06803781AD84B884B8C1AD8F01F0038E6 +:10BAC8002FCDC00878A75807C0E14B28201D1AD8E9 +:10BAD800E068037A1AD84B384B0C1AD8F01F00309C +:10BAE8002FCDC0086F295BF9C1102E2933C8E06A31 +:10BAF800FFFFF2080D081438F40817B0EF580020BB +:10BB08005808F9B80001EFF80C106F395BF9C1104B +:10BB18002E2933C8E06AFFFFF2080D081438F4082C +:10BB280017B0EF5800225808F9B80001EFF80C11C7 +:10BB38006EB850185808C041FC18FF0050186EC85D +:10BB480050085808C0716EA84019F3E80008A1A869 +:10BB58005008EECBFFD80C9CF01F0013FACBFFFC6B +:10BB68000C9CF01F00121A9B0C9CF01F00110C9CDF +:10BB7800F01F0010EF39001230A8F0091800EFF894 +:10BB88001E12F9B80100EFF81E132FEDD82200009D +:10BB980080039DC48003A16080039D9C800094C4A1 +:10BBA8008003A17C8000CBC88000CA928000CA7440 +:10BBB8008000CB88D43178A71896149574186E290C +:10BBC8005809C0916E395809C061EF0B0010F20B8B +:10BBD8001900C0E04BE8201D1AD8E06805651AD89E +:10BBE8004BC84BDC1AD8F01F003D2FCDC0088A5B2C +:10BBF80032BAF40B1900E088020F118B302AF40BCB +:10BC08001800E0810209F93C002EECCBFFD1F0CA04 +:10BC1800FFE4C0982FF917345C59153EFC0418004E +:10BC2800E08101FAF8091800CF6311FA11CB11D994 +:10BC380011E8B169F3EB1189F3E810896E08F5E9A9 +:10BC480010091039E08101E80E9CF01F00258A4C8C +:10BC5800E06800F0F00C1900E088000FF8CC00F064 +:10BC6800EF5C00105C7CF01F001F8F3CC051EF5C44 +:10BC78000010E08F01D1E06C00F0F01F001A8F2C4B +:10BC88001894C0C16E3C580CE08001C6F01F001625 +:10BC9800EF5400108F34E08F01BF189B3009E06A21 +:10BCA80000F00A9CF01F0011E06800F0F00C190089 +:10BCB800C2004878201D1AD8E068052E1AD848C84E +:10BCC800485C1AD8F01F00052FCDC00880039DC41A +:10BCD80080039FA080039D9C800094C48000AEC414 +:10BCE8008002E2A48002E28C8000CEC48003A1948A +:10BCF8006E3B580BE08001B2E06900F0EF1A0010CB +:10BD08000A9CF01F0036EF080010F8081900E080C0 +:10BD180001A54B38201D1AD8E06805351AD84B18EC +:10BD28004B1C1AD8F01F00312FCDC00819A8305A63 +:10BD3800F4081800E0810100EF3800123019F20809 +:10BD48001800E08100EC30086CA4333B89D889B82E +:10BD580089C8089CF01F0026C0F0F8C8FFFC19AB82 +:10BD6800119919BA1188B16AF5EB118AF5E81088AA +:10BD78001248E948004433AB089CF01F001DC0E09E +:10BD8800F8C8FFFC19AB119919BA1188B16AF5EB1B +:10BD9800118AF5E810881248C0386918A198E9484E +:10BDA800004833BB089CF01F0012C0E0F8C8FFFC35 +:10BDB80019AB119919BA1188B16AF5EB118AF5E82E +:10BDC80010881248C0286918E948004C6828F0C94A +:10BDD800FFF0C0F11298C1C88000CEC480039DC492 +:10BDE8008003A1C880039D9C800094C48000AAF4AD +:10BDF800F1390013F13B0010F13A0011F13800124B +:10BE0800B16AF5EB118AF5E81088F3E8100889A8FB +:10BE1800301B089CF01F0084C0E0F8C8FFFC19AB79 +:10BE2800119919BA1188B16AF5EB118AF5E81088E9 +:10BE3800124889B8303B089CF01F007BC0E0F8C866 +:10BE4800FFFC19AB119919BA1188B16AF5EB118A7F +:10BE5800F5E81088124889C831CB089CF01F007299 +:10BE6800C0E0F8C8FFFC19AB119919BA1188B16A7A +:10BE7800F5EB118AF5E81088124889D8306B089CD0 +:10BE8800F01F00691892C2E01998A38889E8582819 +:10BE9800F9B80B02E9F8BA0E3003C1D8E608150262 +:10BEA800E6C9FFF22FE8E8090029E4080008113E76 +:10BEB800113AB16AF5EE118A118EF5EE108A1191D8 +:10BEC800069CF5E11001F2CBFFFC93112FF3F01F54 +:10BED80000575C5368E81033CE23069C4D4BF01F87 +:10BEE80000536CA43008E93A00123089EF58001E5C +:10BEF800F20A1800E9F91E12E9F81E130C9C300A20 +:10BF0800E8CBFFD8F01F004BE93800132FF8E96899 +:10BF180000133018E958001EC7E820383029F20805 +:10BF28001800E08B007930080C9CEF58001EF01FB9 +:10BF38000042C7183069F2081800C3513019EF38A9 +:10BF48000012F20818005F0B3039F20818005F0978 +:10BF5800F7E91009C0813049F2081800C040F40818 +:10BF68001800C5916CA40C9C3003EF53001EF01F01 +:10BF780000330C9C4AEBF01F00320C9C4ACBF01F9C +:10BF880000310C9C4AABF01F0030E939001230C870 +:10BF98000C9CF0091800E9F31E13E9F81E12F01FB3 +:10BFA800002BC398302AF4081800C351EF38001248 +:10BFB800F2081800C30130086CA4EF58001E336B58 +:10BFC800089CF01F0019C270F8C8FFFC19AB119942 +:10BFD80019BA1188B16AF5EB118AF5E81088124888 +:10BFE80089986828F0C9FFF0C0311298C108F13962 +:10BFF8000013F13B0010F13A0011F1380012B16A58 +:10C00800F5EB118AF5E81088F3E8100889A80C9C6C +:10C01800F01F000F0E9CF01F000F0A9CF01F000E6F +:10C02800D83200008000AAF48000C19C8003B409C3 +:10C038008001384C8000BAA88000CABC8000CBC8F8 +:10C048008000CA748000CA928000B5988000B6B497 +:10C058008000AEC48000D13C335B0E9CF01F00030F +:10C06800FE91FE66CD8B00008000AAF4D4314C18F6 +:10C07800301370073002069430813050C7686EA6BE +:10C088005806C720ED05001EE6051900E0880006E1 +:10C098002015ED55001EC688E6051900C651ED3875 +:10C0A8000012306AED52001EF40818005F0A30C909 +:10C0B800F20818005F09F5E91009300AF4091800B8 +:10C0C800C501E8081800C0B1ED380013E0081800F1 +:10C0D800E08B00360E9CF01F0028C468E2081800A8 +:10C0E800C191ED380013E8081800E08B0010300A01 +:10C0F800ECCBFFD80E9CF01F0021ED380013ED5556 +:10C10800001E2FF8ED680013C2F80E9CF01F001CEB +:10C11800C2B8E0081800C0510E9CF01F001AC248AF +:10C128003049F2081800C0F1ED380013E208180091 +:10C13800E08B00060E9CF01F0014C1680E9CF01FD7 +:10C148000013C0F83039F2081800C0E1ED380013C8 +:10C15800E8081800E08B00060E9CF01F000DC04890 +:10C168000E9CF01F000C6E075807C8A1D8320000BB +:10C17800000080CC8000B6B48001384C8000BAA89A +:10C188008000B2E08000B7DC8000B1D88000B4AC99 +:10C198008000B598D4013019F20C1800E08B001D0E +:10C1A800580B5F1A48D9720958095F19F5E900094F +:10C1B800C13017B9178E179A17A8B16AF5EE118A08 +:10C1C800F5E81088F3E81008C0704858304AF00CB9 +:10C1D800002CF01F0004D80200001D5800001D505C +:10C1E8008002E736D42130181897F00B1800E08B3E +:10C1F80000074868304AF00B002BC038304A484BDB +:10C20800F01F00040E9CD82200001D508003B409C2 +:10C218008002E736D4313013189516911492E60C43 +:10C228001800E088000F4BB8201D1AD8E0680246B5 +:10C238001AD84B984B9C1AD8F01F00392FCDC0083C +:10C248004B89F20C0028F20C072B11BA119911A88E +:10C25800B169F3EB1189F3E81088F5E81008C0E13B +:10C268004AC8201D1AD8E06802471AD84AE84ABCCA +:10C278001AD8F01F002B2FCDC008300AE06B011030 +:10C28800149CF01F002A1897C041E06600FFC758A9 +:10C2980078045804C0E049F8201D1AD8E068024D17 +:10C2A8001AD84A3849DC1AD8F01F001D2FCDC0080B +:10C2B800781630CA089B0C9CF01F001EECC9FFF4CE +:10C2C800AC92ACD3E5D2C110ACA3ACC42011AC8203 +:10C2D80032EC2FF1F2C8FFFF300AC05810CBF5D26C +:10C2E800C0082FF1038BF4C2FFFFE80B18005F139F +:10C2F800F80B18005F16E7E60006E8061800CEF10E +:10C30800B28A0389E8091800C1601099CE3B000081 +:10C318008003A1E48003A22880039D9C800094C42C +:10C3280000001D508003A2408000D3188003A2643F +:10C338008002E8BCF0CBFFFB10C9B089B0A9301966 +:10C34800B099B0B96E180E9C101B5C7BF01F000CE6 +:10C3580048C848D6F0050025335A6C0C0A9BF01FD4 +:10C36800000B6C0C0A9A33590E9BF01F0009EDDC88 +:10C37800C0080E9CF01F00070C9CD8328000D21019 +:10C3880000001D5000001D5880011320800114F08A +:10C398008000D13CD421189A303CF80A1800E08873 +:10C3A800000F4BE8201D1AD8E068028A1AD84BC83B +:10C3B8004BCC1AD8F01F003C2FCDC0084BB8E06713 +:10C3C8000118F4070247F007000730180F8B169979 +:10C3D800F00B1800C0A0C603302BF6091800C0F0F7 +:10C3E800F8091800C4C1C4383008AEABAEB8AE986E +:10C3F800EECBFFF43028300CAE88C3680FA92019A3 +:10C408005C59AEA9C4910FBB2FFB5C5BAEBB0F9C04 +:10C41800304EFC0B1800C251F20C1800C1214A4AD8 +:10C4280015FB15CE15DC15EAB16CF9EE118CF9EA9D +:10C43800108AF7EA100AC050AEB9AEA8AE98D82252 +:10C44800EEF801105808C070EEFA0114300BEECC6B +:10C45800FFF45D183008AE883008EF480110D82284 +:10C46800AEABEECBFFF4F01F0013D8226E282018D5 +:10C478008F28C121EF480110AE88D8224878201DA6 +:10C488001AD8E06802C61AD848B8486C1AD8F01FFB +:10C4980000062FCDC008D8228003A1E48003A28023 +:10C4A80080039D9C800094C4000018F000001D507B +:10C4B8008000C21C8003A29CD431580B5F081292E2 +:10C4C80016974BB914967209189558095F04F1E448 +:10C4D8001004E08100B6580CE08000B31989E8091F +:10C4E8001800E08000AEF01F0033E04C00FFE08B46 +:10C4F80000A84B1B0A9CF01F0031C08137F8AEA47E +:10C50800AE88AE9C3018AEB8D8320A9CF01F002C0A +:10C51800F8081618AE88F1DCC208AEBCAE98F1DC9B +:10C52800C108AEA85BFCE081008F4A63300430305C +:10C5380006910788E0081800C171E80400280A9CE1 +:10C54800F00B1503101B2FFBE20B003B2FCBF01F4A +:10C55800001BC0A1E0680118B13449A8F004000428 +:10C56800E8F8010CC0782FF4E6C3FEE85844CE2161 +:10C578003FF8F0091618AE89F3D8C208AEB8AE99DC +:10C58800F3D8C108AEA95BF8C5E1300748E848DB35 +:10C59800118A0E9C0E9930313043F2C0FFFF178488 +:10C5A80016985804C1211297C358000000001D585E +:10C5B8008002EDD08003A2BC8002ECC880011E106E +:10C5C800000018F0000018ECE2041800C0C117C8F9 +:10C5D800F4080104F40801081838E08A0005F9D4C1 +:10C5E800C0081297F3D0C008F6CBFEE8E609180099 +:10C5F800CD513039F2071800E08B0027494BE0682D +:10C608000118EE080248F6080008118BF20B180012 +:10C61800C1B1F4C9FFFFB0CAF1460110301AF142A6 +:10C628000114B08AF0CCFFF448A80A9BB089F01F27 +:10C63800000A0E9CF01F0009E06C00F2D832E06C92 +:10C6480000F7D832D83AE06C00FFD832000018F072 +:10C65800000018EC8002ED708000C39CD40148985B +:10C6680070085808C0D0300CF01F0007301CF01FAD +:10C678000006302CF01F0004303CF01F0003D802E5 +:10C6880000001D588000C39CD421494C4946F01F26 +:10C6980000156C0518975805C1E1F01F00138D0CA3 +:10C6A800C1A0492B0A9AF01F00120A9A491B6C0C68 +:10C6B800F01F00116C085808C0E05807C0C0EE0908 +:10C6C800161848E8B0B7B089F3D7C208EFD7C10841 +:10C6D800B099B0A7D82200008003A2C800001D5856 +:10C6E80080011E10800112008003B40980011260CD +:10C6F8008000C704800111F800001D50D431E068A3 +:10C7080002001496944AF00A1900E08B00E331986D +:10C71800F00A1900E08800DE4DF75C7A30090E9BBC +:10C728000C9CF01F005E8C48F8081900E08100D2CC +:10C738000F993038F0091800E08B00CCE06501183B +:10C74800AB394D75120530290B8AF20A1800E081C1 +:10C7580000C1AA880FBAF5DAC004AADA0FD80FCB3D +:10C76800F1EB108B0FF80FEC5C8BF1EC108C3009AF +:10C778005C8C0FA8F2081800E084009DF20A1800EB +:10C788005F18301AF40B18005F1AF5E81008F20861 +:10C798001800E0810090EAC4FFF42F4708980F8939 +:10C7A800129AE21A00C0E04A00C0C1502FF7C098A0 +:10C7B800F3DBC0082FF7118BF40B1800C7B12FF863 +:10C7C800F2CB00010F8A5809CF41F20A1800C03095 +:10C7D8002FF8CE6B4B0B30082F4B1739129AE21AF1 +:10C7E80000C0E04A00C0C060120B1789F0091800A9 +:10C7F800CF51F1DCC0082FBB300E301A3047C58846 +:10C808001739129CE21C00C0E04C00C0C060120B3B +:10C818001789FC091800CF512FFB17CC17D9B1691C +:10C82800F3EC118917ECF7330008F3EC108917A221 +:10C8380017FC1781F9E91009F73C0009F9E3108C96 +:10C8480017B35C8CE7E2108317925C83E5E11082F2 +:10C85800F4021900C281F4031900C251EE0C190048 +:10C86800C2218B29E8593A80E0880005E8783A80A7 +:10C878008B28EAC7FEF42F6B304A0E9CF01F000984 +:10C88800EAF801105808C250EAFA01140E9B089CF5 +:10C898005D18C1F800001D5C8000CEC4000018F0CF +:10C8A8008002E7365C7C20182F6C5C58180B5808FF +:10C8B800CA81EAF801105808C070EAFA0114300B6E +:10C8C800EACCFFF45D183008AA883008EB4801105C +:10C8D8000C9CF01F0002D8328000D13CD401F01F1C +:10C8E8000003F01F0003D8028000C8F88000C6903B +:10C8F800D42149A949ABF2CCFEC4F2C8FF54300A8E +:10C90800F2C9FF50910A930AB22A172EF14EFFFC82 +:10C918002F092F081838CF71492949382FD9149C65 +:10C92800E019FFFCF0C6FFDC48D7490E910CEE0A6F +:10C938000405189BC098700493042FFB9109FC0A06 +:10C9480005045C8B0809EA0B1900CF632FC82FEA8E +:10C958000C38CED1D8220000000080D48003A2D8A1 +:10C9680000001F5C000072E88003A394D401580BF8 +:10C97800C200F1DBC002C0E048F8201D1AD8E06808 +:10C98800016B1AD848D848EC1AD8F01F000E2FCDE2 +:10C99800C00848D8F00C03299709F00C092B48B8AF +:10C9A800A56CF00C000CF8CCFF54780820189908F6 +:10C9B800D80200008003A2EC8003A33080039D9C72 +:10C9C800800094C4000072E8000080D4D421189834 +:10C9D800588CE088000F49F8201D1AD8E068013DFE +:10C9E8001AD849D849DC1AD8F01F001D2FCDC00825 +:10C9F80049CE49D9FC0C032CF0CAFFF5580CC230BB +:10CA0800A56AF00B15047807F20B000BFC08092740 +:10CA1800F6CBFF5414097608720A2FF8103AF3F887 +:10CA28003A009708F1DCC002C13048A8201D1AD886 +:10CA3800E068014F1AD848D8488C1AD8F01F000867 +:10CA48002FCDC008A56A140992282FF8B228D82239 +:10CA58008003A2EC8003A35080039D9C800094C4B3 +:10CA6800000072E8000080D48003A370580BC0C097 +:10CA780017B8178A179917ABB169F3EA1189F3EB5D +:10CA8800108BF1EB100B993B5EFC580BC0C017B82C +:10CA9800178A179917ABB169F3EA1189F3EB108B71 +:10CAA800F1EB100B992B5EFC4828910C5EFC000002 +:10CAB800000080D0D4211897F9380035EDB800006F +:10CAC800C0D1A1C8F968003578885808C0205D1819 +:10CAD8006E785808C0300E9C5D18D822F93C003595 +:10CAE800F9DCC0015EFC580CF9FB1A075EFCD703A1 +:10CAF800D421300A18971696302C96CBF01F001ABE +:10CB08001895C041E06600FFC2B80C9BF01F0017E3 +:10CB1800EDDCC008C0500A9CF01F0015C2180A9826 +:10CB280070095809C0301298CFCB6EF95809C15016 +:10CB38006F095809C0E148F8201D1AD8E068025367 +:10CB48001AD848D848DC1AD8F01F000D2FCDC008D5 +:10CB58009305EF480040C048EF4800408FF50C9C13 +:10CB6800D82200008000D3188000CF988000D13CE4 +:10CB78008003A3A88003A44480039D9C800094C4E0 +:10CB8800D4211897F9380035EDB80000C170A1A874 +:10CB9800F968003578885808C0205D186E785808FC +:10CBA800C0300E9C5D18EF380035EDB80005C06147 +:10CBB8000E9CEECBFFFCF01F0002D8228001370C40 +:10CBC800D42117881799B169F3E8118917A8F3E8F0 +:10CBD800108917B81697F1E91009189678181039BE +:10CBE800C27049A8700CC0A8780978356C1810393B +:10CBF800C041301BF01F00160A9C580CCF614958E1 +:10CC08007008C14870095809C1006C1A1439C0D19C +:10CC18000F8A0F99B169F3EA11890FAAF3EA10890B +:10CC28000FBAF5E91009910970385808CEC10F8A72 +:10CC38000FB90F98B168F1EA11880FAAF1EA1088C4 +:10CC4800F3E810088D18D8220000820C8000E12437 +:10CC580000008214D421149712961895F01F001022 +:10CC68005807C0C00FB80F8A0F990FA7B169F3EA28 +:10CC78001189F3E71087F1E710078B275806C0C022 +:10CC88000DB80D8A0D990DA6B169F3EA1189F3E67D +:10CC98001086F1E610068B36D82200008000CBC83B +:10CCA800D4213006999899169926993699A6997695 +:10CCB800998699F6F94600404908FAC4FFEC681EBF +:10CCC8006804F96600351185F96500382FF5B085D7 +:10CCD8001897994EF01F000A0E9C5D145C5C4898EA +:10CCE800580CEC071710F1F90000EFF90A00F1F7FA +:10CCF8000A000E9CD82200000000730C8000CC5C57 +:10CD0800000080CC1898300CC0482FFC70085C5C80 +:10CD18005808CFC15EFC580CF9F81207F9B901019F +:10CD2800F1D9E108F9F81C075EFCD703D401580CC7 +:10CD38005F08580B5F09F3E81008C1304978201DD7 +:10CD48001AD8E068028F1AD84958496C1AD8F01FC7 +:10CD580000162FCDC008964AF4080008B848129C5F +:10CD6800984878095809CF819859F0091900C0E006 +:10CD780048A8201D1AD8E06802971AD848B8489CD5 +:10CD88001AD8F01F00092FCDC0089649990BF20850 +:10CD98000008B848D80200008003A4708003A4B437 +:10CDA80080039D9C800094C48003A4ECD421169732 +:10CDB800F01F00065807EFF81207F9B90101F1D979 +:10CDC800E108EFF81C07D8228000CD34D421580C94 +:10CDD800C0E14B58201D1AD8E06801B01AD84B386A +:10CDE8004B3C1AD8F01F00332FCDC008580BC03168 +:10CDF800169CD8223008F00B1900C154F60911000E +:10CE080098585C89F2081900C0F24A78201D1AD88F +:10CE1800E06801B71AD84A884A5C1AD8F01F00257A +:10CE28002FCDC0081699F93E000C300A3037F40EA1 +:10CE380019005F08EE0E19005F061497104678185F +:10CE4800F4061800C0A0F00B01099919F8CAFFF000 +:10CE58001439C2029918DA2A201E3017EE0E19006A +:10CE6800E08B000CF40B1900C1D4985AF20A19008F +:10CE7800C19316189918C0E848B8201D1AD8E06858 +:10CE880001E61AD848D848AC1AD8F01F000A2FCDA6 +:10CE9800C00898581608B8589848F00B000BB84BBB +:10CEA800D82ADA2A8003A47080039EA480039D9C5C +:10CEB800800094C48003A51C8003A53CD43116913E +:10CEC8001497580CC0E14AD8201D1AD8E068033ED0 +:10CED8001AD84AB84ABC1AD8F01F002B2FCDC00860 +:10CEE800580BC070300518960A920A930A90C388A6 +:10CEF8004A28201D1AD8E068033F1AD84A384A1C25 +:10CF08001AD8F01F00212FCDC0085809C0A08C588E +:10CF1800F208010AF0091900C043F3DAB010C1F8A9 +:10CF2800F1D9C0108C54E8090109EE091900EE097D +:10CF380017B06C1BE9D9B010F9D5C010100BE20C72 +:10CF4800000C089A5C7AF01F0012E8030003081727 +:10CF5800E80500055C835C855C8730096C0658062B +:10CF68005F1AE40719005F18F5E80008E0081800E0 +:10CF7800CCD1069CD83200008003A4708003A5B0F1 +:10CF880080039D9C800094C48003A5D08002E7366E +:10CF9800D431580C5F08580B5F0918961697F3E8B8 +:10CFA8001008C06198499648F0091900C0E24C7809 +:10CFB800201D1AD8E06802FE1AD84C584C5C1AD8C2 +:10CFC800F01F00452FCDC00830050A945806C0E16F +:10CFD8004BE8201D1AD8E06803031AD84BF84BDC3D +:10CFE8001AD8F01F003D2FCDC0088C5808995C79DD +:10CFF8008E53F5D8C010F7D3C010121AF3D5C0104D +:10D00800F6090109123AE7D5E413E8091750F1D9EE +:10D01800E51308985C786C1C100CF1D5C0105C8383 +:10D028006E1BF5D3C010100BF01F002DE604000492 +:10D038008C585C84F0041900E088000F4A38201DE1 +:10D048001AD8E068030F1AD84A684A2C1AD8F01F71 +:10D0580000222FCDC008F0041900EDF60000F9B445 +:10D068000000E60500058E585C85F0051900E0888B +:10D07800000F4968201D1AD8E06803151AD849A876 +:10D08800494C1AD8F01F00142FCDC008F00519001C +:10D09800EFF72000F9B502005807C2908E598E4864 +:10D0A800F0091900C2416E085808C2104878201DBE +:10D0B8001AD8E068031F1AD848C8486C1AD8F01F55 +:10D0C80000062FCDC00800008003A4708003A5F4DB +:10D0D80080039D9C800094C48003A6248002E736C8 +:10D0E8008003A6348003A64C8003A6685806C16056 +:10D0F8008C598C48F0091900C1116C085808C0E017 +:10D108004898201D1AD8E06803241AD84878488C13 +:10D118001AD8F01F00082FCDC0085807FE91FF58F5 +:10D128000E9CD8328003A4708003A66880039D9C5F +:10D13800800094C4D421189B580CC0E14AB8201D23 +:10D148001AD8E068021C1AD84A984AAC1AD8F01FB4 +:10D15800002A2FCDC008F939000C3038F009180022 +:10D16800E088000F4A18201D1AD8E06802281AD84B +:10D178004A284A0C1AD8F01F00202FCDC0083007C3 +:10D18800303530169679F2C800015C885809C0E13C +:10D198004968201D1AD8E06802351AD84988495CC0 +:10D1A8001AD8F01F00152FCDC008B6785808C1B19D +:10D1B800F738000C169CF0C900017604EA0819003B +:10D1C800C031308CC068EC091900E08B0006307C57 +:10D1D800F01F000CC038F01F000C2FF7089B5C579D +:10D1E8005804CD110E9CD8228003A47080039EA4FD +:10D1F80080039D9C800094C48003A6948003A6AC01 +:10D208008000C9748002E28CD421580CC0E14B988C +:10D21800201D1AD8E068015F1AD84B784B7C1AD8C1 +:10D22800F01F00372FCDC0083019F938000CF2086C +:10D2380018005F1A3039F20818005F19F5E900097B +:10D24800C1405808C1203029F2081800C0E04A98A7 +:10D25800201D1AD8E06801631AD84AA84A7C1AD84F +:10D26800F01F00272FCDC0089848F00B1900C3F213 +:10D27800F3D8C0101897F1DBB0105C7B121BC27892 +:10D28800E04BFFFEE08A000F49A8201D1AD8E0688D +:10D2980001771AD849C8499C1AD8F01F00192FCD10 +:10D2A800C0088E481608AE486E075807C0E14918EE +:10D2B800201D1AD8E068017B1AD8494848FC1AD8BA +:10D2C800F01F000F2FCDC008F1DAB0108E59F00909 +:10D2D800010AF2081900FE9BFFD5AE48AE586E0C45 +:10D2E800580CC030F01F000A30088F08D822000000 +:10D2F8008003A4708003A70080039D9C800094C4D1 +:10D308008003A7188003A7348003A7488000D13C76 +:10D31800D431202D16971495581CC0B0C083582CB2 +:10D32800C040583CC0B1C1783004C0583144C0280E +:10D3380030042EC42E445C84C0F84C08201D1AD832 +:10D34800E06800D11AD84BE84BEC1AD8F01F003E21 +:10D358002FCDC00830045825E08B00065815E08210 +:10D3680000DDCBF85835E08100E6308CF01F00373F +:10D378001896E08000F25C740E99E8C8FFFD5C79AD +:10D38800E018FFFCB847E06A02443000F4080108DE +:10D39800F8040004F0090D472ED4E014FFFCAC5744 +:10D3A8009914F965000C99005C77F8C3FDAC0E047C +:10D3B8000833C0E24A18201D1AD8E06800EB1AD8D2 +:10D3C8004A384A0C1AD8F01F00202FCDC008580838 +:10D3D800E089000F4998201D1AD8E06800ED1AD896 +:10D3E80049C8498C1AD8F01F00182FCDC008F20779 +:10D3F800010700980A9918943015E0610243B8753E +:10D40800E0620244C6A850195008308CF01F000F83 +:10D418000E9B189A5C8BF4CEFFF0F6011900F60CFF +:10D428001720E40C173040194008580AC1610C9CB9 +:10D438001496F01F0009C9088003A4708003A76030 +:10D4480080039D9C800094C48000C9D48003A77C7D +:10D458008003A7B08000D13C9508890AF569000CC3 +:10D46800F560000DE047FFFFC0E14BD8201D1AD83A +:10D47800E06801071AD84BB84BBC1AD8F01F003B1C +:10D488002FCDC008951EB45CB44BFDDEC002C0E0D1 +:10D498004B38201D1AD8E068010D1AD84B484B2C80 +:10D4A8001AD8F01F00322FCDC0085C7C8CDB18170F +:10D4B80014946C1CF80B000B1633C0E24A88201D2C +:10D4C8001AD8E06801101AD84AA84A7C1AD8F01F5E +:10D4D80000272FCDC008B4755807FE99FF96C3786A +:10D4E8000E985C782FD8E018FFFC5C74E8CCFFED50 +:10D4F800E01CFFFC100CF01F00201896C2D030086A +:10D50800F8040004AC572ED4B847E014FFFCF968BF +:10D51800000C99149908C1B8307CF01F00181896AF +:10D52800C1B03008AC57F965000CB847990899188C +:10D53800C0E848B8201D1AD8E068013D1AD8490843 +:10D54800489C1AD8F01F00092FCDC0083018AC78B5 +:10D558003008ED68000D0C9C2FEDD8328003A470C4 +:10D568008003A7E480039D9C800094C48003A7F8EF +:10D578008003A77C8002E2A48000C9D48003A82885 +:10D58800D43149B8781918951094300CF2C2FFF4C8 +:10D59800F3310009700718961893C1E8EF380010A6 +:10D5A8000238C1716E585808C1400A9A0E9B6E6CB9 +:10D5B80004995D18C0E05806C0410C95301CC0A8FD +:10D5C8006E388D3868088F388907301C3005C028B8 +:10D5D800300C0E966E37E60C18005F0858075F1976 +:10D5E800F3E80008E6081800CDA1D832000073104F +:10D5F800E06C00FB5EFCD421E067040078A8F90B1E +:10D60800002C78C9F5DBC010F90E003C100AEE0EAC +:10D618001900E0880005E06E0400C0285C7EF4096B +:10D628000107EE0E010EC076F95B002E78CCF40CE3 +:10D63800010CD822F009010A580AE08A00063008CD +:10D64800F958002ED82AF2080108F958002ED82ACD +:10D65800996B5EFCF94B008C5EFCF94B00885EFC14 +:10D66800F94B00985EFC998B5EFCF96A0039F94B1E +:10D6780000945EFC5EFC5EFC48A87008C028703808 +:10D688005808CFE148887008C02870385808CFE19A +:10D6980048687008C02870385808CFE15EFC000060 +:10D6A8000000820C0000821400008220D4014A6825 +:10D6B8007008C30870495809C0E14A48201D1AD8A3 +:10D6C800E06805AC1AD84A284A2C1AD8F01F00225C +:10D6D8002FCDC0085819C0E149C8201D1AD8E068E4 +:10D6E80005AD1AD849D849BC1AD8F01F001B2FCD50 +:10D6F800C00858A9C0E14958201D1AD8E06805AEED +:10D708001AD84978493C1AD8F01F00132FCDC00801 +:10D7180070385808CD0149387008C128704958A98F +:10D72800C0E048A8201D1AD8E06805B11AD848E812 +:10D73800488C1AD8F01F00082FCDC0087038580838 +:10D74800CEE1DA0A0000820C8003A8688003A8AC46 +:10D7580080039D9C800094C48003A8D88003A904FA +:10D76800000082208003A934D43118961497784891 +:10D778005808C0E04C48201D1AD8E068011A1AD889 +:10D788004C284C3C1AD8F01F00432FCDC008580A2B +:10D79800C3514C19720C4C19720A4C19109E9207FD +:10D7A8004C08E069100070052FF70A985C87EE0EA8 +:10D7B8001900F2071790C088F104001C0E93EE04BC +:10D7C8001900CF3070385808CF811898C088F104F4 +:10D7D800001C0E93EE041900CE8070385808CF81D3 +:10D7E8001498C088F104001C0E93EE041900CDD0E3 +:10D7F80070385808CF814AA8B0074A887008C1F81D +:10D80800F109001C0E93EE091900C181700A580A2B +:10D81800E0800099580BE0800096178C1799B16941 +:10D82800F3EC118917ACF3EC108917BCF9E910096E +:10D83800E0800089123AE080008670385808CE11DE +:10D8480049887008C1A8F109001CEE091900C141F6 +:10D85800700A580AC770580BC750178C1799B169C6 +:10D86800F3EC118917ACF3EC108917BCF9E910092E +:10D87800C690123AC67070385808CE6148A870052C +:10D888000A98C2D88003A8688003A96080039D9C79 +:10D89800800094C40000822000008214000001F877 +:10D8A8000000820C0000821CF109001C0E93EE0996 +:10D8B8001900C141700A580AC450580BC430178C5B +:10D8C8001799B169F3EC118917ACF3EC108917BCFF +:10D8D800F9E91009C370123AC35070385808CE518C +:10D8E80049A87008C158F109001CEE091900C0F1D7 +:10D8F800178A1799B169F3EA118917AAF3EA108907 +:10D9080017BAF5E91009700A123AC1C070385808F8 +:10D91800CEB1580BC11017891798B168F1E9118871 +:10D9280017A9F1E9108817B9F3E81008C050304A70 +:10D938000C9CF01F00078D354868ED57001C9106B8 +:10D94800D83AE06C00F5D832000082208002E73631 +:10D958000000821CD4211897169CF01F0008C0B044 +:10D96800F908002C5808C0702288EE081900F00742 +:10D9780017305C870E9CD82280012228D421F90810 +:10D98800002C1897F3D8C010E06CFFFFF5DBC0102F +:10D99800F8090109123AE08A000F4948201D1AD8EF +:10D9A800E06801BD1AD84928492C1AD8F01F00127E +:10D9B8002FCDC008100BE0680800EF5B002CF00BBF +:10D9C8001900EFF8BC160E9CF01F000CE04C01FF8C +:10D9D800E08A000AEF380026A1B80E9CEF680026FE +:10D9E800F01F0007D82200008003A8688003A988D8 +:10D9F80080039D9C800094C48000D5FE80010CECBF +:10DA0800D4211896304CF01F000A1897C0E0ECE8B3 +:10DA18000000F8E90000ECE80008F8E900086C48A4 +:10DA28009948781CF01F00030E9CD8228000C9D4A6 +:10DA38008000CD1ED4211896580CC0311897C0B854 +:10DA4800781C580CC030F01F000518970C9B304C00 +:10DA5800F01F00030E9CD8228000D13C8000C974BE +:10DA6800D42130071896C0880C9C6C06F01F00055E +:10DA7800F80700075C575806CF810E9CD822000093 +:10DA88008000DA3CD4217848189758A85F1A5808BB +:10DA98005F19F5E90009C2005818C1E0F8FC0084D4 +:10DAA800580CC060F01F000D3008EF4800843FF8A4 +:10DAB800EEFC0080EF58003AF01F000930066FECCA +:10DAC800EF460080F01F00066FFCF01F0005EF46D0 +:10DAD800007CEF460078D8228000D13C8000DA68CC +:10DAE800D421169778081638C04176389908C11895 +:10DAF8004B899308C0A870390E39C0614B599308F7 +:10DB08006E399139C06812985808CF614B1993083B +:10DB180030060E9C8F36F01F00306E4858A85F19EB +:10DB280058185F181268EC081800C0C0EF380026B3 +:10DB3800EDB80000C071A1B80E9CEF680026F01F78 +:10DB480000276E485818C3206FE85808C0E04A48B4 +:10DB5800201D1AD8E06804F91AD84A284A2C1AD87D +:10DB6800F01F00222FCDC0086FF85808C0E049C840 +:10DB7800201D1AD8E06804FA1AD849D849AC1AD82E +:10DB8800F01F001A2FCDC008EEF800805808C0E03A +:10DB98004938201D1AD8E06804FC1AD84958492C7D +:10DBA8001AD8F01F00122FCDC00830088F48F01F78 +:10DBB8000012C0E148A8201D1AD8E06805021AD84A +:10DBC80048E8489C1AD8F01F00092FCDC008D82271 +:10DBD800000082188000DA8C80010CEC8003A868B1 +:10DBE8008003A9AC80039D9C800094C48003A9C4D1 +:10DBF8008003A9E08000D6B48003A9F8D42118973F +:10DC080078485808C0E04A68201D1AD8E0680175AD +:10DC18001AD84A484A4C1AD8F01F00242FCDC008F9 +:10DC2800303CF01F00231896C380EF08001CF958F9 +:10DC3800001C6E6899688E48A1B8B8483018994891 +:10DC4800EF38000BF968000BEF38000AF968000A92 +:10DC58006E089908497972080E38C0316E38C108C3 +:10DC680049599308C0A870390E39C06149299308E9 +:10DC78006E399139C06812985808CF6148E99308FD +:10DC880030080E9B8F38302CF01F000C48C948D83C +:10DC98008D8970098D3991060C9CD8228003A8685B +:10DCA8008003AA1880039D9C800094C48000C9D476 +:10DCB8000000821C000082188000C9748000D5F81A +:10DCC80000008214D431204D4B583005700910964D +:10DCD8002FF90A9491090A934B2830627007E08F54 +:10DCE800019E6E485808C0E14AF8201D1AD8E0681D +:10DCF80002571AD84AD84AEC1AD8F01F002E2FCD4E +:10DD0800C0085818C0E14A88201D1AD8E06802588F +:10DD18001AD84A984A6C1AD8F01F00262FCDC00886 +:10DD280058A8C0E14A08201D1AD8E06802591AD834 +:10DD38004A2849FC1AD8F01F001F2FCDC0085828C0 +:10DD4800C071EF38004EE4081800E0800081EF3819 +:10DD5800004E30CAF4081800C7A0EF3800AC10997C +:10DD6800E8081800C300EEF900A82FF9EF4900A849 +:10DD7800493A100AF53AFFFF1439C6B33009EF499A +:10DD880000A8E4081800F9B90801F1D9E808EFF883 +:10DD98008EAC0E9CF01F000BC5C80000000082105E +:10DDA8000000820C8003A8688003AA3C80039D9C25 +:10DDB800800094C48003AA688003AA948003AC38C6 +:10DDC80080010A20EF08003AE6081900F9B90401B1 +:10DDD800F1D9E408EFF84C1D6FF85808C3A0EF0913 +:10DDE800003AEF08004CF0091900C3356E4858286E +:10DDF800C100EF09004AEF0800484CD1A3581208A7 +:10DE0800EF39004EE2090709F0090948EF58004CBC +:10DE1800EF080060EF090056F0091900F00917B083 +:10DE2800EF08003CF3D9C02FEF590058F00A15014C +:10DE3800F0091900EFFA3C2CEF08003CEF53003AC8 +:10DE4800EF5800560E9CF01F003BC0383018C02811 +:10DE580030086E495869C0B16C0B6EDAF60A010ACF +:10DE6800E04A0028E08800042FF85C588ECAEDBA12 +:10DE78000003C39158495F0A58795F091449E809B2 +:10DE88001800C3106C0AEEFC00A0EEF100A4F80123 +:10DE980002416ED9EEFB009CF4090109E20B000E69 +:10DEA800E06A01F4FC0A0D00FAE100080039E08894 +:10DEB80000062FF830115C58C178EF3100ADE20C44 +:10DEC800034BF60A0D0A1439E088000E50180E9C10 +:10DED800F01F0019EF3900AD30012FF9EF6900ADDF +:10DEE8004018C0283001EEFC0080580CC1106ED9D3 +:10DEF8006C0A121AEF09004CF2091006123AC08394 +:10DF08005018F01F000E30004018EF4000806E4996 +:10DF18005839C1516C0A6ED9F4090109E049002841 +:10DF2800E08800182FF85C58C14800008003A85802 +:10DF3800800110608001109C8000DA685899C091B7 +:10DF48006C0A6ED9F4090109E04900F0E08B00047D +:10DF58005808C4900E9CF01F00434C385805C14027 +:10DF680070081037C0E14C18201D1AD8E06802E488 +:10DF78001AD84BF84BFC1AD8F01F003F2FCDC00819 +:10DF88006E388B38C13870090E39C0E04B78201DC7 +:10DF98001AD8E06802E81AD84B884B6C1AD8F01FD8 +:10DFA80000362FCDC0086E399109EEF80098580850 +:10DFB800C0403FBB6E6C5D185801C0F0EF180024DC +:10DFC800201DEEC9FFFC1AD80E9AEF18001C6EAB84 +:10DFD8006F7CF01F002B2FED0E9B302C6E37F01F3F +:10DFE8000029C1C8EF3900382FF9EF690038EF3A36 +:10DFF8000039F20A1800E08B0010EF680038EEF8DC +:10E0080000945808C0600E9B6E6C5D185C5CC04143 +:10E018000E9CF01F001D0E956E375807FE91FE638B +:10E0280049A849B410957006C6086C4858A8C0E0BD +:10E0380048E8201D1AD8E068030C1AD8495848DC6B +:10E048001AD8F01F000D2FCDC00868096CD8F20847 +:10E058000108E04800F0E08B004C0C976C36C4587F +:10E068008000DA8C0000820C8003A8688003AAC4B0 +:10E0780080039D9C800094C48003AAF08001023430 +:10E088008000C97480010CEC00008220000082101E +:10E098008003AB1C6A081036C0E149A8201D1AD8B5 +:10E0A800E068031B1AD84988498C1AD8F01F001851 +:10E0B8002FCDC0086C388F38C1386A080C38C0E0DA +:10E0C8004908201D1AD8E068031F1AD8491848FCC7 +:10E0D8001AD8F01F000F2FCDC0086C388B080C9B86 +:10E0E800302C6C36F01F000C5806CA01C0780C9C06 +:10E0F800F01F000A5807CCF1CE1B2FCDD8320000F4 +:10E108008003A8688003AB4C80039D9C800094C466 +:10E118008003AB748000C9748000DA8CD431202D60 +:10E1280018951691784858A8C0A1189B4A2CF01F3A +:10E1380000230A9B302CF01F0022C3B8780850082F +:10E148007818F903001C5018F9020024797778A68A +:10E15800F8F400987860189B49ACF01F00186BFC25 +:10E16800580CC030F01F00186BEC580CC030F01F72 +:10E178000016EAFC0080580CC030F01F00130A9B00 +:10E18800302CF01F000F5804C040009C3FBB5D14AA +:10E198005801C0F0201D5C72F1D3C0101AD20C9B3C +:10E1A800FAC9FFF4FACAFFF80E9CF01F00082FED19 +:10E1B8002FEDD832000082208000DAE88000C97490 +:10E1C8000000820C8000DA6880010234D42118969D +:10E1D800302CF01F00511897C5114D084D0A189999 +:10E1E8007008740BC0A870DAF60A010A123AF4092A +:10E1F8001720F00C172070385808CF61580CC04011 +:10E20800301BF01F0048302CF01F00431897C30143 +:10E218004C584C3A18997008740E37FBC178F13A8B +:10E228000014EC0A1800E08B000DF60A1800E08BC9 +:10E23800000970D7FC0701071237C033109CC0389B +:10E24800169A12977038149B0E995808CE91580C4C +:10E25800C040301BF01F0033302CF01F002F1897E0 +:10E26800C5704B28F10900D42019F15900D44AF897 +:10E27800F10900D42019F15900D4E06A00B0300B3C +:10E288000E9CF01F002B3408EF6800143FF8EF686D +:10E29800000B4A384A7A70097408F2080008950891 +:10E2A800EF48006CEF480068EF48005CEF4800500A +:10E2B8003008EF6800ADEF680038E0680800EF58F4 +:10E2C800002EEF58002C3068EF58004AEF58004CE9 +:10E2D800E0681000EF580072E0680200EF58003C58 +:10E2E8003FF8EF58003A3018EF5800564928EF48E1 +:10E2F800008CE068DD00EA18006DEF48009CE078CB +:10E3080024F88FD9EF4800A03098EF4800A40E9C5D +:10E31800D82200008000C9D40000822000008210AA +:10E328008000E1240000820C000080D48002E8BC58 +:10E33800000001F48000E5ECD401340CF01F000269 +:10E34800D80200008000E1D4D431189714961293B3 +:10E35800169578445804C0E04C98201D1AD8E068F7 +:10E36800020A1AD84C784C8C1AD8F01F00482FCDC6 +:10E37800C008580BC041E06600F7CB78304A140C4F +:10E38800F01F0043EF560024EF08001CE8081900AE +:10E39800C34110944BF84C0970064C08720B700C72 +:10E3A8004BF9E06A100092082FF80C995C88F00489 +:10E3B8001900F4081790C078F30E001CF00E19002D +:10E3C800CF4072395809CF911899C078F30E001CC4 +:10E3D800F00E1900CEA072395809CF911699C0785D +:10E3E800F30E001CF00E1900CE0072395809CF91B7 +:10E3F8004AB9B208EF58001C4AA84AB9700A72080C +:10E40800F40800089308EF48005CF0C90001E068D0 +:10E418000800EF580060EF58002CEF58002E300825 +:10E428008FC88FA8E0680200EF49006CEF490050E0 +:10E43800EF58003C0A9BE06C0200F01F001C5C8C4B +:10E44800F808100AEF5800583018EF430090EF58BA +:10E458000056EF5C003C30288F48495972080E3846 +:10E46800C0316E38C2C849399308C26870390E394C +:10E47800C221490993086E399139C2288003A868D6 +:10E488008003AB9C80039D9C800094C48002E73687 +:10E498000000820C0000821400008220000001F8B5 +:10E4A80000008210000001F48000D95C0000821C8A +:10E4B8000000821812985808CDA148D9930848D866 +:10E4C80070098F3991073019201D30081AD9109A10 +:10E4D8003029109B0E9CF01F00082FEDEDDCC008C2 +:10E4E800C0410E9CF01F00050C9CD8320000821819 +:10E4F8000000820C8001035080010CECD421189795 +:10E5080078465826C390E08B00075806C0C05816B6 +:10E51800C071C2785846C370C3635876C3C030060A +:10E528000C97C4184A8972081838C0317838C1085D +:10E538004A699308C0A870390E39C0614A399308EE +:10E548006E399139C06812985808CF6149F9930813 +:10E5580030080E9B8F38302C1097F01F001DC0A874 +:10E56800189B49CCF01F001C0E9B303CF01F001874 +:10E5780030070E96C188189B498CF01F00170E9B18 +:10E588000C9CCF5B301BF01F0016EDDCC008C0B13F +:10E598003058C088301BF01F0012EDDCC008C031B5 +:10E5A80030988F4858075F193008F00618005F0A3E +:10E5B800F5E90009F0091800C0400E9CF01F000999 +:10E5C8000C9CD8220000821C000082188000C974AC +:10E5D800000082148000DAE80000820C80010A0042 +:10E5E80080010CECD421169C1497580AC08094CB57 +:10E5F800F01F00070E9CF01F0007D82A5809C030EA +:10E60800149CD822F01F00045C5CD8228000D984B6 +:10E618008000D13C8000E504D42149887007C2A855 +:10E62800EEFB0084580BC140169AEEF8008C58088F +:10E63800C06030090E9B6E6C5D18C078169A1099F0 +:10E648000E9B109CF01F000E5C5CEFFC0A21EF385B +:10E658000026EDB80000C0D1A1B80E9CEF680026D6 +:10E66800F01F0008EF380026E018FFFCEF680026CE +:10E678006E375807CD61D8220000820C8000E5EC87 +:10E6880080010CECD401F01F0007487913882FF89B +:10E698005C58B288EDB80000C031F01F0004D80201 +:10E6A8008000E620000073148000DCCCD4314A6876 +:10E6B80070063058ED3E000C2EC6A58EF00E1900DF +:10E6C800E0880040205E3008A36E30175C8E302151 +:10E6D8003042E7DEC010E06401FFE0650200C2E8F6 +:10E6E800F5D8C010EC0A070BEE0B1800C080C293D7 +:10E6F800EC0A0009E20B1800C1B1C0382FF8C1D8E4 +:10E70800139BE40B1800C1D12FDA063AC1A413BA3F +:10E718002FC813A95C88F5E910895C89F2CA000141 +:10E72800E80A1900EA0917B0F959003CC0781399AA +:10E738005809C070F20800085C88FC081900CD135D +:10E74800D832000000007318D4217848189616971C +:10E75800F138000DEDB80000C1C1169C3007F01F5C +:10E768000020C368F138000DEDB80000C0E16C4826 +:10E77800F13A000CF139000DF3EA1089A1A9F16909 +:10E78800000DA989F169000C6E07F01F0016C0285A +:10E7980049555807C1D06E4811C411DBB16BF7E475 +:10E7A800118B11E48EEEF7E4108B6A0A8CE911F4F0 +:10E7B8000E9CE9EB100B16191409F20E010ECD3759 +:10E7C800C098141B6C1CAC6B5C7BF01F00088D0799 +:10E7D800D8225809FE99FFF7CFBB00008000DA68FD +:10E7E8008000DA3C0000731C8000D210D4314C58F1 +:10E7F80018971188EDB80004E081020C79994C282B +:10E80800F90C006070086FAAF208010BC186103974 +:10E81800C0614BE87008F4080108C1164BB87008CD +:10E82800103AC2914BA87008F139000FF138000E68 +:10E83800F3E81088F8081900E088001E4B487009B2 +:10E84800F338000FF339000EF1E910884AE972092C +:10E858005C88EF490064EF5800604AC97209EF49C3 +:10E8680000685808C080EF3900AC3008F00918007B +:10E87800EFF81EAC4A586F497008F009010B580BA5 +:10E88800E089004C3006EF5600704A2B960BEC0BD3 +:10E898001900C3215C7CEF160060F80A000A6FAC0F +:10E8A800EC0C000C143CC281EF0A003AF60A19007D +:10E8B800C2351039C211EF3800542FF85C58EF6890 +:10E8C80000543039F2081800E088000FEF090056AC +:10E8D800EF08003C12085C88F2081900E088014A39 +:10E8E800EF580056C469F2081800E08101430E9CF5 +:10E8F800F01F0009C3E93008EF680054C3A90000FD +:10E90800000073280000731C0000732400007318B3 +:10E91800000073208001016A5CD91009E08600D1EB +:10E928006F7912185808E08900CCEF380026EDB846 +:10E938000002C081A3C8EF680026EF080058EF580E +:10E948000056300A4D39EF6A004E720BEF6A0054D8 +:10E9580072096F48EF490050F6080108EF09007284 +:10E96800EF580070F2080008EF09004AEF580072EB +:10E97800EF080048A358F2080008EF58004C6E480A +:10E988005838E0880066EF080056EF090058F0098B +:10E998001900E0880006EF09003C1009C0A8EF192B +:10E9A800003CB339F7D8C010F20B0C0AF408000980 +:10E9B8005C89F0091900E088004CEF590056C488BA +:10E9C8006C08EF030074EF48007C6C1CF01F0032E9 +:10E9D800F8031900C0E24B18201D1AD8E06803B3E9 +:10E9E8001AD84AF84AFC1AD8F01F002F2FCDC008B1 +:10E9F800EF0800705808C09020186C49F339000DD2 +:10EA0800EDB90000EFF80C38EF0300746C1CF01F30 +:10EA1800002218130C9CEF530074F01F0024EF0819 +:10EA28000074EA081900C1606FF85808C1316FE82E +:10EA38005808C1014998201D1AD8E06803BF1AD8A0 +:10EA480049B8498C1AD8F01F00182FCDC0084914AE +:10EA580030056FF65806C2D06C4811CBF139000D5D +:10EA6800F3D9C0025F1A11D9B169F3EB118911EB1F +:10EA7800F3EB108911F81248680912188CE9F409A7 +:10EA8800000912085808FE9AFF9DE08F045F0000F5 +:10EA9800000073248000CD0C8003AC608003ACA818 +:10EAA80080039D9C800094C48000DA3C8003ACD035 +:10EAB8003FF8EF58003A3008EF680038C5A830082A +:10EAC800EF580070C5686C08EF030074EF480078D1 +:10EAD8006C1CF01F0021F8031900C0E249F8201D42 +:10EAE8001AD8E06803E01AD849D849EC1AD8F01FB8 +:10EAF800001E2FCDC008EF0800705808C0902018DD +:10EB08006C49F339000DEDB90000EFF80C38EF034C +:10EB180000746C1CF01F001018130C9CEF53007449 +:10EB2800F01F0012EF080074EA081900C2406FF8DD +:10EB38005808C2116FE85808C1E14888201D1AD842 +:10EB4800E06803EA1AD848A8486C1AD8F01F0006EB +:10EB58002FCDC0088000CD0C8003AC608003ACA82A +:10EB680080039D9C800094C48000DA3C8003ACD074 +:10EB78004C5430056FE65806C2106C4811CCF13978 +:10EB8800000D11DAF3D9C002B16AF5EC118A11EC63 +:10EB980011F858095F1B6809F5EC108AF1EA100AA8 +:10EBA8008CE8F20A010AF6080008F4080108C066B1 +:10EBB8006F7810195809FE9AFF886F085808C29094 +:10EBC8004B196F1A7209F4090109C2374AFB760B0F +:10EBD800EF0A0048F6080108F40B140316185C88BD +:10EBE800F00A000A5C8AEF09004AF40B14035C4837 +:10EBF800EF5A0048F20A14021419F2080008F6083D +:10EC08000009EF58004AEF59004C3008EF4800401F +:10EC180049F84A09900A6EA8580AE0800381720BE5 +:10EC2800F60911FF1009E08600B15C7AF0C9FFFF10 +:10EC38001619F20A010A580AE08900A849697216E9 +:10EC48005806C0E14958201D1AD8E06804461AD869 +:10EC58004938494C1AD8F01F00142FCDC008F00BC2 +:10EC6800010BE04B7FFEE08A002348C8201D1AD81C +:10EC7800E06804471AD848D848AC1AD8F01F000AE8 +:10EC88002FCDC008000073240000821000007320FC +:10EC98000000731C000073348003AC608003ACF088 +:10ECA80080039D9C800094C48003AD008CD81638E6 +:10ECB800C3148C48F3D8C0101639C0E44AB8201DD4 +:10ECC8001AD8E06804491AD84A984AAC1AD8F01FEA +:10ECD800002A2FCDC0081618300A5C88C058AC48E6 +:10ECE800AC5A121B6C068CD91639CFA55C3B0C9C10 +:10ECF8005C8BF01F0022C21049C8201D1AD8E0689A +:10ED080004561AD849E849BC1AD8F01F001B2FCD61 +:10ED1800C0085C3B0C9C5C8BF01F0018C0E04938B5 +:10ED2800201D1AD8E068045B1AD84958491C1AD81B +:10ED3800F01F00112FCDC0086C1A4929932A492ABF +:10ED48006EA8740B926C9508F80B000A101AB26A38 +:10ED5800F00A16187249B2F8B2CAF5D8C208F1D842 +:10ED6800C108B2DAB2E8C1B88003AC608003AD1064 +:10ED780080039D9C800094C48000CDD48003AD2086 +:10ED8800000073340000731C101BC097EF38002676 +:10ED9800A1B80E9CEF680026F01F00424C256EA912 +:10EDA8006A08F009010AE08602B7F0CAFFFFEF1B04 +:10EDB800002C121A161A580AE08902AE1039E0819E +:10EDC80001F54BA8906A7048F139000DF3D9C002DB +:10EDD8005F19F40900094B6AB409EF0A002CF20A1A +:10EDE8001900C462F13A000CF139000DF3EA1089F8 +:10EDF8005C89EDB90000C081E219FFFEF169000DE0 +:10EE0800A989F169000C4A98EF0A002CB06A704988 +:10EE1800F339000DEDB90001C031201AB06A4A3645 +:10EE28008CEB6C1CF01F00238C696C48F138000DCA +:10EE3800F1D8C0025F18F208000849D9B20849A9F8 +:10EE480072095C78EF1A002C12086EA9F4090009FF +:10EE58001238C0E04988201D1AD8E068048B1AD8F7 +:10EE68004968497C1AD8F01F00172FCDC008EEF664 +:10EE780000805806E08000BE48C46848F138000D9C +:10EE8800EDB80000C080C4B8109C7008EF4800803E +:10EE9800F01F000DEEF800805808CF71CAA80000D6 +:10EEA80080010CEC0000731C000073340000732018 +:10EEB8008000D2108003AC608003AD3480039D9C39 +:10EEC800800094C48000DA3CF138000DEDB80000F1 +:10EED800C1F16848F139000DF13A000CF3EA108AE3 +:10EEE8005C8A1499A1A95C79F20B1608EDBA0001A5 +:10EEF800C0F0F169000DF16B000C68488869F138C1 +:10EF0800000DF1D8C0025F18F2080008A6086C05C9 +:10EF18000A96F01F00455805C041C6984C324C432C +:10EF28006C4811C5868A11D9B169F3E5118911E5D3 +:10EF38008CEBF3E510890C9C11F5EBE91009F40949 +:10EF48000109640A1409F20B010BCBF7E08F0201E7 +:10EF58004B89EEF80080704811FB11C511DC11E8EF +:10EF6800B16CF9E5118CF9E81088F7E81008F00A97 +:10EF7800010A5C8AB26A7248F138000DEDB80001E6 +:10EF8800C031201AB26A4AB58AEB6A1CF01F002AFF +:10EF98008A696A48F138000DF1D8C0025F18F20892 +:10EFA80000084A39B2085C784A097209F009000A6F +:10EFB800EEF80080704811FB11CC11D911E8B16945 +:10EFC800F3EC1189F3E81089F7E91009123AC0E067 +:10EFD80049A8201D1AD8E06804C31AD84988499C52 +:10EFE8001AD8F01F00192FCDC0080C95EF450080E6 +:10EFF80048F848E9908A7209F40900098FA990082D +:10F00800EF09002CF0091900C22248C8201D1AD89F +:10F01800E06804CD1AD848D848AC1AD8F01F000ABE +:10F028002FCDC0088000DA3C0000731C000073205C +:10F03800000073348000D2108003AC608003AD6C94 +:10F0480080039D9C800094C48003ADA810190E9C79 +:10F05800EF59002CF01F004A4CA8300A7019924B47 +:10F06800F40B1900C0504C8A9509300991194C5875 +:10F078007048F138000DEDB80000C5B14C3913885F +:10F08800A5B8B288C56881098CEAF13B000DF7DBA9 +:10F09800C0025F1BF60A000A14098FA9EF0A002CA8 +:10F0A800F138000D8C69F1D8C002F7D9C0105808A2 +:10F0B8005F1EF9DAC010FC0B000B163CC0E44B488D +:10F0C800201D1AD8E06804F21AD84B284B2C1AD8FD +:10F0D800F01F00322FCDC008F409010958085F1845 +:10F0E800F20801080E9CEF58002CF01F00256C1B3D +:10F0F8009648E2081900C090680C580CC040F01FF0 +:10F108000028C028890B8D126C48F138000DEDB825 +:10F118000000C0810B88A5B8AA886E485848EFF34C +:10F128000A046C080C9CEF480080F01F001EC07891 +:10F1380049D030014944300249453073EEF6008029 +:10F148005806C1006C4811CB11D9B169F3EB11898C +:10F1580011EB6EAAF3EB108911FBF7E910091439CA +:10F16800C930EF380026EDB80000C041A1C80E9C98 +:10F17800CE68A1A8EF680026D83200008000D5FE2E +:10F18800000073340000732C000073298003AC6006 +:10F198008003ADC880039D9C800094C48000CD345A +:10F1A8008000DA3C0000731C0E9CF01F0040EEF655 +:10F1B80000805806C0714BECF01F003EEF4C0080F9 +:10F1C800D8326A093005F2CCFFFF6C4811CB11DA4E +:10F1D800B16AF5EB118A11EBF5EB108A11FBF7EA2E +:10F1E800100A1439C1214B2C8C689869F009190050 +:10F1F800E08800B4F01F002FE08000B05805EBFC59 +:10F208001A00EFFC0A20C0D85805C0D1F20A010B39 +:10F21800C4574A7CF01F0027E08000A0EF4C008014 +:10F228000C9BC3986A4B17F417C217D317EBB1633B +:10F23800E7E21183E7EB108BE9EB100B5CDB120BB9 +:10F24800C2D6F80A010B580BE0890029498CF01F37 +:10F2580000191897E08000826A4811F911CA11DB79 +:10F2680011E8B16BF7EA118BF7E8108B4928F3EB3B +:10F27800100B70088AE9101916095809E08A000964 +:10F28800F00B010B6A1CAA6B5C7BF01F000C8B0750 +:10F298000C9B0E9CF01F000AD8326C0B0C95580B77 +:10F2A800C1001696C93B000080010BF000007334C2 +:10F2B8008000DA080000731C8000D2108000E7503C +:10F2C80014195809E08A004AF138000DEDB8000019 +:10F2D800C4404A3CF01F00238D0CC3F06C4811F960 +:10F2E80011CA11DB11E8B16BF7EA118BF7E8108B43 +:10F2F80049D8F3EB100B70088CE910191609580956 +:10F30800E08A002CF00B010B6C1CAC6B5C7BF01FD3 +:10F318000017D8320E9CF01F0016D832720BF60870 +:10F328000109C0A62FFBEF19002CF60801081218D6 +:10F338005808E08A00130E9CEF380026A1B8EF6841 +:10F348000026F01F000CD8323008FE9FFBB4580985 +:10F35800FE99FE00FE9FFE4BD83200000000733479 +:10F368008000DA080000731C8000D21080010BF0C6 +:10F3780080010CECD4314B86ED0800922FF87819F7 +:10F388004B65ED5800928B091388F1D8C004F20838 +:10F39800002818971693109C4B148908F01F003109 +:10F3A8006A080E9C118BF7DBC004A36B5C3BF01F53 +:10F3B800002EC0718E493138F0091900E08B000B1E +:10F3C8004A580E9CF109009A2FF9F159009AE08FDA +:10F3D80003026A0C069B2F0CF01F0024C0B16A0AB6 +:10F3E800FC19E000F5380010B968E618F00012388A +:10F3F800C0A149980E9CF10900A02FF9F15900A06D +:10F40800E08F02E9F4CBFFF48EC830692F0A0E9C16 +:10F41800F01F00175C8CC080ED0800980E9C2FF838 +:10F42800ED580098C11868080E9CF13B000CA58B9C +:10F43800F60B10FCF01F000CC1C0ED08009A0E9CE2 +:10F448002FF8ED58009AED0800962FF8ED58009621 +:10F45800E08F02C6000080D40000733000007318EB +:10F468008000D67C8000CDD48001255880011E2CD8 +:10F47800680811CA11D9B169F3EA118911EAF3EAE6 +:10F48800108911FAF5E91009F20A1618B0CAF5D967 +:10F49800C208B0F9B0DAF5D9C108B0EA4B28910929 +:10F4A8006808F1390008F13A0009B16AF5E9118AEA +:10F4B800F139000AF5E9108AF139000BF3EA100A6C +:10F4C800F4091618F1690008F3DAC208F16A000BAA +:10F4D800F1690009F3DAC108F169000A4A386804D9 +:10F4E800910AE938000DF5D8C002F1D8C0064A0BD8 +:10F4F800B6884A086A09580A5F1A8E4514055C8559 +:10F50800B00549D87006CA586C485808C0E149B8CF +:10F51800201D1AD8E06800B71AD84998499C1AD80B +:10F52800F01F00192FCDC00858A8C0E14938201D88 +:10F538001AD8E06800B81AD84948492C1AD8F01FD8 +:10F5480000122FCDC0085818C24148C8201D1AD82B +:10F55800E06800B91AD848E848AC1AD8F01F000A81 +:10F568002FCDC0080000731C00007324000073280E +:10F57800000073200000820C8003AC608003ADF0B3 +:10F5880080039D9C800094C48003AE188003AE4421 +:10F59800098A0998F1EA1088ED0A0024F00A19008E +:10F5A800C56109AA09B8F1EA1088ED0A001CF00A39 +:10F5B8001900C4D1F33A000CF338000DB168F1EA30 +:10F5C8001188F33A000EF1EA1088F33A000FF5E8D3 +:10F5D80010086C1A103AC3B1F33A0010F33800114E +:10F5E800B168F1EA1188F33A0012F1EA1088F33AA7 +:10F5F8000013F5E810086C0A103AC2916C380C3800 +:10F60800C0E14CA8201D1AD8E06800C21AD84C885E +:10F618004C8C1AD8F01F00482FCDC008580CC06079 +:10F6280099384C6870098D3991066C380C38E0812E +:10F6380001A14BE8201D1AD8E06800C81AD84C0868 +:10F648004BCC1AD8F01F003C2FCDC0080C9C6C3650 +:10F658005806FE91FF5BE08F05296C4858A8C0E06A +:10F668004B28201D1AD8E06800D21AD84B584B1CDA +:10F678001AD8F01F00312FCDC008098B0998ED0A60 +:10F688000024F1EB1088F00A1900C77109AC09BB16 +:10F69800ED08001CF7EC108BF6081900C6E1F33CE6 +:10F6A800000CF33B000DB16BF7EC118BF33C000E33 +:10F6B800F7EC108BF33C000FF9EB100B6C1C163CAD +:10F6C800C5C1F33C0010F33B0011B16BF7EC118B93 +:10F6D800F33C0012F7EC108BF33C0013F9EB100B22 +:10F6E8006C0C163CC4A1498B178CEDBC0002E08061 +:10F6F800013AEDBC0001C2D1494B6CAC760BF60C5B +:10F70800010CC2D6ED14002C081C580CE089002806 +:10F718005C7A201D5C751ADA48DCEA0B000B5C7811 +:10F72800F2CAFFF0780CC7688003AC608003AE6C47 +:10F7380080039D9C800094C40000820C8003AE98D6 +:10F748008003AEC4000073280000731C00007324FB +:10F75800EDBC0000C0414CC870088DD84CB8900969 +:10F768003008F0091900E08000FEED3800260C9CF6 +:10F77800A1B8ED680026CF486C365806FE91FF6F99 +:10F788004C3870050C98CF286A0A580AC130F33CE7 +:10F798000010F33B0011B16BF7EC118BF33C001236 +:10F7A800F7EC108BF33C0013F9EB100B163AE081E1 +:10F7B80000DC09AB09BAF5EB108AEB0B001CF40B63 +:10F7C8001900E08100D25808C0706A3991394B0895 +:10F7D80070098B3991054AF81188EDB80004C1F118 +:10F7E8004AD8700913AB139A13B8201D1389F1EB8B +:10F7F8001088F5E910894A5B1AD9968C4A794A8BA0 +:10F808007209760BF2CAFFF0F80B000B4A5C780C11 +:10F818002FFC2F49F01F00242FEDCA48EDB8000136 +:10F82800E08100A1EB3C0014F01F00201896C08175 +:10F8380049F8F109009C2FF9F159009CC938497819 +:10F848007008F0C9FFF0C0311298C108F1390013EF +:10F85800F13B0010F13A0011F1380012B16AF5EBF2 +:10F86800118AF5E81088F3E810088D08EB08001CE9 +:10F87800ED58001C48987008F0C9FFF4C1A112980F +:10F88800C27800000000821000007320000082147B +:10F898000000732800007318000073300000731C08 +:10F8A80000007324800102348000E1D4000080D479 +:10F8B800F139000FF13B000CF13A000DF138000E60 +:10F8C800B16AF5EB118AF5E81088F3E810088D188D +:10F8D8004C587008118B1199F3EB1089ED590024DD +:10F8E80030398D494C197209F2CBFFFF8DCB8DABA6 +:10F8F800F13B000FF138000EF7E81088ED5800587A +:10F90800ED5800608A48E2180199AC486A684B8A49 +:10F918002019740C8D688D3C6A889506ED49006441 +:10F928008D880C9CF01F0033ECCBFFFCED1C003CD9 +:10F93800F01F00313019ED5C003C201D30081AD949 +:10F94800109A3129109B0C9CF01F002C2FED5C5C49 +:10F95800C0600C9C300BF01F002AC0480C9CF01FA4 +:10F9680000290E9CC3C80A986A355805FE91FF0EF7 +:10F9780049D56A08F13C000DF9DCC006F01F0022E9 +:10F988005806E08003504A188E4A6A09911791492F +:10F99800B06A30096E1A9109912A49D8910949D853 +:10F9A800B089ECFA0084580AC3C0ECF8008C5808F7 +:10F9B800C0500C9B6C6C5D18C06810990C9B109C17 +:10F9C800F01F00155C5CC041ED4C0084C2A80E9C81 +:10F9D8004928F10900962FF9F1590096F01F0010F7 +:10F9E800D8320000000073180000731C0000820C5D +:10F9F8008000E6B48000D95C800103508000E124D7 +:10FA080080010CEC8000D67E000073340000732C5B +:10FA1800000073298000E5EC000080D48000D13C10 +:10FA28004A9891064A981188EDB80002C3216C489B +:10FA38005828C0814A6870096D781039E081026BD6 +:10FA4800C1D84A49720A6CA9F4090109E08602631F +:10FA5800ED1A002C14195809E089025DE08F032182 +:10FA680049D8201D1AD8E06802271AD849B849CCC5 +:10FA78001AD8F01F001C2FCDC00849B91388A3B8A5 +:10FA8800B288ED380026A1C8ED680026E08F024351 +:10FA9800EDB80001C0616C4820285818E08B00A21E +:10FAA800492870088DD830080C9CED6800ADF01F0F +:10FAB80000106C4820285878E08B022D48D9F208AD +:10FAC800032F000000008224000073280000732424 +:10FAD8000000731C8003AC608003AEF480039D9C1F +:10FAE800800094C400007329000082108000E6B4EE +:10FAF8008003AC404CF811891298E218001259287A +:10FB0800C7A14CD8700A6DF8704811FB11C711DCF9 +:10FB180011E8B16CF9E7118CF9E81088F7E81008DA +:10FB28002FF8103AC681ED0800722FF8ED580072D0 +:10FB38004C287008ED4A0050F0CA00012FF88DC813 +:10FB48008DA84BF87008F139000FF138000EF3E872 +:10FB58001088ED5800603048ED4A00648D48EC0884 +:10FB6800000BED1C003CF01F00375C8CF808100AF5 +:10FB7800ED5C003CED580058ED0900563018F009CE +:10FB88001900C021A17CED5C0056ED0800745808EE +:10FB9800C0E14AD8201D1AD8E06802591AD84AB8D4 +:10FBA8004ABC1AD8F01F002B2FCDC00820186DFCB6 +:10FBB800ED5800747808ED48007C5808F9B800FF43 +:10FBC800F9B80100EDF81E4EED58003AF01F00227A +:10FBD800ECF800905808C050300A0C9B6C6C5D180B +:10FBE800ED380026A1B80C9CED680026F01F001B1C +:10FBF800E08F0191EDB90004E081018D4908700999 +:10FC080013AB139A13B8201D1389F1EB1088F5E98B +:10FC18001089493B1AD9968C4929488B7209760B69 +:10FC2800F2CAFFF0F80B000B483C780CC7980000AC +:10FC380000007328000073240000731C0000731870 +:10FC48008000D95C8003AC608003AF1480039D9C66 +:10FC5800800094C48000DA3C80010CEC0000732022 +:10FC6800000073304C281188EDB80004C5E14C1829 +:10FC7800700C6D485CD81808C3D66D78F808010870 +:10FC88005808E089003830488D486C885808C0E129 +:10FC98004B98201D1AD8E068027E1AD84B784B8CF6 +:10FCA8001AD8F01F00382FCDC008300A0C9B6C6C96 +:10FCB8005D185C5CC0700C9C301BF01F0033E08F3B +:10FCC80001A7ED0700560C9CF01F0030ED080070EE +:10FCD8005808F9B901FFF1D9E108EDF81C383019D5 +:10FCE800ED08003CF2071900C021A178ED58005634 +:10FCF800C2E84A78700913AB139A13B81389F1EB69 +:10FD08001088F5E910894A3B201D1AD94A29968797 +:10FD180072094A2BF2CAFFF0760BEE0B000B2F4943 +:10FD2800F01F001F2FEDCF68EDB80001E08100F350 +:10FD380049A870096CA820181039E08100EC0C9CC7 +:10FD4800F01F0018CE780C9CF01F0010496811882D +:10FD5800EDB80005E08100DFED380026A1B80C9C65 +:10FD6800ED680026F01F00113078CC1800007328C9 +:10FD7800000073248003AC608003AF2C80039D9C3B +:10FD8800800094C48000E1248000E7F40000731828 +:10FD980000007320000073300000731C80010234DF +:10FDA800800101000000732980010CEC0C9CF01FFD +:10FDB800003E4BE84BE91188E2180020C2D01388B6 +:10FDC800EDB80004C1F14BB870096D781039C1A1C4 +:10FDD800ED380026A1B80C9CED680026F01F00360F +:10FDE8000C9CF01F00364B6972080C38C5604B59E3 +:10FDF8009308C05870390C39C69012985808CFB17A +:10FE0800C6D8ED380026A1B80C9CED680026F01F76 +:10FE1800002A3088C6C81388EDB80004E081007B4A +:10FE28004A4870096D781039C7513068C6080C9C6B +:10FE3800F01F001D49D81188EDB80005C6B1ED388E +:10FE48000026A1B80C9CED680026F01F001B0C9C36 +:10FE5800F01F001A49A972080C38C1F04999930893 +:10FE6800C05870390C39C32012985808CFB1C368EC +:10FE78000C9CF01F000D48E81188EDB80004C4A1DF +:10FE880048C870096D781039C4510C9CF01F000BDC +:10FE980048B972080C38C0316C38C21848999308B0 +:10FEA800C1B800008000E7F400007329000073283F +:10FEB8000000732480010CEC8000DA8C0000820CB6 +:10FEC8000000821870390C39C0614C0993086C39EC +:10FED8009139C06812985808CF614BC99308300807 +:10FEE8008D384BB870098D39910630A88D48C128D6 +:10FEF8000C9CF01F00384B881188EDB80004C0A195 +:10FF08004B6870096D781039C0514B591388A5A8F2 +:10FF1800B2884B381188EDB80003C091ECF800980E +:10FF28005808C0803FAB6C6C5D18C048EDB8000441 +:10FF3800C0A10C9B4ABCF01F002C0C9B302CF01F5E +:10FF4800002BC658ED0A0070580AC090ECF80088DB +:10FF58005808C0505C7A0C9B6C6C5D184A48700855 +:10FF68005808C24049C91389EDB90003F1F9080DD1 +:10FF7800F9BA0001F3DAE039F1F90E0D49CAECF8E3 +:10FF8800008C5808C070740A30090C9B6C6C5D18A2 +:10FF9800C0781099740A0C9B109CF01F00165C5CCA +:10FFA800C05049387008ED48008448D81188EDB829 +:10FFB8000005C271ECF8008C5808C1D030090C9BC0 +:10FFC800129A6C6C5D18C1D800008218000082205B +:10FFD8008000E7F4000073280000732400007329F0 +:10FFE8000000820C8000DAE88000C9740000732CDD +:08FFF8008000E5EC10990C9B60 +:02000004800179 +:10000000109A109CF01F002E30094AE80C9C9109B0 +:10001000F01F002D30064AB891064AC76E1C580CD6 +:10002000C330F01F002B8F16C2F86A0BF738000D93 +:10003000EDB80002C2604A78F10C00A02FFCF15C20 +:1000400000A0F10C00962FFCF15C0096179C17A6FF +:1000500017B8178BF9EB108B201D49F972091ADBC1 +:1000600049EB968CF2CAFFF0F1E6108849CB2F4994 +:10007000760BF80B000B49BC780CF01F001B2FED22 +:100080000E9CF01F0013F01F0019C1714988201D3C +:100090001AD8E06801771AD84968497C1AD8F01F45 +:1000A00000172FCDC0085808FE90FCE0FE9FFCEB27 +:1000B00049387006FE9FFB67D83200008000E5ECEF +:1000C0000000822480010CEC000073348000D13CDD +:1000D000000080D400007330000073200000731C07 +:1000E00000007324800102348000D6B48003AC6029 +:1000F0008003AF4080039D9C800094C40000822058 +:10010000D42179F95809C3107208F8CEFF88F9484C +:10011000007C79E8C038109E70085808C1C0704B48 +:1001200017F617C417D5B165EBE41185724A17EBC2 +:1001300015F7EBEB108B15C5EDEB100B15D615EA8B +:10014000B166EDE51186EDEA108AEFEA100AF60ACB +:10015000010ACE2693089D093008F9480040F93875 +:10016000004E2FF8F968004ED822D42179F95809A9 +:10017000C600F9380026EDB80002C5B07208F8CE06 +:10018000FF88F948007C79E8C038109E700858084C +:10019000C1C0704B17F617C417D5B165EBE41185D4 +:1001A000724A17EB15F7EBEB108B15C5EDEB100B47 +:1001B00015D615EAB166EDE51186EDEA108AEFEA8B +:1001C000100AF60A010ACE26930830089D09F9485C +:1001D0000040F938004E2FF8F9090056F968004E32 +:1001E000F5D9C02FF9080060F7D8C02FF009190021 +:1001F000F60817B0F4081780F9580058F908003CC1 +:10020000F00915015C78A178F91A0058103AF9F94B +:100210005C2CF9380026A3A8F909003CF9680026EF +:10022000F20815011009F90800581009F95900568B +:10023000D822D703D43118941693149112921096A1 +:100240004097300A314B301CF01F00391895C6D04A +:1002500098593138F0091900E08B000F4B58201DD8 +:100260001AD8E068031F1AD84B384B4C1AD8F01F25 +:1002700000342FCDC0080E9878175C78AEB8A988E6 +:10028000AEA8E0685014EF68000DA988EF68000C74 +:10029000E8081618AEC8F1D4C208AED8E608161899 +:1002A000EF680008F1D3C208F3D6C010EF68000968 +:1002B000AE993088A9893006AEF4EF63000BAE89A1 +:1002C000EF66000FEF660012EF660013EF66001096 +:1002D000EF660011EF68000E3069049A029BE9D4C2 +:1002E000C108E7D3C108AEE4EF63000A98C8F01F65 +:1002F00000155C7CEF6C0011A98CEF6C0010201DC8 +:10030000491C30671AD70C98F9070090049A2FF708 +:10031000029BE06900FFF95700900A9CF01F000B58 +:100320000A9CF01F000B2FEDD83200008000D3187C +:100330008003AF5C8003AFA480039D9C800094C4C5 +:1003400080011E2C000080D4800122948000D13CCA +:10035000D43120BD14915098414A505A12961897A2 +:100360003009F20119005F08F20A18005F0AF1EA89 +:10037000000AF20A1800C110F3D6C002C0E14C789E +:10038000201D1AD8E06800AD1AD84C584C5C1AD819 +:10039000F01F00452FCDC008580B5F195089126817 +:1003A000C0E04BE8201D1AD8E06800AF1AD84BF81F +:1003B0004BCC1AD8F01F003C2FCDC008EF080072BC +:1003C000E2081900C0B2EF380026EA18FFFFE8186B +:1003D000FF80EF680026E08F02E34058F3D8C001A9 +:1003E000E2180002F9B8010CF009002950296FB099 +:1003F000EF02007431F8F0021900E08800144AC8D6 +:10040000F109009C2FF9F159009CE06C00FFEF38D6 +:100410000026EA18FFFFE818FF80EF680026E08F4B +:1004200002C36FF85802C2605808C1404028A38830 +:100430002FB8AD685C883003503B50A8F7D1B0109E +:10044000409A504BF5DAC001069406980695506A1A +:10045000C3796FE85808CEB14908201D1AD8E06862 +:1004600000D01AD8493848FC1AD8F01F000F2FCDF9 +:10047000C0085808C0416FE85808CD904878201D42 +:100480001AD8E06800D31AD848B8486C1AD8F01FB8 +:1004900000062FCDC00800008003AF5C8003AFD4FE +:1004A00080039D9C800094C48003B028000080D409 +:1004B0008003B0688003B0A450195008EF03003CDB +:1004C000304CF01F0042401918954008E080023C73 +:1004D000300B990B991B5809C0301894C118580853 +:1004E000C0E14BB8201D1AD8E06800EF1AD84B982D +:1004F0004B9C1AD8F01F00392FCDC008910C5C73AB +:10050000402A4069E60A010840435C73E6080D434F +:100510005C835809C3904028300AE608000B149CFD +:100520005C7BF01F002F8B1CE080020EF5D3C01007 +:10053000402B98D9F40B00081039C0E44A48201D1C +:100540001AD8E06800FF1AD84A684A3C1AD8F01F47 +:1005500000232FCDC008501AF01F0023401A18980E +:1005600040895809C0A0402B6A195008721C160C0B +:10057000403BF01F001E4008F00200026A185C8237 +:1005800070188B28C3D8406A402B149CF01F0014AD +:100590008B1CE08001D9F01F0014407AF8020002A1 +:1005A0005C82580AC2D0F7D3C010301A303CF01F1A +:1005B000000C189B6A1C580BC1C1F01F000D40694C +:1005C0008B19E08F01C100008000C9D48003AF5CAB +:1005D0008003B0D880039D9C800094C48000D31811 +:1005E0008003B0E88000CD0C8002E7368000D13C6B +:1005F000403897182FF28B285C82F01F003F320B97 +:10060000F6021900E08B01A0AA63314B6A1CF01FAF +:10061000003BC0904BA8F10900A42FF9F15900A4A8 +:10062000E08F0192EF39001C6A1870188B48B0896E +:10063000EF39001DB099EF3900246A48B0A9EF39AD +:100640000025B0B9E00916186A48B0C9F3D0C2084D +:10065000B0F0B0D9F3D0C108B0E96A48F16C00132A +:10066000F16C00126A48F13A000CF139000DF3EA1E +:100670001089E019FFC0EDE910095C79F169000DFE +:10068000A989F169000C405AEB6A000E404806182F +:100690005C88F3D3C0105048403B6A48120B503B73 +:1006A00040AA1200F139000DF3D9C006F5E910098E +:1006B0005C79F169000DA989F169000C0A98300A8A +:1006C000404BF40B19005F1B507B169A58045F09CE +:1006D000300B124AF60A1800FE91FEF0F5D2B01067 +:1006E000503A6FE05800E08000C260085808C0909F +:1006F0001090CFCB8000CD348000CDD4000080D4CA +:1007000080EA6048F139000DF3D9C0025F1B140B79 +:10071000E08000C45809E08100C1F7D6C0025F0C38 +:10072000301BF60618005F0BF9EB100BF20B1800EC +:10073000E08000B488EBEF19003C140B123BE08919 +:1007400000ADE13B000EE939000EF20B1800E0812C +:1007500000A5684911FE13FB504B11CC11DBB16BA6 +:10076000F7EC118B11ECF7EC108BFDEB100B160A6C +:1007700013CB13D8B168F1EB118813EB4049F1EBBF +:100780001088F3E81008103AE08100884028681CBF +:10079000F00B11EC5C8BF01F0037C0E04B68201DA4 +:1007A0001AD8E06801691AD84B484B5C1AD8F01F78 +:1007B00000352FCDC0086818905AF80A1900C0A15A +:1007C00070098919910C4032109C20125C82F01F34 +:1007D000002EF1D6C001681BC220580BC05188689A +:1007E000F6081900C0E04A48201D1AD8E0680177D1 +:1007F0001AD84A684A2C1AD8F01F00222FCDC008F8 +:100800006048F13A000CF139000DF3EA1089A1A912 +:10081000F169000DA989F169000CC1E8580BC050BD +:100820009659F0091900C0E14938201D1AD8E0682E +:10083000017A1AD84968492C1AD8F01F00122FCD16 +:10084000C008601CF01F001380698868F208000867 +:10085000A068680881080835E0051700E1F3020682 +:10086000089B304CF01F000CC198EF440078C16821 +:100870008000CDD48003AF5C8003B11C80039D9CBD +:10088000800094C48000D13C8003B1308003B1501B +:100890008000CD348000C97481040C98EDB600014D +:1008A000C040EDB60000C0312FF15C81EDD6C00133 +:1008B000EFF81826F9B90120F1D9E138EFF81E2632 +:1008C0006FB9F1D1C010F2080008EF520074EF4880 +:1008D000006CEF0800720218EF5800725802C14015 +:1008E0006FF85808C1116FE85808C0E14AF8201D98 +:1008F0001AD8E06801A11AD84AD84AEC1AD8F01FD1 +:10090000002E2FCDC00858055F193008F0031900DC +:100910005F1AF5E90009F0091800C4406A48580850 +:10092000C410409CE21C0002C3D1F13A000CF13922 +:10093000000DF3EA1089A3B9F169000DA989F169E5 +:10094000000CC318EF380026EA18FFFFE818FF80F4 +:10095000EF6800264998F109009C2FF9F159009C95 +:100960005804C040089CF01F0016EF0900743008BE +:10097000F0091900C1406FF85808C1116FE8580814 +:10098000C0E148A8201D1AD8E06801B41AD84888E8 +:10099000488C1AD8F01F00082FCDC008E06C00FF6B +:1009A000C028300C2F5DD8328003AF5C8003B16467 +:1009B00080039D9C800094C4000080D48000DA688D +:1009C000D421784E1298587E5F07584E5F09EFE9A0 +:1009D0001009C081582EC060583EC040E06C00F83D +:1009E000D822580AC031149CD822201D30095C7AC4 +:1009F0001AD9F01F00032FED5C5CD8228001035050 +:100A0000D4013008201D109A16991AD8149B30185A +:100A1000F01F00032FED5C5CD80200008001035042 +:100A2000D431189679F45804C05179E45804E08020 +:100A300000CE6848F133000DE7D3C001C06088697B +:100A40003008F00919005F03300A5C53301C14337E +:100A5000F9BB0114F9BB0015F01F005D1895E0808B +:100A600000B698593138F0091900E08B000F4D9805 +:100A7000201D1AD8E068040F1AD84D784D7C1AD87A +:100A8000F01F00572FCDC008684811FA11CB11D9BB +:100A900011E8B169F3EB1189F3E81089ED38001C16 +:100AA0007817F5E91009AE88EF3A000CED38001D13 +:100AB000AE98EF38000DF1EA1088ED3A0024AEAAA6 +:100AC000ED3B0025AEBBF20B1618AEF9AECBF7D955 +:100AD000C208F3D9C108AEDBAEE9ED390028EF69F1 +:100AE0000008ED390029EF690009ED39002AEF69A6 +:100AF000000AED39002BE018FFC0EF69000BA5A834 +:100B00005C88F5D8C010EF6A000DF40B1608EF6B87 +:100B1000000CED39002EEF69000EF1D8C006300947 +:100B2000E8185000ED3A002F5C78EF6A000FEF688C +:100B3000000DEF690011EF690012EF690013EF6912 +:100B40000010A988EF68000CED19002E6CA8F208BF +:100B500000088DC85803C110EF39000CEF38000DA4 +:100B6000F1E91088E018FFC0E8180011EF68000DE7 +:100B7000A988EF68000CC068682811897818F169A5 +:100B80000014ECC4FFFC8AC83069089A0C9B0A9CCC +:100B9000F01F00145C7CEF6C0011A98C4929EF6CEC +:100BA0000010F30C00902FFCF35C0090306C201DC3 +:100BB000ED39000B089A1ADC0C9B30080A9CF01FD8 +:100BC000000B0A9CF01F000A2FEDD8328000D318CA +:100BD0008003AF5C8003AFA480039D9C800094C41D +:100BE00080011E2C000080D4800122948000D13C22 +:100BF000D431300A1895314B301CF01F003918934E +:100C0000C041E06C00FED832EB380026EB39001C06 +:100C1000E018FFFCEB6800266B787817AE89EB399B +:100C2000001DAE99EB390024F00B1618AEA9F3D8CD +:100C3000C208EB3A0025AEF8F1D8C108AECBAEBA87 +:100C4000AED9AEE86AA8F0091618EF690008F3D823 +:100C5000C208E06A5010EF690009F3D8C1083004F7 +:100C6000EF68000BEF69000AF40B1608EB19002E71 +:100C7000EF6B000CEF6A000DEF69000FEF640012DC +:100C8000EF640013EF640010EF640011F20A16081D +:100C9000F2080008EF6A000E8BC8EAC6FFFC0A9B48 +:100CA0000C9A98C83069F01F000F5C7CEF6C001143 +:100CB000A98CEF6C0010306CEB38000AEB39000B9C +:100CC000201D0C9A1ADC0A9B069CF01F0007069C4C +:100CD000F01F0006089C2FEDD83200008000D318CA +:100CE00080011E2C800122948000D13CD431202D23 +:100CF0004AE8189770081838E08001A3F9080056F0 +:100D0000F9090060F0091900F20817805C785008B2 +:100D100079E6F9380026E2180002C1E05806C170F1 +:100D20008CEB6C48794911CCF609010911DBB16BE8 +:100D3000F7EC118B11FA11E8F7E81088400BF5E891 +:100D40001008F20800081638E08800070E9CF01F13 +:100D500000185C5CC7696FF55805C0B1EEC9FF8427 +:100D6000EEC2FFFC5019300349214930C2B9109539 +:100D70006A085808CFD1CF3BF13C000CF139000D87 +:100D8000F3EC108C5C8CEDBC0002C1F148B8201D66 +:100D90001AD8E06802471AD8489848AC1AD8F01F09 +:100DA000000A2FCDC00800000000822480010BF053 +:100DB000000080D4000082108003AF5C8003B18407 +:100DC00080039D9C800094C46FF95809C150EF3B8B +:100DD00000261699E2190044C0F16FE95809E08035 +:100DE0000133720E580EC081926EEF09003CF20E74 +:100DF0001900E08301296C09EF4900786E495829F0 +:100E0000C0E0A5AC5C7CF16C000DA98CF16C000C11 +:100E1000EF390026E019FFFCEF6900266EA9F20AFF +:100E20001618F16A0008F5D9C208F16A0009F5D967 +:100E3000C108F169000BF16A000AEF1A002EF16A8D +:100E4000000FF40B1608F16B000EF40900098FC9AE +:100E5000ED39000EEDB90000C061E06B0200EA1B45 +:100E60000204915BEF08003A3FF9F2081900F9B863 +:100E70000000EFF80C1D6E085808C071049CF01FAC +:100E80000075C45078188F086F085808C121600990 +:100E90006C48EF49004011F911CB11DA11E8B16A41 +:100EA000F5EB118AF5E81088F3E81008EF480044E4 +:100EB0006C1C6C4478199848985A9914E8090109EF +:100EC000121A1218B85AB84830695C78049A0E9B06 +:100ED000E9630010E9630011F01F005F30695C7C7A +:100EE000E96C0011A98CE96C0010E30800902FF860 +:100EF000201DE35800901AD9049AEF38000AEF3900 +:100F0000000B0E9B6C1CF01F00552FED6C4811FA66 +:100F1000F139000DF3D9C0025F1B11CC8CE9F60941 +:100F2000000911DB11E8B16BF7EC118BF7E81088C1 +:100F3000F5E810086F7AF2080008101AC037EF4879 +:100F4000005C5809C3B08D036FF85808C041EF46E4 +:100F5000007CC3286C4A15FE15C46A4915DBB16BC9 +:100F6000F7E4118B15E4F7E4108BFDEB100B13CEB7 +:100F700013FC13DAB16AF5EE118A13EEF5EE108A5E +:100F8000144CF60C010CC177401AC058109A700826 +:100F90005808C0E0704913C413FC13DEB16EFDE4C1 +:100FA000118E13E4FDE4108E1C4C161CCF068D0828 +:100FB0009506C0788B060C95C0480C9CF01F002845 +:100FC0006FE65806C3706C4811CC6F4A8CEB11D990 +:100FD000141BB169F3EC118911ECF3EC108911FCCD +:100FE000F9E91009F6090009400B1639FE98FEC60A +:100FF000EF3900AC3008F0091800C1C18CEB6C4827 +:10100000F60A010A11F911CC11DB11E8B16BF7EC0A +:10101000118BF7E81088F3E81008100AEF18006049 +:10102000103AF9B80B00EFF8BA2AF9B80B01EFF84B +:10103000BEACEF380026F1D8C007EF680026300CB0 +:101040002FEDD832E21B00A0FE91FED7CD2B000081 +:101050008001222880011E2C800122948000DA3C2D +:10106000D401189879FA580AC170149B7609580966 +:10107000C030129BCFCB71EC970CF1490040F14985 +:10108000007CF139004E2FF9F14A0078109CF1698B +:10109000004EF01F0002D80280010CECD431300A5F +:1010A0001896314B301CF01F00401895C7B0985966 +:1010B0003138F0091900E08B000F4BC8201D1AD8F9 +:1010C000E06803C91AD84BA84BAC1AD8F01F003AF5 +:1010D0002FCDC008ED39001C78176D78AE89ED3939 +:1010E000001DAE99ED3900242018AEA9F00B16189A +:1010F000ED3A0025F3D8C208AEF8F1D8C108AECB5E +:10110000AEBAAED9AEE86CA8F0091618EF690008BF +:10111000F3D8C208E06A5010EF690009F3D8C1089B +:101120003004EF68000BEF69000AF40B1608ED19A4 +:10113000002EEF6B000CEF6A000DEF69000FEF64FB +:101140000012EF640013EF640010EF640011F20A64 +:101150001608F2080008EF6A000E8DC8ECC3FFFC09 +:1011600098C83069069A0C9BF01F00145C7CEF6CE9 +:101170000011A98C4929EF6C0010F30C00902FFC92 +:10118000F35C0090306C201DED39000B08981ADCE0 +:10119000069A0C9B0A9CF01F000B0A9CF01F000A89 +:1011A0002FEDD8328000D3188003AF5C8003AFA44A +:1011B00080039D9C800094C480011E2C000080D47C +:1011C000800122948000D13CF9390010A3C948A8BD +:1011D000F969001011BA118B119911A8B169F3EBDB +:1011E0001189F3E81088F5E8100899183008F958C3 +:1011F00000145EFC8003B409997A996B5EFCD703F6 +:10120000D421301CF01F00071897C080320A300B21 +:10121000F01F00053FF8EF68000B0E9CD82200007D +:101220008000C9D48002E8BCD40148C9189B720868 +:101230001838C0D178389308C0C870395809C060D0 +:101240001639F7F90003F1F90A0370385808CF612D +:10125000301CF01F0003D802000082288000C974EF +:10126000D4214AB83009700E1C98C148103CC111F5 +:101270005809C0E04A78201D1AD8E06802541AD8EC +:101280004A584A6C1AD8F01F00262FCDC0083019D2 +:1012900070385808CEC1580BC0C017B817861797BA +:1012A00017ABB167EFE61187EFEB108BF1EB100B8B +:1012B000990B580AC2211C98E06A1000E0667FFF73 +:1012C0003007C0C8F10B0012F40B1900C061F6CA58 +:1012D000FFFF1C985C8AC0287038EC0A19005F1563 +:1012E00058085F1BEBEB000BEE0B1800CEC1580843 +:1012F000C040E06C00F5D822F95A00125809C0200D +:10130000D82A993E4828910C129CD82200008228A5 +:101310008003B19C8003B1E080039D9C800094C455 +:10132000D4213008169614951897F9090012F0097F +:101330001900C071300A189BF01F00145C5CC231A8 +:101340005806C0C00DB80D8A0D990DA6B169F3EA13 +:101350001189F3E61086F1E61006EF380010A3A815 +:101360008F16EF680010EF55001448987008109C15 +:10137000C0581837C021D82A783C580CCFB18F38C4 +:1013800048389107D82200008001126000008228AE +:10139000D43112971093169414911895F9090012EC +:1013A0003008F0091900C091300A189BF01F004561 +:1013B000E5DCC008E0810084308B089CF01F00420F +:1013C000C0310896C0E8300A308B301CF01F003F57 +:1013D0001896C041E06200FFC728089BF01F003C40 +:1013E0008C593078F0091900E08B000F4B98201DC4 +:1013F0001AD8E06801C51AD84B784B8C1AD8F01F60 +:1014000000382FCDC008EB3900120E986C175C78AD +:10141000AE893009EB3A0013AEB8AE9AA988AEF99E +:10142000AEE9AEA86A085808C041E6C2FFFCC10890 +:1014300066191238C0C00836C041E06200F7C3F830 +:101440000C9CE06200F7F01F0027C3980A928CC83A +:10145000F0091608AED8AEC9EB390010EDB900009E +:10146000C1403119029A049B0C9CF01F001F5C8C38 +:10147000F1DCC010AEF8A988AEE8580CF9B800FF4E +:10148000EFF80E07EFF80E0631181AD3049BEB396C +:10149000000B029A1AD80C9CEB38000AF01F0013BC +:1014A0002FEDE5DCC0080836C0400C9CF01F000D95 +:1014B00048F8F10900782FF9F1590078049CD832E6 +:1014C000800112608000CDD48000D3188000CDB49C +:1014D0008003B19C8003B1EC80039D9C800094C488 +:1014E0008000D13C80011E2C80012064000080D44B +:1014F000D421202D1897501B149C500A1296F01FCF +:10150000000C401B1898400AC0A148A8E06C00FCE1 +:10151000F10900862FF9F1590086C078F3D6C01082 +:101520000E9CF01F00055C5C2FEDD8228001222864 +:10153000000080D480011390D401F8CAFFFCF9198F +:101540000014F01F00035C5CD8020000800114F05E +:10155000D431203D4D98F109007A2FF9F159007AE4 +:10156000781716910F8818955C8898CAF3D8C0042C +:101570002FE9A369123AC0A5F1D8C004F00B1502F7 +:101580005C3BF01F004F1894C0904CC80A9CF109B6 +:1015900000822FF9F1590082C1D96A12EECCFFF016 +:1015A000029B502CF01F004705980583F1E3108340 +:1015B00005B805AE1896F1EE108E5C835C8E34484B +:1015C000F00E1900C2413438F0031900E081008B9D +:1015D00062A85808E080008770145804E0800083F7 +:1015E00068185808E0800092EF3A000CEF39000DBF +:1015F000B169F3EA1189EF3A000EF3EA1089EF3A84 +:10160000000FF5E910091238C6D1C7F84AE8089961 +:10161000700A089B1498500AC618F10C0012FC0CB2 +:101620001900C5A15806C041700C580CC1B0EF306C +:101630000010EF3C0011B16CF9E0118CEF3000129A +:10164000F9E0108CEF300013F60618005F1AE1EC99 +:10165000100C700018305F0CF5EC100CF60C180034 +:10166000C3B05804E08100D6F13C0010E21C000435 +:10167000F0041700CCE8701C580CC150EF3A000C75 +:10168000EF30000DB160E1EA11805010401AEF30E8 +:10169000000EF5E010805010EF30000F401A14409B +:1016A000003CC1A1400A10945809C0F0703893382A +:1016B000893A48589104C148000080D48000CDD4B4 +:1016C00080012558000082284C88F109008E2FF9EE +:1016D000F159008EC058109970385808C9F1580453 +:1016E000C141EF3A0010EF380011B168F1EA1188FA +:1016F000EF3A00126219F1EA1088EF3A0013F5E8A8 +:1017000010081039C6D1300405F805E9F1E9108850 +:10171000C130402A8AC83119EECBFFF40A9CF01F71 +:1017200000345C8CC0904B180A9CF10900802FF9A2 +:10173000F1590080C4F83F8B0A9CF01F002EC0E0D6 +:101740004AD8201D1AD8E06801141AD84AB84ACCE1 +:101750001AD8F01F002C2FCDC0085804C0D06866DE +:101760005806C3E0089BF1D3C010EEC9FFF40A9AF3 +:10177000687C5D16C5585806C261EF380010FC1928 +:10178000E000B968E618F0001238C1D00F8B0A9C4F +:10179000F7DBC0042FEBA36BF01F00166A180E389E +:1017A000C0E04958201D1AD8E068012F1AD84968AE +:1017B000493C1AD8F01F00132FCDC008303B0A9CBB +:1017C000F01F001248980A9CF10900882FF9F1597E +:1017D0000088F109007E2FF9F159007EC0280A9C8B +:1017E000F01F000BC1D80000000080D480011E2C27 +:1017F0008000CDD48003B19C8003B11C80039D9CEC +:10180000800094C48003B21C800118FC8000D13C8D +:10181000F10C0014E60C1900FE91FF5FC2DB2FDD16 +:10182000D8320000D431189316921494324B300AF7 +:10183000301CF01F00241897C43098593238F00932 +:101840001900E08B000F4A08201D1AD8E068012E0D +:101850001AD849E849EC1AD8F01F001E2FCDC0084D +:101860007816661531CAAC94AC823004ACC4ACD4E2 +:10187000ACE4ACF4661B781C2F8CF01F00170C9C9A +:10188000ACA4ACB48EDBF01F00155C7CACBCA98CA6 +:10189000ACAC201D492C30161AD60898F906006009 +:1018A000EACAFFF4E06900FF089B2FF6F9560060D2 +:1018B0000E9CF01F000C0E9CF01F000B2FEDD83279 +:1018C0008000D3188003B2308003B27880039D9CDF +:1018D000800094C48002E73680011F4A000080D453 +:1018E000800122948000D13CD401F5DBC00830BBDC +:1018F000F01F0002D802000080011824D401F5DB9B +:10190000C008303BF01F0002D802000080011824FC +:10191000D4314C62E50800622FF81694E558006255 +:10192000781618970D85EBD5C004A365EA0311005E +:101930005C83069BF01F003EE08101788E493038C1 +:10194000F0091900E08801726E1811893088F009D9 +:101950001800E081015DED380010ED310011B1613A +:10196000E3E81181ED380012E3E81081ED3800134F +:10197000089BF1E11001ECCCFFF0F01F002EC071CC +:10198000E611F000FC18E0001031C0914A780E9C7E +:10199000F10900742FF9F1590074C4498E49307867 +:1019A000F0091900E08801420E9CF01F00235C8CB6 +:1019B000C0A00E9CF01F0021E50800682FF8E55834 +:1019C0000068D832330B0E9CF01F0019C6E00A9B4A +:1019D0000E9CF01F0017189AC0E04998201D1AD8D5 +:1019E000E06800981AD84978497C1AD8F01F001787 +:1019F0002FCDC0088ECB302CF01F00151892E08040 +:101A0000011F98D9EAC8FFF81039C25248C8201DF2 +:101A10001AD8E06800A21AD848E848BC1AD8F01FC3 +:101A2000000B2FCDC0080000000080D48000CDD472 +:101A30008001255880011FAC8000D13C8003B2306A +:101A40008003B2A480039D9C800094C48000D318BE +:101A50008003B2D80E9BF01F00445C5CC0E04C38A1 +:101A6000201D1AD8E06800A51AD84C184C1C1AD8AA +:101A7000F01F00412FCDC008069B6416049CF01F88 +:101A8000003FC0E04B98201D1AD8E06800AB1AD880 +:101A90004BB84B8C1AD8F01F00382FCDC0080E9CC5 +:101AA0000497F01F0038C1383D0B0E9CF01F003327 +:101AB000C0E04AE8201D1AD8E06800B51AD84B08E3 +:101AC0004ACC1AD8F01F002C2FCDC008ED3A000CDC +:101AD000ED39000DB169F3EA1189ED3A000EED3BE5 +:101AE0000010F3EA1089ED3A000FF5E91009ED3A1C +:101AF0000011B16AF5EB118AED3B0012F5EB108A8B +:101B0000ED3B0013F7EA100AF40B16186E18ED6A95 +:101B1000000FED6B000CF7DAC208F5DAC108ED6AC8 +:101B2000000EF20A1618ED690013ED6A0010ED6B55 +:101B3000000DF5D9C208F3D9C108ED6A0011ED69AD +:101B40000012300911AAB08911B9F3EA1089FE7A9E +:101B5000F7FE5C89F4091900E0880016F2C9F7FF66 +:101B6000C14800008000CF988003B2308003B310DA +:101B700080039D9C800094C48000CDD48003B33842 +:101B80008000D13CF2C9F8005C79B0B9A989B0A94C +:101B9000ED380009E818FF00ED680009A988ED6834 +:101BA00000083008314BED68000BED68000A0C9C12 +:101BB000F01F00284A885C7CED6C000BA98CED6C52 +:101BC000000AF10900602FF90A9BF15900600E9C90 +:101BD000F01F00221898C0E04A18201D1AD8E068AB +:101BE00000D71AD849F84A0C1AD8F01F00202FCD78 +:101BF000C00830191AD4189A1AD9ECCBFFF4E0694E +:101C000000FF0E9CF01F001A2FEDC0B8E508007011 +:101C10002FF8E5580070E50800662FF8E5580066D3 +:101C20000E9CF01F0014D8320E9CF01F001248A822 +:101C3000F109006A2FF9F159006AD8320E9CF01FA1 +:101C4000000D4858F10900742FF9F1590074D83289 +:101C500080011F4A000080D48000CDD48003B230C0 +:101C60008003B36C80039D9C800094C48001206439 +:101C70008000D13CD431205D30951988FAC9FFF03D +:101C8000FACEFFFC5009330231033056F0C9003060 +:101C9000EA091800E08B00BAE4081800C03030A749 +:101CA000C1582FFC35891988F20818005F0A378956 +:101CB000F20818005F09F5E91009F9B70008F7BC48 +:101CC00001FFF9B70110F9F81800F8CAFFFF300951 +:101CD0003191F2070244F0C000301004F4CC00014E +:101CE000EA001800E08B0005E8C90030C1E80E9456 +:101CF000E6071800C1D1F0C400615C54EC04180080 +:101D0000E088000EF0C00041EC001800E08B0011EC +:101D1000E2041800E0880004341CC028361C2F6838 +:101D2000F00C010CF9E9104915882FFACD3B32EA85 +:101D3000F4081800C0814008103EC6701CA92FFC92 +:101D40001988CA5B5808C28030CAF40818005F1CA2 +:101D5000320AF40818005F1A146C300AF40C1800E8 +:101D6000C1B030DCF80818005F1730ACF808180074 +:101D70005F1CEFEC000CF40C1800C0E030BC309796 +:101D8000F80818005F1CEE0818005F18F9E8000852 +:101D9000F4081800C3A1FAC8FFFC101EA34E2FFEC2 +:101DA000582EC0B0E0890005580EC2F0C298583EC7 +:101DB000C0F0584EC251C168E064FFFFEA1400FF52 +:101DC0000839E08B00234018F3E81189C198E049F5 +:101DD000FFFFE08B001B4018402AB968F1EA1108A8 +:101DE000C0D8E04900FFE08B0011402A4018B968D4 +:101DF000F1EA1108403AF1EA1088F1E91009580BAC +:101E0000F7F91A00301CC028300C2FBDD832D70388 +:101E1000D401202DFACBFFFCF01F0004F9BC00FF19 +:101E2000FBFC10012FEDD80280011C74D431202D51 +:101E3000300630110C9EC4A898557812E7D5B01022 +:101E4000049430075008C0B8E92800000990202306 +:101E5000E1E810805C835C702FE40007E203190066 +:101E6000FE9BFFF40A944008E214FFFEE7D5C00190 +:101E700008023000E0031900C0400584A964080787 +:101E8000E9D7C010B187E80700070E94E0140000FE +:101E9000C060E9D7C010B187E80700075C77EBD5D1 +:101EA000C001EE0E000EEFDEC010B18EEE0E000E81 +:101EB0005805C0B0EFDEC108EC061101A96E5C56F2 +:101EC000FDDEC010EFEE100E780C580CCB615806FA +:101ED000C080F9DEC108A96EFDDEC010F9EE100E5B +:101EE00017B715BC17851796B166EDE5118617ABC8 +:101EF0001585EDEB108B5C781596EFEB100B15AAA2 +:101F0000EFDBC010B166B18BEDE511860E0BEDEA8B +:101F1000108AF9EA100AF40C1610F5DAC010F60A65 +:101F2000000A180AF4090009F2080008F00E000E71 +:101F3000F1DEC010B18EF00E000EF9DEC010B18ED1 +:101F40001C0C5CDC5C8C2FEDD832D4213008189945 +:101F5000F5DBB010301EC0B8F32600001397202A1E +:101F6000EFE610875C8A5C772FE90E08FC0A1900FF +:101F7000FE9BFFF41699E219FFFE120CEDBB000068 +:101F8000C0411989A9691208F3D8C010B188F208B4 +:101F900000081099E0190000C060F3D8C010B188A3 +:101FA000F20800085CD8F9D8B010D822D431300A31 +:101FB000301414981495C488985B7816EFDBB01031 +:101FC0000C9E3009C0B8FD2200001D932027E7E2D7 +:101FD00010835C875C732FEE06090E93E8071900E7 +:101FE000FE9BFFF3169EE21EFFFE1C06FDDBC001FA +:101FF000EA0E1900C0400D8EA96E1C09FDD9C01053 +:10200000B189FC090009129EE01E0000C060FDD9E4 +:10201000C010B189FC0900095C79F7DBC001F20846 +:102020000008F3D8C010B188F2080008580BC0B0FF +:10203000F3D8C108F40A1101A9685C5AF1D8C0109C +:10204000F3E81008780C580CCB81580AC080F3D8FC +:10205000C108A968F1D8C010F3E810085CD8F9D815 +:10206000B010D832D431201DFAC4FFD8169712937D +:102070001092681518966801580AE0800091500A7D +:10208000314BF01F0055400AC0A04D48E06C00FEE7 +:10209000F109005C2FF9F159005CCC286C148C59C3 +:1020A0003138F0091900E08B000F4CD8201D1AD8E8 +:1020B000E068022C1AD84CB84CBC1AD8F01F004B60 +:1020C0002FCDC0085C53E3E310815C71E961000926 +:1020D000A981E9610008158B1598B168F1EB1188A9 +:1020E00015ABF1EB108815BBF7E81008F00B1618CC +:1020F000E9680013E96B0010F7D8C208F1D8C108ED +:10210000E96B0011E9680012E81245005C72A892C0 +:10211000E4031608A883ED380008A8A8ED380009E4 +:102120004B39A8FCA8B8A8EC9208F7D8C010A8DBD7 +:10213000A98BA8CB2FF8B2085807C0D00F8B0FB9C6 +:102140000F98B168F1EB11880FABF1EB1088F3E851 +:102150001008C051EAC8FFFCEBF81001F00916188E +:10216000E968000FE969000CF3D8C208F1D8C1088A +:10217000E969000DE968000E3008E968000BE968BC +:10218000000A500A314B089CF01F001A5C7CE96C75 +:10219000000BA98CE96C000A400AC038781A2F0A93 +:1021A00048E8F10900482FF9F1590048158B1599B5 +:1021B000B169F3EB118915AB6A18F3EB108915BB04 +:1021C000F7E910091039C1910C9B0A9CF01F000A15 +:1021D000C26800008000CDD4000080D48003B3909A +:1021E0008003B3D880039D9C800094C40000734892 +:1021F00080011F4A8000CAF8EB08002C5808C0B0C4 +:102200008C49F0091900E08800070A9B0C9CF01F1C +:102210000006C0580C9B0A9C6A585D185C5C2FFD38 +:10222000D8320000800125A0D42149781896700783 +:10223000C1680E9CF01F0015C1100D8B0D98B16880 +:10224000F1EB11880DAB6E1AF1EB10886E290DBB06 +:10225000F7E8100814581268C1306E075807CEA16D +:1022600048B66C0C580CC040F01F0008C08148985C +:10227000F10900562FF9F1590056C0286C070E9C41 +:10228000D8220000000080CC8000CAE4000080D08A +:10229000000080D4D421204D1897503B149C502A24 +:1022A000501950084096F01F000D403B402A40193D +:1022B0004008C0A148A8E06C00FCF10900562FF9C5 +:1022C000F1590056C0881ADC0E9C1AD6F01F000582 +:1022D0002FED5C5C2FCDD82280012228000080D415 +:1022E00080012064D4314C05EB08004A2FF87817A0 +:1022F000EB58004A0F980F831694F1E31083189659 +:10230000E609160C3048F0091900C090F01F00379C +:10231000EB08005C2FF8EB58005CC2980FB8E7D3CD +:10232000C1040FA2A363F1E2108298585C82E60810 +:102330001900C0539848E4081900C0B20C9CF01F63 +:10234000002B4A98F10900522FF9F1590052C86840 +:10235000069B0E9CF01F00265C8CC0F00C9CF01FAE +:102360000023EB0800502FF8EB580050EB08004E0C +:102370002FF8EB58004ECD48F7D2C0100C9CEEC0A1 +:10238000FFF0F01F001C0895301249B10A9CF01FA5 +:10239000001BC1D0EAC8FFFCC1A06A185808C17070 +:1023A000EF3A0010EF390011B169F3EA1189EF3A01 +:1023B0000012F3EA1089EF3A0013F5E91009103919 +:1023C000C2A00A9B009CF01F000EC2515802E3F508 +:1023D0001000EBF5000030020835EBF50000580561 +:1023E000CD61C9F8000080D48000D13C80011F4A33 +:1023F0008000D210000080CC8000CAE48001255803 +:10240000EE03000307B807A9F1E910893448F00981 +:102410001900C2A0EF39000CEF38000DB168F1E9E6 +:102420001188EF39000EF1E91088EF39000FF3E859 +:102430001008C1B0089BEECCFFF4F01F003DC0A116 +:10244000EF38000CFC19E000B968E618F00012380B +:10245000C0C10C9CF01F00374B78F109004E2FF9DA +:10246000F159004EC5D808955805C0510C9CF01F75 +:102470000031C5680FE90FF8F1E91088F1D8C00EF6 +:10248000C0700C9CF01F002D1896C4A078174AC885 +:1024900091044AC8089B91070C9CF01F002BC3B104 +:1024A000EF3800095868C0B05918C0405818C11119 +:1024B000C0B8089B0C9CF01F0025C2D8089B0C9C40 +:1024C000F01F0023C288089B0C9CF01F0022C2381A +:1024D000089BEECCFFF0F01F0016C0F1EF380010A3 +:1024E000FC19E000B968E618F0001238C0608D17DA +:1024F000302B0C9CF01F00180C9CF01F000E48E8BD +:10250000F10900582FF9F1590058F109004E2FF93F +:10251000F159004E48A93008930848A99308D83AC1 +:10252000EF3800095918FE91FF77C6BB8001255886 +:102530008000D13C000080D4800129BC0000822CA6 +:10254000000082308000D588800115508000F37C27 +:1025500080011910800118FC19B9198A1998B168FD +:10256000F1EA118819AAF1EA1088F3E81008F0C915 +:1025700000015BD9E08800035EFFF7390035EDB953 +:102580000001C0E1761A1438C0B07629105A126AD8 +:10259000C0715CD9F3E8000812385F0C5EFC5EFD88 +:1025A000D431209D503B506A781B403AF519002CDD +:1025B000F2C80013502B5078214917EA17F8F1EAB6 +:1025C00010885C88109BF1D8C00DE21B2000984356 +:1025D000505B2143308B5018F20B0C0A1897F3DA3A +:1025E000B0105C8312985049A37830025C88314067 +:1025F0005088C938401B405AF1DBC00D14485008C0 +:10260000E3D3B010F1D3C01040791039E08900064F +:10261000400B4081ADBB500B300A314B302CF01FCA +:1026200000421894C3708E58313AF4081900E08BB8 +:10263000000F4BE8201D1AD8E06802C31AD84BC817 +:102640004BCC1AD8F01F003C2FCDC008314A402B8C +:10265000781CF01F003A6E19F1D0C010F208000883 +:102660006816EBD1B0108F188E58F0000100AE50F4 +:10267000C2188E52EA021900EA0217205C82C19049 +:10268000302A300B303CF01F0028C071089CF01F2E +:10269000002CE06C00FFC4586E18B842B852189B6A +:1026A00099180415089C5C85F01F00265805C02069 +:1026B0006E075805CDF1ED65000B40085C78ACF86D +:1026C000A988ACE8E2C8FFEC5C78ACB8A988314BCB +:1026D000ACA8ED65000A0C9CF01F001B5C7CED6C47 +:1026E000000BA98CED6C000A4039406A7258089BB7 +:1026F000129C5D18495BF70800302FF8089CF758CA +:102700000030F01F000F40180213404AE1D2B01011 +:1027100014085C835C8850185803FE91FF6D069C7A +:102720002F7DD8328000D3188003B4108003B45CAE +:1027300080039D9C800094C48002E7368000D13CD9 +:102740008000CD3480011F4A000080D4D40148F8B5 +:1027500070091839C04178099109C128580BC0E1A6 +:1027600048B8201D1AD8E06801341AD8489848ACF7 +:102770001AD8F01F000A2FCDC00878089708189BB8 +:10278000305CF01F0007D8020000734C8003B410C7 +:102790008003B47C80039D9C800094C48000C97435 +:1027A000D43118971696183BC0E14BC8201D1AD893 +:1027B000E06800A41AD84BA84BAC1AD8F01F003A16 +:1027C0002FCDC008580BC11076081838C0E04B3820 +:1027D000201D1AD8E06800A61AD84B484B1C1AD8FE +:1027E000F01F00312FCDC0086E156A1811CA11D91B +:1027F000F3EA1089C0303004C1D8118A1199109CB5 +:10280000B169F3EA118911AA11B8F3EA10891248E3 +:10281000314A8F18EECBFFF8F01F0025301B0A9CC1 +:10282000F01F00240A9CF01F002418940A9CF01F3B +:1028300000236E15C1486A1811B9118A119311A8A5 +:10284000B163E7EA1183E7E81083F3E31003F01FB5 +:10285000001A18040A9C0695F01F00180A9C5805D7 +:10286000CEB10C9B0E9CF01F001649689009F5D95B +:10287000C010083AC0E44898201D1AD8E06800C784 +:102880001AD84918487C1AD8F01F00072FCDC00865 +:102890000819089CB009D8328003B4108003B4989A +:1028A00080039D9C800094C48003B4A48002E7361A +:1028B000800118E88000CD0C8000D13C8001274CBD +:1028C000000073508003B4B8D431300618971692C4 +:1028D0004AB30C94300566080A9B0A9CC3E8EF3A99 +:1028E000000CEF39000DB169F3EA1189EF3A000EDF +:1028F000F3EA1089EF3A000FF5E91009705A123A1D +:10290000C1B1EF3A0010EF390011B169F3EA118952 +:10291000EF3A0012F3EA1089EF3A0013F5E91009D3 +:10292000706A123AC0910FCA0FD9F3EA1089906AFF +:10293000F20A1900C0D02FF5580CC090F13A001FD0 +:10294000F939001FF20A1800E08B0003109C70098F +:102950005809F00B171012985808CC21580CC04099 +:10296000F01F0008180658155F9804365F59F3E801 +:102970000008E8081800CAF10C9CD8320000734C1B +:10298000800127A0D42148C83007700CC108F9384D +:10299000001F7806F0C900015808C050F969001FEF +:1029A0001897C0480E9BF01F00050C9C580CCF01D7 +:1029B000D82200000000734C800127A0D431201DD4 +:1029C0004CD8F10900322FF9F159003278161895D8 +:1029D0000D835C83F3D3C004A3695949C080F10916 +:1029E00000442FF9F1590044E08F02570DF80DE132 +:1029F000F1E110810DB80DA24C07F1E21082F01F39 +:102A000000408E885C815C821894F808000858A801 +:102A1000E08A000D189B0C9CF01F003AC5708E8850 +:102A2000E808000858A8E08900524B783009700780 +:102A30005009C3D8ED39000CED38000DB168F1E94B +:102A40001188ED39000EF1E91088ED39000FF3E837 +:102A500010086E591039C291ED390010ED3800118F +:102A6000B168F1E91188ED390012F1E91088ED390A +:102A70000013F3E810086E691039C1710DC90DD843 +:102A8000F1E910888E69F0091900C0F149A8F1092F +:102A900000462FF9F15900460DE90DF8F1E91088CB +:102AA000F1D8C00DC360C3F850076E075807CC318A +:102AB000E08F021E089B0C9CF01F0012083CC065B2 +:102AC000305CF01F00121897C09148B8F109003C23 +:102AD0002FF9F159003CE08F01E0320A300B0E9CD7 +:102AE000F01F000B30394888EF69001F70098F090B +:102AF0009107C138000080D4000073508000CD0CD5 +:102B0000800128C80000734C8000C9D48002E8BC52 +:102B10008EF8F1D8C00DC070314A0C9BEECCFFF896 +:102B2000F01F004F4CF89009F20400045C84B004DC +:102B30000DE8A598EDB80000C120EF38001EE3D1E4 +:102B4000C00DE7D3C004A371E60310FCE20200024B +:102B5000A1A80602EF68001EEF52001C6A1811BB04 +:102B6000300A11AEF7EE108E118BB09AB0AAB0BA3F +:102B7000B08A1499F5DBC00411FBF40A10FC11ECC7 +:102B8000F7EC108CF9DCB00DA37CF7DCC010B0DBE7 +:102B9000A98B180EB0CB140E10935C8E3016F5DE98 +:102BA000C010B0FAA98AB0EA6E11029BC548761A25 +:102BB00015C015D2E5E010825C82E40C1900C292C7 +:102BC000F6021618B0BBB082E5DBC208F7DBC1081D +:102BD000B092B0AB5809E080008213E213FBF7E239 +:102BE000108BF60C1900E08300FF15DB15CAF7EA1D +:102BF000108AF40E1900E08B00F7EA0A1618B2B535 +:102C0000B28AF5D5C208EBD5C108B29AB2A5C6788A +:102C1000E40C1900E08000E815E015FBF7E0108BEC +:102C2000F60C1900E08300E05809C09013FB13E98B +:102C3000F7E91089E4091900F9B601001582159B1E +:102C40001499B16BF7E2118B15A215BAF7E2108B4C +:102C5000F5EB100B580BCAC1C52900008002E736FE +:102C60000000735013EB13FA11CCF5EB108A11DB53 +:102C7000F7EC108BF60A1900E088000F4BC8201DF6 +:102C80001AD8E068018E1AD84BA84BBC1AD8F01F8E +:102C9000003B2FCDC008EA0B1618B28BF7D5C2083F +:102CA000B2B5B29BEBD5C108B2A511CB11D9F3EBEC +:102CB0001089F20A1900F9B60100C1185801C0E0E4 +:102CC0004AB8201D1AD8E06801971AD84AC84AACF9 +:102CD0001AD8F01F002A2FCDC0088F15EF39001E1B +:102CE000EDB90000E08100E45806E08000E16E19D3 +:102CF000721A15CB15D9F3EB1089E08100D9118B2D +:102D000011951099B165EBEB118511AB11B8EBEB97 +:102D10001085F1E51005C1A807F86A1907EB13CC77 +:102D2000F1EB108B13D8F1EC1088F00B1900E08157 +:102D300000BF13881395B165EBE8118513A81293B2 +:102D4000EBE8108513B8F1E510055805CE61123A8D +:102D5000C1A14878201D1AD8E06801B91AD848984E +:102D6000485C1AD8F01F00052FCDC0088003B410AE +:102D70008003B4D480039D9C800094C48003B4F489 +:102D80008003B52C138A1398B168F1EA118813AA4D +:102D9000F1EA108813BAF5E81008C0E04C68201D6D +:102DA0001AD8E06801BB1AD84C484C5C1AD8F01FFE +:102DB00000452FCDC00813F813E9F1E91088EF0999 +:102DC000001C5C88F0091900C1704BB8201D1AD88E +:102DD000E06801BD1AD84BC84B9C1AD8F01F0039C7 +:102DE0002FCDC0080A9CF01F00394B9818143006EC +:102DF000B0040A9CC5982EC8EF58001C6E187016B7 +:102E00000D880D94B164E9E811840DA8E9E81084F7 +:102E10000DB8314AF1E41004EECBFFF80C9CF01F22 +:102E2000002DEF38001CACA8EF38001D0C9CED65A0 +:102E3000000BACB8ACE5ACF5ED65000A314BF01F0A +:102E400000265C7CED6C000BA98CED6C000A6E1604 +:102E5000C1586815089C3ECBF01F0020089B0C9CB5 +:102E6000F01F001F0B890BB80B94B164E9E91184C2 +:102E70000BA9E9E91084F1E410045804CEB10E9CCA +:102E8000400BF01F00180C9C49178E05F01F000F17 +:102E90001815AE05C0D849480A9CF109003630061D +:102EA0002FF9F1590036F01F0011C02830060C9C94 +:102EB0002FFDD8328003B4108003B53C80039D9C65 +:102EC000800094C48003B5608000CD0C0000735076 +:102ED0008002E73680011F4A8000CDD48000CD34C7 +:102EE0008001274C000080D48000D13C305CF01F72 +:102EF00000061897FE91FDF3FE9FFDDE5809FE9136 +:102F0000FEB3CDDA8000C9D4D4211898F937002E49 +:102F1000761E306CF8071800C0E04948201D1AD80A +:102F2000E06801B41AD84928492C1AD8F01F0012B9 +:102F30002FCDC008306C201C5C5CF20C0706FC0C2A +:102F40000007EF66000EF40C0706EF660014580C3D +:102F5000CF313089FD6C001BFD69001A109C706830 +:102F60005D185C5CD82200008003B5948003B5DC5A +:102F700080039D9C800094C4D4211897580CC0E114 +:102F800049D8201D1AD8E06800941AD849B849CC0D +:102F90001AD8F01F001C2FCDC00878185808C0E1BF +:102FA0004958201D1AD8E06800951AD84968494C3C +:102FB0001AD8F01F00142FCDC0086E186E06109C92 +:102FC0005808C0E148C8201D1AD8E06800991AD8EE +:102FD00048E848BC1AD8F01F000B2FCDC008F01FDE +:102FE000000C0E9B306C0C97F01F000A5806CE6147 +:102FF000D82200008003B5948003B62080039D9CF6 +:10300000800094C48003B62C8003B63C8000D13C81 +:103010008000C974D431201D500B1897580CC0C0C3 +:103020004D084D19118CF80815031818F2080028DE +:1030300070495829C0D030AA30094CBE129C1C924D +:10304000129B2ECE1298149314911490C1980F8A4B +:103050000F99B169F3EA11890FAA7018F3EA108980 +:103060000FBAF5E910091039CE714C08F109002E9C +:103070002FF9F159002ECE480C990A9C089B30A6D6 +:10308000EC031800C0A1FCF6FFFC5806C0611296C4 +:10309000189516941093C498FCF6FFFC5816C2417C +:1030A0005807C0F00F860F95B165EBE611850FA6A6 +:1030B000EBE610850FB6EDE5100564160C35C26021 +:1030C00064051D865805C080F2061800C2B3189525 +:1030D0001694109AC2A80C94F6061800C2331296E1 +:1030E00018951090C2285826C1D15807C1300F86B4 +:1030F0000F95B165EBE611850FA6EBE610850FB6CF +:10310000EDE5100564160C35C0514969109CB28874 +:10311000C9781D85F8051800C053129616941091B1 +:10312000C0481296189516942FF82E4E5C582E42D1 +:1031300030A9F2081800CA11F2031800C061400655 +:10314000EDB60000E081007B4005E2150002E08161 +:1031500000763098F0031800E089000A5C53C498A8 +:103160000000735200007354000080D430A8F001B6 +:103170001800C180E7D1C0084B38E60915030619CD +:10318000F00903285808C2304B08201D1AD8E068FF +:1031900001761AD84AE84AFC1AD8F01F002F2FCD22 +:1031A000C008F0001800C040E7D0C008C108E20A1B +:1031B0001800C4404A48E7DAC008E60615030616B8 +:1031C000F00600266C0CF01F00258D053098F003EA +:1031D0001800E088000F49D8201D1AD8E068018C3B +:1031E0001AD849F849BC1AD8F01F001B2FCDC008C7 +:1031F0004959E6081503300A0618F2080028F0C9F4 +:10320000FFF0930A5807C0D00F8B0FBA0F99B1691E +:10321000F3EB11890FABF3EB1089F5E91009911964 +:103220004899E60815030618F20800282F08300907 +:10323000069CB0C948B8B083C038E06C00FF2FFDD1 +:10324000D8320000000073548003B5948003B64C5C +:1032500080039D9C800094C480012F788003B66415 +:1032600000007352D431494730050E963EF42EC704 +:10327000ECC3FED40F882FF85C58AE88EEF9FFFC43 +:103280005829C061E8081800E08B0009C0F85819F7 +:10329000C0D1F2081800E088000A6C0C580CC0403D +:1032A000F01F00068D05EF45FFFC2E472E46063722 +:1032B000CE21D8320000735480012F78D431306889 +:1032C0001293189616951497F939002EF0091800E4 +:1032D000C0E04B78201D1AD8E06801DA1AD84B58A4 +:1032E0004B5C1AD8F01F00352FCDC008580BC5C055 +:1032F00017891798B168F1E9118817A9F1E91088C1 +:1033000017B9F3E81008C500189B0A9CF01F002CA1 +:103310001894C4A10B88FC19E000B968E618F00005 +:103320001238C420069B0A9CF01F00265C5CE80C47 +:103330001800C3C55C6C4A49F8081503302AF00C24 +:10334000010CF20C00289166F0C9FFF0930A0FDA25 +:10335000F16A000D0FCAF16A000C0FBAF16A000B96 +:103360000FAAF16A000A0F9A1095F16A0009ECC3DE +:10337000FFD10F8AB2C4F16A0008C0F87009701456 +:103380008B09F01F00120E99069A089B0C9CF01FE7 +:103390000010089CF01F000F6A08306C109B580842 +:1033A000CEE1109CD832E06C00F6D8328003B594A0 +:1033B0008003B67880039D9C800094C480012558CA +:1033C00080013014000073548000C97480012F08FC +:1033D0008000D13CD421189E580CC0E14958201DD2 +:1033E0001AD8E068024A1AD84938494C1AD8F01F4E +:1033F00000142FCDC008761AF4C8FFE4F137000F8F +:10340000F136000CF139000DF138000E782BB1695E +:10341000F3E61189F3E810897818EFE910091059DB +:103420001669C061F4CBFFD82ECAF01F0006D8225F +:103430008003B5948003A13880039D9C800094C4D0 +:10344000800132BCD431202D189616911495580C59 +:10345000C0E14CA8201D1AD8E068027F1AD84C8819 +:103460004C8C1AD8F01F00482FCDC00894593378DF +:10347000F0091900E08B000A4C48149CF109002265 +:103480002FF9F1590022C3087414E8C7FFE40F981C +:103490000F89F1E910893018F0091900C1E10FD83E +:1034A0000FC9F1E91089E0680604F0091900C1515B +:1034B0000FB80FA9F1E91089E0680800F0091900B8 +:1034C000C0C1E938001BE939001AF1E91089E06848 +:1034D0000806F0091900C0E04AC80A9CF109002852 +:1034E0002FF9F1590028F109001E2FF9F159001E9A +:1034F000CA184A68F109001A2FF9E8C3FFD6F15932 +:10350000001AFAC2FFFC304A069B049CF01F002000 +:10351000EF380018EF390019B169F3E81189EF3875 +:10352000001AF3E81089EF38001BF1E910096C1854 +:103530005808C0C01039C0A1049B3019E8CAFFDC8C +:103540000C9CF01F00143018C0A83009EECAFFF818 +:10355000FACBFFFC0C9CF01F000F30080FEA0FF9AC +:10356000F3EA1089301AF4091900C1503028F00923 +:103570001900C591C52800008003B5948003A138C7 +:1035800080039D9C800094C4000080D48002E736B4 +:10359000800132BC5808C4D03008AEE83028304A28 +:1035A000AEF8EECBFFF2EECCFFE8F01F0025304A7C +:1035B000069CEC0A000BF01F0022ED39002E30684B +:1035C000F0091800C0E049F8201D1AD8E06802D9B7 +:1035D0001AD849D849DC1AD8F01F001D2FCDC008D1 +:1035E000306820185C58EE080009F33B0008F36BC4 +:1035F0000012E808000AF56B000EE208070BF36BF7 +:103600000008E2080709F56900145808CEB10C9CBF +:103610006C680A9B5D18C0D80C9CFACBFFFCF01FAD +:10362000000DC07848C8F109002C2FF9F159002C81 +:103630000A9CF01F000A2FEDD83200008002E73606 +:103640008003B5948003B5DC80039D9C800094C406 +:103650008000B3B4000080D48000D13CD42178191C +:10366000F338001BF339001A1697F1E91088189601 +:10367000E0690800F2081900C070E0690806F20865 +:103680001900C231C1C8189B0E9CF01F00173E4B99 +:103690000C9CF01F0016C0E04958201D1AD8E068A5 +:1036A00004A41AD84938494C1AD8F01F00142FCD59 +:1036B000C0080E9B0C9CF01F0012C148189A169C63 +:1036C0002D1BF01F0010C0E848F8F10900282FF961 +:1036D000F1590028F109001E2FF9F159001EF01FC1 +:1036E000000BD82A800133D48000CDD48003B59458 +:1036F0008003B36C80039D9C800094C4800122E40D +:1037000080013444000080D48000D13CD431300AA0 +:1037100018941691303C338BF01F0042E8C8FFD15B +:103720001895580CC0A14C08E06700FFF10900246F +:103730002FF9F1590024C738985A3379F20A190041 +:10374000E08B000F4B98201D1AD8E06804311AD87E +:103750004B784B8C1AD8F01F00382FCDC008300999 +:103760007813E6C7FFE4AEE93019AEF93069E93AFB +:10377000002EF20A1800C0E04AC8201D1AD8E068DE +:1037800004391AD84AD84ABC1AD8F01F002B2FCDBA +:10379000C00830664AAB4ABA20165C56F006070CE1 +:1037A000EE060009F36C0008F606070CF36C001235 +:1037B000F406070CE6060009F36C000EF006070C91 +:1037C000F36C00145806CE913042EECCFFF2E802C2 +:1037D000000B049AF01F001C049A029BEECCFFE839 +:1037E000F01F00193069AED2AEC9AEB6AE863088D1 +:1037F000301AAEA8AE9AE769001BE768001A089C69 +:1038000068680A9B5D184888F10900182FF9EFDCF9 +:10381000C008F15900180A9CF01F000C0E9CD83209 +:103820008000D318000080D48003B5948003B6A034 +:1038300080039D9C800094C48003B5DC8003B71690 +:103840008003B58D8002E7368000D13CD4211694E8 +:103850001896189B1497089CF01F00541895E08147 +:1038600000DF09890998B168F1E9118809A9F1E92E +:10387000108809B9FC1AE000F3E810081099E6195D +:10388000F0001439E08000CC5808E08000C9301BFB +:10389000089CF01F00475C5CEA0C1800C0545807F5 +:1038A000E08100CBCC184C39EBDCB008EA081503FA +:1038B0000A18F20800282F0870095809F9B9000100 +:1038C000F1F90A004BB9EA0815030A18F2080028B2 +:1038D0007048F0C900015819E088000F4B68201D9E +:1038E0001AD8E06803A51AD84B484B5C1AD8F01FC9 +:1038F00000352FCDC00858185F0858075F09F3E856 +:103900001008C041E06400FFC078089B0C9CF01FC9 +:10391000002EE9DCC0085807E08000854A5AEA0911 +:1039200015030A19A369F409000870485828C0B1A2 +:103930002F890E9BF40900090C9CECCAFFD1F01FE3 +:103940000023C6B85818C6E110990E98905B904AAB +:10395000F40B1900C111700A580AC0E04968201D13 +:103960001AD8E06803C41AD84998495C1AD8F01FDD +:1039700000152FCDC008F13A000CF20A1800C05112 +:1039800070085808CE41C51890CB300A303CF01F63 +:1039900000111896C4F00E9BF01F000F5C5CC1F084 +:1039A0000C9CF01F000EC468800125588001301463 +:1039B000000073548003B5948003B6D480039D9CAB +:1039C000800094C48001370C80012F088003B6FC6E +:1039D0008000D3188000CF988000D13C306CF01F5D +:1039E000001AC170300899169908EA081503F00505 +:1039F00001054968F00500256A045804C07008985C +:103A000068045804CFD1910CC0288B0C089CD82294 +:103A10000C9CF01F000F089C5C5CD822E06C00F648 +:103A2000D822089C5C5CD8220E960E9CF01F0009E0 +:103A3000CD6B089C5C5C4888F10900242FF9F15992 +:103A40000024D8228000C9D4000073548000D13CE7 +:103A50008000CD1E000080D4D421202D169618970A +:103A6000149531CB0C9CF01F0027C0804A68E06C95 +:103A700000FE90592FF9B059C4180E9B0A9CF01FF4 +:103A80000023C3410B890B98B168F1E911880BA998 +:103A9000F1E910880BB9FC1AE000F3E8100810995E +:103AA000E619F0001439C0F13019BAA935E9BAC9DC +:103AB000F3D8C207BAF8BAD9A988BABCBAE8FAC921 +:103AC000FFFEC1586E1912586E291268C0906E38E8 +:103AD0005808C041E06C00FCC118EEC5FFF40C9A18 +:103AE0000A9B0E9CF01F000AC08848A90C9B0E9CE4 +:103AF000EECAFFD1F01F00085C5C2FEDD822000059 +:103B00008000CDD4000080D4800125588001384C3D +:103B10008003B58D80012F0878983019B0895EFC3C +:103B2000D4217897EF380024EF390025F0091800E8 +:103B3000C021D82AEE080028201D701630086C1904 +:103B40008CCA8CDB20EA1AD620EBF2CCFFF2F01FF5 +:103B500000182FED587CC0F0581CC0310C95C138AE +:103B6000EF3800242FF8F1D8C0030C9CEF68002434 +:103B7000F01F0010E06C00F4D8228ADB6A1CF01FF2 +:103B8000000E6A055805CFA1EF3800242FF8F1D8B0 +:103B9000C0030C9CEF680024F01F00064878E06C1E +:103BA00000F290092FF9B009D82200008001933467 +:103BB0008000D13C80013F7C000080D4D421204D86 +:103BC0001896F01F002D5806C5306C955805C50095 +:103BD0000B885808C4D0E0680600300ABA68E06B69 +:103BE0000600303CF01F00251897C3F03008FACBD0 +:103BF000FFF4AA88781CF01F00229A6B580BC35060 +:103C00005C7BFAC8FFF2FAC9FFFCFACAFFF86E1C27 +:103C1000F01F001C586CC2606E18402B101B40181F +:103C20005C5B0E9C100B5C7BF01F001749789019B1 +:103C30002FF9B0196E19F338001BF339001AF1E9A6 +:103C40001088E0690800F2081900C060E069080601 +:103C5000F2081900C0716C480C9B0E9C5D185C5CEE +:103C6000C0400E9CF01F000A0C9CF01F000A2FCDD4 +:103C7000D822000080013FA08000D31880013F5867 +:103C8000800192DC8000D210000080D48000D13C02 +:103C900080013B20D4211897580CC0E149B8201D61 +:103CA0001AD8E06801491AD8499849AC1AD8F01FC7 +:103CB000001A2FCDC008499899983778F9680036CE +:103CC00036C8F9680037496899584968189B996857 +:103CD000495CF01F0016496CF01F00163628EF688B +:103CE00000353068EECCFFD1EF68002EF01F0012D7 +:103CF000581CC040E06C00F4D822E06805DC300CB1 +:103D0000EF58002CD82200008003B71C8003A13894 +:103D100080039D9C800094C40000746C80013A581C +:103D200080013D5880013B1880013E6880013D388C +:103D300080018F4480019128D40116985C7A189BE9 +:103D40002F29109C5C79F01F00045C7CF9BC00FFFB +:103D5000D80200008000CEC4D42131B918977898D9 +:103D6000965AF20A1900E08B0005E06C00F4D822A4 +:103D7000F1390025F13C0024F2CAFFFFF5DAC00357 +:103D8000183AC041E06C00F2D822F16A0025F0092F +:103D90000028169C911B3F26F01F00050E9CF01F6B +:103DA0000005EC0C1800CFB0D82A00008000CD1E12 +:103DB00080013B20D42130061897E9DBC01030A5E4 +:103DC000C138EE060708201D48BC1AD8F01F000BAA +:103DD0002FED5806C080EC050C085809C041488CEE +:103DE000F01F00062FF60836CED5486CF01F0003F2 +:103DF000D822000080037AF0800094C48003B76862 +:103E0000800384D448CD48D0E3B00001D55348C0E6 +:103E100048C10230C06248C2A505A1240230CFD3F8 +:103E200048A048B10230C06230023003A122023003 +:103E3000CFE3488F000100008003760000000008F7 +:103E4000000009B88003F480000009B800008CC8A5 +:103E500080008EDCD4013018F96800087808580812 +:103E6000C030781C5D18D802D4014869930C931BAC +:103E7000F33800085808C040129CF01F0003DA0A0B +:103E80000000749880013E54D421201D1895169688 +:103E90001494300B30CA49DCF01F001D300B49DC94 +:103EA000F01F001D300B49DCF01F001D497B49DC71 +:103EB000F01F001D1897581CC0400E9C2FFDD822E3 +:103EC000F01F001A1897581CCF910C9B0A9C49862A +:103ED0008D07F01F00181897581CC04030088D0837 +:103EE000CEDB30088D08F01F00141897581CCE61E7 +:103EF000FACBFFFD302CF01F0011F9B701FFFBF8E2 +:103F00000803E9F80A00CDAB00007498800091D056 +:103F100080013F8C80018F3080013F3C80019F6099 +:103F200080013E54800144588001440C0000749488 +:103F300080018F488001443080014110D401169CDB +:103F4000580BC041F01F0004D802300B301CF01F8A +:103F50000002D80280014110D4014879F3380008EA +:103F60005808C021DC0A3008F3680008F01F00037D +:103F7000DA0A00000000749880014284D4015C7B5E +:103F8000F01F0002DA0A00008001433CD401169CB5 +:103F9000F7DAC010F01F0002D80200008001433C95 +:103FA000EBCD40C0203DF01F00164969F3380008F2 +:103FB0005808C04072085808C0402FDDE3CD80C0CB +:103FC000E0680100FAC6FFF4E06C01000CE8F01FA5 +:103FD000000E0C9B1897F01F000D9A5B580BC0A0A9 +:103FE0005C7BFAC8FFF81A99FACAFFFC0E9CF01F16 +:103FF00000080E9CF01F0007CE1B0000800140A4AB +:10400000000074988000920080013F58800192DC8B +:10401000800091E8D40148583019701CF1690009FA +:10402000700A5D1AD8020000000074A8EBCD40CCE5 +:10403000206D49A6FAC7FFF46C2E8F2EECE200002B +:10404000EEE3000016961093FACEFFF0580CC22053 +:104050007C08FC1C8000F1EC100BF4081509BBB8BF +:10406000F1E611C812481648301C9D08F01F000CDC +:104070000E9C30CA1A9BF01F000BFB38000AA68862 +:10408000FB39000B300CA699F01F00052FADE3CDD6 +:1040900080CC7C0BCE3B00008003B774800075B4ED +:1040A00080007534EBCD4080201D4987EF38000833 +:1040B000EDB80000C071EF3900093008F0091800B0 +:1040C000C0402FFDE3CD808030091A98129B129CCE +:1040D000305AF01F000F3FF91B88F2081800CF205C +:1040E0001B98EDB80001CEE13008301C109B302940 +:1040F000E06A00F0F01F000630186E1CEF6800093F +:104100006E095D19CDFB0000000074A88001402CF1 +:10411000EBCD40C0201D301AF40C1800C1B0C08394 +:104120003028F00C1800C2602FFDE3CFC0C01A97F2 +:10413000300630091A98E06A00F1129B301CF01F1B +:1041400000161B98EC081800CF51300C2FFDE3CD62 +:1041500080C018961A9730191A98E06A00F1300B4F +:10416000129CF01F000D1B98EC081800CF51300C6A +:10417000CEEB48A8F1390008F9D9C001F7FA1E00C2 +:10418000F9BC0100F9B8005AF7F80E002FFDE3CD95 +:1041900080C000008001402C000074A8EBCD406876 +:1041A00048F516961893AA4B301CF01F000E0A9C77 +:1041B000310A300BF01F000C069BF5D6C010300CF6 +:1041C000F01F0009304A300B488CF01F0007300CFC +:1041D000F01F00040C9CE3CD80680000000002107A +:1041E000800075B4800075348003B780EBCD40400B +:1041F00020ED30083009FAE90018FAE90000FAE980 +:104200000008FAE9001049BBFAC6FFD4762A8D2AC5 +:10421000F6E80000301CECE90000F01F0017320A3D +:10422000300B1A9CF01F00150C9C30CAFACBFFE033 +:10423000F01F0012300CF01F00103019FB38002A5C +:10424000F2081800C0503FFC2F2DE3CD804048C835 +:10425000F1390008F9D9C001CF8030083039304A2F +:10426000109B301CF01F00072F2DE3CF8040000073 +:104270008003B784800075B480007534000074A892 +:104280008001402CD42130094A881695F169000933 +:104290001896320BF01F00268C085CC82FE8F7D860 +:1042A000B010AA0BEFDCB010F6C90007E06805F902 +:1042B000F0091900E08B00300D890D98F208180004 +:1042C000C220F6071900C182E0640200F9D7C010CD +:1042D0005C7B181BEC0C000CE04B0200E80B17B0E9 +:1042E0005C7BF01F00138A0B0E0CEFDCB010EE0BA2 +:1042F0001900FE9BFFED48F83009118AF20A1800F8 +:10430000C0D1D8220DA8F2081800CDC10DB8F2080E +:104310001800CD813008AA08D822F5DBC010486CFF +:104320000C9BF01F0006D822000074A88001419C5D +:10433000000074A48003B76C8001447CD4314A38F7 +:1043400018921695118A3009F20A1800C3615805AF +:10435000C33049F83004F0C0FFF4E0610200C22825 +:10436000E06602000C970C93301CA006F01F0019A9 +:10437000300B497C314AF01F0018E404000C0E9AFF +:10438000300BF01F0015304A300B494CF01F001263 +:10439000300CF01F0010EA0601080604EBD8B0103C +:1043A000C0B0E2051900FE9BFFDDEDD5B010EFD6E1 +:1043B000C0100E93CDABD832F5DBC010189B488CE3 +:1043C000F01F0008CC5B0000000074A4000001FC9A +:1043D000800075B4800075348003B7808003B770A7 +:1043E0008001447CD401201D3009301C1A98E06AF9 +:1043F00000F5129BF01F0004314CF01F00042FFD4C +:10440000D80200008001402C800075D2D401F01F3A +:104410000007F01F0007C03030CCD802F01F0003A7 +:10442000F01F0003CFA1DA0A800143E4800141ECD0 +:10443000D401314CF01F0006F01F0006C03030CC14 +:10444000D802301CF01F0004DA0A0000800075D288 +:10445000800141EC80007618D4014878910C911BC2 +:10446000F0CCFFF8F01F0005F9BC010CF9BC00010D +:10447000D8020000000074A8800076385EFCD703E4 +:10448000EBCD40F849C56A096A181039C2F08B0CA7 +:10449000EAC7FFF0EAC6FFF4EEC30010EAC4FF70FB +:1044A0000F89EDB90000C091EDB90001C0616C0940 +:1044B0006A081039E08800082F072F060837CF1147 +:1044C000E3CD80F86E19300B169C5D190F883FDA2A +:1044D000F1EA0009EDB80002C0716609EEF8FFF8D4 +:1044E00012088D08CEABAE89CE8B5809CD118B1C2E +:1044F0008B0CCCFB000074B8EBCD408048CE1897F5 +:10450000300AFCCBFFF0F408150417892F88FC084B +:10451000000CEDB90000C0512FFA2F0B588ACF4183 +:104520003018F96800088F0AE3CF9080000074B853 +:104530002FFC4849A56C18091388A1D8B2885EFCE5 +:10454000000074B82FFC4848A56C30091808B089E1 +:104550005EFC0000000074B8EBCD40E0189E14979C +:104560001295587BE08B002C496AF6C8FFFFA568BE +:10457000F408000C1989EDB90001C1F0F608150422 +:104580001296F4080008A1B6F60915012FF9F409EE +:10459000093E740AB8869157FC0A000A913A5805F8 +:1045A000F9BC0001F9B90104EDD9E138F9F81E00B0 +:1045B000F9BC0101E3CD80E0E3CF80E0E3CFC0E0D0 +:1045C000000074B848387019700C121C5EFC0000B2 +:1045D000000074B85EFC300899085EFC1899780CED +:1045E000580CF9B80001F3F80A005EFC300899088D +:1045F0005EFC300899085EFC5EFC5EFC5EFC5EFCC6 +:10460000D401580BC110F80B000B300A487E7C090E +:10461000F40900092FDAF208141FB98810091019DB +:1046200018C9163CCF51D802000074B85EFD5EFF79 +:104630005EFF5EFF5EFF3FDC5EFC78082FF89908A6 +:104640005EFCD401780820189908C020D80A5D1BA8 +:10465000DA0A301899085EFCD401F01F0002D80273 +:1046600080016D6CEBCD406048784889F5DBC01067 +:104670001895189B7006720C5D160A9CF01F0004BA +:10468000E3CF906000007540000074B4800091E8B2 +:10469000D401E06A0088300B485CF01F0006F01F70 +:1046A00000064868300C9118910CD802000074B8CC +:1046B000800091D0800146C000008B545EFCD7037F +:1046C000D401F01F0011F01F0011301B4909169C86 +:1046D000490AF01F00114919491A301B303CF01FDC +:1046E000000EF01F0010300A301BE06C00F0F01FCD +:1046F000000EF01F000E300A302C149BF01F000C2F +:10470000D80A0000800148C0800147888003B79024 +:10471000800146BC800148548003B794800157A4AF +:104720008001499C800147E0800149F480014730C5 +:104730004828F00C092B5EFC00007548EBCD40E0EA +:104740004905189716966A085808C0205D1848E869 +:10475000F007032C580CC061C088F0061800C09008 +:104760002F8C19885808CFA16A085808C080C00843 +:1047700078193028F0091800FE9BFFF8E3CD80E09F +:1047800000007544000075485EFCD703EBCD40FC8B +:104790004935189630120A94EAC3FFF46A0858089B +:1047A000C0D068385808C19030185806CF805816C5 +:1047B000C0305808CF40E3CD80FC48976E28701970 +:1047C000703C700B5D196E2870296E188F29103996 +:1047D000EFF20A003008CEAB0697CF1B000084B47E +:1047E000EBCD40C018961497580BC24049789009F9 +:1047F000F6091900E088001BF60B00184949F20879 +:10480000002C781A74085808C171741E7428103E60 +:10481000C1507C283009951895099D369D07FD6B80 +:10482000001078089D18E3CD80C0307B305CF01F0D +:104830000009E3CD80C0741ECEDB306B305CF01F0E +:104840000005E3CD80C00000000002200000755C80 +:104850008001473CEBCD408049281497129E581B9D +:104860005F8A9009F80919005FB81468C130F80C24 +:10487000001AF60B0019F4CCFFFF48BB48B8F60A43 +:10488000002AF0090029952EF60C09299507E3CD99 +:104890008080302B305CF01F0006E3CD808000006C +:1048A000000002200000755C000084B48001473CD9 +:1048B000D401307B305CF01F0002D8028001473CFD +:1048C000EBCD404030084AB9B2884ABA940858083B +:1048D000C4D04AA95C784AABF00800184A9EA36885 +:1048E000300C2F88F6CAFFF4F20800082F89930CC9 +:1048F000F34AFFFCF34EFFF82F491039CF91F6CE63 +:10490000FFE84A1A49EB301C970C972A971A14981B +:10491000F4C9FED42EC8F148FFF41238CFC1F54ACD +:1049200001342F4BF4CAFEC01C3BCEF1E06A00807C +:10493000300B496CF01F00164948F0C9FF902F0852 +:10494000F148FFFC491A1238CFB130064918F54634 +:10495000007C910A9116310A0C9B48FCF01F000C58 +:1049600048E80C9C9106E3CD8040485BCC9B00005E +:1049700000007598000002200000755C000084B4FF +:10498000800148B0000082340000759C800091D006 +:1049900000007630000076200000761C4848485918 +:1049A000485A91099119913A912A5EFC000002241B +:1049B000800149D4800149EC48484859485A911926 +:1049C0009109913A912A5EFC00000224800149D4A9 +:1049D000800149EC48494858311AEA1A4000143C11 +:1049E0005E085E19800149D480014A0C481C5EFCB7 +:1049F000800149ECD4013019300A303BFC1C4000E6 +:104A0000F01F0002D8020000800186C8EBCD408074 +:104A10004B373099EA194000123CC310E088001F60 +:104A200030B9EA194000123CC2A0C4233139EA1956 +:104A30004000123CC500E069078AEA198000123C78 +:104A4000C241761CF01F0027300A4A77149B314C74 +:104A5000F01F00260E9CE3CD80803019EA1940003B +:104A6000123CC320E08800153079EA194000123C5E +:104A7000C0603089EA194000123CC0713019300A18 +:104A8000303BF01F001B49B70E9CE3CD8080FC1922 +:104A90004000123CCFA130194978300AF149004456 +:104AA000304C149BF01F00110E9CE3CD8080301918 +:104AB000300A303B30ACEA1C4000F01F000D48D7F4 +:104AC0000E9CE3CD8080302B300CF01F000C0E9C30 +:104AD000E3CD808048470E9CE3CD808080014A0C66 +:104AE0008001DA2C800149D480014658800186C8B3 +:104AF000800152F0000087F480018390D401201DD2 +:104B00001A9CF01F0008C07040085818E088000682 +:104B1000F01F00052FFDD802F01F00042FFDD80262 +:104B200080015F4480015EDC80015EB4EBCD40F823 +:104B3000201DFEF805EA189716951496103AC3A0A2 +:104B4000FEF805E0103AC610FEF805DC103AC06029 +:104B50000C970E9C2FFDE3CD80F8E068018CEA18DD +:104B60008000103CE08000F7E068078AEA188000C7 +:104B7000103CE08000ADE0680186EA188000103C3F +:104B8000CE8176170E9CF01F0169F01F0169C0915C +:104B9000FEF805A0EEEA0000F0EB00006E29912976 +:104BA0000C97FEFA0592300BFEFC0590F01F016495 +:104BB000CD1BF01F015F1894C4D1E0680184EA188E +:104BC00080001037E0800185E08B00D2E0680107AB +:104BD000EA1880001037E08001A0E0680183EA183D +:104BE00080001037CB616A170E9CF01F0156E080E1 +:104BF0000230FEF905523048F34800440E9B334C16 +:104C00000C97F01F0152CA6BFEF4053CE0680112DC +:104C1000EA188000E8F300F8103CC540E08B006320 +:104C2000E0680107EA188000103CE08000F7E068C7 +:104C3000010DEA188000103CE080010DE0680105DC +:104C4000EA188000103CC851761C1497F01F0140F0 +:104C5000C81BFEF304F2E0680188EA188000E6F45D +:104C600000F81037E08001B0E08B00ABE068018312 +:104C7000EA1880001037E080018BE0680184EA18B0 +:104C800080001037E080016EE0680107EA188000BC +:104C90001037FE91FF5F6A18303CF13B000BF01FAC +:104CA000012D3019300A303B30CCEA1C4000F01F97 +:104CB000012A300AFEF70470149B301CF01F0127F4 +:104CC000C49B761C1497F01F0126C44B6A1CF01F6E +:104CD0000125300AFEF70490149B314CF01F011F90 +:104CE000C39BE068018AEA188000103CE08000CB9A +:104CF000E068078AEA188000103CCE90E068011551 +:104D0000EA188000103CFE91FF2576150A9CF01FE2 +:104D100001170BC93048F0091800E08001BBE08B97 +:104D2000019B3008F0091800E08001BF6738301996 +:104D300011EAF20A1800E08001DD0A9CF01F010C64 +:104D4000FE90FF08300A0C97305C149BF01F0103A3 +:104D5000C01B76170E9CF01F0107F01F00F5C4F171 +:104D60000E9B33DC0C97F01F00F9CF4AE068018AF4 +:104D7000EA1880001037E08000BDE068078AEA1872 +:104D800080001037E0800099E0680188EA18800010 +:104D90001037FE91FEDF6A170E9CF01F00F7C0A0CF +:104DA000F01F00F63069FEF8039EFEF60376F14927 +:104DB00000440E9B336C0C97F01F00E4CCBAE06803 +:104DC000018EEA1880001037E08000B7E068078A9B +:104DD000EA1880001037FE90FF7BE068018AEA182D +:104DE00080001037FE91FEB66A160C9CF01F00E49E +:104DF0001897E0800114FEF7032ACACA3099FEF81A +:104E000003460C97F1490044FEFA032C300BFEFCDC +:104E10000372F01F00CBC9EA76150A9CF01F00DA76 +:104E2000302B169CF01F00D9FEF702FCF01F00C0CB +:104E30001896E08100DD0A9B337CF01F00C40C9AB9 +:104E40003019303B30ECEA1C4000F01F00C3FE9FDD +:104E5000FE8276160C9CF01F00CE302B304CFEF7F5 +:104E600002C6F01F00CAF01F00B2E08000EC30194B +:104E7000300A303B310CEA1C4000F01F00B7FE9FA7 +:104E8000FE6A76150A9CF01F00BE1897E08000BAF3 +:104E9000300A302C149BF01F00B13078E9480044F0 +:104EA000F01F00A3FE91FE560A9B0C9733BCF01F27 +:104EB00000A7FE9FFE506A1CF01F00AA089AFEF78A +:104EC00002A6089B314CF01F00A5FE9FFE446A1706 +:104ED0000E9CF01F00B0C060FEF9026C3058F34821 +:104EE00000440E9B335C0C97F01F0098FE9FFE332E +:104EF0006A170E9CF01F00A2C0803069FEF80248BD +:104F0000FEF60220F14900440E9B33BC0C97F01FC3 +:104F1000008FFE9FFE206A1B337CF01F008C089AD6 +:104F2000FEF702043019303B30ECEA1C4000F01F61 +:104F3000008AFE9FFE106938301911EAF20A180043 +:104F4000FE90FE086A1CF01F0094FE91FE03189A62 +:104F5000189BFEF70246301CF01F0080FE9FFDFBF1 +:104F60006A150A9CF01F008B1897E08000874F2A73 +:104F7000300BFEFC022AF01F00721897E08000AE92 +:104F800030580C97E7480044FE9FFDE56A150A9CDF +:104F9000F01F006C1897E08000956938301911EA0D +:104FA000F20A1800FE91FDD64E3A300B4FDCF01F8E +:104FB00000641897E08000A930480C97E748004447 +:104FC000FE9FFDC96A160C9CF01F006B1897C2600B +:104FD000F01F006A30684D37E7480044FE9FFDBB74 +:104FE000EACBFFFC301A30DCF01F005C3019300ACD +:104FF000303B30CCEA1C4000F01F0057FE9FFDAB59 +:10500000F01F004BFE90FF4E0E9A3019303B30CC13 +:10501000EA1C4000F01F0050C44B303B30CCEA1C6F +:10502000400030190E9AF01F004C0DEB304CF01F71 +:1050300000490E9A0E9B301C4BB7F01F0048FE9F94 +:10504000FD8A0C9B33ACF01F0041FE9FFD844D3662 +:10505000FE9FFDD63068F0091800FE98FE693828DA +:10506000F0091800FE91FD76300A0C97325C149B13 +:10507000F01F003AFE9FFD6F189A303B30CCEA1CBF +:1050800040003019F01F0034EB3B000D303CCD0BDD +:105090003008FACBFFFC0C9716F8301A30ECF01FF2 +:1050A000002FFE9FFD580A9CF01F003FFE90FD520E +:1050B000300A0C97306C149BF01F0028FE9FFD4BAC +:1050C0000BCB302CF01F00230E9A0E9B301C4B375D +:1050D000F01F0022FE9FFD3F189A303B30CCEA1CA7 +:1050E00040003019F01F001CEB3B000D301CCA0BB8 +:1050F00048D7F01F000FFE91FF750A9B338CF01FFD +:105100000013FE9FFD28189A303B30CCEA1C40006B +:105110003019F01F00110BCB301CC8AB800152F0CE +:10512000800151A8800156388001D9AC800185E406 +:105130000000763880018E9C8001E03C8001EF20E9 +:105140008001E88C000087F480016D6C8001E2D45E +:1051500080018390800186C8800146588001E00864 +:105160008001DA2C800149D48001E2FC80016D4A83 +:105170008001D9C88001E4D080014AFC8001E4307C +:105180008001E0D48001D9FC800183A08001D9E8AE +:105190008001E81C8001E3DC80014A0C8001E7B853 +:1051A0008001E58880016D48EBCD40C04C96189792 +:1051B0003138EA184000103CE0800087E088002485 +:1051C000E068010DEA188000103CC150E088004002 +:1051D000E0680115EA188000103CC0D0E068018A40 +:1051E000EA188000103CC070E0680112EA188000E4 +:1051F000103CC3910E9C4B7AF01F003718960C9C04 +:10520000E3CD80C03018EA184000103CC510E0889B +:10521000002E30D8EA184000103CC1003108EA18CE +:105220004000103CC3F030C8EA184000103CC1B147 +:10523000301C302BF01F00290E9C3019300A303BF7 +:10524000F01F00274A760C9CE3CD80C0E068010582 +:10525000EA188000103CCCF0E0680107EA188000F2 +:10526000103CCC900C9CE3CD80C0E04C008ACC304C +:10527000FC184000103CCF71307949B8300AF14930 +:105280000044149B302CF01F0019300A30FC149B92 +:10529000F01F0016302B300CF01F00100C9CE3CDDB +:1052A00080C0303C302BF01F000D0E9CCC7B48E9B9 +:1052B0007298ABC8300A9398149B303CF01F000BD7 +:1052C0000C9CE3CD80C048A60C9CE3CD80C00000C0 +:1052D000800151A880014B2C800183A0800186C8E9 +:1052E00080015638000087F480014658800149D477 +:1052F000D421FACD00E4FEF602E21898FEF502E0B1 +:10530000ECF700F83109EA194000123CE08000D5C2 +:10531000E08B003630A9EA194000123CE08000C260 +:10532000E088005330C9EA194000123CE08000A830 +:10533000C6A330D9EA194000123CE080011930F9C7 +:10534000EA194000123CC3D1FEFA0298300BFEFC71 +:105350000296F01F00A61896C341189BFEFA02841D +:10536000FEFC028CF01F00A1304C301BF01F00A18E +:105370000C9A0C9B301CF01F00A0C238E06901841D +:10538000EA198000123CE0880011E0690188EA19FE +:105390008000123CC100E08B00A5E0690186EA199B +:1053A0008000123CC0E1C078E0690183EA19800006 +:1053B000123CC363109CFEFA0226F01F0090189561 +:1053C0000A9C2C7DD8223079EA194000123CC7C0D3 +:1053D000E08800973089EA194000123CE08000CF55 +:1053E0003099EA194000123CCEC14FEA300BFEFC66 +:1053F000020EF01F007E1894E08000CF3048ED4888 +:105400000044CDFB4F7A300B4FECF01F0078CD916C +:10541000189A189B4FC5301CF01F0077CD2BE06900 +:105420000107EA198000123CCC60E0690115EA1915 +:105430008000123CC1203139EA194000123CCC11E5 +:10544000300A301C149BF01F006C300A304C149B47 +:105450004EE5F01F0069CB5B6F38301911EAF20A94 +:105460001800C72076160C9CF01F00690C9CF01FDA +:1054700000694E98580CF0051710CA3B303B3019A4 +:10548000300AF01F0066302B303CF01F005A300A03 +:10549000301C149BF01F00584E150A9C2C7DD822FE +:1054A0004D0A300B4DFCF01F00511897C3B0305817 +:1054B000ED480044C86B303B3019300AF01F0057EC +:1054C000302B304CCE3B6C9BE21B0040C2414C5A0F +:1054D0004D5CF01F0046C9D03028ED480044C71B82 +:1054E000E069018AEA198000123CFE90FF65E069DC +:1054F000018EEA198000123CFE91FF64C5CBFC19B5 +:105500004000123CFE91FF5E300A149B149CF01F79 +:10551000003AC57B300A4BC5149B301CF01F003687 +:10552000C50B30481A9BBAE8336CF01F00400E9A46 +:105530003019303B30ECEA1C4000F01F00384B893A +:105540004BB89119C3EB76170E9CF01F00310FC9B1 +:105550003068F0091800FE9BFF354B15F01F003531 +:10556000C2A10E9B338CF01F0031C2BB4AC530195B +:10557000300A303BF01F0029C24B49AA300B4AAC1D +:10558000F01F001ACAA1304849F5BAC81A9B334C1B +:10559000F01F0026C16B306AEECBFFE2FACCFFFCB5 +:1055A000F01F002530481A9BBA68335CF01F001FBB +:1055B000089ACBFB3019300A303B30CCEA1C400053 +:1055C000F01F00160FCB305CF01F000A300A301CB1 +:1055D000149BF01F0009CF5A000087F4800152F09D +:1055E00080018E9C8001E7548001EF208001E03C27 +:1055F000800183908001465880014B2C8001E58812 +:105600008001DA5480014A0C800149D48001E2FC17 +:1056100080016D48800151A8800186C880015638FC +:105620008001E7B88001EA8C80016D6C00000224E3 +:10563000800185E48002E736EBCD40804C9731084D +:10564000EA184000103CC6F0E088001DE068018CBC +:10565000EA188000103CC3B0E088002EE068019397 +:10566000EA188000103CC440E0680194EA18800009 +:10567000103CC2714BC7761CF01F003C0E9CE3CD62 +:10568000808030C8EA184000103CC400E088001D4B +:1056900030D8EA184000103CC21030E8EA18400048 +:1056A000103CC0F14B2A300B4B2CF01F00330E9CEA +:1056B000E3CD8080E0680186EA188000103CC0706D +:1056C0000E9CE3CD8080E04C008ACFB14A5AF01F97 +:1056D000002B18970E9CE3CD8080F01F00294A4ACA +:1056E000300B4A8CF01F00240E9CE3CD8080761C8A +:1056F000F01F0025F01F0025C0514A5B33CCF01F7E +:10570000002549970E9CE3CD80804A39731858983C +:10571000CD803098496AF3480044300B49FCF01FB3 +:105720000016CCFB49C973185888CCB03088F348B0 +:105730000044F2F900F87338301911EAF20A18003F +:10574000C0A03019300A303B30DCEA1C4000F01FAA +:105750000014CB7B486A300B492CF01F0007CB1B91 +:105760008001563880014A0C8001DA4680018E9C07 +:105770008001E03C8001EF2080014B2C80015E34F1 +:105780008001DA448001DA48800185E4000076383F +:1057900080016D6C000087F48001E0D4800186C830 +:1057A0008001E094EBCD40F84A37189416956E18B6 +:1057B0006E090E930E96C118300B301CEA1C400087 +:1057C0005D19300B6C39FC1C40005D196C388D285C +:1057D0006E186E091238C2001039C190300B301C9F +:1057E000EA1C40005D19300B6E19FC1C40005D196D +:1057F0006E188F086E296E381039CDF10A9B089CFF +:105800005D19873C6629123CCF71CE3B0A9B089CF0 +:105810005D198F1CCF0B5805C0706A085818C060FE +:105820000A9CF01F0006E3CD80F8EACCFFFCF01FD5 +:105830000004CF7B00000224800091E88001D3A8FF +:105840004878F14C00F8580CF9F81004F9B9010146 +:10585000F1D9E108F9F81A045EFC0000000087F4B1 +:10586000EBCD40C04948FAC6FFF4F0F700F4580702 +:10587000C051C1E8F8C70008C1B0EECAFFDC740827 +:10588000204D502815C9FB69000C15D8FB68000D88 +:105890006C0850080DC9BAC90DD8BAD8F01F000756 +:1058A0002FCD580CC0516E2C580CCE5118970E9C11 +:1058B000E3CD80C0000087F480018898D40149D9E5 +:1058C000F2F800F41838C0B078285808C2B0784808 +:1058D000201899482F8CF01F0018D802580CF9F89E +:1058E0001004F9BA01FFF1DAE108F9F81A043008F6 +:1058F000F34800F448FA78285808C180F0C9000835 +:10590000F54900F4CE8072482FF89348F4F900F47A +:105910005809CE10724820182F8C9348F01F0006AB +:10592000D80278385808CD41D802F54800F4CD3B6C +:10593000000087F48001F2A0D4014989F2F800F058 +:105940001838C0A078085808C240784820189948EC +:10595000F01F0013D802580CF9F81004F9BA01FF2F +:10596000F1DAE108F9F81A043008F34800F0780A8F +:10597000F34A00F0580ACED074482FF89548487979 +:10598000F2F900F05809CE50724820189348CE1B07 +:1059900078185808CDB1CDFB000087F48001F2A043 +:1059A000EBCD40801897580AC2C07858F608010815 +:1059B0001438E08800274948F0FB00F8580BC190E4 +:1059C000F8CAFFDC15D8204DFB68000D740950297A +:1059D00015C8F6CAFFDCFB68000C7408500815C92E +:1059E000BAC915D8BAD8F01F00092FCD580CC091EC +:1059F0000E9CF01F00070E9CF01F0006E3CF908066 +:105A0000E3CF8080000087F48001889880015938B6 +:105A1000800158BCD4214A141895E8F700F05807C3 +:105A2000C27079383006704AC02810976F387049B4 +:105A30001439E08A00086E080E965808CF710E9649 +:105A400010970A37C0D06A085808C0B00A9CF01FE7 +:105A500000145806C1300A9B0C9CF01F0012D8227B +:105A60006A185808CF416A482FF88B48CF3BE94C59 +:105A700000F078482FF89948D8220A9B0E9CF01F16 +:105A800000090E9CE94500F0F01F00050E9B0A9CE2 +:105A9000F01F0004D8220000000087F48001F2A06B +:105AA0008001F28CEBCD40C04A48FAC7FFF4F0F613 +:105AB00000F05806C051C3D86C065806C3A06D3814 +:105AC000707C2F4CF8E80000212DFAE90024F8EA58 +:105AD0000008FAEB002CF8E80010FAE90034F8EAC4 +:105AE0000018FAEB003CF9380020FB680044F93953 +:105AF0000021FB690045EEE80000FAE90000EEEA4B +:105B00000008FAEB0008EEE80010FAE90010EEEAEF +:105B10000018FAEB0018EF380020FB680020EF397E +:105B20000021FB690021F01F00062EED580CCC501F +:105B30000C9CE3CD80C00000000087F48001891038 +:105B4000EBCD40E0205D7608502817C9FB69000CBA +:105B500017D81697FB68000DF8CBFFE2306A18964D +:105B60001A9CF01F0034F01F00342FCD580CC05188 +:105B7000300C2FFDE3CD80E06E7C2F4CF8E8000068 +:105B8000212DFAE90024F8EA0008FAEB002CF8E8E5 +:105B90000010FAE90034F8EA0018FAEB003CF93892 +:105BA0000020FB680044F9390021FB6900456D388D +:105BB000707C2F4CF8E80000FAE90000F8EA0008D1 +:105BC000FAEB0008F8E80010FAE90010F8EA00180B +:105BD000FAEB0018F9380020FB680020F9390021A1 +:105BE000FB690021F01F00152EED580CCC20320B64 +:105BF000300CF01F00131895CBC0189A0E99491B52 +:105C0000F01F00110BF93008F0091800EDF800132F +:105C1000F1F90807EBF90E07FACCFFFC6D3818D83C +:105C20001A9CED45004CF01F0009301CCA3B0000D7 +:105C30008002E73680018898800189108001D8DCD5 +:105C40008001D3EC8001AD408001D3A8EBCD40C0F2 +:105C500049C649D86C09700A1439C05530070E9CE2 +:105C6000E3CD80C0350CF01F00191897CF906C0859 +:105C70002FF8350A8D08300BF01F0015320B300C51 +:105C8000F01F0014EF4C004C1898C16030084929EF +:105C90008F680E9CF30A017C8F28EF5A001CEF6876 +:105CA000002A8FF88F488F58EF4800408F188F08D0 +:105CB0008F38E3CD80C00E9C1097F01F0008CD0BED +:105CC000000076440000025880009200800091D0CD +:105CD0008001D8DC00000260800091E8EBCD4080BC +:105CE000189778485808E08A0004E3CD8080793816 +:105CF0005808C0402B4CF01F000648697208201855 +:105D00000E9C9308F01F0004E3CD80808001D3A88F +:105D100000007644800091E8D4014899F2FC00F834 +:105D2000580CC0A07848201899483008F34800F86B +:105D3000F01F0004D802F34C00F8D802000087F4EA +:105D400080015CDCEBCD40F84B131894E6F700F8CB +:105D50005807C060189B0E9CF01F002EC1D1E6F7BB +:105D600000F05807C4203006C1285806C0706F38AC +:105D70006D39704A7248103AC064E6F800F80E387F +:105D8000EE0617106E070E955807C0900E9C089BE4 +:105D9000F01F0020CEB00E9CE3CD80F8F01F001E57 +:105DA00058065F18580C5F0918971069EA0918001F +:105DB000C201089B306AEECCFFDCF01F0018089B84 +:105DC000306AEECCFFE2F01F00156F3A0899149C80 +:105DD000493BF01F001430080E9C8F088F18F01FED +:105DE00000120E9CE3CD80F8F01F000B1897CE2B0D +:105DF0000C9CF01F000E0C9CF01F000D0C9CF01F63 +:105E0000000DF01F00051897CD51CC6B000087F4F2 +:105E100080015B4080015C4C800091DC8001D3EC10 +:105E20008001AD4080015A1480015938800158BC6E +:105E300080015CDCEBCD40E04905EAF700F458074F +:105E4000C0D1C158F0C600080E9CF01F000D0E9C7A +:105E5000F01F000C5806C0B00C976E285808CF31C0 +:105E60000E9CF01F00070E9CF01F00063008EB4848 +:105E700000F4E3CD80E00000000087F4800158BC0E +:105E800080015CDC580CC04078185B98C110489ABF +:105E900074991298EDB90001F9BC0101F9BB001029 +:105EA000F3DBE038F5F80A09F9BC00015EFC5EFDA1 +:105EB000000087F4489A7498109CF0091604E21CBC +:105EC0000002F9BB0110F1DBE138F5F81A09F9B865 +:105ED0000101F3D8E12C5EFC000087F4489A749825 +:105EE000109CF0091604E21C0002F9BB01EFF1DB83 +:105EF000E128F5F81A09F9B80101F3D8E12C5EFCA4 +:105F0000000087F448887099129CA589E21C000261 +:105F1000F9BA0101F3DAE148F9B90101F1D9E12C4B +:105F20005EFC0000000087F418994868709CE21C31 +:105F30000002F1F8103FF3F81A00F9BC01015EFC11 +:105F4000000087F418994868709CE21C0002F1F880 +:105F50001041F3F81A00F9BC01015EFC000087F45F +:105F600018984859729CE21C0002F3F81A41F9BCD7 +:105F700001015EFC000087F44839300C7298A7C814 +:105F800093985EFC000087F44839300C7298A5D8CD +:105F900093985EFC000087F4D401E06A0100300BA6 +:105FA000482CF01F0003DA0A00007648800091D0E8 +:105FB000EBCD40C04A0A18967498109CE21C00026F +:105FC000C1D0F4F700F85807C1801099E2190020F9 +:105FD000C270A5C8A7A8F4FB00BC95983009497AFF +:105FE000E06CEA60F01F00163008F0061800C100EF +:105FF0003018F0061800C040301CE3CD80C0311CC2 +:10600000EECBFFE2306AF01F000FE3CF90C0312CDF +:10601000EECBFFE2306AF01F000BE3CF90C0A5B8D3 +:10602000F4FB00B89598E06CEA60487AF01F000431 +:10603000CDCB0000000087F480015F7880014558D7 +:106040008001465880015F88D401F01F0002D80209 +:1060500080018040D40148687098E2180002C03185 +:10606000109CD802F01F0003D8020000000087F443 +:10607000800183FCD40148687098E2180002C031A6 +:10608000109CD802F01F0003D8020000000087F423 +:10609000800183D8D431FACD0188E06A0168300BE1 +:1060A0001A9CF01F002CFAC6FE541A901A9CF01F7E +:1060B000002A581CC03029EDD832FAC5FFF8401824 +:1060C000F0081016EA0800081035C4120A97FAC43E +:1060D000FE98ECC1FFF8C09840182EA7F0081016E3 +:1060E000EA0800081037C3326C08204D50280DC94B +:1060F000FB69000C0DD80E9BFB68000D306A1A9CE2 +:10610000F01F0016F01F00162FCD580CCE60EECBFE +:10611000FFFA310AFACCFE88F01F0010E2E8000016 +:10612000310AE8E90000089BE2E20008FACCFE88A8 +:10613000E8E30008F01F000BCD01189B316A0E9CAC +:10614000F01F0004009CF01F0008CB6B29EDD83A2B +:10615000800091D0800160748002E73680018898C9 +:106160008000917C80016054D431FACD018CE06ACA +:106170000168300BFACCFFFCF01F0050FAC5FE504E +:10618000FACCFFFCF01F004E581CC03029DDD8327D +:10619000402858F8E088007FF0081016FAC1FFF494 +:1061A000E20800081031E0820087E06801685018BA +:1061B000EACBFFF8FAC6FFF002973004FAC0FE946B +:1061C000500BC0C85804C36040282EA7F008101612 +:1061D0002EA6E20800081037C4926A08204D502805 +:1061E0000BC9FB69000C0BD80E9BFB68000D306AD5 +:1061F0001A9CF01F0034F01F00342FCD580CCE3005 +:10620000ECCBFFFE310AFACCFE84F01F002E400BCF +:10621000F6E80000310AE0E90000FACCFE84F6E27C +:106220000008009BE0E30008F01F0028CB005804A2 +:10623000CCC10F89E8091800CC810F98F20818002A +:10624000CC410FA9F0091800CC010FB8F2081800D2 +:10625000CBC10D89F0091800CB810FD8F2081800C6 +:10626000F9B40100EE041700CB0B5804C2400A9B9E +:10627000306A089CF01F0013EACBFFF8310AE8CC23 +:10628000FFFAF01F0010FACCFFFCF01F001129DD0F +:10629000D832F00A1110FAC1FFF4F40A1016E2081D +:1062A000000C300BF01F00053108E0690168502830 +:1062B0005019C7FB3FDCC6BB800091D080016074E1 +:1062C0008002E736800188988000917C80016054CC +:1062D000EBCD40C0208DBACBBA8A189B4968709C20 +:1062E000E21C0002C06118970E9C2F8DE3CD80C088 +:1062F0003008FAC6FFF8504850281A99FACAFFFC2D +:106300000C9CF01F000EC111189740285808C0407F +:106310000C9CF01F000B404C580CCE70F01F000975 +:106320000E9C2F8DE3CD80C00C9CF01F0007581CE5 +:106330005F07CECB000087F48001E1308001D3A855 +:10634000800091E880018E9CEBCD40C0201D491754 +:1063500018966E9CE21C0002C0412FFDE3CD80C068 +:106360001A9CF01F000DEF4600FCEEF801105808D3 +:10637000C051301C2FFDE3CD80C0EECCFEECEF3AD7 +:10638000011BEF3B011AF01F0005301CCF4B000032 +:10639000000087F4800177A4800162D0EBCD4080BB +:1063A000201DBA8C48C76E98EDB80001C0402FFD83 +:1063B000E3CF808030181A99300A308B487CF01F68 +:1063C0000008581CCF511B88EF4801202FFDE3CD5A +:1063D00080800000000087F48003B7A08001776C04 +:1063E000D401201D48B91898729CE21C0002C0E03C +:1063F000300AF368004C308BFAC9FFFC486C12F885 +:106400003018F01F0006581C5F0C2FFDD80200004A +:10641000000087F48003B7A88001776CD401203D89 +:10642000BA8C496A749CE21C0002C0312FDDD8028C +:106430001B8B3038F00B1800E089001DE06832003B +:10644000EA18312EE069352EEA19312EFAE90004F6 +:10645000F4F800F8F3DBB008300A5808F1F91A0F25 +:10646000308B30181A99FACCFFFCF01F0005581C2D +:10647000CDE03FECCDCB0000000087F48001776CCD +:10648000D421206D4A0618976C98EDB80001C040E1 +:10649000300C2FADD822584C5FB8E04C00FF5F198C +:1064A0001268C0303FECCF6B300814995028169A10 +:1064B0005008189B1A951A9CF01F0014CEA01A9C25 +:1064C000F01F0013400818945808C0401A9CF01F91 +:1064D0000011402C580CC030F01F000F5814CD9103 +:1064E0006C98EDB80007C0C15837E08B000AEE0881 +:1064F000150648A9300A1009089C930ACCBB301C29 +:10650000CC9B0000000087F48001E1A480018E9CF8 +:106510008001D3A8800091E800007648EBCD40C010 +:10652000202D496718966E98E2180002C2103FF8B5 +:10653000FACAFFFEBAF8BAA8BAB8BAC8BAD8BAE85E +:10654000300BF01F000F6E98EDB80007C0E1583611 +:10655000E08B000CEC081506300A48A9301C100925 +:10656000930A2FEDE3CD80C02FEDE3CF90C0109CB8 +:106570002FEDE3CD80C00000000087F4800164802F +:1065800000007648EBCD40C0202D49F66C9CE21C03 +:106590000002C2703FF8BAF8BAA8BAB8BAC8BAD8F6 +:1065A000BAE8ECFB00F8580BC260F6CCFFE2303AD8 +:1065B000300BF01F0016FAC7FFFE301CF01F00144E +:1065C000303B0E9A300CF01F00136C99300B129870 +:1065D000ED4B0110A3D88D98EDB90007C050301CC9 +:1065E0002FEDE3CD80C0E06A010048BCF01F000B36 +:1065F000301CCF7BFAC7FFFE303A0E9CF01F000321 +:10660000CDDB0000000087F4800162D08001651CB2 +:106610008001648000007648800091D0D43120DD74 +:10662000FB690010FB68000CFAC9FFA8FEF7023CEA +:1066300018956E981696149272307201E218000244 +:1066400072147223C041300C2F3DD832E04B002031 +:10665000E08800043FFCCF9B584CE08B002158DBC6 +:106660005FBA301BFB380010F60818005F09126A89 +:10667000C030580CC1413078FACCFFD4FB680033ED +:10668000F01F007B3008303C50785058F01F0079E4 +:1066900058D6C070E08B00315856C0303FECCD5B0F +:1066A00030683019FB680033EF49011CFACCFFCD8C +:1066B000F01F0071501C1AD31AD41AD1FB38001CD9 +:1066C00004991AD80C9AFB380043FACCFFDC0A9BD9 +:1066D000F01F006A2FCD580CC1B140585808C05067 +:1066E000FACCFFECF01F0066407C580CCAD0F01FBB +:1066F0000065300CCAAB5906C6C0E0460020CCF19C +:1067000030283029FB680033EF49011CCD0BFACC4F +:10671000FFECF01F005D500C40585808C050FACCF8 +:10672000FFECF01F0057407C580CC030F01F0055A4 +:1067300040085818C8915800EFF81009F9B9010835 +:10674000F1D9E138EFF81A093009FB380010F208E6 +:106750001800C051F9D5B008F01F004C6E98EDB884 +:106760000001C0514C18F0F800FC501840185808AF +:10677000C080FB3A0010FB3B000C089CF01F00445B +:10678000306A089BEECCFEECF01F0042301AFACBC8 +:10679000FFF4EECCFEE6F01F003FEECCFEE5301A33 +:1067A000FACBFFF0F01F003B3018EF480110FB68F8 +:1067B00000326E9C4AD7EDBC0001C120EDBC000741 +:1067C000C061FB38000C50285845C1E1301CC3DBC8 +:1067D00030483039FB680033EF49011CC68B300864 +:1067E0004ADB1099109A109CF01F002CC3401ADC51 +:1067F0003018FAC9FFCA300A308B4A9CF01F0029B2 +:106800006E9C2FFDCDCBEA0915064A780C9AF0094B +:106810000007049BEF650026EF560024EECCFFFC3A +:10682000F01F001C089BEF610036306AEECCFFD8E9 +:10683000F01F00185803C110069B308AEECCFFD21F +:10684000F01F001440288FF0EF68003830188F08D0 +:10685000109CCFBA6E9CCB3B069B308AEECCFFD20D +:10686000F01F0012CF0B0000000087F4800177A416 +:106870008001EF6C80017BD88001E2148001D3A8F5 +:10688000800091E880018E9C8001641C800162D0B0 +:10689000800091DC80015E8480016AF48003B798F7 +:1068A0008001773000007648800091D0EBCD40C069 +:1068B000300749A60E98A7682FF7EC08000B76085A +:1068C0005808C0F10E985847CF714957EF3C004C1B +:1068D000F01F0014EEFC0100F01F0013E3CF90C086 +:1068E00076F8F6C9FFD2F73C00261AD8F6C8FFD8CA +:1068F0001AD91AD8F7390036F6CAFFFC1AD9F73870 +:106900000038F7390027F71B0024F01F00082FCDAF +:10691000581CCD90E3CF80C000007648000087F47B +:10692000800163E0800163488001661C7808301CA8 +:10693000F80A094C201C106C5EFCD70348787008DC +:106940005808C0901838C041C078103CC05070B88A +:106950005808CFC15EFD5EFF0000778C189A48F89A +:10696000709CE21C00025E0C70A8EDB80000C03004 +:10697000305C5EFC48AC780B583BE089000D300978 +:106980004888F00B003891189109950BF6C8FFFF65 +:1069900099085EFF3FDC5EFC000087F4000077880A +:1069A0000000776848D972A8EDB80000C1313008FE +:1069B000780A99D848ABF60A003A741999E974181C +:1069C000F8C9FFCC910C7808301CF60800389119F2 +:1069D0005EFC305C5EFC0000000087F4000077681D +:1069E000EBCD40C0189778B95809C18078C893C8D2 +:1069F0006EC891096E3C580CC050F01F000B300857 +:106A00008F3833CA6EA635AB0E9CF01F00080C9B66 +:106A10000E9CF01F0007E3CF80C078C94858911939 +:106A200078B9CE7B800091E8800091D0800183B05E +:106A30000000778CEBCD40801897580CC180789877 +:106A40005D1848F972095809C051C11872B958093E +:106A5000C0E01237CFC16E785808C0B06E3C580CF9 +:106A6000C060F01F000830088F588F38E3CF908047 +:106A70000E9C301BF01F0004E3CF90800000778C49 +:106A8000800091E8800169E0EBCD4080496972A8FF +:106A9000EDB80000C040305CE3CD8080493870091B +:106AA0001839E08A001E4928F00C00376E09580991 +:106AB000C15072DA580AF3F8000EEFF80A01F3FA3F +:106AC000000DF3F8100EF5F81A0E72E8129C910AF8 +:106AD000F01F00086E095809CED1E3CF90803FCC5B +:106AE000E3CD8080000087F400007788000077689D +:106AF00080016A34EBCD40F81897169614951294DD +:106B0000109333CCF01F000CC1403008990799B89E +:106B10009938995899889996994599649973487ABA +:106B2000301899A8741999C9930CF8C8FFD495180E +:106B3000E3CD80F8800092000000778CD401202DF6 +:106B4000500A48C972A8EDB80000C040305C2FED73 +:106B5000D80248981A99F00B032A3048FA08000B1B +:106B6000F01F0006581CF9BC0001F9BC01FECF0B58 +:106B7000000087F4000077488001F1D8EBCD40C0D9 +:106B8000201D4AC618976CA8EDB80000C441580CE7 +:106B9000C3F0789B580BC3C0780A580AC3954A695A +:106BA000F20A033850085808C061C1A870D85008CC +:106BB0005808C1601037CFB1F40815036EDA580ACF +:106BC000F3D8E009EFF8000EF3F80A01EFF8100E21 +:106BD000F5F81A0E400870DA70E9930A6E9B3F9838 +:106BE0008F18580BC0300E9C5D1B6E8B581BC0500D +:106BF000582BC150580BC0516E2A1A9CF01F000F21 +:106C00000E9C301BF01F000E2FFDE3CF90C02FFD18 +:106C1000E3CF90C0305C2FFDE3CD80C0ECF801B82D +:106C20000E38CEF130094838F14901B8CEAB00003A +:106C3000000087F40000776880016B3C800169E008 +:106C4000D40148C9169E72A8F1D8C001C031305C89 +:106C5000D8024898304A76A9F00C032C1ADAF6C804 +:106C6000FFF833CAF01F00052FFD581C5F0CD80237 +:106C7000000087F4000077488001F164D431204D92 +:106C800030084931189650285018FAC5FFF4FAC256 +:106C9000FFF802901A93FAC4FFFCC098E006032A9A +:106CA000F01F000C0E9B401CF01F000B3049049B92 +:106CB0000A9AE206032CF01F0009304818970A9937 +:106CC0001A9B089C5817CEB02FCDD83200007748B9 +:106CD0008001F1D880016B7C8001F0B4EBCD40E005 +:106CE000201D49356AA8A1A8300A49298BA8149704 +:106CF000930A14984906EC08002C2FF748FA303B09 +:106D0000F01F000F581CC0F10E985887CF5148D87B +:106D1000300991189109301B1A9CF01F000B2FFDB0 +:106D2000E3CD80E06AA8A1C88BA8CF2B000087F430 +:106D300000007788000077488001692C8001F05CB2 +:106D40000000778C8001695C5EFD5EFFEBCD4080CA +:106D5000189778785808C030788C5D180E9CF01F12 +:106D60000003E3CD80800000800091E8D4314B1017 +:106D70001895169260095809C58030047258721926 +:106D80000A38F7B400FF5809CFA10891E80C1502A2 +:106D9000F01F00291893C46060075807C2303006FE +:106DA000C0486E175807C1E06E580A38CFB10E9C24 +:106DB000F01F0022E60609276E485808C0F06E1939 +:106DC0005809EFF80002E1F80A01EFF90001EFF8C5 +:106DD0001002F3F81A026E2891092FF66E17580761 +:106DE000CE415804C1A006953006C0380836C154BB +:106DF0006A07049C6E686E8B5D18491B0E9CF01F21 +:106E000000112FF62FC56E485808CF100E9C48CBA6 +:106E1000F01F000C0836CED5069CF01F000B029C1C +:106E2000D8321891029CD83212941291CB0B0000E8 +:106E300000007794800092008001463A80016D4CFA +:106E400080014642800091E8EBCD4080324CF01F3B +:106E500000081897C080324A300BF01F00060E9CC5 +:106E6000F01F00050E9CE3CD8080000080009200A2 +:106E7000800091D080014652EBCD40FC18961695CB +:106E80001494129310924077F01F000AC100995693 +:106E900099359964998799739942487A3008991875 +:106EA00074199929930CF8C8FFFC9518E3CD80FC60 +:106EB00080016E4800007794D431FACEFFDC189739 +:106EC00016901491129310927C157C04580CC26099 +:106ED00078095809C26049A66C085808C051C09882 +:106EE00070185808C0601039CFC13018109CD832C3 +:106EF000F01F0014C13099509931996399859972A6 +:106F00009944300899186C199929930CF8C8FFFC1A +:106F10008D188F0C3018109CD8323008109CD83245 +:106F200008981AD50499069A029B009CF01F000647 +:106F30002FFD580C5F188F0CCDAB0000000077942C +:106F400080016E4880016E78EBCD40404856ECCC15 +:106F5000FFF8F01F000530088D168D08E3CD804046 +:106F600000007794800145D6EBCD40807847785A71 +:106F70006E18103AE0880004E3CF8080783B6E0CF6 +:106F8000F01F000B6E285808C0406E1B6E0C5D1879 +:106F90006E3CE04C002BC050300A149BF01F0005E3 +:106FA0000E9CF01F0005E3CF90800000800091DC74 +:106FB00080014658800091E8EBCD40C0203D30086C +:106FC00018979928990814961A9C308AF01F001176 +:106FD000FACBFFF80E9CF01F00102FED580CC101EA +:106FE0006E085808C0400E9CF01F000C6E2C580C08 +:106FF000C040F01F000B300C2FFDE3CD80C05806C1 +:10700000FBF81000EDF81A002FFDE3CF90C0000050 +:107010008002E7368001DE6C8001D3A8800091E811 +:10702000EBCD40C0189778185B98C0C0783B580BE0 +:10703000C17078465806C04078685908C050E3CF00 +:1070400090C0E3CF80C0785A590AE08800153FF815 +:107050008D28ECCCFFF4F01F000CE3CF90C0784CEF +:10706000580CCEE06E685908CEB12F4CF01F0006C8 +:10707000E3CF90C06C0CF01F00056E5830198D18CE +:107080008D29CE8B8001A25C800091DCEBCD40E0AD +:10709000201D1697E04C0081E0800088E08A0027E0 +:1070A000E04C0083C2F0C2B4760A1A9C300BF01F89 +:1070B0000064E08A004F585CC490314CF01F0061BE +:1070C0004008913C4009723A580AC7A06E0830093E +:1070D000990899399919EF380008992840083149D9 +:1070E000301A91594008911AC1D8584CC4A0E04CAC +:1070F0000080C330300C2FFDE3CD80E0E04C0085F4 +:10710000CFA16E0A300B1A9CF01F004DE08A0022BE +:10711000585CC1C0EF3900084008300A9119400896 +:10712000915A301B400CF01F0048581CCE41400CB7 +:10713000F01F0046C0B0400B76785808C070300C85 +:10714000F01F0043581C5F0CCD7B2FFDE3CF90E078 +:107150003FEC2FFDE3CD80E07645760A1A9C300B9C +:10716000F01F0037FE9AFFF6585CCF005805C49117 +:1071700040089135400993550FCA4008911ACD2B0C +:107180007626760A1A9C300BF01F002DFE9AFFE23D +:10719000585CCDC05806C1914008301A913640095C +:1071A00093564008911ACBEB760A1A9C300BF01FCD +:1071B0000024FE9AFFCF585CCC900FC9CAEB3FD891 +:1071C00093184009935ACAEBECC5FFED0A9CF01FD7 +:1071D000001D4008913C1899400A743B580BC2406E +:1071E0006E080C9A93089336EECBFFF430162F0CF2 +:1071F0009316F01F00184008915540099316C92BAB +:1072000040060A9CF01F000F8D3C4009723C580C50 +:10721000C1000A9A6E5BF01F000F400891550FC91C +:1072200040089119C7FB3FD895184009935BC7AB3D +:107230003FD893184009935CC75B000080016B3C0A +:1072400080009200800169A48001693C80016C404B +:10725000800091DCEBCD40FC4C151696189476021C +:107260006A095909E088001B4BE7C15878BA580AE7 +:10727000F9F8000CEFF80A01F9F8100CF5F81A0CFF +:10728000201978C8910A8B09F01F00376A0959093B +:10729000E08800056E0C580CCEA16C2338086C36C3 +:1072A000ECCCFFCCF0041800C260F01F003018973F +:1072B000C2F0B8C464080C9A990899A6069B2CCC15 +:1072C0008F9CF01F002B3808F0041800C2303818CB +:1072D000F0041800C2B04A3B30088FB8761A8FCA43 +:1072E0009507EEC9FFD46A0897192FF8301C8B0850 +:1072F000E3CD80FC64495809CD90ECC8FFC9E01883 +:10730000FFFCF009000CF01F00191897CD31E3CDF8 +:1073100080FC318A049BEECCFFF4F01F00156E7ADE +:107320008F2A580AC1018F8ACD7BEEC6FFF4318ABD +:10733000300B0C9CF01F000F049B0C9C308AF01F3C +:10734000000CCCAB6EA82FD8E018FFFC6E9C100C84 +:107350008F8C645BF01F0006CBFB0000000077A061 +:1073600000000234800091E880009200800091DCEF +:10737000800091D0D421207D1297FACEFFD04B29E6 +:1073800018947298EDB80001C040300C2F9DD8229F +:10739000FCE800003006BB295C7A50265046FAC54E +:1073A000FFF8FAC9FFE00A9CF01F00282FED580CE7 +:1073B000C2D05807C0B08F368F5640680E9B0C9CC9 +:1073C0008F28F01F0023581CC2E11A9CF01F0021D7 +:1073D0005BBCC29040076E4C580CC070F01F001E82 +:1073E00030088F388F4840075807C0401A9CF01F5C +:1073F000001B402C580CC030F01F00175804FBF83D +:107400001006E9F81A002F9DDA2A40085808C040F3 +:107410001A9CF01F0012402C580CCB80F01F000E5D +:107420002F9DD82A40085808C0401A9CF01F000B16 +:10743000402C580CC0313FDCCAABF01F00073FDCCA +:10744000CA6B0000000087F48001DF7480016C408B +:1074500080018E9C800091E88001D3A8EBCD40E0B4 +:10746000208D149616951897308A300BF01F001354 +:1074700059F6E08800052F8DE3CF80E00A9B0C9A37 +:107480001A9CF01F000FFAC9FFE030080C09FACC73 +:107490000001F368FFE0F8C6FFFF300B30AA0C9C38 +:1074A000F01F000832EB0ECC0C9CF01F0007CF4100 +:1074B0002F8DE3CF90E00000800091D0800091DC20 +:1074C0008000917080009164D43120AD189E109599 +:1074D00014974C781292709CE21C0002C0511896CE +:1074E0000C9C2F6DD832169AFAC6FFE41C9B0C9C9C +:1074F000F01F00400C9BFAC3FFFCFACAFFDC069C9D +:10750000F01F003D1896581CCEC15807C2F10E91CD +:107510000E90069CF01F0039401818945808C0407F +:10752000069CF01F0037403C580CC030F01F00355F +:107530005BB4C4D05807C170E06B0BB8E0CCFFF46B +:10754000F01F00315BDCC3A0582CC07060285BF8D2 +:10755000C04060188508CC5B029C301B3006F01FD1 +:10756000002BCBFB40988B08CBCB3FF8310C8B0822 +:10757000F01F002718941890C280F8C8FFF4500834 +:10758000109CF01F00248907640930088919089AA3 +:1075900031094A1B109CF01F00211891C20040982D +:1075A000189B9928300CF01F001E581CCB300C9BE8 +:1075B000029C3FD6F01F001BC94B029C301BF01FE2 +:1075C000001340988B08C8DB3FD6C8BB5807CFD004 +:1075D000029C301B3FD6F01F000DC83B400CF01F33 +:1075E0000012089C3FD6F01F0007C7BB000087F4BD +:1075F0008001745C80016FB880018E9C8001D3A8EB +:10760000800091E88001A22880016B7C80009200BC +:107610008001A28C8001702080016AF480016C409E +:10762000800169E08001A27CEBCD40E0209D49F81B +:1076300018991495709CE21C0002C06118960C9C6D +:107640002F7DE3CD80E0169AFAC6FFE8129B0C9CD2 +:10765000F01F00170C9B1A97FACAFFE01A9CF01F44 +:1076600000151896581CCEC11A9CF01F0013400834 +:1076700018965808C0401A9CF01F0010402C580C57 +:10768000C030F01F000F5BB6C0313FD6CD9B300C31 +:107690008B3C8B5C40880A9B8B28F01F000A581C8F +:1076A000CCF03FD6CCDB0000000087F48001745C96 +:1076B00080016FB880018E9C8001D3A8800091E882 +:1076C00080016C40EBCD40FC1895169414921293F7 +:1076D00010974076310CF01F0012C1D099369905F1 +:1076E00099149927189A3008310948EB109CF01F1B +:1076F000000E1896C100069B049C0C9AF01F000B0C +:107700001897581CC0500C9C301BF01F00090E9C91 +:10771000E3CD80FC30070E9CE3CD80FC800092001E +:1077200080016F6880016AF480017628800169E039 +:10773000EBCD406E202D4086129310951491169A31 +:10774000189B1A9CF01F0008069B0C99FAE2000097 +:107750000A9ABB23029CF01F00052FED2FEDE3CD0D +:10776000806E00008001745C80017374EBCD406812 +:10777000202D129310961495169A189B1A9CF01FA0 +:107780000008FAE800000C9ABB29069B0A9C300905 +:10779000F01F00042FED2FEDE3CD80688001745CB5 +:1077A00080017374EBCD40401896303CF01F00040C +:1077B0007848301C8D08E3CD804000008001EF6CDC +:1077C000EBCD406048A618952F060C9CF01F0009D1 +:1077D000303CF01F0009310AF8CBFF8C0A9CF01FE7 +:1077E00000070C9CF01F0006E3CF9060000087F4B8 +:1077F000800145F88001EF6C800091DC800145FA42 +:10780000D42149461894ECC5FFF00A9CF01F0012E1 +:10781000ECF700F85807C0C06F38707B2F4B322A46 +:10782000089CF01F000E0A9CF01F000DDA2A303C65 +:10783000F01F000CC060F9380088EE081800C06026 +:10784000ECCCFFF0F01F0006D82AF8CBFF78CE8BE7 +:10785000000087F4800145F88002E736800145FA90 +:107860008001EF6CEBCD40E049061895ECC7FFF0C6 +:107870000E9CF01F000F303CF01F000EECF600F8DD +:107880005806C0C0ECCBFFE2306A0A9CF01F000A29 +:107890000E9CF01F000AE3CF90E00E9CF01F000743 +:1078A0000C9CE3CD80E00000000087F4800145F8E7 +:1078B0008001EF6C8002E736800145FAEBCD404055 +:1078C000209DE04B0020E08B001CBABB580BC1B1DF +:1078D0003FF8BAA849162F060C9CF01F0011303C47 +:1078E000F01F0010322AFACBFFFEF8CCFF78F01F11 +:1078F000000E0C9CF01F000D2F7DE3CF90402F7DDC +:10790000E3CFC0403008169ABAA8189BFACCFFFC07 +:10791000F01F0007CE0B0000000087F4800145FC3B +:107920008001EF6C8002E736800145FE800091DC2B +:10793000EBCD40E01895303CF01F000B1897C110BC +:1079400048A62F060C9CF01F000A0A9B306AEECC5A +:10795000FF56F01F00080C9CF01F0007E3CF90E0DB +:10796000E3CD80E08001EF6C000087F4800145FCEE +:10797000800091DC800145FED401F01F0002D80296 +:1079800080017930EBCD40EC202D18961697586B7E +:10799000C0503FFC2FEDE3CD80ECFACCFFF8E06364 +:1079A000312EEA13322EE0623100EA12312EB92371 +:1079B00016980C99300A308B1A9CF01F0010301C5E +:1079C000F01F000F48F81893F0C5FFF00A9CF01F55 +:1079D000000E5803C0C00E9A0C9B069CF01F000BB3 +:1079E0000A9CF01F000B2FEDE3CF90EC0A9CF01FD8 +:1079F0000008069CCD0B00008001776C8001EF6CC5 +:107A0000000087F4800145FC800091DC800145FE88 +:107A1000EBCD40E01897303CF01F0018EEC8000195 +:107A200018955818E0880004E3CF80E058175F09E4 +:107A300049366D1858385F0AF5E90009C0E1582742 +:107A40005F08F5E80008C030E3CF90E0F01F000DBC +:107A5000C0A18B47E3CF90E0F01F000B6D185838A2 +:107A60005F0ACEEB303CF01F000578485818CF2055 +:107A7000F01F0005CEFB00008001EF6C000087F4D2 +:107A800080017BC88001F340EBCD40F81696189337 +:107A900076085858E08A002A49A83064F0C5FFF0FB +:107AA00097040A9CF01F0018301CF01F001818974C +:107AB000C160202D189B089A1A9CF01F0015F01F1A +:107AC00000152FED580CC1616C0A0E9B069CF01F2F +:107AD00000120A9CF01F0011E3CF90F80A9CF01FDF +:107AE000000F0E9CE3CD80F830683FFC9708E3CD93 +:107AF00080F80A9CF01F00093FBCE3CD80F800002D +:107B0000000087F4800145F88001EF6C8002E736C1 +:107B1000800188B0800091DC800145FA0050F200BD +:107B2000000FAC003008F9480320F94803245EFC3C +:107B3000EBCD40C016971496F8FE0320FCCBFFFF58 +:107B4000F60A141FE069851FEA1951EBF60904488B +:107B5000A5591419F8FA0324F2091064121B143BF6 +:107B6000C0B0F94B0320F80E0927FCC8FF9CF808A9 +:107B70000926E3CF90C0E3CF80C0D401189EF8FC63 +:107B80000324FCF803201838C1F0F8C8FF9CFC0C53 +:107B9000032CFC08032930089709E069851FEA19BE +:107BA00051EBFCFB0324FC0B09282FFBF6090448CE +:107BB000F60A141FA5591419F2091064F6090109EF +:107BC000FD490324D802D80A4838F0F900F85809CA +:107BD0005F1C5EFC000087F43018198CF00C180054 +:107BE0005F0A3058F00C18005F09124AC0F1306883 +:107BF000F00C1800C0B03028F00C1800C080584CB1 +:107C0000F9BC0003F9BC01005EFC5EFF302C5EFC99 +:107C100048C8F0F800FC5818C0D0C0635828C0D03D +:107C20005838C0505EFF580C5F0C5EFC583C5F8CAF +:107C30005EFC581C5F8C5EFC582C5F8C5EFC000068 +:107C4000000087F4EBCD40C01897169E740A580ABE +:107C5000C0D0753A580AC0A0747A580AC0704FF85C +:107C6000F0F901045889E0880004E3CF80C04FC8D0 +:107C7000F009032F94D8EDB80004CF813008301CF0 +:107C80009D08E3CD80C0F53900C83FF8F009180021 +:107C9000CED0F51B00D2580BCE90F51C00D030266C +:107CA000F4FA00D8F40C002811B9EC091800E080AF +:107CB00000BFF8C8FFFF3009F40800280C9CF0CA88 +:107CC000FFFDC07815882FCAF8081800E08000B0C2 +:107CD0002FF91639CF85CCABF53900C83FF8F0093C +:107CE0001800CC40F51B00D2580BCC00F51C00D07E +:107CF0003016F4FA00D8F40C002811B9EC09180079 +:107D0000E08000A4F8C8FFFF3009F40800280C9CAC +:107D1000F0CAFFFDC07815882FCAF8081800E08067 +:107D200000952FF91639CF85CA1BF53900A43FF805 +:107D3000F0091800C9B0F51B00B2580BC970F51C4A +:107D400000B03026F4FA00B8F40C002811B9EC09A0 +:107D50001800C660F8C8FFFF3009F40800280C9C22 +:107D6000F0CAFFFDC06815882FCAF8081800C58042 +:107D70002FF91639CF95C7ABF53900A43FF8F009B4 +:107D80001800FE90FF74F51B00B2580BFE90FF6FB9 +:107D9000F51C00B03026F4FA00B8F40C002811B934 +:107DA000EC091800C3D0F8C8FFFF3009F408002818 +:107DB0000C9CF0CAFFFDC06815882FCAF80818008F +:107DC000C2F02FF91639CF95C51BF53900A43FF83D +:107DD000F0091800FE90FF4BF51B00B2580BFE9007 +:107DE000FF46F51C00B03016F4FA00B8F40C002879 +:107DF00011B9EC091800C220F8C8FFFF3009F408D7 +:107E000000280C9CF0CAFFFDC06815882FCAF8082E +:107E10001800C1402FF9123BFE99FFF9C27B3028B0 +:107E2000AE8830199D09129CE3CD80C03028AE8801 +:107E30003029301C9D09E3CD80C03018AE88301940 +:107E40009D09129CE3CD80C03018AE883029301CCB +:107E50009D09E3CD80C00000000087F48003B7B027 +:107E60003028F00C1800C390E088001B3048F00C5C +:107E70001800C3503058F00C1800C21030093028D8 +:107E8000F00B1800C160F00B1800E08B001B3018DD +:107E9000F00B1800C100300812385F5C5EFC30182F +:107EA000F00C1800CEC130193028F00B1800CEC1EC +:107EB0003038C02830181039CF045EFE3029CE0B80 +:107EC0003048F00B1800C0703058F00B1800CE414D +:107ED0003028CF2B3048CF0B3039CD2B3049CD0B4C +:107EE000D431307977387075B8891894581AC0D061 +:107EF000C043582AC4C0D83A7738707A94D9EDB9BB +:107F00000004E0800087DA3AEB3900A43FF8F0097A +:107F10001800CF20EB0800B03009F2081900CF405C +:107F2000149112923006307B30533060C1A8E007C4 +:107F30001800C2B03028F0071800C7A03048EE087B +:107F40001800F9BC0003F9BC0100F01F003CE9F780 +:107F50001E002FF6EB1800B00C38FE9AFFD6098BE6 +:107F6000EAF800B8F006002811B70E9CF01F0034A4 +:107F7000FE9AFFF1E20718005F08E60718005F09A4 +:107F80001248E4081800CD40301CCE0BEB3900C875 +:107F90003FF8F0091800CB00EB0800D03009F208D8 +:107FA0001900CB2012913006307B301230533060F4 +:107FB000C1A8E0071800C2B03028F0071800C3A01D +:107FC0003048EE081800F9BC0003F9BC0100F01FAE +:107FD000001BE9F71E002FF6EB1800D00C38FE9AB4 +:107FE000FF94098BEAF800D8F006002811B70E9C20 +:107FF000F01F0013FE9AFFF1E40718005F08E60780 +:1080000018005F091248E2081800CD40301CCE0B62 +:10801000307B305CF01F000AFE9AFF77301CF01FA7 +:108020000007FE90FF723058301CA888D832302CE0 +:10803000C8DB302CCCDB000080017C1080017E602E +:108040003008484A48499508951893085EFC000096 +:10805000000089EC00008C5CEBCD4080189E198BF1 +:10806000580BC130300A3017149CFC0A00092FFA53 +:1080700013982018EE080948F9E81008F9D8B0104C +:10808000163ACF45E3CD8080169CE3CD80807938C9 +:10809000707A3308F53900C8F0091800C0205EFD79 +:1080A000F51800D4E218000C5848C0E0E08A000837 +:1080B0005888C08058C8CF41310C5EFC5808CF01A9 +:1080C0005EFF304C5EFC302C5EFCD703EBCD40E015 +:1080D00030081896109A169C8D084927760E301590 +:1080E000109BC0A8F80A00082FFA11C9EE0B070868 +:1080F000A7D91039C0A01C3ACF652FFB58DBE08B05 +:10810000000E300A780ECF8B6C08EA0B0949124832 +:108110008D082FFB58DBFE98FFF6E3CF90E00000C0 +:108120008003B7F4EBCD40C030069906149EF8C723 +:10813000FFFC1799EC091800C0E00C9AF60A000839 +:1081400011A90EC978082FF899082FFA1798143832 +:10815000FE99FFF61D993008F0091800C0F0300BA9 +:10816000FC0B000811A9EE0B0B0978082FF89908F1 +:108170002FFB1D981638FE99FFF5E3CF90C0EBCD8D +:1081800040F816941897780B68065806E08A002C79 +:10819000F6C8FFFCE8C5FFFCF8080003300E2FCC42 +:1081A000EA0E070A580BE08A00130FC81458F1D8DA +:1081B000C007C1503009C078F80907081458F1D831 +:1081C000C007C0D02FF9123BFE99FFF8597BE08B16 +:1081D000000706CA6E0B2FFB8F0B68062FFE1C369E +:1081E000FE99FFE0E3CF90F8EBCD40FE1894169295 +:1081F0001497780676055805E08A0025ECC8FFFC40 +:10820000F6C3FFFCF8080001300EF4CCFFFCE60ECC +:10821000070A6E0B580BE08A00120FC81458F1D8E9 +:10822000C007C1203009C078F80907081458F1D8F0 +:10823000C007C0A02FF91639CF852FFE1C35FE9937 +:10824000FFE8E3CF90FE5976FE9BFFF902CA68066D +:108250002FF689062FFE64051C35FE99FFDACF2B19 +:10826000D42178045804E08A0027F8C7FFFC493875 +:108270000F8B700C11C6580CE08A0017F0C5FFFC7C +:10828000300EEDEB2008F1D8C007C0F00A9A300993 +:10829000C0782FFA15881658F1D8C007C0602FF99A +:1082A000123CFE99FFF8D82A2FFE2FF7083EC03463 +:1082B0000F8BCE8BDA2A00000000023CD4211897E5 +:1082C00076055805E08A0026F6C6FFFCF8CEFFFCCE +:1082D000300B1694C0482FFB0A3BC1B4EC0B070AC5 +:1082E000E80A1800CF946E0C580CE08A00120FC8F0 +:1082F0001458F1D8C007CF003009C078FC0907082E +:108300001458F1D8C007CE802FF91839CF85D82A54 +:10831000DA2A3248F00C1800C110E08800113488C5 +:10832000F00C1800C0B0E08800183608F00C1800F7 +:10833000C05036C8F00C1800C0E15EFF3128F00CC8 +:108340001800CFC03188F00C1800CF8030C8F00C76 +:108350001800CF405EFD3308F00C1800CFC1CEEB03 +:10836000EBCD40E078055805E08A0010F8C6FFFC28 +:108370003007C0380A37C0940D8C2FF72FF6F01F46 +:108380000004CF90E3CF90E0E3CF80E08001831240 +:108390004838F14B01DCF14C01D85EFC000087F459 +:1083A0004838F14B01ECF14C01E85EFC000087F429 +:1083B000EBCD40801697581BC050582BC080E3CFA0 +:1083C0008080F01F00050E9CE3CD8080F01F00022E +:1083D000E3CF9080800091E8D401580CC070486BC6 +:1083E000760AE04A0168E0880003D80AF01F00031B +:1083F000DA0A0000000089EC800091DCD401580CFE +:10840000C0A078185908E08B0007780AE04A016894 +:10841000E0880003D80A189B482CF01F0003DA0AF2 +:10842000000089EC800091DCEBCD4040350A1896C5 +:10843000F01F000330088D48E3CD8040800091DCC0 +:10844000D401306AF01F0002D8020000800091DCE5 +:10845000D401300CF01F0002DA0A000080016C7CAD +:10846000D421201D189414971296169A1095189BD3 +:108470001A9CF01F001CE08A0032585CC27058063B +:108480005F1858075F191268C241300840099338D5 +:10849000400A95584008301B9115400CF01F0012FF +:1084A000581CC100400C78785808C090189B089C54 +:1084B000F01F000E581CC0A03FDCC098301BF01FFE +:1084C000000C400C78785808CF21301C2FFDD822A2 +:1084D0004008913740099356CDEB3FEC2FFDD82251 +:1084E00080016B3C800169A480016C40800169E0DF +:1084F000EBCD40C018971696303CF01F00283DD8B1 +:108500003079AE88AE9935083F29300BAEB8AEC988 +:1085100030283019AED8EF6B0008AEABAEEBAEF939 +:1085200058065F1AF8F900BC58095F181468F60875 +:108530001800C310F8F800D05818F9B80008EFF880 +:108540000E08F8F800CC5818EFF80808F9B900043C +:10855000F1D9E038EFF80E08F8F800C85818EFF82D +:108560000808F9B90002F1D9E038EFF80E08F8F878 +:1085700000C45818EFF80808F9B90001F1D9E0383B +:10858000EFF80E08F8F900D4EF380008F1E91048C8 +:10859000EF680008E3CD80C08001EF6CEBCD404078 +:1085A0001896303C5C76F01F000E5876E088000488 +:1085B000E3CF804048B8F006032FF90C00C6E3CDA6 +:1085C0008040F90C00CAE3CD8040F90C00CEE3CD29 +:1085D0008040F90C00D2E3CD804000008001EF6CB8 +:1085E0008003B7D4D40130DCF01F0002784CD802ED +:1085F0008001EF6CEBCD40FC207D31CA1893300B2D +:108600001A9C1A92F01F001266045804E08A00189F +:10861000E6C6FFFC30070D852FF72FF60A9CF01FEA +:10862000000DC0A14008FACAFFE4F0C9FFFF100A1C +:108630005009F565FFE80E34FE99FFEF1A9B069C82 +:1086400031CAF01F00052F9DE3CD80FC800091D042 +:1086500080018312800091DCEBCD40E0207D300B67 +:10866000189731CA1A9CF01F00171A956E0B580BF9 +:10867000E08A0024300AFAC6FFFCEEC9FFFC0C9C1D +:10868000149EC0582FF9143BE08A000D2FFA13886E +:10869000FC081800CF8418C82FF96E0B143BFE9904 +:1086A000FFF7F80601061A9B50060E9C31CAF01F10 +:1086B00000062F9DE3CD80E0FAC6FFFC0C9CCF2B7B +:1086C000800091D0800091DCD421129618971695E5 +:1086D0001494580CC1205809C111314CF01F0009E5 +:1086E000C0C09907B8C599249936487A7419994930 +:1086F000930CF8C8FFF49518D822F01F0004D82274 +:1087000080009200000077A4800147E0EBCD40C0DC +:108710001896580CC110308CF01F000C1897C090A0 +:108720000C9CF01F000B8F1C1898C0A030188F08ED +:108730000E9CE3CD80C018970E9CE3CD80C00E9CAC +:108740001097F01F0004CF5B800092008001D920B9 +:10875000800091E8EBCD40C049566C075807C180B6 +:108760006E395809EFF80004EDF80A01EFF810042B +:10877000F3F81A046E4891096E2A0FCB6E0CF01FA5 +:10878000000D0E9CF01F000C6C075807CEA148B8D6 +:10879000F0C7FFEC0E9CF01F000AC071302CF01FD8 +:1087A00000090E9CF01F0008E3CD80C0000077A4F4 +:1087B000800147E0800091E8000087F4800145DCFB +:1087C0008001478C800145ECD4014848300991185C +:1087D0009109F01F0003D802000077A4800187549C +:1087E000EBCD40FE4A0618976C0816951494201895 +:1087F000E0480167E0880004E3CFC0FE580A5F1933 +:108800006C1A300B580A5F181268F6081800CF501F +:10881000183A5FB858FC5F891268F6081800CED085 +:1088200016910C92C0B82FF7641958F75F8A0E3969 +:108830005FB81468E2081800CE00EE031016306A24 +:10884000E6CCFFF80A9BEC0C000CF01F0008CEC130 +:10885000485B089C060B310A2F2BF01F00050E9C6D +:10886000E3CD80FE000089EC8000917C800091DCEB +:10887000EBCD40E018951697300C18960E9A0A9B8F +:108880002F07F01F0005C0452FF62FFCCF8B0C9C47 +:10889000E3CD80E0800187E0D401306AFACCFFFCB0 +:1088A000FACBFFF4F01F00025F0CD8028000917C2D +:1088B000EBCD4068205D3FF8FACAFFDC15D9FB68B4 +:1088C0000013FB68000EFB68000FFB680010FB68DC +:1088D0000011FB680012FAC6FFF8ACD974088D08C5 +:1088E00015C9FAC3FFFEACC93065FACBFFF20A9A8C +:1088F000069CF01F00060A9A069B0C9CF01F0004C1 +:108900005F0C2FBDE3CD80688002E7368000917C4C +:10891000D401FACBFFFCF73900241788F0091800BE +:10892000C020D80AF73A00251798F4081800CFA1FC +:10893000F6CCFFFE2DABF01F00035F0CD802000049 +:108940008000917CEBCD4040211D303CF01F001E8B +:10895000322A1896FACBFFB4FA0A000CF01F001B5B +:10896000ECC6FF78ECE80000FAE90000ECEA000849 +:10897000FAEB0008ECE80010FAE90010ECEA001845 +:10898000FAEB0018ED380020FB680020ED390021DB +:10899000FB690021FB3A00221B88F4081800C05034 +:1089A000300C2EFDE3CD80401B9AFB380023F408E9 +:1089B0001800CF71FACBFFFEFACCFFDCF01F0004E9 +:1089C0005F0CCF0B8001EF6C8002E7368000917C5A +:1089D000EBCD40E0203D4B571896EF3900943FF81F +:1089E000F0091800C3507938707C2F4CF8E800006B +:1089F000209DFAE90000F8EA0008FAEB0008F8E820 +:108A00000010FAE90010F8EA0018FAEB0018F9383B +:108A10000020FB680020F9390021FB690021F01FCC +:108A200000242F7D580CC0412FDDE3CD80E0202DA8 +:108A3000EEC7FF4A306A0E9B1A9CF01F001EF01F03 +:108A4000001E2FED580CC1C02FDDE3CF90E0F8CB16 +:108A5000FFE2306A1A9CF01F0017EECBFF4AFAC6FD +:108A6000FFFA306A0C9CF01F00130C9B1A9C306AB2 +:108A70001A95F01F00125F0C2FDDE3CD80E0ECCBE8 +:108A8000FFE2FAC5FFFA306A0A9CF01F000A0E9B4B +:108A9000306A1A9CF01F00071A9B0A9C306A1A96CB +:108AA000F01F00065F0CCC1B0000026080018944AF +:108AB0008002E736800188B08000917CD401201DBF +:108AC000500C580CC0401A9CF01F00022FFDD80219 +:108AD0008001D3A8D401201D500C580CC0401A9C12 +:108AE000F01F00022FFDD8028001D3A8EBCD40C0BB +:108AF000E06B00E41896300CF01F000A1897C0E0F5 +:108B0000E06A00E40C9BF01F0008ECC9FFF8EECA15 +:108B1000FFF8486B0E9CF01F00060E9CE3CD80C052 +:108B20008001D8DC800091DC8001D3EC8001ACA80E +:108B3000EBCD40C0E06B00EC1896300CF01F000A43 +:108B40001897C0E0E06A00EC0C9BF01F0008ECC92D +:108B5000FFF0EECAFFF0486B0E9CF01F00060E9C63 +:108B6000E3CD80C08001D8DC800091DC8001D3ECB3 +:108B70008001ACA8EBCD40FE129210914A88F0F92A +:108B800000F818933DD8733C316916977874AE8815 +:108B9000AE9930083509AEA8AEB93F283019301665 +:108BA00014954A0B303AAEC8AED9AE36EECCFFF8CB +:108BB000F01F001D069CEF65000BAE76AE66308B95 +:108BC000F01F001A8F5CC290303A496BF01F0016FC +:108BD0006E58B0B28EE86E5C303AF808002C491B33 +:108BE000F01F00116E598EE8F2080028B0B1E919A3 +:108BF00000B0E91800B21208E93900A5A3682F08EF +:108C00001039C030E3CF90FE0F9830092FE8EF59AC +:108C10000010AE98E3CF90FEE3CD80FE000087F415 +:108C200080017B1C800091DC8001D3ECD431201DBD +:108C3000314E1697330BAE9EAE8B1090FACBFFD809 +:108C40007618500818921493129176055805E08A08 +:108C50000006EA0815042EA8AE983016303AAE1673 +:108C600049E4EECCFFFCE8CBFFFCF01F001D049CA8 +:108C7000AEF3AE56AE46AE75EA0B15042F8BF01F61 +:108C800000198F4CC280303AE8CBFFFCF01F001473 +:108C90006E48B0B18EC86E4CE8CBFFFCF808002CD3 +:108CA000303AF01F000F6E498EC8F2080028B0B0AD +:108CB0003289AE695805E08A000D6E488EC98EDC97 +:108CC000EA0A1504120C400BF00C002CF01F0004F3 +:108CD0002FFDDA3A2FFDD83280017B1C800091DC19 +:108CE0008001D3ECEBCD40E0201D500B1897580CC1 +:108CF000C070169A4C4C0E9BF01F0044C6404C4668 +:108D000030080DA9F0091800C050301C2FFDE3CD2C +:108D100080E0ECCCFFE4F01F003FCF815807C2F0A9 +:108D2000301CF01F003DC3304B751A9B4B6CF01F7D +:108D3000003B1897C320F01F003A3018ED4C00CCD0 +:108D4000ACA80E9C3005400BED5500D04B07F01F32 +:108D500000351896581CC3F1EECCFFE4F01F00322A +:108D60004B28F1090142EA091900CD006E98EDB8CF +:108D7000000ECCC0F01F002E0C9CCC9B4A25EAF9BB +:108D80000320EAF803241039CCC1CD0BECCCFFE46E +:108D9000F01F0025301CCBBBECF801245818C04054 +:108DA000301CF01F0024ECCCFFE4F01F001FEAF998 +:108DB0000324EAF803201238CA90301CF01F001672 +:108DC000301CCA5B492AF50B00D2F80B1900C0A071 +:108DD0003FBCC9DBEECCFFE4AEA5F01F00133FBCE7 +:108DE000C96B3018F55800D24909F3080142F6085A +:108DF0001900CEF07498EDB8000ECEB0F01F000C44 +:108E00003FBCC85B000084CC80017B30000087F44D +:108E1000800145DC80019F3080017B7A800145C460 +:108E200080014664800145EC000002608001FBFC8B +:108E30008001A128EBCD40C01897F01F0015C1B0EC +:108E40006E4849468D186E598D2930096E2C8F2930 +:108E50006E486E3BE2180080F9B80001EDF80E0292 +:108E6000F01F000D1897581CC0803008300CACA8BB +:108E7000E3CD80C0E3CF90C0F01F00083008ED4C78 +:108E800000CCED5800D00E9CE3CD80C08001C6A080 +:108E9000000087F480014664800145C4EBCD40802A +:108EA000491A18977498EDB80001C111F4F801241B +:108EB0005818C0A07848951878599529F01F000BCC +:108EC000C091E3CD8080109CE3CD80803FBCE3CD9A +:108ED000808030086E2C6E3B8F28F01F0005E3CD9C +:108EE00080800000000087F48001C6A080018CE42F +:108EF000106104000000000040200700FFFFFFFF9A +:108F0000000000004869F2F802045828C0205EFE04 +:108F1000580CCFE0F2C8FFF099085EFF000077AC74 +:108F20005EFDD7034828912C913B5EFF000077AC93 +:108F300048384849910C930B5EFC000000007540D6 +:108F4000000074B45EFCD703D431202D500C3008DF +:108F5000FAC1FFF81690109402D84A424A43E269D7 +:108F60005A4C089A0819029B009C40085D181895F5 +:108F70005804C0B1584CF80A1780F9BA0B0449DB01 +:108F8000401CF01F001DC2E140165805C1000A97A1 +:108F90005907EE0A1780F9BA0B100C9B1417140628 +:108FA00064085C7A660C5D185807CF310A04E24405 +:108FB0005A4BFE98FFD65875E088000D4018EACC51 +:108FC000000848CBF00C000C2F8B308AF01F000AF1 +:108FD000C0913009009C129A129B40085D182FED39 +:108FE000DA3A30DC2FEDD83200007540000074B45E +:108FF00080018EF08000917CEBCD40FC49F8189404 +:10900000F0C3FDDCF0C7FFBC3072C0B8321A089B59 +:109010000A9CF01F001B1896C1D02C470637C16070 +:10902000EEC5002C5804CF316E08109C5808CF6054 +:10903000F01F00148F04EF44FFF86E185808CEE1BB +:109040008F248F322C470637CEC15804C0D0E3CFCF +:10905000C0FC6ABC580CC080F01F000A8B968BB60F +:109060006AC85808C030E3CF90FC8BD8301C3078E9 +:109070008BE8E3CD80FC0000000077AC8000917CA1 +:10908000800091E8EBCD40FE109114961895169251 +:109090001293F4C80008E0480037E08B00185859D4 +:1090A000C18049D8F0C4FE08F0C7FFE86EB8580880 +:1090B000C1300E9C321A0A9BF01F0018C1D02C47F9 +:1090C0000837CF51307CE3CD80FE30ACE3CD80FE5D +:1090D000129CE3CD80FEECCBFFFF049CF01F001040 +:1090E0000A9B8FBC8F968FD18FE30E9C321AF01F94 +:1090F000000DE3CF90FE6EBCF01F000B049CECCB88 +:10910000FFFFF01F00078FE38FBC8F968FD1E3CF57 +:1091100090FE0000000077AC8000917C8000918878 +:10912000800091DC800091E8D401487BF6F80204CD +:109130005828C020DC0AF6CBFE04306AF01F00037A +:10914000DA0A0000000077AC800091DCEBCD40FE35 +:10915000209D580B5F09580A5F08169314941069F4 +:10916000C341580BC4514A9264585808C2E03005B4 +:10917000FAC1FFFD0A970A9CC0D8ED3A0020FB38DF +:109180000023F4081800C2E00E9C64580E38E088F2 +:10919000001E64482FF7F00C03265803CEF1306A06 +:1091A000089B5804C0A0202D1A9CF01F0019F01F26 +:1091B00000192FED580CC0E05805C0506AC96CC8A2 +:1091C0001238CE350C95CE1B30050A9C2F7DE3CD91 +:1091D00080FE306A089BECCCFFDFF01F000FCD5102 +:1091E000CECB029B0C9CF01F000CCCF1CD9B189BAE +:1091F000069AFACCFFFDF01F0009FB6300234832FA +:1092000064585808CB51CE1B000077AC8002E7367B +:10921000800188B08000917C800091DCEBCD4060C3 +:10922000306A202D169618951A9CF01F0009F01F21 +:1092300000090C9A5F0B0A9CF01F00072FED581CC9 +:10924000F9BC0001F9BC01FFE3CD80608002E73684 +:10925000800188B080016480D4015C6CF01F000440 +:10926000581CF9BC0001F9BC01FFD8028001641C44 +:10927000EBCD406E202D1293189116921495300B61 +:10928000308A1A9CF01F0012306A069B1A96202D15 +:109290001A9CF01F0010F01F001030085F091AD848 +:1092A0000A9A1AD6049B1AD3029C1AD83038F01F97 +:1092B000000B2FAD5BFCC070581CF9BC01FF2FEDFB +:1092C000E3CD806E304C2FEDE3CD806E800091D0E9 +:1092D0008002E736800188B08001661CEBCD406ECD +:1092E00010911892169314951296F01F00113008E1 +:1092F0000C991AD80A9A1AD1069B049CF01F000DEB +:109300002FED583CE0890007582CC085306CE3CD28 +:10931000806E584CC070E3CFC06E5BECC050581CE0 +:10932000CFB1E3CF906E30BCE3CD806E8001A1DC85 +:109330008001F7D8EBCD4040201D10964978F0FE13 +:109340000204582EC0503FFC2FFDE3CD804030EE8C +:10935000FAC8FFFC10DE300E1A985C761ADE1AD6B8 +:10936000F01F000F2FEDFE5CFC17E0890010FE5C83 +:10937000FC16C114FE5CFB4FC070FE5CFBB4C0B0B9 +:10938000FE5CFAECCE11307CCE0B5BECC040581C7E +:10939000CDB1CDBB30BCCD9B000077AC8001F54496 +:1093A000D4014858F0F902045809C030F01F0003F6 +:1093B000D8020000000077AC80014480EBCD40E88B +:1093C0004D56189514971693E06A0218300B0C9CB2 +:1093D000F01F00524D288D05700C8D133005A36CC5 +:1093E000ED450204F01F004F8D4CC031E3CFC0E8C3 +:1093F0000A9CF01F004D581CCFA11AD5F1D7C00808 +:109400000A990A9A310B320CF01F00482FFD581CA4 +:10941000CEE1F01F0047581CCEA11AD50A980A9930 +:109420004C4A0A9B302CF01F00442FFD580CCDF005 +:1094300030670A981AD70A994BEA0A9B322CF01F18 +:10944000003E2FFD580CCD3030780A991AD84B9A2F +:109450000A980A9B323CF01F00382FFD580CCC7044 +:109460001AD50E9C0A980A994B2A0A9BF01F0032C3 +:109470002FFD580CCBC030270A981AD70A994ADA20 +:109480000A9B304CF01F002C2FFD580CCB001AD734 +:109490000A984A8A0A990A9B305CF01F00272FFD20 +:1094A000580CCA50301C0A981ADC0A994A1A0A9BAE +:1094B000F01F00212FFD580CC9A030390A981AD985 +:1094C00049CA0A990A9B31CCF01F001B2FFD580C8A +:1094D000C8E0F01F001A581CC8A1F01F0019581C42 +:1094E000FE91FF860A980C9730490C9A495B0A9CBA +:1094F000F01F0015FE90FF7C189A308B493CF01F3E +:109500000014581CFE91FF74ED4C0204EF45020C50 +:10951000E3CD80E8000077AC800091D000000258D5 +:1095200080009200800200AC8002067C8001FFB4C3 +:109530008001984C80016E788001FD8C8001A00034 +:109540008001955080016AF48003B8048001762878 +:10955000EBCD40E078185B98C031E3CFC0E078569F +:109560005866CFC1783B0C9A4985EAC7FE040E9C29 +:10957000F01F0017303A497B0E9CF01F0017C131D5 +:10958000F01F00163026EB460204F01F00150C9C5D +:10959000F01F00146A195809C14048C8700C5D19C1 +:1095A000E3CF80E037A83C49EB6801FC30E80C9B36 +:1095B0000E9CEB6901FDEB6801FEF01F000BCE1B5A +:1095C000129CE3CD80E00000000077AC800091DCCD +:1095D0008003B80C8000917C8001FD8080020290A5 +:1095E0008002023480017984EBCD40FC7875580B01 +:1095F000F9B80100F7F81A001693EB3900C83FF8E4 +:10960000F0091800C250EB0900D03008F009190029 +:10961000C4D0307430073022EE061502EAF800D8C4 +:109620000C082FF711BC089BF01F0027E08A0009E7 +:10963000EAF800D80C0811B45803E7F21A00EB1846 +:1096400000D00E38FE99FFEA089CE3CD80FCEB3891 +:1096500000A4F2081800C250EB0900B03008F0096D +:109660001900C240307430073012EE061502EAF8D5 +:1096700000B80C082FF711BC089BF01F0013E08AFC +:109680000009EAF800B80C0811B45803E7F21A0010 +:10969000EB1800B00E38FE99FFEA089CE3CD80FC81 +:1096A000787992D8EDB80004C040307CE3CD80FCDE +:1096B000307B305CF01F0004FE9AFFF9305CE3CD94 +:1096C00080FC000080017E60D431201D4D876E58E3 +:1096D0005808C0E030060C996E48F009032CF01FC2 +:1096E00000552FF66E580C990C38FE9BFFF730068C +:1096F0001A9B8F560C9CF01F00501A94400C580C6B +:10970000C0312FFDD832A36CF01F004C1890CFA0B1 +:10971000400A0C9BA36AF01F004A40085808E08AE0 +:1097200000260C950096C0782FF52FC640080A3801 +:10973000E08A001D350CF01F00418D0CCF614009FF +:109740005809E08A000F009530062FF66A0C580C75 +:10975000C040F01F003840092FC50C39FE99FFF7B3 +:10976000009CF01F00342FFDD8321A9B009CF01F84 +:1097700000324B4972084009F0090D488F585808CB +:10978000CE00300408930891A363E003000264084C +:109790006E467135344CF01F0029F9410040060631 +:1097A0008D0C6A796E48F2CBFFF2F0030306F33AB0 +:1097B000000D0C9CF01F00246A78F139000D306A0E +:1097C000ED690020ECCCFFDF640B2E2BF01F001E98 +:1097D000029B0A9CF01F001DED6C00386A498DC980 +:1097E0006A585808F9B805008DD86A79F338005ED0 +:1097F000ED6800276A7992C88DA80BF9ED59002C05 +:1098000030290BEAF20A1800E2081710F9B8000133 +:109810008DF830286E49F20309062FF4F00A18007B +:1098200008936E580838FE9BFFB1C8AB000077ACB8 +:10983000800091E88002105880009200800091D052 +:1098400000000258800091DC800195E8EBCD40C01B +:10985000201D1696582BC680E0880013586BC590C3 +:10986000587BC2D0583BC4804C076E295809C05061 +:109870004BE80C9C703B5D192FFDE3CD80C0580B6D +:10988000C0F14BA7EEF902085819C6C0EEF8020C59 +:109890003019A1D8EF690210EF48020CCE7B581B9B +:1098A000CE414B273008EEF9020C4B1AA3A9EF6802 +:1098B0000210A1D9B488EF49020CCD8B4ACA3008F6 +:1098C0001589F0091800C4C14A87EEF8020CEDB8FA +:1098D0000001CD31EF380210F2081800CCE1F01F82 +:1098E0000025F01F0025EEF8020C3016E018FFF9F5 +:1098F000EF48020CCBBBF01F002049C7EEF9020C69 +:10990000EDB90004CBA11298A5C8EF48020CCAEB30 +:1099100049673019EEF8020CEF690210A1D8300641 +:10992000EF48020CCA3B4917EEF8020CA3C81A9C78 +:10993000EF48020CF01F001140085828C050F01FDB +:10994000000DF01F000D300A4898B08AEF39021060 +:10995000F4091800C9204858F16A0210C87BB4887D +:10996000C8CB4838B089C89B000077AC000079C4E8 +:1099700080021298800196C8800177A4D401201D2E +:1099800048F9F2F802045828C0302FFDD80AF339FC +:1099900002103008F0091800C0711A9CF01F00096D +:1099A00040085828CF31F01F0008CF00F8CAFFE266 +:1099B000300B169CF01F00052FFDD802000077AC7D +:1099C000800177A4800210FC8001914CEBCD408097 +:1099D000201D4967EEF802045828C0503FFC2FFDB7 +:1099E000E3CD8080F01F0012C051302C2FFDE3CD5D +:1099F0008080EEF9020CEDB90002CF10EDB9000144 +:109A0000C031309CCEDB1A9CF01F000A4008580879 +:109A1000CED0F01F0009581CCE21EEF8020CA3A8EE +:109A2000EF48020CCDDB0000000077AC800210FC98 +:109A3000800211088001F370EBCD40C020AD189872 +:109A40001697580BC07076DC581CC0402F6DE3CDC4 +:109A500080C0109BF13A0020FAC6FFFE0C9CF01F5C +:109A6000001B0C9B209D322A1A9CF01F0019F01F2E +:109A700000192F7D580CCEB0793CFACBFFDCF01FDB +:109A8000001640985818C150C0923058F808180075 +:109A9000F9BC0003F9BC0102CDAB5828C030301C22 +:109AA000CD6B5807C0D06EC85808C0A0305CCCFB46 +:109AB0005807C0806EC85808C050304CCC8B307CE2 +:109AC000CC6B306CCC4B00008002113C8002E7363E +:109AD0008001F2BC800195E8D43120EDFEF3029CB8 +:109AE000FAC1FFA4E6F8020C18971694E2180006D3 +:109AF000C040309C2F2DD832F01F00A1C040308CC8 +:109B00002F2DD832E74C02085807C130BA8CF5D453 +:109B1000C008FAC6FFFEBA9A0E9B0C9CF01F009973 +:109B20000C9C1B9BF01F0098581CC0802F2DDC3A0A +:109B3000BA97BA87FAC6FFFECF4B029CF01F00937C +:109B40001892581CCF41029A089B0E9CF01F00905F +:109B50001890C580E6C7FFE8E6C6FE08EF3A002089 +:109B6000E1380020F4081800E08000A02C470C37F2 +:109B7000CF6130070E950E9B009CF01F0086E136EA +:109B800000381897CD40585CE08000C2E08B00B9E7 +:109B9000583CE08000B4584CC020300CF01F007ED0 +:109BA0003048F0061800E08000A83054E80618009D +:109BB000E08000983028F0061800E080009A300C11 +:109BC000F01F0076E8061800E080008F300CF01FD0 +:109BD00000745837E08B007960F85818C710301CB3 +:109BE000F01F0070300B4F0CF01F0070CA00F01F08 +:109BF0000070581CC9C1E6F8020CA1B8E748020C75 +:109C0000C7ABFAC5FFCE306A029B0A9CF01F005D0D +:109C1000FAC6FFDE0C9CF01F00673FF81AD00C9BC1 +:109C20001AD2310A1AD8204D1A9CF01F00630A9BE1 +:109C3000202D306A1A9CF01F00600499209DE6CC0C +:109C4000FDECFB380069FAEA0048FAE20050FB68D4 +:109C50000021FAEB0000FB380068FAEA0058FAE34A +:109C60000008FAE20060FAEB0010FAE30018FB6863 +:109C70000020303A0098129B4C03F01F00502EED4C +:109C80001895581CFE91FF54009BE6FC0214F01F2F +:109C9000004C5BBCC620580CC3E1189BE6FC0214C8 +:109CA000F01F00483FFCC27B0E9C009BF01F00464B +:109CB000FE91FF5E6EB55805EA071700C5DB302C34 +:109CC000F01F0038C90B5805FE90FF320A9AE13B9D +:109CD0000020009CF01F003D3018E7480208C7DB59 +:109CE000301CF01F002E301CF01F002DC73B302C05 +:109CF000F01F002AC6CB303CCFCB301CC50B586CB4 +:109D0000C080587CFE91FF4B308CC49B307CC47B60 +:109D1000305CC45B344CF01F002E089A18960E9BE2 +:109D2000F01F0018029B306AED640020ECCCFFDFCE +:109D3000F01F001400991AD60A984A6A009B31CC89 +:109D4000F01F00252FFD580CC0E0E6F8020C0A9C1D +:109D5000A1B8E748020CCCFA009BE6FC0214F01F05 +:109D60000019CC8A189BE6FC0214F01F00160C9C0C +:109D7000F01F001A3FFCCBFA000077AC800210FC09 +:109D8000800091DC800178BC800179788001914C61 +:109D900080019A3880015F60800163488001639C84 +:109DA00080017A1080018F208001FD408001F3A0A6 +:109DB000800177C08002E73680020BFC80020A70C7 +:109DC00080020B408000917C800214708000920021 +:109DD00080019E0080016E78800091E8D401202DE2 +:109DE000FACAFFF415D8BAD87409500915C8300B4F +:109DF000BAC8169CF01F00022FEDD80280019AD835 +:109E0000EBCD40E049F51697EAFC0214300BF01F49 +:109E1000001EF01F001EEEC6FFDFEF3B00200C9A75 +:109E20000E9CF01F001BC150EAF8020CA1D8202D97 +:109E30000C9BEB48020C306A1A9CEF360020F01F96 +:109E400000150C9B0E9CF01F00142FED581CC060D9 +:109E5000EAF8020CEDB80001C0600E9CF01F000F84 +:109E6000E3CD80E0301B300CF01F000D302B300CA8 +:109E7000F01F000B0E9CF01F0009E3CD80E00000F6 +:109E8000000077AC80020B40800196C88001914CA5 +:109E90008002E73680019AD8800091E88001984CD2 +:109EA000EBCD40E0202D18951697580CC0513FFC83 +:109EB0002FEDE3CD80E0580BCFB0E04B0020FE9BB0 +:109EC000FFF8FAC6FFFE306AE06B00FF0C9CF01F43 +:109ED0000008306A202D0C9B1A9CF01F00060E9B78 +:109EE0000A9CF01F00052FEDCE4B0000800091D0A2 +:109EF0008002E73680019AD8EBCD408048B7EEF873 +:109F000002045828C030E3CFC080F01F0009581C5D +:109F1000F9BC0109EFF80083F9B90010F1D9E03874 +:109F2000EFF80A83E3CD8080000077AC80020A84DA +:109F3000D40148B9F338000A104CF36C000A7218C7 +:109F40005808C0B05828C0803028726C9318301B55 +:109F500072595D19D80AD80ADA0A0000000079C8D7 +:109F60004828916B915C5EFC000079C8EBCD40C045 +:109F7000203D5CBBBA89502B109714965CC85C8856 +:109F80005807C0513FFC2FDDE3CD80C05C784959B4 +:109F90005018B28C3048FAC9FFF8300A306B492C9F +:109FA000F01F0012581CCEF11B89491A1898B48969 +:109FB000306B1A99300A48FCF01F000C581CCE3147 +:109FC00048D8300AB007306B304848CCFA0800094E +:109FD000F01F0006581CCD7148989146CD5B0000DB +:109FE00000007A288003B8108001776C0000025CC2 +:109FF0008003B8180000025E8003B820000079C812 +:10A00000EBCD40C030074A161AD78D078D17ED6784 +:10A010000008ED670009ED67000A8D378D470E983F +:10A020000E9949BA0E9B302CF01F001A2FFD580CC8 +:10A03000C0413FFCE3CD80C01AD70E980E99496A03 +:10A040000E9B304CF01F00132FFD580CCF301AD749 +:10A050000E980E99491A0E9B32ECF01F000E2FFD40 +:10A06000580CCE8031483019E06A138830AB0E9C12 +:10A07000F01F000B581CCDE10E9BECCCFFF4F01F41 +:10A080000009581CCD71CD7B000079C88001A0F07B +:10A0900080016E788001A1A08001A0A480019F6C46 +:10A0A000800144F8D401F01F000E48EA74085838C3 +:10A0B000C12030289508F539000A3008F009180049 +:10A0C000C020D8023018300B9518487C487AF01F11 +:10A0D0000008D80230089508D80200008001DA365E +:10A0E000000079C88001DA5880018E348001EF20A9 +:10A0F000EBCD408048973018EF6800086E4958094A +:10A10000C0A0308CF01F00066E4C3009485A6E3BE0 +:10A11000F01F0005E3CD8080000079C880019F30EA +:10A120008001A1CC80014558D4014989F80C11FF68 +:10A13000F338000A106CF36C000AC1E1F33800092F +:10A14000F8081800C19072185808C161F338000867 +:10A15000F8081800C06072085808C0F05818C0C04D +:10A160003018300B931848AA48ACF01F000B300B86 +:10A17000331CF01F000AD802301B485A930B488C3E +:10A18000F01F0005D8020000000079C880018E345D +:10A190008001DA588001EF2080016D6C8001DA8443 +:10A1A000EBCD404048766C3CF01F0007308CF01F30 +:10A1B000000730083009ED6800088D09E3CD8040C4 +:10A1C000000079C8800145308001A128D401308C7D +:10A1D000F01F0002D80A00008001A128EBCD4080CA +:10A1E00048E76E185828C030E3CD80806E58300B99 +:10A1F0006E6C5D18300B8F1B4899F2FA0324F2F84D +:10A2000003201438C040169CF01F0006300B332C7E +:10A21000F01F0005E3CD8080000079C8000084CCE9 +:10A2200080018CE480016D6CEBCD40C018971696D0 +:10A23000F01F0009C0C06E0C581CC0700C9B0E9C17 +:10A24000F01F0006CF91302CE3CD80C03FDCE3CD82 +:10A2500080C000008001462C80014636EBCD404096 +:10A26000301818969908F01F00040C9CF01F00038A +:10A27000E3CD80408001463280014634D401580C41 +:10A28000C030F01F0002D80280014630D4013008EF +:10A290009908F01F0002D8028001462ED401189EB2 +:10A2A000580AC0C196199688F9D9C010103CC165EA +:10A2B000F2C8FFFF973AB618D802581AC06096192C +:10A2C000F2C8FFFFB618D802969996881039C0F4E4 +:10A2D0007648F0090709B889CF3B1D897648F00C0C +:10A2E0000B099619F2C8FFFFB618D8023008973844 +:10A2F000B8889619F2C8FFFFB618D802EBCD408097 +:10A300001897580AC1D1961C9689FDDCC010FCC86C +:10A31000FFFF1238F7FA4A03F7F85004F1DEE508B8 +:10A32000EFF95801F1F95E00EFFA5800F1FA5E0119 +:10A33000F7FC5201F8C8FFFEB618E3CD8080581A2A +:10A34000C070961CF8C8FFFEB618E3CD8080969AC0 +:10A350009689F4C8FFFF1238C09476481408119902 +:10A36000B889118AB89A961CCEEB30089738B8088D +:10A37000961CF8C8FFFEB618E3CD8080EBCD408078 +:10A38000189E169C580AC0F1961B9889EFDBC010E6 +:10A39000EEC8FFFD1238C205F6C8FFFC993AB8189E +:10A3A000E3CD8080581AC070981BF6C8FFFCB8181F +:10A3B000E3CD8080969B9889F6C8FFFD1238C1C412 +:10A3C000784A160A15B8BC8815A9BC991598BCA876 +:10A3D0001589BCB9CEAB1DB8784A0E0AB4881DA940 +:10A3E000B4991D98B4A81D89B4B9981BF6C8FFFC90 +:10A3F000B818E3CD8080300899389D08981BF6C8BE +:10A40000FFFCB818E3CD8080EBCD4068189316951B +:10A410001496F01F000C0C9A0A9BE6CCFFFFF01F6D +:10A4200000090C9A0A9BE6CCFFFEF01F00060C9A6E +:10A430000A9BE6CCFFFDF01F0003E3CD806800001F +:10A440008001A29CD4211697189596141496F01F9B +:10A4500000080C9A0E9BEACCFFFEF01F00060BC80A +:10A460005808F1D4E108EFF81C01D8228001A2FCC1 +:10A470008001A408EBCD4068189316951496F01F40 +:10A4800000060C9A0A9BE6CCFFFCF01F0003E3CD0C +:10A49000806800008001A37CEBCD4068189316957E +:10A4A0001496F01F00090C9A0A9BE6CCFFFCF01FE3 +:10A4B00000070C9A0A9BE6CCFFFAF01F0004E3CDDC +:10A4C000806800008001A37C8001A2FCEBCD406885 +:10A4D000189316951496F01F000F0C9A0A9BE6CC61 +:10A4E000FFFCF01F000D0C9A0A9BE6CCFFFBF01F4F +:10A4F000000A0C9A0A9BE6CCFFFAF01F00070C9AA0 +:10A500000A9BE6CCFFF9F01F0004E3CD8068000051 +:10A510008001A37C8001A29CEBCD40681893169526 +:10A520001496F01F000C0C9A0A9BE6CCFFFCF01F5F +:10A53000000A0C9A0A9BE6CCFFFAF01F00080C9A5E +:10A540000A9BE6CCFFF9F01F0005E3CD8068000010 +:10A550008001A37C8001A2FC8001A29CEBCD40681D +:10A56000189316951496F01F00150C9A0A9BE6CCCA +:10A57000FFFCF01F00120C9A0A9BE6CCFFF8F01FBC +:10A5800000100C9A0A9BE6CCFFF6F01F000D0C9A07 +:10A590000A9BE6CCFFF4F01F00090C9A0A9BE6CC5C +:10A5A000FFF0F01F00070C9A0A9BE6CCFFEEF01FAD +:10A5B0000004E3CD806800008001A37C8001A2FC40 +:10A5C000EBCD4068189316951496F01F00090C9A6D +:10A5D0000A9BE6CCFFFCF01F00060C9A0A9BE6CC17 +:10A5E000FFF8F01F0003E3CD806800008001A37C2A +:10A5F000EBCD4068189316951496F01F00060C9A40 +:10A600000A9BE6CCFFFCF01F0003E3CD806800004E +:10A610008001A37CEBCD4068189316951496F01F2B +:10A62000000C0C9A0A9BE6CCFFFCF01F00090C9A68 +:10A630000A9BE6CCFFF8F01F00060C9A0A9BE6CCBA +:10A64000FFF4F01F0003E3CD806800008001A37CCD +:10A65000EBCD4068189316951496F01F00330C9AB2 +:10A660000A9BE6CCFFFCF01F00300C9A0A9BE6CC5C +:10A67000FFF8F01F002D0C9A0A9BE6CCFFF4F01FA8 +:10A68000002B0C9A0A9BE6CCFFF2F01F00280C9AD4 +:10A690000A9BE6CCFFF0F01F00250C9A0A9BE6CC43 +:10A6A000FFEEF01F00220C9A0A9BE6CCFFECF01F95 +:10A6B000001F0C9A0A9BE6CCFFEAF01F001C0C9AC4 +:10A6C0000A9BE6CCFFE8F01F00190C9A0A9BE6CC27 +:10A6D000FFE6F01F00160C9A0A9BE6CCFFE4F01F81 +:10A6E00000130C9A0A9BE6CCFFE2F01F00110C9AB3 +:10A6F0000A9BE6CCFFE1F01F000E0C9A0A9BE6CC09 +:10A70000FFE0F01F00090C9A0A9BE6CCFFDCF01F6B +:10A7100000060C9A0A9BE6CCFFD8F01F0005E3CD9B +:10A72000806800008001A37C8001A2FC8001A29CC3 +:10A73000EBCD4068189316951496F01F00120C9AF2 +:10A740000A9BE6CCFFFCF01F00100C9A0A9BE6CC9B +:10A75000FFFBF01F000D0C9A0A9BE6CCFFFAF01FDE +:10A76000000A0C9A0A9BE6CCFFF9F01F00070C9A2E +:10A770000A9BE6CCFFF8F01F0004E3CD80680000E0 +:10A780008001A37C8001A29CEBCD406818931695B4 +:10A790001496F01F00060C9A0A9BE6CCFFFCF01FF3 +:10A7A0000003E3CD806800008001A37CEBCD40680E +:10A7B000189316951496F01F00060C9A0A9BE6CC87 +:10A7C000FFFCF01F0003E3CD806800008001A37C44 +:10A7D000EBCD4068189316951496F01F00060C9A5E +:10A7E0000A9BE6CCFFFCF01F0003E3CD806800006D +:10A7F0008001A37CEBCD4068189316951496F01F4A +:10A8000000060C9A0A9BE6CCFFFCF01F0003E3CD88 +:10A81000806800008001A37CEBCD406818931695FA +:10A820001496F01F00060C9A0A9BE6CCFFFCF01F62 +:10A830000003E3CD806800008001A37CEBCD40687D +:10A84000189316951496F01F00060C9A0A9BE6CCF6 +:10A85000FFFCF01F0003E3CD806800008001A37CB3 +:10A86000EBCD4068189316951496F01F00060C9ACD +:10A870000A9BE6CCFFFCF01F0003E3CD80680000DC +:10A880008001A37CEBCD4068189316951496F01FB9 +:10A8900000060C9A0A9BE6CCFFFCF01F0003E3CDF8 +:10A8A000806800008001A37CEBCD4068189316956A +:10A8B0001496F01F00060C9A0A9BE6CCFFFCF01FD2 +:10A8C0000004E3CD806800008001A37C8001A650D5 +:10A8D000EBCD4068189316951496F01F00060C9A5D +:10A8E0000A9BE6CCFFFCF01F0003E3CD806800006C +:10A8F0008001A37CEBCD4068189316951496F01F49 +:10A9000000090C9A0A9BE6CCFFFCF01F00060C9A8B +:10A910000A9BE6CCFFF8F01F0003E3CD806800003F +:10A920008001A37CEBCD4068189316951496F01F18 +:10A9300000060C9A0A9BE6CCFFFCF01F0003E3CD57 +:10A94000806800008001A37CEBCD406818931695C9 +:10A950001496F01F00090C9A0A9BE6CCFFFCF01F2E +:10A9600000060C9A0A9BE6CCFFF8F01F0003E3CD2B +:10A97000806800008001A37CEBCD40681893169599 +:10A980001496F01F00090C9A0A9BE6CCFFFCF01FFE +:10A9900000060C9A0A9BE6CCFFF8F01F0003E3CDFB +:10A9A000806800008001A37CEBCD40681893169569 +:10A9B0001496F01F00060C9A0A9BE6CCFFFCF01FD1 +:10A9C0000003E3CD806800008001A37CEBCD4068EC +:10A9D000189316951496F01F00090C9A0A9BE6CC62 +:10A9E000FFFCF01F00060C9A0A9BE6CCFFF8F01F54 +:10A9F0000003E3CD806800008001A37CEBCD4068BC +:10AA0000189316951496F01F00060C9A0A9BE6CC34 +:10AA1000FFFCF01F0003E3CD806800008001A37CF1 +:10AA2000EBCD4068189316951496F01F00090C9A08 +:10AA30000A9BE6CCFFFCF01F00060C9A0A9BE6CCB2 +:10AA4000FFF8F01F0003E3CD806800008001A37CC5 +:10AA5000EBCD4068189316951496F01F00090C9AD8 +:10AA60000A9BE6CCFFFCF01F00060C9A0A9BE6CC82 +:10AA7000FFF8F01F0003E3CD806800008001A37C95 +:10AA8000EBCD4068189316951496F01F00060C9AAB +:10AA90000A9BE6CCFFFCF01F0003E3CD80680000BA +:10AAA0008001A37CEBCD4068189316951496F01F97 +:10AAB00000060C9A0A9BE6CCFFFCF01F0003E3CDD6 +:10AAC000806800008001A37CEBCD40681893169548 +:10AAD0001496F01F00060C9A0A9BE6CCFFFCF01FB0 +:10AAE0000003E3CD806800008001A37CEBCD4068CB +:10AAF000189316951496F01F00060C9A0A9BE6CC44 +:10AB0000FFFCF01F0004E3CD806800008001A37CFF +:10AB10008001A29CEBCD4068189316951496F01F07 +:10AB200000060C9A0A9BE6CCFFFCF01F0004E3CD64 +:10AB3000806800008001A37C8001D434EBCD4068A4 +:10AB4000189316951496F01F00330C9A0A9BE6CCC6 +:10AB5000FFDEF01F00310C9A0A9BE6CCFFD4F01FF9 +:10AB6000002F0C9A0A9BE6CCFFC2F01F002D0C9A16 +:10AB70000A9BE6CCFFBFF01F002B0C9A0A9BE6CC89 +:10AB8000FFBCF01F00290C9A0A9BE6CCFFB0F01F17 +:10AB900000270C9A0A9BE6CCFFACF01F00250C9A0C +:10ABA0000A9BE6CCFFA4F01F00230C9A0A9BE6CC7C +:10ABB000FF9CF01F00210C9A0A9BE6CCFF98F01F27 +:10ABC000001F0C9A0A9BE6CCFF8CF01F001D0C9A0C +:10ABD0000A9BE6CCFF72F01F001B0C9A0A9BE6CC86 +:10ABE000FF68F01F00190C9A0A9BE6CCFF44F01F87 +:10ABF00000170C9A0A9BE6CCFF50F01F00150C9A28 +:10AC00000A9BE6CCFF30F01F0013E3CD8068000004 +:10AC10008001D3448001D2DC8001D2748001CAF863 +:10AC20008001C9D88001D8608001CA688001CA9CAF +:10AC30008001CA0C8001C9A48001D4348001CDB444 +:10AC40008001CE848001D5588001D6B08001D4E443 +:10AC50008001CFFCEBCD4068189316951496F01F39 +:10AC6000000F0C9A0A9BE6CCFFFCF01F000D0C9A1B +:10AC70000A9BE6CCFFFAF01F000B0C9A0A9BE6CC6D +:10AC8000FFF9F01F00080C9A0A9BE6CCFFF8F01FB2 +:10AC90000006E3CD806800008001A37C8001A2FC57 +:10ACA0008001A29C8001AB3CEBCD406C14951296C8 +:10ACB00018921693E06A00DC129B0A9CF01F001A9F +:10ACC000ECC9FF98EACAFF98069B049CF01F001786 +:10ACD000ECC9FFBCEACAFFBC069B049CF01F001431 +:10ACE000ECC9FF68EACAFF68069B049CF01F0011CC +:10ACF000ECC9FF50EACAFF50069B049CF01F000EEF +:10AD0000ECC9FF44EACAFF44069B049CF01F000BF9 +:10AD1000ECC9FF30EACAFF30069B049CF01F000814 +:10AD2000E3CD806C8002E7368001D1588001D24C9F +:10AD30008001D1E88001D1C08001D21C8001CF9C6C +:10AD4000EBCD40EC1296F2E80000F4E90000ECE8EC +:10AD50000008F4E90008ECE20010F4E30010ECE86D +:10AD6000001814971695F4E90018E06B00E85D15DB +:10AD70008F7CC0D030CA6C7BF01F00066E7A6C7975 +:10AD8000149C0A9B2F492F4AF01F0003E3CD80EC4F +:10AD9000800091DC8001ACA8EBCD40C014971696E2 +:10ADA00074385808C160949E948AF60E00081438CE +:10ADB000F5DEE916F9B80900EFF89A03580CC090CF +:10ADC0005809C0C1189B0C9A6E4C1C0CF01F000A4D +:10ADD0008E180C08AE18E3CD80C05819CFA16E4B69 +:10ADE0000C9A1C0BF01F00048E180C08AE18E3CD53 +:10ADF00080C00000800091DCEBCD40E016971496F7 +:10AE00001895581AC0B0F01F000C0C99189B0E9A98 +:10AE10000A9CF01F000AE3CD80E09698968614996C +:10AE20001016169A0C9BF01F00053008EA060B0856 +:10AE3000E3CD80E0800091B88001AD98EBCD406813 +:10AE4000189316951496F01F00060C9A0A9BE6CCF0 +:10AE5000FFFCF01F0004E3CD806800008001A37CAC +:10AE60008001ADF8EBCD4068189316951496F01F4D +:10AE700000060C9A0A9BE6CCFFFCF01F0004E3CD11 +:10AE8000806800008001A37C8001ADF8EBCD4068B4 +:10AE9000189316951496F01F000F0C9A0A9BE6CC97 +:10AEA000FFFCF01F000C0C9A0A9BE6CCFFF8F01F89 +:10AEB00000090C9A0A9BE6CCFFF4F01F00060C99DF +:10AEC0000A9AE6CCFFF0320BF01F0003E3CD806856 +:10AED0008001A37C8001AD98EBCD40681893169556 +:10AEE0001496F01F000C0C9A0A9BE6CCFFFCF01F96 +:10AEF00000090C9A0A9BE6CCFFF8F01F00060C999B +:10AF00000A9AE6CCFFF4320BF01F0003E3CD806811 +:10AF10008001A37C8001AD98EBCD40681893169515 +:10AF20001496F01F000C0C9A0A9BE6CCFFFCF01F55 +:10AF300000090C9A0A9BE6CCFFF8F01F00070C9959 +:10AF40000A9AE6CCFFF7303BF01F0004E3CD80689F +:10AF50008001A37C8001A29C8001AD98EBCD40686C +:10AF6000189316951496F01F00180C9A0A9BE6CCBD +:10AF7000FFFCF01F00150C9A0A9BE6CCFFF8F01FAF +:10AF800000120C9A0A9BE6CCFFF4F01F000F0C9AFB +:10AF90000A9BE6CCFFF0F01F000C0C9A0A9BE6CC53 +:10AFA000FFECF01F000A0C9A0A9BE6CCFFEAF01FA8 +:10AFB00000080C990A9AE6CCFFE9303BF01F000527 +:10AFC000E3CD80688001A37C8001A2FC8001A29C6B +:10AFD0008001AD98EBCD4068189316951496F01F3C +:10AFE00000280C9A0A9BE6CCFFFCF01F00250C9A67 +:10AFF0000A9BE6CCFFF8F01F00220C9A0A9BE6CCD5 +:10B00000FFF4F01F00200C9A0A9BE6CCFFF2F01F21 +:10B01000001E0C9A0A9BE6CCFFF1F01F001B0C9A55 +:10B020000A9BE6CCFFF0F01F00180C9A0A9BE6CCB6 +:10B03000FFEFF01F00150C9A0A9BE6CCFFEEF01F05 +:10B0400000120C990A9AE6CCFFED306BF01F000F4E +:10B050000C9A0A9BE6CCFFE7F01F000B0C9A0A9BA8 +:10B06000E6CCFFE6F01F00080C990A9AE6CCFFE553 +:10B07000320BF01F0006E3CD806800008001A37C46 +:10B080008001A2FC8001A29C8001AD98EBCD4068BC +:10B09000189316951496F01F00150C9A0A9BE6CC8F +:10B0A000FFFCF01F00120C9A0A9BE6CCFFF8F01F81 +:10B0B000000F0C9A0A9BE6CCFFF4F01F000C0C9AD0 +:10B0C0000A9BE6CCFFF0F01F000A0C9A0A9BE6CC24 +:10B0D000FFEEF01F00080C990A9AE6CCFFED303B1A +:10B0E000F01F0005E3CD80688001A37C8001A2FCF5 +:10B0F0008001A29C8001AD98EBCD40681893169515 +:10B100001496F01F00120C9A0A9BE6CCFFFCF01F6D +:10B1100000100C9A0A9BE6CCFFFBF01F000D0C9967 +:10B120000A9AE6CCFFFA302BF01F000A0C9A0A9B11 +:10B13000E6CCFFF8F01F00050C9A0A9BE6CCFFF462 +:10B14000F01F0002E3CD80688001A37C8001A29CF7 +:10B150008001AD98EBCD4068189316951496F01FBA +:10B1600000120C9A0A9BE6CCFFFCF01F00100C9A10 +:10B170000A9BE6CCFFFBF01F000D0C990A9AE6CC67 +:10B18000FFFA302BF01F000A0C9A0A9BE6CCFFF85E +:10B19000F01F00050C9A0A9BE6CCFFF4F01F00029A +:10B1A000E3CD80688001A37C8001A29C8001AD98E2 +:10B1B000EBCD4068189316951496F01F000C0C9A6E +:10B1C0000A9BE6CCFFFCF01F000A0C9A0A9BE6CC17 +:10B1D000FFFBF01F00070C990A9AE6CCFFFA302B10 +:10B1E000F01F0004E3CD80688001A37C8001A29C55 +:10B1F0008001AD98EBCD4068189316951496F01F1A +:10B2000000090C9A0A9BE6CCFFFCF01F00070C9982 +:10B210000A9AE6CCFFFB303BF01F0004E3CD8068C8 +:10B220008001A37C8001A29C8001AD98EBCD406899 +:10B23000189316951496F01F00090C9A0A9BE6CCF9 +:10B24000FFFCF01F00070C990A9AE6CCFFFB303B8D +:10B25000F01F0004E3CD80688001A37C8001A29CE4 +:10B260008001AD98EBCD4068189316951496F01FA9 +:10B2700000090C9A0A9BE6CCFFFCF01F00070C9912 +:10B280000A9AE6CCFFFB303BF01F0004E3CD806858 +:10B290008001A37C8001A29C8001AD98EBCD406829 +:10B2A000189316951496F01F000C0C9A0A9BE6CC86 +:10B2B000FFFCF01F00090C9A0A9BE6CCFFF8F01F78 +:10B2C00000070C990A9AE6CCFFF7303BF01F000408 +:10B2D000E3CD80688001A37C8001A29C8001AD98B1 +:10B2E000EBCD4068189316951496F01F000C0C9A3D +:10B2F0000A9BE6CCFFFCF01F00090C9A0A9BE6CCE7 +:10B30000FFF8F01F00070C990A9AE6CCFFF7303BD4 +:10B31000F01F0004E3CD80688001A37C8001A29C23 +:10B320008001AD98EBCD4068189316951496F01FE8 +:10B33000000C0C9A0A9BE6CCFFFCF01F00090C9A4B +:10B340000A9BE6CCFFF8F01F00070C990A9AE6CC9E +:10B35000FFF7303BF01F0004E3CD80688001A37C41 +:10B360008001A29C8001AD98EBCD406818931695A2 +:10B370001496F01F000C0C9A0A9BE6CCFFFCF01F01 +:10B3800000090C9A0A9BE6CCFFF8F01F00070C9905 +:10B390000A9AE6CCFFF7303BF01F0004E3CD80684B +:10B3A0008001A37C8001A29C8001AD98EBCD406818 +:10B3B000189316951496F01F00090C9A0A9BE6CC78 +:10B3C000FFFCF01F00070C990A9AE6CCFFFB303B0C +:10B3D000F01F0004E3CD80688001A37C8001A29C63 +:10B3E0008001AD98EBCD4068169514961893F01F28 +:10B3F00000220C990A9AE6CCFFFC308BF01F001F4C +:10B400000C9A0A9BE6CCFFF4F01F001B0C9A0A9BD7 +:10B41000E6CCFFF0F01F00180C9A0A9BE6CCFFEC7C +:10B42000F01F00150C9A0A9BE6CCFFE8F01F0012F3 +:10B430000C9A0A9BE6CCFFE4F01F000F0C9A0A9BC3 +:10B44000E6CCFFE0F01F000E0C9A0A9BE6CCFFDE74 +:10B45000F01F000B0C9A0A9BE6CCFFDCF01F0008E3 +:10B460000C990A9AE6CCFFDA302BF01F0004E3CDEA +:10B47000806800008001A37C8001AD988001A2FC5F +:10B48000EBCD4068189316951496F01F00090C9A9E +:10B490000A9BE6CCFFFCF01F00070C990A9AE6CC49 +:10B4A000FFFB303BF01F0004E3CD80688001A37CEC +:10B4B0008001A29C8001AD98EBCD40681695149652 +:10B4C0001893F01F00060C990A9AE6CCFFFC308B0B +:10B4D000F01F0003E3CD80688001A37C8001AD985C +:10B4E000EBCD4068189316951496F01F00090C9A3E +:10B4F0000A9BE6CCFFFCF01F00070C990A9AE6CCE9 +:10B50000FFFB303BF01F0004E3CD80688001A37C8B +:10B510008001A29C8001AD98EBCD406818931695F0 +:10B520001496F01F00100C9A0A9BE6CCFFFCF01F4B +:10B53000000E0C990A9AE6CCFFFB306BF01F000B53 +:10B540000A9AE6CCFFF50C99306BF01F00080C9AB4 +:10B550000A9BE6CCFFEFF01F0004E3CD80680000FB +:10B560008001A37C8001A29C8001AD98EBCD406856 +:10B57000169514961893F01F000C0C990A9AE6CCB5 +:10B58000FFFC306BF01F00090C9A0A9BE6CCFFF61B +:10B59000F01F00070C9A0A9BE6CCFFF5F01F000491 +:10B5A000E3CD80688001A37C8001AD988001A29CDE +:10B5B000EBCD4068169514961893F01F000D0C996A +:10B5C0000A9AE6CCFFFC306BF01F000A0A9AE6CC20 +:10B5D000FFF60C99302BF01F00070C9A0A9BE6CC63 +:10B5E000FFF4F01F0005E3CD806800008001A37C1C +:10B5F0008001AD988001AB3CEBCD40681695149668 +:10B600001893F01F000D0C990A9AE6CCFFFC306BE2 +:10B61000F01F000A0A9AE6CCFFF60C99302BF01FB7 +:10B6200000070C9A0A9BE6CCFFF4F01F0005E3CD5F +:10B63000806800008001A37C8001AD988001AB3C54 +:10B64000EBCD4068169514961893F01F00100C99D6 +:10B650000A9AE6CCFFFC306BF01F000D0C9A0A9B97 +:10B66000E6CCFFF6F01F000B0C9A0A9BE6CCFFF429 +:10B67000F01F00080C990A9AE6CCFFF2302BF01F5D +:10B680000004E3CD806800008001A37C8001AD98B8 +:10B690008001A2FCEBCD4068169514961893F01F1C +:10B6A000000A0C990A9AE6CCFFFC306BF01F0007E9 +:10B6B0000C990A9AE6CCFFF6302BF01F0004E3CD7C +:10B6C000806800008001A37C8001AD98EBCD4068CC +:10B6D000169514961893F01F000A0C990A9AE6CC56 +:10B6E000FFFC306BF01F00070C990A9AE6CCFFF6BE +:10B6F000302BF01F0004E3CD806800008001A37CA4 +:10B700008001AD98EBCD4068189316951496F01F04 +:10B7100000220C9A0A9BE6CCFFFCF01F00200C9A3A +:10B720000A9BE6CCFFFAF01F001D0C9A0A9BE6CCA0 +:10B73000FFF8F01F001A0C990A9AE6CCFFF6306B5E +:10B74000F01F00170C9A0A9BE6CCFFF0F01F0015C3 +:10B750000C9A0A9BE6CCFFEFF01F00120C990A9A94 +:10B76000E6CCFFEE302BF01F000E0C9A0A9BE6CCC5 +:10B77000FFECF01F00090C9A0A9BE6CCFFE8F01FD3 +:10B7800000060C9A0A9BE6CCFFE4F01F0007E3CD0D +:10B79000806800008001A37C8001A2FC8001AD983C +:10B7A0008001A29C8001AB3CEBCD406816951496BD +:10B7B0001893F01F000C0C990A9AE6CCFFFC306B32 +:10B7C000F01F00090C9A0A9BE6CCFFF6F01F000759 +:10B7D0000C9A0A9BE6CCFFF5F01F0004E3CD8068CD +:10B7E0008001A37C8001AD988001A29CEBCD4068D4 +:10B7F000169514961893F01F000C0C990A9AE6CC33 +:10B80000FFFC306BF01F00090C9A0A9BE6CCFFF698 +:10B81000F01F00070C9A0A9BE6CCFFF5F01F00040E +:10B82000E3CD80688001A37C8001AD988001A29C5B +:10B83000EBCD4068189316951496F01F00120C9AE1 +:10B840000A9BE6CCFFFCF01F00100C9A0A9BE6CC8A +:10B85000FFFAF01F000D0C9A0A9BE6CCFFF8F01FD0 +:10B86000000A0A9AE6CCFFF60C99306BF01F00072D +:10B870000C9A0A9BE6CCFFF0F01F0005E3CD806830 +:10B880008001A37C8001A2FC8001AD988001AB3CCB +:10B89000EBCD4068189316951496F01F00100C9A83 +:10B8A0000A9BE6CCFFFCF01F000E0C9A0A9BE6CC2C +:10B8B000FFFAF01F000B0C990A9AE6CCFFF8306BE8 +:10B8C000F01F00080C990A9AE6CCFFF2302BF01F0B +:10B8D0000005E3CD806800008001A37C8001A2FC0C +:10B8E0008001AD98EBCD4068189316951496F01F23 +:10B8F00000090C9A0A9BE6CCFFFFF01F00060C998A +:10B900000A9AE6CCFFFE302BF01F0003E3CD8068DF +:10B910008001A29C8001AD98EBCD406816951496ED +:10B920001893F01F00130C990A9AE6CCFFFF306BB6 +:10B93000F01F00100C9A0A9BE6CCFFF9F01F000CD8 +:10B940000C9A0A9BE6CCFFF8F01F00090A9AE6CC95 +:10B95000FFF70C99306BF01F00070C9A0A9BE6CC9E +:10B96000FFF1F01F0003E3CD806800008001A29C7E +:10B970008001AD98EBCD4068189316951496F01F92 +:10B9800000060C9A0A9BE6CCFFFCF01F0004E3CDF6 +:10B99000806800008001A37C8001B918EBCD40686D +:10B9A0001696149518931499169A306BF01F000888 +:10B9B0000A9A0C9BE6CCFFFAF01F00060A9A0C9B31 +:10B9C000E6CCFFF9F01F0003E3CD80688001AD985D +:10B9D0008001A29CEBCD4068189316951496F01F39 +:10B9E00000060C9A0A9BE6CCFFFCF01F0004E3CD96 +:10B9F000806800008001A37C8001B99CEBCD406889 +:10BA0000189316951496F01F00090C9A0A9BE6CC21 +:10BA1000FFFFF01F00060C990A9AE6CCFFFE306B80 +:10BA2000F01F0003E3CD80688001A29C8001AD98E7 +:10BA3000EBCD4068189316951496F01F00060C9AEB +:10BA40000A9BE6CCFFFCF01F0004E3CD80680000F9 +:10BA50008001A37C8001B9FCD4011499169A308B23 +:10BA6000F01F0002D80200008001AD98EBCD4068C5 +:10BA7000169514961893F01F00090A9AE6CCFFFC5D +:10BA80000C99306BF01F00060C9A0A9BE6CCFFF66F +:10BA9000F01F0004E3CD80688001A37C8001AD9895 +:10BAA0008001A2FCEBCD4068189316951496F01F08 +:10BAB00000090C9A0A9BE6CCFFFCF01F00070C99CA +:10BAC0000A9AE6CCFFFB303BF01F0004E3CD806810 +:10BAD0008001A37C8001A29C8001AD98D4011499BF +:10BAE000169A320BF01F0002D80200008001AD98B8 +:10BAF000EBCD4068189316951496F01F00180C9A19 +:10BB00000A9BE6CCFFE0F01F00160C9A0A9BE6CCDD +:10BB1000FFDEF01F00140C9A0A9BE6CCFFDDF01F3D +:10BB200000110C990A9AE6CCFFDC306BF01F000E76 +:10BB30000C9A0A9BE6CCFFD6F01F000C0C9A0A9BCD +:10BB4000E6CCFFCEF01F00070C9A0A9BE6CCFFCD97 +:10BB5000F01F0004E3CD80688001BADC8001A2FC04 +:10BB60008001A29C8001AD988001BA58EBCD40685D +:10BB7000189316951496F01F00060C9A0A9BE6CCB3 +:10BB8000FFFCF01F0004E3CD806800008001A37C6F +:10BB90008001BAF0D4011499169A303BF01F0002CC +:10BBA000D80200008001AD98EBCD40E018971695C3 +:10BBB0001496F01F000D6E1C580CC0800C990A9A48 +:10BBC0006E0BF01F000AE3CD80E05816C0918A99F1 +:10BBD0006A4812088F186E098A181208AA18E3CD4D +:10BBE00080E000008001A37C8001AD98EBCD40682F +:10BBF000189316951496F01F00060C9A0A9BE6CC33 +:10BC0000FFFCF01F0004E3CD806800008001A37CEE +:10BC10008001BBA8EBCD4068189316951496F01FD1 +:10BC200000100C9A0A9BE6CCFFFCF01F000E0C994A +:10BC30000A9AE6CCFFFB303BF01F000B0A9AE6CCD9 +:10BC4000FFF80C99308BF01F00080C9A0A9BE6CC89 +:10BC5000FFF0F01F0006E3CD806800008001A37CA8 +:10BC60008001A29C8001AD988001BBA8EBCD40680B +:10BC7000169514961893F01F00090A9AE6CCFFFC5B +:10BC80000C99308BF01F00060C9A0A9BE6CCFFF44F +:10BC9000F01F0004E3CD80688001A37C8001AD9893 +:10BCA0008001BBA8EBCD40801697189B580AC0F1C5 +:10BCB0008E1C8E89FDDCC010FCC8FFF91238C285CD +:10BCC000F8C8FFF88F3AAE18E3CD8080581AC070DC +:10BCD0008E1CF8C8FFF8AE18E3CD80808E9A8E894E +:10BCE000F4C8FFF91238C2C46E48140811F9B889B3 +:10BCF00011EAB89A11D9B8A911CAB8BA11B9B8C914 +:10BD000011AAB8DA1199B8E9118AB8FACE2B17F846 +:10BD10006E4A1C0AB48817E9B49917D8B4A817C991 +:10BD2000B4B917B8B4C817A9B4D91798B4E8178923 +:10BD3000B4F98E1CF8C8FFF8AE18E3CD8080300B44 +:10BD4000308A8F3BF01F00028E1CCC4B800091D0BC +:10BD5000EBCD4068189316951496F01F000C0C9AC2 +:10BD60000A9BE6CCFFF8F01F000A0C9A0A9BE6CC6F +:10BD7000FFF6F01F00070C9A0A9BE6CCFFF4F01FB9 +:10BD80000005E3CD806800008001BCA48001A2FC16 +:10BD90008001AB3CEBCD40F8206D169714961499BA +:10BDA0001895169A306BF01F002D0C9A0E9BEACC5A +:10BDB000FFFAF01F002B0C9A0E9BEACCFFF9F01F44 +:10BDC00000280C9A0E9BEACCFFF8F01F00260C9A74 +:10BDD0000E9BEACCFFF0F01F00240C9A0E9BEACCDD +:10BDE000FFECF01F0021318A0E9B1A9CF01F001FF0 +:10BDF000EAC3FFE81A940C9A1A9B069CF01F001ADB +:10BE00005816C1801A9B0C9A6A7CF01F00199A98E8 +:10BE10008E992048F00901098B690C9A069C0E9BAB +:10BE2000F01F00116A698E181208AE182FADE3CD0D +:10BE300080F86A698E182FC81208E06B00E8BA080B +:10BE40006E5CF01F000C8B7CCF20505C1A9B0C9A10 +:10BE5000F01F0007CE3B00008001AD988001A29C3E +:10BE60008001BCA48001A37C800091DC8001BD50D6 +:10BE70008001D3ECEBCD4068189316951496F01F13 +:10BE800000120C9A0A9BE6CCFFFCF01F00100C9AE3 +:10BE90000A9BE6CCFFFAF01F000D0C9A0A9BE6CC39 +:10BEA000FFF8F01F00090C9A0A9BE6CCFFF4F01F84 +:10BEB00000060C9A0A9BE6CCFFF0F01F0005E3CDCC +:10BEC000806800008001A37C8001A2FC8001BD94F9 +:10BED000EBCD40E0189716951496F01F000B0C9AC6 +:10BEE0000A9BEECCFFFCF01F00090FD93008F009C7 +:10BEF0001800C0700C9A0A9BEECCFFF8F01F0004EB +:10BF0000E3CD80E08001A37C8001B8E48001BD9492 +:10BF1000EBCD4060202D301A18951696FACCFFFE16 +:10BF2000F01F00089A181BF92FE8F0090109AC0965 +:10BF30001BCA8B5A1BD88B482FEDE3CD80600000C5 +:10BF40008001A444EBCD40E07808975818971696E6 +:10BF50007859E049003FE0880004E3CF80E0FEF834 +:10BF6000029AF009032F78455815E0800127E04533 +:10BF70000080CF41780C301AF01F00A1E3CF90E091 +:10BF800078485808C391780C301AF01F009EE3CF10 +:10BF900090E07848F0C90005E049008FFE9BFFDF84 +:10BFA000FEF80264F009032F7848E0480081E08041 +:10BFB000010CE08A002BE0480083E0800118E08556 +:10BFC0000110E0480085CCA1780C301AF01F008FDA +:10BFD000E3CF90E0780C301AF01F008DE3CF90E0B3 +:10BFE0007848F0C90001E049009BFE9BFFB8FEF8CD +:10BFF0000222F009032FE0480081CB01780C301AAF +:10C00000F01F0085E3CF90E05848E08000E4E0486E +:10C010000080CA41781A300B780CF01F00806E0C3B +:10C020000C9B301AF01F007EE3CF90E0780C301AA2 +:10C03000F01F007CE3CF90E0780C301AF01F007AFC +:10C04000E3CF90E0780C301AF01F0078E3CF90E057 +:10C05000780C301AF01F0076E3CF90E0780C301A9D +:10C06000F01F0074E3CF90E0780C301AF01F0072DC +:10C07000E3CF90E0780C301AF01F0070E3CF90E02F +:10C08000780C301AF01F006EE3CF90E0780C301A75 +:10C09000F01F006CE3CF90E0780C301AF01F006ABC +:10C0A000E3CF90E0780C301AF01F0068E3CF90E007 +:10C0B000780C301AF01F0066E3CF90E0780C301A4D +:10C0C000F01F0064E3CF90E0780C301AF01F00629C +:10C0D000E3CF90E0780C301AF01F0060E3CF90E0DF +:10C0E000780C301AF01F005EE3CF90E0780C301A25 +:10C0F000F01F005CE3CF90E0780C301AF01F005A7C +:10C10000E3CF90E0780C301AF01F0058E3CF90E0B6 +:10C11000780C301AF01F0056E3CF90E0780C301AFC +:10C12000F01F0054E3CF90E0780C301AF01F00525B +:10C13000E3CF90E0780C301AF01F0050E3CF90E08E +:10C14000780C301AF01F004EE3CF90E0780C301AD4 +:10C15000F01F004CE3CF90E0780C301AF01F004A3B +:10C16000E3CF90E0780C301AF01F0048E3CF90E066 +:10C17000780C301AF01F0046E3CF90E0780C301AAC +:10C18000F01F0044E3CF90E0780C301AF01F00421B +:10C19000E3CF90E0780C301AF01F0040E3CF90E03E +:10C1A000780C301AF01F003EE3CF90E0780C301A84 +:10C1B000F01F003CE3CF90E0780C0A9AF01F003AA1 +:10C1C0000A9CE3CD80E0780C301AF01F0038E3CFF2 +:10C1D00090E0780C301AF01F0036E3CF90E0780C36 +:10C1E000301AF01F0034E3CF90E0780C301AF01FC3 +:10C1F0000032E3CF90E000008003B8288001AAEC71 +:10C200008001A4988003B9288001B3248001A37C15 +:10C210008003BB688001A4CC800091D08001BC1455 +:10C220008001BAA48001A4748001BA6C8001AC546E +:10C230008001AA808001AE8C8001AAC88001AAA4D6 +:10C240008001AA208001AF5C8001A9CC8001A9787F +:10C250008001A9488001A8F48001A8D08001A884A9 +:10C260008001A8608001B1548001B1B08001B1F4B7 +:10C270008001A8188001AA508001B0F88001A83C74 +:10C280008001A7F48001B4E08001B56C8001B5B0F5 +:10C290008001B5F88001B6408001BED08001B5189C +:10C2A0008001B9748001AE3C8001B3AC8001A6145A +:10C2B0008001B3688001B2E0EBCD40C012971499C1 +:10C2C0008E96109A582CC280E08A0008584CC360A1 +:10C2D000587CC190E3CF80C0580CC0A0581CCFB18F +:10C2E00058EBFE9BFFF9FEF80312F00B032F580BDF +:10C2F000CF21129C0E9BF01F00C28E98F006010CFD +:10C30000E3CD80C0202BE04B007FFE9BFFE5FEF8D5 +:10C3100002F2F00B032F582BE080015DE089001A38 +:10C32000580BC260581BCD71129C0E9BF01F00B6BB +:10C330008E98F006010CE3CD80C0580BCCC1129C46 +:10C340000E9BF01F00B28E98F006010CE3CD80C06A +:10C35000584BC170E0850148585BCBD1129C0E9BB5 +:10C36000F01F00AB8E98F006010CE3CD80C0129C4C +:10C370000E9BF01F00A88E98F006010CE3CD80C044 +:10C38000129C0E9BF01F00A48E98F006010CE3CDCA +:10C3900080C0129C0E9BF01F00A18E98F006010C2D +:10C3A000E3CD80C0129C0E9BF01F009D8E98F0067E +:10C3B000010CE3CD80C0129C0E9BF01F009A8E985A +:10C3C000F006010CE3CD80C0129C0E9BF01F00967E +:10C3D0008E98F006010CE3CD80C0129C0E9BF01FDE +:10C3E00000938E98F006010CE3CD80C0129C0E9B4A +:10C3F000F01F008F8E98F006010CE3CD80C0129CD8 +:10C400000E9BF01F008C8E98F006010CE3CD80C0CF +:10C41000129C0E9BF01F00888E98F006010CE3CD55 +:10C4200080C0129C0E9BF01F00858E98F006010CB8 +:10C43000E3CD80C0129C0E9BF01F00818E98F00609 +:10C44000010CE3CD80C0129C0E9BF01F007E8E98E5 +:10C45000F006010CE3CD80C0129C0E9BF01F007A09 +:10C460008E98F006010CE3CD80C0129C0E9BF01F4D +:10C4700000778E98F006010CE3CD80C0129C0E9BD5 +:10C48000F01F00738E98F006010CE3CD80C0129C63 +:10C490000E9BF01F00708E98F006010CE3CD80C05B +:10C4A000129C0E9BF01F006C8E98F006010CE3CDE1 +:10C4B00080C0129C0E9BF01F00698E98F006010C44 +:10C4C000E3CD80C0129C0E9BF01F00658E98F00695 +:10C4D000010CE3CD80C0129C0E9BF01F00628E9871 +:10C4E000F006010CE3CD80C0129C0E9BF01F005E95 +:10C4F0008E98F006010CE3CD80C0129C0E9BF01FBD +:10C50000005B8E98F006010CE3CD80C0129C0E9B60 +:10C51000F01F00578E98F006010CE3CD80C0129CEE +:10C520000E9BF01F00548E98F006010CE3CD80C0E6 +:10C53000129C0E9BF01F00508E98F006010CE3CD6C +:10C5400080C0129C0E9BF01F004D8E98F006010CCF +:10C55000E3CD80C0129C0E9BF01F00498E98F00620 +:10C56000010CE3CD80C0129C0E9BF01F00468E98FC +:10C57000F006010CE3CD80C0129C0E9BF01F004220 +:10C580008E98F006010CE3CD80C0129C0E9BF01F2C +:10C59000003F8E98F006010CE3CD80C0129C0E9BEC +:10C5A000F01F003B8E98F006010CE3CD80C0129C7A +:10C5B0000E9BF01F00388E98F006010CE3CD80C072 +:10C5C000129C0E9BF01F00348E98F006010CE3CDF8 +:10C5D00080C0129C0E9BF01F00318E98F006010C5B +:10C5E000E3CD80C0129C0E9BF01F002D8E98F006AC +:10C5F000010CE3CD80C000008003BDD88001A49869 +:10C600008003BE148001BC6C8001AE648001A5C0B3 +:10C610008001B4B88001A5F08001B8308001B29CDF +:10C620008001B6948001B6CC8001B9D48001BA30C3 +:10C630008001BB6C8001B7048001B7EC8001BA6C4B +:10C640008001B8908001BE748001A5188001A55CAE +:10C650008001B7A88001A7308001A7888001AE8C37 +:10C660008001AED88001A7D08001AB148001AF1843 +:10C670008001A9FC8001A9A88001AFD48001A92470 +:10C680008001B08C8001A8A88001B22C8001A7ACE9 +:10C690008001B2648001BBEC8001B4808001B3E40E +:10C6A000EBCD40FE208D306A18977853784578019D +:10C6B000FAC2FFE6300B049CF01F00384B88F139BA +:10C6C000010BE06AFFFFFB69001E300B1A9CF01F94 +:10C6D0000035302A1A9B049CF01F0033029A302840 +:10C6E0001A990A9B069CF01F00319A194B08F9D938 +:10C6F000C0101188103CF9B60200F1DCE318E06AC2 +:10C7000000FFF1DAE326EDD9E309FBF93C01F9D6A4 +:10C71000E30C1A944A78118A580AC060F4C80001E0 +:10C72000F9E80008C2918F3CF01F00238F2CC31042 +:10C730006E3A300BF01F0019FB66001F6E2BFB6377 +:10C74000001CFB65001D8E78F5D8C01020281A9CAF +:10C75000FB58001AF01F0013049C1A9B300AF01FAC +:10C7600000121A99029A0A9B069C3008F01F000FCB +:10C770002F8DE3CF90FE9A18F4C90001F9E9000962 +:10C78000F40901095C591208120CBA181206CCCB34 +:10C790002F8DE3CD80FE0000800091D0000087F453 +:10C7A0008001C7B88001A4448001C2B8000079E5C7 +:10C7B000000079E48000920030083019B838B818C9 +:10C7C000B828B80A3008994B993999285EFCD703E4 +:10C7D000EBCD4068189316951496F01F00090C9A3B +:10C7E0000A9BE6CCFFFFF01F00060C9A0A9BE6CCE2 +:10C7F000FFFEF01F0004E3CD806800008001A29CD2 +:10C800008001A2FCEBCD40681696149518931499FC +:10C81000169A303BF01F00050A9A0C9BE6CCFFFDF0 +:10C82000F01F0003E3CD80688001AD988001A29CD9 +:10C83000EBCD40681696149518931499169A303BD0 +:10C84000F01F00050A9A0C9BE6CCFFFDF01F0003C9 +:10C85000E3CD80688001AD988001A29CD431FACEEE +:10C86000FFDC189616971494129210907C157C0198 +:10C87000581AC2D0C153582AC1300D893FF8F00967 +:10C880001800C2100D98E2081900E08B0005E008BE +:10C890001900C6E23FF83009AC88AC99D83A8E1836 +:10C8A000AE383FF80D89F0091800C0D00C9C089AEA +:10C8B0000E9BF01F0034089A0E9BECCCFFFFF01F7C +:10C8C0000031CDCB3008300CAC98D83296285808BF +:10C8D000C4C0B618AE3830088B08AC983FFAAC8AA2 +:10C8E0008E198E08F2081900FE98FFEE1494ECC31E +:10C8F000FFFFC1D8E8081800EDF41E000D9A8E184D +:10C900008E89F408000B5C781019123AE089002631 +:10C91000AE1B6A082FF88B080D89E8091800CB3187 +:10C920008E198E08F2081900FE98FFCEAE39301A23 +:10C930000E9B0C9CF01F0013301A0E9B069CF01FE0 +:10C9400000110D88E4081800CD618E888E990D9A2B +:10C950001218103AE08A000E3FF83009AC88AC9902 +:10C960008E182028AE08C8AB9618B628CB4BDA3AFA +:10C970006A0A6E293018F00A094810498F29C7EB56 +:10C980008001A29CEBCD4040201D1A9E9AF65C7857 +:10C990001ADE1AD6F01F00032FED2FFDE3CD8040E5 +:10C9A0008001C85CEBCD40E0302818951AD8169667 +:10C9B00014973069F01F00072FFD580CC0700E9AB5 +:10C9C0000C9BEACCFFFEF01F0004E3CD80E00000EA +:10C9D0008001C9848001A2FCEBCD40E0301818959D +:10C9E0001AD81696149732A9F01F00072FFD580C7D +:10C9F000C0700E9A0C9BEACCFFFEF01F0004E3CD42 +:10CA000080E000008001C9848001A29CEBCD40E061 +:10CA1000305818951AD8169614973029F01F001020 +:10CA20002FFD580CC190EACCFFFE0E9A0C9BF01F14 +:10CA3000000D0E9A0C9BEACCFFFCF01F000B0E9A27 +:10CA40000C9BEACCFFFBF01F00080E9A0C9BEACC73 +:10CA5000FFFAF01F0005E3CD80E000008001C984EB +:10CA60008001A2FC8001A29CEBCD40E0301818951B +:10CA70001AD8169614973039F01F00072FFD580C5E +:10CA8000C0700E9A0C9BEACCFFFEF01F0004E3CDB1 +:10CA900080E000008001C9848001A29CEBCD40E0D1 +:10CAA000306818951AD8169614973049F01F001060 +:10CAB0002FFD580CC190EACCFFFE0E9A0C9BF01F84 +:10CAC000000D0E9A0C9BEACCFFFDF01F000A0E9A97 +:10CAD0000C9BEACCFFFCF01F00080E9A0C9BEACCE2 +:10CAE000FFFAF01F0005E3CD80E000008001C9845B +:10CAF0008001A29C8001A2FCEBCD40E0301818958B +:10CB00001AD81696149730A9F01F00072FFD580C5D +:10CB1000C0700E9A0C9BEACCFFFEF01F0004E3CD20 +:10CB200080E000008001C9848001A29CD43120BD36 +:10CB30005019500818961697581AC390C272E06898 +:10CB400000FDE06900DD1AD8300A3018F01F005CE3 +:10CB50002FFD580CC1E0300A0E9BECCCFFFEF01FFD +:10CB60000059300A0E9BECCCFFFDF01F0056300A36 +:10CB70000E9BECCCFFFCF01F0053ECCCFFFB0E9B9C +:10CB8000300AF01F0050301CC048582AC040301CEA +:10CB90002F5DD83219893FF8F0091800E080008B2A +:10CBA0009618301C2FA8B6182F5DD832761850581A +:10CBB000B1485038760A504AF6E80008F8C2FFFE3D +:10CBC000FAE90018F8C3FFFDF6EA0010F8C9FFFB08 +:10CBD000FAEB0020F8C4FFFC50293FF5FAC0FFD85B +:10CBE000E06100FDC0680D998E382FE81208AE286C +:10CBF0001AD030181AD1E06900DD109A0E9B0C9CF7 +:10CC0000F01F00312FED580CC4105805FBF5500AE9 +:10CC1000FBF8400AF9B90401F1D9E408EBD8E405BE +:10CC2000301A0E9B049CF01F0027301A0E9B069CA6 +:10CC3000F01F0024301A0E9B089CF01F00220DA844 +:10CC40003009F2081800CD010DB83509F2081800B6 +:10CC5000CCB10DC83F29F2081800CC61301A0E9BE8 +:10CC6000402CF01F00180DD84019F2081800CBC155 +:10CC70004038301CAE28F80509496E2812488F2824 +:10CC800040095809C8509305C84B4038FB58001458 +:10CC9000FAE80020EEE90010FAEA0010EEEB0000DE +:10CCA000FAE80018EEE90008AC9C3FF8AC882F5D6C +:10CCB000D8323008B898300CC6CB00008001C98447 +:10CCC0008001A29C8001C85CD431207D1895169704 +:10CCD00014961293581AC110C0B2300830290C9A19 +:10CCE0000E9B0A9CF01F0032C5712F9DD832582A26 +:10CCF000CF50301C2F9DD83276185018760AF0008D +:10CD00001410500A1A91F6E80008F8C4FFFAFAE97C +:10CD100000083FF6F6EA0010FAC2FFE8FAEB00104E +:10CD2000C1A85806FBF65006FBF84006F9B9040105 +:10CD3000F1D9E408EDD8E406301A0E9B089CF01FE8 +:10CD4000001D0BE8E6081800C1D00B998E382FE8BB +:10CD50001208AE2804983029301A0E9B0A9CF01F46 +:10CD60000014CE01BA20E2E80010EEE90010E2E87B +:10CD70000000EEE90000E2EA0008EEEB00082F9D5B +:10CD8000D83230186E29F006094AAE201449109C9A +:10CD90008F292F9DD8320B982FF8EACCFFFA0C9AE6 +:10CDA0000E9BAA98F01F0003301CCA5B8001CB2C9D +:10CDB0008001A29CEBCD40EC206D301918971693A2 +:10CDC0001495F01F002DC0412FADE3CD80ECEECCCB +:10CDD000FFF90A9A069BF01F00290A9A069BEECCDF +:10CDE000FFF8F01F00260A9A069BEECCFFF7F01F13 +:10CDF00000230A9A069BEECCFFF6F01F00210A9A48 +:10CE0000069BEECCFFF2F01F001E0A9A069BEECCAA +:10CE1000FFEEF01F001B0A9A069BEECCFFEAF01F04 +:10CE2000001858055F0858255F091248CCE06608CD +:10CE30005008661886160A9A5018EBD8B010BA1522 +:10CE4000E6E80008FAE900082026E6E20010E068BB +:10CE500000FD0A16AE961A9BFAE300100E9C1AD833 +:10CE6000E06900DD3018F01F00072FFD2FADE3CD86 +:10CE700080EC00008001CCC88001A29C8001C7D05A +:10CE80008001C984EBCD40EC206D18971693149562 +:10CE9000582AC18119893FF8F0091800F9F91801D9 +:10CEA000F7F81201F9BA0102F1DAE108F1D9E10863 +:10CEB000F7F81C01F9B80000F9F80E012FADE3CD29 +:10CEC00080EC3009F01F0019CFA0EECCFFF90A9AD0 +:10CED000069BF01F00170A9A069BEECCFFF8F01F86 +:10CEE00000145805CEC166085008661886160A9ABE +:10CEF0005018EBD8B010BA15E6E80008FAE90008B7 +:10CF00002026E6E20010E06800FD0A16AE961A9BA5 +:10CF1000FAE300100E9C1AD8E06900DD3018F01F0B +:10CF200000052FFDCCCB00008001CCC88001A29C65 +:10CF30008001C984D42112951497580A5F095805B5 +:10CF40005F08169A1248C2510B986E29F0C4FFFE72 +:10CF5000F2C800015BD8E08B0015129C089B5D1A9B +:10CF600018965806C0C06E086E192FF80809089A5E +:10CF70000A9B8F088F190C9CF01F00080C9CD8226C +:10CF8000089B5D1A300818968F2C8F188F08CEAB2F +:10CF900030060C9CD8220000800091DCEBCD40FCD8 +:10CFA00012951494580A5F0958055F0818921248A0 +:10CFB0001693C191300995296A085808E08A00162D +:10CFC00012966A270E99089A069B049CF01F000B84 +:10CFD0002FF6EEF7FFF86A085807F7B701F80C3894 +:10CFE000FE99FFF2E3CD80FCEAE80000F4E90000DE +:10CFF0006A2A892AE3CD80FC8001CF34EBCD40FC46 +:10D0000018931695581AC2C0C053582AC5E0E3CDEC +:10D0100080FC782778085808FE9AFFFB7819580991 +:10D02000FE9AFFF79698300612087649F208000437 +:10D030000F9A0E9B2FEA1414089CF01F00332FF652 +:10D04000EEF7FFF866085807F7B701F80C38FE99B5 +:10D05000FFF166198A181208AA18E3CD80FC9628F9 +:10D060005808C3C0B618F9D8B010AA3C300830121E +:10D0700087088718872810948A1C8A0E189AFC0C37 +:10D080001900C212F7DAC0106A46EC0B00081199B9 +:10D09000F2C7FFFE5827C250F1DEC0101618103735 +:10D0A000E0890020E40409496A2B2FF4F3EB00081F +:10D0B000C1C0F4070008AA18F9D8B010189AFC0CDF +:10D0C0001900CE13E3CD80FC781C580CFE9AFFA10A +:10D0D00096181808B618E3CD80FC961CB62CCC6BBD +:10D0E000AA0CFDDCB010CCBBF3EB1008069A8A99B1 +:10D0F0008B28EC090009485B6A5CF01F00058A1A5E +:10D100008A0ECD8B800091DC8001D3EC8001CF347E +:10D11000EBCD40F83FF510941697149340661388B2 +:10D12000EA081800C05130070E9CE3CD80F858047F +:10D130005F1858065F991268CF700C9B5D1718979F +:10D14000C0600C9A089BF01F0004CEFBA685A69C2D +:10D15000CECB0000800091DCEBCD40C0129EF2E807 +:10D160000000F4E9000014977C2A8F2A18961D8984 +:10D17000169C3FF8F0091800C1401D993058F0097D +:10D180001800E088000F2039E06A5556EA1A555514 +:10D19000F20B141FF20A04481619F2090019C028EC +:10D1A00030091AD9189B1C990C9C7C280E9AF01FE8 +:10D1B00000042FFD8F2CE3CD80C000008001D11032 +:10D1C000EBCD406CF2E20000F4E3000072289528F9 +:10D1D0001495722813961AD6F01F00032FFD8B2C7E +:10D1E000E3CD806C8001D110EBCD406FF2E2000006 +:10D1F000F4E30000F2E00008F4E10008F2E20010BD +:10D20000F4E300101495725813961AD6F01F000319 +:10D210002FFD8B5CE3CD806F8001D110EBCD406F93 +:10D22000F2E20000F4E30000F2E00008F4E100089C +:10D23000724895481495724813961AD6F01F000349 +:10D240002FFD8B4CE3CD806F8001D110EBCD406C76 +:10D25000F2E20000F4E30000722895281495722889 +:10D2600013961AD6F01F00032FFD8B2CE3CD806C94 +:10D270008001D110D421310418971AD41696149530 +:10D2800030183329F01F00142FFD580CC0B058057A +:10D29000C0E18C986C4C0F9A100CEECBFFFEF01F87 +:10D2A000000F0F998C181208AC18D8225815CFA16E +:10D2B0000F9AE80A1800E08800073FF83009AE88A6 +:10D2C000AE99CF0B8C986C4BEECCFFFE100BF01F81 +:10D2D0000003CE8B8001C984800091DCD4213018FA +:10D2E000189716961495308410991AD4F01F0014CC +:10D2F0002FFD580CC0B05805C0E18C986C4C0F9AAB +:10D30000100CEECBFFFEF01F000F0F998C181208C7 +:10D31000AC18D8225815CFA10F9AE80A1800E08857 +:10D3200000073FF83009AE88AE99CF0B8C986C4B54 +:10D33000EECCFFFE100BF01F0003CE8B8001C984E2 +:10D34000800091DCEBCD40E0320930081AD9189505 +:10D35000169714961099F01F00132FFD580CC0F06B +:10D360005806C0F18E986E4C0B9A100CEACBFFFE5B +:10D37000F01F000D0B998E181208AE18E3CD80E057 +:10D380005816CF918E986E4B0B9A100BEACCFFFE7D +:10D39000F01F00050B998E181208AE18CF0B000075 +:10D3A0008001C984800091ACD421201D7809189691 +:10D3B000F2C800015BD8E08B0014F2C80008C0E09E +:10D3C0001A943005C0280E98500870079105680C13 +:10D3D000F01F00068D055807CF712FFDD8223008A9 +:10D3E00099082FFDD8220000800091E8EBCD40C0C5 +:10D3F00018971696F6CCFFF8F01F000DC130EEF826 +:10D40000FFF8EEC900089908F8C7FFF8930C9916C1 +:10D410000C9AE06B00FF0E9CF01F00060E9CE3CD03 +:10D4200080C018970E9CE3CD80C000008000920061 +:10D43000800091D0EBCD40FC32E818931AD81692B8 +:10D44000149430683079F01F00232FFD580CC03140 +:10D45000E3CD80FC089A049BE6CCFFFEF01F001E83 +:10D4600007993058F0091800E088001F2039E06A59 +:10D470005556EA1A5555F20B141FF20A0448F20BDE +:10D4800001055814C18030060C972FF6662C0899B8 +:10D490000E0C049A2FD7303BF01F00100C35FE996C +:10D4A000FFF6E3CD80FC5814F9B80000E7F80A0253 +:10D4B000E3CD80FCEA050017645C0E9BF01F0008BA +:10D4C000872CCC700E9A300BF01F0006CDDB0000CD +:10D4D0008001C9848001BB948001AD988001D3ECA8 +:10D4E000800091D0D421189616951497582AC161BE +:10D4F00019893FF8F0091800F9F91801F7F8120135 +:10D50000F9BA0102F1DAE108F1D9E108F7F81C01F2 +:10D51000F9B80000F9F80E01D82230083049F01FA0 +:10D52000000CC0C00D98F0C400045817C0800E99BC +:10D530000A9A089B6C2CF01F0007D822089B6A5C93 +:10D54000F01F00058D2CCF41CF9B00008001CB2C1C +:10D550008001AD988001D3ECEBCD40FC206D189498 +:10D5600016951493582AC18119893FF8F0091800BB +:10D57000F9F91801F7F81201F9BA0102F1DAE10834 +:10D58000F1D9E108F7F81C01F9B80000F9F80E012B +:10D590002FADE3CD80FC30083019F01F0040CF9054 +:10D5A0006A1E501E6A0A500AEAE80008FAE90008F2 +:10D5B000EAEA0010FAEB0010EDDEB0105813C600D6 +:10D5C000E8C7FFFA0999ECC8FFFE12080E9CE5D8DF +:10D5D000B010069A0A9BF01F00328A18E40819005E +:10D5E000CD82069A0A9BE8CCFFF8F01F002E8A181D +:10D5F000E4081900CCE2E8CCFFF4069A0A9BF01F7D +:10D600000028685C88693008F0091900C0E01896A5 +:10D6100030070C9C2FF7069A0A9BF01F00222FC69A +:10D6200088E80E38FE99FFF78A18E4081900CB1233 +:10D63000069AE8CCFFF20A9BF01F0019685888E9A7 +:10D64000887AF009002C3008F00A1900C0E018961A +:10D6500030070C9C2FF7069A0A9BF01F00132FC669 +:10D6600088F80E38FE99FFF78A18E4081900C912E5 +:10D67000069A0A9BE8CCFFF0F01F0009C8ABE8C788 +:10D68000FFFA30EA300B0E9CF01F0008099B6A5C21 +:10D69000F01F0007895CC97B8001CB2C8001A2FCB4 +:10D6A0008001C8308001C804800091D08001D3EC93 +:10D6B000EBCD40FC206D189416951493582AC18127 +:10D6C00019893FF8F0091800F9F91801F7F8120163 +:10D6D000F9BA0102F1DAE108F1D9E108F7F81C0121 +:10D6E000F9B80000F9F80E012FADE3CD80FCE06839 +:10D6F00000FF33091AD83008F01F00532FFD580CD3 +:10D70000CF406A1E501E6A0A500AEAE80008FAE989 +:10D710000008EAEA0010FAEB0010EDDEB010581332 +:10D72000E0800085E8C7FFFE0999ECC8FFFE1208FB +:10D730000E9CE5D8B010069A0A9BF01F00448A1888 +:10D74000E4081900CD22069A0A9BE8CCFFFCF01FE2 +:10D7500000408A18E4081900CC82E8CCFFF8069A49 +:10D760000A9BF01F003A684C88493008F0091900FC +:10D77000C0E0189630070C9C2FF7069A0A9BF01F02 +:10D7800000342FC688C80E38FE99FFF78A18E408BF +:10D790001900CAB2069AE8CCFFF60A9BF01F002BCC +:10D7A000684888C9885AF009002C3008F00A190026 +:10D7B000C0E0189630070C9C2FF7069A0A9BF01FC2 +:10D7C00000252FC688D80E38FE99FFF78A18E4087E +:10D7D0001900C8B2069A0A9BE8CCFFF4F01F001BA0 +:10D7E0008A18E4081900C812069AE8CCFFF20A9BCE +:10D7F000F01F001688C988D81208684A8879F4088A +:10D80000002C3008F0091900FE90FF7018963007C0 +:10D810000C9C2FF706990A9A310BF01F000F2F0668 +:10D8200088F80E38FE99FFF6C60BE8C7FFFE30EA0F +:10D83000300B0E9CF01F0009099B6A5CF01F00086A +:10D84000894CC73B8001C9848001A2FC8001C8309B +:10D850008001C8048001AD98800091D08001D3EC94 +:10D86000EBCD40E0E06800FE18971AD816951496A4 +:10D8700030483059F01F00162FFD580CC031E3CD51 +:10D8800080E0EECCFFFE0C9A0A9BF01F00120C9A6F +:10D890000A9BEECCFFFDF01F000F0C9A0A9BEECC0A +:10D8A000FFFCF01F000C5816C0A00F9B0C990A9AA1 +:10D8B0006E2C203BF01F0008E3CD80E00F9B6A5CDC +:10D8C000203BF01F00068F2CCF11CDAB8001C98407 +:10D8D0008001A29C8001AD988001D3ECEBCD40E0AB +:10D8E00018951696F6CCFFF8F01F000CC12099167B +:10D8F00030089908F8C7FFF80C9A5805EBF71A0595 +:10D90000E06B00FF0E9CF01F00060E9CE3CD80E054 +:10D9100018970E9CE3CD80E080009200800091D0AB +:10D92000EBCD40C0201DF8C60008300C6C1BF01F6A +:10D930000014C1A0500C3007C1286C1B400CF01F14 +:10D9400000111897C1406C1AECCBFFF8EF4AFFFCAE +:10D950000E9CF01F000D6C065806C0505807CEE113 +:10D960004007CF2B400C2FFDE3CD80C01A9CF01F49 +:10D9700000070E9C2FFDE3CD80C000008001D8DCA5 +:10D980008001D3EC800091DC8001D3A8D401E06851 +:10D990000081301999489959189A7408129C11CE2F +:10D9A000F20E18005F089708D802D703486830398C +:10D9B000F0FA00F830089569985BF00B19005F0CDD +:10D9C0005EFC0000000087F419C8300A4869F2F9CB +:10D9D00000F8F4081800F9BC0001F9BC0100F3FCE0 +:10D9E0001A065EFC000087F448483009F0FA00F897 +:10D9F000301C95695EFC0000000087F448B8985A16 +:10DA0000F0FB00F83178F00A1900E08B000B3018B9 +:10DA1000F00A0948E4180080E01803FEC0205EFF09 +:10DA20003008301C97685EFC000087F478185808AE +:10DA30005F0C5EFC5EFF19C830192018F208180050 +:10DA40005FBC5EFC5EFD5EFD19C93008F009180080 +:10DA50005F0C5EFC5EFD5EFFEBCD4080308B189767 +:10DA6000991B300CF01F00078F0CC0803078E069E4 +:10DA700000818F588F49E3CF9080E3CD80800000F4 +:10DA80008001D8DCEBCD40C018971696308B991BDF +:10DA9000300CF01F00108F0CC160301830298F58E7 +:10DAA0008F4948D8B826118948C8B8E948C71189AC +:10DAB000B8F96EB899086EBC580CC0752FFC8FBCB5 +:10DAC000E3CF90C0E3CD80C0F01F0006CF9B0000E5 +:10DAD0008001D8DC00007A280000025C000087F496 +:10DAE00080018450EBCD40FE1897FACCFFE01694ED +:10DAF000781330CB14928F1B129178061095300C4E +:10DB0000F01F00118F0CC1A0307830498F588F4919 +:10DB10009905B8E6B8F1F9630008B8C4B8D248B8B6 +:10DB200048B9B084B28248B76EB899086EBC580C38 +:10DB3000C0752FFC8FBCE3CF90FEE3CD80FEF01FBD +:10DB40000006CF9B8001D8DC000079E5000079E475 +:10DB5000000087F480018450EBCD40FC1897FACC8C +:10DB6000FFE4314B781414938F1B129278061095B2 +:10DB7000300CF01F00158F0CC2003018F3D4C01009 +:10DB80008F488F589913B8429935F9560010F954B7 +:10DB9000001248E7F1D6C0100A481248F9B800FF51 +:10DBA000F9B80100B8586EB999096EBC580CC07527 +:10DBB0002FFC8FBCE3CF90FCE3CD80FCF01F000472 +:10DBC000CF9B00008001D8DC000087F480018450E6 +:10DBD000D401780A3009740B15F8129C129AF01FC0 +:10DBE0000002DA0A80018460D401780A3009740BDB +:10DBF000F538000B129C129AF01F0002DA0A00009E +:10DC000080018460D401780A3009740BF538000B68 +:10DC1000129C129AF01F0002DA0A00008001846050 +:10DC2000D401780A3009740BF538000B129C129A53 +:10DC3000F01F0002DA0A000080018460D401780A33 +:10DC40003009740BF538000B129C129AF01F000279 +:10DC5000DA0A000080018460D401780A3009740B6C +:10DC6000F538000B129C129AF01F0002DA0A00002D +:10DC700080018460D401780A3009740B15F8129C75 +:10DC8000129AF01F0002DA0A80018460EBCD40F89E +:10DC900030C618979916169414930C9B300CF01FED +:10DCA00000108F0C1895C160307831690C9A8F582C +:10DCB000089B8F49F01F000B48B66CB88B086CBCF2 +:10DCC000580CC0A52FFC8DBC301C6A088708E3CD1A +:10DCD00080F8E3CD80F8F01F0005CF6B8001D8DC21 +:10DCE000800091DC000087F480018450EBCD40F887 +:10DCF000308618979916169414930C9B300CF01FCD +:10DD000000108F0C1895C160307831490C9A8F58EB +:10DD1000089B8F49F01F000B48B66CB88B086CBC91 +:10DD2000580CC0A52FFC8DBC301C6A088708E3CDB9 +:10DD300080F8E3CD80F8F01F0005CF6B8001D8DCC0 +:10DD4000800091DC000087F480018450EBCD40F826 +:10DD500033C618979916169414930C9B300CF01F29 +:10DD600000108F0C1895C160307831390C9A8F589B +:10DD7000089B8F49F01F000B48B66CB88B086CBC31 +:10DD8000580CC0A52FFC8DBC301C6A088708E3CD59 +:10DD900080F8E3CD80F8F01F0005CF6B8001D8DC60 +:10DDA000800091DC000087F480018450EBCD40F8C6 +:10DDB000318618979916169414930C9B300CF01F0B +:10DDC00000108F0C1895C160307831190C9A8F585B +:10DDD000089B8F49F01F000B48B66CB88B086CBCD1 +:10DDE000580CC0A52FFC8DBC301C6A088708E3CDF9 +:10DDF00080F8E3CD80F8F01F0005CF6B8001D8DC00 +:10DE0000800091DC000087F480018450EBCD40F865 +:10DE1000330618979916169414930C9B300CF01F28 +:10DE200000108F0C1895C160307831090C9A8F580A +:10DE3000089B8F49F01F000B48B66CB88B086CBC70 +:10DE4000580CC0A52FFC8DBC301C6A088708E3CD98 +:10DE500080F8E3CD80F8F01F0005CF6B8001D8DC9F +:10DE6000800091DC000087F480018450D421189751 +:10DE7000169530CB991B300CF01F00128F0C1896A2 +:10DE8000FAC4FFEC580CC190302830098F588F49E4 +:10DE900048D76EB899086EBC580CC1052FFC8FBCD2 +:10DEA0005805EDF81000EBF81A00089BECCCFFFCCD +:10DEB000308AF01F0006DA2AD822F01F0005CF0BA7 +:10DEC0008001D8DC000087F4800091DC8001845060 +:10DED000EBCD40E018961695310B991B300CF01FD6 +:10DEE00000108D0C1897C1503078317A0A998D58EE +:10DEF0008D4A48CBF8CAFFFCF01F000B48B56AB842 +:10DF00008F086ABC580CC0752FFC8BBCE3CF90E027 +:10DF1000E3CD80E0F01F0006CF9B00008001D8DC3D +:10DF20008001D3EC8001D158000087F48001845037 +:10DF3000EBCD408078076E285808C0B0300C189A96 +:10DF40005C586E0B3109300CF01F0009E3CF908054 +:10DF5000310CF01F00086E189908EF390016991956 +:10DF60006E3899286E4999396E28CEAB800184604D +:10DF700080009200EBCD40FC189716931495314B1E +:10DF80001294991B300CF01F001C8F0C1896FAC2CB +:10DF9000FFE4580CC200302830198F588F495805BB +:10DFA000C1C18D455C7549576EB88D086EBC580C63 +:10DFB000C1F52FFC8FBC5804EDF81000E9F81A00E9 +:10DFC000049B308AECCCFFFCF01F000D301C8D351B +:10DFD000E3CD80FCE3CF80FC5C750A9CF01F000958 +:10DFE0008D4CCF90069B0A9AF01F0005CDDBF01FE9 +:10DFF0000006CE1B8001D8DC000087F4800091DC95 +:10E000008000920080018450EBCD40801897F93C4D +:10E01000000BF01F00084888F0F900F85809C0709C +:10E02000EECBFFFC310A313CF01F0004E3CF9080BF +:10E0300080015FB0000087F480014658D42130C8C9 +:10E040001896109B4904300CE8F500F88D18F01F65 +:10E05000000F8D0C1897C120301830D98D582FCC57 +:10E06000EACBFFE28D49F01F000A68B88F0868BC50 +:10E07000580CC0552FFC89BCDA2AD822F01F0005A5 +:10E08000CFBB0000000087F48001D8DC8001844011 +:10E0900080018450D42130CB1897991B300CF01F8D +:10E0A000000B8F0C1894C1004898301530868F559E +:10E0B0008F462FCCF0FB00F82E2BF01F00060A9C99 +:10E0C000E966000AD822D8228001D8DC000087F453 +:10E0D00080018440EBCD40E030CB1896991B300C8A +:10E0E000F01F00108D0C1897C1703018305948E59A +:10E0F0008D588D492FCCEAFB00F82E2BF01F000B1A +:10E100003028AE586AB98F096ABC580CC0752FFC0C +:10E110008BBCE3CF90E0E3CD80E0F01F0005CF9B08 +:10E120008001D8DC000087F48001844080018450A5 +:10E13000EBCD40FC30C518969915169414931292A5 +:10E140000A9B300CF01F00138D0C1897C1D03018AB +:10E150008D458D580A9A300BF01F000FEECCFFFC56 +:10E16000089BF01F000E078848D6EF68000A058953 +:10E17000EF69000B6CB88F086CBC580CC0752FFC95 +:10E180008DBCE3CF90FCE3CD80FCF01F0006CF9B5D +:10E190008001D8DC800091D080018440000087F4A9 +:10E1A00080018450EBCD40FC30C51896991516942B +:10E1B000149312920A9B300CF01F00128D0C1897CA +:10E1C000C1B0301830B98D588D490A9A300BF01F04 +:10E1D000000E306AAEC4AED3049BEE0A000CF01FF2 +:10E1E000000B48B66CB88F086CBC580CC0752FFC7F +:10E1F0008DBCE3CF90FCE3CD80FCF01F0006CF9BED +:10E200008001D8DC800091D0800091DC000087F490 +:10E2100080018450D431203D502B5018FACEFFD0CD +:10E2200033857C3499157C181896149312917C00D0 +:10E2300050087C220A9B300CF01F00228D0C18978E +:10E24000C370301830A98D580A9A8D49300BF01FD1 +:10E25000001E069A029BEECCFFFCF01F001CEF5341 +:10E2600000244028049BEF680026EF600027306AF6 +:10E27000EECCFFD8F01F00155804C1C0089B308AAF +:10E28000EECCFFD2F01F00114008EF6800364018B6 +:10E2900048F6EF6800376CB88F086CBC580CC05556 +:10E2A0002FFC8DBC2FDDDA3AF01F000ACFBB2FDD2B +:10E2B000D832089B308AEECCFFD2F01F0003CE5B31 +:10E2C0008001D8DC800091D0800091DC000087F4D0 +:10E2D00080018450D4012FCC7808202D500819C912 +:10E2E000BAC919D8BAD8F01F00052FED580CF9B8E3 +:10E2F000010DF9F81A06DA0A80015860D40148D8ED +:10E30000F8CBFFF5F0F900F8733C7808204D502861 +:10E3100019C9FB69000C19D8306AFB68000D1A9CFA +:10E32000F01F0005F01F00052FCD580C5F1CD80210 +:10E33000000087F48002E73680018898EBCD40FE2C +:10E340003007FAC5FFE0189116924A134A1466087E +:10E350000E38E08A00216A08204D50280BC9FB695D +:10E36000000C0BD8EE061504FB68000DE806000A49 +:10E3700015D8BAD87409500915C8BAC8F01F0016C4 +:10E380002FCD580CC0A12FF75907CE2118970E9CFE +:10E39000E3CD80FEEE061504E80600060A9B0C9C01 +:10E3A000F01F000EF3D2C001EE081501AC692FF882 +:10E3B000E808093166090E39FE99FFEBEEC9FFFF47 +:10E3C00048380E9C9109E3CD80FE000000008C5C73 +:10E3D00000008B5C8001889880018440EBCD4080F8 +:10E3E000300819C9F0091800C10048E8F0F700F832 +:10E3F0005807C130F01F000C0E9CF01F000C0E9C43 +:10E40000F01F000BE3CF8080486830A9F0FA00F8D5 +:10E41000301C9569E3CD80800E9CE3CD80800000A8 +:10E42000000087F480015D188001593880015CDCB0 +:10E43000EBCD40E01896F01F00224A2A0DE9F4F7D0 +:10E4400000F85809C1103018F0091800C32030280E +:10E45000F0091800C31030488F687498300CABC8AE +:10E460009598E3CD80E06F3930D8322A8F68496CB7 +:10E47000727B2F4BF01F00156F3C3FF8787BF7390C +:10E4800000C8F0091800C130202DF71600D47845D7 +:10E49000306AEECBFFE21A9CF01F000C0C9B0A9C2A +:10E4A000F01F000B301C2FEDE3CD80E0E3CF90E0B8 +:10E4B00030088F68CD3B30588F68CD0B8001F00459 +:10E4C000000087F400008C608002E7368001E33CA6 +:10E4D000EBCD40E01896F01F00284A8A0DE9F4F7CA +:10E4E00000F85809C1503018F0091800C3603028EE +:10E4F000F0091800C3906F0830492FF88F69EF4872 +:10E5000000407498300CABC89598E3CD80E06F392B +:10E5100030D8322A8F6849AC727B2F4BF01F00191C +:10E520006F3C3FF8787BF73900C8F0091800C1301C +:10E53000202DF71600D47845306AEECBFFE21A9C06 +:10E54000F01F00100C9B0A9CF01F000F301C2FEDD9 +:10E55000E3CD80E0E3CF90E06F0830092FF88F69BA +:10E56000EF480040CCFB6F0830592FF88F69EF4817 +:10E570000040CC8B8001F004000087F400008C6028 +:10E580008002E7368001E33CD421310B1896991BB9 +:10E59000300CF01F00198D0C1897C28030183049CC +:10E5A0008D588D494955302CEAF400F8F01F0014BD +:10E5B000E8CBFFE21896EECCFFF8F01F00126C38A3 +:10E5C000AE38EAF901045819C0D03008AE2830B886 +:10E5D00089686AB98F096ABC580CC0952FFC8BBC3E +:10E5E000DA2AEAF8011C5818CF20D82AF01F0006B2 +:10E5F000CF7B00008001D8DC000087F48001EF6C45 +:10E600008001844080018450EBCD40F81897169427 +:10E6100030CCF01F0046303CF01F00441895302CE1 +:10E62000F01F0042E06A00EC1896E06B00FF0E9CC1 +:10E63000F01F003FE8CBFFE2EECCFFF6F01F003DFD +:10E640006C384BD9AE289208AE483DD86939727BF8 +:10E65000F73A009AF00A1800C480F73900803DD8D4 +:10E66000F0091800C52030050A93F01F00349838CF +:10E67000AE381896F93900A83FF8F0091800C09094 +:10E68000F8C9FF58EECAFF584ADB0E9CF01F002D58 +:10E69000ED3900CC3FF8F0091800C1900E9CECC990 +:10E6A000FF34EECAFF344A6BF01F0027089CF01FAE +:10E6B0000027583CE089000C4A587099ABC99199E1 +:10E6C0003FFA301CEF6A009EE3CD80F85805CF502A +:10E6D000EECCFF62069BF01F001F49D9301C7298D8 +:10E6E000ABA89398E3CD80F8F73900A03008F00983 +:10E6F0001800CB41EAF900B85819CB01F72800A25D +:10E700001295F003161FCB2BF73900863018F0094D +:10E710001800CAA1EAFC00B8581CCA61F728008892 +:10E720001895F003161FCA2B8001EF6C800091D062 +:10E73000800184400000025E8001EFF88001D3EC8C +:10E740008001D1E88001D21C8001808E000087F416 +:10E75000800184F0D421E06800EC1897109B4924D4 +:10E76000300CE8F500F88F18F01F00108F0C189689 +:10E77000C090301830798F588F490A9BF01F000CD9 +:10E78000C021D82A0C9CF01F000B30C88B6868B9D8 +:10E790008D0968BC580CC0452FFC89BCDA2AF01FD3 +:10E7A0000006CFCB000087F48001D8DC8001E608AA +:10E7B0008001F03080018450D421E06800EC18978B +:10E7C000109B4924300CE8F500F88F18F01F00105A +:10E7D0008F0C1896C090301830698F588F490A9B5B +:10E7E000F01F000CC021D82A0C9CF01F000B30C871 +:10E7F0008B6868B98D0968BC580CC0452FFC89BC72 +:10E80000DA2AF01F0006CFCB000087F48001D8DCA5 +:10E810008001E6088001F03080018450EBCD40405B +:10E82000201D18961A9CF01F001849888C69F0FB6F +:10E8300000F85809C1203018F0091900C0B030287C +:10E84000F0091900C170770830492FF89769F74827 +:10E8500000402FFDE3CF80407738301911EA301C9B +:10E86000F20A1800F9B8000CF7F80A062FFDE3CDFC +:10E870008040770830592FF89769F74800402FFDFE +:10E88000E3CF8040800177A4000087F4D401496879 +:10E8900019C9F0FA00F85809C1803028F0091800A9 +:10E8A000C1803048F0091800C0503018F009180035 +:10E8B000C180750830492FF89569F548004019CB9B +:10E8C000302CF01F000AD80A3088301C9568D80216 +:10E8D000750830592FF89569F548004019CBCF1BC2 +:10E8E000301BCEFB000087F480018390D431215D82 +:10E8F000303C169614911290F01F00584D83F8C4C6 +:10E90000FFB0189531CA089B069CF01F0056C0A1A5 +:10E910006D3830AA707BE6CCFFE42D2BF01F005140 +:10E92000C7B06D38FAC7FFC8707B0E9CF6CAFFC827 +:10E930002D2BF01F004D089B0E9CF01F004CC0417A +:10E94000300C2EBDD83231CA0E9BFA0A0002049C4C +:10E95000F01F0047049CF01F004730080E9A500833 +:10E960001A97089B1A9CF01F00446D38707930E8A4 +:10E97000F33A005EF00A1800C670EB3A0074580AC9 +:10E98000CE006D387079EB380075F33B005EF60809 +:10E990001800C0F0EACCFF8A3009C0581938F608D0 +:10E9A0001800C0502FF9123AFE99FFFA123ACC9093 +:10E9B000049CF01F0032CC50049B1A9CF01F0030C6 +:10E9C0001A9B029CF01F002F049B009CF01F002D3F +:10E9D000089B31CA4A2CF01F00266D3830AA707B84 +:10E9E000E6CCFFE42D2BF01F00226D38312A707B1E +:10E9F000E6CCFFDA2C8BF01F001E029B304AE6CCDF +:10EA0000FFC8F01F001B009BE6CCFFC4304AF01F7C +:10EA10000018301CC97B6D38312A707BE6CCFFDAD8 +:10EA20002C8BF01F0010FE91FF7E304AE6CBFFC812 +:10EA3000029CF01F000FE6CBFFC4009C304AF01F81 +:10EA4000000C301CC7FB049CF01F000FFE90FF7AE7 +:10EA50001A9CF01F000EC92B8001EF6C000079E8B2 +:10EA60008000917C80018124800182BC800091DC47 +:10EA700080018658800181E8800182608001817E6A +:10EA8000800180CC80018360800185F4EBCD40FC67 +:10EA9000FACD0110300733095407FEF3022EE6F8D1 +:10EAA00000F854281896129B0E9C8D19F01F0088B0 +:10EAB0008D0C1895E080008A3018303C8D588D4CB4 +:10EAC000F01F0084FACBFEFC1894FACAFEF8FACCC8 +:10EAD000FEF2F01F0081442871390E9CE06B00ECBF +:10EAE0007277F01F007BC710540CE0680420B83820 +:10EAF000442B7738707992D9EDB90000C6B0EDB9E2 +:10EB00000001C06144099238A1B8B238442BE8F83A +:10EB100000B85808C0C07738707A94D9EDB90009A8 +:10EB2000C06144099238A9B8B238442BFAC2FEF148 +:10EB3000441A049CF01F006944185818E08000A58E +:10EB4000C6823079FB38010FF2081800C050440922 +:10EB50009238A5A8B238440CF01F0061049CF01F45 +:10EB600000614428E74C0100EACAFFF071390A9CB1 +:10EB70004DDBF01F005E6858AA286869AA394D3C31 +:10EB800069B85808C440442B773870793078F33A24 +:10EB90000074F00A1800C240EAC9FFF4EACAFFF89C +:10EBA000300CF01F0053581CC53030063018E748B1 +:10EBB000004444095809C0A0FACCFF00F01F004DE2 +:10EBC0000C9C2BCDE3CD80FC30060C9C2BCDE3CDF3 +:10EBD00080FC44099238A1A8B238442BC99BF8F8AC +:10EBE00001AC5808C050F8CCFE54F01F004230CBA6 +:10EBF000300CF01F0037E74C01AC189AC080442855 +:10EC0000713B76794B8B28C9F01F003B442BCC5BC2 +:10EC10005828CA51442C1A9B2E2CF01F00381A96E3 +:10EC20001AD61ADC442BFB380116FB390117EF3AD0 +:10EC300000CF169CF6CBFF34F01F003144283289F8 +:10EC4000F15900D8442CF01F00262FEDC88BE8F8AE +:10EC500000B85808C2916AB93FF8F368009A3028A2 +:10EC60003039E7480044442891694426F01F0025C4 +:10EC7000ED4C004466B88B0866BC580CC2352FFCBE +:10EC800087BC3016C94B440BEF3A00AF169CFB38DB +:10EC9000010EFB39010FF6CBFF58F01F001B440C8F +:10ECA000F01F000FC5CB44287139727A94D8EDB8A3 +:10ECB0000001CD21189B6ABCF8CCFF66F01F001341 +:10ECC000CCFBF01F0013CDDB000087F48001D8DC03 +:10ECD0008001EF6C80017C4480017EE08001F03097 +:10ECE00080017BD88001D3EC8001AD408001E8EC4D +:10ECF0008001D3A88001D1588001887080018C2CBC +:10ED0000800145C480018B74800184F080018450AF +:10ED1000D431203D189616971493303CF01F0070A4 +:10ED2000301831798D588D4930086C068F0858039A +:10ED3000EDF81805E7F81A0018950DC40898A7D83B +:10ED4000C0505898C0302FDDD83A0DD93018F0098E +:10ED50001800C1003008F0041800F9B80500EFF8F9 +:10ED60005A00F9BC0501F9BC0401EFFC4A002FDD93 +:10ED7000D832303CF01F005A6C98F93A0074F13BDD +:10ED8000005E580ACE80F9380075F6081800C0A059 +:10ED900028AC30092FF91439CDE41938F00B1800DC +:10EDA000CFA1ECC0FFF8009CF01F004E1891CD30B1 +:10EDB0006BB85808C090793870793078F33A00749D +:10EDC000F00A1800C6E0FACCFFF8F01F0047581C04 +:10EDD000C0A0F01F0046029B835C350A31DCF01FA7 +:10EDE0000044CB9B40285818CF51FACCFFFCF01FB1 +:10EDF0000041581CCEF1401820785818FE9BFFEBBC +:10EE00004BD8F0F900F85809CE501A9CF01F003B7F +:10EE1000581CCE01400820285818FE9BFFDC6C9E31 +:10EE20002F4EFCE80000212DFAE90024FCE8000840 +:10EE3000FAE9002CFCE20010FAE30034FCE80018C8 +:10EE4000FAE9003CFD3C0020FB6C0044FD38002149 +:10EE5000322AFB6800454AAB1A9CF01F002AF01FBB +:10EE6000002A2EED580CCB606C9A3FF8F53900C89B +:10EE7000F0091800CAF06008F51B00D4202D6C6C56 +:10EE8000500801C9BAC901D8BAD8F01F0020A56C32 +:10EE900049FB310A180B315CF01F00152FEDC9AB8F +:10EEA0004955EAF801AC5808C050EACCFE54F01FAE +:10EEB000001930CB300CF01F0018EB4C01AC189A45 +:10EEC00048D5580CFE90FF816338494B707928C9AA +:10EED000F01F00136A98ABB88B98C76B8001EF6C7A +:10EEE00080015D44800177A4800145C480014658BB +:10EEF00080015F44000087F480015F2800008C607F +:10EF00008002E736800189108001E33C00008B5CC1 +:10EF10008001D3A88001D8DC8001D3EC8001D158D6 +:10EF2000EBCD40E0206D300818991495502850081A +:10EF30001A9C1A965D191897C10140085808C040DC +:10EF40001A9CF01F0009402C580CC030F01F00071D +:10EF50000E9C2FADE3CD80E01A9C5D15581C5F0719 +:10EF6000CEDB00008001D3A8800091E858DCE08867 +:10EF700000035EFD49B8F00C032F49B8F0CCFFF454 +:10EF80005EFC4998F0CCFFE45EFC4978F0CCFFD4FD +:10EF90005EFC4958F0CCFFCC5EFC4938F0CCFFC495 +:10EFA0005EFC4918F0CCFF305EFC48F8F0CCFF1C4A +:10EFB0005EFC48D8F0CCFEF45EFC48B8F0CCFEBC59 +:10EFC0005EFC4898F0CCFE945EFC487C5EFC486891 +:10EFD000F0CCFFFC5EFC4848F0CCFE785EFC000004 +:10EFE0008003C01400000260483930089318930869 +:10EFF0005EFC000000008C844828700C5EFC000061 +:10F0000000008C84EBCD40C0487618976C1C580CDF +:10F01000C030F01F00060E9CF01F00058D1CE3CDD4 +:10F0200080C0000000008C8480018AD480018AECBA +:10F03000EBCD40C0487618976C0C580CC030F01FD0 +:10F0400000060E9CF01F00058D0CE3CD80C0000073 +:10F0500000008C8480018ABC80018B30D4211894FC +:10F060001696149530CCF01F00121897C1D03018A6 +:10F0700099069915F0060946EC0C1502F01F000CD4 +:10F080008F2CC0F05806E08A000B3009129A6E28C7 +:10F09000F009092A2FF91236FE99FFFB8907DA2AAF +:10F0A0000E9CF01F00043FDCD8220000800092007C +:10F0B000800091E8D4311893169214901291580C54 +:10F0C000C36078093018760CF0090945580CC390D4 +:10F0D000189468160A36C1A468075807C0606E48BD +:10F0E0000238C1B03FCCD832662CF8060327580747 +:10F0F000CF71ECC8FFFFF808002CC0582FF8190793 +:10F100005807CEE110960A38CFA5089CF01F0013CF +:10F1100030083FEC8508D832029A009C6E3BF01F05 +:10F120000010301C89166E088908D832760C580CED +:10F13000C040F01F000ADA3A66093018F0090945A4 +:10F14000308CF01F00081894C060850C30089918A6 +:10F150009908CC0BD8320000800091E8800091DC47 +:10F1600080009200D431109412907818409618952F +:10F17000169214910C9B780A089C5D181893318C98 +:10F18000F01F00131897C1F00C9CF01F00118F3C6A +:10F19000C170089B0C9AF01F000F30088F468F1229 +:10F1A0008F218F508F086A29F203002C78085808A5 +:10F1B000C0C0109970085808CFD19307DA3A0E9C56 +:10F1C000F01F00053FDCD8329907DA3A8000920040 +:10F1D000800091DC800091E8D431203D501C500B20 +:10F1E000149112921090580AC4307418009B740A3B +:10F1F000129C5D18A36C502C6228F00C0307580772 +:10F20000C3706E450A990035C3610E940E93C09881 +:10F210006E075807C2D008936E490A39C2C10E94CE +:10F220006E3B0A9A049CF01F00181896CF214019D3 +:10F230006E18930840086E2991098F1C8F2C6E3C24 +:10F24000F01F00128F468F3640296228F009000C0B +:10F2500078090E39EFF80000F9F80A00EFF810000D +:10F26000E7F81A000E9CF01F00092FDDDA3A3FEC98 +:10F270002FDDD8326E385808CFB00039CF903FCC50 +:10F280002FDDD8328000917C800091E8163C5E0C26 +:10F290007808971C990B97085808F1FB1A015EFC37 +:10F2A00078195809F9F81000F3F81A007808580886 +:10F2B000F1F91A013008990899185EFCD40149380F +:10F2C000FACEFFFC709CE21C0002C1D0209DFD3AEA +:10F2D0000021FB6A0021FCE80000FAE90000FCEADA +:10F2E0000008FAEB0008FCE80010FAE90010FCEA5C +:10F2F0000018FAEB0018FD380020FB680020F01F12 +:10F3000000042F7DD8020000000087F480015AA479 +:10F31000D4014898709CE21C0002C0C0300930CC77 +:10F32000EA1C4000303B129AF01F0004F01F00045A +:10F33000301CD802000087F4800186C88001875401 +:10F34000D4014898709CE21C0002C0C0300930DC37 +:10F35000EA1C4000303B129AF01F0004F01F00042A +:10F36000301CD802000087F4800186C880018754D1 +:10F37000D4014898709CE21C0002C0C03009310CD6 +:10F38000EA1C4000303B129AF01F0004F01F0004FA +:10F39000301CD802000087F4800186C880018754A1 +:10F3A000EBCD4080495818977098E2180002C04190 +:10F3B000109CE3CD8080F01F00126F38302911EAD5 +:10F3C000F20A1800C0D03009303B129A307CEA1C97 +:10F3D0004000F01F000CF01F000CE3CF90806E681F +:10F3E0005898CF213009303B129A30BCEA1C4000BB +:10F3F000F01F0004CF1B0000000087F4800158407C +:10F40000800186C88001875458DBE08A0012F939F0 +:10F41000000C3078F0091800E08B000C595BE08A92 +:10F420000008F939000E3AA8F0091800C0D05EFDB6 +:10F430003888F0091800CFC1F939000D38E8F00913 +:10F4400018005F0C5EFCF938000FF2081800CF01BD +:10F45000F93900103038F0091800CEA1F93900113F +:10F460003008F0091800CE41F93A0012F20A1800EB +:10F47000CDF1F9380013F4081800CDA1F9390014C2 +:10F480003888F0091800CD41F939001538E8F0093D +:10F4900018005F0C5EFCD7033019482891095EFC08 +:10F4A00000007A38EBCD40C0208D48D730088E0957 +:10F4B000F0091900C101E06AFFFF300B1A9CF01F30 +:10F4C00000091A9B302AFACCFFE8F01F00079A18AF +:10F4D0001A96AE088E0C2F8DE3CD80C000007A2ADC +:10F4E0008001C7B88001A498D401F01F00054858D6 +:10F4F000F139010B120C5C8CD80200008001F4A4DD +:10F50000000087F4EBCD4060208D306AFAC5FFE63D +:10F51000300B0A9CF01F00091A9CE06AFFFF300BB9 +:10F52000F01F00070A9C1A9B302AF01F00061A964B +:10F530009A1C2F8DE3CD8060800091D08001C7B8E8 +:10F540008001A444D43120DDFEF60234FACEFFA8B7 +:10F55000189516916C9C1494129310907C177C0251 +:10F56000E21C0002C0312F3DD832FEF802167009AD +:10F570005809C041FE7CFBB4CF7BECF8012458183D +:10F58000C041FE7CFC17CF0BECC9FFE85019129C60 +:10F59000F01F007D581CE08000E30D890D98F009F4 +:10F5A0001800E08200E6302CF01F0078E08000D2E6 +:10F5B0006CB850282FF88DB85807FBF91002EFF9F6 +:10F5C0001A00F01F0073C0E0029B0A9CF01F00713C +:10F5D000E08000C96C98EDB80006C0414E88402913 +:10F5E00091D9F01F006D6008EFDCB010F3D7C010A8 +:10F5F00050091039E08B006C0D882FF8AC880D99FC +:10F60000F0091800C061300A320C149BF01F00632F +:10F61000E8C800020E08FB58002EED38010B30043C +:10F62000FB680032400A300BFB640030FB640031A1 +:10F63000FB640033069CF01F005A069BFAC7FFF4D8 +:10F64000400A0E9CF01F0057300A0E9BFACCFFD2E6 +:10F65000F01F0055ED38010BF9D2C003BA78F01F46 +:10F660000053300CFB520028FB5C002AE041003EB6 +:10F67000E0880008EB39000C3888F0091800C2D087 +:10F680004028300A50980E9BFACCFFDCF01F00484F +:10F690004009ECCCFFE88109F01F0046F01F00464E +:10F6A0003008ED4C00CCED5800D04C49F30A014233 +:10F6B000F00A1900C0604B297298EDB8000EC031F5 +:10F6C000301CC52BF01F003E301CC4EBECCCFFE817 +:10F6D000F01F00383FFCC48BEB39000D38E8F0090F +:10F6E0001800CCF1EB39000E3018F0091800CC915D +:10F6F000EB39000F3038F0091800CC313028EB3BE3 +:10F700000012F00B18005F1A3FE8F00B18005F19A9 +:10F71000126AE80A1800CB51EB380013E218001DFA +:10F720005818CAF1EB380014E21800C85888CA917A +:10F73000189A31F9EA090708F4081800CA212FF9C4 +:10F74000E049003FCF81E0680400FB58002AC99BD4 +:10F75000401CF01F0018FE7CFAECC06BFE7CFC160F +:10F76000C03BECCCFFE8F01F00133FECCFDA401CAD +:10F77000F01F0010FE7CFB4FCF7A0000000087F4E2 +:10F7800000007A38800145DC80019F3080015F04F1 +:10F790008001F4088001F4E880014658800091D08F +:10F7A0008001C7B88001A4448001859C8001A49891 +:10F7B000800145EC800145C4000002608001FBFC33 +:10F7C000D401302CF01F0003300948389109D802C9 +:10F7D0008001A12800007A38D431FACD01385009CF +:10F7E000FACEFEA416971896FEFB031C14947C1305 +:10F7F0007C00F6F801245818C460FEFA030A749CD1 +:10F80000E21C0002C05118970E9C2B2DD832E068E4 +:10F8100000F8FAC5FEFCF5D7C0100C9B0A9C548872 +:10F82000549654A730025472F01F00B8FAC1FEE497 +:10F830000A9B029CF01F00B644C95879E08B00284F +:10F840003018F0090948E2180085C2104488FAC946 +:10F85000FFF45012502854D944D80A9B5478029C83 +:10F86000F01F00ACC1C1302744D95809CCE0FAC818 +:10F87000FFF41039CCA0FACCFECCF01F00A70E9CF0 +:10F880002B2DD83230270E9C2B2DD832448B300CA8 +:10F89000F01F00A2E08000B354DCCDFB44C9E04976 +:10F8A000003FE088000B300744B8EDB80007E08067 +:10F8B000009EF01F009BCD9BFEF80268F009032F0D +:10F8C000ECCAFFFC1588EC08000889080DD81589DA +:10F8D000400BEE0901093067F208010A970A44B8A3 +:10F8E000CE5B44B8F0C90001E0490097E088008988 +:10F8F000447CF01F008D44C8189A300944BC303B4A +:10F90000BFBCF9E8108CF01F0089F01F0085301B88 +:10F91000300CF01F008744B83027CC8B44B8E04847 +:10F920000082C090E08900A9E0480080C040E04823 +:10F930000081CEE10E9B0C9CF01F007ECE9B44B854 +:10F94000E0480082E08000C4E08900915978E080BE +:10F9500000C4E0480081CCD1029CF01F0077CD8B21 +:10F9600044B85808C7E144D65803EDF81000E7F84A +:10F970001A008C28A008FB1A0106445814088908AC +:10F98000FB190104F20A0105400A30EB95056807EE +:10F990000E9CF01F006AE08000AE4DB9F2F801D075 +:10F9A0005808E080009E0A9B0E9C5D18E08000993C +:10F9B00030270DE84D4BF768007B44B8C77B44B84F +:10F9C0005818CB90E0480080CA31CB5B447B44BCE4 +:10F9D000F01F005B44BCF8C800805818FE9BFF99DC +:10F9E000029B5C5CF01F0057C93B30084C69300B30 +:10F9F000B2A8169CF01F0054C5DB3FD7C06B4D3832 +:10FA0000F009032F029CF01F0052C82B029CF01F2C +:10FA10000051C7EB029CF01F0050C7AB029CF01FC7 +:10FA2000004FC76B029CF01F004EC72B029CF01FBB +:10FA3000004DC6EBF01F004C4B3AF54C00D4C68B82 +:10FA4000029CF01F004AC64B029CF01F0049C60BE7 +:10FA5000029CF01F0048C5CB447CF01F0047C58BBB +:10FA6000E0480081C1403027C21BF0C8008F5828F1 +:10FA7000FE9BFF40C4DBE0480084FE90FF5DFE95E6 +:10FA8000FF5BE0480085FE91FF44C55B49E91388B0 +:10FA900020185C58B28844D7C29049BB7698E218C7 +:10FAA0000040C20076D96E081039E088002944B8B9 +:10FAB000A7D854B85803F9B70003EFF81000E7F8D7 +:10FAC0001A00F9B70103FBF8104BCF0A447B32EC64 +:10FAD000F01F002AC1DB029CF01F0029C19B3047A8 +:10FAE000C69B0FD8F768007ACE3B302CF01F00255C +:10FAF000CD5BF01F0025CF403FE7C5CBF01F0023B3 +:10FB0000CD7B0000000087F48001C7B88001BF10E2 +:10FB10008001BF448001D3A88001D8DC80018754D4 +:10FB20008003C04C8001870C800186C880016A88F0 +:10FB3000800237E8800208948001F4088001708C0C +:10FB40008001725480018CE48003C14C8002084023 +:10FB50008002085880020864800208708002087CD5 +:10FB600080020888800145C48002084C8002083465 +:10FB7000800209B48001DA3480016D6C8002094092 +:10FB80008001A12880015F048001F310EBCD406863 +:10FB90003006493C1AD61AD649250C9899064929A7 +:10FBA000492A302B0A9CF01F001249231AD60C98C0 +:10FBB0001AD60699490A303BEACCFFFCF01F000C2C +:10FBC0000C981AD606991AD6EACCFFF848BA305BD8 +:10FBD000F01F0007301C2FADE3CD806800007A389D +:10FBE00000007A2C8001F4988003C3AC80016EB8C9 +:10FBF0008001F7C08003C3C48003C3E05EFCD70369 +:10FC0000EBCD40E0203D1897580CC1F07938707A60 +:10FC100094D9EDB90001C1D04C166C785828C15068 +:10FC20000E9CF01F0040C110ED3900943FF8F00920 +:10FC30001800C1405017FACAFFFC1A9BFACCFFF615 +:10FC4000F01F0039581CC180301C2FDDE3CD80E04F +:10FC50004B366C785818CE51CF8B202D306A1A9CB9 +:10FC60004AFBF6CBFF4AF01F0031F01F00312FEDA9 +:10FC7000580CCEB1CE0BFAC5FFF5400A401B0A9CCA +:10FC8000F01F002C581CCE113079FB38000BF20805 +:10FC90001800C35140187139727A94D8EDB8000435 +:10FCA000CD404A5AF4F801045818C3206DE85808AA +:10FCB000C1D1ED3B008049AA580BC2806F387079E2 +:10FCC000F5380081F33C005EF8081800C1F0F4CA72 +:10FCD000FF7E3009C0581538F8081800C0402FF9C9 +:10FCE0001639CFA516395F0CCB1B48D973F85808C5 +:10FCF000CE10F4F801AC5808CDD1CA7B0A9CF01F95 +:10FD0000000FF01F000FCA10CCDB3009CECB3059EA +:10FD1000FB38000BF2081800C981CC9B0000026080 +:10FD2000800189D080017C448002E736800188B060 +:10FD300080017EE0000087F480017BD880017C1088 +:10FD4000EBCD40E048D818961695F0F700F058072C +:10FD5000C0E00E9CF01F000AC0715806C0A00E9CA7 +:10FD60000A9B5D16C0606E075807CF41E3CF80E065 +:10FD70000E9CE3CD80E00000000087F48001FC00D1 +:10FD8000D401F01F0002D80280021500EBCD40F82C +:10FD9000204DE0683100EA18312EE069312EEA1971 +:10FDA000322E306CFAE90000F01F00631894E080F6 +:10FDB00000B9303CF01F00611896301CF01F005F46 +:10FDC000306A202D189B18951A9CF01F005DF01FBB +:10FDD000005D2FED580CE080008732B80A9C1AD8DD +:10FDE000308930084D8A306BF01F00582FFD1A9370 +:10FDF000ECFC00D8F01F0056ECFC00DCF01F0055B6 +:10FE0000ECFC00E4F01F0054ECFC00E8F01F005391 +:10FE1000ECFC00ECF01F0052ECFC00F0F01F005175 +:10FE2000ED3C00B7F01F00506DC85808F9B801014B +:10FE3000EDF81A1BED3C006FF01F004CECFC012CA0 +:10FE4000F01F004BF01F004BF01F004BF01F004B4A +:10FE5000F01F004BECF800F85808C6616D084C978D +:10FE6000EF4800D8ECFC0130F01F0047300830A903 +:10FE700032B54C6A1AD5E06B0080EECCFED8F01F8C +:10FE80000033EEC6FE58304A300B0C9CF01F004089 +:10FE900030081AD530594BFA0C9C304BF01F002B10 +:10FEA0004BD82FEDF10A01423009F20A1900C26065 +:10FEB0006E99EDB9000EC201A7B930688F9950381C +:10FEC0001A9CFAC8FFF8FAC9FFF4089A308BF01FA1 +:10FED00000331897581CC140089CF01F00312FCDEB +:10FEE000E3CF80F8189A0A991A933068308B1A9CDD +:10FEF000F01F002CC7EBF01F002C6E99CDEB089C77 +:10FF0000F01F00273009303B129A311CEA1C4000D8 +:10FF1000F01F0026F01F00260E9C2FCDE3CD80F8A9 +:10FF20002FCDE3CD80F8300A301B149CF01F002148 +:10FF3000C96B0000800092008001EF6C8002E73600 +:10FF4000800188B08003B804800176C480020594E3 +:10FF500080020538800204DC8002048080020424D0 +:10FF6000800203C8800202F880020374800202D477 +:10FF70008002078C800168AC8002017080020EFC58 +:10FF8000000087F48002031C8003C400800091D02D +:10FF90008003C40C00000260800174C8800091E8F6 +:10FFA0008001776C8001FBFC800186C8800187544A +:10FFB00080020B34EBCD406830094AF63068ACA9BA +:10FFC000AC893129314AAC988D99300530130A9BA0 +:10FFD000ED4500ECED4500E88DA58DC5ED550040E3 +:10FFE000ED550042ED55004EED4500D88DB3ECCCFB +:10FFF000FEF0F01F0022ED450124F01F0021ED5519 +:02000004800278 +:1000000000D0ED4C00CCED5500D249ECF01F001EA5 +:10001000F01F001EED4501B8F01F001DF01F001D70 +:10002000F01F001D0A9BECCCFF48F01F001C0A9B30 +:10003000ECCCFF44F01F0019069BECCCFF40F01FF6 +:100040000017069BECCCFF3CF01F0014ED4300446E +:10005000F01F0013F01F001330DCF01F0013F93CF9 +:10006000000FF01F0012F01F0006ED4C01CC069CA3 +:10007000E3CD8068000087F4800091D0800145C402 +:10008000000084CC80017B24800237D080016CDCAE +:100090008001FB8C8001EFE8800144F8800187C873 +:1000A000800205EC8001EF6C800202B8EBCD40606D +:1000B000E06A01F8300B49D518960A9CF01F001C25 +:1000C000F01F001C0C9CF01F001CEACCFFF4F01F7A +:1000D000001BEACCFFE0F01F0019EACCFFF0F01F94 +:1000E0000017EACCFFECF01F0016EACCFFE8F01F87 +:1000F0000014EACCFFE4F01F0012300930DC1AD9FA +:100100001298129A129BF01F000FF01F000FF01FA1 +:10011000000FF01F000FF01F000FF01F000F301C2A +:100120002FFDE3CD80600000000087F4800091D0B7 +:1001300080016F4880021124800145D6800145F27C +:100140008002067C80014690800149B88001804091 +:1001500080015F98800201584848300A4849911848 +:10016000910A930A5EFC000000007A3C00007A4489 +:10017000D421219D4A846808F3D8C001FB6900633B +:10018000E2180002C14030183005FB6800634A3CA9 +:10019000F01F00233018189BFAC9FF9D300A49FC54 +:1001A000F01F0020581CC2802E7DD8225809C1C0E3 +:1001B000109549D870065806CEB0EA050019FA091C +:1001C00000170C9B0E9C306A2FA72FF5F01F00170D +:1001D0006C265806CDD05905CF516808F1D8C0011A +:1001E000F0051700CD5B306AE06B00FF1A9C3015FC +:1001F000F01F000FCDFB48FCF01F0009EA050018B6 +:10020000189BA1781A99300A48ACF01F00062E7D81 +:10021000D822000000007A448003C414800091B802 +:100220008001776C00007A3C800091DC800091D0E6 +:100230008003C41CD40148697208104C930CEDBCB7 +:100240000002C021DA0AF01F0003D80200007A443D +:1002500080020170EBCD408048C76E095809C1305B +:10026000722A580AF3F80003EFF80A01F3F81003B2 +:10027000F5F81A037238129C910AF01F00056E09F6 +:100280005809CEF1E3CF908000007A3C800091E8DD +:10029000D401F01F0007581CC020D802485972082A +:1002A000EDB80002CFB0F01F0004D8028002025463 +:1002B00000007A4480020170F8C900013058F0094A +:1002C0001800E08B00054838B09C5EFF3FCC5EFC18 +:1002D000000087F4D401201DFAC9FFFC12DC1A9932 +:1002E0003048300A307B483CF01F00032FFDD80215 +:1002F0008003C43C8001776CD401201D3018BA8C77 +:100300001A99300A306B484CF01F0004581C5F0CDF +:100310002FFDD8028003C45C8001776CEBCD406870 +:10032000201D48F61893FAC5FFFC2F060AFC0C9C0A +:10033000F01F000C303CF01F000CF94301300C9C06 +:10034000F01F000A0A993018300A307B488CF01FE1 +:100350000009581C5F0C2FFDE3CD8068000087F476 +:10036000800145FC8001EF6C800145FE8003C46C78 +:100370008001776CEBCD4040201D48E6BA8C2F06FB +:100380000C9CF01F000D303CF01F000C1B88F9483E +:10039000006C0C9CF01F000A30181A99300A309B30 +:1003A000488CF01F0009581C5F0C2FFDE3CD8040E6 +:1003B000000087F4800145FC8001EF6C800145FE60 +:1003C0008003C4748001776CEBCD4068201D1898C1 +:1003D0005CB81895FAC3FFFC48D606D82F060C9CCB +:1003E000F01F000C303CF01F000CF94500F00C9C95 +:1003F000F01F000A1A993048300A309B488CF01FD1 +:100400000009581C5F0C2FFDE3CD8068000087F4C5 +:10041000800145FC8001EF6C800145FE8003C480B3 +:100420008001776CEBCD4068201D18985CB818955A +:10043000FAC3FFFC48D606D82F060C9CF01F000C10 +:10044000303CF01F000CF94500EC0C9CF01F000A3A +:100450001A993048300A309B488CF01F0009581C0C +:100460005F0C2FFDE3CD8068000087F4800145FC20 +:100470008001EF6C800145FE8003C48C8001776CA5 +:10048000EBCD4068201D18985CB81895FAC3FFFCA6 +:1004900048D606D82F060C9CF01F000C303CF01FED +:1004A000000CF94500E80C9CF01F000A1A9930482E +:1004B000300A309B488CF01F0009581C5F0C2FFD40 +:1004C000E3CD8068000087F4800145FC8001EF6C7B +:1004D000800145FE8003C4988001776CEBCD4068B5 +:1004E000201D18985CB81895FAC3FFFC48D606D8AA +:1004F0002F060C9CF01F000C303CF01F000CF9453F +:1005000000E40C9CF01F000A1A993048300A309B16 +:10051000488CF01F0009581C5F0C2FFDE3CD80684C +:10052000000087F4800145FC8001EF6C800145FEEE +:100530008003C4A48001776CEBCD4068201D18981F +:100540005CB81895FAC3FFFC48D606D82F060C9C59 +:10055000F01F000C303CF01F000CF94500DC0C9C37 +:10056000F01F000A1A993048300A309B488CF01F5F +:100570000009581C5F0C2FFDE3CD8068000087F454 +:10058000800145FC8001EF6C800145FE8003C4B012 +:100590008001776CEBCD4060201D48F5BABC2F057B +:1005A0000A9CF01F000E303CF01F000DFAC6FFFC45 +:1005B0000D78F94800D80A9CF01F000A0C993018F1 +:1005C000300A306B488CF01F0009581C5F0C2FFD5F +:1005D000E3CD8060000087F4800145FC8001EF6C72 +:1005E000800145FE8003C4BC8001776CEBCD40C028 +:1005F000206D49EC3008F939010DF93B010850082C +:1006000050281AD9F93A010C1ADAFAC7FFF8F93961 +:10061000010AF93A01090E9CF01F00152FED580C44 +:10062000C10140085808C0401A9CF01F0012402C1D +:10063000580CC040F01F0010300C2FADE3CD80C02F +:100640001A9CF01F000E400818965808C0401A9CCB +:10065000F01F0008402C580CC030F01F000758163F +:100660005F0C2FADE3CD80C0000087F48001DAE499 +:100670008001D3A8800091E880018E9CD4214C0792 +:10068000405EEF6C0108EF6B0109EF6E010D1495F0 +:100690001294109A3019F2081800C120EEF801B037 +:1006A0005808C3D05828C4C04B5CEF3B01B5338811 +:1006B000F00B1800C5403398F00B1800C440EF6AE7 +:1006C000010CF01F0030EDDCB010F01F002F0C0CFF +:1006D0005C5C5805C1E11895F01F002A1815EF65FC +:1006E000010AF01F0029EDDCB010F01F00260C0CF1 +:1006F0005C5C5804C3F11894F01F00221814EF64D6 +:10070000010B6E98EDB80001C031F01F0020DA2A0D +:10071000EA0C1800FE98FFE23FCCD822EF3901B571 +:100720003348F0091800CC11EF3901B63418F0093C +:100730001800FE98FFC630E8EF68010CCC3BEF696B +:10074000010CCC0BEF3901B63408F0091800FE9803 +:10075000FFB8301948A8F169010CCB4BF93901B643 +:100760003408F0091800FE98FFA835A8F968010CB4 +:10077000CA9BE80C1800FE9BFFD1CBFB000087F45E +:100780008001F4A48001F504800205ECEBCD40E08B +:10079000303CF01F002330CB18954A26300CF01F58 +:1007A0000022ED4C01AC1897C360303BF01F001FD6 +:1007B0008F2CECF901AC72275807C2903078300BBF +:1007C000B2883068ECFA01ACB498ECF901ACB2AB89 +:1007D000ECF801ACB0BBECF901ACB2CBECF801AC7D +:1007E000EB390075702AB489ECF801ACEB39007470 +:1007F000702AB499ECF801ACEAFB00847029B2AB22 +:10080000ECFC01ACF01F000AE3CF90E0ECCCFE540E +:10081000F01F00080E9CE3CD80E000008001EF6C2B +:10082000000087F48001D8DC8001D3EC800208D47A +:100830008001D3A8D401F01F0002DA0A8001DA5641 +:10084000D401F01F0002DA0A8001DF30D401F01F6A +:100850000002DA0A8001DBE8D401F01F0002DA0AA4 +:100860008001DC04D401F01F0002DA0A8001DC20E0 +:10087000D401F01F0002DA0A8001DC3CD401F01F31 +:100880000002DA0A8001DC58D401F01F0002DA0A03 +:100890008001DC74D401201D1A9BF01F000CC09055 +:1008A00040085808C06048AA7499EDB90000C030EB +:1008B0002FFDDA0A1298A1C831CC9598300A149B02 +:1008C000F01F00042FFDDA0A8001D98C000087F4A4 +:1008D00080014658EBCD40C0206D4958189B709C54 +:1008E000E21C0002C06118970E9C2FADE3CD80C0C2 +:1008F00030081A96502850081A9CF01F000EC1119B +:10090000189740085808C0401A9CF01F000B402C54 +:10091000580CCEB0F01F00090E9C2FADE3CD80C067 +:100920001A9C3017F01F0006CEDB0000000087F491 +:100930008001DED08001D3A8800091E880018E9CE8 +:10094000EBCD4080201D300A1A9BF01F0017C0F02D +:1009500040085808C0F149576E99EDB9000BC071B5 +:10096000EEF801A84917F1D8C001C1212FFDE3CF4E +:10097000908048E76E99EDB90000CF01A1C9300A17 +:100980008F9931CC149BF01F000A6E99CE7BEEFC40 +:1009900001ACF01F00086E98301CABD88F982FFD6B +:1009A000E3CD80808001ED10000087F4800146587F +:1009B000800208D4D401F01F0002DA0A8001DBD0E3 +:1009C000EBCD40FC206D4A5318951097169266980F +:1009D0001496109C1294E21C0002C2D05BF5C30175 +:1009E000303CF01F001F300BF3D7C010F5D4C010FF +:1009F0001AD90C981ADAF3D2C010504B502BFAC601 +:100A0000FFF8F93B00F70A9A0C9CF01F00162FED37 +:100A1000580CC1B1189740085808C0401A9CF01FE4 +:100A20000012402C580CC030F01F00100E9C2FAD4F +:100A3000E3CD80FC18970E9C2FADE3CD80FCEDB884 +:100A40000000CCF13FB7CF3B6698A1A81A9C8798CD +:100A50003017F01F0007CE0B000087F48001EF6C09 +:100A60008001DB588001D3A8800091E880018E9C32 +:100A7000D40130085C7B1099109AF01F0002D80254 +:100A8000800209C0D4013008364B1099109A109C8E +:100A9000F01F0002D8020000800209C0EBCD40E048 +:100AA00020AD3006507CFB6B00201497500650267A +:100AB0001A95FACAFFDCFACBFFE81A9CF01F00195E +:100AC000C111189640085808C0401A9CF01F001623 +:100AD000402C580CC030F01F00150C9C2F6DE3CD3E +:100AE00080E05807C09040980E9B0C9C8F28F01F08 +:100AF0000010581CC0611A9C3016F01F000ECE3B2F +:100B000040085808C0401A9CF01F0007402C580CA1 +:100B1000C0313FD6CE3BF01F00053FD6CDFB0000D5 +:100B20008001DC8C8001D3A8800091E880016C40BA +:100B300080018E9CD401F01F0002D80280020A9C22 +:100B4000EBCD40E0209D3018189A1697F00C09481C +:100B50004A5B7609F1E9000CC06118970E9C2F7D65 +:100B6000E3CD80E0F00811FF12683006507A970854 +:100B7000500650261A95FACAFFE0FACBFFE81A9CF5 +:100B8000F01F001AC1E05807C09040880E9B0C9CD3 +:100B90008F28F01F0017581CC1611A9C3017F01FD6 +:100BA000001540085808C0401A9CF01F0013402C44 +:100BB000580CCD50F01F00110E9C2F7DE3CD80E02E +:100BC0001897CF0B40085808C0401A9CF01F000A25 +:100BD000402C580CC0313FD7CC2BF01F00083FD71A +:100BE000CBEB000000007A4C8001DCEC80016C4013 +:100BF00080018E9C8001D3A8800091E8EBCD40F865 +:100C0000216DFAC6FF901897FB69000EFB68000F74 +:100C1000FB6B0010FB6A00116CF46D036D15ECCCDE +:100C2000FFD4F01F0038306ABA6CECCBFFDCFACC92 +:100C3000FFEDF01F00350D88FB6800190D99ECCB16 +:100C4000FFFEFB69001A320AFACCFFE5F01F002E06 +:100C50004AEE30097C0B301CF809094AF5EB000814 +:100C6000C0902FF95899CF9130060C9C2EADE3CD52 +:100C700080F8F7EA10089D085BF9CF705024FB63F9 +:100C8000001250195807EFF91A003006FAC7FFC4CE +:100C900050F65116FACAFFAC1A9B0E9CF01F001CAE +:100CA000C111189640F85808C0400E9CF01F00195A +:100CB000411C580CCDB0F01F00180C9C2EADE3CD9C +:100CC00080F85805C09041580A9B0C9C8B28F01F57 +:100CD0000013581CC0610E9C3016F01F0011CE3B53 +:100CE00040F85808C0400E9CF01F000A411C580CE8 +:100CF000C0313FD6CBBBF01F00083FD6CB7B0000F6 +:100D000080018058800091DC00007A4C8001DD4C2D +:100D10008001D3A8800091E880016C4080018E9C06 +:100D2000D42120DD4B0510946A0E4126F1DEC0016E +:100D3000C0B0EDBE0001C411EDBE0002C411300709 +:100D40000E9C2F3DD82210973018FB6B002A508A3A +:100D50005077FDE8100850998B08FB540028580C78 +:100D6000F9F71A001A953007FACAFFD05007502732 +:100D7000FACBFFE81A9CF01F001DC101189740082C +:100D80005808C0401A9CF01F001A402C580CCD90F7 +:100D9000F01F00180E9C2F3DD8225806C09040C866 +:100DA0000C9B0E9C8D28F01F0014581CC0C11A9C6F +:100DB0003017F01F0012CE4B30173028CC7B302775 +:100DC0003048CC4B40085808C0401A9CF01F00081F +:100DD000402C580CC0313FD7CB4BF01F00063FD7FB +:100DE000CB0B000000007A488001DDAC8001D3A865 +:100DF000800091E880016C4080018E9CEBCD40E04A +:100E0000207D300616975006189B50261A95FACA70 +:100E1000FFE81A9CF01F001AC111189640085808E4 +:100E2000C0401A9CF01F0017402C580CC030F01F17 +:100E300000160C9C2F9DE3CD80E05807C1904068C0 +:100E40000E9B0C9C8F28F01F0011581CC1104008ED +:100E50005808C0401A9CF01F000B402C580CC0D002 +:100E6000F01F000930060C9C2F9DE3CD80E01A9CFA +:100E70003016F01F0007CD3B1896CDCB8001DE0C5D +:100E80008001D3A8800091E880016C4080018E9C95 +:100E9000D40120CDFB5A0012FB590014FACAFFCC32 +:100EA000502874197408FB590016501874397428A6 +:100EB000FB59001AFB580018745974485039FB58F4 +:100EC000001C74797468FB590020FB58001E74994B +:100ED000748850A95098300974A8FB6C0022FB5B01 +:100EE0000010FB68002C74BBFB6900231A9CF01FE8 +:100EF00000032F4DD802000080020DFCEBCD40EE28 +:100F000020CD3FF94CC850A950B94CC93005303CF0 +:100F100091059305F01F004A322A18961A971A9CD9 +:100F20000A9BF01F0048FAC3FFDE306AE06B00FF47 +:100F3000069CF01F00441AD5ED38004F1AD86D28D2 +:100F40001AD86D191AD9ED1800361AD8ED190032D1 +:100F50001AD96CE81AD8ED19002E1AD9ED18002A02 +:100F60001AD8ED1900261AD9ED1800221AD86C6982 +:100F700030BB1AD9301C6D08ED1900FEED3A001F88 +:100F8000F01F0031ECFB01282F4DF6C80001581866 +:100F9000E0880045ED3100F7ECCAFF8C30153006D3 +:100FA0001AD61AD540D81AD8F4E80000206D069B4E +:100FB000FAE900081A9CF4E20008306AFAE300102B +:100FC000F01F0022EF380021209DFB680021EEE891 +:100FD0000000FAE90000EEE20008FAE30008EEE89B +:100FE0000010FAE90010EEE20018FAE30018EF38FA +:100FF0000020029BFB6800200A990C98FACCFF9015 +:10100000303AF01F00130C9A2EED0C9B40ACF01FF1 +:1010100000110A9C2F4DE3CD80EE1AD50A98FACC28 +:10102000FFD05C5B0A99FE7AFF6AF01F000B2FFD70 +:10103000CB2B000000007A4C00007A488001EF6C56 +:10104000800091D080020E908002E73680020BFC77 +:1010500080020A9C80020D20D431202D500B189163 +:101060004A1776026E9CE21C0002C350304C5011AD +:101070005801E2021700F01F001DEEF700F0189073 +:101080005807C2D030043013C0A82FF45802C1B1A1 +:101090005801F9B301FF5805C1100A9760B66E05F3 +:1010A000F01F00130C9A189B0E9CF01F0012CEE04C +:1010B0000E9CF01F00115805CF114008069C9104AA +:1010C0002FEDD83240182012110C0E9B5018F01F33 +:1010D000000BCE2B1893069C2FEDD8320E943013B4 +:1010E000CEDB0000000087F48001EF6C800145C476 +:1010F000800159A080015CDC800184284828F0FC34 +:1011000000F85EFC000087F4486871195879F9B856 +:101110000001F9F80A00F9B80100F9F81A005EFFB9 +:10112000000087F44828F14C007C5EFC000087F446 +:101130004828F14C01D05EFF000087F4EBCD40C0A1 +:1011400018971496E04A0020E088000830083FF91C +:10115000B898B889E3CF80C02FECF01F00043008A6 +:10116000AE96AE88E3CF90C0800091DCEBCD40FC22 +:10117000206D18941695F01F00431897C1A0F939F7 +:1011800000CC3FF8F0091800C3910896EF3900A889 +:101190003FF8F0091800C5414BB8F0F700F85807C0 +:1011A000C0A1EC040104301C8B042FADE3CD80FC06 +:1011B0000896CF3BE06AFFFF300B1A9CF01F00330C +:1011C0006F38302A707C1A9B2F4CF01F00311A9216 +:1011D0006A0A9A93063AC0442FADE3CFC0FC0C9B39 +:1011E0001A9C5C7AF01F00296F380606707C1A9BE7 +:1011F0002F4C300AF01F0026CD5BE06AFFFF300B5A +:101200001A9CF01F0022302AEEC2FF341A9B049C65 +:10121000F01F00201A966A0A9A93063ACDE55C7A86 +:10122000089B1A9CF01F00191A9B049C300AF01F9F +:1012300000196A08E803000606188B08CA8BE06AE2 +:10124000FFFF300B1A9CF01F0011302AEEC7FF5829 +:101250001A9B0E9CF01F00101A926A0A9A93063A83 +:10126000CBC50C9B5C7A1A9CF01F00081A9B0E9C45 +:10127000300AF01F00096A08060606188B08C8DB4A +:101280008001EFF8000087F48001C7B88001D344E3 +:101290008001D6B08001D558D401F01F0002D802D9 +:1012A00080015D18EBCD40F8FACD00803225149313 +:1012B00018941297BA85FAC6FFFF0C9CF01F001B0A +:1012C000300806063019AC85AC981A951A9A498BE5 +:1012D000089CF01F0018C0503FFC2E0DE3CD80F895 +:1012E0000E9CF01F0015E04C0040C1701AD7493A1F +:1012F000E06B00800A9CF01F00120A9A3019491B0B +:10130000089CF01F000C2FFD1897580CCE61089C0C +:10131000F01F000D0E9CCE2B0E9A089C3019489B96 +:10132000F01F0004CDB0CD9B800091DC8003C4FC95 +:1013300080023BB8800091B8800399D0800091482A +:101340008003C50480024328D421210D300B4B6655 +:10135000169CF01F00368D0CC2B078075807C2A04B +:101360006F985808C2704B283014EF4400641A95E7 +:10137000340B1AD84AFA0A9CF01F002F08990A9ACF +:101380004AEB0E9CF01F002E2FFD580CC2506C082B +:10139000700CF01F002C6C09300893086C08700961 +:1013A0004A98722A910A6C09300893486C0C2F0DE8 +:1013B000D822F01F00261897CF70F01F00254A583A +:1013C0004A59118A4A5B0E9CF01F0025C2056E29FE +:1013D00049D89109CE9B08994A2A4A3B0E9CF01F96 +:1013E0000018C1C14A18340B1AD8492A0A9CF01FA8 +:1013F000001208990A9A49EB0E9CF01F00112FFD6C +:10140000580CC0C13088EF480054CC9B0E9CF01F94 +:10141000000D6C0930089308CC7B0E9CF01F00096E +:10142000CB7B000000008C8C80023B4C8003C50805 +:10143000800399D0800091488003C4FC80023BB8AF +:1014400080024190000003FC80024F4080023B225A +:10145000000004000000042800000404800212A41C +:101460008003C5108003C5148003C5188003C538E8 +:10147000D421169849871495189B109A49740E9C8C +:10148000A888F01F00170A9B30064965EF66002008 +:10149000341A0A9CF01F001449484959EB66004071 +:1014A000700B720CF01F00131896C0C0F01F0012D2 +:1014B0000A99098A0E9B0C9CF01F00106D185808A1 +:1014C000C021D822ECCAFFDC0A9C3209341BF01F71 +:1014D000000CD8220000040400000400800091DC0D +:1014E00000000428800091AC000003FC00008C8CFC +:1014F00080023B0680023B22800212A480023A68EE +:10150000D421210D328A300B1A9CF01F00301A9C16 +:1015100030073014504750544AD5F01F002E8B0C22 +:101520001A96C4A0FAC6FFD8318A0E9B0C9CF01FF5 +:1015300000274A984A990C9B50E850A96A0CF01F62 +:1015400000281896C3B04A7CF01F00274A761AD7A5 +:10155000304B1AD70E984A694A6AEC0B000CF01F00 +:1015600000260E981AD74A591AD74A5A302B0C9C83 +:10157000F01F00210E981AD74A291AD74A2A311B80 +:10158000ECCCFFF8F01F001C0E981AD749F91AD7B7 +:1015900049FA312BECCCFFF4F01F00170E982F8D79 +:1015A000ECCCFFF01AD749B91AD749BA315BF01F12 +:1015B0000012089C2FED2F0DD8226A0CF01F001787 +:1015C0000C9C8B06CF9B0000800091D000007A50CD +:1015D00080022B4C8003C5448003C54C80022C0440 +:1015E000800216FC8002113000007A5480021670CE +:1015F0008003C55480016EB8800217408003C3ACDD +:10160000800216C48003C5708002168C8003C58CCE +:101610008002161C8003C5A480022AF8EBCD40C0CE +:1016200021AD189798E8EDB80000C181368A300BDB +:101630001A9CF01F000C306A0E9B1A9CF01F000AC7 +:101640006E2830195C3850395028488870091A962D +:101650001A9A720C306BF01F00062E6DE3CD80C01D +:10166000800091D0800091DC00007A508002792CBB +:10167000D40148587009300A720C301BF01F000367 +:10168000D802000000007A508002792CEBCD404057 +:1016900021AD368A300B1A9CF01F000830084889AB +:1016A000500872081A961A9A700C302BF01F000519 +:1016B0002E6DE3CD80400000800091D000007A5074 +:1016C0008002792CEBCD404021AD368A300B1A9C3C +:1016D000F01F000830184889500872081A961A9AA4 +:1016E000700C302BF01F00052E6DE3CD8040000004 +:1016F000800091D000007A508002792CD401487883 +:10170000700EF6C9000E189AF8CBFFFA2F2A7C0C3F +:10171000F01F0003DA0A000000007A50800224E083 +:10172000D401580CC051304CF01F0004D802304C8A +:10173000F01F0003D80200008001A12880019F3023 +:10174000EBCD40E0FACD0170FACCFE98F01F001905 +:10175000581CC22145A85818E088001FE068010005 +:10176000FACBFE901A9C16D8F01F00131A95189603 +:10177000FAC7FF00368A300B0E9CF01F0010581677 +:10178000C11048F870090E9A720C300BF01F000D52 +:101790002A4DE3CD80E0300CF01F000B2A4DE3CD45 +:1017A00080E045B85808FE9AFFEE540D5418CEABB1 +:1017B00080015F448002116C800091D000007A505B +:1017C0008002792C80021720000000000000000039 +:1017D000EBCD40C0F8F800D418971696F0F80088C2 +:1017E000F8FA00E85808C040F8FC00C45D185876C4 +:1017F000C1A058065F0858365F091248C11030185A +:10180000EF4800ECEEF900D473985808C050300B44 +:10181000EEFC00C45D18EF4600E8E3CD80C05846FA +:10182000CEF0CFABEEF800EC5808CF603008301B9C +:10183000EF4800ECEF4B00F0EEF800D47198580838 +:10184000CE81CEABD401F01F0002D802800217D0A7 +:10185000F8FC00E85EFCD401F8F800D471A8580840 +:10186000C050F8FC00C45D18D802109CD802D40106 +:10187000F8F800D471185808C050F8FC00C45D187E +:10188000D802DC0AD401F8F800D471285808C050F6 +:10189000F8FC00C45D18D802DC0AD703EBCD408009 +:1018A0003008F8F90108F94801085809C031C08822 +:1018B0000E997207129CF01F00045807CFA1E3CDC8 +:1018C00080800000800091E8D401F8FC00DCF01F6B +:1018D0000002D8028002B4A4D401F8FC0090F01FEA +:1018E0000002D80280023B8CD401F8FC0090F01F6B +:1018F0000002D80280023C84EBCD40C01696F8F777 +:1019000001085807C051C0B86E075807C080EECC18 +:10191000FFFC306A0C9BF01F0004CF710E9CE3CDDE +:1019200080C000008000917CD4011699F8F801185D +:101930005808C0A1F8F800D470285808C0C0F8FCB6 +:1019400000C45D18D802F8CBFF64306A129CF01F07 +:101950000003D80ADC0A0000800091DCEBCD40F8DF +:1019600020AD1897F8F801185808C06030070E9C91 +:101970002F6DE3CD80F8F8F800D470385808CF7098 +:10198000F8FC00C41A9B1A935D181895CF05EEF861 +:1019900001185808C431EEF800D470285808CE70E9 +:1019A000FAC4FFE0EEFC00C4089B5D18CE05EEFC17 +:1019B000009078465806C301EEF800D45808C2C01B +:1019C000700C49BBF01F001BEFFC0024F9B60001AE +:1019D000EFFC102478075807C111CCAB5806C0B0F3 +:1019E0006E885808CC50EECBFFE8306A089CF01F98 +:1019F0000012CBE06E075807CBB0EEF80194580800 +:101A0000CFA16E581035CEB16E4B0A9A1A9CF01FBA +:101A1000000ACE70CE4B3006CDEBFAC4FFE0306A40 +:101A2000EECBFF64089CF01F0005CC2B8003C65C46 +:101A3000800091A08000917C800091DCD401F01F97 +:101A40000002D8028002195CD42120AD3008FB5876 +:101A50000024508816961897F6F801845818C0404C +:101A60003FFC2F6DD82277185808CFB0F8F500B892 +:101A70005885C2205905CF512DCB0A9A1A9CF01FC8 +:101A800000171A940A9A303BEEFE00D47C5858088E +:101A9000CE801ADA1AD43009EF490104EEFC00C4F2 +:101AA00030681AD8FACAFFD430181ADA48CA7C56F5 +:101AB0005D162FCDCD7B2DCB318A1A9CF01F0007F0 +:101AC0000A9AECCBFFCCFACCFFE8F01F00041A9482 +:101AD000320A302BCDAB0000800091DC80039C38B3 +:101AE000D42118951696F01F000F1897C05078381B +:101AF0002FF89938D82A310CF01F000B1894C0F039 +:101B00000C9B306A2FCCF01F000930188938EAF995 +:101B100001088909EB4401080E9CD822DC2A000048 +:101B2000800218F880028F24800091DCEBCD40FC0D +:101B3000EDD9C010407218941693ECCCFFFC1495AC +:101B4000910CF01F00161897C190E8F800907039BA +:101B5000EC081608B893B889B8B6B8A85805C100FB +:101B60000C9A0A9BF8C6FFFC0C9CF01F000D0E9C03 +:101B70005802E5F61A00E3CD80FCE3CD80FC0C9A18 +:101B80000A9BF8C6FFFC0C9CF01F00060E9C580236 +:101B9000E5F61A00E3CD80FC80009200800091DC25 +:101BA000800091D0D401401E5C791ADEF01F000243 +:101BB0002FFDD80280021B2CEBCD40F8203DF8F819 +:101BC00000BC1493129458485F0A58285F0918976C +:101BD00016961449C0603FF70E9C2FDDE3CD80F8C8 +:101BE000F8FC00DCF01F002BC0305816CF50EEC5BB +:101BF000FF64306A4A8B0A9CF01F0028C0D1EEF8BF +:101C000000D470285808C060EEFC00C41A9B5D1810 +:101C1000C370EEC5FF043008F7D6C0081AD8F3D455 +:101C2000C010FAC8FFF4069A0E9CF01F001D2FFD8D +:101C30001896580CCD1040296E2C580CC1001298E3 +:101C40000A9B0C99E06A888EF01F001618970C9C6E +:101C5000F01F00150E9C2FDDE3CD80F8EEF800D4C8 +:101C600071845804C0B01298EEFC00C40A9B0C9911 +:101C7000E06A888E5D141897CEBB3FF7CE9B306A22 +:101C8000485B1A9CF01F0005CC501A95CC5B0000F5 +:101C900080028F78800217C88000917C80021B2C04 +:101CA00080028154800091E8EBCD40C0189EEFDAAD +:101CB000C010782C580CC0600E9AF01F0009E3CDBC +:101CC00080C0FCFA00D475865806C0700E9AFCFCE1 +:101CD00000C45D16E3CD80C0E3CFC0C08002815454 +:101CE000D421497A1894301BF01F0016300A089B43 +:101CF000495CE8C5FF64F01F0015E8F701085807C4 +:101D0000C1C03006C0680E966E0C580CC1601897A2 +:101D1000306A0A9BEECCFFFCF01F000DCF51580635 +:101D2000EFF80000E9F80A42EFF81000EDF81A00A9 +:101D30000E9CF01F0008D822D82200008003C66441 +:101D400080023A1A80023058800274008000917C30 +:101D5000800091E8D401F01F0002D80280021CE04C +:101D6000EBCD408048FA1897301BF01F000FEEF8BB +:101D700000BC5818C0F00E9B300A48CCF01F000C75 +:101D80000E9CF01F000C0E9C307BF01F000BE3CD6F +:101D900080800E9C305BF01F0008E3CD8080000047 +:101DA0008003C68880023A1A8002360080027400DE +:101DB00080021CE0800217D0EBCD4040486A1896A4 +:101DC000301BF01F00060C9B300A485CF01F00051A +:101DD000E3CD80408003C6A880023A1A8002360014 +:101DE00080027400EBCD40F81894F8FC00CC580C3D +:101DF000C360E8F800D05808E08A00321897E8C3BA +:101E0000FF643005C0A8580AC200EEC7FF64E8F8B6 +:101E100000D00A38E08A00242FF5E8F600B0306AD6 +:101E2000069B0E9CF01F0015CF115806C0E06C5A9F +:101E30006EA81438CE91EECCFFFA6C4BF01F000F59 +:101E4000C0406C5A580ACE215807C0906F5AEECB4A +:101E5000FFD4E8FC00DCF01F000AC0403FFCE3CDEB +:101E600080F8EECBFFA8E8FC00DCEEFA0080F01F63 +:101E70000005CF60CF4B00008000917C8002B58CC4 +:101E80008002B52CD4211895E06C009CF01F001B3B +:101E90001897C310EAF401185804C2A1EAF800D454 +:101EA00070C85808C250189B301AEAFC00C45D186C +:101EB0001898C1E50E9C3016E06B009CF0060D46AC +:101EC000EC0B024BF01F000E58065F09580C5F1810 +:101ED0001248E8081800F8071710EAFC00CCF01FB9 +:101EE0000009089CEB4600D0EB4700CCD8220E9CA2 +:101EF000F01F0004DC2A000080009200800091F4B2 +:101F0000800091E8EBCD40801897F01F0008C031A9 +:101F1000E3CD80800E9CF01F0006C0550E9CF01F84 +:101F20000003CF7BE3CFC08080021DE480021E84CB +:101F3000EBCD40FE208D18961697149512921091B5 +:101F4000580BC580F6FB0080580BC0E16F5B580B47 +:101F5000C3210C9CFEFA02E4303BF01F00B93FFCA9 +:101F60002F8DE3CD80FE7568EDB80001CF011A9A80 +:101F7000EECCFFA8F01F00B3CEA16B484029126839 +:101F8000CE606B3840191268CE206B584039126809 +:101F9000CDE0FEFA02B2301B0C9CF01F00A9EEC48B +:101FA000FFD4302A303BECFC00DCF01F00A8089C7A +:101FB0006F5AC4386B68EDB80000CCC1EEC4FFD4D2 +:101FC0001A9A089CF01F009FCC516B484029126858 +:101FD000CC106B3840191268CBD06B58403912685E +:101FE000CB90FEFA026A301B0C9CF01F0095301A51 +:101FF000CDAB7568E21800021A93F9B40102F9B486 +:102000000001F8FC00DC1A9BF01F0092C1F05BECB1 +:10201000C4001A9C320A300BF01F008F6B48502806 +:102020006B3950196B585038089A303BECFC00DC87 +:10203000F01F0086300C189A189BECFC00DCF01F97 +:102040000087C3602F8DE3CFC0FE402A6B49F3EABF +:102050000008C0D0401A6B39F3EA0008C110403ABA +:102060006B59F3EA0008C1B04004CDFB1AD9302BFC +:102070001ADA0C9C4FAAF01F00722FEDCCBB1AD9B4 +:10208000302B1ADA0C9C4F7AF01F006D2FEDCC2B01 +:102090004F5A302B0C9CF01F006ACBCB1AD9302B37 +:1020A0001ADA0C9C4F1AF01F00662FEDCB3B580735 +:1020B000EE0B1700F60A1700F9B80158EFD8E10B3C +:1020C000EFFA1020ECFC00DCF01F0069CBC16B487C +:1020D0004029F1E90009EDB90004C5D0EDB90003CC +:1020E000C750EDB90002E081009430484E1AED4827 +:1020F00000B8301B0C9CF01F00526B384019F1E9FE +:102100000009EDB90004C500EDB90003C7513088DE +:102110004D9AED4800B4301B0C9CF01F00496B58E1 +:102120004039F1E90009EDB90000E080007FEDB928 +:102130000001C55130284D1AED4800BC301B0C9CE5 +:10214000F01F003FECFA00BC306BECFC00DCF01F31 +:10215000003FECFA00B4304BECFC00DCF01F003B1D +:10216000ECFA00B8305BECFC00DCF01F0038029A9F +:10217000049BECFC00DCF01F00421894FE91FF640D +:102180006B57E2170002C191ECFC00DCF01F003D30 +:102190000E9CCE7A31084BCAED4800B8301B0C9C1F +:1021A000F01F0027CABB31084B8AED4800B4301B32 +:1021B0000C9CF01F0023CB4BECFC00DCEACBFFDCDB +:1021C000320AF01F0033089CCCCA30884B1AED4805 +:1021D00000B8301B0C9CF01F001AC90BEDB90004AD +:1021E000FE91FF3231084ACAED4800BC301B0C9CFE +:1021F000F01F0013CA8BEDB90000FE91FF25301BC4 +:102200004A6AED4B00B40C9CF01F000DC89BEDB961 +:102210000001FE91FF1930284A1AED4800B8301B22 +:102220000C9CF01F0007C6AB301B49EAED4B00BC0D +:102230000C9CF01F0003C87B8003C8EC80023A1A94 +:102240008002BD688003C6C08002B4D48003C6E0AB +:102250008002C04C800091D08002B58C8003C734CE +:102260008003C7788003C7008003C7BC8002B52CF9 +:102270008003C8288003C86C8003C8B08002B64CB5 +:102280008002B9EC8003C8008003C8588002B91CE2 +:102290008003C8148003C8CC8003C8808003C84072 +:1022A0008003C894EBCD40C07758EDB80003F9B86F +:1022B0000008F9F80A2FF9B80104F9F81A2F18974D +:1022C000300A1696F8FC00DC149BF01F0025300A3B +:1022D000EEFC00DC149BF01F0023300AEEFC00DC57 +:1022E000149BF01F002130183009ECCBFECCEF48D6 +:1022F00000B8EF4800B4EF4900C02FF976085858ED +:10230000E08B00225808C2512FCB5849CF71EEFA0A +:1023100000BC306BEEFC00DCF01F0014EEFA00B4E1 +:10232000304BEEFC00DCF01F0011EEFA00B8305B21 +:10233000EEFC00DCF01F000DEEFC00DCF01F000CDA +:10234000E3CD80C03048EF4800B8EF4800B4CE0B72 +:102350003028EF4800B8EF4800B4CDAB8002B58C10 +:102360008002B52C8002B5EC8002B4D480028F804C +:10237000EBCD40E0205D1897F8F600B0F8F800BC0F +:102380005828C57059085F0958485F081248C2901C +:10239000302BEEFC00E0F01F002F314A300B1A9C6E +:1023A000F01F002D1A95EEFA00BC588AC200EEF814 +:1023B00000905808C03070785028149958895F18D8 +:1023C00058195F191069ECF8017CEEFC00E01A9ACC +:1023D0000C9B50495038F01F00212FBDE3CD80E009 +:1023E000300BEEFC00E0F01F001BCD8B30085018C6 +:1023F000301B500BECF900F0F3EB0008FBFB1A016B +:10240000EDB90001C120EEF800905808C1F0EEFCD3 +:1024100000D4580CCD10780C491BF01F0012FBFCA7 +:102420000A01EEFA00BCCC4B4018A1B85018CECB34 +:10243000300BF8FC00E0F01F000C300BEEFC00E06D +:10244000F01F000AEEF800BCC9EB3089CB8B00000E +:1024500080026178800091D08002581C8003C65CA5 +:10246000800091A0800261A48002618CEBCD40E0ED +:10247000189716951496F8F800905808C0D0704830 +:102480005808C0A1F8FC00D4580CC060780C48EB88 +:10249000F01F000EC1501AD648DA1AD5301B0E9C18 +:1024A000F01F000C300A0E9B48BCF01F000C0E9968 +:1024B0000C9B0A9C3008488AF01F00092FEDE3CDE1 +:1024C00080E000008003C65C800091A08003C960AA +:1024D00080023A1A800230588002740080027474BC +:1024E000D4211295169614941897F8F900BC5849FF +:1024F000C1C0F8FA00F4580AC10158895F08581998 +:102500005F0B104BF40B1800F9BB000AF9BB014636 +:10251000F01F0019EEFA00F4F4C8FFFFEF4800F4D2 +:10252000EEF900945809C020D822306A0C9BEECCFA +:10253000FF04F01F0012EEF800BC5828C111EEF89D +:1025400000D471585808C040EEFC00C45D180A99C8 +:10255000089A0C9BEEFC00DCF01F0009D8220A99B7 +:10256000089A0C9BEEFC00E0F01F0006FE99FFDECF +:10257000CE7B00008002246C800091DC8002C3CC02 +:10258000800261FCEBCD406C1ADA18951ADB1692CA +:102590001493301B48AAF01F000B48B6300A0A9B60 +:1025A0000C9CF01F000A0A990C9A069B049C3008A8 +:1025B000F01F00072FEDE3CD806C00008003C99071 +:1025C00080023A1A8002360080027400800274741D +:1025D000D401F01F0002D80280022584EBCD40C058 +:1025E000189E1497109CFCF800BC5888C240580BE9 +:1025F000C1A0FCCAFF64FCF600D46C585808C19016 +:102600001ADC16981AD9300BFCFC00C41ADBFD4BFF +:102610000104490E0E991ADE301B6C565D162FCD43 +:10262000E3CD80C0FCF600D448BA6C585808CE916F +:10263000E3CFC0C0585CF9B80002F9B80104580BE8 +:10264000C040FD4800B4CD6BFD4800B8482ACD4BD2 +:1026500080037E2080039C38EBCD40F8FACEFFE863 +:1026600018967C35F8F400D47C037C17685C7C2ECB +:10267000580CC0F01AD51ADE300E1AD71AD3ED4E08 +:102680000104ECFC00C468565D162FCDE3CD80F844 +:10269000E3CFC0F8D42118951694F8F70104580731 +:1026A000C020D822F8F900D472585808C4C01AD7EC +:1026B000F94701041AD70E981AD74B6A1AD70E9BFE +:1026C0007256F8FC00C40E995D16EAF900D42FCDBD +:1026D00072585808C3801AD7EB4701041AD70E98CE +:1026E0001AD74ACA1AD70E9B7256EAFC00C4301990 +:1026F0005D16EAF900D42FCD72585808C2401AD797 +:10270000EB4701041AD70E981AD74A2A1AD70E9BFC +:102710007256EAFC00C430295D16EAF900D42FCDC8 +:1027200072585808C1001AD7EB4701041AD70E98FF +:102730001AD7498A1AD70E9B7256EAFC00C4303960 +:102740005D162FCD5804C200EAFA00D47458580818 +:10275000C12030091AD91AD9EB4901041AD91298A3 +:102760001AD9129B7456EAFC00C4089A5D16EAFA5C +:1027700000D42FCD75A85808C070089B3019300AB6 +:10278000EAFC00C45D183018EB480104D8220000B0 +:1027900080039C38D421204DF8F900D41897169561 +:1027A00073885808C2C11094F8C6FFEAC1C8EEFC8D +:1027B00000C45D1B1AD4189B0E984C19E06A888ED1 +:1027C0000C9CF01F00408F2C2FFD580CC111580598 +:1027D000C140189B305CF01F003CEEF900D47388B8 +:1027E0005808C0D1737B580BCE31169CCE4BEECB24 +:1027F000FFF0F01F0036C1302FCDDC2A7378580867 +:10280000C0B0EEFC00C45D18C070189B306AEECCFE +:10281000FFF0F01F002F6E2C580CCEA1EF39007A7C +:102820003008F0091800C3A1EEF800D47048580829 +:10283000C100301BEEFC00C45D18C0B4EEF800D43B +:1028400071485808C0601A9BEEFC00C45D18C214A1 +:10285000300B0E9CF01F001FEEF800D47099580941 +:10286000C070300BEEFC00C45D19EEF800D470A807 +:102870005808C050301BEEFC00C45D183018EF48FB +:1028800000C84959300C72082FF893082FCDD82270 +:102890004038F1D8C002CDD0CB0B300848891AD8C7 +:1028A000E06A888E0E98EECBFFF0EECCFF86F01F2C +:1028B00000058F3C2FFD580CCB81C9FB800224E022 +:1028C0008002819C80028F1C800281E4800091DC68 +:1028D0008002269400007A6CEBCD40E018971695A4 +:1028E000300BF01F001DEEC6FF64306A49BB0C9C24 +:1028F000F01F001BC2E0EEF801185808C1F00C9B55 +:102900000E9CF01F00183006EEFC00DC0C9BEF461E +:1029100000B0F01F00150C9A0C9BEEFC00E0F01FBD +:1029200000130C9BEEFC00E0F01F00110C9BEEFC72 +:1029300000E0F01F0010E3CD80E0EEF800D470D886 +:102940005808CDE00A9A0C9BEEFC00C45D18CD8BB4 +:102950001896CD6B800217D0800217C88000917C3A +:10296000800226948002B9D48002581C800261E85B +:10297000800261D4D401F01F0002D802800228D85E +:10298000EBCD40C01897F8F800C45808C230303B6F +:10299000F01F003DEEF800D470495809C070300BAC +:1029A000EEFC00C45D19EEF800D470A95809C0709F +:1029B000300BEEFC00C45D19EEF800D47098580896 +:1029C000C050300BEEFC00C45D18300B0E9CF01FA5 +:1029D000002F6E2C3006F01F002E8F266E3C580CF8 +:1029E000C040F01F002B8F36EEF800E45808F9B80D +:1029F0000100EFF81A39EEFC0090580CC060F01F8F +:102A000000253008EF480090EEFC008CF01F0022FB +:102A10003006EEFC00DC0C9BEF46008CF01F001F24 +:102A2000EEFC00E0F01F001EEEFC00DCEF4600E0D4 +:102A3000F01F001CEEFC00DCF01F001BEEFC00DCB5 +:102A4000F01F001A0E9CEF4600DCF01F0019EEFC90 +:102A500000CCF01F00110E9CEF4600D0EF4600CCDA +:102A6000F01F00140E9CF01F0014EEFC00C4580C64 +:102A7000C070EEF800D470785808C0205D18E3CD1F +:102A800080C00000800228D88002269480028174D1 +:102A9000800242B4800091E88002B4CC800256ECFF +:102AA00080029438800294088002C0788002189CCA +:102AB00080021DB880021CE0EBCD4080169778099B +:102AC0001639C0F1761899080E9CF01F000A0E9C6A +:102AD000F01F0009E3CF808072180E38C060109993 +:102AE0005809CFB1E3CFC0806E189318CEEB000029 +:102AF00080022980800091E8EBCD40801897580C27 +:102B0000C051C1980E9CF01F000D6E0B580BCFB139 +:102B1000F01F000BF01F000B6E4C580CC060F01F34 +:102B2000000A6E4CF01F00096E8CF01F00080E9C0E +:102B3000F01F0006E3CD808080022AB88002724C2C +:102B40008002728480028F20800091E8EBCD40C02B +:102B50001897580CC05130060C9CE3CD80C0F01F74 +:102B60000021CFA1334CF01F00201896CF606E08D3 +:102B70006E19991899296E286E89993899996E3C21 +:102B8000580CC040F01F00198D4C6E7C580CC04092 +:102B9000F01F00168D8C6E498D59495891096E5A57 +:102BA0008D6A4948910A49486E698D7991090C9C52 +:102BB000F01F0012C11130196C988DB95808EDF949 +:102BC0001A0C6C285808CC906C185808CC606C4CC7 +:102BD000F01F000BCC200C9C3006F01F000ACBDB52 +:102BE0008002720880028F24800091940000046C9F +:102BF00000007AA400007AA0800275F880028F1E7F +:102C000080022AF8D431204D580C5F08580B5F0918 +:102C1000189316971248C05030050A9C2FCDD83211 +:102C2000E06C011CF01F00C01895CF803018F948E7 +:102C3000010CFEF102F66E22620B580BC100580225 +:102C4000E0800144E2C4FFFC3006760B049CF01FD8 +:102C500000B8C0C02FF6090B580BCF810A9CF01F9B +:102C600000B50A9CF01F00B4CD8BE2060328EB48A8 +:102C700000D46E0C580CE0800122F01F00B0EB4C29 +:102C8000008CF01F00AFEB4C0090CE906E185808EF +:102C9000C0A0785CF01F00A86E1CEAF60090F01F40 +:102CA00000A78D5C6E385808C0C0EAF8009070BC70 +:102CB000F01F00A16E3CEAF60090F01F00A08DBC52 +:102CC000EAF800905808CCB06E4C580CCC80F01F3D +:102CD000009DE04C0063FE9BFFC3EAC1FFEA364A59 +:102CE0006E4B029CF01F00986E5C580CE08100F95E +:102CF0006620340CF01F008C1897CB10FEF8024CA5 +:102D00008F78FEF8024AFEF9024A8F98FEF80248D0 +:102D10008F058F458F658F898FC83006FEF4023C82 +:102D20008F168FA4FEF202388FB2EAF900907288F3 +:102D30008FD8EAF9009072988FE8EAF9009072A8AB +:102D40008FF8F01F0088EB4C00E0E08000C20C9B85 +:102D5000F01F00850C9BEAFC00E0F01F0084EAF8FD +:102D600000D470685808E08000A7029B0A9C5D1898 +:102D7000EB4C00C4FE90FF74EAF8009070BBEAF8D8 +:102D800000D470895809C0605D19FE95FF69EAF8A2 +:102D900000D471685808C0F0EAFC00C45D181897A8 +:102DA000C0A0029BF01F0062C0600E9B364A029CCE +:102DB000F01F006534CCF01F005CFE90FF514EC840 +:102DC0004EC9991899294EC84EC9993899494EC883 +:102DD0004EC9995899694EC84EC9997899894EC873 +:102DE0004EC9999899A94EC84EC999B899D94EC853 +:102DF0004EC999C899E94EC84EC9F9440040F942F4 +:102E00000044990599F8F9490048F01F0069EB4C16 +:102E100000DCFE90FF25EB39007A3008F00918003D +:102E2000C5C1300A029BF01F0063EAF80090EAFC7B +:102E300000DC707BF01F0060EAFB00E0EAFC00DCD5 +:102E4000F01F005EEAFA009074C85808C60174D8F2 +:102E50005808C52174EA580AC080302BEAFC00DC0F +:102E6000F01F0057FE91FEFC009B0A9CF01F0055CE +:102E7000FE95FEF6EACBFFF0EAFC00DCF01F005204 +:102E80003FF8EB4800E4EAF900D473485808C0D092 +:102E90001A9BEAFC00C45D18C0814038EDB80002FE +:102EA000C0413018EB4801188B0366088B18870562 +:102EB000FE9FFEB5EB4800C4CD2A6E3B6E1CF01F92 +:102EC0000043EB4C0090CFDAF94B00D4CD3A0E9C86 +:102ED000F01F0019FE9FFEC4EACAFF86CA4BF01F0E +:102EE000001958FCFE9BFEBC6E5B310AEACCFF86E3 +:102EF000F01F0015CFEA109A301BEAFC00DCF01F2F +:102F00000030FE91FEADEAFA0090CA5B109A300BD9 +:102F1000EAFC00DCF01F002AFE91FEA2EAFA009013 +:102F2000C97B000080028F2400000470800091A003 +:102F300080022980800091E88000919480021348EB +:102F4000800091B8800091AC80021D60800225DC79 +:102F500080021BB8800218C8800218E8800218D8C6 +:102F60008002609C800261E8800261D48002184483 +:102F700080021850800225D0800229748002304CD3 +:102F8000800226588002360080021A3C80021928EE +:102F900080021CA880021F0480021BA480021D5412 +:102FA0008002186E80021884800218568002C0DCED +:102FB0008002B4C08002B4B88002B4CC8002B4D421 +:102FC000800227948002B90480023B4CEBCD40E0A4 +:102FD000306A18971695F8C6FF64497B0C9CF01F61 +:102FE0000017C270EEF801185808C1800C9B0E9CA7 +:102FF000F01F00130E9CF01F00133006EEFC00DCE7 +:103000000C9BEF4600B0F01F00100C9A0C9BEEFCDE +:1030100000E0F01F000EE3CD80E0EEF800D470E891 +:103020005808CE500A9A0C9BEEFC00C45D18CDFBEC +:103030001896CDDB800217C88000917C8002269410 +:10304000800276648002B9D48002581CD401F01F3B +:103050000002D80280022FCCEBCD40C0499BF8C7BC +:10306000FF641896306A0E9CF01F0017EDFB189C49 +:10307000E06800A2EDD8E007EDFB08A20FD81AD84F +:103080000FC91AD90FB81AD80FA91AD90F9848FA28 +:103090001AD80C9C1ADB302BF01F000D0E9B0C9CD9 +:1030A000F01F000CECFC00DCF01F000B303B0C9C14 +:1030B000F01F000A30182FADED4800A8E3CD80C006 +:1030C000800217C88000917C8003C9B880023A1A38 +:1030D00080021AE08002BA1C80022FCCD431FACDD3 +:1030E00000D03007F94700A8189516941491580B92 +:1030F000E0800217F6F60084E8CCFFFA76ABF01F0A +:10310000012A1AD61ADC09D81AD809C91AD909B855 +:103110001AD809A91AD909981AD809890A9C1AD95A +:10312000FEFA0488302BF01F01220E9B306A2F8D8F +:10313000EACCFF64F01F011F306A089BEACCFF5EF7 +:10314000F01F011D0A9CF01F011D300AEAFC00DC83 +:10315000149BF01F011B635AEDBA0003C061E2F833 +:1031600001745808E08100B1301063795809C0E05B +:10317000E1D9C0011298EDB90001E08000A4EDB9D9 +:103180000002F9B80004E1D8E030EAF800D4710890 +:103190005808C060009BEAFC00C45D18635A5804DC +:1031A000C07069585808C5A0F1DAC002C6E114978A +:1031B000E2170013C5B1029B0A9CF01F0102FAC876 +:1031C000FF9453375028089B0A9CF01F00FFEAF831 +:1031D00000B45828E08001BAE089007F5818E080E8 +:1031E000017130285038EAF800B85828C7F058283C +:1031F000E08900805818E080016230285048EAF9E0 +:1032000000BC58495F0B58895F08F7E81008C78071 +:10321000E2C9FECCE2C8FF0C16963007EC1600019E +:103220005019500812931092505766095809E081BE +:1032300001122FF72FC32F025847CF81EAF900BCA4 +:103240005889C671E2F800F04059F1D8C002F3E89D +:103250001008E08101311096C5F8E8F800805808A0 +:10326000CA70F1DAC002CA40C1083509FAC8FF3095 +:1032700010D9029AFAC9FF94300B50290A9CF01F0A +:1032800000D3CA202CCDD832E2F801485808E0819A +:10329000010FEAF900B0089A300BEAFC00DCF01FDD +:1032A00000CCE080017A3509FAC8FF3010D9029AC3 +:1032B000FAC9FF94089B50290A9CF01F00C4C8401B +:1032C000CE2BA1B0C5DBE2F801785808F9B00004B4 +:1032D000F9B00105C4BB5848C8605908C831303935 +:1032E0005039EAF800B85828C83130195049C88B0D +:1032F0005848C8505908C82130395049C81B3008AF +:103300005058E2C8FECC30165018E2C8FF0C5008E6 +:103310005909E080011FEAF800D470A85808C0508D +:103320000C9BEAFC00C45D18303B0A9CF01F00A90E +:10333000354AFAC7FFE8300B0E9CF01F009E580478 +:10334000E0800126E8F8008450645098E8C8FFFA4D +:10335000507868A95089E2FA0184581AE080009EEA +:103360004029403850A950C84049433850D950B836 +:10337000EAF800BC5848E08000E7E0890088581867 +:10338000E08000A43018510A4014400350E850F087 +:10339000FACAFFAC0899069BFACCFF9C7208580841 +:1033A000C040F54BFFF0720814A82FC92F0B183A34 +:1033B000CF61E2F801445198EAF601185806E0801E +:1033C0000089FEFA0212302B0A9CF01F0079301996 +:1033D000EAF800BC5908E080008F5809E0800098A6 +:1033E000305B300A0A9CF01F007D40585808C1C06D +:1033F000EAF800D471485808C170FACBFF44EAFCDF +:1034000000C45D18C1114328EDB80001C0D1189760 +:103410004F30189268095809E08100A12FF72FC496 +:103420002F035847CF81EAF800B05808C070103118 +:10343000C050EAFC00E0F01F006BEAFC00DC029BDD +:10344000EB4100B0F01F00680A9CF01F00682CCD13 +:10345000D832EAFB00D4E2FA014476585808C13069 +:103460001AD91AD23009EB4901041AD94DC90E3ABA +:103470005F081AD94DEA76560E99301BEAFC00C453 +:103480005D162FCD30165056CD5A5888C2005908B7 +:10349000FE91FF7A3048C78BE2F901A45809FE9AE1 +:1034A000FF6140985808FBF90A09C5BB6368F1D869 +:1034B000C021CF0A50375047C2FB30085048CA0AD3 +:1034C00030085038FE9FFE913008C5EB3038C5CB30 +:1034D000EAF800D470F85808FE90FF750E9BEAFCDD +:1034E00000C45D18FE95FF6F0C99EAF800BC5908FE +:1034F000FE91FF75029B0A9CF01F003E0A9CF01F84 +:10350000003E307B0A9CF01F0033C70BEAF80090A6 +:1035100070495819F9BB000AF9BB013CC63B745B02 +:10352000744CF01F00214B5A1ADC302B0A9CF01F00 +:103530000020306A089BEACCFF5EF01F001E2FFDC2 +:10354000FE9FFE023028C20B30195039FE9FFE4DFF +:10355000029B0A9CF01F0027CDFAEAFB00D4E2FA96 +:10356000014476585808FE90FF5B1AD91AD3EB42F3 +:1035700001041AD20E3A5F081AD00E99765649CA3B +:10358000301BEAFC00C45D162FCDC49B6248507806 +:1035900062595089CE1A301BEAFC00E0F01F001877 +:1035A000FE9FFE8380023A1C8003C9F880023A1A0B +:1035B000800091D0800091DC80021DB88002B5ECC3 +:1035C000800222A48002269480021F308002938011 +:1035D000800217D08003CA6C8002246C80037E2096 +:1035E000800257488002B9D48002237080039C383F +:1035F00080021A4880021CE08003CA488002559667 +:10360000EBCD40C021AD1897F8F800AC5808C68142 +:10361000F8F6010CEEFB009076095809C061C8F875 +:1036200072095809E080008CF2F801945808CF9193 +:103630003008EF48010C76495809C670EEFC00D4FA +:10364000580CC0E04DAB780CF01F005AEFF8002486 +:10365000F1FC0A04EEFB009076485808C560EEF8CD +:1036600000E85818E088008D760AEEF800C858186F +:10367000C3F0580AC090103AC041C3981438C370C0 +:10368000740A580ACFC15826C04076485828C690B8 +:10369000580AEFFA1A32F9B80001EFF80A32EEF9D7 +:1036A00001105809C04176485818C710EEF80118A3 +:1036B0005808C4F1580AF40B1700F60A1700F5FB76 +:1036C0001004F5FA1005EEF800D470B85808C410CC +:1036D000EEFC00C45D18C3D12E6DE3CD80C0F8F6BA +:1036E000010C5806C9812E6DE3CD80C0740A580ABA +:1036F000CCB0F4F801945808CFA175885808CC4193 +:1037000076485828CF41CC0B0E9CF01F002BCE5092 +:10371000EEF800B05808EFFC0A2C0E9CF01F0027B2 +:10372000300B1A9C368AF01F00261A961A9A0E9CA5 +:10373000300BF01F00242E6DE3CD80C05806FE91A3 +:10374000FF790E9C301BF01F00202E6DE3CD80C052 +:103750000E9C300A30ABF01F001D2E6DE3CD80C0F3 +:10376000580AC1D074085808EFFA1A32F9B80001A3 +:10377000EFF80A320E9C300BF01F0015CAEB302B0D +:103780000E9CF01F0011EEFB0090C6FBEF480110ED +:10379000129A0E9C303BF01F000BC9FB30180E9C98 +:1037A000EF4800C8149BF01F0009C97B8003C65C6A +:1037B000800091A08002195C80022370800091D06B +:1037C0008002792C800217D080022584800230DCB0 +:1037D0004848300A48499118910A930A5EFF000050 +:1037E00000007A7000007A78EBCD40681695189347 +:1037F000F6CCFFEDF01F0022314A1896300BF01F77 +:1038000000210A9A8D15ECCCFFF0069BF01F001EDC +:1038100049EAF5090042AC09F50800422FF8F558CD +:10382000004249B530088D286A198D3993062F86D4 +:103830008B1649866C08F0C9FFFF8D095909E0888D +:1038400000180A936A0C782A580AF9F80003E7F876 +:103850000A01F9F81003F5F81A0320197838910ACB +:103860008D09F01F000D6C095909FE9BFFED300A10 +:10387000326C149BF01F0009E3CF90688000920027 +:10388000800091D0800091DC000087F400007A7005 +:1038900000007A78800091E880014658EBCD40E046 +:1038A00030961697305E300B33A51989F2C8003078 +:1038B000EC081800E08B0019F2CA0030580AC2C5A3 +:1038C0001999F2C80030EC081800E08B0017F2C814 +:1038D00000305808C215F1EA1048EE0B0B08585B8F +:1038E000C291E3CF80E0F2C80061FC081800E08BD1 +:1038F000000EF2CA0057CE3BF2C80061FC08180067 +:10390000E08B000DF2C80057CE5BF2C80041FC0806 +:103910001800E088000DE3CFC0E0F2C80041FC08C9 +:103920001800FE9BFFFAF2C80037CD4BF2CA0037F1 +:10393000CC6B19A8EA081800CEF12FFB586BCD20EC +:103940002FDCCB4BEBCD40E016961497580AC4C041 +:10395000300B3095305EC1B8F2CA0030580AC365EA +:103960001999F2C80030EA081800E08B0021F2C86B +:1039700000305808C2B5F1EA10485808C275EC0B7F +:103980000B082FFB1637E08800302FEC1989F2C89E +:103990000030EA081800FE98FFE1F2C80061FC0858 +:1039A0001800E08B000EF2CA0057CD9BF2C80061F0 +:1039B000FC081800E08B000DF2C80057CDBBF2C820 +:1039C0000041FC081800E088000DE3CFC0E0F2C819 +:1039D0000041FC081800FE9BFFFAF2C80037CCAB90 +:1039E000F2CA0037CBCBE3CF80E0F6CA00015E6CB1 +:1039F000F80A000913882FF85C58B2885E1CF6C8D4 +:103A00000002100CC08819882FF85C58B888201C58 +:103A100058085E1C201ACF875EFC5EFCEBCD40C0D0 +:103A200049071696189BE0460020F9B60B200E9C1D +:103A30000C9AF01F000D3008EE060B080F8858088E +:103A4000C0D00E9C35E935FA2208F2081800F9FAC0 +:103A5000BE002FFC19885808CF81482CE3CD80C0C8 +:103A600000007A7C800091DCEBCD40FE189114922E +:103A7000169C1293580BC2A0E20B00045809C20016 +:103A800002973006C0881835E08A001418070C33F6 +:103A9000E0880018E4060708E80701051AD80E9C1C +:103AA00048CA0A9B2FF6F01F000C2FFD580CCEC4FD +:103AB0003008EE01010CE968FFFFE3CD80FE0297BC +:103AC0003008EE01010CE968FFFFE3CD80FE000045 +:103AD0008003DA3080009148580CC140F8FC00D0D7 +:103AE000580CC1002FCCF8F8FFFC5808C0417809E9 +:103AF0005809C0901638C0302F8CCF6B7808143816 +:103B0000CFC15EFF5EF9780C580C5E0C7828163831 +:103B1000C0515EFC782816385E0C780C580CCFB17A +:103B20005EFC30383189F94800F0F9480058F9480E +:103B3000005431E8F949004CF94800503FF9E06879 +:103B40000576F949017CF948019C5EFCEBCD40E02B +:103B500018961695344CF01F000C1897C1103018A9 +:103B60009978993899485806C0500C9CF01F000766 +:103B70008F5C5805C0500A9CF01F00048FBC0E9C3F +:103B8000E3CD80E080028F2480009194EBCD40C093 +:103B9000169679075807C051C0C86E375807C090AD +:103BA0006E0C0C9BF01F0004CF910E9CE3CD80C0E7 +:103BB000E3CF80C0800091A0EBCD40FC1695189417 +:103BC000580C5F0B58055F081493104B1292C040BD +:103BD0003FFCE3CD80FC580ACFC048E73006C06800 +:103BE0002FF62E07E0460038CF406E0B0A9CF01FE0 +:103BF000000ACF710699049A089B0E9C6E185D18F6 +:103C0000F9BC01FFF9BC0000E0460038CE31CE1B04 +:103C10008003CC00800091A0EBCD40801897580C19 +:103C2000C0A0780CF01F00056E1CF01F00040E9C55 +:103C3000F01F0002E3CD8080800091E8D421189429 +:103C4000169579075807C1A03006C0680E966E3CDD +:103C5000580CC14018970A9B6E0CF01F0009CF71D9 +:103C60005806EFF81003EDF81A03EFF80003E9F82F +:103C70000A100E9CF01F0003D82ADC2A800091A0B5 +:103C800080023C18EBCD406016961895760BF01F1D +:103C900000056B088D38EB460040E3CD80600000E6 +:103CA00080023C3CD431202D500B129CF01F003C74 +:103CB0001890C730198A580AC670300118965011EA +:103CC000320230930294C0382FF60D8AE40A1800AD +:103CD0005F08E60A18005F091248E8081800CF518B +:103CE000580AC2C00D87E40718005F18E6071800DD +:103CF0005F191268E8081800C4505807C4300C95C2 +:103D0000C0385807C0D02FF50B87E40718005F189C +:103D1000E60718005F191268E8081800CF31AA8476 +:103D20004A0B0C9CF01F0020C171A1A15807C06074 +:103D3000EAC6FFFF0D8A580ACCA1009CF01F001BA9 +:103D40005801C2404008F141005C40195809C25175 +:103D5000129C2FEDD832496B0C9CF01F0013C03120 +:103D6000A1B1CE5B0C9C493BF01F000FF9B80004D9 +:103D7000E3D8E031FBF91001F7B901FFFBF91A01B3 +:103D8000CD6B0C95CCDBF01F0009300840093FFCDF +:103D9000F348005C2FEDD8322FEDDC3A800091948F +:103DA0008003D304800091A0800091E88003D30CAD +:103DB0008003D314EBCD40FE169CF01F00451891F4 +:103DC000C6B0198A580AC7A0189630023203309438 +:103DD000E80A18005F08E60A18005F091049300871 +:103DE000F0091800C0E0109B2FF60D8AE60A1800B3 +:103DF0005F08E80A18005F091248F6081800CF515A +:103E0000580AC4500D87E80718005F18E607180025 +:103E10005F1910693008F0091800C3705807C350C3 +:103E2000109A0C95C0385807C0D02FF50B87E607BD +:103E300018005F18E80718005F191268F4081800E6 +:103E4000CF3130084A3BAA880C9CF01F0023C0F1F8 +:103E5000A5A25807C060EAC6FFFF0D8A580ACB9199 +:103E6000029CF01F001E049CE3CD80FE49CB0C9CFD +:103E7000F01F0019C031A3B2CEDB49AB0C9CF01F80 +:103E80000016C0E1A3A2CE6B0C95CDCB029CF01F17 +:103E900000135802CE913FF2049CE3CD80FE492BE3 +:103EA0000C9CF01F000DC031A1B2CD4B0C9C48FB07 +:103EB000F01F0009C071A1A2CCDBF01F00083FF287 +:103EC000CD3B029C3FF2F01F0005CCEB80009194AB +:103ED00080039A74800091A0800091E880039A6C1E +:103EE0008003D31C8003D3248003C8E4EBCD40803F +:103EF0001697149C129BF01F00085BFCC031E3CFA7 +:103F0000C0801898E018FFE1CFB1EF4C0050109C32 +:103F1000E3CD808080023DB4EBCD40801697149CA9 +:103F2000129BF01F00085BFCC031E3CFC0801898E3 +:103F3000E018FFE6CFB1EF4C004C109CE3CD808041 +:103F400080023DB4D431201D500B129CF01F00485C +:103F50001891E080007F198A580AC6B0300218967E +:103F6000049032033094E80A18005F08E60A18004B +:103F70005F0910493008F0091800C0E0109B2FF6C7 +:103F80000D8AE60A18005F08E80A18005F0912485F +:103F9000F6081800CF51580AC2F00D87E80718003C +:103FA0005F18E60718005F1910693008F00918005B +:103FB000C3E05807C3C0109A0C95C0385807C0D04A +:103FC0002FF50B87E60718005F18E80718005F1940 +:103FD0001268F4081800CF3130084A6BAA880C9C8C +:103FE000F01F0025C161A1B25807C060EAC6FFFFFB +:103FF0000D8A580ACB91029CF01F00205802C1B0D4 +:104000004009F34200545800C241009C2FFDD832B1 +:1040100049BB0C9CF01F0018C031A1A2CE6B499B7C +:104020000C9CF01F0015C0E1A3B2CDFB0C95CD5B3D +:10403000F01F0012300840093FFCF34800542FFDE8 +:10404000D832491B0C9CF01F000CC051A3A2CCDB42 +:104050002FFDDC3A0C9C48DBF01F0007F9B800107C +:10406000E5D8E032F7B001FFCC0B0000800091945E +:104070008003C8C4800091A0800091E88003D32C05 +:104080008003D3348003C8E48003C8E0D431202DFA +:10409000500B129CF01F00391890C6D0198A580A8C +:1040A000C610300118955011320230930294C03876 +:1040B0002FF50B8AE40A18005F08E60A18005F096A +:1040C0001248E8081800CF51580AC2C00B87E4070D +:1040D00018005F18E60718005F191268E808180052 +:1040E000C3F05807C3D00A96C0385807C0D02FF67F +:1040F0000D87E40718005F18E60718005F191268BB +:10410000E8081800CF31AC8449DB0A9CF01F001D81 +:10411000C171A1A15807C060ECC5FFFF0B8A580A06 +:10412000CCA1009CF01F00185801C1E04008F141EB +:10413000005840195809C1F1129C2FEDD832493B63 +:104140000A9CF01F0010C031A1B1CE5B0A9C490B44 +:10415000F01F000CCFA040192FF95019CDCB0A96B3 +:10416000CD3BF01F0009300840093FFCF3480058E0 +:104170002FEDD8322FEDDC3A800091948003D340AC +:10418000800091A0800091E88003D3448003D3484D +:10419000EBCD40401896784CF01F00466D2CF01F78 +:1041A0000045ECFC00D0F01F00436DACF01F004157 +:1041B0006DCCF01F00406DECF01F003EECFC008069 +:1041C000F01F003CECFC0088F01F003AECFC009073 +:1041D000F01F0038ECFC0094F01F0036ECFC009857 +:1041E000F01F0034ECFC009CF01F0032ECFC00A03F +:1041F000F01F0030ECFC00A4F01F002EECFC00A827 +:10420000F01F002CECFC00ACF01F002AECFC00B00E +:10421000F01F0028ECFC00B4F01F0026ECFC00B8F6 +:10422000F01F0024ECFC00BCF01F0022ECFC00C0DE +:10423000F01F0020ECFC00C4F01F001EECFC00C8C6 +:10424000F01F001CECFC00CCF01F001AECFC00D4AA +:10425000F01F0018ECFC00D8F01F0016ECFC00DC8E +:10426000F01F0014ECFC00E0F01F0012ECFC00E872 +:10427000F01F0010ECFC00ECF01F000EECFC0150F5 +:10428000F01F000CECFC016CF01F000AECFC01803C +:10429000F01F0008ECFC018CF01F0006ECFC01A0F4 +:1042A000F01F00040C9CF01F0003E3CD80400000D1 +:1042B000800091E8EBCD40C0189678085808C031CE +:1042C000C0880E987007109CF01F00155807CFA1EA +:1042D0006D085808C031C0880E987037109CF01FC8 +:1042E00000115807CFA16C5CF01F000F6C6CF01F21 +:1042F000000E6C8CF01F000C6C9CF01F000B6CAC63 +:10430000F01F00096CBCF01F00086C1CF01F0006B9 +:104310000C9CF01F0005E3CD80C00000800241909E +:1043200080023C18800091E8EBCD4040320818969E +:104330001AD8E0691000F8C8FFDC785A784B792C5D +:10434000F01F000430182FFDED480044E3CD8040FD +:104350008002B254D421F60815011695F0C6FFFF6D +:1043600018940C9CF01F00061897C0600A99089AD0 +:104370000C9BF01F00040E9CD822000080028F24AA +:1043800080023A68EBCD40E016951896F6CCFFFD1A +:10439000F01F00091897C0C00C9B0A9A322618C655 +:1043A000F01F0006EE0500093008B296B2A80E9C78 +:1043B000E3CD80E080009200800091DCD401580CB5 +:1043C000C1D0580BC160198835E92208F2081800DD +:1043D000E08B0013129A3009C088F80907082208F8 +:1043E000F4081800E08B00092FF9123BFE9BFFF741 +:1043F000F01F0003D802F01F0003D802800243849C +:1044000080024354D4011698F6FC0140580CC06059 +:10441000189BF0CCFEDCF01F0002D802800243BCE7 +:10442000D4011698F6FC013C580CC060189BF0CCE7 +:10443000FEECF01F0002D802800243BCD4011698A3 +:10444000F6FC0138580CC060189BF0CCFEFCF01F45 +:104450000002D802800243BCD4011698F6FC013455 +:10446000580CC060189BF0CCFF0CF01F0002D80263 +:10447000800243BCEBCD40F831EC1694F01F0028CD +:104480001896C3906979F8C3FFE2EDB90000C360E4 +:104490001897EDB90001C1614A294A380C37F20872 +:1044A0001710E60701051AD84A0A0A9B0E9CF01F4E +:1044B00000202FFD580CC1C51835E08A001A1807D6 +:1044C0006979EDB90002C171496949780C37F20880 +:1044D00017100E9C1AD8E6070107496A0E9BF01FB9 +:1044E00000142FFD580CC0451837E089000530082E +:1044F000E768FFFF0C9CE3CD80F848B848EA1AD87B +:1045000031EBF01F000B2FFD580CCF2559DCFE9925 +:10451000FFF0EC0C00076979CBDB000080028F24F0 +:104520008003936480037E208003D35880009148E9 +:104530008003D3648003D350EBCD40F81894332C20 +:10454000F01F003E1896C650F8C3FFCEEDB400042D +:10455000C6301897EDB40003C1514B994B980C37F6 +:10456000F2081710E60701051AD84B7A0A9B0E9C31 +:10457000F01F00362FFD580CC4951835E08A00470F +:104580001807EDB40002C1514AD94AE80C37F208C5 +:104590001710E60701051AD84ADA0A9B0E9CF01F8D +:1045A000002B2FFD580CC3251835E08A0030180762 +:1045B000EDB40001C1514A294A280C37F2081710FE +:1045C000E60701051AD84A3A0A9B0E9CF01F001F05 +:1045D0002FFD580CC1B51835E08A00191807EDB445 +:1045E0000000C171496949780C37F20817100E9C18 +:1045F0001AD8E6070107498A0E9BF01F00142FFD09 +:10460000580CC0451837E08900053008E768FFFFFF +:104610000C9CE3CD80F848B8490A1AD8332BF01F18 +:10462000000B2FFD580CCF25E04C0031FE99FFEF19 +:10463000EC0C0007C90B000080028F2480039364F8 +:1046400080037E208003D374800091488003D37C54 +:104650008003D3888003D3908003D36CD401774C3C +:10466000F01F0002D802000080024538D401773CD8 +:10467000F01F0002D802000080024538EBCD40F860 +:10468000332C1693F01F00401896C6906759F8C453 +:10469000FFCEEDB90001C6601897EDB90000C16109 +:1046A0004BA94BB80C37F2081710E80701051AD8C8 +:1046B0004B8A0A9B0E9CF01F00382FFD580CC4C576 +:1046C0001835E08A004A18076759EDB90003C1613F +:1046D0004AE94AF80C37F2081710E80701051AD81A +:1046E0004AEA0A9B0E9CF01F002C2FFD580CC34574 +:1046F0001835E08A003218076759EDB90002C16128 +:104700004A294A380C37F2081710E80701051AD869 +:104710004A3A0A9B0E9CF01F00202FFD580CC1C581 +:104720001835E08A001A18076759EDB90004C171FD +:10473000496949780C37F20817100E9C1AD8E80717 +:104740000107498A0E9BF01F00142FFD580CC0452D +:104750001837E08900053008E968FFFF0C9CE3CDBD +:1047600080F848B8490A1AD8332BF01F000B2FFDE8 +:10477000580CCF25E04C0031FE99FFEFEC0C000700 +:104780006759C8CB80028F248003936480037E2006 +:104790008003D3A4800091488003D3B08003D390DA +:1047A0008003D3BC8003D398EBCD40C030AC1696C9 +:1047B000F01F00181897C1806D69EDB90000C17035 +:1047C000189A301BEDB90001C0F149384939580B2E +:1047D000F0091700149C1AD9EECBFFF6141B490AF6 +:1047E000F01F00102FFD0E9CE3CD80C048B848EAB2 +:1047F0001AD830ABF01F000B2FFD580CCF55589C2A +:10480000FE99FFF3EE0C000A6D69300BCDCB000072 +:1048100080028F248003936480037E208003D3D0A2 +:10482000800091488003D3C8EBCD40C01697768CAA +:10483000580CC05118960C9CE3CD80C0314CF01F31 +:1048400000101896CF90EF38001DEF3A00181AD8D4 +:10485000EF39001C1AD9EF38001B1AD8EF39001AAB +:104860001AD9EF380019314B1AD81ADA485AF01F02 +:10487000000630082FADED680013CDEB80009200EC +:104880008003DA4880009148EBCD40E078351696F9 +:10489000314CF01F000A1897C0C0EC050308488A85 +:1048A0001AD8314BF01F000730082FFDEF680013B6 +:1048B0000E9CE3CD80E00000800092008003DD6864 +:1048C00080009148EBCD40801697772C580CC09013 +:1048D000F01F0009189B6F2CF01F0008E3CD8080AB +:1048E000771C580CC060F6CCFFDC320BF01F0004C4 +:1048F000E3CD8080800091B88002438480024354DD +:10490000EBCD40807838F60800076E085808C0C024 +:10491000784C580CC0C0F60C030C189B109CF01F70 +:104920000007E3CD8080109CE3CD8080109CF01FB9 +:1049300000046E08CF3B0000800243BC800091B8A9 +:10494000EBCD40F83228169418961989F009180012 +:10495000C0A0F01F001BEBDCC001C19030070E9C13 +:10496000E3CD80F8F8C7FFFF322B0E9CF01F001537 +:10497000CF6019985808CF31B8880E9CF01F0010EE +:10498000890C0E9CF01F00101897CEABF80316018F +:10499000E6CCFFFFF01F000D1897CE200C9C069A66 +:1049A0000E9BF01F000BC051EE030B0C8903CD8B47 +:1049B0000E9C0A97F01F0007CD3B0000800091B8C5 +:1049C00080009158800091948000920080023944C8 +:1049D000800091E8D421205D18951094129C1696C1 +:1049E000F01F000F1897C1906C0A590AE08B001451 +:1049F000189B0A9CF01F000B0E9CF01F000B48BA7E +:104A00001AD4314BFACCFFFCF01F0009300C2FFDFB +:104A10002FBDD822F01F00042FBDDC2A80024940A0 +:104A2000800091DC800091E88003D3D88000914819 +:104A3000D4013038F6CCFEDCF6CBFEC0F01F00020D +:104A4000D8020000800249D4D4013028F6CCFEEC14 +:104A5000F6CBFEC4F01F0002D8020000800249D449 +:104A6000D4013018F6CCFEFCF6CBFEC8F01F0002D5 +:104A7000D8020000800249D4D4013008F6CCFF0CE3 +:104A8000F6CBFECCF01F0002D8020000800249D411 +:104A9000EBCD40F8201D18971693129C1A9BF01F1F +:104AA00000171895C2306E595809C0504008103987 +:104AB000E08B00206E695809C04040081039C133AE +:104AC0006E366E44E60600066C0CF01F000D8D0578 +:104AD0006E4C580CC0504008300CE60409082FFDFD +:104AE000E3CD80F80A9CF01F00062FFDE3CFC0F84D +:104AF000F01F00033FFCCF4B80024940800091E84B +:104B0000EBCD40FEF6F700D05807C0510E94089C3C +:104B1000E3CD80FE364CF01F00191894CF90EEC6FE +:104B2000FFFCF8C3FF9C189749514962ECFCFFFC5D +:104B3000580CC2116C0B580BC1A02F86F01F00122D +:104B4000CF600837E2081700E40817101ADCE60700 +:104B500001051AD80E9C48DA0A9BF01F000D2FEDB4 +:104B60001807580CC0451835FE99FFE23008E76871 +:104B7000FFFFCCEB6C0BCE2B80028F2480037E20BA +:104B800080039364800271BC8003D3E48000914869 +:104B9000D431205D500B129CF01F0056502CE08049 +:104BA000008E198A580AE080009B3009402650196F +:104BB000503912905049320230931294C0382FF677 +:104BC0000D8AE40A18005F08E60A18005F09124817 +:104BD000E8081800CF51580AC4E00D87E407180010 +:104BE0005F18E60718005F191268E8081800C64049 +:104BF0005807C6200C95C0385807C0D02FF50B8732 +:104C0000E40718005F18E60718005F191268E80843 +:104C10001800CF31AA842FF0403CE00B1503F01FA1 +:104C200000361891C4E040490C9CE20900060C9B38 +:104C3000F01F00328D1C6C085808C141580CC1018E +:104C400040182FF850185807C15040482F88504836 +:104C5000EAC6FFFF0D8A580AC3C05031CB3B591C2E +:104C6000C2404009F2F801782FF8F348017858075C +:104C7000CED15031E0C8FFFFF0071503402CF01FE4 +:104C800000200E9B403CF01F001CC2E0F8000039E1 +:104C90003008931893084008F14C00D04019580987 +:104CA000C0D1129C2FBDD8324009F2F801742FF800 +:104CB000F3480174CC9B0C95CAEB3FFC2FBDD83256 +:104CC000403CF01F000F402CF01F000D2FBDDC3AC0 +:104CD000E0C8FFFF5031F0071503CD1B501A308795 +:104CE000503A1490CCCB403CF01F00053FFCCE7BEB +:104CF00080009194800091F48002720C800091E811 +:104D0000D4213228129716951389F0091800C0A0F3 +:104D1000320A2DCB0E9CF01F00271896C2F03FFCE4 +:104D2000D822EEC6FFFF322B0C9CF01F0023C3C01D +:104D3000F8060107EEC80008E0480037FE9BFFF1C7 +:104D40006B2C580CC060F01F001D0E3CC2606B2C19 +:104D50003004EB440044F01F001AEECCFFFFF01FBC +:104D60000019EB4C0048CDC00C9B0E9AF01F0016AA +:104D70006B28089CF0070B04D822EF390040F80993 +:104D80001800CCE16B2CF01F000E3018EB460048E9 +:104D90000C9CEB480044D8220E9A0C9B6B2CF01F05 +:104DA000000BCD61CBEB0C9CF01F00041897CC3BA3 +:104DB0008002394480009158800091B8800091E8C9 +:104DC00080009200800091DC8000917CEBCD4080DF +:104DD0001697129C2E8BF01F0006F9BC01FFF9B844 +:104DE0000001EFF80A08E3CD808000008002389CC3 +:104DF000EBCD40C018976E38129CF00B000630AA1D +:104E0000300BF01F000C8D0C18996E585808C030EC +:104E1000103CC0956E6C580CC0401839E0890007F2 +:104E2000E3CF80C08D08E3CFC0C08D0CE3CFC0C0FE +:104E300080009170D42116941895782B580BE08A35 +:104E400000557817683E6E0C78381C38C410EECACE +:104E5000FFFC3009C058150C78381C38C3902FF966 +:104E60001639CFA52FFB0E9CA36BF01F00241896BC +:104E7000C3506A2C580CE08A003B6C08683E7039BD +:104E80001C39C355ECC8FFFC300AC0A81097700845 +:104E9000F40B15027039EEC8FFFC1C39C2052FFA5D +:104EA000143CFE99FFF5F4C8FFFFEC0A002BA36841 +:104EB0001697F80A010AEC08000CA36AF01F00100C +:104EC0008F048B166A28300C2FF88B28D82218985C +:104ED000781C580CCFD19114D822DC2AF4C8FFFFDB +:104EE000EC0B000BA368CE6B7817CBDB0C97300A6A +:104EF00030480C9BCDFB0000800091F4800091C4F1 +:104F0000D4211895781CF01F000D300C8B1C8B2CB5 +:104F10006A075807C0F0189618948F140E9B0A9CC5 +:104F2000F01F00076E07F9B605FF5807CF710C9CFC +:104F3000D8220E96CFDB0000800091E880024E342C +:104F4000D421189578095809C1E03FFAC028109972 +:104F50007228F4080C4A72085808CFA1F4C4FFFF65 +:104F60001296E06C01A8F01F000A1897C0A09924BF +:104F70005806EDFC1A00EBFC0A000A9CF01F000525 +:104F80000E9CD82212961294CEDB000080028F2451 +:104F900080024F005EFD5EFD5EFD5EFD5EFD5EFD1E +:104FA000D401584BC0E0E0880007586BC0A0587B84 +:104FB000C040D802580BC091300CF01F0005D80239 +:104FC000301CF01F0003D802D80200008002172016 +:104FD000D401581BC070300A323C149BF01F0005EE +:104FE000D80A300A322C149BF01F0002D80A0000A5 +:104FF00080014658EBCD40FE201D1094129216956C +:10500000F01F0057E8C8FFF25C7C4D69F00C000609 +:10501000F33A0109580AC060EC0A0D085809E0810A +:10502000008F3003500CE6060001029CF01F004E7A +:105030000A9B1897306A400CEE0C000CF01F004BD6 +:10504000400C306A4CAB140CEE0C000CF01F004707 +:10505000400C302A4C7B2F4CEE0C000CF01F004310 +:10506000400C089A049B2F2CEE0C000CF01F003F04 +:10507000FAC8FFFC3005114A0E991AD5EE0A000C49 +:105080001AD5EC0A010A30EBF01F003B2FED581C3B +:10509000C5914009EC090108E048003EE08B001092 +:1050A0008E085CC806085CC8AED3029B0E9CAE0896 +:1050B000F01F0032300C2FFDE3CD80FEEE09000E14 +:1050C0003888FD39000CF0091800CEB1FD39000D0B +:1050D00038E8F0091800CE51FD38000EF808180025 +:1050E000CE01FD39000F3038F0091800CDA130286D +:1050F000FD3A0012F00A18005F1B3FE8F00A1800A2 +:105100005F19126BEA0B1800CCC1FD380013E218CE +:10511000001D5818CC61FD380014E21800C85888EA +:10512000CC01FCCAFFC1FCC9FFE1C0482FF914390A +:10513000C0E01388F6081800CFA0CB3BF4090103A8 +:10514000C72B0E9CF01F000E3FFCCB6B0FC92FA985 +:10515000EE0900091388A3A8B288CA3B8001F4E8CD +:10516000000087F480009200800091DC00007AA8A3 +:105170008003D6548001F54480014664800091E8A4 +:10518000D401201D3068FACBFFFC16D81A9B486C5E +:10519000F01F00064848581CF00C1700F9BC01002D +:1051A0002FFDD80200007AA880017A88EBCD40401C +:1051B000310A1696300B0C9CF01F000630F930783F +:1051C0008D198D09300C30398D288D39E3CD804013 +:1051D000800091D0D401F01F0002D80A80016048FD +:1051E000EBCD4068206DFAC3FFEE1496069C306A42 +:1051F000F01F0010FAC5FFFE0C9B310A0A9CF01F3D +:10520000000D0A9B204D310A1A9CF01F000B069BD3 +:10521000202D306A1A9CF01F0008F01F00082FADE7 +:10522000581CF9BC01FFF9BC00002FADE3CD80682C +:10523000800091DC8002E73680016094EBCD40680D +:10524000206DFAC3FFEE1496069C306AF01F001022 +:10525000FAC5FFFE0C9B310A0A9CF01F000D0A9B49 +:10526000204D310A1A9CF01F000B069B202D306A3E +:105270001A9CF01F0008F01F00082FAD581CF9BC45 +:1052800001FFF9BC00002FADE3CD8068800091DC08 +:105290008002E73680016168D401F01F0005581CC8 +:1052A000F9BC01FFF9BC0000D80200008001F370D6 +:1052B000D401F01F0005581CF9BC01FFF9BC000027 +:1052C000D80200008001F310D401169CF01F0004E6 +:1052D000581CF9BC01FFF9BC0000D802800163E052 +:1052E000D431207DFACEFFC050287C027C387C1758 +:1052F00050087C2E501E16901894149B1293580A36 +:10530000C5C0FAC5FFEA306A0A9CF01F0031202DA3 +:10531000306A0A9B1A9CF01F002FF01F002F5802C2 +:105320005F1858075F1918912FED1268C181300678 +:105330005800C26168193018F0030948F00811FFDD +:10534000F1E9000C891C580CC365BFBC891CF01F17 +:10535000002318975817C2F02F9DDC3A5887FE9B00 +:10536000FFFDFAC6FFF2308A300B0C9CF01F001CC8 +:105370000E9A049B0C9CF01F00165800CDC04028CC +:1053800058015F091AD8069C1AD630381AD530163B +:10539000404A403B1AD6F01F00136819EC03094835 +:1053A0001248F1D8C01F189789180C9CF01F000EE6 +:1053B0002FCDCD1B2F9DD83AFAC5FFEA306AE06B9E +:1053C00000FF0A9CF01F0006CA3B0000800091DC31 +:1053D0008002E736800188B080016584800091D02A +:1053E0008001661C8001639CEBCD40C01896308C18 +:1053F000F01F00091897C0C0300899069918F01FCF +:105400000007301CF01F00060E9CE3CD80C0E3CDEA +:1054100080C0000080028F248001604880017A10E3 +:10542000EBCD4080209D1697FACCFFFEF01F0009BF +:10543000581CC0402F7DE3CFC0800E9C1BBAFACB16 +:10544000FFFCF01F00051BBC2F7DE3CD808000001A +:1054500080017800800091DCEBCD4080202D580B3E +:10546000C120FAC7FFFE306A0E9CF01F000C0E9C94 +:10547000F01F000B581CF9BC01FFF9BC00002FED18 +:10548000E3CD8080FAC7FFFE306AE06B00FF0E9C20 +:10549000F01F0004CEDB0000800091DC8001793039 +:1054A000800091D0EBCD4040485B1896F01F00057E +:1054B0000C9CF01F0005E3CD8040000080039C3869 +:1054C00080025458800091E8EBCD40C0202DFAC7EF +:1054D000FFFE16960E9CF01F0008581CC0402FEDD2 +:1054E000E3CFC0C00E9B0C9C306AF01F00042FED70 +:1054F000E3CF80C080017864800091DCEBCD40C0B8 +:1055000018977939580BC0305839C0E03018EF4837 +:1055100000BC3038EF48004C1039C0808F2830086C +:105520008F58E3CD80C0F949004C6F682FF8EEFA30 +:10553000010CEF4800586FA830098F288F59301B95 +:10554000746C7486487A5D16EEF80094EEF900905B +:105550002FF82FF9EF480094EF490090E3CD80C079 +:1055600080037E20580C5E0C580BF9FB4A19580A30 +:10557000F9FA4A225809F9F94A1A5808F9F84A1B5F +:105580005EFC580CF9F81024F9B90101F1D9E108D1 +:10559000F9F81A245EFC580C5E0C580BF9B801019E +:1055A000F9F81A45F9FB0A455EFCD703EBCD40C07C +:1055B0001897580CC04079385858C030E3CD80C097 +:1055C000F8F8010C3009706C7086488A301B5D1643 +:1055D000EEF80094EEF900902FF82FF9EF480094C0 +:1055E000EF490090E3CD80C080037E20580CF9FC89 +:1055F00010315EFC580CC0B0F8F800D45808C070E8 +:10560000F8F800D89708F8FC00D45EFC300897083A +:105610005EF8D703580CC040588BE08800035EFD4D +:1056200048D8F00B032FF8FC00E05EFCF8FC00DC2F +:105630005EFC78BC5EFCF8FC00805EFC79FC5EFCE5 +:10564000F8FC00845EFC784C5EFC797C5EFC786C37 +:105650005EFC00008003D6FC580C5E0C588B5EBCD0 +:1056600048E8F00B032FF94A00E05EFCF94A00DC41 +:105670005EFC99BA5EFCF94A00805EFCF94A007C47 +:105680005EFCF94A00845EFC994A5EFCF94A005CC3 +:105690005EFC996A5EFC00008003D720580CC05065 +:1056A000580BC031783C5EFC5EFD580C5E0C580B0C +:1056B000F9FA0A035EFCD401580CC0A0F8FC010CF6 +:1056C000580CC06078A85808C030780C5D18D80213 +:1056D000D401580CC021D80AF8FC010C580CCFC0DA +:1056E00078B85808CF90780C5D18D802EBCD408080 +:1056F0001897580CC1E0189A300B48FCF01F000FA7 +:105700000E9A300B48ECF01F000DEEFC00C0F01FAD +:10571000000DEEFC00CCF01F000CEEFC00D4F01FDE +:10572000000AEEFC010CF01F00080E9CF01F0006A2 +:10573000E3CD80808002608C800274008002602053 +:10574000800270E0800091E8D401580CC050F8FC51 +:1057500000C0F01F0002D80280026410D401580C6F +:10576000C050F8FC00C0F01F0002D802800264287C +:10577000D401189A580CC0A030583019F8FC00C059 +:10578000F548004C95C9F01F0002D802800263BAA8 +:10579000EBCD40801897580BC04079E85888C0403E +:1057A0003018EF4800BC30193088EF490044EF480A +:1057B00000788F99EEFC00C0F01F0004F9B80100DA +:1057C000EFF81A39E3CD8080800263B2EBCD40E080 +:1057D000201D189716951496580CC0513FFC2FFDAC +:1057E000E3CD80E0F8FC00C0F01F000ACF801A9BD8 +:1057F000EEFC00C0F01F0008189BCF10400C0C3CC2 +:10580000CEF30C9A0A9CF01F0005300CCE9B0000D2 +:10581000800263B2800263CE800091DCEBCD40C099 +:1058200018971496580CC1F0F94B00C4580AC1B02F +:1058300074087419F94800F8F94900FC7428F9480B +:105840000100F8FC00C0580CC0E0742BF01F0007EA +:105850006C3BEEFC00C0F01F00066C4BEEFC00C081 +:10586000F01F0004E3CD80C0800263A6800263AC19 +:1058700080026408D431FACD00A81897F8F600CC5D +:105880005806C0F0F8F800F85808C0B00DA80DB9D7 +:10589000F3E81089F8F800D02FC91039E088000427 +:1058A0002D6DD832ECC4FFFC0999500909A0F01FF6 +:1058B000006FFAC1FFF8340A029B0E9CF01F006CC7 +:1058C0001895CEF5590CE0800090580CCEA132020C +:1058D0005012EEF800E45808C7D1E8C5FFE4FAC357 +:1058E000FF68310A0A9B069CF01F0062310A300BE8 +:1058F0000A9CF01F00610DAA0DB9049BF3EA108900 +:10590000FACCFFD8EEFA00CC0A982FC9F01F005B42 +:10591000310A0A9B069CF01F005AC7614009E1E961 +:1059200010880DB9EBD8B0100DA8F3E81089320833 +:10593000F2CE002CF00519005FB9E04E00205F9A0E +:10594000124AF80A1800CAD15C751C35C630580EC8 +:10595000CA81FAC3FF88029B0A9A069CF01F004581 +:105960003018308AEF4800E4E8CBFFFDEECCFF189A +:10597000F01F0040EEFC010C78965806C0D0E93AC2 +:10598000001B0A98149B0699780CE21B0080F5DA3C +:10599000C0025D16C865E939001B3008F00918001F +:1059A000C5753018EF48011CEEF901185809C0718F +:1059B000EEF800FCEDB80000FE90FF7430188FD8B0 +:1059C000EEFC010C78785808FE90FF6C780C5D189E +:1059D000C68B308AE8CBFFFDEECCFF18F01F002805 +:1059E000FE94FF60C7BB189A029B0E9CF01F00201C +:1059F000FE91FF580A9A029BFACCFFD80A92F01F38 +:105A0000001D5015C67B069B0A9C310AF01F001929 +:105A1000C48BFAC6FFB8E8CBFFF50C9C310AF01F27 +:105A20000015049A029BFACCFFA8F01F0012FAC3DB +:105A3000FF880A9AE8CBFFD4069CF01F000E40199D +:105A40000C9A2F090A9B069CF01F000EC8AB301859 +:105A5000EF480118EEF9011C5809CB11EEF800FCD3 +:105A6000EDB80001CAC1C1DB8002575C800257CC8F +:105A7000800091DC800091D080028EF88000917CC3 +:105A800080029C38D431201D3003189730140695BD +:105A900030213040EF4500BC6F4A580AE08000C911 +:105AA0006F585808E08100C56E7C580CE08100C238 +:105AB0006EB85808E08000BE6F385828EFF41A2FEF +:105AC000EEF8010CEF41004C3009706C7086FEFA64 +:105AD000051E029B5D16EF4400548FC5EEF800983A +:105AE000EEF900902FF82FF9EF480098EF49009059 +:105AF0006E7C580CC0516EB85808E08100EC6FC83D +:105B0000EF4400705818EFF41A2F6FD85808E0814E +:105B100000F8580CE08100A76EE85808E08100A367 +:105B20006FE8F0C900015879E08B000EFEF804C45C +:105B3000F009032FEF4400BCEF410078EF4500402F +:105B4000EF4400C8EEFC00C0F01F012BE08000B560 +:105B5000EF4400BC2FF3E0430064C9D10E9A300B30 +:105B6000FEFC0498F01F012630090E98FEFA048C02 +:105B7000129B129CF01F0123EEF9010C72285808A9 +:105B8000C0E0EEF801105808C0A058185F0B3008AC +:105B90000E9CEF480110723A72285D182FFDD83222 +:105BA000EEF80088EF4400BCEF4000788F55EF45D9 +:105BB000007CEF4500C88F08CC6B6E585808E08118 +:105BC00000DF6E4B580BE08100D06E085808C161B1 +:105BD0003078EF4400BCEF480078EF440048CB3BFE +:105BE000EEF900845809E08101846FF85808E081DB +:105BF000015C6E4B580BE08100B86E685808CA30E3 +:105C00000E9CF01F0101C9FB6E485808E08100A9F5 +:105C10006E585808E08100B06E685808C9406F0897 +:105C20005808C910300B0E9CF01F00F7C8CB6E7CD3 +:105C30006EA95809C2F16F885808C2C06F38EF4585 +:105C400000605818EFF41A2FEF44004CEF4500584D +:105C5000EF4500548FC58FE4EF450118EF45011C57 +:105C6000C49B6FE8EEFC00CC5818EFF41A2FEF44F9 +:105C70000078F01F00E6EEFC00D4EF4500CCF01FEA +:105C800000E3EEFC00C0EF4500D4F01F00E18FE51B +:105C9000C5AB580CCD416EB85808CD105829C3B0CB +:105CA0005819C4706F3820185878FE9BFF26FEF9EB +:105CB0000362F208032FEEF800BC5808FE91FF4C77 +:105CC000C5CB6E585808E08100FE6ED85808E080B9 +:105CD00000FE6FC95819FE90FF1A5829FE91FF1E49 +:105CE0006FD85808FE90FF1A0E9CEF490070EF44E1 +:105CF00000BCF01F00C96E7CEF450074C0BB0E9C59 +:105D0000EF4400BCEF410070F01F00C36E7CEF4514 +:105D10000074C00B6F885828CC606F388FC45898B7 +:105D2000EFF41A2FEF4100603098EF48004CCE4A54 +:105D30006F885818CB806F3858A8EFF91A2FEEF9F2 +:105D4000010C30A88FC5EF440060EF48004CFEFA0C +:105D5000029E7286726C302B0A995D16CC0A6F080F +:105D60005808FE90FF573068EF4400BC8FF4EF48AE +:105D70000078CE9A6F085808FE90FF503038EF44F4 +:105D800000BC8F05EF440080EF480078CDCA6E69F3 +:105D90005809C0A06ED85808E0810117EEF800F845 +:105DA0005808E08100FC6E485808E08100EB6E88DE +:105DB0005808C0506ED85808E08000E46F28580892 +:105DC000C050300B0E9CF01F00956E7CC93A6F7866 +:105DD0005808C8018F88EF4400BCEF40004CEF48E2 +:105DE0000058EF4800448FF8EF4800488F98EF4480 +:105DF0000040C82A6E1B580BCE606E585808FE90A3 +:105E0000FF6A3089EF4400BCEF49004CEF44005C6E +:105E1000C73A6E2B580BC2716F696FB81039CD330A +:105E20006ED85808C2003058EF4400BCEF48004C10 +:105E30008FC4EF440110FE9FFE60580AFE91FF4B95 +:105E4000EF4A011CEF4400BCEF44004CEF4A0060F5 +:105E5000EF4A0058EF4A00548FCA8FE4EF4A011806 +:105E6000FE9FFE4B6E685808C7B16E485808C78140 +:105E70006E585808CC71580BFE91FF2D6F696FB8A2 +:105E80001039FE93FF286ED85808FE91FF24307811 +:105E90008FCBEF48004CEF4400BC6F98EF410110EE +:105EA0008F18FE9FFE2AEEF80088EF4900C8EF44E5 +:105EB00000BCEF4000788F59EF49007C8F08FE9FAF +:105EC000FE436ED85808E081008AEF4400BCEF44DE +:105ED000004CEF450060EF450058EF4500548FC57A +:105EE0008FE4EF450118EF45011CFE9FFE06305977 +:105EF000EF4400BCEF4900781A9BEEFC00C0F01F95 +:105F000000481892C290EEF8010C4009189A708669 +:105F1000706C300B5D16049CF01F003CEEF800C85E +:105F20005808EFF81028F9B90101F1D9E108EFF8A4 +:105F30001A28EFF80029F9B90001F1D9E008EFF8C3 +:105F40000A29EEF90090EEF8009C2FF92FF8EF499E +:105F50000090EF48009CEF450084FE9FFDF5EF4464 +:105F600000BCEF40004CEF450058EF4500448FF572 +:105F7000EF4500488F958F85EF440040FE9FFDBDA3 +:105F80003078EF4400BCEF48004C8FC56F98EF416C +:105F900001108F186E7CFE9FFDAEEEF800FC5808D5 +:105FA000FE91FF038FD4EEFC010C78785808C040B6 +:105FB000780C5D186E695809FE90FEF76ED8580887 +:105FC000FE90FEF36E7C3059EF4400BCEF49004C6C +:105FD0008FC4EF440110FE9FFD8E3088EF4400BC5B +:105FE000EF48004CEF44005CFE9FFD8780037E205D +:105FF0008003D744800268308002608C8002740085 +:106000008002747480025790800091E88002653CA1 +:106010008003D76480025874800254FC800263E6D7 +:10602000EBCD408076085808F9B901FFF1D9E108B5 +:10603000F7F81A0076185808F9B901FFF1D9E10804 +:10604000F7F81A0176285808F9B901FFF1D9E108E3 +:10605000F7F81A0276385808F9B901FFF1D9E108C2 +:10606000F7F81A03169718991698486A300B301CDF +:10607000F01F00050E9CF01F0005E3CD808000009E +:10608000800260208002747480025A84D401169CBD +:10609000F01F0002D802000080025A84D421203D63 +:1060A0001895E06C0120F01F00221897C38031E89A +:1060B0003039F9480088F948006833C8F949006C5C +:1060C000F9480064F945010C300430CA99A4089BD2 +:1060D0001A9CF01F00186AF850286ADA500A6AE819 +:1060E0005018EEF8010C1A99704A493B0E9CF01FAB +:1060F0000013EF4C00C01A961898C14030160E9C41 +:106100008F76F01F000F0E9C8F74F01F000D0E98FD +:1061100008990C9C48BA089BF01F000B0E9C2FDDC1 +:10612000D8220E9C1097F01F0009CF9B80028F246D +:10613000800091D0000004788002711C80025A8493 +:106140008002602080027474800091E8D401580CB1 +:10615000C090F8F800D45808C050F8F800805808EB +:10616000C020D8023018F94800809958F01F00026A +:10617000D802000080025A84D401580CC04099AB68 +:10618000F01F0002D802000080025A84D401580C8B +:10619000C060F94B00E0994BF01F0002D8020000EC +:1061A00080025A84EBCD40801897580CC090996BB0 +:1061B000F94B00DC580BC0610E9CF01F0005E3CDCD +:1061C0008080F8FC00C0F01F0003CF7B80025A845F +:1061D000800263BAD401580CC04099DBF01F000262 +:1061E000D802000080025A84D401580CC04099BBE8 +:1061F000F01F0002D802000080025A84EBCD40E07C +:10620000189714951296580CC3A0F8F8008C2FF824 +:10621000F948008C5839E08B0009F8F800A82FF8ED +:10622000F94800A8E3CF80E01588306AF94800B04B +:10623000F8CCFF4CF01F0042ECCA00040BA90BB8CD +:10624000F1E910861436E08B00130B99300CF80935 +:106250001800C4603038F0091800C130EEF800A80A +:10626000301C2FF8EF4800A8E3CD80E0EEF800AC3A +:10627000300C2FF8EF4800ACE3CD80E0E3CF80E0B6 +:10628000E046002BE088004C3FE80BCBF00B1800F9 +:106290005F0A3028F00B18005F09124AF80A18004C +:1062A000CEE13018F00B1800C3A1EEFC00CCF01FBB +:1062B00000252FC60C9CF01F0024EF4C00CCC2F030 +:1062C0000C9A0A9BF01F001E0E9CEF4600D0301661 +:1062D000EF460074F01F001D0C9CE3CD80E0EEF84B +:1062E00001145808C100300830398FC8EF48011434 +:1062F0008F29EF49004CEEFC010C78C85808C030DB +:10630000780C5D18EEFC00D4F01F000E0C9CEF46DC +:1063100000D8F01F000DEF4C00D4C031E3CF90E067 +:10632000EACBFFFCEEFA00D8F01F00050E9C3016F9 +:106330008F56F01F00060C9CE3CD80E0800091DCBE +:10634000800091E88000920080025A84EBCD40806A +:10635000189779685808C0B079BB580BC08070494D +:106360005D193008EF480058EF48006CE3CD80809D +:10637000EBCD40C01897580BC04078085878C04003 +:106380003018EF48006030786FA68F086F9C6C293A +:10639000300A305B5D196FA86F9C7029301A304B42 +:1063A0005D19E3CD80C0F94B00745EFCF94B00B081 +:1063B0005EFC580CF9FC10135EFC580CF9B8010196 +:1063C000F9F81A06F9B9010BF9F91A005EFC580C34 +:1063D000C08079485808C05079589708794C5EFCBD +:1063E000300897085EF8580CC0C0791A580AC09057 +:1063F000792897083009F9490048F94900445EFABC +:106400003008109A97085EFAF94B00C45EFCD70377 +:10641000D401580CC040483BF01F0003D8020000D4 +:106420008003D7B08002634CEBCD40801897580CA6 +:10643000C0F079A8300B7019799C5D19C0916E6815 +:106440005808C0606E2820385818E0880004E3CD52 +:1064500080806F485808F9B80101EFF81A136FA847 +:106460006F9C7029301A300B5D19EEFC00A4483A7D +:10647000302BF01F0003CECB8003D7BC80023A1A2A +:10648000EBCD40801897580BC040780858B8C040F2 +:106490003018EF4800606F4930B88F085809F9B8D4 +:1064A0000101EFF81A136FA86F9C7029301A300B96 +:1064B0005D196FA86F9C7029300A305B5D196FA859 +:1064C0006F9C301A7029304B5D19EEFC00A4484ACD +:1064D000302BF01F0004E3CD808000008003D81C27 +:1064E00080023A1AEBCD40C01897580BC04078088C +:1064F00058C8C0403018EF48006030C86FA68F08F9 +:106500006F9C6C29301A302B5D196FA86F9C702915 +:10651000300A305B5D196FA86F9C301A7029304BC0 +:106520005D19EEFC00A4484A302BF01F0004E3CDB7 +:1065300080C000008003D86080023A1AEBCD406032 +:106540001896784CF01F000B30056D1C8D45F01F20 +:1065500000096D4CED450044F01F00066DA8ED45A7 +:1065600000500A9A6D9C70290A9B5D19E3CD8060EA +:10657000800091E8EBCD40E01897580BC4F0780804 +:106580005808C4C130088F086FD95809C0B06F6867 +:106590005808C08070985808C0506FBB0E9C5D189A +:1065A000C4114A4B0E9CF01F00246FA83006301512 +:1065B0008F16EF4500408F268F666EFA70490C9B50 +:1065C0006F9C5D196FA80C9A70290C9B6F9C5D19CC +:1065D0006FA80C9A7029302B6F9C5D196F4CF01FBF +:1065E00000176FA80A9BEF460050EF46004C0C9A2C +:1065F00070296F9C5D193FF80C9A8F386FA5303B5E +:106600006F9C6A295D196FA80C9A7029304B6F9C9A +:106610005D19EF4600C0E3CD80E03018EF48006020 +:10662000CB2B6F686FBB70A90E9C5D19CBFB000074 +:106630008003D8948002634C800091E8EBCD40E069 +:10664000205D1897580BC04078085858C040301843 +:10665000EF48006030588F086F695809C4406FA830 +:10666000FACBFFF070596F9C5D19310A300B189509 +:106670001A9CF01F00256F1C6EE850086E295019F7 +:106680006E6850286F095039F01F002030086F6B7A +:10669000EF48005CEF480044EEC8FFB81A9A0A9928 +:1066A0001AD80E9C405876566FBB5D16EF4C0044CE +:1066B00040188FE82FFD5808C1616F785808C13124 +:1066C00040188F2840298F694038EF4800406F6894 +:1066D00070695809C08070785808C0506FBB0E9C14 +:1066E0005D19C0412FBDE3CD80E06F4CF01F000766 +:1066F0006F68EECAFFAC70796FBB0E9C5D19EF4CF2 +:106700000050CF1B800091D0800091E8EBCD4080FD +:106710001897580BC04078085868C0403018EF48A8 +:10672000006030686E4C8F08F01F001A6F18580810 +:10673000C2E0EEF800B05808C2216EA86F2C8F3866 +:10674000F01F00158F4CC0706F2A6F1BF01F0013D5 +:106750006F288F586FA8301A7029303B6F9C5D19D5 +:106760006FA86F9C7029300A305B5D196FA86F9C11 +:1067700070496EFA300B5D19E3CD8080310AEECBA3 +:10678000FF7CEECCFF6CF01F0005CD8B8F48CE9BBD +:10679000800091E880009200800091DCEBCD40FC0D +:1067A000201D79A81897169214931294799C700959 +:1067B0005D191896C2F06F685808C23070C8580842 +:1067C000C2000E9C1A9A6FBB5D181895C1A0400CB0 +:1067D0002FBC870CF01F0015C1D03028B892B888A4 +:1067E00030188699B8B9A9891897B8A9B8C80A9B6A +:1067F000400A2FBCF01F000E0E9C2FFDE3CD80FC45 +:106800005804C0416DCC580CC0A16DB86DA5580599 +:10681000C0A130070E9C2FFDE3CD80FC6DD81895EC +:106820005008CD6B5008CD4B80009200800091DC69 +:10683000D431209D3004F8C9FF7CF8C8FF6C18974C +:1068400050195008F8C0FFB808956FA8EF450060D0 +:10685000301B70196F9C5D19C0706FA8306B701978 +:106860006F9C5D19C2F16FA8306B70196F9C5D1938 +:10687000C140EEF800C45808C101EEF800C0E0487D +:106880000032E08A0025E0480033E080011C6F8878 +:106890005808C1003014CDAB6E085818F9B8010182 +:1068A000EFF81A18EF4500C030188F086F885808A5 +:1068B000CF216F7C580CE80C1700F9BC01012F7D2B +:1068C000D832301B0E9CF01F01EECE2B6E0958A95A +:1068D000FE9BFFDFFEF807ACF009032F30183029CC +:1068E000EF4800608F09CD4B300B0E9CF01F01E686 +:1068F000CCFB6E196EB81039C760300B0E9CF01FC0 +:1069000001E2CC6B6EA96E381039E0800137300B94 +:106910006E8E580EC1B06E685808C1806EAA6E396E +:10692000123AE08000BBEEF800B05808C0F0F2C8A0 +:10693000FFFFF1D8C008103AE08000B0F2C8FFFEB7 +:10694000F1D8C008103AE08000A96E2C582CC20083 +:106950006E985808E08001236E685828E080011F77 +:106960006EAA6E39123AE0800146EEF800B058087F +:10697000C0F0F2C8FFFFF1D8C008103AE080013B38 +:10698000F2C8FFFEF1D8C008103AE08001346E78FA +:1069900058085F1A3008F5EB0009F0091800E0818B +:1069A000010FEC1B0001F5EB0008F2081800E08075 +:1069B00001056EBB1699582BE080012A6E16580609 +:1069C000C071581BE080021B582BE08101630C3B17 +:1069D000E080014F0C995919C0F1580EC0416FE881 +:1069E0005808C0A0300B0E9CF01F01A8C51B6EEB11 +:1069F000580BFE90FF7C300B0E9CF01F01A5C48B42 +:106A00006FA8305B70196F9C5D19C7016FA8307B50 +:106A100070196F9C5D19C0506E685808FE91FF395F +:106A20006FA8300B70396F9C5D19C0516E68582883 +:106A3000FE90FF2F6FA8308B70196F9C5D19FE912F +:106A4000FF286FA8189B70396F9C5D19C0516E6844 +:106A50005828FE91FF1E6FA8307B70196F9C5D193E +:106A6000C0806E285828C0506E685808FE90FF11EC +:106A70006E185918E080025C5998FE91FF0AEEF8F2 +:106A800000805808FE90FF056E685808FE90FF01D0 +:106A90006E285848FE91FEFD300B0E9CF01F017DC4 +:106AA000CF7A6FA8306B70196F9C5D19FE90FEF164 +:106AB000EEFB00C4580BFE91FEEC0E9CF01F017023 +:106AC000CE7A3328EEFC00A4FEFA05CC1AD8302B7F +:106AD000F01F0172EEF800C0301B16080E9CEF4844 +:106AE00000C0F01F016F2FFDCD3A6FAA3038FACBEE +:106AF000FFE08F0830136F9CEF43006074595D19FD +:106B00008F95507C8F85EF4500788F758FA58FB559 +:106B10008FC58FD55F0A408B1896583B5F88104A07 +:106B2000EA0A1800C23119A919B8F1E910885068A9 +:106B3000103BC1C319988FA8EEF900B05809C09056 +:106B4000069C4019FACAFFE8FACBFFE4F01F015592 +:106B50000D893028F0091800E080011CE08B008DC1 +:106B60003018F0091800E0800123EEF800C02FF87B +:106B7000EF4800C0FE9FFE8D6E785808FE90FEC95B +:106B8000EEF800B05808C080310A400B401CF01FDE +:106B90000146FE91FEBE301BCBCA580EFE90FEF998 +:106BA0006E685808FE91FEF56E185918FE91FEDACF +:106BB000583CFE91FED7CECA6E19C0EB301830A9F2 +:106BC000EF4800608F096F1CF01F01386E485808AD +:106BD000C1A06E5CF01F0136EF4C0044FE90FE59E0 +:106BE0006E5A6E4BF01F01336E58EF480048FE9FFF +:106BF000FE50300B0E9CF01F012AFE9FFE4A30090A +:106C000050494048EF480044FE9FFE436F08580833 +:106C1000FE90FED6301830996FAA8F09EF480060B9 +:106C20007458FACBFFE86F9C5D1819A919B818962B +:106C3000F1E910885848E08B01476F1CF01F011BD9 +:106C4000305CEF450044EF4C00486EA6F01F011881 +:106C5000E08001853029B896B889EF18004AB8C994 +:106C6000B8B8A988B8A8EF4C0044FE9FFE12584C53 +:106C7000FE90FEB3CB8A3038F0091800E08000DCCB +:106C80003048F0091800FE91FF7230188F98C6EB5B +:106C900030181693EF48006030496FA8E04B00FEB3 +:106CA000EFF3000D8F096EC670096F9C5D19069A8F +:106CB0000C9BF01F0101E08100C36F1CF01F00FB63 +:106CC0006FA8EF4500446EA270096F9C5D19503C9F +:106CD000FACCFFE8F01F00F91893C9206EB8E0481D +:106CE00000FEE08101516FA8406670096F9C5D193C +:106CF00030C8505CA376EF480048ECCCFFECF01FA6 +:106D000000EC1891E080012E3FE9B892B8C9302913 +:106D1000B889F8C8FFFBB0A5B085B095F8C9FFF8F1 +:106D20003038B285B295B2A5B2B8504CF8C2FFF473 +:106D30000A96C298661A6ED81438C210405CF01FCA +:106D400000DE049AE4CBFFFC580CC1903FE814C865 +:106D50008689B4896608A988B4986609B4A907C861 +:106D6000B68886A9B6996618A988B6A86619B6B96C +:106D7000F6C2FFFC60082FF62F88810866F35803DF +:106D8000E0800099660B6EC81638CD50661ACD7B30 +:106D90006E185918FE91FEEB40685848FE98FEE7C1 +:106DA0003018EF4800780DC98FB9CE0A406A584AAA +:106DB000FE98FEDD30188F780DC98FB9E04900FECE +:106DC000FE91FED558BAFE98FED2ECC9FFFB139C8B +:106DD000138A13A8F1EA1108F1EC1088ECCBFFF844 +:106DE0008FC817AC17B81789179AF1E91188F1EA1B +:106DF0001108F1EC10888FD8CB9A6FA83089EF4B2F +:106E000000608F09FACBFFE0705A6F9C5D1AFEFAA2 +:106E100002AE302BEEFC00A4F01F00A06F1CF01F90 +:106E200000A30C99EF460044009A6EAB0E9CF01F35 +:106E300000A5C1AB30188F88FE9FFE990C9C069B65 +:106E4000F01F00A1FE90FF3B6FD85808C0906F6AFA +:106E5000580AC06074096EC81039E0800086FEFBD5 +:106E6000026A0E9C3006F01F009A6EB88F186F6C85 +:106E7000580CE08000CD5806C54078B86FBB0E9C1A +:106E80005D18EF4C006C6FB65806E08000CA6F6A60 +:106E90006ECB30188F287429FEFA02381AD91AD30B +:106EA0001ADB302BEEFC00A4F01F007C2FDDFE9FD0 +:106EB000FCF05806C4206F285C78A2B8A988A2A864 +:106EC000FE9FFEA1F0CC0004F0C20005F01F007888 +:106ED0001893FE90FEB45802C120ECCCFFFB300AA0 +:106EE00035DB1938F0C90021F6091800F9B80B5F35 +:106EF000E60A0B082FFA1432FE9BFFF53008E60273 +:106F00000B084F581AD34F5A1AD8302BEEFC00A456 +:106F1000F01F0062069CF01F00652FEDFE9FFE8FA4 +:106F200078380E9C5D18EF4C006CCAEB6FF858086F +:106F3000FE90FCAFFE9FFDAA04983FE910C9B0A6E1 +:106F4000B086B096E4C9FFFCB2B6B286B296B2A6DD +:106F50006F282F88EF480048CB0B0A9CFE9FFE85C8 +:106F60005045FE9FFE5074181033FE91FF7A7499BD +:106F70005809FE90FF766FBB0E9C5D19FE90FF7165 +:106F80003016C74B3058406CEF4800482FACF01F0C +:106F900000481896FE90FE35B89230283039B888EF +:106FA000B8C9504CF8C2FFFB50250A91C1A8661A17 +:106FB0006EB8103AC130403CF01F003FC0F0660888 +:106FC0005808C5A040285808C0913FE904C93018A6 +:106FD000502860082FF12FF8810866F35803C0602D +:106FE000660B580BCE50661ACE7B5801EFF8101284 +:106FF000E5F10E00EFF80012F7B800FFEFF80A1203 +:107000005C78ACB8A988ACA8FE9FFDFD069B6ECC51 +:10701000F01F002DEF4C0058FE90FE51C2DB6FA810 +:107020006F9C70095D196F6870291AD91AD36EC8E0 +:1070300018921AD8302B4AAAEEFC00A4F01F0017B1 +:10704000EF4600588F268F1658025F1B6EB92FDD52 +:1070500058D95F081668EC081800FE90FE30E4F876 +:1070600001605808FE91FC15E4F801685808FE908C +:10707000FE26FE9FFC0E661804C8CACB800265740B +:107080008003D7848002670C8002663C80026370B4 +:10709000800264808003D8A080023A1A800264E4EF +:1070A00080028D9C8000917C800091E8800092009D +:1070B000800091DC80023AD8800271E48003D8F02D +:1070C0008002679C800271908003D9248002634C07 +:1070D0008003D9708003D8D08003D3E48003D930F3 +:1070E000EBCD40801897580CC0E0488BF01F00088B +:1070F0000E9CF01F0008EEFC00ACF01F00070E9C79 +:10710000F01F0006E3CD80808003D9AC8002634C81 +:107110008002653C8002D298800091E8EBCD40F877 +:10712000203D1896169414931295E06C00C8F01F39 +:1071300000151897C1C033C8F946006499F8F9449E +:107140000068F94300A430CA300B1A9CF01F000EEF +:107150006A2850286A0950096A181A9C5018F01FAA +:10716000000BEF4C00AC1A961898C0500E9C2FDD07 +:10717000E3CD80F80E9C1097F01F0005CF8B000028 +:1071800080028F24800091D08002D2C4800091E8D8 +:10719000189948A8700C580CC051C0D878FC580CED +:1071A000C0A078081238CFB1781816385E0C78FC79 +:1071B000580CCF815EFD000000007AB01899489805 +:1071C000700C580CC051C0C878FC580CC09078089E +:1071D0001238CFB178181638CF81782C5EFC5EFD5E +:1071E00000007AB0189B4888700C580CC0A0189901 +:1071F000300A2FFA72F95809CFD1149897085EFC1B +:107200001898CFDB00007AB05EFDD703EBCD40E0ED +:1072100048D81896169570075807C051C0E86EF701 +:107220005807C0B06E2C0C9BF01F0008CF916E0861 +:107230008B086E1CE3CD80E030088B08109CE3CDFA +:1072400080E0000000007AB0800091A0EBCD40C04B +:1072500048B70E966E095809C0B072F88D08129C96 +:1072600072D85808C0705D186E095809CF71E3CD07 +:1072700080C0129CF01F0003CEEB000000007AB02B +:10728000800091E8EBCD40C048D66C485808C0312A +:10729000C0880E987057109CF01F000A5807CFA1A5 +:1072A0006C6CF01F000930086C3C8D68F01F000505 +:1072B0006C8CF01F0004E3CD80C0000000008C90B7 +:1072C000800091E880014544EBCD40F8495718967D +:1072D000169314946E2B12952FFB6E3CA56BF01F2A +:1072E0000012C1D06E28A568F80809066E29A569A4 +:1072F000F8090009932593146E2AF4081504F80878 +:10730000000891336E188F3C2FFA1036EFF69A0171 +:107310008F2A3018300C8FC8E3CD80F8E3CFC0F847 +:1073200000008C90800091F4EBCD404CE0634DD395 +:10733000EA1310621896F01F000DF8030648A7899B +:10734000E06A03E8F20A0248F8080109121CF20A8E +:10735000024AF80304428D1ABF5CA743E60C010CF5 +:107360008D0CE3CD804C0000800145C4EBCD408006 +:10737000202D4A076E495809C2C06E581039C29074 +:107380001A9CF01F001D6E484009700A1439C2444F +:107390007018401BF40901091618C276F00B141F6F +:1073A000E06A03E8F20A024AE0694DD3EA19106282 +:1073B000F0090448A7491619F20A000C580CE08A93 +:1073C000000E300948DA6E6BF01F000D6E488F58C2 +:1073D0002FEDE3CD80801439C030301CCF3B7018C6 +:1073E000401B103BCFB4CD7B2019F028BDC0CD7B16 +:1073F00000008C9080027328800275188001455827 +:10740000D43149A0189516931492604C580CC2B010 +:1074100030060C940C91785778480A38C09018962A +:107420000E9C5807CF91F01F0012089CD8325BF3D6 +:107430005F0A782906395F081448E2081800CF006F +:107440005BF25F0A783904395F081448E2081800D3 +:10745000CE705806E1F70A04EDF71A052FF4F01F75 +:107460000005CDFB1894CE0B00008C908002736C4D +:10747000800091E8EBCD40FC18961695149212947A +:107480001093318CF01F00211897C3A0F01F00202B +:107490006E0A6E1B0C0AEA0B000B8F0A8F1BEE5B49 +:1074A000423FE08A000B2FFAEE3B42408F0A8F1BCF +:1074B000EE5B423FFE99FFF98F248F338F423008F5 +:1074C0008F58494C78495809C1D072081438E0895E +:1074D000001A2F0CC0A8F2CCFFEC72595809C0A0BA +:1074E00072081438E0890007103ACF617218103B17 +:1074F000CF348F599907F01F0008E3CF80FCE3CF0A +:10750000C0FC2F0CCF7B000080009200800273280B +:1075100000008C908002736CEBCD40E0202D49661A +:107520001A9CF01F00166C475807C1F040096E08FE +:107530001238E089001B3005C05840096E08103928 +:10754000C1451039C0516E1940181238C0E56E5847 +:107550008D558D486E3B6E486E2C5D180E9CF01F4D +:1075600000086C475807CEA1F01F00062FEDE3CFAF +:1075700080E0000000008C9080027328800091E879 +:107580008002736CEBCD408049A76E3E580EC2B0AE +:107590006E2A580AC280E08A002B7C081838C27014 +:1075A000FCC9FFF0300BC05872082F091838C050C2 +:1075B0002FFB163AFE99FFFA143BC170201A163AB7 +:1075C000C0F0161AF60C1504A56AFC0C000C2FFB73 +:1075D000A56BFC0B000BF01F00086E2A201A301858 +:1075E0008F2A8FC8E3CD8080E3CD8080300BCE7BA7 +:1075F00000008C90800091C4EBCD406048861895C7 +:10760000334A300B0C9CF01F0007ECCCFFE88D05D3 +:10761000301BF01F0005E3CF8060000000008C905D +:10762000800091D0800144F80050F2010100000078 +:107630000000000000000000F6F800DC5808C05010 +:10764000F8F800F85808C0205EFDF6FB00D0580B93 +:10765000CFC076085808C04176185808CF602F8BE5 +:10766000CF9BD703EBCD4080300B1897F01F001352 +:10767000306A300BEECCFF64F01F0011306A300B23 +:10768000EECCFF5EF01F000E300BEEFC00E0F01FB2 +:10769000000D300BEEFC00E0F01F000BEEF800BC1C +:1076A0005828C030E3CD8080EEFC00E0300BF01FA6 +:1076B0000007E3CD80800000800217D0800091D0C9 +:1076C000800261E8800261D4800261A4EBCD408039 +:1076D0001897F8F800945808C160300BF94B0094E3 +:1076E000F8F800D470985808C040F8FC00C45D1841 +:1076F000486A302B0E9CF01F0006300A0E9C149B2B +:10770000F01F0004E3CD80808003D9D480023A1AB0 +:1077100080022584D431209D500C761558155F9831 +:107720007607169058075F1910693008F00918009D +:10773000E08000B8EEC4FFFF0989F2C6FFFE0C35F9 +:10774000E08500B010923DD33301C168E208180013 +:10775000C2800C0758155F9958075F181268E40833 +:107760001800E080009EEEC4FFFF0989F2C6FFFE0C +:107770000A36E08900960C150F88E6081800CE71CD +:10778000305AF4091800FE98FFE6EECCFFFE306A8E +:107790004DFBF01F0060C0B00F88E2081800CDA1BB +:1077A00009883019F2081800FE98FFD540080E9B92 +:1077B0000C9AF0FC00DCF01F00581897C711400A23 +:1077C000FACBFFFCF4FC00DCF01F0054C21540793A +:1077D0005809C1E040685808E0890007C19840682E +:1077E0001037C1644079EE0B1504F20B000B400911 +:1077F0003008F2FC00DC2FF71099109AF01F0048B7 +:10780000CEF14008301BF0FC00E0F01F004660465F +:10781000605558065F1958155F981069C760ECC429 +:10782000FFFF0989F2C7FFFE0E35C6F53003069249 +:107830000691C1A85802C0610D88330AF4081800E7 +:10784000C3A00E060E1558065F1858155F991268EA +:10785000E2081800C3F0ECC4FFFF0989F2C7FFFE7D +:107860000A37E08900385803CE610D883DDAF40804 +:107870001800CE113058F0091800FE98FFDD306A6C +:107880004A3BECCCFFFEF01F0023CD5140090E9A7D +:107890000C9BF2FC00DC3013F01F0023CCCB600704 +:1078A0005807CB604009300AF2FC00DC149BF01F43 +:1078B000001ACAEB09883019F2081800FE98FFC3B5 +:1078C00040080E9A0C9BF0FC00DC3012F01F0017F1 +:1078D000CB9B5803C0F05802C0B160485808C08024 +:1078E0004008049AF0FC00DC049BF01F00102F7D80 +:1078F000D83260465806CF004009300AF2FC00DC5E +:10790000149BF01F0009CE8B3002CF5B80027628DB +:107910008000917C8002B5EC8002C04C8002938094 +:10792000800255968002B58C8002B52CD431FACDF8 +:10793000009018911497586BE08B00C4FEF807482C +:10794000F00B032F580AC0A0F8F800907009739A42 +:10795000580AC0410E9BF01F01CD304B029CF01F16 +:1079600001CCE2F801185808E0810312FAC7FF942D +:10797000E2F800D470285808C4C00E9BE2FC00C492 +:107980005D18C475E2C6FF64306A0C9B0E9CF01F44 +:1079900001C1C3F0FB3800711AD8FB3900741AD941 +:1079A000FB3800771AD8FB39007A1AD9FB38007DEA +:1079B0001AD8FB390080FEFA06DE1AD9301B029C69 +:1079C000F01F01B6306A0E9B0C9CF01F01B5306AA7 +:1079D000300BE2CCFF5EF01F01B3E2FA00BC2FAD2A +:1079E000584A5F08590A5F091248C081588AE080E6 +:1079F000030C0E9B029CF01F01ACE2F80090704952 +:107A00005819E08102D5E2F800B05808E08002D0B1 +:107A1000FB3800711AD8FB3900741AD9FB3800778B +:107A20001AD8FB39007A1AD9FB38007D1AD8FB39ED +:107A30000080302B1AD9FEFA0672029CF01F0197C3 +:107A4000E2FB00B02FAD580BC040029CF01F019824 +:107A50000E9BE2FC00DCF01F0197622CF01F0196E8 +:107A6000300BE2FC00E0F01F0195300BE2FC00E07F +:107A7000F01F0193E2F800BC5828C061300BE2FC13 +:107A800000E0F01F0190301BE2FC00E0F01F018BD2 +:107A9000300BE34B00F4E2F900BC59095F0A584986 +:107AA0005F081448F6081800E0800216029CF01FD8 +:107AB0000186307B029CF01F0176029CF01F01833F +:107AC0002DCDD832580ACFD0149B7439F8FC00DC85 +:107AD000742AF01F017F2DCDD832F8FB00BC590B62 +:107AE000CF00F8F800E85858E08002355838E08BAD +:107AF0000234E2C7FF64306AFEFB05D80E9C2F8B70 +:107B0000F01F0164EE0B1710E06800A2E3D8E00B51 +:107B1000029CF01F0171E2FC00DCF01F0170FEFA14 +:107B200005BE302B029CF01F015DE2FA00BC584AF2 +:107B30005F08590A5F091248C0B1588AE08002976D +:107B400030080E9BE3480104029CF01F0157029C81 +:107B5000F01F01642DCDD832FEFA058C303BF01FAA +:107B6000014F5807E08002806E0858085F1B169A84 +:107B7000E2FC00DC301BF01F015DFACCFF94F01F2B +:107B8000015CE2F800985808E08001D541B9F2089C +:107B90000108E048003CE08A01A6E34900982DCDA9 +:107BA000D832F01F0154E08501EBE2F900907248F1 +:107BB0005828C870E2F800AC5808C831E2FA00CC86 +:107BC0001094500AE2F000D072285808E08A00A908 +:107BD000300850187218401AF00A032850585800FC +:107BE000E08A0097400530020A96C11808973003D2 +:107BF00030142FF2ECC6FF6404305F983009E9E8D6 +:107C00000008F2081800E08000970E940C9B029C7C +:107C10000C93F01F0139C05078385818FE99FFE8CE +:107C20006D585808C051ECF800805808CE004059F3 +:107C30005809CDD0ECC8FFFAECCAFFA8ECC9FFD4B4 +:107C40005048502A50394057C0486E175807CCF05A +:107C5000EEF801945808CFA16CAA6E58103ACF6183 +:107C60006E4B404CF01F010BCF116E885808E0811D +:107C700000E16F6AEDBA0001C061ECFB0080580BB7 +:107C8000E08100E3F1DAC001300AF4081800CDE029 +:107C90006D5B580BCDB0FACAFF94403CF01F011742 +:107CA000CD516F6841B91268CD106F3841C9126863 +:107CB000CCD06F4841D91268CC906F5841E9126816 +:107CC000CC5058065F04C96B149BF01F00F02DCDFB +:107CD000D832149B2EACF01F010A1896FE91FEF2CA +:107CE0006F9B580BE080012A581BFE91FEEBE34B83 +:107CF00000D8029CF01F00FB622CF01F01028326BB +:107D0000CE0A5803E08100BF0E94E2F900904018BB +:107D10002FF850187228401A103AFE95FF5DE2F8CD +:107D200001085808E0800121029CF01F00F7E2F9E9 +:107D30000090C4BB5804CE600E923006C108049770 +:107D4000089930032FF6EAC5FF640C305F98F3E81A +:107D500000083009F2081800CD500E920A9B029CD0 +:107D60000A93F01F00E5C05078385818FE99FFE9D3 +:107D700040585808CE50EACAFFFA4057506AC078B7 +:107D80006AA8103AC5006E175807CDA0EEF8019406 +:107D90005808CFA16E5A580ACF416E885808C1E1E1 +:107DA0006F5BEDBB0002C040EDBB0003CED1F1DB49 +:107DB000C002C0806B585808CE71EAF8008058089D +:107DC000CE31EEF8014C5808C110EB190088EDB91E +:107DD0000001CDA058055F09CB6B306AEECBFFE800 +:107DE0000A9CF01F00ACCD01CDCB1099EEC8FECCA3 +:107DF0002FF9700A580AC2612FC85849CFA1EDBBAC +:107E00000003C071EEF800F0F1D8C002F9BA010128 +:107E1000EB190088EDB90004C030580A5F0A580A0F +:107E2000CB30CD6B6E4B406CF01F009ACAD1CB6B40 +:107E3000306AEECBFFE80C9CF01F0096FE91FF0726 +:107E4000C19B301ACDDBFACAFF94402CF01F00AB67 +:107E5000C0306F6AC18B6F6A41B8F5E80008FE90C8 +:107E6000FF136F3841C91268FE90FF0E6F4841D969 +:107E70001268FE90FF096F5841E91268FE90FF04F6 +:107E8000C21BE2F800A85808C131306AE2CBFF6497 +:107E9000069CF01F0080C170E2F800E85838C081ED +:107EA000306AE2CBFF5E069CF01F007AC0C00E9BDA +:107EB000029CF01F007FE08100B50E9A069B029C99 +:107EC000F01F0092009A400BE2FC00DCF01F0090D3 +:107ED000FE9FFDF8169A029C30ABF01F008EFE9FAD +:107EE000FDEE3017FEFA0230303B029CE34700946F +:107EF000F01F006AE06B2710300CF01F0088E2F8DA +:107F000000D470985808C0500E9BE2FC00C45D1865 +:107F100030EB029CF01F0082300A029BFEFC020440 +:107F2000F01F0081300802994FEA109B33CCF01FFC +:107F3000007F41B9FE9FFE33E2F800D85808FE905A +:107F4000FDC1E34B00D8029C301BF01F0079FE9F5F +:107F5000FDB9582BC780E07A86A0300B029CF01F39 +:107F60000075FE9FFDC8305BE2F801105818C7206D +:107F7000029C300AF01F006FFE9FFDA4E2F9009002 +:107F800072485828FE90FD9E301BCEFBFAC7FF9426 +:107F9000E2C6FF64306A0C9B0E9CF01F0041E2F8C1 +:107FA00001185808FE91FCF8FE9FFCE4029CF01FAB +:107FB00000621896C230F8FB0194580BC1F1795851 +:107FC000E2180013C351189B029CF01F005CE2F8FA +:107FD00000B05808C0701036C050E2FC00E0F01F3E +:107FE0000058E2FC00DC0C9BE34600B0F01F00559B +:107FF000029CF01F0055FE9FFD0D029C303BF01FC0 +:108000000053FE9FFD5FE2F800B05808FE90FCF3BD +:10801000F0F800F0F1D8C002FE91FCEDFE9FFCEFFD +:10802000029C300A30ABF01F0043FE9FFD4B350928 +:10803000FAC8FF70189A10D9029CFAC9FFE4F01F21 +:108040000044CC6B4C3AF01F0015E2F800E8FE9FAC +:10805000FD4F72485818F9B80002E3F80A44F9BB1A +:108060000000C87B0E9BFE9FFD84E2F800B058081C +:10807000FE90FD68F0F800F0F1D8C002FE91FD62BC +:10808000FE9FFD678003D9B880027714800217D065 +:108090008000917C8003D9F880023A1A800091DC3C +:1080A000800091D0800226948003DA3880027638EE +:1080B0008002BA4C80028172800261E8800261D441 +:1080C000800261A480021CE080021DB88002979C9F +:1080D0008002762880021AE08002BA1C8003DAA8A7 +:1080E000800276648003DAE48002D19C80028F549F +:1080F00080021E84800218F88002BD68800091A072 +:10810000800281748002189C800230DC800298A476 +:108110008002246C8003DB0480028F1C800228D83C +:10812000800276CC800274008002747480022794EE +:10813000800225848002195C800222A480025748B4 +:108140008002B9D48002237080022FCC80021F30BD +:108150008003DA68580C5E0E5E1DD401201D3008C5 +:10816000767C3009BA881A9A7668129B5D182FFDC2 +:10817000D8025EFCEBCD40801897580CC090789CDC +:10818000580CC035F01F00040E9CF01F0004E3CD16 +:108190008080000080027584800091E8EBCD40F87B +:1081A0001896129510944063328CF01F000B1897AC +:1081B000C0F00C9B311AF01F00093FFC8F658F74D3 +:1081C0008F838F9C30090E9A485BF01F00060E9C2F +:1081D000E3CD80F880028F24800091AC8002815A28 +:1081E000800272C8D4011698306AF8CBFFEF109C59 +:1081F000F01F0002D80A0000800091DCD431213D3C +:1082000076FE511E760A503A761950497628505813 +:10821000763E506E764A507A7669508976785098D4 +:10822000768E50AE769A50BA76B950D976C850E864 +:1082300076DE189850FEF8C9FFF876EA510A7654AF +:1082400076AB500C5019E02BA44F50CB110EF8CB4D +:10825000FFF45008512E403A700340487205502BED +:10826000E069A478EA19D76AFC0900091409760ABA +:10827000E06BB756EA1BE8C7F40B000B100BF5E5F3 +:108280002008066814581009E06870DBEA182420FA +:10829000EBE3200AF20E1507FDE9139E060EFDEA38 +:1082A000000A0A5A1005140BFDE32008F606150C07 +:1082B000EDEB13461C06EDE800080658405AE0694D +:1082C000CEEEEA19C1BD14051005EDEE2008EA0B4B +:1082D0001511F7E512FB0C0BF7E800081C58120308 +:1082E0004069120310034078E6051516E0690FAFE8 +:1082F000EA19F57CEBE312A5F00900091605F7E68B +:108300002008EBE800080C581C091009EBEB2008CA +:10831000F2031507E7E913930A03E7E80008165884 +:10832000E06AC62AEA1A4787E80A000A0C0A100A15 +:10833000E7E52008F402150CE5EA13420602E5E839 +:1083400000080A58408EE0694613EA19A830FC0973 +:10835000000916091009E5E32008F2061511EDE9F8 +:1083600012F60406EDE800080658409AE06B950105 +:10837000EA1BFD46F40B000B0A0B100B40A840C98A +:10838000F60E1516FE395BB1FDEB12AEE06A98D819 +:10839000EA1A69800C0E40BBF00A000AEDE22008E0 +:1083A000FDE80008045840C1060A50C9100AE069F7 +:1083B000F7AFEA198B44FDE62008F6090009F40B33 +:1083C0001507F7EA139B1C0BF7E800080C58F7EEAB +:1083D000200A0C0104091009F206150CEDE91346F8 +:1083E0001606EDEB2008EDEA000A1C5A1401E2051E +:1083F0001511EBE112F50C05EBE80008165840DA10 +:10840000E069D7BEEA19895CF40900091C09100962 +:1084100040E8F20E1516E06A1122EA1A6B90FDE9A7 +:1084200012AEF00A000A0A0EEBE62008160AFDE872 +:10843000000840FB0C58E0697193EA19FD98100A96 +:10844000F6090009FDE52008F40B1507F7EA139B70 +:108450001C0BF7E800080A580C0910094108F2063D +:10846000150CE06A438EEA1AA679EDE91346F00A84 +:10847000000A1606F7EE2008EDE800081C580A0A64 +:10848000100A4118F4051511E0690821EA1949B4E8 +:10849000EBEA12F5F00900090C05EDEB2008EBE81A +:1084A000000816581C091009F2031516E7E912A373 +:1084B0000A03E7E520080C680A58404EE06A256286 +:1084C000EA1AF61EFC0A000A160A408B100A40D867 +:1084D000F40E1505E069B340EA19C040FDEA13BE89 +:1084E000F6090009060E403B0C09E0665A51EA16EF +:1084F000265EF0060006FDE320080A68065810090B +:10850000E062C7AAEA12E9B6F6020002F20B150908 +:10851000F7E9137B41191C0BF7EE200806681C587D +:108520000A0606021006E063E681EA13D8A1F20308 +:108530000003EC09150EF3E613291609F3EB2008E6 +:108540001C68165840CA10024078E065105DEA15B4 +:10855000D62FE0611453EA110244E8050005F40146 +:1085600000011C051601E40A1514E06EFBC8EA1EA2 +:10857000E7D3F5E212CAF00E000E120AF5E9200860 +:10858000166840BB125812031005E066CDE6EA16E5 +:1085900021E1F6060006EA0B1505F7E513BB140BFF +:1085A000F7EA2008126841091458E06507D6EA1571 +:1085B000C3371001F2050005E2091509F3E113794B +:1085C0001609F3EB20081468165810034068140EBF +:1085D0001606E60A150EE0620D87EA12F4D5F5E3F9 +:1085E000132AF0020002120AF5E92008166840ABCF +:1085F00012581205100EE06314EDEA13455AF60303 +:108600000003FC0B1514F7EE12CB140BF7EA20084D +:10861000126840F91458E061E905EA11A9E310066F +:10862000F2010001EC091505F3E613B91609F3EBA5 +:10863000200814681658100540581402E066A3F884 +:10864000EA16FCEFEA0A1509F0060006F5E5137ACA +:10865000120AF5E9200816681258409E1002160307 +:10866000E40B150EF7E2132B140BF7EA200812683F +:108670001458E06502D9EA15676F1003FC05000580 +:10868000E60E1514FDE312CE160EFDEB200814685D +:1086900016581201100140A840E91406E060F68166 +:1086A000EA108771E20A1505F0000000F5E113BA3F +:1086B0001C0AF5EE200816681C58E0624C8AEA1283 +:1086C0008D2A1006F2020002EC091509F3E613796F +:1086D0001409F3EA20081C681458160540DB10053D +:1086E0004108E434C6BEE0616122EA116D9DE80AEA +:1086F0000007F6010001E066380CEA16FDE5F00619 +:108700000006EA08150EF1E513281208F1E9200B1E +:10871000F7EA000A125A1C021402407A404E120074 +:108720001001E063CFA9EA134BDEF4030003E40A6F +:108730001514F5E212CA100AF5EB200BF5E8200833 +:10874000EE0B000BF6091504F3EB13C914091258CC +:1087500014061000F3EA200AE065EA44EA15A4BE14 +:10876000E008150BFC050005F1E01358120512088E +:10877000105A10031401F1E92009E20B1510F7E17A +:10878000130B100B1659F7E820081206EC0E1517FC +:10879000FDE6129E160E1C5810054098FDEB200AAF +:1087A000EA061504E0694B60EA19F6BBEDE513C66D +:1087B000F00900091C0616090C5AEDEE20081403F6 +:1087C00040CBE605150BEBE313550C050A58E06AA0 +:1087D000BC70EA1ABEBF1009F60A000AEBE62008D0 +:1087E000F20B1510F7E9130B0A0B16581C0A100AA6 +:1087F00040F8F40E1517E0697EC6EA19289BFDEAD9 +:10880000129EF0090009160EF7E520081C580C0905 +:1088100010094038F2061504E06A27FAEA1AEAA1BC +:10882000EDE913C6F00A000A1C06FDEB20080C58FF +:108830000A0A100A4068F405150BE0693085EA1948 +:10884000D4EFEBEA1355F00900090C05EDEE200812 +:1088500016090A58408B1009E06A1D05EA1A0488B7 +:10886000EBE62008F60A000AF20B1510F7E9130BE5 +:108870000A0B16581C0A100A40B8F40E1517E069C6 +:10888000D039EA19D9D4FDEA129EF0090009160E72 +:10889000F7E520081C580C09100940E8F2061504F9 +:1088A000E06A99E5EA1AE6DBEDE913C6F00A000A88 +:1088B0001C06FDEB20080C580A0A100A4118F405A2 +:1088C000150BE0697CF8EA191FA2EBEA1355F009D1 +:1088D00000090C05EDEE200816090A58405B100946 +:1088E000E06A5665EA1AC4ACEBE62008F60A000A0C +:1088F000F20B15101C0AF7E9130BE0692244EA1980 +:10890000F4290A0B1658100A4032F40E15171202F9 +:10891000FDEA129EEA0811FF160E409AFDE81008C3 +:10892000E069FF97EA19432A1658F40900090A0971 +:108930000C0241061002F60811FFE40A1506F5E2E2 +:1089400013AA1C0AF5E810081C58F2080005E06993 +:1089500023A7EA19AB941206FC0811FFEC0B000BDD +:10896000EA06150AEDE513661406EDE8100814583A +:10897000F6080008E069A039EA19FC93F00B150F1E +:10898000FA243942F7E8131BE80900050C0BEA0E3C +:10899000000EF40811FFF7E810080C58E06959C3FD +:1089A000EA19655BFC08000540E2EA0E15151202A3 +:1089B000FDE512BEEC0811FF160EFDE81008165872 +:1089C000E40A000AE069CC92EA198F0CF40800026C +:1089D0004068F00900090C09E40A1506F60811FFC1 +:1089E000F5E213AA1C0AF5E810081C58F208000268 +:1089F000E069F47DEA19FFEF40C1FC0811FF1201A4 +:108A0000E406150AE20B000BE0695DD1EA198584E2 +:108A1000EDE213661406EDE8100814584045F60818 +:108A200000011205E20B150FEA0E000EF7E1131B11 +:108A3000F40811FF0C0BE0697E4FEA196FA8F7E804 +:108A4000100840A30C581203E60A000AFC080005AF +:108A5000EC0811FFEA0E1515FDE512BE160EFDE835 +:108A600010081658F4080003411AF60811FFE069CF +:108A7000E6E0EA19FE2CF4090009E60A15060C09DD +:108A8000F5E313AA1C0AF5E810081C58F2080003C5 +:108A90004088E0694314EA19A301F00900091609A6 +:108AA000FC0811FF40FBE605150AEBE3136514050E +:108AB000EBE810081458F2080008E06911A1EA195F +:108AC0004E08F6090009F20E000EF006150FE069D7 +:108AD0007E82EA19F753EDE81316F40811FF0A062F +:108AE000EDE810080A58FC080001407E120EEA0862 +:108AF00011FFFC0A000AE20E1515FDE112BE0C0E74 +:108B0000FDE810080C58F40800094128F20A15067F +:108B1000F5E913AA1C0AF4080009E068F235EA181E +:108B2000BD3A990940D91009EC0811FFF205000B74 +:108B3000F5E8100840091C58720CF6080001E069BD +:108B4000D2BBEA192AD740581208E20B150AF006E0 +:108B50000009F7E1136BFC0811FF140BF7E810088C +:108B60001458F208000640B8E069D391EA19EB8680 +:108B7000F0090009F20E0008F40A11FF400EEC099A +:108B8000150FF3E613191609F20C000CF3EA100A9C +:108B9000165AF00A0006EC081515F1E612B8100C8A +:108BA0009D0C401A7408120895084028700916098F +:108BB00091092EDDD832D703EBCD40E03809764855 +:108BC000F1D8C066F608000AF56900181895F00A91 +:108BD000113F1697F6080008F0CCFFE7587AE08BB3 +:108BE0000056300BF01F002DEEC6FFE8EECCFFA8BC +:108BF0000C9B1798178917BAF3E8108917A8F1EAA0 +:108C00001088F3E8110916A9183BCF410C9B0E9C64 +:108C1000F01F0023338A300B0C9CF01F00200C9BAC +:108C2000ECCCFFC81798178917BAF3E8108917A872 +:108C3000F1EA1088F3E8110916A9183BCF416E48F4 +:108C40006E590C9B0E9CEF480050EF490054F01FEA +:108C500000140E9BEECCFFF01798178917BAF3E8B3 +:108C6000108917A8F1EA1088F3E8110916A9183B32 +:108C7000CF410E9B0A9C310AF01F000A0E9C304A1D +:108C8000300BF01F0006E3CD80E0208A300BEEC6EB +:108C9000FFE8F01F0002CC4B800091D0800281FCE5 +:108CA000800091DCEBCD40FC1493784AF40300384B +:108CB000103AF9F98005F9F9B005F7B90BFFF9F9A0 +:108CC000BA059948E608161DF20800089958189444 +:108CD0001692F1DAC066C381F8C5FFE8E043003FB1 +:108CE000E088002C3006EAC7FFC0E406000B340A17 +:108CF0000A9CF01F00290A9B1798178917BAF3E8F6 +:108D0000108917A8F1EA1088F3E8110916A90E3B9B +:108D1000CF410A9B089CF01F00212C06E6060108A3 +:108D2000E048003FFE9BFFE3E6C80040E7D8C006EE +:108D3000E018FFC02C081002069A049B0A9CF01F42 +:108D40000016E3CD80FCF00711402E88100C0E3386 +:108D5000C1D30E9AF01F0010E8C5FFE8E8CCFFA8C9 +:108D60000A9B1798178917BAF3E8108917A8F1EA30 +:108D70001088F3E8110916A9183BCF410E130E0213 +:108D80000A9B089CF01F0005CAAB069AF01F000260 +:108D9000E3CD80FC800091DC800281FCEBCD40FCC7 +:108DA000216DE0682301EA186745E06EAB89EA1E91 +:108DB000EFCD30075008501EE068DCFEEA1898BA84 +:108DC000E06E5476EA1E1032504750575028503EFD +:108DD00018931292580CC140149416951A962FF7B6 +:108DE000090A0B0B1A9CF01F00080E33FE9BFFF9BB +:108DF0001A9B049CF01F00052EADE3CD80FC1A9653 +:108E0000CF8B000080028CA480028BB8D431FACDC5 +:108E10000088501C500B14931292109142B0585A73 +:108E2000E08B0056E04B0040E08B0054FAC4FFF8A2 +:108E3000340A300B089CF01F002E400A401B089C8F +:108E40000896F01F002CFAC5FFB808970D88EC189B +:108E500000360CC80A36CFB1340851845128580363 +:108E6000C110FACCFF9CFACBFFB4300AE60E150213 +:108E7000E40A030818A8E20A030916A92FCA1C3A33 +:108E8000CF81E6CCFFFF00990A9AFAC3FFA0069BA8 +:108E9000F01F0019340A300B089CF01F0015400A1F +:108EA000401B089CF01F00130F88EC18005C0EC8D4 +:108EB0000C37CFB1310C3408513C5184519000999A +:108EC0000A9A069B5128302CF01F000B2DEDD8324A +:108ED000FAC6FF881A9A0C99FACBFFFC301CF01FD7 +:108EE0000006310850165008CA2B0000800091D0AF +:108EF000800091DC80028D9CD401202D501A5009F5 +:108F0000301A1AD8FAC9FFF8FAC8FFFCF01F00039C +:108F10002FFD2FEDD802000080028E0C5EFC5EFE5D +:108F20005EFCD703EBCD40C01896F01F00061897E3 +:108F3000C0500C9A300BF01F00040E9CE3CD80C093 +:108F400080009200800091D0D401F01F0002D80A66 +:108F500080014600D401F8CBFFFCF01F0002D80AC4 +:108F6000800145D4780C580C5E0C3008F948004C50 +:108F7000780C580CCFC15EFC580CF9FC10435EFC19 +:108F8000580CF9B80100F9F81A435EFCEBCD40E04B +:108F9000189716961495314CF01F0005F9F71A032F +:108FA000F9F61A04F9F51A02E3CD80E080028F2465 +:108FB000EBCD40E01696149578075807C160580627 +:108FC000C080306A0C9BEECCFFC0F01F000AC0A12D +:108FD0005805C0B0EECCFFFC310A0A9BF01F00051B +:108FE000C0406E075807CEC10E9CE3CD80E0000064 +:108FF0008000917CEBCD4040781820181696991887 +:10900000784B78390C9C5D190C9CF01F0003E3CD64 +:1090100080400000800091E8EBCD4080202D300A98 +:109020001897189B49BCF01F001C300A0E9B49BCC6 +:10903000F01F00196E085808C2201A9CF01F001873 +:109040006E08400A70EC0E993008141C109BF8084A +:109050000C4C490A2FFCF01F00136E2BF6FA010C82 +:10906000580AC1006E08400A712C0E99141C300871 +:1090700048AAF8080C4C109BF01F000A2FEDE3CD16 +:109080008080F6CBFEB80E9CF01F0007CF80CEBBD1 +:10909000800290E4800274008002913080028F543C +:1090A0008002747480028FB0EBCD40C01896580CCB +:1090B000C1407809300899085809C031C0880E9914 +:1090C0007207129CF01F00065807CFA10C9CF01FDE +:1090D00000050C9CF01F0002E3CD80C0800091E8E9 +:1090E00080029018EBCD4080202D18971A9CF01F1D +:1090F000000E6E0A580AC0C1C1087408149B8F087C +:10910000300A0E9CF01F00096E0A580AC06074E90C +:1091100040081039FE9AFFF30E9CF01F00052FED5A +:10912000E3CD808080028F5480028FF480029018FB +:10913000D4013008782AF548010C7829F2FC0104A2 +:10914000F01F0002D8020000800255ACD43120CDBF +:109150001096782814941293E04A00205FBAF0F930 +:109160000160189758295F18169241511448C05051 +:1091700030060C9C2F4DD832354CF01F00621890F1 +:10918000CF80089A049B2ECCF01F005F81D4FAC9CF +:10919000FFE450965083FAC5FFF84DC81AD5303A0F +:1091A000089B049C4DA65086F01F005AE0C8FFFCA7 +:1091B0000A9B5018310A109CF01F0053FACCFFD4C0 +:1091C000F01F0055E0C8FFC0502840BC6E29F2F8DF +:1091D0000150F808000881E86E2AF4FB0150F4F908 +:1091E0000154E06A851FEA1A51EBB739F20A0648C2 +:1091F000301AA599180981FAE1490048306A402CD3 +:10920000069BF01F0041E141004C2FFD6E06580601 +:10921000C2903005C0680C956C0C580CC58018962F +:10922000ECCBFFC0306A069CF01F003CCF516CD8DD +:109230000838C5505805EDF80000EFF80A00EDF8C1 +:109240001000EBF81A006E29F2F8010C0C38F9B88E +:109250000000F3F80A430C9B301A0E9CF01F0030FC +:109260006E066E1859F8E08A00155806C3200C9A4D +:1092700015088F086E28F0F90128ECCBFFC0720C9E +:1092800072F85D180C9B300A0E9CF01F00256E06CC +:109290005806C1F060EA6CE8103AC074C1A872E8E0 +:1092A0001438E089000612966C095809CF9181099B +:1092B0008D006E2C6E18400A401B2FF88F18F8F99D +:1092C00001280096720C72E85D18C54B6E06CCAB97 +:1092D00081068F000E9CF01F0013CECB089A049BD2 +:1092E000ECCCFFECF01F000DCA61310A400BECCC56 +:1092F000FFFCF01F000AC9F1009CF01F000BC3AB7C +:1093000080028F24800091DC8003DB248003DB9CBF +:109310008002B14480028F548000917C80028FF4DF +:1093200080029018800091E8EBCD4080189E78076D +:10933000580BC06116970E9CE3CD80806E075807CE +:10934000CFB06F381638CFB11AD814997C286EDA9E +:10935000F0C8FEC8EECBFFEC1C9CF01F00092FFDEF +:10936000580CF8071700EFF8100EF9F81A0EF80766 +:109370001710F9B80101F9F81A14CDEB8002914CDD +:10938000EBCD40FC1897300CEF4C010C1496129268 +:109390001094EEF50108580BC080169A189B0A9C91 +:1093A000F01F0016EF4C010C58065F13EEFC010C89 +:1093B000580C5F09F3E30008C16158045F18F3E833 +:1093C0000008C0A05803C0800C9A049B0A9CF01FA0 +:1093D000000CEF4C010C580CF9BC00FFF9BC01006B +:1093E000E3CD80FC300A0C9B0A9CF01F00045F094F +:1093F000EF4C010CCE3B000080028FB0800293281E +:109400000000000000000000EBCD4080580CC100BF +:10941000F8F901103008F94801105809C031C08826 +:109420000E997207129CF01F00045807CFA1E3CDDC +:1094300080800000800091E8EBCD40C01897580C68 +:10944000C250F8F801245808C210189B300A491C71 +:10945000F01F0011EEFC0124F01F00103006306AEE +:109460000C9BEF460124EECCFEE4F01F000DEEFC59 +:109470000114F01F000CEF460114EEFC0118580C0B +:10948000C050F01F0008EF460118E3CD80C0000077 +:109490008002996880027400800256EC800091D0AE +:1094A00080028174EBCD40F8205D189716951494D6 +:1094B000F8F601245806C0503FFC2FBDE3CD80F8DC +:1094C000F8FA012817D81AD817C91AD917B81AD80C +:1094D00017A91AD917981AD81789301B1AD9740CDA +:1094E0004C6AF01F0047EEC3FEC81AD60E984C59BE +:1094F000E06A88C7069BEEFC0140F01F0043EF4C7A +:1095000001142F9D580CC6F0EEFC0144580CC0E02D +:109510001AD6069B0E984BB9E06A88C7F01F003A2E +:10952000EF4C01182FFD580CC5E0340CF01F00372C +:109530001896C5B0EEF8012870099909EEF80128CF +:109540003019700A4B2899199928994A99374B185C +:10955000EEF9012C998899599967EEF8012871095B +:1095600099A9EEF80128711999B9F01F002BEF4C59 +:109570000124C3D0314A300B1A9CF01F0028EEF9A9 +:1095800001305804E9F8105FFBF81A03300650293F +:109590001A9A089B50165006EEFC0124F01F00207A +:1095A000306830593FFAEEFC0124149BF01F001D77 +:1095B000306A0A9BEECCFEE4F01F001B301BEEFC71 +:1095C0000124F01F001A301BEEFC0124F01F0018CC +:1095D0000C980E99497A0C9BEEFC0158F01F00166E +:1095E0000C9CC6CB3FECC6AB3FCCC68B0C9CF01F93 +:1095F00000133FDCC63B00008003DBA880023A1A60 +:1096000080029AF08002819C80028F2480029A243A +:10961000800299C48002609C800091D08002581C16 +:1096200080025564800091DC800261D4800261E890 +:109630008002996880027474800091E8EBCD40FC50 +:109640001897F8F801105808C6F0F8F801284CAA45 +:10965000700C301BF01F0049EEF801245808C0A020 +:10966000EEF801284C6A700C301BF01F0044E3CD6B +:1096700080FCEEF801605828CF41EEF80128700C0C +:1096800070295D19587CCED1EEF8016C5818CE9136 +:10969000EEF501105805C410EEC2FEB8EAC3FFFC97 +:1096A000300A069BEEFC0108F01F0036306A189461 +:1096B000069B049CF01F0034C0605804C3706948C6 +:1096C0005808C341EB3800091AD8EB3800081AD8FB +:1096D0000BF81AD80BE8EEF601281AD80BD91AD9CC +:1096E0000BC84AAA1AD8301B6C0CF01F00242FADEF +:1096F0005804C090EEF90128E8CAFFFC069B720CE2 +:1097000072E85D186A080A9CEF480110F01F0020FB +:10971000EEF501105805CC31EEF8012849DA700C4D +:10972000301BF01F0016E3CD80FCEB3800091AD87F +:10973000EB380008EEF601281AD80BF81AD80BE817 +:109740001AD80BD91AD90BC8493A1AD8301B6C0C45 +:10975000F01F000A6A08069BEEFA0134EF48011078 +:109760000E9CF01F000E0A9CF01F00092FADE3CDE8 +:1097700080FC00008003DBEC80023A1A8003DC14DA +:1097800080028FB08000917C8003DCA0800091E893 +:109790008003DCFC8003DC4C800294A4EBCD40F819 +:1097A0001695189414931297F8FB0134580BC05077 +:1097B000F6F801485808C5D15807C4C0E8F60110AA +:1097C0005806C4A03007C0680C976C0C580CC440F5 +:1097D0001896306A0A9BECCCFFFCF01F002CCF518E +:1097E0005807EDF81000EFF81A00EDF80000E9F85E +:1097F0000A44E04303E7E08A003BE8FA0110580A14 +:10980000C4006C3B74381638C065C3B8723816385B +:10981000C054129A74095809CFA18D0995061AD31C +:109820000BD80B8CE8F601281AD80BC91AD90BB83B +:109830001AD80BA91AD90B98495A1AD8301B1ADC16 +:109840006C0CF01F0014089CF01F00132F9DE3CD3B +:1098500080F8E3CD80F8310CF01F00101896C0F0AE +:10986000306A0A9BECCCFFFCF01F000D8D33CC6BF3 +:109870000A9AF8FC0108F01F000BC9FBE3CD80F841 +:109880008D0AE9460110CCCB8000917C8003DD2459 +:1098900080023A1A8002963C80028F24800091DC7C +:1098A00080029328EBCD40F8208D169414971895DC +:1098B000F8F801345808C470F01F0027EEC6000104 +:1098C000C426E068009C1A93EC080248E8080007E8 +:1098D000EAC4FEB8C0682016EEC7009C5806C3351F +:1098E000EAF901346EAA7258103ACF61724BEECC8D +:1098F000FFFAF01F001ACF01306A089B0E9CF01F80 +:109900000017CEA0EEFB0080580BCE601A9AEECC6A +:10991000FFA8F01F0013CE01189A0E9BEAFC010865 +:10992000F01F0010C13079485808CD604048EDB8AC +:109930000000CD213019E06A03E80E9B0A9CF01F5D +:10994000000ACCAB2F8DE3CD80F84048F3D8C0019E +:10995000CF3B0000800294088000917C8002BD68AB +:1099600080028FB08002979CEBCD4060F9380121D6 +:10997000F8F501281AD8F93901201AD9F938011F48 +:109980001AD8F939011E1AD9F938011D1AD8F9392E +:10999000011C489A1AD9302B18966A0CF01F000740 +:1099A0000C9CF01F00070C9CF01F00062FADE3CDB0 +:1099B000806000008003DD6C80023A1A80029438D7 +:1099C0008002963CEBCD40E0201D1897F8F801147A +:1099D0005808C0613FF60C9C2FFDE3CD80E0F8F8FD +:1099E0000128300C5C791ADC5C5B700C70D6FAC80C +:1099F000FFFC5D162FFD1895580CCED01899400825 +:109A0000E06A88C7EECBFEE4EEFC0114F01F000410 +:109A100018960A9CF01F0003CDFB000080028154C1 +:109A2000800091E8EBCD40E0208D14971896580BFC +:109A3000C2614A781AD8EEF60128EF3801211AD807 +:109A4000EF3901201AD9EF38011F1AD8EF39011E5A +:109A50001AD9EF38011D1AD8EF39011C49DA1AD981 +:109A6000302B6C0CF01F001C0E9CF01F001C0E9C79 +:109A7000F01F001B2F9D2F8DE3CD80E01A95320A39 +:109A80001A9BF01F0018C1211A9B320AEEF801340C +:109A90008F8A1AD8EEC9FEE4EEC8FEC8EEFC0108B3 +:109AA000F01F001149182FFDCC6B0C9C310A1A9B3A +:109AB000F01F000CC090EEF8012848DA700C302B33 +:109AC000F01F0005CB7B1A9B310ACE1B8003AD2C07 +:109AD0008003DE1880023A1A800294388002963C95 +:109AE000800257CC8002914C8003DDB48003DDCC32 +:109AF000EBCD40F81897169514931294F8F80124BA +:109B00005808C090F8C6FEE4306A48BB0C9CF01FB1 +:109B1000000BC031E3CD80F80C9C306A0A9BF01F2B +:109B20000007CF910899069A0A9BEEFC0124F01FCA +:109B30000004CF1B800294008000917C800261FCB5 +:109B4000EBCD40F8FACD01001293109418961697B9 +:109B5000149530081A99F2080B082FF8E048010014 +:109B6000CFB1300E1A9C1C9BEC0B0709198AFC0A1A +:109B700000081208FAC9FF00FDD8C0081C09F33814 +:109B8000FF0018C8F36AFF002FFBFAC8FF000E3B66 +:109B9000F9BB0200103CCE915805C4C0300E1C9792 +:109BA0001C9CF8C8FFFFFACAFF00F9D8C008180AC1 +:109BB000F53BFF00F60E0008FAC9FF00FDD8C0080B +:109BC0001C09F338FF00F568FF00F36BFF002FF767 +:109BD0000E35FE9BFFE85804C2A006963007F8C871 +:109BE000FFFFFACAFF00F9D8C008180AF539FF00CC +:109BF000F20E0008FACBFF00FDD8C0081C0BF738A6 +:109C0000FF00F568FF00F769FF00F538FF00100955 +:109C1000F3D9C008FACAFF00120A0D89F538FF000F +:109C200012580CC82FF70E34FE9BFFDB2C0DE3CD32 +:109C300080F80A9E0A9CCD0BD401129E16981899A2 +:109C40001C9B149C300AF01F0002D80280029B402B +:109C500000000000D431FACD0180340AFAC4FEC0FD +:109C6000510C089CF01F04BF688A516A689950A97A +:109C700068A8509868B65086684568216830416683 +:109C800050E5685250D2686A50CA687950B968087D +:109C90005158E3E8200868D50C580A586812F00AB1 +:109CA000150150F2F5E813FA517A68E868F640E5D4 +:109CB00040A9105940980C580A5802580059F00A07 +:109CC00015010459F5E813FAF20215014178E5E9A6 +:109CD00013F2519A518240C54089105968C80458FE +:109CE00040E20A58045840D6F00A15010C59F5E82C +:109CF00013FA005951AA419840B640D5416240CA72 +:109D0000F2071501EFE913F768D9105968E80E5802 +:109D1000045814580C590A59F0051501F20615019A +:109D2000EBE813F5EDE913F640B851C551B641A281 +:109D300068F940AA416504591459105941780C58E2 +:109D400040960C580A58F2021501F00A1501E5E98F +:109D500013F2F5E813FA41C851EA51D2408640A502 +:109D6000409A418910594198045868C204581458BF +:109D70000C590A59F0051501F2061501EBE813F527 +:109D8000EDE913F6408851F6520541E268DA68C5FC +:109D9000EFE220091459105941A80C5868E60C58F4 +:109DA0000A58F2021501F00A1501E5E913F2F5E887 +:109DB00013FA52124208522A41B968F668D568EA85 +:109DC000105941C804584172045814580C590A5982 +:109DD000F0051501F2061501EBE813F5EDE913F6B0 +:109DE0005245523668F84222418A417541D9045998 +:109DF0001459105941E80C5841960C580A58F2026F +:109E00001501F00A1501E5E913F2F5E813FA4248E5 +:109E1000418641A5525241F9105942080E59045841 +:109E20000C5941920A580458526AF20A1501F5E990 +:109E300013FAF0091501F3E813F9426841B641C578 +:109E400041A2527A52894219105942280C59145889 +:109E50000E590A580458F20A1501F5E913FAF009E7 +:109E60001501529AF3E813F9428852A941D641B537 +:109E700041E2423910594248145841CA0458145812 +:109E80000C5941FA0A59F0051501F2061501EBE8E3 +:109E900013F5EDE913F641D852C542A241E552B699 +:109EA00042590459145942CA105942680C58420682 +:109EB0000C580A5841F6F20E1501F0021501FDE9A1 +:109EC00013FEE5E813F2421942781458420A42257B +:109ED000125842890C581C59F00615010A59EDE830 +:109EE00013F61459F20A1501F5E913FA0C951493B7 +:109EF000423952E652FA4216424A52D24298045825 +:109F0000125842A90C580A5942261459F00A150150 +:109F1000F5E813FA0C59530A1496F2081501425A3F +:109F2000F1E913F84239109C531842B806581458F6 +:109F3000426A125842C90C591459424A1459F00A3B +:109F40001501F5E813FAF2081501F1E913F8109B71 +:109F500053384278FDEC20091059425810595019D5 +:109F60004289E5EA200812584269125840195008FF +:109F70004018A178F1E913F8400953484008A17846 +:109F8000F1E913F853584298EBEB20091059427845 +:109F9000105942A850194349E7E92009105942884D +:109FA000105940185009532A4019A179F3E813F9C0 +:109FB000400853694009A179F3E813F953794358EC +:109FC000EDE8200942B810594298105942C850197A +:109FD0004369F9E92009105942A81059401850095D +:109FE0004019A179F3E813F9400853894009A17990 +:109FF000F3E813F943785399F5E8200942B81C595E +:10A00000105950194389F7E92009129842C9045898 +:10A010001258401950084018A178F1E913F8400986 +:10A0200053A84008A178F1E913F8434953B843987D +:10A0300010590A591C59501943A94358125840192C +:10A04000065804584012A172E5E913F253C2F00217 +:10A050001501E5E813F243B84369105943780C59E8 +:10A060000A5943C50A581858065853D2F202150126 +:10A07000E5E913F2F0091501F3E813F943D853F9B0 +:10A08000438910594398145904580C5916581858B4 +:10A0900053E243F54342F20C1501F0061501F9E9CC +:10A0A00013FCEDE813F643A943B80A5918580459AC +:10A0B0001459435A145816585406436A4402F20677 +:10A0C0001501F0051501EDE913F6EBE813F543482A +:10A0D00054255416435543C904591459105943D8AB +:10A0E000F20215010C58E5E913F2437654320C588C +:10A0F0000A58F00A1501F5E813FA544A890A442966 +:10A1000043864365437A43E8125843F90C5804598F +:10A110000A584392F0061501EDE813F654568916D5 +:10A1200004591459F2051501EBE913F55465892515 +:10A13000444243AA4389F9E2200814581258F00215 +:10A140001501E5E813F25472439544090C5943B6DE +:10A1500089320C590A59F20A1501F5E913FA548AA1 +:10A16000894A43C6446943A5441812580C580A58F2 +:10A17000F0061501EDE813F6549643BA4429045944 +:10A1800043D2895604591459F2051501EBE913F528 +:10A1900054A58965448243EA43C944380458145895 +:10A1A0001258F0021501E5E813F254B243D54449C0 +:10A1B0000C5943F689720C5944080A59446A045AE6 +:10A1C000105A0C5AF2061501EDE913F654C6447BF9 +:10A1D00089860C5BF4061501EDEA13F654E6441586 +:10A1E00044A243E9445889A60A5B045818581258F7 +:10A1F000F0051501EBE813F554D58995185BF602C7 +:10A200001501E5EB13F254F289B2444A4489449BA8 +:10A210000A590C5B4405442644A804581458F3E634 +:10A22000200A0C580A5A5028E0657999EA155A8292 +:10A23000504A410644325116441AEE050009F7E22D +:10A2400020081458E062EBA1EA126ED95038507918 +:10A25000040E0C99506EE068BCDCEA188F1B0C9A57 +:10A26000100C2F8A505C512A1306511941087403AF +:10A27000720C2F485138410A2F0A514A700A41483E +:10A28000700941580A08F0090009EC081505F1E6C3 +:10A2900013B8F2080008F5E3200918691459F00909 +:10A2A000000740F80A08F00A0009F80B151EF7EC41 +:10A2B000122BF7E320080C680658F2080008EE0994 +:10A2C0001505F3E713B9EC0A151EF009000EF5E6C3 +:10A2D000122AFC091505F7EA2008F3EE13B9EFE896 +:10A2E000000816580A01EE0C151E0601F9E7122C9B +:10A2F0001001F9EA200812011C68E209150514583A +:10A30000F3E113B90A001600100040E812000A0831 +:10A31000F00A0009FC0B151EF7EE122BF7EC2008D3 +:10A3200002681858F2080008E0091505F3E013B9AF +:10A33000F009000640D80A08F00C0009E20A151ED0 +:10A34000F5E1122AF5EB200800681658F20800081B +:10A35000EC091505F3E613B9F009000E40C80A0828 +:10A36000F00B0009E00C151EF9E0122CF9EA2008A8 +:10A370000C681458F2080008FC091505F3EE13B92F +:10A38000F009000340B80A08F00A0009EC0B151E9A +:10A39000F7E6122BF7EC20081C681858F2080008A2 +:10A3A000E6091505F3E313B9F009000641680A0848 +:10A3B000F00C0009FC0A151EF5EE122AF5EB200838 +:10A3C00006681658F2080008EC091505F3E613B9FB +:10A3D000F009000E40A90A091609E60C151EF9E35A +:10A3E000122CF9EA20080C681458F2080008FC093D +:10A3F0001505F3EE13B9F009000340980A08F00AB6 +:10A400000009EC0B151EF7E6122BF7EC20081C6870 +:10A410001858F2080008E6091505F3E313B9F00926 +:10A42000000640890A091809FC0A151EF5EE122AD1 +:10A43000F5EB200806681658F2080008EC09150527 +:10A44000F3E613B9F009000E68C80A08F00B00091A +:10A45000E60C151EF9E3122CF9EA20080C681458D2 +:10A46000F2080008FC091505F3EE13B9F009000124 +:10A4700068D90A091409EC0B151EF7E6122BF7EC44 +:10A4800020081C681858F2080006E2091505F3E1D7 +:10A4900013B968E8EC0900030A08F00C0009FC0A8B +:10A4A000151EF5EE122AF5EB200802681658F20880 +:10A4B0000008E6091505F3E313B9F009000E68F981 +:10A4C0000A091609E20C151EF9E1122CF9EA200816 +:10A4D00006681458F208000BFC091505F3EE13B9D1 +:10A4E0004178F60900000A08F00A0009E606151E80 +:10A4F000EDE31226EDEC20081C681858F208000A5B +:10A50000E0091505F3E013B9F409000341890A09CC +:10A510001809FC0A151EF5EE122AF5E62008006857 +:10A520000C58F208000CE6091505F3E313B941983D +:10A53000F80900010A08F0060009E00B151EF7E013 +:10A54000122BF7EA200806681458F2080008E209FE +:10A550001505F3E113B94077F009000E1407FC0963 +:10A560001505E60A151EF3EE13B9F5E3122AF5EB0D +:10A57000200802681658EE080008F009000341A8F8 +:10A580000408F00B0009E20C151EF9E1122CF9EA9F +:10A5900020081C58F2080008E6091505F3E313B972 +:10A5A000F009000541B904091409FC0B151EF7EE6A +:10A5B000122BF7EC20080658F2080008EA091505E6 +:10A5C000F3E513B9F009000641C80408F00C0009CE +:10A5D000E60A151EF5E3122AF5EB20080A58F208E0 +:10A5E0000008EC091505F3E613B9F009000E41D98E +:10A5F00004091609EA0C151EF9E5122CF9EA2008DF +:10A600000C58F2080008FC091505F3EE13B9F0091F +:10A61000000541E80408F00A0009EC0B151EF7E6F6 +:10A62000122BF7EC20081C58F2080008EA0915055F +:10A63000F3E513B9F009000641F904091809FC0A09 +:10A64000151EF5EE122AF5EB20080A58F20800084C +:10A65000EC091505F3E613B9F009000E42080408E9 +:10A66000F00B0009EA0C151EF9E5122CF9EA200896 +:10A670000C58F2080008FC091505F3EE13B9F009AF +:10A680000005421904091409EC0B151EF7E6122BFC +:10A69000F7EC20081C58F2080008EA091505F3E554 +:10A6A00013B9F009000642280408F00C0009FC0A5E +:10A6B000151EF5EE122AF5EB20080A58F2080008DC +:10A6C000EC091505F3E613B9F009000E4239040947 +:10A6D0001609EA0C151EF9E5122CF9EA20080C58A7 +:10A6E000F2080008FC091505F3EE13B9F00900059E +:10A6F00042480408F00A0009EC0B151EF7E6122B7D +:10A70000F7EC20081C58F2080008EA091505F3E5E3 +:10A7100013B9F0090006425904091809FC0A151E6C +:10A72000F5EE122AF5EB20080A58F2080008EC09A9 +:10A730001505F3E613B9F009000E42680408F00BA2 +:10A740000009EA0C151EF9E5122CF9EA20080C584C +:10A75000F2080008FC091505F3EE13B9F00900032F +:10A76000427904091409EC0B151EF7E6122BF7ECDD +:10A7700020081C58F2080008E6091505F3E313B990 +:10A78000F0090005428904091809FC0A151EF5EEB6 +:10A79000122AF5EB20080658F2080008EA09150508 +:10A7A000F3E513B9F009000E429904091609E60C05 +:10A7B000151EF9E3122CF9EA20080A58F208000BDA +:10A7C000FC091505F3EE13B9F609000042A90409C6 +:10A7D0001409EA06151EEDE51226EDEC20081C58BA +:10A7E000F208000AE0091505F3E013B9F4090003C3 +:10A7F00042B9FC0A151E0409F5EE122A1809F5E6FD +:10A80000200800584065F208000C1405E6091505FB +:10A81000E00B151EF3E313B9F7E0122BF809000162 +:10A82000F7EA200AE2081505065AF1E113B842C911 +:10A8300004090C091409E60A151EF208000EF5E3D6 +:10A84000122AF5EB20080258EA080008E066BCDC92 +:10A85000EA168F1BFC091505F3EE13B9F009000089 +:10A8600042D80C08E20C151EF00B0002F9E1122C84 +:10A87000FDEC0008FDEC100914691049E00815050D +:10A88000F1E013B8E4090009F208000242E80C08FC +:10A89000FC0B151EF00A0005F7EE122BE1EB000889 +:10A8A000E1EB100918691049E4081505EA090009E7 +:10A8B000F1E213B8E00A151EF2080005F5E0122ACD +:10A8C00042F9E5EA00080C09F20C0003E5EA100978 +:10A8D00016691049EA081505F1E513B8E6090009FB +:10A8E000F208000343080C08E40C151EF00B0006E8 +:10A8F000F9E2122CEBEC0008EBEC1009146910499A +:10A90000E6081505EC090009F1E313B8EA0B151E7A +:10A91000F2080006F7E5122B4319E065BCDCEA15E6 +:10A920008F1BE7EB00080A09F20A000AE7EB10099F +:10A9300018691049EC081505F1E613B8F409000987 +:10A94000F208000243280A08E60A151EF00C000C63 +:10A95000F5E3122AEDEA0008EDEA1009166910493C +:10A96000E4081505F8090009F1E213B8EC0C151E0E +:10A97000F208000EF9E6122C4339E5EC00080A094A +:10A98000F20B000BE5EC100914691049FC081505E1 +:10A99000120BF1EE13B84349F6080005E40B151E3F +:10A9A000F7E2122BE062BCDCEA128F1BFDEB000821 +:10A9B0000409F20A000AFDEB100918691049EA08B7 +:10A9C0001505F1E513B8F4090009F208000643582B +:10A9D0000408FC0A151EF00C000CF5EE122AEBEA36 +:10A9E0000008EBEA100916691049EC081505F8098A +:10A9F0000009F1E613B8EA0C151EF208000EF9E59D +:10AA0000122C4369EDEC00080409F20B000BEDEC8D +:10AA1000100914691049FC081505F1EE13B8F60980 +:10AA20000009F208000543780408EC0B151EF00A33 +:10AA3000000AF7E6122BFDEB0008FDEB1009186980 +:10AA40001049EA081505F4090009F1E513B8FC0AF4 +:10AA5000151EF2080006F5EE122A4389EBEA0008FB +:10AA60000409F20C000CEBEA100916691049EC0815 +:10AA70001505F1E613B8F8090009F208000E43982D +:10AA80000408EA0C151EF00B000BF9E5122CEDEC96 +:10AA90000008EDEC100914691049FC081505F609C9 +:10AAA0000009F1EE13B8EC0B151EF2080005F7E6ED +:10AAB000122B43A9FDEB00080409F20A000AFDEB82 +:10AAC000100918691049EA081505F1E513B8F409E9 +:10AAD0000009F208000643B80408FC0A151EF00C31 +:10AAE000000CF5EE122AEBEA0008EBEA10091669F1 +:10AAF0001049EC081505F8090009F1E613B8EA0C4D +:10AB0000151EF208000EF9E5122C43C9EDEC000801 +:10AB10000409F20B000BEDEC100914691049FC0854 +:10AB20001505F1EE13B8F6090009F208000343D841 +:10AB30000408EC0B151EF00A000AF7E6122BFDEBD9 +:10AB40000008FDEB100918691049F4090009E6082E +:10AB50001505F1E313B8F208000543E90409FC0AFE +:10AB6000151EF20C000CF5EE122AE7EA0008E7EADF +:10AB7000100916691049F8090009EA081505F1E5F8 +:10AB800013B8F208000E43F90409E60C151EF20B87 +:10AB9000000BF9E3122CEBEC0008EBEC1009146944 +:10ABA00010494057FC0815051407F1EE13B8F609D3 +:10ABB000000AEA0B151EF7E5122BFDEB0009F4085D +:10ABC0000003FDEB1008E60A15051868F5E313BA53 +:10ABD0001248EE080009F20A00054409E06AC1D6ED +:10ABE000EA1ACA6214091809FC06151EEDEE1226AF +:10ABF000EDEB20080658F2080008EA091505F3E510 +:10AC000013B9F009000A4419E068C1D6EA18CA620B +:10AC100010091609E60C151EF9E3122CF9E62008B6 +:10AC20000A58F2080008F4091505F3EA13B9EA0B0B +:10AC3000151EF0090003F7E5122B4429E065C1D683 +:10AC4000EA15CA620A090C09F7EC20081458F20840 +:10AC50000008E6091505F3E313B9F009000EFC0935 +:10AC60001505F3EE13B9F406151EEDEA1226443A63 +:10AC7000EDEB20080A0A0658180A100A120A44497D +:10AC80000A091609E60C151EF9E3122CF9E620084C +:10AC90001C58F2080008F4091505F3EA13B9FC057D +:10ACA000151EF0090003EBEE1225E6091505EBEC85 +:10ACB0002008F3E313B91458E062C1D6EA12CA625D +:10ACC000445B040B0C0BF406151E100BEDEA122668 +:10ACD000120BEDE52008F60915050658F3EB13B93C +:10ACE000446A040A180A100A4478F409000E040899 +:10ACF000F0050009E60A151EF5E3122AF5E620081C +:10AD00001658F2080008FC091505F3EE13B9F0090E +:10AD10000005448904090C09F60C151EF9EB122CE8 +:10AD2000F9EA20081C58F2080008EA091505F3E5BD +:10AD300013B9F009000344980408F00A0009FC0B59 +:10AD4000151EF7EE122BF7EC20080A58F20800083F +:10AD5000E6091505F3E313B9F009000E44A9040947 +:10AD60001809EA06151EEDE51226EDEB2008065837 +:10AD7000F2080008FC091505F3EE13B9F009000507 +:10AD8000EA091505F3E513B944BAE60C151E040AE1 +:10AD9000F9E3122C160AF9E620081C58100A120AC8 +:10ADA00044C904090C09FC0B151EF7EE122BF7EC35 +:10ADB00020080A58F2080002F4091505F3EA13B94D +:10ADC00044D8E409000EE069C1D6EA19CA62120843 +:10ADD000EA06151EF00C0009EDE51226EDEB200841 +:10ADE0001458F2080008FC091505F3EE13B9F00930 +:10ADF000000CE068C1D6EA18CA62F405151EF8090D +:10AE00001505EBEA1225F3EC13B944EA100AEBE658 +:10AE10002008160A1C58100AFC02151EF40900012D +:10AE2000E5EE1222E06AC1D6EA1ACA62E5E5200818 +:10AE3000E20915051858F3E113B944FB140B404A15 +:10AE40000C0BA17A100B44B8F609000E4049F5E945 +:10AE500013FA14584459F1E9200B4438E069C1D67B +:10AE6000EA19CA6289CAF7E820074108F806151EE0 +:10AE7000120AEDEC1226700CEDE22008120C0258BA +:10AE8000FC091505F3EE13B90A0AE203151E100AB0 +:10AE9000E7E11223120AE7E62008E069C1D6EA19C1 +:10AEA000CA621C5840354030A170E1E513F0E0095A +:10AEB000000BF4091505040BF3EA13B9100B402835 +:10AEC0004021120BE065C1D6EA15CA62A171E3E820 +:10AED00013F1E2050008F0060009FC02151EE5EE7C +:10AEE0001222E5E320081458F2080008F6091505B7 +:10AEF000F3EB13B9F406151EF009000EEDEA122665 +:10AF0000EE051501410AEBE713F5EDE220080A0C06 +:10AF10001658060CFC091505100CF3EE13B9120CAB +:10AF2000950C411972081C089308F609151E412A50 +:10AF3000F3EB1229740812089508413870090C09BE +:10AF4000910989D089E189F541466C080408089C7B +:10AF50008D08340A300BF01F00042A0DD83200008F +:10AF6000800091DC800091D0EBCD40F878581494AB +:10AF7000A37AF40800099959123AF9F98006F9F907 +:10AF8000B006F7B90BFFF9F9BA06FDD8C066E808B4 +:10AF9000161DF2080008996818951693E80E000926 +:10AFA000E049003FE08B000F3006FCCCFFE4E606F2 +:10AFB000000BEA0C000CE806010AF01F0014E3CDB8 +:10AFC00080F8FC061140FCCCFFE40C9AEA0C000C63 +:10AFD000F01F000EEACBFFE40A9CF01F000DECC846 +:10AFE000FFC11034E088000FE60600070E9B0A9CA4 +:10AFF0002C07F01F00072C06ECC8FFC11034FE9B85 +:10B00000FFF7300ECD3B0000800091DC80029C54A5 +:10B01000D421202D16961895300B1A94583BF9B868 +:10B020000B14F9B80818F60911FFEC08030AF3D954 +:10B03000C002A379F4090A4AE80B0B0A2FFB588BCC +:10B04000CEE1301A49EBC038301A49EB0C9CF01FA6 +:10B05000001E6C58E21801F8E04801C0CF61308A48 +:10B060001A9B0C9CF01F00183007EE081602EE0920 +:10B0700011FFEC08032AF3D9C002A379F4090A4AA4 +:10B08000EA070B0A2FF75947CF11300B340AECCCE3 +:10B09000FFE4F01F000E0E9A300B0C9CF01F000B0B +:10B0A000ECCCFFEC308A300BF01F00081A9C308A81 +:10B0B000300BF01F00062FEDD82200008003DE5871 +:10B0C00080029C508002AF68800091D0EBCD40FCA4 +:10B0D000217DE0682301EA186745E06EAB89EA1E2E +:10B0E000EFCD5008E068DCFEEA1898BA3007501E31 +:10B0F0005028E06E5476EA1E1032E068E1F0EA185B +:10B10000C3D250675057503E504818931292580C73 +:10B11000C140149416951A962FF7090A0B0B1A9C26 +:10B12000F01F00070E33FE9BFFF91A9B049CF01FD3 +:10B1300000052E9DE3CD80FC1A96CF8B8002AF6870 +:10B140008002B010D431FACD008C501C500B1493F7 +:10B150001292109142C0585AE08B0056E04B0040CA +:10B16000E08B0054FAC4FFF8340A300B089CF01F3F +:10B17000002E400A401B089C0896F01F002CFAC5C0 +:10B18000FFB808970D88EC1800360CC80A36CFB106 +:10B190003408518451285803C110FACCFF9CFACBD3 +:10B1A000FFB4300AE60E1502E40A030818A8E20A02 +:10B1B000030916A92FCA1C3ACF81E6CCFFFF0099DC +:10B1C0000A9AFAC3FFA0069BF01F0019340A300B3D +:10B1D000089CF01F0015400A401B089CF01F00133C +:10B1E0000F88EC18005C0EC80C37CFB1314C340816 +:10B1F000513C5184519000990A9A069B5128302C59 +:10B20000F01F000B2DDDD832FAC6FF881A9A0C9970 +:10B21000FACBFFFC301CF01F0006314850165008D6 +:10B22000CA2B0000800091D0800091DC8002B0CC5D +:10B23000D401202D501A5009301A1AD8FAC9FFF833 +:10B24000FAC8FFFCF01F00032FFD2FEDD80200000D +:10B250008002B144D43121AD5009502B501A1892BC +:10B2600042395809C6D0504850593008FAC7FFAC87 +:10B270005038FAC3FFD4FAC0FFC0FAC4FFE8049CF8 +:10B28000F01F003140382FF850381AD34038518819 +:10B2900040285168FAC8FF98519830484046517884 +:10B2A000B986FB380013FAC9FFA0FB68006B189B36 +:10B2B0000E98FB66006840454046302A1891B185DB +:10B2C000049CFB650069A986FB66006AF01F001FED +:10B2D000314A069B009CF01F001E2FFD40085818A5 +:10B2E000E08A001C301608983149069A029B049C9B +:10B2F000F01F0018314A089B069CF01F0015009AA9 +:10B30000089B17381589125814C80E3ACFB12FF67A +:10B3100040080C38FE99FFE940560C985946F9B69A +:10B320000B140C180C9A5058009B404CF01F00084E +:10B3300040585808C05040480C085048CA1B2E6D51 +:10B34000D8320000800091B88002B144800091DCC6 +:10B350008002B230D43120EDFACEFFA4109530082F +:10B3600018927C14149716911296FB680036FB68AD +:10B3700000377C00149CF01F00275804C3003018CD +:10B38000FAC9FFC9508850685097FAC8FFCA505C84 +:10B3900050B6507550A950C85934E0880023300782 +:10B3A000FAC3FFECFAC6FFDCC088FB680036E8078A +:10B3B00001055935E088001CE00700080C991AD8EF +:10B3C0002EC70698304A029B049CF01F00132FFDE5 +:10B3D000FB3800362FF80E34FE9BFFE92F2DD832B4 +:10B3E00008953007FAC3FFECFAC6FFDC0C99069803 +:10B3F0001A96049C1AD6029B304AF01F00070A9A3C +:10B400000C9BE007000CF01F00052FFD2F2DD832FC +:10B41000800091B88002B144800091DC00000000FF +:10B4200000000000EBCD4080129E1097584CC26087 +:10B43000E08A0013588CC140590CC101590B5F18A8 +:10B4400058FA5FA91248C0A130689D083039300C05 +:10B450008F09E3CD8080582CC1E0E3CFC080E04B62 +:10B4600000205F1859FA5FA91248CF8130689D0803 +:10B470003029300C8F09E3CD808058DB5F1858CA23 +:10B480005FA91248CEB130099D093018129C8F086F +:10B49000E3CD8080585B5F18584A5FA91248CF40BF +:10B4A000E3CFC080580C5E0CF8F8010C5808F9B8CE +:10B4B0000100F9F81A435EFC580CF9FB1A4C5EFCCB +:10B4C000580CF9FA1A51F9FB1A505EFC580CF9FBAA +:10B4D0001A415EFC580CC080586BE08800035EFD8A +:10B4E0004928F00B032F5EFEF94A016C5EFDF94A14 +:10B4F00001685EFDF94A01645EFDF94A01605EFD86 +:10B50000580ACF20F94A01585EFDF4C80001E0480E +:10B510000063FE9BFFEAF94A01545EFD580ACE40E3 +:10B52000F94A01505EFD00008003DE5CEBCD40E097 +:10B53000189716951496580CC130F8FC0180F01F2E +:10B54000001158055F0858065F091248C0B030085E +:10B55000EF480188EF480180109CE3CD80E0E3CF05 +:10B56000C0E00C9CF01F0008EF4C0180CF900A9BBC +:10B570000C9AF01F0006300CEF460188E3CD80E006 +:10B58000800091E880009200800091DCEBCD40E0EB +:10B59000189716951496580CC130F8FC017CF01FD2 +:10B5A000001158055F0858065F091248C0B03008FE +:10B5B000EF480184EF48017C109CE3CD80E0E3CFAD +:10B5C000C0E00C9CF01F0008EF4C017CCF900A9B60 +:10B5D0000C9AF01F0006300CEF460184E3CD80E0AA +:10B5E000800091E880009200800091DCEBCD40E08B +:10B5F000189716951496580CC130F8FC0174F01F7A +:10B60000001158055F0858065F091248C0B030089D +:10B61000EF480178EF480174109CE3CD80E0E3CF60 +:10B62000C0E00C9CF01F0008EF4C0174CF900A9B07 +:10B630000C9AF01F0006300CEF460178E3CD80E055 +:10B64000800091E880009200800091DCEBCD40FE0C +:10B65000189716961493580CC031E3CFC0FE7409A6 +:10B66000F8F801605828C5E0F8F1016CF8F50168B8 +:10B67000F8F201645979FE98FFF23DD8304AB68855 +:10B68000ECCCFFFEFEFB0238F01F008E30083019B4 +:10B69000ACF8ACE9ECC4FFF85905E08000A158858E +:10B6A000E08000AA5845E08100BC0A9AFEFB02181F +:10B6B000089CF01F00843018A8C8E8C9FFFB3008B8 +:10B6C000B288E8C5FFFA5902E08000905882E08114 +:10B6D000009F304A4FDB0A9CF01F007A3018AAC83E +:10B6E000EAC9FFFB3008B2882FA55811E080008A14 +:10B6F0005821E08100A5304A4F5B0A9CF01F007181 +:10B70000EAC9FFFCEC0811FE1208AC98F206010C25 +:10B71000CA56870CEEF501745805E08000C1E3CFEE +:10B7200080FEF8F8010CF8F2016C5808F9B801280D +:10B73000F9B80016F8FA0168F8F401641039C8E3A2 +:10B7400033083009B688B6B93018B6A8F6C5FFFC7C +:10B75000590AC6F0588AE0800082584AE081009772 +:10B760004DCB0A9CF01F00573018AAC8EAC9FFFB4E +:10B770003008B2882FA55904C6B05884E081007EF5 +:10B78000304A4D5B0A9CF01F004F3018AAC8EAC926 +:10B79000FFFB3008B2882FA55812C661304A4CFB17 +:10B7A0000A9CF01F0048EAC8FFFC300AB08AB09A31 +:10B7B000EAC9FFFAEEF8010C5808CA503018B288EE +:10B7C000EAC9FFF9EACCFFF8B28A310AEEFB010CB4 +:10B7D0002FCBF01F003CEAC9FFE8C95B304A4C0B95 +:10B7E000089CF01F0038C68B304A4BDB0A9CF01FC8 +:10B7F0000035C75B304A4B5B089CF01F0032C5CB5D +:10B80000304A4B8B0A9CF01F002FC7BB5812FE9189 +:10B81000FF26304A4B4B0A9CF01F002AC60B5825C6 +:10B82000FE91FF1D304A4B1B089CF01F0026C44BA5 +:10B83000304A4AFB0A9CF01F0023C97B5901FE9144 +:10B84000FF0E304A4ABB0A9CF01F001EC5AB304AAF +:10B850004A7B0A9CF01F001BC99B304A49EB0A9C9B +:10B86000F01F0018C82B5822FE91FEF9304A4A2BCF +:10B870000A9CF01F0014C98B5814FE91FEF0304A48 +:10B8800049EB0A9CF01F000FC81B582AFE91FEE7E7 +:10B89000304A49BB0A9CF01F000BC67BF01F001901 +:10B8A000EF4C0174FE90FEDB0C9B660AF01F000556 +:10B8B00066080A9CEF480178E3CD80FE8003DE989D +:10B8C000800091DC8003DEA08003DE8C8003DE7CC0 +:10B8D0008003DE888003DE808003E1EC8003E1E406 +:10B8E0008003DE9C8003DEA48003DE948003DEB44C +:10B8F0008003DEB08003E1E88003DEA88003DE84FD +:10B9000080009200D401580CC060F8CCFEC8306AA8 +:10B91000F01F0002D8020000800091DCD4011898CA +:10B92000580CC040918AF01F0002D802800091DCC0 +:10B93000EBCD40F8208D189416971493F6C6FFF0BF +:10B94000F8F501685885C2E0E8F801645818C1604C +:10B950006EC8E8F901286E0B1AD81AD66E2849CAA3 +:10B960001AD81AD3720C72666E186E395D162FCD06 +:10B97000580CC1552F8DE3CF80F86EC9E8FA012825 +:10B980006E0B1AD91AD66E291AD91AD3740C74668A +:10B990006E3948FA5D162FCD580CCED42F8DE3CFDB +:10B9A000C0F80C9B310A1A9CF01F000A0A9AEECBD1 +:10B9B000FFD8FACCFFF0F01F00070A9AEECBFFE0A9 +:10B9C000FACCFFE81A96F01F0003CBFB80039C38EB +:10B9D000800091DCD401580CC070F94B0134F8FCA4 +:10B9E0000108F01F0002D80280028F64D401580CB5 +:10B9F000C110F8F8010C5808C08070DAF0CBFFECE9 +:10BA0000998AF01F0005D802320A109B998AF01F0C +:10BA10000003D802800091DC800091D0EBCD408003 +:10BA20001897F01F000AEEF801287029700C5D19B4 +:10BA3000585CEFF80057F9B90001F1D9E008EFF8C8 +:10BA40000A57E3CD8080000080029438EBCD40C0DF +:10BA500018971696580CC190306AF8CCFEB8F01FB3 +:10BA6000000F308A300BEECCFF10F01F000D3008B5 +:10BA700030190C9BEF4800F8EF4900EC306AEECC2F +:10BA8000FEE4F01F0008C030E3CD80C00E9CF01F24 +:10BA90000006E3CD80C00000800091DC800091D0E2 +:10BAA0008000917C80029438EBCD40C016971496AC +:10BAB000F6F8010C1838C0D0768A78D8103AC03021 +:10BAC000E3CD80C0F8CBFFEC0E9CF01F000ECF91B1 +:10BAD0003008EF48010C5806CF41320A0C9B0E9CEF +:10BAE000F01F0009EEF90128301B720C72485D1836 +:10BAF000EEF801280C9A700C70390C9B5D19CE1B66 +:10BB00008000917C800091D0D431189716941493C2 +:10BB1000300B324A069CEE040005F01F0052EEC6C0 +:10BB2000FFFF0C35E0880034E8C800013DD2EE0884 +:10BB30000004C0D8E4091800C2B01499F2C8FFFE8E +:10BB40001007EEC6FFFF0C35E08800220F89E409DC +:10BB50001800C4B10837C1B00D8A580AC180F4C8B2 +:10BB6000FFFEEE0800081035C4733308F009180012 +:10BB7000CE2187270D882FE887380D89F2C8FFFE70 +:10BB80001007EEC6FFFF0C35FE9BFFE2D83A580ABD +:10BB9000CFE03058F00A1800E08B003FEEC8FFFB02 +:10BBA0001035E08B002B14993061E2091800FE98E3 +:10BBB000FFC7EEC0FFFE304A4ABB009CF01F002BBF +:10BBC000C3900D89E2091800FE98FFBA009C304A24 +:10BBD0004A7BF01F0026C071EEC9FFFA87790D88F5 +:10BBE000204887880D89CABB0D8AF4C8FFFEEE087D +:10BBF00000081035CBB2DC3A14993138F00A18003D +:10BC0000FE98FFD4304A49BBEECCFFFEF01F001770 +:10BC1000C1900D89CCAB304A497BEECCFFFEF01FC2 +:10BC20000013C0610FE93018F0091800C1000D8A37 +:10BC3000CB6BEEC9FFFA87590D88204887680D89BC +:10BC4000C7EBEEC8FFFA87480D89C79B0FF8F808C5 +:10BC50001800CEE187070D882FE887180D89C6FBED +:10BC6000800091D08003DE788000917C8003DEAC80 +:10BC70008003DE908003DE98EBCD4080304A189739 +:10BC8000496BF01F0017C031E3CF9080304A495B09 +:10BC90000E9CF01F0013C041302CE3CD8080304A51 +:10BCA000491B0E9CF01F000EC041308CE3CD8080FC +:10BCB000304A48EB0E9CF01F000AC041310CE3CD26 +:10BCC00080800E9C304A48ABF01F0005F9BC000490 +:10BCD000F9BC0100E3CD80808003DEA88000917C68 +:10BCE0008003DE848003DE808003DEB48003DE8890 +:10BCF000EBCD4080304A1897496BF01F0017C031D8 +:10BD0000E3CF9080304A495B0E9CF01F0013C04186 +:10BD1000302CE3CD8080304A491B0E9CF01F000E72 +:10BD2000C041308CE3CD8080304A48EB0E9CF01F40 +:10BD3000000AC041310CE3CD80800E9C304A48ABF4 +:10BD4000F01F0005F9BC0004F9BC0100E3CD8080C0 +:10BD50008003DEA48000917C8003DE948003DE8C6F +:10BD60008003E1E48003DEA0EBCD40FC189416963E +:10BD70001497580BC160198B3308F00B1800C1D011 +:10BD80003008301595789548956895589505308810 +:10BD90009535952895185876E08B009BE3CFC0FC2D +:10BDA000301830898F7B8F4B8F6B8F5B9538950860 +:10BDB00095299519E3CFC0FC300531099545956566 +:10BDC000955595759529951930289508301A8F3A0B +:10BDD0005836FE98FFE51988F6081800CE01199923 +:10BDE000ECC800021039CDB119B919A8F1E91088D1 +:10BDF000F4081900CD4120465836E08A01112FC4BD +:10BE0000089CF01F008A8F2C20465816E08A010BF0 +:10BE10008F15E8CCFFFC19991988F1E91082CBF055 +:10BE2000ECC30002E40815021033CB95F8C4FFFE02 +:10BE300030056E16089CF01F007D0C4C8F1C2FC423 +:10BE400020432FF50A32FE99FFF65813E08A00E5E9 +:10BE5000300A8F3A09990988F1E91082CA00202333 +:10BE6000E40815021033C9B5E8C6FFFE14956E3418 +:10BE7000304A4EFB0C9CF01F006FE08100C430186C +:10BE800008488F382FC620432FF50A32FE99FFF15C +:10BE90005813E08A00940D990D88F1E910888F48B5 +:10BEA000E6CB0002581BE08A008AECCCFFFE199812 +:10BEB0001989F3E810898F59F6C80002A56912386C +:10BEC000C7F5F8C8FFFE300C8F68E3CD80FC1989F8 +:10BED0003DD8F0091800FE91FF631999ECC80002E3 +:10BEE0001039FE91FF5D304A4D3B2FECF01F0051A1 +:10BEF0001893FE91FF5509F909E8F1E91088EA085D +:10BF00001900FE91FF4DECCA0008583AE08A005E25 +:10BF1000E8CCFFF8F01F00498F2CECCA000C0A3A5D +:10BF2000E08A00578F13E8CCFFF419991988F1E9DA +:10BF30001082FE90FF35F4C30002E40815021033AE +:10BF4000FE95FF2EF8C4FFFE30056E16089CF01F0C +:10BF5000003B0C4C8F1C2FC420432FF50A32FE9956 +:10BF6000FFF65813E08A0042300A8F3A099909888F +:10BF7000F1E91082FE90FF142023E408150210332B +:10BF8000FE95FF0EE8C6FFFE14956E340C9C304AF9 +:10BF90004ABBF01F0028C211301808488F382FC63E +:10BFA00020432FF50A32FE99FFF25813E08A00145D +:10BFB0000D880D99F1E910888F48E3CF80FC300897 +:10BFC0008F58109CE3CD80FC580AFE99FEE9581A60 +:10BFD000FE90FEE6E3CF80FC304A49AB0C9CF01F9C +:10BFE0000015C0613028CDAB5813CF51CD8A0C9CC1 +:10BFF000304A495BF01F000FF9B80010F9B8010092 +:10C00000CCDB0C9C304A491BF01F000AF9B8000237 +:10C01000F9B80100C36B5813CD11CC1A5806FE991C +:10C02000FEBF5816CCB1CBBA8002BC788003E1ECDD +:10C030008000917C8003DE988002BCF08003DE9C4F +:10C040008003DE7C8003DEB08003E1E8D401580C7D +:10C05000C021DC0AF8F801745808CFC0169AF8FB22 +:10C060000178109CF01F0004F9BC01FEF9BC00002F +:10C07000D80200008002BD68EBCD40801897580CB4 +:10C08000C1D0F8FC0108F01F000F300A0E9B48ECED +:10C09000F01F000EEEFC0174F01F000DEEFC017CA1 +:10C0A000F01F000BEEFC0180F01F0009EEFC0128E0 +:10C0B000F01F00070E9CF01F0006E3CD80800000FB +:10C0C000800290A88002C0D080027400800091E8B5 +:10C0D000D401F01F0002D8028002963CEBCD40C094 +:10C0E0001896E06C018CF01F00131897C19030185F +:10C0F000E069A8C0F94800ECF9490150346833C937 +:10C10000F9480154F9460128F9490158189A189B31 +:10C11000489CF01F000AEF4C01081898C0400E9C84 +:10C12000E3CD80C00E9C1097F01F0005CF9B000050 +:10C1300080028F248002BAA880028F8C800091E850 +:10C14000EBCD4060149E1DD81896158CECF5012897 +:10C150001AD81DC91AD91DB81AD81DA91AD91D98DF +:10C1600048CA1AD81ADC1ADB303B6A0CF01F000AE6 +:10C17000ECF90128311B720C72585D18ECF901289A +:10C18000300A720C7238149B5D182F9DE3CD8060CD +:10C190008003DF4880023A1AEBCD40C0205D109743 +:10C1A000581BC130582BC0402FBDE3CD80C0310B90 +:10C1B0001A98F01F00091A961A9B0E9C310AF01F5C +:10C1C00000072FBDE3CD80C0310BF01F00052FBD50 +:10C1D000E3CD80C08002B230800091DC80028EF816 +:10C1E000D431201DFACEFFD81894500B149012961B +:10C1F00010917C237C077C12306A49AB129CF01FA3 +:10C20000001AC1D05803C0800698009B400C0499C6 +:10C210000E9AF01F00160C9BE8F501280498F5D142 +:10C22000C0100E996A0C6AA65D16E8FC0104F01FA6 +:10C2300000100E9CF01F000F2FFDD832E8C5FEB88D +:10C24000306A488B0A9CF01F0008CDD1E8F801281D +:10C250000A9B700C70995D19EA061740CD4B0000DF +:10C260008002B41C8000917C8002C19880025582BB +:10C27000800091E8EBCD40E0189716961495F8F8F9 +:10C2800001685848E0800081E08A00495888C780EA +:10C290005908C4F04C19EEF801645848C480584855 +:10C2A000E089004A5818C6605828C6604BB81AD9A9 +:10C2B0001AD8EEFA01280DD81AD80DC91AD90DB816 +:10C2C0001AD80DA91AD90D981AD80D89302B1AD958 +:10C2D000740C4B3AF01F0033EEF801282F8D700BD1 +:10C2E000707C300AF01F0030EEF90128720C72C821 +:10C2F0005D18EEF90128307B720C72185D18580534 +:10C30000C201EEFC010C580CC07079485808F9B80D +:10C310000100F9F81A14E3CD80E05818C33058280A +:10C32000CBA14A29EEF801645848CBA14A08CC0BAE +:10C330004A09CB2B5888C2205908CB9149D8CB8BBE +:10C34000EEF801280C9B700C71263019303A5D16FE +:10C35000301BEEFC0104F01F0018EEF8016C5828A9 +:10C36000C15030080E99495A109B301CF01F001420 +:10C37000CC9B4948C9DB48D8C9BB4938C99B492926 +:10C38000C8BB4909C89B48A9C87B301BEEFC010407 +:10C39000F01F000ECE7B00008003C6288003DF74F0 +:10C3A00080023A1A800274008003DF088003DF10E5 +:10C3B00080039A74800261D48002C0D080027474B9 +:10C3C0008003C8E480039A6C800261A4D431FACD62 +:10C3D00000DC1897169314951296E0490062E08BE2 +:10C3E000000630060C9C2C9DD832129CF01F034492 +:10C3F0001892E08000D60C9A0A9BF01F034205A910 +:10C4000005B8F1E910880599F5D8B0103038F00971 +:10C410001800C0603006049CF01F033BCE4BECC8F4 +:10C420000004EBDAC01030090A385F3AE045005EDC +:10C430005F88F5E8100CF20C1800CED13FE8E4C19B +:10C44000FFFC038AF00A18005F1B3028F00A18006E +:10C450005F19F7E90004F8041800CDD1EEFC0104DF +:10C46000F01F032A039903A8F1E91088EDD8B01052 +:10C47000FDD6C003506E1C9930182019F009190020 +:10C48000E08800043FF6CC8BEEF8016459085F0A9F +:10C490003028F00E19005F19126AE80A1800C080EF +:10C4A000EEF801685908CEF0EDB60003CEC0EEF804 +:10C4B00000F85808E08100ABE1D6C0100098E218FF +:10C4C0002080CE10009AE21A0800502ACDC12FC554 +:10C4D00000995055E21901005039C641405AE339DC +:10C4E000005DE338005E263AF1E91088F7D8B01015 +:10C4F000E9DBC010083AE0830598EEF9016058299D +:10C50000E0800550EDB00003E0810333E21000301D +:10C51000CBA140395809E08001CAEEF90128305B0F +:10C52000720C72185D18039903A8F1E91088E339B9 +:10C53000005DEBD8B010E33B005EFACAFF50F7E9AC +:10C54000108BE2CCFFA1F01F02F243185808C04044 +:10C55000EDB5000CC231EEC3FEB8EEF60134EEF8D4 +:10C56000017C5808E08004E742C95809E08004C80B +:10C57000EEFB017C580BC79042DAEEF80184103ACA +:10C58000C70042FE42EC1ADE14981ADC069A0E9C92 +:10C59000FEFB0B80F01F02E02FED3016C3DB3FF6F1 +:10C5A000C22BE2C6FFB3FAC4FF84310A0C9B089C7D +:10C5B000F01F02D440685C785048EEF800A8580894 +:10C5C000C301EEF800A45808FE90FF5E310A300B5C +:10C5D0000C9CF01F02D2049A404BEECCFFDC0C986E +:10C5E0004059F01F02CF0C9B089C310AF01F02CD6E +:10C5F000FE91FF4A308AE2CBFFFBEECCFF10F01F2A +:10C6000002C13018EF4800F8C6AB308AEECBFF10FD +:10C61000E2CCFFFBF01F02C3FE99FF503FF6CFCAEA +:10C62000402B310A0C9CF01F02BD049A404B0C9821 +:10C630004059EEC5FF9C0A9CF01F02B9310A0C9BC1 +:10C64000089CF01F02B8CBE13018EF4C00A80A9B01 +:10C65000EF4800A4340AEECCFFDCF01F02AACCBBEA +:10C66000129CF01F02B0C10142EC580CC160EEFBFD +:10C670000180580BC12042FEEEF80188103EC090A8 +:10C6800042C942DAC81B42FE42C942EC42DAC7CB79 +:10C690001C9AF01F02A4CF81EEF801605818E080C8 +:10C6A00000E6320AE2CBFFF3EECCFF34F01F029D2E +:10C6B000FE91FF7503B903C8F1E91088F3D8B010F3 +:10C6C000EEF801645888E08000CC5908E08000CA88 +:10C6D000EEF80128FAC9FF2C1AD970D6700C35F97A +:10C6E000FAC8FF24300A303B5D162FFD1896580C0F +:10C6F000FE90FF55EEF80160E06900FE5828F20850 +:10C700001710435AB48840680A99E2190200F1E907 +:10C7100010094358E8190108F20B1608B09B435A58 +:10C72000B4A9EEF801605828E0810093300843591D +:10C73000B2B8435AB4C8435C308AE2CBFFFB2FBC8B +:10C74000F01F02704358300AF16A005D4359F36AE2 +:10C75000005E4358406A2B381AD84379E068888EC7 +:10C760001AD9EECBFFDC1AD606990E9CF01F026E8A +:10C770003018EF4800EC5C752FDDEDB50006C0F118 +:10C78000FEFA09A8F4E80000FAE9007CEEF801647A +:10C790005888E08003F65908E08003D90A90E21037 +:10C7A0000200C0E0EEFA01283019740C069B7528CF +:10C7B000129A5D18301BEEFC0104F01F025DEEF8CA +:10C7C0000128306B700C70195D1943165806FE90E5 +:10C7D000FEE64328FAC4FF84F0C50002334A300B5A +:10C7E000089CF01F024EE0450020FE9BFED80D88FD +:10C7F000F1D8C00252280D89F3D9C041C050EEF8DB +:10C80000016458185F095209ECCBFFFE0A9AFACC72 +:10C81000FF74F01F023C0A9A52B50898FAC9FF7CCF +:10C820000A9BEEFC0168F01F0243FE91FEB8E2CACB +:10C83000FFC3089B0E9CF01F0240FE91FEB0009AC1 +:10C84000069B0E9C3016F01F023DFE9FFDE6435CEA +:10C85000302AE2CBFFFD2FDCF01F022AC6DB3208B4 +:10C86000F0091900FE91FE9BC34B42EB580BFE9062 +:10C87000FF1A58065F1AEEF9018058095F0814681C +:10C88000FE90FF116D68EDB80001FE91FF0C42F8BB +:10C89000069A1AD80E9C1ADBFEFB08A442F842E95D +:10C8A000F01F021D2FEDFE9FFE7AEEF90128720C9B +:10C8B00072885D18FE90FE73EEF80128305B700CF4 +:10C8C00070195D19403BFAC6FF50324A0C9CF01FAC +:10C8D0000213EEF801605828C0C1E338005DE33B65 +:10C8E000005E0C9AF7E8108BE2CCFFA1F01F020863 +:10C8F00043065806C0E0EEFC010C580CE08003D162 +:10C90000F8CBFFFC310A0C9CF01F0206E08003C04C +:10C910003005EEF8016C5818E08000D45805C0606E +:10C92000EEFB016C581BE080029BEEF800EC58080F +:10C93000E08102B5EEC8FF545008EECAFEB8EEC959 +:10C94000FF9CE2C8FFF3508AEEC6FEC850A950987B +:10C95000306A6E85408B0C9CF01F01F2E08500FB75 +:10C96000306A408BFAC0FFD0009CF01F01E60C9BA0 +:10C97000306AFACCFFCAF01F01E3320A409B400C38 +:10C98000F01F01E8E08500D0320A409BFACCFFC4DA +:10C99000F01F01DC320A400BFACCFFA4F01F01D9D2 +:10C9A000340E1ADE40BE00991ADE34C80A9BFEFA25 +:10C9B00007920E9CF01F01E4EEC5FF6CFAC3FF7CEA +:10C9C0000A9B308A069CF01F01CF0A9CEEC6FF64CA +:10C9D000308A0C9BF01F01CB069B0C9C308AF01F09 +:10C9E00001C93018EF4800A82FEDEEF50178EEF000 +:10C9F00001745800FE90FDD3EEFA0128FAC8FF2812 +:10CA0000E9D5B0101AD8E8C9FFA1740C74D6FAC8D9 +:10CA1000FF285C79300A303B5D162FFD1893580CC7 +:10CA2000FE90FDBDEEF80160E06900FE5828F208B6 +:10CA30001710436AB48843683019B0994066436858 +:10CA40005C760C9AA3BAB0AAEEF901605829C631F7 +:10CA500030084369B2B8436AB4C8436CE2CBFFFB09 +:10CA6000308A2FBCF01F01A74368F3D4C108F169D5 +:10CA7000005D43680A9AF165005E009B436C2A1CC6 +:10CA8000F01F01A0400B436C320A2F3CF01F019DA8 +:10CA9000408940AB43682B381AD8436C0C9A1ADC97 +:10CAA000E068888E1AD30E9CF01F019F40CBEECC1D +:10CAB000FF34320A3016F01F01932FDDFE9FFCADCC +:10CAC000EEFC0104580CFE90FF2B320A0E9BF01F67 +:10CAD000019FC361320A8F8AEEF8013406991AD891 +:10CAE0000E9BEEC8FEC8EEFC0108F01F0199580627 +:10CAF0005F1AEEF9010C2FFD58095F081468FE90CB +:10CB0000FF0F0C9A069BEEFC0108F01F0192FE91AC +:10CB1000FF0EC05B436C302AE2CBFFFD2FDCF01F21 +:10CB20000179C9CB400B320AFACCFFC4F01F017562 +:10CB3000320A409BFACCFFA4F01F0172C32B310ACA +:10CB40000E9BEEFC0104F01F0181E08101B4310A6B +:10CB5000CC3B0C9BFAC0FFD0306A009CF01F0169EF +:10CB6000306A408BFACCFFCAF01F0166C07B009B85 +:10CB7000E21B2000FE91FD13403A580AFE90FD0F83 +:10CB8000334AFAC0FFD0009CF01F0164EEF901287F +:10CB90007228720C5D1850BC039903A8F1E9108843 +:10CBA000E339005DE7D8B010E338005EF1E91088A2 +:10CBB000EEF90160F7D8B0105829E080011303B9ED +:10CBC00003C8F1E910895189EBDBC0100A34E08316 +:10CBD00000CB3028406EF00E1900E08001D80A9694 +:10CBE000129B0098FAC9FFC80C9AEEFC0168F01F6E +:10CBF0000151E08100B9F5D3C010F1DAC082501ABA +:10CC000050F830194068F2081900E08000C7302859 +:10CC1000406EF00E1900E08000A4401AF1DAC0C1A5 +:10CC2000C050EEF8016458185F0850D8EEF801289B +:10CC3000306B700C70195D19009BE2CAFFC30E9C2B +:10CC4000F01F013D1895FE91FCAAEEF80128FAC9E3 +:10CC5000FF2C0A9A1AD9303B700C70D635F9FAC8F5 +:10CC6000FF245D162FFD1894580CFE90FC98EEF8EA +:10CC70000160E06900FE5828F20817104066435A28 +:10CC80005C76B488E21300304358E8130300E7E60B +:10CC9000100CF80B1608B09B4359B2ACEEF80160CB +:10CCA0005828E08102234358B0B54359B2C5435CCC +:10CCB000E2CBFFFB308A2FBCF01F01124358300A31 +:10CCC000F16A005D4359F36A005E43582B381AD865 +:10CCD00043790C9A1AD9EEC6FEB81AD40C99E068BA +:10CCE000888EEECBFFDC0E9CF01F010F2FDD40B9CC +:10CCF0005879E08101F1EEF801685848E08001E6DA +:10CD0000E08901DC5818E080014B5828E08001469A +:10CD1000FEF804441AD8EEFA0128EF38014D1AD86B +:10CD2000EF39014C1AD9EF38014B1AD8EF39014AC3 +:10CD30001AD9EF3801491AD8EF390148302B1AD9DE +:10CD4000740CFEFA0416F01F0106EEF80128307B81 +:10CD5000700C701930165D192F9DFE9FFB5EF1D58A +:10CD6000C003C0A0EEF80128306B700C70193016AB +:10CD70005D19FE9FFB52E0460020FE9BFFF5EC0B89 +:10CD80001603FAC9FFC0E2CAFFA1EECCFFCCF01F28 +:10CD900000F5FE90FF44CE7B310AE2CBFFD3FAC40C +:10CDA000FF84089CF01F00D7310AEECBFFCCFACCF1 +:10CDB000FF74F01F00D4E0450020FE9BFFD5FAC6AB +:10CDC000FFC00A9AE2CBFFA10C9CF01F00CE0A988C +:10CDD0000C99089CE06A0100320BF01F00E3C1EBE4 +:10CDE0005C7BFACAFF50E2CCFFA1F01F00C94318D8 +:10CDF0005808CB90F3D3C0105019EDB9000CCB31CB +:10CE000043282028FAC9FFC8109A5188149B00981B +:10CE1000EEFC0168F01F00C7CA61431B1788F1D8F8 +:10CE2000C00250F81789F3D9C041C050EEF8016430 +:10CE300058185F0950D94328F0CA0002E04A002080 +:10CE4000FE9BFF922FEBFACCFFC0F01F00AEEEF975 +:10CE50000128306B720C72185D18CEFAEEF80128BA +:10CE600030091AD9129A700C70D6FAC8FF285D16CC +:10CE70002FFD1893580CFE90FB92EEF5012818999F +:10CE8000EECBFEB84358E06A888E6A0C6AA65D163F +:10CE9000069CF01F009DFE9FFB82EECEFF54320BDE +:10CEA000500E1C9CF01F00B1C1F1EF4C00ECFE9F36 +:10CEB000FD46EEF80128FEFA02B6700C303BF01F7A +:10CEC00000A8EEF80128FEFA02AA700C303BF01F11 +:10CED00000A4EEF8010C5808FE90FB613008EF4802 +:10CEE000010CFE9FFD1FEEF80128FEFA028A700C6D +:10CEF000303B3016F01F009AFE9FFA8F42EC580C20 +:10CF0000FE91FBB7EEF8017C5808C061EEF8018095 +:10CF10005808FE90FBC342F830091AD8069A1AD96D +:10CF20000E9C42F8FEFB0254F01F007B2FEDFE9F8B +:10CF3000FB36EEF801805808FE91FB18EEF9012847 +:10CF4000720C72B85D18FE9FFB111099303BEEF821 +:10CF500001605828C180E2CCFFC31AD9EEC8FFBCDB +:10CF6000EEFA012830691AD830181AD930091ADCBB +:10CF7000740C7466069A5D162FCDFE9FFC11302B43 +:10CF80003209CE6BFACCFF84CE9B5875FE98FEEC2E +:10CF9000EAC60008FE9FFE264F98CBDA4F98CBBA20 +:10CFA000EDB0000CFE91FAB0EEF800A45808FE9027 +:10CFB000FA6B3018406EF00E1900C490406AF20A05 +:10CFC0001900FE91FAA1F1D4C003FE91FA5DF6C8F2 +:10CFD00000085C88109550785C750A9CF01F00482A +:10CFE0001896FE90FA51E2C4FFA11899089AEA0B2C +:10CFF0001603EECCFFCCF01F005BC2310A9A0C9BEB +:10D00000089CF01F00400C9CF01F003F4078EA098C +:10D0100016085C58E369005DE368005E5C59F1E95D +:10D020001084FE9FFA711ADA1AD4EEF801284D6ABC +:10D03000700C302B3FF6F01F004A2FEDFE9FF9EDEC +:10D040000C9C3FF6F01F0030FE9FF9E7FAC6FF8404 +:10D05000310AE2CBFFD30C9CF01F002A310AEECB41 +:10D06000FFCCFACCFF74F01F00270898E2C9FFA19B +:10D070000C9CE06A0100320BF01F003BE339005DBD +:10D08000E338005EF1E91084FE9FFA3E0E9CF01F2B +:10D09000003FEEFC0104F01F003EFE9FFC480C9A8E +:10D0A000069BEEFC0108F01F002BEF4C010CFE91DB +:10D0B000FC293015FE9FFC2F5888C0A05908FE910E +:10D0C000FE294B48FE9FFE284B38FE9FFE254B381D +:10D0D000FE9FFE22401A0C9BE21A02000E9C3016A4 +:10D0E000F01F0016FE9FF999435C302AE2CBFFFD4A +:10D0F0002FDCF01F0004FE9FFDDC0000800092008A +:10D10000800091DC800091E88002575C8002BB08BF +:10D110008003E0488002C140800091D08002C19825 +:10D120008000917C8002C1E08003E1DC800261D458 +:10D130008002B4248002B9308002C2748003E0848B +:10D140008003E1788002B354800257CC8002914C76 +:10D1500080028FB08003C6288003E19080023A1AD3 +:10D160008002D8A080029B4080028F488003E0F0BC +:10D170008003E1308003E14C8003E0048003DF089A +:10D180008003C8E48003DFC88002B9EC80025770D6 +:10D1900080039A748003DF1080039A6CD431204D91 +:10D1A0001894F8F80128E8F9016416955909F9B3BB +:10D1B0000002F9B301011492700C1A9070991A9B35 +:10D1C0005D19C635E8F80128FAC9FFF8300A1AD9FE +:10D1D000303B700C70D635F9FAC8FFF05D162FFDA4 +:10D1E0001891580CC520E8F80160E06900FE402A5B +:10D1F0005828F2081710B4880697E8F800A4ABB7CF +:10D200005808C050E0680900E7E810075805E068D2 +:10D210000400EFD8E1375802F9B80108EFD8E13738 +:10D220004028F3D7C108B09940283006B0A740295C +:10D23000B2B64028308AB0C6E8C5FF04402C0A9B2D +:10D240002FBCF01F00130A9C308BF01F00124028E7 +:10D25000F166005D4029F366005E0E99E219010057 +:10D26000FBF81002F9BA014DF1DAE1091AD9404888 +:10D2700000991AD8069A1AD1089CE068888EE8CBE3 +:10D28000FFDCF01F00052FDD2FCDD832800091DCB0 +:10D29000800239EA8002C1E0EBCD40804879720813 +:10D2A000201893081897C031F01F00050E9CF01F3E +:10D2B0000005E3CD8080000000007AB48002D2F83F +:10D2C000800091E8EBCD40C048976E065806C041FB +:10D2D000F01F0008C0916E082FF8304C8F08F01F27 +:10D2E0000006E3CD80C00C9CE3CD80C000007AB482 +:10D2F0008002D30480028F24D401F01F0002D802E0 +:10D300008002D996D401F01F0002D8028002D9947D +:10D31000D4211789179A17B8F1E9118817A9F1EAEA +:10D320001108F1E91088990817CA17D8B168F1EA0D +:10D33000118817EA17F91258F1EA10889918F73A84 +:10D340000008F739000BF7380009B168F1EA1188D5 +:10D35000F73A000A1258F1EA10889928189EF73A0D +:10D36000000CF738000DF739000FF8C5FFE4B1687D +:10D37000F73C000EF1EA11883007125849B4F1EC7D +:10D38000108C49B69D3CC038149C2F05E80707084F +:10D390002F0EFCF9FFF0F3E82189EC0C0F88E2185E +:10D3A000FF001059EC0C0F98E61800FF1059EC0C18 +:10D3B0000FB8F1D8C1081059FCF8FFF4EC0C0FAB12 +:10D3C000A96BE61BFF0016599D091059FCF8FFF8E0 +:10D3D0009D1910599D29FCF8FFFCF3E8200A8B0ADF +:10D3E0002FF758A7CD21D8228003E2F08003E6FC76 +:10D3F000EBCD40FE1892F01F002F0493E4CBFF60AA +:10D40000E4C4FFFCE4C5FF5CE4C6FFF8E4C7FF58D2 +:10D41000E4CEFFF4E4CCFF54E4C1FFB06609760823 +:10D4200087089709680A6A0889088B0A6E086C09D8 +:10D430008D088F097C0A78089D08990A2F03210B13 +:10D440002F0421052F0621072F0E210C023BCE7140 +:10D45000E4C4FFF030134985498608972F046E0A0B +:10D46000EC0A0F98EA080F9EEC0A0F88EA080F9C56 +:10D47000EC0A0FB8EA080F9BEC0A0FA8F809150888 +:10D48000FC0A1510F3EC1389F5EE130A1659EA0895 +:10D490000F9BF6081518F1EB1288105914590EA9B4 +:10D4A0000E34CDE12FF358A3CD91E3CD80FE0000E3 +:10D4B0008002D3108003E2FC8003E6FCD431209D7F +:10D4C000F736000E505A178A780917B8F1EA118812 +:10D4D000179A1258F1EA210817AEF1EE208E506E1D +:10D4E000781817CA17F9105917D8F3EA2189F3E801 +:10D4F000210917EEF3EE208E507E7828F7390008C8 +:10D50000F73A000B105AF7380009F5E9218AF73984 +:10D51000000AF5E8210AF5E920827839F73A000C8B +:10D52000F738000FFEF7034412581894F1EA2188E7 +:10D53000F739000DF8CAFF60F1E92108500AF1E659 +:10D5400020800E91E0081618406AEE080326F3DAF0 +:10D55000C008F1D2C208EE090329EE080328504999 +:10D560005038407AEE0A0F9950296878684B105667 +:10D570004068EE000FACEE080FBA4079165AEE097B +:10D580000F8BF6081508F1EB1388F8091518105AD7 +:10D59000F3EC1289EE020F9C125AF8081510F1EC08 +:10D5A0001308F5E82008685E68654079EE090FBB4E +:10D5B00050884068EE020F8C1C5BEE080FAEF80836 +:10D5C0001508F1EC1388EE000F9A105BFC09151892 +:10D5D000F4081510F3EE1289F1EA1308125B407992 +:10D5E000F7E82003EE000F8BF6081508F1EB13881F +:10D5F000EE020FBCEE090FAE0A5CFC091518105CB8 +:10D60000F3EE12894068125CEE080F9B404A4048D6 +:10D61000F6091510A968F3EB1309F1EA1388F9E983 +:10D620002000105640394038B968F1E912882E04BC +:10D63000105640294028B169400AF3E81309EDE982 +:10D6400020021434C770E4081618408AF3DAC008C0 +:10D65000E208032EE2090326F1D0C208E2030F9983 +:10D66000E20803255019E2020FACE2030F8B6809B0 +:10D67000F6081508F1EB1388E20A0FBA125AF809F6 +:10D680001518105AF3EC1289E2000F9C125AF80890 +:10D690001510F1EC1308F5E82008E2030FBB506801 +:10D6A00040886819E2000F8AE2080FAC125BF408A8 +:10D6B0001508F8091518F1EA1388F3EC1289E2004D +:10D6C0000FBAE2020F9C105BF8081510125BF1EC28 +:10D6D0001308F7E8200850786829E2030FAC125AC3 +:10D6E000F8091518F3EC1289E2020F8BF6081508F9 +:10D6F000F1EB1388105A125A4089E2090F9B6839DE +:10D70000F6081510F1EB1308125EF5E82002EC099B +:10D710001508EA081518F3E61389F1E51288125E78 +:10D720004019105EB1694018F3E81309FDE92000C3 +:10D73000C0AB4089F1D3C1084CDBFDD9C008F60865 +:10D740000706E40A1618EBD0C208F60A0709F60520 +:10D750000708F60E070CF9E9118CF3D3C008F9E8B5 +:10D76000110C4088B988F608070AF6090708F3D2B1 +:10D77000C208F1EA1188F609070AF3D0C108680E59 +:10D78000F1EA1108F609070AF1EA10881C58F009B5 +:10D790001618405AB4B8B4894059F00A1610A9882E +:10D7A000B29AB2A8E6091618F609070AF3D0C0081B +:10D7B000F6090708F1EA1188408AF3DAC208F60987 +:10D7C000070AF3D2C108F1EA1108F609070A40591D +:10D7D000681EF1EA10881C58B2F8F0091618405A71 +:10D7E000B4C94059F00A1610A988B2DAB2E8E009C3 +:10D7F0001618F609070AF3D2C008F6090708F3D38A +:10D80000C208F1EA1188F609070AF1EA1108408A0C +:10D81000F3DAC108F609070A4059682EF1EA1088C0 +:10D820001C58F368000BF0091618405AF5690008F7 +:10D830004059F00A1610A988F36A0009F368000A33 +:10D840006839405AF9E6108C125CF8081618F80985 +:10D850001610F56C000FF568000CA98CF569000D29 +:10D86000F56C000E2F7DD8328003E2FC8003E1F0DE +:10D87000EBCD40C01897590BC030E3CF80C0E06CAF +:10D8800000B0F01F00061896CF900E9BF01F00040A +:10D890000C9CE3CD80C00000800092008002D3F099 +:10D8A000D431209D129714961895500B308A0C9BFA +:10D8B000FAC2FFE4049CF01F0034ECCBFFF8400AEE +:10D8C0000E9CA37AF01F00300A9C310BF01F002F32 +:10D8D0001893C57040082018EE08003840095028F9 +:10D8E0005C39400A5C59F40A00285019E9D8C0088C +:10D8F0003050FAC7FFF4FAC1FFEC40095809E08A3A +:10D90000002940251296308A049B0E9CF01F001EB1 +:10D91000FB390013E806000812580A9BFB68001345 +:10D92000308A029CF01F00180E9A0E9B069CF01F76 +:10D930000018308A0E9B049CF01F001320160A9CCE +:10D94000308A2085029BF01F00105806FE99FFDDEB +:10D95000401A2010E80A0008E9D8C0085BF0CCE1C2 +:10D96000069CF01F000C049C3A691988F208180004 +:10D97000C0812FFCFAC8FFDC103CCF812F7DD83A44 +:10D980002F7DDC3A800091DC8002D8708002D4BC0C +:10D99000800091E85EFD5EFCD4311A97202D109E28 +:10D9A000129514965809C4911638E0880057F0086B +:10D9B0001200C0D0F608094BF0091120FC08094EEE +:10D9C000F4090A49F4080946F3EB100BFC0516109C +:10D9D000F9DEC010F6050D0AEC0816101499F1EBEB +:10D9E0001108B93A103AE088000C20191C08103EC2 +:10D9F000E08B0007103AF7B90B01F1DEEB08F00AF3 +:10DA0000010BEDD6C010F6050D0AEDEB11061498CA +:10DA1000F40C024C0C3CE088000A20181C060C3E5A +:10DA2000E08B00050C3CF7B80B01F1E9110B300C51 +:10DA3000169A189B2FEDD8321639E08B0051F20C54 +:10DA40001200C53114385F8916355F381049F8095E +:10DA50001800C450301BC4585808C0513019F2087F +:10DA60000D08109EFC081200E08100911C1BFC05B3 +:10DA70001610F3DEC010301CF6050D0AEC08161067 +:10DA8000F4090243F1EB1108149B1033E088000CF9 +:10DA9000201B1C08103EE08B00071033F7BB0B0166 +:10DAA000F1DEEB08F0030103EDD6C010E6050D0230 +:10DAB000EDE311060498E40902490C39E088000AF4 +:10DAC00020181C060C3EE08B00050C39F7B80B0142 +:10DAD000F1EB110B169A189B2FEDD832300B169CD8 +:10DAE000169A189B2FEDD832F20C0945F80E11202A +:10DAF000F00C0943F40E0A46F00E0A48F60E0A4EE0 +:10DB00000A48F0011610FC010D04EEE5FFF8F60CD2 +:10DB10000949EBD8C010EDE910090896F20E16106D +:10DB2000EEF4FFF8EC05024BFDE4110E1C3BE0881F +:10DB300000072016100E1C38E088006D161EF3D961 +:10DB4000C010FC010D00F3E11109009BE005024E3D +:10DB5000123EE0880007201B10091238E0880055AB +:10DB6000F7E6110B1C19F60306420639C0935F094C +:10DB7000F40C094C043C5F38F3E80008C020201B7B +:10DB8000300C169A189B2FEDD832F6080949FC087C +:10DB9000094EF0011120FC051610F4010A42F601AD +:10DBA0000A411242E2050D00F3DEC010E406161031 +:10DBB0000093EDE11106E009024C0C3CE0880007FF +:10DBC00020131C060C3EE088002CEC0C0101F7D25F +:10DBD000C010E2050D00F7E1110B009CE0090241C5 +:10DBE0001631E088000C201C1C0B163EE08B000751 +:10DBF0001631F7BC0B01F7DEEB0BF4080946021BEC +:10DC0000F9E3110CC3AB123EF3D8EB09F7BB0B01E0 +:10DC1000CA8B1C3BF7B60B01FDD8EB0EC90B0C3CB5 +:10DC2000F7B30B01EDDEEB06CD1BD703D40130AA11 +:10DC3000300BF01F0002D8028002F0ECD4014848FB +:10DC4000169A189B700CF01F0003D802000005986C +:10DC50008002DC54D421F40B024BF01F00151897FE +:10DC6000C230F8FAFFFCE01AFFFC204AE04A002428 +:10DC7000E08B00181898593AE088000F300910A975 +:10DC800010A959BAE088000910A910A9E04A002497 +:10DC9000C03110A910A9300910A991199109C048E3 +:10DCA000300BF01F00040E9CD82200008002E2BC62 +:10DCB0008002E8BCD421300EF6C80001F60614013B +:10DCC000F808002818991897C07870046E050EA4FB +:10DCD00091052FFE20480C3ECF95F40B000B1897B2 +:10DCE000F6C80001300EF8080028A15BC078700566 +:10DCF0006E060EA591062FFE2048163ECF95F4C85D +:10DD00000001A15AF808002C3008C078780E720B78 +:10DD100012AE990B2FF8204C1438CF95D822D70388 +:10DD2000D431205D502C503816971496580C5F0B48 +:10DD300058075F0C1295F9EB100B40E33008F00B1D +:10DD40001800E081028058095F09580A5F08F3E86B +:10DD50000008F6081800E08102764BE4402B6808C2 +:10DD60001638E0840270EE08032C580CE080026B39 +:10DD70004B9BF01F003AC06168082FF88908E08FBC +:10DD8000026268085808C05130184B598908930836 +:10DD90005806C14032D90D88F20818005F0232B926 +:10DDA000F20818005F08E5E81008C0805802F9B2D0 +:10DDB0000101F9B200022FF6C0884AACF01F002A18 +:10DDC000F9B20102F9B200004A5870085818C61199 +:10DDD0005812C2B049F95822C4A0129872043001F6 +:10DDE00032DB32BA7009F2C0FFFFEE09032C580C87 +:10DDF000E080023B1989F6091800C0805803E080D2 +:10DE00000225F4091800E081022150015014492B29 +:10DE1000F01F0012C411EE04002C029B301A2FF4E4 +:10DE2000F01F0012E08F022148A87009EE090328B4 +:10DE30005808C2F0118A32DBF60A1800C2A0580353 +:10DE4000E080020832BBF60A1800E0810203C21823 +:10DE500000007AB88003EC008002ECC800007ABCB5 +:10DE60008003EC04800326948002DCB47208EE0880 +:10DE700003285808C0E0118832D9F2081800C09071 +:10DE80005803E08001E032B9F2081800E08101DBBC +:10DE90003009500950195805E08000A44BE4680887 +:10DEA000302AEE08032C4BDBF01F003DC0D0580396 +:10DEB000E08000986808EE080328118932B8F0095C +:10DEC0001800E081008F4B7468085818E081008AC0 +:10DED0004B187008302AEE08032C4B0BF01F003053 +:10DEE000F9B80002E9F80A004AB468084AD1EE0815 +:10DEF000032C620833DB100CF01F002B1893C0E1D9 +:10DF00006808EE08032CF01F002968096208EE0972 +:10DF10000323F80801081803C08868086209EE089E +:10DF20000328F8080108121850430A910C933FF493 +:10DF300030001096C4784989720849A9EE08032C6C +:10DF400072080C9A100CF01F0016C3A1620CF01F8F +:10DF500000171836C051069600944043C3C85BF4BE +:10DF6000C2E0493870085808C7C062081AD848A8E3 +:10DF700070096E08EE090329A564EA04030A1ADA97 +:10DF80001AD91AD848B8700848BB702CF01F000B7B +:10DF90002FCDC67800007AB88003EC008002E7102D +:10DFA00000007ABC8002ECAC8002EDD0000004A43A +:10DFB000000005988003EC1480031FE800942FF004 +:10DFC0002F01620B580BCB81069640435BF4C031A6 +:10DFD0000898C0A8E8081504EA0800087018C048A6 +:10DFE0003FF83003109458065F19F3E403F9C03189 +:10DFF0003006C5484BE162084BE3EE08032966088A +:10E000000C9CF208070BF01F003C1896C2D14BB8CD +:10E0100070085808C11062096608EE090329F20861 +:10E0200007081AD86E081AD84B5870084B5B702C2A +:10E03000F01F00352FED4AF8700B2FFB910B4AC9EA +:10E04000720AEE0A032CF80B070C300BF60C1800C2 +:10E05000F7BA00FFF3FA0A00F9B90001F1F90A0072 +:10E0600033F8109CC818199833A9F2081800C0306A +:10E070003008C08819A9F0091800F9B80002F9B8E9 +:10E08000010149CA49A97209EE09032974030D8ADD +:10E090002FF3F203000349D9930A5818C1505828A6 +:10E0A000C0405808C6C0C208078933D8F009180014 +:10E0B000F7B300FF4968078A3009F20A1800C10166 +:10E0C00030069106C718078933D8F0091800F7B34E +:10E0D00000FF30080789F0091800C1B048C8910353 +:10E0E0003019484891093006C5F8000000007AB898 +:10E0F00000007ABC8002ECAC000004A4000005988B +:10E100008003EC5080031FE8000004A000007AC0E8 +:10E110004C08402B70082FF81638C2954BE8700851 +:10E120005808C1C06E084BD71AD86E084BCB702C5C +:10E13000F01F003C2FFD5BF4C0906E08A5644BAB54 +:10E14000EA0403091AD9702CC0686E080D894B7B4C +:10E150001AD9702CF01F00332FFD4AE933A8720A38 +:10E16000109C2FFA930A4B299308C6D84B19EE0836 +:10E17000032A3018930A10964AF9C1584AE95BF409 +:10E18000C0D1720A2FFA930A4A2B760BEE0B032B9F +:10E19000F60A070AF00A1800C03130189308300850 +:10E1A0004A49109693085802C1B140094A285809B3 +:10E1B0005F19700858185F08F3E80008E4081800B1 +:10E1C000C0F04018ECCAFFFFEE08002C400BF01F17 +:10E1D000001B40182FF8F006000648E8C0A8496860 +:10E1E00070085818C07148B870092FF9F206000677 +:10E1F00091065BF4C240403B580BF7F41A00A5644B +:10E2000008056A3C6A285808C1E0910C300CC1B876 +:10E2100000007AB8000004A4000005988003EC70A8 +:10E2200080031FE88003EC948003EC9C000004A0B2 +:10E2300000007AC000007ABC8002DCB448C8700CD0 +:10E24000C0283FFC2FBDD83291002FF1FE9FFDCC9E +:10E25000488B97084888F2CAFFFF3019910A129C30 +:10E2600048389109CF0B48489104CECB000004A058 +:10E2700000007AC000007AB8D40130091AD9129887 +:10E28000F01F00022FFDD8028002DD20D401484893 +:10E29000189B700CF01F0003D802000000000598C6 +:10E2A0008003217CD4014848189B700CF01F0003A8 +:10E2B000D8020000000005988002E2BCD431F6C705 +:10E2C000FFF518955967F9B70810F9B80BF8EFD8AA +:10E2D000EB2716375F38F1E713F8C05030C899388C +:10E2E000E08F01F4F01F0050E04701F7E08B001CC5 +:10E2F000EE0316034CD8F003003870361036C061B8 +:10E30000ECC8FFF870361036C0C06C18E018FFFC7F +:10E310006C3AEC0800090A9C6C289528913AC4785C +:10E320002FE3C4D8EE081609C041EE031603C278E5 +:10E330005848E08B0006EE0316062C83C2085948A5 +:10E34000E08B0005F0C3FFA5C1A8E0480054E08BB6 +:10E350000006EE03160C2923C128E0480154E08B87 +:10E360000006EE03160F2893C0A8EE031612E0482D +:10E370000554E088000437E3C02828434ABAF40370 +:10E38000003A7436C1986C19E019FFFCF207010BD2 +:10E3900058FBE08A00042013C1186C38580BC0B534 +:10E3A0006C2AEC0900090A9C912A95387218A1A8D8 +:10E3B0009318CBD810961436CE712FF349BAF4CCFB +:10E3C000FFF878261836C6F06C19E019FFFCF20742 +:10E3D000010858F8E0890091993C992C5808C055DB +:10E3E000EC0900090A9CCE3BE04901FFE08B0013D9 +:10E3F000A399F4090038702B8D388D2B9736912610 +:10E40000A3497418301BF6090949F1E91009951957 +:10E41000C4A8F20816095848E08B000AF20A16064A +:10E420002C8AC2488002E8CA0000059C5948E08B4B +:10E430000005F0CAFFA5C1A8E0480054E08B000623 +:10E44000F20A160C292AC128E0480154E08B000684 +:10E45000F20A160F289AC0A8F20A1612E0480554CC +:10E46000E088000437EAC028284A4C8BF60A0034BA +:10E4700068280838C0E17619A34A301EFC0A094A08 +:10E48000F3EA100A1099971AC0A870280838C060DB +:10E49000701AE01AFFFC1439CF9370398D398D282A +:10E4A00091369326E6081402301B4B84F608094B7C +:10E4B0006818103BE08B006EF7E80009C0B1E0136C +:10E4C000FFFCA17B2FC3C0382FC3A17BF7E8000955 +:10E4D000CFC0E803003E06921C916236C2E86C1A77 +:10E4E000E01AFFFCF407010858F8E08A00156C3ABE +:10E4F0006C299529933A0E99EC070007A1A9993741 +:10E5000099278D19EE0809088F2C8F3CA1A80A9C29 +:10E510008F18C0D86C395808C0F5EC0A000A741876 +:10E52000A1A80A9C95186C2893289139F01F00180F +:10E53000ECCCFFF8D83212960236CD212FF2F1D270 +:10E54000C002C0302F81CCAB1C98F3D3C002C08175 +:10E550006819F60811FFF3E800088918C078F0C9B7 +:10E560000008201370081238CF10A17B6818103BE8 +:10E57000E08B0010580BC0D00493C0382FC3A17B90 +:10E58000F7E80009CA71CFBB0000059C8002E8CC07 +:10E5900068236612E012FFFC0E325F39E4070108BF +:10E5A00058F85FAAF5E91009E08000A24C887001D4 +:10E5B0004C882F0170080E015BF8C0402811E01153 +:10E5C000FF80029B0A9CF01F004418965BFCC6E08B +:10E5D000E6020008103CC0320833C6814BFA7409C9 +:10E5E000E209000995091036C0A1F5D6C007C0712F +:10E5F000E20200026828A1A29112C4C84B5A740B0F +:10E600005BFBC0319506C068EC0900094B3A101954 +:10E610009509F1D6C003F00911085808F20817103F +:10E62000EDD8E1062808EC0100010A9CE3D1C007FF +:10E63000F0010101029BF01F00284A885BFCEC0CF2 +:10E640001700F9B1000070090C1C8926020C120198 +:10E65000A1AC91018D1C0833C1D058F2E08B0005AC +:10E6600030188D18C238305920C2E012FFF8E60287 +:10E670000008912991196618F1D8C001E5E8100841 +:10E68000871858F2E0880007E6CBFFF80A9CF01FD5 +:10E6900000144949720A491870081438F3F8BA008E +:10E6A0004919720A1438F3F8BA0068287018E0188B +:10E6B000FFFC0E385F390E1858F85FAAF5E910090B +:10E6C000C1600A9CF01F0009D83A000000007ACC13 +:10E6D000000009A88002EBC800007AD08003217CEA +:10E6E00000007AC800007AC48002E8CC6826A1A89D +:10E6F0000E99A1A98D19EC0700070A9C89278F188C +:10E70000F01F0003ECCCFFF8D83200008002E8CC08 +:10E71000D4013008C0D8F808070EF6080709201AF7 +:10E720002FF8F20E1800C040FC09010CD802580A5C +:10E73000CF31149CD802588AC2F5F9EB1009E219BE +:10E740000003E0810097E04A0020C3B4F4081402FB +:10E75000F0091108FE09002F7669996976599959CF +:10E7600076499949763999397629992976199919E5 +:10E7700076099909F608002BF8080028E01A00032A +:10E78000F40A1104FE0A002F17A9B0A91799B0992D +:10E790001789B0895EFCF40A1109FE0A002F17F9E7 +:10E7A000B8F917E9B8E917D9B8D917C9B8C917B965 +:10E7B000B8B917A9B8A91799B8991789B8895EFC8B +:10E7C000EBCD40C01899220AB707B326B707B32686 +:10E7D000B707B326B707B326220ACF742F0AC0653E +:10E7E000B707B326B707B326210A5C3AFE0A003FF3 +:10E7F000D703D703F736000EF366000EF736000D89 +:10E80000F366000DF736000CF366000CF736000BCC +:10E81000F366000BF736000AF366000AF7360009C4 +:10E82000F3660009F7360008F3660008F7360007BC +:10E83000F3660007F7360006F3660006F7360005B4 +:10E84000F3660005F7360004F3660004F7360003AC +:10E85000F3660003F7360002F3660002F7360001A4 +:10E86000F3660001F7360000F3660000E3CD80C0D8 +:10E87000201AF60A0709F80A0B09CFB15EFCD40189 +:10E88000183BC192F60A0009123CC152F80A000B6B +:10E890003008C068F208070E201AF6080B0E201880 +:10E8A000580ACF91D802F6080709201AF8080B0970 +:10E8B0002FF8C0283008580ACF71D8021898C038ED +:10E8C00010CB201A580ACFD15EFC5EFC5EFCD70349 +:10E8D000D4014848169A189B700CF01F0003D80208 +:10E8E000000005988002E8E8D431201D16941892A3 +:10E8F000149B5804C051F01F005B1895C5B9500A0D +:10E90000F01F0059400BE8C10008F6C6FFF5621C75 +:10E910005966F9B60810F9B80BF8EDD8EB2616369B +:10E920005F38F1E613F8C05030C830058538C42987 +:10E930001890E010FFFC0C30E08401124CB8E200AB +:10E94000000970250A39C090721AA1CAF20A000A99 +:10E95000741AEDBA0000C220721AE01AFFFCF4002B +:10E9600000030A39C131ECC7FFF00E33C195E2064E +:10E9700000090C13A1A393139129049C6218089514 +:10E98000F1D8C00110468316C1390C33C0957228E6 +:10E990000297723993289139CE48300A1499EDBC08 +:10E9A0000000E080009D6207E20701076E1CE01C8A +:10E9B000FFFC5809C5E0F80000030A39C4811403BC +:10E9C000ECC9FFF01233C5556E3A6E299529933A7A +:10E9D000EEC5FFF8E0CA0004E04A0024E08B002501 +:10E9E0000A99593AE088001A09098B0909098F39EF +:10E9F000EEC9FFF059BAE0880011090B930B090921 +:10EA00008F59EEC9FFE8E04A0024C071090A930A51 +:10EA1000EEC9FFE0090A8F7A090A12AA680A930A66 +:10EA2000681A931AC0785008089B0A9CF01F0010BF +:10EA30004008EE0600090C13A1A393139129049C2E +:10EA40006E18F1D8C00110468F16CB2814030C3372 +:10EA5000C10572287239932891396E286E39C0F831 +:10EA60008002E2BC8002E8CA0000059C8002E87EC9 +:10EA7000F80000030C33C3356E396E2893289139A2 +:10EA8000E0CA0004EECCFFF8E04A0024E08B00244A +:10EA9000593AE088001A0908990809088F38EECC1D +:10EAA000FFF059BAE08800110908990809088F5841 +:10EAB000EECCFFE8E04A0024C07109089908EECCCA +:10EAC000FFE009088F78090818A8680899086818ED +:10EAD0009918C478089BF01F0039C438049CF01FB3 +:10EAE00000381895C3A06218F8C90008A1C8E20848 +:10EAF00000081039C07172130297E013FFFC000385 +:10EB0000C308E0CA0004E04A0024E08B0020089912 +:10EB10001898593AE0880014130B10AB130B10AB84 +:10EB200059BAE088000D130B10AB130B10ABE04A81 +:10EB30000024C051130A10AA130A10AA130A10AA1B +:10EB4000720A910A72199119C048089BF01F001BA4 +:10EB5000089B049CF01F001B049CC2A80093029712 +:10EB6000E60601096E1858F9E0880016F1D8C001D0 +:10EB7000EDE810088F181298A1A8EE06000BF60910 +:10EB8000000997187218A1A82F8B9318049CF01FE6 +:10EB9000000DC0B8F1D8C001E7E810088F18EE03E7 +:10EBA00000036618A1A88718049CEEC5FFF8F01FA3 +:10EBB00000060A9C2FFDD8328002E87E8002E2BC6B +:10EBC0008003217C8002E8CCD42130081897487655 +:10EBD000169C8D08F01F00065BFCC0516C0858089D +:10EBE000EFF81A03D822000000008CC48002F1E87C +:10EBF0005EFDD703D421217DE06802041697BA6830 +:10EC0000504C500CF01F000B3008512850D848A829 +:10EC100050983FF8BA784898505C501CFAC9FF9059 +:10EC20000E9A700C1A9BF01F00062E9DD822000031 +:10EC30008002EDD08002EBF00000059880030C4CC0 +:10EC4000D421217D4988FAC9FF9016977006580B88 +:10EC5000C064E068008B3FFC8D38C228580BF60872 +:10EC600017005807F9BB01FFEFDBE10850585028A7 +:10EC7000E0680208BA683FF8504C500CBA781A9B0A +:10EC80000C9CF01F000A5BFCC044E068008B8D38D0 +:10EC90005807F9B90100FBF81000F1F91E002E9D8C +:10ECA000D8220000000005988002F5685C5BC0284F +:10ECB0002FFC19885808C050F6081800CFA15EFC38 +:10ECC000580B5E0C5E1DD703F9EB100AE21A000325 +:10ECD000C341780A76095CEAC170123AC151781AC8 +:10ECE00076195CEAC110123AC0F1782A76295CEAFA +:10ECF000C0B0123AC091783A76395CEAC0502F0C15 +:10ED00002F0B123ACE70F9DAC308F7D9C3085E0C9C +:10ED1000161C5E1CF9DAC208F7D9C2085E0C161C74 +:10ED20005E1CF9DAC108F7D9C1085E0C161C5E1C1E +:10ED30005C5A5C59121A5EFA178A1989580A5E09D8 +:10ED400014195E19179A1999580A5E0914195E194F +:10ED500017AA19A9580A5E0914195E1917BA19B920 +:10ED6000580A5E0914195E192FCB2FCCCE6B000008 +:10ED70003008F6080709F8080B092FF85809CFA141 +:10ED80005EFCD703D4014848189B700CF01F0003A9 +:10ED9000D8020000000005988002ED9CD42118974D +:10EDA0001696169CF01F0008F8C5FFFF0E9C0A9BE4 +:10EDB000F01F00061897C0500A9A0C9BF01F000421 +:10EDC0000E9CD8228002EDD08002E2BC8002E736A1 +:10EDD00030091898C0282FF8118AF20A1800CFC1FC +:10EDE000F00C010C5EFC580AC0815EFA580AC0B0F3 +:10EDF0005808C0902FFC2FFB201A19881789F0099A +:10EE00001800CF50198C1788101C5EFC3008103A7F +:10EE10005E0CF6080709F8080B092FF85809CF818E +:10EE2000103A5E0CF8080B092FF8CFBBD401484804 +:10EE3000169A189B700CF01F0003D802000005986A +:10EE40008002EE44D421300816951696C0282FF67D +:10EE5000580AC060201A0D89F0091800CF910A16CF +:10EE6000ECCBFFFFF01F00071897C0800A9B0C9A9D +:10EE7000F01F00053008EE060B080E9CD82200009B +:10EE80008002E2BC8002E736D42118981696580B0F +:10EE9000C0C03007C0481897F8C8FFFF109C0C9BF3 +:10EEA000F01F0005CF91C048F01F000318970E9C7B +:10EEB000D82200008002ECACD421201D4A351897DE +:10EEC0006A04E8F600E85806C351500B350CF01FF1 +:10EED00000206A08E94C00E8F0F900E89326930660 +:10EEE0009316F0F900E893469336F0F900E893663C +:10EEF0009356F0F900E893B693A6F0F900E893D69C +:10EF000093C6F0F900E893F693E6F0F900E8F346CB +:10EF10000044F3460040F0F900E8F346004CF346A5 +:10EF20000048F0F900E8F366001CF0F800E8400B38 +:10EF30009196486870080E9CF0FA00E83019F01FAE +:10EF400000052FFDD8220000000005988002E2A4F1 +:10EF50008002EF54D421580CC041740C580CC2905C +:10EF600018981697113EC0A80C3EC0815809C030B1 +:10EF7000109CCF7B9508B889D8220F365806CF5100 +:10EF8000580EC051950E1C9CD822129810991697B5 +:10EF9000133E0F361C36C0A1580EFC091700F9BBF2 +:10EFA0000100F1FB1E009509D8225806CF31CEEBA7 +:10EFB000D822D703D431203D4CC8502C700116986C +:10EFC000113EE20E0706E2160008CFB1E04E002D1A +:10EFD000C041113E3016C058E04E002BC021113EFA +:10EFE00058095F0C59095F053007F9E51005EE0572 +:10EFF0001800C1E0E04E0030C131118535843783FF +:10F00000E80518005F04E60518005F05E9E510054E +:10F01000EE051800C050119E31092FE8C098580C19 +:10F02000C070E04E0030F9B90008F9B9010AE06C8F +:10F03000FFFFEA1C7FFF3007FC1580000E930E36A1 +:10F04000F80517000E9CEA090D0408925005E20E1F +:10F050000704E1D4C001F9B00137F9B000575010EE +:10F06000FCC500300890E2100004C0814010E9D4D3 +:10F07000C002FC0001055804C1C01235C1A4043C03 +:10F080005FBEFDE713FEE60E1800C101043C5F0EF3 +:10F0900040070E355F97EFEE000EE60E1800C061D8 +:10F0A000B33C3017EA0C000CC0283FF7113ECD0BE3 +:10F0B0005BF7C0E1E069FFFFEA197FFFFC1C8000FD +:10F0C00040205806F20C170032298139C0485806F2 +:10F0D000FBBC0100580AC0705807F9B901FFF1D90B +:10F0E000E10B950B2FDDD8320000049CD401485869 +:10F0F0001499169A189B700CF01F0003D802000098 +:10F10000000005988002EFB43028D6733FFC358BA1 +:10F11000580C5E4C482A950B5EFC000000008CC425 +:10F120003058D6733FFC358B580C5E4C482A950BF3 +:10F130005EFC000000008CC43038D6733FFC358B79 +:10F14000580C5E4C482A950B5EFC000000008CC4F5 +:10F150003048D6733FFC358B580C5E4C482A950BD3 +:10F160005EFC000000008CC430B8D6733FFC358BC9 +:10F17000580C5E4C482A950B5EFC000000008CC4C5 +:10F180003098D6733FFC358B580C5E4C482A950B53 +:10F190005EFC000000008CC4D421210D16971A9B40 +:10F1A000F01F0011C0343FFCC1C84008AE08401831 +:10F1B000AE1840288F184038AE484048AE584058E6 +:10F1C000AE684068AE7840888F4840A88FB840C885 +:10F1D0008FC840D88F5840E8300C8F7840F88F980F +:10F1E0002F0DD8228002F180D40148C87009580937 +:10F1F000C03148B99109489948AA7208F00C000C2E +:10F20000143CE08B0004930CC068F01F000730C86A +:10F2100099083FF8109CD80200007AF800008CC8CA +:10F220000000F00080031D20D431208DFAC4FFBC03 +:10F23000504B682E505812967C0B7005506E580B30 +:10F24000F40B17006803681140493008C2C92FFB4E +:10F25000325C178AF80A18005F1EF00A18005F1C5B +:10F26000FDEC000CF00C1800CF31580AE0800129A9 +:10F27000300C3FFA1890503A18941892F80C003C51 +:10F280001697507C4CDC0F3AF80A070E407C1C0C99 +:10F290004CBEFC0C070E201E500E4CAEFC0C070C96 +:10F2A000507C400C587CE08B00F84C7EFC0C032F0B +:10F2B000368BF60A1800E08000F0371BF60A1800BB +:10F2C000C07034CBF60A1800C051A3B4CE58A5B410 +:10F2D000CE380F8B36CAF40B1800C051A5B4EECB54 +:10F2E000FFFFCDB8A5A4CD88EBD5C005367CF80AC4 +:10F2F0001800E08B0027365BF60A1800C48234FB46 +:10F30000F60A1800C480E08B000C345BF60A180083 +:10F31000C3E0347BF60A1800C3A0344BC088358B99 +:10F32000F60A1800C2C0E08B0007355BF60A180029 +:10F33000C351C318363BF60A1800C2F0364BC0E87A +:10F34000370BF60A1800C250E08B000D36EBF60AB8 +:10F350001800C1F0E08B0014369BF60A1800C1E1DA +:10F36000C0E8375BF60A1800C0A0378BF60A180011 +:10F37000C060373BF60A1800C111C0B8EDB40004F4 +:10F38000C0A0EDB40005C0913020C0883040C068F6 +:10F390003030C0483010C0283000403B5BFBC040DC +:10F3A000E20B0920C7985860E08B00776C0AEACC22 +:10F3B000FFFF486EFC00032F8003EE088003ED641E +:10F3C0008003ECF88003ECAC8003ECCCF4CBFFF8CA +:10F3D0008D0BF4EA0000E605083AC0F8F4CBFFFC18 +:10F3E0008D0B740AE605093AC088F4CBFFF88D0B43 +:10F3F000F4EA0000E605083A0E9B1895C4E8620A94 +:10F400005BFAC0B150195028E06A0080300B029CB2 +:10F41000F01F004D40284019E4CC00010E9B503CE9 +:10F42000F20C0C49C3A8620A5BFAC0B1501950280B +:10F43000E06A0080300B029CF01F00434028401916 +:10F440002012300A0E9BE202092AF2020C49C2582D +:10F4500016976C0AF4CBFFFC8D0B740A0E9BE60525 +:10F46000093A2FF5C1A8F4C20030C068E4020022B6 +:10F470002FF7F40200120F8A580AC0E0230A589AA4 +:10F48000FE98FFF6C0982FF70F8A580AC050230A3B +:10F49000589AFE98FFFA0E9B407C30BAF40C180084 +:10F4A000FE91FEEE4042178C0A325F4AF00C1800C3 +:10F4B0005F1CF9EA000AF00A1800FE91FECB300842 +:10F4C000404E178AE2050021F00A1800FC091710C7 +:10F4D000E6050038069EC2A8620A583AC1E0E089F3 +:10F4E0000007581AC1A0582AC181C058585AC0C034 +:10F4F000C0B5C1386C0AF4CCFFF88D0CF4E2000002 +:10F50000F0E30000C1086C0AF4CCFFF88D0CF4E2C3 +:10F510000000F0E30000C0786C0AF4CCFFFC8D0C16 +:10F52000740A910A2FF52F882FC11235FE9AFFD643 +:10F530001C934052406E85059D0B404BE60B003CF2 +:10F540002F8DD8328002E8BCD42114977428580833 +:10F55000C0419518109CD822F01F000330088F1866 +:10F560008F28D82280032320D431FACD068850A9D1 +:10F57000169014971893580CC06078685808C031DA +:10F58000F01F004E4CE81030C0316600C0A84CD8C7 +:10F590001030C0316610C0584CB81030E7F000028F +:10F5A0008068EDB80003C04160485808C071009BF6 +:10F5B000069CF01F0046E0810B4080681099E2191C +:10F5C000001A58A9C3D18079300AF4091900C385FB +:10F5D000A1D8FB5805B86088FB4805CC60A8FB485B +:10F5E00005D4FAC8FFD4FB4805BCFB4805ACE0686D +:10F5F0000400FB4805C0FB4805B43008FB5905BAB8 +:10F600000E9A40A9FAC7FA54FB4805C4069C0E9B03 +:10F61000F01F002F506CC0950E9B069CF01F002D14 +:10F62000406EF9BE01FF506EFB0805B8EDB800064C +:10F63000E0810B058068A7A8A068E08F0B00300868 +:10F64000FAC4F9F85098FB480678409CFB480674C9 +:10F65000FB48067CFB48068050573FF8FB44067089 +:10F66000FB48052C506C1896069150204055C02838 +:10F670002FF50B88300B325AF60818005F19F40882 +:10F6800018005F181268F6081800CF314059EA09CF +:10F690000107C2E0FAF806780E088909FB480678E7 +:10F6A0008917FAF806742FF8FB4806745878E08931 +:10F6B00000132F84C1A8000080031F388003EF2CA3 +:10F6C0008003EF4C8003EF6C80031C388002F568E8 +:10F6D00080031D2CFACAF990402B029CF01F00A158 +:10F6E000E0810AA6FAC4F9F840680E0850680B8851 +:10F6F0003007EE081800E0800A8AEAC2FFFF3003F4 +:10F700005052FB6706873FFE50745043503E0690B0 +:10F71000508506920C944057C0683FFC0A97503CB5 +:10F72000C02830000F38C0281292E0480063E08003 +:10F7300001CCE0890045E0480039E0890026E04836 +:10F740000031E0840198E048002BE0800101E0896D +:10F75000000FE0480023E080008EE048002AE080AF +:10F76000008CE0480020E0810897C7B8E048002EF0 +:10F77000E08000F1E0480030E080017BE048002DAF +:10F78000E081088ACE28505750420897408540743F +:10F790001092E048004FE0800439E0890008E0481A +:10F7A0000044E081087DE08F01DEE0480055E08004 +:10F7B00005DFE0480058E0810873C428E048006F86 +:10F7C000C430E089001FE0480069C450E089000AA5 +:10F7D000E0480064C400E0480068E081085DC63984 +:10F7E000E048006CE0800163505750420897408524 +:10F7F00040741092E048006EE0810852E08F02ED04 +:10F80000E0480073E0800553E089000BE048007099 +:10F81000E08004F9E0480071E081083EC5295057B6 +:10F8200050420897408540741092E0480075E0808F +:10F8300005A0E0480078E0810833E08F06964CABE5 +:10F84000509BE08F06945057408508975042407473 +:10F85000E08F03DD50574085089750424074C83907 +:10F86000FB380687300AF4081800FE91FF5D320865 +:10F87000C6E8A1A3C58B0F89F2C800305898E08B69 +:10F88000001EEEC8FFFF300B2309F60B002BF20B16 +:10F89000001B1139F2CA0030589AFE98FFF7E04970 +:10F8A0000024FE91FF40E04B0020E08909C1201BAD +:10F8B000FAF90680123BC095C108FAF90680ECCA35 +:10F8C000FFFF1236C1F5C268FAC9F9781097F20B3A +:10F8D000003BF6F2FDA4C358FAC7F9841AD7109773 +:10F8E000FAC2FAD01AD2FAC8FBCC029C1AD8FAC8CB +:10F8F000F974FAC9FFCC40BAF01F001C2FDD780262 +:10F90000C208FACEF9781496FC040038F0F2FDA48F +:10F91000C18840A859F9E0890011F0CBFFFC50AB39 +:10F920007002FACCF978F8090038F142FDA42FF9F9 +:10F930001496FB490680C058700214962FC850A830 +:10F940005802FE94FEF15C32A3A3CEDAFB68068770 +:10F95000CEAA0F38E048002AC0A03009C7D800005E +:10F960008002F5488003EDD08002F2280F88F0C9AC +:10F9700000305899E08B001EEEC5FFFF300B2308C6 +:10F98000F60B002BF00B001B0B38F0C90030589918 +:10F99000FE98FFF7E0480024FE91FEC5E04B0020F2 +:10F9A000E0890946201BFAF80680103BC095C10883 +:10F9B000FAF90680ECCAFFFF1236C1F5C288FACA0E +:10F9C000F978F40B003BF6FBFDA4503BC3C8FAC921 +:10F9D000F9841AD9FAC8FAD01AD8FAC8FBCC029C12 +:10F9E0001AD8FAC8F974FAC9FFCC40BAF01F027AE3 +:10F9F0002FDD780C503CC278FACEF9780E95FC04D5 +:10FA000000381496F0F8FDA45038C1D840A859F930 +:10FA1000E0890014F0CBFFFC700850AB5038FACCF2 +:10FA2000F978403BF8090038F14BFDA42FF90E9509 +:10FA3000FB4906801496C07870090E952FC850397E +:10FA4000149650A840385808FE95FE690A97C6BA21 +:10FA5000F40B00190F38F209002BF0CA0030589A45 +:10FA6000FE98FFF83FFEF20E0C495039C5FAA7B3D5 +:10FA7000C5AA30092308F2090029F00900190F3836 +:10FA8000F0CA0030589AFE98FFF7E0480024FE9133 +:10FA9000FE4DE0490020E08908CBF2C4000130109F +:10FAA000FE9FFE42A7A3FE9FFE3F0F89F0091800AC +:10FAB000C0512FF7A5B3FE9FFE37A5A3FE9FFE34CE +:10FAC000A5B3FE9FFE3150575042089740854074C1 +:10FAD0000C99FAF806805800C1D01037C064FACCEF +:10FAE000F978F8070037C1D8FAC8F9841AD8FAC8E3 +:10FAF000FAD01AD8FAC8FBCC1AD8FAC8F974FAC9DD +:10FB0000FFCC0A9A0E9B029CF01F02332FDD19B81E +:10FB1000C2282FF61039C084FACBF978F6070037DF +:10FB2000EF38FDA7C18840A959F8E0890012F2CA50 +:10FB3000FFFC50AA7209FAC2F978E408003A2FF8DB +:10FB4000F549FDA4FB480680F1D9C008C04813B8A8 +:10FB50002FC950A9300EFB680648FB6E0687E08F60 +:10FB600006A7A5A30C92EDB30005C4D1FAF8068050 +:10FB70005800C1E01037C064FACCF978F8070037B4 +:10FB8000C1F8FAC8F9841AD8FAC8FAD00A9A1AD869 +:10FB9000FAC8FBCC1AD8FAC9FFCCFAC8F9740E9B84 +:10FBA000029CF01F020D2FDD781A7809C288ECC282 +:10FBB000FFFF1036C0A4FACBF978F6070037EEFA4B +:10FBC000FDA8EEF9FDA4C1B840A959F8E0890013D9 +:10FBD000F2CAFFF850AAFAC6F978721AEC08003B8C +:10FBE0007209F74AFDA8F749FDA42FF8FB480680E3 +:10FBF000C068F2C8FFF8721A50A87209049650093A +:10FC0000501ACD58EDB30004C441FAF806805800EC +:10FC1000C1D01037C064FACEF978FC070037C1E8CC +:10FC2000FAC8F9841AD8FAC8FAD00A9A1AD8FAC8BF +:10FC3000FBCC0E9B1AD8029CFAC8F974FAC9FFCC07 +:10FC4000F01F01E52FDD780AC218ECC2FFFF103665 +:10FC5000C084FACCF978F8070037EEFAFDA4C16841 +:10FC600040A959F8E0890010F2CAFFFC50AAFACB6B +:10FC7000F978720AF6080039F34AFDA42FF8FB4818 +:10FC80000680C048720A2FC950A90496501AC8D8D5 +:10FC9000EDB30006C481FAF806805800C1D01037D1 +:10FCA000C064FAC8F978F0070037C1E8FAC8F984E7 +:10FCB0001AD8FAC8FAD01AD8FAC8FBCC1AD8FAC897 +:10FCC000F974FAC9FFCC0A9A0E9B029CF01F01C27C +:10FCD0002FDD9818C238ECC2FFFF1036C084FAC678 +:10FCE000F978EC070037EF08FDA6C18840A959F85C +:10FCF000E0890012F2CAFFFC50AA7209FACEF97824 +:10FD0000FC08003A2FF8F549FDA4FB480680F1D91C +:10FD1000B010C04892182FC950A950180496BF5867 +:10FD20005008C458FAF806805800C1D01037C06493 +:10FD3000FACBF978F6070037C1E8FAC8F9841AD87F +:10FD4000FAC8FAD00A9A1AD8FAC8FBCC0E9B1AD86D +:10FD5000029CFAC8F974FAC9FFCCF01F019F2FDD8D +:10FD6000780AC218ECC2FFFF1036C084FACAF978CC +:10FD7000F4070037EEFAFDA4C16840A959F8E089FC +:10FD80000010F2CAFFFC50AAFAC6F978720AEC0811 +:10FD90000039F34AFDA42FF8FB480680C048720AD8 +:10FDA0002FC950A90496501ABF5A500AFAEA000007 +:10FDB000580A5C2BC0E43008FAEA00003009F00A67 +:10FDC000010AF20B014B32D8FAEB0000FB68068700 +:10FDD0003010E08F04E30C99EDB30005C471FAF81C +:10FDE00006805800C1D01037C064FACAF978F40709 +:10FDF0000037C1D8FAC8F9841AD8FAC8FAD00A9AD2 +:10FE00001AD8FAC8FBCC0E9B1AD8029CFAC8F9740F +:10FE1000FAC9FFCCF01F01702FDD780AC2082FF657 +:10FE20001039C084FAC9F978F2070037EEFAFDA458 +:10FE3000C16840A959F8E0890010F2CAFFFC50AA35 +:10FE4000FAC3F978720AE6080039F34AFDA42FF8DC +:10FE5000FB480680C048720A2FC950A94062049826 +:10FE60009512BF589508FE9FFC03EDB30004C441F2 +:10FE7000FAF806805800C1D01037C064FACEF9787D +:10FE8000FC070037C1D8FAC8F9841AD8FAC8FAD0E2 +:10FE90000A9A1AD8FAC8FBCC0E9B1AD8029CFAC848 +:10FEA000F974FAC9FFCCF01F014C2FDD780AC208A3 +:10FEB0002FF61039C084FACCF978F8070037EEFA3B +:10FEC000FDA4C16840A959F8E0890010F2CAFFFCFE +:10FED00050AAFACBF978720AF6080039F34AFDA461 +:10FEE0002FF8FB480680C048720A2FC950A9406904 +:10FEF0009509FE9FFBBDE2130040C440FAF806805E +:10FF00005800C1D01037C064FAC8F978F00700373C +:10FF1000C1D8FAC8F9841AD8FAC8FAD00A9A1AD8F5 +:10FF2000FAC8FBCC0E9B1AD8029CFAC8F974FAC91D +:10FF3000FFCCF01F01292FDD780AC2082FF61039F7 +:10FF4000C084FAC3F978E6070037EEFAFDA4C16869 +:10FF500040A959F8E0890010F2CAFFFC50AAFAC281 +:10FF6000F978720AE4080039F34AFDA42FF8FB4837 +:10FF70000680C048720A2FC950A9406EB40EFE9F79 +:10FF8000FB77FAF806805800C1D01037C064FACC6D +:10FF9000F978F8070037C1D8FAC8F9841AD8FAC82E +:10FFA000FAD00A9A1AD8FAC8FBCC0E9B1AD8029C2F +:10FFB000FAC8F974FAC9FFCCF01F01072FDD780ADF +:10FFC000C2082FF61039C084FACBF978F60700374B +:10FFD000EEFAFDA4C16840A959F8E0890010F2CA00 +:10FFE000FFFC50AAFAC3F978720AE6080039F34A0E +:10FFF000FDA42FF8FB480680C048720A2FC950A9FB +:02000004800377 +:1000000040629502FE9FFB34A5A30C99EDB3000559 +:10001000C571FAF806805800C2601037C0A4FACE45 +:10002000F978FC070037EEEAFDA4FAEB0000C1887E +:10003000FAC8F9841AD8FAC8FAD01AD8FAC8FBCC88 +:100040001AD8FAC8F974FAC9FFCC0A9A0E9B029C16 +:10005000F01F00E12FDDF8E80000FAE900003000B1 +:10006000E08F03992FF61039C0B4FAC8F978F00779 +:100070000037EEEAFDA4FAEB0000E08F038C40A904 +:1000800059F8E0890016F2CAFFF850AAF2EA000017 +:10009000FAEB0000FACAF978F4080039FAEA00002D +:1000A000F2EBFDA42FF8FB480680E08F0374F2EA20 +:1000B00000002F89FAEB000050A9E08F036CEDB32C +:1000C0000004C141FAF806805800C0801037C60409 +:1000D000FACAF978F4070037C7782FF61039C774D1 +:1000E000FAC9F978F2070037C6F8EDB30006C45133 +:1000F000FAF806805800C1D01037C064FACCF978FD +:10010000F8070037C1D8FAC8F9841AD8FAC8FAD063 +:100110001AD8FAC8FBCC1AD8FAC8F974FAC9FFCCB5 +:100120000A9A0E9B029CF01F00AC2FDD9818C22883 +:100130002FF61039C084FACBF978F6070037EF08AC +:10014000FDA6C18840A959F8E0890012F2CAFFFC57 +:1001500050AA7209FAC2F978E408003A2FF8F54972 +:10016000FDA4FB480680F1D9B010C04892182FC9F1 +:1001700050A95C785018C418FAF806805800C1D00D +:100180001037C064FACCF978F8070037C1D8FAC83C +:10019000F9841AD8FAC8FAD00A9A1AD8FAC8FBCC45 +:1001A0000E9B1AD8029CFAC8F974FAC9FFCCF01F4A +:1001B000008A2FDD780AC2082FF61039C084FACBE6 +:1001C000F978F6070037EEFAFDA4C16840A959F89E +:1001D000E0890010F2CAFFFC50AAFAC2F978720A4C +:1001E000E4080039F34AFDA42FF8FB480680C04814 +:1001F000720A2FC950A9501A300E500E1C90E08F71 +:1002000002CA505750420897408540740C99FAF83A +:1002100006805800C1D01037C064FACCF978F807CE +:100220000037C1D8FAC8F9841AD8FAC8FAD01AD84F +:10023000FAC8FBCC1AD8FAC9FFCCFAC8F9740A9AE2 +:100240000E9B029CF01F00642FDD7809C2182FF668 +:100250001039C084FACBF978F6070037EEF9FDA41F +:10026000C17840A959F8E0890010F2CAFFFC50AAF1 +:10027000FAC2F9787209E408003AF549FDA42FF8AA +:10028000FB480680C058F2C8FFFC50A8720933082A +:10029000300EFB6806844D1C37885019A1B3FB68EB +:1002A0000685500E509CE08F02755057300B50421F +:1002B000FB6B06870897408540740C99FAF8068016 +:1002C0005800C1D01037C064FACAF978F407003773 +:1002D000C1D8FAC8F9841AD8FAC8FAD01AD8FAC814 +:1002E000FBCC0E9B1AD80A9AFAC8F974FAC9FFCC4B +:1002F000029CF01F00392FDD7807C2082FF6103955 +:10030000C084FAC9F978F2070037EEF7FDA4C16896 +:1003100040A959F8E0890010F2CAFFFC50AA720700 +:10032000FAC2F978E4080039F347FDA42FF8FB4836 +:100330000680C04872072FC950A9403E580EC1051B +:100340001C9A300B0E9CF01F0026E08002B6F807C6 +:100350000105403C1835E08902B0E08F02AF0E9CE9 +:100360003000F01F00201895E08F02A9A5A30C997A +:10037000EDB30005C581FAF806805800C2001037B9 +:10038000C064FACBF978F6070037C208FAC8F984D6 +:100390001AD8FAC8FAD00A9A1AD80E9BFAC8FBCC17 +:1003A000029C1AD8FAC8F974FAC9FFCCF01F000AE7 +:1003B0002FDDF8EA0000FAEB0000C3282FF6103911 +:1003C000C124FACAF978F4070037EEE8FDA4FAE987 +:1003D0000000C2688002F2288003EDE4800328A4B4 +:1003E0008002EDD040A959F8E0890015F2CAFFF863 +:1003F00050AAF2EA0000FAEB0000FACAF978F40811 +:100400000039FAEA0000F2EBFDA42FF8FB48068061 +:10041000C078F2EA00002F89FAEB000050A93010F2 +:10042000E08F01B9EDB30004C141FAF8068058002D +:10043000C0801037C604FACAF978F4070037C778C5 +:100440002FF61039C774FAC9F978F2070037C6F8E1 +:10045000EDB30006C451FAF806805800C1D0103739 +:10046000C064FACCF978F8070037C1D8FAC8F98423 +:100470001AD8FAC8FAD01AD8FAC8FBCC1AD8FAC8CF +:10048000F974FAC9FFCC0A9A0E9B029CF01F0086F1 +:100490002FDD9818C2282FF61039C084FACBF978CE +:1004A000F6070037EF08FDA6C18840A959F8E08992 +:1004B0000012F2CAFFFC50AA7209FAC2F978E408E5 +:1004C000003A2FF8F549FDA4FB480680F1D9B01099 +:1004D000C04892182FC950A95C785018C418FAF86F +:1004E00006805800C1D01037C064FACCF978F807FC +:1004F0000037C1D8FAC8F9841AD8FAC8FAD00A9ACB +:100500001AD8FAC8FBCC0E9B1AD8029CFAC8F97408 +:10051000FAC9FFCCF01F00642FDD780AC2082FF65D +:100520001039C084FACBF978F6070037EEFAFDA44B +:10053000C16840A959F8E0890010F2CAFFFC50AA2E +:10054000FAC2F978720AE4080039F34AFDA42FF8D8 +:10055000FB480680C048720A2FC950A9501A300EB5 +:100560003010500EC1794D1C509CEDB30005C541B3 +:10057000FAF806805800C2201037C0A4FACBF978E8 +:10058000F6070037EEE8FDA4FAE90000CF28FAC824 +:10059000F9841AD8FAC8FAD00A9A1AD80E9BFAC85F +:1005A000FBCC029C1AD8FAC8F974FAC9FFCCF01F28 +:1005B000003E2FDDF8EA0000C0C8ECCAFFFF10368D +:1005C000C0B4FAC9F9781496F2070037EEEAFDA430 +:1005D000FAEB0000CCE840A959F8E0890016F2E6F1 +:1005E0000000F2CBFFF8FAE7000050ABFAC6F9784A +:1005F000EC080039FAE60000F2E7FDA42FF81496A3 +:10060000FB480680CB68F2E600002F89FAE700007D +:1006100050A91496CAE8EDB30004C161FAF8068047 +:100620005800C0801037C6A4FACEF978FC0700370E +:10063000C838ECCAFFFF1036E0840082FACCF978A3 +:10064000F8070037C788EDB30006C4D1FAF8068072 +:100650005800C1D01037C064FACCF978F8070037D9 +:10066000C1F8FAC8F9841AD8FAC8FAD01AD8FAC860 +:10067000FBCC1AD8FAC8F974FAC9FFCC0A9A0E9BB7 +:10068000029CF01F00092FDD9818C2A8ECCAFFFFDA +:100690001036C0D4FACBF9781496F6070037EF0875 +:1006A000FDA6C1E88002F2288003EDE440A959F8D4 +:1006B000E0890013F2CBFFFC50AB7209FAC6F9785F +:1006C000EC08003B2FF8F749FDA4FB480680149680 +:1006D000F1D9B010C058921814962FC950A95C785F +:1006E0005018C458FAF806805800C1D01037C064BA +:1006F000FACCF978F8070037C1F8FAC8F9841AD8A3 +:10070000FAC8FAD00E9B1AD8FAC8FBCC0A9A1AD8A3 +:10071000029CFAC8F974FAC9FFCCF01F00C42FDD9F +:10072000780BC248ECCAFFFF1036C094FACBF978B8 +:10073000F60700371496EEFBFDA4C18840A959F8CE +:10074000E0890011F2CBFFFC50ABFAC6F978720BCE +:10075000EC080039F34BFDA42FF81496FB480680F3 +:10076000C058720B14962FC950A9501B300E500E52 +:100770004008401C300B18485F18E7E80008F608EE +:100780001800C0703308FB620685A1B3FB680684BD +:100790003020300AFB6A068740395809C025A7D3A4 +:1007A0004038401758085F194008FAC5F9900E48BC +:1007B00030025F18F3E81008E4081800C5E03018AC +:1007C000F0001800C0603028F0001800C051C3E8E5 +:1007D0000A970690C2C80A97FAE80000F5D8C00345 +:1007E0002D0A0EFAF00B1603F20C1603F7E911DBD3 +:1007F0001899169858085C29CF21FAE90000EDB342 +:100800000000C4613309F20A1800C4200EF9C408BC +:10081000F01F008730A82D0A3009AE8AFAEA0000DE +:10082000F01F008416991498FAE90000EECC00013C +:1008300030A83009FAEA00001897589A5C2BFE9B02 +:10084000FFE91BF800932D08C2080A97FAE8000098 +:10085000F5D8C004409EFC0A070A0EFAF20B1604F3 +:10086000F00A1604F5E911CA1699149858085C297B +:10087000CF01FAE90000C0C85800C091EDB30000F4 +:10088000C061FAC7F9913308AE88C0280A970E15DF +:100890004030C14850425057407410925802E08096 +:1008A00001B6300CFB620648FB6C06873015300041 +:1008B000FAC7F9B8C03840353000069A0699E21AEE +:1008C0000002E2190084508A5079EA000C42FB3899 +:1008D0000687300BF6081800F7B201FF580AF7B286 +:1008E00001FE5809C4514048041850385808E0899E +:1008F000001DC3E8FB4C06784CFE310C890E891CA8 +:10090000FB4B0674587BE08900042F84C0B8FACAF8 +:10091000F990402B029CF01F0049E0810189FAC444 +:10092000F9F8403B210B503BFAF90678FAF80674C7 +:10093000F2CCFFF0F0CBFFFF4BFA403E590EFE9990 +:10094000FFDB1C09890AFB490678891EFB4B0674EC +:10095000587BE08900042F84C0B8FACAF990402B74 +:10096000029CF01F0036E0810163FAC4F9F8FB38FD +:100970000687300CF8081800C1F0FAF80678FAC9B2 +:10098000F9792FF88909FB4806783019FAF80674C6 +:1009900089192FF8FB4806745878E08900042F84E1 +:1009A000C0B8FACAF990402B029CF01F0024E081E5 +:1009B000013FFAC4F9F8408B580BC1F0FAF80678F9 +:1009C000FAC9F97C2FE88909FB4806783029FAF83A +:1009D000067489192FF8FB4806745878E0890004DA +:1009E0002F84C0B8FACAF990402B029CF01F001364 +:1009F000E081011EFAC4F9F8407AE04A0080C5118E +:100A00004049041950395809E0890029C4A848C848 +:100A1000310EFB4C06788908891EFB4B0674587B07 +:100A2000E08900102F84C1788002F228800373408F +:100A30008002D9988003EDF88002F5488003ECE845 +:100A4000FACAF990402B029CF01F0052E08100F09E +:100A5000FAC4F9F8403C210C503CFAF90678FAF84F +:100A60000674F2CCFFF0F0CBFFFF4CBA403E590EBB +:100A7000FE99FFCF1C09890AFB490678891EFB4BAA +:100A80000674587BE08900042F84C0B8FACAF99034 +:100A9000402B029CF01F003FE08100CAFAC4F9F825 +:100AA0000A105800E089001BC3B8FB4C0678310AD5 +:100AB0004B9C891A890CFB4B0674587BE089000417 +:100AC0002F84C0B8FACAF990402B029CF01F003165 +:100AD000E08100AEFAC4F9F82100FAF90678FAF8D4 +:100AE0000674F2CCFFF0F0CBFFFF4ABA5900FE9932 +:100AF000FFDE0009890AFB4906788910FB4B067462 +:100B0000587BE08900042F84C0B8FACAF990402BC2 +:100B1000029CF01F0020E081008BFAC4F9F8FAF87B +:100B2000067889158907F0050005FAF80674FB4573 +:100B300006782FF8FB4806745878E08900042F8463 +:100B4000C0A8FACAF990402B029CF01F0012C6F10F +:100B5000FAC4F9F8E2130004C41040470417580718 +:100B6000E089001CC3B8FB4C067889058913FB4B50 +:100B70000674587BE08900042F84C098009A402BAB +:100B8000029CF01F0004C531FAC4F9F82107C0988F +:100B90008002F5488003ECE84AB53103FAC0F990C9 +:100BA000FAF90678FAF80674F2CCFFF0F0CBFFFF02 +:100BB0004A5A5907FE99FFD90E09890A8917FB4934 +:100BC0000678FB4B0674587BE08A0009FACAF99054 +:100BD000402B029CF01F001DC2A140684049E4095F +:100BE0000C4204085068FAF806785808C080FACA1F +:100BF000F990402B029CF01F0015C1913003FAC4FC +:100C0000F9F8FB430674FE9FF53302934020FAF88F +:100C100006785808C080029CFACAF990009BF01F21 +:100C2000000BC0613008FB480674C0284020806873 +:100C3000EDB80006C0313FF25062406CFE3DF978DD +:100C4000D83200008003EDF88002F548D431FACDA7 +:100C500001E03007503C16961295507A5087505755 +:100C60000E930E905047407E1D8957795809E080B9 +:100C700007A22FFE4D5C507E780C502CF809070817 +:100C8000E2180008C1B06C185808E08900070C9BF6 +:100C9000403CF01F004FCE816C084CCBF0C9FFFFE9 +:100CA000760A1188F4080708EDB80003CDD16C1856 +:100CB0008D0920182FF08D18CE7BE0490025E081AA +:100CC000008906941091109236CA344C358E407BC0 +:100CD0001739507B364BF6091800E08000BBE08BDB +:100CE0000042F8091800E08000B4E08B0021339B3B +:100CF000F6091800E08B01D2330BF6091800E082E8 +:100D00000094325BF6091800C640E08B000B5809CE +:100D1000E080074F324BF6091800E08101BFC8A8F8 +:100D200032ABF6091800E08101B9C6D8FC091800F9 +:100D3000E08000A4E08B000C34CBF6091800C7005B +:100D400034FAF4091800E08101A9C8C835BAF409D9 +:100D50001800E0800098363AF4091800E081019EFE +:100D6000C9E836FBF6091800C7E0E08B0017369B90 +:100D7000F6091800C720E08B0008368BF60918002A +:100D8000E081018CC4F8F4091800C3F036EAF409D4 +:100D90001800E0810183C8D8373AF4091800C1303F +:100DA000E08B0008370AF4091800E0810177C7A832 +:100DB000375AF4091800C5C0378AF4091800E081D1 +:100DC000016DC5B83029C7590000049C800328BCB8 +:100DD0006C185808E08900080C9B403CF01F006428 +:100DE000E08106E0407A6C08F539FFFF118AF20ACB +:100DF0001800E08106E02FF82FF08D086C182018FD +:100E00008D18C32BA5A1C64B407B1789F409180088 +:100E1000C0512FFBA1B1507BC5BBA1A1C59BA1B106 +:100E2000C57BA3A1C55BE4020022A17223021202CA +:100E3000C4FBE0420020E08B0007E4C4000130184E +:100E40003002C46B3168403A9538E08F06ABA1A1FF +:100E50004C8930AE5089C2B84C6C300B508C505B12 +:100E6000C279A1A14C4A3089508A5059C2194C2EDE +:100E700030AC508E505CC1C94BFBA9B1508B310ACC +:100E8000C169301950085019407BFACCFFD4F01FCB +:100E9000003BA7A1507C40194008C0B9A7A1300968 +:100EA000C0894B59E81102205089310E505EC009AB +:100EB000EDB10004FE90FED9EDB10002C441580826 +:100EC000C2500E34C064FACCFE20F8040024C2786C +:100ED000FACAFED40A99F407002A0E98130B14AB31 +:100EE0002FF81034CFC4EEC9FFFFEE0811FFF0C792 +:100EF000FFFF2FE808080807EA080025F2070007A7 +:100F0000FAC8FED4F0040324C1C8E6C8FFFF0E33BC +:100F1000C094FACBFE201093F6040024E8F4FF4CB2 +:100F2000C1086A042FC559F7E089000B1093FACA6B +:100F3000FE20F40700282FF7F144FF4CC02810933F +:100F4000A800C92AEDB10000C1A15808E0800088BE +:100F50000E34C635FACAFED40A99F407002A0E9850 +:100F6000130B14AB2FF81034CFC4C678800328BC01 +:100F70008002EFB480032E6C800329ECE2110002A2 +:100F8000C4805808C2500E34C064FACCFE20F80465 +:100F90000024C278FACAFED40A99F407002A0E98EF +:100FA000130B14AB2FF81034CFC4EEC9FFFFEE08BB +:100FB00011FFF0C7FFFF2FE808080807EA0800251F +:100FC000F2070007FAC8FED4F0040324C1C8E6C83B +:100FD000FFFF0E33C094FACBFE201093F6040024DA +:100FE000E8F4FF4CC1086A042FC559F7E089000BEB +:100FF0001093FACAFE20F40700282FF7F144FF4CA3 +:10100000C0281093E008141F89108908FE9FFE2D48 +:101010005808C2500E34C064FAC9FE20F2040024FD +:10102000C278FACAFED40A99F407002A0E98130B64 +:1010300014AB2FF81034CFC4EEC9FFFFEE0811FF38 +:10104000F0C7FFFF2FE808080807EA080025F207A5 +:101050000007FAC8FED4F0040324C1C8E6C8FFFFA5 +:101060000E33C094FAC2FE201093E4040024E8F486 +:10107000FF4CC1086A042FC559F7E089000B109393 +:10108000FACEFE20FC0700282FF7F144FF4CC028C1 +:1010900010938900FE9FFDE9402CF8090709EDB97E +:1010A0000000C021A1A14C7B30AA508B505A30398E +:1010B0006C1A580AE089000C501950080C9B403CEF +:1010C000F01F004140194008E081056CEDB10006B9 +:1010D000C151C1F86C1A201A8D1A580AE08A00040E +:1010E0008D0CC0B8501950080C9B403CF01F0036C6 +:1010F00040194008E08105562FF06C0A4B3EF4CCB5 +:10110000FFFF7C0B158AF60A070AEDBA0003CE3002 +:101110005829E08001C05839E080031D5819E0804B +:10112000011B029CE21C0010502C5802F9B2000175 +:10113000E3D1C001E080009B580CC0303001C4985E +:101140005808C2500E34C064FACBFE20F6040024C6 +:10115000C278FACAFED40A99F407002A0E98130B33 +:1011600014AB2FF81034CFC4EEC9FFFFEE0811FF07 +:10117000F0C7FFFF2FE808080807EA080025F20774 +:101180000007FAC8FED4F0040324C228E6C8FFFF13 +:101190000E33C094FACAFE201093F4040024E8F43D +:1011A000FF4CC1686A042FC559F7E08900111093FC +:1011B000FAC9FE20F20700282FF7F144FF4CC0883F +:1011C0008002EFB4800328BC0000049C10930891B7 +:1011D00030044D5E7C081034E08004E46C08118912 +:1011E000FAC8FE200808F169FFCC6C1820188D1889 +:1011F0006C082FF8308A8D08300BFACCFE2CF01FCB +:10120000004B2FF4FAC8FE2C0899FACAFE54029B30 +:10121000403CF01F00475BFCE08004C4580CC061F8 +:10122000402C580CC051830CC0385BECC0B0080097 +:10123000402B2012580BF9B40100F7B100FCFBF46D +:1012400000026C185808E089000B0C9B403CF01F12 +:101250000039C0505804C050E08F04A45802CBA1FC +:10126000402A580AFE91FD01C718402E580EC1A011 +:101270006C186C090438C0F4100910128D091001A3 +:101280000C9B403CF01F002BCF405801E08101E651 +:10129000E08F0488040904188D098D180401E08F7B +:1012A00001DD5808C2500E34C064FACCFE20F804A8 +:1012B0000024C278FACAFED40A99F407002A0E98CC +:1012C000130B14AB2FF81034CFC4EEC9FFFFEE0898 +:1012D00011FFF0C7FFFF2FE808080807EA080025FC +:1012E000F2070007FAC8FED4F0040324C258E6C887 +:1012F000FFFF0E33C094FACBFE201093F6040024B7 +:10130000E8F4FF4CC1986A042FC559F7E08900142E +:101310001093FACAFE20F40700282FF7F144FF4C7F +:10132000C0B80000000009AC8002E8BC800328407F +:10133000800328BC1093049A089C0C99301BF01F62 +:1013400000C9E080042FF800000040492FF95049FF +:10135000FE9FFC8B5802F9B200FFEDB10004C261A0 +:1013600030040891C1286C188D0920188D182FF4AD +:101370000832E080008D5808E08900080C9B403C52 +:10138000F01F00B9E08100846C08FACEFE20F0C99D +:10139000FFFF1188FC080008F138FE4CE208180035 +:1013A000CE315804C741E08F04065808C2500E34AD +:1013B000C064FACCFE20F8040024C278FACAFED435 +:1013C0000A99F407002A0E98130B14AB2FF8103467 +:1013D000CFC4EEC9FFFFEE0811FFF0C7FFFF2FE8F3 +:1013E00008080807EA080025F2070007FAC8FED433 +:1013F000F0040324C1C8E6C8FFFF0E33C094FACB43 +:10140000FE201093F6040024E8F4FF4CC1086A049F +:101410002FC559F7E089000B1093FACAFE20F40794 +:1014200000282FF7F144FF4CC02810930891300892 +:10143000C1886C1A201A8D1A133A02CA8D095802F3 +:10144000C1D06C195809E089000D50080C9B403C34 +:10145000F01F00854008C0500831C101E08F03A291 +:101460006C0AFACEFE2014992012158AFC0A000A92 +:10147000F53AFE4CF00A1800CDD1E2040104E080F8 +:10148000039A404C2FFC504C3008A2880800FE9F65 +:10149000FBEC029BE21B0010502B5802F9B200FF3C +:1014A000E3D1C001E08000BC580BC050FACAFE2452 +:1014B000506AC4385808C2500E34C064FAC9FE20BD +:1014C000F2040024C278FACAFED40A99F407002A6A +:1014D0000E98130B14AB2FF81034CFC4EEC9FFFFD6 +:1014E000EE0811FFF0C7FFFF2FE808080807EA0819 +:1014F0000025F2070007FAC8FED4F0040324C1C88F +:10150000E6C8FFFF0E33C094FACEFE201093FC0411 +:101510000024E8F4FF4CC1086A042FC559F7E0899C +:10152000000B1093FACCFE20F80700282FF7F144A7 +:10153000FF4CC0281093506430014CC4C598680813 +:101540001031E080032FFAC8FE200208F169FFCCB9 +:101550006C1820188D186C082FF8308A8D08300B05 +:10156000FACCFE2CF01F00422FF1FAC8FE2C029993 +:10157000FACAFE54406B403CF01F003E5BFCE0802A +:101580000311580CC041406B970CC0385BECC23063 +:10159000406A740CF01F0038C100FAC4FE20020437 +:1015A0002354C088098B201120140C9A403CF01F52 +:1015B00000335801CF81C2C80200402920125809C7 +:1015C000F8011710FBF80006F7B800FCFBF80A0654 +:1015D000FBF100026C185808E089000B0C9B403CA2 +:1015E000F01F0021C0505801E08102DCC1186C08D6 +:1015F00058025F1A11894A2E300C7C08F00907083E +:10160000EC180008F5E80238F8081800C991402BDA +:10161000580BFE91FB2A406A950BC98A402E580E42 +:10162000C300C1086C188D0A20188D182FF10232E2 +:10163000C1405808E08900070C9B403CF01F000A9D +:10164000C0C16C0848ECF0CAFFFF78091188F208A5 +:101650000708EDB80003CE710200FE9FFB060000F4 +:10166000800320B8800328BC000009AC8002E8BCDD +:10167000800328408003274880032FF40000049C47 +:101680005808C2500E34C064FACBFE20F604002481 +:10169000C278FACAFED40A99F407002A0E98130BEE +:1016A00014AB2FF81034CFC4EEC9FFFFEE0811FFC2 +:1016B000F0C7FFFF2FE808080807EA080025F2072F +:1016C0000007FAC8FED4F0040324C1C8E6C8FFFF2F +:1016D0000E33C094FACAFE201093F4040024E8F4F8 +:1016E000FF4CC1086A042FC559F7E089000B10931D +:1016F000FAC9FE20F20700282FF7F144FF4CC0285A +:1017000010930891C1286C1920198D19113902C93B +:101710008D085802C1506C185808E08900070C9BCE +:10172000403CF01F0059C0C16C094D8E12987C0AD4 +:1017300013892012F4090709EDB90003CE51404C7A +:101740002FFC504C08103008E2000000A288FE9FD9 +:10175000FA8CE4C90001E0490026E08B0005300B5B +:10176000506BC058E4CA00273272506A3009FACE72 +:10177000FE54509950A7E8110D80502E35894057DE +:101780006C0A339C158AF80A1800E08B0015338B1D +:10179000F60A1800C4E2330BF60A1800C270E08B98 +:1017A000004532BBF60A1800C51032DBF60A1800F5 +:1017B000C7C1C4C8F20A1800C4E0E08B000AF4CB29 +:1017C0000041305EFC0B1800E08B0070C398361CA3 +:1017D000F80A1800C6A3366BF60A1800E088003134 +:1017E000378EFC0A1800C611C368029BEDB1000BCE +:1017F000C3C15807E06B0200E3DBE031F9B7000832 +:10180000EDB1000AC041E011FA7FC2F8409B406C84 +:101810002FFB580CF7BC0101FBFC1A06F7B201FFC5 +:10182000E011FC7F509BC248499EFC070417C0B8DA +:10183000497CF80704175887E0890006C36858A751 +:10184000E08A0034E011F47FC108EDB10007C2D195 +:10185000A7D1C0B8029BE21B0600E04B0200C251B8 +:10186000A9D13107E8110500402B16CA502B6C1A7C +:10187000201A8D1A580AE08A000D6C0A2FFA8D0A78 +:10188000C1180000800328BC0000049C8003EF08FE +:10189000501950080C9B403CF01F00BD40194008F7 +:1018A000C0412012FE91FF6E505740A7EDB10008D5 +:1018B000C161FAC9FE54402A123AE088000B40295F +:1018C0000C9A137B403C50085029F01F00B240088E +:1018D000FAC9FE5440221232E080016D029AE21AE7 +:1018E0000010E081014B402EBC8A50084059FACBD1 +:1018F000FE54403C40825D1202994008E2190020EB +:10190000C2A05808C1400E34C064FACEFE20FC04C8 +:101910000024C1D9FACAFED40A99F407002A0E9805 +:10192000130B14AB2FF81034CFC4CF68E6C8FFFFF9 +:101930000E33C064FACBFE20F6040024C0796A049A +:101940002FC559F7E08901151093FACAFE20F40754 +:101950000028C0A9EDB10002C4415808C2500E349D +:10196000C064FAC9FE20F2040024C278FACAFED488 +:101970000A99F407002A0E98130B14AB2FF81034B1 +:10198000CFC4EEC9FFFFEE0811FFF0C7FFFF2FE83D +:1019900008080807EA080025F2070007FAC8FED47D +:1019A000F0040324C1C8E6C8FFFF0E33C094FAC296 +:1019B000FE201093E4040024E8F4FF4CC1086A04FC +:1019C0002FC559F7E089000B1093FACEFE20FC07D3 +:1019D00000282FF7F144FF4CC0281093A80CCCA886 +:1019E000F5D1C001C2A05808C1400E34C064FACB82 +:1019F000FE20F6040024CAB8FACAFED40A99F407F5 +:101A0000002A0E98130B14AB2FF81034CFC4C8481B +:101A1000E6C8FFFF0E33C064FACAFE20F4040024B7 +:101A2000C9586A042FC559F7E08900A31093FAC971 +:101A3000FE20F2070028C988E2110002C5904D6916 +:101A400040821232C091FACBFE544059403C5008BB +:101A5000F01F0052C088FACBFE544059403C500859 +:101A6000F01F004F40085808C2500E34C064FACE30 +:101A7000FE20FC040024C278FACCFED40A99F807B0 +:101A8000002C0E98130E18AE2FF81034CFC4EEC9E8 +:101A9000FFFFEE0811FFF0C7FFFF2FE80808080757 +:101AA000EA080025F2070007FAC8FED4F004032470 +:101AB000C1C8E6C8FFFF0E33C094FACCFE201093D5 +:101AC000F8040024E8F4FF4CC1086A042FC559F754 +:101AD000E089000B1093FAC9FE20F20700282FF7C7 +:101AE000F144FF4CC0281093891A890BC438580858 +:101AF000C2500E34C064FAC8FE20F0040024C2783C +:101B0000FACAFED40A99F407002A0E98130B14ABF4 +:101B10002FF81034CFC4EEC9FFFFEE0811FFF0C755 +:101B2000FFFF2FE808080807EA080025F20700076A +:101B3000FAC8FED4F0040324C1C8E6C8FFFF0E3380 +:101B4000C094FAC2FE20E40400241093E8F4FF4C91 +:101B5000C1086A042FC559F7E089000B1093FACE2B +:101B6000FE20FC070028F144FF4C2FF7C0281093FB +:101B7000890C404C2FFC504CFAC8FE54409B10106E +:101B8000402A1600F4000000FE9FF86F800328BC76 +:101B900080032FF480032E6C80032CE480032B340D +:101BA00040495809C0508C68EDB80006C0313FF874 +:101BB0005048404C288DD832D421217D1497189656 +:101BC000129A5807C064E068008B99383FFCC2281D +:101BD0005807EE0C1700F9B901FFEFD9E10C109985 +:101BE000E0680208BA683FF8504B505C500B502C2C +:101BF000BA781A9B0C9CF01F00095BFCC044E0689B +:101C0000008B8D385807F9B90100FBF81000F1F985 +:101C10001E002E9DD82200008002F568D401129883 +:101C20001499169A189B483C780CF01F0003D802B0 +:101C30000000059880031BB8D4214B3818961697DE +:101C4000700C580CC06078685808C031F01F002F25 +:101C50004AF81037C0514AC870087007C0E84AD81F +:101C60001037C0514A8870087017C0784AA81037DA +:101C7000C0414A58700870278E68EDB80003C1E073 +:101C8000EDB80004C3E1EDB80002C1516EDB580BA2 +:101C9000C0A0EEC8FFBC103BC0400C9CF01F001F52 +:101CA00030088FD88E68E018FFDBAE6830088F18D8 +:101CB0006E488F088E68A3B8AE686E485808C0B1E9 +:101CC0008E68E2180280E0480200C0500C9C0E9B17 +:101CD000F01F00138E69F1D9C001C07030088F2841 +:101CE0006E585C388F68C068EDB90001EFF81005D8 +:101CF0008F286E485808C0618E68EDB80007C02173 +:101D0000DC2AD82A0000059880031F388003EF2CB6 +:101D10008003EF4C8003EF6C8003217C8003276CF1 +:101D20004828700C2F4C5EFC00000598D4211697B3 +:101D3000189676485808C7D0580CC060786858087C +:101D4000C031F01F003D4BD81037C0316C07C0A820 +:101D50004BB81037C0316C17C0584BA81037EDF78F +:101D600000028E6A1498EDBA0003C420ABBAAE6AC2 +:101D70006E185808E08900066F085808E08A005A73 +:101D80006EB85808C560E21A1000C0306F55C0F830 +:101D900030196E8B0C9C5D1818955BFCC0816C38FB +:101DA00059D8C4708E68A7A8AE68D8228E68EDB8DE +:101DB0000002C0916E1810156ED85808EFF8101078 +:101DC000EBD8E1156EB80C9C30090A9A6E8B5D1841 +:101DD0008E680A3CC261ABD8300C6E49AE688F1C6D +:101DE0008F09EDB8000CC251EF450054D8226E4562 +:101DF0005805C1F06E04F5DAC0028F05F9B801008C +:101E0000EFF800050A148F28C11808990A9A6EA8DD +:101E10006E8B0C9C5D181814580CE08900078E68B6 +:101E2000A7A83FFCAE68D82218055804FE99FFEF1A +:101E3000D82A000080031F388003EF2C8003EF4C6A +:101E40008003EF6CD401189B580CC0714868487B24 +:101E5000700CF01F0007D8024868700CF01F0003D8 +:101E6000D80200008003ECA880031D2C800325E825 +:101E7000000005985EFC5EFCD401483BF01F0003A7 +:101E8000D80200008003629080032640D42116957A +:101E9000F606105CECCBFFF4F01F00071897C0901B +:101EA0009915300B2F4C0C9A8F2C8F0BF01F0003C1 +:101EB0000E9CD8228002E2BC8002E8BCD42149C832 +:101EC000189670076E685808C0410E9CF01F0019E4 +:101ED000EEC7FF2830056E2C6E18C0689869EA09B5 +:101EE0001900C1202A4C2018CFA76E085808C071CD +:101EF000304B0C9CF01F00108F0CC0306E07CECB07 +:101F000030C88D38D8223008F948004C99089928F3 +:101F1000991899489958996899D899E8F9480048C2 +:101F20003FF8B8783018B868D82200008003ECA8D1 +:101F300080031F3880031E8CD421189678675807B9 +:101F4000C4714A48301599A8F94700D8F94700DC10 +:101F5000F94700E09965F01F00208D0C0C9CF01FE4 +:101F6000001E8D1C0C9CF01F001C6C093048930750 +:101F7000B268931793276C18B27793479357936778 +:101F80009389910791179127494E495B939E93AB93 +:101F9000494A495493BA93C43099B069B07591C411 +:101FA0009147915791679188919E91AB91BA8D2CF1 +:101FB00031289907B868991799273028B87899C4B3 +:101FC0009967999E99AB99BA99479957998CD82254 +:101FD00080031E7880031EBC80032B1080032AD848 +:101FE00080032AAC80032A9CD4014858169AFAC967 +:101FF000FFFC189B700CF01F0003D802000005982E +:1020000080033424D43114901291169310971895AC +:10201000F20A02425802C0310491C418580CC06040 +:1020200078685808C031F01F001F49F81037C031D8 +:102030006A07C0A849D81037C0316A17C05849C8C4 +:102040001037EBF700026E185808C03430088F18AC +:102050000496C148F01F00176E08080308160E9B6F +:10206000F00400040A9C8F04F01F0013C070E40603 +:102070000109F2000D081091C1286E146E08069C2B +:10208000089A109B0836FE9BFFE70C9AF01F000988 +:102090006E080C088F086E180C188F18029CD83226 +:1020A00080031F388003EF2C8003EF4C8003EF6C1C +:1020B0008002E736800328BCD40112981499169A3E +:1020C000189B483C780CF01F0003D80200000598CC +:1020D00080032004D42116951897F01F00234A345A +:1020E00068287016E016FFFCECC8FF91F0050105AA +:1020F000E015FF80EAC50080E045007FE08A00230C +:10210000300B0E9CF01F001A68280C08103CC1A16F +:10211000EA0B11000E9CF01F00165BFCC171300B26 +:102120000E9CF01F00136828F808010958F9E08A8E +:10213000000AA1A9911948F8700948F8F80901099D +:1021400091090E9CF01F000DD82A68280A16A1A636 +:102150009116489870090A190E9C9109F01F000702 +:10216000DA2A00008002E8CA0000059C8002EBC861 +:10217000000009A800007AD08002E8CCD42116968D +:102180001897580BE08000CAF01F004E20864CEADA +:102190006C18742EF9D8C001A1C8EC080009721B94 +:1021A000E01BFFFC1C39C1D1F6080008580CC081A7 +:1021B0006C09121612086C3B6C299729933B1099F5 +:1021C0009526A1A98D194C1972091238C0634C08C3 +:1021D0000E9C700BF01F003F0E9CF01F003FD8229A +:1021E000931B580CC030300CC1086C0EF4C5FFF8BE +:1021F0001C161C086C2E0A3EF9BC0001EDF51003FC +:10220000EBFE1A02FDF51A03F20B000E7C1EEDBE6A +:102210000000C1301608580CC0C14ABE722B2F8E68 +:102220001C3BC071973697268D2B8D3B301CC058B8 +:10223000722B7239932B97391099EC080908A1A9D0 +:102240008D19580CC671E04801FFE08B0013A3986C +:10225000F4080039722B8D398D2B97369326A348BD +:102260007419301BF6080948F3E810089518C528BA +:10227000F00916095849E08B0006F00B16062C8B66 +:10228000C2D85949E08B0005F2CBFFA5C278E049DE +:102290000054E08B0006F00B160C292BC1F8E04926 +:1022A0000154E08B0006F00B160F289BC178F00B51 +:1022B0001612E0490554E088001137EBC0F8000021 +:1022C0008002E8CA0000059C000009A400007ACC46 +:1022D000800320D48002E8CC284BF40B003C782902 +:1022E0001839C0E17418A34B301CF80B094BF1EB03 +:1022F000100B1298951BC0A872291839C060721A69 +:10230000E01AFFFC1438CF9372388D388D2993363C +:1023100091260E9CF01F0002D82200008002E8CC1B +:10232000D431203D14941895169774285808E080ED +:10233000014A9668EDB80003C04176485808C0C10C +:102340000E9B0A9CF01F00A1C0708E68A7A8AE6803 +:1023500030988B38C3598E6368000696E2160002E7 +:10236000C2103003E06204000696C04860036016A5 +:102370002F805806CFC0E0460400EC091780E4091E +:1023800017B0069A6EA86E8B0A9C5D181816580C2A +:10239000E08A0114682818188928E08001141803BD +:1023A000CE9BE7D3C001C07050060C930C91501522 +:1023B0000892CA0806960891C048600360162F80EC +:1023C0005806CFC08E686E241099E2190200C570BD +:1023D0000836C4531099E2190480C4106E4B6E097C +:1023E000161950096E59109CF209001A3028F40889 +:1023F0000C08FAE9000410944009E21C04002FF9CB +:102400000C091238F2041730580CC110089B0A9CB2 +:10241000F01F006F1892C150400A6E4BF01F006D04 +:102420008E68E018FB7FA7B8AE68C0E8089A0A9CDF +:10243000F01F00691892C0816E4B0A9CF01F006764 +:1024400030C88B38CBA8400A4009E80A010AE409E1 +:1024500000088F548F2A8F088F420C940836EC04A2 +:102460001730069B089A6E0CF01F005D6E08080876 +:102470008F086E2808180C948F28C30808365FBA96 +:102480006E0C6E48103C5FB8F5E80008F2081800C2 +:10249000C0E0069B089AF01F00526E0808080E9BC9 +:1024A0008F080A9CF01F004FC190C8786E591236F1 +:1024B000C0A36EA8069A6E8B0A9C5D181894E089DA +:1024C000000EC7B80C9A069BF01F00456E080C085A +:1024D0000C948F086E280C188F28622808188328FF +:1024E000C71008160803C6DB6003601130082F8090 +:1024F00050085801CFA0400A580AC181029A30AB57 +:10250000069CF01F0039F9B80101F9D8E106EDD3B6 +:10251000E116F9B90101FBF91A00F9B80001E3D895 +:10252000E006F9B80001FBF80A000236EC04178057 +:10253000E20417B06E596E25F20500050A345F9A61 +:102540006E0C6E48103C5FB8F5E80008300AF408DD +:102550001800C0E0069B0A9AF01F00216E080A08C6 +:102560000E9B8F08401CF01F001FC180C2681234F0 +:10257000C0A56EA8069A6E8B401C5D181895E08960 +:10258000000EC1B8089A069BF01F00156E080808D7 +:1025900008958F086E2808188F280A16C0710E9BA0 +:1025A000401CF01F0010C091500664280A188528AE +:1025B000C0900A110A03C9EB8E68A7A8AE683FFC59 +:1025C000C028300C2FDDD83280031C388002E2BCDA +:1025D0008002E7368002E8E88003217C8002E87E02 +:1025E00080031D2C800328A4D43130051893169045 +:1025F0000A91F01F00123FF2E6C7FF28C1786E264D +:102600006E142F46C0D88C08E2081900C0808C18C0 +:10261000E4081900C040069C5D1018452A462014A5 +:10262000ECCB000C5804CF046E075807CE91F01F76 +:1026300000040A9CD832000080031E7480031E76BA +:10264000D43130051691F8C7FF280A92F01F001008 +:102650003FF3C1686E266E142F46C0C88C08E4088C +:102660001900C0708C18E6081900C0305D111845BB +:102670002A462014ECCC000C5804CF146E075807DF +:10268000CEA1F01F00040A9CD832000080031E7403 +:1026900080031E76D401201D4848189B1A9A700C9E +:1026A000F01F00032FFDD80200000598800326B01C +:1026B000D431169414921895F01F00204A08700720 +:1026C0005807C050300633DA0C98C0780A9CF01FC7 +:1026D000001D0E9CD8322FF6E8060709F0091800F5 +:1026E0005F1BF40918005F191669F0091800CF4143 +:1026F000C1A8029C0C9A089BF01F0013C1216E0117 +:102700000C010388E6081800C0C148D870080A9C6C +:102710001017A3478507F01F000BE2CCFFFFD8324C +:102720002FC7C02833D36E015801CE410A9CF01F39 +:102730000005029CD8320000800361BC000009B093 +:10274000800361BE8002EDE6E04C00FFE0880003FC +:102750005EFD48487008F00C070CE21C00085EFCA7 +:102760000000049C481C5EFC8003EF8CD42120FDFB +:10277000966816971896E2180002C3C1967BF00B74 +:102780001900C0551A9AF01F002AC0F48E650A98E5 +:10279000ABB8E2150080AE683004E0680400F9B51B +:1027A0000140F0051700C1B84018E218F000E048F9 +:1027B00020005F04E0488000C0D16EB949D81039CC +:1027C000C0918E68E0650400ABA8EF450050AE688C +:1027D000C0688E68E0650400ABB8AE680A9B0C9CCC +:1027E000F01F00158E68C0D1EDB80009C1E0A1B896 +:1027F000AE68EEC8FFB98F488F0830188F58C1589F +:10280000A7B88F4CAE688F5548C88F0C8DA8580458 +:10281000C0C08E7CF01F000AEFF81206F9B9010162 +:10282000F1D9E138EFF81C062F1DD822800362A8E9 +:1028300080032AAC8002E2BC80031E788002F1682B +:10284000D42118971096580AC041149B3019486A31 +:10285000F01F00065BFCC06130088D08E068008A4C +:102860008F38D82280037E208003286C201D5809D1 +:102870005F09580BFA0B1700580A5F18F3E80008B5 +:102880003009F2081800C0303FECC0B8580AC03117 +:10289000149CC078158997091589F00918005F1CE8 +:1028A0002FFD5EFCF7DBC008C068201A19881638B7 +:1028B0005E0C2FFC580ACFA15EFAD703D4211697DD +:1028C0001896580CC06078685808C031F01F00385E +:1028D0004B881037C0316C07C0A84B781037C03117 +:1028E0006C17C0584B581037EDF7000230088F189E +:1028F0008E68EDB80005C590EDB80002C1A0EDB836 +:102900000004C060A7A8AE6830988D38C4D8EDB870 +:102910000003C0B10E9B0C9CF01F0029C4618E689F +:102920008F6CA3D88F2CAE688E68A3A8AE68C14800 +:102930006EDB580BC110EEC8FFBC103BC0400C9CB6 +:10294000F01F0020300C6F088FDC8F185808C04033 +:102950006EF88F08D8226E485808C0510E9B0C9C08 +:10296000F01F00198E68F1D8C002C0604978498B09 +:10297000700CF01F00186E4A6E980C9C8F0A6E59EE +:102980006E8B5D188E688F1CADD8AE68580CE08ACF +:102990000003D82A580CC041A5B8AE68C058A7A8F3 +:1029A000AE6830088F18DC2ADC2A000080031F384C +:1029B0008003EF2C8003EF4C8003EF6C80031D2C11 +:1029C0008003217C8003276C8003ECA8800329D43A +:1029D00080032640D4019868E21800095898C02066 +:1029E000D80AF01F0002D80280031E44D431189E7A +:1029F0001738E048005EC030300AC0381738301A47 +:102A00003009FC090B0A2FF9E0490100CFB1580841 +:102A1000C041F6CC0001D832149632D4EC16000135 +:102A2000300735D5C0381498129BFC080B06F6C940 +:102A3000FFFF178A129CE80A1800C090EA0A1800E3 +:102A4000C1E0EE0A1800CF01169CD832138C103C5E +:102A50005F53E04C005D5F0AE7EA100AEE0A1800D7 +:102A6000C03032D8CE2BF0CAFFFFFC0A000A14C6D1 +:102A70002FF81838CFD52FEB2FE9CDCBD8321498BB +:102A8000F5DBC01FF00C1100104CFC187FF0F5ECCA +:102A900013FCF00C010CBF9C5EFCD703D401967BA9 +:102AA000F01F0002D8020000800353E0D4211697E3 +:102AB000967BF01F00098E681099ADC95BFCEFF999 +:102AC0000C06EFFC1A15E0691000F1D9E138EFF8B7 +:102AD0001C06D822800362D4D421966816971495D8 +:102AE0001294E21801001896C0603029300A967BD3 +:102AF000F01F00068E68ADC808990A9A8E7B0C9C60 +:102B0000AE68F01F0003D822800362D4800353B460 +:102B1000D4211697967BF01F0007C0656F581808E0 +:102B2000EF480054D8228E68ADC8AE68D8220000A5 +:102B30008003694CD431208D4DB8500B7008507C07 +:102B4000502A1295501816970F36401AF4060704AB +:102B5000E2140008CFA1E046002DC0410F3630142A +:102B6000C058E046002BC0210F3658055F085905B4 +:102B70005F0A3009F1EA100AF20A1800C1D0E046F3 +:102B80000030C1210F8A358B378CF60A18005F0B95 +:102B9000F80A18005F0A144BF20B1800C0500F9689 +:102BA00031052FE7C0985808C070E0460030F9B5ED +:102BB0000008F9B5010A5804C0713FF0E061FFFF59 +:102BC000EA117FFFC0483000FC118000EA03141FA7 +:102BD0000A980699009A029BF01F00340699505AF1 +:102BE0000A98009A029BF01F0032069C14981699CE +:102BF000300A30003001149E109212934019F206F0 +:102C0000070BF3DBC001F9B90137F9B90057506977 +:102C1000ECC80030EDBB0002C0804069F7DBC002A9 +:102C2000EC090108580BC2D00A38C2B40430E601DE +:102C300013005FB9F3EA13FAFC0A1800C1F104307B +:102C4000E60113005F09405A14385F9AF5E900095C +:102C5000FC091800C131E005064AEA010249504862 +:102C6000F8000349BF58F20B000B5038FAE0000C93 +:102C70001400E20B0041301AC0283FFA0F36CBFB9C +:102C80005BFAC1715804C0713FF0E061FFFFEA11C7 +:102C90007FFFC0483000FC11800032284079933813 +:102CA000C10800000000049C800373408002D99892 +:102CB0005804C07030083009F0000100F2010141F1 +:102CC00040285808C0B0580AF9B801FFEFD8E10A07 +:102CD000FBFA1A00402940089308009A029B2F8DA6 +:102CE000D8320000D431209D4DE816927008508CE7 +:102CF000505A1295504816970F36404EFC0607035F +:102D0000E2130008CFA1E046002DC0410F3630137A +:102D1000C058E046002BC0210F3658055F08590502 +:102D20005F0A3009F1EA100AF20A1800C1D0E04641 +:102D30000030C1210F8A358B378CF60A18005F0BE3 +:102D4000F80A18005F0A144BF20B1800C0500F96D7 +:102D500031052FE7C0985808C070E0460030F9B53B +:102D60000008F9B5010AEA04141F0A9808993FFA05 +:102D70003FFBF01F003D0899502B503A0A983FFA4C +:102D80003FFBF01F003A300B300830094041E206AB +:102D9000070EE1DEC001ECCC00305800F9B101377C +:102DA000F9B100571C90E2100004C061EC01010C65 +:102DB000FDDEC002C3700A3CC354FAE000080038CC +:102DC000E20913005FBE3000FDEB13FBE00B1800BF +:102DD000C261FAE00008143C5F9E0038E20913006B +:102DE0005F0B3000FDEB000BE00B1800C181F0051C +:102DF0000640EA09024BFAE10000E808034BF6013D +:102E00000001507C5001BF5CFAE00000506C301BA8 +:102E1000FAE800180008F2010049C0283FFB0F360D +:102E2000CB6B5BFBC071322840803FF981383FF8A3 +:102E3000C0985803C07030043005E8080108EA095A +:102E40000149405E580EC080580BF9BA01FFEFDA15 +:102E5000E102405A9502109A129B2F7DD832000051 +:102E60000000049C8002D99880037340D431203D37 +:102E70004C48502C70011698113EE20E0705E215E1 +:102E80000008CFB1E04E002DC041113E3015C058B2 +:102E9000E04E002BC021113E58095F0C59095F0616 +:102EA0003007F9E61006EE061800C1E0E04E0030EB +:102EB000C131118635843783E80618005F04E606C1 +:102EC00018005F06E9E61006EE061800C050119ED5 +:102ED00031092FE8C098580CC070E04E0030F9B9A5 +:102EE0000008F9B9010A3FF3E6090D023007500363 +:102EF0000E9C0E93E20E0704E1D4C001F9B0013735 +:102F0000F9B000575010FCC600300890E2100004E1 +:102F1000C0814010E9D4C002FC0001065804C1C0C1 +:102F20001236C1A4043C5FBEFDE713FEE60E180096 +:102F3000C101043C5F0E40070E365F97EFEE000EB6 +:102F4000E60E1800C061B33C3017EC0C000CC02832 +:102F50003FF7113ECD0B5BF7C061322940200E9C3C +:102F60008139C0485805FBBC0100580AC070580799 +:102F7000F9B901FFF1D9E10B950B2FDDD832000033 +:102F80000000049CD421169776DBEEC8FFBC103BF2 +:102F9000C171E06B0400F01F0015C250E06804002E +:102FA0008FDC8FE8EF380046F8CCFC03B8A8EF3888 +:102FB0000045B898EF380044B8888F0CC1386EE5EA +:102FC000EA041501089AF01F000A1896C0C00A9A70 +:102FD000189BF80500050A9CF01F00068FE48F057A +:102FE0008FD6D82ADC2A00008002E2BC8002E8E802 +:102FF0008002E736D4211697149618955BFBC650CD +:10300000580CC06078685808C031F01F00314B1868 +:103010001036C0316A06C0A84AF81036C0316A16A8 +:10302000C0584AE81036EBF600028C68A5D8AC68A8 +:10303000EDB80002C140EDB80004C461EDB8000372 +:10304000C0B10C9B0A9CF01F0026C3E18C688D6CFC +:10305000A3D88D2CAC688C68A3A8AC680E946CD8EF +:103060005C545808C1006C196CE81039C0650A9CA2 +:103070000C9BF01F001CC2816C0820188D08B084C6 +:103080000897C0C86C495809C0C06C081238E0885D +:10309000000911770837C0518D086C182FF8C12826 +:1030A0006C18ED4800406C088DF8ECC8FFBC8DD85A +:1030B00030388DE8ECC8FFBAED6400468D080897FB +:1030C00030188D18C0283FF70E9CD82280031F3877 +:1030D0008003EF2C8003EF4C8003EF6C80031D2CEA +:1030E00080032F84D431208DFAC4FFBC504B682E4E +:1030F000505812967C0B7005506E580BF40B17004D +:103100006803681140493008C2C92FFB325C178A36 +:10311000F80A18005F1EF00A18005F1CFDEC000C96 +:10312000F00C1800CF31580AE0800129300C3FFA2A +:103130001890503A18941892F80C003C1697507C4E +:103140004CDC0F3AF80A070E407C1C0C4CBEFC0C01 +:10315000070E201E500E4CAEFC0C070C507C400C91 +:10316000587CE08B00F84C7EFC0C032F368BF60A63 +:103170001800E08000F0371BF60A1800C07034CB4E +:10318000F60A1800C051A3B4CE58A5B4CE380F8BA0 +:1031900036CAF40B1800C051A5B4EECBFFFFCDB872 +:1031A000A5A4CD88EBD5C005367CF80A1800E08BC5 +:1031B0000027365BF60A1800C48234FBF60A1800B2 +:1031C000C480E08B000C345BF60A1800C3E0347B4B +:1031D000F60A1800C3A0344BC088358BF60A1800D5 +:1031E000C2C0E08B0007355BF60A1800C351C31854 +:1031F000363BF60A1800C2F0364BC0E8370BF60A29 +:103200001800C250E08B000D36EBF60A1800C1F032 +:10321000E08B0014369BF60A1800C1E1C0E8375B6A +:10322000F60A1800C0A0378BF60A1800C060373BBA +:10323000F60A1800C111C0B8EDB40004C0A0EDB486 +:103240000005C0913020C0883040C0683030C04890 +:103250003010C0283000403B5BFBC040E20B09202F +:10326000C7985860E08B00776C0AEACCFFFF486E85 +:10327000FC00032F8003F2708003F1D48003F16817 +:103280008003EFC88003EFE8F4CBFFF88D0BF4EA7E +:103290000000E605083AC0F8F4CBFFFC8D0B740A79 +:1032A000E605093AC088F4CBFFF88D0BF4EA00007C +:1032B000E605083A0E9B1895C4E8620A5BFAC0B1AD +:1032C00050195028E06A0080300B029CF01F004D1E +:1032D00040284019E4CC00010E9B503CF20C0C49F4 +:1032E000C3A8620A5BFAC0B150195028E06A008096 +:1032F000300B029CF01F0043402840192012300A76 +:103300000E9BE202092AF2020C49C25816976C0A77 +:10331000F4CBFFFC8D0B740A0E9BE605093A2FF5E2 +:10332000C1A8F4C20030C068E40200222FF7F40202 +:1033300000120F8A580AC0E0230A589AFE98FFF636 +:10334000C0982FF70F8A580AC050230A589AFE983F +:10335000FFFA0E9B407C30BAF40C1800FE91FEEE92 +:103360004042178C0A325F4AF00C18005F1CF9EAE1 +:10337000000AF00A1800FE91FECB3008404E178A72 +:10338000E2050021F00A1800FC091710E6050038D4 +:10339000069EC2A8620A583AC1E0E0890007581A9E +:1033A000C1A0582AC181C058585AC0C0C0B5C13840 +:1033B0006C0AF4CCFFF88D0CF4E20000F0E300009E +:1033C000C1086C0AF4CCFFF88D0CF4E20000F0E3C5 +:1033D0000000C0786C0AF4CCFFFC8D0C740A910AD2 +:1033E0002FF52F882FC11235FE9AFFD61C9340521D +:1033F000406E85059D0B404BE60B003C2F8DD8326F +:103400008002E8BCD421149774285808C04195184C +:10341000109CD822F01F000330088F188F28D82264 +:1034200080032320D431FACD06BC5109169114979C +:103430001895F01F0056780C50CC5805C0706A687B +:103440005808C0410A9CF01F00524D281031C0316D +:103450006A01C0A84D081031C0316A11C0584CF83B +:103460001031EBF100028268EDB80003C041624800 +:103470005808C071029B0A9CF01F0049E0810F941C +:1034800082681099E219001A58A9C3D18279300ACA +:10349000F4091900C385A1D8FB5805D06288FB4800 +:1034A00005E462A8FB4805ECFAC8FFBCFB4805D45C +:1034B000FB4805C4E0680400FB4805D8FB4805CC80 +:1034C0003008FB5905D20E9A4109FAC7FA3CFB486D +:1034D00005DC0A9C0E9BF01F003350BCC0950E9B70 +:1034E0000A9CF01F003140BEF9BE01FF50BEFB0830 +:1034F00005D0EDB80006E0810F598268A7A8A26840 +:10350000E08F0F543008FB4806B4FB480690FB4898 +:10351000068CFB4806B03008300950A75078FAC432 +:10352000F9E03FF85059FB440688FB480544129CDB +:10353000506950D950E950B9129740A2325A300818 +:10354000C0282FF20589F00918005F1BF409180044 +:103550005F19F3EB000BF00B1800CF4140ABE40B0D +:103560000106C300FAF806900C08890BFB48069088 +:103570008916FAF8068C2FF8FB48068C5878E089F3 +:1035800000152F84C1C800008003276480031F3802 +:103590008003EF2C8003EF4C8003EF6C80031C381A +:1035A0008003342480031D2CFACAF978029B0A9CFC +:1035B000F01F0071E0810EF4FAC4F9E040BA0C0A81 +:1035C00050BA05893008F0091800E0800ED930099A +:1035D000FB6806BB0E96E4C8FFFF3FFE50945041C7 +:1035E0000E940491508950A8502E50391293129085 +:1035F00010970A92C0783FFC0A97502CC038300BC5 +:10360000503B0F38C0281290F0C90020E049005804 +:10361000E08B0A4A4D9AF409032F50A750800C976B +:103620000495089602924D6940941090404150D9FB +:10363000E08F08AA3008FB3906BBF0091800CE213C +:103640003208C6E8A1A3CDEB0F89F2C80030589824 +:10365000E08B001DEEC8FFFF300B2309F60B002B9B +:10366000F20B001B1139F2CA0030589AFE98FFF78E +:10367000E0490024CC51E04B0020E0890E90201B53 +:10368000FAF906B4123BC095C108FAF906B4ECCABF +:10369000FFFF1236C1F5C268FACEF9441097FC0B51 +:1036A000003BF6F0FD88C3581097FAC8F9501AD8B5 +:1036B000FAC8FAB81AD8FAC8FBB4029A1AD8049C05 +:1036C000FAC8F940FAC9FFB4F01F002E2FDD7800C8 +:1036D000C208FACCF9441496F8040038F0F0FD88DA +:1036E000C188410859F9E0890011F0CBFFFC510B6A +:1036F0007000FACBF944F6090038F140FD882FF943 +:103700001496FB4906B4C058700014962FC851088F +:103710005800FE94FF785C30A3A3C74B32B8FB6817 +:1037200006BBC70B0F38E048002AC0303009C80874 +:103730000F88F0C900305899E08B0026EEC5FFFFD6 +:10374000300B2308F60B002BF00B001B0B38F0C9D5 +:1037500000305899FE98FFF7E0480024FE91FF5191 +:10376000E04B0020E0890E1B201BFAF806B4103B4A +:10377000C115C188800334048003F0048003EDD0B8 +:10378000800330E4FAFA06B4ECC9FFFF1436C1F541 +:10379000C288FACAF944F40B003BF6FBFD88502BB3 +:1037A000C3C8FAC8F9501AD8FAC8FAB81AD8FAC869 +:1037B000FBB4029A1AD8049CFAC8F940FAC9FFB4BB +:1037C000F01F017B2FDD780C502CC27812960E95DD +:1037D000FAC9F944F2040038F0F8FD885028C1D83D +:1037E000410859FAE0890014F0CBFFFC7008510B36 +:1037F0005028FAC6F944402EEC0A0038F14EFD88F4 +:103800002FFA0E95FB4A06B41296C078700C0E95EE +:103810002FC8502C12965108402B580BFE95FEEDE8 +:103820000A97CF0AF20900290F38F4090019F0CAE3 +:103830000030589AFE98FFF83FFAF20A0C495029D6 +:10384000CE4AA7B3CDFA30092308F2090029F009BE +:1038500000190F38F0CA0030589AFE98FFF7E04878 +:103860000024FE91FED2E0490020E0890D98F2C4C8 +:10387000000130195039CC6AA3B3CC4AA7A3CC2A93 +:103880000F8836CEFC081800C0412FF7A5B3CBAA8D +:10389000A5A3CB8AA5B3CB6A50A750800C971090F4 +:1038A00008960495409402920E994041FAF806B4A5 +:1038B000403C580CC1D01036C064FACBF944F6062F +:1038C0000036C1D8FAC8F9501AD8FAC8FAB81AD8C6 +:1038D000FAC8FBB41AD8FAC8F940FAC9FFB4049A76 +:1038E0000C9B0A9CF01F01322FDD19B8C2282FF75C +:1038F0001039C084FACAF944F4060036ED38FD8B5D +:10390000C188410959F8E0890012F2CAFFFC510A46 +:103910007209FAC6F944EC08003A2FF8F549FD8817 +:10392000FB4806B4F1D9C008C04813B82FC95109E3 +:10393000FB680660300E30083012FB6806BB502E64 +:10394000E08F08C450A750800C9704950896029207 +:10395000409410904041A5A3C0A850A750800C9758 +:10396000049508960292409410904041EDB30005F2 +:10397000C511FAF806B4403C580CC1E01036C064DA +:10398000FACBF944F6060036C208FAC8F9501AD83C +:10399000FAC8FAB80C9B1AD8FAC8FBB41AD8FAC9F4 +:1039A000FFB4FAC8F940049A0A9CF01F01012FDD08 +:1039B000781B7809C2B8EECAFFFF1037C0B4FAC945 +:1039C000F9441497F2060036ECFBFD8CECF9FD8807 +:1039D000C1D8410959F8E0890014F2CBFFF8510B26 +:1039E000FAC6F944721BEC08003C7209F94BFD8CD5 +:1039F000F949FD882FF81497FB4806B4C078F2C83F +:103A0000FFF8721B1497510872091698FAE9000022 +:103A1000CAE8EDB30004C171FAF806B4403E580E8E +:103A2000C0801036C694FACCF944F8060036C8288F +:103A3000EECAFFFF1037E0840081FACBF944F606A6 +:103A40000036C778EDB30006C4B1FAF806B4403CBE +:103A5000580CC1D01036C064FACBF944F6060036D3 +:103A6000C1F8FAC8F9501AD8FAC8FAB81AD8FAC878 +:103A7000FBB41AD8FAC8F940FAC9FFB4049A0C9BEF +:103A80000A9CF01F00CB2FDD9818C268EECAFFFF1A +:103A90001037C094FAC9F9441497F2060036ED08BD +:103AA000FD8AC1A8410959F8E0890013F2CBFFFC57 +:103AB000510B7209FAC6F944EC08003B2FF8F7499C +:103AC000FD88FB4806B41497F1D9B010C05892187D +:103AD00014972FC951095018BF585008C488FAF8D4 +:103AE00006B4403C580CC1D01036C064FACBF9443F +:103AF000F6060036C1F8FAC8F9501AD8FAC8FAB86A +:103B00000C9B1AD8FAC8FBB4049A1AD80A9CFAC8B3 +:103B1000F940FAC9FFB4F01F00A62FDD780BC248A8 +:103B2000EECAFFFF1037C094FAC9F944F206003616 +:103B30001497ECFBFD88C188410959F8E089001110 +:103B4000F2CBFFFC510BFAC6F944720BEC080039BA +:103B5000F34BFD882FF81497FB4806B4C058720B3E +:103B600014972FC95109501BBF5B500BFAEA000094 +:103B7000580A5C2BC0E43008FAEA00003009F00A69 +:103B8000010AF20B014B32D8FAEB0000FB6806BBCE +:103B90003018E08F071150A750800C9704950896B5 +:103BA00002924094109040410E99EDB30003C4116D +:103BB000FAF806B4403A580AC1901036C645FAC819 +:103BC000F9501AD8FAC8FAB81AD8FAC8FBB40C9B3C +:103BD0001AD8049AFAC8F940FAC9FFB40A9CF01F2F +:103BE00000742FDD78165076C4882FF71039C0C4C2 +:103BF000FACEF944FC060036ECFCFD8C507CECF669 +:103C0000FD885056C668410959F8E0890010F2CA8B +:103C1000FFF8721B510A7209FACAF944507B5059D5 +:103C2000F4080039405B407AC47872185078C4C8F0 +:103C3000FAF806B4403E580EC2301036C094FACCA2 +:103C4000F944F8060036ECFBFD8C507BCD9BFAC89E +:103C5000F9501AD8FAC8FAB8049A1AD8FAC8FBB4B4 +:103C60000C9B1AD80A9CFAC8F940FAC9FFB4F01F95 +:103C700000502FDD781A507A780C505CC2A82FF7CC +:103C80001039C094FAC9F944F2060036ECF8FD8CFC +:103C90005078CB6B410959F8E0890015F2CAFFF85A +:103CA00072167209510A5059FACEF9445076FC083E +:103CB0000039405B0C9AF2EBFD882FF8FB4806B404 +:103CC000C088721C507CF2C8FFF851087209505924 +:103CD000405B407AF01F00371896C1503008300919 +:103CE000405B407AF01F0034C04032D8FB6806BB0E +:103CF0004B284B36A7D3E0400047F00617A03032E0 +:103D0000E08F06E7405B407AF01F002EC0C05026CF +:103D10004AD84AE6A7D3E0400047F00617A0303261 +:103D2000E08F06DD402A5BFAC04130695029C11896 +:103D3000E04000475F09E04000675F08F3E81008D3 +:103D4000F8081800C06040285808F9B80001502849 +:103D500040784059FAE90694A9A3FAF8069458085D +:103D6000C065405E300C506E509CC078405B32DACB +:103D7000EE1B8000509A506BE04000465F09E04027 +:103D800000665F08F3E810085048C0404022303910 +:103D9000C228E04000455F09E04000655F084046FA +:103DA0001049EC091800C1314022C148800330E4B9 +:103DB0008003697880036FC08003F2408003F2447F +:103DC00080032A7E8003F2488003F24C402EFCC21E +:103DD000FFFF3029FAC8F95C1AD8FAC8F9541AD882 +:103DE000FAC8F94C0A9C1AD80498409B40AAF01FC4 +:103DF00001E0E04000475F19E04000675F18189657 +:103E00002FDDF3E80008C041EDB30000C301EC0270 +:103E1000000C503C404B580BC1500D893308F00941 +:103E20001800C0B130083009406B407AF01F01D152 +:103E3000FBB20001FBF20BAB403AFAF806AC100AF9 +:103E4000503A406B30083009407AF01F01CAC090E8 +:103E50004039FB4906A4C05810C9FB4806A4C02835 +:103E60003309FAF806A4403E1C38CF73E0400047FF +:103E70005F09E04000675F08F3E81008FAF906A45C +:103E80000C1950695808C0B0FAF806AC5BD8C05598 +:103E9000402C1838E08A006A2020C058E0400065B5 +:103EA000E0890046FAFB06ACFB60069C201BFB4B3E +:103EB00006ACC0475C3B32D8C02832B8FB68069DD0 +:103EC000589BE08A001DFAC9FA3530AA12980E9C58 +:103ED0000C92F60A0C060E9B2D0B10FB0C9B5896B1 +:103EE000FE99FFF92D0B1897049610FBFACAF96298 +:103EF000C038113B14CB1238CFD3C0982D0B3308E8 +:103F0000FB6B069FFB68069EFACAF960FAC8F96463 +:103F1000F408010850E81092406B1602581BE08923 +:103F20000005EDB30000C3512FF2C338E040006636 +:103F3000C1C1FAF206AC5802E08A000C402A580AC5 +:103F4000C041EDB30000C2512FF240291202C0B8A7 +:103F500040285808C061EDB30000C0303012C1984D +:103F600040222FE23660C158FAF206AC406E1C3295 +:103F7000C065EDB30000F7B200FFC0A8E40811026D +:103F8000406C5802F00217A0F9B20901180236700D +:103F9000409B580BE080059D32D8FB6806BBE08F44 +:103FA000059C50A704950C970292089640414094B6 +:103FB0000E99EDB30005C481FAF806B4403E580EE0 +:103FC000C1D01036C064FACCF944F8060036C1D826 +:103FD000FAC8F9501AD8FAC8FAB8049A1AD8FAC81E +:103FE000FBB40C9B1AD80A9CFAC8F940FAC9FFB472 +:103FF000F01F01612FDD780AC2082FF71039C08445 +:10400000FACBF944F6060036ECFAFD88C16841099E +:1040100059F8E0890010F2CAFFFC510AFAC6F944C7 +:10402000720AEC080039F34AFD882FF8FB4806B401 +:10403000C048720A2FC9510940BE1C98951EBF582E +:104040009508FE9FFA7CEDB30004C480E2130040A3 +:10405000C450FAF806B4403C580CC1D01036C064C5 +:10406000FACBF944F6060036C1D8FAC8F9501AD886 +:10407000FAC8FAB8049A1AD8FAC8FBB40C9B1AD832 +:104080000A9CFAC8F940FAC9FFB4F01F013B2FDDC2 +:10409000780AC2082FF71039C084FACAF944F40626 +:1040A0000036ECFAFD88C168410959F8E089001032 +:1040B000F2CAFFFC510AFAC6F944720AEC08003948 +:1040C000F34AFD882FF8FB4806B4C048720A2FC98E +:1040D000510940BEB40EFE9FFA32FAF806B4403CD5 +:1040E000580CC1D01036C064FACBF944F60600363D +:1040F000C1D8FAC8F9501AD8FAC8FAB8049A1AD826 +:10410000FAC8FBB40C9B1AD80A9CFAC8F940FAC941 +:10411000FFB4F01F01192FDD780AC2082FF71039FC +:10412000C084FACAF944F4060036ECFAFD88C16886 +:10413000410959F8E0890010F2CAFFFC510AFAC699 +:10414000F944720AEC080039F34AFD882FF8FB485D +:1041500006B4C048720A2FC9510940BE950EFE9F91 +:10416000F9EE50A750800C9704950896029240945F +:1041700010904041A5A3C0A850A750800C9704956B +:1041800008960292409410904041EDB30005C5D1CD +:10419000FAF806B4403C580CC2601036C0A4FACB02 +:1041A000F944F6060036ECE8FD88FAE90000C1881B +:1041B000FAC8F9501AD8FAC8FAB8049A1AD80C9B57 +:1041C000FAC8FBB40A9C1AD8FAC8F940FAC9FFB475 +:1041D000F01F00E92FDDF8EA0000FAEB00003008DC +:1041E000E08F03E7EECAFFFF1037C0B4FAC9F94405 +:1041F0001497F2060036ECEAFD88FAEB0000C1885D +:10420000410959F8E0890018F2E60000F2CBFFF806 +:10421000FAE70000510BFAC6F944EC080039FAE657 +:104220000000F2E7FD882FF81497FB4806B44038E9 +:10423000E08F03BFF2E600004038FAE700002F8964 +:1042400014975109E08F03B5EDB30004C161FAF88A +:1042500006B4403E580EC0801036C674FACCF944FD +:10426000F8060036C808EECAFFFF1037C7F4FACBCD +:10427000F944F6060036C768EDB30006C4A1FAF8A3 +:1042800006B4403C580CC1D01036C064FACBF94497 +:10429000F6060036C1F8FAC8F9501AD8FAC8FAB8C2 +:1042A0001AD8FAC8FBB41AD8FAC8F940FAC9FFB448 +:1042B000049A0C9B0A9CF01F00B02FDD9818C2686E +:1042C000EECAFFFF1037C094FAC9F9441497F206FA +:1042D0000036ED08FD8AC1A8410959F8E0890013AC +:1042E000F2CBFFFC510B7209FAC6F944EC08003B13 +:1042F0002FF8F749FD88FB4806B41497F1D9B010A0 +:10430000C058921814972FC951095C785018C46886 +:10431000FAF806B4403C580CC1D01036C064FACB51 +:10432000F944F6060036C1F8FAC8F9501AD8FAC8A6 +:10433000FAB80C9B1AD8FAC8FBB4049A1AD80A9C8B +:10434000FAC8F940FAC9FFB4F01F008B2FDD780BD3 +:10435000C248EECAFFFF1037C094FAC9F944F2060A +:1043600000361497ECFBFD88C188410959F8E089B3 +:104370000011F2CBFFFC510BFAC6F944720BEC08AA +:104380000039F34BFD882FF81497FB4806B4C0584A +:10439000720B14972FC95109501B300E500E1C98E8 +:1043A000E08F030750A750800C970495089602925F +:1043B000409440410E99FAF806B4403C580CC1D0E4 +:1043C0001036C064FACBF944F6060036C1D8FAC8F4 +:1043D000F9501AD8FAC8FAB81AD8FAC8FBB41AD8D9 +:1043E000FAC9FFB4FAC8F940049A0C9B0A9CF01F62 +:1043F00000622FDD7809C2182FF71039C084FACA7D +:10440000F944F4060036ECF9FD88C178410959F801 +:10441000E0890010F2CAFFFC510AFAC6F944720999 +:10442000EC08003AF549FD882FF8FB4806B4C0585F +:10443000F2C8FFFC510872093308FB6806B83788D8 +:10444000300EFB6806B94CDC5019A1B3500E50DC9D +:1044500030283780E08F02AD50A750801090300890 +:10446000FB6806BB0C970495089602924094404165 +:104470000E99FAF806B4403B580BC1D01036C06410 +:10448000FACAF944F4060036C1D8FAC8F9501AD865 +:10449000FAC8FAB81AD8FAC8FBB40C9B1AD8049A0E +:1044A000FAC8F940FAC9FFB40A9CF01F00332FDDA7 +:1044B0007806C2082FF71039C084FAC9F944F20609 +:1044C0000036ECF6FD88C168410959F8E089001012 +:1044D000F2CAFFFC510A7206FACEF944FC08003910 +:1044E000F346FD882FF8FB4806B4C04872062FC972 +:1044F0005109402C580CC105189A300B0C9CF01F28 +:104500000020E08002E9F8060102402B1632E08923 +:1045100002E3E08F02DE300A0C9C502AF01F0019E3 +:104520001892E08F02DC50A750800C9704950896F3 +:104530000292409410904041A5A3C0A850A750807B +:104540000C97049508960292409410904041EDB368 +:104550000005C611FAF806B440395809C2C0103631 +:10456000C124FAC8F944F0060036C2E88003552C8D +:1045700080036F32800330E48003EDE4800328A4DD +:104580008002EDD0FAC8F9501AD8FAC8FAB81AD889 +:10459000FAC8FBB41AD8FAC8F940FAC9FFB4049AA9 +:1045A0000C9B0A9CF01F00C82FDDF8E80000FAE918 +:1045B0000000C2E8EECAFFFF1037C0B4FAC8F944E1 +:1045C0001497F0060036ECEAFD88FAEB0000C2080A +:1045D000410959F8E0890016F2E60000F2CBFFF835 +:1045E000FAE70000510BFAC6F944EC080039FAE684 +:1045F0000000F2E7FD882FF81497FB4806B4C08846 +:10460000F2E600002F89FAE70000510914973018EC +:10461000E08F01CFEDB30004C161FAF806B4403E6B +:10462000580EC0801036C674FACCF944F80600362D +:10463000C808EECAFFFF1037C7F4FACBF944F606F4 +:104640000036C768EDB30006C4A1FAF806B4403CD2 +:10465000580CC1D01036C064FACBF944F6060036C7 +:10466000C1F8FAC8F9501AD8FAC8FAB81AD8FAC86C +:10467000FBB41AD8FAC8F940FAC9FFB4049A0C9BE3 +:104680000A9CF01F00912FDD9818C268EECAFFFF48 +:104690001037C094FAC9F9441497F2060036ED08B1 +:1046A000FD8AC1A8410959F8E0890013F2CBFFFC4B +:1046B000510B7209FAC6F944EC08003B2FF8F74990 +:1046C000FD88FB4806B41497F1D9B010C058921871 +:1046D00014972FC951095C785018C468FAF806B4C9 +:1046E000403C580CC1D01036C064FACBF944F606F1 +:1046F0000036C1F8FAC8F9501AD8FAC8FAB80C9BB3 +:104700001AD8FAC8FBB4049A1AD80A9CFAC8F94015 +:10471000FAC9FFB4F01F006C2FDD780BC248EECA57 +:10472000FFFF1037C094FAC9F944F2060036149717 +:10473000ECFBFD88C188410959F8E0890011F2CBF2 +:10474000FFFC510BFAC6F944720BEC080039F34B2D +:10475000FD882FF81497FB4806B4C058720B1497C5 +:104760002FC95109501B300E3018500EC21950A7D6 +:1047700050800C970495089602924D4C40941090EE +:10478000404150DCEDB30005C551FAF806B4403B9A +:10479000580BC2201036C0A4FACAF944F4060036F9 +:1047A000ECE8FD88FAE90000CF58FAC8F9501AD8A9 +:1047B000FAC8FAB8049A1AD80C9BFAC8FBB40A9C37 +:1047C0001AD8FAC8F940FAC9FFB4F01F003F2FDD2C +:1047D000F8EA0000C0C8EECAFFFF1037C0B4FAC93B +:1047E000F9441497F2060036ECEAFD88FAEB000073 +:1047F000CD18410959F8E0890016F2E60000F2CB25 +:10480000FFF8FAE70000510BFAC6F944EC0800394A +:10481000FAE60000F2E7FD882FF81497FB4806B48B +:10482000CB98F2E600002F89FAE7000051091497AF +:10483000CB18EDB30004C171FAF806B4403E580E2F +:10484000C0801036C6C4FACCF944F8060036C85801 +:10485000EECAFFFF1037E0840084FACBF944F60675 +:104860000036C7A8EDB30006C4E1FAF806B4403C30 +:10487000580CC1D01036C064FACBF944F6060036A5 +:10488000C1F8FAC8F9501AD8FAC8FAB81AD8FAC84A +:10489000FBB41AD8FAC8F940FAC9FFB4049A0C9BC1 +:1048A0000A9CF01F00092FDD9818C2A8EECAFFFF6E +:1048B0001037C0D4FAC9F9441497F2060036ED084F +:1048C000FD8AC1E8800330E48003EDE4410959F832 +:1048D000E0890013F2CBFFFC510B7209FAC6F944D0 +:1048E000EC08003B2FF8F749FD88FB4806B4149705 +:1048F000F1D9B010C058921814972FC951095C789B +:104900005018C468FAF806B4403C580CC1D01036B0 +:10491000C064FACBF944F6060036C1F8FAC8F9507B +:104920001AD8FAC8FAB80C9B1AD8FAC8FBB4049A79 +:104930001AD80A9CFAC8F940FAC9FFB4F01F00C996 +:104940002FDD780BC248EECAFFFF1037C094FAC9BA +:10495000F944F20600361497ECFBFD88C188410942 +:1049600059F8E0890011F2CBFFFC510BFAC6F9446B +:10497000720BEC080039F34BFD882FF81497FB48B5 +:1049800006B4C058720B14972FC95109501B300E32 +:10499000500E4008401C18485F18E7E80008C07037 +:1049A0003308FB6006B9A1B3FB6806B830283009AC +:1049B000FB6906BB402B580BC025A7D3402A4009F2 +:1049C000580A5F1A4016FAC2F9780C495F19F5E9DE +:1049D0001009C5C03019F2081800C0603029F2086B +:1049E0001800C041C3C80496C3080496FAE8000042 +:1049F000F5D8C0032D0A0CFAF00B1603F20C1603BF +:104A0000F7E911DB1899169858085C29CF21FAE9C3 +:104A10000000EDB30000C4513309F20A1800C410BD +:104A20000CF9C3F8FAEA000030A83009F01F008E34 +:104A300030A82D0A3009AC8AFAEA0000F01F008B7A +:104A400016991498FAE900002016FAEA0000589A1C +:104A50005C2BFE9BFFE91BF82D08C2080496FAE8C0 +:104A60000000F5D8C00440DEFC0A070A0CFAF20B7D +:104A70001604F00A1604F5E911CA16991498580894 +:104A80005C29CF01FAE90000C0C85808C091EDB315 +:104A90000000C061FAC6F9793308AC88C0280496D2 +:104AA0000C12C1C850A7508040940C9710900495E8 +:104AB00040415808E0800464FB680660300C300810 +:104AC0003012FB6806BB502CFAC6F9A0C078300B38 +:104AD000502BC0484022300A502A4029E4090C4992 +:104AE000FB3806BB5039069E3009E21E0002F20870 +:104AF0001800FBF81003F7B801FFFBF81A03069B38 +:104B0000580EFBFC1003F7BC01FEFBFC1A03E21B72 +:104B1000008450FE509BC451408A4039121A504ABA +:104B2000580AE089001FC3D82F092FF84D0E310C09 +:104B3000FB490690890E891CFB48068C5878E08951 +:104B400000042F84C0B8FACAF978029B0A9CF01FAF +:104B50000049E0810425FAC4F9E0404B210B504B99 +:104B6000FAF90690FAF8068C4C1A404E590EFE9946 +:104B7000FFDD1C092FF8890AFB490690891EFB48B6 +:104B8000068C5878E08900042F84C0B8FACAF978F6 +:104B9000029B0A9CF01F0037E0810402FAC4F9E08E +:104BA0003009FB3806BBF2081800C1F0FAF806908D +:104BB000FAC9F9452FF88909FB4806903019FAF827 +:104BC000068C89192FF8FB48068C5878E089000478 +:104BD0002F84C0B8FACAF978029B0A9CF01F0025FE +:104BE000E08103DEFAC4F9E040FC580CC1F0FAF8A9 +:104BF0000690FAC9F9482FE88909FB480690302940 +:104C0000FAF8068C89192FF8FB48068C5878E08949 +:104C100000042F84C0B8FACAF978029B0A9CF01FDE +:104C20000015E08103BDFAC4F9E0409BE04B008031 +:104C3000C511408A4039121A504A580AE089002B9F +:104C4000C4982F092FF848CE310CFB490690890EE5 +:104C5000891CFB48068C5878E08900102F84C178A5 +:104C6000800330E4800373408002D9988003F250BF +:104C7000800334048003F260FACAF978029B0A9C2C +:104C8000F01F004CE081038CFAC4F9E0404B210B8B +:104C9000504BFAF90690FAF8068C4C7A404E590EB1 +:104CA000FE99FFD11C092FF8890AFB490690891E3D +:104CB000FB48068C5878E08900042F84C0B8FACAF3 +:104CC000F978029B0A9CF01F003BE0810369FAC45B +:104CD000F9E0402C041C502C580CE089001FC3D86C +:104CE0002F092FF84B4B310AFB490690890B891A83 +:104CF000FB48068C5878E08900042F84C0B8FACAB3 +:104D0000F978029B0A9CF01F002BE0810349FAC44A +:104D1000F9E0402921095029FAF90690FAF8068CA1 +:104D20004A5A402E590EFE99FFDD1C092FF8890AB8 +:104D3000FB490690891EFB48068C5878E0890004E0 +:104D40002F84C0B8FACAF978029B0A9CF01F001998 +:104D5000E0810326FAC4F9E0EDB30008C0B0FAF828 +:104D6000069089128906F0020002FB420690E08F4D +:104D700001DBE0400065E08A01DD30083009405B7E +:104D8000407AF01F000EC7E0FAF8069048C92FF8E5 +:104D90008909FB4806903019FAF8068C89192FF812 +:104DA000FB48068C5878E089000D2F84C14800002C +:104DB000800334048003F26080036F328003A6C056 +:104DC000FACAF978029B0A9CF01F0078E08102E899 +:104DD000FAC4F9E0FAF806AC406C1838C055EDB3E7 +:104DE0000000E081026DFAF806902FF840CBFB48F6 +:104DF00006903019FAF8068C890B2FF88919FB48B0 +:104E0000068C5878E08900042F84C0B8FACAF97873 +:104E1000029B0A9CF01F0065E08102C2FAC4F9E01F +:104E2000406620165806E089001DE08F02492F09D0 +:104E30002FF8FB49069089028910FB48068C5878A8 +:104E4000E08900042F84C0B8FACAF978029B0A9C52 +:104E5000F01F0056E08102A4FAC4F9E02106C03830 +:104E60004D323100FAF90690FAF8068C4D0A5906CF +:104E7000FE99FFDF0C09890AFB4906902FF8891675 +:104E8000C559FAFA06AC580AE0890096FAF8069075 +:104E90004C892FF88909FB4806903019FAF8068CDE +:104EA00089192FF8FB48068C5878E08900042F8474 +:104EB000C0B8FACAF978029B0A9CF01F003CE08156 +:104EC000026FFAC4F9E0FAF806AC5808C081406AEB +:104ED000580AC051EDB30000E08101F240C9FAF870 +:104EE00006902FF88909FB4806903019FAF8068CCD +:104EF00089192FF8FB48068C5878E08900042F8424 +:104F0000C0B8FACAF978029B0A9CF01F0028E08119 +:104F10000247FAC4F9E0FAF206AC5C325802E089C2 +:104F2000001DC3B82F092FF8310EFB4906908900E8 +:104F3000891EFB48068C5878E08900042F84C0B88D +:104F4000FACAF978029B0A9CF01F0018E081022837 +:104F5000FAC4F9E02102C0284950FAF90690FAF89B +:104F6000068C493A5902FE99FFDF04092FF8890A95 +:104F7000FB4906908912FB48068C5878E0890004AA +:104F80002F84C0B8FACAF978029B0A9CF01F000768 +:104F9000E0810206FAC4F9E0406CFAF8069089064E +:104FA000891C1808CBE80000800334048003F260F9 +:104FB0008003A6C0FAF90690FAF8068C406B163A00 +:104FC000C6D516092FF88906FB490690891BFB48B0 +:104FD000068C5878E08900042F84C0B8FACAF978A2 +:104FE000029B0A9CF01F006FE08101DAFAC4F9E02D +:104FF000FAF606AC406A14165806E089001CC3B8DD +:105000002F092FF8FB49069089028910FB48068C6E +:105010005878E08900042F84C0B8FACAF978029B56 +:105020000A9CF01F0060E08101BBFAC4F9E0210690 +:10503000C0384DD23100FAF90690FAF8068C4DAA24 +:105040005906FE99FFDF0C092FF8890AFB490690E3 +:105050008916FB48068C5878E08900042F84C0B874 +:10506000FACAF978029B0A9CF01F004EE081019871 +:10507000FAC4F9E0EDB30000E081012240C9FAF87A +:1050800006902FF88909FB4806903019FAF8068C2B +:1050900089192FF8FB48068CC04914092FF8FB49E1 +:1050A00006908906891AFB48068C5878E089000426 +:1050B0002F84C0B8FACAF978029B0A9CF01F003905 +:1050C000E081016EFAC4F9E040C88908FAF8069058 +:1050D0002FF83019FB4806908919FAF8068C2FF83A +:1050E000FB48068CFAF206AC5878E08900042F845D +:1050F000C0B8FACAF978029B0A9CF01F002AE08126 +:10510000014FFAC4F9E00406FAF806AC8906FAF988 +:1051100006904066406E1016F208010889161C08B9 +:10512000FB480690FAF8068C2FF8FB48068CCB98C3 +:10513000406C581CE0890006EDB30000E081008758 +:10514000FAF806902FF83019FB4806908906FAF80D +:10515000068C89192FF8FB48068C5878E0890004E2 +:105160002F84C0B8FACAF978029B0A9CF01F000D80 +:10517000E0810116FAC4F9E0FAF806902FF840CB66 +:10518000FB4806903019FAF8068C890B2FF889191C +:10519000FB48068C5878E08900092F84C10800007C +:1051A000800334048003F260FACAF978029B0A9CF7 +:1051B000F01F006FE08100F4FAC4F9E03008300914 +:1051C000405B407AF01F006B40682018580CC0D13B +:1051D0002FF689188906FAF606901006FAF8068C5A +:1051E000FB4606902FF8C2F810965808E089001C7C +:1051F000C4982F092FF8FB49069089028910FB48B3 +:10520000068C5878E08900042F84C0B8FACAF9786F +:10521000029B0A9CF01F0056E08100C2FAC4F9E02C +:105220002106C0384D423100FAF90690FAF8068C92 +:105230004D1A5906FE99FFDF0C09890AFB490690B1 +:105240002FF88916FB48068CC0E8FAF806902FF86C +:105250003019FB4806908906FAF8068C89192FF850 +:10526000FB48068C5878E08900042F84C0B8FACA3D +:10527000F978029B0A9CF01F003EE0810091FAC47D +:10528000F9E040EAFAF806901408FAC9F964FB4814 +:105290000690891AFAF8068C89092FF8FB48068CC3 +:1052A0005878E08900042F84C0A8FACAF978029BD4 +:1052B0000A9CF01F002FC731FAC4F9E0E213000482 +:1052C000C3D04086403912165806E089001AC368D8 +:1052D0002F092FF8FB49069089038912FB48068C99 +:1052E0005878E08900042F84C098009A029B0A9C99 +:1052F000F01F001FC541FAC4F9E02106C05849F368 +:105300003102FAC0F978FAF90690FAF8068C49BA2F +:105310005906FE99FFDF0C092FF8890A8916FB4907 +:105320000690FB48068C5878E08A0009FACAF9789A +:10533000029B0A9CF01F000EC32140BC4036408EE9 +:10534000EC0E0C48100C50BCFAF806905808C080BF +:10535000FACAF978029B0A9CF01F0005C201300BC3 +:10536000FAC4F9E0FB4B068CFE9FF0E9800334049D +:1053700080036F328003F2608003F250FAF80690E7 +:105380005808C0800A9CFACAF978029BF01F0009ED +:10539000C0613008FB48068CC02840418268EDB8E7 +:1053A0000006C0313FFA50BA40BCFE3DF944D83245 +:1053B00080033404D42116981897109C3008149B4D +:1053C0004866129A8D08F01F00065BFCC0516C08FD +:1053D0005808EFF81A03D82200008CC48002F1505C +:1053E000D421300818974876169C8D08F01F0006C7 +:1053F0005BFCC0516C085808EFF81A03D822000073 +:1054000000008CC48002F108D431202D1897784810 +:1054100076460C38C034300CC858ECC2FFFCF6C3DA +:10542000FFECF6020329F802032C2FF92016F809E5 +:105430000D08F6020022EEC4FFEC10955808C410C7 +:105440003009069A08981291500B700EB18E501EBA +:10545000150EFC001610FDDEC010EA0E0341FDD152 +:10546000C010B181401BEA000240E2000000E3D01E +:10547000C010021B501B700BE3DBC0100209F20EC0 +:10548000010EB01EFC091410401EFC090009B009F1 +:10549000E00116102FC8B149043AFE98FFD8400B1E +:1054A000580CC0F1ECC8FFFBEE080028C0282016FD +:1054B00020480838E088000570095809CF908F46C9 +:1054C0000E9CF01F001AC2D52FF508983009070B63 +:1054D000F60A1610700CF7DBC010F80E1610141E2A +:1054E000F5DCC010161A120AB01AB14AFC0A0009FB +:1054F000B0092FC8B1490433FE98FFEBECC8FFFB9D +:10550000EE0803295809C0D1EE080028C02820164B +:1055100020480838E088000570095809CF908F4668 +:105520000A9C2FEDD8320000800363EED43121AD08 +:10553000FAC4FF7418971695682C50C96816680944 +:1055400050E81494512CFAE5000851596E9558050D +:10555000C091310CF01F004799358F9C9915992502 +:1055600099056E9972085808C0F0721A911A301A8B +:105570007219F4090949109B91290E9CF01F003EF5 +:105580006E9830099109402810945808C064F1D8E9 +:10559000C01F50283018C02830088D08FC1C7FF030 +:1055A00040260C98E6187FF01838C1C1E068270F34 +:1055B000415B9708403A580AC061EDD6C014C0312B +:1055C0004AECC0284AEC41295809E08005DEF8C8B9 +:1055D000FFFD3009118AF20A1800C190F8C8FFF8DF +:1055E000C168FAEA00083008FAEB003C3009F01F05 +:1055F0000025C1103018415A950841294A285809F8 +:10560000C041109CE08F05C1109C2FF841258B08EC +:10561000E08F05BBFAC8FF9CFAC9FFA0FAEA003C7C +:105620000E9CEBD6C28BF01F001918935805C0D002 +:10563000FAEA003C3004F1DBC014EAC503FF109B1A +:105640005174EA1B3FF0C3284188419C100CF8C5F7 +:10565000FBCEE0450020E08A001BF8CCFBEE403B8F +:10566000EA081140F60C0A4CEC0809460C4CC148FB +:105670008002E2A4800364208003F3708003F37C43 +:1056800080036F328003A6C0800364D0EA0C11202F +:10569000403AF40C094CF01F006BFC18FE10301956 +:1056A000EAC50433F00B000B51793008FC193FF8C0 +:1056B000F01F0065E0684361EA18636FE06987A73F +:1056C000EA193FD2F01F0061E068C8B3EA188B60A6 +:1056D000E0698A28EA193FC6F01F005D0A9C149011 +:1056E0001691F01F005CE06879FBEA18509FE069B2 +:1056F0004413EA193FD3F01F005514981699009AE5 +:10570000029BF01F005314901691F01F00533008B5 +:1057100018963009009A029BF01F0050C0C00C9CE4 +:10572000F01F004C14981699009A029BF01F004C31 +:10573000F7B600015966E088000530185148C128C5 +:105740004C88FAEA003CF0060238F01F0044F9B435 +:105750000000FBF40A14F7B60101F9BC0100FBFCE0 +:105760001A14419020100A10C04650403000C04822 +:10577000300B5C30504BEC0211005806FBFA400431 +:10578000F5D6E40AFBFA4A04FBF64A11F9B2040022 +:10579000E1D6E510F9B90500FBF95A1140C858984F +:1057A000E08B00205858F9B40A01FBF5900CF7B5CE +:1057B0000904FBF59A0CF9B4090040CC583CC2D05E +:1057C000E0890005582CC101C18840CB584BC0600E +:1057D000585BC0A1301A50DAC228301950D9C0F82D +:1057E0003008301450C83FF5301C300B509550DC59 +:1057F0000A91312850EBC208300A50DA40E95809C2 +:10580000E089000730185098109150E8C15840E5E1 +:1058100050950A910A98C108300C50DC40EBEC0B13 +:10582000000B509B16982FF85808E089000510913E +:105830003018C028109130096E9A95193049C178F6 +:1058400080036E4A80036B7C800369A480036D181B +:1058500080036E5280036E2480036FC080036F321A +:105860008003F38C6A1AA1792FFA8B1A6E95F2CA0B +:10587000FFEC103AFE98FFF86A1B0E9CF01F0053D5 +:1058800058E15F888B0CF1E400046E987008508832 +:10589000E08001985806E08A0040F3D6C0044CC866 +:1058A000F0090234FAE50018EC041404EDB4000425 +:1058B000C0303025C0F84C78F0E80020FAEA003C0F +:1058C000E9D4C004F01F0044303514981699FAE961 +:1058D00000084C0C50A30C931896C0F8FAEA001874 +:1058E000EDB40000C081ECE800002FF5F01F003B94 +:1058F000FAEB0018A1542F865804CF11FAE80018CB +:10590000FAEA00080696F01F003440A3149816998E +:10591000FAE90008C2D8EC081100C0313025C2886D +:105920004ACCF0041404501CF1D8C0044A89FAEAA5 +:10593000003CF2080238F01F0029401C506330255B +:105940000C93FAEB00081896C0F8FAEA0008EDB4D8 +:105950000000C081ECE800002FF5F01F0020FAEBFA +:105960000008A1542F865804CF1106964063414A7F +:10597000580AC370FAE8000858015F94FAE9001861 +:105980003008FC193FF0FAEA0018F01F0015F9BCC6 +:105990000000F9BC0101E9EC000CC2304098580845 +:1059A000E08A010C3008FC194024ECC40001FAEA3A +:1059B00000182FF55064F01F0009409414981699B0 +:1059C000FAE90008C1080000800364588003F38CE2 +:1059D0008003F45480037028800369A480036FC09F +:1059E000506602940A9CF01F0069FAE80008F01F54 +:1059F00000683008FC19401CF01F006614981699C6 +:105A0000FAE90028FC18FCC040A5100550A5580470 +:105A1000C211FAEA00083008FC194014F01F005EB9 +:105A200040BCFAEB000814981699189A0A9BF01FCC +:105A3000005BE08102740A9840B9EE188000FAEA2F +:105A40000008109512980A99F01F0054E081025E38 +:105A5000CB484D39E8C8000140D55805C4F0300C9A +:105A6000F2080238513C300AFC1B3FE0F01F004DA9 +:105A7000FAE800284085F01F0048FAEB0028FAEA0F +:105A80000008F01F0049516CF01F0040149816994F +:105A9000FAEA0008F01F0040FAEB000841682D0800 +:105AA0000AC841392FF95139FAE80028F01F003BA4 +:105AB000E081035AFAE80008300AFC1B3FF0F01FAF +:105AC0000036FAE80028F01F0035FAEA002830080E +:105AD000FC194024E08100E8413C083CC6E4F01F8A +:105AE000002C3008FAEB0028FC194024FAEA0008E0 +:105AF000F01F0027FAEB0008CC3B40850805F208B0 +:105B0000023A5135FAE800284085F01F0021FAEBEF +:105B10000028FAEA0008F01F0024516CF01F001B57 +:105B200014981699FAEA0008F01F001BFAEB000817 +:105B300041682D080AC8413C1835C3713008FC196A +:105B40003FE0FAEA0028F01F00134085FAE8000859 +:105B50000805F01F0012E08100A7FAE80028300ACB +:105B6000FC1B3FE0F01F000C14981699FAEA00089D +:105B7000F01F000AC22033090A98117AF20A1800AD +:105B8000E08102F21095CF9B80036E52800369A4DE +:105B900080036D1880036B7C80036FC08003F38CDF +:105BA0008003702880036E243008FC194024F01F05 +:105BB0000056FAEB0008CAEBFAEA003CFAEB0008E0 +:105BC00058E65FAB418A3008F40911FFF7E903F9A1 +:105BD000F0091800E080008140EA58015FA9F3EA6B +:105BE00003F94CAAF4060234FAE50010F009180093 +:105BF000C1405801E081018A3008FC194014089A1C +:105C00000A9BF01F0041FAE80008F01F0041E08104 +:105C1000017D0292E08F018540853014FAE8001082 +:105C2000FAEA0008F01F003BF01F003B1892F01F3B +:105C3000003BFAE80010F01F003414981699FAEAB5 +:105C40000008F01F0037FAEB0008E4C8FFD00AC8CC +:105C5000FC19402430080234C331FAE80008F01F70 +:105C600000311691149014980299FAEA0010F01F6E +:105C7000002EC1A1FAE80010009A029BF01F002B31 +:105C8000E0800271E5D2C001C0F1E08F026C408A71 +:105C90001438C0301095C098330840892FF6B28868 +:105CA0004088C088406633990A98117AF20A180031 +:105CB000CEF0506611892FF9B089E08F0255F01FA0 +:105CC00000122FF4FAEB000830083009F01F00171B +:105CD000CA60E08F024840D85808C0510498009527 +:105CE00040D4C4A840C55815E08900224174580426 +:105CF000C040F4C9FBCDC0484199F209113604985F +:105D00000095C2F8800369A48003F38C80036F5868 +:105D10008003702880036E2480036E5280036B7CA6 +:105D200080036D1880036FC080036F32E2C80001EA +:105D30005801E0051740E2091740E1D1E515F9B92E +:105D400005001032E5D8E418F1D2E518E5D8E502EF +:105D5000FBFC5011F9D8E50CFBFC5A11F9B8050011 +:105D6000404B120B5008504B1200301B0E9CF01F82 +:105D7000010840081894404A58055F99580A5F9AEC +:105D8000F5E90009C080404CF8050D49121C1210BD +:105D9000504C12155802E08A002740DB580BC1D046 +:105DA0005808E08A0017109A5008089B0E9CF01FB4 +:105DB00000F9069A189B18940E9CF01F00F718998A +:105DC000069B50190E9CF01F00F5401940081293D5 +:105DD000E408010AC080C028049A069B0E9CF01FAC +:105DE00000ED1893301B0E9CF01F00E9411A189229 +:105DF000580AE08A0007189B0E9CF01F00E61892D4 +:105E000040C95819E089001440385808C101402998 +:105E1000F1D9C014C0C11298E6187FF0C080404C80 +:105E2000301B2FFC2FF0504C506BC038300A506A9A +:105E300041195809C031301CC09864482FC8E40883 +:105E4000032CF01F00D7F80C1120404BF80B000872 +:105E5000F1D8C005C0C0F00811205848E08A0006FB +:105E60002048100B504BC0785848C070404A2E480C +:105E7000100A504A100010055800E08A0008069BDE +:105E8000009A0E9CF01F00C7189340495809E08AF9 +:105E90000008049B129A0E9CF01F00C21892414801 +:105EA0005808C1B0049B069CF01F00BFC164069B4C +:105EB000300930AA0E9CF01F00BD2016189340DC5C +:105EC000580CC0314091C098089B4091300930AACD +:105ED0000E9CF01F00B6189458015FA940CB582BB8 +:105EE0005F98F3E80008C2505801C111049B029961 +:105EF000305A0E9CF01F00AD1892189B069CF01FA4 +:105F000000AAE089000FC0383002049440EA30094A +:105F10005CDA4085506A5049C0F9089240660494A2 +:105F20002FF65066331840850AC830085048C049DB +:105F300040DC580CE08000B55805E08A0008089B5A +:105F40000A9A0E9CF01F00971894406B580BC031B2 +:105F5000089CC138681B0E9CF01F0095684A189574 +:105F6000E8CBFFF42FEA2F4CA36AF01F00920A9BA4 +:105F7000301A0E9CF01F008B5044403A3019F5DA6D +:105F8000C001189450DA40855099502650E1049B86 +:105F9000069CF01F0089404BF8C0FFD0069CF01F04 +:105FA0000082089A506C049B0E9CF01F008418918C +:105FB00078385808C0303016C068189B069CF01F0F +:105FC000007A18960E9C029BF01F007440CCEDECFA +:105FD0001008C0D140DB580BC0A14026E04000397A +:105FE000C300406A580AE0890024C2F84069580991 +:105FF000C085129840CC1848C1D140DB580BC1A1D4 +:106000000C9940265809E08A0021069B301A0E9C04 +:10601000F01F0064049B1893F01F0063E0890006E2 +:10602000C141EDB00000C111E0400039C0A02FF027 +:10603000C0C85806E08A000C4026E0400039C04144 +:1060400033980AC8C6782FF00AC0C7580AC0409AC9 +:1060500040E9123AC430069B300930AA0E9CF01F6A +:106060000053404818930838C091109B300930AA5B +:106070000E9CF01F004E504CC0E8404B300930AA37 +:106080000E9CF01F004A089B504C300930AA0E9C11 +:10609000F01F00461894409C2FFC509CC79B301862 +:1060A0000690408508930C941096049B009CF01F6A +:1060B00000422D0C0ACC0236C0A4009B300930AA45 +:1060C0000E9C2FF6F01F00391890CF0B0896300B5E +:1060D0000694504B00931890C0284026069B301A17 +:1060E0000E9CF01F0030049B1893F01F002FE089D6 +:1060F0000012C1B1E1D0C001C0D1C17840891238CD +:10610000C0301095C0882FF650663318408CB88880 +:10611000C138339A0A981179F4091800CF002FF981 +:10612000B089C0981095C02833090A98117AF20AEC +:106130001800CF905066049B0E9CF01F0018580466 +:10614000C120404B083B5F19580B5F18F3E800086B +:10615000C0400E9CF01F0011089B0E9CF01F000F0A +:10616000C02850660E9C069BF01F000C3008AA88C1 +:106170004068415A2FF841299508408C5809FBF88E +:106180001012F1F51A002E6DD8320000800368005D +:10619000800368A0800366F88003642080036300A6 +:1061A00080036664800363EE80036818800364588C +:1061B0008002E736800354088003658C5EFC5EFC39 +:1061C000D42118961697580BC0311695C508F01FA4 +:1061D00000295806C0706C685808C0410C9CF01F1C +:1061E00000264A681037C0316C07C0A84A481037EB +:1061F000C0316C17C0584A381037EDF700028E696D +:106200003008F0091900C051F01F001F3005C2F816 +:106210000E9B0C9CF01F001D6EC818955808C0609E +:106220006E8B0C9C5D18F9B505FF8E68EDB8000704 +:10623000C0516E4B0C9CF01F00166EDB580BC0A0BB +:10624000EEC8FFBC103BC0400C9CF01F0011300892 +:106250008FD86F2B580BC0700C9CF01F000D3008AE +:10626000EF4800483008AE68F01F00070A9CD822AB +:1062700080031E7480031F388003EF2C8003EF4CD3 +:106280008003EF6C80031E7680031D2C8003217C2D +:10629000D4014848189B700CF01F0003D80200007E +:1062A00000000598800361C0D42116981897109CAF +:1062B00030084876149B8D08F01F00065BFCC05127 +:1062C0006C085808EFF81A03D822000000008CC4AC +:1062D0008002F198D42116981897109C3008149BCE +:1062E0004866129A8D08F01F00065BFCC0516C08CE +:1062F0005808EFF81A03D82200008CC48002F1205D +:106300001898E01C0000F0091510580CF20817004E +:10631000F9BC0010F9BC0100109AF0091508E61A42 +:10632000FF00F7BC00F8F2081700109AF0091504F6 +:10633000E61AF000F7BC00FCF2081700109AF0090A +:106340001502E61AC000F7BC00FEF2081700580854 +:106350005E5CEDB8001EF9BC0120F7BC00FF5EFCDE +:1063600018997808F9D8C003C150EDB80000C021D1 +:106370005EFD109BF00A1601E21B0002A388580B79 +:10638000F3FA1A00F9BC0101F3F80A00F9BC0002A3 +:106390005EFCF5D8C010F00B1610580AF60817006E +:1063A000F9BC0010F7D8C008F00A1608580BF7BC63 +:1063B00000F8F4081700F7D8C004F00A1604580BC8 +:1063C000F7BC00FCF4081700F7D8C002F00A160268 +:1063D000580BF7BC00FEF4081700EDB80000C060D1 +:1063E000A198C031320C5EFC2FFC93085EFCD401F6 +:1063F00018987649784C121CC1312FB9A369120B39 +:10640000F00900092EC8134E174A143EC060F9BCAB +:1064100003FFF9BC0201D8021039FE9BFFF6D80237 +:10642000D4211897169578965806C091310CF01F14 +:10643000000A99368F9C9916992699065805C0909E +:106440006A196E987038F009032A8B0AF009092539 +:10645000D82200008002E2A4D421189716967895DD +:106460005805C091310CF01F001999358F9C991572 +:10647000992599056E956A385808C0B1310A304B94 +:106480000E9CF01F00138B3C6E98703C580CC1B0F2 +:106490006E987038F0060028700C580CC0407809CF +:1064A0009109C0E80E9C30170E9BEE060947EECA14 +:1064B000FFFBA36AF01F0006C060991699273008F9 +:1064C00099389948D82200008002E2A48002DC5466 +:1064D000D431202D1693129610951492301BF01F74 +:1064E0000029F3D3C0145009F1D3C01FF0011614D2 +:1064F000FC1A0010F3DAE139FBF91A00189458027B +:10650000C1E0FACCFFF818D2F01F001F4018C0D02D +:106510004009F80A1120F20A094AF5E810088958DA +:10652000F20C0A495009C028895840085808F9B3A4 +:106530000102F9B3000189688943C0981A9CF01FD1 +:106540000012301340082E0C894389585801C0901E +:10655000E2C1043318018D01F80C11358B0CC0D841 +:10656000E6C8FFFCF8CC0432A5738D0CE808032CB8 +:10657000F01F000618138B03089C2FEDD832000083 +:10658000800364588003636080036300D4317448DF +:106590007645169714961015C1312FB8EECEFFEC44 +:1065A000A368F408000BEE080008114A1749123AD4 +:1065B000C030C0E2C0781C38FE9BFFF9C4A8580563 +:1065C000C0640E9830150C971096C02830056E1BCD +:1065D000F01F00246E496C4499352FB4F2C5FFFBBF +:1065E000EC040024EE0500252EC62EC7F8C8FFECEB +:1065F000300A0F0E0D0BFC021610F6031610FDDE0E +:10660000C010E4030103F7DBC010FC0B010BF60A1A +:10661000000AB01AB14AE60A000AB00A2FC8B14A05 +:106620000836CE83C0D80F0BF60E1610F7DBC0105D +:10663000160AB01AB14A1C0AB00A2FC8B14A0A3762 +:10664000CF33C0282019114A580ACFD09949D832DF +:10665000300BF01F00043018994830089958D83290 +:1066600080036458D43116977646F40214052FF649 +:10667000149318940406761B6E28C0382FFBA1785B +:106680001036FE99FFFD089CF01F001A300918957E +:10669000F8C8FFEC129AC03810AA2FF90439CFD5E8 +:1066A0006E4BE7D3C0052FBBEEC9FFECEE0B002B02 +:1066B0005803C130E60C1120300A7202E40309428B +:1066C000044A10AA130AF40C0A4A1639CF73910A25 +:1066D000580AC0702FF6C058130A10AA1639CFD323 +:1066E000089C20160E9B8B46F01F00030A9CD83294 +:1066F0008003645880036420D431202D7649744887 +:10670000169614951039EC081750EA061750F00544 +:1067100017506C2876437442761BE4030007103749 +:10672000F7BB09FFF01F0036EEC4FFFBF8C9FFEC12 +:10673000F8040024300A1298C02810AA0838CFE3C1 +:106740002FB32FB2EC030023EA020022ECCBFFECC4 +:106750005012EACAFFECC44894955805C20012983A +:106760001696300E50090D02E400161070017009E3 +:10677000B181E5D2C010E0050341AB32E1D9C010D0 +:106780000002E40E000EB01EB18E1C01B001E20E3C +:1067900016102FC80636CE834009910E94865806EF +:1067A000C1D072021298169E3005B0121D0190825F +:1067B000E1D1C010AD30E0020002E4050005B005F3 +:1067C000B185B1812FC8AD319092E20200020A0278 +:1067D000E4051610063ECEA391022FCA2FC9401819 +:1067E000103ACBB3C02820175807E08A00050948A3 +:1067F0005808CFA099472FEDD83200008003645885 +:10680000D4211697301BF01F00043019995799496D +:10681000D822000080036458D431300812951697AE +:1068200018967644F6C9FFEC720BF60C1610F7DBDF +:10683000C010F40C024CF40B0345F7D5C010B18521 +:106840001805EA0C1510F80B000B12AB2FF8B185E8 +:106850000838CEB55805C1D06E281034C1456E1B1E +:106860000C9C2FFBF01F000C6E4AEECBFFF418932C +:106870002FEA2F4CA36AF01F00090E9B0C9CF01FFF +:1068800000080697E8C8FFFF2FB48F48EE040925DB +:106890000E9CD832800364588002E736800364205F +:1068A000D431149618971694F1DAC002C0902018CB +:1068B0004A19F208032A3009F01F00201894A34651 +:1068C000C3706E955805C091310CF01F001D9935AD +:1068D0008F9C9915992599056E9366255805C0D109 +:1068E000E06B02710E9CF01F0017872C3008189582 +:1068F0009908C038069C1895EDB60000C0C1089BE9 +:106900000A9A0E9CF01F0010089B18930E9C069488 +:10691000F01F000EA156C0C06A035803CEC10A9AE8 +:106920000A9B0E9CF01F00088B0C9903CE5B089C01 +:10693000D83200008003F380800368188002E2A44C +:1069400080036800800366F880036420D4211698D1 +:106950001897109C3008149B4866129A8D08F01FF7 +:1069600000065BFCC0516C085808EFF81A03D822E7 +:1069700000008CC48002F1381498FC197FF0F5DB1C +:10698000C01FF00B1100F7E81008F5E813F8F20843 +:106990000108F00C1100F9E81008F00C141F2FFC8E +:1069A0005EFCD703F5EB101CE08000DCD421F7E996 +:1069B000200EEFDBC28B3015C430AB6BF7EA136BE4 +:1069C000AB6AF7D5D3C2EDD9C28BC5C0A1785CF94B +:1069D000F3D5D2ABE04707FFC770E04607FFC740DB +:1069E000EE06000CE02C03FEF6080644F40907440A +:1069F000F4080646F609064A0807F405004A5C0B47 +:106A0000EDBB0014C050A1775CFA5CFB201C580C55 +:106A1000E08A006FE04C07FFE084009CF7DCD28B3B +:106A2000EDEA11F6EFE61217EE178000F1B7042039 +:106A30000E0A5C0BEDBE001FEFBB001FD822E41B4B +:106A4000000FF40C1200F6061200F7BC03E1F80682 +:106A50001730F7B60201E0460020C0D4EC0C11203C +:106A6000F606094BF40C0A4C184BF406094A20B6FA +:106A70000C17CAABF406094BC640300A20B60C17F7 +:106A8000CA3BE419000FF00C1200F2051200F7BC2B +:106A900003EAF8051730F7B5020AE0450020C0D434 +:106AA000EA0C1120F2050949F00C0A4C1849F005CE +:106AB000094820250A16C8FBF0050949C4203008FA +:106AC00020250A16C88BE419000FE41B000F144B95 +:106AD0001049E04707FFC091580BC381E04607FF0C +:106AE000C3815809C360C3285809C330C2F85C3C4D +:106AF0002FFCF1BC04C0E04C0020C114F8081120A8 +:106B00000E46EE0C0A47F40809491247F40C0A4AEB +:106B1000F6080949124AF60C0A4BC83BF80811203E +:106B2000F9B90000C030F60809490E46EDEA101622 +:106B3000F40C0A4AF3EA1007F60C0A4A300BC71B9A +:106B40001C9BE61B8000300AD8223FFB3FFAD8226C +:106B5000F06B0000EDBE001FEFBB001F300AD82213 +:106B6000F7E9200BE61B8000F9D9C28BE04C07FF48 +:106B70005E1C3FFA3FFB5EFCEE198000F7E9200C3B +:106B8000E08600CAEBCD40E0169CE61C8000BFDB2F +:106B9000BFD9103AF20B1300C0921697129B0E99B0 +:106BA0001497109A0E98EE1C8000F6071614AB7B13 +:106BB000F7EA135BAB7ABFBBF2061614C440AB799D +:106BC000F3E81359AB78BFB9E04707FFC4F00E26CE +:106BD000C120EC051120E0460020C7C2F005094E97 +:106BE000F2050945F0060A48F2060A490A48580E15 +:106BF0005F1E1C48101AF609014BF6061200C0E091 +:106C0000C783EC0E1120F606094BF40E0A4E1C4BFE +:106C1000F406094A0C17E08A0039F4091515AB9AF5 +:106C2000F5EB115AAB9BF7D7D28B184BFC178000B2 +:106C3000EDBA0000F7B701FF0E395F29120A5C0BAD +:106C4000E3CD80E0AB79F3E81359AB78F3E8100EAD +:106C5000F9B60101EE0E1100F9B70001EFBB001FFC +:106C6000F7EA100EF9B70000CB0BBFDBF7EA100E06 +:106C7000C081E04607FFC050F9E7114BE3CD80E04B +:106C80003FFA3FFBE3CD80E05C372FF7F1B704C05C +:106C9000E0470020C114EE081120F40809495F16EE +:106CA000F4070A4A0C4AF6080949F5E9100AF407FC +:106CB0000A4B3007CB3BEE081140F608094914494E +:106CC0005F16F6070A4A0C4A300B3007CA7BE3CD41 +:106CD00080E0F1B604C0F00E1700C040F205094E86 +:106CE000104EF2060A483009580E5F1E1C48C83B79 +:106CF000F4061200F9B70300F9B60300F9BC03006B +:106D0000F7B602E0F406094B300A0C17FE9AFFBEF4 +:106D1000C85B0000EE198000F7E9200CFE96FF2EFC +:106D2000EBCD40E0169CE61C8000BFDBBFD9123BD8 +:106D3000C0721697129B0E991497109A0E98300EE7 +:106D4000EFDBC28BF7DBC014B5ABEDD9C28BC5F05E +:106D5000F3D9C014B5A9E04707FFC2500E26C0F012 +:106D6000EC051120E0460020C352F005094EF20563 +:106D70000945F0060A48F2060A490A48100AF609C7 +:106D8000004BEDBB0015C340F7D7D28B184BF9DA97 +:106D9000C001184EEE1E8000F1BE04201C0A5C0BE0 +:106DA000E3CD80E0B5CBF7EA100EC101E04607FF66 +:106DB000C030E3CD80E0B5C9F3E8100EC071300AF1 +:106DC000FC1B7FF0184BE3CD80E03FFA3FFBE3CDA7 +:106DD00080E0F1B604C0F00E1700C060F205094E65 +:106DE00058085F18104EF2060A483009CC8BFDEEA9 +:106DF000101EA19B5D0A5D0E2FF7E04707FFF9BA51 +:106E00000000F9BB0000F9BE0000CBFB30165807AC +:106E1000CA31B5CB100AF609004B184BE3CD80E020 +:106E2000580B5E6DF60C1501B59CE02C03FF5E3D22 +:106E3000F80C111F1699AB7BBFBBF7EA135BF60C7E +:106E40000A4BA1795E2B5C3B5EFBF8CB0000300C5B +:106E5000C038189B5C4B300A5E0BD401E069041EFD +:106E6000F6081200C170C0C3F00E1120F608094BDD +:106E7000F40E0A4E1C4BF408094A1019C0B8F40865 +:106E80001200F9B80300F7B802E0F408094B300A21 +:106E900010195809E08900305C392FF9E0490036B3 +:106EA000C043300B300AC2682F69F2081120E04954 +:106EB0000020C0B2F408094EF6080948F4090A4A4D +:106EC000F6090A4B104BC088F608094E144E169A64 +:106ED000300BF4090A4AEDBA0000C0921C7EC04192 +:106EE000EDBA0001C0422FFAF7BB02FF5CFC5D0B5C +:106EF0005D0AD802E06803FFEDBA000BF7B800FFA7 +:106F0000100A5C0BF7B903FEE04907FFC055300AD1 +:106F1000FC1BFFE0C0C8EDBB001FF7B90101AB9A35 +:106F2000F5EB115AA17BAB9BF7E9115BA17C5D0BE3 +:106F3000D802103AF20B1300C080A17BA179144B48 +:106F4000124B104B5E0F5EFDA17BFC1CFFE0580A4C +:106F5000F80B13005E8F5EFD1ADE1AD7A17B5F3C33 +:106F6000A1795F375CFCFC1EFFE0580AFC0B1300A4 +:106F7000E08B001D5808FC091300E08B0018580B2B +:106F8000F5BA0000C1501B071B0E583CC0A0581C8E +:106F9000C0335E0F5E1D103AF20B13005E2F5E3D94 +:106FA0001438F60913005E2F5E3D1B07D80A5817E8 +:106FB0005F0C5809F5B800001B071B0E5E0F5EFC46 +:106FC0001ADE1AD7A17B5F3CA1795F375CFCFC1EFF +:106FD000FFE0580AFC0B1300E08B001D5808FC0969 +:106FE0001300E08B0018580BF5BA0000C1501B07C6 +:106FF0001B0E583CC0A0581CC0335E0D5E1F103ADB +:10700000F20B13005E2D5E3F1438F60913005E2D5F +:107010005E3F1B07D80A58175F1C5809F5B80000D7 +:107020001B071B0E5E0D5EFCEBCD40FFF7E9200E4B +:10703000F6071614A97BF7EA137BA97ABDBBE41BFC +:107040003FFFABD7E08000CCE04707FFE08400B50E +:10705000F2061614A979F3E81379A978BDB9E419F1 +:107060003FFFABD6E08000E2E04607FFE08400B2DD +:107070000C17FE37FC01FC1C8000F8031601E9D94F +:10708000C3625CD4E7D4D382E6090644F80501253F +:10709000E6050644EA031502E6090644F80501255B +:1070A000E6050644EA031502E6090644F80501254B +:1070B000E6050644EA031502E6080640E40907402F +:1070C000E609064402045C05A365EBE413E5A3644A +:1070D0005C34F8050145E6040640E4050740E60592 +:1070E000064402045C05EA031502E7E413E3E80240 +:1070F0001502E6080640E4090740E60906440204D2 +:107100005C05A365EBE413E5A3645C34F805014575 +:10711000E6040640E4050740E605064402045C0573 +:10712000EA031502E7E413E3E8021502E60A064063 +:10713000E40B0740E60B064202025C03EDB3001CC1 +:10714000C090A1725CF32017A39AF5EB11DAA39B10 +:10715000C058A58AF5EB11CAA58B5807E08A008BA9 +:10716000E012FF00E8120080E6080640E40907404C +:10717000E4080644E60906480005F00100485C09F9 +:10718000F9D2C10158045C25F4081300F609130074 +:107190005F36F8061700E40A1608F5E3118AE60BD5 +:1071A0001608F7D7D28BEDBE001FEFBB001F0C0AED +:1071B0005C0BE3CD80FFE41B000F144BE08100A7C4 +:1071C000F2061614ABD6E04607FFE08100A4C9E83A +:1071D000E419000F1049E081009AC928A37BF7EA5F +:1071E00013DBA37AF5EB1004E08000A0F604120094 +:1071F000C170C0C3E8051120F604094BF4050A4527 +:107200000A4BF404094A0817C0B8F4041200F9B490 +:107210000300F7B402E0F404094B300A0817A38A0C +:10722000F5EB11EAA38BC11BA379F3E813D9A3787B +:10723000F3E81004C6F0F2041200C170C0C3E80500 +:107240001120F2040949F0050A450A49F0040948E9 +:107250000816C0B8F0041200F9B40300F7B402E055 +:10726000F004094930080816A388F1E911E8A38958 +:10727000CFCA5C372FF7F1B704C0E0470020C154F4 +:10728000EE061120E4070A42E606094C1842E6071A +:107290000A43F4060941F4070A4AF606094C184A5B +:1072A000F6070A4B3000C158EE061120F9B0000075 +:1072B000F9BC0000C050F4060940F606094CE60788 +:1072C0000A423003F4070A411841F6070A4A300B14 +:1072D000E012FF00E8120080E6080646E4090746CF +:1072E000E4080644E60906480C05F00700485C0976 +:1072F0003007F9D2C1010034E2051300C46B1C9BB6 +:10730000E61B8000300AE3CD80FF3FFB300AE3CD6F +:1073100080FFF5EB1004C0901C9BE61B8000EA1B6D +:107320007FF0300AE3CD80FFF1E91015CEF0E9D906 +:10733000C28BE04407FFCE41F1E910C5CE10CE6B01 +:10734000D4311A97202D109C1295149E16931696E0 +:107350005809C4411638E088005AF0081200C0D01D +:10736000F6080946F808094CF00B1120F408094EFC +:10737000F40B0A4BF7E61006F80A1610EBDCC01007 +:10738000EC0A0D02FC091610EA02024BF3E31109A4 +:10739000123BE08800091809123CE08B0005123B03 +:1073A000F3DCEB09F20B010BFDDEC010F60A0D0A4F +:1073B000FDEB110EEA0A024A1C3AE0880009180E99 +:1073C0001C3CE08B00051C3AFDDCEB0EFC0A010ABC +:1073D000300BF4080A4A2FEDD8321639FE9BFFFD18 +:1073E000F2091200C46114385F8B06355F3AF7EA80 +:1073F000100AF20A1800C060FC08010AE6050146FE +:10740000149E0C9B1C9A2FEDD8325808C05130198D +:10741000F2080D08109CF8081200E0810084EC0CC2 +:10742000010BF8031610EBDCC010F6030D0AFC0983 +:107430001610EA0A024AF3EB1109123AE088000931 +:107440001809123CE08B0005123AF3DCEB09141921 +:10745000FDDEC010F2030D02FDE3110EEA02024A46 +:107460001C3AFE98FFB5180E1C3CFE9BFFB1CACB20 +:10747000F20E1120EA090945F609094BE60E0A4306 +:10748000F0090941F4090942F00E0A48F40E0A4ACB +:107490000A48164AF0061610F9D8C010E6060D0480 +:1074A000F4031610089BE7E51103E80C02450635C6 +:1074B000E0880007201B10030638E0880072F5DA28 +:1074C000C0100A13E6060D04F5E51106E80C024C9F +:1074D000089A0C3CE0880007201A10060C38E08857 +:1074E000005AF5EB110B1816F601064A149C1636D5 +:1074F000C0735F0514325F3AEBEA000AC060F8011E +:107500000104F608014B089CE40C010AEC0B01464F +:10751000EC090A4BF4090A4AEC0E09460C4A2FED15 +:10752000D832F0011120F4010A4BF808094CEC089C +:107530000949EC010A41F7E91009F8031610EBDCE0 +:10754000C010E2030D00F20B1610EA00024EF7E144 +:10755000110B163EE0880006180B163CE088002749 +:10756000F60E0101F3D9C010E2030D00F3E1110999 +:10757000EA00024B123BE08800091809123CE08B3C +:107580000005123BF3DCEB09F20B010BF408094E8A +:10759000C4DB0C3CF7BA0B01EDD8EB06CA3B063551 +:1075A000F7BB0B01E7D8EB03C8BB163EF7DCEB0BD0 +:0275B000CD8B81 +:10760000C0080000C0080000C0080000C00800005A +:10761000C0080000C0080000C0080000C00800004A +:10762000C0080000C0080000C0080000C00800003A +:10763000C0080000C0080000C0080000C00800002A +:10764000C0080000C00800000000000000000000AA +:10765000C008000000000000000000000000000062 +:10766000C008000000000000000000000000000052 +:10767000C008000000000000000000000000000042 +:1076800000000000000000000000000000000000FA +:1076900000000000000000000000000000000000EA +:1076A00000000000000000000000000000000000DA +:1076B00000000000000000000000000000000000CA +:1076C00000000000000000000000000000000000BA +:1076D00000000000000000000000000000000000AA +:1076E000000000000000000000000000000000009A +:1076F000000000000000000000000000000000008A +:10770000C0080000300CF01F0012580CF80F1710C2 +:10771000D603301CF01F000E580CF80F1710D603BC +:10772000302CF01F000B580CF80F1710D603303C0C +:10773000F01F0007580CF80F1710D60300000104C3 +:107740004000011280000120C000012E8000A41C16 +:107750000000000000000000000000000000000029 +:107760000000000000000000000000000000000019 +:107770000000000000000000000000000000000009 +:1077800000000000000000000000000000000000F9 +:1077900000000000000000000000000000000000E9 +:1077A00000000000000000000000000000000000D9 +:1077B00000000000000000000000000000000000C9 +:1077C00000000000000000000000000000000000B9 +:1077D00000000000000000000000000000000000A9 +:1077E0000000000000000000000000000000000099 +:1077F0000000000000000000000000000000000089 +:1078000073656E645265706C790000006765745F23 +:10781000646174615F7463705F636D645F63620071 +:107820006765745F7265706C795F686F73745F62AF +:10783000795F6E616D655F63620000006765745F0C +:107840007265706C795F7363616E5F6E6574776F7C +:10785000726B735F636200006765745F7265706C62 +:10786000795F6964785F6E65745F63620000000031 +:107870007365745F706173737068726173655F6361 +:107880006D645F63620000007365745F6B65795FB0 +:10789000636D645F6362000063616C6C5F7265704E +:1078A0006C795F6362000000617661696C5F64619E +:1078B00074615F7463705F636D645F636200000096 +:1078C0007365744D6170536F636B4D6F6465000039 +:1078D0006765745374617274436D6453657100001D +:1078E0007365745F6E65745F636D645F63620000EF +:1078F0007365745F69705F636F6E6669675F636D00 +:10790000645F63620000000073656E644572726FAD +:107910007200000073746172745F736572766572D1 +:107920005F7463705F636D645F6362007370695F4F +:10793000736C61766552656365697665496E74003E +:107940006765745F636C69656E745F737461746599 +:107950005F7463705F636D645F63620073656E6420 +:107960005F646174615F7564705F636D645F6362BF +:1079700000000000636865636B4D7367466F726D4E +:107980006174000073746172745F7363616E5F6E23 +:1079900065745F636D645F6362000000666F756E9F +:1079A00064486F737442794E616D65007365745FEE +:1079B0006B65795F636D645F63620000696E697413 +:1079C0005370690073746172745F636C69656E747F +:1079D0005F746370000000007370695F706F6C6C9F +:1079E000000000006765745F726573756C745F6397 +:1079F0006D645F636200000073746F705F636C6935 +:107A0000656E745F7463705F636D645F63620000D2 +:107A100073746172745F7365727665725F7463709C +:107A2000000000007365745F706173737068726149 +:107A300073655F636D645F63620000007365745F0C +:107A4000726573756C745F636D6400007365745F59 +:107A5000646E735F636F6E6669675F636D645F63B7 +:107A6000620000006765745F73746174655F7463BE +:107A7000705F636D645F6362000000007265715F38 +:107A80007265706C795F686F73745F62795F6E6145 +:107A90006D655F636200000073746172745F636C94 +:107AA00069656E745F7463705F636D645F636200C9 +:107AB000572D5B25735D2057726F6E67207465725A +:107AC0006D696E6174696F6E20696E6465783A25C0 +:107AD00064206E506172616D3A2564206964783A61 +:107AE00025642031366269743A25640A000000007A +:107AF0003078257820000000572D5B25735D2049E4 +:107B00006E646578206F7574206F662072616E6791 +:107B1000653A2025640A00005B25735D20535349B4 +:107B2000443A25730A0000005B25735D20525353CD +:107B3000493A25640A0000005B25735D20454E43E9 +:107B4000543A25640A0000005B25735D205365618B +:107B5000726368696E6720666F7220486F73743A4B +:107B60002069703D3078257820666F756E643D25FC +:107B7000640A00005B25735D20666F756E64486F54 +:107B8000737442794E616D653A20466F756E64205C +:107B9000486F73743A206E616D653D25732069707E +:107BA0003D307825780A00005B25735D20696653B7 +:107BB00074617475733A256420726573756C743AD8 +:107BC00025640A004C69737420436F6D6D616E64A7 +:107BD000732066756C6C210A000000005245434515 +:107BE000495645005452414E534D4954000000003F +:107BF0005B25735D204D6170205B25642C20257012 +:107C00002C2025735D0A00005B25735D20535049CD +:107C100020696E697469616C697A6174696F6E203C +:107C20006661696C65642100572D5B25735D204595 +:107C300072726F7220636F6E6669677572696E67C4 +:107C4000205350490A000000572D5B25735D202505 +:107C5000645D20446973616C6C2E2025642F25645B +:107C600020636D643A25640A00000000572D5B25EF +:107C7000735D2025645D20446973616C6C2E202542 +:107C8000640A00005B25735D3A200000572D5B25D8 +:107C9000735D2025645D204E6F7420666F756E6481 +:107CA00020656E6420636D643A20307825780A0080 +:107CB0005B25735D2025732025640A00572D5B2505 +:107CC000735D20456E64206F6620636D6420706173 +:107CD00072616D73000000005B25735D2064617448 +:107CE00061417661696C3A25640A0000572D5B2575 +:107CF000735D2054544350206E6F7420666F756E10 +:107D00006420666F7220736F636B3A25640A00000B +:107D10005B25735D20736F636B3A25642073746118 +:107D200074653A25640A00005B25735D20737461F5 +:107D300074653A25640A00005B25735D2053746105 +:107D40007274204E6574776F726B205363616E207E +:107D500025640A00572D5B25735D206572723D25F1 +:107D6000640A00005B25735D204C6F6F6B696E6762 +:107D700020666F7220486F73743A206E616D653DA6 +:107D800025730A005B25735D20466F756E6420487D +:107D90006F73743A206E616D653D25732069703D87 +:107DA000307825780A0000005B25735D2053746FDE +:107DB0007020636C69656E7420736F636B3A256421 +:107DC0000A00000055445000544350005B25735D89 +:107DD00020416464723A307825782C20706F727478 +:107DE0003A25642C20736F636B3A25642C207072E3 +:107DF0006F743A25730A0000572D5B25735D205080 +:107E0000726576696F757320636C69656E74202581 +:107E100070206E6F742073746F7070656420210A17 +:107E2000000000005B25735D205374617274204371 +:107E30006C69656E74202573202570205B30782571 +:107E4000782C2025642C2025645D204F4B210A00CE +:107E50005B25735D20537461727420436C69656E99 +:107E600074202573202570205B307825782C202500 +:107E7000642C2025645D204641494C4544210A007C +:107E8000572D5B25735D205374696C6C20636F6E96 +:107E90006E65637465642E2E2E776169740A000026 +:107EA000572D5B25735D20494620646F776E2E2E1B +:107EB0002E776169740A00005B25735D205374613D +:107EC000727420536572766572202573205B256479 +:107ED0002C2025645D204F4B210A0000572D5B2587 +:107EE000735D2053746172742053657276657220DD +:107EF0002573205B25642C2025645D204641494C78 +:107F00004544210A000000005B25735D2025702098 +:107F10006E756D506172616D3D2564207061726D8A +:107F200073546F4368616E67653D25640A00000005 +:107F30005B25735D2025645D206E69663A2570209F +:107F40006C7769705F616464723D307825780A00EF +:107F50005B25735D20257320706172616D733D2513 +:107F6000640A00005B25735D20506173733A20251D +:107F7000732025640A000000572D5B25735D2025C2 +:107F800073203A204661696C656420746F206164D7 +:107F90006420706173737068726173650A00000019 +:107FA000436F6E6E65637420746F206E6574776FB7 +:107FB000726B2E2E2E0000006572723D25640A0041 +:107FC0004F4B0A00572D5B25735D205353494420C6 +:107FD0006C656E206F7574206F662072616E6765C8 +:107FE000000000005B25735D2025730A000000007F +:107FF000572D5B25735D2053656E642053504920D7 +:108000006572726F72210A003D3D3E003C3D3D00AD +:10801000572D5B25735D20556E6B6E6F776E2063F9 +:108020006D6420307825780A00000000572D5B250C +:10803000735D2025645D20436865636B20666F7205 +:108040006D6174206D7367206661696C6564210AD7 +:1080500000000000444F574E000000005550000043 +:1080600049462020207374617475733A2025730A81 +:1080700000000000434F4E4E207374617475733AD4 +:108080002025730A00000000536F636B6574206E37 +:108090002E3A256428256429205B307825785D20D8 +:1080A000257320257320616464723A257320706FF4 +:1080B00072743A25640A00005B2564207470637052 +:1080C0002D25705D2D5374617475733A25640A0013 +:1080D0005B746C63702D25705D2D537461747573C2 +:1080E0003A25640A000000005B757063702D2570EE +:1080F0005D20666C6167733A3078257820206C6F5C +:1081000063616C3A25735B307825785D2D25640AB0 +:108110000000000072656D6F74653A257328307831 +:108120002578292D25640A004E4F0000594553003B +:108130004461746120617661696C3A25730A0000BC +:108140002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D5F +:108150002D2D2D2D2D2D2D2D2D2D2D2D2D2D0A009F +:108160005B25735D205363616E206E6F7420636FB7 +:108170006D706C65746564210A0000005B25735D99 +:10818000204E6574776F726B73206E6F7420666F0C +:10819000756E64210A000000636F756C64206E6F59 +:1081A0007420616C6C6F6361746520616C6C206716 +:1081B0007569206E65742061727261790A00000031 +:1081C000636F756C64206E6F7420616C6C6F63619B +:1081D000746520616C6C20677569206E6574730A24 +:1081E000000000005B25735D202564202D20257391 +:1081F000205B25645D2D202564202D202564202D05 +:1082000020307825780A000D000B000C000A0000D1 +:108210007365745F726573756C745F636D64000081 +:108220008000636C800063988000637E80006398A8 +:108230008000638E80006398800063648000639890 +:10824000800063688000638A800063786174637073 +:108250005F706F6C6C5F636F6E6E00007564705F53 +:10826000737461727400000072656D6F76654E659F +:1082700077436C69656E74436F6E6E0061756470F0 +:108280005F726563765F6362000000006765745328 +:1082900074617465546370006172645F7463705FCD +:1082A00073746F7000000000617463705F636F6EC1 +:1082B0006E5F6572725F6362000000006765744EF6 +:1082C0006577436C69656E74436F6E6E4964000038 +:1082D000617463705F636F6E6E5F636C695F65721C +:1082E000725F636200000000617463705F616363CA +:1082F0006570745F636200007564705F73746172AF +:10830000740000005B25735D20747463703A2570FF +:108310002069643D25642C20747063623D25700AD9 +:1083200000000000572D5B25735D204E6F205661C5 +:108330006C696420636C69656E7420666F7220746A +:108340007463703A25700A005B25735D2025645DB7 +:1083500020747463703A257020747063623A2570DB +:108360002073746174653A2564206C7063623A25E9 +:10837000702073746174653A2564206C6566743A84 +:1083800025642073656E743A25640A00572D5B25B9 +:10839000735D20544350206E6F7420696E69746958 +:1083A000616C697A656420747463703A2570207416 +:1083B0007063623A2570206C7063623A25700A001F +:1083C000572D5B25735D204E6F2056616C696420CC +:1083D000496420666F7220747463703A257020704F +:1083E00063623A25700A00005B25735D2062756642 +:1083F0003A2570206C656E3A25640A00572D5B257E +:10840000735D2054544350205B25705D3A20636FA8 +:10841000756C64206E6F7420616C6C6F6361746541 +:1084200020706275660A0000572D5B25735D20542D +:10843000544350205B25705D3A207564705F73650E +:108440006E642829206661696C65640A000000007A +:108450005B25735D2054544350205B25702D25709F +:108460005D3A20636F6E6E65637420256420256419 +:108470000A0000005B25735D206C6566743D256411 +:10848000206C656E3A25640A000000005B25735D70 +:10849000207463705F7772697465206661696C65CA +:1084A000642025702073746174653A2564206C65BE +:1084B0006E3A2564206572723A25640A0000000055 +:1084C000572D5B25735D2074746370203D3D204EF5 +:1084D000554C4C210A0000005B25735D20747463C9 +:1084E000703A2570207063623A2570206275663A92 +:1084F0002570206C656E3A25640A00005B25735D6B +:1085000020272573270A00005B25735D20506163D7 +:108510006B65742073656E74207063623A257020F9 +:108520006C656E3A2564206475723A2564206C652A +:1085300066743A25640A00005B25735D2054544339 +:1085400050205B25705D3A20636C65616E536F63EC +:108550006B53746174655F63622025640A000000D8 +:108560005B25735D20436C6F73696E672074706365 +:10857000623A2073746174653A30782578206572A8 +:10858000723A25640A0000005B25735D20436C6F1E +:1085900073696E67206C7063623A207374617465EE +:1085A0003A30782578206572723A25640A00000016 +:1085B0005B25735D2046726565696E672070617921 +:1085C0006C6F61642025642D25700A005B25735D46 +:1085D00020436C6F73696E6720747063625B2570F3 +:1085E0005D3A2073746174653A307825782065723D +:1085F000723A25640A000000572D5B25735D204305 +:10860000616E6E6F7420636C6F73652069643A25C8 +:10861000642D2570207075742070656E64696E67B6 +:108620000A0000005B25735D202D2D2D2D2D2D2D95 +:108630002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A8D +:1086400000000000572D5B25735D2074746370205B +:108650003D204E554C4C210A000000005B25735D07 +:1086600020666C75736820646174613A207470636D +:10867000623A2570206572723A25640A0000000093 +:10868000572D5B25735D2054544350205B25705D4E +:108690003A20636F6E6E656374696F6E20657272E7 +:1086A0006F723A202564206375727249643A2564BA +:1086B0000A00000041626F727420636F6E6E656322 +:1086C00074696F6E0A000000572D5B25735D20549E +:1086D000544350205B25705D3A20636F6E6E656376 +:1086E00074696F6E206572726F723A202564206122 +:1086F00072673A25700A0000572D5B25735D205480 +:10870000544350205B25705D3A2066726565206D8C +:10871000656D6F72790A00005B25735D20554450CA +:1087200020496E7365727420257020736F636B3AF5 +:10873000256420616464723A257320706F72743A04 +:1087400025640A00572D5B25735D20545443502047 +:108750005B2D5D3A20696E76616C6964206D6F6493 +:10876000650A0000572D5B25735D2054544350204B +:108770005B2D5D3A20696E76616C6964206E62756E +:10878000660A0000572D5B25735D2054544350202A +:108790005B2D5D3A20696E76616C69642062756656 +:1087A0006C656E0A00000000572D5B25735D205438 +:1087B000544350205B2D5D3A20636F756C64206ECE +:1087C0006F7420616C6C6F63617465206D656D6F93 +:1087D000727920666F7220747463700A0000000062 +:1087E000572D5B25735D2054544350205B25705DED +:1087F0003A20636F756C64206E6F7420616C6C6FCF +:1088000063617465207063620A0000005B25735D1C +:108810002025732C20757063623A25702025733AE9 +:1088200025640A00572D5B25735D20545443502066 +:108830005B25705D3A2075647020636F6E6E6563B2 +:1088400074206661696C65640A000000572D5B2521 +:10885000735D2054544350205B25705D3A2062695B +:108860006E64206661696C6564206572723D256482 +:1088700020506F727420616C726561647920757329 +:1088800065640A005B25735D2025732C206C6F6383 +:108890003A307825782D25642072656D3A30782538 +:1088A000782D25640A0000005B25735D20416C6C07 +:1088B0006F63207061796C6F61642025642D257071 +:1088C0000A000000572D5B25735D2054544350204F +:1088D0005B25705D3A20636F756C64206E6F742049 +:1088E000616C6C6F63617465207061796C6F616439 +:1088F0000A0000005B25735D205B747063625D2D70 +:108900002570207061796C6F61643A25700A0000EF +:10891000572D5B25735D2054544350205B25705DBB +:108920003A2074637020636F6E6E656374206661B5 +:10893000696C65640A0000005B25735D2042454652 +:108940004F52452042494E4420747463703A25705A +:10895000206C7063623A2570207063623A25700A59 +:1089600000000000572D5B25735D205454435020B8 +:108970005B25705D3A206C697374656E2066616971 +:108980006C65640A00000000572D5B25735D205361 +:108990007461727420736572766572204641494C29 +:1089A0004544210A000000005B25735D20545443B8 +:1089B00050205B25702D25705D3A206E6275663DF6 +:1089C00025642C206275666C656E3D25642C2070D4 +:1089D0006F72743D2564202825732F2573290A00A2 +:1089E0007574726C3A6E3A703A7600002573000026 +:1089F0005B25735D2041524420544350205B257019 +:108A00005D3A20616363657074206E6577205B2535 +:108A1000705D0A005B25735D206C6F63616C3A25A5 +:108A2000642072656D6F74653A2564207374617497 +:108A3000653A25640A0000007061796C6F616420FA +:108A40006E6F74206672656564210000572D5B258A +:108A5000735D2041524420544350205B25705D20BB +:108A60006172673D257020726574726965733D257A +:108A7000642061626F72740A000000005B25735D00 +:108A8000206B656570416C697665436E743A256448 +:108A9000206B6565705F69646C653A25642070655C +:108AA00072736973745F636E743A25640A00000020 +:108AB0005B25735D2041524420544350205B257058 +:108AC0002D25705D206172673D257020726574727E +:108AD0006965733D25642070656E642E636C6F73E9 +:108AE000653A2564206C656E3A25640A0000000032 +:108AF0005B25735D2041524420544350205B257018 +:108B00002D25705D2074727920746F20636C6F73F3 +:108B1000652070656E64696E673A256420657272BF +:108B20003A25642069643A25640A00005B25735D78 +:108B30002041524420544350205B25702D25705D08 +:108B4000206172673D257020726574726965733D9E +:108B500025642070656E642E636C6F73653A2564BE +:108B600020636F6E6E3A25640A000000572D5B2566 +:108B7000735D2041524420544350205B25702D25C5 +:108B8000705D206172673D25702072657472696541 +:108B9000733D25640A0000005B25735D204152444B +:108BA00020544350205B25702D25705D2074727910 +:108BB00020746F20636C6F73652070656E64696EDE +:108BC000673A25640A0000005B25735D206C656EC2 +:108BD0003A25640A000000005B25735D20736F6313 +:108BE0006B3A2564207063623A2570207062756666 +:108BF0003A2570206572723A256420627566537456 +:108C00006F72653A2570206C656E3A25640A000023 +:108C10005B25735D20617463705F726563765F636B +:108C20006220703D4E554C4C206F6E20736F636B0D +:108C30003A2564207063623A25700A00572D5B253F +:108C4000735D206572723D256420703D25700A00B9 +:108C50005B25735D205265636569766564202570C8 +:108C6000206C656E3A25640A000000006174637030 +:108C70005F737461727400007463705F73656E6417 +:108C80005F646174615F70636200000061746370AF +:108C90005F706F6C6C000000617463705F7265637D +:108CA000765F6362000000006172645F7463705FEE +:108CB000737461727400000067657446697273743E +:108CC000436C69656E7400006172645F7463705F09 +:108CD00064657374726F7900636C6F73655F636F43 +:108CE0006E6E000073656E6455647044617461005B +:108CF000696E736572744E6577436C69656E744313 +:108D00006F6E6E0061636B5F726563766564000011 +:108D10007463705F636F6E6E6563745F636200009F +:108D200073656E645463704461746100636C6F7347 +:108D3000655F636F6E6E5F7063620000636C656198 +:108D40006E536F636B53746174655F636200000000 +:108D50007463705F646174615F73656E74000000BA +:108D600061636B416E6446726565446174610000C5 +:108D7000676574417661696C5463704461746142E3 +:108D80007974650066726565744461746100000001 +:108D9000676574546370446174614279746500005E +:108DA00063616C634D657267654C656E0000000021 +:108DB000696E73657274427566000000697341766E +:108DC00061696C5463704461746142797465000038 +:108DD00066726565744461746149647800000000DE +:108DE0005B25735D202570205B25642C25645D0A5E +:108DF00000000000686561644275663D256420746A +:108E000061696C4275663D25640A000025645D2039 +:108E10007063623A2570204275663A202570204CB6 +:108E2000656E3A25640A00005B25735D20205B2592 +:108E3000645D3A206C656E3A2564206964783A2551 +:108E40006420746F743A25640A0000005B25735D2A +:108E500020417661696C61626C6564206461746153 +:108E60003A2025640A000000572D5B25735D2069B8 +:108E70006478427566206F7574206F662072616E2B +:108E800067653A2025640A005B25735D2025702004 +:108E90006964783A25640A00572D5B25735D20428A +:108EA0007566203D3D204E554C4C21005B25735D81 +:108EB0002041636B207063623A2570206C656E3AC6 +:108EC000256420736F636B3A256420646174613A92 +:108ED00025700A005B25735D206765743A25642060 +:108EE00025702025640A00005B25735D206368659A +:108EF000636B3A25642025642025700A0000000079 +:108F00005B25735D2046726565202570206F74684F +:108F1000657220627566202564207461696C3A254B +:108F20006420686561643A25640A0000572D5B255A +:108F3000735D204F76657277726974696E6720621F +:108F40007566666572202570206964783A2564210B +:108F50000A000000572D5B25735D20706275665F07 +:108F6000636F70795F7061727469616C20666169AA +:108F70006C65643A207372633A25702C20647374B4 +:108F80003A25702C206C656E3A25640A00000000BA +:108F9000572D5B25735D2041766F696420746F20C7 +:108FA0004F76657277726974652064617461205BC5 +:108FB00025642D25645D210A000000005B25735D9A +:108FC00020496E736572745B25645D3A2025703AA2 +:108FD00025642D2564205B25642C25645D0A000032 +:108FE000572D5B25735D20536F636B206F75742065 +:108FF0006F662072616E67653A20736F636B3D2503 +:1090000064000000696E736572745F70427566007B +:109010006765745F70427566000000000000E10043 +:1090200008040000000000000F01110110011301ED +:109030000E01110110010F0106000500636D645F50 +:109040007365745F69700000636D645F736574704D +:1090500061737300636D645F7374617274436C69F0 +:1090600000000000466F756E6420486F73743A20EC +:109070006E616D653D25732069703D307825780AF5 +:109080000000000075736167653A206474203C310C +:109090007C303E0A0000000075736167653A2073FA +:1090A000656E64556470205B736F636B5D0A097352 +:1090B0006F636B3A20736F636B6574204E756D62DE +:1090C00065720A00536F636B65743A2025640A0069 +:1090D0005061747465726E547970653A2025640A23 +:1090E0000000000050726F766100000031323334AE +:1090F000353637383930000046696E65546573740B +:10910000000000006F6666004465627567204F4688 +:10911000460A00007072696E740000004465627552 +:10912000672009656E61626C65643A203078257845 +:109130000A000000566572626F736520656E616299 +:109140006C65643A20307825780A000044756D70AB +:109150002009656E61626C65643A20307825780A72 +:1091600000000000504F6F6C6C2009656E61626CEE +:1091700065643A20307825780A00000044656275FD +:1091800067204F4E0A00000075736167653A2064DE +:1091900065627567203C73656374696F6E3E203C41 +:1091A0006C6576656C3E0A0973656374696F6E3A27 +:1091B00020696E69742C20636D2C207370692C20DB +:1091C000746370202C207574696C2C207761726E2A +:1091D0000A096C6576656C20203A203020286F667D +:1091E00066292C203120286F6E292C2032202876E9 +:1091F0006572626F7365290A096F723A206465624D +:109200007567207072696E742F6F6E2F6F66660AB5 +:1092100000000000696E697400000000737069004E +:1092200074637000636D00007574696C0000000069 +:109230007761726E00000000616C6C0044756D70A7 +:1092400020416C6C20427566666572730A000000EE +:1092500075736167653A2064756D7050627566203C +:109260005B736F636B5D0A09736F636B3A20736F97 +:10927000636B6574204E756D6265720A00000000B4 +:109280006E6F6E650000000044656C6574696E6702 +:1092900020574550206B6579730A0000757361672C +:1092A000653A207365746B6579203C6B65795F69FD +:1092B00064782028302D33293E203C6B6579206965 +:1092C0006E206865783E0A09206F723A20736574D3 +:1092D0006B6579206E6F6E650A000000205745505F +:1092E000206B6579206D75737420626520313020A4 +:1092F000285745502D343029206F722032362028CF +:109300005745502D31303429206469676974730AD8 +:1093100000000000776C5F61706920766572736988 +:109320006F6E2076322E372E300A00006661696C2F +:10933000656420746F20676574206D6163206164CB +:1093400064726573730A0000687720616464723A1E +:109350002025730A000000006C696E6B2073746135 +:109360007475733A20000000697020616464723A79 +:10937000202573202D2000006E65746D61736B3A9B +:10938000202573202D200000676174657761793A8C +:109390002025730A00000000697020696E746572F0 +:1093A0006661636520697320646F776E0A00000050 +:1093B00064686370203A2000656E61626C65640ABF +:1093C0000000000064697361626C65640A0000005B +:1093D000444E533A202573202D2000007573616799 +:1093E000653A207374617274436C69203C697061E2 +:1093F0006464723E203C706F72743E203C736F63F5 +:109400006B3E203C7463702830292F7564702831BE +:10941000293E0A00537461727420636C69656E742E +:10942000206F6E206164647220307825782C207063 +:109430006F727420256420736F636B202564206D28 +:109440006F64652025640A00572D5B25735D2053EA +:109450007461727420636C69656E74206F6E207025 +:109460006F727420256420736F636B2025642070F5 +:10947000726F74202564206D6F646520256420461A +:1094800041494C45440A000075736167653A207391 +:1094900074617274537276203C706F72743E203C1B +:1094A000736F636B3E203C7463702830292F7564A2 +:1094B000702831293E0A00005374617274202573AC +:1094C00020736572766572206F6E20706F727420E3 +:1094D000256420736F636B2025640A00572D5B257C +:1094E000735D2053746172742025732073657276E6 +:1094F0006572206F6E20706F727420256420736F08 +:10950000636B202564204641494C45440A00000015 +:1095100075736167653A20736574646E73205B319F +:109520002D325D206161612E6262622E6363632E63 +:109530006464640A0000000053657420444E5320A4 +:1095400073657276657220256420746F2025730A16 +:10955000000000003D3D3E20444E53313A2025732B +:109560000A0000003D3D3E20444E53323A20257310 +:109570000A00000075736167653A20676574486F7B +:109580007374203C686F73746E616D653E0A0000F1 +:1095900075736167653A207770617373203C7373EC +:1095A00069643E203C706173737068726173653EDC +:1095B0000A0000002573203A204661696C6564202A +:1095C000746F20616464207061737370687261737A +:1095D000650A000075736167653A20647061737392 +:1095E000203C737369643E0A000000002573203A32 +:1095F000204661696C656420746F2064656C6574D5 +:109600006520706173737068726173650A00000091 +:1096100075736167653A206970636F6E666967206C +:109620003C69703E203C6E65746D61736B3E203CFE +:10963000676174657761792D69703E0A00000000EA +:1096400020206F72203A206970636F6E6669672010 +:109650006E6F6E652028746F20656E61626C652088 +:1096600044484350290A00005B25735D206E6966FB +:109670003A2570206C7769705F616464723D307860 +:1096800025780A0075736167653A20636F6E6E65B1 +:109690006374203C737369643E0A0000636D645F09 +:1096A000737461727453727600000000636D645FBE +:1096B00064656C70617373004D494D4C4644000005 +:1096C0000A24200024200000617661696C61626CCC +:1096D0006520636F6D6D616E64733A0A000000006F +:1096E000202025730A000000636F756C64206E6F84 +:1096F0007420616C6C6F63617465206669726D774C +:10970000617265206275666665720A00547565202F +:109710004D61722032362032323A30393A353420B7 +:109720003230313300000000776C5F696E69745F1E +:10973000636F6D706C6574655F6362006661696C10 +:10974000656420746F20696E697420776C20636F84 +:109750006E6E206D67720000572D5B25735D205380 +:109760007069206E6F7420696E697469616C697AC2 +:1097700065640A006C696E6B20646F776E2C2072D2 +:10978000656C6561736520646863700A00000000A1 +:109790006C696E6B20646F776E0A00006C696E6B8B +:1097A0002075702C20636F6E6E6563746564207421 +:1097B0006F20222573220A007265717565737469C2 +:1097C0006E672064686370202E2E2E20000000003B +:1097D0004641494C45440A00626F756E6420746FBF +:1097E0002025730A00000000572D5B25735D20497A +:1097F0006E74657266616365206E6F74207570218A +:109800000A0000007363616E00000000636F6E6EFB +:10981000656374007365746B6579000073746174BB +:1098200075730000646562756700000064756D7093 +:10983000427566006970636F6E66696700000000BC +:10984000747463700000000077706173730000002F +:109850006470617373000000676574486F7374000F +:10986000736574444E53000073746172745372765E +:10987000000000007374617274436C6900000000A2 +:1098800073656E645564700041726475696E6F2013 +:109890005769666920537461727475702E2E2E207C +:1098A0005B25735D0A0000006F7574206F66206D84 +:1098B000656D6F72790000006661696C6564207483 +:1098C0006F207072657061726520666F72206669C4 +:1098D000726D7761726520646F776E6C6F61640A78 +:1098E00000000000436F756C64206E6F7420646527 +:1098F0007465637420776C206465766963652C20D9 +:1099000061626F7274696E670A000000496E766169 +:109910006C6964206669726D776172652064617438 +:10992000612C2061626F7274696E670A000000002A +:109930004661696C656420746F2073746172742071 +:10994000776C20696E697469616C697A6174696F9A +:109950006E0A0000312E312E3000000069705F73F6 +:1099600074617475735F63620000000002000000A0 +:1099700000B71B000800000100010000286E756C94 +:109980006C290000253032782D253032782D253095 +:1099900032782D253032782D253032782D25303211 +:1099A00078000000256C752E256C752E256C752EA3 +:1099B000256C75007373696420746F6F206C6F6E13 +:1099C0006720286D6178202564290A00257320000E +:1099D00022257322000000002052535349202564A1 +:1099E0002064426D200000002041642D486F6320F8 +:1099F00000000000202857455020656E6372797082 +:109A000074696F6E290000002028544B495020656E +:109A10006E6372797074696F6E2900002028434369 +:109A20004D5020656E6372797074696F6E29000005 +:109A3000202020002530325820000000256300003F +:109A40006E6F206E65747320666F756E640A000019 +:109A5000496E76616C6964206C656E6774680A0093 +:109A600025642E25642E25642E256400544B495010 +:109A70000000000043434D500000000057455000D7 +:109A8000776C5F636D5F696E6974000073656C6508 +:109A900063745F6E65740000776C5F636F6E6E5FFA +:109AA0006C6F73745F636200776C5F7363616E5F8A +:109AB000636F6D706C6574655F636200776C5F6582 +:109AC00076656E745F636200776C5F6D6564696173 +:109AD0005F636F6E6E65637465645F636200000050 +:109AE0005B25735D20434D3A206F7574206F6620AF +:109AF0006D656D6F72790A005B25735D20434D3A89 +:109B000020636F756C64206E6F7420726567697373 +:109B1000746572206576656E742063620A000000C9 +:109B20005B25735D20434D3A20696E697469616CF1 +:109B3000697A65640A0000005B25735D20434D3A35 +:109B400020636F6E6E656374656420746F20257387 +:109B50000A0000005B25735D20434D3A20636F6E61 +:109B60006E656374206661696C65642C2073636143 +:109B70006E6E696E670A00005B25735D20434D3A87 +:109B800020636F756C64206E6F74207374617274DF +:109B9000207363616E20616674657220636F6E6E00 +:109BA000656374206661696C210A00005B25735D42 +:109BB00020434D3A20646973636F6E6E656374650C +:109BC000640A00005B25735D20434D3A20636F6E8D +:109BD0006E656374696F6E206C6F73742C20736391 +:109BE000616E6E696E670A005B25735D20434D3AB6 +:109BF00020636F756C64206E6F742073746172746F +:109C0000207363616E20616674657220636F6E6E8F +:109C1000656374206C6F7374210A00005B25735DAB +:109C200020434D3A207363616E20636F6D706C65E5 +:109C30007465640A00000000FFFFFFFFFFFF0000E3 +:109C40005B25735D20434D3A20526F616D696E67ED +:109C50002066726F6D207273736920256420746FA3 +:109C60002025640A000000005B25735D20434D3A07 +:109C7000204E6F2063616E64696461746520666F55 +:109C8000756E6420666F7220737369642022257379 +:109C9000220A00005B25735D20434D3A206661690E +:109CA0006C656420746F20636F6E6E6563740A0068 +:109CB0005B25735D20434D3A206661696C656420C5 +:109CC000746F207363616E0A000000005B25735D92 +:109CD00020434D3A20756E68616E646C6564206542 +:109CE00076656E740A000000776C5F636F6E6E5F5E +:109CF0006661696C7572655F636200000000000157 +:109D0000000018500000000B00001854000000096B +:109D1000000018800000000F000018A400000001DF +:109D2000000018E000000001000018E4000000013D +:109D300000001810000000010000181400000001CD +:109D400000001818000000010000181C00000001AD +:109D5000000018200000000100001824000000018D +:109D600000001828000000010000182C000000036B +:109D700000001830000000010000183C0000000145 +:109D8000000018400000000100001844000000011D +:109D900000001848000000010000184C4173736572 +:109DA0007274696F6E2022257322206661696C656A +:109DB00064206174206C696E6520256420696E20C2 +:109DC00025730A002E2E2F7372632F534F4654575C +:109DD0004152455F4652414D45574F524B2F5345D7 +:109DE0005256494345532F4C5749502F6C77697051 +:109DF0002D312E332E322F7372632F636F72652FC6 +:109E0000646863702E630000646863705F6F7074D1 +:109E1000696F6E3A20646863702D3E6F7074696F6D +:109E20006E735F6F75745F6C656E202B2032202B14 +:109E3000206F7074696F6E5F6C656E203C3D2044CE +:109E40004843505F4F5054494F4E535F4C454E006E +:109E5000646863705F6F7074696F6E5F6279746558 +:109E60003A20646863702D3E6F7074696F6E735F23 +:109E70006F75745F6C656E203C20444843505F4FA3 +:109E80005054494F4E535F4C454E00006468637018 +:109E90005F6F7074696F6E5F747261696C65723A3E +:109EA000206468637020213D204E554C4C0000001A +:109EB000646863705F6F7074696F6E5F74726169FC +:109EC0006C65723A20646863702D3E6D73675F6FD6 +:109ED000757420213D204E554C4C0A006468637017 +:109EE0005F6F7074696F6E5F747261696C65723AEE +:109EF00020646863702D3E6F7074696F6E735F6F5E +:109F000075745F6C656E203C20444843505F4F5031 +:109F100054494F4E535F4C454E0A000064686370CD +:109F20005F6F7074696F6E5F73686F72743A2064EC +:109F30006863702D3E6F7074696F6E735F6F7574B8 +:109F40005F6C656E202B2032203C3D2044484350FE +:109F50005F4F5054494F4E535F4C454E0000000038 +:109F6000646863705F6F7074696F6E5F6C6F6E674B +:109F70003A20646863702D3E6F7074696F6E735F12 +:109F80006F75745F6C656E202B2034203C3D20443F +:109F90004843505F4F5054494F4E535F4C454E001D +:109FA0007265706C79207761736E277420667265B4 +:109FB00065640000646863705F6372656174655F07 +:109FC000726571756573743A206E657469662021D7 +:109FD0003D204E554C4C0000646863705F637265B1 +:109FE0006174655F726571756573743A2064686346 +:109FF0007020213D204E554C4C0000006468637079 +:10A000005F6372656174655F726571756573743ADB +:10A0100020646863702D3E705F6F7574203D3D2035 +:10A020004E554C4C00000000646863705F637265BD +:10A030006174655F726571756573743A20646863F5 +:10A04000702D3E6D73675F6F7574203D3D204E55DA +:10A050004C4C0000646863705F6372656174655F97 +:10A06000726571756573743A20636865636B2074FB +:10A07000686174206669727374207062756620630B +:10A08000616E20686F6C64207374727563742064F1 +:10A090006863705F6D736700646863705F64656CAC +:10A0A0006574655F726571756573743A206E657469 +:10A0B000696620213D204E554C4C00006468637059 +:10A0C0005F64656C6574655F726571756573743A1C +:10A0D000206468637020213D204E554C4C000000E8 +:10A0E000646863705F64656C6574655F72657175E3 +:10A0F0006573743A20646863702D3E705F6F757489 +:10A1000020213D204E554C4C0000000064686370D7 +:10A110005F64656C6574655F726571756573743ACB +:10A1200020646863702D3E6D73675F6F75742021C6 +:10A130003D204E554C4C00006E6574696620213DF3 +:10A14000204E554C4C0000007062756620705F6FA9 +:10A150007574207761736E2774206672656564007C +:10A16000646863705F62696E643A206E65746966E4 +:10A1700020213D204E554C4C000000006468637067 +:10A180005F62696E643A206468637020213D204EEE +:10A19000554C4C00726574203D3D2073697A656FA3 +:10A1A000662873747275637420646863705F6D737E +:10A1B0006729202D20444843505F4F5054494F4E4B +:10A1C000535F4C454E000000726574203D3D206495 +:10A1D0006863702D3E6F7074696F6E735F696E5F38 +:10A1E0006C656E002E2E2F7372632F534F4654579B +:10A1F0004152455F4652414D45574F524B2F5345B3 +:10A200005256494345532F4C5749502F6C7769702C +:10A210002D312E332E322F7372632F636F72652FA1 +:10A22000646E732E63000000646E73207365727633 +:10A230006572206F7574206F66206172726179009B +:10A24000646E732073657276657220686173206E28 +:10A250006F20495020616464726573732073657464 +:10A260000000000070627566206D75737420626571 +:10A2700020696E206F6E652070696563650000005F +:10A28000617272617920696E646578206F757420DF +:10A290006F6620626F756E6473000000756E6B6E82 +:10A2A0006F776E20646E735F7461626C6520656E9B +:10A2B0007472792073746174653A00006C6F636125 +:10A2C0006C686F73740000003230382E36372E32CF +:10A2D00032322E3232320000000400040004000248 +:10A2E000002000050002001E002000002E2E2F730B +:10A2F00072632F534F4654574152455F4652414D6A +:10A3000045574F524B2F53455256494345532F4CB7 +:10A310005749502F6C7769702D312E332E322F73A1 +:10A3200072632F636F72652F6D656D702E63000011 +:10A330006D656D705F667265653A206D656D207044 +:10A34000726F7065726C7920616C69676E6564000C +:10A350006D656D705F6D616C6C6F633A20747970C0 +:10A3600065203C204D454D505F4D41580000000098 +:10A370006D656D705F6D616C6C6F633A206D656DBE +:10A38000702070726F7065726C7920616C69676E95 +:10A3900065640000001C002000B0002400140020B0 +:10A3A00000080010025400002E2E2F7372632F53EA +:10A3B0004F4654574152455F4652414D45574F52C3 +:10A3C0004B2F53455256494345532F4C5749502F15 +:10A3D0006C7769702D312E332E322F7372632F6399 +:10A3E0006F72652F6E657469662E6300626F6775A4 +:10A3F0007320706275663A206C656E20213D207472 +:10A400006F745F6C656E20627574206E6578742061 +:10A410003D3D204E554C4C210000000073686F7587 +:10A420006C64206E6F74206265206E756C6C207396 +:10A43000696E636520666972737420213D206C61CA +:10A4400073742100696620666972737420213D204F +:10A450004E554C4C2C206C617374206D75737420B8 +:10A46000616C736F20626520213D204E554C4C007D +:10A470002E2E2F7372632F534F4654574152455F10 +:10A480004652414D45574F524B2F53455256494323 +:10A4900045532F4C5749502F6C7769702D312E330F +:10A4A0002E322F7372632F636F72652F7062756621 +:10A4B0002E630000286820213D204E554C4C292059 +:10A4C000262620287420213D204E554C4C2920283A +:10A4D00070726F6772616D6D65722076696F6C6105 +:10A4E000746573204150492900000000702D3E74AE +:10A4F0006F745F6C656E203D3D20702D3E6C656E07 +:10A5000020286F66206C6173742070627566206904 +:10A510006E20636861696E2900000000696E6372D5 +:10A52000656D656E745F6D61676E697475646520D5 +:10A530003C3D20702D3E6C656E0000006261642021 +:10A5400070627566207479706500000070627566CF +:10A550005F74616B653A20696E76616C6964206234 +:10A5600075660000706275665F74616B653A20699C +:10A570006E76616C6964206461746170747200004D +:10A58000706275665F74616B653A20696E76616CA6 +:10A590006964207062756600646964206E6F74205F +:10A5A000636F707920616C6C2064617461000000DD +:10A5B000706275665F636F70795F706172746961F4 +:10A5C0006C3A20696E76616C696420627566000081 +:10A5D000706275665F636F70795F706172746961D4 +:10A5E0006C3A20696E76616C696420646174617094 +:10A5F00074720000706275665F636F70793A2074E0 +:10A600006172676574206E6F742062696720656E81 +:10A610006F75676820746F20686F6C6420736F7546 +:10A6200072636500705F746F20213D204E554C4C65 +:10A63000000000006F66667365745F746F203C3DB8 +:10A6400020705F746F2D3E6C656E00006F666673E0 +:10A6500065745F66726F6D203C3D20705F66726F3F +:10A660006D2D3E6C656E0000706275665F636F7085 +:10A6700079282920646F6573206E6F7420616C6C7B +:10A680006F77207061636B65742071756575657394 +:10A69000210A0000706275665F667265653A207314 +:10A6A000616E6520747970650000000070627566E7 +:10A6B0005F667265653A20702D3E726566203E20A9 +:10A6C00030000000702D3E746F745F6C656E203D2D +:10A6D0003D20702D3E6C656E202B20712D3E746FD9 +:10A6E000745F6C656E000000702D3E746F745F6C5B +:10A6F000656E203D3D20702D3E6C656E00000000B3 +:10A70000706275665F7265616C6C6F633A20702071 +:10A71000213D204E554C4C00706275665F7265613C +:10A720006C6C6F633A2073616E6520702D3E747996 +:10A730007065000067726F77203C206D61785F75EF +:10A7400031365F7400000000706275665F7265618B +:10A750006C6C6F633A207120213D204E554C4C00AB +:10A76000706275665F616C6C6F633A206261642031 +:10A7700070627566206C617965720000636865635C +:10A780006B20702D3E7061796C6F6164202B20709E +:10A790002D3E6C656E20646F6573206E6F74206F44 +:10A7A000766572666C6F77207062756600000000D7 +:10A7B000504255465F504F4F4C5F42554653495AA1 +:10A7C00045206D75737420626520626967676572E4 +:10A7D000207468616E204D454D5F414C49474E4D98 +:10A7E000454E540072656D5F6C656E203C206D6156 +:10A7F000785F7531365F7400706275665F616C6C8E +:10A800006F633A207062756620712D3E7061796CBD +:10A810006F61642070726F7065726C7920616C6911 +:10A82000676E656400000000706275665F616C6C45 +:10A830006F633A206572726F6E656F7573207479FD +:10A8400070650000706275665F636F707920666185 +:10A85000696C656400000000010203040506070737 +:10A8600007070707070000002E2E2F7372632F5370 +:10A870004F4654574152455F4652414D45574F52FE +:10A880004B2F53455256494345532F4C5749502F50 +:10A890006C7769702D312E332E322F7372632F63D4 +:10A8A0006F72652F7463702E630000007463705FB5 +:10A8B000706362735F73616E653A20616374697679 +:10A8C00065207063622D3E737461746520213D20A4 +:10A8D000434C4F53454400007463705F7063627370 +:10A8E0005F73616E653A2061637469766520706399 +:10A8F000622D3E737461746520213D204C49535490 +:10A90000454E00007463705F706362735F73616EC5 +:10A91000653A20616374697665207063622D3E73C9 +:10A920007461746520213D2054494D452D5741499E +:10A93000540000007463705F706362735F73616ED4 +:10A94000653A207477207063622D3E73746174657C +:10A95000203D3D2054494D452D57414954000000AC +:10A960007463705F62696E643A2063616E206F6E1B +:10A970006C792062696E6420696E207374617465FD +:10A9800020434C4F534544007463705F7265637697 +:10A9900065643A206C656E20776F756C6420777201 +:10A9A0006170207263765F776E640A00756E7365FE +:10A9B0006E74207365676D656E7473206C65616B72 +:10A9C000696E6700756E61636B6564207365676DA2 +:10A9D000656E7473206C65616B696E6700000000C2 +:10A9E0006F6F736571207365676D656E7473206C2E +:10A9F00065616B696E6700007463705F7063625FAE +:10AA000072656D6F76653A207463705F7063627310 +:10AA10005F73616E652829007463705F6C6973747D +:10AA2000656E3A2070636220616C726561647920A2 +:10AA3000636F6E6E65637465640000007463705FBD +:10AA4000736C6F77746D723A2061637469766520F8 +:10AA50007063622D3E737461746520213D20434C08 +:10AA60004F5345440A0000007463705F736C6F7746 +:10AA7000746D723A20616374697665207063622D2B +:10AA80003E737461746520213D204C495354454EFA +:10AA90000A0000007463705F736C6F77746D723AB4 +:10AAA00020616374697665207063622D3E73746102 +:10AAB000746520213D2054494D452D574149540A84 +:10AAC000000000007463705F736C6F77746D723A8E +:10AAD000206D6964646C652074637020213D20746E +:10AAE00063705F6163746976655F706362730000B1 +:10AAF0007463705F736C6F77746D723A20666972FD +:10AB0000737420706362203D3D207463705F6163E5 +:10AB1000746976655F706362730000007463705FD0 +:10AB2000736C6F77746D723A2054494D452D5741BF +:10AB30004954207063622D3E7374617465203D3DFD +:10AB40002054494D452D5741495400007463705FAE +:10AB5000736C6F77746D723A206D6964646C6520F4 +:10AB600074637020213D207463705F74775F70633D +:10AB7000627300007463705F736C6F77746D723A08 +:10AB800020666972737420706362203D3D20746397 +:10AB9000705F74775F706362730000007463705F4E +:10ABA000636F6E6E6563743A2063616E206F6E6CC6 +:10ABB0007920636F6E6E65637465642066726F6D75 +:10ABC00020737461746520434C4F5345440000006A +:10ABD00053594E5F53454E540000000053594E5F89 +:10ABE000524356440000000045535441424C4953DF +:10ABF0004845440046494E5F574149545F31000083 +:10AC000046494E5F574149545F320000434C4F5311 +:10AC1000455F574149540000434C4F53494E47004C +:10AC20004C4153545F41434B0000000054494D4593 +:10AC30005F5741495400000003060C18306078004B +:10AC40008000FAFC8000FC6C8000FD4E8000FDB4AA +:10AC50008000FE368000FD4E8000FE788000FEF809 +:10AC60002E2E2F7372632F534F4654574152455F18 +:10AC70004652414D45574F524B2F5345525649432B +:10AC800045532F4C5749502F6C7769702D312E3317 +:10AC90002E322F7372632F636F72652F7463705F30 +:10ACA000696E2E63000000007063622D3E736E6457 +:10ACB0005F71756575656C656E203E3D20706275CF +:10ACC000665F636C656E286E6578742D3E70290032 +:10ACD0007463705F726563656976653A2076616C4E +:10ACE0006964207175657565206C656E67746800B0 +:10ACF000696E7365672E7020213D204E554C4C00C7 +:10AD0000696E73616E65206F6666736574210000FD +:10AD10007062756620746F6F2073686F72742100A3 +:10AD2000706275665F686561646572206661696CF2 +:10AD3000656400007463705F726563656976653A87 +:10AD4000207365676D656E74206E6F742074726910 +:10AD50006D6D656420636F72726563746C792074C5 +:10AD60006F207263765F776E640A00007463705FB1 +:10AD7000726563656976653A207365676D656E74A3 +:10AD8000206E6F74207472696D6D656420636F72DC +:10AD9000726563746C7920746F206F6F73657120B6 +:10ADA00071756575650A00007463705F726563652F +:10ADB0006976653A207463706C656E203E2072631C +:10ADC000765F776E640A00007463705F7265636516 +:10ADD0006976653A206F6F736571207463706C6576 +:10ADE0006E203E207263765F776E640A000000007A +:10ADF0007463705F696E7075743A2061637469760C +:10AE000065207063622D3E737461746520213D205E +:10AE1000434C4F53454400007463705F696E707516 +:10AE2000743A20616374697665207063622D3E73A5 +:10AE30007461746520213D2054494D452D57414989 +:10AE4000540000007463705F696E7075743A20611D +:10AE50006374697665207063622D3E7374617465F6 +:10AE600020213D204C495354454E00007463705FCF +:10AE7000696E7075743A207063622D3E6E657874E9 +:10AE800020213D2070636220286265666F72652014 +:10AE900063616368652900007463705F696E707533 +:10AEA000743A207063622D3E6E65787420213D20D7 +:10AEB00070636220286166746572206361636865EF +:10AEC000290000007463705F696E7075743A2054D5 +:10AED000494D452D57414954207063622D3E73748E +:10AEE000617465203D3D2054494D452D57414954DD +:10AEF000000000007463705F696E7075743A2070B2 +:10AF000063622D3E737461746520213D20434C4F74 +:10AF1000534544007063622D3E736E645F717565C6 +:10AF200075656C656E203E20300000007063622DF8 +:10AF30003E61636365707420213D204E554C4C008A +:10AF40007463705F696E7075743A207463705F70BB +:10AF50006362735F73616E65282900002E2E2F7364 +:10AF600072632F534F4654574152455F4652414DED +:10AF700045574F524B2F53455256494345532F4C3B +:10AF80005749502F6C7769702D312E332E322F7325 +:10AF900072632F636F72652F7463705F6F75742EA9 +:10AFA00063000000636865636B20746861742066E9 +:10AFB0006972737420706275662063616E20686FB9 +:10AFC0006C6420737472756374207463705F68645A +:10AFD000720000007463705F656E71756575653A27 +:10AFE000207061636B6574206E65656473207061A9 +:10AFF000796C6F61642C206F7074696F6E732C2094 +:10B000006F722053594E2F46494E202870726F6739 +:10B0100072616D6D65722076696F6C617465732005 +:10B0200041504929000000007463705F656E7175BE +:10B030006575653A206C656E20213D2030207C7C52 +:10B0400020617267203D3D204E554C4C2028707287 +:10B050006F6772616D6D65722076696F6C61746582 +:10B0600073204150492900007463705F656E7175EB +:10B070006575653A207062756673206F6E20717514 +:10B08000657565203D3E206174206C656173742098 +:10B090006F6E65207175657565206E6F6E2D656DBF +:10B0A000707479007463705F656E71756575653A6B +:10B0B000206E6F207062756673206F6E20717565EB +:10B0C0007565203D3E20626F7468207175657565F9 +:10B0D0007320656D707479007573656720213D205C +:10B0E0004E554C4C00000000636865636B2074682B +:10B0F0006174206669727374207062756620636182 +:10B100006E20686F6C642074686520636F6D706C6E +:10B11000657465207365676C656E000070627566A6 +:10B120005F686561646572206661696C65640A00C8 +:10B1300046494E20656E71756575656420746F674C +:10B140006574686572207769746820646174610051 +:10B150007A65726F2D6C656E6774682070627566B3 +:10B16000000000007463705F656E71756575653A07 +:10B170002076616C6964207175657565206C656EFB +:10B1800067746800525354206E6F74206578706540 +:10B190006374656420686572652100002E2E2F732C +:10B1A00072632F534F4654574152455F4652414DAB +:10B1B00045574F524B2F53455256494345532F4CF9 +:10B1C0005749502F6C7769702D312E332E322F73E3 +:10B1D00072632F636F72652F7564702E63000000B9 +:10B1E000726562696E64203D3D203000636865636E +:10B1F0006B20746861742066697273742070627564 +:10B20000662063616E20686F6C642073747275636E +:10B2100074207564705F686472000000702D3E7069 +:10B2200061796C6F6164203D3D20697068647200D3 +:10B230002E2E2F7372632F534F4654574152455F42 +:10B240004652414D45574F524B2F53455256494355 +:10B2500045532F4C5749502F6C7769702D312E3341 +:10B260002E322F7372632F636F72652F697076347D +:10B270002F69636D702E6300636865636B2074686B +:10B2800061742066697273742070627566206361F0 +:10B290006E20686F6C642069636D70206D657373D8 +:10B2A0006167650069636D705F696E7075743A20DF +:10B2B0006D6F76696E6720702D3E7061796C6F617D +:10B2C0006420746F2069702068656164657220660F +:10B2D00061696C65640A0000636865636B2074686B +:10B2E0006174206669727374207062756620636190 +:10B2F0006E20686F6C642073747275637420746858 +:10B30000652049434D502068656164657200000006 +:10B3100069636D705F696E7075743A20636F7079E0 +:10B32000696E6720746F206E657720706275662085 +:10B330006661696C65640A0069636D705F696E704F +:10B3400075743A20726573746F72696E67206F72DC +:10B350006967696E616C20702D3E7061796C6F61F8 +:10B3600064206661696C65640A00000043616E27B1 +:10B3700074206D6F7665206F7665722068656164F4 +:10B38000657220696E207061636B65740000000057 +:10B390002E2E2F7372632F534F4654574152455FE1 +:10B3A0004652414D45574F524B2F534552564943F4 +:10B3B00045532F4C5749502F6C7769702D312E33E0 +:10B3C0002E322F7372632F636F72652F697076341C +:10B3D0002F69702E63000000636865636B207468DA +:10B3E000617420666972737420706275662063618F +:10B3F0006E20686F6C64207374727563742069705A +:10B400005F68647200FFFFFFFF00000000000000A3 +:10B410002E2E2F7372632F534F4654574152455F60 +:10B420004652414D45574F524B2F53455256494373 +:10B4300045532F4C5749502F6C7769702D312E335F +:10B440002E322F7372632F636F72652F697076349B +:10B450002F69705F667261672E630000746869739C +:10B46000206E656564732061207062756620696E68 +:10B47000206F6E65207069656365210073616E6978 +:10B48000747920636865636B206C696E6B656420FA +:10B490006C697374000000007072657620213D2095 +:10B4A00069707200707265762D3E6E657874203D0D +:10B4B0003D2069707200000069705F72656173738E +:10B4C0005F70627566636F756E74203E3D20636CBD +:10B4D000656E0000636865636B20667261676D6509 +:10B4E0006E747320646F6E2774206F7665726C6162 +:10B4F000700000006E6F2070726576696F75732042 +:10B50000667261676D656E742C2074686973206D56 +:10B51000757374206265207468652066697273743F +:10B5200020667261676D656E7421000073616E69DB +:10B53000747920636865636B0000000076616C6954 +:10B54000646174655F646174616772616D3A6E65B0 +:10B5500078745F70627566213D4E554C4C0000005A +:10B5600076616C69646174655F646174616772615E +:10B570006D3A646174616772616D20656E64213D2E +:10B58000646174616772616D206C656E00FFFFFF1E +:10B59000FFFFFF002E2E2F7372632F534F46545719 +:10B5A0004152455F4652414D45574F524B2F5345EF +:10B5B0005256494345532F4C5749502F6C77697069 +:10B5C0002D312E332E322F7372632F6E65746966A0 +:10B5D0002F6574686172702E630000006E65746977 +:10B5E000662D3E6877616464725F6C656E206D7570 +:10B5F0007374206265207468652073616D652061D5 +:10B6000073204554484152505F4857414444525F6B +:10B610004C454E20666F722065746861727021001F +:10B620007120213D204E554C4C000000712D3E7084 +:10B6300020213D204E554C4C00000000722D3E70E4 +:10B6400020213D204E554C4C000000006172705F7F +:10B650007461626C655B695D2E71203D3D204E55C5 +:10B660004C4C000069203C204152505F5441424CF8 +:10B67000455F53495A4500006E657469662D3E6802 +:10B6800077616464725F6C656E203D3D204554486F +:10B690004152505F4857414444525F4C454E000070 +:10B6A000636865636B207468617420666972737483 +:10B6B00020706275662063616E20686F6C64207311 +:10B6C0007472756374206574686172705F68647207 +:10B6D000000000006172705F7461626C655B695D9F +:10B6E0002E7374617465203D3D2050454E44494E93 +:10B6F00047206F7220535441424C45006E6F2070BA +:10B7000061636B65742071756575657320616C6C20 +:10B710006F77656421000000000000002E2E2F735B +:10B7200072632F534F4654574152455F4652414D25 +:10B7300045574F524B2F53455256494345532F4C73 +:10B740005749502F6C7769702D706F72742D312EA0 +:10B75000332E322F48442F69662F6E657469662F29 +:10B76000776C69662E6300000A09000052580000D9 +:10B7700054580000FFFFFF740000000001FFFFFFAE +:10B780000000FFFFFFFFFF400000000001FFFFFF80 +:10B7900041505000484D4700312E352E312E370094 +:10B7A000312E352E312E3100312E352E312E3400F2 +:10B7B00080017C7C80017C7480017C7C80017C6ABF +:10B7C00080017DCA80017D7880017D2A80017CD83E +:10B7D00080017C86800185D2800185CA800185CA6E +:10B7E000800185D2800185C2800185C2800185BA31 +:10B7F000800185BA02040B0C121618242C30424822 +:10B80000606C0000322E312E312E310078C40E00D3 +:10B81000352E332E31000000352E332E350000003A +:10B82000352E332E340000008001BF808001BF928E +:10B830008001BFA88001BF5A8001BF668001BFD4CC +:10B840008001BF5A8001BFE08001BF5A8001BF5A0A +:10B850008001BF5A8001BF5A8001BF5A8001BF5A80 +:10B860008001BF5A8001BF5A8001BF5A8001BF5A70 +:10B870008001BF5A8001BF5A8001BF5A8001BF5A60 +:10B880008001BF5A8001BF5A8001BF5A8001BF5A50 +:10B890008001BF5A8001BF5A8001BF5A8001BF5A40 +:10B8A0008001BF5A8001BF5A8001BF5A8001BF5A30 +:10B8B0008001BF5A8001BF5A8001BF5A8001BF5A20 +:10B8C0008001BF5A8001BF5A8001BF5A8001BF5A10 +:10B8D0008001BF5A8001BF5A8001BF5A8001BF5A00 +:10B8E0008001BF5A8001BF5A8001BF5A8001BF5AF0 +:10B8F0008001BF5A8001BF5A8001BF5A8001BF5AE0 +:10B900008001BF5A8001BF5A8001BF5A8001BF5ACF +:10B910008001BF5A8001BF5A8001BF5A8001BF5ABF +:10B920008001BF5A8001BF7C8001C0448001BF5AA2 +:10B930008001C0448001BF5A8001C17C8001BF5A90 +:10B940008001C1708001BF5A8001C1648001BF5A6B +:10B950008001BF5A8001BF5A8001BF5A8001C1AC2B +:10B960008001BF5A8001BF5A8001C1A08001BF5A27 +:10B970008001C1948001BF5A8001BF5A8001BF5A23 +:10B980008001BF5A8001BF5A8001BF5A8001BF5A4F +:10B990008001BF5A8001BF5A8001BF5A8001BF5A3F +:10B9A0008001BF5A8001BF5A8001BF5A8001BF5A2F +:10B9B0008001BF5A8001BF5A8001BF5A8001BF5A1F +:10B9C0008001BF5A8001BF5A8001BF5A8001BF5A0F +:10B9D0008001BF5A8001BF5A8001BF5A8001BF5AFF +:10B9E0008001BF5A8001BF5A8001BF5A8001BF5AEF +:10B9F0008001BF5A8001BF5A8001BF5A8001BF5ADF +:10BA00008001BF5A8001BF5A8001BF5A8001BF5ACE +:10BA10008001BF5A8001BF5A8001BF5A8001BF5ABE +:10BA20008001BF5A8001BF5A8001BF5A8001BF5AAE +:10BA30008001BF5A8001BF5A8001BF5A8001BF5A9E +:10BA40008001BF5A8001BF5A8001BF5A8001BF5A8E +:10BA50008001BF5A8001BF5A8001BF5A8001BF5A7E +:10BA60008001BF5A8001BF5A8001BF5A8001BF5A6E +:10BA70008001BF5A8001BF5A8001BF5A8001BF5A5E +:10BA80008001BF5A8001BF5A8001BF5A8001BF5A4E +:10BA90008001BF5A8001BF5A8001BF5A8001BF5A3E +:10BAA0008001BF5A8001BF5A8001BF5A8001BF5A2E +:10BAB0008001BF5A8001BF5A8001BF5A8001BF5A1E +:10BAC0008001BF5A8001BF5A8001BF5A8001BF5A0E +:10BAD0008001BF5A8001BF5A8001BF5A8001BF5AFE +:10BAE0008001BF5A8001BF5A8001BF5A8001BF5AEE +:10BAF0008001BF5A8001BF5A8001BF5A8001BF5ADE +:10BB00008001BF5A8001BF5A8001BF5A8001BF5ACD +:10BB10008001BF5A8001C02C8001C1588001C02C17 +:10BB20008001C02C8001C1888001BF5A8001C044BF +:10BB30008001BF5A8001C0508001BF5A8001C050AF +:10BB40008001BF5A8001C02C8001BF5A8001C02CE7 +:10BB50008001C0388001C0388001C0388001BF5AE0 +:10BB60008001C02C8001C02C8001C14C8001BF5AD3 +:10BB70008001BF5A8001C1408001BF5A8001BF5A75 +:10BB80008001BF5A8001BF5A8001BF5A8001BF5A4D +:10BB90008001BF5A8001BF5A8001BF5A8001BF5A3D +:10BBA0008001C1348001BF5A8001BF5A8001BF5A51 +:10BBB0008001BF5A8001BF5A8001BF5A8001BF5A1D +:10BBC0008001C1288001BF5A8001BF5A8001BF5A3D +:10BBD0008001BF5A8001BF5A8001BF5A8001BF5AFD +:10BBE0008001BF5A8001BF5A8001BF5A8001BF5AED +:10BBF0008001BF5A8001BF5A8001BF5A8001BF5ADD +:10BC00008001BF5A8001BF5A8001BF5A8001BF5ACC +:10BC10008001BF5A8001BF5A8001BF5A8001BF5ABC +:10BC20008001BF5A8001BF5A8001BF5A8001BF5AAC +:10BC30008001BF5A8001BF5A8001BF5A8001BF5A9C +:10BC40008001BF5A8001BF5A8001BF5A8001BF5A8C +:10BC50008001BF5A8001BF5A8001BF5A8001BF5A7C +:10BC60008001BF5A8001BF5A8001BF5A8001BF5A6C +:10BC70008001BF5A8001BF5A8001BF5A8001BF5A5C +:10BC80008001BF5A8001BF5A8001BF5A8001BF5A4C +:10BC90008001BF5A8001BF5A8001BF5A8001BF5A3C +:10BCA0008001BF5A8001BF5A8001BF5A8001BF5A2C +:10BCB0008001BF5A8001BF5A8001BF5A8001BF5A1C +:10BCC0008001BF5A8001BF5A8001BF5A8001BF5A0C +:10BCD0008001BF5A8001BF5A8001BF5A8001BF5AFC +:10BCE0008001BF5A8001BF5A8001BF5A8001BF5AEC +:10BCF0008001BF5A8001BF5A8001BF5A8001BF5ADC +:10BD00008001BF5A8001BF5A8001BF5A8001BF5ACB +:10BD10008001BF5A8001BF5A8001BF5A8001BF5ABB +:10BD20008001BF5A8001BF5A8001BF5A8001BF5AAB +:10BD30008001BF5A8001BF5A8001BF5A8001BF5A9B +:10BD40008001BF5A8001BF5A8001BF5A8001BF5A8B +:10BD50008001BF5A8001BF5A8001BF5A8001BF5A7B +:10BD60008001BF5A8001BF5A8001BF5A8001C11CA7 +:10BD70008001C1108001BF5A8001C1048001BF5AF7 +:10BD80008001BF5A8001BF5A8001C0F88001C0EC19 +:10BD90008001BF5A8001BF5A8001C0E08001BF5AB4 +:10BDA0008001BF5A8001C0D48001C0C88001C0BCDE +:10BDB0008001C0B08001C0A48001C0988001C08C07 +:10BDC0008001BF5A8001C0808001C0748001BF5AC9 +:10BDD0008001C0688001C05C8001C48E8001C47C89 +:10BDE0008001C46A8001C4588001C4468001C43403 +:10BDF0008001C3928001C3928001C4228001C410DB +:10BE00008001C3FE8001C3EC8001C3DA8001C3C896 +:10BE10008001C3B68001C3A48001C3A48001C4A073 +:10BE20008001C2D48001C2D48001C2D48001C5C0C7 +:10BE30008001C5AE8001C59C8001C2D48001C2D4FE +:10BE40008001C58A8001C2D48001C2D48001C57836 +:10BE50008001C5668001C5548001C5428001C5309E +:10BE60008001C51E8001C50C8001C4FA8001C4E8B0 +:10BE70008001C2D48001C4D68001C4C48001C2D470 +:10BE80008001C2D48001C2D48001C2D48001C2D456 +:10BE90008001C2D48001C2D48001C2D48001C2D446 +:10BEA0008001C2D48001C2D48001C2D48001C2D436 +:10BEB0008001C2D48001C2D48001C2D48001C2D426 +:10BEC0008001C2D48001C2D48001C2D48001C2D416 +:10BED0008001C2D48001C2D48001C2D48001C2D406 +:10BEE0008001C2D48001C2D48001C2D48001C2D4F6 +:10BEF0008001C2D48001C2D48001C2D48001C2D4E6 +:10BF00008001C2D48001C2D48001C2D48001C2D4D5 +:10BF10008001C2D48001C2D48001C2D48001C2D4C5 +:10BF20008001C2D48001C2D48001C2D48001C2D4B5 +:10BF30008001C2D48001C2D48001C2D48001C2D4A5 +:10BF40008001C2D48001C2D48001C2D48001C2D495 +:10BF50008001C2D48001C2D48001C2D48001C2D485 +:10BF60008001C2D48001C2D48001C2D48001C2D475 +:10BF70008001C2D48001C2D48001C2D48001C2D465 +:10BF80008001C2D48001C2D48001C2D48001C2D455 +:10BF90008001C2D48001C2D48001C2D48001C2D445 +:10BFA0008001C2D48001C2D48001C2D48001C2D435 +:10BFB0008001C2D48001C2D48001C2D48001C2D425 +:10BFC0008001C2D48001C2D48001C2D48001C2D415 +:10BFD0008001C2D48001C2D48001C2D48001C2D405 +:10BFE0008001C2D48001C2D48001C2D48001C2D4F5 +:10BFF0008001C2D48001C2D48001C2D48001C2D4E5 +:10C000008001C2D48001C2D48001C2D48001C2D4D4 +:10C010008001C4B28001EFCA8001EFCE8001EF7AC7 +:10C020008001EF7A8001EF828001EF8A8001EF9238 +:10C030008001EF9A8001EFA28001EFAA8001EFB2A8 +:10C040008001EFBA8001EFC28001EFD68001F96074 +:10C050008001F93E8001F9CC8001F8A68001F9BE8B +:10C060008001F91C8001F8A68001F8E28001F8A6A1 +:10C070008001F8A68001F8A68001F8A68001F8A644 +:10C080008001F8A68001F8A68001F8A68001F8A634 +:10C090008001F8A68001F8A68001F8A68001F8A624 +:10C0A0008001F8A68001F8A68001F8A68001F8A614 +:10C0B0008001F8A68001F8A68001F8A68001F8A604 +:10C0C0008001F8A68001F8A68001F8A68001F8A6F4 +:10C0D0008001F8A68001F8A68001F8A68001F8A6E4 +:10C0E0008001F8A68001F8A68001F8A68001F8A6D4 +:10C0F0008001F8A68001F8A68001F8A68001F8A6C4 +:10C100008001F8A68001F8A68001F8A68001F8A6B3 +:10C110008001F8A68001F8A68001F8A68001F8A6A3 +:10C120008001F8A68001F8A68001F8A68001F8A693 +:10C130008001F8A68001F8A68001F8A68001F8A683 +:10C140008001F8A68001F8A68001F8C08001FA58A5 +:10C150008001F8F08001F8F08001F90E8001F8F01C +:10C160008001F8F08001F8F08001F8F08001F8F02B +:10C170008001F8F08001F8F08001F8F08001F8F01B +:10C180008001F8F08001F90E8001F8F08001F8F0EC +:10C190008001F8F08001F8F08001F8F08001F8F0FB +:10C1A0008001F8F08001FA488001F8F08001F8F091 +:10C1B0008001F8F08001F8F08001F8F08001F8F0DB +:10C1C0008001F8F08001F8F08001F8F08001F8F0CB +:10C1D0008001F8F08001F8F08001F8F08001F8F0BB +:10C1E0008001F8F08001F8F08001F8F08001F8F0AB +:10C1F0008001F8F08001F8F08001F8F08001F8F09B +:10C200008001F8F08001F8F08001F8F08001F8F08A +:10C210008001F8F08001F8F08001F8F08001F8F07A +:10C220008001F8F08001F8F08001F8F08001F8F06A +:10C230008001F8F08001F8F08001F8F08001F8F05A +:10C240008001F8F08001F8F08001F8F08001F8F04A +:10C250008001F8F08001F8F08001F8F08001F8F03A +:10C260008001F8F08001F8F08001F8F08001F8F02A +:10C270008001F8F08001F8F08001F8F08001F8F01A +:10C280008001F8F08001F8F08001F8F08001F8F00A +:10C290008001F8F08001F8F08001F8F08001F8F0FA +:10C2A0008001F8F08001F8F08001F8F08001F8F0EA +:10C2B0008001F8F08001F8F08001F8F08001F8F0DA +:10C2C0008001F8F08001F8F08001F8F08001F8F0CA +:10C2D0008001F8F08001F8F08001F8F08001F8F0BA +:10C2E0008001F8F08001F8F08001F8F08001F8F0AA +:10C2F0008001F8F08001F8F08001F8F08001F8F09A +:10C300008001F8F08001F8F08001F8F08001F8F089 +:10C310008001F8F08001F8F08001F8F08001F8F079 +:10C320008001F8F08001F8F08001F8F08001F8F069 +:10C330008001F8F08001F8F08001F8F08001F8F059 +:10C340008001F8F08001F8F08001F8F08001F8F049 +:10C350008001F90E8001FA348001F8F08001F90EB5 +:10C360008001F8F08001F8F08001F8F08001F8F029 +:10C370008001F8F08001F8F08001F8F08001F90EFA +:10C380008001F8F08001F8F08001FA2C8001FA2495 +:10C390008001FA1C8001FA148001FA0C8001FA0471 +:10C3A0008001FA408001F8F08001FA5057455F495A +:10C3B0004E445F38303231315F434F4E4E45435427 +:10C3C0004544000057455F494E445F3830323131B3 +:10C3D0005F444953434F4E4E454354494E47000036 +:10C3E00057455F494E445F38303231315F494253DF +:10C3F000535F444953434F4E4E4543544544000018 +:10C40000332E312E322E312E34000000352E3233B1 +:10C4100000000000352E32322E320000352E32322E +:10C420002E310000352E322E39000000352E3138E5 +:10C430002E310000352E31382E320000352E3232AA +:10C440002E340000352E32342E320000352E323498 +:10C450002E310000352E31312E310000352E322E96 +:10C4600032000000352E31362E320000352E3136A6 +:10C470002E310000312E312E312E323200000000DC +:10C48000352E322E31392E3500000000352E322E59 +:10C4900031392E3400000000352E322E31392E3342 +:10C4A00000000000352E322E31392E3200000000FF +:10C4B000352E322E31392E3100000000352E322E2D +:10C4C00031000000352E31312E320000352E313151 +:10C4D0002E330000352E31312E340000352E31310F +:10C4E0002E350000352E31312E360000352E3131FB +:10C4F0002E380000352E31312E37000073736964F9 +:10C500000000000070736B004A756E6B41500000B4 +:10C5100057534300656170005746412D53696D7054 +:10C520006C65436F6E6669672D456E726F6C6C65E6 +:10C53000652D312D300000006964656E7469747971 +:10C54000000000006E7277696669000064656661CC +:10C55000756C740057455F494E445F383032313155 +:10C560005F444953434F4E4E4543544544000000F9 +:10C5700057455F494E445F50414952574953455FC3 +:10C580004D49435F4552524F5200000057455F49A5 +:10C590004E445F47524F55505F4D49435F4552529D +:10C5A0004F52000057455F494E445F43414E444956 +:10C5B000444154455F4C495354000000494E4143A7 +:10C5C0005449564500000000444953434F4E4E45E0 +:10C5D00043544544000000005343414E4E494E47EA +:10C5E000000000004153534F43494154494E470016 +:10C5F0004153534F43494154454400003457415936 +:10C600005F48414E445348414B45000047524F5507 +:10C61000505F48414E445348414B4500434F4D50B5 +:10C620004C45544544000000554E4B4E4F574E006C +:10C630004354524C2D4556454E542D5445524D4968 +:10C640004E4154494E47202D207369676E616C201E +:10C650002564207265636569766564007769726533 +:10C660006400000043616E63656C6C696E672061F5 +:10C67000757468656E7469636174696F6E2074693E +:10C680006D656F75740000005750413A2045415068 +:10C690004F4C2070726F63657373696E6720636FB0 +:10C6A0006D706C657465000043616E63656C6C69E8 +:10C6B0006E67207363616E207265717565737400B7 +:10C6C00052534E3A207573696E672049454545209F +:10C6D0003830322E3131692F44392E3000000000BD +:10C6E0005750413A207573696E672049454545208A +:10C6F0003830322E3131692F44332E3000000000A3 +:10C700005750413A204661696C656420746F20700F +:10C7100061727365205750412049452066726F6DE4 +:10C72000206173736F63696174696F6E20696E66EF +:10C730006F0000005750413A2044726976657220BC +:10C74000757365642064697361626C6564206772E7 +:10C750006F75702063697068657220307825782065 +:10C76000286D61736B203078257829202D20726523 +:10C770006A656374000000005750413A20447269B2 +:10C7800076657220757365642064697361626C6597 +:10C790006420706169727769736520636970686588 +:10C7A00072203078257820286D61736B20307825D1 +:10C7B0007829202D2072656A656374005750413ACC +:10C7C00020447269766572207573656420646973AC +:10C7D00061626C6564206B6579206D616E6167656F +:10C7E0006D656E74203078257820286D61736B201C +:10C7F0003078257829202D2072656A6563740000E1 +:10C800005750413A207573696E672047544B204357 +:10C81000434D50005750413A207573696E67204769 +:10C82000544B20544B4950005750413A207573697E +:10C830006E672047544B205745503130340000007C +:10C840005750413A207573696E672047544B205703 +:10C8500045503430000000005750413A207573694C +:10C860006E672050544B2043434D50005750413A7F +:10C87000207573696E672050544B20544B4950000B +:10C880005750413A207573696E672050544B204EC3 +:10C890004F4E45005750413A207573696E67204BE3 +:10C8A00045595F4D474D54203830322E31580000E5 +:10C8B0005750413A207573696E67204B45595F4D5B +:10C8C000474D54205750412D50534B005750413A3B +:10C8D000207573696E67204B45595F4D474D542055 +:10C8E0005750412D4E4F4E45000000005750413AE1 +:10C8F000204661696C656420746F2073656C6563A4 +:10C9000074205750412F52534E0000004661696C0D +:10C91000656420746F20706172736520746865208F +:10C92000636F6E66696775726174696F6E206669A0 +:10C930006C652027257327202D2065786974696E22 +:10C94000670000005265636F6E6669677572617497 +:10C95000696F6E20636F6D706C65746564000000B4 +:10C9600053657474696E672061757468656E746967 +:10C97000636174696F6E2074696D656F75743A20B8 +:10C98000256420736563202564207573656300004A +:10C9900053657474696E67207363616E207265718C +:10C9A000756573743A2025642073656320256420BF +:10C9B000757365630000000041757468656E746985 +:10C9C000636174696F6E20776974682025303278EE +:10C9D0003A253032783A253032783A253032783A72 +:10C9E000253032783A253032782074696D656420BC +:10C9F0006F75742E00000000547279696E672074A0 +:10CA00006F206173736F63696174652077697468FF +:10CA100020253032783A253032783A253032783A4B +:10CA2000253032783A253032783A2530327820284D +:10CA3000535349443D2725732720667265713D2570 +:10CA400064204D487A290000547279696E67207419 +:10CA50006F206173736F63696174652077697468AF +:10CA60002053534944202725732700004173736FD7 +:10CA700063696174696F6E20726571756573742086 +:10CA8000746F2074686520647269766572206661CF +:10CA9000696C6564000000007770615F7375707089 +:10CAA0006C6963616E742076302E352E31300A4306 +:10CAB0006F7079726967687420286329203230307A +:10CAC000332D323030382C204A6F756E69204D611D +:10CAD0006C696E656E203C6A4077312E66693E2037 +:10CAE000616E6420636F6E7472696275746F7273C5 +:10CAF00000000000546869732070726F6772616D86 +:10CB0000206973206672656520736F667477617241 +:10CB1000652E20596F752063616E2064697374728D +:10CB2000696275746520697420616E642F6F72206C +:10CB30006D6F646966792069740A756E6465722028 +:10CB4000746865207465726D73206F662074686503 +:10CB500020474E552047656E6572616C20507562A6 +:10CB60006C6963204C6963656E73652076657273CA +:10CB7000696F6E20322E0A0A416C7465726E6174A0 +:10CB80006976656C792C207468697320736F66749C +:10CB900077617265206D61792062652064697374C4 +:10CBA0007269627574656420756E6465722074685C +:10CBB00065207465726D73206F66207468650A4223 +:10CBC0005344206C6963656E73652E205365652040 +:10CBD000524541444D4520616E6420434F505949B0 +:10CBE0004E4720666F72206D6F72652064657461B8 +:10CBF000696C732E0A0000002530325800000000D6 +:10CC00008003C4FC80024A908002490000000010AA +:10CC100000000014000000000000002000000000E0 +:10CC20008003D3EC80024DF0800248880000006051 +:10CC300000000000000000000000000100000000F3 +:10CC40008003D3F880024DCC800248280000000009 +:10CC500000000000000000000000000000000000D4 +:10CC60008003C50480024D00800248C4000000001B +:10CC700000000000000000000000000000000001B3 +:10CC80008003D4008002408C800247A8000000008E +:10CC90000000000000000000000000000000000094 +:10CCA0008003D40880023F448002467C00000000DC +:10CCB0000000000000000000000000000000000074 +:10CCC0008003D41480023F188002466C00000000EC +:10CCD0000000000000000000000000000000000054 +:10CCE0008003D42080023EEC8002465C00000000FD +:10CCF0000000000000000000000000000000000034 +:10CD00008003D42880023CA4800244740000000008 +:10CD10000000000000000000000000000000000013 +:10CD20008003C51480024B9080024B00000000007D +:10CD300000000000000000000000000000000000F3 +:10CD40008003C53880024A908002490000000068D4 +:10CD50000000006C00000000000000000000000067 +:10CD60008003D43480024A908002490000000070A1 +:10CD7000000000740000000000000000000000003F +:10CD80008003D44880024A90800249000000007865 +:10CD90000000007C000000100000002000000001E6 +:10CDA0008003D45080024A90800249000000008035 +:10CDB00000000084000000000000000000000000EF +:10CDC0008003D45480024A90800249000000008809 +:10CDD0000000008C000000000000000000000001C6 +:10CDE0008003D46080024A908002490000000090D5 +:10CDF0000000000000000000000000000000000033 +:10CE00008003D46880024A908002490000000094A8 +:10CE10000000000000000000000000000000000012 +:10CE20008003D47080024A9080024900000000987C +:10CE300000000000000000000000000000000000F2 +:10CE40008003D47C80024A90800249000000009C4C +:10CE500000000000000000000000000000000000D2 +:10CE60008003D48880024A9080024900000000A01C +:10CE700000000000000000000000000000000001B1 +:10CE80008003D49C80024A9080024900000000A4E4 +:10CE90000000000000000000000000000000000092 +:10CEA0008003D4A480024A9080024900000000A8B8 +:10CEB0000000000000000000000000000000000072 +:10CEC0008003D4B480024A9080024900000000AC84 +:10CED0000000000000000000000000000000000052 +:10CEE0008003D4C880024A9080024900000000B04C +:10CEF0000000000000000000000000000000000032 +:10CF00008003D4D480024A9080024900000000B41B +:10CF10000000000000000000000000000000000011 +:10CF20008003D4E080024A9080024900000000B8EB +:10CF300000000000000000000000000000000000F1 +:10CF40008003D4F080024A9080024900000000BCB7 +:10CF500000000000000000000000000000000000D1 +:10CF60008003D50080024A9080024900000000C082 +:10CF700000000000000000000000000000000001B0 +:10CF80008003D51480024A9080024900000000C44A +:10CF90000000000000000000000000000000000091 +:10CFA0008003D52080024A9080024900000000C81A +:10CFB0000000000000000000000000000000000071 +:10CFC0008003D53080024A9080024900000000CCE6 +:10CFD0000000000000000000000000000000000051 +:10CFE0008003D54480024A9080024900000000D4AA +:10CFF0000000000000000000000000000000000031 +:10D000008003D54C80024A9080024900000000D87D +:10D010000000000000000000000000000000000010 +:10D020008003D55480024A9080024900000000DC51 +:10D0300000000000000000000000000000000000F0 +:10D040008003D55C80024A9080024900000000E025 +:10D0500000000000000000000000000000000001CF +:10D060008003D56080024A9080024900000000E8F9 +:10D0700000000000000000000000000000000000B0 +:10D080008003D56C80024A9080024900000000ECC9 +:10D090000000000000000000000000000000000090 +:10D0A0008003D65C80024DF080024888000000E4D6 +:10D0B0000000000000000000000000000000000070 +:10D0C0008003D57480024DF080024888000000F093 +:10D0D0000000000000000000000000000000000050 +:10D0E0008003D58080024A78800244580000000006 +:10D0F000000000000000000000000000000000012F +:10D100008003D58C80024A608002443C000000000D +:10D11000000000000000000000000000000000010E +:10D120008003D59880024A48800244200000000015 +:10D1300000000000000000000000000000000001EE +:10D140008003D5A480024A3080024404000000001D +:10D1500000000000000000000000000000000001CE +:10D160008003D5B080024DF0800248880000014461 +:10D1700000000000000000000000000000000000AF +:10D180008003D5C080024DF0800248880000000C6A +:10D19000000000000000000000000000000000008F +:10D1A0008003D5CC80024DF0800248880000017CCD +:10D1B000000000000000000000000000000000006F +:10D1C0008003D5DC80024A90800249000000018083 +:10D1D000000000000000000000000000000000004F +:10D1E0008003D5E880024DF0800248880000019C51 +:10D1F000000000000000000000000000000000002F +:10D200008003D5F880024DF0800248880000018438 +:10D21000000000000000000000000001000000000D +:10D220008003D60080024DF0800248880000006430 +:10D2300000000000000000000000000200000000EC +:10D240008003D60880024DF0800248880000014823 +:10D2500000000000000000000000000100000000CD +:10D260008003D62080024DF080024888000001949F +:10D2700000000000000000000000000100000000AD +:10D280008003D62C80024A9080024900000001A051 +:10D29000000000000000000000000000000000008E +:10D2A0008003D63480024DF0800248880000019847 +:10D2B000000000000000000000000001000000006D +:10D2C0008003D63C80024DF0800248880000014C6B +:10D2D000000000000000000000000001000000004D +:10D2E0008003D64880024DF080024888000001A4E7 +:10D2F00000000000000000000000271000000000F7 +:10D300002A0000004F50454E000000005348415293 +:10D31000454400004C454150000000005745503145 +:10D320003034000057455034300000005750412D34 +:10D3300045415000494545453830323158000000DC +:10D340005750410052534E005750413200000000E8 +:10D3500025734F50454E00002573534841524544B4 +:10D360000000000025734C454150000025734343E5 +:10D370004D5000002573544B49500000257357450C +:10D3800050313034000000002573574550343000D0 +:10D3900025734E4F4E45000025735750412D505375 +:10D3A0004B00000025735750412D454150000000AF +:10D3B000257349454545383032315800257357505B +:10D3C000412D4E4F4E45000025735750410000003F +:10D3D000257352534E0000007765705F6B657925A9 +:10D3E0006400000025732573000000007363616E04 +:10D3F0005F73736964000000627373696400000006 +:10D4000070726F746F0000006B65795F6D676D748B +:10D4100000000000706169727769736500000000A8 +:10D4200067726F7570000000617574685F616C678A +:10D4300000000000616E6F6E796D6F75735F6964D7 +:10D44000656E74697479000065617070736B0000BB +:10D450006E61690070617373776F72640000000021 +:10D4600063615F636572740063615F70617468001B +:10D47000636C69656E745F6365727400707269765F +:10D480006174655F6B657900707269766174655F60 +:10D490006B65795F706173737764000064685F66C1 +:10D4A000696C65007375626A6563745F6D6174634E +:10D4B00068000000616C747375626A6563745F6D07 +:10D4C000617463680000000063615F6365727432B9 +:10D4D0000000000063615F7061746832000000004A +:10D4E000636C69656E745F6365727432000000007E +:10D4F000707269766174655F6B6579320000000057 +:10D50000707269766174655F6B6579325F706173A3 +:10D510007377640064685F66696C653200000000C0 +:10D520007375626A6563745F6D617463683200006D +:10D53000616C747375626A6563745F6D617463684E +:10D5400032000000706861736531000070686173BB +:10D5500065320000706373630000000070696E0044 +:10D56000656E67696E655F69640000006B65795F71 +:10D57000696400006561706F6C5F666C6167730061 +:10D580007765705F6B657930000000007765705FCC +:10D590006B657931000000007765705F6B657932EB +:10D5A000000000007765705F6B6579330000000054 +:10D5B0007765705F74785F6B6579696478000000E7 +:10D5C0007072696F72697479000000006561705F44 +:10D5D000776F726B61726F756E6400007061635F6C +:10D5E00066696C6500000000667261676D656E7447 +:10D5F0005F73697A650000006D6F6465000000006C +:10D600007573655F7770730070726F6163746976AC +:10D61000655F6B65795F63616368696E67000000D1 +:10D6200064697361626C65640000000069645F7323 +:10D6300074720000706565726B6579006D6978655C +:10D64000645F63656C6C00006672657175656E631E +:10D6500079000000888E000077696669656E6769E9 +:10D660006E65000057694669456E67696E65000022 +:10D670008003D6588003D664800254C880025420A8 +:10D6800080024F98800252E0800253E8800254A446 +:10D690000000000080024F9A800252C880024F941E +:10D6A00080024F96800252B08002529880024F9CB6 +:10D6B00080024F9E8002523C800251E0800251D491 +:10D6C000800251AC00000000000000008002518088 +:10D6D00080024FF480024FD00000000000000000E4 +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000080024FA08002564E93 +:10D700008002564A80025646800256408002563CAD +:10D7100080025636800256328002562C80025626EF +:10D72000800256928002568C800256888002568271 +:10D730008002567C80025676800256728002566CB9 +:10D740008002566680025B3480025C0880025BE0E7 +:10D7500080025BBA80025BA080025B3480025B3493 +:10D7600080025B3480025DC280025E3A80025E12FB +:10D7700080025D8E80025CC280025AF680025DF4F7 +:10D7800080025DCE800268DC80026AA280026A00AC +:10D7900080026904800268F2800269EE800268DC1F +:10D7A000800268DC800268E8800268E8800268E83D +:10D7B000696E76616C696461746500004354524C13 +:10D7C0002D4556454E542D4541502D535543434507 +:10D7D0005353204541502061757468656E746963C8 +:10D7E0006174696F6E20636F6D706C657465642021 +:10D7F0007375636365737366756C6C7920286261F9 +:10D80000736564206F6E206C6F776572206C617930 +:10D810006572207375636365737329004354524CBA +:10D820002D4556454E542D4541502D5355434345A6 +:10D830005353204541502061757468656E74696367 +:10D840006174696F6E20636F6D706C6574656420C0 +:10D850007375636365737366756C6C7900000000A3 +:10D860004354524C2D4556454E542D4541502D465E +:10D8700041494C55524520454150206175746865B9 +:10D880006E7469636174696F6E206661696C65644A +:10D8900000000000494E495449414C495A45000096 +:10D8A0004541503A206D6F7265207468616E202585 +:10D8B000642061757468656E7469636174696F6E04 +:10D8C00020726F756E6473202D2061626F72740018 +:10D8D0004354524C2D4556454E542D4541502D4EE6 +:10D8E0004F54494649434154494F4E2000000000DF +:10D8F0004354524C2D4556454E542D4541502D53C1 +:10D900005441525445442045415020617574686526 +:10D910006E7469636174696F6E207374617274658B +:10D92000640000004745545F4D4554484F44000093 +:10D930004541503A204661696C656420746F2069E6 +:10D940006E697469616C697A6520454150206D6526 +:10D9500074686F643A2076656E646F722025752056 +:10D960006D6574686F642025752028257329000073 +:10D970004354524C2D4556454E542D4541502D4D46 +:10D980004554484F44204541502076656E646F727F +:10D99000202575206D6574686F6420257520282505 +:10D9A00073292073656C656374656400454150207C +:10D9B0006465696E697400008002794480027ADAD5 +:10D9C00080027B5880027BA280027CC880027CD2CD +:10D9D00080027AC45750413A20544B495020636F1B +:10D9E000756E7465726D656173757265732073749D +:10D9F0006F707065640000004173736F63696174D8 +:10DA0000656420746F2061206E6577204253533A1D +:10DA10002042535349443D253032783A25303278FC +:10DA20003A253032783A253032783A253032783A11 +:10DA300025303278000000004173736F63696174B0 +:10DA40006564207769746820253032783A25303251 +:10DA5000783A253032783A253032783A25303278A3 +:10DA60003A253032780000005750413A20342D5783 +:10DA700061792048616E647368616B6520666169D5 +:10DA80006C6564202D207072652D73686172656409 +:10DA9000206B6579206D617920626520696E636F06 +:10DAA00072726563740000004354524C2D45564514 +:10DAB0004E542D444953434F4E4E45435445442004 +:10DAC0002D20446973636F6E6E656374206576659F +:10DAD0006E74202D2072656D6F7665206B6579738D +:10DAE000000000004D69636861656C204D4943206A +:10DAF0006661696C757265206465746563746564DC +:10DB000000000000544B495020636F756E746572BD +:10DB10006D65617375726573207374617274656489 +:10DB200000000000000000080000000600000006E1 +:10DB3000496E646578202F204141202F20504D4BA5 +:10DB40004944202F2065787069726174696F6E2076 +:10DB500028696E207365636F6E647329202F206FB0 +:10DB600070706F7274756E69737469630A00000077 +:10DB7000256420253032783A253032783A25303203 +:10DB8000783A253032783A253032783A2530327872 +:10DB9000200000002025642025640A00504D4B2001 +:10DBA0004E616D650000000052534E3A207374615F +:10DBB0007274696E67207072652D61757468656E28 +:10DBC0007469636174696F6E2077697468202530A9 +:10DBD00032783A253032783A253032783A25303268 +:10DBE000783A253032783A253032780052534E3A1E +:10DBF0002070726F63657373696E6720504D4B536D +:10DC0000412063616E646964617465206C6973743A +:10DC10000000000052534E3A206E6F7420696E204F +:10DC20007375697461626C652073746174652066D4 +:10DC30006F72206E6577207072652D6175746865EE +:10DC40006E7469636174696F6E00000052534E3ADE +:10DC500020504D4B53412063616E6469646174656B +:10DC600020253032783A253032783A253032783AE9 +:10DC7000253032783A253032783A253032782073A0 +:10DC8000656C656374656420666F72207072652DC3 +:10DC900061757468656E7469636174696F6E0000A4 +:10DCA00052534E3A20504D4B53412063616E64698C +:10DCB0006461746520253032783A253032783A250F +:10DCC0003032783A253032783A253032783A253079 +:10DCD000327820646F6573206E6F74206E656564A2 +:10DCE000207072652D61757468656E746963617406 +:10DCF000696F6E20616E796D6F72650052534E3A96 +:10DD0000206E6F206D6F72652070656E64696E673E +:10DD100020504D4B53412063616E646964617465AA +:10DD20007300000052534E3A2061646465642050D1 +:10DD30004D4B53412063616368652063616E646984 +:10DD40006461746520253032783A253032783A257E +:10DD50003032783A253032783A253032783A2530E8 +:10DD60003278207072696F202564000052534E3A59 +:10DD7000207072652D61757468656E746963617475 +:10DD8000696F6E207769746820253032783A2530C3 +:10DD900032783A253032783A253032783A253032A6 +:10DDA000783A253032782074696D6564206F757417 +:10DDB00000000000636F6D706C657465642073759E +:10DDC000636365737366756C6C79000052534E3AE9 +:10DDD000206661696C656420746F20676574206DCE +:10DDE00061737465722073657373696F6E206B6500 +:10DDF000792066726F6D207072652D617574682070 +:10DE00004541504F4C207374617465206D616368A7 +:10DE1000696E65730000000052534E3A20707265BF +:10DE20002D61757468656E7469636174696F6E20C5 +:10DE30007769746820253032783A253032783A256F +:10DE40003032783A253032783A253032783A2530F7 +:10DE50003278202573000000800000008002B51C8D +:10DE60008002B50A8002B5008002B4FA8002B4F4E0 +:10DE70008002B4EE8002B4E8000FAC010050F20260 +:10DE8000000FAC02000FAC01000FAC050050F20215 +:10DE9000000FAC040050F2010050F2010050F201FA +:10DEA0000050F2050050F200000FAC00000FAC0370 +:10DEB0000050F200000FAC0449454545203830328F +:10DEC0002E315820286E6F20575041290000000045 +:10DED0005750412F49454545203830322E31582F73 +:10DEE00045415000575041322F4945454520383073 +:10DEF000322E31582F45415000000000575041321A +:10DF00002D50534B000000005745502D3430000079 +:10DF10005745502D313034007061697277697365EF +:10DF20005F6369706865723D25730A67726F75700B +:10DF30005F6369706865723D25730A6B65795F6D13 +:10DF4000676D743D25730A005750413A20257320B0 +:10DF5000287372633D253032783A253032783A257D +:10DF60003032783A253032783A253032783A2530D6 +:10DF7000327829005750413A204B6579206E656709 +:10DF80006F74696174696F6E20636F6D706C657416 +:10DF90006564207769746820253032783A253032FC +:10DFA000783A253032783A253032783A253032784E +:10DFB0003A25303278205B50544B3D25732047542E +:10DFC0004B3D25735D0000005750413A20496E7665 +:10DFD000616C6964204541504F4C2D4B657920663A +:10DFE00072616D65202D206B65795F6461746120BD +:10DFF0006F766572666C6F7720282564203E202539 +:10E000006C752900494520696E20332F34206D73CB +:10E010006720646F6573206E6F74206D6174636830 +:10E02000207769746820494520696E2042656163E4 +:10E030006F6E2F50726F62655265737020286E6F1D +:10E040002049453F29000000494520696E20332FB3 +:10E0500034206D736720646F6573206E6F74206D5C +:10E0600061746368207769746820494520696E206F +:10E07000426561636F6E2F50726F62655265737097 +:10E0800000000000506F737369626C6520646F77E5 +:10E090006E67726164652061747461636B2064658E +:10E0A000746563746564202D2052534E207761732C +:10E0B00020656E61626C656420616E642052534E0F +:10E0C0002049452077617320696E206D7367203386 +:10E0D0002F342C20627574206E6F7420696E20427C +:10E0E0006561636F6E2F50726F6265526573700069 +:10E0F0005750413A204661696C656420746F20670F +:10E100006574206D61737465722073657373696FD4 +:10E110006E206B65792066726F6D204541504F4CC3 +:10E12000207374617465206D616368696E65730046 +:10E130005750413A204B65792068616E647368617D +:10E140006B652061626F7274656400005750413ADC +:10E15000204661696C656420746F20676574207265 +:10E16000616E646F6D206461746120666F7220530C +:10E170004E6F6E6365000000506169727769736568 +:10E18000206B657920657870616E73696F6E000031 +:10E190005750413A2047726F75702072656B6579F0 +:10E1A000696E6720636F6D706C6574656420776954 +:10E1B000746820253032783A253032783A2530326A +:10E1C000783A253032783A253032783A253032782C +:10E1D000205B47544B3D25735D00000000000000AC +:10E1E000000000000050F204000FAC02000FAC0170 +:10E1F00052096AD53036A538BF40A39E81F3D7FBBC +:10E200007CE339829B2FFF87348E4344C4DEE9CB05 +:10E21000547B9432A6C2233DEE4C950B42FAC34E7A +:10E22000082EA16628D924B2765BA2496D8BD12530 +:10E2300072F8F66486689816D4A45CCC5D65B692D4 +:10E240006C704850FDEDB9DA5E154657A78D9D8478 +:10E2500090D8AB008CBCD30AF7E45805B8B3450698 +:10E26000D02C1E8FCA3F0F02C1AFBD0301138A6BB2 +:10E270003A9111414F67DCEA97F2CFCEF0B4E673E2 +:10E2800096AC7422E7AD3585E2F937E81C75DF6E90 +:10E2900047F11A711D29C5896FB7620EAA18BE1BF6 +:10E2A000FC563E4BC6D279209ADBC0FE78CD5AF49C +:10E2B0001FDDA8338807C731B11210592780EC5FE2 +:10E2C00060517FA919B54A0D2DE57A9F93C99CEF3E +:10E2D000A0E03B4DAE2AF5B0C8EBBB3C835399613F +:10E2E000172B047EBA77D626E169146355210C7D7D +:10E2F00001020408102040801B36000051F4A75092 +:10E300007E4165531A17A4C33A275E963BAB6BCB8D +:10E310001F9D45F1ACFA58AB4BE303932030FA55FF +:10E32000AD766DF688CC7691F5024C254FE5D7FC9D +:10E33000C52ACBD726354480B562A38FDEB15A49B2 +:10E3400025BA1B6745EA0E985DFEC0E1C32F750232 +:10E35000814CF0128D4697A36BD3F9C6038F5FE70C +:10E3600015929C95BF6D7AEB955259DAD4BE832DE8 +:10E37000587421D349E069298EC9C84475C2896A95 +:10E38000F48E797899583E6B27B971DDBEE14FB6AE +:10E39000F088AD17C920AC667DCE3AB463DF4A1869 +:10E3A000E51A31829751336062537F45B16477E05B +:10E3B000BB6BAE84FE81A01CF9082B947048685892 +:10E3C0008F45FD1994DE6C87527BF8B7AB73D3236E +:10E3D000724B02E2E31F8F576655AB2AB2EB280758 +:10E3E0002FB5C20386C57B9AD33708A5302887F29C +:10E3F00023BFA5B202036ABAED16825C8ACF1C2B3A +:10E40000A779B492F307F2F04E69E2A165DAF4CD90 +:10E410000605BED5D134621FC4A6FE8A342E539D94 +:10E42000A2F355A0058AE132A4F6EB750B83EC3913 +:10E430004060EFAA5E719F06BD6E10513E218AF9C1 +:10E4400096DD063DDD3E05AE4DE6BD4691548DB5EB +:10E4500071C45D050406D46F605015FF1998FB2444 +:10E46000D6BDE997894043CC67D99E77B0E842BDD5 +:10E4700007898B88E7195B3879C8EEDBA17C0A47EE +:10E480007C420FE9F8841EC90000000009808683E1 +:10E49000322BED481E1170AC6C5A724EFD0EFFFB14 +:10E4A0000F8538563DAED51E362D39270A0FD96453 +:10E4B000685CA6219B5B54D124362E3A0C0A67B1C6 +:10E4C0009357E70FB4EE96D21B9B919E80C0C54F29 +:10E4D00061DC20A25A774B691C121A16E293BA0A21 +:10E4E000C0A02AE53C22E043121B171D0E090D0BAC +:10E4F000F28BC7AD2DB6A8B9141EA9C857F119855E +:10E50000AF75074CEE99DDBBA37F60FDF701269F39 +:10E510005C72F5BC44663BC55BFB7E348B4329765D +:10E52000CB23C6DCB6EDFC68B8E4F163D731DCCAB6 +:10E53000426385101397224084C61120854A247DAA +:10E54000D2BB3DF8AEF93211C729A16D1D9E2F4BEC +:10E55000DCB230F30D8652EC77C1E3D02BB3166CEE +:10E56000A970B999119448FA47E96422A8FC8CC4AF +:10E57000A0F03F1A567D2CD8223390EF87494EC722 +:10E58000D938D1C18CCAA2FE98D40B36A6F581CF5A +:10E59000A57ADE28DAB78E263FADBFA42C3A9DE4DB +:10E5A0005078920D6A5FCC9B547E4662F68D13C202 +:10E5B00090D8B8E82E39F75E82C3AFF59F5D80BE74 +:10E5C00069D0937C6FD52DA9CF2512B3C8AC993BE8 +:10E5D00010187DA7E89C636EDB3BBB7BCD267809DA +:10E5E0006E5918F4EC9AB701834F9AA8E6956E65B8 +:10E5F000AAFFE67E21BCCF08EF15E8E6BAE79BD973 +:10E600004A6F36CEEA9F09D429B07CD631A4B2AF86 +:10E610002A3F2331C6A5943035A266C0744EBC375C +:10E62000FC82CAA6E090D0B033A7D815F104984A6E +:10E6300041ECDAF77FCD500E1791F62F764DD68D3F +:10E6400043EFB04DCCAA4D54E49604DF9ED1B5E320 +:10E650004C6A881BC12C1FB84665517F9D5EEA0439 +:10E66000018C355DFA877473FB0B412EB3671D5A1D +:10E6700092DBD252E91056336DD647139AD7618C8C +:10E6800037A10C7A59F8148EEB133C89CEA927EEEA +:10E69000B761C935E11CE5ED7A47B13C9CD2DF5941 +:10E6A00055F2733F1814CE7973C737BF53F7CDEACD +:10E6B0005FFDAA5BDF3D6F147844DB86CAAFF38150 +:10E6C000B968C43E3824342CC2A3405F161DC372FF +:10E6D000BCE2250C283C498BFF0D954139A80171FE +:10E6E000080CB3DED8B4E49C6456C1907BCB846143 +:10E6F000D532B670486C5C74D0B85742C66363A517 +:10E70000F87C7C84EE777799F67B7B8DFFF2F20DB7 +:10E71000D66B6BBDDE6F6FB191C5C55460303050A4 +:10E7200002010103CE6767A9562B2B7DE7FEFE1978 +:10E73000B5D7D7624DABABE6EC76769A8FCACA45B1 +:10E740001F82829D89C9C940FA7D7D87EFFAFA153B +:10E75000B25959EB8E4747C9FBF0F00B41ADADEC18 +:10E76000B3D4D4675FA2A2FD45AFAFEA239C9CBFA0 +:10E7700053A4A4F7E47272969BC0C05B75B7B7C28E +:10E78000E1FDFD1C3D9393AE4C26266A6C36365A4D +:10E790007E3F3F41F5F7F70283CCCC4F6834345CC1 +:10E7A00051A5A5F4D1E5E534F9F1F108E2717193D1 +:10E7B000ABD8D873623131532A15153F0804040CC5 +:10E7C00095C7C752462323659DC3C35E30181828DA +:10E7D000379696A10A05050F2F9A9AB50E070709D5 +:10E7E000241212361B80809BDFE2E23DCDEBEB264C +:10E7F0004E2727697FB2B2CDEA75759F1209091BB2 +:10E800001D83839E582C2C74341A1A2E361B1B2DF4 +:10E81000DC6E6EB2B45A5AEE5BA0A0FBA45252F664 +:10E82000763B3B4DB7D6D6617DB3B3CE5229297B1B +:10E83000DDE3E33E5E2F2F7113848497A65353F5D7 +:10E84000B9D1D16800000000C1EDED2C402020605E +:10E85000E3FCFC1F79B1B1C8B65B5BEDD46A6ABE5C +:10E860008DCBCB4667BEBED97239394B944A4ADE4E +:10E87000984C4CD4B05858E885CFCF4ABBD0D06B19 +:10E88000C5EFEF2A4FAAAAE5EDFBFB16864343C569 +:10E890009A4D4DD766333355118585948A4545CFBA +:10E8A000E9F9F91004020206FE7F7F81A05050F0C2 +:10E8B000783C3C44259F9FBA4BA8A8E3A25151F352 +:10E8C0005DA3A3FE804040C0058F8F8A3F9292AD2A +:10E8D000219D9DBC70383848F1F5F50463BCBCDF60 +:10E8E00077B6B6C1AFDADA75422121632010103055 +:10E8F000E5FFFF1AFDF3F30EBFD2D26D81CDCD4CF3 +:10E90000180C0C1426131335C3ECEC2FBE5F5FE11B +:10E91000359797A2884444CC2E17173993C4C4570F +:10E9200055A7A7F2FC7E7E827A3D3D47C86464AC61 +:10E93000BA5D5DE73219192BE6737395C06060A06C +:10E94000198181989E4F4FD1A3DCDC7F442222663F +:10E95000542A2A7E3B9090AB0B8888838C4646CA0B +:10E96000C7EEEE296BB8B8D32814143CA7DEDE79C5 +:10E97000BC5E5EE2160B0B1DADDBDB76DBE0E03B45 +:10E9800064323256743A3A4E140A0A1E924949DBEE +:10E990000C06060A4824246CB85C5CE49FC2C25D85 +:10E9A000BDD3D36E43ACACEFC46262A6399191A8DB +:10E9B000319595A4D3E4E437F279798BD5E7E73242 +:10E9C0008BC8C8436E373759DA6D6DB7018D8D8CA2 +:10E9D000B1D5D5649C4E4ED249A9A9E0D86C6CB48F +:10E9E000AC5656FAF3F4F407CFEAEA25CA6565AFE8 +:10E9F000F47A7A8E47AEAEE9100808186FBABAD525 +:10EA0000F07878884A25256F5C2E2E72381C1C24DD +:10EA100057A6A6F173B4B4C797C6C651CBE8E8238E +:10EA2000A1DDDD7CE874749C3E1F1F21964B4BDDFD +:10EA300061BDBDDC0D8B8B860F8A8A85E07070907E +:10EA40007C3E3E4271B5B5C4CC6666AA904848D8B3 +:10EA500006030305F7F6F6011C0E0E12C26161A350 +:10EA60006A35355FAE5757F969B9B9D017868691BF +:10EA700099C1C1583A1D1D27279E9EB9D9E1E13899 +:10EA8000EBF8F8132B9898B322111133D26969BBB4 +:10EA9000A9D9D970078E8E89339494A72D9B9BB6E4 +:10EAA0003C1E1E2215878792C9E9E92087CECE49F0 +:10EAB000AA5555FF50282878A5DFDF7A038C8C8F64 +:10EAC00059A1A1F8098989801A0D0D1765BFBFDA10 +:10EAD000D7E6E631844242C6D06868B8824141C375 +:10EAE000299999B05A2D2D771E0F0F117BB0B0CBFD +:10EAF000A85454FC6DBBBBD62C16163A002020201F +:10EB000020202020202028282828282020202020DD +:10EB100020202020202020202020202020881010AD +:10EB20001010101010101010101010101004040409 +:10EB300004040404040404101010101010104141C7 +:10EB400041414141010101010101010101010101B5 +:10EB500001010101010101011010101010104242C9 +:10EB60004242424202020202020202020202020285 +:10EB70000202020202020202101010102000000025 +:10EB80000000000000000000000000000000000085 +:10EB90000000000000000000000000000000000075 +:10EBA0000000000000000000000000000000000065 +:10EBB0000000000000000000000000000000000055 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE0000000000000000000000000000000000025 +:10EBF0000000000000000000000000000000000015 +:10EC00002D2D0000504F5349584C595F434F5252DD +:10EC10004543540025733A206F7074696F6E20600D +:10EC200025732720697320616D626967756F75733D +:10EC30002028636F756C6420626520602D2D25731C +:10EC400027206F7220602D2D257327290A000000D0 +:10EC500025733A20696E76616C6964206F707469FF +:10EC60006F6E202D2D20602D2563270A00000000E7 +:10EC700025733A20617267756D656E7420726571D7 +:10EC8000756972656420666F72206F7074696F6E4B +:10EC9000206000002D2D2573270A00002D256327F5 +:10ECA0000A00000043000000000004A88002F4668F +:10ECB0008002F4888002F2B08002F2E88002F4520E +:10ECC0008002F4508002F3FE8002F4268002F3DC1E +:10ECD0008002F3DC8002F3CC8002F3DC8002F3EAF2 +:10ECE0008002F3EA8002F3DC3030303030303030F4 +:10ECF000303030303030303001020B040B0506016B +:10ED00000B01020B040B0506010B0B0B03040B0597 +:10ED10000B0B0B0B0B0B040B050B0B0B0B0B0B0B50 +:10ED20000B0B0B0B0B05080B040B0B070B0B0B0949 +:10ED30000B040B050B0B0B0B0A0B040B0B0B0B0B38 +:10ED40000B0B0B040B0B0B0B0B0B0B030B0B0B0B22 +:10ED50000B0B0B0B080B0B0B0B0B0B00000000003D +:10ED6000000000000001000304000000000001009A +:10ED7000030400000000000007030400000000007E +:10ED80000000030400000000000000000400000078 +:10ED90000000020003040000000000010005060559 +:10EDA0000000000001000506000000000000000354 +:10EDB0000400000000000008000000000000000047 +:10EDC000080000000000000000000000000000003B +:10EDD0003031323334353637383941424344454691 +:10EDE0000000000030313233343536373839616253 +:10EDF0006364656600000000202020202020202081 +:10EE000020202020202020200808080808080808C2 +:10EE10000808080808080808080808080808080872 +:10EE2000080808080808080807080807020808076B +:10EE30000808060708070508000101010101010192 +:10EE40000101080808080808080408040404040468 +:10EE50000808080803080804080808040804080843 +:10EE6000040808080808080808040804040404043E +:10EE70000304030803080404040308040304080843 +:10EE8000040803080808080808080808080808080B +:10EE900008080808080808080808080808080808F2 +:10EEA00008080808080808080808080808080808E2 +:10EEB00008080808080808080808080808080808D2 +:10EEC00008080808080808080808080808080808C2 +:10EED00008080808080808080808080808080808B2 +:10EEE00008080808080808080808080808080808A2 +:10EEF0000808080808080808080808080808080892 +:10EF00000808080808080808000A000100020003B1 +:10EF1000000400050006000700080009000A000BB5 +:10EF2000000C000D000E000F00100000000000009B +:10EF300000000000000000000000000000000000D1 +:10EF400000000000000000000000000000000000C1 +:10EF500000000000000000000000000000000000B1 +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000000000000091 +:10EF800000000000000000000000000080037FB4CB +:10EF900080037E2080037E2080037E2080037E20ED +:10EFA00080037E2080037E2080037E2080037E20DD +:10EFB00080037E20FFFFFFFFFFFFFFFF49534F2D20 +:10EFC000383835392D310000800333228003334433 +:10EFD0008003316C800331A48003330E8003330C33 +:10EFE000800332BA800332E2800332988003329881 +:10EFF0008003328880033298800332A6800332A6D1 +:10F00000800332988003363480034AA480034AA4E4 +:10F010008003364480034AA480034AA480034AA4A0 +:10F0200080034AA480034AA480034AA4800336488C +:10F030008003371C80034AA48003371880033724D9 +:10F0400080034AA480033842800338468003384650 +:10F0500080033846800338468003384680033846AC +:10F0600080033846800338468003384680034AA42C +:10F0700080034AA480034AA480034AA480034AA4CC +:10F0800080034AA480034AA480034AA480034AA4BC +:10F0900080034AA48003394480033B9680034AA43A +:10F0A00080033B9680034AA480034AA480034AA4B9 +:10F0B00080034AA48003387880034AA480034AA4CA +:10F0C0008003416280034AA480034AA480034AA4C7 +:10F0D00080034AA480034AA48003452680034AA4EF +:10F0E00080034AA48003361A80034AA480034AA4FA +:10F0F00080034AA480034AA480034AA480034AA44C +:10F1000080034AA480034AA480034AA480034AA43B +:10F11000800338988003395A80033B9680033B96DE +:10F1200080033B968003387C8003395A80034AA4CD +:10F1300080034AA48003388080034AA480033FA24E +:10F1400080034178800343A48003389480034AA459 +:10F150008003445880034AA48003453C80034AA4AA +:10F1600080034AA48003476E01020B040B050601CD +:10F170000B01020B040B0506010B0B0B03040B0523 +:10F180000B0B0B0B0B0B040B050B0B0B0B0B0B0BDC +:10F190000B0B0B0B0B05080B040B0B070B0B0B09D5 +:10F1A0000B040B050B0B0B0B0A0B040B0B0B0B0BC4 +:10F1B0000B0B0B040B0B0B0B0B0B0B030B0B0B0BAE +:10F1C0000B0B0B0B080B0B0B0B0B0B0000000000C9 +:10F1D0000000000000010003040000000000010026 +:10F1E000030400000000000007030400000000000A +:10F1F0000000030400000000000000000400000004 +:10F2000000000200030400000000000100050605E4 +:10F2100000000000010005060000000000000003DF +:10F2200004000000000000080000000000000000D2 +:10F2300008000000000000000000000000000000C6 +:10F24000494E4600696E66004E414E006E616E008A +:10F2500020202020202020202020202020202020AE +:10F26000303030303030303030303030303030309E +:10F27000080808080808080808080808080808080E +:10F2800008080808080808080808080808080808FE +:10F2900007080807020808070808060708070508FE +:10F2A0000001010101010101010108080808080825 +:10F2B00008040804040404040808080803080804EF +:10F2C00008080804080408080408080808080808CA +:10F2D00008040804040404040304030803080404E1 +:10F2E00004030804030408080408030808080808BD +:10F2F000080808080808080808080808080808088E +:10F30000080808080808080808080808080808087D +:10F31000080808080808080808080808080808086D +:10F32000080808080808080808080808080808085D +:10F33000080808080808080808080808080808084D +:10F34000080808080808080808080808080808083D +:10F35000080808080808080808080808080808082D +:10F36000080808080808080808080808080808081D +:10F37000496E66696E697479000000004E614E0046 +:10F3800000000005000000190000007D3FF00000B3 +:10F390000000000040240000000000004059000070 +:10F3A00000000000408F40000000000040C38800C3 +:10F3B0000000000040F86A0000000000412E848038 +:10F3C00000000000416312D0000000004197D78484 +:10F3D0000000000041CDCD65000000004202A05FAA +:10F3E0002000000042374876E8000000426D1A9481 +:10F3F000A200000042A2309CE540000042D6BCC4FE +:10F400001E900000430C6BF5263400004341C37985 +:10F4100037E080004376345785D8A00043ABC16DF8 +:10F42000674EC80043E158E460913D004415AF1DAC +:10F4300078B58C40444B1AE4D6E2EF504480F0CFCC +:10F44000064DD59244B52D02C7E14AF644EA784309 +:10F4500079D99DB44341C37937E080004693B8B56C +:10F46000B5056E174D384F03E93FF9F55A827748D5 +:0CF47000F9301D3275154FDD7F73BF3C75 +:10F480000000000455736167653A2074746370204E +:10F490002D742F2D72205B2D6F7074696F6E735DEC +:10F4A00020686F73740A20202020202020202D6CDB +:10F4B0002020202020206C656E677468206F6620F5 +:10F4C00062756673207772697474656E20746F203C +:10F4D0006E6574776F726B202864656661756C74F5 +:10F4E0002031303234290A20202020202020202DD5 +:10F4F0006E2020202020206E756D626572206F6660 +:10F500002062756673207772697474656E20746FFB +:10F51000206E6574776F726B202864656661756C08 +:10F52000742031303234290A20202020202020204D +:10F530002D70202020202020706F7274206E756D39 +:10F5400062657220746F2073656E6420746F20286A +:10F5500064656661756C742032303030290A202071 +:10F560002020202020202D752020202020207564A0 +:10F57000700A20202020202020202D7620202020EE +:10F580002020766572626F73650A000080039954CB +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F6000000000000000000000000000000000000FA +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F6300000000000000000000000000000000000CA +:10F6400000000000000000000000000000000000BA +:10F6500000000000000000000000000000000000AA +:10F660000000000400000000ABCD00000000196E97 +:10F6700010000000FFFFFFFFFFFFFFFFFF7590007E +:10F68000000001FFFFFFFFFEFFFFFFFFFF751000FF +:10F69000000001FFFFFFFFFE00050000800149ECB4 +:10F6A000800149EC800149EC800149EC0000000038 +:10F6B000000002340000000C02040B0C1216182487 +:10F6C0003048606C000000000000000000000000F6 +:10F6D00000000010010000146D3E86B0FFFFFFFF28 +:10F6E000FFFF0000000003E800000001000000012F +:10F6F00000000320000000010000000000000008DE +:10F70000000000020000006400000000000000058E +:10F710000000000F000000050000000F000013882B +:10F7200000001388000007D00000138800003E800E +:10F73000000000020000000C02040B0C121618243A +:10F740003048606C00000000000000000000000075 +:10F7500000000000000000000D0102030405060780 +:10F7600008090A0B0C0D000000000011FF0000004A +:10F770000000000000000000000000000000000089 +:10F780000000000000000000000000000000FFFF7B +:10F79000FFFFFFFF00000001000000030000000168 +:10F7A0000000000100000000000000010000000156 +:10F7B0000000000100000001000000000000000146 +:10F7C0000000000A00000005000000000000000525 +:10F7D00000000000FFFFFFFF00000001000000002C +:10F7E00000000002FF000000000000000000000018 +:10F7F0000000000000000000000000000000000009 +:10F80000000000000000FFFFFFFFFFFF00000001FD +:10F810000000000300000000000007D000000064AA +:10F8200003010100060200000000000C82848B8CA2 +:10F83000129618243048606C0000000000000000A0 +:10F8400000000000000000000000000100000001B6 +:10F85000000000010014000000000014000007D0A8 +:10F860000000000000000001000000000000000691 +:10F8700000000001FFFFFFFF0A00000064756D6DCE +:10F88000795F7373696400000000000000000000ED +:10F890000000000000000000000000000000000068 +:10F8A000303030313032303330343035303630373C +:10F8B0003038303930613062306330643065306602 +:10F8C0003130313131323133313431353136313714 +:10F8D00031383139316131623163316431653166DA +:10F8E00000000000000000028003D670000000004D +:10F8F000800255EC80025614800256588002569CB5 +:10F90000800256AA800255F4800256B6800256D074 +:10F910008002614C8003EAFD0000003F000000010E +:10F920008003EF2C8003EF4C8003EF6C000000009D +:10F9300000000000000000000000000000000000C7 +:10F940008003ECA4000000000000000000000000A4 +:10F9500000000000000000000000000000000000A7 +:10F960000000000000000000000000000000000097 +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000000000000067 +:10F9A0000000000000000000000000000000000057 +:10F9B0000000000000000000000000000000000047 +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F0000000000000000000000000000000000007 +:10FA000000000000000000000000000000000000F6 +:10FA1000000004A800000000000000000000059C99 +:10FA20000000059C000005A4000005A4000005AC32 +:10FA3000000005AC000005B4000005B4000005BCE2 +:10FA4000000005BC000005C4000005C4000005CC92 +:10FA5000000005CC000005D4000005D4000005DC42 +:10FA6000000005DC000005E4000005E4000005ECF2 +:10FA7000000005EC000005F4000005F4000005FCA2 +:10FA8000000005FC00000604000006040000060C4F +:10FA90000000060C00000614000006140000061CFE +:10FAA0000000061C00000624000006240000062CAE +:10FAB0000000062C00000634000006340000063C5E +:10FAC0000000063C00000644000006440000064C0E +:10FAD0000000064C00000654000006540000065CBE +:10FAE0000000065C00000664000006640000066C6E +:10FAF0000000066C00000674000006740000067C1E +:10FB00000000067C00000684000006840000068CCD +:10FB10000000068C00000694000006940000069C7D +:10FB20000000069C000006A4000006A4000006AC2D +:10FB3000000006AC000006B4000006B4000006BCDD +:10FB4000000006BC000006C4000006C4000006CC8D +:10FB5000000006CC000006D4000006D4000006DC3D +:10FB6000000006DC000006E4000006E4000006ECED +:10FB7000000006EC000006F4000006F4000006FC9D +:10FB8000000006FC00000704000007040000070C4A +:10FB90000000070C00000714000007140000071CF9 +:10FBA0000000071C00000724000007240000072CA9 +:10FBB0000000072C00000734000007340000073C59 +:10FBC0000000073C00000744000007440000074C09 +:10FBD0000000074C00000754000007540000075CB9 +:10FBE0000000075C00000764000007640000076C69 +:10FBF0000000076C00000774000007740000077C19 +:10FC00000000077C00000784000007840000078CC8 +:10FC10000000078C00000794000007940000079C78 +:10FC20000000079C000007A4000007A4000007AC28 +:10FC3000000007AC000007B4000007B4000007BCD8 +:10FC4000000007BC000007C4000007C4000007CC88 +:10FC5000000007CC000007D4000007D4000007DC38 +:10FC6000000007DC000007E4000007E4000007ECE8 +:10FC7000000007EC000007F4000007F4000007FC98 +:10FC8000000007FC00000804000008040000080C45 +:10FC90000000080C00000814000008140000081CF4 +:10FCA0000000081C00000824000008240000082CA4 +:10FCB0000000082C00000834000008340000083C54 +:10FCC0000000083C00000844000008440000084C04 +:10FCD0000000084C00000854000008540000085CB4 +:10FCE0000000085C00000864000008640000086C64 +:10FCF0000000086C00000874000008740000087C14 +:10FD00000000087C00000884000008840000088CC3 +:10FD10000000088C00000894000008940000089C73 +:10FD20000000089C000008A4000008A4000008AC23 +:10FD3000000008AC000008B4000008B4000008BCD3 +:10FD4000000008BC000008C4000008C4000008CC83 +:10FD5000000008CC000008D4000008D4000008DC33 +:10FD6000000008DC000008E4000008E4000008ECE3 +:10FD7000000008EC000008F4000008F4000008FC93 +:10FD8000000008FC00000904000009040000090C40 +:10FD90000000090C00000914000009140000091CEF +:10FDA0000000091C00000924000009240000092C9F +:10FDB0000000092C00000934000009340000093C4F +:10FDC0000000093C00000944000009440000094CFF +:10FDD0000000094C00000954000009540000095CAF +:10FDE0000000095C00000964000009640000096C5F +:10FDF0000000096C00000974000009740000097C0F +:10FE00000000097C00000984000009840000098CBE +:10FE10000000098C00000994000009940002000011 +:0CFE2000FFFFFFFF0000000100007AFC63 +:040000058000000077 +:00000001FF diff --git a/libraries/WiFi/extras/binary/wifiHD_2_1.elf b/libraries/WiFi/extras/binary/wifiHD_2_1.elf new file mode 100644 index 0000000000000000000000000000000000000000..9217d48ae4b45d2687f27cb8f0181d9e02eefd87 GIT binary patch literal 1308530 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

    rRmgDi@TZ`vE@h#c!FJD`Zoq3J0$>Vnq7$8Zh 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¥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

    8D!S8hObSq^1x zJ6tIk-Om(n2up%`zQZqJBOEVyh&~acci7NXv@3qTP4a$BfmC$5R<9;%#Z%5Ra*Ya7 zMA7&t=`{tV94Eav*p|}kaA95Z5s&(Noyz*BY%qB_*F#>z-(20DH3`G|Uvt*5P9$~=psDVA^4*!xD(VjA~O6*LQl`gEwD4Cr1| z0_NVQm2x2JW59DEmKIsk-7~rD4^yojudTw9I3vdGpEp8j#LV*;Yg*>Wi>0A5hTGL&a7F9 zA+``5cxzUE*@M@eQWHRzoMMNnkVpG4bbW6lJ}9))J@w0mc(7lBE!C+NrZ67$94KhN zt1%x39f5r&>DPl!U4pRxv>oX;lT%JtTz0G9ks^B(I+Jq)RwON-XIp~-kk<73J~`C1 zb4~FPsRWM>FOoy?lY^E+*-#IZA>SPwVL22(ItXqhyx9fGL~T&mw+#ZLijO1di#?!5 z@Y96R69X|{;IC=;1qlN|fZ@~DnXlmho{o`PlO-43F>A_APhc2E+2^Z`xi#$bAf$T- zeg1aWfF2(zRD~;WVv2;DpHIXGG*2*q&bg+H2oA)*i(u@D*Td7Xg(;a z;fShfp!S(=klwF4z(cKrs`d$>BdWd-K=%PnrhQ*>5=~lPt=SW?*a&Pm0(#F^?0|~< z*@$G_!(XX63Nx$)` zI}RG+UyymjH}TdS?;oNjHLM2iOu=chD;0Md9w6?--(zCxc`gJ2V?%;$*PHlPnxWGo z$p8WCGT0C^NT>(K6!v|zst3l?g)qx5go79^G$9R5Ohc2>5ahi}CyHkL0K2st=C8se z2MrNBWg;tx>0dQ5&dN!r@#Ixi$*>QisPngo!ZA4lc-t;d5``7owLlb3p?!$LDRg=d zob)$wHx`M(pI$@WaypKvu}|Q21TS(RWvWHe7?VXL-SvBz#)b=#udj()@v`9;eB8*# zwTyZIQPWL)17Ez&$E$q2z?yjBal;2Z8iGKlBw2Tf1gesCXG@?{vhJgk8P$U>V+`!f zy*~zqgPJ5T4o%`-cc&S^l1_7gonuEL@I?-dFs!M&SoaDQ1z=bskHv7kPKNc8WmqFG zAj4ANYBH>sUCb?A4z~bSog*I+9&!P$zzrq|2U24FbVk5C~olZWBGx z1GrP(5uq2Y`cPiSw+z2v7&b!~{@8^@P`zl%LS-4wU&*M)qo`~DDpXbGl;u$$RUPG_ z(L<}qIW=k>f};h9*5x{)Jn*Z_O?=!1MWf3jQ8I>(99^Cz1Rstuavk}f z5#UYOUET){^8V?@SQL}SYQQ59(b$N<0u+w9n~FR5zJvB#+f^O=Ap8cu)-CI=MPwH9(y_QT!H(E=MTD=zY@<0 z0MEy@2km$5k4h@>H#X)PwCg-RX7MqdkFg-&86@DYi_HG~=NNcn*uG7J+m-Advu{m% zvv0}O+Bb%xAChS%*C3?pY8wV#Cf7=j#z4a4%!M?VHJvjS?hxN$wz1-6$Ka}Q#LJ6p z2xw_T$PYOIKN=3mv{mseWT$YD-;L-P?A*=sxGLY*c6;0bc2y3r83Q)%OLkRG@KAsk zw4j*w@qWmUMf$k^#<1Y1k+r{_6CZ$aXzImBBM0M5OmWjdBzpn4(KG^M(liMiYn;UyFNV05GHW2ZeC_(cO`(k4uJ?nduPK6y_9?V%K8t zVn;58B+p3Nx zsrKbnSEZGXXosZ$z@lvf!J2xrVNg}%|ut_v58jQAf=RYjACG5)#$zglb!?gybv2i_p;mo#!Yn+Si<+~S_ z(Yud~SD&Ei$h)J>2Tj zh|r3<1&g|6in_R3oFh{nB78eV_=;QxaVxWUj4Ow6jNDB7iP4y*cg(ad^e&=8jx4IZnhKC%_Fxb zukKldYzgKCGuFd{K-LtgL2nKr+i@~?@YqD8?iGM&X>V7C^tX?z4gizx*ay@s2phad zo}JpLO1MEkUl`GZs4EP>7S|uXrb5j?Tf`_~BjLaRM7^zH`F=2f#+IH3`=JUcZ;0!e zqfa2V;srZ1%r(a0^l(oxzJ^`=%dp^GnRQ0TVS@W3!ZeoHcJsr74YaUvHhz?gN7Xpy zlM*l_$QVn$V=EvN@No{yr^YKqP6%jKuxw)ZB8n#YVcQ~2dNSOikV$DW#MCk+K72>k zB67JBP`eQEE3)KM8In(xCGzSlzLyFbR{#cwl+z*P0JSNp3bX4N;zc+?b#CSz-qwfX z(%|NuaVQ@bh*@FT+0T8B(`a8n z)8i^fL#Lz=aztcb{QH=%XIkwnzXRhHeL;{9ANaKTM^!k-c5+iCg_G+v8O~-+7CSls zbY#z1KfO{x#}KdTQl2ky^?iWh4KBMw6}V%QpzxVZi=bT;L7^v<=qkbpy9Ses+M9yO z1=u_=D$NAVVY8Bi&yg*=UJ@^YDYO&FJ_=s+w1mAwSWGziWX3Kr3nDXC5KZcnX7emv z>fh1T?{K=WE5)Hdb%}uO229y&6G#eOqK)!pqy~f$g3j`KU{DX5*P4!)YIt}#$X5=X z!)Jhd*k*-FUzAO|z6=Wsbwh<>19okB>MmJUxT|HPZ82w+;Um+MMSrwZiUp9TWAca5 z9^5LqeHy-6s_S?F>qsuFayTZOuO&QSC2iz~ipgd)4&Z2}?Ll%V*!ji{wtgLRx1y8`pK8FrT6d(x$ zQA)K)haiZ>(#Hctj-4E~NL;@Z!AjWO&S^wIxm0cYyV8iEC=G0@q?3Z7s$C+L=$3XK z(}9pQgM35Sg~0)cg5kGpGj+g1YN)EA!@}w;R~qgq$S#}Q;6@P`l#VpcNMUsv?dIxm zjUTDnG3&sJp9EeKh?AfN^`Q>1GT!fUP#~Vvh-b{GQCn|dX`>8%2a*Qkz%RJ5mIKYl6J=| z|Hx8o8`vf!Mbm|HIt*^7Hqyytb@o%u$x$N)=NTYAADEVc8S9#s;*nlzqk7^P4zo48 z${meSvvh3{&9W`d43wmh%jlFWN;OJ{cwRYCF)qF6iSS#Yz5bxghMiz$~@wQc7@GxEyS*37Q4z7yV@ysRfIwm_64u? zQrf!ih_rQxpQ5VXY7f`Yx^n$jQv(eZV*pV_H*&`e?Lqgu_&@H989SH3^lLl4Za&P;t0UKq&!fve2EBKS1!>>CMW- zowK;t-<8eIBR5Sr4krl00_k~Bs8p&Y(q&UY3lL&9%;b@Nh#Njhqw53aN0&;?IIa~K zP0Legt8~rUs{a0IcuI)nrKF& K#{IQ~sMrEPg;mB?+AL5TmIL;UZe_}|zEx=GiR z&v<;p;5Vi7X6v7BV;0DRT#adzrFq`%c1yO^_CPy7=awmw`UTL!eMG&$n zZC3D_+*37ChkJn${{K(7kzte;QMSD*2@z#$j8Ygc`LJ-&j2%pc8)u@M<0Wohb#>xE zGDt-N;7gCT`B6_-hMUbDQe^PRNE``j0tno&xR>%a;pD`O0AY8;UZj9&Dm0^S8x`R7 zR;}OK3)GBNOKF)L31y?`I#(>J44@Ax&$(XFwxK>UPz6ye8K|p87^uVv-rFTeU1V8Bj;wJbQR+oD|LjX6?BBA6<0qcM!2StHNLKD zxVT}0@pch}HI0Q!t=}rXbPa;l# zr5H=b)`pzFqpCr$lX|sk+hn~pmS3s_WR@Xrx|PurM4Ps-3<(I5DBt1{i}R``ZW2Gr zC}sH$zZ`2Q-LCRPCFGJ4b3k}Irl{-NAyO(dKA;_*kW0h{_g@1<4R>JCUT-x;Hm|gV z`Vdm-jx5qxx-8X$f)zci0fQBpq5D{Dr{3dmtz);ew#iF9@&;K+f9~ z(oJ(n7Tx+l0qV{Sg1ad)c_a~}EAuj(EJ<;_)=aXXW_7(+ocQ z(rES9RH)HovoB4sUYFgD+;$E{jwxd zudM?(G(dOkdk(V(tl^f!Lua=*kBwG3YN!=ILtorvWr2^+qUkFf4&RUxZF5 zpT>q}y>Z@z0l~vzhB+-AD?j<@jGEQZ6ib?FR>OE~l~yeYiN}u%!pR3mhU|`HUMUP0 zf%?AL35VBD*kO+a#Vp>Hhgnqt13rIdhYf9NzSFHnQ!dkYyB~ z!XjYNj~b#SiNG3QC80x4yWmMRt?l+U3P?n{02=_Qp%>qKkDuPE9`&)rgGG%c9!NI? z$O*!Nyf={}oWSVD#5AD?WEDs;i^+j9x>eLp`K>e^-=xt}sk(%gI!^;0rR-GrU7V0N zdoQ5Sn&f?eMDmnc>B7~0du8P{mh;2^#~ZEuUYO^a!h>}$%&8%CY;!6GcEUWsA=Di( zmlSqkk10Z^!iH%T4wQ;gPlN0t<6wQ^QE@02z<#h9(w|FEU$zpImx4B9tkI1Ck?U0r3Ggx>v*Xh-0vY`()2_dXc#t?btaqJVrl0Jmfj^J`|+_lXx!B+{t{B5c{&$W`L- zCs;(wqQjOEu7q{@>@s8)9Lm5{?O+<(^U1=A;CfHS(qb^Q@wUI7O&>8rDq5{WMv5z09Vp#T!wi?|StGSJ}s~x|K zpHi@L15q3%_!irxN6K`$?9k~)UnaYRZcL}7dLwF{Dq15FO$%E@G??z&%bA$rxC#o{ zs=l`!JXslNA!GvopOx~Ckq8?o-AoLYbDo`hTe(M3VgIz1D~bY@+tTDD9nES1m8e02 z(~oSlmTN5Lb<4b=Z8b5_0f-i*`~3k=Kr9Y4_yudoW7NL~^yKBgkjeHfLtI~U5rSeY zQU)Bsz6iDzKkpHR|1Gq2#$WVNY{98u5m~f7d*Du7r5Obk+i*AwB~o^4rw=4gS6wc( zwb>_lr#4_WIf0Wi@lM^G!5@X$Z-%PCmr_(s(WgXp3AX>Bo_d_y+#Mx!p7QoGPgvIe znx_ys0QlY*{mNNFUo?-ED>M z3nixOJ@9)w?0%1tvr)?JgUP`x=*}pS5?C0l*25XiIFW?>ciU%woT|dY+tL7qdg(?I zq-$$m6iroLPqqM%z0ize!=2E8{sveI(~Xl7YH1CLOR*Q#4AwJB0XeZV>Net9 zqk0}d?@TWEZf$vV8*y#H-e;&I!5nS%wB6EGSdh!vP)pLcBfEj%r5Hc`+wOVEL>a3(LH-EL=W#-{?I8T@6HzIvQkhNV(JNI)hOM^ zQ>(9Fk{;RmH~QazN(5)-4*`JgNyL_G-rLQ>^0rC$##_of`xJLgxk) zu7(;%3VQm~b9>1YNJB3RT^8K|C5Qq;w`+ibOk}JoYc6r1s>$N5ZFO^SxD`WEPFcrL z`buNJ$j*Y0FSgi$=5BG8C09XZxG2zYzFR;-C}gB1AnXrWdpUN7m?|JlwjNFhS`)e0 zIBl0WS!>Kz$tt9mEm*6Rw*IGAMp>!1eUdUXkd#FG)er02g3^+UbPA2w}Ul4N(2{(T-c zRzj4T0YeJdwueoK^Cfbn#QYCN;}7>_ErZ^(Sf@_VFgy+peA@1vMX%ftD?f!PpiSh@ za>&h;L#1Uex>ETPV0)k*vQ4_$asnqX4-)y6@Kch`ti7y(Fd!_RK@32sh!h*%B$yUM z%pbZL!;t3Ua8Fxw!kZD4PA~(zgiTY$J9F5For3}?lEYC`;4;VK;-#HK1|AqsXKNE#Z71jqNy}gLV3&XCoO;|84CiKV zfSY>o(IF!aKHAaCF5F6w1GzHXBy*c3K$Ox$Kw*(~R(U!(9SlAEBU8)`-!#T^2Hyuk z*sPOvp!$e#hQ)=-j-E%>MMUW#pKyS@a8NgDr_lv&)I^;?$o=b4$8uynG3NJH^?*8f zb9(l?6lK(fty)j{v=7ZAI34S=`m?bi`}TrB#;~prG|~DHXT5bm@Jlox@)X_%;_!+1 z*d=A|lB}_l?g9ze)k`VSU^k4l=j7)Npj8S`a}DoeBbg|MSSD2;>hT z5(9YPIwi;UA-;H*0=1!LeRflQS?0aY&pVN%K0EUbI=7wFz=7i$Aue>u;zFY<&9Oji zJG#}d)YX(lxn^IrxR6+6^`1?Edwyms(sC+VZ;9QQ6QEM586xm}R7WYIQaWN(r3s*+ zAsTsZCLFo+wv4y}>3V!Kqx#PqXXy>6|3- zYl9_YhDxN}eZ7|8_vnEvGsCx(>|3x-Z-;skvVDK0ni4E*P5 zRQ0CH^E~06f?L%dzAP&ZfAw^zi=5AdWHx0aiPbdXL!Ic!7js9*%o{=yt)7{7fx&DVwjK>Q2A19 z2Wk4PFO_aGsk-q+dcx>;^Jq@xONj^h1FJoxu#!dSt%2;`t1iQURPH)XqjFa`4WzEJ zYA>imbqsX}>e&B96v@iKtz2G`m1pXthhZS`W#y`R@@?DaH}J^rYRzY>nFdbyh% zb;Tq|gmCmJbLH*8nd#l!u}4HjAXCZL0|m{x={aqZan4PT?6kL{7PseJ61%`tqyVaJ zRd3o3R*|mfLZ0zI;KmU$h2T;LuuGsuszKlmDRHS3@xRq;9Z+7n7ss2V9KCOLHe3{@ zE{aoaoE*ubaK??p3xIH252%sBhLH29`O;xj;IQejz{O=4MyOt^e&y0-&XssR5#R`s zRaNy84DYKbrAj&rMeAf8~OiGerBfJsSDlgg1IFImb zScU34l~yoT>ELDjT0J(m_wr4&m(7-y>}()I0eauo4F4-NwRpw_neG8HI`7e{Qdn4} z`m;I=>#PV%6N}1l)Q?Yk+3mlsy8PdQwzM7N9S*bC8FdzlI+%K!mkwsBM{#xzN=;fJ zdu<<*h9}{`n;7G5weSF~IA|SHQ-BUT#-c7QPG8DMVq;XLhK#q4B=7J_8EmP)uvbBJ zc^CK$!+pppzCuq;enRCsURi89+|ibZW~GL0$81`%>o+xC>CPS8g6tkR%vW6Q1>2w= zWy4KS3_+=x+VAU;(W!VvLcI(_+b1IxoaMG_;LIV=kQWcoUHE}PAE3L3do!qIkYeXx z#ZFx;ip1W0iL?EDP|>oWXjx`yJlv%ZZ3CrOFJ)PnUWOx5u}WL*O=_O#{$+ZGl22Jk z5&zdtnz<3QhC#p3*qX0FsHxz(H?XMGNF&9x;d!Twug&F0O6h4T>KUcm2|zY)9t2XW z^5LC{f|pb(^_m6JA{a{OLWHsci!lk$k&e25)1spd&{m<0E$JFr{*)TvgitbWL?Ngab7PK z=or1yvooIau=li$aH!qbWF%f#C}mzSCEUbO=8rl8$;SyRm3^t^FIZA)a&?Roe=7~Ua)z?&SdNd+g4kGX-r!v1E0?hyj;3YJ+~~JZ7&x#LqcIY*lJ0q z0d1=Y1{z@H=9!=?2YpAH>g-f)p+jMtwqUi|B3{}ZMrgcS6KtV4sZ>c;rSkVPn)(UfW3NFo>_#3=pHUZfzY9yig@NtmtiIvBLdV7?N%tmyAPzi z%8Lb}HwxC%0}k7RrRP>z)8|2f?A-rfx}hbc5S=n|cV$IxkQzeCsp-Iyyuxh-91jvZ zmSvCcId&GBH&f-+D&zr&Q?}%!dvjJ`0bMBgwm_j_1FfRH#iW6d2`4o?2%Zu%19T(Z z?7JqGs@u36*&!#{Z0V*iYICurS0k%BtjECpxavZt*5N(I1_C7<<~qmpBxZAe0O6CR z{s3)EyR0R2{@k>Oo&o4jqv{mF5paqkn4~Qi_PccIiHd@(?J@1RiW62rGWYx!T3;~Z z5b4nNIO985RYw+7tj^nzl*pxz>IvWqhF;g!YL45zigKua%Quq*=}@O`{W_VbTfYtr z^g1>$TwY=S2+J$0fnjHk{mJaf`33Zl&cIl8ZezhHX_$(F;VKHS_vQ^8J~M77Nd+PD z1ztT{UHW_)QYh88oLmc$+LA+RRchm|@PInh#(=JpSV}MG$@0t^-D%#!VIv)%9wBE1`P?8k%{qIcpVHe*2`@&+~p&X$*S%Hsqvx5q6;NC6ddd|W#= z+neEgRLX-#L9)#Cn;szoyF(~G18L`%J|Lqojgp9C0{ZzM2dc5vfogq_GMxRv4Iom$ zLC$qb0Ge1+M$noib~wffap;03usLvS-ObjNO}aTPMe5cxn}fm0N{7u26M;Ia_?%a7 zhJvRds|l1TRuvVi{O7E~w3}C)en%@5FrQIz^oZ;oi$YbhRLX>^WVQC7z4oBSwMfue zuN#piL$J9?der?2BqYcU&VYF9!_`)Us*?EZP-uJD%KbHcFjZYc*3qOQ&=ZkIOG`!` zt%wln2jV8)`GVx!~v#%>XJ{QsPlbO?jdfU>3dSs2?Q}{7Ob{lrmB#AjN-0fmE^SMNbOa@>uTX-j zROtZg4acB5Bs+XqCL{{oj|T!1=b}*;%t<-193}q2{9b?$?x@xoRLcElGZlt|qtz#gWFFu7*T6gSS zo!rLKCZId?gH#aX<8Lu_11^+pDGxSvO$r(5M&k*nXi%TFc;`ZQLZrQVJ0 zkeZ)wfrldzf-+3J90}NOlFmpu3D(}bvlah?WUmCib-9|Q zE2Mk%*%KzzNeR2N5_Xpqhf7pc-EAffV(voEJ(SATA}evRUeWb3Mo1~Jzqjq2lS*0D z>`)h-a}?VFs*{!@A@82!TP&q;%S_vZCVJC~61SuZO)DroaNuG$)vJ&FLK*)$MJ!yZ z6thg8HdNPcPFU$au}YlHf$DlVgf*Kv{0cV zn4r!O4u=El9qS5^5Gbgs2MreN1@c&9yjDYmvs{j53HLUGUjJ_6mDja(ZLP%a&sAg* zuXKaZX$a^W@sO+Qv>$4!5-#Ge_fSr!x1-B$SiLeUdu%7wPdYg~cYNw|9NtO0A( zLy*$SF4Z|um9QNc~OILk(fk$j;i|Gi13z!ZtAjA&b8%tuaI1r#o<`O3% z7r{no8QMz!QrFZDMZ@zJkZbS(q||Ktd__RdXn&|rU~WTw05bAB z$?aY}N|L>Lju5Q2Y)o)%o1Kc?xbu%&q_uOp37{)znWE9&O=t`{Cbt7{$Rsk@oreyQ zvVfH9xl26!G9vQ<11blTRACUkLY0%x&fJwHZ+5e8TZ;gtLjSS&6n(d6*Ir4?Z>M-m zL&(o{Q^lc*ZmST)H1ViqfP=x-ibpoxqjx3f9z8(2Lm%YNXbn<=5JSfA-xut^y;jP$ zJ*y-Nef9~_#aL$N-L)6)6xjjahP>7J@?6s+ukY$M4xadqVbzwRtco8QEI4ioO{92C zOy#sW#1E&<(PF(T)`1Nc-TY>NmM;uNw*uUBs$_K_C94x;9Qx8-Fy&pLBn28#ozq+Z zy|;B*^XHkx?I5dEgZOm2m2JH?Zr386Y zIHl7X<#noU2!Hh2hLCZpPHe-zp-PB9*QrDAzh510FLVu$Kn2Hxp-pXf8v3`u4aOy`}vAvn=VlGTNb%a++A4$)PYG>&PM z8Vw!hxKe^GFe|>*^DiZEwuBpD$_CJqaE}<$yVV&BvpA_b1}5I>7;f6xvq)NP;@_O9*-PmHeB9n7b(?SDpc3@NNCv`AK~Mbh8gADSXd zFLlVSQiIROkdEzjH-BHg|vxd)&33vl4Hs;cv3&*bb)D6 zwamb7&)q}5(Y2WYJae}qOtLX@SElA?-p5+O4qHOtC4h#ZoaK%M_zrB z$r$Lmk0ahqSli43-20@CNLJ z@w)kksy!2N+$(TxVUE_2U_uEihig6$S}GZAX&t=<1vA9X&neN|+z^vXx6iWLW`J~C zm1tS3ej6KUs+Tr}0f&()0I`%^iYZ9)gvVWs2d2d)h5*~ zGS8lcSaplc;X+$#rKF>0RX|d7265O)$+D%r=pYp^OJ$iO%fOHo>b*Q%qBWstkB&;> z(jI)Tply>fTojevs8%q9?h4 ztvl|eP4_~}Z=MO7rQ2tFxaI&gsL9UsAe-~=Q*1+eZ)4pb(6F8*Mhi)$RZ47`&u*=~qu4%vqJ)y(EFxb#Ldk7q2-AG9rzGhS+WV$8@bM~v#u2{80R z&j_Gk?N8>dZk>{a)*Lrl|LPgD+Cv+6&!sF&R#|kTb>fi|RO;^+&NTcYLT3km_B*>s zL65jzXu}u6^|Yd*s-m)jwLz(}-49(4csd{$6U>n%x$I(64@0|orfp4G5(YWcCjhE7 z28pd@jpe(Xx^YSnP1^FtscV)?r%M}Ud4e5n`3Xuy#@$vcM{R+np~TMM83@iAdOm7j zho=n#%!RH|GN4lVHe7DQ@wF^zXWvzb1SL6jwv|B~==TRgS6g9En>pKtj25o8RD-aT zA-5i``vC9>R7_BrKyN^Y2N|DpYdLT@3${+iIm%7H5Y^~#O+7{%N|p+zBddIk^Gzc2 z9q(Cf#uMUS%R@t2!hyn&mi&=IOSWwspbv<&jnl|pDIr~DulURAO|{B`JEkJe^EeUQ z$}=60QyaGfVdJ(e7(B9c$^r|wr$Lz$uhIL;1UW+o!7O(qvy@XhYV(06Pn_v)F$kKw zoy&|(FVu!r^>T!+%9jImpU{DU{?3YZ&zP|oP&FSoFtFf3qgMrkdxMS#S#R5bi+y%k zoGzKEo7)qNDef0Hr(G_S(?($5+44^Ey^3_cGdv3yVQ2<+96oTGg`h5%(Q(*@owRbJ zu-T&7_n%|N6{E5`l%#fdW(HWg;U$W$iQU&naT><+eC2xNDMdnJY5Iw?6 ztaBT|P z6dFL#n<_t&;jFs8>bw#}Q8m7MqH%HRx7|l@x0G9lr`@)SzgyyhS(a6*qv){tBdl4S zMsLMMe}o%`YdO6`331R-Jlh1mhU>rVhfz>KYDx9?Q>HWHaZs?hR2K;d3{%mlYi#$4 z!KP5Wt0qf5q*Ur7ulJkrRSFkXtA-;kVyj~UoX`x1^om8`#i=qk;E~Wre8asbg%Ci% z9lg#`(xiY#vJG-$rEc`Yph`}@v*qMibXrSD;P6Zm#Eq0~+hbuw4N)KZhN2#83idTv z3cV*%hUxb;GAcR^s{t*kVbzhxF2uKg2?>N60516mHGtAQiV9~ zU@TP*$p&>J)!~CT1C}rmF0X=)mu{qHhea8>V-t0uW)-mWkjK&(sO4iWI=L(rRK~o^ zS26Ehhh;cSXjJVjbRPxLWTd2Tj(T$Wo(Q|yhOFFNE761X!adsB=#gS~P^{i=-K0^xQFakO8lX$b2avZ4NdF_7`y3K2Q*25-yYCCyhpB%M?vmyDcUR;iIoM2~Lm z2oUfetcfgFw0>OZgZOcgvB_Z!&W-&B4m`ju+w{jU?4oM4?+6=qp z$l2QP?r~U5X-scg#}WuCL)%=Yd-71J$ljFNhq4R?l-IV%D5bq18%EY&nt~zn*#G$k zh$s6!E7Bn=h9kAro9eRTgzH9x7nD#t)pf;pbR^{a7+moEl1zfARPZztQgv`_#?ee| z0HR1N6SWK(8DTPNxIt_DaOpykT{m{6gn~b~q{Tn!AP@mXM+W|ug zZ80#VXz`TMdWK7e2aLpuBi*pTVG<=}e^ItDH18CeA*cy$ktaq2zq6wl&%KTL2ON?N zet__21`cdpam-<@`|Uk-_S^}xrW`VL)`UH$%-ws|9<6g`&zQMi>wdE*%$hxCpF^h3 zm^o#?)@hR_MbTl$tQ<6OHFHN%o~1^~I1?99D!?_-kvAp}MP_j8o`YNQ8-%|h3^0_G z4~%;B7^`7LHv03`zJIShnDY}}jo09dhIifhJ_{id0*I$0bbML$tH)<_S z>yyijIdbh4$vftjcasZFzASmuoSK|_^52rGMN`j6Ru@;sb(*+&Sn^n8u1xMVyBB*T zx1C%Zz2wT%cRua(;=I#lu1(q%&)egQwZ(Bqu3a4W)hyjcC-;C>_Gle+8q_HgMxiU` zCT_Pa+*!4h)B9PFW{Y^X9awdU;NRiL94C0S74#ES+>Uf31`XL(QAjd)@U{|#=w8yS z6wigqB0F%KlLJWO@P&&k-n%q{@hgsBvGVxk3s)c}7e%WUE;(fBk`*K&2#=%CwnJ=2 z#zQFc&EUboyE0E%M=d>SAyUCg6%eW|Xw||)mMlBmhST-}EGKs*#dSL%c@~JWcrhfu z<+G;S(&TrM8FXv#W=-<7#MJM(=V_;T{O-0sS)Z7?I8O6@FZoAel6EG@_=Dtkc~if~ zpy1Vw$zKX)&>mpfr!BF#DeZVFIiqOmZ}$Y;?ak!dniOvLPU?q-yu%*xmP7 zyhrOEi(B`)b@3j1v@UK;M?N{+X;?J@>0Nym>Tyv&OV6P3|n3wa?w*>AB?x z$v4MW z(=s#Y7fE^X4}SQ1+?yg=W$r7Zv^)wW_$LZji@gR-w-IUyF%+ew2Z+$5_e&8NOq(6R9Qu*|)FDI)9 z&Lp^cQBwW%`eGkH+r9rEd+!1mMRo6w@0o9a!y6?i_V2G3C|Zh;-2i&61w>1|-pp(Q zUhlnVX%T_UZW53}Kt#kfvzr8p76o4|W_A-mYf)*XKC+t-EVigrtyMMwRH~>{tyK~p zwzmF1=j_gF!y{O0@9pmwAnbnUoHJ+6ob!D@KBPY|HpL8^$@}7FM;rAnpoM6BeT<)z zqWMKMa946pJfxg$-Q?W&>28J1dgjYYjk(AzL|ROQuU^!TCu)dpQi(H8qRu- z7(h>VW5tPZTazA+w)(9%9AP7t(EY?3nlv-Ww~QQFsMhn_X-VT~8od zCefyjbpdD7UBn6#4z>7NEj>qUr5X%r?d|#@vvtoNysv4>NNeIFHF_nFy?QudsH&bk z+LEFl-dunMJ!mA8{OUxER^PlUqM2i8DYjc(`w$k`{OqSTnj%GGw9<6#5qLrFt9*P7Gl z!Sus!ED;RGI{59Gjp?JSBzgG8|8nwh0(9-djs7m7{;ram*$cvp=PZ~rZ*hi+0*;%c4tCh4S9WB$Su6Adq+u-GZk6hRsUvB+>_GqPkLOFlfr0tCeM_~-`eVNV-h zy`%#qqjJuIc{2sGhK6pUl|w^p@`7d=dNO)G-J8drQp3e`LlN~V<&$;(RTaO1iLL!t z!08iW0pK0+=aM7J5c|q%dJjxi--4+|ZCSI8z2pwROJQSxR$|S2fr%RJYY|qkkD5Vu zdKMfR(*pjCUljtsR~%|^aG!rRrGajYP=)58OaE%R4ZJ1|FLh{|KTh|`p|;glgd8&A zf0>?OY+N;{q?9tUXYLuyXis%Rb$I>Ckn;?IKJ=-=&aaM@rDMvM#gqB+>c!z=_nq`` zx%h1R^>p4^UMwV6y+5K1=i>B)9KA8I%Rs4zvQ!t!3uJtgFf;C4%1;5K;Guhxqw?- ze5Gu0YcAl2xq$V#fQMZG%=9QdP7D&#^P0x2rKj?kKWOa? zxfI)o4cr=wO>qqur_Feqs?`h+wuyeMFkKHR{W7zVJs)H&V2_1HJB0}9Z_;8JMCW78 z5=&k7*|1dhyq^#^9Ut`^7h75A%-t2AT?gKULp~>*W8;oastva+=SDFC<5*lk2IFL? z;h3ZJwvRYJ=L5n*Ek^qP-_zz#aH&e$om%g6khbBf1aLoWiN+HY09La2j+u~`;j zlAtjT#MkF+@doLar}72`*Dz!Lg6o#t@L82bf6Ke;vfK|Q=w!5{t2CONIsm9AefbN>7}3*_{DPFI^2+bTczx$v^9_?DsA zpu#R4htOzb+14y0>(Xb;x^CXW>nemwLjb+15OAuUR3T7iScBP0M%Qq2!`Ehq@-oV3 zf_DR*%Yqwl9rhI0;{zagW+-Lm&8f`lWdLxWd6)_8_lD;1oOShgv(V^g-RF{7v*s)m zY&-7eTF;QLuY836&a5}C!vtkBB)|2sK^7|@k31AMF0wp!K79l%Kh>cmW0%mo3OmEE zh7%5z7`vK&+7qlbqkKNZg=aR=y}j6AecMWhe2m>mdwVe&%o<#x4Dm=RcrhVe}$ z&V_ND-s!^zQSTya0&2$jTo^=8C2U_!CMe}Mk#WBgKFhoyyI<;U#r@(lZ{L99BN z5L3TCp0czhnO8Q5jT>uowi5Kmd^aeK;0DdQQhJ^gKZ0++)2+4~SOYc^QLPtynW9Fpw{@-;A8{-u&#PQJpS*JTP;~aP`4# z572M37m}_Eab)ZF8{iZlGzK;FgkONunVWqo!KkLc$^RV zW;U8%HJlBFPObEKe&$N68~*jlv?`xX^>5IjdeshD+d0C%UQ63fV|+7KO}u$E>4&~m z)%8OThkel`daXA*EY?*^jja!&Su(^YII5_NKA~rNv-<21$qs9ON7y$a)NmTkXlXRw zWdTY9YIqy!3ONYFr9x)lnQH+j2AhMS7`E<`5@M9LcrLr3q8$i9T#AI%!S* zKnlHVtI~uWbSn)K7-tg(({gk8LeUg-(D*y(k8G^lTIR1+6}Li;$I8w`c`Ipr0_ zP@||&lk?v@k1#1tE3z$ys}1UUwYnuJn!M{Yxnw%6>CUc5-%<#HH<}DaSCj-bY#3Wt zd&!4%TMuC=3mehaq#9O+4{GM`JP!4J=!#TFs+|TlYGysK-xy0o`sRi76z*Eyj@7Bx zRsN7O*f%%RyFId()_X5a9zjocXVrRHh+m_&sM}h%S_nA8CdcV5sBgm|eh(g_UX87H zu6>J>L2O%$dMo3Y4y7xfxJ?;8P*vlH8p`7QuUn_CPerLu6@Tu~QFVo1xyYL4Whwet zXou>qfPyKRQiEaYe=wZXTkE6M{M)rHTbrQ!-2{raUg&^VrmC^)sMoGTXvl}f;~mg~ zL&;ppzr8ya)#LmIBNS7vvmF9=R}l5Jl64`z=)9>m`yxC2 zraNPCt8Ij->nRP_BJ8F8G3Up^@v_HW2(Y!Zq-Y+$p5Gdb>HOjkXhA_C4ORlo!a1@b zwy!>guSr{|LIPo+Z>>)&7Y=OZ&!sK1h`dtYjTwBX#feJLJ)J?jx-nBXlIe6>xA2&3 zx~6l}`?F1T3+>8=w;iKlcb3!*e!GcL#kko6E}O6D+#D9n>=b0{EY^~(qn%s-yu006 zR|+zxQMPUD=Dw@EHST?dtHqi;)|L=!m5i4qQw^Y_XYhxTe0W;9)Ya-;>Po9r9&1e` zm5T=MQHG!4U3h2*+vFuPUX~VjIWw8&zfUU{xNfpiVY}-?nixPgs>Q2wKlTq9ONB?P z@oH5w>NSgtl~4H?vE5DCXE5WbX0-woGV>fu(#qwoTSU9u@_@qj$aMjkEB5o-lWBaL z=o;$RXizWa+RPUj;^KJM#pg4xPxtKA&GKd7xfkgcGa{$|Cm-uD{58c!2)r{thbl_3 z&&M!}9?3R)^DrH8H#KFX$`X7tZp!g+lUz5w!@UdKOZUg@jWh2*^P4~9{)SDlg}H{R z%MPV`Cb7+Z1Nr8B?6Ab{H=hc2w{<3;KZ@@n#{Ikyy!|B7ZXhK0nF|-rnmH>pr?a}k z(iUV@51$o*qo3zKQfH7+{AnX-47BnAM>f$eq&Ix*EDvgpG6xW0+GP3=iovM1-s1D* zcDslLqG~9rTE`3x=L>H%r=hRg9pcR^Z+?+){tMCid0y%X*oiNAuUTBe31(!ghB}+? zPF3;d)78zDY|?5Y2fVX8Taos92W=o$6VjBC zXVB6DI2t*EhV}_qMrYjOwZgn)w;C;4 zg^S_OBU)vpTRBz}v67Hhoqd=AE=sf#52}Si%7T179e{I>^E4%+gqcsQ!h)PtkVEcO zSPaGu`ka{D*Syl)mDzl zkyj|}3O%Td$ltAuJgbaPn5!42Ta9!qY_VPuHuXx{1OFs*gRb2-8VUlvFqur@DTZgB z3=Q_v1YlF$WmUamFzxfPDWRaL&s6($X`qTXqD<}Tx zu=3|cvb%`2yGjK9cB~9?F1Uv4W_4y6j&I?}!J`6^<>FC+ZM}FD*w%%gfoCmb2PE1F ztKzavPH-Ja)M{-@ilUFlSb;t+)a=HzxDuMH&&cvV_-2ckufV#WbUA`vQ9=7)MovN^ z@!-H)6;@lAel4~)z$e%EHNR0pvrFlm#-K++gM**n?5Gb}XC%U|XrWdBQ-?gt>Zd&* zwEB=9%>n(#5UTfplvI8fbyqGOGuVu>Y8Xr~-Yj#)t9Yhccp~ zulu}zQU>au;i!HtHc@%B7gdJ-ekZ%L9aC8NGMb%JJL|UpfjsN(qkkN(=oF5=eb`@v zA4$?WoANx>!TTiY2rU1xg%0Gw`gM7t-UVzGaRq@E3m@P(eMo;sv*5qgyP92@Ppgqq zM*VlA-RdiEaUYz)wacT$7BIrD98XU`0cFnwkZBa@;e}Mv4*(I2iX9emb)%uqPW>ZShXH*$#T3Cs2~}JXh|cjqv2wJPhOaIn%>!hoEKq zvc)xA`93xFVBrpZN=!5O2;(UK$`NIhb@e~*p|`s+f7+U!oJ<;!lZ_zZ3QIhZqzCqk-eY}x~Dta+G-T@iIIR(oNq244d-lUZvVA|pl4`k)x!p#sD=2| zv9AS`D+VbS^aBI5D`>VR9lmhd0D2~m)wk;W>h=6lixZ5nX;FHnJBy|1UrO~9ztn@W z!6@sk&>0S~plIGow*eaG=a^$0=v9O1AhBTD)T!q|7kE0|Myx#jIG-F&w9mEpNV!Ol z5^P=H;+OKPD?-7LKGwPzVOMP@_<&ZM{9OHz!LKSoSdZ(OubwWL?eezPtzgejx8B3m zPY4oL($=PH&8bkzs5Qfub}+)eJ(-}%!gFj&H_xT-@o6-u)X>BH*P#UdtT3UsGWnv7 zd}p{ujTxat8jjfX=JKLgdMtbZp?&|fdtKO6)g=D3^4nFFjxNEPWR+YI_MH~m##vD@ zOdSPhiYSEBt4t%qcOuF_QXKW4jydcqxAp~7CL4<$TOJqWVb-;$LL6KuJCV>oIOS(cMzPpn?1X(~_g-26glgG|*d?04z3A#|huMfdrz>GP#bjCDV2NY1E zR)^wnZ*!r68F6X>8aM(ZkmPGFbCAq6oPG(Vw?0NhrNDaZ5AbuG1Aonx2#RB&J$#Er zry}f{wR8m1O!k0G(h^TJuYXI3bji242A0=_^8mnQw;LY(?%X)@7>;ya?)dmBNO8pqmlQX#9D1!F0Sw(q?#Apg zc=y`*B1RX6)Y8^6>Zwd;4x2H{M~C6D7qU>Y#3~!QfiWGGpAtW|w}-p}JE6;gO@f{l z+;8tvL_fmWgI{bhl@T_p4{hkd%2Vx$up{8kx{^{oz%e=qZq|IkK$r82+v^=nI%^Ak zj9c~Q(>^`|hk|pO_ZWNi;)ZadzGiDW(Ht`prmmWr*`8Wa4m~qY#bcVZ53bX6cP16gL!4Dp8D`1h}|s2r-6K0yhc?+ z8b6ocz=vPZfK2F8ja=zV*Qlitf65&za!YhCvPij zZpi-7;5s_3ir-O8JsVSI4Sp*l2O^}~G;5lZ;1Hvs>XO!K<%e05T7)5uz#Ty8AwHR3 zgW&0D8T+5lce}vXzRN!|z80Hj_M*A-Gp94NE6RsMwdnHIEI*gv!ac|#rseQq@pyBV zkECa9fR6@9F46qVlRB=I#*KEoQ9#G-(gj!i|EX>re;4#Gmn}EiPwaxya0TM$P6bQn zVCF1C>0uu~cO9Y^EqZy;9DO04Y1Z5fp6-MJZKF*2DEc{LG5TnEQ40Q1bX6U_@h7m0yJa8u&DUzngRgQtc*7x!uIjm*4W&yKvpeC`e)Cz2!JFGNdacb(d8Z}EGH{8 ze@S%R3VvhAMMT&;9 zd3w+lbyl&Lc8E@;Y5(ksWX1Zgh2SpA*NCwFex>#21q=iHa}^lmu%o7!yNL!eHCo7r zy23K&?xUyR%Am?5FaEK7l0(Mk4X6F^M4ny@n-$+=+y`Q-junCf#D)pB^Jaw2dxFL? z&CJHv_#hBrjg^yTO>w;i?}j-pMs)9o|A$1a3^Av~LmwB3hUbMV|IsMaVrgwQSD0;_ z7~Kp;bf0CgjmJWeb`uK)xLM6C^Xu5mPl$?-W4eJhH@LOdC|0LxaNkdA!F2Q1ZLoq~ zXeq+xwbF}-xwh4sI3@e(X@!;X$wry6f?v(grM`T;QDcaoKs*}Nrl`e1wPw9x@b859 zx$Q@*Rep7Sc}JPD%I2lM$LR&cz9J<@NQ3V;!qpHvFtpg1isT$BFo+gk4~{hf_f<{P zSHwJiS&*yIN!3;aRn;(rhqzj-AwV-TV~K`hh|ew&W6B>(ClO%_e6+*I!mV1FoNcTl z7}U^i3eb-ty|8?WOiRU(59~7%iQ}Gmiwin#gX1Fw_Z570?Ie+q;AA2!nq~i_R%GY#^PMYV{=wSy7FKDGT zaJ8^A!N{i2qe6$zUGENN?|f@Cys-oH0BreYG@3YKfFs~LnrMCj;$M$w{1Qu@B1giW z^sCU4XCqf5Y~g15X(!mrB8D<(@MkVBcWzRdFBHT9H5gYdF-HywXQ`M0SHB;v^nejj z9pXd7IgQ7oE&rD?J(~1TO`(YD-1t2oD^oFzp|ia{ThKWpO^R+5XT24CJ-#n!5W!^m zdGAN}ruqlapnqy@kd3$h{&AVdQ1u8!igmzGG14;U=zsB=9*c6$Tbz{}x~%$fVMU-c zp@(sqL!oZ5-wCcl_k$ZbPGiu}c%>RaXB~R&mTGXtW~^I%tk8I++|tiPSmk)C>Fbu; zD<{$ZJ|dt#?7?vl_GPgBJ?y_sL^;|BtMVG!kFb50S+BB!-pymh9qMR)d+1vh11xdV z$7pGDi=wLG!JTV+z@tnrgI#b@ z4D_^3kLlIAYLV0kTeOVc>&c4!dyG&h>f+}Y?G!1V5;|_SMsKqCd^x|Z4AEI8P~6q? ztXV|Z;tPdgE4(qB@<(;GOxtGn!LbEjdS-UTd1}hs}6+d(VL6ZHY2DP3f2RB z%0osv4#)lp^o?BzG8^WiM!@wA@vs^A?KlKWULOzOc{Vy`fg3gv$W>{@ujf1EYuUsf@x#Co;EUrXt?5}6CAE$&I2hoImWzlVwJJI$3ehW& zpxE^gYt5deO0jD$Pbh3|ppCv-HH!4oAar8mi}$AZC1o_Dkc!cAo{XWK15KzDLjb7_bLnxBRngq-~agk}X3Zbogz;V*zf^<%Dsf4jfWf;km)W-gpFqjIK>@gQ2-RPXmV(^pu` zv&8iqz{J}QKoWuwvm6NMK@Mai^iMev{aavHINOeqmm}452R+SmVZoPrGG@od<5+K@ zx8Rxs+pAj-wX&B8V^v1jk*{*B%{`f+YwO1HZ>pdRb_{*wMXKe@Z1X(R`#o4F&{pDg z6MUpQ;y&R#;vkR?kqb;ZsbpdDM(teKM^=Y){;L{PC0ctK|4s^CMQJSo zPoJzilx*>0cXkMZdaxXp74c^T|Ek8nX+qc=Z#hQEc85i(!n>1vXtVVKBzUg`Lzc3^ z5oR2qs&1?-M18Oa3}LnBH(2W(VbMz3kjJ({*AU$ZulRFW9It0*oG)o8Yp zBrVDs+ia}|WbA(`M{N+Xj2!@o+olUHC8CYY4TTLtGJ;Dy;>kV8tETHmJg}e0h97%i zPYGCd$T}&3vx1M9YE#Czv&H0NK40+@q;X$QNr)*&5%&5Z)t5=gQxvVy_mn%f<##L zc)F!03n6I5t+#rC0~D|@xE!xZfV{0f?!|y3Vdu`emCJT9WZyNzDVK*~^_8>|_$#5R z>8*Neve_$>5DOVPpBO?0HrqSB`enh@*8u&i=C*`|>*Vmi0BtdlG1r51-{^&VhLB{z z&FdzS79qaZ41~SQl7VXW{N$(yyNOBTC1zuQBCIArE#27MHosP;LVIh5(-7S}Gx>fV z3rEZ1QQdFPJTn#n9)|Gh1@8qoj*RivQ_8l#l)#*cZ$4H_&Yoafm+~_uLt7+16EMSibif9J{NL^@6{f z@~+@J*qTPPgufN_4E1~-{4|1mDgUnL86E~W?g3*#j*2YQF(U>&fS+I8W;SIVZJ8AH zd@WxjZSN|H6hg{^nU%+gPmIR!Qg#pAekYZnVigd%UZgp>GY1pgY^_pYd>Rnv1?&FS;6Q?M`Rz&F@_MA;MM$M4Fy6;A56b@Ae$B*Sm=!wP-S# zG)??Unj&jSljp3i0<~7hAb-AdD~W&`d$IgIA+PoAj(&~?S~l8&gjCx`s%?B|8C~zv zH?OP}^%@LlTrC2NX}(Nbpr`o6*rrBNQluO%F}@b7OI z1$LSZ80e%21RDWqh0TecI#l__XAf!XOV6lC$xkuahSmP)!F-B??K_) z`?9fR)L$uP*7`))tq158#`w1}FZ`GYU{3qBkW00ETZG;~`oNw=)k*rn!p4qU^nVZ1 zhkYQ2_eB<@Lwgb860@?5%N4u7FGFb{FWLX07ZzbZ*h#l`g0)hl6Kp@V_wkH}z8})t zonW6(TP|!hr{@IBVL>8nbv`wBYBz*_+6gv_?(PGzwLA`;g-b8IIz&(OX63DV>q;be z$_nBbb|<}vM2)AF#zW}vl{zzNRyh0O_6zAJy>lMo_Q~{VFLv~Ba6_nE8JTa0;oQ1& z)V6^$X_j@0u-g%z35Yke=_puhq&jrdr5Ag#F~VSChiu)!>BXK5%*x*Di|8l3D1?aa z8XUVC&(64=Lj|o|lV1@x4Yk1=d5xqeZN|9l1vkU{E@$<6ImV;Z%~f&D-gQ&}r?VqV zijv4k)@X%<%dK&D535I$x5sGoIJ{K!=w|nbush}xnBE$l53{$kz2a-~2+1CiO>GzI zU(7nc4aI>dzwQG19%@>Y(rE>4D-$%Yjs_Q5EVi7$Ga~ZK@bFcSc4N?L7knv=2X~dS zShJR%K~R*8xb^c9)rh#=OQogsm7IXv?-ScK&hKvx$V30}Mx?rP^R6!|tWjLfx$5gS zRB{Bt&&&~=fO^|9>)+;2cU%U-ed~XK@%!(gZ5KRY<$|!DA>Z}_f?5hkLB~rTJfW@j zfNO`X_5kg6Z>1w&9)F2~i?v_@fxL+?UyvumqVyUH7%J;W2Iv2W$zkH zj|hj#Iy2VJA3~1FCA7E-*t7(h9fEp#oC(XT7Q4U_QzGo{J|gh33KCc#FqIY+z|rJc zJq^oi3@N0B>a9&tKh3G5uT-gtnU)$f!tNPDF_}s*bDIu6>4dkD7~=raSoSV5Us<7- ztT#WJD}-{lHsnYTc7-|Ge@m?gr##q$jdQKez4^2jN^Rr{85Ni{*BqAw%7Pco?22?d zB04J@MMio%k>kDlMBsutHWrAC^05OuQ!HN;D5|v4G8^0r*`=_upKE z$WXq+b8AFUY>bbF1$2Ng)n_+^9QyU{426&`=8Mq@F3G!S5XQtnbD?t%u=BGT;w+MU z{WBxU|C>;l8!O|p3r#qFwI@k}bV_2=F*U>|n1ql?a^tENRfa1*e~HPGem=k4050Po zq$7;)c)$GZ#=;ER{*fj^nFf213o?x7^TifImIvoAkPhM=jt?d@Cm>(8LB*RK8{@-( zOtprNupdn$SQO#EuGQCAET-)FJG7f?jgEGebi2@Id)llMbwh0S@<$QjC+Mh}(PfIwj)ZHz4C|Ivq=zaILA5A0P;o>YDhNK0l5kVpkP- zM5TkMj}$9+(#NiQU$_K0PE7KpAfapyWC9d){$;N` zsK{c2lQ~sH7$D{Abn`3)Fb7qw(m2bOGIg!!Vc9$K8!&Q z8-L#pxo0=D00R*Tk5JV?5Tkp$Dy!Xx{2<8l!k=&Ua9<4qcF#C#5)#WGgYLj$ z#D%&Fu+`<$Za`_MGKyJ5D8lM47h$cne3=^L(`(}^fa>_fIA*EFk#27komS`lnsc?P zL$-~|wgcVYJZ6vwIc{8_Om^Kk{s3)&#*X@dLoBi89%1o)^aCjPGAZ@4s*ngvaQba8 zRvT375j}f#ik249fL-p7YN{1QPCd&4=e;wupvA#PSbZM74wGn(fBt*DVUBfEuX;Ga z@jF{bMN{>BvHxqM_}MhDsL+{U{n-S?TS+VbuL>7XqnG-!K}V24&zmax{l2VTh1W~S z(BcOC>L|a_)HGLWn)+3AFG^6rUbwWNxZ|-1^=WioPW@hb7+MizRgWBwuRCJhPrl)& zpxR8|;;KH@5TG~uvGQAj+N-q4rP^$$5S2h`{1G+L8r3p|L>;D}VLRQ~pEY=|+A`z% zvuSgG7D|8QB97~)Q>s6!jg$pO#eaz4VrQ)NaeApgs-{h`be`*>+Uw7PtxtGf%%=k! z3wVTWfE0Hc8weL$TRXNPK;QR(>-KAZJ_#>Bjn{TsDZm z7lzi7zrgSIkm$P8gm*7;F3VV(>i9NCQrj?zRzqKjC~&t1?&nY&iVz9U6QFoqS?Kb5 z59}_?m|tZ*gq+{)9uOXNI=uuNe7hYd2vCHc0*GI2T6YC(6V<}G3M*p2hYj1w=1L*7LLN(XNaS?+*nC916T}Eg)+*>uknkcapZ8z z{B`WN_YbFi;tBaVwJTPLqBORT*ZmdL2s3b*byxYA_X860tnxDga@0Cj5qAGFI)sW7 zd_rqH`K_l=n!rBT_kTz``?0BfBK&|yK4s!k*1s*n9+(ZiG)t6d)jCve0ms|*fz9-4 z9~jAvfKlxDv_7z(w)SBq27lJP7E);3Rml6t)9GPogpvN&zVDAK>Ce4clt1$n4#Wkx z{ZLv|YH4gE?8l$bJ$;~%=v`z$^AZR+kMiIM`UqM_TXP#>4^AR@W36vPiCAZ$9;_u~ zT@OPGYkMU;m=fg_Vj-o%)$S*gMP@3!4H`@3(lhw4AvTY6r9Id*g8mAlb&1QnebXdr z2WW~LG>!K6WZ~o()0Luc(>i(~1MG0-uxTIN+mprNOCf$V1daN~MB~AZ4g6}o%);0a z_Rwm28!F_BVcIb?l+y6~3j=X9iwAY+wQW_!ot3m1k(Xfu?S8G!Y9F6xD5KHJ9bSG%KJmF-9xVVff~ zgzZ*M*zDSphuisAnyj-MVLu&CNR=K&QllbTyR;GKs2#2y(Bch^(e7@gd-V2D9LlMf zpT1qHqd2YU2s=Lu(GT-bk}s(z)wEyTt1FW-WI(>YyMeuunVsXK3F18|rplMWxQL}wGpM*bmD$^`}WeZX;`=Hq^szzmkqz)E7%Na)4 zmbg&p0Pj1Hl#HK5OYCeL`ty8xAMIS&`RBu>7QhV|C&YmOP^r^x8vMWgs!PxQ^Cff+ zQa7k8jg@*z)U(hF4`m+7*L#RWbU*n_i0%X%%ies)#cb}*r)Vq6eaTY(^uBocI)NH& zn+))sjr*`O60+t9P**;QKJsP1ItU{GfKNzT?f83WWK!)+m6F3J@z2IAYub-4*Idpv=t&3 ze^(o82@MhUSS#J%&!v0k@ZpbQ1}r6`C{0qHqnAoWV{0NjFqz4)27LEpbt(}sab&sct7)&?(JC@Fab;R;m`!w zaW73fXlq{NZ0ls4VG%k-sFaUpAy$Y2dCs1|QZ&pDZt3N%^~|Z-KHj^OSNo9|7l; z(*2MbhMgHdWR%y$VPZ85jV`Sdj#V_FC=~Y;7IZMt=@D>wgBSJDnN)C@D;k&3q)$Q}_j4kIs^ffto>Sn^+7N$c}aV(I|0 z-4<9c5YGC;&Gddlvb`d87j3#vpx${=)8s_+Ci zG=%l2Ap>@L`e9%3IFHV+GOgNP5%w&nM+UMozZ&A3OZ2$2I?qm{-{dnG_vg$*k`fh_ zA#Bf{XE)P+^eIszWU83(-tVE5JpG|xsalM0 z>%J$K{LOv^`0|SdMPhk>(YGo=kKbIUmq@2YF{kVgW@ga1qC`5yuMvL|DfGH!fgEC0 zzp6Nne3ecEtLTZFs^H;JM|H~!46t&g0*l`BJ>>qT5BfDC0Wy6o(sT7JP?b$~nwJ-@ z6iSGwe1rQlZ!jU=AYP%fSTDRxk9uF=3;SrL5UbKj{x+V`CW;aE;%wT6YMs3sp(wgw zklBIsGgp^2A%c5Ez2O%x{DmcQD?Zkvimz$qUolnw-57%Xj9>@$%&0H@TbQq+zI6um z{E(v54f6Pbn3lEt+%|tUmwJUR^PEonS&jci`s6@!2JF`4`T*R+`9sC_XNvs>(3* z0-a1gZexz%wQpEBV^*nPnuRmetZOYh58R;y0~=wxT9Lz&QGb^ z$8v4x^zK~_ZkbmPNh z)0^^2c@!x&N;}jN@qdx4MQeAFKmvWyLRII<7QlhQI#X!DqA|lw{<@~ngQ8DLK~;2GUGYT+Qy3_ z1@a!Qw6<-v^bm?W$~)VfbK6e37qt-u5D~uC5c1|Pd9$+Y4$v(KE1E5cr# zO-CfiwP3HVrN8DjdxD}pbJqXW1GFv|_S#@-kTB<+yf&VG+^JawAu)hwBCoBcXFD}( zq2G96@?GuA?fN18F$eT|KEz`04PL*HYCRx1)@_|Zh>FeeoPpTtKqBn*>GV*ho4vBH zN9mKy6dcedk$XS8xvf2i|CJ((KiLO1+G^p**S{M~8;K>8?efQwaelX%wkR+}zHN+c zbEKR%`Up*giIQkht^UY1SC-E=D(K!`EUxNiTyt!0Z)_GN%Eijt6MX~vnjFxZK6*Q| z@JW{@@=c9eGf+2h6+LAE?Zhu{zDSQ{`{Rkz7Fvn0{g>1CoeQ`muG*@Fw|w+|W;1$w zy;VWGGH|qaOmT1Rpq68R-yTj+WWi3`w?p((3CyOI5p2fWaaz?0)=IHl*gFI0wG1wB zb$$nYc4y!{w6QaAFV%Gd9vDIhYruPO4S8T19Teyg51IK%TPP~R4s_6a5>>j||9%v` zCfi%$r`*wq_;hd9-(N|ubn3W@c4lDdtg%Ea$M5%1vmDO7#_tZN$0X3*^4$u0xHE7I zZOC?a&HFu0qQ0)0PCFa!y-D=_POv3(AWI+c_^nAGT|3D6{j+JGxaN8J?_VPv26KVy zNt6&41O@Z8wJv|iqo*@qOv9!=f0#xaCDgT>|FDYIWkamOBW^N1d5S$es+pVXw!B zXVY2%3hhA!Mf>=Ecny6j_q6j|AJ!t8N6r|};WXSw`{f33J=;fvX}jcnDg@^ve&EU9 zp+Ty1zPmZ4k2VvEJIklEUa6ewofbyTo*_$<6=5HBh$N~B8Sl51-?6o%z8Q5#U{2l` zbG$PSzDz%tYm`c+wps&6SbKn0hzCw(W2Aj~4+xoq)_%b<$8jwt;KM5x&7N~2S?%)_ zN~8?fg=A9y^Mn^i*8RJ?N9Kx2^JmT~Keb%*5S}vP5~L58lcJD;vZ7K}RB=f_j_@Ra zUg1edG`Yf)%S$pVJh=w5g(nv*BRshQcI`Zu@B}x<>>MFHp|MMA0Dv&iy8I~NBx%1F zTs>*7NOX6Nmt*<0#WIBLZA@=%*j?{F$n&WkF+;uT8kz#C?P-n!zMgJH;NBH{I{$XF z_-T>9UBBQl*VYVMSqq=!f@VK%ZKl&2l@Wu?-2#B7O-)JVm$p*w$UR8eYmQZhpV3tB z`9aQ(F#a9(0Oc1z`E!|1z3PInIw+g%;r=w6WPZsJ;mvG{e&YeT-ip z8#UlblWsba)lv1Vlsc-nP6bzqcW24?|3Li+HtWf>5pqADtWnqTP+=k3&ei8uc4bIw zg`^e){VessNwgq2r}8+?5ZO7;$eMSvhh9w0Qcz^hpmkF_Wn6^)c?rD&MT3Z!$6rSQ z@#ot_#N3yP!xl)AOau*|3L)2pNI3K*AxqjSPrD26XXya>s*1&e_ltmfVlXj zKX0Zzh?ce?axRbemAr?|W=P;85(vI6%g#vP0~w$N!xC<%YA;N-d#q2E=WusUV=CT9 z`gJGBBbkntTr3CMm>tYJl|-k$>pDRYWu9}#JKPXV|0q?-(VZvyWC(rITg=`9$vNEW z?k6EXkd1QI=cP`~c65TkjWTCa2%481nlo60eR4S=yqPa*E^H`9rq)7!uK(W&W~~JU zg{B#6{W!|cL7cfx-zh~z_%tnUZcWtiC2Ev}?D ze9j1;`skPLDMr|*<3w5c)b2QHEmgr29*dx=#dKX&arm%l#*wQhp(eM{%sLvT3}eDo zejdLb_ma-GmK3A-_R;&uu?p)se+O0TX>n;7-DB!eDn}eU+;WGVg*x;|7i2N-3VWGe z=PW6bU*M;y3DqzSKHU}*6lEPX*4$DU{kSBx+?E2Aygb_6i`9sI5JWbB0Yzi!dqu7M;*zG& zp%8@&=wEh4HxwR1WU3CAc45D?--ptT)241L9#4e=^+-x!->cgcdI33&Qv5soI)uF1 zDbXTIw@tJPd7e@>vI6L3LiR0WQg*?*b78-Q0n`nQ6*HHPSmLQ%G-Rg0K@oz#2aMcmXbmV|bNH~e!DI)dyvRMt z&vZhXdyhTpqt>X($U%oO?#PTnN{;&{57LkzgdsS`I->MgN664zmMW$*3;gH7GOCka zKwqx1GfJQdG#-pqsP&XzfZ{N=W;dene0r+~!Ysaupo&YsbwxZH|4{7BVOf=!!dqxf z4~8Iy=DBe_n6M6SMCmz%et{fUxKP%@@77R`Ezy*WrlLuI^1kM1(nzh_8f|f!_gW^L zpj$+9J_GIf#LmspIhk4~A`2`dveIV&JqziNUyO4RY;va6CrTZnFoA{#3YMj8iCpQ^ zLOT&QsbX_RYd4g|sT@JoMH#u#$7V^s>pPwJuH#B^ZcCfj@6CNB#|HNW^GIC?K@&{` z)985E!Ah6I^gw#@r$V z2g>VEufFT(0aPIN$Oj@++Z)aOm>Ysk5U1ZjsP2zY!YY9QQK>Od6NjPxDU zzetCmTd48Hg<@m&D)MVJh_mtB5E+{NEn@r&zE%@LV0D#4B>H|r4-kuLTg@@A`iq66 zRI}A$gXI0zaTW|VH`P}-9(+o_3fii$6d#^!FSFH#O1~X+drwrRu+COQ>DMaCEd?w1 zFuy*M-{DuU#d3^9)g*0pF)ga2`@0pj24|I^*22D}1-pY;R|Ymt9+ZMk2j%l68C^aE zUBGB!lbuXfmTfvw1lJ}90>`(Et_xUCZshDf2HKNft$l58`%HCRe8o?<`^CB`s6zNp zmKC}ytDB{nCwmE>7oX5o-S0^ds85tft6VU%v@|^H7znU(w!Ir%`^4G|*}Z|6Z!rv6 zh|rSYL0ysILP;WZL@t=)+2KTnXZ0&H=Z9Sy7njntQ<^0J>_-H1BI3F|f!^K@ZY8C- zVr7fQXIGs#_n21T3I?{(H&SvqC2E!a+v!mNbZB`joEK60?}O(mBY0!Fz+woINDyfh zkpgizhG z(AK|1lmX)?#aO^4NDa_vr^3`?<(ff8OG9yc=1;I)cwG8X9N3yfL^*9f{h>G0qS3Nq z=bopb_B(`!IGs}!Q%cVWMB5Ij?M4mtJ*XNh0@WRAyIFk%zg7fdnz{#B)Pxx41aX1wl@$>>=msOU~U3Y#G?1y6;=6UG}?F5E_za_i{eIp zO*fEw*x+Byegazs5A=dF2p&AIsc)k{YSxDihql!>;IY;(I|x~^ zP8o4VKo9MH6~CHMyxC6&Z>&@9u~fRs;97dH8xx*BNB^wy^_5CWjSp8Daj@DO!^N`@?v?EkE$jomXdTkxf*u{9R$ zXy)fO!@IT^Zj^947OgL{T7UUNLU2^=SOc;1HM&t&BYs7rhNfq082Q*z$*zOV{Jc?h z7i?f2+$GOzXy(F@jeasH2b9ERUBJ->MG_}4qWnuO>g2KpWBEM4-#q`O)YwS1b(nDR zeS#)+V;mmN#YVAT4TLH}vjf2f18ZDfMT1NAFkM+-F&GhL$URiW*xs#1xethWNUK!r`aJdQlK$c-CpHGpLKBEzgNbI$xQPAxvfju!ey7V_IsX1Pe@xXU_o z$gVHCqdFx7vUHiAL_IV3-CM$oya4P`oiY%|q$bodr@UN588%Ire^5fppD@h!SSXRv zWcie@i*v-@`@i-ab#ecn(s7fl+_ejjCB%1iYkO_^r_91S213_n&207zq8+x6pdE8D zj>Fy%nXzqv+)aPY1(*=&Z>Wmx&1jH(z8R8ooKiTwg9xSYw_wh~IhCQ=69O(NPA=siZnU3X$z!FpN!{>|_D5Z<(0!3>X^;A2OR}INloS_#Cy9A4QaN zPNxrgu|a;d6@kW9c%yPo0d4OMO`fi6D!6e6K8+sh3*!d-VFIe5#;n(laqgjaP)ap` zfMp9P_rh&`Sgh^e#+tvi-XWT9r+vLyGye`GDb&SW0L>r7hyq85Ja;&)=!?|zs8?xQ zBG0{C#MkNpJsvlzp%Qf1*>hLZU;3bOoNDLNkvE1BUEbKxcO&W)CSwG_ImGqc%}5@? z%8W7X#%O+ZkUunkghemG5Dmt12 zSw|n`KsM2>-LZxNE!mNbA+2{1|e}Mqm(cL$|w|d zw9WrxFBDm|%K}CqZ5K6)C}S&ykA(<(G-J*RkKG~?xR$huv?b0v8T&q6$n>~sr2GZ~ zBvmtzOz3LB(QS{5(EU)m80E1TN??7(Id9|k(d$^~Hs|$>J4&y3A?FXE=W-w;Xj=|s z61DkQy$OB9?&{`x9m1=7+UGw(Mh{jP1cushbI8vhP9d)}vhanS)w$quN_A%yIACu% z2P_~|?}?6$hSr+W=-YKBoy%8;lm3J`R(G6{m4Dq%^;oNV)$oUmr%-fPPX>&7exn|W z`xPs~T)A+quzKrT?HVBww-sSu_tC>W**rtN56To3-c!h}n8Kd> zK?DCbHm(&&u6%txA&{jQOAQ>A8hM3vcqF3R*qa6YYC13yj#Mgg$eGsFi1PLQRMnf6 zK#enUqZvT4vvB5`&sQY5r^%m*VrEsDSuPfH$U7oNQ;?mZ>uQ>R6#aGB%#&E={>RJP zr zTtH9x8fj7yUkrDd#eDN<^*;JWX+Tr`O*Ep4ii(tR7GWGegj({L8Z!$WCThGU!bS3@ zj4dv9xV`by2?+%JnuD~*heTC`nsf($sL(;~#0u3x4h5QUp$H%K zf~L^@!~*&thxSYe(cAF)dqM4p^Go>95Wk%&>gcQjutcg}4U6&qbTr{0^oh%a?Esoo ze+g|;ifGSGw(UW_)OILQ^fR1EOx!~Ipz%1Aw2d1PW#R#P)`zU7skC9&oQxli9f`zDBq%gh;{HZhID!NMo%Md{10zX0TA-jc0NMUoklisI8xv)!y z(5m9uLOv3k4Y=e1dZQ73=i5(oNe49nk}N~|4I6lAzR1&(uceUR z3!XVz$YBpIohGsoqPaed}O?|`RPj^B>2SU7d!L5^fCHLUnGqi z>T2{NZOMS_r@QohTGNl|nrRBL!a29!yqqAT!Clan@xD2o8UWEOh&;X@z*E}`*$D`? zh85PPd~-g*4;l70+o>s{d~-FuOAtP;Qc;D~X}Oc$>BX8`lYtOUzrEa(&!%7XVn$F4 zLV!U68%uKxL`zQP&ul=FlGS{I$=5W~<-2HNW1631 zw6`KTB~rAaXq0rM9rmSU*}4!=nMwEEgpjmh77o5FMIUr$r5DgImK9JVu=k_zwRsWP z>w_DMXwA*MG7Y=pAACjpdJ|fbw4c6I1tf?hmT;TdttS#`6BT1kUHXUq%x`K*lMglZ zgpPjzCv?$%K_fC!H;XSX`QU5QNIR5915!IZhFmd&is+18D5_FLZAxA8{KKefGpyaD zyKbrjgI$VoFpBs=xjQqN5CfZJ-i&lTZ{RB8h>@^J6vXOX7fZJBVS0!1UF*@*WwZnM z*uPu;0rTDN;$+qRw9k_@SW!FZO{f&ifLQ&omXtYQ{S7coh1x7P)`+65r)KOc4VB2P zGa+}!U&M<)>;TbnC+!8W*bdl{?NA8~sdcQbXthtsuV`fl8~}Ed?m>Z8z@Q+vH%D-U z2oHCS7g2)aky$MVG=(BP*@lp*xB2yY!`#Csibc}(F=I`7>!u>)jVVm2&9%r>c6Ak< zS7exl$ZOS-jk@WB zmPn?Vp)xb(LLGeFY{9(&P+5`vkkM-u$LZ_LZ#YP=c$2W5cpy*EFLNN<>DM`s7e!$! zPp`c~+|;)M-Pri7#D_9gASM%>+m#Ha9|&wS!A&$urqBwcUqaEo-pX)0J&oLr0*_j~ zCE&qaz>~Rv9l3zkT);cI0HoI&s5w6LC5!2GKwPAuWEs7i1F51vA=#6?l5%n#aOwuW zu#mijRrg0~Eo7_9l1K@=>lm<&$ACTNg+-K-+o%mm+Fg{aW-K;^iDGMs6vSR=iIQzyV;CBPqwsK=@AW^OrDg~!aO;p=RNnS@1 z_ME5wi5r4B?x!b_JKbJA+3Qa^ZQiHo>4KtVRW7p4Z%<=5X{rume?=dWm$HUWD5n99X%T3R zv7oeFt)}oSNYD)xkJ~}$iGByNWlob2kz92AN=_)? zPKTD4(z`d7(sMVJQd^HIx_fCsAw8vtup#;x72tajpO~aumLXFYMe?c;HDVwaS?l2@ ze)Usy?zrbZJWzf}~!iB}qQq+4B~@camv{2QW{ zDt&wdvfj}Ty5q6Js=t*Ez-IC~ny5VD(A9h6`JZ^1!`LyOSl%h4OP=dLaKZoz0eYtV^cHe=U_Boib>)geo+QJe5gTe z$f3A2zZ5m%Ldb6xi_uvJbyF0PZEB6{VQBkAy~_cmx>`dmOF3#Iu#KO-vll)KQ6w^)Rgq0w0orAXUXpyXlGGiwlfyG&kjiV(60cGUi5Ymk-E;c3MU-nM({C867$dnYGVMmH zg@+zA@uTw9kyBA9#J-8hHYuF9-&gfw_GpvqsE)aU3m*jnc+fkE`~jR*O3=qUWZfiP0% zr|Sxk@)wy`NZ) z#LA3*#p=NM1@gf_PDs)_OYzN^vN2{HiY38SAf-?#(zP~(l3*$D6mjG>o~S3{8=);o zA*T))4nsFmhV&mc)26{M)>|-m^-Xmm8SW=aRkU?4J#$kX3ZowclSv1b*U?{=7mx}4 z$bNjj9MzRBEV{yM*i%l?n@ed_DHf-yntzl2w49GmG}qSFl3qvtD(lnpKJ=JdM;Gw@ zbUIRV&qL?>^5xZFWh?n)K7!UQ=hJrIw}D?8g~qpN3SC)63+w3jJ_v5h`Q#=M_<8P` zW>W(uw5JWEua1hU5~*lt0~AK|0PJ?~wthVCAia;-y{^k&LajY=URX98GlF0ulS9>C?#co70vRM;R8K?(ExulK>LI9H6NA8 zWE1|D^}qEg^BuoYjT#s8#WZktw6^b?nT-7vAFRJ9%grZ1uWS|RQm(J1Pe8EC{E1*l zPsW;}O>k`i1M6&@CBsD|c8y=>L*vDM(DN8_=sz;{c5{I!Iy>vaYu&? zf9+Gw7h98^_rC!@*j(k`z{jFar$9MfDJo^(F0--SOl(A1x{AK!U<8lA~;?5dxN0gfaF$eAw;x#f_6g_>9W2o-H!d{k7b(plml|(jQUI)rz=F@ z??HTg^XHZ?L~)y$vqIU5VuJe;Dqb9d&sJdP_>7(VUh)PRamAD=jl~PCezHt>{2iBNoNRMI6tNk&s zUAB&J*$}FMpV$9S-TT1TRg?+;_uNz9pz&I?K*Wj{2pAzGwIe?*t%9NY}MKZ ztov5|eV;jVPUf6@Zm6z)ejg9qX6AXGdFGjCo_Xf)nZw~9nMWDRem$-BM9k{%_~kW? z5B`s_dEK+wenD0Uj2G{E_Sl1#^^)`6Tzas=UiEN0+q8VY@_1}rZWK@4aB4vccjdg$ zKa@kV;T`rJ<@S~99R&uDEOJ<+F#j+CSiB zKHi$M-?!hnu|H>Dv0q;6#%uZ-et5S1Y3{ORsdC)8Y@F{hHhJqpFDP4I@F!;L_ulpX z`?~b&Vt+(CcV{$i8#3oB%ul>+dRkXxYfuKfe1?3&)bBhW-e_NgN%2*rig!)TZXceI z7eYI>^WB(U*+HC|%4DnUf3mFM?eVKFbiUKc-9Y!`?q+3CKGndGB3H3tw4x$2`1Gl< zp&{p{im7-19@#4&R&3lbfyMmbp_7=*pv58JZ7czuytzWA>|N#9-R<$KFX|XwAHVuy z=osolm$goEi;TR|=6}O6o=eGzk?p5=CsTda=h4S)mSz*{ZW*m?phLzyX(Q=)=`6cr zTaKm7sYy<6t-YBh{L%CWo%dezX6JzeP7RkPowPHobIx8jH7)O(Azw0D9G^Rj)lBbl z(sAKswoo^8NXD<78N-s0qm|L>GvBEj_t9a!_Fu2-V*zO;& zZ?Z;MJ!XSQd5M_yMzQwT;or;J{}^8TYy&tGN`_ZcFiTn52S6EK+`nwLDs>uA5 z1!`7aE_2@SC^OB=_;2IDlz(2X_T_TpdemgA@6pG8@~5Su4`tpz=j?T)sEr~0@=1I7 zIc$ij`4l z-c)w(TgHMgtC78DHomUS{uxv1cxkbGIZ-e1Dl=H^@Ton^Uq**?vwep5QJmX%H1r*8=-bh- zeg~_=ey=-NW&hW!EdL~w;xU@A?CT5`gZ1|3F0nYz?~j-U@37asacZAC8y{@9j{@-5 z=7HR6pA3@p*pDQw3mYdImW(cGSi-3tl@rLP;wA#1bO z)oxg0?|-AQIiHPh*lhpmQmdlTm?du5Wsh=O-t~NQY(1U&b03mkeM6D6o5-^&@&zK? z>>JS9kCN7~J^2252F%VC_Tfv}S}1$ncK;h?@sSpLr(_+h;Lig}bJED)Y8zQN0*8v-L6?dLDG9E!itMfS^Q_UXvC3Ih zu7B}GKB40zJ75mgQ;LfBUf5)R;lX;u70y$$m@m}YpSawrcxq}s_l2eQKT|h+vyk3F zzNYD~$A4kBJy>LXM>HG%!an;Gm&$8SkauLp+4lCUcvGeQA}1uNsn6fb=OXRyVZ*I5f46wP}z2&*#zMknpz;@U=k8UViR2mZIgObCVD3C%)=j zrY_p;$;_dOw!pjI`$0szf&K) z`((n|#6)?Vn;w}5@3%kqaQ%Tpd=t;vow1koY};X9=yb^pcDwpa;^$uN93`?seWdSn z;w0g(EfuZ&>#Mif8y{Te96OLZG|usJY!=*aln9$%AyR%>X>8&Z=-laA?)2DuA1Xh@ zXXlqK9)EFg$#w?(x5rCf_u}Mw`6TPk`$hI|p)n#)-Y?~Q_I$P_o{y~?W!hx_{3DcN zd}4gN`p51&M^2ZH4`%Gg9$x2u(p9SG`1#J!^>*%p{r0c#sZUSj#>Nkv8au%10bc2e znN-RJ>+HTB`I_TchH~)<)r+^G`yV{CZ2Y;5^NzuZL-xnSzL!5-KXmK(l19D*O>Eu6 z^_jtO=e~hc9AR7XQRjW6f1W82>HqWMZTAoxcVo|Aglg@zGxpm@|E9k26dE2saKN6+ zowKqtwK@~8wn+1fis1Kco_~x1%GnHz z%8O#3kv(Mov zlHTB7KrR3W~2D^YpvYi#epmzn`Mo1X63;0!Oqbo-Vjl77=MkmqocDSbueJ9 zzj%$co{xEtX9LEVd#$x$bj~v$WdS^Qs&c$?`*3E^Zr{d5&)y3Uise^dYmGMyEze0- z`iQE6zxY~<-4L^shhED|wt|G{c6Sqm15i zyveLr^%ciQFR&J?@#hT_-t0)hUzllaU(Zey+m#o}zoi#B_j~gyMZksfhZ|+HleNiL zI-6AJLc1tlZk@^uE*_U(+PR{_8^NhGyO1!)u_<0vkwpn_fUa=sW?Hul&PgN8Itci1 zt-lhvouS6714s6@x7mkHh+?qu)z(K@uW)WUY=8LV4IR$qi(hPLJY?TRZMFxGO!vLo zI^64g{E&YDSEc9M0{z!DINv$ccWAwrxk7O7@ZhP2u~Rwz4_MlkB5P-5gLC5$o3(78 zzPICGCVu%v&n@WZWa@om&Uc<&?=9CVK3_k_8ZlZC?a2NTXKd%#6LF{IaL#U7XMf@0 z@+A{v*H-j$z_x#A?AitiG&*l-(qa3#*t(3pk#}Fd6Kg;0t;QT~Yfos;;x33#=-qeuWF|=WD&d~7U1@^n@?doN} zv@ecVTDjp&#$JAY`!JugX|+H8053W{mp-`ua37zwOe{mxL+cOya`@1KXB(W`gH>eT zvY%r(zZ$ZCb`GM#Onm9dl3yJ5} zFJ{@lp~Jap$54jVvF}Jm>#cI8)yb45B*IjA%M~2m9;|5A%-Mv$1vddTRf_Vz{zkPr97DgU&y> z_)+Iy`<*NL`?h~{c%ZL;G&Mfim*eV(C4Ga=yqw+5XCRh6vA#d!Tt26NXmEUVFn7r5 z9@yT$J>X9`4f_n%Il6$$JgyrW9qc>!Y{&Moj;9tlS2}MS;$8>S&+{_tVz#yT9=&r@ zpbvYt5aQP{Youci*K?MS>o3qV>rwNU7k=k4*vs5l@JBtg6np<&`p6~$^|>boVwioQ zeS3do#oglWhR^n;_K(iB7C7(Wzi-jj%Q`CJZ@rLplLzGZoM#N#_>Q#w+jFfYvinT; z<}9UsW^owvFR0_NO`uD8oIAc>SL+)nO*~ z*3PksLAFx4JaGNhqd9Dw4T$dYtoQO5HQcz;#6E1V;yTjVtCr;P;^@sADtMoW zuf*g&^(b$ea$$R7+o{0}heH89_^9)q7b_k~kM?pK5O21$pK{-nnqtm{bb5Pm3RY(A zTs%59$Q`?P+Yi(?vW&pz9J!1vYZvj(%(5wUsj{rHEoT*LRJp~yx$(({LHWNge)R=Q zUQ`ZXitRX869fpyh0^(9zq|Msi~U5k?xnwT>z?-e1^(gbJKz7IyKb1;Y~={DyZ7%q z*B{5MgRIWJv3K#Pb6Ixz@F3R#ozJ&^%EuQE%4sw%wBo(sWpZEDoOHm4l~^OrdnO0x zIDd7$?7+$4UhesM*QYq9EZ5BSI$xS-;LLsl$Iq1^$J~ur>%2c~QO(tq-|=XCQ zdrh|wE*@RXL5yoFa@Vkp*umx8oW(TvtA=31q|%&3eKH@!y<}4-(p2_e%7c80cM~%m zAM}?X6xp%3wPUg&H@SYO;+CsZZM4HjI8OAD@_~v4nTAy3)%dW3xpsCY8qlQ^ig zUXt|!E z-0W0wfa^{UED3b{ER*&3jrKb?^3GcWAEod_R9_#ra_<;TkK>vLxxa8Kyu@8sk6GVTUgGC}T21HP550f-<(H|U zppdHN60-&QPU;|wc)UyMK7l^{`Mgy*miKxbJz2d z>4z5#G7)AZVN}kWtiDF)lTQV^)_;-9xEWs#^8F=e3-@>R&SBWm8yMd8aUD6=Kxnx# z@$w6K%Ln3A$2GT%Ztu&e8!U2OO0}dAoAH#Y$zT6z)udkHI;(O2RHd2=W0CdxU24I< zluxz&eKD*3iS4;}(&KXO&^*EL8%OrejcPl*vpQ~- z<&QuQ_B5-a>1!*dj;<+E?j^%vNS%MWGIcnx{K9LubtQ9Y_I_*yoe91b=1&`;iv;Sh9UCH&3#Uo?9e1iKPerb3^ zg+2CQJ(uXVd*{=X5PT^|UJ1VZlGKYS`_J0vF67Rpdfs2Cx9@4c=WhG!54Stt9cB#l z-Qh;(zF}uIov!m?){7SKFq~qd&X}qLcb2n1#SYtl$4&+;_Yw9?X0CH?{3ZM8W224y zxxsmRO8@^3XP)z&Cv%kn&C*Nt-<=*jHIeQ(HI@qf=CD}Ru(;!Y0zQwg#Xm^_8U~!p z)1xms?_17+&cSOcEADY_THq{VY|$}z%?*4_@BV}K4|>|;S6xz(Iv~5U<*bc;)aC{0 zgZ48Il=C*+RhOiAWD{;z`t}#eisDATG>*>bcLHqh;c0)Oz zVSLB1eMP%{NBfT9!C~i3!y87NH%j{(=HA4uyaN7jv30zhC|9nkjp3LztX$Zi*nv9b zmZo)JQ;sXrS@C9cc~h?An&4N?w#q^T2VLa`oF@X#g4g(#H>O8fZ~E%aw71o-^nWqm zIOO}Je7a)EoQ}umjM^Vw$7z5}1$Nmm+;Eq3*%JFB>sTP1<6PMhSm5V!krC%h2Tt<^ zh`Wcm(5>I@EKhN8w!f+4wYkxZ-M-GgbiXS^%z3-2rT_OkcQpUME*o?%zO#!pp!a)6 zq3>MWanF4poPOesHdJ-SBmD=5UMV`UU+D z4Zk@sG@Io5uG}-}p-fLfH!g{4*zPVEc&jEakvO-!;+8pcnTz%f^nHqN z&otbXzPZ1lHy|S)CHyEmC#wcW_+VT4oH=uy%eObm+F#;i!^C<*?expZIS((mdAWad zPD%1e+#0T!lN+wMzM_IePdD0K%j~<>v0Og1STQJak~vAF=DK?Gooh-+)L1c)tC-+W zrM!hbRZkyB|NblMDvwXtR^OZ@6`j4Q9hqUpXo{LW_z?A{Uv1sZUeLu{P;+6RjK^kL zhdV|NVv!YJVHdf6J1<{w4NLoHc+Iulp1sT|X_#9vDU14lR^DsBYaM?^I&SWFZ&;bi z@p<;3878bdw>&qnICqG(5V?8Vd!IxJ%x#u;=SDu$+0f7!Xk35iaAwbc6^MDpcV_UB4P5vTD8`TZ+BeqJo@-zwuin0!8@cNP2J?;ctY^7_Wch}M z@qy9h9nKysWbXRL1$T}t=HzTShS<^2n+f!>AA6-$&s%n7ffmQtte@JD%MEu7piPb` zf1$xS&Z6V<_5%zg=)pPHHTZ$XRKp;*$p1KAV+=vL#&UT0RDbS3Unbz-H**+s*j`rQ z{8frKa4x@SabMri9bSiV$@<=cze?UHqal+2uyZ?mn8{l@yI?c2B6SJk`McTCkK z*A;}UXHSv!tB#?uF|OV?gx&@_?&|vrozOupQ>=GBZvWp0Pd3<(#Frgp>*PxNr3YDH ze^tBlCg<3boJl@xcb}BucEIy&6uf{dpzVtjNS!@7A|q#_M-ES7aMag zI#rxEcmC1lAml_x|b#l ztL$XFrr5dSm+`CkmwR_ON_{nlpBwGlIcqq}xygC^iyVAr(EWy!62Ib?2kh?soC4=Y zwb$);N?vlVeCegr1JC}#sr|*TChUU`#^+kROTr1G2je$dBkRW*fxgXt6CW~KX7{rn z_quiVYuCjW23jfyJt~6VnmmxOb`1A9R~|Yz`V^aNhUDLPwKdfE%k86lj*KI2A3jiV z&r{robIans%-UgHhea&4bS$%9V$$p_mHaBJz6zvQ#P&YQmfbYHwKkoC9m7#wek zZ|fgjKhANd??2c+q8h+oz_u@g_8%dgyl>nzY=a-}10?)srZCm5R$h`YGeD{9@Tyk`Lm< zs%sNYzqK+xKT%Yhm|2^cRhuZTP0X%MBq}*0C7Z$Zz$c%{-HFn9i87efB}!@&rSlVI3lk!3ELQ5Ky;5}S>9#&mG(RzO zzS8adaso=Lu^1^NpDQ!auF-mhc3xs8obO0Di(K(y#V*}d!aoBY1YVJ)E``Tc!eh0< zB?Y%2Q8Hi2H9wJ>Cs`)r3lz6-9TcIf*`z;1`dR!`oWJrU-Jjs!G?VZmtl|-CSv+U= z&geU*|J>#0tyCqUz7)+;XjVnkm&uc|NIpVeN-$Pt)H^r@r%bUd*4StD$Cq;*vCxI( z79RWHu?bv@!6Qs3d7sI~-YiVSNF<%aMR3zLlNv5UZK44z;|y&t7h(0Ev;5qZd`n86 zq^8+Nc#Lw+OO%F9GuGnLT)m2VIiYMYm2W=rZ(@6is(P`X)NP5%+Cl?+_^fGkfqrK=*;v_X=xRdxRXE`CgmFooPRdRFVt>WrGU8Z% zi`W)v^Xdn^&*%a!kLW!u@oencHuO^K@^I}`T+ISe1l~r%1ZbA=78Oy=w79-JW=0iH z+K%um-$)F3l@DlAK1`)?bkmmlR&>XpYteMVK&P*$A>34(C=y#+X)mPdC1%0lwgd%` zN2jl#KEpmv_*M)7r^TASPr)}8fNw1T-xY#mhlLY_8PPiU=P<83lh`7kE?OVLn249J(xY zv@yS4sLpeb1Cxia)T^S~LRi|8*LS5f9KBm>^ZY>k@kBCB$0EJQ>?W@)NjJ^)o$wk^ zej%CX7j%BtPeOy^@be4HPo12%DI2>18ROKM?*s2m%%Y)@F(!&m)q@QSZB;9=t;*Mw z<@*|N=vL_7f((|bnMA4STBY9<{9BXI?sDxx%xw`Z!N{^DF^jgTtZ!zmlAuhdJ4(9K z(ryx+y;fhmpDPnro)h1Zz_z-Sszfn7r7r!SA0~X5Ha9QP)^9DR*~Nzw*m$R+ZBwMu z=ZQ?!TZt}Gw9PIpampdMw?Q+lzau~AG<3)rTcLE0p~5R&?%b^!dVTrKro;@ek^bxa zO43UHckoNbViLdcBEr}ORhVDL)S06BGBnbfy!aNv)RoAs@Dqd?KlnDF;Wq(ReYn>c z!?q#(c4uQZt%k0aALUnZ;YXV+@)bl}cna-l!eybnfY*pTsi02~`kH3o&C$GSHo7?9 zkDyr18NkhDile0v^;MgBRrk`7sX<)pl;v34?3+w72h9RNm@dq)6dTOjJJgPJg^0n|Y zM%fp7MQ=*Xs-Y(v^Wt?0lpqg(gl8>sh%Nd0^x(UIGkEpwqf*l!1I`#v*YllfxQ>eJ z5=FSx+q@{ASa*J!-#dFq=arM7m;Zc+u<1*S-F)VgPR2lCdlH%F?*u1$^=ye~b zYqR069#W%Sq+5`fxp2x~DcY^jPT5$U*XPntxSs8p%d?KUwa*k9$KRi*nxCkymEu?4 zuEJ>}fI?iLOK@*_EUm`URQ^4iVN**BaTc{c*63`C#J{f3bCB!Q@=obzAcl4!+doezNZU4VW_m{f@3n# z(d|9(I1!PDmf^jf;71fb>D4h1zwE8jE?bemHnAe^R)|7-cH1iH&GD@+ck2M~F4Fl5 zA+BX_JwtfP{(6j##U1iCySDIGt108AaJ|HDOC)Q(A##rjW0Uu*KwV-sShT{-5yi;b zgt$(b`H^L;&gJ{Q8u(&UrrzL_JZ%J&v^D$Ej^43miXCP8cV;|A9GH)< zp&gn|j68gtuGS#ws^s>-w(iKW?!lmq9 zdSzcm-1NaFUlVSo*W)RlpNi+N>t8%U9c7W#;a41ssrUfljUipregxMkb#g@c!(e|> z>f%2ra+6lgNtjqb>8@MTdRcX9RsFlp=Yw0Jm9c>)?F2nYzDuRN zW1;ceyjPtk>zd`UMe5&-`WLz;on{Zi-8IUeMy&1H)(W+tE0Yt3=AyRLJ<`EcvdU`$ zVaQYG^88R6JZT?+y^i=g)zRSurN0zT#kb)pZ_k6axXPi9rA+sYz;}^ z4JTEw8B2BjY8`j?q7RB4)$gSfW%MXA6Qi3Dt(3Nv$D|tzgS$0PZDSwVNdCKg8*|4s zrj0QUP)~#nzrH3L`le&&%@P(O~2XX%J6VAb#^9l9AH~NQ++)nzFOIKLyQuP z_9J;fuL|<~1bNTim5nVUuh=t&F42v^bFTs3@7FC69-St)hA?AYf1RbqP18#~iX8{r z9Ai|}Xtp`bINqk9EF7lYX_d@ZCEq^uAKMeq)g8)fvE!yj!IX3sv!X5qROyk5r`Ap1 zPt0nL)ERq>jFe1`#n<7I6jU)P5k9mnkz;v=@QQ#Oad#n#Dn(Uje&N2hq4&B3crsXgLjotCre%UiX`0SQ=ZnK~)d457&HpOUfI8>`_v0uJ91@_CX%wNIh>gw(-_VEeSFB*8t_0_)C5 zUD$EQ+o@HnOVT!QXqh}<{7zZLl8FvR@iL@)4LY`_@sWNqqPGR3^y-YheS%umJgJ*} zV4Tr-+~n=jBACsDD$JtIfRL-CJz{{|v=o)cs&w@O?V3f1#MdtPGN_OB64XJsycO z?T!CTwP3YnJ4;HkC6C4ZK#%7^DPO!MQB0@p^6t)~K-2M$C<@iOX5nva`v&@YFMF1A zDIvyZIu&x0C!(*q?07czPshROzDdPT62H^%fwND$lGV!uMV#diQ5SKMIGyPS>^}3tL^Uo>b#r(|tB~LT1$Ht1j4xAaU z55?2OtN77xDEeN)rG@RuUPSMddby_ZrA9{|2q*U_T9u{UPRgKmV!*GdSpUJw|2d$?9`42~jktH3c% zio}h9W9%2e!AtVnI-4@$S2Zr)oi{*d8J}kB4yRbjuMbA)*G&SY6{%KPFA@G<&k)9U zYW`+wmsW3S#CE#$+tA^Ry^;QuK}Fb=84&ysLsXxDXuMs#*H`m;+a?3jlqg}z!}W)% zk(NlKz0;sjQkL9dKuCkz^}BGQ?&_#IrzB;5s+2PCEZ7hCDkrZT5K59q*Y8uus0+q3 zfqK%m^|aJIi(UR0w8quf)19Pg35*Y#@>~ihgyP#2lpe93%5+_fm+v#X;C&`K-*4;$ zS8ezgE$cVV0Pl`Yv#Sdni$1=rVPA&LU9~kE+qD)t>@qM;10+7-s;v^>(fbhvH>KN)(Z0H@^2cUtfDXRp_EPH|03gB z}YZG27q;gR3q z+!pEP;*O$ef^n}6_PXW&zegzl-n?<$9eDzz4T!8GFa&5ZKq|A@rrZ$SX%G-KC&)xq zk)&^u`uWyoPHHf;E-d|i6|P}o<|Uavu)>cLK> z{a(|SjeU0uVeOk#{NF=yv1Mqbjr-}D5Bfe)!QpcTnsUQuY5w248n_-m3IFd^5_kBS z{4O&1nR5E+pqEF|VN<>wW5$@~w!AS-n*qVRbZ24a%L;=(=Pq;g@jdvfy*h6ln1jdR z!IFp)kl&ln`Ebg4m`I($f40kiZwc_t0bebtRNpE3*}IQ$igI~-K?d&MW)PvD39M0v z>p2;VU7OCv{!Qw7C}O=u_#uPP{JZdD&PQExmW1|cu6GF?b*1Q*65g%on5c&6*cX`s zX{R2R37uYhBpdq=e2F!o#uMrMDR=y_L{n{|d48g$HqolgKJE4IrEdD~&qR(kC5L-X z%9Iy>r=Dg_+eKc~OQ277_nytAleDpz!gzy4KE0A+5-Gl-Gs>`kC$X_eAEC%(EOPA; zHz?;m17o1H%VWHUDF-%ClCK1Oscq{e2Y3A;zF9d{cgbO?3g4^#C6BP4X*(5l+1PW~ za;!cAkNzt%;JeWcbBu`m*~TpO9hmET;xBmPdP#dkY#}_hBR_>Z3a&Y?uew|9fU1cp zjX)lBDfB-;o;Yhl5puY6;quL*X_RJTKima+nbEeAF8pX6aQe!;HAdm4)BcG13G5dU z7oI<&3{tLX+ZJ-CHbOgu{?;LPz)MjrI4uFOz2dq6DE1;)QC9cXxX#+Et*HZ{$W zqPkC5XOwGhb2fHdux7cU=z5@oKGvjsi_1^a_qf5pyrD?o(6@oRnjiX6@m1KwKJ^k)J;XN*jY1r6?zk`r@C@1H+-jP5<-Vq~A47 zTQkdxFn+(N;Mv$OR=_J0v}GyxFDBu;cbc{k);IdQ?sztKY8U)u9x+?T55k87`vHFq zTE-qiKY5t&3?qJo@Fn~xpTeIZ+@KSzLahF3)5{5129dx*ejH@ueg1cV*1)za(!>_seF&?i?zbuEv$|m&c*QkLW%o ze@&uUW-2rNRSzY6kscsYucEipYvGYH>bq0J_u!ic41dVsP=8TVHF!=HPC+>IP1Idf zV)n#v%a7vcBr2k40`Yum)rqX-eH4-7|4EtmYB}=9_~uS8>YhHzX$|)&c6pycuj(9{ zH>MM;#{IgI@L{8zf-7^={bnZVihTX%uMc^9f|}QFvE|rgh?k4Aa11b`7|Vd43xpkD2e05O3H1Ext*k_Urt7&H8j} z@6Phr9eGvCA$->g+-i46aJnq#WXQXUa+>GBYFv5G86v+Xa14#zZC}m@BEGqzY(hA@ z9AD|xv*vN`30%a|NFT?z>V7q9ia+N5dDQ(wN%SDoZF|-$7a>PwB#)SSBK%p^Sk@|9 z4Yr6MWmWMZ!i;2#q%&A)6X6M`odxY_(w+v_s(g(i6FyY}lc$uQ8FxZ)J$Dm6uWAM- zHYhT9=_^Ba1zyoEg|0SY9-{Js*B0<)Azo!>{e*DXc3`Y)${_V>?&W)V9Er$db%@sF zvn6D!CJwvuZ56fw9fWa82SUU%5}^Z=@9t^j3Aa5n-M%P!vQ~n!tFsRwUsSNZl#M7! z=^qR~{ky`$wuc;l-lh49&A`u(&oyk(guDHwn@GVa&je9)=&uJTzFF(lJ-~%;IG^d_ z+O~Z;WNmRedg=d7{Mp2{+^=3k+P4~Vo8`=dQyy6tG2zK6eOa$5;AbOrUVRKc@<>_9 zv-()pnn@XAX+sv`J{|prlu^;O5Uw)Pts-0&P6xj+;7$B=x(kHA>|+(Xd@h(v_}d}- z^k~n3leK6S=dV2BxUMIW={0fiW?a^6#3!k;@mC)FjA5jn%;AnZXYk{dlNt6^4^n7irIiUgZb<8t6rbo@_&I z`mj&*^Ay=kS+$;gd^oQA03R=LFRxvMv*Ef9=@32Kl!Z0R zO}I%PuFE9Hkfdz#$T*qv4|rczr^+3s2BH-Vc#6i_!%#!|SMS~X_(AU!Ok1M(9+^5K zMN*xfDE8j*3FnEPYkIQQYir>xwu`JaJ(3ZRJN|dW3J#svm7JUP%BIr0B%b{$ep2T% z`FZ>|688DSXAAM!_;c?tw8_V(gGQb_Ib86|%c1FfIdnYCKTi(i+Y4=&E>8~V4nt?c z&2nfvRr)wCbo@+wn7=6p_N&sJAk zDSN(P&eMv++dWZNLdC;f)rs9T9O}J?{e+>96!!}I*rk$DaKejyPUb30**}$n2 zU!OIh_HeeiMK9A2U~}&rz<&2of6}ibql$|!U{2)wJn|Fxh2oKAjuRT&D_kqMDt-}m z^3LO=T@CIwezV~v@#BP35o2+Y3H(LSNuMUacM7dMrQz~u+DdSGkJ_jGUE|v3Ro?aR zll(nd+RZp&d3?MZRkA929S`Hf@t2cNWH9;p^yp?8IMIzK-{XW8KGe^He^&;aJVH*(i2{vQ-ys9dI8x-atc4adWBO5Eg&?fGk@=+fs? z7ite?nzPZdDPuTKGrdU{uFKFE&X+ATCYypAb%|a2aOM_yXRN2o7r*3>XG}gz8K=4D zzU96e|BfU-A2vdK-(u>k+TdrxO+A>pmp;_=MI}aA2GkmLY5ta5s9srX^UGl7S!~Fd zH25|bnERbg+HMxf!sp=;M|_E|8+4ktCT{XBq&w3F&PHA{PsX=-^={(v`Ln!n_sVlb z;$Yh_>&LX0usxePHS4j8dNjvEX5O_gqYpE0Q%`1ICS2OFHwHK1CLhC&;x)>SS|jbq zl#_ayTVIkeO7+$1R zHP-;dK5ZiZHkPmS{EzTBse#OL>w3s%ER9zDMH<1#ivoi{-pE}LOB6o?A272Lj zaT)LoX^i*s6(5u50J56z>Y6x7Yp!3a{1gXuKE*G)N<)6D!EFukOB(X8piMJTkGhjc z5}SxE_1_ z-s!bH`su@Q$}M*2<4s=}E*EsSuE<)i6WcQFlDL9b0naMinQfYY@K^Y);4`YO+`HeB zF8mVy>U)W1=hd_3eaRR!tr2~T#=l<55rv1hqG^^bfW&0{GDYI$& zRXXiX;P^E0LFO=(%K_%g%V`XQv6xC;`d7C%B%xM15uTTo5|(_;ai@|MTpKvE3`sY? z%X)#s4qvVejV*az;+X-EN9*sht%Q4Bw0qZ?yyvWzGN~CJ>O}ItTv9oH^Kg5Sb9;&8V??t1(ce}Oh=FNGCm6m$ZVg|YT zHc}>au-ezn-HBQ14K962)fC;e=u*~c%>KTeQ(0o$g34Q?0r;1zvevar!ATvPwnbS4 zSMGotKwp^XN=umt1%{#imp9Vfhqj>TR}pOr>h~`NCQoM=4*w&-d-LHHQXkCo%rU$0 zkGlU-!H1xC+Zq8LEl=pM=JYUml8=5Qmpnp30PoCoGR{&no}9#DyPvSMf^1%%%MLKv%wAfd_1Xa{4$K zZ<(DSY(&qBXNIu!S6;_z;&u}04Bjo>!1n?- z)Pm5nv2v50=k#AceJUDr#N&jbQ@T>n9>5q_pX`%F4tEvfnRQXN& z3){8Ak#>T#VVrJ%Z;^VgHQFETSL*pK1HiWy8ehi;UA+;s-bkj`mYxC-mt67*7DwT2Kb0k2XWpIW{SyiZ4f+~u4afZcH!4mygx{%%k}nF=nA%> zto8O2v6xjCp+8-(@2Da@`t|c6>h%fl*jyN=?kOgngFgK=8(sF=A<|_GKbUlN_)Z5| zwx~Jc(%>8s`bw8({uo^y{=B$0u`zD;Rq;KEO}r_!InI2m864;A)l==JySavRv*na~ zqAa|qHgXj@GF%&ED=kyWdnY)lvJ+jwJdHr~+ zQP(E?Mnexp2E86n+{M>O8b;vN%a6ME`R$pe?=$Jre!JqVyj(IN>l#Jw$^muj^V_L( zx|aJcr@osKZ%+(yMazh_AhD4PFL@Vnt=xO59_+(UTN0}0>2R}+bX^haif5aawv)Ht zb+&1Dk(T*$V7u&W)3S!~d*{0TKqn zM%BqVRIl#-U_7g)c*^&8XliS%U?awp6|kn}skBy2blP?KX<06623m`K8U;0N)RgIP zG~bWp^K~seIVDq!wi~%_X6n)PNul=h?FjA~WQd$8R5yPpo`xROTDa6rpq+OI(pUAU&(}%fZrs#75HB<6gjA^jDp|IVp z@I4r=&ovlvXc-ABZ)VD}dU{#ojB)a0HPbgwpI+AP@^lf=k1XlQTIo_e?M#033o1@M zdh^01J%r@}C;g1V*AgxZ_A@?RrP0rL^h-nZ5ps0SK#sN0sk2KAc_sd3;(GtKa|U5~ z(1FO}$3=GXQS^HVoAVD3el!FxHquj<($~s#Q>~vT4II8-j};ekS*MJz$eBmcWUcfW z!n9dU!?hW5C#R-Sd1S4|7HA^IoFZ@IE=eCT*46wM@YlZ^kemC|2+z^$#AX>b<&T?$ zzuJ?=4gzB;r4#tdW7c7bQSQwFnOYOA-0oJ#7KEfp3SHK^rHnAVb=jK}%`Q!mPa^>y z`XXOHCQVB7K?mY1SO%Kq)`EOg3tcn*ts~=%%2=-uck1K$C|{_3V=w-{I(^GGgP z<>hnUL9SCA7nH{sBdeX1k|wDuZfBEdTE;6%Tp4pp`EG4?WzW|gII$<}#vfDbGz~+^pIgFB&f`FYz{#p!MlTrkRtV zPoJ(j*lrd7o$ybE;lSj{gCoz0X!yI6QE*`Lsd;d9v2Kn@H0(z5bTAX};Qj z`0<&*G1{eV@YzCG^o(9qe1fp)Pdqv)r_kwmGxXlOdOlx2pRCnf4c?5mgyLPqrCvRL zD+n8MHLo?}gyqredLn1@CgQ?h%iX-2uqn3(KLQ+QXRZtR@-`W8WKn#NLyvFK?Ux9T z=JgkA2Sz;ulfcg3e2gAr2}EWBlfHA_9U!z(;{V+Ie!TL9`aM~Ple&Fz-3;`86CA% zrQ`x8&r+3lv7a|~A$9qlUEtQ>8=02|uFlnEx?OnEmrB1sZr=)Sh04$UUJ3qI zc)qt5Gwf0Rr6od@&v2DXViDibnwQAPeI|((+&DM5wx(sjv*m8r;g-3){%WV>;oBM? z48l3PFP%55PL<20)f3?xyK1u59ci$-&8WDPN4HTG&k`4!BC1a4_Ykh~;{26I+7$W_ z{QG7QrXIt#uW&8k>d=*^Wb~xqL%SW566i?vtv;_J(7pC)ke;d(i>TIROJpv0v<5D7}6OrltLxicEl0x^GC>bOH&!W&6 zLg#U(;Fc=9CG;7_t6#A9?r~`?AK++R-;}YTN=BMx~=KHz(j_P=dzsRQ2 zOIoQ1+M&7jqi~{A)311GM21@Gm3H8d`ARguEo9fLbW-rFrSNXA5*d_k3GnFj?M-a$ z(GTI9_Qk`#N$5x?>F*{VX{Y`@PmFa~CU9@b;T%d@44#T9RUb>5DJjuOXy1*pf4C}Z zsqZ7`zCgvVg4T?ehT>Oy@en`C@L}HTSW*^?Sxri(v&6hJY5;|R44u?N-3wi34>4@k z7;CxsC^?U~D6c(!*o(tU>e7#+lW=?UaWf5l&oa_T9ee&!Wb=5hif(ToK7#CH=WG~S8#HG zBFVjR^60$o*-BVs^$a|$U-b7tjU?dNjsAS2CJv7WXzTY(5H|Z>{I`N1#Z>4BF+R?$ zdEZ9t;tFRuCc^-k`+G{&;gk|a$MKbNCHo96xM$@O`_u-Z^3PiTM||9A!={N!-TJbP zM9C&ZJnk6Q4JTdM?v>b1KMmgu<{FV1?e63%tOMG@M{2Xyy*o)mo-#-ING*Tm!G}lI zhnHponwk7mToUl0w?G`6jIUH4#|ZCMKCe6A^GM_8N!vBYSd#8Tn@MNFkyF9<0k6ro zd%<;y9Hj;?l?IqREg_$rH1Zd}&pcGUJd5A=ny%=^myv!dFt<6I^t2N{eO;jK^RXjk zG$OI81D`HjwurjxQHl5m{-XDu7-g>}EPf1*Dqcfa+JV>SQWifQZ7%FLRGLMkG3}l@ zRPavVtpWJ~@Tk1pVBlPW$_trxgWG}(v=>hd(Wx&-Hl$OPpXRrxP<~nKK4Bm}*JFwv zM9%y60Pm!1jLEzce(V^rMZ-4&3;R{Ahx<38Vwg+k6R>5C z@7_XM+H~HYmszfjl$ox|+^(0okjVeQCekynrK_wmmjM^bcLH&BBAWDxik5a|9aXfo zCT&|HttRlb?6btboJgy$V%6#sW+_AWTc{MyYUaD{_#NtF*4()%*?F@4jp(*6&o^)l znG%f>@+4i^dc>-`^2;G4a^A8>1w?)&11oBegud&J3|VV_qL<$Qzg4`|&fvC(hS>w6 z76j87g;?MrglDzRe}M35#T%~>=Dn0-jq2-)jHy-XTED$(J9;pSY}iMVZ!ty-*uO&`{sllOmH>^H-kJB8x9{7_LgCjZ1xJ;Vb8b zupP`x`ks|DxI#`*7K4&=Gl~xV%Dg0OL$~u?FyUI|6*ejK`bnv_puRQ6cP7*cTXFGG zW2mf`NC=A90{(sDdd%gg565Q|;*Tz*or!uVv!7mkIO7_&HIwzJxX&7(3`P z_ic9h`12Z~QEe`FLJ&OUFKy0`;~S=pzZ|`8b3Q-4m*B_4c=8V9r`xDc9~H-@eS9i7 zHuK>F`EAk1nQ2U3G$3=#m^+cR`m2%8Y&RzT*}$n6Ki?|q-Zw8X!5p(Fex%t)8rr4Uy>EtQUUm7l8gSCqsT|+dO!??T^6QN> zlcd3>!A*UKmbU8G4Km<|d56#K$N790gD9@4Cz*_)e7Y$ct;>NPc=tr0lu4+JX7D+H1oudQ%}*j&S`LN-K%~@?StZLeOYPGN?&|Bg_>6D zRI}1@Oh**YW75J$(enOPB(1WWtTk|&bja%WBb|JpLY5umworK@=82Dzk9rb zYeI2-X4%Ipzn{O}^=Nn2`e-j{yVTg46Hwu?H8|=_(TTiOM!S*xN&l$$j~0HE>(Orh z%5y^TiD z%kk@qcA{waLAw!q;C!29+Hcaue@yJYPSPgU1kP{(j@4q_{;Ks{nJjtl z=jgKhZ6&xZsw`UqWvLQ5!O6o~H$Kn3>mK#Fy9>z9C8JYUR3}mk%FEo9a;?+9Jx1C! z)TbQ(@yZx@0Uvy;tB;jg#ztv1uB)D!Pos*O+61mZPt)9c?&tHqSYpxqL|d(Fj&L5Z znmKJV-{efRv?qG%%4?eCJu-O9W7-Uj+xOkm!n4-j?ICR*J@APF@S_FbGG2?~b0!+T z$|(Rx-Y7n+k_F&p!1X-H+vgHnS(O2f;$*z)H6OQqfRi$JDjaUveGT7h!+(!G1oEft z3ctUv1&$r#cT=X{{Yavc38oqcr@SlV0(HSeH&_?&5?#S42nQxl9=!_=yeFz{`X5Ax z8Ek3FkX&LVvre}wZ$8cxdLE}HTFPsfaJPH*Q*5*Y8Jn5yUFE0womOpVbD#~q9A5Fx zTK}*V9;=n!r`E=ju6{p01Kg@SS=~%c8#c$lb%x9Xq;(fA%p6m!-V7e6}{*%DL5TpMHoBJTYvNTOoBIUN~imT*iKZsN|)~^ zI>C#*o5s!;Ij4Lf7t*sr#huG;XPk7?J%$eCj_b&KYtXTj;ggibLMG}ay8qL>*6_C= zFI7J9@T z@gc~RoXS)7Y$Mm|(guw?PKl5|{*Y=-eVTk^ z3?sjf@8z#NNq%Nr>couCJli<@TcE|>qtk=$a&ZB?FAw;v#$!`T-W9~dHU)oQ_NA&{ z51yU)W8<+kFaJ2>8(dyhr0t?dk1kefw3nnV+ZZ-Y*>E|P!K2cY*-V=;(kgh?T6*5TLvfkYcs|HXm!3*Dw2|-) z{B&7{jt~y(A?fm5FaG(A8gJy^hhp+Cg-*q@*6<9%@D9igPTGK9?*54Jf-c7}bb&K< z9^W+Z8h%P{{>sx8nqTNL4X*vBD@4})tC*N-scxtyP-+mIq0x=UO1yrC0#O97vi zboI7jmrE1b|0q3Vtr00Fi&+!cJoAgVKiB{ss*k8P@kEXAF?4RGK?i{} zCaw&exjtu>Mf4Yr>$-bFbVtYT_pKg03%o1>z6p3SZO0pkd-PI|W*_ar_l4j}N9gb< z@KwtH2KOm-{XE$Pesie2n&)Rrz}4l;@Y&8#UWy)=JgIP5TyUW5TDH&jfa_ASr2<2B zFaHzZ?}Z<86>knBcDS((csgWLx;z^~u zxJ~o@+!<)Fi-3)5zMmIAWb!30W%zszaM7)@rIqn!^=2RwYIT4~jGV{gF+jM|&}&lj z7z2)M%0|+Org)ni_;vvD)VefZ;BV}xuMhdAw%SlsXS$0PBvSXv(Px&U_?SH_NJX4h zVleAs6(23bCgfJ-F!sWv9GhxFaIKR~Ex_>=`R#}_Ya?(;SKduWz+sP}ISW9Zq)YR~ zRfM65^kq8#FV)a*OWzY(Lll|+aftM0zog43rV}_zP$u~akf%!P+5Lo$UK>)^rq`D9 zNob{Yo%iM@=<#`hvPbmepON~LM|@x^7W>Rt*4msUJc17nuN}qfS^eP{&q5Z0^lJ># z*GigyDxs|C8n@8oEp27^BA^gAaom9y4BW7n4ml;=mowzGnsnacGf}ZQUoHkszP}2~ z58b*RNx;*jbtB=lz~Ozy9XH`C)9&_2yfe`>FVU>buZ4+ry)3LP;)ts{smFA^GhNPd zQkp`zWOWI6i9Et@3w5FIw(s=jg9<(b-1Orfz37%~@ErmAuYeExPvP?wbQlS*1RnC+ zieBv7)DJpU@NVFn$+tE!8CQZ559_Wd78~3OTpr;=+QF?^>#NuRhlE0Qqj8@Hr`Ki` ztr)AcNy?+*6NFK=Utb>lXaV>M;O6&3HT~Blk0|);0&vj}zRw@yd3+WD&yxq3JZ9UY z48AV#amJbrmn>nn^8F-ZEykxU4e80tw-f#}gs>jICbk*{UlD@qy7<~!;I!eePZwQ( zZ4bDRKNk2_!0P@krkPQ51x2$D8dEQ2ZvAaN0(`6TSDYVN8ISjS%QDPvX)3k)2##kf zUta?~?Jgi+(&hE_W8moLBK;%vC~|CD1kEg^C&_f`jI%EPwl47Wu>l{ZW!<(D+-@}n z58T(sf!ER|sWCbJD37j_(E-Ay?zIe~Qih(0@up5U#@~RhJa`g#OTNvGbpsb$^u|oI zX({X22=F1b-VptMqAv6HTIhO1I@Nh@->rFja~Wub_x4G?^N0_{1yu*@JbqX&OK{Sr zdVvbdO0^eg(?+digg1|6jv-nTe5M^;&YU{aYTCZv-n8sbi;nk%>PzeSnPzy$C>JX5 z`UjO^sau9`fDhflk&y*mIhM%B=M<@oxuv|{*hLgw8tv4@YhJtBh+;R!elts9@Zx-i z&kL5qYnS-2h_esQWk6@ zq|xcW*GxDYE&uoSfivY#xqQEO1UT(g=h>z{*{Ft2vy~!C=9d?@>231ZA~(%m>~lsZ zR#clf9=D2I#z(XomjCcM<>!=loihDM$QKkWOnr?b|0nsAE| zA0d3_RD44Eb~zl5&Ohs=M-hSXpNUINgR6|fWvz*B_*aK;=tbn4*a9vUXx9LE%sfj& zX%&vNN1=<9HESIZTP+~Z0os@Nqx>?GZU9_u0o)#NZ6Tc0&uQTDnD(e;JcwPYF@rgt z_Hc{96_Ed6FSxMIymULk9SO;yaKPm$!1K@$INE7cxeuK#obE7nRfy-|nnF0>@)VHe zFm0|NPU@ggx=qvIXk!J_O%}#Ii|%A?F-kAb)=ZO5$`IKevevV!r%AVUnsmnseJp+gS()T%JO*oG6U@PufeNbpKgZ2nSrAaDIi_ULiR86QA>+ zt?(*P-~TD?t`H8}vlu``*~yVzq-zf0Xg8AI52W7K1jauAc(gn}*i5*Uv}VVkasO2W zj=52w5A|?TueAlz3C{xM_^*k=xF3Ql;0_nY9ZP~MAj`29aBHK>cWkn7y64Nlg>C6&+Sv0_wgPfIFSZhHE832pKLW0R zzFv^JtBaQZ1+j-hxGmrcC6N^Y2mcdIm0Inrk_7g|Ih4obA_CLQ6J+0xV`TSxt;m9@yT%O&bJaj+y zi%D=t)HFJ{Z?E~D+y}mZt({7NlfJ_&b9fFzK3m41lc!DPQyJI;BA+d+QJ>N_#&CO< zuv6!2JsdV>Pv-ZRlJ1vlm{Nt;Ly|7f|G_R~UZ1~agDhb=(d$>*vey6W2B+VNQ1O*Q z>;AqXb|w#YB6}2md?|V4O?X{8pN7Q)f34C?i*8>wtvLrFZ=dJy3O8+9@u9qHMNUID z4=(m(!l?^C-v~SNaS>w)9~a?6l#X|iS0oO&JYk-{s}4-rBgWIdeBt@y@0!o=O0VRi z4o*|X2>&3uIg^aQ70Smf=l@n`XOl{x<7{ZMIz6KQ6?$duUAnv+0#*b zjkIrEiFy%H{Icft>rI5kHas6A_dv)hw)cLoqJu^r@s%E(x~@v-^vjRa>Bh_J2s~ak zudMYObQ2icN6G}9_G!LMVLDT$A!Ikly;`QLoTjt(5te?(c=tK}c%qCoPTrrJ zqKk_UlJc8$_ZxKdA=pdYu7-{c#Jn|W(^kdLdVAMNolbPPsDPiMCg^WF6a&R5&cd21s~AXSkIGcrN6}33>@sxc`(Lxpvhku`=&B7mqB4dRxr=rZZVurh#%WI#Ng|$7 zeuVwF=t;%1@mJ|^059oGdWl2#R1x$^!p+7w2$>YT3ph3wSgT1Hc`{~jYYWg9< zQm;{CQ8SIyff?6(5`G?QgZn`~yv5Lu=uKoi126oCxqsx-*BNkC-fTS4>B<-=ujZB5 z4USI094AX2i3#Ax3zaLRSIYHt8T9gK-925FjlX&q@!9+op7;?nPFNlv??&Zpl}oSV z$myq-a{Khz_)N;DzFPu~TQlzBK%TrO>mN;`eFfDf}-O z;+V*>2!Eo}6%WAAtQVc`b*Gt2tx;pG6M=VFbh6i=0t(pTO%$;-0^nt_P5>xi=N>PE&R(CfCO;{RpF3CkmRWZTuP zVy@2=pQa}Az@m85wl6=b(?;PZ!T%V16+dL(Mf{2+VSH}h*<}yk2_Cq2Dzrggj!0j8pSXwo~o|(*s-RRGMtOMDjY@G`b8W8%a~G z+USb#d1qe^+9<=Dsdteh^!Lq5@|W^RA4C}?exXQQ-^%1)C%{Xu@+W#iXov}}@wL&E9?J1K|O|Fx?L z(+5TQ6Vc(dyTDgQ;I&NGO5SOsU)S*RTHvJ-@J`^S&-3Ve3cyzsfUga~X^SFn`6l3p zLpISSN0(^6#Y;I%lqkMO{R>^So2Fs_y|#qXv`3|JQ+9gkwd|=QAz3{5i4a`pHwWTxc3l@V_>yp2xNZyZDg!=S^E?iGbwFkSJi1JkS;8`} z!T(OJA#)cas}yx=K>@tZyYdL(&^Sxvt`u90fL}ke0Gzx7^hsCN>uZ3EU%>~PuZRNm z^?LnQ!mDVr`933Flfdxh5=maHS823AxS@`E?@{f%DnA*NT33H2ZEkObu5|gUR)a4! zbX@GpT{Q+AKON-<-U3SA{Vmka-!cNeCIYYWl*Byroqm05S>JLLI6f|qZ$zK9=a}N+ zk2m%l%f{a-wx-7)D*o0`ygC%WF%+)}#pmfbaw~qd#PM(byu*Wc0mtF`aO6<*YpA0E zRYwuyfcSv=AhKFQD~%6%^FPhAItfqun;G63RgufHIt^TG(4%W5Ob74hOoh&*yuK>%B9?UK+8LvrVJ(e_N6?p>`tqzfI~Q3f>fgqf*@DKv9nrL5AJ=^y4*LF0T1<`QjVLXd@ir4yT2ps_j?K|PSI~Aj;w((EILuR z;}JN@F1WWR!POah)bhPu^1Ga$7k`wnA>Z3K5{HM6A0teD0#khVNj!qD$l~zx_)Zcw z_|6la*pY{y*Aj}aB`&(t>F0gk4SV^{6TM$zl+FCJXvp`G~tOT*t$2OJyr z+oA_=je-M{Cy(9*N9FsDrQjIbWp{2X*z4-GwpGlrZV{3vjQ^vk8?ZV(kVDFdGg@dcv|#PNZ)yI=#M~e+M}26Y2c~+ax|j5eE!*ZV|56w z%h!mnkTc$SbD^-mAm9I($i^28!N>IV9(+>)_|^jOT?OD`?@{~@0~cTCImaSbo?8H` zJ#a0@E!b6HyynqSPS211$Al!}(f#xvEv~&A;^wa5!KJfp^1zV!!!oq7yr_@xRJ|D-nDwrs69Imm2XcA^Ze!@h9kWVkdv) zX^ogiQ2+lQcW)CTS$5s|MHgwCHsrDl5QY|nQ41|*A+WoPC4n%w=*Y;(%3$Y5C?c|| zS|Ic~G9t1vSeX&g5s~%LLulG#+U7zFE(pUPvPXb59>J0gEws==wgp)WF0{~s3k^)m z8VoTIV8bxrhA?B$fPepU?!E86_ac+sfW2{p&CYo5zI)F-_k7=T&$a%9PvJXPip)dr zew{XTSzylvPac=a$3oXMe3l0pEb!jWc-A{vn@>PcbAdjtyMGOw0q;Nl6xj3+yiu7G z_)G7EpSynZuJXSAyZ*i2gR_79DL9jS--kZ4SW+6d4ik8@Z+^fx5LW|lvCp5@`h1Yh z1)hSQsF7J-drE7Qcj~)%kH3Etc*0qFy%IgyyFcge*E?}-&17Gz-G}@9{G(gsRG7nu zf^lVh`wKZKMZAo!c+XhLt_gD+|AgoGC<$LX_~3u~;V1Xbe~EVb_vczI`~8f+gZ*y5 zzsv7wQ?A>)zv10cCNr47o=+ZOb9`#@;IK({xrA`q}djd5#;|u)pGWzsq|FEv?@USpVl0 zu>J|{=u_)tzkkf%@V019zZX3JS3fqKf4CFp%u(%LeUERD^A#QreZ1zsciyM+!25Xp zDeYKybi%fw6GC6QN8~N=@fFo!Y&7Eg(AUS8{Eb8YMWv|ddMr!GVKVw>2QL1K{jZOI zlXqH+2d&m$eTV<@kItHc#={1`(v^K9dnc@){r-ObTRrekdhb8~U-=E*ZM+}QCxl+{ zgP?&3e_bEgH-E%8xqW2qng5^hJojaG;OT$)9oqefc6=k6vEP5g-(Sjp{~!Lh=-=M| zl;6Nup^d)Y@tl9&Vv$&?U3Jlp?BqCyjyX9_2{Ixl)L^i>q3>{(xX)SA`(L*JqexbC ztnvQt1OC2+H|)L9Mkd1ooPSsAkG_-ajqXC6!*|ptdbfh-@ZER5#XD>`P+HbS20t3> zJAc5t+z)>gp8q-X{@-lgqb6T*%?{ZTl69_RKOT07*X*^wV+b&nr-zkd%L z=p5;1+QVl3{>hg1`sZKcUts_kk^Z5Y? zsKl**?LKA)Jw4iwRT&B09o^?q6(EdlX|G#KY9hZA`K?u#L&40+6ng19ST)i)7?VtWN?LMX5zr(-GUBAD_ zn*5tzXRY_||IxjjNL9by_CLAg@84;x9}oElx>tYyDdX6l0ecqZ{t3?>g!ez@Z{`k5 zzHX=wgNgV2^H$4v^ZR$jk2KzY#y3G9{qAl0NbP>BPp7x(qel+gZ*A!dz-YE>TuM^> z;4Stoe~q_(3!;5z;1WQ#@3u`8-uw9eYg2yPctwh8?Fgp-{QG?C-|f)tzj1%cXGixx z9NeFNc>hBUbENO|2XJc5_PEh{$AHgt|Fw4ExD8&LKfnFf6MyoIKflSJ7yMV9?4Xf< z_Qg-`{TEZ-F_!epKNBzMAL-C9>o@QJfWN<&$tP>~$-RH@b)IYQzy4i(|4r}1-_!or z`TeEXp5GV#cY3e$<@x*X@cUV8&wusLd;E)h6kPw{NBmv)8N$2Y2IsfF`@xQPzvzAb z_NPq!cffTM&wRu`U-owY<$uiIxxE*k3s(r`WCy+%+W#5PU0y#b`Q+pKEGt^>J*vJ~ zwTVY3*%Q<)AMwvS>cjt(EUM|6dn=0?pa>4WitK|i^-qB3cZ9zNoYtbMCu92+?*J;n zAD{m&&ucnLYw$aN$@6~A)(C6x58+jb^cgg#zpv=`v{M_;c! z5B>fl@c#wy46p3iN8_9Dz124RrRF?;PxF7)9Pjsj$n&4e+J`y*-j8@*pQEkUC-;8; zQRquDn)+y9iGYyFbA`Q|;-HxE)uOqkp6|2glzf5+Uu;k5SO ze2aE}UGbN>#T)_6pf$yNpsRW*7Q+Xu$Dx1!-_p;&{%4Fs9jYDj<_q_}OofX*DqOJ7 zc1V-0!av^#&uowK)3=BbeLK{_2v4@5!GJHm!`~*cK7EV(Zc@uVDrTH~_2<-r4Xl5T zljv16_Nby^b&NihApXKz>dLgWjYIvr^pgbhdwLld00wa?*17NquvHTn5jV9oo= z+r!X#JUoq&%XMr2$-O`RDfESPUTy!$z5h-!{he%XJ81NOe->y|J`Qt9zkjnfm;BxD z*K`Q9oxb}L{p7#ZZ~ps1?RT(U()Vyyik~sR^j!Fe_VZV==U3)eHO^F|@6gy^Qht7P zTJvvNuZEqE{7&Eg;T`fj#|JtHbyMEul*3(H-_$qKJzuZ%JYU}&Z|{M(9Cp^A0ee2~ zD#KU){I{}k^EsfmE4n`)>(XclG5;kJ$PWFIY-lUN{FgTWBiDhrjC~3_nss{w(ERg_ zvh7>nr7d?qhum{ESv<~Ymm2=)E$n#z-KR-(?<;iq3E#^RjCsZR+(y~l>^VH}jPY|@ zAU>bgomeaugZqaT9KPbGjq^k4)-U|aKU74Rn6d$4O}_BfU-JyN{D2+-<_mBA zLZyo@y!DmJZ(!XaxBkzcw^`sf@?X|8{f0ggU-2$JzX!jecD}dM56#;BtQ_0eU)}E9 z`J6RO&snERjITZ?wfzb7Dx3DlHC}w+@BVwS(~lZH1rPa0bNGq>`Gpnh)g)ejY3)9_ z_dh(q_TJvnPB;zy)%izo{^<|sF6S#`Rcil;cVRw%`rG`COsmKid&hJAQ-5dU(*IxZ zF7H2^pUwtC^Y7JZ-uesk`_ms|BezU`AMHeijbmR_$9a&=104v>G;7&?R#@_RqSq?x zpY@^GAS|}yJTCC%a5CvH60^5*v)T8$Yn$)i+d0py-CG22X}2Su!8lpF)=%$fSEpOP z``h1gJSy+}E2`1n2p)O=soi_l|8AeJ-amBpw?Fm%qaFRXKmFw1|H%4Qe*abYjf_q0 z{{*^AdYJ@eJD>6M_x#`@?ZItoo738D&$0AV`%iD1!@WPvPA*$)Eqx=qm%L9~LOdM5 zL<=|`Wc}XO<~Eo<%X4@vmx&Rc5Kr5`jc!sq@zKsk!2XpC_Mhy~BiZ}6e#dOJQ5jRI ztwC<9=HFp|pjR&|-__{^Jp2o2(f&Eg=9@pyZLtSsd*#{h+{cH1D}AEdqZz4rr*}Vq zx7oLj@o9r0d;iwH!T*bQ!VjJQi=R07mV2e|<8SPWhJMc5L-Vq+Q+wr}YTogC?A&BK z=g+^9;Yo9i?cw8!yv|{HW^>8%?-}bs`K@vbzpRVwDwCxRFvkAh`scblpkhegCo$*|K~6OI~>#)VAI0*>=(V?qpaT#YdHON zZD`Q-FMP{RZall?|A|U`g@V=IUpA+IN%DYsf8h>3N%Q~C4jkq<{w?0u@t3d9cWdjD zuPKa@eA)b)U#fkR!EW*D{ri7->w46A4O;u@_Z;0ZWO?V;0(Pm{NmwVuN!8z9!3&!5-ySL*w-JkMd7*61XESN9R~ zcb9j3_rn@ZA$)>%ho}AggbdT?>ncHqYNK^%vxg`G|}-J_pc7_uMX~S5AMI_a#wO7 zaY*ldT77zO|B@xoVHN)AvI1^KTVZc+caBxoF4)k!+vWJgHmk_Xe9k#-Wi;@GPXUn1 z)n9B*+UfVtOZ)`(1P{HECAs@0c`h|P1L)*O_sbQh5+ciG{Jzi{9%k{RHEEn7L@~XADZrv<4 z^XH4%^ugqEyw2uAFVp3##no~=&7RH|^KI+x%jNa#?bYnX+pG2R+q21b^Y-QR)qFj> znr$|3Z(c4y#P#)j`}R4QnOx2`Z|l`~Gb{72FFj^gKp6~dD1@W?Hi^Jj@pll{^`+?%}Thq951Ft>NSDsJ_z2 zr~6$ki55T$dfG3#CtB#*r~WXk{^(h8xIeg+dLH+oo`JVv?c-{%UuP?|eO<8b*#jEt zfrw>2+sw8Rnm~71%hmGgD*Kt?pqQMuo*os0?r88q>#5dYAHF!*@9noo-QuV>9JNl* zdd2q5YSy|Qzb>XX>#?CM{=v}KV~7aMwa-R}g|L%W^7`xVJbd@vVlrP{&ep}|X1<+4 z^y}G0F@Xfqmj%FYT37SUcDCp(wzKui@l|UuJSj#W^t;8=emg;STy#!PPP&~@cfYlm zZH+-h{)vTB=ro!c`*@<^IG}bN7 z7B3bsU8{T2@!51b997Ea_AtVE)H`{1T^tMtv~9Dx}z;6z&zTD^4}q49DyoUs0y z-4x^{REZ5iljQeCBk@NREIdY5FOaTv3~In8y1zUvD4> zr#faZ7fwa9851~#h&G02ed#zTBQW(hPkSdt=ipeKMhbU|na(#6t{1a6&g%6kL(OZO zSXFdrJeL{Bw_iQ$o^^|ZGi3JD`N6!qcn(sFtN6L%V~)>7do^JcU9E z{by|CJ3+0i!RKbPx?H1R1g@AgE?x`WCj1z-Sb;dcuNkafF5CHR%)BB!wmZF|-8nAW zy@TP2z7BIPAV)an@|8%#gb3s|GgxMeiDLu8-8&n8psykvOr{ifaDX#_AYIQ`!E)IG ze){d+;AwBzEy}q^xg$|1#LuTTDq<(&&(Zt6e(U*qd9$iW(FO%0b=t4S7y+-46yvL_ z^YP>bFkW2NX|pDu`d~UIW~SPGf=Od?R?=uBnd6U!CKs zt@Gs)5zt!AU~ra1y1-<(@Sb{WcSgM@z0n87sCV2wJsY(q=ab?(k!;Y<4Yd$h%w^GL zyPmIBvuUwOcmYd; z)An)i@f6^s(W-(gj0}k$w!240szLpkN(!%Q`qZu4-1OpaR(HIbhyP%CT`eI> zli8TG*Q@_e3{J+By*Yb{s*<*xAl_Ev`T7<1b%l9g{Tp~Lsbmm%+F+=skBXDoE94%6 z7u6mJ4BhmR5r$zjL&$J=+UcbQSg*21r7WbAVA6wrz{{Bh(NvLMiR+HL`@MGcU0pg4 zW*0Xb>91%VR4juU$G10|&Zw8)-*`YI-Txts6T^YUmSH$9*+)9bc2ap$XDdUVl{s5v*{0dPt-xfMF`Ty_`&S9 z^Z6F7AfaylTF}2DfyvE!4Mn^^d((P)d|dR`%k6T4^msB`Z)E#3EhiaQ+_UGXRM|X% zjLhm~saDHZI3L0Rpf|+(ac{5KKOMdM?(k$#>~-5{A+<%P6t8Bh0`V?aFQ^>Ntt1MG zH^?E-(g2PxMuXnt$K8RAhH{c1$qcw?a>Y-?kBR((={Q@vnPYZWBJ`)YpegB^>e0Zm zJ~QRJ?+R+#8a>0wJHnWC9q@#hL7ZJQnaU+h4h9tQl)wP8S#VWwuxiOvkb!ZrUS8WO z1z%~i4I-PDOF5);{PJqNfDBd`))669<>fNi<|gi|QOl4x05n&7%FpHS)qFd-)T*r` z-8<*F9y61CdVXEbZS+hEAp-GuaC#;!m8`kauMnxNu3rGP3)}IF>)`+S@5x6v`eAWP z>J9ek6o&()6*;E{xcrTiHM85y9jdaATi>5ES-LpLPeu@#AC6KkNu}-OUVPIE@Y< zCTcSKBp+gTNeCq4@cat3E&? z9uojf9hodC4p`GCsG#7y7R%B|H=|Zjh%=CQ*gkn|krZNjL|!oRTya_uBC|IWv4`0u zuTkkToPF|FWp+8Be+(wJD3$o^B^Y>)zUr536yxZ zCz-aF37E86H2stAoGqe5WJtDH+VGIr=zj5j_XB+2k7vbF!fWyZuB<5)!YtKzQG>ZU z9)5r)1%~|2D1tn?q^OT{AP$;o>KONtF@63~r1H9}EuM?wQeT^C?EbXyTjhpwc>*b$ zjftp}`yvk~#ce|j#luC}Dw(y81V^|^G8cuSxJ7}q+7LKw>N)YCf>VJU;4fTMt>awL zQy2T?lBjhC<56{!Ai!KzzQ(=bO)_a@2NFVUn>-%goEsg;MUx;O8a6wSByoD7ADuL@r&8bs!^L#aZT(6xYwM;pGeL1Ovf>630#}!jSf+ z`o|uY@1uNoziA&wMB_+;L#LlQBI^c%1;g0pF`l&vq%Q)C)GP`*o-Z!vNboou<|YU& z6giF@YU^E_+cqI<{f1bALR$q(3SA-caERQFvPatdifRb#IeJ^m^KbVEN;}3;PW$#( zckyz*UM>{e#su&kE#i06LSyV`({=g0w_HN3jUEQUh8}4_J0S?Squofns5quCY8V)T zEEH4g9Ch1+9bdhWjk3bp3zGd5bA-2$&e?wn?y~kMZQA8zJ$P*6}v#F4w0MHl12XgI#DNBBs40Char}-JZ0M zjxZu2IyV4!VQ@5CqqFV12JWT-NG>C|=7JxCo8>NWBWq`~uZ#Kl z#T-4T9gDZ82HR}$(l@ikrHkp9z4@7KC8yV@gC-0{P*{N2o7yCD>9g6@Vwk|z)w20uu7A9Rbk`EL=Mh5W4{yYC_%;co|cC26+L32Qq%vKSh4Bv|I-D_P1W+u+ZR*wdHI z~vuQ ztzlQ}BsgVREEi5@NN@YKlgx&uKlJ=$`W{eG+slMY<4wH?)g#~fM&mdE_v4@numdZsq?(R8_e z_uXU6O-9&kM@rWrHis@a(3W+_tj+*Y8F<1C#^pO%Zb7{^!k3Hw@@hW8C^UBp_lX^2 zZC_;|J;iQ4TlJt#429x)&Zdt1JmUio=x(*!f<=k~HI|olfLRolnZ2G|-9Xb8;?vkf zEzcE0u>lS(pQSyW4taB6dpezqYfQj>S*kYG(~G|H3})Cnw3*HoZ7)+u+(4G^Y#A!8 zEoyFU!SJWu9!^Y*%qA}hb6K{H6Sr( z13)o$ZBFDcY&eAdG4SlE2LIgYFhg)T#jK_`W=mj^!d{l~@Z9!EY|)>a zkuDpE4sBEIdc1joj2Lf_31$LV$Ai)E07rs^EbkSMsdU$hewPTF>~ex9k|Ks;mwZiI8t8Fts}CF)8}vo<)QAgOh;PdZ^pD@)mkLo%C4 z1$umP+|}m&!EvN1Xsu8*fgrjvYbG;UB^XNXa(Tds_pOW7^Kp!F<*OqY4I=0Bv_=SK zUnOOKg#{M!eW}Sz({hC^wi-E|oI=Pk2%gdJA(4tL@=0V^iaCrLWozYg>g_8yBC*r; z%%qKFM9Or?B-DV+6Hn9m=JH(fDH{rM_tzuDIh-A*_0bYCemx|{fYaT#Or|5uLZXhf zIaoSPWCHt0DW;Odp+{5Y8j{!$L+Dg%TGkB!s($CDpn_h6cYyvos}YVd|U7R;jGgvd=B;iFjQM zwelf}ITTbK{j|J2e?%fg8=YDG*M(xoWD_)#4EOtZPcly zRVjN`Zu%@>$5l4iky&tKX2C1jag)pW%H#>AAqsem#!>G61hS12vUmNyjSNsGjZ@SKyz^*v1& zbQpash4Ryosu`9md=znA6G_9<19Hv|&qfwVQ`lZnR`CsqC@)LZ%X8%*x7bjRnQV;7 z#%yu^#-jVdYD9FyvJ_UVVbHNjfr+T6U6 z#MJM|x9I5*_$|(c+I+vh?r(DDaU*qrzV`%*M0dmj*=3QuuML;0?M!ECRB7;JFcxT$ z4B@btD5kHS!-#LR)x4wzI;?@ljYI9dSB?9H4>@o#xvyF`n5EsGpB7yxt zy0U-#J`$;hl#1je*7ZbNbWQUzvt?j&lTdJhga-tCiGA@}SaZir@pRi%xy8^TIZ^b1 zcqPyLMEe!4_eJYLD&~8^R)hOuS@7jD{t`70DMV?)j@O z!vj_mOIxBz&eIoI0q6m!7z#u(8_yZ-hQP2q1x^AW=C9sFC(%ZC87=;i%6G#`PT~HI ziQ8?k%CokaCII;r?`)_rTg09W*>iWWh+~&#k1+zm>-Smux zvniFj#y#RV>)f^MkUEYyJfE>kflo&M%J})@bY=41-Z80G@ z#(3PK4D5()<`q6?mnF&gpkp94w|0}Nmwqa(_+Y7%Iajs#*=;FEfnwuDVa&;OAY>VA z%M07Xbgz<$kTfr+DOxR`-EB-lZU3;--&=FMM?n$CpC$6Uk?%OO;6g4YT-YUBAriZk zjHD#En3P6A)oL}x`?Sp=1aeeK7$^n@!Mx3MX^xPXI~4V-sRDcGT! z-Z0c4!y)pK)C;LD$+a9}A|nUp8{4O|#gQ@73%h2yIzk<; zedn*P`#cxKvMSL26XboLl3E7zb#k3N6p+X~ z7*s*V1)AVEkj{}5S+9dnGW0BM zcXl7FW2U&hWknbxAgYcw79q4L_I+fy-qJrMQS;%?>z zmd-iilN898Huzw+!EQa8Um!0rn_Nj1*Ee{QbbpIYOJ>Ui24(V63;VWr5R9wQaCkG( zu`f5PGEvfw=6)27iSC*)muS@8A-qrV^~vw;$M_5|K_u&(V;BHB?wd+53q%S&Qn&1Gv4gzhBY9O)|M4py6sh=p<}2c>GpYtna?m`SO~55~ zfifPlj!3}_r`lhrqm_-1`F2SR2ccr}}?4jg-NX+mO@S>3tGz1H7x{#={BOZ1olsjRvyP;*77g6c8#q z652!(9Az**rmKi;lEK(H-4jthpOFqkZc9xxh72hW$_LSy(x0`@a67eCk`(Jl#>~CZ zk^PT1d!x>hSPm-8kEECp zS(SPg_l~Ega!;CI8shVgSrc4TGCI4_Wxh!e>S!&t!KW5kkxiEb+G>M&s@$Dm$yE%( zaTzP}gPuf@#}$?0IP`r6x8;KCVIePPIkOeWi#{WaWjh|q^=pWm!}+9#T`+nrwACoV z6v5d^I@?#+gZ9zm(?M@^c${3 zW{;f$JgCgTEA1KyZm8CDXpHXfaPFdcOeBM( zSW`0!RAe?7oR9I!@tjiD7>ml84ovFt>`0kM_?i(|*-PiPA$0y?rx{2P-DA%gT?BHL zu$EAZ)Pacbd_1||RY~e*bj}inZQzQ?&h4C}(1OdD4IMv=V`i@syYntsF~V_Bj#8W2 z3D=3j9FCxPVr(FSV=H0Q#l}k)%a7B%ZnGwJ7fF~>AA#L4N14acsXTM4nC zdWgqqF9Xy9Cn?Zx+ih675<13CHN2Xs>hoc(F;L&6Xl0B_a@^7aA|d*a?^x7qiQ2kK zQdRcqCuV%hn%7}30g98&|6!N2k`*~$GgW1)D^FMv{%W+9$MBGE$Zt+Bv<^NUj}hkv znrXlKZq>KR0}#E15Rn*z@DNx+wiJh>(<6e3R5K9Q>XaO2M1^ND+m<(&vL2Gis7bmx z5}6V?V^Xdi^R#1qna7X`z9L0PEBG)8HnAXk5+1Hd#ilX9Ot@1qC6B|~IcbB)X{3UR z5XTMSXBI#S*hV1P9CE6Pb1}kZS1g2-T!2=IDyLd=-AKgH=7XPtl|uxf*uK+byS9{N z&CU>`xFYi@MI@Ah#8qmD*$5VCmPkaTI=D2|*P&4cJfdZtf}S$C0tbkWX2okvLN_-f zTk8BWq7WTT3zzmXKS}$r3Je4aE#p*r+LW$E+>p_hoDiJIA_?VV*U<1TL0vYSwGABi zDEsX}`YHYhFbDEG1js04oE@J2paqDR)AOh*=Fcr%~Or_u>6 z^AYhbwUBl2PAPF=PNT3T^_3FjM&mU}f9(sDf3i^SNHM&27h(DOjpcfkKS}n=fXiJR z!G_^;{l)~67gvDV;5$k(q%({vOtQwGC*B;rbV)G_3fFLbcJls-olmsfP4-|q-QE*y zW*a{U_+0FkA|8{^S(hQ^3rF-AnqOLTTz`TlJ35cf4UKJk5)Ot*TE zd&)2x$ydS}8^1B4f*_GzVZ>moOP=*MLww%Z$soRy_wF&pM!)M?Bra=!gTn?O*>nd_ zkBA?)MwB^dc{)2b1Uwbmz6ryO$V$Y%gw4iIh|YRA$)Mh1 zuRZD6z4_uH7y?uCx#R0__WI%ZoS?ns)vx2=p+h9AS@zo&?#sqbS!{>CNc48teMZ{V zlVYdRj{HPP=p14RscZr#MvI&?rWQP4*JH!jEZH8gmGAKXpioN6_~1 zQMB^o>bV(S>X`6caG8-Ce^+O{mgq}XduY>rjp)i$+@@T#CxnkK-thkx+`GJfjwW8( z9*NOn!0kx{(ul6c5RhLWb*&9w_}Zu>1?MVH&W`ukCJ&Gtrhr;TR^c6oP>w~c;ipA# zbcTn2IR~>~bB_3NT9N>Aj{t3u0z)0!^N)34=&n>+GuEc-m&X3mzgSNbF+I$m|MVk# zD4@o}HF7q7RDG-S64fWrvyA=bLv>Q=S=u&rYbU z;)eLp`UJ*g7H$=nrNJ?qQAo@D`>?4iC}>c5wYH=!1>0v-ZJ4mhTW=wxb6CQ|^ObK6 zk&Y!n6^p}|*pVd9K?vhS8@4`(x>AhIj$`U2|1vqWZQhAth&RP%d{KQ9&aCLmfL@gz z8&ayP(t-IVGA7i&*1G!kO0|%}K7;_MycHfwGzqMb5hQ>t<(L(AFTV2KHMvVEr78pP z?4)0(0AFWYV)|l@^T~&G5b*iq?3>0X0qF+Zj`dTI0-n{SSFb3t$0j=Be8&is)3{8; zm%qur+*|;;j*-$x-q7)^6P1wLXL~>V_7iTDL7<@F!9lMRpLd_3 zd$MojP#=-Q8=ryhqcaX|4C4ci&V}QVrH_U=mUUrKG8LK0gC@Cyl{dE1eG$ggb@1`& zH;cRE9v6f-o02AkiMN(8%9^qL>8k5<2p!+=M&e}sJf3YWv}4LHdyX}4#nG}y9^I0p z${xzejWgA*mr87E->*ca%HPBm;UHpYFn&oucGu(p>IAsnc+Q>JB161qDao|TpH@%Y z=Wha*^G6nujt{!ex}7tYF(1MzZIxAFfTtaINTxuRxAm<)uQwE*A9WwMJ0yx*T?0GO z??*rVfPNyQKy@`*6-{dcHg=}pS!Ij(I3l}5v>GY~-3{fZV#|2?bC|DNnos@^+KW^b ziPefwz)Nk*HvQ z*FwN#B6;b7>{Av9OGi$5ICZjzh9}QvQOK`Ry&!GQpSRAHj3H$k#3#9`N(xeG6g%o* zj<>d0u)$+OD!X85;HhoFUWA=@I?Q0esA|Gsyd@{bqa^8P{$YDMCCc0~{k6FwDIV`a zC&R}f-aySoLig3dm~c1cjhZ1@g@iq}0E_}{**ixvBjgWpqde(9f5?1lLj+sj&_~*V z4#QV@q(mB{8dTwvfMM|vyS<)n)0oh{C;Wp8g#{@Wre%58|3h8QawwmJ8DjZkTk1Y5 z?M3P80LGb**CZ)5dSekxA#E;iwn~cKMPgbdwi>9tP{NW1#Sf-H;tDfrhqMNl_1TG} z%dn3RM}7#At-O0Jf*)L}?;&I`h!}omBYMiTQ(T{{7aBk{?XJhTvKLMrQ!R}ec40&B7>XLXoIOP{lKI{x7$73AWlWIKeHMaPs}hLNoRwmf0$5ckgMV9?5$62u8v@h5sQO}muqdUDG1+_lLQ5kl4pfMjb2j0HK2%OLp?#v^3L}>@ zLvMwn3N|q&g)_?W5R3r~1d_+~u{KW%c5Be|HYXAkNVO6M?6rW37)6GrX9kr5yHG#> z2GS|Uia{HGIiKno>XsFw(>03lY0t$9`zbx3zZq;+VbMxW>gzU5mKpBAr8kmGoB*(W z6!m6cuXOGr6(b>Lr^8oq9pODzMiB$s0_Lazwuj! z&q444uJ6Sgwq>Z0nRqYymg(7qUy~Q zuh3XC?kOTReBcsZeQB`N_)^^N6@YBnSa08h6N$TN7s!Q%z!L?4Z_cUH?Ipy_>1;>3 z^DCB1*hPy1%o99vF&1Ob;w#Gpk0jxH4-JGf7M*?$?JZEM-tGSE{N_1iv)y0~E1^&s z8-1NH$HWf{9uO@$jdLNX(UbW*OjkrvAxt6Agi~0$YA&1b5GE9bk`U>0<)wClMLFQz zYofP8>W0QL90-G92_pIgoG8e)Xmf=UrbRSBM@i$1bah3>hE7#;k(TNEohFQWA`a zPktbgIF-IBMUGHsBCJH908;x*^kp2C@GQY*-G*%t=zSL-1V+lGhrW8XrZzm2K>g#` zu$=yNRjVXSOfy|#4PqAbN|rjFvoC9r_B zazsAL$eMj|S;ADRa9cF5HkTz5h(F9yh|I0rjyR-oLplex-EiXL8pLPPN2ptQ93d!o z<{3)U*_`z?T9Vx|N3}_L^)KuMF?wE5<%FOCVj(k33@TBZ=qnRB6-qRvtnRW^?y*^+ zW$uqTziF*Y5wE5%$80L0jWa^Ggcg=8>jhfrgA>frBR>h6FXwLkQYE&g{B#V6TO<&L zI!(>hgrQvAyIULRwXFumaF|r2T4Ss7uqUz`7m~R|5!GX?NGCRMLSPh6^Z@8La;99A>;zU$2?U-nfQ*m4KQmF-#%Jk+ydH#Q&sA9v>@KGB{<7%- zTrNG;jW26%^9e&&FRvbo;2^e)M%}7%pt1!vO?SL`e#<&#^HJ9(EgyBOmdq zcd0|Q(L>Ug8BRU&pcImQj`orSVYaXx^EHFO>R8*c)r}ul_*}*cT~>`1r}dapo54{i zF9wAjHk_@U9LIoU)izX&99bTB$y$)FRbva!rG!5ZaNaZEl|z&{c5yH}*Fn`QIS?7N zHng<~AKNhzfD2otf>X*&yKHd^u!OuYvL1-Bm{Tm9DRZP2QdUe^kE3_hy1WD_x`isd z$l5D5@Hs3;x@EFK(vt(JXbA`nMu9E|*x0W)lEq)bsJ?Be0b_e&fU%(*hWNKNOpRpY zgkI%gsyMzTNt!@vqG*W@`KE#L$rlv&G<1}+ZgJ?1YB|$ZpL|mjd}ov`k3|If8=?<) zJnf{G*7^cG>m@^dZme9Ic!_l4?cSf*ZJ{aTo&Uz@W)^7>k>cDimThj|#H z#`&}Cq@qMn{%XiZe5{vsV8y2Vkd*CCctru3@Wx>F%;RRe-nh)oJ5N2gLrA;qMp|fB zCmu>K+j%%@JV7C>D^ao3cSpP75M~af=)%sD{fy6)0>8Ug@ZvA49b-1thLR!W6S+40 z5I+bT%H<@O?B@{y))54vNDDQ3YXdT++7sX3XFr=zlhvCdj3@Qa4S^Z|$lvtC_j0U4 zNi*psDR4tGT&&+xP#)Vt)mh8Dn?VRD(bdQUgFs{E&l~}`c-XT4DEjQlDwsDf{j{U? zmPRX2TWPUEWj=<>#|j{`7A>N_O3@R1wo?`h`#j7d?D~3gfw<&c!+fe57TNSMI{~@9 zdBZ)0hCeNwy0a~M z8nuaph(qjKD!$QJX!QR+Y*~SZ%SC!X}J7}}SuaTBd!o%BYCI(F?6&?dhH9`p% zI#dmJEV>1aH_v;-{A%dqn~dx{Imw|qFNi5sEOmpaByZE@7?B<=>Nh3!IC*P9t; zgYKtjaR#}`KfWF-|I*Sf^&}9TxgvNp9-7r4ApfB?HK0Vhv4c(6vl70s6BVK`xe(^! zG_c~3m~*)ici4@f-;9X>`g15-fI^gJvqYMdf*@O8ZF(E9uHiJ98Vtb(GaonW&`pf? zpda*StoP#ew{X%yg$|i}4FRRU>DlL)!eY$~#%z~RR)#pV7ERS84v!xzxrj?^+XE6U z@;Q3;dVl{+v6vLt2*NJ|9bB{_%Ee;5Ps|SQefws|4*ucw^Bqs|@G8BxR^(<$bTp=$ zpSgE*sI-Ee{yL{dCVW6yC-VdSP@vjWfjoM7^=?~d=zx+Kxp+@FjS&>PlC#_he@u~w zln(Bv3rpOq#8muFbSM&K?FufeAbYDg{y;~tPX`nP+UK+Z_fOU!sb+F}O0|xkcveN$ z7%13YuH)~7#LHu*Vd5vVZLhm&#p#)lf2aEM z-SpFFM#RGoLV9RkaR!Pr8S|+ER3(Gzu|eQaW#N$>!H_YRItShF=IHj$1G=M>-sC6~ zB_y(FbCYF;&dNK{Pu?{stR?>sgiQ2os22J9=4*&Ph1-49elAMgE35b~2?|Xg{%9vn=a#bhfA*Ypsq> z5h}{0>+D1&>!P=5%MBtauZ3ioa1>nHUuEF1VeFW2$;dS+QL+Y^?`83dQYx6cgyfK> zUdEy?KVu%F*J5p`uEE{AC2WqtJ61jvbBXLB2B^)3k4NQMmr~x7RCjv!AddPFpQ$x9 zpQ&EbEpNlBE1OY?`F_eKe+f*Wwmdgi!JU|GION;`(mbA}kmlDWw$;PU)}M|X%D$Dd z$j9(*?9hRvJT0}GQt|qE27UN)=bx(A;c%pIPBs=DmaU0~SiYT@!c6Y+gqy6A>Su~{ zb6ZR8sXN^rSLUtd1%XSi@tS??kdV}oJp+!2oEj1>xIoNa21gYL`q65Pp2gv+{UKyk zk4-b~Eza;!+K(R(it=*RYHMZ37CXoSz^F_-O65Y!quEwHw14O|3FCP|ALR7p=mR@Q zZTEpy2SVX&;cQ*KoxNZ#2cbY6ua}E*KyB{iEd`LVXjZeZ+EH%n5OQsdxA5t*wx$ey+#;ARq>L7L*WA+G`?w~1#YcK!@4cj3-DC-AQA?lPR za#Y76L)(MWS1?n=E!-a7x;$>p$(%q^fz$- zBj=f10K6nizF&1Mh%ed8VNV5UK|tlqup{G!_Cf zP`oos4ahJxz}5>}21AW*+iUW?bCgw^n4OdDMc9P$A#FJAai-ipdm>z@V1xpj9(2%S z`!MBx+Y=9V#cy&zAgv+ad@~d;aW7i2UnOW{lioD&U!V7Z@>bQ?k&c@Mpdu!GMn|XA zbEE=D``GTbEVZ4Kt`76*^OG!bE{9a)%Igp#5oi{)+whDyOJ%duT-Kn<^i6=KIfvHf z+d9tfoizw7ThubL)c`R^l3*dW*&-iv~;7v5qkOAu6iNpLAird%+I3$$u zYz+@jsnVA)sG+ls>aYV@SvEmrqlKGE47?2F{Bw~LvHXB7w%L7b9$S~Srj21Ld+_Rq zn&+_`Ehp-1hrr3gSW(?(c+te$m8!HhKo;8j>)Fp(S(R6)knaoIX zL~!}pnz}v;U1k)RN1W^6kdLVwS30oYvCR&A(_Q?l!*I&M7gLDx>z=>IY8a>b}cPx^|8!y_Z z5_|cv)+hr@@IVPX9Rkmw%GyB+n2gD$oYSUHG$9~J?HV5Jbvm@@Gs~o8K$gy9`a5#q zF%h^nq`a(0#a5Z80+D$MFt0<;kv8t|?Hu}X2Bpx8pX#4yvnJH{#H+c+kbm|v%E!>6 z*B!)0*c0lMa8TNEn+KS51X%|VbkqVla-pzM2>V|U)~`kW_Ls9w6@cz*3G#qGYJupe z7;(Vc!HO_>{mc9cL@%Fd1^U-%kD!hXKn!3>mo3;LDCQTOJb0zTFlH+vyoxR5w#k0%*E!)tX`clsm9C)X_?wrHNxENxRA^jnEZ~rmN%@*ZRBBl?l6;7r{!hGKx*VJ zJ$LXkEXeG~DW?uQ?(_=!{2aF34QF(!)~E8RN!aLBqV|#dYy+XXM)6g*-9J4#3@JPr zbS7dg%A%-7bw9mFNm$E;(q7%^i+t(5+E?AhqO;&4VB1(p!70a1^6%ywVpSFaonygO zcvUmwOk8zl>QUC?)V@K~D(Iep-`iLa%i&u{CpBgLdd!>!&*V4hl1SX_Rn$T*X&- z$PF8Y>Ad|Ri53cnYn^=?&=2(mLpbG_1Wm-jmj1F>yxZ{SD$|2tuzmWhbhvB; z?cKIGYff&nU4+p(>zoe#4&F14N*@*7q= zh7EN|tN|7Vl1Vw}OdPGF&L;EKC4$?*rDR9A%Z)S@PWzA_Qg*M*Z*CYT|9w z4>e^Pid=XJlZ>ty*zSSVz68n*)uyaX@P~B%s8A%rC%;^AZ;kdc%(9X6o9d!A@^_nIlRU19NGe$`l%5 zvOyn~2kl8s`wd(ATMN+ZOFx8ehO>T}Evr&@%G?O|Co}Jm?GoS+Ii+OJDdJr7aWb@X z!x5(dWfS_9!Hvkjfnz zI2Y2OwOLOd25|ZF-SFqR7F=yLr%SE~ZWhe*@+?|uwab@LLec0s;TFoDy`D`dY;KLI zzs}LED2gac2B|3XM;(Q7)*GB#ZyeXv-j=M{lo;VOoO8CVPRLyubB0eG;6`QS0S(4# zfnwff?7#WUT3wum6wrOUAfJ!|=Ri>L7?uHxYbOIqqyW84A7i{20u&SyDYKQIo;0ZJ zvP|XPN6CFNSyFkHyeI^hqiH^S81ZL!W}4*kJCWS@R!2#?7^Ne{EPX8KRk}+8WD`-8 z3yG3?Nipa?(QQ)n8Ap8>mIvVV$XxE?l3U&4u3I7jos_XpZa{F_!s4y#KG#>l3N z=Xl4A{N{S8)7`4BtNN?)w7Nc!si|VN_L0;*%WN0FQQ?Vz5AQfI;FUV53DL2aD2{Z+ zL$iCcTtkMMccx@bXmO!Kyod!aZZV&}ZYj;g1&t217sfXPJh->TkK8w5W4{4iZ)9C7kl~<$(NI3t$-A|h;2&AAO_448obndrrrzNs&X|T(`3q#E zx*FcS+;!a#t0QruHIuQg$@dWV< z?--5Y_Nx*a(k{piBqdEBi6n9^$(ApF46+Tq`Lh*=U;<#(l}YSJ|AnO5*b=)G=#@Ou zuvq`wOD>!;)8E0c{ug8IHllJd(k)*r=URIs8Z$Bqm2iWd6`qEVsUu`}<9XzUa7n+- z?X(n6Q=;ARBtTdgbcw2oZ|c`K^-ZmAWLC@?#--|F=GhiJl1=eTcl97x}Ka{=PQ zBi!poXDzZ@ZOT&=hM&eXeWZ2$|fheO{Xc}A^*B#n7Vwh{4 zR!$!y4RoG^8sj@rciLA0$M#VR72a)Spcohy{PN{MHQ5MZS=hA5F>0>@q5~>yy#hH~ zZMJN2z+#TP?2W1sTW0~^OXNYER5Vs9tKnu$-kUJeIX&*{269RggRlMW-q~Yqwn%Y# z?>cF3H+W!{U9ZAasM>Sb?j9BV*RI$xi>5MKv;g9T>T?T51{Gl|EZ%n;OjfRrWtu#6 z<*A99S|@b+ceY z3M+9gyx{CH0}tJr;K16lG-t{`vqC*_WSopb-4LvVvsKPegLwI7BzG>0?{>{vY+KLR zCnj^K-|81VfngkBs!v#~DDe8|eKId!jd9~-<|iHr%O7jwS!9dRMYRfh*jdiF{UGy; znVerCA8fxXid8p_ZI&Feu|_h={hnTo6m7N#UM+#&+wqJWMj5~`8hOmzVY|tiT7X>t z-qHm(wzi<4c=wrD1Q{X+7sP?bHD@|xDY7r~(kafC%G^rA{C-1bDcpiC)wpKc*|$yw z!_oU*e^4){#x@=ePatSk#_VHTfrIwZ5J!O4&wWE7V7HvZpnH6(YT-G(@^gj$Hd`qO z5Xk7!I~mp4N}jLhQ=HhjQ-*rzp{YkyA6JQ7LMe8FL8BY18XT(tN9fmxAWRPGMti8_ z{m{U9#3k#N<~=-Yzwfh%fi1&{2}FcVs@Ypx zC!@%2C#{%7iDSY&Th0---3E<0D$C_<@9(pki9DP_Rh6IBGN8pnjl5^}ZLP)#EtB%ZJ}tT077J-1o^alkr*8*a z@ittbsZGhm@@m*=Usw$aKWEVjVhA4e`&-#1C{zo#J8G#4CdNsXr0j;l)3cEwBI|lO zMoll`H-S=zXH*i0KEFxrS5O){)R1zNHKtwSq-*m6JK0SQb~Ux6Lwyi#+c4y$I33CG zwJ8d(78#asmYrF9Z+O8u@)we}LW+GM-BoKX+(xO6zT329$#S{G`^8c3psPEZxQ=Hs zTWx(lR!`71MUEOvn}Ow{VU)egp%gIH;z0(E9t)0SS!AD^-=GMHvz=ql#Ni`H9XnVq@6&>Riqm(|LS);oC<`Sy36Jga*%wFC^i*J_`42} zR^GvGmq07w%k;Kb%oe6XAfLr+)37B-xNNhl<#J`L8zF)_uYzAST@oi$aKG|ZQ8RUs zr%`Ehnh?G~7|3#{f-CN@SydkgRMj79sT9nZ$Tspk60`H`pxm+u zENoMs3N++mxXwNXnQyrTsF)zFr5GBbQiS7n0Ftf`+I>*-sHwj^b2T_yA zEL)xo|2A`l@nB@Od8#z0nd}r}MvNBfqaeOUGn0Wc;sN=)924DkB??txVz$MpU5df2 zocj8x0?8aE%fG7;;b^QNF6ojZL~-7!j=F8Fx`T z7GeDot;GkzvIhgIJe26DTwT6x&~8oYD~@DaiH?anKAKFEhS6LEi_Sy21rR3FRFoXa z2$5xX0gZ47jA%QP&2$?yVyhJ)@kOKGY`WCr`T)?CVAC;bR!mk>B6ghT_`wBJA0 zbx4s{ll_3r>}JV+@8CeUI>mLcg^_jX{wey}ZJ2lw6kFvrkc7HmRP1jDzIEKxiA1%XT8N+H9N2=`u&&3lURVN4v!1vl+PS=-*trU*TrWgsp8E1qqJ@8%Y-MS0=FJtzdtAeAhWP^6vVKiep zm2PG>wYYttj)kq#K1!w}>!-`3M~66aho?tw++X8mb(LXgDenQa4Dt$KRkHW7t6$>p;w z@Jx(FR+dd|LzO0jF+I;X`>MExpiv2mdNbo~dswOo=%n5(09Oi;j7BmH$l0xbDruq8 zMs>bU_TcWd?VfbneS!-t);^KB1LD}-!N@xISyLm!MUn^(9YcRNmQrGZDXeS3jR2fR zuftSI#D^jD5wbUHG8;Z2-c$fdd#`0oGi)c)DOcuZQCpkPO@3u?=!!k*AwgpV(*yUDQ#6*5T!$Gg&ndLQ9GI9 zwSG?bhTXvvyO*LxHcsc@ao!o50lm}Wu=n`z)|W@8Ps2DWKcKP8VN?LohPR#h+Q{8! zovsDRZ|z!P_#>hqM?NPEhxPVsRiA-{$nJ1&oRwyamv4_>uBot2H;d``3JGLeRUk&8 zM44xJJcski(@@RRya(ldiiR3xY}w_`+N$~@!Bs04mOZu_r}Pl&ROfG0#tyR_KhmpT zGkmp6A6`+Y9bdbnXHBv&4479wMK;W3tVgLl9t;Y!ii%+)E_AtO)-W$Em{l^YHHxJi zr58yms=n1&rEeW;qV5_cctW0ILC&G=`BfSwxXp*v=?H~c{Rq#Uu;;E}6U2O$IPkHw zW2473ytJY~Ajj@*oQXyxyc=D`Au-}j%sSfqs@Qx1G-N8#O0LD4LgcrggrNkJsf^}; z3HEX=>>`U>I#U5(1?@4m*Uio%^ji3&|C-IpF-6ks@b4rJ(*?oq*xf?>g1Nm}66C#| zmNj`(=h?ZOTW}TEFJxafRwn^Y^&~HF*&H{=fstbave+W7v4-&?P*t!(yO_TjqSqj- zP6&pnke2DkK_s=jlK3sH4YK+%BHG>|7&ZC8rX~sb9b{is5GEwq7{MK?zI#&Sm2Iw&aA(?bx=jm2*M^%SrcWV z-rYi7WO1-Ndn@Hlli}dB>+99@CV6MKD!z!;z;w2|bK9_LDr%0#C0sB#F__7p4Pm?}oa^p`LW3O_V++qg5vc^QK^D%9ER`GpLL! zYI7xWJ5`$JO}pC!XoV&lprzrW)W5xjl^Ktv;F}8`Ef3+#JIN`ztsumhf;PoP-HHn2 zne8mfnkN!sg8pZ$w9PJ$BQ&)`nqm!84U~qyh&YF>n?{S&RZVL(8YZL%E{}4of!#nF zqUj1Dw>$1|>T-{o`mw%E&}$K-#j2kQ$Y`hBq2m&dWaZwTZ$i-KM7{kUq?&?Ryge1z!%LHUv50Sb#RZS2x1V$ySg=m5({;geSQ7)g^ z7~%W~r^{}Gr=kEGLkRBNplbk|O)P52Mkfj9TF)qJZttly>l$ssqHNE%bi_T}b%$R< z=2sq7ry9OV648`g;G5fdH8bF}QVmGbyt9V4De2VKgfZ?}qqhKK<`dth8LNFog}o*x ztU_<0!#p+)VX7K^-KeTih$V-vDHonDQP#0RcBWS2H`-29-uDZ*nR?{>;lH*$zlSGe z^XQD*ntf~)QTiOtk9UmYV}EQdVC8?R&}JN$f;UB9Bg>WHEQJ0(_WOTYQ7c*&Uc9Ku zz_5PSgwZ+?@Yt4Z;mr#Q|L6oXAv?R1zzy3xtmD`{9!K}A2-qc%%$ZeG9sWBt^TnfO zG$m^uGp%ex($}8ll_7P}%9@qED$}?WoyIk-YmSEar7Ggby7j%IpCr!9_LWIdoWRSE zvWqTt%`vb|gTS7%Mwr)+;MQy5%H1VL(*+ z@`WWNXxI0-E+Pr?FB?&7DhZ~vzqw9RD92c_<7|i$eOi=c8|8pc<36y8JxuqmcYjX5 zML3v9a6aH@vzkrFrk@m`wdLWXT|iXkNfbg|C4DMAH{7moCR^;^%GgXb!^_S|<@11s zZbU#86qoa_Hq{O~Ew9sp<`zu_3dcJFjnjS-t*$jfzdCKdz46$k24}aE?abvB2hq() z5K4)(6CT{*LIS#)6Rgog zycwF)9>PhBK)&j$f3zFAX%1W7ccR8<;Y24s;6c@0A|6W8y= z>o7ZEop2#Y?zWa3qy4$Mz%~4VH!f2pgrMw$o$xzIEWD-As(nq|uj&uDdMC}kmf;Z~ z(kUSseC$|1*LigI?d%*~5YxNoz*W_aIbf0KVwQ3|fbFk7hDglIBrdqR5 zfZi;nD84u)yH*i%>Fzs>OM&&uw-GI}&hJ2O7?@#hmS7&-04}M=_l590Gmzpk+@}Py z1(Jw-NNE=x)x98j65G=bh6a;*Q<-rho2r~*GNrnTU^HnXF#mK$sR8Xl83H&~Xs3^( z4G-Oxc#UVMZV|)PFH3^Rl|YdG0XNJu6!2%Zn4kIV(iB9lAmUc7YR+xt(~_!Wp_THs zG@7^9*tim*;Q)O?@AzZmkQ|T_0l7g_PA>s!1`yjOepH+W$B7)ww+#mW4l`FqMe3%) zvE@{7LunNp2pv7m1Y0J$yjc*rt6hysu@vmCw7@}VHw1)RjnT@?X4SM^G?T1B0KYb5 zail2jOsbcYzIF3wwc}Y8CjvOzFmH|rxy-oAL8rdaYxC{pbrd8!+g@;&crt7-@np!R zb=)x>bTb+dCcQF z@sq`)5>w@H*8}r4Wop-jE8MD7o50JEja3Vf*iwG9{@a9T7beVQNkCOJA1YL~P85t5 z#n{nl)l&=XEB#n{Bo$cFU=?i*gM_(AmYcfKq#EOCp^ZZGSC%K4qxlZC3~8D=4h|td zQOA~*q(r5`>|&&PCKmc3bIS9k?&yw?yLFdB@1Zw8y0&?Pk9yrz&o+iVMW=@pEPqYu zGS%wfT8b@IS3Hj@9!D(}`G;UkuBr7RNYAgVSLR@Oe>P5+v=NzXG|#0>t%fsjB1H*gHEiFpYrdl7RU6>g18a6LtE1KttviW*c;n- zA@4Ai?0~Lre3$&mUW=0(yH|Wr>Yh1Ly}qS-Kqg(#2i9VGJlLj2y@nF zR#Vgp1QKl|LD0a>x{7W6$TIauDPDEW{xqkeP;INZi*bXVI4d=3truun_nzgQL1{}m zbExe&FC~+#am4Umd!IVtN|RTDvd-Qr?BZ?wGyB^vlvBp5@6uG>2npefi|}9FQpTTl zzoj42^&Snj>}6W$aw(bP#n?xL=n z(daAZ}WO9JbHY zWr>V@4bxWv+dgiXi_xE)1r-bp7zt_HPF;u^ol@X@vx+`*_71X&yX|;fAl@pWRfjHz ze80t!kqVRPg#Y`!BWfEC2B(8o5Qt9MR0#^?&n*yXEP+iZuC0FoHUZ&FIgERHo5I zOTD;24WHY~)F{H$Lo8U^jpq=nfUAwh@9pdf*}L{OFk;?Sn%aIU)k#o3xLY=ursx$U zyeuqJr5`y8R_B1|q#b11#75zleVcmkq}E2u^^OT$sDkA!J%$&O(K@Y-0bq+_sW9LN z{fY&irtDlxdEg1v(Fi2SbglwZPF3}Rs_z1z;J{HojY*iXtV~>2fsn?e>Xv|HsZ_iJ z38uPnTH;hB8M1HA?+#+rIeHyjF&(L5onb{GNlJD(xd{}%xj4RUov1?on=pw3ugYu_ zga+o~OYQP})?rl%jhaZ8j2ZtdIP=Vjg76}6Ba(|E!R1p|WvP)QeEAZ#e}QF^-p+kb zBK?;2285HQyVDR9tzz6Xs!hifVAdIuBlV?=Sp7R| zrB2j;-=^WdK3am#WM&%}sDwlFk-{v?4mkr!DW!7F9U$#pSP`qnn^brJ4op>B z!r+bpkp&`0jAorxh{T&{zA8B>YRpFPmuUq1x#Me(mggV3_K8cFzwzm)!d}AXN!u}K zTp@I35C~5ZMeO!r#ih@VhZGg-KcUPXNf{P;%)W#9%a+4bawun`8evOZ)O$(z69;9z zhx(S)(vg8XohY-$=D=CcbT_^RUj655{+~w~l)dA840oPp*DFeP+Exao6uIXsZ{n_D zg$Fp4P9YLJBe`!0RlR*m^z~HSyre6iTZ1tDaS$=@G(QM$C`DZFD!h4k>zl9TZ=4RC zITM`i_q~u&AYYTm6GNFUFg9 z=70w7H>!TO1n{6e9DOE*?hcsKFFx9TZH>Lzgov1YPYKhvysmV78NDp+cR=_}h;qP&48%hjP&3#8OXpMwx6>YWvh zZGvgF@IaZ@&#p{Nqw%H&r7&eRsvF)B4OZ@Y`;^j1t>GEx zu=iBrY}h|Np=@Ak9wR- zbkOM*XD6x}Vby+L3$U(e9EYzrwX0?}1D(bv|3{_kZ`&w7ZV%(2jmtX|=R7IjbXFur?_E*cdA-u0}g_lo(H{oTxiZq~- z;%pu^UOdy0`rp1bU@EB6)$Z-VD1e?LF(S%}Yxv9{+5rVsQioQ~B^Gmu-?E%4NEdoc zZR3K1#3#C9BUaW@bpvlCmPpNwf|f`f$GxgvnB7GQg0hk8UnPm|T>8pHH4Rx8vN^b- z&?gjOZW2bV0h1bT*@F$3M^cth7#2iA<)biJX2Xs!1@0(pkRS{gS7r6J9pe*)rFn-h z!{NxyiU2^E9Uy2+yw^VJ{aVH-LX_j7q=T+#IgxQ?lA1()FcEgg&vH9&cI*xs)+73Q zUf9l8Kvf)lQAlhX%)ZSQSlJ^amNR+Z?=;LI@Omc!y;@dy2!VhnD^_l+Kv3D8xLx*d zf;epXy$`8KJ&+iUG4zoYo1`B$NUTR^$Bap51lQA=TWnaL_6+n3cn-y)1hr6W;@NwNcOOz2_x1Y@l$kDhuLung(N(HPQV!%bx$Gg&?74NSd0T;4 z`z6FAI8*&tc-(d&a_YB>G+j=mL3^H((5>jB^wu6jn+X`nf??2?Y0!XG&(0+6OreH+ z+(1K3p>FdRDMsBEsV;1{mehaSm}Ce!7+U5i5g_8g2c=YYnP3i!RywG?v}{iFGAGMb zuG(tD$0h+6X1isFy%T5yVG$dvU*B8G|c9+ z1S;a%;0s5bHn>AHZIjS`cpTA$q?`J6`nVM)MPk-td||h6_2LaU>Y~Hd4!Oee2T@_EKkX;@P8~}gS)Y!h`qq{k_1FCF z9DR_GSr}EI+=ms0a+evnR_l8V35x$+JDNO}U&G;dp zB0wA#Ml-8~00UzD7BV1WlZVjvVr;Y@!rux+zcfq*TG=IN!ve}uE?1#zQN>6Updb<( zdtwTi3Y?(4_rpzi_Dt&+mnNb!M@c}7{S%S7#6vHtxI_+uKiu&X#>*F?#1WK~1D_F%`Q1h) zB{cI5?b|OgiY;j*gWmYD)v?P}q5!HQfxvlk8 zRgX@xY~Oe#eq-ch#A;eP(h>I~SqsgH-os4o(F?RHcW;JiREN$wlJ%EejTLI_tmUESkZ} z`P+$3!dqs~l$}=Qe@$pPVNhI}P~(n6c_CMTM8TEzAR5FP$%)RsQ$j4jNFOG~u%7|f z19x8{^_C88NqE9l^bPD>!)zKB+Vq{UtLf58eY%C5ZY}byLo6ByXM3d#WQB^#37(yl zMA99vJmFKwa~Y;Bnz-4fL3SA8EaMZz#&R8iQnMgVqOoV-0o#QP+8`3wubH~7yBhU>?qod0^jCeGOP*W_zoL9P9;!HHQcAE1P-%yUZ*%Lz9t<8 zFQ*%(2eqqJTD|Z|Qde;ua`Im$io?@ThS6 zN;%!@C4k$nbSI0x@Xo^pmP#byGNi>awAAl4+^SJnHTyb&Tz>5@GAL6Ui^p)Cf_<50 z6)q7WCCFc73s80%FGniB^2Vm6K*6K|kPpUzn?Z zKuk!a7)@p<`$ze7S;G*6&YnoV zE?;p!gBoVN8|KRn)r_Jxu{+tW<;$R*&CkJPBP9G;mOTG{F=Oe=2MR8?F13Y=2}@W) zC5Bq0&-Fx!I&@Cvb$HuS`rd%$Am2_+Mx;V+R6IvN4mj6yr9aMA2t~hLPzT`jsKYLf zPNh!g&rue7QglY#4o3jsvym*I0W^x_hJB|k#i)t(B17JgC90=>OBKnZnSACkcZfV3 zpR0rgaaQ|1o>Ec)+YNZ^$;Ym(c_*ZMW~W+SzmR;>Ur0}@9}-Oe?1`;=_|jT`mW7~w zWrLpI<)~>I8aT}Jk_a41@+wVYqbhVQuFhOr{)o=8+v#%Tm+b=jb$h8Kl1ny!!yHZi z#Ait+sq{-F3LPaOw^|3;82i@E1MHV@_$l^6LcDoZu?Q1dR@ruj5>okbqBq=EKooJS z-gM8IumVyL~5%L2{&|u z9gUO^C}sVEU0@&mKkU5$h*ejz_j``hy5& zJWc5H^jJE#{!BWCp4~Y$vt{*p=#LZdL(08q}jJBvvtX`!m`&^t)AF2X^Db&nLYYZ z`9r)RWw?X$zHOa+;!4g{x4zM?eudLs=PS#6HhzlcUK^f2sd>(GbDx;4^eWQJvvE@u%i@no>exNnu5ieoA3)N{1jOrTE4a1 zDL?6BX#VYw{rk*kXC!S*&|c|G{|gZ301uDV1<4IO$jTP}Zz2;XRJzGNTZqiI&gE5o zyC`QUU(#8^KZBiL;5=eJ*XxbpA2Hh9tbTUs%_SYLb=y1R_O^hZS|SI;8+tNm+byh3 z7R1Tt1c`9%GaMw7i3t8h@T$}GJcAiJM`dJg}W=DGR&FPFKd!Xucbe7%*k z)I=|QiRs_J$%3RezBZoy?>A*?^!|u-}nDfX^k_#+3PS(=CpE`W~}CN7T@0^32=@knMk3Y&dG-w zac-@r{{=a^J>-#Y*E{?>SPk7qn!NIA@e>B4@V;*%vkb?pd6H)RnM^Js?O$lIkjiZ? zix4eS-BRgiib9{h_1iIt?O955W63AU#LfDzi#G1(UU=4Co~sm0S5r3G(TY$Yky&(S zS~fR%iwERZ%#gx}BQ)zS{tzn+lug6l=QfpDl-sI_{GT3SZG5?gU+(QFVy; z@T0)uPJZqm{Hm?}UWB46`JuF2A`WBZ5PaYNTA1cV-G!CMiPp{={GzCA=<+X| z(xJP^r!D?iOg*{#g^^5|uMWQMUGCB(sSvuHjrmX{-A7$ou@f|Sk*yi;G(64~GaN1a zNFNd6|G60gEV;pr&G+YrdM7WEB|TVG=M@rulKa$E_ZxQRakhnWu#m!t;YZx`^~{R+ zvmE&{PaODB9e>L$e5z^R+2^+`Y%3Hk{8!U7H}YP_a+9!`2+KgZ*nYf$tuOg}G|}|3 zeMHaK?>am60~Nfq!w)_3xkPwuqCQ@$5K_ivdihk6=bH8%jxt-kW9ut5mAObdW%gcL z@x$&~%m6*M=77w`rfQ@p8h02->N0acZZQ0u3I7MpRA>OyYw4k&5VVBRtEciV zUwa8X7~>z53V&_&a&8ua-|y4h5`%s0nYF&pIQYs4!<1jkb?CB3~cngHtDZl{@hQs~XWY6M4Az8popY=87^FLA)T-?#hBOtZIAamW!qP3CIiv zzgqX=_v5SIXeH&kvPJs6fsxz|Mi@{#LjC16%o+{a1?OlY)%2! zjlL3AHutOyzDCZE_36hmvM?!c77lwxw$Z06up%PNDcm&jNhjwMeFxtvS|T3y37Ib+ zCMUDU`H7$<{6f-_r=~xpKGIpW`=c<2h1Mq;f8qbjTtCyJUwe9r|Iz7RPJKGb0%=k- zJ8V6?X+Nn^P=C5JYh5y97GFH#{bY-Gjw9*+OSCrOv^f8%CYiH@Lxp^%fPbY&zxvDn z`VKkTJli9y^tp9`pHkIsr`F+njGm{J-tmL3G6MM+g<*|u)t+~;B7WtBwl{meZ`!R%VKKtk0tQpeJ?{yY}*P^v^!E;IY&V6Cd9DX$=%)MhFvP-i{){4D+}?K4Ye>1JJzqvT)4vzqUffo7ALoLsX^W1|jf&VJsIr+s`LfyLUG zc~^lqUc2pHjK?A#ni@?MRr8-}UNW(%<-T!{Eka)H@s|kmYmI3w=zqfUz-A`zkv%_) zHz;3Py^@=J?%MR)wC7YEiTVH6dIG1%PWVwLo0q!yc)R5CL5C+id!;eNPZ}xqSTpCEupj5Ahg6uXy5;tR4|>cJf>ze$G$@gTQ<%nX!R}cx zx32k-6Fq>r()K@a^!|1T)-|;N-R?`!cvK(k>C|Q@!&wILT zJIR(r$Z^q7?&nwH&%U_H;{{7YS+%fS*0L|^R~qf`V}l9$Wa9nPC13uT^IXN6)^ZM; ziao6Nxz+h!KXbz*^w@7wq%MAoA8X1xSLY5(dQ1j+F6a34%%T|!6PvYV1I#uqr9w*t zzEda*B)h>|9763yl?v-EBU!N7)I2wLfi?!)BvL1Yb#9@a?7~Z;e4jH|u^zTc+q*dw zN0Y8x#ICG}QHHO~nmSI{Yy_8DekYc~vdtyJC!hLFmXz)@Z6QI}wE1@uUR#siK4m#K zcO=81d@0|LiBcJl_kL+C^r2?yPHG#T($bQJ6MgsdN>f~U{C?V^T&71M&(3@?v||5Y zk`zenfOg+fc27{Y0`9Y{qgk*`FE?xU$Spac#6jTyOZ`6Sm!oav?2!R8gRK|ezB*pc zEfJ|pVl&JrzrkJLf1@xoPa7UJsrPk)Ds=PmgT;P&Mu{d-YbZOjh2`gmxr1>{CNF@DN%}W*oY`9s&D0zhAHW3o}R?(ohv*YFNH>hFfjQwff z%i%Yi3eP|L3?IbkKvr&*9l*osG&wd@Za041=O}FHsq-C-2(8@EK z-O@+4@Lvs{;zw{WLWu)Q~# zYZgq7?j7?(N?y<54wBn8z6PtuOWaN?B*MQt`3-juFYzOC$!CRr55w1j3;c2p&p+fV z@pZ%VatANvga?>ix+~3bl6598TL%l4HhYU8Lm#G{H<-KPJ`LA@&Pmn1!V6)Ey0r7| zuC#Oe1ljuNdhPXrI65`4yMM#3nsj}Y{`nZI(w|cw^mx;t}_{K zVzL?hChnTJBp6~ci5C*%WN<>WV|nJ9M3Xgd2NMW=_v3Kk35uYP|+bEX&{UFy<=bG!E0o9%}DM}FpUhp@sRADNsCCWz35^q zi+22H6{M(sDtN~JnQzyY5aRej*^klo{BXouW~Gj7-aZvW}~ol#UCfebnQ0K-{SYX z%$B7qR!#gt@5o^gi|MsLl4GN868p0V^9OKx`f0}}H_+b9d5xckEWZQb*x0$uz9z%C zB7yXY9p}715(a_kFSXm_J!@=w`H|w)Z!!7`-5P87Z#i? zj|KG62SLNvxL)GXy|sLMIUBgYD_LQUJwM65)2wmnX3S#LcS$=|L#hz9KrpJiGr89c z5C3DM>{W1k2C7G!_8)u8o#r}H5Bujhk#_sc!RpNU($%kJ?k)VKriYaIi$CSKPYr%*P6$PUNev>+%2u$Rh4D-6_DI0h+SxmEox3Vp*Y+iTD-0f zsfRxf{zw|8mEm+X}l=S-i&y~FcCVWH#A?(R2NNG3GGsf@4tHJ(=UgGu~~HbaEV zC&MckKYDm4+O_cCDqJrg6t7ri{qlbk`EEMj|Bz|G3Kn7*ev*~#{g>2@=0O@RktDE>hO&{7z* zuBs5Oz#da5wnd~C$WvTm3g}cMhN%ROfY+8a-Bc;PrBM7mt+$v&abcOjtU_@SoLOp7 zC@wDJ&M6dMgfquwe^W6kBJNU1sCzLY9f5Sz2XYkjn1-&hR2)?YJ~(SS zst#JcH62wCIu`awm4L*eF{zvN$C~ON<2;0mvFdI}J+8V3^hDmZKNh>>s!PT$E{NawR@rMv!=ECO2r48^Hv!9uvt-i*x2z9jC;tes6FJ|XeHDhf%HJ3 z_&XKA2vhSQQ%Nty$lM39?ZIKF$;^7N8B&Xx^rv{FAvruKnYGMJCIgztL@DFJMYQP5E$j!^OQ1hj+;DuFKp{Y!9k7+pGsJ3e~2tnfC$8rmcmGV1f1kJY=*4e)EY-?*j+ zzd=*M^3`ZMPdjk8ZB|FWZtPqa?E`W<;jVPmD?v+Ts>LQsVv|KuGK}miLE7mC>;m1D z7uXAFZ=SRd(uaA{0Z1R`NrxeQ>b89fdZElVu}>mFaavF*42iHc?uER?7a(7D*(;#e z^Rl-fedQg0RVx0ZhmNCFG+ONMT=+X<7o(;86N2q0ED|>FpR5IXC9JYkteXYikonD; zZZ}0g*>3FOZ!5WsAmPp{;~uqL`6owdanI7|Pwt^+h*9f?xW*`zC;hQkOXE*=7mD*$ z0Q+qR|H*!riS`|n*=#G~C!39%TLnKkf-rrPM(V0uILcOavmnhjU)0S8Eel*@FR<~~ zkx1$~qFE^TH3(s_L4daZbT$14>=JzetGw$~plgt>RtancuTcpc5WNsC>Jnr22&y_} z4|Y7a#_hA9s_S!Zl=bQe;ku8!%a1^h#|Eo4a4;I8ngAzU;soePBu1(P$a(APR03at zH>d=@1|P2yxDDQ@640L5tg=*mXb^adN}vI}t`IKx>hg*Y@QShHm^1EWAK+!@MzLVr zOCDX9oEt@#alf!Qs{6vZ(Xx1`3eqs^_o3mSH91E-#ONLxZ;p6~!9BDTqoY|d_GA~H zZ0vYzO}H$ShXOZ>!H1SYUgoNofo?!`8b;K`UgfI0Kzs6biQAn^9S?1Qw9)l#1ZB_C z3H2cs$3t7d2de~jXb36+9l_&1H$c<6&!)w+LW;6#LW(wmgcKc^jkJ~Z8R^=Idg726 ze(0dU(T_n7Ir<6cC;9%5Ksx55ItKb#7|Cbgm%~UD5ZZl*sRR^#H7ZNRF*<0(6DD<^ zduN{;JKk|05|^;ogq;9xS;H~oXh;miUQxr77H|)-CLX$JGS+ZP-dAdP-eT{e^Po3O zCTSRZPz_I8I(z6e=v8iJQ~=jaJdufRaUS{x!|L3|F`)I1jsENfpM`qJyP3O6y4~-qWV9Y8=8w-Qh^r>{|ZGDmSDQFCc?Pd%E8gmBaRVo3c zioq&@?}7o}m5M(d?DU_)`>Ae1s#OAG0-Ztrv?m5A^lm{ej*OzAMmofm=RS2`KQ?FM;>dTcQ1}Qn6l3IJyxWbBggX zkx}3n>3S|i5>gZl^&?O=+B{$10y;UTBCKimuZLr1aa;fs!51HDnH za<(m%hnc2_d+lgo;=7!RqaP+_xbJ#cn!a%A7ocB5je4I63GoFKI{;*aUInf>dL0y* z=$7x{S&)$7MDXxV02!g7VU(C3CM+Mm?IXVpstv4OWvMt;vpqhuW9(39bDtv9k~ z6tsl}-3W~p95rW*J!&oEt!XUbIu`%1I>$2HhGC2$3JtOUSB=f%{~8bafun~&v8j#X z3*cKv@0olY<)-~kF3KB*(Q3GL*f1Qlh7PM#0y@S<%cgzpqt8sS?G^!arPEa9Vv1BBU^#P;Dp#Chk+CL;1UjbM9;?jh;)B!hK(bF$JOTz6ZfEbdfp8> z4|>t5IQ`MFmKh!$>tPR^LbgB55oh(cy6WfZvDoN3ycl>6gPx!#knUZ)yA0uiWtF^8ls|A&n zth&cW12e$Io&mIi*Qo?niJtXoDyG`BJ%*zmTV&pOY!PUiQ<*P>;zeaLOe%5o7?b+g zIJ57uaiCM2I>lw8IeKgrq;5C08#LU1KDMS*oFGTXCaLLO@BA|8m7J4IQ6JqzW01gR zOM8#uFZ9K+V*(rPF#Fg>8h%7?Oxt500f%e_KSnQRM50n`>0Iw@W>q?)(M%vjC$MJN z0459phN81dC7|Pu*i6U-3l)_>Q=k+36ZA|{?I#1X0(};^PJvNMp3o0%yLYo4^vZqM zJ9FMK2}r4T!jPh{?krPs1;tmrkE^BP&z9bYeIwV$&z90`xk>zNIjD?|_EBSZR!R^< zsa28!d}u#oXg}MV@7CBm@=7GJE3afPqqKIA;^>^?CN@H9%9Cb5 znq|FCBzPwtqt_@7CW<}ZdY!lsl!#%B6FY&uj_wCNT&WTn($B>Cz_HwCYl%jl*CpI& zO-^L)CSG*S7eTMFdm^&uEiMc~K zPB2X?A+5}fqiGc+0zOLaO@}zD^-Fea)NIiMddPtk|q#clU+F+V?f|f0wCb4%% z5@DQm5lK>jFPLE?YlNuoraH$cY$1=N`Xw?+8qDr(ix7hSI zw}5INN+&b0ry&74&De2FoA8uqiD$hg!O@Jqbd3adwOb%^bF@Y(g=I{-tpzsop+OD@ zmRAZhr^*0Botr*bp{i?yr=Ag@$Ubkh>{ipU z?zf&84@@uzKQRIH0LIiCFJsR%2R|{>*l}Vt;pyh!C#E|$4H~LaJ==~SPt101^Z{hT z<@k|sqYoexZfnL({R>H&rxphFX#nJVtj-)9*wbKFflqVx{Af%EARY7}A1oCoDW>Ym z*q{55KR0$9Q%^|vP~L?io%C^@bb<2T;A)(K8+#$hYMg-^k5k;Eg+cFXoJWBx_9*a) zE1*~HZt97<-eDSEa3sX(@m-Dn7;xR59XxRz^gFlXI~PjlDhz&5witTuvls|>Ee3^q zPvv4@sU(>NZaRpd8m<k$&0%A}Ua5=j9wEw(1j1T8yi7<)lp$t;@9&nsz%)Zt1xKzqw95qni$ z$x=uw^GbRl^|_Kh&|PIp#NLuuQi8NOuVfdb-L7Oes2)D1vqN2M)?PY0RQCWM=9L_V z^rst~CI+Jj$b#4|jkl-!O2;8wTtc?f@Ob9iU^y;{YRWAFyM%19S{G?N}28 z-1PanSt|Z~PTX-|e}k(*zcF^4WKH-su7-QtxoO8i_FK!hlfHFs+A;H@E6N4`Wh4Ii z9Bi3uBmVhZ&@1^78+(zB_~(m^9go*;;)RI8?m?q2y^^%0tDeKxPmMZAWsni;-({36_{@wx6B8Sg%uoeJ>VU*B+frEdcEsFwY{-P((-2`c~tKJN{1=aN`OU21G;Nw*S zdY0a-5|}1>a7Tf*Qt^>@@R70OBc^dbw2}SdL+7T)mLU7F&DJkIc5Za^GFiABy%KJ8 z^fK-qJ4O9skIO~}P~(1381&X)gg-F$pmh(FS-lT_HT->nuiFT_f@K`t-Wmpe)YYef zq$*(bdZyLHG(WIN6O-2vU=(L*|r#n9Kx< z8@bK6ECGUivfw!3q5?Q;4w?J~C^AueCNenFWZ=f*>4Quh$f&I@8|AOb_aJ@eqy4T_ z{ADYnA}W5_3h31iM*hnVpd@-UTEu=?ZKM4qZiby3qPT-?h`(f##Es1TWeL&->++Wy zKy`A7V&2%;+Xf5o!H!k`@-U<$E_|d^oKlN$v=)th(uGeNyF&PL?8*i*rIuEsP2ZH! zpv&{)H1=52H)X7`V|~UQlh?PLR-LY|6I3Uv^bS%AfNs~<4Z79lWr{{}F88d}8m@{| z2a~H%4XTsg{kG3)RKrq_4X$sFwanHnRb84L$I`!%Y9-Iq>d+uk&G^#i(SaN5(_nxL z?u84b;;*#*q)$Tv`>K24s_y*x(ls8TGD>v~g=f(q&X1Fpj zaN_}p%bbuFe#M+jRXX?=l>o0mY zH$x`&v9B+)g(fF~(|Hn+KlQvTXP21D;7z#({~dUZ%2M&y!$ePp1WjUha+-cUjAk{a z>DNg8dOQ*&t6z@?7J^#|F7u;($i&82g#3DpvE%I};SwPUH=2)Mm5S2}rg|DPIBg}W8Q`>)0Btf5 zD|%2wI}>}r`kD3s?ALQia@t-<`(5e&Qt`=guJp-q;L}~{lheW5@=8sN0BA#+0C;k2 zPU(}7pJbi0|3Aq(fAVXDqn*##%S`ymWw5s*OmV?l#`(e;c0_4bEr2_&`cA3%REuoP z25anZT{Te+J6_zz{mvHmlSGiX(E^>mt5lqRz-*aLd`~}YYNj9dhS7#Uy&W!QajKZU z1;Box{oXK22-6w78uGH>^v&K-=yq=yt*7Y^KyG(69iUqr-3r0P7`ouor`c4=-r%&ADIejx4Xf@vS z%@_|l0eyp20*cFYN2IQ%O{RNBldgv|rSg=yd*&(7 zo3=`3-lF+>L!UWXD$eRLbk||_XAdoY~Gfy+nYmBdm<9LQmASn9 z>={Vs>>E|jo&&w@{V_9`Q;b%~>~WYtPTAJ05}0J}n?1=5kKem}_8^K*+ZvgD9X5tX zYvkEoa6j^Hj)R^wR1Ig}1qoI(iB8s-xFH zZ#sGl^tPjSK)-eLUa2^T;i7C#6)?n60%Oi_M{7VwIa&)^3+iU4e*uD;n{fN_+93mX6lj_*8^Z}cw98hHwa6FL#PcO|m zmEpkgytmYZFp%Z110_eLsK0U$sFCGCO?s$+qzkT=K;Xs`rctw!v>i7CuVZ2buhBc%##f7GXS`tk4mE9o_FKv&OL2G*v z_NW;s*8Up|)Sx04b>kLAb$ktTw`eFN@cA(d9IiYRxbZ})VYNF;o<=r3Vu{6tZ0szN zB3u6Zy)kcKZ_FFe8*s~mKJo_Ka$o(kdqeY~*wFGh0j|UoUs2vTQ8{+FiW4n(xaDJy z78Ts`I0?xj?(Cl`PIOm0z^XY^=?&&OSv7FWy%EI;+;VRq`%k@U`Umz#|A5|rJAgOf z{^Q;VFR0zPyPehBrnQ%{4Qb*ePobm~pBuEN{FpX3kOwt)7@ zRd!(5!^rH6aL0zKiAhIXadzmli8DS2w(>cQlFa{^Fx>sW+l19(vkrV~l3-s$rH6{G zFx_Bmq+%;0PiTBa z323)Fb2scgo@(}(9XS_EHk$yf%+0bUpx&mO#obZJ#c^E1guYdu^!P4RLq$h zsOXWW#piY^%4{|P*j>1k$bhF;6rY#!ma7T3m2%G*px#m45bkhPI`rMF9|pALJ65Z( zJq2#L(KQ|tH7;8|ameb-6=Y+xbPC3strYPUSsHI0+N$j){XC7eRohHoprSQoGkulH zEh;wCx2Sxb$b3yj3(90}Q@NAK+#!$$1sRY+aRL?F>+yI|5oMhsl3rP;z^|CXT91TJ zXnxJnuTaFG2q2UfijxKk6=^I#EoDI=ZtUN&bb>l&fV>J#Flgl23eJ7r*fb@9Y0(a&Xr_>*SP@ATBYzN|?3^)>F~8Z7Zjr$}uXo za*i<;op=Wd{K5G^L_B%C)eE}aLmWlPc~=dRi+D~>wq!I#yOQZHr+ViDtpU1@6Qeek zW)IY6&`u1unATaM$Jc<4E4>MQ9~F;r3Loeet(oLn4$|xTFbhZIR=B!Y{vR%jT3YG! zBxB5rGG;9m^ZZ&W`>2@bWsY*z0M3SA;g9H9BF1WOlA@0WN-a_|pGNV;R46$Q2jG^w z^>rV+n^@rnxXML=D>S}Hc*%zjd@?rBJ^r*xv!eY5Zux#w?U7PVcW}$IW!P`N$Cmg> zOwWLKwF;j5xJ#~Vp#rJ#dw4kgVFQTdFDt(VWJ==XE1*>x6ZbJ7e( zdS&i{pW8CkBrKjyp!E#oQ%{<8_Y0!1 z=44y>n%m@Yt1T770xSunJqW1=szy_3k7^phX=3-3szv{ydnQd2KcQR1WPGBeb zPX%zmsRuw$L|IW)fQ%|jPL_&u>rj~{rNI8ug}ed_HnDN8bR6tS*413xF!yz*zHUMlUBTt0lDUNG+%=AtyrFVZ zaE&RS!o~q7aJ91}+$oSzBW_TWazmpk#sjKla}c|gpyP`eSLlk&$hGSzgl0Q+Ht4~~ z>r^#sEuQ&WKxg>+p8<-D@}Xo_Idv6ik5l_W(G=$j^|R7rGH}!IWHdW~T|O1NO2y~K z$EFANes}JEsz=bH0=VGR3nr9BJeLev4u8gFW?~PPcemQBu-Z ze-wCH{d)L$N&Jn#p}d7_4tx-1Xk0wXG0H@rVQ=s}~vSBKLufbUz&wUNt1+P(A zD$ZMGV;2IP5hLk_2GU2OYg1wDEEEFwnyrB6t~ocI4yxV20h{1?A2~M)lzF?2JE*sp z(%Ily&-2beKW8JE$5j7z0fwcM3F{JY*@9x847=^y%N=UU<>V+sz%}vy2hBh<7WsTY_063dl`hFdJO=zJ2xQ-ZVd? z$;P)kus%>UX$d6P2#}F}DxCsKmpTrY02-E`j3duz-crZOk-+EfZ!-RTWv-NsGF_2$ zW6V}_;I>PX51!Y0PNh``#u)o~;_Uf(G23;2ukwGGtrJ<=caX03Y1Y|wxTD69DZm1^ zYys$Dgrg`lb~_TV+Kru?MJWmUg6|{6Hq)E^8JzF!1UgRUNf#k;_Tp&v{Fgw^@6^S< z<_25`y_pkUP$(4_Fe`Dd8YAmZBt>-yaI=WUQ-GPKZow?jd66vDR-nVVOF=vH+-^vH z&Mkp%%yYLu+L0&ifwVtQItb|#*Krv1c%FL-(rNR>g43W^;+a$(xa#byptoYS4KNp? z_Y1N{@2`p0(;U^#B8LR|qJnhm2+ z;r~KD{9m{O>8|&D7xW&&bt+56g_Aj9ZTgWAU=fvFsw@K96HYr7J<2~I&U!!}x^MbX z@Ie8>NPwwiViq0%KFXQCkZ4`#(YlaeaR8&u7z+q4(oF-N3>IXLdOxcNQ9M?J>m{BNlW7;|w*Z`WaRRuP= zk()quXp@nf0R>OAG_2`PH*%-3Getom9@0@{5TMOoMhdhGq=}rmu3}B=oiyB|X%#ncDuPth!Ha~_i=%AJFOCAO^$uRF z1#ioDU`-pWgBQoap6*tgGPMR4yQ0OQ?LkpH_zCdn)M-sST~R0OUf5XrVlTiEN?*Wv z@l!xzv8g!v#eIch`V5CE%N`MhqDcr%B^+Vsng+RE&spSpCC^phx`B(Y;VwNK+Nvlp zsLlfxde807O^u+c#5!AcTdDWn&Bi&_GWW%y7f)d5Nq5po&{J5!a(MAnsklhq9*>A! z(A4w`AKDk7*DPvZyasyRsnJSrQ#p- zI?%;r+%z{c+%3Py2fr^B^pxZGC17ts?)d#)lZtP=5*cR9WY*X$|9%bC{RPeA@Atb* zl)Mrd=20@(QB>601!;!J1!V!_4lNWH&?q!akL{u1QUVxssjG>8jwGlVq~EkldWoVX zWmjeF^rRnjuk;F%Q3Q$FDui7#+3s$WqqVoM5qTtfBt_fBb){!f)Ix9w$>l688jL-a()|BQxm3OaqS`yY}4G}QkQ@mUFN zUlkNiZ3@ECh6b(iGW^3(Q)H9x{bcuSQVX0Y=s@*{6Tp}B!esp6OW+DP%is@Jfa~Bj zDghmK<%L_N;$kJ(T9v>Y@Mx|6;WTZ|nOTdOkHteA#hk^ppxIFVa1zqUToRHjCtZzh zaizdw!ea5loQ}n6xyA(;<>H<^7YCM;N{}|Yz!uP5jxza+m7ORK0H5X6oPl)Fxj1O? zw>j>Ts#0;u;DTJagz+wE&AY?c^(MTe-q>-*HtzU>R{D}gU=nENp(U-5+FUiJE!m6e z^h7~j>}9TcnXz-K_d?q5!uw0b_Q7SsVjpth!=T3!zz*;z{H>`^O8auyYbzBIuQ;=P zg9*pZG})yE?a=K@jhjnz?K`0Daw~R$DsyR^yGzBFmX=werXJAkAA){t`%3%Apy%A* z=Rj{e^)~WVMtzAvy)?(DFU(sf{L2ho){}MsZI9|epmqs}{26U{W6F{dsDouHRz=7gPdY`cz#5z2)dF(A(tNUX>_NmZ9}aZcF5s5UGRk3#bm^nw^>?fJ0g5 z)6hb7vZK>LF;KHS!yub*s&xP(5m$FC)4sRiDCa6NrKUBP&t6)J#mj8QURnma7R#zs z0$ai5x~+f~b`{cgQI}X3U8(@K6qFTnTu6~WU)oEnecsPL(EaGES6M1{;FERDk+hnA z?z));*x9^>R#omw8Ptw&dh(;L8~8~+#2LoUj*wIvfvN7PY0iz-PzSTuG01G}7zA2{ z>Kc_m?u@QFaLsJ&xDNWQqxV4Xxq7sx*ElEXMBV79W_gOEvT~NAIwUP{RA#k1x*W9A zQLyx?aZ(+GhKO4#zFZ9qvthhE40JfdU>aW@4k*1TTI^CCSm;g38ZT> z(L5&NOt{1`DLy48T>O)8qj@xLo8JN3AZX4=5L>qkI8Cp?C!1Wtfs>gy+fFTh8t1TKQtsswI=*Qo?_KCf2^=x4VY zRF;Zw)Ptuvoceg6(Yk!25wr<5<9P$?-&h1rmv1ZrbQ3~1Z>%g8JN4YACJR(k(Q1ME zMk`Io&pexW<6GdKQ}3Bj9H?(}!`*{c z- z{F|0E-oVw2L;2&4J0>NxbD>#Yj8aKwFQh*6d1oJ}9(6?iH1-zrT;~>J$GJA)vcwZ^ zl*2l=LhiTt>ckJI&f+T=O{8kW)5oIq94?cg1X8tgwX@ecnl#X@Mv&D3wdWR(ARxhR)Ma` z&yZX(%(vd*p#8aBxbqkje%!l-jo9?H@`&i!@J(!<4S(f4*zM-gmF=LtPVEIf;M4<-60R$S9)Vh>X{xzuuI3iMgvn(GFYfMnGk*;PuF&{tIfBfybeHKJ7fqnPmg z+F#5iu{Y`d&F`WOfa(LlU<-;j2ZIhVSG_p|wA!iFphKNH)Ov|S<&Vhxk%k=H|473w za(Z?E3K11Ka6jzSfq|_aLA7NvPw9LI?jZNRHWl6SMegk?(4Tax0Om`#N}wb&R07B2 zKB-G=n2o1PO^#RgDW&wMzSL)JFeND@46bwDfBHYa~=$?}AuDcf6co!ZY(9}zgMDwjR zr>TptXz*HM8oY7@_ef@>o=WBVq^^)rpH`$Owe*VmTwd0vM&9Vb(Foe)dYV8dIdu}~ zLZ>SKEsp|;s;>V}OpcUl>^1bGv5y1Scy+i^`Vu|9hPb6#-^`Liz6F?7X*3PBa?}uR zymI7`y3Cy|jzUbY$eq)$Aq}3;fDEO%5P4dZ{xWWII)R;c+|zw4HIJdr@G|MFMoLu`4W%oG_!z2~rf9 zN;l~+r3>iro;yH05l)wQU@yzt+6j53ORNMvg+w~<(g5_jt-Z#MPh#C7edOH3&ei0^ zR}^ZwTM4xW&UnvfK+nocDoe$;dcid(c7>*wyq`quz5x}TQVYmu4Z3U&uKn$T4xakbhxE3H>v^$Ol>RfXjXuVT4 z?g>tv0NUhKC5=T+)x9WP4zRzTi6@cPx@uhb5a=OCjU4_A%l0~^M7b!w;HpzO2yQ$Y zIcKEXqMb1KNy((vsT%HB?{6$1ItGw+akpO`Wq_O)~pag^|>%0DUm55h|5v52>S!FMO#;oDIy0MoTsLUsEy$ zz|%s5rzIm#FOTL-wg6MiLu;mh9-zZC%Leug^Te7NRA(Wq0+{F2d7vAdx&d^fQ#XPh z$almHsbTDw1CU4C|AT+jZ5n|a3C@`G=Zx{ATE29>}dv;JGv2clcSqJ5lV%84l#_U8v2r!1q8CAvrHxdrgYxTmLaqg6g@18ME)TLTHV6(OM z0nqR8EX^9NX`Cx%h#Hb~)DT749V&JO?xKvlpt2L5-B>64@GvS?0&5)Y0qt|Y2Vbn+ zN8{VhT~oJibN*X99?}NV5{q*!>~~i>{w^`h7@%inzB>)tbnkLH z=zLT9?tGIni)Dy+^{y<&2Wfbq{x+m(5h-XMSvTm4!lAh=VTb z+IU2dFM?Y!q3yNR(Vd|2NJH!49@)dG)}lw$T3|l|?Y7eOi=JFM_KnLPWAFCFxf|+X zrzQ=xjnDFhH_y50R!UV1Z-m>XhQUnlG!E!@&)}tV7SQjW1HFcswJHIgX0EGKSt|DG zR$Zps1x;dCd_t}mI}X2uOK`p$xKa4^)*vv_y6j~|_Ub0nO7KnK(F(Mt>?m!prT|lY zM8OE-5+HQb+ik*G9-*pk;IamK37_6JTS`eoomdk!M3lJdM9}38yFk008kDF0g)4R*?N>!P^c)pa zaE{7_M8O3r7pa(ni&XTxdZyqq75&(kDY#uI6!p7$rT|8I&2T5rFn%_zfxpN?x_AWc zF-Jf1hH(m4TN>izq@mEzFm-*3%_S(&2JH+IEbObkh#Sh%Y{4?vruKHWHN4iQth~P>lHE zxl&&p1U*`jp!}5x9*zam+YlP)nt))vl`g0UN{Qenv7i|7)r26^UOC|#|c-ReMJ8%j9;9WumhJ3j8wgjguHIC zqwU@>O&wW7H3|(?gobJA2o33vLrl_Nnj8Wb$0#Z9^G?#-kjmNzP>FE*d_S;vGi_Di zyInfX41v7|_F(Wmz)8E$={*U0-nvXI=SC>8Jk1P2{sZKz!9M_w`-XEI6jhj<$S=&~ z7nb?*Bjkr65L_Ldd$fIXSl2|X8xKrybTa4+M`wY~2F+BiD?!>|k+N#kh6sn({wkNOKX}aSRTf${Z6K*u6#@*`v+3K>9 zQ`hZ6Xtz0X-C@upjvfL1+(-R6G9!)JHxjhgM}V{X#yWK@=sb?mDuDS;<#5oq-l^+B zaT2rAhm-ntICTdoLlRX(+V50(hOtLc)wdMV>)tB|ioRY)rHN57TPD88QHhs1_B%); z{j}UCtGQW;Ps{6WGSpjq{;vY~$`q~p3iO^+?;%v>>Z?qb+V+hyRmEs^tUHCwX?9B$ zz&Y1+&Sjv6?&Dk7z8jF~okur)^xmiYqH2|;;(K~rs|08lG@8EWcD&aL$~hs5MB@&! z_%SYCin4=s^R2~C-?yeZj-Nh_@H?A|_eR34brfg4S7&2*ug+zn#q?e;q>>r_UI{d} zm#Q`3)AQa|W5>@ijJw^9-R|5dPbAz$Z~`~-a>6Cp6K)hN30Dr1>`^;vzQ@eG$IL{l z-5Ty76bi6*00({02SFLjHf_nl@$ZTDv9mu0J?uU?40_6`L46w(CLa0tj??T=OsYL_ zCO2>I9fkCnTlpENFS_?WS7WCJjj`?5;NEcG-vHHz-!&>r#nK?~T9tr48mLzZ@YvMO zK*^Y-;%?p&k-o`=&3huE z>QmR~@qSP-H0m>us-qbQq#?`zs7{p3PwK_M9bBp7hmi`Eg7+bj7NbmAI*cz)K%zJa zoQ}A`9t7kTok*(~vfNYdq9M?Au-1sGgIiSBn$r)+%#x<@|_ahzXvomC1~s%Ve3UfQ&6@^%!)40d-t5m9 znrT5KNc@U5HWV3t_S`Wkbbyt|$?i|J01p-)oRD?3(K@mMK!xO|EE@v2%(pLb~LN zE`eSSiY}Lme{L>Qq^8$g(KTboivHXTsl^oixdn8xEBf&C7EDiLf)D=!stSl6c2RhaC8tKMJ&2fJcn6f~sJ>w__;g+x937#_a z!o@;g97+KlPSw&wrZOqm64VfyUAbB;&yw7FNB6pToa9*Q$zC@Gl=;x1c^WX+2Qe3v zF4Lnl)y=?O&ilQT`-~lZ^h;e=m3vnn)hS8S^#Gu$tEG&u;nCCu`Utl-ZZ*n15R*n% zW*#zvlIK|9Mx}3wMoXTPon7umv1M>z$3s2<`Dpm1=VK=AzxoWCUeSp+Q%a(kl=7yRH38@$5?R4&L*E0nlH&IDJsY(r0} z_?JTnM+;u;zcfWr;}RmJp&gX$Bx*o+BEV{*x4-N*eHFd2LbyBLK<4}lC=b(;hUxkY z8cReNXo(i|x7Y_{Lz2-YzdIItLw}TWXgw8}kI_N(o}B%Ec^z`!_i_)xJ#7B?%i&US zqw-Sfk6=Ny>#L<&7pbPIbvMjyQHCHnX^AK~)jBE}!a~&e3K~Phwutrp8tcDTO(OpP zME0L=P=npYLm1UiM>QWcdB^*ZvwbPJ;DO3kgZ>kwWD{#7D3rb8YmDoyhsMmrQ>a#O zwO+(+jFygATvhoDuG5<4Zqt2YkK8QX+DkT7=9JJ)lXKG*N>vv_A7}*Rc&YxL5k$hZ z_ZfbeCF@7a1|a8fq}VtOP|nn-V)hKWgEhn0S^f)+BA5IF=i2|5g{Ip5m_y13{Axd{5D2BNZ5{HvBtnoFUn=~XxT zsCG77~9YG5mFrql-b8`XpJ~(2!$>qC?!}j&1GKAH?77#fCQ`q#?BTbRqk2;dWbGmII4z14?FcR=usCx3VI_lM^)ga_k9!e4r8eb zVNwX}uOe$JBS`mbN*~(s+riTe8Jae^^h~O=D-{t<+UCV=&j)^sku98OIX8`L*$I$c zwI=TZ-^vJ;rQ)Vu@H8bsqv@uCjeip(f}JIuz#U_&ZxenKxBS>qMK>5Auf+GKdi-1m zO^J-#L3^yI+d)Nx=Y_-asw;}6e?VAq36w0}HOqr#7*d?yWr`fqpqeKu|kEhvn_$@IpBhx$fyJ^ z+R19uMNkxF@8!F_vBAsLXCNm zIxHQ^4_t@Sl^#MnK;iztZng~E&6dh;NX*i`3V{0qyXm}7H_=+|%y%PKH~8F41)bw4 zSbCMsjY3UxqdleEX;C-q8u8pHiH^_TA*koEKAB@dgAriq74=+0Z;BmlAS1zLg%s!m zMlCXZ1g0b={uH1sv|V`p;{xV7{Hr`EY?q*1L0Fqd=8zl{YZxS9!|*d}T_(Bae$&<*+ck_qbCZAt$Q zt0Xbo<*f=4NveU3Hu`_t2)c<;%DPR!UGU~aJ9Rbvx>B0+mePY=q1BgBR0dMNo+5+y z19zi14(#o)<;LyKPLB8;mcvJ==c?zVd_855cY|uH5 zE&|;Y&1bM=P<~I+IZRf5jkS%TNm5*ox(T#TDnF1IZU5!qyZ7b~>BlaY@a|En<5LHOuD(a#E1m z><#T&2%q9SnfWPzBP&iLoSE#U>^k@-LRg##ZF?x=tDd%+6oKB07VkVDz1^xrm&V^f zJ&a&+#1cxhC3gS{#x#~gv#=Y*LXebBhX9TFxfE%b$Af&<;HWweC|G(`J6EUZ;h79O zNO=N_EY$r+nv;X3(4oi+B6Aejz!qC;o40@-(C}0O2f?dV0*9njC2$zLMkVkWI9X)# zXTSyU)HT$l`bcDIAobf0u({tPvN#UhoxbKsTAPpMwxrD$AYF7zFM?j8H(7V7RQ#L% zpPK!DSsN}ywY^E#DvY1&M_iU9`_Sg=a9PM~FMlJK{EbaVXd^Jm(H79@IhXxy5G4Gq zhU`v%YjkuHXp5uML3{Huy^u;~{NGBT+BZk41WsW5u40&|0tB_)VaES$hw)?Mjl0W? z|JyF-rfWUO!X;%T+;pjDTykT=O;|LfihpGVk3Xe(tJ_^uVGF2*pW{kJ*VueLxZO3DL7K%n{z~YG1 zjA)B%WQzVi#oh6DX6WyFCI4_VDSubn+2)SF&jww^wnfne>~WMK{e8cqAA%l=_BE;! zpK1R3`%F-#Hy#@E^7k&6-2;j@rF=i|p`(XDktyFP2Vp$p(Y>S|8EDh={OZ|Dk8?(7 zP*(cMTX|F4(-`PV+GBvR;M&!6OEDf?{P92&c%7Agf2!@L1(*t5Szb3k)4|ntIzZA;VEA?C`hL!6s# z;@*$Ai`2-uQBFx@$r=ea$|(uAHRDE$$42m7VUT{a;qTwM>S*O{t%fwzf_Ljs&@pcR z7;hL&_SO=l_2!AK>p_)2Yg7W)!BM~UI&c%O94`m~zM`V<5^a^g^z~+amuTx9KtDFC z?-FhO7Wj^ezDu+f``)jjqW|dmKC9&Yg zmCSCaG6`7ZroE42-*1B<)820b^wRQ0RT#|sA5gic3ajD$GZG0AAlhtTbF?S}Yfu)% z)kvg46W9ubM9DucAv1up=I{5wk!Q8#i zxhxxpGypgA5?@2Q?Gm>^@0Cf2{Y_rt9;EMFg6ZuaTqXg#A6KTnQWIc^N%S-A{WWs5WLaqOt_jnFeM|JghzEs?%M-9ruc1aQ-#^UL^ z4C!hZ+EwstJ~VDc?4OX0u#k7U*mwMydpqf$;ve z4ZvpbW|hERaCNj7P(&-W2lGu`yE$xIJM87QO>M)C+>gkO`X^ZkWjhvCnScyuRg-}m zrS*inDC0({*|@ECE4;0h7Mpm&paR%pUfOmR6pc}`H<^XbT?n_srfu6&&{d9hfv$IS zJt#_Bqak)cTI$?Ypk0oB2ztQLBcODd=Jp^v2rq+bQ_iipz>Zg3APvbKOSXNDUQZ3% zZkLMNa|=C4{0DtR?A#JYTFa{@7aH3K(+MVUu-ZNZSjAN9WMG&22ZmQlKw>7h4>yU} z?}-32nQ+r{3#1xgggJ2g2uBGQLq|H5u-rbzf@u2~P|a0hO(?6}!^$(GFt*l8Ki<@V ztGX~10#rvSxao;9aB++t(+qd6 z8papCSCGlU$fnP8LK8OQw~h-R0n|k=+KI-+KR$fxgd=8m?3rHZJKfmbpnDxX0Q#|` zA7?07dPUxB!<%W63JnIku;QjITF-$SLRU`$nAEmFO$wZ>@k=G#0UQOl+)H_8?rN@qDbD?`E3D;m7knJm>v?-D+T(&K+&Z#R(HD zgJj4;M`iwcM>l|Oc61BqPDeihJ?$u%U5Y6JNDD>*)ZoT9fKG7g1ke_zwt(KvPl>_` z$H@?>XmxZw=mtkOgKlwjCn(~v7oo%ti2ncX5oI5s+jC<#=o(@~`EX6C`0rKV_41gm z&~&5EOiUsIlqcC>wr|DT6#c+aM~{Ji?&t~7v(a==-3s(O_bBKwM?VKW;pka2Bb!21 z0hTPu{NFM3-*;eSn);}Z2AVNa1+dsrhW77kBh$@(ZDHw7R*N3x+xUvsj_xwmjiR4b zx~|SjPtWqvC_p=r0=W**9p`u}72|%i@F4e(BoyVk`&5WG0h7R|SgEzGyAQ6(fF7%y zP(|E1R8FZf2iSy&Op34Rm1Bfdo|hn%C!?vAshU<=;PEw&yF=A=TevBD@)Fu`h+88c zYEaxZ8y;9zG(#Hy@_5W&3pF%P^R z_DC!3DS+YsH+%0NTV-~g|N3}5j6*%tVH}S`9mZii#DfsBkcALJ2qAQF)nA%sve zA@qKpwf1|?dJj`{|G543R=P*pv!8c8d+lfKwST?Div zCvDcW$CrGM(ecwUV^7;|{qxhwIR&Tv{pV*Xmu%nt`6b|hJ%axE04?jxy0Z>gZ`Pgl z-g^v_y()Gt)lg^WX1&wfLCPT>h^a1mL*UK^Z&;biu<-^lLahURyS$s_e>LkftI6ep z45xaSFL~|BiGKUg2RU;c>b9{ce^ZegHx=y(?eE=;R;KitNX_<;p9VC~;UXXnWsR?j z$hE>1`A#Cg7~2UqKOcFMN3K;m-lNbNFx#Ql^MZVA+G!Kqq=hrbq4KdaG*pr)G-M6! zoIuehfiXOim#udI+$ z(`7EV47fZmCw6IGP9|DKx$T%3u;g}99wDI=+KX$^-7e8>bbOl6Sngpv6I+_pvhVyd zTUxB@it^Zn9~TRMq2~!5fSIu9r(u@Wgi>c7f5CS8i{<%Hjc&G3|DxIG@(N4Nu!Nei zVT)zHgqpFXP|Gp>#d7GC9>7ZA83mx4auzJrvy=A6Y8`!%CeSe<))6cVB(b^m z_{B!-yX*k}VxK#g?o#gY#U1|f%olfX-G_9oY7ZlRKJ&$4*!wNbU+f2-XVlkS3LP_U>_i*R?upKZjAy=NJo611-+d1=TT?whQ3)AO z>8v3vpf;?wVdc}vsJw^X0b9#$Zix{EJxU$HbSO*NN#1>tstb$iQR zQsMTc6IYKR?cp>`O{zU=efpwxQaWxDT^r<-GD?%B|4U6keVV|Ge2MA%(oL|QSM0^L z?A#*w>flQgjE<+|mu6ww>Wkw`Tfuv6#=o=|c#4jyR8#0Qu9Gj_#CFT|Zvh9Ssk&JB zOFhi?W%}}0+k1phb)WLF!N07d>2QZFz>y9|0Y?Kff7;(J7WPc%!HQ}oWw%4ll0DB1 zT2Hvs;4kGq6Byh-rr}iU+}w9MlzR%~dC5IXV3*l`+Oq<<(%~vPuQT|Uqg^NLvOQ~Q z_$ch!6hfHR?0pwgTX>g*b!1VdS}6eP%dCms(Ig@^&aLBcd^bFC!05%w(|+N;AhwhRTX5rk0#p?yWj#&eVuAN0mC}pVu6@~LbonnACcc^b7_gag9cRL!t||=n zxu^C{Wsfi1wC!-C^XGO!y|3qbXXDyaAKXnlt#V2IY%i1iKTX;tOF!q64=>)S{+ZWR z`p5Bh5}d$r+Pk}LuJ*gEQq*dmy%@j#uEBz&z)2{m5XT$L+HrW<($$8VZY}g6oOP_^q z0*|-a50Z)C&6I7~&d@gAk=8RnfA1lEvb3LzBdMz+;A5$)W8mXpb#fV z`Wrv~KPqd(FgfqXD;7m^T_|nZueQBqx zt+JECn?84FjG-kv$A(+<58R4eZuFhl3nWEx+bb{geSa(ku5y@qpNA!TbptN=L|g@4 z&2I|jb*az8Dj+vQE!VA-?G96qvSu$$3qBH&k8fBi`yNNu;d*A7L|qn;mWj_B-t7c0{+Faa2`>DGsLqiw=vxQw}+23r`(BMRtNgDn;p;UPjfSaimTat zJm_$?@&?!F$8@8!VOLbo#>Dv*AJT`=PkZhihs4IYZ{?l|lca~b%7cEePYh2H`sOh@ z%apeAFyJt62+~L6e|eH}+E1X6c)+Kuj+r>D=@@tf?HN_<*vK#(b0WNW!HV+ z6FhXZ##gm>SdFdj6X-#q!{io1(6pEC4$zv|Iv<_PX^tC!ZMiXjxvp6Fa=iui<$B=S z*bmpDCs_`^JO#Kq1d-Tgb_9@w;T+RxzHGDkFk_qzH^DEj#l-Y+d;9V_%Go$%wWjpv z)nw{&HRc2l+wBZVi}lN!DO>DwjxTR>cA-(_|7aXsO|}we=gU`dxE92c4>MAl!(<|- zGHJ66ch~}K4GoKhy$ux7ynt#Hg&YXBQ#u@u15R)_5jYu0FZSYcI%TG1X79{mVP6lK zDedS)ce-<@(J|@f49k@4O>8L*$#;$)QkmLv%;ZfGlDEAiSa2Vu+hGszw86h(h5VHd z?61}Ux4HE?kdqa+eG@6O9qs|{0j6;=MSE9L&RJ~M(^!Yjw7?q0?4}V}TPLt^jUyxWiTBnXCZt z(U3-3G1vwi?N&X9GAcFD;W*ym1mGlxlYvtmf~u;dLAi*DitzSba(Eed#o<-pHHYM9 zAMuBr?z@R;z!uBCfnwn+wfX&P^xfw@FtI}R-8GN+;JEJ*=Ett~G4NT=_batH)S22> z>VQK~Yf@b-?APaa%{C|-mo=SW9erg2O;*?);VUHgE1TT933$S-Cx92+dI9*rtq*_? z-TKf3;*G@mpJv0bPIov|Pv;%pbDywm%x9*ZNanNKp?paDe5&L#KaArXX1#mjk1u}3 z!vF_<0(J(+9qB7+M1pjrVF;$!OE;S2Tg%9RVIgIms^;kVKdkb%wK}-tYh>A(Y*yZy zhLQkU>+u^l3hR+=mb0^f3t8$`S;JDMFlkYbauGfHZ*&Np6Xo+A|+pv-b@*8 zi)8`$tj6xOEJWS&ChzhVl_RBZQ;Il=bdg1Qs1`04i=O zCT9O;hg*PKfHscue`-A6igPvb>b*&PwYWzMw$=I1VbrSGgVpMXt(*-~q4hM}**F_5 zn6yQxCQ+6> z-w*6&bgC$4+2VEUWyhiPZyQ=G%w)tanX*yPN5{ zC9zfNi*m=izGHNu(iv7=C$_ZulJ8X?-c|Q4y(Q5lg;X=9?iR`dgqzC3Mt7KScZbn& zOx+7GEpq2Yz>vz-BMvO-7K-Qx$q8fsl(;K6%P3@sj%ANS|HOHPY(4S zg42-|pZ-PHc|0=HPbq0!Hd2N;t3zp$!%pCWFa|O*nKH%l_q8cNtq`TcUWuN82XH23 zw!=BVdC&I)%PRd^VoRGa^%ll5xneAO^i4-dJ8*L7`gv!4M4=H6qUbA)(sXkzd%b&W zosSM35tv4?(8szESgaVUXws;PCHu8CdFLXg4eq=Fc&NfzbeB8t2Xfq&R*G6vdfmAf zsIx_5wpXH$yYq3Q%X3*~OZij_O27Bl54>CvjOg?E2$Cswa+y|Fypt=yfr?HBu-$h0 zHt-H~gX&`8fYxF-N4}<}k3Ig!Mi;^XX6z&1CfR`H@X$`JuRU~!(#nSs`>{Qtf9+#u zOG~@VcB+xH;XFJ*hzB@d^^c4Wv=|+}flMw{7V3d&XstRb6;?)=vIDCzt+nAFSX(T7 zy_F%CwjY$}_3pgh=vEq{cAsB%&!^(+%W24w#a-m^d#% z#kHDt`xv^7j*IZ?4=}Of)DbK0>yM)F03~ovNkgc9($~1p!PJQ>F+0$tA+0$Yk z@yWGk38tmich6E_Fa4DcC9XxUv%q@R0T~W&8G0B_PtmQ62B)}y%x9Ggu5vak@{FAi zli0AlGCkfco5)7nNj>|#o6>t-T~dyE+(&^r0KyVC`m{%Q+UU3rdro3HGJp-8TxZs^);TyWyghYK~0k(xke`6s~r%YH2-&l=pt<&ttZ#;z#(`NJ* zlm5mQ=mQqeHx2*~yY;X+#Wb7GaZB?z?l~I{$gD@wY(4I=rc>GKfWA`7rR@SYX`yYLPJIwX3DdoM9MZtX+MFfF(3b7(nmjW=B54a15&)P-rEtLy{b ztWXi%Ka)m?p_+lD(&)L!!)4HVWwD7*QvsgH+DQ_vqVl>f* z@XWN|!`p8jF+5|B*t5~Mj?nd;@M%L*gXM4+i&}iwWxgDIMEb1*&hibMze>K<>#N-P zTQ@ugc7>u|pS2XNLGfdW^)=p9I$_L*C*v~J#(a1xFr6lcIZeL3FTV(^>0F!J!*gkR z-Ddpobs!^SZ63aZQ=M7AT?ec;>$mHztC$$;X_ke2coytPgb4N9BPra%^~Cq>#S{e) zhVt!w*t#v&Z+909y;aa*OB#L9H4hpcHNSll=gY8Jhg_a=Q@By|5=L*0N%WGi-r0Ex zqkUMt3=29+^l}dNlHMTEJKjwtiKH$GpblD{RvJYer5^0Hz6A1fS|27hfxXtpSN_D_ zjJ*ZywVud)wT{9*9$d-{*Lt;vz}&*SWPA8g%klX)ooXRMl2{16 zMbs3vy%N1Fs3p@u-sxW!-q4OJxzqjjp;8sQXxxYRV<AhDhe5ciztXGWcWjDd8GCn?A8r$Vr$wngwOx(D7yWAmsER#8~i8D5wcfETt zU$ke9UT#bT6NmksR!nU+pzpK+HGwRu?~J0%Nw?PT%;91g7niF9C|fdS3m5uDlrbDW zN0u5>9;)>}CN~e?IfGN5js81*z-P8ukJR8j$l)L$%OWh{BTU$lDV-X(d@rI>mvLsqfEI_?M(fThvtR#AH zh$We7+(RuZHuRCF#lm;1Y;fNt!{4o@!#dTJ73A~0j4LSm`%o8kv67;{wxYCucLQZ3 z7y8pH-`z;jzoELWi=7nx?)0WEc2Rn`7|;cy`tCt4^haI3dysOHi+j2_NzqT%Oq8?f zyQjG@(bHV$Cu=5pxmY-=KZ|ufjjjscqoXOzHIHdW$57gp7}b=0w7pl^cDtqcC}G0K z>9(G>*;dWiu=S6Q#o<5p-3PnhqhLypRy<1{6@4hLCey*(QaMT*j-K*PNW#(6X(*?Q zh3_>~4u!VgtI75Fy#`E;=Kj4#U~60=>Vneryhn2`hVQk~YNU5E64+7EiRiX`Co+xB zchZ4roOi;V;d^@SD=k*8MNiLnBGa^dC!Lt)dnX)0-&w+z6a;KIRN`O zNk0ZZt9t3rcK)e=#gWg-4($9J%0Jt#2D>SH?IGxUdx5NEw@a_v?cF{W?AcgSJ;a01 zQ8m<|?x3s;oo)KaYnVgbKZiSP0giCk3SuFFZ8iKP%mn3;mqd(Cvl zDq$zRH=HuIqF>Qz<)o=HkM?}OYK1BG%bIy_y!SgExQKpB4{ltGo zHihxZi?Yo-*#_*Y=tT66d?zyP%6HO*X`gqp4|twV!V}(mqL0!E)oIF^e1BpO(w{2I z`FvW=W8!GizPV5=9IvW~PxMXi`Zn-^Lmd+N1K~Y2yy_~PQtu7;s+Z4``~h$o)Blqm zk5>^+jYW362B<@+Sv5tET768hzc8rn2#f9b2;f?KRz7|Tc-rA<;F(-rj<3aZs?1)_ zZO-GZuyee}dB7zOR|9uD+zae=cnnz4`6^7S?Sc9D8X!9AMNyzr+AX@IT=7v}0p85# z-{@;GshbWriQV{-I%*9L+^J1^)Y1FF7J!(_R(}39VaAX)pcUS z8%8r7a^GHB9C3IYc*1_(`u+)rN|hiJ&yQZ;KSk;Dwtc`mxeuD&zk}(X$9u0>IH6;` zC5&72Gk1PwbbLoF=My!Sl@m42hPS^NJ70~Qos;ibzTBUT9cICv7{=vTx3YjvOv>%w ztjErZZff~hsEXFLltsBuuucq;**2Q7K(b@7&aHJ^j&bW4V24|!J;ALLfOHxr;>03M zi!Em-76acQXByx;loeowv4T?Z#fG^pr_*xunJFxw%v8EF(UJ6)<}#7B3Yj>unpSH) zs{11>3t zi#sd+1G(oT|6ryyVqvd10OI|ALsxN&(cP-HbP1> zQ&=Nr+L~JpS*!n9PE%$IYyAV3(Fa|w-c>A|)W@Ms!9(-`ANT>I=f{V zCyUAW;GSFWxla&0*?_6h1Wz^sTk^v-dRT6_CtGON>K-h|lX`C+9^Q=}llNFlvv=L& zU0`>Ghv-c*Y`_$pK32`YI@i^It)AoU8S0) zd^DsF*uUSN+%hlt?~hfvMp@2_?%E12HnG4=gjm=3{a1K@HEWt}^00B&};8HjJ#(%(Oe z>Ac5%9{7m3!^|0dDc|)YnmuukCqRAQ*sQu(IK@A~)FaQSD-`|MOpiRLu2OE>bEE)8 z8fryHryggm9v2Hg(4UCz!{rAx6fJXF{h)!;m|Fdykqdp0ZLOH{AL^i+7{;wWYi+Qn zYK_hfR&1Rebf@Zodo8)A_5xWVJcyiPj_ER&+|(m8pdL>(+pYT)BR)0UPWe;A-6#B( z;rq#llQ4@SJPc%PXPFJB=npnC#C>*({$M}wgu|0S79TzSfaLz*fkX0ty58XFp}tKetkX}=YTgI-T^){_=7?8L>3oNF`4QgXgxIovzSs{!G0;@CNK1drbM^L*NsGXR2w~ z1Wb{!f6uTU&U9J~XISND^pl5r)y2Y(6i;|Ev8F2+J@g8r7x<9``f>v{c8Lx6M@yUy3pisHcVbIZtj3gn53avh z=vz`DEc&U9>_<x_Z8%{)HSKAo-Ry!L`#J*lkM?APAz>^4vr!S+AAzYsG%v9Pm>XSmNuv7X@Vmjsh zo&w(0fK*fNfi>uRl>1-}`ab0WxJ7lb@S(mTYgJ9D0f$9rU0=z^B(-y%fpg{&k4kem z?-@AnY?w!5FW4;iF{P;GCQm&h)~Sl}F(M%sVz29$5UMFpT;+*Jy*_IxI%`^!nm%^P z$Ej&dde*cyHGRn02z;2DmX5m6Yn?a!u*%+yeTbmawmuwAA0qr=t?vu4COx#r3H4Z`%VCIPYfsPhwox4dWMR? zy^KL2-d0QWz^x7vN@0Xu=^*v>Mh zv!iX;XGa737)Hpb(c{ed>^P&Nu(4w;qi4rD8!~#96rEj}+b3t4g0uau)(^ahS~z=+ zK9`SA9+<+pfA%6K=8^ZvXPL)ywR95BL!$>g2&$mhuVxjJ(`R|nKV9F7X3Cz|uQ z8PGFw!5BNn#(QoIY==$GIhMmYazy&ikt6x=SYqzvIs|^M9&?M`dCoDR=a{EXRg_U~ z9R+N6YdermId81f@opuh=O(*V;n9D1e{)W~E%31|0QOdlP4qG!+cKkbiRs03)SZtO z3qM(#&+0kRr`-9J(K+X{u;=VXdF~wWx;MN|L$blD`^ilA36Fn2S&Qji6a2}$Ks^CB zt1cFPsz>S3 zVaJ`{N{p9{J%5>o!@YC%PuAm7U>d}7;0o_)#dA78or|f{GWgR@;AOHF_O8+InDbBH zF**im>=Mh`PnS3whW*n;n8<0Eub&d^Pp`Pz72r+O!rnFdT5hD7DQtnC-o$gjI~gbz zF52EzO{r7(swws02Gx`XaFc3^Zfeb{DY~h(sHW(K)vB7Z1RTx-lYEd5Oi|p=?ahni z;3CQ5P`OC5E-p(QE(7Z;u6z90@ZuKARxTdsf@!?Cor_1h*iO;!!k*}2CxxH4{OMC& z?51>aQLGlA=%-p6b+M1q&BbP2bW`*rv8}o|NzwO{CVH6*eU@aRkBf!N7mX<|YYTm& z&GW^LG-fUHebL2plnZXXU|#WEi}@67_AeIQhrbSEKIh$f-hINm74unV&y5$?IUC;T z{LTJi;ct!;+M_B!ALUwhal2Uf+i~gQZ#f|^ujV&ChyE`C>qb7=t5~?ij=R*#*FRKj zGlm;~%Y3PW&X(mC=HJljZ`!H~v#Cb8!|c!<;h@f1Rqc9zcCz&50Fl9|0c)_-;B;&- z!UD2K&`ateE!xXCXfpn+FEsw!qx5pjPUycq1H9z$7EP;jhxOlVAlx0C>g7=X_6`nr zE&YG{u{(sVbNM2s%eF!gF@vp?u~#JOn)M@D%RD3|=8SS2`R{1TJy79LQSXo_J*sWv|1e8b@`N zXm8pPc=;yqv4wZ}F+Nvwhw9}As5e5>pInSIA$d-f4>&E&S4j@8yFgPW9oJG3h=7KXT`$RLHUN~VXxR@ z#NUgp%B{V>C*yzrG-tXxh*m?byQ`CdQyi`YuFds)bquD-mhP*GE#)l*TEp0Z8gr}G zZ5Ds3hxpis7+olxIb~KWCb6ZYmszDFv85YUVuNt|i-p_6SAONLGhx^l2*bWWxZ}mb zY@Qd481@Ciuq9#53*}u~W>?<@9*x3@-eha^>L#Ph!ey2%o3SO~GRr>7*eHAy^D!4b z1{^>*d}wr4^cfdEV{~~;Tqah+i46~J87tw$mV}?5W4-fw!QyIrVX9$EBQCFiY;nPs zgf#}r9Un2r_CM&JP!dk`Lm%-&qjRa2Gpt6O*phJBS0her5dH`5I{&~~!Gp>_)KMnp zg^g}B;eTi}Itphj!WkQcGZx{DjlvT#v&$vSaqthDD}+VQaN!w7=Y$h0;lxJa#7a1^ zQFt@vtuDM3c)mhd^ez|PWpqwBu@X*f6i%#!6B~ukW4`FZ7mI~!xdTK>lxr@0&FGwP zVkMl|D4bXcC$=Pc&K>esvPsWwEi$MsdmRW_VbZ1RAOyOQ}t(`DAGMK_^9h61+ zOd37O26Szb(Q!Z-%YZUA3@Bq6P{x)9q^>ASTzCm^V}-Ej6)wEO=$vq3C7jqOoLC7b zHVSXVyxE1B>uaYgghlUg;T=ZjgcB>_#75!7N;t7m_%!A|7w#(-{&8Q0u;>dee8K3P zaAGB#*eIM>2`9EBoTj}7Vc`G5+pWex>9!I7V>j?ge#Ax}wh{m1VWZ=SGnNr&Y#4FI zGUALajaXe#cywV^|KrnQ;krKH3`eo(>)I`I`ObQI252`4rPXRL%18-*uhp6bF=fqKUqMtoiLEEk?-bWS+25>9LsPOO9z zTN3^+TwK?e5YJK{@ls&L&By3fKH^nI=SD1NSdBQbam0z$h!a~HvAUvcb>XeRLlvnO zy~~BUfk5Yk6D#4wM&ZOtII&Uq5awPN?gd_~5EgyHg-;lr6Hcsz6B~sSE8)aOVQzKT zFT3z%;G+s*(KlT9hS53U#7a1^Q8=*@PHYr@g!zdJv+q9AXFYLMLx03gk$wD8wb41@ z#3G!rQ8=*(XKWDus0nkk34g?v{-|Of8$Hs6M;aZ4GgiWh4Z;~K;lxH^Hrq#2U6_6R zQN=#~NVMFym z!ikk|Vx#a*%)4E9H}H6cu;~3Ryx-`YaAGB#*eIM>2`4rRAIE&sg--(SR0xaicj11c zbHa(0aAKoyVkMl|D0~O=Jr}-LEZnGA)gOs|?81+Y&Iu=0!ikN-iIs3-gYbk)b9%;fiMj9Q3GZx{D4Z<0VaK=XAiI^w5Fsty!@_edqh@RoXGmOp&Csx9V zjlzkQaAKqIa?C4TcqMRqg|O&#F1*g@oN!_#oY*LwSP3UK3U9~ECgBO>2CMK!#Z%@D z(R*EZuhBW-#7a1^Q8=*@PHYrDjk(W-`+yHBMlAY*3tuogC!AObCpHQvR>Fxb3I7*9 z2;6u;Jdb?DkBWtVYN!~o=x09SXGZ5noLG%Gv2nzS)rb>Y8nL>fG@0-}v9tbZd|ue- z5hnakBaDv18H;en2H}iFIAf#mc+3-BnC1UZ`rbX<7XL}~G#8#`bWS+25>9LsPOO9z zTN3^+o8u&0&4_{j@4fx~&+1n>r!4XrS_G_kcWd-ApP^+&=VnOGu$rO7#u-YiW+<_x z8B$l2%`UtdSn+Ub^bQx^VRTMd&ae_rY!ptcgcBQu4`J?g;of55W?#jc6n(;lPZ*sO zPOO9z8-)`q;lu{vn|*Y5)`V}KEf#)OaW^&kk_q3uWONkHScEe+2xlz985@Lu)>a;dJ{?8Eh+wK*HYGPd15T>n|S zvoS2P|FfeW*3n|&mOd#8hr`cA-z2QG_^Z?b<%Y*{!#v6#dL|YJlJK*e&W6uo&G(eY za?05d%dI+0^%l#mdZ6z6;d@x4$sjBG78$%X&VDR+YaDQ@Tc-kNxpg*hfm_vndG7aA zSx?NP^#ofPMvD#MR*UDX=i?Py_k-ASeo#w6=8{HhBO|{(AC_N`>n((ti*ee9=Ibtey;%5Xj^SHghkJHVRf)Im+F5`tb`LAg%c|# zu~B#{=It)L9eA-qSo9tj-eYub#EF$~Vxw?kC7ReMd=c|y7rtC93{0;O7Jb8oZy22u zPOO9z8-)`q;lu{vf$4NN(}V|R77IVGSX@TWGvR@GMn~a{ML1)FaK<8>u|fFfEUusX z;`%v@>*qSN!Y()37uU~OT+mTCV-e2SAe^xXXKWN+j(Mex_~$EuXDft7ud@;Ve4Wub z;lxTfu~9g&5>9LsK8yLh3!g6*Znstli@xH*SB%aHCsx9VjlzkQaAJe-?N+*LGvV89 zz@>R%qsN-??XgBj;fzH%V}o$UBAl^Ncq!)PE=+1}@2e0Ny~c&t7@ZSNtb`LAg%c~` z#75zLn7duL8(48x-xht?g%2B@6Hcsz6B~sSE8)aOVGh*W*Ik&i`d{iRMl9OT>f4;R z&^h76N;t7mII$8=Y!LpJdb(>c;eTlW&dm!OJ={k8FT;(F!WoNj#s=YxML1)l@LbHD zF5C&+T_G%bu?sIYIwzc12`4rRCsx9Vjl#Pzce!vE@Op)?=mRc%!04QCVkMl|D4bXc zCpHReVsE=iH*XKFh6nO zC&j`qMpuj&`WMwE{EKR%bHa&5IAf!5ViC^RApDEbnA=VG7wy1`?PT->7oK2r6wX)) zCpHLYtb`L=68_J7r~He#$aVUFNck@+9;u98>;qz}LFWb}XIKp=v2j3&)qoOP8j!l8 zYFym!tBjo47l(>v2eHIcKZv__g(nD(K+G7 zN;t7mII$8=Y!JT7-n`pp!gt$%6;C!s`|b8Fw_E5aoUsUJY!J>^gflh@FUP#ng;xTP z=2LxF^g0{y-E~IigcB>_#75!7N;t7m_$cP%E_}RL_}AJBVbNz?_>9px;lxTfu~9g& z5>9Lo{?}T%t25z$tpiTZ3me^N!vET6bQI25gflh>XDq@Q8-*uhp6bF=fom&-MbC2K zSw`oC6D#4wM&ZOtII&T9E#`M!_}yaRUd31L|0;Tu3vV(yC!AObCpHQvR>Fx5!uOi# zuEm7!wE!38M{M*c6TUaf=qQ}A2xn{%&RB#qHVQAoyu^i<0J|%MMXzw-6-MWT6D#4w zM&ZOtII&T<8*`5f_Y@1itf>$deZ+;27@ZSNtb`LAg%c~`#0KGC*3ez83ICD>{>zH{ zywO8V_?JVCj=~v>aK;AVj72zOqi`qY1unb*SaFm1rRaBD_#LBj!ikk|Vxw?kC7jqO zycP3y7v?7M%RBj0|5CKyB!0Qa=$vq3C7jqOoLC7bHVWUte9wjN6$|$(p4WdV`mvAr zvC%o<#7a1^Q8=*@PHYgqUr%=pCVamEI6XgNqgze*eyh<@*w_}kE#7Z&HV7L#+&(*P9}{vd`YOWZkBH55nTf41U1Bza=_ZZ?-tR!M@T;bZ0g1lv1G;Z?Za|6EfD#)A zlvoWYv0*^JYNESl6aE#qgI~?g3mZMsgnu>C=qQ}A2xn{%&RB#qHVV(iJjaFS0GH%5 z`76;2a+x$!XD*XwnwQJuua@Ar)caiutavyzdX*1omC?BY$r)AyN^BfZVl|+|#sQJ% zUk$i0Q~03biRo9OeF}fYG(hKs6D#4wM&ZOtII%(aK`q@4HsJ?@fqH%jYtrb3Tqey_ zpUb3~hJ;K$|GuRm_M7Os&~Gv^u+myjra{m5TSL6CinA>)x#U44+C%zx2yG!zWmXc2 zEhVbVe)7-EAF#k5w0NRgfECX>Mvt+V%?ANU}5x-sxT;i|? z*c(jSxe!Sm~0Oh;`*C$=>DvM*`R*dY9ycDm~@;oo!sE1s&1o@BzmnPhZ4EixA2 zj19sWi*Ux4gi}t*NA`;iy-Crxt&f0D+{#jZRApBE zOWQ{^W_?rxtaB>^d_=w$sG^V@{_*-F4w*;IZfyp(y0sP9=GHb~yIb3V9d7LaPIT); z;AFQ>22OYDbl^<4&IHbN>s(-`TRVY^+`0(3#H~w!%iX#hxYDgFfot8m7Wl4P-vw@T z>qg*aw{8Y*ck6cGPPgs^cDc0+xX-QofIV*Q0UmPeA>dKB9t9qE>v7;|x1I*}xwQ{? z-mT|>7u|Xhc-5^}f!E!79XR0D0pK0C-T^*v>w{w9x9pY$swjia`rE<4A#NQ4Y;Jq$eJ z)+4|ZZao1!<*ZXE_3?$+VJk!~Fc9Oc$gz_D%}3tZ&Z zMZi^VT?Jg@)-}NOZe0)D;MNVmEpFWc+~(G8z+GED-J;42L-48tA)&s!9ZaoY< z<ei?1k1Dg;xmIh|N3~e%+*${0aBBmw$*oPm7PqzlTix0U9PQT8z;?H`1IN2{JaD30 zCjzIsbt-VWTc-nOyLC2ju3P5<7r1o+aFJUV0hhXUDR8-4mjhS3bv1CUTh{`MZY=^g zx^*LPt6R4Mx4U&aaJO4`1H0VX1?+ZfH?YU8J-}YK_5zQ(^(gS9TTcQ{yY)2itXt0l z&%5<`w%Z`mI@*H{m~9YLAo)=9uAZk+<0;no?zS#F&Loaa`#&Ufp4;9|Ef2EOCgcYrJ0 zx&pY$t*e0R+`109-mU9_o7}nyxW%nofIHl}1GvkryMTM$x)-?Lt^0uo-Fgss*sX_w z$J}}hc*3nGfM?u#2H5Y`e&7YSUI1Ql>m}edw_XF@aO(}=ZMWVA-gWC;;6t}Q1U`1_ zW8gElK4bS*o7K*>!Df9t80!$X4gog0wGlYXt;2vL+&Tg{(yb$bW869hIM%IWfeYQb z5V*>%tAOj=x(>MBt?PlC+`0+4#jRU_JKVYhxXZ1(fP3A#7r5W8`+*1DdJuTnt%reU z+#>1?ZB(zT=nu|Hi)iSP!$|$fn!}mE*$(Fc=Q~^k zT;gyUaJ9pAz-;WEfcm#ON;Yr|Whh*-_Ifoa4mmOXM-f+m#@Z^re z`@n||p8%g4{9Sdi@Vh|{>wxtR8-c?dwg6iljslKx*Z~~xa1wBe!|A|f4p#zwn7?C~ zzgzFtjlj(gw*hxJ+zsq&S^yle1x zO3hM-D}mm?Qj;1eHJiM_HsE%LyMcQgDm6V0Nezp?{4p6rrQyG^YUZn=T(@8DT9$4* zRF)n%RF*z=NS2<|7_=-6ai}acIaHQLI8>HKJ5-j&IUEn1>~IQjhC^j(u0v&Mp+jYf zBrK#-mex8{mUcMY3G8yX7kI#753twa5#R}jCxLwq`+*l6UIboscnx^V;Q;WS!~4L; z4xf8?kP6 zxDB|=;cnnQhx>tt9Uk_%URbdWuG=S1|8||JykXCQ*VLaUx#QM5K&D;R2b70y zeF*&6tseuQy7eikVKLD5NeyL?S+jK^>kvx4TkC;M-nI!i%&o(KBiuRy*y`3+;Appw z299y-7~nX!jsuQ&>v-T~w@wC5aqAS|47bhz&UEWc;9R%P1muM% zw=M-PbL%qTTDPtRu5;@;;10L$0Pb|_PGFZ?yMTM$x)*rBtp|WTZtVf~y0sU0#H~kw zC)|1hc+#yWfqic61NOVMA9%s77l0StdJ%Zltyh89+>wp{F zx&gS+ts8+`-MSUH&8^#jyWF}9xZAC}f&1LL54hj0`+t-#R^#{kDU91ooAa0+mS z!Tns5+(~U6WrxF^z%GY-fd?G+0DB!C0iJMp64>XkA9%sxMc`G3 z*MPSi4gl{tybpZr@Cg~MGMFtr!ueetrNOO@z~K&CfNc&(0mnM*08Vr`2{_H+bl?hy zD}g@D>^zplM#@%iunoA&;cnnQhx>tt9Uk_%)+gTf(j|p7@>u%uQi}dsVYBLD;rDC7 z6DykTvFDqQ_ZS`Dtba@je?KJm$n!C&{QYQqApZRvcL*PKe*DZG{%2X?_YC0o%-(`v z+JR|zFeR!wZ_+>R8=5z%A*(U_;y|BZHz((;N*?;8c$_=W0nT@*o7OwecZrXl>g7X2 z!6lTH;em!ry~u^~tncYyO9L0h3swV9Y-#fuXKZJgE&U6x#4`5m<8ghpq>skqtM2)r z2R|QPt%nyK2YF1<6cVU^En1ntVJY8i_eroX$V1&H>h$iez7piy>b-?Vb~W4 z!@fYc>r;3Zs4qrKsZR7IrVx0^=<pHQCqo_|^_JZ*^+>-1CIZlMMlo!j#`i)GJeY-wW4zU=voElsSt zqO_Xu(^la0ys*(@TzHJpQ8;5IoY)|ou@X*fNjR<5|Ew7bd-H$o{o+4sK>ywP4HM8A zSJd-oRObuNDA>}9D*I-KBW!6!X>n3!_)?w$)ZwTlJ+oN&!*+1^L6J3G;>&soO}5jK zD#`)39x$ipy2nS0J^Aosjm$^ZONHrwid%!dI)NY{GAyYKr{y z2G3q4x$5;bNsnmemgzr`ra$bkJpW+_a3|ih{KHPlZg8z?N*B0JHATPRsaH)oq&5}Z z?I-Kcn@Vpb@RBI4N^d2~rttpOTJ6pKu+B_-7%X}G!yfAdoV~a{MCtX>^a4+$NKb&z zfE!d(Dt_E(Zl`Un{Nc3G<%PNnmmn77{-Uak$6~TG_j@CS7w#m#J(V)|3xP%$+<}x@TnO9>VK=GMRcF? zSeZ~=EIiYDvhaXxZjXFw9vPjR8g&Y*sYz^{n#5{q5?jiIx}uOpKFfL5L>b`$JsSZY zUp5fHIbVGByUZ67y;gXf;s(W0rc=6gIdr^o$Mu z%(h>e=PIt{w$TIHXml>1#44b~#()y5fD&5@C@IvG7w^89iA3{$EPFuR_rk*;wsMi; zt3|4(YSU6w4f%0yx-CGk}z z5?jiIx}qo(swhJ|pno3%ZuEfuy%C&yTgkQD8Z4lHCuZmvP{tBa#)g10mVh!g2GoIh zoCh=xsPm&$b+MYm;-x>mSS3K2#KmP@Orp%@;;JrYQ#NJIHgTcC2ib619Dx77mTcOJTov)Bl`rflR^LxC>6_ z#$C7!f7QlaxC*?+xa(CHtE*Roaj#xY*$5u3nxcmceGY0b+Nz7&mX5-0qhmTUmULun zNJqwM;K{eVxlp3JeHL8xJ|N>zaMfh%r6v#Vr6w?|LczU6urE!_2WMRzvf!!@;d;y# zNcAz`S+|}wrx%dj~-s0%h%)fb!%1A1v9rb!m^OYG&Bx(TPDoGYW}nD9$; zpxH(Xsn$`}JKSSVh4Qz{=wrf%aLi|}&Gk!cgO}#Hl@;{TO1G*fHi0aur}6`x_vAbG zr4_VTr|->5>hpo?Dcx8rBA%tEdbmkU=+J+Q5CCe6iIUhebQ&> zq|pU^1z@k_46C_FZ0V!V#NM!_@zM?VEkDD%F!wHH^0>1hlQlJ%YHi`v)E28>uFZ#K zbiIXD!xpHS#a&z#h3Q_Pio)ua^%#XCL{|1DU4;)27%*mfVhGmLIa>rZ=eWG&)=Taa z7J>P&4Ok*ITPfQdvchW4JACLqrP+WPN7-ZBO`R)>(t3cI=xi{(tYI^K9KkOSrpzV- zVe1$@+D7&AROsozG%rzU)|9#n$J5K(G3{{Q zoxm<&(B}Ysx!1$)1)d?idexNk;0D!{%d%Ivoy~`>o-oC*lSvbJ);ftx?B&Fk->V`+ zE5F;ld=>aOMf12=&3kx@W)QPCsJ0>+xjoHClT0z1WKuLwt&?0di4D;VV*UozS#Ac^ z0Y`c?gGPeeQ#9@1@%d=XO&g({uFMpo$xK8uXtZ?_qsiD94J&cbM2}`7a8`#%jHL4QEX1l+#=RHBva%N@Fdv3MjFa0pY8F68nOH+CD)zWTNebnSiYn z#y86ZY^88`%Bn+HQxRW-e8d%|(q2t=T9r=mWcvT|)b@QshQrkMJ)b4mY-(XEGaRNC zwsKj7O#C;WS{(qCy?%`B1!|KtsHR*8>$6FFajm92!0PBYPPt$Y`>$L8^5iHhPmVa1 zS0tC-(B8o(I=*YKe&q;lPTC{YD<^^U$y<`Fqwv`N%5}^)Je_}l<4~gShNYcM z_wAAJmHXyVo@QNAnykOtCg2GAYf()Z4Q^FUIW4%xs9^X){ZhdK3iuj$7jZd zHxC)h@tLvVd9#-HUbRd_X|ZuhPG#aFjoKc{>9A0BNjc*q;Bo3xEkqigmyPD>Tz#CU zT(Q}zy#l=BR&G}~#o5Yy6hA&hoi>F1EVBR+{Xx zu?^k@>~SkIiBlX~=EK+q<0Cet-PmI`w!z1o4P*PGb;asGa=kz50vKcGrE;2D~b)&$tv7+lX%3e;1xp9|auIk#1jw>`{i9BON1r3oY>MfOk=B|YoNwbOV_nlS5-CeLFVQH7dj>yx!9@;J-;+@v0WEB z?niO4Qx~HsGczA>>DBCM6yF{)n)qQpEn>%n8A>c?ik>XQb~sFgRUz`JasD8+DCt`B zH;gjgGddnfp5v_UBQf2c+-~4g`e~+>y|@31Gil z`+?kOxJ$iym+~}s(!9#)pw8#2qVVKDM-_#J;db`wSxgs$DaAK43wi?H73KFyW(h9X?x)*_I-FY7i6?xoGcrCyEYVW+XmeO`Wm!!f~XC~5eDI%Jl5 z!==F0-e5Iwja%0Mx4AW`E0@`8JpeYEl<|@Nu}2#a$%RysByz#{3J>6&WKDAzU(KGi zN!XaV(!xzmCVM8PamkqxlcKFTJU>UuZAwmZh(T-7!%88sQ7kQ@(kjprEmjYyvW+vO z3b;H@d7@bnY@8uAMwh2Nu`EAMr6H{TAxxB@8ZQsyNDXUAFH9{(E1pU|3|O#}!ZJ~V zRAExBP@n` z?%MSo`GM4TU>oQ3IN;0*dL}m34^Ij8vy0WAUI|?~*VLSH#-m~Q^$dRj)g{U;haCF# zj~zb4UuPiIPzsw3!JtyV!nUHv$c+i`7k=!8*t6C07dDLTNi%tRBjt z!F_e;8p;NTtmC09cv<&Qjyt>tyzP)24ZUyhwfbW9Ya<-C13Mhf1ul2Ua9{I&U!&jG zyx-Rj0{u4s8q@q5xkv3a`hD%5!w1Fc22zW)VJc;s!{xvg4oO18c8AA--dV#9;9a*e zd!OORqleElQdpgWtj^EuvcZ4mG7w?%&^VYf#NiO2r=*cwH?nVVYwV$%ba)ELvXS*X z<%YwXzya&wbr#6$Z4TRjW30jJWao8Xp|6hxj(007==F)-b|P?!TW0~;E=asSn=;26 z%mL1K>wMq>w-WyAOWnE@$jXuBFy)9tQu6vuhXnb$PvPt2_w|QZpI;YR%~}_%aoz*l z3g|MZxo)g8*jNV~YAe5yPFZ5{dCpcCtA;2)&D^|3!+BI%6l)wZ{hw(xXmhj2+S-H= zDQ-3)xCsuWV5J91HQsUS9pWEpR?9cRDkq~U?QT`R$GMd`e|>^mCjePiYCD-S$F0ij zR<~{i9(Jp8c+9QGfJ`(oysmUI(duEqM;`75LuoOTF*0*QH&8Y?+@d@>Bp*YsIlK+@ zwL0`Zsi`;XYn-mHF$8*et%EYx;d0<=hxGfJ_xl?CzIM>9CxDk6UI%)=uiXPaFlz(D zZJ6qib<(ihAw4u~bI6=G_*QSY2K05^a2NQ@8hobKCymHHvy*b!t+Z_%Y_O5RH+DLF z2iW8AB=D5ObHMWsNuy>}OT3lBR0@uv_~2h34`kA0okE%AFl`4}H3RGcK~nPiMu&%h z%%80Nl(P;=iRMpMvaaP?dT?fq_IZ|ApV}5;=a#p{YinRhvgSUqVZvWyb!v`2nH|~% z%e=CWGT-oUFm$vp3s^h(n5a)~*udmAXwj6TYFL43OWrgM)6%?YJEo&K(`VX?-eGEx&GwAeg-iuiceH{ z@B*-$e(Q9SoqyITY3JDdtU6`)3#!u{4%I1>AZzMWP@O)(TJH3-PcS{TfqeF9v6}Z8 z_6_r}s$%u$w)2U=1ARPTFS!=0|74hj_a`kt_78*mlL?d=4rc;MvaHJ}D;*NnpX_pY z708~TK{JcExyd2Rqj`)&rm2|?rUr{C-a|8ct$Dj!_XCd@{M;a7WM$CybA894xB1jMln)KVfzaHGX^^uTexChYEvAN>EY{Xi#1e!yjOJWP=|5 zs962RW(M7yr{5r-ME?eh47w0L-Iwzl^(Oen2%wfz+4l{?dBabJH?{)r(RFwbHkx#+ zYtju}2%qs9yW6|o?QA%^GnSjs8;K3~j5qdR?y@uNjV|C`7ugHk?^d$^Mz33Yfk=nL z{f&E=?psRUxL>Sp*-hN~vKDq?3-3ebs&c4A2(l(*ZKaI%^o#~Fs4!tI z%wfwO%XkZO_xbvK#*IGg&WDYTkGsYm@+=;5HY`zN4_cC1Sp9Teh-r{83xOoHun@$C z6q+xav=g?+*~*|#@;*?rc+%;Zof9(KaueHf%Hux;Jnh!gz%y<=fKyEKhFyM{7}p1=Z69tluy-^(_np`XD_bRl$m3?KF@SP#|&gF zXGdal-((ui&4v~Dd5%Omhee+`liaN9kiLv1xfvU#?epU>&$5a6{4C&hOWEhQ0}&~G zSdxZOk*CsU8;Ks`c^b+kt5GRa0_Hl@Cz(qef=aL1zSYE%+pz0K)E28p47S{k7!2$r zpADHC*P@&0PnFT}_GG5X&#P7YL|4;~)_zUaU#i3S20?3lgD9)PEvZRXG3y#&e6grY z@nhG&PaES0UI%cTLwz*6+99a)3W2SS15FK*nligK+=t7ogcDo2xbfAemx(PMHJB9E zcpt}P;53IbfQ$2^YsSP$sZ}+c(&B6jkQFWK2+An8>dO~ml+|9E8_EKoNln+yIKV_} zWdN5L9dCW+?04W1OPwtZfyPGuP|0V}LbiB1@Eayqah6ynf>ybOqo9zELCwL4KyqnTck}qpm z5l*5ka>y*bsR;|gF2}UegJnwIJX#T~==JW*&EZY%6P3;^83nu6oa5>CrhGXXIQ!mw z*V#A}nNrU@ioJQ@KNL~JO+MyLz|G!pGw^7bJ}$RXb~t+gs2;;Wk7BxzHw|FA<72;5 ztZr?OO9@IePYN(rL`M zE-YWao$y|Zli5E}RhP?r(JTY12ddnw!2{PoawVi~GwQRSJ1$Gd3t7^(3WkEGX+hw$BN{{UH zWG}AO#Uy%FMVSFzrJ6F=KZb6d3+6$I4+vWKP}D=#ftsoZb^t53b(_)U>?D@{S+UlC zPsmQ0WO~OVUcu!ChZ}(e8MD)aiDxw4TD2ac^b&WSYRUlb zt+(pVXDv_zVLNrOJhG>9Vy}GCBG}S#- zbJa{8U*W*zq$!<4G-;u<`-&O|lrxpT6ddKAjpVKRV)a`bz9A=X4aL-uH#J}yoi}ll zddqK8Z?Q1m+KohgS>i3xi(O)|(J@)ZGC!<`x88BK6g`(qDcWkPD6D)baMYm^PwlsM zW9qWmd#elBm-1y{s5OO!A?Fh+`2mRS_87W>ePKG&IKos+rR&n&B+!upJHTi_SVm)59C)&5Jx?bsQ;;(1_L+SZPttopwhP_7TRK#-d zFli$>9dRyihBS^Ex&~_3uchl3EH!pR>3*J^!%~ASEj3uJKJH3dA{~@YACsQ`Xjob} zT&^OwdZ0fTeqju- z-L36F-NaQ<(4mJf9H%fISx-_3KD_t;!gWkHEbCvmQLKKumT~A=z+P%iVcToU?3GM9 zGJ@%GvAT^`RSNL?P=<3Ngwu-~oj(zg>%oLx{Wd+ng;=^U>ff+jR!8Oh)MLM=RGEROcTu`7n2;O;Z)?V|DJ zV~!BEx+$#Aw^v|ZWozsIX73GPtGup!-{Vuq1wwcTA%u{HEQAo3IF92u#GwwQ#6=9_ zP)aC62%!$4#6un85{J0dC1(gB4sjhr38j<}LJ4(=ix|o7g{?eCoZ9jBRl=Z>!4(|ez~vj5*&d#%0p+H0@9&#_Ja+iLajn9=dS zopA06;1%ay0g`<4)Igs*_j5N2cSHLg`{hTgTBB-}^_S zQ)ArwYk;-Rtp!eV?ld<_)bBqC5o#>le;C5~DC+m0hee$w*YCfO%U0fD9#Ks&u@8Sg zej<(&rt%J~yQW-uHN0uQu6t2F_&P?!8s3vEqL>;b9e+&()2amu%?u(r9;ZNL*KM^~i> zB;M=Fdre%Dzf15cX|JW?1HCSdmiqy+@PR(NDm~B#B;yqU(uz^yO7;LN|G-K2;Uw@* zkq;8<8v!*YPWd3|Iro9&MLABn2hPL#)P49Ac+t&V^p5c=Xa&D=AHK?Es~Yej%H{_U zS9uy%k%kGZ1ya(Z-I;V`cUniJ(J@*z%60h=S`~Do%~#a`n>!T?Tr~@7N&8^p1vY`I zg@~7?1~%zDi$fKAp=w3yep5xlRIPH;6uPR8BGVGLrtOJEJ=8?Vu&Om_X$P!zZjbU? zrTmM+RVA@Ro6Jbx(3`7_)XxJz;6L>5B%-my@9_Md|CWLyv!}73d8l7IIb2C zZiBtUg7n}H;8E{L=&%#l#Rq$l?zbR4c+RC!kRJRP=`Gj&3TdUmYPNK>f<(h6t0w;h z_d%+C1s|)4aWz*7LRWnSy2%ux-D6^|7sVRa$%4qpO*HXAMsDS@4`qssNPIhOL@erK zWaOa?nx$ssp;F)!1ye0l3ocg+Ef4(V;MTxz1@8)c_Si%F1D~@0(1pOi0KOXdS995# zQO>U!1s?DGn(^R8;uq#-ZVgE}Z>-_A4;~tB8u7Y5#D;rll&$MS*nX%6T{Ye@O8$o` zU{A1heQ1tLqjh~~D$x-$Q-C&zyS=ov{XMuvAkGEVx~>2-aeYX3b*YI%YLm zEz}ui&aSCB5cmhcM+5&TSW$}(Uo*FK@CeH+3N_12BTm|yHdqvDjmG+c;t|V^xL?JC#UBn=@%Zn zFHAW#87(baY$44}h^-}fi;m-MiVu^h3>XLe;W}9LHpPeQf%9-j?#_dnz?xPQ)Fytx zO;ekh^37PY%(sVUnMPdOAD#_sj;+YUWbMO?+@VF@F;l@O}sWe zuryd<&iRM8Kol*(T~PXfeE2Xd7MtaKxF5PvWLo0m?$=4+sq`q4UU1VFfER&LJkG*8 z=em;W=!&E_V6ki(m}RTYDX?jAZN`*qGl(Zym}(~jy)4&O0@*XHW-WWBcDZ+04$P%j zQv=;~C-1s6y3W=Pfi>30k(m`KCu_;ZTGEX@Q#%7Zavt5TJlo#TLp`&%Ho$AsB z1!;88uC0bW?Qag9L%QDLQ@b9xLGe)w^@9}&7OeIZSfMxtT^7F(!&;f(EMKC=#BuhS zlp~eAsO@oSR8bRY^uaP=MR(hTwWweto*58RPg?OS;fE7>l4y>t}s_) zjq_2*p`jXAB%P2N)f8aGqmo*WOz}~t0B019DzWxpWLK;jAGHQJb+D8?k0Sht6kx@p z&Vbe6qc#9%G3r>gkn+7e8ctpP2K&fd6UPbih@_3~OruMmD$<>wc18-YVrQ1YYWA-| z9%%-**bf9AX#utdb}M+jv)2PR2KGiUIlo8^gzK9-qTv_7TbR*h{}C$JBa4WX8fbCG zxQl^|Ca#ZWTn)C)x$A&bc3IF^ekp#09n4tq{(ht%)=>}WQQ%huaiUu2E?7%&Hcu`$=N*cYMXUurQx@>i8E9nGLJcf%i(05R@O#01f!_z#2#GcH%o)r@8zNyvIXJbMo~zI- zrELq=!H>%N0j!e~j~;+zJ*t3H$*ZaB;SEuXd^LTgzZxP-#ebB{F%QL0JdAD>Q&-y9 zI$Wo&fhd`RoYPZpW=iI%fo^%UZ()OznhuXLxko8s;E+AK%=jw&Xl!!)e>;sriC!zKWT6Nz9@f=A$Rz zla5?Q9zB`M)@?;Cx{R1u*B3;ra~+8kWrs=6TXsBp-jrjPOv(|)zBb)isdYCgdx)=& z9z6|R$mlBZ=mmAolq?83ZN{x*vG6SZfb{5PI)CobxQVpXeH;s{a7dKvP>WJ}ZztwGpwcUbJw;gy)xs#-^dPCeRBh$v(X_2VgX&P~1HtC+!^b=N; z_I1Zl9Pm*Ga@of+TES>kiO=}l&X_nggrq7-MGBv!M^&$Lse=C)nfn;kg9Lai3++uO zfQid()W^yZS6j>;s|MCOx7L*6@R`mK3&vw?IZVbYmzW_f9-9g&EohcQYusWxFb6D5 z<*`xTF^bk>vtf~rB+X-U94-m4(YcMhE_aK;xcaiGA8Rj+gKtqOeQYn%eIAT`z^g^U zka)iMNO?Mas)*#jDO3DoL z3(czzE~IgEuHwKop9on$t*&Syh^Gy=iAgzQ8pr5!q+c_d8l)`r zA~n!R<4$9-rj52ZOdAcH%*kV0Xo~z?> z+Y;8X#bM}}UrRcLj%AnB$k zpLpF4?QqjOfIBfgQEe{!y@}w-YN1KsO0`fOn4<7KR;a#0eUkMH=Gav6s%ZpRd@z}| z&otuvv+AHR3l2Kyczzjwi*Y+eBteE!~2Sp6A=z&d^k zEJ*7susp$*pnd{yB0iU@g&M)pX=Gg~%aQH+M!GFdvzUGTQa8xR_02LEjVJN4v_>;5 z@{|OtZ-G{!F;*?q17@}Bd!U{Cmf%1}0P5rAlwSIv6Y3R>A%kl(DM!Up9v1a#&*)63 zZ--70=}0QOM=~iJCt#g&KTiQa34VS8z7hPq0lt&?c_){Bd`R%~@gcla6!|HGEJqwr zu`Z_l6pO5qpJWwAVn5C9sFaPzE9m7*`Z!DacpalgD`4VDgEe49(MftmTjO!I-{a}^ zf4mOXw2YSSaq{u;c|}7>oUVqZ0V^IV^ooa~j6Oa)?c+RH^D{Qod|-3YP!cZ~tg$FP z)FOJNv+r>-9k(CxfRi;N>*>(-%M;(k~>N`9Nu8Z#=%q#3fN#F)0O@4g5F-80C_vB$@S!1zTNX>R#VnA9xy8cgp%);Ye+6~}wZUELb&Q*0?kNOa`E>GpM zR~zKkli@~Jm8 z&z0Gph~sD{QnKI&K^iU356;8p3?-aD_!QElV$%{|b<2}Ooy*SDMxZH! zMy93IlfNyUIT|U)sB|YoQyf+TDHGyWL$wa40zFA)P6O(cq?rNDbl3pY5lAx!n(L7D zpQ%t~!o%wr=>PnvI~jGK`_v2UP5ZR#Tct;kdR3T7PR=}=UbC4J54dT*e?Xj?uB3cB zK|0I~(kLBfQdz!5_bgJrl^|JWo`Z^#Wv0Yjz7%pQ%1nw&9A`eAmSBu6|-RtU0Fq1ex%}l61IC%*6<=pIB((*y|_6 zUh2wAfvrW#5_`pXVx@@-$|1v|Lt}KT9K^#sNcwB4xb_cLF8>DQu)Fj{6Ro(q+9$Od*b|%9ET9b@kxmmACZ$(st1E8>o<=!Z3lsY>`UJ=56XZCD>l6DR zQdZ$2Wl>74kW5lpV;4`uB6CT#C(c6W7-gi|T(&`xh`#!KLR~Mr?aL-k*_QN@rQH*k zT$=yx0!ffARwtK6caSG;!M^Rfw}E~HKJg_Tb;!|B;u?n7&<#UeJ)VO)midR(AWr?H zrJ)>oh0U>n65i0pyrNUr#IxM^EEC7`GHIiGvD~H6&?cR1_t%EWNUQCd)ldzb=iGU& z6V0}v4b~cWXAN*I?o3ph%g#Ec+jmLGtBh2kocopocG)U7bOCodcc*EkJeH1Eo>^O6 z8hhNE%l>c|UvD7^(&$e8!`(=a*k}149s#nT3)MiMna&UI0J(&q{==`Juf4<9SR3v} zhx?H6gfHTdiWL3Htsho8tOYh0OdN@-*bhgjGoK)6#zD&sCLN>C6+dJ=btKL|9P2|z zp8|fk1vWK$F%9m{${0+{vtK(Z{8~?|{Y9vh)6)rTzP>j1ui{6SIm@OpJA!R4n-N_gB%p z=0>goZ(}67R+yNxAT}b68)+lAVcl^fEbrfcg^`hJbJ@nd;PPlZx;7F-ma;JeHQVwx zuCt!;RjQF4+sKZkCN;8S8%MYftBT1uUX6QUQM?F4<38wgdIlyw>B=Wf98ac^WN!Q$ z(%^J-EKH6~2k`_C&IDfB#!;LaPh*<+%P-FF#>=rX?-E~dzb=?~kTOzAS7VUo7j3X# zqhr%Stat(c#&LyI_JTBTT7E!R-0LgAJF)2?zUf}yG;zvnDI=BFK^mJTH5%`_>ASh? zlZs}PuZ@VGWFL|lPm(-{Q>!eg&Pg@UIEUWLo0cZhE$fQ>KGdrh_y#JrDK*H@zU2ox2;;W5Y_aO`eo^ zt(#s8Txa{@Np{VXUC!+?r8r`y(_>+p+liEp#RE23F?+Jfb)(bPbdmDCiKI`q+Ae*v z6^KP~d(dIAsO@vdLrhx`-*7$N#!u$xeALc^Cy%-`9w$sjYu*PPw8_jJN5}CF*T|~F z4Zu!^VLs7ro4Xt79t+^yJ;1*7+L*W(mfEzgg>@PAR@!_-)u{iFc z$eIyY(b+J!pI!ukQZQFRI8kI*;(@eXv5u$ho`6NEk`W5o+_ObSB&N2sq(0*&6w7}5TDA>I2hx%dBu-Si< z-q=4n4(m#!5W*b=dn@ai|8x<=6kz4xT1W+-rpIVdW)AUH)&{|?r8MzF4ru2q2PS(* znW1BTzlGkTsq#R5c&m3E4Nb><;Rqc^@%1@yluPqJ)aF&Xe|wP0NU^MO>mg26S)L9t zRdHJ(6@F`M*5Y8w`ANgnh`K&1H-S|T2#TAd)xe=swdN%OxaQD7-6 zfWbMZ!N*YGX|1dI$CnHu}Q;HzYf8ya)218PS?5XF!OWi+ZI|_Mc6eox! zryS240xgM4We}6%Ve0fNW`eoPR5+=%IX`I2vt4oNj8j<1J5ZiF?@ zl{tau>+~BL{K=>{w9u8gU;cQR&Hl&BfGy5#F{PA0(jiH>P5ihE>Q04w{%{mV+JN)% zY(Ba8YrLL63Tg#URtt54E7d}m#4k8yCVWQonbG`-=G6R&KrSE5b3T_3lwzk$r^cL` zf5xT7g)3T}G6t+*z%odCd15knXjvBRWks2Mk2i=qFgw{+7?H-iON)o&+K<{vlO1Ym zQ{3VdAUg4e)h1RZ%CpU#MgWkuJL-y*M>Xie6ODK@0e0*ZDjIpDodVfr&ouK@>Byc2mcY900gQk9XTcD7tT**z!7xZA zfW5R}IMl_rnO7NQ0W(~1fS2ofIgraP8WALmM)0El<10xPv6C0+|K93`UZ&)-Pp=By zo?gXEYv}eg8~o|E(Cz6qUNp{4be?9Mr}Y)827Q{TJ^gW_^D!^S6CGyy^tnWbTD)Yy zbPAESNmW`{7F3!%&bS2=n8g(PLNbv?Ur37e51-i=k~RmjoznOW>BBH3^P)lMxbU<| z7ZUG~9)az2}|L{3d%7Kn{dvHn?kJxvQ|8N>FKD8PA!>4X$ zK3)Vf`I>`d2Gn337tI1L0j4efWUA%nPuO}3`wc!lmH>`(I0@M7ki5bfoDIIyd2#=p;!zXSMtjJAu{02vw(K+m+pa0K|{>*q41bpOskY{F*@=a=O zu~LOX4lJnkl&JkCUl!lQ0sPnWDId?2S>I>MfU8oGU?U~#P#lSG%Z6vNZb`}13K3Jm z5YwW(V)X204W!}cGsAMVKC8_|>-)?Un9vt;pB`!a3uRv_8R zYAhar&N}xj5C`BU4hRMZik1tfvzy7~#q#<9(U`0@ELU^d*`KgknaWQZAZ=DP`JI{A zFPh*_wqR3Py9L@|bNR^*;C_Z}Qwtq*_Cesqz`h8+9yD3SpM2q6z5w0|U2cVCs!cl? z?UV(?dodc@p#$zOGy6%uMd>HUffPQ?;tsR$O|yh`Ttb0`yM(0FibYj!2|-?R!cLqe zCxCbHFuFsSm^F|xYk)Ye-AnG~vfQF|Ts@nCvM7&L3pIoDcQt9k8)1f?9bw}5CS%f3 zb{}|lluM&CJ&`i;L>k=(5-InAL>evFv!h{;v3tm~V}RWAn9H-I1Rln7d6tZMmf9le zDyS><;mKGVkQP?v*)Do*aRoBrSt@7rY3o_B_PTT*urIB97}imj9tB=V-MF4*O`hc* zq4}P4X|!U`O5vpI25ElW;2jl&WwEc&maq)Pcg*PCI?-dGg{pQBtATT!JJ+G+EXe+d zFSaUXeU1{gJ-Tnjq4A7$o9Bs&x+1{7g({Qmu24=C=ndt#5^o8~R#P>RF&E zZ^hG!SO(T+w8p;6%HO$Q>66AJU(PDve4mHDQJ_Z0Q<5+2TKOU$kj8G+!s520dDOc! zo|2BOumd|>8e4`#`sTB^9{-i2vNIh#*;*x?|2p9u-gBW3F#inmIch><{RX70o#0&k zm@?= z6>4dNjc<+RE*@fe$yMTvM zbNK0LSZCbOnOwH10cGtrdk{&?2}R(4dcnknybsb#7WkiDa%q0g6r>zwi8Q*enmLtV z^d>+xX}3OuRcT4wROObVMf>Shm+}QeBFz^N2D|K1wn-w*mnK+*t7*1PxM?;}nO0ty zu!-4ca!UrtrD$N2F0u(XvEw9-vL%r+;Y1ouIFXWRiL}@)EX!)J9EGw;CYP`m)i|^U zs2!>XTJCNy2jW;1ktWu?>6-7%u&_=0VEK+}Is)u>-H*Lvv@@IT=CaRul0TOLW|duP zp%$X(qKaaNZfATJl78Fv}iv^5C%FmAgs^rtK5$Tzlo;osPT(pj(9EOhh z?`|3F3+PKr#${j9IT#=A7NcZ*z7`gD1E%%-RHzQmCaTS4e>ORzKk`Z*nCjc;zBK~% ziH;n3{y;9foJ7h-=U3P#$>&!9H~3r#^Yg@Uo*IZ! zsmZcsFcp8z^!$9-XRRjLpnR@km6y--j?oO4&xZY}{jSII3oecJ^71(@#abebs>Ji; z(DT$|_H;6cARpf3O;n1WCwYm1b({>G>G0D*-uw*d&+wIa|4e48Jl;R60v{yar%ME& zBfOl|%MnOl{+-v$F-YI{UC_&M=oBxP^l}P1!^>s8;LVC*yjGMF zlj#*Zp*_6F^ol)DFE28^q8HLPn=-wE^<8n87nxph7&^&|nLe4zzBrPX_;)*PhIN)D zKT{UXvu_lC#)AG#TTo3d`@&-5zCa~?q1CuAw3@B>Z>!AGd`kf7{LJ&_1uVVLVqEFG zz$PX`Uf2kcH-eu*syMl9b34>w@aLc8vOhoV@Eq{G!IrVPYzyZ;eOqR@1JN!@rh=C? zl?GeYpEdYY#Ko-@oRuWSiXKMYWblPez%IMv$d`ZQT&2T5l6?Po$>7f?;J{pmguSKQ zU`si$!qi$SfR)Y-ZbccrqK4tvvl?|OL@WvG3jA5o%wYzvmASt~^u+I(}JfJMy&Kc5RGbzQ)~KmWuvS_p_z5<$Vq=0lh|N{7*E zWr+?q5|dM1@N+bO-k1oeZ>*4MRmD7MTnZNieXKHvWspbV+gbcF0rJ~DBSPk>j z7sGl4=kPuRCq4$7_Xjsdx*N6**OPTnxDn*TZ34Gvf_${EN72@DHec`{vcXo4;SNYc z?kHUIX@W<<#G^PyQon9{qWK2l&~Zz14il3MuABl~;&2(T)!`ZpQw`{A?oycq+n{!b z8kN|?O%^FS1y}ZA>9BoMxbg^aAoYcnV!yJt@FOGxCiS!V)P%SvR$5>Y?Pvot!II>9S7m3D;RsMy9jmWEPa~SG# zX8K9lsH0cCdr%K-k_Sn5-X->UzSv;mIBi~Rg0 zt5bV0VdY&$Nkh#HQmrCWR?R_&wOKU>nrq=%#b#f1)ppsctHA5dy`Iayw9)Ft zOPs_naS#&9mo{OQ(y>qt#Fm2FIte<)uYsw7l>KUQ*hG}0IoFd>XpE2&bFD3)o?0EZ&N{H-QtOg>L#O)`JGmX2Nsay; z+7|r^A`#V|=(O0a+6H7H3GS*LM0BcIdTAAQM7#GYa1tJyQF`<&YcJm}nmgmH>- zU!DT2GVaS&K+l$!4*&@Q7G5R@ZMD|7trl2k+_pL(3(RP3{m?Pzl4P&2esEu5{a#`H z=Bt5N6GHL|d;FCf9{n2xcdc>PbOO6P&Rqnz+PJS)0~uK1X5d#lh)z;&2rkLCYMBLW zRV$DMA)>2T-Is=2y1q0VIMUpDX(W)DbE?0@%wIa}+{47V(YURRzKn2(6Tez6M3O2PdFEA@-7ock51sr4CwlTo%&fO05t=Ps^e1)y3;7*1rJ-9^Y71mGn zhTZNeQ>Y?`m`1L8WX`RY07d}`UH`|2(? z!yxJ?i|R;*Mdw;OTe5wUIom!7cv~k|VJ;?KV$QZNF>(B<(WDE_bUV3>a!GVpo3zS2 zY_D=@bkG}%l8XQBO%R#DwYQy2Xy5JJ3qYJzhl>!#qZ8b`S?P|oAYGlF)ooa;73X{V z9q21&RjxLd{pAeKcXDfvkBen~$5k{n~Eza(nv7=0~~ zbi`fj$d+P0Nypf8jpr50I$|ceCI4~;(gySVmkq$#?)fig=dx>?@qBMd;yOb0UF@D~ z*aP&{3=YtDF`q8(t`jiD)b%FO)10KY3_SwzOA`E-Y+kWfK{6+HV(w0CF7ZMgIH8ll*u@%*NyIslNEa2P(S0sR?YfsJN3mMlj6DWsmDg(E7N7rG@?q_2@Nl)z zdhkfKP?z|L^SsMME|oh8>zSfns;hMF2u7moqG_zPUAcB`5GTsS$HW{|i}E}N~(I@3KREPR zU*as@4`-A(XZq1N>P{R5p7;jw$I;|uAA%L<pHA2 z(yY6=?5~I;5&9Jg{HqG=Mkm->iK$>j=vPBbT*x_WNy@QJ8Tl1E5am?-f|RY4Nb^|* zi*5QV^0jzPqd1o0%S7U-Sk41iTbs!&1lNL<-{j@5>#WUWRNU&p%ODld0a`#Nqu&fY zp_f&VelzrxURt3JUQX+!1L_N7^ns6rF^+(bhcS*5C;22l;%9`cJ|kEg@B>ih4S>&9Dg5>m>KVybU*xS0rcLpvQR z3g;Z22VQZA7ny4gLH5+}U&hhUVVu|tMI5Qz4$}M#lm^g5PpOH(W=yTdGvZfW_z-LZr|ItH+1v0dCO{YIE6+qFwYWb=~3f++pH)7yarO(&H}u0(dv&R|iq( z@Mv}r%?>4ebgG%S(v&+YO&q&ztf?-Y>e6VTI*55klg*%`38?)uTrG4EJi0Jh>$)QC zn6x>PqaxLD5El1Oib=;I=rl%3BO?+Iq>YGmB5mX}EJ~S-oPo|_L=!)o%l>*i+x2`# z0NTXM1-)#_W!LqaBpORrbbhKac^vW%NpIO=cieJm{y0P;=^eWRblh=ilv*aeVOM~T z8;rh(-AEHU=67Q-^O=2g==h8t+R0ek0BuaAa`49PK62;RWYv5%>diM`%s$bAy>27a zFLpHBuNdxY`|Q&3HJYV1aorFxpieZ3KH&)ZCG!gEzwSimD|7GHSmH0TN*1YssBLn3 z1XODiT~`ZiF#GEofO9Pp>*fO4$?V2;8g7wuWks7>4YbU;%Yp1Pu8Hfor^!PNp=nXD z1iPSaAFUhMkA=utg=M)#Xq_yPf*O@up)3^wR5HJyv#uZMG0UlS$AFhIwpZ6(0)GJ> zt~Qr_tz7&fHI^FxUmFHdzavM?=ygjXld`_iUNGrZ^DU7sE?9o89CH=s&}$XI-3(k_ zB(C>?>rEVIuPIOSfmwpr7CR&uuXQ*imY9s)F&!!ap?YnqOQT|%NLi9Z8b!~fRhAR4 zRk?0H&4bUnB1G=@(yPyB*9W|i4(n?YAMx280dlR;z-O#yiLR*js1xLs@wMYFjmp<+ z7hqlTQ7+}Oxq2;Rq%84GALXWr;~3@$Yi_zJ=cWT^pgdYFv=}^DEwmI|sTNXwtX2!H z0J9TvE1;F&I&3REr!ZRh2LUbaKM^wJ0fB6kd|5su}u|8!RT!W7I& zcGVKZ?5f;+yNu?@@m!m8+e~TD#MqSF$#QdD8ZES0M5?I;X;j*Br(l0#8!z_>@U#zd z8hFOJXRzqk!G9V8>@@B_ZSryQNugKhoQ3zF&gHV}o0-@|wU9zISuM2MC%=9*cnz5F zu3rPK1ry%&YoT>u!n=MQv{a(2Un=nY#ns1+gdGLCJOQQ{+NZFN=zD^0}L(uE&f!9~tUfnPXov{v?nTC!wrghxn zI$O}$X{F=!oj{6`EbWGR-Sb}5M;SLUx=6O6a_5!12SL*H zwtR1_H|0UYbI;SVOLqWRWI1Qq_D0U7(Yg0VGptryr8ioE!G$*O7_Ijkov^y?tNAy& zfxA3DyMP?Od|_`xA8_sgUhyKT0&nzKNBf7{-*9p2hh=ZVgxVLiIjl;mzYM}|v-#7t0Iq)ZgtH8Btp;|C2yixDd!1Zb&eVeP}bmI(Y zRya;K&f;Y$FQ+7-LT&6sr80`NyyWy^3%+s2#DnH=&em`v3A=GlI)$Wr*4EIZv(syM z5h?c%t?=jQmZhW{S(=UPCAP@MF6caNMW2FA%=W~sjmJ$K?=O??aJP22G+MSq%D@|g zH2UEkgHDv#iH@cy9TqSSKp0w64AM9Nl5%J-QscUD0L03g z^i4|6n-mSQ=FK|qxHOvISFmbaTI(HItT(4Zlp*O%gOpj3&Rtk@ZQX2s+Z=}ZMaAjO zvvfRffqoNr-@Hknqhe=b4x`Alu`Z|5(^%AKg7oHRW+V=~Nl8zF^rqJD8cr8H?X1pa zJDDBn*-02Wr{cgwwYlu?_1#&2w9?jhx~+8Qbdyu1i%iW-dDh9U?4$zm+fx$IkG ztQfsD2H0dCz10Myb}Uqr%WfKOf!Z`2xXRQvtpajLGq+8jD< zfr{CK4?V~1gJjRKTy`@P!-vf?p}Y1`dh^{}c1wp1v85xI{q02S`&)wdTQ9%A-IdF3 zoo{xx&IeLnu)FnKF8l5#Q+sz)F1u}*+1)k_NKu}rCYSvkQO4ij5#`_E~=!J z=Gjh2Setkwbj~5b7)7TOqn)?Re&;QsiY0X3!qQuN%$K+J06(`;-};=WHkw|LVsE~62hcNuNldb7K2JyFe=h2Ld>hph(v?l1vn z@>tl;6~Ikq;hjxHwZUfI(*PW>(DV!tXZ&RroAGyx$72ie*uqls@2GA$M4Ttv zXuq8dcH3z0b`xhtqwh9G+jhb%Y&$`m*I1VSZVm9Z z`TM)u#F->ps)jh%Vj+q%E73`^Sp)pibUMEzxJzv2Z!H0Oj=qKZrXe2DAwW_PwN0ep zrjwrKCy6um$%MCSp-*j&Z+}XhNn-kTk;Glhkx6wi$KTAdzQ36Tyy{tgl{hc3Id(4q zdNy{Gjqi9o-a)ko9~iU;A9^;J-JT5unBBwrZJrJtH)ETR6JV+oQQAV4+H%vlTW%6y z4t@Imb_a20f!PsT$3f&9=C_i>@6I*5@6IK-W!86F8E~WdyKN)Eo#u688nE9i{H~t> zlVsfax07VseL~xrkg7@aF{2ap&U2>Id5+*>318mA(pzku#cH5yp5@mFZk3I?sS4O* z9&YL(xSmUIlS^;!F$-_+A*v&+Z`TOmUYl;$UV=N)M*Gc3-~sFVn*#)Qyp7g99>^4! zc{fvdXQEknXCm+ui`_e)5a-!up=UPmj(OH|hdAReYMb$QOP$%>QU^R@eYYGTz)P*e zZ^^yiUb4}Cdx-!u3)W;Svv?QJR5$SKT}GpTzsqRbe6($hwv8Q3M7Obnf49~w{BAA5 zt+Wi-UJ2Z97PjyAI7b(h-#5c*v9tI0ExGKD;heqYh0Hf`yT$1D?Iw;(zDe1mq{i>b zzTdMiqFrNB;>%+Fp7>%q{=oVBeXx6N=D+WAX|((r?Dwn!`^qeT0W5g6V>k*dA{T}o zEaHxlI6Yb|bSXUn>pIp9?HFs~*oj2S1QKa<@!K&5_6(cA4&u3kaupTd9W2t0%kIQw z;1vz5HkbVazkUAeJBhy}pY>&%GMya+3VBJi1}42}Vcc<(9$#Bj{=g*FF^Wpkk%(GH zl8j|fI>w&MH!PAh>L@e$uT+9tSv&{oYE_Eo`l6|n-J)Lu=;6Pqr#y;&5RCGr9>r^y z`}l=v7u*dUiM@iRj~iQXmnL+~yBj)I;4ZKN(q<1_HESVsWro8cbHdG>7(Cu4q?WWrNvtN4dXV70H}AF6ZNo%4uAZ$1_ZBQz6rHPANtma3(% zeyv`=sj?FRim9J9C3<9;>CHh*Qv6{KM8OuD0%7LFPR!ko&EdR1bdVeKiH8~+E#8yK zU@W}`!$a_TMy|rY= zZvN=vJ<14b>5v4gikz%UPopP#J7c}*bD53D*}_8aTp#qv#=PG4STByA#@l5dI)gid zBDFDNDIj-tvb!}x7nX56{z2c)?l7u66%nt^dtZy9-U)Lx(;2N6YNtc5+#>G8#04G_ z2_ntibQopT?Y#v+BAqW6l0Z!nD=2<*Nz1Hb8E>o0I;fi$tIXZJoK7T?CJ%K;M@6s%+9Dr!`F3+pN02B{9WMYgYx+R zq`A_hp2;X`9+M%4(AOcWA#NG+#Z4Gj29Bki&3|=*WERw!DhBWMu(VrjqrSHVs7SI= z-`fi5A3nRx{(kQqbe)&0dbtjLl}NtIWp|AWl3n9?Sz;1~v4^g*f5^7*dxwC>G&!{p z6W!dP7WyLazX0D1{F`Pk3I;Nn^PAjzM@(Fj|HnNFQg*ha45s7yJ?y-9+u*Kpbf!Dx zFu>cwqSGlDXZxA@NxS-)d$$alIy(7~2Ay8t+`YUqr1pKx@{aN%#% z7UkD&T@jW*`fV=zMcGzfHt=GXhYh^!NV@IdWgzJ`z{@9z0)a#nN5~{rc)PXqII*XqVl7v zve@otiE%CvB^7Qwf0v+>o^r25a}SBb=U{#Ie#RDtr9sARPE9$guU?%&zGfl3tg zqRkf+$14NDAtL#_g+(bs&B73*`J_k6T~Si%Edf%r3rU2OkVvYj1!+9BE_yH@B~uTy z)uyIuFCDmvPCnb{#CapBoC+3ID(xZTmP4H7OK3Jge#zL?31m^k<^0{%?XU+(i4>Qz zxN93Qv6OEMEP5P-4qHv#bvT!OzmE7u_XrbTaeLS3dDr0k?78>HI2;EgwHWaIS`jcA zC|IY=P^ESqLrNf*4wfz|NTY*%*A>`&hSyZ?qDyQv$QX!F306bt@!qe4RqxVzV1uWa z4auvdu!^%>mJ43J-$5@fHX5NDQV40bL)1>e{g59M?<-{e&OHkJ*x>;1gu|1-PaING z-aieDhGOB~_l0|Z8*saKq&C05-yz4)`>c*e?T3y!{1`ak@C1 zlRStE+bBp$Ew04xv(%F2w?sj@xFC(T#BNe;H*WD^V>gSsduw`N6VJkHM6*mB4{Xwz zHt_D5E{z6Gqzs%$ zx$GXY0tg5IQXE2k6KbaplWm=Q2h4BCdQ{ z>D-k-d=Xc^taa{MA2kkC7*$p@>Il2Ld@uq?O%j(HA^#Ty|8WcM9^4{qD)~v&_Ef;0 z;Io_PI!yGB<00)2nhDTkhmF8SU_t!@E*Kwl+Rf$zs__TxWD4B}6patq{R`DV?0#|C zogdtA?hW8==Q0&}N?#ia_o6lbfa`{&e9N6kqYLDoMM!s?Ya^nwTAf=i<`|04>2BoP$6TSz$( zfO{*TX~4vV(3TP@pjN#N4|Q0yL2JMj)@Cy8;ECXNXaiVB#|B7|RsZ-|>?xx4P@#!M zU^cAA9|LjD%I6)>sc4t-s)tQ36C)s`#WzIG4qZQILbDvo)KZ5adp7c42GIuAAY{3q zJqj6wuN3yZq|x41rlJtU;uW?ydsmuxkg`{?L|PoxtVcDAz4F*}7=h`@8O5PI@+(NA zC?U<8mLCvdmDj7G-q>^yZ*s4@Oq}wX9lW>CmHU7fP>!yCdnIPSE>UCR!s_W2B3m^w z+4|vRl%u2H#FRTJ-!SnY<*S~BS6v#__Yc`lA6A;_4=aJ4n2x?BG%>4;=?@#BR);z3 z8PCr;HrOcEk<}&bKMWnCC|bul+dUuFxtXXWepn3)DW{=HgT)5#m``ZELPVR8e7Gr> z-8X>W+9mb`vG4B>KSMms{N6{6*f+-^DY&o2;dUUEG)hoe-&bZ+FdZVmZ1zcKr9I?okG7@ra9D5eGdD8r|l3n`(GRUC}VSpmrYao)5o?zfBG1B z-IDK5*Rjv2EL$%z=&dxaIZ)%=8tgM|64hpfTlBSAbvw74*Zt1j@1sWP`=`$_`o9st zLVS9;fA#wPu6G%bNY7UTQGdDL^=^Zwty`MPu6X1Ev*530tJ>Ej~=kY*1 zB!?}+ldSKbxuR-a#chC=`Vuz*n;mKih>JRCwTTPvSlmm2k>6t(b%71ly8wuX=-9gA zA$PQ1dHAt&Ss3|3zr+{WmoF^5xYHotnU-!iAZ~DgzKH|T-m?%fYBJP0hv(5_C<13g z;XfS`^{7(yQV!)b#r@3=o7LHZFC96r4#9brB#EiG!TD%OJ|fLO zB6=J&9}&HeTB(H5UB$#4b`-jg80aI$jEa{@7g<3vDYY*;F+OTVq0LRV0Z*l?wTaic z>2)S9i7LoPr(ls3@{48v=zNi15}!#s6Iiha=jnC9jaqYN2)DiE5!P@Q^~KvEi4xb4yJe&%&fjQtM(Y)>L<3dr;C8rbk!Y zz?zZz&a1Brc8^cA2e<`CG`TI%X*nD0k*C&mmpiqaSKsM<{nj&1A?vuqQm9WI_d5(7 zqqR&datv8VEDDB>@m%C3L-V0D=_nXF>S}KfEOp$@4Anp!r}3(uhDC;vfPH76vtb3! z=CXfT0-hWhQrFLYvY(qcE)RW@UiWET56X$IA|)|trpb_I*e;2-r%Au?$$a6`s30a% z%^*ng-%AI}H#1rNxTWu=D;G~t;?jaRI>5}f#7bppPqq^Em&s-bb}|ROLu4SK`U@HO zmkz=+S}ml+9jg{v4<@<)LY4c=MsS5%XcL&^{>vt)8>}I^A>~)4T4)=%S}n8>T&p&h zJx~uGUF3?26yjzR$4g<3a)aPn^_LcxMgd8rtVAM>Vtt?<1-1y2JTM)a$-p>$U}i3R za3LSXZ}Y?agKXP_i+H)C7gpt%6( z(V+i27h1-P2L0D%&=-m13tny|l3Tod$&1|i*DrI~{xQ6C^3p#B()Tg4);}(n{qJA% zB1ixG*SYM`QM|~VqobfLL2`5pFWVByHeR;#A_GUaLw&r+ouhq_eiSEbM+YE<%B&Hp zqx#hV(>cw{xkTq2FG?3VdX#iIs_4kkqeSQERbIOEaut%JJ$k{>V;Np0u{m}* zJ2nTn+lSr_WaxZFOB_U+hY9%qBrEzBX(TI{zx0KmkTk`C8p5(AAq#C}Wb8K>L8I8n z@WDpP{4P?4&5_X$^}-O`yL4y|b7}sd4^kBJzkU^1kx%8{;L|ru3feSl)v-w}o9{enJ9Z!l~kFtl)hWQ@}2R|8Au4~1R7RQbiQ}$@ZkbcV?zbU!@ zALQP|Z&>(m&-1Z^V;ki_`QR`!Tg6A)5NUBBiJk&E%BBDB4dj36&SV9WpMK0{f%2a` z36dUSR-E3H9HqCu{GJ_s7*%f`l3#IGZ9$aM8Lm@X=Iia0@&5d|#-TuE9Tnbt)im;JYl-ID$-1DqV24q_b) zh=!ZE;Fn&ZDXu&PxCrI^VH(6!U3nU>4TGl~O{xp!;yej;Mmw)-a8iVy=TsoA^re^z zRlM>!Na3Wkn?$ukYGz{Al5 zTh!TX+MDqcqE!x$_-jM!E{t_S)kLfdu7cJ%To2sk5R`wyjY5_Pwt^u` z1R;)#dQ&Cjq&(>xoDfJgS4k)OI_n2V_$F>86mnn2NfU9kDp-nhq6XGHA6k=G;ZT!U z>rj(GC-!YTEXL82$T%?&3^5Q4F%S&ug2_`0nCnxM&T@y+X?GZOiWjJ8)5{!drkKYM zbxJJlqVa>JZ2n?}Xx(e$dJv38yRvrhB1FpHR04xDs*Do{D`Q$=m8(>*V!vP&M<6Qw zrMRl^LsWrUz+-9ShwP9+Wycg>ais)Frp4C^%yifQWc}lmfRo&MH9|}DxlSS;GPu|^ zSjsRdP%9SFh|pCNKXlZp2g~^{USLg!_##pYGoU#>gE_z=GgDxZfAU%B%d!a0gc=;q z1ENzrsc5l=gq7CH)axU6{aFF_Doq-! z5ILp`MDbdNXRJb0@1N}4s_HU)Nz)389K(U$#H75rlt5r zb71F*D@Ut6_NrQQovT#gpi+lTP?y6lV7K?}2I5m3u34~%phnkG#P-qJ%F;ULt^;=Z z?0SHx$DRr=a*NstOI=+Ra+7nVv&Fe#qVebmRrit`r@rY?mg+;Tt|TKRj~a=X#|!*mZVNe5o~~15yAM0a*h>|x^&2ULFq7i!T4d% zsD6xs(9v>-aRh^oVDeM~sywb$z&iJ$4v6tM+T&nxz0njWKp`2bfi=!m*+Hi`#8H}m z(+#<7@U)3^@vLCQPBRhTQ|ybM9OTW;((D|#Xi9*o_zvYqL*tSPvwJl-e^ObOhrkia=a3k8t*% zR=*=qKQCwX(huqT`ty2`SYOdwH!+eY)I(+H$-#@w6y&$2aAELjl9kG=W~jxX4>M@L zM0F7}#d|K=&YyS`gBhJB@e@s7SD)d?RAyFalDhh=fLeIDpqCa%KWMt7m$i_7Fk{`W z@S;DIvu@XUxs!Ce!_8WMp=8|<CB6nHzj1iQ>5+?1MyE<#D9XRA=#6 zw=)*FAez6vK!6te_X+$k?%$Tjdr0rl3Ky>cs$yvC#ZR;|^?6_-GIfzh+9xVlE5LQu z`V~$5_z6io8lFDDNL^+s`GdMPYcrX~z;EPzPvGwX>&B=4@iWm^t`Z*mUrRd;TI$f1 zQrlU&=x8rUr^=ypmN*PL>JUGiEULZZAh|73;&v-ow&b?>iQD4KT5sU@f|Srw|gy{ zlbJ!ewW@N1XTy=MVl@GxEEf+@;b~mq(gif}6H0o_isIYBXd`18I68K@Efm-G=m0@l z>81tvAFf~0OEV?ov5N@}h14{`Hqc zqOQrqsw@E$U*v`;Yo zox_d5Ee>}8_c#RE)4+c{(j^34^NF)@DpFQfhD97%YGjUX$e^(61l;}4+OftaB`9yM_`&4g`05U`P7Y|GakQs8Em$MiEWQOVY zMPvYw877HL12XsO*F7WwWbW0kuSf#O+*ckXfXsdRy&*{eng45Ikl=UWDU`7i$`~m_ zlPO_2*rznoD*UcSPz#yOF4lL}3xm#DhiiGwc^q>T+FQmg<$iY08H4vwRqpW}SjNUJ zBa^XE*29#^JKzwmXhT?A;LvffmAI4en<-FNXlx2_nMr2oRpSo3O@J#5-nWWTu}@z)Fai(ba)dD* zKjCmH(TAVmn3@Z5Z{Do`e^~{2s19fZv@+uYo6rsy+_wY4r-^{+-FGtxZh~(o0{j}G z!wOTh87A+hLKIv;c5D4@aQUaFS2<*Z4L#}bB>QcosnKYeq;}tSXoo|sQLlBN z(Q;XbD?oBweZRm>zLfxm)zQuhGcvA+OE7s#$Ov1Q3Tr)DcSE#>E+MoCXfs1s5=IlS zXYk$y%FfS&0O0XO!{V#7kp}sb84(VAT2C7ZEN!%|Xeij0HWDOHNk3yTIpS=4Vu(T8 z2u%iUa-0@gi10`!I|ic^P1?-RTHMHSAd~c4EXX-NkO*AG!5r>=uH&TN32mLXcSewQ%B=I_2F$kUWY&$x**#({cl) z8tX2zoPP!QMZzaZvtK*^Yp%ljszY`FnbLma(_~6dB>WS+xE-2IX<`SEDdo&(T$;>1 zWuZSHbI)kw(`4=$pYX@?QtA9k;M9aam6sXLp8;%4_>H{y1%f8?T}qw#3CMhRnf0g1 ze0NpCXDfV{qK-c_neT2)_#1iYaz2&myQdTWX8 z%#LWYoYM!MB=zjGTqZn-Go0wUS$04>P)4fr|_(2t(@(hTW7>-%CeMV(w?8 zt=%gGS%A`N^PDDAI@>yw;z{Wehns-i4!eQdt#632CTvk1YuscWaFfUC)|dKhkSQg) z_uwh8><(7}?nS`lDj>+Fqj-vImNpqoEM*Vj?KzvBE<>g4&L}wF*-1G#YOL>k3_O*R z%8T!?O<0ugkgoR}GI-AbkYt6M+^K-NNDaMXT&vFP3b=`zf^w6+2$Y+YcfsT-J&A7~ zX4}jZ1;T9mm%1dVElUauvW)l4bl3=FV~WfC?^$j+eorf~%^^8>4-r{nP39iod^DMR zjyU%SaKO$Kk#e*eI0y!KITHj7h#?n*j4_RH2Dl)^&|i|lNEJaJNwE5pyS+m5tvz^V-O@o#rr3RDyP4+u=QxzjTrKixN z1QK0M=^l2!!e0ildjvHlwxXb>)ZkE4YIYd1fey)Ii?WRn>)+qIXB)Jgl6D#~Aaf7j zG`M6BFMAUSg@7dr5+%h2+r42A1a&fmPZ!$Y_925`);CLKqhL%5mH?TuDT!nXFI9=8 ziWhQN>eRWi6_$)NnX(p}OWA55-+Q}Jjuz!06SExbaYZ&_+3v*PZmSL6Kc6y%e|3%C0#($w76=-)z8EZMd=7x3D3!WdrE>9x6KlWDjwum9dCr zpExASWmFGw&q93`_n-ObMoHofQ{2K0GDAsL0zC96blRX9WFNx~KE^9BydFO|bSMWjnc-Ay zjtrX2aPn%tHJRaeO`Rrl-$=_{n#_GHoDQ8a5UYg+8pTcalT%4tkC}0A;zaOeERZ9W z4vAa9G=V1Xl=lUN%Buz=a|yEj)qum zSqYZZ1WUlg5y5qC379`&wU_eDgfWOU)ztB4s#^*!s5Qm9m?``Iv%} z=U$4$z2mF~+{;e6cUr0(3?nJ;B@>s>NIKP^HXwUN+~m0zllS(srdzfB`XP>PR)oga zz13P@clF7yy97S5znOzWud?56*c53pLvLDOX);4^+Y-@ahHbE|L8Bt1g`>#~yI^WG znR{DPdq>+y^eEhgmnk_kK&yFToJ{5=pA&~>g;ct%rG*R zP|{?E?Q`xv;4$Z32Qo|50=dgY1el}`FnRcnFEezj`O0^Es!_4qL%U#ctVLgz+_xK( zpL$H9KjLzs;)X9w84WL{*pK{f(yZjnU+R0nGy5tRHVs_SmInJtK!62 znal&2dYGk>YYa3#m1h~YXomZVjx0%8oapp|!7Z!sds{g!r0j*%gR)GIfO4sLSTD9O zSMmHa3PeGWLYtAnL_80$z#Ui$#N4;|qOXj~=~c$9pn~{y62H{r+f1`U{w-e}OS&+n zY2PLjLVjvsy2a7Na)_67ql#r#kg`#eaife1QvOxxf;cKtnXegfp)KP#4ZH&BatpA& zSkk~z?v)%sdNPw;+hMK!)Bq>Kk3Q`GLM+&{F6N2;!|rET&8B2HRO>KII|@D{XG&K1 z=yJp_pZfB+gcB4;XzT|VOROn&&&JDo9#J1jsr(QAODe#X)}ip9S)L-ZFjg^m>DUX( zsSD5->GXn=A>*`O$}~!*TmzM0CJGmveAX***`F%+SS+DqRQX}%e|5)j_)k3rOR(NG zl(@+wd*z-W<-kg-FEsYc1SABYgs$m-8B$=!H{6l;A^mF;2fZuHkhmD{ za)c~#{>ZhbH+NGchgY#KASKRki`5$N;~?ev;48Ao8Cc){znZBgtkzeX!!i8}B-_*SioR-yj=Y8ML z3^?M5BaS$dkv!rADH5ELDW#N{38j>pDVf>{nHXwDf=Uz#A;c1b=B_1%7;4c_ml#5* zC59Sm2|2Dd;!>B*^15uY-`}~e^E~Hy29xaj_Wit{_k8?$ z{XOSg=Q@Ax^E@+i<4)Dp!7p>xo)q#JnXF>3fvU3VswypsP}B{0Fr@kE2Vu9S?Yfyn zF089jo7>O`s!F@=od%?~!8Yq^8|)#vN;YCJKN@EA=|_XPI)1Obi_yS7ZPv=b5O;$; zHU)cNS-Nb+r}u%UO{+Sv(t7pE5#hl$5*e%x?#?taH;=L;j0)yzWN!8Q*95axB13Ei zW5Zqv7r%CEMrQ|$TQR5(tTOD?E0GcGA@IEAjQ1}*eY9?RWPZUaQ@>J@v5cff8N*1h zmHXQuw5AYxWp>?=oX*p16&6^w4quSe)tvivQ+F_TtiO)osGToIE z_gK(ofwjSov+LhD*d$d1RJjx?H{c~p)l0BL47@|MD1G-R13yS*EAD%e_F+$ApTiRh zvOc)#Mo{C(M>s9J6Ie$p|DwUObblpt-sY<$1ol(5)Ti+$>|BQ!6 z-70FQrdH8W-Dv@Y-3?f*X_#ozEA&hoxI6xYfpdk{L(&~9 z&r4MQPj(O0X9Bi??iBOEy5ZN0BrRPmfj7DEQMXb!Gj$Z|%=DS9m|&8tou3KOs-{^{ z8l6rIUtD52Nu|}yj<-1+4@>nl6KIl)6eoK1Q_w~Zfiw!tp(d}D^r0kG%Y(v{jo@M?v-jWU9W1LI=v7j zX1gu>?N$eEURWJD#4_EimHU|MlM_pGs4)v=_~uyEDeIzg6uXM-YVm2+s79JGd9>KX zwYXWTv^3jTQ&n9!9oW?9fwMhSd0;7?abT9^XJ>G&NfjDBU973(#Y zNN+|nlNL6E7MeB#&7=!W6g>N&I3TB>;!v=MW0gl0Nx;VKkE~!TEjoRQcY`!YHBoHw`fs^F~>$V7qQWK z@UcWFo zT2O~Qiuw%fGb)_S_X$+*7!NLT-(sJI9zbrx=5kt*fvGn?s`yN4=H z&Qxa>`>=c^GrQksa6c7?d}h_!nV&ebYP8S0iX@p?HL4kmjcR6xfEtxPE!CM-qxDme z&a7Hh&DiQ3_#vQHAvGnLSv8wZo&1uSmAN;m`+qpIs{T`ER*ff*VeOfARIDscasEB1 zQqsHF>M?|U*!_b;Q@e6(s9n>w>T-T+1&uLlIz@M&US&&;dr00=yZY|M%BAWC$bDFO z%ELkwV%V@4LV1w?KW(a4U{3`$=VY&UEMvXf95_b`|VuV;_Kh z(1xlmpR}d%B0Mna7il^BCds==`lQqkev~ zop_A8=qUS|8+9mEEHhzd*-o4V+iQKZ@YG>?p6MR>*oThj3(WH7S}~mIxg| zvV2-iMCv{kHQr_YL{%Avb0;3_oK<=N#d00Y^|lDq&O?^-hhX=Zb`LDE$&c6+#R89_ z+Z-??rRIE-KG_BOgsc0&NH7k*B~X1MXn(de5qZ${u$5A-9gy_Ng_Q+CifRfESq)}9 zILmV3^ic*{!C>u1Mx*P7o;r#RD`Tw`rZ}6Hl|H#9Q2k6K{2W2QqnABmJw5{a7$bl{ z^}sgwo$!q8epQV{8Zd7?TCVAE2)zNn7&ZW&Cl#Wum})bD8OXx*uwKD(7F%pJz= zfPFSNgox=fJ!<^e71>MU{0Ey`nra-CgEe+fTm!qo2C)H_%;eSB_b##<@9pzAU%BC$_9cj}-9nF>MFjtyMg}K$(t*}p- zgNK<;b#HJE2eu}a@yL3@`bixXC+W~*LFrg#0WE_iGt%w?dyQq*wLCNqZz+A6T#K4I znxJifF7>!@$NFhYHtR8_tqsq#FmmNzBR@7g|E-qkRvn|3v9VcG(AgK0OwZZz#iSeCOI+6vw< z?HjDpQ9%m{pRR~Ee7YKE+Hr{6%$Hh~!c$h;vKer4X=>X+*|cR?#we|iQNBJ#X*EVB zPg+eLW0cm%D6NlCT8(j)`L2R3%(sALjPms{%2#7#&ZX6yGe&8BjA-K+(S|Xy1f^vO zYK-ztOW78;58--Diu-!gda%+e!n;gcz!H|UiiJkSzCrsW88-Af-q;n03{2Y9z!Hp;A%?)q_)x(x$~Ci;hHwe`rx`T9U}p?V#Tx zKA!rCPqqWAU2A$VVB})=g8jx0!JY~%pAEBoiD^+*O7*!dYyEUppU|?V&yiMIV5<89 z$+D@Ip{a;nrlr61i?Ug!orU&V^VNB~*R+b*ZW{X7L8#%$tcYjWj+tS>tGBc?R(~Gc z!(=w4Hh4CarcE2l4}#Po$#=_HRswC;&v~^wF1n>V%V}%ytyZHImPt{p+W=R1u|Hx2 z^a#sMNEhXx#ZW0!*V<9_r!3d1L!UZ5MuH||Rh>m8?RY>-^-GSHw76(V*7O;t&anCu zMArHT8`l16-QmwB`(-Z$Iop=YY}jplxG4vkWxGwi8}Uc3);Rc2Cj?r?AG|{z7>Lw1 z5NiaNP;}?%um!8*Vv1#VN@zgqJl1EHVj{HqW3jlxindsi{*yj~L#(6Yw9jUy50*2O z#={x9&9r+Ee`K>*vOw^Qy{k$r&%zwESv&(v9nBY~4Ko>7)+z%?XEEJfPf>>rAr%`U z-t3-(J!5r}^`MsQaf7*9s*APe1EKawTh%LY%(=!n3tVGt>d;~fOjdSL{aS0bwe}`^ ztS*Qa+8}by@zR}TXj*7UL8zgPwuDlv2cZU7w3=sK@o-G1d<-haqO7%oHfvF%#W78< z7X5%(m%uJJ_72!p#==!fa!#b@@*KvXb(t2Q2A=wU%MIVz%^5x%&Tl1hGn?MLibQ9)U5S zbWu}R(X`^GX+0iwqI7~;rkw@bSNp|`R=^BP8OOe?=~&U|R8Wf( z1BQj;k0NzKe{xJq66`#JW%JY&&RErunln7jo!pYjv(8dES;7pjKI)`$2bDF}Sl;&|K(qDSi6i=WIf$PH5 zl{juoY{~jrWPz)naiO7_Vd$AL*RnDfHo2%A58BWo2RH*NDGnM>GpJ*Q<*NRax&@XH zi8q+`2H0h$<@lmC`G%J27TX>iIscV7FZoKg=Gq!nNN=yHdU4a=X`Yt*rqFiyU1$%} z48*J4*-OP@yMwg*ba?3JhhbkZb_n)0V^6~VFtA?5NHR4#7IhTr@phUZ^yl_9C0UY( z!k9x>r!6U|XR1Hrw<=^W{A~aOC*8c_ zBgSxpeppq1Ef+J0CTp?q0{`G9E$U>BKo z5$s~qE{5G?T85rKYuaaF8M0bXju>*9Ou|V|M{QOeaBLF&^fj!GE_j`qlLF1Mm9A%D zXKP%)27aCE*TFyF`Ul|op-X5-53%j8-wwaq^}FGpay^eUzUeW40?){F=$B=X9d-Rt z_~WiW4*#0#UxR<$^{+G168w}vvpkLkmr6;_ovAi4Q?bpoIiCr;(6qk!HFH`ZtIc6G z?A^B1+v%jsd{I`)bUUt8{f@xq?pS|V(&hCy$&tokqocHGA!2QhG1eceq*4~bu}l=> z-NU2N@u=TTSre!{?MRlZAJ5@~N~`(gt?0+vAu<-W-PIPpRi&j$;W+$l1WpmY@3dR$ z1o)}&RDo(Em|h!Vf$J6jGS^#T&0m?-`e_T)){olR0`|Cm5B$^K&eQNOy8cD@S6u%J zp-(bBG|Q)(9;$sb{5Cz>CU!JUw1uq`p6QcJs|E&4i@j2)quKO2eXxppqG=~u9ck0j zVbgsLI<~&%coA4`>^-m>jeQh$ud&a;9yOMgtxqLX3m;!58*5_|d)R{0hK$J4?nRmQ7oRWd+|5NEoPAQY<=f{c+U~yV5eE#l&f|5V95QGj>1hkg@E| zd_rJ7<-r$wr6i9cEyE5B96TfV6Y)DYHdMTf@!gtgQPpoH=0gc(K4?Y9YE4P@4=h6* zu^DVN_F>pZj2*Pd0x+uZ=8I71DO*J_N|ioyGUTHZoXnV0*Zdn`#q^e{58am=J{ zgpXP5U}&Hwp$}4hS4e2A!w_Q~jn)f~qAXuyGflAh?!bmRTP$VKQBNow)t_g+Hi}A% z++9l7kpR8$7$z(6dY+(6UIa%S}aCu{0D^c){a^$r_uzZy}H@`<*r7PZ)qCuqEZpg z+(y<;<5R{C!ag0?5e$3;&k=Uuh*f|mh1fOVZe!QNt~1t?D+ixq*jPfa_u3rI!-GZ_ zLcArhYRP79#8%jcYbG&N=R&Ks&VgwjP_^9x?hA`S9&)VT?|MwC2FId~XFYnE z`i$Kh)J#amEJ(c?=$Zr3V~VeJY=e)2r#q4lQ6IIRqsVpqL53RJP?P8IqtdZPt+!1eWUQBxp2k*3TqZ9%1To8sHfub}^tOv8)SK7n_#k%CVN=>dKlH z(x%+1qj5Ieaj?}#xxSQKfQIYgoBX_OrnN8=2iCfL(~=|%YZ{z)sopg<`Vp(KO*i%$ z*g3||gC&h}&{@)Nti(meDve8x)xu+|$f(7}x)Yn0WCd`K8}3a&`n0C!0 zKYmn@b+9&89fQ|fU>XAHQzy3qnn_dQj*3xpwBEwqZjREXWsG&AE!1x8c-Zl^U8_Q} zo310VjnXBBC%K~1HtsQ2PrtM5XgbuG<;b%!9sb0#*40+=hbUa7B;jat*N5XLdK3N= ztCKmkHc@Jfou?Se07qpgWvAPgj&g@pt0*l=N^}Wq!KNsu!Ix9Nps#!@p>F|nR;8ucMj$m?q5dl|tO{FJ z#+9ygwZUf8=+$#wy7f4ut_GzoiZvbI1XNRoXD%63`7CK4SzAM0@KC5vf6_?vPj7@a z(%JqQYY<5~ng3>uB!}DLvrH8iM2&VbSUmiw>ad_X%$iQsR8-Tf?sQlVminY69qZ9p zzeYw|4V{8*whA<f20Yx=yNf{Le&jA3;giZj(6nhGU`;cj%fj8YLl}#S{&b{xCdAGFGfg`a)+bf-ON;f# zPm%$h2s+}^;_Fh0@w;c8RYOs*ocw99Qk|tj(%bQ~_KDUDutD&aI|FBSvYb$UK^Rb=|@S{&cUjQiDezk!}c&x-9xp{1y%6CX2W`5*TD`C z?0K}$*T#4+s=BZ@qS|TE?1g>O*nO~cov!5vQEfKWma|)_pwXu#IjQy8Re4QIi-o7j zU0eIPSzb-no>m0bG)X!D`_0-9yWH-ZaG@l#rzu-$ovemkU7LS zQbQ3wg(-fGin>}9u}GD)e7H6Zqp-4awK27FCs{UiXwXc$UFV_du@L6NvbfUuz6O=A z!d)ppX2YQ1fQ^{~6lD#t<74#Lu+68b!#>vTI`i;Aw5<6b~ZV!b8RQA>MFy9bt* zv@+7tSbb^?G9T@!4L*53aC21Ox}y2>IEgc@#?hw?v;nfFR4HrIOsn-X!&tAL<`Sc> z<(jbZfFz{TDOJ+7XA5O0)A&En0ChbB>@+r*_}^r(qc-`Pe<~Qgqx;vHix zE`X#ZId0DOy-?llQZ>(V%|n$Q1M*7R?K#UaHr56|7Ei{c!FwJwc#VmbD{We+qxthX z8m8Bg*6Y*{zQrQbaY>8+9}Ir!Sq4AK2CqY8>F}ViYCvvHceD;Z&Qhf)ElH}=@5}g^ z!<{=c@U(F0QT0~9>85;K1N@=*5bPtSeFS!|`Mv=As<9`tEa$)aG}5RdR->HDnu1y2 zX49^Q-Ds@ZXV=Pi&|0dWE*7;Gk|uKpiGx71O#dj(>5m3R0n~m?E+^{gL{q(PJBifS z9%C7RqE0ip1?y{82QC!VP4aNo!4pVL_BBirrcscv`qV5zy}<^gXgHBHHl>rU#m3SN zvmqP#{x38x_=0Ze8^FeFYBi2P8ne=yi>Y*l|7U{%IFlpg-S#JXAy`!mI&%iFD% z8P(ZRnX9i^`vOa7_qHDrW3Wm?V=RgY~mWN?Ti_Y7$Bu}7~%zOPA+FUyys>yMu zc6HpX9Dar*hauMb<(Kp}i{6^lUQ)PSEku->b)K##IVF`lsN5`FQan_tJBC-rs;J$% zpr&3JlR6$7P_qK%m~^b~W$HUFThwJd`-kt{HtSfcA8R@$9Sq$z{oSy$?EyF29JSlh zlElz`mdx>}*8udWr^&PzjcID_B2&A`nKp;^bhM;}V_og(bemHx&C(1`!JPwU^ zw@uY?jun!ZE(ldf9)(yn95qEAwTN`r-D_H}o{krz#;fy(e$;q>={$7^pyves?zK~ts2fYM1w+L)bSnz6dQvEwx5vw%;zj+?or zoeSGzzCEzLrtO7gQLC|jaJ^|Y@&VHhz!s)0EEnmC@GMp$mVa83`7EDhsdK_8PMuU` zV`Jqe7_17#tzy%XtolZp)*@^Kvw4y$-{FTe`X$*D66S&V2qz`z!$lv$DG8d;0ff^M z1{jzGH2{<4HzTM4m@Hq4pax*Fd?Z=4+omq zaacRT0#+jBSihEOMk)4Y6nk2*YB9PsU5u@$*#}zNN|f(#tr~7N(&|}qv#|^{{-~6J z`VaQQ-}P^_IogPJv-xg@-DcWtuscn=6P7)xsof2pGVN2a`h`RYwDJk=IoOw7{WAP9 z^F9X4f>Il=k&BT*3(0aj&mdXeZrXNO_A|Z^(a=ed$zi&ox6<6R;lnF+vwXa<6JS~U zIEK70G*-<~{W_|6$!DQr>#!7q;|;aDR$g_hQhC>^)Xi3jPfPNUTRMD6FiI^6MtQb- zFIKGsxArB?GWj~PG-!2Bh8RbRT#{_v=hM;(@ue%Y1)~vvrRi2cCKmX!V+eh zOf>c5RpX2|*Uz61$exxqYf1b0F7kmNG|Sn&_YVZBdc%KK!f2EUMib1il`;+P9{c&| zJ)s3{7#fsk-dl0A$IaYqBv(Q%is-ek9!TT|kauMxf9ng4*9H47`$e2Uv z;{X1PpGxf^y{q6P^~o879Yz>m{nGL4eTBp=^ohqrj3sCVaRBDLP}L6v-A-1;Y3cW z-eo(R1*oG+^RgQd>~+!0X=C+!9sRYewp>~`RW%i9L8Z*41(nh@7IfBbqB5!pc8+K} zV&!zHDape4f9qR^sp

    $+hPw*t*}M10(P}&SHs?I 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 literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/binary/wifi_dnld.elf b/libraries/WiFi/extras/binary/wifi_dnld.elf new file mode 100644 index 0000000000000000000000000000000000000000..11ec3ddc7305bca3222a211559170005c6c2f878 GIT binary patch literal 182489 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 literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/binary/wifi_dnld.hex b/libraries/WiFi/extras/binary/wifi_dnld.hex new file mode 100644 index 000000000..bf2c05cf6 --- /dev/null +++ b/libraries/WiFi/extras/binary/wifi_dnld.hex @@ -0,0 +1,10470 @@ +:0200000480007A +:10000000E08F100000000000000000000000000071 +:1000100000000000000000000000000000000000E0 +:1000200000000000000000000000000000000000D0 +:1000300000000000000000000000000000000000C0 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:100090000000000000000000000000000000000060 +:1000A0000000000000000000000000000000000050 +:1000B0000000000000000000000000000000000040 +:1000C0000000000000000000000000000000000030 +:1000D0000000000000000000000000000000000020 +:1000E0000000000000000000000000000000000010 +:1000F0000000000000000000000000000000000000 +:1001000000000000000000000000000000000000EF +:1001100000000000000000000000000000000000DF +:1001200000000000000000000000000000000000CF +:1001300000000000000000000000000000000000BF +:1001400000000000000000000000000000000000AF +:10015000000000000000000000000000000000009F +:10016000000000000000000000000000000000008F +:10017000000000000000000000000000000000007F +:10018000000000000000000000000000000000006F +:10019000000000000000000000000000000000005F +:1001A000000000000000000000000000000000004F +:1001B000000000000000000000000000000000003F +:1001C000000000000000000000000000000000002F +:1001D000000000000000000000000000000000001F +:1001E000000000000000000000000000000000000F +:1001F00000000000000000000000000000000000FF +:1002000000000000000000000000000000000000EE +:1002100000000000000000000000000000000000DE +:1002200000000000000000000000000000000000CE +:1002300000000000000000000000000000000000BE +:1002400000000000000000000000000000000000AE +:10025000000000000000000000000000000000009E +:10026000000000000000000000000000000000008E +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:10029000000000000000000000000000000000005E +:1002A000000000000000000000000000000000004E +:1002B000000000000000000000000000000000003E +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E000000000000000000000000000000000000E +:1002F00000000000000000000000000000000000FE +:1003000000000000000000000000000000000000ED +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:1003300000000000000000000000000000000000BD +:1003400000000000000000000000000000000000AD +:10035000000000000000000000000000000000009D +:10036000000000000000000000000000000000008D +:10037000000000000000000000000000000000007D +:10038000000000000000000000000000000000006D +:10039000000000000000000000000000000000005D +:1003A000000000000000000000000000000000004D +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000000000002D +:1003D000000000000000000000000000000000001D +:1003E000000000000000000000000000000000000D +:1003F00000000000000000000000000000000000FD +:1004000000000000000000000000000000000000EC +:1004100000000000000000000000000000000000DC +:1004200000000000000000000000000000000000CC +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000000000000AC +:10045000000000000000000000000000000000009C +:10046000000000000000000000000000000000008C +:10047000000000000000000000000000000000007C +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A000000000000000000000000000000000004C +:1004B000000000000000000000000000000000003C +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000000000001C +:1004E000000000000000000000000000000000000C +:1004F00000000000000000000000000000000000FC +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:1005300000000000000000000000000000000000BB +:1005400000000000000000000000000000000000AB +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000000000008B +:10057000000000000000000000000000000000007B +:10058000000000000000000000000000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C000000000000000000000000000000000002B +:1005D000000000000000000000000000000000001B +:1005E000000000000000000000000000000000000B +:1005F00000000000000000000000000000000000FB +:1006000000000000000000000000000000000000EA +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:10065000000000000000000000000000000000009A +:10066000000000000000000000000000000000008A +:10067000000000000000000000000000000000007A +:10068000000000000000000000000000000000006A +:10069000000000000000000000000000000000005A +:1006A000000000000000000000000000000000004A +:1006B000000000000000000000000000000000003A +:1006C000000000000000000000000000000000002A +:1006D000000000000000000000000000000000001A +:1006E000000000000000000000000000000000000A +:1006F00000000000000000000000000000000000FA +:1007000000000000000000000000000000000000E9 +:1007100000000000000000000000000000000000D9 +:1007200000000000000000000000000000000000C9 +:1007300000000000000000000000000000000000B9 +:1007400000000000000000000000000000000000A9 +:100750000000000000000000000000000000000099 +:100760000000000000000000000000000000000089 +:100770000000000000000000000000000000000079 +:100780000000000000000000000000000000000069 +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000000000000049 +:1007B0000000000000000000000000000000000039 +:1007C0000000000000000000000000000000000029 +:1007D0000000000000000000000000000000000019 +:1007E0000000000000000000000000000000000009 +:1007F00000000000000000000000000000000000F9 +:1008000000000000000000000000000000000000E8 +:1008100000000000000000000000000000000000D8 +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000000000000B8 +:1008400000000000000000000000000000000000A8 +:100850000000000000000000000000000000000098 +:100860000000000000000000000000000000000088 +:100870000000000000000000000000000000000078 +:100880000000000000000000000000000000000068 +:100890000000000000000000000000000000000058 +:1008A0000000000000000000000000000000000048 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000000000000028 +:1008D0000000000000000000000000000000000018 +:1008E0000000000000000000000000000000000008 +:1008F00000000000000000000000000000000000F8 +:1009000000000000000000000000000000000000E7 +:1009100000000000000000000000000000000000D7 +:1009200000000000000000000000000000000000C7 +:1009300000000000000000000000000000000000B7 +:1009400000000000000000000000000000000000A7 +:100950000000000000000000000000000000000097 +:100960000000000000000000000000000000000087 +:100970000000000000000000000000000000000077 +:100980000000000000000000000000000000000067 +:100990000000000000000000000000000000000057 +:1009A0000000000000000000000000000000000047 +:1009B0000000000000000000000000000000000037 +:1009C0000000000000000000000000000000000027 +:1009D0000000000000000000000000000000000017 +:1009E0000000000000000000000000000000000007 +:1009F00000000000000000000000000000000000F7 +:100A000000000000000000000000000000000000E6 +:100A100000000000000000000000000000000000D6 +:100A200000000000000000000000000000000000C6 +:100A300000000000000000000000000000000000B6 +:100A400000000000000000000000000000000000A6 +:100A50000000000000000000000000000000000096 +:100A60000000000000000000000000000000000086 +:100A70000000000000000000000000000000000076 +:100A80000000000000000000000000000000000066 +:100A90000000000000000000000000000000000056 +:100AA0000000000000000000000000000000000046 +:100AB0000000000000000000000000000000000036 +:100AC0000000000000000000000000000000000026 +:100AD0000000000000000000000000000000000016 +:100AE0000000000000000000000000000000000006 +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000000000000E5 +:100B100000000000000000000000000000000000D5 +:100B200000000000000000000000000000000000C5 +:100B300000000000000000000000000000000000B5 +:100B400000000000000000000000000000000000A5 +:100B50000000000000000000000000000000000095 +:100B60000000000000000000000000000000000085 +:100B70000000000000000000000000000000000075 +:100B80000000000000000000000000000000000065 +:100B90000000000000000000000000000000000055 +:100BA0000000000000000000000000000000000045 +:100BB0000000000000000000000000000000000035 +:100BC0000000000000000000000000000000000025 +:100BD0000000000000000000000000000000000015 +:100BE0000000000000000000000000000000000005 +:100BF00000000000000000000000000000000000F5 +:100C000000000000000000000000000000000000E4 +:100C100000000000000000000000000000000000D4 +:100C200000000000000000000000000000000000C4 +:100C300000000000000000000000000000000000B4 +:100C400000000000000000000000000000000000A4 +:100C50000000000000000000000000000000000094 +:100C60000000000000000000000000000000000084 +:100C70000000000000000000000000000000000074 +:100C80000000000000000000000000000000000064 +:100C90000000000000000000000000000000000054 +:100CA0000000000000000000000000000000000044 +:100CB0000000000000000000000000000000000034 +:100CC0000000000000000000000000000000000024 +:100CD0000000000000000000000000000000000014 +:100CE0000000000000000000000000000000000004 +:100CF00000000000000000000000000000000000F4 +:100D000000000000000000000000000000000000E3 +:100D100000000000000000000000000000000000D3 +:100D200000000000000000000000000000000000C3 +:100D300000000000000000000000000000000000B3 +:100D400000000000000000000000000000000000A3 +:100D50000000000000000000000000000000000093 +:100D60000000000000000000000000000000000083 +:100D70000000000000000000000000000000000073 +:100D80000000000000000000000000000000000063 +:100D90000000000000000000000000000000000053 +:100DA0000000000000000000000000000000000043 +:100DB0000000000000000000000000000000000033 +:100DC0000000000000000000000000000000000023 +:100DD0000000000000000000000000000000000013 +:100DE0000000000000000000000000000000000003 +:100DF00000000000000000000000000000000000F3 +:100E000000000000000000000000000000000000E2 +:100E100000000000000000000000000000000000D2 +:100E200000000000000000000000000000000000C2 +:100E300000000000000000000000000000000000B2 +:100E400000000000000000000000000000000000A2 +:100E50000000000000000000000000000000000092 +:100E60000000000000000000000000000000000082 +:100E70000000000000000000000000000000000072 +:100E80000000000000000000000000000000000062 +:100E90000000000000000000000000000000000052 +:100EA0000000000000000000000000000000000042 +:100EB0000000000000000000000000000000000032 +:100EC0000000000000000000000000000000000022 +:100ED0000000000000000000000000000000000012 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000000000000F2 +:100F000000000000000000000000000000000000E1 +:100F100000000000000000000000000000000000D1 +:100F200000000000000000000000000000000000C1 +:100F300000000000000000000000000000000000B1 +:100F400000000000000000000000000000000000A1 +:100F50000000000000000000000000000000000091 +:100F60000000000000000000000000000000000081 +:100F70000000000000000000000000000000000071 +:100F80000000000000000000000000000000000061 +:100F90000000000000000000000000000000000051 +:100FA0000000000000000000000000000000000041 +:100FB0000000000000000000000000000000000031 +:100FC0000000000000000000000000000000000021 +:100FD0000000000000000000000000000000000011 +:100FE0000000000000000000000000000000000001 +:100FF00000000000000000000000000000000000F1 +:1010000000000000000000000000000000000000E0 +:1010100000000000000000000000000000000000D0 +:1010200000000000000000000000000000000000C0 +:1010300000000000000000000000000000000000B0 +:1010400000000000000000000000000000000000A0 +:101050000000000000000000000000000000000090 +:101060000000000000000000000000000000000080 +:101070000000000000000000000000000000000070 +:101080000000000000000000000000000000000060 +:101090000000000000000000000000000000000050 +:1010A0000000000000000000000000000000000040 +:1010B0000000000000000000000000000000000030 +:1010C0000000000000000000000000000000000020 +:1010D0000000000000000000000000000000000010 +:1010E0000000000000000000000000000000000000 +:1010F00000000000000000000000000000000000F0 +:1011000000000000000000000000000000000000DF +:1011100000000000000000000000000000000000CF +:1011200000000000000000000000000000000000BF +:1011300000000000000000000000000000000000AF +:10114000000000000000000000000000000000009F +:10115000000000000000000000000000000000008F +:10116000000000000000000000000000000000007F +:10117000000000000000000000000000000000006F +:10118000000000000000000000000000000000005F +:10119000000000000000000000000000000000004F +:1011A000000000000000000000000000000000003F +:1011B000000000000000000000000000000000002F +:1011C000000000000000000000000000000000001F +:1011D000000000000000000000000000000000000F +:1011E00000000000000000000000000000000000FF +:1011F00000000000000000000000000000000000EF +:1012000000000000000000000000000000000000DE +:1012100000000000000000000000000000000000CE +:1012200000000000000000000000000000000000BE +:1012300000000000000000000000000000000000AE +:10124000000000000000000000000000000000009E +:10125000000000000000000000000000000000008E +:10126000000000000000000000000000000000007E +:10127000000000000000000000000000000000006E +:10128000000000000000000000000000000000005E +:10129000000000000000000000000000000000004E +:1012A000000000000000000000000000000000003E +:1012B000000000000000000000000000000000002E +:1012C000000000000000000000000000000000001E +:1012D000000000000000000000000000000000000E +:1012E00000000000000000000000000000000000FE +:1012F00000000000000000000000000000000000EE +:1013000000000000000000000000000000000000DD +:1013100000000000000000000000000000000000CD +:1013200000000000000000000000000000000000BD +:1013300000000000000000000000000000000000AD +:10134000000000000000000000000000000000009D +:10135000000000000000000000000000000000008D +:10136000000000000000000000000000000000007D +:10137000000000000000000000000000000000006D +:10138000000000000000000000000000000000005D +:10139000000000000000000000000000000000004D +:1013A000000000000000000000000000000000003D +:1013B000000000000000000000000000000000002D +:1013C000000000000000000000000000000000001D +:1013D000000000000000000000000000000000000D +:1013E00000000000000000000000000000000000FD +:1013F00000000000000000000000000000000000ED +:1014000000000000000000000000000000000000DC +:1014100000000000000000000000000000000000CC +:1014200000000000000000000000000000000000BC +:1014300000000000000000000000000000000000AC +:10144000000000000000000000000000000000009C +:10145000000000000000000000000000000000008C +:10146000000000000000000000000000000000007C +:10147000000000000000000000000000000000006C +:10148000000000000000000000000000000000005C +:10149000000000000000000000000000000000004C +:1014A000000000000000000000000000000000003C +:1014B000000000000000000000000000000000002C +:1014C000000000000000000000000000000000001C +:1014D000000000000000000000000000000000000C +:1014E00000000000000000000000000000000000FC +:1014F00000000000000000000000000000000000EC +:1015000000000000000000000000000000000000DB +:1015100000000000000000000000000000000000CB +:1015200000000000000000000000000000000000BB +:1015300000000000000000000000000000000000AB +:10154000000000000000000000000000000000009B +:10155000000000000000000000000000000000008B +:10156000000000000000000000000000000000007B +:10157000000000000000000000000000000000006B +:10158000000000000000000000000000000000005B +:10159000000000000000000000000000000000004B +:1015A000000000000000000000000000000000003B +:1015B000000000000000000000000000000000002B +:1015C000000000000000000000000000000000001B +:1015D000000000000000000000000000000000000B +:1015E00000000000000000000000000000000000FB +:1015F00000000000000000000000000000000000EB +:1016000000000000000000000000000000000000DA +:1016100000000000000000000000000000000000CA +:1016200000000000000000000000000000000000BA +:1016300000000000000000000000000000000000AA +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000000000008A +:10166000000000000000000000000000000000007A +:10167000000000000000000000000000000000006A +:10168000000000000000000000000000000000005A +:10169000000000000000000000000000000000004A +:1016A000000000000000000000000000000000003A +:1016B000000000000000000000000000000000002A +:1016C000000000000000000000000000000000001A +:1016D000000000000000000000000000000000000A +:1016E00000000000000000000000000000000000FA +:1016F00000000000000000000000000000000000EA +:1017000000000000000000000000000000000000D9 +:1017100000000000000000000000000000000000C9 +:1017200000000000000000000000000000000000B9 +:1017300000000000000000000000000000000000A9 +:101740000000000000000000000000000000000099 +:101750000000000000000000000000000000000089 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000000000000069 +:101780000000000000000000000000000000000059 +:101790000000000000000000000000000000000049 +:1017A0000000000000000000000000000000000039 +:1017B0000000000000000000000000000000000029 +:1017C0000000000000000000000000000000000019 +:1017D0000000000000000000000000000000000009 +:1017E00000000000000000000000000000000000F9 +:1017F00000000000000000000000000000000000E9 +:1018000000000000000000000000000000000000D8 +:1018100000000000000000000000000000000000C8 +:1018200000000000000000000000000000000000B8 +:1018300000000000000000000000000000000000A8 +:101840000000000000000000000000000000000098 +:101850000000000000000000000000000000000088 +:101860000000000000000000000000000000000078 +:101870000000000000000000000000000000000068 +:101880000000000000000000000000000000000058 +:101890000000000000000000000000000000000048 +:1018A0000000000000000000000000000000000038 +:1018B0000000000000000000000000000000000028 +:1018C0000000000000000000000000000000000018 +:1018D0000000000000000000000000000000000008 +:1018E00000000000000000000000000000000000F8 +:1018F00000000000000000000000000000000000E8 +:1019000000000000000000000000000000000000D7 +:1019100000000000000000000000000000000000C7 +:1019200000000000000000000000000000000000B7 +:1019300000000000000000000000000000000000A7 +:101940000000000000000000000000000000000097 +:101950000000000000000000000000000000000087 +:101960000000000000000000000000000000000077 +:101970000000000000000000000000000000000067 +:101980000000000000000000000000000000000057 +:101990000000000000000000000000000000000047 +:1019A0000000000000000000000000000000000037 +:1019B0000000000000000000000000000000000027 +:1019C0000000000000000000000000000000000017 +:1019D0000000000000000000000000000000000007 +:1019E00000000000000000000000000000000000F7 +:1019F00000000000000000000000000000000000E7 +:101A000000000000000000000000000000000000D6 +:101A100000000000000000000000000000000000C6 +:101A200000000000000000000000000000000000B6 +:101A300000000000000000000000000000000000A6 +:101A40000000000000000000000000000000000096 +:101A50000000000000000000000000000000000086 +:101A60000000000000000000000000000000000076 +:101A70000000000000000000000000000000000066 +:101A80000000000000000000000000000000000056 +:101A90000000000000000000000000000000000046 +:101AA0000000000000000000000000000000000036 +:101AB0000000000000000000000000000000000026 +:101AC0000000000000000000000000000000000016 +:101AD0000000000000000000000000000000000006 +:101AE00000000000000000000000000000000000F6 +:101AF00000000000000000000000000000000000E6 +:101B000000000000000000000000000000000000D5 +:101B100000000000000000000000000000000000C5 +:101B200000000000000000000000000000000000B5 +:101B300000000000000000000000000000000000A5 +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000000000000085 +:101B60000000000000000000000000000000000075 +:101B70000000000000000000000000000000000065 +:101B80000000000000000000000000000000000055 +:101B90000000000000000000000000000000000045 +:101BA0000000000000000000000000000000000035 +:101BB0000000000000000000000000000000000025 +:101BC0000000000000000000000000000000000015 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000000000000F5 +:101BF00000000000000000000000000000000000E5 +:101C000000000000000000000000000000000000D4 +:101C100000000000000000000000000000000000C4 +:101C200000000000000000000000000000000000B4 +:101C300000000000000000000000000000000000A4 +:101C40000000000000000000000000000000000094 +:101C50000000000000000000000000000000000084 +:101C60000000000000000000000000000000000074 +:101C70000000000000000000000000000000000064 +:101C80000000000000000000000000000000000054 +:101C90000000000000000000000000000000000044 +:101CA0000000000000000000000000000000000034 +:101CB0000000000000000000000000000000000024 +:101CC0000000000000000000000000000000000014 +:101CD0000000000000000000000000000000000004 +:101CE00000000000000000000000000000000000F4 +:101CF00000000000000000000000000000000000E4 +:101D000000000000000000000000000000000000D3 +:101D100000000000000000000000000000000000C3 +:101D200000000000000000000000000000000000B3 +:101D300000000000000000000000000000000000A3 +:101D40000000000000000000000000000000000093 +:101D50000000000000000000000000000000000083 +:101D60000000000000000000000000000000000073 +:101D70000000000000000000000000000000000063 +:101D80000000000000000000000000000000000053 +:101D90000000000000000000000000000000000043 +:101DA0000000000000000000000000000000000033 +:101DB0000000000000000000000000000000000023 +:101DC0000000000000000000000000000000000013 +:101DD0000000000000000000000000000000000003 +:101DE00000000000000000000000000000000000F3 +:101DF00000000000000000000000000000000000E3 +:101E000000000000000000000000000000000000D2 +:101E100000000000000000000000000000000000C2 +:101E200000000000000000000000000000000000B2 +:101E300000000000000000000000000000000000A2 +:101E40000000000000000000000000000000000092 +:101E50000000000000000000000000000000000082 +:101E60000000000000000000000000000000000072 +:101E70000000000000000000000000000000000062 +:101E80000000000000000000000000000000000052 +:101E90000000000000000000000000000000000042 +:101EA0000000000000000000000000000000000032 +:101EB0000000000000000000000000000000000022 +:101EC0000000000000000000000000000000000012 +:101ED0000000000000000000000000000000000002 +:101EE00000000000000000000000000000000000F2 +:101EF00000000000000000000000000000000000E2 +:101F000000000000000000000000000000000000D1 +:101F100000000000000000000000000000000000C1 +:101F200000000000000000000000000000000000B1 +:101F300000000000000000000000000000000000A1 +:101F40000000000000000000000000000000000091 +:101F50000000000000000000000000000000000081 +:101F60000000000000000000000000000000000071 +:101F70000000000000000000000000000000000061 +:101F80000000000000000000000000000000000051 +:101F90000000000000000000000000000000000041 +:101FA0000000000000000000000000000000000031 +:101FB0000000000000000000000000000000000021 +:101FC0000000000000000000000000000000000011 +:101FD0000000000000000000000000000000000001 +:101FE00000000000000000000000000000000000F1 +:101FF00000000000000000000000000000000000E1 +:08200000481F0000800026309B +:10200800D40148D8E3B80001D553FE6A100030194E +:102018007508F1D9D202F5480040F01F0008F01FFA +:102028000008D503E06CF980EA1C0337F01F0005AF +:10203800D8020000800032008000259880002B68BC +:10204800800026D4EBCD40FC169518961492129B6E +:10205800580AE08A003B0B893008F0091800C520AF +:102068003009129A2FF9EA090708F4081800CFB1C5 +:102078001232E08900493002EDBB0001C26133032E +:10208800EDBB0000C2613004C0A85806C3806C09CB +:10209800B28C6C082FF88D082FF52FF40B8C580C88 +:1020A800CF515802E08A000F04975806C2406C09C5 +:1020B800B2836C082FF88D0820175807FE99FFF790 +:1020C8000404089CE3CD80FC3203EDBB0000CDC0C6 +:1020D8005802FE9AFFDA04975806C1706C09B28359 +:1020E8006C082FF88D0820175807FE99FFF70494FD +:1020F8003002CD5B069CF01F0007CDFBF01F0005EA +:10210800CCCB30091212CB9B069CF01F0002CECB21 +:1021180080002680EBCD40FC203DFACEFFD81497F6 +:102128007C037C1A10941892169E580BC4405809C8 +:102138005F1858A75F091268C34130063008FB686A +:10214800000B580EC430F4CC003AFAC9FFF5FC076E +:102158000D0A16985898F1DCE9082D0812F8149E13 +:10216800580ACF6112955806C0C10C970699089A6B +:102178000A9B049CF01F001A0E0C2FDDE3CD80FC97 +:102188005804C140EDB30001C1115802C230640ABD +:1021980032D9B48964082FF8850820143017CE7B0B +:1021A800580BCCC45C3E3016CCAB129532D83007F5 +:1021B8000AF8CDDB109A3308BA9B0699BA881A9B9D +:1021C800F01F00072FDDE3CD80FCFAC9FFF512955B +:1021D800CCBB32DCF01F0003CE1B00008000204C7B +:1021E80080002680D431201D189516971496178CD8 +:1021F800580CE08000B43004325132D033033092AE +:10220800E20C1800C1705805C6E06A09B28C6A0869 +:102218002FF88B082FF42FF70F8C580CCF21580567 +:10222800EBF91000F9B80100F3F81E00089C2FFD27 +:10223800D8322FF70F8A580ACF30E20A1800C500A3 +:10224800E00A1800F9BC0100F7B700FFF9BC00016B +:10225800EFFA0800C0482FF7A1BC0F8AE60A180059 +:10226800CFB0F4C80030E4081800E08B0063300BEE +:10227800F60B0028F40800182FF7F0CB00300F8A6F +:10228800F4C80030E4081800FE98FFF43738F00A64 +:102298001800C2C03648F00A1800C3403708F00AD0 +:1022A8001800C3E03788F00A1800C4503588F00ACF +:1022B8001800C4903758F00A1800C4803638F00A5D +:1022C8001800CAA16C08BA8830081899169ABA98E2 +:1022D8001A9B0A9C2FC6F01F00231804C9DB325C26 +:1022E8005805C941F01F0020C96B0D081899169AA6 +:1022F8000A9C49EB5808F00B1710F01F001A180435 +:10230800C8BB361916981AD930AA1ADC30196C0BC2 +:102318000A9C2FC6F01F00162FED1804C7DB3619CC +:10232800308A1AD916981ADA30096C0B310ACF1B81 +:10233800300BCADB169836191AD9310A1ADC30095B +:102348006C0BCE7B16983419CF8B361916981AD980 +:1023580030AA1ADC30096C0BCDCB1894C61B0000D0 +:102368008000204C80002680800034008000211CE2 +:10237800D401189BFACAFFFC300CF01F0002D802E7 +:10238800800021ECEBCD40E014951696A98CF01F47 +:1023980000095805C0A03007F01F0007EC070B0C18 +:1023A8002FF70E35FE9BFFFAF01F0004E3CD80E007 +:1023B80080002E7C80002F3080002D14EBCD40E073 +:1023C80014951696A98CF01F00095805C0A030076F +:1023D800EC07070C2FF7F01F00060E35FE9BFFFADF +:1023E800F01F0004E3CD80E080002D9C80002E20AB +:1023F80080002CC8EBCD4040204D49BCF8E80008CF +:10240800FAE90008F8EA0000498CFAEB0000304BC2 +:10241800F01F00171A9BFE7C2800F01F00163009D9 +:10242800FE7C2800129A129BF01F0013FE7C2800E5 +:10243800F01F0012302CF01F00121A96204DECE805 +:102448000008FAE90008ECEA0000E06CF980EA1CF0 +:102458000337FAEB0000F01F000B2FCD2FCDE3CD93 +:1024680080400000800034088000341880002C4030 +:1024780080002874800028B480002A2480002C70F2 +:1024880080002FF8EBCD40F8F01F0033F01F003329 +:102498004B3CF01F0034F01F00343018F00C1800CB +:1024A800C5204B2CF01F002FE06701004B0C3006B5 +:1024B800F01F002C4AF40E95C088E2675A4C0C179E +:1024C800E0470100EA0717B0E806000B0C9C0E9ADB +:1024D8000E06F01F0029E2465A4BFE98FFF0E0670F +:1024E80001004A6C3006F01F001F4A550E930E9AE1 +:1024F8004A3B0C9CF01F0023E80600093008EA0854 +:10250800070B138AF40B1800C1312FF82FF9103775 +:10251800FE9BFFF70E06E2465A4BE08B0019E26776 +:102528005A4C0C17E0470100E60717B0CE1BEC0821 +:1025380000081ADA494C1ADB1AD8F01F000A2FDDF6 +:10254800E3CF80F8491CF01F0007CAFB490CF01FB5 +:102558000005CF7B80002008800023FC80028E6C61 +:102568008000237880002FA480028E8480028E8CC5 +:1025780080003420800023C480028EAC0000000854 +:102588008000238C80028EC880028E7C80028EF4AC +:10259800EBCD4040303AE06B1B00EA1B00B7FE7CF5 +:1025A8000C00F01F001A30083019109B308AFE7C8E +:1025B8000C0031061AD6F01F001630083019109B8F +:1025C800129AFE7C0C00F01F0013300BFE7C0C00EE +:1025D800F01F0011FE7C0C00F01F00103009FE7C7B +:1025E8000C001AD9129B1AD91298129AF01F000CD3 +:1025F800301CF01F000C302BFE7C0C00F01F000A72 +:102608002FDDE3CD8040000080002B0C80002AB035 +:1026180080002AD280002AEA80002AF880002A6AEC +:1026280080002C8A80002B0248CD48D0E3B00001FE +:10263800D55348C048C10230C06248C2A505A1248C +:102648000230CFD348A048B10230C0623002300314 +:10265800A1220230CFE3488F000100008000320041 +:10266800000000080000000880028FC00000000879 +:10267800000001E88000248CD401189BFE7C18001F +:10268800F01F0002D802000080002742EBCD404036 +:10269800203D30083049FB680008BA383088500CB3 +:1026A8001696BAC8302BBAD9486CF01F00070C9A96 +:1026B8001A9BFE7C1800F01F00052FDDE3CD80403B +:1026C80080028F1C80002C40800027ACD401189B0E +:1026D800E06CE100F01F0002D802000080002694A0 +:1026E800D401F6081503A56B143BF9BE0810F00BCE +:1026F80017B0F9BE0B08F6091601F20A0039F20BF9 +:102708000D08109AF00B1603F6C80001E048FFFE0A +:10271800E08B00147818E8690000E418FFF7E01867 +:10272800FECF590EF9B9000010499919F1DAC00322 +:10273800F7E811089988D80ADA0A58ABC0F0E069B6 +:10274800270F7858EDB80001C051F1DBC00999781E +:102758005EFD5809C1002019CF5BE069270F785842 +:10276800EDB80001C04130D89978CEAB5809C030D7 +:102778002019CF6B5EFEE1B80000EDB80010C0E094 +:10278800D3033FF899387858D503300899189998A1 +:1027980099A8EA69610C99095EFC3FF8993878585C +:1027A800CF5BD703D421169714951896F01F002EE7 +:1027B8005807C2000FC93048F0091800E088001B0C +:1027C8003094E8091800E08B00160FD93078F0092A +:1027D8001800E08B00108E39E0680101F00919003B +:1027E800E08B0009EF3900083038F0091800E0885C +:1027F8000003DA2A0A9A6E0B0C9CF01F001C581C66 +:10280800CF900FC9E8091800C2906C182059F1E957 +:1028180010688D18EF3900086C1A0FD8A978F1E9FB +:1028280010E814488D1830288E39F0091900E0880E +:1028380000106C18ADB88D188EB920298DA96C18A8 +:10284800E018FFF08D183509300C8D09D8226C1866 +:102858005C79F1E910C88D18CF3B6C18B1B88D18A8 +:10286800CDAB00008000277E800026E8D401301818 +:10287800F739000DF0091800E0880005302E1C9C7F +:10288800D802E068008030199908300A7818F73BB8 +:10289800000D149EF1D9D00130F9F1DBD081F1DAC5 +:1028A800D0E1F1D9D20499181C9CD802EBCD408014 +:1028B8003018149E1297F00A18005FBAF00B18002F +:1028C8005FB91449C0B17818F1DBD021F1DED041ED +:1028D800F1D7D3089918E3CF8080302CE3CD8080DE +:1028E800D4017818189EEA18000F9918781CE21C71 +:1028F8000004C08030E8F00B1800E0880013302C8A +:10290800D8023038F00B1800FE9BFFFB7C1AF6C883 +:10291800FFF03019F20809495CD914699D19D802E9 +:102928007C19F6081510300CEA18FFF0E818FFFFBC +:1029380012689D18D802E0692710C0485809C0E0FD +:1029480020197848EDB80009CFA17818EA18000FC7 +:102958009918FC19010099095EFD5EFFEBCD40FC5A +:1029680030321893F73C000CE40C1800E08B000997 +:10297800F735000B3014E8051800E0880005302C06 +:10298800E3CD80FCF73E00083078F00E1800FE9882 +:10299800FFF83108F00E1800FE9BFFF37618F009D7 +:1029A8001601F4090009F2080D06ECCA0001E04A14 +:1029B80000FEFE9BFFE65806CE35FCC90008F80865 +:1029C8001601300AEC1C0001F5D8D001178EF5DC91 +:1029D800D021F7380009F5D5D061F5D9D084F73979 +:1029E800000AF5D6D108F5D8D208F5D9D308E80EEB +:1029F8001800C0F0C0B33028F00E1800C0D0E40EA4 +:102A08001800CBE187FAE3CF80FC87CAE3CF80FCCC +:102A180087DAE3CF80FC87EAE3CF80FC3018990897 +:102A28005EFCE0692710C0485809C0A02019784802 +:102A3800EDB80001CFA1F1DBC01099385EFD5EFF53 +:102A4800E0692710C0485809C0C020197848E21822 +:102A58000201E0480201CF817828300CB6085EFCFC +:102A68005EFFEBCD40E0FAC5FFF018976A166A0ED4 +:102A7800EDD6C003FDDEC001300CF9D6D003F9DE77 +:102A8800D0E1F9D6D103F9DED1E1F9DAD203F9DBE5 +:102A9800D2E1F9D8D303F9D9D3E18F1C6F58EDB837 +:102AA8000005CFD1E3CD80E0EBCD4040300E40268D +:102AB8002F8BFDD8D021FDD9D104FDDAD204FDD663 +:102AC800D306F80B092EE3CD80402F8BF5E91019BA +:102AD800F3E81029F80B0328F1D9D043F80B09289B +:102AE8005EFC2F8BF80B0328A1A8F80B09285EFCC5 +:102AF8007958EDB80000CFD15EFC7808F1DBD00240 +:102B080099085EFCEC5BBB9FE08B0018304B78A803 +:102B1800F1DBD00399A878A9F3DAD10399A9780849 +:102B2800A3A899087958EDB80007CFD178083019CB +:102B3800F1D9D00299085EFCE068C6BFEA18002DFA +:102B4800103BE088000CE0681200EA18007A103B9D +:102B5800F9BB0306F9BB0207CDBB305BCD9BC008B0 +:102B6800EBCD40C048E8E3B8000148E9300C7206F4 +:102B780048DE48E9FE770800720B580BC070721ADD +:102B8800300814AE2FF81638CFD3EE0C09262F894B +:102B98002FFC594CCF21E3CD80C0000080003200CB +:102BA8008000333C80002B6680028F20E068008321 +:102BB800FE790800F00C010CF20C032AF4C8FFC0DF +:102BC800F208032C580C5E0CF80812004859F0085B +:102BD800111FF20A0039721AF408032C5EFC000077 +:102BE80080028F20F8081605F0091508E029F00082 +:102BF800581BC150C0823018F00C094C936C93AC30 +:102C0800932C5EFD582BC110583BC0205EFF301836 +:102C1800F00C094C935C939C932C5EFDF60C094CCC +:102C2800935C93AC932C5EFD3018F00C094C936CBC +:102C3800939C932C5EFDD703D42118961694580BB9 +:102C4800C0F030050A970D9B0D8C2FF72FE6F01F6B +:102C5800000618450E34FE9BFFF80A9CD8221695EC +:102C6800CFDB000080002BEC3018F00C0948A59C45 +:102C7800A96CE02CF000F9480054F9480044991870 +:102C88005EFCFE6914007208F1DCD0C193085EFC9A +:102C9800D401580BC091F8CBFFFEFE7C28005C5B8A +:102CA800F01F0006D802F8CBFFFEFE7C28005C5B14 +:102CB800F01F0003D80200008000293E800028E8A9 +:102CC800EBCD408048E76E0CF1DCC008C0D0300B7B +:102CD800FE7C2800F01F000B6E08F0CCFFFF8F0C65 +:102CE800F1DCC008CF51F9DCC288300BF01F0006B8 +:102CF80030194868B089E3CD80800000000001E009 +:102D080080002A2A80002C98000001E4D401486839 +:102D1800300B700CF9DCC288F01F000430094848F9 +:102D2800B089D802000001E080002C98000001E47E +:102D3800EBCD40C0201D301B49366C0CF9DCC28835 +:102D4800F01F0012E06B00D7FE7C2800F01F001077 +:102D5800FAC7FFFEE06B00FFFE7C2800F01F000CA6 +:102D68000E9BFE7C2800F01F000B9A98EDB8000718 +:102D7800CF216C0C300BF9DCC288F01F00042FFD4A +:102D8800E3CD80C0000001E080002C9880002A2A52 +:102D980080002A48EBCD40C0201D49B6A96C8D0C97 +:102DA80049A730080F89F0091800C030F01F001833 +:102DB80030086C0CAE88F9DCC288301BF01F001597 +:102DC800E06B0082FE7C2800F01F00136C08F7D827 +:102DD800C008F1D8C10CFAC6FFFCF7E8109BFE7CCE +:102DE80028000CDBB18BF01F000C0DABFE7C28001B +:102DF800F01F00090DBBFE7C2800F01F00072FFD07 +:102E0800E3CF90C0000001E0000001E480002D380D +:102E180080002C9880002A2AEBCD40E049151896AE +:102E28000B893008F0091800C16148F70C9BFE7C3B +:102E38002800F01F000E6E08F0CCFFFF8F0CF7DCA7 +:102E4800C008C071F9DCC288F01F00093018AA88D0 +:102E5800E3CF90E048476E0CA98CF01F0006CE7BAC +:102E6800000001E4000001E080002A2A80002C987C +:102E780080002D9CEBCD40C0201D4A76A96C8D0C9E +:102E88004A6730080F89F0091800C030F01F002485 +:102E980030086C0CAE88F9DCC288301BF01F0021AA +:102EA800E06B00D2FE7C2800F01F001F6C08F7D8EA +:102EB800C008F1D8C10CFAC6FFFCF7E8109BFE7CED +:102EC80028000CDBB18BF01F00180DABFE7C28002E +:102ED800F01F00150DBBFE7C2800F01F0013E06BEF +:102EE80000FFFE7C2800F01F0010E06B00FFFE7C56 +:102EF8002800F01F000DE06B00FFFE7C2800F01F8B +:102F0800000AE06B00FFFE7C2800F01F00072FFD81 +:102F1800E3CF90C0000001E0000001E480002D38FC +:102F280080002C9880002A2AEBCD40C0201D4966DD +:102F380030090D88F2081800C1F14947E06B00FF1D +:102F4800FE7C2800F01F0012FACBFFFEFE7C280052 +:102F5800F01F00106E08F0CCFFFF8F0CF7DCC008E4 +:102F6800C071F9DCC288F01F000C3018AC881BBC9B +:102F78002FFDE3CD80C04857AC896E0CA98CF01F9B +:102F88000007CDDB000001E4000001E080002A2AF0 +:102F980080002A4880002C9880002E7CEBCD404091 +:102FA800201D3008FAC6FFFC301B0CE8300CF01F5F +:102FB800000EE06B00D7FE7C2800F01F000CE06BD1 +:102FC80000FFFE7C2800F01F00090C9BFE7C2800F7 +:102FD800F01F0007300B169CF01F00032FFDE3CFF6 +:102FE8009040000080002C9880002A2A80002A48FF +:102FF800EBCD40E03028FAC7FFF01896AE88109560 +:10300800C028AE880C9A0E9BFE7C2800F01F000892 +:10301800C0C10F882FF85C58EA081800FE98FFF323 +:103028004848B08CE3CF90E0E3CF80E0800029648B +:04303800000001E4AF +:10320000C0080000C0080000C0080000C00800009E +:10321000C0080000C0080000C0080000C00800008E +:10322000C0080000C0080000C0080000C00800007E +:10323000C0080000C0080000C0080000C00800006E +:10324000C0080000C00800000000000000000000EE +:10325000C0080000000000000000000000000000A6 +:10326000C008000000000000000000000000000096 +:10327000C008000000000000000000000000000086 +:10328000000000000000000000000000000000003E +:10329000000000000000000000000000000000002E +:1032A000000000000000000000000000000000001E +:1032B000000000000000000000000000000000000E +:1032C00000000000000000000000000000000000FE +:1032D00000000000000000000000000000000000EE +:1032E00000000000000000000000000000000000DE +:1032F00000000000000000000000000000000000CE +:10330000C0080000300CF01F0012580CF80F171006 +:10331000D603301CF01F000E580CF80F1710D60300 +:10332000302CF01F000B580CF80F1710D603303C50 +:10333000F01F0007580CF80F1710D6030000010407 +:103340004000011280000120C000012E80002BB43B +:10335000000000000000000000000000000000006D +:10336000000000000000000000000000000000005D +:10337000000000000000000000000000000000004D +:10338000000000000000000000000000000000003D +:10339000000000000000000000000000000000002D +:1033A000000000000000000000000000000000001D +:1033B000000000000000000000000000000000000D +:1033C00000000000000000000000000000000000FD +:1033D00000000000000000000000000000000000ED +:1033E00000000000000000000000000000000000DD +:1033F00000000000000000000000000000000000CD +:10340000286E756C6C2900000200000000B71B00DC +:1034100008000001000100000F011101100113015B +:103420001061040000000000300000001061040082 +:103430003861040000000000020000002061040068 +:10344000306104000000000004000000306104004E +:1034500000000000000000000000000010610400F7 +:103460003C0000000000EEEEEEEE18F09FE518F0D4 +:103470009FE518F09FE518F09FE50000A0E118F027 +:103480009FE518F09FE544000000B4080000B40870 +:103490000000B4080000B408000000000000E408C8 +:1034A00000003C003C00000000090000000000009B +:1034B00000000FE11F00C0E3130080E3C00080E3C1 +:1034C00000F02FE11CF09FE53D0200EB5A0200EBFB +:1034D0008D0200EB01008FE210FF2FE141F0DEFBD7 +:1034E00001F0DCFD3C0078000000FEE700005C001D +:1034F00000007847C046010000EA7847C046170040 +:1035000000EA8C119FE5002091E500300FE1841165 +:103510009FE5FD20A1E880019FE580219FE5012036 +:1035200042E00D0040E03C00B4000000020050E129 +:10353000280000AA68019FE50D0050E1020000BAD2 +:10354000042010E4042081E4FAFFFFEA58119FE50B +:1035500058019FE5000081E53C119FE550019FE582 +:10356000000081E51EFF2FE13C00F0000000481143 +:103570009FE5000091E524119FE5000081E52C11F5 +:103580009FE538019FE5000081E51EFF2FE17402F1 +:1035900000EB10019FE528119FE5042091E4042031 +:1035A00000E404219FE5020051E13C002C010000F1 +:1035B000FAFFFF1AF0109FE5FD20B1E803F02FE1BC +:1035C000E0109FE5002081E5E8109FE5F4209FE5ED +:1035D000002081E5021080E2000020E0010040E2CE +:1035E00011FF2FE101008FE210FF2FE13C00680185 +:1035F000000001F09CF87847000001008FE210FF06 +:103600002FE101F094F87847000003002DE9001045 +:103610000FE1001080E5B8109FE5041080E5001070 +:10362000A0E1100080E2FC1FA0E80020A0E13C0027 +:10363000A40100000130A0E10300BDE8080083E51B +:103640000C1083E5D300A0E300F021E10060A2E8C4 +:1036500000104FE1041082E4D200A0E300F021E169 +:103660000060A2E800104FE1041082E4D100A0E362 +:103670003C00E001000000F021E1007FA2E8001022 +:103680004FE1041082E4D700A0E300F021E10060E4 +:10369000A2E800104FE1041082E4DB00A0E300F098 +:1036A00021E10060A2E800104FE1001082E5000077 +:1036B00093E53C001C02000000F02FE11EFF2FE10B +:1036C000200000000403000020EE0100D8030000E9 +:1036D0000000000018F09FE5100100000803000042 +:1036E000EEEEEEEE2403000020020000B0B5041C54 +:1036F000631C0B4D3C005802000001D16C6910E0C6 +:1037000000F06CFB0948FFF70CFFEC60084A5168B9 +:1037100050688842FCD00220287001218A2001F0E4 +:1037200012F8201CB0BD3000070051020000000359 +:103730000700B0B5051C3C0094020000002400F016 +:1037400050FB1448FFF7F0FE13491448C1600121F3 +:10375000134A490391601349CA7808239A43CA70EF +:10376000CA7804231A43CA706B1C0DD00E4B5A68DA +:1037700059689142FCD0BE213C00D0020000197370 +:10378000197A112291431972197AC907FCD40221BE +:103790000170FFF7D0FE201CB0BD91020000FFFFBA +:1037A000FF003000070000100700000007000003C2 +:1037B000070000000000000000003C000C030000B7 +:1037C00000000000000000000000000000000000F9 +:1037D00000000000000000000000000000000000E9 +:1037E00000000000000000000000000000000000D9 +:1037F0000000000000000000000000003C00480342 +:1038000000000000000000000000000000000000B8 +:1038100000000000000000000000000000000000A8 +:103820000000000000000000000000000000000098 +:1038300000000000000000000000000000003C004C +:1038400084030000000000000000000000000000F1 +:103850000000000000000000000000000000000068 +:103860000000000000000000000000000000000058 +:103870000000000000000000000000000000000048 +:103880003C00C00300000000000000000000000039 +:1038900000000000000000000000000000000047E1 +:1038A000084710471847204728473047384710B582 +:1038B000041C101C00F023F903C410BC08BC1847FA +:1038C00000003C00FC03000010B4042A0ED3031CCB +:1038D0000B439B070AD108C810C9A34202D1043A7E +:1038E000042AF8D2A34201D004380439002A02D1B4 +:1038F000002010BC7047D30701D5013205E00378E2 +:103900000C7801313C00380400000130A34207D19B +:1039100003780C7801310130A34201D1023AF1D190 +:10392000181BE9E70000784700000020A0E304002E +:1039300051E30800003A03C010E20D00000A04C081 +:103940006CE202005CE33C00740400000120C0E46F +:103950000120C0A40120C0C40C1041E0060000EA10 +:1039600081CFB0E10120C0240120C0240120C04447 +:103970001EFF2FE1784700000020A0E300402DE962 +:103980000230A0E102C0A0E13C00B004000002E06F +:10399000A0E1201051E20C50A0280C50A0282010CB +:1039A0005122FBFFFF2A011EB0E10C50A0280C00A1 +:1039B000A0480040BDE80111B0E1042080241EFFB2 +:1039C0002F010120C0440120C0443C00EC04000051 +:1039D000400411E30120C0141EFF2FE178470000CE +:1039E000030052E33E00009A03C010E20800000A00 +:1039F0000130D1E402005CE30C2082E001C0D194EC +:103A00000130C0E40130D134042042E23C002805FA +:103A1000000001C0C0940130C034033011E21E0028 +:103A2000000A042052E22F00003A03C031E70200EE +:103A300053E30800000A0F00008A2C34A0E104C000 +:103A4000B1E5042052E20C3C83E1043080E43C0008 +:103A500064050000F9FFFF2A011081E2230000EA5B +:103A60002C38A0E104C0B1E5042052E20C3883E117 +:103A7000043080E4F9FFFF2A021081E21B0000EA13 +:103A80002C3CA0E104C0B1E5042052E20C3483E1F7 +:103A90003C00A0050000043080E4F9FFFF2A031079 +:103AA00081E2130000EA7847000010402DE9202051 +:103AB00052E20500003A1850B1281850A0281850BA +:103AC000B1281850A02820205222F9FFFF2A02CE48 +:103AD000B0E13C00DC0500001850B1281850A028C7 +:103AE0001800B1481800A0481040BDE802CFB0E16E +:103AF00004309124043080241EFF2F01822FB0E176 +:103B00000120D1440130D12401C0D1240120C0447E +:103B10000130C0243C001806000001C0C0241EFF74 +:103B20002FE178470000FF3001E20210A0E10324FA +:103B300083E1022882E188FFFFEA784700008024C1 +:103B400010E200006042413032E000106122A1C169 +:103B500070E02000003A3C005406000021C470E0F0 +:103B60000F00003A0004A0E1FF2482E321C270E0CC +:103B70001700003A21C470E00900003A0004A0E1F7 +:103B8000FF2882E321C470E00004A021FF2C8223DF +:103B900021C270E00E00003A3C009006000000C018 +:103BA00070E28300002A2004A021A1C370E08013EA +:103BB00041200220A2E021C370E000134120022036 +:103BC000A2E0A1C270E0801241200220A2E021C246 +:103BD00070E0001241200220A2E03C00CC06000070 +:103BE000A1C170E0801141200220A2E021C170E05B +:103BF000001141200220A2E0A1C070E0801041200D +:103C00000220A2E001C070E0001041200220B2E0DA +:103C1000E5FFFF2AC30F32E0A30F80E03C00080756 +:103C20000000001061221EFF2FE1784700000020F5 +:103C3000A0E3A1C170E02000003A21C470E00F00B1 +:103C4000003A0004A0E1FF2482E321C270E01700E3 +:103C5000003A21C470E00900003A0004A0E13C00F1 +:103C600044070000FF2882E321C470E00004A02183 +:103C7000FF2C822321C270E00E00003A00C070E2E7 +:103C80005000002A2004A021A1C370E0801341202D +:103C90000220A2E021C370E0001341200220A2E034 +:103CA0003C0080070000A1C270E080124120022089 +:103CB000A2E021C270E0001241200220A2E0A1C1D6 +:103CC00070E0801141200220A2E021C170E00011CB +:103CD00041200220A2E0A1C070E08010412002201B +:103CE000A2E03C00BC07000001C070E000104120D1 +:103CF0000220B2E0E5FFFF2A0200A0E11EFF2FE153 +:103D0000784700000A1040E2200140E0200280E0F5 +:103D1000200480E0200880E0A001A0E1002180E0F4 +:103D2000821051E03C00F8070000010080520A10A8 +:103D300081421EFF2FE130B4441C810708D0017876 +:103D40000130002902D1001B30BC70478107F6D139 +:103D50000B4AD50102C88B1A8B432B40FAD0001BAB +:103D60000A0601D103383C0034080000EFE70A04DA +:103D7000120E01D10238EAE70902090EE7D1013833 +:103D8000E5E7000001010101F0B4031C041C0C4331 +:103D9000A4070CD1104DEF0102E00431043A10C326 +:103DA000042A04D30C68661B3C0070080000A6437C +:103DB0003E40F5D0002A07D00C7801311C70013349 +:103DC000002C03D0013AF7D1F0BC7047012AFBD98F +:103DD000511E00221A7001330139FBD1F4E70101B1 +:103DE0000101784700000200A0E33C00AC0800009D +:103DF0000210A0E32EFEFFEA1F402DE900000FE1B4 +:103E0000C00080E300F02FE18100A0E30210A0E3F6 +:103E100001208FE212FF2FE100F0E6FC784700005E +:103E20001F40BDE8FEFFFFEA1F502DE93C00E808F7 +:103E3000000001008FE210FF2FE100F040FB784707 +:103E400000001F50BDE804F05EE21F502DE90100A4 +:103E50008FE210FF2FE100F018FB784700001F50A1 +:103E6000BDE804F05EE200BD01B500A000473C00E3 +:103E70002409000000300FE1C030C3E303F021E16A +:103E800001008FE210FF2FE101BD01B500A0004746 +:103E900000300FE1C03083E303F021E101008FE245 +:103EA00010FF2FE101BD000018009FE5041090E411 +:103EB0003C0060090000000051E30200000A0420F9 +:103EC00090E4002081E5F9FFFFEA0EF0A0E17C0913 +:103ED0000000000000004400000044000000D8037F +:103EE0000000D8030000D80300000000000000001C +:103EF00000003C009C090000440000004400000059 +:103F0000440000000080010000800100108E0100CC +:103F1000108E010088F8010001000000001004006C +:103F2000C433040000000400000000000E50A0E1B3 +:103F300058409FE53C00D8090000040094E40100CB +:103F400050E305F0A001041094E4042094E403007D +:103F500000EB040094E4041094E4070000EBF5FF88 +:103F6000FFEA010050E10EF0A001020051E104302F +:103F70009014043081143C00140A0000FBFFFF1A67 +:103F80000EF0A0E114209FE5002092E5010050E131 +:103F900004208014FCFFFF1A0EF0A0E1800900004D +:103FA000CC0900000008000020E60100130000001A +:103FB0005356435F000400003C00500A000020EE0E +:103FC0000100120000004952515F0002000020F27F +:103FD0000100110000004649515F8000000020F4FC +:103FE0000100170000004142545F00000000A0F4EF +:103FF00001001B000000554E445F3C008C0A00008D +:1040000000000000A0F401001F0000005553525FA3 +:10401000010000000E50A0E100600FE18C409FE520 +:10402000041094E4010051E30900000A040094E440 +:10403000011080E00310C1E3042094E43C00C80AAE +:104040000000C02082E302F02FE104D041E204200E +:1040500094E4130000EBF2FFFFEA06F02FE105F015 +:10406000A0E10E50A0E100600FE144409FE5041084 +:1040700094E4010051E30800000A040094E43C00C9 +:10408000040B0000011080E00310C1E3042094E45D +:10409000C02082E302F02FE104D041E2042094E446 +:1040A000F3FFFFEA06F02FE105F0A0E1010050E187 +:1040B00004208014FCFFFF1A0EF0A0E13C0A00006F +:1040C0003C00400B00000160C046C046C04670473F +:1040D0000000101E10EE020011E3FCFFFF1A100E8C +:1040E00001EE101E10EE020011E3FCFFFF1A1EFF8E +:1040F0002FE1101E10EE010011E30300000A101E54 +:1041000011EE3C007C0B0000001080E50100A0E3F4 +:104110001EFF2FE1000020E01EFF2FE18D46974695 +:104120007847C04678FDFFEA10B5041C032801D982 +:1041300000F0ACFB0C484068002800D003240B487A +:10414000016809483C00B80B00001230002905D076 +:1041500006216143405CC300181804E00621614356 +:10416000405C142358430A300006000E10BDD47A78 +:104170000100A869010080B5094A0949032000F03F +:10418000F2F9084908203C00F40B00000860486080 +:1041900007491D2001F0B2FC06491E2001F0AEFCCB +:1041A00080BD0000006C01003127000000100700F6 +:1041B0002925000031250000054980B508208860C8 +:1041C0001D2001F0BFFC1E203C00300C000001F05F +:1041D000BCFC80BD000000100700021C081CD12A96 +:1041E00080B501D105F019FC80BD034980B50020E0 +:1041F0000880052005F0D5FB80BDB074010080B5B6 +:10420000542801D106F0CDF880BD3C006C0C0000B4 +:10421000B0B5104D021C0124012A0D48296806D0B2 +:10422000C42A03D16A68002A05D0AC60B0BD0EF084 +:1042300089FB6C6008E00022AA606C600EF082FBD3 +:104240000021042012F0C8FC06F0D8F83C00A80CAD +:104250000000B0BD0000C4600100BC740100054A4C +:104260005169081A116909681031814201D85061F9 +:104270007047002070478C6E010001494968401A60 +:1042800070478C6E010001484069704700003C0097 +:10429000E40C00008C6E0100024A5169081850615C +:1042A000704700008C6E01000E490F4810B51922AE +:1042B000920141608918C1600B4900220C310160F4 +:1042C0000A49826009680123DB03C918084C41616F +:1042D0003C00200D00002168002902D0074901613F +:1042E00001E000F00CF8226010BD44DC01008C6E8F +:1042F0000100C809000034580100C4090000014849 +:10430000024908617047C80900008C6E0100082846 +:1043100005D23C005C0D0000034B8000195002499F +:1043200020310A5070470000646D010070B5061C12 +:104330000D480D1C0068141C002803D1201C00F03F +:1043400009FC70BD280601D500F022FE221C291CA4 +:10435000301C08F03C00980D0000DDFD011C0348F6 +:1043600054304369321CFFF71BFB70BD0000506DD9 +:104370000100F8B5061C0D481F1C0068151C0C1C1C +:10438000002802D1281C00F0E8FB200601D500F02F +:1043900002FE2A1C211C3C00D40D0000301C08F039 +:1043A000BDFD011C0348543043693A1CFFF7FBFA7A +:1043B000F8BD0000506D0100F8B5F1284ED12A4833 +:1043C00069468269FFF7EEFA274900265439C86822 +:1043D0008B68C2000130D5183C00100E0000072881 +:1043E000C86000D1CE6022486C680068002803D005 +:1043F0000021201C08F03BFB6E6025682089A9780D +:104400000239401AE978401A2081A8782818023821 +:1044100020606E782878082817D23C004C0E0000E7 +:10442000300607D5271C201C00F07AFC041C381C21 +:1044300000F09CFB28780F49403980000A58002A78 +:1044400004D0311C201CFFF7B3FA08E0052100E07E +:104450000421062000F010FA201C00F03C00880E19 +:10446000000087FB300601D500F0A1FDF8BD012159 +:10447000062000F004FAF9E70000A46D0100CC5C0E +:104480000100F8B51A4D194F01245435291C032099 +:104490007C60174B184A05F0F4FB002802D03C0062 +:1044A000C40E0000002038601FE03C600721281C7B +:1044B000EA69FFF783FA382000F080FC0024B86036 +:1044C000B868E60035186846022100F075FB2860E0 +:1044D000281C00F0A5FDB868815906485430026ACE +:1044E0003C00000F0000FFF76CFA0134072CEADBF8 +:1044F0000020F8603861F8BD0000506D0100819A1D +:104500000000619A0000054880B50068002805D0C9 +:1045100003485430426A0021FFF753FA80BD506DC2 +:1045200001003C003C0F00007047000070B50A4ECF +:10453000094D084C083EA169002907D03068416048 +:10454000007B81006958FFF73EFAF4E70349022037 +:10455000087070BD00100700E07E01000002070037 +:1045600070B50A4E3C00780F0000094D084C083E1B +:10457000E169002907D070684160007B81006958BB +:10458000FFF724FAF4E703490220087070BD001019 +:104590000700E07E010000020700B0B5094D041CD1 +:1045A000281C202240303C00B40F00000549FFF7D2 +:1045B0009FFAE068E86020692861A06AA8626068E4 +:1045C0006860B0BD7052010000100700F8B500240B +:1045D0000023202801DB012407E0084E8000355825 +:1045E000074FBD4200D02B1C3C00F00F00003150A3 +:1045F0001360002C03D0211C822000F052F9201CF3 +:10460000F8BDE07E010075750000B0B50B4D041CCF +:10461000286800280FD0201C12F0B7FD00280AD00F +:10462000217A287A0A070007000F3C002C100000AE +:10463000120F9042297201D00120B0BD0020B0BD00 +:1046400070780100F0B5424E051C306885B0002836 +:1046500063D000240020002D06D06978182903D1EA +:10466000E979012900D10120002845D03C006810DB +:1046700000000020B07281004A19937A5906890F10 +:10468000DB0604D5B37A01278F403B43B372D27A5D +:1046900013091207120F934205D301228A401443D3 +:1046A00001AA8900505001300428E4DBB07A3C00B4 +:1046B000A4100000204001070DD5410709D5C1070E +:1046C00005D5810701D5002405E0029902E0019992 +:1046D00000E003990491410709D5C10705D5810779 +:1046E00001D5002403E0029900E001990391C1077C +:1046F0003C00E010000005D5810701D5002401E051 +:1047000002990191800701D5002422E00F2C20D1CD +:10471000706800280BD0049A02AB00920ACB019A71 +:10472000281C0BF08AFB0020706010E017E0307A44 +:10473000297A3C001C11000000070907090F000F2F +:10474000884207D0049A02AB00920ACB019A281C37 +:104750000BF076FB287A307201200F2C00D000205D +:1047600005B0F0BD0120FBE7707801000D4A70B57F +:10477000116800203C005811000000290ED0117A69 +:1047800009060BD5537A947A032101252A1C8A4005 +:104790001E1C164003D0224001D1012070BDFF3104 +:1047A00009060916F2D570BD00007078010010B539 +:1047B000084C206800283C009411000004D0606878 +:1047C000002801D10BF0C0FB00200021002207C40B +:1047D0000C3C0120606010BD70780100014901208F +:1047E0000860704770780100F8B50E4D041C002079 +:1047F0006872201C12F0DEFC3C00D0110000002882 +:1048000012D00020032101220F1A161C237ABE4069 +:10481000334004D06B7A161C864033436B720130F0 +:104820000006000E0328EFD9F8BD70780100920051 +:1048300051188A7A1207120F02703C000C12000005 +:10484000CA7A1207120F4270CA7A12098270097B63 +:1048500081807047034A0F21527A0120914300D092 +:10486000002070477078010040070549400F054A55 +:104870000956527A01200A4000D100203C0048121B +:104880000000704700005E46010070780100124A87 +:1048900070B5537A947AFF20032101252A1C8A409F +:1048A0001E1C164014D0224012D10806000E07D05C +:1048B000012807D0022807D0032807D107203C0091 +:1048C0008412000070BD032070BD012070BD052062 +:1048D00070BDFF2070BDFF3109060916E1D570BD1E +:1048E00070780100F8B5041C13480D1C816800297C +:1048F00005D0017B002901D104734573F8BD0F4E2B +:104900003C00C0120000311C20318A7900AB1A70C3 +:10491000C97959704268002A07D020022843011C37 +:104920000020FFF77EF8002804D12A1C211C00205B +:1049300011F00FF800AB1888F084E2E70000885A05 +:1049400001003C00FC1200000010070080B50121AE +:104950008120FFF7CDFF80BD0149012088607047AD +:10496000885A0100054980B500208860087B00282E +:1049700002D0497BFFF7BCFF80BD0000885A0100D0 +:10498000024A011C3C003813000050685160704717 +:104990000000885A010010B50C1C07F064FA04618D +:1049A000002010BD0000FFB50E1C1F1C382081B078 +:1049B00000F03DFA1D49041C4869002801D14C61F2 +:1049C00000E0046030013C0074130000009000041B +:1049D000000C00F015FA051C0099FFF78BF8002079 +:1049E000731E04E001014A1910326A5001309842E6 +:1049F000F8D300012D503821201CFFF77BF8A5606B +:104A00006560E6850C2060863C00B0130000AF2096 +:104A10008001E0610E20E086002020600198E060C7 +:104A2000386860610399044808600448386005B03C +:104A30000020F0BD0000FC5A0100DD150100FD164C +:104A40000100021C081CF02A80B53C00EC13000099 +:104A500004D0F12A07D106F009FB80BD07F00CFA5B +:104A60000DF0A8FA80BD01210220FFF74DFF80BDA7 +:104A70000149002048617047FC5A0100002802D01B +:104A8000002900D0C1607047F8B5171C3C002814FD +:104A900000000E1C051C1C1C1C3007F0C8F8016926 +:104AA000426980688919891A814206D2231C3A1CFE +:104AB000311C281C00F005F8F8BD0020386020608B +:104AC000FAE7FFB585B0059801270E1C1C303C00A5 +:104AD0006414000007F0AEF8041C808804300390D2 +:104AE0002C48049080790290A069B04217D2351A00 +:104AF00011E00398FFF716FC002806D101218E2053 +:104B0000FFF708FF0025002705E02168016020600D +:104B10003C00A0140000A0690130A061013DEBD26F +:104B2000002F35D0A069801BA06120698019206109 +:104B30006169401AE168884203D907218E20FFF796 +:104B4000ECFE25682F1C701E019500E03F680138BF +:104B5000FCD23C00DC140000386820600298049904 +:104B600088712E682C60321D0092291C2031012290 +:104B7000281D059B08F07AFCBD4201D0351CF0E7EA +:104B800000203861019807990430086008980437BC +:104B9000076009B03C0018150000F0BD02980499A8 +:104BA0008871F9E700002010070038B5041C151CB7 +:104BB00000200C6009E0E268201C0092A38A2168B2 +:104BC000A26908F056FC201CE468002CF3D1286090 +:104BD00038BD80B50CE03C0054150000C2688A4224 +:104BE00008D10021C160002803D106218E20FFF7E3 +:104BF0009DFE80BD101C0028F7D0EFE710B5041C07 +:104C00000CD0A069002806D12069002803D006F046 +:104C1000F7FD00202061201C3C009015000006F0EC +:104C2000F2FD10BD000010B5002809D0C46803E0F3 +:104C3000FFF7E7FF201CF9E7002CF9D1FFF7E1FFB0 +:104C400010BD011C002004E00A89C9681018000486 +:104C5000000C0029F8D1704700003C00CC15000082 +:104C600000E0081CC1680029FBD17047F8B5061C9C +:104C70000C1C1C2000F068FA051C002E01D1002C31 +:104C800002D1301C012103E0201C00F05DFA00215C +:104C9000002200920A1C011C231C281C3C00081640 +:104CA000000008F0F2FB281CF8BDB0B503329208F2 +:104CB00092001404240C09191D1CC9180904090CBC +:104CC000FFF7D7FF018902681219091B491B02600F +:104CD0000181B0BD0000F8B50A4CA021201C3C00A9 +:104CE00044160000FEF72AFF0020261CA036074DC0 +:104CF00007E00C21414349190EC9271D0EC7203476 +:104D00000130A642F5D1F8BDD05C0100C83F0100DA +:104D1000F7B5C468061C0025002C82B023D020897A +:104D20003C0080160000904220D3E168871A019170 +:104D30000021E16003990020FFF7A1FF051C2089F5 +:104D4000C01B20812A680399301C00F016F82089C6 +:104D5000C01920810199201CFFF7B1FE211C281CDD +:104D6000FFF73C00BC160000ADFE291C301CFFF70D +:104D7000A9FE0120002D00D1002005B0F0BD0000EB +:104D8000F7B5041C0E1C002001E0201C0C1CE1687F +:104D90000029FAD12789B7420AD3B81B0004000CB6 +:104DA000208121683C00F816000009180298321C86 +:104DB000FEF7FBFEFEBDF11B0D042D0C002819D0E3 +:104DC0000189A94216D3491B0904090C0181006815 +:104DD000411802982A1CFEF7E8FE21680298721B0F +:104DE0004019FEF7E2FE3C00341700002089C01B8A +:104DF00020812068C0192060DFE703218E20FFF7A3 +:104E0000ADFDDAE7F8B5041C002613E02189002087 +:104E1000FFF73EFF051C228921680068FEF7C8FEE7 +:104E2000002E01D12E1C03E03C0070170000291C4D +:104E3000381CFFF750FEE4682F1C002CE9D1301C11 +:104E4000F8BDB0B5041C0089401A050420682D0C7B +:104E50004018291CFFF71FFF2189491B2181E168A8 +:104E6000C160E060B0BD10B503303C00AC1700007D +:104E7000094A810810683D24084B6401890009181B +:104E80001B19994201D8116010BD0F218020FFF736 +:104E90006BFD002010BD0000B4CF010014C801005C +:104EA00010B511F061FF041C03D10D213C00E8177F +:104EB00000008020FFF75BFD201C10BD0000B0B596 +:104EC000011F0B680D480022834204D001321030CC +:104ED000032AF9D301E0032A06D30924211C8020E8 +:104EE000FFF745FD201CB0BD054B00249A793C001E +:104EF0002418000085680D6081609A71F5E7000054 +:104F00002057010020100700B0B50021104A0023EF +:104F1000D468844204D201331032032BF8D301E069 +:104F2000032B01D304210EE00A4CA37990680028DA +:104F30003C006018000002D1A371032106E005685F +:104F40009560A371002901D104C0B0BD8020FFF796 +:104F500014FD0020B0BD2057010020100700A03034 +:104F6000008A4007400F08280FD201A31B5C5B009A +:104F70009F443C009C18000005030305070709092E +:104F800001207047002070470220704703207047BF +:104F900004207047B0B5104D6869002807D00E494D +:104FA00000222C3103C90143032006F0CFFF0B4C34 +:104FB000002203CC3C00D8180000083C0143032029 +:104FC00006F0AFFF03CC084307494A6802434A6032 +:104FD0008A681043886001206861B0BD0000647376 +:104FE0000100B058010010000700B0B50C1C0FF014 +:104FF000A8FA054DE86A3C0014190000002806D103 +:10500000002C04D0201C0FF0B7FD01202870B0BD8B +:10501000F46E0100054980B5886A002804DA002092 +:10502000886201210DF042FD80BD0000AC7E0100D0 +:10503000F8B51E4D041C00203C00501900006862A9 +:10504000A8701C480078C00722D5B82003591A4818 +:1050500000780E2809D10A1C803206D0184E0D2087 +:10506000325C8A4201DD0138FAD1591E0B061B0E53 +:10507000AB70AB620E280BD208E03C008C1900002C +:105080006218B032127B824202D8581AA86202E03B +:1050900001390029F4DA0EF035F9009000AB1878E8 +:1050A0005978814200D95878ED30E8700121201CF0 +:1050B0000DF002FDF8BD0000AC7E01003C00C819F7 +:1050C00000001D75010011670100C75201000E4963 +:1050D00010B508698B68C200D4186268002A0FD125 +:1050E00001300861072801D100200861201C00F070 +:1050F00024F8054821685430026AFEF7ECFC3C00B5 +:10510000041A000010BD06210620FFF74BFC10BD5D +:10511000506D010008490979C907084A08D400E020 +:10512000081CC1680029FBD101890431018100E01C +:105130000020D0627047000060800700046C01000E +:105140003C00401A000010B5041C19218901002000 +:10515000FFF7C5FD011C60602068FFF7E0FC606898 +:1051600021680830086010BD00000A2801DA042018 +:1051700004E0502801DA052000E00720044A1178F5 +:1051800038233C007C1A0000C000184099430843B3 +:105190001070704788000700B0B5051C07484068CC +:1051A00008E00169A94204D1446805F0C7FD201C4C +:1051B00000E040680028F4D1B0BD0000587501003F +:1051C000F8B500253C00B81A000006F084FD114F28 +:1051D000041CBE792068002807D1A0880430FFF79E +:1051E000F2F8002806D101210FE001682160A169D1 +:1051F0000139A16110C0051C20690130206161697D +:10520000401AE16888423C00F41A000003D90721E3 +:105210008E20FFF7D3FBBE71281CF8BD20100700BD +:10522000B0B509F0BBFF2F4C0028207403D001213A +:1052300001200AF071FC2B4D1435286800284DD050 +:1052400001210F2011F082FD3C00301B0000288955 +:1052500008F0FBFF011C01220F2011F040FDE07857 +:105260000125022836D10AF0C6F800280AD00BF032 +:1052700092FB1E490968401811F05FF8002801D11F +:1052800002202FE0E078022824D13C006C1B0000B3 +:1052900060702570606801281CD015481038817B2B +:1052A000002904D185730F20134910F001FC08F088 +:1052B0004FFE002807D00E4801219838006901F000 +:1052C000B7FD002805D001200EF00CFD3C00A81B06 +:1052D000000001200EF01DFCB0BD05F0DCFEB0BDED +:1052E000E078002801D12570F7E7032000E00420D2 +:1052F0000DF08DFAB0BD846601006C570100E90322 +:10530000010070B5041C002100200A4D00E03C00A3 +:10531000E41B00000131CB005A191679012E02D08E +:105320005279A24202D00B29F4D370BD0B29FCD2D2 +:10533000C80001215A192858117170BD3858010050 +:10534000054880B5007F2423044958434018006A6B +:105350003C00201C0000FEF7DAFB80BD0000D47981 +:1053600001009446010080B504F037FF002011F0E1 +:1053700084FC002080BDB0B5054C051C206BE16AA3 +:1053800002F0E3FD291CA06A02F011FBB0BDA46C81 +:1053900001003C005C1C0000B0B5031C081C141C80 +:1053A000002B0C4D09D06969890001310A04120CE7 +:1053B0002280291CFEF73EFC0AE0011C281C2288E2 +:1053C000FEF738FC2088012802D98008013868617E +:1053D0000120B0BD3C00981C0000206E0100F1B51A +:1053E00000980026C168086809891C2934D3C1883F +:1053F000FF23013399422FD10188C91A2CD141884A +:10540000082929D10179062926D14179042923D1F6 +:1054100000250024071C3C00D41C000018370BE0BA +:10542000A000411804310422381CFEF78BFB002831 +:1054300001D1012504E001340A494869A042EFD8AE +:105440000849087800280AD0012801D0022806D18E +:10545000002D04D10098C0683C00101D0000FFF72B +:1054600042FC0126301CF8BD0000206E01000148FE +:10547000406870470000206E01000249486001202A +:10548000486170470000206E010070B5041C0126C1 +:1054900003F0EFFA251C103500283C004C1D0000DD +:1054A00004D00020207703F0F1FB07E003F038FD83 +:1054B000002809D00120207703F0CEFC011C062231 +:1054C000281CFEF7C3FB02E0022020770026301CD8 +:1054D00070BD00000348807AC00703493C00881D66 +:1054E0000000C00F88627047000040900700A46C65 +:1054F00001000149012088627047A46C0100064840 +:10550000807AC107064AC90F91622021800700D422 +:105510000021A032117070470000409007003C004D +:10552000C41D0000A46C0100074A1268074B9B6968 +:105530001A4001D0012200E000220A600121002A65 +:1055400000D000210160704710000700A46C01002A +:10555000012202600A607047B0B50D1C011C583171 +:105560003C00001E0000041C0622281DFEF777FBED +:10557000211C5E310622281C0A30FEF770FB211C1C +:1055800064310622281C1030FEF769FBB0BDFEB561 +:1055900000251D72171C0E1CB26D0021921950328D +:1055A000D27A3C003C1E00001C1C5A720078321C4F +:1055B0008032C007C017013001900898029200287D +:1055C00001D1307F2BE037480068002800DD011C46 +:1055D0000198002802D00898012810D1029A906BF7 +:1055E000002806D03C00781E0000884201D9451AE8 +:1055F000013D7019B03003E0B56D013D70195030B8 +:10560000007B0FE0029A106A002807D0884201D977 +:10561000451A013D7019A030007903E0BD69013DD4 +:105620007819007FA0723C00B41E00000EF00CF848 +:105630000E2811D1A07A08F067FF00280CD07868F6 +:10564000002805D11B480025007808F04BFF02E038 +:10565000451E7819007AA072029A5069002817D066 +:105660000898012814D0A07A3C00F01E000008F031 +:105670004EFF00280FD00198002807D0022020728A +:10568000706C80194030C079607204E07D68013D23 +:105690007819007AA072029AA07A916908F051FFF5 +:1056A0002060029A607A916908F03C002C1F00008B +:1056B0004BFF6060A07AE0722573FEBDD47E0100CE +:1056C000905701000006000E002A8CB501D08A22F6 +:1056D00000E0882200AB1A800CF0C2F80190684606 +:1056E0000BF0BCFA8CBD0000011C08483C00681F90 +:1056F000000080B50068002809D049680220002910 +:1057000000D101200106090E002006F0D8FF80BD5F +:105710000000206701001CB50190041C443001AA60 +:10572000694611F0B8FD00280BD0A06900213C00AB +:10573000A41F0000C207D20F0220FFF7C9FF0021FB +:10574000201C0FF0D9FE1CBD04219820FFF772F930 +:10575000F9E700008CB500AB84211980054B021CD1 +:10576000181C998A0CF08EF8019068460BF07CFAB0 +:105770003C00E01F00008CBD0000707C0100704701 +:105780000000064980B5C96814234031897A044A6B +:105790005943891880000858FEF7E9F980BD707CEC +:1057A00001005447010080B50020FFF7D6FF80BDFF +:1057B00000003C001C20000080B512481149808A7E +:1057C0000A8B00210028C2B00CD1012A05D0022A80 +:1057D00015D000AB5A800E2207E0022200AB5A809F +:1057E000998004E000AB5A800D2200AB9A8000AB98 +:1057F0001880FF203C00582000009871D97168463D +:1058000000F0D1F942B080BD0000707C010010B5FD +:1058100009F05FFC002005F02AF9034CE08A05F04E +:1058200036F9201C0FF0B3FE10BD707C01001CB5D2 +:1058300009F04FFC07203C009420000000AB074C0F +:105840001880E18A201C0CF00BF8019068460BF0E0 +:1058500017FA201C0FF09EFE1CBD0000707C01009A +:1058600080B502219820FFF7F1F880BD10B5154CE6 +:10587000C2B0A08A002803D03C00D020000001283C +:105880001ED1022000E00120E168403188722069C9 +:1058900008F023FD021C0C4818388088E1680FF0DE +:1058A000A4FEA08A00AB18800120588000209880B8 +:1058B000FF219971D871684600F03C000C2100006E +:1058C0007BF942B010BD03219820FFF7C5F8F8E737 +:1058D000707C01007047000080B503480FF060FE47 +:1058E000002005F0CDF880BD707C010080B5024835 +:1058F0000FF056FE80BD0000707C01003C00482186 +:10590000000080B502219820FFF7A9F880BD80B57E +:105910000320FFF734FF80BD0000F0B5214E0027C3 +:10592000B18A301C002504240029008BC3B01ED18D +:10593000012807D0311C498B022812D100293C00D4 +:105940008421000007D1002405E000240125022065 +:1059500000ABD8801F810FF07FFF002C10D1F168C1 +:105960000520403188720EE000291AD100ABD880A2 +:105970000E2002E000ABD8800D2000AB188107E0BC +:105980003C00C0210000301C0FF013FE201CFFF76C +:10599000FCFE002D08D0B08A00AB9880FF209872E2 +:1059A000DF7201A800F011F943B0F0BD0000707C77 +:1059B000010010B5002005F06CF8044CE08A05F0F9 +:1059C00078F83C00FC2100000FF04CFF201C0FF089 +:1059D000F3FD10BD707C010080B50420FFF7D8FEF8 +:1059E00001480FF0E9FD80BD707C010080B5022008 +:1059F000FFF7CEFE012005F05FF802480FF0DCFD56 +:105A000080BD00003C0038220000707C010080B5A1 +:105A10000320FFF7C0FE80BD0000B0B51D4DC2B031 +:105A2000288B00ABFF21588099710021D971AA8A77 +:105A30000024012A18D12A1C528B02280FD1002AD7 +:105A400016D1032058803C007422000099802C1C41 +:105A5000FF22981DE969FEF73BF9E1680420403117 +:105A6000887210E0002A06D101240E2001E00124F2 +:105A70000D2000AB9880281C0FF0A4FD0420FFF738 +:105A80008DFE002C05D0A88A3C00B022000000AB9F +:105A90001880684600F0A5F842B0B0BD0000707CE8 +:105AA000010010B5002005F000F8034CE08A05F075 +:105AB0000CF8201C0FF089FD10BD707C010080B532 +:105AC0000420FFF76EFE01480FF03C00EC220000BE +:105AD0007FFD80BD707C010080B50220FFF764FE71 +:105AE000012004F0F5FF02480FF072FD80BD0000B8 +:105AF000707C010080B50320FFF756FE80BD0000DA +:105B0000B0B5194D0424A98A281C028B3C00282317 +:105B10000000C2B0012914D1408B042A0BD1002807 +:105B200000D100240FF0ADFE002C19D1E96805204A +:105B30004031887217E0002810D100AB5A800E2047 +:105B400002E000AB5A800D2000AB988019803C0029 +:105B500064230000FF2098710020D871684600F08F +:105B600049F842B0B0BD281C0FF038FD201CFFF7EB +:105B700021FEF6E7707C010010B5002004F09EFFC6 +:105B8000034CE08A04F0AAFF201C0FF027FD10BD93 +:105B90003C00A0230000707C010080B50420FFF7CA +:105BA0000CFE01480FF01DFD80BD707C010080B52A +:105BB0000220FFF702FE012004F093FF02480FF0DD +:105BC00010FD80BD0000707C0100B0B50A4D011CC5 +:105BD00044313C00DC230000041C0622281CFEF794 +:105BE00089F8EC60206903F097F8011C0622A818D8 +:105BF000FEF780F80420FFF7F7FDB0BD707C0100D0 +:105C000090B5041C808893B0002806D01549062260 +:105C1000488018313C0018240000881FFEF76DF8FA +:105C200068460CF014F82088012808D16088032801 +:105C300005D1A088002802D106200CA90870A079FF +:105C40000621FF2804D0E079002801D0011C08318A +:105C50000B2008AA50723C0054240000201C08F0BD +:105C60003BFF039068460BF031F813B090BD000085 +:105C7000587C0100074B1A78824201D0002907D0D6 +:105C8000FF201870044801880122520391430180CB +:105C9000704700004C7B01003C00902400003280E3 +:105CA000070010B5041C0C2307495843401800791D +:105CB0000AF04FF901200349A04008390A7810433F +:105CC000087010BD0000747A0100034A00211154CD +:105CD000800030321058017070473C00CC24000026 +:105CE000E07A010010B5041C052801D3FEF712FF6D +:105CF000201CFFF7EDFF0021201C0EF089FB10BDDA +:105D0000054980B58860087F242304495843085812 +:105D1000FDF76CFF80BD0000D47901003C00082530 +:105D200000009446010080B501219120FEF7C7FED6 +:105D300080BD024A11688143116070470000786E8F +:105D4000010080B5FEF7E9FE80BD80B5FEF7E5FEF7 +:105D500080BD80B500F031FA80BD034980B53C00BC +:105D6000442500000420886000F0D0F980BD0000C8 +:105D70000030070080B500F099FA80BD80B500F0D2 +:105D800099FB80BD38B5202815D20D4C221C20323D +:105D9000957900AB1D70D2795A700A4B82009950E8 +:105DA0003C008025000001218140084801604268D4 +:105DB0001143416000AB1888E08438BD0121FF2009 +:105DC000FEF783FEF9E70010070030740100004081 +:105DD0000700202809D20549064B82009950054A40 +:105DE00051683C00BC250000012383409943516069 +:105DF00070470000A97500003074010000400700E2 +:105E0000024A11680843106070470000786E010074 +:105E10000B48016803221204114301600168072244 +:105E2000120691433C00F825000001225206891811 +:105E300001600168120C11430160016852081143AE +:105E400001607047000080000700FEB51C4E051C75 +:105E5000B08AF26812D00124002909D1116D02AA7A +:105E600001ABFEF7F8FE3C00342600000298002843 +:105E700001D000240BE001AA02A9281CFEF770FF44 +:105E800005E0116D02AA002401ABFEF701FF0E49E7 +:105E9000081C2030827900AB1A70C07958703068C5 +:105EA000002802D1029830603C007026000002E019 +:105EB00002987268D060019800AB70601888C8843E +:105EC000F068C06CF060201CFEBD247E0100001054 +:105ED0000700F8B5041C54271D4E00203060706088 +:105EE00067433804151C000CB1823C00AC2600004E +:105EF000FFF796F8082130610026174A14E0031CCA +:105F0000243342610361C661018308330360B12316 +:105F10004360031C6433C3600C230381031C5433AC +:105F20004C3028C0013C181C002CE8D13C00E8266D +:105F30000000094E07223069D243C1195050021C9B +:105F4000103280398A63F060B06000210020FFF7D2 +:105F500088FF3069F060B060F8BD247E01009100D8 +:105F600005000148406A70470000E87D01003C00E0 +:105F7000242700000148008870470000FC6B0100E6 +:105F8000064980B508880130088005490820086066 +:105F900004498869886100F021F880BDFC6B01002C +:105FA0000010070000300700034A0120121D06CA36 +:105FB0003C0060270000914200D100207047E87D3E +:105FC0000100064800B5C07C002803D1FFF7EFFFB1 +:105FD000002801D0012000BD002000BD0000A080ED +:105FE000070010B5041C800702D506F03EFD03E053 +:105FF000E0073C009C27000001D506F0E3FD6007A8 +:1060000001D5FEF7ABFD10BD024A011C10681160FE +:1060100070470000E87D010038B5204D2C1C20346D +:10602000A07900AB1870E0795870FEF727FA00AB42 +:106030001888E8843C00D82700001A488178082294 +:1060400091438170817811438170174841688022A3 +:1060500091434160016811430160002001306428D0 +:10606000FCD3A0790F4D00AB1870E079104C58703C +:10607000201C103000F03C0014280000DFFB002042 +:10608000C043A061FFF79CFF002809D00A490869B6 +:106090000130086100203C318968486306F0EEFC5D +:1060A00000AB1888E88438BD001007000000070026 +:1060B000F4000700003007003C0050280000E87D95 +:1060C00001000A4880B5006A002801D0FEF7C1F936 +:1060D000074807493C30806810304861012008615A +:1060E0000549086880229043086080BD0000E87D73 +:1060F000010000300700F40007003C008C2800007D +:1061000080B50CF0CBFE06F0BFFC80BD0149C86233 +:1061100070470000E87D0100024A916A08439062DE +:1061200070470000E87D01001823064958434018D5 +:106130000021027903681A70013108303C00C82838 +:1061400000000329F8D370470000285201000349DA +:10615000002800D0011C024881627047000085754C +:106160000000046C0100F8B5FFF733FF284F00284A +:1061700004D0FFF7C8FF386A01303862F86A3C0083 +:1061800004290000002802D0018904390181386BFC +:106190000025002808D00B203D6310F0E5FA1E49C9 +:1061A000086821229043086038783C211B4A41430B +:1061B0008C18FF22796A3A7000290CD0B969013134 +:1061C0003C0040290000B9617D62BD68002D04D00B +:1061D000636B7A6B0021FDF747FDF8BD042803D3FC +:1061E00001218420FEF7A1FC3869261C01303861AA +:1061F00020363078022803D00C218420FEF795FC4D +:1062000035703C007C290000A1690029E8D0636B4F +:10621000303420780C1C00217A6BFDF727FDDFE776 +:10622000046C0100F400070018DB010010B50B4CF2 +:10623000606A00280ED00A4800F012FB002060625D +:10624000A468002C3C00B829000005D07E23DB4365 +:1062500000220121FDF70DFD10BDE0690130E06174 +:1062600010BD046C010000300700094841683F225E +:10627000120491430D2212048918416041680122E1 +:106280005202914341603C00F429000003488178A8 +:1062900081708178817070478000070000000700DE +:1062A000F0B50125082400200E4A0F4900263C23A2 +:1062B0004343D1529B185D719B605E611C82C02775 +:1062C000DF602027FE549E613C00302A000030270A +:1062D000FE54074F3F182037013005289F63E9D34C +:1062E0000548FF3201329062F0BD18DB0100BEBAF2 +:1062F000000030800700066C0100014948607047CB +:106300000000046C01000549085C3C006C2A000098 +:10631000054949684018C006C00E0449203048723B +:1063200070470000A0570100046C010000800700C6 +:1063300080B515218420FEF707FC80BDF8B54348E1 +:1063400084680334424D04E0201C10F03C00A82A6D +:106350000000B9F8002871D12869C007F7D53E4878 +:1063600028603E4A141C2034207900903C233C498C +:10637000584345182879FFF7CCFF281C3A490830C4 +:1063800048600126081C0660686A00280DD03C00A1 +:10639000E42A0000A96A926A354B9F68D71B1A68E5 +:1063A000511879188A425A6800D800E0013206C0B4 +:1063B000E86AFEF787FF2D49E86A4860301C0E60E6 +:1063C00066791FE02B484661047F2949201C50391B +:1063D0003C00202B0000896AFDF75AFC009884429B +:1063E00010D03C202249604340188769002F09D013 +:1063F0000021203001707E23DB4302210022201C7B +:10640000FDF74CFC0120A0408643002EDDD1E96958 +:1064100000293C005C2B000003D03020405DFDF7DC +:106420003AFC164C503C606A002803D00A218420B4 +:10643000FEF796FB20352878012803D00B21842015 +:10644000FEF78EFB02202870E068013000E007E0D4 +:10645000E06000983C00982B00002070009860706D +:106460000A4800686063F8BD0000000107000040B2 +:106470000700010000013080070018DB0100003038 +:106480000700546C010000A00700786E01003C2258 +:106490003C234A4309493C00D42B0000B0B55418B2 +:1064A00058434518211C3822281CFDF7E5FCA06B39 +:1064B0000078A96B0870002020342070B0BD000067 +:1064C00018DB01003C230749584310B54418203419 +:1064D0002078022803D10D213C00102C00008420DC +:1064E000FEF747FB0020207010BD18DB0100FFB550 +:1064F0003C2048431A4981B04418261C2036307885 +:10650000151C0F9F022803D104218420FEF731FBC4 +:106510000120307025710B9930223C004C2C00007A +:1065200061800A99E1620D99A1610C99E1610E996E +:106530006162A762019911557E21C9436163049983 +:10654000002900D10020061C281C08F08BF8002828 +:1065500001D0022000E00020A16B30433C00882CD9 +:106560000000087005B0F0BD000018DB010080B528 +:1065700014218420FEF703FB80BD0148407870475A +:106580000000046C010002480069C007C00F70479A +:10659000000000400700011C3C23044A59433C0012 +:1065A000C42C00008918203109780120002900D06E +:1065B0000020704718DB01000848406A00280AD113 +:1065C000074A002120239B5C022B04D001313C327E +:1065D0000529F7D37047012070470000046C0100C3 +:1065E0003C00002D000018DB0100F8B50E1C041C57 +:1065F000171CFEF782FE201C114C606001202060F9 +:10660000104D686901306861686A002803D007216D +:106610008420FEF7BAFAA068400703D5062184203B +:10662000FEF73C003C2D0000B3FA08480069002842 +:1066300003DAAA218420FEF7ABFA02206862AE607A +:106640002F70F8BD00300700046C01000040070007 +:10665000044A518010710348034908304860012002 +:10666000086070473C00782D00003C6C0100003051 +:1066700007000021002305E002894360C06851182B +:106680000904090C0028F7D104310804000C7047F4 +:106690000000024A516B0843506370470000046CCD +:1066A000010038B50A4C3C00B42D0000221C2032F9 +:1066B000957900AB1D70D2795A7003684068064A1C +:1066C0005065054813655030816000AB1888E08440 +:1066D00038BD000000100700046C010098B50D4C97 +:1066E000201C2030817900AB3C00F02D0000197097 +:1066F000C07958700A4800F0ECF809490020486257 +:10670000FFF769FF002803D012218420FEF749FA21 +:1067100000AB1888E08498BD00000010070000302E +:106720000700046C01000348017A3C002C2E000095 +:10673000FE2291430A310172704700000080070079 +:1067400090B50E4C85B0A078022814D10320A0701B +:106750000B4900200022049202900391E18801225B +:1067600001920091617820782269E3683C00682EEC +:10677000000008F094FD044809F07FF905B090BDD1 +:106780000000B4790100ADB6000071B60000B0B5EC +:106790000C4DAC790C490978002903D001290ED0A1 +:1067A000022908D1C288002A09D0012381683C004F +:1067B000A42E000002200FF0C1F803E00221862081 +:1067C000FEF7F8F9AC71B0BD20100700A079010008 +:1067D00080B5026807494A600379CA78CB700079AE +:1067E000904206D003481430008907F027FE06F0D7 +:1067F0003C00E02E0000ABFA80BD8466010070B55D +:10680000164C154DA0780026983D012803D1286923 +:1068100008F0FBFCA6706068012803D000212869FD +:1068200000F0FFFB0E4829690CF031FA01200CF052 +:10683000E4F83C001C2F0000E078012802D0012081 +:10684000607000E06670064814304168012906D186 +:106850000660416F002902D00020FDF74CFA70BDA0 +:10686000846601003463010030B500220023012555 +:106870002C1C94403C00582F0000044001D0CA5406 +:10688000013301320E2AF6DB181C30BD0000FFB5C3 +:1068900001270026051C022081B00090002D18D091 +:1068A0002878FF2815D0002410E0281980780A994C +:1068B000002901D001063C00942F000008D507F004 +:1068C000E9FE0E2803D0012181400E4300E000279D +:1068D00001346878A042EBDC0098029D01380090FA +:1068E000DFD10398311C814302D003980640002772 +:1068F0000498066005B0381C3C00D02F0000F0BDA5 +:10690000000002210160642101E0013902D0026827 +:106910009207FAD40120002900D10020704710B559 +:106920000020C443054B022201015A50C9188C6053 +:1069300001300828F8DB10BD00003C000C300000DE +:1069400000300700F0B5051C6035C76A041C287BC1 +:10695000002F8BB015D0082815D202A31B5C5B005A +:106960009F4400000704040709090C0C01260021BC +:1069700009E0002606E00226022104E03C0048303F +:1069800000000326032101E0042601218C22125974 +:1069900007912649069004910020039005970892DC +:1069A000E0692269211C7031019121490090700039 +:1069B0004018603002920388591C01801E483C0038 +:1069C000843000000288A1680AA809F0E1FF606035 +:1069D000E87AA16AC9070007000EC90D0843616A79 +:1069E0002269C907890D01430120002A00D1002036 +:1069F00080030843216AC9030843082108430A9910 +:106A00003C00C03000000880201CFEF798FE206982 +:106A1000002804D1201C0AF082F90BB0F0BD807967 +:106A2000062801D9FEF70FF9206906498079800010 +:106A30000958201CFDF774F9EFE7792F0100C469AC +:106A400001003C00FC3000000861010074570100A7 +:106A500010B5041C58308AB00EF07CFE221C803227 +:106A60005168002901D0117A07E0002804D080691C +:106A7000800701D5032100E00121D2680791224956 +:106A8000002008923C003831000004910022059259 +:106A900006900390E06922690090211C70311C4827 +:106AA000019102920389591C01811A480288A16848 +:106AB00009A809F076FF60606B20005DA16A226979 +:106AC000C9070007000E3C0074310000C90D0143E6 +:106AD0000120002A00D10020800308430999088082 +:106AE000201CFEF735FE2069002804D1201C0AF086 +:106AF0001FF90AB010BD8079062801D9FEF7ACF85D +:106B000020690749807980003C00B03100000958B5 +:106B1000201CFDF711F9EFE70000BD2F0100246AEA +:106B2000010008610100745701003EB5051C0069B1 +:106B3000042107F0D2FA002809D042780232011C61 +:106B40006846FDF788F9E86A6C463C00EC310000C5 +:106B5000029000E00024281C143002F003FB0028FF +:106B600004D0211C281C05F0A5FE3EBD002CFCD045 +:106B70000249201C4969FDF7E2F8F6E7447D01006F +:106B800070B51E1C18235843064B049D3C00283248 +:106B900000001950C418002060616260A660E560C2 +:106BA0000FF0B9FD206170BD0000B87D0100024A00 +:106BB000011C9069916170470000447D010001480B +:106BC000406B70470000447D01000449044B3C00C9 +:106BD00064320000CA6809695C3B5B68C91A4143BA +:106BE00050187047A07D01000148007870470000F0 +:106BF0007869010080B506220149FDF735F980BDAD +:106C0000FE670100F0B589B00093164F131C0E1CEF +:106C10003C00A0320000041C3A1C01F062FF01A9F4 +:106C200006A8A26802F00BF901AA06A9381C636A3B +:106C300002F081FC051C012814D10C48FC21C8512C +:106C4000381C02F00CF80321301C07F052FA00281F +:106C500007D03C00DC320000807800F033FC201CC0 +:106C600010300EF047FD00E00025281C09B0F0BDF3 +:106C7000F4670100C138000010B5074C0648062231 +:106C8000211D0838FDF7F6F801F0FCFF00F042FC8A +:106C9000201C02F03C001833000027FC10BDF467F4 +:106CA00001000849C96800290AD0064A0132517812 +:106CB00012784843002A01D108187047101870470D +:106CC000013070470000447D0100044B0549002855 +:106CD0005A6900D0011C3C0054330000101C59615B +:106CE00070470000447D0100B9750000074900208D +:106CF0000A78022A09D10A7C002A05D1CA68002A2A +:106D000003D04969002900D001207047786901004B +:106D10000C4A80B5012151603C009033000009F01D +:106D20006AF809481C308169002907D00023836173 +:106D300000220021002000F0D2F880BD00220021B6 +:106D4000034800F05CF980BD00005C69010051352A +:106D50000000B0B50C1C012816D13C00CC3300005B +:106D60000E4D022C09D100F02BFA00280ED06869D4 +:106D700000280BD1211C13200CE0032CFAD100F0C9 +:106D8000F9F9002802D0287C0028F3D0B0BD211CDE +:106D90000006000E04F062FCB0BD00003C000834A8 +:106DA000000078690100B0B50C4C002525746561C0 +:106DB000E56000F03CFA00F034FA07481C38056141 +:106DC00009F033FF2078002802D104F06EFAB0BD3C +:106DD0000228FCD104F0A5FBB0BD786901003C009D +:106DE000443400000C4880B50178002912D0C068F6 +:106DF00000280FD108481C38406900280AD10748EC +:106E00000068002806D000220721102010F0A0F909 +:106E100002F02CFC80BD000078690100D4670100FD +:106E20003C0080340000F8B51D4E1C4D041CF06879 +:106E300002271C3D002807D0E868002804D0FDF791 +:106E4000C2FE002800D0BC43002C14D03770F0687C +:106E5000144F002810D0E00717D4FDF7B4FE002827 +:106E600013D03C00BC3400007069002806D1E868EB +:106E7000002801D0FDF71AFF0DF00AFAF8BD686985 +:106E8000002805D109480068002801D0012C04D150 +:106E9000391C201C0EF052FDF0E704F01DFB02F03F +:106EA000EBFBEBE73C00F83400007869010050C3CD +:106EB0000000D467010005484169002904D0406AF8 +:106EC000002801D001207047002070470000786939 +:106ED000010010B5041C0649002048600860886065 +:106EE00008F09BFF07213C00343500001220227976 +:106EF00010F03AF910BD00005C6901000149012061 +:106F000008607047E8670100F8B5071C0E1C08F020 +:106F1000A3FA134D041C6868002817D0002F02D074 +:106F2000A868032813D300203C0070350000A86037 +:106F30006860211C0F200EF0F0FE2868002803D0A6 +:106F4000002C06D1012002E0012C02D10020FFF725 +:106F5000FAFEF8BD721C0021044800F068F8A86829 +:106F60000130A860F5E75C6901003C00AC35000029 +:106F7000513500000A4980B5CA68002A0BD0426822 +:106F8000002A09D000224A6202680A6202680721C8 +:106F9000172010F0EFF880BD0120486280BD00008E +:106FA0007869010070B5144D846CE9683C00E835DF +:106FB0000000002917D04030EC614078002801D152 +:106FC00001206862286A0E4E001BB0420CD208F005 +:106FD0003AFE296A401AB04203D202220721132046 +:106FE00009E004F0B6FA70BD0748A9680BF03C0050 +:106FF00024360000BDFE221C0721162010F0C0F828 +:1070000070BD000078690100A086010034630100B2 +:107010000A4980B500208861086900280CD007481B +:107020001C300078002807D001F0D2FF022803D1DD +:107030003C006036000000F012F900F0BCF880BDA2 +:1070400000005C690100F0B5061C0C1C151C91B019 +:1070500001A84021FCF70DFF00216846FDF7A7FFBE +:10706000049001A806220849FCF731FF062202A875 +:1070700002303C009C3600000649FCF72BFF00ABB9 +:10708000DC760C95311C01A807F04EF811B0F0BD6C +:1070900012610100F8670100031C081C191C114B48 +:1070A00080B506D0042111800422191CFCF712FFC0 +:1070B00016E004223C00D8360000011C181CFCF726 +:1070C0000CFF09481038006900280CD007480C3024 +:1070D0000078002807D001F084FF022803D100F0D7 +:1070E000C4F800F06EF8012080BD6C690100F8B5AD +:1070F000041C0F1C00253C0014370000002601F082 +:1071000073FF02282FD11949012F086807D1021CEB +:1071100022400AD120430860A04206D104E00028A2 +:1071200003D0A043086000D10125486800281AD187 +:10713000002D17D0012048603C0050370000381C5B +:1071400008F089FE0B481C308169002907D0002314 +:107150008361002200210020FFF7F1FE06E00022FB +:1071600000210448FFF77BFF00E00126301CF8BD3A +:1071700000005C690100513500003C008C370000C4 +:10718000031C081C191C124B80B506D00421118069 +:107190000422191CFCF7AAFE18E00422011C181C8A +:1071A000FCF7A4FE0A481030C16800290ED0007810 +:1071B00000280BD001F01EFF022807D13C00C83781 +:1071C000000000F064F800F02EF8002801D109F06A +:1071D0007AFD012080BD6869010010B50A4C206964 +:1071E000002809D0A169002906D17D21C9004143A9 +:1071F000032207200FF0E1FE2169012000293C0055 +:107200000438000000D1002010BD00005C690100BE +:1072100010B5054C002803D0FDF79AFCE06010BDC6 +:1072200001200021E16010BD786901000A480A4987 +:1072300010B5C0681C39C968002803D0002901D0E6 +:107240003C0040380000012400E00024002C03D062 +:10725000022207200FF0B7FE201C10BD0000786945 +:10726000010010B5094C0020216900290CD0064905 +:107270001C310978002907D000F009F80120A0612D +:1072800020693C007C3800007D23DB00584310BDA2 +:107290005C69010080B5032107200FF0D1FE80BD9D +:1072A00080B5022107200FF0CBFE80BD064880B5D7 +:1072B0000078002801D0FDF729FD002207211120C8 +:1072C0000FF07CFF3C00B838000080BD00007869FA +:1072D000010010B5041C101C064A516100F0A3F80F +:1072E0001020002C00D11120002207210FF069FF8F +:1072F00010BD5C6901000149486270470000447D8F +:10730000010010B5094C3C00F4380000E069002889 +:107310000CD1E0620120E0610BF008FD0BF074FE7F +:10732000012000F0B5F80FF04DFA606310BD0000C9 +:10733000447D0100054980B50020C861886300F0E4 +:1073400089F800F001F902F03C003039000091FBAF +:1073500080BD447D010010B5012838D10806000E1B +:10736000052832D11D4C2078012809D002281BD0D5 +:1073700003282AD102F07DFB00F06FF8012010E015 +:107380001748216B0BF01BFD0BF03C006C39000023 +:1073900041FE15480069032801D3C00703D5012128 +:1073A000206B07F019FF022000F078F810BD0F489D +:1073B000006820640A485C30C16802698918C160AD +:1073C00003F0CCFC032000F069F801203C00A83950 +:1073D0000000E06210BD092100E008210920FDF74E +:1073E00076FC10BD0000447D010034630100F468A8 +:1073F0000100786E0100B0B50F4C2078651E0128A1 +:107400000FD10020FFF7A1FC0C49098849083C0076 +:10741000E4390000401A0FF019F9002804D0287848 +:10742000012807D0022805D02078002804D1287828 +:10743000032801D10120B0BD0020B0BD457D010071 +:10744000F46701000149C86470470000447D0100F1 +:107450003C00203A00000449054A8968126D012069 +:10746000914200D3002070470000F4680100447D81 +:10747000010010B5064C206B07F0F9FEA06B002848 +:1074800003D10348216B0BF092FC10BD0000447D3A +:1074900001003C005C3A00003463010004480078BD +:1074A000022801D0032801D1012070470020704735 +:1074B000447D0100F8B5071CFFF7D0FF061C012F23 +:1074C000264D1FD0022F45D0032F12D12448254B23 +:1074D00000696A693C00983A000041085A43234B0E +:1074E000D4188C4200D90C1C002E05D01E495B39E3 +:1074F0000978002900D1041C0522211C09200FF065 +:1075000080FD184A5C3A1770F8BDFFF7D6FB0028DB +:1075100002D0286900283C00D43A00000ED004F0C4 +:10752000CFFB134B6969114A59435C3AD26B8918F6 +:10753000884201D9441A04E0002402E004F0AEFDC0 +:10754000041C002EDBD009485B3800780128D6D116 +:10755000084B9C4202D958423C00103B00002418C2 +:10756000D0E70024CEE704F0AEFBCAE70000F468E1 +:107570000100A07D0100983A00008813000080B54A +:10758000052109200FF07DFD02490020087080BD13 +:107590000000447D010070B5061C3C004C3B00001F +:1075A0000DF0BCFAFFF7CEFE094C0A48216B0BF038 +:1075B00021FC012501213006000EA56307F03AFEEB +:1075C000054829020958002900D1056170BD000055 +:1075D000447D010034630100F46701003C00883BF6 +:1075E0000000024A116C0843106470470000447D9B +:1075F000010080B5FFF7BFFE0BF0A1FB80BD024A82 +:10760000011C1069116170470000447D0100F3B551 +:10761000061C002089B0F84C0890E26908253C005F +:10762000C43B0000002A03D006A907A8FCF706FC0B +:10763000301CF34E0027203682286FD015DC01283D +:1076400018D080286BD1EE4D803DA868012867D105 +:1076500068680FF01BF8002863D1012101200DF0AC +:107660003C00003C00009DF808F0DBFD0BB0F0BDD5 +:1076700083286DD0842855D1E7E00A980A2804D2DF +:1076800003A31B181B5A5B009F44F6E00000EE00AA +:107690000B00F700F700F700F7002F0088008B00C1 +:1076A000AD003C003C3C000000F056FE002817D026 +:1076B000D64A803AD16A0698814216D0062100281F +:1076C00000D107210D062D0E00280ED0CF4A012033 +:1076D000803A50650FF0A0F8CC4A803A506604E03A +:1076E000002116203C00783C00000FF0DCFC012556 +:1076F000022005902EE2C6488038406D00282ED02A +:10770000C6492069C44D40180EF0C1FF002812D0B0 +:107710000FF085F8C14949424018BD4920618039C0 +:10772000486E40190EF03C00B43C0000BBFF00283E +:1077300011D00AE0F7E017E2B2E0B0E0B649206904 +:107740008039496E401AA84205DBB349B54D8039EE +:107750004F6503F027FB0622291C16200FF072FC50 +:1077600047E095E000F0FEFD3C00F03C0000002802 +:1077700042D1AA4DC43DEF6008F019FD03F015FB9E +:10778000A86A002802D0FFF74CFFAF62A4488038F7 +:1077900000680021FFF7F9FC08F03FF909211620E5 +:1077A0000FF087FC0022162183203C002C3D0000B6 +:1077B0000FF040FDFFF786FC21E000F01BFE1EE00D +:1077C00006F054FA974D803DA96F401A0490069830 +:1077D000002801D0AF6502E0A86D002808D19148CB +:1077E000C4380078800703D5924847603C00683D64 +:1077F000000000F002FE0498FF382338142802D25B +:107800000120E86353E0EF6351E0874AB57A803A9C +:10781000002D4CD00DF071FF00F0ADFD071C82482B +:107820008038406FFF305F300EF03DFF021C3C009F +:10783000A43D00007E488038406D00281AD100F039 +:10784000F1FD002816D1042D02D1002F12D11BE02A +:10785000002F06D0022D14D079484068002809D0A6 +:1078600012E0002A10D14B21C90001230922162061 +:107870003C00E03D00000FF0D6FC6E4A7348803AB1 +:1078800011680BF0D8FA18E00121002001E0012175 +:10789000012000F02AFE10E0674A6C49803A906EA1 +:1078A00040189066012508958BE104216CE1614A3E +:1078B00066483C001C3E0000803A11680BF0AAFAB2 +:1078C00088E1AF60A86FE8676348016DA967079A10 +:1078D0001420002A00D1002008181230A866707801 +:1078E000B0703078707002203070A069FCF7C2FA76 +:1078F000EF64A86F3C00583E0000E96F594B401AF6 +:10790000984212D2686D069988420ED030780228CB +:107910000BD80EF09CFFA96F0822401A5249091A91 +:107920003B1C16200FF085FC00E0AF6501200590A0 +:107930000890434802253C00943E0000C438C168CA +:10794000002972D10121C1604948006B00286CD028 +:1079500008F066FC69E03C480022019280388068AB +:10796000012804D1384880388760012048E13A482E +:10797000012343603448C4383C00D03E0000007806 +:1079800000280AD100F025FE002806D0FF21913101 +:107990000123092216200FF052FC2C498039486F30 +:1079A000896F421A039206F076F928498039896F67 +:1079B000039A401A0290372000013C000C3F00005F +:1079C000101A50280DD223488038406D002804D169 +:1079D0000298FF385538142801D2012200E0002215 +:1079E0000192039A0120FF3A0B3A502A00D300205B +:1079F000049000280AD017488038C06F3C00483FE8 +:107A00000000081A9B21C900401A142801D2012243 +:107A100000E000220092002A11D00F4D0120803D8D +:107A200068650EF020FF68660125012116200FF021 +:107A30005EFB002116200FF05AFB00E0BAE03C008C +:107A4000843F0000F07902283CD8054A803A516C06 +:107A5000002937D1136C111C002B33D116E0000024 +:107A6000246D010050C30000C05C15007099140023 +:107A7000B057010034630100E204000000900700E9 +:107A80003C00C03F0000530700001E020000C85722 +:107A900001004A6D002A02D0B27A022A15D1009A5A +:107AA000002A03D0CA6D0132CA6500E0CF65019A91 +:107AB000002A0BD08A6FCB6FD21A5A4B9A4202D24D +:107AC0008A6D3C00FC3F0000013200E001228A6523 +:107AD00000E08F650499002901D102280BD9544A8E +:107AE00002281ED9D06F616888421AD1916F081A96 +:107AF0005049884215DD4E4B986FE168401A7D2150 +:107B0000C90088423C00384000000BDD6169401A22 +:107B1000002804DD021140111018401801E0801007 +:107B200008186061586FE0600398FF382338142804 +:107B300009D20298FF382338142804D23E4A906FA5 +:107B40005064906A90643C00744000000EF09AFE0D +:107B50003A49496C401A3B49884201D937494F6438 +:107B6000394903984018142807D23449C86B0028B3 +:107B700003D0886F0864886A88640EF083FE2F49FA +:107B8000096C401A314988423C00B040000001D9DC +:107B90002C48076404200590082116200FF0B9FA3C +:107BA0002848406D002802D00499002908D02949AE +:107BB000002800D129493B1C062216200FF057FB54 +:107BC000022D09D0062D0AD0072D3C00EC40000004 +:107BD00013D107E001211620FDF7D6F81EE01A4A5E +:107BE00057639763184A0698D06207991163536BDD +:107BF00018435063906B084390630598002805D0A4 +:107C000005980CF05FFA05980CF0D2F93C00284179 +:107C10000000082D05D00D4844388570281C03F05D +:107C2000DCFD1149E069884200D161E5089800282F +:107C3000FBD0B07A0228F8D1012116200FF06FFA9C +:107C400002200DF0E8FE53E50000530700003C0061 +:107C500064410000A46C010020A10700204E000038 +:107C60003FFBFFFFA086010050C30000C05C150071 +:107C7000F11D00007047000070470000F8B5214872 +:107C80000068214D6969084001D1012700E0002703 +:107C90003C00A04100001D4D0126696A002900D06A +:107CA00000261B4D1A482C1CA030027A281C40309C +:107CB00080341023B74210D10125C580002900D09F +:107CC00000231A43111C017301200EF088FE0820C6 +:107CD00020703C00DC41000000221621802013E0CF +:107CE0001127C7802E1C0B4D002900D100231A43F9 +:107CF000111C017301200EF075FE08202070306DFC +:107D000000221621686782200FF0D0FAF8BD00002B +:107D1000100007003C0018420000A46C0100009015 +:107D20000700B0B50F4D041CAA7A0121081C002AD7 +:107D300000D00020002C00D0002188420AD0002C66 +:107D400004D100F042FB00F0D6FA03E000F0D9FACB +:107D500000F009F8A87A3C00544200000249E439D6 +:107D60004871AC72B0BD0000446D010080B53EF0BA +:107D700055F802490120087080BD0000687E0100AE +:107D8000F3B501208DB00F1C012408900EF092FD78 +:107D9000061C00F0B5FA09903C009042000000F08B +:107DA00080FB0790FEF73FFA051C00210C9108F0BC +:107DB000F0FB002801D1012000E000200A90FEF72E +:107DC00012FD05F0E0FE0B90002D23D0288841071E +:107DD00020D4291D04910A3500063C00CC42000045 +:107DE000800E01212028039500D000210D1C04984D +:107DF00006F038FD0C90049806F010FD002808D01D +:107E0000039801F087FA002803D0002D01D101204A +:107E100000E000200C9901430C91FCF73C00084362 +:107E2000000023FF00282FD007F099FF051C07F062 +:107E3000B2FF0490FFF7F3F80C990143002D06D030 +:107E40000498F04A301A904201D2012000E000204C +:107E500008430C900B980A9B1843011C0B913C00A3 +:107E60004443000005F0CEFE00281AD1002D06D0B4 +:107E70000498E749301A884201D2012000E000202E +:107E80000C990843051C00F01FFB284303E000F099 +:107E90001BFB0C9908430C9000F0D4FB0B99014399 +:107EA0003C00804300000B91DC49C868002801D0E9 +:107EB0000138C86008F0E7FB069008F090FD311A21 +:107EC00005910699D648814208D8002F08D1059916 +:107ED0004008814204D90699814201D900248BE0EF +:107EE000D0483C00BC4300000599D04D814226D2C9 +:107EF000E879102806D2002F21D1CC48A038806A1A +:107F000000281CD109F062FF0490002802D1002053 +:107F1000C34913E009F010FE002803D0C448C0692B +:107F20000028F4D03C00F84300000498052803D052 +:107F3000C148006A002865D1BB49486A002823D09F +:107F40000138486200F087FF002811D0BB4805992E +:107F500081420DD201F09BF804300DF0EEFC403070 +:107F6000C17A01294ED03C0034440000807A0028B8 +:107F700001D0052849D301F0DFF8022810D0002FE6 +:107F800002D10698002840D10020089082E1AA483A +:107F9000A038C068002838D0A8488069486234E01A +:107FA0000AA903C9084345D03C0070440000A34817 +:107FB0002978A038022940D8406D00280AD09F486F +:107FC000A2492038C06840180EF0C7FB002801D035 +:107FD000012100E00021964A906A002802DA640834 +:107FE00064002AE0002909D1954B3C00AC44000014 +:107FF000A03B5B6D002B02D005280DDB01E00728BC +:108000000ADB0120C043906264088E4964000020AE +:10801000A039886514E0D1E0394311D18949A039EC +:10802000CB6D002B02D1896D012909D93C00E844B0 +:108030000000079B002B01D1072801DB64086400C6 +:1080400001309062BDE07D4988690490002088611C +:108050000C9800282CD007F066FC002802D00220E3 +:10806000044325E07A48C06A002804D177483C00E0 +:1080700024450000A038C06800281CD104980028BE +:108080000DD12878102802D3E878022802D928795F +:10809000102804D304246B4901228A6194E06C48BF +:1080A000A038406D002871D005F0A2FD00286DD0E9 +:1080B0003C00604500006408640088E0FFF75BFA5C +:1080C00000281AD068480078022801D1002F14D166 +:1080D0000020FEF770FE301A0490FFF76CFA0028BB +:1080E00007D0FFF71EFA002803D05D4904988842A4 +:1080F0004FD33C009C45000005F06CFD00284BD19F +:1081000053490878032808D188680122D207301A19 +:10811000904241D201220A7057E054480078022868 +:1081200001D1002F51D14A4988685149801B8842AA +:1081300007D901203C00D8450000FEF742FE7D2112 +:1081400009014018444988604A480078022804D14F +:10815000079B002B01D1012000E00020474B47493D +:10816000584340183C498968891B884230D9079B8D +:108170000020039300F03C001446000079FF0290B9 +:10818000FFF7D8F9049001F057F80499029A514387 +:108190004843019000F0DCFF411C01980122484354 +:1081A000111C00E01BE0314B5B6A834200D30021CD +:1081B000039B0122002B00D03C005046000000220F +:1081C0002C4B51439B6A0122834200D30022500072 +:1081D000081803D023490320087003E00998C068F9 +:1081E000062808D90224089800286ED01D490020CE +:1081F000C8614861A5E01A4948693C008C46000006 +:1082000000280AD1002F05D001224A61C8698018D0 +:10821000C8610AE00020C86103E0002F05D10020FA +:1082200048610D98002800D1C8680020089008789F +:1082300001282FD002284BD1002F08D13C00C8467E +:108240000000E878002802D12878102843D2287945 +:10825000102840D248680A69301A904267D3012238 +:108260000A7038E00000E204000010270000687E79 +:108270000100A086010088130000446D01003C004D +:1082800004470000C857010050C30000983A00009E +:10829000C0570100400D0300C4090000B20C0000EB +:1082A00000200B9A0A9BC0431A4337D0002F35D1C8 +:1082B000079B002B08D06A78022A2FD92A78102A27 +:1082C0003C00404700002CD22A79102A29D2254BA5 +:1082D0001A6C002A06D09A6A9F6CBA4202D11F20FB +:1082E0001FE02EE0204B5A6C002A03D01F4FB31A18 +:1082F000BB4216D31C4B002A05D09A6A9F6CBA4227 +:1083000001D13C007C4700000F200DE0079A002AB5 +:1083100004D0EA79202A01D1002005E0EA79102A68 +:1083200001D3032000E09A6A124A126802400BD17E +:1083300001200890022008700F4808614E6064E731 +:10834000FFE701203C00B8470000089060E70C49B7 +:10835000886A002801DA013002E0002801DD0020EF +:108360008862002008620899200408430FB0F0BD1D +:108370000000A46C010071020000082007005307F0 +:108380000000687E01003C00F447000070470000D8 +:1083900000487047507E010080B53DF07FFD0249E6 +:1083A0000120087080BD00003C7E0100F8B50D1C66 +:1083B0000EF0C8FA2649041C886A264E002801D00F +:1083C000042003E0706A00283C003048000001D01F +:1083D000013870620027002D02D0B761F7610AE012 +:1083E000B0691C490130B061496D002903D00328F0 +:1083F00001D90120F061B460F168009108F0F7FC48 +:10840000F0600099884202D030623C006C48000065 +:1084100034610BE000F090F8002801D0114800E032 +:1084200011483169611A814200D937620B4A0C4800 +:10843000D16C2030002901D00A2103E0017A002903 +:1084400001D0FF310172002D03D1017A3C00A84810 +:108450000000002900D0916A007A002800D1176539 +:10846000F8BDA46C01003C7E0100A60E0000A861CE +:10847000000070470000064980B58968002907D0D0 +:108480000521002800D104210806000E03F03C005D +:10849000E448000005FA80BD606C010007480068F0 +:1084A00007494A69104001D0012000E00020496AD4 +:1084B000884201D10120704700207047100007005A +:1084C000A46C010070B50EF049FA021C00F03AF8F5 +:1084D0003C0020490000104900280ED0081CA031A3 +:1084E0000E780E4B102E01D3806F03E049781029CF +:1084F0000ED3C06FC018841A0AE0081C803045698A +:1085000008498D4201D90C1C05E0C068101A2C1ACC +:10851000002C3C005C49000000DA6419201C70BD8E +:10852000A46C0100A60E000050C3000080B505F049 +:10853000B7FB002802D007F01FFF80BD034800787A +:108540000028FAD007F070FB80BD0000606C0100CD +:10855000034901203C00984900004969032900D8DB +:10856000002070470000606C0100B0B50A4D002487 +:108570002878012803D005F06AFB0406240EFEF7D4 +:10858000D2FC0002204302D1686A002801D10120F8 +:10859000B0BD0020B0BD3C00D4490000606C0100BB +:1085A0000121012800D000210148416270470000EC +:1085B000606C0100154810B504681548006A002871 +:1085C00014D0FFF7CBFF00280ED111481149C43059 +:1085D0004069884208D2CC083C00104A0000A04202 +:1085E00005D3FFF77EFFA04201DA0C4C01E0FF2427 +:1085F00091347D200001844204D900221621832079 +:108600000EF0BDFE01230922211C16200EF0A7FE4C +:1086100010BDB0570100606C01003C004C4A0000E6 +:10862000C05D00001027000070B5051C0E1C00F096 +:1086300043F800280FD0084C2078C00703D405F079 +:10864000ABF909F031FE002D05D02078800702D467 +:10865000301C02F0FDFE70BD606C01003C00884AD9 +:108660000000B0B5002818D01148814215D210483A +:108670000C1C0D1807F0DFFA81000918A14201D285 +:10868000400003E041000918A14201D2241A06E08B +:108690004100A14203D24008F8E7064D074C3C00D8 +:1086A000C44A00000EF072F90019291C07F0DCFA28 +:1086B000B0BD000080B92A00530700004C1D000027 +:1086C00088130000B0B505F0FDFA002813D1FEF7BD +:1086D000B5FE0A4C0A4D0028606300D028600EF0F9 +:1086E0003C00004B000055F9216A002904D1E169E2 +:1086F000401A2968884201D90120B0BD0020B0BDD0 +:108700000000606C0100B057010080B5FFF7DDFF8D +:10871000002805D005F0B7FA002801D1012080BD5E +:1087200000203C003C4B000080BD000010B50A4C0E +:108730000021A268002A03D0A16002F083F910BDD5 +:108740006160011C002204200EF036FD0348216800 +:108750000AF008FC10BD0000BC740100C4600100F8 +:1087600070B5051C3C00784B000001D1FCF7C1FB43 +:10877000204CE06A002815D01F4BA0695843C60B57 +:1087800020884643F0008019E660FBF71CFEA842F3 +:1087900005D8301CFBF717FE8019A84202D2002032 +:1087A000E06020E0E5603C00B44B0000002D1DD0EF +:1087B0002688A0697043C103281CFBF7A5FD6061F2 +:1087C0000D48321C291C3030FBF70AFC0C4B606949 +:1087D0005843C00B606201F0B7FDA062E06800285A +:1087E00004D02069A168FBF73C00F04B0000F4FBCB +:1087F00070BD0548A168FBF7EFFB70BD0000C874B1 +:10880000010040420F00C0C62D0088130000F1B5E2 +:108810003E4800AB8178C0783E4F0A07040758787D +:108820003B49120F085C1439240F3C002C4C00000B +:10883000801878600130B8601878354D085C0019F0 +:10884000B8610130F861EB7833481E09334B1838B2 +:1088500081785E43AB781D09C8236B43002908D19A +:108860002B4D2D783D60C5607D25ED003C00684CAA +:1088700000005D1B2C4B07E0274D6D783D60C56007 +:108880004B252D015D1B284BF618022000F057F8F0 +:10889000281AF8602248221C18388178032000F03A +:1088A0004EF8301A3862396800AB79615A783C006A +:1088B000A44C00005623F9685A43891AF960C8315C +:1088C00039611849183989780029B96911D100AB83 +:1088D0001A78134B143B9A5C531C59430A2359438F +:1088E000144B591A51430A235943401A386212490A +:1088F0003C00E04C000010E000AB1A780A4B143B3F +:108900009A5C531C59430A2359430D4B591A51433E +:108910000A235943401A0B49386240187862F8BD5F +:1089200000000C5A0100665A010094780100A086EC +:1089300001003C001C4D000000487100B0D68C00C6 +:1089400088100000803801005812000070110100EA +:1089500030B5194B0228DD6806D1002904D12B1C43 +:108960000C339C1A64235C43022809D1012907D1E6 +:1089700064237D243C00584D0000E4006B431C1927 +:10898000A0235343E41A0A235A43032809D1002998 +:1089900007D11323FF24E4006B431B199B1A1C1CF3 +:1089A0005C43032808D1012906D10E2005496843FC +:1089B0004018801A041C3C00944D00004443201CC5 +:1089C00030BD00007C7801008408000010B5074C21 +:1089D0000C2360780549143158434018406801F071 +:1089E0004FFC0021607802F04BFF10BD4C7B010072 +:1089F0000C48F8B540780C233C00D04D00000A49E3 +:108A0000584314314418261D60CE301C0BF00BFD6A +:108A10000027412047550548291C02F0F0FE281C7C +:108A200001F031FC0434C0C4F8BD4C7B010055801A +:108A30000000B0B50A4D4C2128783C000C4E0000D7 +:108A4000094A41438C1822680121FBF7E1FA287892 +:108A500001F0FAFB3C23E056411E012007F034FBF5 +:108A6000B0BD00003C7C010058E301000C23074925 +:108A70005843401880B54068416B00293C00484E7F +:108A8000000002D00BF0FBFD80BD0BF02CFD80BD83 +:108A90000000607B010038220A4B4243D2180029B3 +:108AA00080B504D0022907D10BF0FBFC80BDD26A4F +:108AB0000121FBF7B0FA80BD03218620FCF73C00C2 +:108AC000844E00000FFA80BDD4E40100B0B5040666 +:108AD000240E0C200E49604340184568A86B0028FE +:108AE00003D10021201CFDF7E1FA201C07F0F2FF62 +:108AF000002808D0281C6030C179012903D9FF3132 +:108B00003C00C04E0000C171FF3181710121201C69 +:108B100002F0C5FEB0BD607B010070B50006000E1E +:108B2000051C4C230A49584344183C20005DFF3083 +:108B300006063616281C01F090FB0021281C22682E +:108B4000FBF73C00FC4E00006FFA311C002007F0E0 +:108B5000C7FA70BD58E301000C220F4B4243D218F4 +:108B600010B5546800290DD002290FD12C20005DCA +:108B7000002803D007210C20FCF7BAF9201C0BF0C9 +:108B8000BBFC10BD3C00384F0000002102F08DFE00 +:108B900010BD04210C20FCF7AEF910BD0000607B75 +:108BA000010080B5002907D00C230549584340181F +:108BB00040680BF04AFC80BD012102F076FE80BDCA +:108BC0000000607B01003C00744F000010B5041CE5 +:108BD000002905D002291AD1201C0BF0EBFC10BD96 +:108BE0000D4804700D4807F007F90D48018801226F +:108BF0001203114301804C200A4960434018403061 +:108C00000078FDF75DFD201C3C00B04F00000AF02D +:108C1000D4F810BD03218620FCF773F910BD3C7C0D +:108C20000100054E00003280070058E30100FFB547 +:108C3000051C012083B001900C205D4A6843861812 +:108C40000127002974680ED002293C00EC4F000077 +:108C50006AD12C20005D002803D006210C20FCF7EF +:108C600053F9201C0BF020FD07B0F0BD524814381A +:108C70004570A06B002807D0504807F07FF801210D +:108C8000281CFDF725FA1CE04D4807F03C00285051 +:108C9000000077F84A48143805704B4801880122D3 +:108CA0005203114301804020005DFDF712FDB068C2 +:108CB000002809D1281C07F064FFB060002803D108 +:108CC00009210C20FCF723F90598002803D03C006B +:108CD00064500000E06C0130E0640EE06720005D4D +:108CE000002807D1E06C002804D139480238C06A56 +:108CF000A06409E0206D002801D0002704E0281CB2 +:108D000007F000FF0028E5D105982065201C2030E1 +:108D10003C00A0500000626A0290817B281C07F092 +:108D200078FF002F19D0201C6030C1794A1CC27115 +:108D30008079814202D2012001E040E000200190D0 +:108D400000280AD025480078800706D500F00DFBE2 +:108D5000011C3C00DC500000201C0BF015FD0190B4 +:108D6000019800280FD00298007B022803D1201C14 +:108D700004F0D0FE84E7012800D07EE7211C301CDF +:108D800004F0E2FE7CE7251C6035E879FF30A8712D +:108D9000687A06F03C00185100009DFC0DF047FE7B +:108DA000071C05F012FF3F180298817B20690430F0 +:108DB00000F035FA616A05F0EAFE39186B7A3088FE +:108DC0008031094A0DF091FE5DE703210C20FCF78C +:108DD000AAF858E700003C0054510000607B0100F5 +:108DE000A54D0000C94D0000328007001D7501002F +:108DF0008D4E0000FFB581B01F1C051C141C101CFB +:108E00000A9E00F0F5FC291C1031201D0622FBF7FC +:108E1000B7F9A88E2080E88E3C0090510000608059 +:108E20000299201C00F007F9FF34013466602760C6 +:108E300005B0F0BD0000F8B50F1C1E1C051C141C6D +:108E4000101C00F0D8FCA888391C2080288960807C +:108E5000201C00F0F0F8FF3401343C00CC5100003D +:108E60006660F8BD70B5041CC0680568201C14302D +:108E7000061C00F00FFB002816D0012202212069F9 +:108E800005F0F8FA002801D0FBF724FF00220221A8 +:108E9000206905F0EFFA002806D0FBF73C000852E5 +:108EA000000001FF002802D0301C0BF07CFB688919 +:108EB0008007C00F03F0A7F818230449584340184F +:108EC000C168002902D0201CFBF7D4F870BD94675C +:108ED0000100F8B5041C101C0D1C191CFF223C00DD +:108EE000445200000027FF2D25D0002905D04B88D3 +:108EF000002B02D000F050FC15E00021104E4B007A +:108F00009E190223F65E864201DD0A1C04E001314F +:108F10000906090E2629F1D3094E500080194E2367 +:108F20003C0080520000C05E272A07D20649203943 +:108F300049574731401A2060012702E07E20C04394 +:108F40002060381CF8BDFA470100B0B50C1C7E212A +:108F5000051C0020C943002C0FD0101C05F06BFD30 +:108F600000283C00BC52000002D0211CC93901E09D +:108F7000211C86390220C043FBF7B4F9011C0120F3 +:108F80002960B0BD98B5141C00220092221CFDF788 +:108F900043FE98BD054980B5086005490120C861B8 +:108FA000012100203C00F852000003F01CFE80BDAF +:108FB000000020670100AC7C010080B5002100208A +:108FC00003F011FE06F00DFB02490020086080BD91 +:108FD000000020670100034901200969002900D130 +:108FE0000020704700003C0034530000106701006F +:108FF00003480069002801D040697047002070478D +:109000001067010070B5161C0D1C041C002801D04F +:10901000012C07D100F036FA002805D013F0CAF968 +:10902000002801D1012070BD3C00705300000120D8 +:10903000002C00D000200A4C043461C4103C00F025 +:1090400024FA002802D000F0C6F901E000F0E5F8AB +:10905000C030C36B221D07CAFBF720F8002070BD8B +:109060000000D4670100F8B50D1C3C00AC530000B3 +:109070000021041C281C05F0E3F9231CFF332133D5 +:10908000FF27002805D02222011C181CFBF796F8A8 +:1090900000E01F700321281C05F0D2F9261CFF36C2 +:1090A0004136002805D00322011CB01C3C00E853C7 +:1090B0000000FBF786F800E0B7700121281C05F0DE +:1090C000C2F9002807D0011C201CFF300A224630BC +:1090D000FBF777F800E077713221281C05F0B3F92F +:1090E000002807D0011C201CFF30122250303C0009 +:1090F00024540000FBF768F800E0F7730621281CF1 +:1091000005F0A4F9002807D0011C201CFF30042220 +:109110006330FBF759F8F8BDFF346134A770FAE704 +:10912000084980B50968002801D107480168081C72 +:109130003C006054000005D103219020FBF71DFF87 +:10914000002080BD01F0D7FB80BD1C6701002067B7 +:10915000010080B5FFF7E7FF80BDF0B5002484462D +:1091600000200BE08740174007D014230B4D4343EA +:109170005B193C009C5400001B7C65462B55013458 +:10918000013001273B1C0E2800D300230E883D1C14 +:10919000A64200DC00252B40E7D10C80F0BD00008A +:1091A0007440010078B5041C01202070082000AB39 +:1091B0000D1C18803C00D8540000161CA01C6946E9 +:1091C000FFF7D1FF00AB0022D243198882406170C3 +:1091D00032202870102018803240A81C6946FFF702 +:1091E000C2FF00AB1888687078BD80B502F035FF0B +:1091F0000021002800D03C00145500000169081C23 +:1092000080BD00000549002801D0C86800E0086959 +:10921000002801D00430704700207047106701001B +:1092200003480069002801D00430704700207047CF +:1092300010670100024800693C00505500000028FA +:10924000FFD1704700001067010010B5054C206980 +:10925000002803D104219020FBF79BFE206910BD5C +:1092600000001067010010B5041C00F040F9002850 +:1092700001D0002010BD201C00F03C008C550000E7 +:1092800057F9002801D0012010BD022010BD0000B8 +:1092900070B50F4E041C30680D1C002807D0211C2F +:1092A000043005F0C1FB002801D030680BE0094A0A +:1092B0001068002809D0211C141C04303C00C8553B +:1092C000000005F0B4FB002802D020689C3000E0CC +:1092D0000348405D70BD206701001C670100CC475A +:1092E0000100044900200969002902D0FF31013141 +:1092F000886970470000106701000148007A3C004F +:109300000456000070470000AC7C0100FEB5061C4E +:1093100000201F1C141C0029029019D0012926D0FE +:10932000022947D12648007805F0A0FBA0720AF078 +:109330004FFC0E2809D1A07A05F0AAFB002804D022 +:109340003C00405600002048007805F092FBA072D7 +:10935000002020722FE01D4D2868002801D1FBF766 +:1093600052FE00972A68231C1832111C301CFCF78F +:10937000DEFB26E0301C0CF0CAFB051C02D0A868FE +:1093800000283C007C56000008D1134800680028E3 +:1093900001D1FBF73BFE104800681830021C0E4854 +:1093A00000970168231C1831301CFCF7C3FB002D0B +:1093B0000AD040352888800606D40020206003E0CB +:1093C000012190203C00B8560000FBF7F4FD029804 +:1093D000FEBDB069010090570100206701001C67C5 +:1093E000010080B5002002F04AFE1823054A5843C8 +:1093F000801840690121002800D04178081C80BDF8 +:109400000000946701003C00F4560000024908691E +:10941000002800D1C8687047106701000348C06881 +:10942000002801D004307047002070471067010009 +:1094300010B5054CE068002803D105219020FBF70A +:10944000BDFDE06810BD00003C0030570000106713 +:109450000100F8B50D1C002A03D01149124F0E78F7 +:1094600001E0114F0C26082E01D2341C00E0082424 +:10947000012101704470391C221C0230FAF7CBFE26 +:10948000321B002A07DD322028703C006C57000098 +:109490003919A81C6A70FAF7C1FEF8BDFF202870C0 +:1094A00000206870F9E70000A4690100B0690100BC +:1094B000905701000149486270470000946701001D +:1094C000034980B508600121012003F03C00A85742 +:1094D0000000C5FB80BD1C67010080B50021012094 +:1094E00003F0BDFB06F0B9F802490020086080BD1A +:1094F00000001C67010003490120C968002900D150 +:10950000002070470000106701000348C0683C005D +:10951000E4570000002801D04069704700207047E0 +:109520001067010080B50221012003F09BFB80BD84 +:10953000054A80B512690021002A03D0111D05F0EB +:1095400091FA011C081C80BD10670100064A80B515 +:109550003C002058000012690021002A05D0111C8F +:10956000FF31213105F08BFA011C081C80BD10670A +:109570000100054A80B5D2680021002A03D0111DE0 +:1095800005F073FA011C081C80BD10670100064A33 +:1095900080B53C005C580000D2680021002A05D04C +:1095A000111CFF31213105F06DFA011C081C80BD32 +:1095B00010670100FFB50D1C1F1C87B0109E002412 +:1095C00002F072FD1823134958430858002819D097 +:1095D000041C331C3C00985800003A1C281C0999B4 +:1095E000FAF79FFD041C14D0182000AB1880AA685D +:1095F00001A86946FFF7E7FD6A4601A9002007F0C8 +:1096000044FE002805D10A2100E00F219020FBF73D +:10961000EAFC201C0BB03C00D4580000F0BD000058 +:109620009467010010B5002402F044FD1823054999 +:10963000584340188068002802D0FAF771FD0124D1 +:10964000201C10BD9467010080B5024B00F04EF85D +:1096500080BD0000106701003C001059000080B57B +:10966000024B00F046F880BD000011670100F8B51C +:109670000E1C151C00281C4910D048681C4A288064 +:10968000002007E00B181C7A142363439B181B7CF3 +:10969000335401302B888342F4DC3C004C590000E9 +:1096A00024E000200F1C002408600FE0305D05F06E +:1096B00007FA0E2801D10020F8BD391908720122DD +:1096C000396882401143081C386001342888A04260 +:1096D000ECDC28887860FFF7B7FE00283C0088594A +:1096E000000006D00169002903D07F21C9430BF097 +:1096F00052FB0120E3E72C7D01007440010010B50E +:109700001C1C00280BD020780E2805D214230C4AEC +:1097100058438018007C00E0002008700EE03C00F8 +:10972000C4590000087805F0D1F92070FFF792FEC7 +:10973000002806D00169002903D07F21C9430BF01E +:109740002DFB012010BD00007440010080B52720D2 +:10975000C04309F031FC80BD80B52720C04309F02B +:109760003C00005A000039FC80BD80B5282009F07B +:1097700042FC80BD000080B5282009F04AFC80BD75 +:109780000000B0B5012828D1012901D0FBF76BFCFE +:10979000FFF7E9FD02281AD107F013FC124C2169EA +:1097A00088423C003C5A000015D007F00DFC2061B7 +:1097B00020687D24E40044430DF0AEF9051C07F059 +:1097C0000BFC281A844200D9241A0122211C0A20E9 +:1097D0000DF0B2FDB0BD002109200CF075FCB0BD4C +:1097E00007210A203C00785A0000FBF714FCB0BDAA +:1097F0000000D46701007D20024900010860704725 +:109800000000D467010010B5816D041CFF304630A4 +:109810000CF0D1FC201CFF305030A16D0CF0CBFCC3 +:1098200010BDB0B5041C3C00B45A00000D1C02F081 +:1098300059FC201C02F056FC1823044958434018D8 +:109840001822291CFAF770FDB0BD000094670100D2 +:1098500010B5041C09F0BCFB201C09F0C7FB10BDAF +:1098600010B5041C09F0D0FB3C00F05A0000201C8D +:1098700009F0DBFB10BD70B50C78061C48884D78EC +:10988000E200801AE900401A011C414312312420F1 +:10989000FAF791FD211C6143C9004018291C694356 +:1098A000C90042180C4988790C4B3C002C5B000025 +:1098B00053430C4A1360537B34021460527B88710B +:1098C00001335810084B801A0121490258430028DF +:1098D00000DA494208188012213870BD20100700B4 +:1098E000EC04000000A00700030300003C00685BDC +:1098F000000010B5041C06210430FAF770FCFF20AC +:109900002130FF210155201CFF3041308170417111 +:10991000C173FF2063300155002020616061FF3476 +:109920000134A060E06010BD000070B5061C3C0072 +:10993000A45B0000081C58609A601C1C1E60151C6B +:109940009B8AE28A311C02F0A1FC281AE06070BDFB +:1099500070B5041C081C111C1E1C0025EB43221CA6 +:1099600018320BF0F7FB221CFF325032111C0A395F +:109970003C00E05B00000123201C00F0C6F80C282E +:1099800010D00125201C0BF0ACFA201C00F019F8B7 +:10999000201C00F00AF8201C00F029F8311C201CC3 +:1099A0000BF017FA281C70BD0000FF211D3109586B +:1099B00080303C001C5C00008907002901DA01218D +:1099C00000E00021C1627047011C803100220A635F +:1099D000074A1268002A09D04288920606D5FF304D +:1099E0000130C069400701D40120086370470000BE +:1099F000AC6901003C00585C000080B5011C4A883D +:109A00000020520505D5FF310131C969490700D44D +:109A1000012006F0ECFB80BD0000F8B5051C98683D +:109A2000171C0E1C1C1C002802D1201C0CF031F845 +:109A3000AB69391C301C3C00945C0000A2680BF040 +:109A400095FBF8BDF8B5161C0D1C1F1C002402F078 +:109A500061FB18230649584340184368002B05D082 +:109A60003A1C311C281CFAF78EFB0124201CF8BD7F +:109A70009467010080B507F03C00D05C0000C5FA97 +:109A8000094908610868002802D17D2000010860AA +:109A900008687D21C9004143002301220A200DF0FE +:109AA0004EFD80BD0000D467010080B501210A2071 +:109AB0000DF097FC80BDF8B50E1C3C000C5D00005D +:109AC0005168141C1268A5680B1C751B5719974226 +:109AD00000D20131426800258A4202DD0125626020 +:109AE00005E09A4203D10168B94200D90125002D51 +:109AF00009D001682160A660A38AE28A3C00485D23 +:109B00000000606802F0D7FB301AE060281CF8BD46 +:109B1000000080B502F007FB1823034958434018A2 +:109B20001821FAF798FB80BD000094670100FEB58C +:109B3000041C081C111C1E1C0C25012200923C0058 +:109B4000845D0000A26902ABFDF7F0F8002845D063 +:109B500002982721021C0A4001D1084302902149A2 +:109B6000A069084006D00298014003D14921C900EC +:109B700008430290A06D0299884230D0002E2DD06B +:109B80003C00C05D00004021201C5830FAF769FB02 +:109B9000029800250026371CA06519E0C00711D5E2 +:109BA000F019001970300571281C04F0D4FF00284A +:109BB00004D0A01980300572013603E0E01960304E +:109BC00005703C00FC5D0000013701352D06029850 +:109BD0002D0E4008029002980028E2D18420065100 +:109BE000F0192067E765002500E00B25281CFEBD65 +:109BF000D83A000038B5051C081C111C0024E243AB +:109C00006B46FFF73C00385E00004FFA002805D095 +:109C1000A86900990140814200D10124201C38BD6F +:109C200000007CB5056A8669041CC068FBF7B7FBB9 +:109C3000E169FBF7DAFA201CE2694030C18B128936 +:109C40008918C18306493C00745E000001940091AC +:109C50002869331C82880168E068C06800F0F2F966 +:109C60007CBD0000915E0000B0B5D1685569C86840 +:109C7000141C144B0CE002689A4207D1C268CA60F7 +:109C80000021C1600160FBF73C00B05E000073FB87 +:109C900003E0011CC0680028F0D1E068C068E860FB +:109CA000E068C560201C4030C18B2A898918C183B7 +:109CB0002068002802D0FFF7BAFFB0BD044804F0C6 +:109CC0004EF9006A07F077FAB0BD3C00EC5E000088 +:109CD000A07E0100A06A0100F1B582B00298066979 +:109CE000011C083660314568019182E01021002096 +:109CF0002F69FBF763FB6861018908390904090CC6 +:109D000001816869006840180821FBF73C00285F62 +:109D1000000057FBE86168697188006820220180B3 +:109D2000716841600199497B89011143C17000212B +:109D300081702820FBF775FC3988041CC181A86B51 +:109D4000002803D1012080020843E08106223C0064 +:109D5000645F0000391D201C1030FAF7C5FA391C69 +:109D60000A310622201C16300090FAF7BDFA391C81 +:109D700010310622201C1C30FAF7B6FAE189254A78 +:109D80005C201140012292031143405BE1810F21CD +:109D90003C00A05F000008406084201C2030162199 +:109DA000817100212170E96B002907D02969098B95 +:109DB0000907090F2170A184182181710622601CF6 +:109DC0000099FAF794FA7068000EE071706800026A +:109DD000000E3C00DC5F0000207270680004000E82 +:109DE00060727068A0727088000AE07270882073D8 +:109DF000708801300004000C708002D1706801305E +:109E00007060AC61029828622D68002D00D079E75F +:109E1000029804493C00186000004268044804F0BD +:109E200074F8FEBD00008FC7FFFF3DDA0000A06A96 +:109E30000100B0B5074D2878032808D000242C7005 +:109E40006968002903D00120FAF7C8F96C60B0BD39 +:109E500000009C7301003C0054600000F8B52B4BDF +:109E6000D86A002850D02A48011CFF310131CA6845 +:109E70000132CA601A6C002A02D14A6901324A6171 +:109E80000A6901320A61DA68002A04D01F4A0132E5 +:109E90001278002A02D18A693C00906000000132E9 +:109EA0008A610025071D18261A4A6E43743290599C +:109EB000002829D0B4186069002825D160680028DE +:109EC00002D00168002905D1A16800291CD00968C9 +:109ED000002919D0002805D0E1683C00CC600000C2 +:109EE0000131E1600068814211D3A068002806D0EA +:109EF0002169006808180CF0A3FD002807D0064A65 +:109F00000120606174329159381CFAF770F90135FB +:109F1000022DCBDBF8BD0000447D01003C00086150 +:109F20000000F4670100F8B50F1C0025041C002890 +:109F300025D0201C04F003FE002806D0FFF7FFF810 +:109F4000041CFFF750FB061C07E0201CFFF791FBE9 +:109F5000061C201CFFF76FFB041C002E06D03C00E3 +:109F600044610000FFF74CFB002802D001250120CE +:109F700007E0002C06D0FFF7EFF8002802D00125FB +:109F800000203860281CF8BDB0B5C568041C0DF071 +:109F90008FFC207EC10708D5E168A94205D9226956 +:109FA0003C0080610000914202D3E18A0131E182EC +:109FB000810708D5E168A94205D22269914202D8F9 +:109FC000E18A0131E182400706D5E06821698842D3 +:109FD00002D1E08A0130E082E08AA18A88420DD372 +:109FE000607E3C00BC61000002280BD02068E16864 +:109FF000042207F065FB607E002803D1206808F08A +:10A00000ABFFB0BD0020E082B0BD000070B5061C03 +:10A010000C232049584345180020A860301C06F046 +:10A0200091FE041C3C00F8610000686033D0012000 +:10A03000A8702C20005D022803D1201C03F045FEEF +:10A0400010E0616B00290AD0012804D1211C281CD2 +:10A0500003F055FE06E0201C0AF00DFC02E0201C77 +:10A060000AF03DFB0D483C003462000014384168A2 +:10A07000002910D0201C4030028B1207920F012AB9 +:10A0800009D0808B32020009000410438122024370 +:10A090000C200DF0B7F90CF0A5FD606470BD000058 +:10A0A000607B0100FFB5081C3C0070620000111CC1 +:10A0B0000C32202414430C4A83B00CAE526860CE9C +:10A0C00094700024D47093630D234027BB52946195 +:10A0D000148401220292321C00900191231C291C3D +:10A0E000039800F066F907B0F0BD3C00AC620000D8 +:10A0F000A07E0100F8B5041C0027114E1DE0E068A9 +:10A10000002870680CD1808800070DD101210C480F +:10A11000FBF784F9C460E86070688188013102E06F +:10A120008188228989188180E068391C3C00E862B6 +:10A130000000002801D17168C96D251C6160041CF4 +:10A14000002CDFD1F8BDA07E0100064910B549689A +:10A15000002305E08A88048912198A804360C06858 +:10A160000028F7D110BDA07E010010B509493C00C0 +:10A1700024630000002449680AE08A880389D21811 +:10A180008A80C368221C002B00D1CA6D4260181C53 +:10A190000028F2D110BD0000A07E0100011C134870 +:10A1A00010B54068002309E082880C89121982806A +:10A1B0003C00606300004B60CA68002A00D1416621 +:10A1C000C9680029F3D1011C68318164C364436507 +:10A1D00082880823111C08318907890F591A5023D6 +:10A1E000195251188180011C406E4831C16010BD68 +:10A1F00000003C009C630000A07E010010B50749F0 +:10A2000000244B6806E0C268211C002A00D1D96DE9 +:10A210004160101C0028F6D110BD0000A07E010096 +:10A2200070470000FEB5061C0C480C1C40688021DD +:10A23000817000213C00D8630000C170151C4022D1 +:10A2400081631152816101840020042202920090F6 +:10A250000191291C201C1A1C331C00F0BCF8FEBD07 +:10A260000000A07E010070B5061C1748807802210E +:10A27000164A884390703C0014640000101C8078DB +:10A280000843111C887013480024C4707020FBF729 +:10A29000D9F9114D70216860FAF734F83007000FD2 +:10A2A00069689030C8650D4868220880081C28300D +:10A2B00089604861082008823C0050640000081C46 +:10A2C00038304863203848645A20505406480831D2 +:10A2D0004164446570BD0000070058000700A07E7F +:10A2E0000100DEC00000003007000A4B10B5586DB9 +:10A2F0000A490022496800244A623C008C6400003C +:10A300005C654B6E002B01D0DA604A668B6D002BCA +:10A3100003D00A6E0021F9F79CFF10BD0030070042 +:10A32000A07E0100094910B508880130088001208D +:10A33000074980020860074CA26D002A3C00C864EF +:10A34000000005D00521D1200DF06FF90120A06596 +:10A3500010BDB07401000010070000300700FFB509 +:10A3600083B00CAE86468C460E4A43CE0FAD0F1C12 +:10A3700052680C3730CD9770D37096630D263C0031 +:10A38000046500004027BE52059E9661138400229A +:10A3900002922A1C00900191211C6046734600F035 +:10A3A00029F807B0F0BD0000A07E0100FFB5101C29 +:10A3B0001A1C0C1C191C6023FF3213430C4A83B077 +:10A3C0003C00406500000CAE526860CE93700023E4 +:10A3D000D37093634027BB5293611384032202928C +:10A3E0000191291C321C0090201C039B00F005F8F1 +:10A3F00007B0F0BD0000A07E0100F8B5051C1148B3 +:10A400001C1C3C007C650000089B079F4068DE0028 +:10A4100081650266002181800D488159201CF9F771 +:10A4200022FF0B4830184168281CF9F71CFF074928 +:10A4300006984968002C88620F8600D12C1C0548BC +:10A440004C6245653C00B86500000121016501646E +:10A45000F8BDA07E01009052010000300700FFB55A +:10A4600083B00DAE60CE0C9F081C111CD219FF32B8 +:10A47000402414430B4A526894700024D4709363B0 +:10A4800040239F5294613C00F46500001484022232 +:10A490000292321C00900191231C291C0398FFF7A3 +:10A4A000B5FF07B0F0BD0000A07E01004C210D4AB1 +:10A4B000414310B58C180C490978884207D105F042 +:10A4C000C7FD0A48018801223C00306600001203E3 +:10A4D00091430180201C30300C23C156407B8142C7 +:10A4E00002DD208D0CF0E5FB10BD58E301003C7C43 +:10A4F000010032800700011C603180B5CA798B7978 +:10A500009A4207D9487A0C2307493C006C66000040 +:10A510005843085A0CF0D0FB80BD2030007B012846 +:10A52000FAD1487A05F040FD80BD0000607B010053 +:10A5300010B5041C1C21F9F703FF0348A080E0803C +:10A5400020816081A08110BDFFFF00003C00A86653 +:10A550000000FFB5041C002083B00D1C062C0290E7 +:10A5600038D21F4AFF26C10089188978A14203D139 +:10A57000C0008018467804E0013000060016062866 +:10A58000F1DBFF2E24D00193201C0DF0E8F93C00F4 +:10A59000E4660000002805D02421281C01AB02AA93 +:10A5A000FAF730FE1049F00030390F58310609161D +:10A5B000281C059A019BF9F76EFE061C10D1201C81 +:10A5C0000DF0D0F900280BD0281C6969FAF712FEAB +:10A5D0003C00206700000298686104E0062C01D36B +:10A5E000072600E00826301C07B0F0BD0000CC5A5A +:10A5F000010010B50C1C09F086F8002802D0201CC0 +:10A6000009F0B5F810BDFEB5134D041CAE69002E5F +:10A610001CD03C005C670000104F30377868604306 +:10A62000011C2888F9F7D2FF39686143411801A855 +:10A63000321CF9F737FE0298296A401828620BD4B9 +:10A64000E969884208D9A969401A2862019801304D +:10A6500001E000203C009867000002900190019802 +:10A66000FEBDC8740100F8B5002828D00024144DA0 +:10A6700000E0013461000919491949780029F8D12D +:10A6800063001B1903330722694603F0D4FB002C37 +:10A690000FD0002000993C00D46700000AE042007F +:10A6A0001218AE5C531852195E71567801309E71C3 +:10A6B0009278DA71A042F2DB00980322023003495B +:10A6C000F9F77EFEF8BD0000EB620100E8620100D0 +:10A6D000B0B5051C081CFAF73C00106800009DFF8F +:10A6E000041C281CFAF7D9FE211CFAF7FCFD201CDB +:10A6F000B0BDF3B544480C1C007881B0012872D17C +:10A70000FAF782F8414DE86A41490860E86B486011 +:10A710004048FAF7A6F9E86A00283C004C680000B7 +:10A72000FCDA221C0F2001990AF0A4F8384D022708 +:10A730002F63384A64260020AA21083213180130FA +:10A740000004000C64281974F8D3168100205060AE +:10A75000101C103010600025171CD2603C00886867 +:10A76000000008E0281CF9F7A2FF413178190135F3 +:10A770002D042D0C0174B542F4D3264D6F630120D6 +:10A780002863244DE86A0028FBDA0B223B1C244E88 +:10A7900003E00132642A00D10022101C0C213C008D +:10A7A000C46800000139755C1F183F7CBD42F3D1BD +:10A7B000013800D563200029F4D1184E501CF16BEC +:10A7C0001A4A101C0138FDD1F06B884201D0011CDF +:10A7D000F7E702273763164D9021281CF9F7CEFDC5 +:10A7E0003C0000690000281C28302860281C10301C +:10A7F0002F81E860281C20302861042100E00CE053 +:10A800002983E861ED62756301203063221C892091 +:10A8100001990AF038F800202863FEBD00000857AF +:10A8200001003C003C69000000300700108E010070 +:10A8300074FF010009570100204E0000E4FE0100F2 +:10A8400080B513281ED0F02816D109F0B5F90028DC +:10A8500013D10DF0BFFA11F00DFC00220421C42029 +:10A860000CF01CFF3C0078690000094800210078CA +:10A8700005F03FFD05F093F807490120086080BD11 +:10A88000011C0120FAF787FC80BD00F032F880BD82 +:10A8900000006A5701003CD90100B0B50CF0FFF987 +:10A8A0000B49022448603C00B46900000A48046176 +:10A8B0000120772109030861084D6868800702D4E8 +:10A8C00068682043686009F0C7F96868A043686059 +:10A8D0000020B0BDE060010000300700000107006B +:10A8E00080B50123032200213C00F0690000022012 +:10A8F0003CF0F1FA002801D0FAF781FC80BD1CB5CC +:10A90000FCF7F5FAFAF719FE01F003F90024211C0F +:10A91000684601F0E2FB00AB1878012803D002285A +:10A9200001D0032801D10CF0B2FC3C002C6A0000DD +:10A93000013424062416062CECDBFAF709F9FAF7A1 +:10A94000E7FCFAF733FAFAF76DFAFBF7DFFF05F0E9 +:10A950004DFB06F081FC0BF07DF907F029FC114856 +:10A960001021016009010160C90201603C00686AB0 +:10A97000000089000160202101600421016008219C +:10A98000016040210160802101608900016049006F +:10A9900001604900016049000160C9030160890B41 +:10A9A0000160F9F741FF1CBD0000001007003C00EA +:10A9B000A46A000080B53BF04FF83BF07DF9FAF750 +:10A9C0004BF980BDF8B5002500240022002871D085 +:10A9D000434FB9680B1ABB60F868391C0130F86046 +:10A9E000896A002B1EDC0224002906DAFB699842E2 +:10A9F0003C00E06A000006DD3B69984209DD07E0A3 +:10AA0000BB69984201DC012403E07B69984200DDC8 +:10AA10000324786A002808D000207862032C01D132 +:10AA2000022402E0022C00D101242E48012C0079DE +:10AA300018D13C001C6B0000BB78994215DA3B78BA +:10AA40007B7039700131B96201D50131B962B96ADF +:10AA50000125994203D1042804D2013000E00020EE +:10AA600038710122002933DA27E0032C35D1002682 +:10AA7000002807D03C00586B00001E498140386A0E +:10AA800008180CF05CF800282CD01B480078400710 +:10AA900005D5F8683969884201DB0323FE56B86A98 +:10AAA000B04212DD01217962397801257970387060 +:10AAB0000138B86288423C00946B000001D000214C +:10AAC000397100280CDA0720387100E012E007E045 +:10AAD0003879002809D0FF30387106E0002A02D00A +:10AAE0000CF0F8F83862002C04D0FEF797FD291C12 +:10AAF00008F0FCFBF8BD00003C00D06B0000AC7E11 +:10AB0000010050C300001D75010080B510680028C9 +:10AB100002D000F00AF880BD0348C069806808F0E0 +:10AB2000B2F980BD0000846A010010B5041CC06841 +:10AB3000C068002801D1FAF77AFB3C000C6C0000D9 +:10AB4000E068E169C068231C014AFFF7D7FB10BD2C +:10AB5000DD6B0000B0B5051C0C210020FAF7D6FC17 +:10AB6000041C006800214160016029880181698816 +:10AB70004181291CFF312131201C03F03C00486C2D +:10AB8000000077F9291CFF314631201C03F071F9D0 +:10AB9000291CFF315031201C03F06BF9291CFF31B7 +:10ABA0004331201C03F065F9291CFF316331201C5F +:10ABB00003F05FF904480068002802D0201C3C0024 +:10ABC000846C0000FFF78EFD201CB0BDE462010024 +:10ABD000F8B5051C0C1C04D105211820FAF702FB5E +:10ABE0004DE0291C12310622601CF9F725FC221CBD +:10ABF00030320026002100201670344B1B5C2F8A57 +:10AC00003C00C06C0000DF40FF0707D51778013318 +:10AC100001371770671830377B70013101300E280B +:10AC2000EEDBA87B6072107800282BD02A481E210A +:10AC3000095C271C1037217201686181C189217765 +:10AC400081893C00FC6C00007973C18AA181018B71 +:10AC5000E181428A211C60314A80828A8A801F49B0 +:10AC60002C31097A002909D002290AD10122626215 +:10AC70006272428BA281808BE08103E001216662D7 +:10AC800000E000213C00386D0000E87B084001D165 +:10AC90000020F8BDA868431C09D0221C1232009283 +:10ACA000931D0232211C01F09CFAA06200E0A66212 +:10ACB000687B291C1D3120740B4820222062201C37 +:10ACC0004230BE73F9F73C00746D0000C1FB4034A4 +:10ACD0002670687E0449607068682C3148600120E5 +:10ACE000DAE7000090580100C86E010091020100EF +:10ACF00070B5161C0D1C041C002806D00C20FAF799 +:10AD000047FD30C0083806723C00B06D000070BDD1 +:10AD1000002070BD0000011C054880B5006801D00E +:10AD2000012100E00021FCF7A0FC80BD00000C79AF +:10AD3000010070B50E1C041C002801D1FAF78FFA2F +:10AD4000064D2868002801D0FAF73C00EC6D0000A1 +:10AD500089FA04482E60C4600121017070BD0000B2 +:10AD6000A87E01003000070010B5074C20680028BD +:10AD700001D1FAF777FA054800692168F9F7DFFA97 +:10AD80000020206010BD0000A87E01003C00286E5D +:10AD900000003000070001200549C00680B50860AA +:10ADA0000022032154200CF0B8FC80BD00000010EC +:10ADB000070080B500220421C4200CF0AEFC80BD49 +:10ADC0000000044880B500880249FFF7B8FF3C0046 +:10ADD000646E000080BD0000754B0000C874010067 +:10ADE000F8B5061C31480025C0680C1C002830D07E +:10ADF0002E482F4F0430007838762C4804304078A5 +:10AE00003881002A0BD0F9F7A5FA1F20B876201C4C +:10AE10003C00A06E0000F9F7F6F925480430807870 +:10AE2000B87643E02548224984424D6902D26C43FA +:10AE3000E40B0FE01F48211C806A0090F9F723FC07 +:10AE40000099021C4A43A11A1A4A6943526AC90B63 +:10AE500050433C00DC6E00004418022C01D8002056 +:10AE6000F8BDF9F77DFA1F20B876201CF9F7AEF986 +:10AE7000041C114804308078B8760F4F7D6AAC42CC +:10AE800004D2201CFFF722FC051C12E0211C281C08 +:10AE9000F9F7FCFB3C00186F0000061C6843201A01 +:10AEA000FFF717FC051C002404E0786AFFF711FC8B +:10AEB00045190134B442F8D3281CD4E70000C87403 +:10AEC000010030000700C0C62D00011C7D2080B5A8 +:10AED000C000F9F772FB3C00546F00000249886122 +:10AEE0004008C86180BD0000C874010010B5064C60 +:10AEF000211C00200BF042FA211C00200BF00AFA62 +:10AF000000F068FE10BD0000856F000030B50F4DE9 +:10AF10002A78042A19D8002A3C00906F000017D024 +:10AF2000002107E04B005B185C190123E4568442C2 +:10AF300002DA01318A42F5DC8A4200D10139480047 +:10AF4000401840198178024A343A1170C078507024 +:10AF500030BD0075010030B5111C3C00CC6F000005 +:10AF6000383185B09162082111860023141C011C20 +:10AF70005363C068154D0BE00268AA4206D1C2684F +:10AF8000CA60C3600360FAF7D1FA03E0011CC0682D +:10AF90000028F1D1221C4032082120683C000870B2 +:10AFA0000000FAF764FB0B49201C4830029004941F +:10AFB0000391E069828801686E2001920091221C51 +:10AFC0005632035D211C28312068FFF758FA05B07E +:10AFD00030BDA07E0100D57000001CB507493C00C3 +:10AFE00044700000021C01900091C069131C848809 +:10AFF000016810684833221CFFF708F91CBD0000E7 +:10B00000C96F000010B5141C184803F089F8A0425D +:10B0100001D0FAF745F90422201C4030A16AF9F763 +:10B020003C0080700000BDF9002802D101202062A0 +:10B0300005E0002020628420005D002803D1201C50 +:10B0400009F023FB05E02068FAF779FA201CFAF7EB +:10B05000A4FBE0698079062806D1206A0649002809 +:10B0600003D03C00BC70000008690130086110BDCD +:10B0700048690130486110BDA06A010028610100E3 +:10B080001CB5141C154803F051F8A04201D0FAF782 +:10B090000DF9201C4F300279417900AB12021143A7 +:10B0A000C27812043C00F870000011438278120646 +:10B0B0001143009101784078090208439880201CD0 +:10B0C000694606F03CF9002803D1201C09F0E3FA98 +:10B0D0001CBD2068FAF739FA201CFAF764FBF7E781 +:10B0E0000000A06A01003C0034710000BCB51F4D97 +:10B0F000141C281CDC3003F01FF8A04201D0FAF722 +:10B10000DBF8A06C00AB027881781202114302795F +:10B110001204114342791206114300918179C079DA +:10B12000000208439880201C3C00707100006946B2 +:10B1300006F00BF9002817D001280ED1ED6C002D78 +:10B140000BD08020025DE06C0121002800D100219D +:10B1500060686B460A30F9F723F92068FAF7FBF9C3 +:10B16000201CFAF726FBBCBD201C3C00AC71000083 +:10B1700000F08EFEFAE70000C4690100BCB5041CB3 +:10B18000406A0025002803D06068008B05072D0F5A +:10B19000221C403208212068FAF77EFAA168019546 +:10B1A0000091211C221C6032206850313C00E87163 +:10B1B00000000D1CE36809F0E2FFE069806B0028E5 +:10B1C00003D1FEF7E8FA002801D0182000E0102093 +:10B1D000064901940091E169082309680A18211CB5 +:10B1E0002831281CFFF787F9BCBD357100003C00F1 +:10B1F0002472000010B5101C3830906204201086B4 +:10B20000002050631068141C40320421FAF74AFAF7 +:10B21000231C211C2831024A2068FFF7BDF810BD0D +:10B22000657000000EB5C369021C9888054902923A +:10B230003C0060720000019100901B6810689169E9 +:10B240000322FFF7AEF90EBD0000257200000EB517 +:10B25000021C0649102000900292131C01911068F4 +:10B26000002270330021FFF79CF90EBD000025720B +:10B2700000003C009C72000010B5031C002100205F +:10B28000084C00E00131CA00A2589A4202D00B29B2 +:10B29000F8D310BD0B29FCD2C90009190020087190 +:10B2A000012010BD385801008CB500AB86211980F3 +:10B2B000011C04483C00D872000006F0EEFE01902C +:10B2C000684606F0FAF88CBD0000707C010010B5ED +:10B2D000041C0D480D4994B00480062218310C302E +:10B2E000F9F7FBF801A807F0A2F80C2009A94872A9 +:10B2F00000AB1C8002213C0014730000684603F080 +:10B30000DBFF049001A806F0D1F814B010BD0000D6 +:10B31000587C010080B504F045FE05F053FA80BD6D +:10B3200010B5194CE068002806D0611C0878002888 +:10B3300003D14878FF3008703C005073000010BD06 +:10B34000FF300006000E0870A1680029F7D0002821 +:10B35000F5D10E4854308178002903D1C178FF31EE +:10B36000817010BDFF310906090E8170F9D1A16904 +:10B370000029F6D0808803F0D0FB3C008C730000DD +:10B38000044A011C5C320C3205CA801AA269F9F722 +:10B390001FF810BD447D0100F0B5041C4068002575 +:10B3A0000179002285B0C907CB1769490133896A41 +:10B3B000102905D36649C039086B01303C00C873B9 +:10B3C000000008638EE021680E68F678B706FF0F6C +:10B3D000B609002B049706D063691F1C1B6A5037FF +:10B3E0009F4200D10125002D02D063691B6A04E051 +:10B3F0003C23594F7343DB190433E3619F883C00BE +:10B4000004740000002F70D09B79022B6ED0042BA7 +:10B4100017D0062B69D10868A06108890438088113 +:10B4200020680168043101604E4900295DD0049F05 +:10B43000BA425AD14948221C1C3002F065FE05B0C0 +:10B440003C0040740000F0BD0968251CCA794035F5 +:10B45000261CEA738B79221C503213704B796036AC +:10B4600053700B7993704B78D37009781171002168 +:10B4700029721621B173616A002906D0018B090770 +:10B48000090F3C007C7400002972B1811821B1734E +:10B49000011C0A31201C06224930F9F733F8606894 +:10B4A00014220188E982011D201C5830F9F72AF87E +:10B4B000E88A30490840012189030843E8827089FD +:10B4C0000F2108403C00B874000070812068018999 +:10B4D00008390181206801680831016008210020D5 +:10B4E000FAF783F8051C026820680821FAF7FBF8D0 +:10B4F0002068FAF774F82149C5602FE030E0FFE7D3 +:10B50000216860680A683C00F47400008023A2642B +:10B510001E55E564557913792D025B1995792D0433 +:10B520005B19D5792D065B19957812781202AA1845 +:10B5300015040A892D0C083A0A8121680A68083224 +:10B540000A60E169021C0A323C003075000001A863 +:10B5500009680BF03EF9E0692B1C0168201C703073 +:10B5600001AA0BF086F9094901226DE72068FAF774 +:10B5700022F8201CFAF74DF970E7846A010068612F +:10B580000100557200008FC7FFFF3C006C75000082 +:10B59000417000007972000080B502218220F9F725 +:10B5A00093FE80BD704700007047000070470000A8 +:10B5B00070470000704700007047000070470000AF +:10B5C00080B5C068F9F7FAFF012080BD3C00A8757E +:10B5D000000080B50021FF20F9F779FE80BD70479B +:10B5E000000070470000012070477047000070475E +:10B5F0000000704700007047000080B506219920C8 +:10B60000F9F765FE80BDB0B500250129124C3C005C +:10B61000E47500000FD10AF00FFC00281DD06178FE +:10B620003C235943091904310162611C416284625F +:10B63000041C503406E000290FD13C2050432570F3 +:10B6400004190434002C08D02068002802D02021DE +:10B650003C0020760000F8F718FFA5800720A071B5 +:10B66000B0BD6861010070B5041C002101F041FC0F +:10B670006068002801D0216801602068002801D09E +:10B6800061684160124E7068A04201D160687060CC +:10B69000E0683C005C76000000280BD0002506E046 +:10B6A000E068E900411814200BF0E2FF0135308812 +:10B6B0008542F5DB0621201C4430F8F7E9FE206BBB +:10B6C000002801D0F9F786FFE069002801D0FAF7D9 +:10B6D000AFF870BD3C009876000058750100F0B5D9 +:10B6E0001D4F059D3F6801261C1C331C002F00D0F8 +:10B6F0002B1C1D062D0E002906D011780E23164F87 +:10B700000918097A6B4310E02178002913D0FF3122 +:10B710000DE0012901D93C00D476000001311170FF +:10B7200011780E230F4F490811700918097A6B43DD +:10B73000DB19595C21702178002902D11178002988 +:10B74000EAD10948C068002805D02178301C0029BA +:10B7500000D10020F0BD01203C0010770000F0BDBA +:10B76000000018670100246701005C670100AC7CE1 +:10B77000010084460020F0B5002909D011781A4E46 +:10B78000B170194EB178717031700121316127E0CB +:10B79000164E0123F15663465F683C004C7700006B +:10B7A0000023F6560125CC0FB74200D90025002C06 +:10B7B00001D0002DE8D10E4F3B69002B03D0002DA6 +:10B7C00001D1167002E01C4301D111700120012447 +:10B7D000002B00D000243C61002C02D03C00887774 +:10B7E0000000711C397001E0FF3179700028D5D05C +:10B7F0000120F0BD0000AC7C010090B50A4C002097 +:10B8000093B0206103906846002108F084FD207AFF +:10B81000022801D1E06B00E0206CE06101203C00D7 +:10B82000C477000008F08AFD13B090BDF46E0100EB +:10B83000F7B5051C88880C1C82B01F4F002800D16A +:10B8400000270498002801D1F9F78AFD1B483B1C0A +:10B850000068211C0268281C0092049AFEF73CF83C +:10B860003C0000780000061C22D00321049802F05E +:10B87000B8FF00281BD08078012103F0E4FFA088E6 +:10B88000A18E484300040F49000C088003F081F9A1 +:10B890000122002D00D10022011C0E200BF0C9FE58 +:10B8A000002F3C003C78000008D10021281C02F049 +:10B8B000BDFC03E00026281C00F00AF8301C05B08F +:10B8C000F0BD0000C1A10000E4650100A87C0100FA +:10B8D00010B5041CFEF738F80121002C00D100211E +:10B8E0000E200BF03C0078780000DDFE10BDF8B5AE +:10B8F000071C0BF094FAFDF7BCFE002602281E4D33 +:10B9000001D02E70F8BDFDF73EF8041CF9F759FC84 +:10B91000002814D0FDF777F8002810D002F0F9FBCA +:10B92000002801D000243C00B478000000E0154C51 +:10B93000331C211C072216200BF066FF687880213B +:10B940000843687002F00AFC0028DED128788007DE +:10B95000DBD4FDF723F9002805D12878C00702D5EC +:10B96000FDF742F8D1E702F03C00F0780000CDFB93 +:10B970000028CDD02878022108432870211C381CCB +:10B98000FDF7C1F8C4E7606C01007102000010B55A +:10B99000124C01202070FEF7F0F90121A068FBF79E +:10B9A000F4FEA06803F087FF0D483C002C790000EE +:10B9B000A16807F023FDFBF755FFE06800280DD0D4 +:10B9C000094906200AF024FD084905200AF020FD57 +:10B9D000FBF76EFF002801D005F0F8FC10BD000059 +:10B9E0007869010034630100E13500003C006879AA +:10B9F0000000B1350000F0B5244D234C687C203C9C +:10BA00009BB0002808D0022803D820890138208163 +:10BA100037E000276F7434E01C4E68221436311C66 +:10BA20000C3101A8F8F709FE1848338901213C00C0 +:10BA3000A479000044300A1C002B007B00D1021CBA +:10BA40001206120E0DAF3A709446AA7B931930334A +:10BA50005B7B7B70EA7301321206120E0027824272 +:10BA6000AA7301D3AF7304E06246012A01D1776063 +:10BA70003C00E079000000E071600648074A803829 +:10BA800081674267682201A9F8F7DDFD278108F088 +:10BA900012FD1BB0F0BD84660100E92E0000F1B577 +:10BAA00086B006990020886106988468808D656854 +:10BAB00001283C001C7A00004CD9354949680591A1 +:10BAC000002947D00022002100230390281C96461D +:10BAD000944606680496F2788026B2433F2A2ED810 +:10BAE000D706FF0E0126BE40371C049E5209B678C9 +:10BAF0007600B2183C00587A0000264E92001C36A0 +:10BB0000B2583A401ED003E002900289C068511832 +:10BB10000028F9D10598814214D870460130864634 +:10BB2000002B04D06046D86001986246D06003982C +:10BB30000138039006D03C00947A0000231C24684E +:10BB40006068029A01909446C9E77046012807D9B7 +:10BB50002A1C00213F2001F051FF051C0698856139 +:10BB6000281C01F0B3FF0E480068002807D02868A1 +:10BB7000018840790231091A3C00D07A0000281C63 +:10BB800001F0E5FCA2680698C06806990B69291CBB +:10BB9000F8F77CFC034908690130086107B0F0BD83 +:10BBA0000000FC5A0100CC5C010010B5094A80007D +:10BBB0001258D006C00E0130074B3C000C7B000031 +:10BBC0001C68002CFCDB5A602022121A914019607C +:10BBD00019680029FCDB10BDE86001003020070077 +:10BBE000B0B5124C00252570A168114807F032FC51 +:10BBF0006561FBF7A3FEE06800280DD03C00487BA0 +:10BC00000000FBF7A4FE012107200BF070FD0A499C +:10BC100006200AF04CFC094905200AF048FCA068FF +:10BC200003F067FE0021A068FBF7CDFD05F0ABFB3C +:10BC3000B0BD7869010034630100E13500003C00CB +:10BC4000847B0000B135000010B50F4C207C00282B +:10BC500019D16069002816D1E068002806D00A488A +:10BC60001C38C068002801D005F0CEFB0121072058 +:10BC70000BF040FDA06803F03FFE0448A16807F008 +:10BC80003C00C07B0000DBFB0120207010BD786908 +:10BC900001003463010070B50E4C0122A368E56811 +:10BCA000268A5D1BB54201D1002206E025680133DA +:10BCB0002E68A3602660043503C5002A04D1012143 +:10BCC0009D203C00FC7B0000F9F752FB70BD03494E +:10BCD0000220086070BD000044E30100402007001E +:10BCE00080B502F0B9F880BD80B502212D20F9F7AA +:10BCF0003FFB002080BD000080B502212A20F9F71B +:10BD000037FB00203C00387C000080BD000080B57F +:10BD100001212B20F9F72FFB022080BD00000149F3 +:10BD20000120086170477C780100F8B5061C0C23DF +:10BD30000F1C1749584345186C68301C0BF03FFE28 +:10BD4000002F09D1301C3C00747C000003F0EEFE93 +:10BD5000412007551148211CFFF7A6FFF8BD4120DF +:10BD60000755A06B002803D0201C00F0DFF9F5E791 +:10BD7000201C00F0DBF9AC68002C02D00020A86089 +:10BD8000EDE7301C05F034F93C00B07C0000041CE9 +:10BD9000E8D108210C20F9F7F4FAE3E70000607B12 +:10BDA000010055800000074A80B55070516012783C +:10BDB000064B80005201D218101840380268081C47 +:10BDC000F8F77BFB80BD786901003C00EC7C00004B +:10BDD000FC420100B0B50A49041CC870084DE435A6 +:10BDE000A87A0871082C01D3F9F7FCFAA87A05495A +:10BDF00040014018A1004058F8F760FBB0BD0000BA +:10BE0000606C01008043010080B500283C00287D63 +:10BE1000000001D009F01DF980BDB0B5051C0C1C57 +:10BE200000200860686809F036FB6C60B0BD10B592 +:10BE3000041C09F034FB2168002900D1646010BDA6 +:10BE400000000021016040607047F8B546683C0082 +:10BE5000647D0000041C406A351C0A35002804D0AB +:10BE6000201CF9F789FD071C00E00427291C6069E4 +:10BE700000F0F6FC79000F18BA88F18A051C8A4296 +:10BE800005D13088000502D504F0BEFB3CE02868EF +:10BE90003C00A07D000000280FD001328A4204D16E +:10BEA000F9F70FFC2168C1600BE0F9F7F0FBF08AAD +:10BEB000000704D00021296029E0080727D1206865 +:10BEC0002860F08AB8801348016801310160318828 +:10BED00049053C00DC7D000018D429682160002160 +:10BEE0002960E16900290DD0897902290AD1082148 +:10BEF0002186211C3831A162221CDC30084902F065 +:10BF000081F9F8BD201C00F05FF8FAE7201CF9F772 +:10BF1000EFFCF6E73C00187E00002068F9F7BDFB57 +:10BF2000F7E7C4690100B9710000F8B50F1C097882 +:10BF30000124C90721D502F08CFF002801D000247C +:10BF40001BE00E4E756E002D17D0346E0622311C8C +:10BF5000381CF8F7D4FA3C00547E0000002805D1C4 +:10BF60000120002C00D00020041C03E0013D063617 +:10BF7000002DEED1002C03D1024EB06E0130B06620 +:10BF8000201CF8BD1079010030B5051C00200649C1 +:10BF900000221C23CC56AC423C00907E000001D114 +:10BFA000081C30BD01324831012AF5D330BDCC6DBB +:10BFB000010010B5084C00221C235343E358834270 +:10BFC00004D11C20504300190A6010BD01320E2A12 +:10BFD000F2D3002010BDDC7101003C00CC7E0000DB +:10BFE000F0B5416895B0071C90371391041CF878A0 +:10BFF000251C8035C6072879F60F4A4902284DD1FD +:10C000000A6D002A4AD04868013048600AF058FF9B +:10C0100044490861486113990979C9073C00087FC0 +:10C02000000001D441498861206806220690A16879 +:10C0300003A8F8F7EEFA062204A80230E168F8F740 +:10C04000E8FA07A806222169F8F7E3FAB87808ABFE +:10C05000002198700C96636A201CA0300A1C3C00DA +:10C06000447F0000002B02D0028A5207520F08AB17 +:10C07000DA7000AB998413990988C90BD984696B6C +:10C0800010AB1091A96B1191808B29491881096D12 +:10C0900003A8F8F732FA2979686B0BF04DFD29797E +:10C0A0003C00807F0000A86B0BF067FD3DE000289E +:10C0B00038D1486D1490002834D0206806220390AF +:10C0C000A1686846F8F7ABFA062268468018E1686E +:10C0D000F8F7A5FA05A806222169F8F7A0FA0021C9 +:10C0E00004913C00BC7F0000B97808A810AB017235 +:10C0F0000896E9680B9169794172686B0E90A86B9C +:10C100001090288DD880688D1881E1690CA80029CD +:10C1100004D089790170206A0D9001E00721017037 +:10C12000684614993C00F87F0000F8F7EFF902E048 +:10C130002068F9F7CAFA201CF9F7F5FB15B0F0BD35 +:10C140000000C4690100B0B5041CC0680622018962 +:10C150000C3101810568211C0C3D0560A818F8F719 +:10C1600064FA0622A1183C0034800000281CF8F76D +:10C170005FFAA08F0009E062206303480169201C78 +:10C18000F8F7C7F9B0BD00007C790100F8B5061CCE +:10C190006036051C707A0C23254958434418A86B57 +:10C1A0000027002806D0A0783C00708000000128FD +:10C1B00003D1A770707A0AF0B6FD2A1C0C218020EA +:10C1C0000BF095FBA86B002833D0A07802280BD089 +:10C1D000042822D1A7702F1C4037787802280CD170 +:10C1E000707A0AF0A0FD18E003203C00AC8000004B +:10C1F000A0701249002014390969F8F790F90FE08E +:10C200002C1C07E078784121221C08550C21802045 +:10C210000BF070FB6034607A04F020FF041CF1D155 +:10C22000707A4035A98B0002090909043C00E880B6 +:10C2300000000843812101430C200BF0A0FAF8BD57 +:10C240000000607B0100F8B51C49051C886A0130BC +:10C250008862281C0BF07DFD041C11D02B1C2033A0 +:10C260001E1C5A79201CB4301979144FFDF73C007C +:10C270002481000089F8AA7A201CB830B179FDF732 +:10C28000B9F8002F04D101212868FAF76DFAF8BD3A +:10C290006068BC21C08A085328680021FAF764FA54 +:10C2A000002809D00649C86A0130C862002CEED0C7 +:10C2B0003C0060810000201CF9F747FBEAE7201CE6 +:10C2C000F8F73CF9E6E7C4690100A1FF0000F8B502 +:10C2D000164C051F0022211CA03103E02868A04253 +:10C2E00009D02034A142F9D1002A04D102218E20A4 +:10C2F000F9F73C009C81000083F8F8BD0D4FBE7932 +:10C30000606901306061F8F797FDA84207D1A08805 +:10C310000430F8F797FDE0690130E06105E020683E +:10C3200028602560A0690130A061BE71E5E70000CA +:10C33000D05C01003C00D8810000201007000029DB +:10C3400001DB062901DB02207047064BC9005A5C5D +:10C35000C91802704A7842708A78827049684160D0 +:10C36000002070470000CC5A0100B0B50D1C041C21 +:10C37000052801D3F9F73C001482000075F8104835 +:10C380004068002800D00324102D00D30F2506207C +:10C390000B496043123140184178807849190906E9 +:10C3A000090E884200D2011C01208840054901384D +:10C3B000096808400004000C3C005082000002F0B4 +:10C3C00044FEB0BD0000D47A010008200700B0B5DB +:10C3D000041C0D1C09F0CFFD002803D1201C09F01E +:10C3E00082FD0561B0BD80B50AF097FD034A0C32AD +:10C3F00006CA8918081A80BD00003C008C82000023 +:10C40000A07D010070B50B4C049E64680DE065686A +:10C41000854209D1207A0870E068106020691860B0 +:10C42000207D3080012070BD2468002CEFD10020D9 +:10C4300070BD0000A46E010010B5041C3C00C88251 +:10C4400000002030817B20690430FDF764F9011C75 +:10C450006220025B636A4034207802F0CEFD10BD9A +:10C4600000000B4910B508888A690A2350435843D5 +:10C470000ED0084A53899488D2881B1952043C0074 +:10C4800004830000520C9A18C96806324A430A21F4 +:10C490005143F8F7FDF910BDC874010030000700E2 +:10C4A00010B5431C01D1104810BD0F4A0E4B943AF1 +:10C4B0001268443B1B7A10E0546884420CD1002976 +:10C4C0003C00408300000FD1022B03D1D47B022C0F +:10C4D0000AD204E0002B05D1D47BE40704D412680F +:10C4E000002AECD1002010BD101C10BD0000386FD8 +:10C4F0000100011C0120012900D00020704700B577 +:10C50000021C3C007C830000FDF7CEF8002808D018 +:10C51000101CFFF7F1FF1823034958434018006926 +:10C5200000BD002000BD00009467010080B5002818 +:10C5300000D10848074900685031097A002902D023 +:10C54000022904D13C00B883000000E0012100F082 +:10C5500006F880BD002080BD0000A46E0100124AD4 +:10C56000124B127A2C3B002A03D15A68002A18D1A8 +:10C5700004E0022A02D19A68002A12D100207047F2 +:10C58000C27B8A4201D03C00F4830000032A0AD116 +:10C59000827E012A07D1027F01321206120E027733 +:10C5A000C37E9A42EED200680028ECD170470000AA +:10C5B000F46E0100F7B58446002001270024002511 +:10C5C00088B007E06246525D3C0030840000002ADB +:10C5D00005D0AB006E46F25001358D42F5D3002DEB +:10C5E00000D00120002828D00027164C6E4622E0FB +:10C5F000201C00F030F8012801D0072806D10021C6 +:10C60000201C00F034F8316888423C006C84000043 +:10C6100001D2022714E02068C9000C18083C201C35 +:10C6200000F01CF8072807D10120012D00D00020C0 +:10C630002468002800D10834013D0436002DDAD1E9 +:10C640000A9804600BB0381CF0BD00003C00A884C0 +:10C650000000205201000068002901D08002800AF9 +:10C66000704710B540688000440F082C03D30221A6 +:10C670008720F8F7ECFE201C10BD002902D00068CE +:10C68000800D704740688005800D704700003C00B9 +:10C69000E484000010B540684001440F052C03D32A +:10C6A00005218720F8F7D6FE201C10BDF8B5051C23 +:10C6B000880A00901C488E05C069B60D171C1C1C0A +:10C6C000002805D1184881698D421DD0856111E08F +:10C6D0003C0020850000FDF7E8F8154909780E298F +:10C6E00007D1002805D0114950310623C956F9F762 +:10C6F00006FA0E490020C8618D61291C201CF8F73C +:10C70000E2F87943201CF8F7DEF808484161201C64 +:10C7100000993C005C850000F8F7D8F805484069AE +:10C720000A18A24201D2401801E04018001B800202 +:10C730008019F8BDAC7C010011670100F8B50F1C31 +:10C74000061C141C1D1C07F0A1FC0E2809D1201C7E +:10C7500002F0FCFB3C0098850000002804D008484B +:10C76000007802F0E4FB041C0121002EAC7200D022 +:10C77000391C201C02F007FC2860002028726C7213 +:10C78000F8BD90570100031C0A4810B50024021C94 +:10C79000A03203E081883C00D4850000994209D290 +:10C7A00020308242F9D1002C04D102218E20F8F7EA +:10C7B0005DFE002010BD0000D05C0100FFB5061C2E +:10C7C000002081B010601F1C0125141C301CFFF7D5 +:10C7D0006DFF052812D202A33C00108600001B5CEE +:10C7E0005B009F440000030303030800391C301C56 +:10C7F000FFF755FF03E00298F8F7EBF801302060EF +:10C8000004E005218720F8F734FE00252068802801 +:10C8100004D906218720F8F72CFE3C004C86000046 +:10C820000025281C05B0F0BD70B5174C606C0028C1 +:10C8300001D001201DE0164E144D3188A06C002857 +:10C8400008D02878814205D9F8F74CF80138FAF772 +:10C8500051FE0EE0E06C00280AD000203C008886E3 +:10C860000000FAF74AFE29783288914204D99042B2 +:10C8700002D9101C00E0081CFAF7DFFDE16B441A36 +:10C880000AF081FB201A00D5002070BD0000447D15 +:10C890000100F8600100FC600100FFB5274E3C007C +:10C8A000C4860000041CB0790F1C151C81B00090D8 +:10C8B0000AF06CFBC11923480768002F05D10A2133 +:10C8C0008020F8F7DFFD05B0F0BD1E4840688446C3 +:10C8D000002801D100220EE082680368AB4207D134 +:10C8E0003C00008700000379A34204D10B21802083 +:10C8F000F8F7CBFD23E0C0680028F1D1134BF868AE +:10C9000018603D603C71B96004988D1A38616046CA +:10C91000002305E08468A41AAC4203DA031CC06853 +:10C9200000283C003C870000F7D1F860002B08D1BC +:10C9300007483B1C47600848064A00880AF08AFB03 +:10C9400000E0DF600098B071C3E70000201007002E +:10C950007C5D0100213801002C740100F3B583B027 +:10C96000041C09D03C0078870000201C049909F0C1 +:10C970008EFB002803D0201C303005B0F0BD0AF03B +:10C980000EFB1E4A0026049F019600900292029C14 +:10C990000025391C201C143002F0C5FA002801D0F3 +:10C9A000261C03E001353C00B48700001C34042D34 +:10C9B000F2D3002E22D10198134F013001900228AA +:10C9C000E8D30121C906029A00201369009CE31AEA +:10C9D0008B4201DD191C161C01301C320428F4D3D3 +:10C9E0003068002801D0F8F73C00F0870000D3FE43 +:10C9F000301CFDF74AFF301C143006220499F7F76B +:10CA00007AFE009C301C3461BDE7306A010034427C +:10CA10000100094910B54C6903E0E168814203D087 +:10CA20002468002CF9D101E0002C3C002C88000087 +:10CA300003D102210220F8F737FD201C10BD0000B1 +:10CA4000FC5A010010B5C30706D5084B5C690C43BE +:10CA50005C611C7E14431C76800706D5044843693C +:10CA600019434161017E1143017610BD3C00688885 +:10CA70000000FC5701001858010070B50D1C041C83 +:10CA8000161C00F008F8A007C0170130321C291C42 +:10CA900000F021F870BD10B5C30706D5084B5C69DE +:10CAA0008C435C611C7E94431C76800706D53C0059 +:10CAB000A4880000044843698B434361017E91438D +:10CAC000017610BDFC570100185801000322111F08 +:10CAD00080B5012000F002F880BD000030B5151CC3 +:10CAE0000C1C002887B002D01C22224901E02249F8 +:10CAF0003C00E08800001C226846F7F764FE0599B8 +:10CB000000AB1A7E8C43201C9543029A291C0240DC +:10CB10000292019A02400192009A02400092039A06 +:10CB200002400392987C08409874587C08405874DE +:10CB3000187C3C001C89000008401874D87C084010 +:10CB4000D87402991048416101AA06CA91438161D3 +:10CB50008168019A114381608168009A91438160E4 +:10CB600000AA06CA11434268114341604168039A12 +:10CB7000914341603C005889000004A80BF001F883 +:10CB800007B030BD0000FC5701001858010010002C +:10CB9000070010B5041C011C012008F0E0F9002C6E +:10CBA00002D003F01CFF10BDFEF7D1FC10BDF0B5A4 +:10CBB0000C1C010E01233C00948900001B06090691 +:10CBC00099429FB028D11749084000211A2800D364 +:10CBD0000221002919D1C500134F10A8EE19B288FF +:10CBE0002168F7F79DFD201CF8F7EAFD7A5901A9A5 +:10CBF00010A8F7F707FD00283C00D089000005D0F9 +:10CC0000109801A90190B07900F09DF81FB0F0BD17 +:10CC10002A20F8F75EFC201CF8F7D5FDF6E7032183 +:10CC20002A20F8F756FCF1E700007FFFFF002445BB +:10CC3000010010B50C1C802802D03C000C8A0000BA +:10CC4000812808D103E0201C00F006F910BD201C4B +:10CC5000F8F7BCFD10BD03212C20F8F73DFCF6E7EA +:10CC6000F0B50C1C00218BB00A91010E01231B06AC +:10CC7000090699422AD118490840061C3C00488AF6 +:10CC80000000062E01D3072124E02089F8F7F1FEE9 +:10CC900022892168051CF7F74CFD201CF8F799FD47 +:10CCA000F4000F4E281C0AAA69463359F7F7B4FC62 +:10CCB000002801D0012807D12868694600903C006F +:10CCC000848A0000A01900790A9A00F009F9281C4A +:10CCD000F8F7B0FE0BB0F0BD01212B20F8F702FCF5 +:10CCE000F8E700007FFFFF00284601000A1C010E44 +:10CCF00001231B060906994280B508D05B009942C2 +:10CD00003C00C08A00000BD10006000E111C00F090 +:10CD10000EF980BD05490140101C05F0A2F980BD47 +:10CD200001212D20F8F7E1FB80BD7FFFFF0080B5DA +:10CD3000011C0F2000F013F880BD80B5011C0420F9 +:10CD400000F03C00FC8A00000DF880BD80B5011C9D +:10CD5000172000F007F880BD80B5011C012000F00D +:10CD600001F880BDF8B5041C061C802084430F1C0C +:10CD7000192C01D3F8F7EAFB0848045D211C0020B8 +:10CD8000F8F750FD3C00388B0000051C221C391CB4 +:10CD90000068F7F7DAFC2A1C311C0720F8F711F9B4 +:10CDA000F8BDF4450100F8B50D1C161C041C1F1C31 +:10CDB00008210020F8F739FD142201680E4B724358 +:10CDC000D2180C71127C3C00748B00004A710D600B +:10CDD0000B4A8F7112687F2A03D95205520E8023A5 +:10CDE0001A43CA71074A0023516801315160021C7D +:10CDF00081210020F8F708F9F8BD00007440010017 +:10CE0000FC5A0100806E01003C00B08B0000B0B500 +:10CE1000041C08210020F8F70EFD218BE27D051C83 +:10CE200009055207520F490C006811438180A17D0A +:10CE300014230E4A59438918097CC171E16A0160C3 +:10CE4000E168281CF8F717FC0A483C00EC8B00004E +:10CE50000068002801D0F7F7F1FB07490431886822 +:10CE60000130886000212A1C0020236BF8F7D2F8DB +:10CE70000120B0BD744001007C6E01000148806853 +:10CE800070470000806E010010B5041C3C00288C27 +:10CE9000000092B0016868460822F7F762FC00AB18 +:10CEA00098884007400FD87798884004000D188470 +:10CEB000D888588400980D900594208908382081DE +:10CEC000059801680831016000200A900C903C0030 +:10CED000648C00000021112009F078FB0549064A06 +:10CEE000086801300860022102A801F0CDFC12B0F0 +:10CEF00010BD0000806E0100558B0000021C012057 +:10CF00000006084380B52B210AF08AFD80BD000091 +:10CF10003C00A08C0000F7B5041C061C8020844354 +:10CF2000171C062C01D3F8F726FB0B48055D291CBE +:10CF30000020F8F78CFC041C006801992A1CF7F704 +:10CF400016FC391C201CF8F7A2FB221C311C002304 +:10CF500002203C00DC8C0000F8F768F8FEBD000001 +:10CF6000204601000A1C011C80B500230120F8F7AF +:10CF70005DF880BDFFB59FB01F1C051C0A301E90D8 +:10CF80001CAA1DA90AF000FF002871D0002F09D0AB +:10CF90000A2100203C00188D0000F8F75EFC0668AE +:10CFA000041C301DFAF7AFFA05E004210020F8F761 +:10CFB00054FC0668041C28893649012208807080C8 +:10CFC000E88814A9308019A8FCF7F5FCFCF7FFFBF2 +:10CFD000011CFF3121313C00548D0000201C01F068 +:10CFE000EFF819A9201C01F0EBF814A9201C01F09E +:10CFF000E7F8201C2099FDF74BFD0022022101F0EB +:10D0000033FD061C1C9900208861301CF8F71CFABF +:10D01000002E0BD0307A00283C00908D000002D00A +:10D020004021084330721C980222816911438161BA +:10D0300004E01C9902228869904388611DAA06CAEF +:10D0400001A805F058FB09A8002F02D00222427265 +:10D0500001E000214172049401A83C00CC8D000045 +:10D0600004F07AFB01211C9808F0C8FF002F04D0BF +:10D070001C980122816911438161A8881C9C01F0E0 +:10D080009FFE021C211C00E004E00748408809F0D4 +:10D090001FF804E03A1C00210520F9F73C00088E37 +:10D0A00000009BF8002023B0F0BDFC600100987CDC +:10D0B0000100F8B5041CC0680568A01D01F095FFCB +:10D0C000002845D0211C1431201C6A460AF055FE68 +:10D0D00000283DD0FCF77DFA002839D100983C00AB +:10D0E000448E00004B21095C012934D1042609F04B +:10D0F00019F9688800281BD1A8880321890388436F +:10D1000015490026088001220221206901F0B8FC9F +:10D11000041C14D000988069800710D5F8F79AF99C +:10D120003C00808E0000201CF8F7DDF8002809D1B3 +:10D13000F8F77FF901260098022281699143816105 +:10D14000002101E00098022108F061FF0098806949 +:10D15000A988C207D20F301CF9F745F8F8BDFA606C +:10D1600001003C00BC8E00001CB5046900230022B5 +:10D17000002C13D14B24245C022C03D1022905D0AE +:10D18000012203E0022901D101220123002A05D056 +:10D19000009004200193694609F036FA1CBD000096 +:10D1A000B0B5041C3C00F88E0000F2210F200C4D9D +:10D1B0000AF099FB287808280BD201A31B5C5B00BE +:10D1C0009F440703030808080808002C01D105F054 +:10D1D000BCFBB0BD012CFCD1FF2007F038FAB0BD7C +:10D1E0000000746601003C00348F00008CB5054AD5 +:10D1F00000AB1172009019716946082009F00AFA13 +:10D200008CBD0000AC7C0100F3B5041CC06806278F +:10D2100085B0066809F026FF984948632069032114 +:10D2200001F008FC964D00283C00708F00004DD0A6 +:10D230009549403109798078814247D1012120699F +:10D2400001F0FBFB02902069322101F0F6FB019016 +:10D25000021C8D480299FCF746FF002836D00023B7 +:10D260008A480299019AFCF7E4FE3C00AC8F00006A +:10D270000B282ED1864A51887089414003910B1C9E +:10D2800084490B4025D150800399171C00290BD0ED +:10D290000399480502D5381CFCF740FE039988061F +:10D2A00002D5381CFCF724FE2A2120693C00E88FB7 +:10D2B000000001F0C8FB00280DD08078E9698142A8 +:10D2C00009D0E861381CFCF716FE381CFCF707FE95 +:10D2D000381CFCF726FE0027201C20300490407AE2 +:10D2E000082871D10AF0D1FC0020686100233C00BD +:10D2F000249000002B61A86866490130A86030893D +:10D300005C31888201F07AFD62495C310861226AF1 +:10D3100004981821007A01F033FEE16A4018039066 +:10D320005C48006A00280DD0002F0BD1594801231A +:10D330003C00609000005C3001681B0700223068F0 +:10D3400009F049FF002800D105270021A06B0AF051 +:10D35000CEFC0021206C0AF0E8FC4F4B03CE039A70 +:10D360005C33FCF788FD00204C4E0521B06320693A +:10D3700001F03C009C9000006FFB011C01D1F060AB +:10D380001CE00120F0608878454A01321070C878AE +:10D390005070474A1070306900280AD04A780879DE +:10D3A000053109F0DDFA3169F7F785F9F0680028F1 +:10D3B00004D03B4A3C00D89000000132107800288D +:10D3C00008D10020A861716A002903D0201C143004 +:10D3D000F7F774F9344A5C321069316A411800E099 +:10D3E00020E00A23D0680A2209F0FBFE002807D0BB +:10D3F0002D4A316A5C323C0014910000D068401A1A +:10D400001169401A7060294A5C32D0683062F06954 +:10D41000002804D0FAF700FD0120FAF7A1FCFAF782 +:10D4200081FC2748006803F007F90698002803D11B +:10D430001E4E0023B36016E03C00509100001C4ECD +:10D440000120B060069801684068B06519487165B0 +:10D450005430C088002809D0B169002906D001F0F5 +:10D46000DCFC011CE06AB269F7F72FF9002F15D137 +:10D4700012480169002908D101213C008C9100006B +:10D4800001612A68002A03D000210020F7F720F963 +:10D4900009490023CB622B616B6106F0B5F807B038 +:10D4A000F0BD6B680648002BF9D0021D111C381C1A +:10D4B000F7F70FF9F3E70000447D01003C00C89145 +:10D4C0000000F4680100F467010003080000F86040 +:10D4D0000100C467010008B5F8F72FFD009000AB0C +:10D4E000188800280CD005F050FF00AB5988188828 +:10D4F00005F06DF9FEF797F80320FBF70EF83C00F6 +:10D500000492000008BD0120FFF7B2FB002008F0E4 +:10D510008DFEF7E7F8B54F498C68206A00680578FA +:10D52000FCF768FA002812D02A07920F0121012A7D +:10D5300000D00021002903D02906090F0B2906D1AC +:10D540003C00409200002A21095D08189030007BC1 +:10D55000F9F70DFC414F3C3FB86B796BF7F7C0F81A +:10D56000A06C0026C660606B800804D0B8690130EA +:10D57000B86106F0DCF9394D28698005800F08D1C3 +:10D5800078693C007C920000042101307861606B76 +:10D590004008400008436063B86A002803D0606B0D +:10D5A000082108436063201C203000903968F7F799 +:10D5B0009AF80320000228602B498868A063C86895 +:10D5C000E06308793C00B8920000C006C00E251C3C +:10D5D000403528714879687123483C384662009884 +:10D5E000807A01F05EFD00210028214A01D01178E7 +:10D5F00003E09378DB0700D55178A971002804D0A7 +:10D600001B49143108683C00F4920000206400E0DB +:10D610006E80B86AC00702D5FF202871AE71E6613E +:10D62000B8680130B8607968884203D00B21852042 +:10D63000F7F7C4FF0D498868C06C8860FB6A002B4F +:10D640000CD00E4AD47B002B3C003093000002DD4E +:10D650007F2C05D201E0002C02D0D47BE318D373D9 +:10D66000FE62C968884203D105218520F7F7A9FF2A +:10D67000F8BD247E010000400700A0800700E8807C +:10D68000070040000700FEB5304C3C006C930000E2 +:10D69000A06B216BF7F733F82D493C318E68708B06 +:10D6A000062804D2E0690130E0610E203085284967 +:10D6B0003C310D68002D03D103218520F7F784FF4D +:10D6C000244845613562318DEF6804393C00A893E8 +:10D6D00000000C0401210291240C002101911D483D +:10D6E0003C30808AA04203D32C81EE6000240BE002 +:10D6F000002F04D103218520F7F769FF04E03D1CCA +:10D70000201A0404FF68240C0298002804D03C006E +:10D71000E493000012490120086100200290019862 +:10D7200001300190002CDDD10C480C4C3C300760DE +:10D7300001983065B564306A0068606260680130E5 +:10D740006060A1680131884203D00A218520F7F783 +:10D750003C002094000041FF04480068A062FEBD28 +:10D760000000E87D010000300700786E0100B0B5D0 +:10D77000051C01210F200AF0F8F8F2210F200AF011 +:10D78000F4F80C480C4C0068143C00280CD0E078ED +:10D7900001283C005C94000009D00122291C0F20C4 +:10D7A0000AF0ACF86078022806D0012003E0607827 +:10D7B000022801D000206070B0BD00009866010012 +:10D7C0000222002880B500D1032203490E200AF06E +:10D7D0009BF800203C009894000080BD000050C3DE +:10D7E0000000F8B50023002200282ED00689046826 +:10D7F000751E2D04B61AF6072D0CF60FB4460EE072 +:10D80000A75CA618023300977778A7540232120457 +:10D81000009F120C00293C00D4940000777001DDB9 +:10D820008B4215DAAA42EED3C068002810D00289D4 +:10D83000002AF9D06246002A0BD00268665D17788C +:10D8400002336755167001220029D2DD8B42D0DBEE +:10D85000F8BD0022CDE700003C0010950000B0B5F7 +:10D86000041C0D1C0120F8F75EFB0D490028C8615F +:10D8700014D062684260A27C0272A268C260E26850 +:10D880000261228A02750A1D0A621268002AFFD10B +:10D89000026048600020A86001203C004C95000018 +:10D8A000B0BD0120FAE70000A46E0100B0B5041C71 +:10D8B00040680D1C431C02D1211C094808E00020CF +:10D8C000F8F734FB064994390861002803D0211C7D +:10D8D00000F048FE00E00120A86001203C0088958F +:10D8E0000000B0BD0000386F010080B50121972015 +:10D8F000F7F785FE002080BD000038B50A1C143201 +:10D900000092131F051C083A0C1C16314068FEF7E4 +:10D910006CFE002801D0002000E0012069683C0076 +:10D92000C4950000A0606160012038BD10B50C1CDA +:10D93000017A00290FD0012909D0022903D1002141 +:10D9400000200AF073FC00202071012010BD416806 +:10D9500001200AF06BFC00F00DF9F4E780B50449F2 +:10D960003C000096000048680138486001D107F08B +:10D970006EFB002080BDAC790100B0B5051C0C1C0D +:10D9800000F04FFEA060686860600120B0BDB0B5D7 +:10D99000051C0C1C00F06FFEA06068686060012030 +:10D9A000B0BD3C003C960000081C00210022002372 +:10D9B0000EC008C001207047F8B50F1C041C207968 +:10D9C000202801D2202020716679002E02D12579ED +:10D9D00000220DE02579291C301CF7F74FF80029AB +:10D9E00001D1321C3C007896000004E0704380199D +:10D9F00005062D0E321CE079291C00F0F2F9207A80 +:10DA00002F49C007C00F08602E480078C00743D5D3 +:10DA1000A1792C4AC80748D42C4E16608B072B4896 +:10DA200008D5CC0801233C00B4960000A340036055 +:10DA3000490704D52849116001E0402101601368BD +:10DA4000264AB34210D1546801680C4354601468EC +:10DA50000C4001D0516100E0916154680C43546066 +:10DA600094682143916013E03C00F0960000547CE0 +:10DA700001680C435474147C0C4003D0147C0C4398 +:10DA8000147402E0147C8C431474547C0C4354745E +:10DA9000947C21439174B34205D100220168032094 +:10DAA000FFF78DF809E0006800213C002C9700008A +:10DAB0000206120E0320FFF785F801E00B48106004 +:10DAC000002038717D71F7F7E9FD0120F8BD0000F5 +:10DAD000CC5C0100040007005C5B0100B99B000006 +:10DAE000585B0100959B0000100007003C00689700 +:10DAF0000000559B0000B0B50D1C04300024FEF75B +:10DB0000D6FA01206C60B0BD0000F0B5077A43681A +:10DB1000041C0E480E1C00680125011C9BB006E089 +:10DB20004A689A4202D18F76002502E009683C00DB +:10DB3000A49700000029F6D1002D05D1217A0129F2 +:10DB400002D101A9F8F7A8F86068043621C61BB015 +:10DB50000120F0BDA46E010010B50C1C08F0AEFC55 +:10DB60006060012010BD000010B50C1C07F084FAA5 +:10DB70003C00E097000004F054FF002060600120AA +:10DB800010BD0020C043486001207047000010B560 +:10DB90000C1C0079FAF707F8002801D0002000E0FB +:10DBA00002206060012010BD00001CB5064C2068FA +:10DBB00000283C001C98000007D009F0C5FA01902D +:10DBC000206841686846F6F7D6FD1CBDAC790100B7 +:10DBD0000149086070470000AC7901000EB5064BA2 +:10DBE0001B68002B06D00290009101926846D9680C +:10DBF000F6F7C1FD3C00589800000EBD0000AC795E +:10DC000001001CB5041C07F04CFA064841680131BC +:10DC10004160009400210191006801686846F6F7B0 +:10DC2000ADFD1CBD0000AC79010080B5F8F7A3F88C +:10DC300080BD80B5021C3C00949800008021032028 +:10DC400000F05CF8011C034800224369F6F79BFDD5 +:10DC500080BD0000A46D0100F8B50C1C1349051C23 +:10DC60000868161C0130086000202061221C103258 +:10DC7000281D0021071C00923C00D098000003F0F2 +:10DC8000DEFE20712069002810D00104090C00205C +:10DC9000F7F779FE3060291D03C9A060E1603068A4 +:10DCA0000168009A381C03F0CAFE20710120F8BDFB +:10DCB00000001075010080B5021C3C000C990000AA +:10DCC0000821042009F04EFF032080BD10B5074A4B +:10DCD0000C1C516801315160011C1031C2680430C4 +:10DCE00003F0F0FE2071002010BD0000107501004F +:10DCF000044980B581610821021C03203C00489939 +:10DD0000000009F032FF032080BD95D80000F7B570 +:10DD1000071C161C0621002082B0F7F73AFE051CEE +:10DD200020480078062800D928812C680020A77098 +:10DD30000399E170311C03E00A8910180F1C3C00A4 +:10DD400084990000C9680029F9D16B4601AA211DF8 +:10DD500000F034F800AB187860711878002817D0FC +:10DD600011484068002808D019780020F7F714FE01 +:10DD7000011C381CF7F730FD0AE03868002802D192 +:10DD80003C00C09900003F600120B86100AB1978E9 +:10DD900038894018388100AB9888311C02382080BF +:10DDA000281CF7F71CFD281C05B0F0BD0000C85C5E +:10DDB000010001794279008889180239401A7047B8 +:10DDC00000003C00FC99000070B5084D2C78AD783F +:10DDD0002018061C002D03D070190138013DA843FE +:10DDE0001080801B18700C7070BD0000C85C0100B2 +:10DDF000B0B504680C4A218852780231914211D2A0 +:10DE0000551AF7F73C00389A0000C9FD016800294F +:10DE100002D10060012181610189491901812088B5 +:10DE200040192080607940196071B0BD0000C85C65 +:10DE3000010080B500220621F12009F0A2FE80BD7C +:10DE40000000031C02483C00749A000003704170FB +:10DE500082707047C85C0100B0B5081C0968151CC9 +:10DE60008C78F7F785FD0449A0000958002902D0F5 +:10DE7000281CF6F79EFCB0BD846D0100FEB5041CA5 +:10DE8000C07AA17AC607F60F3C00B09A0000321C97 +:10DE9000201D01F03CF86069254FC10737D5B869EE +:10DEA000002801D0F6F787FC2068056828888007DD +:10DEB00034D101AA02A9281C01F00BFC281C01F096 +:10DEC00012FC0078C0070AD460693C00EC9A00009C +:10DED000800726D4331C291CA27A20697D69F6F7B5 +:10DEE00072FC1EE000AB187A002803D0012806D08F +:10DEF000022816D1281C796AF6F761FC11E000AB04 +:10DF000018790E2801D00F280BD1281C3C00289B23 +:10DF10000000396AF6F756FC06E00007800F03D1CF +:10DF20002069F969F6F74EFC786B2121013078639E +:10DF3000221C802009F031FEFEBD287A01000B4929 +:10DF400018B50878C00711D50A4A101C20303C00CB +:10DF5000649B0000847900AB1C70C079587008780D +:10DF600040231843087005480078087000AB1888F3 +:10DF7000D08418BD0400070000100700E060010015 +:10DF800070470000054910B58879054B1A7C054C8F +:10DF90003C00A09B0000246862401A74887110BD88 +:10DFA00000002010070010000700585B0100044922 +:10DFB0000A6804480068024001D0886170474861DF +:10DFC000704710000700585B0100021C012000068A +:10DFD00008433C00DC9B000080B52A2109F0E6FDE7 +:10DFE00080BD000010B5041C002903D0812907D191 +:10DFF000812000E08020221C2C2109F0D7FD10BDDB +:10E0000002212C20F7F74CFB201CF7F7C3FC10BDB6 +:10E0100080B5B4B03C00189C0000012806D08228CE +:10E020001CD11AA807F035FC34B080BD812913D16A +:10E030000D480C4A816900685032814202D0D16A91 +:10E04000012902D01178022902D107F00AF9EBE781 +:10E050006946F7F75AFE3C00549C0000E7E70121AF +:10E0600000E002211820F7F721FBE0E7A46E010091 +:10E07000B0B5041C0068174D9AB0686308F03EFA0A +:10E0800020791449134A50392C3A02280AD1906851 +:10E090008002A861C868E8613C00909C00000220F2 +:10E0A000287207F0E4F81AB0B0BD031C0020002B62 +:10E0B0000BD152689202AA610A1C8968E961287230 +:10E0C00010686946F7F727FEEDE7A861012028727E +:10E0D0002870002006F07DFAE5E73C00CC9C0000AB +:10E0E000F46E0100704700007047000080B5012108 +:10E0F0000720F7F7E1FA80BD70470000F8B500246B +:10E10000194A0026D56811680435081C916002E0A0 +:10E11000011C4019086053688342F9D83C00089DEF +:10E12000000001341032032C0E60EED3F6F7F1FF3D +:10E1300010481049124C0860104900200122192390 +:10E140005B010C2543431B1945434A511F1C6D18A5 +:10E15000AB606B6000251E1C14369E60331C3C00B7 +:10E16000449D00000135272DF8DB013003289F6016 +:10E17000E8DBF8BD2057010014C80100B4CF01004E +:10E1800018D90100B8CF0100B0B5074C251CC03527 +:10E19000286B1E2100F0F2F9A26B201CDC30296BE9 +:10E1A0003C00809D000000F0B6F9B0BD0000C469DD +:10E1B00001000020102210B50A4905E00C2343435A +:10E1C0005C180C34CC5001300F28F7D30C23584383 +:10E1D0000950044841600160028200218160C160F1 +:10E1E00010BD3C00BC9D000084E2010044E301003E +:10E1F00010B5084CA06A002803D10748F9F7E8FEDB +:10E20000A0620448443000680121F9F795FC60627F +:10E2100010BD0000606C0100CD260100FFB50D1C93 +:10E22000041C1E1C3C00F89D000081B00A9F1C21AC +:10E23000F6F74DFB0398A061256025612681A68233 +:10E24000E76005B0F0BD70B50D1CA421041C0830BA +:10E25000F6F73DFB201C44300622291CF6F765FB2F +:10E2600018483C23411C3C00349E00006162417808 +:10E2700059430918897A062901D1A06202E0211CBC +:10E280004D31A16241783C235943081804300F49AD +:10E2900020620B88002B15D0AC20005D0B4A183291 +:10E2A00000028018B030E0603C00709E00008D6875 +:10E2B000002008E0E268C1005450E668820052196C +:10E2C00071184A6001309842F4DB70BD000068614B +:10E2D0000100587501001FB5041C6034617A031CED +:10E2E000806A084A0291019003923C00AC9E0000B3 +:10E2F000E279181C20300092447B827B5E20C15A58 +:10E3000018690430231C02F07FFE1FBD394E000047 +:10E31000B0B50B1C01886920C05C86B00E4A049120 +:10E32000039005920D4D596A9A6A2D683C00E89E4B +:10E3300000000124002D00D0041C0A48005D01915A +:10E3400002920090181C2030447B827B5E20C15AD0 +:10E3500018690430231C02F0A4FE06B0B0BD514F72 +:10E360000000186701000A61010001898A1C3C0055 +:10E37000249F000002810268023A0260080A090232 +:10E38000084310807047000070B5051C08780E1C0B +:10E39000FF2814D0717802310020F7F745FB041CE8 +:10E3A00002890068311CF6F7CFFA002D06D0281C30 +:10E3B0003C00609F0000F7F734FB211CF7F757FA89 +:10E3C00000E0251C281C70BD0000FFB50F1C1E1CA2 +:10E3D000041C981C0104090C002081B0F7F727FBEE +:10E3E000051C0068002C386003990170386846707D +:10E3F00006D03C009C9F0000201CF7F715FB291C51 +:10E40000F7F738FA00E02C1C201C05B0F0BD000026 +:10E4100070B51048046804600F4920200860A0050A +:10E420000E4E02D5706AF6F705FAE00102D5306E9D +:10E43000F6F700FA3C00D89F00000A480440002587 +:10E4400007E0E00703D5A8003058F6F7F6F90135E4 +:10E450006408002CF5D170BD0000004007000010DA +:10E46000070030740100FFFDFFFE80B5072180200A +:10E47000F7F749F980BD3C0014A00000F8B5144B33 +:10E4800082009C58CA060127391CD20E9140114ABD +:10E490001160114E4000851915E06060207BC100BD +:10E4A000891910310A780D239A430A70391C81406A +:10E4B00031730749000108313C0050A000004018AA +:10E4C000084A416842608068F6F7BEF9287B002858 +:10E4D000E6D1F8BD0000A473010000100700006041 +:10E4E0000700D175000003490120097A002900D1F5 +:10E4F000002070470000047A01003C008CA000005E +:10E5000003490120897A002900D1002070470000CA +:10E51000147A0100B0B50024FAF776FC002814D074 +:10E52000012408F07DFE0A4D0A4B00215A18A03242 +:10E530001278102A06D38A00D218926F3C00C8A025 +:10E540000000821AAA4200D2002401310329F0D32C +:10E55000201CB0BD00008B080000A46C0100014825 +:10E56000C068704700007869010070B50D1C041C7C +:10E57000161CFDF72EFE0020E0602661A5603C0021 +:10E5800004A1000070BD0000F8B5171C0E1C041C8F +:10E59000002801D0002E01D1F7F7F2F8A06807F0AB +:10E5A00049F9051C01D1F7F7EBF8291C6E60AF6043 +:10E5B000201CFDF7FDFDE068411CE160002803D14F +:10E5C0003C0040A100000548216905F02CF92068B5 +:10E5D000A84202D1381CF6F748F9F8BD0000C46023 +:10E5E00001000022013910B505E00C2353431C182B +:10E5F0000C34C45001328A42F7D300210C235A4311 +:10E6000081503C007CA1000010BD0000B0B5041C8E +:10E6100001D1F7F7BBF8201CFDF7DAFD011C856876 +:10E62000A06807F009F9E0680138E06003D1064806 +:10E63000216905F0E7F82168002903D08868496856 +:10E64000F6F711F93C00B8A10000281CB0BDC46069 +:10E650000100012100288CB500D100210E2009F015 +:10E6600032FA832000AB1880002004F00CF80190EF +:10E67000684603F07AF98CBD000080B508F0DFFD34 +:10E6800006490A8906493C00F4A10000096E411AB6 +:10E690000B0C5918891A0904090C401A80BD000096 +:10E6A00000900700A46C010070B5041C887E0D1C4E +:10E6B000202803D903211820F7F740F800262676F2 +:10E6C000A87E291C1B3160763C0030A20000201C73 +:10E6D0001D30AA7EF6F75FF96868291C6060A8689B +:10E6E0001331A060A87B06222073E87B6073287C2E +:10E6F000A073687CE073A8892082A87CE0762677E6 +:10E70000201C1230A676F6F746F93C006CA20000F9 +:10E710006068431C1DD0114D6D61286800281AD017 +:10E72000227B011C0B7B9A4201D3206014E00B1C5E +:10E73000096800290BD00E7BB24208D20B68002B6F +:10E74000F0D01E7BB242EDD323600C603C00A8A247 +:10E75000000001E021601C60002070BD26602C607C +:10E76000FAE7A46E0100134AB0B5516801240029EC +:10E770001ED0131DD1611362436804E0106200686B +:10E78000D061002814D0D06945689D42F6D13C0084 +:10E79000E4A20000106A814204D15160D06900688F +:10E7A000086002E0D16909680160D069FCF7CEFF1A +:10E7B000002800D00024201CB0BD0000A46E010081 +:10E7C000B0B5174D01242968002927D06D61296152 +:10E7D0003C0020A30000436804E0686100682861F1 +:10E7E00000281DD0286942689A42F6D1AA692B698F +:10E7F0009A4200D1A9616A69914203D129600068F7 +:10E80000086006E0006810602868002801D107F061 +:10E81000CCFE3C005CA300002869FCF79DFF0028AB +:10E8200002D0002400E00124201CB0BDA46E010031 +:10E83000B0B5051C0748446807E0211C4431281C7A +:10E8400000F0D6FC002802D16468002CF5D1201C11 +:10E85000B0BD00003C0098A300005875010070B5E1 +:10E860000D1C141C00280B4E08D0706E0623584354 +:10E870000204120C311C281C228007E0218806208B +:10E88000F6F7A7F970662288291C301CF6F795F870 +:10E89000012070BD00003C00D4A3000010790100ED +:10E8A00080B5032803D8044AC000115080BD01215F +:10E8B0002620F6F75BFF80BD7C790100B0B5051C12 +:10E8C000C0680189392939D30468A079882835D1ED +:10E8D000E0798E2832D1207A3C0010A40000012873 +:10E8E0002FD1607A03282CD1207B022801D0FE286A +:10E8F00027D1607B1D210840012822D1A07BC8219F +:10E90000084008281DD1A81DFBF7E1F9002818D000 +:10E910001920215C002914D101303C004CA40000D6 +:10E920003928F9DB688B04210843688303F0D6FE9D +:10E93000002809D1002300222620044909F092F979 +:10E940000348006801F084F9B0BD000050C3000026 +:10E950000C790100B0B5084CA36801333C0088A4D1 +:10E960000000A3600C1C09D02568002D03D0237A79 +:10E970006168F5F7A3FF201CF7F7A9F9B0BD9479FA +:10E98000010070B5041CC06801890568082953D3CB +:10E990000622281C5549F5F79EFF002837D13C0078 +:10E9A000C4A40000E988524E043E812924D1E568C0 +:10E9B0002968087A4A7A000280180004000C420B89 +:10E9C0000005000DE27520834B8900204200B25AF9 +:10E9D0009A4206D128890C38020A00021043488165 +:10E9E0003C0000A5000002E001300228F1D3E068FD +:10E9F00001890A390181E06801680A311CE00022BE +:10EA000000204300F35A8B4201D1012202E0013081 +:10EA10000228F6D3002A11D107E036490622063132 +:10EA2000281C3C003CA50000F5F75EFF002808D13B +:10EA3000E068018906390181E068016806310160FA +:10EA400010E0E068FFF7E2FC0CE002310181E068D1 +:10EA5000016802390160E06800890238020A000298 +:10EA6000104308803C0078A50000E0680325028977 +:10EA70000168244E022A10D90988082905D0C1232B +:10EA8000DB00994203D1012502E0002500E00225C8 +:10EA9000E9007158002900D10225F7F704F8E900D0 +:10EAA0008919898888423C00B4A5000000D9032553 +:10EAB000A11D201CFDF734FC002800D10325022DE8 +:10EAC00005D0032D07D1E068F6F7E2FF70BD201CEA +:10EAD000FDF71CFD70BDE068018902390181E06825 +:10EAE000016802310160E8003C00F0A500003158E7 +:10EAF000201CF5F7F1FE0028EFD1E0680189023112 +:10EB00000181E068016802390160E3E700006A46BC +:10EB100001007C79010070B50E1C041C151CF7F770 +:10EB20008CFB00282AD01B4908683C002CA600005A +:10EB300001300860002E0AD0012E0BD0022E0FD11A +:10EB4000201C04F0CDF8201CFFF7D6FE0CE00821B5 +:10EB5000E06802E0C121E068C90004F035F903E093 +:10EB600002212620F6F720FEE27DE16A3C0068A63D +:10EB70000000281CFCF795FB206300202062A062A7 +:10EB8000201C00F06CFE70BDE068F6F78AFF002DD7 +:10EB9000F9D0E37D00220120E16AF5F7A7FE70BD00 +:10EBA00000009479010080B5012804D105483C009B +:10EBB000A4A60000006801F009F980BD0321262009 +:10EBC000F6F7F8FD80BD00000C790100F8B5061CD1 +:10EBD00080790024C0072DD5F0680068417A11299A +:10EBE00028D1C1880A0A09021143C90422D1017837 +:10EBF0003C00E0A60000114F0907890E0818418863 +:10EC00000A0A090211430D042D0C432D396801D164 +:10EC1000CA070ED4442D06D1C90704D5243000F00C +:10EC200022FB002805D00648854206D138688007B7 +:10EC300003D53C001CA700000124F068F6F73AFF5A +:10EC4000201CF8BD7C5A01006C07000080B500282C +:10EC500007D00021262008F07BFF0248006801F061 +:10EC6000BBF880BD0C79010010B5041C094A081CD2 +:10EC7000516801313C0058A7000051600021216219 +:10EC8000A162E27DE16AFCF718FB2063201CF7F724 +:10EC9000E6FA201C00F0EFFD10BD947901000CB5E0 +:10ECA000021C081C0021019100926A4601A900F093 +:10ECB00002F80CBD00003C0094A7000070B513687A +:10ECC000002B1ED000260B68002B02D113681B6896 +:10ECD0000B6013681C681B89E51808E05C781C1938 +:10ECE00002340C601C78844201D1181C70BD0B6882 +:10ECF000AB42F3D31368DB683C00D0A7000013607D +:10ED00000E601368002BE1D1002070BD000070B5CB +:10ED1000031C20D018681E89051C16E00478DD2C21 +:10ED200010D18478002C0DD1C478502C0AD10479EC +:10ED3000F22C07D144798C4204D13C000CA800008D +:10ED400002290CD18479944209D0447820180230E9 +:10ED5000441BB442E5DBDB68002BDED1002070BD34 +:10ED6000044980B50A780A20002A00D0486A00F0D9 +:10ED7000D1F880BD1C750100B0B5174C3C0048A807 +:10ED800000002068002829D0164DE869002825D108 +:10ED900001F03FFA002821D1FFF741FC00281DD1E6 +:10EDA0002068A969401808F0D6F9002816D002F0AA +:10EDB00006FD2168401808F0CEF900280ED03C006E +:10EDC00084A800000120E86100222521802008F0AD +:10EDD0008FFF0648296A04F083FD0121286A00F0AC +:10EDE00089FFB0BDE85901001C75010034630100C2 +:10EDF00070B5051C0024FAF70BFF184E716A401815 +:10EE00003C00C0A8000000F08EF800280BD104F0F0 +:10EE1000FEFB0021252008F0B0FE0322291C281C3F +:10EE200000F0AFF818E0706A441E00F07CF800288B +:10EE300012D10C48316A04F056FD0121306A00F00D +:10EE40005CFF3C00FCA800000020FAF70DFE06F075 +:10EE500003F8002300222520054908F03FFF201C6D +:10EE600007F0FCFA70BD00001C750100346301005E +:10EE70001027000080B5012807D080280DD100227E +:10EE8000002108483C0038A90000F8F79AFE80BD30 +:10EE9000012902D106490020C86104F0BEFB80BDF3 +:10EEA00005212520F6F7A7FC80BD61A900001C758F +:10EEB00001000021002880B501D1034841680122EA +:10EEC000252008F02CFE3C0074A9000080BD000045 +:10EED000E85901000249C8680138486270470000DB +:10EEE0001C75010038B5031C081C191C114B06D0F9 +:10EEF000012111800A1C191CF5F7AAFD17E00D4D20 +:10EF0000011C2C781288181C3C00B0A90000F5F7F1 +:10EF1000A2FD287884420DD000236B61002803D025 +:10EF2000002007F0A4FA05E0002200210020009252 +:10EF3000F8F723FC012038BD00001C75010070B5F6 +:10EF4000041C012608F0E1F9051C3C00ECA90000B6 +:10EF50000020FAF78BFD444302F040FC02F03EFC37 +:10EF6000011C231C0022281C08F07CFA002813D165 +:10EF70000A48231C00228169281C08F073FA002823 +:10EF80000AD1F8F719FC011C231C00223C0028AA16 +:10EF90000000281C08F069FA002800D10026301C67 +:10EFA00070BD1C75010070B50D1C041C161C07F00B +:10EFB00076F900280DD0FAF752FE002809D0FF306C +:10EFC00001304368002B04D0221C291C301C3C005B +:10EFD00064AA0000F5F7BBFC70BD000080B50121FC +:10EFE0001D2008F0DFFD074A0748116901605169DB +:10EFF00041600649496881600021C16003F074FCEA +:10F0000080BD00002861010048750100905C01008E +:10F010003C00A0AA000070B5041C406B002835D04D +:10F020001D4D00262878002824D04120005D0028AE +:10F0300003D108F076F9A8611BE0696901316961C3 +:10F04000A868002808D0814206D12069011C10312F +:10F0500004303C00DCAA00008222FFF7ADFF6868A4 +:10F0600000280AD06969814207D12069011C10314A +:10F0700004300222FFF7A0FF6E6168780521084086 +:10F0800008D0074800780E2803D36034E079FBF7F6 +:10F09000CFFF70BD3C0018AB00000348066070BD98 +:10F0A00000001C75010010670100D47E0100800281 +:10F0B0007047142330B5094D4B435B195B68082436 +:10F0C000002B00D1022438235A43054B8900D21863 +:10F0D000515A026809193C0054AB0000511A0160F2 +:10F0E00030BD0000744001008C410100F8B5071CE0 +:10F0F0002C48141C2C4A484386468018800D8446B0 +:10F100002B482A4A06261D1C48434A430E2F40D24C +:10F1100001A3DB5D5B009F443C0090AB0000060850 +:10F120000A0F14181D202724272B2F31C8001FE099 +:10F1300088001DE0214970464018000D18E01F4A64 +:10F140008018800D401821E01E481018000D1DE0A9 +:10F150001D4970464018400D0AE03C00CCAB000051 +:10F160001B49401801E01B481018400D11E01A49D6 +:10F17000401805E060462080002016E0174810186F +:10F18000800D06E0164902E016484843164940182B +:10F19000C00D03308008800020802E803C0008AC29 +:10F1A0000000F8BDFF21FF20F6F749FB002020807A +:10F1B0002880F6E70000D1451700FFFF3F00E33845 +:10F1C0000E0055551500FFFF0F00A9AA2A01701C5B +:10F1D0003700FFFF1F00CBCC4C00701C47003C00E9 +:10F1E00044AC0000A9AA7A00701C6700A9AABA0062 +:10F1F00084F61200EC25B4000449002801D009224D +:10F2000000E014224A80486070470000A4690100B1 +:10F2100080B50622F5F740FC80BD0000BCB5151C8A +:10F220003C0080AC0000041C04310904090C01AA54 +:10F230006B46FFF76AFF3820064968434018A10073 +:10F24000405A00AB99884018198840180004000CF7 +:10F25000BCBD8C410100BCB5041C151C01AA6B4649 +:10F26000FFF73C00BCAC000053FF38200549684361 +:10F270004018A100405A00AB998840180004000CC7 +:10F28000BCBD00008C41010080B500280FD00029D2 +:10F290000DD002780B789A4209D1FF2A05D0427826 +:10F2A0000232F5F73C00F8AC000081FB002801D1E8 +:10F2B000012080BD002080BD000080B506220449E9 +:10F2C000F5F775FB002801D1012080BD002080BD2D +:10F2D00000005E400100011C49780120002900D097 +:10F2E0000020704700003C0034AD000080B50622CD +:10F2F000F5F760FB002801D1012080BD002080BD12 +:10F3000080B5FFF7C7FF80BD80B506220449F5F739 +:10F3100051FB002801D1012080BD002080BD0000EC +:10F3200012610100011C80203C0070AD000081438F +:10F330008A080E201C2A10B506D2034C5200A35C8A +:10F340008B4201D11019407810BDFC4101001423FB +:10F350000249584340184068704774400100202219 +:10F36000011C80B50248F5F752FD3C00ACAD000031 +:10F3700080BD0000486101000806000E022801D18E +:10F38000002070470120704700290CD00749096808 +:10F39000002908D01423064958434018C0680028A3 +:10F3A00001D0012070470020704700003C00E8AD0C +:10F3B0000000AC6901007440010010B5041C062275 +:10F3C000011C0448F5F77DFB0622211C0348F5F7D4 +:10F3D00078FB10BD00001261010040800700002989 +:10F3E00001D10020704738235A43074BD2183C0004 +:10F3F00024AE00008300D25A14235843054BC01892 +:10F4000040881018081A0A380004000C70470000E1 +:10F410008C41010074400100F8B5071C081C161C43 +:10F420001C1C191C00F05AF8051C1435221C311C38 +:10F430003C0060AE0000381CFFF70BFF28180004EA +:10F44000000CF8BD000000B500F04BF80A300004D5 +:10F45000000C00BD0000F8B5071C081C161C1C1C85 +:10F46000191C00F03EF845001E35221C311C381CCA +:10F47000FFF73C009CAE0000EFFE28180004000CD3 +:10F48000F8BD0000FFB50F1C81B00AA9141C1E1C9A +:10F4900003C900F029F8051C1E35211C301C00F0A2 +:10F4A00023F82D18221C391C0198FFF7D5FE2818C7 +:10F4B0000004000C3C00D8AE000005B0F0BD0A49C5 +:10F4C00080B50988092904D0142907D101018000D9 +:10F4D00000E0C10008180004000C80BDFF21FF20DF +:10F4E000F6F7D1F9002080BD0000A669010038239D +:10F4F0005943064A14233C0014AF000089188200C7 +:10F50000895A054A58438018408808180004000C9E +:10F51000704700008C41010074400100024803491B +:10F5200000684000085A7047A86901005440010073 +:10F530000A20704710B5041C3C0050AF0000FDF7D6 +:10F5400062FF201C10BDB0B5041CC0680568A01D7A +:10F55000FFF7F5FE002818D0211C1431201C08F0FC +:10F56000E2FD002811D0298809482022818269887B +:10F570000183A98806354183C5613C008CAF00003A +:10F580003021095D1154616B41620120F7F728F8C1 +:10F59000201CB0BD707C010070B5041CC068211C2B +:10F5A00014310568201C08F0C1FD002808D0054E64 +:10F5B000F06802F0CFFD2888F08203203C00C8AF3D +:10F5C0000000F7F710F8201C70BD707C01003EB5FC +:10F5D000041CC0680568A01DFFF7B7FE002821D0F5 +:10F5E000211C1431201C02AA08F077FD002819D034 +:10F5F00002984B21095C002910D0012914D03C004D +:10F6000004B0000002290CD129880D2000AB18801D +:10F61000201C03F051F80190684602F05DFAF6F7FD +:10F62000B5F80021029806F09FFE201C3EBD07F0B1 +:10F6300029F8029800218069C207D20F0420F6F74A +:10F640003C0040B000007FFFEEE710B5041CFDF762 +:10F65000E6FE201C10BD3EB5051C00F040FE002853 +:10F6600015D1281C1430FAF7CEFB00280FD0052145 +:10F670002869FFF786FB041C09D00522211C684677 +:10F68000F5F73C007CB000003DFA05340294684672 +:10F6900003F01AFB2A1C0D218F2008F08FFB00209D +:10F6A0003EBD000010B5041CFAF798F8201C05F0C8 +:10F6B000E5F8201C10BD0000B0B5041C0069002155 +:10F6C00094B0FFF73C00B8B0000061FB6946FBF75F +:10F6D00026F800281ED00098FAF729FA011C01A884 +:10F6E00002F0D7F90098FAF7D2F90490052009AD95 +:10F6F000687202A8211C06220230F5F706FA0120E2 +:10F700000890216A0A903C00F4B00000282009917A +:10F71000005D287201A800F069F8201C14B0B0BD8B +:10F72000FFB5161C1F1C81B00A9D4C20F6F790FBFC +:10F73000041C143006220299F5F7EAF9201C06226F +:10F740000199F5F7E5F928203C0030B100000021CF +:10F750000655E1602762002D01D08E2000E08D204B +:10F76000221C0D2108F033FB05B0F0BD0000B0B540 +:10F77000051C4C20F6F76FFB041C4C22291CF5F7E6 +:10F7800026FA2920405D0D282CD23C006CB10000E7 +:10F7900001A31B5C5B009F44281A281E060A282828 +:10F7A0000E2822121600221C0D218C201AE0221C89 +:10F7B0000D21832016E0221C0D21842012E0221C42 +:10F7C0000D2185200EE0221C0D2186203C00A8B1D1 +:10F7D00000000AE0221C0D21872006E0221C0D21DA +:10F7E000892002E0221C0D218B2008F0F6FAB0BD22 +:10F7F000E868F6F7E6F9201CF6F711FBB0BDFEB598 +:10F80000051C9020F6F72DFB041C9021F5F73C0019 +:10F81000E4B100005BF9374E0127F069042803D9F1 +:10F82000706B013070634DE03348B16B04F0D0F879 +:10F8300001202062A87E211C803102910870221CC8 +:10F840006032019200202F1C20379072787A2B1C96 +:10F850003C0020B200001433D072E868AA1DA060FA +:10F86000E86B48604420405D0872291C201C05F0AC +:10F87000AAFC686A00280AD1019A201C937A02998E +:10F88000221C703258300978FAF7DBF906E03A7A30 +:10F89000231C3C005CB20000E869296A7033FDF764 +:10F8A0008DF93020405D184907280BD15820005DA4 +:10F8B000C007C0170130E06100202061201CF7F76D +:10F8C0003FFF18E00122201C05F0ACFF071C12D0FE +:10F8D00003F006FF3C0098B20000F36D002B06D049 +:10F8E00060682030827B616B381CF5F799F8E86816 +:10F8F000F6F773F9201CF6F79EFAFEBDF0690130A9 +:10F90000F061FAE70000C4690100346301000531C9 +:10F91000000070B5061C3C00D4B200000D1C0904A8 +:10F92000090C0020F6F77CF9041C2A1C311C006825 +:10F93000F5F706F9201C70BD4088704703781B0757 +:10F940009B0F0B70007800091070704704307047EF +:10F9500004307047D42101703C0010B30000002136 +:10F96000417070470000C421017000214170704750 +:10F970000000B4210170002141707047000001496E +:10F98000486570470000C469010001490865704777 +:10F990000000C4690100014988653C004CB30000C7 +:10F9A00070470000C4690100F8B55F4F051CB868D6 +:10F9B0000130B86007F024FD38619020F6F766FA50 +:10F9C000041C9021F5F794F8286B271C6063688B62 +:10F9D0008037261CC007C00F2062688B3C0088B3AC +:10F9E0000000603602214007C00F2063688B80074B +:10F9F000C00FF860287F3870B172002808D1F9F77D +:10FA0000C8FF002802D00120606201E00120A0624E +:10FA1000F868002803D00021022006F0CCFF3C004B +:10FA2000C4B300002B1C1033AA1D291C201C05F098 +:10FA3000DFFBA86A00280CD13978022907D0221CE4 +:10FA40007032201C5830B37AFAF710F908E001261A +:10FA50005EE0AA7D231C286A696A7033FDF7C0F84E +:10FA60003C0000B40000E96800200989002900D1A9 +:10FA70000420F0723878012814D10027009000206B +:10FA800006E02969012903D1A969012789071AD547 +:10FA900006F079FC0028F4D1012F14D10098012838 +:10FAA00011D13C003CB4000008E0201C583006F0A6 +:10FAB000E1FC00280AD08069800707D5F07A082188 +:10FAC0000843F0720120E062E87D3073E868A060CE +:10FAD000E06A002812D01A4FF86B00280ED0307B55 +:10FAE000F5F7DEFE3C0078B40000002809D0211CA8 +:10FAF000381C4030FCF755FC1448B96B03F089FF03 +:10FB0000F8BD104F1248B96B03F083FF0022201C90 +:10FB1000104905F0A2FE061C03D1386A0130386294 +:10FB2000EEE7201CF6F73C00B4B400009FF9E8684B +:10FB3000F6F76EF803F0F2FD0448836D002BE2D077 +:10FB40000022301C296BF4F786FFDCE7C469010052 +:10FB5000C4600100346301001130000010B50A20B8 +:10FB600007F0FEFC07F05EFC3C00F0B400000B491F +:10FB700044180CE0201C07F090FB002807D0F7F792 +:10FB800034F9002803D012218620F5F7CAFEF7F7D2 +:10FB90002CF90028EED101F080FD10BD0000409C42 +:10FBA000000010B50C1C011C174A3C002CB50000CD +:10FBB0000129506904D080291DD0812921D11CE060 +:10FBC0009178012915D102219170141C011C104853 +:10FBD00003F028FF0121606900F02EF9606901F04F +:10FBE0005FFC2070A088A16900230A4A3C0068B528 +:10FBF000000007F07EFC10BD222106E001F01DFC94 +:10FC0000201C00F04AF810BD1C212020F5F78FFEC3 +:10FC100010BDB4790100346301003D2E000070B5C1 +:10FC20001C4CA078002832D0052830D060693C00F8 +:10FC3000A4B5000000F0EAF8184EB579A0780128C4 +:10FC40000BD002280ED0032810D0042817D1421F51 +:10FC50008021202008F008F80EE00021202008F084 +:10FC600031F80CE0A08807F01DFC05E0207800F0DA +:10FC70003C00E0B5000039FA002000F0C4FD6069E6 +:10FC800001F0E1FB0520A070B571606900F061F939 +:10FC900000222021812008F0D6F870BD0000B47940 +:10FCA000010020100700B0B50D4D041CA8780028F5 +:10FCB00014D03C001CB60000686900F00BF90A483B +:10FCC000696903F0A7FEA88807F09EFB002C02D00C +:10FCD000687800F079FF0020A870A968201CF4F76C +:10FCE000CAFEB0BDB479010034630100064B80B593 +:10FCF000997803293C0058B6000006D10421997078 +:10FD00002021021C802008F0A4F880BD0000B479F6 +:10FD1000010010B50C4CA17803290FD11030FAF76F +:10FD2000DEF8002809D0207800F0E5F9002000F086 +:10FD300070FD002105483C0094B60000FCF79CFAD9 +:10FD400010BD1B212020F5F701FE10BDB479010084 +:10FD500051B60000094980B58978032909D100F01E +:10FD6000CDF9002000F058FD01210548FCF784FA88 +:10FD700080BD17212020F5F73C00D0B60000E9FD3A +:10FD800080BDB479010051B6000070B5104C1D1C47 +:10FD9000A378061C0498002B18D10123A3702261BC +:10FDA000E6606170A060A561002007F0ACFAA08059 +:10FDB000301CF7F73CFBE08007F03C000CB700007C +:10FDC0004FFBC721C900281A411A0022202007F042 +:10FDD00057FF70BDB4790100B0B5041C0D1C00F0D4 +:10FDE00009F8201C00F024F8002D01D0FFF7D4FE04 +:10FDF000B0BD0000B0B50C4C051CA0683C0048B775 +:10FE0000000000280FD10A48017E022211406160E3 +:10FE1000017E11430176072003F049FC206003F0C6 +:10FE200098FF03F0EEFFA0682843A060B0BD407CBF +:10FE300001000C8007000A4938B50A1C20323C003A +:10FE400084B70000947900AB1C70D279074C5A70CB +:10FE5000E268002A02D1064D01236B701043E06076 +:10FE600000AB1888C88438BD00100700407C010032 +:10FE700000500700B0B5051C002901D000F028F89B +:10FE80003C00C0B70000064C60782169084303D1EC +:10FE900001210E2006F0C5FD206928432061B0BD78 +:10FEA000000018630100B0B50A4C051C226900204F +:10FEB000002A0CD1002900D004E06078002802D18B +:10FEC00004F03C00FCB7000069FB6070281C06F0E1 +:10FED000EFFC0120B0BD00001863010010B5084C14 +:10FEE000607800280AD006F0E3FC002060702069EA +:10FEF000002803D001210E2006F096FD10BD000061 +:10FF0000186301003C0038B80000094980B50B694E +:10FF1000834204D14A78002A01D1012200E0002264 +:10FF200083430B61002A03D000210E2006F07FFDE1 +:10FF300080BD1863010080B50120F6F756FE80BD34 +:10FF4000000010B5041C3C0074B8000000F004F878 +:10FF5000201C00F01FF810BDB0B50C4D041CA868A3 +:10FF6000A0420FD10720296808F08CFB68680222A4 +:10FF700007490028087E01D0104300E0904308762E +:10FF800004F0C4F8A868A0433C00B0B80000A86022 +:10FF9000B0BD407C01000C8007000A4938B50A1C3E +:10FFA0002032947900AB1C70D279074C5A70E26809 +:10FFB000824202D1064D00236B708243E26000ABA7 +:10FFC0001888C88438BD001007003C00ECB8000059 +:10FFD000407C010000500700B0B5051C0A4C002110 +:10FFE0006069FFF711FF042001F046F901F088FB7A +:10FFF00000220421042001F08BF8281C01F04AFAA9 +:02000004800179 +:100000006069FFF7A7FFB0BD407C01003C0028B944 +:10001000000080B501F077FA80BDB0B50D4D01212B +:100020002869FFF7F4FEFFF72AFE00F02CFB00F032 +:1000300084FA002400220421201C01F06CF8013411 +:100040002406240E042CF5D32869FFF786FF3C0014 +:1000500064B90000B0BD0000407C0100F8B5051C8B +:100060000E1C074C171C01212069FFF7D3FE3A1C18 +:10007000311C281C01F052F82069FFF771FFF8BD10 +:10008000407C0100FFB589B0061C16981D1C002895 +:100090003C00A0B9000001D02948149028680088CD +:1000A0000006800E202801D0142817D10AAA18248F +:1000B000182105CAFFF777F9071C281C0189A142FE +:1000C00002DD006801190BE0C068641A0028F5D150 +:1000D0000F213C00DCB900008620F5F761FC00210F +:1000E00001E00021002718480890807907900C2033 +:1000F000164A704380180479049112991598149A3D +:1001000001910390059700950AAB0292211C301CC7 +:100110000CCBF7F73C0018BA000003F90125B540F5 +:100120000C4E083E3078284006D0201C00F0C9FD57 +:100130003078A843307003E0201C139900F043FF8F +:1001400007A903C988710DB0F0BD952400002010E7 +:100150000700747A01003C0054BA0000B0B5041CDA +:100160000C230949584340180079051C00F092FE01 +:10017000281CF7F7C7F80120034AA040083A117875 +:1001800081431170B0BD0000747A010010B5054CB8 +:100190002078002803D11A213C0090BA0000862064 +:1001A000F5F707FC207810BD000018630100014836 +:1001B0004078704700002C63010080B5F6F7D1FE4F +:1001C00000F01BF980BDFEB50168051C0C680E1C13 +:1001D0002178880771D16869C2073C00CCBA000059 +:1001E0006ED580076DD5E87AC20708070909029124 +:1001F0004549800FD20F00284F6805D0012809D04B +:10020000022821D003285BD1FF23201CA97AF4F710 +:1002100074FC55E002980B280AD00C283C0008BB5F +:1002200000000FD00D284ED1394FF868F4F761FC6B +:100230000020C0435AE0354FA97ABB68201CF4F770 +:100240005BFC40E0324F3869F4F753FC3BE000219F +:10025000019102990020FF23090701D401203C00ED +:1002600044BB000013E03189192901D3267E07E041 +:10027000152904D31826711A49190E7B00E00026AF +:10028000B10602D4012073075B0F01210191002800 +:1002900003D0A97A201CF4F736FC0199012915D165 +:1002A0003C0080BB0000F006C60F20881B4FE48A8C +:1002B000F96B0005C00F00291AD04B1C18D0002E76 +:1002C0000AD0002808D03888844213D002980C281D +:1002D00001E01DE012E00DD0081C01F076F90028C5 +:1002E00003D13C00BCBB000000F0A6FAF4F70AFC06 +:1002F0000020C043F863002E0DD03C800020F8633E +:1003000009E020880006800E202804D1044F201C1C +:10031000B96AF4F7F8FB291C0248FBF7EFFFFEBDB2 +:10032000287A01003C00F8BB0000A59A00000348B1 +:1003300080B50078002100F0FCFB80BD0000186350 +:100340000100044B054900281A6800D0011C101C4C +:10035000196070470000D4790100957500000548C8 +:1003600080B5007F24233C0034BC0000044958437E +:100370004018C069F4F7CCFB80BD0000D4790100BF +:1003800094460100021C064880B581628260007FAD +:1003900024230449584340188069F4F7B9FB80BD11 +:1003A000D4790100944601003C0070BC000080B587 +:1003B000002000F03CFB002000F06DFA00F065FA30 +:1003C0000449C86A0130C862081F008807F0C1F8F4 +:1003D00080BDD4790100064880B500210177C16A4B +:1003E0000131C1620438008807F03C00ACBC000059 +:1003F000B3F803F0D1F980BDD479010080B505F0E0 +:10040000E9FA80BD80B5002803D1012004F022FA6A +:1004100080BD012003F0E6FB80BD00000349012000 +:100420004978002900D00020704700003C00E8BC5B +:1004300000002C63010070B5134D2878002820D1EE +:1004400001212E1C7068FFF712FD0021072006F025 +:100450002AFB0D480024047104F0EDF806F0D5F9EC +:10046000012028700A4804604460F6F74CFD3C0007 +:1004700024BD0000F7F75EF8FFF7A2FF00F0A8FD2B +:100480000548716803F020FB012070BD2C6301005A +:100490005000070080000700C4600100B0B51E4C8A +:1004A0002078012835D1251C69681C4803F020FB01 +:1004B0003C0060BD000004F0F0F81A4801684908EB +:1004C00049000160016801221143016000F02BFE28 +:1004D00000F01BFC06F099F8F6F729FEF6F72DFC64 +:1004E00000202070FFF783FF00F08BFD0F4881781C +:1004F00008223C009CBD000091438170817811432B +:1005000081700C49102008716868FFF75FFDF7F7EC +:1005100039F8F6F74DFD0121072006F0CDFA01204C +:10052000B0BD00002C630100C4600100F0000700B2 +:10053000000007003C00D8BD000050000700034940 +:100540000120897A012900D0002070470000147A28 +:100550000100B0B5154D041C287A002820D1F9F708 +:1005600000FC02281CD101202872E868002810D065 +:100570002068296808603C0014BE000069680D48C6 +:1005800003F0C2FA01216868FFF7C8FC00222420AA +:10059000616807F0CFFBB0BD002028722168012000 +:1005A000F4F7CFFAB0BD00202168F4F7CAFAB0BD65 +:1005B000047A0100346301003C0050BE000004488E +:1005C00080B5007A012802D1002002F0F0FE80BD43 +:1005D0000000047A010080B5012807D0802809D1E5 +:1005E0000748007A002804D0012000E0002002F033 +:1005F000DEFE80BD0E212420F5F73C008CBE0000FD +:100600000BFA80BD047A0100F8B53A4E051CB07AA9 +:10061000002869D1F9F7AEFB022865D13648006899 +:10062000002861D03548716803F074FA01217068C0 +:10063000FFF77AFC6C20F5F7B9FC041C3C00C8BE3F +:1006400000006C21F4F7E7FA30682C220460296876 +:1006500081606968C160002111548162A968002924 +:1006600002D0E968016105E006F05DFF69684018A5 +:10067000316808617068FFF714FD692108553C0076 +:1006800004BF00000020F9F709FB01273B1C061CF2 +:10069000221C24320021F9F779FB1C480321008831 +:1006A00089030843211C40310091488318481021D8 +:1006B00060601848A060A76367630020F5F74CFBF3 +:1006C0003C0040BF0000E06002890099CA830768CF +:1006D000311C381D2761FEF78EFE381C0A300F4989 +:1006E000FEF789FEA4203880002004F0DEFB002203 +:1006F0001F20696807F02DFBF8BDFFE7002029687F +:10070000F4F73C007CBF00002EFAF8E7147A0100F1 +:10071000805A010034630100FA60010099EC000086 +:1007200015ED000012610100064880B5817A0029AC +:1007300007D0006804222030017B1143017302F0CE +:100740006BFD80BD3C00B8BF0000147A010010B5FD +:10075000044CA07A012803D106F0F1FE21688861DB +:1007600010BD147A0100031C081C1F4970B50A68EB +:10077000012B1CD0802B05D0832B30D1887A002808 +:1007800014D029E053693C00F4BF0000002B0ED0C8 +:100790009469D5692E1B0C695D1B361BB610A41914 +:1007A0000C61CC682D1BAD106419CC60936102F014 +:1007B00081FD70BD022812D1906A0C1C0028F8D06F +:1007C00007F00EFAA07A01283C0030C00000F3D1F7 +:1007D0002068816A0029EFD12030017B0822114373 +:1007E000017370BD02F021FD70BD0E211F20F5F7D1 +:1007F00028F970BD0000147A010002490C3103C9C8 +:10080000401870470000147A01003C006CC00000E2 +:10081000054880B5006804222030017B1143017334 +:1008200007F0E4F980BD0000147A010070B5164CA1 +:100830000E1CA17A00291CD02168086107F032FA49 +:10084000002817D020680025056200223C00A8C0BF +:10085000000083211F2007F094FA6068FFF703FC73 +:10086000216804222031087B2B1C90430873311C23 +:1008700000221F2007F061FB70BD20680822203095 +:10088000017B1143017302F0D6FC70BD00003C00F7 +:10089000E4C00000147A010080B500F077FC00F09D +:1008A0006FFC00F029FF00F05DFA00F0C5F800F0E1 +:1008B00085FF80BD80B5FAF785FA80BD0148C06824 +:1008C00070470000287A01000349002800D0011C6D +:1008D0003C0020C100000248C160704700008175E3 +:1008E0000000287A010001480249C86070478175FC +:1008F0000000287A01000149886170470000287AC9 +:1009000001000149002088617047287A01000349ED +:1009100000283C005CC1000000D0011C0248C161FD +:100920007047000089750000287A010003490028FB +:1009300000D0011C02488162704700008D750000E4 +:10094000287A01000349002800D0011C02480162F6 +:10095000704700003C0098C1000091750000287AA3 +:1009600001000349002800D0011C024801617047C2 +:10097000000099750000287A0100014802490861C9 +:10098000704781750000287A0100021C081C802A2B +:1009900080B502D100F03C00D4C1000007F880BD52 +:1009A0001E212120F5F762F880BD0000B0B5104D82 +:1009B000041CA86B0130A863696B091A281C006B22 +:1009C0000C2903D90021FFF791FA03E0082901D18E +:1009D000FFF732FB201C00F03C0010C200004DF974 +:1009E0006069400701D503F00CFC201CE96AF4F7AC +:1009F000DBF8B0BD0000287A01000349002800D0D0 +:100A0000011C0248416270470000B5750000287A59 +:100A1000010003490120096C00293C004CC2000080 +:100A200000D1002070470000287A010010B5074C63 +:100A3000E16B002901D1E06304E0814202D0002093 +:100A4000C043F8E706F09CFD206410BD287A010041 +:100A50000148006C70470000287A01003C0088C201 +:100A60000000054980B5002048638863FF210931F3 +:100A700015221020F6F7FBF980BD287A0100034902 +:100A8000002800D0011C0248816070470000C17539 +:100A90000000287A01000349002800D0011C3C0016 +:100AA000C4C200000248C16270470000C575000062 +:100AB000287A0100044B054900285A6800D0011C1F +:100AC000101C596070470000287A0100C9750000A9 +:100AD0000349002800D0011C024841617047000012 +:100AE0003C0000C30000CD750000287A01000F4BC8 +:100AF00010B5D968002919D00E4C0021CA0012196E +:100B0000403AD26B824202DA01310329F6D3481C03 +:100B10001A780006000E904208D018700806000EE1 +:100B2000041C3C003CC30000F6F7BAFA201C03F09A +:100B30001BFD10BD186301003C42010010B5144CB0 +:100B4000E168002922D02178124BCA00D218403A1D +:100B5000D36B834202DA481C20700BE0926B824216 +:100B600014DDFF313C0078C300000806000E207041 +:100B700003D119218620F4F78EFF2078FF3000067C +:100B8000000EF6F790FA2078FF300006000E03F012 +:100B9000EEFC10BD0000186301003C420100094852 +:100BA0000021018141813C00B4C300008181C181E9 +:100BB000074A02800123DB0243808280C2804176A3 +:100BC00031218176012101767047000030800700D5 +:100BD000FFFF000080B50120F6F7F8F80120F6F7D6 +:100BE000DBFC0120F6F75AFA3C00F0C300000120BC +:100BF00000F0F1FD0120F7F7C6FB80BD000010B545 +:100C0000114C002907D1002802D10120E06006E044 +:100C10000021E16003E0012907D1002801D0207004 +:100C200003E018218620F4F73CFF3C002CC40000B0 +:100C30002078FF300006000EF6F73EFA2078FF30ED +:100C40000006000E03F09CFC10BD000018630100BC +:100C5000054980B50968884205D0FEF7FFFB00F022 +:100C600087FAFFF72BFC80BDA86901003C0068C42F +:100C7000000001494870704700002C6301000149E1 +:100C8000C860704700004C7B0100034901200978CF +:100C9000002900D00020704700002C630100044AA6 +:100CA000002802D0906901309061D06940183C0062 +:100CB000A4C40000D0617047905C0100FEB5041C24 +:100CC00000680568281CFEF727FF071C6069154EA1 +:100CD000C007C00F21D001AA02A9281CFEF712FFED +:100CE0003878C0070CD46069800708D500AB187A43 +:100CF0003C00E0C40000002801D0022802D1706A44 +:100D000001307062FEBD00AB187A002801D00228C5 +:100D1000F8D1706A01307062B06A0130B062F1E7F8 +:100D2000F06A0130F062EDE70000905C01000249DA +:100D300048693C001CC50000013048617047000054 +:100D4000905C01007047000070470000011C4031BA +:100D500010B50A8B1207920F012A33D04A781A492C +:100D6000041C6034002A0B6A22D1E279012A02D9DC +:100D7000CC6801343C0058C50000CC60022A02D97E +:100D80000C6901340C610C6801340C60446B002C5C +:100D900003D00469247CE40702D54C6801344C601C +:100DA000806B002802D0086B01300863002A0CD049 +:100DB0009818013808E03C0094C50000012A01D0D1 +:100DC000022A02D1886801308860E0791818086228 +:100DD00010BD0000905C01007047000001490A202E +:100DE00008817047C47A0100F0B5324F041C78784E +:100DF00085B0C007C00F03903C00D0C50000B87894 +:100E000002900120A0400490391C88702C48008872 +:100E100006F00BFC0190FEF7AEFC0430294EA50055 +:100E200071590979884206D0FEF7A5FC7159043042 +:100E3000087101207870002078703C000CC600001A +:100E400021480121204E3038015571590320087086 +:100E500006F0C6FB061CFEF791FC36180E3609E0BC +:100E6000301C06F0F5FA002804D023218620F4F780 +:100E700033FE03E0F6F734FB0028F1D03C0048C60F +:100E80000000124813493C3800780872201CF4F71F +:100E9000A2FA0E4E715908710398002801D0012161 +:100EA000797009480088019906F0BDFB0298B87076 +:100EB000094949790498884203D0242186203C00BE +:100EC00084C60000F4F70EFE05B0F0BD0050070028 +:100ED000D0790100107B010080800700508007005E +:100EE000B0B50D1C041C052801D3F4F729FE052D0F +:100EF00001D3F4F725FE0B4AA8001158A0001058A2 +:100F00003C00C0C600000EC90EC0062106220648DD +:100F100069432A380918624310180622F3F70FFFB5 +:100F200002483038415D0155B0BD107B0100B0B5BD +:100F3000041C0E480D1C80780121A140084003D0FC +:100F400001213C00FCC600008620F4F7D1FD0621FB +:100F50000622094869430918624310180622F3F76C +:100F6000F1FE201CF4F740FA034AA1002A3251583E +:100F70000871B0BD00500700E67A0100034980B552 +:100F8000002048603C0038C7000007F032F980BDFF +:100F90000000D47A010010B5041C052801D3F4F731 +:100FA000D8FD0749087A074A107001200872FEF739 +:100FB000F4FB044A0430A1003C325158087110BDC2 +:100FC0000000808007003C0074C70000D47A010054 +:100FD000034980B50120486007F00EF980BD00008C +:100FE000D47A010010B5041C052801D3F4F7B4FD30 +:100FF000201CF5F78FFE0021201CFBF731FD01219D +:10100000002800D0011C09043C00B0C70000090CF6 +:10101000201C04F022FA10BD000006490120054BF7 +:10102000886000203C33002182009A581170013002 +:101030000528F9DB7047D47A01000F4938B5002044 +:1010400088600E48011C20318A793C00ECC7000002 +:1010500000AB1A70C9790A4C094D59700C343C35F3 +:1010600000210322635C002B02D08B00EB581A7026 +:1010700001310529F6DB00AB1988C18438BD0000B9 +:10108000D47A010000100700FFB5144F3C0028C8B7 +:101090000000041CBE790D1C81B00F2000F0B9F8CF +:1010A0002A1C104D0090211C281CF4F7DEFC211C8A +:1010B000A81D039AF4F7D9FC211C281C0C30049AB3 +:1010C000F4F7D3FC211C281C12300A9AF4F73C00D8 +:1010D00064C80000CDFC07F09BF8009800F076F89B +:1010E000BE7105B0F0BD000020100700E67A0100D7 +:1010F00010B50020F6F726F80749887800090001A6 +:1011000088700024201CF5F711FE01342406240EFB +:101110003C00A0C80000042CF7D310BD0000005014 +:10112000070080B502F0E3FB034881780F221143EA +:10113000817080BD000000500700F8B50D1C041C34 +:10114000052801D3F4F717FDA600002D114F07D194 +:10115000B8593C00DCC80000816800290ED14078F5 +:1011600000280BD002E0FF352D062D0E291C201C77 +:10117000FBF788FC011C201C04F07EF906490120C5 +:101180003039085504483C388068002802D1B959E4 +:10119000032008703C0018C90000F8BD0000107B57 +:1011A000010080B504F0CDF980BD10B5041C052800 +:1011B00001D3F4F7E6FC201CF5F7C1FD0020054A39 +:1011C000A10051588860044988780122A240104348 +:1011D000887010BD00003C0054C90000107B010065 +:1011E00000500700024A9178084390707047000051 +:1011F00000500700F8B50C4FBE790F2000F018F82A +:10120000051C0024201CF4F70DF9084AA1005158D0 +:10121000087101342406240E3C0090C90000042CFF +:10122000F3D3281CFFF7E1FFBE71F8BD00002010CA +:101230000700107B0100B0B508498D788A78054019 +:1012400082438A7006F0F9F9041C0A34201C06F067 +:1012500034F90028FAD0281CB0BD3C00CCC90000ED +:101260000050070001490A2008817047387B0100BF +:10127000F8B510480426041CE034051C383D00274E +:10128000201C1C30E460A06127610B48A682E0614D +:101290002762A7620620A084201CFEF73C0008CA33 +:1012A000000087FC201C0C30F6F7B7F90549383CE4 +:1012B000AC420880E7D1F8BD0000D4E4010012611F +:1012C0000100487B0100F7B5051C0C230F1C1249D7 +:1012D00058434418208806F0EAF9A07801283C0019 +:1012E00044CA00001AD16668022F05D15C20805BD9 +:1012F00002990009884211D1281CFEF7FBFF301C1F +:10130000F9F7FAFD0420A070391C281CFBF7F4F84B +:10131000034AE8003C32115801311150FEBD000073 +:101320003C0080CA0000607B01000120064A0021C9 +:101330000C234B439B189B78002B00D000200131DD +:101340000429F5DB7047607B010070B5041CFFF7D2 +:10135000EAFC002803D120210C20F4F7F6FB261C20 +:1013600060363C00BCCA00000021F171E164606B92 +:10137000251C4035002831D0FFF704F90122120363 +:1013800000282069018801D0914300E011430180C9 +:10139000206901220088D2022883201C583001884D +:1013A000914301803C00F8CA0000A36B5208002B57 +:1013B00010D091430180288B0007800F012815D0A1 +:1013C0002E20015D20690430F8F741FD616AFEF7C7 +:1013D000A8F904E011430180201CFBF7CCFB6883D3 +:1013E00004E0206941803C0034CB0000A88B2169D7 +:1013F000C882E068F6F720F93080606D002804D0DC +:1014000000220321707AFEF70DFF201C00F0B6F9D0 +:10141000707A06F045F870BDB0B5002406F022F9E8 +:10142000094A00210C234B433C0070CB00009D185F +:101430006B685B6CAD78C31A012D02D1A34200DD4D +:101440001C1C01310529F0D3201CB0BD0000607BBD +:101450000100B0B5041C06F0A8FE0C20084960434A +:101460004518288806F035F968683C00ACCB0000C8 +:10147000002806D02030007B012802D1201CFFF775 +:10148000A3FAB0BD607B0100FFB585B00FAE60CEA2 +:1014900038201E497043171C4418FFF77FF80122BB +:1014A0001203002803D02088904320803C00E8CB22 +:1014B000000002E02188114321801198391CE0626C +:1014C0000598F8F7D0FC011C2B1C381C069AFEF777 +:1014D00020F960800622201D0F49F3F772FC231CBF +:1014E0000898303318700E980C49587065633C00AA +:1014F00024CC0000002002900122049209480391AC +:101500005A780188019200911978243B301C626B53 +:10151000FEF7A8FE09B0F0BDD4E40100126101009D +:101520005D4E0000487B0100FFB587B0109812AFF8 +:101530003C0060CC00008C46A2CF4C23304C6B4367 +:101540001C19161C159A2785271C303706970597F6 +:1015500000233B73059F78731198271C60646160BA +:10156000226040373E70614661870798311CF8F76A +:1015700080FC3C009CCC00000599C8730A987870E8 +:10158000301CFEF773F8002801D0012000E0002095 +:10159000410002200140119A0120002A00D10020C0 +:1015A00008433872201C2E300799FDF7CFFF281C06 +:1015B00004F0AEF83C00D8CC0000FEF7FEFF4C2251 +:1015C000124B6A43D218012109032A32002804D0A1 +:1015D000101C12888A43028002E0108808431080A1 +:1015E0000B490020039106990290002204920848BA +:1015F0000A7B4188231C3C0014CD0000019200911D +:1016000079780833281C6268FEF738FE0BB0F0BD0D +:1016100058E30100754F00003C7C0100B0B50C1C84 +:10162000012827D0802830D1E06C002808D069201C +:10163000005D1849C00040183C0050CD0000043047 +:10164000016801310160201CFFF7E9FB134D503D9B +:10165000E868002805D02E20005DFEF710F802F0A3 +:1016600042FE201C6168F3F72FFB403460780028AD +:1016700002D106F012F8A860B0BD3C008CCD00008D +:101680002006000E8128FAD1220C2004000E02212F +:10169000FEF7E6FDB0BD0A210C20F4F77DFAB0BDDF +:1016A0009C7B0100F8B5184E184F051C3479B879A9 +:1016B0000090201CF5F77CFF002806D03C00C8CD28 +:1016C0000000124838384068854201D1002D03D10E +:1016D00010218620F4F763FA0D490020383948605C +:1016E0000421201CFFF759FC0421201CF5F7EBFE18 +:1016F0000C21064A6143303A89180C7104203C00E1 +:1017000004CE000030710098B8710F20FFF7A6FDDD +:10171000F8BD0000A47A010020100700F8B5041CF1 +:101720000F20FFF7C1FDF5F73BFF0125002800D092 +:101730000025164EB079164F00903879042801D153 +:101740003C0040CE0000002C03D111218620F4F78C +:101750002CFA1048290638384460090E0C1C042065 +:10176000FFF721FC0321201CFFF741FC211C042072 +:10177000F5F7AFFE0C21074A69430420303A891877 +:1017800008713C007CCE00003C710098B071201CB8 +:10179000FFF750FD0420F8BD20100700A47A0100D7 +:1017A0000C2302495843401880687047747A01003E +:1017B0006030C1798079814201D9012070470020D1 +:1017C000704700003C00B8CE0000014880687047B8 +:1017D00000004C7B010038B56921095C1823104AD0 +:1017E000594389188A6801328A604B69D21ACB68DA +:1017F000934200D2CA6000220B4C0260221C2032AD +:10180000957900AB1D703C00F4CE0000D2795A707F +:101810000A68002A01D1486000E0106000AB08604F +:101820001888E08438BD0000C47B01000010070068 +:1018300018230A495843411808690130086148686B +:10184000002809D0486901303C0030CF00004861D1 +:10185000486802684A60002A00D10A607047002088 +:101860007047C47B0100F8B5124E104D0F4C0A278B +:10187000211C0020E0602A31221C1832A160626124 +:1018800027820C4AE061A26160623C006CCF0000DC +:1018900006202084081CFEF7D7F9201C0830F5F735 +:1018A00001FF4C3CAC427080E5D1FF203070F8BDA8 +:1018B00088E401000CE301003C7C0100126101009E +:1018C000F8B5041C0B480E1C171C44703C00A8CF34 +:1018D000000005F000FF051C391C301CFDF7ABFFB4 +:1018E0000C21054A28180A30614308325050034839 +:1018F000891800688860F8BD00006C7A0100786E75 +:10190000010070B50B4E051C7078FF280FD03C000D +:10191000E4CF00000C23084C58430834205805F04D +:101920001DFE002806D170780C23584300198168E9 +:101930002943816070BD00006C7A010080B53021C0 +:101940000148F3F743FA80BDECE5010010B505F05E +:101950003C0020D00000C5FE0A4944180CE0201CC1 +:1019600005F0F7FD002807D0F5F751FE002803D059 +:1019700013218620F4F731F9F5F749FE0028EED15E +:1019800010BDB0360000FFB58BB0199B0D1C041CB8 +:101990001A203C005CD00000002B169900D11820C2 +:1019A00001901498002827D0FF20199B0130002BAC +:1019B00001D1182300E01A230433824204D3D01A41 +:1019C000400840000004000C0D906A480088C21ACC +:1019D0001204120C3C0098D000000492002908D098 +:1019E0008979664A4900515A049A511A0A04120C1C +:1019F0000492049A824205D90020049002E06048D3 +:101A000004900D9001980104090C0A910020F4F74C +:101A100084FA009000683C00D4D0000000260690B4 +:101A20002060002005900E9800240005000C09900D +:101A30001A980D9F4007400F089007940395002DBA +:101A40000DD02889B84204D836183F1A07D0ED685F +:101A5000F5E73904090C281C3C0010D10000F4F70C +:101A600038FBEFE7002E02D10799002971D1271C1E +:101A70006C20F4F788FB0799041C002920D10794F7 +:101A80000020A0611898271C606017982437A06078 +:101A90000698206115980FC80FC73C004CD1000074 +:101AA00014985C2160630998085319986921E063D0 +:101AB0001B9808551C9860651998002823D0089831 +:101AC000069908831FE06C22201C0799F3F71AFA85 +:101AD0003C60019862213018C85315983C0088D1A9 +:101AE00000004021807AC8550020B86306980A9902 +:101AF000F4F71FFAF8600299F4F73BF9201C403024 +:101B0000818B059A1207120F1143818303985E217E +:101B100002900198224A30180853126801213C00B3 +:101B2000C4D10000081C002A00D01B980006049AAB +:101B3000000E964203D92C2211551B4904E0159939 +:101B40002C22097A11551949085C662108551C9800 +:101B5000002801D01F200855002D03D0E86803900D +:101B60003C0000D20000002000E009E0E860059899 +:101B7000002601300004000C0D9F0590039D6DE7C9 +:101B80000098E0600299F4F7FAF800202060012143 +:101B9000A1636034608007980FB0F0BD000006615B +:101BA00001003C003CD200005C4301003809000009 +:101BB000186701000E6101000A6101000148006818 +:101BC00070470000C46A01000249091D03C940189A +:101BD00070470000C46901000148006970470000B7 +:101BE000C46901003C0078D2000001484069704798 +:101BF0000000C46901000148806970470000C469A1 +:101C0000010070B50D4E0020351C4035F0630DE02D +:101C1000A068F4F77AF9B36D002B04D000220120FC +:101C2000616BF3F795F83C00B4D20000201CF4F788 +:101C30009DFA281CFAF742FD041CECD170BD00008F +:101C4000C4690100F8B51A4F0026F86B00282CD0A3 +:101C5000381C403000901DE01648B96B02F05CF86B +:101C60000022201C144903F03C00F0D200007BFF4E +:101C7000051C04D1386A0130386201360DE0A068D5 +:101C8000F4F749F9BB6D002B04D00022281C616BCE +:101C9000F3F764F8201CF4F76CFA0098FAF711FDDA +:101CA000041CDCD10748B96B02F03C002CD30000C7 +:101CB00025F80020F863301CF8BD0000C46901005D +:101CC0003463010011300000C460010001490120AB +:101CD000C8637047C469010080B50020054A00212F +:101CE0001C2343439B1801300428D9663C0068D369 +:101CF0000000F8DBFCF7FDFC80BDC4690100014970 +:101D0000C86470470000C4690100014988647047D5 +:101D10000000C4690100B0B5041C0D1C211C028E1A +:101D2000806A4031F3F72FF8002816D102213C00D9 +:101D3000A4D30000201CF4F76FFAE269C000101869 +:101D4000828BAB889A4204D182692B689A4208D26E +:101D500001E09A4205D2002118300CCD0CC000E001 +:101D60000121081CB0BD0000F8B5061C002744681E +:101D70003C00E0D300000FE00949486A01304862A6 +:101D8000A069002802D0F4F700FAA761266225684E +:101D9000201CFFF752FB2C1C002CEDD1F8BDC469B0 +:101DA00001000330074A8108136850681B688900E6 +:101DB00009183C001CD400008B4201D3516000E0A4 +:101DC00000209060704700008C6E010070B5124ECC +:101DD0008038C50070590C1C002804D101210D2049 +:101DE000F3F72EFF0DE02069002805D1A81981889E +:101DF000E06801F03C0058D4000047FA20617159B6 +:101E0000201CF2F7BBFF041C002C07D0E068002860 +:101E100001D0F4F792F8201CF4F7BDF970BD5442DC +:101E2000010070B5041C0D1C0E490622F3F735F8AD +:101E30000026E66166623C0094D400000720302151 +:101E40000855E663281CF8F76BF8A076201C1430C0 +:101E50000622291CF3F724F80622291CA018F3F700 +:101E60001FF8266170BD00001261010080B5FDF70A +:101E700085FE80BD014948603C00D0D40000704719 +:101E80000000E4650100024980B54968F2F77CFF73 +:101E900080BDE465010080B5F4F7E5F9074907481E +:101EA0000EC90EC018380068002802D002F0B7FA38 +:101EB00080BD02F09EFA80BD00003C000CD5000001 +:101EC000B058010090730100054980B58968002071 +:101ED000002900D103200006000EFAF7E3FB80BDC5 +:101EE000606C010080B5034806220349F2F7DEFF6B +:101EF00080BD000040800700126101003C0048D511 +:101F00000000B0B5041C0C4D0B1C211C00200C3D26 +:101F10000029094C05D02878211C1080021C181CAF +:101F200007E011880E2907D80A06120E191C201C7A +:101F30002A70F2F7BEFF0120B0BDB06901003C007D +:101F400084D5000010B500200A4A012111600A4C16 +:101F50000AE0021C016A5032914205D061783C23AC +:101F6000594309190431016204F0BAFB0028F0D189 +:101F700010BD0000DC62010068610100044880B50A +:101F80003C00C0D500000068002803D0011C1020D0 +:101F900004F0C7FE80BD286101000322111F80B537 +:101FA0000020FBF776F980BD000080B50BF0B9FA90 +:101FB00080BDFFB583B0161C002101911F1C0821B4 +:101FC00002AA3C00FCD50000FAF70EFF041C2AD13F +:101FD00002984168490001D4092424E0FAF752FF2D +:101FE0003860029841684902CD0F291CFAF744FF76 +:101FF000011C306038680006000E00F01BF8002855 +:1020000001D10A243C0038D600000FE03168029864 +:102010002B1C01AAFAF7D7FF002806D00198002848 +:1020200004D004990968814200D2032401980499DC +:10203000086007B0201CF0BD000070B5051C0E1C28 +:10204000012400F084FF3C0074D60000002808D072 +:10205000032D01D0042D04D10320C003864200D3F8 +:102060000024201C70BD00007CB5151C061C0C1C37 +:10207000291C6A4601ABFFF7A5FF002802D1002CFE +:1020800001D103207CBD17483C00B0D6000000AB56 +:1020900006601879072821D202A31B5C5B009F44CD +:1020A00000001D040406101713000420EDE72A1C8D +:1020B000211C0120009BF2F781FE002812D106208E +:1020C000E3E72A68009905E000983C00ECD60000A0 +:1020D0004278811C01E02A686946201CF2F7FEFE66 +:1020E00003E004218720F3F7CFFD0020D0E70000B4 +:1020F000F86B0100F7B586B00E1C082105AA0698FA +:10210000FAF77EFE041C45D1059841683C0028D7AB +:10211000000002904902C90F002504950391089F11 +:10212000FAF7D5FE019002A903C9FAF7C6FE019994 +:10213000052914D202A35B5C5B009F4400000E03E0 +:10214000060C030087420ED807E087420BD83C00FC +:1021500064D700000125C01B049007E0874205D129 +:10216000012503E005218720F3F794FD002D01D11F +:10217000032415E005984168002969DA3A4A06996E +:102180001160FAF791FE071C05980399FAF786FE8D +:102190003C00A0D70000051C011C381CFFF75FFFA6 +:1021A000002801D10A245EE0072F57D202A3DB5D8D +:1021B0005B009F440000530404062E504800042492 +:1021C00051E00498002801D1002714E0089908186C +:1021D00000043C00DCD70000000CF4F72BF8071CCF +:1021E000311C089AF2F786FE089804993818F2F71D +:1021F0002FFE089804993E1C40180890311C0020BE +:1022000008AAF2F7ECFD002800D10524002F2DD0FC +:10221000381CF3F73C0018D80000EDFF29E00399C3 +:10222000002904D0059840688702BF0A00E0002713 +:10223000311C281C089AF2F760FE0499002903D08B +:1022400008982818F2F707FE002F12D0F2F7CCFDFD +:102250000FE0311CA81C3C0054D80000089AF2F78B +:102260004FFE0898687007E0FFE7072404E00824A1 +:1022700003218720F3F71AFD201C09B0F0BD0000F0 +:10228000F86B01009EB51C1C00AB19720092002275 +:1022900001946946FBF708FA3C0090D800009EBD07 +:1022A00000008FB5029200220090019003916946D0 +:1022B0000420FBF7FCF98FBD0000B0B50C1C012811 +:1022C0000AD0032819D004282CD1606801F035FC0D +:1022D000011C83200CCC22E01C203C00CCD8000048 +:1022E00014496043401814494518281CF8F746FC67 +:1022F000A968002903D0221C082005F071FEB0BD9A +:10230000208CC82801D3042004E0652801D30220D2 +:1023100000E001202084201C03F0DCFA3C0008D9F6 +:1023200000002268E368011C8220FFF7B4FFB0BD03 +:10233000A0210820F3F7C3FCB0BDDC71010064EEFE +:10234000FFFF0348044A81685161C068906170478B +:102350000000F4680100C07101000349044A3C0018 +:1023600044D90000086B90608868D0607047000016 +:10237000905C0100C071010000B5FFF7F1FFFFF7AD +:10238000E3FF00BDB0B50D1C002814D00B490C4C68 +:1023900088686269C968801AA269891A401804D0DD +:1023A0003C0080D9000064235943F2F7C4FE206149 +:1023B000FFF7CDFF206928600120B0BD0020B0BD2F +:1023C0000000F4680100C0710100B0B50D1C0028C8 +:1023D00017D00C490D4C086BA2688968801AE26816 +:1023E000891A3C00BCD90000401807D022889042CE +:1023F00004D964235943F2F7A1FE6060FFF7B6FFEA +:10240000606828600120B0BD0020B0BD905C010074 +:10241000C07101007CB51068002802D000F024F8DB +:102420007CBD0F483C00F8D90000C0698468E068B2 +:10243000256AA669F3F7E3FDE169F3F706FD201CC1 +:10244000E2694030C18B12898918C1830749019420 +:1024500000912869331C82880168E068C068F8F739 +:102460001EFCE0E700003C0034DA0000846A010052 +:10247000915E0000F0B58569066A041CC06885B0ED +:10248000C068002801D1F3F757FC0A49029504946B +:102490000391306982880168262001920091435D92 +:1024A000E068E1692A1C0E323C0070DA0000C06866 +:1024B000F8F737FD05B0F0BD0000E9D9000010B510 +:1024C000141C0548FCF77BFBA068F3F79EFDE16850 +:1024D000C160201CF5F7BBFA10BDA06A01007CB5F5 +:1024E000041C6030027BA16900913C00ACDA000062 +:1024F0000192221C211C3831A06848320D1C6369EE +:1025000003F07AFB08210020F3F788FDE0602669DC +:10251000B16B002901D0102300E018230549019474 +:1025200000913168CA180823011C281C3C00E8DA15 +:102530000000F8F720FD7CBD000081DA0000F0B556 +:102540004668171C041C0121301C9BB0FAF70DFCD7 +:102550000025002803D013490A7A012A01D1012558 +:102560001CE088624E612089C861608900283C00B7 +:1025700024DB000003D000200884488404E0E068E5 +:102580000884208A4884608A8884086B002803D1E4 +:1025900001A803F077FC04E001200861002002F0AC +:1025A00039FB3D711BB00120F0BD0000F46E01004D +:1025B0003C0060DB000010B5041CF7F7E8FB0028C6 +:1025C00011D14B20005D01280DD1201C04F085FAAB +:1025D0000021201C04F0F3F8A0690021C207D20FEB +:1025E0000420F4F7D8F910BD000038B5041C04F03D +:1025F00036F93C009CDB0000002803D04030807A94 +:10260000002825D10C2029210855211C0622A018BC +:10261000F2F7A0FC201C06220E49F2F79BFC0120D9 +:10262000E06160620720302108550025E56306203F +:1026300000AB18803C00D8DB0000E068002801D027 +:10264000F3F7DBFC02216846FDF773FBE060201C1A +:10265000FFF769FCE560201C38BD12610100FEB582 +:10266000051C0E1C152000AB98801421171C00209F +:10267000F3F7E3FC02903C0014DC0000046806223F +:10268000311C601D2571F2F76BFC0622391C201CE1 +:102690000B30F2F765FC01A8FFF752FCFEBD00000D +:1026A00080B50023FBF75CF880BD000070B5051C09 +:1026B00008350F4E291C041C3C0050DC000006228B +:1026C000301CF2F750FCA088B082281C05F0A1FF56 +:1026D00000280BD0E0883061281C04F0CCF8A188D9 +:1026E000403041800020F4F7B8F902E00420F4F70C +:1026F000A0F9002070BD707C01003C008CDC000063 +:1027000080B50020FBF7F8FB80BD000070B5041C0D +:102710000430051CFDF732F8002809D00020F7F737 +:1027200037FC002804D00622011C281CF2F71EFCEE +:102730000A4E0622291C301CF2F718FC3C00C8DCAB +:1027400000006089F082281C05F069FF002803D092 +:102750000220F4F788F902E00520F9F7F4FA0020E6 +:1027600070BD707C010010B5041C007904281CD2D7 +:102770006079012801D0032804D1002201213C0006 +:1027800004DD0000A01DF9F769FC6079002804D180 +:1027900022790021F9F762FC0AE0032808D100241D +:1027A000221C00210020F9F759FC0134042CF7DB2E +:1027B000012010BDF0B597B0171C051C0430041C97 +:1027C0003C0040DD000015AA16A905F0E2FE002835 +:1027D0002ED015984B21095C002923D0012902D065 +:1027E00002291FD101E004F090F9AD7A1348169E3A +:1027F00005800622211C0830F2F7C1FB221C311C87 +:1028000002A83C007CDD000000F074FB0A200AA94D +:10281000487200AB9D80022101A8FDF79FFA059048 +:1028200002A8FFF795FBF3F7F7F90021159803F0DD +:10283000E1FF002000E00120387117B00120F0BD59 +:10284000987C01003C00B8DD000080B50120FBF75A +:1028500062FB80BD0000B0B5041C807D151C0A1C05 +:10286000C007C0170130211CF9F7FBFC002803D179 +:10287000042028710120B0BD206AF7F776FE606A57 +:10288000F7F77BFE206A3C00F4DD0000FEF788FAD3 +:102890000020B0BD10B5141CC27981798088F7F78B +:1028A000A1FA2071012010BD80B50123FAF770FF55 +:1028B00080BD0000F0B5041C081C00210F2891B059 +:1028C00000D30221002941D13C0030DE0000C000CD +:1028D000244F1090C619B288216802A8F2F75BFB5A +:1028E0002189B088091A002907DD09042268090C2A +:1028F0001018F3F7C0FB051C00E00025B07980211B +:10290000884317497831095C00203C006CDE0000E8 +:10291000F3F7B4FB071C00681349019010980B589B +:10292000019A291C02A8F2F7ACFA0090281CF3F7D0 +:1029300073FB201CF3F782FB0098002808D0029854 +:1029400001990860B079391CFAF720FF3C00A8DE35 +:10295000000011B0F0BD381CF3F761FBF9E72D2042 +:10296000F3F7F5F9201CF3F76CFBF2E700002444C1 +:10297000010070B5051C2035061CA879042848D232 +:10298000E979012913D1301C283003F092FF3C0073 +:10299000E4DE000000283FD0011C8C310165A979DC +:1029A0004C22041C11548118416250340462E11E0F +:1029B00081620BE000292FD13C2218494243541870 +:1029C000174A04341268002A00D14870002C23D022 +:1029D0003C0020DF0000351C3035E879012801D0AB +:1029E000052801D10620E8712022311D2068F2F768 +:1029F000DEFAB08CA080E879A071A8790025A063E8 +:102A0000012060810020E0602E36E80000191830B7 +:102A100008223C005CDF0000311CF2F7CBFA0135E4 +:102A2000042DF5D3012070BD68610100DC62010056 +:102A300010B5041CC07A012801D0032807D1201D3D +:102A400003F040FF002802D0A17A40304173E07AC1 +:102A5000002801D03C0098DF0000032802D1A07AB2 +:102A600002490870012010BD00006861010070B5C6 +:102A70000E1C0321041C301CFCF7E1FB002801D0D4 +:102A8000857800E000250B48321C00680368207C34 +:102A90008007C00F211C3C00D4DF0000F7F762FE66 +:102AA000002805D00121281CFDF7FEFB002000E0D6 +:102AB000082003F0C5FF002070BD0000E4650100A0 +:102AC00080B5426800880121490608432D2105F0A0 +:102AD000D3FB80BD034901203C0010E00000497891 +:102AE000022900D0002070470000846601008CB5E8 +:102AF00001281FD100290DD001290BD0022901D0B6 +:102B0000032916D10020F9F714FC932000AB18809C +:102B1000002008E0012900D000203C004CE000002B +:102B2000F9F70AFC832000AB1880022000F0CCF8F3 +:102B300001906846FFF73AFA8CBD01210E20F3F7A9 +:102B40001BF9F9E7FFB5171C1E1C1421002083B0E8 +:102B5000F3F7ACFA051C0468122000AB3C0088E0D7 +:102B6000000098800622601D0399F2F732FA0020D7 +:102B7000207127730499201CE172311C06220D304C +:102B8000F2F727FA029501A8FFF713FA07B0F0BD94 +:102B90000000F8B5061C0F1C0C210020F3F73C00C8 +:102BA000C4E0000089FA0568041C281D0622311CB7 +:102BB000F2F712FA6F81201CF8BD0000B0B5041CBA +:102BC0000D1C08210020F3F777FA01688C718D80C5 +:102BD000B0BD0000F7B50E1C1021171C0020F3F744 +:102BE0003C0000E100006BFA0468051C201D062271 +:102BF0000099F2F7F4F96681A781281CFEBDF3B5B0 +:102C00000C1C0821002085B0F3F759FA061C076850 +:102C1000E068002802D00599012904D1059838718F +:102C200000203C003CE10000787156E0036801217F +:102C3000039320690290FCF717FB051C02983221D0 +:102C4000FCF712FB0022D243011C281C04ABF7F74F +:102C5000B9F8002804D1301CF3F702FA00263CE052 +:102C6000002D05D03C0078E100006878093807287D +:102C700001D8322028701C210020F3F726FA019099 +:102C80000568011C301CF3F740F9E068F3F70BFA14 +:102C9000A861E1680198F3F738F90020E060059831 +:102CA0008021084338713C00B4E100000120211C60 +:102CB00014317871281C0622F2F79AF9029A292019 +:102CC0000092005D0121E26A082800D00021281C42 +:102CD000039B02F09DFFA06B2861206C68617F3030 +:102CE00001D10F206861301C3C00F0E1000007B00A +:102CF000F0BD10B5041C08210020F3F7ECF90168C1 +:102D00000C7110BD00000148006870470000286188 +:102D100001000149086070470000E4650100021CE1 +:102D200001200006084380B52D213C002CE2000064 +:102D300005F0C0FA80BD000080B5012807D0F12859 +:102D400025D0F32827D1022002F0BCF980BD00294C +:102D50001AD0012903D0F229F8D188211CE01048AB +:102D60000178002905D140780128EFD13C0068E2C4 +:102D7000000000F016FA80BD0B4814300089FCF703 +:102D80005AFC011C01220F2005F09FF980BD04F0C0 +:102D900052FA80BD0020FAF732FE80BD02210F20DA +:102DA000F3F705F880BD84660100014800783C0017 +:102DB000A4E2000070470000746601000149002091 +:102DC00048607047EC650100F8B50E1C134D011CFE +:102DD000141C6822281C1F1C0C30F2F771F90F49D3 +:102DE0000020AC394860012129601921192C6E6737 +:102DF0003C00E0E2000000D3211C2981094914397C +:102E000088738F74C878012808D001210F2005F03D +:102E10009CF91920FCF715FCFBF799F80120F8BD87 +:102E200000009866010080B5012802D100F02FF85B +:102E300080BD3C001CE3000001211D20F2F7C0FF13 +:102E400080BD00007047000001200749000580B5E3 +:102E5000886000228021162005F04CF904F034FD32 +:102E60000249086180BD000000100700246D0100C8 +:102E7000064A80B53C0058E30000D16A814207D180 +:102E8000107F2423044958434018C068F2F735F8EE +:102E900080BDD4790100944601001D481CB500781E +:102EA00000282DD01C480068002829D01A4A1A4B47 +:102EB000043211681C693C0094E30000A14222D155 +:102EC00051685B6999421FD1164949689368C91ACC +:102ED000814219D2D06814490130D0600968884213 +:102EE0000CD90622FF216846F2F72EF9F3F7ACFC65 +:102EF000011C0023002268463C00D0E3000002F0E1 +:102F0000CEF901221D200A4905F0F7F81CBDF7F79C +:102F100088F904228118081CFCF727FBF6E71C75CA +:102F200001004475010028610100905C0100F05926 +:102F30000100A086010080B501683C000CE400009F +:102F4000002915D10079022812D1081CF7F780F862 +:102F500000280DD003F0F2FC0830418F002907D182 +:102F60008069002804D08079062801D1FCF718FB7D +:102F700080BD000001490020886270473C0048E4A1 +:102F8000000078690100B0B5054D041CA91DFFF7CC +:102F900014F80622291CA018F2F74BF8B0BD707C7B +:102FA0000100B0B5041C151CFFF707F80622291C08 +:102FB000A018F2F73EF8B0BD000080B50A303C0022 +:102FC00084E40000F7F7BCF90123002803D005488A +:102FD0000078012804D100220021002003F0C6FD62 +:102FE00080BD0000A079010080B5002300220021EF +:102FF000002003F0BBFD80BDB0B5054DAC790A1CC7 +:103000003C00C0E40000011C0123012003F0B1FDDD +:10301000AC71B0BD000020100700F8B5061C0C1CF8 +:10302000880702D5F6F747FA10E060070ED5174F6C +:10303000A320C05D154D102800D3154D04F059FC98 +:10304000B96F3C00FCE40000401A291A0120F6F791 +:10305000C1FAE0071149C00F48600CD00D4C443C48 +:10306000207803280FD1002E06D0F6F7F9F9011CBD +:103070000120F6F7AFFAF8BD09490120F6F7AAFAE0 +:10308000012020703C0038E50000F7E70121301CEA +:10309000F6F789FAF2E7A60E0000A46C0100C40955 +:1030A0000000B057010040420F0080B5062804DB45 +:1030B0000521FF20F2F79FFE80BD034AC00011509A +:1030C0000121801801713C0074E5000080BD000002 +:1030D0009C5A01000148806870470000D0600100E0 +:1030E000B0B5084C251D281C216800F0F1FE002811 +:1030F00003D101210448F2F7CFFA281C216800F01F +:10310000FBFEB0BDC06001003C00B0E500002C102B +:103110000700B0B5104D0C1CA868002802D104F0BF +:10312000F4FB2860201C04F038FB0121032003F08D +:10313000C4FE04F0F0FBA86800280BD104F0E5FB06 +:103140002968001B401A696840183C00ECE5000043 +:103150004108401828600120A860B0BDD06001007F +:10316000F8B51F4E0024B068002802D104F0D0FB4F +:10317000706005F061F804F08FFB051CF9F766FE3E +:103180003168184A41181268E80B002A3C0028E60A +:10319000000000D1A80A401885421FD9144F2D1AEB +:1031A000381C2030817900AB1970C079587005F057 +:1031B0006EF8002803D102218F20F2F728FE291C87 +:1031C0000C48F268F8F709FC002804D0011C3C0008 +:1031D00064E60000281CFFF7A5FF012400AB188857 +:1031E000F88405F047F8201CF8BD0000D06001000D +:1031F000F474010000100700891301000149012047 +:10320000C8607047D0600100064880B5006801289A +:103210003C00A0E6000007D10448AC38016903482F +:1032200000F079FEF3F72BFA80BD98660100346355 +:10323000010080B542788168007903F0DEFF002844 +:1032400001D1F5F7B6F980BD00001FB504F069FBA8 +:10325000F6F73C00DCE6000091FF164C022803D193 +:10326000FFF7DCFD042802D3002020701FBDFBF710 +:10327000F7FC0028FAD1606A0028F7D02078800790 +:10328000F4D40921162004F093FF012020700B4C88 +:10329000094902903C0018E700000194009104F0F5 +:1032A00046FB001903906846FDF7B5FB0022162186 +:1032B000842005F03EF8DCE70000606C010061ED61 +:1032C000000040420F00234870B580789CB0012870 +:1032D0003ED1204C09A83C0054E70000803C611C12 +:1032E000FEF792FE042011AD6872A06F19A9189024 +:1032F0007C20005D012608711D20005D002806D09D +:1033000010961296FCF7F6FA2872207A1190F3F7CD +:10331000CDFF6A21085340343C0090E700000022B2 +:1033200001A906A8F6F7CDFF211C0020FBF7CBFB77 +:1033300006A9FBF7C8FB01A9FBF7C5FB0A49096809 +:10334000002907D0331C0A226946FBF7DAFB009AF2 +:10335000072191700C9009A8FEF73C00CCE7000013 +:103360007BFE1CB070BD000084660100E4620100B9 +:10337000F8B5041CC068FF22016812020E1C087B0D +:10338000497B090211400843051C311C0622A01884 +:10339000F1F77CFE0622B118201CF1F73C0008E88A +:1033A000000077FE280A290208430004032149028D +:1033B000000C884208D2E06801890E390181E0687A +:1033C00001680E310160F8BD0026201C103003F0AA +:1033D000E8FA218B002905D1E17D00290BD03C00C2 +:1033E00044E800008069800708D4E068012601896C +:1033F00002390181E0680168023106E0E068018974 +:1034000006390181E0680168063101601449002035 +:103410000B1F42009A5AAA4202D11149063102E01A +:103420003C0080E8000001300228F5D3E068062265 +:103430000068F1F734FE012ECBD1812000AB18805B +:10344000E17D208B49030843310308430004000C4D +:10345000010A000208435880E06819880068C180AA +:1034600059883C00BCE800000181B5E76A460100CC +:10347000B0B50D1C01890622083101810468044998 +:10348000083C0460201CF1F70DFEE580B0BD000093 +:103490006A460100F8B5002901D0002801D10020BA +:1034A000F8BD09043C00F8E80000090CF2F743FFFE +:1034B000061C051C002720E02C892968022C01D25B +:1034C000022001E048780230844202DD241A091803 +:1034D000F4E7844210D0011B0A040104090C120C09 +:1034E000281CF2F79EFE3C0034E90000002806D1BB +:1034F000E868F2F72DFEEF602889001B2881ED684F +:10350000002DDCD1301CD1E7F8B58568041C80693A +:103510002E1C00280DD07168F2F7F6FDA069F2F7B5 +:1035200017FE06E00021C1603C0070E90000F16078 +:10353000A08D36680138A085F0680028F5D1306884 +:10354000A060A08D01380004000CA08502D0201CD2 +:10355000F9F739F82A4F2A480068002803D00621D5 +:103560006868FAF77CFD686800683C00ACE9000018 +:10357000817800292BD1C178002930D1218E0139E1 +:103580002186FBF715F8A16A081AA062E169884252 +:1035900003D904210220F2F767FCB86800281ED086 +:1035A0001A49208E49680C22521A90423C00E8E9E0 +:1035B000000008D319239B01AF2292015943A06A4E +:1035C000511A88420ED200210C2003F0ACFC0020DE +:1035D000B86007E0012905D1C078172802D1A08E74 +:1035E0000138A0862A1D06CAE0686369F1F73C002D +:1035F00024EA0000DCFCB54201D02D68B4E7A08DC0 +:10360000002803D10548B96900F09EFCF8BD000010 +:10361000FC5A0100CC5C010018570100C460010095 +:103620008907074BCA0F80B5197C002906D0814352 +:103630003C0060EA0000197403D10721152004F052 +:10364000A2FE80BD00007869010080B5011C012048 +:10365000FFF7E9FF80BD80B5011C0220FFF7E3FF03 +:1036600080BDB0B51B4C6068FCF72FFF20680025BB +:1036700040683C009CEA0000002803D0FDF718FCDD +:10368000206845606068FCF7C5FE1448616800F07A +:1036900061FCA07A012805D0022803D020680068C8 +:1036A00000F0DEF801211F2004F0B2FD00211F20F0 +:1036B00004F0AEFD3C00D8EA000002211F2004F017 +:1036C000AAFDA57221682C20405C8968F1F776FC80 +:1036D0006068FCF7E4FE20680562B0BD0000147A63 +:1036E00001003463010004490A68C868926A002A2C +:1036F00001D0096908183C0014EB00007047000075 +:10370000147A0100B0B5134C051CA07A01380228C8 +:1037100019D801211F2004F081FD2068FC23011C21 +:103720002030027B1A400273002D0FD001231A4370 +:103730000273A07A032807D13C0050EB000001205F +:1037400001F0E7FD002801D1FFF797FFB0BD4B6204 +:10375000B0BD022111430173F6E7147A010010B5E0 +:10376000041C0A30F6F743FE00280CD022880A49D0 +:103770000B7A9004C00F002B06D13C008CEB0000AC +:103780001206920E202A00D10120C86010BD002828 +:10379000FCD100222421802004F004FE10BD000092 +:1037A000047A010080B5021C1F21802004F0FAFD7C +:1037B00080BD0000F8B51D4E041C30683C00C8EB0D +:1037C00000001D1C4768201CF1F70AFCFBF787FA74 +:1037D000002804D0281CF2F72AFB002828D12088D2 +:1037E000400525D430680068FEF759F9002803D158 +:1037F000FDF789FAF1F7EDFB3068002540683C00E1 +:1038000004EC0000002803D0FDF764FB306845603D +:1038100020880009000703D104F0C8F86188451822 +:1038200030684561816A0131816220888004C10F5E +:103830000248F8F7CDFFF8BD147A0100B1EB0000A3 +:103840003C0040EC0000B0B50E4C051C6068FCF775 +:10385000F6FD0C48616800F092FB0021242004F082 +:10386000ECFC0022D2438021242004F0B8FC00208C +:10387000E0602072206801682806000EF1F7B0FBB6 +:10388000B0BD3C007CEC0000047A01003463010010 +:1038900010B5041CC068F2F785FC201CF2F7B0FDDF +:1038A00010BD000070B51C4E051CB07A2C1C4034B5 +:1038B000022826D1A08B3189884222D13068416A02 +:1038C000002908D03C00B8EC00002030007BC00785 +:1038D00004D5012001F02FFD002818D160780028C0 +:1038E00009D1306802232030027B0D495208520072 +:1038F0001A43027301E0FF21F53101221F2004F079 +:103900006EFC0320B0723C00F4EC000002E0281CC6 +:10391000FFF7C4FF6078002803D1291C012003F0C1 +:1039200029FB70BD147A010050C30000B0B5041C1F +:103930006034E0790E4D00280AD10220A872286870 +:103940004068002804D10B483C0030ED0000FDF732 +:10395000D0FA2968486004F038F82968C861FFF790 +:10396000E0FE29680969081A03F06FFF002801D0FA +:10397000E079A071B0BD147A0100C1EB0000F8B588 +:10398000041C002604F021F8051C3C006CED00002E +:10399000224800270770A10704D0E107C90F016280 +:1039A000C5610126416B002934D1002E32D0061C9E +:1039B000F9F744FF316B1A4B411AA20712D5DA68A6 +:1039C000002A08DD91421A6802DA14093C00A8EDC9 +:1039D0000000A21806E01409121B03E00A4302D1FA +:1039E0001A6852001A60B7630AE0B26B0132B26320 +:1039F000022A1A6801DD940800E01409121B1A60FB +:103A0000D9603063F56218680849884201D93C00E2 +:103A1000E4ED0000196003E0642801D2642018601E +:103A2000F5F7FCFDF8BD0000606C0100B057010027 +:103A300020A10700FEB5041C0020504D0021686144 +:103A40002069FBF7B3FC071C20690321FBF7AEFCE0 +:103A50003C0020EE0000002803D0807829788842BE +:103A600063D1474D201C1430391C061C2A7802F003 +:103A70005AFA002859D1E068056841480195583044 +:103A80000290FBF76AFF3E4D193500280BD0281C29 +:103A9000FBF73C005CEE000055FF00281ED1311CF6 +:103AA000281CFBF765FF002842D017E0281CFBF715 +:103AB00049FF002806D0391C0298FBF763FF002855 +:103AC00036D00BE0391C0298FBF75CFF00282FD0A2 +:103AD000311C281C3C0098EE0000FBF74CFF00282E +:103AE00029D0301CF6F7ADFC294A1832117C002988 +:103AF00004D0516A002901D000281CD1906A002806 +:103B00003BD01378019D01216D8901202B409B073B +:103B100011D0A36B1E4E3C00D4EE00001D1C7F355F +:103B20009836002D14D0558A002D08D15569AB4226 +:103B30000FDA0020174D01236B610AE029E0F578C8 +:103B4000022D06D1144F55693F68ED19AB4200DADA +:103B50000020236C1D1C7F353C0010EF000010D0AE +:103B6000558A002D03D19569AB420AD208E0F57859 +:103B7000022D06D10B4E95693668AD19AB4200D2C5 +:103B80000021084308D0106A002801D0F1F74BFA51 +:103B90000021201C01F0B9F9FEBD3C004CEF0000F3 +:103BA000EC650100C4670100CC6701003EB5056A01 +:103BB000041CC068F2F734FBE169F2F757FA201CE5 +:103BC0004030C18B0431C1832B6910499879062894 +:103BD0000AD1988801910294009060693C0088EFB6 +:103BE00000001B680168E0680322C0680AE0022840 +:103BF0000BD11020009001910294E068A369C06885 +:103C000000220021F7F70FFB3EBDF2F7A6F9FBE714 +:103C10000000BDEF000080B5D1685069C9683C0064 +:103C2000C4EF0000C160D168C860111C4031CB8B6B +:103C300000891818C8831068002802D0FFF7BCFF5D +:103C400080BD0348FBF7CCF8006AFEF7F5F980BDAC +:103C5000A06A0100F8B5061C0A2430070109A00774 +:103C60003C0000F0000001430F1C0A4D2F6004F0DF +:103C7000FAFEAD682801000FB04205D0013CF4D235 +:103C800001219B20F2F741F92802000A082E01D1F8 +:103C900031050843F8BD600007000122D20580B558 +:103CA00000213C003CF00000042004F0DDFC0F206B +:103CB000FFF7D6FF0F2109040840000C80BD00006B +:103CC00080B50548FDF74AF90448FDF77BF804483C +:103CD000FDF76CF880BD000089340100ED24000080 +:103CE000111C00003C0078F0000080B50248F3F79A +:103CF0002AFC80BD0000D124000080B5F2F753F902 +:103D000080BD80B50021002001F051FE032002F0AB +:103D100046FF80BD0000064880B5C169002906D174 +:103D2000016A002903D13C00B4F00000816B034814 +:103D300000F05EF980BD0000C46901003463010039 +:103D400010B5044C206AFCF7B3FB0348216A00F06D +:103D50004FF910BD1C75010034630100B0B50D4C66 +:103D6000207C002802D001213C00F0F00000FDF78B +:103D700086F900252570A068012803D10020A560E0 +:103D800001F08FF8A078012805D103489838006920 +:103D9000FCF7EFFBA570B0BD00008466010080B5A4 +:103DA0000021012001F009FE80BD3C002CF1000043 +:103DB00038B569460025F8F7B7FE041C01D101208B +:103DC00038BDA068002804D00099A131082004F073 +:103DD00073FA1C21201CF1F7A3F9281CF0E700005E +:103DE000FEB5071C4C233949584344183C0068F180 +:103DF0000000251C4035287A37494876211C30318F +:103E000002910C23C856421C0A73497B884246DA49 +:103E10003248007880073ED500200190F6F7AFFACF +:103E200000282ED0AC210958002901D0E4303C00F4 +:103E3000A4F1000000E0CC30061C4068002825D02A +:103E40000299087B012811D1201C2E302978F6F721 +:103E5000EDF9716803E07218127A824203D9FF31DA +:103E60000906090EF7D1A97001200190231C3E33E9 +:103E70003C00E0F100001A1D301C00970199F8F792 +:103E800058FA002811D0A8788019007A00E00020A4 +:103E9000687068780121FBF7E0FD6060381C01F074 +:103EA00014FE381C01F0A5FBFEBD0299087BFF3013 +:103EB00048733C001CF20000381CFCF719FC03F0AE +:103EC000C3FD061CFBF78EFE41007618687861681A +:103ED000FBF76AFE3118208D3B1C054A03F012FEE9 +:103EE000E5E7000058E30100308007001D75010080 +:103EF000D54E00003C0058F20000031C044880B579 +:103F000002792030034900F030F880BD0000AC7C1D +:103F10000100C4670100031C044880B5C278383032 +:103F2000034900F022F880BD0000AC7C0100C867A6 +:103F30000100031C04483C0094F2000080B5827923 +:103F40005030034900F014F880BD0000AC7C010043 +:103F5000CC670100031C044880B5427968300349EE +:103F600000F006F880BD0000AC7C0100D0670100C5 +:103F700010B5002484800B603C00D0F20000191CB6 +:103F8000514301601906091610220630F1F79FF916 +:103F900010BDB0B5064D0024AC60EC60EC612C6245 +:103FA00002F0F1FC00F00DF8EC622C70B0BD447D25 +:103FB000010080B580210148F1F73C000CF30000BE +:103FC000C7F880BD04660100F8B5074F002400263D +:103FD00018206043C519EE6003F042FD103501342E +:103FE000022C41C5F4DBF8BDB87D0100002303605D +:103FF000044B002900D1191C4160002A3C0048F301 +:10400000000000D11A1C82607047BD75000010B519 +:10401000074C206801302060202803D958215820FF +:10402000F1F79DFF216801200139884010BD605BD8 +:104030000100B0B50D1C041C2168002000293C00C3 +:1040400084F300000AD0A943216007D1A068F1F7EA +:1040500023F8002802D1216829432160B0BD000067 +:10406000B0B50D1C041C2168002029432160A94221 +:1040700007D16068F1F710F8002802D12168A94340 +:104080003C00C0F300002160B0BD1A4BB0B59A6A85 +:1040900000280BD0002A07DBB8242458013CA41ABE +:1040A0000019B030007B02E00E2000E00D205D6AB8 +:1040B000124C002D01D0207800E0205CFF24A834B1 +:1040C000C4403C00FCF300009C60F524C4409C61AB +:1040D000FD24C440DC61FF242934C4405C61FF241A +:1040E0005334C44000200C3311C3002905D0002AEA +:1040F00003DC0221504200F065FBB0BDAC7E010044 +:10410000B85201003C0038F4000010B5134C1348BD +:10411000211CFF3169310EC90EC0211CFF31242240 +:1041200075310F48F1F751F8211CFF313C229931CC +:104130000D48F1F7A6F8FCF7A2FF211CFF31102271 +:10414000D5310948F1F73C0074F4000041F8211C16 +:10415000FF312822E5310748F1F796F810BD00003D +:1041600040630100008007000C80070030800700DA +:1041700080800700A0800700F8B5002859D004F01F +:104180004BF9F8F7B3FB00223C00B0F4000001212A +:10419000132004F07CF92A492948496C0160002168 +:1041A0002948C9434160264C1434616C8160A16C7C +:1041B000C1600020254D022601016E500A194F19D9 +:1041C000503204370ECA013008283C00ECF40000DD +:1041D0000EC7F4DB1422211CCC311E48F1F75AF82B +:1041E0001D4881780909090181700021C170417061 +:1041F000211CE0310A78027049784170211CE831B5 +:1042000030220830F1F746F8211CFF313C0028F538 +:104210000000502219311248F1F73FF88320800046 +:10422000142221181048F1F738F811204001842297 +:1042300021180D48F1F731F8FFF773FF201CF1F753 +:1042400028FDF8BDFFF76DFFFBE7082007003C00E5 +:1042500064F500002C6301004020070000300700D7 +:104260000040070000500700006007001000070032 +:1042700000900700F8B5051C1848C068002825D034 +:10428000164E013674783078271A7919201CF1F708 +:104290003C00A0F500004BF80090291C201CF1F711 +:1042A000B2F8C119201CF1F742F8601A3070701E84 +:1042B000806800280DD05336F4780099201CF1F75F +:1042C000A2F8B178611A4118201CF1F79CF8601A25 +:1042D000B0703C00DCF5000003485C300169C26846 +:1042E00069435118C160F8BD447D0100B0B50C4D63 +:1042F000E868296940187D2109014418201C03F051 +:104300000BFB00280AD003F0CFFB011B2869F1F753 +:104310007DF801303C0018F600000004000CFFF7A7 +:10432000B2FFB0BD0000A07D010070B5104C606808 +:104330008025A84360602068284320600D4E301C13 +:104340001030F3F7C8FC002803D107218520F1F7CE +:104350002AFE084800213C0054F6000080684163B2 +:10436000C06C10307061012030612068A84320606B +:1043700070BD0000F400070000300700247E01003B +:10438000011C0020052980B509D202A35B5C5B00FB +:104390009F440000030303033C0090F60000030069 +:1043A000FFF7CFFC80BD0122920280B500210720DB +:1043B00004F0ABF980BD80B540220021002004F05C +:1043C000A4F903220021002004F09FF980BD70B5FC +:1043D0000E1C051C141C08280ED13C00CCF6000055 +:1043E00000F000FC0E2801D1142000E01020E103B1 +:1043F00000D50138C0060A49C00E887108E0092DB1 +:1044000006D1A00401D5002000E00120F3F7B0F9A7 +:104410003440211C321C281C04F07AF93C0008F7B7 +:10442000000070BD00000080070070B50024132953 +:1044300011D8002801D1084E0825012801D1074EC6 +:10444000092500F078FA002805D0021C311C281C30 +:10445000FFF7C3FF0124201C70BDF8FF07003C00DC +:1044600044F70000FFFF00000122D20280B50021C6 +:10447000072004F053F980BD0F22120407214904DC +:1044800080B5092004F04AF980BD000080B5002104 +:10449000042004F01BFC4021002004F017FC044918 +:1044A0003C0080F700000020886002480969203045 +:1044B000FFF709FE80BD64730100B0B560210020E4 +:1044C00004F007FC114D002400220420295D04F0B3 +:1044D00028F90C2003F09BFB01342406240E052C44 +:1044E000F2D33C00BCF700000F2200210A2004F0A8 +:1044F0001BF96121002004F0EFFB064901208860D0 +:10450000044809692030FFF7CDFDFF202D30B0BDF4 +:10451000A858010064730100F8B5061C1248C67063 +:104520000120FFF73C00F8F70000FDFB0127BF0268 +:10453000041CB843011C012004F0D1FB0320FFF749 +:10454000F2FB051CB843011C032004F0C8FB301C1F +:1045500000F09FF900F057F8211C012004F0BFFB88 +:10456000291C032004F03C0034F80000BBFB0020B1 +:10457000F8BD00006473010080B5002240210020D6 +:1045800004F0D8F880BD000070B5051C0124092096 +:10459000FFF7CCFB0F210904884303218904E204BF +:1045A000052D124E20D202A33C0070F800005B5D86 +:1045B0005B009F44000006090C100300032109045E +:1045C0000CE00121090409E00121490406E0F36837 +:1045D000042B05D902E0F368042B01D8014301E064 +:1045E0001043011C092004F080FB3C00ACF80000E3 +:1045F000201C70BD0024FBE7647301000121C90584 +:10460000002880B502D00A1C002100E0002204200E +:1046100004F096F880BD0000F0B591B0002640216E +:1046200001A8F0F7DDFD2A4FB87901223C00E8F837 +:104630000000520300900021062004F084F860215D +:10464000002004F058FB6121002004F054FB0820F6 +:1046500003F0EFFA00240F20FFF771FB4005050F70 +:10466000A80001A9095801AA013101340C2C3C0011 +:1046700024F900001150F1D30020810001AA515803 +:10468000B14201D90E1C051C01301028F5D30620BB +:10469000FFF758FB0F2149028843690208430121B3 +:1046A00049030143062004F029FB0D488468643463 +:1046B0003C0060F9000008E0201C03F05AF90028D3 +:1046C00003D001219520F1F798FC0F20FFF73DFB67 +:1046D0000004F1D5872003F0B2FA0098B87111B048 +:1046E000F0BD201007000001070010B5174C6169EC +:1046F00000293C009CF9000004D00A21132003F09B +:1047000047FE10BD011C1248012900780CD0112968 +:10471000F7D1052803D101211320F1F771FC20788E +:104720000728EED102210AE0052807D006280AD082 +:104730000728F7D03C00D8F900000828E4D1002071 +:1047400005E001211320F1F75EFC10BD012002F00D +:104750006CFD10BD00007C7801000D4980B5097822 +:10476000032901D100280BD0072901D1002807D047 +:10477000022901D100283C0014FA000003D10529C8 +:1047800009D1002807D00020FCF728FD00221321C2 +:10479000112003F0C1FE80BD7C78010080B50622A7 +:1047A0000821002003F0DEFF80BD0000074880B52F +:1047B0004069002801D1F1F73C0050FA000033FFB6 +:1047C0000549054A0868506148689061012080BD2C +:1047D000000064730100B058010010000700074892 +:1047E00080B54069002801D1F1F71DFF0549054A50 +:1047F000086890614868506101203C008CFA000014 +:1048000080BD000064730100B05801001000070073 +:1048100011B500AB597814480123C056002209187D +:104820000B061B161321132B02DD00AB597007E09A +:10483000002B02DA00AB5A7002E01C1C3C00C8FAE4 +:10484000000000AB5C7000AB1B7818180006001667 +:10485000132802DD00AB197006E0002802DA00AB75 +:104860001A7001E000AB1870009818BD0000647366 +:10487000010038B50C1C154900AB496813253C00F4 +:1048800004FB00000091597809185970197808182C +:10489000187019881048022CC18001D0002C0BD14F +:1048A00000AB1878132800D91D7000AB19780020D0 +:1048B000FFF7EEFD022C01D0012C09D100AB587896 +:1048C0003C0040FB0000132800D95D7000AB597814 +:1048D0000120FFF7E0FD38BD000064730100A0581F +:1048E000010070470000B0B5041C0E28134D04D021 +:1048F0001249A00000194D3945180620FFF73DFA6E +:104900000F493C007CFB0000E02209191039C97BEB +:104910009043490111400143062004F00DFA291C7F +:104920000520094A03F030FF08481F2200191038FB +:10493000C07BC104D204082003F026FFB0BD0000F4 +:10494000B40900003C00B8FB000014450100FF0F53 +:104950000000C05801007047000080B506490028DB +:1049600001D1086880BD012801D1486880BDF1F7F8 +:1049700090FB002080BD7C730100014840687047B7 +:104980000000A05801003C00F4FB00000448012393 +:104990000449C056C95640180004000C7047000076 +:1049A000A0580100A258010001484068704700006B +:1049B00064730100F8B5051C0E1C00F055F9041CC9 +:1049C00000F058F900282CD03C0030FC0000B30067 +:1049D000601E002D1C4E19491A4A06D10B250E2CBB +:1049E00000D1194AD258085608E0012D1CD19A1856 +:1049F0000436081808250E23126DC056071C4743BD +:104A0000FB00DF19124B3F2158433C006CFC0000B7 +:104A1000114BA9400C1C3818C0181440EC40C011B0 +:104A200060431B0AC018801203D1012004E000205B +:104A3000F8BD3F2800DD3F203060A84008408A4391 +:104A40001043F5E7CC590100DC5801003C00A8FCFC +:104A500000007C7301007C5901000606000026005E +:104A60000200034808B5C08800AB1880009808BD54 +:104A70000000A0580100B0B50B4D094C0E206C6031 +:104A8000FFF78DF90949021CC8600106090E3C00B8 +:104A9000E4FC0000133A022A02D91738042800D88F +:104AA0000021081C6C60B0BD041802006000070003 +:104AB000647301000A4898B502781321142A00D3C0 +:104AC00001704278142A00D34170064C6068FFF7E9 +:104AD0003C0020FD0000BDFE009000AB1888E08087 +:104AE00000F075FF98BDA4580100A05801000348CC +:104AF00080B541780120FFF7E6FC80BD0000A65894 +:104B00000100034880B501780020FFF7DCFC80BD80 +:104B100000003C005CFD0000A6580100B0B5054D4A +:104B20000024201CFFF744F90134102C01C5F8D3F0 +:104B3000B0BD0000D4440100044980B58870044928 +:104B400080000958072004F00FF980BD647301004C +:104B5000D05801003C0098FD0000B0B53F24021C75 +:104B6000002A01D108200B23012A01D109200823A2 +:104B7000251C9D40002900D101213F2900D9211C7D +:104B800099400A1C291CFFF77CFCB0BD000091B5C0 +:104B9000124900AB1A783C00D4FD00000878114C93 +:104BA00080180006000E207049785A788918090686 +:104BB000090E13221328617000D92270132900D91D +:104BC0006270084908480639C98881802178002028 +:104BD000FFF782FC617801203C0010FE0000FFF727 +:104BE0007EFC98BD0000A4580100A6580100647323 +:104BF000010070B51D4D041C28780E1C032803D13C +:104C000002211120F1F735FA201C00F04EF800289F +:104C100025D0287801280AD168683C004CFE0000A5 +:104C2000002807D00121112003F0EEFB0120696864 +:104C3000F0F7BDFA6C706E60201CFFF7C1FC041C1D +:104C400000F0D4FE002C02D06868002802D1F6F7EC +:104C5000D9F870BD012028700122211C3C0088FE7B +:104C60000000112003F09FFB70BD02211120F1F71D +:104C700006FA70BD00009C73010080B5012805D1C3 +:104C8000002904D0012901D1F6F7BFF880BD0549FC +:104C90000878032802D00020087080BD03213C0062 +:104CA000C4FE00001120F1F7EDF980BD9C730100F6 +:104CB00001484078704700009C730100011C0139D5 +:104CC00001200E2900D300207047000010B5134CBE +:104CD000207801280ED1606800280DD00121112014 +:104CE0003C0000FF000003F098FB01206168F0F732 +:104CF00067FA00206060207001E003280ED00021D8 +:104D0000112003F08AFBFFF724FCFFF7C0FB0549E5 +:104D1000087B40084000087303202070012010BD6C +:104D200000003C003CFF00009C730100880007006D +:104D300010B50D4C2078032813D1002020700B48AB +:104D4000017B012211430173FFF770FCFFF718FC90 +:104D5000002806D002212170011C0022112003F03E +:104D60002BFB01203C0078FF000010BD00009C736D +:104D700001008800070080B50549002804D0002004 +:104D8000086003F05AFA80BD0120086080BD805A97 +:104D90000100FEB5051C8035041CA8682979066849 +:104DA000201CA03002293C00B4FF00001CD169790E +:104DB000082901D00C2917D101216162A96809686D +:104DC000098B0182A9690191008AC00605D5606836 +:104DD0000088400501D4012000E000200290052059 +:104DE00001A902F0B7F902E03C00F0FF0000002149 +:104DF00061620182A9681A230A89676A181C002F58 +:104E000000D11820101A0881A8680168626A002A77 +:104E100000D11823C9180160A86841C43088083C33 +:104E2000400403D5201CF7F7BCF93C002C0001001E +:104E3000FEBD0021E1613079C00703D4201CF7F7E3 +:104E400091FEF5E7201CF7F743FFF1E7F7B5051CE6 +:104E50000A30061CF5F7A4FA144F041C3988F2F73F +:104E600083FE328878680280728802303C006800D5 +:104E700001000280B18841806988029A201CFAF7FB +:104E8000CEFE0B4D08356880FBF72BFE0121090390 +:104E90000028288801D0884300E00843288004487F +:104EA000002200211430F2F732FE201CFCF73C00F7 +:104EB000A400010085FAFEBD247B010010B5134C4F +:104EC0001149201CFF3069300EC90EC0201CFF3074 +:104ED000242275300E49F0F717FA201CFF303C22CF +:104EE00099300C49F0F76CFA201CFF301022D530B5 +:104EF0003C00E00001000949F0F709FA201CFF30EE +:104F00002822E5300749F0F75EFA10BD0000008066 +:104F10000700406301000C8007003080070080809C +:104F20000700A0800700B0B500283FD021484168A5 +:104F3000214C3C001C0101006160C168E160016915 +:104F40002161806AA0621E491C48096814384164C6 +:104F50001C48251C3C350FC80FC5201C80224C3036 +:104F60001949F0F733FA1422201CCC301749F0F716 +:104F70002DFA38223C0058010100201CE030154970 +:104F8000F0F727FA201CFF30502219301349F0F7B0 +:104F900020FA83208000142220181049F0F719FA13 +:104FA00011204001842220180E49F0F712FAFFF771 +:104FB0008EFFF8F794FB3C0094010100B0BDFFF7B1 +:104FC00089FFB0BD00100700406301000820070002 +:104FD0004020070000300700004007000050070095 +:104FE0000060070010000700009007000C4980B522 +:104FF000012048600A4814383C00D00101000078C4 +:10500000012804D008489438406F002803D00020BD +:1050100000F01FF880BD08680028FBD00348F2F7B5 +:105020007AFE80BD000098660100FFFF000080B599 +:10503000002809D1F2210F2003F03C000C020100EE +:1050400013FA00220F21F12003F0CCFA80BD0120D9 +:10505000F8F76AFE80BD000010B5041C032000F0C4 +:10506000C9F900210F2003F0FFF9FFF765F80B499C +:1050700000204874FBF7E6FA094800683C00480243 +:105080000100002803DC02214042FFF752FC0448E3 +:1050900014300068002802D0201CF2F742FE10BD38 +:1050A000000084660100D47E0100064980B50978BD +:1050B000042905D0052903D0062901D007293C0081 +:1050C0008402010001D1FEF7BDFD80BD74660100C0 +:1050D00010B5094CE06800280BD107482C38008A2D +:1050E000C00704D5002101206268F9F7C9FA012040 +:1050F000E060012010BD0000F46E01008CB5021CC0 +:105100003C00C0020100081C111CFDF728FF0190A3 +:10511000002805D0172000AB18806846FDF7FFF87F +:105120008CBDF1B52E4CAEB0002525632069012859 +:1051300003D101A801F0A1F84EE00126284F267006 +:10514000503F3C00FC020100B869F8F74FF82549D0 +:105150002C3900281DD0E06A01281AD1088A0F1CBA +:10516000800704D5002102206268F9F78FFA388A97 +:10517000000707D5E068012804D1002108206268F3 +:10518000F9F784FA3C00380301000022182182203C +:10519000266303F036FA25E0088A0E1C800704D542 +:1051A000002102206268F9F774FA308A000707D5F7 +:1051B000E068012804D1002108206268F9F769FA43 +:1051C000308A400704D53C0074030100002200210E +:1051D0000420F9F761FA2E98012804D01E950921C0 +:1051E0001BA8FFF797FFE562BD61E5602FB0F0BD3A +:1051F000F46E010080B50720FEF7A0FE00210F200D +:1052000003F044F90C4801783C00B0030100002988 +:105210000FD00221017088380078002804D0074997 +:105220001031487C01304874F2220F20054903F008 +:10523000FCF800220F21F32003F0E9F980BD746629 +:10524000010080841E0010B5041C3C00EC0301002A +:10525000F2210F2003F020F9012C0AD10848084957 +:1052600000681439002805D0C878022802D1F7F761 +:10527000AFFA10BD002048700520FEF765FE10BD96 +:1052800098660100F8B5284E3021351C3C002804F2 +:10529000010060352889895D884203D10020FFF72D +:1052A000F6FEF8BD341C70340121217041188019BC +:1052B0003030298140781D4F183F3870002808D0C1 +:1052C0000021FBF7C2F9002807D12078FFF73C0046 +:1052D000640401009BFFE7E701210F20F0F71AFFAC +:1052E00014480121803081703869FBF755FA20732A +:1052F00000210F2003F0D6F8707A01280ED10E4855 +:105300000068002804D0387802F0DAFA002805D0C6 +:105310003C00A0040100307F60730320207071897D +:1053200005E005202070A888FAF73BFB011C00224D +:105330000F2003F086F8BAE7000004660100E4627B +:10534000010070B5041C02F06CFC364B191CA03136 +:105350000A783C00DC040100102A02D20A79102AE3 +:1053600001D3012500E00025304ECA798036012C9A +:1053700012D00025022C2ED0042C3CD15C6B002CCA +:1053800039D19C6F001B2A4CA04234D9B268986A6C +:10539000824231D03C00180501004D7234E0B06803 +:1053A0009C6A0222A04221D1586B00281ED1002DF8 +:1053B0001CD1487A192820D03468986F6400001BEB +:1053C00074680019FF301C4C3930A04216D248795D +:1053D0008C79001930283C005405010011D31022AB +:1053E0000FE05C6B012C06D1B0689A6A904200D144 +:1053F0004D72002205E09C6F001B124CA04200D3AE +:10540000202206E04A7A192A01D201324A72202269 +:10541000B06030689B6F98423C009005010004D159 +:10542000002A00D148794A7106E0102A04D370603E +:10543000336048798871F6E7CA7170BD0000A46CCA +:105440000100A304000071020000350C00000548B3 +:1054500080B5817B002905D000213C00CC050100EE +:10546000817303490F2001F00FFF80BD74660100B6 +:10547000E9030100F8B5041C02F0E2FB051C384EFC +:10548000201C3749341CA0341022443901282CD068 +:1054900004284ED1371C743609CE26783C00080605 +:1054A0000100C01A202E04D1304EB04201D900268E +:1054B0004E613E1C3F6C002F48D1776C002F45D1C8 +:1054C000B76A002F3DD0776B002F3AD0274FB842F4 +:1054D00037D26078102806D3F06F181A244B3C009E +:1054E00044060100984201D2E270F5664869062838 +:1054F0002FD201302CE02078202801D106234B61E7 +:1055000002232371B36A002B19D04969032916D9E4 +:10551000716B736D594012D0E178102910D3617806 +:105520003C0080060100331C10290CD3D96F691A86 +:10553000134DA94207D2586C002802D0986C00285D +:1055400000D12271F8BD0228FCD12270FAE7486927 +:10555000002801D0013848610A49F06E401802F075 +:10556000B0FA3C00BC0601000028EED00120E0703B +:1055700006482818F066E8E7A46C0100E204000081 +:105580001A06000053070000002D3101005A620284 +:1055900080B541680979C90713D5C16900290DD0C3 +:1055A000897902293C00F80601000AD10821018608 +:1055B000011C38318162021C06480449F9F7FDFCE0 +:1055C00080BDF7F7DCFB80BDF7F723FB80BDB97129 +:1055D0000000A06A010010B50024002803D002F0EA +:1055E000E8FE002817D03C00340701000C4C0120D5 +:1055F000A0722068002141620A490268C9786032BD +:105600009171218901312181006840308183FBF74C +:1056100031FC20680068FCF7A1F90124201C10BDB2 +:10562000147A01000E6101003C00700701007FB593 +:10563000061C1E481D1C438802881C21002090B0B7 +:10564000F0F745FF03900468FF2101312180082015 +:1056500060800620207104206071C001002D00D1FF +:10566000081CE08001A80230311C3C00AC0701009E +:10567000051CFAF75FFA10496846FAF75BFA201C36 +:1056800008306946FAF756FA291C201C1230FAF73E +:1056900051FA10AB9888002201212083D8886083BA +:1056A0001889E081588920826846F9F73C00E807AC +:1056B000010017FF14B070BD0000146E01001261EC +:1056C0000100B0B5041C1848251C0078603580071F +:1056D000002808DAE879002805D0F4F770FF011CEB +:1056E000201C00F078F929882E20005DF2F73C009C +:1056F000240801009FFAE87900280BD1201C4030D3 +:10570000018B22691180418B22695180808B216934 +:10571000C88207E0012805D1206901220188D20250 +:10572000114301806A7AE0680249F2F753FAB0BD8A +:105730003C00600801001D750100D14F000090B5CC +:10574000041C38230C495843431885B000200A49EB +:105750000290181C012203910949049230304278CA +:1057600009880192009101785A6B0C33201CFBF7D9 +:105770007CF83C009C08010005B090BDD4E4010019 +:105780005D4E0000487B010090B585B0031C0020F1 +:1057900002900A49181C0022049260300391C279D9 +:1057A0000188019200915A6ADC682033997B407A23 +:1057B000231CFBF73C00D80801005DF805B090BD44 +:1057C00000000D4F0000074980B5886A002808D105 +:1057D00001208862F0F7AFFC011C03480022F2F7B9 +:1057E000B8FE80BD00007869010041E40000F0B51A +:1057F0009BB0002820D03C0014090100011C08A81F +:10580000FCF7B2FD01201190032010AD2872042096 +:10581000687205A800226946F4F700FF00240026FC +:1058200005A90020F9F7FCFA6946F9F7F9FA0B9097 +:1058300008A8FCF7BBFD01343C0050090100022C14 +:105840002E72F0DB1BB0F0BD000090B5041C4C23A1 +:105850000C495843431885B000200A4902900022A1 +:1058600004923C200391C25C084841880192412087 +:105870000091C15C5A680833201C3C008C0901006F +:10588000FBF702F805B090BD58E30100754F00002A +:105890003C7C0100F8B50E1C224C3821171C051C5D +:1058A000201CEFF775FD231C2533211C243110200B +:1058B0006A46F9F71DF800AB188807213C00C809B3 +:1058C00001001A4A02382084201C20308170C570E3 +:1058D000111C0673477334312163303262630179DE +:1058E000251C103521812060E5601888401A20832E +:1058F000201C28302061201CF9F711F80D483C00CD +:10590000040A01000068002807D00621201CF8F7CF +:1059100047FD1021281CF8F743FD084802210162C9 +:1059200044620121016206480068EFF7D5FCF8BD2A +:105930008C8E0100E4FE0100CC5C01000030070009 +:105940003C00400A01005C5B0100F0B5061C4036DB +:10595000318B041C251C0807800F6035012885B099 +:105960003BD0E879002805D120690180B08B2169FE +:10597000C88207E0012805D1206901220188D202EE +:1059800011433C007C0A0100018020480078800718 +:1059900026D5E879002823D0A06B00281CD0F4F786 +:1059A0002FFE002809D0B8210958002905D0302140 +:1059B000095DB4300818077A00E000270121381C7F +:1059C000FAF786F93C00B80A010004902069043017 +:1059D000391CF4F76CFD0499FAF7D3F902E0201CA6 +:1059E000F7F7F9FB7083708B216900224880094921 +:1059F0000A48049203910290EA7929880192009161 +:105A0000626AE36820343C00F40A0100A17B687AF2 +:105A1000FAF74CFF05B0F0BD1D750100D14F000035 +:105A2000DD2F0100FEB5041C261C012020360029B4 +:105A300002902ED05820005B0007800F012801D172 +:105A4000CC3100E0B43148683C00300B01000D1C43 +:105A5000002824D0201C6030C2790121012A00D006 +:105A60000021271C626D3037002A04D03A1C281C04 +:105A7000F6F7E7FD07E0427A231C683300923A1CF0 +:105A8000281CF6F79AFD029038783C006C0B010058 +:105A90004019007A0121B073FAF726F901E00020DD +:105AA000B0736062B07B0D2801D9F0F7BBFB0298A0 +:105AB000FEBD0000FFB5041C8030251C5E3500785B +:105AC000AE1DAF1F002883B012D1F4F73C00A80B25 +:105AD0000100C7FB002807D006980599029004989A +:105AE0000190A66167610DE00498069902900598FF +:105AF0000190666105E004A903C90290069801902F +:105B00006761A5610622381CEFF78BFC06223C007A +:105B1000E40B0100281C0299EFF786FC0622301CDA +:105B20000199EFF781FC07B0F0BD0000B0B50D1C86 +:105B3000041C052801D3F0F77BFB0249A00008589C +:105B40008560B0BD107B0100F8B5FFF759F9051C61 +:105B50003C00200C0100FEF7E8FF041C281CFFF7A6 +:105B600058F9002842D0691E214D4A00204B1C3DA7 +:105B7000AE5C985C3040D6180123F6565219D256C6 +:105B8000964201DD151C00E0351C184B2A3B595686 +:105B900051183C005C0C0100B14200DB311C0E1CB2 +:105BA000002826D0FEF7BEFF009000AB18781249FF +:105BB0000023C95600AB1522101A5B78001B401851 +:105BC000D21A121B51180022854202DB00AB1A7058 +:105BD00002E0401B3C00980C010000AB18708E42A4 +:105BE00002DB00AB5A7002E0881B00AB58700098D3 +:105BF000FFF78DF801F0FFF8F8BDE6780100657356 +:105C0000010070B5084E064D00240620604380193F +:105C10000622291CEFF73C00D40C010011FC0134D2 +:105C2000052CF5DB70BD00004E470100E67A01004F +:105C3000034880B501680348FEF742FB80BD0000C1 +:105C4000A8790100C4600100034880B501680348D9 +:105C5000FEF74AFB80BD00003C00100D0100A87952 +:105C60000100C460010010B500280AD0064CA169EB +:105C7000002901D1002000E00968F7F738FBA06196 +:105C800010BD002010BDA46E0100F3B5374883B0ED +:105C9000029080790E1C002701903C004C0D010001 +:105CA0003448354A016A039C031C1B69A14201D098 +:105CB000936100E0536131498A6896423FD02D4894 +:105CC0008E60C1680024251C00292D4809D0002EB3 +:105CD0000BD028480124C06A240300283C00880D0A +:105CE000010006D0012704E0002E01D0051CF9E7D1 +:105CF000041C002F06D0FBF71EFB1F48016822483A +:105D0000FEF7FBFA201C28430ED02A1C211C012080 +:105D100002F021FE2A1C211C022002F01CFE3C0085 +:105D2000C40D01002A1C211C032002F017FE002FC5 +:105D300006D1134801681648FEF7CEFAFAF742FD7D +:105D4000039C002C01D101F0E1FF01A903C9887176 +:105D500001F0DCFF0A4C0A4B443CA1692269083B74 +:105D60003C00000E0100411A002A03D01A685118A5 +:105D7000196002E05A6851185960A061266105B0A7 +:105D8000F0BD20100700A46C010010000700B05700 +:105D9000010000106000847301001CB54C23084909 +:105DA00058433C003C0E01004418201C4030417810 +:105DB0006268009101923F210B5D618F0078626CF7 +:105DC000FAF728F8A0851CBD58E30100B0B5164DC0 +:105DD000A969002925D02C1C3034207A002820D035 +:105DE000002381223C00780E0100182002F089FC7B +:105DF000207AFF300006000E207212D10C482821B4 +:105E00002C38095C2172297A002901D1006A00E04E +:105E1000406AA9698002814203D24900814201D2CD +:105E2000A961B0BDA8613C00B40E0100B0BD01F095 +:105E30001DF9B0BDF46E01007FB5051C04206B4652 +:105E40001B180290002628186A4602A9FCF78AFB54 +:105E5000002806D100AB1879042808D01879032847 +:105E600005D000AB187910213C00F00E010008436A +:105E700004B070BD03A9E868F6F7D3FF002805D089 +:105E80000398202108430006000EF1E703A9002033 +:105E9000F6F7C7FF041C01D10220E9E7E86800AB70 +:105EA0002060009860601879A0763C002C0F0100FB +:105EB000A88C6076E8692061688CA082288C2076A6 +:105EC00069690948814200D9081CA060201C02F0C1 +:105ED000A1FDA168002904D0039AA132082002F094 +:105EE00037FB301CC7E70000A08601003C00680FAC +:105EF0000100FEB5061C40780124062850D3C11EBF +:105F00000320EFF75EFB00900E2849D800200AE03E +:105F10004100091889194A798979511801390E29DE +:105F200000D90024013000998842F1DB002C3C00AC +:105F3000A40F010037D00322B11C1B48EFF7A4FACD +:105F40001A4C1C21201CEFF74DFA002528E06900AF +:105F5000491902918A1953791548435493790F18B6 +:105F60007B70D379BB700723D2560192445C0FE05B +:105F70003C00E00F0100201CFEF77BFF002807D04B +:105F80000C4A600080180121103881730199C17397 +:105F900001342406240E07480299405C79784018A1 +:105FA000A042E8D8013500988542D3DBFEBDE86207 +:105FB00001003C001C100100E6780100EB620100CA +:105FC00001680F2901DD0F2101600168002901DA54 +:105FD0000021016070470000F8B5041C1E48221D16 +:105FE00005680092161C231C0F1CCC332A1C201C95 +:105FF0007030A16D3C005810010000F03EF9009691 +:10600000A16D27200140231CE433201C2A1C5C3096 +:1060100000F033F9134800780E2801D2012585409D +:106020001148A1690078294000070BD4480703D51F +:10603000080701D504203C00941001008143880624 +:1060400003D5480601D520208143231CB4332A1CE4 +:10605000201C3030009600F013F9391C201CF0F79A +:1060600047FCF8BD2C7D0100106701001D75010083 +:10607000B0B5F2F727FCFEF73C00D010010009F99B +:106080000F48002545700E480D4C00885B34A082F7 +:10609000F9F723FD2061A08A002804D00121890599 +:1060A000EFF70DFBE18205480138456001F055FE30 +:1060B000021C231C00210020F4F73C000C110100FD +:1060C00049FDB0BD457D0100F467010070B5161CA7 +:1060D0005A89041C04989207920F00250029A27186 +:1060E00009D00521F9F724FB002801D0C07800E091 +:1060F0000120E07100E0E571E560A6603C00481118 +:10610000010070BD0000FEB5051C0E229C30164932 +:10611000EFF7CFF9291C281C8030883100242F1C70 +:106120006037029101902006000E061CF9F70DFE63 +:10613000002803D001984268029901E0EA6D3C0012 +:1061400084110100391C002A0DD0002003E00B5CF3 +:10615000B34202D801309042F9DB08181038C07BF6 +:1061600029199031087301340E2CDFD3FEBD0000D5 +:10617000CC470100FFB581B0141C101C06220D1C79 +:106180003C00C0110100191C0B9E0A9FEFF797F904 +:106190000622391CA018EFF792F9E6602C60102057 +:1061A00028816E600198E86005B0F0BD000070B510 +:1061B000041C002020615820005D0E1C151CC00727 +:1061C000C0173C00FC1101000130E061216B002987 +:1061D00036D11E490968294332D0A168898A00292D +:1061E0002ED000280BD0201C583000F0F3FD0028E2 +:1061F0001BD0816A026A406A0978007806E0144A76 +:106200003C2311783C0038120100507843439A181F +:106210000432002D03D1022901D0032902D16D21BE +:1062200022610855206900280DD08188002901D1FC +:10623000012070BD8079022805D1221C074907483A +:10624000F8F74BFF02E03C0074120100201CEFF74E +:10625000B5F8002070BD00002861010068610100F0 +:10626000A1DA0000A06A010010B500210020F9F7B2 +:1062700039FEC400F9F754FE2418F9F747FE08491F +:1062800020180988084C40183C00B012010006494B +:10629000098840186061F9F746FE054909884018E9 +:1062A0004000A06110BD0261010004610100D479C9 +:1062B0000100A66901001140081C10B51C1C191C26 +:1062C00008311860F1F731FE60603C00EC1201000B +:1062D00010BD0000F8B5061C22480F1C4168914211 +:1062E00003D000218160C1604260C46815E02820AD +:1062F0001D4960434018051C0622311CEFF770F859 +:10630000002807D1A81D391CF9F710FD3C002813FF +:106310000100002801D00120F8BD01342407240F1A +:10632000124880688442E5D1104C2823A0680F4DA4 +:10633000584340190622311CEFF7D3F8A0682823F0 +:106340005843401906302222391CEFF7CAF83C00A6 +:1063500064130100A06801300007000FA060E1682D +:10636000814203D101310807000FE0600020D6E729 +:10637000EC650100A0F4010010B50021032000F03D +:10638000E5FF054CA068002804D101F007FD616815 +:106390003C00A0130100401A606010BD0000D060F6 +:1063A000010002680A6001607047011C0068002853 +:1063B00001D002680A6070470000FEB5141C1D1C65 +:1063C0000022D24301ABF3F782FF01980026284058 +:1063D00001903C00DC1301000025002720601EE036 +:1063E0000121B9400A1C024018D0884301903906A7 +:1063F000090E7019001902910177081CF9F7C6FC03 +:10640000002806D0301C0019013602993030017086 +:1064100004E0281C3C001814010001350299001901 +:106420000172013701980028DDD17019A061656003 +:10643000E662FEBD0000B0B5144D041C287A0128A8 +:1064400002D10420F6F7ADF9211CA86AF5F721FC6A +:10645000002803D104203C0054140100F6F7A4F9ED +:10646000B0BD02202870288C002800D06081688C84 +:10647000002800D0A081A88C002800D0E081E86925 +:1064800001230204120C201C0249FCF719FFB0BDC5 +:10649000F46E0100A17700003C0090140100F8B5F3 +:1064A000194E051CB069002800D13068FFF73BFC8D +:1064B000154F041C503700280BD06068291C7860E9 +:1064C00001203863201CF5F7EAFB002804D10020E6 +:1064D000F8BD0023FB62FAE700233C00CC14010066 +:1064E0002377F86A002801D10120F862387A012860 +:1064F00007D0F86906490204120C281CFCF7E6FED6 +:1065000001E0FB62B3610120E5E70000A46E010039 +:10651000DD02010070B50D1C041C161C3C000815A2 +:106520000100042C1BD21048834207D258000F49A7 +:10653000EFF7FBF8FF30000A013800E000201F35BC +:10654000EA066107090ED20E11437207520D11437C +:106550000006000A0843064AA100505070BD3C00E6 +:106560004415010001218D20EFF7ACFE70BD000045 +:10657000409C000000803801E8600100094A80006A +:106580001058400940010722024307480368002BC6 +:10659000FCDB42600906016001680029FCDB082081 +:1065A0003C008015010070470000E86001003020C9 +:1065B0000700B0B5041C0D1C0749A00008580028AE +:1065C00003D102218D20EFF780FE291C201CF6F755 +:1065D000A8FAB0BD0000E8600100B0B5041C0D1CB5 +:1065E00007493C00BC150100A0000858002803D151 +:1065F00002218D20EFF76CFE291C201CFFF7C4FF41 +:10660000B0BD0000E8600100F8B50D1C161CF7F7DE +:1066100017F9041C2868404F817800293BD1C178C4 +:10662000002958D13C00F8150100F8F7F8F9228E3E +:10663000618E8A4204D0A16A0918E069814210D9AA +:106640003849321C486B01304863206A01302062AF +:10665000386801303860E0686369291CEEF7D8FEBD +:10666000F8BD013212043C0034160100120C2286DF +:10667000A162B868002834D12C480C2300681B1A8A +:106680009A4207D219239B01AF2292015843101A54 +:10669000814226D30120B86001210C2000F07AFE4F +:1066A0001FE001291DD1C0783C0070160100172899 +:1066B0001AD1A08EE18E884214D3E968096809795D +:1066C00009060FD5606A321C01306062E0686369B8 +:1066D000291CEEF7A3FEE868016808310B2000F0E2 +:1066E0005CFEC3E70130A086A08D3C00AC16010023 +:1066F000E18D884204D103210220EFF7F5FDB8E7D0 +:1067000060684560866000686060F8680130F86025 +:10671000A08D411CA1850028ABD10848B969FDF7BF +:1067200061FE221C0221F12002F064F83C00E81610 +:106730000100A1E70000FC5A0100905C010018571D +:106740000100C460010080B5021C0221F02002F0AB +:1067500054F880BD0000002803D102484178C907E1 +:10676000FCD5704700000400070080B500063C001F +:106770002417010001D1F1F771FE80BD80B5F4F757 +:10678000E5FA80BD80B5F6F7EBF880BD0149002041 +:10679000087470477869010080B5C00703D50249C5 +:1067A000012000F01DFC80BD50C300000006000E5B +:1067B0003C0060170100012880B502D1F6F7E1F92D +:1067C00080BD0028FCD1F1F74CFE80BD000080B5F3 +:1067D000F6F7D7F980BD034980B500200874F6F7B5 +:1067E000FEF980BD00007869010080B50006000E4A +:1067F000F1F73C009C17010071FE80BD10B5012827 +:1068000008D0022803D0032801D0EFF7A7FDF6F740 +:10681000E9F910BD01F0F8FA041CFAF75DFD241A3D +:10682000FAF73EFD084900280BD0486A002808D036 +:10683000064884423C00D817010005D2011B012202 +:10684000072001F0F4FEE5E700204861E2E77869FF +:10685000010050C30000094980B5486900280CD0E8 +:10686000086ACA69801A002807DD002048610121F2 +:10687000072001F010FF3C0014180100F6F7B8F9EA +:1068800080BD00007869010080B500F0E7FB80BDA5 +:1068900080B500F03FFC0020F7F7D4FC80BD00007D +:1068A00080B500F037FCFDF76FFCF5F773FD30F0B5 +:1068B00047FB80BD044880B53C0050180100C16A08 +:1068C000006BF2F7DEFF0120F7F789F880BDA46CBA +:1068D000010010B5F3F741F80D4C002804D0012059 +:1068E000E064F7F7B2FC10BD01210120F3F7E9F8ED +:1068F000FDF74DFC606D002803D03C008C180100B2 +:10690000F3F782F8002801D0F5F74AFD0120F2F7ED +:10691000C1FC10BDA46C0100044880B5C16A006BC5 +:10692000F2F7B2FF0120F7F75DF880BDA46C01001B +:1069300080B500F0F5FBF5F733FDFCF73C00C81817 +:10694000010031FDF9F7CBFF0420F2F7A6FC80BD72 +:106950000000034880B5C16A006BF2F798FF80BD64 +:106960000000A46C010080B500F0DDFB0020F7F70B +:106970003CF830F0EEFA80BD000080B500213C000C +:10698000041901000120FFF719FA0120F2F788FC31 +:1069900080BD000080B500F0C9FBFCF707FD0121B8 +:1069A0000120FFF70BFA0420F2F77AFC80BD00000B +:1069B00080B500220021002000F08AFB80BD00008D +:1069C0003C0040190100034880B5826A012104207F +:1069D00000F081FB80BDD479010080B50022002148 +:1069E000032000F078FB80BD0000034880B5826A78 +:1069F0000121042000F06FFB80BDD479010080B537 +:106A000000223C007C1901000021032000F066FBFD +:106A100080BD0000064880B5816842690069511850 +:106A2000814203D90121012000F058FB80BD000004 +:106A3000D4790100064880B58288816800695118C0 +:106A4000814203D93C00B81901000121022000F065 +:106A500048FB80BD0000D479010010B5084C207BB4 +:106A6000216AF9F79CFAA1694218A0682169801887 +:106A7000884203D90121022000F033FB10BDD479F4 +:106A8000010080B500223C00F41901000021002023 +:106A900000F02AFB80BD00000006000E012880B532 +:106AA00002D1F6F78FF880BD0028FCD1F1F7FAFC8F +:106AB00080BD000080B5F6F785F880BD80B5000682 +:106AC000000EF1F729FD80BD3C00301A0100B0B581 +:106AD00002250228104C0BD1FBF747FC002801D1FE +:106AE000FEF74FFF2570A1680C48FDF7A8FCB0BD6C +:106AF00003280DD108487D231C380069DB0058436A +:106B0000191C40184108022000F03C006C1A0100DA +:106B100091FA2570B0BDF8F731F9B0BD7869010080 +:106B20003463010010B5054CE068002801D1EFF78F +:106B300039FC0220207000F0AFFA10BD7869010026 +:106B4000034880B5826A0121042000F03C00A81AA5 +:106B50000100D3FA80BDD479010080B50022002164 +:106B6000032000F0CAFA80BD000080B50022002199 +:106B7000002000F0C2FA80BD0000034880B54269E1 +:106B80000121012000F0B9FA80BDD47901003C0058 +:106B9000E41A0100064880B58288002A02D001214B +:106BA000022002E000220021002000F0A9FA80BDAE +:106BB000D479010010B5064C207B216AF9F7FEF963 +:106BC000A16942180121022000F09AFA10BD0000CC +:106BD0003C00201B0100D479010080B50022002177 +:106BE000002000F090FA80BD000038B5FAF741FEB1 +:106BF0000020F0F780F8009000AB1C885D88F8F763 +:106C00003CF9002C02D0FDF79EFA02E00120F6F7D5 +:106C10000AFF3C005C1B0100291C201CFCF7B8FC8F +:106C2000002C02D0F5F7E0FB02E0002000F0DCF9D8 +:106C30000320002C00D102200006000EF2F74EFBCC +:106C400038BD0000034880B5826A0121042000F0AD +:106C50005DFA80BD3C00981B0100D479010080B52D +:106C600030F09BF980BD80B500220021032000F0A8 +:106C700050FA80BD0000034880B54269012101201F +:106C800000F047FA80BDD4790100044880B58288BD +:106C9000002A03D001213C00D41B0100022000F097 +:106CA0003BFA80BDD479010010B5064C207B216AE7 +:106CB000F9F790F9A16942180121022000F02CFA9D +:106CC00010BD0000D479010080B5FCF793FB0121D1 +:106CD0000120FFF797F804203C00101C0100F2F798 +:106CE00006FB80BD000080B52FF06BFB00280AD0AA +:106CF0000120F2F7FCFAFAF72AFC002802D104205E +:106D0000F6F75DF880BD03211620EFF732FB80BD5A +:106D10000000024880B50068EEF73C004C1C010002 +:106D2000C5FB80BDD4790100034880B542690121CB +:106D3000012000F0F7F980BDD479010080B530F072 +:106D400035F980BDB0B5184CAA20005D042819D1D2 +:106D50000125E562256301F093F8A0663C00881CDC +:106D6000010001F0FCFDF2F72EFE00280ED00220FB +:106D7000F2F7C3FAA56001F086F864306060FAF7B4 +:106D80008AFD01210120FFF746F8B0BD0120F2F78E +:106D9000B4FA0020A06000210120FFF73CF83C007D +:106DA000C41C0100F2F766FE0028F1D0FAF776FD68 +:106DB000B0BD0000A46C010080B50020EFF7D6FE46 +:106DC00080BD000080B50120EFF7D0FE80BD00003F +:106DD000AC21095C024A09028918C0318160704700 +:106DE0003C00001D01007075010080B5012804D130 +:106DF00003C90968EEF764FB80BD01211420EFF799 +:106E0000C4FA80BD0000002802D1024840687047E3 +:106E10004068704700005875010010B50024F8F76D +:106E20001CFB3C003C1D0100002804D04030807A4F +:106E3000052800D10124201C10BD000004480021B9 +:106E4000406801E0016340680028FBD17047000002 +:106E500058750100B0B5041C0D1CF7F7A5F84034B7 +:106E6000E572B0BD3C00781D0100F8B5071CF8F7CD +:106E7000FAFA041C04D005211420EFF78CFA28E05C +:106E80000025144928024618301C443006221249B5 +:106E9000EEF72DFB002802D1AC208555341C0135BE +:106EA000032DEED3002C3C00B41D010014D0391C7E +:106EB000201CF8F72BF80949002020601839486891 +:106EC0006060002800D004604C60CA68002A03D0CB +:106ED0000121201CEEF7FEFA201CF8BD70750100A0 +:106EE0005846010080B5F8F73C00F01D0100C1FADA +:106EF000002804D106211420EFF753FA80BDF5F7DE +:106F000016FC80BD000080B5F8F7B3FA80BD10B55F +:106F1000094C2188022903D11420EFF742FA04E03A +:106F2000A3688A009850481C20803C002C1E010059 +:106F3000208801380004000C10BD000058750100C5 +:106F40000B1C111C084A80B51288904206D2DA68E0 +:106F5000C0001218142001F0BBFB80BD03211420D7 +:106F6000EFF722FA80BD0000587501003C00681E52 +:106F70000100084A80B51288904206D2C968C00054 +:106F80000918142001F0DBFB80BD04211420EFF769 +:106F90000EFA80BD0000587501000149C8607047B5 +:106FA00000005875010080B506224430EEF73C0021 +:106FB000A41E0100ABFA002801D1012080BD0020F1 +:106FC00080BD00001CB5144C2069002823D0207817 +:106FD0000A2801D000F0FCF8002060610F484079D9 +:106FE000A070002801D0012815D1FDF7EDFE019019 +:106FF0003C00E01E0100FDF782FE009000AB187916 +:107000001978401A187158795978401A58710198AE +:10701000F2F789FE0520207000F0BFF91CBD7C78D6 +:1070200001000C5A010008B5044A009014320020F7 +:10703000024B3C001C1F01000249F1F77DF908BD1D +:107040002C750100B1A80000B0B5002806D00128B9 +:1070500006D0022807D10C4C012507E00B4C04E0B8 +:107060000A4C2A3C01E0084CB634002500F02CFF05 +:107070000749896E3C00581F01000919091AA142ED +:1070800000D900212A1C162001F031FBB0BD71028D +:1070900000000C050000A46C01008CB500AB8E2133 +:1070A0001980FCF738F901906846FBF7A6FA8CBD09 +:1070B0000000BFB5134A3C00941F010001910D1C54 +:1070C000117C8843041C2143081C1074A0070BD5B5 +:1070D0000E4800900120029000F0FCFE0C49401880 +:1070E00003906846F9F76AFFE0070CD5F1F72CFD2D +:1070F000002803D0074885423C00D01F010000D281 +:107100000190064800906846F9F709FFBFBD78690D +:10711000010081EA000010270000A086010075EA46 +:10712000000010B50A4C606900280ED10120606192 +:10713000A1680748FDF7CBF900213C000C200100B5 +:10714000A068F9F7D1FB01220720044901F0D8FA21 +:1071500010BD00007869010034630100983A000016 +:1071600010B50C1C111C064A002B107003D000280F +:1071700002D1F9F7F5FD10BD201CF9F73C004820BD +:10718000010001FE10BDA0790100B0B50A4C051C3C +:10719000E36A201F0133E3620088002906D0A1685A +:1071A00089182161054A00F0FCFE01E000F0CFFEE5 +:1071B0002577B0BD0000D479010055E300003C0004 +:1071C00084200100011C034880B54088FFF7ECFED5 +:1071D00080BD0000987C0100034880B5C168183864 +:1071E0008088FFF7E1FE80BD707C010080B5002142 +:1071F000162001F0BFFA0121162001F0BBFA80BD74 +:107200003C00C020010010B50B4C20780A2810D09B +:10721000012060610A21132001F0AFFA0A2060709A +:107220002070FDF73CFB0120FDF7E9FB0020FAF799 +:10723000C4F910BD00007C78010010B50C4C002092 +:107240000B493C00FC2001002063E062503988615A +:107250002070084838210C38007A08558121182000 +:1072600001F08EFA2069012802D10020F5F73EFBDB +:1072700010BD0000F46E0100B0B51C4C00252C229E +:10728000011D201C3C00382101009AB0EEF739FAAC +:1072900018492C31081C007A8A69002A13D1022867 +:1072A00003D1A068002820D004E000281DD1606828 +:1072B00000281AD0800288610E4869462438006888 +:1072C000EFF7CBFB11E03C00742101000022022803 +:1072D00003D1A068002809D104E0002808D1606823 +:1072E000002803D18A61FFF7B1FF01E080028861C5 +:1072F000281C1AB0B0BD0000C86E0100F8B50C49DA +:10730000022048600B4900053C00B02101000860E4 +:107310000B4FB868F9687C68451A2E1C04E0A06819 +:107320006168EEF709F92468013DF8D27C60F868DD +:107330008019F860F8BD402007000010070044E302 +:107340000100F8B51F4E041C30693C00EC2101001F +:107350000121F9F799FA1D49600040181038817B26 +:107360001B4A5172C07B10741A4F1B4D0E2C0AD150 +:1073700001220221082001F0F3FB0320FF2141310B +:107380003986142108E00222012108203C0028222D +:10739000010001F0E8FB1249022039861021A97191 +:1073A000E8711048114A00191038C07B002803D03A +:1073B00001215173107301E0002050730021201C43 +:1073C000FDF7E5FD3069F9F708FBF8BD00003C006A +:1073D00064220100407C0100764601000C80070019 +:1073E0003080070000800700FF0100005C570100AB +:1073F000D080070010B5154C144A217800201832AF +:1074000005291DD006291BD0072901D0082906D13E +:107410003C00A022010091680520102900DB062015 +:1074200020700120A178002861700BD00020FAF7AD +:10743000DCF800216078F4F73CFA0A221E211320C0 +:1074400001F07FF910BDD16907201029E8DB082081 +:10745000E6E73C00DC2201007C780100B0B50D1CA1 +:10746000011C041C44310020F6F740FA3034002D92 +:1074700007D00EC80EC408C8103808C4F4F7C4F901 +:10748000B0BD1ECC1EC0B0BDF8B5081C111CF4F771 +:1074900087FA084C3C00182301000025084E084FCD +:1074A00006E0306B002803D035632068EEF755F80E +:1074B00038680028F5D0F8BD00005C5B0100E4FEF0 +:1074C0000100845A010080B50006000E00F007F8A4 +:1074D00080BD80B50A1C3C0054230100232101F02B +:1074E0002BFA80BDB0B50D1C041C122803D301215A +:1074F0002320EEF79BFF0649A000085804E012C8BD +:10750000281CEEF72EF8201C0028F8D1B0BD000092 +:10751000685B0100F8B50E1C3C00902301000025BB +:10752000041C122803D301212320EEF782FF134805 +:10753000A700C45908E02068B04203D103212320EA +:10754000EEF777FF251C6468002CF4D10C4A043A4E +:107550001068002801D0416811603C00CC23010074 +:10756000002804D102212320EEF766FFF8BD002198 +:1075700041600660002D01D06860F7E70149C851FD +:10758000F4E70000685B010070B50E1C051C0024C8 +:10759000122803D301212320EEF74EFF3C000824DC +:1075A00001000D4BAA00985804E00168B14204D0D4 +:1075B000041C40680028F8D170BD0028FCD0002CC5 +:1075C000416801D1995000E061600021034A0160E7 +:1075D000043A11684160106070BD685B01003C00B6 +:1075E00044240100F3B581B0002817D00178FF29A9 +:1075F00014D04578441902348027013C2678013D97 +:10760000BE43301CF8F782FC012181400298014002 +:1076100002D03E43301C2070002DEED1FEBD000094 +:107620003C0080240100104B10B55968411A0F2905 +:107630000DDC0E22D243914209DB1A1C926800290C +:1076400001DD002A03DA00290DDA002A0BDC0433FD +:1076500003C3FDF710FD041CFDF713FD002802D045 +:10766000201C3C00BC240100FFF792FE10BD00006E +:1076700018630100F8B5644C071C6078A178884253 +:107680000FD1081CFDF7CEF8E060042060700A22DC +:107690001E21132001F070F800216078F4F724F91E +:1076A000F8BD04283C00F82401006ED1584EFDF7C7 +:1076B000BCF800907178041C0020052921D201A398 +:1076C0005B5C5B009F440B0F141A02005148514948 +:1076D000604341187D20C000EEF787F811E0872055 +:1076E00060434D4902E03C003425010045204D49EE +:1076F0006043401808E04C48CD2109016043401A1E +:1077000002E0462060438238060648480721007997 +:107710003616081A001900906846FEF75FFD381CFF +:10772000FDF72EFB0099424A3C00702501004900FC +:10773000515A48433949041C8878002801D001284F +:107740001ED13549002803D13A480578042002E0CB +:10775000384845780C203049C968491B0818009002 +:107760006846FEF73EFD009833493C00AC25010019 +:1077700040002031085A2A494443C868A84201D928 +:10778000012500E000252E4821184000EEF7A2F860 +:10779000041C002D03D0FDF7C3FA02E03DE0FDF725 +:1077A000F3FA002F02D125480E3801E03C00E8250D +:1077B000010023480A380168611ACB1C01DB032948 +:1077C00000DD04600168A14201D2013104E0A14260 +:1077D00003D9002901D0013901600168381CFDF787 +:1077E000C0FB104C0A2060700A221320A1683C00E4 +:1077F0002426010000F0D2FF606800F0F7FA0028AC +:1078000000D15FE700F0BAFB1149002340180E4990 +:1078100060601E39C856B042F3D00E70311C002093 +:10782000FFF784FE4EE7FFF715FE4BE77C7801007B +:107830003C006026010060D7FFFF608F0100540B01 +:107840000000C90900008EFEFFFF0C5A0100125A09 +:10785000010020A1070040420F0030B50C4BFE2470 +:107860001B880440C0075D076D0FDB08C00F9C42FA +:107870000BD83C009C260100A218043A9A4207D378 +:107880001A1B895C0122AA40114001D00221084341 +:1078900030BD0000FA60010080B5002803D0011C53 +:1078A0001420F5F7FFFA80BDB0B5041CF7F708FD0A +:1078B000134D00283C00D82601001DD1A00716D585 +:1078C00002208443114801222A624068002813D014 +:1078D000F2F751F900280FD10B48E430807A0128E3 +:1078E00000D00022111C0120F2F7A5F904E000F0FD +:1078F0004EFBE861F2F73C00142701006BF9A96A1E +:10790000002902D0201CEDF75CFEB0BD606C0100C8 +:10791000B05701002048B0B58168012904D1007832 +:10792000002801D1FDF772FD1B4D803D2C1C7034E9 +:1079300020780338052818D23C005027010001A305 +:107940001B5C5B009F44041527272700FBF7F1FF12 +:10795000607B011CFF3161730028F7D10420207087 +:10796000A889F8F7DAF9011C00220F2000F025FFA2 +:10797000B0BDEFF7CEFF6A21495B3C008C270100C8 +:1079800088420BD0E889F8F7CBF9011C00230022CC +:107990000F2000F0F7FF07202070B0BDFDF73AFE82 +:1079A000B0BD000084660100F0B585B0041C038002 +:1079B000180C60800D1C5178107809023C00C82713 +:1079C00001004840A080D178907809024840E080CA +:1079D0005179107909024840208168461A491422D9 +:1079E000EDF7E3FE00230020D907C90F8C464200C3 +:1079F0005607760F6146891949006E5C49193C00AB +:107A00000428010049786F4609024E4081007958E8 +:107A10000F4F4900615A01304E403106360A760058 +:107A2000C90D795AF61901277F02F6193688714077 +:107A3000A65A8919A1520528DCDB2089C018013318 +:107A40003C0040280100082B2081D2DB05B0F0BDAE +:107A50000000D8560100D8520100F0B5051C0C1CDE +:107A60001E1C002089B04100535A013006AF7B52E2 +:107A70000528F8DB108900AB3A498019588468461C +:107A800018223C007C280100EDF798FE0020410000 +:107A90000A195278635C6F46120253408200BA584A +:107AA00006AF5200BA5A314F013053401A061B0A32 +:107AB0005B00D20DBA5ADB1901277F02DB191B8844 +:107AC0005A4006AB3C00B82801005B5AD21806ABFE +:107AD0005A520628DEDB617B207B00AB090248405E +:107AE000598C48404108C0034840198B40181883FE +:107AF000E17BA07B09024840198B48404108C00344 +:107B00004840598B40183C00F4280100588302205B +:107B1000410006AA8A18203AD28B01305308D203BA +:107B20005A4006AB5B5AD21806AB5A520628EFDB16 +:107B3000300A28707004400E202108436870AE702F +:107B40006178207800AB09023C00302901004840F0 +:107B5000598C4840C005000EE8700020410006AA7C +:107B6000535A4A190130137106AB595A090A517117 +:107B70000628F3DB09B0F0BD0000EC560100D85236 +:107B80000100F0B54668051C60303C006C2901001E +:107B900085B0049060E068680C2107690020EEF76A +:107BA0002DFE7061018904390904090C0181706995 +:107BB000006840180421EEF721FEF0617069202171 +:107BC000046804980422407B800108433C00A829F3 +:107BD0000100E07028694089A07028694089000A86 +:107BE000207029690C31A018EDF79BFD2078202129 +:107BF0004006400E0843607028690A300188013150 +:107C00000904090C018004D128690C3001683C008A +:107C1000E4290100013101603562617920790902AE +:107C20004018A17909044018E17909064318009326 +:107C3000A0782178090240180404240C1020EEF7E3 +:107C400013FFB06128693A1C0168009B01A80A3241 +:107C50003C00202A0100FFF7C8FE2869231C0168A8 +:107C6000B06901AAFFF711FF3668002E9CD10349C5 +:107C700004486A68F7F763FB05B0F0BD0000FD6BD0 +:107C80000000A06A0100013807494000095C002992 +:107C900006D03C005C2A010004491C39085C00281D +:107CA00001D001207047002070470000E6780100F5 +:107CB000FEB5051C002002901348171C00680C1C20 +:107CC0008678301CFDF728FA002801D10298FEBD05 +:107CD000002D08D13C00982A0100206800AB1871E3 +:107CE00060685871A068987103203880291C301C86 +:107CF00001AA00F00EF8002DECD000AB197921603C +:107D0000597961609979A1600C213980E2E7F86BBB +:107D10000100F8B5151C3C00D42A0100421E0138B0 +:107D200047003F181F483E18002906D001240322AF +:107D3000311C281CEDF704FD32E06878012400288E +:107D400005D02978081801380E2800D90024002C05 +:107D500026D0002A07D12A213C00102B010012480E +:107D6000EDF79FFC1C211148EDF79BFC0F48032207 +:107D7000291C301CEDF7E7FC0C487178C05DB27827 +:107D800000290ED0002A0CD001224318084D06E02D +:107D90004100491910398A73B7783C004C2B010017 +:107DA0000130CF738342F6D8FEF760F8201CF8BD8F +:107DB000EB620100CA78010070B5051C1C48002365 +:107DC000C056431C32D1A87AF8F70CF900260028D7 +:107DD000184C08D0E869E16B00290BD13C00882BD6 +:107DE000010066630121E163A66306E0A869E16B17 +:107DF000002902D06663A663E663A16B0131A1632B +:107E0000820301D50E4A1043E26B002A00D04042A3 +:107E1000626B1018606308290BD1002801DD3C005B +:107E2000C42B0100012003E0002803DA0020C04336 +:107E3000EFF762FE6663A66370BD0000F46B01009D +:107E4000846A01000000FEFF0C21054A41438918A5 +:107E500080B58978002901D1F3F7F2FA80BD0000DE +:107E60003C00002C0100607B010080B5011C00205B +:107E7000F7F703FA80BD80B5011C0120F7F7FDF983 +:107E800080BD02498968401AC00F70470000000198 +:107E9000070002498968081AC017013070470001BD +:107EA00007003C003C2C010005494A6801231A43A5 +:107EB0004A608A681018886048689843486070472C +:107EC0000001070010B5154B00210A019A58002A3D +:107ED00017D101240A019C50D21810730023537348 +:107EE000022301283C00782C01000E4A05D1C8006D +:107EF0008018103002789A4304E0C80080181030CF +:107F000002781A43027002E001310829E0DB0829F7 +:107F100004D101219920EEF7FEFA03490804000C70 +:107F200010BDAC7301003C00B42C010000600700E0 +:107F3000FFFF0000F7B5194F194E0C1CC100C919FD +:107F4000B268103181B0013A4A600B781D1C0D22D5 +:107F500093430B70012282403A73124B0001039A43 +:107F6000C0188260104A101C3C00F02C0100203028 +:107F7000877900AB1F70C0795870B0680330002358 +:107F8000261A01D5041C01234C600D70002B04D06F +:107F9000201CFFF78AFF0028FAD000AB1888D08495 +:107FA000FFBD00600700000107003C002C2D010010 +:107FB000AC7301000010070030B50020C0430B4C2B +:107FC000094B0022D10009190D7CED0707D549693D +:107FD0009D68491B00D50021814200D2081C013256 +:107FE000082AEFDB30BD0000000107003C00682DCF +:107FF000010000600700B0B508280BD2084D04014D +:108000002959002904D000F04AF800202851B0BDB9 +:10801000022100E003219920EEF789FAB0BDAC738C +:108020000100034900014018417B082211433C0034 +:10803000A42D010041737047AC73010001488068B2 +:10804000704700000001070070B50B4E094D00227B +:10805000D0008419207CC00707D56069FFF726FF90 +:10806000002802D0A868323060610132082AEFDBB4 +:108070003C00E02D010070BD000000010700006021 +:108080000700024AC00080180174704700000060B9 +:1080900007000449C0004118087C0823021C9A43C9 +:1080A0000A74704700000060070070B5082817D2F6 +:1080B0000E493C001C2E01008A680E4D013AC10099 +:1080C00049194A610C4B9A7910310C780D26B4434A +:1080D0000C700121814029739A71094A07490001F6 +:1080E0008018416070BD05219920EEF729FA70BD16 +:1080F000000107003C00582E01000060070020101E +:108100000700D1750000AC730100F8B59E461A4B0C +:1081100094469B681A4CC2001219013B5361151C0E +:10812000184CA6792A1C103213780D27BB43137004 +:108130000127124B87403C00942E01001F73A6714B +:10814000124E0001801963464360734683601378C2 +:10815000407BA679012718433843143500AB1E70C5 +:10816000E4795C70064B9B680333CC1A00D5191C6C +:108170002960107000AB18883C00D02E0100034C21 +:10818000203CE084F8BD00010700006007002010DB +:108190000700AC73010000B5011CFFF75EFF421839 +:1081A000101CFFF792FE0028FAD000BD0000891ACB +:1081B000401A9918884201D801203C000C2F010078 +:1081C0007047002070470000F8B50F1C041C002801 +:1081D00001D1EEF7EFF9211C0120FFF719FA412038 +:1081E000005D002801D1002504E0022801D1052509 +:1081F00000E00125E068EEF729FBA66B3C00482F64 +:108200000100002E10D0002F06D02F20025D206A22 +:10821000416B281CEDF744FAA069002801D0EEF765 +:1082200046FC206AEEF743FC201CEEF740FC301CB5 +:10823000F8BDB0B5041CC06B002809D020693C0013 +:10824000842F0100008BEEF755F9002803D0211C84 +:108250000620FFF7E3F9084D201CA96DFFF7BAFFD0 +:10826000002807D0E8680130E860286A01382862F1 +:10827000FCF778F8B0BD0000C469010010B5064CE9 +:108280003C00C02F0100E16DFFF7A7FF002804D0DC +:10829000E0690138E061FCF768F810BD0000C469CE +:1082A00001000C230C495843401810B54468A168DC +:1082B000002902D0201CEDF7F3F9E06B002808D06C +:1082C00020693C00FC2F0100008BEEF719F9002813 +:1082D00002D0201CF9F726F910BD0000607B0100D8 +:1082E000F8B522494868800006D40120400708609C +:1082F0004A69920000D448601D4F787EC306012071 +:10830000021CDB0E3C00383001009A400A6079699B +:108310008C688C602107890F09D0210704D50B21B7 +:108320009E20EEF728F900E078640C208443124880 +:108330003D68065D6C682C3406E0A0680068A060AB +:10834000E968281CEDF73C0074300100B2F9013EE9 +:10835000F6D2A068806800280DD0408900280AD095 +:10836000786C002807D178698068800703D10C21D8 +:108370009E20EEF703F9F8BD00100700CC6D010058 +:10838000B4440100094980B53C00B0300100087ECA +:10839000C206D20E01209040074A106000200A69F0 +:1083A000C04390600868243106C90369EDF786F977 +:1083B00080BDCC6D010000100700F8B54468061CB4 +:1083C0002C3420680D1C806800903C00EC300100CB +:1083D000002800D0C5602068006820604068002840 +:1083E00003D00A219E20EEF7CFF820684560281CB4 +:1083F00002E000224260081CC1680029F9D17168BE +:1084000060270B1C40339C469B78CA7E3C00283179 +:1084100001005B011207120F3B401A438B8FFF27AD +:108420003F041B043B401A4390231A4342606346B7 +:108430009A780132D207D20F9A70896BC160216895 +:1084400088600098002801D00098C5600A4F3C0061 +:1084500064310100BD79A06900280CD00022A2611E +:1084600074686069EFF72EFFE06A616940684860F0 +:10847000616901200860BD71F8BD0000201007008F +:10848000FEB544680F1C01942C34201C123002905D +:108490003C00A03101002CE00C20EEF700FB051C95 +:1084A000606800281DD10298002100900020EEF79E +:1084B0000EFA061C00980421EEF709FA011C019837 +:1084C000C07E0007000FD03070600198C07E0007AA +:1084D000000F3C00DC310100F0304860301CEEF74A +:1084E00019F96560E66001E0206805606068286051 +:1084F000256000206860A860381CFF300006000E70 +:10850000391C071C0029CAD16068A060FEBD0000AC +:10851000FFB5051C3C0018320100081C002681B084 +:10852000F4F72FFE041C02D06068FF2801D1062654 +:1085300028E0211C20310A78012A01D1032621E0FC +:10854000012725600F7011C51D48083D686103981B +:108550006A46E86004983C005432010028611A48D9 +:10856000A8611A48E8611A4828621A486862207EA1 +:10857000A168EDF7B3FE002806D1607EE1686A4687 +:10858000EDF7ACFE002807D00426311C9E20EEF744 +:108590000DF8301C05B0F0BD3C00903201006A4679 +:1085A0000F491D20EDF79DFE01210D48490701608F +:1085B000227E3B1CD206D20E93404360627ED206DE +:1085C000D20E974047604160E6E731330100D9326F +:1085D000010091310100DD3001003C00CC3201008E +:1085E000FD320100713301000010070042682C3297 +:1085F000506843680B6081684B890B818368002158 +:10860000D9604160816000685060002070470000C0 +:1086100070B54268FF269187106B0C043C0008334C +:108620000100051C3604344043685968B1432143B6 +:1086300059600068A842F7D1106B516940684860E2 +:1086400051690120086070BD0000B0B54368081C86 +:1086500059629A6200250AE04581C4682A1C3C00E0 +:1086600044330100002C03D19A7E1207120F1032FE +:108670004260201C0028F2D118694160196901206C +:10868000086002480068EDF737F8B0BD5C5B010098 +:1086900001200549400780B58860044801680D2025 +:1086A0003C0080330100FEF7E6FF80BD00000010B3 +:1086B0000700C4600100F8B50E4F0C4E002448209E +:1086C0006043C5194821281CEDF77BF81C20604346 +:1086D0008119281D1C22EDF7FEF81C23E8560549D8 +:1086E000FBF73C00BC330100CDF80134012CE9D389 +:1086F000F8BD0000B8440100CC6D01001532010046 +:10870000FFB5051C0A30061C81B0F2F7DDF8184FE2 +:10871000041C3988EFF7BCFC3288786802807288C4 +:10872000023002803C00F8330100B188124E4180D3 +:10873000288808364005002805DA6988039A201C35 +:10874000F7F701FD00E000207080F8F75EFC0121E2 +:1087500009030028308801D0884300E008433080B6 +:108760000548002200213C00343401001430EFF7AA +:1087700065FC201CF9F774F805B0F0BDB07A010073 +:1087800010B50E4C6068F8F795F92068006A00286B +:1087900013D1F8F7BFFC002808D021680120086237 +:1087A0001F210022832000F03C00703401009FF95B +:1087B00002E06068F8F721FAFFF797FC216808618A +:1087C00010BD147A0100FEB51B4E0F1C1D1C141C9D +:1087D000B060081CF7F72BFFB08034733562381C8B +:1087E00001AA02A9F7F725FF00AB3C00AC34010059 +:1087F000187A012818D118790B2808D1307F242342 +:108800000F49584340188068ECF788FFFEBD00AB65 +:1088100018790A2808D1F7F739FD071C291C201CF4 +:10882000F7F716FD3818B080307F24233C00E83479 +:1088300001000449584340184068ECF772FFE8E72C +:108840000000D479010094460100B0B5FFF753FC55 +:10885000041CFBF7FCFA0C4D29680969091B0C1A6A +:1088600002211F2000F08BF8142C06DD02223C00B0 +:1088700024350100211C1F2000F050F80120B0BD5C +:1088800029680120896A0029F9D00020B0BD0000C4 +:10889000147A0100F8B51A4D071CAE790121194C64 +:1088A00000202268002A14D1AE71A268D06806CADE +:1088B0003C0060350100ECF73CFFAE790021134A23 +:1088C000506901305061A0688068A0606268904281 +:1088D00006D10120206003E001300C340328E3DBE3 +:1088E000002F08D100290AD00A484068002806D085 +:1088F000FAF73C009C350100F5FF03E0012F03D09F +:10890000002901D1AE71CEE7AE71F8BD201007008D +:1089100018D90100A8600100705D010080B5012335 +:10892000F5F77CF880BD000080B50023F5F776F8F8 +:1089300080BD00003C00D8350100F8B5134B002481 +:108940001B8898421BD2114BC000C01845680668AE +:108950002868002817D10E4FA8684368B34209D190 +:10896000C3688B4206D10368934201D0531C01D1E6 +:108970000124476080683C00143601006B68834224 +:10898000EED103E001218020EDF740FE201CF8BD70 +:1089900056570100845D010029E30000F8B5174F28 +:1089A0000A1CBE79164D00236C6807E021689142CD +:1089B00002D12179814204D03C0050360100231CB1 +:1089C000E468002CF5D117E0002C15D0002B0DD158 +:1089D000E3680D486B600088002B02D1FFF7D1FBE4 +:1089E00006E00A4A9968FFF7F6FB01E0E068D86004 +:1089F0002868E0602C6002E001213C008C36010018 +:108A0000FFF7A4FFBE71F8BD201007007C5D0100D8 +:108A10002C7401002138010070B5094EB579F9F7C1 +:108A2000AFFE041C09D0201CEDF70CFB05498A6839 +:108A300080188860086801300860B5713C00C8364D +:108A40000100201C70BD20100700A860010009482B +:108A500080B54068021C0BE00169002907D0824202 +:108A600004D0816805480088FFF7E5FA80BDC0683A +:108A70000028F1D180BD7C5D01002C7401003C0018 +:108A800004370100054880B54268002A04D0044834 +:108A900000889168FFF7D2FA80BD00007C5D01007C +:108AA0002C74010005480168002904D0C068002822 +:108AB00001D00120704700207047000018D9010044 +:108AC0003C004037010080B5F6F7D1FA80BD131C99 +:108AD0000D4AB0B5128890420FD203290DD20A4A2E +:108AE000C00014580A4DAC4207D113500C2359430F +:108AF000084BC91880184160B0BD02218020EDF7F5 +:108B000094FD3C007C370100B0BD000056570100C9 +:108B1000845D010009A0000018D90100F8B50F1C00 +:108B20001E1C151C041C111CFFF74AFF331C2A1CB9 +:108B3000391C201CF4F78AFFF8BD0000F7B59446F5 +:108B4000FF2921D03C00B837010015480088814238 +:108B500021D2144A154EC8008518B4796868026895 +:108B6000002A03D1031D0CCB9A4211D043689A68A6 +:108B700042600E4A176901371761B4710022026022 +:108B80000098D86060463C00F43701001860197402 +:108B900028685860FEBDB471062100E007218020DE +:108BA000EDF74CFDF6E7000056570100845D01002B +:108BB00020100700A8600100B0B5144D6C68002CAF +:108BC00001D0844204D00C213C00303801008020C8 +:108BD000EDF737FDB0BDFFF7B8FAA168401A0D49AF +:108BE000884203DA10218020EDF72BFD21792268DD +:108BF0000120FFF7ACFFE3686B60002B05D007484E +:108C0000064A00889968FFF7FEFA3C006C380100BC +:108C10002868E0602C60B0BD7C5D010018FCFFFF9F +:108C2000213801002C740100B0B5154C0820211C1E +:108C300080310870134A4104116013480068134DD5 +:108C40006B69184001D1102000E000203C00A838DA +:108C50000100A8235B5D1843231C40331873516047 +:108C600020788008800020700020FFF712FBFFF7BB +:108C700072FA643028660138A06120780321084325 +:108C80002070B0BD000000900700001007003C00FD +:108C9000E438010010000700A46C010038B50A4C4C +:108CA000211C20318A7900AB1A70C979074D59709F +:108CB0006978884203D1F8F713FCFF20687000AB95 +:108CC0001888E08438BD0000001007004C7B0100CC +:108CD0003C0020390100F8B50B1C061C041D7F3335 +:108CE00014D033685D18356023881F180623FF569B +:108CF000EB1B336023881818817120880130000431 +:108D0000000C2080904201D300202080101C31688C +:108D1000ECF73C005C3901006DFEF8BD0E490A7CA1 +:108D200083781A430A74427883789A430B7C93437E +:108D30000B748A7C43781A438A748A7C03789A433A +:108D40008A74027843781A434B7C1A434A744A7CEB +:108D5000C07882433C00983901004A747047100083 +:108D60000700B0B5064D00242006000EEDF7F7F819 +:108D7000A100695808710134042CF5DBB0BD107BEB +:108D800001000B480C497D234269DB00002AC86BB7 +:108D900007D0C0181A013C00D43901009042C863C2 +:108DA00001D90748C8637047FF38F538C86398424F +:108DB000F9D2CB6370470000F4680100447D0100E4 +:108DC0007017000070B50D1C041C161CFBF7F6FA9A +:108DD000B0432843011C201C3C00103A010000F065 +:108DE000CCFA70BD000080B50B4A002909D00229D9 +:108DF0000FD1011C0848D2783830FFF778FF0649B8 +:108E000006E0011C044812792030FFF770FF034987 +:108E1000086080BD0000AC7C01003C004C3A0100C1 +:108E2000C8670100C467010080B50B4A002909D05A +:108E300002290FD1011C084852796830FFF75AFF08 +:108E4000064906E0011C044892795030FFF752FFB2 +:108E50000349086080BD0000AC7C01003C00883AFA +:108E60000100D0670100CC67010008B50421009122 +:108E7000817E4368032906D1011C0C3101206A461A +:108E8000ECF79AFC08BD1968C160FBE7000010B55B +:108E9000031C0020084C0021CA00121992783C00E3 +:108EA000C43A01009A4203D1C8000019406810BDBD +:108EB0000131090609160629F1DB10BDCC5A010063 +:108EC000F8B50F1C161C0025FEF78EF9041C0AD0FD +:108ED0004A20005D052806D1381CF1F781FE0028E4 +:108EE0003C00003B010001D001253460281CF8BD86 +:108EF000000070B50D1C161C0024FEF778F9002840 +:108F00000BD04A21095C052907D10169002904D148 +:108F10003060F1F704FD01242860201C70BDF8B515 +:108F2000061C3C003C3B010000250C1C081CF1F712 +:108F30005DFE002801D0002105E0201CF1F774FE41 +:108F4000002814D00121301CF4F780FB0090002889 +:108F50000DD0084F01250622311C381CECF7C2FC4D +:108F60000622211C3C00783B0100B818ECF7BDFC40 +:108F70000098F860281CF8BD0000707C01000021FA +:108F8000002806D04278072A03D1C079012800D1F1 +:108F90000121081C7047F8B5051C0027164EF1F793 +:108FA00028FE002807D03C00B43B0100F1F7C0FBCD +:108FB000002810D10024F1F7BBFC06E0F1F702FE17 +:108FC000002808D00124F1F799FD011C0622301C6D +:108FD000ECF78EFC0127002F0DD0211C281CF4F784 +:108FE0003BFB011C054806223C00F03B0100063813 +:108FF000C160291CECF77FFC0120F8BD0020FCE7D4 +:109000000000767C0100F0B5071C006802210468AE +:10901000786987B00140002500290591744E12D06F +:1090200022880121130502D4C0073C002C3C01001A +:10903000C11701316F480029006801D0013004E0F8 +:109040001106890E2D2901D1033030602088800758 +:1090500067D17869C00764D503AA04A9201CF7F773 +:109060004BFB00AB187C002807D0187C3C00683C08 +:109070000100022858D1187B4007400F042853D81C +:1090800020790599C007C01701300290002902D14C +:109090000298002848D10599002904D020880005AD +:1090A00001D400203060C020EDF7CBFD051C3C0052 +:1090B000A43C0100201C0A300690FEF7ADF8061C07 +:1090C000281C08302388021D111DDB0506D5069BD0 +:1090D0000360201C10301060201D0EE0231D136063 +:1090E0002288920505D5221C10320260069B0B6077 +:1090F0003C00E03C010004E0069B0360201C1030B3 +:1091000008602869F1F743FC002808D0012812D034 +:10911000022858D100AB187C002854D112E000ABD3 +:10912000187C02280BD1002E4DD04B20805D0228E8 +:1091300049D13C001C3D010007E063E000AB187C16 +:10914000002802D1381CFEF71BFF2088410430485C +:1091500011D5002E52D000AB197C002926D00299DF +:10916000002902D0B06A007800E0007801281DD004 +:10917000032843D13C00583D01001AE000AB197CA4 +:10918000022916D1197B042913D0197B0C2910D080 +:109190002249096800290CD0002E0AD00299002922 +:1091A00002D0B06A007800E00078012829D00328B6 +:1091B00027D02822391C3C00943D0100281C88300F +:1091C000ECF70AFC00AB197C281C80300171197B7C +:1091D00041716C606E611BE00599002914D0114843 +:1091E000846C002C10D00022002E04D04036B07ABF +:1091F000052800D1012200923C00D03D0100F87A00 +:10920000BA7A2969C307DB0F0698ECF700FB281C24 +:10921000EDF707FD0025281C07B0F0BD0000C46A6B +:1092200001006861010028610100C469010080B586 +:109230000220FFF770F880BD00003C000C3E0100EA +:10924000B0B51D4D012817D0A22806D0A32803D100 +:1092500001211520FFF708FCB0BD002901D11748F6 +:1092600002E07D20C000484300230122011C286049 +:109270001520FFF7A7FCB0BD012904D03C00483EF3 +:1092800001000229FAD100F02AF8B0BD6C68F5F7A8 +:10929000DEFCFEF7A8FF6860002C09D029680A23CD +:1092A0005943001B884203D901211520EDF717FA15 +:1092B000012215202968FFF7A6FBB0BD00003C0085 +:1092C000843E0100047901000087930301200449D2 +:1092D000400380B5086003211520EDF703FA80BD37 +:1092E00000100700074880B5BE210173017A1022E3 +:1092F000114301720023022215200349FFF768FC85 +:109300003C00C03E010080BD000000030700809FBC +:10931000D50080B5002803D00A1C1521A22002E048 +:1093200000221521A320FFF766FC80BD000010B5C8 +:1093300000F019F80A48BE210173037A1022934302 +:1093400001243C00FC3E0100234303720173017AB7 +:109350009143202211430172022215200249FFF796 +:109360005BFB10BD00030700809FD50080B5022184 +:109370001520FFF785FB0448BE210173017A1122F5 +:10938000914301723C00383F010080BD00000003A2 +:109390000700F8B5061C051C60360027446822E06B +:1093A00008210020EDF741FB6061018904390904BF +:1093B000090C01816069006840180421EDF735FB54 +:1093C000E0616069717B3C00743F010000688901C5 +:1093D000C17029690C310322ECF7BAFA28690C3004 +:1093E0000168013101602562A7612468002CDAD18F +:1093F000024903486A68F6F7B3F8F8BDFD6B000050 +:10940000A06A010080B500073C00B03F01000009E0 +:109410000902090A084302490860FFF720FF80BDDE +:1094200000006000070008001400C8000000E80306 +:10943000000010001400C8000000E80300001C0039 +:109440001400C8000000E80300003C00EC3F0100ED +:109450002401070032000000E8030000400601007C +:109460000600000007000000416E62697E64616FC3 +:109470006F00000052656C6561736520365F375F71 +:109480003135204275696C6420323A353C00284001 +:1094900001003239382053657020303420323030AA +:1094A000392031373A31333A3230202848573D3469 +:1094B0003A332C4254434F455829000000003200F3 +:1094C0001C00102030405060FFFFFFFFFFFF3C00FA +:1094D00064400100000000000100000001000000E5 +:1094E00000000000E8037000000000000100000020 +:1094F0000000000002000000D0073800000000005B +:109500000100000001000000040000007C151500AF +:109510003C00A0400100000000000100000001002C +:1095200000000B00000070171E0001000000010089 +:109530000000000000000C000000282316000100BD +:109540000000010000000000000012000000F82AE6 +:109550000B003C00DC4001000000000001000000A6 +:109560000100000016000000E02E120001000000C3 +:1095700001000000000000001800000050460E002E +:1095800001000000010000000000000024000000B5 +:10959000F05508003C0018410100010000000000E7 +:1095A0000000010000002C000000C05D0E00010062 +:1095B0000000010000000000000030000000E88012 +:1095C0000400010000000000000001000000420053 +:1095D0000000A08C0A003C00544101000100000082 +:1095E00001000000000000004800000080BB0A00ED +:1095F0000100000001000000000000006000000009 +:10960000F0D20A000100000001000000000000008C +:109610006C000000C00090003C0090410100C000C0 +:109620009000C00090001400100014001000C00052 +:1096300090001400100014001000C00090001400EE +:109640001000C0009000140010001400100014005E +:109650001000C0009000600048003C00CC410100B8 +:109660006000480014001000140010006000480062 +:1096700014001000140010006000480014001000D6 +:1096800060004800140010001400100014001000C6 +:10969000020004010B020C03120416053C000842F0 +:1096A00001001806000E000E2407000E2C083009D9 +:1096B000000E000E000E420A000E480B000E000EB7 +:1096C000000E000E000E600C000E000E6C0D00006F +:1096D00000000000000000000080C0FFFFFF3C0011 +:1096E00044420100B6FFFFFFD3FFFFFFC9FFFFFFAA +:1096F000FFFFFF7F000000000000000000000000EE +:1097000000000000000000000000000051B0000058 +:109710000C00000051B000000C00000059AF000028 +:109720003C008042010000000000A5AF00000000E6 +:1097300000004DAF00000600000000000000000027 +:10974000000045B00000060000000000000000001E +:109750000000D5AF000000000000ADB00000000028 +:1097600000003C00BC42010095DB0000000000004E +:1097700095DB00000000000099B000000C00000024 +:1097800000000000000000000000000000000000D9 +:1097900000000000000000000000000000000000C9 +:1097A000000000003C00F8420100000000002D17FE +:1097B00001003517010021170100D99C000049174D +:1097C00001003D170100D19C0000D19C00001D1A32 +:1097D0000100D19C0000011A0100311A0100251A74 +:1097E00001003D1701003C0034430100811A0100D3 +:1097F000D19C000079170100D99C00005D17010081 +:10980000A11701009517010081170100211801001F +:10981000F5170100000008000C000000100008000F +:1098200008000000010000003C007043010002003D +:109830000000040000000800000010000000191CD7 +:1098400001008941000089410000854100008541F7 +:1098500000008541000085410000894100008541EC +:10986000000085410000351B01003C00AC430100B5 +:109870009D1B0100011C010089410000894100007D +:109880008941000085410000651801002918010088 +:1098900039180100BD180100894100004D18010070 +:1098A000A518010085410000011901003C00E843B2 +:1098B0000100D9180100ED180100151901008941B6 +:1098C0000000894100008941000085410000894174 +:1098D000000089410000691C010089410000711CE1 +:1098E00001008941000089410000FDDB00003C00CF +:1098F000244401001D7C000000008000F5DA000017 +:1099000014008100FDDD000008008200C5DD0000BC +:109910003800830045DC00001000840099DC000062 +:109920000C00860039DC00001000880011DE000009 +:109930003C006044010010008A0035DD00000C008E +:109940008C00ADDF00001C008E00C9DE0000380076 +:109950008F00EDDC00003800900075DF00000C0087 +:1099600091008DDC00000C009300B9DD00000C00BC +:1099700094003C009C44010000080808100C0C0CEA +:10998000080C080C080C0808080814080814003013 +:109990000001010200000000AD300100153001009F +:1099A00020300700303007000607020300000000E7 +:1099B000000000003C00D8440100FFFFFF00FFFF53 +:1099C000FF00FFFFFF000000000080C90200943F7D +:1099D0000300E08B5A00053A8500C8F20600F84CF7 +:1099E000560020A73D00B74A0000B74A000000001B +:1099F0000000000000003C001445010001010102CC +:109A00000202030303040404050600002D7C000089 +:109A10000000FF00FD9500000800FF00ED9700002A +:109A200008008200CD9500000C0083004D960000D8 +:109A30000C0085002D7C00003C005045010000001A +:109A4000FF002D7C00000000FF002D7C00000000C6 +:109A5000FF003D9600000C008900D9970000080027 +:109A60008A00919500000800FF002D7C0000000096 +:109A7000FF002D7C00000000FF003C008C45010031 +:109A8000F997000008008D002D7C00000000FF0009 +:109A90002D7C00000000FF00C997000030009000FE +:109AA0001195000018009100159600000800920022 +:109AB000599500003C009300299600003C00C845E1 +:109AC000010008009400A19500000800950081970E +:109AD00000000C0096006D97000010009800000038 +:109AE00000000000FF00000000000000FF00000870 +:109AF00008080808000000100800000800103C00DA +:109B000004460100080C0C0C0C1C0C0C0800000096 +:109B10000D8B0000F58A0000E98A0000018B00002F +:109B200014080C0C100C0000B1980000800000001C +:109B300019990000810000003D7C000080000000B9 +:109B40003C00404601003D99000082000000099958 +:109B50000000830000003D7C000085000000000044 +:109B6000000000000102020104040808813780F3AC +:109B7000AAAA03000000AAAA030000F86DA96DA913 +:109B80006EA93C007C4601006EA86EA86EA86FA767 +:109B90006FA76FA76FA66FA670A670A570A4000030 +:109BA000B51B0100C91B0100E11B0100E59C000081 +:109BB000A51B0100E59C0000891B0100D59C00004D +:109BC000D59C00003C00B8460100D11A0100E51AFE +:109BD0000100051B0100251B0100B11A0100E59CD5 +:109BE00000009D1A0100D59C0000C11A01008919CE +:109BF0000100A9190100C9190100F1190100791921 +:109C00000100E59C00003C00F446010065190100DC +:109C1000D59C0000D59C0000D59C0000D59C000080 +:109C2000D59C0000D59C0000D59C0000551C01006F +:109C3000451C0100451C0100D59C0000D59C00007E +:109C4000D59C0000D59C00003C0030470100D59C0D +:109C5000000055190100E59C00004119010031196F +:109C60000100D59C000002050A00000002040A0061 +:109C70000000C5200000212100002521000039211D +:109C8000000049210000552100003C006C47010004 +:109C900061210000ED2100000D22000021220000C2 +:109CA0003D22000049220000C5220000E122000000 +:109CB000F5220000E91F0000E91F0000E91F000075 +:109CC000E91F0000E91F0000112300003C00A84725 +:109CD00001001D23000089230000A5230000B923F3 +:109CE0000000112000001D2000006D2000008D20CC +:109CF0000000B92000000001020303050606080960 +:109D000008090909C480CA8080808080D0803C0016 +:109D1000E4470100D6D9DCDFE2808080E5E880807E +:109D20008080EBEEF1F4F7FAFD0001000200030081 +:109D30000400050006000700080009000A000B00E7 +:109D40000C000E00100011001300160018001B007C +:109D50003C00204801001E00220026002B0030009D +:109D600036003C0044004C0055005F006B0078005A +:109D700086009700A900BE00D500EF00FF7F0C0011 +:109D8000060002000000FEFFFCFFFBFFFAFFF9FFE8 +:109D9000F8FF3C005C480100F7FFF6FFF5FFF4FF19 +:109DA000F3FFF2FFF1FFF0FFEFFFEEFFEDFFECFF3F +:109DB000EBFFEAFFE9FFE8FFE7FFE6FFE5FFE4FF6F +:109DC000E3FFE2FFE1FFE0FFDFFFDEFFDDFFDCFF9F +:109DD000DCFF00003C00984801000000000000008B +:109DE0000000B17C4100115A40E2B27C4100055AAA +:109DF00040E2AF7C4100F95940E2B07C4100ED59AE +:109E000040E2246701000E0000E35C6701000E00E1 +:109E100000E30A6101003C00D4480100010000E3B6 +:109E20000E610100010000E3326701000E0000E353 +:109E30006A6701000E0000E30B610100010000E30E +:109E40000F610100010000E3406701000E0000E324 +:109E5000786701000E0000E33C00104901000C612E +:109E60000100010000E310610100010000E34E6702 +:109E700001000E0000E3866701000E0000E30D61A3 +:109E80000100010000E311610100010000E3C0488E +:109E900001000400000AE04801003C004C490100B8 +:109EA0000400000A004901000400000A20490100E2 +:109EB0000400000A18670100040000E2287501018F +:109EC0007DA940E22C750100040000E2207501002C +:109ED000040000E244750100040000E23C008849EF +:109EE0000100F0590100040000E200000000000041 +:109EF00000000000000000000000247501000400C4 +:109F000000E2B87C0100040000E28DA9000001001D +:109F100000DA1D750100010000E2C46701003C0089 +:109F2000C4490100040000E200000000000000003D +:109F3000215900000E0000D9C8670100040000E2AA +:109F4000CC670100040000E2D0670100040000E2D9 +:109F500065D90000040000DAA5D90000040000DA89 +:109F60003C00004A010001590000010000DA32679C +:109F700001000E0000E36A6701000E0000E31159C2 +:109F80000000010000DA0000000000000000B048FE +:109F900001000200000AA04801000200000A404936 +:109FA00001003C003C4A01000500000A684901002C +:109FB0000900000A6C570100040000E2386101004A +:109FC000040000E20000000000000000AC6E010090 +:109FD000040000E2B06E0100040000E270570100CE +:109FE000040000E23C00784A0100E8590100080042 +:109FF00000E3DC5801144DFD40E32C59011439FDF8 +:10A0000040E3C05801000E0000E300000000000023 +:10A0100000000000000000000000647341003D2EBD +:10A0200044E27C5901143C00B44A01009D2F44E3F2 +:10A030005C5701000E0000E2792E0400010000DBF5 +:10A04000A0580100020000E3A2580100020000E352 +:10A05000A05701000E0000E3D1880100010000DAE2 +:10A060001D890100040000DA3C00F04A01009588D7 +:10A070000100040000DB312F04000E0000D9C52EC2 +:10A0800004000E0000D9686C010115D540E2C057EC +:10A090000100080000E3C8570100340000E39C6C95 +:10A0A0000100080000E3B05801033C002C4B010004 +:10A0B000E9D440E2BC580100040000E29DA3000086 +:10A0C000600000D970790100040000E27879010095 +:10A0D000040000E27C5A0100040000E25D1C000064 +:10A0E000110000D9246E0100040000E23C00684B1E +:10A0F000010018580105D5D540E3FC5701001400B4 +:10A1000000E3048E0103E5D540E3005B0100040099 +:10A1100000E2185B0100400000E2D4670100040087 +:10A1200000E28D370000040000DBBD3600003C007B +:10A13000A44B0100040000DBFC600100020000E20F +:10A14000907D0100040000E270690100040000E25B +:10A150000000000000000000B04901001A00000AE1 +:10A16000904B01000600000AA458810005FD40E361 +:10A170003C00E04B0100804A01000C00000A0C5A30 +:10A180008101252D44E3E04A01000300000A186321 +:10A190004100FDBB40E208570100010000E29C487D +:10A1A0000100040000E20000000000000000F84A86 +:10A1B00001003C001C4C01000200000ACC740100AC +:10A1C000030000E365734100A92E44E2F659010142 +:10A1D000D12C44E3084B01000400000A07000000F2 +:10A1E0000100006A284B01000200000A887D01007E +:10A1F000040000E23C00584C010000750104656F4A +:10A2000040E3BC7801000E0000E3384B010004007D +:10A21000000A0457010004000062584B01000200CC +:10A22000000A804B01000200000A684B0100030095 +:10A23000000A8C7D01003C00944C0100040000E207 +:10A24000392D0400040000DB947D0100040000E2CD +:10A2500000000000000000000000000000000000FE +:10A260000000000000000000104001000000006439 +:10A27000A84C01000400000A3C00D04C0100000082 +:10A28000000000000000C84C01000100000AD04C92 +:10A2900001000200000A0000000000000000E77A50 +:10A2A0000100010000E2E87A0100010000E2000084 +:10A2B000000000000000ED7A01003C000C4D0100A0 +:10A2C000010000E2EE7A0100010000E2000000005F +:10A2D00000000000F37A0100010000E2F47A0100BE +:10A2E000010000E20000000000000000F97A010017 +:10A2F000010000E2FA7A0100010000E23C00484D52 +:10A300000100E84C01000300000A004D01000300B9 +:10A31000000A184D01000300000A304D010003003F +:10A32000000A905C0100040000E2945C010004005B +:10A3300000E2985C0100040000E29C5C01003C002B +:10A34000844D0100040000E2A05C0100040000E272 +:10A35000A45C0100040000E2A85C0100040000E22B +:10A36000AC5C0100040000E2B05C0100040000E20B +:10A37000B45C0100040000E2B85C0100040000E2EB +:10A380003C00C04D0100BC5C0100040000E2C05C68 +:10A390000100040000E2C45C0100040000E2905CE3 +:10A3A0000100380000E3684D01000E00000AD84D9E +:10A3B0000100020000FA1261810131D540E306611B +:10A3C00001003C00FC4D0100020000E20B610100B5 +:10A3D000010000E30F610100010000E308610100DA +:10A3E000020000E2507B0100040000E200000000D7 +:10A3F00000000000384E01000E0000649C5701016F +:10A40000918841E33C00384E01006E41676FE26580 +:10A4100060696F20414200000000F04D010009001A +:10A42000000A484E01000100000AE84D0100010049 +:10A43000000A0000000000000000484D0100040078 +:10A44000000A286101013C00744E0100BDD540E2C4 +:10A450006961410085D540E230610100040000E2FD +:10A4600034610100040000E23C610100040000E2EC +:10A4700034610100040000E244610100040000E2D4 +:10A48000000000000400006A3C00B04E0100704E65 +:10A4900001000800000A18610100020000E21C61CE +:10A4A0000100040000E220610100020000E22461DA +:10A4B0000100040000E2B84E01000200000AC84E8C +:10A4C00001000200000AD84E01003C00EC4E0100E1 +:10A4D0000200000A96480100060000E3E062010065 +:10A4E000040000E2000000000400006A9B7D0100FF +:10A4F000010000629C7D010002000062607C01009E +:10A50000040000E2010000000400006A3C00284F43 +:10A5100001002D6301000100006200000000000046 +:10A520000000000000000000000049D500000E00FF +:10A5300000D9F467010002000062467D01000100BD +:10A5400000629C7C0100040000E2987C01003C0059 +:10A55000644F010002000062A07C0100060000625E +:10A56000587C010002000062647C01000600006269 +:10A570005A7C0100020000626A7C01000600006251 +:10A58000010000000400006AE4620100040000E22F +:10A590003C00A04F0100E8620100030000E200005F +:10A5A00000000400006A000000000400006A0100CE +:10A5B00000000400006A000000000400006A0000BF +:10A5C00000000400006A000000000400006A0000AF +:10A5D00000003C00DC4F01000400006A00000000A5 +:10A5E0000400006A000000000400006A000000008F +:10A5F0000400006A000000000400006A000000007F +:10A600000400006A000000000400006A000000006E +:10A610000400006A3C001850010000000000040023 +:10A62000006A000000000400006A0000000004004E +:10A63000006A000000000400006A0000000004003E +:10A64000006AF04E01002A00000A01000000040028 +:10A65000006A752A01003C00545001000C0000DB28 +:10A66000020000000400006A752A01000C0000DBF3 +:10A67000030000000400006A752A01000C0000DBE2 +:10A68000040000000400006A752A01000C0000DBD1 +:10A69000050000000400006A3C0090500100752A8B +:10A6A00001000C0000DB060000000400006A752AAF +:10A6B00001000C0000DB070000000400006A752A9E +:10A6C00001000C0000DB080000000400006A752A8D +:10A6D00001000C0000DB090000003C00CC50010030 +:10A6E0000400006A752A01000C0000DB0A0000006B +:10A6F0000400006A752A01000C0000DB0B0000005A +:10A700000400006A752A01000C0000DB0C00000048 +:10A710000400006A752A01000C0000DB3C000851AF +:10A7200001000D0000000400006A752A01000C0001 +:10A7300000DB0E0000000400006A752A01000C0016 +:10A7400000DB485001000200000A585001000200DE +:10A75000000A685001000200000A785001003C0025 +:10A76000445101000200000A885001000200000A62 +:10A77000985001000200000AA85001000200000ADF +:10A78000B85001000200000AC85001000200000A8F +:10A79000D85001000200000AE85001000200000A3F +:10A7A0003C0080510100F85001000200000A0851ED +:10A7B00001000200000A185101000200000A405086 +:10A7C00001000100000AE84E01000100000A00003B +:10A7D0000000000000000000000000000000B04E7B +:10A7E00001003C00BC5101000100000A0000000013 +:10A7F00000000000285101000E00000A00000000C7 +:10A800000000000000000000000000000000000048 +:10A810000000000000000000000000000000000038 +:10A82000000000003C00F8510100985101000C00AC +:10A83000000A504E01000400000AE04C0100010033 +:10A84000000A0000000000000000C04B01001D00D5 +:10A85000000AF85101000500000A248007000000EA +:10A8600000001D8007003C00345201000800000079 +:10A870002A8007005C00000024800700020000001E +:10A880001D800700200000002A8007006A000000E9 +:10A8900024800700020000001D8007002000000047 +:10A8A0002A8007006A0000003C007052010000018D +:10A8B00002030405060708090A0B0C0D0E0F101100 +:10A8C00012131415161718191A1B1C1D1E1F0163CD +:10A8D0000000A1630000C5630000B1620000C56311 +:10A8E0000000216300004D6300003C00AC520100F9 +:10A8F000A163000001630000A163000006050505D7 +:10A9000005050505050505050505030506070809EF +:10A910000A0A0C0D0E0F0F1011000000A5C684F8D6 +:10A9200099EE8DF60DFFBDD6B1DE54913C00E85294 +:10A93000010050600302A9CE7D5619E762B5E64DCD +:10A940009AEC458F9D1F408987FA15EFEBB2C98EAF +:10A950000BFBEC4167B3FD5FEA45BF23F75396E479 +:10A960005B9BC2751CE1AE3D6A4C5A6C417E3C005B +:10A970002453010002F54F835C68F45134D108F987 +:10A9800093E273AB53623F2A0C08529565465E9D75 +:10A990002830A1370F0AB52F090E36249B1B3DDF47 +:10A9A00026CD694ECD7F9FEA1B129E1D74582E3412 +:10A9B0003C00605301002D36B2DCEEB4FB5BF6A424 +:10A9C0004D7661B7CE7D7B523EDD715E9713F5A665 +:10A9D00068B900002CC160401FE3C879EDB6BED451 +:10A9E000468DD9674B72DE94D498E8B04A856BBB2C +:10A9F0002AC53C009C530100E54F16EDC586D79A49 +:10AA000055669411CF8A10E9060481FEF0A04478BF +:10AA1000BA25E34BF3A2FE5DC0808A05AD3FBC21A1 +:10AA2000487004F1DF63C17775AF634230201AE5E7 +:10AA30000EFD6DBF3C00D85301004C811418352623 +:10AA40002FC3E1BEA235CC88392E5793F25582FC34 +:10AA5000477AACC8E7BA2B3295E6A0C09819D19EC8 +:10AA60007FA366447E54AB3B830BCA8C29C7D36B50 +:10AA70003C2879A7E2BC3C00145401001D1676ADB9 +:10AA80003BDB56644E741E14DB920A0C6C48E4B82F +:10AA90005D9F6EBDEF43A6C4A839A43137D38BF2B6 +:10AAA00032D5438B596EB7DA8C0164B1D29CE04940 +:10AAB000B4D8FAAC07F325CF3C0050540100AFCA1C +:10AAC0008EF4E9471810D56F88F06F4A725C24380D +:10AAD000F157C773519723CB7CA19CE8213EDD96AB +:10AAE000DC61860D850F90E0427CC471AACCD890C1 +:10AAF000050601F7121CA3C25F6A3C008C540100DA +:10AB0000F9AED06991175899273AB92738D913EB7C +:10AB1000B32B3322BBD270A98907A733B62D223CB1 +:10AB2000921520C94987FFAA78507AA58F03F85952 +:10AB30008009171ADA6531D7C684B8D03C00C854EA +:10AB40000100C382B029775A111ECB7BFCA8D66DB9 +:10AB50003A2CC6A5F884EE99F68DFF0DD6BDDEB170 +:10AB6000915460500203CEA9567DE719B5624DE6B7 +:10AB7000EC9A8F451F9D8940FA87EF15B2EB3C0098 +:10AB8000045501008EC9FB0B41ECB3675FFD45EA3C +:10AB900023BF53F7E4969B5B75C2E11C3DAE4C6A44 +:10ABA0006C5A7E41F502834F685C51F4D134F90848 +:10ABB000E293AB7362532A3F080C955246659D5E43 +:10ABC0003C0040550100302837A10A0F2FB50E096F +:10ABD00024361B9BDF3DCD264E697FCDEA9F121B9D +:10ABE0001D9E5874342E362DDCB2B4EE5BFBA4F6F9 +:10ABF000764DB7617DCE527BDD3E5E711397A6F533 +:10AC0000B9683C007C5501000000C12C4060E31F86 +:10AC100079C8B6EDD4BE8D4667D9724B94DE98D410 +:10AC2000B0E8854ABB6BC52A4FE5ED1686C59AD7B5 +:10AC3000665511948ACFE9100406FE81A0F078448D +:10AC400025BA4BE33C00B8550100A2F35DFE80C07D +:10AC5000058A3FAD21BC7048F10463DF77C1AF7551 +:10AC600042632030E51AFD0EBF6D814C1814263565 +:10AC7000C32FBEE135A288CC2E39935755F2FC8202 +:10AC80007A47C8ACBAE73C00F4550100322BE69590 +:10AC9000C0A019989ED1A37F4466547E3BAB0B8322 +:10ACA0008CCAC7296BD3283CA779BCE2161DAD76A8 +:10ACB000DB3B6456744E141E92DB0C0A486CB8E4FD +:10ACC0009F5DBD6E43EFC4A63C003056010039A81D +:10ACD00031A4D337F28BD5328B436E59DAB7018C5E +:10ACE000B1649CD249E0D8B4ACFAF307CF25CAAF1F +:10ACF000F48E47E910186FD5F0884A6F5C723824DB +:10AD000057F173C79751CB23A17C3C006C560100CF +:10AD1000E89C3E2196DD61DC0D860F85E0907C424B +:10AD200071C4CCAA90D80605F7011C12C2A36A5FB1 +:10AD3000AEF969D0179199583A2727B9D938EB134A +:10AD40002BB32233D2BBA970078933A73C00A85686 +:10AD500001002DB63C221592C9208749AAFF5078E0 +:10AD6000A57A038F59F809801A1765DAD73184C696 +:10AD7000D0B882C329B05A771E117BCBA8FC6DD600 +:10AD80002C3A0400000000000000010000003C001C +:10AD9000E45601000200000003000000050000006E +:10ADA000000000000100000002000000030000009D +:10ADB00004000000010000000172657145727252CA +:10ADC0006561736F6E000000010000000500000067 +:10ADD0003C0020570100C48E0100249A01000000AD +:10ADE000000030000000249A0100A4B2010000001D +:10ADF00000006C000000A4B2010014C801000000B3 +:10AE00000000C00000001020304050BB30000100A6 +:10AE100000003C005C5701001416181A1C1E20226A +:10AE20002426282A2B2C01007017000001000000A6 +:10AE30000D250000413F0100652901000D2500009E +:10AE4000F55E0000413F0100413F010002040B0C90 +:10AE5000121618243C00985701003048606C01001D +:10AE60000000101010101010101010101010101002 +:10AE700000006400000001000000FFFFFFFF010070 +:10AE80000000000210121100000118000000020072 +:10AE90000000010000003C00D45701000000000049 +:10AEA000000000000200000004000000000000009C +:10AEB00000000000E093040040420F00000000008A +:10AEC0000100000000800000DF40CFFD0040830053 +:10AED00000000000010200003C00105801000000CA +:10AEE0000000000000000000000040008081000021 +:10AEF0008000BFFF7F7E0102000000000000000014 +:10AF0000000001000000786F010000000000B86F31 +:10AF1000010000000000F86F01003C004C580100E7 +:10AF2000000000003870010000000000787001008F +:10AF300000000000B870010000000000F87001007F +:10AF4000000000003871010000000000787101006D +:10AF50000001000090710100000100003C008858D1 +:10AF60000100A87101000001000000050A01060BA4 +:10AF700002070C03080D040900000303010100048B +:10AF800000040406161E1F0000000000000100005F +:10AF900080000000000000FFFFFF181818183C0098 +:10AFA000C458010018181818181818181818000094 +:10AFB000618B4A00618F4A00618B4A0005E3C00043 +:10AFC00005CBC00005BBC00085BAC00085A2C0008B +:10AFD0008592C000858AC000857AC0004589C0007E +:10AFE0003C00005901004571C0004569C000456141 +:10AFF000C0004559C0004551C0004549C000454109 +:10B00000C0004539C0004531C0004529C000452178 +:10B01000C000602D0600602D0600602D0600602D2A +:10B0200006003C003C590100602D06006028060027 +:10B030005026060050210600501F0600501C060036 +:10B04000501A06005018060050160600501406004C +:10B050005012060050100600500E0600500C06005C +:10B06000500A06003C00785901002B0B06001D75A4 +:10B07000C0001D75C0001D75C0001D75C0001D7588 +:10B08000C0001D75C0001D6DC000DD5BC000DD4B44 +:10B09000C000DD43C000DD3BC000DD33C000DD2B60 +:10B0A000C000DD23C0003C00B4590100DD1BC0001E +:10B0B000DD13C000DD13C000DD13C000DD13C000D0 +:10B0C000DD13C000050505040403030202010100AD +:10B0D000000005050504040303020201010000004D +:10B0E00000000000881300003C00F0590100070038 +:10B0F000000080005B004002E0FDF200B8FCA4010B +:10B1000000000F0000000F000000030B9F5F07010D +:10B110002A04210417040E040404FB03F103E803CA +:10B12000C903AA038A036B034C033C002C5A010099 +:10B130002D030E03EE02EC02010316032B03400362 +:10B1400055036A037F039403A903BE03D303E803F3 +:10B15000BE0394036A030002040607090A0B0C0DE0 +:10B160001010101010101010101000033C00685A3E +:10B17000010005080B0E1010101010101010101008 +:10B18000101010100000010000000100000000007D +:10B1900000000000000000000000000000000000AF +:10B1A00000000000000000000000000000003C0063 +:10B1B000A45A010000000000000000000000000090 +:10B1C000000000000000000000000000000000007F +:10B1D000000000000000000000000000000000006F +:10B1E000000000000000000000000000000000005F +:10B1F0003C00E05A010000000000000000000000D8 +:10B20000000000000000000000000000000000003E +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000000000001E +:10B2300000003C001C5B010000000000000000005A +:10B2400000000000000000000000000000000000FE +:10B2500000000000000000000000000000000000EE +:10B2600000000000000000000000000000000000DE +:10B27000000000003C00585B0100000000000000DE +:10B2800000000000000000000000000000000000BE +:10B2900000000000000000000000000000000000AE +:10B2A000000000000000000000000000000000009E +:10B2B0000000000000003C00945B01000000000062 +:10B2C000000000000000000000000000000000007E +:10B2D000000000000000000000000000000000006E +:10B2E000000000000000000000000000000000005E +:10B2F00000000000000000003C00D05B01000000E6 +:10B30000000000000000000000000000000000003D +:10B31000000000000000000000000000000000002D +:10B32000000000000000000000000000000000001D +:10B33000000000000000000000003C000C5C010068 +:10B3400000000000000000000000000000000000FD +:10B3500000000000000000000000000000000000ED +:10B3600000000000000000000000000000000000DD +:10B370000000000000000000000000003C00485CED +:10B3800001000000000000000000000000000000BC +:10B3900000000000000000000000000000000000AD +:10B3A000000000000000000000000000000000009D +:10B3B00000000000000000000000000000003C0051 +:10B3C000845C01000000000000000000000000009C +:10B3D000000000000000000000000000000000006D +:10B3E000000000000000000000000000000000005D +:10B3F000000000000000000000000000000000004D +:10B400003C00C05C010000000000000000000000E3 +:10B41000000000000000000000000000000000002C +:10B42000000000000000000000000000000000001C +:10B43000000000000000000000000000000000000C +:10B4400000003C00FC5C0100000000000000000067 +:10B4500000000000000000000000000000000000EC +:10B4600000000000000000000000000000000000DC +:10B4700000000000000000000000000000000000CC +:10B48000000000003C00385D0100000000000000EA +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B000000000000000000000000000000000008C +:10B4C0000000000000003C00745D0100000000006E +:10B4D000000000000000000000000000000000006C +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000000000004C +:10B5000000000000000000003C00B05D01000000F1 +:10B51000000000000000000000000000000000002B +:10B52000000000000000000000000000000000001B +:10B53000000000000000000000000000000000000B +:10B54000000000000000000000003C00EC5D010075 +:10B5500000000000000000000000000000000000EB +:10B5600000000000000000000000000000000000DB +:10B5700000000000000000000000000000000000CB +:10B580000000000000000000000000003C00285EF9 +:10B5900001000000000000000000000000000000AA +:10B5A000000000000000000000000000000000009B +:10B5B000000000000000000000000000000000008B +:10B5C00000000000000000000000000000003C003F +:10B5D000645E0100000000000000000000000000A8 +:10B5E000000000000000000000000000000000005B +:10B5F000000000000000000000000000000000004B +:10B60000000000000000000000000000000000003A +:10B610003C00A05E010000000000000000000000EF +:10B62000000000000000000000000000000000001A +:10B63000000000000000000000000000000000000A +:10B6400000000000000000000000000000000000FA +:10B6500000003C00DC5E0100000000000000000073 +:10B6600000000000000000000000000000000000DA +:10B6700000000000000000000000000000000000CA +:10B6800000000000000000000000000000000000BA +:10B69000000000003C00185F0100000000000000F6 +:10B6A000000000000000000000000000000000009A +:10B6B000000000000000000000000000000000008A +:10B6C000000000000000000000000000000000007A +:10B6D0000000000000003C00545F0100000000007A +:10B6E000000000000000000000000000000000005A +:10B6F000000000000000000000000000000000004A +:10B700000000000000000000000000000000000039 +:10B7100000000000000000003C00905F01000000FD +:10B720000000000000000000000000000000000019 +:10B730000000000000000000000000000000000009 +:10B7400000000000000000000000000000000000F9 +:10B75000000000000000000000003C00CC5F010081 +:10B7600000000000000000000000000000000000D9 +:10B7700000000000000000000000000000000000C9 +:10B7800000000000000000000000000000000000B9 +:10B790000000000000000000000000003C00086005 +:10B7A0000100000000000000000000000000000098 +:10B7B0000000000000000000000000000000000089 +:10B7C0000000000000000000000000000000000079 +:10B7D00000000000000000000000000000003C002D +:10B7E00044600100000000000000000000000000B4 +:10B7F0000000000000000000000000000000000049 +:10B800000000000000000000000000000000000038 +:10B810000000000000000000000000000000000028 +:10B820003C008060010000000000000000000000FB +:10B830000000000000000000000000000000000008 +:10B8400000000000000000000000000000000000F8 +:10B8500000000000000000000000000000000000E8 +:10B8600000003C00BC60010000000000000000007F +:10B8700000000000000000000000000000000000C8 +:10B8800000000000000000000000000000000000B8 +:10B8900000000000000000000000000000000000A8 +:10B8A000000000003C00F860010000000000000003 +:10B8B0000000000000000000000000000000000088 +:10B8C0000000000000000000000000000000000078 +:10B8D0000000000000000000000000000000000068 +:10B8E0000000000000003C00346101000000000086 +:10B8F0000000000000000000000000000000000048 +:10B900000000000000000000000000000000000037 +:10B910000000000000000000000000000000000027 +:10B9200000000000000000003C0070610100000009 +:10B930000000000000000000000000000000000007 +:10B9400000000000000000000000000000000000F7 +:10B9500000000000000000000000000000000000E7 +:10B96000000000000000000000003C00AC6101008D +:10B9700000000000000000000000000000000000C7 +:10B9800000000000000000000000000000000000B7 +:10B9900000000000000000000000000000000000A7 +:10B9A0000000000000000000000000003C00E86112 +:10B9B0000100000000000000000000000000000086 +:10B9C0000000000000000000000000000000000077 +:10B9D0000000000000000000000000000000000067 +:10B9E00000000000000000000000000000003C001B +:10B9F00024620100000000000000000000000000C0 +:10BA00000000000000000000000000000000000036 +:10BA10000000000000000000000000000000000026 +:10BA20000000000000000000000000000000000016 +:10BA30003C00606201000000000000000000000007 +:10BA400000000000000000000000000000000000F6 +:10BA500000000000000000000000000000000000E6 +:10BA600000000000000000000000000000000000D6 +:10BA700000003C009C62010000000000000000008B +:10BA800000000000000000000000000000000000B6 +:10BA900000000000000000000000000000000000A6 +:10BAA0000000000000000000000000000000000096 +:10BAB000000000003C00D86201000000000000000F +:10BAC0000000000000000000000000000000000076 +:10BAD0000000000000000000000000000000000066 +:10BAE0000000000000000000000000000000000056 +:10BAF0000000000000003C00146301000000000092 +:10BB00000000000000000000000000000000000035 +:10BB10000000000000000000000000000000000025 +:10BB20000000000000000000000000000000000015 +:10BB300000000000000000003C0050630100000015 +:10BB400000000000000000000000000000000000F5 +:10BB500000000000000000000000000000000000E5 +:10BB600000000000000000000000000000000000D5 +:10BB7000000000000000000000003C008C63010099 +:10BB800000000000000000000000000000000000B5 +:10BB900000000000000000000000000000000000A5 +:10BBA0000000000000000000000000000000000095 +:10BBB0000000000000000000000000003C00C8631E +:10BBC0000100000000000000000000000000000074 +:10BBD0000000000000000000000000000000000065 +:10BBE0000000000000000000000000000000000055 +:10BBF00000000000000000000000000000003C0009 +:10BC000004640100000000000000000000000000CB +:10BC10000000000000000000000000000000000024 +:10BC20000000000000000000000000000000000014 +:10BC30000000000000000000000000000000000004 +:10BC40003C00406401000000000000000000000013 +:10BC500000000000000000000000000000000000E4 +:10BC600000000000000000000000000000000000D4 +:10BC700000000000000000000000000000000000C4 +:10BC800000003C007C640100000000000000000097 +:10BC900000000000000000000000000000000000A4 +:10BCA0000000000000000000000000000000000094 +:10BCB0000000000000000000000000000000000084 +:10BCC000000000003C00B86401000000000000001B +:10BCD0000000000000000000000000000000000064 +:10BCE0000000000000000000000000000000000054 +:10BCF0000000000000000000000000000000000044 +:10BD00000000000000003C00F4640100000000009E +:10BD10000000000000000000000000000000000023 +:10BD20000000000000000000000000000000000013 +:10BD30000000000000000000000000000000000003 +:10BD400000000000000000003C0030650100000021 +:10BD500000000000000000000000000000000000E3 +:10BD600000000000000000000000000000000000D3 +:10BD700000000000000000000000000000000000C3 +:10BD8000000000000000000000003C006C650100A5 +:10BD900000000000000000000000000000000000A3 +:10BDA0000000000000000000000000000000000093 +:10BDB0000000000000000000000000000000000083 +:10BDC0000000000000000000000000003C00A8652A +:10BDD0000100000000000000000000000000000062 +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000000000000043 +:10BE000000000000000000000000000000003C00F6 +:10BE1000E4650100000000000000000000000000D8 +:10BE20000000000000000000000000000000000012 +:10BE30000000000000000000000000000000000002 +:10BE400000000000000000000000000000000000F2 +:10BE50003C0020660100000000000000000000001F +:10BE600000000000000000000000000000000000D2 +:10BE700000000000000000000000000000000000C2 +:10BE800000000000000000000000000000000000B2 +:10BE900000003C005C6601000000000000000000A3 +:10BEA0000000000000000000000000000000000092 +:10BEB0000000000000000000000000000000000082 +:10BEC0000000000000000000000000000000000072 +:10BED000000000003C009866010000000000000027 +:10BEE0000000000000000000000000000000000052 +:10BEF0000000000000000000000000000000000042 +:10BF00000000000000000000000000000000000031 +:10BF10000000000000003C00D466010000000000AA +:10BF20000000000000000000000000000000000011 +:10BF30000000000000000000000000000000000001 +:10BF400000000000000000000000000000000000F1 +:10BF500000000000000000003C001067010000002D +:10BF600000000000000000000000000000000000D1 +:10BF700000000000000000000000000000000000C1 +:10BF800000000000000000000000000000000000B1 +:10BF9000000000000000000000003C004C670100B1 +:10BFA0000000000000000000000000000000000091 +:10BFB0000000000000000000000000000000000081 +:10BFC0000000000000000000000000000000000071 +:10BFD0000000000000000000000000003C00886736 +:10BFE0000100000000000000000000000000000050 +:10BFF0000000000000000000000000000000000041 +:10C000000000000000000000000000000000000030 +:10C0100000000000000000000000000000003C00E4 +:10C02000C4670100000000000000000000000000E4 +:10C030000000000000000000000000000000000000 +:10C0400000000000000000000000000000000000F0 +:10C0500000000000000000000000000000000000E0 +:10C060003C0000680100000000000000000000002B +:10C0700000000000000000000000000000000000C0 +:10C0800000000000000000000000000000000000B0 +:10C0900000000000000000000000000000000000A0 +:10C0A00000003C003C6801000000000000000000AF +:10C0B0000000000000000000000000000000000080 +:10C0C0000000000000000000000000000000000070 +:10C0D0000000000000000000000000000000000060 +:10C0E000000000003C007868010000000000000033 +:10C0F0000000000000000000000000000000000040 +:10C10000000000000000000000000000000000002F +:10C11000000000000000000000000000000000001F +:10C120000000000000003C00B468010000000000B6 +:10C1300000000000000000000000000000000000FF +:10C1400000000000000000000000000000000000EF +:10C1500000000000000000000000000000000000DF +:10C1600000000000000000003C00F068010000003A +:10C1700000000000000000000000000000000000BF +:10C1800000000000000000000000000000000000AF +:10C19000000000000000000000000000000000009F +:10C1A000000000000000000000003C002C690100BD +:10C1B000000000000000000000000000000000007F +:10C1C000000000000000000000000000000000006F +:10C1D000000000000000000000000000000000005F +:10C1E0000000000000000000000000003C00686942 +:10C1F000010000000000000000000000000000003E +:10C20000000000000000000000000000000000002E +:10C21000000000000000000000000000000000001E +:10C2200000000000000000000000000000003C00D2 +:10C23000A4690100000000000000000000000000F0 +:10C2400000000000000000000000000000000000EE +:10C2500000000000000000000000000000000000DE +:10C2600000000000000000000000000000000000CE +:10C270003C00E06901000000000000000000000038 +:10C2800000000000000000000000000000000000AE +:10C29000000000000000000000000000000000009E +:10C2A000000000000000000000000000000000008E +:10C2B00000003C001C6A01000000000000000000BB +:10C2C000000000000000000000000000000000006E +:10C2D000000000000000000000000000000000005E +:10C2E000000000000000000000000000000000004E +:10C2F000000000003C00586A01000000000000003F +:10C30000000000000000000000000000000000002D +:10C31000000000000000000000000000000000001D +:10C32000000000000000000000000000000000000D +:10C330000000000000003C00946A010000000000C2 +:10C3400000000000000000000000000000000000ED +:10C3500000000000000000000000000000000000DD +:10C3600000000000000000000000000000000000CD +:10C3700000000000000000003C00D06A0100000046 +:10C3800000000000000000000000000000000000AD +:10C39000000000000000000000000000000000009D +:10C3A000000000000000000000000000000000008D +:10C3B000000000000000000000003C000C6B0100C9 +:10C3C000000000000000000000000000000000006D +:10C3D000000000000000000000000000000000005D +:10C3E000000000000000000000000000000000004D +:10C3F0000000000000000000000000003C00486B4E +:10C40000010000000000000000000000000000002B +:10C41000000000000000000000000000000000001C +:10C42000000000000000000000000000000000000C +:10C4300000000000000000000000000000003C00C0 +:10C44000846B0100000000000000000000000000FC +:10C4500000000000000000000000000000000000DC +:10C4600000000000000000000000000000000000CC +:10C4700000000000000000000000000000000000BC +:10C480003C00C06B01000000000000000000000044 +:10C49000000000000000000000000000000000009C +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000000000007C +:10C4C00000003C00FC6B01000000000000000000C8 +:10C4D000000000000000000000000000000000005C +:10C4E000000000000000000000000000000000004C +:10C4F000000000000000000000000000000000003C +:10C50000000000003C00386C01000000000000004A +:10C51000000000000000000000000000000000001B +:10C52000000000000000000000000000000000000B +:10C5300000000000000000000000000000000000FB +:10C540000000000000003C00746C010000000000CE +:10C5500000000000000000000000000000000000DB +:10C5600000000000000000000000000000000000CB +:10C5700000000000000000000000000000000000BB +:10C5800000000000000000003C00B06C0100000052 +:10C59000000000000000000000000000000000009B +:10C5A000000000000000000000000000000000008B +:10C5B000000000000000000000000000000000007B +:10C5C000000000000000000000003C00EC6C0100D6 +:10C5D000000000000000000000000000000000005B +:10C5E000000000000000000000000000000000004B +:10C5F000000000000000000000000000000000003B +:10C600000000000000000000000000003C00286D59 +:10C610000100000000000000000000000000000019 +:10C62000000000000000000000000000000000000A +:10C6300000000000000000000000000000000000FA +:10C6400000000000000000000000000000003C00AE +:10C65000646D010000000000000000000000000008 +:10C6600000000000000000000000000000000000CA +:10C6700000000000000000000000000000000000BA +:10C6800000000000000000000000000000000000AA +:10C690003C00A06D01000000000000000000000050 +:10C6A000000000000000000000000000000000008A +:10C6B000000000000000000000000000000000007A +:10C6C000000000000000000000000000000000006A +:10C6D00000003C00DC6D01000000000000000000D4 +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000000000003A +:10C700000000000000000000000000000000000029 +:10C71000000000003C00186E010000000000000056 +:10C720000000000000000000000000000000000009 +:10C7300000000000000000000000000000000000F9 +:10C7400000000000000000000000000000000000E9 +:10C750000000000000003C00546E010000000000DA +:10C7600000000000000000000000000000000000C9 +:10C7700000000000000000000000000000000000B9 +:10C7800000000000000000000000000000000000A9 +:10C7900000000000000000003C00906E010000005E +:10C7A0000000000000000000000000000000000089 +:10C7B0000000000000000000000000000000000079 +:10C7C0000000000000000000000000000000000069 +:10C7D000000000000000000000003C00CC6E0100E2 +:10C7E0000000000000000000000000000000000049 +:10C7F0000000000000000000000000000000000039 +:10C800000000000000000000000000000000000028 +:10C810000000000000000000000000003C00086F65 +:10C820000100000000000000000000000000000007 +:10C8300000000000000000000000000000000000F8 +:10C8400000000000000000000000000000000000E8 +:10C8500000000000000000000000000000003C009C +:10C86000446F010000000000000000000000000014 +:10C8700000000000000000000000000000000000B8 +:10C8800000000000000000000000000000000000A8 +:10C890000000000000000000000000000000000098 +:10C8A0003C00806F0100000000000000000000005C +:10C8B0000000000000000000000000000000000078 +:10C8C0000000000000000000000000000000000068 +:10C8D0000000000000000000000000000000000058 +:10C8E00000003C00BC6F01000000000000000000E0 +:10C8F0000000000000000000000000000000000038 +:10C900000000000000000000000000000000000027 +:10C910000000000000000000000000000000000017 +:10C92000000000003C00F86F010000000000000063 +:10C9300000000000000000000000000000000000F7 +:10C9400000000000000000000000000000000000E7 +:10C9500000000000000000000000000000000000D7 +:10C960000000000000003C003470010000000000E6 +:10C9700000000000000000000000000000000000B7 +:10C9800000000000000000000000000000000000A7 +:10C990000000000000000000000000000000000097 +:10C9A00000000000000000003C007070010000006A +:10C9B0000000000000000000000000000000000077 +:10C9C0000000000000000000000000000000000067 +:10C9D0000000000000000000000000000000000057 +:10C9E000000000000000000000003C00AC700100EE +:10C9F0000000000000000000000000000000000037 +:10CA00000000000000000000000000000000000026 +:10CA10000000000000000000000000000000000016 +:10CA20000000000000000000000000003C00E87072 +:10CA300001000000000000000000000000000000F5 +:10CA400000000000000000000000000000000000E6 +:10CA500000000000000000000000000000000000D6 +:10CA600000000000000000000000000000003C008A +:10CA70002471010000000000000000000000000020 +:10CA800000000000000000000000000000000000A6 +:10CA90000000000000000000000000000000000096 +:10CAA0000000000000000000000000000000000086 +:10CAB0003C00607101000000000000000000000068 +:10CAC0000000000000000000000000000000000066 +:10CAD0000000000000000000000000000000000056 +:10CAE0000000000000000000000000000000000046 +:10CAF00000003C009C7101000000000000000000EC +:10CB00000000000000000000000000000000000025 +:10CB10000000000000000000000000000000000015 +:10CB20000000000000000000000000000000000005 +:10CB3000000000003C00D87101000000000000006F +:10CB400000000000000000000000000000000000E5 +:10CB500000000000000000000000000000000000D5 +:10CB600000000000000000000000000000000000C5 +:10CB70000000000000003C001472010000000000F2 +:10CB800000000000000000000000000000000000A5 +:10CB90000000000000000000000000000000000095 +:10CBA0000000000000000000000000000000000085 +:10CBB00000000000000000003C0050720100000076 +:10CBC0000000000000000000000000000000000065 +:10CBD0000000000000000000000000000000000055 +:10CBE0000000000000000000000000000000000045 +:10CBF000000000000000000000003C008C720100FA +:10CC00000000000000000000000000000000000024 +:10CC10000000000000000000000000000000000014 +:10CC20000000000000000000000000000000000004 +:10CC30000000000000000000000000003C00C8727E +:10CC400001000000000000000000000000000000E3 +:10CC500000000000000000000000000000000000D4 +:10CC600000000000000000000000000000000000C4 +:10CC700000000000000000000000000000003C0078 +:10CC8000047301000000000000000000000000002C +:10CC90000000000000000000000000000000000094 +:10CCA0000000000000000000000000000000000084 +:10CCB0000000000000000000000000000000000074 +:10CCC0003C00407301000000000000000000000074 +:10CCD0000000000000000000000000000000000054 +:10CCE0000000000000000000000000000000000044 +:10CCF0000000000000000000000000000000000034 +:10CD000000003C007C7301000000000000000000F7 +:10CD10000000000000000000000000000000000013 +:10CD20000000000000000000000000000000000003 +:10CD300000000000000000000000000000000000F3 +:10CD4000000000003C00B87301000000000000007B +:10CD500000000000000000000000000000000000D3 +:10CD600000000000000000000000000000000000C3 +:10CD700000000000000000000000000000000000B3 +:10CD80000000000000003C00F473010000000000FF +:10CD90000000000000000000000000000000000093 +:10CDA0000000000000000000000000000000000083 +:10CDB0000000000000000000000000000000000073 +:10CDC00000000000000000003C0030740100000082 +:10CDD0000000000000000000000000000000000053 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE0000000000000000000000003C006C74010005 +:10CE10000000000000000000000000000000000012 +:10CE20000000000000000000000000000000000002 +:10CE300000000000000000000000000000000000F2 +:10CE40000000000000000000000000003C00A8748A +:10CE500001000000000000000000000000000000D1 +:10CE600000000000000000000000000000000000C2 +:10CE700000000000000000000000000000000000B2 +:10CE800000000000000000000000000000003C0066 +:10CE9000E474010000000000000000000000000039 +:10CEA0000000000000000000000000000000000082 +:10CEB0000000000000000000000000000000000072 +:10CEC0000000000000000000000000000000000062 +:10CED0003C00207501000000000000000000000080 +:10CEE0000000000000000000000000000000000042 +:10CEF0000000000000000000000000000000000032 +:10CF00000000000000000000000000000000000021 +:10CF100000003C005C750100000000000000000003 +:10CF20000000000000000000000000000000000001 +:10CF300000000000000000000000000000000000F1 +:10CF400000000000000000000000000000000000E1 +:10CF5000000000003C009875010000000000000087 +:10CF600000000000000000000000000000000000C1 +:10CF700000000000000000000000000000000000B1 +:10CF800000000000000000000000000000000000A1 +:10CF90000000000000003C00D4750100000000000B +:10CFA0000000000000000000000000000000000081 +:10CFB0000000000000000000000000000000000071 +:10CFC0000000000000000000000000000000000061 +:10CFD00000000000000000003C001076010000008E +:10CFE0000000000000000000000000000000000041 +:10CFF0000000000000000000000000000000000031 +:10D000000000000000000000000000000000000020 +:10D01000000000000000000000003C004C76010011 +:10D020000000000000000000000000000000000000 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000000000000000000000000000E0 +:10D050000000000000000000000000003C00887696 +:10D0600001000000000000000000000000000000BF +:10D0700000000000000000000000000000000000B0 +:10D0800000000000000000000000000000000000A0 +:10D0900000000000000000000000000000003C0054 +:10D0A000C476010000000000000000000000000045 +:10D0B0000000000000000000000000000000000070 +:10D0C0000000000000000000000000000000000060 +:10D0D0000000000000000000000000000000000050 +:10D0E0003C0000770100000000000000000000008C +:10D0F0000000000000000000000000000000000030 +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000000000000F +:10D1200000003C003C77010000000000000000000F +:10D1300000000000000000000000000000000000EF +:10D1400000000000000000000000000000000000DF +:10D1500000000000000000000000000000000000CF +:10D16000000000003C007877010000000000000093 +:10D1700000000000000000000000000000000000AF +:10D18000000000000000000000000000000000009F +:10D19000000000000000000000000000000000008F +:10D1A0000000000000003C00B47701000000000017 +:10D1B000000000000000000000000000000000006F +:10D1C000000000000000000000000000000000005F +:10D1D000000000000000000000000000000000004F +:10D1E00000000000000000003C00F077010000009B +:10D1F000000000000000000000000000000000002F +:10D20000000000000000000000000000000000001E +:10D21000000000000000000000000000000000000E +:10D22000000000000000000000003C002C7801001D +:10D2300000000000000000000000000000000000EE +:10D2400000000000000000000000000000000000DE +:10D2500000000000000000000000000000000000CE +:10D260000000000000000000000000003C006878A2 +:10D2700001000000000000000000000000000000AD +:10D28000000000000000000000000000000000009E +:10D29000000000000000000000000000000000008E +:10D2A00000000000000000000000000000003C0042 +:10D2B000A478010000000000000000000000000051 +:10D2C000000000000000000000000000000000005E +:10D2D000000000000000000000000000000000004E +:10D2E000000000000000000000000000000000003E +:10D2F0003C00E07801000000000000000000000099 +:10D30000000000000000000000000000000000001D +:10D31000000000000000000000000000000000000D +:10D3200000000000000000000000000000000000FD +:10D3300000003C001C79010000000000000000001B +:10D3400000000000000000000000000000000000DD +:10D3500000000000000000000000000000000000CD +:10D3600000000000000000000000000000000000BD +:10D37000000000003C00587901000000000000009F +:10D38000000000000000000000000000000000009D +:10D39000000000000000000000000000000000008D +:10D3A000000000000000000000000000000000007D +:10D3B0000000000000003C00947901000000000023 +:10D3C000000000000000000000000000000000005D +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000000000003D +:10D3F00000000000000000003C00D07901000000A7 +:10D40000000000000000000000000000000000001C +:10D41000000000000000000000000000000000000C +:10D4200000000000000000000000000000000000FC +:10D43000000000000000000000003C000C7A010029 +:10D4400000000000000000000000000000000000DC +:10D4500000000000000000000000000000000000CC +:10D4600000000000000000000000000000000000BC +:10D470000000000000000000000000003C00487AAE +:10D48000010000000000000000000000000000009B +:10D49000000000000000000000000000000000008C +:10D4A000000000000000000000000000000000007C +:10D4B00000000000000000000000000000003C0030 +:10D4C000847A01000000000000000000000000005D +:10D4D000000000000000000000000000000000004C +:10D4E000000000000000000000000000000000003C +:10D4F000000000000000000000000000000000002C +:10D500003C00C07A010000000000000000000000A4 +:10D51000000000000000000000000000000000000B +:10D5200000000000000000000000000000000000FB +:10D5300000000000000000000000000000000000EB +:10D5400000003C00FC7A0100000000000000000028 +:10D5500000000000000000000000000000000000CB +:10D5600000000000000000000000000000000000BB +:10D5700000000000000000000000000000000000AB +:10D58000000000003C00387B0100000000000000AB +:10D59000000000000000000000000000000000008B +:10D5A000000000000000000000000000000000007B +:10D5B000000000000000000000000000000000006B +:10D5C0000000000000003C00747B0100000000002F +:10D5D000000000000000000000000000000000004B +:10D5E000000000000000000000000000000000003B +:10D5F000000000000000000000000000000000002B +:10D6000000000000000000003C00B07B01000000B2 +:10D61000000000000000000000000000000000000A +:10D6200000000000000000000000000000000000FA +:10D6300000000000000000000000000000000000EA +:10D64000000000000000000000003C00EC7B010036 +:10D6500000000000000000000000000000000000CA +:10D6600000000000000000000000000000000000BA +:10D6700000000000000000000000000000000000AA +:10D680000000000000000000000000003C00287CBA +:10D690000100000000000000000000000000000089 +:10D6A000000000000000000000000000000000007A +:10D6B000000000000000000000000000000000006A +:10D6C00000000000000000000000000000003C001E +:10D6D000647C010000000000000000000000000069 +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000000000000000000002A +:10D700000000000000000000000000000000000019 +:10D710003C00A07C010000000000000000000000B0 +:10D7200000000000000000000000000000000000F9 +:10D7300000000000000000000000000000000000E9 +:10D7400000000000000000000000000000000000D9 +:10D7500000003C00DC7C0100000000000000000034 +:10D7600000000000000000000000000000000000B9 +:10D7700000000000000000000000000000000000A9 +:10D780000000000000000000000000000000000099 +:10D79000000000003C00187D0100000000000000B7 +:10D7A0000000000000000000000000000000000079 +:10D7B0000000000000000000000000000000000069 +:10D7C0000000000000000000000000000000000059 +:10D7D0000000000000003C00547D0100000000003B +:10D7E0000000000000000000000000000000000039 +:10D7F0000000000000000000000000000000000029 +:10D800000000000000000000000000000000000018 +:10D8100000000000000000003C00907D01000000BE +:10D8200000000000000000000000000000000000F8 +:10D8300000000000000000000000000000000000E8 +:10D8400000000000000000000000000000000000D8 +:10D85000000000000000000000003C00CC7D010042 +:10D8600000000000000000000000000000000000B8 +:10D8700000000000000000000000000000000000A8 +:10D880000000000000000000000000000000000098 +:10D890000000000000000000000000003C00087EC6 +:10D8A0000100000000000000000000000000000077 +:10D8B0000000000000000000000000000000000068 +:10D8C0000000000000000000000000000000000058 +:10D8D00000000000000000000000000000003C000C +:10D8E000447E010000000000000000000000000075 +:10D8F0000000000000000000000000000000000028 +:10D900000000000000000000000000000000000017 +:10D910000000000000000000000000000000000007 +:10D920003C00807E010000000000000000000000BC +:10D9300000000000000000000000000000000000E7 +:10D9400000000000000000000000000000000000D7 +:10D9500000000000000000000000000000000000C7 +:10D9600000003C00BC7E0100000000000000000040 +:10D9700000000000000000000000000000000000A7 +:10D980000000000000000000000000000000000097 +:10D990000000000000000000000000000000000087 +:10D9A000000000003C00F87E0100000000000000C4 +:10D9B0000000000000000000000000000000000067 +:10D9C0000000000000000000000000000000000057 +:10D9D0000000000000000000000000000000000047 +:10D9E0000000000000003C00347F01000000000047 +:10D9F0000000000000000000000000000000000027 +:10DA00000000000000000000000000000000000016 +:10DA10000000000000000000000000000000000006 +:10DA200000000000000000003C00707F01000000CA +:10DA300000000000000000000000000000000000E6 +:10DA400000000000000000000000000000000000D6 +:10DA500000000000000000000000000000000000C6 +:10DA6000000000000000000000003C00AC7F01004E +:10DA700000000000000000000000000000000000A6 +:10DA80000000000000000000000000000000000096 +:10DA90000000000000000000000000000000000086 +:10DAA0000000000000000000000000003C00E87FD3 +:10DAB0000100000000000000000000000000000065 +:10DAC0000000000000000000000070B50125074EB6 +:10DAD000AD0375610A20FAF76CFF30688003C40F4C +:10DAE000B5610A20FAF765FF201C70BD00003C00FC +:10DAF000248001001000070070B501256D04002886 +:10DB0000104C01D0656100E0A56160682843606049 +:10DB1000A0682843A0600A20FAF74EFF0126B6034A +:10DB200066610A20FAF748FFA6610120FAF744FF70 +:10DB30003C0060800100A068A843A06060682843A2 +:10DB400060600A20FAF73BFF70BD1000070070B557 +:10DB50000125104C6D046561606828436060A06811 +:10DB60002843A060EE08A6610A20FAF728FF666144 +:10DB70000A203C009C800100FAF724FFA5610A20DE +:10DB8000FAF720FFA6610A20FAF71CFFA068A84355 +:10DB9000A06060682843606070BD0000100007004E +:10DBA00070B501250E4C6D04A56160682843606066 +:10DBB000A06828433C00D8800100A060EE086661A0 +:10DBC0000A20FAF702FF65610A20FAF7FEFEA66155 +:10DBD0000A20FAF7FAFEA068A843A060606828430C +:10DBE000606070BD00001000070070B5051C0024C7 +:10DBF0008026281C30403C0014810100FFF788FF7C +:10DC00006806050E0134082CF6DBFFF76DFF70BDCA +:10DC100080B5021C0B218020FBF73EFB80BD00007D +:10DC2000F8B512480025071CFF37061D0137281CD0 +:10DC3000F9F7EAFD041C17D03C005081010020696F +:10DC4000002804D0E06A002803D00020E062251CF0 +:10DC5000F0E77B68002B05D0321C211C44310120E9 +:10DC6000E8F734F9201C4430F9F737FEE2E7F8BD55 +:10DC7000000020F70100114870B53C008C810100C4 +:10DC80000068FF281DD1FF203230FAF7A7FE0E4DA5 +:10DC90006C680E48FAF7A2FE6868241A012000F0AA +:10DCA00095FD6E680948FAF799FE6868211C0A39E3 +:10DCB000301A884202D30A34A04202D93C00C881FB +:10DCC0000100002000F085FD70BDF4740100000328 +:10DCD00007009303000070B500F04DF80120EDF748 +:10DCE00034F9114D182168600020E9F7F2F9286035 +:10DCF00004688020208000260622FF21201D3C0091 +:10DD0000048201006680E8F70BFA201C0A300949FA +:10DD1000F2F72EFD201C10300749F2F729FDE682AC +:10DD200003CDE9F7F9F8024901201439886070BD84 +:10DD300090D901001261010024F701007047000032 +:10DD40003C004082010010B5064C00220220E16830 +:10DD5000F0F711FB6078022801D100F01AF910BD2C +:10DD6000000040D9010080B5A120FFF750FF80BD21 +:10DD7000000040000E21084080B5A030FFF747FFAB +:10DD800080BD3C007C82010010B5054C2068002855 +:10DD900004D0E9F787F900202060606010BD000022 +:10DDA00090D9010010B5074C0121074A21610220DA +:10DDB0001070616100F0D6FC00F0C8FB201CEDF78C +:10DDC0009FFA10BD3C00B882010020F701007CD909 +:10DDD000010070B5021C081C0225002A134E14D045 +:10DDE00000F011FC3078012108433070307828436E +:10DDF000307000207D214901B279920700D50134AD +:10DE000001308842F8DB3C00F4820100201C70BD28 +:10DE10003078A843307030784008400030700549B1 +:10DE200048680122120490434860012070BD000040 +:10DE3000880007006C000700FFB509AE002060CE27 +:10DE4000286000239C4630603C0030830100694616 +:10DE500001AA17E0DB070ED5124B1C56631C0AD033 +:10DE600001272B68A7403B432B601368DB0702D5D3 +:10DE700033683B4333600B685B080B6013685B08D7 +:10DE8000136001300B68002B01D03C006C83010053 +:10DE90002228E2D3634601332020022B9C4602A9AC +:10DEA00003AAF2DBFFBD0000B48D0100B0B5041C75 +:10DEB0000D1C1E2100220320054BF9F7B3F8211C8D +:10DEC0000320F9F7F5F8291C0320F9F73C00A88393 +:10DED0000100F1F8B0BD80380100B0B51C4C1C4DFC +:10DEE0002178022909D0032919D004291FD0052936 +:10DEF00023D1002000F017FB23E0686114481C3098 +:10DF0000C16802698918C16000F02FFBE0683C001D +:10DF1000E48301000138E06016D13220E060FFF7B1 +:10DF2000A3FE11E0002000F001FB00F02DFC012019 +:10DF3000207009E0002000F0F9FAFFF745FF03E048 +:10DF400005210B20E8F746FF68696168E7F7DDFF08 +:10DF50003C0020840100B0BD00007CD9010020F706 +:10DF60000100F7B5041C171CFFF721FE200AFFF77C +:10DF700018FF2006000EFFF762FEFFF718FEA12033 +:10DF8000FFF75DFE002516E0002000244006060E87 +:10DF9000FFF73C005C840100D1FD0006000E304319 +:10DFA0000134082CF5DB291C019A0135BD4250547F +:10DFB00001DA002000E00120FFF7D4FDBD42E6DBDE +:10DFC000FFF71EFEFEBD000080B5FFF719FE092118 +:10DFD000890300223C00988401000220F0F7E9F94F +:10DFE00080BD0921890380B500220220F0F7C9F91C +:10DFF000012109488903816142680A4342608268BD +:10E000001143816001214904816182688A438260F1 +:10E010004268114341603C00D484010080BD00008F +:10E0200010000700F0B5041CC0687B4E056830780E +:10E0300085B0012801D0022872D100212069F2F7B1 +:10E0400041F97649F2F724FC002869D0201C2030E1 +:10E05000417A082902D1724A3C0010850100002152 +:10E060005161007A226A1821F2F7C9FBE16A371C74 +:10E0700040186C49029030780E1CFF360A1D01369C +:10E080000128049207D0654A02991C32281CEDF73A +:10E09000E2FB00286BD0322120693C004C85010056 +:10E0A000F2F716F9019020690121F2F711F9011C2C +:10E0B0005E480123019AEDF707FC002804D15B4874 +:10E0C000EDF792FA0021B96056481C308168EAF7F2 +:10E0D00019FC201C143003900499F2F73C00888549 +:10E0E0000100D5FB002805D10022BA6004980399ED +:10E0F000F2F76BFB4F4928890988884203D0002238 +:10E100004C49BA60088003212069F2F7E4F800283E +:10E1100010D04649827820310B7994469A423C00CF +:10E12000C485010009D00022BA6062460A71807875 +:10E130000121F3F705F900E077E006212069F2F705 +:10E14000CDF8002808D081783A4840308288914242 +:10E1500002D00022BA6081802A212069F2F7BEF83D +:10E160003C000086010000280DD08078F169334A18 +:10E17000814208D00021B960F061101CEDF709FB65 +:10E180002F48EDF7FAFA38783B1C012817D1022006 +:10E1900018702A4F01233B61274B03CD1C33083DE8 +:10E1A000029A3C003C860100EDF7B0FA381CEDF70E +:10E1B000D7F83268002A03D000210120E7F7C4FE17 +:10E1C00000F0F4F9201CF9F7D5FB071C11D1201C35 +:10E1D000F9F788FB071C2ED001233B616889402199 +:10E1E000C85373683C0078860100002B04D0211CC2 +:10E1F0000020049AE7F7ACFE0123FB62206932217C +:10E20000F2F775F8051C20690121F2F770F80E4E3F +:10E21000011C2A1C301CEDF7C0FB00280ED1322156 +:10E220002069F2F764F83C00B4860100051C2069FF +:10E230000121F2F75FF8011C3B1C2A1C301CEDF792 +:10E24000D7FA05B0F0BD00007CD9010040F801000C +:10E2500020F70100021C081C802A80B506D0812A04 +:10E2600003D004210B20E8F73C00F0860100D9FD23 +:10E2700080BDFFF75CFE80BD000003488178FF2968 +:10E2800001D0007970470020704780F8010030B558 +:10E2900089B000930E4D131C041C2A1CECF725FDBD +:10E2A00001A906A8A268ECF7CEFE3C002C8701006D +:10E2B00001AA06A9281C636AEDF744FA041C012888 +:10E2C00004D1281CEDF72CF800F04AF8201C09B006 +:10E2D00030BD000020F7010080B5EDF72BF800F00D +:10E2E0007DF80248EDF702FA80BD00003C00688727 +:10E2F000010020F7010080B500280BD10648EDF79A +:10E30000F8F900F06EF80120EDF7EBFA034903206D +:10E31000F9F735FE80BD20F701006D870100B0B52B +:10E32000104D041C131C2A1C88B0ECF702FD3C00A5 +:10E33000A4870100211C0A310622281DE7F7A4FE4C +:10E34000694605A86269ECF787FE281CECF7EEFF2A +:10E350007F23DB43281C6A4605A9EDF7F9F900F095 +:10E360001DF808B0B0BD000020F701000A4880B5D4 +:10E370003C00E08701000178002906D0022901D085 +:10E38000052907D10321017080BD0121017000F032 +:10E390002EFA80BD03210B20E8F74FFD80BD7CD90C +:10E3A0000100094980B50878002806D0022801D06C +:10E3B00005283C001C88010005D10420087080BDA0 +:10E3C000FFF738FD80BD02210B20E8F739FD80BD45 +:10E3D0007CD9010080B502210B20044AFAF782FFA4 +:10E3E000F6F786FD0249086180BD0000DD86010068 +:10E3F0007CD901003C00588801000C4880B50178A8 +:10E4000006290ED202A35B5C5B009F44000006035A +:10E4100007070706002000F0C2F880BD0521017043 +:10E4200080BD04210B20E8F70EFD80BD00007CD9E3 +:10E430000100704700003C009488010010B50D4BAE +:10E44000041C181C1030002C08D0DB885B045B0C0B +:10E450000B80807B48800420108008E0DA8801244B +:10E46000E40322400C882243DA804988817301202A +:10E4700010BD0000300007003C00D088010070B5DE +:10E48000104E021C0023F056002A02D0087001240E +:10E4900015E00023CD56854201D1012070BD281C16 +:10E4A00000F05FF9041C0AD00748357000680028A6 +:10E4B00003D000210A20F9F728FD3C000C89010057 +:10E4C00000F016FA201C70BDF46B01003CD901006D +:10E4D000031C081C002B80B506D0042111800422E7 +:10E4E0000449E7F7E3FD02E0006800F0CFF90120FE +:10E4F00080BD0000F474010010B5FFF73C004889AE +:10E50000010097FBFFF789FC041CFFF7B8FBFFF73E +:10E5100084FC002C02D1012800D110BD002010BDC8 +:10E520000000F8B5204F041C78780E1C02282ED06D +:10E530001E4AF968916114231D49584340183C0054 +:10E5400084890100417BB878F8F714FE00F08AF95D +:10E55000002504E00021B878F8F70CFE0135787842 +:10E560001423144958434018807AA842F2DC00254D +:10E5700008E00021B878F8F7FDFD0F48006820702A +:10E580003C00C089010001340135B542F4DB094A81 +:10E59000F86850617878022806D1B868321C211CCE +:10E5A0000004000CFFF725FDB8688019B860F8BDBD +:10E5B000000040D9010010000700648D01003020E8 +:10E5C00007003C00FC89010070B5061C0C4D0024BE +:10E5D0002C70FFF739FC0A4818211C30AC60E7F7B3 +:10E5E00043FD08484461F9F763F9002E06D1064857 +:10E5F0002969F6F7A7FC0020ECF7B0FE70BD00001B +:10E600007CD901003C00388A010020F70100346306 +:10E61000010030B5124C85B0206800281CD00F488E +:10E6200014388068002801D1FFF7C1FB206800235F +:10E63000006801AA04300121ECF7D1FD0849084A1D +:10E6400008310C3100923C00748A010003C900AB10 +:10E650004518997B019A20682B1CF2F72BFE05B018 +:10E6600030BD000090D901002981010010B5134C84 +:10E67000142360705843124BC1188A88E2801858DE +:10E68000E060087AA070FF283C00B08A010012D038 +:10E69000002208210D4BF8F722FD00220220E1683C +:10E6A000EFF7BDFE0A49E06848614A6802434A60E4 +:10E6B0008A68104388606078022801D1FFF7DFFC88 +:10E6C00010BD40D90100648D01003C00EC8A0100BE +:10E6D000B80B000010000700FE300006000E0621F7 +:10E6E000154B4143585C82061448920E4271C9187A +:10E6F0004A78D206D20E027142780C231A43427035 +:10E7000042788B78920892009B079B0F3C00288BE5 +:10E7100001001A4342700278C0239A4340320270CB +:10E72000027838231A4302700278C97804239A4386 +:10E730008900194011430170012070470000D88DF5 +:10E740000100880007008FB50020029003903C0074 +:10E75000648B0100074802AA03A900910192438932 +:10E76000028903C8FFF7D4FB03980299FFF704FC62 +:10E770008FBD0000048E010008494A78002A03D1A9 +:10E78000888000208860704714235A43044BD218B5 +:10E790003C00A08B0100D2884243C88842438A6073 +:10E7A000704740D90100648D0100F8B5254E041C66 +:10E7B000307A400840003072B07A0020B0720127F1 +:10E7C000012C204D01D0FC4213D1307B38433073F3 +:10E7D00000223C00DC8B0100211C0020FFF76EFBB7 +:10E7E000631C01D13F21E973B17AA0221143B172B8 +:10E7F000317A39433172F8BD307B400840003073C4 +:10E800000122211C0120FFF759FB01200021E9739F +:10E81000B17A02223C00188C01001143B172B17A26 +:10E8200004221143B172B17A30221143B172317AAC +:10E830003943317208494A6880239A434A600A681A +:10E840001A430A60317B39433173D7E700008800EF +:10E850000700400007003C00548C01006C000700DA +:10E86000B0B50E4D0E482969F6F79EFB0D48ECF742 +:10E8700093FD0D48094C00881C34A082F1F75AFF23 +:10E880002061FAF797F8021C231C00210020ECF706 +:10E890008BFF3220E860FFF73C00908C0100A5FA66 +:10E8A000B0BD7CD9010034630100DD84010020F794 +:10E8B0000100B0B50A4D687800280ED0142308492D +:10E8C00058434018447A06E0A868E0400106090E63 +:10E8D000A878F8F776FC083CF6D53C00CC8C010013 +:10E8E000B0BD000040D90100648D0100011C144836 +:10E8F000B0B501601348027F02239A430277027F7A +:10E90000012422430277104D00290CD0012200215E +:10E910000320EFF79FFD0D49487CA0433C00088D84 +:10E9200001004874687A20436872B0BD017F2143BA +:10E930000177687A400840006872012200210320B4 +:10E94000EFF7B1FDB0BDF47401003000070088009E +:10E9500007001000070010B5074C211C00203C00E8 +:10E96000448D0100F9F756FB05480023C0560128E5 +:10E9700003DD211C0020F9F719FB10BD651A00000A +:10E98000F46B01000000020008010100021804FFFE +:10E9900082E8D78000000000008000000001000134 +:10E9A0003C00808D010000180006020305010100F3 +:10E9B00000000000000080000100FF1000FFFFFFCA +:10E9C000FFFFFF0000000000020020000100021015 +:10E9D0000006020305010100000004050607080CFB +:10E9E0000D0E3C00BC8D0100FF1415161718191BE5 +:10E9F0001C1DFF1A1113120F10FF0200FF01030963 +:10EA00000A0B0000300D02000000280E0300000079 +:10EA10001E0C00000000300D020100001E0C000161 +:10EA20000000230D3C00F88D0100020100001D0DC7 +:10EA3000020100000000FFFEFB6D000080000200EC +:10EA400000000000000000000000000000000000C6 +:10EA500000000000000000000000000000000000B6 +:10EA60000000000000003C00348E010000000000A7 +:10EA70000000000000000000000000000000000096 +:10EA80000000000000000000000000000000000086 +:10EA90000000000000000000000000000000000076 +:10EAA00000000000000000003C00708E010000002B +:10EAB0000000000000000000000000000000000056 +:10EAC0000000000000000000000000000000000046 +:10EAD0000000000000000000000000000000000036 +:10EAE000000000000000000000003C00AC8E0100AF +:10EAF0000000000000000000000000000000000016 +:10EB00000000000000000000000000000000000005 +:10EB100000000000000000000000000000000000F5 +:10EB20000000000000000000000000003C00E88E33 +:10EB300001000000000000000000000000000000D4 +:10EB400000000000000000000000000000000000C5 +:10EB500000000000000000000000000000000000B5 +:10EB600000000000000000000000000000003C0069 +:10EB7000248F0100000000000000000000000000E1 +:10EB80000000000000000000000000000000000085 +:10EB90000000000000000000000000000000000075 +:10EBA0000000000000000000000000000000000065 +:10EBB0003C00608F01000000000000000000000029 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE0000000000000000000000000000000000025 +:10EBF00000003C009C8F01000000000000000000AD +:10EC00000000000000000000000000000000000004 +:10EC100000000000000000000000000000000000F4 +:10EC200000000000000000000000000000000000E4 +:10EC3000000000003C00D88F010000000000000030 +:10EC400000000000000000000000000000000000C4 +:10EC500000000000000000000000000000000000B4 +:10EC600000000000000000000000000000000000A4 +:10EC70000000000000003C001490010000000000B3 +:10EC80000000000000000000000000000000000084 +:10EC90000000000000000000000000000000000074 +:10ECA0000000000000000000000000000000000064 +:10ECB00000000000000000003C0050900100000037 +:10ECC0000000000000000000000000000000000044 +:10ECD0000000000000000000000000000000000034 +:10ECE0000000000000000000000000000000000024 +:10ECF000000000000000000000003C008C900100BB +:10ED00000000000000000000000000000000000003 +:10ED100000000000000000000000000000000000F3 +:10ED200000000000000000000000000000000000E3 +:10ED30000000000000000000000000003C00C8903F +:10ED400001000000000000000000000000000000C2 +:10ED500000000000000000000000000000000000B3 +:10ED600000000000000000000000000000000000A3 +:10ED700000000000000000000000000000003C0057 +:10ED800004910100000000000000000000000000ED +:10ED90000000000000000000000000000000000073 +:10EDA0000000000000000000000000000000000063 +:10EDB0000000000000000000000000000000000053 +:10EDC0003C00409101000000000000000000000035 +:10EDD0000000000000000000000000000000000033 +:10EDE0000000000000000000000000000000000023 +:10EDF0000000000000000000000000000000000013 +:10EE000000003C007C9101000000000000000000B8 +:10EE100000000000000000000000000000000000F2 +:10EE200000000000000000000000000000000000E2 +:10EE300000000000000000000000000000000000D2 +:10EE4000000000003C00B89101000000000000003C +:10EE500000000000000000000000000000000000B2 +:10EE600000000000000000000000000000000000A2 +:10EE70000000000000000000000000000000000092 +:10EE80000000000000003C00F491010000000000C0 +:10EE90000000000000000000000000000000000072 +:10EEA0000000000000000000000000000000000062 +:10EEB0000000000000000000000000000000000052 +:10EEC00000000000000000003C0030920100000043 +:10EED0000000000000000000000000000000000032 +:10EEE0000000000000000000000000000000000022 +:10EEF0000000000000000000000000000000000012 +:10EF0000000000000000000000003C006C920100C6 +:10EF100000000000000000000000000000000000F1 +:10EF200000000000000000000000000000000000E1 +:10EF300000000000000000000000000000000000D1 +:10EF40000000000000000000000000003C00A8924B +:10EF500001000000000000000000000000000000B0 +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000000000000091 +:10EF800000000000000000000000000000003C0045 +:10EF9000E4920100000000000000000000000000FA +:10EFA0000000000000000000000000000000000061 +:10EFB0000000000000000000000000000000000051 +:10EFC0000000000000000000000000000000000041 +:10EFD0003C00209301000000000000000000000041 +:10EFE0000000000000000000000000000000000021 +:10EFF0000000000000000000000000000000000011 +:10F000000000000000000000000000000000000000 +:10F0100000003C005C9301000000000000000000C4 +:10F0200000000000000000000000000000000000E0 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F05000000000003C009893010000000000000048 +:10F0600000000000000000000000000000000000A0 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000003C00D493010000000000CC +:10F0A0000000000000000000000000000000000060 +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D00000000000000000003C001094010000004F +:10F0E0000000000000000000000000000000000020 +:10F0F0000000000000000000000000000000000010 +:10F1000000000000000000000000000000000000FF +:10F11000000000000000000000003C004C940100D2 +:10F1200000000000000000000000000000000000DF +:10F1300000000000000000000000000000000000CF +:10F1400000000000000000000000000000000000BF +:10F150000000000000000000000000003C00889457 +:10F16000010000000000000000000000000000009E +:10F17000000000000000000000000000000000008F +:10F18000000000000000000000000000000000007F +:10F1900000000000000000000000000000003C0033 +:10F1A000C494010000000000000000000000000006 +:10F1B000000000000000000000000000000000004F +:10F1C000000000000000000000000000000000003F +:10F1D000000000000000000000000000000000002F +:10F1E0003C0000950100000000000000000000004D +:10F1F000000000000000000000000000000000000F +:10F2000000000000000000000000000000000000FE +:10F2100000000000000000000000000000000000EE +:10F2200000003C003C9501000000000000000000D0 +:10F2300000000000000000000000000000000000CE +:10F2400000000000000000000000000000000000BE +:10F2500000000000000000000000000000000000AE +:10F26000000000003C007895010000000000000054 +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A0000000000000003C00B495010000000000D8 +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000000000002E +:10F2E00000000000000000003C00F095010000005C +:10F2F000000000000000000000000000000000000E +:10F3000000000000000000000000000000000000FD +:10F3100000000000000000000000000000000000ED +:10F32000000000000000000000003C002C960100DE +:10F3300000000000000000000000000000000000CD +:10F3400000000000000000000000000000000000BD +:10F3500000000000000000000000000000000000AD +:10F360000000000000000000000000003C00689663 +:10F37000010000000000000000000000000000008C +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A00000000000000000000000000000003C0021 +:10F3B000A496010000000000000000000000000012 +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E000000000000000000000000000000000001D +:10F3F0003C00E0960100000000000000000000005A +:10F4000000000000000000000000000000000000FC +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000003C001C9701000000000000000000DC +:10F4400000000000000000000000000000000000BC +:10F4500000000000000000000000000000000000AC +:10F46000000000000000000000000000000000009C +:10F47000000000003C005897010000000000000060 +:10F48000000000000000000000000000000000007C +:10F49000000000000000000000000000000000006C +:10F4A000000000000000000000000000000000005C +:10F4B0000000000000003C009497010000000000E4 +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E000000000000000000000000000000000001C +:10F4F00000000000000000003C00D0970100000068 +:10F5000000000000000000000000000000000000FB +:10F5100000000000000000000000000000000000EB +:10F5200000000000000000000000000000000000DB +:10F53000000000000000000000003C000C980100EA +:10F5400000000000000000000000000000000000BB +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F570000000000000000000000000003C0048986F +:10F58000010000000000000000000000000000007A +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B00000000000000000000000000000003C000F +:10F5C000849801000000000000000000000000001E +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F600003C00C09801000000000000000000000065 +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F6300000000000000000000000000000000000CA +:10F6400000003C00FC9801000000000000000000E9 +:10F6500000000000000000000000000000000000AA +:10F66000000000000000000000000000000000009A +:10F67000000000000000000000000000000000008A +:10F68000000000003C00389901000000000000006C +:10F69000000000000000000000000000000000006A +:10F6A000000000000000000000000000000000005A +:10F6B000000000000000000000000000000000004A +:10F6C0000000000000003C007499010000000000F0 +:10F6D000000000000000000000000000000000002A +:10F6E000000000000000000000000000000000001A +:10F6F000000000000000000000000000000000000A +:10F7000000000000000000003C00B0990100000073 +:10F7100000000000000000000000000000000000E9 +:10F7200000000000000000000000000000000000D9 +:10F7300000000000000000000000000000000000C9 +:10F74000000000000000000000003C00EC990100F7 +:10F7500000000000000000000000000000000000A9 +:10F760000000000000000000000000000000000099 +:10F770000000000000000000000000000000000089 +:10F780000000000000000000000000003C00289A7B +:10F790000100000000000000000000000000000068 +:10F7A0000000000000000000000000000000000059 +:10F7B0000000000000000000000000000000000049 +:10F7C00000000000000000000000000000003C00FD +:10F7D000649A01000000000000000000000000002A +:10F7E0000000000000000000000000000000000019 +:10F7F0000000000000000000000000000000000009 +:10F8000000000000000000000000000000000000F8 +:10F810003C00A09A01000000000000000000000071 +:10F8200000000000000000000000000000000000D8 +:10F8300000000000000000000000000000000000C8 +:10F8400000000000000000000000000000000000B8 +:10F8500000003C00DC9A01000000000000000000F5 +:10F860000000000000000000000000000000000098 +:10F870000000000000000000000000000000000088 +:10F880000000000000000000000000000000000078 +:10F89000000000003C00189B010000000000000078 +:10F8A0000000000000000000000000000000000058 +:10F8B0000000000000000000000000000000000048 +:10F8C0000000000000000000000000000000000038 +:10F8D0000000000000003C00549B010000000000FC +:10F8E0000000000000000000000000000000000018 +:10F8F0000000000000000000000000000000000008 +:10F9000000000000000000000000000000000000F7 +:10F9100000000000000000003C00909B010000007F +:10F9200000000000000000000000000000000000D7 +:10F9300000000000000000000000000000000000C7 +:10F9400000000000000000000000000000000000B7 +:10F95000000000000000000000003C00CC9B010003 +:10F960000000000000000000000000000000000097 +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000003C00089C87 +:10F9A0000100000000000000000000000000000056 +:10F9B0000000000000000000000000000000000047 +:10F9C0000000000000000000000000000000000037 +:10F9D00000000000000000000000000000003C00EB +:10F9E000449C010000000000000000000000000036 +:10F9F0000000000000000000000000000000000007 +:10FA000000000000000000000000000000000000F6 +:10FA100000000000000000000000000000000000E6 +:10FA20003C00809C0100000000000000000000007D +:10FA300000000000000000000000000000000000C6 +:10FA400000000000000000000000000000000000B6 +:10FA500000000000000000000000000000000000A6 +:10FA600000003C00BC9C0100000000000000000001 +:10FA70000000000000000000000000000000000086 +:10FA80000000000000000000000000000000000076 +:10FA90000000000000000000000000000000000066 +:10FAA000000000003C00F89C010000000000000085 +:10FAB0000000000000000000000000000000000046 +:10FAC0000000000000000000000000000000000036 +:10FAD0000000000000000000000000000000000026 +:10FAE0000000000000003C00349D01000000000008 +:10FAF0000000000000000000000000000000000006 +:10FB000000000000000000000000000000000000F5 +:10FB100000000000000000000000000000000000E5 +:10FB200000000000000000003C00709D010000008B +:10FB300000000000000000000000000000000000C5 +:10FB400000000000000000000000000000000000B5 +:10FB500000000000000000000000000000000000A5 +:10FB6000000000000000000000003C00AC9D01000F +:10FB70000000000000000000000000000000000085 +:10FB80000000000000000000000000000000000075 +:10FB90000000000000000000000000000000000065 +:10FBA0000000000000000000000000003C00E89D94 +:10FBB0000100000000000000000000000000000044 +:10FBC0000000000000000000000000000000000035 +:10FBD0000000000000000000000000000000000025 +:10FBE00000000000000000000000000000003C00D9 +:10FBF000249E010000000000000000000000000042 +:10FC000000000000000000000000000000000000F4 +:10FC100000000000000000000000000000000000E4 +:10FC200000000000000000000000000000000000D4 +:10FC30003C00609E01000000000000000000000089 +:10FC400000000000000000000000000000000000B4 +:10FC500000000000000000000000000000000000A4 +:10FC60000000000000000000000000000000000094 +:10FC700000003C009C9E010000000000000000000D +:10FC80000000000000000000000000000000000074 +:10FC90000000000000000000000000000000000064 +:10FCA0000000000000000000000000000000000054 +:10FCB000000000003C00D89E010000000000000091 +:10FCC0000000000000000000000000000000000034 +:10FCD0000000000000000000000000000000000024 +:10FCE0000000000000000000000000000000000014 +:10FCF0000000000000003C00149F01000000000014 +:10FD000000000000000000000000000000000000F3 +:10FD100000000000000000000000000000000000E3 +:10FD200000000000000000000000000000000000D3 +:10FD300000000000000000003C00509F0100000097 +:10FD400000000000000000000000000000000000B3 +:10FD500000000000000000000000000000000000A3 +:10FD60000000000000000000000000000000000093 +:10FD7000000000000000000000003C008C9F01001B +:10FD80000000000000000000000000000000000073 +:10FD90000000000000000000000000000000000063 +:10FDA0000000000000000000000000000000000053 +:10FDB0000000000000000000000000003C00C89FA0 +:10FDC0000100000000000000000000000000000032 +:10FDD0000000000000000000000000000000000023 +:10FDE0000000000000000000000000000000000013 +:10FDF00000000000000000000000000000003C00C7 +:10FE000004A001000000000000000000000000004D +:10FE100000000000000000000000000000000000E2 +:10FE200000000000000000000000000000000000D2 +:10FE300000000000000000000000000000000000C2 +:10FE40003C0040A001000000000000000000000095 +:10FE500000000000000000000000000000000000A2 +:10FE60000000000000000000000000000000000092 +:10FE70000000000000000000000000000000000082 +:10FE800000003C007CA00100000000000000000019 +:10FE90000000000000000000000000000000000062 +:10FEA0000000000000000000000000000000000052 +:10FEB0000000000000000000000000000000000042 +:10FEC000000000003C00B8A001000000000000009D +:10FED0000000000000000000000000000000000022 +:10FEE0000000000000000000000000000000000012 +:10FEF0000000000000000000000000000000000002 +:10FF00000000000000003C00F4A001000000000020 +:10FF100000000000000000000000000000000000E1 +:10FF200000000000000000000000000000000000D1 +:10FF300000000000000000000000000000000000C1 +:10FF400000000000000000003C0030A101000000A3 +:10FF500000000000000000000000000000000000A1 +:10FF60000000000000000000000000000000000091 +:10FF70000000000000000000000000000000000081 +:10FF8000000000000000000000003C006CA1010027 +:10FF90000000000000000000000000000000000061 +:10FFA0000000000000000000000000000000000051 +:10FFB0000000000000000000000000000000000041 +:10FFC0000000000000000000000000003C00A8A1AC +:10FFD0000100000000000000000000000000000020 +:10FFE0000000000000000000000000000000000011 +:10FFF0000000000000000000000000000000000001 +:02000004800278 +:1000000000000000000000000000000000003C00B4 +:10001000E4A101000000000000000000000000005A +:1000200000000000000000000000000000000000D0 +:1000300000000000000000000000000000000000C0 +:1000400000000000000000000000000000000000B0 +:100050003C0020A2010000000000000000000000A1 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:1000900000003C005CA20100000000000000000025 +:1000A0000000000000000000000000000000000050 +:1000B0000000000000000000000000000000000040 +:1000C0000000000000000000000000000000000030 +:1000D000000000003C0098A20100000000000000A9 +:1000E0000000000000000000000000000000000010 +:1000F0000000000000000000000000000000000000 +:1001000000000000000000000000000000000000EF +:100110000000000000003C00D4A20100000000002C +:1001200000000000000000000000000000000000CF +:1001300000000000000000000000000000000000BF +:1001400000000000000000000000000000000000AF +:1001500000000000000000003C0010A301000000AF +:10016000000000000000000000000000000000008F +:10017000000000000000000000000000000000007F +:10018000000000000000000000000000000000006F +:10019000000000000000000000003C004CA3010033 +:1001A000000000000000000000000000000000004F +:1001B000000000000000000000000000000000003F +:1001C000000000000000000000000000000000002F +:1001D0000000000000000000000000003C0088A3B8 +:1001E000010000000000000000000000000000000E +:1001F00000000000000000000000000000000000FF +:1002000000000000000000000000000000000000EE +:1002100000000000000000000000000000003C00A2 +:10022000C4A3010000000000000000000000000066 +:1002300000000000000000000000000000000000BE +:1002400000000000000000000000000000000000AE +:10025000000000000000000000000000000000009E +:100260003C0000A4010000000000000000000000AD +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:10029000000000000000000000000000000000005E +:1002A00000003C003CA40100000000000000000031 +:1002B000000000000000000000000000000000003E +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E000000000003C0078A40100000000000000B5 +:1002F00000000000000000000000000000000000FE +:1003000000000000000000000000000000000000ED +:1003100000000000000000000000000000000000DD +:100320000000000000003C00B4A401000000000038 +:1003300000000000000000000000000000000000BD +:1003400000000000000000000000000000000000AD +:10035000000000000000000000000000000000009D +:1003600000000000000000003C00F0A401000000BC +:10037000000000000000000000000000000000007D +:10038000000000000000000000000000000000006D +:10039000000000000000000000000000000000005D +:1003A000000000000000000000003C002CA501003F +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000000000002D +:1003D000000000000000000000000000000000001D +:1003E0000000000000000000000000003C0068A5C4 +:1003F00001000000000000000000000000000000FC +:1004000000000000000000000000000000000000EC +:1004100000000000000000000000000000000000DC +:1004200000000000000000000000000000003C0090 +:10043000A4A5010000000000000000000000000072 +:1004400000000000000000000000000000000000AC +:10045000000000000000000000000000000000009C +:10046000000000000000000000000000000000008C +:100470003C00E0A5010000000000000000000000BA +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A000000000000000000000000000000000004C +:1004B00000003C001CA6010000000000000000003D +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000000000001C +:1004E000000000000000000000000000000000000C +:1004F000000000003C0058A60100000000000000C1 +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:100530000000000000003C0094A601000000000044 +:1005400000000000000000000000000000000000AB +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000000000008B +:1005700000000000000000003C00D0A601000000C8 +:10058000000000000000000000000000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000003C000CA701004B +:1005C000000000000000000000000000000000002B +:1005D000000000000000000000000000000000001B +:1005E000000000000000000000000000000000000B +:1005F0000000000000000000000000003C0048A7D0 +:1006000001000000000000000000000000000000E9 +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000003C007E +:1006400084A701000000000000000000000000007E +:10065000000000000000000000000000000000009A +:10066000000000000000000000000000000000008A +:10067000000000000000000000000000000000007A +:100680003C00C0A7010000000000000000000000C6 +:10069000000000000000000000000000000000005A +:1006A000000000000000000000000000000000004A +:1006B000000000000000000000000000000000003A +:1006C00000003C00FCA7010000000000000000004A +:1006D000000000000000000000000000000000001A +:1006E000000000000000000000000000000000000A +:1006F00000000000000000000000000000000000FA +:10070000000000003C0038A80100000000000000CC +:1007100000000000000000000000000000000000D9 +:1007200000000000000000000000000000000000C9 +:1007300000000000000000000000000000000000B9 +:100740000000000000003C0074A801000000000050 +:100750000000000000000000000000000000000099 +:100760000000000000000000000000000000000089 +:100770000000000000000000000000000000000079 +:1007800000000000000000003C00B0A801000000D4 +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000000000000049 +:1007B0000000000000000000000000000000000039 +:1007C000000000000000000000003C00ECA8010058 +:1007D0000000000000000000000000000000000019 +:1007E0000000000000000000000000000000000009 +:1007F00000000000000000000000000000000000F9 +:100800000000000000000000000000003C0028A9DB +:1008100001000000000000000000000000000000D7 +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000000000000B8 +:1008400000000000000000000000000000003C006C +:1008500064A901000000000000000000000000008A +:100860000000000000000000000000000000000088 +:100870000000000000000000000000000000000078 +:100880000000000000000000000000000000000068 +:100890003C00A0A9010000000000000000000000D2 +:1008A0000000000000000000000000000000000048 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000000000000028 +:1008D00000003C00DCA90100000000000000000056 +:1008E0000000000000000000000000000000000008 +:1008F00000000000000000000000000000000000F8 +:1009000000000000000000000000000000000000E7 +:10091000000000003C0018AA0100000000000000D8 +:1009200000000000000000000000000000000000C7 +:1009300000000000000000000000000000000000B7 +:1009400000000000000000000000000000000000A7 +:100950000000000000003C0054AA0100000000005C +:100960000000000000000000000000000000000087 +:100970000000000000000000000000000000000077 +:100980000000000000000000000000000000000067 +:1009900000000000000000003C0090AA01000000E0 +:1009A0000000000000000000000000000000000047 +:1009B0000000000000000000000000000000000037 +:1009C0000000000000000000000000000000000027 +:1009D000000000000000000000003C00CCAA010064 +:1009E0000000000000000000000000000000000007 +:1009F00000000000000000000000000000000000F7 +:100A000000000000000000000000000000000000E6 +:100A10000000000000000000000000003C0008ABE7 +:100A200001000000000000000000000000000000C5 +:100A300000000000000000000000000000000000B6 +:100A400000000000000000000000000000000000A6 +:100A500000000000000000000000000000003C005A +:100A600044AB010000000000000000000000000096 +:100A70000000000000000000000000000000000076 +:100A80000000000000000000000000000000000066 +:100A90000000000000000000000000000000000056 +:100AA0003C0080AB010000000000000000000000DE +:100AB0000000000000000000000000000000000036 +:100AC0000000000000000000000000000000000026 +:100AD0000000000000000000000000000000000016 +:100AE00000003C00BCAB0100000000000000000062 +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000000000000E5 +:100B100000000000000000000000000000000000D5 +:100B2000000000003C00F8AB0100000000000000E5 +:100B300000000000000000000000000000000000B5 +:100B400000000000000000000000000000000000A5 +:100B50000000000000000000000000000000000095 +:100B60000000000000003C0034AC01000000000068 +:100B70000000000000000000000000000000000075 +:100B80000000000000000000000000000000000065 +:100B90000000000000000000000000000000000055 +:100BA00000000000000000003C0070AC01000000EC +:100BB0000000000000000000000000000000000035 +:100BC0000000000000000000000000000000000025 +:100BD0000000000000000000000000000000000015 +:100BE000000000000000000000003C00ACAC010070 +:100BF00000000000000000000000000000000000F5 +:100C000000000000000000000000000000000000E4 +:100C100000000000000000000000000000000000D4 +:100C20000000000000000000000000003C00E8ACF4 +:100C300001000000000000000000000000000000B3 +:100C400000000000000000000000000000000000A4 +:100C50000000000000000000000000000000000094 +:100C600000000000000000000000000000003C0048 +:100C700024AD0100000000000000000000000000A2 +:100C80000000000000000000000000000000000064 +:100C90000000000000000000000000000000000054 +:100CA0000000000000000000000000000000000044 +:100CB0003C0060AD010000000000000000000000EA +:100CC0000000000000000000000000000000000024 +:100CD0000000000000000000000000000000000014 +:100CE0000000000000000000000000000000000004 +:100CF00000003C009CAD010000000000000000006E +:100D000000000000000000000000000000000000E3 +:100D100000000000000000000000000000000000D3 +:100D200000000000000000000000000000000000C3 +:100D3000000000003C00D8AD0100000000000000F1 +:100D400000000000000000000000000000000000A3 +:100D50000000000000000000000000000000000093 +:100D60000000000000000000000000000000000083 +:100D70000000000000003C0014AE01000000000074 +:100D80000000000000000000000000000000000063 +:100D90000000000000000000000000000000000053 +:100DA0000000000000000000000000000000000043 +:100DB00000000000000000003C0050AE01000000F8 +:100DC0000000000000000000000000000000000023 +:100DD0000000000000000000000000000000000013 +:100DE0000000000000000000000000000000000003 +:100DF000000000000000000000003C008CAE01007C +:100E000000000000000000000000000000000000E2 +:100E100000000000000000000000000000000000D2 +:100E200000000000000000000000000000000000C2 +:100E30000000000000000000000000003C00C8AE00 +:100E400001000000000000000000000000000000A1 +:100E50000000000000000000000000000000000092 +:100E60000000000000000000000000000000000082 +:100E700000000000000000000000000000003C0036 +:100E800004AF0100000000000000000000000000AE +:100E90000000000000000000000000000000000052 +:100EA0000000000000000000000000000000000042 +:100EB0000000000000000000000000000000000032 +:100EC0003C0040AF010000000000000000000000F6 +:100ED0000000000000000000000000000000000012 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000000000000F2 +:100F000000003C007CAF0100000000000000000079 +:100F100000000000000000000000000000000000D1 +:100F200000000000000000000000000000000000C1 +:100F300000000000000000000000000000000000B1 +:100F4000000000003C00B8AF0100000000000000FD +:100F50000000000000000000000000000000000091 +:100F60000000000000000000000000000000000081 +:100F70000000000000000000000000000000000071 +:100F80000000000000003C00F4AF01000000000081 +:100F90000000000000000000000000000000000051 +:100FA0000000000000000000000000000000000041 +:100FB0000000000000000000000000000000000031 +:100FC00000000000000000003C0030B00100000004 +:100FD0000000000000000000000000000000000011 +:100FE0000000000000000000000000000000000001 +:100FF00000000000000000000000000000000000F1 +:10100000000000000000000000003C006CB0010087 +:1010100000000000000000000000000000000000D0 +:1010200000000000000000000000000000000000C0 +:1010300000000000000000000000000000000000B0 +:101040000000000000000000000000003C00A8B00C +:10105000010000000000000000000000000000008F +:101060000000000000000000000000000000000080 +:101070000000000000000000000000000000000070 +:1010800000000000000000000000000000003C0024 +:10109000E4B00100000000000000000000000000BB +:1010A0000000000000000000000000000000000040 +:1010B0000000000000000000000000000000000030 +:1010C0000000000000000000000000000000000020 +:1010D0003C0020B101000000000000000000000002 +:1010E0000000000000000000000000000000000000 +:1010F00000000000000000000000000000000000F0 +:1011000000000000000000000000000000000000DF +:1011100000003C005CB10100000000000000000085 +:1011200000000000000000000000000000000000BF +:1011300000000000000000000000000000000000AF +:10114000000000000000000000000000000000009F +:10115000000000003C0098B1010000000000000009 +:10116000000000000000000000000000000000007F +:10117000000000000000000000000000000000006F +:10118000000000000000000000000000000000005F +:101190000000000000003C00D4B10100000000008D +:1011A000000000000000000000000000000000003F +:1011B000000000000000000000000000000000002F +:1011C000000000000000000000000000000000001F +:1011D00000000000000000003C0010B20100000010 +:1011E00000000000000000000000000000000000FF +:1011F00000000000000000000000000000000000EF +:1012000000000000000000000000000000000000DE +:10121000000000000000000000003C004CB2010093 +:1012200000000000000000000000000000000000BE +:1012300000000000000000000000000000000000AE +:10124000000000000000000000000000000000009E +:101250000000000000000000000000003C0088B218 +:10126000010000000000000000000000000000007D +:10127000000000000000000000000000000000006E +:10128000000000000000000000000000000000005E +:1012900000000000000000000000000000003C0012 +:1012A000C4B20100000000000000000000000000C7 +:1012B000000000000000000000000000000000002E +:1012C000000000000000000000000000000000001E +:1012D000000000000000000000000000000000000E +:1012E0003C0000B30100000000000000000000000E +:1012F00000000000000000000000000000000000EE +:1013000000000000000000000000000000000000DD +:1013100000000000000000000000000000000000CD +:1013200000003C003CB30100000000000000000091 +:1013300000000000000000000000000000000000AD +:10134000000000000000000000000000000000009D +:10135000000000000000000000000000000000008D +:10136000000000003C0078B3010000000000000015 +:10137000000000000000000000000000000000006D +:10138000000000000000000000000000000000005D +:10139000000000000000000000000000000000004D +:1013A0000000000000003C00B4B301000000000099 +:1013B000000000000000000000000000000000002D +:1013C000000000000000000000000000000000001D +:1013D000000000000000000000000000000000000D +:1013E00000000000000000003C00F0B3010000001D +:1013F00000000000000000000000000000000000ED +:1014000000000000000000000000000000000000DC +:1014100000000000000000000000000000000000CC +:10142000000000000000000000003C002CB401009F +:1014300000000000000000000000000000000000AC +:10144000000000000000000000000000000000009C +:10145000000000000000000000000000000000008C +:101460000000000000000000000000003C0068B424 +:10147000010000000000000000000000000000006B +:10148000000000000000000000000000000000005C +:10149000000000000000000000000000000000004C +:1014A00000000000000000000000000000003C0000 +:1014B000A4B40100000000000000000000000000D3 +:1014C000000000000000000000000000000000001C +:1014D000000000000000000000000000000000000C +:1014E00000000000000000000000000000000000FC +:1014F0003C00E0B40100000000000000000000001B +:1015000000000000000000000000000000000000DB +:1015100000000000000000000000000000000000CB +:1015200000000000000000000000000000000000BB +:1015300000003C001CB5010000000000000000009D +:10154000000000000000000000000000000000009B +:10155000000000000000000000000000000000008B +:10156000000000000000000000000000000000007B +:10157000000000003C0058B5010000000000000021 +:10158000000000000000000000000000000000005B +:10159000000000000000000000000000000000004B +:1015A000000000000000000000000000000000003B +:1015B0000000000000003C0094B5010000000000A5 +:1015C000000000000000000000000000000000001B +:1015D000000000000000000000000000000000000B +:1015E00000000000000000000000000000000000FB +:1015F00000000000000000003C00D0B50100000029 +:1016000000000000000000000000000000000000DA +:1016100000000000000000000000000000000000CA +:1016200000000000000000000000000000000000BA +:10163000000000000000000000003C000CB60100AB +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000000000008A +:10166000000000000000000000000000000000007A +:101670000000000000000000000000003C0048B630 +:101680000100000000000000000000000000000059 +:10169000000000000000000000000000000000004A +:1016A000000000000000000000000000000000003A +:1016B00000000000000000000000000000003C00EE +:1016C00084B60100000000000000000000000000DF +:1016D000000000000000000000000000000000000A +:1016E00000000000000000000000000000000000FA +:1016F00000000000000000000000000000000000EA +:101700003C00C0B601000000000000000000000026 +:1017100000000000000000000000000000000000C9 +:1017200000000000000000000000000000000000B9 +:1017300000000000000000000000000000000000A9 +:1017400000003C00FCB601000000000000000000AA +:101750000000000000000000000000000000000089 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000000000000069 +:10178000000000003C0038B701000000000000002D +:101790000000000000000000000000000000000049 +:1017A0000000000000000000000000000000000039 +:1017B0000000000000000000000000000000000029 +:1017C0000000000000003C0074B7010000000000B1 +:1017D0000000000000000000000000000000000009 +:1017E00000000000000000000000000000000000F9 +:1017F00000000000000000000000000000000000E9 +:1018000000000000000000003C00B0B70100000034 +:1018100000000000000000000000000000000000C8 +:1018200000000000000000000000000000000000B8 +:1018300000000000000000000000000000000000A8 +:10184000000000000000000000003C00ECB70100B8 +:101850000000000000000000000000000000000088 +:101860000000000000000000000000000000000078 +:101870000000000000000000000000000000000068 +:101880000000000000000000000000003C0028B83C +:101890000100000000000000000000000000000047 +:1018A0000000000000000000000000000000000038 +:1018B0000000000000000000000000000000000028 +:1018C00000000000000000000000000000003C00DC +:1018D00064B80100000000000000000000000000EB +:1018E00000000000000000000000000000000000F8 +:1018F00000000000000000000000000000000000E8 +:1019000000000000000000000000000000000000D7 +:101910003C00A0B801000000000000000000000032 +:1019200000000000000000000000000000000000B7 +:1019300000000000000000000000000000000000A7 +:101940000000000000000000000000000000000097 +:1019500000003C00DCB801000000000000000000B6 +:101960000000000000000000000000000000000077 +:101970000000000000000000000000000000000067 +:101980000000000000000000000000000000000057 +:10199000000000003C0018B9010000000000000039 +:1019A0000000000000000000000000000000000037 +:1019B0000000000000000000000000000000000027 +:1019C0000000000000000000000000000000000017 +:1019D0000000000000003C0054B9010000000000BD +:1019E00000000000000000000000000000000000F7 +:1019F00000000000000000000000000000000000E7 +:101A000000000000000000000000000000000000D6 +:101A100000000000000000003C0090B90100000040 +:101A200000000000000000000000000000000000B6 +:101A300000000000000000000000000000000000A6 +:101A40000000000000000000000000000000000096 +:101A5000000000000000000000003C00CCB90100C4 +:101A60000000000000000000000000000000000076 +:101A70000000000000000000000000000000000066 +:101A80000000000000000000000000000000000056 +:101A90000000000000000000000000003C0008BA48 +:101AA0000100000000000000000000000000000035 +:101AB0000000000000000000000000000000000026 +:101AC0000000000000000000000000000000000016 +:101AD00000000000000000000000000000003C00CA +:101AE00044BA0100000000000000000000000000F7 +:101AF00000000000000000000000000000000000E6 +:101B000000000000000000000000000000000000D5 +:101B100000000000000000000000000000000000C5 +:101B20003C0080BA0100000000000000000000003E +:101B300000000000000000000000000000000000A5 +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000000000000085 +:101B600000003C00BCBA01000000000000000000C2 +:101B70000000000000000000000000000000000065 +:101B80000000000000000000000000000000000055 +:101B90000000000000000000000000000000000045 +:101BA000000000003C00F8BA010000000000000046 +:101BB0000000000000000000000000000000000025 +:101BC0000000000000000000000000000000000015 +:101BD0000000000000000000000000000000000005 +:101BE0000000000000003C0034BB010000000000C9 +:101BF00000000000000000000000000000000000E5 +:101C000000000000000000000000000000000000D4 +:101C100000000000000000000000000000000000C4 +:101C200000000000000000003C0070BB010000004C +:101C300000000000000000000000000000000000A4 +:101C40000000000000000000000000000000000094 +:101C50000000000000000000000000000000000084 +:101C6000000000000000000000003C00ACBB0100D0 +:101C70000000000000000000000000000000000064 +:101C80000000000000000000000000000000000054 +:101C90000000000000000000000000000000000044 +:101CA0000000000000000000000000003C00E8BB55 +:101CB0000100000000000000000000000000000023 +:101CC0000000000000000000000000000000000014 +:101CD0000000000000000000000000000000000004 +:101CE00000000000000000000000000000003C00B8 +:101CF00024BC010000000000000000000000000003 +:101D000000000000000000000000000000000000D3 +:101D100000000000000000000000000000000000C3 +:101D200000000000000000000000000000000000B3 +:101D30003C0060BC0100000000000000000000004A +:101D40000000000000000000000000000000000093 +:101D50000000000000000000000000000000000083 +:101D60000000000000000000000000000000000073 +:101D700000003C009CBC01000000000000000000CE +:101D80000000000000000000000000000000000053 +:101D90000000000000000000000000000000000043 +:101DA0000000000000000000000000000000000033 +:101DB000000000003C00D8BC010000000000000052 +:101DC0000000000000000000000000000000000013 +:101DD0000000000000000000000000000000000003 +:101DE00000000000000000000000000000000000F3 +:101DF0000000000000003C0014BD010000000000D5 +:101E000000000000000000000000000000000000D2 +:101E100000000000000000000000000000000000C2 +:101E200000000000000000000000000000000000B2 +:101E300000000000000000003C0050BD0100000058 +:101E40000000000000000000000000000000000092 +:101E50000000000000000000000000000000000082 +:101E60000000000000000000000000000000000072 +:101E7000000000000000000000003C008CBD0100DC +:101E80000000000000000000000000000000000052 +:101E90000000000000000000000000000000000042 +:101EA0000000000000000000000000000000000032 +:101EB0000000000000000000000000003C00C8BD61 +:101EC0000100000000000000000000000000000011 +:101ED0000000000000000000000000000000000002 +:101EE00000000000000000000000000000000000F2 +:101EF00000000000000000000000000000003C00A6 +:101F000004BE01000000000000000000000000000E +:101F100000000000000000000000000000000000C1 +:101F200000000000000000000000000000000000B1 +:101F300000000000000000000000000000000000A1 +:101F40003C0040BE01000000000000000000000056 +:101F50000000000000000000000000000000000081 +:101F60000000000000000000000000000000000071 +:101F70000000000000000000000000000000000061 +:101F800000003C007CBE01000000000000000000DA +:101F90000000000000000000000000000000000041 +:101FA0000000000000000000000000000000000031 +:101FB0000000000000000000000000000000000021 +:101FC000000000003C00B8BE01000000000000005E +:101FD0000000000000000000000000000000000001 +:101FE00000000000000000000000000000000000F1 +:101FF00000000000000000000000000000000000E1 +:102000000000000000003C00F4BE010000000000E1 +:1020100000000000000000000000000000000000C0 +:1020200000000000000000000000000000000000B0 +:1020300000000000000000000000000000000000A0 +:1020400000000000000000003C0030BF0100000064 +:102050000000000000000000000000000000000080 +:102060000000000000000000000000000000000070 +:102070000000000000000000000000000000000060 +:10208000000000000000000000003C006CBF0100E8 +:102090000000000000000000000000000000000040 +:1020A0000000000000000000000000000000000030 +:1020B0000000000000000000000000000000000020 +:1020C0000000000000000000000000003C00A8BF6D +:1020D00001000000000000000000000000000000FF +:1020E00000000000000000000000000000000000F0 +:1020F00000000000000000000000000000000000E0 +:1021000000000000000000000000000000003C0093 +:10211000E4BF01000000000000000000000000001B +:1021200000000000000000000000000000000000AF +:10213000000000000000000000000000000000009F +:10214000000000000000000000000000000000008F +:102150003C0020C001000000000000000000000062 +:10216000000000000000000000000000000000006F +:10217000000000000000000000000000000000005F +:10218000000000000000000000000000000000004F +:1021900000003C005CC001000000000000000000E6 +:1021A000000000000000000000000000000000002F +:1021B000000000000000000000000000000000001F +:1021C000000000000000000000000000000000000F +:1021D000000000003C0098C001000000000000006A +:1021E00000000000000000000000000000000000EF +:1021F00000000000000000000000000000000000DF +:1022000000000000000000000000000000000000CE +:102210000000000000003C00D4C0010000000000ED +:1022200000000000000000000000000000000000AE +:10223000000000000000000000000000000000009E +:10224000000000000000000000000000000000008E +:1022500000000000000000003C0010C10100000070 +:10226000000000000000000000000000000000006E +:10227000000000000000000000000000000000005E +:10228000000000000000000000000000000000004E +:10229000000000000000000000003C004CC10100F4 +:1022A000000000000000000000000000000000002E +:1022B000000000000000000000000000000000001E +:1022C000000000000000000000000000000000000E +:1022D0000000000000000000000000003C0088C179 +:1022E00001000000000000000000000000000000ED +:1022F00000000000000000000000000000000000DE +:1023000000000000000000000000000000000000CD +:1023100000000000000000000000000000003C0081 +:10232000C4C1010000000000000000000000000027 +:10233000000000000000000000000000000000009D +:10234000000000000000000000000000000000008D +:10235000000000000000000000000000000000007D +:102360003C0000C20100000000000000000000006E +:10237000000000000000000000000000000000005D +:10238000000000000000000000000000000000004D +:10239000000000000000000000000000000000003D +:1023A00000003C003CC201000000000000000000F2 +:1023B000000000000000000000000000000000001D +:1023C000000000000000000000000000000000000D +:1023D00000000000000000000000000000000000FD +:1023E000000000003C0078C2010000000000000076 +:1023F00000000000000000000000000000000000DD +:1024000000000000000000000000000000000000CC +:1024100000000000000000000000000000000000BC +:102420000000000000003C00B4C2010000000000F9 +:10243000000000000000000000000000000000009C +:10244000000000000000000000000000000000008C +:10245000000000000000000000000000000000007C +:1024600000000000000000003C00F0C2010000007D +:10247000000000000000000000000000000000005C +:10248000000000000000000000000000000000004C +:10249000000000000000000000000000000000003C +:1024A000000000000000000000003C002CC3010000 +:1024B000000000000000000000000000000000001C +:1024C000000000000000000000000000000000000C +:1024D00000000000000000000000000000000000FC +:1024E0000000000000000000000000003C0068C385 +:1024F00001000000000000000000000000000000DB +:1025000000000000000000000000000000000000CB +:1025100000000000000000000000000000000000BB +:1025200000000000000000000000000000003C006F +:10253000A4C3010000000000000000000000000033 +:10254000000000000000000000000000000000008B +:10255000000000000000000000000000000000007B +:10256000000000000000000000000000000000006B +:102570003C00E0C30100000000000000000000007B +:10258000000000000000000000000000000000004B +:10259000000000000000000000000000000000003B +:1025A000000000000000000000000000000000002B +:1025B00000003C001CC401000000000000000000FE +:1025C000000000000000000000000000000000000B +:1025D00000000000000000000000000000000000FB +:1025E00000000000000000000000000000000000EB +:1025F000000000003C0058C4010000000000000082 +:1026000000000000000000000000000000000000CA +:1026100000000000000000000000000000000000BA +:1026200000000000000000000000000000000000AA +:102630000000000000003C0094C401000000000005 +:10264000000000000000000000000000000000008A +:10265000000000000000000000000000000000007A +:10266000000000000000000000000000000000006A +:1026700000000000000000003C00D0C40100000089 +:10268000000000000000000000000000000000004A +:10269000000000000000000000000000000000003A +:1026A000000000000000000000000000000000002A +:1026B000000000000000000000003C000CC501000C +:1026C000000000000000000000000000000000000A +:1026D00000000000000000000000000000000000FA +:1026E00000000000000000000000000000000000EA +:1026F0000000000000000000000000003C0048C591 +:1027000001000000000000000000000000000000C8 +:1027100000000000000000000000000000000000B9 +:1027200000000000000000000000000000000000A9 +:1027300000000000000000000000000000003C005D +:1027400084C501000000000000000000000000003F +:102750000000000000000000000000000000000079 +:102760000000000000000000000000000000000069 +:102770000000000000000000000000000000000059 +:102780003C00C0C501000000000000000000000087 +:102790000000000000000000000000000000000039 +:1027A0000000000000000000000000000000000029 +:1027B0000000000000000000000000000000000019 +:1027C00000003C00FCC5010000000000000000000B +:1027D00000000000000000000000000000000000F9 +:1027E00000000000000000000000000000000000E9 +:1027F00000000000000000000000000000000000D9 +:10280000000000003C0038C601000000000000008D +:1028100000000000000000000000000000000000B8 +:1028200000000000000000000000000000000000A8 +:102830000000000000000000000000000000000098 +:102840000000000000003C0074C601000000000011 +:102850000000000000000000000000000000000078 +:102860000000000000000000000000000000000068 +:102870000000000000000000000000000000000058 +:1028800000000000000000003C00B0C60100000095 +:102890000000000000000000000000000000000038 +:1028A0000000000000000000000000000000000028 +:1028B0000000000000000000000000000000000018 +:1028C000000000000000000000003C00ECC6010019 +:1028D00000000000000000000000000000000000F8 +:1028E00000000000000000000000000000000000E8 +:1028F00000000000000000000000000000000000D8 +:102900000000000000000000000000003C0028C79C +:1029100001000000000000000000000000000000B6 +:1029200000000000000000000000000000000000A7 +:102930000000000000000000000000000000000097 +:1029400000000000000000000000000000003C004B +:1029500064C701000000000000000000000000004B +:102960000000000000000000000000000000000067 +:102970000000000000000000000000000000000057 +:102980000000000000000000000000000000000047 +:102990003C00A0C701000000000000000000000093 +:1029A0000000000000000000000000000000000027 +:1029B0000000000000000000000000000000000017 +:1029C0000000000000000000000000000000000007 +:1029D00000003C00DCC70100000000000000000017 +:1029E00000000000000000000000000000000000E7 +:1029F00000000000000000000000000000000000D7 +:102A000000000000000000000000000000000000C6 +:102A1000000000003C0018C8010000000000000099 +:102A200000000000000000000000000000000000A6 +:102A30000000000000000000000000000000000096 +:102A40000000000000000000000000000000000086 +:102A50000000000000003C0054C80100000000001D +:102A60000000000000000000000000000000000066 +:102A70000000000000000000000000000000000056 +:102A80000000000000000000000000000000000046 +:102A900000000000000000003C0090C801000000A1 +:102AA0000000000000000000000000000000000026 +:102AB0000000000000000000000000000000000016 +:102AC0000000000000000000000000000000000006 +:102AD000000000000000000000003C00CCC8010025 +:102AE00000000000000000000000000000000000E6 +:102AF00000000000000000000000000000000000D6 +:102B000000000000000000000000000000000000C5 +:102B10000000000000000000000000003C0008C9A8 +:102B200001000000000000000000000000000000A4 +:102B30000000000000000000000000000000000095 +:102B40000000000000000000000000000000000085 +:102B500000000000000000000000000000003C0039 +:102B600044C9010000000000000000000000000057 +:102B70000000000000000000000000000000000055 +:102B80000000000000000000000000000000000045 +:102B90000000000000000000000000000000000035 +:102BA0003C0080C90100000000000000000000009F +:102BB0000000000000000000000000000000000015 +:102BC0000000000000000000000000000000000005 +:102BD00000000000000000000000000000000000F5 +:102BE00000003C00BCC90100000000000000000023 +:102BF00000000000000000000000000000000000D5 +:102C000000000000000000000000000000000000C4 +:102C100000000000000000000000000000000000B4 +:102C2000000000003C00F8C90100000000000000A6 +:102C30000000000000000000000000000000000094 +:102C40000000000000000000000000000000000084 +:102C50000000000000000000000000000000000074 +:102C60000000000000003C0034CA01000000000029 +:102C70000000000000000000000000000000000054 +:102C80000000000000000000000000000000000044 +:102C90000000000000000000000000000000000034 +:102CA00000000000000000003C0070CA01000000AD +:102CB0000000000000000000000000000000000014 +:102CC0000000000000000000000000000000000004 +:102CD00000000000000000000000000000000000F4 +:102CE000000000000000000000003C00ACCA010031 +:102CF00000000000000000000000000000000000D4 +:102D000000000000000000000000000000000000C3 +:102D100000000000000000000000000000000000B3 +:102D20000000000000000000000000003C00E8CAB5 +:102D30000100000000000000000000000000000092 +:102D40000000000000000000000000000000000083 +:102D50000000000000000000000000000000000073 +:102D600000000000000000000000000000003C0027 +:102D700024CB010000000000000000000000000063 +:102D80000000000000000000000000000000000043 +:102D90000000000000000000000000000000000033 +:102DA0000000000000000000000000000000000023 +:102DB0003C0060CB010000000000000000000000AB +:102DC0000000000000000000000000000000000003 +:102DD00000000000000000000000000000000000F3 +:102DE00000000000000000000000000000000000E3 +:102DF00000003C009CCB010000000000000000002F +:102E000000000000000000000000000000000000C2 +:102E100000000000000000000000000000000000B2 +:102E200000000000000000000000000000000000A2 +:102E3000000000003C00D8CB0100000000000000B2 +:102E40000000000000000000000000000000000082 +:102E50000000000000000000000000000000000072 +:102E60000000000000000000000000000000000062 +:102E70000000000000003C0014CC01000000000035 +:102E80000000000000000000000000000000000042 +:102E90000000000000000000000000000000000032 +:102EA0000000000000000000000000000000000022 +:102EB00000000000000000003C0050CC01000000B9 +:102EC0000000000000000000000000000000000002 +:102ED00000000000000000000000000000000000F2 +:102EE00000000000000000000000000000000000E2 +:102EF000000000000000000000003C008CCC01003D +:102F000000000000000000000000000000000000C1 +:102F100000000000000000000000000000000000B1 +:102F200000000000000000000000000000000000A1 +:102F30000000000000000000000000003C00C8CCC1 +:102F40000100000000000000000000000000000080 +:102F50000000000000000000000000000000000071 +:102F60000000000000000000000000000000000061 +:102F700000000000000000000000000000003C0015 +:102F800004CD01000000000000000000000000006F +:102F90000000000000000000000000000000000031 +:102FA0000000000000000000000000000000000021 +:102FB0000000000000000000000000000000000011 +:102FC0003C0040CD010000000000000000000000B7 +:102FD00000000000000000000000000000000000F1 +:102FE00000000000000000000000000000000000E1 +:102FF00000000000000000000000000000000000D1 +:1030000000003C007CCD010000000000000000003A +:1030100000000000000000000000000000000000B0 +:1030200000000000000000000000000000000000A0 +:103030000000000000000000000000000000000090 +:10304000000000003C00B8CD0100000000000000BE +:103050000000000000000000000000000000000070 +:103060000000000000000000000000000000000060 +:103070000000000000000000000000000000000050 +:103080000000000000003C00F4CD01000000000042 +:103090000000000000000000000000000000000030 +:1030A0000000000000000000000000000000000020 +:1030B0000000000000000000000000000000000010 +:1030C00000000000000000003C0030CE01000000C5 +:1030D00000000000000000000000000000000000F0 +:1030E00000000000000000000000000000000000E0 +:1030F00000000000000000000000000000000000D0 +:10310000000000000000000000003C006CCE010048 +:1031100000000000000000000000000000000000AF +:10312000000000000000000000000000000000009F +:10313000000000000000000000000000000000008F +:103140000000000000000000000000003C00A8CECD +:10315000010000000000000000000000000000006E +:10316000000000000000000000000000000000005F +:10317000000000000000000000000000000000004F +:1031800000000000000000000000000000003C0003 +:10319000E4CE01000000000000000000000000007C +:1031A000000000000000000000000000000000001F +:1031B000000000000000000000000000000000000F +:1031C00000000000000000000000000000000000FF +:1031D0003C0020CF010000000000000000000000C3 +:1031E00000000000000000000000000000000000DF +:1031F00000000000000000000000000000000000CF +:1032000000000000000000000000000000000000BE +:1032100000003C005CCF0100000000000000000046 +:10322000000000000000000000000000000000009E +:10323000000000000000000000000000000000008E +:10324000000000000000000000000000000000007E +:10325000000000003C0098CF0100000000000000CA +:10326000000000000000000000000000000000005E +:10327000000000000000000000000000000000004E +:10328000000000000000000000000000000000003E +:103290000000000000003C00D4CF0100000000004E +:1032A000000000000000000000000000000000001E +:1032B000000000000000000000000000000000000E +:1032C00000000000000000000000000000000000FE +:1032D00000000000000000003C0010D001000000D1 +:1032E00000000000000000000000000000000000DE +:1032F00000000000000000000000000000000000CE +:1033000000000000000000000000000000000000BD +:10331000000000000000000000003C004CD0010054 +:10332000000000000000000000000000000000009D +:10333000000000000000000000000000000000008D +:10334000000000000000000000000000000000007D +:103350000000000000000000000000003C0088D0D9 +:10336000010000000000000000000000000000005C +:10337000000000000000000000000000000000004D +:10338000000000000000000000000000000000003D +:1033900000000000000000000000000000003C00F1 +:1033A000C4D0010000000000000000000000000088 +:1033B000000000000000000000000000000000000D +:1033C00000000000000000000000000000000000FD +:1033D00000000000000000000000000000000000ED +:1033E0003C0000D1010000000000000000000000CF +:1033F00000000000000000000000000000000000CD +:1034000000000000000000000000000000000000BC +:1034100000000000000000000000000000000000AC +:1034200000003C003CD10100000000000000000052 +:10343000000000000000000000000000000000008C +:10344000000000000000000000000000000000007C +:10345000000000000000000000000000000000006C +:10346000000000003C0078D10100000000000000D6 +:10347000000000000000000000000000000000004C +:10348000000000000000000000000000000000003C +:10349000000000000000000000000000000000002C +:1034A0000000000000003C00B4D10100000000005A +:1034B000000000000000000000000000000000000C +:1034C00000000000000000000000000000000000FC +:1034D00000000000000000000000000000000000EC +:1034E00000000000000000003C00F0D101000000DE +:1034F00000000000000000000000000000000000CC +:1035000000000000000000000000000000000000BB +:1035100000000000000000000000000000000000AB +:10352000000000000000000000003C002CD2010060 +:10353000000000000000000000000000000000008B +:10354000000000000000000000000000000000007B +:10355000000000000000000000000000000000006B +:103560000000000000000000000000003C0068D2E5 +:10357000010000000000000000000000000000004A +:10358000000000000000000000000000000000003B +:10359000000000000000000000000000000000002B +:1035A00000000000000000000000000000003C00DF +:1035B000A4D2010000000000000000000000000094 +:1035C00000000000000000000000000000000000FB +:1035D00000000000000000000000000000000000EB +:1035E00000000000000000000000000000000000DB +:1035F0003C00E0D2010000000000000000000000DC +:1036000000000000000000000000000000000000BA +:1036100000000000000000000000000000000000AA +:10362000000000000000000000000000000000009A +:1036300000003C001CD3010000000000000000005E +:10364000000000000000000000000000000000007A +:10365000000000000000000000000000000000006A +:10366000000000000000000000000000000000005A +:10367000000000003C0058D30100000000000000E2 +:10368000000000000000000000000000000000003A +:10369000000000000000000000000000000000002A +:1036A000000000000000000000000000000000001A +:1036B0000000000000003C0094D301000000000066 +:1036C00000000000000000000000000000000000FA +:1036D00000000000000000000000000000000000EA +:1036E00000000000000000000000000000000000DA +:1036F00000000000000000003C00D0D301000000EA +:1037000000000000000000000000000000000000B9 +:1037100000000000000000000000000000000000A9 +:103720000000000000000000000000000000000099 +:10373000000000000000000000003C000CD401006C +:103740000000000000000000000000000000000079 +:103750000000000000000000000000000000000069 +:103760000000000000000000000000000000000059 +:103770000000000000000000000000003C0048D4F1 +:103780000100000000000000000000000000000038 +:103790000000000000000000000000000000000029 +:1037A0000000000000000000000000000000000019 +:1037B00000000000000000000000000000003C00CD +:1037C00084D40100000000000000000000000000A0 +:1037D00000000000000000000000000000000000E9 +:1037E00000000000000000000000000000000000D9 +:1037F00000000000000000000000000000000000C9 +:103800003C00C0D4010000000000000000000000E7 +:1038100000000000000000000000000000000000A8 +:103820000000000000000000000000000000000098 +:103830000000000000000000000000000000000088 +:1038400000003C00FCD4010000000000000000006B +:103850000000000000000000000000000000000068 +:103860000000000000000000000000000000000058 +:103870000000000000000000000000000000000048 +:10388000000000003C0038D50100000000000000EE +:103890000000000000000000000000000000000028 +:1038A0000000000000000000000000000000000018 +:1038B0000000000000000000000000000000000008 +:1038C0000000000000003C0074D501000000000072 +:1038D00000000000000000000000000000000000E8 +:1038E00000000000000000000000000000000000D8 +:1038F00000000000000000000000000000000000C8 +:1039000000000000000000003C00B0D501000000F5 +:1039100000000000000000000000000000000000A7 +:103920000000000000000000000000000000000097 +:103930000000000000000000000000000000000087 +:10394000000000000000000000003C00ECD5010079 +:103950000000000000000000000000000000000067 +:103960000000000000000000000000000000000057 +:103970000000000000000000000000000000000047 +:103980000000000000000000000000003C0028D6FD +:103990000100000000000000000000000000000026 +:1039A0000000000000000000000000000000000017 +:1039B0000000000000000000000000000000000007 +:1039C00000000000000000000000000000003C00BB +:1039D00064D60100000000000000000000000000AC +:1039E00000000000000000000000000000000000D7 +:1039F00000000000000000000000000000000000C7 +:103A000000000000000000000000000000000000B6 +:103A10003C00A0D6010000000000000000000000F3 +:103A20000000000000000000000000000000000096 +:103A30000000000000000000000000000000000086 +:103A40000000000000000000000000000000000076 +:103A500000003C00DCD60100000000000000000077 +:103A60000000000000000000000000000000000056 +:103A70000000000000000000000000000000000046 +:103A80000000000000000000000000000000000036 +:103A9000000000003C0018D70100000000000000FA +:103AA0000000000000000000000000000000000016 +:103AB0000000000000000000000000000000000006 +:103AC00000000000000000000000000000000000F6 +:103AD0000000000000003C0054D70100000000007E +:103AE00000000000000000000000000000000000D6 +:103AF00000000000000000000000000000000000C6 +:103B000000000000000000000000000000000000B5 +:103B100000000000000000003C0090D70100000001 +:103B20000000000000000000000000000000000095 +:103B30000000000000000000000000000000000085 +:103B40000000000000000000000000000000000075 +:103B5000000000000000000000003C00CCD7010085 +:103B60000000000000000000000000000000000055 +:103B70000000000000000000000000000000000045 +:103B80000000000000000000000000000000000035 +:103B90000000000000000000000000003C0008D809 +:103BA0000100000000000000000000000000000014 +:103BB0000000000000000000000000000000000005 +:103BC00000000000000000000000000000000000F5 +:103BD00000000000000000000000000000003C00A9 +:103BE00044D80100000000000000000000000000B8 +:103BF00000000000000000000000000000000000C5 +:103C000000000000000000000000000000000000B4 +:103C100000000000000000000000000000000000A4 +:103C20003C0080D8010000000000000000000000FF +:103C30000000000000000000000000000000000084 +:103C40000000000000000000000000000000000074 +:103C50000000000000000000000000000000000064 +:103C600000003C00BCD80100000000000000000083 +:103C70000000000000000000000000000000000044 +:103C80000000000000000000000000000000000034 +:103C90000000000000000000000000000000000024 +:103CA000000000003C00F8D8010000000000000007 +:103CB0000000000000000000000000000000000004 +:103CC00000000000000000000000000000000000F4 +:103CD00000000000000000000000000000000000E4 +:103CE0000000000000003C0034D90100000000008A +:103CF00000000000000000000000000000000000C4 +:103D000000000000000000000000000000000000B3 +:103D100000000000000000000000000000000000A3 +:103D200000000000000000003C0070D9010000000D +:103D30000000000000000000000000000000000083 +:103D40000000000000000000000000000000000073 +:103D50000000000000000000000000000000000063 +:103D6000000000000000000000003C00ACD9010091 +:103D70000000000000000000000000000000000043 +:103D80000000000000000000000000000000000033 +:103D90000000000000000000000000000000000023 +:103DA0000000000000000000000000003C00E8D916 +:103DB0000100000000000000000000000000000002 +:103DC00000000000000000000000000000000000F3 +:103DD00000000000000000000000000000000000E3 +:103DE00000000000000000000000000000003C0097 +:103DF00024DA0100000000000000000000000000C4 +:103E000000000000000000000000000000000000B2 +:103E100000000000000000000000000000000000A2 +:103E20000000000000000000000000000000000092 +:103E30003C0060DA0100000000000000000000000B +:103E40000000000000000000000000000000000072 +:103E50000000000000000000000000000000000062 +:103E60000000000000000000000000000000000052 +:103E700000003C009CDA010000000000000000008F +:103E80000000000000000000000000000000000032 +:103E90000000000000000000000000000000000022 +:103EA0000000000000000000000000000000000012 +:103EB000000000003C00D8DA010000000000000013 +:103EC00000000000000000000000000000000000F2 +:103ED00000000000000000000000000000000000E2 +:103EE00000000000000000000000000000000000D2 +:103EF0000000000000003C0014DB01000000000096 +:103F000000000000000000000000000000000000B1 +:103F100000000000000000000000000000000000A1 +:103F20000000000000000000000000000000000091 +:103F300000000000000000003C0050DB0100000019 +:103F40000000000000000000000000000000000071 +:103F50000000000000000000000000000000000061 +:103F60000000000000000000000000000000000051 +:103F7000000000000000000000003C008CDB01009D +:103F80000000000000000000000000000000000031 +:103F90000000000000000000000000000000000021 +:103FA0000000000000000000000000000000000011 +:103FB0000000000000000000000000003C00C8DB22 +:103FC00001000000000000000000000000000000F0 +:103FD00000000000000000000000000000000000E1 +:103FE00000000000000000000000000000000000D1 +:103FF00000000000000000000000000000003C0085 +:1040000004DC0100000000000000000000000000CF +:1040100000000000000000000000000000000000A0 +:104020000000000000000000000000000000000090 +:104030000000000000000000000000000000000080 +:104040003C0040DC01000000000000000000000017 +:104050000000000000000000000000000000000060 +:104060000000000000000000000000000000000050 +:104070000000000000000000000000000000000040 +:1040800000003C007CDC010000000000000000009B +:104090000000000000000000000000000000000020 +:1040A0000000000000000000000000000000000010 +:1040B0000000000000000000000000000000000000 +:1040C000000000003C00B8DC01000000000000001F +:1040D00000000000000000000000000000000000E0 +:1040E00000000000000000000000000000000000D0 +:1040F00000000000000000000000000000000000C0 +:104100000000000000003C00F4DC010000000000A2 +:10411000000000000000000000000000000000009F +:10412000000000000000000000000000000000008F +:10413000000000000000000000000000000000007F +:1041400000000000000000003C0030DD0100000025 +:10415000000000000000000000000000000000005F +:10416000000000000000000000000000000000004F +:10417000000000000000000000000000000000003F +:10418000000000000000000000003C006CDD0100A9 +:10419000000000000000000000000000000000001F +:1041A000000000000000000000000000000000000F +:1041B00000000000000000000000000000000000FF +:1041C0000000000000000000000000003C00A8DD2E +:1041D00001000000000000000000000000000000DE +:1041E00000000000000000000000000000000000CF +:1041F00000000000000000000000000000000000BF +:1042000000000000000000000000000000003C0072 +:10421000E4DD0100000000000000000000000000DC +:10422000000000000000000000000000000000008E +:10423000000000000000000000000000000000007E +:10424000000000000000000000000000000000006E +:104250003C0020DE01000000000000000000000023 +:10426000000000000000000000000000000000004E +:10427000000000000000000000000000000000003E +:10428000000000000000000000000000000000002E +:1042900000003C005CDE01000000000000000000A7 +:1042A000000000000000000000000000000000000E +:1042B00000000000000000000000000000000000FE +:1042C00000000000000000000000000000000000EE +:1042D000000000003C0098DE01000000000000002B +:1042E00000000000000000000000000000000000CE +:1042F00000000000000000000000000000000000BE +:1043000000000000000000000000000000000000AD +:104310000000000000003C00D4DE010000000000AE +:10432000000000000000000000000000000000008D +:10433000000000000000000000000000000000007D +:10434000000000000000000000000000000000006D +:1043500000000000000000003C0010DF0100000031 +:10436000000000000000000000000000000000004D +:10437000000000000000000000000000000000003D +:10438000000000000000000000000000000000002D +:10439000000000000000000000003C004CDF0100B5 +:1043A000000000000000000000000000000000000D +:1043B00000000000000000000000000000000000FD +:1043C00000000000000000000000000000000000ED +:1043D0000000000000000000000000003C0088DF3A +:1043E00001000000000000000000000000000000CC +:1043F00000000000000000000000000000000000BD +:1044000000000000000000000000000000000000AC +:1044100000000000000000000000000000003C0060 +:10442000C4DF0100000000000000000000000000E8 +:10443000000000000000000000000000000000007C +:10444000000000000000000000000000000000006C +:10445000000000000000000000000000000000005C +:104460003C0000E00100000000000000000000002F +:10447000000000000000000000000000000000003C +:10448000000000000000000000000000000000002C +:10449000000000000000000000000000000000001C +:1044A00000003C003CE001000000000000000000B3 +:1044B00000000000000000000000000000000000FC +:1044C00000000000000000000000000000000000EC +:1044D00000000000000000000000000000000000DC +:1044E000000000003C0078E0010000000000000037 +:1044F00000000000000000000000000000000000BC +:1045000000000000000000000000000000000000AB +:10451000000000000000000000000000000000009B +:104520000000000000003C00B4E0010000000000BA +:10453000000000000000000000000000000000007B +:10454000000000000000000000000000000000006B +:10455000000000000000000000000000000000005B +:1045600000000000000000003C00F0E0010000003E +:10457000000000000000000000000000000000003B +:10458000000000000000000000000000000000002B +:10459000000000000000000000000000000000001B +:1045A000000000000000000000003C002CE10100C1 +:1045B00000000000000000000000000000000000FB +:1045C00000000000000000000000000000000000EB +:1045D00000000000000000000000000000000000DB +:1045E0000000000000000000000000003C0068E146 +:1045F00001000000000000000000000000000000BA +:1046000000000000000000000000000000000000AA +:10461000000000000000000000000000000000009A +:1046200000000000000000000000000000003C004E +:10463000A4E10100000000000000000000000000F4 +:10464000000000000000000000000000000000006A +:10465000000000000000000000000000000000005A +:10466000000000000000000000000000000000004A +:104670003C00E0E10100000000000000000000003C +:10468000000000000000000000000000000000002A +:10469000000000000000000000000000000000001A +:1046A000000000000000000000000000000000000A +:1046B00000003C001CE201000000000000000000BF +:1046C00000000000000000000000000000000000EA +:1046D00000000000000000000000000000000000DA +:1046E00000000000000000000000000000000000CA +:1046F000000000003C0058E2010000000000000043 +:1047000000000000000000000000000000000000A9 +:104710000000000000000000000000000000000099 +:104720000000000000000000000000000000000089 +:104730000000000000003C0094E2010000000000C6 +:104740000000000000000000000000000000000069 +:104750000000000000000000000000000000000059 +:104760000000000000000000000000000000000049 +:1047700000000000000000003C00D0E2010000004A +:104780000000000000000000000000000000000029 +:104790000000000000000000000000000000000019 +:1047A0000000000000000000000000000000000009 +:1047B000000000000000000000003C000CE30100CD +:1047C00000000000000000000000000000000000E9 +:1047D00000000000000000000000000000000000D9 +:1047E00000000000000000000000000000000000C9 +:1047F0000000000000000000000000003C0048E352 +:1048000001000000000000000000000000000000A7 +:104810000000000000000000000000000000000098 +:104820000000000000000000000000000000000088 +:1048300000000000000000000000000000003C003C +:1048400084E3010000000000000000000000000000 +:104850000000000000000000000000000000000058 +:104860000000000000000000000000000000000048 +:104870000000000000000000000000000000000038 +:104880003C00C0E301000000000000000000000048 +:104890000000000000000000000000000000000018 +:1048A0000000000000000000000000000000000008 +:1048B00000000000000000000000000000000000F8 +:1048C00000003C00FCE301000000000000000000CC +:1048D00000000000000000000000000000000000D8 +:1048E00000000000000000000000000000000000C8 +:1048F00000000000000000000000000000000000B8 +:10490000000000003C0038E401000000000000004E +:104910000000000000000000000000000000000097 +:104920000000000000000000000000000000000087 +:104930000000000000000000000000000000000077 +:104940000000000000003C0074E4010000000000D2 +:104950000000000000000000000000000000000057 +:104960000000000000000000000000000000000047 +:104970000000000000000000000000000000000037 +:1049800000000000000000003C00B0E40100000056 +:104990000000000000000000000000000000000017 +:1049A0000000000000000000000000000000000007 +:1049B00000000000000000000000000000000000F7 +:1049C000000000000000000000003C00ECE40100DA +:1049D00000000000000000000000000000000000D7 +:1049E00000000000000000000000000000000000C7 +:1049F00000000000000000000000000000000000B7 +:104A00000000000000000000000000003C0028E55D +:104A10000100000000000000000000000000000095 +:104A20000000000000000000000000000000000086 +:104A30000000000000000000000000000000000076 +:104A400000000000000000000000000000003C002A +:104A500064E501000000000000000000000000000C +:104A60000000000000000000000000000000000046 +:104A70000000000000000000000000000000000036 +:104A80000000000000000000000000000000000026 +:104A90003C00A0E501000000000000000000000054 +:104AA0000000000000000000000000000000000006 +:104AB00000000000000000000000000000000000F6 +:104AC00000000000000000000000000000000000E6 +:104AD00000003C00DCE501000000000000000000D8 +:104AE00000000000000000000000000000000000C6 +:104AF00000000000000000000000000000000000B6 +:104B000000000000000000000000000000000000A5 +:104B1000000000003C0018E601000000000000005A +:104B20000000000000000000000000000000000085 +:104B30000000000000000000000000000000000075 +:104B40000000000000000000000000000000000065 +:104B50000000000000003C0054E6010000000000DE +:104B60000000000000000000000000000000000045 +:104B70000000000000000000000000000000000035 +:104B80000000000000000000000000000000000025 +:104B900000000000000000003C0090E60100000062 +:104BA0000000000000000000000000000000000005 +:104BB00000000000000000000000000000000000F5 +:104BC00000000000000000000000000000000000E5 +:104BD000000000000000000000003C00CCE60100E6 +:104BE00000000000000000000000000000000000C5 +:104BF00000000000000000000000000000000000B5 +:104C000000000000000000000000000000000000A4 +:104C10000000000000000000000000003C0008E769 +:104C20000100000000000000000000000000000083 +:104C30000000000000000000000000000000000074 +:104C40000000000000000000000000000000000064 +:104C500000000000000000000000000000003C0018 +:104C600044E7010000000000000000000000000018 +:104C70000000000000000000000000000000000034 +:104C80000000000000000000000000000000000024 +:104C90000000000000000000000000000000000014 +:104CA0003C0080E701000000000000000000000060 +:104CB00000000000000000000000000000000000F4 +:104CC00000000000000000000000000000000000E4 +:104CD00000000000000000000000000000000000D4 +:104CE00000003C00BCE701000000000000000000E4 +:104CF00000000000000000000000000000000000B4 +:104D000000000000000000000000000000000000A3 +:104D10000000000000000000000000000000000093 +:104D2000000000003C00F8E7010000000000000067 +:104D30000000000000000000000000000000000073 +:104D40000000000000000000000000000000000063 +:104D50000000000000000000000000000000000053 +:104D60000000000000003C0034E8010000000000EA +:104D70000000000000000000000000000000000033 +:104D80000000000000000000000000000000000023 +:104D90000000000000000000000000000000000013 +:104DA00000000000000000003C0070E8010000006E +:104DB00000000000000000000000000000000000F3 +:104DC00000000000000000000000000000000000E3 +:104DD00000000000000000000000000000000000D3 +:104DE000000000000000000000003C00ACE80100F2 +:104DF00000000000000000000000000000000000B3 +:104E000000000000000000000000000000000000A2 +:104E10000000000000000000000000000000000092 +:104E20000000000000000000000000003C00E8E876 +:104E30000100000000000000000000000000000071 +:104E40000000000000000000000000000000000062 +:104E50000000000000000000000000000000000052 +:104E600000000000000000000000000000003C0006 +:104E700024E9010000000000000000000000000024 +:104E80000000000000000000000000000000000022 +:104E90000000000000000000000000000000000012 +:104EA0000000000000000000000000000000000002 +:104EB0003C0060E90100000000000000000000006C +:104EC00000000000000000000000000000000000E2 +:104ED00000000000000000000000000000000000D2 +:104EE00000000000000000000000000000000000C2 +:104EF00000003C009CE901000000000000000000F0 +:104F000000000000000000000000000000000000A1 +:104F10000000000000000000000000000000000091 +:104F20000000000000000000000000000000000081 +:104F3000000000003C00D8E9010000000000000073 +:104F40000000000000000000000000000000000061 +:104F50000000000000000000000000000000000051 +:104F60000000000000000000000000000000000041 +:104F70000000000000003C0014EA010000000000F6 +:104F80000000000000000000000000000000000021 +:104F90000000000000000000000000000000000011 +:104FA0000000000000000000000000000000000001 +:104FB00000000000000000003C0050EA010000007A +:104FC00000000000000000000000000000000000E1 +:104FD00000000000000000000000000000000000D1 +:104FE00000000000000000000000000000000000C1 +:104FF000000000000000000000003C008CEA0100FE +:1050000000000000000000000000000000000000A0 +:105010000000000000000000000000000000000090 +:105020000000000000000000000000000000000080 +:105030000000000000000000000000003C00C8EA82 +:10504000010000000000000000000000000000005F +:105050000000000000000000000000000000000050 +:105060000000000000000000000000000000000040 +:1050700000000000000000000000000000003C00F4 +:1050800004EB010000000000000000000000000030 +:105090000000000000000000000000000000000010 +:1050A0000000000000000000000000000000000000 +:1050B00000000000000000000000000000000000F0 +:1050C0003C0040EB01000000000000000000000078 +:1050D00000000000000000000000000000000000D0 +:1050E00000000000000000000000000000000000C0 +:1050F00000000000000000000000000000000000B0 +:1051000000003C007CEB01000000000000000000FB +:10511000000000000000000000000000000000008F +:10512000000000000000000000000000000000007F +:10513000000000000000000000000000000000006F +:10514000000000003C00B8EB01000000000000007F +:10515000000000000000000000000000000000004F +:10516000000000000000000000000000000000003F +:10517000000000000000000000000000000000002F +:105180000000000000003C00F4EB01000000000003 +:10519000000000000000000000000000000000000F +:1051A00000000000000000000000000000000000FF +:1051B00000000000000000000000000000000000EF +:1051C00000000000000000003C0030EC0100000086 +:1051D00000000000000000000000000000000000CF +:1051E00000000000000000000000000000000000BF +:1051F00000000000000000000000000000000000AF +:10520000000000000000000000003C006CEC010009 +:10521000000000000000000000000000000000008E +:10522000000000000000000000000000000000007E +:10523000000000000000000000000000000000006E +:105240000000000000000000000000003C00A8EC8E +:10525000010000000000000000000000000000004D +:10526000000000000000000000000000000000003E +:10527000000000000000000000000000000000002E +:1052800000000000000000000000000000003C00E2 +:10529000E4EC01000000000000000000000000003D +:1052A00000000000000000000000000000000000FE +:1052B00000000000000000000000000000000000EE +:1052C00000000000000000000000000000000000DE +:1052D0003C0020ED01000000000000000000000084 +:1052E00000000000000000000000000000000000BE +:1052F00000000000000000000000000000000000AE +:10530000000000000000000000000000000000009D +:1053100000003C005CED0100000000000000000007 +:10532000000000000000000000000000000000007D +:10533000000000000000000000000000000000006D +:10534000000000000000000000000000000000005D +:10535000000000003C0098ED01000000000000008B +:10536000000000000000000000000000000000003D +:10537000000000000000000000000000000000002D +:10538000000000000000000000000000000000001D +:105390000000000000003C00D4ED0100000000000F +:1053A00000000000000000000000000000000000FD +:1053B00000000000000000000000000000000000ED +:1053C00000000000000000000000000000000000DD +:1053D00000000000000000003C0010EE0100000092 +:1053E00000000000000000000000000000000000BD +:1053F00000000000000000000000000000000000AD +:10540000000000000000000000000000000000009C +:10541000000000000000000000003C004CEE010015 +:10542000000000000000000000000000000000007C +:10543000000000000000000000000000000000006C +:10544000000000000000000000000000000000005C +:105450000000000000000000000000003C0088EE9A +:10546000010000000000000000000000000000003B +:10547000000000000000000000000000000000002C +:10548000000000000000000000000000000000001C +:1054900000000000000000000000000000003C00D0 +:1054A000C4EE010000000000000000000000000049 +:1054B00000000000000000000000000000000000EC +:1054C00000000000000000000000000000000000DC +:1054D00000000000000000000000000000000000CC +:1054E0003C0000EF01000000000000000000000090 +:1054F00000000000000000000000000000000000AC +:10550000000000000000000000000000000000009B +:10551000000000000000000000000000000000008B +:1055200000003C003CEF0100000000000000000013 +:10553000000000000000000000000000000000006B +:10554000000000000000000000000000000000005B +:10555000000000000000000000000000000000004B +:10556000000000003C0078EF010000000000000097 +:10557000000000000000000000000000000000002B +:10558000000000000000000000000000000000001B +:10559000000000000000000000000000000000000B +:1055A0000000000000003C00B4EF0100000000001B +:1055B00000000000000000000000000000000000EB +:1055C00000000000000000000000000000000000DB +:1055D00000000000000000000000000000000000CB +:1055E00000000000000000003C00F0EF010000009F +:1055F00000000000000000000000000000000000AB +:10560000000000000000000000000000000000009A +:10561000000000000000000000000000000000008A +:10562000000000000000000000003C002CF0010021 +:10563000000000000000000000000000000000006A +:10564000000000000000000000000000000000005A +:10565000000000000000000000000000000000004A +:105660000000000000000000000000003C0068F0A6 +:105670000100000000000000000000000000000029 +:10568000000000000000000000000000000000001A +:10569000000000000000000000000000000000000A +:1056A00000000000000000000000000000003C00BE +:1056B000A4F0010000000000000000000000000055 +:1056C00000000000000000000000000000000000DA +:1056D00000000000000000000000000000000000CA +:1056E00000000000000000000000000000000000BA +:1056F0003C00E0F00100000000000000000000009D +:105700000000000000000000000000000000000099 +:105710000000000000000000000000000000000089 +:105720000000000000000000000000000000000079 +:1057300000003C001CF1010000000000000000001F +:105740000000000000000000000000000000000059 +:105750000000000000000000000000000000000049 +:105760000000000000000000000000000000000039 +:10577000000000003C0058F10100000000000000A3 +:105780000000000000000000000000000000000019 +:105790000000000000000000000000000000000009 +:1057A00000000000000000000000000000000000F9 +:1057B0000000000000003C0094F101000000000027 +:1057C00000000000000000000000000000000000D9 +:1057D00000000000000000000000000000000000C9 +:1057E00000000000000000000000000000000000B9 +:1057F00000000000000000003C00D0F101000000AB +:105800000000000000000000000000000000000098 +:105810000000000000000000000000000000000088 +:105820000000000000000000000000000000000078 +:10583000000000000000000000003C000CF201002D +:105840000000000000000000000000000000000058 +:105850000000000000000000000000000000000048 +:105860000000000000000000000000000000000038 +:105870000000000000000000000000003C0048F2B2 +:105880000100000000000000000000000000000017 +:105890000000000000000000000000000000000008 +:1058A00000000000000000000000000000000000F8 +:1058B00000000000000000000000000000003C00AC +:1058C00084F2010000000000000000000000000061 +:1058D00000000000000000000000000000000000C8 +:1058E00000000000000000000000000000000000B8 +:1058F00000000000000000000000000000000000A8 +:105900003C00C0F2010000000000000000000000A8 +:105910000000000000000000000000000000000087 +:105920000000000000000000000000000000000077 +:105930000000000000000000000000000000000067 +:1059400000003C00FCF2010000000000000000002C +:105950000000000000000000000000000000000047 +:105960000000000000000000000000000000000037 +:105970000000000000000000000000000000000027 +:10598000000000003C0038F30100000000000000AF +:105990000000000000000000000000000000000007 +:1059A00000000000000000000000000000000000F7 +:1059B00000000000000000000000000000000000E7 +:1059C0000000000000003C0074F301000000000033 +:1059D00000000000000000000000000000000000C7 +:1059E00000000000000000000000000000000000B7 +:1059F00000000000000000000000000000000000A7 +:105A000000000000000000003C00B0F301000000B6 +:105A10000000000000000000000000000000000086 +:105A20000000000000000000000000000000000076 +:105A30000000000000000000000000000000000066 +:105A4000000000000000000000003C00ECF301003A +:105A50000000000000000000000000000000000046 +:105A60000000000000000000000000000000000036 +:105A70000000000000000000000000000000000026 +:105A80000000000000000000000000003C0028F4BE +:105A90000100000000000000000000000000000005 +:105AA00000000000000000000000000000000000F6 +:105AB00000000000000000000000000000000000E6 +:105AC00000000000000000000000000000003C009A +:105AD00064F401000000000000000000000000006D +:105AE00000000000000000000000000000000000B6 +:105AF00000000000000000000000000000000000A6 +:105B00000000000000000000000000000000000095 +:105B10003C00A0F4010000000000000000000000B4 +:105B20000000000000000000000000000000000075 +:105B30000000000000000000000000000000000065 +:105B40000000000000000000000000000000000055 +:105B500000003C00DCF40100000000000000000038 +:105B60000000000000000000000000000000000035 +:105B70000000000000000000000000000000000025 +:105B80000000000000000000000000000000000015 +:105B9000000000003C0018F50100000000000000BB +:105BA00000000000000000000000000000000000F5 +:105BB00000000000000000000000000000000000E5 +:105BC00000000000000000000000000000000000D5 +:105BD0000000000000003C0054F50100000000003F +:105BE00000000000000000000000000000000000B5 +:105BF00000000000000000000000000000000000A5 +:105C00000000000000000000000000000000000094 +:105C100000000000000000003C0090F501000000C2 +:105C20000000000000000000000000000000000074 +:105C30000000000000000000000000000000000064 +:105C40000000000000000000000000000000000054 +:105C5000000000000000000000003C00CCF5010046 +:105C60000000000000000000000000000000000034 +:105C70000000000000000000000000000000000024 +:105C80000000000000000000000000000000000014 +:105C90000000000000000000000000003C0008F6CA +:105CA00001000000000000000000000000000000F3 +:105CB00000000000000000000000000000000000E4 +:105CC00000000000000000000000000000000000D4 +:105CD00000000000000000000000000000003C0088 +:105CE00044F6010000000000000000000000000079 +:105CF00000000000000000000000000000000000A4 +:105D00000000000000000000000000000000000093 +:105D10000000000000000000000000000000000083 +:105D20003C0080F6010000000000000000000000C0 +:105D30000000000000000000000000000000000063 +:105D40000000000000000000000000000000000053 +:105D50000000000000000000000000000000000043 +:105D600000003C00BCF60100000000000000000044 +:105D70000000000000000000000000000000000023 +:105D80000000000000000000000000000000000013 +:105D90000000000000000000000000000000000003 +:105DA000000000003C00F8F60100000000000000C8 +:105DB00000000000000000000000000000000000E3 +:105DC00000000000000000000000000000000000D3 +:105DD00000000000000000000000000000000000C3 +:105DE0000000000000003C0034F70100000000004B +:105DF00000000000000000000000000000000000A3 +:105E00000000000000000000000000000000000092 +:105E10000000000000000000000000000000000082 +:105E200000000000000000003C0070F701000000CE +:105E30000000000000000000000000000000000062 +:105E40000000000000000000000000000000000052 +:105E50000000000000000000000000000000000042 +:105E6000000000000000000000003C00ACF7010052 +:105E70000000000000000000000000000000000022 +:105E80000000000000000000000000000000000012 +:105E90000000000000000000000000000000000002 +:105EA0000000000000000000000000003C00E8F7D7 +:105EB00001000000000000000000000000000000E1 +:105EC00000000000000000000000000000000000D2 +:105ED00000000000000000000000000000000000C2 +:105EE00000000000000000000000000000003C0076 +:105EF00024F8010000000000000000000000000085 +:105F00000000000000000000000000000000000091 +:105F10000000000000000000000000000000000081 +:105F20000000000000000000000000000000000071 +:105F30003C0060F8010000000000000000000000CC +:105F40000000000000000000000000000000000051 +:105F50000000000000000000000000000000000041 +:105F60000000000000000000000000000000000031 +:105F700000003C009CF80100000000000000000050 +:105F80000000000000000000000000000000000011 +:105F90000000000000000000000000000000000001 +:105FA00000000000000000000000000000000000F1 +:105FB000000000003C00D8F80100000000000000D4 +:105FC00000000000000000000000000000000000D1 +:105FD00000000000000000000000000000000000C1 +:105FE00000000000000000000000000000000000B1 +:105FF0000000000000003C0014F901000000000057 +:106000000000000000000000000000000000000090 +:106010000000000000000000000000000000000080 +:106020000000000000000000000000000000000070 +:1060300000000000000000003C0050F901000000DA +:106040000000000000000000000000000000000050 +:106050000000000000000000000000000000000040 +:106060000000000000000000000000000000000030 +:10607000000000000000000000003C008CF901005E +:106080000000000000000000000000000000000010 +:106090000000000000000000000000000000000000 +:1060A00000000000000000000000000000000000F0 +:1060B0000000000000000000000000003C00C8F9E3 +:1060C00001000000000000000000000000000000CF +:1060D00000000000000000000000000000000000C0 +:1060E00000000000000000000000000000000000B0 +:1060F00000000000000000000000000000003C0064 +:1061000004FA010000000000000000000000000090 +:10611000000000000000000000000000000000007F +:10612000000000000000000000000000000000006F +:10613000000000000000000000000000000000005F +:106140003C0040FA010000000000000000000000D8 +:10615000000000000000000000000000000000003F +:10616000000000000000000000000000000000002F +:10617000000000000000000000000000000000001F +:1061800000003C007CFA010000000000000000005C +:1061900000000000000000000000000000000000FF +:1061A00000000000000000000000000000000000EF +:1061B00000000000000000000000000000000000DF +:1061C000000000003C00B8FA0100000000000000E0 +:1061D00000000000000000000000000000000000BF +:1061E00000000000000000000000000000000000AF +:1061F000000000000000000000000000000000009F +:106200000000000000003C00F4FA01000000000063 +:10621000000000000000000000000000000000007E +:10622000000000000000000000000000000000006E +:10623000000000000000000000000000000000005E +:1062400000000000000000003C0030FB01000000E6 +:10625000000000000000000000000000000000003E +:10626000000000000000000000000000000000002E +:10627000000000000000000000000000000000001E +:10628000000000000000000000003C006CFB01006A +:1062900000000000000000000000000000000000FE +:1062A00000000000000000000000000000000000EE +:1062B00000000000000000000000000000000000DE +:1062C0000000000000000000000000003C00A8FBEF +:1062D00001000000000000000000000000000000BD +:1062E00000000000000000000000000000000000AE +:1062F000000000000000000000000000000000009E +:1063000000000000000000000000000000003C0051 +:10631000E4FB01000000000000000000000000009D +:10632000000000000000000000000000000000006D +:10633000000000000000000000000000000000005D +:10634000000000000000000000000000000000004D +:106350003C0020FC010000000000000000000000E4 +:10636000000000000000000000000000000000002D +:10637000000000000000000000000000000000001D +:10638000000000000000000000000000000000000D +:1063900000003C005CFC0100000000000000000068 +:1063A00000000000000000000000000000000000ED +:1063B00000000000000000000000000000000000DD +:1063C00000000000000000000000000000000000CD +:1063D000000000003C0098FC0100000000000000EC +:1063E00000000000000000000000000000000000AD +:1063F000000000000000000000000000000000009D +:10640000000000000000000000000000000000008C +:106410000000000000003C00D4FC0100000000006F +:10642000000000000000000000000000000000006C +:10643000000000000000000000000000000000005C +:10644000000000000000000000000000000000004C +:1064500000000000000000003C0010FD01000000F2 +:10646000000000000000000000000000000000002C +:10647000000000000000000000000000000000001C +:10648000000000000000000000000000000000000C +:10649000000000000000000000003C004CFD010076 +:1064A00000000000000000000000000000000000EC +:1064B00000000000000000000000000000000000DC +:1064C00000000000000000000000000000000000CC +:1064D0000000000000000000000000003C0088FDFB +:1064E00001000000000000000000000000000000AB +:1064F000000000000000000000000000000000009C +:10650000000000000000000000000000000000008B +:1065100000000000000000000000000000003C003F +:10652000C4FD0100000000000000000000000000A9 +:10653000000000000000000000000000000000005B +:10654000000000000000000000000000000000004B +:10655000000000000000000000000000000000003B +:106560003C0000FE010000000000000000000000F0 +:10657000000000000000000000000000000000001B +:10658000000000000000000000000000000000000B +:1065900000000000000000000000000000000000FB +:1065A00000003C003CFE0100000000000000000074 +:1065B00000000000000000000000000000000000DB +:1065C00000000000000000000000000000000000CB +:1065D00000000000000000000000000000000000BB +:1065E000000000003C0078FE0100000000000000F8 +:1065F000000000000000000000000000000000009B +:10660000000000000000000000000000000000008A +:10661000000000000000000000000000000000007A +:106620000000000000003C00B4FE0100000000007B +:10663000000000000000000000000000000000005A +:10664000000000000000000000000000000000004A +:10665000000000000000000000000000000000003A +:1066600000000000000000003C00F0FE01000000FF +:10667000000000000000000000000000000000001A +:10668000000000000000000000000000000000000A +:1066900000000000000000000000000000000000FA +:1066A000000000000000000000003C002CFF010082 +:1066B00000000000000000000000000000000000DA +:1066C00000000000000000000000000000000000CA +:1066D00000000000000000000000000000000000BA +:1066E0000000000000000000000000000C0068FF37 +:1066F00001000000000000000000000000003C005D +:106700000010040070B52B4806218175C175017E0B +:10671000490849000176017E02229143017626490B +:106720000B785B085B000B7004238B700C234376A3 +:10673000202303751A244475242484761024C476F7 +:106740003C003C1004002A254D70057A3026B543E4 +:1067500020350572857A6D086D008572857A9543BE +:106760008572857A042635438572857A08263543F5 +:106770008572857AA5438572057B2C430473047B5F +:106780001C433C00781004000473047B40252C4318 +:106790000473847A23438372837AAB438372037BCB +:1067A00080242343037308789043087008780122FB +:1067B00010430870087804229043087070BD0000F0 +:1067C0000C8007003C00B4100400808007000149E1 +:1067D00004204873704740800700034980B50020BB +:1067E000088000F00AFB80BD0000FC6B01007047D0 +:1067F000000080B500F067FB80BD80B50A49182015 +:10680000C1F73BFA09493C00F01004000220C1F72F +:1068100037FA08491F20C1F733FA07491C20C1F78E +:106820002FFA06490320C1F72BFA80BD992A0000F0 +:1068300041250000552500005D2500003925000098 +:1068400080B5BFF791FD80BD3C002C11040080B5E0 +:10685000054A05490A20BFF74EFF0120044980027E +:106860000860486080BDB4740100B164000000108D +:10687000070080B500F091FE80BD80B5054A05494E +:106880001B20BFF738FF012004493C0068110400B9 +:10689000C0060860486080BDB87401002D6E00001D +:1068A0000010070080B5044800F080FE0349002076 +:1068B0004860886080BD0000414B0000BC7401004E +:1068C00080B5C5F7D5FECEF7D9F803493C00A41131 +:1068D0000400086003490A20D1F7EFF880BDBC74BA +:1068E0000100496E000080B5012220210620C8F772 +:1068F00056FCBFF770FE03490020086020210248C3 +:10690000BFF763F980BDCC5C0100646D01003C0001 +:10691000E0110400084880B50068002805D006484A +:106920005430426A0021BFF7F3F8044A04490320B7 +:10693000BFF7ACFD80BD0000506D010089980000DC +:106940009198000080B500F003F800F019F880BDC0 +:106950003C001C12040010B5094C6021201CBFF73C +:106960003AF90020C043A0602060FF200230E0849C +:106970002022201C40300249BFF75BF910BD0010F7 +:1069800007007052010000200A49C0438860094B8B +:106990000A493C0058120400002082000130000621 +:1069A000000E20289950F8D30649044A081C1030DC +:1069B000083A03C27047000000100700E07E0100A3 +:1069C0007575000000A00700044800210022002384 +:1069D0000EC00C383C009412040001214160704745 +:1069E0000000707801007047000003480021002279 +:1069F00000230EC008C070470000885A01000449F7 +:106A000080B500204861024840211C30BFF7E9F8FA +:106A100080BDFC5A01003C00D012040080B5CEF7C6 +:106A20003FF80349886103490320D1F755F880BD39 +:106A3000FC5A01000D17010080B5C0F7A5F980BD13 +:106A4000FEB56C4900200090C8786B4C6B4F430733 +:106A5000C006C017DB0EE3583C000C1304000130E5 +:106A600038623B61081C8078664E03224107A036DD +:106A70000296490F3172890061583C1C6161019195 +:106A8000C006C00F7862201C002787610020211CEF +:106A9000C86159485949007809793C0048130400F5 +:106AA0005A4C4E07760F711C8C46B1008E465649E3 +:106AB0008031002824D0524F01287F781AD0022834 +:106AC00071D14F48002F0CD0012F6CD140794D4D22 +:106AD0004007400F8200AA584B4D01303C00841300 +:106AE0000400EA61A07304224B48484DC8614A483B +:106AF000002F00D04A482F1C11E04248002F55D1EA +:106B00000770022747703F484078002810D00128BE +:106B100001D002284AD13F483D4FC8613F483C0060 +:106B2000C013040088613A4970460858351CB861A2 +:106B30006046607304E03C48022288613B48C861BB +:106B40000020324906E00E18B6787607760F042E3C +:106B50002FD801309042F6D3C8792E4FC007C00F0E +:106B60003C00FC130400F86033484168194341605D +:106B7000816819438160019AB9698C461143FA69A9 +:106B8000866811438E4386604668314341600199AF +:106B90000B43181C614608431043011C00220220CD +:106BA000C7F73C003814040003FA1E4E403E7078CC +:106BB000C008C00028437070701C017800E029E014 +:106BC0000825A94301700120C043B08000210120A5 +:106BD000CFF76CFC301C8030817809090901817085 +:106BE0000F2101703C0074140400164A69041160FE +:106BF0005160029E1021327A7B6A002B00D1002165 +:106C000011432173817829438170E0780121084381 +:106C1000E070D2F7F2F9012000900098FEBDC05755 +:106C200001006C4301003C00B0140400A46C01009E +:106C300040900700C91D0000811D0000A51D000037 +:106C4000991D0000F11D0000100007000010070052 +:106C50000349002088620870487008710862704714 +:106C6000AC7E010080B501213C00EC140400002042 +:106C7000CDF769FF80BDB0B50F48C0F718FC0E4DC9 +:106C8000032028700D490D480C3948600D480A4C06 +:106C9000886040211834201CBEF7C1FFFF216868BE +:106CA000090608432060FF2106223C002815040045 +:106CB000201DBFF779F80120E060B0BDC0A8130A1D +:106CC000206E0100C0A81301FFFFFF0080B502493C +:106CD0000120C8F745FF80BD9D1C000098B50C4CF5 +:106CE00000206060E0600B4B0B4982003C006415A3 +:106CF0000400013020289950FADB6A460949052032 +:106D0000BFF72FFD0020C043206006492020086007 +:106D1000486098BD00000040070030740100A9756C +:106D20000000B59F000000100700054900203C004E +:106D3000A0150400086005488178282291438170DD +:106D40008178114381707047786E01000000070060 +:106D500070470000414810B50068022188433F4950 +:106D60000860081C0068022108433C4908603C4850 +:106D70003C00DC1504004068802188433A494860A3 +:106D8000081C006880210843374908603748017AA9 +:106D9000012421430172017A022211430172017A16 +:106DA000042291430172017A082211430172017B8E +:106DB00021433C00181604000173017B0222114399 +:106DC0000173017B042211430173017B08221143EB +:106DD00001732E214173817B3822914328318173C5 +:106DE00020214174817BC908C900033181732221AC +:106DF000C17320493C0054160400097A41721E49AF +:106E0000497A01743C220277011C10314A735023E5 +:106E10008B735A23CB730D23011C20310B70174B3E +:106E200043840E234B7000214182302101700521E3 +:106E30004170042141713C00901604008471C471BA +:106E40000C210171F82141800F49CA728A72032214 +:106E50000A7209224A7208220A73027A40231A43EC +:106E600002724C73FFF7A2FC0848017821430170BD +:106E700010BD0000F00007003C00CC160400F40038 +:106E800007000C800700764601002409000080807E +:106E90000700A080070080B518210948BEF7D7FE7B +:106EA000084800213C3841608160C1600161416156 +:106EB000816101210162FFF75CFF3C0008170400BB +:106EC000C0F76CFF80BD0000247E0100B0B52148F2 +:106ED000006840081F4940000860081C0068012144 +:106EE00008431C4908601C4A1079012108431071AD +:106EF000107902218843107100F06CF83C004417AF +:106F00000400107A012108431072107AFE21884390 +:106F10000A301072282090725A20D072114D14201D +:106F200028772C1C1034A0731620A8751820E8753B +:106F3000FFF7A1FC0C486886E07B4006400E3C0051 +:106F4000801704000E210843E073E07B8021084392 +:106F5000E07307484179042211434171B0BD00003C +:106F6000F00007000080070030800700FF010000EC +:106F70005000070080B5FFF7AFFF00201449C04361 +:106F80003C00BC1704008860C1F70BF913490020CE +:106F90004862C860486108618861C8610F4B086237 +:106FA0000F4A086338331A8001225A710B4A403263 +:106FB000D0601360082313815060094A8A62FF225F +:106FC0000A703C00F81704004870054800210022B0 +:106FD000503000230EC0C1F7FFF880BD003007001D +:106FE000046C0100BEBA0000857500000348102142 +:106FF00081710221C1713021417270470080070008 +:10700000704700003C003418040000B5C1F7DBFBFA +:1070100000BD7047000080B5CDF787FD014988604D +:1070200080BD50D9010080B506210548BEF7FDFDA1 +:10703000044900200439086000F067F800F003F804 +:1070400080BDEC6701003C007018040010B5074CCF +:107050002C21201CBEF710FE0120207003490020C7 +:107060001C39C8600861886110BD000078690100A2 +:1070700080B5CDF75DFD0949886009490820D0F742 +:1070800073FD08490920D0F73C00AC1804006FFDDF +:1070900007491120D0F76BFD0648C2F774F980BD8F +:1070A00000007869010021350000A1380000453456 +:1070B0000000BD26010080B586B00F48C4F745F931 +:1070C00000F045F8FFF7D7FFFFF73C00E818040091 +:1070D000ABFF0C490320D0F74DFD0B4869460090EB +:1070E0000020019009480490094802900948039043 +:1070F000094805900020C4F7CFF806B080BD000015 +:10710000F467010045350000953200003C00241969 +:107110000400A07D0100FD320000CD310000457D5E +:10712000010010B5CDF7D5FC0948094C302160614C +:1071300008487430BEF7A9FD0020A062064920610E +:10714000E1636064A06414212165606210BD3C00AD +:1071500060190400B9750000447D0100701700003B +:1071600080B502210920044AD1F7E8FECDF7ECFCF6 +:107170000249086380BD000039390000447D0100E8 +:1071800080B5AC210348BEF783FD00F051F800F054 +:107190003C009C19040049F880BDA46C010008B5AE +:1071A00000F04DF800F045F800211620184AD1F7FC +:1071B000C8FE174A0421101C403001700021817064 +:1071C0001121C18014490181101C8030C17808222E +:1071D00091433C00D8190400C170C1781143C170BB +:1071E0006A460F491420BFF7F5FA0E490720D0F779 +:1071F000CDFC0D490F20D0F7C9FCCDF7ABFC0B49F6 +:1072000008600A4844388068002802D00020C6F789 +:107210006FF908BD3C00141A0400B53B0000009053 +:107220000700E7FD00008D410000CD480000D9496E +:107230000000A46C010080B500F06FFC80BD7047B9 +:10724000000080B500F061FC80BD70470000B0B563 +:1072500030210C48BEF73C00501A040025FD0B4CB1 +:1072600000250A48843C3822032170386560BEF747 +:10727000DDFD0648382201213838BEF7D7FD0E2043 +:10728000A5606070207000F01DF8B0BD946701002B +:10729000044900B5012048603C008C1A0400886055 +:1072A000C860C3F7F8FF00BD0000D467010080B5D7 +:1072B00002210A20024AD1F750FE80BD00001D5A6B +:1072C000000080B500F005F880BD80B500F0FDFB42 +:1072D00080BD80B502490420D0F73C00C81A0400E4 +:1072E00061FC80BD651F000000211748C94380B5BF +:1072F000164B0170181C102220300271002210332E +:107300009A73427904231A434271427918239A43AB +:1073100008324271081CD7F759F800283C00041BBA +:10732000040003D101219A20BFF7CBFB502009496B +:1073300050220A60C8608860486008610120486186 +:107340000020D7F7D8F80449FF20086080BDF46B0F +:1073500001003000070004020700F47401003C0043 +:10736000401B040080B5D7F7FBF880BD10B5FFF7D0 +:10737000ABFBBFF7DDFB8148CDF798FA0024231C57 +:1073800004220421002001F039FA002801D0BFF7BF +:10739000C9FB231C0022FF21002001F02FFA002846 +:1073A0003C007C1B040001D0BFF7BFFB231C002264 +:1073B000FF21002001F025FA002801D0BFF7B5FB1E +:1073C000C4F727FF704884706F497F2088706E492A +:1073D0000C60032008606B4844706C480480694866 +:1073E000C0783C00B81B0400082108436749C870F6 +:1073F000081CC078042108436449C87001F07EFA73 +:10740000FFF77EFFFFF72CFE01F046FBFFF718FBAE +:1074100001F052FAFFF782FB5F48C16810229143E6 +:10742000C16001693C00F41B04005D4A1143016125 +:107430000169D20A91430161C1685A4A1143C1608E +:10744000816A594A1143816200F077F901F01FF80F +:1074500000F093FA01F099FB00F0F1FF00F099FCC5 +:1074600000F0DDFC00F03C00301C040083FCFFF762 +:10747000B3FC01F031FA01F071FAFFF787FAFFF778 +:107480009BFA012101204B4AD1F77CFD012102200A +:10749000494AD1F777FD02210320484AD1F772FD0E +:1074A00002210420464AD1F73C006C1C04006DFD0B +:1074B00002210520454AD1F768FD02210620434AF2 +:1074C000D1F763FD01210720424AD1F75EFD022179 +:1074D0001720404AD1F759FD022108203F4AD1F731 +:1074E00054FDFFF7C8FD3D4804603C00A81C0400A3 +:1074F0004460FFF717FAFFF709FAFFF74FFC00F0B7 +:1075000043F9FFF733FAFFF7FBFA01F085F801F0D2 +:10751000EBF901F023FA01F071F900F0E3FFFFF756 +:107520006FFA00F0AFF900F0BDF900F03C00E41C88 +:107530000400ADFC00F09BFEFFF7CDFAFFF7ABFEB9 +:1075400000F0C3F9FFF7ABFD00F08DFF00F021FF65 +:1075500000F065F900F097F900F0FDFE00F0E5FE9F +:1075600000F03FF900F073F9FFF737FE00F03C0040 +:10757000201D040021F900F073FBFFF7E5FB00F08C +:10758000D3FBFFF7A9FE00F0BBFB00F009FF00F002 +:10759000DBF91848C9F756F81748C9F72BF8002245 +:1075A0000121F020D1F72EFD002010BDA9690000B7 +:1075B0003C005C1D040000000700F00007002C00E8 +:1075C0000700001007003C000800C03F7438FCDFD3 +:1075D0007F3855690000E5130000610C00006D0C58 +:1075E00000003D0C0000F10D0000C53300003D0F10 +:1075F00000003C00981D0400ADD80000800007008A +:10760000505701000440010080B501F0A9F900F0D5 +:10761000C9F8FFF7C5FE01F003FB01F093FAFFF78D +:10762000CBF92C48FFF7E8F900F0AAF800F058FF72 +:10763000FFF734FD3C00D41D0400FFF7F2FBFFF719 +:107640007AFAFFF700FA00F034F900F03CF901F0A3 +:10765000E2F8FFF77AF9FFF772F9FFF79AF901F00C +:1076600066F901F08EF901F0E0F800F006FF00F095 +:10767000F0FB00F046FB3C00101E040000F0BCFFD5 +:1076800000F0E4FC00F020FEFFF740FAFFF746FEB2 +:10769000FFF756FD00F02CF900F0FAFE00F08AFE2C +:1076A00000F0D4F800F0B4F800F078FE00F04EFEE0 +:1076B00000F0DEF8FFF7ACFD3C004C1E040000F0CB +:1076C0008CF800F0F8FAFFF776FBFFF720FE01F0E8 +:1076D000A6FA00F048FB00F07CFE00F05CF9BEF773 +:1076E00057FD002080BD803801000149002008605E +:1076F0007047A87E010010B5041C3C00881E0400E1 +:1077000001D1BFF739FA0F487D21C900846001809B +:107710000D490161802141800021C16001620B4857 +:1077200041801421818007214181064A4623043289 +:107730000524137054700A21917081763C00C41E98 +:1077400004000376048110BD0000C87401000087A6 +:10775000930330000700094880B50169426911436D +:107760008269C0691143014300220320C6F7BFFCB0 +:10777000CCF71BFA0020C2F792F980BD00003C0054 +:10778000001F0400A46C0100054880B50021816041 +:107790000221C16003394160C7F73AFF80BD000094 +:1077A0004020070008B56A4604491520BFF754F881 +:1077B0000120034940050860486008BDA52101007B +:1077C0003C003C1F04000010070070470000064802 +:1077D00080B58068C001800F05D10322C143C6F780 +:1077E000BAFCD6F700FE80BD00001000070070470D +:1077F000000080B502212A20064AD1F7EAFB0022C8 +:1078000007203C00781F04000449BEF7EDFE044841 +:10781000C7F758FC80BD00008D890000D59B000093 +:107820001046010002480021002200230EC07047CC +:10783000806E010080B502212C20064AD1F7CCFBD6 +:10784000002200203C00B41F04000449BEF7CFFE14 +:1078500004490220C8F70BFA80BD058A0000E99BA5 +:107860000000B18B000002480021002200230EC05E +:1078700070471075010080B502212B20044AD1F712 +:10788000AEFB002202203C00F01F04000249BEF7BC +:10789000B1FE80BD2D8A00008D8C00007047000075 +:1078A00080B502212D20074AD1F79CFB0022012040 +:1078B0000549BEF79FFE0548CBF756FA0448CCF7BA +:1078C000F7F880BDAD8A00003C002C20040021E2C6 +:1078D0000000F9DF00002044010070470000024969 +:1078E00000200860012048607047AC79010080B535 +:1078F00002490D20D0F79BF980BD619800007047C8 +:10790000000080B5CDF777F903493C0068200400FA +:107910000860011C0248CDF797F980BDA8790100E5 +:10792000C460010080B500F029F880BD80B586B044 +:107930000C48C3F76DFDD6F7D3FB0B480D490090FB +:107940000A48049101900A48694602903C00A4202C +:1079500004000020039005900120C3F700FD0749B3 +:107960000320D0F76AF906B080BD20F70100118727 +:107970000100958701005587010098D901006D87A6 +:10798000010080B50120D6F790FC034900203C009F +:10799000E02004000860486002481439486080BD57 +:1079A00090D901003D82010070B50026094C094DB7 +:1079B0002660666044215035281CA661BEF7C8F9D0 +:1079C0001420E060E8632820E861A06028642E703D +:1079D0003C001C21040070BD0000A46E010080B5B5 +:1079E00002211820044AD1F70CFB03490820D0F7E4 +:1079F0002AF980BD0000159C0000699C0000FEB5BE +:107A0000264D2878C0070CD425490020087028701E +:107A100024483C00582104008178490849008170BD +:107A200081780122114381700024FF261F4F013607 +:107A3000211C01A8C6F732F800AB187901281FD025 +:107A4000022819D003281ED1B8680021B043B860BD +:107A5000786830433C009421040078603A683240F2 +:107A6000A02005E03B683340934201D0012101E0B2 +:107A70000138F7D27868B0437860002903D001A8B4 +:107A800000F027FF02E001A800F045FF01342406C2 +:107A90002416062CCFDB3C00D0210400044902222E +:107AA0000878104308702870FEBD0000040007002D +:107AB000E06001000000070010000700B0B50020E2 +:107AC00015231449012542008D54521801300E2807 +:107AD0005370F8D30F481C223C000C2204001C38C1 +:107AE000BEF773F90D480E212A38BEF71CF90B4971 +:107AF000002008600B4C2A21201CBEF714F92570C9 +:107B00000E2060701720A070074853210170452196 +:107B1000417020218170B0BD00003C00482204006B +:107B2000E6780100E4620100EB620100E862010016 +:107B30000C490D48002241600C4981600C49C1602C +:107B40000C4901610C4941610C498261C1610C49D8 +:107B500001620C4941620C4981620C493C0084225B +:107B60000400C162C26370470000C9750000287A32 +:107B70000100C17500008175000099750000CD7588 +:107B800000008975000091750000B57500008D75C5 +:107B90000000C5750000B0B50E480E4908603C00F5 +:107BA000C02204000831C0F743FE0C49002548609C +:107BB0000B480A4C05600B48803C05601020207182 +:107BC000E070A07160712720C043C3F7F7FB282045 +:107BD000C3F7FCFB2572B0BDFF3F00002C7D010008 +:107BE0003C00FC2204001C6701002067010080B5F6 +:107BF0002C210148BEF7C7F880BD3C7E010080B54E +:107C000038210148BEF7BFF880BD687E010080B50D +:107C100002210E20024AD1F70CFA80BD000021E0BB +:107C200000003C003823040070470000F0B585B028 +:107C3000002700AB2F4E1F8100250024281CD6F7FB +:107C4000A1FB022D03D1D6F7F5FA00280CD00124B0 +:107C5000012D03D1072000AB187101E000AB1F71AB +:107C600000AB18793C0074230400D6F708FC002C04 +:107C700039D0082103A8D6F7F2FA00AB187BFE280A +:107C800031D1587B01282AD1022102A8D6F7E7FA80 +:107C900000AB1889002826D018891849884222D0BC +:107CA00019890020BFF73C00B023040013F9041C1D +:107CB000006900AB1989D6F7D5FA206800AB1A899C +:107CC000011C0831083ACBF7A1F9002806D0022898 +:107CD00004D0022194203760BEF762FF201CBFF75A +:107CE000C7F8D4E7012194203C00EC230400BEF740 +:107CF0005AFFD5F726FF01352D062D0E042DA5D3ED +:107D000005B0F0BD000058570100FFFF00000A4811 +:107D10000021021C183280B5094B02E0016083800B +:107D200008308242FAD104486C213C002824040027 +:107D30006C38BEF737F804490220C7F7D1FF80BD81 +:107D40007C790100FC0500009D75000080B50221D2 +:107D500026200D4AD1F77CF90C48C8F773FF0C4870 +:107D6000C8F776FF0B491020CFF794FF3C0064243E +:107D700004000A490C20CFF790FF09490020C7F7FB +:107D8000B2FFCCF76EFF0749086080BD00009DA6DA +:107D90000000A9A4000081A4000031A70000B96D73 +:107DA0000000BDA600000C790100024908783C00E3 +:107DB000A0240400400840000870704758000700E5 +:107DC0000021084880B541618161017041704160C6 +:107DD00081601422C26001614262C161FFF704F850 +:107DE00080BD00001C75010080B502211D20044AE1 +:107DF0003C00DC240400D1F734F903490820CFF714 +:107E000052FF80BD000011E3000009E4000080B5CE +:107E1000012125200A4AD1F724F9CCF728FF084987 +:107E2000086208490120CFF73EFF07490220CFF73B +:107E30003AFF3C0018250400FEF7E6FF0548C1F7AD +:107E4000E1F980BD29A900001C750100A1AA00006C +:107E50002D19000045A8000010B5064C0C22227018 +:107E6000A0180549BDF7D8FF0020C8F785FB012001 +:107E7000A06010BD3C0054250400A4690100905787 +:107E80000100B0B51F4C00256580012020700A203C +:107E9000A0809020E08030202081902060813020E0 +:107EA000A0811748042207211230BEF74CF814486D +:107EB0000422052116303C0090250400BEF746F848 +:107EC0001248114AE08120827032157055700020EE +:107ED0003C23410143438918F4319B1801300428A5 +:107EE0005960F5DB084806221A300949BDF79AFFA8 +:107EF0000748054C0C300FC83C00CC25040020344A +:107F00000FC42021201CBDF762FFB0BD0000F86047 +:107F100001002C090000584001007047000007488C +:107F200010B50068002808D00648BEF79CFE041C67 +:107F3000FFF79DFE201CBEF796FE3C0008260400BD +:107F400010BD000058570100B5AD0000044980B5D0 +:107F50000020887002212020024AD1F791F880BDCC +:107F6000B479010025B5000080B5CCF78FFE01493A +:107F7000486180BDB479010080B518213C004426D9 +:107F800004001448BDF729FF1448012101700021A5 +:107F9000C1604170016100F002F900F0AAF800F040 +:107FA0001EF800F0BAF900F0CCF900F020F900F06A +:107FB00064F900F0CEF900F0FCF800F082F93C0022 +:107FC0008026040000F028F800F06EF800F04AF86F +:107FD000FFF7C2FF00F072F980BD0000407C010095 +:107FE00018630100B0B5084C0025084825772060CB +:107FF000CEF7F0FD0020E562D0F7D0FA211F08800F +:108000003C00BC260400D0F76CFBB0BD0000D47966 +:1080100001009575000080B5CCF7C1FC80BD054915 +:1080200080B500200870487003480449034A0830AE +:10803000CCF727FE80BD2C630100EDBC00004DBDD8 +:1080400000003C00F826040080B5CCF72BFE054963 +:108050004860011C0448CCF74BFE04490320CFF7CD +:108060003DFE80BD2C630100C4600100C1BC000066 +:1080700004480021002200230EC008C00249103825 +:10808000016070473C0034270400047A01001CE6BC +:10809000010080B5CCF709FE0549054A4860022178 +:1080A0002420D0F7FCFF0348C9F76BFD80BD047A9C +:1080B000010069BE000071EB000010B5044C1421F2 +:1080C000201CBDF796FE3C0070270400024820608B +:1080D00010BD0000147A0100ECE5010080B5CCF77A +:1080E000E7FD0749074A486002211F20D0F7DAFF61 +:1080F00005490120086005490C20CFF7F5FD80BD3A +:10810000147A0100D5BF00003C00AC270400805A5F +:10811000010085FF000080B5FFF74FFD0121212000 +:10812000024AD0F7C2FF80BD0000C9C1000080B57F +:10813000CCF7C1FD02490863C9F757FD80BD287A15 +:10814000010010B5CCF7B7FD164C3C00E827040041 +:108150002061CCF7B3FD60611448154908601649E9 +:1081600014480860CCF7AAFD1449086000F034F800 +:10817000FFF7E0FFFFF75EFF00F004F900F08EF874 +:10818000FFF76EFFFFF7B0FFFFF78CFF3C002428DE +:108190000400FFF704FF00F0AAF80A48BFF7BDFF8C +:1081A000C9F7BBFD09490020CFF7A7FD10BD407CF2 +:1081B00001007DB70000187E0100BDB800001C7EE4 +:1081C0000100207E0100B9BA0000812401003C00BA +:1081D0006028040080B538210148BDF719FE80BD34 +:1081E000905C010070470000B0B50C4C0B4D0020B6 +:1081F0000C3460602560E0600A202081281CC8F7EC +:108200003FFD281CC8F73AFD083D68600448C9F7DF +:108210003C009C2804001BFD201CC0F76EFA28803F +:10822000B0BDB87A0100D5330100F8B51F4E1D4C22 +:1082300000200C2141438200013009190831000659 +:10824000000E0428B150F4D318480C383061CEF732 +:10825000F4F93C00D8280400144CA078000900016F +:10826000A0700027E77067700024A50070590770A0 +:10827000201CBEF753F9715908710021201CCEF75C +:108280007DF901342406240E042CEED3074C20780B +:10829000000900013C00142904000A3020702078F5 +:1082A000F021884330302070A0780F210843A0705F +:1082B000F8BD00500700107B010080B5CCF79FFB94 +:1082C00080BDB0B50C4C0B4D00200C3460602560B7 +:1082D000E0600A2020813C0050290400281CC8F7D7 +:1082E000E1FC281CC8F7D4FC083D6860201CC0F7DE +:1082F0000DFA28800248C9F79BFCB0BD2C7B010019 +:108300004900010080B5CAF72FF880BD7047000012 +:10831000B0B5124D3C21281C3C008C290400BDF74F +:1083200086FD0F4828213C30BDF781FD0D48002116 +:1083300014380161C160FF21017041700A490A4A85 +:10834000416001210C20D0F7C8FE2C1C30340C3DBC +:108350000020D0F74AF920800C3C3C00C8290400DA +:10836000AC42F8D1B0BD0000607B010020A1070045 +:1083700035CD0000084900200C22424352181071EC +:1083800001300528F8DB04480021083801704160FD +:10839000FF21417070470000747A01003C00042AFC +:1083A000040080B578210148BDF747FD80BDC47B3E +:1083B000010080B5CAF797FA80BD7047000010B57C +:1083C0000B4CFF210531201CBDF737FD0948F0217A +:1083D0000851201C4030C5F78EF96C2106483C003E +:1083E000402A0400BDF72CFD0448C0216C30BDF7C5 +:1083F00027FD10BDC4690100B0D90100C86A0100A1 +:10840000B0B50B4D00241C20604340196C30C3F7FD +:108410000FFE0134042CF6DBCCF76EFCA863C7F723 +:108420003C007C2A040075F90448C9F71CFC034889 +:10843000CFF703FAB0BDC4690100FD800000E1225E +:10844000010010B5054C00202080034806210830AB +:10845000BDF7D5FC1420606010BD987C010010B5FC +:10846000084C3C00B82A04000020208060800648A8 +:1084700006210C30BDF7C6FC034806211230BDF7BB +:10848000C1FC1420A06010BD587C010070470000A2 +:1084900080B502210D20054AD0F72EFE0448C8F70A +:1084A0001FFC04483C00F42A0400CAF744FC80BDC9 +:1084B000000031D4000051B1000009B100000849AA +:1084C00080B500200860FFF7D0FFFFF7C0FFFFF77F +:1084D00004FC00F04AF8FFF70AFC00F03CF880BD0D +:1084E0000000E46501003C00302B040080B500F082 +:1084F00029F800F01BF800F051F800F031F880BDC9 +:10850000704700007047000080B5FF2189310248A4 +:10851000BDF7A2FC80BD0000DC71010080B50249FE +:108520000820CFF711FC80BD3C006C2B040059D90A +:10853000000080B50348CFF74CF90249488080BD60 +:1085400000008D1F0000987C010080B50348CFF724 +:1085500040F90249888080BD0000D5230000587C86 +:1085600001007047000080B502483C00A82B0400C1 +:10857000CAF7E4FB80BD000071E0000080B5CCF7D5 +:10858000A5FB02210F20064AD0F7C2FD14210548A1 +:10859000BDF768FC034878211430BDF763FC80BD4B +:1085A00035E200008466010080B5CCF73C00E42B86 +:1085B0000400B7FB0549086105490E20CFF7CDFB44 +:1085C00004490820CFF7C9FB80BDEC65010001021A +:1085D0000100C12E0000014900200870704740D9F9 +:1085E00001007047000001490020087070473C00FE +:1085F000202C0400A079010080B50748C8F7F2FFDD +:10860000064948600648C0F707FB0648C0F786FBE6 +:108610000548C9F7A3FA80BDA9E40000A0790100CC +:10862000B9E40000852E000081E40000074880B511 +:108630003C005C2C04000021002200230EC008C076 +:108640001038C821016000210C38024ACCF761FBC8 +:1086500080BDD0600100FDE5000080B5CCF767FB70 +:1086600004490860011C02480430CCF786FB80BD39 +:1086700000003C00982C0400C0600100094880B54F +:108680000A21017041700849084A81600021C160D7 +:10869000527982700161416128211830BDF7EEFBEB +:1086A00080BD00007C780100A08601000C5A01000A +:1086B000F8B50F493C00D42C04000F480D884F88B2 +:1086C00006790024301B684368230C49584341183D +:1086D0007D20C000BDF70FFD6100094AA64250523F +:1086E00000D13D1C01342406240E102CEAD3054988 +:1086F00001200861F8BD3C00102D0400F65901006E +:108700000C5A010034440F00125A01007C78010019 +:1087100080B500F0E7FA02490120086180BD000041 +:108720007C78010010B5041C081C0F494979002908 +:1087300001D10E4B00E00E4B3C004C2D0400002CF0 +:1087400007D0042111800A1C0124191CBDF7CDFBA0 +:108750000AE00124011C181C1288BDF7C6FB00F0BA +:10876000C4FA054901200861201C10BD00000C5A04 +:108770000100FE590100FA5901003C00882D040057 +:108780007C7801000D488CB5C18800AB0C4A9980FB +:1087900001890420D980188002211320D0F7D0FC51 +:1087A00000F0A6FA074901200861FFF78DFF6A462D +:1087B00001A90020FFF7BCFF8CBD00003C00C42DC8 +:1087C0000400F459010095F900007C780100F8B527 +:1087D000134E0125B5700520F070114910480EC9DF +:1087E0002C300EC0002070610F480F49104F00243C +:1087F0004860A0003958201CD1F7D7F801343C005C +:10880000002E0400102CF7D3064C0B4A2034201CF9 +:108810000A49B560CCF792FACCF79EFA3061206035 +:10882000F8BD000064730100B05801000418020094 +:1088300060000700D444010045FA000071FA00000E +:108840003C003C2E04000C4930B50023CC560B4BA9 +:108850000020F0251A5C1107090F09190F2901DD05 +:108860000F2102E0002900DA00212A405118195492 +:1088700001300E28EEDB30BD000064730100C058EB +:1088800001003C00782E0400B0B50D1C002808D073 +:10889000012414800520CCF7B5F88003C00F2870A0 +:1088A00007E028780122410452040520D0F7AEFDEC +:1088B0000124201CB0BD000098B5054C6068CCF7C1 +:1088C000F5FD00903C00B42E040000AB1888E08059 +:1088D000CEF7FBFF98BDA058010038B5031C081C5B +:1088E0000024002B174D07D00E2111800A1C0124F3 +:1088F000291CBDF70CFB22E01188042917D1011CAB +:1089000068461288BDF73C00F02E040003FB009877 +:10891000002801DB323000E032380090011C642076 +:10892000BDF798FB0106091600900E22281CBDF722 +:1089300085FB06E00E2905D10A1C011C281CBDF789 +:10894000E9FA0124201C38BD3C002C2F0400DA5920 +:10895000010038B5031C081C0024002B174D07D05C +:108960000E2111800A1C0124291CBDF7D6FA22E031 +:108970001188042917D1011C68461288BDF7CDFA69 +:108980000098002801DB323000E03C00682F040032 +:1089900032380090011C6420BDF762FB0106091605 +:1089A00000900E22281CBDF74FFB06E00E2905D1D2 +:1089B0000A1C011C281CBDF7B3FA0124201C38BD79 +:1089C000CC590100034880B5017800203C00A42F59 +:1089D0000400CCF7B4FB80BD0000A658010070472E +:1089E00000000249032008700020487070479C7303 +:1089F000010080B502211120024AD0F7BCFB80BDE6 +:108A00000000A1FE0000F0B50B4F1C1C00233C0031 +:108A1000E02F0400FD562B1C062D01D10120F0BDD6 +:108A2000064E051CD80034363554801941708270CA +:108A30004460581C38700020F0BD0000985A0100B6 +:108A400010B5041C0C4800F021F96078FF2804D010 +:108A50003C001C3004000123E056062100F0CDF854 +:108A6000084A012110780843074908702023184359 +:108A70000870802318431070087010BD0000919B8F +:108A80000000E06001000400070010B50A49041C62 +:108A900008783C005830040040084000087008493D +:108AA0000870084800F0F8F86078FF2804D0012327 +:108AB000E056052100F0A4F810BD0000E0600100C0 +:108AC00004000700919B00000348002100220023BE +:108AD0000EC008C03C009430040070470000E860FD +:108AE00001007047000010B5074C00206060208036 +:108AF000E06002211420044AD0F749FB02481030FC +:108B0000A06010BD000058750100051D01007047F0 +:108B1000000010B548213C00D03004000A48BDF7E1 +:108B2000E3F9094CE0214834201CBDF7DDF90020B1 +:108B3000C10009190A1C083201301B284A60F7D30A +:108B400001480438046010BD685B010080B5022153 +:108B50002320024AD0F71EFB3C000C31040080BDEC +:108B600000004523010080B5FFF76BF880BD70471A +:108B70000000F8B501201D49C00748601D49FF20CD +:108B800008731C4E10203060050135601B4C80219D +:108B9000201CBDF7ACF90021194A3C004831040003 +:108BA000154F00200B011B195A60CB00DB191874FC +:108BB00001310829F6DB0F4CFA212180124961802E +:108BC000A0606A4611490420BDF730FF6A4610498B +:108BD0000820BDF72BFF1020706075603C008431C9 +:108BE000040060680221084360600B49064A081CC3 +:108BF0001030083A03C2F8BD000000010700006011 +:108C0000070000100700AC730100D1750000204E72 +:108C10000000052C0100112C010000A007003C0001 +:108C2000C031040070B50E1C0024C4F75BFE0028A0 +:108C30003BD04568FF2D38D00C2E28D201A39B5D78 +:108C40005B009F440507090B0D101316181B1E210E +:108C5000182420E030241EE060241CE0C0241AE028 +:108C60003C00FC310400FF24813417E00924A401F6 +:108C700014E00924E40111E00F4C0FE00924240260 +:108C80000CE00924640209E00324E40206E009245C +:108C9000A40203E009219E20BEF739F86000001904 +:108CA00040083C0038320400054980044018054A59 +:108CB000A900891848606420604370BDDC0700008B +:108CC0008038010004000700024980B50860D0F731 +:108CD00097F880BD5C5B0100F8B50026174C174B78 +:108CE000194926703C0074320400002014330D88AA +:108CF000154E154A04E0C100CF187A605E5001306D +:108D0000A842F8DBC6F72BFDFF21114DA531281C29 +:108D1000BDF7FFF80021281C021C1432C260101C91 +:108D200001311429F8DB3C00B03204000026C66093 +:108D300005480C3060C009481821BDF7EDF8012046 +:108D4000043441C40020F8BD705D010009A000009A +:108D500030D9010056570100045F0100A8600100EE +:108D600080B50020CFF7B6FC3C00EC32040001498E +:108D7000088080BD00002C7401001148F8B54179CD +:108D8000002902D105780F4E01E045780F4E0223ED +:108D9000F75E0024601B784364230C495843411854 +:108DA0007D20C000BDF7F5F961003C0028330400C8 +:108DB000094AAC42505201D10023F75E0134240627 +:108DC000240E102CE9D3F8BD0C5A0100FE59010005 +:108DD000FA59010034440F00325A010038B5104CE2 +:108DE000BE252573207A1821884320723C00643305 +:108DF00004006A460D490D20BDF733FE01200B49E2 +:108E000040030860486025732D20C003206025734F +:108E1000207A102108432072064806490860002085 +:108E2000486038BD0000000307008D3E01002400AB +:108E3000A0330400001007000087930304790100A9 +:108E400080B502211520024AD0F7C8F980BD000084 +:108E50000D3E010070470000040000600400440063 +:108E60000000040040200700FFFFFFFF4D656D6F0D +:108E7000727920636865636B2E2E2E00204F4B0A9B +:108E800000000000204641494C0A000057726974F6 +:108E9000696E67206669726D7761726520646174BE +:108EA0006120746F20666C6173680A005665726990 +:108EB0006679696E67206669726D77617265206494 +:108EC0006174610A00000000566572696679206667 +:108ED00061696C6564206174206279746520256421 +:108EE0002C2030782530327820213D2030782530F4 +:108EF00032780A004669726D776172652073756316 +:108F00006365737366756C6C792073746F726564D6 +:108F100020696E20666C617368210A0005000600F6 +:108F200000000001000001480000000B0000014C9F +:108F300000000009000001780000000F0000019C03 +:108F400000000001000001D800000001000001DC69 +:108F50000000000100000108000000010000010CF9 +:108F600000000001000001100000000100000114D9 +:108F70000000000100000118000000010000011CB9 +:108F80000000000100000120000000010000012499 +:108F9000000000030000012800000001000001346F +:108FA0000000000100000138000000010000013C49 +:108FB0000000000100000140000000010000014429 +:040000058000000077 +:00000001FF diff --git a/libraries/WiFi/extras/binary/wifi_dnld_2_1.elf b/libraries/WiFi/extras/binary/wifi_dnld_2_1.elf new file mode 100644 index 0000000000000000000000000000000000000000..7ccbf4d3d3c70ec6c3a68b15195d4e018e21aae9 GIT binary patch literal 182264 zcmeFa4R}=5xi-Ak-g{>DOeT{_2w@U7uqO#HiNWkd(16hn3Cc_e8mv8yN_7ILlMrQ~ zKPRAVC#Y=#+6L5`fUTk0b3kkxTXSmF^c|G8;2(PeS`gdrAe2CD-6%SfWHR&KYfnOH zub%Us?>gUgz2A3T1b6n|TK8Jd&w8F`J!|dw&Fku~ryM00emK{UaZSVN2lENn*I-=E zCo(Y+51C4G*n2_*!pg9NaNqq9hmI=?dw$UmyP15z&So5}F-o{cKg9W;{7e=%UWxe4 z4*aCz_{Hk80{`9mD0=DV5(h4E;6LMl_FdLS0E6>H9p@{zMv zi+EmikweetRBD~XuW)~Pnb238uHbPduQn+{WOt+awQ#HTXAifENstK5;*Pe}VHc*Y><0G-mAg zHd^m+HU9e@)|}vLixsmXjs;0Zqhr5v{!OxI^kC}KgeB9K*WK8C?)@|3JTWJp`-4W? zp{AV28_kh@_9x6e;ttzRfwf-Xu$TXy^}A8n=l#pi3Eh|7$i1qpu~i;>p>qv5@Q^6y zD%0M+uQB7z{VT6k^4{E=^LXV^#bS%Ub=1Xf5D<3tHYP zmY*+=Wij5n8%=*6agvc2DfuKmlZa22j~}hXyDgwfIbnl*iH6@JuTT>E1xby(Lg+`M zB8m9QW4m6-+VUs7JJfgn08vgt_S#mmTFLkC-yllXmdUrt?$r6Ks&v$N zHFBkoonP}_B^qb#st$JE->@Kk?z*bcxDQ`xlz)9!tN2ofBD#9=cD&SGu+#Qr`ES61 zBA0ORc;(7Q)4|2KlMk-VG)mZ>^#8e0)H9|z@wC7t9C-Q4{JidhW6HAy?<@JO856bh z%KzdLetZ1Nd}T|)F}#0Iv9@MZ*bYrsGG0HP*L`Jv!LbS(YT)VH_vLlZ&p)*FA{;z@ z>kZdqzqv>TVKN``a7#z1Yv<_esf1!j``l3u&pw2{X}OQ*eQ(dhcxG)hMS2wrt}Gu~ zGVJ9s$AaX})F|!+=nI5*`Tb#1u7t_F+<#W@LyHAe zCEvMI*~0EC%mwe_Szh{C&W?#PQ#JS4Y@!UK zU_wTh*&&lY9D_K{;)vsDfsD4m&U3!EeCh{%%uo0tzI~h$S>=26N2XoHoO0-}uh;iH zd!ld(zpD^WKJa}PJ2fHqN|0#m;}pZ`eWD_^a1Mt_@xyE!B=2`I>M#me*|{}_US0#b z{IILyOI1oogFWwiFC9=Wd+C_36(ue99ZWZkTBdZ*fh(o;YVLCkQ)?Z%2y@P3N9bqb zRQ^Y6bFUuxmFUE{?;H75hWME^kA7?;3qQ`t6rDTtj6D9c1B7b6R1#9pZF3Db6LQj( zifOLop<5gyza+%z@5w*+UWAVgXNx@@M{V!f8uvzYt$A)%TjO8gKO-y79gkRh+HN0j zwC*Ev{-N70dbe0P+SB&--bQOg!JD1n1ht$I?J)njcu!SZ<2$?}_PBbwdv>2~ zZnF1SZ%?G3AG+;#{1G>7H~cF&aCxKURg!g3@iFhJb&%=GW5eufE6K|`rnDJPw-V=f z7HUCCb!$F*WBq6$5tXWm8vJ{uwjK9ktN=}Fln!-e9b^cvcD1_XTh5(v1|M;;@~s6~ zNB6YhemK|nh)eN&XQ6@CL7c6wAHVpB>pQ=cOCH(N>e5^({Sns!t73n|dbF_BwQ?is z9C*Za=;~J2^C9dR(j|^dqdea(|HX1hfBlyrg5?-to&^f8_Z#7fQR&{Xt!P z?std5M~up_QU=WqAE9k7*ALFRNLG)lO*$bFAre-GSxsuPVoCK^tpMiGvb3hH95b{2T58F?P_zS zTS??o0{M;KoeG;p@=QI+8?B|I}!HdqLtLEVr0P72Agrp`RXA>9p^B`o8Lp zRT1l_@2E|m9#bC#w{4%k8x=o2Iw*d6?65eDHX?fD=Zc555m8U#_Zvgs9tFP=-+tZr z{hsmrEc>mvdc@lk7ijIBpp_ol1zmUcR52Payp6E8CtMsx5l0WTw|Nx%f1tL(1#R@# zDc$u%OJ0lPFYiY9@jpbUVjp=|@10A@E+(; zE#7!;Pn2(E_q%qd?=~__awvLxqD_R(aE!taZ+rPE$i}5CYuk-ye9!K-J)gW6<$LzD ziBIqD5sf;QL(w)^Vc;5dwBT?47vw$9c{TLNt_5=l?lw8E9(kEJkG#xT-g;TN?X8^= z5&e$%hFOH|JEPb)n0tjqQ}8?TPYx2GnauYB}L z_WUzeW@Wm}g&M{iW|Lgs%XKU)}d8WO0N7b6fn4RFXv-D{o_n zN4dYd=hOb8Ff1kC z7wqd~mVvn@s=>#V!hdw*`XuH;K_w$(XQfeAP^>;*Ungsgl}ndl@|0&N)BRVrPL|8j z){@^%wCf!GEqusYlA5@;J0@ePj2+$3Jj)?>t6j;MY@vKSE$K9Vx-X@^bQ}Kv*wgxm z-T&{3nAOQFW<)`sT#DFg|4D~I&ve{RMO&LE+M3cT#*RkBb4T~tM}Lz_#D<+l+xFwn zZ$(La=H7{N*36eDt}JN(P!}|fYK(rwlvRvQ)(`YS^G|hsZ*nHLugMp)PtxL;k#f2k5j814QIPLtW z+_5XJ=Q^gpl9ssdi_djV@W}EOM##lHD)pshaQXeUyS~E*%(dB9kTbq zW<*%r%5*^SK%;fn_kPmhd_3a$Nr!#M1&tOX`?5O9<0~7_f*f$>tZ zCQTQ)^z;8g4nz=%|G#lelE$zu{`o)MUtIS8#x?7oF`jZ7?eVN>&UblZX5_eV$7Y=w z7w)QYXPLZ%UJG7AbHaqm5kfDAe|zEo1`Yp{Ha+)#wY9YbpYSn|UrZ-#V#eldSu~qE z=@ja05)60+zu9%w#62r7<64=xXQd{ujS3UxtBsq#;>V>wb?V}Sklvxm`z0v#0-C<~ zU=>f|SvCIQ$I5=OpRA!-B=W%&68<29gXrZ$5|FRq$e(Y;@dyq|zI(!%Dj!;`|6z>k z?~hlLHq=X=CS)bfZA&B9gTS-wJPqfEv!6Oec8;V^ybRM`F0DJs`! znZ&DA6DC-WGz@tNc{Yf*nYacIUJ_*INkMKuIhsnHZA9%xyd$LjR5h*}Ca!0qFV#c` zf{(RDww)?A&h4klaIU(j)K}1ZC+3 zhHE0XpBl#byqvz~oZ%CYjz)?1L^j%<lU~TdJwyUO945{i zhXm*5lY{@{SrpHz3A%;E5K4dZZ>4|tPf8#EhiAmO8N7S+R5g*9@_}~7R~eTA4{HBP z$x)oy57R0qS`l&2G_RPwN1eWYL0THn-t@DwQIvZQ{hi&S-z~2b0MOdMBU!KRs6y-~Sll!T&KrbdX_3ntCl(;L8nCYq7i<-^A+(G*HUI55`Vq?C&i+4)Ln>0t|fhgO<2zRli7E2>Eq%okOjuCYYZPuMk$a*NJI zUDMB;W;O%7m3u!B$chhOk{0n1=ZQ>0Y(k{<1V>gvtG~h!>|Ale-q7n|2d)dpQmIlpvv0_FMtZR# zGcZiE`-TKLTnsb{ZTL+>Ia4dC491)tO3FZ>#?)_L=osOtGcLERk{>=&*44N;%CdMFM2=!0q~(02n>sr z;!$b}N->T(!7UkW;q@X{!}A^&_%nIN^Fjml?LHv9k0O(AT;zG53tV%8YaC=DDBFsG zZg6gMIg?Fv3Ft2dFPMyQ9VxCRE{G0%V5JOcr4)LCgDvEX9~k01n}<4J?OC6~#m*Ci z1Zoy5l^Wb*;jVolO-BE!$<07;?+o=g#zVifdwA|4cgtuD_O5sXd()hSw7<=mY4QRCSf4_XEgqIsH-Ng0O22L$0xt=Yz4jT4J?dQk z5#=ezQKDgBSkP}j!Akt?o$K%3kpbFIddbpiQq1BwL|PH$ zwGVhi0h2Z8M2Ymf2maw5#xr3NNf#_kz=#A_d;s?d+thWEML!t(XB~R)(EY|cLYANr zcCd(G^1!X}Q%#;ksmT)TOv2PSoZq2HnN!jcH$q@&zCiY0A)o*|2yry@4mEn8LIiRY z2m*QRBqa?WnDkyMI3Gi-_Si`@_hD-5YrJ#c2aMWkasUVsdGiMxqA@{Te1bhiFaP{8=r-dS zcr(Pf#?Y2rga(2Pv}z(`K%*|g{71A;E<*Z8{#2v&YT{)GfynjjUkDoOoay{4N3uU) zTy#3)fKoTAM=5#Niw` zvWb%2&9Ef>);g=7mx=!Ii0BvPYH}V3V!#)$_-7#M{8_^6pNaEN65#>#t(B6BxvY;C zQZk#63LGYXxL=ez0<84^O3Va;Vh11eSJE|5l9NO!S{m-BQInpJr#xz~1xb@^(%%^i z5A=P7_2Xs_jhgkh;^Bd6(h7vWe&=#dqQ$f{(^nEStNTm&XiJckn$+h4eFF}?bF4KW zYNYVlKx@FEZyqCVLC(<+B+UBJcs1G05YXfO0ZLv0zNv0SvsjSbYz;aq+H2_1h9*cz z4lRB7UW_omKjqj`IgyV*TQ#Y9b>ra|dCSRg0fCQAGImcwxXfu;hJeART}z&u^q;KhD(0 z`9<`JJ!7qk9@AhoSqTJwS(xNEaDKVM*1&qU<{nBy{bniCmno58u0%Y1R7NCfO@szK zX8I1%3zLOXiKIxPUQN1z@cVHp@xGgt+U80r6`MX50$&<{5;st00cEOW2M!nY0B3ki zHc+@^spQ7|;s_8J*1!dnML-!FjbA`H=eZ$T>TAA!b8{;8*U`CtGUw)n2ZCFJuM(=f zeXZS24)B4&OL41LT|yDHgAF4zPrui;;Q7p zy=|U0(K8Kvs0V^#w!AY}Vw7%52vQZ!PmX!ovi#nKVPb0}rGi?4x2f3AM@7x#CYs$2 zNk2aZ&ZyO7KM;sq6_}+}2P|%nbQaV;Fj|E+!UbKosT`ty(*Y0X2B^Ff)E)J0U+DUU`Dt7JY`P00glf@9^jM1lk z1D2Gt7Wg|a>wFfR_sj`%#|6-hYY^r;cXOqoBEF=s02PdptR##2Q2C7mS;~Yn* zjS{`T<_43b1Rv@np4BS)Ad`7!wYkkz!bi_+q$MOuW#YLG(hLFtwKlYqy8K5s-D2*{ zI&K!;`S~U~_q*P!Yk$6BaMKiPjwL7S(HhfXTDZlVTT7qqBn=Hz5j-c4_iaM{0SK~} zS~A~RY_Yzx&tiI~9dkKSY|^+MPNO|U<9mc{fB%lhJER?Y_-*?v$UgvKvKGY~x-D!V z6lz&zax?_`GgM&*x0h_Uy+L<)qzrw_7;IL+sZGJB- zTP@>2x_z(3a735-q^eZGjZe}fWSu9?bpM)qL(?~5aULQ_2~jXa>0+BsED3e zRO+#)91h-NiCTd0AVV17!7Iiu6XO{>489G4Z)w^EX$tIiJG_EPrT38%8Wp~L-IwD7 zSvORZ2oPYyDzEN(!d$Um^)unUnP zHVRE0HAw_}BDcng{N*6%mF-w~uD(yJ1JEn*(2#8+;+M4<45xFm8|%qV5CT@&0MxgC`f!r(}}w zgRO4|;)RypikbZSJd?Hn^Z5TjRS^vAhKFn4{GF9rQ{}k=bOfNplA&@Q{B1 zLT@v2oK5taKM#`f1!`||czSP>+#JrAo0^)v1w+UY^2aPj?GKZ)gXL0aCViY}p9|8e z1pMavK&T4J0j^u<=~#bxuq;qHgKRH>j?qHT4AV{#zH|UNsRfdL8dNmVZcC4#hyk%% zxXKc+_96c;l@NU(U7z_%8QN8a2y`km&>paACxY;=+n?Uz4*sxN)c++RODBV*?31V` zP&E+lw`<5h0O8f(mKrfi-1`D7S}_~_{eCh$fDD=^rhasq#k6)%$9N&*H?NxY*f=EL zBtsTmKrrhck2C#q_7jg)-5=z&RP1z0me8lNk!UJ5lyVMG^hwZcod<(Xm!W?p@hH<{ z~=apX%%9E4Pc=Nv=?Ax8~1~4!W#@)t-v|E=4=JU{1bux_>$spzVF=Z@k}D-wPc_ z{s9QdSZRvLbEMuYEz2#M-MzThpYJ$0cZTD)@_efNTg|7@_<*{Sk^`T^{?-2dL9+yn zDBIjuq{^MhKLDYtMm{_g{B{A|M%+UIzK21Q(-JDM}3|-9fH< z!*p+cGIk<~`~#+e>E6mg^fBfW^Q7zyWXI%!+MV74lOPA@*}bk3l$e!rclxKh+lPYt0vaL| zXFrdz`5X|eb?u@vculdmYz^%MP1EyxFfYi4$I5bt(fV5GAJe!O4pEYOfO))Zy(xvc zS2WX&`~whJsoTb7iIwW>r?WDGnLbkZK#ic%N~gk?jvS^MUur&VEp|(+>~$#HH(**u zig#>8{=r4aL&3~Idtk@>qya&;Da^7Aics_$zK*{NSD#Wg4?0l z>Yv`&Wq95I5V+{m>v^|XGX)C#H zjXbpk`3E4Fc-~~OSgr6{#*B!=8D4CufP>A!f*6k$)qz<~Sp|QP*7CAhKa|R-Cx!f* z$UguHD9KruMu2C0M`efk_BsQT0V@Z zI5!_-6XTwg35fQx5baT{dGrmO$1I5XtBw}R#A7RUNg@8)pLjx^T8``_d z;mH^jp-~S5VU??|GUvX{HQdq0g59eS!7U^u=ihVa3r670_PW|`X=|?`#~R!Iq6}k2 zMwT*l4)cg~Uyy$Q!i=wCHh(uIzeN=6@FPNMW^%=2}vtG1QsKEHrh^($+)-4dW z5CQXYF6i1PN074)% zI}`{~kEBlZIjhz5cM0A#<=iNcXt(Orp7DgOdQIZ(M_F(s|`JTq?^`U_(j4Wg3_|4)X!QWWxbrFm# z$OsAC< z`~whVjO26uq?^py7ZiimPN`)6;e8#cB6>wnO?i}d94sh{F76OZN}_b5xnxds@kXJf zC<@P4Y=PfA0tDAp8Cow{>_R5GunMhi#he`TlG%tT=iB_g=H8l*jv{*n4%-lyQ^e)4 zC-a0T>5jl>IcKnWcTIxMVO}EL9}10Tqlfj4^ZQ_@SS*;nXL6u(c>SZ%*^+Yso8#02 zLBI?`{#RZa9G(%h6hce9FT5#Y;r+-z03njq zVT@RBmxVC?QWlxx3A;9<! zSFm2&lw>S~yEVq06L-y!e-fj4#)fH#2!3`Cac|FWs2s$6vlUN?)X#ct|xM!6kbYccv&G}CL^^2s-QHz5B21dOq`!;>BD-6ZOFr-;X{ zwxLy1bh-~((AF z7-7-+!~JCMgYNvWX&EQEq@FEy{W}wVxqlS-2OzK>h3<##fu5P+Z4U->i@X(`n}oVs zYCBzFA~q&tXGX#Utjx_znf+j%bP{ ztzk!@MdQGSTf;qJL1X7k-0cX%qlQy5@()1hUVm(T@Oq+0M{4?*tzvCCVeRjLg)-@- zBYeHK#iU<}98s43^CU6~crW4ojR`jIehdg?uch7<9@>J)RnM59a2hgyS^5vaku+ks zpEEdf4jE==|J3?d`+B#qnFjI?K%kzP@Bqlo$U{MIMaKpiGA|nEB)iX5748@cX6er) zQ69afa$}gt-QkqGXZ=y5-^f3>3AqowcMkAI8^4anPfv0++|T>6^gxo)!m``!Ir@TU z|AHA%x^Kuo0AaF+dr%6sz~}h}pY?wC4P@@~TM*gL7K))MTVLy&8D;s03dz5f^W;QH z3Gxp>utZt@i4?=v$z<=*@T~SM{hKMI%cAFkCYjOY&`3!^l)ZDv9OQ8{oQaaIb_+aC z1PBUvHU+yrQn5sm%oEi<&8d!*KwEu>|{XljiMhJ4zPbx!~xORvYg zEKC0c^R+as0w_6}q@ef=qPGe9@$Bs+Mg2SCj2G`4aUJpxg_F`^^hXR1_4UtK{%W6R zE7_ZJH->xG6Zf(8&u#&gr7q+`ZUP6gqNFr0%0n{9KLDX8TqdOoyJwtfPR6bt843yp z?M{u9A_6IP$W)`njPCBR2R(geob~XLBq=kgySE_!00bs!rjtL4*YvRn=Wq0qcv>Ir z*pHK?cm5rf_Zn0p{{Vz<{vEArK&zmCnqstWFlbHlfl-;(gTDU!%QAh-2IPHU;( zpoGy|h3G96b0>1nAe|(GjF-um5hbsjPJ4WK0_zE;B~_tk0NtxR;T*S zg}$&02(DuIi&@FoJ@Mf6c0D)FA`CGa=-^@PdpqD^qGs8?M-26DG`mwCLDe?G6REJV z6&bSlYyG*1+O}}x3%DlhVD=xIPIcvp`6R2O=L6%(w2_j zsC%27jQtiPgR9F9w%2CE$75d*;+SwhY&D*<^C{y@^a|v>*m@iC4?qx*`y;vvdkzg( zSe}sRJt$$E5hqsl%bux&ne~N|T=_V%kTXJq8*dHSmTe|I4ah$L0eMBQ=%ay}V0P`| z07glN_FxsVYAN*Tfh2qmB6S7pZNzIKvd21T@|%s?Sbsw#_6kENdI0l_bcS)ySJ91$ z(u^9+IxbMdRy6s-93i`w258Vym}A~ni~IvaD7?ws>0(cF?CG~RiR{ey5GEFq?3b_# z(6{B|V2(;*FRjt+d$?!m-efG!@(*(`Ylhc{)QdAT`YgAHMQ)*#Nn@p8RZxzm9DY%f zmCZ&bHnOoXq#(ZFqFlEUK>mRtXvk>~~Z-~-PW z)dqNJ%@wZ&>_vP#FWr1az2b?`Y8SE{!%^fPfMC7BQm8Z!*6z!1Xy7DgWq9G1)q0>W z06&az)sa$~*`7uRB2Z|F*nwGU*o1XpWLf>7-ZP4r&hT|q&Y59;9s3`Eu&st=kU~otrrAgOBloimUn=$yqARvGLk0*t zNbkh>30t^#%=)$Cyry9V_oB64*_XVACWtp7EUZn4T(Q-h}^ z=W#H8ApZaa)>9i>yF>g+)nshnh{b2|S1aM5Q}H!X%=y7p^s1{?46xD1%Cp)G1^EXc zAX}=xku+lso#pHg7&8S{imTh!BGz_YxOWwq(-z3hZRCU4VN)S0$UgvqFNq&!()1wz z!297bU4;s!>&}}#+F4PQeszs+06DXdV%oErmwFW z2x9J~u3o!oEpd;>mLf|cc=*HA{UB__u0&Py90_eU$yX|vZS$(#c>Z`|K?wN=Ag~q9 zVboUU%WYVdc5hlc9-BM<$J4C$j9aeb%#LQ%2f%5EYV#322ht0ydIouCu{dBg76-7r~7FM{ci)w45H|=zNY5mT??M>3=$lN~$dLn)fUwdKao zx#X*;V)8t-`pjXIFI7n^yH@D~jDlaigfd|ZF{4iu^G_x>)<0;;O5`7aU}C!xToH4` zA^2s*w}F-D#T>(+0yV?^Qw`2ppfBk`L1sgzFFdzrG|yo zM81rW&X)1mtqIcoV2x9)mJ9s>LWCMgcNc3B#a)hDRj>-|BY@VKYA^OFRd=DE~=}wV&;AX2z~uG zyBNRRQWa**#;B}>X0OlaQ3{cN076sP)-$v!vu77R z#vW>N^fayd_f@nf`wQQ2AFOR!E%dM%B<7CD#fUoA+hBz_nP^1bwN`=O>;QroN@x06 z`{Djvqa7YzAAX^2QvWy~fxbkt*uB9csk(^G1(AOMLZ?fvu(nY)TQ$~G8IlOEg1k%A zf~ZF>+PRXu4EgVh>Pk~d4AzLkH>5Qi`GP9YB75E(r9ncYvJE98+XV*00H|u&_|Sc?^)yN-ce2tuKG!!JOtT7ipKbWbcMPV zVdr|@$ES7MSbs+T0SMI-c7V7^5mxIvYXcEzH(R&BYE)FH5V6|9dX1ewYsK1z)sqxd zVJ!#w2O#`?e8dO6L33ThohILuI~$bt3sDg`=uG#gyFasDMm*6DABOw`5b{GTs$kaZ z!?@LtmB>}8STlSNujUw3`3(=JJ=o3k6)2OG@ji+SM%m@a?7_p?DyU%>*w)mpen}Q9#R0wT1rlbnL97J?_>Hf(y%8cCyK2nX(~_%@PK!Pleh&EuAnZl-$#S5f{=E9B z%X{0%obGEdqG7d=zfJs`k%47yJ^syFzNO?L!BZgarYSA`6x3IrW(;+u=W z8aL*q3ptewZnumcF-DpZU$I%*{#xX53Msv{;h^i`0OAu*{5YF)Apf91OBCj#Oj2OM zZ(Fc?<~~xswQs5_BA(|a)_dT^1OY2Ob~~Lz+*XauF>Bl$&Mj!jKLCNBgS`%#Fo(Jy zF3h>bvTcsv+$C(ou8c0z6XJHQxv<$Sg(~Pax1V%{h}RWRxb1w$EfNjS^dbKM1g>LO z(6-yE4uz-DSHhuF*1~Lxejb`k5OvbWCcF^J}1UtxUeO%bw*>*d!$^2(|P2}1?;u*NGAP9$!iBl8NMunm-aW0 z$4aUScd!q5MB>jn^#_aTkv4P;@SpRXlbuek{I5m4H66Yn+vIb zJhlKc(j>B-dVgmhc{K0FDabn`{{RF5J1wZbDn<90cmFWR=@}#RS@WJMX*Jd<+7l*; z!rIw=3HN~&RT77+Fz;3*i+&UMVnGb^J`lofM85+25}b-dUpfw+%=SoDXw-SMx33Du zwck>2_L&RaGsLR#*k^I7CsIVOK@AQz%5?=HbFmu7N{jx3&>@>@uA`MJ+H%@_wWO3r zMbPEML6r;iFEb(fzO|Xf-^f1z!71Hxfm6RkByNGW+1j{LtWVyL9j(#Vu|mkJe#AVe z1CPmgW3OYocvb|Ee*l72Z;4xdlG1MM+9O2|G{K6wVd3>b%+J_04_~sDVYc`t5FE?7GHaCRmw`79m96S#MBUO9*{<EQ~lGIR@auFVvISv%hj@)2RSvPoqSiKWgzwRi-AZenm=dW3yyIzZWZ8oF{>+ zA7L$l)kFRP2zJbnC_GAz8o_)zD=MO<7d=7rV5}RMRqPydJ7uTdJHqK@#tvdu`v|y? z`~wi;{WETmuMOORELXiMqz7{`$8oBfW!jPP*b8_! z1^Vy`5JG6r9A&jAY89k1bsP4wGJcq%R-+fN>t#Z8p(INV{ibpKw4l!zhJhIGw?O+v{pryupfiYmPE$!ar|u5&o+*ckjQj%-b_aq1x0Hny zMm_048TiODi?^V!h9Bf0(rTWnkzr$&@!wNI7u{_x6#a=r?dBBZAAn%SlgmnZ;3ZF^Zd`^Y!p>n8+XYOaV=kHLG(D3bT?DXCy;-DEoO1S~ zBD>KCyK44Jn8~obFLusDD!tfMhx`K&zFu^kG}bx?7CM=$mLB;&BR|9Z zCf2+#zc>#BjcHL-TSaB9DMJ^>GxV<@(+>9-&(fEV239kQSdH|4&I3&ytBKwT-cwjj z~1 z0EETKshDTsOOwM`!G4Fj<+T<)KgFRJZE@_8f~Az#*nBIY4_q_*4uaR;Oz?Qy3^e2) zfS|2%4p zo)5nyAo@=4w>7CU_%1{}ZRieR z;|o3gC*#;Va`|!9>btFqfLHhvTg#rT;f^)dVE@C_1iQ`D)1>%q__Cjjy?#2)0~U?3 z{&h@&&i0!ir7ZpHQm*6ghHHiJ*@1f5OY3ZjG`t+v40 zn|vjlwUN@P#tXF zqJ}%O^xpWJDA#Zo$ANE8MzGWAb0b#tJxl*~f)wVt9{?3)*Dxx)h&;MCX!1cdDwWD%Zme zQh9jw=e3Vkuh70-*S{&eh|H^3Gxha|#eY0*kv20vtxG9)Ad0^x#X%>Z0m3&XxCd{j zpTpjWyr?h_(GN!8bd8joRc>Ccx)D2lnD5EaNU1Zr48DgJSqqsgG=qwF6Zh7A*%w}v zji}`4s0;H!B4Z8?ogsQ@(y85D*Xj>1>blqK>beUV;K#QP3GUXRrn?+ zcC=&Yr-9w;hVNeOqxbB&+p;5fVxB9ya+KY7h1&W;N?RzzA*yUo{ z!kKlqEb|t0*W?Ta?=kmu)Hqa@8P7QC(4S20Stk~H3vTjT3$8Zg_)vmqKfM#{=3Qb} zt&hXFcnk>ptC&~b08QT)@cRg?S*t4QcO{y&YV1g*+rw31j0quH1%7=yfT&?;k&hPD z2IfO5$Ugvqc{3ZhI2*ccR#Wb66=^PI={F_H{LsF2o$G1}`0Zx>Ya<@qcdp}icni3$ zt7JlvfA}2cI0X%!%)z1wi3nILOI3XVlBI*x*ri0b^E;@VT9mPP5cG|l zr~0S~BW^`2DY+^-r8OJ-)~<-=X|RC!f{I1$k(Ej`Pesrmkzkj{Sn@wsm4bgTJF@>hEt@*1Zlp zP6}8|)B#&vFG7ht`BMe?! z*R`%;O;=0T8sr~<;Lvv@7y13I-h!*q3O#m}|Hd^7{d~9AmFuw#&i5Z+{!Z;!C$8ye z=~&~?A4rz_ttefA(#SsmfgUUKS=IK+fnH0V_ z#?7;;=6N>NG7tF&AWVr`G$yI>*t_wWT0z|xS3j}ZRcG#2S6O(h-CY<<_@ekHk}etV@&Pa#ChV- zdDi|qWPvmF;pFE}rDcfx0}!4;rdQr&A@U7`d=4Kuv$@5j4xF1o2#W^T5$|^+o^da4 zZWh`1PIC$JcgQ~gVa9Sgr@4jA%gLPS%L{yEQm?{o@+y+ETWC_MWxc^%H3vrIkIt@=B#ESJN{ZxLWFAHDXid_zU`#Ais-al&X zLjC~=L=TTyx{|TavF|0^_HClBr}tpW;FWB{o1Afzt|c>&D=ktz9g8jUk&+q0HroP% z9O;`t2s@}-_VACh9%o9(eqtYry^Eclu-qcDqE!DjaubN==dmb@;o5s>t$kYpUoMEX zgcQN+m8%xL2j2x)^q*lymx_H7XJyz|enPiirxbM6z}^^j#aeq;Mz?LJ3*Sy&^8iSqUyu@}2J@_-u=tbsns#!d?;}mP~U8~lJ-|?>@MDAVKac8a;)fU!fM?3w!3*TU+qn-EA z66-PKAAn%lNiL&N?5RJ_(5ce3YC!usb}fK|$Q#%}O&PT1t^~7MoGjGN);9Sf=#3El zSIDCHI`qMyQHlyEn~6Dv)59GehVSK$c_1C(uu#0#4_n^!nAQq@FiO{}CjE!d*L%Q+ z01#Nq9U8s^f#w#d!Sp-<5lAlhh+QQ~1+ftO=9gtIQn8taet*d?ba&L;co_KyAYca_ z@RmhCkNwL$BBc(jMGsn-CNGBPw1vK?-FyLcMYPV}5nSO9Psi7u$JjjUC=imdn&j8r zR_b*v@plC3jM73h&7JgESh{Sfv1g##-x=&gUF8_w%KW3o{)g)c*_h(c%cCR6k?3EH z3q9P96}7%v3f+G{wHP~jX`v6cjcC)gieVIhXtKcq9BASZ$(g`SUsERPk|;(WG*rYKryTRxWvC;v`~wh%+t|oqQmh?h z^79V*g0^PH$-D6luPs!i5yRU%=Mus!9`gol?!zo1@()YXUZ42~HYZ}`oUhp!$mXemSzh{sxLqWy;K**9aH4CB(K|Q-sMt&K4 zEVZ-1q=$LfwH+-v*#FIWGhiXbF7}momQQTDA+Y9j>NL}b7l9yl1y0-j9nf_89#uFE z=ig&QtODOwi9NC))@EV;llCj?Ih2qCG$A-7fmt9vaeb4Q>CxT ze-B$x#7r9ct2ez6I2R=FCb5JbAc%cARau4n0}$pnWxxt|#Tj_=3LILV=kQg4N$&9TgRIXxU+$7}vJXNlu*WL?DdV1W(aC5Dyj znnnL3@Dz5*q(y?xg0cd(n`I>s$a`z@WqeJ*Vj0$Rrk|Lt>%TB^1o+=FV3#0|F;6_B zuy!HLr3qnu<{>fUAAsO*=1Z_^gZ0&T!}e!lWe6jPhc#;%6U@bqWNa{j<=k2>%GTc* zW$DZc@((~@c$g6(zm9JVe2a~Y6?=v+WBP?4@F2(`C{BINFYH|8^k?@Dg5IJaJuIV8-<><^pUKq&Yny8_>-1BEJVG5fkgb02-49qzY+P1A)nxWmJj#hsLVW zt^lV$fR%)%0F|)b58hol&g086n=TreEcVw=_6MlJH{>6HK%7KLy5OQWANDqlz>Zo0bgc@5bzg$XY%BRPOxdTX*suTETD}g^OM?bjZGUq=myW@*j2cw9MU>jDI2c za(tHkjk--icr2L(D;CDDkzbb|X!r|8lmZEN%xqd_Q|GO?+c>_gVIg_E$Q2{b-!%bj&{+!C&7UW+RO z3WsV9=8@w(YI9uUlvnKxWyb<>XC3edNN~VDscA+o)GYbeelT5>O|p3%()Bk3Rm40- zj0;iV<_UA_k=L@uw{K3+Y;&ww?(yMWIN{&fjhsZU!g&h%nLM&($mh3?Pe1Lmj$l^|n1(c3W6nzLm0;=n@0&l(MUl`$8VdE=Z`v-zPt$C@JYwr&M9&yIrS@82BQnKc0kU&=QFIkjp3fmoaItlmoF30z}0VVx_-GgM}pAc6b}o5zW^ z|2ryc%CsLtTL6Dpg%Rc9wa1`;&Bod97*R@U2Vx#rC!KW`w1VDgnbu9Ys<`?-#6+OK za1HPWNTA3EFoCql77fFA3Zj#Zei3nXwypsml?XK~+T?AVIwgnWq~n)Gr$SZOf>4k@wLa z;@gh&4sWol5R_l4QBNg^dII%9+wj59tZwF5)%9Y39G&>S8U~4 z@091srCi4BSfx1of&`|$H8GMx+&NtouU6 zEg`Tx-cLb4iCFf2L_H|R>k`WmJuZ5IKR^PTS6tYDXr(2+EJeOASbHZfftT!Bxr}|I zmajYig-1HM_Z%YXT8THNVs7KdC+sU%V^v-WJ(+-nBVU*|-*(&@mfFLgzrHyz1KcR{ zc=bVe&XU}Q>el@AqE+F70gTM1)MW! zRmkcqFBtJ7ne+jjCo9yBh$}^Q$^HcXa3k~sok4Vw`rF`JBO4mWkOheTg6_a^t_js_ z+7);Mmh?33O+*0=dmB0`1_@jV`;r{X&8?BwTreu?aV7QWFLE6GhTmtw>$u4~3!7l+ zQWp0{dnjLnJQv^(kbro&kq`Aju1+j2@+>OOqdR$xSa$)n87Pm8nV=Ocz$531#Vb0l zpz|i2ABBW-kWkPc!Bszuk?yc)KSK+Voq(*7qTk`|f*o`}&feeGVx0ZA&z!CHuEy-H zzlkI$xJKV%HLiK#GuN2C>mlJ*u*(!%Bdy<#<HSCP6#{8lG>mo+R1oXt2B8hUSQ01;b^Xik!1g2Y}f7u^Zq50Efj z92TQpMLmNo3g$f?tWE65z#kyt^Tsg_$9VjZpHaEe3@)*9j7A&gjM;C|jvC08 zUnx`V-7Z=IaJ&X*fImQjMSIoo$t2|&KiI!QfjeU3^d9Ja{PKFri(|%IK$NYSYfc$F zgVZK2#Ne@-Z^1n=Luf`#8PU%oaqq-@#;A7~YKPvkBt27~W>l zUcz0?=*a*iNX8ZWa0Nq6^X2NS6+UCk6!bMy?5X)mo#<||k@x1Sd)LhLDyzTHgU{ds`_=?^USr4m-_N!&?>501VD z{s0LD{gX+4Xli^kTB?e^*ay%P60dbnx$7+5Yl8`QAj%nIpd(&-`=m30KR^Pw5b^#9 z>nZ64Q;4w0|2-b)Et6ki%2Y3=^yH27c?2KEyaCGHfRFxpHJuYzDcg0@_gtT^wBc%)(k%xe=lLK zTj3cQN4t!p#L+@E2$x`Hi(ywfq=?YM z3j6^Q1kCCf8vi6MF*Xk?JMa+L=NCT%f4B{!+Bo8q?8tDX9!iYS zXR_nTpW=Kzcz9$3ZJH?RA5HRzmDsdt6V=N-Ky!dUK*A+JnaU@mh@?CK?{I0bT>DOr z;xT0tz8SlK&ehN0fZ;e0jr;!O=s5DsC8u`p#OS!qgIYW zukW4oh>;*7(qNK`;&-PTsA|6x@r$P05oHWIyQj%FZg1sl2ImR$ zYlF~U?}R%AccR+UhE>32GdS_7y2xZA9i>15waDr*L;J)gijv1)^l&%R6L@M?Y*~#Jz|ju;0TQ@6S^}cY`+M#6&YVN!Alj3FVY_ruJE_ zr@&k9KN1btxRabD7!@_IK#u}{fCS_Oi`^+Et+7~6(aLx%8V3IfCt0;W8)#-0zTS{R zTqHC{c=#@;0m;4`ZO1wW`~ec4gD?7IA&WXVvLEMQmhxJpaIsP{sIUc=bcwMquRmTO zU6H+@E6CSNL&EEMJNS16(kGb*BpQ)|Qp!_At%#RK^GX8~IB94Y4r94odkV9L^a${W zJCIKcF5YV8n@X8@@66BFKGn&NbIqL!YuMe%zsEK7$QJcrC$MSdN0=jA14Fc&c#ys& zKackY`~ebVg@^s-$J-;$BSU9tHavyN@VDKbygp>~2Whz}jGfZkbv7UlgUW?nknmiT ze|b{ZfQ()TPj8-w7afRa3qgL+6COrv8yPV}T)>nGBin$E4&TiKbN8p&Wed~5A0QzB zeUW`~ecU{cNutso3B&2y*pKxhe?;C{p$-#gc}grOPqO1lp%g9 z09RVVeE$NAv~Vt>MEg=qk-S`@4@|w>f$;VLt}1vm#yrWG54P>S6YVLpcr;l;m^dlH z3qdt$g}=E0653~BRm9tTJ>M=m!0#i8)BS8PuaDzzm+`lVvp>k68EEKUCshSF?>?Y1 zf!og{D?Pv;AVCPoy9kY#?n#1o!xQ@mXqheD7`5*q)>%*N&@MO5SiLfMKJ)tid`w{# zY9IdRsTSs4NC2~r!py8f#_!?Hu@rNt_+Q!*OL2Z2cg7MtxNcEBA-@vghkQK?Q9aDk z{b#{BiMQ#N8S7N2f463*@CLv7AI0J|@1S?lv!i3S6_f`mpem~=7KIgs`YY(|H*$Bu zmu2jkEu>*?f`shYf@N<3?OvUpAL3vMam{Zk$mEeJM#pEmqg+dO#DV`Ek$0f8%;`C( z@TiW{x!v$D1|flK*&SgGwps4EGrI2yZfzO7mH8UeuexQ}sSO#~7z-R)V96Z9|6&@R zT4QaRJjOGy<$g&Ln$O5gNp@D97{=AsH1d!Y!R^$Zhi7i1ni5pnY;Dxm(HvnreYbL`EDC$M#lk z#Jsc=5|G_zcqquBl58p}1`xCP8?*)L=NgE`w8U=tx?%>q-B%~12ano>Q)iSHJ1uW} z(GLko*xSjUII|nivJ<;bl+GRZMsf75($N6WCsiS9fzPPBfqv~&cOTlF>MTDYKM4E* z5|9m*mK1QZcx~Fog8U#^@RA~EFJm4d%CM8(9IbH9IthC3IyaL>P+x2XvP7$Y77`SB z5#IAij8M!HmSxheL#AE?W0Uy5%&2RjjG>#Stmq2|tQFq)eNCY}1pJ|gv6{9HydM{O zFyQC+RNMAda#*Pnds=vAXJ%J0>E(k?X!sxIoZ#@5H_)m_7*=tN{BFcGS(WH)k?Lz; z13Wb9{LUIh{`LMCt3MfgVtsjCVBU|{?2pv!0DTwiJ@2i9U2uyR&sS9hkIkhwDf`~eb{$y7hW zG97o47xRw{>d=~#8-BhaxN&DnsH*}G%Ybd5^41xv>uT5BfYx(j;GR(PQNxY_{s0No zV#Eu=tbUndRez>SNPe*sk-LDBfc|69QEx%Q(by$oz?)oO zwI&(ib|JG6{Z73Oo?CGSyb!7nA>BcDqLGE1!#MAm-kk~#V$G^SvWZJf#06wHq+;-W z>tBn-pjqF}Rjr756gjWAX8m9tk1B)yH#U}s6t9pFM4x{^4n@F|u@m?MB*5%kDuw zOZpwT`_4VcbwQQ;JBL&_9zC{x3#3~8BDI_p|!_f7zZTWM^QUv}035XYZG8naA z%5l>0M%c^5tOCoEzFi!nar#Ktqg@rF;z#kx?G#8$T zvAPqO3p5j+fHV`N(fgp;Ac>}@i8uLwq>+7B6%sM3cR+&hwC&k|@>`bN$lr-oE>Rvz z-U^;y-CHaR`Q06g51+-NEo>b^?=_`*Dj#8)CeadF-gDhX;17@hAABRXp)?l;!G&@0 z`OCi}|JwO1*&D}ei!A}n-m>mB%EfsbsCyQ(7We}s)a>H_&)hBQW5xez@p4Z&qD`)` zN8u6J{z_sTc@En-Up^B8))V+=WQx285#z&DG=+u} zYC=lN$>F4H92>P^y%>RnB54=INXkWP6F=B?d`@?9?orh655y7K&KyAmwJQ#!nV8k5 zTYVp&E?!oj=AIyC({nlC50F6XS3R&v?q&X^yzZZJg*8-{RIY6X7d$Y}gWS_O{hleS z=z>jN4qhShV0~gVn%Aqrv?F~H+I~ohVE>UO?u2bFP#07lm3r})h-12dQ`m&)nKi|tAz*x}|zS}+c-oZ^QXdjoD? zPuaIJCk)nwrw7^oJ&Cr1tHlh=1rr z%cPe)Ld!IF$(GvStKFJCF+Ito)zF?Uze{Efmx{+_;17@>s5Ez;D|R%;Yhj~v4DF)xJ~ay;`ha3H!HY1668!U7{13_BBZ0+V5RA$9?UN@lI&^ zHg;;g1diN{d*y2J<4rTVT_V>unb9^Os{uH;ewLqi<@)I>1~Gne`mZOKFyQ^n2hHh& zo#FCdo;-)&lHV6G!*_J5jSroR{H5n!w8X#OD-IY>+6Ls_x1MyjfV>Fc50F5!nf6B7 zT7*8tQOfQ8aEdUGX};NM4K)B5Nf?RKGUeL;m#@O=kE{sKYd|4H)Mv#Z!5(5B!cnh9 z#_AJU?9F1}aTEi|>t7)xL~Ai{qF%b^+w>-#S}|7^=Ig22?o~)|gv=36y5D0r2@zq1 zqENnxqDVnS2G)>Mlwo{g$m>w$lJ;R7@wISuCRE`8e}DvDTB3anKZi@_^(5{oj!o#F z=JR^(6sMVT42;oA7pJ{n09Iz?>0GQna$-jw;19ic7p?Wy`svoDKcCL)_FP^+JCWBH zLBieng8sXrMOy*1F*#ADJ&?0$jT2QNmxq(>948;+IXnfjeAocvWC=&j_!00Ez)u1{ zbR3|}KYxyyaIB1zb9zTn#Jiw11^EwU_sHwZPPJf1 zj33Kc*el4)kOz9%g4yr#;N!BsQ-}@$O+x+&v%YsVKHJ~3sXxYV?p?0lq;AJ2_MWLe zj?oC)UW)ganvg|b56&%A&~f#bg}5fx??%3yxCyl|@dKTgymNJYd#oK?NI&Yqev0`2 zN4;Fb0cbfhvg0u~pbOgiI4^5l^v*ogJ1@?#xny+%e}IJ9;bfq#mu&HM&_zvYu!zR7 zOT;O(96E(NZK|8P<#6w4XZ3rWr@yBiOv3%KwiwrTxQ8&Y{g8lIf~UO?HGA*aa37{t zt2VW*pW*{We_Njwl_z}Ksb#ZmJ;ZW7r9TCxT|t`wVnMn(4GF|(O_^O38BL5qV;He4 z2gV`LVC*~~Xx}$#yLZ9wA#+v>0TS-d(UC6WNT2a}wefkA@i}OG-e`PY zZ+!lj9O~kXmQvJy7bFz*#|_Q)A@m=u>Q2!Nbl#2o^Mw^^qgV}}Q-(HZnDC1J7Q6$r zZF;PA+01p90|Pk%3BL;zZMIXF#=*vM<)yJNy8Tyf$6Mw66~4co9@#E$cEy=*0lc`` z9{aj^qU%b}W=@GDj}Cb5PYwWofQ0@nM|U4ea(m7sJ9oo&Y3@$!+`T(7C*0I*N0uOJ z9~&JR&fC+|v$=E6bIHUWHA%6HJ9{ujFgM%oMjq*QssbQncSH$__Ow^5ZejbLn8mkv zkZ?+gf0t*7;w;$ej&aOPElu&* z8|W}J?FL97RQcXz$g4G0UaQy)e%>Pr);ym-eOc)8RmdWUx7~-GG5mpeTaqeja{4#( zbEL!f(TEy`gq(gp*MReh_~HA4YD35y-qpDx${)Wg_+eS4Iw#~26TNIOr`Jue1H9NB zJTzlQcQm-B_gLBLAn*rBSnB4RxVPwS=JW?H$j<5C$(dnumgH8hdZ70eaP5=7?47WP z)hhXqIeh{%%l#$jC{YPYGm849ILGSEYP`3oS4~`3%eB6WT}*u9NxWHlLh3KdU*p6F zq{P?}w0$!q+yn`HI28#9Z$zj+=t|d^b-4$&S((uR~W4{zDk$-l!j@9zBc-Q9$cwPQ0@cc3;I=et|4s)`+n zua5c08FYz%tO`B(OGs#Iet2|mkKn0#gw@rEoOt8M~423iD<1Ox+2S1hk@D3pOUB;@A@&HGJz)hOX>_edO=g}mY|Ev7rrZ_UIv zzcz0f^&7tCDSS_acL)3dpLmfQWP6W9r-{4pO_vf{1Uy<7aI zUB#M_dadD7PR>stp~URx8V`YODg;(ILXvzD4y~*aFTuTUxNz@sMUlKn^e*@gQ6e}DwK zTN&;K4gh4_{^c&Vuq>UB_&bnsL^0J2^T^7kE{7j8BS-Bh;A!&u+`>=BX=c3w2~2x@ zDvwqXbIwn&q6B)ecKb|eSz&uDwuO}!-+f+xFn>tlo@9GHh?UAMlCm1PYUd!KT>L<> zYws7)&ztDEvDb%T(YPh1x+H6uP}nn3q0X*2z?|l5raef$lKaW{Vtg0)!)AKlF8IxZ zJ!Z-E2yE8%E}*i37Bi6U?tGm{-{HGyJdMLM*odC582fpY7l%@oFb~9Ah6HXe8=Q%e zv^Q$<7BQ!vK)jmRs+o`Xib+nSDu0#-p&CKNCF1t1u!Apw4$u|t*+Bm7YZ^7v_{0z1eh z;oF!pN8`vU1oND+8&yRzmdhMMB=USZkun((u}2}n4BpLkEzTCpn~53EMRWQb^f_UV z8jTIaF}Qx_eR%Yk?LRM#hPg!py{<;fi95qb+J#M=ANT_#2T`Ar)$lNK8QS<0{*ZSWAgG?`ssdt z!98j7f=koZ1<{P43`c|kbDNNq6i&g;7xKz5YrG?Ee)iuxZ_9*{pDTjjXycS+6!-%q zXybOJL4316uz0Tc$1QvMz2fSYX|ZMf@)bA6%KD#(EsLLs+2d8fvKu!~_k3?l1lib# zqZ(*7@CQg}-2AAR$rr+=kgV|9->G{nPpv^0(JM*}u?yd+n+Ig;sn9^H4SalKT>~V_>0ExXO`4 zuD2qzIOH>!8;%y>5BFkTjMxzq`&>?qE)Y57yT!mDU#2~hv!kBr?z41nFJgOneMK&I zmTXGIA=u3r%Y?53e}IGz%(s3Vp`3%AQciyYIbVdq{r~-7#e*G@FLKC30{#FAum->j zoYVV1^Gy!fJpWe$m{mLnaNR~+haCL|uCW^V_8&q*CHCv6oM66L=|~*oC1|h329X(?VqnUX) ztz!au4&IlC_S!N&MG#-9UWph5>N;d4hIkL~2S^}HgEd%z(0+s+C~B}~zhC4Q`%@2h zetO!9XxUPK7Ocw>G$5DG>5o7gmb|*}W@G4wAxNOzQM9pHt1Mr~zFc!fLL@Jzoe*ac zTL4C1RlK5Z`YOBIzHL*`rFt-9ry)bATty`QZQu`(z%^IJ=&H(9VWBEky7F}Gt?N87 zx|+{a;r~B^z32#@#FF;J{m2`lj1t=M5BS6Vr3?x;;s^EkS%)9WGNPO?%61y0 zY6j_vQ7J+U-OM9k{}^c-5AR0Z#8l}nH9}AE8YBqX?nz?rroDl5_!p^^Q`|W^2TV_R zS}^L7N0ifdPtFWo4R6PT+2+IUWafiY`jRa0hd9}C-n7YM9^$pbh+)o5C*qvPqG-A0Xj9*m=YpQl{TAF*gB(Ic=6NlLxD9%|9{2+!F!hq#>YdrlS>lJ$AmLY#_baff@c5oD23}KSd>+ldc2-8c z4b_CX#;TXY%8E_tT8{G!BjWnW)UaYgeJRCIn)(?#q}Z@SLP5W|sAANWr|n@YcI2s_ z6v7t#mT=}C^f0PSwJdTsN(?+yZ+~Vnt^Numd=H+ebX-Eop$m z27_0k2K!4}TUBwT;;p%&S;QW@BU#-(xbbaAMvyI%(W00~U(ldU0JccLx% z#m+A(Uhc)L{@&!gq@Yz#&IH~~+>{?(#t_AQWYl^9Rdf;S&@LtM*hcUv0Dss9j`+71 zgQ?fDmo;7w{wxMgQPZGL{94!kE~{ex+TY`ex!(_7JO8q`{@Yrt;O71`aHVMe#v1z% z;`g!dyMaGI!rYbnn0Uqa*IpHvod%cYAU{BSq|BE?E_kxD=B-#4=YOONt7%&9dJBx> zJzZ(A0B~)lL5l0`hlDz@9;*j`kQ?0Jb?hvz_u1YCdhfYb;;?gxMYIk*9HCl)e=8!7 z4{yts_9kaoRP0PKFmEQT2K?F~`9^sS4S& zmWhp#g8uweY3u-hfP{kn!W8GRVMNC!9mZ%{K4CXTQ)q(5-WR8sF%o|T-0tNW>6m4~YY3>L<(RloIp>&tPBuTw?%8WWB8|K9kNH|@f zQD0)2BH8eG+f77oTJ(Eb3PAL}Tx|0o}e_bkL}cWr@TrKDAo_sqxNSK@Er4?A$gILdhz z;OOPxG^W2fLMg$HLlrj0?uB)g;-yA>^e%-m(yxVnvSSxK;17^sf<@XP*>0|ae_YhR zRm_glU&Caj18Ha4?{c4>rQfG>ui&jAYZ@`uznp~@(^`T2k3xc3JeLtXPPE{Y{0Hz7 zDEfJG0?{nw46csdAXmq&%Mxr2ciatriZ&kk$XR_mVim-*1^fXLCOQc@b)Z7@jhL|F z!^I=pggyar0QlAUk!_Z60QJg;SYT~dm+>xf2WXx|5I;cZmoVQ0c;>WSn+4R%K(R#F z;Mio?u3dqBziA&o%I0b z!QNZ*8byo^?fgVPt91W+>f_xOad)RB<4-XQf6A==w6H|=LBcR3P|XBl|Je5|r&msR zu!~@sn$xv{wi{%s@W~tHMpdxQLj>C=Yr798riC~Kc$M6o3R{3bK!W>ZBl3Lc$}_OJ z%hLn>gg^-%&m+*f&4+rt@B)P}*er8d_+||Iq2%#ya{AvU&YuPT@E}9tX-*%92T7jV zkKj8|%>!7N>yOzyr+DpAL(8)InQFz#d+#AuxYm2D-ezd@tbQ^N`~ebZ72qyp%wq>b zmAl4z1zY%6?73&k@GD2}L0#^hloRCws^rJI3La@hC&jv7-ttN(@CQgh77;4ExRy{e zH~-TU{_$U;W}5Z@rmJoYez5i-^pFTUjMX~uE{I9@@8EcGjlbJRL26}$Ay=fXDH_U+WKAzj2#Zl zi=~i2H5dHuHMTXC!prZ(*vkiYL4N93+1tCKn_Mru_P)5OYHwmsW7wUv-%avc@{Rop zSkYEYHueL5fP@kJ^~K3+R4^lCLU-2;GG8k!POI017Aaj>{bjUB=}Ne%Mc>R@F0^PE z`-z(OBL4vreiRo*TrYE*g|B_2lWrwihv?fT~XZ3%{4}X=})gEcRDa1wb_VxeB(LCINF+dtdzQQ8L5RYtt zmRagXei7;;tm)x6@CQgBj^=O2V%r?r4<_dWV@^P8KUttGq(!)fay-mFFRr*;3|tw< z-_8tOJ3Q%DP0(_$K*DgWI?SY+c01nKV6IYa5^ZWc-r@0z!p$Xlv4Y$xZ!?4S$1Hw~ z?*|sYxQFp}yB#>pIY=thH0W}Bm z1!M#KHsLoQ`3<1>f5plxLjv{x^@TrT#%A>;xjz_l^iYxJ==9~5ISiSw!_6jWli^N# zT53JinZr&+;6}oZr-W!d0|^hI#-n`IPy1!yQF0`U*uV(l$+Tx8eO7T)jacxueR6|5 zjK78>KkfTHG&1cI3;coF04x?cn5V7y;o)CdmmOobtvlxCW8Lx2*zWkwSQx$y!x_dX z?n*ntmG+^bHq`6{Mw@jRELkjVs&_49Cn_7PQW@&ze~^VFs;j$bWzYVxx;;UkCFyHYnxlM&;p7dq&zOfY0BBeS_Sx^ngDB?{T~yE7srO z+tAwj0{j4434lL90{GR9%Ct#+11g$&B>wjGy@6HQ5lSG~bcg`5=e=v-vNVENK4zpFeo8^RLIrdi=9dX;bpS$cNd zoNY!;Jn#od;Ewb2YB27PF{fKtLTAOS4P2w>Gst2R#sT#~D|d|Ugz&_y82|nRKB?&T^5^QOu&}2Hnd%hxN^*@)`LD73mNtDN~$9W6=CJ7%x z0(~REEv>ZR8y4dmzcIc+v8|MY4T_=1Ek~k1D8JOmOtxg)p=9*2&ROY)BUS1WCOu4V z^IY~4$ z+K*#5B+_2snIi3#)$f?1(Ol9)MXVPLO!+Q(j>t9CATPV9-(9r$s=+-E{NWK)nXMyc zMT{)`6BuP~7vVX=+ZoF0f68)xNj9sc9&Vjt4U&@Zfji0Q@g`)FEQbV!tYPx9V`G;t zmr+McOdPX-Qq-(yP7UL4R8wPzUd!8AeR&qU{OUJMRj4YCgBwc%{s0L;m8TlxEvdcW zoEQW*rVF+pWoZ0v^30~CGaOp7AkAQ>N}7d`&#cU`3H%ht=B)(&010Msw7(K{BT4KD z;Lz?W9IdSj*%acZabN|^LK3xbHgqZG1+WO_tx$I=Cgo*l^d*da1<&9AJS?R$@V2MnB8$mK;Gy9 zyY@H`0P+U>ermHrt0>IwW^>KYa$h6NoPUNj&b3b zZ-yJ1whFm6gS_t?cKA7FLDX>H=K?OL zK*9vZyBmmp%vcYnL&FH!VPj8IVzOY^`6>oK2_$zIFysvVT)>i(23z`G` z_;2nFCL>9OJ6IJ&QkcRH;%}MZI3h~MzHJ?f3CB8Q;17^s9x2l}fYyT*N6o13X7V?iN?U)d7Eigqc>m^+4ydqrS|gz{Htn2C7JT4>F)L zud`{ZTqA$2{eH@$==#_3uCn?cC%4_oz33XzbsMY$;17^sNxO!)7rDXFex`jrI|n0j zKHlvYCg}Q8ljl)WPJiDr@i9jCmyzODe;vJTr=Kf)(sMHc!1O4P?QY?H%wa7E#xi8*M%? z`3b9BiQRIs59^{^b^TS~Y|ubhk9L-<8^c*n0YQXjtG6kWiLk;CiUS=&OL|3p*=7)!WbEGY8ZltDk|7P0vp? zGnE)$(+orbu_$~7{s0N(7mi$tBen~lX(V#^O!>xEF(K^=R*JRo#qll*LdblF2iiNU zubu?{um|q~alUror@H>m#C)+?wBcM8ywgw6=TuWU9oFLFqU^H5Cak9=_R!J%Z|PfPZ|0%!^6m`vT;aYSw7} zCSa)me}DwCA4_+rnDp#<{{f3=w~*f!b~23MWa7{RHFXun9<}xzNBhq7a`G8qy;;QQ z9UpoPuAOf)@@{Osd+z#B63nfr#3gqRV_N4Do z#`cYJ@aY7vuJ>T~x1m(P7N~sde*8AGa`&#cQfqgyq4Gh?erZ4eUTGOZRW>|-VncLd zJZyjj>;oy;wRi!$Aa)CAfgnR?jd0qpCaR4XAKmX}v=wo2iCKkUVr+p2y4=X|1pWXC z`aj>;rO4u>H#WCW7P8y{{e<3sbOO-~g*z}G<8=B2>Fcci9BRCpMOKFlGxjbdWKm;I z8FW%<+=;Lq>o|P(4vdH5*s})zg2O+1P<(0Diw=W>q7VFL*aHvm2l&HdB;gAaz%oVu zti1l+yhSw|Z|)}Jm~Y?;M3jU?EO9PX^P(SQLC9m9n9z&hpP=j_;17@>0bTrCw)RE( z{ike=@%t>|Ptt)&eHr-EQPrv~0^_7;AgtJ>TNm@}va+;)8|jBZNZ``}Al3fO;t=mm zMlk{+W>q}EdsETDU@9^Tx{VvLXlo1h5!x$(_jYc^O5y3)Y~Ig}0Dpi4v$hSmpEx9F zZ-7a|oEE`qSCTZ65})C;XQy}|>OhB7TPTpSBQ9@NuY$&~7@nH&IAc#|F?KMc$tD=u zL35$RCNVsV)1Cwhb6pzM;D{Oab~#Xcz2>fh^Jp{h2S^ad%u!ayysT+jW?6mx zI-W2fFj8<{SYu$T<-A-SS?_GnEOAdnyMVYMm!UKxfj>aP-#wL*bA>}YQ1HbCU)gc) z!u~=wn0E9Ju_5F`{{*NW*EEqSN;a)6KT5M4SUT{BuhPEMmTvZP)n+zW+ZXK;Fh?B5 z-q>W%{=?{1>%50Ytw8(c7Kg&ftB;y6LWGI0flmwg10<|SKN$`*+xru+`L2i8PJLD= z@Pksc1y`Ogz#A{%-Hv@lwgmr#SnQ3EQKl&<+ zCk6ZZJmwkRBBDhxOtaNca+FDwok@ zQRO5}PQ|Z7?UO6^1~Q1Q?{>xfz|bA(?zqrzX|`+c<(s3r{%}r%ZZ)T`?gst<3AjEE z`x{>5NTd((bh0XI{5tk#YVBUv;)*u+cDND8Qyq0_#o@JU1a=QYxcs2 z00VLrGPh%LBfgPV{5{B##U1iGo20DVLlcxGI}fo76BuBuLxd^JUdihIO`fg-e}DvW zCG@#$g$@oVqZ?~OeH(A`AHn>xr@sf(6%l^oTo={e@1y;f=h)?!WU7IBG4O(M9^em< zz(wZ67e*u#+D+FbM9Nv+fA%bhY>HTsnNAUqO^P+d7Ua_WtSX?ZI`*Ra2iEjbebyV0 zK>G?%jTRgn!*_TMpM|lke)%LDB<>5^8N{Nk1`o!qDR;`E-JL@wXx4;UlZq_xhkdZ+ z#yP2|e;<(m0Srv~+3eV=@S}><%M?p|LRX+ms?+nSTFJxBhYt)3%am@k+AGVz$_4xZ z66SmCcL?r5R1DA=NG+{|p z3Yj=Y^$titHn2Y)kv9c|01!5L{b6L`A}eT<0R1bkr_sy?+hH3VM9UfPlNW%Iba?$6 zin?9^MtT?$jvy}7Ac7sDFVwH})rFR{b@f0aVJv@P5^eT*y20oeH>pp=Putk38{#h_ zbJm=m39c|f0sa69(gvp9lQ`T-$dMA0mgbejb+lfe+Arj}PM=y;dy8y^q|L zk_*T!cBU)3Pi|)mfImEe_2RuRH(8F8x4@@QZvVi2V#`#|G5Rj@QR%xcA|_(&(;KiE zd()mv*jNBI@6?zdxd(Sa!tf>!`fX8mVR%XN<4SCg6`8~;`b~{gNdAX?I9iTMMeG`3 z$lFz{4_y~o+|&Hn-xPB@@CQh6n!$~=x84cOymwXzd%^A=?lhffO8!-*orei+EPXdx zG^^K$(hRe?sMI^DVwTuEK7@qoFs$zgSTj(+KwcJWdJnr@IhQZ-+YkrzZyej;$Jmg2 zWb}m2w4B%n?imGyMRD_I#xF6NSCQt1=o(UNTJeK`cp&Lis^wnfI|HH9m1HLaGw zA0PoZl#$zv>~LClu-Acgz^vRmd!hLUGtS!F({37<${qb+##J5zN z*|XJ7Le)+}!u>Jsy*(99a+On@-W*V-^t+%XsfS5M6!YRW zNEnvE@+h^zD~0z3)DN*KBcs^_{0w%dwgsz;)W-pr=}0iR#@9bxn@tFo>ilB{|9Tf@@mbFNAde6{B_gT{X1~|)_+4>5IG=<33~altX+jyf%T&4DQFnv z70}U#vz%HMa$&5r^*zw1gEa%A3~!YpvxzYHwi z&+4c2-{d)|RJW{+*|r5?Z&!rCbESR1 zLohasI00S7`t!OidvO%<7q5Z^iG6c03xPijAtH<@?dy4NP*OVJEuGhYGbtLQibEX} z`BXH*D#onKW`czQ`~%4U<@PCEZ!72ZqwqJ^LIUM%(p9ib(X!=vYY3yaxkG0ANpqqH z47vXbxuxq8SW}-jJX^xd_d`O$gS80N8=Ppueiy;$dHrd_hk5}~$}FB_8e&3%LRgf5 z_asHU*e%^R3mMhO4g&rF2`25gQ&OJcO}}e3lfe2?apO3b#X6wW)YfB)kAWhJ5G7RRX`;PC9RFqv(-#-h7IGNbf|4O z&cl8<0twgR{U467muur~0|8K>=@l#e`h~S4Y>JsSZ;XJ zz#kwXHYTiSivMd|asv}yXiCRwxi;>ak)SJ)nCXr=jamfyHgu@s?DnMA#QEmEomIzg zo}mL9Y&(djm_%P=JTsZ|B*BjmuH}*lI@L-ExgUuo$mA>CAFGYm>iHPG{+z)_XA=1k z@CQgR#X4d;v3GarK7wdhE)gG%L*q`G!^7BHlj0>l@x1;G@X+kS7$G)|Bijyb`-Sa1 z*kwl{p+%J7)h)@&(S}t=ZC9Q;jFG{m&!av}0)HTQuWYRu?j`<3%9{c64gRm5Aid={ zDZ`HXGbAKzb5AY;j`-X*Df$3L9d;1fz$ zVpm2V-lh+_p&jRLnXszNmZ(GwEt-Rrl@swz9_YCkXzVmB!~=EiAa;PpC_*kjtkLu?_c-Y%s^m~*prCkz79g&ve#^2M zJ1nq*h9RL|=?To(n(8CXL2*XXUZly)VFy?ln8HKLrjVBs!q3HX7tsvh50H=;gH5Xa z!I+PPD3Z;ZL^LERF%+$O#U`BnZyzKQD_h3e}5ME z10+zqjQW^<$O5pTEoYF|O@G5Os;>q5eoCoQ%!>taugt5cl&=-!8x+6!Gu5 z=Qc^mP-)x*`~eb}_JbVFzt^H14G1rosKXZ3Sr-hhb30pqxtjA=`t%b{>?3PmZ4Obj z8NZWxk}_5N1Al;oUGH;7P84O243lqxNJdUSH#OX24lVUV+oPuW$q5;I$1x)(=vQ+o z0z(n&*?5X9BqT>2&x)S&`ig>SXgJa!H$>(pzqRwMT#62ri!XrLQShJFufbSais(Wk zX8Oj0JG7*(0}@)l!C0iHBaUoh_rNwQ?2_RgUiFA8kc-n{WEl%?v%fMd^^}35^OE!{ zs4yw(cDFD-;U4v?GVljTcnmsNP~TUMvYS@_LD|XH)b_c%WzIj;`N`=RT28sfl=nLa zBVKNeY%`%wN$BSHa)TzUIIlp$`~7b6rS>h|zH|E*q@%aFqh@~{B644znls+Mk}QKV zkxNCTBkLX+t>`xIH4R$!m9Mz9_h9crtp4X9fvcyesu>YGb_eZF%mzu~|CRT`loez4 zhE>Q!fUwPU+g>;k*2|BD^4`%G=^Gt0(MGHN9(cok?i$h{*B~4-ln+KLb*iKDtvgrU9 zYg4*nl)Ly0B+z`nq|k`}+aRL}7$&_(T1Q+VvtpLx zUT3gj-hu>F;|9RZqN>aLQjRtDI^wU?-}ENw^Ke66e55ihSh7<7O& zFd1mxg6KOZ0O4E>3E=JN?tnj$fL-&`oNqhx{Q+zo@D{dUp5We0wz15;Sef9_QM?`* z!4mbh8M+(z10>LyfzO<&!I@F$g*3$rr z22|@9x!16*@(&rzgWw0zoLQ>ZF=^X!RIh^wjP|=pYuGVB{867kg8iP38D-8}-2*d- znJHjosn8Bg)RQr^E%jizDEUlpn~W7DkY#h{-Z%1Kqd2o!z7P1rb2O@F`CoeQy#6n! z21mA`Jfci%9+pS8gM(?yx$W{6-;Uue$_{nQ$bhtSWQTg+-1{Z5+W)Ql&g)%xin|~| zM(ydWbk&NxBgjC)-ZI|p*vDx5!A|akB-f~AuxSXTtl0j2?6Ob>+geM{#^=ABsFR&| znqIT3vq_Kb9uL)~JK6+`CmDbZsS8(->Xw|&*-H}GD zo6_@)k#yjliVxCfVMohOcroWQFGUwb527CE#Yiu>gG`x5ndDpHUAbg>TJleSiM4wj zB=~T*uj6jW(Wr+nY}~PQKd=slmMS*r?xoE>c#*%sJmE7Npk+Qq4IYht;17^MdYHz1 z4aRiYN+BJ)$BOldH&;8Gp|QLPNJv?w^ZK`Qu{*sf@>tL7Pi8qI!wC2TBv4)?_JT!j zy1DxZt6ELbxViYo?O@lXd^z%QQ7sE6mE=?*Jc>2;dE_c1{{a%7 zm%+D@ZXnbuUAHZwe5yZRB<=emzOx@!)5xZ$uqZ;~jVG*LpLlclQ~ew0`ztXXUW0^> zQfpS4KbLH*&-`9#RD^Ba+h|o}$O7vuV-{Ba{=L#e%LbU#$-aNvK~$Cc2AplYgYm9l zD7l2OZ(_w!IY00F_=Jl4I8Y&l--@GIRGF7aLH3W^kTrk^MCq#YC$Rfp#-?5oM#d-J zFz^RR_*DM_S|lK^n;WoRkYGjJ&4mh`qW=DbQ{|EQNOJjh4plsCfWOcNAp!gW5>&<1 zzz=Xr{Yrkm>uq~VK=k7%cKs#301nf#vCxO1|Iv4m==QJ9eU{fVhr);Nq9@KacU*nQECrbc@ASzgM{X_lK3g2 z%*^*U<4Hc-<`2$-y&lmz8d;?p?@REO9!0ESK2TD^NSnTe5kA7f^1aSpK^W5h~R?>}&+7x)7t_z_%!Y) ze>Bn0>W|nKoDX4)=*t{UIbdg01&^7LHxdW_00~vA?6!dl!QFA;Tsc@tf(zRf zF7u|X;^fkW*32>BJoR9k_u~02X=~_VjH@;-|p;dymy~rCgwfoEfnK+?o~W|}fnDFY@YDl-Ru?-tZ` zaj}+fb;@FV7sj_6R#F*qg8p%0nsOR%GYtvTLy3V-2Zp*qc81$6#5zX!w6!`crr!3 z17mzvMpD47;}*2vKs!xO^O|+iLu`fGukm+98u$YwaMHO5^ESY`611-tt)a$Vv-Z#= z=keiw1K@W%cPmgH+_O|!0gDjUOsvJVk1;17_1s$?KeWf`+Jg?%j=AZK*S1Ph+@ z`**W$>@c--Hq&znc?68=wijUm=?8%)5Tb@Gcx32NMF4U!&>E}}U^ZQ2WnzEew?#P(&uc|cfjsV$_txw(RN z238vI2S}iP*fY5_$ZLTKUi%!PUv=R2_W=vsf%iHs;|S5;$tWG!f+G$@lxr_swS@Uz zBK;s}QJjGV1>UBZF*9@roNfC!C*nR?T3`pcNGO10;N^|9FD>oc!Hc z=%3$B+PZC_swgMl5bcnysGCY+?$O@iTMY&YUxZ^J^wS{lA>a>?K+hFGR{7%etQDxX z1Cmvr?zm9%FQ5%0k(p{V%3*7;5sY3TorHEkY!jFpv9iAl2|H02{;x#^XC3J%;RTHp_maKj8v_M;#EA7AeuA60$j|G)42 zo)Gej0F!XhJ4t{E1f3vgXsHf~)ftF@^~Zu@cM`On0Br}bZ348NfZ9QA8?1JN+BUSd z3u@cgnq9gryP>NsTDv;~x~tW8N2`VI);j#WlbIy*eV#kuy8GG3_m5qxxGgUe-obn7kQTD@gOxZ^&u1rk&5xo$yt{tDOJ*?PERMMuTuA-w9Z-yt!R z;15V}dCDqleY1^uP4gC9-g;DBO7Ph1j6V{;F61K`C3EQtkrMLxGna&`_-1xyw)InCi;Rh}beS!r_h?{5m?-9!z-n zIdNG6{NZWl#o;3PyywkGK^fqIiSs9vN`G{wDi*I%e`u>vx7;$F_m%44lk>H>eiiR8 zRlk0zQ^ob`d79TE;oy_o`SeL%|3TezzDE6d&a)s%Vrh6ARHn9JMIsy(E9D8S6taRF z&Y2-=T>PB)Iq(N0ICMv=#g_V{@WpN{wvnk4>##D3ZX=%~8S>Tfr_e}#epq^1m<^`u znsqez0}^iHoKpRw{VH_foYL{cC2)r99dLh1rJUX=y^j)wUYzetwfEWha->?ruh1vuzD3%N z|KnGDfn6dkVSqm%p}*sPPlch+he_m^z4K%0yX!@Bs;Ue1RvjMaE@~TX7He<_t4~Iq zK^`laX5n+@$0ooZqz$w@j7+I_XOmb}+NVhyo6A$~h*%dMDn+;~DWjs3V=YFHmvZuiJUoTd3j+(&|vcji;h?1(_f2mB(1^n|?^{gF1FwExNdK z<)|-|tRf$vtW60gEIlR9LZr)F@qmTvtd&rAlS5y-L?WEPACS<7zB8p5u%5Ws+iHaJ zV!1MlSyu7+f1Z7H?xX4w>ufm>`~eB?P5$@Uf?R+u9jpawvcDjlhfe*HB~l$nWgBw~ zeG(U^4HnH;E}R4YfCMXkR;qI(y=3jwf^BMALaEFVYGBIU5NBo0oAg*|ynLU2Ya^T8 zwW1b(R_%|-L-FlWdv3c>6(LzV>w|q@3)_kG4=K-W@#_z8_RaK58Baob9{d3b6J|Gi zT!|xHD%=dsE}G|9nSB>xl04bBh_$RvH7C9B74`4xNou66#X6L5YSE7FMmf7X867T+(5hlT$4_U3jT(wCr?S z_Ky5{b0nwy@F)|fW$0HQhSMyEr`(_Dktinzs}lGF624UY%L(a~3G=XAyjcdEj^5@@8~iH+lJ~uNo@z6_EC+#D-l_ zD4}a&v5Fkw2ku0_I%m$!HyfclrUqJ$fj=POVpLb4K5&VvED)#&G}O#cBIQA&J|nNY z**WC(9;3#3z1OI)Uhks~2ar%^efqNDvR?NXHtY2P`ty7qT@bDPkF*@zhDfnV+A~0V z7Sf&pzdVb#k#PIiRjagl*&YX2OB|k&_=X!YSA?J0MC~fcZ|;P*N@8*q*1L=I)%;K(D&u$=Rjn_aB7=Jiqev zQhYvcv`z{R!OZfL?Rm3m%#+dPemwK!7aH}z#vbeGjpo1~o&~`GxA*Q5yWU}Bx3&@G zLZ#+;#Ag|m9;s?|jrD#v^~YFSBE)^et!huVk#pGA{TFf!WtDpt3Ev)*@$>1NJ$rh> z5#G)CdJFD>px(UcEDR)XSXqdIfXYa!4$8V!X1KGHOo$Cs%r5~f71^_6ocZmA!L z4FrylK5tLe`0q2$nJ-S7W(%MHf)$v+0tVm4gJngX=rf7>YZ+mEXkOFfNF|zQ;z`X9GpeAMH`u%f_Na8~*jU5r<`i*wZp3#E{_5esR3&aD(5K z(Xz9N^jFyxa1QBygBE;kvg+`&eWg42$YnAY^v)r)|3%ab52nP&`UDbG_CIsJRU>^v zJV#Iv`q_^E-VvCYZof2v91j^C6&Yo{Yt5BshLUcsC*&=Q38si!G`;qW(WPvbrXp8tiiPwOi_5dxBJxl*PAP|n8GFBGu>7g3jbm zE!bmisTkMjBevo|{2=@0S^9MN{W~Ieeq>*-y&3!g2`=hX?TZ_J8`_-*c308N&(@mYv~o^Bz2pGp*ynA2{+)U^jA2ISbEA=WPAE)J1U&ss+BZ*7)6cL)RapUGbsl z_gL@T)Cd_$NL13FUuJ)rP{as45YtUtUkoam-&~KZ!)yAE)wcz3gLDY0Jru zR5V|vHw5P|?{w-zU?5>6urFhkYG1T9REN5vrCc4iVb4a!4J^dLBCH0*p;(|}i2VN$ zIz~BqWm!a`r;J754@h{}@^>HWb9dere~TzCEchF=#!d06j!aa1-be4jUgjyv*=mhE zO|*k%{2bW;>%%A#T%FNge~+gFBoM|HSN8b{qbJZ|khzNgjM)UE0WEIm;R(!_tWW%J z#KH;g?4TdUkPnC9kiRUF}U|F;J-fG1^h;{=0fCQCwSiLPAUi7hy zSTc|+({2OQHv3>97PB?ry$X1~sHLhpRA!*V^EpTMxg1AzfIlGN!2i+5|Fd^@;oouH z06G!h)$!K<=w0v!Bz&-srCM-BW-~SejNX`R) z_^DV)8uc`U{{eKw($~&T7R~vSD%(;}L@+6sW*vUXDcGE|*l;TxE$5C~dL8@4ok)=W z7kQGeS)sc-XA<*haGm3mrD`x*_G3BuyoJ?Qjw_Dr8FuM2250LM-86&*E!7;Z9l$4% zRIWsYffZEC>QeTkugT|kzF0IrKjsFT()R3!-y1ZvZc1h}c4xh?uSo@sH;^FfX&15B z8tagn=L>rV5`FH0a%0AdI5p55eU7~~`=$@pKB|d__ixlAWlz~25{sk!*Afro`v>rc zF>TIBsC<>@>R@jm9_R?hCF5z@KB{3C-3RS2B)3e(clt<^vev4*E#KnJ zNRT;L-srV#In^f`@k3P9HO*h;G{e4PDCGH2b#H%1bzJ&O&caJaU2R5ax}LijK!V(b zd)&afEX@Ng9O@N~pv4-4=gl-vWfn;A9mX7uqwTDbuM;RdX#9j+cHa5AKd;kYkj?aJd|0qx~=D|dDHlZ>1#aV`;<{^^jbBC zz#ot>Ez`QEu30-i_lxe#^k&C#-`p+rk-CZ<%&)o6xNI+L#y0ou5?#GlX6He;0nVCN zj%)j5X9IsgLe}-mN+UUI_1pK4ZBowBO4VGSTB-Z+l#*wPUDTGmr+pf>O?g1e%+Azg zrlvfMPr=H>L;7f% zOHJ6Di+>J^QnKpltCy^^<*0}8IKY|6asA!9qH=8Ms02s-l%p;l1O9*nq#5j?*hMP) zDY#4T$~!J_BX}-V?14wv#pDc;$FunSk&RmGk#0wu{09DjgrA_jq!}@Cl+?5T6EmG- z=_k!_WE=Rz*v$UXYM(u#8N$;3-zdsSB*@qUd8Y=93K*={m+5glKsD@(ZdSvbD*G%){xgw0{DtlnU8Qwy6fl<)F-$n8o1!oU` zqDKvnT*7?N@aoOcdty4ejX`d86bTM$%+`msSj0mxKvV+yn)?X?&UZ6 z(q1C%lJ;b27y1+HCeAJtR?%hIsIz z;1B=Eo)w$QJ^doD`Q_?I$5lg<(G_!N{}szjafUyp8E1+7kWYSQ-;2DH$OX|a!5@%d zasO`D*awv%^}1zD$`P#L7Q*f&%16->2O2)Jjbnb#F%|wM))nvvBuwFn%Ne`ygnRE%m3E*5%B&vUe1F@LaUU;8Q|M?L?2?a|`&xKhdS+dU*>{2Nj+; zy=jru-{>pwy#2&E!t?0YL#=9Wc()HW^=Q-=9*X|$hEHx#w4#&o5JEyGN}SBT7k9gf zm1&zjuWQo$Dw#lK#1l=LdnTVS+7c3f@OyT@ONr`sXBWZ&UOb`Lm(S7L&peeI~Z}>Y*hG_XqH1rkh9SRI)`{3L`q~& zP5NU=m~Q2J@jqM|iI0@Uv;}%9vA~(yy&#xQ(%ZGE=FCm#)n}z27F47j?s=u>vRUOl zcg(tS*56e!VGLAQaF%Hxw92{xgz+(C^j$t zqJDCL-b+ghJu)k{aeUU#Srz_E>9N3AoG~J8vPH^U?JtCUvR=t&@CPK6c(4Ea4vD^F zwJ03{cXnrmzMo#uVQ}J;{AYt$S`>Q2w-v`>nTzJ1t;^|Dx2Q9{G0DnM& zo7Mahzn`bpZCNM7BUPePg2)`$(6h-~AJEmNa;n%1zwTc6qdlO#MRO7HcOs$c7v$?< z15*9(6??WEOYcwYZLjB8O|1L=@4H!UwR+_J_G*TAv%*U1M8d_0Dd`>IFn^P3PcTGo zaAYL@)7ni>xU!E=7U0ZE-p471vyvJ> zudyoCr7F;kUsN@9p${F~giZ~sx4rrN@vvUst3c)l+C3>>TrhfB<(47gy!j7!rtR5T zSPhoV&@TN^+xaHa8sPq{S@|N~r_hIvZ`zHtux`YsWFA6t?eB`M;15U;X-3?huEW+p zYksw8z#}Zz0#(dke2=Y#ZC=tVmT?7dm|eVoc|Z6A68ig(^t)Hs5?bTywvNQE#4i%d zKiBH-{~Vgr=cLbr2`Ua1Ee)PN&Y@+VH(wu@|F;pdmqmhx-f(I{kmg@nJABnhbth{Y z94X{65R>LYgL^XyZ?D{>c`)2wLEPv8DCE7EfldA zzMLy3iN-^S-W=*k;=HN9c~5l zd7xC;>*3*xE+$)QV?+9_K5f43wU=VrV(5pIk9CIT(vS_tK@9n*JSbE4l0RDi4L%p^EP`{94U@29&TEZ#`zxlW}Flqj9 z+!1VE^*yy^owqO9?&4{FZ+y!-M^G5Kd*cj)IQYXamGXx*zp*OVrrok-o!#)nUD;n! z18>sYJAS3F;z}>Iu3g!4>=KStqcx7Mn6zik6TJ%mN(%e|2{qwqk!5Yf$8QzA|2z4L zRa@41w%7+P-@F8Xvfc@5jq#j>zv6cD-NjYwL_|EE%*ZxDqg4R3iou(Z}a-P zJF0xHhBIa*Q7pl><#%Yezj~~`S+8mDOdvd0}^CTrzb>)7a9L8;S~Om zvt}r7U$I}!Uv%SIkK|F%&Oh=@?4^}43jXjb!Q~cNJMGKXN_(-*uTHolp6zaOf;Gdl zb<#XraIA0y_p4==ELkh$PQf3LAZLn9%?L-)3;qvj&rV4E)7N11H1vYmik@3qXNB8s z7zy5TiDzm6)dG`YJ~~$>qsmwYgZnP^=vo+tgHGb%K)AV5B^VGpXS9Oajz;VKec%sB zfKMg@_l9-x^2N)RD8Id7!+K!=d_euz+Ip&rIGfMEPNqxph@e7Nn*|#xj?}IO ze>jT%s{do(R6H(~tW`hF&DX1LPy zgfvs6HtWI)LC_0kl4uX<??>BTvWXl?(a2{y$k+;1mQT;3^<>NnO;eq^2d5Do^3;Gbu^!2KFIHJ zo=?&I&vCJ(4SzZ7!TG{m_#D9>kf8jhw!C>~bdzLgt3WGQtOKs=8oLS@Jz7#r?FA1+ zTTk$*K_!pb0=vcEp(Xe79ryzhzPssT9<`u~Beg`}0Y!F_7MPy8%+T&I$YIEt%O|=v zPMQbC93?s2%}a&YZb!!GS&oFozXn}=z~6IpmqZ#GW5Go9Q?e>ceVO?7NpmWGY{@c- zZ+B%s3id8B@UCpbnD@dxgFhhQo4!r4+c*E9_n+&vg|_r}sTZZ|GNUiXy-PpH8tKX& zm@GFuktmf!13Zl-#AAa$AVJtH4Xd)Ajo8Ve`CV*UIjcBw?{FoR0^5vBBJqxy`nA5I z`K4T`hwLdMInZHn7blTG)=09t!=I=gT&icfoiLfDm{AMx?6_bYH^!m~qP=HVM$VA? z)u?+0gIDI2d&c>g}|MIl(Agd z3@udss3sAESoNNcHulBKf^Ill{VoZL{JVV zqf*^5NnC<0+s^*i6*~i?a%iz&@u1h)nw;R=;15VJ(181?ve-~=P_5YJpEUnCF?_hp znm=D)Y&=fi=SF<1e0V<>_Z{j}1G4t*#A_*;EJu-06K-n@!COhB3%meTmX@(0Pqw+y zwlo}du+tUcb(hz3=6_9=`&}!#I)WeC18=Uxm z3Db;xdt~CA`Qf5QofdGOIWtxb_sv+X2HN@@#P5JVAVC;?tF0@y|SSgtSaD8CRUafzBy^3j6^H7ul3Vmu?&BAfF-A~o!`=cv+j@AD<_H}Yq zUW}@SDV?@x10I}5@ZHQtmphAuV|};9%kbZ5>2OqKs_-s&qP}Ft+NYmGs-jK4#xmB} z*UWv1|rEw&;mW4A0?YM-2$8>v}Ubwg!m**w24xi9lu8+6~I z{n75OdArJ2WV*i773~IpK!VFK?(r}u{v9v7hZqg5*vXn7PrL)8O%SI3B&&WoV^qec ztp4(hrjW7CiosnRK!OuCB_|O>!gTjkvE1)m5%84-yE;6J)~vCI_xK>8i^@~pOm7M& z1MH_DU-8}|@hRXBNGNagbgu32EH>6Uv$Kg|ai!zEl3Sf$a`x;fIzR_{Tu6D=qRK4(pD59OF z4s1kE{zZKa`4!*~NPyXdSh78RpI8x5H{RxW^v3!!esfTlVHbRj;9&!{Of>8mfa!Qp zGRDgGD)ub=I|GWf`ekXuT-SgRMavkd7*tKlsmi?r^@CHt9fFa|GvI#M{)k#QH5J%% zsNM1EmA-50-KlqD=T0m|mShc7rA0GuE4+6?mKZhIQrKnGLfBJ-6tC(YxyC zmBy53(6!IA`_jy2JooN>XUzKiGGXfX2Yp9xnm!2rfP|1gvHj>R$~d&aHCVRqta)iZ z7q#*FVMbUe*#Cg@(HeJ6C7RuC`{2j@>3NVdnxnAln5hOx}4j5l*K z>Ks&ad5ZG9zU>^afAdo()F9X;t;y$d`Itp!&>qFdt!@MDPswG zNp{23%n*p^_OYK3+aS7uW^`>jLsky>0}@0}{AOP2skX!K3?D5mlxyWi>Q}3|5^>Rz zlK2WW07ED-6*j5t$djp!NUg&x5_T{%9Ty@iv@1(ji;Vs3!qo!0TBX5DBZ7B1iAM*h^X@`Tl#+VW#R-GWlv^W2lwgDbB|kRa{*O#ZE& zQB~#J^}tifNAVf&>RCXJl?U#dN86ppl;0OD|4sR*%4mL%l@leo8EW3O%&ZI&Dl^_l z7-S*bJ%mTvmO4vT<==MA?Vf{Atw<$<7G1TxiGv3?HId^~T`UGqB!$@!& zLB{+aHwXjZrrZ$K10^=DSwCYo<>Yn9cZPaabGu}m$XcBknSgx-+%_T=T~kPqmP_Rp z8&+#1cA9-XaacYlM$Qsd=Z?6;VwwBe6fJ{aF8lYaw6^TG_%FL&`725duO)7sY)`?R z_7G*Hh%vGof~)1tKY(#r^$kXdC5Ip9wE27FvmzwiR(rr7L<09$e!~==wlc~;LS3Ft zC!Dr^y((eTeY!hSorFdB)iQWT>ag49$4{I8Sk#Cy7`A5CJxCCnvTOyJ1<|t3vJ83n z8`mt_3j+4R>Pe35KY)2;S?`s4qg%5wmBo7l{(uCzKd=P7%5Y?VMGr|tzTILoRq#}O z&a&haBU7?J<<6z1_zWv2M%W;2Pl7)nA#Yaj6z8XHgUe(1#9sC`HD$;WD7HndZ*0G* zY-ZkGTh#Pm6y^!~2TvKJT1%HTfj|74jLFuRZEyim+j;ZfE&WPkHFKn3t%V6z9kVxS zgN}WksC(GZWo?RE-hHi!m;kWByOAIoqMbMs$3i%kj8Xf2?drH#m-75~5=%}Md9oD9 z<9VuReox}g;58sn?$tN=2yCqbJW{x35NU_>`kCz$=4#9Ab` zo4#{C>0*uf;-o|WC^cV}GdBbOj(sr@vAs~K<~Sa)@AZ5;Pt-B2c6j;o<}W9;ea_}u z+IIT|UgZkAtK6=>++OjjJM-oCDX)S*AVHfmI?FL2-#E!^vuA{1`HcDSgj8#?H%-sT zwN!J@Z$GrcwXZswH}_7ub?2acU*5crShXP}kn@W@gGZ8Hk|*@>jQjGx;<}~W1fuEb zlgrkGm80p#4ADXyqhRg!?2{N~@CPKQ^0VfGoST?M&!eZ2>*3k8`A(acTko#c$srnO zWyE`)JZ=6N4Fv|fCUyBj*6%ae-M&|qdbik|v9oJCQqI9p?8~-)Dr2>oC%Ky3pwy&Jn=ef;iu42Q{x>5*j$6(3VsST>*4#~wjHk(N^+i26lvr7%=kcu( zT?Y}`svcs;d03)&J>b;?Nca{m1C7@v*P*eaSj0BYL5Z*t3>& zl$C7>mf&uq{H2DBZh$`^p%xo7j}d{2rd=KaUSvH8$@2OR;DVJ680^ZtNP3 z4Oob<@X?KK5hTt*#ND+>@N620CSxgUofd3XepTchoGKR0KNOWj+OS^Nrlv&7JCm{Q zo)=1Y*bWMASHhm|D8xINtu}{k4)|KZ2C@Y z4^rNW?WqTUKtjkzv}SSu4(^hy{gcsX(fqq&lnMtIWnFCB&i5-JH|2I7u4HcJkTBYF zPb?Fgv+?^qXUsoLyvctTPw}muQ1HkDHGB5>j_jtUH?=1NJy+;bp)?a4r5eX2;~8ch z_``4Epg>RA`*8&peQ%FzqeQBMM$4X)K4bpXcv-~uh}1U?TJ=rmTJ=pk?vVP*^YscM z&EiN9iC0-{-^9+*CaGL1adkTiL)e(#ns^i6v)Fk*1Hl~PYCBomqe0sa;ve^dKOjMS zsDU-4t#v3CUNlwTK=k1Dg2%6TrpXC%@_U{U|5mCB9oyIFwC<-h_M*?zs4?!rACQnU zjftJ~dq3~9)V!IA)~@-3utkvpH?FK|p3@>_+d=1<{dy+Zy{gODbF?eEN1~gWUdKm; z-^_DQ_#Owjvz~j5`@{D{?@!+2L4P6&n(7E-idyONmvAC(RxY{(yuk z?#nb!vZGX|S7K{xGry~1CL(LZaxI#xw{+c?LOy>blv0SU6-gn|h? z&~wt|Ml<`kM8yv=mxsXHTn!cMmXF~(%3zt5_IWkuoeeGnPe}s&0SP5-;S3%on?H8l zgt@Jdv2cK%@ppJ_J1jfC#Ftm-(>ZG}QR|1{lYaigxNQLZ;SDSlDyFpR(b;phoHjR& zyBe0VzfK9BHt!nO4xj~%3;u>4*H|#uTmDbkaXd>ZS2fe);15V}5q*2wTr)nD9Nq;- zQkEJZ;H{ZtuuG7VmvZ})q2Tg_*foc!-QwVNXbhX#%9Q|rK!WIr1tNY#FAz<~5p-fV zE@Ef&@{~;TD)2l(`JEewZkC{E=(LT}H8u}#qp?kb6V;64ErUv1CL)N-+ zZ850y>l#c}*^$2)o~ffr2c;iENSOZQjDybXTkMIKrKVrV@Mt8%L+Vpp3VXXFJ23Wx z?bE_DzU2fR^J7_`Hjh}0#kK?B4@gkiy9;GTnN=b6n+ceK4@{Wf&N~NeJc&mNXH0WU z`KJ%svu_exD{EximYKsETxY__3;uuv@jDdEZmTCnr%HTbx?U!+=rgsTADp#7Pf{5k zUP)PRjE$!GxydO1cT5@^!5@$?X(s70sWMfo|DvzIFOf9O{dt4qg_lTc%$spbf6F2r zo6KJs*gITeJYNnD6Z}2vgKAn`HSkM|_uO{iw0V2Mzh^ks6YoU&FER(K>mja?jIZ`_7={fxP* zfOi3H$2O>;5e@e(MYl50f({^|nte@n(XPVSiG_^!bJ&?@%*}<`#3ftV%&W08`mRNO&6wDsTpmnbH8tS_nO6y?l&*#@1BxT z&6lT_HTWX!9XI=Cu5c_C=0uea$5l%s`-SlzN-fcYOHNuN4UYj@(#b7GL+fk<4g2@` z;RlBjC;NuB9OzSXhBjzMv|kXJ%dR}BRGlv<@lorM(8>t^bzWQISa|NZ#*B$En?-Mx zkvvMgiHu=)+L&$6h8Xv@)c)l!1%;G-93DUk;2T3 z)o>2@0}=+AanafKeW$5wrC@5Dx6QH7(BItJ$|^gRc{nd`dqmc|Y57vUKd}@msqG|d zCHMmp_T-)L5(Z|=YI)kM$$zF_vhI~-xlFbA+RvDu&ug&=XTe+m8q2@EH(Z+5PUN-Rtr$-Oa8oPt!^4C42*eZChksEJH%? zmRmD+5E1*=jUL;;xH*$KWE))MA2(}=syfyo>!af-Q|dXfiUk?*w!E6VECWv>9a`C z49SP<-9nsq!)ds=sn|e9HoKqyt&JYRW*H~;$86be7Kb(kx{S@St}g|(bfppNlFaBV z5~PP^1ebRFKaasiX>qJ+7myUOyU4?_G&RdE)irEMPe)>8A!~KZTY@f*TGl7)5vbm& zz?{?>I7Mvi)IS$1jkr{@SyHE)bLpgC&s2pqA{w0d0W}yWmZ=yLRCWduri5#QYR|ZN z8yc(DP>DABZO(UOKPJ-2Azy?QXoDg4jOk?Wld(%1d%+)&AXc-mdTSBlYG~`9v6yo_ z^J!$W*Xpr`02yoLjI1qV)KxW}1_jsr&Cxo4UCXCG3H~5$IPTY*`@NCcrO9nyyZb1u z^DxV#6_1bA8RO>k@dDXW8aOoLmn+HLN?g+Av<3X(4?GM1Y~!>!YOTl89?c-K-I*9k zf-NWfGmz9d=EyFdVE%V;N2n}r)dc6Ci%N#z4@gMEa^p@{y&v&9%IdTP`4=NzXNPr( zwGAvx=~f(KbEX=Rp#=}V1-`q zBrpaWHI9E~;%STLQM?bb4wdUkB2mtp*XOG;QFp~FGgp7t7`jQU`5%#Wz^=4FjOZ$6pV z3?mNy@D6uzLPLu_Z|=#TKJopE5`WfnAfCgp<%QZSxdXVMUw4wzd)oXqv%|h(6iy(` zpYUm{4|gL$`u6eLWTuF>ggBw7^q!}4&g_8hj}iIAZi0sGcZ5$9Ra^S5fDJgxao`U~ zXyLvk%C4Nu4Z$ZI*|UWJ+N>knMim1)J@nipvBw4ZRoF7#DKy8_tWdo~wt_z(VYw&d z6N^ebTyp)~$fc`P)9?jpsX{#J%y#7*1(yC7uL7IE!U5arq1G%bY?%z2%~ZU`LU zw&RNDd@1ELO)`9N?V-j1^k-e^<>ZCsP zggL@KGlQ&GXZGsc8~iTFUe~*fJjO<2I6ji-eSBC8T%9&Lz38+zb3|fU7oMbtCLKmK zdA~!SsXOQ!*eTZ1T+f!-yowL8>KirR7&p)716z&l)dOd+t~dHUH-(7N8bAU%`a#!$ z^L*>q#ZLHj!F8};9xZ76f4)#=r^5+SBlg!RbLXV1;TfNypF)BMrR?*QfwE?J z0+qw=kJwas5|kMfcTdFyexr(3P5fDN$z4Q;Jel`DAUn>RUl5)$@CPJFwxs7}&YAl` zRwNhJ=l|q#s%2f8a%sDI^tLC-GOCWaT5TEd2P6o4)H&Fr&>v!_%*B)1Wxr1MTUybZ zUoaks5To77pTe)9!8_&YSewYi>XIsUB(W|D{vZxBRr(QFLMV5H*r%+0z`ewNS0j&@$m(Tksw- zftu>QzOyIpX(zXRR+&S5S~Ym0PMhBXRa^Wgo+h5Wlk74JC*O+(_NZBb{&!*JdIN1G z4d?&8=vaxK%XC@6w{XjjMJg7 zXcl|I(7iTtgvQ7qn7?|ywPV>+E+YH$=FW*&OnhojBcUICU_tr_|AT4&SGA@7`wHgt z-2RQ8`l0SOdx&d$&EdB(w?8?4h$~!@s*f07jl{|uK2|@_4*q}y&+)p($Fv_cJfyAb z7}|JaeX_j*e?vKI)6?U4xuS0LS7&;(cc$pyU!|@0&7bXhF%#R+BO|KmKf#~Jsi>S< z7<=}_&{t$NafW}|qq5%`mo-A_0SSk;k5%_M)`dN8_sSP56C-syrJh572lxXL>h6X= z)IXhhTjBtgJq#Uz)txv1bOL#A`o#viTa?|RQC7Oa=(--{g@0BdHvx8_yZDb)~6>YzDJ%!ixFDC zhmrZYagp`*By7Rmq6yb-FRfX^n|n0&&_;aQDQ}O5wYv7dl%+?>5yKi>{16iPdWHoS!Bxg0SEa@3#4+ygGi`xJyc;}y~#>kbyx+)*}I$k3GUND zMkyEx?IQwBzts9JZ|&!~k=d)Tq3Fq@NSLi(kJsoFc1pqgvK475V}3r?RUi$2vvbbN zLHcphTxVrNO|ZY7GT$xmo%Jjnf4=xE?&Q0VM#+ZqDmQj|_Gqpv`B5L=b@h`))Zc9+ z6OJR5ws4NsFlS{oJj2z&ACNFiy>6#2eSdzU+mSY_W>-{0dCm7LI z1D3b|9*9%sFqtmk4@i*vl-^*_hdIva~;&Y6aJ{p zNN5PFdG7drwQ^qW|Bk!nmEU6ddw#dK zy*_69ZLJsl0SVvnxiYohnptp^ci7VPG446~_Z!MGKi;G*`tb(a{Q8*oyN5mS{%}lv z^tEVk!?|u>%o9lxQv&{ggu19bb0>8L?lgSSbLO}e6C=B=Xkx~Gsn$WOjWstYf2_;s zDVRSQck5Css6f>4GG+XwG@=r{&ArL?4e9G|5WnD3yg&1MZQ0uxq3ht@bH_R8NX1IEq9OA@s9m=CLgC{|Ju3A31Oa4$BD#_&y|wN@GUQaBJ+X%eA@i} zSOJaYFy|yj(y=x8A;2H_bR?RN9gS8K-TvzbAkFa|-CZU6EHR8fXMMMmDfv=P5qo$J zJy1}0u^h^pf^N+_~_n?0yb6V zf%mr6>FJ;fv~nx0;TZO$!tP#%1Uxj^-;GN&*1r`i{a%MBL?SwC138RgDq4;?_`f43 z|2JD$@t(z+dbbHQPM0;R7YV|{bjF--FzNmO2mIlb zp!n21oRc&E9|j(lfWT*@1d-rBC0ZHw$kwqN(#MOcst_tme^BLiZo38MV8-@8`k%-ccm z2PCM>OF@?|E8m=yZJ%d{uyja_Vsr0#^W8D>IWt>*HQRTg%M@Fsg0-1G80Rhq8uhEM z0DnM2{p_Hw{zluEGuLv3>ePYWL>+mG8D+%cF=FcrW@aK9ZPT@EEqQ!e_IriN!*Zo! zFuV=?;WYh#gk4H1EmxoO#d^D9tR|DKKI1DN)}1Tt*_z3B=mUvql-!uv zJeOBi$#__c1iLQ&cUzwkv`3^SvWzCFgeJ4C^xH3b+pOOj-v90Bh2Ov*kdPSJ)wjkv zqW1kGWS*AJZtsg(zq#K3EyZud3N+o5m=XnlKti2#7t!4T1XW^Vb#F?tm9(Amg2#GprO1E#Djj@riO&)rF%DqEC(@L5{6oIXv)@1>n(u!7P*c-dZP^p` zs&1Hl-Il2U`<-gsv9YF8m@EuXV`F`>>A>RWLf{WbcszQp>ABG3T@(C&qpR4|%rEPC zy@^-iIL>QJO4NzGYijsx zYbAYsV@^ITYuML1l~3Q#jg!4B-&8fc((2_K@CPI;w~h)lywmFDyKm$~cL}i$D8`grQuyF$GQjYA(u^elMz4(}YBA88IpHfvGkZw|lEu{=7rvvzUU z=KkpZ%}1ijm~(?|uBLr@O@7EM@@w0SOhqI{SJp9-fz4FQE;$O>y#4@g*FugtZrRI^bIfoY`~eB}Fg5ymei7^GxY2h6`&edxh*p-DNL z$(j2=REbpU27f?;T@}rLWyjJQ9;L- z_Nh#lFHojES`vl2*5hStWe5gakiX34*r0IN_weGWRG=OXT3+& zFb%1W3sQeGQ8X3?hYueho=l{R4pS5UCHt1}%jJ+TL5BK2*&O;Id>tB+(gmqQbs8K` zzOnPo(E_^~IKImM74u1s`6rkpVpPm7U|tGaCQB{Es+XnKLoR0_STs>s5PI z>(DY)v`ueToehy24>IRCKfHa)g#QiK}$FMNI^MHz4B#R@nhmg4{Z@&tYFznWAz!C+1Z6o z2mXKr2le`izs=C=sJDJO}4xci&z`WunM%(5u%Q*4&pk1fj;FjPI z(uTm>XmCz?UXJ}Z8L%4q<7UfZ-PxmUVIs60RsZBTi}@uOaS!fK^70 zvgQV(Sn2|O@Qm3Pjve6GH5?26fQ0{jM)e4FGJ9*ObUJ#gYVi7|xMt0m=AX6zo}H)G z#oZY)`F^XOx-D+Y=-63Dk)WPhPi3Q7y*{6EsTtD(a%5fHl|c{SNHYF1;Lve3=)2Ii zHhhj$-F+$&n>L5|hXNAzuIu&s*2U|3Jw9K&E?E_}wH!%cqqR_%n_61asJ}IvYe)^P zqWPBzaKDt+LeD+57LQm6339|89I>uf=4)o6?ZUN&=m+rxh~-`pn0A9BRTCLP?Yd#< zM}0EZK9a9wh1rROOoO+sYUv9*209{Ib*MDvrskVX{XFSDuYSeq>bPY zNN~{Wj>zb(FWefk7)&qz`W=qAcywuPlBgP$y@jkhm0im$XkknS$6}SfjrtNb%n8Ghk@f4Efco7vMlgDS)Pwswsyfb{cnPoA z8`fPMK!V)cPQG!uNFY!)c4E)SXp-lcP=g+xi`*|&c5d)?R#175`hL`WwdqHr8kPe1 z0}`fvNHU{mwmAaoRqSJ3>hn2#HYHY}+<#ekaKzR-&0jlT9oORRz4E#|4u=?w6W|XM z*sznVQFuQx36=e9aq#dHTvM)VX9g{|#>gKnJMjA#zQaq)Xn4c=4*UTL@{9P$6nk0G zympK#P%YZ?x#OY@yi62_@VY1C{HLy&?8=qwVA8e}=Yc;UVR+=4CL5Up?3TuqMu`UV z8lJ{E`Zq(OfouM2n$>H5eP5`InAoDZlZZkl!blA>qn=UyG7>z!)tw2MRqzHxdT;C9 z;}dIYTEnzJS6sc;5TAyG?zku73A>iQknB(Rt-IJY-o+h)KTNXonqM3rM6TSw+>x{} zJ~CVQX{a?sWewK0YF4i$APFkF3axw&vCkSPg5>LUB0*LsBAXfSe<^5ir)15;`OWc9 zN2OPejLZ0YdD7zDLoc(X&zrB2JE-B|*U&-1ACMsDej606bR}0_^ohr5hxnA8#A3ir z! z1vZ9giPG+6bOI}Fc97P0(fUv3m4W`os$_?^P%6dSv-cN@X4804;({Wc9g7F0n+o%U+`&E&RPCkFzHzqa@b!Hp4FeD4Ynv+cNm6;80-m(#U}5t*n$<2tT~erT?}He1xt8H6; zryic8FIz(X(({I%Xy^>qA^VDaEm<%x1!wYpVZIGLYAq5BJrkVHH}kA^V08tj@yW=S ztS-Y>#izP_$?7tEa!)mIX?(SqGap8mdl(6@6Pr@sLHxO5XNm>(|7UlVvu0^TjFg3I z+rS@?U_}e0JmH7iLZ1;`N*OA9Df7_7{3)dD;nU`JbdgdFNQqfQ5Ot|sEEzrJHcd^- ztAyXNuJW(rzJ*-Jg#vvx+?u=IPXua$kOA9 zdoHn_HuwV)N@K$q)2No>2}92otEESrsiVEZw_<`QGS7@~+(`@W;`vHcL2e|lD(GLr zvj{je6x2HS3FLvi?M{Ki-C);+DLzt#r?@%i?9MNLMflRn6CqYjap~<^)&0*q69cYpEfF*w%7c%F(hcy&k@orRm2%qh`(T9BN>XD@r|~Ip>}_IEz#kZkm0PS!`tfuMrv_v@H2M;?%y3# zb0bmIWEzi!y78k`xqW)0U= z$BhPR9B;3iuN~7Ct=MWb3{!LWvCj;)gFhgFQ7Vz8eJi%OGF9^($K%l}qT#;emh&fG z+!AM&OJ%n2I+WUCBj&W6=s5JN{v8(5#@_uB68g8cs5wDjm`xcgS z+bTo9DzaD~T3pp|?NSXr)&bY#Rr=jmdjDlEJ?U|2YP8v;AvzWSz>;15U`Y}byx6+ich zaE~i+`7tfn0u!-;M(%1{*=1{N-0~CZ*w>{ZJ;Z{(wq?_{Ppu2pq~7eUYOXp?2A4`8 z;R?N~x%~KRpXsTeb^{pZv9)Bw+fsx4SLp_rF>Ls48{+vBVX@9q)Sl@oi)23?^4YS( z%3D4F$lD4GoC--nTYkst7A8^EqexxKk2J8#OxH^pJmQhVDR7AyP60q}|8>4961y&M-prRxB;4#Fsa3%vVwSSYqRi-LEF2yM22y{cEY#7rSnZ z*?kfTGmEuWL`^L#ndBIVZRcaxRlU(A2{&uPZ%_8gigT7|aba2kpBigUUPipnX(Tjx zH1+Mg95Dr-MJT8}(9lzzSkC_&6A6nS!<`Yml(oJ=gNFlOeq!Txs(O(RaT9z5;15U; zPeOXNQUhGOtr2dCjt<|w!(;&xz2qaF)4tamaXb_Zw)c81b_uQbwoT<%2>Z*<9QXqg zoWlba$HYZ`i2?X8>|lYmfwBmC8C(s~pndNz`bz8+w{3hQW?ZpvM+km=@sPfXggbH~ z1D1N);TCHI?A(Kumh8@&KO)W%UlmcZhpgRL;xm@Nt;kn-Y*?{+fIoQIH+9c}ar4I$ zno&JqH>!RR*y=E1Tb&0K(M)8d78yfxod+d4dOY7l|BvOT49FQjn-C7GHArA3+nRlS z7W+!6FFOBMU&wtdgMZ=|>pkJ+^u%&Q?LD&owwQ;$0DnM2!L(WT@j>1RiDhl*Y$Jl% z$@6>9{Om-dKIaO*-qc!UY@{8trNVa7%?fiA3H2*%ZIZD?oLv0*c(v}@cKx=+t^N(c zMco^;zBzi;5`VuDeFr9kP`v@GN+4)-Nt{k~ZfY3(p^Ul79ss(7-z;ZdKT$;#an9_R z@Pye3yRYrm`0rw$c+Y%=2$=`J%BnwEijfg~8~gzYQf)rV+z4IS`hY{9qkCXyi7wFs z_YQwJWsOD|Pl@6Gb9{k6AVEtQmgjBmD{_2eYKZk-XAED?{Pm^|SsplNN~(oC8}#_x z;wzh{`P-OH_o0~|LV{yJcwm-F?(~F%T*BjM{i2zV72><&Tv;`Q6W$11tPk1u+6Ml! zuh|-z-5dW9GkBV3k+6S93?Bc^qA(_19O1vayu`CMSJw>VO87hnE=#R7)a}aRpV87U zwW`dstzmSz;1n<~T?LxZ-J(H8u3sZ-Uis(g-Jc3xrRFiyyDA6=>fyN7Gi!v1ss3BLl-=V=Z);XH8+Y6IWz`efHsvLuBA#mVPSbU8B)@;Pk- zEw8_UhBijo1LH0<^S6-@&~5wPGw8f5Qr8tkgg9!}WvfgQ0)(X^rP^{aD?x zTffn+{cgIhGD~#d%K0B&ck7Kl@CPJ3)2?1`6_h717w)xxELwO*FX%wy3%9DLU{S2U zy;sc&`Ht1s%(~I18t!ek!KzgcE*F{w{(uDLNc^kTw}RFsXMvW1!hyHsv}`e#JN(C9 zP2Gi68z1qk5|5(`&talYvYXzcCtpTFH91Gl7Wj?m^HtYtCC)N-cr9iRPnzvkEb{?k zi=T^@kd@N+E3EIqAEs*R;;-ySV5hFm{p@Mrp9X9QF)9xihTun4SlLop^vuXr;oZYF zc)GdkdD;N@0}>X8m#ok>+8?*;vwHRuwf6NcmAR>_HFAIK8|~Mm7KXoy9j2OC{hJqt z$=ISQV<4}fm~gtrHHsa0b+5vD^)NrDO?)XVh!9!fn6xjQIRU; z7TdD^NqHv`{W@`j&mloROKiYQvRqy1X`DBM^Zq3-JP7v3C5M?R21U(c0@t!{6v+Z# zdF`_OJqOdw4GT zNN1ymodx^>3F56H!=|@8ruJ$NUE`l}N7vU>Z};XrHG_uk)ep=1IXp7shJ*C*oK%Y* zTx@KYm0mUWGpc)$;NuSVj2qjF7VD(3RVw)f{4H(X_5Q8RaJuqbHmXc$*mT`2pKX8&alVb$*$$4I_cQlgg4vSW z1cPRuoqbq7Rk2oQk>KfYuy@-JN*#^kMCVYwbI>3HMlh~ZC+zGs=c&dekqtKEPbW^s z)Kf-O4Z```H}pC1he}4&gVE2O>;cMoaA;THLF02hJ>GDCyL!!|4@C{M%Ka1j$?$cg z?2qnW))pBJF>0hw{nMV`$Fsc{y);*1-^+Y{o_89q)FPQZ3+d_5^&NMNTFiNMGIC<8?0$5 zH$}G~tP?Kol#7OongVKype>>n#I+#17DX+HZguG{UaEB$cZ;H?2)kT&BcN25OGRMP zYu?{8NfrI?`+wih{{&9YT+V#w%rj@soO#Z3p5t>`Y71Hq3u9T$+JY~S^)$BPdjt9h zGoD2}z5l_QASY!BCz5P}B;dM*qxjZEUw*{0Y_L0hP>jqr_QxEAN!IK}qQRYITfT$h}n( z+V1Sp(0qz$c~Wg}N)}jAcYWin;9mkC{)w$Kt1yPMW}{&vM)0$&mzH3jDU7GgM7b0K zO|Tje#NZMZ{CdgP(yJ2m4npr0lfKkJVLn!|#lx}g1-(L%iiS*g`IM%>lJ z?0r*N5c&j^(pWbkMUome*huX8vpya7cVH!x6>%tTFV7xWBWH!wqzFV75BlT z4LrxFZ7llMWTNQ78+bOx)vBW_p??5Da0ERz*a=?WG8k6rS*}rmZF1E*mNha!y-(yz zjVutNab89;-n_YeVBzRq zBED)80u_~1M+g{s=f`-Ln3i-a`R52J6T_rkTn+*~2beDmDe$@D5!4ZX+m7PdTY&qI zzFlfbj_cWrF?G{>GA-@OZ9T>!(Sn(POK9{&JqY@uSj;0RdD@l2o)~r6$><%S0ZoTM zV}ocOH(1PD&F~tKYBlCqB-kThG&}SUAmDw1cQO2kyOXT>GG@6(3#3B&NGg!_%Kd_N zaggc{AO^C}L2l8f3e7>?pmDgj=5FX8`r^5uFF5pb;7K%OCiTHsk~IZix0p-p8MSiK zq*9j???^iK%MfNofmbN3JJNC2E-0Ubpnm`X)?E%%=1H~ESMZzxjZuyfYe9*L|2RYT ze6^P%@*w@#*Ws9wTGBz_9b)MApdD2Uf-_B$=t^j0hDMH)=$RI*)J}!RSFF<$-h)xH zgYcz*v3IXyL~0n`I)>Vv^xiy9S1|-u^3q`RPQHU42947KovKhh4*dt-RE9cAc*uxr z{#zI6tI=znDqOGG>~IKPU6AZ2Eh#8bV>O$xeW`E*`2ji6;!Umf%$L3)Z@GBWq^Lgb zX;c`^0{2EcJab~kVjFlg#uxer5UwcO@wU*QH^9CgU&;ZgLRRD2iaIq8RruagI;;+4OFHjIm_ykU;#ImM*M$= zCmh-e>R-?3oP#;NGN69|A>*MC*;b<5hUVl#=VJ(j%JfBaPMU}Ln;s$9Ip>caK_ojd zYK5H8P(4C6OZ_1SV?UI;?12Z&?#Jk>A3jenD4ij^LE~WakJjlmW53gT46%s^5|dp^ z4YwyG)0-^Lh&cwgv8hwN_*$F*f?#_JZ<$>^^jtW%GH97|g;w0z*kV6C&^lwCf+1bw zGPt#v$+hcPffTEc)aG5sjF6-s1iIgJghQn9N#u{mpte3q+8UMa$57aiAf!eA+rCy|_CR^v;)a1>yKfV?QpidE2%~NQc!j0-Ug;H3Ogg^)>q4xBrJx{MI z&;_4)ZqX>K8{UcCb4BJU!`F4fNZZ zwt0BETS3@{l0u^-Xgpx=C<(IA*Vx*SYPxDYp-S4F@7rhSIz;zQhw1x$AtDbz8BbbhkAhyDQsI=>k`a2UgmH<}jp$_3@M z?kmc-us{^rLYP;sLz&&3nbx7)+zl-*o;Nq?7Xo_sngZw_K!`aY3>4B0(Cu9!D@)Ps zIeCV1PC2C+ut*nX3K$oBQsz%XEqj7e2(Vxh+RPZ|o?@Z;Vb9gMYdeE42jsHtmM-$V za8T`yrS%)Sx|RF8E-TBr9c{NEO~h}~R1iK|z!s8MCjsfJAVIYq-SC5wA3}SAS`cDz zo}#=>wi!0EZ~8XWtxW17&!<}GK-PnRniKB;0si@ly9HPxe}uF|p>ss&Z>#j#Q99-4 za_41bbT{=zHG`1T-L8C!8J1u_t>&2em?KBls8$<9qoYos=O1$mg&b|?anDf+;Ef3V zLn`hj^xUcFo45$yz|lQz`#QT6LpS9bGp%+IeMRp+)!vJt*OJmg{{RA=bM*p@Y(#0P z!1l=OE(|H@9ph6|UY+LttI|OK074|?y=qFbey)%U%2?Sn3*KKxC>O9ZQ1=m;_OGt2 zkbCz-|3FuPXNtACe@sQQZ;2~y3)(SD+P1O+ORa1x^IK?yQzYf+PVq+j zM823u4J}}NhX(0Bl4N#7Q(^YusAPNENwN`nZlRtP5X6Czb`qo$J+4|kUv5K(lHbG7 zD}qtVu#T`+&aMn8dF|AD->v+Zzb$%I^u(>Mr0-+_&&5Fy z=&sxt-TTuuS6_9_@V1KcN2J}QJc}{9^t?PDq85nRiry$iua+i%!*y*7(L#trjc^g# z%npnLfCgV}yU>%Z#Te8Jm^p)wg3#90jnU`$a!7=Cn2X9^J6@3l^dZf2Nbvo&F8YiY zhVXTby}LV@SSwMFC3>^)#@VZ0#l1NC`#^{CAij1Yy)MWja{P~ItuJ6Xpf1B!f0m{= zR#RnZ%Bes*5&DNgXg@qabrAJBYWKzB+UDV^1X~J@+N<6Vl7&XKM~c`al_EX$A%qlb zC-e^>P;Kgjzn~bj#00fxfb5l+%_$2(VXhPJ^v)J~)6tQUmWQIe5^|3DdMWA5eIU@B z&>^J*Zx(nIQ_sD=!;YS@lp?#P(BiO8fbYOQMdvXWE#+pHxc1I5R$;96+Vfx1clT}( zQZVj^bhINvv3OI8l4YD5?`>*X>ZB6s6O4tTvLmA1(F2`MsFAL^w2-bG(qN}tJGk`2g#Qv1 zj;=KxJ;z4)H0T50TKWS==wg z;(G@3Fn25G;K>g92N1fI)e#G+@>HKQ&9bDldXcFFpFp3Q^%^{zMX;4_H#TM?cW>3v7Xf`q2nZT{QK6@4h#?qXq6@~A49^pS z#*#mc!52wecGyrHVZgUccAYB*G=DZ} zvPW*0SIM`gjkM~5wXz4bWo&z!ohJjG@VYS7%oxGS#Hp}l5Mj0Qb+@CeT`^)t zGb#`BK%hA_A4I*^YsExXO<{;<)~{fnh-Gs_zmk+4VjB@+e9~OPK-bTk*a6%^Bz) zK%f#r{Urjvq$lK%Uf0>-7{jhL1QMGQ_ZpkcxyHShP@3u+2k#%;gcer=+2CBl2xemm z^bZ-x?huSJn4%9l&=aN&jGZguPTU#FMQOMkplhW*H|mL7gZc?28|@L+W>8y&s9-#|F1pYLYf}vA3!i;-mDpNep*si!tq3C zoHi819!s-sB#rY4ymgPlQsF3OIXbQzt^I2^G-*1N%f6^<$&L&92N1&W!$HqJ&7Bo$ zm{(%3O1^CvADjdWfo|pVP*8%+fVa0yK`*D4vds2SqYnKzArS6sDV^M{ypOi)5+7+n zW3p@qgs3Oh_@tCH4V&hk2JK$HVBCuP-!rq=8WD5J(v$N7kL}m$u<|@jpGG@JgK`~<1nie zW{*+dtAks{;_F!3GTt5I(}|j3uKQM>NpuwLlZytz8>`B>xtrCDMm@O;1Si96cr%9= zO>i~Kb>zigwGJBTwppCW^GhLI89aw~qm`%$-W2Rse&}G=Xx)URFB7{_Z7E6yO=o?WwPx+ zSdv+rf_4OJx#tXnZ{lS1EIMIjC`p6IHQ!ZV@IxTcn*%9_l{Gz+&xDnJJrmE+GY$O% z2+}{pVd)uxO^;`6A1vUX?g@vfozMq?Mu?M77Dt0=Vo&D4N}aRGFx#*=>6o!8X{+iZ zcPj`lS#;x}`}s0$VAU)keWw#P_pm%Ox*RAY9g_M)Q*CEW!CND&KEvek(%9V>WACAV z0AWx|t)c%Rjkv~@>=x38&!IMG-@rv>8hTulFe3jnTB`zi1xru1Qp@_4cDxhXCU>@a z$POfBn7|gc?^r-HREpMf$}IQ+`f-fAyB^=ayr6sz zA2UUFL;nCmWkGzP6=^=DH1N=rB;vk=4LGvCv0E9BTt$4xz-MYbEGqpLljKjZPV&sn=I7 zalSgUDs|iKG4|uf#HuEXfbqOe5R4F}$sPi8^1v@16RYa;*&Sf& z|F9BAhK`x5*z4nq{HdjD2IJM);DqhqN9D`z_O@UyoEgu7=Ru;^c(dAr{JuVbE-;!5^9 z$zjHNw=>_^q;)$}pLAL*kA1bW79MwKt#|tjY=`~_$m@qm{2 zKanpSbHv%bUY#?MdM#z|n_iC(V^MJ?=pVA^UeNiPVpw9Um##*?^NyLtse+^L68-Bl zX2!-%TcWrBa4h2a`0S5zDui!7$pQTX2)N7DP@l?}Bcu$j6yU4I>k+DS<1og{gh8BT zu+y^WZ08kQPn*YECfeXbr$(3VTSlM7Uig1zplkzW^xFqA5MdSv0BpDIi7M6CCO>oRvxQ!TE2p&)n#GN z*7|HHX~=^v(_}{e`iAR0_OkI-^gg~I)Wwa;W8!eC?VEe-Wf|BCFX=mJ2J-7=Hgao= zwn*n*fS&)kosqKAy^yKBLqe{h$jM@7QJWX~2M}~c)^WyJY8@-$yOM(1=Se+v_zJ1+ z>xMU3*<^j(NArBx)h{B|Is|?ipnm{CMDMX>i6oaUsg-M%XvJJV`E3<;q9Z!Qu04x> z>C|$YG^5-jZ7$y?nQY_yC(n>~@K8fPyt591P%v1?y^Y;sxyF67g>oijYSHs!M{S|& z9u>qmb=cU&1hOz{Nytsa2qc!tvWL>><(A?2Ixvqweds=?yx3*6B_n>JE6J^eb%g`R zpXoBWm-w1yzYQ%rMj>EcKOx;^F;3D4^U;HB9=C4UpMB6jfFL-&SoT=KmBT%XgjPzZ zk@|c;K|M_41>qMDqqJPsQ7v^VLW-#!!)@%A5@VpX>?`yH#zPL3Aly4wuzfZ6)w%j$ zow{8UxEE{R%-yz7$k{e`wN^NkSZsEkTnJ0gfU{uELbFAhYsArz{R!wFC=a4GhnPUifiMz$iEL<>6?cy8(Y`6Ipr- zzNHgZor7h0QQ7a%?qG+|=Lz2;m;-&3aX9KM+^Yyd27!3+if4~MV4S2AvSyIA1Zyh} zG0{Gayce;cR+T^%dXngD+9D=EN2<;y4E+NL`OCbw(VkvEd&H($bYds5^Z;9vDz0im zUZk?HG89*$3Dn7>9FixJ7w8{ApwdG}QC>8~O=JOqeh+NJI!3@T%rCUcn4z(5amD?( z9d=6g0S6M%jP4vckutzCP#5SIdQA7FVt- zWh{Gru=jNNEU$jz3$k|f{xo(d)tV)ly>w@xe*i&SBIX6x;JY9y3(Ajrhw*%bm0yPo zEM~+Tq5VU7fXu4WoN1e(L&w-&5&DPgAjxRm7-~qumlm~F&MOzt8yo3U$XC7G!LnzF zE~vr27_>HpAwhgeWp%!~5c&rY*hq7LY@)6cHM7M9`3tFjo6u1UjfW68uM~EP3(hO9 zF4C$wyJ+4O((X0kn=CdU;+uC35uU`C8CqT10DOp}#dxaS2%kSY7KfF0RT~%d#yMIg z`vM`?KBr6ZLDLzTH->b&&_96i71F+jw7NjBOvnv-x)eENj;1oHHl_HQZkQmGZBL}V z_CtFRc`&MZ=!)hc6?ve&?XVrBqp8*jHKZ3|e}H zMb=~JQ_FQg|KN<1%FEWv>m{3^Dk(N#!?=og+wV~q*xOmqH_wEYW*_%WvVQg=IeUyA zx&a37Z{K3}*>h-5E(hW5cH!nL2Wn+MTA~R7XBFw2eT&G#z*pv%{qU+~Qh8c@)zCA% zf3d)JPk<&2y=BlpfM9&&FZu(Cf>`aujGq$hk;_&#|A`iC5}qXe1{=|*Ro>&a)r!*0fQorZs8W6FzSHeK++a( z)xwV?%y16-EGj9i=3^;t3iJ;kG?r88F`?!Cl4rRrm0iFbG{FU)GABG^dCCOQC^h~# zn`95JBFQRj!gav@n|wdkf{-0FAVXO7y_xvQXPEDMC{3oyPfSJg0W3Ehr2dA|-i~KOW>Z z-XwdpH46$`C0z~l4Sn>r-YEhN^K+PA3#`8m{c@KJg58)W8)IsMFv4if8<8%0hEzvoi1t4Bee9q^EN48 z`sPf|Xn`HUF&l98Cr}cgf52Kd!V>JE5>p^&kD4mG-D-ZPM17Ge#>QZ%|P0^0;R>gaGH8Qr>XZ7^(x*e zF4<_EF=xvhHY6^1YsFr9I3ziN&W+jewmd?m$~>w-B3;YH7E4*al&T)9fo=6UGxf6Gl6V#w=FUUsO(nEb6Gm z3(EUlKaE<{_@RFQ;jPL(lk@%dO5^oTcuj~oT2`suLiW`{Hw!{`{t$csL`E<=DtkvT zI{fg+n@+moF=Nnw;kbag4XA!v4x9J3#`+bcMNP!G<&g4RJDyqeu=i~VDIa!G&1Qqw z9pjv9Y%KjTd=o88{+j0AkX%O)FP8%5sfdKv~!PJ%U1inSikwxWy(*ZapT z8#@QSlXhx$D9Vs9c_ZHif(75imKIBSJhY<@_+Czeg{jlxm(MDdVU&N^YQ|xYqKxY{ zU|cd?U;pl0OTC}cLjM4QPCdejBbJ6+&qQ?5n+i$W7gp}*(qVi;SBGg*mK<9aJJ6Iy zUK&~3lcAJs{Rs`e^)kl_%x0x+Q$vDS-w|7j}p0hs|#J2oZ zeiC`oV%|j|a0hwp%DheT%g{eu5B-DuSi$)gb&! z5{KE4`%hvSi)2I4275O6R>JI$G%w6l5MZ|n&Ew^k0YR4CFTh45w49O?+zTc29*oey zCuK{gJ{VWL8J1I5I)z|RJ}lYgAnXd!-bI;Q4?UI zA>$c9FT~eq_cuX0-?za3LG(<}Kiq&C21ga(EBAzPO|V+N^{FacEnnl*Uck1;0~$rSmuExXHQSwnr2E!sh*Pq!2#2VC+Nxj;%R9#AISFu=2W3HmGW z_B<>}h0s5MV3AUn+vQTchjuT~+gQ+`=CGvu3ZAmwy!A?&EbtcL-V1>>kg*AO6LYXL zx}qD;mS80;_now`%;FTtry%M;=pT@}F5~Xm z7FYv2M_ZOnlSH52=tuQPn#4XBXTP*#p2L2xkX!44CJj0i(sQBRUu{s|P|!bsK$h@i zHIs{;H+tKy!#5MnDsI4>;$_eoYf(q`?Sea5wIv;ypOm2l(#)rMOdLmdF5arQ>IOYJ zIwde#o^2T`WmH~c(PxD3`p>}8ShiRymY^qBorzKOS7Rd};UwDeygpZ^rml__|xZZj}q$)*;qn+q&f%AFWSZg>Td4#jBcptD%Rf0ihUQ zE~-tx>d#F?|HL^(32kF#m;;{Xa=CmgGIAu|Z7O;=qX5<@Y*5sYxwq-F(%+)Jf{QbogJ}P?1UfddY2s@e@N?Y9*;LK zMrG5x8FR-KV`e*epGj)Ls4w>cc(w~GKJw+kyXezfbynHZ zWo%5vyiJ`b<>m%0bOgo{X8QzRU>l(W*$cuJ-0^03ZE?!5<06lO{q! zL<~IjQ;mgjrm!Z~bqkqxv{T^23YNssKY+l7V5ST(XM>5>t}P}=-p7_>Ed_mY4%7*L zj3S_Rzj2B%ge-(}t!I_LU|!;c-h8YA)kg260-pi3L=)y~fo+A& zX!YJk9@5yb{*&QfO>G@Q{{X`G(B?Bc=2gx7UU{!eAN*d?U@vBF!20HH0XEGJob%}} zVHmqE0pDVFm)jAxKSm`(X z2H!eOhIxmyJ9Rs#^)Rs$ZHiUY!nLf*!;pVi4%kauEGwOuLsnR##UKc}U~fvJL|)%qYKu#-_ks07 zDUDx2j;FWuAGAf(~=)KwbHKa;vrm(@3ry3&+o4y40+ zpJn0OX=L30I64bQ4-44S$3YI8K(JdY9cSV9nK(3JL0FQyGJnY;=|0cEAW1MKknCQw z2$LG%ON@<#{m%9E5&NBVwh{UV5JD^7U6EDxSHrO+ea%^XZ&5qi(2bES*2suAnpsx% z;7kbQ@f234sK>q0R*>mtdM^x`B%p8cC6wcr(GMor`XPm}3$;2*#Q?V^NWF1x7t6qS zTB}{6y{};}dROq?bc3MD>cGq*!_od1A?v`Ptp_5YT==%$f@-=z^96unlz2{ULY@6AJ~Lt!U}Ub z#`7*^85&TuMPWtmg8l&ns`Ho@Ho7k!!ZoU2&DMUlmqhwn?q_=$dA?V*6M{`tTWToI zO*AcN&$@(6*gt@f;nFUpGi-2)>N)5P8l2&7vUvEBtWl-2wo|7PgcZr@8;~F9A8z?6 z4^-#iyZ3sUEjB%9v@u+Fekb&2KlTE^8b$2|IH!#5M8|L0l9kXufWYJ`;UiVwuT4Lz zyxS4c>612p$ehZP65Ip@F}m{1GDnd$sSlVm#gTM2L;m#KL|Zv$jZK%xFb& zA+JkDmcmd2vsNwY=&P2kS1m*T0751-S)-yUoqE(bST-O`_S|>>QqR1y`>}lc{6+IU z%jS#M-*dw~Ib+3w2g(-B6Gx4Q&t!~WV57$6ig(QSijFbjD2HR5m~+GUoYCV)IYhhr zS2v9rKRUZ$x@*dwQ92#M zs($@YqH2FZh{qo9fWbc_ny}5D(f?=L`e0jVcsvNle?jPvJ;9NEewNyTZBq*qf3__X z+uH6lf?&zVI}2;{qc|I(Y4*=kJFu|?~a>@jxhak{!S zY%^jLdz_6^*DG1_zlb1#U}o#sSfn$z(D{{$VWz|Cxgc0tuPD0S#V11kr)M9t6EXgSt2JgZ=>o z6y_fTZTIifuuZpUS@6l3EN1*#)_hUVLM3-G@wJ=SpNp9qq5$N9ycG&Kmqr6;vpStF z21WSVRkT0Mx}PI?gxR_0BXao+>n6x$(r+nVtEPkg0R&3jdsJ_HlbWiE9Z`>7$2LT1 zz59D(=pR66S5rOpKPdaK-2o{k<7f+{*bh`ACVQKK^*r`0%fdSJ4-T#{U@74QX^}gzT#k(ET1mk(xhwv4`*IQ8wMdK>Ohpy<9ve<79%``@D2hKQ0!y$dSk2+ z&awCUKk?Hq;D`PJgnt}4{_m4m|GJg7{^$Jnmz0if)PnG3$#g6RwLP_nVp$xEM`=q$ zNlRvZS$~w%fyjgC7T91kxQDV4D8bib%LG=!?qv6{h4>73oITHWun*8hdx3=?HG!o; zc6!2H;m&XeoTP>D&YA^+6220?9KIC(A$&3XeYh=rA$&f3E_^oppYV6#Z^NzOGvRN- zUx!bJPlZp0zX}J#{|^5vd?I`t|40rsAoTv;T9wa|XF5;5jW`DJ9}u_CaGtD3d=7Eu zZ_qc+*r{33IL<>g?LiR0I7PmHC>|BvyC53JN4Ft$aqp<}?WBW<_1A_4I4(Ca-L8o;w8qDOvR)sJz0q{gKY-8*IiQ9+1y8Lhle(R!vS$b>;}AEMM(%%a9(v<> z%ktSxBPX1MFV__4A3*rsbrVjJ4Kc3&Wcf(7<$0_YM} z=_vFMAUuby$nmk9>vXCVKL&-QDK8R)eutbVn{YJcu^I6g#9N^Sr1knzK@0uEMEDOo z=sfv8&PCV#yO-(fgdOpgN7jAOc-73v`fMwne(cYT$^-fb5GZEz0#}4y-LHq zsz!ReTI05tR0>%i^e0^Kqwk;7(ncAqXwm6HXZ;d5oj)E>ITOu}-C`GMZQDA3$Ia z2)gJ%jY)Qt$Mv8<{{RBzY}~avRUVt7?B47DWo&lh zjBrj}7db8t`UlEG^w*4Kti{nb%4zTRGbaUhAQkPcjc(l@jq9TEu4r5z zjdw@mJ<%BY2N2$mt~EvDz0sJ?or^mxBMqLDxWkAcpN>AB3Lyt&R*xD0`iIEYlfSH! zjo6FSC#SBA%KVZ_isMAv?crv}g5soDzYEjqIs}S zfz!IVkyO3c*&7!fiq!n%X@rh0?4?C1k(tovfk1m}u@!lkQ;L|@=SA0NM%Nca*L%-R zo+POpLH_^(`FTNEJW1!KocG4Pse9M|TMYdJ2v;BV-%|Z=`=NiBN@x1{x&PnR+aUGf zxEH;7dtf--i|HVshC7C9SMx$!X&qPfvvuU-XX|*+sq4@`fY5ssB>A&cRI||)^zKKQ z`Pn+kE%LA*gsW3g(Y<<|G&@(XBY!_zhyGz2#$WtmE1tujrE=pexXQTFXe>u#A7Zrq zK%l*q(XBPnxGoy+iN?**_;56CjmEHl03j4zqx=xf5{;eM4!Os*;vP_pto`gq&lL0z zNPYEQJJzW-`B~EcWd-^N98rTn@2sg{LTYirXr0}AU=!XCgRq^_QfnpCPj?AzZ^Y0) z+^#;^Y&h0tVJq#WvO#-A#I$|E|FRwW2N0;;j!#vCF*YvVl#rNYPVUn;rC5#}q*&?d?sakGcAX?*Zb*5f@K{ z-}BwAA7&_b{Py(SFZ|^J>sN2yw4h|>qI_6bW!`~1czMcWv*b(D#w9{O3?`@wBuqAKY(!U z^=}_Pzq|A9E88bM==t;K53jua<`YYP{e0icugdR0TlkUWyyjGM`ME!RaIo;HBfpur z^k16}*0k0auU+`w@QMYdGDs=FV>mA)$1yH+G;2G-W_sk;twzN z%x?0pi+SUg_ib*k?)!hw{pg_w{xG+|A*Owu*uD5e=pR5RsYtPm9eUkgzxv>%vHL5> zjr`TK7w=r%b=!(v&1c>nG3vQ*YMW|OTYmrO%lA%rWcuqjJ{JGU`mDcyxiHUO{@Tg+ zp?{c;($fFIH*P$3*SyKg2d5m{7-w4KKD}r5i}y8NaJ{;>Zrt{q8@_z<;;2KeCuiLE z=cDU|d2b!q8Z6p

    $haq1;{{X@tK6(1mx3^i$hwiUzyT5qptjyf+fA#le)1J@x zbk(-4t+ty_{Pwu#@r1QW)xm;Qdzb9of4DkEFDQMiFaPBpym8ip(EetiY{P)k&BMmO zGc5N=-~aq^#OU<*4tRG|8D1Oxr)$&mHue+u6+IE&>6^OZm1ne}8UEM-X-DVh{PS;X z_5`4R0O7Bz>$4u3nLPN@m0flJSUf)aZ?A;boZo!qsc^zS8vpgyhUwB&jrQ{$cRhS2 zwPDVrZ_aLc=GJR|SLN(@;zGZ-{{#KQodSD$UuS&&*+2f~p6*+}%lPmP<@9e~xch;> zd<AELB?}hKd?f#}=CLXAtZA28#<UwxKKuHzId=@d#b|o&_QLtU`!)0rAUNzdY>P{} zt|2it^ZJ1={QIWQhE6Vf^t10?>@#rC?@O1D8F~G+$KT$4{_f80S00@7XV1f*-@fw1 z&A(pK_xV>ZzXMy8RUkk=knNOCT~prtr*j8Cc&hL>N0v_9^skzO^{s1*-&^?c@F`!P z>;L%2TmE_PoynWleetbXr|+q#ZSzeS^6o^mANGLo(hswH{7o_IZh6D@zSsS|ZtlMy z`sfc26wDPJU#E2^ez>@z#F8>}>|d|@;H$AORqh`-?%7}6d9iEtirboZy^Aq}mp~Xb z;+yB1YEx@|-}3UK6Yib<$c?YZKeqmpzh^D{(w_HP`THmP4|?OlV>iybYx(4q!5fd6 z;@pe&oPKe3<9)6RdtZhA;Vx(o>vFb#dBepg4~=@#b>EDme-_riHE-*IqTu1(yE=X_ zd@<ycKU{kHwr|ar`wz8M7T-T>X>R7PzF+qD=cj#|v27Lf4<NK|z1jBL6Q1J<k0-4S zR<9~pvUmT^>cjdN1(U@5<>dwUyxCqB7_eb;>G)y8-Z_%{pS~mhm_GWzdpo>_s?o1O z{{X_Zf67bmw{f5NMA6RhRNpHrw9m{4#ro3*%s=|ioHc(7>{<QStooS`4NhM9X<gUi ze`JqGU8?@*9zg#90@aIJ1bP?JkM{I#qtvu6ES<mP)}>2tM@P#2_eHl+`aCA0{l52U z^u%nTbfiT?ZHwjYZ%5V_VV#y!nj`B?SXcW{-h=WH%g{g2mr;L9nsu<4o;lP$d_;D{ z&VcqN3}GxE{XFxt@MgsF<zGkEX`4nDZ|c+Ef*!FN5MY40h>kG-?1xVPY@_X@jHj4s z%zaSX3Km*Kpl#4UfYAG+t-VsBZNX=C>IgGhR#W*I`?vFpZsvT9HsK{f1T(%8ul_li zzk)G8`!M|IBb1`|N2z@GN7C+z#v#PeKST++-pF2GG~N@9L(w>QNpwHO_+K53p??6O zF1p5I;skxX#$eJK6Le^xXte^pNOd}W|G`jb(GSP^)ddoc1wZH?K%k|_k1@}a#mw^z z0^*ocO)Tb9g!h`*+IJCNLfD9~4q-(TyS1tbSHbYzf9n#gl_7W#W*|&MC_>0b7>AI9 zkcD7tV$!wxp9Sb2Kv1{Z^=#@;1RKIN2v!6*u%3!8nyLK}QV{wem=O{YObBs$<iQ8R zh<H8xCO7@}u(*kxxEld>bSGR0HzJHi7=e&MSFsy}69ci<_kRYw#dSKZ7Ft%i4?kZc zaaQ)F@<4hZYLWQiyw<4+c3)(By0+thBy6LgjeqeTgD_lY(+$uiLL=U({a)Lu-KX8D zU8h~BEzv^%FcVL=Hc@+Cb5<j0`)fyNo!UFK3$%}FH)(fhKhS=O^dDe(ffkQ~-k`Qo zek%M71Q~=FV|?OITWKj$iYf2^Uq9#{K;Zd7|G-VKLPNsygZ_b=u!)-x;3k-6@yfx? zO<2QCAe{rx5BdjgLhfwdJS^uX)N>Qgaue*o=9R-dZbB_L;W#(Jau2T@rgIajxe5EZ z2}X%m4imTues041+=LJ}f%K3(Kj<I03A?xnt=xo6Xcl>X&_8e!wsI2=a}!da<>mQ7 z|G-UH&rN`RIL}3(RjixGOK@@%R&f*da1$<Z6CCq-CAo;3P{&O;%}o&R<(0!MZUW6J z#`A;zftx@c?|FXEKX4N&xd~(i!SjRuLFOgoaT9#pgx%bPHf};TYz%mQ&_8e!wsR9O z!k_0N@XoR>;3brD6E<-Z0^9`CLS8w*b35m~Si?<d;wE%)6LM8e_5WQIuz%nt)N>Qg zaue)}dCS8*ZbB_L;W#(Jav!f8rgIajxe5EZ3C3uD$p7`pfc*nE!Ou;2pPNAaK|DX$ zKScYA{;w41AGis-xCyP?gv@AP+5cS*5;tKhH{mchA!R9ViJHnySkFyp<|gQt@yfx; zO<2WE*uzb@#7%H4=au9lZbBV5;WRgaMgj2rVE@2PsNp6Y<R+LO<ds7SH=&Z7u$P;_ z9^#cl9yh_qP1wy%XyYbi`*<Y@pQ${LCcgc*a}$Ex1Zz3(Rg`iQHgOXI+yv7KUOBkA z32V3sP27YoZbI%#UP&(JCe(8i&T<p%t9a!=<1Bc77=OV{IL=M5Jj{C))42&WvW@45 z@fX|#<0HIzn7~c&a}(a@CWN>NV;<#|q?enpi<{8;zYx3)m~(3K8`=jvahRuOQP?5- zwR@8q)V29x^5#WWpqc)Ne>qCMSO;%fB|>1nhXr5pz&or<k}#*Qt5zby<ghUGPuhFc z<K5v`Jp#5(!02oVgj%@{sUk;E+8e{(M)LJWRCCE<-Ta@?&KqA<DfTeYF#ZCB4ka`E zin>(<n;6#c)l|xDFEJ6stMiBP7nBF-yfKnHO?bXa=;?`&I(q&)2|mR#{X^|mhZEy3 zD#-U^Wmwk7Bno4U*;kH*mBqLUn#nZY<`+9LR}*>v2{rV=4BZB6_y+wT;RZW=mwt!Y zT?Sz6!&DGN`1ys;X80|ICrvRpXNa}!%u38+8xt61wPD^LL2OmVw2PSAtzEgH2mbXz z6cx<h?DoRr@p=##{OS&B3B%P-hw@raB77Pqx;vDYdSp2>O%PezbKUpJvDmU1TWr?2 zagMag0?n6kV`>XDM=<_^2uQWI+uL}Fz8v9c=~<Z0d*P>PQb>U3q%rNulPoq_V&b>T z#df=-ll`LTXG8VrVVgJz_7AJ!A>ZGMIX20wSZony>gy&CVg@W_b$_#3``Ncjdx+*? zO&M1SPvX@_;MLy)>v~)T`QgL(3lPYYHM}{BU&(Dsa;M}YU)!uLP4z<U#1a06ZSWyA zRrROjWQjJT)89}Fe|fiI3&vllgqRX|fQ2-_Ri0>P@L?L60h-QdZZMPxHbb$^qY=$s zkB7DWql>jQcam4m7ct`)#$SLya$SYgUfe;WRWk(hXH8ClXZPeThYw!mTn?|pXUAVA zK5Q!z-Y(y0V29un*HKvzI)?EVM8GrR@YSg)okk~fcw^u@TS)Jtt9H31L8LNSiBi4@ zA>0uACKIL4?Gnq_TIi54{^Bu#l@$s*2Lz895)bv6XuWGL{P79HM#!%@Z*+~2`pU-) znnR=I8(pKNc=>K)Jht3z>?;Y5c$63cC2A1}>GqRf&Mg#1i=t-4)<Vq=?aqtG-~*rS zeu{jJ(agt#Z7f|Y#!PI74=bBhi#f$FhqBZd<1aw?9-hQ7!7@@?ORSS@J`MaHYO_)U zx~yvgF<BWcR9*&jW&~wVireb=NY<29Sw50j+jX5mjD<N30z8mQ{aZ$fLHNLWxhFYD zM+lv)?b<Fu6uq(PdOJMu-U=VGF}8S=@xriN=8?}RCs03#YjAGlnC=DL69u^*0RN%3 z9x*PgSi&Ow8HF*60+xHIRKTO)kp9HXbn5lk1N{RCE!`MCn&@!Rvw8VgmQ~myjBPBy zn5Uyi85D5b!S2R_Z}8L(?jgU`et6$a?TNKjX<0hPUx1*&OrPJvUpQ@phcA@QHf3Ks zJQTaDv=yELInGret(KEr6_Q{p(p7j?%j;aLr2=fp$K5;#0zLm!2epyMcX{RH7}?=l zTQ9)>p~k+nh1tZii%Nd`gLqOh;XkhoUSdT@{t6?!_$@8Q_=~jyTzE|LuodYGEVhfv zzRs@}+<@6u7Zqu$9lk_s`1-g(!u6Pwa-$(IzgV-`I*Po{orH(Og@I9E!~Ow;i%NgY z{wJ0RAS7dsoL{?z3}Fkr)ZvV}mb)>p#>Nh2dq=tp_p(C%PDzD-<rIguTDO^I`Kbiq z5Qs4?Ed5>h<<?^B!p<p0_Nv%Qc$I@+ypp1KC8J-fUd!na-UorgqSZbzC%$}B;g$l7 zzW^Z?>E4y*6vi#_<4O8KiGe@(hk|<bn9p#GF;L+f?{+#?SHeH9nzq6}T;2OY2=)(; zLk{o@>GyqKHoCZ?zzFY=??`PPGp;ta^EzBXM@O#jMk~DNVO~{>clZ<`<3`W0iQ3Ps zqm4IdwqX1P2<Mdgj$9n^&(J7!o=avE#52m?9@cgV^=rFwsMBCgZlR@0ER75hL#}e# zn(tVKQthKWV0H<cm5I77XW(;Oz%1!v*(gZ$fl!P!B42MPak2m(w=_cud74aYq5E)A zp_#9DgV3Aqo{(U@F`Dk59g&$_sI)snkrGe!kAFDktPE6OMoyjjgkbyy2uCneZy0ke zQOVM}D=;4!d})?P{Q3HEw4<S_o;{m5sV{u)4u_x0A>G0becem&%KCW^#$P;vXLF~1 zhuu1N0nJf>c{5N3sMKVKXa)<>8e8uGnVvd-!#T_o%Gw?dX&_;Z>Q5N<4<JPL!t-Z~ z9(zLVtnEJaP4OSh_(8SFSmch<EJoV;1~cZl?~A-t)}K{0@D;orTk#&s(Wl!7ol&;; zloiI*%_%#pJkeuEe$R&=%{b<=TNf0@>^P^igFPr@ROcHcVjTPsV*CYN1?EV>OqsZP z@;s`w30|6yRq(R5k;ti5mDm)>ilj=j0~meeClqg$K#U#s50$tVm|e<<qryrq(rMHq z#zl|7I~?n};tpkX_=@s)H@x|INa81O2Z)IA7a*9B8^Nc~N<5&6&Y}iCW?F;6pl7J> z{sJG5F>1ad_b(CbNSzjW>umzT+>kI)XSLvM$+C@sW0iO7?l#5y{VUymooMzOgGVcc z%+uO*r>QdCb<|%}S+PtI&7e3?r@;RM2;K(sWDVxMYP*YOJ2rZS%zi<Z@!4H#3ut~* zZ=>DH+U`;Px*FVLy$tV1JhQeq+$B5ig{caqx~)In+<5!L1|SdDrbXFfBdF}@Y{`CI zx~}Mqa;jSs#IbE(v<vEdsnk+1qrQay2N0fzSK_KJ9ct)3SX$GC8IM~8cw$9P)!c>} zM0kbwp~lkKM+OELx62zmDH(%QFX-_907CxCJ-(2Vf@g7EJI%DgY_x9b5ytv_DH$md z59=%H3N9XJLyXbA-Q7v>pDcRe{{aNNhsQP)Tsjt89FnJcd}u%DTlUD*hGLk5CXDA` z4`!a+gPA88qxJ;V%Jc9>bciI$E)cx%8fluuGPAv5%uyZZw%DwWUD6rF)opZ7@U$y) z+u2AxN_<w?75Lv|;#sA>#~Zz)@c*zb@?6kt*N%ohC2Q-cEn*EMxl?leSQ6k%{G(26 z%YZf4PMt%romE;eFTAnXm}ANzZ=%aV(C%Ze-)h;sQrIHOBdiyd5j`>L^GI!&tO}BO z-;$IJ$y@5`Gw~zKy2_J&OKDItuBi2fQL5`f=!4qRXiJzFQqsF4?Wqe&V^3UBP<DHY zWld!EA6KOmX<>zxe|MQ1NggB%_<sOlPkiK^)#IS|r{30YV!o?%)@pr<dt+k3l6{t9 zAI+JdSyJFL(To<}0^gIqjmC}a1;YzT@IUz^ytZJg#@Cdw#pN7@nSp${NJsHLpAOrq z;D#7JM7=1TX#E|=d8tM8OasH5RN89zp9I0+*6h^oU>k&ut}0EHwi)m0PHl~5b6C-J zJp-A;;|wzv75m6Hc%`3-Xjk5rk}=bzn|J^t{%S!uP+8z=Mp%bEz1J6N7((-mu25TM zOY2uKv3{vAOvn}|34yMHzAcWGxh}^tdix&-0VM}*g!?+@!sq-gwr`icwW1b&N#9zU zvtpbpXKAR>u~OwM6X2hiS`#xm(b`tik(YkUdbH7z`mGf@^{BU2IIcPxd6)f=MX?ko z!#lQ=vl7f@|2z|E9Xi#gdpZczPONW8oRp}Ry5DyuxX&ujb|<)FOE59^nA+9f!+*5s z>A-y58f%7?*{D=L86G9JO7v`2gYZfRJdxx6Qn@^V775j&m?w9VjQTJ!kdk3kpREZi z^uang=oIv^iFJ7L9_%vaT{#5(0|@oeCx%K0W)sBBegZs~YaZ1g|C)z1j|!RTh|QD8 z=dOU68nl@A`Ni&pBKN9V7yLiqDED%Ch3JwokG1fq%_Te}t9L+N+MD_<_*<tMg=#e_ z3-oMKi=FNO>>ogASMKVB4}8qkCD^qmXnVVo3cs-P;UI|WEgJV~6wqR`=)$X8|LMmD z8m36Y0^wQ34+30^={4FIq>23e*cCRbLuhG2D*QA|#5Rrjr*x{H1UNH*{|6Al5jP3& zk`PWy?u(f?!Wzs8tHl^a)W-=l9M+ylV~z*I#e=#9r@}J+W+cG>0|*){4@#iFjD>qT z7gHALxc@&t*gv4m^Za1{z)jf2O=#sNWIn?y2by=2=Lh`*H{mchA*Gu4DyDK1)^ih@ zxe2-rymD}I6IO8(_HYv}aT6RHc_q1sn^4D1IL%EEpXHUqEN(&#H{l>R!MurA4kg@# zN^ZhlZUTFbR}OjH1RpnHH#eb;n~?omUP;Q_gzemfAUDDKJg*!|xe1%N2?1_`sfJe$ zZf?RFZbB0`p^KZ4yO~##%ee{l+=R2-1p5|VIn3iG)N&J!a}z8t@XBF2H=&xFu%DY? z+{!D53ETufH{pG5LWr9%=6Af3^l}q+aT8j(37Nm=m4n1h*vd^f%uPsnkyj2=xe4pJ z3C-LDT`jL1oZN&}+=M;cgiG86$2ML`F5)KCaT88+6U3Kz<uHqzP{U0)$W1W6%qxcy zZbBtDVJ|m<ZReFk9yh_qP1wy%XyYbizrrg?nVYbkn-JtCSYPFpLn$|56E`8iO)$O2 zD+f0>VGTE-iJQ>HO~|d|mE>}6LOnO(EH}ZvgI5moxCyn~gyY-<%T8W7Oy?$4a})M+ z6O6C(%3%UG!Ou;2pPLZkCXCs|D@iXmVHY={m79?H2Cp0>Zo*b>!eMSg%A34$n95C9 z&rN9NCg}daD+ebxVHG!F4>#cwH^EWQE6GLNggS1*X>Nk}7Oxy;aT98|2?x0e=C^s} zP{K{9<R<LpCa^#9${~-N;NvFj<|edp6S8;nN>b(~Z09Bfxe3+=UOAL<6E<-Z0^9`C zpLpfq<|eG+CNyyqy0{6sf993sa&AIBH{mQd!M=xA4)eGPwcLc`+yu)zymFY%O{nH3 z?B^yJ-{qCV1a5+#oA5q2A;e7>^B%7xz1)Od+=NzcLgxFta*((QTe%5`xd|zaymFYz zO<2!OXyzv9KH!yulbf)Lo3MwQaEY7X_>fnUi?|7O+=SEI1hI)%4zsukHQa=Q+ywJS zymBbvCRB10_Hq;0UwGw^$4&5Y6LxbG+PDeXf8~{=%uU$NO$c%mtb2LoP|8i%#7zir z6HFiT%E8S|Si?<d;wE%)6LSB?E6L^DgnDkmS#E;;@4RxD$4#i^CLHG`Sekj|FrAxF z%}v<PO)&1`mBR#Xf}fl4J~tu6O&IeDuOz+Pgk9W(R&GM(r@V5IxCvXi35U4}Df@Zl zFqNCIo}19jP0)SDD+ebxVHG!F4>#cwH^K2auOt_76Y97Lr@0B@7rb(q#Z9Q;CLH7@ zm;=0WDB&hlaufD)6Ictc9P+pcK5oKpZbBP3A^QNYBxP>Gc5XtDn_&HtR}Q7zgiYLp z05`#OkXH_FZo(RFLK8Qki<^*ph*y%!xe4{$gtOcP`#*T)Fpry1%S|}WO|blvR}Ry; z3Dw+${oDlOVO}{*;3oLF3GZ_gLfnKgM|dUa<tFUnCbV)BGLQ1gLE<KC<t7~FCZrtW zmBUnS!g_8(GdDqZoL3G`Zo(>V!X9qIC2oS_1g|6)aTDse38%RU;=g$1FpHZ|!%aBI zO)&qPR}LlIgi3D0UTy+rE8%fh%rO52H^IkE*v(C7<0fQ(#Vbjfo3Ndm5acFUPx8v4 zl$)@Ln-Jh8m`?G^!Ocxr!%b-7CUkKVa!>P0ayd7lo||x%n_&N%R}S;I3ANmW<J<(x zH@tF~&P}N1ChX@X7|-y^VFEY7&rNurn-JnAjA`YSq?enpi<{8OP00L~R}K<4VJkP` zFgGFPJ6<_V<tD7>CNy&sbpPR%gOi)Eikq;9n{bJn;5f@G$wl0RI&Q*gZi0A@R}Qnd z2{qh=gWLr3d0sh`a1$!I346H->;kVG^0)~;Zo+PELK`<ByNy?pGB;s6HzCMPuzt@g zhf;3BCT>E2n_#-gD+f0>VGTE-iJQ>HP00O$SCY%Q3H98Bv)lyxC0;qq<0jN{6OMBe zESGuZFrAxF%}v<PO)y^JmBR#Xf}fl4J~tu6O&Fu_O47?s*u_m~<tAi?c;z5*6Si^_ z4s#Py+Ii(Lm7B1ho6yWn&~@<2!O2Zn#ZB15O}NBOaCGuYauGM7j+=0rn;>@a%3&5a zp@y4qkeguc=9NPUH=&Z7u$P;_dU)lK$4&5Y6LxbG+PDeXVLnNknEVSu9%E)5^EQld z>unVeeDr|uNRhFK2@eX7Xwo;hga?Nf#ry6y-p%5@x{N2irVQ7EVutpCw9E+)WM-~; z(44vVL0G4NFnq`)Z_EnE&<2+{HfHJC6^o6F*;>TUx#+KM=vXy2M&nno7PB(jrCX+3 zX~it_J`iZxIfS;YS&`v-Z0TbwUdLbUN`GdCOS{bIt9BW^MxT&wR%2Z{t$Q)Iy~%HY zh0Jac{8$o-bfSBi_ckY%wMG60CK~;$Ew0m#lwAu2=DiKGwl}c0-(ZWsA+E?Gex%&k z5nGhU+Cb1??S>9x(KU!icNmJSh_CC=7ikfX=<qjg9?n?)5XSCAn2j(F!Qb$qvZ34G zn8&h{k%xwu;+Ud1@k3>DSP*qZevMIbOa8{)%LVq<JeUEQ4eI$f^w9Y!?Lef>Rnz7% z8H6T%<cK{u;@bOqkI=bUo4-d}#6-7L2_Et>k+JuY#^3O<a;WEX<w!`2tJn^LQPLs@ zEy{(EzmZZDf#Pov(nXtIY*y~-`cUzzB%>tSH0}?Tx$XYO{j&r%Z?OPL28rN?jAUky z3FzI^9R&-R?L*~<kgiw<Nqng6!qqZ16{)Lg7~6nA64i!STPn_&$E<yH%-j%LBH2Xi zhsyYNCN{ZhB~c2C8b@%Am@ZnK4o%UA%H8eeMv{m3c9d!{uBgdXDaB5V!&Q`mz{J%| za4<bf6z!X*hQ8Dn>57e3v%@%E`xm;4bY$=mfj#g5mTL_R60)&$mXX+G%FSb&KoD&C z5~cL|BKKYUV+vyvZLgduFx(-O5w}O<cG|3t50!6m1zp&l#{wYu8$MTVfm|y+T3mUH za%XgJ!T^$clky5A*VC{FcZF3q`xcfgoZ>Px>6-=|OFUJY$4q^Z2S@Il8$Cv=-*@k1 zZF;_;_Ik~4i;{AdRxwX$p4H<KHXwbHZ;ohX!=CUk(PnM-%y7>rV!qh&Jmv;rX31p3 zgGo!Q>kHpvPZ!=*<j-OD%)sqa1pA}Dw1CFGq-BbmU1tgi*DY#smQR}GG&qx1vz?_A zCkc)`wg!anJhjVo=@Z@VNzI;Oq-B9(_jT6fU;&ozY%zE>!*285;&%F&9U}(q0+_`u zx43Vb((Jj#oyVF$sPv34@)jCP$6EJzq(W(#E|}-mq*r=wbT=c<ql)ywM9ZIi4<ets zk=Gp-9MuI^zHBZZIi<<al$6K1KnO{r-T88=D_^R>-wH|C@=n?M!em!R+2eAu>uJ~H zQlXrKy~5^rm&NKSG`h?#!OGG#;@_1#mYbqu+K$1Koi}@ZO~xi>cX_>DtKeh7te|no z4wv8+P{!*0%qECmD2uurR==ad7aJQZRCtqYf;W#X2cds)nJ!tHCTV_ewvAe`aseB` zT9_@_Wm{I^%W_qCgFeA#bOpT!l#A^G?kKD2X>9tHz!tfvJk*1*eUZSN)dse25Mvbx zuOMtj_#VN`3~HIAXS8yT(d+gaml)@GZ`*}3il@(($IgPl#Ltwnu)ndsA<5mOSh^A? zX+^s?p(w#^8t0Z0+;Jt9lGA1xBU(RDJ_?6zvK*^7y727S^yzub-cQHGK_4pRAwdlO zKfQYmd{ou7?>_U9%p}8P&?rGiIg<n&FeDR*8f>ijBAy8WQocmg&P<YljD%z|lSn|@ zJ3+qeRW7!+#cJDls}>8k=`Fdny$vQxZKz;_;#X<kO>b$Xt?f(u)1G|K`>%b@8BPYG zx9|7vJHPBXd+oLM+H0@9_S$=|ed6!#?K^yBn%FEbyoGo?j&=-Q0dssgTKKw?u|qw! z8YcSvL;my?>E2!FMFThp9-2{O=kBYrdd-;61(P&GMSqG{6v_7->cxyIO=TYVj^{DE zdcFx5v(1d2m9Q>wu=veVXNMarL}$3OV>W)ncXU7w1|87MDw7=W9|qU{irc*wzr{&; zOGOFtC9tSpfkSCy4A@(}6351Xy#?4?Bw?qJ>#7hU!cIf>Z2mUUIt19Fzz?{vUSwU3 zUPOflI1Sz=!r{$nqWP|}Xy*gPsOK*1jEb(Zw$2AmT23+}plnxvRD_3F2M*SqWs&Q> z-km~QNw#6T;B*vLM{9HbIl3w5wdkxI!6_D|hv%%Q*lo{Q5oWHkT^?AH*;N)cxyo8g z*g<gE-Fl+c<`P;*TxGEg@6RJ&h#0feBG&Bch$TBMYS>wtb4`UIQWK5K|2kojgbws9 z44=n_p{Ejd3LHK}j#jYys|1#7g(pS63n|u<<+4i0<#(nm@LDCsm^c1@zYr)3bOr>M zP#2f)iI*_T9IO{|6Goe{T-aH6k4s{WrIvZ#Qj8Jloh;f3%{r?cJ1FmHb?l&VakR4G zrjZg>2@Z~(920TuoB}4z<A}J$gON?*U}W~nOwqkP&*>=Yie4=qZqE`gw8!PACu~yV z-k}FdQ%db6ECvpCa2|>dJwW3)6it=NcF>5FwRWq0W$2Lyi8dd#jCvQBzZYj>CVYMg z`w2Mg_xH=`qgTShq`CpW6tD#L2L=KeD=c*x)t36=rPsuS>`krd)ul@Y{a5-eIahYp z`mNPpsEcQ(VRnyzgA_J%|6c2%HK1RP!&fs8)&<Pj<3DC>4=mXzIb5Bs23LQp$5j@A zr9vjM*AiBgg}K?&FP|G{y;KtGIW6y-6uh+7*1ktGIK^egcuY>3AfsuS#g9D%Ry-qG z`CtqAhcGxedQxlhu<9L`9aDlRhRGK=mks!-H#F`YA>wpezIW0J&Q`BQ9F(Jz7OxfW z5_S|ES|(GyvjJ_LOp#ue+pxYUwOltb_H;30%ZnK6T|iv+c4tT@<mIDmc=<?NekUFW zhYR3vByPi6H7Ku~OqW7c@M5BH&?=db3`j;KGs;fLzZgmBChi|X`sLvM<t3zt+_@&! z^*Mn}0y<rY_K<f#;<qNOlC{R;@&_zZo9DRvJbXr19Xv+hH}(F8u7*sPE9kFtVD<Nd z!;hfrO4JO`Ax#=wR?$>_M!qn0TK-_d;I-6KyUUg-G_jteE+aJi&?FoF3^ZE8o&pCi z^h(~=f}O=mlrA4(uB*i?a2c4IQ*ClNu!j&ZD?7upUH!34uh8j$&+qTBVAhwgcfp}Q z+z-#xAHJ_D!<z{&_tBW$n+m<0o|xs$!29IHY5B-RI_5^2R9PIuZpSdl#8>5(Q44yJ zd5wwnd<qT?-v0eb#vUz$J|xE8^D@2)(2l2NBBt638xE-X?jDcJhTfF0T5y;@nO?)@ zr%Ag@inEQbaB<LoT>dpiwm4gG6&GW6Puj(2{r<2RX2aKwboV}vv4DN`2-xM7ut&gQ zzkk60iaZi$(AZgENt<b+0eYy#4wA9!Hj#$euo?QI_axuf8n6o{iy8n2k}Nn6J#o#E zPFBQvu3jO8vz(4>(PL<3*^Z@Oi<a*&!B3U9mhZ^Q`C5f#NqMWq`Hp<o2y>S()3sQ6 z&j_xsL4&W2*NRqeZFU-D+K+X@5`dgo|KE|{9Wi<1SUY09A7YQ~!3;MUQrU-CKT23B zIK+D1k;fsS1M~jK_)GGy$2+Cd@}V)7o8vTPn_RHb;bmhCdykjoljAv9_v5^*0A(fY zL2w|<OFGPamAYsAgnUChEbR`rc>hV<A8z*A{6<K!RjLd(Nv2px>gy<BFM@*wzG;hh zAZ&5=b(oNEKwcRB{8(K6JmyZ`lrUU19+$Jmh2b?Q+coZ!`WqdvCV1UY3HuNn?ybfu z6A(ggq+vx0^fzt--0$za?=HMM>)7!2QDJx<Z1qcH!tfL0Z1}HnHvGf{8~!y?3G+Bj z?4gOc{DTQ$xDXVrXk{PLlVkAb;tGuDgOh^GAbOG8K51|nMG3hGawf3~xf0d{4%+~m z#pQq-kxLOPkgG?%RIwbn&!TLOSc=?T$XUeOky|$zmj@<qlT5Iv!{AWqkIQq=t`%uD zB&!&W<E#^x$05_65n=dG=tU062hZ|bXr^V14Sx^$UZfIs9vogkttY4A@@dpMGR1~p z0f!@)y^o^5E~FqRzlt;o-0zTXM?MOgTaYio{>8*xR03`P4qAE>@8^N}59F<=eQq>M zIw@}$fwjsvjxfxWVeGu~;cpzh&xgoI-2)D^)1Xx}4~h0BSPNO-?QO*q|M^eF>p}Iq zD;W#e7~6()8`58AG4|7?$Y&6TL*VejyO=qsU5g!_sg!1xF#J5^Itg$3Q&@u$mhdI? z@U_uADK1|C<~tbMjnGKZWC=S94srQ!kbNg;7<5zwiW2DVzfgZCdK*Fd8sN=H2atwP zI|cn4Mn9{@OPJ$&^kVoYC^-*(iqK~%I91`j0lLfsw=rnt3rJ^C^B7VG@~e>k7g{(9 z8EQC(M}QeY&HEvX2)UnwEE3vy5R~_f9+&Tg=HMHO1)Pl;W=8mq!`LY}dQ8p|wjUgX zGcU=@#xkVOxlXd(ejzr?D+FTL&oCD(zb;)Wi)FexW2vsP&Xnq^9MckW?v>$n;WXD{ z;ZB_WPk@8*ep4r{ZUdO_Y~PoRH2<wQK?<Sr(Cms`p+5Wy6)f8b@A}fjDf!wlCcZ3x zk*{rtKg?71)n+<#x;p(>o&CmTW&WSZxAJ{WshEmY;Jzx8_bT|Hb=dhDy`^T_r&@ZS zb&-cD0SA7L#JZgVF0sZwA(ml2W6bWacvb%K#M?6CzS04?l(pU9S|p}mZv1haWv7aW zKY)YDdtCnWlu7!Tyb&G~9{*v+-g**@u`@FyPLAO_V%X=B7tZ4xPJsjMijS!relcb8 z8n6RTN3_8F1;+jW4&VQ0HjRU$UEy#eUlqR#4hC=-1_uLV_&#J^jGB)=f|D!Xi5Ogq z#Z*Z96etDJ44Q9FnWfj{4Pz$hlq|!qz5sf}A4JTo|6*+PKXJ^cRL;BxKIXKZ;3Tqx zx9gpSwc$x<KX6EE;k3Mcl%fZX;9&6!P6NF2S3z+YHBR`c78_p3SD3xsHt7|4+vMBw zo8#%yEH68lCYc@+@EfW!97Oy99GGZ4Xg(;2ugDC$8QP27H%faA5qDR!_X+IFNb8Xf zVPCZkZ&-@>wtR4cc1wsqa2X`OLCVC5DAs!rRJZLyZ+h4QYmIf~0{>=zrK|QPxAVEc zad}`g6DOey^=|P(pv&)W$PXj_;6g+TBlwIuQdwNjws9lhZ!O|>chysjg^;Ft7OZr4 z^rhO)&L>TU-QirEP&R@?X9q>X=zJq!FWVVrx$y<_Rtq<~oWkK(<s~ERNY)O)JrAel zxr0Xc^=DpeWUlUt7yTWL9_&CK2Zs*-t&K}cyF~NQry7@*eyLm-gr^@8isd&t8oMhx z{A{6dP&mwnZ-^U)=)F8H6y>JmUY(Nni*txSfCFqP+tNW1FL!tfJu<<9hcF)G{m7cT z5xcl52fLs7<?PXQYqA87-MuzE@@9tQ#A(r%ZDLOBGNPliB)e-7a?a6oZV%}-i})@z zb98>#F8afB#IA6vv=--^<v8Dn*j06-HN+pl;rEE1oUaqupO7vf*>F~6*=2s4w-c!! zNeI}yWk|aM{rDB?03mfEA^rdk{dF(blO><TuF$<xVEuS^B0Yh08tGxA$B=rE9!2^o zQg@GCveS8y^?`$>uura-vU%Bj$)AohvKhaz60_eSimgN8u2z5R4LHHRBFp1$Slz_< z{783i{C39jum?r_f%LFNU?NhiC(k8dfA%w2a|u707jyU}z>OR>xa@p?Wy1`{rfG=u zP@DscLJx*}_H?rw*pY%&^E%mlmg{!DEk8YOSZqA=HujgyjVMg604P<2b+igY?8v-U zvJ=D~z~OD#GQske4O(2r!*9!f8w2KnDR<$SjSmR!MQ02y14`eg(ubLQ!C=<IS>FBS z*@JT*X7GE6KY+uPqb4T{u_JRIep`NPOl)LFu6bB+S_&<<z9v6C%G@ciM$@3d^|*Ko zcA9l@iogAA<m~$bN)UelhvV|5_*?RVxNy_rl*M+_;%DD9cMqeV8?g!^fWXq==?u=S zC9xjs3RtE8p_s+9t9<N?Noqm_!<}nlO|YX|u-~J|%o%v-2jL?o%#3{<qegylfjA4k z>cLT)G$2Rg^m~6i-RnSH=5d@@8^9sWYXfvJZiOxWO#Zj{DY-eGim@hrfBiYeo__}R zfmHZy#(uO7=N**U&<ait*voZ+L#YMlTf`hTVh%7DMJxHaI9wK{b8=?(%Qz{Q*YyYD zvI*nLm{aw**TEAY{s0bV<RW-H3*=bCSDD$rWz2e>dLX#wi)rXV?&vAm9k+Nbbrvs0 zl|Bs_4S3&*US!QTu_^iYakJDf{|5eK;qyuxPk)E8#dC3LI*fIrC#A-gogMDVGJAXF zcX8SskoSxWVwayzN$bGjnUKH^Lhs!@^KeQC#sr)g)5NaWL2)SN5yj4fqQBE4c6H8? zOxdZfD{$(n8OcQ6?7G^6_yaf`m#apukY-m8b&9*fORfs955t4zlnE6T4`+Q?_$2&+ z$$gjqqjMH1CHoqW6>@wno+_DZY@Un(#2>&xEXp_`!WZ<yT4>IXz`NvGVGpIs`jN^b zIm~TAB>1@e)Rf5?m%lzmC)}@0Vb8SyXI|BMdR~Bk;?dOoVS`KLbLcT>{}@JYeh+E( zl>9GKf>#PCWfb8+`~e&?rCxbqJX3;q#EGuoUltYuY}lagxUR?k=EumNLK2Z0kX}cc zK>4oG5*7moHtYt}j8u)i(aYFVMYxwQeNbRo^`v17G;ERPZx{Wq%fr|a{jP3M9vpMc zv&0a80Ea=jX`K3h7Sev1Tk<KnANv5aa)*Fuo>4;dyV~M8CEtJ*IuBg`{1e7jq7LE@ z;6VMmamtK{mf)myc?EU?M%c@3DmAU6{ity<PHpKkcpb$8R%XN>Zh*IkZ*=~ieAFq~ z3Qp!~tb(pwte+EcBX+}E5qBq=&~e6E|3nsMs>$SIM`IBN2ZJQSx){p@)d%<=Fyiz+ z*5FjmX&yNJGH!-7BYwx{;78y{v~Rscy*LUEu}uQo13y3!n$<X0xG;``&?wEKll{sl z_D|9o{v>vmv0n1$4z%*a$*XG+e*gzDa7zBcq(6`;U4=P)wKr3;_)p2-nal))T{6aJ z2z%(yVvI}}#RGtw0e2%kf|-@;rhT;u*zb&_;clWgep3DqL`xVn`Rz$ZFOBHue#lrB ze0A@On00uINIyb^r!$wly&oK6J>=DU<+;%PLELPR@9st{G<_u#ZAE_nd_+XkFvHx= z0r~bx`n`41a$BR{1T7=}01nqqiq1Z{dCVQ_?tPIov{YatJ@Zywhj^;ZRaUW!2_EZQ zOCjA)nB3p5{qW5!$yV$Mye@wTn|v1>GHbdzn3V}#VRpm&;VsxdJj=p&rG{zltQ~E= z%hJj)cCX8y8|ACM-IVv2H&bgwUI+1qh47OeF)VfrBPQoTuB#&hr`E3UNH43!>i>W; zy5Gck|8hM;`~e)OXTO=C-?J0cKkCyg^vQsJJ~`3dn+Gnq?SsC4E*D^~DtfwNWr@p; z)4?O)&@1nq%#hr!5>Kz(If<3um066lFXGVxylt8{t-8!FxNNYjfvG&Fr^t32L%w=c zjM+*Me*lN0<s)ZkX8F;U_;f0}=`>^5Sc$gm@`^QCj#j~Ac8{E+Sz###PjD`SXJ@Pp zT1Wh05shXCAI&>pZzp)ae=dI&t20qKdeUp+E^{Gyuv;dr(y+_&8M<HkseE9x$(4e= zTq!v8%6XF}sn6AfUfcjHIswny{hq)E?jzp-tH^bV{)*DMO`ccej47eWl=t^@Sd}IY z*VFC8gW%9UO19ygFiO9Wjbq)M!(@!H-(-{hn_(4V%!oTw3tD(<A`>xpNADrnsso+} z@dt1q3V$pGG&az@3Qj5T>AmnWnS4#y2x{sPt)a6-GiF^rP9p>Iya^L}@gX?;T(0CN zlftu%edhaEuaGQ?f5Mr55HqL`$%NA+dBHTiOZe({K1iDM+(??FeLNe!7KvhQh3c3q z?Z#aX7aA~Y{*|}#t5&iL%yi7W*(gE$0UYjnk0c~5)QlRuQjGk<qw{dn0O^(TQk3uK z<!|L+9l6*m^x`l${9HZ{n}r9%&Wilgv*QL=2F_COGLxBzvG&T1&`pOc6S}EKyEoxP zvwJgfKZUV44-P*ZH+wAsv)2yEPLG?ogeSrC1N2icz{}<{<*W-kD#a*M@A%mla0wIh z5aEQEkM*QNyMK$Pz+<Q2E+%!He)o=>G0xwDbv=*W0MY#j?>*qyiFYb?8i+rD15@uB zEq#vS0hi!sE?cpo`ji}i9E0%mlfP4Xw}s@xieQjTSUL9co+JJM4t=1aQ*s)gN!Vvp zcY;g5f6b0vSpUibZdVpG@E2a=LF~c1_G0f1?>y3zfqnH^aLABm?O(k=We3akT-#XD zm}B#9tSHO+oY)6@&zKA_YxQ&GwQJa!+nkDrape8+P44{zBN$D`ViWuOT?)^l$_#b| zcvCxMBkzyVJ(2}0HRELzEwDH<yxtvbp>W2&f(_YMApQUjEH8D?<eD8za|*e0F$YhN zrws|Yf-}o`#eP^h;t(gslr}{ttxVK|DYQC<g!ltEP@A))M|%4Avm>_ZCt||GCh@&k zR?OhK5}srbR{R`p;z^pg{Am2XD&cu1#^s;H9|1SSAHd;5@cQzoBI!uam8*pLJz=vr z9G>lUNcNL?9(x}X!+{Jb!|PbhawUHkTeeYjo{`@f5sFF}%f}ujPku9{CcRq3y<3{M z2kX@r$4<%L81n=~Km09gh{8{7M4Twg!2H;Ao~=a8d<-^>g!ltE*u0(|mUC)D`U)lv z&%frL*{RkH>)ecm!ml%2h9S0){gSyBm3}5`?m9Z7{pFlT<=O|Xh(CZsch4**?X!g3 z%$Qj`CHIWPjC~pIaO#j7C(ts}8j~6N`0k{TD>})a9)j2LH=dF|nq)Y49|H%R9QF^z zUYEz?hkCofx46fMQDeF6#yKlf2kq)8EyO6<#<PcJ?>8-+b4GABR?$cy{s0cfadrq% z*mFxfY-mX_J196C#9sN(xR7GKnjN%fyHR(~IBt6vn$KXwodo}3j3g?CMdcNk*e@{_ zGq?NpSaQ3k$1b*r_yagxY`1P&yQ`Dh{ejx<DYR(BJi=|Ti1-6IoRW|6S@RrpKy%-K zeV7G1V+r&BDU2j}*x7tv^Ak?@^c0=!(pNj3EC=xiaG2b1qcdf(a7GY^ds9}Ko$s=u zn{Qedn_Cv%6|VGebQXi#FpUAMndXK~LgaJQ-x0^@3-JdJqG~xq8&X_s`1FXST5vf! zEEPE6gvFdJoaJNqb%ZVaCh#%Dhv-C4Cwm9JN5MS98D}FnC}$k_g)nXahet*f?!?y& zzR!%%Y|?5H7yZ`_h(CY>_5A{P)0=Ll=q6Z<4Pj52iF44P>>W2q4iBA2;HPmyGGC|B zO4ykXf<qd-@oz`1HA5~5Gox4j^(YhjnRRZO)3QYHT<fm(%Wn#jsn`S_jdv@W&EcB8 z9uZDkAyyplUY<jkxV%+eZAN+o@j7o`s^q_pZVjT&RSwbPHw!oUudRvk{p`_E=9-I> zngkA4t!84naP8bp{@2*Kxmj&Op=IIU&t=q%xm>X;yn$Gk|Gui(xbNtdJ@5_=tOmXE zjd6z<_P6^He*gzRzkT-m)4eH)FGy%sGa(h*5+uZrkHRj_VBasUV$7U}I296oRf6~f zID~ubm`5k%yQi4@Q-jMJ<BN+2ZTapugl|20@7?U1mF84y`YgwlS7%*&y(=qM9P;E| zKjhDK4)x_;Glcj9IK*>1i{=bjbDt41@q1pFJ(N+Cfn2V^hTjH*b;y`|-jG5R2IG*` z^$qd3yllkJ*xXVJ;txwqxP6bAO0&$>&$EZKB!2_;E8*T>L3oPnlJyv{6R`LP<*!1^ z_h2kW5HFikGiSwI?}9Mm58#0N)}^!dU$yG0YSU0Z`$g7H|7U9j&*AcsbFa!bPR3oc zS3X-vGdhmDHn-E@%v|!a-{BMrGZ&5^9@R}87QBj^f1AhOXO*&Cz4D(CjWrdOonYcf zZ}?uUXI+eW-V@jcimCeqb{N)&^#tqmzfU0k01krJ!uJMwh!xM4MtaJyq8QGYJ2F-Y zL(B1N$dNzGa{bqKR5VOm&psLrU@Y8Aacf_F6swwWhJjLB*Z%P4NUwfnq4jJD=4Nq^ zqvrVh`B8Ca7Ix8M1n~!OxUUM|Tfj<|;*K`mTWX|O^8DyxvCk;tE$(z+pDjkPQ^U$l z-&+-vtr%0;qo2kdJ?jDovKWeVn|3HRe-*d+0e<G31uB|xpz`Ck1ywPZMcjSkSsC2c z64@cvHwNps=I7@#arKHc5HPW-%v*!posm#msCkRHITYEpJrD_s4S}|R*w!L$ZVE&j z)7XY!B(!<QB@~>8f)h6fLQTO2G0-N~?Pv>%^BeL+Pse=Ek`B>zo0>~wRT}?jdwqQ{ z8r|I9)U-p4wzWi1HPoy$=SpK{9B=SoDhRmyWa)U<;EnhIye(t6OA!!5<@k5i_pj8q zMSbJ$h2tISJ5zmUsc)zH7S(qy-bPe$t1#}ndHrJbjRl*-rRuwKeRHrQ9IS7H<PE|5 zL-kNvusIrP+acZ`Xlf7M3KfWMsGwtE8oQ&S;#SdJwqcELT}w+-ePbZh>|2`e@f9v9 zS|}FfFU`jd5uRLTpch8);$w-i1s;I47mJva(|uc^i!of8GvN}vP^00grbv3xo^Pq` zK)=e9pI;D-)EBH>UA6AcvNg+nRcp#tF28g2niU1>*LiE!7OY)Ywr1V>T3?m7X8GCz z^roOb(&owUU<KQP4WU56ouTH2mhI71>#Eik)J9tFgIb~mWs!#VP;*Pc_R!`~v@sNH zYADd`i<kKtno+bS*c1#zgY1q~>&3FQ;*$I&p8P@<BhjAbVqRgQ{6Xqwj4iF5S=7ok z-VMvwtS#`aT31mJ?5Gch+d?hP|I<P~!G&BvLJIa6B#lAWGYeU^c4a|ZB(N>q(iCbA z{*MYL%w~?1^(jWnwU+soD-kJWykxd;h42YwAbo^)YqcPZ+h;KW4^_wC%srdIQW#TB zg*Y%XH*n+ag24i=0Li+IuQ8#pU}a$e9uLwI%23W|%{OEd9b-GWJl=mm9=$m*rnd)G z60#`c>r7ak{JbQ~hJ(T!<5ks$8m0BSdFy5WK<gN1gc9@vooE$)rVr=ESm_)^2{@dP zkH#7DLAz}hX^DIlw<EkN%k8EEyzZrR<m1R+(L;(Ak=(Gq8oUQ9?ap1oLx$bPJ*K_p zeJKa9a?m3pfyPDtk7&y6?n}tXmk`Yd81P5R?YW?d37v*r#)nM1&3jVzrtY&Guo?x? zo>yu2Ncom3ySrM+YZ;W(@DgOe3=j25lNF7c%Iy~3EnXgDIpo(fKc=tn+d?Mj9syl( zrQNYd*lXBlJivXNhC6W?oT%2D0PbL=-BNDP+AAC|7%J`Vjroo$JL+Dde-G-!Vk{SJ z3ARdm)<eQ>!ye;a(?0Wo6vI)wv(hd?E2a51RIkDjou1?|L|=syF*g4YaEH(?HCku4 zmFAn8?T$)&W@Wx@gWW<kFRcrm@Oi><I-T%x%$OJudR@&#kG>`Nl=8l3?t>V_mc}E2 z)AQ2TS;y-*Nc4}bqvz$BKDM9OMop#N#>Zrz;Q-d(8RgQqaf!Up$>XT2_Hnwrz?~(& zIz1+jl?_ue%zKCcuOdSNF4ENlE>T{YWP^||fupv{?RlDgU$*>mGJL4YKuRN-^f2+) zV0~X^D%aPi&D2bEGnMP>JCf>W>2#v6uP;yTALvYHF%}oVYm=@%+A*C)89g)|^zijb z@PZ_md>E&Xu^Y;fr#+g!{-PxK8o(ICM0>fgy}g2Jcu6?e{xlz>wexw<<t5QRp2P=o zCE7SzZqM8;>@n;$?lT>rML4PMWqetpZZd8f-z2}3%y-~pWV&z}ne@ER&xD7bkD{T0 z%i#5TElO&ek39*92RgTCPUs&kPqrzHNh<s-f5>*gF9Fv~x3NSyXcW2_bGIR1s-xre zQGN{N=!0I)R5!}Wb~otgdHXT8@Y5(K+Z3sNzzxXv&9MHebr$7<hUO)Q@unvkR_8-P z_5>Vbi^#TVesGzoG9LKSgv@%riFyi|HqS`bMH0%gk@WO@-dwsTu{^HUPx3#XSPloD z*uy~H1bvb%B+B*l$zu+^Sz)XEX+wX>+1G08YE{0aR$Wv}F475@3rTw+!+E=irMSWF zY|Ll(*~LnGF6v5lXRW%NU$UM<KUS^($dkSjaCH()Ylt4N>OVnG{#1`oOM?G@^G|N? z|3-e)u|5uax(|J+O7fi;^F-gX)iDFvG#%J41M_;|*$vz!^-%r>%9CYH^ac1o0)IKa zT=&3_0H3V;1RP^G(mJe%iT5TXULS9I5_ko?1Wq3NWH`BgGCmomHB8?=%>_No*T|%~ z3%sos{n-p!>J#*8tHqn1r2P%2YeYHi%k*ob#^V@p#YoBXlJLjS#s|QyL4sTa=anLl zJ>ey5Ajv?y=vk!m51fxu%&x{;52Mb<!pZc>u&O&QR~Wn!u-e`y!87ukq5dbyD}6$L zRNGGIiSxU3Z0&h!`zrm%!r+m>yLIb@zC3IC98J(;EJ*+MJdEoXkXPr{rFd1ID>Ql) zPSpQ@gje;OXy1|4UNW5AKEcpgqP}#g-%8*dIvdsNN?*=(qwDKTbfT`!W~@!x;aY!A z*UPmCa?v4uuX^6q^Tpvjv9{{lCtJ|d(V1I|Bj|b49+=M3{P2Z3n74^O=Uryr>haK5 zR;RGb@DPtN9H8wB?ST^YKaYd5*0(+8y(#-r50E>X)&|y!OzIn*uXX$51dr>J`mS%^ zkM^~?bT%j6*dHY74)fTBM-$;<>;iOp9nd~|CjIKqG@_38x=Z#H)cSOt&s4V?dQtSY z+ccA2aF(4GcSz=~A5Z-_>-T2je?wlq9%_?pL61X!r=5rNZT@%XfL>-jZ|HwU8$`Pw zs|S7CdYSZX>C4IIX#oO#xt@>Ch766|hSpuyhV-_Gh)||Rq}lOI{PpGf@zS+xggltq zlE!kH?dsb-dYN`Fvo>eek^$kN2?#%tfN4LF3`4#I9(I^GQ|QZ!W+>O|Jy{N_|1Q>! zLuk{Z^G90w0Lt}e7`1#c-c0Z3U^~QTaWTppU_0e@#HiF`yoP%UxZO!O=q>YIl+)wC zjBiux=8M4JlVtB2?m^&=CGiD)f^Q7=T5fmhLx!lq{SC=n;6c7EsXp%~r-ELR^s33L zFNd9QUeBNo+CxkeTQ$Tq*YL<<DIH`mq=_~?pl6jy{Yf4hRJgj0D&e8ZdU#zDoQ$V+ z7P?K;KXe)0>iLx>@q=!swO8{AFxfJ6mT0eSx-BKj_5PRNgQA}HSP+ZyAjPx-mLJ`* ztu0W8cUwexH)^>^FdA%Q`H^5#Ab(2>a&5s5{3b3HfNG&DQ<mQpXbNp<X88^3yDl1K z`HjIqnB~{EY}*!WMzw}uUHcYaAQEWa5(HKOL(Q98w0xkhE)u+7gXp42%WuYw0)S{+ zpnj`Xrt(Sj<C8Pjf<!<{iE&yJey80JQUN{LNR&6kI6jvz-h@ye!jUcHA*uX`579aN zDAOK|AHS$XA=;(v%}54~MxVb80P#b+MR*k>clQU#XphEkISNQ7W6ba`A27q0h(^N^ zE%BfSS1}45-Wpze6JDcRucK4@Dhv^U`e=1F0p{(Z>IDV&7qVgP(fIjMKzW+;=mVE8 zhv$_a!chvTZ>7}mIL)U<1>nD`EUW{N#vA+|2Q2(SN2lR-PpA7z0PwAsq5EPI9lquf zwq1tq8`J3yL7q7cIyy}+M^HwxB91?-qNyv1N0aa0P@?70kMD&6iwP=)2Z6JZ=uSX+ z4BtD5OrHwTOXETBi-u(Q!66*WYf%Ot!GcI69|?l*2lV`UFMy89wMXNp!HIWF%|RGW z6I164VBW3{=JG1`%^TyoQS6w*JOs?`6+A(lqO#_6fYoa{u1CVFW3Sj5VCqBS0Zj3O z!~+=LN?d#Z)BH?4fcXWZRsfjJaES*nzOA5VnEwLS>xbl_F%i&Tj;B15T89)J|103@ zG^7gOkObd?`ZXvUgz~_WeOkMZRAHLe{88(F2KpmCIM5jB?;gNecw1C>J154EO23P6 zBpUEk?_d)C3HW_#pB`%e1;CXYQs7>|pVh%{0N$vBf2-!T_Wp|T#QMkRBLK)JB*sLM zN4Ns@F95$u>7Q`p^!h?!5=@SfKWhEkwAhVWe+}B8eo=eW&n6@qXARy9n8r<my8zQ% z(BK~fCjDvfTYxqBi5~`E5HI2l^!-h)4qgD*4cMl%Zzuyyj#}ksxCd~t4#xNhB{~>> zM<~_7F90U}YxM`9PZ4mJqEEv);3XaYBfvC%^sOA^HPZJ$9e{IHcp>1Y0GFt61>kot z);Hb@_*XhO$$pHV2aZ3A{*C*R;K#H*tTG<PZ)<x|6(;=-p^n-g<4*yf2TWfwki4*` zB^OyT<KF<A)B?Os>3~7UAA;S0X?*D+xCXE`FA3fVn8ueLg4+Po_|il0BY>R>$l-4S z7IpBy1J2dK?*ew~;12=kU4+dfpGOBT08Hag585-A0;ch&hv2&bmna~II{=sJ;I9C# z)WJsq*XrQofc-l7Ex=(N{AYX^q=Ljh#S9p4{tyg#mtLWRX9E^>@EpMTIylLHrOa1x zU{3xmMeCaedz0{YCc*dOyM+@dD~1q8)DLOjR;X}Pqj&I33jC82UsLhl!~Cc5-=xC* z@P8sRY^s^f{Y}b1Oj(aARXp^g+*PUYdF@V0g+J21OHklc=&Rrv@Q<nR9L@hbcz;uK z!LJSYQWd`x@-zajQDF)8PxhCq!WeJm%%Q@K@P9GjGgWvy#t$H4fH6L)pM!oT03KBF z`(rF$1bmMQKM8%50`{ozceU?8RQN|||0&>itMDl;4z0q!Mf+!g*V_LZ#ZUobaij6H zFx+d>oX=C}EjI1$K!vY~5iuUXG=<R_<(@;u7ijmQDqIS@1oCVZ_5#iYoT9?(0KWk^ zONBRU%d9F-1UUXE_F#cMD0dYq{rA!T4iKpQvAl@9g(|4^PsG%3S5*3w(8n>LRr|9H zA<rL`|Now@4=ehp>^BsCRtNO=I4Y>)Z_U=uu?l}{(RBH(6_B?Z^lJaDwP+u%k)^5h z^_XwmAHaSw{?@I)sq)kQ$J&bei%@pGO8)@t;X%O1RQORE1$rPq{;Xd{R;!P<6}B)< z{-<F-1E5ju)!KvgWmv7B0{WML4+FkN<$nhDehhGt3X}bKh+c*NsNMOh@c6~~Lh_^; zwC@o(J{)P;f@7Nxhqg!?t8a@m`2zLy^=p1T<7Mq(<ie3qbKB;{(YA&_WQztzmEsU< zZi)E#x46Jm<QL)-Nzc-y#jI>y(M^@*8+~hQy}mnYy{mmI%W665X2z*~o3|6Iz?Pt| zu6=X<vSpr|S$$JW{Z?u_L?>2XQ%j%$KP_Qju(=_*jJ0!`dVHc8xk!{;s0iuX+}>PI zd@IZE@U35q4@UJO6)wA(wMU@<5b(DTCu(0Hx}&+?R~Kk+hy>b#EE*1xxZ6m$=C*pg zeC^GRf#wE$S?oheFcN7Gw=v54=v3@ea1kGl>rFx5%`;+dnGsVwBWBr*m_pCYsKS|1 zOJ+tbof%a$GwP<9Q8TNeaAsW;&a8|=RU6Y3K4bGAqn{b;%&eW6l{2$$Zem-)p%xer zp9W+}fwrQX8tOVO=6v;yp>PymAJ@0}8a8Wq-}XSL%@+v<8g{TPO}=nj#J4TDErG3T zkM3Zq+4<HtM}qY&_Xi`~`j%^794GMWYRY{p+nd@#VHl?rg5fIa^Od(peaj;e%;`#+ zf>pt``o_y3z0HU}wb#>E%t<t>R(cckdaAO92861j7jYy4KFDrEC&49AUXBiK4Yyz( zC5pUFO~EaJCg19CeM>_yQM|r6v<>1@;0kk4*H(g}HWIoYpZ>$eYzVb91*WxA1@A)t zSm3Lj)>cIed?I;3XrQbvN<lGAHC!QTH+*X_4422yKP+4nvT}Milj<cQFH?18O9Q@9 z4_<7`%ZDzc(<E<VB}y*CoEJ}LyS6<XjNBih4ps!3nz+>~vqEtYinT9gJoX2h47Y3# zMtq8EhHI;%qHVtVmgdcBq0Vk$kAUD3@vC_G?OYpt1=;GmKaj9iGGpI1%>tt^0?1Pj zdFm*9s7wv+hq=*XErL$bY;=1F2I*^S@wG(jJ#6!KT0FF+3eFdn3{Q=UG<Pa6i&U_! zJxtJ=;1;-V%%bRys49IzBFK(;hyOxhJ|9IzY0>fdczvp}G7yE6XY>U>Z|9=Zk0w~~ zPC--np8<7FD<bjk`x@%Dpn*Vy`GWV?1yucTku_qjEFb-o3ilC^fKT6TEe-8WLA3(4 zk>IXWXbA_KFH^x64mB&irIsVnB}*~1O4p*Hok8?XS?!bvGL#!`YEqkIzKh?7^U>Z4 zjjH5ae+oBJHJ67nim*gYd}s-6;s52pXm?S+)kke62|nZag9#t^%`ggZ^I(Cm--=0~ z*b#bx*tNQ8*@k~uVZJSBF0l%0YcH#imRGFstzB2?^RDu)L$z&zj%f<e)Ir-H=!17H zp)6mpBOxyzSw1j6U3XCBVt3oa(+!l*7#0dgVD^}0v|HiEq|69y$T?#^fW9Et6Rd-i zlKCZ?SH@YfEY8W-v@M_vIVqYJ6h7J)Z67Wbt^<AuR*U-pLbNyQriIcAbx6bQm{c&# F{{#1ynYI7` literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/scripts/ArduinoWifiShield_upgrade.sh b/libraries/WiFi/extras/scripts/ArduinoWifiShield_upgrade.sh new file mode 100755 index 000000000..b767d769b --- /dev/null +++ b/libraries/WiFi/extras/scripts/ArduinoWifiShield_upgrade.sh @@ -0,0 +1,121 @@ +#!/bin/sh + +#WIFI_FW_PATH="/hardware/arduino/firmwares/wifishield/binary" +WIFI_FW_PATH="/libraries/WiFi/extras/binary" +AVR_TOOLS_PATH="/hardware/tools/avr/bin" + +TARGET_MICRO="at32uc3a1256" + + +progname=$0 + +usage () { +cat <<EOF +Usage: $progname [-a Arduino_path] [-f which_firmware] [-h] + -a set the path where the Arduino IDE is installed + -f the firmware you want to upload, valid parameters are: + shield - to upgrade the WiFi shield firmware + all - to upgrade both firmwares + -h help +EOF + exit 0 +} + +upgradeHDmodule () { + sleep 1 # Give time to the shield to end the boot + echo "****Upgrade HD WiFi module firmware****\n" + dfu-programmer $TARGET_MICRO erase + dfu-programmer $TARGET_MICRO flash --suppress-bootloader-mem $WIFI_FW_PATH/wifi_dnld.hex + dfu-programmer $TARGET_MICRO start + + if [ $? != 0 ] ; then + echo "\nError during device initialization, please close the J3 jumper and press the reset button.\nTry -h for help\n" + exit 1 # if the device is not recognized exit + fi + + echo -n "\nPress the RESET button on the shield then type [ENTER] to upgrade the firmware of the shield..\n" + read readEnter +} + +upgradeShield () { + sleep 1 # Give time to the shield to end the boot + echo "****Upgrade WiFi Shield firmware****\n" + dfu-programmer $TARGET_MICRO erase + dfu-programmer $TARGET_MICRO flash --suppress-bootloader-mem $WIFI_FW_PATH/wifiHD.hex + dfu-programmer $TARGET_MICRO start + + if [ $? != 0 ] ; then + echo "\nError during device initialization, please close the J3 jumper and press the reset button.\nTry -h for help\n" + exit 1 # if the device is not recognized exit + fi + + echo "\nDone. Remove the J3 jumper and press the RESET button on the shield." + echo "Thank you!\n" +} + + +cat <<EOF + + Arduino WiFi Shield upgrade +========================================= +Instructions: + +To access to the USB devices correctly, the dfu-programmer needs to have the root permissions. + +You can upgrade the firmware of the antenna togheter with the shield firmware or only the shield firmware +if there aren't changes on the antenna firmware. + +Use the '-h' parameter for help +========================================= + +EOF + +if [ $USER = 'root' ] ; then #check if the current user is root + while getopts ":a:f:h" opt; do + case $opt in + a) + ARDUINO_PATH=$OPTARG + WIFI_FW_PATH=$ARDUINO_PATH$WIFI_FW_PATH + AVR_TOOLS_PATH=$ARDUINO_PATH$AVR_TOOLS_PATH + cd $AVR_TOOLS_PATH + ./avr-objcopy --output-target=ihex $WIFI_FW_PATH/wifi_dnld.elf $WIFI_FW_PATH/wifi_dnld.hex + ./avr-objcopy --output-target=ihex $WIFI_FW_PATH/wifiHD.elf $WIFI_FW_PATH/wifiHD.hex + ;; + f) + if [ "$ARDUINO_PATH" != "" ] ; then + if [ "$OPTARG" = "all" ] ; then + upgradeHDmodule + upgradeShield + exit 0 + else + if [ "$OPTARG" = "shield" ] ; then + upgradeShield + exit 0 + else + echo "invalid parameter for the -f [firmware] option, please retry." + echo "Type -h for help\n" + exit 1 + fi + fi + else + echo "Arduino Path not setted. Retry...\n" + fi + ;; + h) + usage ;; + \?) + echo "Invalid option: $OPTARG" >&2 + usage + exit 1 + ;; + :) + echo "Option -$OPTARG requires an argument." >&2 + exit 1 + ;; + esac + done +else + echo "Please retry running the script as root.\n" +fi + +shift $(($OPTIND - 1)) diff --git a/libraries/WiFi/extras/wifiHD/.cproject b/libraries/WiFi/extras/wifiHD/.cproject new file mode 100644 index 000000000..fa7fcdd69 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/.cproject @@ -0,0 +1,4045 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?> + +<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> +<storageModule moduleId="org.eclipse.cdt.core.settings"> +<cconfiguration id="avr32.managedbuild.config.gnu.exe.debug.1622245200"> +<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="avr32.managedbuild.config.gnu.exe.debug.1622245200" moduleId="org.eclipse.cdt.core.settings" name="Debug"> +<externalSettings/> +<extensions> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.atmel.avr.toolchain.avr32gcc.elf32-avr32" point="org.eclipse.cdt.core.BinaryParser"/> +<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +</extensions> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<configuration artifactName="wifiHD" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="AVR32 Standalone debug configuration" id="avr32.managedbuild.config.gnu.exe.debug.1622245200" name="Debug" parent="avr32.managedbuild.config.gnu.exe.debug" postannouncebuildStep="Size Before build" postbuildStep="avr32-size ${BuildArtifactFileName}" preannouncebuildStep="" prebuildStep=""> +<folderInfo id="avr32.managedbuild.config.gnu.exe.debug.1622245200." name="/" resourcePath=""> +<toolChain id="avr32.managedbuild.toolchain.gnu.exe.debug.1787446984" name="32-bit AVR/GNU C/C++ Toolchain" superClass="avr32.managedbuild.toolchain.gnu.exe.debug"> +<targetPlatform id="avr32.managedbuild.target.gnu.platform.exe.debug.1577294140" name="%PlatformName.Dbg" superClass="avr32.managedbuild.target.gnu.platform.exe.debug"/> +<builder buildPath="${workspace_loc:/wifiHD/Debug}" enableAutoBuild="false" id="avr32.managedbuild.target.gnu.builder.exe.debug.860077655" keepEnvironmentInBuildfile="false" name="CDT Internal Builder" superClass="avr32.managedbuild.target.gnu.builder.exe.debug"/> +<tool id="avr32.managedbuild.tool.gnu.archiver.exe.debug.716199814" name="32-bit AVR/GNU Archiver" superClass="avr32.managedbuild.tool.gnu.archiver.exe.debug"/> +<tool id="avr32.managedbuild.tool.gnu.cpp.compiler.exe.debug.2050435638" name="32-bit AVR/GNU C++ Compiler" superClass="avr32.managedbuild.tool.gnu.cpp.compiler.exe.debug"> +<option id="gnu.cpp.compiler.option.optimization.level.167185469" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/> +<option id="gnu.cpp.compiler.option.debugging.level.1072153032" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/> +<option id="avr32.cpp.compiler.option.mcu.538485808" name="Microcontroller Unit" superClass="avr32.cpp.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.compiler.option.include.paths.1291994818" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +</option> +<option id="avr32.cpp.compiler.option.flashvault.1873560474" name="Enable FlashVault support" superClass="avr32.cpp.compiler.option.flashvault" value="false" valueType="boolean"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1012366065" name="32-bit AVR/GNU C Compiler" superClass="avr32.managedbuild.tool.gnu.c.compiler.exe.debug"> +<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.187661945" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" value="gnu.c.optimization.level.optimize" valueType="enumerated"/> +<option id="gnu.c.compiler.option.debugging.level.957359437" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> +<option id="avr32.c.compiler.option.mcu.442256180" name="Microcontroller Unit" superClass="avr32.c.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.compiler.option.optimization.flags.1362317068" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections -ffunction-sections" valueType="string"/> +<option id="gnu.c.compiler.option.preprocessor.def.symbols.2032815329" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> +<listOptionValue builtIn="false" value="BOARD=ARDUINO"/> +<listOptionValue builtIn="false" value="NO_SYS"/> +<listOptionValue builtIn="false" value="_DEBUG_"/> +<listOptionValue builtIn="false" value="_ASSERT_ENABLE_"/> +<listOptionValue builtIn="false" value="WITH_KEY"/> +<listOptionValue builtIn="false" value="WITH_WPA"/> +<listOptionValue builtIn="false" value="WITH_NO_DMA"/> +<listOptionValue builtIn="false" value="DATAFLASH=1"/> +<listOptionValue builtIn="false" value="_INFO_DEBUG_=1"/> +</option> +<option id="gnu.c.compiler.option.include.paths.199111087" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD"/> +</option> +<option id="avr32.c.compiler.option.flashvault.1511808014" name="Enable FlashVault support" superClass="avr32.c.compiler.option.flashvault" value="false" valueType="boolean"/> +<option id="avr32.c.compiler.option.fpic.1413737757" name="Generate position-independent code" superClass="avr32.c.compiler.option.fpic" value="false" valueType="boolean"/> +<option id="avr32.c.compiler.option.mforce-double-align.1833231832" name="Force double-word alignment" superClass="avr32.c.compiler.option.mforce-double-align" value="true" valueType="boolean"/> +<option id="gnu.c.compiler.option.warnings.pedantic.error.266375625" name="Pedantic warnings as errors (-pedantic-errors)" superClass="gnu.c.compiler.option.warnings.pedantic.error" value="false" valueType="boolean"/> +<option id="gnu.c.compiler.option.warnings.toerrors.1148543352" name="Warnings as errors (-Werror)" superClass="gnu.c.compiler.option.warnings.toerrors" value="false" valueType="boolean"/> +<option id="gnu.c.compiler.option.misc.verbose.1690548506" name="Verbose (-v)" superClass="gnu.c.compiler.option.misc.verbose" value="false" valueType="boolean"/> +<option id="gnu.c.compiler.option.misc.other.617535058" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-c -fmessage-length=0" valueType="string"/> +<inputType id="avr32.managedbuild.tool.gnu.c.compiler.input.253539519" superClass="avr32.managedbuild.tool.gnu.c.compiler.input"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.linker.exe.debug.1134510857" name="32-bit AVR/GNU C Linker" superClass="avr32.managedbuild.tool.gnu.c.linker.exe.debug"> +<option id="avr32.c.linker.option.mcu.208178139" name="Microcontroller Unit" superClass="avr32.c.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.link.option.nostart.975559445" name="Do not use standard start files (-nostartfiles)" superClass="gnu.c.link.option.nostart" value="true" valueType="boolean"/> +<option id="gnu.c.link.option.ldflags.569230699" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/> +<option id="gnu.c.link.option.paths.1433794230" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="&quot;${workspace_loc:/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC}&quot;"/> +</option> +<option id="gnu.c.link.option.libs.1720035119" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +<listOptionValue builtIn="false" value="_ucr2_hd_spi_v2.7.0"/> +<listOptionValue builtIn="false" value="_ucr2_hd_wl_sta_intwpa_v2.7.0"/> +</option> +<option id="gnu.c.link.option.strip.878241046" name="Omit all symbol information (-s)" superClass="gnu.c.link.option.strip" value="false" valueType="boolean"/> +<option id="avr32.c.linker.option.gc-sections.1193662367" name="Garbage collect unused sections" superClass="avr32.c.linker.option.gc-sections" value="true" valueType="boolean"/> +<option id="avr32.c.linker.option.rodata-writable.1710110734" name="Put read-only data in writable data section" superClass="avr32.c.linker.option.rodata-writable" value="true" valueType="boolean"/> +<option id="avr32.c.linker.option.fpic.953076621" name="Generate position-independent code" superClass="avr32.c.linker.option.fpic" value="false" valueType="boolean"/> +<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.974320538" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> +<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> +<additionalInput kind="additionalinput" paths="$(LIBS)"/> +</inputType> +</tool> +<tool id="avr32.managedbuild.tool.gnu.cpp.linker.exe.debug.2023008784" name="32-bit AVR/GNU C++ Linker" superClass="avr32.managedbuild.tool.gnu.cpp.linker.exe.debug"> +<option id="avr32.cpp.linker.option.mcu.1842160542" name="Microcontroller Unit" superClass="avr32.cpp.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.link.option.libs.553570579" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<option id="gnu.cpp.link.option.paths.1808219646" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.assembler.exe.debug.1265602469" name="32-bit AVR/GNU Assembler" superClass="avr32.managedbuild.tool.gnu.assembler.exe.debug"> +<option id="avr32.both.asm.option.debugging.level.1267695286" name="Debug Level" superClass="avr32.both.asm.option.debugging.level" value="avr32.both.asm.debugging.level.max" valueType="enumerated"/> +<option id="avr32.both.asm.option.mcu.1719949047" name="Microcontroller Unit" superClass="avr32.both.asm.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.both.asm.option.include.paths.856598085" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.preprocessor.exe.debug.634227134" name="32-bit AVR/GNU Preprocessing Assembler" superClass="avr32.managedbuild.tool.gnu.preprocessor.exe.debug"> +<option id="avr32.both.preprocessor.option.debugging.level.1586886701" name="Debug Level" superClass="avr32.both.preprocessor.option.debugging.level" value="avr32.both.preprocessor.debugging.level.max" valueType="enumerated"/> +<option id="avr32.both.preprocessor.option.mcu.1298401384" name="Microcontroller Unit" superClass="avr32.both.preprocessor.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="avr32.both.preprocessor.option.flags.1724795968" name="Assembler flags" superClass="avr32.both.preprocessor.option.flags" value="-Wa,-g" valueType="string"/> +<option id="avr32.both.preprocessor.option.paths.1859276996" name="Include paths (-I)" superClass="avr32.both.preprocessor.option.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<inputType id="avr32.managedbuild.tool.gnu.preprocessor.input.678543067" superClass="avr32.managedbuild.tool.gnu.preprocessor.input"/> +</tool> +</toolChain> +</folderInfo> +<sourceEntries> +<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<entry excluding="spb.h|httpd.h|httpd.c|platform_spi.h|clocks.c|clocks.h|nor_flash.h|nor_flash.c|wl_util.h|wl_util.c|startup.h|startup.c|ttcp.h|ttcp.c|fsdata.c|hdwireless_gif.h|http_server_gui.h|http_server_gui.c|SOFTWARE_FRAMEWORK/COMPONENTS/TOUCH|SOFTWARE_FRAMEWORK/DRIVERS/ADC|SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h|gui.c|SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC|SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY|SOFTWARE_FRAMEWORK/COMPONENTS/DISPLAY/ET024006DHU|gui_getstring.c|SOFTWARE_FRAMEWORK/BOARDS/EVK1105" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/> +</sourceEntries> +</configuration> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +<storageModule moduleId="scannerConfiguration"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445;avr32.managedbuild.config.gnu.exe.release.1761605428.53366445.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1297103917;avr32.managedbuild.tool.gnu.c.compiler.input.1475497800"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200;avr32.managedbuild.config.gnu.exe.debug.1622245200.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1012366065;avr32.managedbuild.tool.gnu.c.compiler.input.253539519"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753;avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1323919988;avr32.managedbuild.tool.gnu.c.compiler.input.253409817"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428;avr32.managedbuild.config.gnu.exe.release.1761605428.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1267623154;avr32.managedbuild.tool.gnu.c.compiler.input.233400464"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +</cconfiguration> +<cconfiguration id="avr32.managedbuild.config.gnu.exe.release.1761605428"> +<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="avr32.managedbuild.config.gnu.exe.release.1761605428" moduleId="org.eclipse.cdt.core.settings" name="Release"> +<externalSettings/> +<extensions> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.atmel.avr.toolchain.avr32gcc.elf32-avr32" point="org.eclipse.cdt.core.BinaryParser"/> +<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +</extensions> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<configuration artifactName="wifiHD" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="AVR32 Standalone release configuration" id="avr32.managedbuild.config.gnu.exe.release.1761605428" name="Release" parent="avr32.managedbuild.config.gnu.exe.release"> +<folderInfo id="avr32.managedbuild.config.gnu.exe.release.1761605428." name="/" resourcePath=""> +<toolChain id="avr32.managedbuild.toolchain.gnu.exe.release.192267767" name="32-bit AVR/GNU C/C++ Toolchain" superClass="avr32.managedbuild.toolchain.gnu.exe.release"> +<targetPlatform id="avr32.managedbuild.target.gnu.platform.exe.release.1727872047" name="%PlatformName.Dbg" superClass="avr32.managedbuild.target.gnu.platform.exe.release"/> +<builder buildPath="${workspace_loc:/wifiHD/Release}" id="avr32.managedbuild.target.gnu.builder.exe.release.1711429384" keepEnvironmentInBuildfile="false" name="CDT Internal Builder" superClass="avr32.managedbuild.target.gnu.builder.exe.release"/> +<tool id="avr32.managedbuild.tool.gnu.archiver.exe.release.105383899" name="32-bit AVR/GNU Archiver" superClass="avr32.managedbuild.tool.gnu.archiver.exe.release"/> +<tool id="avr32.managedbuild.tool.gnu.cpp.compiler.exe.release.945608372" name="32-bit AVR/GNU C++ Compiler" superClass="avr32.managedbuild.tool.gnu.cpp.compiler.exe.release"> +<option id="gnu.cpp.compiler.option.optimization.level.502745007" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/> +<option id="gnu.cpp.compiler.option.debugging.level.1743210246" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/> +<option defaultValue="gnu.c.optimization.level.most" id="avr32.cpp.compiler.option.optimization.level.release.1516030118" name="Optimization Level" superClass="avr32.cpp.compiler.option.optimization.level.release" valueType="enumerated"/> +<option id="avr32.cpp.compiler.option.mcu.1422527380" name="Microcontroller Unit" superClass="avr32.cpp.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.compiler.option.include.paths.866682810" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +</option> +<option id="avr32.cpp.compiler.option.flashvault.576086454" name="Enable FlashVault support" superClass="avr32.cpp.compiler.option.flashvault" value="false" valueType="boolean"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.compiler.exe.release.1267623154" name="32-bit AVR/GNU C Compiler" superClass="avr32.managedbuild.tool.gnu.c.compiler.exe.release"> +<option defaultValue="gnu.c.optimization.level.most" id="avr32.c.compiler.option.optimization.level.release.1407195495" name="Optimization Level" superClass="avr32.c.compiler.option.optimization.level.release" value="gnu.c.optimization.level.optimize" valueType="enumerated"/> +<option id="gnu.c.compiler.option.debugging.level.1207086846" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> +<option id="avr32.c.compiler.option.mcu.645886185" name="Microcontroller Unit" superClass="avr32.c.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.compiler.option.optimization.flags.1349270325" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections" valueType="string"/> +<option id="gnu.c.compiler.option.preprocessor.def.symbols.1416657670" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> +<listOptionValue builtIn="false" value="BOARD=ARDUINO"/> +<listOptionValue builtIn="false" value="_ASSERT_ENABLE_"/> +<listOptionValue builtIn="false" value="EXT_BOARD=SPB104"/> +<listOptionValue builtIn="false" value="WITH_KEY"/> +<listOptionValue builtIn="false" value="WITH_WPA"/> +<listOptionValue builtIn="false" value="WITH_NO_DMA"/> +<listOptionValue builtIn="false" value="DATAFLASH=1"/> +<listOptionValue builtIn="false" value="_INFO_DEBUG_=1"/> +</option> +<option id="gnu.c.compiler.option.include.paths.1012245137" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD"/> +</option> +<option id="avr32.c.compiler.option.flashvault.579935240" name="Enable FlashVault support" superClass="avr32.c.compiler.option.flashvault" value="false" valueType="boolean"/> +<option id="avr32.c.compiler.option.muse-rodata-section.46188949" name="Use section .rodata for read-only data" superClass="avr32.c.compiler.option.muse-rodata-section" value="false" valueType="boolean"/> +<option id="avr32.c.compiler.option.mforce-double-align.1255447070" name="Force double-word alignment" superClass="avr32.c.compiler.option.mforce-double-align" value="true" valueType="boolean"/> +<inputType id="avr32.managedbuild.tool.gnu.c.compiler.input.233400464" superClass="avr32.managedbuild.tool.gnu.c.compiler.input"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.linker.exe.release.166522415" name="32-bit AVR/GNU C Linker" superClass="avr32.managedbuild.tool.gnu.c.linker.exe.release"> +<option id="avr32.c.linker.option.mcu.1388034810" name="Microcontroller Unit" superClass="avr32.c.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.link.option.nostart.1724907067" name="Do not use standard start files (-nostartfiles)" superClass="gnu.c.link.option.nostart" value="true" valueType="boolean"/> +<option id="gnu.c.link.option.ldflags.870159720" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/> +<option id="gnu.c.link.option.paths.1927497406" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC"/> +</option> +<option id="gnu.c.link.option.libs.161654023" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +<listOptionValue builtIn="false" value="_ucr2_hd_wl_sta_intwpa_v2.7.0"/> +<listOptionValue builtIn="false" value="_ucr2_hd_spi_v2.7.0"/> +</option> +<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.506365499" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> +<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> +<additionalInput kind="additionalinput" paths="$(LIBS)"/> +</inputType> +</tool> +<tool id="avr32.managedbuild.tool.gnu.cpp.linker.exe.release.1069051853" name="32-bit AVR/GNU C++ Linker" superClass="avr32.managedbuild.tool.gnu.cpp.linker.exe.release"> +<option id="avr32.cpp.linker.option.mcu.1425379346" name="Microcontroller Unit" superClass="avr32.cpp.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.link.option.libs.672185409" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<option id="gnu.cpp.link.option.paths.58237415" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.assembler.exe.release.241240345" name="32-bit AVR/GNU Assembler" superClass="avr32.managedbuild.tool.gnu.assembler.exe.release"> +<option id="avr32.both.asm.option.debugging.level.1277884270" name="Debug Level" superClass="avr32.both.asm.option.debugging.level" value="avr32.both.asm.debugging.level.none" valueType="enumerated"/> +<option id="avr32.both.asm.option.mcu.856977235" name="Microcontroller Unit" superClass="avr32.both.asm.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.both.asm.option.include.paths.1233318581" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.preprocessor.exe.release.324928388" name="32-bit AVR/GNU Preprocessing Assembler" superClass="avr32.managedbuild.tool.gnu.preprocessor.exe.release"> +<option id="avr32.both.preprocessor.option.debugging.level.1893617259" name="Debug Level" superClass="avr32.both.preprocessor.option.debugging.level" value="avr32.both.preprocessor.debugging.level.none" valueType="enumerated"/> +<option id="avr32.both.preprocessor.option.mcu.1546028534" name="Microcontroller Unit" superClass="avr32.both.preprocessor.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="avr32.both.preprocessor.option.flags.211248019" name="Assembler flags" superClass="avr32.both.preprocessor.option.flags" value="-Wa,-g" valueType="string"/> +<option id="avr32.both.preprocessor.option.paths.108191235" name="Include paths (-I)" superClass="avr32.both.preprocessor.option.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<inputType id="avr32.managedbuild.tool.gnu.preprocessor.input.1319925321" superClass="avr32.managedbuild.tool.gnu.preprocessor.input"/> +</tool> +</toolChain> +</folderInfo> +<sourceEntries> +<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<entry excluding="spb.h|httpd.h|httpd.c|platform_spi.h|clocks.c|clocks.h|nor_flash.h|nor_flash.c|wl_util.h|wl_util.c|startup.h|startup.c|ttcp.h|ttcp.c|fsdata.c|hdwireless_gif.h|http_server_gui.h|http_server_gui.c|SOFTWARE_FRAMEWORK/COMPONENTS/TOUCH|SOFTWARE_FRAMEWORK/DRIVERS/ADC|SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h|gui.c|SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC|SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY|SOFTWARE_FRAMEWORK/COMPONENTS/DISPLAY/ET024006DHU|gui_getstring.c|SOFTWARE_FRAMEWORK/BOARDS/EVK1105" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/> +</sourceEntries> +</configuration> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +<storageModule moduleId="scannerConfiguration"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445;avr32.managedbuild.config.gnu.exe.release.1761605428.53366445.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1297103917;avr32.managedbuild.tool.gnu.c.compiler.input.1475497800"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200;avr32.managedbuild.config.gnu.exe.debug.1622245200.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1012366065;avr32.managedbuild.tool.gnu.c.compiler.input.253539519"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753;avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1323919988;avr32.managedbuild.tool.gnu.c.compiler.input.253409817"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428;avr32.managedbuild.config.gnu.exe.release.1761605428.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1267623154;avr32.managedbuild.tool.gnu.c.compiler.input.233400464"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +</cconfiguration> +<cconfiguration id="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753"> +<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753" moduleId="org.eclipse.cdt.core.settings" name="Debug_512"> +<externalSettings/> +<extensions> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.atmel.avr.toolchain.avr32gcc.elf32-avr32" point="org.eclipse.cdt.core.BinaryParser"/> +<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +</extensions> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<configuration artifactName="wifiHD" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="Debug version with UC3A1512" id="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753" name="Debug_512" parent="avr32.managedbuild.config.gnu.exe.debug" postannouncebuildStep="Size Before build" postbuildStep="avr32-size ${BuildArtifactFileName}" preannouncebuildStep="" prebuildStep=""> +<folderInfo id="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753." name="/" resourcePath=""> +<toolChain id="avr32.managedbuild.toolchain.gnu.exe.debug.2083074440" name="32-bit AVR/GNU C/C++ Toolchain" superClass="avr32.managedbuild.toolchain.gnu.exe.debug"> +<targetPlatform id="avr32.managedbuild.target.gnu.platform.exe.debug.38192914" name="%PlatformName.Dbg" superClass="avr32.managedbuild.target.gnu.platform.exe.debug"/> +<builder buildPath="${workspace_loc:/wifiHD/Debug}" enableAutoBuild="false" id="avr32.managedbuild.target.gnu.builder.exe.debug.400270958" keepEnvironmentInBuildfile="false" name="CDT Internal Builder" superClass="avr32.managedbuild.target.gnu.builder.exe.debug"/> +<tool id="avr32.managedbuild.tool.gnu.archiver.exe.debug.1395287317" name="32-bit AVR/GNU Archiver" superClass="avr32.managedbuild.tool.gnu.archiver.exe.debug"/> +<tool id="avr32.managedbuild.tool.gnu.cpp.compiler.exe.debug.1383760306" name="32-bit AVR/GNU C++ Compiler" superClass="avr32.managedbuild.tool.gnu.cpp.compiler.exe.debug"> +<option id="gnu.cpp.compiler.option.optimization.level.1237270418" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/> +<option id="gnu.cpp.compiler.option.debugging.level.203852406" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/> +<option id="avr32.cpp.compiler.option.mcu.829173507" name="Microcontroller Unit" superClass="avr32.cpp.compiler.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.cpp.compiler.option.include.paths.43763334" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +</option> +<option id="avr32.cpp.compiler.option.flashvault.1105479483" name="Enable FlashVault support" superClass="avr32.cpp.compiler.option.flashvault" value="false" valueType="boolean"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1323919988" name="32-bit AVR/GNU C Compiler" superClass="avr32.managedbuild.tool.gnu.c.compiler.exe.debug"> +<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.1800930086" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" value="gnu.c.optimization.level.optimize" valueType="enumerated"/> +<option id="gnu.c.compiler.option.debugging.level.741746123" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> +<option id="avr32.c.compiler.option.mcu.783032953" name="Microcontroller Unit" superClass="avr32.c.compiler.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.c.compiler.option.optimization.flags.603264233" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections" valueType="string"/> +<option id="gnu.c.compiler.option.preprocessor.def.symbols.1502866122" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> +<listOptionValue builtIn="false" value="BOARD=ARDUINO"/> +<listOptionValue builtIn="false" value="_APP_DEBUG_"/> +<listOptionValue builtIn="false" value="_DEBUG_"/> +<listOptionValue builtIn="false" value="_ASSERT_ENABLE_"/> +<listOptionValue builtIn="false" value="EXT_BOARD=SPB104"/> +<listOptionValue builtIn="false" value="WITH_KEY"/> +<listOptionValue builtIn="false" value="WITH_WPA"/> +<listOptionValue builtIn="false" value="WITH_NO_DMA"/> +<listOptionValue builtIn="false" value="LWIP_DEBUG"/> +<listOptionValue builtIn="false" value="_INFO_DEBUG_=1"/> +</option> +<option id="gnu.c.compiler.option.include.paths.1906241430" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD"/> +</option> +<option id="avr32.c.compiler.option.flashvault.1472510326" name="Enable FlashVault support" superClass="avr32.c.compiler.option.flashvault" value="false" valueType="boolean"/> +<inputType id="avr32.managedbuild.tool.gnu.c.compiler.input.253409817" superClass="avr32.managedbuild.tool.gnu.c.compiler.input"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.linker.exe.debug.626271173" name="32-bit AVR/GNU C Linker" superClass="avr32.managedbuild.tool.gnu.c.linker.exe.debug"> +<option id="avr32.c.linker.option.mcu.538638440" name="Microcontroller Unit" superClass="avr32.c.linker.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.c.link.option.nostart.1656241739" name="Do not use standard start files (-nostartfiles)" superClass="gnu.c.link.option.nostart" value="true" valueType="boolean"/> +<option id="gnu.c.link.option.ldflags.87118628" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections" valueType="string"/> +<option id="gnu.c.link.option.paths.812828263" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.1.1/UCR2/GCC"/> +</option> +<option id="gnu.c.link.option.libs.1653832984" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +<listOptionValue builtIn="false" value="_ucr2_hd_spi_standalone_v2.1.1"/> +<listOptionValue builtIn="false" value="_ucr2_hd_wl_standalone_v2.1.1"/> +</option> +<option id="gnu.c.link.option.strip.877150339" name="Omit all symbol information (-s)" superClass="gnu.c.link.option.strip" value="false" valueType="boolean"/> +<option id="avr32.c.linker.option.gc-sections.1011245889" name="Garbage collect unused sections" superClass="avr32.c.linker.option.gc-sections" value="true" valueType="boolean"/> +<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.1861379244" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> +<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> +<additionalInput kind="additionalinput" paths="$(LIBS)"/> +</inputType> +</tool> +<tool id="avr32.managedbuild.tool.gnu.cpp.linker.exe.debug.1598170753" name="32-bit AVR/GNU C++ Linker" superClass="avr32.managedbuild.tool.gnu.cpp.linker.exe.debug"> +<option id="avr32.cpp.linker.option.mcu.1325073325" name="Microcontroller Unit" superClass="avr32.cpp.linker.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.cpp.link.option.libs.124073665" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<option id="gnu.cpp.link.option.paths.550636764" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.assembler.exe.debug.417825307" name="32-bit AVR/GNU Assembler" superClass="avr32.managedbuild.tool.gnu.assembler.exe.debug"> +<option id="avr32.both.asm.option.debugging.level.806412699" name="Debug Level" superClass="avr32.both.asm.option.debugging.level" value="avr32.both.asm.debugging.level.max" valueType="enumerated"/> +<option id="avr32.both.asm.option.mcu.1562959054" name="Microcontroller Unit" superClass="avr32.both.asm.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.both.asm.option.include.paths.1195320391" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.preprocessor.exe.debug.274353966" name="32-bit AVR/GNU Preprocessing Assembler" superClass="avr32.managedbuild.tool.gnu.preprocessor.exe.debug"> +<option id="avr32.both.preprocessor.option.debugging.level.8654492" name="Debug Level" superClass="avr32.both.preprocessor.option.debugging.level" value="avr32.both.preprocessor.debugging.level.max" valueType="enumerated"/> +<option id="avr32.both.preprocessor.option.mcu.1357262899" name="Microcontroller Unit" superClass="avr32.both.preprocessor.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="avr32.both.preprocessor.option.flags.1867526301" name="Assembler flags" superClass="avr32.both.preprocessor.option.flags" value="-Wa,-g" valueType="string"/> +<option id="avr32.both.preprocessor.option.paths.703046204" name="Include paths (-I)" superClass="avr32.both.preprocessor.option.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<inputType id="avr32.managedbuild.tool.gnu.preprocessor.input.1411171721" superClass="avr32.managedbuild.tool.gnu.preprocessor.input"/> +</tool> +</toolChain> +</folderInfo> +<sourceEntries> +<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<entry excluding="spb.h|httpd.h|httpd.c|platform_spi.h|clocks.c|clocks.h|nor_flash.h|nor_flash.c|wl_util.h|wl_util.c|startup.h|startup.c|ttcp.h|ttcp.c|fsdata.c|hdwireless_gif.h|http_server_gui.h|http_server_gui.c|SOFTWARE_FRAMEWORK/COMPONENTS/TOUCH|SOFTWARE_FRAMEWORK/DRIVERS/ADC|SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h|gui.c|SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC|SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY|SOFTWARE_FRAMEWORK/COMPONENTS/DISPLAY/ET024006DHU|gui_getstring.c|SOFTWARE_FRAMEWORK/BOARDS/EVK1105" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/> +</sourceEntries> +</configuration> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +<storageModule moduleId="scannerConfiguration"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445;avr32.managedbuild.config.gnu.exe.release.1761605428.53366445.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1297103917;avr32.managedbuild.tool.gnu.c.compiler.input.1475497800"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200;avr32.managedbuild.config.gnu.exe.debug.1622245200.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1012366065;avr32.managedbuild.tool.gnu.c.compiler.input.253539519"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753;avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1323919988;avr32.managedbuild.tool.gnu.c.compiler.input.253409817"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428;avr32.managedbuild.config.gnu.exe.release.1761605428.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1267623154;avr32.managedbuild.tool.gnu.c.compiler.input.233400464"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +</cconfiguration> +<cconfiguration id="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445"> +<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445" moduleId="org.eclipse.cdt.core.settings" name="Release_512"> +<externalSettings/> +<extensions> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.atmel.avr.toolchain.avr32gcc.elf32-avr32" point="org.eclipse.cdt.core.BinaryParser"/> +<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +</extensions> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<configuration artifactName="wifiHD" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="Release version for UC3A1512" id="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445" name="Release_512" parent="avr32.managedbuild.config.gnu.exe.release"> +<folderInfo id="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445." name="/" resourcePath=""> +<toolChain id="avr32.managedbuild.toolchain.gnu.exe.release.567531772" name="32-bit AVR/GNU C/C++ Toolchain" superClass="avr32.managedbuild.toolchain.gnu.exe.release"> +<targetPlatform id="avr32.managedbuild.target.gnu.platform.exe.release.316254328" name="%PlatformName.Dbg" superClass="avr32.managedbuild.target.gnu.platform.exe.release"/> +<builder buildPath="${workspace_loc:/wifiHD/Release}" id="avr32.managedbuild.target.gnu.builder.exe.release.1357743529" keepEnvironmentInBuildfile="false" name="CDT Internal Builder" superClass="avr32.managedbuild.target.gnu.builder.exe.release"/> +<tool id="avr32.managedbuild.tool.gnu.archiver.exe.release.761598511" name="32-bit AVR/GNU Archiver" superClass="avr32.managedbuild.tool.gnu.archiver.exe.release"/> +<tool id="avr32.managedbuild.tool.gnu.cpp.compiler.exe.release.137271919" name="32-bit AVR/GNU C++ Compiler" superClass="avr32.managedbuild.tool.gnu.cpp.compiler.exe.release"> +<option id="gnu.cpp.compiler.option.optimization.level.1518389785" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/> +<option id="gnu.cpp.compiler.option.debugging.level.1317941226" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/> +<option defaultValue="gnu.c.optimization.level.most" id="avr32.cpp.compiler.option.optimization.level.release.888183134" name="Optimization Level" superClass="avr32.cpp.compiler.option.optimization.level.release" valueType="enumerated"/> +<option id="avr32.cpp.compiler.option.mcu.501397069" name="Microcontroller Unit" superClass="avr32.cpp.compiler.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.cpp.compiler.option.include.paths.721469775" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +</option> +<option id="avr32.cpp.compiler.option.flashvault.194576687" name="Enable FlashVault support" superClass="avr32.cpp.compiler.option.flashvault" value="false" valueType="boolean"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.compiler.exe.release.1297103917" name="32-bit AVR/GNU C Compiler" superClass="avr32.managedbuild.tool.gnu.c.compiler.exe.release"> +<option defaultValue="gnu.c.optimization.level.most" id="avr32.c.compiler.option.optimization.level.release.920485052" name="Optimization Level" superClass="avr32.c.compiler.option.optimization.level.release" value="gnu.c.optimization.level.optimize" valueType="enumerated"/> +<option id="gnu.c.compiler.option.debugging.level.601864900" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> +<option id="avr32.c.compiler.option.mcu.1939612987" name="Microcontroller Unit" superClass="avr32.c.compiler.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.c.compiler.option.optimization.flags.1605444587" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections" valueType="string"/> +<option id="gnu.c.compiler.option.preprocessor.def.symbols.2051999757" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> +<listOptionValue builtIn="false" value="BOARD=ARDUINO"/> +<listOptionValue builtIn="false" value="_ASSERT_ENABLE_"/> +<listOptionValue builtIn="false" value="EXT_BOARD=SPB104"/> +<listOptionValue builtIn="false" value="WITH_KEY"/> +<listOptionValue builtIn="false" value="WITH_WPA"/> +<listOptionValue builtIn="false" value="WITH_NO_DMA"/> +<listOptionValue builtIn="false" value="LWIP_DEBUG"/> +<listOptionValue builtIn="false" value="_INFO_DEBUG_=1"/> +</option> +<option id="gnu.c.compiler.option.include.paths.193739172" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD"/> +</option> +<option id="avr32.c.compiler.option.flashvault.706805068" name="Enable FlashVault support" superClass="avr32.c.compiler.option.flashvault" value="false" valueType="boolean"/> +<inputType id="avr32.managedbuild.tool.gnu.c.compiler.input.1475497800" superClass="avr32.managedbuild.tool.gnu.c.compiler.input"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.linker.exe.release.1288338195" name="32-bit AVR/GNU C Linker" superClass="avr32.managedbuild.tool.gnu.c.linker.exe.release"> +<option id="avr32.c.linker.option.mcu.1925600688" name="Microcontroller Unit" superClass="avr32.c.linker.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.c.link.option.nostart.2039417085" name="Do not use standard start files (-nostartfiles)" superClass="gnu.c.link.option.nostart" value="true" valueType="boolean"/> +<option id="gnu.c.link.option.ldflags.1722356522" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections" valueType="string"/> +<option id="gnu.c.link.option.paths.1959265164" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.1.1/UCR2/GCC"/> +</option> +<option id="gnu.c.link.option.libs.1049639323" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +<listOptionValue builtIn="false" value="_ucr2_hd_spi_standalone_v2.1.1"/> +<listOptionValue builtIn="false" value="_ucr2_hd_wl_standalone_v2.1.1"/> +</option> +<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.632786917" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> +<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> +<additionalInput kind="additionalinput" paths="$(LIBS)"/> +</inputType> +</tool> +<tool id="avr32.managedbuild.tool.gnu.cpp.linker.exe.release.524443971" name="32-bit AVR/GNU C++ Linker" superClass="avr32.managedbuild.tool.gnu.cpp.linker.exe.release"> +<option id="avr32.cpp.linker.option.mcu.1441351036" name="Microcontroller Unit" superClass="avr32.cpp.linker.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.cpp.link.option.libs.357630882" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<option id="gnu.cpp.link.option.paths.1766302960" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.assembler.exe.release.1716843860" name="32-bit AVR/GNU Assembler" superClass="avr32.managedbuild.tool.gnu.assembler.exe.release"> +<option id="avr32.both.asm.option.debugging.level.1012502787" name="Debug Level" superClass="avr32.both.asm.option.debugging.level" value="avr32.both.asm.debugging.level.none" valueType="enumerated"/> +<option id="avr32.both.asm.option.mcu.1121971446" name="Microcontroller Unit" superClass="avr32.both.asm.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="gnu.both.asm.option.include.paths.1772545555" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.preprocessor.exe.release.1758206047" name="32-bit AVR/GNU Preprocessing Assembler" superClass="avr32.managedbuild.tool.gnu.preprocessor.exe.release"> +<option id="avr32.both.preprocessor.option.debugging.level.1064888815" name="Debug Level" superClass="avr32.both.preprocessor.option.debugging.level" value="avr32.both.preprocessor.debugging.level.none" valueType="enumerated"/> +<option id="avr32.both.preprocessor.option.mcu.1280537649" name="Microcontroller Unit" superClass="avr32.both.preprocessor.option.mcu" value="-mpart=uc3a1512" valueType="string"/> +<option id="avr32.both.preprocessor.option.flags.1754897169" name="Assembler flags" superClass="avr32.both.preprocessor.option.flags" value="-Wa,-g" valueType="string"/> +<option id="avr32.both.preprocessor.option.paths.213343763" name="Include paths (-I)" superClass="avr32.both.preprocessor.option.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/TC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<inputType id="avr32.managedbuild.tool.gnu.preprocessor.input.1134352373" superClass="avr32.managedbuild.tool.gnu.preprocessor.input"/> +</tool> +</toolChain> +</folderInfo> +<sourceEntries> +<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<entry excluding="spb.h|httpd.h|httpd.c|platform_spi.h|clocks.c|clocks.h|nor_flash.h|nor_flash.c|wl_util.h|wl_util.c|startup.h|startup.c|ttcp.h|ttcp.c|fsdata.c|hdwireless_gif.h|http_server_gui.h|http_server_gui.c|SOFTWARE_FRAMEWORK/COMPONENTS/TOUCH|SOFTWARE_FRAMEWORK/DRIVERS/ADC|SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h|gui.c|SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC|SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY|SOFTWARE_FRAMEWORK/COMPONENTS/DISPLAY/ET024006DHU|gui_getstring.c|SOFTWARE_FRAMEWORK/BOARDS/EVK1105" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/> +</sourceEntries> +</configuration> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +<storageModule moduleId="scannerConfiguration"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428.53366445;avr32.managedbuild.config.gnu.exe.release.1761605428.53366445.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1297103917;avr32.managedbuild.tool.gnu.c.compiler.input.1475497800"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200;avr32.managedbuild.config.gnu.exe.debug.1622245200.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1012366065;avr32.managedbuild.tool.gnu.c.compiler.input.253539519"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753;avr32.managedbuild.config.gnu.exe.debug.1622245200.609577753.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.1323919988;avr32.managedbuild.tool.gnu.c.compiler.input.253409817"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.1761605428;avr32.managedbuild.config.gnu.exe.release.1761605428.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1267623154;avr32.managedbuild.tool.gnu.c.compiler.input.233400464"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +</cconfiguration> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<project id="wifiHD.avr32.managedbuild.target.gnu.exe_2.0.1.351102936" name="32-bit AVR/GNU Executable" projectType="avr32.managedbuild.target.gnu.exe_2.0.1"/> +</storageModule> +</cproject> diff --git a/libraries/WiFi/extras/wifiHD/.project b/libraries/WiFi/extras/wifiHD/.project new file mode 100644 index 000000000..c284bab1b --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/.project @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>wifiHD</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <triggers>clean,full,incremental,</triggers> + <arguments> + <dictionary> + <key>?name?</key> + <value></value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.append_environment</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildArguments</key> + <value></value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildCommand</key> + <value>make</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildLocation</key> + <value>${workspace_loc:/wifiHD/Debug}</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.contents</key> + <value>org.eclipse.cdt.make.core.activeConfigSettings</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableAutoBuild</key> + <value>false</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableCleanBuild</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableFullBuild</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.stopOnError</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key> + <value>true</value> + </dictionary> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>com.atmel.avr32.core.nature</nature> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> + </natures> + <linkedResources> + <link> + <name>UC3 Software Framework</name> + <type>2</type> + <locationURI>framework:/com.atmel.avr32.sf.uc3</locationURI> + </link> + </linkedResources> +</projectDescription> diff --git a/libraries/WiFi/extras/wifiHD/Release/wifiHD.elf b/libraries/WiFi/extras/wifiHD/Release/wifiHD.elf new file mode 100644 index 0000000000000000000000000000000000000000..d4a8bde55f5e9f4440ca6881789df6174559b9f5 GIT binary patch literal 724331 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 OIX(+#DCueSWB(skxo>~~ literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/Release/wifiHD.hex b/libraries/WiFi/extras/wifiHD/Release/wifiHD.hex new file mode 100644 index 000000000..0122587ff --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/Release/wifiHD.hex @@ -0,0 +1,16358 @@ +:0200000480007A +:10000000E08F100000000000000000000000000071 +:1000100000000000000000000000000000000000E0 +:1000200000000000000000000000000000000000D0 +:1000300000000000000000000000000000000000C0 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:100090000000000000000000000000000000000060 +:1000A0000000000000000000000000000000000050 +:1000B0000000000000000000000000000000000040 +:1000C0000000000000000000000000000000000030 +:1000D0000000000000000000000000000000000020 +:1000E0000000000000000000000000000000000010 +:1000F0000000000000000000000000000000000000 +:1001000000000000000000000000000000000000EF +:1001100000000000000000000000000000000000DF +:1001200000000000000000000000000000000000CF +:1001300000000000000000000000000000000000BF +:1001400000000000000000000000000000000000AF +:10015000000000000000000000000000000000009F +:10016000000000000000000000000000000000008F +:10017000000000000000000000000000000000007F +:10018000000000000000000000000000000000006F +:10019000000000000000000000000000000000005F +:1001A000000000000000000000000000000000004F +:1001B000000000000000000000000000000000003F +:1001C000000000000000000000000000000000002F +:1001D000000000000000000000000000000000001F +:1001E000000000000000000000000000000000000F +:1001F00000000000000000000000000000000000FF +:1002000000000000000000000000000000000000EE +:1002100000000000000000000000000000000000DE +:1002200000000000000000000000000000000000CE +:1002300000000000000000000000000000000000BE +:1002400000000000000000000000000000000000AE +:10025000000000000000000000000000000000009E +:10026000000000000000000000000000000000008E +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:10029000000000000000000000000000000000005E +:1002A000000000000000000000000000000000004E +:1002B000000000000000000000000000000000003E +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E000000000000000000000000000000000000E +:1002F00000000000000000000000000000000000FE +:1003000000000000000000000000000000000000ED +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:1003300000000000000000000000000000000000BD +:1003400000000000000000000000000000000000AD +:10035000000000000000000000000000000000009D +:10036000000000000000000000000000000000008D +:10037000000000000000000000000000000000007D +:10038000000000000000000000000000000000006D +:10039000000000000000000000000000000000005D +:1003A000000000000000000000000000000000004D +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000000000002D +:1003D000000000000000000000000000000000001D +:1003E000000000000000000000000000000000000D +:1003F00000000000000000000000000000000000FD +:1004000000000000000000000000000000000000EC +:1004100000000000000000000000000000000000DC +:1004200000000000000000000000000000000000CC +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000000000000AC +:10045000000000000000000000000000000000009C +:10046000000000000000000000000000000000008C +:10047000000000000000000000000000000000007C +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A000000000000000000000000000000000004C +:1004B000000000000000000000000000000000003C +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000000000001C +:1004E000000000000000000000000000000000000C +:1004F00000000000000000000000000000000000FC +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:1005300000000000000000000000000000000000BB +:1005400000000000000000000000000000000000AB +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000000000008B +:10057000000000000000000000000000000000007B +:10058000000000000000000000000000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C000000000000000000000000000000000002B +:1005D000000000000000000000000000000000001B +:1005E000000000000000000000000000000000000B +:1005F00000000000000000000000000000000000FB +:1006000000000000000000000000000000000000EA +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:10065000000000000000000000000000000000009A +:10066000000000000000000000000000000000008A +:10067000000000000000000000000000000000007A +:10068000000000000000000000000000000000006A +:10069000000000000000000000000000000000005A +:1006A000000000000000000000000000000000004A +:1006B000000000000000000000000000000000003A +:1006C000000000000000000000000000000000002A +:1006D000000000000000000000000000000000001A +:1006E000000000000000000000000000000000000A +:1006F00000000000000000000000000000000000FA +:1007000000000000000000000000000000000000E9 +:1007100000000000000000000000000000000000D9 +:1007200000000000000000000000000000000000C9 +:1007300000000000000000000000000000000000B9 +:1007400000000000000000000000000000000000A9 +:100750000000000000000000000000000000000099 +:100760000000000000000000000000000000000089 +:100770000000000000000000000000000000000079 +:100780000000000000000000000000000000000069 +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000000000000049 +:1007B0000000000000000000000000000000000039 +:1007C0000000000000000000000000000000000029 +:1007D0000000000000000000000000000000000019 +:1007E0000000000000000000000000000000000009 +:1007F00000000000000000000000000000000000F9 +:1008000000000000000000000000000000000000E8 +:1008100000000000000000000000000000000000D8 +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000000000000B8 +:1008400000000000000000000000000000000000A8 +:100850000000000000000000000000000000000098 +:100860000000000000000000000000000000000088 +:100870000000000000000000000000000000000078 +:100880000000000000000000000000000000000068 +:100890000000000000000000000000000000000058 +:1008A0000000000000000000000000000000000048 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000000000000028 +:1008D0000000000000000000000000000000000018 +:1008E0000000000000000000000000000000000008 +:1008F00000000000000000000000000000000000F8 +:1009000000000000000000000000000000000000E7 +:1009100000000000000000000000000000000000D7 +:1009200000000000000000000000000000000000C7 +:1009300000000000000000000000000000000000B7 +:1009400000000000000000000000000000000000A7 +:100950000000000000000000000000000000000097 +:100960000000000000000000000000000000000087 +:100970000000000000000000000000000000000077 +:100980000000000000000000000000000000000067 +:100990000000000000000000000000000000000057 +:1009A0000000000000000000000000000000000047 +:1009B0000000000000000000000000000000000037 +:1009C0000000000000000000000000000000000027 +:1009D0000000000000000000000000000000000017 +:1009E0000000000000000000000000000000000007 +:1009F00000000000000000000000000000000000F7 +:100A000000000000000000000000000000000000E6 +:100A100000000000000000000000000000000000D6 +:100A200000000000000000000000000000000000C6 +:100A300000000000000000000000000000000000B6 +:100A400000000000000000000000000000000000A6 +:100A50000000000000000000000000000000000096 +:100A60000000000000000000000000000000000086 +:100A70000000000000000000000000000000000076 +:100A80000000000000000000000000000000000066 +:100A90000000000000000000000000000000000056 +:100AA0000000000000000000000000000000000046 +:100AB0000000000000000000000000000000000036 +:100AC0000000000000000000000000000000000026 +:100AD0000000000000000000000000000000000016 +:100AE0000000000000000000000000000000000006 +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000000000000E5 +:100B100000000000000000000000000000000000D5 +:100B200000000000000000000000000000000000C5 +:100B300000000000000000000000000000000000B5 +:100B400000000000000000000000000000000000A5 +:100B50000000000000000000000000000000000095 +:100B60000000000000000000000000000000000085 +:100B70000000000000000000000000000000000075 +:100B80000000000000000000000000000000000065 +:100B90000000000000000000000000000000000055 +:100BA0000000000000000000000000000000000045 +:100BB0000000000000000000000000000000000035 +:100BC0000000000000000000000000000000000025 +:100BD0000000000000000000000000000000000015 +:100BE0000000000000000000000000000000000005 +:100BF00000000000000000000000000000000000F5 +:100C000000000000000000000000000000000000E4 +:100C100000000000000000000000000000000000D4 +:100C200000000000000000000000000000000000C4 +:100C300000000000000000000000000000000000B4 +:100C400000000000000000000000000000000000A4 +:100C50000000000000000000000000000000000094 +:100C60000000000000000000000000000000000084 +:100C70000000000000000000000000000000000074 +:100C80000000000000000000000000000000000064 +:100C90000000000000000000000000000000000054 +:100CA0000000000000000000000000000000000044 +:100CB0000000000000000000000000000000000034 +:100CC0000000000000000000000000000000000024 +:100CD0000000000000000000000000000000000014 +:100CE0000000000000000000000000000000000004 +:100CF00000000000000000000000000000000000F4 +:100D000000000000000000000000000000000000E3 +:100D100000000000000000000000000000000000D3 +:100D200000000000000000000000000000000000C3 +:100D300000000000000000000000000000000000B3 +:100D400000000000000000000000000000000000A3 +:100D50000000000000000000000000000000000093 +:100D60000000000000000000000000000000000083 +:100D70000000000000000000000000000000000073 +:100D80000000000000000000000000000000000063 +:100D90000000000000000000000000000000000053 +:100DA0000000000000000000000000000000000043 +:100DB0000000000000000000000000000000000033 +:100DC0000000000000000000000000000000000023 +:100DD0000000000000000000000000000000000013 +:100DE0000000000000000000000000000000000003 +:100DF00000000000000000000000000000000000F3 +:100E000000000000000000000000000000000000E2 +:100E100000000000000000000000000000000000D2 +:100E200000000000000000000000000000000000C2 +:100E300000000000000000000000000000000000B2 +:100E400000000000000000000000000000000000A2 +:100E50000000000000000000000000000000000092 +:100E60000000000000000000000000000000000082 +:100E70000000000000000000000000000000000072 +:100E80000000000000000000000000000000000062 +:100E90000000000000000000000000000000000052 +:100EA0000000000000000000000000000000000042 +:100EB0000000000000000000000000000000000032 +:100EC0000000000000000000000000000000000022 +:100ED0000000000000000000000000000000000012 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000000000000F2 +:100F000000000000000000000000000000000000E1 +:100F100000000000000000000000000000000000D1 +:100F200000000000000000000000000000000000C1 +:100F300000000000000000000000000000000000B1 +:100F400000000000000000000000000000000000A1 +:100F50000000000000000000000000000000000091 +:100F60000000000000000000000000000000000081 +:100F70000000000000000000000000000000000071 +:100F80000000000000000000000000000000000061 +:100F90000000000000000000000000000000000051 +:100FA0000000000000000000000000000000000041 +:100FB0000000000000000000000000000000000031 +:100FC0000000000000000000000000000000000021 +:100FD0000000000000000000000000000000000011 +:100FE0000000000000000000000000000000000001 +:100FF00000000000000000000000000000000000F1 +:1010000000000000000000000000000000000000E0 +:1010100000000000000000000000000000000000D0 +:1010200000000000000000000000000000000000C0 +:1010300000000000000000000000000000000000B0 +:1010400000000000000000000000000000000000A0 +:101050000000000000000000000000000000000090 +:101060000000000000000000000000000000000080 +:101070000000000000000000000000000000000070 +:101080000000000000000000000000000000000060 +:101090000000000000000000000000000000000050 +:1010A0000000000000000000000000000000000040 +:1010B0000000000000000000000000000000000030 +:1010C0000000000000000000000000000000000020 +:1010D0000000000000000000000000000000000010 +:1010E0000000000000000000000000000000000000 +:1010F00000000000000000000000000000000000F0 +:1011000000000000000000000000000000000000DF +:1011100000000000000000000000000000000000CF +:1011200000000000000000000000000000000000BF +:1011300000000000000000000000000000000000AF +:10114000000000000000000000000000000000009F +:10115000000000000000000000000000000000008F +:10116000000000000000000000000000000000007F +:10117000000000000000000000000000000000006F +:10118000000000000000000000000000000000005F +:10119000000000000000000000000000000000004F +:1011A000000000000000000000000000000000003F +:1011B000000000000000000000000000000000002F +:1011C000000000000000000000000000000000001F +:1011D000000000000000000000000000000000000F +:1011E00000000000000000000000000000000000FF +:1011F00000000000000000000000000000000000EF +:1012000000000000000000000000000000000000DE +:1012100000000000000000000000000000000000CE +:1012200000000000000000000000000000000000BE +:1012300000000000000000000000000000000000AE +:10124000000000000000000000000000000000009E +:10125000000000000000000000000000000000008E +:10126000000000000000000000000000000000007E +:10127000000000000000000000000000000000006E +:10128000000000000000000000000000000000005E +:10129000000000000000000000000000000000004E +:1012A000000000000000000000000000000000003E +:1012B000000000000000000000000000000000002E +:1012C000000000000000000000000000000000001E +:1012D000000000000000000000000000000000000E +:1012E00000000000000000000000000000000000FE +:1012F00000000000000000000000000000000000EE +:1013000000000000000000000000000000000000DD +:1013100000000000000000000000000000000000CD +:1013200000000000000000000000000000000000BD +:1013300000000000000000000000000000000000AD +:10134000000000000000000000000000000000009D +:10135000000000000000000000000000000000008D +:10136000000000000000000000000000000000007D +:10137000000000000000000000000000000000006D +:10138000000000000000000000000000000000005D +:10139000000000000000000000000000000000004D +:1013A000000000000000000000000000000000003D +:1013B000000000000000000000000000000000002D +:1013C000000000000000000000000000000000001D +:1013D000000000000000000000000000000000000D +:1013E00000000000000000000000000000000000FD +:1013F00000000000000000000000000000000000ED +:1014000000000000000000000000000000000000DC +:1014100000000000000000000000000000000000CC +:1014200000000000000000000000000000000000BC +:1014300000000000000000000000000000000000AC +:10144000000000000000000000000000000000009C +:10145000000000000000000000000000000000008C +:10146000000000000000000000000000000000007C +:10147000000000000000000000000000000000006C +:10148000000000000000000000000000000000005C +:10149000000000000000000000000000000000004C +:1014A000000000000000000000000000000000003C +:1014B000000000000000000000000000000000002C +:1014C000000000000000000000000000000000001C +:1014D000000000000000000000000000000000000C +:1014E00000000000000000000000000000000000FC +:1014F00000000000000000000000000000000000EC +:1015000000000000000000000000000000000000DB +:1015100000000000000000000000000000000000CB +:1015200000000000000000000000000000000000BB +:1015300000000000000000000000000000000000AB +:10154000000000000000000000000000000000009B +:10155000000000000000000000000000000000008B +:10156000000000000000000000000000000000007B +:10157000000000000000000000000000000000006B +:10158000000000000000000000000000000000005B +:10159000000000000000000000000000000000004B +:1015A000000000000000000000000000000000003B +:1015B000000000000000000000000000000000002B +:1015C000000000000000000000000000000000001B +:1015D000000000000000000000000000000000000B +:1015E00000000000000000000000000000000000FB +:1015F00000000000000000000000000000000000EB +:1016000000000000000000000000000000000000DA +:1016100000000000000000000000000000000000CA +:1016200000000000000000000000000000000000BA +:1016300000000000000000000000000000000000AA +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000000000008A +:10166000000000000000000000000000000000007A +:10167000000000000000000000000000000000006A +:10168000000000000000000000000000000000005A +:10169000000000000000000000000000000000004A +:1016A000000000000000000000000000000000003A +:1016B000000000000000000000000000000000002A +:1016C000000000000000000000000000000000001A +:1016D000000000000000000000000000000000000A +:1016E00000000000000000000000000000000000FA +:1016F00000000000000000000000000000000000EA +:1017000000000000000000000000000000000000D9 +:1017100000000000000000000000000000000000C9 +:1017200000000000000000000000000000000000B9 +:1017300000000000000000000000000000000000A9 +:101740000000000000000000000000000000000099 +:101750000000000000000000000000000000000089 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000000000000069 +:101780000000000000000000000000000000000059 +:101790000000000000000000000000000000000049 +:1017A0000000000000000000000000000000000039 +:1017B0000000000000000000000000000000000029 +:1017C0000000000000000000000000000000000019 +:1017D0000000000000000000000000000000000009 +:1017E00000000000000000000000000000000000F9 +:1017F00000000000000000000000000000000000E9 +:1018000000000000000000000000000000000000D8 +:1018100000000000000000000000000000000000C8 +:1018200000000000000000000000000000000000B8 +:1018300000000000000000000000000000000000A8 +:101840000000000000000000000000000000000098 +:101850000000000000000000000000000000000088 +:101860000000000000000000000000000000000078 +:101870000000000000000000000000000000000068 +:101880000000000000000000000000000000000058 +:101890000000000000000000000000000000000048 +:1018A0000000000000000000000000000000000038 +:1018B0000000000000000000000000000000000028 +:1018C0000000000000000000000000000000000018 +:1018D0000000000000000000000000000000000008 +:1018E00000000000000000000000000000000000F8 +:1018F00000000000000000000000000000000000E8 +:1019000000000000000000000000000000000000D7 +:1019100000000000000000000000000000000000C7 +:1019200000000000000000000000000000000000B7 +:1019300000000000000000000000000000000000A7 +:101940000000000000000000000000000000000097 +:101950000000000000000000000000000000000087 +:101960000000000000000000000000000000000077 +:101970000000000000000000000000000000000067 +:101980000000000000000000000000000000000057 +:101990000000000000000000000000000000000047 +:1019A0000000000000000000000000000000000037 +:1019B0000000000000000000000000000000000027 +:1019C0000000000000000000000000000000000017 +:1019D0000000000000000000000000000000000007 +:1019E00000000000000000000000000000000000F7 +:1019F00000000000000000000000000000000000E7 +:101A000000000000000000000000000000000000D6 +:101A100000000000000000000000000000000000C6 +:101A200000000000000000000000000000000000B6 +:101A300000000000000000000000000000000000A6 +:101A40000000000000000000000000000000000096 +:101A50000000000000000000000000000000000086 +:101A60000000000000000000000000000000000076 +:101A70000000000000000000000000000000000066 +:101A80000000000000000000000000000000000056 +:101A90000000000000000000000000000000000046 +:101AA0000000000000000000000000000000000036 +:101AB0000000000000000000000000000000000026 +:101AC0000000000000000000000000000000000016 +:101AD0000000000000000000000000000000000006 +:101AE00000000000000000000000000000000000F6 +:101AF00000000000000000000000000000000000E6 +:101B000000000000000000000000000000000000D5 +:101B100000000000000000000000000000000000C5 +:101B200000000000000000000000000000000000B5 +:101B300000000000000000000000000000000000A5 +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000000000000085 +:101B60000000000000000000000000000000000075 +:101B70000000000000000000000000000000000065 +:101B80000000000000000000000000000000000055 +:101B90000000000000000000000000000000000045 +:101BA0000000000000000000000000000000000035 +:101BB0000000000000000000000000000000000025 +:101BC0000000000000000000000000000000000015 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000000000000F5 +:101BF00000000000000000000000000000000000E5 +:101C000000000000000000000000000000000000D4 +:101C100000000000000000000000000000000000C4 +:101C200000000000000000000000000000000000B4 +:101C300000000000000000000000000000000000A4 +:101C40000000000000000000000000000000000094 +:101C50000000000000000000000000000000000084 +:101C60000000000000000000000000000000000074 +:101C70000000000000000000000000000000000064 +:101C80000000000000000000000000000000000054 +:101C90000000000000000000000000000000000044 +:101CA0000000000000000000000000000000000034 +:101CB0000000000000000000000000000000000024 +:101CC0000000000000000000000000000000000014 +:101CD0000000000000000000000000000000000004 +:101CE00000000000000000000000000000000000F4 +:101CF00000000000000000000000000000000000E4 +:101D000000000000000000000000000000000000D3 +:101D100000000000000000000000000000000000C3 +:101D200000000000000000000000000000000000B3 +:101D300000000000000000000000000000000000A3 +:101D40000000000000000000000000000000000093 +:101D50000000000000000000000000000000000083 +:101D60000000000000000000000000000000000073 +:101D70000000000000000000000000000000000063 +:101D80000000000000000000000000000000000053 +:101D90000000000000000000000000000000000043 +:101DA0000000000000000000000000000000000033 +:101DB0000000000000000000000000000000000023 +:101DC0000000000000000000000000000000000013 +:101DD0000000000000000000000000000000000003 +:101DE00000000000000000000000000000000000F3 +:101DF00000000000000000000000000000000000E3 +:101E000000000000000000000000000000000000D2 +:101E100000000000000000000000000000000000C2 +:101E200000000000000000000000000000000000B2 +:101E300000000000000000000000000000000000A2 +:101E40000000000000000000000000000000000092 +:101E50000000000000000000000000000000000082 +:101E60000000000000000000000000000000000072 +:101E70000000000000000000000000000000000062 +:101E80000000000000000000000000000000000052 +:101E90000000000000000000000000000000000042 +:101EA0000000000000000000000000000000000032 +:101EB0000000000000000000000000000000000022 +:101EC0000000000000000000000000000000000012 +:101ED0000000000000000000000000000000000002 +:101EE00000000000000000000000000000000000F2 +:101EF00000000000000000000000000000000000E2 +:101F000000000000000000000000000000000000D1 +:101F100000000000000000000000000000000000C1 +:101F200000000000000000000000000000000000B1 +:101F300000000000000000000000000000000000A1 +:101F40000000000000000000000000000000000091 +:101F50000000000000000000000000000000000081 +:101F60000000000000000000000000000000000071 +:101F70000000000000000000000000000000000061 +:101F80000000000000000000000000000000000051 +:101F90000000000000000000000000000000000041 +:101FA0000000000000000000000000000000000031 +:101FB0000000000000000000000000000000000021 +:101FC0000000000000000000000000000000000011 +:101FD0000000000000000000000000000000000001 +:101FE00000000000000000000000000000000000F1 +:101FF00000000000000000000000000000000000E1 +:08200000481F000080013E04AE +:102008003038F00C19005EBC5C7C4848F00C003994 +:10201800F00C093BB22A5EFC000011C0F80815015B +:102028003039F20C1800E08800035EFDF00B000B5D +:102038004828F00B032C5EFC00007B08580CC0D02D +:1020480048787829F00900293008720A143CC060E1 +:102058002FF82F895848CFA13FF85EF800007B0879 +:102068003038F00C18005EBCF60C001C30094838FB +:10207800F00C09295EFC000000007B085EFFD70316 +:10208800D4011988301EB6881998B6BEEA18FFFF21 +:10209800E818FF80B6AEB698580AC0301588C0A8B0 +:1020A80048981188F4081800C0303038C03848788B +:1020B80011B8B6C83EE8B6D83008B6E8302C306853 +:1020C800B208D802000016AB00000008D40130188E +:1020D800198EB68E199CB6A8EA1CFFFFE81CFF8073 +:1020E800B6B8B69C580AC0A0158CE06A00FFF00C80 +:1020F8001800F4081710F9B80001B6C83EE8B6D8B9 +:102108003008B6E8302C3068B208D802D421202D27 +:102118004AAA189E1698129674075807C071FACAE8 +:10212800FFF814F7F01F0026C4681989B6891999B1 +:10213800EA19FFFFE819FF80B6993039B0A9740988 +:102148007219F20C1618B0F9B0CCF9D9C108F3D944 +:10215800C208B0ECB0D9304BB0BB74097229F20C8C +:102168001618F169000CF16C0009F9D9C108F3D906 +:10217800C208F16C000BF16B0008F169000A7409E0 +:10218800300A7239F16A00133EEAF16A0012F20A63 +:102198001618F1690011F16A000EF16B000DF5D9FE +:1021A800C108F3D9C208F16A0010F169000F302C98 +:1021B8003138AC082FEDD8220000152C800020D42F +:1021C8003038F00C18005EBCF60C001B48F8F00B19 +:1021D800032858085E0C704958195E1C7029581954 +:1021E800C09148B8F00C003C9828B42878089508A5 +:1021F8005EFC71E85808F0091700F1F91001F1F8D0 +:10220800120A9509B4285EFC00007B08000011C082 +:10221800D4314BC8300A10941499910A1893301A83 +:102228004B984BA7910A3EE14B921296C0280A9907 +:10223800E0682710C0485808C5602018664AE21AA6 +:102248000201E04A0201CF81C4F8F2C5FFFFE20AA9 +:102258001800CEE10F9BF7DBC0C15825E0890005C7 +:102268003038300AC2E80FAA3038C148580BC0A02D +:10227800EE08070EEE08000CA96E2FE8199C1C0842 +:10228800C058F0CCFFFFEE080708201AF80800082D +:102298005C5A10395F9CEC0A18005F9EFDEC000C3C +:1022A800EC0C1800CE4110395F09F9DAC008EC0CC3 +:1022B80018005F0CF9E90009EC091800C020D83AA9 +:1022C800840C3009F20C1900CB34201D5C6A1ADB2F +:1022D8001AD849081ADA490C1AD51AD8F01F000F6B +:1022E8002FADCA6BDA3A662A68085C5A2FF8EE09ED +:1022F8000B0A8908E0480063FE9AFFA9305CD832CF +:10230800000014B0000011B8000014B8000016A2B4 +:102318008003792C80037AB0800094C4D431202DB6 +:102328004C68149570081896169712945808C0713E +:10233800FACAFFF814F8F01F0042CC38198830198F +:10234800B6881998B6A9EA18FFFFE818FF80B6986A +:102358004BC89088EDB80002C171189330023EE175 +:102368000788201D4B8C1AD8F01F00382FF22FED4C +:102378000788E2081800C0502FF3E0420400CF118C +:102388004B3CF01F00320DC83099F2081800E08865 +:1023980000114B09920A3009F20A1900E0840091F1 +:1023A8001AD84AD84ADC1AD8F01F00282FEDC88856 +:1023B800E0450032C290A3684A99E0450033C5D091 +:1023C800129B7209F2080309EECAFFFCF3360020DB +:1023D8003009AEB6C088760CF808030CF809070C6B +:1023E8002FF914CCEC091900CF7349A99289EDB9DA +:1023F8000004C5F149A97209F2080308499C1AD8D2 +:1024080049581AD8C538304BA368495A7409F20894 +:10241800030972C9AEBBF20B1618AEC9AEFBF7D9E9 +:10242800C108F3D9C208AEDBAEE948A99289EDB973 +:102438000004C1903046C3D80000152C800020D479 +:10244800000016A080037AF0800094C4800384D42E +:10245800000016A28003785880037AF8000015203F +:1024680080037B187409F208030870C8496C1AD8ED +:10247800304649681AD8C1A8301AAEBA720AF408A8 +:10248800030AF53A0038AECA491A948AEDBA00042C +:10249800C0303016C0E87209F2080308F138003875 +:1024A80048CC1AD8301648981AD8F01F000B2FEDD0 +:1024B8003EE80C07AEC83008AED82FB6A806302CB8 +:1024C8002FEDD83280037B2880037858000016A2AD +:1024D80080037B38800094C4D421204D4A981897F3 +:1024E800118A580AC0313FF6C0D84A7811BC118EFB +:1024F800119611A8B166EDEE1186EDE81086F9E6A1 +:1025080010064A289088EDB80002C0E14A08201D4C +:102518004A0C1ADA1AD61AD8505B5049F01F001E16 +:102528002FCD4009401B49D870085808C081FACA05 +:10253800FFF00E9C14F8F01F001AC2080F88B68826 +:102548000F98EA18FFFFE818FF80B6983018B6A869 +:102558003048B6B8F1D6C108B6E83EE8EC0A161815 +:10256800B6F6F7680008B6CA3008EDD6C208F768AC +:102578000009B6D63098302CB2082FCDD8220000EA +:102588000000152800007B28000016A28003782090 +:1025980080037B48800094C40000152C800020D460 +:1025A800D401580BC0313FF8C0C8178A17B917981B +:1025B800B168F1EA118817AAF1EA1088F3E810085F +:1025C800F00A161848E9B28AF5D8C208B2B8B29A21 +:1025D800F5D8C108B2AA48B99289EDB90002C0A1DC +:1025E800201D1AD848881ADC488C1AD8F01F000811 +:1025F8002FCD30194878B089D802000000007B2818 +:10260800000016A28003799C80037B74800094C428 +:1026180000001528D431204D4AE8189570081697FF +:1026280012965808C071FACAFFF014F8F01F002A71 +:10263800C4D84AA89088EDB80002C1711894300334 +:102648003EE20988201D4A6C1AD8F01F00262FF395 +:102658002FED0988E4081800C0502FF4E043040067 +:10266800CF114A1CF01F001F0B880BCCAE880B98AB +:10267800EA18FFFFE818FF80AE983004BA445014F7 +:102688003025FACAFFFCAEA5301BF01F0018304AEF +:10269800EF64000CEF6500084018F0091618AEF852 +:1026A800AEC99A49AEBAF5D8C108F1D8C208EF69DF +:1026B800000AAED8AEEA3EE8F3D9C108EF68000BCD +:1026C800EF69000930C8302CAC082FCDD832000093 +:1026D8000000152C800020D4000016A080037AF09A +:1026E800800094C4800384D4800021C8D40148A801 +:1026F8009088EDB80002C0E148887008201D1AD8FB +:10270800487811881AD84878487C1AD8F01F0007EA +:102718002FCDDA0A000016A200000008000016AB50 +:10272800800379E480037BA8800094C4D42148E620 +:10273800189E30076C0C580CC0A02FF72EC6E04727 +:102748000024CF91489CF01F000ADC2A4866EE0757 +:102758000027EC070027EF680010AECE8F0B8F2AFA +:102768008F39D822000011E080037BC4800094C414 +:10277800D4214C8618970C9A302830094C6B310CB0 +:10278800F01F00460C9A302830094C5B311CF01FB2 +:1027980000430C9A302830094C2B312CF01F003F95 +:1027A8000E990C9A30284C0B314CF01F003C0E99B6 +:1027B8000C9A30284BDB315CF01F00383018300998 +:1027C8004BBA4BCB320CF01F003530184BA73009F1 +:1027D8000E9B4BAA321CF01F00310E9B301830099B +:1027E8004B7A322CF01F002D4B6532390A9A0E9B1A +:1027F8003018129CF01F002932490A9A0E9B301893 +:10280800129CF01F002632590A9A0E9B3018129C0F +:10281800F01F00220A9A32690E9B3018129CF01F92 +:10282800001F0C9A302830094A7B336CF01F001BBC +:102838000E9B301830094A5A327CF01F00180C9A47 +:10284800302830094A2B330CF01F00144A1533394D +:102858000A9A0E9B3018129CF01F001033190A9A1E +:102868000E9B3018129CF01F000D0A9A33290E9BFC +:102878003018129CF01F00090C9A30283009496B57 +:10288800334CF01F00060E9B30183009493AC278C5 +:10289800800020D48000427C8000273480004118CA +:1028A8008000433080003FD080003EA88000208810 +:1028B800800026F48000208480002114800035ECFC +:1028C80080003514800034A480004B5480003740C9 +:1028D8008000232480003678800024E0335CF01FD9 +:1028E80000370C9A302830094B5B328CF01F0033CC +:1028F8000C9A302830094B3B32DCF01F00300C9A20 +:10290800302830094B0B32ECF01F002C0E9B30188E +:1029180030094AEA329CF01F00290E9B3018300912 +:102928004ABA32CCF01F00250E9B301830094A9A5B +:1029380032BCF01F00220C9A304830094A6B344CE4 +:10294800F01F001E0E9B301830094A4A32ACF01FA7 +:10295800001B0E9B301830094A1A345CF01F001710 +:102968000E9B3018300949FA32FCF01F00140E9BF8 +:102978003018300949CA337CF01F00100E9B3018FC +:10298800300949AA338CF01F000D0C9A30483009E1 +:10299800497B346CF01F00090C9A30283009495BD8 +:1029A800339CF01F00060E9B30183009492A33ACBF +:1029B800F01F0002D82200008000273480003D88E4 +:1029C80080003AC8800038B4800033FC800030D4DE +:1029D800800032848000375C800032088000300438 +:1029E8008000332880002F8C80002EC4800038841B +:1029F800800037CC8000261CD4013038580B5F1972 +:102A0800F00C18005F88F3E80008C060F40C0019A7 +:102A180048D8F009092B48D89088EDB80001C111B1 +:102A280048B848C9580AF20A1700F00A171048A807 +:102A38001ADA1ADB1ADC489C1AD8F01F00092FCDC5 +:102A4800D802000000007B08000016A280037BDC8F +:102A580080037BE4800378C080037BF0800094C40B +:102A6800D401580BF60A1700F7FA180BF01F0002EA +:102A7800D802000080002A00D401320A300B483CFA +:102A8800F01F0003D802000000007B088002E8BCA9 +:102A9800D421206D3087FAC6FFF00E9A4C6B18953A +:102AA8000C9CF01F0046304B0C9CF01F0045300872 +:102AB800FB68000DBA88FB680009FB68000BFB681F +:102AC800000CEE784240501830480E9BFB67000817 +:102AD800FB68000A300AFE7C2400F01F003A1897B1 +:102AE800C0F04B989088EDB80002C0814B78201D4B +:102AF8004B7C1AD8F01F00372FED301CC5A8E06AB0 +:102B0800F980EA1A03371A9BFE7C2400F01F003272 +:102B1800582CC0D14AC89008EE081900C0844AB899 +:102B2800201D4AEC1AD8F01F002B2FEDD303300AD2 +:102B3800E06B01204AACF01F002BD503E1B8000080 +:102B4800EE180001F5D8C201C020D303FE78240096 +:102B58003019705BF7D9D001915B705BF7D9D0C1A0 +:102B6800915B705BF7D9D081915B580AC020D5037F +:102B7800FE7C2400F01F001C0A9CF01F001C364A33 +:102B8800300B49BCF01F001BE06A0400300B49AC55 +:102B9800F01F0018E06A0400300B498CF01F001584 +:102BA800F01F0017497830079107F01F00170E9C97 +:102BB8002FADD822800382078002E7368000A280EA +:102BC8008000A618000016A2800379BC80037C0848 +:102BD800800094C48000A73C80037C2880002C10CF +:102BE8008000A3A08000A7EC80002778000014B81C +:102BF8008002E8BC00000DB8000009B880002A80F7 +:102C0800000000088000751CD401E1B80000EE182F +:102C18000001F5D8C201C020D303FE782400301982 +:102C2800706BF7D9D001916B706BF7D9D0C1916BEC +:102C3800706BF7D9D081916B580AC020D503FE7C00 +:102C480024007848EDB80000C0F1F01F0016C0C19C +:102C5800319CF01F0015495890092FF9B009301917 +:102C68004938B089C1B8E1B80000EE180001F5D8BC +:102C7800C201C020D303FE7824003019705BF7D955 +:102C8800D001915B705BF7D9D0C1915B705BF7D9CC +:102C9800D081915B580AC020D503D402D603000026 +:102CA800800022188000A2E6000014B40000151C61 +:102CB800D4313006189714931694950618983E093F +:102CC800C2C81095118A2FF8F20A1800C251580686 +:102CD800C21049E890093008F0091900C064089B3F +:102CE8000E9C5C7BF01F001A49A890093008F00977 +:102CF8001900C1040C070F98201D1AD849681AD466 +:102D08001AD690881AD84958495C1AD8F01F001565 +:102D18002FAD8706C1882FF60836CD4548D89009CB +:102D28003008F0091900C0353005C0D8201D48A862 +:102D38001AD690881AD8489848BC1AD83005F01F77 +:102D480000092FCD0A9CD832000016A680013DB498 +:102D5800000016A2000014B4800378D080037C48D9 +:102D6800800094C480037C6CD42118971696F01FB9 +:102D780000325F080E3C5F191895F1E91009C03060 +:102D88005808C5710B893E08F0091800C5210B9930 +:102D98003008F0091800C4D5E2190040C0E1EACAB9 +:102DA800FFFD0BAC1298C068158B2FF92FFB160A84 +:102DB80016081839CFA5C2384A089088EDB800021D +:102DC800C0D149F8201D49FC1AD8F01F001FF7D6BA +:102DD800C0100E9CF01F001D2FED3009EACAFFFD40 +:102DE8000BAC1298C0A81587159B2FF9F7E7108B25 +:102DF8002FEB160AF60800081839CF6510053EE9CA +:102E08000BB8F2081800C021DA2A4919920A3009C9 +:102E1800F20A1900C0E4201D1AD848E890881AD888 +:102E2800487848DC1AD8F01F0008300C2FCDD8227B +:102E3800D82A000080002CB8000016A080037974FE +:102E480080037C84800094C480013DB4000016A2F5 +:102E5800000014B480037C8CD4014918581CC0713C +:102E68003039334C9109F01F000FC0683049334C9A +:102E78009109F01F000D48D89088EDB80002C0D124 +:102E880048787008201D1AD848981AD8489848AC2D +:102E98001AD8F01F000A2FCDD80200000000000841 +:102EA8008000A2E68000A300000016A280037A3CFE +:102EB8008003821080037CB0800094C4D421FACDB2 +:102EC80001004AC81697700512965805C071FACACB +:102ED800FF0014F5F01F0028C4A81989301AB68914 +:102EE8001999B6AAEA19FFFFE819FF80B69919B926 +:102EF800F4091800C20119C53FF8F0051800C1B05F +:102F0800E06A00FF300B1A9CF01F001C1A9430086E +:102F1800C048E8080B082FF80A38CFC51A94AEB590 +:102F2800EEC8FFFCFA050009C038093A10CA123485 +:102F3800CFD1C15849256A0CF01F00120A98EECA71 +:102F4800FFFCEBDCC0083009AEB5C068700BF609B1 +:102F5800070B2FF914CBEA091900CF933EE80A07AB +:102F6800AEC83008AED82FB5302CAC052C0DD82201 +:102F78000000152C800020D48002E8BC0000011459 +:102F88008002EDD0D421202D49981697700E129604 +:102F9800580EC071FACAFFF814FEF01F0016C25886 +:102FA8001989B6891998EA18FFFFE818FF80B698BA +:102FB80030184915B6A86A0CF01F0010EEC9FFFCBE +:102FC8005C5C3008AEBCC0686A0AF408070A2FF8CF +:102FD80012CAF8081900CF933EE818072FBCAEC8EC +:102FE8003008AED8AC0C302C2FEDD8220000152CB0 +:102FF800800020D4000001148002EDD0D421202DBF +:103008004AE818967008169712955808C071FACAB7 +:10301800FFF814F8F01F002AC4D84AA811D4303891 +:10302800F0041800E08B0046FACAFFFC1A9B089CC3 +:10303800F01F00250D88C300AE880D98EA18FFFF21 +:10304800E818FF80AE983018AEA81BC8AEB89A280A +:10305800AEC83008C0B8F3D8C010400BF1DAB010D1 +:10306800EE09000AF6090709B4D9F0CAFFFF9A2940 +:10307800F2081900CF13F1D9C010EE0800083EEA93 +:10308800B0DA9AA82FA910073008AEE8AA09089C58 +:10309800F01F000EC0E8AE880D98EA18FFFFE81888 +:1030A800FF80AECCAE98AEAC3EE8AEB83048AA08C9 +:1030B800302C2FEDD82200000000152C800020D4E1 +:1030C80000000DB880006BF480006FBCD431202D57 +:1030D8004C5818967008169712955808C071BAE897 +:1030E800FACAFFFAF01F0041C728F8C8FFFDC3C09D +:1030F80011842FF4F0040004C37009893018F00912 +:103108001800C67109993EE8F0091800C6214B88D5 +:1031180090093008F0091900C5C44B681AD44B6CE3 +:103128001AD8F01F00362FEDC548099309A9F3E313 +:1031380010835C83C54809893018F0091800C1510B +:1031480009993EE8F0091800C1014A989009300829 +:10315800F0091900C0A44A781AD44A7C1AD8F01F7A +:1031680000272FEDC02830030DB43018F0041800E4 +:10317800C2D10DCC3038F00C1800E08B0028F5D304 +:10318800C008FACBFFF9F01F001E0D88C120AE88D9 +:103198000D98EA18FFFFE818FF80AEB4AE98AEA409 +:1031A8001BF8AEC83EE8AED83008AEE83068C0D8E4 +:1031B800AE880D98EA18FFFFE818FF80AE983EE841 +:1031C800AECCAEB8AEAC3048AA08302C2FEDD83211 +:1031D80009883029F2081800CA9030032FF8100423 +:1031E800CAB1CC3B0000152C800020D4000016A2E8 +:1031F8008003780C80037CBC800094C480006FE05E +:10320800D421202D49A81697700E1296580EC07119 +:10321800FACAFFF814FEF01F0017C2681989301A9D +:10322800B6891999B6AAEA19FFFFE819FF80B69975 +:1032380019B9F4091800C0D119C83039F2081800B2 +:10324800E08B000848C9F208033CF01F000CC028B6 +:10325800300C3018AEB83EE8AECCAED83008AEE888 +:10326800302C3068AC082FEDD82200000000152C57 +:10327800800020D400007B0880004D78D421202DC8 +:103288004A181697700E1296580EC071FACAFFF8AF +:1032980014FEF01F001EC3481989301AB6891999FF +:1032A800B6AAEA19FFFFE819FF80B69919B9F40917 +:1032B8001800C0B119CC3038F00C1800E08B0006AB +:1032C800F01F00135C8CC028300C3028AEB83EE8E4 +:1032D800AECCAEE85C7CF8081608AED83008AEF87C +:1032E8003078AC0848B89088EDB80002C08148A88A +:1032F8001ADC48AC1AD8F01F000A2FED302C2FED3D +:10330800D82200000000152C800020D480006D38E1 +:10331800000016A8800378A880037CD8800094C495 +:10332800D421202D4AA81697700512965805C07109 +:10333800FACAFFF814F5F01F0027C4781989301A63 +:10334800B6891999B6AAEA19FFFFE819FF80B69954 +:10335800303819B919C5F40918005F09F0051800C3 +:103368005F881268C19049C8F00503345804C060EA +:10337800089C301BF01F0019C10849989009E809FA +:103388001900C0A449781AD5497C1AD8F01F00172B +:10339800089C2FEDC028300C3018AEB83EE8AECCF3 +:1033A800AED83008AEE83068AC0849189088EDB857 +:1033B8000002C0A148B8201D1ADC48EC1AD51AD85A +:1033C800F01F000A2FCD302C2FEDD8220000152C2D +:1033D800800020D400007B0880004F1C000016A647 +:1033E8008003794080037CEC800094C4000016A818 +:1033F80080037D10D421202D4A181697700E12963E +:10340800580EC071FACAFFF814FEF01F001EC34818 +:103418001989301AB6891999B6AAEA19FFFFE81965 +:10342800FF80B69919B9F4091800C0F119C83039E4 +:10343800F2081800E08B000A4939F2080038300B0E +:10344800701CF01F0012C028300C3018AEB83EE8CF +:10345800AECCAED83008AEE83068AC0848C8908822 +:10346800EDB80002C08148B81ADC48BC1AD8F01F71 +:10347800000B2FED302C2FEDD82200000000152C6A +:10348800800020D400007B0880004F1C000016A894 +:1034980080037A6480037D28800094C4D40149584D +:1034A8009088EDB80002C08149381ADC493C1AD826 +:1034B800F01F00132FED49383009118AF20A18005D +:1034C800C021DC0AB089F01F0010581CC1004898C0 +:1034D80090093008F0091900C025DA0A48681ADC92 +:1034E80048AC1AD8F01F0006301C2FEDD802000097 +:1034F800000016A28003798480037D38800094C47C +:10350800000016AA80019EF880037D54D421202D46 +:103518004B281496700E16971295580EC071FACA59 +:10352800FFF814FEF01F002EC5681989B68919988E +:10353800EA18FFFFE818FF803014B698B6A4F01F09 +:103548000029C3E0E0460025C260E0460026C3200B +:10355800EEC9FFFCE0460024C0F0129AF9380020BA +:103568003009AEB8C058F809070B2FF914CBF00989 +:103578001900CFA3C28830682DACAEB8306A3008C5 +:10358800198B12CB2FF8201C5C88F4081900CF91F6 +:103598003068C19878C8F0091618AEF93049AEC835 +:1035A800AEB9F3D8C108F1D8C208AED9AEE83048F0 +:1035B800C0A8AEB4F9380038AEC83018C048AEB4A8 +:1035C800AECC18983EE91007AEC93009AED92FB86D +:1035D800302CAA082FEDD8220000152C800020D40A +:1035E8008001997CD421202D49F8189670081697E7 +:1035F80012955808C041FACAFFF8C1881988B688D8 +:103608001998EA18FFFFE818FF803019B698306853 +:10361800B6A9B6B81A9CF01F0015581CC0B00A9974 +:103628000E9B0C9CFACAFFF8300814F8F01F001023 +:10363800C1881BD8AEC81BC8AED81BB8AEE81BA83B +:10364800AEF81B98EF6800081B88EF6800093EE891 +:10365800EF68000A3008EF68000B302C30B8AA0871 +:103668002FEDD8220000152C80019128800020D44D +:10367800D421FACD010016961A971A9C173AF01F12 +:103688000025FAC9FF000D88F20800083009F16921 +:10369800FF004A189088EDB80002C08149F81AD78F +:1036A80049FC1AD8F01F001F2FED300849E749FAE6 +:1036B800AE88AE98AEA8AEB8B488109949CA0E9B29 +:1036C8001A9C1A96F01F001B5C5CC040E06C00FF5F +:1036D800C1E849189088EDB80002C1510F8A0FB9A6 +:1036E8000F98B168F1EA11880FAAF1EA1088F3E897 +:1036F8001008201D1AD848981AD648FC1AD8F01F66 +:1037080000092FCD30194898301CB0892C0DD822CB +:103718008002E736000016A280037A7C80037D646D +:10372800800094C400007B2800001528800025A88C +:103738008000C4C080037D84D401F01F0006E068C7 +:1037480000FF581CF00C1710F9BC0001D80200004B +:10375800800199CCD42118971696335CF01F001677 +:103768005827C1F10D980D89F1E910893018F00931 +:103778001900C1710DA80DBA0DC9303BF608180023 +:10378800E0880004300CC04848CBF608033CA96A1E +:10379800ECCBFFFB120A5C7AF01F00091897C028CF +:1037A8003FF7335CF01F0007E06C00FF5817F9BCC7 +:1037B8000001D8228000A30000007B08800053C0CD +:1037C8008000A2E6D421202D581CC4211789F809AD +:1037D8001800C3E1F6C8FFFE1796C170118AF20AF5 +:1037E8001800C131119A3EE9F20A1800C0E149B93E +:1037F800920A3009F20A1900C0841AD84988499CEB +:103808001AD8F01F00192FED3008FACAFFF8300B4C +:1038180014E80C9CF01F00159A3A18973038F006F7 +:103828001800E0880004300CC0484918F006033C32 +:103838005C7A0E9BF01F000F18950C9CF01F000E71 +:103848000E9CF01F000E5815C0310A9CC038E06C61 +:1038580000FF2FEDD8220000000016A28003795C3B +:1038680080037CBC800094C4800072DC00007B086C +:103878008000514080006E188002E28CD401582CE0 +:10388800C13117981789F1E910893018F009190022 +:10389800C0B117C817BA17ACA96A2FBBF00A000A3B +:1038A8005C7AF01F0002DA0A80007380D421581C69 +:1038B800C391580BC0311697C1E81788F80818004B +:1038C800C3411797C33817893018F0091800C13158 +:1038D80017993EE8F0091800C0E1497890093008C6 +:1038E800F0091900C08449581ADB495C1AD8F01F3E +:1038F80000152FED49089088EDB80002C08148F8FE +:103908001AD7491C1AD8F01F000F2FED3038F007CE +:103918001800E08B000848D8F007033CF01F000CA3 +:10392800DA2AE06C00FFD82230072FF8100BCCC140 +:10393800CE2B0000000016A2800379F880037CBC1F +:10394800800094C480037DA800007B088000599CF7 +:10395800D421202D4B981896169414971295908878 +:10396800EDB80002C1314B694B685805F2081700E1 +:10397800201D1AD816985C781ADA1AD84B281ADC3F +:103988004B2C1AD8F01F00322FAD3038F007180032 +:10399800E0880005E06C00FFC8584AE8F0070338E3 +:1039A80050085808C1504A59920A3009F20A1900B9 +:1039B800C0841AD84A484A8C1AD8F01F00252FED1F +:1039C800400CF01F002630094A28F00709391A9CD4 +:1039D800E06A04005016300B1ADC14981AD75C748D +:1039E8001ADB16991AD5089C1ADA169A1AD6F01FF5 +:1039F800001C49282FAD580CC3819088EDB80002EF +:103A0800C1511AD71AD41AD6403850461AD848D8AD +:103A180048B95805F2051700F005171048A81AD537 +:103A2800490C1AD8F01F000A2FAD0E9C400BF01F4E +:103A3800000E301CC3780000000016A280037DC869 +:103A480080037DC4800379C480037DCC800094C446 +:103A580000007B0880037DF88000599C80005D642D +:103A680080037E2480002A689088EDB80002C15146 +:103A78001AD71AD41AD6403850461AD848B848C95E +:103A88005805F2051700F005171048A81AD548ACD4 +:103A98001AD8F01F000A2FAD300948983FFCF007EC +:103AA80009392FEDD822000080037DC480037DC82A +:103AB800800379C480037E50800094C400007B0892 +:103AC800D431584CE081008E580BC2A01785F805F8 +:103AD8001800E081008A179817A7B167EFE81187E7 +:103AE80017B8EFE8108717C8F1E71007C7E80B8980 +:103AF8003018F0091800C7E10B993EE8F0091800E2 +:103B0800C7914C2890093008F0091900C7344C08AF +:103B18001AD54C0C1AD8F01F00402FEDC6B81697CE +:103B28003006C1F80B960BA8F1E610865C86C688AD +:103B380007893018F0091800C72107993EE8F009ED +:103B48001800C6D14B1890093008F0091900C6743E +:103B58004AF81AD34AFC1AD8F01F002F2FEDC5F8DF +:103B68003005C1B80795C61809893018F00918003A +:103B7800C61109993EE8F0091800C5C14A389009EC +:103B88003008F0091900C5644A181AD44A1C1AD812 +:103B9800F01F00212FEDC4E83003C1A80993C50820 +:103BA80009893018F0091800C13109993EE8F0096F +:103BB8001800C0E1495890093008F0091900C0847C +:103BC80049381AD4493C1AD8F01F00132FED06992A +:103BD8000A9AF7D6C0100E9CF01F0010581CC0306F +:103BE800E06C00FFD83230072FF5F6050005C80154 +:103BF800C98B0B833028F0031800C95030062FF307 +:103C0800EA030003C961CADB000016A280037A98A0 +:103C180080037CBC800094C4800039580784301825 +:103C2800F0041800CA0030052FF4E6040004C9D1D6 +:103C3800CB4B09883019F2081800CB1030032FF845 +:103C48001004CAF1CC5B0000D421202D3038169620 +:103C58001494F00B1800E08B0072300750074BA843 +:103C68001188EE081800C0B04B889008EE081900BB +:103C7800C654201D4B684B7C1AD8C0F84B69138971 +:103C8800F0091800C0E14B589008EE081900C56407 +:103C9800201D4AF84B2C1AD8F01F00322FEDC4E82B +:103CA8001A9AE0690400501712981ADAEBDCC0106F +:103CB8001ADB0E9A1AD70E9B1AD40A9C1AD93019F5 +:103CC8001AD7F01F00294A182FAD580CC1B1908897 +:103CD800EDB80002C1114A584A595804F2041700B5 +:103CE800F004171049A81AD64A2C1AD51AD41AD88B +:103CF800F01F001C2FCD0C9C400BF01F001F301C28 +:103D0800C1F89008EE081900C11449884989580477 +:103D1800F2041700F004171048D81AD6497C1AD5AF +:103D28001AD41AD8F01F000F2FCDA17630092FF61C +:103D380049383FFCF0060929C038E06C00FF2FED38 +:103D4800D822000000007B07000016A280037A102A +:103D580080037E80000016AB000016A680037EA0BC +:103D6800800094C480005D6480037DC480037DC8A6 +:103D780080037EB880002A6880037EDC00007B0810 +:103D8800D421583CC661580BC24017843028F0042F +:103D98001800C621179717A8F1E710875C87C5D8C0 +:103DA80009893018F0091800C5D109993EE8F009C9 +:103DB8001800C5814B6890093008F0091900C5241E +:103DC8004B481AD44B4C1AD8F01F00342FEDC4A816 +:103DD80016973006C1B80996C4B80B893018F0098F +:103DE8001800C4B10B993EE8F0091800C4614A886C +:103DF80090093008F0091900C4044A681AD54A6CB9 +:103E08001AD8F01F00262FEDC3883004C1A80B94E0 +:103E1800C3A80B893018F0091800C1310B993EE886 +:103E2800F0091800C0E149A890093008F009190004 +:103E3800C08449881AD5498C1AD8F01F00182FED6C +:103E48000E9C089A0C9B5C7CF01F0015581CC03017 +:103E5800E06C00FFD82230072FF4F6040004CA11E2 +:103E6800CB9B09853018F0051800CB6030062FF57C +:103E7800E8050005CB31CCAB0B883019F2081800E7 +:103E8800CC7030042FF81005CC51CDBB000016A221 +:103E98008003791480037CBC800094C480003C506B +:103EA800D431204D1495740A501A18961788301971 +:103EB800F2081800C771F6C7FFFE1794C1700F8982 +:103EC800F0091800C1310F993EE8F0091800C0E167 +:103ED8004B7890093008F0091900C0844B581AD75C +:103EE8004B5C1AD8F01F00352FED4B189088EDB8B1 +:103EF8000002C0A14AF81AD44B1C1AD61AD51AD8EF +:103F0800F01F002E2FCD3028F0041800E08B004B56 +:103F18003006304030114A624A63C3E80F88E0082F +:103F28001800C4010F990FA8B168F1E911880FB9F9 +:103F3800F1E910880FC92FB7F3E810085807C170C6 +:103F48000F89E2091800C1310F993EEAF4091800F7 +:103F5800C0E18409300AF4091900C0941AD7496CE1 +:103F68001AD35028F01F00152FED400850388489C7 +:103F7800EDB90002C0A11AD84029492C1AD91AD67D +:103F88001AD3F01F000E2FCDF9D6C008FACBFFF4D4 +:103F98002FF6F01F000D0836CC253008301CAAC8B3 +:103FA800C038E06C00FF2FCDD8320000000016A208 +:103FB80080037A4C80037CBC800094C480037F0813 +:103FC80080037F308000C19CD431203D3019149487 +:103FD800189674051788F2081800E0810085F6C75E +:103FE800FFFE1792C1700F89F0091800C1310F99AF +:103FF8003EE8F0091800C0E14BD890093008F009F4 +:104008001900C0844BB81AD74BBC1AD8F01F003B14 +:104018002FED4B789088EDB80002C0A14B581AD20A +:104028004B7C1AD61AD41AD8F01F00342FCD30384A +:10403800F0021800E08B005830064AD04AD1FAC383 +:10404800FFF8C4B80F88304AF4081800C4C10F99A3 +:104058000FA8B168F1E911880FB9F1E910880FC903 +:104068002FB7F3E810085807C1800F89301AF409F0 +:104078001800C1310F993EEAF4091800C0E180091F +:10408800300AF4091900C0941AD749BC1AD150282B +:10409800F01F001A2FED400850288089EDB9000262 +:1040A800C0911AD8497C1AD51AD61AD1F01F001314 +:1040B8002FCD5816C0805826C0B0069B0A9CF01F0A +:1040C8000012C0A8069B0A9CF01F0010C058069B4F +:1040D8000A9CF01F000F2FF60436CB553008301C11 +:1040E800A8C8C038E06C00FF2FDDD832000016A247 +:1040F800800378F080037CBC800094C480037F0830 +:1041080080037F308000CBC88000CA748000CA92C8 +:10411800D421FACD00884C6816979088EDB8000233 +:10412800C0B14C48201D1ADC1AD84C384C3C1AD85F +:10413800F01F00432FCD344A300BFAC6FFFC0C9C0D +:10414800F01F0040306AE06B00FFFACCFFDBF01F85 +:10415800003D0F8A31F8F00A1800E08B008930889A +:10416800EECBFFFFFB68003C0C9CF01F00370F896B +:10417800FB6900244AE89088EDB80002C0A14AE82B +:10418800201D4B2C1AD91AD61AD8F01F002D2FCD66 +:104198000F882FF8FAC6FFB810070C9C0E9B173A29 +:1041A800F01F002BFAC9FF780F88F20800083009C1 +:1041B800F169FFC049E89088EDB80002C0B10F88E6 +:1041C800201D1AD849C81AD64A2C1AD8F01F001C24 +:1041D8002FCD0F8A3018FAC7FFFC3089FACBFFB809 +:1041E8000E9CF01F001D581CC0C0491890093008CB +:1041F800F0091900C3C44908498C1AD81AD8C0E86C +:10420800497CF01F000F0E9C300BF01F001618970A +:10421800581CC080201D1ADC493CF01F00092FEDF6 +:10422800C268492CF01F00060E9CC238000016A276 +:1042380080037A248003787080037F50800094C4C0 +:104248008002E8BC8002E73680037CB08002EE0C76 +:1042580080037F648001908480037F7880037FA03F +:10426800800099A880037FB880037FC0E06C00FFBE +:104278002DEDD822D42120AD4A461697178A31F859 +:10428800F00A1800E08B002FFAC5FFF92FFB0A9CF3 +:10429800F01F001F0F88FAC9FFD8FB680027100914 +:1042A8003008F368FFDF8C88EDB80002C0814998B8 +:1042B8001AD5499C1AD8F01F00192FED300BFACCEB +:1042C800FFF9F01F00171897581CC1B048F890095B +:1042D8003008F0091900C1541ADC48E8491C1AD8FA +:1042E800C0D88C093008F0091900C0353FF7C098CC +:1042F800201D488848CC1AD83FF7F01F00082FED3A +:104308000E9C2F6DD8220000000016A28002E7360E +:10431800800378E080037B18800094C4800099A80B +:1043280080037D5480037FC4D431216D4D281697B6 +:104338009088EDB80002C0B14D08201D1ADC1AD8CB +:104348004CF84D0C1AD8F01F00502FCD321AFAC66F +:10435800FFFD300B0C9CF01F004D0F8A31F8F00A5E +:104368001800E08B0085EECBFFFF0C9CF01F004887 +:104378000F88FB6800234C089088EDB80002C081C4 +:104388004BF81AD64C3C1AD8F01F003F2FED0F8679 +:104398002FF6EE060006FAC7FFAC0C9B0E9C173AE8 +:1043A800F01F003D0D88FAC9FFA8F20800080E9C0E +:1043B8003003F163FFFCF01F00393038EFDCC00830 +:1043C8000D89F00718005FB53018F00918005F185C +:1043D80010450A94E6051800C4A1ECCBFFFDFAC30A +:1043E800FFDC2FE6069C0D8AF01F002B0D88FAC90A +:1043F800FFA8F2080008069BF165FFCCFAC5FFC0CC +:104408000A9CF01F002730D81896F00C18005F1986 +:104418003058F00C18005F18F3E80008E808180096 +:10442800C261FAC4FFB2306AE06B00FF089CF01F5B +:1044380000170C9B08990A9A0E9CF01F001A0E9CF4 +:10444800F01F0019300BFACCFFFDF01F0018581CA4 +:10445800C100489890093008F0091900C0844888BC +:104468001ADC493C1AD8F01F00082FEDE06C00FF59 +:104478002EADD832000016A280037888800379AC6C +:1044880080037F50800094C48002E8BC8002E73635 +:1044980080037FE48002EE0C8002DC2C80009868A8 +:1044A8008001927080019258800099A880037D5401 +:1044B800D401319CF01F0010E06B00EFFE7C280057 +:1044C800F01F000E581CC060FE7C2800F01F000C76 +:1044D800CFC0319CF01F000B48B890093008F00994 +:1044E8001900C0844898201D489C1AD8F01F00095C +:1044F8002FEDD8028000A3008000A7FA8000A7F261 +:104508008000A2E6000016A28003790880037FF0ED +:10451800800094C4D431202D3008FAC7FFF81696CD +:10452800189514930EE81694098B0A9C2FF4F01F23 +:104538000009581CC0B00E9B0A9CF01F0007089881 +:104548000C18E6081900CF13300C2FEDD8320000F4 +:104558008000A7FA8000A816D421202D30081496D0 +:10456800F80C002C129AFAC9FFF812E84A88F00CE5 +:10457800002C169578280C9B0A9C5D184A583049DF +:10458800319C9109F01F00249ABA0C9BFE7C2400F0 +:10459800F01F00221897319CF01F00214A189088BC +:1045A800EDB80002C0414A0CF01F002049D890889D +:1045B800EDB80002C0D149E8201D49EC1AD8F01F17 +:1045C800001B49D80A9C908BF01F001C2FED4958FE +:1045D8009088EDB80002C041499CF01F00144918AA +:1045E8009088EDB80002C0C14918201D491C1AD88E +:1045F800F01F000E9AFB0C9CF01F00102FED9A394B +:1046080049080E9CB0092FEDD8220000000011E0E7 +:10461800000011B88000A3008000451C8000A2E6BD +:10462800000016A080038008800094C480037800EE +:1046380080037C84000011BE80013DB48003800C9F +:10464800000011BCD431202D4BC43048E8C3FFF022 +:10465800BAF81897199616910C90F8C2FFFD2FC456 +:104668003005E21000400988EC081800C4B107883A +:104678003029F2081800C1F10A9C4B08EA05002508 +:10468800029AF00500240E9BE8C5FFF46839F01F74 +:10469800002CC030301CC4E868086A0A049B0FACC0 +:1046A8005D18BAFCE216004030181BF9F009180032 +:1046B800C3C1C3D85800E00A1700F9BA0100E8F8E6 +:1046C800FFFC049B0FAC5D18BAFC30190788F20890 +:1046D8001800C0B10A9C4998EA050025029AF0051D +:1046E80000250E9B6A39C0A83049F2081800C0A1FD +:1046F800029A0E9B0A9CFAC9FFF9F01F0011C170BB +:10470800C1882FF52EC42EC3E0450024CAD148D84D +:1047180090093008F0091900C08448B81AD648BC76 +:104728001AD8F01F000B2FED302CC048304CC02891 +:10473800300C2FEDD8320000000011E080004560F9 +:10474800000016A28003789880038010800094C42B +:10475800D421202D4BD8910C30094BD8118AF20A5C +:104768001800E08000DAB08930085018E1B800007D +:10477800EE180001F5D8C201C020D303FE7824004A +:104788003019706BF7D9D001916B706BF7D9D0C124 +:10479800916B706BF7D9D081916B580AC020D50303 +:1047A8004AC7FACAFFFC6E0B4ABCF01F002C1896C9 +:1047B800C6E04AB8303A6E09910A401B4A98161961 +:1047C800B009E06A03FFF4091900E0880005E06910 +:1047D8000400B0094A064A37EC0B000B4A2C8E8AB3 +:1047E800F01F002230084A2BAC8849FCF01F00213A +:1047F800584CC2204A089088EDB80002C0C149F858 +:10480800201D49FC1AD8F01F001F8E8B496CF01F21 +:10481800001E2FED49889088EDB80002C0D1497874 +:10482800201D497C1AD8F01F00174988490C908B25 +:10483800F01F00152FED4879300893084899B20801 +:1048480048799308C46800000000152C0000151C66 +:10485800000014B0000014B880002D70000011B8DA +:10486800000011BE00000DB88002E736000009B84C +:104878008000464C000016A0800379D880037C8411 +:10488800800094C480013DB4000011BCF01F0024D6 +:104898004A489008EC081900C0A44A3890881AD8E9 +:1048A8004A284A3C1AD8F01F00232FED4A289009BD +:1048B8003008F0091900C0644A084A1C909BF01F90 +:1048C80000214A19300893084A09B20849C9B28830 +:1048D800E06B0120FE7C0D80F01F001DE1B8000098 +:1048E800EE180001F5D8C201C020D303FE782400D9 +:1048F8003019705BF7D9D001915B705BF7D9D0C1E3 +:10490800915B705BF7D9D081915B580AC020D503C1 +:10491800319CF01F00102FEDD8220000800044B811 +:10492800000016A2000014B4800379D88003802CFC +:10493800800094C4000016A6000014B0000014B84B +:1049480080013DB4000011B8000011BE8000A20033 +:104958008000A300D431207D4B6730054B664B782F +:104968001188EA081800EC081710EE0817004B4CDD +:104978001AD8F01F00344B481188EA081800EC07D1 +:1049880017104B2C50074B2230074B23F01F002DDC +:104998000E942FED4B01CBD86A005800E08000B28E +:1049A80080286009201D1AD95028F01F002C602A81 +:1049B8002FFD580AE60A1700E20A171040185C781B +:1049C80060491AD84A681ADC1ADA4A6A5809F40996 +:1049D8001700F00917104A4C1AD91AD01AD61AD744 +:1049E800F01F001860482F8D5808C431E0C9FFBC7B +:1049F800720A580AC0E0744B201D49CC1ADB1ADA37 +:104A08001AD850595048F01F000F2FCD40084019B0 +:104A18002FF82FC95848CED161585808C610704988 +:104A2800493C1AD91AD8F01F00072FEDC598000085 +:104A3800800380548003805C000016AB8003806094 +:104A4800800094C400007B078003807400007B080A +:104A580080037BE480037BDC800096A880037DC410 +:104A680080037DC880038088800380B8800380D05D +:104A780061E85808C350F11900127008201D1AD8AF +:104A8800507850395028F01F002761EA2FFDF53B78 +:104A9800001040291AD940281AD81ADC4A2C1ADBE7 +:104AA8001ADA50B8F01F0021FACAFFE00C9B5084B4 +:104AB800FB5400240E9CF01F001E2FBD40305050A8 +:104AC8001AD0FB1800145028F01F00162FFD4018AC +:104AD8001AD81AD01ADC497CF01F00142FCD0E9C6E +:104AE800F01F001549594968580CF2081710201D85 +:104AF800494C1AD8F01F000D493CF01F000C2FED4F +:104B08002FF62FC55826FE91FF492FF75847C0505A +:104B1800E40700353006C41BF01F000C2FADD83257 +:104B2800800096A8800380E8800094C4800021C893 +:104B380080038114800070788003812C8003812891 +:104B480080038130800381408000D680D431204D9D +:104B58004BE812911896169711895809C1A119881E +:104B6800B6881998EA18FFFFE818FF80B6C9B69802 +:104B7800B6A93EE8B6B83048A2084B589088EDB8B8 +:104B88000002E08100E7201D4B284B3C1AD8C228C0 +:104B9800FACCFFF4F01F0031403366105800C1E131 +:104BA8000D88AE880D98EA18FFFFE818FF80AEA0C0 +:104BB800AE9830093EE8AEC9AEB83048A2084A48B7 +:104BC8009088EDB80002E08100C5201D4A184A4CC3 +:104BD8001AD8F01F00242FEDCBC858B0F9B0020A3C +:104BE80030044A12C0786408F004032C2FF4F01F34 +:104BF800001F641849C51034CF736A0C3004F01FC5 +:104C0800001B8B14661B580BC460A36B301CF01F71 +:104C180000188B0CC3A1497CC1486608F002030B3D +:104C28006A080408501B5008F01F00134008910C34 +:104C3800401B6A082FF4F002030C580CC20148FC10 +:104C4800F01F0008C2880000000016AA000016A283 +:104C58008003783C8003816080018F048003817C1D +:104C6800800094C4000015208002E28C8002DC3CA5 +:104C7800800381988002E2A4800381C0344AF01F37 +:104C880000376A182FF88B18E8021502344C66189A +:104C98001034CC430D88AE880D98EA18FFFFE81849 +:104CA800FF803005AE98AEA030364AD20A984AD96D +:104CB8000E93640AEA0B1502F40B030AF537002079 +:104CC800F4070B08ECCCFFFF2FF7E60C000C5C5741 +:104CD800300AE6060B07C0886404E80B0304E80AF8 +:104CE80007042FFA18C40E9EEE0A1900CF630E9A15 +:104CF8002FFAF4060006928A5C56EDBA0002C1D17A +:104D0800640A202DF40B0304503950281A9C306A89 +:104D1800E8CBFFDFF01F001168CA1ADAE93A003859 +:104D28001ADA491A1AD7491C1AD41AD51ADAF01FEE +:104D380000102F8D400840192FF50035CBB53EE8FF +:104D4800E6060B08069730080C07AE982FF6A20661 +:104D5800302C2FCDD83200008002E7360000152015 +:104D6800000016A28003783C800381E4800094C48C +:104D780048781188580CC0215EFF5C68100C300818 +:104D8800F9390015F00918005F1C5EFC00001530A9 +:104D9800D4211897580CC2A04968F129000030089E +:104DA800F2CA0004F00900065836F5D8E9062FF8CB +:104DB800EE06002C791C163CC17148F89088EDB8B5 +:104DC8000001C0A148D81ADB48DC1AD61AD71AD86D +:104DD800F01F000C2FCDF9D6C00830082F06EE06BC +:104DE80000278F18D8225848CDE1E06C00FFD82260 +:104DF80000001530000016A2800382688003830437 +:104E0800800094C4D42118971695580CC2B04978DC +:104E1800F12900003008F2CB0004F00900065836EA +:104E2800F7D8E9062FF8EE06002A751A580AC03096 +:104E38000A3AC16148E89088EDB80001C0A148D895 +:104E48001AD548DC1AD61AD71AD8F01F000C2FCD5D +:104E5800EE060027F9D6C008EF450044D822584886 +:104E6800CDD1E06C00FFD82200001530000016A25A +:104E780080038CF080038304800094C4D4211897A5 +:104E8800580CC2A049E8F12A00003008F4CC00040C +:104E9800F00A00065836F9D8E9062FF8EE06002978 +:104EA80073195809C170580BC0F049689088EDB85B +:104EB8000001C0A149481AD9494C1AD61AD71AD89C +:104EC800F01F00132FCDEE06002748D8B0866F1CC0 +:104ED800D8225848CDE1580BC10048A8900930089D +:104EE800F0091900C0A448881AD748AC1AD8F01F8E +:104EF8000008300C2FEDD822D82A00000000153009 +:104F0800000016A280038CB880038304800094C438 +:104F180080038324D4214CB816951188189730063D +:104F2800EC081800E08000B6300BF01F004718941A +:104F38005807E0800097580C5F19EC0518005F08C7 +:104F4800F3E81008EC081800E080008C4BF8908813 +:104F5800EDB80002C3314BE811894BE89088EDB8F1 +:104F68000001C2C15C69EE09002871185808C041E7 +:104F7800109E1096C098EE09000AF53E0015F2CA78 +:104F8800FFF8EE0A03266F5A201D580AF40C170082 +:104F9800F5FC10045808F00B1700F1FB10041ADE9A +:104FA8001AD61ADC1ADA1ADB1AD84AB81AD74ABC3F +:104FB8001AD91AD8F01F002A2F6D5805C3D068488F +:104FC80058485F1958085F181268C3304A08118991 +:104FD8004A089088EDB80001C2C15C69EE09002852 +:104FE80071185808C04110951096C098EE09000A2B +:104FF800F5350015F2CAFFF8EE0A03266F5A201D90 +:10500800580AF40C1700F5FC10045808F00B1700A8 +:10501800F1FB10041AD51AD61ADC1ADA1ADB1AD8D8 +:1050280048D81AD748DC1AD91AD8F01F000D2F6DA6 +:10503800E93C0013D8226F58F13C0013D822000035 +:10504800000016AB80004E84000016A80000153042 +:10505800000016A28003828C80038348800094C4D9 +:1050680048D890093008F0091900C1345807EE08EB +:105078001700EE041700EFF810151AD848781AD45C +:10508800487C1AD71AD8F01F0007300C2FCDD82229 +:10509800D82A0000000016A88003828C8003838C25 +:1050A800800094C4D421580CC25049D8F12900007A +:1050B8003008F2CA0004F00900075837F5D8E907A4 +:1050C8002FF8F807002E7D1E163EC12149589088FA +:1050D800EDB80001C0A149481ADB1AD71ADC493CCF +:1050E8001AD8F01F00132FCD0E9C5C5CD8225848AC +:1050F800CE31490890093008F0091900C045E06C24 +:1051080000FFD8224888201D1ADB1ADC48AC1AD8C0 +:10511800F01F0007E06C00FF2FCDD82200001530EB +:10512800000016A6800382BC80038304800094C418 +:10513800000016A2800383C0D421580C5F18580BB6 +:105148005F1918961695F3E800081494C590580A44 +:10515800C5704AC89088EDB80001C0C114985C7841 +:10516800201D1AD84A881ADB4A8C1AD8F01F002842 +:105178002FCD4A889088EDB80001C0D14A28201D5B +:105188004A5C1AD8F01F0022089B0A9C5C7BF01F1F +:1051980000232FED300A5C74149C089BF01F00203C +:1051A8001897C0E149789008F8081900C29449682E +:1051B8001AD649CC1AD8F01F00162FEDC1C8089A84 +:1051C8000A9B781CF01F00180E9B6DECF01F00174F +:1051D8005C5CC12048B890093008F0091900C08407 +:1051E80048981AD6492C1AD8F01F00092FED0E9CA2 +:1051F800F01F0010DC2A0E9CF01F000EDA2ADC2AB1 +:10520800000016A280038CE4800383E8800094C425 +:10521800000016A080037C8480013DB48000D31870 +:10522800800383FC8002E7368001153880038428D8 +:105238008000D13CD421149518971696580CC0417B +:10524800E06C00F6D822F01F00163FF8E9DCC00831 +:10525800F0041800C041E06C00FFD822491890887B +:10526800EDB80001C0E16C48201D1AD848E85C651B +:1052780048EC1AD51AD61AD71AD8F01F000D2FAD38 +:105288006C4858485F0948B8B0893008EE040004F3 +:10529800E9680068F01F00088F7CD82A800050ACAD +:1052A800000016A280038D1080038450800094C4EF +:1052B80000007B0780009504D43118971695F01FDD +:1052C80000353FF8EDDCC008F0061800C5E0EE0632 +:1052D80000083009F1690015ECC8FFF8EE0803244E +:1052E8005804C5304AC89088EDB80001C0A14AB832 +:1052F800201D4ABC1AD41AD41AD8F01F002A2FCD60 +:10530800EB1800726EF91238F20817B00838F0047A +:1053180017804A589088EDB80001C051F01F00234B +:105328004A38910CECC8FFEA3019EE08032B089AAA +:105338000A9C5C7AF01F001FE7DCC008C19049A8EE +:105348009088EDB80001C0F16A48201DF3D3B00879 +:105358001AD91AD41AD849181AD5497C1AD8F01F5C +:1053680000112FAD0C073008EF680015C10830197F +:10537800ECC8FFF8EE060006ED690015EE080329F3 +:105388000819EE080929C038E06300FF069CD832E6 +:10539800800050AC000016A680038C7880038474CB +:1053A800800094C4000016A2800095040000153403 +:1053B800800109C08003848CD43116941493189703 +:1053C800580CC1014AB89008F8081900E08400D3C5 +:1053D8004A98201D4A9C1AD8F01F00293FFC2FED3F +:1053E800D832300BF01F0027189B18960E9CF01F20 +:1053F80000263FF8EBDCC008F0051800E08000BB91 +:105408004A289088EDB80001C0E1F1D3C010201DF2 +:105418001AD849981AD449EC1AD61AD71AD8F01FAC +:1054280000182FAD49B89088EDB80001C0D14928BF +:10543800201D499C1AD8F01F0012F7D3C010089CF1 +:10544800F01F00162FED49189088EDB80001C4B17F +:105458004938118948789088EDB80001C4415C69E1 +:10546800EE09002871185808C1C11092109EC21880 +:10547800000016A280038D20800384C0800094C49D +:1054880080004E84800050AC000016A6800384D8AB +:10549800000016A080037C8480013DB40000153014 +:1054A800EE09000AF5320015F2CAFFF8EE0A032EDB +:1054B8006F5A201D580AF40C1700F5FC1004580800 +:1054C800F00B1700F1FB10041AD21ADE1ADC1ADAF4 +:1054D8001ADB1AD84A881AD74A8C1AD91AD8F01F50 +:1054E80000282F6D5806C46058045F183009F2036D +:1054F80019005F1AF5E80008F2081800C3B0EAC8F6 +:10550800FFEAEE08032C580CC3506C4858785F0B20 +:1055180058485F0AF7EA100AF20A1800C0515828DA +:10552800C0305838C2715C73089B069AF01F00158A +:10553800EAC9FFEA300AEE090328F0030B0A4928F2 +:105548009088EDB80001C0A1EE0903281AD848A830 +:1055580048EC1AD8F01F000A2FED48DB0C9C2F8569 +:10556800EE050923F01F000B0C9B0E9CF01F000A90 +:10557800DA3ADC3A80038D2080038348800094C4A3 +:105588008002E736000016A6800384FC800055A040 +:105598008000D662800052C0D431149518971696B0 +:1055A800580CC041E06C00F6D832F01F001D3FF8DF +:1055B800E9DCC008F0041800C041E06C00FFD832F4 +:1055C8003009EE040008F16900683019F169001526 +:1055D80049489088EDB80001C171E8C8FFF8EE08A5 +:1055E8000323F01F00114918201D1AD37008F8086A +:1055F80001081AD848E85C7548EC1AD51AD61AD8A2 +:10560800F01F000D2FAD2F84EE04032C580CC06042 +:105618000C9B0E9CF01F0009300CD832800050AC57 +:10562800000016A2800095040000153480038D50F8 +:1056380080038508800094C4800052C0D421189744 +:10564800580CC1C0F01F000E18965BFCC060EF3B01 +:10565800000B5C5CF01F000B48B89088EDB80001A7 +:10566800C0A148A8201D48AC1AD61AD71AD8F01FCE +:1056780000092FCD30094888B089D82280002044FD +:1056880080002068000016A280038D3C80038538C6 +:10569800800094C400007B07D4314898189711897A +:1056A80048889088EDB80001C3015C69F8090028B2 +:1056B80071185808C08110951096C0D80000153090 +:1056C800000016A2F809000AF5350015F2CAFFF81D +:1056D800F80A03266F5A201D580AF40C1700F5FC27 +:1056E80010045808F00B1700F1FB10041AD51AD64D +:1056F8001ADC1ADA1ADB1AD84C281AD74C2C1AD901 +:105708001AD8F01F00422F6D0E9C3005F01F004084 +:10571800EEC6FFBC0A924BF34BA45C5CF01F003E44 +:105728006C08300B2FF5109C5808C1D0F01F003BB7 +:105738006C0C300BF01F003A6C0C300BF01F00396A +:105748006C0C300BF01F00388688EDB80001C0B132 +:10575800201D1AD26C0870484B4C1AD81AD4F01F66 +:10576800002B2FCD2FC65845CDC16F5C580CC1D02A +:10577800300BF01F002A300B6F5CF01F002D6F5CA0 +:10578800F01F002C4A385C5C9088EDB80001C0D14D +:10579800201D5C6C1ADC6F5870481AD849984A6CFE +:1057A8001AD8F01F001A2FCD6FEC580CC060F01FEC +:1057B80000236FECF01F00224A28F1260000495808 +:1057C8009088EDB80001C0E1ECC8FFEAEE080328B4 +:1057D800201D1AD848B81AD649BC1AD8F01F000B91 +:1057E8002FCD2EA6EE06032C580CC060F01F001714 +:1057F8003008EE0609280E9CF01F0014D83200006D +:1058080080038CC880038348800094C480002044AF +:10581800000016A280006F288000D6588000D6624B +:105828008000D65C8000D668800385608000D66ED4 +:105838008000E50480038588800111C88001122852 +:1058480000001530800385B08002E28CD4211897BF +:10585800580CE080007EF01F00413FF8EDDCC008E6 +:10586800F0061800C750EE0600287114089CF01FB7 +:10587800003CEBDCC008C0D10A9B089CF01F003933 +:105888000A9B089CF01F00380A9B089CF01F0037F1 +:105898004B789088EDB80001C0D1F1D5B0081AD87E +:1058A80068481AD84B381AD44B3C1AD8F01F003322 +:1058B8002FCD4AF43FF8F0051800C1718809300867 +:1058C800F0091900C0D4EE0600287118201D1AD856 +:1058D8004AB81AD64ABC1AD8F01F00282FCD0C0790 +:1058E8003018EF68006CC368EE0600083009F169EB +:1058F800006CEE0600280E9C711BF01F00238888A0 +:10590800EDB80001C0E1ECC8FFEAEE080328201D4D +:105918001AD849B81AD649DC1AD8F01F00182FCD62 +:105928002EA6EE06032C580CC060F01F0019300894 +:10593800EE06092848E89088EDB80001C0B149088A +:10594800201D494C1AD8F01F000D2FEDC038E06516 +:1059580000FF0A9CD8220000800050AC8000E504BB +:105968008000D6588000D6628000D65C000016A25F +:1059780080038D2C800385CC800094C480038CD850 +:10598800800385F880004D98800385B08002E28C02 +:1059980080038624D4211897580CC0E14BE890085E +:1059A800F8081900C7744BD8201D4BDC1AD8F01F13 +:1059B800003D2FEDD82278264BB85806C121F12595 +:1059C8000000F01F003A0E9CEF34000BF01F003867 +:1059D800089B5C5CF01F00370A07EF660068D82256 +:1059E80011894AD89088EDB80001C2C15C69F809EC +:1059F800002871185808C04110951096C098F809E9 +:105A0800000AF5350015F2CAFFF8F80A03266F5A9E +:105A1800201D580AF40C1700F5FC10045808F00B68 +:105A28001700F1FB10041AD51AD61ADC1ADA1ADB99 +:105A38001AD849A81AD74A0C1AD91AD8F01F001927 +:105A48002F6D4998F1260000ECC5FFF0EE05002502 +:105A58006A1C580CC1F078485898C1C05808C1A0B1 +:105A6800F01F001648C85C5C9088EDB80001C0C102 +:105A7800201D5C6C1ADC6A181AD84888490C1AD898 +:105A8800F01F00082FCDEE0600260E9C6D1BF01FA0 +:105A9800000DD822000016A2800382988003864455 +:105AA800800094C400001530800056A08000204477 +:105AB800800020688003834880010CEC8003865CAA +:105AC80080005854D4214B0818979009169630082E +:105AD800F0091900C0F44AD8F12800001AD8F1DBFF +:105AE800B0081AD84AA81ADC4AAC1AD8F01F002AFB +:105AF8002FCD4AA811893008F0091800C0414A8CF6 +:105B0800F01F00253FB8F0061800C3C15807C110A0 +:105B180049E830091188F2081800C0B53039F20890 +:105B28001800E08900075C68EE080028711BC0288F +:105B3800300B0E9CF01F001B49389088EDB800010F +:105B4800C1114928F1280000201DF0C9FFEAEE091B +:105B580003291AD91AD848E8493C1AD8F01F000E68 +:105B68002FCD48A6ED2800002EA8EE08032C580CCF +:105B7800C090F01F000EED28000030092EA8EE0896 +:105B88000929D822000016A200001530800382A837 +:105B980080038680800094C4000016AB800386B41E +:105BA80080004D98800385B08002E28CD42118973C +:105BB8001696580CC4E04A8890093008F009190074 +:105BC800C0C4F1DBB0081ADC1AD84A481ADC4A4CBF +:105BD8001AD8F01F00242FCD4A3811893008F0094F +:105BE8001800C0414A1CF01F001F3FB8F0061800FB +:105BF800C301499890093008F0091900C084497810 +:105C08001AD749BC1AD8F01F00172FED0E9CF01FA9 +:105C180000194998F126000048F89088EDB800016D +:105C2800C0E1ECC8FFEAEE080328201D1AD848B8DE +:105C38001AD6492C1AD8F01F000B2FCD2EA6EE0627 +:105C4800032C580CC060F01F000E3008EE0609281F +:105C5800D8220000000016A2800382D0800386C8E4 +:105C6800800094C4000016AB800386B4800386F8D5 +:105C78008000564400001530800385B08002E28C15 +:105C8800D4311897149678CC94CAF80A000A8FCAA7 +:105C98001093169512946E385808C1504A5CF01F3C +:105CA8000026EF18001A3509F0090D083008F00928 +:105CB8001900C0414A1CF01F0020EF08001A2FF8F5 +:105CC800EF58001A49E89088EDB80001C171202DFD +:105CD800304A1A9C089BF01F001BF01F001BEF386E +:105CE8000014F3D3C01050091ADC1AD849781AD610 +:105CF800497C1AD8F01F00102FAD0A9AEF3B001408 +:105D08000C9CF01F001409890998B168F1E9118801 +:105D180009A9F1E9108809BBEF3C0014F5D3C010BC +:105D2800104BF01F000D0C9CF01F000CD832000027 +:105D380080037FB4800094C4800384D4000016A23A +:105D48008002E736800096A88003827C800387184B +:105D580080007130800020088000D13CD431204D73 +:105D6800502C503BFAC4FFCC10916800681268238D +:105D780068386846129568545819E088000E4B58E0 +:105D880090093008F0091900E08402B0201D4B2862 +:105D98004B2C1AD8C2F85801C0C14AE89008E2084A +:105DA8001900E08402A3201D4AB84ADC1AD8C22888 +:105DB8005802C0C14A789008E4081900E0840296A5 +:105DC800201D4A584A7C1AD8C158501A500837CB57 +:105DD800301CF01F0025401A18974008C10149D807 +:105DE8009008F8081900E0840281201D49A849FCA0 +:105DF8001AD8F01F001F2FEDE08F0278402999383C +:105E0800B829300840395C729900B831992599DA77 +:105E180099E999F29943F9480050F9480044F9483A +:105E28000048F948004C5803E080008C3058F95875 +:105E38000074F01F0010EF4C00784865580CC1D171 +:105E48008A08F8081900E084020C1AD748A8C8582C +:105E5800000016A280038CA880038744800387640F +:105E6800800387848002DC3C800387A8800094C478 +:105E780080011200800382F88A88EDB80001C131E0 +:105E88006E08201D8EA51AD8F01F00366FE8500541 +:105E98001ADC1AD84B481AD84B484B5C1AD8F01F52 +:105EA80000352FAD6E258EAA6FEC5805C1210E9BCB +:105EB800F01F00315C5CC2504B089008EA081900DA +:105EC800E08401CF1AD74A984ADC1AD8E08F0175C6 +:105ED8004ACBF01F002DF5DCC008C0E04A789009D5 +:105EE8003008F0091900E08401BC201D5C6A49F8FB +:105EF8001ADA1AD7C499EF3C0014149BF01F002338 +:105F08006FEC0E9A4A2BF01F002349C8908CE21CB4 +:105F18000002E08001A76FE8F11900141AD970197E +:105F28001AD9F11900121AD970081AD848E81AD8DB +:105F380048E8499C1AD8F01F000F2FADE08F018F59 +:105F4800F01F00161892C2F148C89008F808190006 +:105F5800E08401871AD749281AD8492CC2D90000E9 +:105F6800800096A88003825C800382F88003880CF6 +:105F7800800094C480011320000016A280038824A6 +:105F88008003B409800112608000200880005C88CA +:105F9800800111F8800388848000E34080038C6CC2 +:105FA800800387E04B880E9BB083F01F0038EF63B7 +:105FB800006FEF63006CEF63006DEF63006E6E2897 +:105FC8004B355808E08100BD049B0E9CF01F003142 +:105FD800E7DCB0086EFCF01F0030E6C8FFEAEE0808 +:105FE800092C8A88EDB80001C0A14AC8201D1ADC16 +:105FF8004ABC1AD31AD8F01F002B2FCD2EA34A451E +:10600800EE0303285808C0B18A09F0091900E08492 +:1060180001281AD74A184A4C1AD8CCE84A3B049C9B +:10602800F01F00234A3B049CF01F00234A3B049CBA +:10603800F01F0023304A4A3B049CF01F00234A38D3 +:106048003009B0898A88EDB80001C0C1EE03032881 +:10605800201D1AD849181AD249DC1AD8F01F001185 +:106068002FCD4898118948A89088EDB80001C5310E +:106078005C69EE09002871185808C2B11093109590 +:10608800C3080000000015308000D658000016A292 +:1060980080004E0C8002E2A480038C6C800388A8E8 +:1060A800800094C4800388C480005BB48000D668F4 +:1060B800800069888000D65C800055A08000D66288 +:1060C800800067B48000D67200007B07800388F4E4 +:1060D800EE09000AF5330015F2CAFFF8EE0A0325A7 +:1060E800201D5808F00B1700F1FB10046F5A580ACE +:1060F800F40C1700F5FC10041AD31AD51ADC1ADAB6 +:106108001ADB1AD84B681AD74B6C1AD91AD8F01F51 +:1061180000362F6D049C4B598EAA0E9BF01F00343D +:106128005C5CE080009F4B3890093008F00919004A +:10613800E08400971AD74AA84AFC1AD8C3D88A8894 +:10614800EDB80001C0F1301B0E9CF01F002C6F58F9 +:106158001ADC1AD84A281AD74A9C1AD8F01F0022E3 +:106168002FCD8EAA4A7B049CF01F00275C5CC120BF +:106178004A0890093008F0091900C724201D5C6CF2 +:1061880049781ADC1AD71AD84A0CF01F00172FCDF5 +:10619800C678049CE06B00FFF01F001DEF4C005414 +:1061A8004945580CC0D18A08F8081900C5941AD76F +:1061B80048B8498C1AD8F01F000C2FEDC5188A88EA +:1061C8004959E21800021389C4505C69EE09002895 +:1061D80071185808C2211095109BC27880038C6CE6 +:1061E80080038348800094C48000523C8000E350C0 +:1061F800000016A28003891080004E84800389382D +:106208008003B4098000D7708003884C8000DC04C8 +:106218008003896400001530EE09000AF535001581 +:10622800F2CAFFF8EE0A032B7843201D5808F00A3B +:106238001700F1FA10041AD51ADB1AD31ADC1ADA85 +:106248001AD84AC81AD74ACC1AD91AD8F01F002B1C +:106258002F6D4ABB6F5CF01F002B300CC0283FFC31 +:106268004A95580CC0E08A093008F0091900C3A4FF +:106278004A68201D4A6C1AD8F01F00202FEDC32849 +:106288008A88EDB80001C2914A284A396E204A31FD +:106298005800F2001700F00017108E226E484A09C5 +:1062A8006EF35808F20117108E355818C0316FEC8C +:1062B800C058301B0E9CF01F001B49481AD05C7256 +:1062C8001AD15C751AD21AD31AD51ADC496C1AD7A6 +:1062D8001AD8F01F000A2F8D8907EF660014300CBA +:1062E800C0580E9CF01F00113FFC2FCDD832000083 +:1062F80080038C6C80038348800094C480006434DD +:106308008000D66E000016A280038CA880038988BE +:1063180080037BDC80037BE480037DC880037DC42D +:1063280080004E84800389A8800056A0D431203D87 +:10633800300730194B38E06504001892169191091E +:10634800E06007D00A9350070E964AF4C22826CC7C +:1063580058ACE08B001F4ADEFC0C032F3016C198A6 +:106368003006C178680CF01F002AE7DCB010C118AD +:1063780030185008C0E8680CF01F0025EBDCB0109E +:10638800C0883017C068680CF01F0021E1DCB0102D +:106398004A0A029B049CF01F00205BFCCD91580622 +:1063A800C161498870080438C0A4E208032BFACCFC +:1063B800FFF8F01F001A402B580BC0A14988201D78 +:1063C800498C1AD8F01F00182FEDC198300B502BAC +:1063D800F1D5C0100C99FAC5FFFC300650161AD535 +:1063E8001AD6402E5C731ADEF9D0C0101AD70C9A50 +:1063F8001AD31ADB0C9BF01F000D2FAD2FDDD83AF6 +:1064080000007AB800007AC0800382208002DC2C69 +:10641800800389E08002E278800098FC0000000C8C +:10642800800389EC800094C480005D64D4211897AF +:106438001696580CC041E06C00F6D8224C1890888B +:10644800EDB80001C0A14C08201D1ADB1ADC4BFC7A +:106458001AD8F01F003F2FCD4BA89088EDB8000147 +:10646800C0F16C481AD8ED1800241AD8ED18001C91 +:106478001AD84B584B7C1AD8F01F00352FCD0C9BDF +:106488000E9CF01F0035EDDCB008ECC8FFEAEE0802 +:1064980003285808C0804B18201D4B1C1AD8F01F21 +:1064A800002C2FED6EFCF01F002FECC8FFEAEE0861 +:1064B800092C4A489088EDB80001C0A14A28201D3F +:1064C8001ADC4A9C1AD61AD8F01F00212FCDECC826 +:1064D800FFEAEE0803285808C10149A99209F00902 +:1064E8001900C08449881AD74A0C1AD8F01F001816 +:1064F8002FEDE06C00FFD8220E9B2F06EE0600263B +:106508006C1CF01F001B49BB6C1CF01F001B49BB17 +:106518006C1CF01F001B6C1C304A49ABF01F001AA2 +:106528000E9CF01F001A583CE08B00075C5C300A98 +:106538000E9BF01F0017F01F00178F7CD82A000051 +:10654800000016A2800382E8800389F0800094C4CA +:1065580080038A1480004E0C80038A3880039DC013 +:106568008002E2A4800388A8800388C48000D658EB +:10657800800069888000D65C80005ACC8000D6688C +:106588008000659C8000D6728000204480002A002C +:1065980080009504D43118971695580CC041E06CCA +:1065A80000F6D832F01F00473FF8EDDCC008F006CF +:1065B8001800C041E06C00FFD832ECC8FFF8EE08C4 +:1065C80003285808EFD6E108F1F91868F7B901FF70 +:1065D800F1F91E68EE0600083049F1380068F20843 +:1065E8001800E088001E4B89920A3009F20A190047 +:1065F800C0A41AD84B581AD74B5C1AD51AD8F01F12 +:1066080000352FCD0C070A9C3006301BEF6600685A +:10661800F01F0031E06C00FBEF66006CD8325805C3 +:10662800C1504AE89088EDB80001C101EAF800A815 +:106638001AD8EAF8009C1AD8EB3800AD1AD84A38AC +:106648004A7C1AD8F01F00232FCDECC8FFF8EE08BB +:1066580003245804C1D049C89088EDB80001C1810D +:10666800EE060008301BF1330068F132006C0E9C16 +:10667800F01F001C4958201D1AD41AD21AD31AD751 +:106688001AD51ADC498C1AD8F01F00122F8D0A9BD4 +:106698000E9CF01F0016EE0600033002E738006C6F +:1066A800E4081800C7100A9CF01F00113FF8E9DC45 +:1066B800C008F0041800C1D13018E768006CC4A8FD +:1066C800800050AC000016A280038C8C80038A4C9A +:1066D800800094C48000E124000016A880038A7C0E +:1066E80080004E8480038AB0800052C08000E50498 +:1066F800EE060028E762006C711B0E9CF01F002359 +:106708004A389088EDB80001C0E1ECC8FFEAEE080D +:106718000328201D1AD849F81AD649FC1AD8F01FA0 +:10672800001F2FCDECC3FFEAEE03032C580CC0600A +:10673800F01F001B3008EE03092849589088EDB86F +:106748000001C0814938201D496C1AD8F01F001378 +:106758002FED48F89088EDB80001C1610E9C301B00 +:106768000C07EF37006CF01F001048A81AD65C64BD +:106778001AD41AD71ADC48DC1AD51AD8F01F000721 +:10678800300C2FADD832D83A80004D98000016A2B0 +:1067980080038C8C800385B0800094C48002E28CD6 +:1067A8008003862480004E8480038AF0D4311897B1 +:1067B8001695580CC041E06C00F6D832F01F003E28 +:1067C8003FF8EDDCC008F0061800C041E06C00FF9F +:1067D800D8324BA89088EDB80001C1A1EE06000898 +:1067E800F1340068F133006C4B58301B11820E9C59 +:1067F800F01F00344B48201D1AD21AD31AD41AD7C6 +:106808001AD51ADC4B1C1AD8F01F00312F8DEE0652 +:1068180000083009F13A006CF20A1800C060F1393A +:1068280000682FF9F1690068EE060008F134006885 +:106838003088F0041800E08800224A68900930087F +:10684800F0091900C104301B0E9CF01F001E49E816 +:10685800201D1AD41AD71ADC49FC1AD51AD8F01FE9 +:10686800001C2FAD30080C070A9CEF680068301B2D +:10687800F01F001AE06C00FBD83249181189300863 +:10688800F0091800C0500A9B0E9CF01F0015EE0678 +:1068980000043008E939006CF0091800C6100A9C99 +:1068A800F01F00103FF8F00C1800C1D13018E9684B +:1068B800006CC3E8800050AC000016A800007B07FD +:1068C80080004E848003824C80038B2C800094C40B +:1068D800000016A280038B6C8000E124800052C067 +:1068E8008000E5040E9CF01F001F49F89088EDB861 +:1068F8000001C0E1ECC8FFEAEE080328201D1AD801 +:1069080049A81AD649AC1AD8F01F001A2FCDECC4E2 +:10691800FFEAEE04032C580CC060F01F0017300883 +:10692800EE040928EE0600083009F169006C48E811 +:106938009088EDB80001C1410E9C301BEE060006A0 +:10694800ED37006CF01F000D48881AD71ADC48CCC8 +:106958001AD51AD8F01F0007300C2FCDD832D83AE4 +:1069680080005644000016A28003824C800385B044 +:10697800800094C48002E28C80004E8480038B984F +:10698800D4311294580A5F1830091497F204180089 +:106998005F0318961695E7E80008F2081800C55036 +:1069A800335CF01F00406CC98EC8F20800088DC81F +:1069B8006C385808C0614BC89088EDB80001C231E6 +:1069C8004BA89088EDB80001C0918EC81AD84B88A2 +:1069D8004B8C1AD8F01F00382FED4B889088EDB8F3 +:1069E8000001C0C14B28201D4B5C1AD8F01F003293 +:1069F8008ECB6E1CF01F00332FEDED08001A2FF818 +:106A0800ED58001A0A9AED3B00140E9CF01F002E58 +:106A18004A689088EDB80001C1218EC8201D1AD897 +:106A28001ADCED38001430091AD91AD71AD51AD831 +:106A380049F84A6C1AD8F01F00202F8D0E9CF01FC1 +:106A48000024335CF01F002358075F081063C160FF +:106A580049689088EDB80001C0C1201D1AD5ED38ED +:106A680000141AD8492849CC1AD8F01F00132FCD82 +:106A78000A9B0C9CF01F0019C1385804C11048B873 +:106A880090093008F0091900C0B44898201D5C64CA +:106A98001AD7493C1AD41AD8F01F00072FCDD83A74 +:106AA8008000A300000016A6000016A280038C98A0 +:106AB80080038BC8800094C4000016A080037C84E7 +:106AC80080013DB48000713080038BD88000D13CB8 +:106AD8008000A2E680038C108000585480038C3C10 +:106AE800D42148C8189716969088EDB80001C0A11F +:106AF8004898201D1ADB1ADC488C1AD8F01F0008A9 +:106B08002FCDF7D6C0100E9CF01F0006D82200002B +:106B1800000016A280038D0480038C50800094C46A +:106B28008000D984D4213007C1B80C9C0E9B2FF665 +:106B3800F01F000D1895C0F078485808C0C1F01F24 +:106B4800000B0A9CEB35000BF01F00090A9B5C5CEC +:106B5800F01F00085846CEA12FF75827C03030063E +:106B6800CE5BD82280002024800056A080002044DC +:106B780080002068D4214978F00C07085808C071B3 +:106B88004959F20C070AF00A1800C1F04929F20C19 +:106B9800070AF4081800C1904909F80C001CF0080D +:106BA8000017A567EE0C0027120748D99289EDB99E +:106BB8000004C0C11AD848B81ADA48BC1AD71AD87B +:106BC800F01F000A2FCDC02830070E9CD8220000E5 +:106BD8000000153C0000153800007B2C000016A6AC +:106BE8008003901080038DE0800094C4D421169710 +:106BF8001496F01F0005C0609828AC087808301C6F +:106C08008F08D82280006B7CD43149B849B91092DA +:106C1800F00C0708F20C070718961AD7498C1AD8EF +:106C2800EC060014F01F001749732FEDA36431E53B +:106C3800EE070018A568E8080008E60800087009CB +:106C48005809C0C090BA90AB1ADB1AD9702848FC12 +:106C58001AD81ADAF01F000B2FCD2FF7E406070811 +:106C68005C57EE051800F9B70000EE081800CE11C1 +:106C7800D8320000000015380000153C80038DF460 +:106C8800800094C400007B2C80038E0CD431201D1E +:106C98004A181896F00C07073005F80C001849F048 +:106CA800A36849F149F231E349F4EE070019A569EF +:106CB800F0090009E0090009720A580AC1D0923B9C +:106CC800922A8289F40B010CE2190010F8050005DC +:106CD8005C855809C1105C7B5C7AF3D5C010201D17 +:106CE800492C1AD91ADB1ADA1AD61AD25068F01FA8 +:106CF80000102FAD40082FF7E80607095C57EE0390 +:106D08001800F9B70000EE091800CD010A9C2FFD04 +:106D1800D83200000000153C00007B2C000016A6AD +:106D280080038DA00000153880038E28800094C44D +:106D3800D421F01F000B48B8EFDCB0109088EDB8F4 +:106D48000004C0A10E985C781AD84878487C1AD8F4 +:106D5800F01F00072FED0E9CD822000080006C94D5 +:106D6800000016A680038D7080038E4C800094C4AA +:106D7800D4214A181897169631D9F20C1800E088D1 +:106D8800000F90093008F0091900C33449B81ADC1B +:106D980049BC1AD8F01F001B2FEDD822F60B001A99 +:106DA8009088F80C0019E2180010A569F20A002969 +:106DB800495AF40903055808C0A04908201D1ADCDF +:106DC800492C1AD51AD8F01F000F2FCD0A9CF01F96 +:106DD80000103008EC060016EE07001748A9A56752 +:106DE800EE060026F20600068D288D08AC28AC3881 +:106DF800D8220000000016A280038DD080038E6880 +:106E0800800094C400007B2C80038E888002E28C72 +:106E1800D4314948F80C00121896F00C0707A36201 +:106E2800491331E44915EE070018A568E40800087D +:106E3800E60803085808C0500E9C0C9BF01F000C75 +:106E48002FF7EA0607085C57EE041800F9B70000A8 +:106E5800EE081800CE914839300CF2060B08D832EB +:106E68000000153C00007B2C0000153880006D7870 +:106E7800D4211897580CC0E14A189008F80819004E +:106E8800C3C44A08201D4A0C1AD8F01F00202FED51 +:106E9800D82249FAF40B070CF8CEFFFFF80C001CB7 +:106EA800A56CF40B0B0E3008F60B0019F809002935 +:106EB800498CF809000993289308B228B23831E9B7 +:106EC800F20E1800C031F40B0B0848D89088EDB8C2 +:106ED8000004C10148E8F00B07081AD848E8F00B8D +:106EE80007081AD848781AD748CC1AD8F01F0007CC +:106EF8002FCD0E9CF01F000AD8220000000016A219 +:106F080080038D8480038E98800094C40000153C13 +:106F180000007B2C0000153880038DE08002E28C95 +:106F2800D42118970E9CF01F0005C060780C0E9BAA +:106F3800F01F0003CF8BD82280006B7C80006E7816 +:106F4800D421496818971696149512949088EDB82C +:106F58000001C0C14928201D1AD91ADA1ADB1ADC27 +:106F6800490C1AD8F01F00102FAD301B0A9CF01FD7 +:106F7800000FC080301B0A9CF01F000C784858088E +:106F8800C0510C9B0E9CF01F000A5804C0500A9B6D +:106F9800089CF01F0008D822000016A280038D600C +:106FA80080038EAC800094C48000202480006AE8AE +:106FB80080006E78D4211897F01F00061898C02119 +:106FC800D8220E9A782C700990ABF01F0003DA2AA9 +:106FD80080006B7C80006F48D42116961494189515 +:106FE800F01F001E1897C021D8229838982B7809CE +:106FF800F6081900C2B2F5D8C0105804C050F20AF9 +:107008000708AC88C068F20A0709AC892FF8B838B5 +:1070180049389088EDB80004C0D10D881AD86E0898 +:107028001AD88EB81AD848F848FC1AD8F01F000F9A +:107038002FCD8E3B8E28F6081900C0710A9A5C7B0A +:107048006E2C6E09F01F000ADA2A0A9A5C7B782CEB +:10705800F01F0007D82A000080006B7C000016A6ED +:1070680080038D9080038ED4800094C480006F4884 +:10707800D4211897F01F00231896C021D8224A2837 +:107088009088EDB80004C0D178081AD898A81AD802 +:107098008CB81AD849D849EC1AD8F01F001E2FCD41 +:1070A8008C398C28F0091900C020DA2A49A8908860 +:1070B800EDB80004C1614998201DF0070709498807 +:1070C8001AD9F00707081AD8F20818005F191AD950 +:1070D8006C081AD848D8493C1AD8F01F000E2FADB2 +:1070E8006C2C6C090E9A8CABF01F000F48C8F00787 +:1070F800070948A8F0070708F00918005F1CD822FC +:1071080080006B7C000016A680038DBC80038EE88F +:10711800800094C4000016A2000015380000153C39 +:1071280080038F0080006F48D43118951697149308 +:10713800580CC0311894CBD8F60B001A4A58F00BEB +:107148000708F0080019A569F20A00294A2AF40973 +:1071580003095809C1604A1A940B300AF40B190044 +:10716800C0A4201D1AD849E81AD949EC1AD8F01F2A +:10717800001E2FCD49780E9BF007070CF01F001B4F +:10718800301B8ACCF01F001A18961894E0800092E1 +:10719800189B30098ACA0A9CF01F00168A485C8C22 +:1071A800F00C1900C2C048D9920A3009F20A190035 +:1071B800C0B45C781AD848A81AD648FC1AD51AD888 +:1071C800F01F00092FCD0C9C3004F01F000CC718CD +:1071D8000000153800007B2C000016A280039004E4 +:1071E80080038F2C800094C480006D788002DC3C82 +:1071F8008000CEC480038F548002E28C4AE9F207F3 +:10720800070AF4CBFFFFF40A001AA56AEE07001874 +:10721800F2070B0BF40800284A8AF4080008300A21 +:107228009123B02C9106B03A31E8F00B1800C03128 +:10723800F2070B0A4A084A29F0070708F207070964 +:10724800F0091800C1C149F9920A3009F20A190077 +:10725800C0A4201D1AD81AD849B849CC1AD8F01F8A +:10726800001C2FCD4948F00707095809F9BA01FF52 +:10727800F3DAE109F9B9001DF0070B0949189088FC +:10728800EDB80004C1618AC848DAF407070A201D6E +:107298000D891ADA488AF407070A1ADA1AD91AD8A5 +:1072A80048981AD648BC1AD71AD8F01F00092F8D4B +:1072B800089CD8320000153800007B2C0000153CD3 +:1072C800000016A28003900480038F90800094C46D +:1072D80080038FBCD431203D1690502A1895F01F9A +:1072E8000021301BE5DCB010F9D2C010F01F001EE1 +:1072F8001896C2C049D8EA050019F0050707A3691E +:10730800189431E849A1189349ABEE070016A56611 +:10731800F2060006F60600066C0B580BC0B0089C77 +:107328008CAA50095018F01F00148CAA4018140495 +:1073380040092FF7E205070A5C57EE081800F9B76D +:107348000000EE0A1800CE110696402A5800E1F611 +:107358001A00580AF5F21C000C9C2FDDD8320000E8 +:1073680080006C948002DC3C0000153C000015385D +:1073780000007B2C8002E736D431303818971693FA +:107388001494F00C1800E088001B48989009300805 +:10739800F0091900C0353005CA2848681ADC3005DC +:1073A8001AD8485CF01F00052FEDC998000016A2F6 +:1073B80080038DB080038FE0800094C4F80C001A1D +:1073C8004C88F00C0708F0080019A569F20A002992 +:1073D8004C5AF40903095809C1604C4A940B300A05 +:1073E800F40B1900C0A4201D1AD84C181AD94C1C2B +:1073F8001AD8F01F00412FCD4BA80E9BF007070CA1 +:10740800F01F003E0892301B5C72049CF01F003C89 +:1074180018961895C640049A069BF01F003AEE0786 +:1074280000184B03E6070702E4020012A562E4080D +:1074380000224AD83001F0020002300B8506A4244D +:10744800A4310E9CF01F0030852CE60707082FF8A2 +:10745800E6070B0831E9F2081800C031E6070B010E +:107468004A084AA9F0070708F2070709F0091800AF +:10747800C1C149E9920A3009F20A1900C0A4201DC5 +:107488001AD81AD849A84A2C1AD8F01F001B2FCD91 +:107498004948F00707095809F9BA01FFF3DAE10981 +:1074A800F9B9001DF0070B0949089088EDB80004E8 +:1074B800C1610D884959F2070709201D1AD9489951 +:1074C800F20707091AD91AD848985C74491C1AD4C3 +:1074D8001AD61AD71AD8F01F00082F8D0A9CD8324E +:1074E8000000153800007B2C000016A280038DB028 +:1074F80080038F2C800094C480006D788002DC3C6F +:107508008002E736800020240000153C80038F901D +:1075180080038FBCD401E06A05A0300B482CF01F13 +:107528000003D80200007B2C8002E8BCD421202D67 +:10753800FE782800501C500B3FF7109E301CC308E3 +:10754800300B7049EDB90001CFD17049EDB9000990 +:10755800CFD140195809C0B01396F2C5FFFE138960 +:107568005015EDE91089F7D9D010C038F7D7D010E9 +:10757800913B7049EDB90000CFD17C2B40095C8B61 +:107588005809C080B29BF7DBC108B28B40092FE9CC +:107598005009F80A1900E0880006202A5C8A580A6F +:1075A800CD01FE78280070482FEDD822580CC06015 +:1075B800FE782800300A7019C058FE78280030FA82 +:1075C8007019F3DAD20491195EFC202D3008E069B5 +:1075D80013885018F8090249C058401A2FF82FFA92 +:1075E800501A1238CFB12FED5EFCD703D401303CCE +:1075F800F01F0005C060303CF01F0004F01F0004BD +:10760800D402D6038000A3708000A38880014014B0 +:10761800D401580CC060300B303CF01F0004D80275 +:10762800303CF01F0003D8028000A31A8000A35C3E +:10763800D401202D3008B888303CF01F0022303C9F +:10764800F01F0021309CF01F001F307CF01F001D30 +:107658003008501840192FF950192FF8E04861A840 +:10766800CFA1309CF01F00193008501840192FF98D +:1076780050192FF8E05886A0CFA1307CF01F0013D6 +:10768800340B300A492CF01F0013FE782800302AEA +:1076980070C9F3DAD108308A91C970C9F3DAD08495 +:1076A800301A91C970C9F3DAD06191C970C9F3DA97 +:1076B800D001303C91C9F01F00082FEDD80A000016 +:1076C8008000A2A88000A2BE8000A2E6800075F417 +:1076D8008000A3A08000A388D42120AD4C68E3B823 +:1076E8000001D5533017FE6810007109F3D7D20294 +:1076F800303AF1490040E06B1B00EA1B00B7FE7C02 +:107708000C00F01F003E310A201D30081ADA0E99CD +:10771800109B308AFE7C0C00F01F003930080E994F +:107728000E9A109BFE7C0C00F01F0036300BFE7C7E +:107738000C00F01F0035FE7C0C00F01F0034300CEC +:107748001ADC18981899189A1ADC189BFE7C0C00F9 +:10775800F01F002F0E9CF01F002F302BFE7C0C001A +:10776800F01F002DF01F002DD503304AFAC7FFD0B7 +:107778004ABB0E9CF01F002B302B0E9CF01F002ADA +:10778800FAC8FFDC4A99722C109B912CE06AF980A8 +:10779800EA1A0337F2E40000FE7C1800F0E5000066 +:1077A800F01F0023308A4A3B0E9CF01F001E310A4E +:1077B800FAC6FFEC300B0C9CF01F001F3018304B42 +:1077C800FB68002149DCF01F00180C9BFE7C280098 +:1077D800F01F001B3009FE7C2800129B129AF01F34 +:1077E80000190E9C0E96304BF01F000F2FCDFAC7D4 +:1077F800FFD8C2D8800376008000A5088000A4B016 +:107808008000A4CE8000A4E68000A4F48000A470C8 +:107818008000A2228000A4FE8000A3D080039038BC +:107828008002E7368000A2808003901C8000AA1C9A +:10783800800390308002E8BC800390288000A66214 +:107848008000A69C0D8C2FE6F01F000F0E36CFB1DE +:10785800FACBFFFCFE7C2800F01F000C3009FE7CF0 +:107868002800129A129BF01F000AFE7C2800F01FC5 +:107878000009302CF01F0008FE7C2800F01F0005CE +:107888002F6DD8228000A2BE8000A6628000A69C30 +:107898008000A7EC8000A2E6D42130A81896F00C4E +:1078A8001800C0C1E067271020175BF7C13030DB34 +:1078B800FE7C1800F01F0008CF81E0672710201712 +:1078C8005BF7C0800C9BFE7C1800F01F0003CF8183 +:1078D800D822DC2A8000A9AED401178A17B91798D4 +:1078E800B168F1EA118817AAF1EA1088F3E81008DC +:1078F8001AD81ADC483CF01F00042FEDD80200000B +:1079080080039064800094C4D421202D4AB811D9F2 +:10791800BAD97009500911C8BAC81A961895169498 +:10792800581CE08900064A6CF01F0026C448761CE3 +:10793800F01F0025201DEFDCC0084A4C1AD7F01FA5 +:1079480000212FED5825C2A0682CF01F001F201D14 +:10795800EDDCC00849EC1AD6F01F001A30182FEDDC +:10796800F0061800C111305A49AB0E9CF01F001ADE +:1079780030AA49AB0E9CF01F00180E9C308A498B28 +:10798800F01F0015C1883028F0061800C141300AE0 +:107998000E9C149BF01F0013C0E83038F007180045 +:1079A800E08B000A300B0E9CF01F000F1A9B306A08 +:1079B800F01F000E2FEDD82A800396B88003909808 +:1079C800800094C48002DC2C800390C4800390D093 +:1079D800800390E480007380800390EC800390F82B +:1079E800800072DC8000202480005140D421189649 +:1079F8001695582CC45176174B3B0E9CF01F00333C +:107A08001896C1014B2CF01F00334B38FE798000CB +:107A1800B0094B28B0064B28B0064B28B006E08FBB +:107A280001C44B1B0E9CF01F0029C1D14AA89088A5 +:107A3800201D4AEC1AD8F01F00274A8890884ACCA3 +:107A48005008F01F00244A6890884AAC5008F01F7C +:107A580000214A4890884A8C5008F01F001E2FEDDC +:107A6800E08F01A30E9C4A5BF01F0018C0C14A4C6E +:107A7800F01F0018E06900FF4978E08F0195582C45 +:107A8800E089000749FCF01F0013E08F018E762C77 +:107A9800F01F001D18975836E08101876A1649BB08 +:107AA8000C9CF01F000AC53148B85807E08A000846 +:107AB8009009A1A9B0095817C2A1C3089009A1C982 +:107AC800B009C2C8800391048002ECC88003910801 +:107AD800800094C4000016A2000016A6000016A09C +:107AE800000016A8800391148003911C8003913430 +:107AF8008003914C800391648003E18C8003917C26 +:107B0800800391888002DC2C800392144B799208C0 +:107B1800A1A8B2085827C071C0D84B499208A1C87B +:107B2800B208C0884B299208A1A8B2085837C0717A +:107B3800C0A84AF99208A1C8B208C0584AD9920800 +:107B4800A1A8CAC84AB99208A1C8CA884AAB0C9C5D +:107B5800F01F002AC2F14AA85807E08A00089009D5 +:107B6800A3A9B0095817C061C0C89009A3C9B00932 +:107B7800C08849E99208A3A8B2085827C071C0D89C +:107B880049A99208A3C8B208C08849999208A3A82D +:107B9800B2085837C071C0A849599208A3C8B2089A +:107BA800C05849499208A3A8C79849299208A3C868 +:107BB800C758494B0C9CF01F0011C3E149085807EE +:107BC800E08A00089009A1B9B0095817C061C1B886 +:107BD8009009A1D9B009C17848499208A1B8B2085A +:107BE8005827C161C1C80000000016A6000016A0F1 +:107BF800000016A88003921C8002ECC8000016A2A0 +:107C0800800392204B699208A1D8B208C0884B59CA +:107C18009208A1B8B2085837C071C0A84B19920889 +:107C2800A1D8B208C0584B099208A1B8C3784AE94C +:107C38009208A1D8C3384ADB0C9CF01F002DC30161 +:107C48004AC85807E08A00089009A3B9B00958172C +:107C5800C061C0C89009A3D9B009C0884A09920870 +:107C6800A3B8B2085827C071C0D849D99208A3D878 +:107C7800B208C08849B99208A3B8B2085837C07189 +:107C8800C0A849899208A3D8B208C058496992087F +:107C9800A3B8C04849499208A3D8B208C858496B44 +:107CA8000C9CF01F0013C3D149285807E08A00082C +:107CB8009009A5A9B0095817C061C0C89009A5C9FD +:107CC800B009C08848699208A5A8B2085827C151C8 +:107CD800C1B848399208A5C8B208C168000016A6FC +:107CE800000016A0000016A8800392248002ECC8A9 +:107CF800000016A2800392284AC99208A5A8B208D3 +:107D08005837C071C0A84A999208A5C8B208C05887 +:107D18004A799208A5A8CC2B4A599208A5C8CBEB5A +:107D28000C9C4A4BF01F0024C3F14A485807E08ACC +:107D3800000B9009EA19FFFFE8198000B0095817ED +:107D4800C071C1089009F3D9C00FB009C0B849C9BA +:107D58009208EA18FFFFE8188000B2085827C08187 +:107D6800C11849789009F3D9C00FB009C0B848F9CB +:107D78009208EA18FFFFE8188000B2085837C08157 +:107D8800C0E848A89009F3D9C00FB009C08848894D +:107D98009208EA18FFFFE8188000C80B48489009C5 +:107DA800F3D9C00FB009D82A000016A0000016A801 +:107DB800800392308002ECC8000016A2000016A6CC +:107DC800D421582CC2717617495B0E9CF01F001500 +:107DD800C1211897494CF01F0015201D494C1AD78E +:107DE800F01F00120E9C2FF7F01F00122FED5847BE +:107DF800CF51C1380E9CF01F0010201DEFDCC008C9 +:107E080048BC1AD7F01F00090E9CF01F000A2FED7E +:107E1800C04848ACF01F0005D82A000080039238FB +:107E28008002ECC88003923C800094C4800390C414 +:107E380080006C108002DC2C80039250D421207DBD +:107E4800306A18951696FAC7FFEAE06B00FF0E9C99 +:107E5800F01F00385825C1B16C1C4B7BF01F003750 +:107E68001896C4B14B6CF01F00370E9B0C9CF01F8A +:107E780000360E9B301CF01F00340E9B0A9CF01F2E +:107E880000320E9B303CF01F0030C5085825E08AB0 +:107E980000356C1CF01F002D6C2B1897500B169C8E +:107EA800F01F002B58DC5F04585C5F08E9E81008F5 +:107EB800ECC5FFFC109418963008FACCFFF8400B7C +:107EC800F0041800C0500C9AF01F0022C238F01FAE +:107ED800002258375F98580C5F091896F3E8100885 +:107EE800E8081800C0A15807C085C0916A08118920 +:107EF8003308F0091800C030498CC098585C5F18E6 +:107F080058DC5F19F3E80008C050495CF01F000D09 +:107F1800C0D85C570C9BFAC9FFEAFACAFFF80E9C56 +:107F2800F01F00100E9CF01F00102F9DD82A000093 +:107F38008002E8BC800392808002ECC880039288AB +:107F4800800094C48001921C8002DC2C8002EDD059 +:107F58008002EE0C800098688003929C800392DC7B +:107F68008001927080019258D421204D4ABC149609 +:107F7800F01F002B1A9CF01F002B581CC0504AAC55 +:107F8800F01F0027C0A81A9CF01F0028201D1ADC2B +:107F98004A7CF01F00232FEDF01F002618974A6C2B +:107FA800F01F001F5807C0514A4CF01F001DC04861 +:107FB8000E9CF01F00234A376E0CF01F0023C1F0FF +:107FC8006E087018201D1AD8F01F0020500C4A0C9B +:107FD800F01F00136E0870285008F01F001C500C8A +:107FE80049CCF01F000F6E0870385008F01F0017BA +:107FF800500C499CF01F000A2FEDC048497CF01F27 +:108008000008497CF01F00060DC93018F009180057 +:10801800C2A1494CC298000080039314800094C404 +:10802800800191288003932C8000967080039348E8 +:108038008001997C80039358800393A880009784DB +:10804800000080D08000CAE4800096A8800393686E +:10805800800393788003938880039398800393B078 +:10806800800393B8493CF01F0014FACCFFF4300B9E +:10807800F01F0012301B4037FACCFFF8F01F000F3A +:10808800201D1AD750574047F01F000D500C48DCF0 +:10809800F01F000950075047F01F0009500C48AC6A +:1080A800F01F0005F01F0009300C2FED2FCDD8224E +:1080B800800393C4800094C48000C1EC800096A81B +:1080C800800393D080039DC08000495CD421202D7B +:1080D8001695584CE089000649ECF01F001FC3684C +:1080E800FACCFFFC761BF01F001D6A2C4014F01F11 +:1080F800001C18976A3CF01F001A18966A4CF01F6B +:108108000018501418951ADC496C1AD61AD71AD4C4 +:10811800F01F0011089CF3D5C008F5D6C0080E9BC7 +:108128005C7BF01F00112FCD5BFCC10148F8900962 +:108138003008F0091900C0A448D81AD548DC1AD666 +:108148001AD71AD8F01F00042FCD2FEDD82A000017 +:10815800800393DC800094C4800098FC8002DC2CAF +:108168008003941480003958000016A280039054AC +:1081780080039448D4211695583CE089000649CCE0 +:10818800F01F001CC338761CF01F001B18976A2CC0 +:10819800F01F001918966A3CF01F00174978201D37 +:1081A80018941AD649651AD7580CF0051710495C67 +:1081B8001AD5F01F0010089AF7D6C0085C5A0E9C12 +:1081C8005C7CF01F00112FCD5BFCC10148F89009C1 +:1081D8003008F0091900C0A448D81AD648DC1AD7C4 +:1081E8001AD51AD8F01F00032FCDD82A80039488F7 +:1081F800800094C48002DC2C80037DC480037DC889 +:10820800800394B880003C50000016A28003969C1E +:10821800800394DCD421206D1697582CE089000641 +:108228004A4CF01F0025C438761CF01F00246E2B22 +:10823800F8C700011A9CF01F0022304A1A9BFAC6A0 +:10824800FFEC0C9CF01F001F201D40681AD8F01F7F +:10825800001E1ADC49DC1AD7F01F00170C9B0E9C75 +:108268005C5CF01F001BFACCFFE0300BF01F00191C +:10827800301B4087FACCFFE4F01F00162FDD505763 +:108288001AD74056F01F00101AD71ADC492C50870D +:10829800F01F00092FDD50461AD6F01F000B1AD622 +:1082A8001ADC48EC5076F01F00042FCD2FADD82AE9 +:1082B80080039510800094C48002DC2C800098FC18 +:1082C8008002E736800096A8800395388000C19C1C +:1082D8008000C1EC8003955480039564D421FACDC5 +:1082E8000108581CE0890006491CF01F0012C1D87B +:1082F800F6C9FFFCF8CA0001FAC7FFFCE06B0100F1 +:108308000E9CF01F000DC110300948CAFACBFEFCC4 +:108318000E9CF01F000B5C5CC0814418489C1AD866 +:108328001AD7F01F00042FED2BEDD82A800395747F +:10833800800094C480009710800078E08000C4C05A +:1083480080039064D43121AD18961695582CE08995 +:1083580000064A1CF01F0021C3B8FAC7FFFC344AC4 +:10836800300B0E9CF01F001E306AE06B00FFFACC49 +:10837800FFDBF01F001BFAC4FFB8EAC9FFFCECCA18 +:108388000002320B089CF01F00171893C210189AAD +:10839800089B0E9CF01F00143088FB6300242016F5 +:1083A800EA060326FB68003C0C9CF01F00100C9B9F +:1083B800189A30180E9C3089F01F000D581CC08088 +:1083C80048C8201D48CC1AD8F01F00042FED2E6D88 +:1083D800D83A000080039590800094C48002E8BCDD +:1083E800800097108002E7368002EDD080019084EB +:1083F80080039048800395B4D42121AD1696582C5B +:10840800C05049BCF01F001BC308FAC7FFFC344A20 +:10841800300B0E9CF01F0018306AE06B00FFFACC9E +:10842800FFDBF01F0015ECC9FFFC301AFAC6FFB8D5 +:10843800320B0C9CF01F00111895C170189A0C9BF8 +:108448000E9CF01F000F3088FB6500240E9CFB6813 +:10845800003CF01F000C581CC08048B8201D48BCC8 +:108468001AD8F01F00042FED2E6DD82A800395D45A +:10847800800094C48002E8BC800097108002E73630 +:1084880080018FF8800396AC800395ECD431204DA1 +:108498001493189516947406582CC091761C304A7B +:1084A8004A7BF01F0028C0513018C458584CC0806F +:1084B8004A5CF01F00264A6CF01F0024C3D8761BC4 +:1084C8001A9CF01F00240A9A1A9BFACCFFF4F01F9A +:1084D80000224A289088EDB80002C0B1201D40480B +:1084E8001AD849F81AD649FC1AD8F01F00182FCD07 +:1084F800FAC7FFF40C9C0E9BF01F001B682B1A9CFC +:10850800F01F0014304A1A9B0E9CF01F00130E9B9C +:108518000C9CF01F0016683B1A9CF01F000E304A96 +:108528001A9B0E9CF01F000C0E9B0C9CF01F001059 +:108538001A953008A6C82FCDD83A0000800392803B +:108548008002EDE680039610800094C48003964074 +:10855800800098FC8002E736000016A28003903C59 +:10856800800396688000CBC88000CA928000CA74D5 +:10857800D421212D581CE0890006491CF01F001148 +:10858800C1C8F6C9FFFCF8CA0001FAC7FFD8320B08 +:108598000E9CF01F000D1896C1000E9B189AFAC782 +:1085A800FFF90E9CF01F0009300BFB6600270E9C9C +:1085B800F01F0007F01F00072EEDD82A80039684CD +:1085C800800094C4800097108002E736800099A844 +:1085D8008000998CD401F01F0003F01F0003D80A13 +:1085E80080019EF880009820D40148BE1898300970 +:1085F8007C0C580CC0A1F2090019487EFC0900291E +:10860800932A9318930BD8022FF92F4E58F9CF11AC +:10861800DC0A000000001544D401484CF01F000497 +:1086280030194848B089D802800396C0800094C4A5 +:10863800000015F8D4314B68169570065806C050DE +:108648005816E08100BAC938580CE08000B5F01F10 +:1086580000314B18910C1897580CE08000AD19891F +:10866800EC091800C0415805C460C4284AB44AC37C +:108678008906C188EC060018E60800287012049CD8 +:108688005802C0E0F01F002718910E9CF01F00252B +:108698000E9BE20C0D4A049CF01F0023C3102FF61A +:1086A8008906680649D258E6FE98FFE658F6C28160 +:1086B8005805C210049749DCF01F001D3008498690 +:1086C8008508C128F0080018EC0800287009580926 +:1086D800C0807018201D497C1AD8F01F00152FED96 +:1086E8006E082FF88F086E0858E8FE98FFED492CA1 +:1086F800F01F000F4888700CF01F0010C5C80E9CB2 +:1087080048FB49074906F01F0011C2C8000016407F +:108718008002ED8400001644000015400000154456 +:108728008002EDD08002EDE6800396C8800094C4F4 +:10873800800396E0800396C48002E28C80039364F1 +:10874800000015FC000016008002EEB86E08EC0868 +:10875800092C2FF88F085908C070498B300CF01F6E +:108768000018580CCF41301949689109496949786E +:108778007008F0080018F20800284959702A720C8D +:108788007008494B5D18581CC1705805C040492CE9 +:10879800F01F001248E83007340A0E9B910748DCA6 +:1087A800F01F000F48F8700CF01F000F4858301CDD +:1087B8009107D832D83ADA3A800393648002EEB847 +:1087C800000016400000154400001540000015FC8C +:1087D80000001600800396C4800094C48002E8BCA0 +:1087E800000016448002E28CD421202D1897FACB81 +:1087F800FFFCFE7C1800F01F0012583CC080584C4B +:10880800C081E0690100FE7818009109301CC15848 +:10881800401C58DCC03130ACC0B8588CC081F01F47 +:108828000009320CF01F00071BFCC0285C5CF01F1D +:1088380000054018300CAE882FEDD8228000A9C260 +:10884800800078A0D431202D30A1FAC0FFF930D2B1 +:10885800308349B749B630043005009CF01F001A30 +:10886800C2A11BF8E20818005F0AE40818005F09B3 +:10887800124AF80A1800C0904929491A1298740B2C +:10888800950CF20B0B0CC188E6081800C0916E0815 +:108898002018F00C17708F0CEC0C0B04C0686E09D4 +:1088A800EC090B082FF98F096E08E0480050CD61DC +:1088B8008F05CD4B3008109C2FEDD832000016489C +:1088C8000000164C800087F0D401F01F0004301B14 +:1088D800F01F0003D80200008000884C8000863C0E +:1088E800D4314974169714951293580BC0B1680C7B +:1088F800580CC0311896C2181696F01F0012890736 +:10890800C1C868085808C0C1E06C0200F01F000E1A +:10891800890CC061189648DCF01F000DC0E80A9C5D +:10892800E066020048650C33E60617806A0B0C9A6D +:10893800F01F00086A088F080C9CD8320000169CAB +:108948008002E28C8002E2A4800396E8800094C44E +:10895800800090B4D401F01F0002D80A800091086A +:10896800D4213008FAC4FFEC19C9F0091800F9B885 +:108978000100E9F81A01E9F81A02E9F81A004A1898 +:108988001AD84A1818971AD8089B3008E8C9FFF867 +:10899800E8CAFFFC780CF01F001D8F0C2FED580C57 +:1089A800C021DC2AF01F001A300949AA301BE06CEC +:1089B8001388F01F00193009498A301BE06C00FA4F +:1089C800F01F00153009496A301BE06C01F4F01FF4 +:1089D80000123009493A301BE06CEA60F01F000EC3 +:1089E8003009491A301BE06C03E8F01F000B30090E +:1089F80048EA301BE06C03E8F01F0007DA2A0000A1 +:108A08008001365C80013C948000CCA88000CAB00C +:108A180080008A708000956C80008A6480008A5883 +:108A280080008A4C80008A4080008A34D401F01F7C +:108A38000002D8028000C664D401F01F0002D802E8 +:108A480080012984D401F01F0002D8028000B8B048 +:108A5800D401F01F0002D8028000C074D401F01FB6 +:108A68000002D8028000E68CD401F01F0002D80270 +:108A78008001326430194828B0895EFC000016AACB +:108A8800D401319CF01F0003319CF01F0003D80271 +:108A98008000A2D28000A2E6D421204D3FF819C957 +:108AA8001897F0091800F9B80001EFF80E0430081B +:108AB800201D1AD850581AD81AD850685058F01F84 +:108AC800001C49CB6E0CF01F001C0E9949BA49CB0B +:108AD80049CCF01F001D2FCD581CC08049B8201D5F +:108AE80049BC1AD8F01F001B2FEDF01F001BF01F08 +:108AF800001B0E9CF01F001AC0F049A8900930080E +:108B0800F0091900C0F44988201D498C1AD8F01FB3 +:108B180000112FEDC07830194958319CB089F01FE9 +:108B280000153018EF6800082FCDD822800089681A +:108B380080008C5C8000CAEE80008B7C80008BDC1F +:108B480080008A7C80009A188003973C80039DC02F +:108B5800800094C48000998C80019EF880002A9837 +:108B6800000016A28003972880039758000016A4D7 +:108B78008000A300D4211897333CF01F000F300663 +:108B88000FD8EC081800C0C048CCF01F000D6E0CC0 +:108B9800F01F000C6E0CF01F000CAED6C07848BC5D +:108BA800F01F00076E0CF01F000A3FFCF01F0009C1 +:108BB800D82200008000A2E680039774800094C445 +:108BC8008000B1D88000AE50800397908000CABC66 +:108BD80080002E60D42116971896333CF01F00149D +:108BE8000C9CF01F0014201D1ADC493CF01F0013D8 +:108BF80030182FED0FC6F0061800C121490CF01FE0 +:108C0800000F6E0CF01F000F48F849095C5CF20C6D +:108C18001700F00C1710F01F0009AED6C0486E0CF4 +:108C2800F01F000BF01F000BD82200008000A300EB +:108C3800800096E48003979C800094C4800397B8D2 +:108C48008000B950800397D080037FC08000CB8814 +:108C58008000C690D42149471896F01F0014189533 +:108C6800C110301CF01F00126C18201D1AD8F01FFC +:108C78000011500C490CF01F001130182FEDAE8870 +:108C8800D822AE8CF01F000E48E89008EA081900B8 +:108C9800C08448D8201D48DC1AD8F01F00082FEDE2 +:108CA800D8220000000016AB8000CAE480002E60C5 +:108CB800800096A8800397D8800094C480006B2C0D +:108CC800000016A28003995C800397E8D4211897C6 +:108CD800F01F0027300A4A7B4A7CF01F0028300A20 +:108CE8004A7B4A8CF01F00254A7B300A4A7CF01FD9 +:108CF80000230E9A4A6B4A7CF01F0020300A4A6B08 +:108D08004A6CF01F001E4A6B300A4A6CF01F001BA9 +:108D18000E9A4A5B4A5CF01F0019300A4A4B4A5CBB +:108D2800F01F0016300A4A4B4A4CF01F0014300A54 +:108D38004A3B4A4CF01F0011300A4A3B4A3CF01F9C +:108D4800000F300A4A2B4A3CF01F000C300A4A2B0D +:108D58004A2CF01F000A300A4A1B4A2CF01F000751 +:108D6800300A4A1B4A1CF01F0005D82280008620C2 +:108D7800800085DC80039804800085F08000857879 +:108D88008003980C80007E448003981480007F70D4 +:108D98008003981C800079F48003982480007DC8A3 +:108DA8008003982C80008494800398348000633476 +:108DB800800398408000834C80039848800084009A +:108DC80080039850800082E4800398588000821CB9 +:108DD800800398608000817C80039868800080D43C +:108DE800800398748000791080039880D4211897A4 +:108DF800F01F000BF01F000BF01F000BF01F000B03 +:108E08006E0CF01F000B48B811893008F0091800E3 +:108E1800C0406E0CF01F0008D82200008000951496 +:108E2800800088D080009504800193A080013BBC1D +:108E3800000016A480004758D421202D3029EE7850 +:108E48000000F1D9D1A23019F1D9D0033007501858 +:108E58000E9B5007337CF01F000F1A9BFE7C3800D6 +:108E6800F01F000D0E9BE06A01A4FE7C3800F01F85 +:108E7800000B0E9BE06A0348FE7C3800F01F0008D8 +:108E88000E9BFE7C3800F01F00072FEDD822000053 +:108E98008000A2308000A8388000A8F08000A926B1 +:108EA8008000A8D4D401333CF01F0009334CF01FD4 +:108EB8000008335CF01F0006333CF01F0006334CFB +:108EC800F01F0004335CF01F0003D8028000A2A842 +:108ED8008000A2E6D421202DF01F0034F01F0034BA +:108EE800F01F0034F01F0034E06C1B00EA1C00B7D0 +:108EF800F01F00324B28201D4B2C1AD8F01F0032CF +:108F080030CB301CF01F00312FED1897580CC08162 +:108F18004AF8201D4AFC1AD8F01F002B2FED344BBD +:108F2800301CF01F002A8F0CC0814A98201D4A9CD3 +:108F38001AD8F01F00252FED3FF80E9CAEC8F01F81 +:108F48000026300B169CF01F0025F01F0025F01F8F +:108F58000025C0804A48201D49EC1AD8F01F001A85 +:108F68002FEDFACAFFFC0E9B4A0CF01F0021581C7B +:108F7800C0C1401A49FB0E9CF01F001F581CC0516D +:108F88000E9CF01F001ECFDB58CCC04058DCC061DF +:108F9800C03849BCC04849BCC02849BCF01F000AB9 +:108FA800F01F001ACFEB000080008A88800076E06E +:108FB80080008EAC80008E408000AAE88003970C69 +:108FC80080039888800094C48002DC3C800398A8C1 +:108FD80080039DC080008CD4800095C88000C8E4C0 +:108FE8008000895C800398B8800088E880013E880A +:108FF80080008AA0800193BC80008DF4800398E4EF +:109008008003990C8003993080009514D4314A1458 +:1090180058095F081296189716951493A888E06067 +:109028000100E06100FFC2E88920A868E203190096 +:10903800E069FFFFE7D9E828E9F88A02E06901005A +:1090480088E8F2080108682989151039E9F8BA0290 +:10905800EE021608049CF01F0010301CF01F000FD1 +:10906800F01F000F5806C090049CF01F000E301C23 +:10907800F01F000DF01F000D6828101310071005D1 +:109088005C83F1D7C0085803CD01069CD832000094 +:10909800000016AC8000A0408000A19880009ED4FB +:1090A80080009F5C8000A17080009E94D4013009EC +:1090B8005C7AF01F0002D80280009014D40148584E +:1090C80090E9701B120C702AF01F0003D8020000F0 +:1090D800000016AC8002E736D4014888189B118A34 +:1090E8003009F20A1800C07090E9701C120B702A3F +:1090F800F01F0003D8020000000016AC8002E7361B +:10910800D421208D48D8F0E60008FAE70008F0EAF4 +:109118000000FAC8FFF0FAEB0000F0E70008F0EBF7 +:109128000000E06CF980EA1C0337F01F0005300CE2 +:109138002FCD2FCDD82200008003996C8000A1C0CC +:10914800D401FAC9FFFCF01F0002D80280031C1CDE +:10915800D401F01F0002D8028002EE88D401F01F6B +:109168000002D8028002ECACD401F01F0002D80241 +:109178008002F0ECD401F01F0002D8028002E71050 +:10918800D401F01F0002D8028002EE2CD401F01F97 +:109198000002D8028002ED84D401F01F0002D80238 +:1091A8008002ECC8D401F01F0002D8028002EE0C45 +:1091B800D401F01F0002D8028002EDD0D401F01FC4 +:1091C8000002D8028002E87ED401F01F0002D80213 +:1091D8008002E8BCD401F01F0002D8028002E73602 +:1091E800D401F01F0002D8028002E28CD401F01FE3 +:1091F8000002D8028002E8D0D401F01F0002D80291 +:109208008002E2A4D401580CC0707808B08B7808AA +:109218002FF89908D802F9DBC008F01F0002D8021D +:10922800800078A0D431189616971495580AE08AC9 +:1092380000153008109AC0282FF8EE08070BF40B19 +:109248001800CFB10A38F9B50400EBD8E515EDB927 +:109258000001C0313303C0283203E9D9C001C090EE +:109268003004C1082FF42015069B0C9CF01F000D3C +:109278005805FE99FFF9C0682FF42FF70C9CF01FD2 +:1092880000090F8B580BCF91C0782FF42015069B3F +:109298000C9CF01F00045805FE99FFF9089CD83271 +:1092A8008000920CD431204DFAC4FFCC109368177B +:1092B800189568041698580BC0B13308BADB08999A +:1092C800069ABAC8FACBFFFCF01F001FC3985809CA +:1092D8005F1B58AA5F09F7E90009C0605808C04435 +:1092E8005C383016C0283006EECB003A3009FAC791 +:1092F800FFF00EF9C0B8F00A0D00029912985898BC +:10930800F1DBE9082D080EF800985808CF515806E7 +:10931800C1005803C0B0EDB40001C08132DB0A9C23 +:109328002013F01F000A3016C04832D830060EF855 +:109338000899069A0E9B0A9CF01F00030C0C2FCD6F +:10934800D83200008000922C8000920CD431203D4D +:109358003007500A18951696325432D3330230919A +:109368003730C978E8081800E081008E2FF60D889C +:109378005808E0800093E8081800E0800085E608B7 +:109388001800F9B90100F7B600FFF9B90001C038B3 +:109398002FF6A1B90D88E4081800CFB03008C048EE +:1093A800F80E00182FF60D8AF008002EF4CC0030C5 +:1093B800F4CB0030E20B1800FE98FFF4E00A180026 +:1093C800C0A1109A4008110B50084B98580BF00B8D +:1093D8001700C548364BF60A1800C0A1361B400ACC +:1093E8001ADB1AD93019740B2FCA502AC358370BF5 +:1093F800F60A1800C121361A40091ADAF2CAFFFC27 +:10940800501A308A1ADA720B3009310A0A9CF01F96 +:1094180000292FED1807C3C8378BF60A1800C0417A +:10942800400A361BC078358BF60A1800C091400AEE +:10943800341B1ADB1AD9740B2FCA502ACE6B375B30 +:10944800F60A1800C0B1361B400A1ADB1AD93009CF +:10945800740B2FCA502A30AACDAB363BF60A180037 +:10946800C171109A4008700B2FC8FB6B0008500898 +:10947800FACBFFF83008FB6800090A9CF01F000EC1 +:109488001807C0682FF70D8B0A9CF01F000C2FF6E9 +:109498000D885808FE91FF685805EBF81000F9B9D7 +:1094A8000100F1F91E000E9C2FDDD8328003997C53 +:1094B800800092AC8000922C8000920CD401189B02 +:1094C800FACAFFFC300CF01F0002D8028000935447 +:1094D800D40148A972082FF89308F2F800CC58086C +:1094E800C040F2FC00D45D18FE780D003019918957 +:1094F8007078D402D6030000000001184838F0F94B +:1095080000D0700CB33C5EFC00000118D431495601 +:1095180030020C9730152F46EEC1FF2C0E930E9497 +:109528000D88E4081800C18166086E291039E08B9F +:1095380000146C185808C0306C2C5D180D98EA0897 +:109548001800E9F80000EFF90001F3D8E008EFF897 +:109558000A02EDF51E002EC62EC70236CE21D832DD +:1095680000000118D431300E189830A5494C1C96CB +:109578002FCCFCC3FFFF1897F9340008EC0418003F +:10958800C071FDD3C0082ECCEA0E1800CF311C9C48 +:1095980048B530030A96FC0E002EEAF500D0F00517 +:1095A8000D048F040D08EF630008EC0E0026080870 +:1095B800EF6B00098F188D498D3AD83200000118D9 +:1095C800D421300A16971896328B495CF01F001583 +:1095D800300AFE7C0D00149BF01F00134935FE7CF9 +:1095E8000D00EAFB00D0F60B1073A19BF01F0010D2 +:1095F800FE7C0D00F01F000FFE7C0D00F01F000E1A +:10960800EAC9FF2CEB4600CCEB4700D430182F45B5 +:10961800AA882EC51235CFD1D8220000800094D850 +:109628008000A3A08000A594000001188000A580F8 +:109638008000A57A8000A562D401306AF01F00027C +:109648005F0CD8028002E710D401F93A0020F738FD +:109658000020F4081800C020D80AF01F00035F0C8F +:10966800D80200008002E710D42119D919881AD924 +:1096780019C91AD919B91AD919A91AD91999486732 +:109688001AD9486A1AD8312B0E9CF01F00050E9C77 +:109698002FADD822000016E0800399848002EC40A8 +:1096A800D4214058F5D8C008F00916181ADAF5D8A8 +:1096B800C108F1D8C2081ADA48671AD8486A1AD90C +:1096C800310B0E9CF01F00050E9C2FCDD8220000F8 +:1096D800000016F4800399A48002EC40D421488746 +:1096E8001896321A300B0E9CF01F00060C9BED3AB0 +:1096F80000200E9CF01F00040E9CD822000016BC0F +:109708008002E8BC8002E736D431300318971696F9 +:109718001491129218950694C1D805002FF4009C54 +:10972800F01F0012F80300030C33E0880009201D25 +:1097380048FC1AD6F01F000F2FEDC108201DEE05BA +:10974800010B1AD00A9C0C0B48BAF01F000C2FED25 +:1097580018050234CE350E35C021D83A30080AF83B +:10976800EA07010CD83200008002EDD0800399B4DA +:10977800800094C4800399CC8002EC40D4211897CF +:109788002DFCF01F001B201D1ADC49ACF01F001A2D +:109798000E9CF01F001A500C499CF01F00176EC851 +:1097A800498C5008F01F00146EF82FED5818C0416E +:1097B800495CF01F0011EF3800383049F2081800F2 +:1097C800C0E03059F2081800C0603029F2081800CB +:1097D800C091C03848DCC04848DCC02848DCF01FCD +:1097E800000648DCF01F0004D822000080009670B4 +:1097F800800399CC800094C4800096E4800399D0BB +:10980800800399D8800399E8800399F480039A0823 +:1098180080039A1C800384D4D421202DFACCFFFC29 +:10982800F01F000C401870185808C04148ACF01FD1 +:10983800000B3007C0887008F007032CF01F0008E1 +:109848002FF75C57401870191237CF632FEDD822C5 +:1098580080018F0480039A40800094C4800097841C +:10986800D431202D300818921696BAE8169CF01FAD +:10987800001DEDBC0000C04149BCF01F001C3007B2 +:109888002FF649B30E94FAC5FFFCC208660BF6081A +:109898000709E2190044C210E04700405F9C0D8AA6 +:1098A800F60A0709E21900445F09F9E91009E8090D +:1098B8001800C131BADABAC8310A300B0A9C2FE64F +:1098C800F01F000CE4070B0C2FF7ED38FFFF5808CA +:1098D800CDE10E9C5C5CC028300C2FEDD832000026 +:1098E8008002EDD080039A50800094C40000049C4C +:1098F8008002F0ECD421204D1A981AD8FAC8FFF843 +:109908001AD8FAC8FFF01AD8FAC8FFE818971AD870 +:10991800169C49BBF01F001B2FCD584CC221403864 +:10992800E04800FFE08B001E402B580BC1A5E04B20 +:1099380000FFE089001740195809C135E04900FFC8 +:10994800E0890010400A580AC0C5E04A00FFE089D3 +:109958000009B16BF7E811881448F1E91088C028AC +:109968003008F0091618AEB8AE890E9CF3D8C208B4 +:10997800F1D8C108AE99AEA82FCDD82280039A603D +:109988008002EBF4486870085808F9BC00FFF9B980 +:109998000101F1F91E10F9BC01015EFC0000170479 +:1099A800D4214988169770085808C021DC2A580C19 +:1099B800C080189B321AF0CCFFEFF01F0013C0389C +:1099C800F16C003148F85807C080700C0E9B306A63 +:1099D8002CECF01F000DC088700C306A2CECE06B8A +:1099E80000FFF01F000A48787008F139003130088C +:1099F800F0091800C021DA2AF01F0005DA2A000051 +:109A0800000017048002E7368002E8BC80019EF857 +:109A1800D4314A241896169714951292680358035D +:109A2800C3B1338B301CF01F001E890C189BC0B1CA +:109A380049C89088EDB80003C2F1201D49A849BC67 +:109A48001AD8C10849ACF01F001B49691891581C65 +:109A5800C0E09288EDB80003C1F1201D4928496C87 +:109A68001AD8F01F00163FFC2FEDD8326808913243 +:109A7800F16300109106911791259288EDB80003C3 +:109A8800C020D8324888201D48DC1AD8F01F000BA7 +:109A9800029C2FEDD832DC3A000017048002DC3C2F +:109AA800000016A280039A8080039AE080009AC87A +:109AB80080018F2480039AF8800094C480039B203F +:109AC800D431202D1697581CC290C083582CC670CC +:109AD8004A78583CE08101A8C998F01F00264A48F6 +:109AE80018969088EDB80003C0A1F01F00234A38EB +:109AF8001ADC4A3C1AD8F01F00232FED333CF01F24 +:109B08000022334CF01F00216E185808E08001979E +:109B18006E3B0C9C5D18E08F019249589088EDB817 +:109B28000003C08149A8201D49AC1AD8F01F0015B0 +:109B38002FED334CF01F0014333CF01F0014EF39A5 +:109B480000103008F0091800E0800179F01F0012B9 +:109B5800581CE080017448689088EDB80003E081E3 +:109B6800016E201D48A848DC1AD8C659000016A264 +:109B78008001997C800096E480039AC880039B3812 +:109B8800800094C48000A3008000A2E680039CE8C3 +:109B980080039B5480019EF880039B784B589088E3 +:109BA800EDB80003C0814B48201D4B4C1AD8F01F5C +:109BB80000342FED4AF89088EDB80003C0814B18A7 +:109BC800201D4B1C1AD8F01F002E2FED333CF01F20 +:109BD800002F6E285808C0306E3C5D18EF39001011 +:109BE8003008F0091800E080012AF01F0029581CED +:109BF800E080012549F89088EDB80003E081011F55 +:109C0800201D4A084A3C1AD8C1699088EDB800035B +:109C1800C0814A18201D4A1C1AD8F01F00192FEDC0 +:109C28006E085808C0306E3C5D18EF3900103008D7 +:109C3800F0091800E0800103EF390031F00918003D +:109C4800E08000FDF01F00161894FACCFFFCF01F0E +:109C58000015581CC591401870185808C550300593 +:109C6800EEC1FFEFEEC3FFCE0A960A92C488000049 +:109C7800000016A280039ABC80039BAC800094C4A9 +:109C880080039A9880039BC48000A2E680019EF816 +:109C980080039BE880039AA880039C1C8001997C20 +:109CA80080018F04EF390031E4091800C080700882 +:109CB800029CF005032BF01F0041C1F0306A4C0BE9 +:109CC800069CF01F0040C0A040187008069CF005D4 +:109CD800032B2DFBF01F003CC1005806C0A0401804 +:109CE8006CC97008F005032870C81039E0890006AF +:109CF80040187008F00503262FF55C5540187019B8 +:109D08001235CD13C02830060C34C0415804E08108 +:109D1800009658065F1858045F19F1E90009C20057 +:109D2800089B0C9CF01F0025C1D068C8FE58FFC0D6 +:109D3800E08400856CCAF0C9FFF71439E084007F1D +:109D48004A299289EDB90003C0D1201D1ADA1AD820 +:109D580049F84A0C1AD8F01F00202FCDC0385808EF +:109D6800C0C0202DECCBFFDF306A1A9CF01F001B0F +:109D7800F01F001B2FEDC17849489088EDB800030B +:109D8800C0C1EECCFFEFF01F001749181ADC496C70 +:109D98001AD8F01F00112FEDEECCFFEFEF3B00318A +:109DA800F01F0012588CC060589CC2F0581CC21199 +:109DB800C458F01F000FC4288000965080039C38B8 +:109DC8008002EDE680009640000016A280039A8C7F +:109DD80080039C40800094C48002E73680019DDCAB +:109DE800800096E480039C6880019EA0800199CC45 +:109DF80049489088EDB80003C0814938201D493C86 +:109E08001AD8F01F00132FEDF01F0012581CC16064 +:109E180048C89088EDB80003C111201D48A848EC37 +:109E28001AD8C0989088EDB80003C081201D48B8A2 +:109E380048BC1AD8F01F00062FED2FEDD8320000CD +:109E4800000016A280039A8C80039C94800094C41E +:109E580080019EF880039CB080039ABC80039CCC50 +:109E6800D4012FEC580BC080F7DCC008FE7C28001A +:109E7800F01F0005D802F7DCC008FE7C2800F01FA0 +:109E88000003D8028000A6C68000A716D42148C7C0 +:109E9800C098300BFE7C2800F01F000A6E082FF8CF +:109EA8008F086E0CF7DCC008CF51F9DCC288F01FB0 +:109EB800000630194858B089D82200000000170859 +:109EC8008000A7FA80009E680000170CD40148683B +:109ED800300B700CF9DCC288F01F000430094848C8 +:109EE800B089D8020000170880009E680000170C8F +:109EF800D421202D4948301B700CF9DCC288F01F92 +:109F08000013E06B00D7FE7C2800F01F0011FAC791 +:109F1800FFFAE06B00FFFE7C2800F01F000D0E9B8F +:109F2800FE7C2800F01F000B9AB8EDB80007CF217F +:109F38004858300B700CF9DCC288F01F00042FED74 +:109F4800D82200000000170880009E688000A7FA49 +:109F58008000A816D421202D49B8A96C910C49B8C5 +:109F680011893008F0091800C030F01F00193009B5 +:109F780049684957B0896E0C301BF9DCC288F01F5C +:109F88000015E06B0082FE7C2800F01F00136E08AD +:109F9800F3D8C008FAC7FFF8F7D8C10CFE7C280030 +:109FA800F3EB109B0EDBB18BF01F000B0FABFE7CAD +:109FB8002800F01F00090FBBFE7C2800F01F0006D8 +:109FC8002FEDDA2A000017080000170C80009EF811 +:109FD80080009E688000A7FAD42149381897118913 +:109FE8003008F0091800C0604908700CA98CF01FEF +:109FF8000010EEC6FF000F3BFE7C2800F01F000D8E +:10A008000C37CFA14898300B700CF8CCFF00910C9E +:10A01800F9DCC288F01F000830194838301CB089B4 +:10A02800D82200000000170C0000170880009F5C71 +:10A038008000A7FA80009E68D421202D4A78A96C58 +:10A04800910C4A7811893008F0091800C030F01FC7 +:10A05800002530094A284A17B0896E0C301BF9DCF4 +:10A06800C288F01F0021E06B00D2FE7C2800F01FA0 +:10A07800001F6E08F3D8C008FAC7FFF8F7D8C10C5C +:10A08800FE7C2800F3EB109B0EDBB18BF01F001752 +:10A098000FABFE7C2800F01F00150FBBFE7C2800CC +:10A0A800F01F0012E06B00FFFE7C2800F01F000F7D +:10A0B800E06B00FFFE7C2800F01F000CE06B00FF47 +:10A0C800FE7C2800F01F0009E06B00FFFE7C2800E2 +:10A0D800F01F00062FEDDA2A000017080000170C01 +:10A0E80080009EF880009E688000A7FAD421202D69 +:10A0F800498818973009118AF20A1800C070B08987 +:10A108004958700CA98CF01F0015FAC5FFFAEEC665 +:10A11800FF00E06B00FFFE7C2800F01F00110A9B87 +:10A12800FE7C2800F01F000F9A380EC80C37CF218C +:10A138004898300B700CF8CCFF00910CF9DCC28801 +:10A14800F01F000930194838301CB0892FEDD8228B +:10A158000000170C000017088000A0408000A7FA34 +:10A168008000A81680009E68D4211897C088F01F28 +:10A178000006486CF01F000620175C87483C58070B +:10A18800CF71DA2A800090C40000171080009FE089 +:10A19800D4211897C088F01F0006486CF01F0006ED +:10A1A80020175C87483C5807CF71DA2A8000A0F452 +:10A1B80000001710800090E0D4213027FAC4FFEC8B +:10A1C8001896A887C0C80C9A089BFE7C2800F01F28 +:10A1D8000009C020D82A09882FF8A8880988EE081D +:10A1E8001800FE98FFF230094838301CB089D82290 +:10A1F8008000A73C0000170CE1B80000EE18000131 +:10A20800F1D8C201C020D3033019F20B094B994B86 +:10A21800783958085E0CD5035EFCFE681400700996 +:10A22800F3DCD0C191095EFCF8081605A968E0289E +:10A23800F000581BC0D0C063582BC0F0583BC12059 +:10A248005EFF3019F20C0949916991A9C108F60C11 +:10A25800094B915B91ABC0B83019F20C094991696F +:10A26800C0583019F20C0949915991993019F20CDA +:10A27800094C912C5EFDD703D4213007189616940B +:10A288000E95C0880D9B0D8C2FF72FE6F01F00044C +:10A2980018450837CF830A9CD82200008000A230D6 +:10A2A8003018F00C0948A59CA96CE02CF000F9487E +:10A2B800004899185EFC3018F00C0948A59CA96C58 +:10A2C800E02CF000F94800745EFC3018F00C0948E6 +:10A2D800A59CA96CE02CF000F94800785EFC3018C9 +:10A2E800F00C0948A59CA96CE02CF000F948005432 +:10A2F800F948004499185EFC3018F00C0948A59CF0 +:10A30800A96CE02CF000F9480058F9480044991865 +:10A318005EFC301AF8081605F40C0949A968E0280B +:10A32800F000F14900C4143BC080C043582BC0F171 +:10A33800C098F14900A8C038F14900A4F14900B813 +:10A34800C078F14900A8F14900B4C0285EFAF14983 +:10A3580000945EFD3018F00C0948A59CA96CE02C0F +:10A36800F000F94800985EFCF8081605A968E0288E +:10A37800F000F0F800D0F00C0A4CF9DCC0015EFCEB +:10A388003018F00C0948A59CA96CE02CF000F9489D +:10A3980000D85EFCC008D703F3DBC0054898A59B2E +:10A3A800F00B00387018F009092C4878F5DAC0026B +:10A3B800F00A0329FE780800F00B09295EFC00006A +:10A3C80080039CFC8003773CD42148F8E3B8000163 +:10A3D80048E848F9700E48FC3008FE7B0800C0E8E1 +:10A3E8007216EC0A00262FFA8D0C0E3ACFA3F60847 +:10A3F800092E2F892FF85948C0407207300ACF6BB1 +:10A40800D8220000800376008003773C80039CFC00 +:10A418008000A39CE0680083FE790800F00C010C22 +:10A42800F20C0328F0CAFFC0F20A032C580C5E0C89 +:10A438004869F80C1200F2080038F80C111F70185F +:10A44800F00C032C5EFC000080039CFC78C83019DB +:10A45800F1D9D10399C85EFC78C83019F1D9D00177 +:10A46800F1DBD20399C85EFCD421FAC4FFEC68176B +:10A47800680EEFD7C003FDDEC0013004E9D7D00372 +:10A48800E9DED0E1E9D7D103E9DED1E1E9DAD203A7 +:10A49800E9DBD2E1E9D8D303E9D9D3E199147958B2 +:10A4A800EDB80005CFD1D822D4213007405E2F8BDC +:10A4B800EFD8D021EFD9D104EFDAD204EFDED306FA +:10A4C800F80B0927D822F5E910192F8BF3E8102883 +:10A4D800F80B0329F3D8D043F80B09295EFC2F8B1E +:10A4E800F80B0328A1A8F80B09285EFC7958EDB8E9 +:10A4F8000000CFD15EFC7808F1DBD00299085EFC41 +:10A50800EC5BBB9FE08B0004304BC138E068C6BFF2 +:10A51800EA18002D103BE08B0004305BC0A8E0680F +:10A528001200EA18007A103BF9BB0306F9BB0207D0 +:10A5380078A8F1DBD00399A878A8F1DAD10399A813 +:10A548007808A3A899087958EDB80007CFD17808FA +:10A558003019F1D9D00299085EFC7808EDB80004EA +:10A56800CFD07808A1A899087808EDB80004CFD012 +:10A578005EFC301899485EFC7808EDB80004CFD02E +:10A58800992B7808EDB80004CFD05EFCD42130F8C0 +:10A5980014951697F00A18005FBA30181896F00B41 +:10A5A80018005FB9F5E91009C020D82AF00B180087 +:10A5B800C0A1FE7C0C00F01F0015300BFE7C0C00C7 +:10A5C800F01F00136C08EDB80004CFD0A377B1A733 +:10A5D800EFE510878D076C08EDB80004CFD06C0844 +:10A5E800E2180010CFD18D186C08EDB80004CFD058 +:10A5F8006C08EDB80004CFD03FF88D286C08EDB892 +:10A608000004CFD0DA2A00008000A4548000A4609F +:10A618003038F00A18005FB93078F00B18005F88FE +:10A62800F3E81008C1913108F00B1800E08B001511 +:10A63800E06800809908208BF4081601F5DAC0015B +:10A64800F1EB104B580AF9BA0100F9BA0002F7EA1F +:10A65800100A99CA5EFD302C5EFCD4013019189896 +:10A66800F73B000DF20B1800E0880004302CD802EC +:10A67800300AE06900809909301E7019149CF3DED5 +:10A68800D001F3DBD081F3DAD0E130FAF3DAD20487 +:10A698009119D802D4013018F00B18005FBEF00AE7 +:10A6A80018005FB81C48C030302CD8027818F1DB8D +:10A6B800D021F1DAD041F1D9D3089918D80A7819FC +:10A6C8001898EA19000F9919781CE21C0004C100B7 +:10A6D80030E9F20B1800E08B001A7019B16B300CDE +:10A6E800EA1BFFF0E81BFFFF126B911B5EFC303981 +:10A6F800F20B1800E08B000B70192F0B301AF40BBB +:10A70800094B5CDB126B911B5EFC302C5EFCE06835 +:10A718002710C0585808C0215EFF20187849EDB9A5 +:10A728000009CF917818EA18000F9918FC18010051 +:10A7380099085EFDD4313036F737000CEC07180065 +:10A74800E08B0050F733000B301EFC031800E08B41 +:10A758000049F73800083079F2081800E08800420C +:10A768003109F2081800E08B003D7619F205160150 +:10A77800F4050005EA090D04E8C90001E04900FEF6 +:10A78800E08B0030F0CA00080E923008EC1200018D +:10A79800A197F1D7D001F1D2D021F1D3D061F1DA6C +:10A7A800D084F73A0009F1D4D1081789F1DAD20830 +:10A7B800F73A000AF1DAD308FC091800C0C0C093C0 +:10A7C800302AF4091800C090EC091800C0A1C0781C +:10A7D80099C8C06899D8C04899E8C02899F8D83A63 +:10A7E800302CD832301899085EFC784CF9DCC0213E +:10A7F8005EFCE0682710C0585808C0215EFF20188A +:10A808007849EDB90001CF915C7B993B5EFDE0682A +:10A818002710C0585808C0215EFF20187849E2194F +:10A828000201E0490201CF717828300CB6085EFCBD +:10A8380076095829E08800035EFE7618A769109B00 +:10A84800E61BC000120CF3D8C003AFB91649109B21 +:10A85800E61B30001649109BE61B0C001649109B9E +:10A86800E61B03001649109BE61B00C01649109B07 +:10A87800E61B00301649109BE61B000C1649109B7E +:10A88800E61B00031649109BE21B60001649109B4B +:10A89800E21B10001649109BE21B0C001649109B86 +:10A8A800E21B03002FCC1649109BE21B0080109A74 +:10A8B8001649E21A0008109BE2180030E21B00401B +:10A8C8001649F3E81008144899085EFDF6081506BD +:10A8D800582BF9BC0BFFF9D8E80CF9B80805F9F8BA +:10A8E8008A00F9BC08005EFC582BE08800035EFE75 +:10A8F800F6081506F80800082FC87008EDB8000F0C +:10A90800C0C1A76BF3DAC010160C2ECC7808E0187B +:10A918000000F3E810089908F9DAC0105EFC582B1B +:10A92800E08800035EFEA76B160C7818EDB8000FE0 +:10A93800C0A12E4CF3DAC0107808E0180000F3E844 +:10A9480010089908F9DAC0105EFCD401F60E150457 +:10A958001C3AF9BE0210F9BE0308FC0B024BF608BC +:10A968001601F00A003AF40B0D0AF4091603F2C8AE +:10A978000001E048FFFEE0880003DA0A7818E86B77 +:10A988000000E418FFF7E018FECF590EF60E171076 +:10A99800F9BE0000FDE810089918F5DAC003F3EADB +:10A9A80011099989D80A7858EDB80001C030302CBF +:10A9B8005EFCF7DBC009997B5EFD7858E21800E081 +:10A9C800C030304C5EFC7859EDB90000F9BC010389 +:10A9D800F9F90006F00C1700E06A01FFF3DAE02845 +:10A9E800F7F80A005EFCE1B80000EE180001F1D8A3 +:10A9F800C201C020D3033FF9993978595808C020BB +:10AA0800D50330089918999899A8EA68610C9908AB +:10AA18005EFCD703D421201D500A16961897F01F04 +:10AA2800002F400A5806C5500DC83049F2081800D2 +:10AA3800E08800503095EA081800E08B004B0DD9EB +:10AA48003078F0091800E08B00458C39E068010186 +:10AA5800F0091900E08B003EED3900083038F009A4 +:10AA68001800E08B00376C0B0E9CF01F001D581C63 +:10AA7800C3000DC8EA081800C0416E18B1B8C05824 +:10AA880020586E19F3E810688F186E19ED3A00080F +:10AA98000DD8A978F1EA10E812488F18302A8C38B6 +:10AAA800F3D8C010F4081900E08800086E18ADB893 +:10AAB8008F1820298FA9C0586E18F1E910C98F196D +:10AAC8006E18E018FFF08F18300C35088F08C02872 +:10AAD800301C2FFDD82200008000A9EE8000A9526A +:10AAE8004828910C5EFC0000000018E8D431189842 +:10AAF800783E580EC620F90600105806C5E0300901 +:10AB08003FF3129A3344C1780E91E8071800C0A1A8 +:10AB1800F2CAFFFEF4C9FFFF5C7A5C89FC0A070AE7 +:10AB2800C0A8F6071800C4A05C75FC050709E4096D +:10AB380000095C89EC091900C0F2F2C5FFFFF9D9D8 +:10AB4800C0105C85FC0C000CEAC2FFFF19870E914F +:10AB5800E6071800CDA1580AC3003019F20A1800F8 +:10AB6800C0617028E06900802948C0C87028302971 +:10AB7800F20A1800C0412D483409C0482D48E06940 +:10AB880000C0300C3FF7C0D8F60A1800C1705C7ED0 +:10AB9800F00E070CEC0C000C5C8CF20C1900C0D207 +:10ABA800F8CEFFFF5C7C5C8EF00C000CFCC6FFFF4F +:10ABB800198AEE0A1800CE91300CD832D401F9085F +:10ABC800001CF3D8C010F2CEFFFE140EE04E004475 +:10ABD800E088000F48F8201D1AD8E06804E31AD866 +:10ABE80048D848EC1AD8F01F000E2FCDC008786E50 +:10ABF800FC090009F36B00F02FF8786BF3D8C0104C +:10AC0800F6090009F36A00F02FF8F958001CD80279 +:10AC180080039DC480039E0880039D9C800094C48B +:10AC2800D4013439F908001CF2081900E088000F33 +:10AC380048C8201D1AD8E06804EE1AD848A848BCAD +:10AC48001AD8F01F000B2FCDC008786AF3D8C010AF +:10AC5800F4090009F36B00F02FF8F958001CD8022A +:10AC680080039DC480039E5080039D9C800094C4F3 +:10AC7800D401580CC0E14B18201D1AD8E068062BE7 +:10AC88001AD84AF84AFC1AD8F01F002F2FCDC0084E +:10AC9800786A580AC0E14A98201D1AD8E068062C3C +:10ACA8001AD84AA84A7C1AD8F01F00272FCDC00806 +:10ACB800F908001C3439F2081900E088000F49F837 +:10ACC800201D1AD8E068062D1AD84A1849DC1AD867 +:10ACD800F01F001D2FCDC008F7D8C010160A3FFB83 +:10ACE800F56B00F02FF8129B5C88300AF958001CAD +:10ACF800C1584928201D1AD8E06806321AD8494890 +:10AD0800490C1AD8F01F00102FCDC008F1DEB01082 +:10AD1800786EFC090009F36A00F0F0CEFFFFF3D863 +:10AD2800C010F6081900FE98FFF3F958001CF3D973 +:10AD3800C002CE01D802000080039DC480039E8C0F +:10AD480080039D9C800094C480039EB080039EDC99 +:10AD5800D401F908001CF3D8C010F2CAFFFEE04A7B +:10AD68000044E088000F4918201D1AD8E06804F54F +:10AD78001AD848F848FC1AD8F01F000F2FCDC00881 +:10AD8800786AF4090009F5DBC108F36A00F02FF8C6 +:10AD9800786AF3D8C010F4090009F36B00F02FF8B3 +:10ADA800F958001CD802000080039DC480039F1C32 +:10ADB80080039D9C800094C4D401F908001CF3D83A +:10ADC800C010F2CAFFFCE04A0044E088000F49B80E +:10ADD800201D1AD8E06804FD1AD84998499C1AD849 +:10ADE800F01F00192FCDC008786AF4090009F60A87 +:10ADF8001618F36A00F0786A2FF8F3D8C010F4092F +:10AE08000009F5DBC208F36A00F0786A2FF8F3D876 +:10AE1800C010F4090009F5DBC108F36A00F02FF847 +:10AE2800786AF3D8C010F4090009F36B00F02FF822 +:10AE3800F958001CD802000080039DC480039F605D +:10AE480080039D9C800094C4D421F9380035A3D890 +:10AE5800F9680035189678A75807C2406E1C580C38 +:10AE6800C050F01F001130088F186E285808C09184 +:10AE78006E355805C061EF090010EA091900C0E0F5 +:10AE880048A8201D1AD8E06804C51AD84888489CE4 +:10AE98001AD8F01F00092FCDC0080E9CF01F00071C +:10AEA8008DA5D8228001122880039DC480039FA00D +:10AEB80080039D9C800094C48002E28CD421189762 +:10AEC800782C580CC050F01F000830088F286E3CB2 +:10AED800580CC070F01F00043008EF5800108F386D +:10AEE800D82200008002E28CD4211896580CC0E1C8 +:10AEF8004AE8201D1AD8E06805D11AD84AC84ADCA1 +:10AF08001AD8F01F002D2FCDC00878A75807C0E128 +:10AF18004A68201D1AD8E06805D31AD84A784A5CCE +:10AF28001AD8F01F00252FCDC0086E585808C0E069 +:10AF380049E8201D1AD8E06805D41AD84A0849DC1F +:10AF48001AD8F01F001D2FCDC0086E655805C0E047 +:10AF58004968201D1AD8E06805D51AD84998495C6F +:10AF68001AD8F01F00152FCDC0080A9AE06B0134DB +:10AF78000A9CF01F00158F5CC041E06C00FFD822CE +:10AF88009859E0680133F0091900E08B00214878EE +:10AF9800201D1AD8E06805DD1AD848C8485C1AD8B8 +:10AFA800F01F00052FCDC00880039DC480039FB407 +:10AFB80080039D9C800094C480039FD880039FFCDD +:10AFC8008003A0288000D3188003A054EF38001312 +:10AFD800EA081800C0514D3870092FF991097818FE +:10AFE800301B8F684CF9720A8F0AB09BB08B306B9C +:10AFF800B0ABF40B1618B0CBF7DAC2083009B0FAC8 +:10B00800B0DBF5DAC108305BB0B9F1690008F16965 +:10B018000009F169000AF169000BF169000CF16996 +:10B02800000DF169000EF169000FB0EAEF3A001265 +:10B03800F60A18005F0C30ABF60A18005F0BF9EB44 +:10B04800100BF20B1800C0513049F20A1800C0D199 +:10B058000DC9F169000C0DD9F169000D0DE9F1690F +:10B06800000E0DF9F169000F3009ECCAFFD1F16942 +:10B078000010F1690011F1690012F1690013F1691A +:10B088000014F1690015F1690016F1690017F169FA +:10B098000018F1690019F169001AF169001BF0CB79 +:10B0A800FFE4ED35002E3106EA091900F9BC02006B +:10B0B800F5FC380016CC2FF92FFA5C89EC09190039 +:10B0C800CF413009F0CAFFD4129C340B14CC2FF9AD +:10B0D8005C89F6091900CFB13009F0CAFF94129CB7 +:10B0E800E06B008014CC2FF95C89F6091900CFB108 +:10B0F8003639F16900EFF16900EC3829F16900EDA2 +:10B108003539F16900EE344A3009F0C8FF10EF59BB +:10B11800001C10C92FF95C89F4091900CFB1D82A8D +:10B12800000001F0D421580CC0E14A28201D1AD88B +:10B13800E06806141AD84A084A0C1AD8F01F0020EA +:10B148002FCDC00878A75807C0E149A8201D1AD8F4 +:10B15800E06806161AD849B8498C1AD8F01F0018A2 +:10B168002FCDC0086E5C580CC0E14928201D1AD8A4 +:10B17800E06806171AD84948490C1AD8F01F001079 +:10B188002FCDC0086E685808C0E148A8201D1AD8FD +:10B19800E06806181AD848D8488C1AD8F01F000852 +:10B1A8002FCDC008F01F000A30088F688F58D822AA +:10B1B80080039DC48003A09880039D9C800094C454 +:10B1C8008003A0BC8003A0E08003A10C8000D13CD8 +:10B1D800D42130D878A7EF390012F0091800EFF819 +:10B1E8001E12F9B80100EFF81E13300818968FE800 +:10B1F8008F988FB88FA88FD88FC8EF48004CEF482A +:10B208000048EF480044F01F0029EBDCC008C201E9 +:10B21800301A335B0E9CF01F0026307B0E9CF01F0B +:10B2280000250E9CF01F00246E5CEF0B001CF6CB73 +:10B23800FF105C7BF01F00210C983439EECAFFDC4C +:10B248006E5B6E1CF01F001E0C9CF01F001EEF387A +:10B2580000132FF85C58EF6800133099F2081800B3 +:10B26800E0880005E0692710C058E06903E8F009A4 +:10B2780002495C79E06801F4F2C9FE0DF2080C0895 +:10B288000C9CEF58001EF01F00100C9C48FBF01F90 +:10B2980000100C9C48DBF01F000F0C9C48BBF01FF3 +:10B2A800000E0A9CD82200008000AEF08000ABC4DB +:10B2B8008000AC288000AC788000D2108001139008 +:10B2C8008000B12C8000CABC8003B4098000CBC8C0 +:10B2D8008000CA748000CA92D421305878A7EF3908 +:10B2E8000012F0091800EFF81E12F9B80100EFF883 +:10B2F8001E131896F01F0026EBDCC008C2A1301AF6 +:10B30800335B0E9CF01F0023303B0E9CF01F002285 +:10B31800302A339B0E9CF01F001FED1B002C0E9C47 +:10B32800F01F001E0E9CF01F001E6E5CEF0B001C31 +:10B33800F6CBFF105C7BF01F001B0C983439EECA6B +:10B34800FFDC6E5B6E1CF01F00180C9CF01F0017D2 +:10B35800EF3800132FF85C58EF6800133099F208A3 +:10B368001800E0880005E0694E20C058E06907D061 +:10B37800F00902495C790A9CF2C9FE0DE06801F403 +:10B38800F2080C08EF58001ED82200008000AEF02A +:10B398008000ABC48000AC288000AD588000AC7839 +:10B3A8008000D210800113908000B12CD42118960F +:10B3B800580CC0E14AF8201D1AD8E06802F51AD8DE +:10B3C8004AD84AEC1AD8F01F002E2FCDC00878A70B +:10B3D8005807C4E0EF3900123088F0091800C4811A +:10B3E80017B8178A1799B169F3EA118917AAF3EA06 +:10B3F8001089F1E910096EA81039C3A130C8EF68A7 +:10B4080000123008EF680013F01F001E5C5CC28158 +:10B41800301A335B0E9CF01F001C304B0E9CF01F43 +:10B42800001B304A332B0E9CF01F00176EAB0E9C8E +:10B43800F01F00170E9CF01F00176E5CEF0B001C2E +:10B44800F6CBFF105C7BF01F00140C983439493A96 +:10B458006E5B6E1CF01F00120C9CF01F0012EF3880 +:10B4680000132FF8EF6800133148EF58001ED82258 +:10B4780080039DC48003A13880039D9C800094C4F0 +:10B488008000AEF08000ABC48000AC288000ADC066 +:10B498008000AC788000D2108003B405800113903E +:10B4A8008000B12CD421303878A7EF390012F00988 +:10B4B8001800EFF81E12F9B80100EFF81E131896DD +:10B4C800F01F002AEBDCC008C321301A335B0E9C46 +:10B4D800F01F0027303B0E9CF01F0026302A339BBC +:10B4E8000E9CF01F0023E06B02400E9CF01F002210 +:10B4F800304A332B0E9CF01F001E6EAB0E9CF01FC3 +:10B50800001F0E9CF01F001E6E5CEF0B001CF6CB9C +:10B51800FF105C7BF01F001B0C98343949AA6E5B46 +:10B528006E1CF01F001A0C9CF01F0019EF38001356 +:10B538002FF85C58EF6800133099F2081800E0887B +:10B548000005E0692710C058E06903E8F0090249DE +:10B558005C790A9CF2C9FE0DE06801F4F2080C0857 +:10B56800EF58001ED82200008000AEF08000ABC467 +:10B578008000AC288000AD588000ADC08000AC7859 +:10B588008000D2108003B405800113908000B12C94 +:10B59800D4214BD811B9118B119A11A8B16AF5EBC6 +:10B5A800118AF5E81088F3E8100878A78FA8EF3912 +:10B5B80000123068F0091800EFF81E12F9B80100FF +:10B5C800EFF81E131896F01F0031EBDCC008C3E13A +:10B5D800301A335B0E9CF01F002E301B0E9CF01FA0 +:10B5E800002D302A339B0E9CF01F0029ED1B002CE8 +:10B5F8000E9CF01F0029304A337B0E9CF01F00245C +:10B60800301B0E9CF01F0023303B0E9CF01F0021C6 +:10B6180031CB0E9CF01F001F306B0E9CF01F001DDD +:10B628000E9CF01F001E6E5CEF0B001CF6CBFF108B +:10B638005C7BF01F001B0C98343949AA6E5B6E1CAA +:10B64800F01F00190C9CF01F0019EF3800132FF899 +:10B658005C58EF6800133059F2081800E0880005BC +:10B66800FE79EA60C058E06903E8F20809495C79A4 +:10B678000A9CF2C9FE0DE06801F4F2080C08EF58C4 +:10B68800001ED8228003B4098000AEF08000ABC44D +:10B698008000AC288000AD588000AC788000D210C3 +:10B6A8008003B405800113908000B12CD421301898 +:10B6B80078A7EF390012F0091800EFF81E12F9B850 +:10B6C8000100EFF81E131896F01F0039EBDCC008D4 +:10B6D800C501301A335B0E9CF01F0036303B0E9CC0 +:10B6E800F01F0035302A339B0E9CF01F0032ED1BF3 +:10B6F800002C0E9CF01F0031304A332B0E9CF01F9B +:10B70800002D6EAB0E9CF01F002E304A336B0E9C42 +:10B71800F01F00286E9B0E9CF01F0029304A337BD7 +:10B728000E9CF01F0024301B0E9CF01F0023303BA2 +:10B738000E9CF01F002131CB0E9CF01F001F306BB8 +:10B748000E9CF01F001D0E9CF01F001E6E5CEF0B80 +:10B75800001CF6CBFF105C7BF01F001B0C983439E3 +:10B7680049AA6E5B6E1CF01F001A0C9CF01F001992 +:10B77800EF3800132FF85C58EF6800133059F208BF +:10B788001800E0880005FE79EA60C058E06903E81F +:10B79800F20809495C790A9CF2C9FE0DE06801F4D7 +:10B7A800F2080C08EF58001ED82200008000AEF006 +:10B7B8008000ABC48000AC288000AD588000ADC0CC +:10B7C8008000AC788000D2108003B405800113900B +:10B7D8008000B12CD421304878A7EF390012F00945 +:10B7E8001800EFF81E12F9B80100EFF81E131896AA +:10B7F800F01F0025EBDCC008C291301A335B0E9CA9 +:10B80800F01F0022303B0E9CF01F0021302A339B92 +:10B818000E9CF01F001EED1B002C0E9CF01F001D3F +:10B828000E9CF01F001D6E5CEF0B001CF6CBFF108A +:10B838005C7BF01F001A0C983439499A6E5B6E1CB9 +:10B84800F01F00180C9CF01F0018EF3800132FF899 +:10B858005C58EF6800133099F2081800E08800057A +:10B86800E0692710C058E06903E8F00902495C79EB +:10B878000A9CF2C9FE0DE06801F4F2080C08EF58C2 +:10B88800001ED8228000AEF08000ABC48000AC2837 +:10B898008000AD588000AC788000D2108003B405D9 +:10B8A800800113908000B12CD4314A5830167007AB +:10B8B80030A20C9330043055C3E86EA85808C3A0D2 +:10B8C800F1090022F2CA0001F15A0022EC0919001C +:10B8D800C151F1380012E40818005F0AE6081800A0 +:10B8E8005F09F5E91009E8091800C041EA081800DD +:10B8F800C2110E9CF01F0013C1D8F1090020F2CA32 +:10B908000001F15A0020EC091900C141F138001278 +:10B91800E40818005F0AE60818005F09F5E910094D +:10B92800E8091800C041EA081800C0410E9CF01F41 +:10B9380000066E075807CC21D8320000000080CCE2 +:10B948008000B7DC8000B2E0D4211896580CC0E122 +:10B958004C08201D1AD8E068024E1AD84BE84BFC58 +:10B968001AD8F01F003F2FCDC008F9380035A3D8EA +:10B97800F968003578A7F909002CE068023FF0095A +:10B988001900E088008B5807C091350CF01F00356E +:10B998001897E08000838DACC2E86E1C580CC0304C +:10B9A800F01F00316E585808C0E04AA8201D1AD868 +:10B9B800E068026C1AD84AD84A8C1AD8F01F0028B6 +:10B9C8002FCDC0086E285808C0916E385808C0613D +:10B9D800EF090010F0091900C0E049E8201D1AD845 +:10B9E800E068026E1AD84A2849CC1AD8F01F001C01 +:10B9F8002FCDC008350A300B0E9CF01F001EF01F1B +:10BA0800001E8F1C1895C0610E9CF01F001C8DA590 +:10BA1800C178344A49ABF01F001B499B343A6E1C6D +:10BA2800F01F00190C9A499B6E1CF01F00190C9C02 +:10BA3800F01F00185C5CC0700C9CF01F0017E06CD5 +:10BA480000FFD822ED380035A3B8ED680035D822BC +:10BA580080039DC48003A13880039D9C800094C40A +:10BA68008002E2A4800112288003A14880039FA0DD +:10BA78008002E8BC800112008002E28C8003B409D5 +:10BA880080011260800113208000BBBC800111F886 +:10BA98008000B5988000AE50E06C00FFD82200000E +:10BAA800D421202D1896580CC0E14BA8201D1AD877 +:10BAB800E06803781AD84B884B8C1AD8F01F0038E6 +:10BAC8002FCDC00878A75807C0E14B28201D1AD8E9 +:10BAD800E068037A1AD84B384B0C1AD8F01F00309C +:10BAE8002FCDC0086F295BF9C1102E2933C8E06A31 +:10BAF800FFFFF2080D081438F40817B0EF580020BB +:10BB08005808F9B80001EFF80C106F395BF9C1104B +:10BB18002E2933C8E06AFFFFF2080D081438F4082C +:10BB280017B0EF5800225808F9B80001EFF80C11C7 +:10BB38006EB850185808C041FC18FF0050186EC85D +:10BB480050085808C0716EA84019F3E80008A1A869 +:10BB58005008EECBFFD80C9CF01F0013FACBFFFC6B +:10BB68000C9CF01F00121A9B0C9CF01F00110C9CDF +:10BB7800F01F0010EF39001230A8F0091800EFF894 +:10BB88001E12F9B80100EFF81E132FEDD82200009D +:10BB980080039DC48003A16080039D9C800094C4A1 +:10BBA8008003A17C8000CBC88000CA928000CA7440 +:10BBB8008000CB88D43178A71896149574186E290C +:10BBC8005809C0916E395809C061EF0B0010F20B8B +:10BBD8001900C0E04BE8201D1AD8E06805651AD89E +:10BBE8004BC84BDC1AD8F01F003D2FCDC0088A5B2C +:10BBF80032BAF40B1900E088020F118B302AF40BCB +:10BC08001800E0810209F93C002EECCBFFD1F0CA04 +:10BC1800FFE4C0982FF917345C59153EFC0418004E +:10BC2800E08101FAF8091800CF6311FA11CB11D994 +:10BC380011E8B169F3EB1189F3E810896E08F5E9A9 +:10BC480010091039E08101E80E9CF01F00258A4C8C +:10BC5800E06800F0F00C1900E088000FF8CC00F064 +:10BC6800EF5C00105C7CF01F001F8F3CC051EF5C44 +:10BC78000010E08F01D1E06C00F0F01F001A8F2C4B +:10BC88001894C0C16E3C580CE08001C6F01F001625 +:10BC9800EF5400108F34E08F01BF189B3009E06A21 +:10BCA80000F00A9CF01F0011E06800F0F00C190089 +:10BCB800C2004878201D1AD8E068052E1AD848C84E +:10BCC800485C1AD8F01F00052FCDC00880039DC41A +:10BCD80080039FA080039D9C800094C48000AEC414 +:10BCE8008002E2A48002E28C8000CEC48003A1948A +:10BCF8006E3B580BE08001B2E06900F0EF1A0010CB +:10BD08000A9CF01F0036EF080010F8081900E080C0 +:10BD180001A54B38201D1AD8E06805351AD84B18EC +:10BD28004B1C1AD8F01F00312FCDC00819A8305A63 +:10BD3800F4081800E0810100EF3800123019F20809 +:10BD48001800E08100EC30086CA4333B89D889B82E +:10BD580089C8089CF01F0026C0F0F8C8FFFC19AB82 +:10BD6800119919BA1188B16AF5EB118AF5E81088AA +:10BD78001248E948004433AB089CF01F001DC0E09E +:10BD8800F8C8FFFC19AB119919BA1188B16AF5EB1B +:10BD9800118AF5E810881248C0386918A198E9484E +:10BDA800004833BB089CF01F0012C0E0F8C8FFFC35 +:10BDB80019AB119919BA1188B16AF5EB118AF5E82E +:10BDC80010881248C0286918E948004C6828F0C94A +:10BDD800FFF0C0F11298C1C88000CEC480039DC492 +:10BDE8008003A1C880039D9C800094C48000AAF4AD +:10BDF800F1390013F13B0010F13A0011F13800124B +:10BE0800B16AF5EB118AF5E81088F3E8100889A8FB +:10BE1800301B089CF01F0084C0E0F8C8FFFC19AB79 +:10BE2800119919BA1188B16AF5EB118AF5E81088E9 +:10BE3800124889B8303B089CF01F007BC0E0F8C866 +:10BE4800FFFC19AB119919BA1188B16AF5EB118A7F +:10BE5800F5E81088124889C831CB089CF01F007299 +:10BE6800C0E0F8C8FFFC19AB119919BA1188B16A7A +:10BE7800F5EB118AF5E81088124889D8306B089CD0 +:10BE8800F01F00691892C2E01998A38889E8582819 +:10BE9800F9B80B02E9F8BA0E3003C1D8E608150262 +:10BEA800E6C9FFF22FE8E8090029E4080008113E76 +:10BEB800113AB16AF5EE118A118EF5EE108A1191D8 +:10BEC800069CF5E11001F2CBFFFC93112FF3F01F54 +:10BED80000575C5368E81033CE23069C4D4BF01F87 +:10BEE80000536CA43008E93A00123089EF58001E5C +:10BEF800F20A1800E9F91E12E9F81E130C9C300A20 +:10BF0800E8CBFFD8F01F004BE93800132FF8E96899 +:10BF180000133018E958001EC7E820383029F20805 +:10BF28001800E08B007930080C9CEF58001EF01FB9 +:10BF38000042C7183069F2081800C3513019EF38A9 +:10BF48000012F20818005F0B3039F20818005F0978 +:10BF5800F7E91009C0813049F2081800C040F40818 +:10BF68001800C5916CA40C9C3003EF53001EF01F01 +:10BF780000330C9C4AEBF01F00320C9C4ACBF01F9C +:10BF880000310C9C4AABF01F0030E939001230C870 +:10BF98000C9CF0091800E9F31E13E9F81E12F01FB3 +:10BFA800002BC398302AF4081800C351EF38001248 +:10BFB800F2081800C30130086CA4EF58001E336B58 +:10BFC800089CF01F0019C270F8C8FFFC19AB119942 +:10BFD80019BA1188B16AF5EB118AF5E81088124888 +:10BFE80089986828F0C9FFF0C0311298C108F13962 +:10BFF8000013F13B0010F13A0011F1380012B16A58 +:10C00800F5EB118AF5E81088F3E8100889A80C9C6C +:10C01800F01F000F0E9CF01F000F0A9CF01F000E6F +:10C02800D83200008000AAF48000C19C8003B409C3 +:10C038008001384C8000BAA88000CABC8000CBC8F8 +:10C048008000CA748000CA928000B5988000B6B497 +:10C058008000AEC48000D13C335B0E9CF01F00030F +:10C06800FE91FE66CD8B00008000AAF4D4314C18F6 +:10C07800301370073002069430813050C7686EA6BE +:10C088005806C720ED05001EE6051900E0880006E1 +:10C098002015ED55001EC688E6051900C651ED3875 +:10C0A8000012306AED52001EF40818005F0A30C909 +:10C0B800F20818005F09F5E91009300AF4091800B8 +:10C0C800C501E8081800C0B1ED380013E0081800F1 +:10C0D800E08B00360E9CF01F0028C468E2081800A8 +:10C0E800C191ED380013E8081800E08B0010300A01 +:10C0F800ECCBFFD80E9CF01F0021ED380013ED5556 +:10C10800001E2FF8ED680013C2F80E9CF01F001CEB +:10C11800C2B8E0081800C0510E9CF01F001AC248AF +:10C128003049F2081800C0F1ED380013E208180091 +:10C13800E08B00060E9CF01F0014C1680E9CF01FD7 +:10C148000013C0F83039F2081800C0E1ED380013C8 +:10C15800E8081800E08B00060E9CF01F000DC04890 +:10C168000E9CF01F000C6E075807C8A1D8320000BB +:10C17800000080CC8000B6B48001384C8000BAA89A +:10C188008000B2E08000B7DC8000B1D88000B4AC99 +:10C198008000B598D4013019F20C1800E08B001D0E +:10C1A800580B5F1A48D9720958095F19F5E900094F +:10C1B800C13017B9178E179A17A8B16AF5EE118A08 +:10C1C800F5E81088F3E81008C0704858304AF00CB9 +:10C1D800002CF01F0004D80200001D5800001D505C +:10C1E8008002E736D42130181897F00B1800E08B3E +:10C1F80000074868304AF00B002BC038304A484BDB +:10C20800F01F00040E9CD82200001D508003B409C2 +:10C218008002E736D4313013189516911492E60C43 +:10C228001800E088000F4BB8201D1AD8E0680246B5 +:10C238001AD84B984B9C1AD8F01F00392FCDC0083C +:10C248004B89F20C0028F20C072B11BA119911A88E +:10C25800B169F3EB1189F3E81088F5E81008C0E13B +:10C268004AC8201D1AD8E06802471AD84AE84ABCCA +:10C278001AD8F01F002B2FCDC008300AE06B011030 +:10C28800149CF01F002A1897C041E06600FFC758A9 +:10C2980078045804C0E049F8201D1AD8E068024D17 +:10C2A8001AD84A3849DC1AD8F01F001D2FCDC0080B +:10C2B800781630CA089B0C9CF01F001EECC9FFF4CE +:10C2C800AC92ACD3E5D2C110ACA3ACC42011AC8203 +:10C2D80032EC2FF1F2C8FFFF300AC05810CBF5D26C +:10C2E800C0082FF1038BF4C2FFFFE80B18005F139F +:10C2F800F80B18005F16E7E60006E8061800CEF10E +:10C30800B28A0389E8091800C1601099CE3B000081 +:10C318008003A1E48003A22880039D9C800094C42C +:10C3280000001D508003A2408000D3188003A2643F +:10C338008002E8BCF0CBFFFB10C9B089B0A9301966 +:10C34800B099B0B96E180E9C101B5C7BF01F000CE6 +:10C3580048C848D6F0050025335A6C0C0A9BF01FD4 +:10C36800000B6C0C0A9A33590E9BF01F0009EDDC88 +:10C37800C0080E9CF01F00070C9CD8328000D21019 +:10C3880000001D5000001D5880011320800114F08A +:10C398008000D13CD421189A303CF80A1800E08873 +:10C3A800000F4BE8201D1AD8E068028A1AD84BC83B +:10C3B8004BCC1AD8F01F003C2FCDC0084BB8E06713 +:10C3C8000118F4070247F007000730180F8B169979 +:10C3D800F00B1800C0A0C603302BF6091800C0F0F7 +:10C3E800F8091800C4C1C4383008AEABAEB8AE986E +:10C3F800EECBFFF43028300CAE88C3680FA92019A3 +:10C408005C59AEA9C4910FBB2FFB5C5BAEBB0F9C04 +:10C41800304EFC0B1800C251F20C1800C1214A4AD8 +:10C4280015FB15CE15DC15EAB16CF9EE118CF9EA9D +:10C43800108AF7EA100AC050AEB9AEA8AE98D82252 +:10C44800EEF801105808C070EEFA0114300BEECC6B +:10C45800FFF45D183008AE883008EF480110D82284 +:10C46800AEABEECBFFF4F01F0013D8226E282018D5 +:10C478008F28C121EF480110AE88D8224878201DA6 +:10C488001AD8E06802C61AD848B8486C1AD8F01FFB +:10C4980000062FCDC008D8228003A1E48003A28023 +:10C4A80080039D9C800094C4000018F000001D507B +:10C4B8008000C21C8003A29CD431580B5F081292E2 +:10C4C80016974BB914967209189558095F04F1E448 +:10C4D8001004E08100B6580CE08000B31989E8091F +:10C4E8001800E08000AEF01F0033E04C00FFE08B46 +:10C4F80000A84B1B0A9CF01F0031C08137F8AEA47E +:10C50800AE88AE9C3018AEB8D8320A9CF01F002C0A +:10C51800F8081618AE88F1DCC208AEBCAE98F1DC9B +:10C52800C108AEA85BFCE081008F4A63300430305C +:10C5380006910788E0081800C171E80400280A9CE1 +:10C54800F00B1503101B2FFBE20B003B2FCBF01F4A +:10C55800001BC0A1E0680118B13449A8F004000428 +:10C56800E8F8010CC0782FF4E6C3FEE85844CE2161 +:10C578003FF8F0091618AE89F3D8C208AEB8AE99DC +:10C58800F3D8C108AEA95BF8C5E1300748E848DB35 +:10C59800118A0E9C0E9930313043F2C0FFFF178488 +:10C5A80016985804C1211297C358000000001D585E +:10C5B8008002EDD08003A2BC8002ECC880011E106E +:10C5C800000018F0000018ECE2041800C0C117C8F9 +:10C5D800F4080104F40801081838E08A0005F9D4C1 +:10C5E800C0081297F3D0C008F6CBFEE8E609180099 +:10C5F800CD513039F2071800E08B0027494BE0682D +:10C608000118EE080248F6080008118BF20B180012 +:10C61800C1B1F4C9FFFFB0CAF1460110301AF142A6 +:10C628000114B08AF0CCFFF448A80A9BB089F01F27 +:10C63800000A0E9CF01F0009E06C00F2D832E06C92 +:10C6480000F7D832D83AE06C00FFD832000018F072 +:10C65800000018EC8002ED708000C39CD40148985B +:10C6680070085808C0D0300CF01F0007301CF01FAD +:10C678000006302CF01F0004303CF01F0003D802E5 +:10C6880000001D588000C39CD421494C4946F01F26 +:10C6980000156C0518975805C1E1F01F00138D0CA3 +:10C6A800C1A0492B0A9AF01F00120A9A491B6C0C68 +:10C6B800F01F00116C085808C0E05807C0C0EE0908 +:10C6C800161848E8B0B7B089F3D7C208EFD7C10841 +:10C6D800B099B0A7D82200008003A2C800001D5856 +:10C6E80080011E10800112008003B40980011260CD +:10C6F8008000C704800111F800001D50D431E068A3 +:10C7080002001496944AF00A1900E08B00E331986D +:10C71800F00A1900E08800DE4DF75C7A30090E9BBC +:10C728000C9CF01F005E8C48F8081900E08100D2CC +:10C738000F993038F0091800E08B00CCE06501183B +:10C74800AB394D75120530290B8AF20A1800E081C1 +:10C7580000C1AA880FBAF5DAC004AADA0FD80FCB3D +:10C76800F1EB108B0FF80FEC5C8BF1EC108C3009AF +:10C778005C8C0FA8F2081800E084009DF20A1800EB +:10C788005F18301AF40B18005F1AF5E81008F20861 +:10C798001800E0810090EAC4FFF42F4708980F8939 +:10C7A800129AE21A00C0E04A00C0C1502FF7C098A0 +:10C7B800F3DBC0082FF7118BF40B1800C7B12FF863 +:10C7C800F2CB00010F8A5809CF41F20A1800C03095 +:10C7D8002FF8CE6B4B0B30082F4B1739129AE21AF1 +:10C7E80000C0E04A00C0C060120B1789F0091800A9 +:10C7F800CF51F1DCC0082FBB300E301A3047C58846 +:10C808001739129CE21C00C0E04C00C0C060120B3B +:10C818001789FC091800CF512FFB17CC17D9B1691C +:10C82800F3EC118917ECF7330008F3EC108917A221 +:10C8380017FC1781F9E91009F73C0009F9E3108C96 +:10C8480017B35C8CE7E2108317925C83E5E11082F2 +:10C85800F4021900C281F4031900C251EE0C190048 +:10C86800C2218B29E8593A80E0880005E8783A80A7 +:10C878008B28EAC7FEF42F6B304A0E9CF01F000984 +:10C88800EAF801105808C250EAFA01140E9B089CF5 +:10C898005D18C1F800001D5C8000CEC4000018F0CF +:10C8A8008002E7365C7C20182F6C5C58180B5808FF +:10C8B800CA81EAF801105808C070EAFA0114300B6E +:10C8C800EACCFFF45D183008AA883008EB4801105C +:10C8D8000C9CF01F0002D8328000D13CD401F01F1C +:10C8E8000003F01F0003D8028000C8F88000C6903B +:10C8F800D42149A949ABF2CCFEC4F2C8FF54300A8E +:10C90800F2C9FF50910A930AB22A172EF14EFFFC82 +:10C918002F092F081838CF71492949382FD9149C65 +:10C92800E019FFFCF0C6FFDC48D7490E910CEE0A6F +:10C938000405189BC098700493042FFB9109FC0A06 +:10C9480005045C8B0809EA0B1900CF632FC82FEA8E +:10C958000C38CED1D8220000000080D48003A2D8A1 +:10C9680000001F5C000072E88003A394D401580BF8 +:10C97800C200F1DBC002C0E048F8201D1AD8E06808 +:10C98800016B1AD848D848EC1AD8F01F000E2FCDE2 +:10C99800C00848D8F00C03299709F00C092B48B8AF +:10C9A800A56CF00C000CF8CCFF54780820189908F6 +:10C9B800D80200008003A2EC8003A33080039D9C72 +:10C9C800800094C4000072E8000080D4D421189834 +:10C9D800588CE088000F49F8201D1AD8E068013DFE +:10C9E8001AD849D849DC1AD8F01F001D2FCDC00825 +:10C9F80049CE49D9FC0C032CF0CAFFF5580CC230BB +:10CA0800A56AF00B15047807F20B000BFC08092740 +:10CA1800F6CBFF5414097608720A2FF8103AF3F887 +:10CA28003A009708F1DCC002C13048A8201D1AD886 +:10CA3800E068014F1AD848D8488C1AD8F01F000867 +:10CA48002FCDC008A56A140992282FF8B228D82239 +:10CA58008003A2EC8003A35080039D9C800094C4B3 +:10CA6800000072E8000080D48003A370580BC0C097 +:10CA780017B8178A179917ABB169F3EA1189F3EB5D +:10CA8800108BF1EB100B993B5EFC580BC0C017B82C +:10CA9800178A179917ABB169F3EA1189F3EB108B71 +:10CAA800F1EB100B992B5EFC4828910C5EFC000002 +:10CAB800000080D0D4211897F9380035EDB800006F +:10CAC800C0D1A1C8F968003578885808C0205D1819 +:10CAD8006E785808C0300E9C5D18D822F93C003595 +:10CAE800F9DCC0015EFC580CF9FB1A075EFCD703A1 +:10CAF800D421300A18971696302C96CBF01F001ABE +:10CB08001895C041E06600FFC2B80C9BF01F0017E3 +:10CB1800EDDCC008C0500A9CF01F0015C2180A9826 +:10CB280070095809C0301298CFCB6EF95809C15016 +:10CB38006F095809C0E148F8201D1AD8E068025367 +:10CB48001AD848D848DC1AD8F01F000D2FCDC008D5 +:10CB58009305EF480040C048EF4800408FF50C9C13 +:10CB6800D82200008000D3188000CF988000D13CE4 +:10CB78008003A3A88003A44480039D9C800094C4E0 +:10CB8800D4211897F9380035EDB80000C170A1A874 +:10CB9800F968003578885808C0205D186E785808FC +:10CBA800C0300E9C5D18EF380035EDB80005C06147 +:10CBB8000E9CEECBFFFCF01F0002D8228001370C40 +:10CBC800D42117881799B169F3E8118917A8F3E8F0 +:10CBD800108917B81697F1E91009189678181039BE +:10CBE800C27049A8700CC0A8780978356C1810393B +:10CBF800C041301BF01F00160A9C580CCF614958E1 +:10CC08007008C14870095809C1006C1A1439C0D19C +:10CC18000F8A0F99B169F3EA11890FAAF3EA10890B +:10CC28000FBAF5E91009910970385808CEC10F8A72 +:10CC38000FB90F98B168F1EA11880FAAF1EA1088C4 +:10CC4800F3E810088D18D8220000820C8000E12437 +:10CC580000008214D421149712961895F01F001022 +:10CC68005807C0C00FB80F8A0F990FA7B169F3EA28 +:10CC78001189F3E71087F1E710078B275806C0C022 +:10CC88000DB80D8A0D990DA6B169F3EA1189F3E67D +:10CC98001086F1E610068B36D82200008000CBC83B +:10CCA800D4213006999899169926993699A6997695 +:10CCB800998699F6F94600404908FAC4FFEC681EBF +:10CCC8006804F96600351185F96500382FF5B085D7 +:10CCD8001897994EF01F000A0E9C5D145C5C4898EA +:10CCE800580CEC071710F1F90000EFF90A00F1F7FA +:10CCF8000A000E9CD82200000000730C8000CC5C57 +:10CD0800000080CC1898300CC0482FFC70085C5C80 +:10CD18005808CFC15EFC580CF9F81207F9B901019F +:10CD2800F1D9E108F9F81C075EFCD703D401580CC7 +:10CD38005F08580B5F09F3E81008C1304978201DD7 +:10CD48001AD8E068028F1AD84958496C1AD8F01FC7 +:10CD580000162FCDC008964AF4080008B848129C5F +:10CD6800984878095809CF819859F0091900C0E006 +:10CD780048A8201D1AD8E06802971AD848B8489CD5 +:10CD88001AD8F01F00092FCDC0089649990BF20850 +:10CD98000008B848D80200008003A4708003A4B437 +:10CDA80080039D9C800094C48003A4ECD421169732 +:10CDB800F01F00065807EFF81207F9B90101F1D979 +:10CDC800E108EFF81C07D8228000CD34D421580C94 +:10CDD800C0E14B58201D1AD8E06801B01AD84B386A +:10CDE8004B3C1AD8F01F00332FCDC008580BC03168 +:10CDF800169CD8223008F00B1900C154F60911000E +:10CE080098585C89F2081900C0F24A78201D1AD88F +:10CE1800E06801B71AD84A884A5C1AD8F01F00257A +:10CE28002FCDC0081699F93E000C300A3037F40EA1 +:10CE380019005F08EE0E19005F061497104678185F +:10CE4800F4061800C0A0F00B01099919F8CAFFF000 +:10CE58001439C2029918DA2A201E3017EE0E19006A +:10CE6800E08B000CF40B1900C1D4985AF20A19008F +:10CE7800C19316189918C0E848B8201D1AD8E06858 +:10CE880001E61AD848D848AC1AD8F01F000A2FCDA6 +:10CE9800C00898581608B8589848F00B000BB84BBB +:10CEA800D82ADA2A8003A47080039EA480039D9C5C +:10CEB800800094C48003A51C8003A53CD43116913E +:10CEC8001497580CC0E14AD8201D1AD8E068033ED0 +:10CED8001AD84AB84ABC1AD8F01F002B2FCDC00860 +:10CEE800580BC070300518960A920A930A90C388A6 +:10CEF8004A28201D1AD8E068033F1AD84A384A1C25 +:10CF08001AD8F01F00212FCDC0085809C0A08C588E +:10CF1800F208010AF0091900C043F3DAB010C1F8A9 +:10CF2800F1D9C0108C54E8090109EE091900EE097D +:10CF380017B06C1BE9D9B010F9D5C010100BE20C72 +:10CF4800000C089A5C7AF01F0012E8030003081727 +:10CF5800E80500055C835C855C8730096C0658062B +:10CF68005F1AE40719005F18F5E80008E0081800E0 +:10CF7800CCD1069CD83200008003A4708003A5B0F1 +:10CF880080039D9C800094C48003A5D08002E7366E +:10CF9800D431580C5F08580B5F0918961697F3E8B8 +:10CFA8001008C06198499648F0091900C0E24C7809 +:10CFB800201D1AD8E06802FE1AD84C584C5C1AD8C2 +:10CFC800F01F00452FCDC00830050A945806C0E16F +:10CFD8004BE8201D1AD8E06803031AD84BF84BDC3D +:10CFE8001AD8F01F003D2FCDC0088C5808995C79DD +:10CFF8008E53F5D8C010F7D3C010121AF3D5C0104D +:10D00800F6090109123AE7D5E413E8091750F1D9EE +:10D01800E51308985C786C1C100CF1D5C0105C8383 +:10D028006E1BF5D3C010100BF01F002DE604000492 +:10D038008C585C84F0041900E088000F4A38201DE1 +:10D048001AD8E068030F1AD84A684A2C1AD8F01F71 +:10D0580000222FCDC008F0041900EDF60000F9B445 +:10D068000000E60500058E585C85F0051900E0888B +:10D07800000F4968201D1AD8E06803151AD849A876 +:10D08800494C1AD8F01F00142FCDC008F00519001C +:10D09800EFF72000F9B502005807C2908E598E4864 +:10D0A800F0091900C2416E085808C2104878201DBE +:10D0B8001AD8E068031F1AD848C8486C1AD8F01F55 +:10D0C80000062FCDC00800008003A4708003A5F4DB +:10D0D80080039D9C800094C48003A6248002E736C8 +:10D0E8008003A6348003A64C8003A6685806C16056 +:10D0F8008C598C48F0091900C1116C085808C0E017 +:10D108004898201D1AD8E06803241AD84878488C13 +:10D118001AD8F01F00082FCDC0085807FE91FF58F5 +:10D128000E9CD8328003A4708003A66880039D9C5F +:10D13800800094C4D421189B580CC0E14AB8201D23 +:10D148001AD8E068021C1AD84A984AAC1AD8F01FB4 +:10D15800002A2FCDC008F939000C3038F009180022 +:10D16800E088000F4A18201D1AD8E06802281AD84B +:10D178004A284A0C1AD8F01F00202FCDC0083007C3 +:10D18800303530169679F2C800015C885809C0E13C +:10D198004968201D1AD8E06802351AD84988495CC0 +:10D1A8001AD8F01F00152FCDC008B6785808C1B19D +:10D1B800F738000C169CF0C900017604EA0819003B +:10D1C800C031308CC068EC091900E08B0006307C57 +:10D1D800F01F000CC038F01F000C2FF7089B5C579D +:10D1E8005804CD110E9CD8228003A47080039EA4FD +:10D1F80080039D9C800094C48003A6948003A6AC01 +:10D208008000C9748002E28CD421580CC0E14B988C +:10D21800201D1AD8E068015F1AD84B784B7C1AD8C1 +:10D22800F01F00372FCDC0083019F938000CF2086C +:10D2380018005F1A3039F20818005F19F5E900097B +:10D24800C1405808C1203029F2081800C0E04A98A7 +:10D25800201D1AD8E06801631AD84AA84A7C1AD84F +:10D26800F01F00272FCDC0089848F00B1900C3F213 +:10D27800F3D8C0101897F1DBB0105C7B121BC27892 +:10D28800E04BFFFEE08A000F49A8201D1AD8E0688D +:10D2980001771AD849C8499C1AD8F01F00192FCD10 +:10D2A800C0088E481608AE486E075807C0E14918EE +:10D2B800201D1AD8E068017B1AD8494848FC1AD8BA +:10D2C800F01F000F2FCDC008F1DAB0108E59F00909 +:10D2D800010AF2081900FE9BFFD5AE48AE586E0C45 +:10D2E800580CC030F01F000A30088F08D822000000 +:10D2F8008003A4708003A70080039D9C800094C4D1 +:10D308008003A7188003A7348003A7488000D13C76 +:10D31800D431202D16971495581CC0B0C083582CB2 +:10D32800C040583CC0B1C1783004C0583144C0280E +:10D3380030042EC42E445C84C0F84C08201D1AD832 +:10D34800E06800D11AD84BE84BEC1AD8F01F003E21 +:10D358002FCDC00830045825E08B00065815E08210 +:10D3680000DDCBF85835E08100E6308CF01F00373F +:10D378001896E08000F25C740E99E8C8FFFD5C79AD +:10D38800E018FFFCB847E06A02443000F4080108DE +:10D39800F8040004F0090D472ED4E014FFFCAC5744 +:10D3A8009914F965000C99005C77F8C3FDAC0E047C +:10D3B8000833C0E24A18201D1AD8E06800EB1AD8D2 +:10D3C8004A384A0C1AD8F01F00202FCDC008580838 +:10D3D800E089000F4998201D1AD8E06800ED1AD896 +:10D3E80049C8498C1AD8F01F00182FCDC008F20779 +:10D3F800010700980A9918943015E0610243B8753E +:10D40800E0620244C6A850195008308CF01F000F83 +:10D418000E9B189A5C8BF4CEFFF0F6011900F60CFF +:10D428001720E40C173040194008580AC1610C9CB9 +:10D438001496F01F0009C9088003A4708003A76030 +:10D4480080039D9C800094C48000C9D48003A77C7D +:10D458008003A7B08000D13C9508890AF569000CC3 +:10D46800F560000DE047FFFFC0E14BD8201D1AD83A +:10D47800E06801071AD84BB84BBC1AD8F01F003B1C +:10D488002FCDC008951EB45CB44BFDDEC002C0E0D1 +:10D498004B38201D1AD8E068010D1AD84B484B2C80 +:10D4A8001AD8F01F00322FCDC0085C7C8CDB18170F +:10D4B80014946C1CF80B000B1633C0E24A88201D2C +:10D4C8001AD8E06801101AD84AA84A7C1AD8F01F5E +:10D4D80000272FCDC008B4755807FE99FF96C3786A +:10D4E8000E985C782FD8E018FFFC5C74E8CCFFED50 +:10D4F800E01CFFFC100CF01F00201896C2D030086A +:10D50800F8040004AC572ED4B847E014FFFCF968BF +:10D51800000C99149908C1B8307CF01F00181896AF +:10D52800C1B03008AC57F965000CB847990899188C +:10D53800C0E848B8201D1AD8E068013D1AD8490843 +:10D54800489C1AD8F01F00092FCDC0083018AC78B5 +:10D558003008ED68000D0C9C2FEDD8328003A470C4 +:10D568008003A7E480039D9C800094C48003A7F8EF +:10D578008003A77C8002E2A48000C9D48003A82885 +:10D58800D43149B8781918951094300CF2C2FFF4C8 +:10D59800F3310009700718961893C1E8EF380010A6 +:10D5A8000238C1716E585808C1400A9A0E9B6E6CB9 +:10D5B80004995D18C0E05806C0410C95301CC0A8FD +:10D5C8006E388D3868088F388907301C3005C028B8 +:10D5D800300C0E966E37E60C18005F0858075F1976 +:10D5E800F3E80008E6081800CDA1D832000073104F +:10D5F800E06C00FB5EFCD421E067040078A8F90B1E +:10D60800002C78C9F5DBC010F90E003C100AEE0EAC +:10D618001900E0880005E06E0400C0285C7EF4096B +:10D628000107EE0E010EC076F95B002E78CCF40CE3 +:10D63800010CD822F009010A580AE08A00063008CD +:10D64800F958002ED82AF2080108F958002ED82ACD +:10D65800996B5EFCF94B008C5EFCF94B00885EFC14 +:10D66800F94B00985EFC998B5EFCF96A0039F94B1E +:10D6780000945EFC5EFC5EFC48A87008C028703808 +:10D688005808CFE148887008C02870385808CFE19A +:10D6980048687008C02870385808CFE15EFC000060 +:10D6A8000000820C0000821400008220D4014A6825 +:10D6B8007008C30870495809C0E14A48201D1AD8A3 +:10D6C800E06805AC1AD84A284A2C1AD8F01F00225C +:10D6D8002FCDC0085819C0E149C8201D1AD8E068E4 +:10D6E80005AD1AD849D849BC1AD8F01F001B2FCD50 +:10D6F800C00858A9C0E14958201D1AD8E06805AEED +:10D708001AD84978493C1AD8F01F00132FCDC00801 +:10D7180070385808CD0149387008C128704958A98F +:10D72800C0E048A8201D1AD8E06805B11AD848E812 +:10D73800488C1AD8F01F00082FCDC0087038580838 +:10D74800CEE1DA0A0000820C8003A8688003A8AC46 +:10D7580080039D9C800094C48003A8D88003A904FA +:10D76800000082208003A934D43118961497784891 +:10D778005808C0E04C48201D1AD8E068011A1AD889 +:10D788004C284C3C1AD8F01F00432FCDC008580A2B +:10D79800C3514C19720C4C19720A4C19109E9207FD +:10D7A8004C08E069100070052FF70A985C87EE0EA8 +:10D7B8001900F2071790C088F104001C0E93EE04BC +:10D7C8001900CF3070385808CF811898C088F104F4 +:10D7D800001C0E93EE041900CE8070385808CF81D3 +:10D7E8001498C088F104001C0E93EE041900CDD0E3 +:10D7F80070385808CF814AA8B0074A887008C1F81D +:10D80800F109001C0E93EE091900C181700A580A2B +:10D81800E0800099580BE0800096178C1799B16941 +:10D82800F3EC118917ACF3EC108917BCF9E910096E +:10D83800E0800089123AE080008670385808CE11DE +:10D8480049887008C1A8F109001CEE091900C141F6 +:10D85800700A580AC770580BC750178C1799B169C6 +:10D86800F3EC118917ACF3EC108917BCF9E910092E +:10D87800C690123AC67070385808CE6148A870052C +:10D888000A98C2D88003A8688003A96080039D9C79 +:10D89800800094C40000822000008214000001F877 +:10D8A8000000820C0000821CF109001C0E93EE0996 +:10D8B8001900C141700A580AC450580BC430178C5B +:10D8C8001799B169F3EC118917ACF3EC108917BCFF +:10D8D800F9E91009C370123AC35070385808CE518C +:10D8E80049A87008C158F109001CEE091900C0F1D7 +:10D8F800178A1799B169F3EA118917AAF3EA108907 +:10D9080017BAF5E91009700A123AC1C070385808F8 +:10D91800CEB1580BC11017891798B168F1E9118871 +:10D9280017A9F1E9108817B9F3E81008C050304A70 +:10D938000C9CF01F00078D354868ED57001C9106B8 +:10D94800D83AE06C00F5D832000082208002E73631 +:10D958000000821CD4211897169CF01F0008C0B044 +:10D96800F908002C5808C0702288EE081900F00742 +:10D9780017305C870E9CD82280012228D421F90810 +:10D98800002C1897F3D8C010E06CFFFFF5DBC0102F +:10D99800F8090109123AE08A000F4948201D1AD8EF +:10D9A800E06801BD1AD84928492C1AD8F01F00127E +:10D9B8002FCDC008100BE0680800EF5B002CF00BBF +:10D9C8001900EFF8BC160E9CF01F000CE04C01FF8C +:10D9D800E08A000AEF380026A1B80E9CEF680026FE +:10D9E800F01F0007D82200008003A8688003A988D8 +:10D9F80080039D9C800094C48000D5FE80010CECBF +:10DA0800D4211896304CF01F000A1897C0E0ECE8B3 +:10DA18000000F8E90000ECE80008F8E900086C48A4 +:10DA28009948781CF01F00030E9CD8228000C9D4A6 +:10DA38008000CD1ED4211896580CC0311897C0B854 +:10DA4800781C580CC030F01F000518970C9B304C00 +:10DA5800F01F00030E9CD8228000D13C8000C974BE +:10DA6800D42130071896C0880C9C6C06F01F00055E +:10DA7800F80700075C575806CF810E9CD822000093 +:10DA88008000DA3CD4217848189758A85F1A5808BB +:10DA98005F19F5E90009C2005818C1E0F8FC0084D4 +:10DAA800580CC060F01F000D3008EF4800843FF8A4 +:10DAB800EEFC0080EF58003AF01F000930066FECCA +:10DAC800EF460080F01F00066FFCF01F0005EF46D0 +:10DAD800007CEF460078D8228000D13C8000DA68CC +:10DAE800D421169778081638C04176389908C11895 +:10DAF8004B899308C0A870390E39C0614B599308F7 +:10DB08006E399139C06812985808CF614B1993083B +:10DB180030060E9C8F36F01F00306E4858A85F19EB +:10DB280058185F181268EC081800C0C0EF380026B3 +:10DB3800EDB80000C071A1B80E9CEF680026F01F78 +:10DB480000276E485818C3206FE85808C0E04A48B4 +:10DB5800201D1AD8E06804F91AD84A284A2C1AD87D +:10DB6800F01F00222FCDC0086FF85808C0E049C840 +:10DB7800201D1AD8E06804FA1AD849D849AC1AD82E +:10DB8800F01F001A2FCDC008EEF800805808C0E03A +:10DB98004938201D1AD8E06804FC1AD84958492C7D +:10DBA8001AD8F01F00122FCDC00830088F48F01F78 +:10DBB8000012C0E148A8201D1AD8E06805021AD84A +:10DBC80048E8489C1AD8F01F00092FCDC008D82271 +:10DBD800000082188000DA8C80010CEC8003A868B1 +:10DBE8008003A9AC80039D9C800094C48003A9C4D1 +:10DBF8008003A9E08000D6B48003A9F8D42118973F +:10DC080078485808C0E04A68201D1AD8E0680175AD +:10DC18001AD84A484A4C1AD8F01F00242FCDC008F9 +:10DC2800303CF01F00231896C380EF08001CF958F9 +:10DC3800001C6E6899688E48A1B8B8483018994891 +:10DC4800EF38000BF968000BEF38000AF968000A92 +:10DC58006E089908497972080E38C0316E38C108C3 +:10DC680049599308C0A870390E39C06149299308E9 +:10DC78006E399139C06812985808CF6148E99308FD +:10DC880030080E9B8F38302CF01F000C48C948D83C +:10DC98008D8970098D3991060C9CD8228003A8685B +:10DCA8008003AA1880039D9C800094C48000C9D476 +:10DCB8000000821C000082188000C9748000D5F81A +:10DCC80000008214D431204D4B583005700910964D +:10DCD8002FF90A9491090A934B2830627007E08F54 +:10DCE800019E6E485808C0E14AF8201D1AD8E0681D +:10DCF80002571AD84AD84AEC1AD8F01F002E2FCD4E +:10DD0800C0085818C0E14A88201D1AD8E06802588F +:10DD18001AD84A984A6C1AD8F01F00262FCDC00886 +:10DD280058A8C0E14A08201D1AD8E06802591AD834 +:10DD38004A2849FC1AD8F01F001F2FCDC0085828C0 +:10DD4800C071EF38004EE4081800E0800081EF3819 +:10DD5800004E30CAF4081800C7A0EF3800AC10997C +:10DD6800E8081800C300EEF900A82FF9EF4900A849 +:10DD7800493A100AF53AFFFF1439C6B33009EF499A +:10DD880000A8E4081800F9B90801F1D9E808EFF883 +:10DD98008EAC0E9CF01F000BC5C80000000082105E +:10DDA8000000820C8003A8688003AA3C80039D9C25 +:10DDB800800094C48003AA688003AA948003AC38C6 +:10DDC80080010A20EF08003AE6081900F9B90401B1 +:10DDD800F1D9E408EFF84C1D6FF85808C3A0EF0913 +:10DDE800003AEF08004CF0091900C3356E4858286E +:10DDF800C100EF09004AEF0800484CD1A3581208A7 +:10DE0800EF39004EE2090709F0090948EF58004CBC +:10DE1800EF080060EF090056F0091900F00917B083 +:10DE2800EF08003CF3D9C02FEF590058F00A15014C +:10DE3800F0091900EFFA3C2CEF08003CEF53003AC8 +:10DE4800EF5800560E9CF01F003BC0383018C02811 +:10DE580030086E495869C0B16C0B6EDAF60A010ACF +:10DE6800E04A0028E08800042FF85C588ECAEDBA12 +:10DE78000003C39158495F0A58795F091449E809B2 +:10DE88001800C3106C0AEEFC00A0EEF100A4F80123 +:10DE980002416ED9EEFB009CF4090109E20B000E69 +:10DEA800E06A01F4FC0A0D00FAE100080039E08894 +:10DEB80000062FF830115C58C178EF3100ADE20C44 +:10DEC800034BF60A0D0A1439E088000E50180E9C10 +:10DED800F01F0019EF3900AD30012FF9EF6900ADDF +:10DEE8004018C0283001EEFC0080580CC1106ED9D3 +:10DEF8006C0A121AEF09004CF2091006123AC08394 +:10DF08005018F01F000E30004018EF4000806E4996 +:10DF18005839C1516C0A6ED9F4090109E049002841 +:10DF2800E08800182FF85C58C14800008003A85802 +:10DF3800800110608001109C8000DA685899C091B7 +:10DF48006C0A6ED9F4090109E04900F0E08B00047D +:10DF58005808C4900E9CF01F00434C385805C14027 +:10DF680070081037C0E14C18201D1AD8E06802E488 +:10DF78001AD84BF84BFC1AD8F01F003F2FCDC00819 +:10DF88006E388B38C13870090E39C0E04B78201DC7 +:10DF98001AD8E06802E81AD84B884B6C1AD8F01FD8 +:10DFA80000362FCDC0086E399109EEF80098580850 +:10DFB800C0403FBB6E6C5D185801C0F0EF180024DC +:10DFC800201DEEC9FFFC1AD80E9AEF18001C6EAB84 +:10DFD8006F7CF01F002B2FED0E9B302C6E37F01F3F +:10DFE8000029C1C8EF3900382FF9EF690038EF3A36 +:10DFF8000039F20A1800E08B0010EF680038EEF8DC +:10E0080000945808C0600E9B6E6C5D185C5CC04143 +:10E018000E9CF01F001D0E956E375807FE91FE638B +:10E0280049A849B410957006C6086C4858A8C0E0BD +:10E0380048E8201D1AD8E068030C1AD8495848DC6B +:10E048001AD8F01F000D2FCDC00868096CD8F20847 +:10E058000108E04800F0E08B004C0C976C36C4587F +:10E068008000DA8C0000820C8003A8688003AAC4B0 +:10E0780080039D9C800094C48003AAF08001023430 +:10E088008000C97480010CEC00008220000082101E +:10E098008003AB1C6A081036C0E149A8201D1AD8B5 +:10E0A800E068031B1AD84988498C1AD8F01F001851 +:10E0B8002FCDC0086C388F38C1386A080C38C0E0DA +:10E0C8004908201D1AD8E068031F1AD8491848FCC7 +:10E0D8001AD8F01F000F2FCDC0086C388B080C9B86 +:10E0E800302C6C36F01F000C5806CA01C0780C9C06 +:10E0F800F01F000A5807CCF1CE1B2FCDD8320000F4 +:10E108008003A8688003AB4C80039D9C800094C466 +:10E118008003AB748000C9748000DA8CD431202D60 +:10E1280018951691784858A8C0A1189B4A2CF01F3A +:10E1380000230A9B302CF01F0022C3B8780850082F +:10E148007818F903001C5018F9020024797778A68A +:10E15800F8F400987860189B49ACF01F00186BFC25 +:10E16800580CC030F01F00186BEC580CC030F01F72 +:10E178000016EAFC0080580CC030F01F00130A9B00 +:10E18800302CF01F000F5804C040009C3FBB5D14AA +:10E198005801C0F0201D5C72F1D3C0101AD20C9B3C +:10E1A800FAC9FFF4FACAFFF80E9CF01F00082FED19 +:10E1B8002FEDD832000082208000DAE88000C97490 +:10E1C8000000820C8000DA6880010234D42118969D +:10E1D800302CF01F00511897C5114D084D0A189999 +:10E1E8007008740BC0A870DAF60A010A123AF4092A +:10E1F8001720F00C172070385808CF61580CC04011 +:10E20800301BF01F0048302CF01F00431897C30143 +:10E218004C584C3A18997008740E37FBC178F13A8B +:10E228000014EC0A1800E08B000DF60A1800E08BC9 +:10E23800000970D7FC0701071237C033109CC0389B +:10E24800169A12977038149B0E995808CE91580C4C +:10E25800C040301BF01F0033302CF01F002F1897E0 +:10E26800C5704B28F10900D42019F15900D44AF897 +:10E27800F10900D42019F15900D4E06A00B0300B3C +:10E288000E9CF01F002B3408EF6800143FF8EF686D +:10E29800000B4A384A7A70097408F2080008950891 +:10E2A800EF48006CEF480068EF48005CEF4800500A +:10E2B8003008EF6800ADEF680038E0680800EF58F4 +:10E2C800002EEF58002C3068EF58004AEF58004CE9 +:10E2D800E0681000EF580072E0680200EF58003C58 +:10E2E8003FF8EF58003A3018EF5800564928EF48E1 +:10E2F800008CE068DD00EA18006DEF48009CE078CB +:10E3080024F88FD9EF4800A03098EF4800A40E9C5D +:10E31800D82200008000C9D40000822000008210AA +:10E328008000E1240000820C000080D48002E8BC58 +:10E33800000001F48000E5ECD401340CF01F000269 +:10E34800D80200008000E1D4D431189714961293B3 +:10E35800169578445804C0E04C98201D1AD8E068F7 +:10E36800020A1AD84C784C8C1AD8F01F00482FCDC6 +:10E37800C008580BC041E06600F7CB78304A140C4F +:10E38800F01F0043EF560024EF08001CE8081900AE +:10E39800C34110944BF84C0970064C08720B700C72 +:10E3A8004BF9E06A100092082FF80C995C88F00489 +:10E3B8001900F4081790C078F30E001CF00E19002D +:10E3C800CF4072395809CF911899C078F30E001CC4 +:10E3D800F00E1900CEA072395809CF911699C0785D +:10E3E800F30E001CF00E1900CE0072395809CF91B7 +:10E3F8004AB9B208EF58001C4AA84AB9700A72080C +:10E40800F40800089308EF48005CF0C90001E068D0 +:10E418000800EF580060EF58002CEF58002E300825 +:10E428008FC88FA8E0680200EF49006CEF490050E0 +:10E43800EF58003C0A9BE06C0200F01F001C5C8C4B +:10E44800F808100AEF5800583018EF430090EF58BA +:10E458000056EF5C003C30288F48495972080E3846 +:10E46800C0316E38C2C849399308C26870390E394C +:10E47800C221490993086E399139C2288003A868D6 +:10E488008003AB9C80039D9C800094C48002E73687 +:10E498000000820C0000821400008220000001F8B5 +:10E4A80000008210000001F48000D95C0000821C8A +:10E4B8000000821812985808CDA148D9930848D866 +:10E4C80070098F3991073019201D30081AD9109A10 +:10E4D8003029109B0E9CF01F00082FEDEDDCC008C2 +:10E4E800C0410E9CF01F00050C9CD8320000821819 +:10E4F8000000820C8001035080010CECD421189795 +:10E5080078465826C390E08B00075806C0C05816B6 +:10E51800C071C2785846C370C3635876C3C030060A +:10E528000C97C4184A8972081838C0317838C1085D +:10E538004A699308C0A870390E39C0614A399308EE +:10E548006E399139C06812985808CF6149F9930813 +:10E5580030080E9B8F38302C1097F01F001DC0A874 +:10E56800189B49CCF01F001C0E9B303CF01F001874 +:10E5780030070E96C188189B498CF01F00170E9B18 +:10E588000C9CCF5B301BF01F0016EDDCC008C0B13F +:10E598003058C088301BF01F0012EDDCC008C031B5 +:10E5A80030988F4858075F193008F00618005F0A3E +:10E5B800F5E90009F0091800C0400E9CF01F000999 +:10E5C8000C9CD8220000821C000082188000C974AC +:10E5D800000082148000DAE80000820C80010A0042 +:10E5E80080010CECD421169C1497580AC08094CB57 +:10E5F800F01F00070E9CF01F0007D82A5809C030EA +:10E60800149CD822F01F00045C5CD8228000D984B6 +:10E618008000D13C8000E504D42149887007C2A855 +:10E62800EEFB0084580BC140169AEEF8008C58088F +:10E63800C06030090E9B6E6C5D18C078169A1099F0 +:10E648000E9B109CF01F000E5C5CEFFC0A21EF385B +:10E658000026EDB80000C0D1A1B80E9CEF680026D6 +:10E66800F01F0008EF380026E018FFFCEF680026CE +:10E678006E375807CD61D8220000820C8000E5EC87 +:10E6880080010CECD401F01F0007487913882FF89B +:10E698005C58B288EDB80000C031F01F0004D80201 +:10E6A8008000E620000073148000DCCCD4314A6876 +:10E6B80070063058ED3E000C2EC6A58EF00E1900DF +:10E6C800E0880040205E3008A36E30175C8E302151 +:10E6D8003042E7DEC010E06401FFE0650200C2E8F6 +:10E6E800F5D8C010EC0A070BEE0B1800C080C293D7 +:10E6F800EC0A0009E20B1800C1B1C0382FF8C1D8E4 +:10E70800139BE40B1800C1D12FDA063AC1A413BA3F +:10E718002FC813A95C88F5E910895C89F2CA000141 +:10E72800E80A1900EA0917B0F959003CC0781399AA +:10E738005809C070F20800085C88FC081900CD135D +:10E74800D832000000007318D4217848189616971C +:10E75800F138000DEDB80000C1C1169C3007F01F5C +:10E768000020C368F138000DEDB80000C0E16C4826 +:10E77800F13A000CF139000DF3EA1089A1A9F16909 +:10E78800000DA989F169000C6E07F01F0016C0285A +:10E7980049555807C1D06E4811C411DBB16BF7E475 +:10E7A800118B11E48EEEF7E4108B6A0A8CE911F4F0 +:10E7B8000E9CE9EB100B16191409F20E010ECD3759 +:10E7C800C098141B6C1CAC6B5C7BF01F00088D0799 +:10E7D800D8225809FE99FFF7CFBB00008000DA68FD +:10E7E8008000DA3C0000731C8000D210D4314C58F1 +:10E7F80018971188EDB80004E081020C79994C282B +:10E80800F90C006070086FAAF208010BC186103974 +:10E81800C0614BE87008F4080108C1164BB87008CD +:10E82800103AC2914BA87008F139000FF138000E68 +:10E83800F3E81088F8081900E088001E4B487009B2 +:10E84800F338000FF339000EF1E910884AE972092C +:10E858005C88EF490064EF5800604AC97209EF49C3 +:10E8680000685808C080EF3900AC3008F00918007B +:10E87800EFF81EAC4A586F497008F009010B580BA5 +:10E88800E089004C3006EF5600704A2B960BEC0BD3 +:10E898001900C3215C7CEF160060F80A000A6FAC0F +:10E8A800EC0C000C143CC281EF0A003AF60A19007D +:10E8B800C2351039C211EF3800542FF85C58EF6890 +:10E8C80000543039F2081800E088000FEF090056AC +:10E8D800EF08003C12085C88F2081900E088014A39 +:10E8E800EF580056C469F2081800E08101430E9CF5 +:10E8F800F01F0009C3E93008EF680054C3A90000FD +:10E90800000073280000731C0000732400007318B3 +:10E91800000073208001016A5CD91009E08600D1EB +:10E928006F7912185808E08900CCEF380026EDB846 +:10E938000002C081A3C8EF680026EF080058EF580E +:10E948000056300A4D39EF6A004E720BEF6A0054D8 +:10E9580072096F48EF490050F6080108EF09007284 +:10E96800EF580070F2080008EF09004AEF580072EB +:10E97800EF080048A358F2080008EF58004C6E480A +:10E988005838E0880066EF080056EF090058F0098B +:10E998001900E0880006EF09003C1009C0A8EF192B +:10E9A800003CB339F7D8C010F20B0C0AF408000980 +:10E9B8005C89F0091900E088004CEF590056C488BA +:10E9C8006C08EF030074EF48007C6C1CF01F0032E9 +:10E9D800F8031900C0E24B18201D1AD8E06803B3E9 +:10E9E8001AD84AF84AFC1AD8F01F002F2FCDC008B1 +:10E9F800EF0800705808C09020186C49F339000DD2 +:10EA0800EDB90000EFF80C38EF0300746C1CF01F30 +:10EA1800002218130C9CEF530074F01F0024EF0819 +:10EA28000074EA081900C1606FF85808C1316FE82E +:10EA38005808C1014998201D1AD8E06803BF1AD8A0 +:10EA480049B8498C1AD8F01F00182FCDC0084914AE +:10EA580030056FF65806C2D06C4811CBF139000D5D +:10EA6800F3D9C0025F1A11D9B169F3EB118911EB1F +:10EA7800F3EB108911F81248680912188CE9F409A7 +:10EA8800000912085808FE9AFF9DE08F045F0000F5 +:10EA9800000073248000CD0C8003AC608003ACA818 +:10EAA80080039D9C800094C48000DA3C8003ACD035 +:10EAB8003FF8EF58003A3008EF680038C5A830082A +:10EAC800EF580070C5686C08EF030074EF480078D1 +:10EAD8006C1CF01F0021F8031900C0E249F8201D42 +:10EAE8001AD8E06803E01AD849D849EC1AD8F01FB8 +:10EAF800001E2FCDC008EF0800705808C0902018DD +:10EB08006C49F339000DEDB90000EFF80C38EF034C +:10EB180000746C1CF01F001018130C9CEF53007449 +:10EB2800F01F0012EF080074EA081900C2406FF8DD +:10EB38005808C2116FE85808C1E14888201D1AD842 +:10EB4800E06803EA1AD848A8486C1AD8F01F0006EB +:10EB58002FCDC0088000CD0C8003AC608003ACA82A +:10EB680080039D9C800094C48000DA3C8003ACD074 +:10EB78004C5430056FE65806C2106C4811CCF13978 +:10EB8800000D11DAF3D9C002B16AF5EC118A11EC63 +:10EB980011F858095F1B6809F5EC108AF1EA100AA8 +:10EBA8008CE8F20A010AF6080008F4080108C066B1 +:10EBB8006F7810195809FE9AFF886F085808C29094 +:10EBC8004B196F1A7209F4090109C2374AFB760B0F +:10EBD800EF0A0048F6080108F40B140316185C88BD +:10EBE800F00A000A5C8AEF09004AF40B14035C4837 +:10EBF800EF5A0048F20A14021419F2080008F6083D +:10EC08000009EF58004AEF59004C3008EF4800401F +:10EC180049F84A09900A6EA8580AE0800381720BE5 +:10EC2800F60911FF1009E08600B15C7AF0C9FFFF10 +:10EC38001619F20A010A580AE08900A849697216E9 +:10EC48005806C0E14958201D1AD8E06804461AD869 +:10EC58004938494C1AD8F01F00142FCDC008F00BC2 +:10EC6800010BE04B7FFEE08A002348C8201D1AD81C +:10EC7800E06804471AD848D848AC1AD8F01F000AE8 +:10EC88002FCDC008000073240000821000007320FC +:10EC98000000731C000073348003AC608003ACF088 +:10ECA80080039D9C800094C48003AD008CD81638E6 +:10ECB800C3148C48F3D8C0101639C0E44AB8201DD4 +:10ECC8001AD8E06804491AD84A984AAC1AD8F01FEA +:10ECD800002A2FCDC0081618300A5C88C058AC48E6 +:10ECE800AC5A121B6C068CD91639CFA55C3B0C9C10 +:10ECF8005C8BF01F0022C21049C8201D1AD8E0689A +:10ED080004561AD849E849BC1AD8F01F001B2FCD61 +:10ED1800C0085C3B0C9C5C8BF01F0018C0E04938B5 +:10ED2800201D1AD8E068045B1AD84958491C1AD81B +:10ED3800F01F00112FCDC0086C1A4929932A492ABF +:10ED48006EA8740B926C9508F80B000A101AB26A38 +:10ED5800F00A16187249B2F8B2CAF5D8C208F1D842 +:10ED6800C108B2DAB2E8C1B88003AC608003AD1064 +:10ED780080039D9C800094C48000CDD48003AD2086 +:10ED8800000073340000731C101BC097EF38002676 +:10ED9800A1B80E9CEF680026F01F00424C256EA912 +:10EDA8006A08F009010AE08602B7F0CAFFFFEF1B04 +:10EDB800002C121A161A580AE08902AE1039E0819E +:10EDC80001F54BA8906A7048F139000DF3D9C002DB +:10EDD8005F19F40900094B6AB409EF0A002CF20A1A +:10EDE8001900C462F13A000CF139000DF3EA1089F8 +:10EDF8005C89EDB90000C081E219FFFEF169000DE0 +:10EE0800A989F169000C4A98EF0A002CB06A704988 +:10EE1800F339000DEDB90001C031201AB06A4A3645 +:10EE28008CEB6C1CF01F00238C696C48F138000DCA +:10EE3800F1D8C0025F18F208000849D9B20849A9F8 +:10EE480072095C78EF1A002C12086EA9F4090009FF +:10EE58001238C0E04988201D1AD8E068048B1AD8F7 +:10EE68004968497C1AD8F01F00172FCDC008EEF664 +:10EE780000805806E08000BE48C46848F138000D9C +:10EE8800EDB80000C080C4B8109C7008EF4800803E +:10EE9800F01F000DEEF800805808CF71CAA80000D6 +:10EEA80080010CEC0000731C000073340000732018 +:10EEB8008000D2108003AC608003AD3480039D9C39 +:10EEC800800094C48000DA3CF138000DEDB80000F1 +:10EED800C1F16848F139000DF13A000CF3EA108AE3 +:10EEE8005C8A1499A1A95C79F20B1608EDBA0001A5 +:10EEF800C0F0F169000DF16B000C68488869F138C1 +:10EF0800000DF1D8C0025F18F2080008A6086C05C9 +:10EF18000A96F01F00455805C041C6984C324C432C +:10EF28006C4811C5868A11D9B169F3E5118911E5D3 +:10EF38008CEBF3E510890C9C11F5EBE91009F40949 +:10EF48000109640A1409F20B010BCBF7E08F0201E7 +:10EF58004B89EEF80080704811FB11C511DC11E8EF +:10EF6800B16CF9E5118CF9E81088F7E81008F00A97 +:10EF7800010A5C8AB26A7248F138000DEDB80001E6 +:10EF8800C031201AB26A4AB58AEB6A1CF01F002AFF +:10EF98008A696A48F138000DF1D8C0025F18F20892 +:10EFA80000084A39B2085C784A097209F009000A6F +:10EFB800EEF80080704811FB11CC11D911E8B16945 +:10EFC800F3EC1189F3E81089F7E91009123AC0E067 +:10EFD80049A8201D1AD8E06804C31AD84988499C52 +:10EFE8001AD8F01F00192FCDC0080C95EF450080E6 +:10EFF80048F848E9908A7209F40900098FA990082D +:10F00800EF09002CF0091900C22248C8201D1AD89F +:10F01800E06804CD1AD848D848AC1AD8F01F000ABE +:10F028002FCDC0088000DA3C0000731C000073205C +:10F03800000073348000D2108003AC608003AD6C94 +:10F0480080039D9C800094C48003ADA810190E9C79 +:10F05800EF59002CF01F004A4CA8300A7019924B47 +:10F06800F40B1900C0504C8A9509300991194C5875 +:10F078007048F138000DEDB80000C5B14C3913885F +:10F08800A5B8B288C56881098CEAF13B000DF7DBA9 +:10F09800C0025F1BF60A000A14098FA9EF0A002CA8 +:10F0A800F138000D8C69F1D8C002F7D9C0105808A2 +:10F0B8005F1EF9DAC010FC0B000B163CC0E44B488D +:10F0C800201D1AD8E06804F21AD84B284B2C1AD8FD +:10F0D800F01F00322FCDC008F409010958085F1845 +:10F0E800F20801080E9CEF58002CF01F00256C1B3D +:10F0F8009648E2081900C090680C580CC040F01FF0 +:10F108000028C028890B8D126C48F138000DEDB825 +:10F118000000C0810B88A5B8AA886E485848EFF34C +:10F128000A046C080C9CEF480080F01F001EC07891 +:10F1380049D030014944300249453073EEF6008029 +:10F148005806C1006C4811CB11D9B169F3EB11898C +:10F1580011EB6EAAF3EB108911FBF7E910091439CA +:10F16800C930EF380026EDB80000C041A1C80E9C98 +:10F17800CE68A1A8EF680026D83200008000D5FE2E +:10F18800000073340000732C000073298003AC6006 +:10F198008003ADC880039D9C800094C48000CD345A +:10F1A8008000DA3C0000731C0E9CF01F0040EEF655 +:10F1B80000805806C0714BECF01F003EEF4C0080F9 +:10F1C800D8326A093005F2CCFFFF6C4811CB11DA4E +:10F1D800B16AF5EB118A11EBF5EB108A11FBF7EA2E +:10F1E800100A1439C1214B2C8C689869F009190050 +:10F1F800E08800B4F01F002FE08000B05805EBFC59 +:10F208001A00EFFC0A20C0D85805C0D1F20A010B39 +:10F21800C4574A7CF01F0027E08000A0EF4C008014 +:10F228000C9BC3986A4B17F417C217D317EBB1633B +:10F23800E7E21183E7EB108BE9EB100B5CDB120BB9 +:10F24800C2D6F80A010B580BE0890029498CF01F37 +:10F2580000191897E08000826A4811F911CA11DB79 +:10F2680011E8B16BF7EA118BF7E8108B4928F3EB3B +:10F27800100B70088AE9101916095809E08A000964 +:10F28800F00B010B6A1CAA6B5C7BF01F000C8B0750 +:10F298000C9B0E9CF01F000AD8326C0B0C95580B77 +:10F2A800C1001696C93B000080010BF000007334C2 +:10F2B8008000DA080000731C8000D2108000E7503C +:10F2C80014195809E08A004AF138000DEDB8000019 +:10F2D800C4404A3CF01F00238D0CC3F06C4811F960 +:10F2E80011CA11DB11E8B16BF7EA118BF7E8108B43 +:10F2F80049D8F3EB100B70088CE910191609580956 +:10F30800E08A002CF00B010B6C1CAC6B5C7BF01FD3 +:10F318000017D8320E9CF01F0016D832720BF60870 +:10F328000109C0A62FFBEF19002CF60801081218D6 +:10F338005808E08A00130E9CEF380026A1B8EF6841 +:10F348000026F01F000CD8323008FE9FFBB4580985 +:10F35800FE99FE00FE9FFE4BD83200000000733479 +:10F368008000DA080000731C8000D21080010BF0C6 +:10F3780080010CECD4314B86ED0800922FF87819F7 +:10F388004B65ED5800928B091388F1D8C004F20838 +:10F39800002818971693109C4B148908F01F003109 +:10F3A8006A080E9C118BF7DBC004A36B5C3BF01F53 +:10F3B800002EC0718E493138F0091900E08B000B1E +:10F3C8004A580E9CF109009A2FF9F159009AE08FDA +:10F3D80003026A0C069B2F0CF01F0024C0B16A0AB6 +:10F3E800FC19E000F5380010B968E618F00012388A +:10F3F800C0A149980E9CF10900A02FF9F15900A06D +:10F40800E08F02E9F4CBFFF48EC830692F0A0E9C16 +:10F41800F01F00175C8CC080ED0800980E9C2FF838 +:10F42800ED580098C11868080E9CF13B000CA58B9C +:10F43800F60B10FCF01F000CC1C0ED08009A0E9CE2 +:10F448002FF8ED58009AED0800962FF8ED58009621 +:10F45800E08F02C6000080D40000733000007318EB +:10F468008000D67C8000CDD48001255880011E2CD8 +:10F47800680811CA11D9B169F3EA118911EAF3EAE6 +:10F48800108911FAF5E91009F20A1618B0CAF5D967 +:10F49800C208B0F9B0DAF5D9C108B0EA4B28910929 +:10F4A8006808F1390008F13A0009B16AF5E9118AEA +:10F4B800F139000AF5E9108AF139000BF3EA100A6C +:10F4C800F4091618F1690008F3DAC208F16A000BAA +:10F4D800F1690009F3DAC108F169000A4A386804D9 +:10F4E800910AE938000DF5D8C002F1D8C0064A0BD8 +:10F4F800B6884A086A09580A5F1A8E4514055C8559 +:10F50800B00549D87006CA586C485808C0E149B8CF +:10F51800201D1AD8E06800B71AD84998499C1AD80B +:10F52800F01F00192FCDC00858A8C0E14938201D88 +:10F538001AD8E06800B81AD84948492C1AD8F01FD8 +:10F5480000122FCDC0085818C24148C8201D1AD82B +:10F55800E06800B91AD848E848AC1AD8F01F000A81 +:10F568002FCDC0080000731C00007324000073280E +:10F57800000073200000820C8003AC608003ADF0B3 +:10F5880080039D9C800094C48003AE188003AE4421 +:10F59800098A0998F1EA1088ED0A0024F00A19008E +:10F5A800C56109AA09B8F1EA1088ED0A001CF00A39 +:10F5B8001900C4D1F33A000CF338000DB168F1EA30 +:10F5C8001188F33A000EF1EA1088F33A000FF5E8D3 +:10F5D80010086C1A103AC3B1F33A0010F33800114E +:10F5E800B168F1EA1188F33A0012F1EA1088F33AA7 +:10F5F8000013F5E810086C0A103AC2916C380C3800 +:10F60800C0E14CA8201D1AD8E06800C21AD84C885E +:10F618004C8C1AD8F01F00482FCDC008580CC06079 +:10F6280099384C6870098D3991066C380C38E0812E +:10F6380001A14BE8201D1AD8E06800C81AD84C0868 +:10F648004BCC1AD8F01F003C2FCDC0080C9C6C3650 +:10F658005806FE91FF5BE08F05296C4858A8C0E06A +:10F668004B28201D1AD8E06800D21AD84B584B1CDA +:10F678001AD8F01F00312FCDC008098B0998ED0A60 +:10F688000024F1EB1088F00A1900C77109AC09BB16 +:10F69800ED08001CF7EC108BF6081900C6E1F33CE6 +:10F6A800000CF33B000DB16BF7EC118BF33C000E33 +:10F6B800F7EC108BF33C000FF9EB100B6C1C163CAD +:10F6C800C5C1F33C0010F33B0011B16BF7EC118B93 +:10F6D800F33C0012F7EC108BF33C0013F9EB100B22 +:10F6E8006C0C163CC4A1498B178CEDBC0002E08061 +:10F6F800013AEDBC0001C2D1494B6CAC760BF60C5B +:10F70800010CC2D6ED14002C081C580CE089002806 +:10F718005C7A201D5C751ADA48DCEA0B000B5C7811 +:10F72800F2CAFFF0780CC7688003AC608003AE6C47 +:10F7380080039D9C800094C40000820C8003AE98D6 +:10F748008003AEC4000073280000731C00007324FB +:10F75800EDBC0000C0414CC870088DD84CB8900969 +:10F768003008F0091900E08000FEED3800260C9CF6 +:10F77800A1B8ED680026CF486C365806FE91FF6F99 +:10F788004C3870050C98CF286A0A580AC130F33CE7 +:10F798000010F33B0011B16BF7EC118BF33C001236 +:10F7A800F7EC108BF33C0013F9EB100B163AE081E1 +:10F7B80000DC09AB09BAF5EB108AEB0B001CF40B63 +:10F7C8001900E08100D25808C0706A3991394B0895 +:10F7D80070098B3991054AF81188EDB80004C1F118 +:10F7E8004AD8700913AB139A13B8201D1389F1EB8B +:10F7F8001088F5E910894A5B1AD9968C4A794A8BA0 +:10F808007209760BF2CAFFF0F80B000B4A5C780C11 +:10F818002FFC2F49F01F00242FEDCA48EDB8000136 +:10F82800E08100A1EB3C0014F01F00201896C08175 +:10F8380049F8F109009C2FF9F159009CC938497819 +:10F848007008F0C9FFF0C0311298C108F1390013EF +:10F85800F13B0010F13A0011F1380012B16AF5EBF2 +:10F86800118AF5E81088F3E810088D08EB08001CE9 +:10F87800ED58001C48987008F0C9FFF4C1A112980F +:10F88800C27800000000821000007320000082147B +:10F898000000732800007318000073300000731C08 +:10F8A80000007324800102348000E1D4000080D479 +:10F8B800F139000FF13B000CF13A000DF138000E60 +:10F8C800B16AF5EB118AF5E81088F3E810088D188D +:10F8D8004C587008118B1199F3EB1089ED590024DD +:10F8E80030398D494C197209F2CBFFFF8DCB8DABA6 +:10F8F800F13B000FF138000EF7E81088ED5800587A +:10F90800ED5800608A48E2180199AC486A684B8A49 +:10F918002019740C8D688D3C6A889506ED49006441 +:10F928008D880C9CF01F0033ECCBFFFCED1C003CD9 +:10F93800F01F00313019ED5C003C201D30081AD949 +:10F94800109A3129109B0C9CF01F002C2FED5C5C49 +:10F95800C0600C9C300BF01F002AC0480C9CF01FA4 +:10F9680000290E9CC3C80A986A355805FE91FF0EF7 +:10F9780049D56A08F13C000DF9DCC006F01F0022E9 +:10F988005806E08003504A188E4A6A09911791492F +:10F99800B06A30096E1A9109912A49D8910949D853 +:10F9A800B089ECFA0084580AC3C0ECF8008C5808F7 +:10F9B800C0500C9B6C6C5D18C06810990C9B109C17 +:10F9C800F01F00155C5CC041ED4C0084C2A80E9C81 +:10F9D8004928F10900962FF9F1590096F01F0010F7 +:10F9E800D8320000000073180000731C0000820C5D +:10F9F8008000E6B48000D95C800103508000E124D7 +:10FA080080010CEC8000D67E000073340000732C5B +:10FA1800000073298000E5EC000080D48000D13C10 +:10FA28004A9891064A981188EDB80002C3216C489B +:10FA38005828C0814A6870096D781039E081026BD6 +:10FA4800C1D84A49720A6CA9F4090109E08602631F +:10FA5800ED1A002C14195809E089025DE08F032182 +:10FA680049D8201D1AD8E06802271AD849B849CCC5 +:10FA78001AD8F01F001C2FCDC00849B91388A3B8A5 +:10FA8800B288ED380026A1C8ED680026E08F024351 +:10FA9800EDB80001C0616C4820285818E08B00A21E +:10FAA800492870088DD830080C9CED6800ADF01F0F +:10FAB80000106C4820285878E08B022D48D9F208AD +:10FAC800032F000000008224000073280000732424 +:10FAD8000000731C8003AC608003AEF480039D9C1F +:10FAE800800094C400007329000082108000E6B4EE +:10FAF8008003AC404CF811891298E218001259287A +:10FB0800C7A14CD8700A6DF8704811FB11C711DCF9 +:10FB180011E8B16CF9E7118CF9E81088F7E81008DA +:10FB28002FF8103AC681ED0800722FF8ED580072D0 +:10FB38004C287008ED4A0050F0CA00012FF88DC813 +:10FB48008DA84BF87008F139000FF138000EF3E872 +:10FB58001088ED5800603048ED4A00648D48EC0884 +:10FB6800000BED1C003CF01F00375C8CF808100AF5 +:10FB7800ED5C003CED580058ED0900563018F009CE +:10FB88001900C021A17CED5C0056ED0800745808EE +:10FB9800C0E14AD8201D1AD8E06802591AD84AB8D4 +:10FBA8004ABC1AD8F01F002B2FCDC00820186DFCB6 +:10FBB800ED5800747808ED48007C5808F9B800FF43 +:10FBC800F9B80100EDF81E4EED58003AF01F00227A +:10FBD800ECF800905808C050300A0C9B6C6C5D180B +:10FBE800ED380026A1B80C9CED680026F01F001B1C +:10FBF800E08F0191EDB90004E081018D4908700999 +:10FC080013AB139A13B8201D1389F1EB1088F5E98B +:10FC18001089493B1AD9968C4929488B7209760B69 +:10FC2800F2CAFFF0F80B000B483C780CC7980000AC +:10FC380000007328000073240000731C0000731870 +:10FC48008000D95C8003AC608003AF1480039D9C66 +:10FC5800800094C48000DA3C80010CEC0000732022 +:10FC6800000073304C281188EDB80004C5E14C1829 +:10FC7800700C6D485CD81808C3D66D78F808010870 +:10FC88005808E089003830488D486C885808C0E129 +:10FC98004B98201D1AD8E068027E1AD84B784B8CF6 +:10FCA8001AD8F01F00382FCDC008300A0C9B6C6C96 +:10FCB8005D185C5CC0700C9C301BF01F0033E08F3B +:10FCC80001A7ED0700560C9CF01F0030ED080070EE +:10FCD8005808F9B901FFF1D9E108EDF81C383019D5 +:10FCE800ED08003CF2071900C021A178ED58005634 +:10FCF800C2E84A78700913AB139A13B81389F1EB69 +:10FD08001088F5E910894A3B201D1AD94A29968797 +:10FD180072094A2BF2CAFFF0760BEE0B000B2F4943 +:10FD2800F01F001F2FEDCF68EDB80001E08100F350 +:10FD380049A870096CA820181039E08100EC0C9CC7 +:10FD4800F01F0018CE780C9CF01F0010496811882D +:10FD5800EDB80005E08100DFED380026A1B80C9C65 +:10FD6800ED680026F01F00113078CC1800007328C9 +:10FD7800000073248003AC608003AF2C80039D9C3B +:10FD8800800094C48000E1248000E7F40000731828 +:10FD980000007320000073300000731C80010234DF +:10FDA800800101000000732980010CEC0C9CF01FFD +:10FDB800003E4BE84BE91188E2180020C2D01388B6 +:10FDC800EDB80004C1F14BB870096D781039C1A1C4 +:10FDD800ED380026A1B80C9CED680026F01F00360F +:10FDE8000C9CF01F00364B6972080C38C5604B59E3 +:10FDF8009308C05870390C39C69012985808CFB17A +:10FE0800C6D8ED380026A1B80C9CED680026F01F76 +:10FE1800002A3088C6C81388EDB80004E081007B4A +:10FE28004A4870096D781039C7513068C6080C9C6B +:10FE3800F01F001D49D81188EDB80005C6B1ED388E +:10FE48000026A1B80C9CED680026F01F001B0C9C36 +:10FE5800F01F001A49A972080C38C1F04999930893 +:10FE6800C05870390C39C32012985808CFB1C368EC +:10FE78000C9CF01F000D48E81188EDB80004C4A1DF +:10FE880048C870096D781039C4510C9CF01F000BDC +:10FE980048B972080C38C0316C38C21848999308B0 +:10FEA800C1B800008000E7F400007329000073283F +:10FEB8000000732480010CEC8000DA8C0000820CB6 +:10FEC8000000821870390C39C0614C0993086C39EC +:10FED8009139C06812985808CF614BC99308300807 +:10FEE8008D384BB870098D39910630A88D48C128D6 +:10FEF8000C9CF01F00384B881188EDB80004C0A195 +:10FF08004B6870096D781039C0514B591388A5A8F2 +:10FF1800B2884B381188EDB80003C091ECF800980E +:10FF28005808C0803FAB6C6C5D18C048EDB8000441 +:10FF3800C0A10C9B4ABCF01F002C0C9B302CF01F5E +:10FF4800002BC658ED0A0070580AC090ECF80088DB +:10FF58005808C0505C7A0C9B6C6C5D184A48700855 +:10FF68005808C24049C91389EDB90003F1F9080DD1 +:10FF7800F9BA0001F3DAE039F1F90E0D49CAECF8E3 +:10FF8800008C5808C070740A30090C9B6C6C5D18A2 +:10FF9800C0781099740A0C9B109CF01F00165C5CCA +:10FFA800C05049387008ED48008448D81188EDB829 +:10FFB8000005C271ECF8008C5808C1D030090C9BC0 +:10FFC800129A6C6C5D18C1D800008218000082205B +:10FFD8008000E7F4000073280000732400007329F0 +:10FFE8000000820C8000DAE88000C9740000732CDD +:08FFF8008000E5EC10990C9B60 +:02000004800179 +:10000000109A109CF01F002E30094AE80C9C9109B0 +:10001000F01F002D30064AB891064AC76E1C580CD6 +:10002000C330F01F002B8F16C2F86A0BF738000D93 +:10003000EDB80002C2604A78F10C00A02FFCF15C20 +:1000400000A0F10C00962FFCF15C0096179C17A6FF +:1000500017B8178BF9EB108B201D49F972091ADBC1 +:1000600049EB968CF2CAFFF0F1E6108849CB2F4994 +:10007000760BF80B000B49BC780CF01F001B2FED22 +:100080000E9CF01F0013F01F0019C1714988201D3C +:100090001AD8E06801771AD84968497C1AD8F01F45 +:1000A00000172FCDC0085808FE90FCE0FE9FFCEB27 +:1000B00049387006FE9FFB67D83200008000E5ECEF +:1000C0000000822480010CEC000073348000D13CDD +:1000D000000080D400007330000073200000731C07 +:1000E00000007324800102348000D6B48003AC6029 +:1000F0008003AF4080039D9C800094C40000822058 +:10010000D42179F95809C3107208F8CEFF88F9484C +:10011000007C79E8C038109E70085808C1C0704B48 +:1001200017F617C417D5B165EBE41185724A17EBC2 +:1001300015F7EBEB108B15C5EDEB100B15D615EA8B +:10014000B166EDE51186EDEA108AEFEA100AF60ACB +:10015000010ACE2693089D093008F9480040F93875 +:10016000004E2FF8F968004ED822D42179F95809A9 +:10017000C600F9380026EDB80002C5B07208F8CE06 +:10018000FF88F948007C79E8C038109E700858084C +:10019000C1C0704B17F617C417D5B165EBE41185D4 +:1001A000724A17EB15F7EBEB108B15C5EDEB100B47 +:1001B00015D615EAB166EDE51186EDEA108AEFEA8B +:1001C000100AF60A010ACE26930830089D09F9485C +:1001D0000040F938004E2FF8F9090056F968004E32 +:1001E000F5D9C02FF9080060F7D8C02FF009190021 +:1001F000F60817B0F4081780F9580058F908003CC1 +:10020000F00915015C78A178F91A0058103AF9F94B +:100210005C2CF9380026A3A8F909003CF9680026EF +:10022000F20815011009F90800581009F95900568B +:10023000D822D703D43118941693149112921096A1 +:100240004097300A314B301CF01F00391895C6D04A +:1002500098593138F0091900E08B000F4B58201DD8 +:100260001AD8E068031F1AD84B384B4C1AD8F01F25 +:1002700000342FCDC0080E9878175C78AEB8A988E6 +:10028000AEA8E0685014EF68000DA988EF68000C74 +:10029000E8081618AEC8F1D4C208AED8E608161899 +:1002A000EF680008F1D3C208F3D6C010EF68000968 +:1002B000AE993088A9893006AEF4EF63000BAE89A1 +:1002C000EF66000FEF660012EF660013EF66001096 +:1002D000EF660011EF68000E3069049A029BE9D4C2 +:1002E000C108E7D3C108AEE4EF63000A98C8F01F65 +:1002F00000155C7CEF6C0011A98CEF6C0010201DC8 +:10030000491C30671AD70C98F9070090049A2FF708 +:10031000029BE06900FFF95700900A9CF01F000B58 +:100320000A9CF01F000B2FEDD83200008000D3187C +:100330008003AF5C8003AFA480039D9C800094C4C5 +:1003400080011E2C000080D4800122948000D13CCA +:10035000D43120BD14915098414A505A12961897A2 +:100360003009F20119005F08F20A18005F0AF1EA89 +:10037000000AF20A1800C110F3D6C002C0E14C789E +:10038000201D1AD8E06800AD1AD84C584C5C1AD819 +:10039000F01F00452FCDC008580B5F195089126817 +:1003A000C0E04BE8201D1AD8E06800AF1AD84BF81F +:1003B0004BCC1AD8F01F003C2FCDC008EF080072BC +:1003C000E2081900C0B2EF380026EA18FFFFE8186B +:1003D000FF80EF680026E08F02E34058F3D8C001A9 +:1003E000E2180002F9B8010CF009002950296FB099 +:1003F000EF02007431F8F0021900E08800144AC8D6 +:10040000F109009C2FF9F159009CE06C00FFEF38D6 +:100410000026EA18FFFFE818FF80EF680026E08F4B +:1004200002C36FF85802C2605808C1404028A38830 +:100430002FB8AD685C883003503B50A8F7D1B0109E +:10044000409A504BF5DAC001069406980695506A1A +:10045000C3796FE85808CEB14908201D1AD8E06862 +:1004600000D01AD8493848FC1AD8F01F000F2FCDF9 +:10047000C0085808C0416FE85808CD904878201D42 +:100480001AD8E06800D31AD848B8486C1AD8F01FB8 +:1004900000062FCDC00800008003AF5C8003AFD4FE +:1004A00080039D9C800094C48003B028000080D409 +:1004B0008003B0688003B0A450195008EF03003CDB +:1004C000304CF01F0042401918954008E080023C73 +:1004D000300B990B991B5809C0301894C118580853 +:1004E000C0E14BB8201D1AD8E06800EF1AD84B982D +:1004F0004B9C1AD8F01F00392FCDC008910C5C73AB +:10050000402A4069E60A010840435C73E6080D434F +:100510005C835809C3904028300AE608000B149CFD +:100520005C7BF01F002F8B1CE080020EF5D3C01007 +:10053000402B98D9F40B00081039C0E44A48201D1C +:100540001AD8E06800FF1AD84A684A3C1AD8F01F47 +:1005500000232FCDC008501AF01F0023401A18980E +:1005600040895809C0A0402B6A195008721C160C0B +:10057000403BF01F001E4008F00200026A185C8237 +:1005800070188B28C3D8406A402B149CF01F0014AD +:100590008B1CE08001D9F01F0014407AF8020002A1 +:1005A0005C82580AC2D0F7D3C010301A303CF01F1A +:1005B000000C189B6A1C580BC1C1F01F000D40694C +:1005C0008B19E08F01C100008000C9D48003AF5CAB +:1005D0008003B0D880039D9C800094C48000D31811 +:1005E0008003B0E88000CD0C8002E7368000D13C6B +:1005F000403897182FF28B285C82F01F003F320B97 +:10060000F6021900E08B01A0AA63314B6A1CF01FAF +:10061000003BC0904BA8F10900A42FF9F15900A4A8 +:10062000E08F0192EF39001C6A1870188B48B0896E +:10063000EF39001DB099EF3900246A48B0A9EF39AD +:100640000025B0B9E00916186A48B0C9F3D0C2084D +:10065000B0F0B0D9F3D0C108B0E96A48F16C00132A +:10066000F16C00126A48F13A000CF139000DF3EA1E +:100670001089E019FFC0EDE910095C79F169000DFE +:10068000A989F169000C405AEB6A000E404806182F +:100690005C88F3D3C0105048403B6A48120B503B73 +:1006A00040AA1200F139000DF3D9C006F5E910098E +:1006B0005C79F169000DA989F169000C0A98300A8A +:1006C000404BF40B19005F1B507B169A58045F09CE +:1006D000300B124AF60A1800FE91FEF0F5D2B01067 +:1006E000503A6FE05800E08000C260085808C0909F +:1006F0001090CFCB8000CD348000CDD4000080D4CA +:1007000080EA6048F139000DF3D9C0025F1B140B79 +:10071000E08000C45809E08100C1F7D6C0025F0C38 +:10072000301BF60618005F0BF9EB100BF20B1800EC +:10073000E08000B488EBEF19003C140B123BE08919 +:1007400000ADE13B000EE939000EF20B1800E0812C +:1007500000A5684911FE13FB504B11CC11DBB16BA6 +:10076000F7EC118B11ECF7EC108BFDEB100B160A6C +:1007700013CB13D8B168F1EB118813EB4049F1EBBF +:100780001088F3E81008103AE08100884028681CBF +:10079000F00B11EC5C8BF01F0037C0E04B68201DA4 +:1007A0001AD8E06801691AD84B484B5C1AD8F01F78 +:1007B00000352FCDC0086818905AF80A1900C0A15A +:1007C00070098919910C4032109C20125C82F01F34 +:1007D000002EF1D6C001681BC220580BC05188689A +:1007E000F6081900C0E04A48201D1AD8E0680177D1 +:1007F0001AD84A684A2C1AD8F01F00222FCDC008F8 +:100800006048F13A000CF139000DF3EA1089A1A912 +:10081000F169000DA989F169000CC1E8580BC050BD +:100820009659F0091900C0E14938201D1AD8E0682E +:10083000017A1AD84968492C1AD8F01F00122FCD16 +:10084000C008601CF01F001380698868F208000867 +:10085000A068680881080835E0051700E1F3020682 +:10086000089B304CF01F000CC198EF440078C16821 +:100870008000CDD48003AF5C8003B11C80039D9CBD +:10088000800094C48000D13C8003B1308003B1501B +:100890008000CD348000C97481040C98EDB600014D +:1008A000C040EDB60000C0312FF15C81EDD6C00133 +:1008B000EFF81826F9B90120F1D9E138EFF81E2632 +:1008C0006FB9F1D1C010F2080008EF520074EF4880 +:1008D000006CEF0800720218EF5800725802C14015 +:1008E0006FF85808C1116FE85808C0E14AF8201D98 +:1008F0001AD8E06801A11AD84AD84AEC1AD8F01FD1 +:10090000002E2FCDC00858055F193008F0031900DC +:100910005F1AF5E90009F0091800C4406A48580850 +:10092000C410409CE21C0002C3D1F13A000CF13922 +:10093000000DF3EA1089A3B9F169000DA989F169E5 +:10094000000CC318EF380026EA18FFFFE818FF80F4 +:10095000EF6800264998F109009C2FF9F159009C95 +:100960005804C040089CF01F0016EF0900743008BE +:10097000F0091900C1406FF85808C1116FE8580814 +:10098000C0E148A8201D1AD8E06801B41AD84888E8 +:10099000488C1AD8F01F00082FCDC008E06C00FF6B +:1009A000C028300C2F5DD8328003AF5C8003B16467 +:1009B00080039D9C800094C4000080D48000DA688D +:1009C000D421784E1298587E5F07584E5F09EFE9A0 +:1009D0001009C081582EC060583EC040E06C00F83D +:1009E000D822580AC031149CD822201D30095C7AC4 +:1009F0001AD9F01F00032FED5C5CD8228001035050 +:100A0000D4013008201D109A16991AD8149B30185A +:100A1000F01F00032FED5C5CD80200008001035042 +:100A2000D431189679F45804C05179E45804E08020 +:100A300000CE6848F133000DE7D3C001C06088697B +:100A40003008F00919005F03300A5C53301C14337E +:100A5000F9BB0114F9BB0015F01F005D1895E0808B +:100A600000B698593138F0091900E08B000F4D9805 +:100A7000201D1AD8E068040F1AD84D784D7C1AD87A +:100A8000F01F00572FCDC008684811FA11CB11D9BB +:100A900011E8B169F3EB1189F3E81089ED38001C16 +:100AA0007817F5E91009AE88EF3A000CED38001D13 +:100AB000AE98EF38000DF1EA1088ED3A0024AEAAA6 +:100AC000ED3B0025AEBBF20B1618AEF9AECBF7D955 +:100AD000C208F3D9C108AEDBAEE9ED390028EF69F1 +:100AE0000008ED390029EF690009ED39002AEF69A6 +:100AF000000AED39002BE018FFC0EF69000BA5A834 +:100B00005C88F5D8C010EF6A000DF40B1608EF6B87 +:100B1000000CED39002EEF69000EF1D8C006300947 +:100B2000E8185000ED3A002F5C78EF6A000FEF688C +:100B3000000DEF690011EF690012EF690013EF6912 +:100B40000010A988EF68000CED19002E6CA8F208BF +:100B500000088DC85803C110EF39000CEF38000DA4 +:100B6000F1E91088E018FFC0E8180011EF68000DE7 +:100B7000A988EF68000CC068682811897818F169A5 +:100B80000014ECC4FFFC8AC83069089A0C9B0A9CCC +:100B9000F01F00145C7CEF6C0011A98C4929EF6CEC +:100BA0000010F30C00902FFCF35C0090306C201DC3 +:100BB000ED39000B089A1ADC0C9B30080A9CF01FD8 +:100BC000000B0A9CF01F000A2FEDD8328000D318CA +:100BD0008003AF5C8003AFA480039D9C800094C41D +:100BE00080011E2C000080D4800122948000D13C22 +:100BF000D431300A1895314B301CF01F003918934E +:100C0000C041E06C00FED832EB380026EB39001C06 +:100C1000E018FFFCEB6800266B787817AE89EB399B +:100C2000001DAE99EB390024F00B1618AEA9F3D8CD +:100C3000C208EB3A0025AEF8F1D8C108AECBAEBA87 +:100C4000AED9AEE86AA8F0091618EF690008F3D823 +:100C5000C208E06A5010EF690009F3D8C1083004F7 +:100C6000EF68000BEF69000AF40B1608EB19002E71 +:100C7000EF6B000CEF6A000DEF69000FEF640012DC +:100C8000EF640013EF640010EF640011F20A16081D +:100C9000F2080008EF6A000E8BC8EAC6FFFC0A9B48 +:100CA0000C9A98C83069F01F000F5C7CEF6C001143 +:100CB000A98CEF6C0010306CEB38000AEB39000B9C +:100CC000201D0C9A1ADC0A9B069CF01F0007069C4C +:100CD000F01F0006089C2FEDD83200008000D318CA +:100CE00080011E2C800122948000D13CD431202D23 +:100CF0004AE8189770081838E08001A3F9080056F0 +:100D0000F9090060F0091900F20817805C785008B2 +:100D100079E6F9380026E2180002C1E05806C170F1 +:100D20008CEB6C48794911CCF609010911DBB16BE8 +:100D3000F7EC118B11FA11E8F7E81088400BF5E891 +:100D40001008F20800081638E08800070E9CF01F13 +:100D500000185C5CC7696FF55805C0B1EEC9FF8427 +:100D6000EEC2FFFC5019300349214930C2B9109539 +:100D70006A085808CFD1CF3BF13C000CF139000D87 +:100D8000F3EC108C5C8CEDBC0002C1F148B8201D66 +:100D90001AD8E06802471AD8489848AC1AD8F01F09 +:100DA000000A2FCDC00800000000822480010BF053 +:100DB000000080D4000082108003AF5C8003B18407 +:100DC00080039D9C800094C46FF95809C150EF3B8B +:100DD00000261699E2190044C0F16FE95809E08035 +:100DE0000133720E580EC081926EEF09003CF20E74 +:100DF0001900E08301296C09EF4900786E495829F0 +:100E0000C0E0A5AC5C7CF16C000DA98CF16C000C11 +:100E1000EF390026E019FFFCEF6900266EA9F20AFF +:100E20001618F16A0008F5D9C208F16A0009F5D967 +:100E3000C108F169000BF16A000AEF1A002EF16A8D +:100E4000000FF40B1608F16B000EF40900098FC9AE +:100E5000ED39000EEDB90000C061E06B0200EA1B45 +:100E60000204915BEF08003A3FF9F2081900F9B863 +:100E70000000EFF80C1D6E085808C071049CF01FAC +:100E80000075C45078188F086F085808C121600990 +:100E90006C48EF49004011F911CB11DA11E8B16A41 +:100EA000F5EB118AF5E81088F3E81008EF480044E4 +:100EB0006C1C6C4478199848985A9914E8090109EF +:100EC000121A1218B85AB84830695C78049A0E9B06 +:100ED000E9630010E9630011F01F005F30695C7C7A +:100EE000E96C0011A98CE96C0010E30800902FF860 +:100EF000201DE35800901AD9049AEF38000AEF3900 +:100F0000000B0E9B6C1CF01F00552FED6C4811FA66 +:100F1000F139000DF3D9C0025F1B11CC8CE9F60941 +:100F2000000911DB11E8B16BF7EC118BF7E81088C1 +:100F3000F5E810086F7AF2080008101AC037EF4879 +:100F4000005C5809C3B08D036FF85808C041EF46E4 +:100F5000007CC3286C4A15FE15C46A4915DBB16BC9 +:100F6000F7E4118B15E4F7E4108BFDEB100B13CEB7 +:100F700013FC13DAB16AF5EE118A13EEF5EE108A5E +:100F8000144CF60C010CC177401AC058109A700826 +:100F90005808C0E0704913C413FC13DEB16EFDE4C1 +:100FA000118E13E4FDE4108E1C4C161CCF068D0828 +:100FB0009506C0788B060C95C0480C9CF01F002845 +:100FC0006FE65806C3706C4811CC6F4A8CEB11D990 +:100FD000141BB169F3EC118911ECF3EC108911FCCD +:100FE000F9E91009F6090009400B1639FE98FEC60A +:100FF000EF3900AC3008F0091800C1C18CEB6C4827 +:10100000F60A010A11F911CC11DB11E8B16BF7EC0A +:10101000118BF7E81088F3E81008100AEF18006049 +:10102000103AF9B80B00EFF8BA2AF9B80B01EFF84B +:10103000BEACEF380026F1D8C007EF680026300CB0 +:101040002FEDD832E21B00A0FE91FED7CD2B000081 +:101050008001222880011E2C800122948000DA3C2D +:10106000D401189879FA580AC170149B7609580966 +:10107000C030129BCFCB71EC970CF1490040F14985 +:10108000007CF139004E2FF9F14A0078109CF1698B +:10109000004EF01F0002D80280010CECD431300A5F +:1010A0001896314B301CF01F00401895C7B0985966 +:1010B0003138F0091900E08B000F4BC8201D1AD8F9 +:1010C000E06803C91AD84BA84BAC1AD8F01F003AF5 +:1010D0002FCDC008ED39001C78176D78AE89ED3939 +:1010E000001DAE99ED3900242018AEA9F00B16189A +:1010F000ED3A0025F3D8C208AEF8F1D8C108AECB5E +:10110000AEBAAED9AEE86CA8F0091618EF690008BF +:10111000F3D8C208E06A5010EF690009F3D8C1089B +:101120003004EF68000BEF69000AF40B1608ED19A4 +:10113000002EEF6B000CEF6A000DEF69000FEF64FB +:101140000012EF640013EF640010EF640011F20A64 +:101150001608F2080008EF6A000E8DC8ECC3FFFC09 +:1011600098C83069069A0C9BF01F00145C7CEF6CE9 +:101170000011A98C4929EF6C0010F30C00902FFC92 +:10118000F35C0090306C201DED39000B08981ADCE0 +:10119000069A0C9B0A9CF01F000B0A9CF01F000A89 +:1011A0002FEDD8328000D3188003AF5C8003AFA44A +:1011B00080039D9C800094C480011E2C000080D47C +:1011C000800122948000D13CF9390010A3C948A8BD +:1011D000F969001011BA118B119911A8B169F3EBDB +:1011E0001189F3E81088F5E8100899183008F958C3 +:1011F00000145EFC8003B409997A996B5EFCD703F6 +:10120000D421301CF01F00071897C080320A300B21 +:10121000F01F00053FF8EF68000B0E9CD82200007D +:101220008000C9D48002E8BCD40148C9189B720868 +:101230001838C0D178389308C0C870395809C060D0 +:101240001639F7F90003F1F90A0370385808CF612D +:10125000301CF01F0003D802000082288000C974EF +:10126000D4214AB83009700E1C98C148103CC111F5 +:101270005809C0E04A78201D1AD8E06802541AD8EC +:101280004A584A6C1AD8F01F00262FCDC0083019D2 +:1012900070385808CEC1580BC0C017B817861797BA +:1012A00017ABB167EFE61187EFEB108BF1EB100B8B +:1012B000990B580AC2211C98E06A1000E0667FFF73 +:1012C0003007C0C8F10B0012F40B1900C061F6CA58 +:1012D000FFFF1C985C8AC0287038EC0A19005F1563 +:1012E00058085F1BEBEB000BEE0B1800CEC1580843 +:1012F000C040E06C00F5D822F95A00125809C0200D +:10130000D82A993E4828910C129CD82200008228A5 +:101310008003B19C8003B1E080039D9C800094C455 +:10132000D4213008169614951897F9090012F0097F +:101330001900C071300A189BF01F00145C5CC231A8 +:101340005806C0C00DB80D8A0D990DA6B169F3EA13 +:101350001189F3E61086F1E61006EF380010A3A815 +:101360008F16EF680010EF55001448987008109C15 +:10137000C0581837C021D82A783C580CCFB18F38C4 +:1013800048389107D82200008001126000008228AE +:10139000D43112971093169414911895F9090012EC +:1013A0003008F0091900C091300A189BF01F004561 +:1013B000E5DCC008E0810084308B089CF01F00420F +:1013C000C0310896C0E8300A308B301CF01F003F57 +:1013D0001896C041E06200FFC728089BF01F003C40 +:1013E0008C593078F0091900E08B000F4B98201DC4 +:1013F0001AD8E06801C51AD84B784B8C1AD8F01F60 +:1014000000382FCDC008EB3900120E986C175C78AD +:10141000AE893009EB3A0013AEB8AE9AA988AEF99E +:10142000AEE9AEA86A085808C041E6C2FFFCC10890 +:1014300066191238C0C00836C041E06200F7C3F830 +:101440000C9CE06200F7F01F0027C3980A928CC83A +:10145000F0091608AED8AEC9EB390010EDB900009E +:10146000C1403119029A049B0C9CF01F001F5C8C38 +:10147000F1DCC010AEF8A988AEE8580CF9B800FF4E +:10148000EFF80E07EFF80E0631181AD3049BEB396C +:10149000000B029A1AD80C9CEB38000AF01F0013BC +:1014A0002FEDE5DCC0080836C0400C9CF01F000D95 +:1014B00048F8F10900782FF9F1590078049CD832E6 +:1014C000800112608000CDD48000D3188000CDB49C +:1014D0008003B19C8003B1EC80039D9C800094C488 +:1014E0008000D13C80011E2C80012064000080D44B +:1014F000D421202D1897501B149C500A1296F01FCF +:10150000000C401B1898400AC0A148A8E06C00FCE1 +:10151000F10900862FF9F1590086C078F3D6C01082 +:101520000E9CF01F00055C5C2FEDD8228001222864 +:10153000000080D480011390D401F8CAFFFCF9198F +:101540000014F01F00035C5CD8020000800114F05E +:10155000D431203D4D98F109007A2FF9F159007AE4 +:10156000781716910F8818955C8898CAF3D8C0042C +:101570002FE9A369123AC0A5F1D8C004F00B1502F7 +:101580005C3BF01F004F1894C0904CC80A9CF109B6 +:1015900000822FF9F1590082C1D96A12EECCFFF016 +:1015A000029B502CF01F004705980583F1E3108340 +:1015B00005B805AE1896F1EE108E5C835C8E34484B +:1015C000F00E1900C2413438F0031900E081008B9D +:1015D00062A85808E080008770145804E0800083F7 +:1015E00068185808E0800092EF3A000CEF39000DBF +:1015F000B169F3EA1189EF3A000EF3EA1089EF3A84 +:10160000000FF5E910091238C6D1C7F84AE8089961 +:10161000700A089B1498500AC618F10C0012FC0CB2 +:101620001900C5A15806C041700C580CC1B0EF306C +:101630000010EF3C0011B16CF9E0118CEF3000129A +:10164000F9E0108CEF300013F60618005F1AE1EC99 +:10165000100C700018305F0CF5EC100CF60C180034 +:10166000C3B05804E08100D6F13C0010E21C000435 +:10167000F0041700CCE8701C580CC150EF3A000C75 +:10168000EF30000DB160E1EA11805010401AEF30E8 +:10169000000EF5E010805010EF30000F401A14409B +:1016A000003CC1A1400A10945809C0F0703893382A +:1016B000893A48589104C148000080D48000CDD4B4 +:1016C00080012558000082284C88F109008E2FF9EE +:1016D000F159008EC058109970385808C9F1580453 +:1016E000C141EF3A0010EF380011B168F1EA1188FA +:1016F000EF3A00126219F1EA1088EF3A0013F5E8A8 +:1017000010081039C6D1300405F805E9F1E9108850 +:10171000C130402A8AC83119EECBFFF40A9CF01F71 +:1017200000345C8CC0904B180A9CF10900802FF9A2 +:10173000F1590080C4F83F8B0A9CF01F002EC0E0D6 +:101740004AD8201D1AD8E06801141AD84AB84ACCE1 +:101750001AD8F01F002C2FCDC0085804C0D06866DE +:101760005806C3E0089BF1D3C010EEC9FFF40A9AF3 +:10177000687C5D16C5585806C261EF380010FC1928 +:10178000E000B968E618F0001238C1D00F8B0A9C4F +:10179000F7DBC0042FEBA36BF01F00166A180E389E +:1017A000C0E04958201D1AD8E068012F1AD84968AE +:1017B000493C1AD8F01F00132FCDC008303B0A9CBB +:1017C000F01F001248980A9CF10900882FF9F1597E +:1017D0000088F109007E2FF9F159007EC0280A9C8B +:1017E000F01F000BC1D80000000080D480011E2C27 +:1017F0008000CDD48003B19C8003B11C80039D9CEC +:10180000800094C48003B21C800118FC8000D13C8D +:10181000F10C0014E60C1900FE91FF5FC2DB2FDD16 +:10182000D8320000D431189316921494324B300AF7 +:10183000301CF01F00241897C43098593238F00932 +:101840001900E08B000F4A08201D1AD8E068012E0D +:101850001AD849E849EC1AD8F01F001E2FCDC0084D +:101860007816661531CAAC94AC823004ACC4ACD4E2 +:10187000ACE4ACF4661B781C2F8CF01F00170C9C9A +:10188000ACA4ACB48EDBF01F00155C7CACBCA98CA6 +:10189000ACAC201D492C30161AD60898F906006009 +:1018A000EACAFFF4E06900FF089B2FF6F9560060D2 +:1018B0000E9CF01F000C0E9CF01F000B2FEDD83279 +:1018C0008000D3188003B2308003B27880039D9CDF +:1018D000800094C48002E73680011F4A000080D453 +:1018E000800122948000D13CD401F5DBC00830BBDC +:1018F000F01F0002D802000080011824D401F5DB9B +:10190000C008303BF01F0002D802000080011824FC +:10191000D4314C62E50800622FF81694E558006255 +:10192000781618970D85EBD5C004A365EA0311005E +:101930005C83069BF01F003EE08101788E493038C1 +:10194000F0091900E08801726E1811893088F009D9 +:101950001800E081015DED380010ED310011B1613A +:10196000E3E81181ED380012E3E81081ED3800134F +:10197000089BF1E11001ECCCFFF0F01F002EC071CC +:10198000E611F000FC18E0001031C0914A780E9C7E +:10199000F10900742FF9F1590074C4498E49307867 +:1019A000F0091900E08801420E9CF01F00235C8CB6 +:1019B000C0A00E9CF01F0021E50800682FF8E55834 +:1019C0000068D832330B0E9CF01F0019C6E00A9B4A +:1019D0000E9CF01F0017189AC0E04998201D1AD8D5 +:1019E000E06800981AD84978497C1AD8F01F001787 +:1019F0002FCDC0088ECB302CF01F00151892E08040 +:101A0000011F98D9EAC8FFF81039C25248C8201DF2 +:101A10001AD8E06800A21AD848E848BC1AD8F01FC3 +:101A2000000B2FCDC0080000000080D48000CDD472 +:101A30008001255880011FAC8000D13C8003B2306A +:101A40008003B2A480039D9C800094C48000D318BE +:101A50008003B2D80E9BF01F00445C5CC0E04C38A1 +:101A6000201D1AD8E06800A51AD84C184C1C1AD8AA +:101A7000F01F00412FCDC008069B6416049CF01F88 +:101A8000003FC0E04B98201D1AD8E06800AB1AD880 +:101A90004BB84B8C1AD8F01F00382FCDC0080E9CC5 +:101AA0000497F01F0038C1383D0B0E9CF01F003327 +:101AB000C0E04AE8201D1AD8E06800B51AD84B08E3 +:101AC0004ACC1AD8F01F002C2FCDC008ED3A000CDC +:101AD000ED39000DB169F3EA1189ED3A000EED3BE5 +:101AE0000010F3EA1089ED3A000FF5E91009ED3A1C +:101AF0000011B16AF5EB118AED3B0012F5EB108A8B +:101B0000ED3B0013F7EA100AF40B16186E18ED6A95 +:101B1000000FED6B000CF7DAC208F5DAC108ED6AC8 +:101B2000000EF20A1618ED690013ED6A0010ED6B55 +:101B3000000DF5D9C208F3D9C108ED6A0011ED69AD +:101B40000012300911AAB08911B9F3EA1089FE7A9E +:101B5000F7FE5C89F4091900E0880016F2C9F7FF66 +:101B6000C14800008000CF988003B2308003B310DA +:101B700080039D9C800094C48000CDD48003B33842 +:101B80008000D13CF2C9F8005C79B0B9A989B0A94C +:101B9000ED380009E818FF00ED680009A988ED6834 +:101BA00000083008314BED68000BED68000A0C9C12 +:101BB000F01F00284A885C7CED6C000BA98CED6C52 +:101BC000000AF10900602FF90A9BF15900600E9C90 +:101BD000F01F00221898C0E04A18201D1AD8E068AB +:101BE00000D71AD849F84A0C1AD8F01F00202FCD78 +:101BF000C00830191AD4189A1AD9ECCBFFF4E0694E +:101C000000FF0E9CF01F001A2FEDC0B8E508007011 +:101C10002FF8E5580070E50800662FF8E5580066D3 +:101C20000E9CF01F0014D8320E9CF01F001248A822 +:101C3000F109006A2FF9F159006AD8320E9CF01FA1 +:101C4000000D4858F10900742FF9F1590074D83289 +:101C500080011F4A000080D48000CDD48003B230C0 +:101C60008003B36C80039D9C800094C48001206439 +:101C70008000D13CD431205D30951988FAC9FFF03D +:101C8000FACEFFFC5009330231033056F0C9003060 +:101C9000EA091800E08B00BAE4081800C03030A749 +:101CA000C1582FFC35891988F20818005F0A378956 +:101CB000F20818005F09F5E91009F9B70008F7BC48 +:101CC00001FFF9B70110F9F81800F8CAFFFF300951 +:101CD0003191F2070244F0C000301004F4CC00014E +:101CE000EA001800E08B0005E8C90030C1E80E9456 +:101CF000E6071800C1D1F0C400615C54EC04180080 +:101D0000E088000EF0C00041EC001800E08B0011EC +:101D1000E2041800E0880004341CC028361C2F6838 +:101D2000F00C010CF9E9104915882FFACD3B32EA85 +:101D3000F4081800C0814008103EC6701CA92FFC92 +:101D40001988CA5B5808C28030CAF40818005F1CA2 +:101D5000320AF40818005F1A146C300AF40C1800E8 +:101D6000C1B030DCF80818005F1730ACF808180074 +:101D70005F1CEFEC000CF40C1800C0E030BC309796 +:101D8000F80818005F1CEE0818005F18F9E8000852 +:101D9000F4081800C3A1FAC8FFFC101EA34E2FFEC2 +:101DA000582EC0B0E0890005580EC2F0C298583EC7 +:101DB000C0F0584EC251C168E064FFFFEA1400FF52 +:101DC0000839E08B00234018F3E81189C198E049F5 +:101DD000FFFFE08B001B4018402AB968F1EA1108A8 +:101DE000C0D8E04900FFE08B0011402A4018B968D4 +:101DF000F1EA1108403AF1EA1088F1E91009580BAC +:101E0000F7F91A00301CC028300C2FBDD832D70388 +:101E1000D401202DFACBFFFCF01F0004F9BC00FF19 +:101E2000FBFC10012FEDD80280011C74D431202D51 +:101E3000300630110C9EC4A898557812E7D5B01022 +:101E4000049430075008C0B8E92800000990202306 +:101E5000E1E810805C835C702FE40007E203190066 +:101E6000FE9BFFF40A944008E214FFFEE7D5C00190 +:101E700008023000E0031900C0400584A964080787 +:101E8000E9D7C010B187E80700070E94E0140000FE +:101E9000C060E9D7C010B187E80700075C77EBD5D1 +:101EA000C001EE0E000EEFDEC010B18EEE0E000E81 +:101EB0005805C0B0EFDEC108EC061101A96E5C56F2 +:101EC000FDDEC010EFEE100E780C580CCB615806FA +:101ED000C080F9DEC108A96EFDDEC010F9EE100E5B +:101EE00017B715BC17851796B166EDE5118617ABC8 +:101EF0001585EDEB108B5C781596EFEB100B15AAA2 +:101F0000EFDBC010B166B18BEDE511860E0BEDEA8B +:101F1000108AF9EA100AF40C1610F5DAC010F60A65 +:101F2000000A180AF4090009F2080008F00E000E71 +:101F3000F1DEC010B18EF00E000EF9DEC010B18ED1 +:101F40001C0C5CDC5C8C2FEDD832D4213008189945 +:101F5000F5DBB010301EC0B8F32600001397202A1E +:101F6000EFE610875C8A5C772FE90E08FC0A1900FF +:101F7000FE9BFFF41699E219FFFE120CEDBB000068 +:101F8000C0411989A9691208F3D8C010B188F208B4 +:101F900000081099E0190000C060F3D8C010B188A3 +:101FA000F20800085CD8F9D8B010D822D431300A31 +:101FB000301414981495C488985B7816EFDBB01031 +:101FC0000C9E3009C0B8FD2200001D932027E7E2D7 +:101FD00010835C875C732FEE06090E93E8071900E7 +:101FE000FE9BFFF3169EE21EFFFE1C06FDDBC001FA +:101FF000EA0E1900C0400D8EA96E1C09FDD9C01053 +:10200000B189FC090009129EE01E0000C060FDD9E4 +:10201000C010B189FC0900095C79F7DBC001F20846 +:102020000008F3D8C010B188F2080008580BC0B0FF +:10203000F3D8C108F40A1101A9685C5AF1D8C0109C +:10204000F3E81008780C580CCB81580AC080F3D8FC +:10205000C108A968F1D8C010F3E810085CD8F9D815 +:10206000B010D832D431201DFAC4FFD8169712937D +:102070001092681518966801580AE0800091500A7D +:10208000314BF01F0055400AC0A04D48E06C00FEE7 +:10209000F109005C2FF9F159005CCC286C148C59C3 +:1020A0003138F0091900E08B000F4CD8201D1AD8E8 +:1020B000E068022C1AD84CB84CBC1AD8F01F004B60 +:1020C0002FCDC0085C53E3E310815C71E961000926 +:1020D000A981E9610008158B1598B168F1EB1188A9 +:1020E00015ABF1EB108815BBF7E81008F00B1618CC +:1020F000E9680013E96B0010F7D8C208F1D8C108ED +:10210000E96B0011E9680012E81245005C72A892C0 +:10211000E4031608A883ED380008A8A8ED380009E4 +:102120004B39A8FCA8B8A8EC9208F7D8C010A8DBD7 +:10213000A98BA8CB2FF8B2085807C0D00F8B0FB9C6 +:102140000F98B168F1EB11880FABF1EB1088F3E851 +:102150001008C051EAC8FFFCEBF81001F00916188E +:10216000E968000FE969000CF3D8C208F1D8C1088A +:10217000E969000DE968000E3008E968000BE968BC +:10218000000A500A314B089CF01F001A5C7CE96C75 +:10219000000BA98CE96C000A400AC038781A2F0A93 +:1021A00048E8F10900482FF9F1590048158B1599B5 +:1021B000B169F3EB118915AB6A18F3EB108915BB04 +:1021C000F7E910091039C1910C9B0A9CF01F000A15 +:1021D000C26800008000CDD4000080D48003B3909A +:1021E0008003B3D880039D9C800094C40000734892 +:1021F00080011F4A8000CAF8EB08002C5808C0B0C4 +:102200008C49F0091900E08800070A9B0C9CF01F1C +:102210000006C0580C9B0A9C6A585D185C5C2FFD38 +:10222000D8320000800125A0D42149781896700783 +:10223000C1680E9CF01F0015C1100D8B0D98B16880 +:10224000F1EB11880DAB6E1AF1EB10886E290DBB06 +:10225000F7E8100814581268C1306E075807CEA16D +:1022600048B66C0C580CC040F01F0008C08148985C +:10227000F10900562FF9F1590056C0286C070E9C41 +:10228000D8220000000080CC8000CAE4000080D08A +:10229000000080D4D421204D1897503B149C502A24 +:1022A000501950084096F01F000D403B402A40193D +:1022B0004008C0A148A8E06C00FCF10900562FF9C5 +:1022C000F1590056C0881ADC0E9C1AD6F01F000582 +:1022D0002FED5C5C2FCDD82280012228000080D415 +:1022E00080012064D4314C05EB08004A2FF87817A0 +:1022F000EB58004A0F980F831694F1E31083189659 +:10230000E609160C3048F0091900C090F01F00379C +:10231000EB08005C2FF8EB58005CC2980FB8E7D3CD +:10232000C1040FA2A363F1E2108298585C82E60810 +:102330001900C0539848E4081900C0B20C9CF01F63 +:10234000002B4A98F10900522FF9F1590052C86840 +:10235000069B0E9CF01F00265C8CC0F00C9CF01FAE +:102360000023EB0800502FF8EB580050EB08004E0C +:102370002FF8EB58004ECD48F7D2C0100C9CEEC0A1 +:10238000FFF0F01F001C0895301249B10A9CF01FA5 +:10239000001BC1D0EAC8FFFCC1A06A185808C17070 +:1023A000EF3A0010EF390011B169F3EA1189EF3A01 +:1023B0000012F3EA1089EF3A0013F5E91009103919 +:1023C000C2A00A9B009CF01F000EC2515802E3F508 +:1023D0001000EBF5000030020835EBF50000580561 +:1023E000CD61C9F8000080D48000D13C80011F4A33 +:1023F0008000D210000080CC8000CAE48001255803 +:10240000EE03000307B807A9F1E910893448F00981 +:102410001900C2A0EF39000CEF38000DB168F1E9E6 +:102420001188EF39000EF1E91088EF39000FF3E859 +:102430001008C1B0089BEECCFFF4F01F003DC0A116 +:10244000EF38000CFC19E000B968E618F00012380B +:10245000C0C10C9CF01F00374B78F109004E2FF9DA +:10246000F159004EC5D808955805C0510C9CF01F75 +:102470000031C5680FE90FF8F1E91088F1D8C00EF6 +:10248000C0700C9CF01F002D1896C4A078174AC885 +:1024900091044AC8089B91070C9CF01F002BC3B104 +:1024A000EF3800095868C0B05918C0405818C11119 +:1024B000C0B8089B0C9CF01F0025C2D8089B0C9C40 +:1024C000F01F0023C288089B0C9CF01F0022C2381A +:1024D000089BEECCFFF0F01F0016C0F1EF380010A3 +:1024E000FC19E000B968E618F0001238C0608D17DA +:1024F000302B0C9CF01F00180C9CF01F000E48E8BD +:10250000F10900582FF9F1590058F109004E2FF93F +:10251000F159004E48A93008930848A99308D83AC1 +:10252000EF3800095918FE91FF77C6BB8001255886 +:102530008000D13C000080D4800129BC0000822CA6 +:10254000000082308000D588800115508000F37C27 +:1025500080011910800118FC19B9198A1998B168FD +:10256000F1EA118819AAF1EA1088F3E81008F0C915 +:1025700000015BD9E08800035EFFF7390035EDB953 +:102580000001C0E1761A1438C0B07629105A126AD8 +:10259000C0715CD9F3E8000812385F0C5EFC5EFD88 +:1025A000D431209D503B506A781B403AF519002CDD +:1025B000F2C80013502B5078214917EA17F8F1EAB6 +:1025C00010885C88109BF1D8C00DE21B2000984356 +:1025D000505B2143308B5018F20B0C0A1897F3DA3A +:1025E000B0105C8312985049A37830025C88314067 +:1025F0005088C938401B405AF1DBC00D14485008C0 +:10260000E3D3B010F1D3C01040791039E08900064F +:10261000400B4081ADBB500B300A314B302CF01FCA +:1026200000421894C3708E58313AF4081900E08BB8 +:10263000000F4BE8201D1AD8E06802C31AD84BC817 +:102640004BCC1AD8F01F003C2FCDC008314A402B8C +:10265000781CF01F003A6E19F1D0C010F208000883 +:102660006816EBD1B0108F188E58F0000100AE50F4 +:10267000C2188E52EA021900EA0217205C82C19049 +:10268000302A300B303CF01F0028C071089CF01F2E +:10269000002CE06C00FFC4586E18B842B852189B6A +:1026A00099180415089C5C85F01F00265805C02069 +:1026B0006E075805CDF1ED65000B40085C78ACF86D +:1026C000A988ACE8E2C8FFEC5C78ACB8A988314BCB +:1026D000ACA8ED65000A0C9CF01F001B5C7CED6C47 +:1026E000000BA98CED6C000A4039406A7258089BB7 +:1026F000129C5D18495BF70800302FF8089CF758CA +:102700000030F01F000F40180213404AE1D2B01011 +:1027100014085C835C8850185803FE91FF6D069C7A +:102720002F7DD8328000D3188003B4108003B45CAE +:1027300080039D9C800094C48002E7368000D13CD9 +:102740008000CD3480011F4A000080D4D40148F8B5 +:1027500070091839C04178099109C128580BC0E1A6 +:1027600048B8201D1AD8E06801341AD8489848ACF7 +:102770001AD8F01F000A2FCDC00878089708189BB8 +:10278000305CF01F0007D8020000734C8003B410C7 +:102790008003B47C80039D9C800094C48000C97435 +:1027A000D43118971696183BC0E14BC8201D1AD893 +:1027B000E06800A41AD84BA84BAC1AD8F01F003A16 +:1027C0002FCDC008580BC11076081838C0E04B3820 +:1027D000201D1AD8E06800A61AD84B484B1C1AD8FE +:1027E000F01F00312FCDC0086E156A1811CA11D91B +:1027F000F3EA1089C0303004C1D8118A1199109CB5 +:10280000B169F3EA118911AA11B8F3EA10891248E3 +:10281000314A8F18EECBFFF8F01F0025301B0A9CC1 +:10282000F01F00240A9CF01F002418940A9CF01F3B +:1028300000236E15C1486A1811B9118A119311A8A5 +:10284000B163E7EA1183E7E81083F3E31003F01FB5 +:10285000001A18040A9C0695F01F00180A9C5805D7 +:10286000CEB10C9B0E9CF01F001649689009F5D95B +:10287000C010083AC0E44898201D1AD8E06800C784 +:102880001AD84918487C1AD8F01F00072FCDC00865 +:102890000819089CB009D8328003B4108003B4989A +:1028A00080039D9C800094C48003B4A48002E7361A +:1028B000800118E88000CD0C8000D13C8001274CBD +:1028C000000073508003B4B8D431300618971692C4 +:1028D0004AB30C94300566080A9B0A9CC3E8EF3A99 +:1028E000000CEF39000DB169F3EA1189EF3A000EDF +:1028F000F3EA1089EF3A000FF5E91009705A123A1D +:10290000C1B1EF3A0010EF390011B169F3EA118952 +:10291000EF3A0012F3EA1089EF3A0013F5E91009D3 +:10292000706A123AC0910FCA0FD9F3EA1089906AFF +:10293000F20A1900C0D02FF5580CC090F13A001FD0 +:10294000F939001FF20A1800E08B0003109C70098F +:102950005809F00B171012985808CC21580CC04099 +:10296000F01F0008180658155F9804365F59F3E801 +:102970000008E8081800CAF10C9CD8320000734C1B +:10298000800127A0D42148C83007700CC108F9384D +:10299000001F7806F0C900015808C050F969001FEF +:1029A0001897C0480E9BF01F00050C9C580CCF01D7 +:1029B000D82200000000734C800127A0D431201DD4 +:1029C0004CD8F10900322FF9F159003278161895D8 +:1029D0000D835C83F3D3C004A3695949C080F10916 +:1029E00000442FF9F1590044E08F02570DF80DE132 +:1029F000F1E110810DB80DA24C07F1E21082F01F39 +:102A000000408E885C815C821894F808000858A801 +:102A1000E08A000D189B0C9CF01F003AC5708E8850 +:102A2000E808000858A8E08900524B783009700780 +:102A30005009C3D8ED39000CED38000DB168F1E94B +:102A40001188ED39000EF1E91088ED39000FF3E837 +:102A500010086E591039C291ED390010ED3800118F +:102A6000B168F1E91188ED390012F1E91088ED390A +:102A70000013F3E810086E691039C1710DC90DD843 +:102A8000F1E910888E69F0091900C0F149A8F1092F +:102A900000462FF9F15900460DE90DF8F1E91088CB +:102AA000F1D8C00DC360C3F850076E075807CC318A +:102AB000E08F021E089B0C9CF01F0012083CC065B2 +:102AC000305CF01F00121897C09148B8F109003C23 +:102AD0002FF9F159003CE08F01E0320A300B0E9CD7 +:102AE000F01F000B30394888EF69001F70098F090B +:102AF0009107C138000080D4000073508000CD0CD5 +:102B0000800128C80000734C8000C9D48002E8BC52 +:102B10008EF8F1D8C00DC070314A0C9BEECCFFF896 +:102B2000F01F004F4CF89009F20400045C84B004DC +:102B30000DE8A598EDB80000C120EF38001EE3D1E4 +:102B4000C00DE7D3C004A371E60310FCE20200024B +:102B5000A1A80602EF68001EEF52001C6A1811BB04 +:102B6000300A11AEF7EE108E118BB09AB0AAB0BA3F +:102B7000B08A1499F5DBC00411FBF40A10FC11ECC7 +:102B8000F7EC108CF9DCB00DA37CF7DCC010B0DBE7 +:102B9000A98B180EB0CB140E10935C8E3016F5DE98 +:102BA000C010B0FAA98AB0EA6E11029BC548761A25 +:102BB00015C015D2E5E010825C82E40C1900C292C7 +:102BC000F6021618B0BBB082E5DBC208F7DBC1081D +:102BD000B092B0AB5809E080008213E213FBF7E239 +:102BE000108BF60C1900E08300FF15DB15CAF7EA1D +:102BF000108AF40E1900E08B00F7EA0A1618B2B535 +:102C0000B28AF5D5C208EBD5C108B29AB2A5C6788A +:102C1000E40C1900E08000E815E015FBF7E0108BEC +:102C2000F60C1900E08300E05809C09013FB13E98B +:102C3000F7E91089E4091900F9B601001582159B1E +:102C40001499B16BF7E2118B15A215BAF7E2108B4C +:102C5000F5EB100B580BCAC1C52900008002E736FE +:102C60000000735013EB13FA11CCF5EB108A11DB53 +:102C7000F7EC108BF60A1900E088000F4BC8201DF6 +:102C80001AD8E068018E1AD84BA84BBC1AD8F01F8E +:102C9000003B2FCDC008EA0B1618B28BF7D5C2083F +:102CA000B2B5B29BEBD5C108B2A511CB11D9F3EBEC +:102CB0001089F20A1900F9B60100C1185801C0E0E4 +:102CC0004AB8201D1AD8E06801971AD84AC84AACF9 +:102CD0001AD8F01F002A2FCDC0088F15EF39001E1B +:102CE000EDB90000E08100E45806E08000E16E19D3 +:102CF000721A15CB15D9F3EB1089E08100D9118B2D +:102D000011951099B165EBEB118511AB11B8EBEB97 +:102D10001085F1E51005C1A807F86A1907EB13CC77 +:102D2000F1EB108B13D8F1EC1088F00B1900E08157 +:102D300000BF13881395B165EBE8118513A81293B2 +:102D4000EBE8108513B8F1E510055805CE61123A8D +:102D5000C1A14878201D1AD8E06801B91AD848984E +:102D6000485C1AD8F01F00052FCDC0088003B410AE +:102D70008003B4D480039D9C800094C48003B4F489 +:102D80008003B52C138A1398B168F1EA118813AA4D +:102D9000F1EA108813BAF5E81008C0E04C68201D6D +:102DA0001AD8E06801BB1AD84C484C5C1AD8F01FFE +:102DB00000452FCDC00813F813E9F1E91088EF0999 +:102DC000001C5C88F0091900C1704BB8201D1AD88E +:102DD000E06801BD1AD84BC84B9C1AD8F01F0039C7 +:102DE0002FCDC0080A9CF01F00394B9818143006EC +:102DF000B0040A9CC5982EC8EF58001C6E187016B7 +:102E00000D880D94B164E9E811840DA8E9E81084F7 +:102E10000DB8314AF1E41004EECBFFF80C9CF01F22 +:102E2000002DEF38001CACA8EF38001D0C9CED65A0 +:102E3000000BACB8ACE5ACF5ED65000A314BF01F0A +:102E400000265C7CED6C000BA98CED6C000A6E1604 +:102E5000C1586815089C3ECBF01F0020089B0C9CB5 +:102E6000F01F001F0B890BB80B94B164E9E91184C2 +:102E70000BA9E9E91084F1E410045804CEB10E9CCA +:102E8000400BF01F00180C9C49178E05F01F000F17 +:102E90001815AE05C0D849480A9CF109003630061D +:102EA0002FF9F1590036F01F0011C02830060C9C94 +:102EB0002FFDD8328003B4108003B53C80039D9C65 +:102EC000800094C48003B5608000CD0C0000735076 +:102ED0008002E73680011F4A8000CDD48000CD34C7 +:102EE0008001274C000080D48000D13C305CF01F72 +:102EF00000061897FE91FDF3FE9FFDDE5809FE9136 +:102F0000FEB3CDDA8000C9D4D4211898F937002E49 +:102F1000761E306CF8071800C0E04948201D1AD80A +:102F2000E06801B41AD84928492C1AD8F01F0012B9 +:102F30002FCDC008306C201C5C5CF20C0706FC0C2A +:102F40000007EF66000EF40C0706EF660014580C3D +:102F5000CF313089FD6C001BFD69001A109C706830 +:102F60005D185C5CD82200008003B5948003B5DC5A +:102F700080039D9C800094C4D4211897580CC0E114 +:102F800049D8201D1AD8E06800941AD849B849CC0D +:102F90001AD8F01F001C2FCDC00878185808C0E1BF +:102FA0004958201D1AD8E06800951AD84968494C3C +:102FB0001AD8F01F00142FCDC0086E186E06109C92 +:102FC0005808C0E148C8201D1AD8E06800991AD8EE +:102FD00048E848BC1AD8F01F000B2FCDC008F01FDE +:102FE000000C0E9B306C0C97F01F000A5806CE6147 +:102FF000D82200008003B5948003B62080039D9CF6 +:10300000800094C48003B62C8003B63C8000D13C81 +:103010008000C974D431201D500B1897580CC0C0C3 +:103020004D084D19118CF80815031818F2080028DE +:1030300070495829C0D030AA30094CBE129C1C924D +:10304000129B2ECE1298149314911490C1980F8A4B +:103050000F99B169F3EA11890FAA7018F3EA108980 +:103060000FBAF5E910091039CE714C08F109002E9C +:103070002FF9F159002ECE480C990A9C089B30A6D6 +:10308000EC031800C0A1FCF6FFFC5806C0611296C4 +:10309000189516941093C498FCF6FFFC5816C2417C +:1030A0005807C0F00F860F95B165EBE611850FA6A6 +:1030B000EBE610850FB6EDE5100564160C35C26021 +:1030C00064051D865805C080F2061800C2B3189525 +:1030D0001694109AC2A80C94F6061800C2331296E1 +:1030E00018951090C2285826C1D15807C1300F86B4 +:1030F0000F95B165EBE611850FA6EBE610850FB6CF +:10310000EDE5100564160C35C0514969109CB28874 +:10311000C9781D85F8051800C053129616941091B1 +:10312000C0481296189516942FF82E4E5C582E42D1 +:1031300030A9F2081800CA11F2031800C061400655 +:10314000EDB60000E081007B4005E2150002E08161 +:1031500000763098F0031800E089000A5C53C498A8 +:103160000000735200007354000080D430A8F001B6 +:103170001800C180E7D1C0084B38E60915030619CD +:10318000F00903285808C2304B08201D1AD8E068FF +:1031900001761AD84AE84AFC1AD8F01F002F2FCD22 +:1031A000C008F0001800C040E7D0C008C108E20A1B +:1031B0001800C4404A48E7DAC008E60615030616B8 +:1031C000F00600266C0CF01F00258D053098F003EA +:1031D0001800E088000F49D8201D1AD8E068018C3B +:1031E0001AD849F849BC1AD8F01F001B2FCDC008C7 +:1031F0004959E6081503300A0618F2080028F0C9F4 +:10320000FFF0930A5807C0D00F8B0FBA0F99B1691E +:10321000F3EB11890FABF3EB1089F5E91009911964 +:103220004899E60815030618F20800282F08300907 +:10323000069CB0C948B8B083C038E06C00FF2FFDD1 +:10324000D8320000000073548003B5948003B64C5C +:1032500080039D9C800094C480012F788003B66415 +:1032600000007352D431494730050E963EF42EC704 +:10327000ECC3FED40F882FF85C58AE88EEF9FFFC43 +:103280005829C061E8081800E08B0009C0F85819F7 +:10329000C0D1F2081800E088000A6C0C580CC0403D +:1032A000F01F00068D05EF45FFFC2E472E46063722 +:1032B000CE21D8320000735480012F78D431306889 +:1032C0001293189616951497F939002EF0091800E4 +:1032D000C0E04B78201D1AD8E06801DA1AD84B58A4 +:1032E0004B5C1AD8F01F00352FCDC008580BC5C055 +:1032F00017891798B168F1E9118817A9F1E91088C1 +:1033000017B9F3E81008C500189B0A9CF01F002CA1 +:103310001894C4A10B88FC19E000B968E618F00005 +:103320001238C420069B0A9CF01F00265C5CE80C47 +:103330001800C3C55C6C4A49F8081503302AF00C24 +:10334000010CF20C00289166F0C9FFF0930A0FDA25 +:10335000F16A000D0FCAF16A000C0FBAF16A000B96 +:103360000FAAF16A000A0F9A1095F16A0009ECC3DE +:10337000FFD10F8AB2C4F16A0008C0F87009701456 +:103380008B09F01F00120E99069A089B0C9CF01FE7 +:103390000010089CF01F000F6A08306C109B580842 +:1033A000CEE1109CD832E06C00F6D8328003B594A0 +:1033B0008003B67880039D9C800094C480012558CA +:1033C00080013014000073548000C97480012F08FC +:1033D0008000D13CD421189E580CC0E14958201DD2 +:1033E0001AD8E068024A1AD84938494C1AD8F01F4E +:1033F00000142FCDC008761AF4C8FFE4F137000F8F +:10340000F136000CF139000DF138000E782BB1695E +:10341000F3E61189F3E810897818EFE910091059DB +:103420001669C061F4CBFFD82ECAF01F0006D8225F +:103430008003B5948003A13880039D9C800094C4D0 +:10344000800132BCD431202D189616911495580C59 +:10345000C0E14CA8201D1AD8E068027F1AD84C8819 +:103460004C8C1AD8F01F00482FCDC00894593378DF +:10347000F0091900E08B000A4C48149CF109002265 +:103480002FF9F1590022C3087414E8C7FFE40F981C +:103490000F89F1E910893018F0091900C1E10FD83E +:1034A0000FC9F1E91089E0680604F0091900C1515B +:1034B0000FB80FA9F1E91089E0680800F0091900B8 +:1034C000C0C1E938001BE939001AF1E91089E06848 +:1034D0000806F0091900C0E04AC80A9CF109002852 +:1034E0002FF9F1590028F109001E2FF9F159001E9A +:1034F000CA184A68F109001A2FF9E8C3FFD6F15932 +:10350000001AFAC2FFFC304A069B049CF01F002000 +:10351000EF380018EF390019B169F3E81189EF3875 +:10352000001AF3E81089EF38001BF1E910096C1854 +:103530005808C0C01039C0A1049B3019E8CAFFDC8C +:103540000C9CF01F00143018C0A83009EECAFFF818 +:10355000FACBFFFC0C9CF01F000F30080FEA0FF9AC +:10356000F3EA1089301AF4091900C1503028F00923 +:103570001900C591C52800008003B5948003A138C7 +:1035800080039D9C800094C4000080D48002E736B4 +:10359000800132BC5808C4D03008AEE83028304A28 +:1035A000AEF8EECBFFF2EECCFFE8F01F0025304A7C +:1035B000069CEC0A000BF01F0022ED39002E30684B +:1035C000F0091800C0E049F8201D1AD8E06802D9B7 +:1035D0001AD849D849DC1AD8F01F001D2FCDC008D1 +:1035E000306820185C58EE080009F33B0008F36BC4 +:1035F0000012E808000AF56B000EE208070BF36BF7 +:103600000008E2080709F56900145808CEB10C9CBF +:103610006C680A9B5D18C0D80C9CFACBFFFCF01FAD +:10362000000DC07848C8F109002C2FF9F159002C81 +:103630000A9CF01F000A2FEDD83200008002E73606 +:103640008003B5948003B5DC80039D9C800094C406 +:103650008000B3B4000080D48000D13CD42178191C +:10366000F338001BF339001A1697F1E91088189601 +:10367000E0690800F2081900C070E0690806F20865 +:103680001900C231C1C8189B0E9CF01F00173E4B99 +:103690000C9CF01F0016C0E04958201D1AD8E068A5 +:1036A00004A41AD84938494C1AD8F01F00142FCD59 +:1036B000C0080E9B0C9CF01F0012C148189A169C63 +:1036C0002D1BF01F0010C0E848F8F10900282FF961 +:1036D000F1590028F109001E2FF9F159001EF01FC1 +:1036E000000BD82A800133D48000CDD48003B59458 +:1036F0008003B36C80039D9C800094C4800122E40D +:1037000080013444000080D48000D13CD431300AA0 +:1037100018941691303C338BF01F0042E8C8FFD15B +:103720001895580CC0A14C08E06700FFF10900246F +:103730002FF9F1590024C738985A3379F20A190041 +:10374000E08B000F4B98201D1AD8E06804311AD87E +:103750004B784B8C1AD8F01F00382FCDC008300999 +:103760007813E6C7FFE4AEE93019AEF93069E93AFB +:10377000002EF20A1800C0E04AC8201D1AD8E068DE +:1037800004391AD84AD84ABC1AD8F01F002B2FCDBA +:10379000C00830664AAB4ABA20165C56F006070CE1 +:1037A000EE060009F36C0008F606070CF36C001235 +:1037B000F406070CE6060009F36C000EF006070C91 +:1037C000F36C00145806CE913042EECCFFF2E802C2 +:1037D000000B049AF01F001C049A029BEECCFFE839 +:1037E000F01F00193069AED2AEC9AEB6AE863088D1 +:1037F000301AAEA8AE9AE769001BE768001A089C69 +:1038000068680A9B5D184888F10900182FF9EFDCF9 +:10381000C008F15900180A9CF01F000C0E9CD83209 +:103820008000D318000080D48003B5948003B6A034 +:1038300080039D9C800094C48003B5DC8003B71690 +:103840008003B58D8002E7368000D13CD4211694E8 +:103850001896189B1497089CF01F00541895E08147 +:1038600000DF09890998B168F1E9118809A9F1E92E +:10387000108809B9FC1AE000F3E810081099E6195D +:10388000F0001439E08000CC5808E08000C9301BFB +:10389000089CF01F00475C5CEA0C1800C0545807F5 +:1038A000E08100CBCC184C39EBDCB008EA081503FA +:1038B0000A18F20800282F0870095809F9B9000100 +:1038C000F1F90A004BB9EA0815030A18F2080028B2 +:1038D0007048F0C900015819E088000F4B68201D9E +:1038E0001AD8E06803A51AD84B484B5C1AD8F01FC9 +:1038F00000352FCDC00858185F0858075F09F3E856 +:103900001008C041E06400FFC078089B0C9CF01FC9 +:10391000002EE9DCC0085807E08000854A5AEA0911 +:1039200015030A19A369F409000870485828C0B1A2 +:103930002F890E9BF40900090C9CECCAFFD1F01FE3 +:103940000023C6B85818C6E110990E98905B904AAB +:10395000F40B1900C111700A580AC0E04968201D13 +:103960001AD8E06803C41AD84998495C1AD8F01FDD +:1039700000152FCDC008F13A000CF20A1800C05112 +:1039800070085808CE41C51890CB300A303CF01F63 +:1039900000111896C4F00E9BF01F000F5C5CC1F084 +:1039A0000C9CF01F000EC468800125588001301463 +:1039B000000073548003B5948003B6D480039D9CAB +:1039C000800094C48001370C80012F088003B6FC6E +:1039D0008000D3188000CF988000D13C306CF01F5D +:1039E000001AC170300899169908EA081503F00505 +:1039F00001054968F00500256A045804C07008985C +:103A000068045804CFD1910CC0288B0C089CD82294 +:103A10000C9CF01F000F089C5C5CD822E06C00F648 +:103A2000D822089C5C5CD8220E960E9CF01F0009E0 +:103A3000CD6B089C5C5C4888F10900242FF9F15992 +:103A40000024D8228000C9D4000073548000D13CE7 +:103A50008000CD1E000080D4D421202D169618970A +:103A6000149531CB0C9CF01F0027C0804A68E06C95 +:103A700000FE90592FF9B059C4180E9B0A9CF01FF4 +:103A80000023C3410B890B98B168F1E911880BA998 +:103A9000F1E910880BB9FC1AE000F3E8100810995E +:103AA000E619F0001439C0F13019BAA935E9BAC9DC +:103AB000F3D8C207BAF8BAD9A988BABCBAE8FAC921 +:103AC000FFFEC1586E1912586E291268C0906E38E8 +:103AD0005808C041E06C00FCC118EEC5FFF40C9A18 +:103AE0000A9B0E9CF01F000AC08848A90C9B0E9CE4 +:103AF000EECAFFD1F01F00085C5C2FEDD822000059 +:103B00008000CDD4000080D4800125588001384C3D +:103B10008003B58D80012F0878983019B0895EFC3C +:103B2000D4217897EF380024EF390025F0091800E8 +:103B3000C021D82AEE080028201D701630086C1904 +:103B40008CCA8CDB20EA1AD620EBF2CCFFF2F01FF5 +:103B500000182FED587CC0F0581CC0310C95C138AE +:103B6000EF3800242FF8F1D8C0030C9CEF68002434 +:103B7000F01F0010E06C00F4D8228ADB6A1CF01FF2 +:103B8000000E6A055805CFA1EF3800242FF8F1D8B0 +:103B9000C0030C9CEF680024F01F00064878E06C1E +:103BA00000F290092FF9B009D82200008001933467 +:103BB0008000D13C80013F7C000080D4D421204D86 +:103BC0001896F01F002D5806C5306C955805C50095 +:103BD0000B885808C4D0E0680600300ABA68E06B69 +:103BE0000600303CF01F00251897C3F03008FACBD0 +:103BF000FFF4AA88781CF01F00229A6B580BC35060 +:103C00005C7BFAC8FFF2FAC9FFFCFACAFFF86E1C27 +:103C1000F01F001C586CC2606E18402B101B40181F +:103C20005C5B0E9C100B5C7BF01F001749789019B1 +:103C30002FF9B0196E19F338001BF339001AF1E9A6 +:103C40001088E0690800F2081900C060E069080601 +:103C5000F2081900C0716C480C9B0E9C5D185C5CEE +:103C6000C0400E9CF01F000A0C9CF01F000A2FCDD4 +:103C7000D822000080013FA08000D31880013F5867 +:103C8000800192DC8000D210000080D48000D13C02 +:103C900080013B20D4211897580CC0E149B8201D61 +:103CA0001AD8E06801491AD8499849AC1AD8F01FC7 +:103CB000001A2FCDC008499899983778F9680036CE +:103CC00036C8F9680037496899584968189B996857 +:103CD000495CF01F0016496CF01F00163628EF688B +:103CE00000353068EECCFFD1EF68002EF01F0012D7 +:103CF000581CC040E06C00F4D822E06805DC300CB1 +:103D0000EF58002CD82200008003B71C8003A13894 +:103D100080039D9C800094C40000746C80013A581C +:103D200080013D5880013B1880013E6880013D388C +:103D300080018F4480019128D40116985C7A189BE9 +:103D40002F29109C5C79F01F00045C7CF9BC00FFFB +:103D5000D80200008000CEC4D42131B918977898D9 +:103D6000965AF20A1900E08B0005E06C00F4D822A4 +:103D7000F1390025F13C0024F2CAFFFFF5DAC00357 +:103D8000183AC041E06C00F2D822F16A0025F0092F +:103D90000028169C911B3F26F01F00050E9CF01F6B +:103DA0000005EC0C1800CFB0D82A00008000CD1E12 +:103DB00080013B20D42130061897E9DBC01030A5E4 +:103DC000C138EE060708201D48BC1AD8F01F000BAA +:103DD0002FED5806C080EC050C085809C041488CEE +:103DE000F01F00062FF60836CED5486CF01F0003F2 +:103DF000D822000080037AF0800094C48003B76862 +:103E0000800384D448CD48D0E3B00001D55348C0E6 +:103E100048C10230C06248C2A505A1240230CFD3F8 +:103E200048A048B10230C06230023003A122023003 +:103E3000CFE3488F000100008003760000000008F7 +:103E4000000009B88003F480000009B800008CC8A5 +:103E500080008EDCD4013018F96800087808580812 +:103E6000C030781C5D18D802D4014869930C931BAC +:103E7000F33800085808C040129CF01F0003DA0A0B +:103E80000000749880013E54D421201D1895169688 +:103E90001494300B30CA49DCF01F001D300B49DC94 +:103EA000F01F001D300B49DCF01F001D497B49DC71 +:103EB000F01F001D1897581CC0400E9C2FFDD822E3 +:103EC000F01F001A1897581CCF910C9B0A9C49862A +:103ED0008D07F01F00181897581CC04030088D0837 +:103EE000CEDB30088D08F01F00141897581CCE61E7 +:103EF000FACBFFFD302CF01F0011F9B701FFFBF8E2 +:103F00000803E9F80A00CDAB00007498800091D056 +:103F100080013F8C80018F3080013F3C80019F6099 +:103F200080013E54800144588001440C0000749488 +:103F300080018F488001443080014110D401169CDB +:103F4000580BC041F01F0004D802300B301CF01F8A +:103F50000002D80280014110D4014879F3380008EA +:103F60005808C021DC0A3008F3680008F01F00037D +:103F7000DA0A00000000749880014284D4015C7B5E +:103F8000F01F0002DA0A00008001433CD401169CB5 +:103F9000F7DAC010F01F0002D80200008001433C95 +:103FA000EBCD40C0203DF01F00164969F3380008F2 +:103FB0005808C04072085808C0402FDDE3CD80C0CB +:103FC000E0680100FAC6FFF4E06C01000CE8F01FA5 +:103FD000000E0C9B1897F01F000D9A5B580BC0A0A9 +:103FE0005C7BFAC8FFF81A99FACAFFFC0E9CF01F16 +:103FF00000080E9CF01F0007CE1B0000800140A4AB +:10400000000074988000920080013F58800192DC8B +:10401000800091E8D40148583019701CF1690009FA +:10402000700A5D1AD8020000000074A8EBCD40CCE5 +:10403000206D49A6FAC7FFF46C2E8F2EECE200002B +:10404000EEE3000016961093FACEFFF0580CC22053 +:104050007C08FC1C8000F1EC100BF4081509BBB8BF +:10406000F1E611C812481648301C9D08F01F000CDC +:104070000E9C30CA1A9BF01F000BFB38000AA68862 +:10408000FB39000B300CA699F01F00052FADE3CDD6 +:1040900080CC7C0BCE3B00008003B774800075B4ED +:1040A00080007534EBCD4080201D4987EF38000833 +:1040B000EDB80000C071EF3900093008F0091800B0 +:1040C000C0402FFDE3CD808030091A98129B129CCE +:1040D000305AF01F000F3FF91B88F2081800CF205C +:1040E0001B98EDB80001CEE13008301C109B302940 +:1040F000E06A00F0F01F000630186E1CEF6800093F +:104100006E095D19CDFB0000000074A88001402CF1 +:10411000EBCD40C0201D301AF40C1800C1B0C08394 +:104120003028F00C1800C2602FFDE3CFC0C01A97F2 +:10413000300630091A98E06A00F1129B301CF01F1B +:1041400000161B98EC081800CF51300C2FFDE3CD62 +:1041500080C018961A9730191A98E06A00F1300B4F +:10416000129CF01F000D1B98EC081800CF51300C6A +:10417000CEEB48A8F1390008F9D9C001F7FA1E00C2 +:10418000F9BC0100F9B8005AF7F80E002FFDE3CD95 +:1041900080C000008001402C000074A8EBCD406876 +:1041A00048F516961893AA4B301CF01F000E0A9C77 +:1041B000310A300BF01F000C069BF5D6C010300CF6 +:1041C000F01F0009304A300B488CF01F0007300CFC +:1041D000F01F00040C9CE3CD80680000000002107A +:1041E000800075B4800075348003B780EBCD40400B +:1041F00020ED30083009FAE90018FAE90000FAE980 +:104200000008FAE9001049BBFAC6FFD4762A8D2AC5 +:10421000F6E80000301CECE90000F01F0017320A3D +:10422000300B1A9CF01F00150C9C30CAFACBFFE033 +:10423000F01F0012300CF01F00103019FB38002A5C +:10424000F2081800C0503FFC2F2DE3CD804048C835 +:10425000F1390008F9D9C001CF8030083039304A2F +:10426000109B301CF01F00072F2DE3CF8040000073 +:104270008003B784800075B480007534000074A892 +:104280008001402CD42130094A881695F169000933 +:104290001896320BF01F00268C085CC82FE8F7D860 +:1042A000B010AA0BEFDCB010F6C90007E06805F902 +:1042B000F0091900E08B00300D890D98F208180004 +:1042C000C220F6071900C182E0640200F9D7C010CD +:1042D0005C7B181BEC0C000CE04B0200E80B17B0E9 +:1042E0005C7BF01F00138A0B0E0CEFDCB010EE0BA2 +:1042F0001900FE9BFFED48F83009118AF20A1800F8 +:10430000C0D1D8220DA8F2081800CDC10DB8F2080E +:104310001800CD813008AA08D822F5DBC010486CFF +:104320000C9BF01F0006D822000074A88001419C5D +:10433000000074A48003B76C8001447CD4314A38F7 +:1043400018921695118A3009F20A1800C3615805AF +:10435000C33049F83004F0C0FFF4E0610200C22825 +:10436000E06602000C970C93301CA006F01F0019A9 +:10437000300B497C314AF01F0018E404000C0E9AFF +:10438000300BF01F0015304A300B494CF01F001263 +:10439000300CF01F0010EA0601080604EBD8B0103C +:1043A000C0B0E2051900FE9BFFDDEDD5B010EFD6E1 +:1043B000C0100E93CDABD832F5DBC010189B488CE3 +:1043C000F01F0008CC5B0000000074A4000001FC9A +:1043D000800075B4800075348003B7808003B770A7 +:1043E0008001447CD401201D3009301C1A98E06AF9 +:1043F00000F5129BF01F0004314CF01F00042FFD4C +:10440000D80200008001402C800075D2D401F01F3A +:104410000007F01F0007C03030CCD802F01F0003A7 +:10442000F01F0003CFA1DA0A800143E4800141ECD0 +:10443000D401314CF01F0006F01F0006C03030CC14 +:10444000D802301CF01F0004DA0A0000800075D288 +:10445000800141EC80007618D4014878910C911BC2 +:10446000F0CCFFF8F01F0005F9BC010CF9BC00010D +:10447000D8020000000074A8800076385EFCD703E4 +:10448000EBCD40F849C56A096A181039C2F08B0CA7 +:10449000EAC7FFF0EAC6FFF4EEC30010EAC4FF70FB +:1044A0000F89EDB90000C091EDB90001C0616C0940 +:1044B0006A081039E08800082F072F060837CF1147 +:1044C000E3CD80F86E19300B169C5D190F883FDA2A +:1044D000F1EA0009EDB80002C0716609EEF8FFF8D4 +:1044E00012088D08CEABAE89CE8B5809CD118B1C2E +:1044F0008B0CCCFB000074B8EBCD408048CE1897F5 +:10450000300AFCCBFFF0F408150417892F88FC084B +:10451000000CEDB90000C0512FFA2F0B588ACF4183 +:104520003018F96800088F0AE3CF9080000074B853 +:104530002FFC4849A56C18091388A1D8B2885EFCE5 +:10454000000074B82FFC4848A56C30091808B089E1 +:104550005EFC0000000074B8EBCD40E0189E14979C +:104560001295587BE08B002C496AF6C8FFFFA568BE +:10457000F408000C1989EDB90001C1F0F608150422 +:104580001296F4080008A1B6F60915012FF9F409EE +:10459000093E740AB8869157FC0A000A913A5805F8 +:1045A000F9BC0001F9B90104EDD9E138F9F81E00B0 +:1045B000F9BC0101E3CD80E0E3CF80E0E3CFC0E0D0 +:1045C000000074B848387019700C121C5EFC0000B2 +:1045D000000074B85EFC300899085EFC1899780CED +:1045E000580CF9B80001F3F80A005EFC300899088D +:1045F0005EFC300899085EFC5EFC5EFC5EFC5EFCC6 +:10460000D401580BC110F80B000B300A487E7C090E +:10461000F40900092FDAF208141FB98810091019DB +:1046200018C9163CCF51D802000074B85EFD5EFF79 +:104630005EFF5EFF5EFF3FDC5EFC78082FF89908A6 +:104640005EFCD401780820189908C020D80A5D1BA8 +:10465000DA0A301899085EFCD401F01F0002D80273 +:1046600080016D6CEBCD406048784889F5DBC01067 +:104670001895189B7006720C5D160A9CF01F0004BA +:10468000E3CF906000007540000074B4800091E8B2 +:10469000D401E06A0088300B485CF01F0006F01F70 +:1046A00000064868300C9118910CD802000074B8CC +:1046B000800091D0800146C000008B545EFCD7037F +:1046C000D401F01F0011F01F0011301B4909169C86 +:1046D000490AF01F00114919491A301B303CF01FDC +:1046E000000EF01F0010300A301BE06C00F0F01FCD +:1046F000000EF01F000E300A302C149BF01F000C2F +:10470000D80A0000800148C0800147888003B79024 +:10471000800146BC800148548003B794800157A4AF +:104720008001499C800147E0800149F480014730C5 +:104730004828F00C092B5EFC00007548EBCD40E0EA +:104740004905189716966A085808C0205D1848E869 +:10475000F007032C580CC061C088F0061800C09008 +:104760002F8C19885808CFA16A085808C080C00843 +:1047700078193028F0091800FE9BFFF8E3CD80E09F +:1047800000007544000075485EFCD703EBCD40FC8B +:104790004935189630120A94EAC3FFF46A0858089B +:1047A000C0D068385808C19030185806CF805816C5 +:1047B000C0305808CF40E3CD80FC48976E28701970 +:1047C000703C700B5D196E2870296E188F29103996 +:1047D000EFF20A003008CEAB0697CF1B000084B47E +:1047E000EBCD40C018961497580BC24049789009F9 +:1047F000F6091900E088001BF60B00184949F20879 +:10480000002C781A74085808C171741E7428103E60 +:10481000C1507C283009951895099D369D07FD6B80 +:10482000001078089D18E3CD80C0307B305CF01F0D +:104830000009E3CD80C0741ECEDB306B305CF01F0E +:104840000005E3CD80C00000000002200000755C80 +:104850008001473CEBCD408049281497129E581B9D +:104860005F8A9009F80919005FB81468C130F80C24 +:10487000001AF60B0019F4CCFFFF48BB48B8F60A43 +:10488000002AF0090029952EF60C09299507E3CD99 +:104890008080302B305CF01F0006E3CD808000006C +:1048A000000002200000755C000084B48001473CD9 +:1048B000D401307B305CF01F0002D8028001473CFD +:1048C000EBCD404030084AB9B2884ABA940858083B +:1048D000C4D04AA95C784AABF00800184A9EA36885 +:1048E000300C2F88F6CAFFF4F20800082F89930CC9 +:1048F000F34AFFFCF34EFFF82F491039CF91F6CE63 +:10490000FFE84A1A49EB301C970C972A971A14981B +:10491000F4C9FED42EC8F148FFF41238CFC1F54ACD +:1049200001342F4BF4CAFEC01C3BCEF1E06A00807C +:10493000300B496CF01F00164948F0C9FF902F0852 +:10494000F148FFFC491A1238CFB130064918F54634 +:10495000007C910A9116310A0C9B48FCF01F000C58 +:1049600048E80C9C9106E3CD8040485BCC9B00005E +:1049700000007598000002200000755C000084B4FF +:10498000800148B0000082340000759C800091D006 +:1049900000007630000076200000761C4848485918 +:1049A000485A91099119913A912A5EFC000002241B +:1049B000800149D4800149EC48484859485A911926 +:1049C0009109913A912A5EFC00000224800149D4A9 +:1049D000800149EC48494858311AEA1A4000143C11 +:1049E0005E085E19800149D480014A0C481C5EFCB7 +:1049F000800149ECD4013019300A303BFC1C4000E6 +:104A0000F01F0002D8020000800186C8EBCD408074 +:104A10004B373099EA194000123CC310E088001F60 +:104A200030B9EA194000123CC2A0C4233139EA1956 +:104A30004000123CC500E069078AEA198000123C78 +:104A4000C241761CF01F0027300A4A77149B314C74 +:104A5000F01F00260E9CE3CD80803019EA1940003B +:104A6000123CC320E08800153079EA194000123C5E +:104A7000C0603089EA194000123CC0713019300A18 +:104A8000303BF01F001B49B70E9CE3CD8080FC1922 +:104A90004000123CCFA130194978300AF149004456 +:104AA000304C149BF01F00110E9CE3CD8080301918 +:104AB000300A303B30ACEA1C4000F01F000D48D7F4 +:104AC0000E9CE3CD8080302B300CF01F000C0E9C30 +:104AD000E3CD808048470E9CE3CD808080014A0C66 +:104AE0008001DA2C800149D480014658800186C8B3 +:104AF000800152F0000087F480018390D401201DD2 +:104B00001A9CF01F0008C07040085818E088000682 +:104B1000F01F00052FFDD802F01F00042FFDD80262 +:104B200080015F4480015EDC80015EB4EBCD40F823 +:104B3000201DFEF805EA189716951496103AC3A0A2 +:104B4000FEF805E0103AC610FEF805DC103AC06029 +:104B50000C970E9C2FFDE3CD80F8E068018CEA18DD +:104B60008000103CE08000F7E068078AEA188000C7 +:104B7000103CE08000ADE0680186EA188000103C3F +:104B8000CE8176170E9CF01F0169F01F0169C0915C +:104B9000FEF805A0EEEA0000F0EB00006E29912976 +:104BA0000C97FEFA0592300BFEFC0590F01F016495 +:104BB000CD1BF01F015F1894C4D1E0680184EA188E +:104BC00080001037E0800185E08B00D2E0680107AB +:104BD000EA1880001037E08001A0E0680183EA183D +:104BE00080001037CB616A170E9CF01F0156E080E1 +:104BF0000230FEF905523048F34800440E9B334C16 +:104C00000C97F01F0152CA6BFEF4053CE0680112DC +:104C1000EA188000E8F300F8103CC540E08B006320 +:104C2000E0680107EA188000103CE08000F7E068C7 +:104C3000010DEA188000103CE080010DE0680105DC +:104C4000EA188000103CC851761C1497F01F0140F0 +:104C5000C81BFEF304F2E0680188EA188000E6F45D +:104C600000F81037E08001B0E08B00ABE068018312 +:104C7000EA1880001037E080018BE0680184EA18B0 +:104C800080001037E080016EE0680107EA188000BC +:104C90001037FE91FF5F6A18303CF13B000BF01FAC +:104CA000012D3019300A303B30CCEA1C4000F01F97 +:104CB000012A300AFEF70470149B301CF01F0127F4 +:104CC000C49B761C1497F01F0126C44B6A1CF01F6E +:104CD0000125300AFEF70490149B314CF01F011F90 +:104CE000C39BE068018AEA188000103CE08000CB9A +:104CF000E068078AEA188000103CCE90E068011551 +:104D0000EA188000103CFE91FF2576150A9CF01FE2 +:104D100001170BC93048F0091800E08001BBE08B97 +:104D2000019B3008F0091800E08001BF6738301996 +:104D300011EAF20A1800E08001DD0A9CF01F010C64 +:104D4000FE90FF08300A0C97305C149BF01F0103A3 +:104D5000C01B76170E9CF01F0107F01F00F5C4F171 +:104D60000E9B33DC0C97F01F00F9CF4AE068018AF4 +:104D7000EA1880001037E08000BDE068078AEA1872 +:104D800080001037E0800099E0680188EA18800010 +:104D90001037FE91FEDF6A170E9CF01F00F7C0A0CF +:104DA000F01F00F63069FEF8039EFEF60376F14927 +:104DB00000440E9B336C0C97F01F00E4CCBAE06803 +:104DC000018EEA1880001037E08000B7E068078A9B +:104DD000EA1880001037FE90FF7BE068018AEA182D +:104DE00080001037FE91FEB66A160C9CF01F00E49E +:104DF0001897E0800114FEF7032ACACA3099FEF81A +:104E000003460C97F1490044FEFA032C300BFEFCDC +:104E10000372F01F00CBC9EA76150A9CF01F00DA76 +:104E2000302B169CF01F00D9FEF702FCF01F00C0CB +:104E30001896E08100DD0A9B337CF01F00C40C9AB9 +:104E40003019303B30ECEA1C4000F01F00C3FE9FDD +:104E5000FE8276160C9CF01F00CE302B304CFEF7F5 +:104E600002C6F01F00CAF01F00B2E08000EC30194B +:104E7000300A303B310CEA1C4000F01F00B7FE9FA7 +:104E8000FE6A76150A9CF01F00BE1897E08000BAF3 +:104E9000300A302C149BF01F00B13078E9480044F0 +:104EA000F01F00A3FE91FE560A9B0C9733BCF01F27 +:104EB00000A7FE9FFE506A1CF01F00AA089AFEF78A +:104EC00002A6089B314CF01F00A5FE9FFE446A1706 +:104ED0000E9CF01F00B0C060FEF9026C3058F34821 +:104EE00000440E9B335C0C97F01F0098FE9FFE332E +:104EF0006A170E9CF01F00A2C0803069FEF80248BD +:104F0000FEF60220F14900440E9B33BC0C97F01FC3 +:104F1000008FFE9FFE206A1B337CF01F008C089AD6 +:104F2000FEF702043019303B30ECEA1C4000F01F61 +:104F3000008AFE9FFE106938301911EAF20A180043 +:104F4000FE90FE086A1CF01F0094FE91FE03189A62 +:104F5000189BFEF70246301CF01F0080FE9FFDFBF1 +:104F60006A150A9CF01F008B1897E08000874F2A73 +:104F7000300BFEFC022AF01F00721897E08000AE92 +:104F800030580C97E7480044FE9FFDE56A150A9CDF +:104F9000F01F006C1897E08000956938301911EA0D +:104FA000F20A1800FE91FDD64E3A300B4FDCF01F8E +:104FB00000641897E08000A930480C97E748004447 +:104FC000FE9FFDC96A160C9CF01F006B1897C2600B +:104FD000F01F006A30684D37E7480044FE9FFDBB74 +:104FE000EACBFFFC301A30DCF01F005C3019300ACD +:104FF000303B30CCEA1C4000F01F0057FE9FFDAB59 +:10500000F01F004BFE90FF4E0E9A3019303B30CC13 +:10501000EA1C4000F01F0050C44B303B30CCEA1C6F +:10502000400030190E9AF01F004C0DEB304CF01F71 +:1050300000490E9A0E9B301C4BB7F01F0048FE9F94 +:10504000FD8A0C9B33ACF01F0041FE9FFD844D3662 +:10505000FE9FFDD63068F0091800FE98FE693828DA +:10506000F0091800FE91FD76300A0C97325C149B13 +:10507000F01F003AFE9FFD6F189A303B30CCEA1CBF +:1050800040003019F01F0034EB3B000D303CCD0BDD +:105090003008FACBFFFC0C9716F8301A30ECF01FF2 +:1050A000002FFE9FFD580A9CF01F003FFE90FD520E +:1050B000300A0C97306C149BF01F0028FE9FFD4BAC +:1050C0000BCB302CF01F00230E9A0E9B301C4B375D +:1050D000F01F0022FE9FFD3F189A303B30CCEA1CA7 +:1050E00040003019F01F001CEB3B000D301CCA0BB8 +:1050F00048D7F01F000FFE91FF750A9B338CF01FFD +:105100000013FE9FFD28189A303B30CCEA1C40006B +:105110003019F01F00110BCB301CC8AB800152F0CE +:10512000800151A8800156388001D9AC800185E406 +:105130000000763880018E9C8001E03C8001EF20E9 +:105140008001E88C000087F480016D6C8001E2D45E +:1051500080018390800186C8800146588001E00864 +:105160008001DA2C800149D48001E2FC80016D4A83 +:105170008001D9C88001E4D080014AFC8001E4307C +:105180008001E0D48001D9FC800183A08001D9E8AE +:105190008001E81C8001E3DC80014A0C8001E7B853 +:1051A0008001E58880016D48EBCD40C04C96189792 +:1051B0003138EA184000103CE0800087E088002485 +:1051C000E068010DEA188000103CC150E088004002 +:1051D000E0680115EA188000103CC0D0E068018A40 +:1051E000EA188000103CC070E0680112EA188000E4 +:1051F000103CC3910E9C4B7AF01F003718960C9C04 +:10520000E3CD80C03018EA184000103CC510E0889B +:10521000002E30D8EA184000103CC1003108EA18CE +:105220004000103CC3F030C8EA184000103CC1B147 +:10523000301C302BF01F00290E9C3019300A303BF7 +:10524000F01F00274A760C9CE3CD80C0E068010582 +:10525000EA188000103CCCF0E0680107EA188000F2 +:10526000103CCC900C9CE3CD80C0E04C008ACC304C +:10527000FC184000103CCF71307949B8300AF14930 +:105280000044149B302CF01F0019300A30FC149B92 +:10529000F01F0016302B300CF01F00100C9CE3CDDB +:1052A00080C0303C302BF01F000D0E9CCC7B48E9B9 +:1052B0007298ABC8300A9398149B303CF01F000BD7 +:1052C0000C9CE3CD80C048A60C9CE3CD80C00000C0 +:1052D000800151A880014B2C800183A0800186C8E9 +:1052E00080015638000087F480014658800149D477 +:1052F000D421FACD00E4FEF602E21898FEF502E0B1 +:10530000ECF700F83109EA194000123CE08000D5C2 +:10531000E08B003630A9EA194000123CE08000C260 +:10532000E088005330C9EA194000123CE08000A830 +:10533000C6A330D9EA194000123CE080011930F9C7 +:10534000EA194000123CC3D1FEFA0298300BFEFC71 +:105350000296F01F00A61896C341189BFEFA02841D +:10536000FEFC028CF01F00A1304C301BF01F00A18E +:105370000C9A0C9B301CF01F00A0C238E06901841D +:10538000EA198000123CE0880011E0690188EA19FE +:105390008000123CC100E08B00A5E0690186EA199B +:1053A0008000123CC0E1C078E0690183EA19800006 +:1053B000123CC363109CFEFA0226F01F0090189561 +:1053C0000A9C2C7DD8223079EA194000123CC7C0D3 +:1053D000E08800973089EA194000123CE08000CF55 +:1053E0003099EA194000123CCEC14FEA300BFEFC66 +:1053F000020EF01F007E1894E08000CF3048ED4888 +:105400000044CDFB4F7A300B4FECF01F0078CD916C +:10541000189A189B4FC5301CF01F0077CD2BE06900 +:105420000107EA198000123CCC60E0690115EA1915 +:105430008000123CC1203139EA194000123CCC11E5 +:10544000300A301C149BF01F006C300A304C149B47 +:105450004EE5F01F0069CB5B6F38301911EAF20A94 +:105460001800C72076160C9CF01F00690C9CF01FDA +:1054700000694E98580CF0051710CA3B303B3019A4 +:10548000300AF01F0066302B303CF01F005A300A03 +:10549000301C149BF01F00584E150A9C2C7DD822FE +:1054A0004D0A300B4DFCF01F00511897C3B0305817 +:1054B000ED480044C86B303B3019300AF01F0057EC +:1054C000302B304CCE3B6C9BE21B0040C2414C5A0F +:1054D0004D5CF01F0046C9D03028ED480044C71B82 +:1054E000E069018AEA198000123CFE90FF65E069DC +:1054F000018EEA198000123CFE91FF64C5CBFC19B5 +:105500004000123CFE91FF5E300A149B149CF01F79 +:10551000003AC57B300A4BC5149B301CF01F003687 +:10552000C50B30481A9BBAE8336CF01F00400E9A46 +:105530003019303B30ECEA1C4000F01F00384B893A +:105540004BB89119C3EB76170E9CF01F00310FC9B1 +:105550003068F0091800FE9BFF354B15F01F003531 +:10556000C2A10E9B338CF01F0031C2BB4AC530195B +:10557000300A303BF01F0029C24B49AA300B4AAC1D +:10558000F01F001ACAA1304849F5BAC81A9B334C1B +:10559000F01F0026C16B306AEECBFFE2FACCFFFCB5 +:1055A000F01F002530481A9BBA68335CF01F001FBB +:1055B000089ACBFB3019300A303B30CCEA1C400053 +:1055C000F01F00160FCB305CF01F000A300A301CB1 +:1055D000149BF01F0009CF5A000087F4800152F09D +:1055E00080018E9C8001E7548001EF208001E03C27 +:1055F000800183908001465880014B2C8001E58812 +:105600008001DA5480014A0C800149D48001E2FC17 +:1056100080016D48800151A8800186C880015638FC +:105620008001E7B88001EA8C80016D6C00000224E3 +:10563000800185E48002E736EBCD40804C9731084D +:10564000EA184000103CC6F0E088001DE068018CBC +:10565000EA188000103CC3B0E088002EE068019397 +:10566000EA188000103CC440E0680194EA18800009 +:10567000103CC2714BC7761CF01F003C0E9CE3CD62 +:10568000808030C8EA184000103CC400E088001D4B +:1056900030D8EA184000103CC21030E8EA18400048 +:1056A000103CC0F14B2A300B4B2CF01F00330E9CEA +:1056B000E3CD8080E0680186EA188000103CC0706D +:1056C0000E9CE3CD8080E04C008ACFB14A5AF01F97 +:1056D000002B18970E9CE3CD8080F01F00294A4ACA +:1056E000300B4A8CF01F00240E9CE3CD8080761C8A +:1056F000F01F0025F01F0025C0514A5B33CCF01F7E +:10570000002549970E9CE3CD80804A39731858983C +:10571000CD803098496AF3480044300B49FCF01FB3 +:105720000016CCFB49C973185888CCB03088F348B0 +:105730000044F2F900F87338301911EAF20A18003F +:10574000C0A03019300A303B30DCEA1C4000F01FAA +:105750000014CB7B486A300B492CF01F0007CB1B91 +:105760008001563880014A0C8001DA4680018E9C07 +:105770008001E03C8001EF2080014B2C80015E34F1 +:105780008001DA448001DA48800185E4000076383F +:1057900080016D6C000087F48001E0D4800186C830 +:1057A0008001E094EBCD40F84A37189416956E18B6 +:1057B0006E090E930E96C118300B301CEA1C400087 +:1057C0005D19300B6C39FC1C40005D196C388D285C +:1057D0006E186E091238C2001039C190300B301C9F +:1057E000EA1C40005D19300B6E19FC1C40005D196D +:1057F0006E188F086E296E381039CDF10A9B089CFF +:105800005D19873C6629123CCF71CE3B0A9B089CF0 +:105810005D198F1CCF0B5805C0706A085818C060FE +:105820000A9CF01F0006E3CD80F8EACCFFFCF01FD5 +:105830000004CF7B00000224800091E88001D3A8FF +:105840004878F14C00F8580CF9F81004F9B9010146 +:10585000F1D9E108F9F81A045EFC0000000087F4B1 +:10586000EBCD40C04948FAC6FFF4F0F700F4580702 +:10587000C051C1E8F8C70008C1B0EECAFFDC740827 +:10588000204D502815C9FB69000C15D8FB68000D88 +:105890006C0850080DC9BAC90DD8BAD8F01F000756 +:1058A0002FCD580CC0516E2C580CCE5118970E9C11 +:1058B000E3CD80C0000087F480018898D40149D9E5 +:1058C000F2F800F41838C0B078285808C2B0784808 +:1058D000201899482F8CF01F0018D802580CF9F89E +:1058E0001004F9BA01FFF1DAE108F9F81A043008F6 +:1058F000F34800F448FA78285808C180F0C9000835 +:10590000F54900F4CE8072482FF89348F4F900F47A +:105910005809CE10724820182F8C9348F01F0006AB +:10592000D80278385808CD41D802F54800F4CD3B6C +:10593000000087F48001F2A0D4014989F2F800F058 +:105940001838C0A078085808C240784820189948EC +:10595000F01F0013D802580CF9F81004F9BA01FF2F +:10596000F1DAE108F9F81A043008F34800F0780A8F +:10597000F34A00F0580ACED074482FF89548487979 +:10598000F2F900F05809CE50724820189348CE1B07 +:1059900078185808CDB1CDFB000087F48001F2A043 +:1059A000EBCD40801897580AC2C07858F608010815 +:1059B0001438E08800274948F0FB00F8580BC190E4 +:1059C000F8CAFFDC15D8204DFB68000D740950297A +:1059D00015C8F6CAFFDCFB68000C7408500815C92E +:1059E000BAC915D8BAD8F01F00092FCD580CC091EC +:1059F0000E9CF01F00070E9CF01F0006E3CF908066 +:105A0000E3CF8080000087F48001889880015938B6 +:105A1000800158BCD4214A141895E8F700F05807C3 +:105A2000C27079383006704AC02810976F387049B4 +:105A30001439E08A00086E080E965808CF710E9649 +:105A400010970A37C0D06A085808C0B00A9CF01FE7 +:105A500000145806C1300A9B0C9CF01F0012D8227B +:105A60006A185808CF416A482FF88B48CF3BE94C59 +:105A700000F078482FF89948D8220A9B0E9CF01F16 +:105A800000090E9CE94500F0F01F00050E9B0A9CE2 +:105A9000F01F0004D8220000000087F48001F2A06B +:105AA0008001F28CEBCD40C04A48FAC7FFF4F0F613 +:105AB00000F05806C051C3D86C065806C3A06D3814 +:105AC000707C2F4CF8E80000212DFAE90024F8EA58 +:105AD0000008FAEB002CF8E80010FAE90034F8EAC4 +:105AE0000018FAEB003CF9380020FB680044F93953 +:105AF0000021FB690045EEE80000FAE90000EEEA4B +:105B00000008FAEB0008EEE80010FAE90010EEEAEF +:105B10000018FAEB0018EF380020FB680020EF397E +:105B20000021FB690021F01F00062EED580CCC501F +:105B30000C9CE3CD80C00000000087F48001891038 +:105B4000EBCD40E0205D7608502817C9FB69000CBA +:105B500017D81697FB68000DF8CBFFE2306A18964D +:105B60001A9CF01F0034F01F00342FCD580CC05188 +:105B7000300C2FFDE3CD80E06E7C2F4CF8E8000068 +:105B8000212DFAE90024F8EA0008FAEB002CF8E8E5 +:105B90000010FAE90034F8EA0018FAEB003CF93892 +:105BA0000020FB680044F9390021FB6900456D388D +:105BB000707C2F4CF8E80000FAE90000F8EA0008D1 +:105BC000FAEB0008F8E80010FAE90010F8EA00180B +:105BD000FAEB0018F9380020FB680020F9390021A1 +:105BE000FB690021F01F00152EED580CCC20320B64 +:105BF000300CF01F00131895CBC0189A0E99491B52 +:105C0000F01F00110BF93008F0091800EDF800132F +:105C1000F1F90807EBF90E07FACCFFFC6D3818D83C +:105C20001A9CED45004CF01F0009301CCA3B0000D7 +:105C30008002E73680018898800189108001D8DCD5 +:105C40008001D3EC8001AD408001D3A8EBCD40C0F2 +:105C500049C649D86C09700A1439C05530070E9CE2 +:105C6000E3CD80C0350CF01F00191897CF906C0859 +:105C70002FF8350A8D08300BF01F0015320B300C51 +:105C8000F01F0014EF4C004C1898C16030084929EF +:105C90008F680E9CF30A017C8F28EF5A001CEF6876 +:105CA000002A8FF88F488F58EF4800408F188F08D0 +:105CB0008F38E3CD80C00E9C1097F01F0008CD0BED +:105CC000000076440000025880009200800091D0CD +:105CD0008001D8DC00000260800091E8EBCD4080BC +:105CE000189778485808E08A0004E3CD8080793816 +:105CF0005808C0402B4CF01F000648697208201855 +:105D00000E9C9308F01F0004E3CD80808001D3A88F +:105D100000007644800091E8D4014899F2FC00F834 +:105D2000580CC0A07848201899483008F34800F86B +:105D3000F01F0004D802F34C00F8D802000087F4EA +:105D400080015CDCEBCD40F84B131894E6F700F8CB +:105D50005807C060189B0E9CF01F002EC1D1E6F7BB +:105D600000F05807C4203006C1285806C0706F38AC +:105D70006D39704A7248103AC064E6F800F80E387F +:105D8000EE0617106E070E955807C0900E9C089BE4 +:105D9000F01F0020CEB00E9CE3CD80F8F01F001E57 +:105DA00058065F18580C5F0918971069EA0918001F +:105DB000C201089B306AEECCFFDCF01F0018089B84 +:105DC000306AEECCFFE2F01F00156F3A0899149C80 +:105DD000493BF01F001430080E9C8F088F18F01FED +:105DE00000120E9CE3CD80F8F01F000B1897CE2B0D +:105DF0000C9CF01F000E0C9CF01F000D0C9CF01F63 +:105E0000000DF01F00051897CD51CC6B000087F4F2 +:105E100080015B4080015C4C800091DC8001D3EC10 +:105E20008001AD4080015A1480015938800158BC6E +:105E300080015CDCEBCD40E04905EAF700F458074F +:105E4000C0D1C158F0C600080E9CF01F000D0E9C7A +:105E5000F01F000C5806C0B00C976E285808CF31C0 +:105E60000E9CF01F00070E9CF01F00063008EB4848 +:105E700000F4E3CD80E00000000087F4800158BC0E +:105E800080015CDC580CC04078185B98C110489ABF +:105E900074991298EDB90001F9BC0101F9BB001029 +:105EA000F3DBE038F5F80A09F9BC00015EFC5EFDA1 +:105EB000000087F4489A7498109CF0091604E21CBC +:105EC0000002F9BB0110F1DBE138F5F81A09F9B865 +:105ED0000101F3D8E12C5EFC000087F4489A749825 +:105EE000109CF0091604E21C0002F9BB01EFF1DB83 +:105EF000E128F5F81A09F9B80101F3D8E12C5EFCA4 +:105F0000000087F448887099129CA589E21C000261 +:105F1000F9BA0101F3DAE148F9B90101F1D9E12C4B +:105F20005EFC0000000087F418994868709CE21C31 +:105F30000002F1F8103FF3F81A00F9BC01015EFC11 +:105F4000000087F418994868709CE21C0002F1F880 +:105F50001041F3F81A00F9BC01015EFC000087F45F +:105F600018984859729CE21C0002F3F81A41F9BCD7 +:105F700001015EFC000087F44839300C7298A7C814 +:105F800093985EFC000087F44839300C7298A5D8CD +:105F900093985EFC000087F4D401E06A0100300BA6 +:105FA000482CF01F0003DA0A00007648800091D0E8 +:105FB000EBCD40C04A0A18967498109CE21C00026F +:105FC000C1D0F4F700F85807C1801099E2190020F9 +:105FD000C270A5C8A7A8F4FB00BC95983009497AFF +:105FE000E06CEA60F01F00163008F0061800C100EF +:105FF0003018F0061800C040301CE3CD80C0311CC2 +:10600000EECBFFE2306AF01F000FE3CF90C0312CDF +:10601000EECBFFE2306AF01F000BE3CF90C0A5B8D3 +:10602000F4FB00B89598E06CEA60487AF01F000431 +:10603000CDCB0000000087F480015F7880014558D7 +:106040008001465880015F88D401F01F0002D80209 +:1060500080018040D40148687098E2180002C03185 +:10606000109CD802F01F0003D8020000000087F443 +:10607000800183FCD40148687098E2180002C031A6 +:10608000109CD802F01F0003D8020000000087F423 +:10609000800183D8D431FACD0188E06A0168300BE1 +:1060A0001A9CF01F002CFAC6FE541A901A9CF01F7E +:1060B000002A581CC03029EDD832FAC5FFF8401824 +:1060C000F0081016EA0800081035C4120A97FAC43E +:1060D000FE98ECC1FFF8C09840182EA7F0081016E3 +:1060E000EA0800081037C3326C08204D50280DC94B +:1060F000FB69000C0DD80E9BFB68000D306A1A9CE2 +:10610000F01F0016F01F00162FCD580CCE60EECBFE +:10611000FFFA310AFACCFE88F01F0010E2E8000016 +:10612000310AE8E90000089BE2E20008FACCFE88A8 +:10613000E8E30008F01F000BCD01189B316A0E9CAC +:10614000F01F0004009CF01F0008CB6B29EDD83A2B +:10615000800091D0800160748002E73680018898C9 +:106160008000917C80016054D431FACD018CE06ACA +:106170000168300BFACCFFFCF01F0050FAC5FE504E +:10618000FACCFFFCF01F004E581CC03029DDD8327D +:10619000402858F8E088007FF0081016FAC1FFF494 +:1061A000E20800081031E0820087E06801685018BA +:1061B000EACBFFF8FAC6FFF002973004FAC0FE946B +:1061C000500BC0C85804C36040282EA7F008101612 +:1061D0002EA6E20800081037C4926A08204D502805 +:1061E0000BC9FB69000C0BD80E9BFB68000D306AD5 +:1061F0001A9CF01F0034F01F00342FCD580CCE3005 +:10620000ECCBFFFE310AFACCFE84F01F002E400BCF +:10621000F6E80000310AE0E90000FACCFE84F6E27C +:106220000008009BE0E30008F01F0028CB005804A2 +:10623000CCC10F89E8091800CC810F98F20818002A +:10624000CC410FA9F0091800CC010FB8F2081800D2 +:10625000CBC10D89F0091800CB810FD8F2081800C6 +:10626000F9B40100EE041700CB0B5804C2400A9B9E +:10627000306A089CF01F0013EACBFFF8310AE8CC23 +:10628000FFFAF01F0010FACCFFFCF01F001129DD0F +:10629000D832F00A1110FAC1FFF4F40A1016E2081D +:1062A000000C300BF01F00053108E0690168502830 +:1062B0005019C7FB3FDCC6BB800091D080016074E1 +:1062C0008002E736800188988000917C80016054CC +:1062D000EBCD40C0208DBACBBA8A189B4968709C20 +:1062E000E21C0002C06118970E9C2F8DE3CD80C088 +:1062F0003008FAC6FFF8504850281A99FACAFFFC2D +:106300000C9CF01F000EC111189740285808C0407F +:106310000C9CF01F000B404C580CCE70F01F000975 +:106320000E9C2F8DE3CD80C00C9CF01F0007581CE5 +:106330005F07CECB000087F48001E1308001D3A855 +:10634000800091E880018E9CEBCD40C0201D491754 +:1063500018966E9CE21C0002C0412FFDE3CD80C068 +:106360001A9CF01F000DEF4600FCEEF801105808D3 +:10637000C051301C2FFDE3CD80C0EECCFEECEF3AD7 +:10638000011BEF3B011AF01F0005301CCF4B000032 +:10639000000087F4800177A4800162D0EBCD4080BB +:1063A000201DBA8C48C76E98EDB80001C0402FFD83 +:1063B000E3CF808030181A99300A308B487CF01F68 +:1063C0000008581CCF511B88EF4801202FFDE3CD5A +:1063D00080800000000087F48003B7A08001776C04 +:1063E000D401201D48B91898729CE21C0002C0E03C +:1063F000300AF368004C308BFAC9FFFC486C12F885 +:106400003018F01F0006581C5F0C2FFDD80200004A +:10641000000087F48003B7A88001776CD401203D89 +:10642000BA8C496A749CE21C0002C0312FDDD8028C +:106430001B8B3038F00B1800E089001DE06832003B +:10644000EA18312EE069352EEA19312EFAE90004F6 +:10645000F4F800F8F3DBB008300A5808F1F91A0F25 +:10646000308B30181A99FACCFFFCF01F0005581C2D +:10647000CDE03FECCDCB0000000087F48001776CCD +:10648000D421206D4A0618976C98EDB80001C040E1 +:10649000300C2FADD822584C5FB8E04C00FF5F198C +:1064A0001268C0303FECCF6B300814995028169A10 +:1064B0005008189B1A951A9CF01F0014CEA01A9C25 +:1064C000F01F0013400818945808C0401A9CF01F91 +:1064D0000011402C580CC030F01F000F5814CD9103 +:1064E0006C98EDB80007C0C15837E08B000AEE0881 +:1064F000150648A9300A1009089C930ACCBB301C29 +:10650000CC9B0000000087F48001E1A480018E9CF8 +:106510008001D3A8800091E800007648EBCD40C010 +:10652000202D496718966E98E2180002C2103FF8B5 +:10653000FACAFFFEBAF8BAA8BAB8BAC8BAD8BAE85E +:10654000300BF01F000F6E98EDB80007C0E1583611 +:10655000E08B000CEC081506300A48A9301C100925 +:10656000930A2FEDE3CD80C02FEDE3CF90C0109CB8 +:106570002FEDE3CD80C00000000087F4800164802F +:1065800000007648EBCD40C0202D49F66C9CE21C03 +:106590000002C2703FF8BAF8BAA8BAB8BAC8BAD8F6 +:1065A000BAE8ECFB00F8580BC260F6CCFFE2303AD8 +:1065B000300BF01F0016FAC7FFFE301CF01F00144E +:1065C000303B0E9A300CF01F00136C99300B129870 +:1065D000ED4B0110A3D88D98EDB90007C050301CC9 +:1065E0002FEDE3CD80C0E06A010048BCF01F000B36 +:1065F000301CCF7BFAC7FFFE303A0E9CF01F000321 +:10660000CDDB0000000087F4800162D08001651CB2 +:106610008001648000007648800091D0D43120DD74 +:10662000FB690010FB68000CFAC9FFA8FEF7023CEA +:1066300018956E981696149272307201E218000244 +:1066400072147223C041300C2F3DD832E04B002031 +:10665000E08800043FFCCF9B584CE08B002158DBC6 +:106660005FBA301BFB380010F60818005F09126A89 +:10667000C030580CC1413078FACCFFD4FB680033ED +:10668000F01F007B3008303C50785058F01F0079E4 +:1066900058D6C070E08B00315856C0303FECCD5B0F +:1066A00030683019FB680033EF49011CFACCFFCD8C +:1066B000F01F0071501C1AD31AD41AD1FB38001CD9 +:1066C00004991AD80C9AFB380043FACCFFDC0A9BD9 +:1066D000F01F006A2FCD580CC1B140585808C05067 +:1066E000FACCFFECF01F0066407C580CCAD0F01FBB +:1066F0000065300CCAAB5906C6C0E0460020CCF19C +:1067000030283029FB680033EF49011CCD0BFACC4F +:10671000FFECF01F005D500C40585808C050FACCF8 +:10672000FFECF01F0057407C580CC030F01F0055A4 +:1067300040085818C8915800EFF81009F9B9010835 +:10674000F1D9E138EFF81A093009FB380010F208E6 +:106750001800C051F9D5B008F01F004C6E98EDB884 +:106760000001C0514C18F0F800FC501840185808AF +:10677000C080FB3A0010FB3B000C089CF01F00445B +:10678000306A089BEECCFEECF01F0042301AFACBC8 +:10679000FFF4EECCFEE6F01F003FEECCFEE5301A33 +:1067A000FACBFFF0F01F003B3018EF480110FB68F8 +:1067B00000326E9C4AD7EDBC0001C120EDBC000741 +:1067C000C061FB38000C50285845C1E1301CC3DBC8 +:1067D00030483039FB680033EF49011CC68B300864 +:1067E0004ADB1099109A109CF01F002CC3401ADC51 +:1067F0003018FAC9FFCA300A308B4A9CF01F0029B2 +:106800006E9C2FFDCDCBEA0915064A780C9AF0094B +:106810000007049BEF650026EF560024EECCFFFC3A +:10682000F01F001C089BEF610036306AEECCFFD8E9 +:10683000F01F00185803C110069B308AEECCFFD21F +:10684000F01F001440288FF0EF68003830188F08D0 +:10685000109CCFBA6E9CCB3B069B308AEECCFFD20D +:10686000F01F0012CF0B0000000087F4800177A416 +:106870008001EF6C80017BD88001E2148001D3A8F5 +:10688000800091E880018E9C8001641C800162D0B0 +:10689000800091DC80015E8480016AF48003B798F7 +:1068A0008001773000007648800091D0EBCD40C069 +:1068B000300749A60E98A7682FF7EC08000B76085A +:1068C0005808C0F10E985847CF714957EF3C004C1B +:1068D000F01F0014EEFC0100F01F0013E3CF90C086 +:1068E00076F8F6C9FFD2F73C00261AD8F6C8FFD8CA +:1068F0001AD91AD8F7390036F6CAFFFC1AD9F73870 +:106900000038F7390027F71B0024F01F00082FCDAF +:10691000581CCD90E3CF80C000007648000087F47B +:10692000800163E0800163488001661C7808301CA8 +:10693000F80A094C201C106C5EFCD70348787008DC +:106940005808C0901838C041C078103CC05070B88A +:106950005808CFC15EFD5EFF0000778C189A48F89A +:10696000709CE21C00025E0C70A8EDB80000C03004 +:10697000305C5EFC48AC780B583BE089000D300978 +:106980004888F00B003891189109950BF6C8FFFF65 +:1069900099085EFF3FDC5EFC000087F4000077880A +:1069A0000000776848D972A8EDB80000C1313008FE +:1069B000780A99D848ABF60A003A741999E974181C +:1069C000F8C9FFCC910C7808301CF60800389119F2 +:1069D0005EFC305C5EFC0000000087F4000077681D +:1069E000EBCD40C0189778B95809C18078C893C8D2 +:1069F0006EC891096E3C580CC050F01F000B300857 +:106A00008F3833CA6EA635AB0E9CF01F00080C9B66 +:106A10000E9CF01F0007E3CF80C078C94858911939 +:106A200078B9CE7B800091E8800091D0800183B05E +:106A30000000778CEBCD40801897580CC180789877 +:106A40005D1848F972095809C051C11872B958093E +:106A5000C0E01237CFC16E785808C0B06E3C580CF9 +:106A6000C060F01F000830088F588F38E3CF908047 +:106A70000E9C301BF01F0004E3CF90800000778C49 +:106A8000800091E8800169E0EBCD4080496972A8FF +:106A9000EDB80000C040305CE3CD8080493870091B +:106AA0001839E08A001E4928F00C00376E09580991 +:106AB000C15072DA580AF3F8000EEFF80A01F3FA3F +:106AC000000DF3F8100EF5F81A0E72E8129C910AF8 +:106AD000F01F00086E095809CED1E3CF90803FCC5B +:106AE000E3CD8080000087F400007788000077689D +:106AF00080016A34EBCD40F81897169614951294DD +:106B0000109333CCF01F000CC1403008990799B89E +:106B10009938995899889996994599649973487ABA +:106B2000301899A8741999C9930CF8C8FFD495180E +:106B3000E3CD80F8800092000000778CD401202DF6 +:106B4000500A48C972A8EDB80000C040305C2FED73 +:106B5000D80248981A99F00B032A3048FA08000B1B +:106B6000F01F0006581CF9BC0001F9BC01FECF0B58 +:106B7000000087F4000077488001F1D8EBCD40C0D9 +:106B8000201D4AC618976CA8EDB80000C441580CE7 +:106B9000C3F0789B580BC3C0780A580AC3954A695A +:106BA000F20A033850085808C061C1A870D85008CC +:106BB0005808C1601037CFB1F40815036EDA580ACF +:106BC000F3D8E009EFF8000EF3F80A01EFF8100E21 +:106BD000F5F81A0E400870DA70E9930A6E9B3F9838 +:106BE0008F18580BC0300E9C5D1B6E8B581BC0500D +:106BF000582BC150580BC0516E2A1A9CF01F000F21 +:106C00000E9C301BF01F000E2FFDE3CF90C02FFD18 +:106C1000E3CF90C0305C2FFDE3CD80C0ECF801B82D +:106C20000E38CEF130094838F14901B8CEAB00003A +:106C3000000087F40000776880016B3C800169E008 +:106C4000D40148C9169E72A8F1D8C001C031305C89 +:106C5000D8024898304A76A9F00C032C1ADAF6C804 +:106C6000FFF833CAF01F00052FFD581C5F0CD80237 +:106C7000000087F4000077488001F164D431204D92 +:106C800030084931189650285018FAC5FFF4FAC256 +:106C9000FFF802901A93FAC4FFFCC098E006032A9A +:106CA000F01F000C0E9B401CF01F000B3049049B92 +:106CB0000A9AE206032CF01F0009304818970A9937 +:106CC0001A9B089C5817CEB02FCDD83200007748B9 +:106CD0008001F1D880016B7C8001F0B4EBCD40E005 +:106CE000201D49356AA8A1A8300A49298BA8149704 +:106CF000930A14984906EC08002C2FF748FA303B09 +:106D0000F01F000F581CC0F10E985887CF5148D87B +:106D1000300991189109301B1A9CF01F000B2FFDB0 +:106D2000E3CD80E06AA8A1C88BA8CF2B000087F430 +:106D300000007788000077488001692C8001F05CB2 +:106D40000000778C8001695C5EFD5EFFEBCD4080CA +:106D5000189778785808C030788C5D180E9CF01F12 +:106D60000003E3CD80800000800091E8D4314B1017 +:106D70001895169260095809C58030047258721926 +:106D80000A38F7B400FF5809CFA10891E80C1502A2 +:106D9000F01F00291893C46060075807C2303006FE +:106DA000C0486E175807C1E06E580A38CFB10E9C24 +:106DB000F01F0022E60609276E485808C0F06E1939 +:106DC0005809EFF80002E1F80A01EFF90001EFF8C5 +:106DD0001002F3F81A026E2891092FF66E17580761 +:106DE000CE415804C1A006953006C0380836C154BB +:106DF0006A07049C6E686E8B5D18491B0E9CF01F21 +:106E000000112FF62FC56E485808CF100E9C48CBA6 +:106E1000F01F000C0836CED5069CF01F000B029C1C +:106E2000D8321891029CD83212941291CB0B0000E8 +:106E300000007794800092008001463A80016D4CFA +:106E400080014642800091E8EBCD4080324CF01F3B +:106E500000081897C080324A300BF01F00060E9CC5 +:106E6000F01F00050E9CE3CD8080000080009200A2 +:106E7000800091D080014652EBCD40FC18961695CB +:106E80001494129310924077F01F000AC100995693 +:106E900099359964998799739942487A3008991875 +:106EA00074199929930CF8C8FFFC9518E3CD80FC60 +:106EB00080016E4800007794D431FACEFFDC189739 +:106EC00016901491129310927C157C04580CC26099 +:106ED00078095809C26049A66C085808C051C09882 +:106EE00070185808C0601039CFC13018109CD832C3 +:106EF000F01F0014C13099509931996399859972A6 +:106F00009944300899186C199929930CF8C8FFFC1A +:106F10008D188F0C3018109CD8323008109CD83245 +:106F200008981AD50499069A029B009CF01F000647 +:106F30002FFD580C5F188F0CCDAB0000000077942C +:106F400080016E4880016E78EBCD40404856ECCC15 +:106F5000FFF8F01F000530088D168D08E3CD804046 +:106F600000007794800145D6EBCD40807847785A71 +:106F70006E18103AE0880004E3CF8080783B6E0CF6 +:106F8000F01F000B6E285808C0406E1B6E0C5D1879 +:106F90006E3CE04C002BC050300A149BF01F0005E3 +:106FA0000E9CF01F0005E3CF90800000800091DC74 +:106FB00080014658800091E8EBCD40C0203D30086C +:106FC00018979928990814961A9C308AF01F001176 +:106FD000FACBFFF80E9CF01F00102FED580CC101EA +:106FE0006E085808C0400E9CF01F000C6E2C580C08 +:106FF000C040F01F000B300C2FFDE3CD80C05806C1 +:10700000FBF81000EDF81A002FFDE3CF90C0000050 +:107010008002E7368001DE6C8001D3A8800091E811 +:10702000EBCD40C0189778185B98C0C0783B580BE0 +:10703000C17078465806C04078685908C050E3CF00 +:1070400090C0E3CF80C0785A590AE08800153FF815 +:107050008D28ECCCFFF4F01F000CE3CF90C0784CEF +:10706000580CCEE06E685908CEB12F4CF01F0006C8 +:10707000E3CF90C06C0CF01F00056E5830198D18CE +:107080008D29CE8B8001A25C800091DCEBCD40E0AD +:10709000201D1697E04C0081E0800088E08A0027E0 +:1070A000E04C0083C2F0C2B4760A1A9C300BF01F89 +:1070B0000064E08A004F585CC490314CF01F0061BE +:1070C0004008913C4009723A580AC7A06E0830093E +:1070D000990899399919EF380008992840083149D9 +:1070E000301A91594008911AC1D8584CC4A0E04CAC +:1070F0000080C330300C2FFDE3CD80E0E04C0085F4 +:10710000CFA16E0A300B1A9CF01F004DE08A0022BE +:10711000585CC1C0EF3900084008300A9119400896 +:10712000915A301B400CF01F0048581CCE41400CB7 +:10713000F01F0046C0B0400B76785808C070300C85 +:10714000F01F0043581C5F0CCD7B2FFDE3CF90E078 +:107150003FEC2FFDE3CD80E07645760A1A9C300B9C +:10716000F01F0037FE9AFFF6585CCF005805C49117 +:1071700040089135400993550FCA4008911ACD2B0C +:107180007626760A1A9C300BF01F002DFE9AFFE23D +:10719000585CCDC05806C1914008301A913640095C +:1071A00093564008911ACBEB760A1A9C300BF01FCD +:1071B0000024FE9AFFCF585CCC900FC9CAEB3FD891 +:1071C00093184009935ACAEBECC5FFED0A9CF01FD7 +:1071D000001D4008913C1899400A743B580BC2406E +:1071E0006E080C9A93089336EECBFFF430162F0CF2 +:1071F0009316F01F00184008915540099316C92BAB +:1072000040060A9CF01F000F8D3C4009723C580C50 +:10721000C1000A9A6E5BF01F000F400891550FC91C +:1072200040089119C7FB3FD895184009935BC7AB3D +:107230003FD893184009935CC75B000080016B3C0A +:1072400080009200800169A48001693C80016C404B +:10725000800091DCEBCD40FC4C151696189476021C +:107260006A095909E088001B4BE7C15878BA580AE7 +:10727000F9F8000CEFF80A01F9F8100CF5F81A0CFF +:10728000201978C8910A8B09F01F00376A0959093B +:10729000E08800056E0C580CCEA16C2338086C36C3 +:1072A000ECCCFFCCF0041800C260F01F003018973F +:1072B000C2F0B8C464080C9A990899A6069B2CCC15 +:1072C0008F9CF01F002B3808F0041800C2303818CB +:1072D000F0041800C2B04A3B30088FB8761A8FCA43 +:1072E0009507EEC9FFD46A0897192FF8301C8B0850 +:1072F000E3CD80FC64495809CD90ECC8FFC9E01883 +:10730000FFFCF009000CF01F00191897CD31E3CDF8 +:1073100080FC318A049BEECCFFF4F01F00156E7ADE +:107320008F2A580AC1018F8ACD7BEEC6FFF4318ABD +:10733000300B0C9CF01F000F049B0C9C308AF01F3C +:10734000000CCCAB6EA82FD8E018FFFC6E9C100C84 +:107350008F8C645BF01F0006CBFB0000000077A061 +:1073600000000234800091E880009200800091DCEF +:10737000800091D0D421207D1297FACEFFD04B29E6 +:1073800018947298EDB80001C040300C2F9DD8229F +:10739000FCE800003006BB295C7A50265046FAC54E +:1073A000FFF8FAC9FFE00A9CF01F00282FED580CE7 +:1073B000C2D05807C0B08F368F5640680E9B0C9CC9 +:1073C0008F28F01F0023581CC2E11A9CF01F0021D7 +:1073D0005BBCC29040076E4C580CC070F01F001E82 +:1073E00030088F388F4840075807C0401A9CF01F5C +:1073F000001B402C580CC030F01F00175804FBF83D +:107400001006E9F81A002F9DDA2A40085808C040F3 +:107410001A9CF01F0012402C580CCB80F01F000E5D +:107420002F9DD82A40085808C0401A9CF01F000B16 +:10743000402C580CC0313FDCCAABF01F00073FDCCA +:10744000CA6B0000000087F48001DF7480016C408B +:1074500080018E9C800091E88001D3A8EBCD40E0B4 +:10746000208D149616951897308A300BF01F001354 +:1074700059F6E08800052F8DE3CF80E00A9B0C9A37 +:107480001A9CF01F000FFAC9FFE030080C09FACC73 +:107490000001F368FFE0F8C6FFFF300B30AA0C9C38 +:1074A000F01F000832EB0ECC0C9CF01F0007CF4100 +:1074B0002F8DE3CF90E00000800091D0800091DC20 +:1074C0008000917080009164D43120AD189E109599 +:1074D00014974C781292709CE21C0002C0511896CE +:1074E0000C9C2F6DD832169AFAC6FFE41C9B0C9C9C +:1074F000F01F00400C9BFAC3FFFCFACAFFDC069C9D +:10750000F01F003D1896581CCEC15807C2F10E91CD +:107510000E90069CF01F0039401818945808C0407F +:10752000069CF01F0037403C580CC030F01F00355F +:107530005BB4C4D05807C170E06B0BB8E0CCFFF46B +:10754000F01F00315BDCC3A0582CC07060285BF8D2 +:10755000C04060188508CC5B029C301B3006F01FD1 +:10756000002BCBFB40988B08CBCB3FF8310C8B0822 +:10757000F01F002718941890C280F8C8FFF4500834 +:10758000109CF01F00248907640930088919089AA3 +:1075900031094A1B109CF01F00211891C20040982D +:1075A000189B9928300CF01F001E581CCB300C9BE8 +:1075B000029C3FD6F01F001BC94B029C301BF01FE2 +:1075C000001340988B08C8DB3FD6C8BB5807CFD004 +:1075D000029C301B3FD6F01F000DC83B400CF01F33 +:1075E0000012089C3FD6F01F0007C7BB000087F4BD +:1075F0008001745C80016FB880018E9C8001D3A8EB +:10760000800091E88001A22880016B7C80009200BC +:107610008001A28C8001702080016AF480016C409E +:10762000800169E08001A27CEBCD40E0209D49F81B +:1076300018991495709CE21C0002C06118960C9C6D +:107640002F7DE3CD80E0169AFAC6FFE8129B0C9CD2 +:10765000F01F00170C9B1A97FACAFFE01A9CF01F44 +:1076600000151896581CCEC11A9CF01F0013400834 +:1076700018965808C0401A9CF01F0010402C580C57 +:10768000C030F01F000F5BB6C0313FD6CD9B300C31 +:107690008B3C8B5C40880A9B8B28F01F000A581C8F +:1076A000CCF03FD6CCDB0000000087F48001745C96 +:1076B00080016FB880018E9C8001D3A8800091E882 +:1076C00080016C40EBCD40FC1895169414921293F7 +:1076D00010974076310CF01F0012C1D099369905F1 +:1076E00099149927189A3008310948EB109CF01F1B +:1076F000000E1896C100069B049C0C9AF01F000B0C +:107700001897581CC0500C9C301BF01F00090E9C91 +:10771000E3CD80FC30070E9CE3CD80FC800092001E +:1077200080016F6880016AF480017628800169E039 +:10773000EBCD406E202D4086129310951491169A31 +:10774000189B1A9CF01F0008069B0C99FAE2000097 +:107750000A9ABB23029CF01F00052FED2FEDE3CD0D +:10776000806E00008001745C80017374EBCD406812 +:10777000202D129310961495169A189B1A9CF01FA0 +:107780000008FAE800000C9ABB29069B0A9C300905 +:10779000F01F00042FED2FEDE3CD80688001745CB5 +:1077A00080017374EBCD40401896303CF01F00040C +:1077B0007848301C8D08E3CD804000008001EF6CDC +:1077C000EBCD406048A618952F060C9CF01F0009D1 +:1077D000303CF01F0009310AF8CBFF8C0A9CF01FE7 +:1077E00000070C9CF01F0006E3CF9060000087F4B8 +:1077F000800145F88001EF6C800091DC800145FA42 +:10780000D42149461894ECC5FFF00A9CF01F0012E1 +:10781000ECF700F85807C0C06F38707B2F4B322A46 +:10782000089CF01F000E0A9CF01F000DDA2A303C65 +:10783000F01F000CC060F9380088EE081800C06026 +:10784000ECCCFFF0F01F0006D82AF8CBFF78CE8BE7 +:10785000000087F4800145F88002E736800145FA90 +:107860008001EF6CEBCD40E049061895ECC7FFF0C6 +:107870000E9CF01F000F303CF01F000EECF600F8DD +:107880005806C0C0ECCBFFE2306A0A9CF01F000A29 +:107890000E9CF01F000AE3CF90E00E9CF01F000743 +:1078A0000C9CE3CD80E00000000087F4800145F8E7 +:1078B0008001EF6C8002E736800145FAEBCD404055 +:1078C000209DE04B0020E08B001CBABB580BC1B1DF +:1078D0003FF8BAA849162F060C9CF01F0011303C47 +:1078E000F01F0010322AFACBFFFEF8CCFF78F01F11 +:1078F000000E0C9CF01F000D2F7DE3CF90402F7DDC +:10790000E3CFC0403008169ABAA8189BFACCFFFC07 +:10791000F01F0007CE0B0000000087F4800145FC3B +:107920008001EF6C8002E736800145FE800091DC2B +:10793000EBCD40E01895303CF01F000B1897C110BC +:1079400048A62F060C9CF01F000A0A9B306AEECC5A +:10795000FF56F01F00080C9CF01F0007E3CF90E0DB +:10796000E3CD80E08001EF6C000087F4800145FCEE +:10797000800091DC800145FED401F01F0002D80296 +:1079800080017930EBCD40EC202D18961697586B7E +:10799000C0503FFC2FEDE3CD80ECFACCFFF8E06364 +:1079A000312EEA13322EE0623100EA12312EB92371 +:1079B00016980C99300A308B1A9CF01F0010301C5E +:1079C000F01F000F48F81893F0C5FFF00A9CF01F55 +:1079D000000E5803C0C00E9A0C9B069CF01F000BB3 +:1079E0000A9CF01F000B2FEDE3CF90EC0A9CF01FD8 +:1079F0000008069CCD0B00008001776C8001EF6CC5 +:107A0000000087F4800145FC800091DC800145FE88 +:107A1000EBCD40E01897303CF01F0018EEC8000195 +:107A200018955818E0880004E3CF80E058175F09E4 +:107A300049366D1858385F0AF5E90009C0E1582742 +:107A40005F08F5E80008C030E3CF90E0F01F000DBC +:107A5000C0A18B47E3CF90E0F01F000B6D185838A2 +:107A60005F0ACEEB303CF01F000578485818CF2055 +:107A7000F01F0005CEFB00008001EF6C000087F4D2 +:107A800080017BC88001F340EBCD40F81696189337 +:107A900076085858E08A002A49A83064F0C5FFF0FB +:107AA00097040A9CF01F0018301CF01F001818974C +:107AB000C160202D189B089A1A9CF01F0015F01F1A +:107AC00000152FED580CC1616C0A0E9B069CF01F2F +:107AD00000120A9CF01F0011E3CF90F80A9CF01FDF +:107AE000000F0E9CE3CD80F830683FFC9708E3CD93 +:107AF00080F80A9CF01F00093FBCE3CD80F800002D +:107B0000000087F4800145F88001EF6C8002E736C1 +:107B1000800188B0800091DC800145FA0050F200BD +:107B2000000FAC003008F9480320F94803245EFC3C +:107B3000EBCD40C016971496F8FE0320FCCBFFFF58 +:107B4000F60A141FE069851FEA1951EBF60904488B +:107B5000A5591419F8FA0324F2091064121B143BF6 +:107B6000C0B0F94B0320F80E0927FCC8FF9CF808A9 +:107B70000926E3CF90C0E3CF80C0D401189EF8FC63 +:107B80000324FCF803201838C1F0F8C8FF9CFC0C53 +:107B9000032CFC08032930089709E069851FEA19BE +:107BA00051EBFCFB0324FC0B09282FFBF6090448CE +:107BB000F60A141FA5591419F2091064F6090109EF +:107BC000FD490324D802D80A4838F0F900F85809CA +:107BD0005F1C5EFC000087F43018198CF00C180054 +:107BE0005F0A3058F00C18005F09124AC0F1306883 +:107BF000F00C1800C0B03028F00C1800C080584CB1 +:107C0000F9BC0003F9BC01005EFC5EFF302C5EFC99 +:107C100048C8F0F800FC5818C0D0C0635828C0D03D +:107C20005838C0505EFF580C5F0C5EFC583C5F8CAF +:107C30005EFC581C5F8C5EFC582C5F8C5EFC000068 +:107C4000000087F4EBCD40C01897169E740A580ABE +:107C5000C0D0753A580AC0A0747A580AC0704FF85C +:107C6000F0F901045889E0880004E3CF80C04FC8D0 +:107C7000F009032F94D8EDB80004CF813008301CF0 +:107C80009D08E3CD80C0F53900C83FF8F009180021 +:107C9000CED0F51B00D2580BCE90F51C00D030266C +:107CA000F4FA00D8F40C002811B9EC091800E080AF +:107CB00000BFF8C8FFFF3009F40800280C9CF0CA88 +:107CC000FFFDC07815882FCAF8081800E08000B0C2 +:107CD0002FF91639CF85CCABF53900C83FF8F0093C +:107CE0001800CC40F51B00D2580BCC00F51C00D07E +:107CF0003016F4FA00D8F40C002811B9EC09180079 +:107D0000E08000A4F8C8FFFF3009F40800280C9CAC +:107D1000F0CAFFFDC07815882FCAF8081800E08067 +:107D200000952FF91639CF85CA1BF53900A43FF805 +:107D3000F0091800C9B0F51B00B2580BC970F51C4A +:107D400000B03026F4FA00B8F40C002811B9EC09A0 +:107D50001800C660F8C8FFFF3009F40800280C9C22 +:107D6000F0CAFFFDC06815882FCAF8081800C58042 +:107D70002FF91639CF95C7ABF53900A43FF8F009B4 +:107D80001800FE90FF74F51B00B2580BFE90FF6FB9 +:107D9000F51C00B03026F4FA00B8F40C002811B934 +:107DA000EC091800C3D0F8C8FFFF3009F408002818 +:107DB0000C9CF0CAFFFDC06815882FCAF80818008F +:107DC000C2F02FF91639CF95C51BF53900A43FF83D +:107DD000F0091800FE90FF4BF51B00B2580BFE9007 +:107DE000FF46F51C00B03016F4FA00B8F40C002879 +:107DF00011B9EC091800C220F8C8FFFF3009F408D7 +:107E000000280C9CF0CAFFFDC06815882FCAF8082E +:107E10001800C1402FF9123BFE99FFF9C27B3028B0 +:107E2000AE8830199D09129CE3CD80C03028AE8801 +:107E30003029301C9D09E3CD80C03018AE88301940 +:107E40009D09129CE3CD80C03018AE883029301CCB +:107E50009D09E3CD80C00000000087F48003B7B027 +:107E60003028F00C1800C390E088001B3048F00C5C +:107E70001800C3503058F00C1800C21030093028D8 +:107E8000F00B1800C160F00B1800E08B001B3018DD +:107E9000F00B1800C100300812385F5C5EFC30182F +:107EA000F00C1800CEC130193028F00B1800CEC1EC +:107EB0003038C02830181039CF045EFE3029CE0B80 +:107EC0003048F00B1800C0703058F00B1800CE414D +:107ED0003028CF2B3048CF0B3039CD2B3049CD0B4C +:107EE000D431307977387075B8891894581AC0D061 +:107EF000C043582AC4C0D83A7738707A94D9EDB9BB +:107F00000004E0800087DA3AEB3900A43FF8F0097A +:107F10001800CF20EB0800B03009F2081900CF405C +:107F2000149112923006307B30533060C1A8E007C4 +:107F30001800C2B03028F0071800C7A03048EE087B +:107F40001800F9BC0003F9BC0100F01F003CE9F780 +:107F50001E002FF6EB1800B00C38FE9AFFD6098BE6 +:107F6000EAF800B8F006002811B70E9CF01F0034A4 +:107F7000FE9AFFF1E20718005F08E60718005F09A4 +:107F80001248E4081800CD40301CCE0BEB3900C875 +:107F90003FF8F0091800CB00EB0800D03009F208D8 +:107FA0001900CB2012913006307B301230533060F4 +:107FB000C1A8E0071800C2B03028F0071800C3A01D +:107FC0003048EE081800F9BC0003F9BC0100F01FAE +:107FD000001BE9F71E002FF6EB1800D00C38FE9AB4 +:107FE000FF94098BEAF800D8F006002811B70E9C20 +:107FF000F01F0013FE9AFFF1E40718005F08E60780 +:1080000018005F091248E2081800CD40301CCE0B62 +:10801000307B305CF01F000AFE9AFF77301CF01FA7 +:108020000007FE90FF723058301CA888D832302CE0 +:10803000C8DB302CCCDB000080017C1080017E602E +:108040003008484A48499508951893085EFC000096 +:10805000000089EC00008C5CEBCD4080189E198BF1 +:10806000580BC130300A3017149CFC0A00092FFA53 +:1080700013982018EE080948F9E81008F9D8B0104C +:10808000163ACF45E3CD8080169CE3CD80807938C9 +:10809000707A3308F53900C8F0091800C0205EFD79 +:1080A000F51800D4E218000C5848C0E0E08A000837 +:1080B0005888C08058C8CF41310C5EFC5808CF01A9 +:1080C0005EFF304C5EFC302C5EFCD703EBCD40E015 +:1080D00030081896109A169C8D084927760E301590 +:1080E000109BC0A8F80A00082FFA11C9EE0B070868 +:1080F000A7D91039C0A01C3ACF652FFB58DBE08B05 +:10810000000E300A780ECF8B6C08EA0B0949124832 +:108110008D082FFB58DBFE98FFF6E3CF90E00000C0 +:108120008003B7F4EBCD40C030069906149EF8C723 +:10813000FFFC1799EC091800C0E00C9AF60A000839 +:1081400011A90EC978082FF899082FFA1798143832 +:10815000FE99FFF61D993008F0091800C0F0300BA9 +:10816000FC0B000811A9EE0B0B0978082FF89908F1 +:108170002FFB1D981638FE99FFF5E3CF90C0EBCD8D +:1081800040F816941897780B68065806E08A002C79 +:10819000F6C8FFFCE8C5FFFCF8080003300E2FCC42 +:1081A000EA0E070A580BE08A00130FC81458F1D8DA +:1081B000C007C1503009C078F80907081458F1D831 +:1081C000C007C0D02FF9123BFE99FFF8597BE08B16 +:1081D000000706CA6E0B2FFB8F0B68062FFE1C369E +:1081E000FE99FFE0E3CF90F8EBCD40FE1894169295 +:1081F0001497780676055805E08A0025ECC8FFFC40 +:10820000F6C3FFFCF8080001300EF4CCFFFCE60ECC +:10821000070A6E0B580BE08A00120FC81458F1D8E9 +:10822000C007C1203009C078F80907081458F1D8F0 +:10823000C007C0A02FF91639CF852FFE1C35FE9937 +:10824000FFE8E3CF90FE5976FE9BFFF902CA68066D +:108250002FF689062FFE64051C35FE99FFDACF2B19 +:10826000D42178045804E08A0027F8C7FFFC493875 +:108270000F8B700C11C6580CE08A0017F0C5FFFC7C +:10828000300EEDEB2008F1D8C007C0F00A9A300993 +:10829000C0782FFA15881658F1D8C007C0602FF99A +:1082A000123CFE99FFF8D82A2FFE2FF7083EC03463 +:1082B0000F8BCE8BDA2A00000000023CD4211897E5 +:1082C00076055805E08A0026F6C6FFFCF8CEFFFCCE +:1082D000300B1694C0482FFB0A3BC1B4EC0B070AC5 +:1082E000E80A1800CF946E0C580CE08A00120FC8F0 +:1082F0001458F1D8C007CF003009C078FC0907082E +:108300001458F1D8C007CE802FF91839CF85D82A54 +:10831000DA2A3248F00C1800C110E08800113488C5 +:10832000F00C1800C0B0E08800183608F00C1800F7 +:10833000C05036C8F00C1800C0E15EFF3128F00CC8 +:108340001800CFC03188F00C1800CF8030C8F00C76 +:108350001800CF405EFD3308F00C1800CFC1CEEB03 +:10836000EBCD40E078055805E08A0010F8C6FFFC28 +:108370003007C0380A37C0940D8C2FF72FF6F01F46 +:108380000004CF90E3CF90E0E3CF80E08001831240 +:108390004838F14B01DCF14C01D85EFC000087F459 +:1083A0004838F14B01ECF14C01E85EFC000087F429 +:1083B000EBCD40801697581BC050582BC080E3CFA0 +:1083C0008080F01F00050E9CE3CD8080F01F00022E +:1083D000E3CF9080800091E8D401580CC070486BC6 +:1083E000760AE04A0168E0880003D80AF01F00031B +:1083F000DA0A0000000089EC800091DCD401580CFE +:10840000C0A078185908E08B0007780AE04A016894 +:10841000E0880003D80A189B482CF01F0003DA0AF2 +:10842000000089EC800091DCEBCD4040350A1896C5 +:10843000F01F000330088D48E3CD8040800091DCC0 +:10844000D401306AF01F0002D8020000800091DCE5 +:10845000D401300CF01F0002DA0A000080016C7CAD +:10846000D421201D189414971296169A1095189BD3 +:108470001A9CF01F001CE08A0032585CC27058063B +:108480005F1858075F191268C241300840099338D5 +:10849000400A95584008301B9115400CF01F0012FF +:1084A000581CC100400C78785808C090189B089C54 +:1084B000F01F000E581CC0A03FDCC098301BF01FFE +:1084C000000C400C78785808CF21301C2FFDD822A2 +:1084D0004008913740099356CDEB3FEC2FFDD82251 +:1084E00080016B3C800169A480016C40800169E0DF +:1084F000EBCD40C018971696303CF01F00283DD8B1 +:108500003079AE88AE9935083F29300BAEB8AEC988 +:1085100030283019AED8EF6B0008AEABAEEBAEF939 +:1085200058065F1AF8F900BC58095F181468F60875 +:108530001800C310F8F800D05818F9B80008EFF880 +:108540000E08F8F800CC5818EFF80808F9B900043C +:10855000F1D9E038EFF80E08F8F800C85818EFF82D +:108560000808F9B90002F1D9E038EFF80E08F8F878 +:1085700000C45818EFF80808F9B90001F1D9E0383B +:10858000EFF80E08F8F900D4EF380008F1E91048C8 +:10859000EF680008E3CD80C08001EF6CEBCD404078 +:1085A0001896303C5C76F01F000E5876E088000488 +:1085B000E3CF804048B8F006032FF90C00C6E3CDA6 +:1085C0008040F90C00CAE3CD8040F90C00CEE3CD29 +:1085D0008040F90C00D2E3CD804000008001EF6CB8 +:1085E0008003B7D4D40130DCF01F0002784CD802ED +:1085F0008001EF6CEBCD40FC207D31CA1893300B2D +:108600001A9C1A92F01F001266045804E08A00189F +:10861000E6C6FFFC30070D852FF72FF60A9CF01FEA +:10862000000DC0A14008FACAFFE4F0C9FFFF100A1C +:108630005009F565FFE80E34FE99FFEF1A9B069C82 +:1086400031CAF01F00052F9DE3CD80FC800091D042 +:1086500080018312800091DCEBCD40E0207D300B67 +:10866000189731CA1A9CF01F00171A956E0B580BF9 +:10867000E08A0024300AFAC6FFFCEEC9FFFC0C9C1D +:10868000149EC0582FF9143BE08A000D2FFA13886E +:10869000FC081800CF8418C82FF96E0B143BFE9904 +:1086A000FFF7F80601061A9B50060E9C31CAF01F10 +:1086B00000062F9DE3CD80E0FAC6FFFC0C9CCF2B7B +:1086C000800091D0800091DCD421129618971695E5 +:1086D0001494580CC1205809C111314CF01F0009E5 +:1086E000C0C09907B8C599249936487A7419994930 +:1086F000930CF8C8FFF49518D822F01F0004D82274 +:1087000080009200000077A4800147E0EBCD40C0DC +:108710001896580CC110308CF01F000C1897C090A0 +:108720000C9CF01F000B8F1C1898C0A030188F08ED +:108730000E9CE3CD80C018970E9CE3CD80C00E9CAC +:108740001097F01F0004CF5B800092008001D920B9 +:10875000800091E8EBCD40C049566C075807C180B6 +:108760006E395809EFF80004EDF80A01EFF810042B +:10877000F3F81A046E4891096E2A0FCB6E0CF01FA5 +:10878000000D0E9CF01F000C6C075807CEA148B8D6 +:10879000F0C7FFEC0E9CF01F000AC071302CF01FD8 +:1087A00000090E9CF01F0008E3CD80C0000077A4F4 +:1087B000800147E0800091E8000087F4800145DCFB +:1087C0008001478C800145ECD4014848300991185C +:1087D0009109F01F0003D802000077A4800187549C +:1087E000EBCD40FE4A0618976C0816951494201895 +:1087F000E0480167E0880004E3CFC0FE580A5F1933 +:108800006C1A300B580A5F181268F6081800CF501F +:10881000183A5FB858FC5F891268F6081800CED085 +:1088200016910C92C0B82FF7641958F75F8A0E3969 +:108830005FB81468E2081800CE00EE031016306A24 +:10884000E6CCFFF80A9BEC0C000CF01F0008CEC130 +:10885000485B089C060B310A2F2BF01F00050E9C6D +:10886000E3CD80FE000089EC8000917C800091DCEB +:10887000EBCD40E018951697300C18960E9A0A9B8F +:108880002F07F01F0005C0452FF62FFCCF8B0C9C47 +:10889000E3CD80E0800187E0D401306AFACCFFFCB0 +:1088A000FACBFFF4F01F00025F0CD8028000917C2D +:1088B000EBCD4068205D3FF8FACAFFDC15D9FB68B4 +:1088C0000013FB68000EFB68000FFB680010FB68DC +:1088D0000011FB680012FAC6FFF8ACD974088D08C5 +:1088E00015C9FAC3FFFEACC93065FACBFFF20A9A8C +:1088F000069CF01F00060A9A069B0C9CF01F0004C1 +:108900005F0C2FBDE3CD80688002E7368000917C4C +:10891000D401FACBFFFCF73900241788F0091800BE +:10892000C020D80AF73A00251798F4081800CFA1FC +:10893000F6CCFFFE2DABF01F00035F0CD802000049 +:108940008000917CEBCD4040211D303CF01F001E8B +:10895000322A1896FACBFFB4FA0A000CF01F001B5B +:10896000ECC6FF78ECE80000FAE90000ECEA000849 +:10897000FAEB0008ECE80010FAE90010ECEA001845 +:10898000FAEB0018ED380020FB680020ED390021DB +:10899000FB690021FB3A00221B88F4081800C05034 +:1089A000300C2EFDE3CD80401B9AFB380023F408E9 +:1089B0001800CF71FACBFFFEFACCFFDCF01F0004E9 +:1089C0005F0CCF0B8001EF6C8002E7368000917C5A +:1089D000EBCD40E0203D4B571896EF3900943FF81F +:1089E000F0091800C3507938707C2F4CF8E800006B +:1089F000209DFAE90000F8EA0008FAEB0008F8E820 +:108A00000010FAE90010F8EA0018FAEB0018F9383B +:108A10000020FB680020F9390021FB690021F01FCC +:108A200000242F7D580CC0412FDDE3CD80E0202DA8 +:108A3000EEC7FF4A306A0E9B1A9CF01F001EF01F03 +:108A4000001E2FED580CC1C02FDDE3CF90E0F8CB16 +:108A5000FFE2306A1A9CF01F0017EECBFF4AFAC6FD +:108A6000FFFA306A0C9CF01F00130C9B1A9C306AB2 +:108A70001A95F01F00125F0C2FDDE3CD80E0ECCBE8 +:108A8000FFE2FAC5FFFA306A0A9CF01F000A0E9B4B +:108A9000306A1A9CF01F00071A9B0A9C306A1A96CB +:108AA000F01F00065F0CCC1B0000026080018944AF +:108AB0008002E736800188B08000917CD401201DBF +:108AC000500C580CC0401A9CF01F00022FFDD80219 +:108AD0008001D3A8D401201D500C580CC0401A9C12 +:108AE000F01F00022FFDD8028001D3A8EBCD40C0BB +:108AF000E06B00E41896300CF01F000A1897C0E0F5 +:108B0000E06A00E40C9BF01F0008ECC9FFF8EECA15 +:108B1000FFF8486B0E9CF01F00060E9CE3CD80C052 +:108B20008001D8DC800091DC8001D3EC8001ACA80E +:108B3000EBCD40C0E06B00EC1896300CF01F000A43 +:108B40001897C0E0E06A00EC0C9BF01F0008ECC92D +:108B5000FFF0EECAFFF0486B0E9CF01F00060E9C63 +:108B6000E3CD80C08001D8DC800091DC8001D3ECB3 +:108B70008001ACA8EBCD40FE129210914A88F0F92A +:108B800000F818933DD8733C316916977874AE8815 +:108B9000AE9930083509AEA8AEB93F283019301665 +:108BA00014954A0B303AAEC8AED9AE36EECCFFF8CB +:108BB000F01F001D069CEF65000BAE76AE66308B95 +:108BC000F01F001A8F5CC290303A496BF01F0016FC +:108BD0006E58B0B28EE86E5C303AF808002C491B33 +:108BE000F01F00116E598EE8F2080028B0B1E919A3 +:108BF00000B0E91800B21208E93900A5A3682F08EF +:108C00001039C030E3CF90FE0F9830092FE8EF59AC +:108C10000010AE98E3CF90FEE3CD80FE000087F415 +:108C200080017B1C800091DC8001D3ECD431201DBD +:108C3000314E1697330BAE9EAE8B1090FACBFFD809 +:108C40007618500818921493129176055805E08A08 +:108C50000006EA0815042EA8AE983016303AAE1673 +:108C600049E4EECCFFFCE8CBFFFCF01F001D049CA8 +:108C7000AEF3AE56AE46AE75EA0B15042F8BF01F61 +:108C800000198F4CC280303AE8CBFFFCF01F001473 +:108C90006E48B0B18EC86E4CE8CBFFFCF808002CD3 +:108CA000303AF01F000F6E498EC8F2080028B0B0AD +:108CB0003289AE695805E08A000D6E488EC98EDC97 +:108CC000EA0A1504120C400BF00C002CF01F0004F3 +:108CD0002FFDDA3A2FFDD83280017B1C800091DC19 +:108CE0008001D3ECEBCD40E0201D500B1897580CC1 +:108CF000C070169A4C4C0E9BF01F0044C6404C4668 +:108D000030080DA9F0091800C050301C2FFDE3CD2C +:108D100080E0ECCCFFE4F01F003FCF815807C2F0A9 +:108D2000301CF01F003DC3304B751A9B4B6CF01F7D +:108D3000003B1897C320F01F003A3018ED4C00CCD0 +:108D4000ACA80E9C3005400BED5500D04B07F01F32 +:108D500000351896581CC3F1EECCFFE4F01F00322A +:108D60004B28F1090142EA091900CD006E98EDB8CF +:108D7000000ECCC0F01F002E0C9CCC9B4A25EAF9BB +:108D80000320EAF803241039CCC1CD0BECCCFFE46E +:108D9000F01F0025301CCBBBECF801245818C04054 +:108DA000301CF01F0024ECCCFFE4F01F001FEAF998 +:108DB0000324EAF803201238CA90301CF01F001672 +:108DC000301CCA5B492AF50B00D2F80B1900C0A071 +:108DD0003FBCC9DBEECCFFE4AEA5F01F00133FBCE7 +:108DE000C96B3018F55800D24909F3080142F6085A +:108DF0001900CEF07498EDB8000ECEB0F01F000C44 +:108E00003FBCC85B000084CC80017B30000087F44D +:108E1000800145DC80019F3080017B7A800145C460 +:108E200080014664800145EC000002608001FBFC8B +:108E30008001A128EBCD40C01897F01F0015C1B0EC +:108E40006E4849468D186E598D2930096E2C8F2930 +:108E50006E486E3BE2180080F9B80001EDF80E0292 +:108E6000F01F000D1897581CC0803008300CACA8BB +:108E7000E3CD80C0E3CF90C0F01F00083008ED4C78 +:108E800000CCED5800D00E9CE3CD80C08001C6A080 +:108E9000000087F480014664800145C4EBCD40802A +:108EA000491A18977498EDB80001C111F4F801241B +:108EB0005818C0A07848951878599529F01F000BCC +:108EC000C091E3CD8080109CE3CD80803FBCE3CD9A +:108ED000808030086E2C6E3B8F28F01F0005E3CD9C +:108EE00080800000000087F48001C6A080018CE42F +:108EF000106104000000000040200700FFFFFFFF9A +:108F0000000000004869F2F802045828C0205EFE04 +:108F1000580CCFE0F2C8FFF099085EFF000077AC74 +:108F20005EFDD7034828912C913B5EFF000077AC93 +:108F300048384849910C930B5EFC000000007540D6 +:108F4000000074B45EFCD703D431202D500C3008DF +:108F5000FAC1FFF81690109402D84A424A43E269D7 +:108F60005A4C089A0819029B009C40085D181895F5 +:108F70005804C0B1584CF80A1780F9BA0B0449DB01 +:108F8000401CF01F001DC2E140165805C1000A97A1 +:108F90005907EE0A1780F9BA0B100C9B1417140628 +:108FA00064085C7A660C5D185807CF310A04E24405 +:108FB0005A4BFE98FFD65875E088000D4018EACC51 +:108FC000000848CBF00C000C2F8B308AF01F000AF1 +:108FD000C0913009009C129A129B40085D182FED39 +:108FE000DA3A30DC2FEDD83200007540000074B45E +:108FF00080018EF08000917CEBCD40FC49F8189404 +:10900000F0C3FDDCF0C7FFBC3072C0B8321A089B59 +:109010000A9CF01F001B1896C1D02C470637C16070 +:10902000EEC5002C5804CF316E08109C5808CF6054 +:10903000F01F00148F04EF44FFF86E185808CEE1BB +:109040008F248F322C470637CEC15804C0D0E3CFCF +:10905000C0FC6ABC580CC080F01F000A8B968BB60F +:109060006AC85808C030E3CF90FC8BD8301C3078E9 +:109070008BE8E3CD80FC0000000077AC8000917CA1 +:10908000800091E8EBCD40FE109114961895169251 +:109090001293F4C80008E0480037E08B00185859D4 +:1090A000C18049D8F0C4FE08F0C7FFE86EB8580880 +:1090B000C1300E9C321A0A9BF01F0018C1D02C47F9 +:1090C0000837CF51307CE3CD80FE30ACE3CD80FE5D +:1090D000129CE3CD80FEECCBFFFF049CF01F001040 +:1090E0000A9B8FBC8F968FD18FE30E9C321AF01F94 +:1090F000000DE3CF90FE6EBCF01F000B049CECCB88 +:10910000FFFFF01F00078FE38FBC8F968FD1E3CF57 +:1091100090FE0000000077AC8000917C8000918878 +:10912000800091DC800091E8D401487BF6F80204CD +:109130005828C020DC0AF6CBFE04306AF01F00037A +:10914000DA0A0000000077AC800091DCEBCD40FE35 +:10915000209D580B5F09580A5F08169314941069F4 +:10916000C341580BC4514A9264585808C2E03005B4 +:10917000FAC1FFFD0A970A9CC0D8ED3A0020FB38DF +:109180000023F4081800C2E00E9C64580E38E088F2 +:10919000001E64482FF7F00C03265803CEF1306A06 +:1091A000089B5804C0A0202D1A9CF01F0019F01F26 +:1091B00000192FED580CC0E05805C0506AC96CC8A2 +:1091C0001238CE350C95CE1B30050A9C2F7DE3CD91 +:1091D00080FE306A089BECCCFFDFF01F000FCD5102 +:1091E000CECB029B0C9CF01F000CCCF1CD9B189BAE +:1091F000069AFACCFFFDF01F0009FB6300234832FA +:1092000064585808CB51CE1B000077AC8002E7367B +:10921000800188B08000917C800091DCEBCD4060C3 +:10922000306A202D169618951A9CF01F0009F01F21 +:1092300000090C9A5F0B0A9CF01F00072FED581CC9 +:10924000F9BC0001F9BC01FFE3CD80608002E73684 +:10925000800188B080016480D4015C6CF01F000440 +:10926000581CF9BC0001F9BC01FFD8028001641C44 +:10927000EBCD406E202D1293189116921495300B61 +:10928000308A1A9CF01F0012306A069B1A96202D15 +:109290001A9CF01F0010F01F001030085F091AD848 +:1092A0000A9A1AD6049B1AD3029C1AD83038F01F97 +:1092B000000B2FAD5BFCC070581CF9BC01FF2FEDFB +:1092C000E3CD806E304C2FEDE3CD806E800091D0E9 +:1092D0008002E736800188B08001661CEBCD406ECD +:1092E00010911892169314951296F01F00113008E1 +:1092F0000C991AD80A9A1AD1069B049CF01F000DEB +:109300002FED583CE0890007582CC085306CE3CD28 +:10931000806E584CC070E3CFC06E5BECC050581CE0 +:10932000CFB1E3CF906E30BCE3CD806E8001A1DC85 +:109330008001F7D8EBCD4040201D10964978F0FE13 +:109340000204582EC0503FFC2FFDE3CD804030EE8C +:10935000FAC8FFFC10DE300E1A985C761ADE1AD6B8 +:10936000F01F000F2FEDFE5CFC17E0890010FE5C83 +:10937000FC16C114FE5CFB4FC070FE5CFBB4C0B0B9 +:10938000FE5CFAECCE11307CCE0B5BECC040581C7E +:10939000CDB1CDBB30BCCD9B000077AC8001F54496 +:1093A000D4014858F0F902045809C030F01F0003F6 +:1093B000D8020000000077AC80014480EBCD40E88B +:1093C0004D56189514971693E06A0218300B0C9CB2 +:1093D000F01F00524D288D05700C8D133005A36CC5 +:1093E000ED450204F01F004F8D4CC031E3CFC0E8C3 +:1093F0000A9CF01F004D581CCFA11AD5F1D7C00808 +:109400000A990A9A310B320CF01F00482FFD581CA4 +:10941000CEE1F01F0047581CCEA11AD50A980A9930 +:109420004C4A0A9B302CF01F00442FFD580CCDF005 +:1094300030670A981AD70A994BEA0A9B322CF01F18 +:10944000003E2FFD580CCD3030780A991AD84B9A2F +:109450000A980A9B323CF01F00382FFD580CCC7044 +:109460001AD50E9C0A980A994B2A0A9BF01F0032C3 +:109470002FFD580CCBC030270A981AD70A994ADA20 +:109480000A9B304CF01F002C2FFD580CCB001AD734 +:109490000A984A8A0A990A9B305CF01F00272FFD20 +:1094A000580CCA50301C0A981ADC0A994A1A0A9BAE +:1094B000F01F00212FFD580CC9A030390A981AD985 +:1094C00049CA0A990A9B31CCF01F001B2FFD580C8A +:1094D000C8E0F01F001A581CC8A1F01F0019581C42 +:1094E000FE91FF860A980C9730490C9A495B0A9CBA +:1094F000F01F0015FE90FF7C189A308B493CF01F3E +:109500000014581CFE91FF74ED4C0204EF45020C50 +:10951000E3CD80E8000077AC800091D000000258D5 +:1095200080009200800200AC8002067C8001FFB4C3 +:109530008001984C80016E788001FD8C8001A00034 +:109540008001955080016AF48003B8048001762878 +:10955000EBCD40E078185B98C031E3CFC0E078569F +:109560005866CFC1783B0C9A4985EAC7FE040E9C29 +:10957000F01F0017303A497B0E9CF01F0017C131D5 +:10958000F01F00163026EB460204F01F00150C9C5D +:10959000F01F00146A195809C14048C8700C5D19C1 +:1095A000E3CF80E037A83C49EB6801FC30E80C9B36 +:1095B0000E9CEB6901FDEB6801FEF01F000BCE1B5A +:1095C000129CE3CD80E00000000077AC800091DCCD +:1095D0008003B80C8000917C8001FD8080020290A5 +:1095E0008002023480017984EBCD40FC7875580B01 +:1095F000F9B80100F7F81A001693EB3900C83FF8E4 +:10960000F0091800C250EB0900D03008F009190029 +:10961000C4D0307430073022EE061502EAF800D8C4 +:109620000C082FF711BC089BF01F0027E08A0009E7 +:10963000EAF800D80C0811B45803E7F21A00EB1846 +:1096400000D00E38FE99FFEA089CE3CD80FCEB3891 +:1096500000A4F2081800C250EB0900B03008F0096D +:109660001900C240307430073012EE061502EAF8D5 +:1096700000B80C082FF711BC089BF01F0013E08AFC +:109680000009EAF800B80C0811B45803E7F21A0010 +:10969000EB1800B00E38FE99FFEA089CE3CD80FC81 +:1096A000787992D8EDB80004C040307CE3CD80FCDE +:1096B000307B305CF01F0004FE9AFFF9305CE3CD94 +:1096C00080FC000080017E60D431201D4D876E58E3 +:1096D0005808C0E030060C996E48F009032CF01FC2 +:1096E00000552FF66E580C990C38FE9BFFF730068C +:1096F0001A9B8F560C9CF01F00501A94400C580C6B +:10970000C0312FFDD832A36CF01F004C1890CFA0B1 +:10971000400A0C9BA36AF01F004A40085808E08AE0 +:1097200000260C950096C0782FF52FC640080A3801 +:10973000E08A001D350CF01F00418D0CCF614009FF +:109740005809E08A000F009530062FF66A0C580C75 +:10975000C040F01F003840092FC50C39FE99FFF7B3 +:10976000009CF01F00342FFDD8321A9B009CF01F84 +:1097700000324B4972084009F0090D488F585808CB +:10978000CE00300408930891A363E003000264084C +:109790006E467135344CF01F0029F9410040060631 +:1097A0008D0C6A796E48F2CBFFF2F0030306F33AB0 +:1097B000000D0C9CF01F00246A78F139000D306A0E +:1097C000ED690020ECCCFFDF640B2E2BF01F001E98 +:1097D000029B0A9CF01F001DED6C00386A498DC980 +:1097E0006A585808F9B805008DD86A79F338005ED0 +:1097F000ED6800276A7992C88DA80BF9ED59002C05 +:1098000030290BEAF20A1800E2081710F9B8000133 +:109810008DF830286E49F20309062FF4F00A18007B +:1098200008936E580838FE9BFFB1C8AB000077ACB8 +:10983000800091E88002105880009200800091D052 +:1098400000000258800091DC800195E8EBCD40C01B +:10985000201D1696582BC680E0880013586BC590C3 +:10986000587BC2D0583BC4804C076E295809C05061 +:109870004BE80C9C703B5D192FFDE3CD80C0580B6D +:10988000C0F14BA7EEF902085819C6C0EEF8020C59 +:109890003019A1D8EF690210EF48020CCE7B581B9B +:1098A000CE414B273008EEF9020C4B1AA3A9EF6802 +:1098B0000210A1D9B488EF49020CCD8B4ACA3008F6 +:1098C0001589F0091800C4C14A87EEF8020CEDB8FA +:1098D0000001CD31EF380210F2081800CCE1F01F82 +:1098E0000025F01F0025EEF8020C3016E018FFF9F5 +:1098F000EF48020CCBBBF01F002049C7EEF9020C69 +:10990000EDB90004CBA11298A5C8EF48020CCAEB30 +:1099100049673019EEF8020CEF690210A1D8300641 +:10992000EF48020CCA3B4917EEF8020CA3C81A9C78 +:10993000EF48020CF01F001140085828C050F01FDB +:10994000000DF01F000D300A4898B08AEF39021060 +:10995000F4091800C9204858F16A0210C87BB4887D +:10996000C8CB4838B089C89B000077AC000079C4E8 +:1099700080021298800196C8800177A4D401201D2E +:1099800048F9F2F802045828C0302FFDD80AF339FC +:1099900002103008F0091800C0711A9CF01F00096D +:1099A00040085828CF31F01F0008CF00F8CAFFE266 +:1099B000300B169CF01F00052FFDD802000077AC7D +:1099C000800177A4800210FC8001914CEBCD408097 +:1099D000201D4967EEF802045828C0503FFC2FFDB7 +:1099E000E3CD8080F01F0012C051302C2FFDE3CD5D +:1099F0008080EEF9020CEDB90002CF10EDB9000144 +:109A0000C031309CCEDB1A9CF01F000A4008580879 +:109A1000CED0F01F0009581CCE21EEF8020CA3A8EE +:109A2000EF48020CCDDB0000000077AC800210FC98 +:109A3000800211088001F370EBCD40C020AD189872 +:109A40001697580BC07076DC581CC0402F6DE3CDC4 +:109A500080C0109BF13A0020FAC6FFFE0C9CF01F5C +:109A6000001B0C9B209D322A1A9CF01F0019F01F2E +:109A700000192F7D580CCEB0793CFACBFFDCF01FDB +:109A8000001640985818C150C0923058F808180075 +:109A9000F9BC0003F9BC0102CDAB5828C030301C22 +:109AA000CD6B5807C0D06EC85808C0A0305CCCFB46 +:109AB0005807C0806EC85808C050304CCC8B307CE2 +:109AC000CC6B306CCC4B00008002113C8002E7363E +:109AD0008001F2BC800195E8D43120EDFEF3029CB8 +:109AE000FAC1FFA4E6F8020C18971694E2180006D3 +:109AF000C040309C2F2DD832F01F00A1C040308CC8 +:109B00002F2DD832E74C02085807C130BA8CF5D453 +:109B1000C008FAC6FFFEBA9A0E9B0C9CF01F009973 +:109B20000C9C1B9BF01F0098581CC0802F2DDC3A0A +:109B3000BA97BA87FAC6FFFECF4B029CF01F00937C +:109B40001892581CCF41029A089B0E9CF01F00905F +:109B50001890C580E6C7FFE8E6C6FE08EF3A002089 +:109B6000E1380020F4081800E08000A02C470C37F2 +:109B7000CF6130070E950E9B009CF01F0086E136EA +:109B800000381897CD40585CE08000C2E08B00B9E7 +:109B9000583CE08000B4584CC020300CF01F007ED0 +:109BA0003048F0061800E08000A83054E80618009D +:109BB000E08000983028F0061800E080009A300C11 +:109BC000F01F0076E8061800E080008F300CF01FD0 +:109BD00000745837E08B007960F85818C710301CB3 +:109BE000F01F0070300B4F0CF01F0070CA00F01F08 +:109BF0000070581CC9C1E6F8020CA1B8E748020C75 +:109C0000C7ABFAC5FFCE306A029B0A9CF01F005D0D +:109C1000FAC6FFDE0C9CF01F00673FF81AD00C9BC1 +:109C20001AD2310A1AD8204D1A9CF01F00630A9BE1 +:109C3000202D306A1A9CF01F00600499209DE6CC0C +:109C4000FDECFB380069FAEA0048FAE20050FB68D4 +:109C50000021FAEB0000FB380068FAEA0058FAE34A +:109C60000008FAE20060FAEB0010FAE30018FB6863 +:109C70000020303A0098129B4C03F01F00502EED4C +:109C80001895581CFE91FF54009BE6FC0214F01F2F +:109C9000004C5BBCC620580CC3E1189BE6FC0214C8 +:109CA000F01F00483FFCC27B0E9C009BF01F00464B +:109CB000FE91FF5E6EB55805EA071700C5DB302C34 +:109CC000F01F0038C90B5805FE90FF320A9AE13B9D +:109CD0000020009CF01F003D3018E7480208C7DB59 +:109CE000301CF01F002E301CF01F002DC73B302C05 +:109CF000F01F002AC6CB303CCFCB301CC50B586CB4 +:109D0000C080587CFE91FF4B308CC49B307CC47B60 +:109D1000305CC45B344CF01F002E089A18960E9BE2 +:109D2000F01F0018029B306AED640020ECCCFFDFCE +:109D3000F01F001400991AD60A984A6A009B31CC89 +:109D4000F01F00252FFD580CC0E0E6F8020C0A9C1D +:109D5000A1B8E748020CCCFA009BE6FC0214F01F05 +:109D60000019CC8A189BE6FC0214F01F00160C9C0C +:109D7000F01F001A3FFCCBFA000077AC800210FC09 +:109D8000800091DC800178BC800179788001914C61 +:109D900080019A3880015F60800163488001639C84 +:109DA00080017A1080018F208001FD408001F3A0A6 +:109DB000800177C08002E73680020BFC80020A70C7 +:109DC00080020B408000917C800214708000920021 +:109DD00080019E0080016E78800091E8D401202DE2 +:109DE000FACAFFF415D8BAD87409500915C8300B4F +:109DF000BAC8169CF01F00022FEDD80280019AD835 +:109E0000EBCD40E049F51697EAFC0214300BF01F49 +:109E1000001EF01F001EEEC6FFDFEF3B00200C9A75 +:109E20000E9CF01F001BC150EAF8020CA1D8202D97 +:109E30000C9BEB48020C306A1A9CEF360020F01F96 +:109E400000150C9B0E9CF01F00142FED581CC060D9 +:109E5000EAF8020CEDB80001C0600E9CF01F000F84 +:109E6000E3CD80E0301B300CF01F000D302B300CA8 +:109E7000F01F000B0E9CF01F0009E3CD80E00000F6 +:109E8000000077AC80020B40800196C88001914CA5 +:109E90008002E73680019AD8800091E88001984CD2 +:109EA000EBCD40E0202D18951697580CC0513FFC83 +:109EB0002FEDE3CD80E0580BCFB0E04B0020FE9BB0 +:109EC000FFF8FAC6FFFE306AE06B00FF0C9CF01F43 +:109ED0000008306A202D0C9B1A9CF01F00060E9B78 +:109EE0000A9CF01F00052FEDCE4B0000800091D0A2 +:109EF0008002E73680019AD8EBCD408048B7EEF873 +:109F000002045828C030E3CFC080F01F0009581C5D +:109F1000F9BC0109EFF80083F9B90010F1D9E03874 +:109F2000EFF80A83E3CD8080000077AC80020A84DA +:109F3000D40148B9F338000A104CF36C000A7218C7 +:109F40005808C0B05828C0803028726C9318301B55 +:109F500072595D19D80AD80ADA0A0000000079C8D7 +:109F60004828916B915C5EFC000079C8EBCD40C045 +:109F7000203D5CBBBA89502B109714965CC85C8856 +:109F80005807C0513FFC2FDDE3CD80C05C784959B4 +:109F90005018B28C3048FAC9FFF8300A306B492C9F +:109FA000F01F0012581CCEF11B89491A1898B48969 +:109FB000306B1A99300A48FCF01F000C581CCE3147 +:109FC00048D8300AB007306B304848CCFA0800094E +:109FD000F01F0006581CCD7148989146CD5B0000DB +:109FE00000007A288003B8108001776C0000025CC2 +:109FF0008003B8180000025E8003B820000079C812 +:10A00000EBCD40C030074A161AD78D078D17ED6784 +:10A010000008ED670009ED67000A8D378D470E983F +:10A020000E9949BA0E9B302CF01F001A2FFD580CC8 +:10A03000C0413FFCE3CD80C01AD70E980E99496A03 +:10A040000E9B304CF01F00132FFD580CCF301AD749 +:10A050000E980E99491A0E9B32ECF01F000E2FFD40 +:10A06000580CCE8031483019E06A138830AB0E9C12 +:10A07000F01F000B581CCDE10E9BECCCFFF4F01F41 +:10A080000009581CCD71CD7B000079C88001A0F07B +:10A0900080016E788001A1A08001A0A480019F6C46 +:10A0A000800144F8D401F01F000E48EA74085838C3 +:10A0B000C12030289508F539000A3008F009180049 +:10A0C000C020D8023018300B9518487C487AF01F11 +:10A0D0000008D80230089508D80200008001DA365E +:10A0E000000079C88001DA5880018E348001EF20A9 +:10A0F000EBCD408048973018EF6800086E4958094A +:10A10000C0A0308CF01F00066E4C3009485A6E3BE0 +:10A11000F01F0005E3CD8080000079C880019F30EA +:10A120008001A1CC80014558D4014989F80C11FF68 +:10A13000F338000A106CF36C000AC1E1F33800092F +:10A14000F8081800C19072185808C161F338000867 +:10A15000F8081800C06072085808C0F05818C0C04D +:10A160003018300B931848AA48ACF01F000B300B86 +:10A17000331CF01F000AD802301B485A930B488C3E +:10A18000F01F0005D8020000000079C880018E345D +:10A190008001DA588001EF2080016D6C8001DA8443 +:10A1A000EBCD404048766C3CF01F0007308CF01F30 +:10A1B000000730083009ED6800088D09E3CD8040C4 +:10A1C000000079C8800145308001A128D401308C7D +:10A1D000F01F0002D80A00008001A128EBCD4080CA +:10A1E00048E76E185828C030E3CD80806E58300B99 +:10A1F0006E6C5D18300B8F1B4899F2FA0324F2F84D +:10A2000003201438C040169CF01F0006300B332C7E +:10A21000F01F0005E3CD8080000079C8000084CCE9 +:10A2200080018CE480016D6CEBCD40C018971696D0 +:10A23000F01F0009C0C06E0C581CC0700C9B0E9C17 +:10A24000F01F0006CF91302CE3CD80C03FDCE3CD82 +:10A2500080C000008001462C80014636EBCD404096 +:10A26000301818969908F01F00040C9CF01F00038A +:10A27000E3CD80408001463280014634D401580C41 +:10A28000C030F01F0002D80280014630D4013008EF +:10A290009908F01F0002D8028001462ED401189EB2 +:10A2A000580AC0C196199688F9D9C010103CC165EA +:10A2B000F2C8FFFF973AB618D802581AC06096192C +:10A2C000F2C8FFFFB618D802969996881039C0F4E4 +:10A2D0007648F0090709B889CF3B1D897648F00C0C +:10A2E0000B099619F2C8FFFFB618D8023008973844 +:10A2F000B8889619F2C8FFFFB618D802EBCD408097 +:10A300001897580AC1D1961C9689FDDCC010FCC86C +:10A31000FFFF1238F7FA4A03F7F85004F1DEE508B8 +:10A32000EFF95801F1F95E00EFFA5800F1FA5E0119 +:10A33000F7FC5201F8C8FFFEB618E3CD8080581A2A +:10A34000C070961CF8C8FFFEB618E3CD8080969AC0 +:10A350009689F4C8FFFF1238C09476481408119902 +:10A36000B889118AB89A961CCEEB30089738B8088D +:10A37000961CF8C8FFFEB618E3CD8080EBCD408078 +:10A38000189E169C580AC0F1961B9889EFDBC010E6 +:10A39000EEC8FFFD1238C205F6C8FFFC993AB8189E +:10A3A000E3CD8080581AC070981BF6C8FFFCB8181F +:10A3B000E3CD8080969B9889F6C8FFFD1238C1C412 +:10A3C000784A160A15B8BC8815A9BC991598BCA876 +:10A3D0001589BCB9CEAB1DB8784A0E0AB4881DA940 +:10A3E000B4991D98B4A81D89B4B9981BF6C8FFFC90 +:10A3F000B818E3CD8080300899389D08981BF6C8BE +:10A40000FFFCB818E3CD8080EBCD4068189316951B +:10A410001496F01F000C0C9A0A9BE6CCFFFFF01F6D +:10A4200000090C9A0A9BE6CCFFFEF01F00060C9A6E +:10A430000A9BE6CCFFFDF01F0003E3CD806800001F +:10A440008001A29CD4211697189596141496F01F9B +:10A4500000080C9A0E9BEACCFFFEF01F00060BC80A +:10A460005808F1D4E108EFF81C01D8228001A2FCC1 +:10A470008001A408EBCD4068189316951496F01F40 +:10A4800000060C9A0A9BE6CCFFFCF01F0003E3CD0C +:10A49000806800008001A37CEBCD4068189316957E +:10A4A0001496F01F00090C9A0A9BE6CCFFFCF01FE3 +:10A4B00000070C9A0A9BE6CCFFFAF01F0004E3CDDC +:10A4C000806800008001A37C8001A2FCEBCD406885 +:10A4D000189316951496F01F000F0C9A0A9BE6CC61 +:10A4E000FFFCF01F000D0C9A0A9BE6CCFFFBF01F4F +:10A4F000000A0C9A0A9BE6CCFFFAF01F00070C9AA0 +:10A500000A9BE6CCFFF9F01F0004E3CD8068000051 +:10A510008001A37C8001A29CEBCD40681893169526 +:10A520001496F01F000C0C9A0A9BE6CCFFFCF01F5F +:10A53000000A0C9A0A9BE6CCFFFAF01F00080C9A5E +:10A540000A9BE6CCFFF9F01F0005E3CD8068000010 +:10A550008001A37C8001A2FC8001A29CEBCD40681D +:10A56000189316951496F01F00150C9A0A9BE6CCCA +:10A57000FFFCF01F00120C9A0A9BE6CCFFF8F01FBC +:10A5800000100C9A0A9BE6CCFFF6F01F000D0C9A07 +:10A590000A9BE6CCFFF4F01F00090C9A0A9BE6CC5C +:10A5A000FFF0F01F00070C9A0A9BE6CCFFEEF01FAD +:10A5B0000004E3CD806800008001A37C8001A2FC40 +:10A5C000EBCD4068189316951496F01F00090C9A6D +:10A5D0000A9BE6CCFFFCF01F00060C9A0A9BE6CC17 +:10A5E000FFF8F01F0003E3CD806800008001A37C2A +:10A5F000EBCD4068189316951496F01F00060C9A40 +:10A600000A9BE6CCFFFCF01F0003E3CD806800004E +:10A610008001A37CEBCD4068189316951496F01F2B +:10A62000000C0C9A0A9BE6CCFFFCF01F00090C9A68 +:10A630000A9BE6CCFFF8F01F00060C9A0A9BE6CCBA +:10A64000FFF4F01F0003E3CD806800008001A37CCD +:10A65000EBCD4068189316951496F01F00330C9AB2 +:10A660000A9BE6CCFFFCF01F00300C9A0A9BE6CC5C +:10A67000FFF8F01F002D0C9A0A9BE6CCFFF4F01FA8 +:10A68000002B0C9A0A9BE6CCFFF2F01F00280C9AD4 +:10A690000A9BE6CCFFF0F01F00250C9A0A9BE6CC43 +:10A6A000FFEEF01F00220C9A0A9BE6CCFFECF01F95 +:10A6B000001F0C9A0A9BE6CCFFEAF01F001C0C9AC4 +:10A6C0000A9BE6CCFFE8F01F00190C9A0A9BE6CC27 +:10A6D000FFE6F01F00160C9A0A9BE6CCFFE4F01F81 +:10A6E00000130C9A0A9BE6CCFFE2F01F00110C9AB3 +:10A6F0000A9BE6CCFFE1F01F000E0C9A0A9BE6CC09 +:10A70000FFE0F01F00090C9A0A9BE6CCFFDCF01F6B +:10A7100000060C9A0A9BE6CCFFD8F01F0005E3CD9B +:10A72000806800008001A37C8001A2FC8001A29CC3 +:10A73000EBCD4068189316951496F01F00120C9AF2 +:10A740000A9BE6CCFFFCF01F00100C9A0A9BE6CC9B +:10A75000FFFBF01F000D0C9A0A9BE6CCFFFAF01FDE +:10A76000000A0C9A0A9BE6CCFFF9F01F00070C9A2E +:10A770000A9BE6CCFFF8F01F0004E3CD80680000E0 +:10A780008001A37C8001A29CEBCD406818931695B4 +:10A790001496F01F00060C9A0A9BE6CCFFFCF01FF3 +:10A7A0000003E3CD806800008001A37CEBCD40680E +:10A7B000189316951496F01F00060C9A0A9BE6CC87 +:10A7C000FFFCF01F0003E3CD806800008001A37C44 +:10A7D000EBCD4068189316951496F01F00060C9A5E +:10A7E0000A9BE6CCFFFCF01F0003E3CD806800006D +:10A7F0008001A37CEBCD4068189316951496F01F4A +:10A8000000060C9A0A9BE6CCFFFCF01F0003E3CD88 +:10A81000806800008001A37CEBCD406818931695FA +:10A820001496F01F00060C9A0A9BE6CCFFFCF01F62 +:10A830000003E3CD806800008001A37CEBCD40687D +:10A84000189316951496F01F00060C9A0A9BE6CCF6 +:10A85000FFFCF01F0003E3CD806800008001A37CB3 +:10A86000EBCD4068189316951496F01F00060C9ACD +:10A870000A9BE6CCFFFCF01F0003E3CD80680000DC +:10A880008001A37CEBCD4068189316951496F01FB9 +:10A8900000060C9A0A9BE6CCFFFCF01F0003E3CDF8 +:10A8A000806800008001A37CEBCD4068189316956A +:10A8B0001496F01F00060C9A0A9BE6CCFFFCF01FD2 +:10A8C0000004E3CD806800008001A37C8001A650D5 +:10A8D000EBCD4068189316951496F01F00060C9A5D +:10A8E0000A9BE6CCFFFCF01F0003E3CD806800006C +:10A8F0008001A37CEBCD4068189316951496F01F49 +:10A9000000090C9A0A9BE6CCFFFCF01F00060C9A8B +:10A910000A9BE6CCFFF8F01F0003E3CD806800003F +:10A920008001A37CEBCD4068189316951496F01F18 +:10A9300000060C9A0A9BE6CCFFFCF01F0003E3CD57 +:10A94000806800008001A37CEBCD406818931695C9 +:10A950001496F01F00090C9A0A9BE6CCFFFCF01F2E +:10A9600000060C9A0A9BE6CCFFF8F01F0003E3CD2B +:10A97000806800008001A37CEBCD40681893169599 +:10A980001496F01F00090C9A0A9BE6CCFFFCF01FFE +:10A9900000060C9A0A9BE6CCFFF8F01F0003E3CDFB +:10A9A000806800008001A37CEBCD40681893169569 +:10A9B0001496F01F00060C9A0A9BE6CCFFFCF01FD1 +:10A9C0000003E3CD806800008001A37CEBCD4068EC +:10A9D000189316951496F01F00090C9A0A9BE6CC62 +:10A9E000FFFCF01F00060C9A0A9BE6CCFFF8F01F54 +:10A9F0000003E3CD806800008001A37CEBCD4068BC +:10AA0000189316951496F01F00060C9A0A9BE6CC34 +:10AA1000FFFCF01F0003E3CD806800008001A37CF1 +:10AA2000EBCD4068189316951496F01F00090C9A08 +:10AA30000A9BE6CCFFFCF01F00060C9A0A9BE6CCB2 +:10AA4000FFF8F01F0003E3CD806800008001A37CC5 +:10AA5000EBCD4068189316951496F01F00090C9AD8 +:10AA60000A9BE6CCFFFCF01F00060C9A0A9BE6CC82 +:10AA7000FFF8F01F0003E3CD806800008001A37C95 +:10AA8000EBCD4068189316951496F01F00060C9AAB +:10AA90000A9BE6CCFFFCF01F0003E3CD80680000BA +:10AAA0008001A37CEBCD4068189316951496F01F97 +:10AAB00000060C9A0A9BE6CCFFFCF01F0003E3CDD6 +:10AAC000806800008001A37CEBCD40681893169548 +:10AAD0001496F01F00060C9A0A9BE6CCFFFCF01FB0 +:10AAE0000003E3CD806800008001A37CEBCD4068CB +:10AAF000189316951496F01F00060C9A0A9BE6CC44 +:10AB0000FFFCF01F0004E3CD806800008001A37CFF +:10AB10008001A29CEBCD4068189316951496F01F07 +:10AB200000060C9A0A9BE6CCFFFCF01F0004E3CD64 +:10AB3000806800008001A37C8001D434EBCD4068A4 +:10AB4000189316951496F01F00330C9A0A9BE6CCC6 +:10AB5000FFDEF01F00310C9A0A9BE6CCFFD4F01FF9 +:10AB6000002F0C9A0A9BE6CCFFC2F01F002D0C9A16 +:10AB70000A9BE6CCFFBFF01F002B0C9A0A9BE6CC89 +:10AB8000FFBCF01F00290C9A0A9BE6CCFFB0F01F17 +:10AB900000270C9A0A9BE6CCFFACF01F00250C9A0C +:10ABA0000A9BE6CCFFA4F01F00230C9A0A9BE6CC7C +:10ABB000FF9CF01F00210C9A0A9BE6CCFF98F01F27 +:10ABC000001F0C9A0A9BE6CCFF8CF01F001D0C9A0C +:10ABD0000A9BE6CCFF72F01F001B0C9A0A9BE6CC86 +:10ABE000FF68F01F00190C9A0A9BE6CCFF44F01F87 +:10ABF00000170C9A0A9BE6CCFF50F01F00150C9A28 +:10AC00000A9BE6CCFF30F01F0013E3CD8068000004 +:10AC10008001D3448001D2DC8001D2748001CAF863 +:10AC20008001C9D88001D8608001CA688001CA9CAF +:10AC30008001CA0C8001C9A48001D4348001CDB444 +:10AC40008001CE848001D5588001D6B08001D4E443 +:10AC50008001CFFCEBCD4068189316951496F01F39 +:10AC6000000F0C9A0A9BE6CCFFFCF01F000D0C9A1B +:10AC70000A9BE6CCFFFAF01F000B0C9A0A9BE6CC6D +:10AC8000FFF9F01F00080C9A0A9BE6CCFFF8F01FB2 +:10AC90000006E3CD806800008001A37C8001A2FC57 +:10ACA0008001A29C8001AB3CEBCD406C14951296C8 +:10ACB00018921693E06A00DC129B0A9CF01F001A9F +:10ACC000ECC9FF98EACAFF98069B049CF01F001786 +:10ACD000ECC9FFBCEACAFFBC069B049CF01F001431 +:10ACE000ECC9FF68EACAFF68069B049CF01F0011CC +:10ACF000ECC9FF50EACAFF50069B049CF01F000EEF +:10AD0000ECC9FF44EACAFF44069B049CF01F000BF9 +:10AD1000ECC9FF30EACAFF30069B049CF01F000814 +:10AD2000E3CD806C8002E7368001D1588001D24C9F +:10AD30008001D1E88001D1C08001D21C8001CF9C6C +:10AD4000EBCD40EC1296F2E80000F4E90000ECE8EC +:10AD50000008F4E90008ECE20010F4E30010ECE86D +:10AD6000001814971695F4E90018E06B00E85D15DB +:10AD70008F7CC0D030CA6C7BF01F00066E7A6C7975 +:10AD8000149C0A9B2F492F4AF01F0003E3CD80EC4F +:10AD9000800091DC8001ACA8EBCD40C014971696E2 +:10ADA00074385808C160949E948AF60E00081438CE +:10ADB000F5DEE916F9B80900EFF89A03580CC090CF +:10ADC0005809C0C1189B0C9A6E4C1C0CF01F000A4D +:10ADD0008E180C08AE18E3CD80C05819CFA16E4B69 +:10ADE0000C9A1C0BF01F00048E180C08AE18E3CD53 +:10ADF00080C00000800091DCEBCD40E016971496F7 +:10AE00001895581AC0B0F01F000C0C99189B0E9A98 +:10AE10000A9CF01F000AE3CD80E09698968614996C +:10AE20001016169A0C9BF01F00053008EA060B0856 +:10AE3000E3CD80E0800091B88001AD98EBCD406813 +:10AE4000189316951496F01F00060C9A0A9BE6CCF0 +:10AE5000FFFCF01F0004E3CD806800008001A37CAC +:10AE60008001ADF8EBCD4068189316951496F01F4D +:10AE700000060C9A0A9BE6CCFFFCF01F0004E3CD11 +:10AE8000806800008001A37C8001ADF8EBCD4068B4 +:10AE9000189316951496F01F000F0C9A0A9BE6CC97 +:10AEA000FFFCF01F000C0C9A0A9BE6CCFFF8F01F89 +:10AEB00000090C9A0A9BE6CCFFF4F01F00060C99DF +:10AEC0000A9AE6CCFFF0320BF01F0003E3CD806856 +:10AED0008001A37C8001AD98EBCD40681893169556 +:10AEE0001496F01F000C0C9A0A9BE6CCFFFCF01F96 +:10AEF00000090C9A0A9BE6CCFFF8F01F00060C999B +:10AF00000A9AE6CCFFF4320BF01F0003E3CD806811 +:10AF10008001A37C8001AD98EBCD40681893169515 +:10AF20001496F01F000C0C9A0A9BE6CCFFFCF01F55 +:10AF300000090C9A0A9BE6CCFFF8F01F00070C9959 +:10AF40000A9AE6CCFFF7303BF01F0004E3CD80689F +:10AF50008001A37C8001A29C8001AD98EBCD40686C +:10AF6000189316951496F01F00180C9A0A9BE6CCBD +:10AF7000FFFCF01F00150C9A0A9BE6CCFFF8F01FAF +:10AF800000120C9A0A9BE6CCFFF4F01F000F0C9AFB +:10AF90000A9BE6CCFFF0F01F000C0C9A0A9BE6CC53 +:10AFA000FFECF01F000A0C9A0A9BE6CCFFEAF01FA8 +:10AFB00000080C990A9AE6CCFFE9303BF01F000527 +:10AFC000E3CD80688001A37C8001A2FC8001A29C6B +:10AFD0008001AD98EBCD4068189316951496F01F3C +:10AFE00000280C9A0A9BE6CCFFFCF01F00250C9A67 +:10AFF0000A9BE6CCFFF8F01F00220C9A0A9BE6CCD5 +:10B00000FFF4F01F00200C9A0A9BE6CCFFF2F01F21 +:10B01000001E0C9A0A9BE6CCFFF1F01F001B0C9A55 +:10B020000A9BE6CCFFF0F01F00180C9A0A9BE6CCB6 +:10B03000FFEFF01F00150C9A0A9BE6CCFFEEF01F05 +:10B0400000120C990A9AE6CCFFED306BF01F000F4E +:10B050000C9A0A9BE6CCFFE7F01F000B0C9A0A9BA8 +:10B06000E6CCFFE6F01F00080C990A9AE6CCFFE553 +:10B07000320BF01F0006E3CD806800008001A37C46 +:10B080008001A2FC8001A29C8001AD98EBCD4068BC +:10B09000189316951496F01F00150C9A0A9BE6CC8F +:10B0A000FFFCF01F00120C9A0A9BE6CCFFF8F01F81 +:10B0B000000F0C9A0A9BE6CCFFF4F01F000C0C9AD0 +:10B0C0000A9BE6CCFFF0F01F000A0C9A0A9BE6CC24 +:10B0D000FFEEF01F00080C990A9AE6CCFFED303B1A +:10B0E000F01F0005E3CD80688001A37C8001A2FCF5 +:10B0F0008001A29C8001AD98EBCD40681893169515 +:10B100001496F01F00120C9A0A9BE6CCFFFCF01F6D +:10B1100000100C9A0A9BE6CCFFFBF01F000D0C9967 +:10B120000A9AE6CCFFFA302BF01F000A0C9A0A9B11 +:10B13000E6CCFFF8F01F00050C9A0A9BE6CCFFF462 +:10B14000F01F0002E3CD80688001A37C8001A29CF7 +:10B150008001AD98EBCD4068189316951496F01FBA +:10B1600000120C9A0A9BE6CCFFFCF01F00100C9A10 +:10B170000A9BE6CCFFFBF01F000D0C990A9AE6CC67 +:10B18000FFFA302BF01F000A0C9A0A9BE6CCFFF85E +:10B19000F01F00050C9A0A9BE6CCFFF4F01F00029A +:10B1A000E3CD80688001A37C8001A29C8001AD98E2 +:10B1B000EBCD4068189316951496F01F000C0C9A6E +:10B1C0000A9BE6CCFFFCF01F000A0C9A0A9BE6CC17 +:10B1D000FFFBF01F00070C990A9AE6CCFFFA302B10 +:10B1E000F01F0004E3CD80688001A37C8001A29C55 +:10B1F0008001AD98EBCD4068189316951496F01F1A +:10B2000000090C9A0A9BE6CCFFFCF01F00070C9982 +:10B210000A9AE6CCFFFB303BF01F0004E3CD8068C8 +:10B220008001A37C8001A29C8001AD98EBCD406899 +:10B23000189316951496F01F00090C9A0A9BE6CCF9 +:10B24000FFFCF01F00070C990A9AE6CCFFFB303B8D +:10B25000F01F0004E3CD80688001A37C8001A29CE4 +:10B260008001AD98EBCD4068189316951496F01FA9 +:10B2700000090C9A0A9BE6CCFFFCF01F00070C9912 +:10B280000A9AE6CCFFFB303BF01F0004E3CD806858 +:10B290008001A37C8001A29C8001AD98EBCD406829 +:10B2A000189316951496F01F000C0C9A0A9BE6CC86 +:10B2B000FFFCF01F00090C9A0A9BE6CCFFF8F01F78 +:10B2C00000070C990A9AE6CCFFF7303BF01F000408 +:10B2D000E3CD80688001A37C8001A29C8001AD98B1 +:10B2E000EBCD4068189316951496F01F000C0C9A3D +:10B2F0000A9BE6CCFFFCF01F00090C9A0A9BE6CCE7 +:10B30000FFF8F01F00070C990A9AE6CCFFF7303BD4 +:10B31000F01F0004E3CD80688001A37C8001A29C23 +:10B320008001AD98EBCD4068189316951496F01FE8 +:10B33000000C0C9A0A9BE6CCFFFCF01F00090C9A4B +:10B340000A9BE6CCFFF8F01F00070C990A9AE6CC9E +:10B35000FFF7303BF01F0004E3CD80688001A37C41 +:10B360008001A29C8001AD98EBCD406818931695A2 +:10B370001496F01F000C0C9A0A9BE6CCFFFCF01F01 +:10B3800000090C9A0A9BE6CCFFF8F01F00070C9905 +:10B390000A9AE6CCFFF7303BF01F0004E3CD80684B +:10B3A0008001A37C8001A29C8001AD98EBCD406818 +:10B3B000189316951496F01F00090C9A0A9BE6CC78 +:10B3C000FFFCF01F00070C990A9AE6CCFFFB303B0C +:10B3D000F01F0004E3CD80688001A37C8001A29C63 +:10B3E0008001AD98EBCD4068169514961893F01F28 +:10B3F00000220C990A9AE6CCFFFC308BF01F001F4C +:10B400000C9A0A9BE6CCFFF4F01F001B0C9A0A9BD7 +:10B41000E6CCFFF0F01F00180C9A0A9BE6CCFFEC7C +:10B42000F01F00150C9A0A9BE6CCFFE8F01F0012F3 +:10B430000C9A0A9BE6CCFFE4F01F000F0C9A0A9BC3 +:10B44000E6CCFFE0F01F000E0C9A0A9BE6CCFFDE74 +:10B45000F01F000B0C9A0A9BE6CCFFDCF01F0008E3 +:10B460000C990A9AE6CCFFDA302BF01F0004E3CDEA +:10B47000806800008001A37C8001AD988001A2FC5F +:10B48000EBCD4068189316951496F01F00090C9A9E +:10B490000A9BE6CCFFFCF01F00070C990A9AE6CC49 +:10B4A000FFFB303BF01F0004E3CD80688001A37CEC +:10B4B0008001A29C8001AD98EBCD40681695149652 +:10B4C0001893F01F00060C990A9AE6CCFFFC308B0B +:10B4D000F01F0003E3CD80688001A37C8001AD985C +:10B4E000EBCD4068189316951496F01F00090C9A3E +:10B4F0000A9BE6CCFFFCF01F00070C990A9AE6CCE9 +:10B50000FFFB303BF01F0004E3CD80688001A37C8B +:10B510008001A29C8001AD98EBCD406818931695F0 +:10B520001496F01F00100C9A0A9BE6CCFFFCF01F4B +:10B53000000E0C990A9AE6CCFFFB306BF01F000B53 +:10B540000A9AE6CCFFF50C99306BF01F00080C9AB4 +:10B550000A9BE6CCFFEFF01F0004E3CD80680000FB +:10B560008001A37C8001A29C8001AD98EBCD406856 +:10B57000169514961893F01F000C0C990A9AE6CCB5 +:10B58000FFFC306BF01F00090C9A0A9BE6CCFFF61B +:10B59000F01F00070C9A0A9BE6CCFFF5F01F000491 +:10B5A000E3CD80688001A37C8001AD988001A29CDE +:10B5B000EBCD4068169514961893F01F000D0C996A +:10B5C0000A9AE6CCFFFC306BF01F000A0A9AE6CC20 +:10B5D000FFF60C99302BF01F00070C9A0A9BE6CC63 +:10B5E000FFF4F01F0005E3CD806800008001A37C1C +:10B5F0008001AD988001AB3CEBCD40681695149668 +:10B600001893F01F000D0C990A9AE6CCFFFC306BE2 +:10B61000F01F000A0A9AE6CCFFF60C99302BF01FB7 +:10B6200000070C9A0A9BE6CCFFF4F01F0005E3CD5F +:10B63000806800008001A37C8001AD988001AB3C54 +:10B64000EBCD4068169514961893F01F00100C99D6 +:10B650000A9AE6CCFFFC306BF01F000D0C9A0A9B97 +:10B66000E6CCFFF6F01F000B0C9A0A9BE6CCFFF429 +:10B67000F01F00080C990A9AE6CCFFF2302BF01F5D +:10B680000004E3CD806800008001A37C8001AD98B8 +:10B690008001A2FCEBCD4068169514961893F01F1C +:10B6A000000A0C990A9AE6CCFFFC306BF01F0007E9 +:10B6B0000C990A9AE6CCFFF6302BF01F0004E3CD7C +:10B6C000806800008001A37C8001AD98EBCD4068CC +:10B6D000169514961893F01F000A0C990A9AE6CC56 +:10B6E000FFFC306BF01F00070C990A9AE6CCFFF6BE +:10B6F000302BF01F0004E3CD806800008001A37CA4 +:10B700008001AD98EBCD4068189316951496F01F04 +:10B7100000220C9A0A9BE6CCFFFCF01F00200C9A3A +:10B720000A9BE6CCFFFAF01F001D0C9A0A9BE6CCA0 +:10B73000FFF8F01F001A0C990A9AE6CCFFF6306B5E +:10B74000F01F00170C9A0A9BE6CCFFF0F01F0015C3 +:10B750000C9A0A9BE6CCFFEFF01F00120C990A9A94 +:10B76000E6CCFFEE302BF01F000E0C9A0A9BE6CCC5 +:10B77000FFECF01F00090C9A0A9BE6CCFFE8F01FD3 +:10B7800000060C9A0A9BE6CCFFE4F01F0007E3CD0D +:10B79000806800008001A37C8001A2FC8001AD983C +:10B7A0008001A29C8001AB3CEBCD406816951496BD +:10B7B0001893F01F000C0C990A9AE6CCFFFC306B32 +:10B7C000F01F00090C9A0A9BE6CCFFF6F01F000759 +:10B7D0000C9A0A9BE6CCFFF5F01F0004E3CD8068CD +:10B7E0008001A37C8001AD988001A29CEBCD4068D4 +:10B7F000169514961893F01F000C0C990A9AE6CC33 +:10B80000FFFC306BF01F00090C9A0A9BE6CCFFF698 +:10B81000F01F00070C9A0A9BE6CCFFF5F01F00040E +:10B82000E3CD80688001A37C8001AD988001A29C5B +:10B83000EBCD4068189316951496F01F00120C9AE1 +:10B840000A9BE6CCFFFCF01F00100C9A0A9BE6CC8A +:10B85000FFFAF01F000D0C9A0A9BE6CCFFF8F01FD0 +:10B86000000A0A9AE6CCFFF60C99306BF01F00072D +:10B870000C9A0A9BE6CCFFF0F01F0005E3CD806830 +:10B880008001A37C8001A2FC8001AD988001AB3CCB +:10B89000EBCD4068189316951496F01F00100C9A83 +:10B8A0000A9BE6CCFFFCF01F000E0C9A0A9BE6CC2C +:10B8B000FFFAF01F000B0C990A9AE6CCFFF8306BE8 +:10B8C000F01F00080C990A9AE6CCFFF2302BF01F0B +:10B8D0000005E3CD806800008001A37C8001A2FC0C +:10B8E0008001AD98EBCD4068189316951496F01F23 +:10B8F00000090C9A0A9BE6CCFFFFF01F00060C998A +:10B900000A9AE6CCFFFE302BF01F0003E3CD8068DF +:10B910008001A29C8001AD98EBCD406816951496ED +:10B920001893F01F00130C990A9AE6CCFFFF306BB6 +:10B93000F01F00100C9A0A9BE6CCFFF9F01F000CD8 +:10B940000C9A0A9BE6CCFFF8F01F00090A9AE6CC95 +:10B95000FFF70C99306BF01F00070C9A0A9BE6CC9E +:10B96000FFF1F01F0003E3CD806800008001A29C7E +:10B970008001AD98EBCD4068189316951496F01F92 +:10B9800000060C9A0A9BE6CCFFFCF01F0004E3CDF6 +:10B99000806800008001A37C8001B918EBCD40686D +:10B9A0001696149518931499169A306BF01F000888 +:10B9B0000A9A0C9BE6CCFFFAF01F00060A9A0C9B31 +:10B9C000E6CCFFF9F01F0003E3CD80688001AD985D +:10B9D0008001A29CEBCD4068189316951496F01F39 +:10B9E00000060C9A0A9BE6CCFFFCF01F0004E3CD96 +:10B9F000806800008001A37C8001B99CEBCD406889 +:10BA0000189316951496F01F00090C9A0A9BE6CC21 +:10BA1000FFFFF01F00060C990A9AE6CCFFFE306B80 +:10BA2000F01F0003E3CD80688001A29C8001AD98E7 +:10BA3000EBCD4068189316951496F01F00060C9AEB +:10BA40000A9BE6CCFFFCF01F0004E3CD80680000F9 +:10BA50008001A37C8001B9FCD4011499169A308B23 +:10BA6000F01F0002D80200008001AD98EBCD4068C5 +:10BA7000169514961893F01F00090A9AE6CCFFFC5D +:10BA80000C99306BF01F00060C9A0A9BE6CCFFF66F +:10BA9000F01F0004E3CD80688001A37C8001AD9895 +:10BAA0008001A2FCEBCD4068189316951496F01F08 +:10BAB00000090C9A0A9BE6CCFFFCF01F00070C99CA +:10BAC0000A9AE6CCFFFB303BF01F0004E3CD806810 +:10BAD0008001A37C8001A29C8001AD98D4011499BF +:10BAE000169A320BF01F0002D80200008001AD98B8 +:10BAF000EBCD4068189316951496F01F00180C9A19 +:10BB00000A9BE6CCFFE0F01F00160C9A0A9BE6CCDD +:10BB1000FFDEF01F00140C9A0A9BE6CCFFDDF01F3D +:10BB200000110C990A9AE6CCFFDC306BF01F000E76 +:10BB30000C9A0A9BE6CCFFD6F01F000C0C9A0A9BCD +:10BB4000E6CCFFCEF01F00070C9A0A9BE6CCFFCD97 +:10BB5000F01F0004E3CD80688001BADC8001A2FC04 +:10BB60008001A29C8001AD988001BA58EBCD40685D +:10BB7000189316951496F01F00060C9A0A9BE6CCB3 +:10BB8000FFFCF01F0004E3CD806800008001A37C6F +:10BB90008001BAF0D4011499169A303BF01F0002CC +:10BBA000D80200008001AD98EBCD40E018971695C3 +:10BBB0001496F01F000D6E1C580CC0800C990A9A48 +:10BBC0006E0BF01F000AE3CD80E05816C0918A99F1 +:10BBD0006A4812088F186E098A181208AA18E3CD4D +:10BBE00080E000008001A37C8001AD98EBCD40682F +:10BBF000189316951496F01F00060C9A0A9BE6CC33 +:10BC0000FFFCF01F0004E3CD806800008001A37CEE +:10BC10008001BBA8EBCD4068189316951496F01FD1 +:10BC200000100C9A0A9BE6CCFFFCF01F000E0C994A +:10BC30000A9AE6CCFFFB303BF01F000B0A9AE6CCD9 +:10BC4000FFF80C99308BF01F00080C9A0A9BE6CC89 +:10BC5000FFF0F01F0006E3CD806800008001A37CA8 +:10BC60008001A29C8001AD988001BBA8EBCD40680B +:10BC7000169514961893F01F00090A9AE6CCFFFC5B +:10BC80000C99308BF01F00060C9A0A9BE6CCFFF44F +:10BC9000F01F0004E3CD80688001A37C8001AD9893 +:10BCA0008001BBA8EBCD40801697189B580AC0F1C5 +:10BCB0008E1C8E89FDDCC010FCC8FFF91238C285CD +:10BCC000F8C8FFF88F3AAE18E3CD8080581AC070DC +:10BCD0008E1CF8C8FFF8AE18E3CD80808E9A8E894E +:10BCE000F4C8FFF91238C2C46E48140811F9B889B3 +:10BCF00011EAB89A11D9B8A911CAB8BA11B9B8C914 +:10BD000011AAB8DA1199B8E9118AB8FACE2B17F846 +:10BD10006E4A1C0AB48817E9B49917D8B4A817C991 +:10BD2000B4B917B8B4C817A9B4D91798B4E8178923 +:10BD3000B4F98E1CF8C8FFF8AE18E3CD8080300B44 +:10BD4000308A8F3BF01F00028E1CCC4B800091D0BC +:10BD5000EBCD4068189316951496F01F000C0C9AC2 +:10BD60000A9BE6CCFFF8F01F000A0C9A0A9BE6CC6F +:10BD7000FFF6F01F00070C9A0A9BE6CCFFF4F01FB9 +:10BD80000005E3CD806800008001BCA48001A2FC16 +:10BD90008001AB3CEBCD40F8206D169714961499BA +:10BDA0001895169A306BF01F002D0C9A0E9BEACC5A +:10BDB000FFFAF01F002B0C9A0E9BEACCFFF9F01F44 +:10BDC00000280C9A0E9BEACCFFF8F01F00260C9A74 +:10BDD0000E9BEACCFFF0F01F00240C9A0E9BEACCDD +:10BDE000FFECF01F0021318A0E9B1A9CF01F001FF0 +:10BDF000EAC3FFE81A940C9A1A9B069CF01F001ADB +:10BE00005816C1801A9B0C9A6A7CF01F00199A98E8 +:10BE10008E992048F00901098B690C9A069C0E9BAB +:10BE2000F01F00116A698E181208AE182FADE3CD0D +:10BE300080F86A698E182FC81208E06B00E8BA080B +:10BE40006E5CF01F000C8B7CCF20505C1A9B0C9A10 +:10BE5000F01F0007CE3B00008001AD988001A29C3E +:10BE60008001BCA48001A37C800091DC8001BD50D6 +:10BE70008001D3ECEBCD4068189316951496F01F13 +:10BE800000120C9A0A9BE6CCFFFCF01F00100C9AE3 +:10BE90000A9BE6CCFFFAF01F000D0C9A0A9BE6CC39 +:10BEA000FFF8F01F00090C9A0A9BE6CCFFF4F01F84 +:10BEB00000060C9A0A9BE6CCFFF0F01F0005E3CDCC +:10BEC000806800008001A37C8001A2FC8001BD94F9 +:10BED000EBCD40E0189716951496F01F000B0C9AC6 +:10BEE0000A9BEECCFFFCF01F00090FD93008F009C7 +:10BEF0001800C0700C9A0A9BEECCFFF8F01F0004EB +:10BF0000E3CD80E08001A37C8001B8E48001BD9492 +:10BF1000EBCD4060202D301A18951696FACCFFFE16 +:10BF2000F01F00089A181BF92FE8F0090109AC0965 +:10BF30001BCA8B5A1BD88B482FEDE3CD80600000C5 +:10BF40008001A444EBCD40E07808975818971696E6 +:10BF50007859E049003FE0880004E3CF80E0FEF834 +:10BF6000029AF009032F78455815E0800127E04533 +:10BF70000080CF41780C301AF01F00A1E3CF90E091 +:10BF800078485808C391780C301AF01F009EE3CF10 +:10BF900090E07848F0C90005E049008FFE9BFFDF84 +:10BFA000FEF80264F009032F7848E0480081E08041 +:10BFB000010CE08A002BE0480083E0800118E08556 +:10BFC0000110E0480085CCA1780C301AF01F008FDA +:10BFD000E3CF90E0780C301AF01F008DE3CF90E0B3 +:10BFE0007848F0C90001E049009BFE9BFFB8FEF8CD +:10BFF0000222F009032FE0480081CB01780C301AAF +:10C00000F01F0085E3CF90E05848E08000E4E0486E +:10C010000080CA41781A300B780CF01F00806E0C3B +:10C020000C9B301AF01F007EE3CF90E0780C301AA2 +:10C03000F01F007CE3CF90E0780C301AF01F007AFC +:10C04000E3CF90E0780C301AF01F0078E3CF90E057 +:10C05000780C301AF01F0076E3CF90E0780C301A9D +:10C06000F01F0074E3CF90E0780C301AF01F0072DC +:10C07000E3CF90E0780C301AF01F0070E3CF90E02F +:10C08000780C301AF01F006EE3CF90E0780C301A75 +:10C09000F01F006CE3CF90E0780C301AF01F006ABC +:10C0A000E3CF90E0780C301AF01F0068E3CF90E007 +:10C0B000780C301AF01F0066E3CF90E0780C301A4D +:10C0C000F01F0064E3CF90E0780C301AF01F00629C +:10C0D000E3CF90E0780C301AF01F0060E3CF90E0DF +:10C0E000780C301AF01F005EE3CF90E0780C301A25 +:10C0F000F01F005CE3CF90E0780C301AF01F005A7C +:10C10000E3CF90E0780C301AF01F0058E3CF90E0B6 +:10C11000780C301AF01F0056E3CF90E0780C301AFC +:10C12000F01F0054E3CF90E0780C301AF01F00525B +:10C13000E3CF90E0780C301AF01F0050E3CF90E08E +:10C14000780C301AF01F004EE3CF90E0780C301AD4 +:10C15000F01F004CE3CF90E0780C301AF01F004A3B +:10C16000E3CF90E0780C301AF01F0048E3CF90E066 +:10C17000780C301AF01F0046E3CF90E0780C301AAC +:10C18000F01F0044E3CF90E0780C301AF01F00421B +:10C19000E3CF90E0780C301AF01F0040E3CF90E03E +:10C1A000780C301AF01F003EE3CF90E0780C301A84 +:10C1B000F01F003CE3CF90E0780C0A9AF01F003AA1 +:10C1C0000A9CE3CD80E0780C301AF01F0038E3CFF2 +:10C1D00090E0780C301AF01F0036E3CF90E0780C36 +:10C1E000301AF01F0034E3CF90E0780C301AF01FC3 +:10C1F0000032E3CF90E000008003B8288001AAEC71 +:10C200008001A4988003B9288001B3248001A37C15 +:10C210008003BB688001A4CC800091D08001BC1455 +:10C220008001BAA48001A4748001BA6C8001AC546E +:10C230008001AA808001AE8C8001AAC88001AAA4D6 +:10C240008001AA208001AF5C8001A9CC8001A9787F +:10C250008001A9488001A8F48001A8D08001A884A9 +:10C260008001A8608001B1548001B1B08001B1F4B7 +:10C270008001A8188001AA508001B0F88001A83C74 +:10C280008001A7F48001B4E08001B56C8001B5B0F5 +:10C290008001B5F88001B6408001BED08001B5189C +:10C2A0008001B9748001AE3C8001B3AC8001A6145A +:10C2B0008001B3688001B2E0EBCD40C012971499C1 +:10C2C0008E96109A582CC280E08A0008584CC360A1 +:10C2D000587CC190E3CF80C0580CC0A0581CCFB18F +:10C2E00058EBFE9BFFF9FEF80312F00B032F580BDF +:10C2F000CF21129C0E9BF01F00C28E98F006010CFD +:10C30000E3CD80C0202BE04B007FFE9BFFE5FEF8D5 +:10C3100002F2F00B032F582BE080015DE089001A38 +:10C32000580BC260581BCD71129C0E9BF01F00B6BB +:10C330008E98F006010CE3CD80C0580BCCC1129C46 +:10C340000E9BF01F00B28E98F006010CE3CD80C06A +:10C35000584BC170E0850148585BCBD1129C0E9BB5 +:10C36000F01F00AB8E98F006010CE3CD80C0129C4C +:10C370000E9BF01F00A88E98F006010CE3CD80C044 +:10C38000129C0E9BF01F00A48E98F006010CE3CDCA +:10C3900080C0129C0E9BF01F00A18E98F006010C2D +:10C3A000E3CD80C0129C0E9BF01F009D8E98F0067E +:10C3B000010CE3CD80C0129C0E9BF01F009A8E985A +:10C3C000F006010CE3CD80C0129C0E9BF01F00967E +:10C3D0008E98F006010CE3CD80C0129C0E9BF01FDE +:10C3E00000938E98F006010CE3CD80C0129C0E9B4A +:10C3F000F01F008F8E98F006010CE3CD80C0129CD8 +:10C400000E9BF01F008C8E98F006010CE3CD80C0CF +:10C41000129C0E9BF01F00888E98F006010CE3CD55 +:10C4200080C0129C0E9BF01F00858E98F006010CB8 +:10C43000E3CD80C0129C0E9BF01F00818E98F00609 +:10C44000010CE3CD80C0129C0E9BF01F007E8E98E5 +:10C45000F006010CE3CD80C0129C0E9BF01F007A09 +:10C460008E98F006010CE3CD80C0129C0E9BF01F4D +:10C4700000778E98F006010CE3CD80C0129C0E9BD5 +:10C48000F01F00738E98F006010CE3CD80C0129C63 +:10C490000E9BF01F00708E98F006010CE3CD80C05B +:10C4A000129C0E9BF01F006C8E98F006010CE3CDE1 +:10C4B00080C0129C0E9BF01F00698E98F006010C44 +:10C4C000E3CD80C0129C0E9BF01F00658E98F00695 +:10C4D000010CE3CD80C0129C0E9BF01F00628E9871 +:10C4E000F006010CE3CD80C0129C0E9BF01F005E95 +:10C4F0008E98F006010CE3CD80C0129C0E9BF01FBD +:10C50000005B8E98F006010CE3CD80C0129C0E9B60 +:10C51000F01F00578E98F006010CE3CD80C0129CEE +:10C520000E9BF01F00548E98F006010CE3CD80C0E6 +:10C53000129C0E9BF01F00508E98F006010CE3CD6C +:10C5400080C0129C0E9BF01F004D8E98F006010CCF +:10C55000E3CD80C0129C0E9BF01F00498E98F00620 +:10C56000010CE3CD80C0129C0E9BF01F00468E98FC +:10C57000F006010CE3CD80C0129C0E9BF01F004220 +:10C580008E98F006010CE3CD80C0129C0E9BF01F2C +:10C59000003F8E98F006010CE3CD80C0129C0E9BEC +:10C5A000F01F003B8E98F006010CE3CD80C0129C7A +:10C5B0000E9BF01F00388E98F006010CE3CD80C072 +:10C5C000129C0E9BF01F00348E98F006010CE3CDF8 +:10C5D00080C0129C0E9BF01F00318E98F006010C5B +:10C5E000E3CD80C0129C0E9BF01F002D8E98F006AC +:10C5F000010CE3CD80C000008003BDD88001A49869 +:10C600008003BE148001BC6C8001AE648001A5C0B3 +:10C610008001B4B88001A5F08001B8308001B29CDF +:10C620008001B6948001B6CC8001B9D48001BA30C3 +:10C630008001BB6C8001B7048001B7EC8001BA6C4B +:10C640008001B8908001BE748001A5188001A55CAE +:10C650008001B7A88001A7308001A7888001AE8C37 +:10C660008001AED88001A7D08001AB148001AF1843 +:10C670008001A9FC8001A9A88001AFD48001A92470 +:10C680008001B08C8001A8A88001B22C8001A7ACE9 +:10C690008001B2648001BBEC8001B4808001B3E40E +:10C6A000EBCD40FE208D306A18977853784578019D +:10C6B000FAC2FFE6300B049CF01F00384B88F139BA +:10C6C000010BE06AFFFFFB69001E300B1A9CF01F94 +:10C6D0000035302A1A9B049CF01F0033029A302840 +:10C6E0001A990A9B069CF01F00319A194B08F9D938 +:10C6F000C0101188103CF9B60200F1DCE318E06AC2 +:10C7000000FFF1DAE326EDD9E309FBF93C01F9D6A4 +:10C71000E30C1A944A78118A580AC060F4C80001E0 +:10C72000F9E80008C2918F3CF01F00238F2CC31042 +:10C730006E3A300BF01F0019FB66001F6E2BFB6377 +:10C74000001CFB65001D8E78F5D8C01020281A9CAF +:10C75000FB58001AF01F0013049C1A9B300AF01FAC +:10C7600000121A99029A0A9B069C3008F01F000FCB +:10C770002F8DE3CF90FE9A18F4C90001F9E9000962 +:10C78000F40901095C591208120CBA181206CCCB34 +:10C790002F8DE3CD80FE0000800091D0000087F453 +:10C7A0008001C7B88001A4448001C2B8000079E5C7 +:10C7B000000079E48000920030083019B838B818C9 +:10C7C000B828B80A3008994B993999285EFCD703E4 +:10C7D000EBCD4068189316951496F01F00090C9A3B +:10C7E0000A9BE6CCFFFFF01F00060C9A0A9BE6CCE2 +:10C7F000FFFEF01F0004E3CD806800008001A29CD2 +:10C800008001A2FCEBCD40681696149518931499FC +:10C81000169A303BF01F00050A9A0C9BE6CCFFFDF0 +:10C82000F01F0003E3CD80688001AD988001A29CD9 +:10C83000EBCD40681696149518931499169A303BD0 +:10C84000F01F00050A9A0C9BE6CCFFFDF01F0003C9 +:10C85000E3CD80688001AD988001A29CD431FACEEE +:10C86000FFDC189616971494129210907C157C0198 +:10C87000581AC2D0C153582AC1300D893FF8F00967 +:10C880001800C2100D98E2081900E08B0005E008BE +:10C890001900C6E23FF83009AC88AC99D83A8E1836 +:10C8A000AE383FF80D89F0091800C0D00C9C089AEA +:10C8B0000E9BF01F0034089A0E9BECCCFFFFF01F7C +:10C8C0000031CDCB3008300CAC98D83296285808BF +:10C8D000C4C0B618AE3830088B08AC983FFAAC8AA2 +:10C8E0008E198E08F2081900FE98FFEE1494ECC31E +:10C8F000FFFFC1D8E8081800EDF41E000D9A8E184D +:10C900008E89F408000B5C781019123AE089002631 +:10C91000AE1B6A082FF88B080D89E8091800CB3187 +:10C920008E198E08F2081900FE98FFCEAE39301A23 +:10C930000E9B0C9CF01F0013301A0E9B069CF01FE0 +:10C9400000110D88E4081800CD618E888E990D9A2B +:10C950001218103AE08A000E3FF83009AC88AC9902 +:10C960008E182028AE08C8AB9618B628CB4BDA3AFA +:10C970006A0A6E293018F00A094810498F29C7EB56 +:10C980008001A29CEBCD4040201D1A9E9AF65C7857 +:10C990001ADE1AD6F01F00032FED2FFDE3CD8040E5 +:10C9A0008001C85CEBCD40E0302818951AD8169667 +:10C9B00014973069F01F00072FFD580CC0700E9AB5 +:10C9C0000C9BEACCFFFEF01F0004E3CD80E00000EA +:10C9D0008001C9848001A2FCEBCD40E0301818959D +:10C9E0001AD81696149732A9F01F00072FFD580C7D +:10C9F000C0700E9A0C9BEACCFFFEF01F0004E3CD42 +:10CA000080E000008001C9848001A29CEBCD40E061 +:10CA1000305818951AD8169614973029F01F001020 +:10CA20002FFD580CC190EACCFFFE0E9A0C9BF01F14 +:10CA3000000D0E9A0C9BEACCFFFCF01F000B0E9A27 +:10CA40000C9BEACCFFFBF01F00080E9A0C9BEACC73 +:10CA5000FFFAF01F0005E3CD80E000008001C984EB +:10CA60008001A2FC8001A29CEBCD40E0301818951B +:10CA70001AD8169614973039F01F00072FFD580C5E +:10CA8000C0700E9A0C9BEACCFFFEF01F0004E3CDB1 +:10CA900080E000008001C9848001A29CEBCD40E0D1 +:10CAA000306818951AD8169614973049F01F001060 +:10CAB0002FFD580CC190EACCFFFE0E9A0C9BF01F84 +:10CAC000000D0E9A0C9BEACCFFFDF01F000A0E9A97 +:10CAD0000C9BEACCFFFCF01F00080E9A0C9BEACCE2 +:10CAE000FFFAF01F0005E3CD80E000008001C9845B +:10CAF0008001A29C8001A2FCEBCD40E0301818958B +:10CB00001AD81696149730A9F01F00072FFD580C5D +:10CB1000C0700E9A0C9BEACCFFFEF01F0004E3CD20 +:10CB200080E000008001C9848001A29CD43120BD36 +:10CB30005019500818961697581AC390C272E06898 +:10CB400000FDE06900DD1AD8300A3018F01F005CE3 +:10CB50002FFD580CC1E0300A0E9BECCCFFFEF01FFD +:10CB60000059300A0E9BECCCFFFDF01F0056300A36 +:10CB70000E9BECCCFFFCF01F0053ECCCFFFB0E9B9C +:10CB8000300AF01F0050301CC048582AC040301CEA +:10CB90002F5DD83219893FF8F0091800E080008B2A +:10CBA0009618301C2FA8B6182F5DD832761850581A +:10CBB000B1485038760A504AF6E80008F8C2FFFE3D +:10CBC000FAE90018F8C3FFFDF6EA0010F8C9FFFB08 +:10CBD000FAEB0020F8C4FFFC50293FF5FAC0FFD85B +:10CBE000E06100FDC0680D998E382FE81208AE286C +:10CBF0001AD030181AD1E06900DD109A0E9B0C9CF7 +:10CC0000F01F00312FED580CC4105805FBF5500AE9 +:10CC1000FBF8400AF9B90401F1D9E408EBD8E405BE +:10CC2000301A0E9B049CF01F0027301A0E9B069CA6 +:10CC3000F01F0024301A0E9B089CF01F00220DA844 +:10CC40003009F2081800CD010DB83509F2081800B6 +:10CC5000CCB10DC83F29F2081800CC61301A0E9BE8 +:10CC6000402CF01F00180DD84019F2081800CBC155 +:10CC70004038301CAE28F80509496E2812488F2824 +:10CC800040095809C8509305C84B4038FB58001458 +:10CC9000FAE80020EEE90010FAEA0010EEEB0000DE +:10CCA000FAE80018EEE90008AC9C3FF8AC882F5D6C +:10CCB000D8323008B898300CC6CB00008001C98447 +:10CCC0008001A29C8001C85CD431207D1895169704 +:10CCD00014961293581AC110C0B2300830290C9A19 +:10CCE0000E9B0A9CF01F0032C5712F9DD832582A26 +:10CCF000CF50301C2F9DD83276185018760AF0008D +:10CD00001410500A1A91F6E80008F8C4FFFAFAE97C +:10CD100000083FF6F6EA0010FAC2FFE8FAEB00104E +:10CD2000C1A85806FBF65006FBF84006F9B9040105 +:10CD3000F1D9E408EDD8E406301A0E9B089CF01FE8 +:10CD4000001D0BE8E6081800C1D00B998E382FE8BB +:10CD50001208AE2804983029301A0E9B0A9CF01F46 +:10CD60000014CE01BA20E2E80010EEE90010E2E87B +:10CD70000000EEE90000E2EA0008EEEB00082F9D5B +:10CD8000D83230186E29F006094AAE201449109C9A +:10CD90008F292F9DD8320B982FF8EACCFFFA0C9AE6 +:10CDA0000E9BAA98F01F0003301CCA5B8001CB2C9D +:10CDB0008001A29CEBCD40EC206D301918971693A2 +:10CDC0001495F01F002DC0412FADE3CD80ECEECCCB +:10CDD000FFF90A9A069BF01F00290A9A069BEECCDF +:10CDE000FFF8F01F00260A9A069BEECCFFF7F01F13 +:10CDF00000230A9A069BEECCFFF6F01F00210A9A48 +:10CE0000069BEECCFFF2F01F001E0A9A069BEECCAA +:10CE1000FFEEF01F001B0A9A069BEECCFFEAF01F04 +:10CE2000001858055F0858255F091248CCE06608CD +:10CE30005008661886160A9A5018EBD8B010BA1522 +:10CE4000E6E80008FAE900082026E6E20010E068BB +:10CE500000FD0A16AE961A9BFAE300100E9C1AD833 +:10CE6000E06900DD3018F01F00072FFD2FADE3CD86 +:10CE700080EC00008001CCC88001A29C8001C7D05A +:10CE80008001C984EBCD40EC206D18971693149562 +:10CE9000582AC18119893FF8F0091800F9F91801D9 +:10CEA000F7F81201F9BA0102F1DAE108F1D9E10863 +:10CEB000F7F81C01F9B80000F9F80E012FADE3CD29 +:10CEC00080EC3009F01F0019CFA0EECCFFF90A9AD0 +:10CED000069BF01F00170A9A069BEECCFFF8F01F86 +:10CEE00000145805CEC166085008661886160A9ABE +:10CEF0005018EBD8B010BA15E6E80008FAE90008B7 +:10CF00002026E6E20010E06800FD0A16AE961A9BA5 +:10CF1000FAE300100E9C1AD8E06900DD3018F01F0B +:10CF200000052FFDCCCB00008001CCC88001A29C65 +:10CF30008001C984D42112951497580A5F095805B5 +:10CF40005F08169A1248C2510B986E29F0C4FFFE72 +:10CF5000F2C800015BD8E08B0015129C089B5D1A9B +:10CF600018965806C0C06E086E192FF80809089A5E +:10CF70000A9B8F088F190C9CF01F00080C9CD8226C +:10CF8000089B5D1A300818968F2C8F188F08CEAB2F +:10CF900030060C9CD8220000800091DCEBCD40FCD8 +:10CFA00012951494580A5F0958055F0818921248A0 +:10CFB0001693C191300995296A085808E08A00162D +:10CFC00012966A270E99089A069B049CF01F000B84 +:10CFD0002FF6EEF7FFF86A085807F7B701F80C3894 +:10CFE000FE99FFF2E3CD80FCEAE80000F4E90000DE +:10CFF0006A2A892AE3CD80FC8001CF34EBCD40FC46 +:10D0000018931695581AC2C0C053582AC5E0E3CDEC +:10D0100080FC782778085808FE9AFFFB7819580991 +:10D02000FE9AFFF79698300612087649F208000437 +:10D030000F9A0E9B2FEA1414089CF01F00332FF652 +:10D04000EEF7FFF866085807F7B701F80C38FE99B5 +:10D05000FFF166198A181208AA18E3CD80FC9628F9 +:10D060005808C3C0B618F9D8B010AA3C300830121E +:10D0700087088718872810948A1C8A0E189AFC0C37 +:10D080001900C212F7DAC0106A46EC0B00081199B9 +:10D09000F2C7FFFE5827C250F1DEC0101618103735 +:10D0A000E0890020E40409496A2B2FF4F3EB00081F +:10D0B000C1C0F4070008AA18F9D8B010189AFC0CDF +:10D0C0001900CE13E3CD80FC781C580CFE9AFFA10A +:10D0D00096181808B618E3CD80FC961CB62CCC6BBD +:10D0E000AA0CFDDCB010CCBBF3EB1008069A8A99B1 +:10D0F0008B28EC090009485B6A5CF01F00058A1A5E +:10D100008A0ECD8B800091DC8001D3EC8001CF347E +:10D11000EBCD40F83FF510941697149340661388B2 +:10D12000EA081800C05130070E9CE3CD80F858047F +:10D130005F1858065F991268CF700C9B5D1718979F +:10D14000C0600C9A089BF01F0004CEFBA685A69C2D +:10D15000CECB0000800091DCEBCD40C0129EF2E807 +:10D160000000F4E9000014977C2A8F2A18961D8984 +:10D17000169C3FF8F0091800C1401D993058F0097D +:10D180001800E088000F2039E06A5556EA1A555514 +:10D19000F20B141FF20A04481619F2090019C028EC +:10D1A00030091AD9189B1C990C9C7C280E9AF01FE8 +:10D1B00000042FFD8F2CE3CD80C000008001D11032 +:10D1C000EBCD406CF2E20000F4E3000072289528F9 +:10D1D0001495722813961AD6F01F00032FFD8B2C7E +:10D1E000E3CD806C8001D110EBCD406FF2E2000006 +:10D1F000F4E30000F2E00008F4E10008F2E20010BD +:10D20000F4E300101495725813961AD6F01F000319 +:10D210002FFD8B5CE3CD806F8001D110EBCD406F93 +:10D22000F2E20000F4E30000F2E00008F4E100089C +:10D23000724895481495724813961AD6F01F000349 +:10D240002FFD8B4CE3CD806F8001D110EBCD406C76 +:10D25000F2E20000F4E30000722895281495722889 +:10D2600013961AD6F01F00032FFD8B2CE3CD806C94 +:10D270008001D110D421310418971AD41696149530 +:10D2800030183329F01F00142FFD580CC0B058057A +:10D29000C0E18C986C4C0F9A100CEECBFFFEF01F87 +:10D2A000000F0F998C181208AC18D8225815CFA16E +:10D2B0000F9AE80A1800E08800073FF83009AE88A6 +:10D2C000AE99CF0B8C986C4BEECCFFFE100BF01F81 +:10D2D0000003CE8B8001C984800091DCD4213018FA +:10D2E000189716961495308410991AD4F01F0014CC +:10D2F0002FFD580CC0B05805C0E18C986C4C0F9AAB +:10D30000100CEECBFFFEF01F000F0F998C181208C7 +:10D31000AC18D8225815CFA10F9AE80A1800E08857 +:10D3200000073FF83009AE88AE99CF0B8C986C4B54 +:10D33000EECCFFFE100BF01F0003CE8B8001C984E2 +:10D34000800091DCEBCD40E0320930081AD9189505 +:10D35000169714961099F01F00132FFD580CC0F06B +:10D360005806C0F18E986E4C0B9A100CEACBFFFE5B +:10D37000F01F000D0B998E181208AE18E3CD80E057 +:10D380005816CF918E986E4B0B9A100BEACCFFFE7D +:10D39000F01F00050B998E181208AE18CF0B000075 +:10D3A0008001C984800091ACD421201D7809189691 +:10D3B000F2C800015BD8E08B0014F2C80008C0E09E +:10D3C0001A943005C0280E98500870079105680C13 +:10D3D000F01F00068D055807CF712FFDD8223008A9 +:10D3E00099082FFDD8220000800091E8EBCD40C0C5 +:10D3F00018971696F6CCFFF8F01F000DC130EEF826 +:10D40000FFF8EEC900089908F8C7FFF8930C9916C1 +:10D410000C9AE06B00FF0E9CF01F00060E9CE3CD03 +:10D4200080C018970E9CE3CD80C000008000920061 +:10D43000800091D0EBCD40FC32E818931AD81692B8 +:10D44000149430683079F01F00232FFD580CC03140 +:10D45000E3CD80FC089A049BE6CCFFFEF01F001E83 +:10D4600007993058F0091800E088001F2039E06A59 +:10D470005556EA1A5555F20B141FF20A0448F20BDE +:10D4800001055814C18030060C972FF6662C0899B8 +:10D490000E0C049A2FD7303BF01F00100C35FE996C +:10D4A000FFF6E3CD80FC5814F9B80000E7F80A0253 +:10D4B000E3CD80FCEA050017645C0E9BF01F0008BA +:10D4C000872CCC700E9A300BF01F0006CDDB0000CD +:10D4D0008001C9848001BB948001AD988001D3ECA8 +:10D4E000800091D0D421189616951497582AC161BE +:10D4F00019893FF8F0091800F9F91801F7F8120135 +:10D50000F9BA0102F1DAE108F1D9E108F7F81C01F2 +:10D51000F9B80000F9F80E01D82230083049F01FA0 +:10D52000000CC0C00D98F0C400045817C0800E99BC +:10D530000A9A089B6C2CF01F0007D822089B6A5C93 +:10D54000F01F00058D2CCF41CF9B00008001CB2C1C +:10D550008001AD988001D3ECEBCD40FC206D189498 +:10D5600016951493582AC18119893FF8F0091800BB +:10D57000F9F91801F7F81201F9BA0102F1DAE10834 +:10D58000F1D9E108F7F81C01F9B80000F9F80E012B +:10D590002FADE3CD80FC30083019F01F0040CF9054 +:10D5A0006A1E501E6A0A500AEAE80008FAE90008F2 +:10D5B000EAEA0010FAEB0010EDDEB0105813C600D6 +:10D5C000E8C7FFFA0999ECC8FFFE12080E9CE5D8DF +:10D5D000B010069A0A9BF01F00328A18E40819005E +:10D5E000CD82069A0A9BE8CCFFF8F01F002E8A181D +:10D5F000E4081900CCE2E8CCFFF4069A0A9BF01F7D +:10D600000028685C88693008F0091900C0E01896A5 +:10D6100030070C9C2FF7069A0A9BF01F00222FC69A +:10D6200088E80E38FE99FFF78A18E4081900CB1233 +:10D63000069AE8CCFFF20A9BF01F0019685888E9A7 +:10D64000887AF009002C3008F00A1900C0E018961A +:10D6500030070C9C2FF7069A0A9BF01F00132FC669 +:10D6600088F80E38FE99FFF78A18E4081900C912E5 +:10D67000069A0A9BE8CCFFF0F01F0009C8ABE8C788 +:10D68000FFFA30EA300B0E9CF01F0008099B6A5C21 +:10D69000F01F0007895CC97B8001CB2C8001A2FCB4 +:10D6A0008001C8308001C804800091D08001D3EC93 +:10D6B000EBCD40FC206D189416951493582AC18127 +:10D6C00019893FF8F0091800F9F91801F7F8120163 +:10D6D000F9BA0102F1DAE108F1D9E108F7F81C0121 +:10D6E000F9B80000F9F80E012FADE3CD80FCE06839 +:10D6F00000FF33091AD83008F01F00532FFD580CD3 +:10D70000CF406A1E501E6A0A500AEAE80008FAE989 +:10D710000008EAEA0010FAEB0010EDDEB010581332 +:10D72000E0800085E8C7FFFE0999ECC8FFFE1208FB +:10D730000E9CE5D8B010069A0A9BF01F00448A1888 +:10D74000E4081900CD22069A0A9BE8CCFFFCF01FE2 +:10D7500000408A18E4081900CC82E8CCFFF8069A49 +:10D760000A9BF01F003A684C88493008F0091900FC +:10D77000C0E0189630070C9C2FF7069A0A9BF01F02 +:10D7800000342FC688C80E38FE99FFF78A18E408BF +:10D790001900CAB2069AE8CCFFF60A9BF01F002BCC +:10D7A000684888C9885AF009002C3008F00A190026 +:10D7B000C0E0189630070C9C2FF7069A0A9BF01FC2 +:10D7C00000252FC688D80E38FE99FFF78A18E4087E +:10D7D0001900C8B2069A0A9BE8CCFFF4F01F001BA0 +:10D7E0008A18E4081900C812069AE8CCFFF20A9BCE +:10D7F000F01F001688C988D81208684A8879F4088A +:10D80000002C3008F0091900FE90FF7018963007C0 +:10D810000C9C2FF706990A9A310BF01F000F2F0668 +:10D8200088F80E38FE99FFF6C60BE8C7FFFE30EA0F +:10D83000300B0E9CF01F0009099B6A5CF01F00086A +:10D84000894CC73B8001C9848001A2FC8001C8309B +:10D850008001C8048001AD98800091D08001D3EC94 +:10D86000EBCD40E0E06800FE18971AD816951496A4 +:10D8700030483059F01F00162FFD580CC031E3CD51 +:10D8800080E0EECCFFFE0C9A0A9BF01F00120C9A6F +:10D890000A9BEECCFFFDF01F000F0C9A0A9BEECC0A +:10D8A000FFFCF01F000C5816C0A00F9B0C990A9AA1 +:10D8B0006E2C203BF01F0008E3CD80E00F9B6A5CDC +:10D8C000203BF01F00068F2CCF11CDAB8001C98407 +:10D8D0008001A29C8001AD988001D3ECEBCD40E0AB +:10D8E00018951696F6CCFFF8F01F000CC12099167B +:10D8F00030089908F8C7FFF80C9A5805EBF71A0595 +:10D90000E06B00FF0E9CF01F00060E9CE3CD80E054 +:10D9100018970E9CE3CD80E080009200800091D0AB +:10D92000EBCD40C0201DF8C60008300C6C1BF01F6A +:10D930000014C1A0500C3007C1286C1B400CF01F14 +:10D9400000111897C1406C1AECCBFFF8EF4AFFFCAE +:10D950000E9CF01F000D6C065806C0505807CEE113 +:10D960004007CF2B400C2FFDE3CD80C01A9CF01F49 +:10D9700000070E9C2FFDE3CD80C000008001D8DCA5 +:10D980008001D3EC800091DC8001D3A8D401E06851 +:10D990000081301999489959189A7408129C11CE2F +:10D9A000F20E18005F089708D802D703486830398C +:10D9B000F0FA00F830089569985BF00B19005F0CDD +:10D9C0005EFC0000000087F419C8300A4869F2F9CB +:10D9D00000F8F4081800F9BC0001F9BC0100F3FCE0 +:10D9E0001A065EFC000087F448483009F0FA00F897 +:10D9F000301C95695EFC0000000087F448B8985A16 +:10DA0000F0FB00F83178F00A1900E08B000B3018B9 +:10DA1000F00A0948E4180080E01803FEC0205EFF09 +:10DA20003008301C97685EFC000087F478185808AE +:10DA30005F0C5EFC5EFF19C830192018F208180050 +:10DA40005FBC5EFC5EFD5EFD19C93008F009180080 +:10DA50005F0C5EFC5EFD5EFFEBCD4080308B189767 +:10DA6000991B300CF01F00078F0CC0803078E069E4 +:10DA700000818F588F49E3CF9080E3CD80800000F4 +:10DA80008001D8DCEBCD40C018971696308B991BDF +:10DA9000300CF01F00108F0CC160301830298F58E7 +:10DAA0008F4948D8B826118948C8B8E948C71189AC +:10DAB000B8F96EB899086EBC580CC0752FFC8FBCB5 +:10DAC000E3CF90C0E3CD80C0F01F0006CF9B0000E5 +:10DAD0008001D8DC00007A280000025C000087F496 +:10DAE00080018450EBCD40FE1897FACCFFE01694ED +:10DAF000781330CB14928F1B129178061095300C4E +:10DB0000F01F00118F0CC1A0307830498F588F4919 +:10DB10009905B8E6B8F1F9630008B8C4B8D248B8B6 +:10DB200048B9B084B28248B76EB899086EBC580C38 +:10DB3000C0752FFC8FBCE3CF90FEE3CD80FEF01FBD +:10DB40000006CF9B8001D8DC000079E5000079E475 +:10DB5000000087F480018450EBCD40FC1897FACC8C +:10DB6000FFE4314B781414938F1B129278061095B2 +:10DB7000300CF01F00158F0CC2003018F3D4C01009 +:10DB80008F488F589913B8429935F9560010F954B7 +:10DB9000001248E7F1D6C0100A481248F9B800FF51 +:10DBA000F9B80100B8586EB999096EBC580CC07527 +:10DBB0002FFC8FBCE3CF90FCE3CD80FCF01F000472 +:10DBC000CF9B00008001D8DC000087F480018450E6 +:10DBD000D401780A3009740B15F8129C129AF01FC0 +:10DBE0000002DA0A80018460D401780A3009740BDB +:10DBF000F538000B129C129AF01F0002DA0A00009E +:10DC000080018460D401780A3009740BF538000B68 +:10DC1000129C129AF01F0002DA0A00008001846050 +:10DC2000D401780A3009740BF538000B129C129A53 +:10DC3000F01F0002DA0A000080018460D401780A33 +:10DC40003009740BF538000B129C129AF01F000279 +:10DC5000DA0A000080018460D401780A3009740B6C +:10DC6000F538000B129C129AF01F0002DA0A00002D +:10DC700080018460D401780A3009740B15F8129C75 +:10DC8000129AF01F0002DA0A80018460EBCD40F89E +:10DC900030C618979916169414930C9B300CF01FED +:10DCA00000108F0C1895C160307831690C9A8F582C +:10DCB000089B8F49F01F000B48B66CB88B086CBCF2 +:10DCC000580CC0A52FFC8DBC301C6A088708E3CD1A +:10DCD00080F8E3CD80F8F01F0005CF6B8001D8DC21 +:10DCE000800091DC000087F480018450EBCD40F887 +:10DCF000308618979916169414930C9B300CF01FCD +:10DD000000108F0C1895C160307831490C9A8F58EB +:10DD1000089B8F49F01F000B48B66CB88B086CBC91 +:10DD2000580CC0A52FFC8DBC301C6A088708E3CDB9 +:10DD300080F8E3CD80F8F01F0005CF6B8001D8DCC0 +:10DD4000800091DC000087F480018450EBCD40F826 +:10DD500033C618979916169414930C9B300CF01F29 +:10DD600000108F0C1895C160307831390C9A8F589B +:10DD7000089B8F49F01F000B48B66CB88B086CBC31 +:10DD8000580CC0A52FFC8DBC301C6A088708E3CD59 +:10DD900080F8E3CD80F8F01F0005CF6B8001D8DC60 +:10DDA000800091DC000087F480018450EBCD40F8C6 +:10DDB000318618979916169414930C9B300CF01F0B +:10DDC00000108F0C1895C160307831190C9A8F585B +:10DDD000089B8F49F01F000B48B66CB88B086CBCD1 +:10DDE000580CC0A52FFC8DBC301C6A088708E3CDF9 +:10DDF00080F8E3CD80F8F01F0005CF6B8001D8DC00 +:10DE0000800091DC000087F480018450EBCD40F865 +:10DE1000330618979916169414930C9B300CF01F28 +:10DE200000108F0C1895C160307831090C9A8F580A +:10DE3000089B8F49F01F000B48B66CB88B086CBC70 +:10DE4000580CC0A52FFC8DBC301C6A088708E3CD98 +:10DE500080F8E3CD80F8F01F0005CF6B8001D8DC9F +:10DE6000800091DC000087F480018450D421189751 +:10DE7000169530CB991B300CF01F00128F0C1896A2 +:10DE8000FAC4FFEC580CC190302830098F588F49E4 +:10DE900048D76EB899086EBC580CC1052FFC8FBCD2 +:10DEA0005805EDF81000EBF81A00089BECCCFFFCCD +:10DEB000308AF01F0006DA2AD822F01F0005CF0BA7 +:10DEC0008001D8DC000087F4800091DC8001845060 +:10DED000EBCD40E018961695310B991B300CF01FD6 +:10DEE00000108D0C1897C1503078317A0A998D58EE +:10DEF0008D4A48CBF8CAFFFCF01F000B48B56AB842 +:10DF00008F086ABC580CC0752FFC8BBCE3CF90E027 +:10DF1000E3CD80E0F01F0006CF9B00008001D8DC3D +:10DF20008001D3EC8001D158000087F48001845037 +:10DF3000EBCD408078076E285808C0B0300C189A96 +:10DF40005C586E0B3109300CF01F0009E3CF908054 +:10DF5000310CF01F00086E189908EF390016991956 +:10DF60006E3899286E4999396E28CEAB800184604D +:10DF700080009200EBCD40FC189716931495314B1E +:10DF80001294991B300CF01F001C8F0C1896FAC2CB +:10DF9000FFE4580CC200302830198F588F495805BB +:10DFA000C1C18D455C7549576EB88D086EBC580C63 +:10DFB000C1F52FFC8FBC5804EDF81000E9F81A00E9 +:10DFC000049B308AECCCFFFCF01F000D301C8D351B +:10DFD000E3CD80FCE3CF80FC5C750A9CF01F000958 +:10DFE0008D4CCF90069B0A9AF01F0005CDDBF01FE9 +:10DFF0000006CE1B8001D8DC000087F4800091DC95 +:10E000008000920080018450EBCD40801897F93C4D +:10E01000000BF01F00084888F0F900F85809C0709C +:10E02000EECBFFFC310A313CF01F0004E3CF9080BF +:10E0300080015FB0000087F480014658D42130C8C9 +:10E040001896109B4904300CE8F500F88D18F01F65 +:10E05000000F8D0C1897C120301830D98D582FCC57 +:10E06000EACBFFE28D49F01F000A68B88F0868BC50 +:10E07000580CC0552FFC89BCDA2AD822F01F0005A5 +:10E08000CFBB0000000087F48001D8DC8001844011 +:10E0900080018450D42130CB1897991B300CF01F8D +:10E0A000000B8F0C1894C1004898301530868F559E +:10E0B0008F462FCCF0FB00F82E2BF01F00060A9C99 +:10E0C000E966000AD822D8228001D8DC000087F453 +:10E0D00080018440EBCD40E030CB1896991B300C8A +:10E0E000F01F00108D0C1897C1703018305948E59A +:10E0F0008D588D492FCCEAFB00F82E2BF01F000B1A +:10E100003028AE586AB98F096ABC580CC0752FFC0C +:10E110008BBCE3CF90E0E3CD80E0F01F0005CF9B08 +:10E120008001D8DC000087F48001844080018450A5 +:10E13000EBCD40FC30C518969915169414931292A5 +:10E140000A9B300CF01F00138D0C1897C1D03018AB +:10E150008D458D580A9A300BF01F000FEECCFFFC56 +:10E16000089BF01F000E078848D6EF68000A058953 +:10E17000EF69000B6CB88F086CBC580CC0752FFC95 +:10E180008DBCE3CF90FCE3CD80FCF01F0006CF9B5D +:10E190008001D8DC800091D080018440000087F4A9 +:10E1A00080018450EBCD40FC30C51896991516942B +:10E1B000149312920A9B300CF01F00128D0C1897CA +:10E1C000C1B0301830B98D588D490A9A300BF01F04 +:10E1D000000E306AAEC4AED3049BEE0A000CF01FF2 +:10E1E000000B48B66CB88F086CBC580CC0752FFC7F +:10E1F0008DBCE3CF90FCE3CD80FCF01F0006CF9BED +:10E200008001D8DC800091D0800091DC000087F490 +:10E2100080018450D431203D502B5018FACEFFD0CD +:10E2200033857C3499157C181896149312917C00D0 +:10E2300050087C220A9B300CF01F00228D0C18978E +:10E24000C370301830A98D580A9A8D49300BF01FD1 +:10E25000001E069A029BEECCFFFCF01F001CEF5341 +:10E2600000244028049BEF680026EF600027306AF6 +:10E27000EECCFFD8F01F00155804C1C0089B308AAF +:10E28000EECCFFD2F01F00114008EF6800364018B6 +:10E2900048F6EF6800376CB88F086CBC580CC05556 +:10E2A0002FFC8DBC2FDDDA3AF01F000ACFBB2FDD2B +:10E2B000D832089B308AEECCFFD2F01F0003CE5B31 +:10E2C0008001D8DC800091D0800091DC000087F4D0 +:10E2D00080018450D4012FCC7808202D500819C912 +:10E2E000BAC919D8BAD8F01F00052FED580CF9B8E3 +:10E2F000010DF9F81A06DA0A80015860D40148D8ED +:10E30000F8CBFFF5F0F900F8733C7808204D502861 +:10E3100019C9FB69000C19D8306AFB68000D1A9CFA +:10E32000F01F0005F01F00052FCD580C5F1CD80210 +:10E33000000087F48002E73680018898EBCD40FE2C +:10E340003007FAC5FFE0189116924A134A1466087E +:10E350000E38E08A00216A08204D50280BC9FB695D +:10E36000000C0BD8EE061504FB68000DE806000A49 +:10E3700015D8BAD87409500915C8BAC8F01F0016C4 +:10E380002FCD580CC0A12FF75907CE2118970E9CFE +:10E39000E3CD80FEEE061504E80600060A9B0C9C01 +:10E3A000F01F000EF3D2C001EE081501AC692FF882 +:10E3B000E808093166090E39FE99FFEBEEC9FFFF47 +:10E3C00048380E9C9109E3CD80FE000000008C5C73 +:10E3D00000008B5C8001889880018440EBCD4080F8 +:10E3E000300819C9F0091800C10048E8F0F700F832 +:10E3F0005807C130F01F000C0E9CF01F000C0E9C43 +:10E40000F01F000BE3CF8080486830A9F0FA00F8D5 +:10E41000301C9569E3CD80800E9CE3CD80800000A8 +:10E42000000087F480015D188001593880015CDCB0 +:10E43000EBCD40E01896F01F00224A2A0DE9F4F7D0 +:10E4400000F85809C1103018F0091800C32030280E +:10E45000F0091800C31030488F687498300CABC8AE +:10E460009598E3CD80E06F3930D8322A8F68496CB7 +:10E47000727B2F4BF01F00156F3C3FF8787BF7390C +:10E4800000C8F0091800C130202DF71600D47845D7 +:10E49000306AEECBFFE21A9CF01F000C0C9B0A9C2A +:10E4A000F01F000B301C2FEDE3CD80E0E3CF90E0B8 +:10E4B00030088F68CD3B30588F68CD0B8001F00459 +:10E4C000000087F400008C608002E7368001E33CA6 +:10E4D000EBCD40E01896F01F00284A8A0DE9F4F7CA +:10E4E00000F85809C1503018F0091800C3603028EE +:10E4F000F0091800C3906F0830492FF88F69EF4872 +:10E5000000407498300CABC89598E3CD80E06F392B +:10E5100030D8322A8F6849AC727B2F4BF01F00191C +:10E520006F3C3FF8787BF73900C8F0091800C1301C +:10E53000202DF71600D47845306AEECBFFE21A9C06 +:10E54000F01F00100C9B0A9CF01F000F301C2FEDD9 +:10E55000E3CD80E0E3CF90E06F0830092FF88F69BA +:10E56000EF480040CCFB6F0830592FF88F69EF4817 +:10E570000040CC8B8001F004000087F400008C6028 +:10E580008002E7368001E33CD421310B1896991BB9 +:10E59000300CF01F00198D0C1897C28030183049CC +:10E5A0008D588D494955302CEAF400F8F01F0014BD +:10E5B000E8CBFFE21896EECCFFF8F01F00126C38A3 +:10E5C000AE38EAF901045819C0D03008AE2830B886 +:10E5D00089686AB98F096ABC580CC0952FFC8BBC3E +:10E5E000DA2AEAF8011C5818CF20D82AF01F0006B2 +:10E5F000CF7B00008001D8DC000087F48001EF6C45 +:10E600008001844080018450EBCD40F81897169427 +:10E6100030CCF01F0046303CF01F00441895302CE1 +:10E62000F01F0042E06A00EC1896E06B00FF0E9CC1 +:10E63000F01F003FE8CBFFE2EECCFFF6F01F003DFD +:10E640006C384BD9AE289208AE483DD86939727BF8 +:10E65000F73A009AF00A1800C480F73900803DD8D4 +:10E66000F0091800C52030050A93F01F00349838CF +:10E67000AE381896F93900A83FF8F0091800C09094 +:10E68000F8C9FF58EECAFF584ADB0E9CF01F002D58 +:10E69000ED3900CC3FF8F0091800C1900E9CECC990 +:10E6A000FF34EECAFF344A6BF01F0027089CF01FAE +:10E6B0000027583CE089000C4A587099ABC99199E1 +:10E6C0003FFA301CEF6A009EE3CD80F85805CF502A +:10E6D000EECCFF62069BF01F001F49D9301C7298D8 +:10E6E000ABA89398E3CD80F8F73900A03008F00983 +:10E6F0001800CB41EAF900B85819CB01F72800A25D +:10E700001295F003161FCB2BF73900863018F0094D +:10E710001800CAA1EAFC00B8581CCA61F728008892 +:10E720001895F003161FCA2B8001EF6C800091D062 +:10E73000800184400000025E8001EFF88001D3EC8C +:10E740008001D1E88001D21C8001808E000087F416 +:10E75000800184F0D421E06800EC1897109B4924D4 +:10E76000300CE8F500F88F18F01F00108F0C189689 +:10E77000C090301830798F588F490A9BF01F000CD9 +:10E78000C021D82A0C9CF01F000B30C88B6868B9D8 +:10E790008D0968BC580CC0452FFC89BCDA2AF01FD3 +:10E7A0000006CFCB000087F48001D8DC8001E608AA +:10E7B0008001F03080018450D421E06800EC18978B +:10E7C000109B4924300CE8F500F88F18F01F00105A +:10E7D0008F0C1896C090301830698F588F490A9B5B +:10E7E000F01F000CC021D82A0C9CF01F000B30C871 +:10E7F0008B6868B98D0968BC580CC0452FFC89BC72 +:10E80000DA2AF01F0006CFCB000087F48001D8DCA5 +:10E810008001E6088001F03080018450EBCD40405B +:10E82000201D18961A9CF01F001849888C69F0FB6F +:10E8300000F85809C1203018F0091900C0B030287C +:10E84000F0091900C170770830492FF89769F74827 +:10E8500000402FFDE3CF80407738301911EA301C9B +:10E86000F20A1800F9B8000CF7F80A062FFDE3CDFC +:10E870008040770830592FF89769F74800402FFDFE +:10E88000E3CF8040800177A4000087F4D401496879 +:10E8900019C9F0FA00F85809C1803028F0091800A9 +:10E8A000C1803048F0091800C0503018F009180035 +:10E8B000C180750830492FF89569F548004019CB9B +:10E8C000302CF01F000AD80A3088301C9568D80216 +:10E8D000750830592FF89569F548004019CBCF1BC2 +:10E8E000301BCEFB000087F480018390D431215D82 +:10E8F000303C169614911290F01F00584D83F8C4C6 +:10E90000FFB0189531CA089B069CF01F0056C0A1A5 +:10E910006D3830AA707BE6CCFFE42D2BF01F005140 +:10E92000C7B06D38FAC7FFC8707B0E9CF6CAFFC827 +:10E930002D2BF01F004D089B0E9CF01F004CC0417A +:10E94000300C2EBDD83231CA0E9BFA0A0002049C4C +:10E95000F01F0047049CF01F004730080E9A500833 +:10E960001A97089B1A9CF01F00446D38707930E8A4 +:10E97000F33A005EF00A1800C670EB3A0074580AC9 +:10E98000CE006D387079EB380075F33B005EF60809 +:10E990001800C0F0EACCFF8A3009C0581938F608D0 +:10E9A0001800C0502FF9123AFE99FFFA123ACC9093 +:10E9B000049CF01F0032CC50049B1A9CF01F0030C6 +:10E9C0001A9B029CF01F002F049B009CF01F002D3F +:10E9D000089B31CA4A2CF01F00266D3830AA707B84 +:10E9E000E6CCFFE42D2BF01F00226D38312A707B1E +:10E9F000E6CCFFDA2C8BF01F001E029B304AE6CCDF +:10EA0000FFC8F01F001B009BE6CCFFC4304AF01F7C +:10EA10000018301CC97B6D38312A707BE6CCFFDAD8 +:10EA20002C8BF01F0010FE91FF7E304AE6CBFFC812 +:10EA3000029CF01F000FE6CBFFC4009C304AF01F81 +:10EA4000000C301CC7FB049CF01F000FFE90FF7AE7 +:10EA50001A9CF01F000EC92B8001EF6C000079E8B2 +:10EA60008000917C80018124800182BC800091DC47 +:10EA700080018658800181E8800182608001817E6A +:10EA8000800180CC80018360800185F4EBCD40FC67 +:10EA9000FACD0110300733095407FEF3022EE6F8D1 +:10EAA00000F854281896129B0E9C8D19F01F0088B0 +:10EAB0008D0C1895E080008A3018303C8D588D4CB4 +:10EAC000F01F0084FACBFEFC1894FACAFEF8FACCC8 +:10EAD000FEF2F01F0081442871390E9CE06B00ECBF +:10EAE0007277F01F007BC710540CE0680420B83820 +:10EAF000442B7738707992D9EDB90000C6B0EDB9E2 +:10EB00000001C06144099238A1B8B238442BE8F83A +:10EB100000B85808C0C07738707A94D9EDB90009A8 +:10EB2000C06144099238A9B8B238442BFAC2FEF148 +:10EB3000441A049CF01F006944185818E08000A58E +:10EB4000C6823079FB38010FF2081800C050440922 +:10EB50009238A5A8B238440CF01F0061049CF01F45 +:10EB600000614428E74C0100EACAFFF071390A9CB1 +:10EB70004DDBF01F005E6858AA286869AA394D3C31 +:10EB800069B85808C440442B773870793078F33A24 +:10EB90000074F00A1800C240EAC9FFF4EACAFFF89C +:10EBA000300CF01F0053581CC53030063018E748B1 +:10EBB000004444095809C0A0FACCFF00F01F004DE2 +:10EBC0000C9C2BCDE3CD80FC30060C9C2BCDE3CDF3 +:10EBD00080FC44099238A1A8B238442BC99BF8F8AC +:10EBE00001AC5808C050F8CCFE54F01F004230CBA6 +:10EBF000300CF01F0037E74C01AC189AC080442855 +:10EC0000713B76794B8B28C9F01F003B442BCC5BC2 +:10EC10005828CA51442C1A9B2E2CF01F00381A96E3 +:10EC20001AD61ADC442BFB380116FB390117EF3AD0 +:10EC300000CF169CF6CBFF34F01F003144283289F8 +:10EC4000F15900D8442CF01F00262FEDC88BE8F8AE +:10EC500000B85808C2916AB93FF8F368009A3028A2 +:10EC60003039E7480044442891694426F01F0025C4 +:10EC7000ED4C004466B88B0866BC580CC2352FFCBE +:10EC800087BC3016C94B440BEF3A00AF169CFB38DB +:10EC9000010EFB39010FF6CBFF58F01F001B440C8F +:10ECA000F01F000FC5CB44287139727A94D8EDB8A3 +:10ECB0000001CD21189B6ABCF8CCFF66F01F001341 +:10ECC000CCFBF01F0013CDDB000087F48001D8DC03 +:10ECD0008001EF6C80017C4480017EE08001F03097 +:10ECE00080017BD88001D3EC8001AD408001E8EC4D +:10ECF0008001D3A88001D1588001887080018C2CBC +:10ED0000800145C480018B74800184F080018450AF +:10ED1000D431203D189616971493303CF01F0070A4 +:10ED2000301831798D588D4930086C068F0858039A +:10ED3000EDF81805E7F81A0018950DC40898A7D83B +:10ED4000C0505898C0302FDDD83A0DD93018F0098E +:10ED50001800C1003008F0041800F9B80500EFF8F9 +:10ED60005A00F9BC0501F9BC0401EFFC4A002FDD93 +:10ED7000D832303CF01F005A6C98F93A0074F13BDD +:10ED8000005E580ACE80F9380075F6081800C0A059 +:10ED900028AC30092FF91439CDE41938F00B1800DC +:10EDA000CFA1ECC0FFF8009CF01F004E1891CD30B1 +:10EDB0006BB85808C090793870793078F33A00749D +:10EDC000F00A1800C6E0FACCFFF8F01F0047581C04 +:10EDD000C0A0F01F0046029B835C350A31DCF01FA7 +:10EDE0000044CB9B40285818CF51FACCFFFCF01FB1 +:10EDF0000041581CCEF1401820785818FE9BFFEBBC +:10EE00004BD8F0F900F85809CE501A9CF01F003B7F +:10EE1000581CCE01400820285818FE9BFFDC6C9E31 +:10EE20002F4EFCE80000212DFAE90024FCE8000840 +:10EE3000FAE9002CFCE20010FAE30034FCE80018C8 +:10EE4000FAE9003CFD3C0020FB6C0044FD38002149 +:10EE5000322AFB6800454AAB1A9CF01F002AF01FBB +:10EE6000002A2EED580CCB606C9A3FF8F53900C89B +:10EE7000F0091800CAF06008F51B00D4202D6C6C56 +:10EE8000500801C9BAC901D8BAD8F01F0020A56C32 +:10EE900049FB310A180B315CF01F00152FEDC9AB8F +:10EEA0004955EAF801AC5808C050EACCFE54F01FAE +:10EEB000001930CB300CF01F0018EB4C01AC189A45 +:10EEC00048D5580CFE90FF816338494B707928C9AA +:10EED000F01F00136A98ABB88B98C76B8001EF6C7A +:10EEE00080015D44800177A4800145C480014658BB +:10EEF00080015F44000087F480015F2800008C607F +:10EF00008002E736800189108001E33C00008B5CC1 +:10EF10008001D3A88001D8DC8001D3EC8001D158D6 +:10EF2000EBCD40E0206D300818991495502850081A +:10EF30001A9C1A965D191897C10140085808C040DC +:10EF40001A9CF01F0009402C580CC030F01F00071D +:10EF50000E9C2FADE3CD80E01A9C5D15581C5F0719 +:10EF6000CEDB00008001D3A8800091E858DCE08867 +:10EF700000035EFD49B8F00C032F49B8F0CCFFF454 +:10EF80005EFC4998F0CCFFE45EFC4978F0CCFFD4FD +:10EF90005EFC4958F0CCFFCC5EFC4938F0CCFFC495 +:10EFA0005EFC4918F0CCFF305EFC48F8F0CCFF1C4A +:10EFB0005EFC48D8F0CCFEF45EFC48B8F0CCFEBC59 +:10EFC0005EFC4898F0CCFE945EFC487C5EFC486891 +:10EFD000F0CCFFFC5EFC4848F0CCFE785EFC000004 +:10EFE0008003C01400000260483930089318930869 +:10EFF0005EFC000000008C844828700C5EFC000061 +:10F0000000008C84EBCD40C0487618976C1C580CDF +:10F01000C030F01F00060E9CF01F00058D1CE3CDD4 +:10F0200080C0000000008C8480018AD480018AECBA +:10F03000EBCD40C0487618976C0C580CC030F01FD0 +:10F0400000060E9CF01F00058D0CE3CD80C0000073 +:10F0500000008C8480018ABC80018B30D4211894FC +:10F060001696149530CCF01F00121897C1D03018A6 +:10F0700099069915F0060946EC0C1502F01F000CD4 +:10F080008F2CC0F05806E08A000B3009129A6E28C7 +:10F09000F009092A2FF91236FE99FFFB8907DA2AAF +:10F0A0000E9CF01F00043FDCD8220000800092007C +:10F0B000800091E8D4311893169214901291580C54 +:10F0C000C36078093018760CF0090945580CC390D4 +:10F0D000189468160A36C1A468075807C0606E48BD +:10F0E0000238C1B03FCCD832662CF8060327580747 +:10F0F000CF71ECC8FFFFF808002CC0582FF8190793 +:10F100005807CEE110960A38CFA5089CF01F0013CF +:10F1100030083FEC8508D832029A009C6E3BF01F05 +:10F120000010301C89166E088908D832760C580CED +:10F13000C040F01F000ADA3A66093018F0090945A4 +:10F14000308CF01F00081894C060850C30089918A6 +:10F150009908CC0BD8320000800091E8800091DC47 +:10F1600080009200D431109412907818409618952F +:10F17000169214910C9B780A089C5D181893318C98 +:10F18000F01F00131897C1F00C9CF01F00118F3C6A +:10F19000C170089B0C9AF01F000F30088F468F1229 +:10F1A0008F218F508F086A29F203002C78085808A5 +:10F1B000C0C0109970085808CFD19307DA3A0E9C56 +:10F1C000F01F00053FDCD8329907DA3A8000920040 +:10F1D000800091DC800091E8D431203D501C500B20 +:10F1E000149112921090580AC4307418009B740A3B +:10F1F000129C5D18A36C502C6228F00C0307580772 +:10F20000C3706E450A990035C3610E940E93C09881 +:10F210006E075807C2D008936E490A39C2C10E94CE +:10F220006E3B0A9A049CF01F00181896CF214019D3 +:10F230006E18930840086E2991098F1C8F2C6E3C24 +:10F24000F01F00128F468F3640296228F009000C0B +:10F2500078090E39EFF80000F9F80A00EFF810000D +:10F26000E7F81A000E9CF01F00092FDDDA3A3FEC98 +:10F270002FDDD8326E385808CFB00039CF903FCC50 +:10F280002FDDD8328000917C800091E8163C5E0C26 +:10F290007808971C990B97085808F1FB1A015EFC37 +:10F2A00078195809F9F81000F3F81A007808580886 +:10F2B000F1F91A013008990899185EFCD40149380F +:10F2C000FACEFFFC709CE21C0002C1D0209DFD3AEA +:10F2D0000021FB6A0021FCE80000FAE90000FCEADA +:10F2E0000008FAEB0008FCE80010FAE90010FCEA5C +:10F2F0000018FAEB0018FD380020FB680020F01F12 +:10F3000000042F7DD8020000000087F480015AA479 +:10F31000D4014898709CE21C0002C0C0300930CC77 +:10F32000EA1C4000303B129AF01F0004F01F00045A +:10F33000301CD802000087F4800186C88001875401 +:10F34000D4014898709CE21C0002C0C0300930DC37 +:10F35000EA1C4000303B129AF01F0004F01F00042A +:10F36000301CD802000087F4800186C880018754D1 +:10F37000D4014898709CE21C0002C0C03009310CD6 +:10F38000EA1C4000303B129AF01F0004F01F0004FA +:10F39000301CD802000087F4800186C880018754A1 +:10F3A000EBCD4080495818977098E2180002C04190 +:10F3B000109CE3CD8080F01F00126F38302911EAD5 +:10F3C000F20A1800C0D03009303B129A307CEA1C97 +:10F3D0004000F01F000CF01F000CE3CF90806E681F +:10F3E0005898CF213009303B129A30BCEA1C4000BB +:10F3F000F01F0004CF1B0000000087F4800158407C +:10F40000800186C88001875458DBE08A0012F939F0 +:10F41000000C3078F0091800E08B000C595BE08A92 +:10F420000008F939000E3AA8F0091800C0D05EFDB6 +:10F430003888F0091800CFC1F939000D38E8F00913 +:10F4400018005F0C5EFCF938000FF2081800CF01BD +:10F45000F93900103038F0091800CEA1F93900113F +:10F460003008F0091800CE41F93A0012F20A1800EB +:10F47000CDF1F9380013F4081800CDA1F9390014C2 +:10F480003888F0091800CD41F939001538E8F0093D +:10F4900018005F0C5EFCD7033019482891095EFC08 +:10F4A00000007A38EBCD40C0208D48D730088E0957 +:10F4B000F0091900C101E06AFFFF300B1A9CF01F30 +:10F4C00000091A9B302AFACCFFE8F01F00079A18AF +:10F4D0001A96AE088E0C2F8DE3CD80C000007A2ADC +:10F4E0008001C7B88001A498D401F01F00054858D6 +:10F4F000F139010B120C5C8CD80200008001F4A4DD +:10F50000000087F4EBCD4060208D306AFAC5FFE63D +:10F51000300B0A9CF01F00091A9CE06AFFFF300BB9 +:10F52000F01F00070A9C1A9B302AF01F00061A964B +:10F530009A1C2F8DE3CD8060800091D08001C7B8E8 +:10F540008001A444D43120DDFEF60234FACEFFA8B7 +:10F55000189516916C9C1494129310907C177C0251 +:10F56000E21C0002C0312F3DD832FEF802167009AD +:10F570005809C041FE7CFBB4CF7BECF8012458183D +:10F58000C041FE7CFC17CF0BECC9FFE85019129C60 +:10F59000F01F007D581CE08000E30D890D98F009F4 +:10F5A0001800E08200E6302CF01F0078E08000D2E6 +:10F5B0006CB850282FF88DB85807FBF91002EFF9F6 +:10F5C0001A00F01F0073C0E0029B0A9CF01F00713C +:10F5D000E08000C96C98EDB80006C0414E88402913 +:10F5E00091D9F01F006D6008EFDCB010F3D7C010A8 +:10F5F00050091039E08B006C0D882FF8AC880D99FC +:10F60000F0091800C061300A320C149BF01F00632F +:10F61000E8C800020E08FB58002EED38010B30043C +:10F62000FB680032400A300BFB640030FB640031A1 +:10F63000FB640033069CF01F005A069BFAC7FFF4D8 +:10F64000400A0E9CF01F0057300A0E9BFACCFFD2E6 +:10F65000F01F0055ED38010BF9D2C003BA78F01F46 +:10F660000053300CFB520028FB5C002AE041003EB6 +:10F67000E0880008EB39000C3888F0091800C2D087 +:10F680004028300A50980E9BFACCFFDCF01F00484F +:10F690004009ECCCFFE88109F01F0046F01F00464E +:10F6A0003008ED4C00CCED5800D04C49F30A014233 +:10F6B000F00A1900C0604B297298EDB8000EC031F5 +:10F6C000301CC52BF01F003E301CC4EBECCCFFE817 +:10F6D000F01F00383FFCC48BEB39000D38E8F0090F +:10F6E0001800CCF1EB39000E3018F0091800CC915D +:10F6F000EB39000F3038F0091800CC313028EB3BE3 +:10F700000012F00B18005F1A3FE8F00B18005F19A9 +:10F71000126AE80A1800CB51EB380013E218001DFA +:10F720005818CAF1EB380014E21800C85888CA917A +:10F73000189A31F9EA090708F4081800CA212FF9C4 +:10F74000E049003FCF81E0680400FB58002AC99BD4 +:10F75000401CF01F0018FE7CFAECC06BFE7CFC160F +:10F76000C03BECCCFFE8F01F00133FECCFDA401CAD +:10F77000F01F0010FE7CFB4FCF7A0000000087F4E2 +:10F7800000007A38800145DC80019F3080015F04F1 +:10F790008001F4088001F4E880014658800091D08F +:10F7A0008001C7B88001A4448001859C8001A49891 +:10F7B000800145EC800145C4000002608001FBFC33 +:10F7C000D401302CF01F0003300948389109D802C9 +:10F7D0008001A12800007A38D431FACD01385009CF +:10F7E000FACEFEA416971896FEFB031C14947C1305 +:10F7F0007C00F6F801245818C460FEFA030A749CD1 +:10F80000E21C0002C05118970E9C2B2DD832E068E4 +:10F8100000F8FAC5FEFCF5D7C0100C9B0A9C548872 +:10F82000549654A730025472F01F00B8FAC1FEE497 +:10F830000A9B029CF01F00B644C95879E08B00284F +:10F840003018F0090948E2180085C2104488FAC946 +:10F85000FFF45012502854D944D80A9B5478029C83 +:10F86000F01F00ACC1C1302744D95809CCE0FAC818 +:10F87000FFF41039CCA0FACCFECCF01F00A70E9CF0 +:10F880002B2DD83230270E9C2B2DD832448B300CA8 +:10F89000F01F00A2E08000B354DCCDFB44C9E04976 +:10F8A000003FE088000B300744B8EDB80007E08067 +:10F8B000009EF01F009BCD9BFEF80268F009032F0D +:10F8C000ECCAFFFC1588EC08000889080DD81589DA +:10F8D000400BEE0901093067F208010A970A44B8A3 +:10F8E000CE5B44B8F0C90001E0490097E088008988 +:10F8F000447CF01F008D44C8189A300944BC303B4A +:10F90000BFBCF9E8108CF01F0089F01F0085301B88 +:10F91000300CF01F008744B83027CC8B44B8E04847 +:10F920000082C090E08900A9E0480080C040E04823 +:10F930000081CEE10E9B0C9CF01F007ECE9B44B854 +:10F94000E0480082E08000C4E08900915978E080BE +:10F9500000C4E0480081CCD1029CF01F0077CD8B21 +:10F9600044B85808C7E144D65803EDF81000E7F84A +:10F970001A008C28A008FB1A0106445814088908AC +:10F98000FB190104F20A0105400A30EB95056807EE +:10F990000E9CF01F006AE08000AE4DB9F2F801D075 +:10F9A0005808E080009E0A9B0E9C5D18E08000993C +:10F9B00030270DE84D4BF768007B44B8C77B44B84F +:10F9C0005818CB90E0480080CA31CB5B447B44BCE4 +:10F9D000F01F005B44BCF8C800805818FE9BFF99DC +:10F9E000029B5C5CF01F0057C93B30084C69300B30 +:10F9F000B2A8169CF01F0054C5DB3FD7C06B4D3832 +:10FA0000F009032F029CF01F0052C82B029CF01F2C +:10FA10000051C7EB029CF01F0050C7AB029CF01FC7 +:10FA2000004FC76B029CF01F004EC72B029CF01FBB +:10FA3000004DC6EBF01F004C4B3AF54C00D4C68B82 +:10FA4000029CF01F004AC64B029CF01F0049C60BE7 +:10FA5000029CF01F0048C5CB447CF01F0047C58BBB +:10FA6000E0480081C1403027C21BF0C8008F5828F1 +:10FA7000FE9BFF40C4DBE0480084FE90FF5DFE95E6 +:10FA8000FF5BE0480085FE91FF44C55B49E91388B0 +:10FA900020185C58B28844D7C29049BB7698E218C7 +:10FAA0000040C20076D96E081039E088002944B8B9 +:10FAB000A7D854B85803F9B70003EFF81000E7F8D7 +:10FAC0001A00F9B70103FBF8104BCF0A447B32EC64 +:10FAD000F01F002AC1DB029CF01F0029C19B3047A8 +:10FAE000C69B0FD8F768007ACE3B302CF01F00255C +:10FAF000CD5BF01F0025CF403FE7C5CBF01F0023B3 +:10FB0000CD7B0000000087F48001C7B88001BF10E2 +:10FB10008001BF448001D3A88001D8DC80018754D4 +:10FB20008003C04C8001870C800186C880016A88F0 +:10FB3000800237E8800208948001F4088001708C0C +:10FB40008001725480018CE48003C14C8002084023 +:10FB50008002085880020864800208708002087CD5 +:10FB600080020888800145C48002084C8002083465 +:10FB7000800209B48001DA3480016D6C8002094092 +:10FB80008001A12880015F048001F310EBCD406863 +:10FB90003006493C1AD61AD649250C9899064929A7 +:10FBA000492A302B0A9CF01F001249231AD60C98C0 +:10FBB0001AD60699490A303BEACCFFFCF01F000C2C +:10FBC0000C981AD606991AD6EACCFFF848BA305BD8 +:10FBD000F01F0007301C2FADE3CD806800007A389D +:10FBE00000007A2C8001F4988003C3AC80016EB8C9 +:10FBF0008001F7C08003C3C48003C3E05EFCD70369 +:10FC0000EBCD40E0203D1897580CC1F07938707A60 +:10FC100094D9EDB90001C1D04C166C785828C15068 +:10FC20000E9CF01F0040C110ED3900943FF8F00920 +:10FC30001800C1405017FACAFFFC1A9BFACCFFF615 +:10FC4000F01F0039581CC180301C2FDDE3CD80E04F +:10FC50004B366C785818CE51CF8B202D306A1A9CB9 +:10FC60004AFBF6CBFF4AF01F0031F01F00312FEDA9 +:10FC7000580CCEB1CE0BFAC5FFF5400A401B0A9CCA +:10FC8000F01F002C581CCE113079FB38000BF20805 +:10FC90001800C35140187139727A94D8EDB8000435 +:10FCA000CD404A5AF4F801045818C3206DE85808AA +:10FCB000C1D1ED3B008049AA580BC2806F387079E2 +:10FCC000F5380081F33C005EF8081800C1F0F4CA72 +:10FCD000FF7E3009C0581538F8081800C0402FF9C9 +:10FCE0001639CFA516395F0CCB1B48D973F85808C5 +:10FCF000CE10F4F801AC5808CDD1CA7B0A9CF01F95 +:10FD0000000FF01F000FCA10CCDB3009CECB3059EA +:10FD1000FB38000BF2081800C981CC9B0000026080 +:10FD2000800189D080017C448002E736800188B060 +:10FD300080017EE0000087F480017BD880017C1088 +:10FD4000EBCD40E048D818961695F0F700F058072C +:10FD5000C0E00E9CF01F000AC0715806C0A00E9CA7 +:10FD60000A9B5D16C0606E075807CF41E3CF80E065 +:10FD70000E9CE3CD80E00000000087F48001FC00D1 +:10FD8000D401F01F0002D80280021500EBCD40F82C +:10FD9000204DE0683100EA18312EE069312EEA1971 +:10FDA000322E306CFAE90000F01F00631894E080F6 +:10FDB00000B9303CF01F00611896301CF01F005F46 +:10FDC000306A202D189B18951A9CF01F005DF01FBB +:10FDD000005D2FED580CE080008732B80A9C1AD8DD +:10FDE000308930084D8A306BF01F00582FFD1A9370 +:10FDF000ECFC00D8F01F0056ECFC00DCF01F0055B6 +:10FE0000ECFC00E4F01F0054ECFC00E8F01F005391 +:10FE1000ECFC00ECF01F0052ECFC00F0F01F005175 +:10FE2000ED3C00B7F01F00506DC85808F9B801014B +:10FE3000EDF81A1BED3C006FF01F004CECFC012CA0 +:10FE4000F01F004BF01F004BF01F004BF01F004B4A +:10FE5000F01F004BECF800F85808C6616D084C978D +:10FE6000EF4800D8ECFC0130F01F0047300830A903 +:10FE700032B54C6A1AD5E06B0080EECCFED8F01F8C +:10FE80000033EEC6FE58304A300B0C9CF01F004089 +:10FE900030081AD530594BFA0C9C304BF01F002B10 +:10FEA0004BD82FEDF10A01423009F20A1900C26065 +:10FEB0006E99EDB9000EC201A7B930688F9950381C +:10FEC0001A9CFAC8FFF8FAC9FFF4089A308BF01FA1 +:10FED00000331897581CC140089CF01F00312FCDEB +:10FEE000E3CF80F8189A0A991A933068308B1A9CDD +:10FEF000F01F002CC7EBF01F002C6E99CDEB089C77 +:10FF0000F01F00273009303B129A311CEA1C4000D8 +:10FF1000F01F0026F01F00260E9C2FCDE3CD80F8A9 +:10FF20002FCDE3CD80F8300A301B149CF01F002148 +:10FF3000C96B0000800092008001EF6C8002E73600 +:10FF4000800188B08003B804800176C480020594E3 +:10FF500080020538800204DC8002048080020424D0 +:10FF6000800203C8800202F880020374800202D477 +:10FF70008002078C800168AC8002017080020EFC58 +:10FF8000000087F48002031C8003C400800091D02D +:10FF90008003C40C00000260800174C8800091E8F6 +:10FFA0008001776C8001FBFC800186C8800187544A +:10FFB00080020B34EBCD406830094AF63068ACA9BA +:10FFC000AC893129314AAC988D99300530130A9BA0 +:10FFD000ED4500ECED4500E88DA58DC5ED550040E3 +:10FFE000ED550042ED55004EED4500D88DB3ECCCFB +:10FFF000FEF0F01F0022ED450124F01F0021ED5519 +:02000004800278 +:1000000000D0ED4C00CCED5500D249ECF01F001EA5 +:10001000F01F001EED4501B8F01F001DF01F001D70 +:10002000F01F001D0A9BECCCFF48F01F001C0A9B30 +:10003000ECCCFF44F01F0019069BECCCFF40F01FF6 +:100040000017069BECCCFF3CF01F0014ED4300446E +:10005000F01F0013F01F001330DCF01F0013F93CF9 +:10006000000FF01F0012F01F0006ED4C01CC069CA3 +:10007000E3CD8068000087F4800091D0800145C402 +:10008000000084CC80017B24800237D080016CDCAE +:100090008001FB8C8001EFE8800144F8800187C873 +:1000A000800205EC8001EF6C800202B8EBCD40606D +:1000B000E06A01F8300B49D518960A9CF01F001C25 +:1000C000F01F001C0C9CF01F001CEACCFFF4F01F7A +:1000D000001BEACCFFE0F01F0019EACCFFF0F01F94 +:1000E0000017EACCFFECF01F0016EACCFFE8F01F87 +:1000F0000014EACCFFE4F01F0012300930DC1AD9FA +:100100001298129A129BF01F000FF01F000FF01FA1 +:10011000000FF01F000FF01F000FF01F000F301C2A +:100120002FFDE3CD80600000000087F4800091D0B7 +:1001300080016F4880021124800145D6800145F27C +:100140008002067C80014690800149B88001804091 +:1001500080015F98800201584848300A4849911848 +:10016000910A930A5EFC000000007A3C00007A4489 +:10017000D421219D4A846808F3D8C001FB6900633B +:10018000E2180002C14030183005FB6800634A3CA9 +:10019000F01F00233018189BFAC9FF9D300A49FC54 +:1001A000F01F0020581CC2802E7DD8225809C1C0E3 +:1001B000109549D870065806CEB0EA050019FA091C +:1001C00000170C9B0E9C306A2FA72FF5F01F00170D +:1001D0006C265806CDD05905CF516808F1D8C0011A +:1001E000F0051700CD5B306AE06B00FF1A9C3015FC +:1001F000F01F000FCDFB48FCF01F0009EA050018B6 +:10020000189BA1781A99300A48ACF01F00062E7D81 +:10021000D822000000007A448003C414800091B802 +:100220008001776C00007A3C800091DC800091D0E6 +:100230008003C41CD40148697208104C930CEDBCB7 +:100240000002C021DA0AF01F0003D80200007A443D +:1002500080020170EBCD408048C76E095809C1305B +:10026000722A580AF3F80003EFF80A01F3F81003B2 +:10027000F5F81A037238129C910AF01F00056E09F6 +:100280005809CEF1E3CF908000007A3C800091E8DD +:10029000D401F01F0007581CC020D802485972082A +:1002A000EDB80002CFB0F01F0004D8028002025463 +:1002B00000007A4480020170F8C900013058F0094A +:1002C0001800E08B00054838B09C5EFF3FCC5EFC18 +:1002D000000087F4D401201DFAC9FFFC12DC1A9932 +:1002E0003048300A307B483CF01F00032FFDD80215 +:1002F0008003C43C8001776CD401201D3018BA8C77 +:100300001A99300A306B484CF01F0004581C5F0CDF +:100310002FFDD8028003C45C8001776CEBCD406870 +:10032000201D48F61893FAC5FFFC2F060AFC0C9C0A +:10033000F01F000C303CF01F000CF94301300C9C06 +:10034000F01F000A0A993018300A307B488CF01FE1 +:100350000009581C5F0C2FFDE3CD8068000087F476 +:10036000800145FC8001EF6C800145FE8003C46C78 +:100370008001776CEBCD4040201D48E6BA8C2F06FB +:100380000C9CF01F000D303CF01F000C1B88F9483E +:10039000006C0C9CF01F000A30181A99300A309B30 +:1003A000488CF01F0009581C5F0C2FFDE3CD8040E6 +:1003B000000087F4800145FC8001EF6C800145FE60 +:1003C0008003C4748001776CEBCD4068201D1898C1 +:1003D0005CB81895FAC3FFFC48D606D82F060C9CCB +:1003E000F01F000C303CF01F000CF94500F00C9C95 +:1003F000F01F000A1A993048300A309B488CF01FD1 +:100400000009581C5F0C2FFDE3CD8068000087F4C5 +:10041000800145FC8001EF6C800145FE8003C480B3 +:100420008001776CEBCD4068201D18985CB818955A +:10043000FAC3FFFC48D606D82F060C9CF01F000C10 +:10044000303CF01F000CF94500EC0C9CF01F000A3A +:100450001A993048300A309B488CF01F0009581C0C +:100460005F0C2FFDE3CD8068000087F4800145FC20 +:100470008001EF6C800145FE8003C48C8001776CA5 +:10048000EBCD4068201D18985CB81895FAC3FFFCA6 +:1004900048D606D82F060C9CF01F000C303CF01FED +:1004A000000CF94500E80C9CF01F000A1A9930482E +:1004B000300A309B488CF01F0009581C5F0C2FFD40 +:1004C000E3CD8068000087F4800145FC8001EF6C7B +:1004D000800145FE8003C4988001776CEBCD4068B5 +:1004E000201D18985CB81895FAC3FFFC48D606D8AA +:1004F0002F060C9CF01F000C303CF01F000CF9453F +:1005000000E40C9CF01F000A1A993048300A309B16 +:10051000488CF01F0009581C5F0C2FFDE3CD80684C +:10052000000087F4800145FC8001EF6C800145FEEE +:100530008003C4A48001776CEBCD4068201D18981F +:100540005CB81895FAC3FFFC48D606D82F060C9C59 +:10055000F01F000C303CF01F000CF94500DC0C9C37 +:10056000F01F000A1A993048300A309B488CF01F5F +:100570000009581C5F0C2FFDE3CD8068000087F454 +:10058000800145FC8001EF6C800145FE8003C4B012 +:100590008001776CEBCD4060201D48F5BABC2F057B +:1005A0000A9CF01F000E303CF01F000DFAC6FFFC45 +:1005B0000D78F94800D80A9CF01F000A0C993018F1 +:1005C000300A306B488CF01F0009581C5F0C2FFD5F +:1005D000E3CD8060000087F4800145FC8001EF6C72 +:1005E000800145FE8003C4BC8001776CEBCD40C028 +:1005F000206D49EC3008F939010DF93B010850082C +:1006000050281AD9F93A010C1ADAFAC7FFF8F93961 +:10061000010AF93A01090E9CF01F00152FED580C44 +:10062000C10140085808C0401A9CF01F0012402C1D +:10063000580CC040F01F0010300C2FADE3CD80C02F +:100640001A9CF01F000E400818965808C0401A9CCB +:10065000F01F0008402C580CC030F01F000758163F +:100660005F0C2FADE3CD80C0000087F48001DAE499 +:100670008001D3A8800091E880018E9CD4214C0792 +:10068000405EEF6C0108EF6B0109EF6E010D1495F0 +:100690001294109A3019F2081800C120EEF801B037 +:1006A0005808C3D05828C4C04B5CEF3B01B5338811 +:1006B000F00B1800C5403398F00B1800C440EF6AE7 +:1006C000010CF01F0030EDDCB010F01F002F0C0CFF +:1006D0005C5C5805C1E11895F01F002A1815EF65FC +:1006E000010AF01F0029EDDCB010F01F00260C0CF1 +:1006F0005C5C5804C3F11894F01F00221814EF64D6 +:10070000010B6E98EDB80001C031F01F0020DA2A0D +:10071000EA0C1800FE98FFE23FCCD822EF3901B571 +:100720003348F0091800CC11EF3901B63418F0093C +:100730001800FE98FFC630E8EF68010CCC3BEF696B +:10074000010CCC0BEF3901B63408F0091800FE9803 +:10075000FFB8301948A8F169010CCB4BF93901B643 +:100760003408F0091800FE98FFA835A8F968010CB4 +:10077000CA9BE80C1800FE9BFFD1CBFB000087F45E +:100780008001F4A48001F504800205ECEBCD40E08B +:10079000303CF01F002330CB18954A26300CF01F58 +:1007A0000022ED4C01AC1897C360303BF01F001FD6 +:1007B0008F2CECF901AC72275807C2903078300BBF +:1007C000B2883068ECFA01ACB498ECF901ACB2AB89 +:1007D000ECF801ACB0BBECF901ACB2CBECF801AC7D +:1007E000EB390075702AB489ECF801ACEB39007470 +:1007F000702AB499ECF801ACEAFB00847029B2AB22 +:10080000ECFC01ACF01F000AE3CF90E0ECCCFE540E +:10081000F01F00080E9CE3CD80E000008001EF6C2B +:10082000000087F48001D8DC8001D3EC800208D47A +:100830008001D3A8D401F01F0002DA0A8001DA5641 +:10084000D401F01F0002DA0A8001DF30D401F01F6A +:100850000002DA0A8001DBE8D401F01F0002DA0AA4 +:100860008001DC04D401F01F0002DA0A8001DC20E0 +:10087000D401F01F0002DA0A8001DC3CD401F01F31 +:100880000002DA0A8001DC58D401F01F0002DA0A03 +:100890008001DC74D401201D1A9BF01F000CC09055 +:1008A00040085808C06048AA7499EDB90000C030EB +:1008B0002FFDDA0A1298A1C831CC9598300A149B02 +:1008C000F01F00042FFDDA0A8001D98C000087F4A4 +:1008D00080014658EBCD40C0206D4958189B709C54 +:1008E000E21C0002C06118970E9C2FADE3CD80C0C2 +:1008F00030081A96502850081A9CF01F000EC1119B +:10090000189740085808C0401A9CF01F000B402C54 +:10091000580CCEB0F01F00090E9C2FADE3CD80C067 +:100920001A9C3017F01F0006CEDB0000000087F491 +:100930008001DED08001D3A8800091E880018E9CE8 +:10094000EBCD4080201D300A1A9BF01F0017C0F02D +:1009500040085808C0F149576E99EDB9000BC071B5 +:10096000EEF801A84917F1D8C001C1212FFDE3CF4E +:10097000908048E76E99EDB90000CF01A1C9300A17 +:100980008F9931CC149BF01F000A6E99CE7BEEFC40 +:1009900001ACF01F00086E98301CABD88F982FFD6B +:1009A000E3CD80808001ED10000087F4800146587F +:1009B000800208D4D401F01F0002DA0A8001DBD0E3 +:1009C000EBCD40FC206D4A5318951097169266980F +:1009D0001496109C1294E21C0002C2D05BF5C30175 +:1009E000303CF01F001F300BF3D7C010F5D4C010FF +:1009F0001AD90C981ADAF3D2C010504B502BFAC601 +:100A0000FFF8F93B00F70A9A0C9CF01F00162FED37 +:100A1000580CC1B1189740085808C0401A9CF01FE4 +:100A20000012402C580CC030F01F00100E9C2FAD4F +:100A3000E3CD80FC18970E9C2FADE3CD80FCEDB884 +:100A40000000CCF13FB7CF3B6698A1A81A9C8798CD +:100A50003017F01F0007CE0B000087F48001EF6C09 +:100A60008001DB588001D3A8800091E880018E9C32 +:100A7000D40130085C7B1099109AF01F0002D80254 +:100A8000800209C0D4013008364B1099109A109C8E +:100A9000F01F0002D8020000800209C0EBCD40E048 +:100AA00020AD3006507CFB6B00201497500650267A +:100AB0001A95FACAFFDCFACBFFE81A9CF01F00195E +:100AC000C111189640085808C0401A9CF01F001623 +:100AD000402C580CC030F01F00150C9C2F6DE3CD3E +:100AE00080E05807C09040980E9B0C9C8F28F01F08 +:100AF0000010581CC0611A9C3016F01F000ECE3B2F +:100B000040085808C0401A9CF01F0007402C580CA1 +:100B1000C0313FD6CE3BF01F00053FD6CDFB0000D5 +:100B20008001DC8C8001D3A8800091E880016C40BA +:100B300080018E9CD401F01F0002D80280020A9C22 +:100B4000EBCD40E0209D3018189A1697F00C09481C +:100B50004A5B7609F1E9000CC06118970E9C2F7D65 +:100B6000E3CD80E0F00811FF12683006507A970854 +:100B7000500650261A95FACAFFE0FACBFFE81A9CF5 +:100B8000F01F001AC1E05807C09040880E9B0C9CD3 +:100B90008F28F01F0017581CC1611A9C3017F01FD6 +:100BA000001540085808C0401A9CF01F0013402C44 +:100BB000580CCD50F01F00110E9C2F7DE3CD80E02E +:100BC0001897CF0B40085808C0401A9CF01F000A25 +:100BD000402C580CC0313FD7CC2BF01F00083FD71A +:100BE000CBEB000000007A4C8001DCEC80016C4013 +:100BF00080018E9C8001D3A8800091E8EBCD40F865 +:100C0000216DFAC6FF901897FB69000EFB68000F74 +:100C1000FB6B0010FB6A00116CF46D036D15ECCCDE +:100C2000FFD4F01F0038306ABA6CECCBFFDCFACC92 +:100C3000FFEDF01F00350D88FB6800190D99ECCB16 +:100C4000FFFEFB69001A320AFACCFFE5F01F002E06 +:100C50004AEE30097C0B301CF809094AF5EB000814 +:100C6000C0902FF95899CF9130060C9C2EADE3CD52 +:100C700080F8F7EA10089D085BF9CF705024FB63F9 +:100C8000001250195807EFF91A003006FAC7FFC4CE +:100C900050F65116FACAFFAC1A9B0E9CF01F001CAE +:100CA000C111189640F85808C0400E9CF01F00195A +:100CB000411C580CCDB0F01F00180C9C2EADE3CD9C +:100CC00080F85805C09041580A9B0C9C8B28F01F57 +:100CD0000013581CC0610E9C3016F01F0011CE3B53 +:100CE00040F85808C0400E9CF01F000A411C580CE8 +:100CF000C0313FD6CBBBF01F00083FD6CB7B0000F6 +:100D000080018058800091DC00007A4C8001DD4C2D +:100D10008001D3A8800091E880016C4080018E9C06 +:100D2000D42120DD4B0510946A0E4126F1DEC0016E +:100D3000C0B0EDBE0001C411EDBE0002C411300709 +:100D40000E9C2F3DD82210973018FB6B002A508A3A +:100D50005077FDE8100850998B08FB540028580C78 +:100D6000F9F71A001A953007FACAFFD05007502732 +:100D7000FACBFFE81A9CF01F001DC101189740082C +:100D80005808C0401A9CF01F001A402C580CCD90F7 +:100D9000F01F00180E9C2F3DD8225806C09040C866 +:100DA0000C9B0E9C8D28F01F0014581CC0C11A9C6F +:100DB0003017F01F0012CE4B30173028CC7B302775 +:100DC0003048CC4B40085808C0401A9CF01F00081F +:100DD000402C580CC0313FD7CB4BF01F00063FD7FB +:100DE000CB0B000000007A488001DDAC8001D3A865 +:100DF000800091E880016C4080018E9CEBCD40E04A +:100E0000207D300616975006189B50261A95FACA70 +:100E1000FFE81A9CF01F001AC111189640085808E4 +:100E2000C0401A9CF01F0017402C580CC030F01F17 +:100E300000160C9C2F9DE3CD80E05807C1904068C0 +:100E40000E9B0C9C8F28F01F0011581CC1104008ED +:100E50005808C0401A9CF01F000B402C580CC0D002 +:100E6000F01F000930060C9C2F9DE3CD80E01A9CFA +:100E70003016F01F0007CD3B1896CDCB8001DE0C5D +:100E80008001D3A8800091E880016C4080018E9C95 +:100E9000D40120CDFB5A0012FB590014FACAFFCC32 +:100EA000502874197408FB590016501874397428A6 +:100EB000FB59001AFB580018745974485039FB58F4 +:100EC000001C74797468FB590020FB58001E74994B +:100ED000748850A95098300974A8FB6C0022FB5B01 +:100EE0000010FB68002C74BBFB6900231A9CF01FE8 +:100EF00000032F4DD802000080020DFCEBCD40EE28 +:100F000020CD3FF94CC850A950B94CC93005303CF0 +:100F100091059305F01F004A322A18961A971A9CD9 +:100F20000A9BF01F0048FAC3FFDE306AE06B00FF47 +:100F3000069CF01F00441AD5ED38004F1AD86D28D2 +:100F40001AD86D191AD9ED1800361AD8ED190032D1 +:100F50001AD96CE81AD8ED19002E1AD9ED18002A02 +:100F60001AD8ED1900261AD9ED1800221AD86C6982 +:100F700030BB1AD9301C6D08ED1900FEED3A001F88 +:100F8000F01F0031ECFB01282F4DF6C80001581866 +:100F9000E0880045ED3100F7ECCAFF8C30153006D3 +:100FA0001AD61AD540D81AD8F4E80000206D069B4E +:100FB000FAE900081A9CF4E20008306AFAE300102B +:100FC000F01F0022EF380021209DFB680021EEE891 +:100FD0000000FAE90000EEE20008FAE30008EEE89B +:100FE0000010FAE90010EEE20018FAE30018EF38FA +:100FF0000020029BFB6800200A990C98FACCFF9015 +:10100000303AF01F00130C9A2EED0C9B40ACF01FF1 +:1010100000110A9C2F4DE3CD80EE1AD50A98FACC28 +:10102000FFD05C5B0A99FE7AFF6AF01F000B2FFD70 +:10103000CB2B000000007A4C00007A488001EF6C56 +:10104000800091D080020E908002E73680020BFC77 +:1010500080020A9C80020D20D431202D500B189163 +:101060004A1776026E9CE21C0002C350304C5011AD +:101070005801E2021700F01F001DEEF700F0189073 +:101080005807C2D030043013C0A82FF45802C1B1A1 +:101090005801F9B301FF5805C1100A9760B66E05F3 +:1010A000F01F00130C9A189B0E9CF01F0012CEE04C +:1010B0000E9CF01F00115805CF114008069C9104AA +:1010C0002FEDD83240182012110C0E9B5018F01F33 +:1010D000000BCE2B1893069C2FEDD8320E943013B4 +:1010E000CEDB0000000087F48001EF6C800145C476 +:1010F000800159A080015CDC800184284828F0FC34 +:1011000000F85EFC000087F4486871195879F9B856 +:101110000001F9F80A00F9B80100F9F81A005EFFB9 +:10112000000087F44828F14C007C5EFC000087F446 +:101130004828F14C01D05EFF000087F4EBCD40C0A1 +:1011400018971496E04A0020E088000830083FF91C +:10115000B898B889E3CF80C02FECF01F00043008A6 +:10116000AE96AE88E3CF90C0800091DCEBCD40FC22 +:10117000206D18941695F01F00431897C1A0F939F7 +:1011800000CC3FF8F0091800C3910896EF3900A889 +:101190003FF8F0091800C5414BB8F0F700F85807C0 +:1011A000C0A1EC040104301C8B042FADE3CD80FC06 +:1011B0000896CF3BE06AFFFF300B1A9CF01F00330C +:1011C0006F38302A707C1A9B2F4CF01F00311A9216 +:1011D0006A0A9A93063AC0442FADE3CFC0FC0C9B39 +:1011E0001A9C5C7AF01F00296F380606707C1A9BE7 +:1011F0002F4C300AF01F0026CD5BE06AFFFF300B5A +:101200001A9CF01F0022302AEEC2FF341A9B049C65 +:10121000F01F00201A966A0A9A93063ACDE55C7A86 +:10122000089B1A9CF01F00191A9B049C300AF01F9F +:1012300000196A08E803000606188B08CA8BE06AE2 +:10124000FFFF300B1A9CF01F0011302AEEC7FF5829 +:101250001A9B0E9CF01F00101A926A0A9A93063A83 +:10126000CBC50C9B5C7A1A9CF01F00081A9B0E9C45 +:10127000300AF01F00096A08060606188B08C8DB4A +:101280008001EFF8000087F48001C7B88001D344E3 +:101290008001D6B08001D558D401F01F0002D802D9 +:1012A00080015D18EBCD40F8FACD00803225149313 +:1012B00018941297BA85FAC6FFFF0C9CF01F001B0A +:1012C000300806063019AC85AC981A951A9A498BE5 +:1012D000089CF01F0018C0503FFC2E0DE3CD80F895 +:1012E0000E9CF01F0015E04C0040C1701AD7493A1F +:1012F000E06B00800A9CF01F00120A9A3019491B0B +:10130000089CF01F000C2FFD1897580CCE61089C0C +:10131000F01F000D0E9CCE2B0E9A089C3019489B96 +:10132000F01F0004CDB0CD9B800091DC8003C4FC95 +:1013300080023BB8800091B8800399D0800091482A +:101340008003C50480024328D421210D300B4B6655 +:10135000169CF01F00368D0CC2B078075807C2A04B +:101360006F985808C2704B283014EF4400641A95E7 +:10137000340B1AD84AFA0A9CF01F002F08990A9ACF +:101380004AEB0E9CF01F002E2FFD580CC2506C082B +:10139000700CF01F002C6C09300893086C08700961 +:1013A0004A98722A910A6C09300893486C0C2F0DE8 +:1013B000D822F01F00261897CF70F01F00254A583A +:1013C0004A59118A4A5B0E9CF01F0025C2056E29FE +:1013D00049D89109CE9B08994A2A4A3B0E9CF01F96 +:1013E0000018C1C14A18340B1AD8492A0A9CF01FA8 +:1013F000001208990A9A49EB0E9CF01F00112FFD6C +:10140000580CC0C13088EF480054CC9B0E9CF01F94 +:10141000000D6C0930089308CC7B0E9CF01F00096E +:10142000CB7B000000008C8C80023B4C8003C50805 +:10143000800399D0800091488003C4FC80023BB8AF +:1014400080024190000003FC80024F4080023B225A +:10145000000004000000042800000404800212A41C +:101460008003C5108003C5148003C5188003C538E8 +:10147000D421169849871495189B109A49740E9C8C +:10148000A888F01F00170A9B30064965EF66002008 +:10149000341A0A9CF01F001449484959EB66004071 +:1014A000700B720CF01F00131896C0C0F01F0012D2 +:1014B0000A99098A0E9B0C9CF01F00106D185808A1 +:1014C000C021D822ECCAFFDC0A9C3209341BF01F71 +:1014D000000CD8220000040400000400800091DC0D +:1014E00000000428800091AC000003FC00008C8CFC +:1014F00080023B0680023B22800212A480023A68EE +:10150000D421210D328A300B1A9CF01F00301A9C16 +:1015100030073014504750544AD5F01F002E8B0C22 +:101520001A96C4A0FAC6FFD8318A0E9B0C9CF01FF5 +:1015300000274A984A990C9B50E850A96A0CF01F62 +:1015400000281896C3B04A7CF01F00274A761AD7A5 +:10155000304B1AD70E984A694A6AEC0B000CF01F00 +:1015600000260E981AD74A591AD74A5A302B0C9C83 +:10157000F01F00210E981AD74A291AD74A2A311B80 +:10158000ECCCFFF8F01F001C0E981AD749F91AD7B7 +:1015900049FA312BECCCFFF4F01F00170E982F8D79 +:1015A000ECCCFFF01AD749B91AD749BA315BF01F12 +:1015B0000012089C2FED2F0DD8226A0CF01F001787 +:1015C0000C9C8B06CF9B0000800091D000007A50CD +:1015D00080022B4C8003C5448003C54C80022C0440 +:1015E000800216FC8002113000007A5480021670CE +:1015F0008003C55480016EB8800217408003C3ACDD +:10160000800216C48003C5708002168C8003C58CCE +:101610008002161C8003C5A480022AF8EBCD40C0CE +:1016200021AD189798E8EDB80000C181368A300BDB +:101630001A9CF01F000C306A0E9B1A9CF01F000AC7 +:101640006E2830195C3850395028488870091A962D +:101650001A9A720C306BF01F00062E6DE3CD80C01D +:10166000800091D0800091DC00007A508002792CBB +:10167000D40148587009300A720C301BF01F000367 +:10168000D802000000007A508002792CEBCD404057 +:1016900021AD368A300B1A9CF01F000830084889AB +:1016A000500872081A961A9A700C302BF01F000519 +:1016B0002E6DE3CD80400000800091D000007A5074 +:1016C0008002792CEBCD404021AD368A300B1A9C3C +:1016D000F01F000830184889500872081A961A9AA4 +:1016E000700C302BF01F00052E6DE3CD8040000004 +:1016F000800091D000007A508002792CD401487883 +:10170000700EF6C9000E189AF8CBFFFA2F2A7C0C3F +:10171000F01F0003DA0A000000007A50800224E083 +:10172000D401580CC051304CF01F0004D802304C8A +:10173000F01F0003D80200008001A12880019F3023 +:10174000EBCD40E0FACD0170FACCFE98F01F001905 +:10175000581CC22145A85818E088001FE068010005 +:10176000FACBFE901A9C16D8F01F00131A95189603 +:10177000FAC7FF00368A300B0E9CF01F0010581677 +:10178000C11048F870090E9A720C300BF01F000D52 +:101790002A4DE3CD80E0300CF01F000B2A4DE3CD45 +:1017A00080E045B85808FE9AFFEE540D5418CEABB1 +:1017B00080015F448002116C800091D000007A505B +:1017C0008002792C80021720000000000000000039 +:1017D000EBCD40C0F8F800D418971696F0F80088C2 +:1017E000F8FA00E85808C040F8FC00C45D185876C4 +:1017F000C1A058065F0858365F091248C11030185A +:10180000EF4800ECEEF900D473985808C050300B44 +:10181000EEFC00C45D18EF4600E8E3CD80C05846FA +:10182000CEF0CFABEEF800EC5808CF603008301B9C +:10183000EF4800ECEF4B00F0EEF800D47198580838 +:10184000CE81CEABD401F01F0002D802800217D0A7 +:10185000F8FC00E85EFCD401F8F800D471A8580840 +:10186000C050F8FC00C45D18D802109CD802D40106 +:10187000F8F800D471185808C050F8FC00C45D187E +:10188000D802DC0AD401F8F800D471285808C050F6 +:10189000F8FC00C45D18D802DC0AD703EBCD408009 +:1018A0003008F8F90108F94801085809C031C08822 +:1018B0000E997207129CF01F00045807CFA1E3CDC8 +:1018C00080800000800091E8D401F8FC00DCF01F6B +:1018D0000002D8028002B4A4D401F8FC0090F01FEA +:1018E0000002D80280023B8CD401F8FC0090F01F6B +:1018F0000002D80280023C84EBCD40C01696F8F777 +:1019000001085807C051C0B86E075807C080EECC18 +:10191000FFFC306A0C9BF01F0004CF710E9CE3CDDE +:1019200080C000008000917CD4011699F8F801185D +:101930005808C0A1F8F800D470285808C0C0F8FCB6 +:1019400000C45D18D802F8CBFF64306A129CF01F07 +:101950000003D80ADC0A0000800091DCEBCD40F8DF +:1019600020AD1897F8F801185808C06030070E9C91 +:101970002F6DE3CD80F8F8F800D470385808CF7098 +:10198000F8FC00C41A9B1A935D181895CF05EEF861 +:1019900001185808C431EEF800D470285808CE70E9 +:1019A000FAC4FFE0EEFC00C4089B5D18CE05EEFC17 +:1019B000009078465806C301EEF800D45808C2C01B +:1019C000700C49BBF01F001BEFFC0024F9B60001AE +:1019D000EFFC102478075807C111CCAB5806C0B0F3 +:1019E0006E885808CC50EECBFFE8306A089CF01F98 +:1019F0000012CBE06E075807CBB0EEF80194580800 +:101A0000CFA16E581035CEB16E4B0A9A1A9CF01FBA +:101A1000000ACE70CE4B3006CDEBFAC4FFE0306A40 +:101A2000EECBFF64089CF01F0005CC2B8003C65C46 +:101A3000800091A08000917C800091DCD401F01F97 +:101A40000002D8028002195CD42120AD3008FB5876 +:101A50000024508816961897F6F801845818C0404C +:101A60003FFC2F6DD82277185808CFB0F8F500B892 +:101A70005885C2205905CF512DCB0A9A1A9CF01FC8 +:101A800000171A940A9A303BEEFE00D47C5858088E +:101A9000CE801ADA1AD43009EF490104EEFC00C4F2 +:101AA00030681AD8FACAFFD430181ADA48CA7C56F5 +:101AB0005D162FCDCD7B2DCB318A1A9CF01F0007F0 +:101AC0000A9AECCBFFCCFACCFFE8F01F00041A9482 +:101AD000320A302BCDAB0000800091DC80039C38B3 +:101AE000D42118951696F01F000F1897C05078381B +:101AF0002FF89938D82A310CF01F000B1894C0F039 +:101B00000C9B306A2FCCF01F000930188938EAF995 +:101B100001088909EB4401080E9CD822DC2A000048 +:101B2000800218F880028F24800091DCEBCD40FC0D +:101B3000EDD9C010407218941693ECCCFFFC1495AC +:101B4000910CF01F00161897C190E8F800907039BA +:101B5000EC081608B893B889B8B6B8A85805C100FB +:101B60000C9A0A9BF8C6FFFC0C9CF01F000D0E9C03 +:101B70005802E5F61A00E3CD80FCE3CD80FC0C9A18 +:101B80000A9BF8C6FFFC0C9CF01F00060E9C580236 +:101B9000E5F61A00E3CD80FC80009200800091DC25 +:101BA000800091D0D401401E5C791ADEF01F000243 +:101BB0002FFDD80280021B2CEBCD40F8203DF8F819 +:101BC00000BC1493129458485F0A58285F0918976C +:101BD00016961449C0603FF70E9C2FDDE3CD80F8C8 +:101BE000F8FC00DCF01F002BC0305816CF50EEC5BB +:101BF000FF64306A4A8B0A9CF01F0028C0D1EEF8BF +:101C000000D470285808C060EEFC00C41A9B5D1810 +:101C1000C370EEC5FF043008F7D6C0081AD8F3D455 +:101C2000C010FAC8FFF4069A0E9CF01F001D2FFD8D +:101C30001896580CCD1040296E2C580CC1001298E3 +:101C40000A9B0C99E06A888EF01F001618970C9C6E +:101C5000F01F00150E9C2FDDE3CD80F8EEF800D4C8 +:101C600071845804C0B01298EEFC00C40A9B0C9911 +:101C7000E06A888E5D141897CEBB3FF7CE9B306A22 +:101C8000485B1A9CF01F0005CC501A95CC5B0000F5 +:101C900080028F78800217C88000917C80021B2C04 +:101CA00080028154800091E8EBCD40C0189EEFDAAD +:101CB000C010782C580CC0600E9AF01F0009E3CDBC +:101CC00080C0FCFA00D475865806C0700E9AFCFCE1 +:101CD00000C45D16E3CD80C0E3CFC0C08002815454 +:101CE000D421497A1894301BF01F0016300A089B43 +:101CF000495CE8C5FF64F01F0015E8F701085807C4 +:101D0000C1C03006C0680E966E0C580CC1601897A2 +:101D1000306A0A9BEECCFFFCF01F000DCF51580635 +:101D2000EFF80000E9F80A42EFF81000EDF81A00A9 +:101D30000E9CF01F0008D822D82200008003C66441 +:101D400080023A1A80023058800274008000917C30 +:101D5000800091E8D401F01F0002D80280021CE04C +:101D6000EBCD408048FA1897301BF01F000FEEF8BB +:101D700000BC5818C0F00E9B300A48CCF01F000C75 +:101D80000E9CF01F000C0E9C307BF01F000BE3CD6F +:101D900080800E9C305BF01F0008E3CD8080000047 +:101DA0008003C68880023A1A8002360080027400DE +:101DB00080021CE0800217D0EBCD4040486A1896A4 +:101DC000301BF01F00060C9B300A485CF01F00051A +:101DD000E3CD80408003C6A880023A1A8002360014 +:101DE00080027400EBCD40F81894F8FC00CC580C3D +:101DF000C360E8F800D05808E08A00321897E8C3BA +:101E0000FF643005C0A8580AC200EEC7FF64E8F8B6 +:101E100000D00A38E08A00242FF5E8F600B0306AD6 +:101E2000069B0E9CF01F0015CF115806C0E06C5A9F +:101E30006EA81438CE91EECCFFFA6C4BF01F000F59 +:101E4000C0406C5A580ACE215807C0906F5AEECB4A +:101E5000FFD4E8FC00DCF01F000AC0403FFCE3CDEB +:101E600080F8EECBFFA8E8FC00DCEEFA0080F01F63 +:101E70000005CF60CF4B00008000917C8002B58CC4 +:101E80008002B52CD4211895E06C009CF01F001B3B +:101E90001897C310EAF401185804C2A1EAF800D454 +:101EA00070C85808C250189B301AEAFC00C45D186C +:101EB0001898C1E50E9C3016E06B009CF0060D46AC +:101EC000EC0B024BF01F000E58065F09580C5F1810 +:101ED0001248E8081800F8071710EAFC00CCF01FB9 +:101EE0000009089CEB4600D0EB4700CCD8220E9CA2 +:101EF000F01F0004DC2A000080009200800091F4B2 +:101F0000800091E8EBCD40801897F01F0008C031A9 +:101F1000E3CD80800E9CF01F0006C0550E9CF01F84 +:101F20000003CF7BE3CFC08080021DE480021E84CB +:101F3000EBCD40FE208D18961697149512921091B5 +:101F4000580BC580F6FB0080580BC0E16F5B580B47 +:101F5000C3210C9CFEFA02E4303BF01F00B93FFCA9 +:101F60002F8DE3CD80FE7568EDB80001CF011A9A80 +:101F7000EECCFFA8F01F00B3CEA16B484029126839 +:101F8000CE606B3840191268CE206B584039126809 +:101F9000CDE0FEFA02B2301B0C9CF01F00A9EEC48B +:101FA000FFD4302A303BECFC00DCF01F00A8089C7A +:101FB0006F5AC4386B68EDB80000CCC1EEC4FFD4D2 +:101FC0001A9A089CF01F009FCC516B484029126858 +:101FD000CC106B3840191268CBD06B58403912685E +:101FE000CB90FEFA026A301B0C9CF01F0095301A51 +:101FF000CDAB7568E21800021A93F9B40102F9B486 +:102000000001F8FC00DC1A9BF01F0092C1F05BECB1 +:10201000C4001A9C320A300BF01F008F6B48502806 +:102020006B3950196B585038089A303BECFC00DC87 +:10203000F01F0086300C189A189BECFC00DCF01F97 +:102040000087C3602F8DE3CFC0FE402A6B49F3EABF +:102050000008C0D0401A6B39F3EA0008C110403ABA +:102060006B59F3EA0008C1B04004CDFB1AD9302BFC +:102070001ADA0C9C4FAAF01F00722FEDCCBB1AD9B4 +:10208000302B1ADA0C9C4F7AF01F006D2FEDCC2B01 +:102090004F5A302B0C9CF01F006ACBCB1AD9302B37 +:1020A0001ADA0C9C4F1AF01F00662FEDCB3B580735 +:1020B000EE0B1700F60A1700F9B80158EFD8E10B3C +:1020C000EFFA1020ECFC00DCF01F0069CBC16B487C +:1020D0004029F1E90009EDB90004C5D0EDB90003CC +:1020E000C750EDB90002E081009430484E1AED4827 +:1020F00000B8301B0C9CF01F00526B384019F1E9FE +:102100000009EDB90004C500EDB90003C7513088DE +:102110004D9AED4800B4301B0C9CF01F00496B58E1 +:102120004039F1E90009EDB90000E080007FEDB928 +:102130000001C55130284D1AED4800BC301B0C9CE5 +:10214000F01F003FECFA00BC306BECFC00DCF01F31 +:10215000003FECFA00B4304BECFC00DCF01F003B1D +:10216000ECFA00B8305BECFC00DCF01F0038029A9F +:10217000049BECFC00DCF01F00421894FE91FF640D +:102180006B57E2170002C191ECFC00DCF01F003D30 +:102190000E9CCE7A31084BCAED4800B8301B0C9C1F +:1021A000F01F0027CABB31084B8AED4800B4301B32 +:1021B0000C9CF01F0023CB4BECFC00DCEACBFFDCDB +:1021C000320AF01F0033089CCCCA30884B1AED4805 +:1021D00000B8301B0C9CF01F001AC90BEDB90004AD +:1021E000FE91FF3231084ACAED4800BC301B0C9CFE +:1021F000F01F0013CA8BEDB90000FE91FF25301BC4 +:102200004A6AED4B00B40C9CF01F000DC89BEDB961 +:102210000001FE91FF1930284A1AED4800B8301B22 +:102220000C9CF01F0007C6AB301B49EAED4B00BC0D +:102230000C9CF01F0003C87B8003C8EC80023A1A94 +:102240008002BD688003C6C08002B4D48003C6E0AB +:102250008002C04C800091D08002B58C8003C734CE +:102260008003C7788003C7008003C7BC8002B52CF9 +:102270008003C8288003C86C8003C8B08002B64CB5 +:102280008002B9EC8003C8008003C8588002B91CE2 +:102290008003C8148003C8CC8003C8808003C84072 +:1022A0008003C894EBCD40C07758EDB80003F9B86F +:1022B0000008F9F80A2FF9B80104F9F81A2F18974D +:1022C000300A1696F8FC00DC149BF01F0025300A3B +:1022D000EEFC00DC149BF01F0023300AEEFC00DC57 +:1022E000149BF01F002130183009ECCBFECCEF48D6 +:1022F00000B8EF4800B4EF4900C02FF976085858ED +:10230000E08B00225808C2512FCB5849CF71EEFA0A +:1023100000BC306BEEFC00DCF01F0014EEFA00B4E1 +:10232000304BEEFC00DCF01F0011EEFA00B8305B21 +:10233000EEFC00DCF01F000DEEFC00DCF01F000CDA +:10234000E3CD80C03048EF4800B8EF4800B4CE0B72 +:102350003028EF4800B8EF4800B4CDAB8002B58C10 +:102360008002B52C8002B5EC8002B4D480028F804C +:10237000EBCD40E0205D1897F8F600B0F8F800BC0F +:102380005828C57059085F0958485F081248C2901C +:10239000302BEEFC00E0F01F002F314A300B1A9C6E +:1023A000F01F002D1A95EEFA00BC588AC200EEF814 +:1023B00000905808C03070785028149958895F18D8 +:1023C00058195F191069ECF8017CEEFC00E01A9ACC +:1023D0000C9B50495038F01F00212FBDE3CD80E009 +:1023E000300BEEFC00E0F01F001BCD8B30085018C6 +:1023F000301B500BECF900F0F3EB0008FBFB1A016B +:10240000EDB90001C120EEF800905808C1F0EEFCD3 +:1024100000D4580CCD10780C491BF01F0012FBFCA7 +:102420000A01EEFA00BCCC4B4018A1B85018CECB34 +:10243000300BF8FC00E0F01F000C300BEEFC00E06D +:10244000F01F000AEEF800BCC9EB3089CB8B00000E +:1024500080026178800091D08002581C8003C65CA5 +:10246000800091A0800261A48002618CEBCD40E0ED +:10247000189716951496F8F800905808C0D0704830 +:102480005808C0A1F8FC00D4580CC060780C48EB88 +:10249000F01F000EC1501AD648DA1AD5301B0E9C18 +:1024A000F01F000C300A0E9B48BCF01F000C0E9968 +:1024B0000C9B0A9C3008488AF01F00092FEDE3CDE1 +:1024C00080E000008003C65C800091A08003C960AA +:1024D00080023A1A800230588002740080027474BC +:1024E000D4211295169614941897F8F900BC5849FF +:1024F000C1C0F8FA00F4580AC10158895F08581998 +:102500005F0B104BF40B1800F9BB000AF9BB014636 +:10251000F01F0019EEFA00F4F4C8FFFFEF4800F4D2 +:10252000EEF900945809C020D822306A0C9BEECCFA +:10253000FF04F01F0012EEF800BC5828C111EEF89D +:1025400000D471585808C040EEFC00C45D180A99C8 +:10255000089A0C9BEEFC00DCF01F0009D8220A99B7 +:10256000089A0C9BEEFC00E0F01F0006FE99FFDECF +:10257000CE7B00008002246C800091DC8002C3CC02 +:10258000800261FCEBCD406C1ADA18951ADB1692CA +:102590001493301B48AAF01F000B48B6300A0A9B60 +:1025A0000C9CF01F000A0A990C9A069B049C3008A8 +:1025B000F01F00072FEDE3CD806C00008003C99071 +:1025C00080023A1A8002360080027400800274741D +:1025D000D401F01F0002D80280022584EBCD40C058 +:1025E000189E1497109CFCF800BC5888C240580BE9 +:1025F000C1A0FCCAFF64FCF600D46C585808C19016 +:102600001ADC16981AD9300BFCFC00C41ADBFD4BFF +:102610000104490E0E991ADE301B6C565D162FCD43 +:10262000E3CD80C0FCF600D448BA6C585808CE916F +:10263000E3CFC0C0585CF9B80002F9B80104580BE8 +:10264000C040FD4800B4CD6BFD4800B8482ACD4BD2 +:1026500080037E2080039C38EBCD40F8FACEFFE863 +:1026600018967C35F8F400D47C037C17685C7C2ECB +:10267000580CC0F01AD51ADE300E1AD71AD3ED4E08 +:102680000104ECFC00C468565D162FCDE3CD80F844 +:10269000E3CFC0F8D42118951694F8F70104580731 +:1026A000C020D822F8F900D472585808C4C01AD7EC +:1026B000F94701041AD70E981AD74B6A1AD70E9BFE +:1026C0007256F8FC00C40E995D16EAF900D42FCDBD +:1026D00072585808C3801AD7EB4701041AD70E98CE +:1026E0001AD74ACA1AD70E9B7256EAFC00C4301990 +:1026F0005D16EAF900D42FCD72585808C2401AD797 +:10270000EB4701041AD70E981AD74A2A1AD70E9BFC +:102710007256EAFC00C430295D16EAF900D42FCDC8 +:1027200072585808C1001AD7EB4701041AD70E98FF +:102730001AD7498A1AD70E9B7256EAFC00C4303960 +:102740005D162FCD5804C200EAFA00D47458580818 +:10275000C12030091AD91AD9EB4901041AD91298A3 +:102760001AD9129B7456EAFC00C4089A5D16EAFA5C +:1027700000D42FCD75A85808C070089B3019300AB6 +:10278000EAFC00C45D183018EB480104D8220000B0 +:1027900080039C38D421204DF8F900D41897169561 +:1027A00073885808C2C11094F8C6FFEAC1C8EEFC8D +:1027B00000C45D1B1AD4189B0E984C19E06A888ED1 +:1027C0000C9CF01F00408F2C2FFD580CC111580598 +:1027D000C140189B305CF01F003CEEF900D47388B8 +:1027E0005808C0D1737B580BCE31169CCE4BEECB24 +:1027F000FFF0F01F0036C1302FCDDC2A7378580867 +:10280000C0B0EEFC00C45D18C070189B306AEECCFE +:10281000FFF0F01F002F6E2C580CCEA1EF39007A7C +:102820003008F0091800C3A1EEF800D47048580829 +:10283000C100301BEEFC00C45D18C0B4EEF800D43B +:1028400071485808C0601A9BEEFC00C45D18C214A1 +:10285000300B0E9CF01F001FEEF800D47099580941 +:10286000C070300BEEFC00C45D19EEF800D470A807 +:102870005808C050301BEEFC00C45D183018EF48FB +:1028800000C84959300C72082FF893082FCDD82270 +:102890004038F1D8C002CDD0CB0B300848891AD8C7 +:1028A000E06A888E0E98EECBFFF0EECCFF86F01F2C +:1028B00000058F3C2FFD580CCB81C9FB800224E022 +:1028C0008002819C80028F1C800281E4800091DC68 +:1028D0008002269400007A6CEBCD40E018971695A4 +:1028E000300BF01F001DEEC6FF64306A49BB0C9C24 +:1028F000F01F001BC2E0EEF801185808C1F00C9B55 +:102900000E9CF01F00183006EEFC00DC0C9BEF461E +:1029100000B0F01F00150C9A0C9BEEFC00E0F01FBD +:1029200000130C9BEEFC00E0F01F00110C9BEEFC72 +:1029300000E0F01F0010E3CD80E0EEF800D470D886 +:102940005808CDE00A9A0C9BEEFC00C45D18CD8BB4 +:102950001896CD6B800217D0800217C88000917C3A +:10296000800226948002B9D48002581C800261E85B +:10297000800261D4D401F01F0002D802800228D85E +:10298000EBCD40C01897F8F800C45808C230303B6F +:10299000F01F003DEEF800D470495809C070300BAC +:1029A000EEFC00C45D19EEF800D470A95809C0709F +:1029B000300BEEFC00C45D19EEF800D47098580896 +:1029C000C050300BEEFC00C45D18300B0E9CF01FA5 +:1029D000002F6E2C3006F01F002E8F266E3C580CF8 +:1029E000C040F01F002B8F36EEF800E45808F9B80D +:1029F0000100EFF81A39EEFC0090580CC060F01F8F +:102A000000253008EF480090EEFC008CF01F0022FB +:102A10003006EEFC00DC0C9BEF46008CF01F001F24 +:102A2000EEFC00E0F01F001EEEFC00DCEF4600E0D4 +:102A3000F01F001CEEFC00DCF01F001BEEFC00DCB5 +:102A4000F01F001A0E9CEF4600DCF01F0019EEFC90 +:102A500000CCF01F00110E9CEF4600D0EF4600CCDA +:102A6000F01F00140E9CF01F0014EEFC00C4580C64 +:102A7000C070EEF800D470785808C0205D18E3CD1F +:102A800080C00000800228D88002269480028174D1 +:102A9000800242B4800091E88002B4CC800256ECFF +:102AA00080029438800294088002C0788002189CCA +:102AB00080021DB880021CE0EBCD4080169778099B +:102AC0001639C0F1761899080E9CF01F000A0E9C6A +:102AD000F01F0009E3CF808072180E38C060109993 +:102AE0005809CFB1E3CFC0806E189318CEEB000029 +:102AF00080022980800091E8EBCD40801897580C27 +:102B0000C051C1980E9CF01F000D6E0B580BCFB139 +:102B1000F01F000BF01F000B6E4C580CC060F01F34 +:102B2000000A6E4CF01F00096E8CF01F00080E9C0E +:102B3000F01F0006E3CD808080022AB88002724C2C +:102B40008002728480028F20800091E8EBCD40C02B +:102B50001897580CC05130060C9CE3CD80C0F01F74 +:102B60000021CFA1334CF01F00201896CF606E08D3 +:102B70006E19991899296E286E89993899996E3C21 +:102B8000580CC040F01F00198D4C6E7C580CC04092 +:102B9000F01F00168D8C6E498D59495891096E5A57 +:102BA0008D6A4948910A49486E698D7991090C9C52 +:102BB000F01F0012C11130196C988DB95808EDF949 +:102BC0001A0C6C285808CC906C185808CC606C4CC7 +:102BD000F01F000BCC200C9C3006F01F000ACBDB52 +:102BE0008002720880028F24800091940000046C9F +:102BF00000007AA400007AA0800275F880028F1E7F +:102C000080022AF8D431204D580C5F08580B5F0918 +:102C1000189316971248C05030050A9C2FCDD83211 +:102C2000E06C011CF01F00C01895CF803018F948E7 +:102C3000010CFEF102F66E22620B580BC100580225 +:102C4000E0800144E2C4FFFC3006760B049CF01FD8 +:102C500000B8C0C02FF6090B580BCF810A9CF01F9B +:102C600000B50A9CF01F00B4CD8BE2060328EB48A8 +:102C700000D46E0C580CE0800122F01F00B0EB4C29 +:102C8000008CF01F00AFEB4C0090CE906E185808EF +:102C9000C0A0785CF01F00A86E1CEAF60090F01F40 +:102CA00000A78D5C6E385808C0C0EAF8009070BC70 +:102CB000F01F00A16E3CEAF60090F01F00A08DBC52 +:102CC000EAF800905808CCB06E4C580CCC80F01F3D +:102CD000009DE04C0063FE9BFFC3EAC1FFEA364A59 +:102CE0006E4B029CF01F00986E5C580CE08100F95E +:102CF0006620340CF01F008C1897CB10FEF8024CA5 +:102D00008F78FEF8024AFEF9024A8F98FEF80248D0 +:102D10008F058F458F658F898FC83006FEF4023C82 +:102D20008F168FA4FEF202388FB2EAF900907288F3 +:102D30008FD8EAF9009072988FE8EAF9009072A8AB +:102D40008FF8F01F0088EB4C00E0E08000C20C9B85 +:102D5000F01F00850C9BEAFC00E0F01F0084EAF8FD +:102D600000D470685808E08000A7029B0A9C5D1898 +:102D7000EB4C00C4FE90FF74EAF8009070BBEAF8D8 +:102D800000D470895809C0605D19FE95FF69EAF8A2 +:102D900000D471685808C0F0EAFC00C45D181897A8 +:102DA000C0A0029BF01F0062C0600E9B364A029CCE +:102DB000F01F006534CCF01F005CFE90FF514EC840 +:102DC0004EC9991899294EC84EC9993899494EC883 +:102DD0004EC9995899694EC84EC9997899894EC873 +:102DE0004EC9999899A94EC84EC999B899D94EC853 +:102DF0004EC999C899E94EC84EC9F9440040F942F4 +:102E00000044990599F8F9490048F01F0069EB4C16 +:102E100000DCFE90FF25EB39007A3008F00918003D +:102E2000C5C1300A029BF01F0063EAF80090EAFC7B +:102E300000DC707BF01F0060EAFB00E0EAFC00DCD5 +:102E4000F01F005EEAFA009074C85808C60174D8F2 +:102E50005808C52174EA580AC080302BEAFC00DC0F +:102E6000F01F0057FE91FEFC009B0A9CF01F0055CE +:102E7000FE95FEF6EACBFFF0EAFC00DCF01F005204 +:102E80003FF8EB4800E4EAF900D473485808C0D092 +:102E90001A9BEAFC00C45D18C0814038EDB80002FE +:102EA000C0413018EB4801188B0366088B18870562 +:102EB000FE9FFEB5EB4800C4CD2A6E3B6E1CF01F92 +:102EC0000043EB4C0090CFDAF94B00D4CD3A0E9C86 +:102ED000F01F0019FE9FFEC4EACAFF86CA4BF01F0E +:102EE000001958FCFE9BFEBC6E5B310AEACCFF86E3 +:102EF000F01F0015CFEA109A301BEAFC00DCF01F2F +:102F00000030FE91FEADEAFA0090CA5B109A300BD9 +:102F1000EAFC00DCF01F002AFE91FEA2EAFA009013 +:102F2000C97B000080028F2400000470800091A003 +:102F300080022980800091E88000919480021348EB +:102F4000800091B8800091AC80021D60800225DC79 +:102F500080021BB8800218C8800218E8800218D8C6 +:102F60008002609C800261E8800261D48002184483 +:102F700080021850800225D0800229748002304CD3 +:102F8000800226588002360080021A3C80021928EE +:102F900080021CA880021F0480021BA480021D5412 +:102FA0008002186E80021884800218568002C0DCED +:102FB0008002B4C08002B4B88002B4CC8002B4D421 +:102FC000800227948002B90480023B4CEBCD40E0A4 +:102FD000306A18971695F8C6FF64497B0C9CF01F61 +:102FE0000017C270EEF801185808C1800C9B0E9CA7 +:102FF000F01F00130E9CF01F00133006EEFC00DCE7 +:103000000C9BEF4600B0F01F00100C9A0C9BEEFCDE +:1030100000E0F01F000EE3CD80E0EEF800D470E891 +:103020005808CE500A9A0C9BEEFC00C45D18CDFBEC +:103030001896CDDB800217C88000917C8002269410 +:10304000800276648002B9D48002581CD401F01F3B +:103050000002D80280022FCCEBCD40C0499BF8C7BC +:10306000FF641896306A0E9CF01F0017EDFB189C49 +:10307000E06800A2EDD8E007EDFB08A20FD81AD84F +:103080000FC91AD90FB81AD80FA91AD90F9848FA28 +:103090001AD80C9C1ADB302BF01F000D0E9B0C9CD9 +:1030A000F01F000CECFC00DCF01F000B303B0C9C14 +:1030B000F01F000A30182FADED4800A8E3CD80C006 +:1030C000800217C88000917C8003C9B880023A1A38 +:1030D00080021AE08002BA1C80022FCCD431FACDD3 +:1030E00000D03007F94700A8189516941491580B92 +:1030F000E0800217F6F60084E8CCFFFA76ABF01F0A +:10310000012A1AD61ADC09D81AD809C91AD909B855 +:103110001AD809A91AD909981AD809890A9C1AD95A +:10312000FEFA0488302BF01F01220E9B306A2F8D8F +:10313000EACCFF64F01F011F306A089BEACCFF5EF7 +:10314000F01F011D0A9CF01F011D300AEAFC00DC83 +:10315000149BF01F011B635AEDBA0003C061E2F833 +:1031600001745808E08100B1301063795809C0E05B +:10317000E1D9C0011298EDB90001E08000A4EDB9D9 +:103180000002F9B80004E1D8E030EAF800D4710890 +:103190005808C060009BEAFC00C45D18635A5804DC +:1031A000C07069585808C5A0F1DAC002C6E114978A +:1031B000E2170013C5B1029B0A9CF01F0102FAC876 +:1031C000FF9453375028089B0A9CF01F00FFEAF831 +:1031D00000B45828E08001BAE089007F5818E080E8 +:1031E000017130285038EAF800B85828C7F058283C +:1031F000E08900805818E080016230285048EAF9E0 +:1032000000BC58495F0B58895F08F7E81008C78071 +:10321000E2C9FECCE2C8FF0C16963007EC1600019E +:103220005019500812931092505766095809E081BE +:1032300001122FF72FC32F025847CF81EAF900BCA4 +:103240005889C671E2F800F04059F1D8C002F3E89D +:103250001008E08101311096C5F8E8F800805808A0 +:10326000CA70F1DAC002CA40C1083509FAC8FF3095 +:1032700010D9029AFAC9FF94300B50290A9CF01F0A +:1032800000D3CA202CCDD832E2F801485808E0819A +:10329000010FEAF900B0089A300BEAFC00DCF01FDD +:1032A00000CCE080017A3509FAC8FF3010D9029AC3 +:1032B000FAC9FF94089B50290A9CF01F00C4C8401B +:1032C000CE2BA1B0C5DBE2F801785808F9B00004B4 +:1032D000F9B00105C4BB5848C8605908C831303935 +:1032E0005039EAF800B85828C83130195049C88B0D +:1032F0005848C8505908C82130395049C81B3008AF +:103300005058E2C8FECC30165018E2C8FF0C5008E6 +:103310005909E080011FEAF800D470A85808C0508D +:103320000C9BEAFC00C45D18303B0A9CF01F00A90E +:10333000354AFAC7FFE8300B0E9CF01F009E580478 +:10334000E0800126E8F8008450645098E8C8FFFA4D +:10335000507868A95089E2FA0184581AE080009EEA +:103360004029403850A950C84049433850D950B836 +:10337000EAF800BC5848E08000E7E0890088581867 +:10338000E08000A43018510A4014400350E850F087 +:10339000FACAFFAC0899069BFACCFF9C7208580841 +:1033A000C040F54BFFF0720814A82FC92F0B183A34 +:1033B000CF61E2F801445198EAF601185806E0801E +:1033C0000089FEFA0212302B0A9CF01F0079301996 +:1033D000EAF800BC5908E080008F5809E0800098A6 +:1033E000305B300A0A9CF01F007D40585808C1C06D +:1033F000EAF800D471485808C170FACBFF44EAFCDF +:1034000000C45D18C1114328EDB80001C0D1189760 +:103410004F30189268095809E08100A12FF72FC496 +:103420002F035847CF81EAF800B05808C070103118 +:10343000C050EAFC00E0F01F006BEAFC00DC029BDD +:10344000EB4100B0F01F00680A9CF01F00682CCD13 +:10345000D832EAFB00D4E2FA014476585808C13069 +:103460001AD91AD23009EB4901041AD94DC90E3ABA +:103470005F081AD94DEA76560E99301BEAFC00C453 +:103480005D162FCD30165056CD5A5888C2005908B7 +:10349000FE91FF7A3048C78BE2F901A45809FE9AE1 +:1034A000FF6140985808FBF90A09C5BB6368F1D869 +:1034B000C021CF0A50375047C2FB30085048CA0AD3 +:1034C00030085038FE9FFE913008C5EB3038C5CB30 +:1034D000EAF800D470F85808FE90FF750E9BEAFCDD +:1034E00000C45D18FE95FF6F0C99EAF800BC5908FE +:1034F000FE91FF75029B0A9CF01F003E0A9CF01F84 +:10350000003E307B0A9CF01F0033C70BEAF80090A6 +:1035100070495819F9BB000AF9BB013CC63B745B02 +:10352000744CF01F00214B5A1ADC302B0A9CF01F00 +:103530000020306A089BEACCFF5EF01F001E2FFDC2 +:10354000FE9FFE023028C20B30195039FE9FFE4DFF +:10355000029B0A9CF01F0027CDFAEAFB00D4E2FA96 +:10356000014476585808FE90FF5B1AD91AD3EB42F3 +:1035700001041AD20E3A5F081AD00E99765649CA3B +:10358000301BEAFC00C45D162FCDC49B6248507806 +:1035900062595089CE1A301BEAFC00E0F01F001877 +:1035A000FE9FFE8380023A1C8003C9F880023A1A0B +:1035B000800091D0800091DC80021DB88002B5ECC3 +:1035C000800222A48002269480021F308002938011 +:1035D000800217D08003CA6C8002246C80037E2096 +:1035E000800257488002B9D48002237080039C383F +:1035F00080021A4880021CE08003CA488002559667 +:10360000EBCD40C021AD1897F8F800AC5808C68142 +:10361000F8F6010CEEFB009076095809C061C8F875 +:1036200072095809E080008CF2F801945808CF9193 +:103630003008EF48010C76495809C670EEFC00D4FA +:10364000580CC0E04DAB780CF01F005AEFF8002486 +:10365000F1FC0A04EEFB009076485808C560EEF8CD +:1036600000E85818E088008D760AEEF800C858186F +:10367000C3F0580AC090103AC041C3981438C370C0 +:10368000740A580ACFC15826C04076485828C690B8 +:10369000580AEFFA1A32F9B80001EFF80A32EEF9D7 +:1036A00001105809C04176485818C710EEF80118A3 +:1036B0005808C4F1580AF40B1700F60A1700F5FB76 +:1036C0001004F5FA1005EEF800D470B85808C410CC +:1036D000EEFC00C45D18C3D12E6DE3CD80C0F8F6BA +:1036E000010C5806C9812E6DE3CD80C0740A580ABA +:1036F000CCB0F4F801945808CFA175885808CC4193 +:1037000076485828CF41CC0B0E9CF01F002BCE5092 +:10371000EEF800B05808EFFC0A2C0E9CF01F0027B2 +:10372000300B1A9C368AF01F00261A961A9A0E9CA5 +:10373000300BF01F00242E6DE3CD80C05806FE91A3 +:10374000FF790E9C301BF01F00202E6DE3CD80C052 +:103750000E9C300A30ABF01F001D2E6DE3CD80C0F3 +:10376000580AC1D074085808EFFA1A32F9B80001A3 +:10377000EFF80A320E9C300BF01F0015CAEB302B0D +:103780000E9CF01F0011EEFB0090C6FBEF480110ED +:10379000129A0E9C303BF01F000BC9FB30180E9C98 +:1037A000EF4800C8149BF01F0009C97B8003C65C6A +:1037B000800091A08002195C80022370800091D06B +:1037C0008002792C800217D080022584800230DCB0 +:1037D0004848300A48499118910A930A5EFF000050 +:1037E00000007A7000007A78EBCD40681695189347 +:1037F000F6CCFFEDF01F0022314A1896300BF01F77 +:1038000000210A9A8D15ECCCFFF0069BF01F001EDC +:1038100049EAF5090042AC09F50800422FF8F558CD +:10382000004249B530088D286A198D3993062F86D4 +:103830008B1649866C08F0C9FFFF8D095909E0888D +:1038400000180A936A0C782A580AF9F80003E7F876 +:103850000A01F9F81003F5F81A0320197838910ACB +:103860008D09F01F000D6C095909FE9BFFED300A10 +:10387000326C149BF01F0009E3CF90688000920027 +:10388000800091D0800091DC000087F400007A7005 +:1038900000007A78800091E880014658EBCD40E046 +:1038A00030961697305E300B33A51989F2C8003078 +:1038B000EC081800E08B0019F2CA0030580AC2C5A3 +:1038C0001999F2C80030EC081800E08B0017F2C814 +:1038D00000305808C215F1EA1048EE0B0B08585B8F +:1038E000C291E3CF80E0F2C80061FC081800E08BD1 +:1038F000000EF2CA0057CE3BF2C80061FC08180067 +:10390000E08B000DF2C80057CE5BF2C80041FC0806 +:103910001800E088000DE3CFC0E0F2C80041FC08C9 +:103920001800FE9BFFFAF2C80037CD4BF2CA0037F1 +:10393000CC6B19A8EA081800CEF12FFB586BCD20EC +:103940002FDCCB4BEBCD40E016961497580AC4C041 +:10395000300B3095305EC1B8F2CA0030580AC365EA +:103960001999F2C80030EA081800E08B0021F2C86B +:1039700000305808C2B5F1EA10485808C275EC0B7F +:103980000B082FFB1637E08800302FEC1989F2C89E +:103990000030EA081800FE98FFE1F2C80061FC0858 +:1039A0001800E08B000EF2CA0057CD9BF2C80061F0 +:1039B000FC081800E08B000DF2C80057CDBBF2C820 +:1039C0000041FC081800E088000DE3CFC0E0F2C819 +:1039D0000041FC081800FE9BFFFAF2C80037CCAB90 +:1039E000F2CA0037CBCBE3CF80E0F6CA00015E6CB1 +:1039F000F80A000913882FF85C58B2885E1CF6C8D4 +:103A00000002100CC08819882FF85C58B888201C58 +:103A100058085E1C201ACF875EFC5EFCEBCD40C0D0 +:103A200049071696189BE0460020F9B60B200E9C1D +:103A30000C9AF01F000D3008EE060B080F8858088E +:103A4000C0D00E9C35E935FA2208F2081800F9FAC0 +:103A5000BE002FFC19885808CF81482CE3CD80C0C8 +:103A600000007A7C800091DCEBCD40FE189114922E +:103A7000169C1293580BC2A0E20B00045809C20016 +:103A800002973006C0881835E08A001418070C33F6 +:103A9000E0880018E4060708E80701051AD80E9C1C +:103AA00048CA0A9B2FF6F01F000C2FFD580CCEC4FD +:103AB0003008EE01010CE968FFFFE3CD80FE0297BC +:103AC0003008EE01010CE968FFFFE3CD80FE000045 +:103AD0008003DA3080009148580CC140F8FC00D0D7 +:103AE000580CC1002FCCF8F8FFFC5808C0417809E9 +:103AF0005809C0901638C0302F8CCF6B7808143816 +:103B0000CFC15EFF5EF9780C580C5E0C7828163831 +:103B1000C0515EFC782816385E0C780C580CCFB17A +:103B20005EFC30383189F94800F0F9480058F9480E +:103B3000005431E8F949004CF94800503FF9E06879 +:103B40000576F949017CF948019C5EFCEBCD40E02B +:103B500018961695344CF01F000C1897C1103018A9 +:103B60009978993899485806C0500C9CF01F000766 +:103B70008F5C5805C0500A9CF01F00048FBC0E9C3F +:103B8000E3CD80E080028F2480009194EBCD40C093 +:103B9000169679075807C051C0C86E375807C090AD +:103BA0006E0C0C9BF01F0004CF910E9CE3CD80C0E7 +:103BB000E3CF80C0800091A0EBCD40FC1695189417 +:103BC000580C5F0B58055F081493104B1292C040BD +:103BD0003FFCE3CD80FC580ACFC048E73006C06800 +:103BE0002FF62E07E0460038CF406E0B0A9CF01FE0 +:103BF000000ACF710699049A089B0E9C6E185D18F6 +:103C0000F9BC01FFF9BC0000E0460038CE31CE1B04 +:103C10008003CC00800091A0EBCD40801897580C19 +:103C2000C0A0780CF01F00056E1CF01F00040E9C55 +:103C3000F01F0002E3CD8080800091E8D421189429 +:103C4000169579075807C1A03006C0680E966E3CDD +:103C5000580CC14018970A9B6E0CF01F0009CF71D9 +:103C60005806EFF81003EDF81A03EFF80003E9F82F +:103C70000A100E9CF01F0003D82ADC2A800091A0B5 +:103C800080023C18EBCD406016961895760BF01F1D +:103C900000056B088D38EB460040E3CD80600000E6 +:103CA00080023C3CD431202D500B129CF01F003C74 +:103CB0001890C730198A580AC670300118965011EA +:103CC000320230930294C0382FF60D8AE40A1800AD +:103CD0005F08E60A18005F091248E8081800CF518B +:103CE000580AC2C00D87E40718005F18E6071800DD +:103CF0005F191268E8081800C4505807C4300C95C2 +:103D0000C0385807C0D02FF50B87E40718005F189C +:103D1000E60718005F191268E8081800CF31AA8476 +:103D20004A0B0C9CF01F0020C171A1A15807C06074 +:103D3000EAC6FFFF0D8A580ACCA1009CF01F001BA9 +:103D40005801C2404008F141005C40195809C25175 +:103D5000129C2FEDD832496B0C9CF01F0013C03120 +:103D6000A1B1CE5B0C9C493BF01F000FF9B80004D9 +:103D7000E3D8E031FBF91001F7B901FFFBF91A01B3 +:103D8000CD6B0C95CCDBF01F0009300840093FFCDF +:103D9000F348005C2FEDD8322FEDDC3A800091948F +:103DA0008003D304800091A0800091E88003D30CAD +:103DB0008003D314EBCD40FE169CF01F00451891F4 +:103DC000C6B0198A580AC7A0189630023203309438 +:103DD000E80A18005F08E60A18005F091049300871 +:103DE000F0091800C0E0109B2FF60D8AE60A1800B3 +:103DF0005F08E80A18005F091248F6081800CF515A +:103E0000580AC4500D87E80718005F18E607180025 +:103E10005F1910693008F0091800C3705807C350C3 +:103E2000109A0C95C0385807C0D02FF50B87E607BD +:103E300018005F18E80718005F191268F4081800E6 +:103E4000CF3130084A3BAA880C9CF01F0023C0F1F8 +:103E5000A5A25807C060EAC6FFFF0D8A580ACB9199 +:103E6000029CF01F001E049CE3CD80FE49CB0C9CFD +:103E7000F01F0019C031A3B2CEDB49AB0C9CF01F80 +:103E80000016C0E1A3A2CE6B0C95CDCB029CF01F17 +:103E900000135802CE913FF2049CE3CD80FE492BE3 +:103EA0000C9CF01F000DC031A1B2CD4B0C9C48FB07 +:103EB000F01F0009C071A1A2CCDBF01F00083FF287 +:103EC000CD3B029C3FF2F01F0005CCEB80009194AB +:103ED00080039A74800091A0800091E880039A6C1E +:103EE0008003D31C8003D3248003C8E4EBCD40803F +:103EF0001697149C129BF01F00085BFCC031E3CFA7 +:103F0000C0801898E018FFE1CFB1EF4C0050109C32 +:103F1000E3CD808080023DB4EBCD40801697149CA9 +:103F2000129BF01F00085BFCC031E3CFC0801898E3 +:103F3000E018FFE6CFB1EF4C004C109CE3CD808041 +:103F400080023DB4D431201D500B129CF01F00485C +:103F50001891E080007F198A580AC6B0300218967E +:103F6000049032033094E80A18005F08E60A18004B +:103F70005F0910493008F0091800C0E0109B2FF6C7 +:103F80000D8AE60A18005F08E80A18005F0912485F +:103F9000F6081800CF51580AC2F00D87E80718003C +:103FA0005F18E60718005F1910693008F00918005B +:103FB000C3E05807C3C0109A0C95C0385807C0D04A +:103FC0002FF50B87E60718005F18E80718005F1940 +:103FD0001268F4081800CF3130084A6BAA880C9C8C +:103FE000F01F0025C161A1B25807C060EAC6FFFFFB +:103FF0000D8A580ACB91029CF01F00205802C1B0D4 +:104000004009F34200545800C241009C2FFDD832B1 +:1040100049BB0C9CF01F0018C031A1A2CE6B499B7C +:104020000C9CF01F0015C0E1A3B2CDFB0C95CD5B3D +:10403000F01F0012300840093FFCF34800542FFDE8 +:10404000D832491B0C9CF01F000CC051A3A2CCDB42 +:104050002FFDDC3A0C9C48DBF01F0007F9B800107C +:10406000E5D8E032F7B001FFCC0B0000800091945E +:104070008003C8C4800091A0800091E88003D32C05 +:104080008003D3348003C8E48003C8E0D431202DFA +:10409000500B129CF01F00391890C6D0198A580A8C +:1040A000C610300118955011320230930294C03876 +:1040B0002FF50B8AE40A18005F08E60A18005F096A +:1040C0001248E8081800CF51580AC2C00B87E4070D +:1040D00018005F18E60718005F191268E808180052 +:1040E000C3F05807C3D00A96C0385807C0D02FF67F +:1040F0000D87E40718005F18E60718005F191268BB +:10410000E8081800CF31AC8449DB0A9CF01F001D81 +:10411000C171A1A15807C060ECC5FFFF0B8A580A06 +:10412000CCA1009CF01F00185801C1E04008F141EB +:10413000005840195809C1F1129C2FEDD832493B63 +:104140000A9CF01F0010C031A1B1CE5B0A9C490B44 +:10415000F01F000CCFA040192FF95019CDCB0A96B3 +:10416000CD3BF01F0009300840093FFCF3480058E0 +:104170002FEDD8322FEDDC3A800091948003D340AC +:10418000800091A0800091E88003D3448003D3484D +:10419000EBCD40401896784CF01F00466D2CF01F78 +:1041A0000045ECFC00D0F01F00436DACF01F004157 +:1041B0006DCCF01F00406DECF01F003EECFC008069 +:1041C000F01F003CECFC0088F01F003AECFC009073 +:1041D000F01F0038ECFC0094F01F0036ECFC009857 +:1041E000F01F0034ECFC009CF01F0032ECFC00A03F +:1041F000F01F0030ECFC00A4F01F002EECFC00A827 +:10420000F01F002CECFC00ACF01F002AECFC00B00E +:10421000F01F0028ECFC00B4F01F0026ECFC00B8F6 +:10422000F01F0024ECFC00BCF01F0022ECFC00C0DE +:10423000F01F0020ECFC00C4F01F001EECFC00C8C6 +:10424000F01F001CECFC00CCF01F001AECFC00D4AA +:10425000F01F0018ECFC00D8F01F0016ECFC00DC8E +:10426000F01F0014ECFC00E0F01F0012ECFC00E872 +:10427000F01F0010ECFC00ECF01F000EECFC0150F5 +:10428000F01F000CECFC016CF01F000AECFC01803C +:10429000F01F0008ECFC018CF01F0006ECFC01A0F4 +:1042A000F01F00040C9CF01F0003E3CD80400000D1 +:1042B000800091E8EBCD40C0189678085808C031CE +:1042C000C0880E987007109CF01F00155807CFA1EA +:1042D0006D085808C031C0880E987037109CF01FC8 +:1042E00000115807CFA16C5CF01F000F6C6CF01F21 +:1042F000000E6C8CF01F000C6C9CF01F000B6CAC63 +:10430000F01F00096CBCF01F00086C1CF01F0006B9 +:104310000C9CF01F0005E3CD80C00000800241909E +:1043200080023C18800091E8EBCD4040320818969E +:104330001AD8E0691000F8C8FFDC785A784B792C5D +:10434000F01F000430182FFDED480044E3CD8040FD +:104350008002B254D421F60815011695F0C6FFFF6D +:1043600018940C9CF01F00061897C0600A99089AD0 +:104370000C9BF01F00040E9CD822000080028F24AA +:1043800080023A68EBCD40E016951896F6CCFFFD1A +:10439000F01F00091897C0C00C9B0A9A322618C655 +:1043A000F01F0006EE0500093008B296B2A80E9C78 +:1043B000E3CD80E080009200800091DCD401580CB5 +:1043C000C1D0580BC160198835E92208F2081800DD +:1043D000E08B0013129A3009C088F80907082208F8 +:1043E000F4081800E08B00092FF9123BFE9BFFF741 +:1043F000F01F0003D802F01F0003D802800243849C +:1044000080024354D4011698F6FC0140580CC06059 +:10441000189BF0CCFEDCF01F0002D802800243BCE7 +:10442000D4011698F6FC013C580CC060189BF0CCE7 +:10443000FEECF01F0002D802800243BCD4011698A3 +:10444000F6FC0138580CC060189BF0CCFEFCF01F45 +:104450000002D802800243BCD4011698F6FC013455 +:10446000580CC060189BF0CCFF0CF01F0002D80263 +:10447000800243BCEBCD40F831EC1694F01F0028CD +:104480001896C3906979F8C3FFE2EDB90000C360E4 +:104490001897EDB90001C1614A294A380C37F20872 +:1044A0001710E60701051AD84A0A0A9B0E9CF01F4E +:1044B00000202FFD580CC1C51835E08A001A1807D6 +:1044C0006979EDB90002C171496949780C37F20880 +:1044D00017100E9C1AD8E6070107496A0E9BF01FB9 +:1044E00000142FFD580CC0451837E089000530082E +:1044F000E768FFFF0C9CE3CD80F848B848EA1AD87B +:1045000031EBF01F000B2FFD580CCF2559DCFE9925 +:10451000FFF0EC0C00076979CBDB000080028F24F0 +:104520008003936480037E208003D35880009148E9 +:104530008003D3648003D350EBCD40F81894332C20 +:10454000F01F003E1896C650F8C3FFCEEDB400042D +:10455000C6301897EDB40003C1514B994B980C37F6 +:10456000F2081710E60701051AD84B7A0A9B0E9C31 +:10457000F01F00362FFD580CC4951835E08A00470F +:104580001807EDB40002C1514AD94AE80C37F208C5 +:104590001710E60701051AD84ADA0A9B0E9CF01F8D +:1045A000002B2FFD580CC3251835E08A0030180762 +:1045B000EDB40001C1514A294A280C37F2081710FE +:1045C000E60701051AD84A3A0A9B0E9CF01F001F05 +:1045D0002FFD580CC1B51835E08A00191807EDB445 +:1045E0000000C171496949780C37F20817100E9C18 +:1045F0001AD8E6070107498A0E9BF01F00142FFD09 +:10460000580CC0451837E08900053008E768FFFFFF +:104610000C9CE3CD80F848B8490A1AD8332BF01F18 +:10462000000B2FFD580CCF25E04C0031FE99FFEF19 +:10463000EC0C0007C90B000080028F2480039364F8 +:1046400080037E208003D374800091488003D37C54 +:104650008003D3888003D3908003D36CD401774C3C +:10466000F01F0002D802000080024538D401773CD8 +:10467000F01F0002D802000080024538EBCD40F860 +:10468000332C1693F01F00401896C6906759F8C453 +:10469000FFCEEDB90001C6601897EDB90000C16109 +:1046A0004BA94BB80C37F2081710E80701051AD8C8 +:1046B0004B8A0A9B0E9CF01F00382FFD580CC4C576 +:1046C0001835E08A004A18076759EDB90003C1613F +:1046D0004AE94AF80C37F2081710E80701051AD81A +:1046E0004AEA0A9B0E9CF01F002C2FFD580CC34574 +:1046F0001835E08A003218076759EDB90002C16128 +:104700004A294A380C37F2081710E80701051AD869 +:104710004A3A0A9B0E9CF01F00202FFD580CC1C581 +:104720001835E08A001A18076759EDB90004C171FD +:10473000496949780C37F20817100E9C1AD8E80717 +:104740000107498A0E9BF01F00142FFD580CC0452D +:104750001837E08900053008E968FFFF0C9CE3CDBD +:1047600080F848B8490A1AD8332BF01F000B2FFDE8 +:10477000580CCF25E04C0031FE99FFEFEC0C000700 +:104780006759C8CB80028F248003936480037E2006 +:104790008003D3A4800091488003D3B08003D390DA +:1047A0008003D3BC8003D398EBCD40C030AC1696C9 +:1047B000F01F00181897C1806D69EDB90000C17035 +:1047C000189A301BEDB90001C0F149384939580B2E +:1047D000F0091700149C1AD9EECBFFF6141B490AF6 +:1047E000F01F00102FFD0E9CE3CD80C048B848EAB2 +:1047F0001AD830ABF01F000B2FFD580CCF55589C2A +:10480000FE99FFF3EE0C000A6D69300BCDCB000072 +:1048100080028F248003936480037E208003D3D0A2 +:10482000800091488003D3C8EBCD40C01697768CAA +:10483000580CC05118960C9CE3CD80C0314CF01F31 +:1048400000101896CF90EF38001DEF3A00181AD8D4 +:10485000EF39001C1AD9EF38001B1AD8EF39001AAB +:104860001AD9EF380019314B1AD81ADA485AF01F02 +:10487000000630082FADED680013CDEB80009200EC +:104880008003DA4880009148EBCD40E078351696F9 +:10489000314CF01F000A1897C0C0EC050308488A85 +:1048A0001AD8314BF01F000730082FFDEF680013B6 +:1048B0000E9CE3CD80E00000800092008003DD6864 +:1048C00080009148EBCD40801697772C580CC09013 +:1048D000F01F0009189B6F2CF01F0008E3CD8080AB +:1048E000771C580CC060F6CCFFDC320BF01F0004C4 +:1048F000E3CD8080800091B88002438480024354DD +:10490000EBCD40807838F60800076E085808C0C024 +:10491000784C580CC0C0F60C030C189B109CF01F70 +:104920000007E3CD8080109CE3CD8080109CF01FB9 +:1049300000046E08CF3B0000800243BC800091B8A9 +:10494000EBCD40F83228169418961989F009180012 +:10495000C0A0F01F001BEBDCC001C19030070E9C13 +:10496000E3CD80F8F8C7FFFF322B0E9CF01F001537 +:10497000CF6019985808CF31B8880E9CF01F0010EE +:10498000890C0E9CF01F00101897CEABF80316018F +:10499000E6CCFFFFF01F000D1897CE200C9C069A66 +:1049A0000E9BF01F000BC051EE030B0C8903CD8B47 +:1049B0000E9C0A97F01F0007CD3B0000800091B8C5 +:1049C00080009158800091948000920080023944C8 +:1049D000800091E8D421205D18951094129C1696C1 +:1049E000F01F000F1897C1906C0A590AE08B001451 +:1049F000189B0A9CF01F000B0E9CF01F000B48BA7E +:104A00001AD4314BFACCFFFCF01F0009300C2FFDFB +:104A10002FBDD822F01F00042FBDDC2A80024940A0 +:104A2000800091DC800091E88003D3D88000914819 +:104A3000D4013038F6CCFEDCF6CBFEC0F01F00020D +:104A4000D8020000800249D4D4013028F6CCFEEC14 +:104A5000F6CBFEC4F01F0002D8020000800249D449 +:104A6000D4013018F6CCFEFCF6CBFEC8F01F0002D5 +:104A7000D8020000800249D4D4013008F6CCFF0CE3 +:104A8000F6CBFECCF01F0002D8020000800249D411 +:104A9000EBCD40F8201D18971693129C1A9BF01F1F +:104AA00000171895C2306E595809C0504008103987 +:104AB000E08B00206E695809C04040081039C133AE +:104AC0006E366E44E60600066C0CF01F000D8D0578 +:104AD0006E4C580CC0504008300CE60409082FFDFD +:104AE000E3CD80F80A9CF01F00062FFDE3CFC0F84D +:104AF000F01F00033FFCCF4B80024940800091E84B +:104B0000EBCD40FEF6F700D05807C0510E94089C3C +:104B1000E3CD80FE364CF01F00191894CF90EEC6FE +:104B2000FFFCF8C3FF9C189749514962ECFCFFFC5D +:104B3000580CC2116C0B580BC1A02F86F01F00122D +:104B4000CF600837E2081700E40817101ADCE60700 +:104B500001051AD80E9C48DA0A9BF01F000D2FEDB4 +:104B60001807580CC0451835FE99FFE23008E76871 +:104B7000FFFFCCEB6C0BCE2B80028F2480037E20BA +:104B800080039364800271BC8003D3E48000914869 +:104B9000D431205D500B129CF01F0056502CE08049 +:104BA000008E198A580AE080009B3009402650196F +:104BB000503912905049320230931294C0382FF677 +:104BC0000D8AE40A18005F08E60A18005F09124817 +:104BD000E8081800CF51580AC4E00D87E407180010 +:104BE0005F18E60718005F191268E8081800C64049 +:104BF0005807C6200C95C0385807C0D02FF50B8732 +:104C0000E40718005F18E60718005F191268E80843 +:104C10001800CF31AA842FF0403CE00B1503F01FA1 +:104C200000361891C4E040490C9CE20900060C9B38 +:104C3000F01F00328D1C6C085808C141580CC1018E +:104C400040182FF850185807C15040482F88504836 +:104C5000EAC6FFFF0D8A580AC3C05031CB3B591C2E +:104C6000C2404009F2F801782FF8F348017858075C +:104C7000CED15031E0C8FFFFF0071503402CF01FE4 +:104C800000200E9B403CF01F001CC2E0F8000039E1 +:104C90003008931893084008F14C00D04019580987 +:104CA000C0D1129C2FBDD8324009F2F801742FF800 +:104CB000F3480174CC9B0C95CAEB3FFC2FBDD83256 +:104CC000403CF01F000F402CF01F000D2FBDDC3AC0 +:104CD000E0C8FFFF5031F0071503CD1B501A308795 +:104CE000503A1490CCCB403CF01F00053FFCCE7BEB +:104CF00080009194800091F48002720C800091E811 +:104D0000D4213228129716951389F0091800C0A0F3 +:104D1000320A2DCB0E9CF01F00271896C2F03FFCE4 +:104D2000D822EEC6FFFF322B0C9CF01F0023C3C01D +:104D3000F8060107EEC80008E0480037FE9BFFF1C7 +:104D40006B2C580CC060F01F001D0E3CC2606B2C19 +:104D50003004EB440044F01F001AEECCFFFFF01FBC +:104D60000019EB4C0048CDC00C9B0E9AF01F0016AA +:104D70006B28089CF0070B04D822EF390040F80993 +:104D80001800CCE16B2CF01F000E3018EB460048E9 +:104D90000C9CEB480044D8220E9A0C9B6B2CF01F05 +:104DA000000BCD61CBEB0C9CF01F00041897CC3BA3 +:104DB0008002394480009158800091B8800091E8C9 +:104DC00080009200800091DC8000917CEBCD4080DF +:104DD0001697129C2E8BF01F0006F9BC01FFF9B844 +:104DE0000001EFF80A08E3CD808000008002389CC3 +:104DF000EBCD40C018976E38129CF00B000630AA1D +:104E0000300BF01F000C8D0C18996E585808C030EC +:104E1000103CC0956E6C580CC0401839E0890007F2 +:104E2000E3CF80C08D08E3CFC0C08D0CE3CFC0C0FE +:104E300080009170D42116941895782B580BE08A35 +:104E400000557817683E6E0C78381C38C410EECACE +:104E5000FFFC3009C058150C78381C38C3902FF966 +:104E60001639CFA52FFB0E9CA36BF01F00241896BC +:104E7000C3506A2C580CE08A003B6C08683E7039BD +:104E80001C39C355ECC8FFFC300AC0A81097700845 +:104E9000F40B15027039EEC8FFFC1C39C2052FFA5D +:104EA000143CFE99FFF5F4C8FFFFEC0A002BA36841 +:104EB0001697F80A010AEC08000CA36AF01F00100C +:104EC0008F048B166A28300C2FF88B28D82218985C +:104ED000781C580CCFD19114D822DC2AF4C8FFFFDB +:104EE000EC0B000BA368CE6B7817CBDB0C97300A6A +:104EF00030480C9BCDFB0000800091F4800091C4F1 +:104F0000D4211895781CF01F000D300C8B1C8B2CB5 +:104F10006A075807C0F0189618948F140E9B0A9CC5 +:104F2000F01F00076E07F9B605FF5807CF710C9CFC +:104F3000D8220E96CFDB0000800091E880024E342C +:104F4000D421189578095809C1E03FFAC028109972 +:104F50007228F4080C4A72085808CFA1F4C4FFFF65 +:104F60001296E06C01A8F01F000A1897C0A09924BF +:104F70005806EDFC1A00EBFC0A000A9CF01F000525 +:104F80000E9CD82212961294CEDB000080028F2451 +:104F900080024F005EFD5EFD5EFD5EFD5EFD5EFD1E +:104FA000D401584BC0E0E0880007586BC0A0587B84 +:104FB000C040D802580BC091300CF01F0005D80239 +:104FC000301CF01F0003D802D80200008002172016 +:104FD000D401581BC070300A323C149BF01F0005EE +:104FE000D80A300A322C149BF01F0002D80A0000A5 +:104FF00080014658EBCD40FE201D1094129216956C +:10500000F01F0057E8C8FFF25C7C4D69F00C000609 +:10501000F33A0109580AC060EC0A0D085809E0810A +:10502000008F3003500CE6060001029CF01F004E7A +:105030000A9B1897306A400CEE0C000CF01F004BD6 +:10504000400C306A4CAB140CEE0C000CF01F004707 +:10505000400C302A4C7B2F4CEE0C000CF01F004310 +:10506000400C089A049B2F2CEE0C000CF01F003F04 +:10507000FAC8FFFC3005114A0E991AD5EE0A000C49 +:105080001AD5EC0A010A30EBF01F003B2FED581C3B +:10509000C5914009EC090108E048003EE08B001092 +:1050A0008E085CC806085CC8AED3029B0E9CAE0896 +:1050B000F01F0032300C2FFDE3CD80FEEE09000E14 +:1050C0003888FD39000CF0091800CEB1FD39000D0B +:1050D00038E8F0091800CE51FD38000EF808180025 +:1050E000CE01FD39000F3038F0091800CDA130286D +:1050F000FD3A0012F00A18005F1B3FE8F00A1800A2 +:105100005F19126BEA0B1800CCC1FD380013E218CE +:10511000001D5818CC61FD380014E21800C85888EA +:10512000CC01FCCAFFC1FCC9FFE1C0482FF914390A +:10513000C0E01388F6081800CFA0CB3BF4090103A8 +:10514000C72B0E9CF01F000E3FFCCB6B0FC92FA985 +:10515000EE0900091388A3A8B288CA3B8001F4E8CD +:10516000000087F480009200800091DC00007AA8A3 +:105170008003D6548001F54480014664800091E8A4 +:10518000D401201D3068FACBFFFC16D81A9B486C5E +:10519000F01F00064848581CF00C1700F9BC01002D +:1051A0002FFDD80200007AA880017A88EBCD40401C +:1051B000310A1696300B0C9CF01F000630F930783F +:1051C0008D198D09300C30398D288D39E3CD804013 +:1051D000800091D0D401F01F0002D80A80016048FD +:1051E000EBCD4068206DFAC3FFEE1496069C306A42 +:1051F000F01F0010FAC5FFFE0C9B310A0A9CF01F3D +:10520000000D0A9B204D310A1A9CF01F000B069BD3 +:10521000202D306A1A9CF01F0008F01F00082FADE7 +:10522000581CF9BC01FFF9BC00002FADE3CD80682C +:10523000800091DC8002E73680016094EBCD40680D +:10524000206DFAC3FFEE1496069C306AF01F001022 +:10525000FAC5FFFE0C9B310A0A9CF01F000D0A9B49 +:10526000204D310A1A9CF01F000B069B202D306A3E +:105270001A9CF01F0008F01F00082FAD581CF9BC45 +:1052800001FFF9BC00002FADE3CD8068800091DC08 +:105290008002E73680016168D401F01F0005581CC8 +:1052A000F9BC01FFF9BC0000D80200008001F370D6 +:1052B000D401F01F0005581CF9BC01FFF9BC000027 +:1052C000D80200008001F310D401169CF01F0004E6 +:1052D000581CF9BC01FFF9BC0000D802800163E052 +:1052E000D431207DFACEFFC050287C027C387C1758 +:1052F00050087C2E501E16901894149B1293580A36 +:10530000C5C0FAC5FFEA306A0A9CF01F0031202DA3 +:10531000306A0A9B1A9CF01F002FF01F002F5802C2 +:105320005F1858075F1918912FED1268C181300678 +:105330005800C26168193018F0030948F00811FFDD +:10534000F1E9000C891C580CC365BFBC891CF01F17 +:10535000002318975817C2F02F9DDC3A5887FE9B00 +:10536000FFFDFAC6FFF2308A300B0C9CF01F001CC8 +:105370000E9A049B0C9CF01F00165800CDC04028CC +:1053800058015F091AD8069C1AD630381AD530163B +:10539000404A403B1AD6F01F00136819EC03094835 +:1053A0001248F1D8C01F189789180C9CF01F000EE6 +:1053B0002FCDCD1B2F9DD83AFAC5FFEA306AE06B9E +:1053C00000FF0A9CF01F0006CA3B0000800091DC31 +:1053D0008002E736800188B080016584800091D02A +:1053E0008001661C8001639CEBCD40C01896308C18 +:1053F000F01F00091897C0C0300899069918F01FCF +:105400000007301CF01F00060E9CE3CD80C0E3CDEA +:1054100080C0000080028F248001604880017A10E3 +:10542000EBCD4080209D1697FACCFFFEF01F0009BF +:10543000581CC0402F7DE3CFC0800E9C1BBAFACB16 +:10544000FFFCF01F00051BBC2F7DE3CD808000001A +:1054500080017800800091DCEBCD4080202D580B3E +:10546000C120FAC7FFFE306A0E9CF01F000C0E9C94 +:10547000F01F000B581CF9BC01FFF9BC00002FED18 +:10548000E3CD8080FAC7FFFE306AE06B00FF0E9C20 +:10549000F01F0004CEDB0000800091DC8001793039 +:1054A000800091D0EBCD4040485B1896F01F00057E +:1054B0000C9CF01F0005E3CD8040000080039C3869 +:1054C00080025458800091E8EBCD40C0202DFAC7EF +:1054D000FFFE16960E9CF01F0008581CC0402FEDD2 +:1054E000E3CFC0C00E9B0C9C306AF01F00042FED70 +:1054F000E3CF80C080017864800091DCEBCD40C0B8 +:1055000018977939580BC0305839C0E03018EF4837 +:1055100000BC3038EF48004C1039C0808F2830086C +:105520008F58E3CD80C0F949004C6F682FF8EEFA30 +:10553000010CEF4800586FA830098F288F59301B95 +:10554000746C7486487A5D16EEF80094EEF900905B +:105550002FF82FF9EF480094EF490090E3CD80C079 +:1055600080037E20580C5E0C580BF9FB4A19580A30 +:10557000F9FA4A225809F9F94A1A5808F9F84A1B5F +:105580005EFC580CF9F81024F9B90101F1D9E108D1 +:10559000F9F81A245EFC580C5E0C580BF9B801019E +:1055A000F9F81A45F9FB0A455EFCD703EBCD40C07C +:1055B0001897580CC04079385858C030E3CD80C097 +:1055C000F8F8010C3009706C7086488A301B5D1643 +:1055D000EEF80094EEF900902FF82FF9EF480094C0 +:1055E000EF490090E3CD80C080037E20580CF9FC89 +:1055F00010315EFC580CC0B0F8F800D45808C070E8 +:10560000F8F800D89708F8FC00D45EFC300897083A +:105610005EF8D703580CC040588BE08800035EFD4D +:1056200048D8F00B032FF8FC00E05EFCF8FC00DC2F +:105630005EFC78BC5EFCF8FC00805EFC79FC5EFCE5 +:10564000F8FC00845EFC784C5EFC797C5EFC786C37 +:105650005EFC00008003D6FC580C5E0C588B5EBCD0 +:1056600048E8F00B032FF94A00E05EFCF94A00DC41 +:105670005EFC99BA5EFCF94A00805EFCF94A007C47 +:105680005EFCF94A00845EFC994A5EFCF94A005CC3 +:105690005EFC996A5EFC00008003D720580CC05065 +:1056A000580BC031783C5EFC5EFD580C5E0C580B0C +:1056B000F9FA0A035EFCD401580CC0A0F8FC010CF6 +:1056C000580CC06078A85808C030780C5D18D80213 +:1056D000D401580CC021D80AF8FC010C580CCFC0DA +:1056E00078B85808CF90780C5D18D802EBCD408080 +:1056F0001897580CC1E0189A300B48FCF01F000FA7 +:105700000E9A300B48ECF01F000DEEFC00C0F01FAD +:10571000000DEEFC00CCF01F000CEEFC00D4F01FDE +:10572000000AEEFC010CF01F00080E9CF01F0006A2 +:10573000E3CD80808002608C800274008002602053 +:10574000800270E0800091E8D401580CC050F8FC51 +:1057500000C0F01F0002D80280026410D401580C6F +:10576000C050F8FC00C0F01F0002D802800264287C +:10577000D401189A580CC0A030583019F8FC00C059 +:10578000F548004C95C9F01F0002D802800263BAA8 +:10579000EBCD40801897580BC04079E85888C0403E +:1057A0003018EF4800BC30193088EF490044EF480A +:1057B00000788F99EEFC00C0F01F0004F9B80100DA +:1057C000EFF81A39E3CD8080800263B2EBCD40E080 +:1057D000201D189716951496580CC0513FFC2FFDAC +:1057E000E3CD80E0F8FC00C0F01F000ACF801A9BD8 +:1057F000EEFC00C0F01F0008189BCF10400C0C3CC2 +:10580000CEF30C9A0A9CF01F0005300CCE9B0000D2 +:10581000800263B2800263CE800091DCEBCD40C099 +:1058200018971496580CC1F0F94B00C4580AC1B02F +:1058300074087419F94800F8F94900FC7428F9480B +:105840000100F8FC00C0580CC0E0742BF01F0007EA +:105850006C3BEEFC00C0F01F00066C4BEEFC00C081 +:10586000F01F0004E3CD80C0800263A6800263AC19 +:1058700080026408D431FACD00A81897F8F600CC5D +:105880005806C0F0F8F800F85808C0B00DA80DB9D7 +:10589000F3E81089F8F800D02FC91039E088000427 +:1058A0002D6DD832ECC4FFFC0999500909A0F01FF6 +:1058B000006FFAC1FFF8340A029B0E9CF01F006CC7 +:1058C0001895CEF5590CE0800090580CCEA132020C +:1058D0005012EEF800E45808C7D1E8C5FFE4FAC357 +:1058E000FF68310A0A9B069CF01F0062310A300BE8 +:1058F0000A9CF01F00610DAA0DB9049BF3EA108900 +:10590000FACCFFD8EEFA00CC0A982FC9F01F005B42 +:10591000310A0A9B069CF01F005AC7614009E1E961 +:1059200010880DB9EBD8B0100DA8F3E81089320833 +:10593000F2CE002CF00519005FB9E04E00205F9A0E +:10594000124AF80A1800CAD15C751C35C630580EC8 +:10595000CA81FAC3FF88029B0A9A069CF01F004581 +:105960003018308AEF4800E4E8CBFFFDEECCFF189A +:10597000F01F0040EEFC010C78965806C0D0E93AC2 +:10598000001B0A98149B0699780CE21B0080F5DA3C +:10599000C0025D16C865E939001B3008F00918001F +:1059A000C5753018EF48011CEEF901185809C0718F +:1059B000EEF800FCEDB80000FE90FF7430188FD8B0 +:1059C000EEFC010C78785808FE90FF6C780C5D189E +:1059D000C68B308AE8CBFFFDEECCFF18F01F002805 +:1059E000FE94FF60C7BB189A029B0E9CF01F00201C +:1059F000FE91FF580A9A029BFACCFFD80A92F01F38 +:105A0000001D5015C67B069B0A9C310AF01F001929 +:105A1000C48BFAC6FFB8E8CBFFF50C9C310AF01F27 +:105A20000015049A029BFACCFFA8F01F0012FAC3DB +:105A3000FF880A9AE8CBFFD4069CF01F000E40199D +:105A40000C9A2F090A9B069CF01F000EC8AB301859 +:105A5000EF480118EEF9011C5809CB11EEF800FCD3 +:105A6000EDB80001CAC1C1DB8002575C800257CC8F +:105A7000800091DC800091D080028EF88000917CC3 +:105A800080029C38D431201D3003189730140695BD +:105A900030213040EF4500BC6F4A580AE08000C911 +:105AA0006F585808E08100C56E7C580CE08100C238 +:105AB0006EB85808E08000BE6F385828EFF41A2FEF +:105AC000EEF8010CEF41004C3009706C7086FEFA64 +:105AD000051E029B5D16EF4400548FC5EEF800983A +:105AE000EEF900902FF82FF9EF480098EF49009059 +:105AF0006E7C580CC0516EB85808E08100EC6FC83D +:105B0000EF4400705818EFF41A2F6FD85808E0814E +:105B100000F8580CE08100A76EE85808E08100A367 +:105B20006FE8F0C900015879E08B000EFEF804C45C +:105B3000F009032FEF4400BCEF410078EF4500402F +:105B4000EF4400C8EEFC00C0F01F012BE08000B560 +:105B5000EF4400BC2FF3E0430064C9D10E9A300B30 +:105B6000FEFC0498F01F012630090E98FEFA048C02 +:105B7000129B129CF01F0123EEF9010C72285808A9 +:105B8000C0E0EEF801105808C0A058185F0B3008AC +:105B90000E9CEF480110723A72285D182FFDD83222 +:105BA000EEF80088EF4400BCEF4000788F55EF45D9 +:105BB000007CEF4500C88F08CC6B6E585808E08118 +:105BC00000DF6E4B580BE08100D06E085808C161B1 +:105BD0003078EF4400BCEF480078EF440048CB3BFE +:105BE000EEF900845809E08101846FF85808E081DB +:105BF000015C6E4B580BE08100B86E685808CA30E3 +:105C00000E9CF01F0101C9FB6E485808E08100A9F5 +:105C10006E585808E08100B06E685808C9406F0897 +:105C20005808C910300B0E9CF01F00F7C8CB6E7CD3 +:105C30006EA95809C2F16F885808C2C06F38EF4585 +:105C400000605818EFF41A2FEF44004CEF4500584D +:105C5000EF4500548FC58FE4EF450118EF45011C57 +:105C6000C49B6FE8EEFC00CC5818EFF41A2FEF44F9 +:105C70000078F01F00E6EEFC00D4EF4500CCF01FEA +:105C800000E3EEFC00C0EF4500D4F01F00E18FE51B +:105C9000C5AB580CCD416EB85808CD105829C3B0CB +:105CA0005819C4706F3820185878FE9BFF26FEF9EB +:105CB0000362F208032FEEF800BC5808FE91FF4C77 +:105CC000C5CB6E585808E08100FE6ED85808E080B9 +:105CD00000FE6FC95819FE90FF1A5829FE91FF1E49 +:105CE0006FD85808FE90FF1A0E9CEF490070EF44E1 +:105CF00000BCF01F00C96E7CEF450074C0BB0E9C59 +:105D0000EF4400BCEF410070F01F00C36E7CEF4514 +:105D10000074C00B6F885828CC606F388FC45898B7 +:105D2000EFF41A2FEF4100603098EF48004CCE4A54 +:105D30006F885818CB806F3858A8EFF91A2FEEF9F2 +:105D4000010C30A88FC5EF440060EF48004CFEFA0C +:105D5000029E7286726C302B0A995D16CC0A6F080F +:105D60005808FE90FF573068EF4400BC8FF4EF48AE +:105D70000078CE9A6F085808FE90FF503038EF44F4 +:105D800000BC8F05EF440080EF480078CDCA6E69F3 +:105D90005809C0A06ED85808E0810117EEF800F845 +:105DA0005808E08100FC6E485808E08100EB6E88DE +:105DB0005808C0506ED85808E08000E46F28580892 +:105DC000C050300B0E9CF01F00956E7CC93A6F7866 +:105DD0005808C8018F88EF4400BCEF40004CEF48E2 +:105DE0000058EF4800448FF8EF4800488F98EF4480 +:105DF0000040C82A6E1B580BCE606E585808FE90A3 +:105E0000FF6A3089EF4400BCEF49004CEF44005C6E +:105E1000C73A6E2B580BC2716F696FB81039CD330A +:105E20006ED85808C2003058EF4400BCEF48004C10 +:105E30008FC4EF440110FE9FFE60580AFE91FF4B95 +:105E4000EF4A011CEF4400BCEF44004CEF4A0060F5 +:105E5000EF4A0058EF4A00548FCA8FE4EF4A011806 +:105E6000FE9FFE4B6E685808C7B16E485808C78140 +:105E70006E585808CC71580BFE91FF2D6F696FB8A2 +:105E80001039FE93FF286ED85808FE91FF24307811 +:105E90008FCBEF48004CEF4400BC6F98EF410110EE +:105EA0008F18FE9FFE2AEEF80088EF4900C8EF44E5 +:105EB00000BCEF4000788F59EF49007C8F08FE9FAF +:105EC000FE436ED85808E081008AEF4400BCEF44DE +:105ED000004CEF450060EF450058EF4500548FC57A +:105EE0008FE4EF450118EF45011CFE9FFE06305977 +:105EF000EF4400BCEF4900781A9BEEFC00C0F01F95 +:105F000000481892C290EEF8010C4009189A708669 +:105F1000706C300B5D16049CF01F003CEEF800C85E +:105F20005808EFF81028F9B90101F1D9E108EFF8A4 +:105F30001A28EFF80029F9B90001F1D9E008EFF8C3 +:105F40000A29EEF90090EEF8009C2FF92FF8EF499E +:105F50000090EF48009CEF450084FE9FFDF5EF4464 +:105F600000BCEF40004CEF450058EF4500448FF572 +:105F7000EF4500488F958F85EF440040FE9FFDBDA3 +:105F80003078EF4400BCEF48004C8FC56F98EF416C +:105F900001108F186E7CFE9FFDAEEEF800FC5808D5 +:105FA000FE91FF038FD4EEFC010C78785808C040B6 +:105FB000780C5D186E695809FE90FEF76ED8580887 +:105FC000FE90FEF36E7C3059EF4400BCEF49004C6C +:105FD0008FC4EF440110FE9FFD8E3088EF4400BC5B +:105FE000EF48004CEF44005CFE9FFD8780037E205D +:105FF0008003D744800268308002608C8002740085 +:106000008002747480025790800091E88002653CA1 +:106010008003D76480025874800254FC800263E6D7 +:10602000EBCD408076085808F9B901FFF1D9E108B5 +:10603000F7F81A0076185808F9B901FFF1D9E10804 +:10604000F7F81A0176285808F9B901FFF1D9E108E3 +:10605000F7F81A0276385808F9B901FFF1D9E108C2 +:10606000F7F81A03169718991698486A300B301CDF +:10607000F01F00050E9CF01F0005E3CD808000009E +:10608000800260208002747480025A84D401169CBD +:10609000F01F0002D802000080025A84D421203D63 +:1060A0001895E06C0120F01F00221897C38031E89A +:1060B0003039F9480088F948006833C8F949006C5C +:1060C000F9480064F945010C300430CA99A4089BD2 +:1060D0001A9CF01F00186AF850286ADA500A6AE819 +:1060E0005018EEF8010C1A99704A493B0E9CF01FAB +:1060F0000013EF4C00C01A961898C14030160E9C41 +:106100008F76F01F000F0E9C8F74F01F000D0E98FD +:1061100008990C9C48BA089BF01F000B0E9C2FDDC1 +:10612000D8220E9C1097F01F0009CF9B80028F246D +:10613000800091D0000004788002711C80025A8493 +:106140008002602080027474800091E8D401580CB1 +:10615000C090F8F800D45808C050F8F800805808EB +:10616000C020D8023018F94800809958F01F00026A +:10617000D802000080025A84D401580CC04099AB68 +:10618000F01F0002D802000080025A84D401580C8B +:10619000C060F94B00E0994BF01F0002D8020000EC +:1061A00080025A84EBCD40801897580CC090996BB0 +:1061B000F94B00DC580BC0610E9CF01F0005E3CDCD +:1061C0008080F8FC00C0F01F0003CF7B80025A845F +:1061D000800263BAD401580CC04099DBF01F000262 +:1061E000D802000080025A84D401580CC04099BBE8 +:1061F000F01F0002D802000080025A84EBCD40E07C +:10620000189714951296580CC3A0F8F8008C2FF824 +:10621000F948008C5839E08B0009F8F800A82FF8ED +:10622000F94800A8E3CF80E01588306AF94800B04B +:10623000F8CCFF4CF01F0042ECCA00040BA90BB8CD +:10624000F1E910861436E08B00130B99300CF80935 +:106250001800C4603038F0091800C130EEF800A80A +:10626000301C2FF8EF4800A8E3CD80E0EEF800AC3A +:10627000300C2FF8EF4800ACE3CD80E0E3CF80E0B6 +:10628000E046002BE088004C3FE80BCBF00B1800F9 +:106290005F0A3028F00B18005F09124AF80A18004C +:1062A000CEE13018F00B1800C3A1EEFC00CCF01FBB +:1062B00000252FC60C9CF01F0024EF4C00CCC2F030 +:1062C0000C9A0A9BF01F001E0E9CEF4600D0301661 +:1062D000EF460074F01F001D0C9CE3CD80E0EEF84B +:1062E00001145808C100300830398FC8EF48011434 +:1062F0008F29EF49004CEEFC010C78C85808C030DB +:10630000780C5D18EEFC00D4F01F000E0C9CEF46DC +:1063100000D8F01F000DEF4C00D4C031E3CF90E067 +:10632000EACBFFFCEEFA00D8F01F00050E9C3016F9 +:106330008F56F01F00060C9CE3CD80E0800091DCBE +:10634000800091E88000920080025A84EBCD40806A +:10635000189779685808C0B079BB580BC08070494D +:106360005D193008EF480058EF48006CE3CD80809D +:10637000EBCD40C01897580BC04078085878C04003 +:106380003018EF48006030786FA68F086F9C6C293A +:10639000300A305B5D196FA86F9C7029301A304B42 +:1063A0005D19E3CD80C0F94B00745EFCF94B00B081 +:1063B0005EFC580CF9FC10135EFC580CF9B8010196 +:1063C000F9F81A06F9B9010BF9F91A005EFC580C34 +:1063D000C08079485808C05079589708794C5EFCBD +:1063E000300897085EF8580CC0C0791A580AC09057 +:1063F000792897083009F9490048F94900445EFABC +:106400003008109A97085EFAF94B00C45EFCD70377 +:10641000D401580CC040483BF01F0003D8020000D4 +:106420008003D7B08002634CEBCD40801897580CA6 +:10643000C0F079A8300B7019799C5D19C0916E6815 +:106440005808C0606E2820385818E0880004E3CD52 +:1064500080806F485808F9B80101EFF81A136FA847 +:106460006F9C7029301A300B5D19EEFC00A4483A7D +:10647000302BF01F0003CECB8003D7BC80023A1A2A +:10648000EBCD40801897580BC040780858B8C040F2 +:106490003018EF4800606F4930B88F085809F9B8D4 +:1064A0000101EFF81A136FA86F9C7029301A300B96 +:1064B0005D196FA86F9C7029300A305B5D196FA859 +:1064C0006F9C301A7029304B5D19EEFC00A4484ACD +:1064D000302BF01F0004E3CD808000008003D81C27 +:1064E00080023A1AEBCD40C01897580BC04078088C +:1064F00058C8C0403018EF48006030C86FA68F08F9 +:106500006F9C6C29301A302B5D196FA86F9C702915 +:10651000300A305B5D196FA86F9C301A7029304BC0 +:106520005D19EEFC00A4484A302BF01F0004E3CDB7 +:1065300080C000008003D86080023A1AEBCD406032 +:106540001896784CF01F000B30056D1C8D45F01F20 +:1065500000096D4CED450044F01F00066DA8ED45A7 +:1065600000500A9A6D9C70290A9B5D19E3CD8060EA +:10657000800091E8EBCD40E01897580BC4F0780804 +:106580005808C4C130088F086FD95809C0B06F6867 +:106590005808C08070985808C0506FBB0E9C5D189A +:1065A000C4114A4B0E9CF01F00246FA83006301512 +:1065B0008F16EF4500408F268F666EFA70490C9B50 +:1065C0006F9C5D196FA80C9A70290C9B6F9C5D19CC +:1065D0006FA80C9A7029302B6F9C5D196F4CF01FBF +:1065E00000176FA80A9BEF460050EF46004C0C9A2C +:1065F00070296F9C5D193FF80C9A8F386FA5303B5E +:106600006F9C6A295D196FA80C9A7029304B6F9C9A +:106610005D19EF4600C0E3CD80E03018EF48006020 +:10662000CB2B6F686FBB70A90E9C5D19CBFB000074 +:106630008003D8948002634C800091E8EBCD40E069 +:10664000205D1897580BC04078085858C040301843 +:10665000EF48006030588F086F695809C4406FA830 +:10666000FACBFFF070596F9C5D19310A300B189509 +:106670001A9CF01F00256F1C6EE850086E295019F7 +:106680006E6850286F095039F01F002030086F6B7A +:10669000EF48005CEF480044EEC8FFB81A9A0A9928 +:1066A0001AD80E9C405876566FBB5D16EF4C0044CE +:1066B00040188FE82FFD5808C1616F785808C13124 +:1066C00040188F2840298F694038EF4800406F6894 +:1066D00070695809C08070785808C0506FBB0E9C14 +:1066E0005D19C0412FBDE3CD80E06F4CF01F000766 +:1066F0006F68EECAFFAC70796FBB0E9C5D19EF4CF2 +:106700000050CF1B800091D0800091E8EBCD4080FD +:106710001897580BC04078085868C0403018EF48A8 +:10672000006030686E4C8F08F01F001A6F18580810 +:10673000C2E0EEF800B05808C2216EA86F2C8F3866 +:10674000F01F00158F4CC0706F2A6F1BF01F0013D5 +:106750006F288F586FA8301A7029303B6F9C5D19D5 +:106760006FA86F9C7029300A305B5D196FA86F9C11 +:1067700070496EFA300B5D19E3CD8080310AEECBA3 +:10678000FF7CEECCFF6CF01F0005CD8B8F48CE9BBD +:10679000800091E880009200800091DCEBCD40FC0D +:1067A000201D79A81897169214931294799C700959 +:1067B0005D191896C2F06F685808C23070C8580842 +:1067C000C2000E9C1A9A6FBB5D181895C1A0400CB0 +:1067D0002FBC870CF01F0015C1D03028B892B888A4 +:1067E00030188699B8B9A9891897B8A9B8C80A9B6A +:1067F000400A2FBCF01F000E0E9C2FFDE3CD80FC45 +:106800005804C0416DCC580CC0A16DB86DA5580599 +:10681000C0A130070E9C2FFDE3CD80FC6DD81895EC +:106820005008CD6B5008CD4B80009200800091DC69 +:10683000D431209D3004F8C9FF7CF8C8FF6C18974C +:1068400050195008F8C0FFB808956FA8EF450060D0 +:10685000301B70196F9C5D19C0706FA8306B701978 +:106860006F9C5D19C2F16FA8306B70196F9C5D1938 +:10687000C140EEF800C45808C101EEF800C0E0487D +:106880000032E08A0025E0480033E080011C6F8878 +:106890005808C1003014CDAB6E085818F9B8010182 +:1068A000EFF81A18EF4500C030188F086F885808A5 +:1068B000CF216F7C580CE80C1700F9BC01012F7D2B +:1068C000D832301B0E9CF01F01EECE2B6E0958A95A +:1068D000FE9BFFDFFEF807ACF009032F30183029CC +:1068E000EF4800608F09CD4B300B0E9CF01F01E686 +:1068F000CCFB6E196EB81039C760300B0E9CF01FC0 +:1069000001E2CC6B6EA96E381039E0800137300B94 +:106910006E8E580EC1B06E685808C1806EAA6E396E +:10692000123AE08000BBEEF800B05808C0F0F2C8A0 +:10693000FFFFF1D8C008103AE08000B0F2C8FFFEB7 +:10694000F1D8C008103AE08000A96E2C582CC20083 +:106950006E985808E08001236E685828E080011F77 +:106960006EAA6E39123AE0800146EEF800B058087F +:10697000C0F0F2C8FFFFF1D8C008103AE080013B38 +:10698000F2C8FFFEF1D8C008103AE08001346E78FA +:1069900058085F1A3008F5EB0009F0091800E0818B +:1069A000010FEC1B0001F5EB0008F2081800E08075 +:1069B00001056EBB1699582BE080012A6E16580609 +:1069C000C071581BE080021B582BE08101630C3B17 +:1069D000E080014F0C995919C0F1580EC0416FE881 +:1069E0005808C0A0300B0E9CF01F01A8C51B6EEB11 +:1069F000580BFE90FF7C300B0E9CF01F01A5C48B42 +:106A00006FA8305B70196F9C5D19C7016FA8307B50 +:106A100070196F9C5D19C0506E685808FE91FF395F +:106A20006FA8300B70396F9C5D19C0516E68582883 +:106A3000FE90FF2F6FA8308B70196F9C5D19FE912F +:106A4000FF286FA8189B70396F9C5D19C0516E6844 +:106A50005828FE91FF1E6FA8307B70196F9C5D193E +:106A6000C0806E285828C0506E685808FE90FF11EC +:106A70006E185918E080025C5998FE91FF0AEEF8F2 +:106A800000805808FE90FF056E685808FE90FF01D0 +:106A90006E285848FE91FEFD300B0E9CF01F017DC4 +:106AA000CF7A6FA8306B70196F9C5D19FE90FEF164 +:106AB000EEFB00C4580BFE91FEEC0E9CF01F017023 +:106AC000CE7A3328EEFC00A4FEFA05CC1AD8302B7F +:106AD000F01F0172EEF800C0301B16080E9CEF4844 +:106AE00000C0F01F016F2FFDCD3A6FAA3038FACBEE +:106AF000FFE08F0830136F9CEF43006074595D19FD +:106B00008F95507C8F85EF4500788F758FA58FB559 +:106B10008FC58FD55F0A408B1896583B5F88104A07 +:106B2000EA0A1800C23119A919B8F1E910885068A9 +:106B3000103BC1C319988FA8EEF900B05809C09056 +:106B4000069C4019FACAFFE8FACBFFE4F01F015592 +:106B50000D893028F0091800E080011CE08B008DC1 +:106B60003018F0091800E0800123EEF800C02FF87B +:106B7000EF4800C0FE9FFE8D6E785808FE90FEC95B +:106B8000EEF800B05808C080310A400B401CF01FDE +:106B90000146FE91FEBE301BCBCA580EFE90FEF998 +:106BA0006E685808FE91FEF56E185918FE91FEDACF +:106BB000583CFE91FED7CECA6E19C0EB301830A9F2 +:106BC000EF4800608F096F1CF01F01386E485808AD +:106BD000C1A06E5CF01F0136EF4C0044FE90FE59E0 +:106BE0006E5A6E4BF01F01336E58EF480048FE9FFF +:106BF000FE50300B0E9CF01F012AFE9FFE4A30090A +:106C000050494048EF480044FE9FFE436F08580833 +:106C1000FE90FED6301830996FAA8F09EF480060B9 +:106C20007458FACBFFE86F9C5D1819A919B818962B +:106C3000F1E910885848E08B01476F1CF01F011BD9 +:106C4000305CEF450044EF4C00486EA6F01F011881 +:106C5000E08001853029B896B889EF18004AB8C994 +:106C6000B8B8A988B8A8EF4C0044FE9FFE12584C53 +:106C7000FE90FEB3CB8A3038F0091800E08000DCCB +:106C80003048F0091800FE91FF7230188F98C6EB5B +:106C900030181693EF48006030496FA8E04B00FEB3 +:106CA000EFF3000D8F096EC670096F9C5D19069A8F +:106CB0000C9BF01F0101E08100C36F1CF01F00FB63 +:106CC0006FA8EF4500446EA270096F9C5D19503C9F +:106CD000FACCFFE8F01F00F91893C9206EB8E0481D +:106CE00000FEE08101516FA8406670096F9C5D193C +:106CF00030C8505CA376EF480048ECCCFFECF01FA6 +:106D000000EC1891E080012E3FE9B892B8C9302913 +:106D1000B889F8C8FFFBB0A5B085B095F8C9FFF8F1 +:106D20003038B285B295B2A5B2B8504CF8C2FFF473 +:106D30000A96C298661A6ED81438C210405CF01FCA +:106D400000DE049AE4CBFFFC580CC1903FE814C865 +:106D50008689B4896608A988B4986609B4A907C861 +:106D6000B68886A9B6996618A988B6A86619B6B96C +:106D7000F6C2FFFC60082FF62F88810866F35803DF +:106D8000E0800099660B6EC81638CD50661ACD7B30 +:106D90006E185918FE91FEEB40685848FE98FEE7C1 +:106DA0003018EF4800780DC98FB9CE0A406A584AAA +:106DB000FE98FEDD30188F780DC98FB9E04900FECE +:106DC000FE91FED558BAFE98FED2ECC9FFFB139C8B +:106DD000138A13A8F1EA1108F1EC1088ECCBFFF844 +:106DE0008FC817AC17B81789179AF1E91188F1EA1B +:106DF0001108F1EC10888FD8CB9A6FA83089EF4B2F +:106E000000608F09FACBFFE0705A6F9C5D1AFEFAA2 +:106E100002AE302BEEFC00A4F01F00A06F1CF01F90 +:106E200000A30C99EF460044009A6EAB0E9CF01F35 +:106E300000A5C1AB30188F88FE9FFE990C9C069B65 +:106E4000F01F00A1FE90FF3B6FD85808C0906F6AFA +:106E5000580AC06074096EC81039E0800086FEFBD5 +:106E6000026A0E9C3006F01F009A6EB88F186F6C85 +:106E7000580CE08000CD5806C54078B86FBB0E9C1A +:106E80005D18EF4C006C6FB65806E08000CA6F6A60 +:106E90006ECB30188F287429FEFA02381AD91AD30B +:106EA0001ADB302BEEFC00A4F01F007C2FDDFE9FD0 +:106EB000FCF05806C4206F285C78A2B8A988A2A864 +:106EC000FE9FFEA1F0CC0004F0C20005F01F007888 +:106ED0001893FE90FEB45802C120ECCCFFFB300AA0 +:106EE00035DB1938F0C90021F6091800F9B80B5F35 +:106EF000E60A0B082FFA1432FE9BFFF53008E60273 +:106F00000B084F581AD34F5A1AD8302BEEFC00A456 +:106F1000F01F0062069CF01F00652FEDFE9FFE8FA4 +:106F200078380E9C5D18EF4C006CCAEB6FF858086F +:106F3000FE90FCAFFE9FFDAA04983FE910C9B0A6E1 +:106F4000B086B096E4C9FFFCB2B6B286B296B2A6DD +:106F50006F282F88EF480048CB0B0A9CFE9FFE85C8 +:106F60005045FE9FFE5074181033FE91FF7A7499BD +:106F70005809FE90FF766FBB0E9C5D19FE90FF7165 +:106F80003016C74B3058406CEF4800482FACF01F0C +:106F900000481896FE90FE35B89230283039B888EF +:106FA000B8C9504CF8C2FFFB50250A91C1A8661A17 +:106FB0006EB8103AC130403CF01F003FC0F0660888 +:106FC0005808C5A040285808C0913FE904C93018A6 +:106FD000502860082FF12FF8810866F35803C0602D +:106FE000660B580BCE50661ACE7B5801EFF8101284 +:106FF000E5F10E00EFF80012F7B800FFEFF80A1203 +:107000005C78ACB8A988ACA8FE9FFDFD069B6ECC51 +:10701000F01F002DEF4C0058FE90FE51C2DB6FA810 +:107020006F9C70095D196F6870291AD91AD36EC8E0 +:1070300018921AD8302B4AAAEEFC00A4F01F0017B1 +:10704000EF4600588F268F1658025F1B6EB92FDD52 +:1070500058D95F081668EC081800FE90FE30E4F876 +:1070600001605808FE91FC15E4F801685808FE908C +:10707000FE26FE9FFC0E661804C8CACB800265740B +:107080008003D7848002670C8002663C80026370B4 +:10709000800264808003D8A080023A1A800264E4EF +:1070A00080028D9C8000917C800091E8800092009D +:1070B000800091DC80023AD8800271E48003D8F02D +:1070C0008002679C800271908003D9248002634C07 +:1070D0008003D9708003D8D08003D3E48003D930F3 +:1070E000EBCD40801897580CC0E0488BF01F00088B +:1070F0000E9CF01F0008EEFC00ACF01F00070E9C79 +:10710000F01F0006E3CD80808003D9AC8002634C81 +:107110008002653C8002D298800091E8EBCD40F877 +:10712000203D1896169414931295E06C00C8F01F39 +:1071300000151897C1C033C8F946006499F8F9449E +:107140000068F94300A430CA300B1A9CF01F000EEF +:107150006A2850286A0950096A181A9C5018F01FAA +:10716000000BEF4C00AC1A961898C0500E9C2FDD07 +:10717000E3CD80F80E9C1097F01F0005CF8B000028 +:1071800080028F24800091D08002D2C4800091E8D8 +:10719000189948A8700C580CC051C0D878FC580CED +:1071A000C0A078081238CFB1781816385E0C78FC79 +:1071B000580CCF815EFD000000007AB01899489805 +:1071C000700C580CC051C0C878FC580CC09078089E +:1071D0001238CFB178181638CF81782C5EFC5EFD5E +:1071E00000007AB0189B4888700C580CC0A0189901 +:1071F000300A2FFA72F95809CFD1149897085EFC1B +:107200001898CFDB00007AB05EFDD703EBCD40E0ED +:1072100048D81896169570075807C051C0E86EF701 +:107220005807C0B06E2C0C9BF01F0008CF916E0861 +:107230008B086E1CE3CD80E030088B08109CE3CDFA +:1072400080E0000000007AB0800091A0EBCD40C04B +:1072500048B70E966E095809C0B072F88D08129C96 +:1072600072D85808C0705D186E095809CF71E3CD07 +:1072700080C0129CF01F0003CEEB000000007AB02B +:10728000800091E8EBCD40C048D66C485808C0312A +:10729000C0880E987057109CF01F000A5807CFA1A5 +:1072A0006C6CF01F000930086C3C8D68F01F000505 +:1072B0006C8CF01F0004E3CD80C0000000008C90B7 +:1072C000800091E880014544EBCD40F8495718967D +:1072D000169314946E2B12952FFB6E3CA56BF01F2A +:1072E0000012C1D06E28A568F80809066E29A569A4 +:1072F000F8090009932593146E2AF4081504F80878 +:10730000000891336E188F3C2FFA1036EFF69A0171 +:107310008F2A3018300C8FC8E3CD80F8E3CFC0F847 +:1073200000008C90800091F4EBCD404CE0634DD395 +:10733000EA1310621896F01F000DF8030648A7899B +:10734000E06A03E8F20A0248F8080109121CF20A8E +:10735000024AF80304428D1ABF5CA743E60C010CF5 +:107360008D0CE3CD804C0000800145C4EBCD408006 +:10737000202D4A076E495809C2C06E581039C29074 +:107380001A9CF01F001D6E484009700A1439C2444F +:107390007018401BF40901091618C276F00B141F6F +:1073A000E06A03E8F20A024AE0694DD3EA19106282 +:1073B000F0090448A7491619F20A000C580CE08A93 +:1073C000000E300948DA6E6BF01F000D6E488F58C2 +:1073D0002FEDE3CD80801439C030301CCF3B7018C6 +:1073E000401B103BCFB4CD7B2019F028BDC0CD7B16 +:1073F00000008C9080027328800275188001455827 +:10740000D43149A0189516931492604C580CC2B010 +:1074100030060C940C91785778480A38C09018962A +:107420000E9C5807CF91F01F0012089CD8325BF3D6 +:107430005F0A782906395F081448E2081800CF006F +:107440005BF25F0A783904395F081448E2081800D3 +:10745000CE705806E1F70A04EDF71A052FF4F01F75 +:107460000005CDFB1894CE0B00008C908002736C4D +:10747000800091E8EBCD40FC18961695149212947A +:107480001093318CF01F00211897C3A0F01F00202B +:107490006E0A6E1B0C0AEA0B000B8F0A8F1BEE5B49 +:1074A000423FE08A000B2FFAEE3B42408F0A8F1BCF +:1074B000EE5B423FFE99FFF98F248F338F423008F5 +:1074C0008F58494C78495809C1D072081438E0895E +:1074D000001A2F0CC0A8F2CCFFEC72595809C0A0BA +:1074E00072081438E0890007103ACF617218103B17 +:1074F000CF348F599907F01F0008E3CF80FCE3CF0A +:10750000C0FC2F0CCF7B000080009200800273280B +:1075100000008C908002736CEBCD40E0202D49661A +:107520001A9CF01F00166C475807C1F040096E08FE +:107530001238E089001B3005C05840096E08103928 +:10754000C1451039C0516E1940181238C0E56E5847 +:107550008D558D486E3B6E486E2C5D180E9CF01F4D +:1075600000086C475807CEA1F01F00062FEDE3CFAF +:1075700080E0000000008C9080027328800091E879 +:107580008002736CEBCD408049A76E3E580EC2B0AE +:107590006E2A580AC280E08A002B7C081838C27014 +:1075A000FCC9FFF0300BC05872082F091838C050C2 +:1075B0002FFB163AFE99FFFA143BC170201A163AB7 +:1075C000C0F0161AF60C1504A56AFC0C000C2FFB73 +:1075D000A56BFC0B000BF01F00086E2A201A301858 +:1075E0008F2A8FC8E3CD8080E3CD8080300BCE7BA7 +:1075F00000008C90800091C4EBCD406048861895C7 +:10760000334A300B0C9CF01F0007ECCCFFE88D05D3 +:10761000301BF01F0005E3CF8060000000008C905D +:10762000800091D0800144F80050F2010100000078 +:107630000000000000000000F6F800DC5808C05010 +:10764000F8F800F85808C0205EFDF6FB00D0580B93 +:10765000CFC076085808C04176185808CF602F8BE5 +:10766000CF9BD703EBCD4080300B1897F01F001352 +:10767000306A300BEECCFF64F01F0011306A300B23 +:10768000EECCFF5EF01F000E300BEEFC00E0F01FB2 +:10769000000D300BEEFC00E0F01F000BEEF800BC1C +:1076A0005828C030E3CD8080EEFC00E0300BF01FA6 +:1076B0000007E3CD80800000800217D0800091D0C9 +:1076C000800261E8800261D4800261A4EBCD408039 +:1076D0001897F8F800945808C160300BF94B0094E3 +:1076E000F8F800D470985808C040F8FC00C45D1841 +:1076F000486A302B0E9CF01F0006300A0E9C149B2B +:10770000F01F0004E3CD80808003D9D480023A1AB0 +:1077100080022584D431209D500C761558155F9831 +:107720007607169058075F1910693008F00918009D +:10773000E08000B8EEC4FFFF0989F2C6FFFE0C35F9 +:10774000E08500B010923DD33301C168E208180013 +:10775000C2800C0758155F9958075F181268E40833 +:107760001800E080009EEEC4FFFF0989F2C6FFFE0C +:107770000A36E08900960C150F88E6081800CE71CD +:10778000305AF4091800FE98FFE6EECCFFFE306A8E +:107790004DFBF01F0060C0B00F88E2081800CDA1BB +:1077A00009883019F2081800FE98FFD540080E9B92 +:1077B0000C9AF0FC00DCF01F00581897C711400A23 +:1077C000FACBFFFCF4FC00DCF01F0054C21540793A +:1077D0005809C1E040685808E0890007C19840682E +:1077E0001037C1644079EE0B1504F20B000B400911 +:1077F0003008F2FC00DC2FF71099109AF01F0048B7 +:10780000CEF14008301BF0FC00E0F01F004660465F +:10781000605558065F1958155F981069C760ECC429 +:10782000FFFF0989F2C7FFFE0E35C6F53003069249 +:107830000691C1A85802C0610D88330AF4081800E7 +:10784000C3A00E060E1558065F1858155F991268EA +:10785000E2081800C3F0ECC4FFFF0989F2C7FFFE7D +:107860000A37E08900385803CE610D883DDAF40804 +:107870001800CE113058F0091800FE98FFDD306A6C +:107880004A3BECCCFFFEF01F0023CD5140090E9A7D +:107890000C9BF2FC00DC3013F01F0023CCCB600704 +:1078A0005807CB604009300AF2FC00DC149BF01F43 +:1078B000001ACAEB09883019F2081800FE98FFC3B5 +:1078C00040080E9A0C9BF0FC00DC3012F01F0017F1 +:1078D000CB9B5803C0F05802C0B160485808C08024 +:1078E0004008049AF0FC00DC049BF01F00102F7D80 +:1078F000D83260465806CF004009300AF2FC00DC5E +:10790000149BF01F0009CE8B3002CF5B80027628DB +:107910008000917C8002B5EC8002C04C8002938094 +:10792000800255968002B58C8002B52CD431FACDF8 +:10793000009018911497586BE08B00C4FEF807482C +:10794000F00B032F580AC0A0F8F800907009739A42 +:10795000580AC0410E9BF01F01CD304B029CF01F16 +:1079600001CCE2F801185808E0810312FAC7FF942D +:10797000E2F800D470285808C4C00E9BE2FC00C492 +:107980005D18C475E2C6FF64306A0C9B0E9CF01F44 +:1079900001C1C3F0FB3800711AD8FB3900741AD941 +:1079A000FB3800771AD8FB39007A1AD9FB38007DEA +:1079B0001AD8FB390080FEFA06DE1AD9301B029C69 +:1079C000F01F01B6306A0E9B0C9CF01F01B5306AA7 +:1079D000300BE2CCFF5EF01F01B3E2FA00BC2FAD2A +:1079E000584A5F08590A5F091248C081588AE080E6 +:1079F000030C0E9B029CF01F01ACE2F80090704952 +:107A00005819E08102D5E2F800B05808E08002D0B1 +:107A1000FB3800711AD8FB3900741AD9FB3800778B +:107A20001AD8FB39007A1AD9FB38007D1AD8FB39ED +:107A30000080302B1AD9FEFA0672029CF01F0197C3 +:107A4000E2FB00B02FAD580BC040029CF01F019824 +:107A50000E9BE2FC00DCF01F0197622CF01F0196E8 +:107A6000300BE2FC00E0F01F0195300BE2FC00E07F +:107A7000F01F0193E2F800BC5828C061300BE2FC13 +:107A800000E0F01F0190301BE2FC00E0F01F018BD2 +:107A9000300BE34B00F4E2F900BC59095F0A584986 +:107AA0005F081448F6081800E0800216029CF01FD8 +:107AB0000186307B029CF01F0176029CF01F01833F +:107AC0002DCDD832580ACFD0149B7439F8FC00DC85 +:107AD000742AF01F017F2DCDD832F8FB00BC590B62 +:107AE000CF00F8F800E85858E08002355838E08BAD +:107AF0000234E2C7FF64306AFEFB05D80E9C2F8B70 +:107B0000F01F0164EE0B1710E06800A2E3D8E00B51 +:107B1000029CF01F0171E2FC00DCF01F0170FEFA14 +:107B200005BE302B029CF01F015DE2FA00BC584AF2 +:107B30005F08590A5F091248C0B1588AE08002976D +:107B400030080E9BE3480104029CF01F0157029C81 +:107B5000F01F01642DCDD832FEFA058C303BF01FAA +:107B6000014F5807E08002806E0858085F1B169A84 +:107B7000E2FC00DC301BF01F015DFACCFF94F01F2B +:107B8000015CE2F800985808E08001D541B9F2089C +:107B90000108E048003CE08A01A6E34900982DCDA9 +:107BA000D832F01F0154E08501EBE2F900907248F1 +:107BB0005828C870E2F800AC5808C831E2FA00CC86 +:107BC0001094500AE2F000D072285808E08A00A908 +:107BD000300850187218401AF00A032850585800FC +:107BE000E08A0097400530020A96C11808973003D2 +:107BF00030142FF2ECC6FF6404305F983009E9E8D6 +:107C00000008F2081800E08000970E940C9B029C7C +:107C10000C93F01F0139C05078385818FE99FFE8CE +:107C20006D585808C051ECF800805808CE004059F3 +:107C30005809CDD0ECC8FFFAECCAFFA8ECC9FFD4B4 +:107C40005048502A50394057C0486E175807CCF05A +:107C5000EEF801945808CFA16CAA6E58103ACF6183 +:107C60006E4B404CF01F010BCF116E885808E0811D +:107C700000E16F6AEDBA0001C061ECFB0080580BB7 +:107C8000E08100E3F1DAC001300AF4081800CDE029 +:107C90006D5B580BCDB0FACAFF94403CF01F011742 +:107CA000CD516F6841B91268CD106F3841C9126863 +:107CB000CCD06F4841D91268CC906F5841E9126816 +:107CC000CC5058065F04C96B149BF01F00F02DCDFB +:107CD000D832149B2EACF01F010A1896FE91FEF2CA +:107CE0006F9B580BE080012A581BFE91FEEBE34B83 +:107CF00000D8029CF01F00FB622CF01F01028326BB +:107D0000CE0A5803E08100BF0E94E2F900904018BB +:107D10002FF850187228401A103AFE95FF5DE2F8CD +:107D200001085808E0800121029CF01F00F7E2F9E9 +:107D30000090C4BB5804CE600E923006C108049770 +:107D4000089930032FF6EAC5FF640C305F98F3E81A +:107D500000083009F2081800CD500E920A9B029CD0 +:107D60000A93F01F00E5C05078385818FE99FFE9D3 +:107D700040585808CE50EACAFFFA4057506AC078B7 +:107D80006AA8103AC5006E175807CDA0EEF8019406 +:107D90005808CFA16E5A580ACF416E885808C1E1E1 +:107DA0006F5BEDBB0002C040EDBB0003CED1F1DB49 +:107DB000C002C0806B585808CE71EAF8008058089D +:107DC000CE31EEF8014C5808C110EB190088EDB91E +:107DD0000001CDA058055F09CB6B306AEECBFFE800 +:107DE0000A9CF01F00ACCD01CDCB1099EEC8FECCA3 +:107DF0002FF9700A580AC2612FC85849CFA1EDBBAC +:107E00000003C071EEF800F0F1D8C002F9BA010128 +:107E1000EB190088EDB90004C030580A5F0A580A0F +:107E2000CB30CD6B6E4B406CF01F009ACAD1CB6B40 +:107E3000306AEECBFFE80C9CF01F0096FE91FF0726 +:107E4000C19B301ACDDBFACAFF94402CF01F00AB67 +:107E5000C0306F6AC18B6F6A41B8F5E80008FE90C8 +:107E6000FF136F3841C91268FE90FF0E6F4841D969 +:107E70001268FE90FF096F5841E91268FE90FF04F6 +:107E8000C21BE2F800A85808C131306AE2CBFF6497 +:107E9000069CF01F0080C170E2F800E85838C081ED +:107EA000306AE2CBFF5E069CF01F007AC0C00E9BDA +:107EB000029CF01F007FE08100B50E9A069B029C99 +:107EC000F01F0092009A400BE2FC00DCF01F0090D3 +:107ED000FE9FFDF8169A029C30ABF01F008EFE9FAD +:107EE000FDEE3017FEFA0230303B029CE34700946F +:107EF000F01F006AE06B2710300CF01F0088E2F8DA +:107F000000D470985808C0500E9BE2FC00C45D1865 +:107F100030EB029CF01F0082300A029BFEFC020440 +:107F2000F01F0081300802994FEA109B33CCF01FFC +:107F3000007F41B9FE9FFE33E2F800D85808FE905A +:107F4000FDC1E34B00D8029C301BF01F0079FE9F5F +:107F5000FDB9582BC780E07A86A0300B029CF01F39 +:107F60000075FE9FFDC8305BE2F801105818C7206D +:107F7000029C300AF01F006FFE9FFDA4E2F9009002 +:107F800072485828FE90FD9E301BCEFBFAC7FF9426 +:107F9000E2C6FF64306A0C9B0E9CF01F0041E2F8C1 +:107FA00001185808FE91FCF8FE9FFCE4029CF01FAB +:107FB00000621896C230F8FB0194580BC1F1795851 +:107FC000E2180013C351189B029CF01F005CE2F8FA +:107FD00000B05808C0701036C050E2FC00E0F01F3E +:107FE0000058E2FC00DC0C9BE34600B0F01F00559B +:107FF000029CF01F0055FE9FFD0D029C303BF01FC0 +:108000000053FE9FFD5FE2F800B05808FE90FCF3BD +:10801000F0F800F0F1D8C002FE91FCEDFE9FFCEFFD +:10802000029C300A30ABF01F0043FE9FFD4B350928 +:10803000FAC8FF70189A10D9029CFAC9FFE4F01F21 +:108040000044CC6B4C3AF01F0015E2F800E8FE9FAC +:10805000FD4F72485818F9B80002E3F80A44F9BB1A +:108060000000C87B0E9BFE9FFD84E2F800B058081C +:10807000FE90FD68F0F800F0F1D8C002FE91FD62BC +:10808000FE9FFD678003D9B880027714800217D065 +:108090008000917C8003D9F880023A1A800091DC3C +:1080A000800091D0800226948003DA3880027638EE +:1080B0008002BA4C80028172800261E8800261D441 +:1080C000800261A480021CE080021DB88002979C9F +:1080D0008002762880021AE08002BA1C8003DAA8A7 +:1080E000800276648003DAE48002D19C80028F549F +:1080F00080021E84800218F88002BD68800091A072 +:10810000800281748002189C800230DC800298A476 +:108110008002246C8003DB0480028F1C800228D83C +:10812000800276CC800274008002747480022794EE +:10813000800225848002195C800222A480025748B4 +:108140008002B9D48002237080022FCC80021F30BD +:108150008003DA68580C5E0E5E1DD401201D3008C5 +:10816000767C3009BA881A9A7668129B5D182FFDC2 +:10817000D8025EFCEBCD40801897580CC090789CDC +:10818000580CC035F01F00040E9CF01F0004E3CD16 +:108190008080000080027584800091E8EBCD40F87B +:1081A0001896129510944063328CF01F000B1897AC +:1081B000C0F00C9B311AF01F00093FFC8F658F74D3 +:1081C0008F838F9C30090E9A485BF01F00060E9C2F +:1081D000E3CD80F880028F24800091AC8002815A28 +:1081E000800272C8D4011698306AF8CBFFEF109C59 +:1081F000F01F0002D80A0000800091DCD431213D3C +:1082000076FE511E760A503A761950497628505813 +:10821000763E506E764A507A7669508976785098D4 +:10822000768E50AE769A50BA76B950D976C850E864 +:1082300076DE189850FEF8C9FFF876EA510A7654AF +:1082400076AB500C5019E02BA44F50CB110EF8CB4D +:10825000FFF45008512E403A700340487205502BED +:10826000E069A478EA19D76AFC0900091409760ABA +:10827000E06BB756EA1BE8C7F40B000B100BF5E5F3 +:108280002008066814581009E06870DBEA182420FA +:10829000EBE3200AF20E1507FDE9139E060EFDEA38 +:1082A000000A0A5A1005140BFDE32008F606150C07 +:1082B000EDEB13461C06EDE800080658405AE0694D +:1082C000CEEEEA19C1BD14051005EDEE2008EA0B4B +:1082D0001511F7E512FB0C0BF7E800081C58120308 +:1082E0004069120310034078E6051516E0690FAFE8 +:1082F000EA19F57CEBE312A5F00900091605F7E68B +:108300002008EBE800080C581C091009EBEB2008CA +:10831000F2031507E7E913930A03E7E80008165884 +:10832000E06AC62AEA1A4787E80A000A0C0A100A15 +:10833000E7E52008F402150CE5EA13420602E5E839 +:1083400000080A58408EE0694613EA19A830FC0973 +:10835000000916091009E5E32008F2061511EDE9F8 +:1083600012F60406EDE800080658409AE06B950105 +:10837000EA1BFD46F40B000B0A0B100B40A840C98A +:10838000F60E1516FE395BB1FDEB12AEE06A98D819 +:10839000EA1A69800C0E40BBF00A000AEDE22008E0 +:1083A000FDE80008045840C1060A50C9100AE069F7 +:1083B000F7AFEA198B44FDE62008F6090009F40B33 +:1083C0001507F7EA139B1C0BF7E800080C58F7EEAB +:1083D000200A0C0104091009F206150CEDE91346F8 +:1083E0001606EDEB2008EDEA000A1C5A1401E2051E +:1083F0001511EBE112F50C05EBE80008165840DA10 +:10840000E069D7BEEA19895CF40900091C09100962 +:1084100040E8F20E1516E06A1122EA1A6B90FDE9A7 +:1084200012AEF00A000A0A0EEBE62008160AFDE872 +:10843000000840FB0C58E0697193EA19FD98100A96 +:10844000F6090009FDE52008F40B1507F7EA139B70 +:108450001C0BF7E800080A580C0910094108F2063D +:10846000150CE06A438EEA1AA679EDE91346F00A84 +:10847000000A1606F7EE2008EDE800081C580A0A64 +:10848000100A4118F4051511E0690821EA1949B4E8 +:10849000EBEA12F5F00900090C05EDEB2008EBE81A +:1084A000000816581C091009F2031516E7E912A373 +:1084B0000A03E7E520080C680A58404EE06A256286 +:1084C000EA1AF61EFC0A000A160A408B100A40D867 +:1084D000F40E1505E069B340EA19C040FDEA13BE89 +:1084E000F6090009060E403B0C09E0665A51EA16EF +:1084F000265EF0060006FDE320080A68065810090B +:10850000E062C7AAEA12E9B6F6020002F20B150908 +:10851000F7E9137B41191C0BF7EE200806681C587D +:108520000A0606021006E063E681EA13D8A1F20308 +:108530000003EC09150EF3E613291609F3EB2008E6 +:108540001C68165840CA10024078E065105DEA15B4 +:10855000D62FE0611453EA110244E8050005F40146 +:1085600000011C051601E40A1514E06EFBC8EA1EA2 +:10857000E7D3F5E212CAF00E000E120AF5E9200860 +:10858000166840BB125812031005E066CDE6EA16E5 +:1085900021E1F6060006EA0B1505F7E513BB140BFF +:1085A000F7EA2008126841091458E06507D6EA1571 +:1085B000C3371001F2050005E2091509F3E113794B +:1085C0001609F3EB20081468165810034068140EBF +:1085D0001606E60A150EE0620D87EA12F4D5F5E3F9 +:1085E000132AF0020002120AF5E92008166840ABCF +:1085F00012581205100EE06314EDEA13455AF60303 +:108600000003FC0B1514F7EE12CB140BF7EA20084D +:10861000126840F91458E061E905EA11A9E310066F +:10862000F2010001EC091505F3E613B91609F3EBA5 +:10863000200814681658100540581402E066A3F884 +:10864000EA16FCEFEA0A1509F0060006F5E5137ACA +:10865000120AF5E9200816681258409E1002160307 +:10866000E40B150EF7E2132B140BF7EA200812683F +:108670001458E06502D9EA15676F1003FC05000580 +:10868000E60E1514FDE312CE160EFDEB200814685D +:1086900016581201100140A840E91406E060F68166 +:1086A000EA108771E20A1505F0000000F5E113BA3F +:1086B0001C0AF5EE200816681C58E0624C8AEA1283 +:1086C0008D2A1006F2020002EC091509F3E613796F +:1086D0001409F3EA20081C681458160540DB10053D +:1086E0004108E434C6BEE0616122EA116D9DE80AEA +:1086F0000007F6010001E066380CEA16FDE5F00619 +:108700000006EA08150EF1E513281208F1E9200B1E +:10871000F7EA000A125A1C021402407A404E120074 +:108720001001E063CFA9EA134BDEF4030003E40A6F +:108730001514F5E212CA100AF5EB200BF5E8200833 +:10874000EE0B000BF6091504F3EB13C914091258CC +:1087500014061000F3EA200AE065EA44EA15A4BE14 +:10876000E008150BFC050005F1E01358120512088E +:10877000105A10031401F1E92009E20B1510F7E17A +:10878000130B100B1659F7E820081206EC0E1517FC +:10879000FDE6129E160E1C5810054098FDEB200AAF +:1087A000EA061504E0694B60EA19F6BBEDE513C66D +:1087B000F00900091C0616090C5AEDEE20081403F6 +:1087C00040CBE605150BEBE313550C050A58E06AA0 +:1087D000BC70EA1ABEBF1009F60A000AEBE62008D0 +:1087E000F20B1510F7E9130B0A0B16581C0A100AA6 +:1087F00040F8F40E1517E0697EC6EA19289BFDEAD9 +:10880000129EF0090009160EF7E520081C580C0905 +:1088100010094038F2061504E06A27FAEA1AEAA1BC +:10882000EDE913C6F00A000A1C06FDEB20080C58FF +:108830000A0A100A4068F405150BE0693085EA1948 +:10884000D4EFEBEA1355F00900090C05EDEE200812 +:1088500016090A58408B1009E06A1D05EA1A0488B7 +:10886000EBE62008F60A000AF20B1510F7E9130BE5 +:108870000A0B16581C0A100A40B8F40E1517E069C6 +:10888000D039EA19D9D4FDEA129EF0090009160E72 +:10889000F7E520081C580C09100940E8F2061504F9 +:1088A000E06A99E5EA1AE6DBEDE913C6F00A000A88 +:1088B0001C06FDEB20080C580A0A100A4118F405A2 +:1088C000150BE0697CF8EA191FA2EBEA1355F009D1 +:1088D00000090C05EDEE200816090A58405B100946 +:1088E000E06A5665EA1AC4ACEBE62008F60A000A0C +:1088F000F20B15101C0AF7E9130BE0692244EA1980 +:10890000F4290A0B1658100A4032F40E15171202F9 +:10891000FDEA129EEA0811FF160E409AFDE81008C3 +:10892000E069FF97EA19432A1658F40900090A0971 +:108930000C0241061002F60811FFE40A1506F5E2E2 +:1089400013AA1C0AF5E810081C58F2080005E06993 +:1089500023A7EA19AB941206FC0811FFEC0B000BDD +:10896000EA06150AEDE513661406EDE8100814583A +:10897000F6080008E069A039EA19FC93F00B150F1E +:10898000FA243942F7E8131BE80900050C0BEA0E3C +:10899000000EF40811FFF7E810080C58E06959C3FD +:1089A000EA19655BFC08000540E2EA0E15151202A3 +:1089B000FDE512BEEC0811FF160EFDE81008165872 +:1089C000E40A000AE069CC92EA198F0CF40800026C +:1089D0004068F00900090C09E40A1506F60811FFC1 +:1089E000F5E213AA1C0AF5E810081C58F208000268 +:1089F000E069F47DEA19FFEF40C1FC0811FF1201A4 +:108A0000E406150AE20B000BE0695DD1EA198584E2 +:108A1000EDE213661406EDE8100814584045F60818 +:108A200000011205E20B150FEA0E000EF7E1131B11 +:108A3000F40811FF0C0BE0697E4FEA196FA8F7E804 +:108A4000100840A30C581203E60A000AFC080005AF +:108A5000EC0811FFEA0E1515FDE512BE160EFDE835 +:108A600010081658F4080003411AF60811FFE069CF +:108A7000E6E0EA19FE2CF4090009E60A15060C09DD +:108A8000F5E313AA1C0AF5E810081C58F2080003C5 +:108A90004088E0694314EA19A301F00900091609A6 +:108AA000FC0811FF40FBE605150AEBE3136514050E +:108AB000EBE810081458F2080008E06911A1EA195F +:108AC0004E08F6090009F20E000EF006150FE069D7 +:108AD0007E82EA19F753EDE81316F40811FF0A062F +:108AE000EDE810080A58FC080001407E120EEA0862 +:108AF00011FFFC0A000AE20E1515FDE112BE0C0E74 +:108B0000FDE810080C58F40800094128F20A15067F +:108B1000F5E913AA1C0AF4080009E068F235EA181E +:108B2000BD3A990940D91009EC0811FFF205000B74 +:108B3000F5E8100840091C58720CF6080001E069BD +:108B4000D2BBEA192AD740581208E20B150AF006E0 +:108B50000009F7E1136BFC0811FF140BF7E810088C +:108B60001458F208000640B8E069D391EA19EB8680 +:108B7000F0090009F20E0008F40A11FF400EEC099A +:108B8000150FF3E613191609F20C000CF3EA100A9C +:108B9000165AF00A0006EC081515F1E612B8100C8A +:108BA0009D0C401A7408120895084028700916098F +:108BB00091092EDDD832D703EBCD40E03809764855 +:108BC000F1D8C066F608000AF56900181895F00A91 +:108BD000113F1697F6080008F0CCFFE7587AE08BB3 +:108BE0000056300BF01F002DEEC6FFE8EECCFFA8BC +:108BF0000C9B1798178917BAF3E8108917A8F1EAA0 +:108C00001088F3E8110916A9183BCF410C9B0E9C64 +:108C1000F01F0023338A300B0C9CF01F00200C9BAC +:108C2000ECCCFFC81798178917BAF3E8108917A872 +:108C3000F1EA1088F3E8110916A9183BCF416E48F4 +:108C40006E590C9B0E9CEF480050EF490054F01FEA +:108C500000140E9BEECCFFF01798178917BAF3E8B3 +:108C6000108917A8F1EA1088F3E8110916A9183B32 +:108C7000CF410E9B0A9C310AF01F000A0E9C304A1D +:108C8000300BF01F0006E3CD80E0208A300BEEC6EB +:108C9000FFE8F01F0002CC4B800091D0800281FCE5 +:108CA000800091DCEBCD40FC1493784AF40300384B +:108CB000103AF9F98005F9F9B005F7B90BFFF9F9A0 +:108CC000BA059948E608161DF20800089958189444 +:108CD0001692F1DAC066C381F8C5FFE8E043003FB1 +:108CE000E088002C3006EAC7FFC0E406000B340A17 +:108CF0000A9CF01F00290A9B1798178917BAF3E8F6 +:108D0000108917A8F1EA1088F3E8110916A90E3B9B +:108D1000CF410A9B089CF01F00212C06E6060108A3 +:108D2000E048003FFE9BFFE3E6C80040E7D8C006EE +:108D3000E018FFC02C081002069A049B0A9CF01F42 +:108D40000016E3CD80FCF00711402E88100C0E3386 +:108D5000C1D30E9AF01F0010E8C5FFE8E8CCFFA8C9 +:108D60000A9B1798178917BAF3E8108917A8F1EA30 +:108D70001088F3E8110916A9183BCF410E130E0213 +:108D80000A9B089CF01F0005CAAB069AF01F000260 +:108D9000E3CD80FC800091DC800281FCEBCD40FCC7 +:108DA000216DE0682301EA186745E06EAB89EA1E91 +:108DB000EFCD30075008501EE068DCFEEA1898BA84 +:108DC000E06E5476EA1E1032504750575028503EFD +:108DD00018931292580CC140149416951A962FF7B6 +:108DE000090A0B0B1A9CF01F00080E33FE9BFFF9BB +:108DF0001A9B049CF01F00052EADE3CD80FC1A9653 +:108E0000CF8B000080028CA480028BB8D431FACDC5 +:108E10000088501C500B14931292109142B0585A73 +:108E2000E08B0056E04B0040E08B0054FAC4FFF8A2 +:108E3000340A300B089CF01F002E400A401B089C8F +:108E40000896F01F002CFAC5FFB808970D88EC189B +:108E500000360CC80A36CFB1340851845128580363 +:108E6000C110FACCFF9CFACBFFB4300AE60E150213 +:108E7000E40A030818A8E20A030916A92FCA1C3A33 +:108E8000CF81E6CCFFFF00990A9AFAC3FFA0069BA8 +:108E9000F01F0019340A300B089CF01F0015400A1F +:108EA000401B089CF01F00130F88EC18005C0EC8D4 +:108EB0000C37CFB1310C3408513C5184519000999A +:108EC0000A9A069B5128302CF01F000B2DEDD8324A +:108ED000FAC6FF881A9A0C99FACBFFFC301CF01FD7 +:108EE0000006310850165008CA2B0000800091D0AF +:108EF000800091DC80028D9CD401202D501A5009F5 +:108F0000301A1AD8FAC9FFF8FAC8FFFCF01F00039C +:108F10002FFD2FEDD802000080028E0C5EFC5EFE5D +:108F20005EFCD703EBCD40C01896F01F00061897E3 +:108F3000C0500C9A300BF01F00040E9CE3CD80C093 +:108F400080009200800091D0D401F01F0002D80A66 +:108F500080014600D401F8CBFFFCF01F0002D80AC4 +:108F6000800145D4780C580C5E0C3008F948004C50 +:108F7000780C580CCFC15EFC580CF9FC10435EFC19 +:108F8000580CF9B80100F9F81A435EFCEBCD40E04B +:108F9000189716961495314CF01F0005F9F71A032F +:108FA000F9F61A04F9F51A02E3CD80E080028F2465 +:108FB000EBCD40E01696149578075807C160580627 +:108FC000C080306A0C9BEECCFFC0F01F000AC0A12D +:108FD0005805C0B0EECCFFFC310A0A9BF01F00051B +:108FE000C0406E075807CEC10E9CE3CD80E0000064 +:108FF0008000917CEBCD4040781820181696991887 +:10900000784B78390C9C5D190C9CF01F0003E3CD64 +:1090100080400000800091E8EBCD4080202D300A98 +:109020001897189B49BCF01F001C300A0E9B49BCC6 +:10903000F01F00196E085808C2201A9CF01F001873 +:109040006E08400A70EC0E993008141C109BF8084A +:109050000C4C490A2FFCF01F00136E2BF6FA010C82 +:10906000580AC1006E08400A712C0E99141C300871 +:1090700048AAF8080C4C109BF01F000A2FEDE3CD16 +:109080008080F6CBFEB80E9CF01F0007CF80CEBBD1 +:10909000800290E4800274008002913080028F543C +:1090A0008002747480028FB0EBCD40C01896580CCB +:1090B000C1407809300899085809C031C0880E9914 +:1090C0007207129CF01F00065807CFA10C9CF01FDE +:1090D00000050C9CF01F0002E3CD80C0800091E8E9 +:1090E00080029018EBCD4080202D18971A9CF01F1D +:1090F000000E6E0A580AC0C1C1087408149B8F087C +:10910000300A0E9CF01F00096E0A580AC06074E90C +:1091100040081039FE9AFFF30E9CF01F00052FED5A +:10912000E3CD808080028F5480028FF480029018FB +:10913000D4013008782AF548010C7829F2FC0104A2 +:10914000F01F0002D8020000800255ACD43120CDBF +:109150001096782814941293E04A00205FBAF0F930 +:109160000160189758295F18169241511448C05051 +:1091700030060C9C2F4DD832354CF01F00621890F1 +:10918000CF80089A049B2ECCF01F005F81D4FAC9CF +:10919000FFE450965083FAC5FFF84DC81AD5303A0F +:1091A000089B049C4DA65086F01F005AE0C8FFFCA7 +:1091B0000A9B5018310A109CF01F0053FACCFFD4C0 +:1091C000F01F0055E0C8FFC0502840BC6E29F2F8DF +:1091D0000150F808000881E86E2AF4FB0150F4F908 +:1091E0000154E06A851FEA1A51EBB739F20A0648C2 +:1091F000301AA599180981FAE1490048306A402CD3 +:10920000069BF01F0041E141004C2FFD6E06580601 +:10921000C2903005C0680C956C0C580CC58018962F +:10922000ECCBFFC0306A069CF01F003CCF516CD8DD +:109230000838C5505805EDF80000EFF80A00EDF8C1 +:109240001000EBF81A006E29F2F8010C0C38F9B88E +:109250000000F3F80A430C9B301A0E9CF01F0030FC +:109260006E066E1859F8E08A00155806C3200C9A4D +:1092700015088F086E28F0F90128ECCBFFC0720C9E +:1092800072F85D180C9B300A0E9CF01F00256E06CC +:109290005806C1F060EA6CE8103AC074C1A872E8E0 +:1092A0001438E089000612966C095809CF9181099B +:1092B0008D006E2C6E18400A401B2FF88F18F8F99D +:1092C00001280096720C72E85D18C54B6E06CCAB97 +:1092D00081068F000E9CF01F0013CECB089A049BD2 +:1092E000ECCCFFECF01F000DCA61310A400BECCC56 +:1092F000FFFCF01F000AC9F1009CF01F000BC3AB7C +:1093000080028F24800091DC8003DB248003DB9CBF +:109310008002B14480028F548000917C80028FF4DF +:1093200080029018800091E8EBCD4080189E78076D +:10933000580BC06116970E9CE3CD80806E075807CE +:10934000CFB06F381638CFB11AD814997C286EDA9E +:10935000F0C8FEC8EECBFFEC1C9CF01F00092FFDEF +:10936000580CF8071700EFF8100EF9F81A0EF80766 +:109370001710F9B80101F9F81A14CDEB8002914CDD +:10938000EBCD40FC1897300CEF4C010C1496129268 +:109390001094EEF50108580BC080169A189B0A9C91 +:1093A000F01F0016EF4C010C58065F13EEFC010C89 +:1093B000580C5F09F3E30008C16158045F18F3E833 +:1093C0000008C0A05803C0800C9A049B0A9CF01FA0 +:1093D000000CEF4C010C580CF9BC00FFF9BC01006B +:1093E000E3CD80FC300A0C9B0A9CF01F00045F094F +:1093F000EF4C010CCE3B000080028FB0800293281E +:109400000000000000000000EBCD4080580CC100BF +:10941000F8F901103008F94801105809C031C08826 +:109420000E997207129CF01F00045807CFA1E3CDDC +:1094300080800000800091E8EBCD40C01897580C68 +:10944000C250F8F801245808C210189B300A491C71 +:10945000F01F0011EEFC0124F01F00103006306AEE +:109460000C9BEF460124EECCFEE4F01F000DEEFC59 +:109470000114F01F000CEF460114EEFC0118580C0B +:10948000C050F01F0008EF460118E3CD80C0000077 +:109490008002996880027400800256EC800091D0AE +:1094A00080028174EBCD40F8205D189716951494D6 +:1094B000F8F601245806C0503FFC2FBDE3CD80F8DC +:1094C000F8FA012817D81AD817C91AD917B81AD80C +:1094D00017A91AD917981AD81789301B1AD9740CDA +:1094E0004C6AF01F0047EEC3FEC81AD60E984C59BE +:1094F000E06A88C7069BEEFC0140F01F0043EF4C7A +:1095000001142F9D580CC6F0EEFC0144580CC0E02D +:109510001AD6069B0E984BB9E06A88C7F01F003A2E +:10952000EF4C01182FFD580CC5E0340CF01F00372C +:109530001896C5B0EEF8012870099909EEF80128CF +:109540003019700A4B2899199928994A99374B185C +:10955000EEF9012C998899599967EEF8012871095B +:1095600099A9EEF80128711999B9F01F002BEF4C59 +:109570000124C3D0314A300B1A9CF01F0028EEF9A9 +:1095800001305804E9F8105FFBF81A03300650293F +:109590001A9A089B50165006EEFC0124F01F00207A +:1095A000306830593FFAEEFC0124149BF01F001D77 +:1095B000306A0A9BEECCFEE4F01F001B301BEEFC71 +:1095C0000124F01F001A301BEEFC0124F01F0018CC +:1095D0000C980E99497A0C9BEEFC0158F01F00166E +:1095E0000C9CC6CB3FECC6AB3FCCC68B0C9CF01F93 +:1095F00000133FDCC63B00008003DBA880023A1A60 +:1096000080029AF08002819C80028F2480029A243A +:10961000800299C48002609C800091D08002581C16 +:1096200080025564800091DC800261D4800261E890 +:109630008002996880027474800091E8EBCD40FC50 +:109640001897F8F801105808C6F0F8F801284CAA45 +:10965000700C301BF01F0049EEF801245808C0A020 +:10966000EEF801284C6A700C301BF01F0044E3CD6B +:1096700080FCEEF801605828CF41EEF80128700C0C +:1096800070295D19587CCED1EEF8016C5818CE9136 +:10969000EEF501105805C410EEC2FEB8EAC3FFFC97 +:1096A000300A069BEEFC0108F01F0036306A189461 +:1096B000069B049CF01F0034C0605804C3706948C6 +:1096C0005808C341EB3800091AD8EB3800081AD8FB +:1096D0000BF81AD80BE8EEF601281AD80BD91AD9CC +:1096E0000BC84AAA1AD8301B6C0CF01F00242FADEF +:1096F0005804C090EEF90128E8CAFFFC069B720CE2 +:1097000072E85D186A080A9CEF480110F01F0020FB +:10971000EEF501105805CC31EEF8012849DA700C4D +:10972000301BF01F0016E3CD80FCEB3800091AD87F +:10973000EB380008EEF601281AD80BF81AD80BE817 +:109740001AD80BD91AD90BC8493A1AD8301B6C0C45 +:10975000F01F000A6A08069BEEFA0134EF48011078 +:109760000E9CF01F000E0A9CF01F00092FADE3CDE8 +:1097700080FC00008003DBEC80023A1A8003DC14DA +:1097800080028FB08000917C8003DCA0800091E893 +:109790008003DCFC8003DC4C800294A4EBCD40F819 +:1097A0001695189414931297F8FB0134580BC05077 +:1097B000F6F801485808C5D15807C4C0E8F60110AA +:1097C0005806C4A03007C0680C976C0C580CC440F5 +:1097D0001896306A0A9BECCCFFFCF01F002CCF518E +:1097E0005807EDF81000EFF81A00EDF80000E9F85E +:1097F0000A44E04303E7E08A003BE8FA0110580A14 +:10980000C4006C3B74381638C065C3B8723816385B +:10981000C054129A74095809CFA18D0995061AD31C +:109820000BD80B8CE8F601281AD80BC91AD90BB83B +:109830001AD80BA91AD90B98495A1AD8301B1ADC16 +:109840006C0CF01F0014089CF01F00132F9DE3CD3B +:1098500080F8E3CD80F8310CF01F00101896C0F0AE +:10986000306A0A9BECCCFFFCF01F000D8D33CC6BF3 +:109870000A9AF8FC0108F01F000BC9FBE3CD80F841 +:109880008D0AE9460110CCCB8000917C8003DD2459 +:1098900080023A1A8002963C80028F24800091DC7C +:1098A00080029328EBCD40F8208D169414971895DC +:1098B000F8F801345808C470F01F0027EEC6000104 +:1098C000C426E068009C1A93EC080248E8080007E8 +:1098D000EAC4FEB8C0682016EEC7009C5806C3351F +:1098E000EAF901346EAA7258103ACF61724BEECC8D +:1098F000FFFAF01F001ACF01306A089B0E9CF01F80 +:109900000017CEA0EEFB0080580BCE601A9AEECC6A +:10991000FFA8F01F0013CE01189A0E9BEAFC010865 +:10992000F01F0010C13079485808CD604048EDB8AC +:109930000000CD213019E06A03E80E9B0A9CF01F5D +:10994000000ACCAB2F8DE3CD80F84048F3D8C0019E +:10995000CF3B0000800294088000917C8002BD68AB +:1099600080028FB08002979CEBCD4060F9380121D6 +:10997000F8F501281AD8F93901201AD9F938011F48 +:109980001AD8F939011E1AD9F938011D1AD8F9392E +:10999000011C489A1AD9302B18966A0CF01F000740 +:1099A0000C9CF01F00070C9CF01F00062FADE3CDB0 +:1099B000806000008003DD6C80023A1A80029438D7 +:1099C0008002963CEBCD40E0201D1897F8F801147A +:1099D0005808C0613FF60C9C2FFDE3CD80E0F8F8FD +:1099E0000128300C5C791ADC5C5B700C70D6FAC80C +:1099F000FFFC5D162FFD1895580CCED01899400825 +:109A0000E06A88C7EECBFEE4EEFC0114F01F000410 +:109A100018960A9CF01F0003CDFB000080028154C1 +:109A2000800091E8EBCD40E0208D14971896580BFC +:109A3000C2614A781AD8EEF60128EF3801211AD807 +:109A4000EF3901201AD9EF38011F1AD8EF39011E5A +:109A50001AD9EF38011D1AD8EF39011C49DA1AD981 +:109A6000302B6C0CF01F001C0E9CF01F001C0E9C79 +:109A7000F01F001B2F9D2F8DE3CD80E01A95320A39 +:109A80001A9BF01F0018C1211A9B320AEEF801340C +:109A90008F8A1AD8EEC9FEE4EEC8FEC8EEFC0108B3 +:109AA000F01F001149182FFDCC6B0C9C310A1A9B3A +:109AB000F01F000CC090EEF8012848DA700C302B33 +:109AC000F01F0005CB7B1A9B310ACE1B8003AD2C07 +:109AD0008003DE1880023A1A800294388002963C95 +:109AE000800257CC8002914C8003DDB48003DDCC32 +:109AF000EBCD40F81897169514931294F8F80124BA +:109B00005808C090F8C6FEE4306A48BB0C9CF01FB1 +:109B1000000BC031E3CD80F80C9C306A0A9BF01F2B +:109B20000007CF910899069A0A9BEEFC0124F01FCA +:109B30000004CF1B800294008000917C800261FCB5 +:109B4000EBCD40F8FACD01001293109418961697B9 +:109B5000149530081A99F2080B082FF8E048010014 +:109B6000CFB1300E1A9C1C9BEC0B0709198AFC0A1A +:109B700000081208FAC9FF00FDD8C0081C09F33814 +:109B8000FF0018C8F36AFF002FFBFAC8FF000E3B66 +:109B9000F9BB0200103CCE915805C4C0300E1C9792 +:109BA0001C9CF8C8FFFFFACAFF00F9D8C008180AC1 +:109BB000F53BFF00F60E0008FAC9FF00FDD8C0080B +:109BC0001C09F338FF00F568FF00F36BFF002FF767 +:109BD0000E35FE9BFFE85804C2A006963007F8C871 +:109BE000FFFFFACAFF00F9D8C008180AF539FF00CC +:109BF000F20E0008FACBFF00FDD8C0081C0BF738A6 +:109C0000FF00F568FF00F769FF00F538FF00100955 +:109C1000F3D9C008FACAFF00120A0D89F538FF000F +:109C200012580CC82FF70E34FE9BFFDB2C0DE3CD32 +:109C300080F80A9E0A9CCD0BD401129E16981899A2 +:109C40001C9B149C300AF01F0002D80280029B402B +:109C500000000000D431FACD0180340AFAC4FEC0FD +:109C6000510C089CF01F04BF688A516A689950A97A +:109C700068A8509868B65086684568216830416683 +:109C800050E5685250D2686A50CA687950B968087D +:109C90005158E3E8200868D50C580A586812F00AB1 +:109CA000150150F2F5E813FA517A68E868F640E5D4 +:109CB00040A9105940980C580A5802580059F00A07 +:109CC00015010459F5E813FAF20215014178E5E9A6 +:109CD00013F2519A518240C54089105968C80458FE +:109CE00040E20A58045840D6F00A15010C59F5E82C +:109CF00013FA005951AA419840B640D5416240CA72 +:109D0000F2071501EFE913F768D9105968E80E5802 +:109D1000045814580C590A59F0051501F20615019A +:109D2000EBE813F5EDE913F640B851C551B641A281 +:109D300068F940AA416504591459105941780C58E2 +:109D400040960C580A58F2021501F00A1501E5E98F +:109D500013F2F5E813FA41C851EA51D2408640A502 +:109D6000409A418910594198045868C204581458BF +:109D70000C590A59F0051501F2061501EBE813F527 +:109D8000EDE913F6408851F6520541E268DA68C5FC +:109D9000EFE220091459105941A80C5868E60C58F4 +:109DA0000A58F2021501F00A1501E5E913F2F5E887 +:109DB00013FA52124208522A41B968F668D568EA85 +:109DC000105941C804584172045814580C590A5982 +:109DD000F0051501F2061501EBE813F5EDE913F6B0 +:109DE0005245523668F84222418A417541D9045998 +:109DF0001459105941E80C5841960C580A58F2026F +:109E00001501F00A1501E5E913F2F5E813FA4248E5 +:109E1000418641A5525241F9105942080E59045841 +:109E20000C5941920A580458526AF20A1501F5E990 +:109E300013FAF0091501F3E813F9426841B641C578 +:109E400041A2527A52894219105942280C59145889 +:109E50000E590A580458F20A1501F5E913FAF009E7 +:109E60001501529AF3E813F9428852A941D641B537 +:109E700041E2423910594248145841CA0458145812 +:109E80000C5941FA0A59F0051501F2061501EBE8E3 +:109E900013F5EDE913F641D852C542A241E552B699 +:109EA00042590459145942CA105942680C58420682 +:109EB0000C580A5841F6F20E1501F0021501FDE9A1 +:109EC00013FEE5E813F2421942781458420A42257B +:109ED000125842890C581C59F00615010A59EDE830 +:109EE00013F61459F20A1501F5E913FA0C951493B7 +:109EF000423952E652FA4216424A52D24298045825 +:109F0000125842A90C580A5942261459F00A150150 +:109F1000F5E813FA0C59530A1496F2081501425A3F +:109F2000F1E913F84239109C531842B806581458F6 +:109F3000426A125842C90C591459424A1459F00A3B +:109F40001501F5E813FAF2081501F1E913F8109B71 +:109F500053384278FDEC20091059425810595019D5 +:109F60004289E5EA200812584269125840195008FF +:109F70004018A178F1E913F8400953484008A17846 +:109F8000F1E913F853584298EBEB20091059427845 +:109F9000105942A850194349E7E92009105942884D +:109FA000105940185009532A4019A179F3E813F9C0 +:109FB000400853694009A179F3E813F953794358EC +:109FC000EDE8200942B810594298105942C850197A +:109FD0004369F9E92009105942A81059401850095D +:109FE0004019A179F3E813F9400853894009A17990 +:109FF000F3E813F943785399F5E8200942B81C595E +:10A00000105950194389F7E92009129842C9045898 +:10A010001258401950084018A178F1E913F8400986 +:10A0200053A84008A178F1E913F8434953B843987D +:10A0300010590A591C59501943A94358125840192C +:10A04000065804584012A172E5E913F253C2F00217 +:10A050001501E5E813F243B84369105943780C59E8 +:10A060000A5943C50A581858065853D2F202150126 +:10A07000E5E913F2F0091501F3E813F943D853F9B0 +:10A08000438910594398145904580C5916581858B4 +:10A0900053E243F54342F20C1501F0061501F9E9CC +:10A0A00013FCEDE813F643A943B80A5918580459AC +:10A0B0001459435A145816585406436A4402F20677 +:10A0C0001501F0051501EDE913F6EBE813F543482A +:10A0D00054255416435543C904591459105943D8AB +:10A0E000F20215010C58E5E913F2437654320C588C +:10A0F0000A58F00A1501F5E813FA544A890A442966 +:10A1000043864365437A43E8125843F90C5804598F +:10A110000A584392F0061501EDE813F654568916D5 +:10A1200004591459F2051501EBE913F55465892515 +:10A13000444243AA4389F9E2200814581258F00215 +:10A140001501E5E813F25472439544090C5943B6DE +:10A1500089320C590A59F20A1501F5E913FA548AA1 +:10A16000894A43C6446943A5441812580C580A58F2 +:10A17000F0061501EDE813F6549643BA4429045944 +:10A1800043D2895604591459F2051501EBE913F528 +:10A1900054A58965448243EA43C944380458145895 +:10A1A0001258F0021501E5E813F254B243D54449C0 +:10A1B0000C5943F689720C5944080A59446A045AE6 +:10A1C000105A0C5AF2061501EDE913F654C6447BF9 +:10A1D00089860C5BF4061501EDEA13F654E6441586 +:10A1E00044A243E9445889A60A5B045818581258F7 +:10A1F000F0051501EBE813F554D58995185BF602C7 +:10A200001501E5EB13F254F289B2444A4489449BA8 +:10A210000A590C5B4405442644A804581458F3E634 +:10A22000200A0C580A5A5028E0657999EA155A8292 +:10A23000504A410644325116441AEE050009F7E22D +:10A2400020081458E062EBA1EA126ED95038507918 +:10A25000040E0C99506EE068BCDCEA188F1B0C9A57 +:10A26000100C2F8A505C512A1306511941087403AF +:10A27000720C2F485138410A2F0A514A700A41483E +:10A28000700941580A08F0090009EC081505F1E6C3 +:10A2900013B8F2080008F5E3200918691459F00909 +:10A2A000000740F80A08F00A0009F80B151EF7EC41 +:10A2B000122BF7E320080C680658F2080008EE0994 +:10A2C0001505F3E713B9EC0A151EF009000EF5E6C3 +:10A2D000122AFC091505F7EA2008F3EE13B9EFE896 +:10A2E000000816580A01EE0C151E0601F9E7122C9B +:10A2F0001001F9EA200812011C68E209150514583A +:10A30000F3E113B90A001600100040E812000A0831 +:10A31000F00A0009FC0B151EF7EE122BF7EC2008D3 +:10A3200002681858F2080008E0091505F3E013B9AF +:10A33000F009000640D80A08F00C0009E20A151ED0 +:10A34000F5E1122AF5EB200800681658F20800081B +:10A35000EC091505F3E613B9F009000E40C80A0828 +:10A36000F00B0009E00C151EF9E0122CF9EA2008A8 +:10A370000C681458F2080008FC091505F3EE13B92F +:10A38000F009000340B80A08F00A0009EC0B151E9A +:10A39000F7E6122BF7EC20081C681858F2080008A2 +:10A3A000E6091505F3E313B9F009000641680A0848 +:10A3B000F00C0009FC0A151EF5EE122AF5EB200838 +:10A3C00006681658F2080008EC091505F3E613B9FB +:10A3D000F009000E40A90A091609E60C151EF9E35A +:10A3E000122CF9EA20080C681458F2080008FC093D +:10A3F0001505F3EE13B9F009000340980A08F00AB6 +:10A400000009EC0B151EF7E6122BF7EC20081C6870 +:10A410001858F2080008E6091505F3E313B9F00926 +:10A42000000640890A091809FC0A151EF5EE122AD1 +:10A43000F5EB200806681658F2080008EC09150527 +:10A44000F3E613B9F009000E68C80A08F00B00091A +:10A45000E60C151EF9E3122CF9EA20080C681458D2 +:10A46000F2080008FC091505F3EE13B9F009000124 +:10A4700068D90A091409EC0B151EF7E6122BF7EC44 +:10A4800020081C681858F2080006E2091505F3E1D7 +:10A4900013B968E8EC0900030A08F00C0009FC0A8B +:10A4A000151EF5EE122AF5EB200802681658F20880 +:10A4B0000008E6091505F3E313B9F009000E68F981 +:10A4C0000A091609E20C151EF9E1122CF9EA200816 +:10A4D00006681458F208000BFC091505F3EE13B9D1 +:10A4E0004178F60900000A08F00A0009E606151E80 +:10A4F000EDE31226EDEC20081C681858F208000A5B +:10A50000E0091505F3E013B9F409000341890A09CC +:10A510001809FC0A151EF5EE122AF5E62008006857 +:10A520000C58F208000CE6091505F3E313B941983D +:10A53000F80900010A08F0060009E00B151EF7E013 +:10A54000122BF7EA200806681458F2080008E209FE +:10A550001505F3E113B94077F009000E1407FC0963 +:10A560001505E60A151EF3EE13B9F5E3122AF5EB0D +:10A57000200802681658EE080008F009000341A8F8 +:10A580000408F00B0009E20C151EF9E1122CF9EA9F +:10A5900020081C58F2080008E6091505F3E313B972 +:10A5A000F009000541B904091409FC0B151EF7EE6A +:10A5B000122BF7EC20080658F2080008EA091505E6 +:10A5C000F3E513B9F009000641C80408F00C0009CE +:10A5D000E60A151EF5E3122AF5EB20080A58F208E0 +:10A5E0000008EC091505F3E613B9F009000E41D98E +:10A5F00004091609EA0C151EF9E5122CF9EA2008DF +:10A600000C58F2080008FC091505F3EE13B9F0091F +:10A61000000541E80408F00A0009EC0B151EF7E6F6 +:10A62000122BF7EC20081C58F2080008EA0915055F +:10A63000F3E513B9F009000641F904091809FC0A09 +:10A64000151EF5EE122AF5EB20080A58F20800084C +:10A65000EC091505F3E613B9F009000E42080408E9 +:10A66000F00B0009EA0C151EF9E5122CF9EA200896 +:10A670000C58F2080008FC091505F3EE13B9F009AF +:10A680000005421904091409EC0B151EF7E6122BFC +:10A69000F7EC20081C58F2080008EA091505F3E554 +:10A6A00013B9F009000642280408F00C0009FC0A5E +:10A6B000151EF5EE122AF5EB20080A58F2080008DC +:10A6C000EC091505F3E613B9F009000E4239040947 +:10A6D0001609EA0C151EF9E5122CF9EA20080C58A7 +:10A6E000F2080008FC091505F3EE13B9F00900059E +:10A6F00042480408F00A0009EC0B151EF7E6122B7D +:10A70000F7EC20081C58F2080008EA091505F3E5E3 +:10A7100013B9F0090006425904091809FC0A151E6C +:10A72000F5EE122AF5EB20080A58F2080008EC09A9 +:10A730001505F3E613B9F009000E42680408F00BA2 +:10A740000009EA0C151EF9E5122CF9EA20080C584C +:10A75000F2080008FC091505F3EE13B9F00900032F +:10A76000427904091409EC0B151EF7E6122BF7ECDD +:10A7700020081C58F2080008E6091505F3E313B990 +:10A78000F0090005428904091809FC0A151EF5EEB6 +:10A79000122AF5EB20080658F2080008EA09150508 +:10A7A000F3E513B9F009000E429904091609E60C05 +:10A7B000151EF9E3122CF9EA20080A58F208000BDA +:10A7C000FC091505F3EE13B9F609000042A90409C6 +:10A7D0001409EA06151EEDE51226EDEC20081C58BA +:10A7E000F208000AE0091505F3E013B9F4090003C3 +:10A7F00042B9FC0A151E0409F5EE122A1809F5E6FD +:10A80000200800584065F208000C1405E6091505FB +:10A81000E00B151EF3E313B9F7E0122BF809000162 +:10A82000F7EA200AE2081505065AF1E113B842C911 +:10A8300004090C091409E60A151EF208000EF5E3D6 +:10A84000122AF5EB20080258EA080008E066BCDC92 +:10A85000EA168F1BFC091505F3EE13B9F009000089 +:10A8600042D80C08E20C151EF00B0002F9E1122C84 +:10A87000FDEC0008FDEC100914691049E00815050D +:10A88000F1E013B8E4090009F208000242E80C08FC +:10A89000FC0B151EF00A0005F7EE122BE1EB000889 +:10A8A000E1EB100918691049E4081505EA090009E7 +:10A8B000F1E213B8E00A151EF2080005F5E0122ACD +:10A8C00042F9E5EA00080C09F20C0003E5EA100978 +:10A8D00016691049EA081505F1E513B8E6090009FB +:10A8E000F208000343080C08E40C151EF00B0006E8 +:10A8F000F9E2122CEBEC0008EBEC1009146910499A +:10A90000E6081505EC090009F1E313B8EA0B151E7A +:10A91000F2080006F7E5122B4319E065BCDCEA15E6 +:10A920008F1BE7EB00080A09F20A000AE7EB10099F +:10A9300018691049EC081505F1E613B8F409000987 +:10A94000F208000243280A08E60A151EF00C000C63 +:10A95000F5E3122AEDEA0008EDEA1009166910493C +:10A96000E4081505F8090009F1E213B8EC0C151E0E +:10A97000F208000EF9E6122C4339E5EC00080A094A +:10A98000F20B000BE5EC100914691049FC081505E1 +:10A99000120BF1EE13B84349F6080005E40B151E3F +:10A9A000F7E2122BE062BCDCEA128F1BFDEB000821 +:10A9B0000409F20A000AFDEB100918691049EA08B7 +:10A9C0001505F1E513B8F4090009F208000643582B +:10A9D0000408FC0A151EF00C000CF5EE122AEBEA36 +:10A9E0000008EBEA100916691049EC081505F8098A +:10A9F0000009F1E613B8EA0C151EF208000EF9E59D +:10AA0000122C4369EDEC00080409F20B000BEDEC8D +:10AA1000100914691049FC081505F1EE13B8F60980 +:10AA20000009F208000543780408EC0B151EF00A33 +:10AA3000000AF7E6122BFDEB0008FDEB1009186980 +:10AA40001049EA081505F4090009F1E513B8FC0AF4 +:10AA5000151EF2080006F5EE122A4389EBEA0008FB +:10AA60000409F20C000CEBEA100916691049EC0815 +:10AA70001505F1E613B8F8090009F208000E43982D +:10AA80000408EA0C151EF00B000BF9E5122CEDEC96 +:10AA90000008EDEC100914691049FC081505F609C9 +:10AAA0000009F1EE13B8EC0B151EF2080005F7E6ED +:10AAB000122B43A9FDEB00080409F20A000AFDEB82 +:10AAC000100918691049EA081505F1E513B8F409E9 +:10AAD0000009F208000643B80408FC0A151EF00C31 +:10AAE000000CF5EE122AEBEA0008EBEA10091669F1 +:10AAF0001049EC081505F8090009F1E613B8EA0C4D +:10AB0000151EF208000EF9E5122C43C9EDEC000801 +:10AB10000409F20B000BEDEC100914691049FC0854 +:10AB20001505F1EE13B8F6090009F208000343D841 +:10AB30000408EC0B151EF00A000AF7E6122BFDEBD9 +:10AB40000008FDEB100918691049F4090009E6082E +:10AB50001505F1E313B8F208000543E90409FC0AFE +:10AB6000151EF20C000CF5EE122AE7EA0008E7EADF +:10AB7000100916691049F8090009EA081505F1E5F8 +:10AB800013B8F208000E43F90409E60C151EF20B87 +:10AB9000000BF9E3122CEBEC0008EBEC1009146944 +:10ABA00010494057FC0815051407F1EE13B8F609D3 +:10ABB000000AEA0B151EF7E5122BFDEB0009F4085D +:10ABC0000003FDEB1008E60A15051868F5E313BA53 +:10ABD0001248EE080009F20A00054409E06AC1D6ED +:10ABE000EA1ACA6214091809FC06151EEDEE1226AF +:10ABF000EDEB20080658F2080008EA091505F3E510 +:10AC000013B9F009000A4419E068C1D6EA18CA620B +:10AC100010091609E60C151EF9E3122CF9E62008B6 +:10AC20000A58F2080008F4091505F3EA13B9EA0B0B +:10AC3000151EF0090003F7E5122B4429E065C1D683 +:10AC4000EA15CA620A090C09F7EC20081458F20840 +:10AC50000008E6091505F3E313B9F009000EFC0935 +:10AC60001505F3EE13B9F406151EEDEA1226443A63 +:10AC7000EDEB20080A0A0658180A100A120A44497D +:10AC80000A091609E60C151EF9E3122CF9E620084C +:10AC90001C58F2080008F4091505F3EA13B9FC057D +:10ACA000151EF0090003EBEE1225E6091505EBEC85 +:10ACB0002008F3E313B91458E062C1D6EA12CA625D +:10ACC000445B040B0C0BF406151E100BEDEA122668 +:10ACD000120BEDE52008F60915050658F3EB13B93C +:10ACE000446A040A180A100A4478F409000E040899 +:10ACF000F0050009E60A151EF5E3122AF5E620081C +:10AD00001658F2080008FC091505F3EE13B9F0090E +:10AD10000005448904090C09F60C151EF9EB122CE8 +:10AD2000F9EA20081C58F2080008EA091505F3E5BD +:10AD300013B9F009000344980408F00A0009FC0B59 +:10AD4000151EF7EE122BF7EC20080A58F20800083F +:10AD5000E6091505F3E313B9F009000E44A9040947 +:10AD60001809EA06151EEDE51226EDEB2008065837 +:10AD7000F2080008FC091505F3EE13B9F009000507 +:10AD8000EA091505F3E513B944BAE60C151E040AE1 +:10AD9000F9E3122C160AF9E620081C58100A120AC8 +:10ADA00044C904090C09FC0B151EF7EE122BF7EC35 +:10ADB00020080A58F2080002F4091505F3EA13B94D +:10ADC00044D8E409000EE069C1D6EA19CA62120843 +:10ADD000EA06151EF00C0009EDE51226EDEB200841 +:10ADE0001458F2080008FC091505F3EE13B9F00930 +:10ADF000000CE068C1D6EA18CA62F405151EF8090D +:10AE00001505EBEA1225F3EC13B944EA100AEBE658 +:10AE10002008160A1C58100AFC02151EF40900012D +:10AE2000E5EE1222E06AC1D6EA1ACA62E5E5200818 +:10AE3000E20915051858F3E113B944FB140B404A15 +:10AE40000C0BA17A100B44B8F609000E4049F5E945 +:10AE500013FA14584459F1E9200B4438E069C1D67B +:10AE6000EA19CA6289CAF7E820074108F806151EE0 +:10AE7000120AEDEC1226700CEDE22008120C0258BA +:10AE8000FC091505F3EE13B90A0AE203151E100AB0 +:10AE9000E7E11223120AE7E62008E069C1D6EA19C1 +:10AEA000CA621C5840354030A170E1E513F0E0095A +:10AEB000000BF4091505040BF3EA13B9100B402835 +:10AEC0004021120BE065C1D6EA15CA62A171E3E820 +:10AED00013F1E2050008F0060009FC02151EE5EE7C +:10AEE0001222E5E320081458F2080008F6091505B7 +:10AEF000F3EB13B9F406151EF009000EEDEA122665 +:10AF0000EE051501410AEBE713F5EDE220080A0C06 +:10AF10001658060CFC091505100CF3EE13B9120CAB +:10AF2000950C411972081C089308F609151E412A50 +:10AF3000F3EB1229740812089508413870090C09BE +:10AF4000910989D089E189F541466C080408089C7B +:10AF50008D08340A300BF01F00042A0DD83200008F +:10AF6000800091DC800091D0EBCD40F878581494AB +:10AF7000A37AF40800099959123AF9F98006F9F907 +:10AF8000B006F7B90BFFF9F9BA06FDD8C066E808B4 +:10AF9000161DF2080008996818951693E80E000926 +:10AFA000E049003FE08B000F3006FCCCFFE4E606F2 +:10AFB000000BEA0C000CE806010AF01F0014E3CDB8 +:10AFC00080F8FC061140FCCCFFE40C9AEA0C000C63 +:10AFD000F01F000EEACBFFE40A9CF01F000DECC846 +:10AFE000FFC11034E088000FE60600070E9B0A9CA4 +:10AFF0002C07F01F00072C06ECC8FFC11034FE9B85 +:10B00000FFF7300ECD3B0000800091DC80029C54A5 +:10B01000D421202D16961895300B1A94583BF9B868 +:10B020000B14F9B80818F60911FFEC08030AF3D954 +:10B03000C002A379F4090A4AE80B0B0A2FFB588BCC +:10B04000CEE1301A49EBC038301A49EB0C9CF01FA6 +:10B05000001E6C58E21801F8E04801C0CF61308A48 +:10B060001A9B0C9CF01F00183007EE081602EE0920 +:10B0700011FFEC08032AF3D9C002A379F4090A4AA4 +:10B08000EA070B0A2FF75947CF11300B340AECCCE3 +:10B09000FFE4F01F000E0E9A300B0C9CF01F000B0B +:10B0A000ECCCFFEC308A300BF01F00081A9C308A81 +:10B0B000300BF01F00062FEDD82200008003DE5871 +:10B0C00080029C508002AF68800091D0EBCD40FCA4 +:10B0D000217DE0682301EA186745E06EAB89EA1E2E +:10B0E000EFCD5008E068DCFEEA1898BA3007501E31 +:10B0F0005028E06E5476EA1E1032E068E1F0EA185B +:10B10000C3D250675057503E504818931292580C73 +:10B11000C140149416951A962FF7090A0B0B1A9C26 +:10B12000F01F00070E33FE9BFFF91A9B049CF01FD3 +:10B1300000052E9DE3CD80FC1A96CF8B8002AF6870 +:10B140008002B010D431FACD008C501C500B1493F7 +:10B150001292109142C0585AE08B0056E04B0040CA +:10B16000E08B0054FAC4FFF8340A300B089CF01F3F +:10B17000002E400A401B089C0896F01F002CFAC5C0 +:10B18000FFB808970D88EC1800360CC80A36CFB106 +:10B190003408518451285803C110FACCFF9CFACBD3 +:10B1A000FFB4300AE60E1502E40A030818A8E20A02 +:10B1B000030916A92FCA1C3ACF81E6CCFFFF0099DC +:10B1C0000A9AFAC3FFA0069BF01F0019340A300B3D +:10B1D000089CF01F0015400A401B089CF01F00133C +:10B1E0000F88EC18005C0EC80C37CFB1314C340816 +:10B1F000513C5184519000990A9A069B5128302C59 +:10B20000F01F000B2DDDD832FAC6FF881A9A0C9970 +:10B21000FACBFFFC301CF01F0006314850165008D6 +:10B22000CA2B0000800091D0800091DC8002B0CC5D +:10B23000D401202D501A5009301A1AD8FAC9FFF833 +:10B24000FAC8FFFCF01F00032FFD2FEDD80200000D +:10B250008002B144D43121AD5009502B501A1892BC +:10B2600042395809C6D0504850593008FAC7FFAC87 +:10B270005038FAC3FFD4FAC0FFC0FAC4FFE8049CF8 +:10B28000F01F003140382FF850381AD34038518819 +:10B2900040285168FAC8FF98519830484046517884 +:10B2A000B986FB380013FAC9FFA0FB68006B189B36 +:10B2B0000E98FB66006840454046302A1891B185DB +:10B2C000049CFB650069A986FB66006AF01F001FED +:10B2D000314A069B009CF01F001E2FFD40085818A5 +:10B2E000E08A001C301608983149069A029B049C9B +:10B2F000F01F0018314A089B069CF01F0015009AA9 +:10B30000089B17381589125814C80E3ACFB12FF67A +:10B3100040080C38FE99FFE940560C985946F9B69A +:10B320000B140C180C9A5058009B404CF01F00084E +:10B3300040585808C05040480C085048CA1B2E6D51 +:10B34000D8320000800091B88002B144800091DCC6 +:10B350008002B230D43120EDFACEFFA4109530082F +:10B3600018927C14149716911296FB680036FB68AD +:10B3700000377C00149CF01F00275804C3003018CD +:10B38000FAC9FFC9508850685097FAC8FFCA505C84 +:10B3900050B6507550A950C85934E0880023300782 +:10B3A000FAC3FFECFAC6FFDCC088FB680036E8078A +:10B3B00001055935E088001CE00700080C991AD8EF +:10B3C0002EC70698304A029B049CF01F00132FFDE5 +:10B3D000FB3800362FF80E34FE9BFFE92F2DD832B4 +:10B3E00008953007FAC3FFECFAC6FFDC0C99069803 +:10B3F0001A96049C1AD6029B304AF01F00070A9A3C +:10B400000C9BE007000CF01F00052FFD2F2DD832FC +:10B41000800091B88002B144800091DC00000000FF +:10B4200000000000EBCD4080129E1097584CC26087 +:10B43000E08A0013588CC140590CC101590B5F18A8 +:10B4400058FA5FA91248C0A130689D083039300C05 +:10B450008F09E3CD8080582CC1E0E3CFC080E04B62 +:10B4600000205F1859FA5FA91248CF8130689D0803 +:10B470003029300C8F09E3CD808058DB5F1858CA23 +:10B480005FA91248CEB130099D093018129C8F086F +:10B49000E3CD8080585B5F18584A5FA91248CF40BF +:10B4A000E3CFC080580C5E0CF8F8010C5808F9B8CE +:10B4B0000100F9F81A435EFC580CF9FB1A4C5EFCCB +:10B4C000580CF9FA1A51F9FB1A505EFC580CF9FBAA +:10B4D0001A415EFC580CC080586BE08800035EFD8A +:10B4E0004928F00B032F5EFEF94A016C5EFDF94A14 +:10B4F00001685EFDF94A01645EFDF94A01605EFD86 +:10B50000580ACF20F94A01585EFDF4C80001E0480E +:10B510000063FE9BFFEAF94A01545EFD580ACE40E3 +:10B52000F94A01505EFD00008003DE5CEBCD40E097 +:10B53000189716951496580CC130F8FC0180F01F2E +:10B54000001158055F0858065F091248C0B030085E +:10B55000EF480188EF480180109CE3CD80E0E3CF05 +:10B56000C0E00C9CF01F0008EF4C0180CF900A9BBC +:10B570000C9AF01F0006300CEF460188E3CD80E006 +:10B58000800091E880009200800091DCEBCD40E0EB +:10B59000189716951496580CC130F8FC017CF01FD2 +:10B5A000001158055F0858065F091248C0B03008FE +:10B5B000EF480184EF48017C109CE3CD80E0E3CFAD +:10B5C000C0E00C9CF01F0008EF4C017CCF900A9B60 +:10B5D0000C9AF01F0006300CEF460184E3CD80E0AA +:10B5E000800091E880009200800091DCEBCD40E08B +:10B5F000189716951496580CC130F8FC0174F01F7A +:10B60000001158055F0858065F091248C0B030089D +:10B61000EF480178EF480174109CE3CD80E0E3CF60 +:10B62000C0E00C9CF01F0008EF4C0174CF900A9B07 +:10B630000C9AF01F0006300CEF460178E3CD80E055 +:10B64000800091E880009200800091DCEBCD40FE0C +:10B65000189716961493580CC031E3CFC0FE7409A6 +:10B66000F8F801605828C5E0F8F1016CF8F50168B8 +:10B67000F8F201645979FE98FFF23DD8304AB68855 +:10B68000ECCCFFFEFEFB0238F01F008E30083019B4 +:10B69000ACF8ACE9ECC4FFF85905E08000A158858E +:10B6A000E08000AA5845E08100BC0A9AFEFB02181F +:10B6B000089CF01F00843018A8C8E8C9FFFB3008B8 +:10B6C000B288E8C5FFFA5902E08000905882E08114 +:10B6D000009F304A4FDB0A9CF01F007A3018AAC83E +:10B6E000EAC9FFFB3008B2882FA55811E080008A14 +:10B6F0005821E08100A5304A4F5B0A9CF01F007181 +:10B70000EAC9FFFCEC0811FE1208AC98F206010C25 +:10B71000CA56870CEEF501745805E08000C1E3CFEE +:10B7200080FEF8F8010CF8F2016C5808F9B801280D +:10B73000F9B80016F8FA0168F8F401641039C8E3A2 +:10B7400033083009B688B6B93018B6A8F6C5FFFC7C +:10B75000590AC6F0588AE0800082584AE081009772 +:10B760004DCB0A9CF01F00573018AAC8EAC9FFFB4E +:10B770003008B2882FA55904C6B05884E081007EF5 +:10B78000304A4D5B0A9CF01F004F3018AAC8EAC926 +:10B79000FFFB3008B2882FA55812C661304A4CFB17 +:10B7A0000A9CF01F0048EAC8FFFC300AB08AB09A31 +:10B7B000EAC9FFFAEEF8010C5808CA503018B288EE +:10B7C000EAC9FFF9EACCFFF8B28A310AEEFB010CB4 +:10B7D0002FCBF01F003CEAC9FFE8C95B304A4C0B95 +:10B7E000089CF01F0038C68B304A4BDB0A9CF01FC8 +:10B7F0000035C75B304A4B5B089CF01F0032C5CB5D +:10B80000304A4B8B0A9CF01F002FC7BB5812FE9189 +:10B81000FF26304A4B4B0A9CF01F002AC60B5825C6 +:10B82000FE91FF1D304A4B1B089CF01F0026C44BA5 +:10B83000304A4AFB0A9CF01F0023C97B5901FE9144 +:10B84000FF0E304A4ABB0A9CF01F001EC5AB304AAF +:10B850004A7B0A9CF01F001BC99B304A49EB0A9C9B +:10B86000F01F0018C82B5822FE91FEF9304A4A2BCF +:10B870000A9CF01F0014C98B5814FE91FEF0304A48 +:10B8800049EB0A9CF01F000FC81B582AFE91FEE7E7 +:10B89000304A49BB0A9CF01F000BC67BF01F001901 +:10B8A000EF4C0174FE90FEDB0C9B660AF01F000556 +:10B8B00066080A9CEF480178E3CD80FE8003DE989D +:10B8C000800091DC8003DEA08003DE8C8003DE7CC0 +:10B8D0008003DE888003DE808003E1EC8003E1E406 +:10B8E0008003DE9C8003DEA48003DE948003DEB44C +:10B8F0008003DEB08003E1E88003DEA88003DE84FD +:10B9000080009200D401580CC060F8CCFEC8306AA8 +:10B91000F01F0002D8020000800091DCD4011898CA +:10B92000580CC040918AF01F0002D802800091DCC0 +:10B93000EBCD40F8208D189416971493F6C6FFF0BF +:10B94000F8F501685885C2E0E8F801645818C1604C +:10B950006EC8E8F901286E0B1AD81AD66E2849CAA3 +:10B960001AD81AD3720C72666E186E395D162FCD06 +:10B97000580CC1552F8DE3CF80F86EC9E8FA012825 +:10B980006E0B1AD91AD66E291AD91AD3740C74668A +:10B990006E3948FA5D162FCD580CCED42F8DE3CFDB +:10B9A000C0F80C9B310A1A9CF01F000A0A9AEECBD1 +:10B9B000FFD8FACCFFF0F01F00070A9AEECBFFE0A9 +:10B9C000FACCFFE81A96F01F0003CBFB80039C38EB +:10B9D000800091DCD401580CC070F94B0134F8FCA4 +:10B9E0000108F01F0002D80280028F64D401580CB5 +:10B9F000C110F8F8010C5808C08070DAF0CBFFECE9 +:10BA0000998AF01F0005D802320A109B998AF01F0C +:10BA10000003D802800091DC800091D0EBCD408003 +:10BA20001897F01F000AEEF801287029700C5D19B4 +:10BA3000585CEFF80057F9B90001F1D9E008EFF8C8 +:10BA40000A57E3CD8080000080029438EBCD40C0DF +:10BA500018971696580CC190306AF8CCFEB8F01FB3 +:10BA6000000F308A300BEECCFF10F01F000D3008B5 +:10BA700030190C9BEF4800F8EF4900EC306AEECC2F +:10BA8000FEE4F01F0008C030E3CD80C00E9CF01F24 +:10BA90000006E3CD80C00000800091DC800091D0E2 +:10BAA0008000917C80029438EBCD40C016971496AC +:10BAB000F6F8010C1838C0D0768A78D8103AC03021 +:10BAC000E3CD80C0F8CBFFEC0E9CF01F000ECF91B1 +:10BAD0003008EF48010C5806CF41320A0C9B0E9CEF +:10BAE000F01F0009EEF90128301B720C72485D1836 +:10BAF000EEF801280C9A700C70390C9B5D19CE1B66 +:10BB00008000917C800091D0D431189716941493C2 +:10BB1000300B324A069CEE040005F01F0052EEC6C0 +:10BB2000FFFF0C35E0880034E8C800013DD2EE0884 +:10BB30000004C0D8E4091800C2B01499F2C8FFFE8E +:10BB40001007EEC6FFFF0C35E08800220F89E409DC +:10BB50001800C4B10837C1B00D8A580AC180F4C8B2 +:10BB6000FFFEEE0800081035C4733308F009180012 +:10BB7000CE2187270D882FE887380D89F2C8FFFE70 +:10BB80001007EEC6FFFF0C35FE9BFFE2D83A580ABD +:10BB9000CFE03058F00A1800E08B003FEEC8FFFB02 +:10BBA0001035E08B002B14993061E2091800FE98E3 +:10BBB000FFC7EEC0FFFE304A4ABB009CF01F002BBF +:10BBC000C3900D89E2091800FE98FFBA009C304A24 +:10BBD0004A7BF01F0026C071EEC9FFFA87790D88F5 +:10BBE000204887880D89CABB0D8AF4C8FFFEEE087D +:10BBF00000081035CBB2DC3A14993138F00A18003D +:10BC0000FE98FFD4304A49BBEECCFFFEF01F001770 +:10BC1000C1900D89CCAB304A497BEECCFFFEF01FC2 +:10BC20000013C0610FE93018F0091800C1000D8A37 +:10BC3000CB6BEEC9FFFA87590D88204887680D89BC +:10BC4000C7EBEEC8FFFA87480D89C79B0FF8F808C5 +:10BC50001800CEE187070D882FE887180D89C6FBED +:10BC6000800091D08003DE788000917C8003DEAC80 +:10BC70008003DE908003DE98EBCD4080304A189739 +:10BC8000496BF01F0017C031E3CF9080304A495B09 +:10BC90000E9CF01F0013C041302CE3CD8080304A51 +:10BCA000491B0E9CF01F000EC041308CE3CD8080FC +:10BCB000304A48EB0E9CF01F000AC041310CE3CD26 +:10BCC00080800E9C304A48ABF01F0005F9BC000490 +:10BCD000F9BC0100E3CD80808003DEA88000917C68 +:10BCE0008003DE848003DE808003DEB48003DE8890 +:10BCF000EBCD4080304A1897496BF01F0017C031D8 +:10BD0000E3CF9080304A495B0E9CF01F0013C04186 +:10BD1000302CE3CD8080304A491B0E9CF01F000E72 +:10BD2000C041308CE3CD8080304A48EB0E9CF01F40 +:10BD3000000AC041310CE3CD80800E9C304A48ABF4 +:10BD4000F01F0005F9BC0004F9BC0100E3CD8080C0 +:10BD50008003DEA48000917C8003DE948003DE8C6F +:10BD60008003E1E48003DEA0EBCD40FC189416963E +:10BD70001497580BC160198B3308F00B1800C1D011 +:10BD80003008301595789548956895589505308810 +:10BD90009535952895185876E08B009BE3CFC0FC2D +:10BDA000301830898F7B8F4B8F6B8F5B9538950860 +:10BDB00095299519E3CFC0FC300531099545956566 +:10BDC000955595759529951930289508301A8F3A0B +:10BDD0005836FE98FFE51988F6081800CE01199923 +:10BDE000ECC800021039CDB119B919A8F1E91088D1 +:10BDF000F4081900CD4120465836E08A01112FC4BD +:10BE0000089CF01F008A8F2C20465816E08A010BF0 +:10BE10008F15E8CCFFFC19991988F1E91082CBF055 +:10BE2000ECC30002E40815021033CB95F8C4FFFE02 +:10BE300030056E16089CF01F007D0C4C8F1C2FC423 +:10BE400020432FF50A32FE99FFF65813E08A00E5E9 +:10BE5000300A8F3A09990988F1E91082CA00202333 +:10BE6000E40815021033C9B5E8C6FFFE14956E3418 +:10BE7000304A4EFB0C9CF01F006FE08100C430186C +:10BE800008488F382FC620432FF50A32FE99FFF15C +:10BE90005813E08A00940D990D88F1E910888F48B5 +:10BEA000E6CB0002581BE08A008AECCCFFFE199812 +:10BEB0001989F3E810898F59F6C80002A56912386C +:10BEC000C7F5F8C8FFFE300C8F68E3CD80FC1989F8 +:10BED0003DD8F0091800FE91FF631999ECC80002E3 +:10BEE0001039FE91FF5D304A4D3B2FECF01F0051A1 +:10BEF0001893FE91FF5509F909E8F1E91088EA085D +:10BF00001900FE91FF4DECCA0008583AE08A005E25 +:10BF1000E8CCFFF8F01F00498F2CECCA000C0A3A5D +:10BF2000E08A00578F13E8CCFFF419991988F1E9DA +:10BF30001082FE90FF35F4C30002E40815021033AE +:10BF4000FE95FF2EF8C4FFFE30056E16089CF01F0C +:10BF5000003B0C4C8F1C2FC420432FF50A32FE9956 +:10BF6000FFF65813E08A0042300A8F3A099909888F +:10BF7000F1E91082FE90FF142023E408150210332B +:10BF8000FE95FF0EE8C6FFFE14956E340C9C304AF9 +:10BF90004ABBF01F0028C211301808488F382FC63E +:10BFA00020432FF50A32FE99FFF25813E08A00145D +:10BFB0000D880D99F1E910888F48E3CF80FC300897 +:10BFC0008F58109CE3CD80FC580AFE99FEE9581A60 +:10BFD000FE90FEE6E3CF80FC304A49AB0C9CF01F9C +:10BFE0000015C0613028CDAB5813CF51CD8A0C9CC1 +:10BFF000304A495BF01F000FF9B80010F9B8010092 +:10C00000CCDB0C9C304A491BF01F000AF9B8000237 +:10C01000F9B80100C36B5813CD11CC1A5806FE991C +:10C02000FEBF5816CCB1CBBA8002BC788003E1ECDD +:10C030008000917C8003DE988002BCF08003DE9C4F +:10C040008003DE7C8003DEB08003E1E8D401580C7D +:10C05000C021DC0AF8F801745808CFC0169AF8FB22 +:10C060000178109CF01F0004F9BC01FEF9BC00002F +:10C07000D80200008002BD68EBCD40801897580CB4 +:10C08000C1D0F8FC0108F01F000F300A0E9B48ECED +:10C09000F01F000EEEFC0174F01F000DEEFC017CA1 +:10C0A000F01F000BEEFC0180F01F0009EEFC0128E0 +:10C0B000F01F00070E9CF01F0006E3CD80800000FB +:10C0C000800290A88002C0D080027400800091E8B5 +:10C0D000D401F01F0002D8028002963CEBCD40C094 +:10C0E0001896E06C018CF01F00131897C19030185F +:10C0F000E069A8C0F94800ECF9490150346833C937 +:10C10000F9480154F9460128F9490158189A189B31 +:10C11000489CF01F000AEF4C01081898C0400E9C84 +:10C12000E3CD80C00E9C1097F01F0005CF9B000050 +:10C1300080028F248002BAA880028F8C800091E850 +:10C14000EBCD4060149E1DD81896158CECF5012897 +:10C150001AD81DC91AD91DB81AD81DA91AD91D98DF +:10C1600048CA1AD81ADC1ADB303B6A0CF01F000AE6 +:10C17000ECF90128311B720C72585D18ECF901289A +:10C18000300A720C7238149B5D182F9DE3CD8060CD +:10C190008003DF4880023A1AEBCD40C0205D109743 +:10C1A000581BC130582BC0402FBDE3CD80C0310B90 +:10C1B0001A98F01F00091A961A9B0E9C310AF01F5C +:10C1C00000072FBDE3CD80C0310BF01F00052FBD50 +:10C1D000E3CD80C08002B230800091DC80028EF816 +:10C1E000D431201DFACEFFD81894500B149012961B +:10C1F00010917C237C077C12306A49AB129CF01FA3 +:10C20000001AC1D05803C0800698009B400C0499C6 +:10C210000E9AF01F00160C9BE8F501280498F5D142 +:10C22000C0100E996A0C6AA65D16E8FC0104F01FA6 +:10C2300000100E9CF01F000F2FFDD832E8C5FEB88D +:10C24000306A488B0A9CF01F0008CDD1E8F801281D +:10C250000A9B700C70995D19EA061740CD4B0000DF +:10C260008002B41C8000917C8002C19880025582BB +:10C27000800091E8EBCD40E0189716961495F8F8F9 +:10C2800001685848E0800081E08A00495888C780EA +:10C290005908C4F04C19EEF801645848C480584855 +:10C2A000E089004A5818C6605828C6604BB81AD9A9 +:10C2B0001AD8EEFA01280DD81AD80DC91AD90DB816 +:10C2C0001AD80DA91AD90D981AD80D89302B1AD958 +:10C2D000740C4B3AF01F0033EEF801282F8D700BD1 +:10C2E000707C300AF01F0030EEF90128720C72C821 +:10C2F0005D18EEF90128307B720C72185D18580534 +:10C30000C201EEFC010C580CC07079485808F9B80D +:10C310000100F9F81A14E3CD80E05818C33058280A +:10C32000CBA14A29EEF801645848CBA14A08CC0BAE +:10C330004A09CB2B5888C2205908CB9149D8CB8BBE +:10C34000EEF801280C9B700C71263019303A5D16FE +:10C35000301BEEFC0104F01F0018EEF8016C5828A9 +:10C36000C15030080E99495A109B301CF01F001420 +:10C37000CC9B4948C9DB48D8C9BB4938C99B492926 +:10C38000C8BB4909C89B48A9C87B301BEEFC010407 +:10C39000F01F000ECE7B00008003C6288003DF74F0 +:10C3A00080023A1A800274008003DF088003DF10E5 +:10C3B00080039A74800261D48002C0D080027474B9 +:10C3C0008003C8E480039A6C800261A4D431FACD62 +:10C3D00000DC1897169314951296E0490062E08BE2 +:10C3E000000630060C9C2C9DD832129CF01F034492 +:10C3F0001892E08000D60C9A0A9BF01F034205A910 +:10C4000005B8F1E910880599F5D8B0103038F00971 +:10C410001800C0603006049CF01F033BCE4BECC8F4 +:10C420000004EBDAC01030090A385F3AE045005EDC +:10C430005F88F5E8100CF20C1800CED13FE8E4C19B +:10C44000FFFC038AF00A18005F1B3028F00A18006E +:10C450005F19F7E90004F8041800CDD1EEFC0104DF +:10C46000F01F032A039903A8F1E91088EDD8B01052 +:10C47000FDD6C003506E1C9930182019F009190020 +:10C48000E08800043FF6CC8BEEF8016459085F0A9F +:10C490003028F00E19005F19126AE80A1800C080EF +:10C4A000EEF801685908CEF0EDB60003CEC0EEF804 +:10C4B00000F85808E08100ABE1D6C0100098E218FF +:10C4C0002080CE10009AE21A0800502ACDC12FC554 +:10C4D00000995055E21901005039C641405AE339DC +:10C4E000005DE338005E263AF1E91088F7D8B01015 +:10C4F000E9DBC010083AE0830598EEF9016058299D +:10C50000E0800550EDB00003E0810333E21000301D +:10C51000CBA140395809E08001CAEEF90128305B0F +:10C52000720C72185D18039903A8F1E91088E339B9 +:10C53000005DEBD8B010E33B005EFACAFF50F7E9AC +:10C54000108BE2CCFFA1F01F02F243185808C04044 +:10C55000EDB5000CC231EEC3FEB8EEF60134EEF8D4 +:10C56000017C5808E08004E742C95809E08004C80B +:10C57000EEFB017C580BC79042DAEEF80184103ACA +:10C58000C70042FE42EC1ADE14981ADC069A0E9C92 +:10C59000FEFB0B80F01F02E02FED3016C3DB3FF6F1 +:10C5A000C22BE2C6FFB3FAC4FF84310A0C9B089C7D +:10C5B000F01F02D440685C785048EEF800A8580894 +:10C5C000C301EEF800A45808FE90FF5E310A300B5C +:10C5D0000C9CF01F02D2049A404BEECCFFDC0C986E +:10C5E0004059F01F02CF0C9B089C310AF01F02CD6E +:10C5F000FE91FF4A308AE2CBFFFBEECCFF10F01F2A +:10C6000002C13018EF4800F8C6AB308AEECBFF10FD +:10C61000E2CCFFFBF01F02C3FE99FF503FF6CFCAEA +:10C62000402B310A0C9CF01F02BD049A404B0C9821 +:10C630004059EEC5FF9C0A9CF01F02B9310A0C9BC1 +:10C64000089CF01F02B8CBE13018EF4C00A80A9B01 +:10C65000EF4800A4340AEECCFFDCF01F02AACCBBEA +:10C66000129CF01F02B0C10142EC580CC160EEFBFD +:10C670000180580BC12042FEEEF80188103EC090A8 +:10C6800042C942DAC81B42FE42C942EC42DAC7CB79 +:10C690001C9AF01F02A4CF81EEF801605818E080C8 +:10C6A00000E6320AE2CBFFF3EECCFF34F01F029D2E +:10C6B000FE91FF7503B903C8F1E91088F3D8B010F3 +:10C6C000EEF801645888E08000CC5908E08000CA88 +:10C6D000EEF80128FAC9FF2C1AD970D6700C35F97A +:10C6E000FAC8FF24300A303B5D162FFD1896580C0F +:10C6F000FE90FF55EEF80160E06900FE5828F20850 +:10C700001710435AB48840680A99E2190200F1E907 +:10C7100010094358E8190108F20B1608B09B435A58 +:10C72000B4A9EEF801605828E0810093300843591D +:10C73000B2B8435AB4C8435C308AE2CBFFFB2FBC8B +:10C74000F01F02704358300AF16A005D4359F36AE2 +:10C75000005E4358406A2B381AD84379E068888EC7 +:10C760001AD9EECBFFDC1AD606990E9CF01F026E8A +:10C770003018EF4800EC5C752FDDEDB50006C0F118 +:10C78000FEFA09A8F4E80000FAE9007CEEF801647A +:10C790005888E08003F65908E08003D90A90E21037 +:10C7A0000200C0E0EEFA01283019740C069B7528CF +:10C7B000129A5D18301BEEFC0104F01F025DEEF8CA +:10C7C0000128306B700C70195D1943165806FE90E5 +:10C7D000FEE64328FAC4FF84F0C50002334A300B5A +:10C7E000089CF01F024EE0450020FE9BFED80D88FD +:10C7F000F1D8C00252280D89F3D9C041C050EEF8DB +:10C80000016458185F095209ECCBFFFE0A9AFACC72 +:10C81000FF74F01F023C0A9A52B50898FAC9FF7CCF +:10C820000A9BEEFC0168F01F0243FE91FEB8E2CACB +:10C83000FFC3089B0E9CF01F0240FE91FEB0009AC1 +:10C84000069B0E9C3016F01F023DFE9FFDE6435CEA +:10C85000302AE2CBFFFD2FDCF01F022AC6DB3208B4 +:10C86000F0091900FE91FE9BC34B42EB580BFE9062 +:10C87000FF1A58065F1AEEF9018058095F0814681C +:10C88000FE90FF116D68EDB80001FE91FF0C42F8BB +:10C89000069A1AD80E9C1ADBFEFB08A442F842E95D +:10C8A000F01F021D2FEDFE9FFE7AEEF90128720C9B +:10C8B00072885D18FE90FE73EEF80128305B700CF4 +:10C8C00070195D19403BFAC6FF50324A0C9CF01FAC +:10C8D0000213EEF801605828C0C1E338005DE33B65 +:10C8E000005E0C9AF7E8108BE2CCFFA1F01F020863 +:10C8F00043065806C0E0EEFC010C580CE08003D162 +:10C90000F8CBFFFC310A0C9CF01F0206E08003C04C +:10C910003005EEF8016C5818E08000D45805C0606E +:10C92000EEFB016C581BE080029BEEF800EC58080F +:10C93000E08102B5EEC8FF545008EECAFEB8EEC959 +:10C94000FF9CE2C8FFF3508AEEC6FEC850A950987B +:10C95000306A6E85408B0C9CF01F01F2E08500FB75 +:10C96000306A408BFAC0FFD0009CF01F01E60C9BA0 +:10C97000306AFACCFFCAF01F01E3320A409B400C38 +:10C98000F01F01E8E08500D0320A409BFACCFFC4DA +:10C99000F01F01DC320A400BFACCFFA4F01F01D9D2 +:10C9A000340E1ADE40BE00991ADE34C80A9BFEFA25 +:10C9B00007920E9CF01F01E4EEC5FF6CFAC3FF7CEA +:10C9C0000A9B308A069CF01F01CF0A9CEEC6FF64CA +:10C9D000308A0C9BF01F01CB069B0C9C308AF01F09 +:10C9E00001C93018EF4800A82FEDEEF50178EEF000 +:10C9F00001745800FE90FDD3EEFA0128FAC8FF2812 +:10CA0000E9D5B0101AD8E8C9FFA1740C74D6FAC8D9 +:10CA1000FF285C79300A303B5D162FFD1893580CC7 +:10CA2000FE90FDBDEEF80160E06900FE5828F208B6 +:10CA30001710436AB48843683019B0994066436858 +:10CA40005C760C9AA3BAB0AAEEF901605829C631F7 +:10CA500030084369B2B8436AB4C8436CE2CBFFFB09 +:10CA6000308A2FBCF01F01A74368F3D4C108F169D5 +:10CA7000005D43680A9AF165005E009B436C2A1CC6 +:10CA8000F01F01A0400B436C320A2F3CF01F019DA8 +:10CA9000408940AB43682B381AD8436C0C9A1ADC97 +:10CAA000E068888E1AD30E9CF01F019F40CBEECC1D +:10CAB000FF34320A3016F01F01932FDDFE9FFCADCC +:10CAC000EEFC0104580CFE90FF2B320A0E9BF01F67 +:10CAD000019FC361320A8F8AEEF8013406991AD891 +:10CAE0000E9BEEC8FEC8EEFC0108F01F0199580627 +:10CAF0005F1AEEF9010C2FFD58095F081468FE90CB +:10CB0000FF0F0C9A069BEEFC0108F01F0192FE91AC +:10CB1000FF0EC05B436C302AE2CBFFFD2FDCF01F21 +:10CB20000179C9CB400B320AFACCFFC4F01F017562 +:10CB3000320A409BFACCFFA4F01F0172C32B310ACA +:10CB40000E9BEEFC0104F01F0181E08101B4310A6B +:10CB5000CC3B0C9BFAC0FFD0306A009CF01F0169EF +:10CB6000306A408BFACCFFCAF01F0166C07B009B85 +:10CB7000E21B2000FE91FD13403A580AFE90FD0F83 +:10CB8000334AFAC0FFD0009CF01F0164EEF901287F +:10CB90007228720C5D1850BC039903A8F1E9108843 +:10CBA000E339005DE7D8B010E338005EF1E91088A2 +:10CBB000EEF90160F7D8B0105829E080011303B9ED +:10CBC00003C8F1E910895189EBDBC0100A34E08316 +:10CBD00000CB3028406EF00E1900E08001D80A9694 +:10CBE000129B0098FAC9FFC80C9AEEFC0168F01F6E +:10CBF0000151E08100B9F5D3C010F1DAC082501ABA +:10CC000050F830194068F2081900E08000C7302859 +:10CC1000406EF00E1900E08000A4401AF1DAC0C1A5 +:10CC2000C050EEF8016458185F0850D8EEF801289B +:10CC3000306B700C70195D19009BE2CAFFC30E9C2B +:10CC4000F01F013D1895FE91FCAAEEF80128FAC9E3 +:10CC5000FF2C0A9A1AD9303B700C70D635F9FAC8F5 +:10CC6000FF245D162FFD1894580CFE90FC98EEF8EA +:10CC70000160E06900FE5828F20817104066435A28 +:10CC80005C76B488E21300304358E8130300E7E60B +:10CC9000100CF80B1608B09B4359B2ACEEF80160CB +:10CCA0005828E08102234358B0B54359B2C5435CCC +:10CCB000E2CBFFFB308A2FBCF01F01124358300A31 +:10CCC000F16A005D4359F36A005E43582B381AD865 +:10CCD00043790C9A1AD9EEC6FEB81AD40C99E068BA +:10CCE000888EEECBFFDC0E9CF01F010F2FDD40B9CC +:10CCF0005879E08101F1EEF801685848E08001E6DA +:10CD0000E08901DC5818E080014B5828E08001469A +:10CD1000FEF804441AD8EEFA0128EF38014D1AD86B +:10CD2000EF39014C1AD9EF38014B1AD8EF39014AC3 +:10CD30001AD9EF3801491AD8EF390148302B1AD9DE +:10CD4000740CFEFA0416F01F0106EEF80128307B81 +:10CD5000700C701930165D192F9DFE9FFB5EF1D58A +:10CD6000C003C0A0EEF80128306B700C70193016AB +:10CD70005D19FE9FFB52E0460020FE9BFFF5EC0B89 +:10CD80001603FAC9FFC0E2CAFFA1EECCFFCCF01F28 +:10CD900000F5FE90FF44CE7B310AE2CBFFD3FAC40C +:10CDA000FF84089CF01F00D7310AEECBFFCCFACCF1 +:10CDB000FF74F01F00D4E0450020FE9BFFD5FAC6AB +:10CDC000FFC00A9AE2CBFFA10C9CF01F00CE0A988C +:10CDD0000C99089CE06A0100320BF01F00E3C1EBE4 +:10CDE0005C7BFACAFF50E2CCFFA1F01F00C94318D8 +:10CDF0005808CB90F3D3C0105019EDB9000CCB31CB +:10CE000043282028FAC9FFC8109A5188149B00981B +:10CE1000EEFC0168F01F00C7CA61431B1788F1D8F8 +:10CE2000C00250F81789F3D9C041C050EEF8016430 +:10CE300058185F0950D94328F0CA0002E04A002080 +:10CE4000FE9BFF922FEBFACCFFC0F01F00AEEEF975 +:10CE50000128306B720C72185D18CEFAEEF80128BA +:10CE600030091AD9129A700C70D6FAC8FF285D16CC +:10CE70002FFD1893580CFE90FB92EEF5012818999F +:10CE8000EECBFEB84358E06A888E6A0C6AA65D163F +:10CE9000069CF01F009DFE9FFB82EECEFF54320BDE +:10CEA000500E1C9CF01F00B1C1F1EF4C00ECFE9F36 +:10CEB000FD46EEF80128FEFA02B6700C303BF01F7A +:10CEC00000A8EEF80128FEFA02AA700C303BF01F11 +:10CED00000A4EEF8010C5808FE90FB613008EF4802 +:10CEE000010CFE9FFD1FEEF80128FEFA028A700C6D +:10CEF000303B3016F01F009AFE9FFA8F42EC580C20 +:10CF0000FE91FBB7EEF8017C5808C061EEF8018095 +:10CF10005808FE90FBC342F830091AD8069A1AD96D +:10CF20000E9C42F8FEFB0254F01F007B2FEDFE9F8B +:10CF3000FB36EEF801805808FE91FB18EEF9012847 +:10CF4000720C72B85D18FE9FFB111099303BEEF821 +:10CF500001605828C180E2CCFFC31AD9EEC8FFBCDB +:10CF6000EEFA012830691AD830181AD930091ADCBB +:10CF7000740C7466069A5D162FCDFE9FFC11302B43 +:10CF80003209CE6BFACCFF84CE9B5875FE98FEEC2E +:10CF9000EAC60008FE9FFE264F98CBDA4F98CBBA20 +:10CFA000EDB0000CFE91FAB0EEF800A45808FE9027 +:10CFB000FA6B3018406EF00E1900C490406AF20A05 +:10CFC0001900FE91FAA1F1D4C003FE91FA5DF6C8F2 +:10CFD00000085C88109550785C750A9CF01F00482A +:10CFE0001896FE90FA51E2C4FFA11899089AEA0B2C +:10CFF0001603EECCFFCCF01F005BC2310A9A0C9BEB +:10D00000089CF01F00400C9CF01F003F4078EA098C +:10D0100016085C58E369005DE368005E5C59F1E95D +:10D020001084FE9FFA711ADA1AD4EEF801284D6ABC +:10D03000700C302B3FF6F01F004A2FEDFE9FF9EDEC +:10D040000C9C3FF6F01F0030FE9FF9E7FAC6FF8404 +:10D05000310AE2CBFFD30C9CF01F002A310AEECB41 +:10D06000FFCCFACCFF74F01F00270898E2C9FFA19B +:10D070000C9CE06A0100320BF01F003BE339005DBD +:10D08000E338005EF1E91084FE9FFA3E0E9CF01F2B +:10D09000003FEEFC0104F01F003EFE9FFC480C9A8E +:10D0A000069BEEFC0108F01F002BEF4C010CFE91DB +:10D0B000FC293015FE9FFC2F5888C0A05908FE910E +:10D0C000FE294B48FE9FFE284B38FE9FFE254B381D +:10D0D000FE9FFE22401A0C9BE21A02000E9C3016A4 +:10D0E000F01F0016FE9FF999435C302AE2CBFFFD4A +:10D0F0002FDCF01F0004FE9FFDDC0000800092008A +:10D10000800091DC800091E88002575C8002BB08BF +:10D110008003E0488002C140800091D08002C19825 +:10D120008000917C8002C1E08003E1DC800261D458 +:10D130008002B4248002B9308002C2748003E0848B +:10D140008003E1788002B354800257CC8002914C76 +:10D1500080028FB08003C6288003E19080023A1AD3 +:10D160008002D8A080029B4080028F488003E0F0BC +:10D170008003E1308003E14C8003E0048003DF089A +:10D180008003C8E48003DFC88002B9EC80025770D6 +:10D1900080039A748003DF1080039A6CD431204D91 +:10D1A0001894F8F80128E8F9016416955909F9B3BB +:10D1B0000002F9B301011492700C1A9070991A9B35 +:10D1C0005D19C635E8F80128FAC9FFF8300A1AD9FE +:10D1D000303B700C70D635F9FAC8FFF05D162FFDA4 +:10D1E0001891580CC520E8F80160E06900FE402A5B +:10D1F0005828F2081710B4880697E8F800A4ABB7CF +:10D200005808C050E0680900E7E810075805E068D2 +:10D210000400EFD8E1375802F9B80108EFD8E13738 +:10D220004028F3D7C108B09940283006B0A740295C +:10D23000B2B64028308AB0C6E8C5FF04402C0A9B2D +:10D240002FBCF01F00130A9C308BF01F00124028E7 +:10D25000F166005D4029F366005E0E99E219010057 +:10D26000FBF81002F9BA014DF1DAE1091AD9404888 +:10D2700000991AD8069A1AD1089CE068888EE8CBE3 +:10D28000FFDCF01F00052FDD2FCDD832800091DCB0 +:10D29000800239EA8002C1E0EBCD40804879720813 +:10D2A000201893081897C031F01F00050E9CF01F3E +:10D2B0000005E3CD8080000000007AB48002D2F83F +:10D2C000800091E8EBCD40C048976E065806C041FB +:10D2D000F01F0008C0916E082FF8304C8F08F01F27 +:10D2E0000006E3CD80C00C9CE3CD80C000007AB482 +:10D2F0008002D30480028F24D401F01F0002D802E0 +:10D300008002D996D401F01F0002D8028002D9947D +:10D31000D4211789179A17B8F1E9118817A9F1EAEA +:10D320001108F1E91088990817CA17D8B168F1EA0D +:10D33000118817EA17F91258F1EA10889918F73A84 +:10D340000008F739000BF7380009B168F1EA1188D5 +:10D35000F73A000A1258F1EA10889928189EF73A0D +:10D36000000CF738000DF739000FF8C5FFE4B1687D +:10D37000F73C000EF1EA11883007125849B4F1EC7D +:10D38000108C49B69D3CC038149C2F05E80707084F +:10D390002F0EFCF9FFF0F3E82189EC0C0F88E2185E +:10D3A000FF001059EC0C0F98E61800FF1059EC0C18 +:10D3B0000FB8F1D8C1081059FCF8FFF4EC0C0FAB12 +:10D3C000A96BE61BFF0016599D091059FCF8FFF8E0 +:10D3D0009D1910599D29FCF8FFFCF3E8200A8B0ADF +:10D3E0002FF758A7CD21D8228003E2F08003E6FC76 +:10D3F000EBCD40FE1892F01F002F0493E4CBFF60AA +:10D40000E4C4FFFCE4C5FF5CE4C6FFF8E4C7FF58D2 +:10D41000E4CEFFF4E4CCFF54E4C1FFB06609760823 +:10D4200087089709680A6A0889088B0A6E086C09D8 +:10D430008D088F097C0A78089D08990A2F03210B13 +:10D440002F0421052F0621072F0E210C023BCE7140 +:10D45000E4C4FFF030134985498608972F046E0A0B +:10D46000EC0A0F98EA080F9EEC0A0F88EA080F9C56 +:10D47000EC0A0FB8EA080F9BEC0A0FA8F809150888 +:10D48000FC0A1510F3EC1389F5EE130A1659EA0895 +:10D490000F9BF6081518F1EB1288105914590EA9B4 +:10D4A0000E34CDE12FF358A3CD91E3CD80FE0000E3 +:10D4B0008002D3108003E2FC8003E6FCD431209D7F +:10D4C000F736000E505A178A780917B8F1EA118812 +:10D4D000179A1258F1EA210817AEF1EE208E506E1D +:10D4E000781817CA17F9105917D8F3EA2189F3E801 +:10D4F000210917EEF3EE208E507E7828F7390008C8 +:10D50000F73A000B105AF7380009F5E9218AF73984 +:10D51000000AF5E8210AF5E920827839F73A000C8B +:10D52000F738000FFEF7034412581894F1EA2188E7 +:10D53000F739000DF8CAFF60F1E92108500AF1E659 +:10D5400020800E91E0081618406AEE080326F3DAF0 +:10D55000C008F1D2C208EE090329EE080328504999 +:10D560005038407AEE0A0F9950296878684B105667 +:10D570004068EE000FACEE080FBA4079165AEE097B +:10D580000F8BF6081508F1EB1388F8091518105AD7 +:10D59000F3EC1289EE020F9C125AF8081510F1EC08 +:10D5A0001308F5E82008685E68654079EE090FBB4E +:10D5B00050884068EE020F8C1C5BEE080FAEF80836 +:10D5C0001508F1EC1388EE000F9A105BFC09151892 +:10D5D000F4081510F3EE1289F1EA1308125B407992 +:10D5E000F7E82003EE000F8BF6081508F1EB13881F +:10D5F000EE020FBCEE090FAE0A5CFC091518105CB8 +:10D60000F3EE12894068125CEE080F9B404A4048D6 +:10D61000F6091510A968F3EB1309F1EA1388F9E983 +:10D620002000105640394038B968F1E912882E04BC +:10D63000105640294028B169400AF3E81309EDE982 +:10D6400020021434C770E4081618408AF3DAC008C0 +:10D65000E208032EE2090326F1D0C208E2030F9983 +:10D66000E20803255019E2020FACE2030F8B6809B0 +:10D67000F6081508F1EB1388E20A0FBA125AF809F6 +:10D680001518105AF3EC1289E2000F9C125AF80890 +:10D690001510F1EC1308F5E82008E2030FBB506801 +:10D6A00040886819E2000F8AE2080FAC125BF408A8 +:10D6B0001508F8091518F1EA1388F3EC1289E2004D +:10D6C0000FBAE2020F9C105BF8081510125BF1EC28 +:10D6D0001308F7E8200850786829E2030FAC125AC3 +:10D6E000F8091518F3EC1289E2020F8BF6081508F9 +:10D6F000F1EB1388105A125A4089E2090F9B6839DE +:10D70000F6081510F1EB1308125EF5E82002EC099B +:10D710001508EA081518F3E61389F1E51288125E78 +:10D720004019105EB1694018F3E81309FDE92000C3 +:10D73000C0AB4089F1D3C1084CDBFDD9C008F60865 +:10D740000706E40A1618EBD0C208F60A0709F60520 +:10D750000708F60E070CF9E9118CF3D3C008F9E8B5 +:10D76000110C4088B988F608070AF6090708F3D2B1 +:10D77000C208F1EA1188F609070AF3D0C108680E59 +:10D78000F1EA1108F609070AF1EA10881C58F009B5 +:10D790001618405AB4B8B4894059F00A1610A9882E +:10D7A000B29AB2A8E6091618F609070AF3D0C0081B +:10D7B000F6090708F1EA1188408AF3DAC208F60987 +:10D7C000070AF3D2C108F1EA1108F609070A40591D +:10D7D000681EF1EA10881C58B2F8F0091618405A71 +:10D7E000B4C94059F00A1610A988B2DAB2E8E009C3 +:10D7F0001618F609070AF3D2C008F6090708F3D38A +:10D80000C208F1EA1188F609070AF1EA1108408A0C +:10D81000F3DAC108F609070A4059682EF1EA1088C0 +:10D820001C58F368000BF0091618405AF5690008F7 +:10D830004059F00A1610A988F36A0009F368000A33 +:10D840006839405AF9E6108C125CF8081618F80985 +:10D850001610F56C000FF568000CA98CF569000D29 +:10D86000F56C000E2F7DD8328003E2FC8003E1F0DE +:10D87000EBCD40C01897590BC030E3CF80C0E06CAF +:10D8800000B0F01F00061896CF900E9BF01F00040A +:10D890000C9CE3CD80C00000800092008002D3F099 +:10D8A000D431209D129714961895500B308A0C9BFA +:10D8B000FAC2FFE4049CF01F0034ECCBFFF8400AEE +:10D8C0000E9CA37AF01F00300A9C310BF01F002F32 +:10D8D0001893C57040082018EE08003840095028F9 +:10D8E0005C39400A5C59F40A00285019E9D8C0088C +:10D8F0003050FAC7FFF4FAC1FFEC40095809E08A3A +:10D90000002940251296308A049B0E9CF01F001EB1 +:10D91000FB390013E806000812580A9BFB68001345 +:10D92000308A029CF01F00180E9A0E9B069CF01F76 +:10D930000018308A0E9B049CF01F001320160A9CCE +:10D94000308A2085029BF01F00105806FE99FFDDEB +:10D95000401A2010E80A0008E9D8C0085BF0CCE1C2 +:10D96000069CF01F000C049C3A691988F208180004 +:10D97000C0812FFCFAC8FFDC103CCF812F7DD83A44 +:10D980002F7DDC3A800091DC8002D8708002D4BC0C +:10D99000800091E85EFD5EFCD4311A97202D109E28 +:10D9A000129514965809C4911638E0880057F0086B +:10D9B0001200C0D0F608094BF0091120FC08094EEE +:10D9C000F4090A49F4080946F3EB100BFC0516109C +:10D9D000F9DEC010F6050D0AEC0816101499F1EBEB +:10D9E0001108B93A103AE088000C20191C08103EC2 +:10D9F000E08B0007103AF7B90B01F1DEEB08F00AF3 +:10DA0000010BEDD6C010F6050D0AEDEB11061498CA +:10DA1000F40C024C0C3CE088000A20181C060C3E5A +:10DA2000E08B00050C3CF7B80B01F1E9110B300C51 +:10DA3000169A189B2FEDD8321639E08B0051F20C54 +:10DA40001200C53114385F8916355F381049F8095E +:10DA50001800C450301BC4585808C0513019F2087F +:10DA60000D08109EFC081200E08100911C1BFC05B3 +:10DA70001610F3DEC010301CF6050D0AEC08161067 +:10DA8000F4090243F1EB1108149B1033E088000CF9 +:10DA9000201B1C08103EE08B00071033F7BB0B0166 +:10DAA000F1DEEB08F0030103EDD6C010E6050D0230 +:10DAB000EDE311060498E40902490C39E088000AF4 +:10DAC00020181C060C3EE08B00050C39F7B80B0142 +:10DAD000F1EB110B169A189B2FEDD832300B169CD8 +:10DAE000169A189B2FEDD832F20C0945F80E11202A +:10DAF000F00C0943F40E0A46F00E0A48F60E0A4EE0 +:10DB00000A48F0011610FC010D04EEE5FFF8F60CD2 +:10DB10000949EBD8C010EDE910090896F20E16106D +:10DB2000EEF4FFF8EC05024BFDE4110E1C3BE0881F +:10DB300000072016100E1C38E088006D161EF3D961 +:10DB4000C010FC010D00F3E11109009BE005024E3D +:10DB5000123EE0880007201B10091238E0880055AB +:10DB6000F7E6110B1C19F60306420639C0935F094C +:10DB7000F40C094C043C5F38F3E80008C020201B7B +:10DB8000300C169A189B2FEDD832F6080949FC087C +:10DB9000094EF0011120FC051610F4010A42F601AD +:10DBA0000A411242E2050D00F3DEC010E406161031 +:10DBB0000093EDE11106E009024C0C3CE0880007FF +:10DBC00020131C060C3EE088002CEC0C0101F7D25F +:10DBD000C010E2050D00F7E1110B009CE0090241C5 +:10DBE0001631E088000C201C1C0B163EE08B000751 +:10DBF0001631F7BC0B01F7DEEB0BF4080946021BEC +:10DC0000F9E3110CC3AB123EF3D8EB09F7BB0B01E0 +:10DC1000CA8B1C3BF7B60B01FDD8EB0EC90B0C3CB5 +:10DC2000F7B30B01EDDEEB06CD1BD703D40130AA11 +:10DC3000300BF01F0002D8028002F0ECD4014848FB +:10DC4000169A189B700CF01F0003D802000005986C +:10DC50008002DC54D421F40B024BF01F00151897FE +:10DC6000C230F8FAFFFCE01AFFFC204AE04A002428 +:10DC7000E08B00181898593AE088000F300910A975 +:10DC800010A959BAE088000910A910A9E04A002497 +:10DC9000C03110A910A9300910A991199109C048E3 +:10DCA000300BF01F00040E9CD82200008002E2BC62 +:10DCB0008002E8BCD421300EF6C80001F60614013B +:10DCC000F808002818991897C07870046E050EA4FB +:10DCD00091052FFE20480C3ECF95F40B000B1897B2 +:10DCE000F6C80001300EF8080028A15BC078700566 +:10DCF0006E060EA591062FFE2048163ECF95F4C85D +:10DD00000001A15AF808002C3008C078780E720B78 +:10DD100012AE990B2FF8204C1438CF95D822D70388 +:10DD2000D431205D502C503816971496580C5F0B48 +:10DD300058075F0C1295F9EB100B40E33008F00B1D +:10DD40001800E081028058095F09580A5F08F3E86B +:10DD50000008F6081800E08102764BE4402B6808C2 +:10DD60001638E0840270EE08032C580CE080026B39 +:10DD70004B9BF01F003AC06168082FF88908E08FBC +:10DD8000026268085808C05130184B598908930836 +:10DD90005806C14032D90D88F20818005F0232B926 +:10DDA000F20818005F08E5E81008C0805802F9B2D0 +:10DDB0000101F9B200022FF6C0884AACF01F002A18 +:10DDC000F9B20102F9B200004A5870085818C61199 +:10DDD0005812C2B049F95822C4A0129872043001F6 +:10DDE00032DB32BA7009F2C0FFFFEE09032C580C87 +:10DDF000E080023B1989F6091800C0805803E080D2 +:10DE00000225F4091800E081022150015014492B29 +:10DE1000F01F0012C411EE04002C029B301A2FF4E4 +:10DE2000F01F0012E08F022148A87009EE090328B4 +:10DE30005808C2F0118A32DBF60A1800C2A0580353 +:10DE4000E080020832BBF60A1800E0810203C21823 +:10DE500000007AB88003EC008002ECC800007ABCB5 +:10DE60008003EC04800326948002DCB47208EE0880 +:10DE700003285808C0E0118832D9F2081800C09071 +:10DE80005803E08001E032B9F2081800E08101DBBC +:10DE90003009500950195805E08000A44BE4680887 +:10DEA000302AEE08032C4BDBF01F003DC0D0580396 +:10DEB000E08000986808EE080328118932B8F0095C +:10DEC0001800E081008F4B7468085818E081008AC0 +:10DED0004B187008302AEE08032C4B0BF01F003053 +:10DEE000F9B80002E9F80A004AB468084AD1EE0815 +:10DEF000032C620833DB100CF01F002B1893C0E1D9 +:10DF00006808EE08032CF01F002968096208EE0972 +:10DF10000323F80801081803C08868086209EE089E +:10DF20000328F8080108121850430A910C933FF493 +:10DF300030001096C4784989720849A9EE08032C6C +:10DF400072080C9A100CF01F0016C3A1620CF01F8F +:10DF500000171836C051069600944043C3C85BF4BE +:10DF6000C2E0493870085808C7C062081AD848A8E3 +:10DF700070096E08EE090329A564EA04030A1ADA97 +:10DF80001AD91AD848B8700848BB702CF01F000B7B +:10DF90002FCDC67800007AB88003EC008002E7102D +:10DFA00000007ABC8002ECAC8002EDD0000004A43A +:10DFB000000005988003EC1480031FE800942FF004 +:10DFC0002F01620B580BCB81069640435BF4C031A6 +:10DFD0000898C0A8E8081504EA0800087018C048A6 +:10DFE0003FF83003109458065F19F3E403F9C03189 +:10DFF0003006C5484BE162084BE3EE08032966088A +:10E000000C9CF208070BF01F003C1896C2D14BB8CD +:10E0100070085808C11062096608EE090329F20861 +:10E0200007081AD86E081AD84B5870084B5B702C2A +:10E03000F01F00352FED4AF8700B2FFB910B4AC9EA +:10E04000720AEE0A032CF80B070C300BF60C1800C2 +:10E05000F7BA00FFF3FA0A00F9B90001F1F90A0072 +:10E0600033F8109CC818199833A9F2081800C0306A +:10E070003008C08819A9F0091800F9B80002F9B8E9 +:10E08000010149CA49A97209EE09032974030D8ADD +:10E090002FF3F203000349D9930A5818C1505828A6 +:10E0A000C0405808C6C0C208078933D8F009180014 +:10E0B000F7B300FF4968078A3009F20A1800C10166 +:10E0C00030069106C718078933D8F0091800F7B34E +:10E0D00000FF30080789F0091800C1B048C8910353 +:10E0E0003019484891093006C5F8000000007AB898 +:10E0F00000007ABC8002ECAC000004A4000005988B +:10E100008003EC5080031FE8000004A000007AC0E8 +:10E110004C08402B70082FF81638C2954BE8700851 +:10E120005808C1C06E084BD71AD86E084BCB702C5C +:10E13000F01F003C2FFD5BF4C0906E08A5644BAB54 +:10E14000EA0403091AD9702CC0686E080D894B7B4C +:10E150001AD9702CF01F00332FFD4AE933A8720A38 +:10E16000109C2FFA930A4B299308C6D84B19EE0836 +:10E17000032A3018930A10964AF9C1584AE95BF409 +:10E18000C0D1720A2FFA930A4A2B760BEE0B032B9F +:10E19000F60A070AF00A1800C03130189308300850 +:10E1A0004A49109693085802C1B140094A285809B3 +:10E1B0005F19700858185F08F3E80008E4081800B1 +:10E1C000C0F04018ECCAFFFFEE08002C400BF01F17 +:10E1D000001B40182FF8F006000648E8C0A8496860 +:10E1E00070085818C07148B870092FF9F206000677 +:10E1F00091065BF4C240403B580BF7F41A00A5644B +:10E2000008056A3C6A285808C1E0910C300CC1B876 +:10E2100000007AB8000004A4000005988003EC70A8 +:10E2200080031FE88003EC948003EC9C000004A0B2 +:10E2300000007AC000007ABC8002DCB448C8700CD0 +:10E24000C0283FFC2FBDD83291002FF1FE9FFDCC9E +:10E25000488B97084888F2CAFFFF3019910A129C30 +:10E2600048389109CF0B48489104CECB000004A058 +:10E2700000007AC000007AB8D40130091AD9129887 +:10E28000F01F00022FFDD8028002DD20D401484893 +:10E29000189B700CF01F0003D802000000000598C6 +:10E2A0008003217CD4014848189B700CF01F0003A8 +:10E2B000D8020000000005988002E2BCD431F6C705 +:10E2C000FFF518955967F9B70810F9B80BF8EFD8AA +:10E2D000EB2716375F38F1E713F8C05030C899388C +:10E2E000E08F01F4F01F0050E04701F7E08B001CC5 +:10E2F000EE0316034CD8F003003870361036C061B8 +:10E30000ECC8FFF870361036C0C06C18E018FFFC7F +:10E310006C3AEC0800090A9C6C289528913AC4785C +:10E320002FE3C4D8EE081609C041EE031603C278E5 +:10E330005848E08B0006EE0316062C83C2085948A5 +:10E34000E08B0005F0C3FFA5C1A8E0480054E08BB6 +:10E350000006EE03160C2923C128E0480154E08B87 +:10E360000006EE03160F2893C0A8EE031612E0482D +:10E370000554E088000437E3C02828434ABAF40370 +:10E38000003A7436C1986C19E019FFFCF207010BD2 +:10E3900058FBE08A00042013C1186C38580BC0B534 +:10E3A0006C2AEC0900090A9C912A95387218A1A8D8 +:10E3B0009318CBD810961436CE712FF349BAF4CCFB +:10E3C000FFF878261836C6F06C19E019FFFCF20742 +:10E3D000010858F8E0890091993C992C5808C055DB +:10E3E000EC0900090A9CCE3BE04901FFE08B0013D9 +:10E3F000A399F4090038702B8D388D2B9736912610 +:10E40000A3497418301BF6090949F1E91009951957 +:10E41000C4A8F20816095848E08B000AF20A16064A +:10E420002C8AC2488002E8CA0000059C5948E08B4B +:10E430000005F0CAFFA5C1A8E0480054E08B000623 +:10E44000F20A160C292AC128E0480154E08B000684 +:10E45000F20A160F289AC0A8F20A1612E0480554CC +:10E46000E088000437EAC028284A4C8BF60A0034BA +:10E4700068280838C0E17619A34A301EFC0A094A08 +:10E48000F3EA100A1099971AC0A870280838C060DB +:10E49000701AE01AFFFC1439CF9370398D398D282A +:10E4A00091369326E6081402301B4B84F608094B7C +:10E4B0006818103BE08B006EF7E80009C0B1E0136C +:10E4C000FFFCA17B2FC3C0382FC3A17BF7E8000955 +:10E4D000CFC0E803003E06921C916236C2E86C1A77 +:10E4E000E01AFFFCF407010858F8E08A00156C3ABE +:10E4F0006C299529933A0E99EC070007A1A9993741 +:10E5000099278D19EE0809088F2C8F3CA1A80A9C29 +:10E510008F18C0D86C395808C0F5EC0A000A741876 +:10E52000A1A80A9C95186C2893289139F01F00180F +:10E53000ECCCFFF8D83212960236CD212FF2F1D270 +:10E54000C002C0302F81CCAB1C98F3D3C002C08175 +:10E550006819F60811FFF3E800088918C078F0C9B7 +:10E560000008201370081238CF10A17B6818103BE8 +:10E57000E08B0010580BC0D00493C0382FC3A17B90 +:10E58000F7E80009CA71CFBB0000059C8002E8CC07 +:10E5900068236612E012FFFC0E325F39E4070108BF +:10E5A00058F85FAAF5E91009E08000A24C887001D4 +:10E5B0004C882F0170080E015BF8C0402811E01153 +:10E5C000FF80029B0A9CF01F004418965BFCC6E08B +:10E5D000E6020008103CC0320833C6814BFA7409C9 +:10E5E000E209000995091036C0A1F5D6C007C0712F +:10E5F000E20200026828A1A29112C4C84B5A740B0F +:10E600005BFBC0319506C068EC0900094B3A101954 +:10E610009509F1D6C003F00911085808F20817103F +:10E62000EDD8E1062808EC0100010A9CE3D1C007FF +:10E63000F0010101029BF01F00284A885BFCEC0CF2 +:10E640001700F9B1000070090C1C8926020C120198 +:10E65000A1AC91018D1C0833C1D058F2E08B0005AC +:10E6600030188D18C238305920C2E012FFF8E60287 +:10E670000008912991196618F1D8C001E5E8100841 +:10E68000871858F2E0880007E6CBFFF80A9CF01FD5 +:10E6900000144949720A491870081438F3F8BA008E +:10E6A0004919720A1438F3F8BA0068287018E0188B +:10E6B000FFFC0E385F390E1858F85FAAF5E910090B +:10E6C000C1600A9CF01F0009D83A000000007ACC13 +:10E6D000000009A88002EBC800007AD08003217CEA +:10E6E00000007AC800007AC48002E8CC6826A1A89D +:10E6F0000E99A1A98D19EC0700070A9C89278F188C +:10E70000F01F0003ECCCFFF8D83200008002E8CC08 +:10E71000D4013008C0D8F808070EF6080709201AF7 +:10E720002FF8F20E1800C040FC09010CD802580A5C +:10E73000CF31149CD802588AC2F5F9EB1009E219BE +:10E740000003E0810097E04A0020C3B4F4081402FB +:10E75000F0091108FE09002F7669996976599959CF +:10E7600076499949763999397629992976199919E5 +:10E7700076099909F608002BF8080028E01A00032A +:10E78000F40A1104FE0A002F17A9B0A91799B0992D +:10E790001789B0895EFCF40A1109FE0A002F17F9E7 +:10E7A000B8F917E9B8E917D9B8D917C9B8C917B965 +:10E7B000B8B917A9B8A91799B8991789B8895EFC8B +:10E7C000EBCD40C01899220AB707B326B707B32686 +:10E7D000B707B326B707B326220ACF742F0AC0653E +:10E7E000B707B326B707B326210A5C3AFE0A003FF3 +:10E7F000D703D703F736000EF366000EF736000D89 +:10E80000F366000DF736000CF366000CF736000BCC +:10E81000F366000BF736000AF366000AF7360009C4 +:10E82000F3660009F7360008F3660008F7360007BC +:10E83000F3660007F7360006F3660006F7360005B4 +:10E84000F3660005F7360004F3660004F7360003AC +:10E85000F3660003F7360002F3660002F7360001A4 +:10E86000F3660001F7360000F3660000E3CD80C0D8 +:10E87000201AF60A0709F80A0B09CFB15EFCD40189 +:10E88000183BC192F60A0009123CC152F80A000B6B +:10E890003008C068F208070E201AF6080B0E201880 +:10E8A000580ACF91D802F6080709201AF8080B0970 +:10E8B0002FF8C0283008580ACF71D8021898C038ED +:10E8C00010CB201A580ACFD15EFC5EFC5EFCD70349 +:10E8D000D4014848169A189B700CF01F0003D80208 +:10E8E000000005988002E8E8D431201D16941892A3 +:10E8F000149B5804C051F01F005B1895C5B9500A0D +:10E90000F01F0059400BE8C10008F6C6FFF5621C75 +:10E910005966F9B60810F9B80BF8EDD8EB2616369B +:10E920005F38F1E613F8C05030C830058538C42987 +:10E930001890E010FFFC0C30E08401124CB8E200AB +:10E94000000970250A39C090721AA1CAF20A000A99 +:10E95000741AEDBA0000C220721AE01AFFFCF4002B +:10E9600000030A39C131ECC7FFF00E33C195E2064E +:10E9700000090C13A1A393139129049C6218089514 +:10E98000F1D8C00110468316C1390C33C0957228E6 +:10E990000297723993289139CE48300A1499EDBC08 +:10E9A0000000E080009D6207E20701076E1CE01C8A +:10E9B000FFFC5809C5E0F80000030A39C4811403BC +:10E9C000ECC9FFF01233C5556E3A6E299529933A7A +:10E9D000EEC5FFF8E0CA0004E04A0024E08B002501 +:10E9E0000A99593AE088001A09098B0909098F39EF +:10E9F000EEC9FFF059BAE0880011090B930B090921 +:10EA00008F59EEC9FFE8E04A0024C071090A930A51 +:10EA1000EEC9FFE0090A8F7A090A12AA680A930A66 +:10EA2000681A931AC0785008089B0A9CF01F0010BF +:10EA30004008EE0600090C13A1A393139129049C2E +:10EA40006E18F1D8C00110468F16CB2814030C3372 +:10EA5000C10572287239932891396E286E39C0F831 +:10EA60008002E2BC8002E8CA0000059C8002E87EC9 +:10EA7000F80000030C33C3356E396E2893289139A2 +:10EA8000E0CA0004EECCFFF8E04A0024E08B00244A +:10EA9000593AE088001A0908990809088F38EECC1D +:10EAA000FFF059BAE08800110908990809088F5841 +:10EAB000EECCFFE8E04A0024C07109089908EECCCA +:10EAC000FFE009088F78090818A8680899086818ED +:10EAD0009918C478089BF01F0039C438049CF01FB3 +:10EAE00000381895C3A06218F8C90008A1C8E20848 +:10EAF00000081039C07172130297E013FFFC000385 +:10EB0000C308E0CA0004E04A0024E08B0020089912 +:10EB10001898593AE0880014130B10AB130B10AB84 +:10EB200059BAE088000D130B10AB130B10ABE04A81 +:10EB30000024C051130A10AA130A10AA130A10AA1B +:10EB4000720A910A72199119C048089BF01F001BA4 +:10EB5000089B049CF01F001B049CC2A80093029712 +:10EB6000E60601096E1858F9E0880016F1D8C001D0 +:10EB7000EDE810088F181298A1A8EE06000BF60910 +:10EB8000000997187218A1A82F8B9318049CF01FE6 +:10EB9000000DC0B8F1D8C001E7E810088F18EE03E7 +:10EBA00000036618A1A88718049CEEC5FFF8F01FA3 +:10EBB00000060A9C2FFDD8328002E87E8002E2BC6B +:10EBC0008003217C8002E8CCD42130081897487655 +:10EBD000169C8D08F01F00065BFCC0516C0858089D +:10EBE000EFF81A03D822000000008CC48002F1E87C +:10EBF0005EFDD703D421217DE06802041697BA6830 +:10EC0000504C500CF01F000B3008512850D848A829 +:10EC100050983FF8BA784898505C501CFAC9FF9059 +:10EC20000E9A700C1A9BF01F00062E9DD822000031 +:10EC30008002EDD08002EBF00000059880030C4CC0 +:10EC4000D421217D4988FAC9FF9016977006580B88 +:10EC5000C064E068008B3FFC8D38C228580BF60872 +:10EC600017005807F9BB01FFEFDBE10850585028A7 +:10EC7000E0680208BA683FF8504C500CBA781A9B0A +:10EC80000C9CF01F000A5BFCC044E068008B8D38D0 +:10EC90005807F9B90100FBF81000F1F91E002E9D8C +:10ECA000D8220000000005988002F5685C5BC0284F +:10ECB0002FFC19885808C050F6081800CFA15EFC38 +:10ECC000580B5E0C5E1DD703F9EB100AE21A000325 +:10ECD000C341780A76095CEAC170123AC151781AC8 +:10ECE00076195CEAC110123AC0F1782A76295CEAFA +:10ECF000C0B0123AC091783A76395CEAC0502F0C15 +:10ED00002F0B123ACE70F9DAC308F7D9C3085E0C9C +:10ED1000161C5E1CF9DAC208F7D9C2085E0C161C74 +:10ED20005E1CF9DAC108F7D9C1085E0C161C5E1C1E +:10ED30005C5A5C59121A5EFA178A1989580A5E09D8 +:10ED400014195E19179A1999580A5E0914195E194F +:10ED500017AA19A9580A5E0914195E1917BA19B920 +:10ED6000580A5E0914195E192FCB2FCCCE6B000008 +:10ED70003008F6080709F8080B092FF85809CFA141 +:10ED80005EFCD703D4014848189B700CF01F0003A9 +:10ED9000D8020000000005988002ED9CD42118974D +:10EDA0001696169CF01F0008F8C5FFFF0E9C0A9BE4 +:10EDB000F01F00061897C0500A9A0C9BF01F000421 +:10EDC0000E9CD8228002EDD08002E2BC8002E736A1 +:10EDD00030091898C0282FF8118AF20A1800CFC1FC +:10EDE000F00C010C5EFC580AC0815EFA580AC0B0F3 +:10EDF0005808C0902FFC2FFB201A19881789F0099A +:10EE00001800CF50198C1788101C5EFC3008103A7F +:10EE10005E0CF6080709F8080B092FF85809CF818E +:10EE2000103A5E0CF8080B092FF8CFBBD401484804 +:10EE3000169A189B700CF01F0003D802000005986A +:10EE40008002EE44D421300816951696C0282FF67D +:10EE5000580AC060201A0D89F0091800CF910A16CF +:10EE6000ECCBFFFFF01F00071897C0800A9B0C9A9D +:10EE7000F01F00053008EE060B080E9CD82200009B +:10EE80008002E2BC8002E736D42118981696580B0F +:10EE9000C0C03007C0481897F8C8FFFF109C0C9BF3 +:10EEA000F01F0005CF91C048F01F000318970E9C7B +:10EEB000D82200008002ECACD421201D4A351897DE +:10EEC0006A04E8F600E85806C351500B350CF01FF1 +:10EED00000206A08E94C00E8F0F900E89326930660 +:10EEE0009316F0F900E893469336F0F900E893663C +:10EEF0009356F0F900E893B693A6F0F900E893D69C +:10EF000093C6F0F900E893F693E6F0F900E8F346CB +:10EF10000044F3460040F0F900E8F346004CF346A5 +:10EF20000048F0F900E8F366001CF0F800E8400B38 +:10EF30009196486870080E9CF0FA00E83019F01FAE +:10EF400000052FFDD8220000000005988002E2A4F1 +:10EF50008002EF54D421580CC041740C580CC2905C +:10EF600018981697113EC0A80C3EC0815809C030B1 +:10EF7000109CCF7B9508B889D8220F365806CF5100 +:10EF8000580EC051950E1C9CD822129810991697B5 +:10EF9000133E0F361C36C0A1580EFC091700F9BBF2 +:10EFA0000100F1FB1E009509D8225806CF31CEEBA7 +:10EFB000D822D703D431203D4CC8502C700116986C +:10EFC000113EE20E0706E2160008CFB1E04E002D1A +:10EFD000C041113E3016C058E04E002BC021113EFA +:10EFE00058095F0C59095F053007F9E51005EE0572 +:10EFF0001800C1E0E04E0030C131118535843783FF +:10F00000E80518005F04E60518005F05E9E510054E +:10F01000EE051800C050119E31092FE8C098580C19 +:10F02000C070E04E0030F9B90008F9B9010AE06C8F +:10F03000FFFFEA1C7FFF3007FC1580000E930E36A1 +:10F04000F80517000E9CEA090D0408925005E20E1F +:10F050000704E1D4C001F9B00137F9B000575010EE +:10F06000FCC500300890E2100004C0814010E9D4D3 +:10F07000C002FC0001055804C1C01235C1A4043C03 +:10F080005FBEFDE713FEE60E1800C101043C5F0EF3 +:10F0900040070E355F97EFEE000EE60E1800C061D8 +:10F0A000B33C3017EA0C000CC0283FF7113ECD0BE3 +:10F0B0005BF7C0E1E069FFFFEA197FFFFC1C8000FD +:10F0C00040205806F20C170032298139C0485806F2 +:10F0D000FBBC0100580AC0705807F9B901FFF1D90B +:10F0E000E10B950B2FDDD8320000049CD401485869 +:10F0F0001499169A189B700CF01F0003D802000098 +:10F10000000005988002EFB43028D6733FFC358BA1 +:10F11000580C5E4C482A950B5EFC000000008CC425 +:10F120003058D6733FFC358B580C5E4C482A950BF3 +:10F130005EFC000000008CC43038D6733FFC358B79 +:10F14000580C5E4C482A950B5EFC000000008CC4F5 +:10F150003048D6733FFC358B580C5E4C482A950BD3 +:10F160005EFC000000008CC430B8D6733FFC358BC9 +:10F17000580C5E4C482A950B5EFC000000008CC4C5 +:10F180003098D6733FFC358B580C5E4C482A950B53 +:10F190005EFC000000008CC4D421210D16971A9B40 +:10F1A000F01F0011C0343FFCC1C84008AE08401831 +:10F1B000AE1840288F184038AE484048AE584058E6 +:10F1C000AE684068AE7840888F4840A88FB840C885 +:10F1D0008FC840D88F5840E8300C8F7840F88F980F +:10F1E0002F0DD8228002F180D40148C87009580937 +:10F1F000C03148B99109489948AA7208F00C000C2E +:10F20000143CE08B0004930CC068F01F000730C86A +:10F2100099083FF8109CD80200007AF800008CC8CA +:10F220000000F00080031D20D431208DFAC4FFBC03 +:10F23000504B682E505812967C0B7005506E580B30 +:10F24000F40B17006803681140493008C2C92FFB4E +:10F25000325C178AF80A18005F1EF00A18005F1C5B +:10F26000FDEC000CF00C1800CF31580AE0800129A9 +:10F27000300C3FFA1890503A18941892F80C003C51 +:10F280001697507C4CDC0F3AF80A070E407C1C0C99 +:10F290004CBEFC0C070E201E500E4CAEFC0C070C96 +:10F2A000507C400C587CE08B00F84C7EFC0C032F0B +:10F2B000368BF60A1800E08000F0371BF60A1800BB +:10F2C000C07034CBF60A1800C051A3B4CE58A5B410 +:10F2D000CE380F8B36CAF40B1800C051A5B4EECB54 +:10F2E000FFFFCDB8A5A4CD88EBD5C005367CF80AC4 +:10F2F0001800E08B0027365BF60A1800C48234FB46 +:10F30000F60A1800C480E08B000C345BF60A180083 +:10F31000C3E0347BF60A1800C3A0344BC088358B99 +:10F32000F60A1800C2C0E08B0007355BF60A180029 +:10F33000C351C318363BF60A1800C2F0364BC0E87A +:10F34000370BF60A1800C250E08B000D36EBF60AB8 +:10F350001800C1F0E08B0014369BF60A1800C1E1DA +:10F36000C0E8375BF60A1800C0A0378BF60A180011 +:10F37000C060373BF60A1800C111C0B8EDB40004F4 +:10F38000C0A0EDB40005C0913020C0883040C068F6 +:10F390003030C0483010C0283000403B5BFBC040DC +:10F3A000E20B0920C7985860E08B00776C0AEACC22 +:10F3B000FFFF486EFC00032F8003EE088003ED641E +:10F3C0008003ECF88003ECAC8003ECCCF4CBFFF8CA +:10F3D0008D0BF4EA0000E605083AC0F8F4CBFFFC18 +:10F3E0008D0B740AE605093AC088F4CBFFF88D0B43 +:10F3F000F4EA0000E605083A0E9B1895C4E8620A94 +:10F400005BFAC0B150195028E06A0080300B029CB2 +:10F41000F01F004D40284019E4CC00010E9B503CE9 +:10F42000F20C0C49C3A8620A5BFAC0B1501950280B +:10F43000E06A0080300B029CF01F00434028401916 +:10F440002012300A0E9BE202092AF2020C49C2582D +:10F4500016976C0AF4CBFFFC8D0B740A0E9BE60525 +:10F46000093A2FF5C1A8F4C20030C068E4020022B6 +:10F470002FF7F40200120F8A580AC0E0230A589AA4 +:10F48000FE98FFF6C0982FF70F8A580AC050230A3B +:10F49000589AFE98FFFA0E9B407C30BAF40C180084 +:10F4A000FE91FEEE4042178C0A325F4AF00C1800C3 +:10F4B0005F1CF9EA000AF00A1800FE91FECB300842 +:10F4C000404E178AE2050021F00A1800FC091710C7 +:10F4D000E6050038069EC2A8620A583AC1E0E089F3 +:10F4E0000007581AC1A0582AC181C058585AC0C034 +:10F4F000C0B5C1386C0AF4CCFFF88D0CF4E2000002 +:10F50000F0E30000C1086C0AF4CCFFF88D0CF4E2C3 +:10F510000000F0E30000C0786C0AF4CCFFFC8D0C16 +:10F52000740A910A2FF52F882FC11235FE9AFFD643 +:10F530001C934052406E85059D0B404BE60B003CF2 +:10F540002F8DD8328002E8BCD42114977428580833 +:10F55000C0419518109CD822F01F000330088F1866 +:10F560008F28D82280032320D431FACD068850A9D1 +:10F57000169014971893580CC06078685808C031DA +:10F58000F01F004E4CE81030C0316600C0A84CD8C7 +:10F590001030C0316610C0584CB81030E7F000028F +:10F5A0008068EDB80003C04160485808C071009BF6 +:10F5B000069CF01F0046E0810B4080681099E2191C +:10F5C000001A58A9C3D18079300AF4091900C385FB +:10F5D000A1D8FB5805B86088FB4805CC60A8FB485B +:10F5E00005D4FAC8FFD4FB4805BCFB4805ACE0686D +:10F5F0000400FB4805C0FB4805B43008FB5905BAB8 +:10F600000E9A40A9FAC7FA54FB4805C4069C0E9B03 +:10F61000F01F002F506CC0950E9B069CF01F002D14 +:10F62000406EF9BE01FF506EFB0805B8EDB800064C +:10F63000E0810B058068A7A8A068E08F0B00300868 +:10F64000FAC4F9F85098FB480678409CFB480674C9 +:10F65000FB48067CFB48068050573FF8FB44067089 +:10F66000FB48052C506C1896069150204055C02838 +:10F670002FF50B88300B325AF60818005F19F40882 +:10F6800018005F181268F6081800CF314059EA09CF +:10F690000107C2E0FAF806780E088909FB480678E7 +:10F6A0008917FAF806742FF8FB4806745878E08931 +:10F6B00000132F84C1A8000080031F388003EF2CA3 +:10F6C0008003EF4C8003EF6C80031C388002F568E8 +:10F6D00080031D2CFACAF990402B029CF01F00A158 +:10F6E000E0810AA6FAC4F9F840680E0850680B8851 +:10F6F0003007EE081800E0800A8AEAC2FFFF3003F4 +:10F700005052FB6706873FFE50745043503E0690B0 +:10F71000508506920C944057C0683FFC0A97503CB5 +:10F72000C02830000F38C0281292E0480063E08003 +:10F7300001CCE0890045E0480039E0890026E04836 +:10F740000031E0840198E048002BE0800101E0896D +:10F75000000FE0480023E080008EE048002AE080AF +:10F76000008CE0480020E0810897C7B8E048002EF0 +:10F77000E08000F1E0480030E080017BE048002DAF +:10F78000E081088ACE28505750420897408540743F +:10F790001092E048004FE0800439E0890008E0481A +:10F7A0000044E081087DE08F01DEE0480055E08004 +:10F7B00005DFE0480058E0810873C428E048006F86 +:10F7C000C430E089001FE0480069C450E089000AA5 +:10F7D000E0480064C400E0480068E081085DC63984 +:10F7E000E048006CE0800163505750420897408524 +:10F7F00040741092E048006EE0810852E08F02ED04 +:10F80000E0480073E0800553E089000BE048007099 +:10F81000E08004F9E0480071E081083EC5295057B6 +:10F8200050420897408540741092E0480075E0808F +:10F8300005A0E0480078E0810833E08F06964CABE5 +:10F84000509BE08F06945057408508975042407473 +:10F85000E08F03DD50574085089750424074C83907 +:10F86000FB380687300AF4081800FE91FF5D320865 +:10F87000C6E8A1A3C58B0F89F2C800305898E08B69 +:10F88000001EEEC8FFFF300B2309F60B002BF20B16 +:10F89000001B1139F2CA0030589AFE98FFF7E04970 +:10F8A0000024FE91FF40E04B0020E08909C1201BAD +:10F8B000FAF90680123BC095C108FAF90680ECCA35 +:10F8C000FFFF1236C1F5C268FAC9F9781097F20B3A +:10F8D000003BF6F2FDA4C358FAC7F9841AD7109773 +:10F8E000FAC2FAD01AD2FAC8FBCC029C1AD8FAC8CB +:10F8F000F974FAC9FFCC40BAF01F001C2FDD780262 +:10F90000C208FACEF9781496FC040038F0F2FDA48F +:10F91000C18840A859F9E0890011F0CBFFFC50AB39 +:10F920007002FACCF978F8090038F142FDA42FF9F9 +:10F930001496FB490680C058700214962FC850A830 +:10F940005802FE94FEF15C32A3A3CEDAFB68068770 +:10F95000CEAA0F38E048002AC0A03009C7D800005E +:10F960008002F5488003EDD08002F2280F88F0C9AC +:10F9700000305899E08B001EEEC5FFFF300B2308C6 +:10F98000F60B002BF00B001B0B38F0C90030589918 +:10F99000FE98FFF7E0480024FE91FEC5E04B0020F2 +:10F9A000E0890946201BFAF80680103BC095C10883 +:10F9B000FAF90680ECCAFFFF1236C1F5C288FACA0E +:10F9C000F978F40B003BF6FBFDA4503BC3C8FAC921 +:10F9D000F9841AD9FAC8FAD01AD8FAC8FBCC029C12 +:10F9E0001AD8FAC8F974FAC9FFCC40BAF01F027AE3 +:10F9F0002FDD780C503CC278FACEF9780E95FC04D5 +:10FA000000381496F0F8FDA45038C1D840A859F930 +:10FA1000E0890014F0CBFFFC700850AB5038FACCF2 +:10FA2000F978403BF8090038F14BFDA42FF90E9509 +:10FA3000FB4906801496C07870090E952FC850397E +:10FA4000149650A840385808FE95FE690A97C6BA21 +:10FA5000F40B00190F38F209002BF0CA0030589A45 +:10FA6000FE98FFF83FFEF20E0C495039C5FAA7B3D5 +:10FA7000C5AA30092308F2090029F00900190F3836 +:10FA8000F0CA0030589AFE98FFF7E0480024FE9133 +:10FA9000FE4DE0490020E08908CBF2C4000130109F +:10FAA000FE9FFE42A7A3FE9FFE3F0F89F0091800AC +:10FAB000C0512FF7A5B3FE9FFE37A5A3FE9FFE34CE +:10FAC000A5B3FE9FFE3150575042089740854074C1 +:10FAD0000C99FAF806805800C1D01037C064FACCEF +:10FAE000F978F8070037C1D8FAC8F9841AD8FAC8E3 +:10FAF000FAD01AD8FAC8FBCC1AD8FAC8F974FAC9DD +:10FB0000FFCC0A9A0E9B029CF01F02332FDD19B81E +:10FB1000C2282FF61039C084FACBF978F6070037DF +:10FB2000EF38FDA7C18840A959F8E0890012F2CA50 +:10FB3000FFFC50AA7209FAC2F978E408003A2FF8DB +:10FB4000F549FDA4FB480680F1D9C008C04813B8A8 +:10FB50002FC950A9300EFB680648FB6E0687E08F60 +:10FB600006A7A5A30C92EDB30005C4D1FAF8068050 +:10FB70005800C1E01037C064FACCF978F8070037B4 +:10FB8000C1F8FAC8F9841AD8FAC8FAD00A9A1AD869 +:10FB9000FAC8FBCC1AD8FAC9FFCCFAC8F9740E9B84 +:10FBA000029CF01F020D2FDD781A7809C288ECC282 +:10FBB000FFFF1036C0A4FACBF978F6070037EEFA4B +:10FBC000FDA8EEF9FDA4C1B840A959F8E0890013D9 +:10FBD000F2CAFFF850AAFAC6F978721AEC08003B8C +:10FBE0007209F74AFDA8F749FDA42FF8FB480680E3 +:10FBF000C068F2C8FFF8721A50A87209049650093A +:10FC0000501ACD58EDB30004C441FAF806805800EC +:10FC1000C1D01037C064FACEF978FC070037C1E8CC +:10FC2000FAC8F9841AD8FAC8FAD00A9A1AD8FAC8BF +:10FC3000FBCC0E9B1AD8029CFAC8F974FAC9FFCC07 +:10FC4000F01F01E52FDD780AC218ECC2FFFF103665 +:10FC5000C084FACCF978F8070037EEFAFDA4C16841 +:10FC600040A959F8E0890010F2CAFFFC50AAFACB6B +:10FC7000F978720AF6080039F34AFDA42FF8FB4818 +:10FC80000680C048720A2FC950A90496501AC8D8D5 +:10FC9000EDB30006C481FAF806805800C1D01037D1 +:10FCA000C064FAC8F978F0070037C1E8FAC8F984E7 +:10FCB0001AD8FAC8FAD01AD8FAC8FBCC1AD8FAC897 +:10FCC000F974FAC9FFCC0A9A0E9B029CF01F01C27C +:10FCD0002FDD9818C238ECC2FFFF1036C084FAC678 +:10FCE000F978EC070037EF08FDA6C18840A959F85C +:10FCF000E0890012F2CAFFFC50AA7209FACEF97824 +:10FD0000FC08003A2FF8F549FDA4FB480680F1D91C +:10FD1000B010C04892182FC950A950180496BF5867 +:10FD20005008C458FAF806805800C1D01037C06493 +:10FD3000FACBF978F6070037C1E8FAC8F9841AD87F +:10FD4000FAC8FAD00A9A1AD8FAC8FBCC0E9B1AD86D +:10FD5000029CFAC8F974FAC9FFCCF01F019F2FDD8D +:10FD6000780AC218ECC2FFFF1036C084FACAF978CC +:10FD7000F4070037EEFAFDA4C16840A959F8E089FC +:10FD80000010F2CAFFFC50AAFAC6F978720AEC0811 +:10FD90000039F34AFDA42FF8FB480680C048720AD8 +:10FDA0002FC950A90496501ABF5A500AFAEA000007 +:10FDB000580A5C2BC0E43008FAEA00003009F00A67 +:10FDC000010AF20B014B32D8FAEB0000FB68068700 +:10FDD0003010E08F04E30C99EDB30005C471FAF81C +:10FDE00006805800C1D01037C064FACAF978F40709 +:10FDF0000037C1D8FAC8F9841AD8FAC8FAD00A9AD2 +:10FE00001AD8FAC8FBCC0E9B1AD8029CFAC8F9740F +:10FE1000FAC9FFCCF01F01702FDD780AC2082FF657 +:10FE20001039C084FAC9F978F2070037EEFAFDA458 +:10FE3000C16840A959F8E0890010F2CAFFFC50AA35 +:10FE4000FAC3F978720AE6080039F34AFDA42FF8DC +:10FE5000FB480680C048720A2FC950A94062049826 +:10FE60009512BF589508FE9FFC03EDB30004C441F2 +:10FE7000FAF806805800C1D01037C064FACEF9787D +:10FE8000FC070037C1D8FAC8F9841AD8FAC8FAD0E2 +:10FE90000A9A1AD8FAC8FBCC0E9B1AD8029CFAC848 +:10FEA000F974FAC9FFCCF01F014C2FDD780AC208A3 +:10FEB0002FF61039C084FACCF978F8070037EEFA3B +:10FEC000FDA4C16840A959F8E0890010F2CAFFFCFE +:10FED00050AAFACBF978720AF6080039F34AFDA461 +:10FEE0002FF8FB480680C048720A2FC950A9406904 +:10FEF0009509FE9FFBBDE2130040C440FAF806805E +:10FF00005800C1D01037C064FAC8F978F00700373C +:10FF1000C1D8FAC8F9841AD8FAC8FAD00A9A1AD8F5 +:10FF2000FAC8FBCC0E9B1AD8029CFAC8F974FAC91D +:10FF3000FFCCF01F01292FDD780AC2082FF61039F7 +:10FF4000C084FAC3F978E6070037EEFAFDA4C16869 +:10FF500040A959F8E0890010F2CAFFFC50AAFAC281 +:10FF6000F978720AE4080039F34AFDA42FF8FB4837 +:10FF70000680C048720A2FC950A9406EB40EFE9F79 +:10FF8000FB77FAF806805800C1D01037C064FACC6D +:10FF9000F978F8070037C1D8FAC8F9841AD8FAC82E +:10FFA000FAD00A9A1AD8FAC8FBCC0E9B1AD8029C2F +:10FFB000FAC8F974FAC9FFCCF01F01072FDD780ADF +:10FFC000C2082FF61039C084FACBF978F60700374B +:10FFD000EEFAFDA4C16840A959F8E0890010F2CA00 +:10FFE000FFFC50AAFAC3F978720AE6080039F34A0E +:10FFF000FDA42FF8FB480680C048720A2FC950A9FB +:02000004800377 +:1000000040629502FE9FFB34A5A30C99EDB3000559 +:10001000C571FAF806805800C2601037C0A4FACE45 +:10002000F978FC070037EEEAFDA4FAEB0000C1887E +:10003000FAC8F9841AD8FAC8FAD01AD8FAC8FBCC88 +:100040001AD8FAC8F974FAC9FFCC0A9A0E9B029C16 +:10005000F01F00E12FDDF8E80000FAE900003000B1 +:10006000E08F03992FF61039C0B4FAC8F978F00779 +:100070000037EEEAFDA4FAEB0000E08F038C40A904 +:1000800059F8E0890016F2CAFFF850AAF2EA000017 +:10009000FAEB0000FACAF978F4080039FAEA00002D +:1000A000F2EBFDA42FF8FB480680E08F0374F2EA20 +:1000B00000002F89FAEB000050A9E08F036CEDB32C +:1000C0000004C141FAF806805800C0801037C60409 +:1000D000FACAF978F4070037C7782FF61039C774D1 +:1000E000FAC9F978F2070037C6F8EDB30006C45133 +:1000F000FAF806805800C1D01037C064FACCF978FD +:10010000F8070037C1D8FAC8F9841AD8FAC8FAD063 +:100110001AD8FAC8FBCC1AD8FAC8F974FAC9FFCCB5 +:100120000A9A0E9B029CF01F00AC2FDD9818C22883 +:100130002FF61039C084FACBF978F6070037EF08AC +:10014000FDA6C18840A959F8E0890012F2CAFFFC57 +:1001500050AA7209FAC2F978E408003A2FF8F54972 +:10016000FDA4FB480680F1D9B010C04892182FC9F1 +:1001700050A95C785018C418FAF806805800C1D00D +:100180001037C064FACCF978F8070037C1D8FAC83C +:10019000F9841AD8FAC8FAD00A9A1AD8FAC8FBCC45 +:1001A0000E9B1AD8029CFAC8F974FAC9FFCCF01F4A +:1001B000008A2FDD780AC2082FF61039C084FACBE6 +:1001C000F978F6070037EEFAFDA4C16840A959F89E +:1001D000E0890010F2CAFFFC50AAFAC2F978720A4C +:1001E000E4080039F34AFDA42FF8FB480680C04814 +:1001F000720A2FC950A9501A300E500E1C90E08F71 +:1002000002CA505750420897408540740C99FAF83A +:1002100006805800C1D01037C064FACCF978F807CE +:100220000037C1D8FAC8F9841AD8FAC8FAD01AD84F +:10023000FAC8FBCC1AD8FAC9FFCCFAC8F9740A9AE2 +:100240000E9B029CF01F00642FDD7809C2182FF668 +:100250001039C084FACBF978F6070037EEF9FDA41F +:10026000C17840A959F8E0890010F2CAFFFC50AAF1 +:10027000FAC2F9787209E408003AF549FDA42FF8AA +:10028000FB480680C058F2C8FFFC50A8720933082A +:10029000300EFB6806844D1C37885019A1B3FB68EB +:1002A0000685500E509CE08F02755057300B50421F +:1002B000FB6B06870897408540740C99FAF8068016 +:1002C0005800C1D01037C064FACAF978F407003773 +:1002D000C1D8FAC8F9841AD8FAC8FAD01AD8FAC814 +:1002E000FBCC0E9B1AD80A9AFAC8F974FAC9FFCC4B +:1002F000029CF01F00392FDD7807C2082FF6103955 +:10030000C084FAC9F978F2070037EEF7FDA4C16896 +:1003100040A959F8E0890010F2CAFFFC50AA720700 +:10032000FAC2F978E4080039F347FDA42FF8FB4836 +:100330000680C04872072FC950A9403E580EC1051B +:100340001C9A300B0E9CF01F0026E08002B6F807C6 +:100350000105403C1835E08902B0E08F02AF0E9CE9 +:100360003000F01F00201895E08F02A9A5A30C997A +:10037000EDB30005C581FAF806805800C2001037B9 +:10038000C064FACBF978F6070037C208FAC8F984D6 +:100390001AD8FAC8FAD00A9A1AD80E9BFAC8FBCC17 +:1003A000029C1AD8FAC8F974FAC9FFCCF01F000AE7 +:1003B0002FDDF8EA0000FAEB0000C3282FF6103911 +:1003C000C124FACAF978F4070037EEE8FDA4FAE987 +:1003D0000000C2688002F2288003EDE4800328A4B4 +:1003E0008002EDD040A959F8E0890015F2CAFFF863 +:1003F00050AAF2EA0000FAEB0000FACAF978F40811 +:100400000039FAEA0000F2EBFDA42FF8FB48068061 +:10041000C078F2EA00002F89FAEB000050A93010F2 +:10042000E08F01B9EDB30004C141FAF8068058002D +:10043000C0801037C604FACAF978F4070037C778C5 +:100440002FF61039C774FAC9F978F2070037C6F8E1 +:10045000EDB30006C451FAF806805800C1D0103739 +:10046000C064FACCF978F8070037C1D8FAC8F98423 +:100470001AD8FAC8FAD01AD8FAC8FBCC1AD8FAC8CF +:10048000F974FAC9FFCC0A9A0E9B029CF01F0086F1 +:100490002FDD9818C2282FF61039C084FACBF978CE +:1004A000F6070037EF08FDA6C18840A959F8E08992 +:1004B0000012F2CAFFFC50AA7209FAC2F978E408E5 +:1004C000003A2FF8F549FDA4FB480680F1D9B01099 +:1004D000C04892182FC950A95C785018C418FAF86F +:1004E00006805800C1D01037C064FACCF978F807FC +:1004F0000037C1D8FAC8F9841AD8FAC8FAD00A9ACB +:100500001AD8FAC8FBCC0E9B1AD8029CFAC8F97408 +:10051000FAC9FFCCF01F00642FDD780AC2082FF65D +:100520001039C084FACBF978F6070037EEFAFDA44B +:10053000C16840A959F8E0890010F2CAFFFC50AA2E +:10054000FAC2F978720AE4080039F34AFDA42FF8D8 +:10055000FB480680C048720A2FC950A9501A300EB5 +:100560003010500EC1794D1C509CEDB30005C541B3 +:10057000FAF806805800C2201037C0A4FACBF978E8 +:10058000F6070037EEE8FDA4FAE90000CF28FAC824 +:10059000F9841AD8FAC8FAD00A9A1AD80E9BFAC85F +:1005A000FBCC029C1AD8FAC8F974FAC9FFCCF01F28 +:1005B000003E2FDDF8EA0000C0C8ECCAFFFF10368D +:1005C000C0B4FAC9F9781496F2070037EEEAFDA430 +:1005D000FAEB0000CCE840A959F8E0890016F2E6F1 +:1005E0000000F2CBFFF8FAE7000050ABFAC6F9784A +:1005F000EC080039FAE60000F2E7FDA42FF81496A3 +:10060000FB480680CB68F2E600002F89FAE700007D +:1006100050A91496CAE8EDB30004C161FAF8068047 +:100620005800C0801037C6A4FACEF978FC0700370E +:10063000C838ECCAFFFF1036E0840082FACCF978A3 +:10064000F8070037C788EDB30006C4D1FAF8068072 +:100650005800C1D01037C064FACCF978F8070037D9 +:10066000C1F8FAC8F9841AD8FAC8FAD01AD8FAC860 +:10067000FBCC1AD8FAC8F974FAC9FFCC0A9A0E9BB7 +:10068000029CF01F00092FDD9818C2A8ECCAFFFFDA +:100690001036C0D4FACBF9781496F6070037EF0875 +:1006A000FDA6C1E88002F2288003EDE440A959F8D4 +:1006B000E0890013F2CBFFFC50AB7209FAC6F9785F +:1006C000EC08003B2FF8F749FDA4FB480680149680 +:1006D000F1D9B010C058921814962FC950A95C785F +:1006E0005018C458FAF806805800C1D01037C064BA +:1006F000FACCF978F8070037C1F8FAC8F9841AD8A3 +:10070000FAC8FAD00E9B1AD8FAC8FBCC0A9A1AD8A3 +:10071000029CFAC8F974FAC9FFCCF01F00C42FDD9F +:10072000780BC248ECCAFFFF1036C094FACBF978B8 +:10073000F60700371496EEFBFDA4C18840A959F8CE +:10074000E0890011F2CBFFFC50ABFAC6F978720BCE +:10075000EC080039F34BFDA42FF81496FB480680F3 +:10076000C058720B14962FC950A9501B300E500E52 +:100770004008401C300B18485F18E7E80008F608EE +:100780001800C0703308FB620685A1B3FB680684BD +:100790003020300AFB6A068740395809C025A7D3A4 +:1007A0004038401758085F194008FAC5F9900E48BC +:1007B00030025F18F3E81008E4081800C5E03018AC +:1007C000F0001800C0603028F0001800C051C3E8E5 +:1007D0000A970690C2C80A97FAE80000F5D8C00345 +:1007E0002D0A0EFAF00B1603F20C1603F7E911DBD3 +:1007F0001899169858085C29CF21FAE90000EDB342 +:100800000000C4613309F20A1800C4200EF9C408BC +:10081000F01F008730A82D0A3009AE8AFAEA0000DE +:10082000F01F008416991498FAE90000EECC00013C +:1008300030A83009FAEA00001897589A5C2BFE9B02 +:10084000FFE91BF800932D08C2080A97FAE8000098 +:10085000F5D8C004409EFC0A070A0EFAF20B1604F3 +:10086000F00A1604F5E911CA1699149858085C297B +:10087000CF01FAE90000C0C85800C091EDB30000F4 +:10088000C061FAC7F9913308AE88C0280A970E15DF +:100890004030C14850425057407410925802E08096 +:1008A00001B6300CFB620648FB6C06873015300041 +:1008B000FAC7F9B8C03840353000069A0699E21AEE +:1008C0000002E2190084508A5079EA000C42FB3899 +:1008D0000687300BF6081800F7B201FF580AF7B286 +:1008E00001FE5809C4514048041850385808E0899E +:1008F000001DC3E8FB4C06784CFE310C890E891CA8 +:10090000FB4B0674587BE08900042F84C0B8FACAF8 +:10091000F990402B029CF01F0049E0810189FAC444 +:10092000F9F8403B210B503BFAF90678FAF80674C7 +:10093000F2CCFFF0F0CBFFFF4BFA403E590EFE9990 +:10094000FFDB1C09890AFB490678891EFB4B0674EC +:10095000587BE08900042F84C0B8FACAF990402B74 +:10096000029CF01F0036E0810163FAC4F9F8FB38FD +:100970000687300CF8081800C1F0FAF80678FAC9B2 +:10098000F9792FF88909FB4806783019FAF80674C6 +:1009900089192FF8FB4806745878E08900042F84E1 +:1009A000C0B8FACAF990402B029CF01F0024E081E5 +:1009B000013FFAC4F9F8408B580BC1F0FAF80678F9 +:1009C000FAC9F97C2FE88909FB4806783029FAF83A +:1009D000067489192FF8FB4806745878E0890004DA +:1009E0002F84C0B8FACAF990402B029CF01F001364 +:1009F000E081011EFAC4F9F8407AE04A0080C5118E +:100A00004049041950395809E0890029C4A848C848 +:100A1000310EFB4C06788908891EFB4B0674587B07 +:100A2000E08900102F84C1788002F228800373408F +:100A30008002D9988003EDF88002F5488003ECE845 +:100A4000FACAF990402B029CF01F0052E08100F09E +:100A5000FAC4F9F8403C210C503CFAF90678FAF84F +:100A60000674F2CCFFF0F0CBFFFF4CBA403E590EBB +:100A7000FE99FFCF1C09890AFB490678891EFB4BAA +:100A80000674587BE08900042F84C0B8FACAF99034 +:100A9000402B029CF01F003FE08100CAFAC4F9F825 +:100AA0000A105800E089001BC3B8FB4C0678310AD5 +:100AB0004B9C891A890CFB4B0674587BE089000417 +:100AC0002F84C0B8FACAF990402B029CF01F003165 +:100AD000E08100AEFAC4F9F82100FAF90678FAF8D4 +:100AE0000674F2CCFFF0F0CBFFFF4ABA5900FE9932 +:100AF000FFDE0009890AFB4906788910FB4B067462 +:100B0000587BE08900042F84C0B8FACAF990402BC2 +:100B1000029CF01F0020E081008BFAC4F9F8FAF87B +:100B2000067889158907F0050005FAF80674FB4573 +:100B300006782FF8FB4806745878E08900042F8463 +:100B4000C0A8FACAF990402B029CF01F0012C6F10F +:100B5000FAC4F9F8E2130004C41040470417580718 +:100B6000E089001CC3B8FB4C067889058913FB4B50 +:100B70000674587BE08900042F84C098009A402BAB +:100B8000029CF01F0004C531FAC4F9F82107C0988F +:100B90008002F5488003ECE84AB53103FAC0F990C9 +:100BA000FAF90678FAF80674F2CCFFF0F0CBFFFF02 +:100BB0004A5A5907FE99FFD90E09890A8917FB4934 +:100BC0000678FB4B0674587BE08A0009FACAF99054 +:100BD000402B029CF01F001DC2A140684049E4095F +:100BE0000C4204085068FAF806785808C080FACA1F +:100BF000F990402B029CF01F0015C1913003FAC4FC +:100C0000F9F8FB430674FE9FF53302934020FAF88F +:100C100006785808C080029CFACAF990009BF01F21 +:100C2000000BC0613008FB480674C0284020806873 +:100C3000EDB80006C0313FF25062406CFE3DF978DD +:100C4000D83200008003EDF88002F548D431FACDA7 +:100C500001E03007503C16961295507A5087505755 +:100C60000E930E905047407E1D8957795809E080B9 +:100C700007A22FFE4D5C507E780C502CF809070817 +:100C8000E2180008C1B06C185808E08900070C9BF6 +:100C9000403CF01F004FCE816C084CCBF0C9FFFFE9 +:100CA000760A1188F4080708EDB80003CDD16C1856 +:100CB0008D0920182FF08D18CE7BE0490025E081AA +:100CC000008906941091109236CA344C358E407BC0 +:100CD0001739507B364BF6091800E08000BBE08BDB +:100CE0000042F8091800E08000B4E08B0021339B3B +:100CF000F6091800E08B01D2330BF6091800E082E8 +:100D00000094325BF6091800C640E08B000B5809CE +:100D1000E080074F324BF6091800E08101BFC8A8F8 +:100D200032ABF6091800E08101B9C6D8FC091800F9 +:100D3000E08000A4E08B000C34CBF6091800C7005B +:100D400034FAF4091800E08101A9C8C835BAF409D9 +:100D50001800E0800098363AF4091800E081019EFE +:100D6000C9E836FBF6091800C7E0E08B0017369B90 +:100D7000F6091800C720E08B0008368BF60918002A +:100D8000E081018CC4F8F4091800C3F036EAF409D4 +:100D90001800E0810183C8D8373AF4091800C1303F +:100DA000E08B0008370AF4091800E0810177C7A832 +:100DB000375AF4091800C5C0378AF4091800E081D1 +:100DC000016DC5B83029C7590000049C800328BCB8 +:100DD0006C185808E08900080C9B403CF01F006428 +:100DE000E08106E0407A6C08F539FFFF118AF20ACB +:100DF0001800E08106E02FF82FF08D086C182018FD +:100E00008D18C32BA5A1C64B407B1789F409180088 +:100E1000C0512FFBA1B1507BC5BBA1A1C59BA1B106 +:100E2000C57BA3A1C55BE4020022A17223021202CA +:100E3000C4FBE0420020E08B0007E4C4000130184E +:100E40003002C46B3168403A9538E08F06ABA1A1FF +:100E50004C8930AE5089C2B84C6C300B508C505B12 +:100E6000C279A1A14C4A3089508A5059C2194C2EDE +:100E700030AC508E505CC1C94BFBA9B1508B310ACC +:100E8000C169301950085019407BFACCFFD4F01FCB +:100E9000003BA7A1507C40194008C0B9A7A1300968 +:100EA000C0894B59E81102205089310E505EC009AB +:100EB000EDB10004FE90FED9EDB10002C441580826 +:100EC000C2500E34C064FACCFE20F8040024C2786C +:100ED000FACAFED40A99F407002A0E98130B14AB31 +:100EE0002FF81034CFC4EEC9FFFFEE0811FFF0C792 +:100EF000FFFF2FE808080807EA080025F2070007A7 +:100F0000FAC8FED4F0040324C1C8E6C8FFFF0E33BC +:100F1000C094FACBFE201093F6040024E8F4FF4CB2 +:100F2000C1086A042FC559F7E089000B1093FACA6B +:100F3000FE20F40700282FF7F144FF4CC02810933F +:100F4000A800C92AEDB10000C1A15808E0800088BE +:100F50000E34C635FACAFED40A99F407002A0E9850 +:100F6000130B14AB2FF81034CFC4C678800328BC01 +:100F70008002EFB480032E6C800329ECE2110002A2 +:100F8000C4805808C2500E34C064FACCFE20F80465 +:100F90000024C278FACAFED40A99F407002A0E98EF +:100FA000130B14AB2FF81034CFC4EEC9FFFFEE08BB +:100FB00011FFF0C7FFFF2FE808080807EA0800251F +:100FC000F2070007FAC8FED4F0040324C1C8E6C83B +:100FD000FFFF0E33C094FACBFE201093F6040024DA +:100FE000E8F4FF4CC1086A042FC559F7E089000BEB +:100FF0001093FACAFE20F40700282FF7F144FF4CA3 +:10100000C0281093E008141F89108908FE9FFE2D48 +:101010005808C2500E34C064FAC9FE20F2040024FD +:10102000C278FACAFED40A99F407002A0E98130B64 +:1010300014AB2FF81034CFC4EEC9FFFFEE0811FF38 +:10104000F0C7FFFF2FE808080807EA080025F207A5 +:101050000007FAC8FED4F0040324C1C8E6C8FFFFA5 +:101060000E33C094FAC2FE201093E4040024E8F486 +:10107000FF4CC1086A042FC559F7E089000B109393 +:10108000FACEFE20FC0700282FF7F144FF4CC028C1 +:1010900010938900FE9FFDE9402CF8090709EDB97E +:1010A0000000C021A1A14C7B30AA508B505A30398E +:1010B0006C1A580AE089000C501950080C9B403CEF +:1010C000F01F004140194008E081056CEDB10006B9 +:1010D000C151C1F86C1A201A8D1A580AE08A00040E +:1010E0008D0CC0B8501950080C9B403CF01F0036C6 +:1010F00040194008E08105562FF06C0A4B3EF4CCB5 +:10110000FFFF7C0B158AF60A070AEDBA0003CE3002 +:101110005829E08001C05839E080031D5819E0804B +:10112000011B029CE21C0010502C5802F9B2000175 +:10113000E3D1C001E080009B580CC0303001C4985E +:101140005808C2500E34C064FACBFE20F6040024C6 +:10115000C278FACAFED40A99F407002A0E98130B33 +:1011600014AB2FF81034CFC4EEC9FFFFEE0811FF07 +:10117000F0C7FFFF2FE808080807EA080025F20774 +:101180000007FAC8FED4F0040324C228E6C8FFFF13 +:101190000E33C094FACAFE201093F4040024E8F43D +:1011A000FF4CC1686A042FC559F7E08900111093FC +:1011B000FAC9FE20F20700282FF7F144FF4CC0883F +:1011C0008002EFB4800328BC0000049C10930891B7 +:1011D00030044D5E7C081034E08004E46C08118912 +:1011E000FAC8FE200808F169FFCC6C1820188D1889 +:1011F0006C082FF8308A8D08300BFACCFE2CF01FCB +:10120000004B2FF4FAC8FE2C0899FACAFE54029B30 +:10121000403CF01F00475BFCE08004C4580CC061F8 +:10122000402C580CC051830CC0385BECC0B0080097 +:10123000402B2012580BF9B40100F7B100FCFBF46D +:1012400000026C185808E089000B0C9B403CF01F12 +:101250000039C0505804C050E08F04A45802CBA1FC +:10126000402A580AFE91FD01C718402E580EC1A011 +:101270006C186C090438C0F4100910128D091001A3 +:101280000C9B403CF01F002BCF405801E08101E651 +:10129000E08F0488040904188D098D180401E08F7B +:1012A00001DD5808C2500E34C064FACCFE20F804A8 +:1012B0000024C278FACAFED40A99F407002A0E98CC +:1012C000130B14AB2FF81034CFC4EEC9FFFFEE0898 +:1012D00011FFF0C7FFFF2FE808080807EA080025FC +:1012E000F2070007FAC8FED4F0040324C258E6C887 +:1012F000FFFF0E33C094FACBFE201093F6040024B7 +:10130000E8F4FF4CC1986A042FC559F7E08900142E +:101310001093FACAFE20F40700282FF7F144FF4C7F +:10132000C0B80000000009AC8002E8BC800328407F +:10133000800328BC1093049A089C0C99301BF01F62 +:1013400000C9E080042FF800000040492FF95049FF +:10135000FE9FFC8B5802F9B200FFEDB10004C261A0 +:1013600030040891C1286C188D0920188D182FF4AD +:101370000832E080008D5808E08900080C9B403C52 +:10138000F01F00B9E08100846C08FACEFE20F0C99D +:10139000FFFF1188FC080008F138FE4CE208180035 +:1013A000CE315804C741E08F04065808C2500E34AD +:1013B000C064FACCFE20F8040024C278FACAFED435 +:1013C0000A99F407002A0E98130B14AB2FF8103467 +:1013D000CFC4EEC9FFFFEE0811FFF0C7FFFF2FE8F3 +:1013E00008080807EA080025F2070007FAC8FED433 +:1013F000F0040324C1C8E6C8FFFF0E33C094FACB43 +:10140000FE201093F6040024E8F4FF4CC1086A049F +:101410002FC559F7E089000B1093FACAFE20F40794 +:1014200000282FF7F144FF4CC02810930891300892 +:10143000C1886C1A201A8D1A133A02CA8D095802F3 +:10144000C1D06C195809E089000D50080C9B403C34 +:10145000F01F00854008C0500831C101E08F03A291 +:101460006C0AFACEFE2014992012158AFC0A000A92 +:10147000F53AFE4CF00A1800CDD1E2040104E080F8 +:10148000039A404C2FFC504C3008A2880800FE9F65 +:10149000FBEC029BE21B0010502B5802F9B200FF3C +:1014A000E3D1C001E08000BC580BC050FACAFE2452 +:1014B000506AC4385808C2500E34C064FAC9FE20BD +:1014C000F2040024C278FACAFED40A99F407002A6A +:1014D0000E98130B14AB2FF81034CFC4EEC9FFFFD6 +:1014E000EE0811FFF0C7FFFF2FE808080807EA0819 +:1014F0000025F2070007FAC8FED4F0040324C1C88F +:10150000E6C8FFFF0E33C094FACEFE201093FC0411 +:101510000024E8F4FF4CC1086A042FC559F7E0899C +:10152000000B1093FACCFE20F80700282FF7F144A7 +:10153000FF4CC0281093506430014CC4C598680813 +:101540001031E080032FFAC8FE200208F169FFCCB9 +:101550006C1820188D186C082FF8308A8D08300B05 +:10156000FACCFE2CF01F00422FF1FAC8FE2C029993 +:10157000FACAFE54406B403CF01F003E5BFCE0802A +:101580000311580CC041406B970CC0385BECC23063 +:10159000406A740CF01F0038C100FAC4FE20020437 +:1015A0002354C088098B201120140C9A403CF01F52 +:1015B00000335801CF81C2C80200402920125809C7 +:1015C000F8011710FBF80006F7B800FCFBF80A0654 +:1015D000FBF100026C185808E089000B0C9B403CA2 +:1015E000F01F0021C0505801E08102DCC1186C08D6 +:1015F00058025F1A11894A2E300C7C08F00907083E +:10160000EC180008F5E80238F8081800C991402BDA +:10161000580BFE91FB2A406A950BC98A402E580E42 +:10162000C300C1086C188D0A20188D182FF10232E2 +:10163000C1405808E08900070C9B403CF01F000A9D +:10164000C0C16C0848ECF0CAFFFF78091188F208A5 +:101650000708EDB80003CE710200FE9FFB060000F4 +:10166000800320B8800328BC000009AC8002E8BCDD +:10167000800328408003274880032FF40000049C47 +:101680005808C2500E34C064FACBFE20F604002481 +:10169000C278FACAFED40A99F407002A0E98130BEE +:1016A00014AB2FF81034CFC4EEC9FFFFEE0811FFC2 +:1016B000F0C7FFFF2FE808080807EA080025F2072F +:1016C0000007FAC8FED4F0040324C1C8E6C8FFFF2F +:1016D0000E33C094FACAFE201093F4040024E8F4F8 +:1016E000FF4CC1086A042FC559F7E089000B10931D +:1016F000FAC9FE20F20700282FF7F144FF4CC0285A +:1017000010930891C1286C1920198D19113902C93B +:101710008D085802C1506C185808E08900070C9BCE +:10172000403CF01F0059C0C16C094D8E12987C0AD4 +:1017300013892012F4090709EDB90003CE51404C7A +:101740002FFC504C08103008E2000000A288FE9FD9 +:10175000FA8CE4C90001E0490026E08B0005300B5B +:10176000506BC058E4CA00273272506A3009FACE72 +:10177000FE54509950A7E8110D80502E35894057DE +:101780006C0A339C158AF80A1800E08B0015338B1D +:10179000F60A1800C4E2330BF60A1800C270E08B98 +:1017A000004532BBF60A1800C51032DBF60A1800F5 +:1017B000C7C1C4C8F20A1800C4E0E08B000AF4CB29 +:1017C0000041305EFC0B1800E08B0070C398361CA3 +:1017D000F80A1800C6A3366BF60A1800E088003134 +:1017E000378EFC0A1800C611C368029BEDB1000BCE +:1017F000C3C15807E06B0200E3DBE031F9B7000832 +:10180000EDB1000AC041E011FA7FC2F8409B406C84 +:101810002FFB580CF7BC0101FBFC1A06F7B201FFC5 +:10182000E011FC7F509BC248499EFC070417C0B8DA +:10183000497CF80704175887E0890006C36858A751 +:10184000E08A0034E011F47FC108EDB10007C2D195 +:10185000A7D1C0B8029BE21B0600E04B0200C251B8 +:10186000A9D13107E8110500402B16CA502B6C1A7C +:10187000201A8D1A580AE08A000D6C0A2FFA8D0A78 +:10188000C1180000800328BC0000049C8003EF08FE +:10189000501950080C9B403CF01F00BD40194008F7 +:1018A000C0412012FE91FF6E505740A7EDB10008D5 +:1018B000C161FAC9FE54402A123AE088000B40295F +:1018C0000C9A137B403C50085029F01F00B240088E +:1018D000FAC9FE5440221232E080016D029AE21AE7 +:1018E0000010E081014B402EBC8A50084059FACBD1 +:1018F000FE54403C40825D1202994008E2190020EB +:10190000C2A05808C1400E34C064FACEFE20FC04C8 +:101910000024C1D9FACAFED40A99F407002A0E9805 +:10192000130B14AB2FF81034CFC4CF68E6C8FFFFF9 +:101930000E33C064FACBFE20F6040024C0796A049A +:101940002FC559F7E08901151093FACAFE20F40754 +:101950000028C0A9EDB10002C4415808C2500E349D +:10196000C064FAC9FE20F2040024C278FACAFED488 +:101970000A99F407002A0E98130B14AB2FF81034B1 +:10198000CFC4EEC9FFFFEE0811FFF0C7FFFF2FE83D +:1019900008080807EA080025F2070007FAC8FED47D +:1019A000F0040324C1C8E6C8FFFF0E33C094FAC296 +:1019B000FE201093E4040024E8F4FF4CC1086A04FC +:1019C0002FC559F7E089000B1093FACEFE20FC07D3 +:1019D00000282FF7F144FF4CC0281093A80CCCA886 +:1019E000F5D1C001C2A05808C1400E34C064FACB82 +:1019F000FE20F6040024CAB8FACAFED40A99F407F5 +:101A0000002A0E98130B14AB2FF81034CFC4C8481B +:101A1000E6C8FFFF0E33C064FACAFE20F4040024B7 +:101A2000C9586A042FC559F7E08900A31093FAC971 +:101A3000FE20F2070028C988E2110002C5904D6916 +:101A400040821232C091FACBFE544059403C5008BB +:101A5000F01F0052C088FACBFE544059403C500859 +:101A6000F01F004F40085808C2500E34C064FACE30 +:101A7000FE20FC040024C278FACCFED40A99F807B0 +:101A8000002C0E98130E18AE2FF81034CFC4EEC9E8 +:101A9000FFFFEE0811FFF0C7FFFF2FE80808080757 +:101AA000EA080025F2070007FAC8FED4F004032470 +:101AB000C1C8E6C8FFFF0E33C094FACCFE201093D5 +:101AC000F8040024E8F4FF4CC1086A042FC559F754 +:101AD000E089000B1093FAC9FE20F20700282FF7C7 +:101AE000F144FF4CC0281093891A890BC438580858 +:101AF000C2500E34C064FAC8FE20F0040024C2783C +:101B0000FACAFED40A99F407002A0E98130B14ABF4 +:101B10002FF81034CFC4EEC9FFFFEE0811FFF0C755 +:101B2000FFFF2FE808080807EA080025F20700076A +:101B3000FAC8FED4F0040324C1C8E6C8FFFF0E3380 +:101B4000C094FAC2FE20E40400241093E8F4FF4C91 +:101B5000C1086A042FC559F7E089000B1093FACE2B +:101B6000FE20FC070028F144FF4C2FF7C0281093FB +:101B7000890C404C2FFC504CFAC8FE54409B10106E +:101B8000402A1600F4000000FE9FF86F800328BC76 +:101B900080032FF480032E6C80032CE480032B340D +:101BA00040495809C0508C68EDB80006C0313FF874 +:101BB0005048404C288DD832D421217D1497189656 +:101BC000129A5807C064E068008B99383FFCC2281D +:101BD0005807EE0C1700F9B901FFEFD9E10C109985 +:101BE000E0680208BA683FF8504B505C500B502C2C +:101BF000BA781A9B0C9CF01F00095BFCC044E0689B +:101C0000008B8D385807F9B90100FBF81000F1F985 +:101C10001E002E9DD82200008002F568D401129883 +:101C20001499169A189B483C780CF01F0003D802B0 +:101C30000000059880031BB8D4214B3818961697DE +:101C4000700C580CC06078685808C031F01F002F25 +:101C50004AF81037C0514AC870087007C0E84AD81F +:101C60001037C0514A8870087017C0784AA81037DA +:101C7000C0414A58700870278E68EDB80003C1E073 +:101C8000EDB80004C3E1EDB80002C1516EDB580BA2 +:101C9000C0A0EEC8FFBC103BC0400C9CF01F001F52 +:101CA00030088FD88E68E018FFDBAE6830088F18D8 +:101CB0006E488F088E68A3B8AE686E485808C0B1E9 +:101CC0008E68E2180280E0480200C0500C9C0E9B17 +:101CD000F01F00138E69F1D9C001C07030088F2841 +:101CE0006E585C388F68C068EDB90001EFF81005D8 +:101CF0008F286E485808C0618E68EDB80007C02173 +:101D0000DC2AD82A0000059880031F388003EF2CB6 +:101D10008003EF4C8003EF6C8003217C8003276CF1 +:101D20004828700C2F4C5EFC00000598D4211697B3 +:101D3000189676485808C7D0580CC060786858087C +:101D4000C031F01F003D4BD81037C0316C07C0A820 +:101D50004BB81037C0316C17C0584BA81037EDF78F +:101D600000028E6A1498EDBA0003C420ABBAAE6AC2 +:101D70006E185808E08900066F085808E08A005A73 +:101D80006EB85808C560E21A1000C0306F55C0F830 +:101D900030196E8B0C9C5D1818955BFCC0816C38FB +:101DA00059D8C4708E68A7A8AE68D8228E68EDB8DE +:101DB0000002C0916E1810156ED85808EFF8101078 +:101DC000EBD8E1156EB80C9C30090A9A6E8B5D1841 +:101DD0008E680A3CC261ABD8300C6E49AE688F1C6D +:101DE0008F09EDB8000CC251EF450054D8226E4562 +:101DF0005805C1F06E04F5DAC0028F05F9B801008C +:101E0000EFF800050A148F28C11808990A9A6EA8DD +:101E10006E8B0C9C5D181814580CE08900078E68B6 +:101E2000A7A83FFCAE68D82218055804FE99FFEF1A +:101E3000D82A000080031F388003EF2C8003EF4C6A +:101E40008003EF6CD401189B580CC0714868487B24 +:101E5000700CF01F0007D8024868700CF01F0003D8 +:101E6000D80200008003ECA880031D2C800325E825 +:101E7000000005985EFC5EFCD401483BF01F0003A7 +:101E8000D80200008003629080032640D42116957A +:101E9000F606105CECCBFFF4F01F00071897C0901B +:101EA0009915300B2F4C0C9A8F2C8F0BF01F0003C1 +:101EB0000E9CD8228002E2BC8002E8BCD42149C832 +:101EC000189670076E685808C0410E9CF01F0019E4 +:101ED000EEC7FF2830056E2C6E18C0689869EA09B5 +:101EE0001900C1202A4C2018CFA76E085808C071CD +:101EF000304B0C9CF01F00108F0CC0306E07CECB07 +:101F000030C88D38D8223008F948004C99089928F3 +:101F1000991899489958996899D899E8F9480048C2 +:101F20003FF8B8783018B868D82200008003ECA8D1 +:101F300080031F3880031E8CD421189678675807B9 +:101F4000C4714A48301599A8F94700D8F94700DC10 +:101F5000F94700E09965F01F00208D0C0C9CF01FE4 +:101F6000001E8D1C0C9CF01F001C6C093048930750 +:101F7000B268931793276C18B27793479357936778 +:101F80009389910791179127494E495B939E93AB93 +:101F9000494A495493BA93C43099B069B07591C411 +:101FA0009147915791679188919E91AB91BA8D2CF1 +:101FB00031289907B868991799273028B87899C4B3 +:101FC0009967999E99AB99BA99479957998CD82254 +:101FD00080031E7880031EBC80032B1080032AD848 +:101FE00080032AAC80032A9CD4014858169AFAC967 +:101FF000FFFC189B700CF01F0003D802000005982E +:1020000080033424D43114901291169310971895AC +:10201000F20A02425802C0310491C418580CC06040 +:1020200078685808C031F01F001F49F81037C031D8 +:102030006A07C0A849D81037C0316A17C05849C8C4 +:102040001037EBF700026E185808C03430088F18AC +:102050000496C148F01F00176E08080308160E9B6F +:10206000F00400040A9C8F04F01F0013C070E40603 +:102070000109F2000D081091C1286E146E08069C2B +:10208000089A109B0836FE9BFFE70C9AF01F000988 +:102090006E080C088F086E180C188F18029CD83226 +:1020A00080031F388003EF2C8003EF4C8003EF6C1C +:1020B0008002E736800328BCD40112981499169A3E +:1020C000189B483C780CF01F0003D80200000598CC +:1020D00080032004D42116951897F01F00234A345A +:1020E00068287016E016FFFCECC8FF91F0050105AA +:1020F000E015FF80EAC50080E045007FE08A00230C +:10210000300B0E9CF01F001A68280C08103CC1A16F +:10211000EA0B11000E9CF01F00165BFCC171300B26 +:102120000E9CF01F00136828F808010958F9E08A8E +:10213000000AA1A9911948F8700948F8F80901099D +:1021400091090E9CF01F000DD82A68280A16A1A636 +:102150009116489870090A190E9C9109F01F000702 +:10216000DA2A00008002E8CA0000059C8002EBC861 +:10217000000009A800007AD08002E8CCD42116968D +:102180001897580BE08000CAF01F004E20864CEADA +:102190006C18742EF9D8C001A1C8EC080009721B94 +:1021A000E01BFFFC1C39C1D1F6080008580CC081A7 +:1021B0006C09121612086C3B6C299729933B1099F5 +:1021C0009526A1A98D194C1972091238C0634C08C3 +:1021D0000E9C700BF01F003F0E9CF01F003FD8229A +:1021E000931B580CC030300CC1086C0EF4C5FFF8BE +:1021F0001C161C086C2E0A3EF9BC0001EDF51003FC +:10220000EBFE1A02FDF51A03F20B000E7C1EEDBE6A +:102210000000C1301608580CC0C14ABE722B2F8E68 +:102220001C3BC071973697268D2B8D3B301CC058B8 +:10223000722B7239932B97391099EC080908A1A9D0 +:102240008D19580CC671E04801FFE08B0013A3986C +:10225000F4080039722B8D398D2B97369326A348BD +:102260007419301BF6080948F3E810089518C528BA +:10227000F00916095849E08B0006F00B16062C8B66 +:10228000C2D85949E08B0005F2CBFFA5C278E049DE +:102290000054E08B0006F00B160C292BC1F8E04926 +:1022A0000154E08B0006F00B160F289BC178F00B51 +:1022B0001612E0490554E088001137EBC0F8000021 +:1022C0008002E8CA0000059C000009A400007ACC46 +:1022D000800320D48002E8CC284BF40B003C782902 +:1022E0001839C0E17418A34B301CF80B094BF1EB03 +:1022F000100B1298951BC0A872291839C060721A69 +:10230000E01AFFFC1438CF9372388D388D2993363C +:1023100091260E9CF01F0002D82200008002E8CC1B +:10232000D431203D14941895169774285808E080ED +:10233000014A9668EDB80003C04176485808C0C10C +:102340000E9B0A9CF01F00A1C0708E68A7A8AE6803 +:1023500030988B38C3598E6368000696E2160002E7 +:10236000C2103003E06204000696C04860036016A5 +:102370002F805806CFC0E0460400EC091780E4091E +:1023800017B0069A6EA86E8B0A9C5D181816580C2A +:10239000E08A0114682818188928E08001141803BD +:1023A000CE9BE7D3C001C07050060C930C91501522 +:1023B0000892CA0806960891C048600360162F80EC +:1023C0005806CFC08E686E241099E2190200C570BD +:1023D0000836C4531099E2190480C4106E4B6E097C +:1023E000161950096E59109CF209001A3028F40889 +:1023F0000C08FAE9000410944009E21C04002FF9CB +:102400000C091238F2041730580CC110089B0A9CB2 +:10241000F01F006F1892C150400A6E4BF01F006D04 +:102420008E68E018FB7FA7B8AE68C0E8089A0A9CDF +:10243000F01F00691892C0816E4B0A9CF01F006764 +:1024400030C88B38CBA8400A4009E80A010AE409E1 +:1024500000088F548F2A8F088F420C940836EC04A2 +:102460001730069B089A6E0CF01F005D6E08080876 +:102470008F086E2808180C948F28C30808365FBA96 +:102480006E0C6E48103C5FB8F5E80008F2081800C2 +:10249000C0E0069B089AF01F00526E0808080E9BC9 +:1024A0008F080A9CF01F004FC190C8786E591236F1 +:1024B000C0A36EA8069A6E8B0A9C5D181894E089DA +:1024C000000EC7B80C9A069BF01F00456E080C085A +:1024D0000C948F086E280C188F28622808188328FF +:1024E000C71008160803C6DB6003601130082F8090 +:1024F00050085801CFA0400A580AC181029A30AB57 +:10250000069CF01F0039F9B80101F9D8E106EDD3B6 +:10251000E116F9B90101FBF91A00F9B80001E3D895 +:10252000E006F9B80001FBF80A000236EC04178057 +:10253000E20417B06E596E25F20500050A345F9A61 +:102540006E0C6E48103C5FB8F5E80008300AF408DD +:102550001800C0E0069B0A9AF01F00216E080A08C6 +:102560000E9B8F08401CF01F001FC180C2681234F0 +:10257000C0A56EA8069A6E8B401C5D181895E08960 +:10258000000EC1B8089A069BF01F00156E080808D7 +:1025900008958F086E2808188F280A16C0710E9BA0 +:1025A000401CF01F0010C091500664280A188528AE +:1025B000C0900A110A03C9EB8E68A7A8AE683FFC59 +:1025C000C028300C2FDDD83280031C388002E2BCDA +:1025D0008002E7368002E8E88003217C8002E87E02 +:1025E00080031D2C800328A4D43130051893169045 +:1025F0000A91F01F00123FF2E6C7FF28C1786E264D +:102600006E142F46C0D88C08E2081900C0808C18C0 +:10261000E4081900C040069C5D1018452A462014A5 +:10262000ECCB000C5804CF046E075807CE91F01F76 +:1026300000040A9CD832000080031E7480031E76BA +:10264000D43130051691F8C7FF280A92F01F001008 +:102650003FF3C1686E266E142F46C0C88C08E4088C +:102660001900C0708C18E6081900C0305D111845BB +:102670002A462014ECCC000C5804CF146E075807DF +:10268000CEA1F01F00040A9CD832000080031E7403 +:1026900080031E76D401201D4848189B1A9A700C9E +:1026A000F01F00032FFDD80200000598800326B01C +:1026B000D431169414921895F01F00204A08700720 +:1026C0005807C050300633DA0C98C0780A9CF01FC7 +:1026D000001D0E9CD8322FF6E8060709F0091800F5 +:1026E0005F1BF40918005F191669F0091800CF4143 +:1026F000C1A8029C0C9A089BF01F0013C1216E0117 +:102700000C010388E6081800C0C148D870080A9C6C +:102710001017A3478507F01F000BE2CCFFFFD8324C +:102720002FC7C02833D36E015801CE410A9CF01F39 +:102730000005029CD8320000800361BC000009B093 +:10274000800361BE8002EDE6E04C00FFE0880003FC +:102750005EFD48487008F00C070CE21C00085EFCA7 +:102760000000049C481C5EFC8003EF8CD42120FDFB +:10277000966816971896E2180002C3C1967BF00B74 +:102780001900C0551A9AF01F002AC0F48E650A98E5 +:10279000ABB8E2150080AE683004E0680400F9B51B +:1027A0000140F0051700C1B84018E218F000E048F9 +:1027B00020005F04E0488000C0D16EB949D81039CC +:1027C000C0918E68E0650400ABA8EF450050AE688C +:1027D000C0688E68E0650400ABB8AE680A9B0C9CCC +:1027E000F01F00158E68C0D1EDB80009C1E0A1B896 +:1027F000AE68EEC8FFB98F488F0830188F58C1589F +:10280000A7B88F4CAE688F5548C88F0C8DA8580458 +:10281000C0C08E7CF01F000AEFF81206F9B9010162 +:10282000F1D9E138EFF81C062F1DD822800362A8E9 +:1028300080032AAC8002E2BC80031E788002F1682B +:10284000D42118971096580AC041149B3019486A31 +:10285000F01F00065BFCC06130088D08E068008A4C +:102860008F38D82280037E208003286C201D5809D1 +:102870005F09580BFA0B1700580A5F18F3E80008B5 +:102880003009F2081800C0303FECC0B8580AC03117 +:10289000149CC078158997091589F00918005F1CE8 +:1028A0002FFD5EFCF7DBC008C068201A19881638B7 +:1028B0005E0C2FFC580ACFA15EFAD703D4211697DD +:1028C0001896580CC06078685808C031F01F00385E +:1028D0004B881037C0316C07C0A84B781037C03117 +:1028E0006C17C0584B581037EDF7000230088F189E +:1028F0008E68EDB80005C590EDB80002C1A0EDB836 +:102900000004C060A7A8AE6830988D38C4D8EDB870 +:102910000003C0B10E9B0C9CF01F0029C4618E689F +:102920008F6CA3D88F2CAE688E68A3A8AE68C14800 +:102930006EDB580BC110EEC8FFBC103BC0400C9CB6 +:10294000F01F0020300C6F088FDC8F185808C04033 +:102950006EF88F08D8226E485808C0510E9B0C9C08 +:10296000F01F00198E68F1D8C002C0604978498B09 +:10297000700CF01F00186E4A6E980C9C8F0A6E59EE +:102980006E8B5D188E688F1CADD8AE68580CE08ACF +:102990000003D82A580CC041A5B8AE68C058A7A8F3 +:1029A000AE6830088F18DC2ADC2A000080031F384C +:1029B0008003EF2C8003EF4C8003EF6C80031D2C11 +:1029C0008003217C8003276C8003ECA8800329D43A +:1029D00080032640D4019868E21800095898C02066 +:1029E000D80AF01F0002D80280031E44D431189E7A +:1029F0001738E048005EC030300AC0381738301A47 +:102A00003009FC090B0A2FF9E0490100CFB1580841 +:102A1000C041F6CC0001D832149632D4EC16000135 +:102A2000300735D5C0381498129BFC080B06F6C940 +:102A3000FFFF178A129CE80A1800C090EA0A1800E3 +:102A4000C1E0EE0A1800CF01169CD832138C103C5E +:102A50005F53E04C005D5F0AE7EA100AEE0A1800D7 +:102A6000C03032D8CE2BF0CAFFFFFC0A000A14C6D1 +:102A70002FF81838CFD52FEB2FE9CDCBD8321498BB +:102A8000F5DBC01FF00C1100104CFC187FF0F5ECCA +:102A900013FCF00C010CBF9C5EFCD703D401967BA9 +:102AA000F01F0002D8020000800353E0D4211697E3 +:102AB000967BF01F00098E681099ADC95BFCEFF999 +:102AC0000C06EFFC1A15E0691000F1D9E138EFF8B7 +:102AD0001C06D822800362D4D421966816971495D8 +:102AE0001294E21801001896C0603029300A967BD3 +:102AF000F01F00068E68ADC808990A9A8E7B0C9C60 +:102B0000AE68F01F0003D822800362D4800353B460 +:102B1000D4211697967BF01F0007C0656F581808E0 +:102B2000EF480054D8228E68ADC8AE68D8220000A5 +:102B30008003694CD431208D4DB8500B7008507C07 +:102B4000502A1295501816970F36401AF4060704AB +:102B5000E2140008CFA1E046002DC0410F3630142A +:102B6000C058E046002BC0210F3658055F085905B4 +:102B70005F0A3009F1EA100AF20A1800C1D0E046F3 +:102B80000030C1210F8A358B378CF60A18005F0B95 +:102B9000F80A18005F0A144BF20B1800C0500F9689 +:102BA00031052FE7C0985808C070E0460030F9B5ED +:102BB0000008F9B5010A5804C0713FF0E061FFFF59 +:102BC000EA117FFFC0483000FC118000EA03141FA7 +:102BD0000A980699009A029BF01F00340699505AF1 +:102BE0000A98009A029BF01F0032069C14981699CE +:102BF000300A30003001149E109212934019F206F0 +:102C0000070BF3DBC001F9B90137F9B90057506977 +:102C1000ECC80030EDBB0002C0804069F7DBC002A9 +:102C2000EC090108580BC2D00A38C2B40430E601DE +:102C300013005FB9F3EA13FAFC0A1800C1F104307B +:102C4000E60113005F09405A14385F9AF5E900095C +:102C5000FC091800C131E005064AEA010249504862 +:102C6000F8000349BF58F20B000B5038FAE0000C93 +:102C70001400E20B0041301AC0283FFA0F36CBFB9C +:102C80005BFAC1715804C0713FF0E061FFFFEA11C7 +:102C90007FFFC0483000FC11800032284079933813 +:102CA000C10800000000049C800373408002D99892 +:102CB0005804C07030083009F0000100F2010141F1 +:102CC00040285808C0B0580AF9B801FFEFD8E10A07 +:102CD000FBFA1A00402940089308009A029B2F8DA6 +:102CE000D8320000D431209D4DE816927008508CE7 +:102CF000505A1295504816970F36404EFC0607035F +:102D0000E2130008CFA1E046002DC0410F3630137A +:102D1000C058E046002BC0210F3658055F08590502 +:102D20005F0A3009F1EA100AF20A1800C1D0E04641 +:102D30000030C1210F8A358B378CF60A18005F0BE3 +:102D4000F80A18005F0A144BF20B1800C0500F96D7 +:102D500031052FE7C0985808C070E0460030F9B53B +:102D60000008F9B5010AEA04141F0A9808993FFA05 +:102D70003FFBF01F003D0899502B503A0A983FFA4C +:102D80003FFBF01F003A300B300830094041E206AB +:102D9000070EE1DEC001ECCC00305800F9B101377C +:102DA000F9B100571C90E2100004C061EC01010C65 +:102DB000FDDEC002C3700A3CC354FAE000080038CC +:102DC000E20913005FBE3000FDEB13FBE00B1800BF +:102DD000C261FAE00008143C5F9E0038E20913006B +:102DE0005F0B3000FDEB000BE00B1800C181F0051C +:102DF0000640EA09024BFAE10000E808034BF6013D +:102E00000001507C5001BF5CFAE00000506C301BA8 +:102E1000FAE800180008F2010049C0283FFB0F360D +:102E2000CB6B5BFBC071322840803FF981383FF8A3 +:102E3000C0985803C07030043005E8080108EA095A +:102E40000149405E580EC080580BF9BA01FFEFDA15 +:102E5000E102405A9502109A129B2F7DD832000051 +:102E60000000049C8002D99880037340D431203D37 +:102E70004C48502C70011698113EE20E0705E215E1 +:102E80000008CFB1E04E002DC041113E3015C058B2 +:102E9000E04E002BC021113E58095F0C59095F0616 +:102EA0003007F9E61006EE061800C1E0E04E0030EB +:102EB000C131118635843783E80618005F04E606C1 +:102EC00018005F06E9E61006EE061800C050119ED5 +:102ED00031092FE8C098580CC070E04E0030F9B9A5 +:102EE0000008F9B9010A3FF3E6090D023007500363 +:102EF0000E9C0E93E20E0704E1D4C001F9B0013735 +:102F0000F9B000575010FCC600300890E2100004E1 +:102F1000C0814010E9D4C002FC0001065804C1C0C1 +:102F20001236C1A4043C5FBEFDE713FEE60E180096 +:102F3000C101043C5F0E40070E365F97EFEE000EB6 +:102F4000E60E1800C061B33C3017EC0C000CC02832 +:102F50003FF7113ECD0B5BF7C061322940200E9C3C +:102F60008139C0485805FBBC0100580AC070580799 +:102F7000F9B901FFF1D9E10B950B2FDDD832000033 +:102F80000000049CD421169776DBEEC8FFBC103BF2 +:102F9000C171E06B0400F01F0015C250E06804002E +:102FA0008FDC8FE8EF380046F8CCFC03B8A8EF3888 +:102FB0000045B898EF380044B8888F0CC1386EE5EA +:102FC000EA041501089AF01F000A1896C0C00A9A70 +:102FD000189BF80500050A9CF01F00068FE48F057A +:102FE0008FD6D82ADC2A00008002E2BC8002E8E802 +:102FF0008002E736D4211697149618955BFBC650CD +:10300000580CC06078685808C031F01F00314B1868 +:103010001036C0316A06C0A84AF81036C0316A16A8 +:10302000C0584AE81036EBF600028C68A5D8AC68A8 +:10303000EDB80002C140EDB80004C461EDB8000372 +:10304000C0B10C9B0A9CF01F0026C3E18C688D6CFC +:10305000A3D88D2CAC688C68A3A8AC680E946CD8EF +:103060005C545808C1006C196CE81039C0650A9CA2 +:103070000C9BF01F001CC2816C0820188D08B084C6 +:103080000897C0C86C495809C0C06C081238E0885D +:10309000000911770837C0518D086C182FF8C12826 +:1030A0006C18ED4800406C088DF8ECC8FFBC8DD85A +:1030B00030388DE8ECC8FFBAED6400468D080897FB +:1030C00030188D18C0283FF70E9CD82280031F3877 +:1030D0008003EF2C8003EF4C8003EF6C80031D2CEA +:1030E00080032F84D431208DFAC4FFBC504B682E4E +:1030F000505812967C0B7005506E580BF40B17004D +:103100006803681140493008C2C92FFB325C178A36 +:10311000F80A18005F1EF00A18005F1CFDEC000C96 +:10312000F00C1800CF31580AE0800129300C3FFA2A +:103130001890503A18941892F80C003C1697507C4E +:103140004CDC0F3AF80A070E407C1C0C4CBEFC0C01 +:10315000070E201E500E4CAEFC0C070C507C400C91 +:10316000587CE08B00F84C7EFC0C032F368BF60A63 +:103170001800E08000F0371BF60A1800C07034CB4E +:10318000F60A1800C051A3B4CE58A5B4CE380F8BA0 +:1031900036CAF40B1800C051A5B4EECBFFFFCDB872 +:1031A000A5A4CD88EBD5C005367CF80A1800E08BC5 +:1031B0000027365BF60A1800C48234FBF60A1800B2 +:1031C000C480E08B000C345BF60A1800C3E0347B4B +:1031D000F60A1800C3A0344BC088358BF60A1800D5 +:1031E000C2C0E08B0007355BF60A1800C351C31854 +:1031F000363BF60A1800C2F0364BC0E8370BF60A29 +:103200001800C250E08B000D36EBF60A1800C1F032 +:10321000E08B0014369BF60A1800C1E1C0E8375B6A +:10322000F60A1800C0A0378BF60A1800C060373BBA +:10323000F60A1800C111C0B8EDB40004C0A0EDB486 +:103240000005C0913020C0883040C0683030C04890 +:103250003010C0283000403B5BFBC040E20B09202F +:10326000C7985860E08B00776C0AEACCFFFF486E85 +:10327000FC00032F8003F2708003F1D48003F16817 +:103280008003EFC88003EFE8F4CBFFF88D0BF4EA7E +:103290000000E605083AC0F8F4CBFFFC8D0B740A79 +:1032A000E605093AC088F4CBFFF88D0BF4EA00007C +:1032B000E605083A0E9B1895C4E8620A5BFAC0B1AD +:1032C00050195028E06A0080300B029CF01F004D1E +:1032D00040284019E4CC00010E9B503CF20C0C49F4 +:1032E000C3A8620A5BFAC0B150195028E06A008096 +:1032F000300B029CF01F0043402840192012300A76 +:103300000E9BE202092AF2020C49C25816976C0A77 +:10331000F4CBFFFC8D0B740A0E9BE605093A2FF5E2 +:10332000C1A8F4C20030C068E40200222FF7F40202 +:1033300000120F8A580AC0E0230A589AFE98FFF636 +:10334000C0982FF70F8A580AC050230A589AFE983F +:10335000FFFA0E9B407C30BAF40C1800FE91FEEE92 +:103360004042178C0A325F4AF00C18005F1CF9EAE1 +:10337000000AF00A1800FE91FECB3008404E178A72 +:10338000E2050021F00A1800FC091710E6050038D4 +:10339000069EC2A8620A583AC1E0E0890007581A9E +:1033A000C1A0582AC181C058585AC0C0C0B5C13840 +:1033B0006C0AF4CCFFF88D0CF4E20000F0E300009E +:1033C000C1086C0AF4CCFFF88D0CF4E20000F0E3C5 +:1033D0000000C0786C0AF4CCFFFC8D0C740A910AD2 +:1033E0002FF52F882FC11235FE9AFFD61C9340521D +:1033F000406E85059D0B404BE60B003C2F8DD8326F +:103400008002E8BCD421149774285808C04195184C +:10341000109CD822F01F000330088F188F28D82264 +:1034200080032320D431FACD06BC5109169114979C +:103430001895F01F0056780C50CC5805C0706A687B +:103440005808C0410A9CF01F00524D281031C0316D +:103450006A01C0A84D081031C0316A11C0584CF83B +:103460001031EBF100028268EDB80003C041624800 +:103470005808C071029B0A9CF01F0049E0810F941C +:1034800082681099E219001A58A9C3D18279300ACA +:10349000F4091900C385A1D8FB5805D06288FB4800 +:1034A00005E462A8FB4805ECFAC8FFBCFB4805D45C +:1034B000FB4805C4E0680400FB4805D8FB4805CC80 +:1034C0003008FB5905D20E9A4109FAC7FA3CFB486D +:1034D00005DC0A9C0E9BF01F003350BCC0950E9B70 +:1034E0000A9CF01F003140BEF9BE01FF50BEFB0830 +:1034F00005D0EDB80006E0810F598268A7A8A26840 +:10350000E08F0F543008FB4806B4FB480690FB4898 +:10351000068CFB4806B03008300950A75078FAC432 +:10352000F9E03FF85059FB440688FB480544129CDB +:10353000506950D950E950B9129740A2325A300818 +:10354000C0282FF20589F00918005F1BF409180044 +:103550005F19F3EB000BF00B1800CF4140ABE40B0D +:103560000106C300FAF806900C08890BFB48069088 +:103570008916FAF8068C2FF8FB48068C5878E089F3 +:1035800000152F84C1C800008003276480031F3802 +:103590008003EF2C8003EF4C8003EF6C80031C381A +:1035A0008003342480031D2CFACAF978029B0A9CFC +:1035B000F01F0071E0810EF4FAC4F9E040BA0C0A81 +:1035C00050BA05893008F0091800E0800ED930099A +:1035D000FB6806BB0E96E4C8FFFF3FFE50945041C7 +:1035E0000E940491508950A8502E50391293129085 +:1035F00010970A92C0783FFC0A97502CC038300BC5 +:10360000503B0F38C0281290F0C90020E049005804 +:10361000E08B0A4A4D9AF409032F50A750800C976B +:103620000495089602924D6940941090404150D9FB +:10363000E08F08AA3008FB3906BBF0091800CE213C +:103640003208C6E8A1A3CDEB0F89F2C80030589824 +:10365000E08B001DEEC8FFFF300B2309F60B002B9B +:10366000F20B001B1139F2CA0030589AFE98FFF78E +:10367000E0490024CC51E04B0020E0890E90201B53 +:10368000FAF906B4123BC095C108FAF906B4ECCABF +:10369000FFFF1236C1F5C268FACEF9441097FC0B51 +:1036A000003BF6F0FD88C3581097FAC8F9501AD8B5 +:1036B000FAC8FAB81AD8FAC8FBB4029A1AD8049C05 +:1036C000FAC8F940FAC9FFB4F01F002E2FDD7800C8 +:1036D000C208FACCF9441496F8040038F0F0FD88DA +:1036E000C188410859F9E0890011F0CBFFFC510B6A +:1036F0007000FACBF944F6090038F140FD882FF943 +:103700001496FB4906B4C058700014962FC851088F +:103710005800FE94FF785C30A3A3C74B32B8FB6817 +:1037200006BBC70B0F38E048002AC0303009C80874 +:103730000F88F0C900305899E08B0026EEC5FFFFD6 +:10374000300B2308F60B002BF00B001B0B38F0C9D5 +:1037500000305899FE98FFF7E0480024FE91FF5191 +:10376000E04B0020E0890E1B201BFAF806B4103B4A +:10377000C115C188800334048003F0048003EDD0B8 +:10378000800330E4FAFA06B4ECC9FFFF1436C1F541 +:10379000C288FACAF944F40B003BF6FBFD88502BB3 +:1037A000C3C8FAC8F9501AD8FAC8FAB81AD8FAC869 +:1037B000FBB4029A1AD8049CFAC8F940FAC9FFB4BB +:1037C000F01F017B2FDD780C502CC27812960E95DD +:1037D000FAC9F944F2040038F0F8FD885028C1D83D +:1037E000410859FAE0890014F0CBFFFC7008510B36 +:1037F0005028FAC6F944402EEC0A0038F14EFD88F4 +:103800002FFA0E95FB4A06B41296C078700C0E95EE +:103810002FC8502C12965108402B580BFE95FEEDE8 +:103820000A97CF0AF20900290F38F4090019F0CAE3 +:103830000030589AFE98FFF83FFAF20A0C495029D6 +:10384000CE4AA7B3CDFA30092308F2090029F009BE +:1038500000190F38F0CA0030589AFE98FFF7E04878 +:103860000024FE91FED2E0490020E0890D98F2C4C8 +:10387000000130195039CC6AA3B3CC4AA7A3CC2A93 +:103880000F8836CEFC081800C0412FF7A5B3CBAA8D +:10389000A5A3CB8AA5B3CB6A50A750800C971090F4 +:1038A00008960495409402920E994041FAF806B4A5 +:1038B000403C580CC1D01036C064FACBF944F6062F +:1038C0000036C1D8FAC8F9501AD8FAC8FAB81AD8C6 +:1038D000FAC8FBB41AD8FAC8F940FAC9FFB4049A76 +:1038E0000C9B0A9CF01F01322FDD19B8C2282FF75C +:1038F0001039C084FACAF944F4060036ED38FD8B5D +:10390000C188410959F8E0890012F2CAFFFC510A46 +:103910007209FAC6F944EC08003A2FF8F549FD8817 +:10392000FB4806B4F1D9C008C04813B82FC95109E3 +:10393000FB680660300E30083012FB6806BB502E64 +:10394000E08F08C450A750800C9704950896029207 +:10395000409410904041A5A3C0A850A750800C9758 +:10396000049508960292409410904041EDB30005F2 +:10397000C511FAF806B4403C580CC1E01036C064DA +:10398000FACBF944F6060036C208FAC8F9501AD83C +:10399000FAC8FAB80C9B1AD8FAC8FBB41AD8FAC9F4 +:1039A000FFB4FAC8F940049A0A9CF01F01012FDD08 +:1039B000781B7809C2B8EECAFFFF1037C0B4FAC945 +:1039C000F9441497F2060036ECFBFD8CECF9FD8807 +:1039D000C1D8410959F8E0890014F2CBFFF8510B26 +:1039E000FAC6F944721BEC08003C7209F94BFD8CD5 +:1039F000F949FD882FF81497FB4806B4C078F2C83F +:103A0000FFF8721B1497510872091698FAE9000022 +:103A1000CAE8EDB30004C171FAF806B4403E580E8E +:103A2000C0801036C694FACCF944F8060036C8288F +:103A3000EECAFFFF1037E0840081FACBF944F606A6 +:103A40000036C778EDB30006C4B1FAF806B4403CBE +:103A5000580CC1D01036C064FACBF944F6060036D3 +:103A6000C1F8FAC8F9501AD8FAC8FAB81AD8FAC878 +:103A7000FBB41AD8FAC8F940FAC9FFB4049A0C9BEF +:103A80000A9CF01F00CB2FDD9818C268EECAFFFF1A +:103A90001037C094FAC9F9441497F2060036ED08BD +:103AA000FD8AC1A8410959F8E0890013F2CBFFFC57 +:103AB000510B7209FAC6F944EC08003B2FF8F7499C +:103AC000FD88FB4806B41497F1D9B010C05892187D +:103AD00014972FC951095018BF585008C488FAF8D4 +:103AE00006B4403C580CC1D01036C064FACBF9443F +:103AF000F6060036C1F8FAC8F9501AD8FAC8FAB86A +:103B00000C9B1AD8FAC8FBB4049A1AD80A9CFAC8B3 +:103B1000F940FAC9FFB4F01F00A62FDD780BC248A8 +:103B2000EECAFFFF1037C094FAC9F944F206003616 +:103B30001497ECFBFD88C188410959F8E089001110 +:103B4000F2CBFFFC510BFAC6F944720BEC080039BA +:103B5000F34BFD882FF81497FB4806B4C058720B3E +:103B600014972FC95109501BBF5B500BFAEA000094 +:103B7000580A5C2BC0E43008FAEA00003009F00A69 +:103B8000010AF20B014B32D8FAEB0000FB6806BBCE +:103B90003018E08F071150A750800C9704950896B5 +:103BA00002924094109040410E99EDB30003C4116D +:103BB000FAF806B4403A580AC1901036C645FAC819 +:103BC000F9501AD8FAC8FAB81AD8FAC8FBB40C9B3C +:103BD0001AD8049AFAC8F940FAC9FFB40A9CF01F2F +:103BE00000742FDD78165076C4882FF71039C0C4C2 +:103BF000FACEF944FC060036ECFCFD8C507CECF669 +:103C0000FD885056C668410959F8E0890010F2CA8B +:103C1000FFF8721B510A7209FACAF944507B5059D5 +:103C2000F4080039405B407AC47872185078C4C8F0 +:103C3000FAF806B4403E580EC2301036C094FACCA2 +:103C4000F944F8060036ECFBFD8C507BCD9BFAC89E +:103C5000F9501AD8FAC8FAB8049A1AD8FAC8FBB4B4 +:103C60000C9B1AD80A9CFAC8F940FAC9FFB4F01F95 +:103C700000502FDD781A507A780C505CC2A82FF7CC +:103C80001039C094FAC9F944F2060036ECF8FD8CFC +:103C90005078CB6B410959F8E0890015F2CAFFF85A +:103CA00072167209510A5059FACEF9445076FC083E +:103CB0000039405B0C9AF2EBFD882FF8FB4806B404 +:103CC000C088721C507CF2C8FFF851087209505924 +:103CD000405B407AF01F00371896C1503008300919 +:103CE000405B407AF01F0034C04032D8FB6806BB0E +:103CF0004B284B36A7D3E0400047F00617A03032E0 +:103D0000E08F06E7405B407AF01F002EC0C05026CF +:103D10004AD84AE6A7D3E0400047F00617A0303261 +:103D2000E08F06DD402A5BFAC04130695029C11896 +:103D3000E04000475F09E04000675F08F3E81008D3 +:103D4000F8081800C06040285808F9B80001502849 +:103D500040784059FAE90694A9A3FAF8069458085D +:103D6000C065405E300C506E509CC078405B32DACB +:103D7000EE1B8000509A506BE04000465F09E04027 +:103D800000665F08F3E810085048C0404022303910 +:103D9000C228E04000455F09E04000655F084046FA +:103DA0001049EC091800C1314022C148800330E4B9 +:103DB0008003697880036FC08003F2408003F2447F +:103DC00080032A7E8003F2488003F24C402EFCC21E +:103DD000FFFF3029FAC8F95C1AD8FAC8F9541AD882 +:103DE000FAC8F94C0A9C1AD80498409B40AAF01FC4 +:103DF00001E0E04000475F19E04000675F18189657 +:103E00002FDDF3E80008C041EDB30000C301EC0270 +:103E1000000C503C404B580BC1500D893308F00941 +:103E20001800C0B130083009406B407AF01F01D152 +:103E3000FBB20001FBF20BAB403AFAF806AC100AF9 +:103E4000503A406B30083009407AF01F01CAC090E8 +:103E50004039FB4906A4C05810C9FB4806A4C02835 +:103E60003309FAF806A4403E1C38CF73E0400047FF +:103E70005F09E04000675F08F3E81008FAF906A45C +:103E80000C1950695808C0B0FAF806AC5BD8C05598 +:103E9000402C1838E08A006A2020C058E0400065B5 +:103EA000E0890046FAFB06ACFB60069C201BFB4B3E +:103EB00006ACC0475C3B32D8C02832B8FB68069DD0 +:103EC000589BE08A001DFAC9FA3530AA12980E9C58 +:103ED0000C92F60A0C060E9B2D0B10FB0C9B5896B1 +:103EE000FE99FFF92D0B1897049610FBFACAF96298 +:103EF000C038113B14CB1238CFD3C0982D0B3308E8 +:103F0000FB6B069FFB68069EFACAF960FAC8F96463 +:103F1000F408010850E81092406B1602581BE08923 +:103F20000005EDB30000C3512FF2C338E040006636 +:103F3000C1C1FAF206AC5802E08A000C402A580AC5 +:103F4000C041EDB30000C2512FF240291202C0B8A7 +:103F500040285808C061EDB30000C0303012C1984D +:103F600040222FE23660C158FAF206AC406E1C3295 +:103F7000C065EDB30000F7B200FFC0A8E40811026D +:103F8000406C5802F00217A0F9B20901180236700D +:103F9000409B580BE080059D32D8FB6806BBE08F44 +:103FA000059C50A704950C970292089640414094B6 +:103FB0000E99EDB30005C481FAF806B4403E580EE0 +:103FC000C1D01036C064FACCF944F8060036C1D826 +:103FD000FAC8F9501AD8FAC8FAB8049A1AD8FAC81E +:103FE000FBB40C9B1AD80A9CFAC8F940FAC9FFB472 +:103FF000F01F01612FDD780AC2082FF71039C08445 +:10400000FACBF944F6060036ECFAFD88C16841099E +:1040100059F8E0890010F2CAFFFC510AFAC6F944C7 +:10402000720AEC080039F34AFD882FF8FB4806B401 +:10403000C048720A2FC9510940BE1C98951EBF582E +:104040009508FE9FFA7CEDB30004C480E2130040A3 +:10405000C450FAF806B4403C580CC1D01036C064C5 +:10406000FACBF944F6060036C1D8FAC8F9501AD886 +:10407000FAC8FAB8049A1AD8FAC8FBB40C9B1AD832 +:104080000A9CFAC8F940FAC9FFB4F01F013B2FDDC2 +:10409000780AC2082FF71039C084FACAF944F40626 +:1040A0000036ECFAFD88C168410959F8E089001032 +:1040B000F2CAFFFC510AFAC6F944720AEC08003948 +:1040C000F34AFD882FF8FB4806B4C048720A2FC98E +:1040D000510940BEB40EFE9FFA32FAF806B4403CD5 +:1040E000580CC1D01036C064FACBF944F60600363D +:1040F000C1D8FAC8F9501AD8FAC8FAB8049A1AD826 +:10410000FAC8FBB40C9B1AD80A9CFAC8F940FAC941 +:10411000FFB4F01F01192FDD780AC2082FF71039FC +:10412000C084FACAF944F4060036ECFAFD88C16886 +:10413000410959F8E0890010F2CAFFFC510AFAC699 +:10414000F944720AEC080039F34AFD882FF8FB485D +:1041500006B4C048720A2FC9510940BE950EFE9F91 +:10416000F9EE50A750800C9704950896029240945F +:1041700010904041A5A3C0A850A750800C9704956B +:1041800008960292409410904041EDB30005C5D1CD +:10419000FAF806B4403C580CC2601036C0A4FACB02 +:1041A000F944F6060036ECE8FD88FAE90000C1881B +:1041B000FAC8F9501AD8FAC8FAB8049A1AD80C9B57 +:1041C000FAC8FBB40A9C1AD8FAC8F940FAC9FFB475 +:1041D000F01F00E92FDDF8EA0000FAEB00003008DC +:1041E000E08F03E7EECAFFFF1037C0B4FAC9F94405 +:1041F0001497F2060036ECEAFD88FAEB0000C1885D +:10420000410959F8E0890018F2E60000F2CBFFF806 +:10421000FAE70000510BFAC6F944EC080039FAE657 +:104220000000F2E7FD882FF81497FB4806B44038E9 +:10423000E08F03BFF2E600004038FAE700002F8964 +:1042400014975109E08F03B5EDB30004C161FAF88A +:1042500006B4403E580EC0801036C674FACCF944FD +:10426000F8060036C808EECAFFFF1037C7F4FACBCD +:10427000F944F6060036C768EDB30006C4A1FAF8A3 +:1042800006B4403C580CC1D01036C064FACBF94497 +:10429000F6060036C1F8FAC8F9501AD8FAC8FAB8C2 +:1042A0001AD8FAC8FBB41AD8FAC8F940FAC9FFB448 +:1042B000049A0C9B0A9CF01F00B02FDD9818C2686E +:1042C000EECAFFFF1037C094FAC9F9441497F206FA +:1042D0000036ED08FD8AC1A8410959F8E0890013AC +:1042E000F2CBFFFC510B7209FAC6F944EC08003B13 +:1042F0002FF8F749FD88FB4806B41497F1D9B010A0 +:10430000C058921814972FC951095C785018C46886 +:10431000FAF806B4403C580CC1D01036C064FACB51 +:10432000F944F6060036C1F8FAC8F9501AD8FAC8A6 +:10433000FAB80C9B1AD8FAC8FBB4049A1AD80A9C8B +:10434000FAC8F940FAC9FFB4F01F008B2FDD780BD3 +:10435000C248EECAFFFF1037C094FAC9F944F2060A +:1043600000361497ECFBFD88C188410959F8E089B3 +:104370000011F2CBFFFC510BFAC6F944720BEC08AA +:104380000039F34BFD882FF81497FB4806B4C0584A +:10439000720B14972FC95109501B300E500E1C98E8 +:1043A000E08F030750A750800C970495089602925F +:1043B000409440410E99FAF806B4403C580CC1D0E4 +:1043C0001036C064FACBF944F6060036C1D8FAC8F4 +:1043D000F9501AD8FAC8FAB81AD8FAC8FBB41AD8D9 +:1043E000FAC9FFB4FAC8F940049A0C9B0A9CF01F62 +:1043F00000622FDD7809C2182FF71039C084FACA7D +:10440000F944F4060036ECF9FD88C178410959F801 +:10441000E0890010F2CAFFFC510AFAC6F944720999 +:10442000EC08003AF549FD882FF8FB4806B4C0585F +:10443000F2C8FFFC510872093308FB6806B83788D8 +:10444000300EFB6806B94CDC5019A1B3500E50DC9D +:1044500030283780E08F02AD50A750801090300890 +:10446000FB6806BB0C970495089602924094404165 +:104470000E99FAF806B4403B580BC1D01036C06410 +:10448000FACAF944F4060036C1D8FAC8F9501AD865 +:10449000FAC8FAB81AD8FAC8FBB40C9B1AD8049A0E +:1044A000FAC8F940FAC9FFB40A9CF01F00332FDDA7 +:1044B0007806C2082FF71039C084FAC9F944F20609 +:1044C0000036ECF6FD88C168410959F8E089001012 +:1044D000F2CAFFFC510A7206FACEF944FC08003910 +:1044E000F346FD882FF8FB4806B4C04872062FC972 +:1044F0005109402C580CC105189A300B0C9CF01F28 +:104500000020E08002E9F8060102402B1632E08923 +:1045100002E3E08F02DE300A0C9C502AF01F0019E3 +:104520001892E08F02DC50A750800C9704950896F3 +:104530000292409410904041A5A3C0A850A750807B +:104540000C97049508960292409410904041EDB368 +:104550000005C611FAF806B440395809C2C0103631 +:10456000C124FAC8F944F0060036C2E88003552C8D +:1045700080036F32800330E48003EDE4800328A4DD +:104580008002EDD0FAC8F9501AD8FAC8FAB81AD889 +:10459000FAC8FBB41AD8FAC8F940FAC9FFB4049AA9 +:1045A0000C9B0A9CF01F00C82FDDF8E80000FAE918 +:1045B0000000C2E8EECAFFFF1037C0B4FAC8F944E1 +:1045C0001497F0060036ECEAFD88FAEB0000C2080A +:1045D000410959F8E0890016F2E60000F2CBFFF835 +:1045E000FAE70000510BFAC6F944EC080039FAE684 +:1045F0000000F2E7FD882FF81497FB4806B4C08846 +:10460000F2E600002F89FAE70000510914973018EC +:10461000E08F01CFEDB30004C161FAF806B4403E6B +:10462000580EC0801036C674FACCF944F80600362D +:10463000C808EECAFFFF1037C7F4FACBF944F606F4 +:104640000036C768EDB30006C4A1FAF806B4403CD2 +:10465000580CC1D01036C064FACBF944F6060036C7 +:10466000C1F8FAC8F9501AD8FAC8FAB81AD8FAC86C +:10467000FBB41AD8FAC8F940FAC9FFB4049A0C9BE3 +:104680000A9CF01F00912FDD9818C268EECAFFFF48 +:104690001037C094FAC9F9441497F2060036ED08B1 +:1046A000FD8AC1A8410959F8E0890013F2CBFFFC4B +:1046B000510B7209FAC6F944EC08003B2FF8F74990 +:1046C000FD88FB4806B41497F1D9B010C058921871 +:1046D00014972FC951095C785018C468FAF806B4C9 +:1046E000403C580CC1D01036C064FACBF944F606F1 +:1046F0000036C1F8FAC8F9501AD8FAC8FAB80C9BB3 +:104700001AD8FAC8FBB4049A1AD80A9CFAC8F94015 +:10471000FAC9FFB4F01F006C2FDD780BC248EECA57 +:10472000FFFF1037C094FAC9F944F2060036149717 +:10473000ECFBFD88C188410959F8E0890011F2CBF2 +:10474000FFFC510BFAC6F944720BEC080039F34B2D +:10475000FD882FF81497FB4806B4C058720B1497C5 +:104760002FC95109501B300E3018500EC21950A7D6 +:1047700050800C970495089602924D4C40941090EE +:10478000404150DCEDB30005C551FAF806B4403B9A +:10479000580BC2201036C0A4FACAF944F4060036F9 +:1047A000ECE8FD88FAE90000CF58FAC8F9501AD8A9 +:1047B000FAC8FAB8049A1AD80C9BFAC8FBB40A9C37 +:1047C0001AD8FAC8F940FAC9FFB4F01F003F2FDD2C +:1047D000F8EA0000C0C8EECAFFFF1037C0B4FAC93B +:1047E000F9441497F2060036ECEAFD88FAEB000073 +:1047F000CD18410959F8E0890016F2E60000F2CB25 +:10480000FFF8FAE70000510BFAC6F944EC0800394A +:10481000FAE60000F2E7FD882FF81497FB4806B48B +:10482000CB98F2E600002F89FAE7000051091497AF +:10483000CB18EDB30004C171FAF806B4403E580E2F +:10484000C0801036C6C4FACCF944F8060036C85801 +:10485000EECAFFFF1037E0840084FACBF944F60675 +:104860000036C7A8EDB30006C4E1FAF806B4403C30 +:10487000580CC1D01036C064FACBF944F6060036A5 +:10488000C1F8FAC8F9501AD8FAC8FAB81AD8FAC84A +:10489000FBB41AD8FAC8F940FAC9FFB4049A0C9BC1 +:1048A0000A9CF01F00092FDD9818C2A8EECAFFFF6E +:1048B0001037C0D4FAC9F9441497F2060036ED084F +:1048C000FD8AC1E8800330E48003EDE4410959F832 +:1048D000E0890013F2CBFFFC510B7209FAC6F944D0 +:1048E000EC08003B2FF8F749FD88FB4806B4149705 +:1048F000F1D9B010C058921814972FC951095C789B +:104900005018C468FAF806B4403C580CC1D01036B0 +:10491000C064FACBF944F6060036C1F8FAC8F9507B +:104920001AD8FAC8FAB80C9B1AD8FAC8FBB4049A79 +:104930001AD80A9CFAC8F940FAC9FFB4F01F00C996 +:104940002FDD780BC248EECAFFFF1037C094FAC9BA +:10495000F944F20600361497ECFBFD88C188410942 +:1049600059F8E0890011F2CBFFFC510BFAC6F9446B +:10497000720BEC080039F34BFD882FF81497FB48B5 +:1049800006B4C058720B14972FC95109501B300E32 +:10499000500E4008401C18485F18E7E80008C07037 +:1049A0003308FB6006B9A1B3FB6806B830283009AC +:1049B000FB6906BB402B580BC025A7D3402A4009F2 +:1049C000580A5F1A4016FAC2F9780C495F19F5E9DE +:1049D0001009C5C03019F2081800C0603029F2086B +:1049E0001800C041C3C80496C3080496FAE8000042 +:1049F000F5D8C0032D0A0CFAF00B1603F20C1603BF +:104A0000F7E911DB1899169858085C29CF21FAE9C3 +:104A10000000EDB30000C4513309F20A1800C410BD +:104A20000CF9C3F8FAEA000030A83009F01F008E34 +:104A300030A82D0A3009AC8AFAEA0000F01F008B7A +:104A400016991498FAE900002016FAEA0000589A1C +:104A50005C2BFE9BFFE91BF82D08C2080496FAE8C0 +:104A60000000F5D8C00440DEFC0A070A0CFAF20B7D +:104A70001604F00A1604F5E911CA16991498580894 +:104A80005C29CF01FAE90000C0C85808C091EDB315 +:104A90000000C061FAC6F9793308AC88C0280496D2 +:104AA0000C12C1C850A7508040940C9710900495E8 +:104AB00040415808E0800464FB680660300C300810 +:104AC0003012FB6806BB502CFAC6F9A0C078300B38 +:104AD000502BC0484022300A502A4029E4090C4992 +:104AE000FB3806BB5039069E3009E21E0002F20870 +:104AF0001800FBF81003F7B801FFFBF81A03069B38 +:104B0000580EFBFC1003F7BC01FEFBFC1A03E21B72 +:104B1000008450FE509BC451408A4039121A504ABA +:104B2000580AE089001FC3D82F092FF84D0E310C09 +:104B3000FB490690890E891CFB48068C5878E08951 +:104B400000042F84C0B8FACAF978029B0A9CF01FAF +:104B50000049E0810425FAC4F9E0404B210B504B99 +:104B6000FAF90690FAF8068C4C1A404E590EFE9946 +:104B7000FFDD1C092FF8890AFB490690891EFB48B6 +:104B8000068C5878E08900042F84C0B8FACAF978F6 +:104B9000029B0A9CF01F0037E0810402FAC4F9E08E +:104BA0003009FB3806BBF2081800C1F0FAF806908D +:104BB000FAC9F9452FF88909FB4806903019FAF827 +:104BC000068C89192FF8FB48068C5878E089000478 +:104BD0002F84C0B8FACAF978029B0A9CF01F0025FE +:104BE000E08103DEFAC4F9E040FC580CC1F0FAF8A9 +:104BF0000690FAC9F9482FE88909FB480690302940 +:104C0000FAF8068C89192FF8FB48068C5878E08949 +:104C100000042F84C0B8FACAF978029B0A9CF01FDE +:104C20000015E08103BDFAC4F9E0409BE04B008031 +:104C3000C511408A4039121A504A580AE089002B9F +:104C4000C4982F092FF848CE310CFB490690890EE5 +:104C5000891CFB48068C5878E08900102F84C178A5 +:104C6000800330E4800373408002D9988003F250BF +:104C7000800334048003F260FACAF978029B0A9C2C +:104C8000F01F004CE081038CFAC4F9E0404B210B8B +:104C9000504BFAF90690FAF8068C4C7A404E590EB1 +:104CA000FE99FFD11C092FF8890AFB490690891E3D +:104CB000FB48068C5878E08900042F84C0B8FACAF3 +:104CC000F978029B0A9CF01F003BE0810369FAC45B +:104CD000F9E0402C041C502C580CE089001FC3D86C +:104CE0002F092FF84B4B310AFB490690890B891A83 +:104CF000FB48068C5878E08900042F84C0B8FACAB3 +:104D0000F978029B0A9CF01F002BE0810349FAC44A +:104D1000F9E0402921095029FAF90690FAF8068CA1 +:104D20004A5A402E590EFE99FFDD1C092FF8890AB8 +:104D3000FB490690891EFB48068C5878E0890004E0 +:104D40002F84C0B8FACAF978029B0A9CF01F001998 +:104D5000E0810326FAC4F9E0EDB30008C0B0FAF828 +:104D6000069089128906F0020002FB420690E08F4D +:104D700001DBE0400065E08A01DD30083009405B7E +:104D8000407AF01F000EC7E0FAF8069048C92FF8E5 +:104D90008909FB4806903019FAF8068C89192FF812 +:104DA000FB48068C5878E089000D2F84C14800002C +:104DB000800334048003F26080036F328003A6C056 +:104DC000FACAF978029B0A9CF01F0078E08102E899 +:104DD000FAC4F9E0FAF806AC406C1838C055EDB3E7 +:104DE0000000E081026DFAF806902FF840CBFB48F6 +:104DF00006903019FAF8068C890B2FF88919FB48B0 +:104E0000068C5878E08900042F84C0B8FACAF97873 +:104E1000029B0A9CF01F0065E08102C2FAC4F9E01F +:104E2000406620165806E089001DE08F02492F09D0 +:104E30002FF8FB49069089028910FB48068C5878A8 +:104E4000E08900042F84C0B8FACAF978029B0A9C52 +:104E5000F01F0056E08102A4FAC4F9E02106C03830 +:104E60004D323100FAF90690FAF8068C4D0A5906CF +:104E7000FE99FFDF0C09890AFB4906902FF8891675 +:104E8000C559FAFA06AC580AE0890096FAF8069075 +:104E90004C892FF88909FB4806903019FAF8068CDE +:104EA00089192FF8FB48068C5878E08900042F8474 +:104EB000C0B8FACAF978029B0A9CF01F003CE08156 +:104EC000026FFAC4F9E0FAF806AC5808C081406AEB +:104ED000580AC051EDB30000E08101F240C9FAF870 +:104EE00006902FF88909FB4806903019FAF8068CCD +:104EF00089192FF8FB48068C5878E08900042F8424 +:104F0000C0B8FACAF978029B0A9CF01F0028E08119 +:104F10000247FAC4F9E0FAF206AC5C325802E089C2 +:104F2000001DC3B82F092FF8310EFB4906908900E8 +:104F3000891EFB48068C5878E08900042F84C0B88D +:104F4000FACAF978029B0A9CF01F0018E081022837 +:104F5000FAC4F9E02102C0284950FAF90690FAF89B +:104F6000068C493A5902FE99FFDF04092FF8890A95 +:104F7000FB4906908912FB48068C5878E0890004AA +:104F80002F84C0B8FACAF978029B0A9CF01F000768 +:104F9000E0810206FAC4F9E0406CFAF8069089064E +:104FA000891C1808CBE80000800334048003F260F9 +:104FB0008003A6C0FAF90690FAF8068C406B163A00 +:104FC000C6D516092FF88906FB490690891BFB48B0 +:104FD000068C5878E08900042F84C0B8FACAF978A2 +:104FE000029B0A9CF01F006FE08101DAFAC4F9E02D +:104FF000FAF606AC406A14165806E089001CC3B8DD +:105000002F092FF8FB49069089028910FB48068C6E +:105010005878E08900042F84C0B8FACAF978029B56 +:105020000A9CF01F0060E08101BBFAC4F9E0210690 +:10503000C0384DD23100FAF90690FAF8068C4DAA24 +:105040005906FE99FFDF0C092FF8890AFB490690E3 +:105050008916FB48068C5878E08900042F84C0B874 +:10506000FACAF978029B0A9CF01F004EE081019871 +:10507000FAC4F9E0EDB30000E081012240C9FAF87A +:1050800006902FF88909FB4806903019FAF8068C2B +:1050900089192FF8FB48068CC04914092FF8FB49E1 +:1050A00006908906891AFB48068C5878E089000426 +:1050B0002F84C0B8FACAF978029B0A9CF01F003905 +:1050C000E081016EFAC4F9E040C88908FAF8069058 +:1050D0002FF83019FB4806908919FAF8068C2FF83A +:1050E000FB48068CFAF206AC5878E08900042F845D +:1050F000C0B8FACAF978029B0A9CF01F002AE08126 +:10510000014FFAC4F9E00406FAF806AC8906FAF988 +:1051100006904066406E1016F208010889161C08B9 +:10512000FB480690FAF8068C2FF8FB48068CCB98C3 +:10513000406C581CE0890006EDB30000E081008758 +:10514000FAF806902FF83019FB4806908906FAF80D +:10515000068C89192FF8FB48068C5878E0890004E2 +:105160002F84C0B8FACAF978029B0A9CF01F000D80 +:10517000E0810116FAC4F9E0FAF806902FF840CB66 +:10518000FB4806903019FAF8068C890B2FF889191C +:10519000FB48068C5878E08900092F84C10800007C +:1051A000800334048003F260FACAF978029B0A9CF7 +:1051B000F01F006FE08100F4FAC4F9E03008300914 +:1051C000405B407AF01F006B40682018580CC0D13B +:1051D0002FF689188906FAF606901006FAF8068C5A +:1051E000FB4606902FF8C2F810965808E089001C7C +:1051F000C4982F092FF8FB49069089028910FB48B3 +:10520000068C5878E08900042F84C0B8FACAF9786F +:10521000029B0A9CF01F0056E08100C2FAC4F9E02C +:105220002106C0384D423100FAF90690FAF8068C92 +:105230004D1A5906FE99FFDF0C09890AFB490690B1 +:105240002FF88916FB48068CC0E8FAF806902FF86C +:105250003019FB4806908906FAF8068C89192FF850 +:10526000FB48068C5878E08900042F84C0B8FACA3D +:10527000F978029B0A9CF01F003EE0810091FAC47D +:10528000F9E040EAFAF806901408FAC9F964FB4814 +:105290000690891AFAF8068C89092FF8FB48068CC3 +:1052A0005878E08900042F84C0A8FACAF978029BD4 +:1052B0000A9CF01F002FC731FAC4F9E0E213000482 +:1052C000C3D04086403912165806E089001AC368D8 +:1052D0002F092FF8FB49069089038912FB48068C99 +:1052E0005878E08900042F84C098009A029B0A9C99 +:1052F000F01F001FC541FAC4F9E02106C05849F368 +:105300003102FAC0F978FAF90690FAF8068C49BA2F +:105310005906FE99FFDF0C092FF8890A8916FB4907 +:105320000690FB48068C5878E08A0009FACAF9789A +:10533000029B0A9CF01F000EC32140BC4036408EE9 +:10534000EC0E0C48100C50BCFAF806905808C080BF +:10535000FACAF978029B0A9CF01F0005C201300BC3 +:10536000FAC4F9E0FB4B068CFE9FF0E9800334049D +:1053700080036F328003F2608003F250FAF80690E7 +:105380005808C0800A9CFACAF978029BF01F0009ED +:10539000C0613008FB48068CC02840418268EDB8E7 +:1053A0000006C0313FFA50BA40BCFE3DF944D83245 +:1053B00080033404D42116981897109C3008149B4D +:1053C0004866129A8D08F01F00065BFCC0516C08FD +:1053D0005808EFF81A03D82200008CC48002F1505C +:1053E000D421300818974876169C8D08F01F0006C7 +:1053F0005BFCC0516C085808EFF81A03D822000073 +:1054000000008CC48002F108D431202D1897784810 +:1054100076460C38C034300CC858ECC2FFFCF6C3DA +:10542000FFECF6020329F802032C2FF92016F809E5 +:105430000D08F6020022EEC4FFEC10955808C410C7 +:105440003009069A08981291500B700EB18E501EBA +:10545000150EFC001610FDDEC010EA0E0341FDD152 +:10546000C010B181401BEA000240E2000000E3D01E +:10547000C010021B501B700BE3DBC0100209F20EC0 +:10548000010EB01EFC091410401EFC090009B009F1 +:10549000E00116102FC8B149043AFE98FFD8400B1E +:1054A000580CC0F1ECC8FFFBEE080028C0282016FD +:1054B00020480838E088000570095809CF908F46C9 +:1054C0000E9CF01F001AC2D52FF508983009070B63 +:1054D000F60A1610700CF7DBC010F80E1610141E2A +:1054E000F5DCC010161A120AB01AB14AFC0A0009FB +:1054F000B0092FC8B1490433FE98FFEBECC8FFFB9D +:10550000EE0803295809C0D1EE080028C02820164B +:1055100020480838E088000570095809CF908F4668 +:105520000A9C2FEDD8320000800363EED43121AD08 +:10553000FAC4FF7418971695682C50C96816680944 +:1055400050E81494512CFAE5000851596E9558050D +:10555000C091310CF01F004799358F9C9915992502 +:1055600099056E9972085808C0F0721A911A301A8B +:105570007219F4090949109B91290E9CF01F003EF5 +:105580006E9830099109402810945808C064F1D8E9 +:10559000C01F50283018C02830088D08FC1C7FF030 +:1055A00040260C98E6187FF01838C1C1E068270F34 +:1055B000415B9708403A580AC061EDD6C014C0312B +:1055C0004AECC0284AEC41295809E08005DEF8C8B9 +:1055D000FFFD3009118AF20A1800C190F8C8FFF8DF +:1055E000C168FAEA00083008FAEB003C3009F01F05 +:1055F0000025C1103018415A950841294A285809F8 +:10560000C041109CE08F05C1109C2FF841258B08EC +:10561000E08F05BBFAC8FF9CFAC9FFA0FAEA003C7C +:105620000E9CEBD6C28BF01F001918935805C0D002 +:10563000FAEA003C3004F1DBC014EAC503FF109B1A +:105640005174EA1B3FF0C3284188419C100CF8C5F7 +:10565000FBCEE0450020E08A001BF8CCFBEE403B8F +:10566000EA081140F60C0A4CEC0809460C4CC148FB +:105670008002E2A4800364208003F3708003F37C43 +:1056800080036F328003A6C0800364D0EA0C11202F +:10569000403AF40C094CF01F006BFC18FE10301956 +:1056A000EAC50433F00B000B51793008FC193FF8C0 +:1056B000F01F0065E0684361EA18636FE06987A73F +:1056C000EA193FD2F01F0061E068C8B3EA188B60A6 +:1056D000E0698A28EA193FC6F01F005D0A9C149011 +:1056E0001691F01F005CE06879FBEA18509FE069B2 +:1056F0004413EA193FD3F01F005514981699009AE5 +:10570000029BF01F005314901691F01F00533008B5 +:1057100018963009009A029BF01F0050C0C00C9CE4 +:10572000F01F004C14981699009A029BF01F004C31 +:10573000F7B600015966E088000530185148C128C5 +:105740004C88FAEA003CF0060238F01F0044F9B435 +:105750000000FBF40A14F7B60101F9BC0100FBFCE0 +:105760001A14419020100A10C04650403000C04822 +:10577000300B5C30504BEC0211005806FBFA400431 +:10578000F5D6E40AFBFA4A04FBF64A11F9B2040022 +:10579000E1D6E510F9B90500FBF95A1140C858984F +:1057A000E08B00205858F9B40A01FBF5900CF7B5CE +:1057B0000904FBF59A0CF9B4090040CC583CC2D05E +:1057C000E0890005582CC101C18840CB584BC0600E +:1057D000585BC0A1301A50DAC228301950D9C0F82D +:1057E0003008301450C83FF5301C300B509550DC59 +:1057F0000A91312850EBC208300A50DA40E95809C2 +:10580000E089000730185098109150E8C15840E5E1 +:1058100050950A910A98C108300C50DC40EBEC0B13 +:10582000000B509B16982FF85808E089000510913E +:105830003018C028109130096E9A95193049C178F6 +:1058400080036E4A80036B7C800369A480036D181B +:1058500080036E5280036E2480036FC080036F321A +:105860008003F38C6A1AA1792FFA8B1A6E95F2CA0B +:10587000FFEC103AFE98FFF86A1B0E9CF01F0053D5 +:1058800058E15F888B0CF1E400046E987008508832 +:10589000E08001985806E08A0040F3D6C0044CC866 +:1058A000F0090234FAE50018EC041404EDB4000425 +:1058B000C0303025C0F84C78F0E80020FAEA003C0F +:1058C000E9D4C004F01F0044303514981699FAE961 +:1058D00000084C0C50A30C931896C0F8FAEA001874 +:1058E000EDB40000C081ECE800002FF5F01F003B94 +:1058F000FAEB0018A1542F865804CF11FAE80018CB +:10590000FAEA00080696F01F003440A3149816998E +:10591000FAE90008C2D8EC081100C0313025C2886D +:105920004ACCF0041404501CF1D8C0044A89FAEAA5 +:10593000003CF2080238F01F0029401C506330255B +:105940000C93FAEB00081896C0F8FAEA0008EDB4D8 +:105950000000C081ECE800002FF5F01F0020FAEBFA +:105960000008A1542F865804CF1106964063414A7F +:10597000580AC370FAE8000858015F94FAE9001861 +:105980003008FC193FF0FAEA0018F01F0015F9BCC6 +:105990000000F9BC0101E9EC000CC2304098580845 +:1059A000E08A010C3008FC194024ECC40001FAEA3A +:1059B00000182FF55064F01F0009409414981699B0 +:1059C000FAE90008C1080000800364588003F38CE2 +:1059D0008003F45480037028800369A480036FC09F +:1059E000506602940A9CF01F0069FAE80008F01F54 +:1059F00000683008FC19401CF01F006614981699C6 +:105A0000FAE90028FC18FCC040A5100550A5580470 +:105A1000C211FAEA00083008FC194014F01F005EB9 +:105A200040BCFAEB000814981699189A0A9BF01FCC +:105A3000005BE08102740A9840B9EE188000FAEA2F +:105A40000008109512980A99F01F0054E081025E38 +:105A5000CB484D39E8C8000140D55805C4F0300C9A +:105A6000F2080238513C300AFC1B3FE0F01F004DA9 +:105A7000FAE800284085F01F0048FAEB0028FAEA0F +:105A80000008F01F0049516CF01F0040149816994F +:105A9000FAEA0008F01F0040FAEB000841682D0800 +:105AA0000AC841392FF95139FAE80028F01F003BA4 +:105AB000E081035AFAE80008300AFC1B3FF0F01FAF +:105AC0000036FAE80028F01F0035FAEA002830080E +:105AD000FC194024E08100E8413C083CC6E4F01F8A +:105AE000002C3008FAEB0028FC194024FAEA0008E0 +:105AF000F01F0027FAEB0008CC3B40850805F208B0 +:105B0000023A5135FAE800284085F01F0021FAEBEF +:105B10000028FAEA0008F01F0024516CF01F001B57 +:105B200014981699FAEA0008F01F001BFAEB000817 +:105B300041682D080AC8413C1835C3713008FC196A +:105B40003FE0FAEA0028F01F00134085FAE8000859 +:105B50000805F01F0012E08100A7FAE80028300ACB +:105B6000FC1B3FE0F01F000C14981699FAEA00089D +:105B7000F01F000AC22033090A98117AF20A1800AD +:105B8000E08102F21095CF9B80036E52800369A4DE +:105B900080036D1880036B7C80036FC08003F38CDF +:105BA0008003702880036E243008FC194024F01F05 +:105BB0000056FAEB0008CAEBFAEA003CFAEB0008E0 +:105BC00058E65FAB418A3008F40911FFF7E903F9A1 +:105BD000F0091800E080008140EA58015FA9F3EA6B +:105BE00003F94CAAF4060234FAE50010F009180093 +:105BF000C1405801E081018A3008FC194014089A1C +:105C00000A9BF01F0041FAE80008F01F0041E08104 +:105C1000017D0292E08F018540853014FAE8001082 +:105C2000FAEA0008F01F003BF01F003B1892F01F3B +:105C3000003BFAE80010F01F003414981699FAEAB5 +:105C40000008F01F0037FAEB0008E4C8FFD00AC8CC +:105C5000FC19402430080234C331FAE80008F01F70 +:105C600000311691149014980299FAEA0010F01F6E +:105C7000002EC1A1FAE80010009A029BF01F002B31 +:105C8000E0800271E5D2C001C0F1E08F026C408A71 +:105C90001438C0301095C098330840892FF6B28868 +:105CA0004088C088406633990A98117AF20A180031 +:105CB000CEF0506611892FF9B089E08F0255F01FA0 +:105CC00000122FF4FAEB000830083009F01F00171B +:105CD000CA60E08F024840D85808C0510498009527 +:105CE00040D4C4A840C55815E08900224174580426 +:105CF000C040F4C9FBCDC0484199F209113604985F +:105D00000095C2F8800369A48003F38C80036F5868 +:105D10008003702880036E2480036E5280036B7CA6 +:105D200080036D1880036FC080036F32E2C80001EA +:105D30005801E0051740E2091740E1D1E515F9B92E +:105D400005001032E5D8E418F1D2E518E5D8E502EF +:105D5000FBFC5011F9D8E50CFBFC5A11F9B8050011 +:105D6000404B120B5008504B1200301B0E9CF01F82 +:105D7000010840081894404A58055F99580A5F9AEC +:105D8000F5E90009C080404CF8050D49121C1210BD +:105D9000504C12155802E08A002740DB580BC1D046 +:105DA0005808E08A0017109A5008089B0E9CF01FB4 +:105DB00000F9069A189B18940E9CF01F00F718998A +:105DC000069B50190E9CF01F00F5401940081293D5 +:105DD000E408010AC080C028049A069B0E9CF01FAC +:105DE00000ED1893301B0E9CF01F00E9411A189229 +:105DF000580AE08A0007189B0E9CF01F00E61892D4 +:105E000040C95819E089001440385808C101402998 +:105E1000F1D9C014C0C11298E6187FF0C080404C80 +:105E2000301B2FFC2FF0504C506BC038300A506A9A +:105E300041195809C031301CC09864482FC8E40883 +:105E4000032CF01F00D7F80C1120404BF80B000872 +:105E5000F1D8C005C0C0F00811205848E08A0006FB +:105E60002048100B504BC0785848C070404A2E480C +:105E7000100A504A100010055800E08A0008069BDE +:105E8000009A0E9CF01F00C7189340495809E08AF9 +:105E90000008049B129A0E9CF01F00C21892414801 +:105EA0005808C1B0049B069CF01F00BFC164069B4C +:105EB000300930AA0E9CF01F00BD2016189340DC5C +:105EC000580CC0314091C098089B4091300930AACD +:105ED0000E9CF01F00B6189458015FA940CB582BB8 +:105EE0005F98F3E80008C2505801C111049B029961 +:105EF000305A0E9CF01F00AD1892189B069CF01FA4 +:105F000000AAE089000FC0383002049440EA30094A +:105F10005CDA4085506A5049C0F9089240660494A2 +:105F20002FF65066331840850AC830085048C049DB +:105F300040DC580CE08000B55805E08A0008089B5A +:105F40000A9A0E9CF01F00971894406B580BC031B2 +:105F5000089CC138681B0E9CF01F0095684A189574 +:105F6000E8CBFFF42FEA2F4CA36AF01F00920A9BA4 +:105F7000301A0E9CF01F008B5044403A3019F5DA6D +:105F8000C001189450DA40855099502650E1049B86 +:105F9000069CF01F0089404BF8C0FFD0069CF01F04 +:105FA0000082089A506C049B0E9CF01F008418918C +:105FB00078385808C0303016C068189B069CF01F0F +:105FC000007A18960E9C029BF01F007440CCEDECFA +:105FD0001008C0D140DB580BC0A14026E04000397A +:105FE000C300406A580AE0890024C2F84069580991 +:105FF000C085129840CC1848C1D140DB580BC1A1D4 +:106000000C9940265809E08A0021069B301A0E9C04 +:10601000F01F0064049B1893F01F0063E0890006E2 +:10602000C141EDB00000C111E0400039C0A02FF027 +:10603000C0C85806E08A000C4026E0400039C04144 +:1060400033980AC8C6782FF00AC0C7580AC0409AC9 +:1060500040E9123AC430069B300930AA0E9CF01F6A +:106060000053404818930838C091109B300930AA5B +:106070000E9CF01F004E504CC0E8404B300930AA37 +:106080000E9CF01F004A089B504C300930AA0E9C11 +:10609000F01F00461894409C2FFC509CC79B301862 +:1060A0000690408508930C941096049B009CF01F6A +:1060B00000422D0C0ACC0236C0A4009B300930AA45 +:1060C0000E9C2FF6F01F00391890CF0B0896300B5E +:1060D0000694504B00931890C0284026069B301A17 +:1060E0000E9CF01F0030049B1893F01F002FE089D6 +:1060F0000012C1B1E1D0C001C0D1C17840891238CD +:10610000C0301095C0882FF650663318408CB88880 +:10611000C138339A0A981179F4091800CF002FF981 +:10612000B089C0981095C02833090A98117AF20AEC +:106130001800CF905066049B0E9CF01F0018580466 +:10614000C120404B083B5F19580B5F18F3E800086B +:10615000C0400E9CF01F0011089B0E9CF01F000F0A +:10616000C02850660E9C069BF01F000C3008AA88C1 +:106170004068415A2FF841299508408C5809FBF88E +:106180001012F1F51A002E6DD8320000800368005D +:10619000800368A0800366F88003642080036300A6 +:1061A00080036664800363EE80036818800364588C +:1061B0008002E736800354088003658C5EFC5EFC39 +:1061C000D42118961697580BC0311695C508F01FA4 +:1061D00000295806C0706C685808C0410C9CF01F1C +:1061E00000264A681037C0316C07C0A84A481037EB +:1061F000C0316C17C0584A381037EDF700028E696D +:106200003008F0091900C051F01F001F3005C2F816 +:106210000E9B0C9CF01F001D6EC818955808C0609E +:106220006E8B0C9C5D18F9B505FF8E68EDB8000704 +:10623000C0516E4B0C9CF01F00166EDB580BC0A0BB +:10624000EEC8FFBC103BC0400C9CF01F0011300892 +:106250008FD86F2B580BC0700C9CF01F000D3008AE +:10626000EF4800483008AE68F01F00070A9CD822AB +:1062700080031E7480031F388003EF2C8003EF4CD3 +:106280008003EF6C80031E7680031D2C8003217C2D +:10629000D4014848189B700CF01F0003D80200007E +:1062A00000000598800361C0D42116981897109CAF +:1062B00030084876149B8D08F01F00065BFCC05127 +:1062C0006C085808EFF81A03D822000000008CC4AC +:1062D0008002F198D42116981897109C3008149BCE +:1062E0004866129A8D08F01F00065BFCC0516C08CE +:1062F0005808EFF81A03D82200008CC48002F1205D +:106300001898E01C0000F0091510580CF20817004E +:10631000F9BC0010F9BC0100109AF0091508E61A42 +:10632000FF00F7BC00F8F2081700109AF0091504F6 +:10633000E61AF000F7BC00FCF2081700109AF0090A +:106340001502E61AC000F7BC00FEF2081700580854 +:106350005E5CEDB8001EF9BC0120F7BC00FF5EFCDE +:1063600018997808F9D8C003C150EDB80000C021D1 +:106370005EFD109BF00A1601E21B0002A388580B79 +:10638000F3FA1A00F9BC0101F3F80A00F9BC0002A3 +:106390005EFCF5D8C010F00B1610580AF60817006E +:1063A000F9BC0010F7D8C008F00A1608580BF7BC63 +:1063B00000F8F4081700F7D8C004F00A1604580BC8 +:1063C000F7BC00FCF4081700F7D8C002F00A160268 +:1063D000580BF7BC00FEF4081700EDB80000C060D1 +:1063E000A198C031320C5EFC2FFC93085EFCD401F6 +:1063F00018987649784C121CC1312FB9A369120B39 +:10640000F00900092EC8134E174A143EC060F9BCAB +:1064100003FFF9BC0201D8021039FE9BFFF6D80237 +:10642000D4211897169578965806C091310CF01F14 +:10643000000A99368F9C9916992699065805C0909E +:106440006A196E987038F009032A8B0AF009092539 +:10645000D82200008002E2A4D421189716967895DD +:106460005805C091310CF01F001999358F9C991572 +:10647000992599056E956A385808C0B1310A304B94 +:106480000E9CF01F00138B3C6E98703C580CC1B0F2 +:106490006E987038F0060028700C580CC0407809CF +:1064A0009109C0E80E9C30170E9BEE060947EECA14 +:1064B000FFFBA36AF01F0006C060991699273008F9 +:1064C00099389948D82200008002E2A48002DC5466 +:1064D000D431202D1693129610951492301BF01F74 +:1064E0000029F3D3C0145009F1D3C01FF0011614D2 +:1064F000FC1A0010F3DAE139FBF91A00189458027B +:10650000C1E0FACCFFF818D2F01F001F4018C0D02D +:106510004009F80A1120F20A094AF5E810088958DA +:10652000F20C0A495009C028895840085808F9B3A4 +:106530000102F9B3000189688943C0981A9CF01FD1 +:106540000012301340082E0C894389585801C0901E +:10655000E2C1043318018D01F80C11358B0CC0D841 +:10656000E6C8FFFCF8CC0432A5738D0CE808032CB8 +:10657000F01F000618138B03089C2FEDD832000083 +:10658000800364588003636080036300D4317448DF +:106590007645169714961015C1312FB8EECEFFEC44 +:1065A000A368F408000BEE080008114A1749123AD4 +:1065B000C030C0E2C0781C38FE9BFFF9C4A8580563 +:1065C000C0640E9830150C971096C02830056E1BCD +:1065D000F01F00246E496C4499352FB4F2C5FFFBBF +:1065E000EC040024EE0500252EC62EC7F8C8FFECEB +:1065F000300A0F0E0D0BFC021610F6031610FDDE0E +:10660000C010E4030103F7DBC010FC0B010BF60A1A +:10661000000AB01AB14AE60A000AB00A2FC8B14A05 +:106620000836CE83C0D80F0BF60E1610F7DBC0105D +:10663000160AB01AB14A1C0AB00A2FC8B14A0A3762 +:10664000CF33C0282019114A580ACFD09949D832DF +:10665000300BF01F00043018994830089958D83290 +:1066600080036458D43116977646F40214052FF649 +:10667000149318940406761B6E28C0382FFBA1785B +:106680001036FE99FFFD089CF01F001A300918957E +:10669000F8C8FFEC129AC03810AA2FF90439CFD5E8 +:1066A0006E4BE7D3C0052FBBEEC9FFECEE0B002B02 +:1066B0005803C130E60C1120300A7202E40309428B +:1066C000044A10AA130AF40C0A4A1639CF73910A25 +:1066D000580AC0702FF6C058130A10AA1639CFD323 +:1066E000089C20160E9B8B46F01F00030A9CD83294 +:1066F0008003645880036420D431202D7649744887 +:10670000169614951039EC081750EA061750F00544 +:1067100017506C2876437442761BE4030007103749 +:10672000F7BB09FFF01F0036EEC4FFFBF8C9FFEC12 +:10673000F8040024300A1298C02810AA0838CFE3C1 +:106740002FB32FB2EC030023EA020022ECCBFFECC4 +:106750005012EACAFFECC44894955805C20012983A +:106760001696300E50090D02E400161070017009E3 +:10677000B181E5D2C010E0050341AB32E1D9C010D0 +:106780000002E40E000EB01EB18E1C01B001E20E3C +:1067900016102FC80636CE834009910E94865806EF +:1067A000C1D072021298169E3005B0121D0190825F +:1067B000E1D1C010AD30E0020002E4050005B005F3 +:1067C000B185B1812FC8AD319092E20200020A0278 +:1067D000E4051610063ECEA391022FCA2FC9401819 +:1067E000103ACBB3C02820175807E08A00050948A3 +:1067F0005808CFA099472FEDD83200008003645885 +:10680000D4211697301BF01F00043019995799496D +:10681000D822000080036458D431300812951697AE +:1068200018967644F6C9FFEC720BF60C1610F7DBDF +:10683000C010F40C024CF40B0345F7D5C010B18521 +:106840001805EA0C1510F80B000B12AB2FF8B185E8 +:106850000838CEB55805C1D06E281034C1456E1B1E +:106860000C9C2FFBF01F000C6E4AEECBFFF418932C +:106870002FEA2F4CA36AF01F00090E9B0C9CF01FFF +:1068800000080697E8C8FFFF2FB48F48EE040925DB +:106890000E9CD832800364588002E736800364205F +:1068A000D431149618971694F1DAC002C0902018CB +:1068B0004A19F208032A3009F01F00201894A34651 +:1068C000C3706E955805C091310CF01F001D9935AD +:1068D0008F9C9915992599056E9366255805C0D109 +:1068E000E06B02710E9CF01F0017872C3008189582 +:1068F0009908C038069C1895EDB60000C0C1089BE9 +:106900000A9A0E9CF01F0010089B18930E9C069488 +:10691000F01F000EA156C0C06A035803CEC10A9AE8 +:106920000A9B0E9CF01F00088B0C9903CE5B089C01 +:10693000D83200008003F380800368188002E2A44C +:1069400080036800800366F880036420D4211698D1 +:106950001897109C3008149B4866129A8D08F01FF7 +:1069600000065BFCC0516C085808EFF81A03D822E7 +:1069700000008CC48002F1381498FC197FF0F5DB1C +:10698000C01FF00B1100F7E81008F5E813F8F20843 +:106990000108F00C1100F9E81008F00C141F2FFC8E +:1069A0005EFCD703F5EB101CE08000DCD421F7E996 +:1069B000200EEFDBC28B3015C430AB6BF7EA136BE4 +:1069C000AB6AF7D5D3C2EDD9C28BC5C0A1785CF94B +:1069D000F3D5D2ABE04707FFC770E04607FFC740DB +:1069E000EE06000CE02C03FEF6080644F40907440A +:1069F000F4080646F609064A0807F405004A5C0B47 +:106A0000EDBB0014C050A1775CFA5CFB201C580C55 +:106A1000E08A006FE04C07FFE084009CF7DCD28B3B +:106A2000EDEA11F6EFE61217EE178000F1B7042039 +:106A30000E0A5C0BEDBE001FEFBB001FD822E41B4B +:106A4000000FF40C1200F6061200F7BC03E1F80682 +:106A50001730F7B60201E0460020C0D4EC0C11203C +:106A6000F606094BF40C0A4C184BF406094A20B6FA +:106A70000C17CAABF406094BC640300A20B60C17F7 +:106A8000CA3BE419000FF00C1200F2051200F7BC2B +:106A900003EAF8051730F7B5020AE0450020C0D434 +:106AA000EA0C1120F2050949F00C0A4C1849F005CE +:106AB000094820250A16C8FBF0050949C4203008FA +:106AC00020250A16C88BE419000FE41B000F144B95 +:106AD0001049E04707FFC091580BC381E04607FF0C +:106AE000C3815809C360C3285809C330C2F85C3C4D +:106AF0002FFCF1BC04C0E04C0020C114F8081120A8 +:106B00000E46EE0C0A47F40809491247F40C0A4AEB +:106B1000F6080949124AF60C0A4BC83BF80811203E +:106B2000F9B90000C030F60809490E46EDEA101622 +:106B3000F40C0A4AF3EA1007F60C0A4A300BC71B9A +:106B40001C9BE61B8000300AD8223FFB3FFAD8226C +:106B5000F06B0000EDBE001FEFBB001F300AD82213 +:106B6000F7E9200BE61B8000F9D9C28BE04C07FF48 +:106B70005E1C3FFA3FFB5EFCEE198000F7E9200C3B +:106B8000E08600CAEBCD40E0169CE61C8000BFDB2F +:106B9000BFD9103AF20B1300C0921697129B0E99B0 +:106BA0001497109A0E98EE1C8000F6071614AB7B13 +:106BB000F7EA135BAB7ABFBBF2061614C440AB799D +:106BC000F3E81359AB78BFB9E04707FFC4F00E26CE +:106BD000C120EC051120E0460020C7C2F005094E97 +:106BE000F2050945F0060A48F2060A490A48580E15 +:106BF0005F1E1C48101AF609014BF6061200C0E091 +:106C0000C783EC0E1120F606094BF40E0A4E1C4BFE +:106C1000F406094A0C17E08A0039F4091515AB9AF5 +:106C2000F5EB115AAB9BF7D7D28B184BFC178000B2 +:106C3000EDBA0000F7B701FF0E395F29120A5C0BAD +:106C4000E3CD80E0AB79F3E81359AB78F3E8100EAD +:106C5000F9B60101EE0E1100F9B70001EFBB001FFC +:106C6000F7EA100EF9B70000CB0BBFDBF7EA100E06 +:106C7000C081E04607FFC050F9E7114BE3CD80E04B +:106C80003FFA3FFBE3CD80E05C372FF7F1B704C05C +:106C9000E0470020C114EE081120F40809495F16EE +:106CA000F4070A4A0C4AF6080949F5E9100AF407FC +:106CB0000A4B3007CB3BEE081140F608094914494E +:106CC0005F16F6070A4A0C4A300B3007CA7BE3CD41 +:106CD00080E0F1B604C0F00E1700C040F205094E86 +:106CE000104EF2060A483009580E5F1E1C48C83B79 +:106CF000F4061200F9B70300F9B60300F9BC03006B +:106D0000F7B602E0F406094B300A0C17FE9AFFBEF4 +:106D1000C85B0000EE198000F7E9200CFE96FF2EFC +:106D2000EBCD40E0169CE61C8000BFDBBFD9123BD8 +:106D3000C0721697129B0E991497109A0E98300EE7 +:106D4000EFDBC28BF7DBC014B5ABEDD9C28BC5F05E +:106D5000F3D9C014B5A9E04707FFC2500E26C0F012 +:106D6000EC051120E0460020C352F005094EF20563 +:106D70000945F0060A48F2060A490A48100AF609C7 +:106D8000004BEDBB0015C340F7D7D28B184BF9DA97 +:106D9000C001184EEE1E8000F1BE04201C0A5C0BE0 +:106DA000E3CD80E0B5CBF7EA100EC101E04607FF66 +:106DB000C030E3CD80E0B5C9F3E8100EC071300AF1 +:106DC000FC1B7FF0184BE3CD80E03FFA3FFBE3CDA7 +:106DD00080E0F1B604C0F00E1700C060F205094E65 +:106DE00058085F18104EF2060A483009CC8BFDEEA9 +:106DF000101EA19B5D0A5D0E2FF7E04707FFF9BA51 +:106E00000000F9BB0000F9BE0000CBFB30165807AC +:106E1000CA31B5CB100AF609004B184BE3CD80E020 +:106E2000580B5E6DF60C1501B59CE02C03FF5E3D22 +:106E3000F80C111F1699AB7BBFBBF7EA135BF60C7E +:106E40000A4BA1795E2B5C3B5EFBF8CB0000300C5B +:106E5000C038189B5C4B300A5E0BD401E069041EFD +:106E6000F6081200C170C0C3F00E1120F608094BDD +:106E7000F40E0A4E1C4BF408094A1019C0B8F40865 +:106E80001200F9B80300F7B802E0F408094B300A21 +:106E900010195809E08900305C392FF9E0490036B3 +:106EA000C043300B300AC2682F69F2081120E04954 +:106EB0000020C0B2F408094EF6080948F4090A4A4D +:106EC000F6090A4B104BC088F608094E144E169A64 +:106ED000300BF4090A4AEDBA0000C0921C7EC04192 +:106EE000EDBA0001C0422FFAF7BB02FF5CFC5D0B5C +:106EF0005D0AD802E06803FFEDBA000BF7B800FFA7 +:106F0000100A5C0BF7B903FEE04907FFC055300AD1 +:106F1000FC1BFFE0C0C8EDBB001FF7B90101AB9A35 +:106F2000F5EB115AA17BAB9BF7E9115BA17C5D0BE3 +:106F3000D802103AF20B1300C080A17BA179144B48 +:106F4000124B104B5E0F5EFDA17BFC1CFFE0580A4C +:106F5000F80B13005E8F5EFD1ADE1AD7A17B5F3C33 +:106F6000A1795F375CFCFC1EFFE0580AFC0B1300A4 +:106F7000E08B001D5808FC091300E08B0018580B2B +:106F8000F5BA0000C1501B071B0E583CC0A0581C8E +:106F9000C0335E0F5E1D103AF20B13005E2F5E3D94 +:106FA0001438F60913005E2F5E3D1B07D80A5817E8 +:106FB0005F0C5809F5B800001B071B0E5E0F5EFC46 +:106FC0001ADE1AD7A17B5F3CA1795F375CFCFC1EFF +:106FD000FFE0580AFC0B1300E08B001D5808FC0969 +:106FE0001300E08B0018580BF5BA0000C1501B07C6 +:106FF0001B0E583CC0A0581CC0335E0D5E1F103ADB +:10700000F20B13005E2D5E3F1438F60913005E2D5F +:107010005E3F1B07D80A58175F1C5809F5B80000D7 +:107020001B071B0E5E0D5EFCEBCD40FFF7E9200E4B +:10703000F6071614A97BF7EA137BA97ABDBBE41BFC +:107040003FFFABD7E08000CCE04707FFE08400B50E +:10705000F2061614A979F3E81379A978BDB9E419F1 +:107060003FFFABD6E08000E2E04607FFE08400B2DD +:107070000C17FE37FC01FC1C8000F8031601E9D94F +:10708000C3625CD4E7D4D382E6090644F80501253F +:10709000E6050644EA031502E6090644F80501255B +:1070A000E6050644EA031502E6090644F80501254B +:1070B000E6050644EA031502E6080640E40907402F +:1070C000E609064402045C05A365EBE413E5A3644A +:1070D0005C34F8050145E6040640E4050740E60592 +:1070E000064402045C05EA031502E7E413E3E80240 +:1070F0001502E6080640E4090740E60906440204D2 +:107100005C05A365EBE413E5A3645C34F805014575 +:10711000E6040640E4050740E605064402045C0573 +:10712000EA031502E7E413E3E8021502E60A064063 +:10713000E40B0740E60B064202025C03EDB3001CC1 +:10714000C090A1725CF32017A39AF5EB11DAA39B10 +:10715000C058A58AF5EB11CAA58B5807E08A008BA9 +:10716000E012FF00E8120080E6080640E40907404C +:10717000E4080644E60906480005F00100485C09F9 +:10718000F9D2C10158045C25F4081300F609130074 +:107190005F36F8061700E40A1608F5E3118AE60BD5 +:1071A0001608F7D7D28BEDBE001FEFBB001F0C0AED +:1071B0005C0BE3CD80FFE41B000F144BE08100A7C4 +:1071C000F2061614ABD6E04607FFE08100A4C9E83A +:1071D000E419000F1049E081009AC928A37BF7EA5F +:1071E00013DBA37AF5EB1004E08000A0F604120094 +:1071F000C170C0C3E8051120F604094BF4050A4527 +:107200000A4BF404094A0817C0B8F4041200F9B490 +:107210000300F7B402E0F404094B300A0817A38A0C +:10722000F5EB11EAA38BC11BA379F3E813D9A3787B +:10723000F3E81004C6F0F2041200C170C0C3E80500 +:107240001120F2040949F0050A450A49F0040948E9 +:107250000816C0B8F0041200F9B40300F7B402E055 +:10726000F004094930080816A388F1E911E8A38958 +:10727000CFCA5C372FF7F1B704C0E0470020C154F4 +:10728000EE061120E4070A42E606094C1842E6071A +:107290000A43F4060941F4070A4AF606094C184A5B +:1072A000F6070A4B3000C158EE061120F9B0000075 +:1072B000F9BC0000C050F4060940F606094CE60788 +:1072C0000A423003F4070A411841F6070A4A300B14 +:1072D000E012FF00E8120080E6080646E4090746CF +:1072E000E4080644E60906480C05F00700485C0976 +:1072F0003007F9D2C1010034E2051300C46B1C9BB6 +:10730000E61B8000300AE3CD80FF3FFB300AE3CD6F +:1073100080FFF5EB1004C0901C9BE61B8000EA1B6D +:107320007FF0300AE3CD80FFF1E91015CEF0E9D906 +:10733000C28BE04407FFCE41F1E910C5CE10CE6B01 +:10734000D4311A97202D109C1295149E16931696E0 +:107350005809C4411638E088005AF0081200C0D01D +:10736000F6080946F808094CF00B1120F408094EFC +:10737000F40B0A4BF7E61006F80A1610EBDCC01007 +:10738000EC0A0D02FC091610EA02024BF3E31109A4 +:10739000123BE08800091809123CE08B0005123B03 +:1073A000F3DCEB09F20B010BFDDEC010F60A0D0A4F +:1073B000FDEB110EEA0A024A1C3AE0880009180E99 +:1073C0001C3CE08B00051C3AFDDCEB0EFC0A010ABC +:1073D000300BF4080A4A2FEDD8321639FE9BFFFD18 +:1073E000F2091200C46114385F8B06355F3AF7EA80 +:1073F000100AF20A1800C060FC08010AE6050146FE +:10740000149E0C9B1C9A2FEDD8325808C05130198D +:10741000F2080D08109CF8081200E0810084EC0CC2 +:10742000010BF8031610EBDCC010F6030D0AFC0983 +:107430001610EA0A024AF3EB1109123AE088000931 +:107440001809123CE08B0005123AF3DCEB09141921 +:10745000FDDEC010F2030D02FDE3110EEA02024A46 +:107460001C3AFE98FFB5180E1C3CFE9BFFB1CACB20 +:10747000F20E1120EA090945F609094BE60E0A4306 +:10748000F0090941F4090942F00E0A48F40E0A4ACB +:107490000A48164AF0061610F9D8C010E6060D0480 +:1074A000F4031610089BE7E51103E80C02450635C6 +:1074B000E0880007201B10030638E0880072F5DA28 +:1074C000C0100A13E6060D04F5E51106E80C024C9F +:1074D000089A0C3CE0880007201A10060C38E08857 +:1074E000005AF5EB110B1816F601064A149C1636D5 +:1074F000C0735F0514325F3AEBEA000AC060F8011E +:107500000104F608014B089CE40C010AEC0B01464F +:10751000EC090A4BF4090A4AEC0E09460C4A2FED15 +:10752000D832F0011120F4010A4BF808094CEC089C +:107530000949EC010A41F7E91009F8031610EBDCE0 +:10754000C010E2030D00F20B1610EA00024EF7E144 +:10755000110B163EE0880006180B163CE088002749 +:10756000F60E0101F3D9C010E2030D00F3E1110999 +:10757000EA00024B123BE08800091809123CE08B3C +:107580000005123BF3DCEB09F20B010BF408094E8A +:10759000C4DB0C3CF7BA0B01EDD8EB06CA3B063551 +:1075A000F7BB0B01E7D8EB03C8BB163EF7DCEB0BD0 +:0275B000CD8B81 +:10760000C0080000C0080000C0080000C00800005A +:10761000C0080000C0080000C0080000C00800004A +:10762000C0080000C0080000C0080000C00800003A +:10763000C0080000C0080000C0080000C00800002A +:10764000C0080000C00800000000000000000000AA +:10765000C008000000000000000000000000000062 +:10766000C008000000000000000000000000000052 +:10767000C008000000000000000000000000000042 +:1076800000000000000000000000000000000000FA +:1076900000000000000000000000000000000000EA +:1076A00000000000000000000000000000000000DA +:1076B00000000000000000000000000000000000CA +:1076C00000000000000000000000000000000000BA +:1076D00000000000000000000000000000000000AA +:1076E000000000000000000000000000000000009A +:1076F000000000000000000000000000000000008A +:10770000C0080000300CF01F0012580CF80F1710C2 +:10771000D603301CF01F000E580CF80F1710D603BC +:10772000302CF01F000B580CF80F1710D603303C0C +:10773000F01F0007580CF80F1710D60300000104C3 +:107740004000011280000120C000012E8000A41C16 +:107750000000000000000000000000000000000029 +:107760000000000000000000000000000000000019 +:107770000000000000000000000000000000000009 +:1077800000000000000000000000000000000000F9 +:1077900000000000000000000000000000000000E9 +:1077A00000000000000000000000000000000000D9 +:1077B00000000000000000000000000000000000C9 +:1077C00000000000000000000000000000000000B9 +:1077D00000000000000000000000000000000000A9 +:1077E0000000000000000000000000000000000099 +:1077F0000000000000000000000000000000000089 +:1078000073656E645265706C790000006765745F23 +:10781000646174615F7463705F636D645F63620071 +:107820006765745F7265706C795F686F73745F62AF +:10783000795F6E616D655F63620000006765745F0C +:107840007265706C795F7363616E5F6E6574776F7C +:10785000726B735F636200006765745F7265706C62 +:10786000795F6964785F6E65745F63620000000031 +:107870007365745F706173737068726173655F6361 +:107880006D645F63620000007365745F6B65795FB0 +:10789000636D645F6362000063616C6C5F7265704E +:1078A0006C795F6362000000617661696C5F64619E +:1078B00074615F7463705F636D645F636200000096 +:1078C0007365744D6170536F636B4D6F6465000039 +:1078D0006765745374617274436D6453657100001D +:1078E0007365745F6E65745F636D645F63620000EF +:1078F0007365745F69705F636F6E6669675F636D00 +:10790000645F63620000000073656E644572726FAD +:107910007200000073746172745F736572766572D1 +:107920005F7463705F636D645F6362007370695F4F +:10793000736C61766552656365697665496E74003E +:107940006765745F636C69656E745F737461746599 +:107950005F7463705F636D645F63620073656E6420 +:107960005F646174615F7564705F636D645F6362BF +:1079700000000000636865636B4D7367466F726D4E +:107980006174000073746172745F7363616E5F6E23 +:1079900065745F636D645F6362000000666F756E9F +:1079A00064486F737442794E616D65007365745FEE +:1079B0006B65795F636D645F63620000696E697413 +:1079C0005370690073746172745F636C69656E747F +:1079D0005F746370000000007370695F706F6C6C9F +:1079E000000000006765745F726573756C745F6397 +:1079F0006D645F636200000073746F705F636C6935 +:107A0000656E745F7463705F636D645F63620000D2 +:107A100073746172745F7365727665725F7463709C +:107A2000000000007365745F706173737068726149 +:107A300073655F636D645F63620000007365745F0C +:107A4000726573756C745F636D6400007365745F59 +:107A5000646E735F636F6E6669675F636D645F63B7 +:107A6000620000006765745F73746174655F7463BE +:107A7000705F636D645F6362000000007265715F38 +:107A80007265706C795F686F73745F62795F6E6145 +:107A90006D655F636200000073746172745F636C94 +:107AA00069656E745F7463705F636D645F636200C9 +:107AB000572D5B25735D2057726F6E67207465725A +:107AC0006D696E6174696F6E20696E6465783A25C0 +:107AD00064206E506172616D3A2564206964783A61 +:107AE00025642031366269743A25640A000000007A +:107AF0003078257820000000572D5B25735D2049E4 +:107B00006E646578206F7574206F662072616E6791 +:107B1000653A2025640A00005B25735D20535349B4 +:107B2000443A25730A0000005B25735D20525353CD +:107B3000493A25640A0000005B25735D20454E43E9 +:107B4000543A25640A0000005B25735D205365618B +:107B5000726368696E6720666F7220486F73743A4B +:107B60002069703D3078257820666F756E643D25FC +:107B7000640A00005B25735D20666F756E64486F54 +:107B8000737442794E616D653A20466F756E64205C +:107B9000486F73743A206E616D653D25732069707E +:107BA0003D307825780A00005B25735D20696653B7 +:107BB00074617475733A256420726573756C743AD8 +:107BC00025640A004C69737420436F6D6D616E64A7 +:107BD000732066756C6C210A000000005245434515 +:107BE000495645005452414E534D4954000000003F +:107BF0005B25735D204D6170205B25642C20257012 +:107C00002C2025735D0A00005B25735D20535049CD +:107C100020696E697469616C697A6174696F6E203C +:107C20006661696C65642100572D5B25735D204595 +:107C300072726F7220636F6E6669677572696E67C4 +:107C4000205350490A000000572D5B25735D202505 +:107C5000645D20446973616C6C2E2025642F25645B +:107C600020636D643A25640A00000000572D5B25EF +:107C7000735D2025645D20446973616C6C2E202542 +:107C8000640A00005B25735D3A200000572D5B25D8 +:107C9000735D2025645D204E6F7420666F756E6481 +:107CA00020656E6420636D643A20307825780A0080 +:107CB0005B25735D2025732025640A00572D5B2505 +:107CC000735D20456E64206F6620636D6420706173 +:107CD00072616D73000000005B25735D2064617448 +:107CE00061417661696C3A25640A0000572D5B2575 +:107CF000735D2054544350206E6F7420666F756E10 +:107D00006420666F7220736F636B3A25640A00000B +:107D10005B25735D20736F636B3A25642073746118 +:107D200074653A25640A00005B25735D20737461F5 +:107D300074653A25640A00005B25735D2053746105 +:107D40007274204E6574776F726B205363616E207E +:107D500025640A00572D5B25735D206572723D25F1 +:107D6000640A00005B25735D204C6F6F6B696E6762 +:107D700020666F7220486F73743A206E616D653DA6 +:107D800025730A005B25735D20466F756E6420487D +:107D90006F73743A206E616D653D25732069703D87 +:107DA000307825780A0000005B25735D2053746FDE +:107DB0007020636C69656E7420736F636B3A256421 +:107DC0000A00000055445000544350005B25735D89 +:107DD00020416464723A307825782C20706F727478 +:107DE0003A25642C20736F636B3A25642C207072E3 +:107DF0006F743A25730A0000572D5B25735D205080 +:107E0000726576696F757320636C69656E74202581 +:107E100070206E6F742073746F7070656420210A17 +:107E2000000000005B25735D205374617274204371 +:107E30006C69656E74202573202570205B30782571 +:107E4000782C2025642C2025645D204F4B210A00CE +:107E50005B25735D20537461727420436C69656E99 +:107E600074202573202570205B307825782C202500 +:107E7000642C2025645D204641494C4544210A007C +:107E8000572D5B25735D205374696C6C20636F6E96 +:107E90006E65637465642E2E2E776169740A000026 +:107EA000572D5B25735D20494620646F776E2E2E1B +:107EB0002E776169740A00005B25735D205374613D +:107EC000727420536572766572202573205B256479 +:107ED0002C2025645D204F4B210A0000572D5B2587 +:107EE000735D2053746172742053657276657220DD +:107EF0002573205B25642C2025645D204641494C78 +:107F00004544210A000000005B25735D2025702098 +:107F10006E756D506172616D3D2564207061726D8A +:107F200073546F4368616E67653D25640A00000005 +:107F30005B25735D2025645D206E69663A2570209F +:107F40006C7769705F616464723D307825780A00EF +:107F50005B25735D20257320706172616D733D2513 +:107F6000640A00005B25735D20506173733A20251D +:107F7000732025640A000000572D5B25735D2025C2 +:107F800073203A204661696C656420746F206164D7 +:107F90006420706173737068726173650A00000019 +:107FA000436F6E6E65637420746F206E6574776FB7 +:107FB000726B2E2E2E0000006572723D25640A0041 +:107FC0004F4B0A00572D5B25735D205353494420C6 +:107FD0006C656E206F7574206F662072616E6765C8 +:107FE000000000005B25735D2025730A000000007F +:107FF000572D5B25735D2053656E642053504920D7 +:108000006572726F72210A003D3D3E003C3D3D00AD +:10801000572D5B25735D20556E6B6E6F776E2063F9 +:108020006D6420307825780A00000000572D5B250C +:10803000735D2025645D20436865636B20666F7205 +:108040006D6174206D7367206661696C6564210AD7 +:1080500000000000444F574E000000005550000043 +:1080600049462020207374617475733A2025730A81 +:1080700000000000434F4E4E207374617475733AD4 +:108080002025730A00000000536F636B6574206E37 +:108090002E3A256428256429205B307825785D20D8 +:1080A000257320257320616464723A257320706FF4 +:1080B00072743A25640A00005B2564207470637052 +:1080C0002D25705D2D5374617475733A25640A0013 +:1080D0005B746C63702D25705D2D537461747573C2 +:1080E0003A25640A000000005B757063702D2570EE +:1080F0005D20666C6167733A3078257820206C6F5C +:1081000063616C3A25735B307825785D2D25640AB0 +:108110000000000072656D6F74653A257328307831 +:108120002578292D25640A004E4F0000594553003B +:108130004461746120617661696C3A25730A0000BC +:108140002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D5F +:108150002D2D2D2D2D2D2D2D2D2D2D2D2D2D0A009F +:108160005B25735D205363616E206E6F7420636FB7 +:108170006D706C65746564210A0000005B25735D99 +:10818000204E6574776F726B73206E6F7420666F0C +:10819000756E64210A000000636F756C64206E6F59 +:1081A0007420616C6C6F6361746520616C6C206716 +:1081B0007569206E65742061727261790A00000031 +:1081C000636F756C64206E6F7420616C6C6F63619B +:1081D000746520616C6C20677569206E6574730A24 +:1081E000000000005B25735D202564202D20257391 +:1081F000205B25645D2D202564202D202564202D05 +:1082000020307825780A000D000B000C000A0000D1 +:108210007365745F726573756C745F636D64000081 +:108220008000636C800063988000637E80006398A8 +:108230008000638E80006398800063648000639890 +:10824000800063688000638A800063786174637073 +:108250005F706F6C6C5F636F6E6E00007564705F53 +:10826000737461727400000072656D6F76654E659F +:1082700077436C69656E74436F6E6E0061756470F0 +:108280005F726563765F6362000000006765745328 +:1082900074617465546370006172645F7463705FCD +:1082A00073746F7000000000617463705F636F6EC1 +:1082B0006E5F6572725F6362000000006765744EF6 +:1082C0006577436C69656E74436F6E6E4964000038 +:1082D000617463705F636F6E6E5F636C695F65721C +:1082E000725F636200000000617463705F616363CA +:1082F0006570745F636200007564705F73746172AF +:10830000740000005B25735D20747463703A2570FF +:108310002069643D25642C20747063623D25700AD9 +:1083200000000000572D5B25735D204E6F205661C5 +:108330006C696420636C69656E7420666F7220746A +:108340007463703A25700A005B25735D2025645DB7 +:1083500020747463703A257020747063623A2570DB +:108360002073746174653A2564206C7063623A25E9 +:10837000702073746174653A2564206C6566743A84 +:1083800025642073656E743A25640A00572D5B25B9 +:10839000735D20544350206E6F7420696E69746958 +:1083A000616C697A656420747463703A2570207416 +:1083B0007063623A2570206C7063623A25700A001F +:1083C000572D5B25735D204E6F2056616C696420CC +:1083D000496420666F7220747463703A257020704F +:1083E00063623A25700A00005B25735D2062756642 +:1083F0003A2570206C656E3A25640A00572D5B257E +:10840000735D2054544350205B25705D3A20636FA8 +:10841000756C64206E6F7420616C6C6F6361746541 +:1084200020706275660A0000572D5B25735D20542D +:10843000544350205B25705D3A207564705F73650E +:108440006E642829206661696C65640A000000007A +:108450005B25735D2054544350205B25702D25709F +:108460005D3A20636F6E6E65637420256420256419 +:108470000A0000005B25735D206C6566743D256411 +:10848000206C656E3A25640A000000005B25735D70 +:10849000207463705F7772697465206661696C65CA +:1084A000642025702073746174653A2564206C65BE +:1084B0006E3A2564206572723A25640A0000000055 +:1084C000572D5B25735D2074746370203D3D204EF5 +:1084D000554C4C210A0000005B25735D20747463C9 +:1084E000703A2570207063623A2570206275663A92 +:1084F0002570206C656E3A25640A00005B25735D6B +:1085000020272573270A00005B25735D20506163D7 +:108510006B65742073656E74207063623A257020F9 +:108520006C656E3A2564206475723A2564206C652A +:1085300066743A25640A00005B25735D2054544339 +:1085400050205B25705D3A20636C65616E536F63EC +:108550006B53746174655F63622025640A000000D8 +:108560005B25735D20436C6F73696E672074706365 +:10857000623A2073746174653A30782578206572A8 +:10858000723A25640A0000005B25735D20436C6F1E +:1085900073696E67206C7063623A207374617465EE +:1085A0003A30782578206572723A25640A00000016 +:1085B0005B25735D2046726565696E672070617921 +:1085C0006C6F61642025642D25700A005B25735D46 +:1085D00020436C6F73696E6720747063625B2570F3 +:1085E0005D3A2073746174653A307825782065723D +:1085F000723A25640A000000572D5B25735D204305 +:10860000616E6E6F7420636C6F73652069643A25C8 +:10861000642D2570207075742070656E64696E67B6 +:108620000A0000005B25735D202D2D2D2D2D2D2D95 +:108630002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A8D +:1086400000000000572D5B25735D2074746370205B +:108650003D204E554C4C210A000000005B25735D07 +:1086600020666C75736820646174613A207470636D +:10867000623A2570206572723A25640A0000000093 +:10868000572D5B25735D2054544350205B25705D4E +:108690003A20636F6E6E656374696F6E20657272E7 +:1086A0006F723A202564206375727249643A2564BA +:1086B0000A00000041626F727420636F6E6E656322 +:1086C00074696F6E0A000000572D5B25735D20549E +:1086D000544350205B25705D3A20636F6E6E656376 +:1086E00074696F6E206572726F723A202564206122 +:1086F00072673A25700A0000572D5B25735D205480 +:10870000544350205B25705D3A2066726565206D8C +:10871000656D6F72790A00005B25735D20554450CA +:1087200020496E7365727420257020736F636B3AF5 +:10873000256420616464723A257320706F72743A04 +:1087400025640A00572D5B25735D20545443502047 +:108750005B2D5D3A20696E76616C6964206D6F6493 +:10876000650A0000572D5B25735D2054544350204B +:108770005B2D5D3A20696E76616C6964206E62756E +:10878000660A0000572D5B25735D2054544350202A +:108790005B2D5D3A20696E76616C69642062756656 +:1087A0006C656E0A00000000572D5B25735D205438 +:1087B000544350205B2D5D3A20636F756C64206ECE +:1087C0006F7420616C6C6F63617465206D656D6F93 +:1087D000727920666F7220747463700A0000000062 +:1087E000572D5B25735D2054544350205B25705DED +:1087F0003A20636F756C64206E6F7420616C6C6FCF +:1088000063617465207063620A0000005B25735D1C +:108810002025732C20757063623A25702025733AE9 +:1088200025640A00572D5B25735D20545443502066 +:108830005B25705D3A2075647020636F6E6E6563B2 +:1088400074206661696C65640A000000572D5B2521 +:10885000735D2054544350205B25705D3A2062695B +:108860006E64206661696C6564206572723D256482 +:1088700020506F727420616C726561647920757329 +:1088800065640A005B25735D2025732C206C6F6383 +:108890003A307825782D25642072656D3A30782538 +:1088A000782D25640A0000005B25735D20416C6C07 +:1088B0006F63207061796C6F61642025642D257071 +:1088C0000A000000572D5B25735D2054544350204F +:1088D0005B25705D3A20636F756C64206E6F742049 +:1088E000616C6C6F63617465207061796C6F616439 +:1088F0000A0000005B25735D205B747063625D2D70 +:108900002570207061796C6F61643A25700A0000EF +:10891000572D5B25735D2054544350205B25705DBB +:108920003A2074637020636F6E6E656374206661B5 +:10893000696C65640A0000005B25735D2042454652 +:108940004F52452042494E4420747463703A25705A +:10895000206C7063623A2570207063623A25700A59 +:1089600000000000572D5B25735D205454435020B8 +:108970005B25705D3A206C697374656E2066616971 +:108980006C65640A00000000572D5B25735D205361 +:108990007461727420736572766572204641494C29 +:1089A0004544210A000000005B25735D20545443B8 +:1089B00050205B25702D25705D3A206E6275663DF6 +:1089C00025642C206275666C656E3D25642C2070D4 +:1089D0006F72743D2564202825732F2573290A00A2 +:1089E0007574726C3A6E3A703A7600002573000026 +:1089F0005B25735D2041524420544350205B257019 +:108A00005D3A20616363657074206E6577205B2535 +:108A1000705D0A005B25735D206C6F63616C3A25A5 +:108A2000642072656D6F74653A2564207374617497 +:108A3000653A25640A0000007061796C6F616420FA +:108A40006E6F74206672656564210000572D5B258A +:108A5000735D2041524420544350205B25705D20BB +:108A60006172673D257020726574726965733D257A +:108A7000642061626F72740A000000005B25735D00 +:108A8000206B656570416C697665436E743A256448 +:108A9000206B6565705F69646C653A25642070655C +:108AA00072736973745F636E743A25640A00000020 +:108AB0005B25735D2041524420544350205B257058 +:108AC0002D25705D206172673D257020726574727E +:108AD0006965733D25642070656E642E636C6F73E9 +:108AE000653A2564206C656E3A25640A0000000032 +:108AF0005B25735D2041524420544350205B257018 +:108B00002D25705D2074727920746F20636C6F73F3 +:108B1000652070656E64696E673A256420657272BF +:108B20003A25642069643A25640A00005B25735D78 +:108B30002041524420544350205B25702D25705D08 +:108B4000206172673D257020726574726965733D9E +:108B500025642070656E642E636C6F73653A2564BE +:108B600020636F6E6E3A25640A000000572D5B2566 +:108B7000735D2041524420544350205B25702D25C5 +:108B8000705D206172673D25702072657472696541 +:108B9000733D25640A0000005B25735D204152444B +:108BA00020544350205B25702D25705D2074727910 +:108BB00020746F20636C6F73652070656E64696EDE +:108BC000673A25640A0000005B25735D206C656EC2 +:108BD0003A25640A000000005B25735D20736F6313 +:108BE0006B3A2564207063623A2570207062756666 +:108BF0003A2570206572723A256420627566537456 +:108C00006F72653A2570206C656E3A25640A000023 +:108C10005B25735D20617463705F726563765F636B +:108C20006220703D4E554C4C206F6E20736F636B0D +:108C30003A2564207063623A25700A00572D5B253F +:108C4000735D206572723D256420703D25700A00B9 +:108C50005B25735D205265636569766564202570C8 +:108C6000206C656E3A25640A000000006174637030 +:108C70005F737461727400007463705F73656E6417 +:108C80005F646174615F70636200000061746370AF +:108C90005F706F6C6C000000617463705F7265637D +:108CA000765F6362000000006172645F7463705FEE +:108CB000737461727400000067657446697273743E +:108CC000436C69656E7400006172645F7463705F09 +:108CD00064657374726F7900636C6F73655F636F43 +:108CE0006E6E000073656E6455647044617461005B +:108CF000696E736572744E6577436C69656E744313 +:108D00006F6E6E0061636B5F726563766564000011 +:108D10007463705F636F6E6E6563745F636200009F +:108D200073656E645463704461746100636C6F7347 +:108D3000655F636F6E6E5F7063620000636C656198 +:108D40006E536F636B53746174655F636200000000 +:108D50007463705F646174615F73656E74000000BA +:108D600061636B416E6446726565446174610000C5 +:108D7000676574417661696C5463704461746142E3 +:108D80007974650066726565744461746100000001 +:108D9000676574546370446174614279746500005E +:108DA00063616C634D657267654C656E0000000021 +:108DB000696E73657274427566000000697341766E +:108DC00061696C5463704461746142797465000038 +:108DD00066726565744461746149647800000000DE +:108DE0005B25735D202570205B25642C25645D0A5E +:108DF00000000000686561644275663D256420746A +:108E000061696C4275663D25640A000025645D2039 +:108E10007063623A2570204275663A202570204CB6 +:108E2000656E3A25640A00005B25735D20205B2592 +:108E3000645D3A206C656E3A2564206964783A2551 +:108E40006420746F743A25640A0000005B25735D2A +:108E500020417661696C61626C6564206461746153 +:108E60003A2025640A000000572D5B25735D2069B8 +:108E70006478427566206F7574206F662072616E2B +:108E800067653A2025640A005B25735D2025702004 +:108E90006964783A25640A00572D5B25735D20428A +:108EA0007566203D3D204E554C4C21005B25735D81 +:108EB0002041636B207063623A2570206C656E3AC6 +:108EC000256420736F636B3A256420646174613A92 +:108ED00025700A005B25735D206765743A25642060 +:108EE00025702025640A00005B25735D206368659A +:108EF000636B3A25642025642025700A0000000079 +:108F00005B25735D2046726565202570206F74684F +:108F1000657220627566202564207461696C3A254B +:108F20006420686561643A25640A0000572D5B255A +:108F3000735D204F76657277726974696E6720621F +:108F40007566666572202570206964783A2564210B +:108F50000A000000572D5B25735D20706275665F07 +:108F6000636F70795F7061727469616C20666169AA +:108F70006C65643A207372633A25702C20647374B4 +:108F80003A25702C206C656E3A25640A00000000BA +:108F9000572D5B25735D2041766F696420746F20C7 +:108FA0004F76657277726974652064617461205BC5 +:108FB00025642D25645D210A000000005B25735D9A +:108FC00020496E736572745B25645D3A2025703AA2 +:108FD00025642D2564205B25642C25645D0A000032 +:108FE000572D5B25735D20536F636B206F75742065 +:108FF0006F662072616E67653A20736F636B3D2503 +:1090000064000000696E736572745F70427566007B +:109010006765745F70427566000000000000E10043 +:1090200008040000000000000F01110110011301ED +:109030000E01110110010F0106000500636D645F50 +:109040007365745F69700000636D645F736574704D +:1090500061737300636D645F7374617274436C69F0 +:1090600000000000466F756E6420486F73743A20EC +:109070006E616D653D25732069703D307825780AF5 +:109080000000000075736167653A206474203C310C +:109090007C303E0A0000000075736167653A2073FA +:1090A000656E64556470205B736F636B5D0A097352 +:1090B0006F636B3A20736F636B6574204E756D62DE +:1090C00065720A00536F636B65743A2025640A0069 +:1090D0005061747465726E547970653A2025640A23 +:1090E0000000000050726F766100000031323334AE +:1090F000353637383930000046696E65546573740B +:10910000000000006F6666004465627567204F4688 +:10911000460A00007072696E740000004465627552 +:10912000672009656E61626C65643A203078257845 +:109130000A000000566572626F736520656E616299 +:109140006C65643A20307825780A000044756D70AB +:109150002009656E61626C65643A20307825780A72 +:1091600000000000504F6F6C6C2009656E61626CEE +:1091700065643A20307825780A00000044656275FD +:1091800067204F4E0A00000075736167653A2064DE +:1091900065627567203C73656374696F6E3E203C41 +:1091A0006C6576656C3E0A0973656374696F6E3A27 +:1091B00020696E69742C20636D2C207370692C20DB +:1091C000746370202C207574696C2C207761726E2A +:1091D0000A096C6576656C20203A203020286F667D +:1091E00066292C203120286F6E292C2032202876E9 +:1091F0006572626F7365290A096F723A206465624D +:109200007567207072696E742F6F6E2F6F66660AB5 +:1092100000000000696E697400000000737069004E +:1092200074637000636D00007574696C0000000069 +:109230007761726E00000000616C6C0044756D70A7 +:1092400020416C6C20427566666572730A000000EE +:1092500075736167653A2064756D7050627566203C +:109260005B736F636B5D0A09736F636B3A20736F97 +:10927000636B6574204E756D6265720A00000000B4 +:109280006E6F6E650000000044656C6574696E6702 +:1092900020574550206B6579730A0000757361672C +:1092A000653A207365746B6579203C6B65795F69FD +:1092B00064782028302D33293E203C6B6579206965 +:1092C0006E206865783E0A09206F723A20736574D3 +:1092D0006B6579206E6F6E650A000000205745505F +:1092E000206B6579206D75737420626520313020A4 +:1092F000285745502D343029206F722032362028CF +:109300005745502D31303429206469676974730AD8 +:1093100000000000776C5F61706920766572736988 +:109320006F6E2076322E372E300A00006661696C2F +:10933000656420746F20676574206D6163206164CB +:1093400064726573730A0000687720616464723A1E +:109350002025730A000000006C696E6B2073746135 +:109360007475733A20000000697020616464723A79 +:10937000202573202D2000006E65746D61736B3A9B +:10938000202573202D200000676174657761793A8C +:109390002025730A00000000697020696E746572F0 +:1093A0006661636520697320646F776E0A00000050 +:1093B00064686370203A2000656E61626C65640ABF +:1093C0000000000064697361626C65640A0000005B +:1093D000444E533A202573202D2000007573616799 +:1093E000653A207374617274436C69203C697061E2 +:1093F0006464723E203C706F72743E203C736F63F5 +:109400006B3E203C7463702830292F7564702831BE +:10941000293E0A00537461727420636C69656E742E +:10942000206F6E206164647220307825782C207063 +:109430006F727420256420736F636B202564206D28 +:109440006F64652025640A00572D5B25735D2053EA +:109450007461727420636C69656E74206F6E207025 +:109460006F727420256420736F636B2025642070F5 +:10947000726F74202564206D6F646520256420461A +:1094800041494C45440A000075736167653A207391 +:1094900074617274537276203C706F72743E203C1B +:1094A000736F636B3E203C7463702830292F7564A2 +:1094B000702831293E0A00005374617274202573AC +:1094C00020736572766572206F6E20706F727420E3 +:1094D000256420736F636B2025640A00572D5B257C +:1094E000735D2053746172742025732073657276E6 +:1094F0006572206F6E20706F727420256420736F08 +:10950000636B202564204641494C45440A00000015 +:1095100075736167653A20736574646E73205B319F +:109520002D325D206161612E6262622E6363632E63 +:109530006464640A0000000053657420444E5320A4 +:1095400073657276657220256420746F2025730A16 +:10955000000000003D3D3E20444E53313A2025732B +:109560000A0000003D3D3E20444E53323A20257310 +:109570000A00000075736167653A20676574486F7B +:109580007374203C686F73746E616D653E0A0000F1 +:1095900075736167653A207770617373203C7373EC +:1095A00069643E203C706173737068726173653EDC +:1095B0000A0000002573203A204661696C6564202A +:1095C000746F20616464207061737370687261737A +:1095D000650A000075736167653A20647061737392 +:1095E000203C737369643E0A000000002573203A32 +:1095F000204661696C656420746F2064656C6574D5 +:109600006520706173737068726173650A00000091 +:1096100075736167653A206970636F6E666967206C +:109620003C69703E203C6E65746D61736B3E203CFE +:10963000676174657761792D69703E0A00000000EA +:1096400020206F72203A206970636F6E6669672010 +:109650006E6F6E652028746F20656E61626C652088 +:1096600044484350290A00005B25735D206E6966FB +:109670003A2570206C7769705F616464723D307860 +:1096800025780A0075736167653A20636F6E6E65B1 +:109690006374203C737369643E0A0000636D645F09 +:1096A000737461727453727600000000636D645FBE +:1096B00064656C70617373004D494D4C4644000005 +:1096C0000A24200024200000617661696C61626CCC +:1096D0006520636F6D6D616E64733A0A000000006F +:1096E000202025730A000000636F756C64206E6F84 +:1096F0007420616C6C6F63617465206669726D774C +:10970000617265206275666665720A00547565202F +:109710004D61722032362032323A30393A353420B7 +:109720003230313300000000776C5F696E69745F1E +:10973000636F6D706C6574655F6362006661696C10 +:10974000656420746F20696E697420776C20636F84 +:109750006E6E206D67720000572D5B25735D205380 +:109760007069206E6F7420696E697469616C697AC2 +:1097700065640A006C696E6B20646F776E2C2072D2 +:10978000656C6561736520646863700A00000000A1 +:109790006C696E6B20646F776E0A00006C696E6B8B +:1097A0002075702C20636F6E6E6563746564207421 +:1097B0006F20222573220A007265717565737469C2 +:1097C0006E672064686370202E2E2E20000000003B +:1097D0004641494C45440A00626F756E6420746FBF +:1097E0002025730A00000000572D5B25735D20497A +:1097F0006E74657266616365206E6F74207570218A +:109800000A0000007363616E00000000636F6E6EFB +:10981000656374007365746B6579000073746174BB +:1098200075730000646562756700000064756D7093 +:10983000427566006970636F6E66696700000000BC +:10984000747463700000000077706173730000002F +:109850006470617373000000676574486F7374000F +:10986000736574444E53000073746172745372765E +:10987000000000007374617274436C6900000000A2 +:1098800073656E645564700041726475696E6F2013 +:109890005769666920537461727475702E2E2E207C +:1098A0005B25735D0A0000006F7574206F66206D84 +:1098B000656D6F72790000006661696C6564207483 +:1098C0006F207072657061726520666F72206669C4 +:1098D000726D7761726520646F776E6C6F61640A78 +:1098E00000000000436F756C64206E6F7420646527 +:1098F0007465637420776C206465766963652C20D9 +:1099000061626F7274696E670A000000496E766169 +:109910006C6964206669726D776172652064617438 +:10992000612C2061626F7274696E670A000000002A +:109930004661696C656420746F2073746172742071 +:10994000776C20696E697469616C697A6174696F9A +:109950006E0A0000312E312E3000000069705F73F6 +:1099600074617475735F63620000000002000000A0 +:1099700000B71B000800000100010000286E756C94 +:109980006C290000253032782D253032782D253095 +:1099900032782D253032782D253032782D25303211 +:1099A00078000000256C752E256C752E256C752EA3 +:1099B000256C75007373696420746F6F206C6F6E13 +:1099C0006720286D6178202564290A00257320000E +:1099D00022257322000000002052535349202564A1 +:1099E0002064426D200000002041642D486F6320F8 +:1099F00000000000202857455020656E6372797082 +:109A000074696F6E290000002028544B495020656E +:109A10006E6372797074696F6E2900002028434369 +:109A20004D5020656E6372797074696F6E29000005 +:109A3000202020002530325820000000256300003F +:109A40006E6F206E65747320666F756E640A000019 +:109A5000496E76616C6964206C656E6774680A0093 +:109A600025642E25642E25642E256400544B495010 +:109A70000000000043434D500000000057455000D7 +:109A8000776C5F636D5F696E6974000073656C6508 +:109A900063745F6E65740000776C5F636F6E6E5FFA +:109AA0006C6F73745F636200776C5F7363616E5F8A +:109AB000636F6D706C6574655F636200776C5F6582 +:109AC00076656E745F636200776C5F6D6564696173 +:109AD0005F636F6E6E65637465645F636200000050 +:109AE0005B25735D20434D3A206F7574206F6620AF +:109AF0006D656D6F72790A005B25735D20434D3A89 +:109B000020636F756C64206E6F7420726567697373 +:109B1000746572206576656E742063620A000000C9 +:109B20005B25735D20434D3A20696E697469616CF1 +:109B3000697A65640A0000005B25735D20434D3A35 +:109B400020636F6E6E656374656420746F20257387 +:109B50000A0000005B25735D20434D3A20636F6E61 +:109B60006E656374206661696C65642C2073636143 +:109B70006E6E696E670A00005B25735D20434D3A87 +:109B800020636F756C64206E6F74207374617274DF +:109B9000207363616E20616674657220636F6E6E00 +:109BA000656374206661696C210A00005B25735D42 +:109BB00020434D3A20646973636F6E6E656374650C +:109BC000640A00005B25735D20434D3A20636F6E8D +:109BD0006E656374696F6E206C6F73742C20736391 +:109BE000616E6E696E670A005B25735D20434D3AB6 +:109BF00020636F756C64206E6F742073746172746F +:109C0000207363616E20616674657220636F6E6E8F +:109C1000656374206C6F7374210A00005B25735DAB +:109C200020434D3A207363616E20636F6D706C65E5 +:109C30007465640A00000000FFFFFFFFFFFF0000E3 +:109C40005B25735D20434D3A20526F616D696E67ED +:109C50002066726F6D207273736920256420746FA3 +:109C60002025640A000000005B25735D20434D3A07 +:109C7000204E6F2063616E64696461746520666F55 +:109C8000756E6420666F7220737369642022257379 +:109C9000220A00005B25735D20434D3A206661690E +:109CA0006C656420746F20636F6E6E6563740A0068 +:109CB0005B25735D20434D3A206661696C656420C5 +:109CC000746F207363616E0A000000005B25735D92 +:109CD00020434D3A20756E68616E646C6564206542 +:109CE00076656E740A000000776C5F636F6E6E5F5E +:109CF0006661696C7572655F636200000000000157 +:109D0000000018500000000B00001854000000096B +:109D1000000018800000000F000018A400000001DF +:109D2000000018E000000001000018E4000000013D +:109D300000001810000000010000181400000001CD +:109D400000001818000000010000181C00000001AD +:109D5000000018200000000100001824000000018D +:109D600000001828000000010000182C000000036B +:109D700000001830000000010000183C0000000145 +:109D8000000018400000000100001844000000011D +:109D900000001848000000010000184C4173736572 +:109DA0007274696F6E2022257322206661696C656A +:109DB00064206174206C696E6520256420696E20C2 +:109DC00025730A002E2E2F7372632F534F4654575C +:109DD0004152455F4652414D45574F524B2F5345D7 +:109DE0005256494345532F4C5749502F6C77697051 +:109DF0002D312E332E322F7372632F636F72652FC6 +:109E0000646863702E630000646863705F6F7074D1 +:109E1000696F6E3A20646863702D3E6F7074696F6D +:109E20006E735F6F75745F6C656E202B2032202B14 +:109E3000206F7074696F6E5F6C656E203C3D2044CE +:109E40004843505F4F5054494F4E535F4C454E006E +:109E5000646863705F6F7074696F6E5F6279746558 +:109E60003A20646863702D3E6F7074696F6E735F23 +:109E70006F75745F6C656E203C20444843505F4FA3 +:109E80005054494F4E535F4C454E00006468637018 +:109E90005F6F7074696F6E5F747261696C65723A3E +:109EA000206468637020213D204E554C4C0000001A +:109EB000646863705F6F7074696F6E5F74726169FC +:109EC0006C65723A20646863702D3E6D73675F6FD6 +:109ED000757420213D204E554C4C0A006468637017 +:109EE0005F6F7074696F6E5F747261696C65723AEE +:109EF00020646863702D3E6F7074696F6E735F6F5E +:109F000075745F6C656E203C20444843505F4F5031 +:109F100054494F4E535F4C454E0A000064686370CD +:109F20005F6F7074696F6E5F73686F72743A2064EC +:109F30006863702D3E6F7074696F6E735F6F7574B8 +:109F40005F6C656E202B2032203C3D2044484350FE +:109F50005F4F5054494F4E535F4C454E0000000038 +:109F6000646863705F6F7074696F6E5F6C6F6E674B +:109F70003A20646863702D3E6F7074696F6E735F12 +:109F80006F75745F6C656E202B2034203C3D20443F +:109F90004843505F4F5054494F4E535F4C454E001D +:109FA0007265706C79207761736E277420667265B4 +:109FB00065640000646863705F6372656174655F07 +:109FC000726571756573743A206E657469662021D7 +:109FD0003D204E554C4C0000646863705F637265B1 +:109FE0006174655F726571756573743A2064686346 +:109FF0007020213D204E554C4C0000006468637079 +:10A000005F6372656174655F726571756573743ADB +:10A0100020646863702D3E705F6F7574203D3D2035 +:10A020004E554C4C00000000646863705F637265BD +:10A030006174655F726571756573743A20646863F5 +:10A04000702D3E6D73675F6F7574203D3D204E55DA +:10A050004C4C0000646863705F6372656174655F97 +:10A06000726571756573743A20636865636B2074FB +:10A07000686174206669727374207062756620630B +:10A08000616E20686F6C64207374727563742064F1 +:10A090006863705F6D736700646863705F64656CAC +:10A0A0006574655F726571756573743A206E657469 +:10A0B000696620213D204E554C4C00006468637059 +:10A0C0005F64656C6574655F726571756573743A1C +:10A0D000206468637020213D204E554C4C000000E8 +:10A0E000646863705F64656C6574655F72657175E3 +:10A0F0006573743A20646863702D3E705F6F757489 +:10A1000020213D204E554C4C0000000064686370D7 +:10A110005F64656C6574655F726571756573743ACB +:10A1200020646863702D3E6D73675F6F75742021C6 +:10A130003D204E554C4C00006E6574696620213DF3 +:10A14000204E554C4C0000007062756620705F6FA9 +:10A150007574207761736E2774206672656564007C +:10A16000646863705F62696E643A206E65746966E4 +:10A1700020213D204E554C4C000000006468637067 +:10A180005F62696E643A206468637020213D204EEE +:10A19000554C4C00726574203D3D2073697A656FA3 +:10A1A000662873747275637420646863705F6D737E +:10A1B0006729202D20444843505F4F5054494F4E4B +:10A1C000535F4C454E000000726574203D3D206495 +:10A1D0006863702D3E6F7074696F6E735F696E5F38 +:10A1E0006C656E002E2E2F7372632F534F4654579B +:10A1F0004152455F4652414D45574F524B2F5345B3 +:10A200005256494345532F4C5749502F6C7769702C +:10A210002D312E332E322F7372632F636F72652FA1 +:10A22000646E732E63000000646E73207365727633 +:10A230006572206F7574206F66206172726179009B +:10A24000646E732073657276657220686173206E28 +:10A250006F20495020616464726573732073657464 +:10A260000000000070627566206D75737420626571 +:10A2700020696E206F6E652070696563650000005F +:10A28000617272617920696E646578206F757420DF +:10A290006F6620626F756E6473000000756E6B6E82 +:10A2A0006F776E20646E735F7461626C6520656E9B +:10A2B0007472792073746174653A00006C6F636125 +:10A2C0006C686F73740000003230382E36372E32CF +:10A2D00032322E3232320000000400040004000248 +:10A2E000002000050002001E002000002E2E2F730B +:10A2F00072632F534F4654574152455F4652414D6A +:10A3000045574F524B2F53455256494345532F4CB7 +:10A310005749502F6C7769702D312E332E322F73A1 +:10A3200072632F636F72652F6D656D702E63000011 +:10A330006D656D705F667265653A206D656D207044 +:10A34000726F7065726C7920616C69676E6564000C +:10A350006D656D705F6D616C6C6F633A20747970C0 +:10A3600065203C204D454D505F4D41580000000098 +:10A370006D656D705F6D616C6C6F633A206D656DBE +:10A38000702070726F7065726C7920616C69676E95 +:10A3900065640000001C002000B0002400140020B0 +:10A3A00000080010025400002E2E2F7372632F53EA +:10A3B0004F4654574152455F4652414D45574F52C3 +:10A3C0004B2F53455256494345532F4C5749502F15 +:10A3D0006C7769702D312E332E322F7372632F6399 +:10A3E0006F72652F6E657469662E6300626F6775A4 +:10A3F0007320706275663A206C656E20213D207472 +:10A400006F745F6C656E20627574206E6578742061 +:10A410003D3D204E554C4C210000000073686F7587 +:10A420006C64206E6F74206265206E756C6C207396 +:10A43000696E636520666972737420213D206C61CA +:10A4400073742100696620666972737420213D204F +:10A450004E554C4C2C206C617374206D75737420B8 +:10A46000616C736F20626520213D204E554C4C007D +:10A470002E2E2F7372632F534F4654574152455F10 +:10A480004652414D45574F524B2F53455256494323 +:10A4900045532F4C5749502F6C7769702D312E330F +:10A4A0002E322F7372632F636F72652F7062756621 +:10A4B0002E630000286820213D204E554C4C292059 +:10A4C000262620287420213D204E554C4C2920283A +:10A4D00070726F6772616D6D65722076696F6C6105 +:10A4E000746573204150492900000000702D3E74AE +:10A4F0006F745F6C656E203D3D20702D3E6C656E07 +:10A5000020286F66206C6173742070627566206904 +:10A510006E20636861696E2900000000696E6372D5 +:10A52000656D656E745F6D61676E697475646520D5 +:10A530003C3D20702D3E6C656E0000006261642021 +:10A5400070627566207479706500000070627566CF +:10A550005F74616B653A20696E76616C6964206234 +:10A5600075660000706275665F74616B653A20699C +:10A570006E76616C6964206461746170747200004D +:10A58000706275665F74616B653A20696E76616CA6 +:10A590006964207062756600646964206E6F74205F +:10A5A000636F707920616C6C2064617461000000DD +:10A5B000706275665F636F70795F706172746961F4 +:10A5C0006C3A20696E76616C696420627566000081 +:10A5D000706275665F636F70795F706172746961D4 +:10A5E0006C3A20696E76616C696420646174617094 +:10A5F00074720000706275665F636F70793A2074E0 +:10A600006172676574206E6F742062696720656E81 +:10A610006F75676820746F20686F6C6420736F7546 +:10A6200072636500705F746F20213D204E554C4C65 +:10A63000000000006F66667365745F746F203C3DB8 +:10A6400020705F746F2D3E6C656E00006F666673E0 +:10A6500065745F66726F6D203C3D20705F66726F3F +:10A660006D2D3E6C656E0000706275665F636F7085 +:10A6700079282920646F6573206E6F7420616C6C7B +:10A680006F77207061636B65742071756575657394 +:10A69000210A0000706275665F667265653A207314 +:10A6A000616E6520747970650000000070627566E7 +:10A6B0005F667265653A20702D3E726566203E20A9 +:10A6C00030000000702D3E746F745F6C656E203D2D +:10A6D0003D20702D3E6C656E202B20712D3E746FD9 +:10A6E000745F6C656E000000702D3E746F745F6C5B +:10A6F000656E203D3D20702D3E6C656E00000000B3 +:10A70000706275665F7265616C6C6F633A20702071 +:10A71000213D204E554C4C00706275665F7265613C +:10A720006C6C6F633A2073616E6520702D3E747996 +:10A730007065000067726F77203C206D61785F75EF +:10A7400031365F7400000000706275665F7265618B +:10A750006C6C6F633A207120213D204E554C4C00AB +:10A76000706275665F616C6C6F633A206261642031 +:10A7700070627566206C617965720000636865635C +:10A780006B20702D3E7061796C6F6164202B20709E +:10A790002D3E6C656E20646F6573206E6F74206F44 +:10A7A000766572666C6F77207062756600000000D7 +:10A7B000504255465F504F4F4C5F42554653495AA1 +:10A7C00045206D75737420626520626967676572E4 +:10A7D000207468616E204D454D5F414C49474E4D98 +:10A7E000454E540072656D5F6C656E203C206D6156 +:10A7F000785F7531365F7400706275665F616C6C8E +:10A800006F633A207062756620712D3E7061796CBD +:10A810006F61642070726F7065726C7920616C6911 +:10A82000676E656400000000706275665F616C6C45 +:10A830006F633A206572726F6E656F7573207479FD +:10A8400070650000706275665F636F707920666185 +:10A85000696C656400000000010203040506070737 +:10A8600007070707070000002E2E2F7372632F5370 +:10A870004F4654574152455F4652414D45574F52FE +:10A880004B2F53455256494345532F4C5749502F50 +:10A890006C7769702D312E332E322F7372632F63D4 +:10A8A0006F72652F7463702E630000007463705FB5 +:10A8B000706362735F73616E653A20616374697679 +:10A8C00065207063622D3E737461746520213D20A4 +:10A8D000434C4F53454400007463705F7063627370 +:10A8E0005F73616E653A2061637469766520706399 +:10A8F000622D3E737461746520213D204C49535490 +:10A90000454E00007463705F706362735F73616EC5 +:10A91000653A20616374697665207063622D3E73C9 +:10A920007461746520213D2054494D452D5741499E +:10A93000540000007463705F706362735F73616ED4 +:10A94000653A207477207063622D3E73746174657C +:10A95000203D3D2054494D452D57414954000000AC +:10A960007463705F62696E643A2063616E206F6E1B +:10A970006C792062696E6420696E207374617465FD +:10A9800020434C4F534544007463705F7265637697 +:10A9900065643A206C656E20776F756C6420777201 +:10A9A0006170207263765F776E640A00756E7365FE +:10A9B0006E74207365676D656E7473206C65616B72 +:10A9C000696E6700756E61636B6564207365676DA2 +:10A9D000656E7473206C65616B696E6700000000C2 +:10A9E0006F6F736571207365676D656E7473206C2E +:10A9F00065616B696E6700007463705F7063625FAE +:10AA000072656D6F76653A207463705F7063627310 +:10AA10005F73616E652829007463705F6C6973747D +:10AA2000656E3A2070636220616C726561647920A2 +:10AA3000636F6E6E65637465640000007463705FBD +:10AA4000736C6F77746D723A2061637469766520F8 +:10AA50007063622D3E737461746520213D20434C08 +:10AA60004F5345440A0000007463705F736C6F7746 +:10AA7000746D723A20616374697665207063622D2B +:10AA80003E737461746520213D204C495354454EFA +:10AA90000A0000007463705F736C6F77746D723AB4 +:10AAA00020616374697665207063622D3E73746102 +:10AAB000746520213D2054494D452D574149540A84 +:10AAC000000000007463705F736C6F77746D723A8E +:10AAD000206D6964646C652074637020213D20746E +:10AAE00063705F6163746976655F706362730000B1 +:10AAF0007463705F736C6F77746D723A20666972FD +:10AB0000737420706362203D3D207463705F6163E5 +:10AB1000746976655F706362730000007463705FD0 +:10AB2000736C6F77746D723A2054494D452D5741BF +:10AB30004954207063622D3E7374617465203D3DFD +:10AB40002054494D452D5741495400007463705FAE +:10AB5000736C6F77746D723A206D6964646C6520F4 +:10AB600074637020213D207463705F74775F70633D +:10AB7000627300007463705F736C6F77746D723A08 +:10AB800020666972737420706362203D3D20746397 +:10AB9000705F74775F706362730000007463705F4E +:10ABA000636F6E6E6563743A2063616E206F6E6CC6 +:10ABB0007920636F6E6E65637465642066726F6D75 +:10ABC00020737461746520434C4F5345440000006A +:10ABD00053594E5F53454E540000000053594E5F89 +:10ABE000524356440000000045535441424C4953DF +:10ABF0004845440046494E5F574149545F31000083 +:10AC000046494E5F574149545F320000434C4F5311 +:10AC1000455F574149540000434C4F53494E47004C +:10AC20004C4153545F41434B0000000054494D4593 +:10AC30005F5741495400000003060C18306078004B +:10AC40008000FAFC8000FC6C8000FD4E8000FDB4AA +:10AC50008000FE368000FD4E8000FE788000FEF809 +:10AC60002E2E2F7372632F534F4654574152455F18 +:10AC70004652414D45574F524B2F5345525649432B +:10AC800045532F4C5749502F6C7769702D312E3317 +:10AC90002E322F7372632F636F72652F7463705F30 +:10ACA000696E2E63000000007063622D3E736E6457 +:10ACB0005F71756575656C656E203E3D20706275CF +:10ACC000665F636C656E286E6578742D3E70290032 +:10ACD0007463705F726563656976653A2076616C4E +:10ACE0006964207175657565206C656E67746800B0 +:10ACF000696E7365672E7020213D204E554C4C00C7 +:10AD0000696E73616E65206F6666736574210000FD +:10AD10007062756620746F6F2073686F72742100A3 +:10AD2000706275665F686561646572206661696CF2 +:10AD3000656400007463705F726563656976653A87 +:10AD4000207365676D656E74206E6F742074726910 +:10AD50006D6D656420636F72726563746C792074C5 +:10AD60006F207263765F776E640A00007463705FB1 +:10AD7000726563656976653A207365676D656E74A3 +:10AD8000206E6F74207472696D6D656420636F72DC +:10AD9000726563746C7920746F206F6F73657120B6 +:10ADA00071756575650A00007463705F726563652F +:10ADB0006976653A207463706C656E203E2072631C +:10ADC000765F776E640A00007463705F7265636516 +:10ADD0006976653A206F6F736571207463706C6576 +:10ADE0006E203E207263765F776E640A000000007A +:10ADF0007463705F696E7075743A2061637469760C +:10AE000065207063622D3E737461746520213D205E +:10AE1000434C4F53454400007463705F696E707516 +:10AE2000743A20616374697665207063622D3E73A5 +:10AE30007461746520213D2054494D452D57414989 +:10AE4000540000007463705F696E7075743A20611D +:10AE50006374697665207063622D3E7374617465F6 +:10AE600020213D204C495354454E00007463705FCF +:10AE7000696E7075743A207063622D3E6E657874E9 +:10AE800020213D2070636220286265666F72652014 +:10AE900063616368652900007463705F696E707533 +:10AEA000743A207063622D3E6E65787420213D20D7 +:10AEB00070636220286166746572206361636865EF +:10AEC000290000007463705F696E7075743A2054D5 +:10AED000494D452D57414954207063622D3E73748E +:10AEE000617465203D3D2054494D452D57414954DD +:10AEF000000000007463705F696E7075743A2070B2 +:10AF000063622D3E737461746520213D20434C4F74 +:10AF1000534544007063622D3E736E645F717565C6 +:10AF200075656C656E203E20300000007063622DF8 +:10AF30003E61636365707420213D204E554C4C008A +:10AF40007463705F696E7075743A207463705F70BB +:10AF50006362735F73616E65282900002E2E2F7364 +:10AF600072632F534F4654574152455F4652414DED +:10AF700045574F524B2F53455256494345532F4C3B +:10AF80005749502F6C7769702D312E332E322F7325 +:10AF900072632F636F72652F7463705F6F75742EA9 +:10AFA00063000000636865636B20746861742066E9 +:10AFB0006972737420706275662063616E20686FB9 +:10AFC0006C6420737472756374207463705F68645A +:10AFD000720000007463705F656E71756575653A27 +:10AFE000207061636B6574206E65656473207061A9 +:10AFF000796C6F61642C206F7074696F6E732C2094 +:10B000006F722053594E2F46494E202870726F6739 +:10B0100072616D6D65722076696F6C617465732005 +:10B0200041504929000000007463705F656E7175BE +:10B030006575653A206C656E20213D2030207C7C52 +:10B0400020617267203D3D204E554C4C2028707287 +:10B050006F6772616D6D65722076696F6C61746582 +:10B0600073204150492900007463705F656E7175EB +:10B070006575653A207062756673206F6E20717514 +:10B08000657565203D3E206174206C656173742098 +:10B090006F6E65207175657565206E6F6E2D656DBF +:10B0A000707479007463705F656E71756575653A6B +:10B0B000206E6F207062756673206F6E20717565EB +:10B0C0007565203D3E20626F7468207175657565F9 +:10B0D0007320656D707479007573656720213D205C +:10B0E0004E554C4C00000000636865636B2074682B +:10B0F0006174206669727374207062756620636182 +:10B100006E20686F6C642074686520636F6D706C6E +:10B11000657465207365676C656E000070627566A6 +:10B120005F686561646572206661696C65640A00C8 +:10B1300046494E20656E71756575656420746F674C +:10B140006574686572207769746820646174610051 +:10B150007A65726F2D6C656E6774682070627566B3 +:10B16000000000007463705F656E71756575653A07 +:10B170002076616C6964207175657565206C656EFB +:10B1800067746800525354206E6F74206578706540 +:10B190006374656420686572652100002E2E2F732C +:10B1A00072632F534F4654574152455F4652414DAB +:10B1B00045574F524B2F53455256494345532F4CF9 +:10B1C0005749502F6C7769702D312E332E322F73E3 +:10B1D00072632F636F72652F7564702E63000000B9 +:10B1E000726562696E64203D3D203000636865636E +:10B1F0006B20746861742066697273742070627564 +:10B20000662063616E20686F6C642073747275636E +:10B2100074207564705F686472000000702D3E7069 +:10B2200061796C6F6164203D3D20697068647200D3 +:10B230002E2E2F7372632F534F4654574152455F42 +:10B240004652414D45574F524B2F53455256494355 +:10B2500045532F4C5749502F6C7769702D312E3341 +:10B260002E322F7372632F636F72652F697076347D +:10B270002F69636D702E6300636865636B2074686B +:10B2800061742066697273742070627566206361F0 +:10B290006E20686F6C642069636D70206D657373D8 +:10B2A0006167650069636D705F696E7075743A20DF +:10B2B0006D6F76696E6720702D3E7061796C6F617D +:10B2C0006420746F2069702068656164657220660F +:10B2D00061696C65640A0000636865636B2074686B +:10B2E0006174206669727374207062756620636190 +:10B2F0006E20686F6C642073747275637420746858 +:10B30000652049434D502068656164657200000006 +:10B3100069636D705F696E7075743A20636F7079E0 +:10B32000696E6720746F206E657720706275662085 +:10B330006661696C65640A0069636D705F696E704F +:10B3400075743A20726573746F72696E67206F72DC +:10B350006967696E616C20702D3E7061796C6F61F8 +:10B3600064206661696C65640A00000043616E27B1 +:10B3700074206D6F7665206F7665722068656164F4 +:10B38000657220696E207061636B65740000000057 +:10B390002E2E2F7372632F534F4654574152455FE1 +:10B3A0004652414D45574F524B2F534552564943F4 +:10B3B00045532F4C5749502F6C7769702D312E33E0 +:10B3C0002E322F7372632F636F72652F697076341C +:10B3D0002F69702E63000000636865636B207468DA +:10B3E000617420666972737420706275662063618F +:10B3F0006E20686F6C64207374727563742069705A +:10B400005F68647200FFFFFFFF00000000000000A3 +:10B410002E2E2F7372632F534F4654574152455F60 +:10B420004652414D45574F524B2F53455256494373 +:10B4300045532F4C5749502F6C7769702D312E335F +:10B440002E322F7372632F636F72652F697076349B +:10B450002F69705F667261672E630000746869739C +:10B46000206E656564732061207062756620696E68 +:10B47000206F6E65207069656365210073616E6978 +:10B48000747920636865636B206C696E6B656420FA +:10B490006C697374000000007072657620213D2095 +:10B4A00069707200707265762D3E6E657874203D0D +:10B4B0003D2069707200000069705F72656173738E +:10B4C0005F70627566636F756E74203E3D20636CBD +:10B4D000656E0000636865636B20667261676D6509 +:10B4E0006E747320646F6E2774206F7665726C6162 +:10B4F000700000006E6F2070726576696F75732042 +:10B50000667261676D656E742C2074686973206D56 +:10B51000757374206265207468652066697273743F +:10B5200020667261676D656E7421000073616E69DB +:10B53000747920636865636B0000000076616C6954 +:10B54000646174655F646174616772616D3A6E65B0 +:10B5500078745F70627566213D4E554C4C0000005A +:10B5600076616C69646174655F646174616772615E +:10B570006D3A646174616772616D20656E64213D2E +:10B58000646174616772616D206C656E00FFFFFF1E +:10B59000FFFFFF002E2E2F7372632F534F46545719 +:10B5A0004152455F4652414D45574F524B2F5345EF +:10B5B0005256494345532F4C5749502F6C77697069 +:10B5C0002D312E332E322F7372632F6E65746966A0 +:10B5D0002F6574686172702E630000006E65746977 +:10B5E000662D3E6877616464725F6C656E206D7570 +:10B5F0007374206265207468652073616D652061D5 +:10B6000073204554484152505F4857414444525F6B +:10B610004C454E20666F722065746861727021001F +:10B620007120213D204E554C4C000000712D3E7084 +:10B6300020213D204E554C4C00000000722D3E70E4 +:10B6400020213D204E554C4C000000006172705F7F +:10B650007461626C655B695D2E71203D3D204E55C5 +:10B660004C4C000069203C204152505F5441424CF8 +:10B67000455F53495A4500006E657469662D3E6802 +:10B6800077616464725F6C656E203D3D204554486F +:10B690004152505F4857414444525F4C454E000070 +:10B6A000636865636B207468617420666972737483 +:10B6B00020706275662063616E20686F6C64207311 +:10B6C0007472756374206574686172705F68647207 +:10B6D000000000006172705F7461626C655B695D9F +:10B6E0002E7374617465203D3D2050454E44494E93 +:10B6F00047206F7220535441424C45006E6F2070BA +:10B7000061636B65742071756575657320616C6C20 +:10B710006F77656421000000000000002E2E2F735B +:10B7200072632F534F4654574152455F4652414D25 +:10B7300045574F524B2F53455256494345532F4C73 +:10B740005749502F6C7769702D706F72742D312EA0 +:10B75000332E322F48442F69662F6E657469662F29 +:10B76000776C69662E6300000A09000052580000D9 +:10B7700054580000FFFFFF740000000001FFFFFFAE +:10B780000000FFFFFFFFFF400000000001FFFFFF80 +:10B7900041505000484D4700312E352E312E370094 +:10B7A000312E352E312E3100312E352E312E3400F2 +:10B7B00080017C7C80017C7480017C7C80017C6ABF +:10B7C00080017DCA80017D7880017D2A80017CD83E +:10B7D00080017C86800185D2800185CA800185CA6E +:10B7E000800185D2800185C2800185C2800185BA31 +:10B7F000800185BA02040B0C121618242C30424822 +:10B80000606C0000322E312E312E310078C40E00D3 +:10B81000352E332E31000000352E332E350000003A +:10B82000352E332E340000008001BF808001BF928E +:10B830008001BFA88001BF5A8001BF668001BFD4CC +:10B840008001BF5A8001BFE08001BF5A8001BF5A0A +:10B850008001BF5A8001BF5A8001BF5A8001BF5A80 +:10B860008001BF5A8001BF5A8001BF5A8001BF5A70 +:10B870008001BF5A8001BF5A8001BF5A8001BF5A60 +:10B880008001BF5A8001BF5A8001BF5A8001BF5A50 +:10B890008001BF5A8001BF5A8001BF5A8001BF5A40 +:10B8A0008001BF5A8001BF5A8001BF5A8001BF5A30 +:10B8B0008001BF5A8001BF5A8001BF5A8001BF5A20 +:10B8C0008001BF5A8001BF5A8001BF5A8001BF5A10 +:10B8D0008001BF5A8001BF5A8001BF5A8001BF5A00 +:10B8E0008001BF5A8001BF5A8001BF5A8001BF5AF0 +:10B8F0008001BF5A8001BF5A8001BF5A8001BF5AE0 +:10B900008001BF5A8001BF5A8001BF5A8001BF5ACF +:10B910008001BF5A8001BF5A8001BF5A8001BF5ABF +:10B920008001BF5A8001BF7C8001C0448001BF5AA2 +:10B930008001C0448001BF5A8001C17C8001BF5A90 +:10B940008001C1708001BF5A8001C1648001BF5A6B +:10B950008001BF5A8001BF5A8001BF5A8001C1AC2B +:10B960008001BF5A8001BF5A8001C1A08001BF5A27 +:10B970008001C1948001BF5A8001BF5A8001BF5A23 +:10B980008001BF5A8001BF5A8001BF5A8001BF5A4F +:10B990008001BF5A8001BF5A8001BF5A8001BF5A3F +:10B9A0008001BF5A8001BF5A8001BF5A8001BF5A2F +:10B9B0008001BF5A8001BF5A8001BF5A8001BF5A1F +:10B9C0008001BF5A8001BF5A8001BF5A8001BF5A0F +:10B9D0008001BF5A8001BF5A8001BF5A8001BF5AFF +:10B9E0008001BF5A8001BF5A8001BF5A8001BF5AEF +:10B9F0008001BF5A8001BF5A8001BF5A8001BF5ADF +:10BA00008001BF5A8001BF5A8001BF5A8001BF5ACE +:10BA10008001BF5A8001BF5A8001BF5A8001BF5ABE +:10BA20008001BF5A8001BF5A8001BF5A8001BF5AAE +:10BA30008001BF5A8001BF5A8001BF5A8001BF5A9E +:10BA40008001BF5A8001BF5A8001BF5A8001BF5A8E +:10BA50008001BF5A8001BF5A8001BF5A8001BF5A7E +:10BA60008001BF5A8001BF5A8001BF5A8001BF5A6E +:10BA70008001BF5A8001BF5A8001BF5A8001BF5A5E +:10BA80008001BF5A8001BF5A8001BF5A8001BF5A4E +:10BA90008001BF5A8001BF5A8001BF5A8001BF5A3E +:10BAA0008001BF5A8001BF5A8001BF5A8001BF5A2E +:10BAB0008001BF5A8001BF5A8001BF5A8001BF5A1E +:10BAC0008001BF5A8001BF5A8001BF5A8001BF5A0E +:10BAD0008001BF5A8001BF5A8001BF5A8001BF5AFE +:10BAE0008001BF5A8001BF5A8001BF5A8001BF5AEE +:10BAF0008001BF5A8001BF5A8001BF5A8001BF5ADE +:10BB00008001BF5A8001BF5A8001BF5A8001BF5ACD +:10BB10008001BF5A8001C02C8001C1588001C02C17 +:10BB20008001C02C8001C1888001BF5A8001C044BF +:10BB30008001BF5A8001C0508001BF5A8001C050AF +:10BB40008001BF5A8001C02C8001BF5A8001C02CE7 +:10BB50008001C0388001C0388001C0388001BF5AE0 +:10BB60008001C02C8001C02C8001C14C8001BF5AD3 +:10BB70008001BF5A8001C1408001BF5A8001BF5A75 +:10BB80008001BF5A8001BF5A8001BF5A8001BF5A4D +:10BB90008001BF5A8001BF5A8001BF5A8001BF5A3D +:10BBA0008001C1348001BF5A8001BF5A8001BF5A51 +:10BBB0008001BF5A8001BF5A8001BF5A8001BF5A1D +:10BBC0008001C1288001BF5A8001BF5A8001BF5A3D +:10BBD0008001BF5A8001BF5A8001BF5A8001BF5AFD +:10BBE0008001BF5A8001BF5A8001BF5A8001BF5AED +:10BBF0008001BF5A8001BF5A8001BF5A8001BF5ADD +:10BC00008001BF5A8001BF5A8001BF5A8001BF5ACC +:10BC10008001BF5A8001BF5A8001BF5A8001BF5ABC +:10BC20008001BF5A8001BF5A8001BF5A8001BF5AAC +:10BC30008001BF5A8001BF5A8001BF5A8001BF5A9C +:10BC40008001BF5A8001BF5A8001BF5A8001BF5A8C +:10BC50008001BF5A8001BF5A8001BF5A8001BF5A7C +:10BC60008001BF5A8001BF5A8001BF5A8001BF5A6C +:10BC70008001BF5A8001BF5A8001BF5A8001BF5A5C +:10BC80008001BF5A8001BF5A8001BF5A8001BF5A4C +:10BC90008001BF5A8001BF5A8001BF5A8001BF5A3C +:10BCA0008001BF5A8001BF5A8001BF5A8001BF5A2C +:10BCB0008001BF5A8001BF5A8001BF5A8001BF5A1C +:10BCC0008001BF5A8001BF5A8001BF5A8001BF5A0C +:10BCD0008001BF5A8001BF5A8001BF5A8001BF5AFC +:10BCE0008001BF5A8001BF5A8001BF5A8001BF5AEC +:10BCF0008001BF5A8001BF5A8001BF5A8001BF5ADC +:10BD00008001BF5A8001BF5A8001BF5A8001BF5ACB +:10BD10008001BF5A8001BF5A8001BF5A8001BF5ABB +:10BD20008001BF5A8001BF5A8001BF5A8001BF5AAB +:10BD30008001BF5A8001BF5A8001BF5A8001BF5A9B +:10BD40008001BF5A8001BF5A8001BF5A8001BF5A8B +:10BD50008001BF5A8001BF5A8001BF5A8001BF5A7B +:10BD60008001BF5A8001BF5A8001BF5A8001C11CA7 +:10BD70008001C1108001BF5A8001C1048001BF5AF7 +:10BD80008001BF5A8001BF5A8001C0F88001C0EC19 +:10BD90008001BF5A8001BF5A8001C0E08001BF5AB4 +:10BDA0008001BF5A8001C0D48001C0C88001C0BCDE +:10BDB0008001C0B08001C0A48001C0988001C08C07 +:10BDC0008001BF5A8001C0808001C0748001BF5AC9 +:10BDD0008001C0688001C05C8001C48E8001C47C89 +:10BDE0008001C46A8001C4588001C4468001C43403 +:10BDF0008001C3928001C3928001C4228001C410DB +:10BE00008001C3FE8001C3EC8001C3DA8001C3C896 +:10BE10008001C3B68001C3A48001C3A48001C4A073 +:10BE20008001C2D48001C2D48001C2D48001C5C0C7 +:10BE30008001C5AE8001C59C8001C2D48001C2D4FE +:10BE40008001C58A8001C2D48001C2D48001C57836 +:10BE50008001C5668001C5548001C5428001C5309E +:10BE60008001C51E8001C50C8001C4FA8001C4E8B0 +:10BE70008001C2D48001C4D68001C4C48001C2D470 +:10BE80008001C2D48001C2D48001C2D48001C2D456 +:10BE90008001C2D48001C2D48001C2D48001C2D446 +:10BEA0008001C2D48001C2D48001C2D48001C2D436 +:10BEB0008001C2D48001C2D48001C2D48001C2D426 +:10BEC0008001C2D48001C2D48001C2D48001C2D416 +:10BED0008001C2D48001C2D48001C2D48001C2D406 +:10BEE0008001C2D48001C2D48001C2D48001C2D4F6 +:10BEF0008001C2D48001C2D48001C2D48001C2D4E6 +:10BF00008001C2D48001C2D48001C2D48001C2D4D5 +:10BF10008001C2D48001C2D48001C2D48001C2D4C5 +:10BF20008001C2D48001C2D48001C2D48001C2D4B5 +:10BF30008001C2D48001C2D48001C2D48001C2D4A5 +:10BF40008001C2D48001C2D48001C2D48001C2D495 +:10BF50008001C2D48001C2D48001C2D48001C2D485 +:10BF60008001C2D48001C2D48001C2D48001C2D475 +:10BF70008001C2D48001C2D48001C2D48001C2D465 +:10BF80008001C2D48001C2D48001C2D48001C2D455 +:10BF90008001C2D48001C2D48001C2D48001C2D445 +:10BFA0008001C2D48001C2D48001C2D48001C2D435 +:10BFB0008001C2D48001C2D48001C2D48001C2D425 +:10BFC0008001C2D48001C2D48001C2D48001C2D415 +:10BFD0008001C2D48001C2D48001C2D48001C2D405 +:10BFE0008001C2D48001C2D48001C2D48001C2D4F5 +:10BFF0008001C2D48001C2D48001C2D48001C2D4E5 +:10C000008001C2D48001C2D48001C2D48001C2D4D4 +:10C010008001C4B28001EFCA8001EFCE8001EF7AC7 +:10C020008001EF7A8001EF828001EF8A8001EF9238 +:10C030008001EF9A8001EFA28001EFAA8001EFB2A8 +:10C040008001EFBA8001EFC28001EFD68001F96074 +:10C050008001F93E8001F9CC8001F8A68001F9BE8B +:10C060008001F91C8001F8A68001F8E28001F8A6A1 +:10C070008001F8A68001F8A68001F8A68001F8A644 +:10C080008001F8A68001F8A68001F8A68001F8A634 +:10C090008001F8A68001F8A68001F8A68001F8A624 +:10C0A0008001F8A68001F8A68001F8A68001F8A614 +:10C0B0008001F8A68001F8A68001F8A68001F8A604 +:10C0C0008001F8A68001F8A68001F8A68001F8A6F4 +:10C0D0008001F8A68001F8A68001F8A68001F8A6E4 +:10C0E0008001F8A68001F8A68001F8A68001F8A6D4 +:10C0F0008001F8A68001F8A68001F8A68001F8A6C4 +:10C100008001F8A68001F8A68001F8A68001F8A6B3 +:10C110008001F8A68001F8A68001F8A68001F8A6A3 +:10C120008001F8A68001F8A68001F8A68001F8A693 +:10C130008001F8A68001F8A68001F8A68001F8A683 +:10C140008001F8A68001F8A68001F8C08001FA58A5 +:10C150008001F8F08001F8F08001F90E8001F8F01C +:10C160008001F8F08001F8F08001F8F08001F8F02B +:10C170008001F8F08001F8F08001F8F08001F8F01B +:10C180008001F8F08001F90E8001F8F08001F8F0EC +:10C190008001F8F08001F8F08001F8F08001F8F0FB +:10C1A0008001F8F08001FA488001F8F08001F8F091 +:10C1B0008001F8F08001F8F08001F8F08001F8F0DB +:10C1C0008001F8F08001F8F08001F8F08001F8F0CB +:10C1D0008001F8F08001F8F08001F8F08001F8F0BB +:10C1E0008001F8F08001F8F08001F8F08001F8F0AB +:10C1F0008001F8F08001F8F08001F8F08001F8F09B +:10C200008001F8F08001F8F08001F8F08001F8F08A +:10C210008001F8F08001F8F08001F8F08001F8F07A +:10C220008001F8F08001F8F08001F8F08001F8F06A +:10C230008001F8F08001F8F08001F8F08001F8F05A +:10C240008001F8F08001F8F08001F8F08001F8F04A +:10C250008001F8F08001F8F08001F8F08001F8F03A +:10C260008001F8F08001F8F08001F8F08001F8F02A +:10C270008001F8F08001F8F08001F8F08001F8F01A +:10C280008001F8F08001F8F08001F8F08001F8F00A +:10C290008001F8F08001F8F08001F8F08001F8F0FA +:10C2A0008001F8F08001F8F08001F8F08001F8F0EA +:10C2B0008001F8F08001F8F08001F8F08001F8F0DA +:10C2C0008001F8F08001F8F08001F8F08001F8F0CA +:10C2D0008001F8F08001F8F08001F8F08001F8F0BA +:10C2E0008001F8F08001F8F08001F8F08001F8F0AA +:10C2F0008001F8F08001F8F08001F8F08001F8F09A +:10C300008001F8F08001F8F08001F8F08001F8F089 +:10C310008001F8F08001F8F08001F8F08001F8F079 +:10C320008001F8F08001F8F08001F8F08001F8F069 +:10C330008001F8F08001F8F08001F8F08001F8F059 +:10C340008001F8F08001F8F08001F8F08001F8F049 +:10C350008001F90E8001FA348001F8F08001F90EB5 +:10C360008001F8F08001F8F08001F8F08001F8F029 +:10C370008001F8F08001F8F08001F8F08001F90EFA +:10C380008001F8F08001F8F08001FA2C8001FA2495 +:10C390008001FA1C8001FA148001FA0C8001FA0471 +:10C3A0008001FA408001F8F08001FA5057455F495A +:10C3B0004E445F38303231315F434F4E4E45435427 +:10C3C0004544000057455F494E445F3830323131B3 +:10C3D0005F444953434F4E4E454354494E47000036 +:10C3E00057455F494E445F38303231315F494253DF +:10C3F000535F444953434F4E4E4543544544000018 +:10C40000332E312E322E312E34000000352E3233B1 +:10C4100000000000352E32322E320000352E32322E +:10C420002E310000352E322E39000000352E3138E5 +:10C430002E310000352E31382E320000352E3232AA +:10C440002E340000352E32342E320000352E323498 +:10C450002E310000352E31312E310000352E322E96 +:10C4600032000000352E31362E320000352E3136A6 +:10C470002E310000312E312E312E323200000000DC +:10C48000352E322E31392E3500000000352E322E59 +:10C4900031392E3400000000352E322E31392E3342 +:10C4A00000000000352E322E31392E3200000000FF +:10C4B000352E322E31392E3100000000352E322E2D +:10C4C00031000000352E31312E320000352E313151 +:10C4D0002E330000352E31312E340000352E31310F +:10C4E0002E350000352E31312E360000352E3131FB +:10C4F0002E380000352E31312E37000073736964F9 +:10C500000000000070736B004A756E6B41500000B4 +:10C5100057534300656170005746412D53696D7054 +:10C520006C65436F6E6669672D456E726F6C6C65E6 +:10C53000652D312D300000006964656E7469747971 +:10C54000000000006E7277696669000064656661CC +:10C55000756C740057455F494E445F383032313155 +:10C560005F444953434F4E4E4543544544000000F9 +:10C5700057455F494E445F50414952574953455FC3 +:10C580004D49435F4552524F5200000057455F49A5 +:10C590004E445F47524F55505F4D49435F4552529D +:10C5A0004F52000057455F494E445F43414E444956 +:10C5B000444154455F4C495354000000494E4143A7 +:10C5C0005449564500000000444953434F4E4E45E0 +:10C5D00043544544000000005343414E4E494E47EA +:10C5E000000000004153534F43494154494E470016 +:10C5F0004153534F43494154454400003457415936 +:10C600005F48414E445348414B45000047524F5507 +:10C61000505F48414E445348414B4500434F4D50B5 +:10C620004C45544544000000554E4B4E4F574E006C +:10C630004354524C2D4556454E542D5445524D4968 +:10C640004E4154494E47202D207369676E616C201E +:10C650002564207265636569766564007769726533 +:10C660006400000043616E63656C6C696E672061F5 +:10C67000757468656E7469636174696F6E2074693E +:10C680006D656F75740000005750413A2045415068 +:10C690004F4C2070726F63657373696E6720636FB0 +:10C6A0006D706C657465000043616E63656C6C69E8 +:10C6B0006E67207363616E207265717565737400B7 +:10C6C00052534E3A207573696E672049454545209F +:10C6D0003830322E3131692F44392E3000000000BD +:10C6E0005750413A207573696E672049454545208A +:10C6F0003830322E3131692F44332E3000000000A3 +:10C700005750413A204661696C656420746F20700F +:10C7100061727365205750412049452066726F6DE4 +:10C72000206173736F63696174696F6E20696E66EF +:10C730006F0000005750413A2044726976657220BC +:10C74000757365642064697361626C6564206772E7 +:10C750006F75702063697068657220307825782065 +:10C76000286D61736B203078257829202D20726523 +:10C770006A656374000000005750413A20447269B2 +:10C7800076657220757365642064697361626C6597 +:10C790006420706169727769736520636970686588 +:10C7A00072203078257820286D61736B20307825D1 +:10C7B0007829202D2072656A656374005750413ACC +:10C7C00020447269766572207573656420646973AC +:10C7D00061626C6564206B6579206D616E6167656F +:10C7E0006D656E74203078257820286D61736B201C +:10C7F0003078257829202D2072656A6563740000E1 +:10C800005750413A207573696E672047544B204357 +:10C81000434D50005750413A207573696E67204769 +:10C82000544B20544B4950005750413A207573697E +:10C830006E672047544B205745503130340000007C +:10C840005750413A207573696E672047544B205703 +:10C8500045503430000000005750413A207573694C +:10C860006E672050544B2043434D50005750413A7F +:10C87000207573696E672050544B20544B4950000B +:10C880005750413A207573696E672050544B204EC3 +:10C890004F4E45005750413A207573696E67204BE3 +:10C8A00045595F4D474D54203830322E31580000E5 +:10C8B0005750413A207573696E67204B45595F4D5B +:10C8C000474D54205750412D50534B005750413A3B +:10C8D000207573696E67204B45595F4D474D542055 +:10C8E0005750412D4E4F4E45000000005750413AE1 +:10C8F000204661696C656420746F2073656C6563A4 +:10C9000074205750412F52534E0000004661696C0D +:10C91000656420746F20706172736520746865208F +:10C92000636F6E66696775726174696F6E206669A0 +:10C930006C652027257327202D2065786974696E22 +:10C94000670000005265636F6E6669677572617497 +:10C95000696F6E20636F6D706C65746564000000B4 +:10C9600053657474696E672061757468656E746967 +:10C97000636174696F6E2074696D656F75743A20B8 +:10C98000256420736563202564207573656300004A +:10C9900053657474696E67207363616E207265718C +:10C9A000756573743A2025642073656320256420BF +:10C9B000757365630000000041757468656E746985 +:10C9C000636174696F6E20776974682025303278EE +:10C9D0003A253032783A253032783A253032783A72 +:10C9E000253032783A253032782074696D656420BC +:10C9F0006F75742E00000000547279696E672074A0 +:10CA00006F206173736F63696174652077697468FF +:10CA100020253032783A253032783A253032783A4B +:10CA2000253032783A253032783A2530327820284D +:10CA3000535349443D2725732720667265713D2570 +:10CA400064204D487A290000547279696E67207419 +:10CA50006F206173736F63696174652077697468AF +:10CA60002053534944202725732700004173736FD7 +:10CA700063696174696F6E20726571756573742086 +:10CA8000746F2074686520647269766572206661CF +:10CA9000696C6564000000007770615F7375707089 +:10CAA0006C6963616E742076302E352E31300A4306 +:10CAB0006F7079726967687420286329203230307A +:10CAC000332D323030382C204A6F756E69204D611D +:10CAD0006C696E656E203C6A4077312E66693E2037 +:10CAE000616E6420636F6E7472696275746F7273C5 +:10CAF00000000000546869732070726F6772616D86 +:10CB0000206973206672656520736F667477617241 +:10CB1000652E20596F752063616E2064697374728D +:10CB2000696275746520697420616E642F6F72206C +:10CB30006D6F646966792069740A756E6465722028 +:10CB4000746865207465726D73206F662074686503 +:10CB500020474E552047656E6572616C20507562A6 +:10CB60006C6963204C6963656E73652076657273CA +:10CB7000696F6E20322E0A0A416C7465726E6174A0 +:10CB80006976656C792C207468697320736F66749C +:10CB900077617265206D61792062652064697374C4 +:10CBA0007269627574656420756E6465722074685C +:10CBB00065207465726D73206F66207468650A4223 +:10CBC0005344206C6963656E73652E205365652040 +:10CBD000524541444D4520616E6420434F505949B0 +:10CBE0004E4720666F72206D6F72652064657461B8 +:10CBF000696C732E0A0000002530325800000000D6 +:10CC00008003C4FC80024A908002490000000010AA +:10CC100000000014000000000000002000000000E0 +:10CC20008003D3EC80024DF0800248880000006051 +:10CC300000000000000000000000000100000000F3 +:10CC40008003D3F880024DCC800248280000000009 +:10CC500000000000000000000000000000000000D4 +:10CC60008003C50480024D00800248C4000000001B +:10CC700000000000000000000000000000000001B3 +:10CC80008003D4008002408C800247A8000000008E +:10CC90000000000000000000000000000000000094 +:10CCA0008003D40880023F448002467C00000000DC +:10CCB0000000000000000000000000000000000074 +:10CCC0008003D41480023F188002466C00000000EC +:10CCD0000000000000000000000000000000000054 +:10CCE0008003D42080023EEC8002465C00000000FD +:10CCF0000000000000000000000000000000000034 +:10CD00008003D42880023CA4800244740000000008 +:10CD10000000000000000000000000000000000013 +:10CD20008003C51480024B9080024B00000000007D +:10CD300000000000000000000000000000000000F3 +:10CD40008003C53880024A908002490000000068D4 +:10CD50000000006C00000000000000000000000067 +:10CD60008003D43480024A908002490000000070A1 +:10CD7000000000740000000000000000000000003F +:10CD80008003D44880024A90800249000000007865 +:10CD90000000007C000000100000002000000001E6 +:10CDA0008003D45080024A90800249000000008035 +:10CDB00000000084000000000000000000000000EF +:10CDC0008003D45480024A90800249000000008809 +:10CDD0000000008C000000000000000000000001C6 +:10CDE0008003D46080024A908002490000000090D5 +:10CDF0000000000000000000000000000000000033 +:10CE00008003D46880024A908002490000000094A8 +:10CE10000000000000000000000000000000000012 +:10CE20008003D47080024A9080024900000000987C +:10CE300000000000000000000000000000000000F2 +:10CE40008003D47C80024A90800249000000009C4C +:10CE500000000000000000000000000000000000D2 +:10CE60008003D48880024A9080024900000000A01C +:10CE700000000000000000000000000000000001B1 +:10CE80008003D49C80024A9080024900000000A4E4 +:10CE90000000000000000000000000000000000092 +:10CEA0008003D4A480024A9080024900000000A8B8 +:10CEB0000000000000000000000000000000000072 +:10CEC0008003D4B480024A9080024900000000AC84 +:10CED0000000000000000000000000000000000052 +:10CEE0008003D4C880024A9080024900000000B04C +:10CEF0000000000000000000000000000000000032 +:10CF00008003D4D480024A9080024900000000B41B +:10CF10000000000000000000000000000000000011 +:10CF20008003D4E080024A9080024900000000B8EB +:10CF300000000000000000000000000000000000F1 +:10CF40008003D4F080024A9080024900000000BCB7 +:10CF500000000000000000000000000000000000D1 +:10CF60008003D50080024A9080024900000000C082 +:10CF700000000000000000000000000000000001B0 +:10CF80008003D51480024A9080024900000000C44A +:10CF90000000000000000000000000000000000091 +:10CFA0008003D52080024A9080024900000000C81A +:10CFB0000000000000000000000000000000000071 +:10CFC0008003D53080024A9080024900000000CCE6 +:10CFD0000000000000000000000000000000000051 +:10CFE0008003D54480024A9080024900000000D4AA +:10CFF0000000000000000000000000000000000031 +:10D000008003D54C80024A9080024900000000D87D +:10D010000000000000000000000000000000000010 +:10D020008003D55480024A9080024900000000DC51 +:10D0300000000000000000000000000000000000F0 +:10D040008003D55C80024A9080024900000000E025 +:10D0500000000000000000000000000000000001CF +:10D060008003D56080024A9080024900000000E8F9 +:10D0700000000000000000000000000000000000B0 +:10D080008003D56C80024A9080024900000000ECC9 +:10D090000000000000000000000000000000000090 +:10D0A0008003D65C80024DF080024888000000E4D6 +:10D0B0000000000000000000000000000000000070 +:10D0C0008003D57480024DF080024888000000F093 +:10D0D0000000000000000000000000000000000050 +:10D0E0008003D58080024A78800244580000000006 +:10D0F000000000000000000000000000000000012F +:10D100008003D58C80024A608002443C000000000D +:10D11000000000000000000000000000000000010E +:10D120008003D59880024A48800244200000000015 +:10D1300000000000000000000000000000000001EE +:10D140008003D5A480024A3080024404000000001D +:10D1500000000000000000000000000000000001CE +:10D160008003D5B080024DF0800248880000014461 +:10D1700000000000000000000000000000000000AF +:10D180008003D5C080024DF0800248880000000C6A +:10D19000000000000000000000000000000000008F +:10D1A0008003D5CC80024DF0800248880000017CCD +:10D1B000000000000000000000000000000000006F +:10D1C0008003D5DC80024A90800249000000018083 +:10D1D000000000000000000000000000000000004F +:10D1E0008003D5E880024DF0800248880000019C51 +:10D1F000000000000000000000000000000000002F +:10D200008003D5F880024DF0800248880000018438 +:10D21000000000000000000000000001000000000D +:10D220008003D60080024DF0800248880000006430 +:10D2300000000000000000000000000200000000EC +:10D240008003D60880024DF0800248880000014823 +:10D2500000000000000000000000000100000000CD +:10D260008003D62080024DF080024888000001949F +:10D2700000000000000000000000000100000000AD +:10D280008003D62C80024A9080024900000001A051 +:10D29000000000000000000000000000000000008E +:10D2A0008003D63480024DF0800248880000019847 +:10D2B000000000000000000000000001000000006D +:10D2C0008003D63C80024DF0800248880000014C6B +:10D2D000000000000000000000000001000000004D +:10D2E0008003D64880024DF080024888000001A4E7 +:10D2F00000000000000000000000271000000000F7 +:10D300002A0000004F50454E000000005348415293 +:10D31000454400004C454150000000005745503145 +:10D320003034000057455034300000005750412D34 +:10D3300045415000494545453830323158000000DC +:10D340005750410052534E005750413200000000E8 +:10D3500025734F50454E00002573534841524544B4 +:10D360000000000025734C454150000025734343E5 +:10D370004D5000002573544B49500000257357450C +:10D3800050313034000000002573574550343000D0 +:10D3900025734E4F4E45000025735750412D505375 +:10D3A0004B00000025735750412D454150000000AF +:10D3B000257349454545383032315800257357505B +:10D3C000412D4E4F4E45000025735750410000003F +:10D3D000257352534E0000007765705F6B657925A9 +:10D3E0006400000025732573000000007363616E04 +:10D3F0005F73736964000000627373696400000006 +:10D4000070726F746F0000006B65795F6D676D748B +:10D4100000000000706169727769736500000000A8 +:10D4200067726F7570000000617574685F616C678A +:10D4300000000000616E6F6E796D6F75735F6964D7 +:10D44000656E74697479000065617070736B0000BB +:10D450006E61690070617373776F72640000000021 +:10D4600063615F636572740063615F70617468001B +:10D47000636C69656E745F6365727400707269765F +:10D480006174655F6B657900707269766174655F60 +:10D490006B65795F706173737764000064685F66C1 +:10D4A000696C65007375626A6563745F6D6174634E +:10D4B00068000000616C747375626A6563745F6D07 +:10D4C000617463680000000063615F6365727432B9 +:10D4D0000000000063615F7061746832000000004A +:10D4E000636C69656E745F6365727432000000007E +:10D4F000707269766174655F6B6579320000000057 +:10D50000707269766174655F6B6579325F706173A3 +:10D510007377640064685F66696C653200000000C0 +:10D520007375626A6563745F6D617463683200006D +:10D53000616C747375626A6563745F6D617463684E +:10D5400032000000706861736531000070686173BB +:10D5500065320000706373630000000070696E0044 +:10D56000656E67696E655F69640000006B65795F71 +:10D57000696400006561706F6C5F666C6167730061 +:10D580007765705F6B657930000000007765705FCC +:10D590006B657931000000007765705F6B657932EB +:10D5A000000000007765705F6B6579330000000054 +:10D5B0007765705F74785F6B6579696478000000E7 +:10D5C0007072696F72697479000000006561705F44 +:10D5D000776F726B61726F756E6400007061635F6C +:10D5E00066696C6500000000667261676D656E7447 +:10D5F0005F73697A650000006D6F6465000000006C +:10D600007573655F7770730070726F6163746976AC +:10D61000655F6B65795F63616368696E67000000D1 +:10D6200064697361626C65640000000069645F7323 +:10D6300074720000706565726B6579006D6978655C +:10D64000645F63656C6C00006672657175656E631E +:10D6500079000000888E000077696669656E6769E9 +:10D660006E65000057694669456E67696E65000022 +:10D670008003D6588003D664800254C880025420A8 +:10D6800080024F98800252E0800253E8800254A446 +:10D690000000000080024F9A800252C880024F941E +:10D6A00080024F96800252B08002529880024F9CB6 +:10D6B00080024F9E8002523C800251E0800251D491 +:10D6C000800251AC00000000000000008002518088 +:10D6D00080024FF480024FD00000000000000000E4 +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000080024FA08002564E93 +:10D700008002564A80025646800256408002563CAD +:10D7100080025636800256328002562C80025626EF +:10D72000800256928002568C800256888002568271 +:10D730008002567C80025676800256728002566CB9 +:10D740008002566680025B3480025C0880025BE0E7 +:10D7500080025BBA80025BA080025B3480025B3493 +:10D7600080025B3480025DC280025E3A80025E12FB +:10D7700080025D8E80025CC280025AF680025DF4F7 +:10D7800080025DCE800268DC80026AA280026A00AC +:10D7900080026904800268F2800269EE800268DC1F +:10D7A000800268DC800268E8800268E8800268E83D +:10D7B000696E76616C696461746500004354524C13 +:10D7C0002D4556454E542D4541502D535543434507 +:10D7D0005353204541502061757468656E746963C8 +:10D7E0006174696F6E20636F6D706C657465642021 +:10D7F0007375636365737366756C6C7920286261F9 +:10D80000736564206F6E206C6F776572206C617930 +:10D810006572207375636365737329004354524CBA +:10D820002D4556454E542D4541502D5355434345A6 +:10D830005353204541502061757468656E74696367 +:10D840006174696F6E20636F6D706C6574656420C0 +:10D850007375636365737366756C6C7900000000A3 +:10D860004354524C2D4556454E542D4541502D465E +:10D8700041494C55524520454150206175746865B9 +:10D880006E7469636174696F6E206661696C65644A +:10D8900000000000494E495449414C495A45000096 +:10D8A0004541503A206D6F7265207468616E202585 +:10D8B000642061757468656E7469636174696F6E04 +:10D8C00020726F756E6473202D2061626F72740018 +:10D8D0004354524C2D4556454E542D4541502D4EE6 +:10D8E0004F54494649434154494F4E2000000000DF +:10D8F0004354524C2D4556454E542D4541502D53C1 +:10D900005441525445442045415020617574686526 +:10D910006E7469636174696F6E207374617274658B +:10D92000640000004745545F4D4554484F44000093 +:10D930004541503A204661696C656420746F2069E6 +:10D940006E697469616C697A6520454150206D6526 +:10D9500074686F643A2076656E646F722025752056 +:10D960006D6574686F642025752028257329000073 +:10D970004354524C2D4556454E542D4541502D4D46 +:10D980004554484F44204541502076656E646F727F +:10D99000202575206D6574686F6420257520282505 +:10D9A00073292073656C656374656400454150207C +:10D9B0006465696E697400008002794480027ADAD5 +:10D9C00080027B5880027BA280027CC880027CD2CD +:10D9D00080027AC45750413A20544B495020636F1B +:10D9E000756E7465726D656173757265732073749D +:10D9F0006F707065640000004173736F63696174D8 +:10DA0000656420746F2061206E6577204253533A1D +:10DA10002042535349443D253032783A25303278FC +:10DA20003A253032783A253032783A253032783A11 +:10DA300025303278000000004173736F63696174B0 +:10DA40006564207769746820253032783A25303251 +:10DA5000783A253032783A253032783A25303278A3 +:10DA60003A253032780000005750413A20342D5783 +:10DA700061792048616E647368616B6520666169D5 +:10DA80006C6564202D207072652D73686172656409 +:10DA9000206B6579206D617920626520696E636F06 +:10DAA00072726563740000004354524C2D45564514 +:10DAB0004E542D444953434F4E4E45435445442004 +:10DAC0002D20446973636F6E6E656374206576659F +:10DAD0006E74202D2072656D6F7665206B6579738D +:10DAE000000000004D69636861656C204D4943206A +:10DAF0006661696C757265206465746563746564DC +:10DB000000000000544B495020636F756E746572BD +:10DB10006D65617375726573207374617274656489 +:10DB200000000000000000080000000600000006E1 +:10DB3000496E646578202F204141202F20504D4BA5 +:10DB40004944202F2065787069726174696F6E2076 +:10DB500028696E207365636F6E647329202F206FB0 +:10DB600070706F7274756E69737469630A00000077 +:10DB7000256420253032783A253032783A25303203 +:10DB8000783A253032783A253032783A2530327872 +:10DB9000200000002025642025640A00504D4B2001 +:10DBA0004E616D650000000052534E3A207374615F +:10DBB0007274696E67207072652D61757468656E28 +:10DBC0007469636174696F6E2077697468202530A9 +:10DBD00032783A253032783A253032783A25303268 +:10DBE000783A253032783A253032780052534E3A1E +:10DBF0002070726F63657373696E6720504D4B536D +:10DC0000412063616E646964617465206C6973743A +:10DC10000000000052534E3A206E6F7420696E204F +:10DC20007375697461626C652073746174652066D4 +:10DC30006F72206E6577207072652D6175746865EE +:10DC40006E7469636174696F6E00000052534E3ADE +:10DC500020504D4B53412063616E6469646174656B +:10DC600020253032783A253032783A253032783AE9 +:10DC7000253032783A253032783A253032782073A0 +:10DC8000656C656374656420666F72207072652DC3 +:10DC900061757468656E7469636174696F6E0000A4 +:10DCA00052534E3A20504D4B53412063616E64698C +:10DCB0006461746520253032783A253032783A250F +:10DCC0003032783A253032783A253032783A253079 +:10DCD000327820646F6573206E6F74206E656564A2 +:10DCE000207072652D61757468656E746963617406 +:10DCF000696F6E20616E796D6F72650052534E3A96 +:10DD0000206E6F206D6F72652070656E64696E673E +:10DD100020504D4B53412063616E646964617465AA +:10DD20007300000052534E3A2061646465642050D1 +:10DD30004D4B53412063616368652063616E646984 +:10DD40006461746520253032783A253032783A257E +:10DD50003032783A253032783A253032783A2530E8 +:10DD60003278207072696F202564000052534E3A59 +:10DD7000207072652D61757468656E746963617475 +:10DD8000696F6E207769746820253032783A2530C3 +:10DD900032783A253032783A253032783A253032A6 +:10DDA000783A253032782074696D6564206F757417 +:10DDB00000000000636F6D706C657465642073759E +:10DDC000636365737366756C6C79000052534E3AE9 +:10DDD000206661696C656420746F20676574206DCE +:10DDE00061737465722073657373696F6E206B6500 +:10DDF000792066726F6D207072652D617574682070 +:10DE00004541504F4C207374617465206D616368A7 +:10DE1000696E65730000000052534E3A20707265BF +:10DE20002D61757468656E7469636174696F6E20C5 +:10DE30007769746820253032783A253032783A256F +:10DE40003032783A253032783A253032783A2530F7 +:10DE50003278202573000000800000008002B51C8D +:10DE60008002B50A8002B5008002B4FA8002B4F4E0 +:10DE70008002B4EE8002B4E8000FAC010050F20260 +:10DE8000000FAC02000FAC01000FAC050050F20215 +:10DE9000000FAC040050F2010050F2010050F201FA +:10DEA0000050F2050050F200000FAC00000FAC0370 +:10DEB0000050F200000FAC0449454545203830328F +:10DEC0002E315820286E6F20575041290000000045 +:10DED0005750412F49454545203830322E31582F73 +:10DEE00045415000575041322F4945454520383073 +:10DEF000322E31582F45415000000000575041321A +:10DF00002D50534B000000005745502D3430000079 +:10DF10005745502D313034007061697277697365EF +:10DF20005F6369706865723D25730A67726F75700B +:10DF30005F6369706865723D25730A6B65795F6D13 +:10DF4000676D743D25730A005750413A20257320B0 +:10DF5000287372633D253032783A253032783A257D +:10DF60003032783A253032783A253032783A2530D6 +:10DF7000327829005750413A204B6579206E656709 +:10DF80006F74696174696F6E20636F6D706C657416 +:10DF90006564207769746820253032783A253032FC +:10DFA000783A253032783A253032783A253032784E +:10DFB0003A25303278205B50544B3D25732047542E +:10DFC0004B3D25735D0000005750413A20496E7665 +:10DFD000616C6964204541504F4C2D4B657920663A +:10DFE00072616D65202D206B65795F6461746120BD +:10DFF0006F766572666C6F7720282564203E202539 +:10E000006C752900494520696E20332F34206D73CB +:10E010006720646F6573206E6F74206D6174636830 +:10E02000207769746820494520696E2042656163E4 +:10E030006F6E2F50726F62655265737020286E6F1D +:10E040002049453F29000000494520696E20332FB3 +:10E0500034206D736720646F6573206E6F74206D5C +:10E0600061746368207769746820494520696E206F +:10E07000426561636F6E2F50726F62655265737097 +:10E0800000000000506F737369626C6520646F77E5 +:10E090006E67726164652061747461636B2064658E +:10E0A000746563746564202D2052534E207761732C +:10E0B00020656E61626C656420616E642052534E0F +:10E0C0002049452077617320696E206D7367203386 +:10E0D0002F342C20627574206E6F7420696E20427C +:10E0E0006561636F6E2F50726F6265526573700069 +:10E0F0005750413A204661696C656420746F20670F +:10E100006574206D61737465722073657373696FD4 +:10E110006E206B65792066726F6D204541504F4CC3 +:10E12000207374617465206D616368696E65730046 +:10E130005750413A204B65792068616E647368617D +:10E140006B652061626F7274656400005750413ADC +:10E15000204661696C656420746F20676574207265 +:10E16000616E646F6D206461746120666F7220530C +:10E170004E6F6E6365000000506169727769736568 +:10E18000206B657920657870616E73696F6E000031 +:10E190005750413A2047726F75702072656B6579F0 +:10E1A000696E6720636F6D706C6574656420776954 +:10E1B000746820253032783A253032783A2530326A +:10E1C000783A253032783A253032783A253032782C +:10E1D000205B47544B3D25735D00000000000000AC +:10E1E000000000000050F204000FAC02000FAC0170 +:10E1F00052096AD53036A538BF40A39E81F3D7FBBC +:10E200007CE339829B2FFF87348E4344C4DEE9CB05 +:10E21000547B9432A6C2233DEE4C950B42FAC34E7A +:10E22000082EA16628D924B2765BA2496D8BD12530 +:10E2300072F8F66486689816D4A45CCC5D65B692D4 +:10E240006C704850FDEDB9DA5E154657A78D9D8478 +:10E2500090D8AB008CBCD30AF7E45805B8B3450698 +:10E26000D02C1E8FCA3F0F02C1AFBD0301138A6BB2 +:10E270003A9111414F67DCEA97F2CFCEF0B4E673E2 +:10E2800096AC7422E7AD3585E2F937E81C75DF6E90 +:10E2900047F11A711D29C5896FB7620EAA18BE1BF6 +:10E2A000FC563E4BC6D279209ADBC0FE78CD5AF49C +:10E2B0001FDDA8338807C731B11210592780EC5FE2 +:10E2C00060517FA919B54A0D2DE57A9F93C99CEF3E +:10E2D000A0E03B4DAE2AF5B0C8EBBB3C835399613F +:10E2E000172B047EBA77D626E169146355210C7D7D +:10E2F00001020408102040801B36000051F4A75092 +:10E300007E4165531A17A4C33A275E963BAB6BCB8D +:10E310001F9D45F1ACFA58AB4BE303932030FA55FF +:10E32000AD766DF688CC7691F5024C254FE5D7FC9D +:10E33000C52ACBD726354480B562A38FDEB15A49B2 +:10E3400025BA1B6745EA0E985DFEC0E1C32F750232 +:10E35000814CF0128D4697A36BD3F9C6038F5FE70C +:10E3600015929C95BF6D7AEB955259DAD4BE832DE8 +:10E37000587421D349E069298EC9C84475C2896A95 +:10E38000F48E797899583E6B27B971DDBEE14FB6AE +:10E39000F088AD17C920AC667DCE3AB463DF4A1869 +:10E3A000E51A31829751336062537F45B16477E05B +:10E3B000BB6BAE84FE81A01CF9082B947048685892 +:10E3C0008F45FD1994DE6C87527BF8B7AB73D3236E +:10E3D000724B02E2E31F8F576655AB2AB2EB280758 +:10E3E0002FB5C20386C57B9AD33708A5302887F29C +:10E3F00023BFA5B202036ABAED16825C8ACF1C2B3A +:10E40000A779B492F307F2F04E69E2A165DAF4CD90 +:10E410000605BED5D134621FC4A6FE8A342E539D94 +:10E42000A2F355A0058AE132A4F6EB750B83EC3913 +:10E430004060EFAA5E719F06BD6E10513E218AF9C1 +:10E4400096DD063DDD3E05AE4DE6BD4691548DB5EB +:10E4500071C45D050406D46F605015FF1998FB2444 +:10E46000D6BDE997894043CC67D99E77B0E842BDD5 +:10E4700007898B88E7195B3879C8EEDBA17C0A47EE +:10E480007C420FE9F8841EC90000000009808683E1 +:10E49000322BED481E1170AC6C5A724EFD0EFFFB14 +:10E4A0000F8538563DAED51E362D39270A0FD96453 +:10E4B000685CA6219B5B54D124362E3A0C0A67B1C6 +:10E4C0009357E70FB4EE96D21B9B919E80C0C54F29 +:10E4D00061DC20A25A774B691C121A16E293BA0A21 +:10E4E000C0A02AE53C22E043121B171D0E090D0BAC +:10E4F000F28BC7AD2DB6A8B9141EA9C857F119855E +:10E50000AF75074CEE99DDBBA37F60FDF701269F39 +:10E510005C72F5BC44663BC55BFB7E348B4329765D +:10E52000CB23C6DCB6EDFC68B8E4F163D731DCCAB6 +:10E53000426385101397224084C61120854A247DAA +:10E54000D2BB3DF8AEF93211C729A16D1D9E2F4BEC +:10E55000DCB230F30D8652EC77C1E3D02BB3166CEE +:10E56000A970B999119448FA47E96422A8FC8CC4AF +:10E57000A0F03F1A567D2CD8223390EF87494EC722 +:10E58000D938D1C18CCAA2FE98D40B36A6F581CF5A +:10E59000A57ADE28DAB78E263FADBFA42C3A9DE4DB +:10E5A0005078920D6A5FCC9B547E4662F68D13C202 +:10E5B00090D8B8E82E39F75E82C3AFF59F5D80BE74 +:10E5C00069D0937C6FD52DA9CF2512B3C8AC993BE8 +:10E5D00010187DA7E89C636EDB3BBB7BCD267809DA +:10E5E0006E5918F4EC9AB701834F9AA8E6956E65B8 +:10E5F000AAFFE67E21BCCF08EF15E8E6BAE79BD973 +:10E600004A6F36CEEA9F09D429B07CD631A4B2AF86 +:10E610002A3F2331C6A5943035A266C0744EBC375C +:10E62000FC82CAA6E090D0B033A7D815F104984A6E +:10E6300041ECDAF77FCD500E1791F62F764DD68D3F +:10E6400043EFB04DCCAA4D54E49604DF9ED1B5E320 +:10E650004C6A881BC12C1FB84665517F9D5EEA0439 +:10E66000018C355DFA877473FB0B412EB3671D5A1D +:10E6700092DBD252E91056336DD647139AD7618C8C +:10E6800037A10C7A59F8148EEB133C89CEA927EEEA +:10E69000B761C935E11CE5ED7A47B13C9CD2DF5941 +:10E6A00055F2733F1814CE7973C737BF53F7CDEACD +:10E6B0005FFDAA5BDF3D6F147844DB86CAAFF38150 +:10E6C000B968C43E3824342CC2A3405F161DC372FF +:10E6D000BCE2250C283C498BFF0D954139A80171FE +:10E6E000080CB3DED8B4E49C6456C1907BCB846143 +:10E6F000D532B670486C5C74D0B85742C66363A517 +:10E70000F87C7C84EE777799F67B7B8DFFF2F20DB7 +:10E71000D66B6BBDDE6F6FB191C5C55460303050A4 +:10E7200002010103CE6767A9562B2B7DE7FEFE1978 +:10E73000B5D7D7624DABABE6EC76769A8FCACA45B1 +:10E740001F82829D89C9C940FA7D7D87EFFAFA153B +:10E75000B25959EB8E4747C9FBF0F00B41ADADEC18 +:10E76000B3D4D4675FA2A2FD45AFAFEA239C9CBFA0 +:10E7700053A4A4F7E47272969BC0C05B75B7B7C28E +:10E78000E1FDFD1C3D9393AE4C26266A6C36365A4D +:10E790007E3F3F41F5F7F70283CCCC4F6834345CC1 +:10E7A00051A5A5F4D1E5E534F9F1F108E2717193D1 +:10E7B000ABD8D873623131532A15153F0804040CC5 +:10E7C00095C7C752462323659DC3C35E30181828DA +:10E7D000379696A10A05050F2F9A9AB50E070709D5 +:10E7E000241212361B80809BDFE2E23DCDEBEB264C +:10E7F0004E2727697FB2B2CDEA75759F1209091BB2 +:10E800001D83839E582C2C74341A1A2E361B1B2DF4 +:10E81000DC6E6EB2B45A5AEE5BA0A0FBA45252F664 +:10E82000763B3B4DB7D6D6617DB3B3CE5229297B1B +:10E83000DDE3E33E5E2F2F7113848497A65353F5D7 +:10E84000B9D1D16800000000C1EDED2C402020605E +:10E85000E3FCFC1F79B1B1C8B65B5BEDD46A6ABE5C +:10E860008DCBCB4667BEBED97239394B944A4ADE4E +:10E87000984C4CD4B05858E885CFCF4ABBD0D06B19 +:10E88000C5EFEF2A4FAAAAE5EDFBFB16864343C569 +:10E890009A4D4DD766333355118585948A4545CFBA +:10E8A000E9F9F91004020206FE7F7F81A05050F0C2 +:10E8B000783C3C44259F9FBA4BA8A8E3A25151F352 +:10E8C0005DA3A3FE804040C0058F8F8A3F9292AD2A +:10E8D000219D9DBC70383848F1F5F50463BCBCDF60 +:10E8E00077B6B6C1AFDADA75422121632010103055 +:10E8F000E5FFFF1AFDF3F30EBFD2D26D81CDCD4CF3 +:10E90000180C0C1426131335C3ECEC2FBE5F5FE11B +:10E91000359797A2884444CC2E17173993C4C4570F +:10E9200055A7A7F2FC7E7E827A3D3D47C86464AC61 +:10E93000BA5D5DE73219192BE6737395C06060A06C +:10E94000198181989E4F4FD1A3DCDC7F442222663F +:10E95000542A2A7E3B9090AB0B8888838C4646CA0B +:10E96000C7EEEE296BB8B8D32814143CA7DEDE79C5 +:10E97000BC5E5EE2160B0B1DADDBDB76DBE0E03B45 +:10E9800064323256743A3A4E140A0A1E924949DBEE +:10E990000C06060A4824246CB85C5CE49FC2C25D85 +:10E9A000BDD3D36E43ACACEFC46262A6399191A8DB +:10E9B000319595A4D3E4E437F279798BD5E7E73242 +:10E9C0008BC8C8436E373759DA6D6DB7018D8D8CA2 +:10E9D000B1D5D5649C4E4ED249A9A9E0D86C6CB48F +:10E9E000AC5656FAF3F4F407CFEAEA25CA6565AFE8 +:10E9F000F47A7A8E47AEAEE9100808186FBABAD525 +:10EA0000F07878884A25256F5C2E2E72381C1C24DD +:10EA100057A6A6F173B4B4C797C6C651CBE8E8238E +:10EA2000A1DDDD7CE874749C3E1F1F21964B4BDDFD +:10EA300061BDBDDC0D8B8B860F8A8A85E07070907E +:10EA40007C3E3E4271B5B5C4CC6666AA904848D8B3 +:10EA500006030305F7F6F6011C0E0E12C26161A350 +:10EA60006A35355FAE5757F969B9B9D017868691BF +:10EA700099C1C1583A1D1D27279E9EB9D9E1E13899 +:10EA8000EBF8F8132B9898B322111133D26969BBB4 +:10EA9000A9D9D970078E8E89339494A72D9B9BB6E4 +:10EAA0003C1E1E2215878792C9E9E92087CECE49F0 +:10EAB000AA5555FF50282878A5DFDF7A038C8C8F64 +:10EAC00059A1A1F8098989801A0D0D1765BFBFDA10 +:10EAD000D7E6E631844242C6D06868B8824141C375 +:10EAE000299999B05A2D2D771E0F0F117BB0B0CBFD +:10EAF000A85454FC6DBBBBD62C16163A002020201F +:10EB000020202020202028282828282020202020DD +:10EB100020202020202020202020202020881010AD +:10EB20001010101010101010101010101004040409 +:10EB300004040404040404101010101010104141C7 +:10EB400041414141010101010101010101010101B5 +:10EB500001010101010101011010101010104242C9 +:10EB60004242424202020202020202020202020285 +:10EB70000202020202020202101010102000000025 +:10EB80000000000000000000000000000000000085 +:10EB90000000000000000000000000000000000075 +:10EBA0000000000000000000000000000000000065 +:10EBB0000000000000000000000000000000000055 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE0000000000000000000000000000000000025 +:10EBF0000000000000000000000000000000000015 +:10EC00002D2D0000504F5349584C595F434F5252DD +:10EC10004543540025733A206F7074696F6E20600D +:10EC200025732720697320616D626967756F75733D +:10EC30002028636F756C6420626520602D2D25731C +:10EC400027206F7220602D2D257327290A000000D0 +:10EC500025733A20696E76616C6964206F707469FF +:10EC60006F6E202D2D20602D2563270A00000000E7 +:10EC700025733A20617267756D656E7420726571D7 +:10EC8000756972656420666F72206F7074696F6E4B +:10EC9000206000002D2D2573270A00002D256327F5 +:10ECA0000A00000043000000000004A88002F4668F +:10ECB0008002F4888002F2B08002F2E88002F4520E +:10ECC0008002F4508002F3FE8002F4268002F3DC1E +:10ECD0008002F3DC8002F3CC8002F3DC8002F3EAF2 +:10ECE0008002F3EA8002F3DC3030303030303030F4 +:10ECF000303030303030303001020B040B0506016B +:10ED00000B01020B040B0506010B0B0B03040B0597 +:10ED10000B0B0B0B0B0B040B050B0B0B0B0B0B0B50 +:10ED20000B0B0B0B0B05080B040B0B070B0B0B0949 +:10ED30000B040B050B0B0B0B0A0B040B0B0B0B0B38 +:10ED40000B0B0B040B0B0B0B0B0B0B030B0B0B0B22 +:10ED50000B0B0B0B080B0B0B0B0B0B00000000003D +:10ED6000000000000001000304000000000001009A +:10ED7000030400000000000007030400000000007E +:10ED80000000030400000000000000000400000078 +:10ED90000000020003040000000000010005060559 +:10EDA0000000000001000506000000000000000354 +:10EDB0000400000000000008000000000000000047 +:10EDC000080000000000000000000000000000003B +:10EDD0003031323334353637383941424344454691 +:10EDE0000000000030313233343536373839616253 +:10EDF0006364656600000000202020202020202081 +:10EE000020202020202020200808080808080808C2 +:10EE10000808080808080808080808080808080872 +:10EE2000080808080808080807080807020808076B +:10EE30000808060708070508000101010101010192 +:10EE40000101080808080808080408040404040468 +:10EE50000808080803080804080808040804080843 +:10EE6000040808080808080808040804040404043E +:10EE70000304030803080404040308040304080843 +:10EE8000040803080808080808080808080808080B +:10EE900008080808080808080808080808080808F2 +:10EEA00008080808080808080808080808080808E2 +:10EEB00008080808080808080808080808080808D2 +:10EEC00008080808080808080808080808080808C2 +:10EED00008080808080808080808080808080808B2 +:10EEE00008080808080808080808080808080808A2 +:10EEF0000808080808080808080808080808080892 +:10EF00000808080808080808000A000100020003B1 +:10EF1000000400050006000700080009000A000BB5 +:10EF2000000C000D000E000F00100000000000009B +:10EF300000000000000000000000000000000000D1 +:10EF400000000000000000000000000000000000C1 +:10EF500000000000000000000000000000000000B1 +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000000000000091 +:10EF800000000000000000000000000080037FB4CB +:10EF900080037E2080037E2080037E2080037E20ED +:10EFA00080037E2080037E2080037E2080037E20DD +:10EFB00080037E20FFFFFFFFFFFFFFFF49534F2D20 +:10EFC000383835392D310000800333228003334433 +:10EFD0008003316C800331A48003330E8003330C33 +:10EFE000800332BA800332E2800332988003329881 +:10EFF0008003328880033298800332A6800332A6D1 +:10F00000800332988003363480034AA480034AA4E4 +:10F010008003364480034AA480034AA480034AA4A0 +:10F0200080034AA480034AA480034AA4800336488C +:10F030008003371C80034AA48003371880033724D9 +:10F0400080034AA480033842800338468003384650 +:10F0500080033846800338468003384680033846AC +:10F0600080033846800338468003384680034AA42C +:10F0700080034AA480034AA480034AA480034AA4CC +:10F0800080034AA480034AA480034AA480034AA4BC +:10F0900080034AA48003394480033B9680034AA43A +:10F0A00080033B9680034AA480034AA480034AA4B9 +:10F0B00080034AA48003387880034AA480034AA4CA +:10F0C0008003416280034AA480034AA480034AA4C7 +:10F0D00080034AA480034AA48003452680034AA4EF +:10F0E00080034AA48003361A80034AA480034AA4FA +:10F0F00080034AA480034AA480034AA480034AA44C +:10F1000080034AA480034AA480034AA480034AA43B +:10F11000800338988003395A80033B9680033B96DE +:10F1200080033B968003387C8003395A80034AA4CD +:10F1300080034AA48003388080034AA480033FA24E +:10F1400080034178800343A48003389480034AA459 +:10F150008003445880034AA48003453C80034AA4AA +:10F1600080034AA48003476E01020B040B050601CD +:10F170000B01020B040B0506010B0B0B03040B0523 +:10F180000B0B0B0B0B0B040B050B0B0B0B0B0B0BDC +:10F190000B0B0B0B0B05080B040B0B070B0B0B09D5 +:10F1A0000B040B050B0B0B0B0A0B040B0B0B0B0BC4 +:10F1B0000B0B0B040B0B0B0B0B0B0B030B0B0B0BAE +:10F1C0000B0B0B0B080B0B0B0B0B0B0000000000C9 +:10F1D0000000000000010003040000000000010026 +:10F1E000030400000000000007030400000000000A +:10F1F0000000030400000000000000000400000004 +:10F2000000000200030400000000000100050605E4 +:10F2100000000000010005060000000000000003DF +:10F2200004000000000000080000000000000000D2 +:10F2300008000000000000000000000000000000C6 +:10F24000494E4600696E66004E414E006E616E008A +:10F2500020202020202020202020202020202020AE +:10F26000303030303030303030303030303030309E +:10F27000080808080808080808080808080808080E +:10F2800008080808080808080808080808080808FE +:10F2900007080807020808070808060708070508FE +:10F2A0000001010101010101010108080808080825 +:10F2B00008040804040404040808080803080804EF +:10F2C00008080804080408080408080808080808CA +:10F2D00008040804040404040304030803080404E1 +:10F2E00004030804030408080408030808080808BD +:10F2F000080808080808080808080808080808088E +:10F30000080808080808080808080808080808087D +:10F31000080808080808080808080808080808086D +:10F32000080808080808080808080808080808085D +:10F33000080808080808080808080808080808084D +:10F34000080808080808080808080808080808083D +:10F35000080808080808080808080808080808082D +:10F36000080808080808080808080808080808081D +:10F37000496E66696E697479000000004E614E0046 +:10F3800000000005000000190000007D3FF00000B3 +:10F390000000000040240000000000004059000070 +:10F3A00000000000408F40000000000040C38800C3 +:10F3B0000000000040F86A0000000000412E848038 +:10F3C00000000000416312D0000000004197D78484 +:10F3D0000000000041CDCD65000000004202A05FAA +:10F3E0002000000042374876E8000000426D1A9481 +:10F3F000A200000042A2309CE540000042D6BCC4FE +:10F400001E900000430C6BF5263400004341C37985 +:10F4100037E080004376345785D8A00043ABC16DF8 +:10F42000674EC80043E158E460913D004415AF1DAC +:10F4300078B58C40444B1AE4D6E2EF504480F0CFCC +:10F44000064DD59244B52D02C7E14AF644EA784309 +:10F4500079D99DB44341C37937E080004693B8B56C +:10F46000B5056E174D384F03E93FF9F55A827748D5 +:0CF47000F9301D3275154FDD7F73BF3C75 +:10F480000000000455736167653A2074746370204E +:10F490002D742F2D72205B2D6F7074696F6E735DEC +:10F4A00020686F73740A20202020202020202D6CDB +:10F4B0002020202020206C656E677468206F6620F5 +:10F4C00062756673207772697474656E20746F203C +:10F4D0006E6574776F726B202864656661756C74F5 +:10F4E0002031303234290A20202020202020202DD5 +:10F4F0006E2020202020206E756D626572206F6660 +:10F500002062756673207772697474656E20746FFB +:10F51000206E6574776F726B202864656661756C08 +:10F52000742031303234290A20202020202020204D +:10F530002D70202020202020706F7274206E756D39 +:10F5400062657220746F2073656E6420746F20286A +:10F5500064656661756C742032303030290A202071 +:10F560002020202020202D752020202020207564A0 +:10F57000700A20202020202020202D7620202020EE +:10F580002020766572626F73650A000080039954CB +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F6000000000000000000000000000000000000FA +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F6300000000000000000000000000000000000CA +:10F6400000000000000000000000000000000000BA +:10F6500000000000000000000000000000000000AA +:10F660000000000400000000ABCD00000000196E97 +:10F6700010000000FFFFFFFFFFFFFFFFFF7590007E +:10F68000000001FFFFFFFFFEFFFFFFFFFF751000FF +:10F69000000001FFFFFFFFFE00050000800149ECB4 +:10F6A000800149EC800149EC800149EC0000000038 +:10F6B000000002340000000C02040B0C1216182487 +:10F6C0003048606C000000000000000000000000F6 +:10F6D00000000010010000146D3E86B0FFFFFFFF28 +:10F6E000FFFF0000000003E800000001000000012F +:10F6F00000000320000000010000000000000008DE +:10F70000000000020000006400000000000000058E +:10F710000000000F000000050000000F000013882B +:10F7200000001388000007D00000138800003E800E +:10F73000000000020000000C02040B0C121618243A +:10F740003048606C00000000000000000000000075 +:10F7500000000000000000000D0102030405060780 +:10F7600008090A0B0C0D000000000011FF0000004A +:10F770000000000000000000000000000000000089 +:10F780000000000000000000000000000000FFFF7B +:10F79000FFFFFFFF00000001000000030000000168 +:10F7A0000000000100000000000000010000000156 +:10F7B0000000000100000001000000000000000146 +:10F7C0000000000A00000005000000000000000525 +:10F7D00000000000FFFFFFFF00000001000000002C +:10F7E00000000002FF000000000000000000000018 +:10F7F0000000000000000000000000000000000009 +:10F80000000000000000FFFFFFFFFFFF00000001FD +:10F810000000000300000000000007D000000064AA +:10F8200003010100060200000000000C82848B8CA2 +:10F83000129618243048606C0000000000000000A0 +:10F8400000000000000000000000000100000001B6 +:10F85000000000010014000000000014000007D0A8 +:10F860000000000000000001000000000000000691 +:10F8700000000001FFFFFFFF0A00000064756D6DCE +:10F88000795F7373696400000000000000000000ED +:10F890000000000000000000000000000000000068 +:10F8A000303030313032303330343035303630373C +:10F8B0003038303930613062306330643065306602 +:10F8C0003130313131323133313431353136313714 +:10F8D00031383139316131623163316431653166DA +:10F8E00000000000000000028003D670000000004D +:10F8F000800255EC80025614800256588002569CB5 +:10F90000800256AA800255F4800256B6800256D074 +:10F910008002614C8003EAFD0000003F000000010E +:10F920008003EF2C8003EF4C8003EF6C000000009D +:10F9300000000000000000000000000000000000C7 +:10F940008003ECA4000000000000000000000000A4 +:10F9500000000000000000000000000000000000A7 +:10F960000000000000000000000000000000000097 +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000000000000067 +:10F9A0000000000000000000000000000000000057 +:10F9B0000000000000000000000000000000000047 +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F0000000000000000000000000000000000007 +:10FA000000000000000000000000000000000000F6 +:10FA1000000004A800000000000000000000059C99 +:10FA20000000059C000005A4000005A4000005AC32 +:10FA3000000005AC000005B4000005B4000005BCE2 +:10FA4000000005BC000005C4000005C4000005CC92 +:10FA5000000005CC000005D4000005D4000005DC42 +:10FA6000000005DC000005E4000005E4000005ECF2 +:10FA7000000005EC000005F4000005F4000005FCA2 +:10FA8000000005FC00000604000006040000060C4F +:10FA90000000060C00000614000006140000061CFE +:10FAA0000000061C00000624000006240000062CAE +:10FAB0000000062C00000634000006340000063C5E +:10FAC0000000063C00000644000006440000064C0E +:10FAD0000000064C00000654000006540000065CBE +:10FAE0000000065C00000664000006640000066C6E +:10FAF0000000066C00000674000006740000067C1E +:10FB00000000067C00000684000006840000068CCD +:10FB10000000068C00000694000006940000069C7D +:10FB20000000069C000006A4000006A4000006AC2D +:10FB3000000006AC000006B4000006B4000006BCDD +:10FB4000000006BC000006C4000006C4000006CC8D +:10FB5000000006CC000006D4000006D4000006DC3D +:10FB6000000006DC000006E4000006E4000006ECED +:10FB7000000006EC000006F4000006F4000006FC9D +:10FB8000000006FC00000704000007040000070C4A +:10FB90000000070C00000714000007140000071CF9 +:10FBA0000000071C00000724000007240000072CA9 +:10FBB0000000072C00000734000007340000073C59 +:10FBC0000000073C00000744000007440000074C09 +:10FBD0000000074C00000754000007540000075CB9 +:10FBE0000000075C00000764000007640000076C69 +:10FBF0000000076C00000774000007740000077C19 +:10FC00000000077C00000784000007840000078CC8 +:10FC10000000078C00000794000007940000079C78 +:10FC20000000079C000007A4000007A4000007AC28 +:10FC3000000007AC000007B4000007B4000007BCD8 +:10FC4000000007BC000007C4000007C4000007CC88 +:10FC5000000007CC000007D4000007D4000007DC38 +:10FC6000000007DC000007E4000007E4000007ECE8 +:10FC7000000007EC000007F4000007F4000007FC98 +:10FC8000000007FC00000804000008040000080C45 +:10FC90000000080C00000814000008140000081CF4 +:10FCA0000000081C00000824000008240000082CA4 +:10FCB0000000082C00000834000008340000083C54 +:10FCC0000000083C00000844000008440000084C04 +:10FCD0000000084C00000854000008540000085CB4 +:10FCE0000000085C00000864000008640000086C64 +:10FCF0000000086C00000874000008740000087C14 +:10FD00000000087C00000884000008840000088CC3 +:10FD10000000088C00000894000008940000089C73 +:10FD20000000089C000008A4000008A4000008AC23 +:10FD3000000008AC000008B4000008B4000008BCD3 +:10FD4000000008BC000008C4000008C4000008CC83 +:10FD5000000008CC000008D4000008D4000008DC33 +:10FD6000000008DC000008E4000008E4000008ECE3 +:10FD7000000008EC000008F4000008F4000008FC93 +:10FD8000000008FC00000904000009040000090C40 +:10FD90000000090C00000914000009140000091CEF +:10FDA0000000091C00000924000009240000092C9F +:10FDB0000000092C00000934000009340000093C4F +:10FDC0000000093C00000944000009440000094CFF +:10FDD0000000094C00000954000009540000095CAF +:10FDE0000000095C00000964000009640000096C5F +:10FDF0000000096C00000974000009740000097C0F +:10FE00000000097C00000984000009840000098CBE +:10FE10000000098C00000994000009940002000011 +:0CFE2000FFFFFFFF0000000100007AFC63 +:040000058000000077 +:00000001FF diff --git a/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_access.h b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_access.h new file mode 100644 index 000000000..2d38d5069 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_access.h @@ -0,0 +1,170 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Memory access control configuration file. + * + * This file contains the possible external configuration of the memory access + * control. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_ACCESS_H_ +#define _CONF_ACCESS_H_ + +#include "compiler.h" +#include "board.h" + + +/*! \name Activation of Logical Unit Numbers + */ +//! @{ +#define LUN_0 DISABLE //!< On-Chip Virtual Memory. +#define LUN_1 ENABLE //!< AT45DBX Data Flash. +#define LUN_2 DISABLE //!< SD/MMC Card over SPI. +#define LUN_3 DISABLE +#define LUN_4 DISABLE +#define LUN_5 DISABLE +#define LUN_6 DISABLE +#define LUN_7 DISABLE +#define LUN_USB DISABLE //!< Host Mass-Storage Memory. +//! @} + +/*! \name LUN 0 Definitions + */ +//! @{ +#define VIRTUAL_MEM LUN_0 +#define LUN_ID_VIRTUAL_MEM LUN_ID_0 +#define LUN_0_INCLUDE "virtual_mem.h" +#define Lun_0_test_unit_ready virtual_test_unit_ready +#define Lun_0_read_capacity virtual_read_capacity +#define Lun_0_wr_protect virtual_wr_protect +#define Lun_0_removal virtual_removal +#define Lun_0_usb_read_10 virtual_usb_read_10 +#define Lun_0_usb_write_10 virtual_usb_write_10 +#define Lun_0_mem_2_ram virtual_mem_2_ram +#define Lun_0_ram_2_mem virtual_ram_2_mem +#define LUN_0_NAME "\"On-Chip Virtual Memory\"" +//! @} + +/*! \name LUN 1 Definitions + */ +//! @{ +#define AT45DBX_MEM LUN_1 +#define LUN_ID_AT45DBX_MEM LUN_ID_1 +#define LUN_1_INCLUDE "at45dbx_mem.h" +#define Lun_1_test_unit_ready at45dbx_test_unit_ready +#define Lun_1_read_capacity at45dbx_read_capacity +#define Lun_1_wr_protect at45dbx_wr_protect +#define Lun_1_removal at45dbx_removal +#define Lun_1_usb_read_10 at45dbx_usb_read_10 +#define Lun_1_usb_write_10 at45dbx_usb_write_10 +#define Lun_1_mem_2_ram at45dbx_df_2_ram +#define Lun_1_ram_2_mem at45dbx_ram_2_df +#define LUN_1_NAME "\"AT45DBX Data Flash\"" +//! @} + +/*! \name LUN 2 Definitions + */ +//! @{ +#define SD_MMC_SPI_MEM LUN_2 +#define LUN_ID_SD_MMC_SPI_MEM LUN_ID_2 +#define LUN_2_INCLUDE "sd_mmc_spi_mem.h" +#define Lun_2_test_unit_ready sd_mmc_spi_test_unit_ready +#define Lun_2_read_capacity sd_mmc_spi_read_capacity +#define Lun_2_wr_protect sd_mmc_spi_wr_protect +#define Lun_2_removal sd_mmc_spi_removal +#define Lun_2_usb_read_10 sd_mmc_spi_usb_read_10 +#define Lun_2_usb_write_10 sd_mmc_spi_usb_write_10 +#define Lun_2_mem_2_ram sd_mmc_spi_mem_2_ram +#define Lun_2_ram_2_mem sd_mmc_spi_ram_2_mem +#define LUN_2_NAME "\"SD/MMC Card over SPI\"" +//! @} + +/*! \name USB LUNs Definitions + */ +//! @{ +#define MEM_USB LUN_USB +#define LUN_ID_MEM_USB LUN_ID_USB +#define LUN_USB_INCLUDE "host_mem.h" +#define Lun_usb_test_unit_ready(lun) host_test_unit_ready(lun) +#define Lun_usb_read_capacity(lun, nb_sect) host_read_capacity(lun, nb_sect) +#define Lun_usb_read_sector_size(lun) host_read_sector_size(lun) +#define Lun_usb_wr_protect(lun) host_wr_protect(lun) +#define Lun_usb_removal() host_removal() +#define Lun_usb_mem_2_ram(addr, ram) host_read_10_ram(addr, ram) +#define Lun_usb_ram_2_mem(addr, ram) host_write_10_ram(addr, ram) +#define LUN_USB_NAME "\"Host Mass-Storage Memory\"" +//! @} + +/*! \name Actions Associated with Memory Accesses + * + * Write here the action to associate with each memory access. + * + * \warning Be careful not to waste time in order not to disturb the functions. + */ +//! @{ +#define memory_start_read_action(nb_sectors) +#define memory_stop_read_action() +#define memory_start_write_action(nb_sectors) +#define memory_stop_write_action() +//! @} + +/*! \name Activation of Interface Features + */ +//! @{ +#define ACCESS_USB DISABLED //!< MEM <-> USB interface. +#define ACCESS_MEM_TO_RAM ENABLED //!< MEM <-> RAM interface. +#define ACCESS_STREAM ENABLED //!< Streaming MEM <-> MEM interface. //mlf +#define ACCESS_STREAM_RECORD DISABLED //!< Streaming MEM <-> MEM interface in record mode. +#define ACCESS_MEM_TO_MEM DISABLED //!< MEM <-> MEM interface. +#define ACCESS_CODEC DISABLED //!< Codec interface. +//! @} + +/*! \name Specific Options for Access Control + */ +//! @{ +#define GLOBAL_WR_PROTECT DISABLED //!< Management of a global write protection. +//! @} + + +#endif // _CONF_ACCESS_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_at45dbx.h b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_at45dbx.h new file mode 100644 index 000000000..3280e4fc1 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_at45dbx.h @@ -0,0 +1,83 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT45DBX configuration file. + * + * This file contains the possible external configuration of the AT45DBX. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_AT45DBX_H_ +#define _CONF_AT45DBX_H_ + + +#include "conf_access.h" + +#if AT45DBX_MEM == DISABLE + #error conf_at45dbx.h is #included although AT45DBX_MEM is disabled +#endif + + +#include "at45dbx.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +//! Size of AT45DBX data flash memories to manage. +#define AT45DBX_MEM_SIZE AT45DBX_1MB + +//! Number of AT45DBX components to manage. +#define AT45DBX_MEM_CNT 1 + +//! First chip select used by AT45DBX components on the SPI module instance. +//! AT45DBX_SPI_NPCS0_PIN always corresponds to this first NPCS, whatever it is. +#define AT45DBX_SPI_FIRST_NPCS AT45DBX_SPI_NPCS + +//! SPI master speed in Hz. +#define AT45DBX_SPI_MASTER_SPEED 12000000 + +//! Number of bits in each SPI transfer. +#define AT45DBX_SPI_BITS 8 + + +#endif // _CONF_AT45DBX_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_ebi.h b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_ebi.h new file mode 100644 index 000000000..aacdb1314 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_ebi.h @@ -0,0 +1,108 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief CONF_EBI EBI/SMC driver for AVR32 UC3. + * + * \note The values defined in this file are device-specific. See the device + * datasheet for further information. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SMC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_EBI_H_ +#define _CONF_EBI_H_ + +#include "compiler.h" +#include "board.h" + +#if (ET024006DHU_SMC_USE_NCS == 0) +#define SMC_USE_NCS0 +#define SMC_COMPONENT_CS0 ET024006DHU_SMC_COMPONENT_CS +#else + +#if (ET024006DHU_SMC_USE_NCS == 2) +#define SMC_USE_NCS2 +#define SMC_COMPONENT_CS2 ET024006DHU_SMC_COMPONENT_CS + +#else +#error This board is not supported +#endif +#endif + +#define EBI_DATA_0 ET024006DHU_EBI_DATA_0 +#define EBI_DATA_1 ET024006DHU_EBI_DATA_1 +#define EBI_DATA_2 ET024006DHU_EBI_DATA_2 +#define EBI_DATA_3 ET024006DHU_EBI_DATA_3 +#define EBI_DATA_4 ET024006DHU_EBI_DATA_4 +#define EBI_DATA_5 ET024006DHU_EBI_DATA_5 +#define EBI_DATA_6 ET024006DHU_EBI_DATA_6 +#define EBI_DATA_7 ET024006DHU_EBI_DATA_7 +#define EBI_DATA_8 ET024006DHU_EBI_DATA_8 +#define EBI_DATA_9 ET024006DHU_EBI_DATA_9 +#define EBI_DATA_10 ET024006DHU_EBI_DATA_10 +#define EBI_DATA_11 ET024006DHU_EBI_DATA_11 +#define EBI_DATA_12 ET024006DHU_EBI_DATA_12 +#define EBI_DATA_13 ET024006DHU_EBI_DATA_13 +#define EBI_DATA_14 ET024006DHU_EBI_DATA_14 +#define EBI_DATA_15 ET024006DHU_EBI_DATA_15 + +#if BOARD==EVK1105 +#ifdef EVK1105_REV3 +#define EBI_ADDR_19 AVR32_EBI_ADDR_19 +#define EBI_NCS_2 ET024006DHU_EBI_NCS +#else +#define EBI_ADDR_21 ET024006DHU_EBI_ADDR_21 +#define EBI_NCS_0 ET024006DHU_EBI_NCS +#endif +#elif BOARD == UC3C_EK +#define EBI_ADDR_22 AVR32_EBI_ADDR_22 +#define EBI_NCS_0 ET024006DHU_EBI_NCS +#elif BOARD == EVK1104 +#define EBI_ADDR_21 ET024006DHU_EBI_ADDR_21 +#define EBI_NCS_0 ET024006DHU_EBI_NCS +#endif + + +#define EBI_NWE0 ET024006DHU_EBI_NWE +#define EBI_NRD ET024006DHU_EBI_NRD + +#endif // _CONF_EBI_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_sd_mmc_spi.h b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_sd_mmc_spi.h new file mode 100644 index 000000000..94b55e10c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/CONFIG/conf_sd_mmc_spi.h @@ -0,0 +1,73 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SD/MMC configuration file. + * + * This file contains the possible external configuration of the SD/MMC. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_SD_MMC_SPI_H_ +#define _CONF_SD_MMC_SPI_H_ + + +#include "conf_access.h" + +#if SD_MMC_SPI_MEM == DISABLE + #error conf_sd_mmc_spi.h is #included although SD_MMC_SPI_MEM is disabled +#endif + + +#include "sd_mmc_spi.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +//! SPI master speed in Hz. +#define SD_MMC_SPI_MASTER_SPEED 12000000 + +//! Number of bits in each SPI transfer. +#define SD_MMC_SPI_BITS 8 + + +#endif // _CONF_SD_MMC_SPI_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x new file mode 100644 index 000000000..c12712150 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x @@ -0,0 +1,74 @@ +/* This file is part of the ATMEL AVR32-SoftwareFramework-AT32UC3A-1.4.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AVR32 UC3 ISP trampoline. + * + * In order to be able to program a project with both BatchISP and JTAGICE mkII + * without having to take the general-purpose fuses into consideration, add this + * file to the project and change the program entry point to _trampoline. + * + * The pre-programmed ISP will be erased if JTAGICE mkII is used. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32UC devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (C) 2006-2008, Atmel Corporation 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 ATMEL may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + + +#include "conf_isp.h" + + +//! @{ +//! \verbatim + + + // This must be linked @ 0x80000000 if it is to be run upon reset. + .section .reset, "ax", @progbits + + + .global _trampoline + .type _trampoline, @function +_trampoline: + // Jump to program start. + rjmp program_start + + .org PROGRAM_START_OFFSET +program_start: + // Jump to the C runtime startup routine. + lda.w pc, _stext + + +//! \endverbatim +//! @} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h new file mode 100644 index 000000000..e687723c3 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h @@ -0,0 +1,237 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1100 board header file. + * + * This file contains definitions and services related to the features of the + * EVK1100 board rev. B and C. + * + * To use this board, define BOARD=EVK1100. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _ARDUINO_H_ +#define _ARDUINO_H_ + +#include "compiler.h" + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. +# include "led.h" +#endif // __AVR32_ABI_COMPILER__ + + +/*! \name Oscillator Definitions + */ +//! @{ + +// RCOsc has no custom calibration by default. Set the following definition to +// the appropriate value if a custom RCOsc calibration has been applied to your +// part. +//#define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< RCOsc frequency: Hz. + +#define FOSC32 32768 //!< Osc32 frequency: Hz. +#define OSC32_STARTUP AVR32_PM_OSCCTRL32_STARTUP_8192_RCOSC //!< Osc32 startup time: RCOsc periods. + +#define FOSC0 12000000 //!< Osc0 frequency: Hz. +#define OSC0_STARTUP AVR32_PM_OSCCTRL0_STARTUP_2048_RCOSC //!< Osc0 startup time: RCOsc periods. + +// Osc1 crystal is not mounted by default. Set the following definitions to the +// appropriate values if a custom Osc1 crystal is mounted on your board. +//#define FOSC1 12000000 //!< Osc1 frequency: Hz. +//#define OSC1_STARTUP AVR32_PM_OSCCTRL1_STARTUP_2048_RCOSC //!< Osc1 startup time: RCOsc periods. + +//! @} + + +//! Number of LEDs. +#define LED_COUNT 0 + +/*! \name GPIO Connections of LEDs + */ +//! @{ +#define LED0_GPIO AVR32_PIN_PB19 +#define LED1_GPIO AVR32_PIN_PB20 +#define LED2_GPIO AVR32_PIN_PB21 +#define DEB_PIN_GPIO AVR32_PIN_PA20 +#define DEB2_PIN_GPIO AVR32_PIN_PB00 +//! @} + +/*! \name PWM Channels of LEDs + */ +//! @{ +#define LED0_PWM 0 +#define LED1_PWM 1 +#define LED2_PWM 2 +//! @} + +/*! \name PWM Functions of LEDs + */ +//! @{ +#define LED0_PWM_FUNCTION AVR32_PWM_0_FUNCTION +#define LED1_PWM_FUNCTION AVR32_PWM_1_FUNCTION +#define LED2_PWM_FUNCTION AVR32_PWM_2_FUNCTION +//! @} + +/*! \name Color Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED_MONO0_GREEN LED0 +#define LED_MONO1_RED LED1 +#define LED_MONO2_BLU LED2 +//! @} + +#if 0 +/*! \name SPI Connections of the DIP204 LCD + */ +//! @{ +#define DIP204_SPI (&AVR32_SPI1) +#define DIP204_SPI_NPCS 2 +#define DIP204_SPI_SCK_PIN AVR32_SPI1_SCK_0_0_PIN +#define DIP204_SPI_SCK_FUNCTION AVR32_SPI1_SCK_0_0_FUNCTION +#define DIP204_SPI_MISO_PIN AVR32_SPI1_MISO_0_0_PIN +#define DIP204_SPI_MISO_FUNCTION AVR32_SPI1_MISO_0_0_FUNCTION +#define DIP204_SPI_MOSI_PIN AVR32_SPI1_MOSI_0_0_PIN +#define DIP204_SPI_MOSI_FUNCTION AVR32_SPI1_MOSI_0_0_FUNCTION +#define DIP204_SPI_NPCS_PIN AVR32_SPI1_NPCS_2_0_PIN +#define DIP204_SPI_NPCS_FUNCTION AVR32_SPI1_NPCS_2_0_FUNCTION +//! @} + +/*! \name GPIO and PWM Connections of the DIP204 LCD Backlight + */ +//! @{ +#define DIP204_BACKLIGHT_PIN AVR32_PIN_PB18 +#define DIP204_PWM_CHANNEL 6 +#define DIP204_PWM_PIN AVR32_PWM_6_PIN +#define DIP204_PWM_FUNCTION AVR32_PWM_6_FUNCTION +//! @} +#endif + +/*! \name SPI Connections of the AT45DBX Data Flash Memory + */ +//! @{ +#define AT45DBX_SPI (&AVR32_SPI1) +#define AT45DBX_SPI_NPCS 2 +#define AT45DBX_SPI_SCK_PIN AVR32_SPI1_SCK_0_0_PIN +#define AT45DBX_SPI_SCK_FUNCTION AVR32_SPI1_SCK_0_0_FUNCTION +#define AT45DBX_SPI_MISO_PIN AVR32_SPI1_MISO_0_0_PIN +#define AT45DBX_SPI_MISO_FUNCTION AVR32_SPI1_MISO_0_0_FUNCTION +#define AT45DBX_SPI_MOSI_PIN AVR32_SPI1_MOSI_0_0_PIN +#define AT45DBX_SPI_MOSI_FUNCTION AVR32_SPI1_MOSI_0_0_FUNCTION +#define AT45DBX_SPI_NPCS2_PIN AVR32_SPI1_NPCS_2_0_PIN +#define AT45DBX_SPI_NPCS2_FUNCTION AVR32_SPI1_NPCS_2_0_FUNCTION +#define AT45DBX_CHIP_RESET AVR32_PIN_PA02 +//! @} + + +/*! \name GPIO and SPI Connections of the SD/MMC Connector + */ +//! @{ +//#define SD_MMC_CARD_DETECT_PIN AVR32_PIN_PA02 +//#define SD_MMC_WRITE_PROTECT_PIN AVR32_PIN_PA07 +#define SD_MMC_SPI (&AVR32_SPI1) +#define SD_MMC_SPI_NPCS 1 +#define SD_MMC_SPI_SCK_PIN AVR32_SPI1_SCK_0_0_PIN +#define SD_MMC_SPI_SCK_FUNCTION AVR32_SPI1_SCK_0_0_FUNCTION +#define SD_MMC_SPI_MISO_PIN AVR32_SPI1_MISO_0_0_PIN +#define SD_MMC_SPI_MISO_FUNCTION AVR32_SPI1_MISO_0_0_FUNCTION +#define SD_MMC_SPI_MOSI_PIN AVR32_SPI1_MOSI_0_0_PIN +#define SD_MMC_SPI_MOSI_FUNCTION AVR32_SPI1_MOSI_0_0_FUNCTION +#define SD_MMC_SPI_NPCS_PIN AVR32_SPI1_NPCS_1_0_PIN +#define SD_MMC_SPI_NPCS_FUNCTION AVR32_SPI1_NPCS_1_0_FUNCTION +//! @} + +/* Timer Counter to generate clock for WiFi chip*/ +# define WIFI_TC (&AVR32_TC) +# define WIFI_TC_CHANNEL_ID 0 +# define WIFI_TC_CHANNEL_PIN AVR32_TC_A0_0_0_PIN +# define WIFI_TC_CHANNEL_FUNCTION AVR32_TC_A0_0_0_FUNCTION +// Note that TC_A0_0_0 pin is pin 6 (PB23) on AT32UC3A1512 QFP100. + +/* Pin related to WiFi chip communication */ +#ifndef USE_POLL + #define USE_POLL +#endif + #define SPI_CS 0 + #define AVR32_SPI AVR32_SPI1 + #define GPIO_IRQ_PIN AVR32_PIN_PA03 + #define GPIO_IRQ AVR32_GPIO_IRQ_7 + #define GPIO_W_RESET_PIN AVR32_PIN_PA07 + #define GPIO_W_SHUTDOWN_PIN AVR32_PIN_PA09 + +/* Pin related to shield communication */ + #define ARDUINO_HANDSHAKE_PIN AVR32_PIN_PA25 + #define ARDUINO_EXTINT_PIN AVR32_PIN_PA04 //not used + + #define AVR32_PDCA_PID_TX AVR32_PDCA_PID_SPI1_TX + #define AVR32_PDCA_PID_RX AVR32_PDCA_PID_SPI1_RX + + +#if 0 +/*! \name TWI Connections of the Spare TWI Connector + */ +//! @{ +#define SPARE_TWI (&AVR32_TWI) +#define SPARE_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define SPARE_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define SPARE_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define SPARE_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION +//! @} + + +/*! \name SPI Connections of the Spare SPI Connector + */ +//! @{ +#define SPARE_SPI (&AVR32_SPI0) +#define SPARE_SPI_NPCS 0 +#define SPARE_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define SPARE_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define SPARE_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define SPARE_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define SPARE_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define SPARE_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define SPARE_SPI_NPCS_PIN AVR32_SPI0_NPCS_0_0_PIN +#define SPARE_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_0_0_FUNCTION +//! @} +#endif + +#endif // _ARDUINO_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c new file mode 100644 index 000000000..d7cd439db --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c @@ -0,0 +1,346 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1100 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1100 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "preprocessor.h" +#include "compiler.h" +#include "arduino.h" +#include "led.h" + + +//! Structure describing LED hardware connections. +typedef const struct +{ + struct + { + U32 PORT; //!< LED GPIO port. + U32 PIN_MASK; //!< Bit-mask of LED pin in GPIO port. + } GPIO; //!< LED GPIO descriptor. + struct + { + S32 CHANNEL; //!< LED PWM channel (< 0 if N/A). + S32 FUNCTION; //!< LED pin PWM function (< 0 if N/A). + } PWM; //!< LED PWM descriptor. +} tLED_DESCRIPTOR; + + +//! Hardware descriptors of all LEDs. +static tLED_DESCRIPTOR LED_DESCRIPTOR[LED_COUNT] = +{ +#define INSERT_LED_DESCRIPTOR(LED_NO, unused) \ + { \ + {LED##LED_NO##_GPIO / 32, 1 << (LED##LED_NO##_GPIO % 32)},\ + {LED##LED_NO##_PWM, LED##LED_NO##_PWM_FUNCTION } \ + }, + MREPEAT(LED_COUNT, INSERT_LED_DESCRIPTOR, ~) +#undef INSERT_LED_DESCRIPTOR +}; + + +//! Saved state of all LEDs. +static volatile U32 LED_State = (1 << LED_COUNT) - 1; + + +U32 LED_Read_Display(void) +{ + return LED_State; +} + + +void LED_Display(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor; + volatile avr32_gpio_port_t *led_gpio_port; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + LED_State = leds; + + // For all LEDs... + for (led_descriptor = &LED_DESCRIPTOR[0]; + led_descriptor < LED_DESCRIPTOR + LED_COUNT; + led_descriptor++) + { + // Set the LED to the requested state. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + } +} + + +U32 LED_Read_Display_Mask(U32 mask) +{ + return Rd_bits(LED_State, mask); +} + + +void LED_Display_Mask(U32 mask, U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + mask &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Wr_bits(LED_State, mask, leds); + + // While there are specified LEDs left to manage... + while (mask) + { + // Select the next specified LED and set it to the requested state. + led_shift = 1 + ctz(mask); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + leds >>= led_shift - 1; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + mask >>= led_shift; + } +} + + +Bool LED_Test(U32 leds) +{ + return Tst_bits(LED_State, leds); +} + + +void LED_Off(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Clr_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it off. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_On(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Set_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it on. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_Toggle(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Tgl_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and toggle it. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrt = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +U32 LED_Read_Display_Field(U32 field) +{ + return Rd_bitfield(LED_State, field); +} + + +void LED_Display_Field(U32 field, U32 leds) +{ + // Move the bit-field to the appropriate position for the bit-mask. + LED_Display_Mask(field, leds << ctz(field)); +} + + +U8 LED_Get_Intensity(U32 led) +{ + tLED_DESCRIPTOR *led_descriptor; + + // Check that the argument value is valid. + led = ctz(led); + led_descriptor = &LED_DESCRIPTOR[led]; + if (led >= LED_COUNT || led_descriptor->PWM.CHANNEL < 0) return 0; + + // Return the duty cycle value if the LED PWM channel is enabled, else 0. + return (AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL)) ? + AVR32_PWM.channel[led_descriptor->PWM.CHANNEL].cdty : 0; +} + + +void LED_Set_Intensity(U32 leds, U8 intensity) +{ + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_pwm_channel_t *led_pwm_channel; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // For each specified LED... + for (leds &= (1 << LED_COUNT) - 1; leds; leds >>= led_shift) + { + // Select the next specified LED and check that it has a PWM channel. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + if (led_descriptor->PWM.CHANNEL < 0) continue; + + // Initialize or update the LED PWM channel. + led_pwm_channel = &AVR32_PWM.channel[led_descriptor->PWM.CHANNEL]; + if (!(AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL))) + { + led_pwm_channel->cmr = (AVR32_PWM_CPRE_MCK << AVR32_PWM_CPRE_OFFSET) & + ~(AVR32_PWM_CALG_MASK | + AVR32_PWM_CPOL_MASK | + AVR32_PWM_CPD_MASK); + led_pwm_channel->cprd = 0x000000FF; + led_pwm_channel->cdty = intensity; + AVR32_PWM.ena = 1 << led_descriptor->PWM.CHANNEL; + } + else + { + AVR32_PWM.isr; + while (!(AVR32_PWM.isr & (1 << led_descriptor->PWM.CHANNEL))); + led_pwm_channel->cupd = intensity; + } + + // Switch the LED pin to its PWM function. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (led_descriptor->PWM.FUNCTION & 0x1) + { + led_gpio_port->pmr0s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr0c = led_descriptor->GPIO.PIN_MASK; + } + if (led_descriptor->PWM.FUNCTION & 0x2) + { + led_gpio_port->pmr1s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr1c = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->gperc = led_descriptor->GPIO.PIN_MASK; + } +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h new file mode 100644 index 000000000..a577124ff --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h @@ -0,0 +1,191 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1100 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1100 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _LED_H_ +#define _LED_H_ + +#include "compiler.h" + + +/*! \name Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED0 0x01 +#define LED1 0x02 +#define LED2 0x04 +#define LED3 0x08 +#define LED4 0x10 +#define LED5 0x20 +#define LED6 0x40 +#define LED7 0x80 +//! @} + + +/*! \brief Gets the last state of all LEDs set through the LED API. + * + * \return State of all LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display(void); + +/*! \brief Sets the state of all LEDs. + * + * \param leds New state of all LEDs (1 bit per LED). + * + * \note The pins of all LEDs are set to GPIO output mode. + */ +extern void LED_Display(U32 leds); + +/*! \brief Gets the last state of the specified LEDs set through the LED API. + * + * \param mask LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Mask(U32 mask); + +/*! \brief Sets the state of the specified LEDs. + * + * \param mask LEDs of which to set the state (1 bit per LED). + * + * \param leds New state of the specified LEDs (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Mask(U32 mask, U32 leds); + +/*! \brief Tests the last state of the specified LEDs set through the LED API. + * + * \param leds LEDs of which to test the state (1 bit per LED). + * + * \return \c TRUE if at least one of the specified LEDs has a state on, else + * \c FALSE. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern Bool LED_Test(U32 leds); + +/*! \brief Turns off the specified LEDs. + * + * \param leds LEDs to turn off (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Off(U32 leds); + +/*! \brief Turns on the specified LEDs. + * + * \param leds LEDs to turn on (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_On(U32 leds); + +/*! \brief Toggles the specified LEDs. + * + * \param leds LEDs to toggle (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Toggle(U32 leds); + +/*! \brief Gets as a bit-field the last state of the specified LEDs set through + * the LED API. + * + * \param field LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED, beginning with the first + * specified LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Field(U32 field); + +/*! \brief Sets as a bit-field the state of the specified LEDs. + * + * \param field LEDs of which to set the state (1 bit per LED). + * \param leds New state of the specified LEDs (1 bit per LED, beginning with + * the first specified LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Field(U32 field, U32 leds); + +/*! \brief Gets the intensity of the specified LED. + * + * \param led LED of which to get the intensity (1 bit per LED; only the least + * significant set bit is used). + * + * \return Intensity of the specified LED (0x00 to 0xFF). + * + * \warning The PWM channel of the specified LED is supposed to be used only by + * this module. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U8 LED_Get_Intensity(U32 led); + +/*! \brief Sets the intensity of the specified LEDs. + * + * \param leds LEDs of which to set the intensity (1 bit per LED). + * \param intensity New intensity of the specified LEDs (0x00 to 0xFF). + * + * \warning The PWM channels of the specified LEDs are supposed to be used only + * by this module. + * + * \note The pins of the specified LEDs are set to PWM output mode. + */ +extern void LED_Set_Intensity(U32 leds, U8 intensity); + + +#endif // _LED_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h new file mode 100644 index 000000000..edda44cb3 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h @@ -0,0 +1,433 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1105 board header file. + * + * This file contains definitions and services related to the features of the + * EVK1105 board rev. B. + * + * To use this board, define BOARD=EVK1105. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _EVK1105_H_ +#define _EVK1105_H_ + +#ifdef EVK1105_REV3 +# include "evk1105_rev3.h" +#else + +#include "compiler.h" + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. +# include "led.h" +#endif // __AVR32_ABI_COMPILER__ + + +/*! \name Oscillator Definitions + */ +//! @{ + +// RCOsc has no custom calibration by default. Set the following definition to +// the appropriate value if a custom RCOsc calibration has been applied to your +// part. +//#define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< RCOsc frequency: Hz. + +#define FOSC32 32768 //!< Osc32 frequency: Hz. +#define OSC32_STARTUP AVR32_PM_OSCCTRL32_STARTUP_8192_RCOSC //!< Osc32 startup time: RCOsc periods. + +#define FOSC0 12000000 //!< Osc0 frequency: Hz. +#define OSC0_STARTUP AVR32_PM_OSCCTRL0_STARTUP_2048_RCOSC //!< Osc0 startup time: RCOsc periods. + +#define FOSC1 11289600 //!< Osc1 frequency: Hz +#define OSC1_STARTUP AVR32_PM_OSCCTRL1_STARTUP_2048_RCOSC //!< Osc1 startup time: RCOsc periods. + + +//! @} + + +/*! \name SDRAM Definitions + */ +//! @{ + +//! Part header file of used SDRAM(s). +#define SDRAM_PART_HDR "MT48LC16M16A2TG7E/mt48lc16m16a2tg7e.h" + +//! Data bus width to use the SDRAM(s) with (16 or 32 bits; always 16 bits on +//! UC3). +#define SDRAM_DBW 16 +//! @} + + +/*! \name USB Definitions + */ +//! @{ +//! Multiplexed pin used for USB_ID: AVR32_USBB_USB_ID_x_x. +//! To be selected according to the AVR32_USBB_USB_ID_x_x_PIN and +//! AVR32_USBB_USB_ID_x_x_FUNCTION definitions from <avr32/uc3axxxx.h>. +#define AVR32_USBB_USB_ID_0_2_PIN 21 +#define AVR32_USBB_USB_ID_0_2_FUNCTION 2 +#define USB_ID AVR32_USBB_USB_ID_0_2 + +//! Multiplexed pin used for USB_VBOF: AVR32_USBB_USB_VBOF_x_x. +//! To be selected according to the AVR32_USBB_USB_VBOF_x_x_PIN and +//! AVR32_USBB_USB_VBOF_x_x_FUNCTION definitions from <avr32/uc3axxxx.h>. +# define USB_VBOF AVR32_USBB_USB_VBOF_0_1 + + +//! Active level of the USB_VBOF output pin. +# define USB_VBOF_ACTIVE_LEVEL LOW + +//! USB overcurrent detection pin. +# define USB_OVERCURRENT_DETECT_PIN AVR32_PIN_PX15 + +//! @} + + +//! GPIO connection of the MAC PHY PWR_DOWN/INT signal. +# define MACB_INTERRUPT_PIN AVR32_PIN_PA26 + + + +//! Number of LEDs. +#define LED_COUNT 4 + +/*! \name GPIO Connections of LEDs + */ +//! @{ +# define LED0_GPIO AVR32_PIN_PB27 +# define LED1_GPIO AVR32_PIN_PB28 +# define LED2_GPIO AVR32_PIN_PA05 +# define LED3_GPIO AVR32_PIN_PA06 +//! @} + +/*! \name Color Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED_MONO0_GREEN LED0 +#define LED_MONO1_GREEN LED1 +#define LED_MONO2_GREEN LED2 +#define LED_MONO3_GREEN LED3 +//! @} + +/*! \name PWM Channels of LEDs + */ +//! @{ +#define LED0_PWM 4 +#define LED1_PWM 5 +#define LED2_PWM (-1) +#define LED3_PWM (-1) +//! @} + +/*! \name PWM Functions of LEDs + */ +//! @{ +/* TODO: Implement PWM functionality */ +#define LED0_PWM_FUNCTION (-1)//AVR32_PWM_0_FUNCTION +#define LED1_PWM_FUNCTION (-1)//AVR32_PWM_1_FUNCTION +#define LED2_PWM_FUNCTION (-1) +#define LED3_PWM_FUNCTION (-1) +//! @} + +//! External interrupt connection of touch sensor. +#define QT1081_EIC_EXTINT_PIN AVR32_EIC_EXTINT_1_PIN +#define QT1081_EIC_EXTINT_FUNCTION AVR32_EIC_EXTINT_1_FUNCTION +#define QT1081_EIC_EXTINT_IRQ AVR32_EIC_IRQ_1 +#define QT1081_EIC_EXTINT_INT AVR32_EIC_INT1 +/*! \name Touch sensor low power mode select + */ +#define QT1081_LP_MODE AVR32_PIN_PB29 + +/*! \name GPIO Connections of touch buttons + */ +//! @{ +#define QT1081_TOUCH_SENSOR_0 AVR32_PIN_PB22 +#define QT1081_TOUCH_SENSOR_0_PRESSED 1 +#define QT1081_TOUCH_SENSOR_1 AVR32_PIN_PB23 +#define QT1081_TOUCH_SENSOR_1_PRESSED 1 +#define QT1081_TOUCH_SENSOR_2 AVR32_PIN_PB24 +#define QT1081_TOUCH_SENSOR_2_PRESSED 1 +#define QT1081_TOUCH_SENSOR_3 AVR32_PIN_PB25 +#define QT1081_TOUCH_SENSOR_3_PRESSED 1 +#define QT1081_TOUCH_SENSOR_4 AVR32_PIN_PB26 +#define QT1081_TOUCH_SENSOR_4_PRESSED 1 + +#define QT1081_TOUCH_SENSOR_ENTER QT1081_TOUCH_SENSOR_4 +#define QT1081_TOUCH_SENSOR_ENTER_PRESSED QT1081_TOUCH_SENSOR_4_PRESSED +#define QT1081_TOUCH_SENSOR_LEFT QT1081_TOUCH_SENSOR_3 +#define QT1081_TOUCH_SENSOR_LEFT_PRESSED QT1081_TOUCH_SENSOR_3_PRESSED +#define QT1081_TOUCH_SENSOR_RIGHT QT1081_TOUCH_SENSOR_2 +#define QT1081_TOUCH_SENSOR_RIGHT_PRESSED QT1081_TOUCH_SENSOR_2_PRESSED +#define QT1081_TOUCH_SENSOR_UP QT1081_TOUCH_SENSOR_0 +#define QT1081_TOUCH_SENSOR_UP_PRESSED QT1081_TOUCH_SENSOR_0_PRESSED +#define QT1081_TOUCH_SENSOR_DOWN QT1081_TOUCH_SENSOR_1 +#define QT1081_TOUCH_SENSOR_DOWN_PRESSED QT1081_TOUCH_SENSOR_1_PRESSED +//! @} + +/*! \name SPI Connections of the AT45DBX Data Flash Memory + */ +//! @{ +#define AT45DBX_SPI (&AVR32_SPI0) +#define AT45DBX_SPI_NPCS 0 +#define AT45DBX_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define AT45DBX_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define AT45DBX_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define AT45DBX_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define AT45DBX_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define AT45DBX_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define AT45DBX_SPI_NPCS0_PIN AVR32_SPI0_NPCS_0_0_PIN +#define AT45DBX_SPI_NPCS0_FUNCTION AVR32_SPI0_NPCS_0_0_FUNCTION +//! @} + +/*! \name GPIO and SPI Connections of the SD/MMC Connector + */ +//! @{ +#define SD_MMC_CARD_DETECT_PIN AVR32_PIN_PA02 +#define SD_MMC_WRITE_PROTECT_PIN AVR32_PIN_PA18 +#define SD_MMC_SPI (&AVR32_SPI0) +#define SD_MMC_SPI_NPCS 1 +#define SD_MMC_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define SD_MMC_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define SD_MMC_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define SD_MMC_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define SD_MMC_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define SD_MMC_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define SD_MMC_SPI_NPCS_PIN AVR32_SPI0_NPCS_1_0_PIN +#define SD_MMC_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_1_0_FUNCTION +//! @} + + +/*! \name TWI expansion + */ +//! @{ +#define EXPANSION_TWI (&AVR32_TWI) +#define EXPANSION_RESET AVR32_PIN_PX16 +#define EXPANSION_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define EXPANSION_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define EXPANSION_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define EXPANSION_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION +//! @} + +/*! \name Wireless expansion + */ + +#define WEXPANSION_EXTINT_PIN AVR32_EIC_EXTINT_8_PIN +#define WEXPANSION_EXTINT_FUNCTION AVR32_EIC_EXTINT_8_FUNCTION +#define WEXPANSION_GPIO1 AVR32_PIN_PB30 +#define WEXPANSION_GPIO2 AVR32_PIN_PB31 + +#define WEXPANSION_SPI (&AVR32_SPI0) +#define WEXPANSION_SPI_NPCS 2 +#define WEXPANSION_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define WEXPANSION_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define WEXPANSION_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define WEXPANSION_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define WEXPANSION_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define WEXPANSION_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define WEXPANSION_SPI_NPCS_PIN AVR32_SPI0_NPCS_2_0_PIN +#define WEXPANSION_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_2_0_FUNCTION + +//! @} + +/*! \name ET024006DHU TFT display + */ +//! @{ + +#define ET024006DHU_TE_PIN AVR32_PIN_PX19 +#define ET024006DHU_RESET_PIN AVR32_PIN_PX22 +#define ET024006DHU_BL_PIN AVR32_PWM_6_PIN +#define ET024006DHU_BL_FUNCTION AVR32_PWM_6_FUNCTION +#define ET024006DHU_DNC_PIN AVR32_EBI_ADDR_21_1_PIN +#define ET024006DHU_DNC_FUNCTION AVR32_EBI_ADDR_21_1_FUNCTION +#define ET024006DHU_EBI_NCS_PIN AVR32_EBI_NCS_0_1_PIN +#define ET024006DHU_EBI_NCS_FUNCTION AVR32_EBI_NCS_0_1_FUNCTION + +//! @} +/*! \name Optional SPI connection to the TFT + */ +//! @{ + +#define ET024006DHU_SPI (&AVR32_SPI0) +#define ET024006DHU_SPI_NPCS 3 +#define ET024006DHU_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define ET024006DHU_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define ET024006DHU_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define ET024006DHU_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define ET024006DHU_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define ET024006DHU_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define ET024006DHU_SPI_NPCS_PIN AVR32_SPI1_NPCS_3_0_PIN +#define ET024006DHU_SPI_NPCS_FUNCTION AVR32_SPI1_NPCS_3_0_FUNCTION + +//! @} + + +/*! \name Audio amplifier connection to the DAC + */ +//! @{ + +#define TPA6130_ABDAC (&AVR32_ABDAC) + +#define TPA6130_DATA0_PIN AVR32_ABDAC_DATA_0_1_PIN +#define TPA6130_DATA0_FUNCTION AVR32_ABDAC_DATA_0_1_FUNCTION +#define TPA6130_DATAN0_PIN AVR32_ABDAC_DATAN_0_1_PIN +#define TPA6130_DATAN0_FUNCTION AVR32_ABDAC_DATAN_0_1_FUNCTION +#define TPA6130_DATA1_PIN AVR32_ABDAC_DATA_1_1_PIN +#define TPA6130_DATA1_FUNCTION AVR32_ABDAC_DATA_1_1_FUNCTION +#define TPA6130_DATAN1_PIN AVR32_ABDAC_DATAN_1_1_PIN +#define TPA6130_DATAN1_FUNCTION AVR32_ABDAC_DATAN_1_1_FUNCTION + +#define TPA6130_ABDAC_PDCA_PID AVR32_PDCA_PID_ABDAC_TX +#define TPA6130_ABDAC_PDCA_CHANNEL 0 +#define TPA6130_ABDAC_PDCA_IRQ AVR32_PDCA_IRQ_0 +#define TPA6130_ABDAC_PDCA_INT_LEVEL AVR32_INTC_INT3 + +#define TPA6130_TWI (&AVR32_TWI) +#define TPA6130_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define TPA6130_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define TPA6130_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define TPA6130_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION + +//! }@ +/*! \name TI TLV320AIC23B sound chip + */ +//! @{ +#define TLV320_SSC (&AVR32_SSC) +#define TLV320_SSC_TX_CLOCK_PIN AVR32_SSC_TX_CLOCK_0_PIN +#define TLV320_SSC_TX_CLOCK_FUNCTION AVR32_SSC_TX_CLOCK_0_FUNCTION +#define TLV320_SSC_TX_DATA_PIN AVR32_SSC_TX_DATA_0_PIN +#define TLV320_SSC_TX_DATA_FUNCTION AVR32_SSC_TX_DATA_0_FUNCTION +#define TLV320_SSC_TX_FRAME_SYNC_PIN AVR32_SSC_TX_FRAME_SYNC_0_PIN +#define TLV320_SSC_TX_FRAME_SYNC_FUNCTION AVR32_SSC_TX_FRAME_SYNC_0_FUNCTION + +#define TLV320_TWI (&AVR32_TWI) +#define TLV320_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define TLV320_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define TLV320_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define TLV320_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION + +#define TLV320_PM_GCLK_PIN AVR32_PM_GCLK_0_0_PIN +#define TLV320_PM_GCLK_FUNCTION AVR32_PM_GCLK_0_0_FUNCTION +//! @} + +////! \name SPI: Apple Authentication Chip Hardware Connections +////! @{ +#define IPOD_AUTH_CHIP_SPI (&AVR32_SPI0) +#define IPOD_AUTH_CHIP_SPI_IRQ AVR32_SPI0_IRQ +#define IPOD_AUTH_CHIP_SPI_NPCS 2 +#define IPOD_AUTH_CHIP_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define IPOD_AUTH_CHIP_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define IPOD_AUTH_CHIP_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define IPOD_AUTH_CHIP_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_NPCS_PIN AVR32_SPI0_NPCS_2_0_PIN +#define IPOD_AUTH_CHIP_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_2_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_N_RESET_PIN AVR32_PIN_PB30 +#define IPOD_AUTH_CHIP_SPI_CP_READY_PIN AVR32_PIN_PB31 +//! }@ + +/*! \name Connections of the iPOD Authentication Coprocessor + */ +//! @{ + +#define IPOD_AUTH_CHIP_TWI (&AVR32_TWI) +#define IPOD_AUTH_CHIP_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define IPOD_AUTH_CHIP_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define IPOD_AUTH_CHIP_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define IPOD_AUTH_CHIP_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION +#define IPOD_AUTH_CHIP_TWI_N_RESET_PIN AVR32_PIN_PX16 + +//! @} + +/*! \name USART connection to the UC3B board controller + */ +//! @{ + +#define USART0_RXD_PIN AVR32_USART0_RXD_0_0_PIN +#define USART0_RXD_FUNCTION AVR32_USART0_RXD_0_0_FUNCTION +#define USART0_TXD_PIN AVR32_USART0_TXD_0_0_PIN +#define USART0_TXD_FUNCTION AVR32_USART0_TXD_0_0_FUNCTION +#define USART0_RTS_PIN AVR32_USART0_RTS_0_0_PIN +#define USART0_RTS_FUNCTION AVR32_USART0_RTS_0_0_FUNCTION +#define USART0_CTS_PIN AVR32_USART0_CTS_0_0_PIN +#define USART0_CTS_FUNCTION AVR32_USART0_CTS_0_0_FUNCTION + +//! @} + +#define ADC_VEXT_PIN AVR32_ADC_AD_7_PIN +#define ADC_VEXT_FUNCTION AVR32_ADC_AD_7_FUNCTION + +/*! \name LCD Connections of the ET024006DHU display + */ +//! @{ +#define ET024006DHU_SMC_USE_NCS 0 +#define ET024006DHU_SMC_COMPONENT_CS "smc_et024006dhu.h" + +#define ET024006DHU_EBI_DATA_0 AVR32_EBI_DATA_0 +#define ET024006DHU_EBI_DATA_1 AVR32_EBI_DATA_1 +#define ET024006DHU_EBI_DATA_2 AVR32_EBI_DATA_2 +#define ET024006DHU_EBI_DATA_3 AVR32_EBI_DATA_3 +#define ET024006DHU_EBI_DATA_4 AVR32_EBI_DATA_4 +#define ET024006DHU_EBI_DATA_5 AVR32_EBI_DATA_5 +#define ET024006DHU_EBI_DATA_6 AVR32_EBI_DATA_6 +#define ET024006DHU_EBI_DATA_7 AVR32_EBI_DATA_7 +#define ET024006DHU_EBI_DATA_8 AVR32_EBI_DATA_8 +#define ET024006DHU_EBI_DATA_9 AVR32_EBI_DATA_9 +#define ET024006DHU_EBI_DATA_10 AVR32_EBI_DATA_10 +#define ET024006DHU_EBI_DATA_11 AVR32_EBI_DATA_11 +#define ET024006DHU_EBI_DATA_12 AVR32_EBI_DATA_12 +#define ET024006DHU_EBI_DATA_13 AVR32_EBI_DATA_13 +#define ET024006DHU_EBI_DATA_14 AVR32_EBI_DATA_14 +#define ET024006DHU_EBI_DATA_15 AVR32_EBI_DATA_15 + +#define ET024006DHU_EBI_ADDR_21 AVR32_EBI_ADDR_21_1 + +#define ET024006DHU_EBI_NWE AVR32_EBI_NWE0_0 +#define ET024006DHU_EBI_NRD AVR32_EBI_NRD_0 +#define ET024006DHU_EBI_NCS AVR32_EBI_NCS_0_1 +//! @} + + +#endif // !EVK1105_REVA + +#endif // _EVK1105_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c new file mode 100644 index 000000000..561652aeb --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c @@ -0,0 +1,346 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1105 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1105 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "preprocessor.h" +#include "compiler.h" +#include "evk1105.h" +#include "led.h" + + +//! Structure describing LED hardware connections. +typedef const struct +{ + struct + { + U32 PORT; //!< LED GPIO port. + U32 PIN_MASK; //!< Bit-mask of LED pin in GPIO port. + } GPIO; //!< LED GPIO descriptor. + struct + { + S32 CHANNEL; //!< LED PWM channel (< 0 if N/A). + S32 FUNCTION; //!< LED pin PWM function (< 0 if N/A). + } PWM; //!< LED PWM descriptor. +} tLED_DESCRIPTOR; + + +//! Hardware descriptors of all LEDs. +static tLED_DESCRIPTOR LED_DESCRIPTOR[LED_COUNT] = +{ +#define INSERT_LED_DESCRIPTOR(LED_NO, unused) \ + { \ + {LED##LED_NO##_GPIO / 32, 1 << (LED##LED_NO##_GPIO % 32)},\ + {LED##LED_NO##_PWM, LED##LED_NO##_PWM_FUNCTION } \ + }, + MREPEAT(LED_COUNT, INSERT_LED_DESCRIPTOR, ~) +#undef INSERT_LED_DESCRIPTOR +}; + + +//! Saved state of all LEDs. +static volatile U32 LED_State = (1 << LED_COUNT) - 1; + + +U32 LED_Read_Display(void) +{ + return LED_State; +} + + +void LED_Display(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor; + volatile avr32_gpio_port_t *led_gpio_port; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + LED_State = leds; + + // For all LEDs... + for (led_descriptor = &LED_DESCRIPTOR[0]; + led_descriptor < LED_DESCRIPTOR + LED_COUNT; + led_descriptor++) + { + // Set the LED to the requested state. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + } +} + + +U32 LED_Read_Display_Mask(U32 mask) +{ + return Rd_bits(LED_State, mask); +} + + +void LED_Display_Mask(U32 mask, U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + mask &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Wr_bits(LED_State, mask, leds); + + // While there are specified LEDs left to manage... + while (mask) + { + // Select the next specified LED and set it to the requested state. + led_shift = 1 + ctz(mask); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + leds >>= led_shift - 1; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + mask >>= led_shift; + } +} + + +Bool LED_Test(U32 leds) +{ + return Tst_bits(LED_State, leds); +} + + +void LED_Off(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Clr_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it off. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_On(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Set_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it on. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_Toggle(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Tgl_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and toggle it. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrt = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +U32 LED_Read_Display_Field(U32 field) +{ + return Rd_bitfield(LED_State, field); +} + + +void LED_Display_Field(U32 field, U32 leds) +{ + // Move the bit-field to the appropriate position for the bit-mask. + LED_Display_Mask(field, leds << ctz(field)); +} + + +U8 LED_Get_Intensity(U32 led) +{ + tLED_DESCRIPTOR *led_descriptor; + + // Check that the argument value is valid. + led = ctz(led); + led_descriptor = &LED_DESCRIPTOR[led]; + if (led >= LED_COUNT || led_descriptor->PWM.CHANNEL < 0) return 0; + + // Return the duty cycle value if the LED PWM channel is enabled, else 0. + return (AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL)) ? + AVR32_PWM.channel[led_descriptor->PWM.CHANNEL].cdty : 0; +} + + +void LED_Set_Intensity(U32 leds, U8 intensity) +{ + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_pwm_channel_t *led_pwm_channel; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // For each specified LED... + for (leds &= (1 << LED_COUNT) - 1; leds; leds >>= led_shift) + { + // Select the next specified LED and check that it has a PWM channel. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + if (led_descriptor->PWM.CHANNEL < 0) continue; + + // Initialize or update the LED PWM channel. + led_pwm_channel = &AVR32_PWM.channel[led_descriptor->PWM.CHANNEL]; + if (!(AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL))) + { + led_pwm_channel->cmr = (AVR32_PWM_CPRE_MCK << AVR32_PWM_CPRE_OFFSET) & + ~(AVR32_PWM_CALG_MASK | + AVR32_PWM_CPOL_MASK | + AVR32_PWM_CPD_MASK); + led_pwm_channel->cprd = 0x000000FF; + led_pwm_channel->cdty = intensity; + AVR32_PWM.ena = 1 << led_descriptor->PWM.CHANNEL; + } + else + { + AVR32_PWM.isr; + while (!(AVR32_PWM.isr & (1 << led_descriptor->PWM.CHANNEL))); + led_pwm_channel->cupd = intensity; + } + + // Switch the LED pin to its PWM function. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (led_descriptor->PWM.FUNCTION & 0x1) + { + led_gpio_port->pmr0s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr0c = led_descriptor->GPIO.PIN_MASK; + } + if (led_descriptor->PWM.FUNCTION & 0x2) + { + led_gpio_port->pmr1s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr1c = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->gperc = led_descriptor->GPIO.PIN_MASK; + } +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h new file mode 100644 index 000000000..7766b6a76 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h @@ -0,0 +1,187 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1105 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1105 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _LED_H_ +#define _LED_H_ + +#include "compiler.h" + + +/*! \name Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED0 0x01 +#define LED1 0x02 +#define LED2 0x04 +#define LED3 0x08 +//! @} + + +/*! \brief Gets the last state of all LEDs set through the LED API. + * + * \return State of all LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display(void); + +/*! \brief Sets the state of all LEDs. + * + * \param leds New state of all LEDs (1 bit per LED). + * + * \note The pins of all LEDs are set to GPIO output mode. + */ +extern void LED_Display(U32 leds); + +/*! \brief Gets the last state of the specified LEDs set through the LED API. + * + * \param mask LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Mask(U32 mask); + +/*! \brief Sets the state of the specified LEDs. + * + * \param mask LEDs of which to set the state (1 bit per LED). + * + * \param leds New state of the specified LEDs (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Mask(U32 mask, U32 leds); + +/*! \brief Tests the last state of the specified LEDs set through the LED API. + * + * \param leds LEDs of which to test the state (1 bit per LED). + * + * \return \c TRUE if at least one of the specified LEDs has a state on, else + * \c FALSE. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern Bool LED_Test(U32 leds); + +/*! \brief Turns off the specified LEDs. + * + * \param leds LEDs to turn off (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Off(U32 leds); + +/*! \brief Turns on the specified LEDs. + * + * \param leds LEDs to turn on (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_On(U32 leds); + +/*! \brief Toggles the specified LEDs. + * + * \param leds LEDs to toggle (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Toggle(U32 leds); + +/*! \brief Gets as a bit-field the last state of the specified LEDs set through + * the LED API. + * + * \param field LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED, beginning with the first + * specified LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Field(U32 field); + +/*! \brief Sets as a bit-field the state of the specified LEDs. + * + * \param field LEDs of which to set the state (1 bit per LED). + * \param leds New state of the specified LEDs (1 bit per LED, beginning with + * the first specified LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Field(U32 field, U32 leds); + +/*! \brief Gets the intensity of the specified LED. + * + * \param led LED of which to get the intensity (1 bit per LED; only the least + * significant set bit is used). + * + * \return Intensity of the specified LED (0x00 to 0xFF). + * + * \warning The PWM channel of the specified LED is supposed to be used only by + * this module. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U8 LED_Get_Intensity(U32 led); + +/*! \brief Sets the intensity of the specified LEDs. + * + * \param leds LEDs of which to set the intensity (1 bit per LED). + * \param intensity New intensity of the specified LEDs (0x00 to 0xFF). + * + * \warning The PWM channels of the specified LEDs are supposed to be used only + * by this module. + * + * \note The pins of the specified LEDs are set to PWM output mode. + */ +extern void LED_Set_Intensity(U32 leds, U8 intensity); + + +#endif // _LED_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h new file mode 100644 index 000000000..78ee91e75 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h @@ -0,0 +1,120 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Standard board header file. + * + * This file includes the appropriate board header file according to the + * defined board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +#include <avr32/io.h> + +/*! \name Base Boards + */ +//! @{ +#define EVK1100 1 //!< AT32UC3A EVK1100 board. +#define EVK1101 2 //!< AT32UC3B EVK1101 board. +#define UC3C_EK 3 //!< AT32UC3C UC3C_EK board. +#define EVK1104 4 //!< AT32UC3A3 EVK1104 board. +#define EVK1105 5 //!< AT32UC3A EVK1105 board. +#define STK1000 6 //!< AT32AP7000 STK1000 board. +#define NGW100 7 //!< AT32AP7000 NGW100 board. +#define STK600_RCUC3L0 8 //!< STK600 RCUC3L0 board. +#define UC3L_EK 9 //!< AT32UC3L-EK board. +#define USER_BOARD 99 //!< User-reserved board (if any). +//! @} + +/*! \name Extension Boards + */ +//! @{ +#define EXT1102 1 //!< AT32UC3B EXT1102 board. +#define MC300 2 //!< AT32UC3 MC300 board. +#define USER_EXT_BOARD 99 //!< User-reserved extension board (if any). +//! @} + +#if BOARD == EVK1100 + #include "EVK1100/evk1100.h" +#elif BOARD == EVK1101 + #include "EVK1101/evk1101.h" +#elif BOARD == UC3C_EK + #include "UC3C_EK/uc3c_ek.h" +#elif BOARD == EVK1104 + #include "EVK1104/evk1104.h" +#elif BOARD == EVK1105 + #include "EVK1105/evk1105.h" +#elif BOARD == STK1000 + #include "STK1000/stk1000.h" +#elif BOARD == NGW100 + #include "NGW100/ngw100.h" +#elif BOARD == STK600_RCUC3L0 + #include "STK600/RCUC3L0/stk600_rcuc3l0.h" +#elif BOARD == UC3L_EK + #include "UC3L_EK/uc3l_ek.h" +#elif BOARD == ARDUINO + #include "ARDUINO/arduino.h" +#else + #error No known AVR32 board defined +#endif + +#if (defined EXT_BOARD) + #if EXT_BOARD == EXT1102 + #include "EXT1102/ext1102.h" + #elif EXT_BOARD == MC300 + #include "MC300/mc300.h" + #elif EXT_BOARD == USER_EXT_BOARD + // User-reserved area: #include the header file of your extension board here + // (if any). + #endif +#endif + + +#ifndef FRCOSC + #define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< Default RCOsc frequency. +#endif + + +#endif // _BOARD_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.my b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.my new file mode 100644 index 000000000..78ee91e75 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.my @@ -0,0 +1,120 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Standard board header file. + * + * This file includes the appropriate board header file according to the + * defined board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +#include <avr32/io.h> + +/*! \name Base Boards + */ +//! @{ +#define EVK1100 1 //!< AT32UC3A EVK1100 board. +#define EVK1101 2 //!< AT32UC3B EVK1101 board. +#define UC3C_EK 3 //!< AT32UC3C UC3C_EK board. +#define EVK1104 4 //!< AT32UC3A3 EVK1104 board. +#define EVK1105 5 //!< AT32UC3A EVK1105 board. +#define STK1000 6 //!< AT32AP7000 STK1000 board. +#define NGW100 7 //!< AT32AP7000 NGW100 board. +#define STK600_RCUC3L0 8 //!< STK600 RCUC3L0 board. +#define UC3L_EK 9 //!< AT32UC3L-EK board. +#define USER_BOARD 99 //!< User-reserved board (if any). +//! @} + +/*! \name Extension Boards + */ +//! @{ +#define EXT1102 1 //!< AT32UC3B EXT1102 board. +#define MC300 2 //!< AT32UC3 MC300 board. +#define USER_EXT_BOARD 99 //!< User-reserved extension board (if any). +//! @} + +#if BOARD == EVK1100 + #include "EVK1100/evk1100.h" +#elif BOARD == EVK1101 + #include "EVK1101/evk1101.h" +#elif BOARD == UC3C_EK + #include "UC3C_EK/uc3c_ek.h" +#elif BOARD == EVK1104 + #include "EVK1104/evk1104.h" +#elif BOARD == EVK1105 + #include "EVK1105/evk1105.h" +#elif BOARD == STK1000 + #include "STK1000/stk1000.h" +#elif BOARD == NGW100 + #include "NGW100/ngw100.h" +#elif BOARD == STK600_RCUC3L0 + #include "STK600/RCUC3L0/stk600_rcuc3l0.h" +#elif BOARD == UC3L_EK + #include "UC3L_EK/uc3l_ek.h" +#elif BOARD == ARDUINO + #include "ARDUINO/arduino.h" +#else + #error No known AVR32 board defined +#endif + +#if (defined EXT_BOARD) + #if EXT_BOARD == EXT1102 + #include "EXT1102/ext1102.h" + #elif EXT_BOARD == MC300 + #include "MC300/mc300.h" + #elif EXT_BOARD == USER_EXT_BOARD + // User-reserved area: #include the header file of your extension board here + // (if any). + #endif +#endif + + +#ifndef FRCOSC + #define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< Default RCOsc frequency. +#endif + + +#endif // _BOARD_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c new file mode 100644 index 000000000..93d3dd96c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c @@ -0,0 +1,653 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Management of the AT45DBX data flash controller through SPI. + * + * This file manages the accesses to the AT45DBX data flash components. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ___________________________________________________ + +#include "conf_access.h" + + +#if AT45DBX_MEM == ENABLE + +#include "compiler.h" +#include "board.h" +#include "gpio.h" +#include "spi.h" +#include "conf_at45dbx.h" +#include "at45dbx.h" + + +#if AT45DBX_MEM_CNT > 4 + #error AT45DBX_MEM_CNT must not exceed 4 +#endif + + +//_____ D E F I N I T I O N S ______________________________________________ + +/*! \name AT45DBX Group A Commands + */ +//! @{ +#define AT45DBX_CMDA_RD_PAGE 0xD2 //!< Main Memory Page Read (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_ARRAY_LEG 0xE8 //!< Continuous Array Read, Legacy Command (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_ARRAY_LF_SM 0x03 //!< Continuous Array Read, Low-Frequency Mode (Serial Mode). +#define AT45DBX_CMDA_RD_ARRAY_AF_SM 0x0B //!< Continuous Array Read, Any-Frequency Mode (Serial Mode). +#define AT45DBX_CMDA_RD_SECTOR_PROT_REG 0x32 //!< Read Sector Protection Register (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_SECTOR_LKDN_REG 0x35 //!< Read Sector Lockdown Register (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_SECURITY_REG 0x77 //!< Read Security Register (Serial/8-bit Mode). +//! @} + +/*! \name AT45DBX Group B Commands + */ +//! @{ +#define AT45DBX_CMDB_ER_PAGE 0x81 //!< Page Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_ER_BLOCK 0x50 //!< Block Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_ER_SECTOR 0x7C //!< Sector Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_ER_CHIP 0xC794809A //!< Chip Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_XFR_PAGE_TO_BUF1 0x53 //!< Main Memory Page to Buffer 1 Transfer (Serial/8-bit Mode). +#define AT45DBX_CMDB_XFR_PAGE_TO_BUF2 0x55 //!< Main Memory Page to Buffer 2 Transfer (Serial/8-bit Mode). +#define AT45DBX_CMDB_CMP_PAGE_TO_BUF1 0x60 //!< Main Memory Page to Buffer 1 Compare (Serial/8-bit Mode). +#define AT45DBX_CMDB_CMP_PAGE_TO_BUF2 0x61 //!< Main Memory Page to Buffer 2 Compare (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF1_TO_PAGE_ER 0x83 //!< Buffer 1 to Main Memory Page Program with Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF2_TO_PAGE_ER 0x86 //!< Buffer 2 to Main Memory Page Program with Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF1_TO_PAGE 0x88 //!< Buffer 1 to Main Memory Page Program without Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF2_TO_PAGE 0x89 //!< Buffer 2 to Main Memory Page Program without Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_PAGE_TH_BUF1 0x82 //!< Main Memory Page Program through Buffer 1 (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_PAGE_TH_BUF2 0x85 //!< Main Memory Page Program through Buffer 2 (Serial/8-bit Mode). +#define AT45DBX_CMDB_RWR_PAGE_TH_BUF1 0x58 //!< Auto Page Rewrite through Buffer 1 (Serial/8-bit Mode). +#define AT45DBX_CMDB_RWR_PAGE_TH_BUF2 0x59 //!< Auto Page Rewrite through Buffer 2 (Serial/8-bit Mode). +//! @} + +/*! \name AT45DBX Group C Commands + */ +//! @{ +#define AT45DBX_CMDC_RD_BUF1_LF_SM 0xD1 //!< Buffer 1 Read, Low-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF2_LF_SM 0xD3 //!< Buffer 2 Read, Low-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF1_AF_SM 0xD4 //!< Buffer 1 Read, Any-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF2_AF_SM 0xD6 //!< Buffer 2 Read, Any-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF1_AF_8M 0x54 //!< Buffer 1 Read, Any-Frequency Mode (8-bit Mode). +#define AT45DBX_CMDC_RD_BUF2_AF_8M 0x56 //!< Buffer 2 Read, Any-Frequency Mode (8-bit Mode). +#define AT45DBX_CMDC_WR_BUF1 0x84 //!< Buffer 1 Write (Serial/8-bit Mode). +#define AT45DBX_CMDC_WR_BUF2 0x87 //!< Buffer 2 Write (Serial/8-bit Mode). +#define AT45DBX_CMDC_RD_STATUS_REG 0xD7 //!< Status Register Read (Serial/8-bit Mode). +#define AT45DBX_CMDC_RD_MNFCT_DEV_ID_SM 0x9F //!< Manufacturer and Device ID Read (Serial Mode). +//! @} + +/*! \name AT45DBX Group D Commands + */ +//! @{ +#define AT45DBX_CMDD_EN_SECTOR_PROT 0x3D2A7FA9 //!< Enable Sector Protection (Serial/8-bit Mode). +#define AT45DBX_CMDD_DIS_SECTOR_PROT 0x3D2A7F9A //!< Disable Sector Protection (Serial/8-bit Mode). +#define AT45DBX_CMDD_ER_SECTOR_PROT_REG 0x3D2A7FCF //!< Erase Sector Protection Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_PR_SECTOR_PROT_REG 0x3D2A7FFC //!< Program Sector Protection Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_LKDN_SECTOR 0x3D2A7F30 //!< Sector Lockdown (Serial/8-bit Mode). +#define AT45DBX_CMDD_PR_SECURITY_REG 0x9B000000 //!< Program Security Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_PR_CONF_REG 0x3D2A80A6 //!< Program Configuration Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_DEEP_PWR_DN 0xB9 //!< Deep Power-down (Serial/8-bit Mode). +#define AT45DBX_CMDD_RSM_DEEP_PWR_DN 0xAB //!< Resume from Deep Power-down (Serial/8-bit Mode). +//! @} + + +/*! \name Bit-Masks and Values for the Status Register + */ +//! @{ +#define AT45DBX_MSK_BUSY 0x80 //!< Busy status bit-mask. +#define AT45DBX_BUSY 0x00 //!< Busy status value (0x00 when busy, 0x80 when ready). +#define AT45DBX_MSK_DENSITY 0x3C //!< Device density bit-mask. +//! @} +#if AT45DBX_MEM_SIZE == AT45DBX_1MB + +/*! \name AT45DB081 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x24 //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 9 //!< Address bits for byte position within buffer. + +//! @} +#elif AT45DBX_MEM_SIZE == AT45DBX_2MB + +/*! \name AT45DB161 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x2C //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 10 //!< Address bits for byte position within buffer. +//! @} + +#elif AT45DBX_MEM_SIZE == AT45DBX_4MB + +/*! \name AT45DB321 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x34 //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 10 //!< Address bits for byte position within buffer. +//! @} + +#elif AT45DBX_MEM_SIZE == AT45DBX_8MB + +/*! \name AT45DB642 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x3C //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 11 //!< Address bits for byte position within buffer. +//! @} + +#else + #error AT45DBX_MEM_SIZE is not defined to a supported value +#endif + +//! Address bits for page selection. +#define AT45DBX_PAGE_ADDR_BITS (AT45DBX_MEM_SIZE - AT45DBX_PAGE_BITS) + +//! Number of bits for addresses within pages. +#define AT45DBX_PAGE_BITS (AT45DBX_BYTE_ADDR_BITS - 1) + +//! Page size in bytes. +#define AT45DBX_PAGE_SIZE (1 << AT45DBX_PAGE_BITS) + +//! Bit-mask for byte position within buffer in \ref gl_ptr_mem. +#define AT45DBX_MSK_PTR_BYTE ((1 << AT45DBX_PAGE_BITS) - 1) + +//! Bit-mask for page selection in \ref gl_ptr_mem. +#define AT45DBX_MSK_PTR_PAGE (((1 << AT45DBX_PAGE_ADDR_BITS) - 1) << AT45DBX_PAGE_BITS) + +//! Bit-mask for byte position within sector in \ref gl_ptr_mem. +#define AT45DBX_MSK_PTR_SECTOR ((1 << AT45DBX_SECTOR_BITS) - 1) + + +/*! \brief Sends a dummy byte through SPI. + */ +#define spi_write_dummy() spi_write(AT45DBX_SPI, 0xFF) + + +//! Boolean indicating whether memory is in busy state. +static Bool at45dbx_busy; + +//! Memory data pointer. +static U32 gl_ptr_mem; + +//! Sector buffer. +static U8 sector_buf[AT45DBX_SECTOR_SIZE]; + + +/*! \name Control Functions + */ +//! @{ + + +Bool at45dbx_init(spi_options_t spiOptions, unsigned int pba_hz) +{ + // Setup SPI registers according to spiOptions. + for (spiOptions.reg = AT45DBX_SPI_FIRST_NPCS; + spiOptions.reg < AT45DBX_SPI_FIRST_NPCS + AT45DBX_MEM_CNT; + spiOptions.reg++) + { + if (spi_setupChipReg(AT45DBX_SPI, &spiOptions, pba_hz) != SPI_OK) return KO; + } + + // Memory ready. + at45dbx_busy = FALSE; + + return OK; +} + + +/*! \brief Selects or unselects a DF memory. + * + * \param memidx Memory ID of DF to select or unselect. + * \param bSelect Boolean indicating whether the DF memory has to be selected. + */ +static void at45dbx_chipselect_df(U8 memidx, Bool bSelect) +{ + if (bSelect) + { + // Select SPI chip. + spi_selectChip(AT45DBX_SPI, AT45DBX_SPI_FIRST_NPCS + memidx); + } + else + { + // Unselect SPI chip. + spi_unselectChip(AT45DBX_SPI, AT45DBX_SPI_FIRST_NPCS + memidx); + } +} + + +Bool at45dbx_mem_check(void) +{ + U8 df; + U16 status = 0; + + // DF memory check. + for (df = 0; df < AT45DBX_MEM_CNT; df++) + { + // Select the DF memory to check. + at45dbx_chipselect_df(df, TRUE); + + // Send the Status Register Read command. + spi_write(AT45DBX_SPI, AT45DBX_CMDC_RD_STATUS_REG); + + // Send a dummy byte to read the status register. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &status); + + // Unselect the checked DF memory. + at45dbx_chipselect_df(df, FALSE); + + // Unexpected device density value. + if ((status & AT45DBX_MSK_DENSITY) < AT45DBX_DENSITY) return KO; + } + + return OK; +} + + +/*! \brief Waits until the DF is ready. + */ +static void at45dbx_wait_ready(void) +{ + U16 status; + + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Send the Status Register Read command. + spi_write(AT45DBX_SPI, AT45DBX_CMDC_RD_STATUS_REG); + + // Read the status register until the DF is ready. + do + { + // Send a dummy byte to read the status register. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &status); + } while ((status & AT45DBX_MSK_BUSY) == AT45DBX_BUSY); + + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); +} + + +Bool at45dbx_read_open(U32 sector) +{ + U32 addr; + + // Set the global memory pointer to a byte address. + gl_ptr_mem = sector << AT45DBX_SECTOR_BITS; // gl_ptr_mem = sector * AT45DBX_SECTOR_SIZE. + + // If the DF memory is busy, wait until it's ready. + if (at45dbx_busy) at45dbx_wait_ready(); + at45dbx_busy = FALSE; + + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Initiate a page read at a given sector. + + // Send the Main Memory Page Read command. + spi_write(AT45DBX_SPI, AT45DBX_CMDA_RD_PAGE); + + // Send the three address bytes, which comprise: + // - (24 - (AT45DBX_PAGE_ADDR_BITS + AT45DBX_BYTE_ADDR_BITS)) reserved bits; + // - then AT45DBX_PAGE_ADDR_BITS bits specifying the page in main memory to be read; + // - then AT45DBX_BYTE_ADDR_BITS bits specifying the starting byte address within that page. + // NOTE: The bits of gl_ptr_mem above the AT45DBX_MEM_SIZE bits are useless for the local + // DF addressing. They are used for DF discrimination when there are several DFs. + addr = (Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_PAGE) << AT45DBX_BYTE_ADDR_BITS) | + Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE); + spi_write(AT45DBX_SPI, LSB2W(addr)); + spi_write(AT45DBX_SPI, LSB1W(addr)); + spi_write(AT45DBX_SPI, LSB0W(addr)); + + // Send 32 don't care clock cycles to initialize the read operation. + spi_write_dummy(); + spi_write_dummy(); + spi_write_dummy(); + spi_write_dummy(); + + return OK; +} + + +void at45dbx_read_close(void) +{ + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory ready. + at45dbx_busy = FALSE; +} + + +Bool at45dbx_write_open(U32 sector) +{ + U32 addr; + + // Set the global memory pointer to a byte address. + gl_ptr_mem = sector << AT45DBX_SECTOR_BITS; // gl_ptr_mem = sector * AT45DBX_SECTOR_SIZE. + + // If the DF memory is busy, wait until it's ready. + if (at45dbx_busy) at45dbx_wait_ready(); + at45dbx_busy = FALSE; + +#if AT45DBX_PAGE_SIZE > AT45DBX_SECTOR_SIZE + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Transfer the content of the current page to buffer 1. + + // Send the Main Memory Page to Buffer 1 Transfer command. + spi_write(AT45DBX_SPI, AT45DBX_CMDB_XFR_PAGE_TO_BUF1); + + // Send the three address bytes, which comprise: + // - (24 - (AT45DBX_PAGE_ADDR_BITS + AT45DBX_BYTE_ADDR_BITS)) reserved bits; + // - then AT45DBX_PAGE_ADDR_BITS bits specifying the page in main memory to be read; + // - then AT45DBX_BYTE_ADDR_BITS don't care bits. + // NOTE: The bits of gl_ptr_mem above the AT45DBX_MEM_SIZE bits are useless for the local + // DF addressing. They are used for DF discrimination when there are several DFs. + addr = Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_PAGE) << AT45DBX_BYTE_ADDR_BITS; + spi_write(AT45DBX_SPI, LSB2W(addr)); + spi_write(AT45DBX_SPI, LSB1W(addr)); + spi_write(AT45DBX_SPI, LSB0W(addr)); + + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Wait for end of page transfer. + at45dbx_wait_ready(); +#endif + + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Initiate a page write at a given sector. + + // Send the Main Memory Page Program through Buffer 1 command. + spi_write(AT45DBX_SPI, AT45DBX_CMDB_PR_PAGE_TH_BUF1); + + // Send the three address bytes, which comprise: + // - (24 - (AT45DBX_PAGE_ADDR_BITS + AT45DBX_BYTE_ADDR_BITS)) reserved bits; + // - then AT45DBX_PAGE_ADDR_BITS bits specifying the page in main memory to be written; + // - then AT45DBX_BYTE_ADDR_BITS bits specifying the starting byte address within that page. + // NOTE: The bits of gl_ptr_mem above the AT45DBX_MEM_SIZE bits are useless for the local + // DF addressing. They are used for DF discrimination when there are several DFs. + addr = (Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_PAGE) << AT45DBX_BYTE_ADDR_BITS) | + Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE); + spi_write(AT45DBX_SPI, LSB2W(addr)); + spi_write(AT45DBX_SPI, LSB1W(addr)); + spi_write(AT45DBX_SPI, LSB0W(addr)); + + return OK; +} + + +void at45dbx_write_close(void) +{ + // While end of logical sector not reached, zero-fill remaining memory bytes. + while (Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_SECTOR)) + { + spi_write(AT45DBX_SPI, 0x00); + gl_ptr_mem++; + } + + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; +} + + +//! @} + + +/*! \name Single-Byte Access Functions + */ +//! @{ + + +U8 at45dbx_read_byte(void) +{ + U16 data; + + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously finished a page read. + // => We have to access the next page. + + // Memory ready. + at45dbx_busy = FALSE; + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_read_open input parameter is a sector. + at45dbx_read_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Send a dummy byte to read the next data byte. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &data); + gl_ptr_mem++; + + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) + { + // unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return data; +} + + +Bool at45dbx_write_byte(U8 b) +{ + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously launched a page programming. + // => We have to access the next page. + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_write_open input parameter is a sector. + at45dbx_write_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Write the next data byte. + spi_write(AT45DBX_SPI, b); + gl_ptr_mem++; + + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) + { + // unselect the DF memory gl_ptr_mem points to in order to program the page. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return OK; +} + + +//! @} + + +/*! \name Multiple-Sector Access Functions + */ +//! @{ + + +Bool at45dbx_read_multiple_sector(U16 nb_sector) +{ + while (nb_sector--) + { + // Read the next sector. + at45dbx_read_sector_2_ram(sector_buf); + at45dbx_read_multiple_sector_callback(sector_buf); + } + + return OK; +} + + +Bool at45dbx_write_multiple_sector(U16 nb_sector) +{ + while (nb_sector--) + { + // Write the next sector. + at45dbx_write_multiple_sector_callback(sector_buf); + at45dbx_write_sector_from_ram(sector_buf); + } + + return OK; +} + + +//! @} + + +/*! \name Single-Sector Access Functions + */ +//! @{ + + +Bool at45dbx_read_sector_2_ram(void *ram) +{ + U8 *_ram = ram; + U16 i; + U16 data; + + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously finished a page read. + // => We have to access the next page. + + // Memory ready. + at45dbx_busy = FALSE; + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_read_open input parameter is a sector. + at45dbx_read_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Read the next sector. + for (i = AT45DBX_SECTOR_SIZE; i; i--) + { + // Send a dummy byte to read the next data byte. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &data); + *_ram++ = data; + } + + // Update the memory pointer. + gl_ptr_mem += AT45DBX_SECTOR_SIZE; + +#if AT45DBX_PAGE_SIZE > AT45DBX_SECTOR_SIZE + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) +#endif + { + // unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return OK; +} + + +Bool at45dbx_write_sector_from_ram(const void *ram) +{ + const U8 *_ram = ram; + U16 i; + + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously launched a page programming. + // => We have to access the next page. + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_write_open input parameter is a sector. + at45dbx_write_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Write the next sector. + for (i = AT45DBX_SECTOR_SIZE; i; i--) + { + // Write the next data byte. + spi_write(AT45DBX_SPI, *_ram++); + } + + // Update the memory pointer. + gl_ptr_mem += AT45DBX_SECTOR_SIZE; + +#if AT45DBX_PAGE_SIZE > AT45DBX_SECTOR_SIZE + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) +#endif + { + // unselect the DF memory gl_ptr_mem points to in order to program the page. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return OK; +} + + +//! @} + + +#endif // AT45DBX_MEM == ENABLE diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h new file mode 100644 index 000000000..e5263b247 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h @@ -0,0 +1,270 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Management of the AT45DBX data flash controller through SPI. + * + * This file manages the accesses to the AT45DBX data flash components. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _AT45DBX_H_ +#define _AT45DBX_H_ + + +#include "conf_access.h" + +#if AT45DBX_MEM == DISABLE + #error at45dbx.h is #included although AT45DBX_MEM is disabled +#endif + + +#include "spi.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +/*! \name Available AT45DBX Sizes + * + * Number of address bits of available AT45DBX data flash memories. + * + * \note Only memories with page sizes of at least 512 bytes (sector size) are + * supported. + */ +//! @{ +#define AT45DBX_1MB 20 +#define AT45DBX_2MB 21 +#define AT45DBX_4MB 22 +#define AT45DBX_8MB 23 +//! @} + +// AT45DBX_1MB +#define AT45DBX_SECTOR_BITS 8 //! Number of bits for addresses within sectors. +// AT45DBX_2MB AT45DBX_4MB AT45DBX_8MB +//#define AT45DBX_SECTOR_BITS 9 //! Number of bits for addresses within sectors. + +//! Sector size in bytes. +#define AT45DBX_SECTOR_SIZE (1 << AT45DBX_SECTOR_BITS) + + +//_____ D E C L A R A T I O N S ____________________________________________ + +/*! \name Control Functions + */ +//! @{ + +/*! \brief Initializes the data flash controller and the SPI channel by which + * the DF is controlled. + * + * \param spiOptions Initialization options of the DF SPI channel. + * \param pba_hz SPI module input clock frequency (PBA clock, Hz). + * + * \retval OK Success. + * \retval KO Failure. + */ +extern Bool at45dbx_init(spi_options_t spiOptions, unsigned int pba_hz); + +/*! \brief Performs a memory check on all DFs. + * + * \retval OK Success. + * \retval KO Failure. + */ +extern Bool at45dbx_mem_check(void); + +/*! \brief Opens a DF memory in read mode at a given sector. + * + * \param sector Start sector. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note Sector may be page-unaligned (depending on the DF page size). + */ +extern Bool at45dbx_read_open(U32 sector); + +/*! \brief Unselects the current DF memory. + */ +extern void at45dbx_read_close(void); + +/*! \brief This function opens a DF memory in write mode at a given sector. + * + * \param sector Start sector. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note Sector may be page-unaligned (depending on the DF page size). + * + * \note If \ref AT45DBX_PAGE_SIZE > \ref AT45DBX_SECTOR_SIZE, page content is + * first loaded in buffer to then be partially updated by write byte or + * write sector functions. + */ +extern Bool at45dbx_write_open(U32 sector); + +/*! \brief Fills the end of the current logical sector and launches page programming. + */ +extern void at45dbx_write_close(void); + +//! @} + + +/*! \name Single-Byte Access Functions + */ +//! @{ + +/*! \brief Performs a single byte read from DF memory. + * + * \return The read byte. + * + * \note First call must be preceded by a call to the \ref at45dbx_read_open + * function. + */ +extern U8 at45dbx_read_byte(void); + +/*! \brief Performs a single byte write to DF memory. + * + * \param b The byte to write. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_write_open + * function. + */ +extern Bool at45dbx_write_byte(U8 b); + +//! @} + + +/*! \name Multiple-Sector Access Functions + */ +//! @{ + +/*! \brief Reads \a nb_sector sectors from DF memory. + * + * Data flow is: DF -> callback. + * + * \param nb_sector Number of contiguous sectors to read. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_read_open + * function. + * + * \note As \ref AT45DBX_PAGE_SIZE is always a multiple of + * \ref AT45DBX_SECTOR_SIZE, there is no need to check page end for each + * byte. + */ +extern Bool at45dbx_read_multiple_sector(U16 nb_sector); + +/*! \brief Callback function invoked after each sector read during + * \ref at45dbx_read_multiple_sector. + * + * \param psector Pointer to read sector. + */ +extern void at45dbx_read_multiple_sector_callback(const void *psector); + +/*! \brief Writes \a nb_sector sectors to DF memory. + * + * Data flow is: callback -> DF. + * + * \param nb_sector Number of contiguous sectors to write. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_write_open + * function. + * + * \note As \ref AT45DBX_PAGE_SIZE is always a multiple of + * \ref AT45DBX_SECTOR_SIZE, there is no need to check page end for each + * byte. + */ +extern Bool at45dbx_write_multiple_sector(U16 nb_sector); + +/*! \brief Callback function invoked before each sector write during + * \ref at45dbx_write_multiple_sector. + * + * \param psector Pointer to sector to write. + */ +extern void at45dbx_write_multiple_sector_callback(void *psector); + +//! @} + + +/*! \name Single-Sector Access Functions + */ +//! @{ + +/*! \brief Reads 1 DF sector to a RAM buffer. + * + * Data flow is: DF -> RAM. + * + * \param ram Pointer to RAM buffer. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_read_open + * function. + */ +extern Bool at45dbx_read_sector_2_ram(void *ram); + +/*! \brief Writes 1 DF sector from a RAM buffer. + * + * Data flow is: RAM -> DF. + * + * \param ram Pointer to RAM buffer. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_write_open + * function. + */ +extern Bool at45dbx_write_sector_from_ram(const void *ram); + +//! @} + + +#endif // _AT45DBX_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c new file mode 100644 index 000000000..4c0ace2f5 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c @@ -0,0 +1,234 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief CTRL_ACCESS interface for the AT45DBX data flash controller. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ___________________________________________________ + +#include "conf_access.h" + + +#if AT45DBX_MEM == ENABLE + +#include "conf_at45dbx.h" +#include "at45dbx.h" +#include "at45dbx_mem.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +//! Whether to detect write accesses to the memory. +#define AT45DBX_MEM_TEST_CHANGE_STATE ENABLED + + +#if (ACCESS_USB == ENABLED || ACCESS_MEM_TO_RAM == ENABLED) && AT45DBX_MEM_TEST_CHANGE_STATE == ENABLED + +//! Memory data modified flag. +static volatile Bool s_b_data_modify = FALSE; + +#endif + + +/*! \name Control Interface + */ +//! @{ + + +Ctrl_status at45dbx_test_unit_ready(void) +{ + return (at45dbx_mem_check() == OK) ? CTRL_GOOD : CTRL_NO_PRESENT; +} + + +Ctrl_status at45dbx_read_capacity(U32 *u32_nb_sector) +{ + *u32_nb_sector = (AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) - 1; + + return CTRL_GOOD; +} + + +Bool at45dbx_wr_protect(void) +{ + return FALSE; +} + + +Bool at45dbx_removal(void) +{ + return FALSE; +} + + +//! @} + + +#if ACCESS_USB == ENABLED + +#include "usb_drv.h" +#include "scsi_decoder.h" + + +/*! \name MEM <-> USB Interface + */ +//! @{ + + +Ctrl_status at45dbx_usb_read_10(U32 addr, U16 nb_sector) +{ + if (addr + nb_sector > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + + at45dbx_read_open(addr); + at45dbx_read_multiple_sector(nb_sector); + at45dbx_read_close(); + + return CTRL_GOOD; +} + + +void at45dbx_read_multiple_sector_callback(const void *psector) +{ + U16 data_to_transfer = AT45DBX_SECTOR_SIZE; + + // Transfer read sector to the USB interface. + while (data_to_transfer) + { + while (!Is_usb_in_ready(g_scsi_ep_ms_in)) + { + if(!Is_usb_endpoint_enabled(g_scsi_ep_ms_in)) + return; // USB Reset + } + + Usb_reset_endpoint_fifo_access(g_scsi_ep_ms_in); + data_to_transfer = usb_write_ep_txpacket(g_scsi_ep_ms_in, psector, + data_to_transfer, &psector); + Usb_ack_in_ready_send(g_scsi_ep_ms_in); + } +} + + +Ctrl_status at45dbx_usb_write_10(U32 addr, U16 nb_sector) +{ + if (addr + nb_sector > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + +#if AT45DBX_MEM_TEST_CHANGE_STATE == ENABLED + if (nb_sector) s_b_data_modify = TRUE; +#endif + + at45dbx_write_open(addr); + at45dbx_write_multiple_sector(nb_sector); + at45dbx_write_close(); + + return CTRL_GOOD; +} + + +void at45dbx_write_multiple_sector_callback(void *psector) +{ + U16 data_to_transfer = AT45DBX_SECTOR_SIZE; + + // Transfer sector to write from the USB interface. + while (data_to_transfer) + { + while (!Is_usb_out_received(g_scsi_ep_ms_out)) + { + if(!Is_usb_endpoint_enabled(g_scsi_ep_ms_out)) + return; // USB Reset + } + + Usb_reset_endpoint_fifo_access(g_scsi_ep_ms_out); + data_to_transfer = usb_read_ep_rxpacket(g_scsi_ep_ms_out, psector, + data_to_transfer, &psector); + Usb_ack_out_received_free(g_scsi_ep_ms_out); + } +} + + +//! @} + +#endif // ACCESS_USB == ENABLED + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + + +Ctrl_status at45dbx_df_2_ram(U32 addr, void *ram) +{ + if (addr + 1 > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + + at45dbx_read_open(addr); + at45dbx_read_sector_2_ram(ram); + at45dbx_read_close(); + + return CTRL_GOOD; +} + + +Ctrl_status at45dbx_ram_2_df(U32 addr, const void *ram) +{ + if (addr + 1 > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + +#if AT45DBX_MEM_TEST_CHANGE_STATE == ENABLED + s_b_data_modify = TRUE; +#endif + + at45dbx_write_open(addr); + at45dbx_write_sector_from_ram(ram); + at45dbx_write_close(); + + return CTRL_GOOD; +} + + +//! @} + +#endif // ACCESS_MEM_TO_RAM == ENABLED + + +#endif // AT45DBX_MEM == ENABLE diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h new file mode 100644 index 000000000..de24fa371 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h @@ -0,0 +1,164 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief CTRL_ACCESS interface for the AT45DBX data flash controller. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _AT45DBX_MEM_H_ +#define _AT45DBX_MEM_H_ + + +#include "conf_access.h" + +#if AT45DBX_MEM == DISABLE + #error at45dbx_mem.h is #included although AT45DBX_MEM is disabled +#endif + + +#include "ctrl_access.h" + + +//_____ D E C L A R A T I O N S ____________________________________________ + +/*! \name Control Interface + */ +//! @{ + +/*! \brief Tests the memory state and initializes the memory if required. + * + * The TEST UNIT READY SCSI primary command allows an application client to poll + * a LUN until it is ready without having to allocate memory for returned data. + * + * This command may be used to check the media status of LUNs with removable + * media. + * + * \return Status. + */ +extern Ctrl_status at45dbx_test_unit_ready(void); + +/*! \brief Returns the address of the last valid sector in the memory. + * + * \param u32_nb_sector Pointer to the address of the last valid sector. + * + * \return Status. + */ +extern Ctrl_status at45dbx_read_capacity(U32 *u32_nb_sector); + +/*! \brief Returns the write-protection state of the memory. + * + * \return \c TRUE if the memory is write-protected, else \c FALSE. + * + * \note Only used by removable memories with hardware-specific write + * protection. + */ +extern Bool at45dbx_wr_protect(void); + +/*! \brief Tells whether the memory is removable. + * + * \return \c TRUE if the memory is removable, else \c FALSE. + */ +extern Bool at45dbx_removal(void); + +//! @} + + +#if ACCESS_USB == ENABLED + +/*! \name MEM <-> USB Interface + */ +//! @{ + +/*! \brief Tranfers data from the memory to USB. + * + * \param addr Address of first memory sector to read. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status at45dbx_usb_read_10(U32 addr, U16 nb_sector); + +/*! \brief Tranfers data from USB to the memory. + * + * \param addr Address of first memory sector to write. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status at45dbx_usb_write_10(U32 addr, U16 nb_sector); + +//! @} + +#endif + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + +/*! \brief Copies 1 data sector from the memory to RAM. + * + * \param addr Address of first memory sector to read. + * \param ram Pointer to RAM buffer to write. + * + * \return Status. + */ +extern Ctrl_status at45dbx_df_2_ram(U32 addr, void *ram); + +/*! \brief Copies 1 data sector from RAM to the memory. + * + * \param addr Address of first memory sector to write. + * \param ram Pointer to RAM buffer to read. + * + * \return Status. + */ +extern Ctrl_status at45dbx_ram_2_df(U32 addr, const void *ram); + +//! @} + +#endif + + +#endif // _AT45DBX_MEM_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_sdio_v2.7.0.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_sdio_v2.7.0.a new file mode 100644 index 0000000000000000000000000000000000000000..e01ab14a691e081f3275b30325962e774806089d GIT binary patch literal 11978 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 Z{61je@7DZ1;6n_5AI4hv`+*hze*vLUPqF|2 literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_spi_v2.7.0.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_spi_v2.7.0.a new file mode 100644 index 0000000000000000000000000000000000000000..9aa4f2410792b1311cf48b51b9b0b5c7e85cf6f2 GIT binary patch literal 13134 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 literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_wl_sta_intwpa_v2.7.0.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR1/GCC/lib_ucr1_hd_wl_sta_intwpa_v2.7.0.a new file mode 100644 index 0000000000000000000000000000000000000000..00536f5dcf8c1c8d99b6bcfcf75cd697b0d59c70 GIT binary patch literal 1007102 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 z%0A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%0DWDznokcpZuoutF4SrCztJ45v`5nt+Kl4mqZ?7 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%0A8U-8r*>hU4Mxt!>-;9yMtar9*Gz~%Hhz6cc(V;_ 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 I1a|!Y3p6c)DF6Tf literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_sdio_v2.7.0.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_sdio_v2.7.0.a new file mode 100644 index 0000000000000000000000000000000000000000..a61dea3d026b10fd3f8ad131f83ee232421d191a GIT binary patch literal 11946 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 LTKETmHUEDBMNds- literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_spi_v2.7.0.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_spi_v2.7.0.a new file mode 100644 index 0000000000000000000000000000000000000000..688319295c8d90082c9b0afc4f4aa78dea5913d2 GIT binary patch literal 13110 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 Z0SiB^`4}q~YWNs0exguZj90nh|2JLLktzTH literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_wl_sta_intwpa_v2.7.0.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC/lib_ucr2_hd_wl_sta_intwpa_v2.7.0.a new file mode 100644 index 0000000000000000000000000000000000000000..0b09aa811b4c7b20fb53d507fb6050128124889b GIT binary patch literal 1004426 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%0DgPi?`G-9}3m*ymBiswE{G(vypYZ%)_(<TN z<QgR9kARhb#`Dj@M*{yG*BvQ;6zutl{FpE2bwrde`>Zn0m;G6p@+&>R3O*9}^SE|M z`PE?M*LnUD_(<T_v#gZg09O8T&(FX|0>6c8c$D7?R(_Y~cf&^lzlZ6q{7qox`|*|Y z=pupN&viA*-vw6wes7=gOdx@OkV9PM9|9{s>-mgl0tx)1Tr;EmV_@YEd;UrINZ^mK zB$a;(to(DHKMEfS{4uU+@%+39?D=_RF+Z=I%jFQ|=cPETRemK{`HY>cue_RA0zb|5 zD$1_~E5F|J8N)mz@Eh61D8C7;{EX+fz()eVHHzM+{5G)iyF9-eJ`(snY<`u$39S4r zp1%V=68QaGXQKRFVCDPq%{u@e3H*a>`jmeNto*FEe*``f_>Auj%0C8H{z=atfsX|K zDR#ZeKMhv?InN)3j|Bc0*L!&Wj0o)cGfHCqj56-aM3g_HoXxfJQ()!K^ZaV~NZ{9S zZHDsGVCC0)egk|Y@EiHPN%>7+<+po&2Ye*(yZGv-{BE%FcX)n3d?fH0qnnjK09O8x z=O2cT1b&uXzw(cOl`k;|&o~uJ;GgEuK>26D$|ugk&nLzr%Fjos@%;QG*z@z}d44r~ zB=BqaZC&}q^FzvS^89A_NZ>E$6sqzwVC54l=T8rOB=9%!+qCj~!OHjX%qNy2fxnBd z+sYpRD}Tt_Czkn0;Ai>$SNTW4${+FkQ}B_%C!ULxPdpcSeu0lq0kIKLegW~h)$<F8 z&#lV$@hKoSB7skQYL%Y>D_>#)E+8Hvflo|6to+Sj<qvxPe)ve>AK=he`3J$uKjQgE z;Uj^6jNhb`e;lm*lb%nU3M5v_ImK59#izlZ&sP%Xe_=kyP>Ay78JM?ueqjk%`SU!# z8a@*EH5_UxKMhuXgXcHGM*_cz-#e5~oPSIC?VjHO9|`;}4tbT&oLr*(9iGozD>U=1 zkoopcls^Dg{$bD0!bgJrBOD$p|0r1br#=4+d?fJC^81DI&w)LEW?9UiS<W#gqWqaD zPC0r0%u2BGmw0|Xd?fIR+nvfMZg(o*$7d$75ea<avsC%rVCDPx%<PAc1U~WknDU9w z$CQ7-`*RRJ68MKWJXZb?SotSBe;7Uz_$N7sto#wM^3QtyIrvE6kMi|K`D0+uPbOo& zJY!Qt`N=ZQ@p^u;9ISjlKa<t)k-)FvRFd-3VC6S?`_1r?z+cY!Oyy_5%J=b4cECph zzl-yh%I^j%zt`K}3?B*nKF&QVe+yXo`#gUTJ`(u*Ij^Yv17PJJ_WUe-B=C=L9#8p4 z!OB15`DfuHfzMdnr+miZKF=>IiTOoke5XN_UqsA*+w+T3VCAPhzZO0c_;s9rQ2r9I z^4mP0xE3LS-@*5H<#&OVzs2)+z()eVpYPqu-vw4aag*(H(ScY3{~+Iam468A`0G2? zuU^r$aYN7N=5JU~RaLd{)^z%|k1YB~Z5o_T+rNt!FRrSpU9|YNMewSsT8sbWuBN*a zdER71N~Hcu{tArK!ee|U+*txS4}CEDEAD-~YvacIdCkp+PT@3`JjmSVp$uau5+m)= zpQh*TZruIJ)Sm9-?18Jl`)X+_T9JG{Ih@y+Oy73)LNuCAKDTz)@1LDDH(KFqa^!t9 zUEEmo>iKB&Trw4%KO7~_A5KKS7^^6ZZBw_%)vbJPZJa~9$z7j1`+79Gu;(l{$&5VB z{yBBFxTx_|D(W3c&3H2#J$NylOjkbN9@pqeWs=fjx~HdjcV=X5^w{oY-FTKxUi<B{ zOb01@@M2Gj8p#L8@MvyT>Q%g1ahUu!;(v3$E$^21+&6l#{^fh67VlK=O+TG_e)n~0 z_XhRtCD|z5LmPj(J+pn;kN<8*FK>76l_<IQujg>je?5_S<$Oi{`Ju$jS4Jxe&Y!PH zyjt?!vI%uYQ#<GMmp_~S&g|#3m8~W6ruKAo`jcBTTbDH!b`0%Kb{x)>WD6FIZ9Tlb zeEV-?3M7`VjFv?&jaCrXguI`ARK&gaJsEox|CRUJr=FklT>5FXzr7^2)7f7py=a`- ziTzG*fBWIB*V3;MY>iB5D~qk2))tmh>6@LU<j_r5KiQZZ`f20LtDhV?KhZ8$vslee zwmR;u_jPCabLsDldn++d-zF`bUlS#FUz_XkCH>7A6KCr$#8x`lICFQZ^Xt2d#`~@# zI+c%8&xQ1EwKa6~E!lcA_56in7f0sw_gs_yPWdz2ubchlp2D){>^w`m@!4H4^pl~V zpI;RvhmH*WePgn*=-}qR{^Ardc$4V9IhE&O9*ns*Pc6K+r@Z`GT6`v_#ndlOWXrZU zZqMw#W@zc|51)S^Dm%YCn%y|_=ikeg6*taqJU<j&WHv`bnMr*eqxG?=T0e1v%)ave zIRjEU`kjlT>5}c&3HI}_F<s<lPtH8d<o}HM{Zr<5@!m7XE;`#kxMldpsoKyPbRyAH zoG$8~b?xZvf!TY6`GaC9d%O9+tczw%v@~w(e{@-HpO}xMw-&N(nj_nflD#@}QqRd8 zU-<QsJ=-(Mz1x>b6l5FnwAqHFE7v8TNHSv6Y%?TgVt>)MrnUbU?}q*K<I~z-`>xoZ z-v4*U{`CGYdpG>Qb$b7AdpGP~BK|kO8}=7YAD_AJhW$&-|Dtzl|HQ(o4>iwiPG0yA z7f-N{{&M+_MQ#te?#6Yuu4|B0753A&O|_rS<jek9wqKpe;=SAJ(oenYw_>k+BAU1T z&h5?hsqH=W9BaIiiK<??Ke{oU+}^(6XTys`rryf={o{naquZDFq@R>+=<eTaoSA;H zcwlQq<1DezIkeU6*{9!6%6gX+Z>#OTH?{M^k&9<I_K@R|skhSwvYnRWkfhsAr=OCR zr{7Y$KJ1+H+`?J9hxc*pS@`+l-9+-9##y8PG2Y%c7OWfEo?PdTO`bk{`5wf_VLdZD zt22BBNtdMdv}8JGEi8(+j<SDW=#Jz%Q@fL|+!oE*J-4%NcXj8o-M4jCXTxz5KC-Wz z^KAKZ3-6uXuYSt@>cTfKp7PO{D-q8WWD{HOYI#KV$2QjEd$0Vx>8Eu6m9E_SVcAdq z`0skhS{^BOd&I3x*{E=DvD;f^lT(koj14~Zrk+2)ByuC$m^{l-b*3mAz5JbvV+)HH zE|HqjKjCURaYOoOYG>Kr#{6{2>0d^pTT{aF@lK_`zcsVq*o)t}_@k|EFVRk{+kLE` zJUsmf$~;Mb#~u}@`m-Fjr>{*vzWsN%-@V|N9KX;1ptMyy@Y6L>@$ikqH>ywaDRTe| zJ2kSwqfa&#$XddyU?E-oLT269w-;UMEWq~Zg|l*P^9^Qm`kJkcTR+iQfc4j+(KGa0 zJd}C;Lgt0F>Bg5DqlUtP^w8FJ#^|(2j?dYN-v#{2`@YNrv6M|5IF>sP7?Er`b>L`L z_O{a=`^tPv{|9`&R`%typDFfxbB)W^yS8SE_oUs(%T^@0SK6D|*I4*UdsJNT<ST2V zSsjet__qYwo%V<<?$zbmOn+TQLR(F*d*R3n|9Af0my08}e&mSat+mJY^q(|;usL<% zyBCk&`q-x0-PdkPrFPQWFK>#PlbdeL?Q{Asq|aNI#l0@vlegDyKkKXW_tN*9UTKX! zkX}d0utX%2pJglLwzPjQdVLbk;`)?}(?=$Hyx_n7;C44^$p!y)c#*9&z8$dRe<HEq zSWl9DLUQi6zwzz4!{2Z%F8Eodgd^gs&W~0U>ak{HlB3*T%KChG$^XaR`@qLpop-)7 z`sa}>gdoNl8-)nsfB<8UjRP_`MA!lb5X8YwqNEOzkj6+LONu0eow%t22AtpkP7HRi zlhTByG+|TPWqWCtyE|>USwozZ?e%uuUUutGOB3Rd#0d^D)WQ4xo%cLPXU4Kkld!v= zd+)K2=J!13cb@Z{=lps9%)B$yxNdpNtY`maAXPtWZ|;_V=}(<B+pT-GJ^wqM^<7PS z^(IwFjLRFjX&iO-Ww*@ye7-VYwK~(#y6>}mKET<U?rcrp`{SC^s$}h@npE9scr#wR zy!NzRf4<A?7Sr>8@sVl8baq?APUhYl;=`?}+fnb@f8}qA=^tlKOFup^|IkaB+6Aj? z8y4^5TeyGx?2#k+OvBDCwW<}|3IP8ma>PK_%UbmZe!)I8t(a1~4bF1%mpyKRJ>d`S z`W|Z&&Xb8?DgbQm%RVFv`MQ&Sa8MT6*|_d^ZRA?~YySTJ@$I?#Z|r(-JJ$9MFV5{< zc;5Z}`TEgM&c9Z*hnKwX(7I3lVsUC$Qlt5TU(8JHS$739gw>wJy?#fs@8+83|43F? zDf@KfEoO3^`Wu{zz?<`LIFq}2{-OH^ev(hMy)}N)Lant>%piSaQi|LSaL<`X?}S{f zU+vCUs&jMqA56JB1}_nv>_e;~Ck?iKvvvP#>8j3Ij6vp`ExD&Y(_gv+|NVLU52c$r zv&Gcj^Az`~qn2Dla2(y5+bvek9iy@j=H^P;cT4K!>_hu*O&v+*i+sR?S5-FHny>w4 z%jYxS%)fW<z~a$Q{^F9<!w2d#-x%A8_wM!cp}Ou1VsFRa>_e|DPCfR%LrKY@XODFL z__-sU`RR%6A1zMpwz7tuFF$)^5v7ZgbEJ%$vz<#c_w$*NFMi|MEnj@!>ztL{lKL|9 z;}A#q6n@=Q<M!NqZLVo_`!^o@f@a_$ym=(Kb5u<4e~ruHS;h1(T2fy*^}z#`Gv8Uv zP=2?c#p(TrDQ|M+o3g$<4Ah$dd(Pw-_HuUH<k9^8ta|USqO-a6Iu6x2FN^8D=OwE= zx9i^i{y+O%ZG2o;t*J-sgl!D``fae5+M3^yeJELt`OM}4oh{gUpT!t!z3cUMx1P2Q z{DSo~|Cj71ZMV1PW}UJ>*Yq>y0{0^7e{ra;hLZ14;?_dUwUF*f=e1jLhtjnX_7Xpb z{2sH`we{e@&uMGcx04yVw=TCS*Ysfj-U>=tX;#Wkar$KZ_AEH_W4R?WADXe{)CUyV zeC45Mjy#claKUq#9W`!l71Mly+1E!t`MupoUcA7a6%|u!T3`Q9M|O>TvSH_|&mGy7 zXfr#K*;-8J>gWBRdlxQvu3^XPb*YLfXC?WY%QQT^JTrS+W=9ggHLWA-b1%JeN$SRA zef;o})Ocr|?2oMfVQXsbE0?Bje3iSM#nk@YM?RaYEoNr5Ci48(PQ65P{?to~sl+y~ z-s<cf6-k>rQtmagW5IKIcib=U$(q&$=eeH!{oH%i`-&a8Yv`vt3Z-^{p2=M!eXgmP zDd+C{H2Q14_w6IQlGZ@aq;^j76R-A7@QI8hj#KW<HqOU-WxgGL{X6N#+_Vd8S5A9_ z-&gtGq12(3E!l@oCElN#CGR-TdQk1KH!fjs?2zvDZ@+OkyY=<w-Z=F7?l*oWO?%77 z7dPx=$9j46cFD!m%KCl%Rn1Sewx54H@&5eZ{pio6<!`!}Zm<1(>+e1FCzQQ(h?URP z2%JxB6{j{S{X<v!`d_~B)Ard(U)!^tS@}_{$gTgE*7V7`PhCvO((gZpB{u?|+46nf zg4zGvkpmxJT(>jX$@)9L-qJtt^~L%60oPvQRc;-#V?3E1`=32>kUHFflmF~Ssa#Di z`+d%P+iSHtxFhL~<Mlhw{|>9_aIVIX>y3OkznD36DE+wlb7=P)D`hA5?Zh4)J)V6S ze_K9&>22%t(_5Z(QKLp@3q77Yd&j)F(#(En_TSEaq5XV%IP+f?r{DgQOHzM5bLXqy zKC;O1TNZxiryoh}ZFk)HKPqN?{L;7l+4~N?(w};mGxo*K=awx4?Psgbk2+HAtGUCq z+F!lg^K@=zG1ERB%YQU;C+#%Q&dIdU=~{5Tr=0N|{lwP2KYB{zmECd6(}#8+SuMu# zuEUNs&yJ_pxi9w+wsD_-iR|aH3)brxoXZT>+@I;J{L!Io_4m1g&OUh3Gnwswu(z1% z++Iv^UV6z%e;3YzG6$-(>s6<Ia_FPn^RMQ;l&bVk4qqeQ!o=?2_SYEepR(q)2fW7m zPu6<N<D56VHe+$IYF6uk>CCD0%f%yylC_=PQcT_I=F58RCDCkQHn{Tv%@cWDvE$BF z@2OkxLK3027LNaEIEN*}Nw;O2*D-&2$7b^CG+DW>G}BBCl@5M+{`H5swmS2I*ME?j z1Iq9^_wYZa8ejjX)FR|8@{(UJNj3k=V5<F>t*J8?p2wN)75V9jHMKX7^X_75@Zt9z z`gu6p>(2cA^wgf_3kC<5XVRRbr~Ntl?+@muFR05-U$9CwHKX#?oWHm^yuWM?|Ip3h ze068N)?sgJe)`DzWFFtL{Tol+yM1!sKi+tss7&XR&1-U*>=$P|xV(k^eCO<kJ~oSY zebQ|it*oS<ZFAK}`P{H`{=Z>8?wh^yW2bdCbxn)CaBu3(a4ps!A*EC44Gr}tNl_p9 zp}jMfb<L5~N=RocZK%4>zd;!Dn#$@mm&vjb^K)f#dAsHI<VRe;oZnDZUe5p5%4#ca zue^SF`znv)G`GDWb5Hs{sY~>WBE9-(sjs~uduMuM#a)$mSKU*6Uyby<M;%f}dqd-0 z>ANfLsl2aB%DAk%y`lc@^gR{#=~HfHWy{Oz#Xe$lN*`l=v$L4|8E<cB{&f0|iaRSe zR^3&7cg;Q1?o$|2%}KHQyRN;V>5lZB6&ow>s=B-So|^moo7!<-2bVU?*qFYn;_k|O zs_v^!D#w0hqdE5L=$npV=dISq{>S}hoQ@jf|F4(NiRRAMr44hIHq4z!f4bt1$~&tz zR^L@~_q2O5_tnBFo9`uSA&z0+6m#o%b>sQf9<7Jw*so*E>A3E()^+C;{>1*aO;H~E zyQ*yc#&tW}8)n>DwvNi`mh200pIFONuG5$^atuy9W<@t<xhcmi_O*qzcx6NVed%lF zWv*;+TbQ1w35hsVEpM1{U;2i5jo0|{xuKK?JEz!tKH8AGX<p-%4b3;sbIf==Rz_nP z`-`10cPc*AkiC9hW_d$n(ooEMD(2l-%8UJ;m}2~*@-%ztao7A*^EIlUnyNe=W5y`6 zRNH@Ys3|$tbVvJN)VK5_Zp_wAIcBYsF|XLj__sGaUQxQASElc4c%ouy!;=*&=Vew> z+?_-}dA`S2uV_5hyr@jiXjnHoFMmx#?xPK@9Ws$yo>++ct>fL&hL-4%ch$0Gmo&Fr z(9$t5w07ME0~fYlbndy$i{@Q8k4J~*jjdlZ-g6VL<D<!IzoF5>V9&hq!n*O)yuP0C zp47aX#>P_ff_C0@`ux<u(7^aW&)~o(3P%<76|gkC{wRIEXQ*$mu%fqTXxZvD$0%(t z`L&B>!$YeFMvuuI7z@7>@#dLV5B0sNwvWxrU%l+=q4C1#>Ym=hiorr*<jUdE!fl1o z<NL6pFn;;qz|BKz3Pa<^XJY@uJ+~ItjvUtoz5;)FVRT@)Z^d}e==iZCx_tQd!svB9 zLp?Vaj@R@ue%52Wzz+ai&1kP&cSGUh$B0s(Ox0v!rK8YuTjA=ZD^_4-EtBCGmICeg z;czsJ9gCH;>7sC~_LlYc4BcF~s%M<vFt`rK3gatB2X4N(z=!gV=b)zQ^~2)>s|R|i zIy^Mhc=)(QQ=)zN_MxMCoX|9^ADnVnlk&v3#7};3;dmZ~3ds-FoS;7myKE{PtMdst zUtn7Ch4SOjj?tZE{MgID_=>dyy#sxPW7Fa_avWB)K90j;NGP3hRwaHjO~!@?<<69( z$xZ0;zBShj-?V}+`#;vqD&dN_e0X^9#N=hkPbpkIw0d}|HR7!n#x=d<!8i-=*u-Rf zJ@?qO%lrCH$eA>C<-i~t*a@wjh{i%vqsx0nd)7>4EEy3|CWC#ffhplyu#Zo^Drr9P z^7vHmsfGLa<jFX}KR$Ib?8oO#ntU_fdaG}S8V|woU3gO)pN+yzd}4W6+v72oKE{at z@f*~*M{D6&<YYaRjODTCQqqazo4Rg*U*jnZUU&7fD|-e8`DKk`@7s24IhMgB9PQDG z#tE1ur!U9nULO4z(6KwLlYx>WJw}f)CQOCpqr>BcULC8BO=~X<7RC$L7S<o%J**vv zlMGtig{gv^u$GREEiV*Cwa={`E2FI);S`e}_TbcTz@fo`W1cT0CpyPHCDe!P$A)_c zw4)xEc=?HF$;ihYoFZJk?xd;9waM>`9cy4Buck2KPN#iy=GC!iM~D6R-MnUafF*d; zN%ZZ7fv%g@4h;5njVk(6#ys&z29EEHR(aW=x*n}4=tNr=5c9ga+#?sG>$>=*m##j3 zE5%(?%<Jvx?dS3#=E#-85LXu*o^I<IOnCa;o<YvRhQ_0bf|bH(R}Yi@Hf(UxYR#-2 z<LQpEu94wEs=KR}zQRpwZ|+*nK?<gRp^j7V$&0o(gPI}f7OuO=$m=4qzXS&HkfQs` z1IrNx-tq!}bWik~WYrf>^4VVYw;$d2L!b)D-!4w+dR{jSPsHQ<G)nwy_w{&j$^6rA z=o$vz@)CcRkma9lE1G{F0LT69Kz27~c~vqjePqvl7n%Aed%BHj_6ESQz3Y+BAX_qf zeJEmkcF$Y(bWh9d-2;y84I;<a!e-+RUxyc^Th&+V?{u))`?uiO-X`Q`vL&-8KMVtJ zUB@4@r#A-7-hTtf_8voy@3okXy}k}FO1D1AAG3Ed*xO5M{9}7hBP%wR%-$O)3<GaH zz@L?5`K{m2HGAiSV|y<nYo1y1<B`@pjqDA!Bis1C&6gpkd%&^1gUC%}OJ;8sirC(A zWV3ggFOxmq%ZlykyCK4y0~&VUuN>QxeY2<UPf?ldssE9GX})V^%KrYLufvPdU_XD% zp1zyK?EM`$wx{n}X&_s&{_a5$`!|kk_H3^}uF$>`+iOAgHb4Qp2hU=A6O@@f{XVt# zui{*AZ0|hesqD@1b$C%4+{_=d$Gc;}UI#d~Hy3#-dsq27yeJKB=a1Pt6KwvCfn$5~ zkf*XY<m>RFH25fg%-*}eX76EeY)@-LJWJkog?@uub$l9p0$}#u4K{m4aBOc0@>Kr) zdtZkarNO89WA@Ggo4tPm$M!Bmo?^YZ-`tM<+ZEZ<n0kBq-h~o-S0Yd0U#0CK6e|sC zKAL~p1I(WMiT%qX&m~*(K2<J85&O3fSzN8J3&>`#0FLcx-Y+6sGJD-9B719EkQHm$ zoA1l;xAHD<Z0|ATKC&gVH-RFyC(Z+8*|TGx?ENWnWUoRo=^$G&dw+}~ws#QO>|N-~ zWbZ|AY_Ai!n{3JK{R4`~-q1$mB3b^uhpaN}x!*dE?LCElIoXo8Q6;}4d&BL>=HJD> zO!gG}$X;azxr1!U>{-mces~YS?Ah4M-fy9g?X5(f%HD_2NB)iUMfNWBWwQ5aaBS}p z<Z-ek^KS!+*xo_pB3bc!FIi=>_XoU2_NrzeuOnMBdtX5j+57mD$kyNY`7+si7988# zj66uTWcHpx5!oAUM=p}(-{oYL$=;87jqM#m&XO&88&y9*5!o9Pw)L^hmtn73$Dhbv zbtCc=_Nwg|OR>^e8-L8+6=3gQwf6DYp4R15_LllOyeN%ne9WF53*_Gj`q*9@aueB- z?_>3?DB}J;g>3e&_GPm7MR06y74lT}w)#4}D2-{pn7wPk*54vHwzm#>Dtl%7{df+Z z*}D#G_FgQrCqJgLSGFIF4@UOhKWVR~q0HVBQ`@Vl^>uhr8rME){(S)K{j1Sl6ZdyF z@)YA+qyDLmPvh#B*;@fNdu97UwRqiROWsCJ*?zFL8G?M&`uHH(?A-&7{Htk4?j~C@ zdv~DlSVe1h@yG0a*q1S1YMung_8vv<CR;Lle}p2kcbn#|+53nulRb@FWN(`4bdxQa zy}w5h*}GjaHhYSh%CI+$Tw<>extnas+i>4!7uzdBFnb>Zn?3FQv477XcatrdJ>Ce6 z{ae?MZ1%c*nfw!u>}BR4catrdy^o^sSVij_`D6Bae3|Th4jkLth}=!KWcD_pi0x@V zFnhheO!lOY?Y)THO}1qA{w<2g-Y2?|&7RI#R3>}>$ZKS;wjEh(*pk`PbzWrelNn^Q zce5|UUPjl3vAw;>-DFGNhQ0@-#Gcl9k*xJGKo(E-bexXt)wLq`ku8}$o%egJq7CtU zw!K#Nw3cIgJCVD|mdxJuC?b2mokcE^<=+~z%4BbX*Vx`+<aV+pv-e39u|36QkSu${ zzD)N1036wy-iAEIcx1|s=buuW2gtJbakAQyy>Igx+uMV@h-}IH`xc7GzuysO9a;9q ze3|UM3Xbg6YaBbtmdxHyQN;EhN4EL0)|X+gwh0{D>qc%PTk<w)?HbqXCsqQ?zuUp$ z$=;Q`#`YdTUPZQK_AW;e`8Tl}+5B7Y%Vcj99NW|QPSM|5n-df(eR`Zf=AVtd>}^LM z**i)7n99E|ppX3f^vlRavc}`L$=2V$0>}2Wj?}g#>+gR+5!t)rapWRd_I`(K_V$A# zdku4twU#WIy?;g#*}HQPxk#41Pm{g9x>LZhy{*VavL$b$j@ZQZHqJ#>tYz;`Uk0bH z?09~%;@3j9WcG3>BLD6ZX9-#Mbd6>Hl^xGd-auI!*^=2SJD%Uw2SI(7Jsrc%-W}km zzb8M9{0P~S*|Rb9`n#S76v?vp8M4{?Dmb#&xC&W)wq*9cjKX6T-TeT6Y(C%X%M`zF zfn$45AU{I3WcL07MP%=uR^$U@`KM!=%4F{+yhip;S&sY^*^=4Qyo&5?(s-D?`+XVq zrq2XN_D;<pPmnEn8`CwfB72|7BJU;3zb(E@_S(R)y-kQ6=q#DNOHsu3@Gbo^I@z<e zD0_;3WbbWzko(A%%$}W-dHuaF0CtmQ??JM7vZuKi*_)v_Pi1ccy|)cYZPwVDy=}fs z_8tev_I4tVkS&>iI?hD)J~xiMjx7Il&7m^c`&(Wkd#9nB>UcT*Kl?hoD1Gi_{-|x) z+d(#ahrqGDLBvPUS@J$je+7ldD!Pwxt9S$;dtV}Zd-XalME2f}e-#_iS@JgObssdc zx21)98Qth)?{~>&Z!tKsH|qiHHKMa*_7<Ut>}|!rO2tO@e$SU7*J~a`_D+8Uxr1!U z?A?GOvbSw3@<y`kX%A4D?A^?(>{XIUr@zb}$(B5>pFoiz8;|)s)xK7*y&<+IUIp2b z$Muh)i0vIjj{G%T|JPISrt+`M@6)lDdCD4{v|a!GNvzWCS#Cc+4p3aaPPVwb29Da9 zBTf_9l9g%S@G()*oLzi3blhL#={3?{*Fn3_qx&QBjbyc}c~MJ_?5(2BhX07plG!ua zUW2|Wb>yd})GNk9nU^E`t~`#r_|;|gr<KX_F(mlYg8)F*IeSRRCkFw5teAy_{I(zf zkWVX<wI)NNd{z(u$fuXd?<kYsStg%ZCcmppes`ICPMLgenS6ekd_kE!zf4|GCSO=4 z>zpJc`gd^<0La=?LPFNDCM4wd1_6NlzB2jpGI?2<d_|djRhfKsnS5=Td|jFR{xbOk zW%7zL`GaM$_Pmhj&qsm)K>n>V`D0~rSDD;XCij-fg);f(GI^j(zO_tVQzj3W$saG1 z$I9fjW%BK1^7=CQlV$R6m&w0VCV#q2zOziet4zM9O#TdVgV#O6rY1Qg#^c@~0FXad zCf{EsZz+?%fIKJBr8}@MIV9{o7z6<FwlevPW%7<P`AcQ;@0Q8GS0;b8O#b~c`D<nJ zAC$>D)`f(>e;5P+vW`0;A?sLUdq9R0jcVj8JfQ-48d%47r8AIgc`Z1JV-)gq@ZDav z4_iFs<z~uH0{=TN&p<vItYeW<4*3*bf8-<%qR4OK5W;cNCD}g>+4dy)^LAug<KoXk zwmIK`d^)m?vH0&mwirl$C-Pr-`;yN@{%?`|F67s|tP`(yb10n=m7jw=*UM`ET;v;~ z^7D~x&CR9!0^~3!b<jors^>4Fd_J<BJM<whK>qK(+{d%xCtmKL{6a>N7niyLj9uj- zFYCu?h*c%WdzZvtjNBi|mm=Tk<#Ed2i>&J}mlFRfH78>EKX`E+{P)5CFJ2x*z8u;7 z^Zr);(wBR=N^?Xh3x64>9~M6=zb+|u<;=Y*8&C1CLbmv6K3t9b4bPW+E%JYgWNcOK zi{$qsABp4-FvXc8F3J81<cqwlczzK1!(R6ORoi@5Ic3%NMEs8+|3M`G7V@)^{4wMo zL~<ARrE4O&2bnqKlI-^))5jpwc8!hSR?2Ti-V~J&ApfqHHGghJw)rG`Ymjw++ofcD zYkpcPPdmlS?eK~Hv<u40FY&V4|2XBu%q7j=F=TR*68qEcFOzN0>4d)){{K~0zQ@aL zl;2MID_&lOyq;~r)}QKs5_x`9{@cimagvhuGd5nD-@ilor_0LCzY)qQ%h-G>BC|F! z&v<?d@?FUPP+Grsx|iiIbD{Q}vhsOl@@2?6@8u2SBR_-B9F?4A^K&wD!ljkiyO(le zkffwPwYH!7`B?k!%F6%R%a2h1bJYJ)X?dNl1=8fRlJ@G}=F6XgPb})@dwBwR3-a|| z_U+X%CzF);Q@5^6{z{p=yG$<I52l~w%Qasg<PdUxDSvufRKAV!RbJM3eG!>Ckfg+) z>G<qYH|0Ah563`X{#QwHTJiZ3<^R?5egCHabD8|}Qn}vFKRmzwyt4B5mC3C6Bqi<F zvt~+U=2(eLpGsuE|5j|o-{0lB+52xFW~_g)lz&ovncPw)Ut1=3m&s-EJZW=T`4eUG zUnFuxBmVs!hj?4RK0YV?qLj~9W&4!Gqv1Vea=Vvxy!tAqdu8*lLGM>7=>r#xZNr8{ zOtm3%KGblBmn)FjiyJJSY2-gd_VG+f{{58ulxy<E;=QS<KiPcLCx+c;Wuu4boNQ0f zIU)JXulq1PkIhA@sh^d*oyV1~7`l02sNfzfDX9>Bj@>>L9NUYE^@-lNsN{3)WrZht z9xk%Ohsuw72reovdGf7HU-BV%eO^8)FMF`5q;JXRn8Q<Re3&_|8T7$o!Vk};*@vH_ z)<RiHJIOHF0|g~TiAneI^%8R@d@L<$RO4U%ESf9!{VRU}?ZcxzBO`^;%LfOCdsmE) zuI(M?L5QU1NsY;8(IPX)c>qnH86O|*8R9XhuG=vl+oD?XfJ@n9Xp!ZzAu5eS^6X*! zz*$uDsHe=LvhqjE;-YA(Y0z&T9KNY%uxri0P}kTeOd9Fw>*JX~Y2vEHdI|>_)A-4< z;oAqhhR3>i)^)Hjl$w-!N7lzPOanLh^pnjCMRSZ#zxS;jEOhAu@Ljz(b=^KN-j6*! zCNYHtdnU?EIESOnq4cS<xb)~p&7#uDCzE*CDXaqjph3w)Wm8s~d_*iNE_r^b%x3(+ zQYi8(q$E@}0zR^93Tr}SOXwCC<2yeRM#)1(Q<QsO%AX30ER;lN3JXU+|21Xh(kHnh zN=c-qupdWjisEFw9(&cT=$(9!D{7T$(bHQ|fji1fP9$s5Hk0vjp4gb&O}u*9@W}cu zzP@bXf(2azJj;{R?;4NiaLGt$*!`&TK*(@!y!MhFS;Nk?WG+tmRM&?GuJi}HF3$=N zeWlt*c`{`5ilN&EMu*)~*F06yrzd$!wn5vltwk-&UUi5kN(THfFquqKJp~qpuJmYZ z<|0D;EK%9SpYkCuc``88b^Dq%dYq*&)N|8dp~NBPM(OijlPhJc;G^$dFMs4KatkZb zb6!!vV}EtTmp?;=aXq2ab#q}{8<pg)o7Q)Y@OW3(nx5V+w$sr9-xd&=IqK;zzmR2) zXLQ+;lSmJ(T{HP~&sa*$EVHM=^eAm?(;Z4}AB_DPEvy;7jVZWxbd+a&<X(x}zIgTM z@EUt^D6YMFv`}ze8tYl@CrL7^q6fI*R(bBrJ;J1Jcl9!<*}sy<*v8(!TH8|W^HEQn zMPm?$+GfrTg_{Y%==v^}4#Ui`e0;s@OlVbuFv^i_>ScKQNKe;@9?a!oztJux1PgL% z=IGeaQA~wJ_8FC%s6M>9Yh?V^u^!qR8SGh~tntF=7!OquN(-}2W8HimC|P1r^sI9- zANrx_sULAb${&P_CR7|O8;ximAY6P|z{>R_B_kL=2&cx!_=W;{G1Rr1M??#1-~Bp| zipn31n_N}BYew7%3=|gXxjFaPoNDl(TJrGXO+8}+z3!R1F-II3T|2~#8XlS~2$d9F zJ&T49GL}?ey@x0Ay83VL(vxq)qvNc5wZj8%Hy0d1R+1X#$ig)}W4AgMXBEA-cC8*B z?YcR#?5Dn|qFBd|_^FlE?%8l#+C7s`sq$2*Ye1g&58T|(H#;zI21aim;EB7jwF5j! zSTY@Y2S)le^;EL3Fw{G`end~Emd-+bmk1j`7neM}qXUjGIZ>}<K~5fS<lM-bTRHzs zR^1pUjJ^GOrqH?N$BoI%^gDX<XI`x2kwJE?H6vYX#tOYrC9M^kv&o9rfv|kj(>&FN zH$Ln)kL1D0(zzGSPWpP?a9<%+O1L5f!WF7h$u>B7ym60C`e~;<DRtrpAd^Qa{eza8 z9q~hyUL8LeImIKHy42PE2;DQ$eH~J@?mxNvOT3yMxpR(6Ng1-~W32kp>)y~A5e8;t zQ`hY?y<S}8o6M%(pEjE@rd@YGOuASP4t1NOx-mvwr*?IlAnqe_sH=N{)^3bZPgmW! zN!{t(N^tM%G^3y8vC6D2IM~cZ`WRcR6d&u0a2&UoV?LL2V*askz4xKKZfrlU3xC$T zsnbHHud~$0v&d(Yt&f!1Z^gT~m_CjJc4o_t`aLhIiyZ1Miu5t2-P2XKlRO(NAFd}e zM^4vRtRiF6>2Cm&9lsm=A@JLIT}W1a^9>x@rG6NrZf*_R-0O?@F(&>^@~4f=yls*{ z7m=I6@~555y*sDZJ#Dh%=fT{gZIVBVK^xip0SAAmAN-+C@TVi<#~6R!A%CP}uD(P5 zw2@hB?~p&s$#Xnj31+;UUh%+h$CuA!XGig*-FL`O`F{=B{G^TGCw6}eyDnk(!-laN z{Kr=CzZ<66iE$&Y%76JlJkOB-YL_{7hWuCDm?uuJd)#ElSAUm+<)`M0>YIIV@RRz% zAL;~u6c^*ixSqG~Y<!t}@035XPdwiljjz+Uq9;4P{9FRI@s+P;zb*0y--18X3I3=* z#*Z=nG)Mk4NB%TN{y4q&$ML;C&A(}Xns_@?{&bVi0?VHdkr}fy<xd}(I5^x7W{eyj z1k*3a|0tO3?2LeK1j|p2LpRyt01o4b-A~P-ObNTcV;H+3p4bZU9EWFiVmuqS<-h!C z2Fw3$GX9?>|K$(;aeDQI?D(=lyJyKy`F{)9>|-nVN&Vmtb%H<ZB7ThP_-$?Z(@AFj zJIuP#e0!ICyPn(vmT%o;_A;ketn!{OKapKseAMS(-z7gUB5Q2SPujS{;zk?6=kCa7 zY~5)bYz6-nFS8S4_MbWOe}>P-LB7lEWTUz<rtZ6cjk;(5s&yMvsdH3Uz7X@!FXZ4e z^E~KdOx>1WqwcxCM&0v%jk@Rms&yHoxvKlCj4%7=1*)sL%DTHi^Z80L^V#W{r#ff2 zKy$m3%zSkm9dpQzqqV>qxIpunHR^2H9K&vy!`Qmt<{P%c8l--h!`;-kx-rJjd6A#< zB0rtp`#CT2({a3?j^q8D_ZIs(Kk{>a<fqenKj%k&I*#|#alD`N-(o*=k)OH9Pp9{O z<|02G$NT9x-p|}y?B{~W&jpd6PVfC(5c%mi-cQHzelB>6{ahINxiIq6>Ajx|BR?I- z`{_8|&xLQXpBF}cUKsi5^xn@4BR?I-`{_8|&kNsTKNm%QE{gngdhh3=$WO=demai# zbJ1Ju=X)YQ-xK-i^xn_+M1DGs_tSB_pYM4q{p4KbBKf(I%z67o^79kq99X_>BC~fp z{ind3lQ{lnFtWoBfbRgy&&$ZNWqUO^?DN<Pdpq^Ro=^R-&u@+D#+YN-#qzU*%yIu> z`N{dI&SNi@pBztg?dGtLt>f$1)av;<evzGCu_e|Q%jYFz*)^ZR!Ds9SpRrpJ9jAi- z*b4r4M|NUdj~nt|zHvNlmH%oJd#yGH=6OBGO!?{fehxU?js6Do@|kl<XUlxXZt%J6 z7#jSfe(<x8`c^l_#CdTP=f(1~jZB;uTbwxua2y|Jr&pXg2XOp$FxheBe;#aeSo7Q3 zEsOKcIg}}3_e+M$`V#!_hG%wST*q{k&&}j4Sbfp>;=jXfVCM5B@`t{<GP46OoI}F< zUGssygtlVLxyPllKS6E=tKDw$T#x&}jMJrx+eR|>9Y^bnKDxSEU;Q3$1`l~oH+Vea ztOMJ)Q{UCqx?>GGeH(a!Y<&TT`9RxY4%1$k540Eh_-581v0bA6wvdV467`F|YCSGd z-{+8<Jtqei&-?*@MdeD=3I4$Qs_7R|X8agu_!z3%%9Dxtdu@KQj^3+wwdb7Y^~=G` zL#J;8lO3OUYfiq`=ArfiYYV%<pN=SQ*!q3*jrw8kX|7w{7!#k%<ePlQ&&%W+<FE7Y z%jAD6`E1Y8oD|ROfWvsf3;w_hKD0&r7}xW$TZ;*8y-)2fB@>_bsa?f{_&d%@F!mis zF(5m=`f&|d@sV%DA^27nli(Y+f^XCh@mUqsjWK?<MSix)PmO6adh>Ix=g7}r!H3|p z`eU)B-OHnPFIT&5<TJcp@nL^(`b)r!(dF_-KIFWfxubb@x#B~)=906icIboCF9H+8 z&@TRmF{O>KM{_B}@Xf?+2E!@;yU9&p`Trp@W9syMVCI>_{oq!x{2wIagX4b`Om>_R z@Qq;gMSbrkTdcsrXY4+1K4UkGHFksl*b3u59@&X8{x6gNnhW^9O#a_MX3aW%H<-9P ztiBNEW%6Hr$$P%~OLiRfi@q$A|Mbt<HUDWN_}?A*kKM5EVK?}Xt>C}nVs>Io4BF-Y z<K($u`TsB(pPl{*Fzd+SC&AqjUhVl`Mvu+F*#K4_pCW(ObGCxXj`K8lJ6L_ZkNh>S zS6g5A`f;#)GM~Yr@9@Id;Zx{4?S;P6M(BGnvJ+$Wu`ASf%>!j?3;cv+r53X3V_ZR4 z)W=0+xL3*!b5neWm-sTP3orNv?@!D=ynk!BjXK7UF~_5;)Yb#!Mvu3GXM*X2yGPLm zmJh^L^Xe*%<0|s?9*fuKIXl4{z|!47-Uv4P8V~b<_MSA~Xz$+{rj6h;w!+$ZB&r+Z zdLCVnKg=&3Td!7I?PUCS`X%5jSpMU?_AZAzz_jV`axnEnT^$3=Pi%$QQvd%jKdJwe zVe0>x;gwO{7}v1H$%oD4I<UoL23Y=IL~inU0*pPUzZ=ZDc6{QbzBxM@3)Z#c5O1yd zpday=_$mI^Xf3d3XuSk1Kdg`7e{cRXE}_4)_q6G0FU%|KUS;}6B0Djrzt^h2kCN%{ zwd(I<Wcqup`b(eGUxzn=vFGqZ;43}<ac~D%cAg;L=s6p~^fBnydHf`Le7;uwT}b{) zgyo0z7aaPFPoclG7y3(kp}*J-{e3F36Jz?=AwLJn%>54a@g_2T>`>qFSABGxaWMWl zjPI#7&u4GensIgez}+6VgOMG71DLVyP#+opH+xV1Khm~Kv=`PCw!%I(L8-+j#`Nnt z`ju`@x&0yFY@~1TSZyrw7@hX{>*#xWE_gXuG1*66mEbf`F>*F@;M+WB6L<owy4cek zcAQr5=RM~c@RuXbBc8Ja{ntEh12d-AF&-)L8B=Go9sDh@{6UxcuIJ~$e-m-`dk$lg z`dNhE04x6Zo>qKhhq;-ioq*4XIL(y%*rvfY7U?;Y$C@<pvT;$oK0=vNnz$4V6AQc6 zOB0K~Fg<<#OT%rc)L$8HpPbui`u2?JJ1}hiL|E(e{hF)G$uq#3&nwAIVD)hx89$xA z6O5lukB^$qPS4ot9NOux0h67+8+<)jabtbEHf+ApURZ;)7mmfWah>;BbLLxyu@&ZR zAGXX+jOokrs4vT-zATUW;`F{RPVf8T^u8}n@B8BPw6DG_|DV{G56J(1aziTh0rhK; zoCT{dOUTV0Uj$~1oL>8b>R5ch&sq$rA7VZdabjG-cBHlxpL(#h#oTbX9etC>XM?fr z^qMpHaf5tT3|T)nC{~Ne_!O}0ns4CX4|Tq6es)Kk7~{_h?57onMlgP+<vZ)n>Bqrm zf#tJel8f~CA$|Hh^vp%aUk7GP9o_)OXIEEya-Y{vfN$}5Blr^@Zvt;l_-XOCCfKc= zuX+3o`fq|2ho{JY>h(qN(_r=vw-^1T*RMqW7Fd16cIvrE|Gd{ffPSyXw3*r$;g`S` zll@*l0q6Beti8+GN1vV<VZ}}DO5XyO&x~7|I6D0}_!6*uMwhl2im$j?UB)!jWlWuZ zJDhG`mp-Ofd;LzZVym|918ZFU+z<|XCSz=$ze?lBcl<m_uVWiG%=rDaVSKW4`1D2| zkv2VJ_MZ(C-@h?TO#g4g#B`5g{QfV7@%3*FKN9&FVXf1ZXLH|k3FXaTVp7qTa%)qM zBc`Qa<n`@fV(2(|FtHAN=F>{eRq^S&!*F%16xRJ?-D`IE5imXn{1{m6cA$R(tacgy z)RPHE@kkXtpZTTl4s!hE;J@*BCHO@!bE$&yOnuMmSAl=#_44fySbk2BnO6?q0G{dj z-QXs#XO3&_InHI^oagj`X?vyS0R2kSp5xpE=J@J-6KA!@ZQv2lQM>EF-p}*~&*?{x zE!j-hlkZOWdR9KoJaaY&!H;{4z4V`Zj4$aTSpJB=3rrs?W`p;6&N%ph*J~{(4r;3z zp5}n!k6#rtJjP~4HsQ!-#o1uRjrdpOJO|$^7A2fC<4}QJXJ-O@iPs+lEAD=c2;2Ty z(KdMut!STII~94hi#gOGX-@o|VSKV<YsJb`>hDe8IeETOu_~4Ne@x%aR59F_O1)s1 zSlj*Q3S#=-Oh1xJ{ddFTsnkChCNBF7(`P$BshF5NzE^C-S?gnjbv*hYu}$x$oVa~Z zYk}BkO$EHvW9E<c@W96h$7x6ZDUUx7-W2H{@K|kb2dk~;!C#Izk9z#4=$}k*ntCbb zkK^wF7d=P#FTH**_`4pz0A`Fos5vHoD09BSP5pPz*#~|x(!UHo6`eQ-z}n|2*BT6U z4}<0NOXP}4z1F7H)xPcOVlRD-=VLE@y~hW^9|9}3w3Y6Q@FzTnHq#Se`9Pa##Zc|i zFRd@vFV!V3=4X04Sabd>WW^IcE~e67^SBE9M8sEY)nDSQwJAFl8F10_nG0G!t}Ssi zC+ye(4#$q?Q>lNPLm4T}c-Xm6nwZ<1l;2-9&c0OYpA5e^xxN(B7fny>?3z*gfL$}D ziQPXNhZx!Qqhe(DI@IT|cB-N^OW*7~zk<GnHPuK3TMH4^dEkdMMy=#CJU$zI7MR$& zd3B!G=aA=meIDEf*4&#-UP|`%RmXhOeUtC|zN9)LPK;5nn#Ldcq4P0^XMoA8+=U(( zKdTKlfyGy9_I$NL4*V9rW5M|N?QAZBLk=AJJk2;uz-AMl9bZ0@1AjT6!8ZO%u<<)R ze-(Uk;CJ)6YvcEUjo<J2gYe0LKf>(}<Bx-lzs~bFz$XX(1fQce{zkCzH+lYM_~gKU zfKzefZv`8FyXWtOPY(P?c#hookAjW=nCCwZpB(s4aEW33r#$CrIOM=7@^v%Dc?N7Y zcX|G9_~gKUo+)AcJz(SS_52s$lLLPrUteSVmptcXIOM=Nz-<=e9P*sQaLC3{@!LEn zok=+E9H2hpG%`hvll7b?_6KsX)6Cc97-tUH`>%6j&9U^{BnN(u+mFU?^_(Se$br+w zSMC_69c(u9p5FnV9QeywKF06#oK<khfz!?B)s52!Hk%`!&wSK5bKtLI*&BZY*!Y_~ ze=~e?;6K1;%Z<<6JKgw?dH&<@$$|d_mxsoG5^Q|tjEmbY_~gLf&1bNU|2)|E`#k?e z_~gKUiS5q#FN2MLIN@u5RW^P_6`xi1d>udD>G?W0lRr8yQx5zlwkG2@gN;Ae^K<aY zfxn2)^cuevZ2aY(zY;z<@H^R}jn6oqW&Cl^Uk9HY_>9rJj6VT3{#MW54xb$OJK0W+ z{|MOl8Y6JU6G;yIC;4ou@t*=4-;Y-XW2GGUjMv%5e;#c77rgy_@X3MC*qvj1#_k;B zAN2e~@X3LHn9C*4uS|hGzp_5zS2pq;No3<!&fsgKjGqM?e~#z3z$XVj<9MF&b712y z@%%RU<iKy|@M!!z*!U|wzY{(=@K<rDHGVhP_=BE50-qfC<9z1R`0K#N-|YDhz$XX( zR&L1|e>>Rtk9+<T@X3MyBwveV{HMUi-|hL&!zTy+9!{-|zZY!$mp%Ugd~)C)<ZHH! ze+caPRrLwKs*%$Jvhk~CaNE%HtFmC@&-MHqd~)C~;%mB$-wHN<hvzScPY(Q*oGKW< z6KwoJ&mVzL4*YSx_RIL|z{cO~`47M+2mV%We;9u|*!WL+{!{SDf&Vn0n=*b8Z2adv ze-C_e;P2&>&iF5Yjeo%N55gx0{vkduWc<Tm&#$ge_|=V^bCHc-J%dXo&#%scjqle> zHETsV@aOWG8RO@`#%C>PKdJ6Wa^NrL)}--Qf{o8waQr^_<iPLeb0)?g1RH<C^EbjL z2mU7BMl$|pu<;-9{72!F1OG8Tr(yiZ!NzA?oIi|7H97E~;q=(}yTHb0EF6Cyd~)Ew z$mbc1{}R~vjEmzlCe>u)*Q7Y*_WYVEu;<q_CH$IZ&VR{)KZp13jo$(`ew*jF!zTxR zo>PD0GdAtU@ArISTtg205#F;l{y5n9n>>Frd~)DFz-=qzZv`9wG0%S-J~{B8;5x|o zPlAolJXd^bh^uno@8dmL<G%<t{sGTF2%jAI#Q7TI6X$C@e;RXJ_NNh7W#dmHw%2<8 zG-7+L@qIj}5liL3C!QU~?*JRW+uQGhPY!(Ie4X(J!N#BP{EhI*flr*@Z~V<*<3Hm0 zkHRMhK5<@deB!*^_(jiu20l6Pck#Y}@pprbub6|U?MrgtzsPNH<G%zpzG5yu@m3Ce zV!p!jGbym=XB2aAra8&R*YBvTG=2-%_?@1=3O+gTySc_UejnKQ+dY3Ld~)DF!nLjO z9|b#pUtx96+QISB!p-xB=QlSuFSsz5TYT}tix=g<xm^7BqKht)?&1Z|NZob6b4ACM z=?ZU>9;VXSf1|&GNz(Zs@**d-@U5OTYc9L{i6bsaS4kWlpE{Mz9`lk?z;v=ozg(*3 z@5yBU`nFA6%aEr%pS)f+L7DjV6;;#gPo0^algoEA$Bs@Xr7J3{s%xfYYU`%gC*Kfv z%8{dKWt!lz`lgdFy;?sF+pFpdb8pG{D_MT0WQ7;2SMe*fOLg@*)mNELr)tz=`h3U6 zdpDo@&@uaLex-Hyfy7^DL)d)L=9^AkwQSiX%`F$SbPNowU3bC2g{>Ezdv5chc^A%G z$m!JB`ZeP{H}N_?n!NTK8ZWFHPky=A{r0Z^5nra1`_77A=~s47_rA$5rDO&rSbxp$ zGd<RrC>@J;4rQ8CC*sY8Bij)#%^C`+%A-qpH6H{uCQZIfFIL7^!3A4Vzs#R@vL)l` zH5pA;Qpp-lO_1fY)~VWUB-fJ7H>tDy(fuk*X3u1M4f;3nUFwk^uCb^+CtD1hZ3;EF zxwo&B-bsh6QqiW;n+o%w&QP+`oOrK!&qa&ePV?sWniTs1aZhGI3z4h-jm_s@>1U$d zcepF=|EuP(21H2_c@uNfeFh<XXCifM&geCo6S_x{>LzPms&B`bn-wjT)sromJ(KM< z=zk+~GfcAH)O?O!aXR6#?V?sc;oi)#P50!Z`PPt{-uc2l=HQLL%x4bNSI+0}?jr|p zJnUXy^sjsT>u&%0jDOAf*QVt44PWn#r@g$D*Lu%6>~-sIJZvHSwO;FWTuP_X8yb=W zVmxLWeq(FM{rI|$6!UJF>dTChA7>vOcEA6A9LBHz^X>o3*5v{>UrP6b4bjNizN%x8 zVZkDQ4v;l2(klypfE=$)&Bs=<C9~0i!Z5H}yvNA0Ve3~|->)3jBKRe8Gue{a7(!tf zSkuX$C1lyikX0r;L5}R{p7Wd8hthN4eTHnwZ0I%Ghbs3Wt1mi>({WMlHhLT#vviL_ z?}>(F_JYELp#P2RLy>iyv15SKA}balA?sXG@98OR0H`lIXK_iL3Ww3ldwcm(wRyd% zDHn<DeyTyNs%2Ack=^(AjDtB=JG>4&Gs3)A7W8LFcwU4rituF-zB0nsNBBb#zA?f# zMfjEokK&WP=Z3E}nhQ$!T4z{m#yBxX?cPtL9mUUK+Hrl?*wSy!OQ#nmtPT?cofA7u z48r?z#6a`a>4`zA*<)g$_vM_P80hn54if{tm*_At(42Fa80Z-6Fnv{W@5|w%d~lfd z-Fdmq!K~+tEFW~NO^x;5WT#H<uy&&3+2REY{o(J;9MAOm3)U;1l3IvVtv|jT@Ay#h z791Z|EL+Mq9P({<spO#W>u&k~tF9%c+V7+NE9_;=8MoeD;5oxy3DEwjJwbCsS+eGr z%@3g4>zf695>M%JvSDClH-DIm&Rz|#W^V;Jwx@lZxfYU@aY`RwbLe?O_c=x*8c(lL z|0<q9et<lktUXBWHj>M(VJh3usSQhJ&t!WI`u|D$vs-gCUg7p*Exz8=<lIcWQh&7< zdEaVO$M@4=zplgk_F-LPuB$LQIy~xE^oiE;g%`E9CX4yatmVpf=aa4Frqrx_CRdl6 zzU7)Nbz5d{Id97)`PzKu3w2N2TYe4+ulAJB{;V#W>f(G8D<qxI)}Eh8`OKC`KZ$?% zowj}X>g=|e58aaK%oI}}%TjAv<=oEtV!D_)P?Jp+Q}Z{^+C*78VH7j#X60HA)Miur z?&Xsu-<jCw8uRT{wuo8Gyh=GWH=XjC&e~!+pBbs`ti7?mm>KbPZ`@qe+_H4My^4L> zts~=VY_zT{37<%2{6gwzZ)m(LeRst@mG^1LOX{}1Rr{i*4BuTlzzvtlGiuGsvGsh< z-<tQ|TCPvd2>9+>)x3gjb%3vzEUW7#B42x{8#a7N<4DgC-&{E|I>5K4u3kITdjfh= zdxUQT9Ua!W$+7FihLT$Sd`apcO%9E^TSxO^TVs>9_)^HE=!U}Tl{XD0+@!}>s9%ZV z7=Hi1>G+{JY{^YJgt=tHz`Ab!43hO3Ch3(mudgL*pVBcvX%$&(z>?Xx5`|%4-ERIY zA<LfXn!R3dY;Ocv?N~A!{(Q{T)3sjBp0L@w2OQhmfIOAGJA55pl%}`y$L!fLQ}zCo z9NXK3Je9paMsL0Xr%&+5?1^vw?FYy9wjy_sEt!pfMqwB@{b~L@Nml%H-f8yiUa*bF zKFV6jmdwWMC=3JZ73ZB~+0*gV+tX)@-Eo%738l35s;Hjfw9ZQu_n0@uJV-B{f~Wpl z@;I&Yh;n;VwL1has_*>UY{q!?b<zWqSf%>i5q+-5^;dng{_6KcVtbDwH<2w_S=sqZ zx=6K+M&i|YdX3Is^xl%YudDM%Yj=wCm)dd4e?Ycm_Dr_dp#PtA{$lNFptUYSLe{(v z30d<pBxLn7BxGGj+VAO9(GkfZQLf+md6!q{17wmzqFnRKe*Y&;c|70b-)WTVp1P9k zOAd*0#Xlru&23wI`u!x$iQn>s8OT~w{a&s|*8Kc*Br6`jAIXZxcfG9NhfzHCdbt(3 zQ5RqSgsnF<^-;=c{Q)XIHXU_Xawn0K2lA4mw*)&7yF;5DvL`E9@zKZWDLApKlLzNO z^j(P#!@kp8bDjg#dSWg(+zciZ4$lE=|IxXx)(kxNJLtevGt*1uO1w52Zb3GFj8WI9 zEzLQ_-8jghuI7vBV~l#5>S}zIjROw;XlzX%V^y)bnlHwo?y2T;%#Shj+GErWeUJGu zu3|Z=ZabO&*6Fj##8uhp^I&4@^k;*KZJplZnM*#)>lcB~^H}#RavryV7kWOgI*!%J zw(6=q>mxY$NqZqy9T6wSsHe+k+EJX{cO7dSSVz<C^U{o$)6YTA`gFJ+OkZ4G`HcUL z&#RuF40UDKd;<r6s1y8bjW{tzJ!2Yws>t}@uzVxiXIaBN9n^|v{8?+qm(S$DZ(&Zd z4Y@?@+_jtpd~<yDg&g?!Gv(*5+dRJ=J~{A-dHCElaSormUherT;gbWullf-;tOBdQ zO5L8{2POx8KSN{uL9p>Rc>V-@a^P=dER4Si?D%VYhsWX@PA9rXz4%}C{z;|^A13cN z%}t%VC!L?3ugjhB>h2>iZEM(e-nQ8@wjX@<jXm>r{WO2%;Hj;}^v|zJFPeYt!ROv6 zW-l$K_iE?yNmr*iu5!2dyH+`_Zw+&8dYEg|hjORZZQcJ@M-C>}pZ%@6PR(UIYl^AP znPeocLJ#Ms4YiES8d)+j{bRF0=MH7>Keuu5PkvUH%4Ld~nr+35n#9+J4YRl=P37u} znNuGgb=DfcIGUM>pKsfBD8qGYy0h+;L#fJN9;!>fa;UNL=Z9ujZpeJ0^-HyTEAq96 z>QmXDWl}98O(S*dxT-Ct*PUC;jGntL+qk%x8qGFdQcPnt%il~Rz2$m6ySGCBe3#ve z`t7g1AG&2)=d@z#mNPmVim45Ao4$y(#qw}8GsF4xvhykT?{ljTyfeAt9%{WebN~7G z*M0L_8(OlbXS0o$?)ywCMZFe>Kg*`{<qfitzJKwTF4i@=t5NsO-PF45-nUDW`^Kcb zNzaH+=7HKnwX;%sPi*Sm<{Og!GP3knK907|Y<=a8y0oI8@!ngJJ3X;p+Uukp`d!RE zG-F%m^dk2t9;kiQxAyAvR5o8rZ0D|<J+8YE>G3nhTN*DTDlNI%2eS{>e(9nwP5b4o zsm67gFJ<XNG55*PhvN7d#Z2zjNqMqQLTWQ#Gx+xG#a**Hr*&mc%@@-{btiv2*QA&Z zwSF!;SbP8C&rNeyzdf}TY)s@cGq#=j<<8T)KAS|T>!}(2#T0X5Hr~%VxckTv)<Wjh zy3~0GYE$PvIPcZ^+H)V2)rs8s!Rkb*Z<6+;tuIN$Xsa!k$=CkLrhMI2cV{MFyJ}s2 z`hg5FYWQk@u73WeSD!m_kZ5J*f94DIuUvEF@GI9JIW+%jW?}l(?;d$6UzeYrYuZ+S z{Pozx4BdB2Y9cp1U$01T_vhIo56sW7au4V0G?uxVeCFp@rZ#W~YUYBv`W?or-?^oR zezoPNCoAjdJ{?C>e!pi%#9gwqq3S-rsp&XmN$V$;h0En;BlEhly`kxj^qmzOEAOhh zyZWA*`}}4ax3%dwZDk`{Tg&bl#WwmP8*!cS_J;bq)Av-|$9b<(T-IJz7Ta6Z-jKN` zeV^MdVtr%OPON_c{@srMoBABk<Q*y<N;t1Q>duwZ^D`Wy<7-FayF*Stz^x(wTSrru z_3<Nx{1DPng@tv6-nHZW;?q$jw+;*rc8&AXAKWsU^lr`A&0T$?Jp)6r(z&3YH#v&# zN}MGs9#v(mFx1CyiX2_w>^N(~YfEn5IeX!(e)y(a3cV%e14HgdWn@%8jWRwk)Z>0T zCF(&EFLzr|_sS9*M4O*VnkNN6bVsm8ddB&Ul)>R)Vl8drQGcPw%Td7l5{9$O_>6OB zaG;kPhm+OZkJltF{JMA8czA|+t)*)BLKbPFN6F4j&O|5dmx6z{YLaNYb5Q9xeIlOj zg{V&4?h<56I!95OOEwIA+fM!rk~s%=dX;Gpxtbi?8$phb*M{5CNA_mOSJjt2`C|5Z zz_Gn?WbrJSja4WN17~Pms~@r_+h&j7F)pz;fjpJHb-oTSN;5bw4fg85X76Ee?B8bO zm1Ili(}O4s180b*7|K7jZ}y%9$M*IibN&#L+4v(ghJmNG@aF(o_8Q1$@2|m;y>vga zjR7#==fIJ@nc8FJm+UqAGRZHJV|#<hTgjHp#y_Ai44gTKKYPitr|U75$=(~}$ewep z51l2m@fr%lz?p~nvzsh?8f$Mat!uH^o@|YiEqNRIZl2iQ+jk)=_OfU9y6`WZLyqmK z5A9@2W>42{9;+z3fj^o<vZq+8O!ltlHL_RPguIGu$?Rzz#r6&&KR}i}-FGm1L*Uq+ z+SGViGJ69kB73toA}=A!o_sKSTfnhB&Ak`MmdxH}6tTS`)t*2nd%7Msd%p+Hko`VX z)dyC)mdxItpeX0b4@(}q&)${uCXB?Z+0!_c^L&|O8*l#<ys6@MWD1__Tk`hw?4XOE z*Q>w!-inZncQP7}Rd)IaOK~ee@zXsIl`&r`&g3<UL-o_h8ZS#$R(6lKn*LYFmL=oq zHCq1-FETW3=rn)dMOM4&e=XUL9YEa=()VeEWcGr>gP{N4^d7H`Sp`9e$61{%m$gTP zM7hQ`B;={?$;Rbcry;@DxS7pH+K<Ok?Q7kHgxri^W4MICN)CzgGZ8NG3f)td91`Vc zAzbAZ6O>C1iSl<L+~5_u=PWrS${F)imsjY4ZOI`~{%(X}uh7jL$stj$c^ndQ3&JP7 zVhMrJT)W2zKKKun$&Y$jpFz-h!5@3s?rHyJB-erWcv)X=!}>}6lb1Ik>$v!em$xGG zKg}>CDQQ2gI!b*MGT!MhhQ8d!W1MovKi!(pQ|-uE<ZHdW3Yog;ZZE%p%=qd%jgsW- z>FkmZRZO0KAL~pvKA%16R5m(`EjfWLKX*-d?zGhv+2x26<ip3;7S<M0L0mn+*|QmO z7bs4M+DJ;B!Y)M|W%ByNiP1%elP51KChx;f5_Rct{S93oT=xDIUGHCd%@xa5uJB&i zg@xmmUQIYv`6Yx?y3Yzs{%oaw43@;WyZiWyz|2F3HI~g_-H&E0b$`}j&54C%yFW{v zIkpz4^KQdSB2J7o$5fXkqIQpUzy5TyqxP(=7*jXguh%|i9PkP2(noi{emV7+*W4&_ z{nH$ExC6P_V@*wbaeB>n)~&<R6O&-)8nDi{v~OMSaSp6D%r|g|)yha8WBTRp`){C} zzPS7TZD9KD?)z&j@Hyz&Hyze`#?OGM<LpeJzrpL*fj<P6pWWmey<YoJpU0hG)}^x} zJQCqiu&$*xlI5TE3;a&nc4>n1Z^Q7y{rXLm8b8MIe5m4WMcLm>roSg?Ts}o+yKs0A zO#e@k|IK7#?ev#`Y13iGP}gSxGgnX2Ui<*L1B@;8TjS#F+y<tfPTvQ<39NQ+Am0JD zx}QZh|2Ied#qM0%c4=$Gi7|a_P`@<Jbzu3BCo^VFuQ)e@)h>RiFHXM-%yFYZ{mqe? zZ;o>%c#+2~;C7G2p^pvnxtpv$n9sC5&-|plFh;Zy#)vwhFMUzn7~}uR7N2^s`qfXK z0am}RAvbybAQ=A~pLwS~IQ&sCYvg44IYP#tlhwzCWX2}wS0kJMv=RKrZt$P_!RPUa zALA-cXXIxq86O+v|6DS2rBOaCA>*6FZD8@NU2vG&@a9_#;e~eFBYuo&_Y}3;LC%8J z?qy`g)ajRliI2mKkG^B*6#3IhRvgU->W98lC-j{<VLzcx@P{!Cbz@vZ_hrA{XS0tS z>NZAoV@%x{>dO;k=77Ubg5k_izrIc;wod;PnDYULp9VL1Tm&!ieCD$H>p0JViCf^~ zv$Ls~+~RQ_JnA{Sz~f-`WjA?Uq~93fO<?)<De`8oe;)j>$9up#!Di<XuiuNF{sey> z2Wx(6?7m61xDkuD&p}oq7GaF&e;A{uqcJKHBI7?39V_Y2EYs7U3k~CIn0xs84%6db zIL5s|+vZP<QM>P0sRA%Y4$lCS&(yJ3Da$e4a1(f1qSl;r{JF^Fz|V2oY5Z2tSptU~ zIBn5;pY33?nfLq-_~gJ}&SB1Mt^^yu)ALusCkK8v$5!L_fsMbx^C#ew1Aima)%eVZ z@ZRTE&)*K89QZp~9>#yva~^|34xGn1E*R$tu=!B*{Ab{k1AiBLvhjC=jlb9PUw}^z z{C(_!#(xoP{DYo<2tGOR4>QD`ua`#8Py2CCGv><1*JrIxF@6)+_$`V3^j!Glz-Qd; z`=ru~z{YR${C4={z|S+y%zg*h@!k2Sd!WlbTHbu3_m3}H$OGmsy_wHA|NqZ>GVn@_ zn>)950)H5<l51-}F77k-T!x0kI!wLU=RGIjYD_sM9P1uQ1#=)=uLDbbl5ENR!O)SP zno_Sg7s|ZMdDLX0JoaBg6{Y%I8m|=-r=*Vj46OGOq|Z8eauW7Vb!j(w-Pgb7=C1M4 zp4F=ddfkT}PBdE=Tzv7x$$Wh?v-NF*cr^KGhYM2Y>7DyL@66`ww$yH!wdIm6P6Nv) zUp9-<W0ftY?A$H0lTYTy^+xJXU848I8%zGa_H-)q+SBROjfZbMlAC+u;oM+pO|y{r zHFDmmmrOnbfR0a8ESSB2c3W!3k{dHO>L}}yo=X+ro#$CRV{qx=rnZ#c0k(JS-Mih> za$np(t1Tt3^m%~XpP5vwT(H>izJY0<-9KwWtn_W}{q$U2e%g#33p!-4VW)fddsbk} z&U%w_pYh0h;ogIumee_%v`mSfg81pxsrFpQj2*E}`JH=wzxO=v>+w#zdoMe&V%ntF z$Nsw~-TaQ(J7v9?YRhzH)n7^Tf4R59UgO%t=TP%I-e7m<>4^ttJjCZdQj+4=`fUw6 z=l_!aAKKTS-n>6Mk!oDBZz7f2*H6SEDSdY$5x=)LI3JuJY1#Yne*E|$pHVn>%enR2 z-guqpO@D)tbBv7sX15m8*x%@ET<q-Mt2WZpB29n#&P3ul4&R2DZ@h-R{44oXd&7<k zJL<P3R^K@2>Yu6_FTIjFr1_|)J%UZ&i}Xp(rb*R_q**Y-EOF<GTANhzy@Oba{qr6r z5h?M1()UkuVwue?`RS#p>GCa^tGV4a=DE5ze!+2TNAfw2VrH`CTl`E+%9FWR%-~B& z<ZT@2Uw`^E-y7Pz?X)^K4%45_<=wL`8Z{!2%b0X?Yi`yl`}M?){7=|Ixw`soxmC$L z#h;S#B*rgTjDsghL~KTQDTx@-Qvbb;q8szvfM&%TuclI35m+3IEZ*mOFtx>`--*SU z^{#i>ZEg+_K|VY4McJ+2CadMM%%YJyf2OOan7Wzwko>FLap49@^$#;Tm*!r!vDtS& zar7;*COfQ_xGqv|-&s&!!uN4cJY#*&O(L0F_XFmrtLa*--*(~CPNI!uq%#l8e#Y-Q zYI`znZkBiYS-vWXS1IGDs6HLBPEY!mv~YAE2TEo_;*H{xeK@;AJ|%P0wO7(RJ~J0q zvhQza{kHGZ&!f3f8(3D&<a0Q_UOuW9#@5f5{`@qvx&PZo4(Dd)UQp!9SCZPak!eUq zGORLY$EC@d%gt(dSgezNm`ir|hZ|UX`Dr#5^*b(n+;F}|Hgo-M#ju;UCQpswzt+e? zzedE#K0Ik(wSRbN>ZIHfTFtzU$MxH09>VLF&2HIR8%$=1>`ec5Zmw7jWnN8bzp0q< ze!CfU;bya6&c-U-)c;0_V-KHZ%WhlHx<A`y#}p#Wp5k|8_OnFxdm3`s`5bn8JNtUN zVQ0QhJ<mQ=uOoFamrZOY7IJ${T97f6+vQO@*OWWo#d~Kmn}qW<i5=Rr<AK^vjzt_t zd}&AOv&Gb5=Y27qTW?2rc5*j@to*}%<@=+#_il-`$mrFMZvV!vT-_J8Q)`LZPB`Yl zi3e=YnXi8*^`iFD?DjW)&R6sPB6Vm%ZE{AU9m?(ae;CQcH23VJT&&Ff-K3OzEy2Zf z>He90sF-Fac%5C_AGdQIxznA$57&ny*S-OcfbJ~Hjobi7faIJiIr0v0j^NL+IEoE$ zG*6_;#+|Y(YuN|ucFz6ny=P6HUAc2Me}?6D+%KAkC40|SSC;<~I}cF}dkbE(gXOD} z{mZpFE%-FR(bD@D&IHqpT9Y5OI-RTKtL0ZQGaPovVmKlsN1%MBv;IK!+Z){u!|_0T zjumb+C#~hHlb%ibmfcoN<vJ6O**hj{b`&#%JO1(XR2!eXtxNVum@NsDxcM_xH@XAq z`;tCrw=QOq^G)Gg-HaVGb|$`aE?Yf$ev!-1-tp%zT{x&Rze|SWozAqk%$hvrpZu)f z`#5j#kw|mAcKZx*uAW>orBTo2^VNU8Yc}U&-h*3y{Ou$E`1<Z6hh22!LH~uTgfkBl zH+K}BJR{;Wt*&e`dT;&Sm0T-K?ht<O@n^irPQo7W1%H01{a~xd>HM_hn!#Tu*xr&{ zZ-m_^_mb^7lXD=cfh{|G_SYKww6`$&icof2!V)g8nY61C*wZiE?Ku7#B40a}?cC1H z*`BY{d4nBqwd+u_iIPpy|LnEYp|NOo`_Xv8&S^?U_BV12(RD|DT6XKq2ZyplwGCfr zc!)W`Cw<l8$7bcG4=&b~+{b1OwtlWf41G#lpG=QAL$eYNpOMcDojcU3&kWb?$n5;s ztb3NMK3CUq#Y`gK&ylaQx|rg#_t~O9%hmPFem@&eIJe3_>02M|%DPJs%T51ExxI`( zqfE}0$%?-?ma@nAMD2lNd;&KIe`!O;eK@(<jBs;hLwf_Jn(j<*thlT4?y7sL@6-Jj zCf_6{oiF>uZ}VhXWqxVHjP`~@>5b{TD(<elr|Q1yq%iU|JsA0<I9b|B+ocWv=063T zzwRnNliD}X>ps8Q<)1o>KS7%?2Kdlzawn#|?1MuigKNWmn)1@o!r0n1g=5vdsxZES zPqH4jeC<ugq_~1Bc^qD!z3o~)e0yQ^{i|2UE|fB^=F`h@sk%0%Pda~aWGW9!E4L4f z^$rgW@j>7MpTwQ~q;hY6q4(CVfz@5TgTrHmu94x<l1~aJ5$!76#`mX`KIN~D2j`bf zWxCV>PZ=00`5bd8XVS?sn!4(~!DX_e`rL3|p=a%QKLwfqg|6P!Ykb$-Jz`=rUieVY zsQLZtf2jC>t4|fjcQOsnW${(n0_5GHL9q6*^SxeWl2?$^<YYHU-mQ$+uG!!n))IT` zkY!W$?9Q$14U=PgE0L$N$2)N)_FhCbd)fodzt4eVdn3qG+2gD?ws*GfK%2cfUnc*) zL5}ThMs6otvi^Pzg<;^?PxGfpR)1y3{QEXIw)Z@8v?m4|-|}^MQ95S>e-s<pYapAw zAA@6iFCs^Kbg=gWUxyc^bJVWcYXp0Hde^4J-eKhU7%v_vJ)J)uOKzFNpCx4Z$2+mX z-aK&RUs`ph@GpI?ufvN{OE-Vap5mi=#4&vxud%%*<O5_&-ludPg~uvt*-5qS0Qtwe z!@=GdII>rvvC5GxnY|$tk-hU4A#Wthp8BIQ`S*EVV|(<WW&=7)W>51pw)YfQ`Yq^W zZ?-R!y>Eacdl`7HZ>U`|du8+QJ^SDtf+2f~k@@#saAZ$Yy;8BVWcHp#5&3uVUiz^P zo$Q_A%jBQl<%sN^gst=-I!k8nM<^nDmo2AV>N|VQz6`lS_wplq4NoF7b|HBi?$f=I zy~|g@c#$ms&LXQ!_7?D(A^Uf0PNrSA9(i%e>|Kwfc4J;+LMh>0jTE)Jv<+GFMeXXH zd~3HCEPFnk+>JPH60g?ojgwfVOGms5vUiRzQ$Nth_8RvfYg{c^Tc@D#eNa*30qU+d z60gS7tL^>3+4xqy959#sF0%Y<B-fH7d+&S(-XEZ|WcEz9*P#Cmy|ZR^<xCC2$zGAA z6Y}$HFK3Xo|AYiz;~x^TCjDZsH~?S!K}eJnZ?`w{lFm~e$64(+1Tp|w?T3V1-u{eG z2%uc;4JNuu+1GjsiSjJMU0#u+TyjX1Yk&A+qNv$Gxnw^k=|SY?q%8Rhzuf=w_R9HZ zmDQhv{8wJ5k0(eD3HzG&f9n<cD1hXUDAzm=30ZsnKCjTHi8a@_r|eP_GUJ=JF_R2V z>z!03$&6omULv|r`!ZhXWnR`dZZJOS-|})6nfRx5p5an5Sm_Bb`oVMiY+U}WvU2O6 z@x!~ti9K~ANnX}Ea>>hAl*y~h<WH8#o66*`mdXF7OlDms$+!1>nf$|2xpI1$9L6ZA zU)fex-c=@-`CIAdqb-KYKQH6|*E0D)sa#d&Pt|#4<x9(C?VBzo{#N~Vnf!$^`H#zF z9p7B?_4j$vk8joYOXX^&ZITjxby!1QzND=DgJm-Nt4lkXD6FsQyUWTyUn0jJ0N|Vc zO0Jl~<zA`UUE`IiCNGM(aw{#GyzH7%uZyUuuJ1}O>Po9lwx-%sTwslbtEyvMd>?hi zEk)U7wp3-;)>0jHL2b(Nt7z$Qq~y}~_QF8d*qY=s_g!NHH>a)}<kCIwz7H;c^|Gsn z_$Ip5J-vk$gN4G#mBXW4(~c6r)dQnzQthKW+sl{P-8L{fJhX-jO1rC2NZmfLdf<wo zn+JvpE>J1gOwVmxZF14Rx@Tap&_`E##)gMdA0D{UQ`M8pCofI8zQ1m`uMiVja|;)& zTh7(?GF^91S@Qmo!cg3a_L8ezb6x%njCE<QaWOpHwMGp&C-v$6-Zg!RiDmdWUg#*` z`O+0DZYc0*!q|9Hv;tz>&NagWLzC7Oi7q{Y98;pc6|OEVx^AGizo#&G-POykBsgnF z%gdLJjV&(}MitDpW2);rFu(=99w{cQ{w_r{e$2|Av9aOa0s3IBMa7pNr|bsCW~!P= zKuTj;5|(7<loHI}F`EDk-nb2a<WTHyS$yKqP0<zN!kqBa(pgL#4P7kp(U(omw1O4K zQ7sE;QYngy)rp#OZcL%q+%WZ;!kXTZ_3^ZD)9Y&Hmvum13>C)phzvKF3O%D*wbG0w z)e=`iHM1N=(q^n#jC_oPY&Eqpl-?-vPpYgQEwIW)dqzeIqgR4gjE}DE9cOyF9h=iF zcka(=k5c&dDD)2N+>i4chjkvO!-dZ6RSz6KVGHkMJFkKlzHLh9ZpM!>YWMVq>|x7c z-<HF_;kMk97rrfreOnHnpsmmsc;OSsabIFgcj|R6l1uvK@FFnhfc3L@Rg5_QbNW^= z=Xy?mHW>e$ehC==oL=V<oNqgQ8(8O!7Ejs;@u!X8Cw7CM*b1MHrhXWs_Q+0*QM;!n zbPd6{IIOrywsygxUCKhcim7p8jM_cvAUoJ}Smlz94-URj7W~)P7$?T6t~giuY#ij^ zkIunOA7lJ?PYTEfo%b3C`Mf#EN^x5;#{Q{l_jxj7cdEv8gpB{E%GUK{=0nhPp5^dY z(6@NJ3%tnV4d7O=t~vIQF9XZ|UUIwFzX1M_=j*(*6RfuGAoqE_d>HarHg5yV=05T# zz_R%wc~ivM?Da39-|qQp>zf|$1OJKVsP2F8`j^4<A^53SSPa2o?C8(=b0|}yKVf`n zW3K7<MKPz1*`~**3k=g<csk$!wydof*RW*NU)5oKxhEI0;6|`w)kJ1|9j7Ic9i9tT z9kU6ZZ|%a%8HTsOa4zD<7$0V`j;rMtZO+u(xSLG7PJa+Q+v^o)d~*6j;Iq7b9=H`u z{R(X9o63dLkAPQtj{Nv2nEqBD2H%+A8laxQa_x?T`@q<!sRA<}9L|6@cw7&j0Ar_y zIO%@i%(wHZcJKCjpq~Da&9wB}!T3|D`Mfj16>Z?Jd;Na!QwiV2l{w?=69fIyyXscc z*VMPb*sIBc|JHMeN9ymv=EDmS=f`0A@DLp0>tgb!;5QOn@iJxf$N7d`J#FjaFbCWW zRv&pyBb$Bo$9zcpm{-xi^b+)n|L4KiB)F;@-0ATm@ahDskLgjc><i!FF>@!q2}~Q+ zhrkbb{ao-?u<v8~VXx1j|8k@!zRsrFdJK%68hq3@BRIY6JQ?weV0^Cp5c=<e6{|<c ziYI#K=RbnwC;dw+p6ILlz(4a?J|Fh@6ZD^T<T%fO8^NmE2A+}VWwWB$>+z=o+4`k# z3~>B*^vr38aid}(7~d+MCtu?AP2kJGJ|-1D=9SN&_c5>hEI5jJ#gMO?M?dOq-VGl2 z`VKICu<@<<RD!DyqTlQ}YWD%KwYw8cOseR2#n%&@egynff?a=$V8vlM`fqtYv8;Fw z%osWQ-vyh^ze)6(=M^t_oB?Yr;Mc4Ke-A91#JFNV*y<kedSXy<$m3Pu!(g?APM7r- z+sYcS{Kv=22Cr`dpW!j%TX|N((HgHj&+EIv3&CddBCn^dN*g2Esni%@zj`M4de4!~ z8xp;<`BASYK9$&Y{_FwY;`PjvN*g2DT<7aDcPj7j9Qk~=*UL{EuSMX`qerK;Q2DUu z%jTCO{@1*|5B=A{%(qJRips~qs+$Er?Kx_z2&P}o|6N`$|968`_XYCvV5>`iT&xbF z*EnkIWaoQev%{PSdU%e{cvV$+J#nk5ndIvii(OsfP&M0g`oS7I*_594oezUx`t0oU zT9xx0%BzTr)6@4V8?O%VQuLey)MUU{g5lPTfUoiVM(}blZB;)GUX@_QqzYTkCO%ea z9L3oRUgtUTZ3EcsPk20z-o{k+H~G4M52n8Bm+bEZD~5USSHQ%)iuhGM>h<zp<A{B& zuc{}&KF(E7dye9;+v67S^ATr{*AvF7y@_6Pu<E6V|1y|$=k%{n>Z@(M=wo#~dilUO zR@?fbUHvkU`BQCU*M#22jy~#`=i)O6#+KvbWA(fQ(@d&bW2b(pt#+_tBKyQ8*zfdu z`dEDv7@y^1^=QPuE#hljWM>^5jf>ge9PuBB_}jf+K70kNF_q7cM*PPj{!?BrfBq6| z{yYP=SbfWL)W_$*_)zsE_;0*kvHIIYulZK}J+GHdts}E}00aI!P3Ks4uBbU-*Ekv* zd%9ESMhoeOQVrRj4AuFNJq@b$u*f*|Jj7+VkuO9sJcD1<Hk_S2FV&iFHGMO0$r$F< z&R1*bgI!Z-EbY9vCdaR08-LN{dGh~Y?|tCwEY3UM^B&3akt~Gb2<Kqb^x!xkh_H_x zLj<@%7~u$Fs7k!4nz&fT63C8_RavGY*V}bdhd99jQyXk!HOp<B)a}xKxLt17Wxc&; zQ<^%7+h%)xcU?-mD&;1G7;u6^WXHkx`<r*3(dbArPRq7?``P*E(fQ5HZ=QMP&pYqG zd1o}P*>$qc)7KlPmDkCJ+t|U{a67jQhF5T@X}E)3s12{oWLgb(vZ;;XRlKh=+{LcX zhP%1-Fx<;-&4%d*c5Sb*W4VP7u{ez3VdnH1-b|(Y_Hyr#?Haq1_M&ej)QzssFQz{v z94i^>S=g;&H4n@<kfBUE9$ff-@Zu<(@hxx|#~eNc=XS8^ryee*|0mSFu7|}*)EVvu zD=+%2zKnKhe;tg?4l@Sm8aU|O4wjxG;d?x$-E<A?@}k{z-{knR`I!iRHNt=HvF!Xy zu<Tq4{#&s0w}M}a@ClEV@0;T|Q5|wzWUyJ~F+GXu(Cbm1y6`qQm%;V*uX?xRMfKuV zR3lntv;L4!HtV;#Hnw9*w%UD}Y_<NJkcahK_kQ2<Y9G&62jN`o$WlH%PjL7+xDh;? z{J#n=q*(VHdY9|Mp8{i>uzOF34K7@qR<PQXa_g&qg=aT|KbnSTz6tIGE8i2~J3T%L zz6(rU>DnsO8}a)h{(#44;0#54@=#h`f2p51Oq*mr2Ufc%-^akR`5>|%tp5Bg^5rx< zkv&iQaPj{DthD0LFI~A7fT@>ISB#%7uN>j@8OLGl%#4Cn_B!x!kFg~~*<8NTPoJJk ze{=OfUy@GEVMwxIUk`e3>GWV@f<7yY>etfh3uxhrdN`c#LR$Kp<(16$9MY-3S^cQL z1)VLPPkGgUTv=#`<aQs9&57Dk^;`+=0xMtgPkh_C@Vg23b*_6c>B*8V8TM%#!N1~h z0sJYj^k8EWwU_3;xV*4e_hk-KZOML*Wy1lVmU8G`EYykGQ96r+s~xRA4}oRRV#1#V zo1I5ePKEM1nuaUS<ay7RZE9b1s=boY6jv+(zW_G<-%9z3%JnMP^sB9DKlP<-&SUCR z^Mf2m;k1q8C|qsl>p45ma}<6VSmlD7RofY-7;&!i;k2jj-5iH<Wz~*KOS)`_$4kL0 z!QRg7$2^}l%Bme@v+`Z<`AXa8Ij!IUu<BFx-{-@X?<c{gb2HfT-Re2AXIsQkyZgG$ zKIHk-ZFWb>*O;JH^jx2O3B1R1R1Z(2oC@W;A8h$P<-^+uKNNAkl5(=LpR$GeIp%SO zaNnlt&$=HBI?3C{ZH=2Y_GXX6nNJ)}{ll(dvL{(M)xs%*UBl>}(XMSYX4&<L^0P6# zA~$|6(70gdbRFlndY$SAb`7B8(8l}<+Rv_4DhlJ*06NC(T%*2j=M?n`JE!QFv1<wS z?+;sE)URD%RV*EU=B#)7b}d)Y#wCLB+bNho@3=W((e=h9w6(k5s3TvE!_=RyJuXpy zqt9v%iwoZcF8J`x-~~RMV>&}Wcbsit>~T6NN2V3bapA5F?(m$yBzz@U`srVpE+77z zVET5@(+8Gqlv~e{9j4s6CUH8+N9UJd+pl{p8?ZH$>oL!7C7e85TIxpUnxOx8JXSqD z={eGW(Bl>0Lmqd4OJLR2*O9M)WhZ6Q`N-+-OygX*>VYylyb65Gr<I-0`*4-<MUT6{ z-vX=NWW&o~9Y^9H_Z;c@K3Fyou5*)c(um9fD{VJ27wpq2&dQq<Jnn@v&-2Mk*Fu5c zgl@Z50b8HcdCK~^+VwWy$J9=Ctm(SQjwzMFjx}8ug=;F>;C4&fp2_^IVd}cWFm-MH zS@mo8CVJjz{XbbXe(Wb*bU91gJ$_6jl=J5-ye}$Ogfo>~ZqbgJ9ms63>P_vk7_538 zM6U4|eY%cv;SFH&a`+DL-C(7qp44w0rW~0e&-oOXG1>7S0CWCrq`lN<b&cfk9x%s- zOS>5?o9vhchj&b*`G_x<uDw?p9*OudCfHVVQF#N-MYuM?@ZE|%a5W}4tnwnZDoZBM zy=X$1T)}f>2NF0<+-DkxdWm;BaXOd4M*_cv_nyXI3Z6;4T&vgL21WwEomU&iUja5g z_3reqgpUM%CzsjAUj;UPm*;oGM*^Sr4lC{SfsH@l`9tuLz#nG(H~pKz#^2)kTj3*t zzb&fs?O@~6*3SN2@R7jZGrrP}?z3#Aoy-Bxe-b_t_)pQL&7P;hroZI*&%#Fn|1eE# z{3BrFAM^a@;Uj@R%5iP{7s19qlkycMF}}M;^L&k67kj?0pH*Hrjx|R70_Sw&&j%ZS zspq$n1_}Dx7_W@q4mSQu&+mkf1pX?HHRE@I9e>~xL#%{<*QR^UbNAG%uerLAy7O79 z#f|6VYqjJuGv2n{JlAfxSM!xJKbg}!Ow~b^Pqw5ixv!thrJkpYCAsN%mlH?ZrZ<A; z;58Fxx`9p~Z6BP)mCb+7aBQFV%0gXm)ut+2B~p)+&411|5q1G$&hj<C{f6+jW&ZPc zCtI7TVIoZW<=EPu^I9F~n#DiS-rL(K!vE@V>6tmSB6Xr3{C4-aE$Do!9>>U}r@Fz# zHibYy2!C689H%36x}(6aWu>bd`L{ZM+zHoa_(XDT54(BXBh<ffUH9r<CT_V2dd#6) zyN0=>>Z)(Gj@A2%i~O={=QB3yo-*pGb29I2uP(AP)y|x)CDooAh<1n`XtZ!!Yof1_ zJ)zw?19k4p_|G?LwFtCEF8vO?zt)(=9N!m*bZ&32i%GR5O5%5B%J1$Asl5K$$@)om zuJ4I82GvHoh0Fb%4})ti`zE&`#L$DI?`@|~^Y(vhtGRsE4VV-<al_~dky?&=u;-WJ z&rB!9kAJH<)H6J^U_$(wZYHjVZ#gH&ySaSPH>{Hqk7xcb?3+*ZBXc^6<#bLp49xZN zk834ex4Uq~sjuCRXmqi2ewz>H$2rq+3qHfZ+<yL<K0BvMUq2G-(>Xfs)23q`;f8^^ zQT~~}oR3pFJs*hmt-{}om@^%pCBQJSx{-gwh{{`oC{Fr*4~g~ZjHuDyoay*&0t^GI zckyorB7M?h`n~~<^&P@Lm3?3JY50+=na@A7uMTYbz6+K<b1wmuuQ{{nTLc&e){Kx$ z`N}@^2h%qOj`Zod@A;hRG!G|<(ghs~%Oc+C9bvKs&qau?os_TguSV?p5I9ry{5OcX zSht1gH-x`UXS$#pW2}$6F#Om)?(nOh1czVk92|bNQ*iiI&fxI#%pio-<56AAL-d>T zXIkCE%V}o?+0!Zy&URX`Z%dkqmp$uUEdP9FW#7VtzOe+p?ETF${{QLy(kJ`BJ|R9H zBiSJ#_NIfm4eb-7Y$%_=SD?n{34u0fD^LTp&J`Qh2Hx5Y1NWB&S&okGltt+@giq3M zfsrx=1?P4hP~E6L?HLOGy7``>s<rSK6YS=8tDmT?jDtU<m0k;vF~MO6f}b=k{l)D- zP(TSfbGkaC`P6<nJtvag9On)<fq6a~Y$!yw!L#Rd8F=rs@-|2O7?ZD?UoM^0mD`QL zk9XC|SKPc0moA<yy6_^n5T#Xms}pdjE7FJ6t4R}VTN3eOj6H4+I=WR4Zs!1B4>eIe zIIKL+Q4b+scwuGjxa=`T)hu1PlfMo-hgA<q*u9o|2+zDY*Mt?W3!bm~K?0wAr+fb8 z^sC%R;J46!Y%E*~mOXN<UVj@H3H)~YgYj2@jlatCyWk^%-%WcNzZY!$A<x%&0tx)h z)W7k!fE{0lV(*%bz5emYTi*kGVDXake?C&V3meAoRvR+!IC?4T2tC&DXwj{G<kr;6 z@2%Q<(TS?+<;QC;a_gQx++50ZR*im+*W%T)AMa-kzv?R&o|=7)cAWj}%;&C5uhwsP z{+LE)?~X3Y@0|1N4LfE(qC0`%>SF%BTGHJtUw&8boSJJ&mA!7)+y3@!ODS{1kz<SR zZXT<uxSXAEljDcao*iQs*ivrc*u`Qc^^euGlxF1IeMd2O!|_k&jxEkUo*C)CUTZcL z8$UazKlfR}?hE%2&s}#nxhl`1TW>4BtCab4Z85huzn9&Bk1aM!)8C_u>UYiFF`RFG zEdMBWKT^AIxQ5k`^7);M($u?4tSzU!9$s2vjmcWK1|oMi%O9To@TCuTJe*s9#rG@N zx7O{{TEBO|?OwZc=5yDD+F868Uz{uVN^chP!`1m+Sh=h->uPvL%_A>YT$Jr?s>%(d z_0!T{RX?IVj+J|QFV+8X;m*bqYxkwARCZRC5~X=0S@?sR#cG+}W^vLQ`}@Dx@#f$E z#g;e6b3eMM@G~8a9kUu9nf>eaJ34DhnW21U-%!nL%KXK?j^?|XPSjSU`QKc#H*+;P z?W)^Z%JsXj+|K@6YFII<Zdd>HHIG-ideItptrz!mKiSHPQjb(W-1u;F|58_D%OAd` z^$IjrXKIJ5>#lumER#7kR+D*ctUmMYvAL|-CDy{fdG5L!jxYS1V~hLUj?9^B)hpy5 zw|dgOALB%Dovfi$zJ3zpMQ~3otDC<i`PJ;FDt@hU>x@rVJuve#xrcO7g^PJZ=in6_ zJN?I+PlaDiK9&8oimjEOp7B7{XJ$T>Q%tPuX>={CD^8K^|Cswm4IQi3^!066TYgjM zV%G6#=F}1W8+#@$NMr+1deKmJ6X=w&8|f#)-mm|{?*BTYcCPeT=QG2=>Vy2-f$03H za7iulVMOD)T^nx)KZTex9m@$Y46NaNqv!TcpVFGXZg8Z}y}#s~5}fH+O^9LOtPcJi zKxCivn!bMnj`hhl&PBnQ4&J9t(8p2hcJPqC8Xu?f?m;4bnzx~OM!}grePeDISo<vh zjv&$}J&M!szel9cyX+`HJaeYw_Xscyyg+Sn29Z8pmz%y4IMSzi+2?b=R&f~K*AR22 zL%&%I<T`?~CSCa7iC8)6!5Uh)g)vv%0NQUpeobE#<X{N@|H=KD$}HDO#jDQs&ciuX z0<J0j3HMt|y#Fcq>gUVK;yb)wJJqS*c6tA1{OWi8-f#DB4|xC6#LE`uCZx{gZ{wK1 z7mEf+|G{cHTE<_mT9VanxE$YsO&{To$E71?@VjSa^0|8}KH1$cc>n6V?q5B0|3Lbg zcsyoCI`18jv6O3uuD?}w%yzrC-3l&5;g|XFHo~t2Q`}4|vee_n;N_mb5_~&i_YCO0 zU_O31;==ud#yR7}n0l<zJ<>43J&D8H!Sg)kJ-yo1g{wUmc-#%f9v6;{vZqS#?Nu)9 z3E|k_a694TTcxt^N7j3M0L+-=I9tKL5^)~#_({TddCn8yFMyTTyOG~StX${~<wbA! zUX%2pPM(VRF>d7emTkQVWuK`!=|X6W5Z>&=KSnrh;KKXBD}1=>gz~zyYLiu-GXR!e zvlATbA$_nDUa)^C;>Wn2Lq+}JPGmk<c9N&s#o;C3B3NZnx)vYa2By7SxY~M|5AO%J zM||vddMLNP1$24k!CevO?g$SOXXPTlU_W_;duG}<aAHhZ+<mf+<E98>zY8BB{2H*@ z8XIMQ;8UK!!De?a{UjXf!i7_A)wv6Q3j9!npYR;zyFbE8Z)E|8`(DzAay=b!Vob2R zud4)5E{7YyNVxZ-9;dwTrM!;61U?e@lp);rQuZ+Kqto+O!AAnWi~eTkly0!ymu~U= zt?-e+-$pwce>>Rt`#t{vd?fIxlW^Zlouv1@8VR);!TH|DE?WGP+{Y%Wlkxl5y3DLO zOYf{5&h2j8J8L(0Uf=uC+~m$P!xwi}pW+_lb?z~AU-rFIa})0WxC3-=w$Ak)iS}{l z5`LU(eB0&`jIRi~dbL#&4+hIGzoW=O&L#KRf~5b#uCrCo=CU3%^IK_wz&3EL7lljY z=lFKlP*wcOwIhuVrT<LdEqG&n9r#V3(we?cfUVyHHCIVvW^ks1ac+V>9dCVzbmn}V z@GuhV+l4>2&*IAGU~mj&eiboiJpEdkfEBV&T)iXEwWjQ=_c*%ltW+Jx<uH8&PjDgp zpXs_&btb0|=v5Y-$K|w!S(Ur+as$fROmuAc11AdcM+@mxZjIY2m+IXx(2aq<z8n@8 z3FG8+V{*Z#oev)g{HAD3ZniO5hqqsp<-BH|EV}yr??3;2sb)Wo4dY|r4Vk5TXLZi{ z;aGj;sXt7T@BP)^<$gFew~|q?y0iLqg+7y<{oZqbmt!=n)F^o8nfBa?vCIiQSt`~J z<QAR*F>2m9hF*4{BJN}wSIQN(x!BA=lQ;{{zzV$Yt;mdZ)-uk9d{4Q2rG<Sw{;ajD zaPR2)vuE><7H6fqD}AD6?!JM|#VZ%C&~u-;k3BxJ@OOFB-{lgdX-e(6(_cM%^286Z zkEeh3+-bvgL%G6j9ZeT~?MLe}wHF=xQE%pgzFbG{g0DUEwF{0tbId(Q`ZGOabZfqs zOrx`7T<6JD=h&ZSDEq5lKl}W7YEAl^(Vh4e<%9O4NqhD8sjYkqPdZgYnc?<AesB9i z_vG+c*4K`&f7MPg$I9_1+iOzxiLYgHKe#1xvXmKYUpTh2{p2ZXzFNLQe&P0=?JCu= z?697SCC9QqAZ1D8jB`Hk6E1Jgah7+QW}2K&4A;DVD>YlgQ$KQiv>p3T;rDs&Y%k@8 z^U7^JAI<B??^cT8&Np&NuAyago9iV%qV;E$GGo-@MaK%asYQmWJFd9s@Ee5Ss~w_! zE~0%dira_hma;JY&(p~*Je}O)ixhsybF950|LC_)Qy=7fe@k)Zz=!FL50uzxXj99; zEwisLRW|G%x~#LRl<-73v)<MI%g^%g*y*R8c~<-Ck+WmUjXpNkz*_n1T}`fU7jNO% zgOv8$D>5gCsfoSq;w*fC=esU_?Z~%p&YV=*TGqxl9l=1r(M#Ja^N+ri_ET9{HE?Sw zSHF7$)-_zKC%XN)y2n(Pb&u8WuK55qx>ibeu)%KjPD=ASHgCPF^Yz#vo4&Imb0W3r z*u0v3R$t$_Idj6*+`d#p{LEc;shv1>%Z{5gwLdDhh$naS(qiu5w)`%RwLd+3{KOmd zfGWm<8TYmfY+krx>?P)MUUm9AnfYTcXL6^%n`tJb9{&>jdHhRHwPXskaNDVCGnaBa z-ux;lh}V8);^**-Uyon>{A(${@LI~hROMLkijLOmZ41X<nvt1xVB5kUko*0wUzfS_ z4<7HUQoD|qkh19*{!_+<)K>bZ<7EEnEl&5Dan<Pl$u?Ow>}>v@!!B$ZE&SqrxsIlH zx$*K{$L8$T@j1p`BE|Lj$I{VQt*}sIW>TzmJJpT$|ASh8ybaU`e4okrK2z`eOy2jI zg6}g?A6PuASSwrdkMf4-@w&b3Znw8tr_%k_UKz{0^LwXqGrxPPZl?A@xwj>MZ0^V_ zH)q^A<gIsSa($<&J=a$~P}6X2X+|;K<)d_UnkR2}`f>}$uCDn!J88%Yv*xuGnHBjx z92M;P@o;b5$m=!9=7*bJ`&g#&wcgB?505?E{&44O?U~kx*+=8y7R^_y8>#m@-;MW< z$q0KGPlww(a~dN^x8;6~N}2b$^02Q_u8^-A+39xoQ*5lkjrnJE*0s^zolo2tcP#rl z=VRN!(TxWhLw9|PeT_647OpC;AN!NDKbSjG<MvT3t}k5m>Q~RcFn6TZ`9p7T%(){k z{mI!MrA&XGylSe^{9Ei0D9ttdqCWLX{xMnT&z55v=Zfp4zm%)ni48w0rF$1r_ci;9 z>#sVZxZ?VkzH#;kjMy*8$M4hntsPnHTE(@-<E6|!*QUM0k88QQ5!-DruBY?Cw8Mn@ z$@`JElu%>3_Q({g*#D%el-ba7@3jNB4z{zqW97HTGGlcuuU5UQzJF%jqhi&K<Xrvv zG1j$3XVvO_XYK0h{O<a7FIVT;V<tyADbw>RlgF-{8?MXkZ5T<*RHQWYrMx)qD#q#J z&1}xjNokGfzl50RJpEQ>)|k*f<K-W6Ms?R!C%&2?zcerXS4nGk_v<`5;T&DeeV6MF zdgAEB9D+W7okrTKGJV{0llH{qv_}&w1J@tZ_UDQDdEdG2-RHomjZ*Raa)Mv?0&#p( znZJNPkC<Z~Xf3btKAk*}eMt9J1&iQ!Wtcy@s;=>43+k8GrJ7^Ts=&E(0!Q~8<~C2W z4^3|rUNADhLw;^*cU}HY<(gZ*z{SS*m-{E}3p4TlbH^0#OJkdu8=Lz~@{qgb<X$H@ z-lInES?{V_m0h)<eR-WrS_mxGDhTDit8Qh=ag`Hub_LFz6FAZRYEs))S5KB{3w);H zp~_VY>Tj)U_$V3Q<uYzh%O1Dcj-WR+C@$C1s9bS)b5z&u<K;*SW%YP_UE$URx%RrI zcG;0%?z}7Nnr>A?<ZrDjEMJf#d}V6Y#5!kRp|ZVtCib-s%Bqg0V#<WLOxQgkF1EcT z*#1A}y|S$>s>x@AJ$LsE_Vll{M^a(lu#wVR@VDlz-LQ!TfY-1sPk6jFNmt5Y`h59o zYs>83HJ@OK;7x;AG^D%j>3Et;w{hJkdsc6_d-b{=+p1<#exjj8Z*Ev8cin_7e4_jL z)lOZy#HzRhthBrO-Zg7iQ$eh^Jgs_PHFpngxK}H*PG@XPJ9qu`3=gau>^WD#)nqJJ ze2&~a<J=jk!0TC*cFkRV=giJm;KtQ!dsQ)SRfoQ=-<mcY+GQ&4rU7;$a(40ljk<Mf z9QSNoJ88Cqb(^(rnP%$km(Nvq?p>Zt+_>iMx9aZa(Fax0(v~)ddp<s04~VE~yPT6< zw&ZWwY>iN6w=l3*N8q%*G@TyW*C%5kQJD*5_F6uFOI81)pF;n0eHXWgF*QN#neh^^ zt{2SN^VMbo+yI<Ly!R--I(hw!4_BQ0A4Ot)x8m3JhB?#sa|FctM)8}z_!;!C5FYF6 z#vh;4O~?I&8wS4jIR926vM+}yPWpcniS=#4uj?IirsFpVFbuq`m4AJR^wl7y?~lQ; zz61CRh&j{oM+6uKUiKvamLk$8yG-AA!Lh!>_|+!nOvkqfFburxCH`4?>wFw~wT8?D zeP=w6ALqP|#OBre;LBy(Rz&vIBjQQlb^J#5B^~%zA?8fq)dYB~sLM<I+kr@*Y%+bn z1djEoUN$4<OkW=Xk-jG7TSBC-0Wp1hz>&VJ+O`)lXZp(K-dv$FK8;A9`oHP>3OLrM zG7KT+Oy7SZz+**S@htyLpRQR<-;3Z#pVt4FFb76{T=L)f=dt`(4ilzw%03-WilaTU zI#yzR2k^^Ab6!VQoJimMw&Pb{kiJGACw=x#KzbG2!oOw*(|@M#GDVJuH*W)PMWpZD zh~lL0Bm748Rd(Zl3Nhz(WN#<HV?|v>TKB$4`U;5YD;p1Hs7^)@bEdCsJh*Br1c~&` zLrmY7z>$43WZN#poauXl0FM>5AjiKxMEd3<rtiOiBYjnEcvTj2UPtx_0Uj%A!4Utf zJ*;j?mpx5*q;F;i{;Asc2ZTrZ77j%EntUAkDhl9O-zfg2h&ivLLg%AMU$GDWRz&5! z(#J{P&EQC1PJO8vF=zT(35fNbz~6;PpZJQCz771w`r7dp2s3B;))NrvTSUEN<(EF) zXPCan!I8e|Ui`}2oauX%fJoo_SCZ@~VbWLhakB3)IMP?siJ!cKGkrQQMEb5)8$69j z-(nvpeXoLJeFyMQ)gC-SoS^S{{5ufoTjJx;SE)H5vA!4a>lilYZK|{}*oR-!2QYot zfW?!(5Ad5qbf1r#rS^@=Ww`Pd!j-Rg;#G)i&hl*|AWDDD8N9~{Q#r2namv@OBM6eK zQyF4?me)H7_qI76?N+&3$UEcdH*0~Y+Rhvkc|VBEM`TkyQjJ9VE`?Y5A;Qd=KJ(je z2>)k#S8R63c<OK5;n(#*aQIcu;P9(21c$#NcmViyJ`4_jK6n85bv_CXf80)r*ZCkg z{Dt5F;MaH@9DcP&aQHPIUYG_XwKSsq!4a=xD>(cbpMt~R96SL08XtngUkn}qejT5| z;n(pM9DW@i!Qofmyvheu(h=h0P5RWYgTsG49$g>Fxy4xd{aNRuE@_M^aG&?<UB8aM zPkX;Lp2jP=CgOEH`tO{Ny2Y>dKkWVbW>4+^qW4>RjXTbzogq=4ax38zl)NYPT4zb# z@BOQY=P$8iOmk4_FUkK_#{azc_YzP4NuKonA^h~8<d407KYsd;)=5vDx97O`?jWB2 z<gRlRq;CxAPuVj2vKpu4G>5i8{Lecd|5AO~yS;yec=}uRQ{KM|Km9HH#WMcyl=(|# z{{L3yKRwZ3;rnYw_R~ML)_3Ysd$g|i1b-M~eEh#Ei@&qXzux<oq95HATfJZP(~RGj zCsBW(zgJj&`}(NRb&A{x;)}$eOud;7{EHd$%zo*o|5sZ7Zoz+zn|tDKqWv`D>7O^) zjdJ|3NH_E2PtD?(Nsr3n$O+HKrrI9M+r$o8dXT0kJaO_#PsZX%_xvh)9Cpj?x2#;f zY{kzm%e1ds>$mSg@4ff3`PMBrZ(N<OPGK4Phdkp?$)uXCuGaMVr)HC~I>)23m>WO% zQh6p%?3s@3pI*h$(X+8Q*gx(nQ}1UIO+lPO^Q4DiO2+13YJ7W0HlZ!1dMc(gX`Q(z zT5--%{Z12C_BhOM5#<~1MtuM@zVVWU4h^xg$fV$#^uh4G+QKb7G+Q^|c1j<bdLO6Q z(6Yy9Kfhx2Z8vtVzWwHvKmW6LeE1`osixRt>P8;Z4))x`^w7ckjT7e2TOXVF>@CjJ zcar#lTO1udI-`x#=VsA_dq0WavWeL7gSJ><+0(VjQSl?SICkQ5Gz~erwy=9n&I17h z-M7uU*5Lf-=8B8U@Z+$~af(w~E(wG$x9bL7e^_{o33lH+i-%4(f17iG&X>7&@hknD z%UpN?j6DwP{HZji6CCnlY!BfvCfI%Fto*H9vJ-zuTflERW6UYQeQ(S-u5+EkjM45o z#`wgAy?uzYHALODig6gXgZ@gc-7m+#0zv<*i}{sZ)aNXfy$zubUAXXd;P>*|fh_ak z)QwxK)AXY&lm*@b>czR0{5MXFvBB-5r7&!8`)hd{YGuRi2sXHI;iX{N(1~DE2*1^1 z*%Rvr2YW~p>{$iR?1?e$ae?Y&2&n<9P6`ONIjn02?7KiV3?nTO|AU^>Pk6h>dGJRg z+y%C@oUffu>RW3(UZC=due{ARaIl~J!hT1aBTkI5-|Y|9MLhP`$$t8a?02{mOdfTz zp&P+w7p{DlgH`q}gt`vl*k5P1QCBWpHs9&P8+{tHne@SC@(4Ef!ZS{cb6m>HPSUCG zT`1kc9D8nGGTBKP9EUz7J1>;|(t({J?HxY6k8sNAI0Im%w|v3DHqwXwK$^w#;mMIE z>@ii=7C}!XRjRt$gVcd#KkX@->s42(bNY!3UjRn8!z;nf9;?oa9;;l}c#Q38mwJ_P z1Znf(!(fgt7ybm8c5!)0Kkef5w}2^^3+EWsH$j2F&131@5ryx;Z}kHX^#d=o-4o;M zs=8;B#@`>MrSH8%b+Q$y1*=XzhBSb!|4=XQQ2WZ}CeNYHR1c1SE0}t4n6hfjar?qy zd#2Tg>lmaDxbW>@>dx_1_D-<!qW;t#fkQh6J)5KOPr<XYV0S1x`GvBRhpj2=o`)Ep zIt*zm>AEWWe1x*Q{pD0H`o?VQ57dJTrw()sy1n421C9SKydJFdrXL*afoJQ^mXG;? zpX0kB*>C_MuXn2czl>}Ft1mr?Z1dqyfcJZhEiR4aOZt#6X>3mn_l(v!Pm#uOCD|$8 zT?l1x`@GTjbu2fi?9`vi>%xVpbGOgi9`NUUIQDAagrE~$!3KE22K8ObH^#MmbENY6 zI=@KyQdZT23m4{CxJdP&c6-2wtIi)nOeb+6FO|o_V?2*+q~`>3na3x=^l9yr<L>pT zTgMs0PaV4OBKY@x_!;oQDEyDW)FDp_+&c`VO{iC`$Lw$pd>pKDEk<5N%r@+>y+<<G z5ymv~4rL)f+ml3j*gho6qjf$3xP&}zG)#S({v^VBCYD!Q4<S_^4}<CFd6hkn(Dr%N z&t|0H!|4m^w=R4Oc!|eb!5phDt;Ww~VCh$T^?S~C@E}-ammcM9Wd|3$%{m|7WSG3$ z3~w3VFGXXM)r0a_ZXELXkYV~j&>!O(){9mC68f3jS477$<<<Tk?wJvO?eF2Pxte@< zi;pv#=?7NN;syKR1sj%<#`rPLlAZL+R_xJQ`0iXoy=x77_uNZymKGe2BkXCnGSU`- z6XQxgO_qN8l-ks-^ZgjO5iI>D5%>X97Kg_O$9~7>nAZ3lIIAK~x94nyLz@Q9eIB17 ze2eFN0Zjdi<Bp46VD$mc2|6!2tUd$Jaj;!unzKRrpY-8C?fnw;e8uA&;a~T-7JL+} z`sA2%Yo${UNj>;E&uIXUdQ5%m`I)mpdA;nzsV5zqAzbxnZ2=B#K|O|JmbweaEahJ~ zpENj?+1A}pDmgSP9J{Um=-9OWEL+2IjjgT5$JVeuI`&x~ND5@&ZHuvvakn1%VdCin zZoP2&xW-bqM)(mhI>Wl-1&{X=PM&V<@OE&M55ESy#N$>leZ!^g1g`+AUrA?&55Ejd zoD2UZxX*__38tU8@T1^QMR+?{{q`90kPm+z{J6)XVC)Mze+R6-)Q|k04}TH-w8t-j z=`)Uh9Q;Qf%bsV!>L*J3Rj~BjfvCQ$t-+zKk1$+NFV2zP+EM+@+E;d4+i87kYdiHf zTf<)cEnK5wU${oaK5J8V+?ow1$kA{mYuKxP+K^hX>{mV4fn|RSG6$@-Xh-NL4zB>u z^L%lx^tc|pAmY=$fxnD6%a{B@J)k$(jNV{#N5qdYHosdo7ZGfJw`|tfi_Pzr&GQj# zez$BUf7$G??8Iir_jU$*&=u?<O{h=O1bdc}-t3QYmi6zIR})g@aWl9EY<6PbPs>i( zR`49zrn)wrq`zJ9a-_F?3{=k8wqTFSV`*bd@VuG)qn>o#<!}QSndb&faDJNarVE}g zJCMM~w(#9FwuSGevCZjMS&+cTp74DibrrswZuR^&_(<T>2f}yLE5Nc}uEX<Jf|0=Q z<e7<;Wfj=?U7p_!9|`<kn#1^gVB>H0{4Ma2z~9Pq4C8MD8~+K<-wz)N`~!4F<39;D z{<EHc7(NpCN4T#y{x`wKf8O&);Uj_nBHi2gFM*AJ((}jQBY}U0`&`f0&xM|!<Wqjq z$aw@Yeo~;T7=J$4_${8l6h0F8t=uaazYT2sPS0Nj9|`;}4pHNGgN;An`9tuLz#rxw z#Q2-R#^2-lBk+;He}e99{QY3#AM*SXd?fIn<vQQ^w97@tANBkf;Uj@ho!fo_$#Jmf zXB$#}HqWC)#Q51p4l%DkTL2s1A1~P@@R7i8;hNC+OTor(_xe}BM*^SY!uB7?t^^yu z%k#V8BZ1$`wTJ2N0~`NI&wmO&68KLuY#RR{*!V|0|C{iUz(2}3Z~S9m<5O=MAF{_& z3H%d`!^S@e_WX*<lwXnKJriR5idx1@&#$NlJN_^G^*hgZorG(a6kE=Jy+5}P;`leh z^D;lp8s8%?G-k5jJ5&EbTi=`SiE^j^{Op-Drj#lC#*eS#i@x=lOV3btea&^of6<5E zebI;CebM*h7WV~ULEmvK{MX}O9dW_AsBl%sto$SGGw;jxyBtfIqWiX~qp>r2A^R@& zzIxTZu&FG*la>BXc4kXSXL9P_CucinlrlBDTl4)h2L3?0Yab8a<@j$#VI-}&s*y)3 z7rw#@aU*s63bVz0A72;ccUFxkv~HL5W~O!e2CIE$|DIP4>cG+$sKx5y^|K!@o_V>k z)qPv@D&P6&t1M~OSE>_Lsot#4NO?r5lwNE}u`#X@>SO|cQSDF0FFya1@qc3dPyS^3 zizDa7-}6E~L%Y_G9CK?)`WoJ@v{p~gag|Z-T-)UGy9YvgeFdi!8(NB2yyNBX*YG_R z>ruM)+8k?BJN5T=?kOcc_K?L+(-+S5El~q@F%AZ|(tT&qQP(uEVE*ztj&$7o5X<@0 zt@qbF#d?44+9fbsr}+k@7{23}$p7aGUpkFFy}|ys|9g|4U$=bS&HeYR>+f0pp`M`| zwYu>-Cii#WKJnv@i8LaY-T#q~+|m|LsGmq#rsx&gXd#*(A5re;S-YXXzh~`q@ohb8 zHVyUinaR4fm@|!%wsjlbdd#wT8p?{EHTU)0!pqia;!$yKLqe5Iqu|E3HuF}#<d`P) zO%p2NA3f8b6E(eF=RNK#oLl05?Z=-JGnWz|T;U_8<6Ta?M)kMiErL^?ua0MP>Cx-% zQ`~)q53gSZ;QA#~K*W)7?$&+#1byxJS0d(2pXLA?2G;N4Ul&q9R0pO{bBJR5M)2=P z%$W|J3rx^AMzR8764it0`vN%9m$c%Sm@|EQ2`~(to#)?Hq=0B7Hhq5tj`eN9UqsBA zjz1*8FmSfYF^m)t)tl-2dvL7pDg0CE`&*xeAGvp`%}gKn$EGh)UB>!G@lT;I5ht?m zo!jx7zIq>royle3NMBZQQ|Y_Zr{PDgLAp(!?%{oTlMjJoeXaPX(x+z%k$nxD@tZ!C z-Spi9j`a=TpGx0dJ`F!|4JY|$`go=g^nDH->w5yf`n@@CQ}Ss7BKt1t!@mP5AbG^> z`w}?T_dNby#GL7Sf`C}x8T=)rfaqDA>HA}_^m$j&hPTyx{F*-X(@5W(LtLk?Agq8i z`Z%@kH^Gs<%B?=0ALlHtY>sW^6D0d9&(V+Z^viP-bF+@%RlQt_yc3a4^+?$q+qzY# zc$08*rqBHL8^ZtB9NP)kU>f+}O(oH$&NXn*sji#6-&H!e#rrkKQ)5L(S$v=OYfh%d zQS}Gs)Mz-3lg@ene=74IE%U!x=0EHGt>|Z5O>`_fm+DLOye;-G@!leQ_1D`YKjU6< zcjQM!n1d=lf5{_JJb5Kwj{F?=iH;LF&2i+oP5wOfrkxc3cfDV8Sm!c(E!{<e36Ie= z(xeNr@@a_^x#L%5@wBM&*=-Zkj9;eR;irh{GO%NC!vHH(-=Aq4<ZI!<oBQuuH@Kl+ zJMt-Z<+^)&nCo@#z-s1}rJHWp{H|#x0ZyJ>hJ~bA{L4N3kBdBhS*S8>ym$34ZR*+7 z!?(ouxEX!~^bGf`-NfZyRF1N1#W*IuK#ao2uL`5U=u$8W9l!pI1LKRnDBNA?#kD_a zT4+SJYd`B5Zl4czSNdOgPK&=`zGtXU+w<EPGcH!?I&B3)+OXCu=Q_96YX{-CMrq*% zoy3KA3M(T{j5%K2e7Wt!(_P&hxy@kuxm$mA2lz@KuH(80)^qhX<QgB|4{r6i8;m_J z?Jh8RIlKql={bwRjNLAL1bmkdr%ZZp>%yM^e-f;`K8S4dSo%MQSY2UvC@;3==MyJK z-nM_W=HJY<aPqUgf-_HWTC?!|q%oZ_u4G74{Vzdk!58yOJ!#x@YrVFB885?pKkCYb zFC|>%G@Yamc9Q1ZmM^@pUv6u}k8#$|2~?UIuxyxz<iQ&I$Y0~S!_8pvEMIWQ7hcF0 zUdWd=4g46BZ;i_C^L2Zi_<X~@CgdCD9KMbDx;ckFUpKeV=j-Mc`tmybHka4UGxYho zd4oP*H=oew>+sv0ubWTk^L6w6e7<fTpwHLgw>e)om(S<x=Ir@=-P}K)ufuP1zHZK* zbkd*Q+`M`);^yP24;DPuaff{_T*n&6SLmyx4}F_7@q4k*&q)*dxsFLYE@E6s*6Qb- z2xF|9Bd6<o#LbIa1;z#!uCa*Y+J$$483P^e1~2oR%fKBGXC+wU7+m+AyV*c~!G7`x z_IE|cDSCtby`;CaF(%l(bD<onLx&r{h`pCN*E>GPr+g}7;M4X~zT<24`rF_mf#1&f zY}eT<z%z-L!%nBa4~zu<0OO?bhrq_);`v+QBZ0q-@y+<#!N%X?`6KX=z<+|SW&HhM z<3Hv3Ps2w7|6ufv?@;uP@37||fsX|KH#r@c{-a>iKkE4}!bbxCrRW{s@#r1jnCG8? zj~HL7?HylI3HJIE-@dvAmIQvDW5nB|cX{C*UsI|-X@-vkevz(X{3T$gUze&}{n#s% z!dvZ|x~OGIOZpP!eD+Pfh&;LHBR5<VN62k%-L?G3_mnd2HA8!6?|J19Gs&q#Npk8x zX6j%6>(Q1UjMY@1I+W2`sy|jDmIAf6E@Sx>T8&!l^z934HJ(Ze2S0nKzgs}#p8Am! z)pIKKmgdxdOzOY)*MEn`xz(o*Cduo^{;t`lE9boiuW1TiZeZ{1kuQDLX?q3@&;4Dy zUmw<MVs?Pzd~vViOvq)T?e#ZIv^_3Y{f%XDdsxHHz4syf#;Cm2#oEC=zjb)$9$yaU z|I#t@s~(OfqwAAQaaOxqn{WK>fZhqr`9j0K&ZVOdV)e|i+(lKd<}x)ytZ-Y({9tZo z{(Y=VTB_Jx(^<!gq_ZxnY8+YkjaO%7+}d%IR~bcLsl6uum}*>QFJ(^pRr2chzHo7- zP|AGi@NXSB`J>FCNB6LEZOv%k%U$lhPVPjNd;5_0ziuDgMUAhzbrr=RuhOFCiT*Dg zMAN}X_ee{7jabvXk4WDWh4&umdz1K0Qo3$h8sgq5os&!Jo-2OQ=|4-hQQy6`I`8SP zzPWPlj&vPAc9_as!JD+xe{y!LHGd*kKj-CKCRcxTDO<Dq^s{g7IsTu|j+Jt)`31if z;yzHy_PI5BFK}y4UT~~#pVpi#u8&p*bSv~yJEs@boIdjAHr2%oj5LdCUgBM2Zr=+p zuzo1vFa3SStq@pB^7|I8Pgj-8xV7p^Ijp))$JSKtsLHfGEtA%Yl>XCy@@9u&S1R_E zYHjKq8{NjcI?8qWKc7AMg37jN^ixb*=uLV%@-Khm>=>&MpUCbmR-P`sxvOIqD*;xP zGObN%c^7=yrJ%&?U5RJ863?2p#K*sJ_Dxsft+J?f)*G(Oqm-G_ZheDNXZDR+nKR^+ zT=?0S+`54m?)iRB>jz%=+b2^0!PI}jXTATJ{HLByGOzMUd}^iERLr^BQaPyGBWF*$ zn(#Gp1vPM@<{kAa`N^94Ih3U~UHfuTZgd^xZ|b<Xl)K^i>3V6prgGu)&wS&V&*k^o z2uEA(t{YkSdEVBQidw^YtfRf7Y3|<BUq5>$UB6HaYCc!;`>D0A(0D4#EM3a$Y+OBa z>b!N_7JjOIX8tk%W;t=|mX^{U_S*8ynODb>daYnsY)oTbJ@V%9*RD%0dF}dSu5y~Z zUg*)J@Keuh52eTy^K<tWYl;u1V-U8mHfnqfs^4ima;d^QWOCD6<g&D-<dSW#wI>B< z%a(~fR{6G9=l7&zWhqmvdA&EYqWIwHubn;9UORh?9qh1o>ikLjGuT`+l#X5rd!=PB zd9c`WVpcw*9pFZL7iV71FIq6V?&<|EU%Y4mZ}KZo@<#jhzkVuLta1AxTv&Wi*2YK1 z4aehJcXfT+gu4DS*S2%ZwRc>pnF6(spFVu{B-W1=9}Hti(%SOzu~NprO;6b6&FL5z zQ|Oc1;?_8NY2n`XD)s{RZ{=B&_IHoX>s+z=;OL6X+0_@%?qydvEG*_4_I5PQdAuW+ z-#7QsG^bJ~{cX+Vcd37QpVsVl{j0N~lsLVteA)Q{okL#b48ktxHTBiGk)1VYZH&u4 zv88-}zsl7`I-+K77^7dm`OMfe2c9|j%;9H_J@Zm}1i3i{%H<m6a-3X>HRRJ+U%j(t z;VY^?{&S9~XP$z56LWHPepP!_pFb<zFc#-<+^@L(25Y1iuS@e|<>5Drjjm^3U-x*r zj&9%H;w-LBKAhBl@!02ejWUzo)tKg|^K06(RbrRg?^AfL@-wI7Z&>HKp7Fev7C!Li z54k>gw0{r#NB;U?aWK)F{=tU9_i)_RF8rBei$_14DQJAX;S3|v3e`mCU$1_qc*&1i zGWBmTUahX4y}p#8b&}#RJ@6=c-|xzhD=zIA?&x$q|G$<pF6BpkyZ06^7VouNl19?} znK&JdbN}zTN9X<*^fp%RoqMeIanMb~KA)~!o33u$+NnN4=y9cK-E6(0SX;{dLKV3z z=Zv2en~GPMerm?EJ8Gv(-J0vn)6Uw<u$t?t9P944yvEg9v09}}N9j}l&r|L^=4YBP z3xu`x&vfKlwcdB;N7qrK*Jo<ev6?ZP^~&FLHWufe{>Isp_`W5J`Tc)gh+F@=m}f*$ zODygmX`lHDSDU2_|LJq&Tiempd9y}8dUSj7+VS$Rit()az4ecCg^5OvkmrkeTJr1T zBVGT<!XKA%FIRJ1<k;h~Iy19!-)lXY%U=6vW<D#|x^ro6-)n0!*SM8zk4aBwMJZFY zulPCQ|I*cM)59lN9l52*n#lDdtlf{q@#pGe6OV**`*fTXXSP?>?fI?Vg+Dx=%gnk@ zYpW-9dpbW<O4?_>wlrNG`qeXuJN|XV-8c5e*UtXs50_>xn|thy!)K4p{j0ghet2!> z8dj@6Gxx84*pg|%cli%5$;?+t=s8>gF{YQMvSiVMs~0R<@PSPFyU72#8-;VtDbf8z zZKRL;o(cZ?GJn%s_~)0!m+N~gKlfng%)i{8Ec^z<Tz;B4BCKT^){j*l=JuRpZPvmx zx>$g>@*#iY7w0`4KMr>d;xj+W{G7JBCo3jT(8=CWcc@~eR&;%`;`RliN9hvQ;U(Qu zQ>7cIE2Zh4^6BET4pY`;b<GbXpGnsaj^ng;@Upu45Eqwg3FTc@mvcpq)3i~i%j#-v zS>6flpt(AhCf3#M!s{pL8gThHhWyn}%#E<%E_P4YPBpfJ`9Ij+5YonRYTr1n-IVJ6 zsGA?vIYssFsav(Iu4`FccY9s$3azBuNh?$&wRNjjEU0X+>s;m9M8|@;E##9Lu(=LC z_OkeHqf5)-_4dz8;ssRy>Xzc-MZ>EHHVm>H=3Udwpy7qo&BJT^Hg)&>tA5tW9lU>l z*-Oj&*4#5apVwPM%shfNxaQuTW$UJ!gXFUBAoriem}%4n&P{zAHcmGQ>6VQXX%iN@ zjot{|vT^0`hkNetU{PD%wM~<w3Y?a6-G=_#Hgr#yDZFTI(z&@Gc`L4)X0^I^LtpoX zyYDV*jC<FuU48eOb$y#y8h2tdxp#QIn})hK{Bpm0Y7`eqk?Z=`4Xs<#r=?N!P$`a% zs)dqJE7L@_uj%jZ>$&Zgo0g|0OhfCq?ZdaUt=`zPW^nCv*`yS={={1-nXYM44fjkt zbuNv+Bi>@nt%)3!HKp9xJzW=}rSAC1?Y;-osMA;q?Yufks_w>{-AcpL>pI^fM%n%( z2P6Epp1ap<>Qe*X(%;=PJdF)>f%7A__4M@&^-SMg()bSzZrC*NRwNd7fim61L7J#c zfjab{rZwKZ?j9WrzDI9hvE(%iSbb&Df+gwlzKYNSLSfS4zp#0Ky5=&+b7|*zuI%QG zc<)tv04tH(eYkkKPSaXty7Z_*<hqggTxt4lCEPIZs^k1yib$W*n!bMnj`eN9uWKxG zri1s$vAzX5_nE$&kCT1BgT(rF;E&IfrteEW4L@=Vy7_1NYQSdSpMzt42k}p(?`u8{ zKXMD6;GgM}U8e7KaI9|>|9r%pcyg~IhJg#7=b!1T^Ks}+%I1^mJ;PM(k?37mq;H|F zQB0reTXE9Y%5P*}Qo!GcnDaW4>j{YUsjrwmy<0bZz2I1%I8*6c>(lTfw@~e7`gHwf z`gVb1eVzDK7IS9b!vw_k9l>w<tS(gE65+AF0sN{DbEfY<5)kPts?V7|<*zvDd!FA| z-xmB+>HBYl$NJjvo4&a|PWs*e$NE$+y5}(Gaq>L^VtrfilinR~jXn;4R&()UeX7qX z>Mv`3jA*&ycK)f2Z%5vZ`0{2oKO)xmB>oP>oVO{fHRNLZM)7Y&q_2ROzOwNpIYZnY z#GL6X8($W6Ll9T`<{_r<K5%4TR^=@q=1ku&5#X_+7I*PaB7O4_)3+BK>w6l%>e-y> zQ$Df25`Jsn%Y2;LL;Wh&Ctd+DXZrqtfLNc(+J(qIjYo=;zQ5)-);Eg3fS5CV|CNA9 z-}_hL??R;SO2qX22ps9Fz?(U$f8Los_0w42A(9mclfGue>#I=TiS?l?(HLRQ>!{HD zm`LA}=i#B#>099AC~w6F!I8chOYsjQ=1kwU1Vs9-QJ*@7$iAYFlfE8stWWK`5;14` zx(JB$eP95;j!o&)F`+o=(^{C3zAB9yOAvFWZyN!Tz81x+9MUJg>H9yxu|Acz4KZi> zo+KdFCtX_+>AS|q$v*0Jg1#;IrPG}0D;uv`&Ok8xWUP4Tt3)Q~JA}U*G3WJF>Rq+R zin?})e_IjRr*~P3lRmAL8kKiu0l(_noawVR^x@Zz0Y(t%Q+Z6^o#0rX+DtrirtcRB z@K{mT?IM}VDShg5rteq4k-l6r{wex%<^4VlKXTU};h*)FR<P;&A~@DZzEh2Vm0$2_ z_>o(>ihpMi*|!WaeSZp$^i^Y@o0m<nbH0p~U%}_G!hfcdzEJ{5UmIfjUIa(_W*x%6 z1u-WcuJXU@pM&n-jd^}bi1aN-6sPt*%dhn5n8DR9<)66b#3O!29lttu+yDe`Wtz-r zme-8;q<jk(uVSnD`1Ll;c=tF~?2X5`EbRiwK0CKy-wgFD+2`Gb@FrZpSll}Z_qK_8 z;YreJ%rR#?{rYpZqAq=kd<OtJ@7X!B9$bw?`kD&pyN@t)rqBHL8^YhFdGfQo;vz=- zx=TYauF5jiFMhR8aQJl{9UOk@bKK!qn+Atp<qi(Nt|NoP-w-?i{Bz3ualcW#uA_p( z-xxdq{OSY2;V%Ra0ROx)|NJulWo7=RGQZBF!J&_1Z`|QuFz$2t70dkom`Fq6FDZ-H zI367FEx`l8uW>Xu{5rOR!~enH0pM>f^Dis&x0U&I90y1G_TT~Fzl9%P$B7Oi`GX@~ z$60XrSKztA0(@t%W2lkNp#FBJkFUqC{`M>0Z);)ij{NFxI$z4ohp+zj=gvo8z^^P` ziu?p6Ga^6zEwMJv6G?w_-!X}z{ONDJ>`I;d^ta?5@6Y0=za<*?<&>VfNOV2mTw1<l zpZ9hUUm*T>z26@UiLMXj_7G2hOmrT0&ZpP-8Tqr;=L_)ZukQLhj<+_bC7!ZnyVBHl z@MUd`QF{7wmiLsYOY_VATklmo{X6?~S^Qz|KT16PJv&+!|LrpW4=4I7eElc-?t<f^ z!pbv@zlcBd`P80@JIc~q{rmc>*jN_7#ryRg%wqKYMp^v7_x>fsbG%g?DT{x>``d`e zmddR6>pK#Tzsk$KzZ*ZtU**l-KY*X(uX3&Td;2OkdH)FUA0+;BW$|D3e$_`S@g?t9 ze^`e9uTp<@2Y!yv%J2Gkuiv_}weO5D2B!5lL)TZ%dB61!OTWfPZ$bZZ_Z^HT7p~1r z@%%q}Y<BJsVWxQm89im?apL4hno)dsT<@OzPZg0q?vG+7KjWVeIpM*66oVyY4{9ey z-bi)$ub}M_enjB;=@f)X59`aG&`*9WKh?AN@l~8RPW(m(llA0tJbo>!JV!=NdLlph zE28vcqn<&1N;G)Wn!dif)~x-+6ki*y>+ep#|BlqBPssg~d>KA)?<dxEuU^Y?+k7aL zKH#53PoL_Sv(wN?WR<s^I<RTNcS_?=`pb#;OsuR4kNo|@;Yt#(-yYTEy#sMgj=v0u zY^2R6z5%#R%ZcCQw%8+X{MEo6J-;;dn&Ljcun0IWo2b8gyW_0Ubk2Ushhr=6ADHkN zR%)2NOPFABfA?*-EF-=whjSi-vS8|W2@_OLdM^;g(o@Ud8cdAEs@SCQmj_XuhCu3b z6Cb`!P7vNEM9R}t_6i}2@b3+#{M=3*W9_<uUbeT~xM|%`&*Gl&qAwF!M9pvjPGQcn zP3!u)Z(4R!Y$9YzdE>_W`+4!D3?{vza3e71nHd*@Y7nk_9OnEhzxytYbFI6+d>_AX zg|D*fRnD8?n}Zm`3+t?NEfYB4kXGjl(-~ue-8WUW0NG?5{2{GQDHa}Mg5CP)vQJ_h za7fFwM+lEG!Qp$Re?VIIO;Q0RT#E($_(Q&BIs*r~`>sg!#C2c@KcBjyp53=WN-MGQ zo@ZM3ea}BIt@}oY>sWX1WclI`<t?)(*hZ3iUCXF_C6@L)+t;lR{SQg2zN@^rT~I%F z>l~}^(8t``#wttPm%vx3&E$x?-tctgLQeyiGVU1(_XBP{<97V?ZMSamGBDT00XKWh zwVAHx+<L|<z{?S<6VeA8hzsj|c0`;QSF%2t>UJxF{chdjTfx}uu<R*#+z;kD*zvc4 zmw?~P?{);69RE%*_Beby_@kb)1AKRcKM7X8yO7O3Tza;E-^FhW@+rj1g?*u)koO1X z6DLQS8w`_2t6}tpwX65QGd(e;eYO6vI}T_Iw_Y-Jpn902a%qe?$MLny@+!bH{V_)W zyQC-Q#W?ueENyL+HpZlNYZB8A>ThnXVsD#U&-g8DTW<Obk^UH?->n(!^}BV2y?(c@ z@LT8)>qN#nV@!W`YXcu5f9{(cE`i~=^@Hixx@U3tAb1&A?Y<JZBMR>Ws}7$<20T6t z9`>9z@Yaa)gvUn+-yd<F^x?AS_dWh5_z%F!cOIfRYa?(teoN6B$=Gr0e0Xx$5!O;A zzZDja-kS{{g=acrOkKORfjfwA^jKxb4!0g~6Sx`7_>f!)=J;}W1^8oN**u7FygB~Y z!2>ByXj^^L?DThnAM$t=_%Y8H{>_L}^0<p|%II{e43yDfg;TD8k41Pi!Y@Vm#5mRv z>TE_&QkjM)lqIPJ)4qCkk<d>9Ry`=Z8(Hcxb(P!-R@vLZj4uvjXF{CSv#_;YLY;m{ z<-jQqYdftUX>FHujklfhv$k{Zf_&S>Smz+O?k`-8^KM<<0(dc4eYF>%Z-@1UX*-8C zPA~JEJ}_l*;dwB1;nEI(X<vtjz;}UF-s=$MXMG7A#zXS^+4;oDp|`^@x_-_uy6!MM z4A1n$xQewEH6Bv88Ux*Wy|RsV3G3`O`EbgrKIy`#Z{6>^HGP}GDyQj3SFn>Zt~47+ z6V{`pjRHT$*yGmXB~Lvsb8G9;FEn1eaOH(<ZvEXN_%g)uB~8c|UX$eu@1us7MEn@% z_(oRs(1O&1b*-y<DEM&tqmEOzE^jNCyc~yPRqY;ZAbqfbG|mQeXIdj0sJFn6aV6Qw z29=Al7i7bgNTUyzz1UDtf0LaH5Gy-rLcZ`^zLZ0}P<EBU_%Wu=FIB#)5c0iL`8FWr zd#TFzQRH^8^6f%adXDsWg4I`r>BB)kx`I7jkqzAuC&t(?Pd4--=$dEsPk)=IeESgU z%7xRXbR0P>`|j{q_IG)Vjk@-jC)>o4UMo8|*oNMZ&nHf905MLCD>Iq*$hNHr_46Lt zHV2_C9Bu;B58q>XQRnZG&D)Tro}>C{_2JvW*zeL}yXw~QcYvvD7p}5Uw=R4am@(gl zOAqC8_*cN|!788dAXs+pK{kWUo-Gmn6meEY$`k4VTYu5&0sF$ZflXm-!HzJtkVm-Y z9Eo(sm^Phn{R+G1tKL*z>T16ArJ@g4n=S#XEW)(AOWO@TN55KSHp2_{(7vIJF~*+v z%APF<?f72Vqk2Y%!vo+2VA-}6p&cDoJ1+BBZAZH}{#{_&!s(=*)W;lO?bQ!f{Y(F_ z50}o(K3rpl+RWNwOVk$d!Z=CZcVeG&<Q>XOexbbNXXifG_NJ3I3i|7*cIrK=x@`ih z>_vn+zf5($6uAy8o0}2p--T}huk?Ji17&w<72XY|uCg8A0gvHo?R>{kc`3Wo^BkD+ zhH&~}$P4?O9(3z_dWThShdlrL;IDXm1bo<Yy1?J`;Tk9Z(uZT0=2is#&!?OO-I*6W ze+&48=j;H#0ajUPLtVGX&ZGvR&$#d|Fnz{_H-PJXIC&-cG+bkKLc2OnE0{WUY5Ty- zeRv1B9ZWw|Tj*NF@ui169De{z8i$9#pN#Of2=4)#o-cr9Gxe10_xLIB?|J+(`1irS zeUp;MI|zRkEIq?u>euDF8T?H!I<qa{zxA9g;8D-n3VsQU&g2Q?RnNi3Y^CR5f0p{P zvSjCirIWhJ&X2-XZ{D`-bt#t4Y@6q72dm!TWSfv%Gof#*9&H>`U$pCuEOonvJmj*S zTvi!gmC39%+%-PFWxL16H}wM>1GBWnFBpGd{MgJ=HoMnW-OVr#b=Pfpi$533hOL=Q zkA+i5cKl{3n;pMyZiGL6W2|?Nm(xb>JU9nT9qQQCIoe_Rs-7u14mN5`yIkWKHtKkG z7#npSaTpslcDb~9Fl7v51=wuUacy-gU7g;39oHW*jIJ)jTOvI%R`5*zRU-8sH-M4% z>41~Njv0n2*9`IH3ZAb#kie%Og!MuwV^}Yw==n?FBZ1$-ZMo@R3O4<%p5F!^3H<hG zy^s~rdLbR2zY;zY_?_IgoBmZ`)8FO!-SCmXr;p7tK6M`U1fb4cT@ArU0-rh$>xEF~ zVZD$op1&1768QA7uqVLwXuXgfp1%t|68L*KEt)+eV6*=T&)*Lp3H$@&>xF0!99u6$ z`*%6}pN5YF{z01F^dAD7{*vcE3m*ym!{cj>xOG#E|4q+73LgplV_fQ){!!0)5e^bK zFYz4DILE=JbIkM4z(<TPYS;&$672aJ|5e7MA(g<-^DN8jPa46-Z}$8md?fIfa4Bj0 z7O?T#Jii@268I~4zGVCku<=)UeiwWs@VhyzjNc13{*dPn!$$&t^Z332$(Heb1Cs5Y zzXLuJ_`A3rGyQwOrvF*bKMWrU{3G1I8~>YN<EzfWS?XJ2e4R(az5zL~=V$YtPaS8G zz%Ou5>h<gV67~(Co}K;{_(<R{W!N-+E7<f?&yG(W>zoq!E4lA8eka)Y)UD(9!AAmr zfZ@yd)Oo@9TReX&d?fI<aX)4J?O@~Y@%$0^NZ>!gZHV#rgN^^R=O2WR1pXoJ1&m(; z8~>>1AA^qs{__mE#vcV6|AgnCgpUON7}vMPKLhssirSQ4QO}$P#P}5roYOtOA`dox zr{}MNj|6@f=PcuQgB_nWht}Q|Rvaq4<(fk+A6Wbo?AuViGD9bJXIou6H)pOGW^DqN z6<SeftnbsxIjmHnZ=EywmQqs6)h{h&1`g`m=R1F#t|XLy9EMvz;Lh5C1MF~+DP@YQ z?qp4g;aQ#6Yjp@#w8@>Am1%h-|48+tv-lSJ?B3j+XK#2uU6+UaonsZBG<8zU4cF{F z);{Zvn#^@W7w`SfP=4%dXOBEmE6d)<q37Z|&nO2=nXZ?R-#z??TAgS3@Xo{ihaai# zUmCu<&pq7o{;&6c`Rad{uIy5~Fa6cm*27<G&pmSS@E?{q{w6xDxsl&39m9KmF^_dx z`-d7Bbh*s_Kq=`TR=rHfr}N<!t^QLtQoKZ8bqmK@r8AV1T4F_pE!19h{@T&csisfV zW<JpG))*RmuCwO#u}s}-V>QX^r!yD4K2~4HnoD(qFU=l##I5P$c!_ej;fVCa`3RHO zSbjGvCOkTOSN+cSACWz@Om6SYy$AQU?CspUZSP}yZ{FLzcVl}^F~9c!HT|`nwPT0R z9(^>AKKgp<jwbA{!I~1jb+DQpFS6~qxqDB{s<^V)ewwf0rMt6HD^aoj(wh_OQs2(A z@`zU2@a^mBbYJHzYPP1crZl6y`ujB%EgkNQ`ciJ-m_wO*YWQUCqKbai#Ie!p*Qkxx zsSVaYa5d4I8+dNuJ3DLo_ua7P;k>lfjr`&z{SS6tQp$9`51B;^U74=TVeO$+Q+AZn z|CHm$S`p*;SaPtAzO7#Ry<3ul6Rl6{fHI7R8c5n_tjAW@Vl#_XtbE|g-(O3)l7(+9 z{LK1XZHxLnd5yX@9`#ijeppMXdd?RH4}9+!Jt`@#QhgS0z3;bA)K)aleU2k!?EPPN zs{;I3>#<B+4TiNbZew+YB>x!e=Hyu~>E!9JoE^*Vn7i}zvu9cVVzjE_N~Nva*P5== zaZBaCn#W(Ls%Tbdu|2=LX7Aj6xslFyl~{Fv9Zkxd%35qJR*7BvX#33Ck^bDmH`LP= z(qF6p56@Wmr=1U!Soy$}niaItIMo1kI$EYOc%_@ZFk}6J|NVg0DS7Zf!|t6m4SU+F zSW}^S;ScGF*Gm&?A!u!d&yYi|SgmoRcuCrluFXbCfB3-zQ?*pcO5j{;Bh)EAVi(H% z?PdO@_!+~4(>L|uqjW+U>w_aMtVa-s_eJ52fz5&6R+s;^WNY@*6%SN?X2wI@4o%e8 z>b|S5o%CJ(v+n!%@$dR$`&bj9{?o|=+0RrwR4ILNe(7EttLk#g7gSEQw+J7{&tF!z zWb(K3=!x@Kb&fnJYdzoQM<%@e-^sfvBX_Odw61^X{fk%kuGu)@>t-LjacEs%-|GAL z(0aPhifuyHO@1!c&uQ7^X}-n%2otTkH}&-xcN*IA!JZz?MVV&*k4^n=k)Gw42i6R& z?KRqTAL52dFHuIm+;=m7Y&GBRcdzTehY4bSnpwn)=H=Y9rhjcupJg_U)one4Zkg=y zNo%g6CYa{)P8Y5|SLSA9-=>Yd<5u3adT7mrwGKROQ@=izkL~giX)rsSEC`u79T=rR zD|Wh)wh!#TD^$mX@U?fX?qkoE)l`+w=^y)P@+BNEx}I|fG`~xb*!gR{f0F%3G~Suh zO^94G;syuj%UpDlUyX@Z`f$a`U-sRgo+D%mh&j`7D*=XqJj%)FS&GxAIxv0rg5!GW z#;@_#oayK#z%X!*bZtdspRU&wC;RpyvA!qqYrHmRI(89Y7&zw)|GE(At3ga(2^{Nt z3I9sOoaxZ~al^oOt>WJSMEYcx>ErogtWVEQr_}dXJ`F!|d8IEQ(x>+G`efP!eLL{? zDbPE!=|}ht1M|=F?`cH(xK9cCn!r(c-FKnwgqia?lJ^i0>AP6%(S=CgY(#OCd(wU+ zZG^WX=1ku*0%Co~@NY$=uffMj-v)4GpYAF3EG0OvBUw*~$BLUvdn7FY=~HJ^ob;(5 zMEWXJ)(*s+>3f)fNZ%z&S3;yOkC?tc2FLpL;8z=)Gkt$VK%}p6CH`SV`gnF6^c@Gs z`i|o7Ld==IZxayfJA!`%k-kPBM|sP?ORii(9CZ_%*O9e8<|BTp7w{q?eLR0P`?Ag8 z$iB*H`d{{PpN1c~cdy{z2}Jq|i1L+vALKWOR3Ny@GyE$Ed1v;01poQ)WOq5w>u?%P z-<BzON@vb^j}f5qdMEqzoG3WsJwiy7&rdI<Y|j&>@?PfSRNgOwBYjod@i!voEUxUk zx2glAebPw$8c)AArUUC~---c%p0#r|?QE*&w;J(v49dK7Kgl$<n=^gpx8D%{HhuRd zJLKvxI;t;coX!)$VQkzUGQK860`OCx;|_m(o>RQa9UOj*Q^DbH2p#}_cha&j{5sBq z!>{8sIQ((DDZP%9;P4lM2Y`PbKbEFI#mXNX@$bRY>;n`pe{jUl$FtN2R1z<LaK!7q zh_$I+2*@8C@#=@c;cvq8aUW2ia#a8Q-rtU2^{;WzIbWIo)_e6`j@m=#K{<W*qxSf7 z=i{H}KUd~|X`&x1Q>XN_U!r$qa((zwk!ZY<lRf<DnQ`h;{mH-b-c}-M&t$MH{!`xn zEb+8&GUEOEE{yg~O5U&X(7t*fm^!cjRqyR0p0>+|KA6Vqd98D+h^PItp^kmL*{|{x zh;Pk!=i<``eCb{?T!Y4UGvybx<=3-QT*}5*vHl`Cz5|Lb`lr6_Img#UlkR;YWp=|8 ze_k>EX~#zYQHk3NhYvwE4Bo%`uKQOHm3>5UM|58l>7INu6h($RAfFpo?;Ap0PJIug zYSGQ&>b?ydKCx-SM<-=BLQy``-u?JWp5~S(<h8DUBfAQ@j}U00yQjME8Rri53>wql z`h>Xf;R;&Z-A{-~ORk>9G33U6e_*-q5H#j+Y|qrYRrOc;u)}mo9kXs98I5gpNf$26 zvEs1wDZS0T0AFI`P9X}9F+;oihG8l3<l**zQND-^Zv}I#<dlC4f<71C238u&3w){N z)f(+t1MgiHuJOS5F(%l33!&pL2Ugh^Ae7OCE8oS4rG*#rA};7JvnTMWL$~M4b?Bg6 zVgDEE&h7c4vRvu0>>@80z5<NS8eJcCAj`lS^E4bNjoAa9AC>XFhDm>!VbX`TSQ({_ zF=cmq#HhTqrTb1p_B8l#owI1`S+YT##)x0=nDXh|;q<6Jnj;Q%>h_vZxmrC|xs->M z1sv>z7s>_iJyw?3<``GfMO9a;kXruKj@T}7;ay<rT%X;#`Fxbeg?Hm`^87o%*x>f2 z=>?Oo(?k0>y=EtQgg(#}^*3~d{y_T6&E`JRTiO`c^G;gl-c|%V-JUh7H}Z4etF-wz zOAGHx(@9*YD{Kz>W6ZH!r#e}J(57y08eO{}E?n)1KDRfG@}=+9seM&PN@MwgLwQMa zk=a0+X2Y!!KgQVLzJYm~c*^Vcso4W=@c7rkw2KQDE<|`9SoR-8ntixzrY~J6JMTiS z@!`T8V@^*IO#M6D4<7V*Gx$D_p8$W-<E`K=V70{|WShq&@RuXb?|@~G%JLLgHYn}y zBUV?$g}TD-&>ztIKC7!z)SsV?(#E)w>QY{<2>sdZn?w23jxM|nOdZzG=9fCq*y6&~ z{*7SSHXkW~Rjw6C6IjQEj^)K*r4^?YG5f*6e)0(Wf1x*&1zllIOh=S9##!br$bPj2 z_P;~<DnG=9F9DPHJ7k;MR6Mf*9BhCW`Ww8W?3G)J7(d4Jx7o^9wouO5st4&N-E8Hx z5^46h6HJ}D@KxYj!LqY}D81<i2OCHq`aJ1FJ&=B}+13@Mjd9L@L)At+?dZO(QhVjW z%J(v4uIH$|3LeWA#stTy2V=iWtFq9JF1!^?KXBh@sazlQ;nZLG`C@_DN#3Dc<hRJe z$#02a@(AM$dc!!Z`m*|oG4=1h>5|Qq(P7z186B2w1&@`EeB3u(U0}-SzWY+06g{Rs zR7RJ!8%((zzZZNvSnW%Ed3%NaL*AhelXoaDdC#yic2RYP$s?4PJPH=xM;=z*7!&N~ zSX2UN8;2Xfh|R-L*{7S=<@m}23H&CmsS?8EXzO@hm*X!X90~juE?tbj6g<<VbjP*h zx8X+upZX2^K+*2i#;463e<ge*@Ts>c=XFsJjz0h&3H%|>?`F?1*z|Ap{B7`&z~9ag zVf-Cn<Bxd$6Y!D1-_QBc_y@qoKjir(_(<SCOII}hVX*O!dj2u^NZ>!u*lzq$u<=iL z{z>>q;E&Pt#y<o0{G>MJC-vMfBF0Y|823Cs$%BpG?D<9bNZ>DFTrz$O*!U|wzY{(Z z_^UYfjo$?}{($EX!AAmrnC@!)&0xpZEobkV{xGZLE%&jy<^zih&YjObR-7I%!d+$P zymVov_GnV9ne&DAS#$QjbK4mEG4SU3^uo_}zFbO<)iBGWrPw%d@o!Y8@41c3>iK5| zbIdxKz?}*A&^CJ`?g}>l&qiI2^Z%}w=NTMrCr?!B_r1B{8Sb~yJ=Dm&ci}cy`1jsa zpL5|K-Qylay?1?~#`*vCfm!bNks^&t`uztlaK8sz8SL<XyTJeQcghWl@~)ZpwC*J> z{;9*?{&%3!E$U4)X@5`OV(!Jc8|_~^-Kx<cez8x%>#lU6-n)7I)@QFi|FLhs7;LEr zH4*0x=a%?i`|<tqpXB`)$6s)+d*D-;Vc-mo8+Q$%W>>gGUEvpyxEx*hr_#5Q@K_(? zQP8J4Fnt_{PM_<x;Oz*<Z*Zn#2O(BRie&uBv<i4<ya(|c239rluMbf<)Wt1dt;ZAT zOP1mn*PO+bJ$Kglqif~hjHh2K1F%xOZz4KebSNp`dZg^R^Nc3KRv_j~pZV=KguhMC zolUQv!&;woVfZy9xWk{{0Wx+&ge4%}o>?1TT&{PWYX+#S3nPCO4{*{!c5TKVR_8oa zqsYm}Cwj5htwo`_qfXr#6>7V@#~Q*E_dY~z0-iaaUpe(v3y(26t1c(b>#Wjss@Lgo zE&j`*wCAG}y1VA^ZSSzgLL^+5$YyI>@(Xj}(eL=O5efVvb{c;PIGn>a^l#kI*OQ*c z-s&8-<m%#*^FN1G9>s?7b67re5i^mPvBX@Ynw>Sahaw!eH&=Tu|All8WJx<U&g`7Y zyugd^%gxpvfz|z2bZYim1-mtB_F4t|6jt=NJW|b!vRon0?sO-1<{C%(-F{&<GjYe3 z-81V(G_P-W_22(RX^V22?A*Mxndywd_Nv-P`)Y@;?5sIOUf(6JQ{=^*!HUAg!!3{0 zJY4POXt`O8<#V*qQ!3nB%(2T=Q+{7ZZti30Y^zeju0y%fr2Vam*tYO@(c*VPV;`*D zQ}I6jA5Q&;%#V%h_G@#g%1c82W6ThIbk6R+k%nC_G-k4H9@*F&w|h{2XDL&&ukLZ# zU$?Kyg?;=GGyED$nbg-=`N~*B;X7k<*>~!dT&8v5*ejixR`vpN+#8<9(y{V9<tN|X zIgjRdvcuIY(!S`{{A1}{wwlL3f6?(HXHQh^Q+RvL52`cEo~-^sF0*Xm*bh20%i3oY zbDwWofAQz9-C4Epfd}WXhgR;y*Up~(eDyC>k8b0ddguDk7T=!K7N2)*(I@VM+z!<& z?rU)QFk`THDm%-<%CA9moSNg<nsDv0Ihu2(ICIQ7n=n5tj?;c8OaTki+v0Ns`^-$5 zs}`qy8oj@kd^-Dpn|Jp1U+?H~H`@&8xKE#dPd%fF)sNU>UaUKM2Kpvk2{{dYtd$k? z42t3=|HM;_q7nHcOrr|wxVB;;q^YwNvHg~tZtK~&am_t;A?3EYP_F4a0<+%b>gOr> z0x4)+k4;|kfo@XLMz#rgn`R~b&vjiE_Z^)x<TU;p2G*+otwiSdaK)+5--hVCVCV7` z;LV6R)6q_VVPNe5|4NATDXr<#dWNyS!}yifoayK%z%cLv&QI=Hq4ec^ob20&MEZ1} znAw7uGaZi+U>JD8)BHPzNT1H@ij%%)kyzgj{KJSj)A4^1U>I1poqsPP(kDHN)9-hX zNMBaAD{phALum~IFI4@VL8MRDdR||m^Rjff+b}Le4tYO6&Uqb)+OwP&>9@R+7I?DH zJE!kS^YLr?-an2NTi-{rW`OL|HJaIXGdR*$(TiWUn6tRD>)(p4B)i>6{2EWc(e-a` z7hbioo?A(W@|C~r`nP63D()lPoar;a{f6*=qU&GFR}JWHi7f!X`b%*5)$YOJS2-<A z53J-5j(F7v&upF3yaoA#Bi^p1T^RlbK+zMlzN_l;M(^K@U&rk#@3+io_tg2!KUwB~ z!24}p!xz1O3;I;v|6IoZ>oWg|GQZn%n=q}PO8ta+3*Me&{zQIa>w!KEpSnskemR%g zn|yqNU-u8`DS#zG<CBKY5au60IZQe+M(3~cvtjv5{_!{UTFx?lhkwqKWt77dXUJ&L zzMJe+oSr*>esImeK+hoeIXxd48r-yYh#iC6`|hb1W1MhGo%EXD(ySg_^UF@jRA<@o z0%|J4<TW|NTAS7a?p{mHLceoZ{Zakf?xTpCW$jDc1%`D#Gfs@r<L<RI=Ag&jU#b71 z$Azo!GG4jxPB6!c!(HI(JZAuWD_HM3hL8@AhrxFvmM?j{)9gWSu#@z`PSQ6RhxFmu z`Q}JZjIrO%BUnm2$BLU5&;q94yYN=<0<dgrL$2{0%2)nAC)m&$*+!aRLpy1#EHS2@ zbJDMR$b)siO5Lcg9KH-Z&vR5iSNd?(O|uVIT~P+7N99}YIk$tUTNkdhclhv5@Jb)9 zw94CT1Lv&{NfX{hzzby|kGaO#5~YoCC8r48hj$|k4Q`%79y}MU@~Y1ieE6MU%IU(@ zXQ*?BW!DnVk<Be0w}L6J<EUI81?&9OfP5?pSKd}GaOgke-8i2(Ir0mAhWviY!qFSb zOWA{-7}HPO+=u^<z4w8y>NxMb@45QJm5^lx%lKMWve%f}vWwwDh$A~RmO&=6t2inq zj+_u9Kwyaop$M7CDNU6WJ0!+7*ccEfS(>E@$%m%itT!PJZEtsJ7B@8UCrcfY^7d6z zJ}HfHLLK4=o51`1&6$}y_agkKO}5>AcVKjX^UO2PJoC()Ip@roKU;{Wog2Izj0}TE zzzty8VHciyHF!6edNFtp82u};QQ|@TN5QhsUi>F4eGz!0r9TN)ey&_#Ul#KI4^Dsb z_T}0Yl%2f&wL{*%-IAX#FM0UyNKXZMg&4B=&QJ=dvA7nD_unGY7Z?-CSbph>_x#w( zkBLkJn=ui18ZAF{u6p<UO<a%Mc8zNWJN|{1znvJo=f{rzyHf|)@l)@nECcZ4J^vtW z$;n>_cKn+x{}%Z1o_{-a<oHLxhM!xWIWTVZjCiExwZ?R2zU^&qyWw?zm#Eo*4*4;i zYZF(u|E*T>oxYLt=m&Maz23&}{(z-b-?Yb^d7rrFmyH_?ir~Dc@wo8fs(a3yZcJQk z&t1MTQNwBI&~xH>Q#NJsO^Hb_RvKz!;*wMP@}c<JK;ET!c|7o3&T7<(cxCI^MX$8w z64K@DqBE0o`g@uFzVcKKjm|E5`Gg6*hc$8){jIFqJok7Dt8Od$>kUpDJk8(+gSEEv z+~X;O=NQ~*@FIiT-FjO6vJ&#fs3MzwvGPp`mE`pPRO0kECZ7A*-#(xE=cCW3etzWn z27c>Z8Z&<MaLa^j>XC|*bYHn>bmh5o*@^KeQr*t%b)0W~Tq7wv(sf(EoO+~c#={yt zqCUJk9GQ_8<vejx)uN5=8;=-}-;sGZyOPz8Kgv$5G^09oBXJ%|RXL(OgzC2Ls5i1Z zykLON6F>V>BJuLK&+TE9X|qO|COuxWY29V(lJRJhP7yylM)z*U$Ih<9$|+WcPSu&) zXV+o*)QM-#9dEmQlF7ThesqZb;8PcEmvu(zd$MMArKmmo+8SnzJ-n}d!Yik1l0Q9N zXVy*T63Lyh-iAkK&X-ejsitc;e_wicq<(tz$(o;iFIUr6QFEi(;YAx}jP2cU(Qw?7 z7$d5R$B2#}OeCvQue2wozt9*>%$Dk8?xxD@#8)~KS^P}=TjO!B@|~QweyXW59#hO# zR_~-1%(>Z0dHTD#lBWliced)41&M}N7A3A5y(RHZjb1&^6=B<GqNyQU*|y!JJu2>| z3dY5bf82~<nbfHlS`&vDZ+o_-;%Al7+>=a$V-&QaUuCS$nX|zSA7_LsrSQ$HQzZ|3 zE#)F`bv7NB6nwF}ma+}czauf}<V3Ewx|@%i-^(YhJZ`S2=eeSOm`=P|H3Y5&A8g-{ zi_$x0p8j#ggj9UB%{V=JTjFNgV^?Vcn_ZVn#j9e^uH*ViQL~c+t)RHrSKgCL(QtkR zj_;ZA%3IbKZ?@k!CHC;lm;X9yY^!+r+h=!A-j?2a_7!djTh?8&F7Z;_?h<ETri(Qz z>nYW?>XF~Po|Epo5@Rp_<=Hbor=?WUq84sgxOL$dvdM-0vg^x#arRi{&ZKFh&Cj&o zZ$=lfYefszc_5c)-oP2`r`jg9H7xvo^O4G(3kPFfYU!Hh?`!q^%LmV$s<~08*PlHk ziE*ykYvSMLhq7k<uiEg!qq$V`GqSE)Om;%^KI(gdVw4Wsay6Z-D4B7B^Ug2b!1~_Q zr&1Rkx%5*_6Ms@c-*WGZsi<;WWi#uooA;f3CJ`ZNn<O=_Q~KtE=^fdM=Ka}s{Q3UV z$7?o<CZD|`)}VP`_8O%eZApBBUh-3k1c(lWzaP&<)jO+<4IGEG63^X(1{oe(a%3=a z9W_7KUh=|NP2wLJL*Cf1EA>iURNmZPi_WiH9+kdW8I^I3J^w^m7bD-&LvmQRJ{CR8 zN^mga(<2{D3uUjl=y=P-UvwpYH!d6PGuDm01Db!gdA}*${;`9Jq4u=uC%JRcBGFh! zo@%McPW;NAc+@+Wy7_y#6ng?-L#ONO{gph%tXmU@bEylZiS5jKaajYcbE%UD6OXnx zNGC&GZ*27dWo=13F#2&(TPiNukV!9U|H_8u?{SS!T)Uli)s#!D{eEwXUQ4yN?+Zs3 z?rSe$+`oix9mbxgzZR9eGFJ23D*vn#aao;K*>~kq7aze|AEo@$;yCj+aq~Z-k+DnS z|GNKcf&XiP{~uUD-{Z37Emd{T)jiizR<(V&yrqIYA$~J{a%w55d#-AG-E-x`+9%@2 zht8c*{}5B^o+CU4{R5(9>&@56uGccz`)*x)+a1k|b>hv;#q-{C#~ruMTX<`8B2hqZ zzU@vMb=w{9DvIM^k2@FV8I%_HYTxG`QM}=b{|JX+-lGb_8eb0MvxL)l=bFv8x@rDf zU9F4Yw?3GU6sBp4(`avoM;L0=d!=*9b!P8}_Hp-q2xX@O*$pl=L;p{azPb8na$EuM zHRgE}eZjZF`PH>^tJ8N(PqkFnH&<tFpI*}<K@Ba_(=F9CO7yG$me{>!@$w~ot9usr zaRLwHg26XE##einFB@3S*)Rng5(Gn@&C8eGcki8?WWI)@T$b_0Ph+5M=SeC~@$NPE zzFvNYZQGV~Y6FMX<-PX~oVUBhy~_v8`!dIxe0XtJCkLnGzY>~{jzQkYYUV8VmgP%2 zm-pXU#HUeS3G3=!X5_5u?tL{`ud07%_Zn+Fv+=}*tY>8`SiWp|_uA!!cC)k50_|Uo zySSvcu~meM+O|X%(>4%hh<L@4?jD^?ue0axv!7V|m#?|6XJC5c?8djooEm*tylh~Q zrf~kz^}bE~sy@VCL95mnNV%FfZg%|R|GM#!E1?MMT9vyH-!;Ug@UO);6Q1IH)h{`x zK1XgEzSJP|=SrUM%(<${M|64hO|AG)-T_PJ$2cd0-ZPXpMSap7yyVFSPF^QCl=m#* zLA-NL-eL$21E(zH&mp|CgOj%vS|HD?A9ZCU%74S#3=ZU7l_9M1NnR!1$@?Zal&A8m zUv|#P_zMUQ1FxFKA6H(<b@E;Shw|1DZpJ(3WE_X!Fz~7_{>U!UuNrUVMH(Ls<>d(1 z<DIiIBFzsB<&6@S4JA)qu9L@DY=OL^gq!frIeGfN708>acG`oNJn7`*X$(8iFNtnR zmDxEbPxCHAdAn%Zo1jTvt&PKu(SzVXUg>tiYFo}Zc^`)m$ZJrYx$;i7agz5ra47Fd z-PfQw=j3TVWhiew&G;BJ>8Jb^CwbrISMqF|OLZczgRpbr!$r^V$6|$NP`{NKfaKNT zoxC&PK);Cx2>0QgbMk%xA&_^Yu3x2<JZ$ddY2V_o->6c(jbp#0zO$$Bwtq2vwoFic z`I61xVm|EPoz*G10E)^nD~>VpR3FZXkND&genWXGM^G+@llR5^{57r$J~MaK5nR5q zRgnIs_2kh6O?J5ouQ>Egeu7`=XWd1k0NKqs7xyLzuFnNtgpKoOdqQx0`VH(g`6Ofh zS!fM-o?1=5HT)LM7pTv`w*tCzPM!<9Ur+xv%@>$xGpeEx>aV?{@Twp02&=#Jj&NB2 zGM4%)?+B~h-Vs)R;T_>x9{>>6_3GMa8hsS@j(8VmXoS_qy(1jfqvY`o(Vvg2O=T7K zj(FA2Z&^Z;c!j+qK11L(OVENBg}o#GN*@3ap2CmXzntbnDC`~aSNQ;du)cFGvb0Aq zj@oFC4Qu{^?Ekn8Cke~``)oK%SoS|`!_L^pY`B?t)yLVw_{i63Tse{2s$4z%ko^3G zCc^xWd>gg=12Ma++-NusCpCYA`i#C>6n~^B{11g;YT3G2ep1g*#@TSTD7>I3ytXL( z`$ggZSQOq9hf6eHgZ7kE|7@Ji?{AC3|5Ow%vZwZgja{6+#MiM6yZIrueoE#S@h>Y1 z|87yZXrGRf|5OzJwW9FBqVPW!hD-f59_v@?+o%mU7x5SASNidy_#%Bu4-~~0=YOs+ zzRdMM);?wa8jSVvXTtYUUtHg1zf+LjeOxq?Y4R_3=e@6t_qGteDEN1T{QE%hi)8TT z@@j91#cbog8U{?~y$=@8<8kkCM#X}c!rSh+ZQ<g%t?!weXz5;N=ie+|6%Tx@TCyy7 zjWjQaiwjQrJpbL%Wpv&PW8p-baq`l6tzE0xX0L0UjLv_tJb$Xrl4T#hubcO{f&Tm1 z>ElC*zBSAP?&@C3{(yn0&Oed(d`W)Nk4p35)oaWvFt%W?NcMj`pTB=Ovxe8?b3UH~ zL+MmsUNKkoEnc-|`Laa3WnzE98NrL^tzNZiNpGiESKl|l5CR*6Pz-J0@sY3)<G=Nq z!HWLHOfz2m-d+U~mSRKW&aSe=TeLe$(VVMQi<b{BUv}R>JO%3`@!YIgeM|b6tcoXP zt+ErB*L2?-YIpv&EXI!7Jkw2FV_-s)uSI8VS|?Ms*DPDoyLj1(Sn{gwr4Zr`H8swX zPp_DK+ViG(Sz#KoFalR}_poJ(musW@*=T01&2r^xc73$j+Gs{r;?(2Bg-OR3?o*E+ z%`~%ExUpk#);?BQYd`{v6)I<n)w_D2dxg$`=JabCd1rwkZ3fF$-`C5f(A~RYwUJ?F z-L)8F(?Z_2<U`Bv>$}Y)l?2X+E)t{qkm%srX<n|=#_hq|1*aSr46V?gN+P{rCv|l% zTW7Lsjd9$l%jkm5+9A4TgBu9*jOOW6!J5DIPW*I>uLg6^Gj!nv0lp`|T>&Ob&;PLi zKSKK7#PevSXKpjcE(MksT@MprzaCuAM~)uiQrM*D3Vb<O<$4RA=Osg*3+BFV@C{&| zGY!52JjLSogBvW?bLVwny=&<Ch%_D}%VW}eOnQ&e!(+<sbw-w-!!#JsL##48n*hz6 zs%Zf9@p1@XMco*e4d@}p4rULTM&hYovnPz=DZAMRW)Apji<`jWbG8LfcJkr-4Ts^o z+TrGaKg8&7_HWU16grqaUeaLIiIY#9-&=+_Ul!Tj@q`%t%|0!&iHB~m^hJMz(b0^z zxwP>4^JC!i`orh<Z)qZp;}3Bu%?7zi$<Kh*t_aH;y7HQC>1s>lW%g{L9ckRi@XH>w z6Hjji^KOuAg1!KZEs~U5XW<yEy6v<)O50`WYU5llCT$D&6JY7{S^Ne|N4DnD898e6 zTLYf$VA`-L3u%m;Hh7+l`6FZ`a+d!P_@L!k2!7Gx_W1HNX%~Uf$>0t!ZOLGCkEVes zSA-3so51K9ZNa0r;pqY+*Wey7at-bSuK-KW0We{cb{)9i(i_1awe%sdY@+#**gPU^ z<P3rz4CoszU3ong&}9edCOy9t;I9Vwy8-^Y0RK3^V|koJ6(jQ`WvB$Bo8)V+PFLRK z<d`m<HJ0Y|PZIV#4FO&DRGUHn<m`a1HfP(d>eXF4N%C|3WU`52;i>T9lC-Dm9i}ea z-XqD@{M^c98^bD&hdP?!aC`nbN-oM@N6C)-b(HL6Sk>`U$F6^n-flmWBz5ZcW>Fo# z)$vnjvmIWCvaVbK);qM>7pR7KY-{%asRb+Su3zxmtQ__8&JJdL!SSRE`QOC#T!M{t zjhnr3_JXMkPbbdMW$!jHby1Q9V+Vt0gFC^rd9xmewrcpFBD}%!P(Qjh4gCOki^Y;N z65!8S{yEV1S=<EP4@SP)h|ZsTliK_c{;y(sVif$G<&hpg087tiFzwdxZvu~kRbJ{} z;{}HPT`;yX@`=;6Y|^%Z>E8^d+|ewHk*Vw2&=-Q|f~Ak-+z!??g>53z8<|{Zy52qg z{T5@-r~@oL+rgb+T`!{dfGJ1v6u8gg$G~eXJ`4UBSb0&O(I>!?qkOscy&P-vB=rzI zZF$Hu`ZF-{ODL<(snb44Y6FqAXGuBuu;mdx8t@zgyYl`R?8<x6V(I^4%wy~@29|D= zFIfsEUzIUgW$9hu8p|(wE!gU#{=uZh9?4A1qq<E_wKxl=&I~_xO1k<Q0MCkfOkT(} zat5K_6wu#k>Fc1|dNlm=Eqw^O>eSXt@(xR14}C#Ezsu6GbMpNGo%%5OQV;4Ye7RNx zJS#2FCU|-SdcUP_fxb4Nf7H^qLsuJcy16zm0{y{&PTs1c<WqR^aCMg?y{U^dbkcY^ zpR;syPkuhYU$$6v^cBl59_0FR<-p`sG6{Onu99k3qE|xyE|~Zd>M;2t*tVtQ7+CFO z7xXhRU3F2Cu=L&F(tvKS--z~5QWMjY&w*<#{~j=9lYHr-wr=F_1-}I>eai7uVjd$0 zoea;D&>Ld9k$D|T*#1-3iM!XRA9T-DC9@NWx07D3q>;x+hvy^`H#*$JQUQmX^JfjJ zKbqv|tvo(C+?GGruw)^xACBJ6tW<}ogC>VN^7k@bZ?`yl7mr~M_aqYY9PW$rjimDc zpYa@hFn<nr$vR$h9DOK%o_EQ5X6-rp28NRz-k86~>HC*E^SfkA{><-^?FoNgd&vk( zV_n)^iNqZa@6MmAU9u;CUn|+0zjv2B$t}t8KSd#29R(Pw+2hDO<CR*x0%FSIQ{bu? zo4tT*Ed58&Yb|aDrvsjPOQ$`X`=$)|Z9KY|{gi|o0z56i*#OTDaASby1h^@{=;7tJ z1h_T8Z2?{w;PwD73UEh&I|JMm;GO{Y1$ZF9g8^O_;GqDo5AcQnZw&CJ0B;HK_5hCr zcvpaT2Y63__XhaM06!JreF5Gd;9P(Y1o&Wp4+Z$y03QzUkpLeJ@MwUK1^9S?PXzd6 zfKLT@EWl?hMuwWE+Dvi?TpDBZ%#aFjmBsY8QB6Rv4RAWZ^#RTVcxr$f0z56i*#OTD zaHGZ2VNO7A3UG6PTLRn~;I;rS3~+ml^$f1(64}Jqp(DVZ0qzQLPk>49(+&i9Fu>~q zjNLu|`T%bT@Wudd3h<TyZx8TDfOiFWcYyZ<cyEB84DeF{-WTBg0nP>ZK!6Vh_)vhK z4e;Rr9|`c$0FMUvSb&cQ_(XtD2KZEf#{zsNkCTZ2mj*Z$;Hm)E1h_W9=>XRUI1}Kh z0d5HJv;b!VJUhUR0iF}!rT{kwxFx`?0d5QM!T`4icu{~m0^Awkt^oH0xG%s10UiwS zx&RLaczu931bAbBHwAc0fVT&DB*41@ygR^q0=zfCPX_p@0PhR%{s89!d?3IF1AHjJ z&j$E#fR6<DXn;opd@R7n1AHRDCj)#cz+(YElgH-y+4gnj`B_-c)v1_A;~6DY0e_9f z;;9Yj=>XRUI1}Kh0d5HJv;b!<mi*ZPy)nRZVw_wEPm{&1;AV^Y)iblXufbbFoWaN| zX|tF-^~`MOUEuZ@tIyYavY`(q%-F2i!<KY<4)puk@{VFK>GT|EFzGaIZ1%S80P`MU z=$&B7YcP2wD5K|Tvh*J4=<Vss&yC4|{a6h;`*qsnT|N~)Ir8>vvpX0*b#(H+*kSTE zJd{!MEeysc#p}R*zC@XQQ%eCg7E@N0*X_xv=iYJmKg(Et<&F3J*kRnYzSzX%C4KOo zzmZ3A+N5#RrC+<-Wcizk!F&FeVC^n;dqexgc3A#SWa7O{?B@50#cmTP5HGjR@(+RW zo_{?}#p%2O?D)4>{_XJNJ^u*f^NxQP*zrGU`JaLx@A>yJ&guB~gB|}7%YPJpyyqVc z)+!$ZJN}cF{}lXq&p#Hof2d}To!|GhKIV@y^bvT+A5Ep*T74qwH{QopQxulo>$hcn z&9i=Iy?ti9{5kWw_GP7Rd3c@8UtL?16PM_8%{P5XE0h=ewY)8<H*Iw5dch+O>wMH~ z{gYpG;ds4nyh=C3$bPl;54DPy0@ew?TDXRIrE!jp$;RDdHBbN5uM-Hqjq-(m-m1<8 z`mEi?r&Ol6&+l1sZ@6-xkXaMa{{`Id>+UU{qaVm!*uCsSJ#IU&;_2^bc;|gfnN+|B z{a`^ukX#%=^#57=yoPP1)Ha%F{5lLwrT8-kFJ95*)dugu>zZT?%eWT)hHcZyxEs2| zz*IAToIIs<@-~7)c?$`TC-0Ls4L@?JA^tdd($&fPDmawaL0H#^b55uK48dVwYCnIR zJdLk7dH)j}%IhOMo_-p83FXn(d3oY@@_r5u<*g$;p1hMb4L@=fv-#uns|H(nk?KeC zoZA2xashs=PSM4Atk??55lsUqz3k)UT?r24MY3%@-Z>XnG@mz`N-~XCI_LQGtCu0` z%5v~^5V#cY=GH6!qWQcNGSH6WopbVB*!_C?uW3H7%SR)^vW0hq)lR%49M+@wRZrd# zRyn;R%(I@CQA<E|pgJ+mGONzzba0EVo5dy+houi=@y6*e3+c1ThQ%*^zF@;H^FI&b zrJvfjaV9@|b6plrb-6%yUOca^u=5<ZPrm?*>&Sy>+j|F;u*+_F_q!GcVWzn)S-~8j zBBkU0+wqzSM2;~ovERQ+c5u(cn4y}sY@DtQM-MS%KUYR|;&`YJpH{Ya^bkWfdqJu0 z-e_8`BQvi>@>JJ>e4nqX(a}RpTC=~A@|AZyV84%1sAq^tYxWQtC#~P(C*%(?S()cr zwQck<ShmFbXW#UNpY;vD>I3ij8!(-_?x%s>b7$7dpAA3W^EU?j`fxq@eSMlNe>41e z&)<THocva>liz0f7s8MC{O#D*@h<{9{w~Yk13%vL_hC=RKL9rTy7cZ_)#o2<Uvpod zx4-obJl96+(INj_Tb-DwXH>H%&8qB#x~**!+OB!^{ft>H{GCm?meiA9(CT5!s}^x# z_iE3$v?((`z@_G#^k6^TU+eSfxN}R#e+*opQv%lTu-Lt<yVE@@{;MAb|2?f~R6RK7 zFxQlOZctR&Ab+Z?FXdNWVcL4Zvkcdnq48s!_~hP)cNkc<o<GO%lA%6Oal#+RyXyjI z_9f$b_0Gvy2gPAvIoDaD11}kBkxt$t;85PPgzNFnxwxWdnZyYgwmBw#9iM)kjeuJ3 zrtcO7X9y@<^ej_)0NQ`SJLlxNu>1A&f1_uaiB=J<jgbv?kC4-uovNo>O^81#ByLIk z<HKu<!k;J#KUNg}d_mZCfCcyQaj(_jv7qPzE!a<U)v9iH<-(R2cg}agKAub@zP0z> z?p}7>)SIEES}%(?!CuuF&+j%gH`Ur`ul682sqQd~*>|!TTnpw~zgf4(*qy;s2s3tP zcv`?$TlzF`gQd5|Y0UFQ8<_D*!_WOj&;JH<zezNKHHTp`elFhK&&k{G$44GjQ;Cy9 zuHTyvx&C<pxqciExiyY|5ow&v5JNWi&r$&8HJGxhyngSzbZ|e<SRTp6dmfe7wRg%N z-@|DF@l<hp7ksUI;2Rv<*^3SZ_dxD{qnY1gU;e6G;{L|Ik8b(?3tvw}?AlY_GuYmc zV`nF`yH4VT8xvb@9y5DyCE6}~ncbS|v`^Seiq#JL?4|Ml=)3@vj=i>Wsm%4+m31R6 z6JPq)x!c7hKjQ`RA&wo|e%@5sbVa;l2kE2i{jW48CdT{ZHKjj%WB*6D9AT%ZQZ%VN zH5Qd>f238%wFlD+???=_RJKpdB~~}~-T(8(#K(U&Cvi`FUeKw(I`^?`MJ{z|qdh<9 z^yC|JWs`4QT%}!!){N=&0i^AfoLnl-JuV;n3Xv{*cV3HJ3R}IVll?f?Ve8~4PW~cs zQYSiCi$(3_!j(HeIGIx(bk;-k58oLYHK#R<7Kkl=Mxb3d7qJIN&D`pG?ZNR$w#rZ5 zRXz3g>8abR>)WOq9@?3A;&qI_j(sqE(_GAQl*PS;J7EMJ66;@<h4KH|hlPJf&k9kK zw|4&i%e5QciziSgn)he!#p)yEtMGT=b-n98f{O<D(<Ee__~dTGI}EJY#h*=h$xvD+ zuNUn455cGS(~ft}$>@gQFt9SqpB}vAsf{~%S|=FD(>%e~^Q@3mdtHxr&dJbk(h<q# zDB_z4Ys^E>2g;ZJv-nxToJ({Dx^qsR3%g%W|2KM8P&sf>lYLg8e~X<8h4a_34bO?m zaiPH<EDCoPg+Edh{*OiBKPd`-t0?@BHZ1+jIYaiwqI0k9O~zlzegT^9_^eap>R!BZ zb$72h=u0%aeo1tW<PKK;u;?hkS>4(Z+@@tOmF~{POP4L-{0oupB~4fNy<NOTu!T-{ z|3|u69k=GbZk98x=wH3c^d!YYDN47jyRVDoT848L2bJ~T-=`%`MrJ;^c-898<?*7p z<pt}L^4$=2V64Eb|7ij9ykKw}m}^yIAW=P-=Mv8|1<ahtC<C2m6i=UJ@%y1SS)Qrj z`IfHdKjeCucUgJ{I@e~Io>!zpN5HcJti04-R$4p_+z;0CllbW?OxoGtA<L5mKN#>l zX0fiFT><@bV3kp6zZBD>YVebm=f~i$S{~WqY0HDnv`>n3h=dP=rT^dIkH&QK4)a5c zpM!qf^4tzauD8QU%kvfJV*!5I@~ezz!LmamK56kBaJl7&M`N)@2g(%DKN)-sta`Mz z(mZlQ-wR#kvCnYAm8vUTl*vCMM$p_dqUyjsBSzGLdq#|~wR=XC9o;jcbbXVPiLP!g zsp;ojzD)_QgZe!4TuVChtSp_$$2==jc0J#!O`2!rtHJ1Ou<Dw8JigB2NziY=yXREo zI^86z!s?c23V1>c`3*hGqK`j^3;8Ck<l+5uZ8N&LzL`4n&$Zp!Wa)M9+1&U>&f$uv z>)^R|QsUx!etFNidwv=33C!6|TWjsUx)V3N@LVoAnm%`?s^v=?cw+4!W$cQd!>U{a zzqChlzjUPW!ql604UFaZjnjS&dy?6%RwmWb%6Of6_#rQ3$gf?ehYUt}#IwRI&g@^V z#id5tg`evduv~QYs(0Tq&&v2e=(#R@PVrdRCD*HS<-%$cHF#kcUI12mr=K!T*Q45p za}K{7LMTsioIIs<^45YwdFm^i44}s!28Z&vHoZLhNiS~)IF!eAn}0U3eEcMy2r#gm zzR>hX(o_Av(~tXuk;jj5o%~&7v3{IR|24qCa`ElKyK*~u{{x!qFMx?0US)C4#TAcH z9fjdp$HcGW({Es}(sedU=_lfquXHFHqbh?h@c`aAC(ni5uc!YTJ$E`i5+#LwlES*L ztBi7P4C~4`Xu@h|Hw9s}lRIs=ft!iyxyy!)k@T!+I&M8Rnn%N;J}0CWbTk+2U4mD| ze3x?mE(vj*zM@%uRHwSn$^I9@Tu<g~j;ZiWvHapC?C#&D?YsM>+PK3&^WDO>4})tV z;{CS``glJlD`WYU7vA$A)8GHHmWO8seUI@xT+{x3*<^W|;lX>J7Rut<S}S-0@uoU@ zJN<3+HRt}^F#C;sBPl;j7Wwg^s}dQ;Hg=fZ?%DsnzrFwR+Qwh(Pn=^9@aUd1_nekS zJfNof%=wSmsu^ec(i&SKZY++|_m%Xv$y+tPG+3p-oO~&6#$OC?qGnDm8oa!{g7YYo zI{WhU>4eUtOmhBZQok(|H=AALv-R!er}ssPpR)J1P6c2zB^T%6{<4Sq6&lTPX966K zGH+(5@-x|qHAmyGH8Xzc<F0I(&>L%AKI5fW>l0O%CY3(Dg%KO=@SjNU+*Z+F*IxNE zbo(i~{p{sL^fPqgyv$^O!{*8v-|9#6oEhs$J&~O-;}<OxCz`#_tKOa~OPR5=A6$22 zO3l`qk@3fqu+LC>+u)!^rUo~DFddH`QNE$LREKA_Bsh!Uu@0k8wp4Xc+4zg6;yOre zKJIjWJeTM&CyHjvbE)3TG!oU@UfGz7Vu?R0ueheSMY;5%@lPqw-&3BSVr%x_Hn#3< z*jzE=C6h90FU=*&pOB=~4Y|^l6G}&VyLun`V7g^uEN#Y1GyXD`R?P^XYzALhe4apZ z<jAb_X8oPCWzy#HOC6U@WuMh*EWRz5n00%6re>T&e5$FdS<in)BW>nXhR2#dqLjJB z@Lj`i8}1zb<nWr|x$Nwl8cq*fK78%tI>+M76KO1Y#z|o>{coQ;N^9IyyP0zx9$R<m zx>D0Fjcs){XF<EXF&AaiHI&2V(>6SFc-im+!~Mg}%B9EW@^Jdms+cpI5`SuY-QScB zm+wgKOqdoh<CpDKi{UA@1?6vQDd)6<G3CHXp_3m@p>LDZm)}==CZ*3QcqXkUO#kFv z56_@}!(XViK8E|>1?I<TFW|Y=DRVrz<T<xtZguT?b6)2sOCKqVsiC|~aDJ%ta_%Vm z{9b5}-!OePNS|?u`DIMA{u9w3B-fWbQ2JomC(9o(onSCW1fEUf=8;^fU4cvI$FFc< zUefi!=n-xUzxr>ix?7svPS|dx@KHNY*I-2$w|KEl#g@BngOq}&bdxk6xw!YfLIH0u zc~SP=tCz0SfUUms^xoGOYGwtS-CzQZT#DZ19~p=HRmxDf2}~f-X4K7|yzvgZE{k}R z-Q_(?rvGc-Hkjy5ThaYg&p>js;~)Rm-D|IeBFy8IaTnraOeK-RzZTz2c#884uaQ!d zOWdX%hE&7-Uvn(Xo`9mu>wQ7v!=b!(!r`^*WHdu}7+5pHA16;XaPpReLwN&)d+^RV z866ND2G*S9&r|p-@v?)Hw;mkI8zo$Wch1T9eFzQ%-?W=QbMTTEzHfY<a41jtj#u74 zgdWNpCG6zMZi>_If5!*%G>)YG61;OV{tSx4z)8yU3|{)_IoruQ1`g$IA)LWG=Vbi9 z5F7?xqP|*nEP1kzlXngr%9D+c;+=CcUWVW>@RAOa4FM!i<3d(mG#MPo(^_<`lkm>U zi1dCG$g3SCJcyUPTD+5YJvfw?Biw{{&dF<l5Xie!?X&|gdD6+rlMMoS=5msb&N+GW zAcXSv5k7>MJlWF8>jH=JBrAh=&dFN_A&@tDJ>i9T$*Z$*v<>b15?<$8`&@9}b@G&t z^0iKUQHKlh>-ZkZW5rHB!s|>cK>5BIFFxh_8GZwKWi^D=2Ay+psyAb_IHGJC$#l&) z=lJx?P0zV1@=Oj9nu2%sQyxX{#np$9r*A{fIe9MZem(tv(R;D_2)P~#mExE2d*d>M zRSxekj^i~n!q_+O2<v+Gj&N~$T~FQ-uj^sDC1lA@Veg1n`}U5o?CTw2wJ+}ot6p!i z1TAn0>sghncHtdio)`7a!MLd?r#9o><F)T<IpNMY+80Lst(==DyEP7)eOhIYJvO|7 z^s<NgKjW-1zEu?do(&&`pZ|$}D2iu1KX!3?)6W`$4L8_meV@W!QKJoSB8<KKzOfm? z*ekl*#>bTtKQeIU?Rbw*{_(*+)3~snSRB@)g?;WYyW<rE%rn~gV-g?gU%p~--+lV7 zHSR;%dE{{z_4rkAJZ-@QoLH`T;<`Zgd`@%e`R+FULA6Ft^E72O@(*Rc#Nl>)mS_^3 zpR35-OL{mAVzJpu(^iAN?IbdIu08YZMQxUPGg$3O*P|O-$#98GB`l|3M-MS%^KC@e z3hmc?>(F&Yb1_)gu&yhY7CtXic{_TDNn_5SeSa*+W15tigWLffIfkx&kajjf-?+q| z3DTmc;gRgQV3oZS&oyYyvh4!jgLgV~1iHcJzA0&J&95cw3HU=?N_X`e#L0##vy(}9 z0(uyyOUThf%ynz_){_m3Y~|C2_6afFnAt0DfV9+UmA*~&;<1&%(g(R_Z@ob<^=s(T z9lZ>`1KetH1Gvp%Y@qL-M*ceRBCyIhgkNfT?gFo{^!4C=u<Al(kxs6>U|;X(@fPwn z4!PdWLxG)<<<D^40H>1^V(fg8$}3w^UbCm4Y(snS{Di%nOh6AYHq<_Hi351-r9IiS zhnD(tgC!q*wXd4?y3?MDhW=G>*5b9`*<h7@4*sTq-emC&(3`=Ma|n-}jU3e%_Ayv# zv5&!f!5;%lCid|A_=)}qbm{yo{xPs*9>#yxrX2!*F5uZ6@O;VgNamL<{RlV*R$dwW zf5SVQ9|-D>^831@3|CHtPYykNJ)(!dUXbhUe-u6^GsN^8X0JBMsshXY^?2&k&>O&M zi>HC7;GG=OczxiT;`D*<Du<~f&mZC%-d|+5Mtm(;`Od~8Uwbr}dQ_at3+%_EsVCo_ zn*yE?Po@ZxxfD-%4DJGR4Nj8$^>}nN^y%QM!Lq;dM1MmUMrVU%2f~x2^9DRR7`o&S zSo%ir5Lj|lmQUcF{^aL%CcQ5UY5cyLn*#n2m-4P6ozr-(JF_lZb)>M95BBnjyN0qE zm*KDD2{Gi!6ZnH{UBd=b52}mFJWd&hOh0yyO#dA_WBHW_-t%K4KaP(L<L}t;U_&Ec zHo<%TM*3%$7xpyY#$i!^X!zT}c+bC(;yeC!u=JPfwESIQyyx$sZ+HBCV8_4C@(;m} z_x$U*1ROtg<kw1%SpHq`<30awt~<xS2khiOW%>8PkN5ohxyBuT4(#}kTK-Y^@t*$} z?ZojP2Rr^#mVXR>yyri|wPX49<JU^3WB#a~XF|N=k217X$3GQp<wq@+pL&Q?7mkOz z@N2873%|Bn&pZAD%WKWQZET!1J7e7ISzA4UI^mseHh=XE_Oe8+zK`%FV#f<lC!$<b zJN$>=e{>i;A!p{xYFs$<*(-i>CfXNLesU&Z!r5}r{-4f|L*N{Ezc|4Mz&V2tom~h% zAl$qC3r8N^t`#i`<x)ncH}of5&rLbTGVdPknwj`<dgk=e?wQkneEF>D*`AmGDK0^J z%jgi7&K%{H-kPn~Z+2zo`t;896Y;khQ8YhTe6#j(R`ZeUr#S1hGW#JD^UJ!&Pn<~{ z5$5-({XJ%X&3VDl&AFlco)rCsIf<|7ch$l66km>_7sl$YfVMhL6Pa^Fg+qU0ETLJ# z(W+F-grBw~j+{6XWfh-IWxqJ<zqVA?{mtly5<@>Zbk=C{lW(4F&+^?OK1Vj2s{5Pl z-7S?>BiY|pnwHdz7yg;Ej<Xdnn$wPZhnZW=S;t@adbaD);kL%Q5x!21>8#z<j_gB9 z!948xTq6E%G~=)N!ZnuOQ8`@qc(yD1kXvsgzTRQJ%#0YlDzfjGv}0!dkL#O!IjToU z``1Hb@!xD^_KI4=`!A{EH`E|r2Q%%Yi#-C$vt4_?xc5^tubp}O-t7+$XUnpeRPKD? z*2D??@rVED;lF(0y@@9LT>Kr-jy(KdP8>QL*Xpg&RF#~VXU&<??@fHS#e8!!)LRR$ zkIJ2VUujW{LCr$tqBVIm$E2H=Fmb|J)4ER2NnEUuiEWJzm5*T4uGdk-aakyLNBRjT z&;4ePx0JuolFwOmbUS5#NA0gEw@VYxT1S_TaWi@qqI4Kt8I5Hpwv?r}=4Zdht(TKA zO}_k^eEBu`@@uXte$7?Jues{771^V8-=DO7(vC?xoo>aytP1$$zeH1dfax>!FY#9X z3aiU}+w@s)wZ$v`F2+5<yZx{7-7CNULp=6s6D66i#Zi?Fe-N!tK2Y*t=_kt`Dete& z&ev4?hSut7=0j4${OKI_WCC|pXIpdzWy4B6Y~jNE$Aa@Ji{sW8%nOU3kBtES?DcWU zw(6Ss(@PgsSN%G^Q3dlaI18fZz6<S3aU1u+_qE*;e&Pv|&RgBPqWfMQmDs#|ZTB*_ zGO&1`iM9*Nzq9MUfzH(*>AgS(%03=;fT8f1MUL3`6?_o-_w+qzziR~imRdY5z`)CR zUWqmWv~PfT<Y^$q>k1MlEuA0ZoIHIuau}FC%AYxS$>Y7r%j*H_8A&v`GmH~A#L)b8 zGVUehFz|A&fs!0R^7J&JIO+E|K9E;3mGBteIVXen&`@6e5t8kOCV9LkczL{MhVn}5 z39rXH=j446g2TYKtRvYXfaFOp#p(C2@qvD&y9n>aJLhB^gy1mnKS;j;faF!%ILYIQ z$H<$-FRrYWKhn`T$xwdGPBp)lUZ#7?2^-Ll%S*O$7<eV}qG<r->%Q4kL6eOn*Sd0^ zX$$goaYf$?%6XTFE^(>&b$t3w=IIkDLm9kgT*;NUhHwR*A!+AoHqvzd!iD&C@&b~9 zp8mh+dx6g%Wo0Yx2xGszBdqdyM_A?bj<9U#9bwsTq9yESutD|Z$LwuleK#}ChMR2A z3BR)_tn14-%Rgj;j$hx0jI;4yD+>Q*QTTgB;Zud-NcCu3EYF+|s<7R6BhpxbaW;N> z97<~5AlJM0V2_=Re_v6!rzpIpDEweinDM9BS$Th66h2WHPHLROxR^gVuPD5_C_GXW z{?nrH-xr2U%8J6*6ouy$g@30gTvUGT;~cwK-;&3Q!aIw?e_Ry)dQtd0Md6<ohVxxW zoL}k1Me*0!@EG;U^-;>WW9%&dJw;*lSH{`+qWUZ?DqrcQBK|!^;irqj^slkA@{bjU z%iR6RUJqp%8^0d?xt`1P$Y@-gzO3l_DqB?)|EZ#Ik^Rg5b5XqR8*+QekN%?UAL5|v zEXs=PU+(*ySfBD~h5Y5eT@+qf6fUx7`HrIaFBgQ(Hys8t3f7X_=e^?9R@xyZj`ADH zX!h=!Rf{|OmzYDo?_K<1K4p!+7+e#F`WO4NxEA+t##6|=x_8ZL&h#<|b;Xh4W8{+F zWy^c!@lkB4&L}f^EM0tGuLfaEXvrE5x#ILM)`~43@3^(a^P%gEwEppzw|}H>2`85o z9s6dVY!zoR3Kc4Tt}Xahx4=x$>c3x`?{Mx~-}3%}`(MZMHyP(6-2+{V@9X2xy@JEC zZZ&J{TDyBcbmx7DTid-xYuo~b?p!`l6gzkM5@u4(=cMv^I@as;Fxx}qUY&K}pk(q$ z|2o7jAm`43{_egv!h2_T59fsyE3vj`<}IB|SlhRD`NF{kMdqRO@8<CJ?&j62Xo>Td z^etK1-P4WH0}I8kBJXW(o7=y7NvGBw&NnB$g*>+`Lq4)qfvbDxakyLW@}4!Oh4nAT zn)Y2r3mXk_l`@s6ajJ~d=v{(4mn|u%thhGkE}XY|`C!pk+V~S}e}U$-qIcgm*D;zF z9+c}&whkm36NDuhcRvVwxw2IY$Li?>K1*<C_7zASkk+@aw!8lYQRZds{13orS#)0E zGQS&yE}vjy2n=H`c7ORUTYBCVb{k1Ft-o!FwY9&*O{#J8zhn7F;%nTN%Wwvo>#W4? zfwt!NYCptVdb;oJU3Gp-TR7PEp#iqq;-xb*sDBTYY?eQ%|Dv}trvfg!ufHEb@fy`2 zT2-Yv0*Y8O&LNN{-h3@L3fnhbvu>8EDV{r^DFNpfd*Sl_Rjj}*>@H+H`&Jx&wGT`Y zcTvmx%{4`@c)nm6FZ`fCK8HU#Gmx#Tam~GjHa<T!dx!K7Fq2e8?_2dD76ZpUxVcdn zYM{Y5SDdNb_-0nheO1p{8}YiQ>l@e*K5en?iFIH-o9g+3?_maS0Z*}bJNRmg^~}d} zj^Wt_<{81@-QY%x^<2WUoT2XpH(UH9ctL=99x^<lbFcQ8@3#g&1s(ki-Ur?Q)-x*l zCO(aK-?1p0|9(ap{Q6DG;MSIEPg}RPROdGN{mOO)-^nP0-;0bg`1A89!(~&+PYzxE z9>?f+xuc_>|IWG}KBrrVc^5Q$ucU~VcRb*FCx<%n^bps_^CTklQoT&zktw2lT8pFk z6K4HpHo)(+Shk&OvFv#}SZUkAc+JCz&|UKhj2!9PWpNJNXYm2>pv4ElLlz$bZ?O1T z@Ft57gST6J1dI)h{G(v>FnAP9-Uc57lefXg!8wahfXUm?PlCS<rVU4WcKa?^`kw+L z*YJ#ie`M)rz%N=lvh}(w9;(5->nm-t6kHSV)W&I(Dd@7Z^6JIY<_)Hu>f9_Nhx*Yw zo1yoE@33^_MV%HSFX{rT-9n2<Z_=j0eKB2Q5gG?EbfsNyaXr}DHkkqMvh=Co-Emrd z>o;>1ZCg_NaNpq7CfxV_=*dJPLpnL_b8)4^*x&8-6JaCw%|6QIzu89z^53MRgZXoV zqC<2GP7ZpwZ_LqQnx&&3$)7(L9i{7V^ii6*!^il<?(p&aS$ENi{CPRi$^4mis&99_ zN7Q%Lr9ETIl8WotpIujK>9x>_n`Qa6KZifZu7<A6(cyDv(Iu&;8yubbaOWhcKHND; zN#fl(NoJhS)<uXl7MP;Fsa@+VR<p+L0C>K|*fnvN<-xAHHVqGU)wO9bc2yfP7`y5^ zH5j{UzPZ7pVERvkkAa5*{OJI13Gj%;$Kl^)F}6>9-ePR8xhY2GDezY;md-i6>&L*Z zUUbbm`)i)gJEp=XN7>vNQEI!t<>-{{oeopBn;oWXO%9Ld&xO*y33DACz2`ZM-pvl9 zw`>2}L;O}pA43nPbBN0siqm~?A->Y$c5t=D)Pv^17@iJr8mv0)#B<*?^e!;{hQZW{ z?wbbpfu~zM0KOr>v<Jf@I(>`5gW&lVuLHMQJOq}0PJgh!uc52Iuc51-|IrcL%h1)= z5xTz1*#uqPnON%c{rwJ|-1%7Q|8IBv==9qTqf@KH>jT|Fj6Ex5E0v`NEISY3Yb_Qp z_jN<x0LF#}Zv<Z#;8_8_$>L4$U^l}re0zZ3Z}ArB_gK6gywu_m@Cu7}fmd3*8{BL0 z9`Hx;&gPWC+i)mo=ak`&sqo2BhW9v38QL61zu$2fofbHZPIo$tPW~BY7uD_PyAz4` zI*d+tIlPzroNgh8Z04+#0<gKk*jqOD^IFn8Q@L^Edhi6|<)&HwEEw<kXY&l>_#45F zzuEG)z>oL*t=y*^e;e5GZ?gQ@Ac6P%*uk&a#SVVoRLW)ae-eJY=YNXp!pYwUcJdEe z{zLHNJ^!=RspCHkHvGH@tkSEho3!$pb5>^E@CN3rq-ZZZe9Y#rp4YBVT*nUol`R#U z)0-<FuXOwTD^hbnSTDR~^5cEw?d7?|+Ekh~v06)7^Y&b_iXAwzEA@qVMQX+`daj=F zNAN_|jk%IfPGA<wSk<;%N+>rbS#qo^u9(!ixyt3yQZZKbrgQzNnx4n=v{awRhp)Wy zGcBcEsh=ImMXz)xmi;iDNahmRbhhl3uEer<jzBh@-pP!M&rkw0XF&5UrvKiNDO&AY z^8`5>&3{~$xcudc#AQ`GtI>JJ7iRoidiPwdQr%sai@H+(OdcnBoM+FtmCOh^S2vQq zR6Oi6XXGM*oc?gIZrJ6dTuiZE_0QobEaeOPDM9puN=bGrmzkUi4_0V>ylVV->S2gE zMP^lN|8-{da*0{JJXTY}%H@*&#z`ZajZDMCzI2<0oKo?e9$Do`Qn|1PA2uw^U%cco z+EVuNH_x41Y4)~b&G9v6_q(0hmGOLnT-1B5S!rDIe7w?_71T8)tm-c5ZLA)N*L0Kf z=*=gXAu#Il*YDvdb3Ho@p1SnN(?<p>+A1zR`1C<(!0e!3iC)Term3Y|q9-++y6Bl~ zYTq*#{b0CZ-w#$^K76BDJ3N-He@Lr`M{hp*tJaSd$Yv&pN+a3rWw}K4*6f5_s`_oC z8+g*az6vYa73-g$@r!)fi#3t0+ADJj)zlyEc|0Y~yp8_wpr=IV*PxkCF>5+^B<58x z#lqA;@w|$vpkC5o`dIJUm@^Shm{3H>UsDvWEeeY_ly`tN#&fF&3ziuxjdN2kux2@P z0s5R^O>rovA>db;oMZpxVE;s_!A0;phct7ms~(Bkrl;mtm)hMI%`=qe>iid^5A(pD zKL4fFX(pfCQ7s#Wx=RnUIQ!SKcDZ|Te%R9t!W1mg4P&(k<${rG*zj!y=bfy%FiZT+ z;5C@Y<hA73@$^8IV6@5%9P7q7PhTi>0!x8L<8d;;bsnFFvGR6_2eDpHh8He<Jh&Lf zkEhE5GXxoO6>74ivtT!;@kHEG$WoY|Y6^u1={3yf#=q@Q`gCpHmA8WV##1~kr;sJA z+<*1r?SD^mb;3SF&!%$I@D2lOkML(9UeC3n%d5Y84_?o2ysH`4%HKAN_2Xpl4&X8H zQpx9e(#TU<C$9$_$`g<J4CkD@dm%Usyp-olGxtaOrEHw^dlVna+e<j?f1Hd@+cf;h zO%{C)Uh*pO3QOKo_)uQX()lsY$@>#R4g)7Q@yE%N94GI4;85Nn!UyoqIT_!D;4pCV zI+6_lq#y6YUfwUjfxKuF;i-7%oQxMCI1Ie(B!4>ak|%pB4n3nQ`3>c%{29D+Rz_40 zA&{4DBiw<Pyh(T`?>2BK?=WH6#W^Rh8A2%UNy0sN$*Z+-(yt2~$V*E12E21l-ZBV* zyvwEUdc5RKwsDg8FgTRgNO%$6IVW!egizit!XtRe)Agh{$<rK%P~H~8<CS-hO~a2| zop_vnbzmp&e}Y4K&l2v$J10I|^lkoFtZ-e9KgvV;)#IJKli)yJ$!x;o>G!-%!;jn* zUHn;(mpsN=oV?^E;80#4;WoT;R;Q$EvzC6v34qft1Gf4lv*1u(j_^48C8dXz4NBC@ z&Q6}*Qk=Yn;1s?Dub(sgQP?@BUl#=B%hRNs;j4+U`71u+lON$XkXK5bhk7`i+#K`s z*EsQ+Zv>tYgXBhjgL1r?vX)4u%6E;8Bb@v!So&F4whvJ6Lj1b8H-T+g6<c<gv|kXi z&hhCt>4=P{tS4C$;c0lul};*u(cHL62S}zooOAMA*!_C?|Auqp)PH%0F>8GQKv?~U zcZ7BQdq-H;uXlvQdQy5_Ki(0}_yB-#!CN-rsgTts<TN;=uy@33EYCZ_R};|lhFmH9 z3VTPq+Ld>NuO*=NCYPr0s{41E5Z5wc-LL&MZ7+)V*?6tR*Y&X4hIIy(?w@Whk~_od z4{iJb;?);?)rQ^8o^};GEB^;Y;p0W&muy&j2aqJvTvE9VVg5(6;$UJ90qQTBZ^Jgf zXn_rD?jQ9T_1N$t!qjK<@gjabSI9{o^&5RD4kkJYQ@_!E8+P)av0?F3-_hUOu<V&3 z{Iei_ioU4F17OP%MUSZYVEi~*_yla;aSBO#u?e=b&Zp16)D$KN-((77@~<z2bo<U? z=M}9P=x0()!F+`Lv=7T;70QS7=pH<;zuP^m2QNC~Me|%Azugon6u;6~>BW;!3T2zG z_j#k(7n!_b%U1P`tC)S4Da=<dFg7VOAXXR5RP)*D6{av*QQ;|+XSOdZwsFvZ>sr+% z!8K{H`XXIFx?a_P6X(B~6X(B;t50$~Ax4hbqo9R&<d}U4bgjc<@O5C?v&U1x>R(#% zvn*Zx-whVe1vh~&<F^qnxh`L@*Nyb<yQt|)98X)o57akd)7PmFaXj>WzFe|}qlXxB z%Gs*OK0d8%=hB84viXjb0;sQZJcNB(bnx^LV^8y4WjFE2WSLz2yuvka=z9ofz_Q_9 z{PcjHwe%;UV^5RzK``}U@LDkTHFBN;V^2dzww_Uq%zfa_fZk>C0_X!^)r<ItEWi4x z^_H%>BR?ZQ2i{<Lr04d4zQfX`=jZUwK9t$phjRLFR;0gbDtvOJ@$0E6gKrP${Tq%4 zovwB`XXT_wdjRk93UQL}$*ODGsrvefvbowM-s~Nb0V~d>1$#Y-o8t1)uj2_Z^36UE zY2s;1W?u;MQC?=x2gz2POAGe$iSzO^0Z)iaS(_~VXX9z-X5R+dg6`91--bpo?ZnX4 z*2L%X0(%?6=f3BgXJp4SC*Y?nW<Lb!j7`m63X+L8dnRPSwU(}H4jUSN*+XfZOz^d$ z$z_7_Li6QqAkOiJnDSn%^0wizr`gj$_NxJ_ecp~IUqctBy_&ra7J{c(y6ivK(%Zq3 z<?;f1n~>&urzd>gK8phW5L5OVU7J}vWvo$K%EZ3L)e&VebX`Z+S$=G9(l{MR@8(db zzI=Ot&)a7XX&iruv5(nfLFK|eX77bGxCSiy$d=g0(1p>%?A4%hU>`%5ebCL&JHWIb zLtg-vT$eA{+lutwR-|$BI1-%!e~7V_*>Azx%Ivq0ffsM~aG>1M)zGc241XhZrExld zXSh0gqqa)%ja~KCjK@}&sJ_rk_AwZnsU9zp-IPZLEZc}a4Xm^+c=9#46--^2w9=V2 z=Jg~G-{wi<?_Z?x`nLuAAudHN>85(*o>Hr}l*OZSt#pvB(A)4}Gx2$zOu$2*V0b8> zY-`fWp46|`6S=;<A=k~X(f#-}+a6--Ch!M+Wg~;pOS;uX{K}!*xZkKVmS1+pdw%rv z->9*<|3=+p`J3U#dwy)|zfogb|BV`Z8hsYRkN5oT@oNy&cy5mLm+P?nonXA@?+U(A z_XOXl`z-$e{CLklNVn|Dz7Fi<Z?gPb;KzIZ?c8@9{|MOe@3H)Q;m3RaC+U72|5ISc zpR@c2;KzIZgWL-o{~@sBKVtch!jJd-qck(ee+=ySPg?#{@Z&xI82zf_KLfV>QB}+z z)$qQ8cl=Q;O~vv@X|UtZTK?Ja<2`>PeUamz19tqamcI>tyyss?AL97i!H&Pr@(;j| z_xyugzm9($*zs?%{M+Hjd;Srcx8vUhHvD=8>t5<+AY@*1U-FqZ%(|iRb?=*T3H6`I z&p~KRyp8YA+Bd`Q+?-1dKHXl)4&qfWXb17Jnkv3?S7k0AJh-{?QL}q^%-N$I$Roa@ z=8)%|`Cgt%4^RGV-$?DwAJ!-M<_-_1%ni72+g~&LX{Tz~6T0_{Yg3b$wb1)@^L3k? z*hiZj`LbQrdvJ4wzQtzJkEiNKdcU--ve&GQx4U}to&Dzhxzx6bfA~&r$Y);w%y;#Q z$)By=+P|G|?-5^!zr(3|=WD{Q>AlzXye>_8uY0)ir*BKt@SQp89jv)&^dTk(J){%# z>dn3oUOW3OJ`S@VHM?2si}S<Mmy_%C4O!Ie{V$fK6OximpDe3rsTuy^<%tcsi1`+i zbBUV|DUDJT6wC%>>%n&ozP~q(9vj#+@H<08gYW1yU*mfl%>Lw8^j3W^-8*NrHSwFd zM7FZF$byAZ)ebVhl})9$4L1y@YPT{E<I~df<!_xEi#3kV9E|sRk14&=wClGiO_kZ7 zAlF|0%2-W;{Xr6h*%75M4~0xVtITfrBXJ8!Z)2a0Kc=iX@?wAax~-CEcJPSeZ}&}T zr4reY&-DXeJN>o9FLSB$bBXg|Klt<qw&xOq?@%2L&TlX0Z`a*Ol5X1fe(?QwSIT-f zk3HPr_KQ&5V5>^jE8b{EtMn1IC$?^T_VS0*4_}+lS8Xlx=E>Wz^v6es*sSN%_}0W9 z<Py2kwUt=X?CdUT`=VT8rjgf_+B~PJqW>n%I_Txh#NpKNjl-A!v@wwyZfHu)ye(U| z`EGdXa;f&#oTPE7aV~&%ffyz904=aGJ2AG1ll;>g6R9TV6m7nol<&`8(PZ>x9zztP zT%u{>TC+ob*2d^OM^jU@*jV=3ThG^6?H!44YpQtsy%+ygtkv49$Kfj%ADZ6)=UtZX zyz*cCOfGfvk;l{Uyg!#Z@t5abh<DI{e@=S1sdB*7R&T0m$K$ETZ}`c#&Yj9mo>BGq zWYq#Z?<L*jT&k%&PW7;?I7hWrxuf?3j_2ZM;JjS<JfVC(;B#D*ueI}A4fS}YrEK!n z^p>^Bl@)hasAaS;o5b~rn)_4OCq88QM914}dc~fr8dE(t(3%dNEKMik>m$7_m)Lip zlQL1ypD*7z?a-s97idhyJdNr2w`F2B_2|B}b&vkl6BB;&%(=rWQ`;_|p&2yV&;Cs3 zZJJ$m;^4Vwbnep0iiD{}WUH4wGxO7>JAY#L9_jt)qs&*zMUQ?um-@*!&z+k2X}7md z=}valF;_M-jrPnqB1yd?HC2yp>@?PUHTxXCGV^<rwz2pBvn>_rEv{dsRet8klrzWa z#mc{N?V^viUEMaHb4j%y&uCmnrsqhg=YRBuNAGItsz!%L8&p?nn{gZdz<yfigkE#q zDF!<<KHAb`PGTs&?%PZ0Wy=3az07BRa9xv58#u3TK&SI#qMMKA%-kORo?ritLOVE{ zxt>1i@yVO};$AAD9)x{~9y>|Na;b|q)Q!+G&t^aUlLP0@RXq5`6*cA3`em$;dGH(8 zR_(}E5dYF7Q_E()Rdn&EDmHwvYf@^)@tU$9l_e(psBA*T#oI+0Z8>)?7ybC)xwADh z&E24W#tYQwS*MSFvHhx+a^?g+(PQst*$L`5k4(u{Wglv*YMa(}g*0fZQhR9feWc~N zw(YjIyL<Kxr+W5tt(46;^YH%mGVZpC=dt3K55yL(+nU}szBOG>s~j$DIqWu;oxohS z<5+GBSN7ONjmIZM6YGxrXhNc@#mtnO@yqmt${TVKl!|PsdgNza=gv{qF;`a8mp)v} z=@jX0Sz4`fy!$0xi8CJ79lUa9)s9$OwXbZds^aBC3}bhl8y)-RxpUcx*)PSj=4L%# zeaOw9Q_4-FE{FW@;hC9-Y0dj5ZLWDNy{RR&?$*BHb*0>clj|;7clElr=MtJx#_7Dr zrNz&_m#g{tbGe$jXaD(s^7s4M^12_ShTCpvyQ`EFDqj9!V(K@pdij5xJ7MpZe~O*y z4aaSp4<EUStLEV&vpQ0hJ0EI@_2gPes9grv!?>xl_4Iz@#=Lr~rVY)^{BioTHBZ!T zYe`Ld%(m<(y|rp&#;PN;Chwr;j@5H*s<c%*U;gjs&M<rMXnYz;daJHguHmS9bM>Z} z)|5_fQTc4h^ukK}fv2z>SNrIPChi-xJ<<n`LYtOLbToWmjKApzQn^%eBzr~HTsM?x z`$JG}9-CS9khwzBThcr}aQ4WlHlCg&^-~i%X)&L=JhfwHMa#sPmflRSu|2(WxWV1g za%i3$x%oMzh;tCK(x1zvq?ht_9Pyno<x}Ka#~Vkc?S6)SW4QK-0_*-BEqv72_xL1l z-@0vBcQmf;*t#+1X=m$rt>yz?%|$m;f^5}8a~@jMv_UOLWi#yt`m5`UZf7|EW=rj3 zoY=ChX|0>LIef!#*>LUfHR&DMRAASw)auUCk*XcaA>K`m`-bUZ%!x8*)cfeJGhVLb z)tkA#=|OUOqIUD-9qFBM$;x+D4Rf7vr~bxON!v4;o~}19g|uCn>q)t__KAE-^{Z7o zzHx22=02Ny?u-{q$}X3ZbWNG-={J0CCe6q<u2l&vca!60)Hge;b9z1~R6J)h9YnXj z%3fF-gZYtRn$ch$qD0jO@|dHT`lLBKrSLmy7x~PsuBlGP2hQ9vJ;fGQt+Aq^?3iz= zKb9tpD?YELKA&%N5S^GFnm^u}xJ(ewnJ(j=6Vs6ANgOxxOSAd;r5)9cW;$nfp;2^N zz`LcnnrWpCACEqf{DYG9r4N)nSpLZgkEGUBXE}a*ezg%B=$F`SWKYY>M%L6oUUSi0 z*}JOi+2Ct_waOpL!3LBwTTsq9ft-_^bu+iRc_{jL@)IS0P`bYCf$|3@d@}V&#Xxn- z{Ay~ut*yF!{`A`U)y>xW1$smsCVlJq>5KFjF?!4{&?6J*fu65vZ|2{!r&=bqp^oo) zr2L-hhPkqz5f$2}(d5T;;s=rsa?W{sb%yD$v3bIJPUxH<+L?~;Sy-KJ5>L&qV~;d_ zaWtPri}$q{f8yu6%sT!B%h&X={++EZmJ}R}6MTv-WDKWYDo1@WF4`($@v@~Mmtx@x zNlK{w;!R3PSjwXD{`*6grCN#J-FvTRS?2cJ2#RAqvLb%XvaaQw_pxC|Va|$<w-=BO zW;2g4ivlh9LOYHYff@2U8_eef=sVW(f%}5ORHWYJgXfi5YEaZ!OV%vw?k-NPNE0y& zmM}6<!Y!0%i-m>#-S^(hTKT{n0pq(&?Y?T{Eo<)YUDg${$RJW(nuJ?_jGu)*V&69R zd?|qzd7FjVoX>!^FpRfh9(yiKmpaQ<tcv$xi6`|26t<4|sN2c!|EM{;twG;aYO(rz zhk?Iwia#Ux8!TOMRrvSfBYZhtZV10oz&a<Rjj+SOt2goIBwq5A*2()AIFP4t;>0N4 zIVa<O2o3|U86sITK=M*}C+|OjLwP3%OBd&yjL$-F7}#)tKhjb1D)CO9=H3MIlDhx+ z=M~GxkNLhF$h&qSv^{vqQ<<E+qu@~9Zo=cq`<_k1kKDCq_;Um=dDVC)?;JRgXXg9$ zKy%LN^fCm8f!7`8PYy46HFzs8nhFl(4H7&E%{eP0;(08T_nTXoLb4Z{<mnrklQ$0> z$SZ3im`UWFllM+Y7Atak6MWkNl2?m&@|J=FdF361kK>(l@;(S5kT(O{d3lp<9Q6`C z01o6$Xdz5lymRt~pak+}_7Q#xFa6RsPV)W)9LiID@5Vdl<b4T3AWz@fq6{?2tHUc! z@}A{4ke3=F+>Ce5%80%N!D2<dRXiPd$*adJPV!#hH<WjPa1Y)&D<hIkEmqW9ck^ci zFL`glD-L-{T`PgSiY(!ic;~E)WEq4&-s~olNv7mw@J`-a!GXL=;-U^{&N+E{NDbt@ z?HIc3gC==XY@GCK0|)XZ4iQ#4oOAMi8$uwj5uRuoG|8K4<0NklIFMH*+xFm{bMks2 z1oCdwHI&0k-qm=;N#0g|LwOqr&%rzA<ZXr!$h%2=3-OZIVB;k3>)=q{0m6-V=bSvX z-B8|9!cN|GHcs+>01oAyA*?!f&dK{52!XtJh{wsBX5%F9C9vep!s9MdT*|=sk7N*E z;@VY7OulF~zr}oz%szx+zUv{9kFm=PeicW!MEg%Fy^|*!2k9Ixxe>bbv+g4JO2*@p zJ^}q5o8XgeR39pv%XdCFkXO@0xE}AEi_<)4tDB-~77=`pW8&BG={K3D*Z1%}Jwy2I zc-QW0z!msF-jy3s>0W5gIe9MZem(u)$y{r-1Gz2=t$Ov2!s$Nf9buK*JHomTc}KX` z2LOa87lqZ2dq=$bVebfs^``Xd2fZVl@c{r~)rWV4r}_YZu=)Y-2<tlbj<Bvn?+8!x z0RUn3f!+~Tdv|5l+-`-vBYq|U-M8g5ms?@)h*!Jyj<DLe<7q{(+Vt&?!5aH68{SBK zIe4Hbetl8+F&iF*U)SSa8`fNA)%E|dVON<yEDHZqVK|~$#4gq+y37W<kVpH7ybWyp z92?(5Jfz6!Z}W?+{?S3=`5$et{4V~Fio#zh3V*vO{P#s+J+I-S48m!TX3dMC#QG(# zGy$Gzh^Kuf)gKvW;}_WA7UF5I$q(D`Zo;(J<R@*|>YFUu7dQE38{Z5+?Kzn%;(ykL zWgpsivdI3)lSTYzZTKYo8Cs>kMq+(Sti7WS;<+A5?kG%O(o+<EuqeEzD7?QY{GFn( zn+rceeq3**6K%Z8!}V5rl?`hyJ=a_5J8Za-FxOk@@7Qpb@H8`*o{1dHr02bm7g+P_ z-x$N!$M|JY@44fSlw4pwdHgb6FjP{!9ceI~yl<TC5?xv|Eqt6;Yz<tTzbPHt{;{7U zo9Wrf^zZIjwS4is{^gK(^G2%$%NgEa=hFA}FX>|=&iU-{cjrL=eai;e5YuEe-XMz~ z_E@&6GjZWzmh;uQlPwCD^xV2uyA(=@3>%KT7_%;2yh5i*_c6Mo(HlQ%bD>G|ciN$w zd2V>eN?9||%~pkLIm0iWOTTQX9m+XRvJw=J^5m;SGw;RWEfEa#6xx&V3~$fw`Q5kn z-rL=~d~tpVBR}j@AWyYv#(Hce+@fUxg|#ryzod5!TMB-JYVwxLj{{j{*Yx)FclQpg z@ErNUAjdJ#Kd{=L#K<a)WnJtbo7Z)m(V_E-Xoro)DQVow$7zP|Thcx7p5D0LgWTp7 zZi9P%d%4Z;*?3;sx%YMVbk3VQFVtSGSETa=z1M858*l%3o~T%DI}D|oQH7{!h9g*k z+6BW_1@!TDF16K9CZ@;X-fGrlG!f!HX!dqg-^nwNp*MrMpP4-qZvgWwVD?gM0nZNj zZ?ah3ZxjAE@w!KX{hU)|`8^6r@8{RI2K*sLH?z)Tka)U9vz|lGN_azG2j*U3==7<& z512I^Jz)A=Ll>TAG4}!KZ0LPp?g>WD5cnSOZ}7Vw-)Zp%a4%T*cJ7(l6U~<ko&4N? z^zh{x3d)Ntza{`#zPuX)IU%OJ6Rsid5FR^fPeAjm$o<&RpCw#x>6A}pH+uqp3_R7+ zg}I-Yv>EU$i?@JV!IFO%Pk9Z`4lw1_evYQ>J(iB{Zr?^T{zKWdx1c!#n|r0lBLV&r zSaRf_221~g_?*R}t8A`qfV~YVo3|nQ`8IPTu;J0bhNFR;5LfYdr+idjv=g)6Tr)TW zmOg4H(=BcU&$c`*VA`<ZZw1fAJ3UG7>k&RbpBg@2r)>d$h|$CB#nw(d^=0rPF!fg< zedgn*S&S}v$2B}1VDvLQO<;60bm~fb{CVAw8?Fy<`ynPe5IYq<InsDNy9m2-g}9tK zziJx`@ik!SMq5+6GV4*KKYAKEWs;tTuCkz;q046PwDb-zWixcy6T2CH>AwK%t|{f` z^a1<!Kz<cYfAW~_aK{@g7k!#p`=V=~av6+{x~>eSPE<~VsS{m0Rcb%d>jtpeymY2) zo}aRKOxZjS^<uE>x)iK3&a&xU8Ik4JD8T32RS$fQC&X2ZRiIC#x<G$nbH;5NtU6kY zud}!hOgXjwMtgOtjT!y};AxiU&%jyB^As3cNKPa@vGYaJc`Lrd@}B~)u=o&oz+#ng z9oXeH1eR{f>p{z-ymnZgec)Y|uC%)?eLr|lz>nUhTuO_6Mt%+qpV4h4_^_p`j7PvO z-@gOPCQAFm7@PO17s0MvXTVnH2sW2CDv$Y<HlocKo6G^rwl-}P*ft7m8wIwFWLxoX zBrVs4PdgW^d?}OG?Hc*mCX#JM$8J%7z&{x9uebczEc$f7zdhjpT!8lm_{->G+m+gc zTUQ}H+`gsSyVvbo8e!+RO(hL3%5e!ed?4Re&A7aic@Rd|ZcBMopbv>s&}zV{m-+Zw zORoY?2FpH8_}O5U9bSz+dj4jx>M@O9Xz?yE*O%c(p4zJ6c^b?;+R(*6Xz6MLLl!>= z{sdUMNr&B*jy&x{>SbaFBl8~U-?VheeAd!Wf)9hGKk^czmZu*4<ADDsc^<Vfr&}cZ z*tBYI&Tg`oyWdGacOR5pT)!PrW?x_E<oXTu3yo8eg^M!$arF{lJ=dAFYm`HE;m_lp z4aWZFc>wzx`c}eC7Rx?&Se_%`g_iy#xZTo^g0YuLD?07j-~n)#<rxL9we*jHKWgd6 zz}V67Zvd|k__;O={d3Si8}NVL(kDaT6YxJ}>HDGY3;1)EPJOCxGHdm)pX%3?eH45s zpnsdNYtPur-;WM+o3nOSpX06zJrDVN6S7==B`BM}{~ixyhPa%|gf^K_*|}EC`aHEO z%4YBoI0IIjS&F{_toquBZ?$+6n0oPPvAe-jpsxe#8mz}F4_7X*FBh_0Thez(w+FHL z7UlT21ZhiI`y!pCLycXZR|m#6X5F6jnP%zl1kbWqdd#*wl863gZQq074olw-?y+>r zq32H{a|AqS>9+kCy5y{fF8kEtk!9$+!1R-b-UgPgt}I|*c69Z72P4bZ9eVgWC2wDk z$bBc}G;TM4oy-uwg{qW&=HN46)mIb#I<WdQ*+FqGE%*v2vk6v*n**K@*Vr|Gi-@P4 zn00{}@YR;y0fyhK3+x1Q{Tkc_UI3O3H{supcRC=;^&zSY-yTRmcPe~xq@U+7b>!2A zxSDEE*$?A0VCA(APdbmWgIWK_HKabo;G^IU%cJ(c!s1@=O3O0}?zeQw9I*6bVCve) zIS!^yO<r5U)M>5ShT05uYIsh7KWllO2Jg0bFL;mT83jLS>0bqZ#nP46KCqMdXO`!i z(Epp|83q59r9TEfWa&!#U9d|l8#()feVfECw@f8Y4!hjy@MzEuk>%SeW%hj$W%KR! zB<Y>}5LdExmO6?gw-&5AqRr~P=u+K_`PF-e!PCG^mM0Bvw)k`4R?CwG-(~6dfN57I z?QHN;OYZ`AS~{{-r^;9NL*2WL4kO?}%QFZ3F-w0D{0WOUfj0#B5wPqj-KcMqZxeV& zK;ISMJ(h=ZsD6zOK)tJ)v@Kxj&e(_Y>6`#VZv#_Dh98?H{?5`Df{(>?^L+yQ8~%3a zC&5m)mn^*r`q?~P-w+&+o(G&hQFWd_niTL%w)92V?kyH$&uB`(GnG7Sy{nF0yHdTn zcBSW4_im-<Ro7-B>df_Z5prD{i>QxxNiHsG;#JP!=HQtG+ui2q*v_pj)|$xM9UXhQ zwi;n0xA%8Md0HJ$2bnni1FUa6lhwBj;jzi&pxsVZAG;oZ19agH_;*?!Y^HZNL*EES zH<MO%hi-<x35-65eh-*7Z0K9S9hOd?q&7TRbt;+tmS;P7(DI1BF5vkXVRsD<<?BMa zy1J0At}b++a&@78%+-bZF;^Gr$D9q#d;%wbB*+W<TqZkECh2;aY(-ghkGM=W#NN6e z8J-SsHsEQrbjq4&vh>@*^DVs#EV(XUuzN0*+=i*d$#vxGU3Po7qm$m%yP3b><n)ln z;aV<f=|3Bf&IY5Gd6#xP#CaPM=bu~V1ad-*O)i&A%BuU3!IH1AlL_`RiSsg*x8n&h z*J+((HsI?lo(4u|&rh6}Nu1xSpeSF@U&`Z}UK*^+OaMUBvzEcNV0^~$q#1X0xE?Hi zIr1|6$_MZHDVJZ@PFczwf3xLpfgkVrTN%4^^4q|Uzr*r(!jJd-U5ueQ{vNR7AGG}I z;KzIZA=<y=Uk`TtyDa~1`0<{94`WA;e=pea@3;Ip`0<|q0OK%@{~*}$AF=#L;m3Ra zQQn;$|1q%RAG7>t;Kw_DvAT8Yx}Ujq>UuAe{i96mJ^xhRHLQH~$$p)Bi{;1O5#IA- zbH7e~A=v5@S$jt7;KzIZA)b4k{PkeRza1XwGZK5xzl-kF@$UvZ{+#7M06*UIV?)1A z{Seskk6Qj?@Z&xIahj`>e*$dzlbM)5IhD@@c*mc_CYM_N<TSA3xAsY58+p%<eI`48 z>@(T%cfkWr_Qc-v_tB3z{sFM#-)Q+a!H@U+Tj+lrKQ>G|{(Y8zKm2&lkKHbJ{0G2} z-`XdMZR9;a_Hk?alPAE2pLP7b{rP45uf2}{?KjMd4-@F9{QX;7=SNAaLIM}1|5$$o zV^=%IZ+;zrYvML`+#fl8H1`*NkN?!k)6u5kihJy=ffj`~7KJzD!}pxK=iJSE?>Q68 z`HNeeoUvyTQMUbLMZ8YECH3S8e23!L!%^nVoC<J%-QTjy`jHma`Hgn1ANp}R@s_&p z-+a36C@beqnAJCb+FrkywafXP_s#n3q0IH^?Thxcr6&)kw=Mem*ug~9-Y~j>&aTR= z?HOvT$hKrFUrw=7@OR_W0L&V+x96g4i_QbcQ?-uS*(Uy#ZmbYIGwCRtNO8QO7Vuo3 zZE2hM^qE3wIo1muNv5}x{&bKM+WC28(@$?KOkG&g*hZG;L#`BsJgi+}y(udZkJN6R zw5{febu-tMvI22R``x3T;#OUu_1%|l;G~4o_7+jH6|9@Cn4q&0EM>;&NpDxo(;J`O znSFnDB9=cZ%V#U=cD_`Zs5ntMA@!9#GhVJWT-nsqW9?<9_eIewV{hSHiC4zb6Hb3U zO8)cr|Gv>sN-U++Q<9dF@)XjVR5gx*6*lCpWoq24Vx=y>Gjz6Cv*P;F`mOZV>``ew zJfHQNO|h-bdayUM^7V1n6rY(<UU?>7pO~E^&eQXvY#go}rX~7Xj@ujS)96FScV@j9 za-ZHfqdb&&#fH-@i5^Qyo0{Dj)*3RK#+PW?bXVrhYSZZ_w0g3oy!=R^^wYN{PR6p4 ztX5ep`_=S)ZP_P&jk1sb8f72*HOfBvFP7brd2>tI)B9(X#jDuk7RMUdGZzigMvlbP zs<_=1T-mgdjtjLB)^WeNmK_Er?U?*Td->vu_R7Vnnr?cu3EByQ6^yKvj8AtlJ?9Io zy{yV5+RJm%>c-Sa-~DwvR+=@@O%*HIv*h{HHziK*FFE)8>FfASM)Yn|+9xbdA^Gx2 zU8hpoe<1Ujs-3g0i&tP8nZJk339Kb$$A=?RRyS6S^!@Iv>t_76;#h%vf|FNLCx7w( zvG+cJRaSSN_q`#6ONcSrh%rrVw5g^R;ex2qQVkH9i;XtLjHZ?`2_%?k2x*8GEz_kf zwM=C!)1siz8E2NAWjoBQ+jY8(WoEN8PM20X>&~*X)OBXrj@zXUDz?-HrSg8h=Q+QV zb1yf6>9p_Lec$)M$@Bf4^F6=wJHK<DzxR30NsT3(!u>RE7yHoR`VVs4dTIG{%fG$+ zTgwkrJ^IXto>~6P_0PO-{e|nx5|3pYIgY*&@0+7K!v8H^I_&bs^77Iy?ad--C-c)P zwzJPid;F-rPEIjv!rSL=&rd(e>A&{zwhXB`I}hjxF<IN<b{@Q>V+K7{(aAbIum7NG zTIJT!^x;*h4HX}FqwK;BxfvBtyz$)IhvdKdnJ<^|!{Vk_@%)K>sq~4TT+B9o>d>Vx za<^uon7)txgLIwv`izUE@9cHa2cygkP?61?xGsIpi4UYRZJD;l+V7sYK3!4!0^g&L zkzS58J)Xs-`1j-VikpXJ^6!v4W^(p&JZn$9J$OlOTJv464Wu)#-J72N+F<&e>POGt zTJ=Qsq93}^`07~tDSh4C(KwpQRlN3r^dDcf>DUa7)2p^8+t=<%yLl~MdGV<#`Jtj> z`Et!bQsdToskz{_-n5%ZATPg^{H<cwRKM1fo-vrrk>FNqdEtteE4X^$y5hzIhc12X zI%>@6dS)~Y{`&kHcWpy%_Q-2}X~x8B{qC>wG9mAxT;_F`jyI$9t9PGpWsazZhuMEJ zu`h(RkNExIxtd3FW!a={t?50Q6D0cq+5E*>M^B{p47+uIvg@)lzP2gbcl6Elo~O4f z{cC@4bS%B+sc$&^obW$fm%4B0il=|W;}P)V!Y{v-+Boz+_$SkQq*t>Z96j)MyRiFO z`*5Lk<MQ}RNA(TMdXv?&udkn*ojdocdM@s@w$1G8+;(o0*0{NPHrshFectT(Zad%0 z^L_r@Wb2m35&xPbpDpFd<lj6rB)aEbH~Z=cqcNoGyAD@BoS2UmpYFDEQ74%#CEV88 zg^Xq=U*oq;etWGnoc7&!g-cETR4M<TAnS@TE?+2@7UUP!S4aM=sQzUA9KP1A;6vY* z%IcddYxsirk#vhbRrZ6gCgOJ`-}&07=I%EZ%hozTiz+j28JucMWZP_O^nl~^iTH84 zhKdjA(&FEKyX;smEy(CYWM!zm7CPLw%+>ZSvrCTK*6!L?VMX)GY7HVjCC@7x>;8Wt zKenB=={tXY7yif;TE<8X;eh)FzGnOz_~q^^Zn~Q9>xU{AEScQ^zJ0a|#BDm_+FY0S zt$Cc^hTd_dNp*34YmxlMU=_d1IGY=mRW>fEoE7FLSW?;GzmSh~rRDs>y5jcl#@2B| ze`WFF>+2h@Y;5fxyl>r={Z}<z^S<}h&!2sjcIeq_A6Pxo&BxokTAFP842`(2nS1yg zH>EFdC-|JVf9);(D;KZ1Z*Zh{_?F)8wY-Mx7S`^aXw@IytGunJf6ZdI?0E6djG-)A zvu32ddzcqHH5K>-b;E1v9q4{w;VLTUee2%5udm0CxxCRkLgVkf?LOX^P7c0{db?Q! z{*LZp-ZQ=1nLj}t#g}ZK^b=^zTGrd$lVgGQHThq-M<y*@yKwE=H7oD9<(3I5#^!h> z_~M?rX|Q|6K(E?%%Nkz2UBlbN6FCcg3+bf6!S0s+`+JAi_K!Sp%bFhhj9Q&NJ2G$a zn!#25cmHZj+oIt$-91{J%2rq!#^bY#(-$slo0NqKi@I0dd-pKIrRTPl-Gh@Dpf0<A zV6Iyp9(&u@Ez?`^#l4UiyQqEfn%;F2P*9g!efK2wC7wK!4mX8+%bL~Q{ez3Uhq_nv z58%d$t1K9F%hc|X;r^l9`k74s><4QoH`zdy!}7;?`?@9F{R8Zf|F~kwuF>AVx_8Ze zXK!OtN)=94+xU2m_QeVO$8L0M@5s`dCOYyYy-xG;$JE5ymh=y={zUh1@3LMNT3g$@ zba2(0iOFXs6+bdeppo9WW$oR!F>k@b0lukNJ#qIhTshKzKVw~Q_OBUS+}Axg*gJp^ zbRgF7m+74xqmw<o*aQl_EAG3ybJcM7YWA0vYgW6uq7%(oz+a|y%yi9WLDzE%x@I#B zyi(UY3yAt1PU(ueE?hy>bKNqcLJP5&zJhPkuWW;7`c&5ReGVM!Yo9>h249Aa!j+r( zWBPO%Y5MHBv)R`}UNQT2`!Z}4uH4Tb(^n2QeSZUv?HfUM7k+FN4F6}a%J?wb%FBQ9 zo0rq)fn$C5BbyGO;k1=e8ez8Dpfu^@H^88;1sv;J=kwUO;B}{OM2hXJLpFWVZT9tp zV}0w9i})|y<IAv7n62wB^WXVk)At2%tZy^2>bBr*a&r@StgPA6pChWh8jGgyUxQ<P z>POXU!SsEVgjnAmWQ{H9<M-*H?*(wI?<M3eq6O1e@XfdT)KYazpRN<d!=EJ?wvoPc z3vvU|g4b7~YiN&^HAlM4K7Q8?`gF$^>+3^qCR#9ky3dUDokZS9lzsBI@?@X(%UGZ4 zZ6I3kI!Zc7@K{;d4g4|tcn>7#;~9RQz5~d`^lkKI*eGNV^2hYmgH@O8`(w7Tea8?Z zJItn%r+gVU3UeFzbBL(+UP?55N{jTB97k4vS@60`{tF3FJ#uFl&ka6L_MHGn`lgWP z-c4ZRg6UH|u|AE_r-`!fGM`7;De9Y8Uk|eUV!`W}qIW=IefTBlQ`?m%eIH^Q>)VUG zoM^%HEg>P&=jOaH`>ybL()U?#q_4CZxtKn^cM|EF-+^rUX8Anndj=fq8$vFoPvaoc zcQs{$KHW$vPx@YG8|yoOTuk3lUxtms)ua3|`?6rKuk><oq;INxTSQ-}jWMznt{LHv z>9c(i`${`WkM(UtmTxThHkRH=g2&3bR`r^``94qjcxIQU??q&_*@EeNh=f=lJiTA# z#vf0WLVN!J9NAa48~F&)g6aEx5+Z%qRa0yiX&TSct328FUAB?FX<Lxnh!#xWK@uW; z*Y8E{B1+%&M6YjZ893H=7`c^b!Rv7EqeS{XPy?ZhD18fvrtkgWNMB|avTU?q`Yt0O z*0&D%7*YCe@OiX%Y6m#hw-2$3Gz+HhHWDIz3;N(aMVj<A`#kCU3^>v^{Q$E1#DeMj zbrK?dH>kbhO5Y-%Cw*T9OP|g+gz^#o)C>7w`u;t#c<#UlZ!7qa=V&7y`BQbA6wikl z1E}6;5?j;vSL0Z@H@rmI;{e&WgeacuJIprHS1BLY5iMAruA6)tly$Dk{=i6Vji+tN zczQi;C{usvxcEMz>Xkg580ou=F<*8CX%<YM$+ivYza(>pm|bd&t_wpzRy#vLK0gQm z<mv)h*F_<auQ3$@vaU-)K#u!K`gC0o0&;y20LYgX$PERu_PG$?HwFQK9QTjpSq1qz zFN8pTHV6P@Kem%p<oN~pIxdDlep3(t$T}{CfUM(62*^4vgn--}1OW1)0=cC?zNtXg zei8!Za|jx@3i`-GW4U0?kCd+S6_j7b_6{d0Apu=pR(=Mo<A{Rfa<)61#6E<~K9+he zk~O}5<mFQGQJFr+%PP<R^n1Kqhrswsf6&XCgM#su*7c_gi9P90da;Xq##{Qgz3lBx zKkelP@)>_=_GcHGkr{tsJxJv<{z`02ORh)emlTDx>}C9w+>*%VkCKmhS?hN)9>W|X zzW$Pje0~S{j8C_otV>GlFZqiCeH=$zXot`Eb=QYVSdPs2b#pG6%=n$s>)1&?<9Et$ zMRFE-UnI{%wqu^`Vf>b=&lC<IGk#0ooru=HQfy8_VsGi<0{Qj=dALB{;APFx!v0YD z&%NA+%>GdNmj(QTUT!6y{iF0%FK<C+|CpMXL1F@?>U`{imz%w4`K<-=M-w@%@dkJ5 zx`O;K707?!<=ybv|E7MYAph?R<Tvx>GCj9ZxR?`A3zJIdCAqxyDkphbUpT!<^e~tw zapRBdhj}i=<EO$IPYNE`=a(*gN+0E({@Aj}qxpzm{HdFN9v|@v9>PaC(UbQm6+7a` z?NQG7Gt1~1dz4>f3XUijy+t3p=TVAHLowkK_^4#U8Gq~^Wl?Ybb5Zx~JD*VG0eeKq zd#av4yGq2O9(%B!IAZvLPJG`syoTRecs3qU^B%FEKIKRE%8%dIKitcdDg7h8o$lwM z(@FLKG$KVcU`+8R^!c2E=j7q>x_>NxcI4zS_oUo{2k?_}^Pjq(1$F#Udqf@|tMT*o zh%o+8Jz73^uy<sDecDZ<0`6S#Kqo)=F$+&ru#F#X^ekS}trX!q`uHFzSYUUeNA;0@ z3@i40eta67!Ih`YvJ^j~k5m;uM5Lm5akNv~V|b>;DL$E!uiC9N9H#%#1WHj=8gPY= z^=(2LJ+Nm6>W_E!^$d?sLUlL(?dxCZ5?A*RCK-{&2_F9!pJ~WaM@G6=_T6^+G*D}) zY%RaDt<>+c!w>ZHi-#;q*<R#-Mo3N?oNx3zLDx|_PwQM)lE`8H44w8YJ;o%vd18u` z4d3X*{1{W#&AIY3md#9H^BL<^+te1_BgI(Psg@3OYs40@?TkLbhi>i!UE^^r>ehng zn$g{-m=BSI9<C3AZ(~eZeV6a9|GDPVxAN{<e_q7r+A4gL%5{&;PvEZktuC%_f_~~f zmrD%y>@y3N{&pfd-8bJIVDz}}%Vi5?9p;)<_rs3A9LzO-;J1PG+)tckM5`CQ&Nf}Y zqxV|c-~#1cy2e5m(fBdOM)&=<Y`~B1+wOX>WaERK9@?a9=%8Qq7$?Tm=f2OzXSxS) z-$T<@^^5!7TK01->^KX+Tn7gZ{s}rM@9M25jq;&h%D8lNq?(ClLyYND_YJh#fj#aU z=z6eZ<Aa@^ENSEg{c&4jjLvtcAH7cZO*7?+>QsBlJEKnSVXE<wzULI*;g`U(qI7)X zzS&(w`VCP!<HYghXRh1bx5Z=N0iS*s_^-gS`6TiAgp&s9*;U{l2Wwmn5#J!1f6x`a zO{cu`RdcdCTf5w|c+Zcq?j`jds(YrO_L<IV-eQzb6>5l<9^*1@4P|pP5x)BlvIUH< z9L|B!;czRM{&V~`Furo>?cipj=?9170J;{M4d@E?plgw(qsz5db)n1J>z>t`&W=bw zHoNZ{7m&s{ao;skr|fr_I@P}pODFy7__BYtPnZ2FZ~DQ(=H|#|bOoEy6>LVAvsrqG z!DjiwbjG-fE|8yP8~%6SILbEmPlsh&qsP)YA1uCfaBt~2@`1{mesHiEUBS=j3O1uF z*o-b`^Kx{cE7&aAbjBE)FN$n--%xs+9riXm>}_^@Z?jAPdD+}|_BPi>HoNaNz0D4L zn;rHxJHEHsrT@Ha9yxoP-x=BbPVLLyW{17a4ttv&-`nice_l3kID4DxBAe?Xn;rHx zJM3+Cd~dT$|9RQG`7CYbxbZI8+)U)S@h;h{{i)hx`Mkkn*`M`%+0U`g@nwHA(e@W` z*ay)S_Ca)oeGpw?A4Hei2e+dGU11-TFHC2QXL5+Rh`e3II*(U?F9XZ|r-_`?9o`F` z?>S!pH+j4TjBSpy4?N`49|Aw<)1~KA9*=@IdCv9VCw%&|;NOnYe-Es4nf#A^7t6Q% ziF-VUbBN|$2%N7WTN|k_d>4-0tqtTUU|;xle3a=-ES<VPY?wNN&ks<>bjJ8nrl6L8 zD5rjWx7kKNx^!{z&%5Q@MZ{Lmc^-Ug#A){&`Ju~m4ua`}pr<e5jCjr=IQK`K^$`cZ zJ9}P)gP((*M<ULbJYE0?pF93x@RJe$_apw-J?AAj_%rAn1*?yw=g*1eEBq41C;oI} z@=5aXOBj>*!lmyfoi;m6f9kg>hp9*3Qad~fKI}32QrO|r<<BETt2f5ybDEa_TZo(o z>(xg&B4fK=eMg_T->a-Fd7<CQTh>6nLL1RIF-HF-(%(!(|0U9|x-JDvzv@~<w6f&A z*L0E>^ve$8#JCJq(z%{E3oM-*i1Wd!x1Gqiaai@-;5i$?OME(GO?J4lo4~hwycyi( zIep+BpRTe4K7ANG=+jkJc9@;u;HwQRr_(^50_ATvOqn|jQ(uSSE$~cFj7yl8g7&&= zTKxGQ+jr<Mho7Vz$0CRS9E?u_zsaW`CcW9?{b2m?9{lF6XYqx@8PYpEXDfJl#90+_ zXnQET&hy`ZPuoK}?Q-_8Kcyb==@sDZV8(}gzu>E$gS{#CBbToJ8U<_L!A8v=7Vuw3 zoI_yq$=^ksmpw<vjpI@Jn?8Lf>2LdV>~%i%J{PvWlV9%i{gTEnA2UoF+6`Axz{*Bg zzd<!<OsWqn!5XXbC+&9W_(12B2K6IjLD$SKUAE2k=^McK)}=oQ-stfzF#fc9RYy3U zP>0zsKmVGyQ}dVHWf)zZhS3$q<nBmkj7h$H8h=WOw9(;eF!6HdJa7%qd<@gBFgHfM z=c_(q;5YJ|$N2Ppm>VPO`Salu1HUPn8)HE<H%7DPx4<U`elD6Dqcxfvqs{Z%;S&SD zBbpnd%X50*5Cf-=$603ckmroRAqLL6XwHoF(VQ6@Jbxp6V&HG$xsd7H43?i2ws`(l zFfs7A^Zdv7^l6wg<4Moo1)muByBU7Q-vc)N&wKts_{6|J#IqOUzX&$|QO`dHpBVVZ z84|`H1AD&q9gP$1H;TqjSMUtP^V3ye<JWn9J$z!|H?YeXzY%Qw`JUedpBVTHqB%2~ zqd7BLJ--b;G4R_N#-_gmZ2Ct$e;s^c;IAK_Gb6oWe9nyYX3yUOpBVUCxlcF!+rg%P zkLN!HpBVU0bB}ENy<p?-_xuC!iGlw-yPok6f{lN~^N+$O2L7?}IWyA7qd7CwN0cq8 zNTTses(2jX^_NtGy?)Id;`p=R69YfX9DBx}4>o?z^IPE)1HX;Kpz+(m#_#j|0r<qg zAL3rX_#<HBZ}j|4@QH!HnadC3Zvh*BpXZOlCkFnrT(cQ}KiK#$dj4Vf#K3=vL$~pd zfQ^4L;ZI5N+cnYnQ%br1@%$+nu;=T2NcnS0eG&t|folxoH-e3y^L%_cg&6qw^F7AL zpYJh#pXcMtDa63XpAE*xpAC-B&%Hyd@9pogX;J20mCasv?YwK}XY2XWG#mfD=9+8j z>*rl_Eq@ixW=@n6Y)p;MiBg-oQ1h86^6#g2{j}qqC-!AhC-%-rof!MGG?6c}XOw6r z6U_yYD?57N)R?}M&1Qac=5J;undhN!o!|=UwLm|(-zO%LOA7MOB-g;NHf3yCpVxmY z`Sbr~&bp_wyC?6{xR5^FyL!$2d7n6itW^W|tu0u#GwJJ2_sdTF%}FTZe!-h8U+Xb+ z_V?;bk-H1OM+sW``KrvTcORg*5!ShK#J;ooCojL5(mM+p%UpZ8FyC)&<HvdG5)y>9 zV=7F<yPQ1s(KGVq!YQm*<I94^j>0Trl%Cm&tTCyvqjVdSOTn?eCZET~1=H7p6zh8u z+4RW=rmqJa>sx?qI)DLpf@6JqkWHWbVER4<j`iJuTuk2sz6=|M4Ck|;uN-Xpwu57R z&B(>{ec6{`qmX%)KW3k{rcd?6`W7MA5G|PQe@lYO_>g%XVEVXb5Bj*b$kVqRxt?gj zbbOZt!@$go{Anku?kb|$_Y<(}v+=hcta>e&jvta>80gkrH2ZY_<n`&A%IRa{!Y2MI zTJSp3I=0997zes`a`sjGJanaXPa^w#&~=*o?I$F7Q1EVQdKSelH4<CXp{@BGSk^_> z27u}@zi3<VZtAqdr2QMB1=DA;ZA1G1q3@=u{}gm1pneU30iu2h0eL2ZqJrM-Q-8k4 zNr|le{wgo)T}JJ<8vhECwcmZjNr|kwS9w|Q0&3iU+ROFG>X$Ei*$H|VEV(#XnHoQY zTcSH91;L+(f}EUuf|#6ff*7A>#uHCFw}dQrLOK1t9wjHM{UmSxB*x26x=+_wiLu6| zrB8&l{~Cv~ZtV`G;Y+v9MjhBV(gCh$V5>mhg@)^q{j-8pjL{kH0in2iG}7d5hcyO> z;XV%i6Wwb&zUm_ee&fXV+KxXTJ~8l{qI>OTZ$k?lV&LQ$TJohro9DEHiGkCRe^2e| z>VZQHoWAIudI0RNSM{9S@kihj1Akqy`)dse-V(FR)%tL~I(LHW)u#DPT*RK`_3FDh zPBL!h^H;wUem1qCW(PAbon+>vin}TvXv)?NJ@BP(Z!1sc+N*gYKkvK~PydF^(N~x^ z^uX6{4tb~P{L%HPyT1N~kYAv8=z$;Ile#O(z3XJn<1=@5%ot5)YrdShYpmm)qp7>z z&NhNiYF<I+#A!`GmCP_`*V@`1Of!q%<KMd|RWh1-V}CkzIQMQhJ5I-f!<%^2>}KzI zK}QT9+#E(%=E^Vl?la#VVg8~EzV*zvYPZ!qM$KG}=VnwrQT2G$PIqm7Z_N|Q>_ini zulho6Mx&bxOEb)E88vOEZx5z5ht|59k8S7goriBuHH~7$x(`TyuA<S+$a5&N=U_T} zGksApcHr$+)mmVy=BabD&#lX4>*6~F-A7p7<G1I{VHeWZb(~hFi`nfS&7UW3Y%I06 zV&}sd)sCL7)7wN{Mas=BAA9c9W<N8T^H}lHJe;|NTDKnk%Tvb^_R(a<uhg2Rp-;~F z(7Y=$u5^<3!WBt-M^h)7Qf_Xm(G+(}$7J21E2weZXy$Ya-F?+4wQMtPcArYzICjyu z-26+ai@uw6Gc1j!E;{l@n?^I)%pYwsZm}Mv&4=ZyqyO>Lv1B%@#IB=nu+NlX({rc3 zm%S&kImt)M;RIFe)O=&btW4%;s(CcgrCFJBW!4+7K6mPN)0oU7Cyf(nD&8k2Zc<-P z)RUAM$W5L3Sk0HhJaf)VAAN|qz-nr~T)Ly;i8*eBmhb%hHC_uxv|^!%t_3O)>$>8A zQp$J!?<J|W$+Q)3OZkrM&5cgO#4SoJqkMDyR}OzDRj+xmp81B3A~%jbvwPgPiNEJv z@#b@<-X1$}YMrb}w9ff;yxgq6qs`gO%qO1NU9*E3El-M3e58dsi;TC9X(#rkPMsL5 z%rN6+*@>}>Gc}KA8~5Jvqdw-v^rN`gXq#yKX8TTDmvZCw#8}DH*TyP%rjSm(HdYt* ziDKGL^QY_Oy;CRiWAQTEGZj0(y2<xlSK&A)US{tFKSMn=)HC4`h<b|q`X`mlEb9DS zieIMS?^5O#O`kY%@zlNl`;7iRTzo%d+}-o)fm64SkCDmt!-H<#w`8_f*;)UtvHhoB z`Dl~QJ~#fy%AIq5${sxWMv}(p9Lt=SdSm)|sb@Al!^m)RetsyK^RxD`nr*e53Fel+ zZ=m?-L;q3cv3+djwvKy8Q#YP;GuIwvw2mEKId}HU@0d6H@QS&qm(QO&`%m68b33y| zmS-PM&S2R(Y0PD6zI-ekg*&E<rYfJP*ip7qdC8H?o!yQmxNPSc#(!V^Ej3@Bw{Pa7 zwJ+u}*`>MixifNQ?^~7he#MTt<+dNabN}+Dhck12nyq{1_T^2V&&>G_KH;jVSkRc7 z$DF3Qvf4x0-^gWh<=OYsliOwED>bRUIX`_kLw|G?mYty7*L=BKCn-1T&i?7#v~1m) z4tI_nowqwTjr#jt{U2g9?2(=|9dmw4e$n&4`aaT=^Ln-y=y}TN$xW)KnSOfg^#!R< zid(b2Gw-~wc2k#e9-M@8xMo{&+<TSTj%yz6sL_~Ye%!+y7j{n1m94JnXzDEg@efkd zna%R@&diUGq%xy!9zW?EO+WlA8u!8plXK<*N$YYQHKQrVDRL&pwu1AfoiSaB)as_} zSBE}XzVpiWOD;Tf-gtD9^WBE}cfHO$jm!7fY}0JZ+4A#`WFO8pCVLOFHK*9u{?mpH zTq)k6ae}4|`J?1u+BCS?nvXDQ%U@rfx;564KU;EAo;IDVzoq)onlI0MtoBQD%d<0* zy^5J4Q`u?R>Z8-9Rj4&@?mu<xNX7J}%#Hnf$0|~@#>P$^t6F+u>8WFLeo}e0&P^}j z<FcLK|3NAPO0iA3ec|M|od++ezr|g5JbUU`a$OYrPge}9n}!~|aqP#}rJ9l}o8!-& z`eyCUA77uk&e=c>FQfm>m$|#y`SL&TQx}%iK9;SU^PNMN+Le~tp!7N4dBI<ORqiO? zIoDk+YgX2TCp2zZJ~}HqAE@2=!{<&t&t1Trv$gFXYlp@g9-CUT?PY&{O-AVhH+OtN zvs72os-&%!kH;C;TuJV#|3cD_Z{oAs$6obbdljEe+-~aQxJP|o4%bj_uXrGb#yweS zEI;RFYpr@(JyE{%`=KXX{eAh~OeAz~$W2?b>G6!a8>!=dWIA)5m)E{H?_rKXyQFpA zCeV}P$0pZ{e@lxt6w^4KhVEwFndCAb?|*!H(9cnpI$q3`&-)}t*`$Vbpxs4kXdc&g zIzs;#SC(JCKhx2nImFqwdUUSYR+^kmk~5ITFK4hF8GmQxtbYZ&(gWp{d1oS8G-g-V z?8#%<z8g<&(=R1H^~Qa|r`r*yFdL|*|71SS`6-a*0QK9eNt-vj$>q(PeJ$HNZt7fm zYfC4~ig&hrxP9*2Ww+h7w6kSl`$EsTW&#e$PM3dRHQDbqdd6bU$yDr2a{U?jdQKDT zt1XZV^Tmz%rDq{m!?BQMuFgmN1Cts{WXrst%r9A;%+iQFQJFZsF4C2k9)5Gm*Avg% zIT1g$sR^6HgqPS9=QS7PsUIx#oMA4>Hp+&EQYhA|IYh_jnat12O_Dc%5_?*icl9&r z&z5{{%0s1(Oiiqe?Jbrc+f>-rIB&$wY0B)H$#kfBZJDf{)H$IK3fmIb_lwADpTw3z zpU2~d0XxZ9t_odTZv%tv=9bEuMV0l|9iN~2Nb)OPL&VV-fMavP<|-R*on6{d>D0JC zo;yB1bCp%CvrBKTO!mxwEQdDwzUXjzaz*q^#EJdUFu{Hor^kJ{Zj$jl*?!RC##}|w zIf9$$6PqJA_QL?P4lk;lCBJW+^10H7rhdNc5j|s#_k-Q+w~Hzp@}_}}^EaI#e<<m< zc=yfIpUmMK`qlMfqx+luAwQ!=EpwA4FPWWbt*p+?t_bra$6St=?sxUu9XB^AcPnG= zv+0d)|JQ))v*~$no=wF+|KH`KZ!h@<HTev;t#`P8P2R8c`K*@qrMFDV;k(eY)8sz) z?Dexe#=ql773ynMO$u3zc6aX}wyx}4-M^x9CDZuwW#{R$v(hd;2Oe58Jks04l$xJd zGkkCR14F$NO{@t$Vl5r~)wOwVCFEPyxwx-?s8i}DuKd>fR<GzC{_raQA^aruE?eh0 z6Dw;!10{TGoLjoM`|i7$uAqB_i8Lox$aKXceEr<NGS4o3r#rxWs!X-nJ+gLU-_kjq zONQ?5?z~-d>P}YAqT6np#7*eAc@5tKPd@J|U2}FU<`qu91)sRx`doj_VE4fI6r&Rk zp4*nTOsr?A8rCuS5XNp;lWA$`UCYP+J(IC;(V3bBMdpOju1SOQx;20Bo-OYzT}ADa zG}7C)kYmRk{ewMgJ~6pV&&c!o&Uh@s_wvaZd0yYy9k-<MESO&BnT7|nv+Mse3=d}T zSo4YA;nv>!dj}@)E>+#KaPh*Pp5fjJ=QPJ-XQ2t!vi95B`%u)kW?+)D#S;I5l{*fd z1;2%f18%!@*#r%s+DS7P-#0wW?83_?n=l(4o;K;c+V~2GPjb*gkH$gw+WwW=)8J2F zG&yJCD_Cdtm8Mr1rn1%DYww+)w#2NP)-l_8PjAm;$AE-+28Jm*tD^-P&z7ft)=l@s zt(ZJFZyf(ZCW8KDdN(h=w$**S!Yra;;7z=L;J(}Xv`@GD{X39#8=u_0B;P+3)3?l* zW211>9{wyKN}tM_zE6T<eFMnF^xf~vuu-__2!Bjp25kC%7aZ%`gj`RwU~Sw<f??p2 z2L717a-XNWs{O=R-)`h$_Wgw~!$x6A7k^Bj^q76Gfn$BoBI{X;1;ae|%d=1RO3$Z> z(YtwRy)zc;`zErU<yi3g^gTkJKD9$_mOkFIG5gX@;8@>bWU~oqIITxk(&@vJ0|2v+ z*QSEL72sIkOP<HZ1+T-+4;Sk@M6UTy_nOK>fBGS|vA$zIkBtk~UbQRI_bbw2_UZjG z)AtlO)^|L=Txjnf<fs2iJ+kT3y{+l{FW^|;n9pP5g4y?1NU?phkWHWZ&-A?kj`f{H z&Jrzn9qHFei1n!-*AeB1I-iIBk_K?3FRgmJh!(t#5}p?4>64#EiPCp5Q9S9(v5oa@ zMlNDs$zorIjY4jSKO2eCS5Gv3z2I2iK4jT%!R+fI!DD6R)Nk!X>ARF@`eaY6?+|h^ zeV_Mb*eEPjyA}|ouYqX#{tz7NQ@u4r3*M#@?Oz@%Yw1S*n7+$=p8QuZUiAG*QTqzU z%hJ(EUt^^21URy<M0pwu7R<haalZ5<1lg$eUO^NOTl8H<p1v;RW}*eJuW+8~n>Rq% zNtC`>MANqf9NYIKau3mh>03yG$IAMU>`>oH-)y4kQ`t!06s5NjEqEPMI!W+YSszmS z)ko5&@v1zv_hGiNK8>jkq6O3U5DAgKR<-qMqV&!4dD8b)aI9|+a*k-h^!*DGB7L{0 z4QAhbpC^6KgJXSahw?3$zUN4Y^^GBKB+5Sh9HBhv`w`nnU#Z4RE75}KdzFMp->vJB zt$#JXygoM%Wvp+6ydwHa?HEV4!iQ`4WBRTKo4#KG$NEN*n~4^@O{I%Si0u3D)5xZ8 zfzPA8r5^`J`rK1-*=WJ^4UiD&Yg2z5B7T~9gU^#by&D|slP+;Bn7%KN5b67f{JfDU zea%GWN#DO?8|!-(xs_<a>nQyi2_7r!BYXI>ktluU3+ekG$dNubC-QvKESSC*NQm?; z%Oab;7N3Vc_g!nOPkBZ3O)V+V_jIIB#{ktOeRJ5x`qm*A(`UydvK4OAm^1sdKbgLd zf@6L1OEG=zz6=|M+xGFt^xX_LeV+x#`VJ$jtOfB1Q$NKYk0rM^^T+hHf=yq+@nD*4 zll>M<U%~O9{aFaRiJvCkN;G{1$Af9>$-}Q9n7)GJ!LJU$(0(C(8n33W;QDmhCi1$7 z7EIsEBzUZ>UzKfUpI!T7N7)6WNB*031bH*jg4f~3Wu)(R+4K@o_E}#^-*w25zRU=6 z2hoD*lV2l!cSznzl)l@2p7iOw5bHaDtg&Um^xa89tWSR5NR&R+uRQ7d9NS3Wbfp*5 zw}JFXUx(Ug`m8SL`(x5$ed@Cu(Sp}e_7n-RzC*~?-sL_|`u+wS>r<V@^!;aFhK<5U z<!94(7g%*kU%~mq&0F6<o&|4HS;6_^&MF9Mv;5aZ^!ldNf@AxRAs5j%P2<Yz2Bq%o z;g9KC;q$O>+Cp%oue=(09npf<F-?Ar_3cGg-Lg-*l_!1D9qZeS+(EQp`ZV8lr0-+e zH%5ulw~A=`3a&TGUm~xCXu<24R&c$sybprfA$`K8@85tU`(`vEHxVtEzC9#(tgPjS z`7=P2zI%wK?|*`0eO<`nSulMsk`U?pwN_-)r>*HLxIUe6fIRueg6TU>LadMeNY|4l z`v!?#U*<jF$i9jZ<V{2iUPs36S$z6khX5yu(l<mjeK&z)ec~wJg6V4}!DD509^{YO zB7MU|({~>@(sz!0v7BhZ^qCDlz3WN9PNMXwO{VWF;8@>&<YM}^`!Z}4x)<<AZI-_K ziKg%0gCl*F4ai+Y3ufOlBzUZ>71jK){bQZatKhA%zXiwoHX?5&S}=XGCDOMNta%cg zeGmFP={pIQK3!82&aL53VSkW6y^3`4d^ndeP*%tzZ~6@WMD_Mi$Bg-;eVX{|K998N z?*d2qE*L|uBU-S$^GKLtiF}%dU#4F+E(aar>zc@itDc6}h42~T5~6HU8w$Pw{2=-= zasOJqQ1e1a|0VqfP<~e^!3mWKO#b3LwL1jl^Me3D#s}j8dFHs}@--$xAYbQ@5Rl`3 zlRg~_LO`w$0s#5a0=c0;j{8^q#)AAS3glS@^6UaRTOj+fo}{9GenI{<1#(k?e0_nu zpg_K%KyEIO7Zu1Y1+vC#2-uek0s#5u0=cz7zO_JZE0C8J$n6F4?FDj2fqZ9y9PdA} zPuDLYAa?};fV`qW?kSL0707)Bvd*6&pl<-d#^eCwUvdcK>wFdh@=y=}$ioHlNP(>5 zc?j^=1p$EkV1c~8K-O_D1o;09;c}m#^*nTJ3S+|Wtky@$FC+inh@SyJ<Yj$BTMquc zD8B;yXI`!)Un;-nWqqT||Fj*?DiGNJ)8;>Y^UMC9)_s72WcL5`M-tJ=aMS%>&XUjm zulZ?`kl3I8=U(h0pW{J#pO?k2NB%1>`-4;3>@)ez{QMHNSwa4|l*61IGbDpcu1~V< zU{~^CFYBA*%gDDeBYq>Y?jsbMkgq`gN+O2x|DizsUtVs8KZ{;hpDFYpbG&iS=UhV4 z{wcKCg*NiD<ePn3Ut}J#?V~wljz3e(pYxG9{!IC_FYo;^<@XEZ=e(@-KsY{4IU32- zRjTuxg6v&@Oq*R8LB0X`174PW&B(ToOWz`7T~{f{o)+XUC8Cp;Aph$~&LLZWihncm zD?Yy+xt05Ovq$Zv?NhD)H2&I<X@d(IFUyc`^RjRMRP)bf@;P2j{fy6-KRI4aE$F|g ze^F5Wzk6BzO<SkF5y^M5i@np!vTr%^+(^C)d9jxp$nQedeXR>gf0upIi^^X?{x&bK zL+(M=b8Qzq|1S&V7rd<Ytb#w5pFizfFSn52$9)oG)&;ePu|3VkyZ6_$U-S7UKj3Ap z*D?ryyO%d14<TEB4j~UCAN2Xlkw=hUkL3HgX3BWk>(9K)%j&;%<Y&FS75PErrFne& zpn7Gh;H|K{pUk5-VD#&^TL<00%QpEEFwqMnkq*5h5bKDtP@n(aT9ikz3G?Eg(4!a8 z*2W7jz=^VwchvILM=z#D87f!!Hd=o6_$z4n>ErL6Md=g0Y$lKQy0zIm<9E=al4|7m zi)VMA_O@9>U8LC*7B5;{(0*Rr_siZy>u%()k%5=<Urvj(Vt~Eeai)b^P?Pu8S-zG@ zvc_N6I(^0mTkd7Jx4Y*|tG$eK@~b}Wy{!Cf_cE4W=OjNT|DCn`yyP9D{ItBclcFp< zb2e>^R;xMP5w;jdM9QzB$Qy0>gn}1N@-rv%5#~D|<(E)>(c5QHCSzveOq40J_+i4A zES~90PI4TP;)$|->G5~WB7@1Br0Y)WY3O+`e&uN@wn!5NqPK7&I_=HVbb7b9_K%DV z^xibs)89Qf?^fOoW9~0oI!15vexiS*uk*ekX5H#7*zxn;q{^>zg4d_=N%nqOeyUz7 z%TLLFlPt>9>sOtF&g6Ohy}gC@<-b}MmBU-O+`UhxmJTMbBD*(i?_1ls;=Z+c%SE;J zcHiH-l=)=}%+gSZ-#C-1{<WP=*?Dv4GT+(YVDC!abB+s9??gT$YXYB*A5_=!T3gf# z*LpR3UgCl{FFB~%3uDQ9Wl_;2yI8UnnRr*G?4+6DZ89zcc)e7f=wY!RE!NgMTwtSn zuPooLXc&8kCNul2SlPXnOBF8WxxUl=RgI7DPtqj+id}bd&l2X!i7{o%tnAE)bCzY@ z`ar7pXDI8|2a+wdQN75)=K3f-#@IaFY*yX>$o4wE?gz_w1b-3RN+Or34p)QC9&xBE z@PU=8SJ#4yRxdc%ToI+mxYVah=R}yg+}bmZaLU25P4`vUbUv4r4r80c^~glGKFuuf zWkj=w^1&YRZnH6<YgFUJ7(cl6X>#PF{~fA#K9RazdMg<HZrz$TFl8NX2RC_62Y7)` zUk+YEw7Sr{*la*on7<ocVXkC!h55VD73@b>n9I8>(ivm?SuLCKll&GiK66-OlXiu4 z#+X~%Mt-gbznAS9d>Cwq{T5?<c!9=-Y^d;S*l293-^>r>g?5n_bYf57#5lulCEKK@ zVE?kYv)!{u(_c{5tr;VG3Ty~vrPs>Fn0nnBEk8@W^o3hDMZU!kZrv3578@Lv&lpz@ z&j&NEf(?`j{-I2mQ=2luX3BKgSZa#O#uyviIw-0a8{9f5suvp^R=wEZu*#v&;RRro zF`s~gJ(LgjP(Ij0`OuG)54JT&dSc8z?$$eLBOlw`dME8*`uCk0!?TH(`t%MkK5?Ao zU~F)>3yckp-weLN<D0=P5ufJ{@4S#S+UkCjw{}r?Xcu*dc2VC-^DXs-wsb}9?Ln96 ziE$~9sx<zaiL}eDiP8eb=MLw<*iol8(hjvNVA@<KJ86@SCyw6=ZYEk?;9xU)gU#p- zeL<OEv;1piV~m|{-4xlzao??jBHOAxR=wEyF4=hv5j!16I<PaWn}VGIFCx$CLT|7W zy}?fO20PIe{EYvD&FXK{6XOgf={O+&V6$68B@3<s%jejl@#8oe!;Bw?o59%cu-dEg zrXL*ap?t8J^1)`xhp|ohU?=SgdSYD4{LZqcfmi{S&D5_k;P5PPoyW3YJhKNJY@ke^ z@)Rf&?4(S;r5Cg%=qcrpZa%?RZtV^Eq}t<VFvlF1-U6mi9acNk-)2vNPl7$okv)_T z{-J!ZjlK?gVvKEW-468^wz+jXyloDnTedkY+i0)DvQ1@v!M3^eKh#GR3?cQM`iQ=B zSpKH(9F{GNF^6UU6-2X*@}VCoAN*D@-h$sKAN<xF>4`Dt^stTv_P8}L<dYh(`g%E$ zeOBva=vk%4mBT&Yc^>zHvD>8&fZIJD0(XFQ{6SypPNKC1y`e2#QCrX(#w2>fzKq_` z7W9TTjzl_RT#Bi(znO^7-MSPlVA|-g+Q^u6xD|W@(QIpuY@<x@Gi8EplnM5<MP*}* z4eyl=>PKvNuYA}{#0H0D4}Isb>=Dmw00;jxM>bF<*g%<JgW6zaV~h=#$%Y0ZHe41R zHyoZtI@fOwXTglUpocQShQ`PS$^;uI6KtR@p=^w?;qu6a%Oe{cmJM}qlr9@&tF`6l zXhUOULt|uv!`=@L{{sE+zQ~66MK(C>{owE~&<|J0h8AK4hZotPvB#KnxD|Z8$8F$6 zMC%L6gz-R`uwPInj0ehu@z5TXjd2E*s#jx#WA*#(x}^#%+c=i!oa;E+Cm53sH-j06 z4$J;{jDdp<ln-`NKG;e5aNMALuv6`~HpaMwQ>5&~-oks*`x;17z=xr10lpHSy8GSw zRLWu6r?y?GHp;j7`AX@RZ?MOucYwLpbm_~%w}N&2lrEJqJHd-(gKVSxI<trJq3x6p z?d^)n#u%Gt%m4UW$HUpOXM~8~99{=*2FvF4L~L{E8^GA$%JzY&*QIX+-{tWp@I4V8 z0;?@m#9^Yfh5Ca1)ED}Z`a)YaMEyt|p<UDw`f+olGscXuIX33;qr*A4wAtZSa2;4} zr%f7T4y#`Z#{VbH&y)}Tr+l!J^6QO5`Cuph3GIz>hC`lgqfYG$4$lJPBZsr#8nA4e zPZZDm1`hR7CfG(9XIn*5CfL&ym5nhr%#Cbt*xTT+w_)zjVng-W+c3|@A=f1HWRGm5 z?E!Ng;xJ=V&lVhR2IGf$vaN;47!LlSeDDutf`6L5f9P|S3I54NWn+wgu8M5CDzYtL zY;)M#<}mfhwyS;?+cbvG#<o(1h3rvV=<oTetDeX?J@|pV;0N+PBi#zx+E|J)I<Jm& zUj6gXi4U)lo<1UD;u;;#WOF@Obqx?1bJxhvIU@b&u>47MWrx7cKAn9_JeNKKUIx~& zWj674pRT$%7CAlIkGmp%kLN3W718`anQ;8Urr<Z~{+xWIKz$DxUWaUDV~h{4Rl8b< z?AO<-?P?d}`C7G+v8g_C>8)VKPe{MQr?-*LzUMe<FXxMZrPt~O2Ro@F++(75Qv*B& zbcJIPy1FdAgFMp{V{B`Z{j!sOYLflxi%Y?>9~%`Nrx{$Z-z}E@3L<5~u^nEp6PrW5 zF|JCbu2a3Uh}7#aK9GN|lMVBUs@rUa7j(jN^;RdmP_Nox{20T#UOIb-wD)?o>t-Uh zyL648C18!!dg2PA>7mTS@LYhm+3-NbiE$~eP`kDe84n9o?^a?BSoJ<c#0HnX9bE6z zhrzVVaTv?;r{nAdGv*zB65JKxdpzDn`bd=isVIFTSo_PJ#7z<BktkiZT6@94&)6Nt z7`BEnhE3O-AD)cH7<L3-?T&QDxRiCx<)0xU{`sK%gYELq2jw5_qxi?AuLIZnbbKKH zxb*d4`pe-B;PwdPJC{zo)!!df+ixY(cY!|`rOOU$J2<o*n?l>MBeb2mL)$k*ZKuA_ zcKjT4#<+~zPqn>+NZW5v+m{ooJ?;Y6fi(`Bh?n_v+M(l}<I|2*v&R~D90PAq8?~=U zueAjn+Cm+nEnU%Z552)=^oC;vdP5rv{1f!kmK)WU9Fex%sJ65cX^X>cVC;98{?T}L zST?GR*$EDIQa;#8`EY!ue6WY|!A|+k^u)Ln7s<9}Vg(zGtLusQ)up$9XL>AK>cM6| zes&z$pY>Sw&-WbJe*@9#ZI0|mZ+QcG3g~sms99jz^(9M3Z@4}|uj9xD^oHw`xGgcp z=L^*q{H^<eg=(YPQsvW|!L%!+vmZGu{TF+TE$WwrYOmTzyBtSt<k;@8+K9g#NA;@? zYcDwT7kWc`(d*hGoy5>y^oI7L*Kzvbpf|L)E7Bk13NFjFFDQ*RE>e5f5$nLRe?5`& zl*1dqjbQmlZJFoOH-c%G<7@)ccaFocQ^ydOz8Q@D4sQY99^ruq-%p<T0Xu>pup^Ay z4bixz?v)LcQK0Te4O3q@M^j%I&s*V{{uq<oGL1i_MEu}zHJI3vW~)%c@7IR$PrTNt z<Ew6B;Nz=_);e|k`S6K>-^BZTrhfrg_9!%ads@K6z|S#6jgN0L#&7fdcKF1=@8I`n z<1YsrzsvJ`;1dJCkFjU`A<r3sLkt}HD6C;aABA;HH+cR=_{6}ckHR{p^o#SuRyf4K z+0O1~_3i|lolkoHF8IX2-yN-8x+hw@^eNAO8a^@b_tM3te;?TNk9z*I@QH!He|+sy zed}avm!_Wg{Dbg`fq#g@py_`RZ2FIQ{!#eEz(2<C(Z)Xx_WX2d!cS*-FPmumbOpoG z^V3ye<JWn9J$z!|H$-cfHb!fg&iDK#_{6|pz#-1`H-k-otLL}DCkB3dw03Dnw03Ea z=l8)U2L1rMlIb4;oBs8lzX3im@Hg^1tnoL2jlbRVcfuzI{*zqZ7=IVo_)mNOUiieo z-^cHd#vcV6|Dfj|f=>+m7dbo{|1jA2$2|Wyd}82_@f)1+Pl7$agnrccFR4nR@k^>X zm3V$h4cPefo#W4fPYnDlzf~E3KG^szo}YtH4E$D3$Hs318{hX=NgsS-;1BToj`4@U z#;0GLJ)7VY1AjB84C8MB8=ro0eEOt>82G#SUBmc$z{aOv9G^ZZAqM`l9A=HbA8dT} z5x9i@Q4D<g=)J~&32c1zk@)nFV&Kz9mwEn_6xj2pR3-c=^pB$Pr_e`XUDZ0U@n?B{ z7CtfX>7z!|-vl;(&huO069d03m3p7?+rh@~@%%pc#K0fmQq}lFVB>G_{EhI5fxn4U zqVYF_jla|LpM*~g{9W8q8h<y~_)mNOUiieo-^X)T<Bx)k|GeiPgij3oLtKg*|3$Fz zk9+<Yd}83A<Qb#qm!`m;Us{*&OY1qU6OCWmz-6cL8^OkJ_WTz3#K6z-OwaiA%Ut94 zczz#zV&LQddB(^8^NhdA^YL*hG4QwWT+8@d!N%X?`A@+o2L97rHW(j2&o}<Fp1&VH zG4K!Y49fV=gN=`GHU3KvCo%9};&RUTN5ICH&&9{zipHOs;#rF4Pb~#|{?zJ(KedKy zC1T*yFHOd$Uz&`c_5AtpiGkn5^9tiH02@E&`K|DYf#1fZwej1*#vkzfA^60=AK})? z`0K#N-|YEY;1dIXEBCg>-wrnZ9?yRYJ~8m0=91X>d%?y(;Q7zPCkFmO?&FMq2yFbL zo_`EJG4PLbiD>*Wu;-W6B>Xb`t!Vr*e7?~0%NoGOZ}EKmS|;Bbr<Ln-!);*4=N(bK z#(MhNd+{pK33h8m&vmOvv-I9streZdm#Oi!_s-`7=<VNM|GV}7^3bu0lGeLU9=_-A zKKpX*;&+afm*q};_s<*eI?4JW)3lN_<tAHCK=*YOL<_q2iDmBp^5l|V?0nJgO<?~X z^opU0=9zUYvh8)@;&U{|y4*X}lhERqj}zKIeHrFos&$yv&lXBNn8lXklZB}q+gx8) zu~oXF#=;#$jdzU&g+)Y-6APwq840mI_QRl0Wli6&gJXT|$fg^ZGJWg7kv>O}J+d$3 z^Ca&g#`^9=HXXo#e+L}vQ(4nj?(-x+NA&wQD0yDSejbA9_$DcafjYjpxxZwe^e9i; zL&R9$9%PO`Ay{6)90G36$^RKx<2uBT+E=<B`4~~<XAo7dY|yuix?uBR>Hy#Ylh|6l zQIdlp{g-?Wfl3CU+IpF9fL^fHAX(_;GGvVt`^K;Yxm@e^x&!sf_znK}SfS%i^d^7d z!KN^4g0D7QvG}l(7^VGC&s*eU%n4X_Te|wzFwi}h@O|oVHHpOV?1FJO(Q_EbZ-7q> z{6^eleLM^7&v$zE==k&D69c~~dJfa<IW2IAfs@14PABeNyRv)m^z+~ZYtYVZYPzOL zr@^y24_0rb-tqHbD-$$M|KV7AZ%1Y{b>q>yPIgqB*q2JPj$g@%vD(a!PSy^d*q2V* z+Of$xd&%mk|M%khch&CDIz^+Y=8SC3m5)6B%AZJ{^V1i~&)@#L`{y2bbbGeE+Od>I zJ40Yyq|y4-tmw95Xy^CpQYEA5nr*BK_=l`sG@51AskX+pOtK1<a*`Snxp|h>Yf{a| zuicrw&{?8Aqe#&DQT6Z2mgm{ax^{!Imo+h89ZR#W-Rp-&)1zsvm9~Y|rd%GYz5VXD zvgKcVeC~my6@!nDW?ns+cB|eEZqL^J!J#j1FSeo@4~yLThe?~M|0HdlQuAolwwYgA zwY~bWs-5R=b*)Z)?8l?&WM!`Gj352C(W)OG9IdMTZpHT67k>2Dqg8DmYJ2~i-#j&T z;sdFllt1BD=5*^qoxvw3gEvpUvX?$d-}vuFGpn}$?(W*1pWi;Yw`6-Zv;32+_xpsr znylfdv}-=3v}6_FB-Pp}-gy6N?cwb7V<*#lv+sO;X?kydZnD;E{U2t_+Sb2yZ>qj} zTU%M%WwnpK`R!9LvJUBy(Cd#C@AZnEb5=7-4tGpr<ZZ9qQL*!jjjDl_?$V5enZl!) z)5@lA{F_m?lBTvr1_?<8YgQhv|4O!|=82ixj#W(0<!0PJ{q-NDSdq(l_Sa>>vCMg= z&hMig4{pnZHXM%Hka9L|I?YBmT2Hgk#<bJTieSas@ZWqJ*cNYtQnlvTC94@XTWYqw z)t{<-t1opfp00Z9p452*$5&5TeE}<(9h9H4_dGMeioGwgBIPTR&)Ed`qH`W6?QKfd z&eK|z|4TW!%Ix&@GqQDK)2HA3<9|r8zt1_*@i=3*tYYVE?X_b+dATa{mCVOZjHcQe z-ddSDzwM%qX|J8AO=Zj8{Ew%eZF}P*GwI<ywL6lv4e{e+&0{)lB=W*K+pA5VRuNp- zQBMCp9QwC%ynhSJo<;x09>Yif$M)~ROX~kNH??Z(J(UYDd;RY?YNcNJvlPcJ{&F16 zPUE=v!9$l;ZOhis>sPdWq3shtJyMlvd;H<dTkWYv&L=;qP1Qb{oko8=-!`r7@@T|P zcC1BbM;ZIv{tEi=H$$I{AAPeIW*b=z^YU!&pEPz4*Z+F9Y$ivAnjQYQa5l$;uY_Yl zU*7)a&rXHs4vpJ6uFUu`qvo;Vd)2{o{deBFGj;x3A5B%`vjc67BNvTikY={kj9fR; z2&#RnBULl<(UDx+b)dSD2S)lxtp{H`^7zQ6wtv;OJv)75_ge$0OW*n!dtzT|*2p*5 z!`_qFHRl#Po-!_9t^dxACvq9e{7G(lc4~IPZ%zI3RPBTFuBdsec3bVva(703^Dj>Q zUG|>C_ohxIE7jKi*H@ZSAFe&Lx{-KM?RQxf_L|y5uUwRxSNq+8BM!}WsaH6BnZuXX z9vbM+exvrg*}BykxNpC5ed^t+>*!nQ#yPjV!3wF#`lzqWP5tEPw@+=(UXU%T{hQkV z+I*<?(D5UwRQ>9*9dELlW9`o4-(%{Dd*1x}RF%rV)|9%W{wuWel2>8DNWDrvxf$dt z<SOJE<QkauB|Bi&mp@*yo#V}x?Df)6@x<&`Dt0uxb8Y#~Ik(Wiuh#z8axtD?{;~4M z-+u7aJ>t#zY4Ki*_x1!IoLhfo+l-pu%1yh!WH7nvNM&2w&g)2jujE2^^nLXwsbe); zbkxq4X5TTInRC2@J*p#p;@_rE>3CGWt?TQ9t}iN{sIeoNKZ22;Ze|tJ-zuH+%AtA9 zHTCD8S5dj6twuJEvchoLPNi3FmEO~BvlJbdF8N?v9c!lUI`8qBk5z9w#<6%_dE0fg z+pYHg=3lbcURJw<<Lb9h?QQ#J+xL_8Al(slzmBMh+<Y`TqW-PlJJRLh2)eK_e?OV{ zyeQk8T~}h)w@&ST$M$*UGr2-z4b!)=>bP2nRR^=vYIn5#ySD#^UHgJf+nU{#theb! zv#E0D>{pykWuvmmU%xG^$vd{BZk+Tyhgp+72jV_J_Y@(-Yuo*QA-y?TH;((M5Lh=3 zS2TpR{NlWkN!Fo@{l|S(2v50n=;r6ILpM;#Qhp2CXJ?jF&cAiG<HkN`QM$0sV4TiE zf<@CO;@3y~`1!+jw{Bfi-nw;hJ#ky&a{FAl`FZ8)LrYU>*8Ri8p?K*zmwP51asG>L z&Ar@&Yx1$S9cv}d%CjN1eZckWe7EH2P-Gix?XezU>!;J7Dfw(z5AgoVwk4IU2Fc=s z%a>GkEvf8jsq9-)Ik2R1Xi4SBlFD^UD%ZEp&fZ+v+ELlI$T7)UHoM{G%B|^jvvax1 z)|T0+TPxdGuW?CbtE$tzw}o8{By8P~{&dM_rhK+^<J8ZUJv8m}nMd@TCT?@mAItOF z6z3;x?uhb#p=<ahbJ_F`-^OkIt!qa5SM{%S>n_EM>}Z06zV5-Ef#mMLv%6<?=RIpy zbgo_7&%6n%R-cJGv}Vn~nRtUy-I|YK0-bj=Lyw+7bgt?jV4jA_v>MY{%G5!<laPmd zSFgF>w@&<t8`a&@lNc~LEmn9&Q-jVkGMQQ<sePz>xO?>^W;!1gX~kNWc<MAQE7#mN zI5PY||KO@M%zW|j30&?}P23~JlucN%daj_R=!skVaR1$RCqwb(H4`n)$ShF9HkXwK zZESU<YstWUYx|Vn%7h*ha9Vn8z7G*68~xVEWY}vkO`!5NW*tEn=4-a9iCD|raP!0o zG_mB`<b-i0OWeLNxt`NG+N+uLWL5v&_YEgQe*z6*(k|IE0cTlnP&EllbFxg{CCXmd zvs(V+;Ib@#P)6PBc_OuOba6x`V41ykRcC(>zbrX?PlDYtjsN6dd^9(oo`LFFuEP9e z6aFes;S!>-J)571cR3tg{ho=ZIRFdm)%Bc(QV*177&vEyKRM#fK3#bg#4cj2PqNZ2 zn2wK;U>G=OAAc4QrB6OEeVf6tz5(Q7`abW=uu+&Z#vjusKbXF!!Lhz|$i?(&uE5B? zto&^H^nBIy9R|nxHX;|(_uqXPHVRo?PnbUOy}q<`$NIJ)7txp2ivqEIdyq|ErO%^W z`dV<TZzpmwee--7HVWAz{4sr1V6(3q9P8VSTuk3`Uxtms+y?%bKK*uK`Zj@Med?cL z`abK+uu+)X#UImG4K{s$4371UA{W#5lrO_ZVeU@;n7)}{)Av8XvAzSy#q_=4%dk<H zdx$@#PuKlkUx~(ItWUgVq6P5?CE9O2mOM{w)L78|!F$p{pZ4=eUs`ny5G|O#OG$|J z?Lt=F(pTs6Xjh5mB#rfLL>?hpFnza@5b3*WJ@QLL>Eqq)VBat});ES+#D68LeHk_i z^Sk(C{;LP8F4^}a+elxD($$w1yiFxLNbp!$^LJ8AK9qgt3+ek)<XGR+$l_TreS1lW z^j)nw&AtYoCw<=o$NKgot4}PLzP}|Q)^`-y^j+rj&^JZb_p!di$VKd%B3+TbYZ{T; ziE6K~@}%!dwz0nB$n``EUdI$G<I}HM4={aKfKA_B;7Fg|<x6cRS}=VdCBb85UGqG} zW&vcMwx(|bIM%lZ8M{L;eV-&H(s%7iWb>cyf=%D=gJXT_$9+T#rtf!2i1alzQLK$L z*_ZWs*fHhX;7DKT2x0?i7EIq?k`U>;ZWFv+q)DG0Yo+fWkRyFl<-20`eV_D5-v?$< z%<P-*^UznSV{4?ZOnvqu(Sp}edJYMZz6I+kwt+O+$M**=Px^!-ebeNNtwal^PuCHV zz7L+HSUqXdhcAOZ*%Rw~7I}bZ!Srda-$>t$b;t{d(#N+RLEk!Xq)&75rk9gu!St;q zA=cLs*(bfqQ+t1#ZKQAdX5?K&3#RXJ5+Z%g*paR$P4@B4M$k73j`Wqwf7^)`Oy4(1 zi1aOlqxaOEzGj~%`;LHPefyD%^~c})GHetUJsIg+M1tx<-&A6Joj60ji|jD0cMi{r z_da;C&j;z7@}fy>y>2%*c2v*e-CXv`7Wr?9=gB@Be<UfK+r*zb2a`WmSHb%)=Q7Tw z-dKbue#v-x{Rr<TG$VhAIEyHos)#!7>KyFD<xj)=Gn3d_y-|{bA^n&1{g+@bjZ-^A zK-RG%1mx-<0FZTE6auowL<q>bE(rlS?kAPMIAj8l>kDL^mqQ@GAqW6uofktuZVUnd z`HBKr{W-&@ZKu;EhX6l$TIy4fwQq)itmAYD$n%2$K-Sm{0a;@+1Y{kjLO@;+1OT#* z6Cofs2LXV*s6cK(HXoHT&?JWd|0V?Oe+tT%90K{;uR=i1Ay}Jd(fJzt?MCo}qsPmd z!@dmsxq|%PkMc9%zbMH6Ur~NJyNz_Xkmygp*Nf86{+<qP^7&m+KKC{0&v@An-t?1E zK1I_1z93)sT?*3A|MX81(FVW17jZ%PjQ5gx1^FL|@)`dnLk0PpqkQ&<lCKuz|D~6k z(a-)-^4)^`qxtfbX<i<H&;H}C!(38g=oB3vW4W_HzPCVL=j9RfvHwjmd%gdr{Ep98 z`|HX7^Mdk+z5EpUjJ+v8%+D`1d%eC=+sCWnH!!4ZpQu5;4B5t)^4Wh&b=~hm(!SD% z3uGH#_3+uhOAi#}e?MQIsxjz7qHij7x}f&4zfWE0<$cIm<U76W?VtK!BB!;+!94P} z6y*Pl0{Pz-$j^IO`Z-=qE$H8}bAA4c<a7Ke!v{%7?A5#CE@({wd{_1{FMIpSynQK+ zkL$_*a+06c8U`F+%KoT;zpp^H{c{(5jz48D6y(31FS|AJTvB4+v^fR&&0gM)KJaO4 zGJMMCt38Xz-|6L~J@&%iN;lVbk;kC^f!o^TSzGjkZo(fH3Rg`y<F5<146N?$%(>qm z@*fYn2b06AooR)?PlVqbPA_c_4JRso+D{P$D&hylOZlZDYCy4{C!*5+`DgMhb}>Jk zL`6^ct$Vy5l`eR;Tu?s##le1?hzgHCE#}#3LDBI0Ly>ahkD&_+#q~wMTNJIbXoEwo z#Y_8&ixv&O8vhw2s@MCeO+S$o7`>Lq%cr@OG|^6<a-JVO^lMl$&-|pnoVeN-v+Tl1 zuZHO2<cF1|{IJ54>HB*51>%n3?xCUH;U&Ypy|;}F-?wsvhwdpqXZk7<{r;ti$XDkL zDQB{Neu-O19R(xLToV7LvyxU7l!`1f*CY*-WAw{RvfB<n(8*YB8(xFSBM&4>#+w(~ z)W4+vrop@W2YWjUe!7W{1E>976XoUqNTZ#BIqnDe!KQQNKyUYOXZK1?^RL9U&OiCN zYe%}1tVrV|Kj}oQ#odD|dj}SG4-Bm6UU_d`^YVYcv6jlTl`A^w%KLgdhxiSxfAH?k zl~z8|T(FPEubSuWfpMLA8CGMYb9@(cPFTsIZm@S??YtHJBdfdD-fN@CFWeCg#qokg zw2s%B>|(_&O7e;n&)YrYvUwR+(D^U_x2DL>c!#wTQTy|Me~K~+e{{-Uf}rR^CfYmQ zFM_A<?F{(#{?+WO-K&Q>SFi0&PI)%ude;s0^D`M@-bmE0tHjQ=-K&y)n5H7n`$Vs( zk+G^d|Cg=U1BIE%F=KrH@}=$6g_mNVpPuW=+nIdo<se<haP2kqBDP$oyL+|wvn?T# zcO}<?F3jSurN<avneGM9;i7Sn=UCZ_sBDZWJ8gop?so@@xo3!`v!HBdg0fegMZMD} zD0}r;lr5j2?6qf6cE$u{uRDvf6%&;Gz*&?%XM(aHJd3iG6O_I2EXtlcLD_|8DqF^# zp2~79p5p$qO5>CJDqVgC%%y3S#<1>HYJGY=nDOb#a$W7p+xS7(Vyl-jVQj-|vGiuj z7(d3?bDrwzAY#LLW)Jr%=gH3HMDBB3dMkLI$6V{{e!+3Nz+AgKPBpmMr}u!{JnjRx zgD+&ueUIjd3HDHTu$lUnn9W_$95Lw1SvtCw8Xk!B#2DYYbtx#P{ok!)f&X+*?J(`o z^P}_CcG-4u#6fpRr|ph^D;&y%blUII=^s7EaCNEvR<PQr^kqJM2rN6y|KJZ%hYQpl z+D`e<UzEAYI3rQn7;~I)YhYx^S2X?LTdZtFlpbUH-K{^doqTL{>rzNJesEa#Ntc2( z26hr}_V`IK?Q)z=;5$8D0lv#~c7a#<blN2UIz79=pYiGS;D^BSl{jDWoIT*je7eSn z?6Y=(gRijZ!`8+p8D@s5JIpIYePPU?H;kF5BAqd2%v_-MR{3c4BHwEI89%|E7*{Zy zR90!{=W{~YnkYTS^y7spiw-^0a#%J<HXFe0W&?R){gT**7^AaBV_WsWcWY_Xff@5b zCwal2<b}0Q>LX48c57yABp+KY(y?L*ahAvP!CA1{qOsBB({BJ@@6$Jfb3UE1qp{@p zTfiMYy$8%#a_L*ajIE0_P8x}Qo-+g<@Ep}O;?o}luk(D>i|q8M-VISY<1qMv_JsMQ z&=tlHWy1KuzK_yo7qBUerR|ZP7~_ApPDX}&Me9fKMW&}BN{?|Brv&xgE@BN>epZ=g zuzb6l*y7VSfO8&ue>%<{(mQ<mMlk+#=}&>#H=WKw@I5~LY4EU5*EqqSj=vX-uiV-g zE5MsP2Y;mSkK?E;K5;sq0OJS8mmcJx=gBDj_sBD!(9TA+Pl2{AH%uFX&#^oBoccl^ zVPEK@eUvwyF}^HWCnH@-{xu$Fz-<w32jla!`k@CbpWjc!KMpSkf6C(l@RMNrB3%XE z<<q|j#%9NtPq5i>s=?Ul(&h7Ke0mLdzfXSw{MSBRemmsTUjqM~Pp=1m53GFwKc$X% z&N1*&&rw~+efpc=G0#`M$j%<><!OAPhxBv_g7=$zbXNm1A&rl0UN-r~`bcf=G7j}w zU!>7%eUYXO)_3Xp@xDu|oYfU!9i!YjBD=^(k6T|v`OV;H%)9grq~|>6PB6z1$HDg+ z^NzC-%$RrS^n=E{OZQ{mr9VwNW8S69=OdoK7yKEp{Jes=$#b@VH+zoCZuRL;fVX?T z^dLL^((`1L{(HzaK56G=YM;VxsxeF(%x@Y$Kl7L`Wv(b4L!Kq#+jna`vmfaA?=bf2 zy3^s`2Hy^rpZ62-sY`zlO#2;XKadX{=KvT#y7YSRkWYUeyxylj0)EJ+9|Yq!$KM71 zl21Pbehe%>(^tCAaQF%^z6u!sxU%>|`&Y1mK5*&JkdCh%zaEV2II?FnO8;|Y^FMwG z{-@174df}%HXF~H1J1^CiZ+CP!S2v6FH**I#<+%`FXYb+#5%D2e*=+v9G(Sk^qh_0 ztWUoNJkO_Z0yq0~#;LBsoKAeHW0%vTbo$O=`H;SI9O<O*T>5%&k58A*`#s(QrjP68 z|9ax5JeCa`h}JIfss>~Q^alT+EBFVSf`8B({KGyH^u!ojFOh%xh>WYiLGHD>2BP#B zXSg)gvAT);N{<(S@%g3bOgDos^SA{}dtACO_B)&dW6!1M!@n5(tWR%6F7p^4r^$Ex zcJOSEJHYe7^4oT>{N;Tmo5FDtn{159Cc9ouV@H1jWe92PxZ5yw-(#4%f6Xv;Uu2lN zR~lZ90;@N|y54YW(rhLl``ubK>%p|stv#cDXCHIv8^Kwy+R{R#EiPUDZuXdQq~onC zi_dhtb(pqm>^c5CFk{c9?*w=G^hMzNefpDN#+$3_2Jj}2rT+^=8*kVhu1m4i{HFdI z@NJjhR~x3jLBmg`QfmzFigd;pKe+X5Hjqzy9o`7O9<2RTzQk^a+2?eP>p0k}xsY8t zeWHEPrOVHE`Sg3hJw9E2?gPuWYVWX5mk-x@eixX&aUALV6w&;!Vf_57ar^NG@)WQm z?1R)D_Ce~4_q(t^s-H|}jO+ZGI@GUYj$2=60~nvYSAOUqVz<NiKt6FC`3k?dbbO$D zUY9QaFa})uDsY!imw)idd*ugwtaFFs%ReKYFQ4NR$B|CPNw69F>^da1A(dKde!!04 z2kH)fpuXS->Ii<2-^~v(CfUuSR|=@|xEf5fx%PBynP^@TS5`I=1HX}5IbCEa%mPnK zpzetre*rQv@SAyNX#5ti@$rS@x5Fm}K7AABhsAece%L<GAAnB`{Gn)mlMz4f36#_Z z&)*0p20s2QH+%4Bx!JSb^LN502L6-0+G6}&VB<gK`A@?q2L4`dZ;ihXZ2bM6e*iu) z@Sl(7mOThI{$bC52|h9Kk8o-*{YSyZAM^Z^@QKD3^<2-_HSoEfuWMcTKV6-~z^`Gb z7{3l|{6^281)muBS)P3ve?HjwEuNoC&IN(r%Awo%ZD8Yfd43OkV&M0U&oi4Ih~}AH z=lSd569az(!`t+41e^Xnp8phlV&Kzv7Z{(uyTJI*dj5X+#K1qmrKa(p2OIxI&p!;G z82B&o+{5@sz{WrB`Se?w82BeS-FtpX3henM6$!tjibwrK<CoBXHqUHH4cPdzJU<Jc z82I#&%^O?NG(K-^NsH&_;1dJCmCHP{rwwfSdpy4nJ~8kIxc@T#5ZL&eJbyEMV&HG# z^lkjDVB_!h{5|lAf&UcOy~ckUZ2bM6e*iu)@So?}&-e$y#y{fuN8u9#|5!9{?D6q= zW2ev;+Fz!WCeip)GF&ft{ZlHyUjLL4&tC_h82F4;n>TjK2C(sWdj6B}iGjb1!>{Sb zCk@8m=lP@XiGlwt=NjYVlVsjlz5elu)mLY;e#WP{S7o!;T|3XsZa6oajb}e}^B!Jx zjnWjl%KzC-txM7+US*1quK7d#6-+{D72EOoo|yNLZ|gUltf^1c{PxUk-@o`+s_KT$ z=_hNl+GeVjj;2r6RDnlRfB&C0Y^e6L4lpOwTYNvifjJTD^!>fCuOONK<=4*ta`m>E zTbDn`oDn<4$kx{G;A{P_3%}Kry7ifw+DG5IF4YRYC40s3={2d*R5o`k*>)t`8;{QZ zQ#6l#Z)U1=G*!7Hvol++^0M~xnUI&s&&!g>JRleSFe9C#C9iy)8?dyi{b06M<(YBh zd2HFA{eqK@q?(YP`o{Yt&3PqTw=nmoyQSl}({ST~(F_)pjHaB9BiXWSZQJjAJugLi zUQRVtJpPUMH$T(-9I3m-7|mGi*;>*@eW|D3T99fHUYN_)C3Tti&b&Q%37&nd>d}$P zj*AaJ%!}+-+&|;OFI>2N&ddL*?|3Fvnz><gO2*Bd^l-&MCX@NiOtx+?ld1V)=Fp|m zPJfTp-_rKZw(^>7%;ItU&1X-IG5^swPn}HW1S;E}dA#-s&4eHenb#;a=R4{J{{E*e zW5K?{xeuyC4%ei7$N%~CBRVF!-;aD&y32jPJ`jJuUh;J1NVC4vA6PXzb!X*B&SC$} zeqE%K`2?!-K3XTQKFV)#x*KEN<o-gx<G$^VTi8uIm-P+}JTSpGnx3+F&Fa;>Om$YI z&Rgyq80kMd>cW8mPyBz?x0Y>Dzm|GDi>+Z`c?*9Ah&rArU6EtDdskP-yE3A}Mh<sf z4kdrYQz-bBqWmd%M@g4Hl{I}2fFphBmynx@7EB-Kkl4No&JoTQ>EpZ;^z8yi`brv* zTZk4+-|vuM7+7(PKkY>6D<>*X?fni>`h3v&-94AJ1k=I!CDwON3-SS?^huBDdjTBj zo1*-9KeW7pZwsc(g7^1C3&zvd9SD+)vcsr<3as)oh^kk06ntBd*#hrtq+2k3Cfhco z|B`-Npl^y4+Rjhfs^?8EsL_OG_m@9j<{n-l-34Fckn52o`25cl$p5lH{tpH6|0s}O z$(P+Xvo0yopMFn4{s#(VZ=czl*0@(_#$LvGdTS!4T9Dn`p#EYeZ+6hUBWLu&4(|i; z=F!?U1HH*XH9zZ?rHhvJt{sA)8Am^n_oh#BD7NG5(p#6dcP?uE@S;?%f2Ds7uyb`& zcHZ2%ovZa~Yu_4Pc<bx!?qNQQ{8xr}(JZ%g@h!b;*LL6Cn^#=rR`;*yyqi~#hI>Cw zx$&2uRt`Nd{x+eJR`d^c4?j>;hh7~_bm%oL_d1|TDS47os(G+?UD2YJH?ddzi6!!B z{@JNhXA>7L_U|ldpT5lF1>h`L<2Ofa_PEu{_DqAkiU!gY$UDby8?td?tYNO_rA_2h zufwVfxlGT09wIh-ybO$fm(KGWJ@<21&&L>-t}I+V;|l3K!wKmd!Fv89n>TyTLGU9U ze;dsB4P}2DEZbU0-{Y~`{*1@cvmb0a{|b!F=}OZ7I!Zs3q`U99z7Lj8`QW(6=+y6A zF1;OG0hZ1`1Is`118vmrS&q{IZuEFLc)sUjPvLXmbG`r5__WG!GlyTpwC#Mu*zpd- z=&Cl1trr-^zL|!x<3hvOQDe9ZdwpN0BdqhxG}`0dO}G@Sc2yA>WA0rwY}E58D=S>- zb!rTR^cXW{GSb6%(eq^Y-kS2WKD`!v1JTAFdG;LJop&w0CE@_xyuGCW>~pvpObqk$ z)-e9<+*1ek_j>w0#qnpsCk8(DglBQ;FXQ)kejj{d;1A#v(?0|@{zlK=1fLlAn`y7{ zw}2g=d&&Do`Ug&*J2<|JOmH%X{=B(YUvt*?lIJvI!}z^qQ|jtm=Ge*9STZ|suKa@E zxL~`xlbdqaPmhnK8#-z_>wF$Fw4V3XAC}joIxB20VP+ewd&j2wny+m#&d^ToFT-5J zxr~!93H;2*FY0*U#NJf;#8`QX8H!WPP@KB!6gH)D%KKN5?#%10sr9D!<H;=kj`w<N z`uU^`_eG;M+o~Tsd~>S)FrLk3ZalGf``+K+zISxaQQZq=Gk^5hA8q0;XjFAD59aFX zZ8eV`zUS1b+MP4EW@k9g6}3B(+2(2=d!k13;dPXbrk1Z8EU&tLwB(DKIe+-#70VyY z>`3m4#ZB&MpV+Rv7p_>oZZsq9N%;TkID22we{a{X&ZZwtpTD*G%QGLX`O?g7Ke{ee zapPF>G~owLsdMHWdF{|>=Fw@DA2`f@^zyXyv>#lTnjJCbteQUO$Und-pZ@vj<=2W; zej%LY5$D$?;Iu`Yk4(TBi8%L7z!{1-AD@7;E8_f%e9ma8vv_~R_*PNIhKTX$qKqdZ z#*Wh&9n((in|kWRzS6XtIs5I>9pz8>as62Bjw1(7txCrBXeK|Wyd+yr?gs5I6XZ2b zlDB-4ye*UDZJs3WsY&v7O_KN5NnR!GE_L&w);?D91hWj6&^|XaWxO}rUOn+v&*Eyf zIi0DR|BJi70gtLU-+=M6$tF3wSwjdR*@UQzrW!Dk1rY<HtcV&gYN}|LkCFt4Bp5<W z0t7`H6*YW_Am1cfY_Ub96fL!=v|TMKBDK^~8?Ch|r8Hnbz6lV?d*5?rP9{sDw*CLE z|9ic2WwOsRbI(1`Jo9lr_RQJ3#;L|$>n@BxO~1n??&08_-ri+N%ZbI?nvK(gjh(W$ z9OjBI2OH~^hBf(=(So;%I+~phr$23hQ}kA=iTBNN?efQ3eKtMY-?w~DYF$<?Ia8mR z>Rz)ndPs=qKZII6Sh2=Gz?|vX(a{!8^{&q1?|bO&wt=a2PI31rb%kV!(&w>Lu6a|< zrbr_?+PeVv+QK;AYYVD(HQSa%dFsYLpw>;ii&@+YoN7i(hOWFypIYxYSDuAOP8%)P zHB=6%df>!hV~w>wK&rW}!IF8e6Z%@eDRjJ}-PnSomxsN8^e6n@cAQ?X{tj<l=CMWf z)a*fcYi^VEHub0G#MOf{q;Z7bSM%t3kaZpB9UXL@qv-iKclnR>aK7;J<ktB+({Wy8 z2S48RX}{<bspMB-vUm?=W`|pP|JV8Hs&d?t*ft^#ukXyZ-d8!-`FPY5(ND%KvW~s< zqY4??y-c4<#A#1vXYU<FzFrpZI<@bE>goFXKf6lT{RkU0KmMQI)8rNSjEah)GQRJx zi<^)mD@PPo72bs_<vZ@{5+X0fzZONBo3UfCXash>l^1n+e-t})MwVe`+>{DjmUmHO zPGQC5S%nqY>DTo;0MR(KYS#3M`-qy+6;(;)h?2@l)3M`gQq?!stM=U9FuAZCZ^!Jy zI@J9207Y}t4S9FuS{rY>;*y&J?;1Ixi^}q_!R~vv-IjOL*XNJ?+Wfp5zBd2PyKev5 z{E;_x<z0@j!b!zNlW(Z3oIZ&=B0K*Xsg5}8zUrE?q!P^)bS3Egu7(l!fqvuI#=f|3 z#8@5BK0p3Hb?;qY-<@*3%fzRWAzqw^e?t-RjE+cW9?RX0$ZODOM1}yOzNRY<mRB;w zix=Ww4kGzjR`FFs*7?Rm*VjwM5%wOVi+2O3?Bj~A_;5d`17A6G9^+I{e5;Y5WQaau z6rWq>vAypg>h{$@?~E^mbe%63y5b{`vhM(7oo_Mp&iMW%%ix2-SBrm&kN2J=pSTaD z^Q}c*8lno)CI|1m>-KGfuJ~BL;=3BM&bJkMC-yn~vJ5^Ldh?&+<NY7SHxaVVw-Y-3 zp@Ou@!QY#bGP8P<OYw0$C_ef@=WBr88Q){F3_ciobDSx@B*=>IMaVkeUg(|it&?T& z!O(j%{wY2l#}yyPrOtO4I(?-AaR`n-;GdMK_a;uw58lsGd?z4ld=4M<$%rZ_K9<+` zF3E;okI4C!CiBp)h@OyjzPZpl;o~zc9r)NT#fSTG%D#xO@#1Lef{#AX?7OsF<MYWp z+IKf(&Ay0S=$+Y@C(Gc2A)S4u?7IXq>muI_eCm9gcwUG!6{JlOv`5O!N?(uXI4ID6 z>4?lDAKyEo@kLcZ&p=c`@hw7v#&<dRi~>aR;a;fC$M>J<d}xCs6KN_azSoeT@nx96 ztwI|4SU>Y<-#&b5e9_yXmm;d5`2K+ejjzvI=(Lf1xW}sa_zaEC7c&q#(^QZg;{81u zU*8-6h9Z(L6Onl+7ug@5ntd?=D;@u>p!if7ncR0S1jW}6vf>LHFEP2uqd!zod|~6I zZwP<_MB3*^RD5c@Ac-Lc{Tq>P$>P7_3mY$2_&_lp2=Wa;RD6#@W_x9DvCq<!hEJ6j z_Fb!MGkmq66CCjo?deGnoon&$8bmcO;~|HA*P059^XEucLDj2t^=YU7zx2CSWhZAR z+i3^rJnq;5dZMjBfKF%G0Xo-hJ3!~UYX|6hKe0UhYX|5)TY&(b>y90u>*I#`ocDHs zu8&jZbKcnjI_H2LpmW^Y0XoO69iVgE*#SD|YOGA)d!RTbZJVU?h+#-WKF`ZIe;D|l zDifbmga%(jcSC+m(>;)%)pVYhye4(>v5Jqhd?fMvFcD}E`p3~t)6qW;d~aswqkkMX zN!<@T`o|IWUMNS2%%6;W^q1pdsmsCPs14J9so~L|jvZn7r?q?^rW)HMg5|FW&NBwq zhyIRG{*v{H;|;PSwjm$BjtHxt&rVuF@_i7dbNv><%IEWp9rUa){Z^@GpgxSR$l|d4 zhb-NZiTn)YtNxPqM!qWXe6JS9UnHM35kc0!CrnrVVgF@fNcHHL?;Id?=3~4%m3^{4 z{>HfowAYV(X`h<RPOgt4i2Bu+TOFP(;8kP${fqGTUTNQbceshsA-&_B3oYxs+Z9?K zUk9SyE6{Q}-k8ubU~0#^5n5gsw;(ixx?!MhD`;6D?j%(e=x~QYE2Z65==fZNhH1aE z(EfzQZH3`aSd<jy<9a+_yeO)OzZg<fS~LxJlsZ0XA-QlDp-Tq-N=C&r@!Ke0!y)ce zbjmTSyil`(4_9<})`J#U_c1yxT~S%~O{IBDqSLY^_%Q?)7Eg3kb&ip*je<>`QdE^p z>ndyVH*#0bC@-I0fqNn1r+F*8BC6!C$#n2Z$Ga}-eN}~(m6LeSMm+m63Ab#tG10Mv zyidcYS~?WM!!CNE@H;lv;0${O7D-Af^R35r<o!6@-O=g}yQRYdW%6xS@?B|@ti?dQ zL`W;x@ivcMZd&1e_|=-uOSRwl(MwDc?;t}Bv#eUIw~pOVRRxc=zjsWoT;jbzT(=po zK;-!v<crm@m&Z+&uFFV{z8wE}UV>w-cqW9$AL<GZ+2-N-iAvXHB*&14ODM}L40O9J zj=greE+g4wS=y!B2H7r4UX9b1k?c}sd9I)^-?FUxe<&Nvvh>q`;VaMoQ11mS`(O5T zoGQ!nF6FClIZnE%vj6EALtpSzPMq7~{71a!ClflOvH|iHYOMOTbX^9A{oWpoJ^TGU zI0q5$=gC7koKFb(9>@cvJOpw;;>SZCCFKIhLCAb2Y9QiRL}d?f_CC!5oK`5?CTkd7 zhHc_KIpl|JLPj~BABlJANZW)gZ4<Jz%`OYu?6R;;yl>|lZ1aB$+r+zcq-{c$w)NmM zPSQ3ZOWTAjZL`b5HoGir>+vo8HsD*>Cf=VTZ4<JzEm5;g$kH|;OWW+Su+1(D+r+zf zzQJz;zsWX?)t<Cr5F*Yid!mmc=0Fa}bdHzNGQ9vY#)H7~dZ1dSkAPe&(|-iHUZ!V2 z-XPQ8g&dOU9>}|7`T@v$t#rp>$j7a82QUuILDuEijhG~5*y!jh<t>o2rHuY{<VqR! zJ7BjcTLHOD%8x>(owyc?SOs~7l!;#h8GY?2M?@QJ%&Ssfi}cqd=61-x(J&uMc^%R} zl9)`$pK2JiQ*f?F`XPyNLq6G#iHMf+2H1x@+QWB*M4(TUJrS2kc@xqx?*wKW<bE3F zdMR&4`f!PX{Sl)y4E;ktz=shNBnJH+aj%A%Ddnw5e?Ve_kl{z$o@b;SLOT6Pn+HIK zf7LoeS*<e>@U@!D5wJ<EIT7%k8mkfTk(yJyt{apNE`$iQS-s0H0&UAy>1e}XCBxPs zN)8!@dIz1jH!0UWUFNm9c<+-B6~O07oC~Rli87sB7a^)O(`Oj=yXlZ;ujd&WMwh|K z_d#+0DbE{{$v*-yP0EWP_mwin4v!bfI0iYqkO#{29LP6Arf-qYwM=k=gU{{?*#~*5 z#8*JB)-bgiW+7zq3_?VI**xo{%=W_1!p>62@U4w`Tf^*vOdcO1#<`7Yk}`d895UNW zp4N7Z13njcU>pgMWxIrrq@O7dqb&&Zg*r!apv`J5IehK?>i|}b9|w5V_;Ju*ic^!> z@8X?W1<3bEc`{`5k(V~Z_q^{V-oaH2`7)WF4S9f+(GT2HFYs(H=9G{}KrTR3V+QgK zvMpRchbtMps$IfI3QvD2IRekzV*GS=E@Z!J4))u4T}Ii|F3R4lY|!z#?3C}n@_`#; zxR*9B#Cx$=o_Wen$oBqy<k|c8=@*63Wh9F|wy1|b7c%;s^G@x<<vC}k&k6e^o;D!b zc<|fL31>o%K|X_D;@PK&HXeOxKPNm?drmkY@gsmowDCFU26Z1d7qa5VI1u)a1|HGI z2eoI6$3s^50*RjtJfe*+hN~5SDP)B&m-s5+5p8_6wr78iwr9Ua;^zX7Xya=!)D{0i z$clfl#4iIL(Z;XR_UzYdd-m5#{5s$fZTxy%7AgJ>kQM(XiQf!7qK)6uzGt7mQKa_l z8zG6`20WsT-;SZ8_;*59{GUmDBk+heelN~@6}}0w!nay@W-%(f!-**`@jUmi_w1)h zybpLp8=sEzLxs<PEcqQnB|ZQ=qKzMc;jQpFkQIKs#1{aMXyYg2c&hNlkQIKe#Mc6k zXyehR_MUz8sl8{vUgFmRk7(o9VeM7?>me)tki>5T9?`~c$NHx5@W0x#?`V+t&wxj? z@r~_!_8oiM_w4gLkMqTG+=@271?!dKZ-p%Fi7+jEga_vUhzif|QtdtdiE593R{w1A z6u$ar?*Z@c^L4rhJbU0(-~PG%e();>%|QI;ecxA%jYi&44BZWQ!u@nkqz^HDLMxwH zOv3Z<E$1SAtsk_topdK&+*tDX#RpQp`^8C@Gv|ddi772-BGZq$;wLBcO1u`&pxzqk zYl(AR-nzZ5zQuH1#wX?Z^!#pz_qmqV$n@5hNS`-5WV9f^)f1W7YDV_)n=4(4we>78 zv964)v*c%etb_a~T@Ke*BO}urA{yM*)0;t;+Dj134H=E|ae-KhXYJ>N9Kl}LGtkC; z%M-pD^B{Lfx5T<~_Iiz)MsMG>AxFp@Gmd$FZ_2{M9_&DH`-9@sl`tyg@E21K8U76G zGnk9L?vbarI*bXe6WaWl6I!c1!ORJs;84_-hP)``#Y|}R=T2x1rXf8O>ByV#RdQ_$ z_K!=1b3$wKJaA%vJ5o%m4EHG<ZZTSe-jETB3}&DtyaU@k+_?}On!k{o;(sRpi~i#N zZR}G>dalYHbcc)?L-@by0sg0F9M0f8?p~nZp}QipmNgvQVmQ$<>;r$+<kO~jg4KRH z{6sI~qhM^vIFV-T@?UoRjL~r1V`OxHy&0A^*1&h$@r1Ao`^q!$#OjW=uR><e+N>RH z8FRBvCk+loh0HD)ll})r`x$rG_^PyVldy41yNzNrbzvcPuD9DK*=V)JC!{pv|ALXN z{ts+SxVCW~E-X!d#>QHI%CoKn@l3GL`k>ET>@&Z&Lmo9d&l(rs_CLoQMoA844aP~Z z8l$cjF~~71_N#a?hdi8J7=c?k>VtFm87$?0s}?mo$bh#tSTjb<BFr2Ya$`A%_@DC+ zPfH8kZzg2tkH=i`iV_ZgibOj6*=W5tesIV+;het@<Q!QdC_Wwj45lFtMjVMKXJ;q% zJ2*#W4V>k<(1x-VyZifR&&n>Jv1OijSuj=1xV|ByVF=P5SoX=m*9|8}#HT~P7;M-h z?+X*-!*vuJ%tA)ul7wgQ?uQ5cclitOyn2jWC9Kb!L)KguD+QnQ-hb*MBkSZBUSpFd zo2!#+!2vu&emEL)>sQt@{Y>41()s2-{&ywh>;(t>mliT%gFQoG!!Bh*!V+OY!hdMP zF3pC9a2xh^uwjpF16nF}TF_2^8rwww_=Enm^|cKH{F&$l#P(4a^n{Gr+2wPFwO}v8 zcI)~0316MgHr9zZaX3~roNfp`g5EH5+&Ql0=5p^+Q;jFGV1JiK=~&}h8>ilV&w<pt z?@nHwwA?q?`^?eU#EXx*ojLvkNhwF&7mN(Lgk^C@o$--VFHc)B?AW1b!_}j9pJ+jR zeUDXMGk$2u8T_1MaBrMp9>!5DWLo-b3$xBmy*#TGWz4Lz-RE~-o#^ro<~+>$*c=pc z9QizCuH#-W*o*$)zKrKm7H}2vyZy<D^{sBhm35}aDxdd|>B>3X6mOnx*c6{MBoxIx z0!f^~HSop*SBbSzdE<oF*uBSVc*N|3U&YMZ9&+?Y%Q5$G+!EszBN#O{4r|#``&zAc zMbh%bl~rcY6zz@8+L2VB^c>gWW{=@|b$wQA*4eBxWoD8XXTdpQR-a>=d)6L^6Nqy* z0__WW4z^z8z<xQ$!Iq1RU|h(!D&wW+USeAttyt5@+Wn??Mf{qi`lrmCn3-|@p7C`d z6C3T!tTWx;KNK5d{`3>fS0fEA&N>_XtC;8R>bQ_uY95GnjZDaS3Vua8RtU0M;{?1R zfAs3;#OGSxYimtj&7(}n@T@rr-tI5Py<cr+wX8-B$*U5x*%ueCmOC&Ee{5?kF^6Jf zT@rQn!c}N9P~Z<$<7i0#WbO33QfiMhgkrqgvrZ=rVLs+Q&Oj3DXDZAGepkp$uKlXX zXA;TdL?YH6*y{;7l51Nzf*hZ^8{DwBC25&=Wp!+EbTFFyC%3n?Hoeo<+F}}!{<y52 z2jXJf!C2;W+nyM-*vQ`EiZPWAJH!faosC5AD2vTH`!pD{&ZP~K_P3y>bJ)-GOybJw z=$TQ$C^9yqu9LqLbvgWT$9J~1?n7;5vEN)DkIG=bTC$%TGn4%ju>*CUoQHZRM_GBC zzq@-^JA+Qv$3Dq1yDcd9bbmMKVaj2&)E{^73*{&G8n!L#OwZaR*;ce|C~Ilxn{_Vh zlzDx~*=<3{{Isvt-@AKzSE|;W#2aQ>J_KKE(lT(Ibzd8DHpj-eo3INs<Sg@8HFor3 zYX>iS(W-{NpY|Ofk2oA#18c3L59L9oB@fze9bYE2_0O<U`b(7G%E58rD$~M<x!qVT zJ>CKv{V~}6cTLE7!NROlStq&fg~SNP8I>5t+%1}89=X-=8TO7gSSyy$o1r%;oqJQ; z_n&eco%y}Pn-`lChj;D_ZN)o>_U$*abE5I~ojJ{Tb5PS4MmACnq#CUU40GQXh6z0$ zdOUP5bT4!tbRYB#=o!%c(ETWHpuExCWSC9+4HJ4i^myoA=w9eP=sxHf&@-U>q5EOW zJ8fH8>jA6Q>;td@Henn9n|%lt(iWr&TYwU_Ko_<^7q&nbwm=uQ9Fn%6ys!njum!rX z1-h^Wy08VhpXckLh%@h=YsJ3drVULwv1i^pcRYFj#{E@zgHg}-H@x4oVMD`A*VC@# z?Hjizf8wd%_zC;Qz1mwh(Dc-!WV1)S^@vPY{0!@Fi*+u3C@R@F{YwYVugv8kGaAu4 z{(9DU>)?X=)Yas%N?4<|>;LG-M*j|Pop(k5oh;?I_7obW8LQ3Gl+`IYQ3p;rwqUQF zQQF5}`}EMKQ=Sg`W3Bqi<^(-ow7Sc<8V>sm_BE2BeQgY{6?N4lt;E%g5xjyUutw~c z6#K=5gpxHZLtIWwnJefD85Ou1IM!k~zie?kj<v))Pqd^uD{>O*mx#S`0^{J3iRBnr z)^}m*%8*H0QtNU&{0up=zS2<^cDExZw!i!22j?<~X~2ECuyk*DI?o7lVrRM=M>&c) zKO2M<pSo2^tUWl>3>nqlF(%iiY7Oa?wzQ*RYv5|PcLi(ln@{Dy!T_0eJN#4inxTtU zsFJ&T`!4h@OI(?-B56(ha<ANZ&DAY99=?sv_XcC~Qxb}Kg%oft%?`Mi2Lq<R*OHzA z!Nc(s@Kjgx+}MkEkg+bN4f_mdK)tBRT!%j`>#K%K0_Kuyz;jQ?9M(*|y|tEvcJTUb zg|#Q~x(5I3jkOzBUu_QS<B#3AW#jw)41dbThA;0k%#AN^{9@y2SeV*!+SrOKUT<RY zNpW`5(qilida?K2{IVs^gtjy2{j$Y0Pvb21$R~~2GIhJ18lk0bvr`>*>S<&5m)VAS zWPg0lm&Jy-N~E>)xfhm>pD9{B(>j{h1aJ)z9hr67W4y~=z~>J6`Jw#$NcB#5>pR!c zXP>c#>RfAFK_5z8v=iq=qJ`GycAh6e-xf6U(;6bIUbgYA@Dq;V4G}EO{Pz0LmR8?G z{dahma>r}xGeq1gk9_;Yx_`mrT=A{l`yofbJhP*1@8S2`+Tz`Lt`kLVO>qNxq)V-f zuJ6BtrL&$zE9DiDRS)WD^gZN{^{(u{L+(^vu8!A!H{Y>#=>4`<PkkcJ-*C=xEk_~F zBCRtHC(l^QVv&kkTB04%sdahLae7^iWbo9tpLOr<ov;F9X?fx@&LgY<j{do{EM%;X z+49cn^wooM+*K*7M=tf?I{x@_Z^I?b?KmdIcwE8q)@sJx#MbWAr_;Qvkcv0QS-Vud zE3MDC`gm)Pvf1ukF;+r3(WNn5{mKRhU0-4yI*4`XORPi3unv{wEOC|f?e;;Lm{r!A zD9{d!ruW*KtrX0{OxkE^@NY=3BV5Lsgf~en@h)+RcG<m+Hl53f_O2{7=^LN7F~>2* z8oQx$L3e&iX{tXKpWXyHpS(lzw**`B=P5mDiRT&g(5cBO!BhG3;|Aw%Ni4Rmj1EP{ zC;6xD+u7FQuEY7aXiEqyqgfw~)iLV|%XZj(PPdig!n-_arQhRS5x2%&mlZ=C&e2Y0 zwT5u?0=|)WjN_?zPhczFP$+hf=X<OXjPk|4?+<Iii2SVQCufU|9*A*>-4NpuyCWuG zbhK>v#5!K$EaTjU_x(j+I_h2%Emkdj)>%E9@5$nu6^oUPyB)x_o*Il-K-XH=Dh=*a zL+~QxRpK3pj*~mv&RzL3ZB`apYeVk~t$8}2uXhC)HlJ}@9%+8Jtr}+##u=Pf;B3P@ zgEI)|@zCR;d!c&|W*a_O?K?Qw=zX>XafoqAuUhM!i+)c(9)SYA*5Lh+ms&P}{~UZH z)`@&i`y5~!=wIJ;IWb=Dd|#&CTEMH(tlSpZ;d_>rv`9;kA}oO}EWtIZumsnw!V<PK z>mjZqS$|{C_^v$kUfU@D)Hr$U5cvl=V~~%ddCLcFd;C+a`F`kwwo&MZGybWTr@3z) zd19YFye{~ffybE_FxFZVSEovg_km1J700;nHn#Vb@4`HsEr$%NMjT_rxZmyQJRQCX zVaNGitm9&|a(?s80v_?cg68+zS`O`KYsrykDd+7+7u8CR<}i+Co8vGz4u2!ZxrArp zmteMI_q}&1_TLZfUy`)4x{Aj?zj?K5<NA%S55v*VpOm;fC)Ph?<Mxf8Y#ek5bB!L4 zuK%*gh}}4I<Gua`)St%D+dm{nymh54xarkJO=aW#Lt0EDQ>Kks)N~a0EjPWgKgHOz z-)p>@VB$?4FZ{ST%jA_SdhT4eRerqh<I6Ed{Ki$((c2y7EgQePzwg5Sw<oQ<Dt6;@ z8yCbc#yD)4>CH2}&m=BQSfZ|O4wyZi{nl?><xhg$NjXkf-P(jXMN6Ia8;@<gXXDKq zXB>#_>CCdM&!zPWQI@mml||dja;dWg{vj+^HgeH+(Sl6_=4~tqifh8MoJH?1`s{$a zr!&D5h&}8v#A=!K)u%%+4)C3Bdk}Nt!aN*{I98I@<apvlkK>#y+HYR)qBYNX&cZR? zyc5Sd)ERPc{kHD+02!su2{~$*@An?eHFj=TkM}P`1!520ZS2YsYngWi&WRjowP3;Z zkjpXrfQ$Fd%2plRV#HacdF;YD^65z5ftJX0^aAe2tD1S=tGUI2w*;yBRSxj!!21%i zRSvN^?h~=bM=i0eW7yV^$+|bbKpUy~y(fakM>(!zrepX?asRGLvxA6sPklRyb3na8 zqAVvT`YCVOn5X*qU1gb1_bJOMyB7C#YWOyygDr95>;rzsSt9Pbdp4|xheH@&A>l!j z9y}N{c6B+|YI5*yR$;Fr<gnhHgtO$F<=*Ns%f(x2L*gtxUfg9GwiWC(ezPpI?AoWr zxjFTYZG!EAl!lZ=sSPRbr+$*M1)neCb5+uc)P}^m)X#I=a<!@#?*<8|(rj}I&Q%ky zIlU#K?L@<#7_4>Y;?`JbKaO0@F|qd9qA2BwaK?HPlDz5uoPtut!_T(1wsVO8bx^#S z{^5f8>V5<8XBgtMKi;0~A5eW|SO0WFYINm4lI`=0|EQD%|JMzd1wr#o?*{Q|c8%)r z&Is{Lf}MN&@HpophoyS#R6{%ytn1mx`#L=}EZ-ld^BYFZriipKn{@6GVP$K=baJI5 z%HSv%9+zI@cqHP{$j6*>qaKfbBIZeRk;}@}c{7lt>$FGLDf<vrSd902JnDEXVs7N) z&L^Utj9w(az)e&Dd=Apy>!EWEMV{7P<KYo;@sB&6h<Gw`k(0&syx`a5jr|%wT?8K8 zmTavr(^!cNQ}I6Ju$LisXlFIvf702@Pjrs)oxF2d&%dXWeBB?n!xp{Gcppp$f9P1w zEnUa=;@_zIfRVwm9qk<vw<#jL&3gTKA4`Y&bwBFwdC}8{YJIJ9;r%b>@Hmfp&2@)9 z@oIgdb9I%T-UU9hi*z*9d_uloTj!7O0<Wj*{kK@WgU8$99Xxs)H-wEty{?@9&<1}O zw&`v6souorWbuBT?DM9gZhtxYb9h{)KE=ed>xyPXC*xCZAKIY3SEu7xtqRN2+phPc zZZp=7PUn<fC&pQqV^HVS+llw4qn+uGIUbLALM|m8#@j&6w|ZR*#Td<1L#4x>&}PAz zrhGR(E>PMp{pPr|+_>~n{mfBuX?OM$ZVYet@HkT(I=V{N>&H9UyYz2(p6<sjUHDO3 z|BWqh$ndy~P7eW^?;Lreor$WQqD{Ju#bGw;?HUdLsR^DbN?QN2<=DSD&I9%lafw)a z;5t}6qMtV>PMlimb@)5f@n62bsiLT~uwND4{%iD`jQ1uP{jkMMe|1htSxHs?{WFSY z6zQo&W#=VLE;=tsZfD|~k@E3l?07X&{=^xT9bRfr2sUF)nl?GVq~n|HnKP-Ryciq( zDrb~b6%8mVn^ZBoysBh+nQn;&YX=MvCBk8a_f3;jg)^#(!*kn9=TDnHxhTJ|v~>Ec zj&J>8UH6uha_=GbgXK@0olhccK`fahb`wg<is|%Zzi)}A?**1zUt9I0>C>?H58KEz zuXN}u%@@J}`Bl^NXBMh=`P&suf$ha5Q;Li5vg-1}l8RX+c=NSY;NFVq)5LZ&?d3^i zMHkH~D$k!$dA>u+r`?C$e%3y|Nu@=F9o{d+vO1u&=={zrF2pObO7lxgV2-F??O-hF zFyutzENta~i6vFj3M)IjCXD%PS=o$f6VXA_@69i-y05Yj@53%HEu5V%NQ){ett!xc z;r(BMcRbOC0q0k1XLVL*Nznk6-xX!P@Js&0!pf3K;h1|d?8R=%@Qi6i6;t>^a?7go z`k76|fS5MD%-V|?UK~BfvX)zmXQ6-P*3EDr21p6UYmsGMmt<2!PIzH#-kfw_KDN{5 zTlwdiId%F(jE-5@yck}zvT!DbGR(iXu%whbN{b3B&!5^hs+6x*?;O*~X3ntTTU1s! zu@qB!3SRX#MW3qnoT%ih!)5@39jRscMKigtc+$jhoA1TDzVfFPO`DD_rI`Iyv&+vL zqLtI~Cs!1fl;u~JOv%4LoWL3gT<y+VEVXT<?Ay{pwD)V>(^Y}5@svIlQAxOUdUpAY z^Rh9+FmDFTD(YnROqyN}mvG~6IB8WyVHx)WcRB`?*STQA-}$pjum)O(if|rrAeuF8 zTK@U-^Zx0TV(J%8;&NvnskC*t3xwVM7(&I<rf@l*E|%c)DzD5hEW>g?i94@5$)sK7 zmHE~<JI@7j({LA4q`YEASy6u3^fIwNh-t=kD7+R7EHP#{u)_1`+w!7{0b*}_cqR%K zRToW~QPtU4rB}lX=)<5A3;Lw<j+N&lc(@Gb!3jZOY3G9i{uYBJf8r#J^Ue!)Hkc+C zRhCp>vFI!hoIEN|osQo}z-$jE6>}Gx$EQ!?Pb7RzE;piwtsi1^TV=mKw-e@xGfGM^ z`ti<y^9Qb#$2S6;pC^93fhz@nlOoKX8D&@*CYSJB2p(3*a8y_6<rO7Z-KG_ucPtVa zcZoMZqIdd<70f#G6DKq{itv!aHQqYIxv}5CtNIP@KlmCu1*0GgQ(0Bfzu!O`fFc7~ zBwJ4z)Nk+rzh6(eni#x8Tb!N#uP;L6H2`l*MO&xY;t6&AKCQTkg1lacN`_dNjeop% z@N-0#XCC#-q>k6!h%i)sst;lrcy7;nz6r<uX1aakV?8RU`-8X}*}=XM(3O2rGLL#L zqRy8CeH5Y!itiRA=<Use&g%=dm$#=>d-Eade9u7VJs1@f-&iE*e8tceA8(;4z6!`X zUn6whmr+4+OhbZ_Ar{u)AALjnVi6VJa>zR0Vd(5T6_kC8k)ZQ!g+3RNd>6<(<xh>z zk%7F<_+FA_@WC)KfPa2O@^wR0_I(Ul=PQ8Ddz>mL`~HXo&Ay4{(3StX%RJim6{61f z0Cd)?g5qmIg3eb9Jspwu@f|wSJ_pCW&bI;jKtvTJ2lp9w;3KXSk$gR69_(`rhph88 z;u*m-q^Y3zu0w*9nKcP*jbOdx<Gx2_Um0Zb$#zAyLQY3iLGhI!LE|gRg|6)59zDfZ z4_UL%>4QE3Q3b`f5(zrr7U&#9v`?)SZ11n3>wJ@;*C47O?RK!d#&<90<z7VcT`2R& zw+FJ$M~vPditlf-3_cj9Wa1w=$%pT&RC^=1HfVfN@Ux=;X(~vY1g&P@lq%pjN66P3 zk$JE$A{(C?UvxEe&Jh))eGyk7LE|go7-b~ir819vcR|+q)<TDkc2M?l&C&S^ppQl* z-**s|eXzR&-xlbo#}0~bI#P7L&CrJ;lJ9bvNBfpS*6rH{o#Q|S)!s!&(D@ESr*FvD zN9K|5w~#fy7`B1O02LJ98%WUjrWQj_M<m}BGLL+Jhph9>ht77Wp!hyTg3h-Py7J$Z zG7o%_Ve3K6yU2SOQ3c5t8MYowZ3LhIk@jUFvM%zmZJK@N2<SmX6{Jn#J&l@u_XPl$ zi%33o>?2>;criJj$0Dkr><b$&_iY0}^{*P6<WuX5JU=i`0>|$|R8V|j>q{x~(-CRk z)rhp6d^|pC?R6zW&qh>1@jZnEmXV>9T&h2=fvosmhOG1DLZ6DLg5vuL5_CR}JsL^- z2FpC!w*#`y_ZoC!RZx8IAVKHb3w<sk`L30D<U0Ua<8yP4k4IENazy?M2^!xtj%W5A z`P8uheB%9XI^RO%--D=vw9grb1dXqZGTTAEVKR?=^rg<X2Rg@w3W^Wk`gY)(1D*4n zd^gBE^5sF+_+r^!Mirz@;yrYlebZ6a?vEQGGmm`t<5TA=fG%x<WXsM{$T}a}N>18$ zlguL@o_X!SHyL_7q6(73`2-SlzPZrV{7~nH<a-6_x_wp9JLB6B#utLF_(sY+^8FdI z&c}K?<J%?6;Dcd$EB-0ITOreS@}0t`&bJKecBH8w+vq%s1SvDCJR7(?2=w1=h>|ag z=L#C%1>>QYBB~%cqByTLzWZyTZ$>2F9WoF0MR6?Ze6%eCQ3b^}1PK~n1>0JHNWSkP zGLL){@u~A2hEA*sitqbK(D~}2vmNB)8mjneAZvVana~+kP<#&}LF215q0dDm-`z5g z_WcmD&KHF4MN~oYtwDm$w-EYhMDl%4=8=!%K<6um-WlHqvJ5^LDjV@n@r{AZy2#gt zPo0nbmX4@`vhNHMH2bOsLN7(6edA;v_@a5N(D^n%&qP!~a)@`U>3nMes7558>MQbb zE!6oMpm);V=xn5Gd^3pQI3QoX%p)J$uJduc#3QPp?4z%AKI)3EQ09@Z60*kE4Qi)+ zJg(||i=ivNNivUoPea!EXdAIADEoL`qx0>Aei)JMEs}ZUdlRzGw-)*aL=_Ytk9!*5 z%&pLK5Xm=1=8^AX$QoaKE_C8lP<($xg2p$CaseXw)VTxsPC_T2T;t=HLG~f4p!kj; zLFbzcy#SGX_aQP5eAsB&(Z0>l=|dGHM@$bS=zQCttNxfK^T@|>rMH(jKcWhXPn|=_ z^lE+<Akx0+h{TbPYlF^r9C|vU3W_fe2~uWObpie{lJ9;*#WxeO#@C(gpNy!2;!|a0 zdUXiGVnp(B3@bkRU+0?xy&O>m#rHH4q|B_@w6`9Sd@~RgU)cET-i*8vh$<+)u<<vW zIAz}~$cpbTkTv@f{LniYe=#4)GWcM4fbCHB&4#S_=zpD$9an{@g0k;RBuJTA57N(v z5!v1c5hb6=^Dv!{?I2bK$zi&Xpz+Nyp^ru+-$ODF<3;?|rpDKUW#|_b6rT?XI^THc zAw=^10Fim*<GGB^$NtVhR6+3#M}o%pP#Sb)-y<@Qe4Hyf-&W|IwYON7!3V=b<@h%g zk@h`?sO+nStn=-LUVx~AvQL$f=?`sypzM1bvf|@)fX0_N5IUm@itl+ONSRsU5>N3x zDf8Ig5M-T??OKSag5u-2*ZIiBeq(#*$vpCX23hAj4!s#s1;xj4uk-CiF%xOz<2f$# z$afZ>8eh*w=$-Wk*IkY82dpy(k$mb}419RJxFcT+^iKH1b)CjnLmw-?ry)!GT-S8u zONxg+0#OCY;R?I{sF?$R^4}83iZ5(EO`@MW<I9s}@WJp1+Gg`Dg{=6v7Ha-WS_ORz zq6*5su;ck7^#JTdr2m#9Dn7Pd<4dL;o$-Yo&mZNu+KfoPm57S(Wyl(z7h^!2w<B2u zWnb9!?_+5=#B!{WZ#AOgdk?b4mlA}|x>ZnoZzDm<%zC^9|JY{o)gdargOGK;5Ons5 z3W~1@2^!xM%b=_NeOBh7kK9p^HNMnD=-G%WNDeo3jqk~H=&YCa@f@6a<O@4LP0dBR zA5jIx$8oRoRYM<&NWSM~9{D&<(FaB(B0}mM{G+ad;=2I}Y=@3ZQy_dQ9LEQ7@_Z<D z732V-3JNz72|BI;db|SRQ{k#4j&>rX((mEz1&^ESsm9mK3q63Sg5u-Y)^S1T0R_UR z!u=Goj_ax&zmYge(F^T}*)A1+D8AR*WhOtl8T;4DA+SF<Cx~Nze1K2ZE5oI0A?SWq zdEJpN`-0F*x1#KBN-`*%)&}N`%Es3ttalTlI?s-W%;UMn_r3K<T7)ze6ra-7r=9*S ze(yu$7nMohSX9X5T(JZ67+Zk=oi^G5daSKLfPO)k-Yrb0&+Gtv4_ko%y=R!79Hw(l z*#Y=owgLhAg<<-|VS4W{{n9Y~J7N0eVS1l1{faRC$}l}EOz$72Ulpcb9j5bGX9u)z zu&qFVer=e}Yh61af0(U6fPO=meq)$^Q<#2Bm_9O0zcoz1Elj^7O#g0}epi@&cbNXY zFnvszJ}ylEewdygrWc0klfrb)M?1h@Q)~qS^pY_BzA$}Sm_9vBzduapxq=<QKf_ia zK%W(+&koZc4AUP9(|-`AKN6-t7N$QQrau{`&kNHRgy~O(=}(90OTzS}VfykgePx)w zI!vz%)1M8~e;B4eAEy5px>u(0g`3pv0ROLpa*0gf%K)j{0r@XLQENZ|`PA)ze4az8 zIn5VVQnv&0e`+fbpkvLq=PdcC+X4A6LQ!*&`PA)z{Fk7pImLYHc0m5iwgLhA&+wt< z41ez>3VN}`jDj8mna3)I+o8MgSuHf2D?pEhyciM35l2gRqwOf<wTKMa$iD!eKNp&% zcZ2+a)Kih)9rC}W&ff>>0h#v+83sb{3Em`2jo|MQB}2c)(v1<&dqKZV>NU_Wgg!;; zEPpX{IR_jC(0fByKIiY(TnhbH67Pln9q7M@&h`{r?Q#4`=F5{K@qIFr=&#Fx<8=_j zV(5Kv+65a$7z7<-BO+7kL!n;@UHSWA=vmOG$^0Pn{?OH&9Si*`=xPpK1RZ0E@2nPq z{)I0hc;ACzDs&tlB6e7+Q4RfC=zo{`c<9$b|4QojKp%!tApI-)_Xg<cGN1i%BXr(J zXW+}hZ-TDIAN&6n=##B%F&>Z?`H-gH3VoTSJGKLlzKVQV=1YG@z8<FkLF%Qz-vRuA zj`>cGQ4x63gsuY23R3SErYrl|-`@rPPMOdCz+7<_Nj($#-O#zlqW>c^tp0aCCi6Ky zzK5(Ar7rDv>f>h&^8YIH(}5oc{Y$BnAAKK%X(s~t@}Vb6o&GF@jxi|$^-0hNN?q0$ zl_&MZ$cODw_lM=%=Zuy=qBex(|5oZ7P#$w7O8Hyy@0IyE$S*<uX{pm5jMeBksr#W% zhwhU)+Y4Kw2T6T0^h)Szyh#3N_)vs$<j+7pFd~eAJ`4I>sVn?5Ql~xWo9K06`L9d8 z3i%Hre|uPd*!YQ7?UDR3y(FIffw3!ocZEsx?+>6~-;q!JJ|UAho*qFyd?*6TW30rW z4I*&8c^vwDsjK>yNS*7`lgM8y^@Y&qL4QT+&CnM>e@E)7{D)F!eNQ3(A7S}wJ!1aT zxRi9seEJu4oA$MgH9pJ%9m|_x{bf$n$}dHE^qB}-z_%Rw6PmsfIwFH35BaO1tMy9S zZ~nr{R~MV+U&8dG9d#FItYF#eQvFqoj5-{W)OeHpuA3!%H1eNC{#{bfhW<n7m}6Fu zd>FGLa6CVceDt{$L_Qx2$AidI@T@kr)L^d)9ue&~$!LF=(|(Mz{qfEA$2Qxa&x9nO z%Y-DK$J90hsU1LS+Yh&2;PKn@_WFeXRvK}5Qde#Gp{nm^(RcZ1dF`8X<klYMh3)5I zQai5WP8#NY?am#+cisjZrgpyTM&xMwaMV^Crt|UrZ`xl&9Nb`Us-dnwRc-C0$-C`V z{2V)Wv|xV?p7-T8jY=aN$~`qqoAh-XX*59l?inW1*l)dMh6U7)6z-Ghpo`5hOwo75 z=!g#6V3^Uq_k~*ch8L#Mx(>Tsm<Ydhv9*P{o$hCm#pEUyYUl4<VXC%Wg{r;#q~jiy z4q5tk3ueH&@ShfAawl6*<nQ6(32Anrww>dyqO!@ijU0|&6B8cpVsFZbijtW{6*ra5 zEUB1YCVmJHTZy<6t;mqf+``u3XAJL>`z>xn&P4o7odWXNcu`en8(c(dJML;>QutPu z_DwBXOW1#1>}2Wk*8n?|3HPo(M*tK?>uKD!LhBIQ_o@hU+c&6C?XW9F<WJ1Mw{%8j zaeg_RUs5)OyHTnNCwA<B&bFzj!raGYmsS3inbyXQ^Kvyu-HaZ%arlj*I(?^0m%m_l z-i{Vlg|XLh8;eZT_O8g3unj9r4cn#C-ap*(LO@p=RhZXdcgl=O*pMT3A55#9Vs%G{ z4JzNWv>VYS?Z0FvS=3gQ^GA2#r2A)J^9Q<aHiq?mhN#7YV<H&m7r^EL>?vz6AZrj? zUPODeor`jxOM9ayO)Iw=eI7_`bzymZe+zYZU*FV%ePWZ!XA2SwDK@PT*kKooEZJe} z3U;Ys2T+AoIBesJbRGvxN9SocZc-s{*uE86^ad^q?PXPJ*e?reourmv{4OPa)-jBj zTV9ydVV_HTg52D~1hpRptM@DeyQNCXic7GOvy+~?rKoCj$u#UwEu2=KKdrK8QYV<4 zkvHaZq0|@7{2Q?&5=TlFo<5`MuByU{D%Qk>aF(#Li=8v&SPZdgl$`weP61Ws3Z;F| zj2t4BWg_X`_FS=XM&(vjl(F+gF!3MP)kXv&?$-<1floiq{ZsJC^S@DAI<8k@n4XJx zyOs{oyd3|?p?D-`NjlOPcnYZM(q-Vp_nJ&|LdL11_-$&pOdkLp^$JWXWaQg2?l%dU z=i&G+Nt7j~pG@cVAll+e#wXKp{U`8D$9D&Id!f78F4hGuTZZjIM!61n_zkaNvg{-; z+eN=cqxnpSz5M+hA@e&f*kEHIir-0O8h9=s{t`ssh0J>hC@<s;$Y`&S*+#U>_94pK zzNLN2x4MkJh$H`Hh~Tkh_|2AKe;oQQ0zRM}alnb+-tH^Yf#oycHXeO%%cC`UDrA&( zGy(rGWcqv|Vy%|GSmJAt{*1)Xw&!Fz<)3KsR><Itz_{RV&k4@YA%Ci+?~(YAkiJ)9 z$a7exQ*LRO9q=vf=kL5Zd=}o337PFx>F}+P;Sa|E3qv0|u7?bJgq)+v1rkrr3JcHQ z-geB<(jS#_71HNg7{NoID9$yS{Hny`8q~4P!aLvt$A?<_ZVT^t7wHWahMc^;q{ajL zRgIGf^kuhn<ROTCFLKQ2GV{dm0cAsQN*Vs(ShdqRt~lQ5+jvWMJOLSXG2Jl`GU^hT zeULGBg}e;1Ps+m~BgAvv2q1z#o?{jLz_}35HgL>?U!>C>@C$hWWboVgi=<3D(Ptt( z6*Bru`GIvPKZs`%)O;DCVWM#xl{Qo(!k+H5fgJc0>F7_cBSIbz8NL*99%R@p@CA_3 zevv*JGWdnew%jgd`t450oFn%j24y<iI6<bPO~$=4y$W)flra~L3W;IanVS57lv(y+ zO|F5itx@9lJ^LXIZA@SreTeuJ>GVI^DC7*tuvN$dAfsJ2PaJMB(^tfxkA#dqVIK*3 z17!3?5AZtJFDNh4lOSI&W%?l(GW}44c&AKX4|%L5JK!_!Dd6vWI^ZV*Z6v1{dkbYc z`(m+7uYmj$$h3`RUxG}2a2T)2blUK?lxf2*3*&G?{@6<AnqYh`W!PmLf~;&f2U*(S zVB47v8ysvq(@#Q%AB7DcLGA~cHh_b3!^We(Z65kW@^hb>ot_6-+V2=GW%AquJ~@Wz zmokh+2HJ7Ik_(WaFq+Kcz4)zC*vozwGJSH9md<`vV+Q!1oTq3j*90N6Y@Ea(pLsK7 zy&MCxl*}<9Z4loNDH+L0<TMeZH4Jo{$D^g|GWsl;en$Tr0m$s@If$b)`F4q6I>wUt zy~2r*Cur%_Qijir8pz}sgt$oJpMbm=QTf4*Wrr9)BKlXzw1Z_720lq4hUsZiMnBWH zDNO5!2;T_IK*;d3km+0S+VW87iWC0iS3I2SoU5rE59CC7k&gBmL!^8O<baehSGc|i z4DnMT(>C%vjHviwb1(MAXv8GQ<VX8xoA?bu+JgBYWH00akZI5Dh^W`bkCN$wkbWm3 z`6Cd)J64T{pq8%7Xk(i4E$ZS|RARiqZjp|5kW-}79=2K8@5I+t#KYe#BV>*j_}s?0 zp%O#e@Ocs2i1rb45$lC7*)KvS2JIIz>|%R`?1Kz@Y)<&?VshS#2rePhC*Zo6oD&d% zznFF1j5tC|hpz-4{^M_h3YmC}Q6aM*ry{C0Vtn{m7u(%W%6CFWd7rB5ddRFR7ZLn+ zI{1YgKsx*=crb^I0x6THLQ9_snLMnk8d2F0jj#P^!)Qdby*I~95Ya2s*+%%SH|@zm z#CYya9@xd_we0la5<dXx@Rvv@C+rY-wjFkgdL!_OI_^>9XS|lK%O(yt$~M?@3G4MC zUIdx;kRN>{<W$J;p}?a~`p`~?t)i^-p`8vN3ONA0vdsY*KDm_q;O1I(DQ$ocIL7Ss zM468Mr#*H$`asC=2YqFyXKQjmlhLO(9`;?zHnLv$(C#DHkWL$zj?Z*r;1AC0bY&-O zNXM~8>;-|ZMLKL0x|*|@_{v539Jbkgq08(WH8vn##_`~hQSm^x&%5F!p5=5I>gE4K z*$h?It?_@GdV%kQvX1pA2OkM}1LPG_-UJ!CNZ$+`{Lu$K<hiZ`eJA9ZkTWG_3*-S( z-U=Dxqz{kjA;e-SZ-ZP0nLLXStED_2@?6O1F9-ULzY%H63pIH$WX1WMl*!39NS{*< z!d3<c?Ek)!(VjvjqdoabhTY?p47-JFqHG9<Se3pFUy&(!JBU?Xn#{iM%W)M%#Ml!u z=P1TrUyi*TL?2}KR{>&%Oy~H`miWn#p^LJ`kl{mB7kQtSHgF&3VkH-7V+`e&sC1Nn zM#-fbk1m^_r)``wuwTe&mVO1>!t&5<nYtR=kZpdn#ZK2{C#DtKI}j1$Et7Tm5ix!; z$&Yq(EfVRdU*Hr!%8X`x48YlS4TY{Sx{S75$@w0Kh`O#MzYj4UGHoCi+9}d$Bl_h^ z+5@b8tmNGEX?3B@3S|SzOi^+saLNW<M)`iM3w4sWA8kmKy22yRUK5bFN^yFDQy5(a zXO_m9_5TY_C%QrPdo*P7v)|!6etjuyhHZZ3Lmo4fZNS;*s6NepwnJfb8Flq%U2GG4 z(x3d4!7pTTgR{TtBdpK;SuguY=Yee3i#*$Jy8m_A#How&75hNh_HBF)o3CP74<g5h zDhu7Nmwl|#bs1#`c2V|+Y!8Eu*Jb$TYL=}*#Q40LzIp%={<)eyoQjCH3%MNfP>G)l zdALlU2ziv0$3xDOm|DnKPi&sCkU3vU5hqB@LdeAulMA_8Vg^F4K~(L9{Jd%l>bBP$ z)bS&g4z3?7d9hYjm*Lw%Z0~wR*guGETqku^7xG?EJR6Xw(sda;*N`WG7!O&EF^sco zIIcz@UXQ5C1~g9OWh?$14Wr9QzJ}*JgAkok#=6CG9+6JjqhV+R@mS|L&TX0YFdbu@ zeQL|#9IVC+cx*c%+ieG@ovzC$JA`F35ix&<(1(2yF@9_r_1Q9U$`6oje!rHk%izD3 z{IHk&*OH(9MHJ~i$YJY)&56AA>Bwi`r>a+%(Uzg)4<f=pe4I)gE71m#&M^%C4rRR< zBkW6oxdig<5>o(~<rP2VmsPze|G1KYv*+(*4X?{+<8`#B7!medM|%noVb67(FPsbT zk4PT{c_?JsM!()H(}}@c6FjAm?}f~=#FJOq3E8$2INP>z4Wr8*3}e=X`Z>;pJODDr z*!8qI8xc0!82IRVj(^z5>o|c4KqgMv0NFm50M0(<0=H55ZG?u`WsLt}v<JT7_#Z|a zSQmUI(petkP^1SSV;qWf+Kjm*(#bajGW|n5%PZR;+qMO;)q(j8C}W=w<Um(=U3OwQ zVB3R;ZpgF~_0ZM;?HrE?KMJ`3GW;MgXa{kk>}1Foa{`0DV*d)vXvpYGk&b@j8Y|>- z$gEG<1KIW`>a+b>pxKW)?DGNC@oGBCGl2ION(S#{C08L&@#}H~9?NHY;}Ox`8`wsS zi|}KOZ4dHZQJh}j6sImb(R^~wwYY|(U&T6r`8b^ZBo^zcEsucAejJO4w%h4bA=92( z#4?!<U-Fq?oBsicS%`Gjr|f}jANNuISLw)O0M4E-i=ivLF2mj%Sue|A9NtKq<=T5A z?exezRTj9{6n_TtRJtys%n0RM`d48f+qUUG)MbpNn^+dU;e84ra~x7vJdod1HXzUD zEYL8zjQ+lv?V>Gcn~>R0mqBJ-enj+_%@5t?9H^!1vWZ7>S+)id_6vC~Wc2GTtZOnN z`ccTVzgl9@KfJeg3w=8Qu?A7K3$lG&0GHiHl(FqWpW1j`j>aK@<FEk{?aZMKsE6x+ z4(<F55$ml;XT2D2BE1nZ>=g1|$TKBoBjhJE%nD8Zk(8T&c|%LzrpdcB%*T+~Ui6!= zPqi1e{x%(H46yIlN^aEJ4x8Rk>8Q{4Lo>=K9$hx^*go5iKIhmS$+olK85JJ#TZ+@G zrRy?yMrk~w{#zc{a4X9WM8uf8m7M($Q)PNKWQ@aG*>^(``^xkHWR_7jL*AxrMj3lv zqs%)h9cA8C@(8W0F2kN&&7NG%9+58X$<^!;>EQl9u?K#>jdiU@gkOZb0W#Wk8|~bL zm@DPYkne;{o7W*?Jlpu7hR4{p(@VAVMUYu`86xXbzJ+WbUr=|1@*(QB{fxS8KX1{> z>hdL+Zd_N`zv!>q*)F!_ddR9RuwTe*3v9lf_Ry9B4TCvo<L5&rC)>MLODC_g|9`RB zgGc{q1I8og%pI`V;e(tA88$oU3$Mg9LIzG?G9V*Qlx2GdNPH&bK{6fVn&$}uvkEf& zAUOSyvCfNhwtWO-Rd0?akCJ%!lIITsPrt#3f+rhtvBc9J^t(vsJgSiR!;q_GdI0hq ziASAW-vlS^#MrRq#S#x&c(3mcu3h9u8*Dq*Nj&TNiNxFt8GRva2ta;SrnBrD68|>j z-$+a@<aagvZi%5i4Kkg+`W&*dp%F5DMa}~fe-82?4RaDQ`!0a=*7kIV6Ee%9?T$Fe z?DuBKNt*11%(7^^<08niUWX4@Io>F*NQaKV@o}$`VUwCi4vYhJp5{OsK2R9+rMgGt z$i_B&l@34tUde&>b2-|ojuEu!Lxq9w{-ESM7@};`WZrwvLtDgg#|@e71vjtJ^56$? zehWJVrT{u@6ByLVF)7j~Lk=RUxd!=<vR;-~?dAMc_Vd`U+7*5+WAiw%MTRz@O|<8` zw2gg@z7TR>$UexlA8qAa6X}B>UoX?yR*pGk8@OzHP{y_sxE;#o(HdTteVA6Xhc*Cv zC+mejgs%9JC+_{mTY0+`C;HL0L6@;s+(jPvSX}=o9_SydvaC;~>oSrj#o(V45%mc< z5i;T=-XCD_V$Y0{(;ySi;FEaPfoS6~KBE;LHbg5t#-8900FP+nN8oujg@<or6dryP zc#H*(4I7W~z^#oU6hKz^$r4|T97G#mis#J~z8tc`S4n&|@Q5~k4lY|1z6P?w&z1OE z;1O;7LOh42@QWcU{4$AO1w5jSug58q!mov_@arUgJ@AM&egmF8Q}|7g6@IhCZvh_B z#&5+?SNITQh2JIdyMafv@eSyDh5rn)!Z%9%Uf>aJd=s8&QTS%a3V&GQj{}cr<6Ce_ zrtqzhC7wy_U#^#o3hyxSe1*h2JdhPWL*g@mN3`*N3|EC82wCB?C4MOIh&DceXD1YX z1Z0KJk@#HT5p8@PmJ5X+4O!uX5<ebzL>pg#=N1%xGGv9HBk?uBBii`6m|_ZF3t8cp zN&G6{5p8@uo=;HtwU8Bloy4yP9?`~c!0Cj-Z-T7wA&K7xJfe-?j^_syekWvw|4iZ= zfk(9QdvPhQ@J)~vzD43&fk#yM2m{XsNPL77vcyN27Cyp*b3;TMACJpPg-?X6@IHx8 zx6UPPd<MR|SNKfG3LlX85x^tb_#7-{3ZDyE;U`OcG4O~sz7*e&D||U*g`X?&wZJ3V z_=Wh+THzN%R`_)izaDr*8@~bHDJwks>r#c^Eb&`_N3`)<vHU802(rTOlK9=gBii@| zYztQSMv2)A45E!`!sU{}G(%RLhb8_v@Q5}ZeSNvYqpvTQ_(;RTM>?_p6j9+LO`PgU ze541m!pBQ|BJhYd-iz;86+R8J!Vi@AY~T@X{7@VU6(0TGSK;#{el+liHa>{Mqr#7e ztnkGWUkW^;jW5UHR^h84D}0T_&jlXQ#@FIIK80ThS>fv?el75bHhvv0Zxnt#WQE@> z@mqjLwDDW<-JHUQAS?V%iQff0qK)5;Qx1i1fUNL)CB6xGL>u3X@4^)RFl2>qweU{E zI)zYpClUroywij%@y<kv_X3Y-<J0gxm%{rXD}1KJ`+-Na@dI(%r10606@G-o=Kzmr z<8$%-k;3OeR`|&hUkp5=jW5OJmBN=pR`?o;p9?&qjjxs8q0kQtAuIeUiAO&>5pDch ze9xlz*FjeJO%jiOb|TvNEx5!}_^pr?e!Il)1Rl}G@4|N?3cnk&!Z%9%Uf>aJd=qX3 zD10+yiH~wx_$U+SeTWJl<-zv|5+4;0S>e+qJ_C3}8=r~OX@&PgR`?MTp94IijnBn> zc!ke{tndXAKN)yL8()l5N`)_ltnhOrz6N+i8$TEKr4_ywvcfNuc=THo`%Yodcf*yu z7P7*lUw94^g+5`l@gdyfRrqa?6&`&d@D0Et+W60KDWvd?kQKgJ;tvClXycFLo~^>S zK$iGukA;tp$9XrR!bd0K5=P>qy^s|?UE(u<N3`*oxOb}Xe#i<RkoXb6Bii^JTw*DF zE@XwTlK5)i5pDb&+%r`88psO2P~sN@k7(nU;Xa|luY#=b>m+_X@Q5~k1McrB{3gf> zkA9*5qqkYn#&5^vpTh5itnla;fk&T2Bii`AxW}dNO^_v?AH>Hvt*G!ZChjRoe2fRO z!e>Z)Ch&+h9zMTA;Rixi_#BDP1s>7H=ixe9;YUMO_{kDq3_PNZFU7U3!k0r<c=U^~ zzXo_j8$TD<stR8VS>ZQGJbWC3XyZ5InpEMpKo<DIBJ60!-oAd*vwRHwuk!l`Uo+sE zf&C%-{eJELph1J6U7g(@9|#5RAKa9Cvm-)M!pnxk`!oKhXoZU#@aYg&)4Y!~$hc~E z@8o&OYm&Dd+26f3`Nbm#x|>J#$JeellXoOHyiyFkHu*sE>4e~s14#9r8e*8I1{<-b zvJID&ixjua&G0@4&4auPfa%uqPTSsBicbwS;>hBUNeJdRk2J?G%!z(>Xvj>g&x&e_ zi7~U{T2HqfKGxKGUbClL?H+HN5kCgfs(oIgO-NggG`wZTk7;dbJC5|1U%YQ$uQnrT z%(E_$*79sh{FrC^Ah-2clh3`topmbs(~zU#64he-PWn0TGyHXT=hD3&v=!{#*4DcB zowo6N-)(Ez`(9gc?}u&2_wH;Pz4xuQP4~KHnopW5UB&LH<~(zOyUZ+gJ!L-an&YlE zpEXyzvm$%PW;uIDWkvUn$%^akiMTf80N-JMkDRESXme$jv&`M>?zZZH+3h)e*5b1s zpIh)*htKsbuAXMAyJ!5d<{tA-9O~gt8pE8EW>4>tFA{3w$0Ux4dogZc$dPp{_+#-q z^1Pd-h28yq&z>4&#N~}mo?q=kpRsq=(EGj3<c&uT`4;7sReRBMr{l*YHyk_AdmjAi zN<LJbaqN)qG4zRv{)vqr%icS&zxRBkxKA|ocAwbqd$fA6?7ME~PT~49=v@NVS|BcH z+0j;TWPfin&wXT{uO@C;qnYGA6wz(oAv5x_ype&DL#}S?kNxQ_GcWs)E3!{spNZ8I zZ;ihvP<$w|+lE7Cw>Of;9x}QuKr787U-YPj54`bXk2NRE14n(r*cP*A{E_A!=7}bs zIdQ_oB9wYFuR2hiHV$PM0<#eavlXR)sy%iH<&17?kiIp3+;Nmm7<c4A5AzgC=hY%- zBas3X*=>P)ys9;Re8TuZNnjLgtqbIwboGpXvG~{*JzOYTdwRdmfW3nQ*{>HL*`H9` z&jGDZAmf#ib0-YrSW^#Iz<qGPFCwvj$T+quWbQ@#n_Q8X1!gyyk^KVmk9_jB+2roF z8rpaAQUcWzT}^0ppf+JFJ~yzvY;99SyAR^WCX5ZtYcjgkH@UjKse2%=cw!3DHzbTx z<pK|Ydp=rf($@HK3F9XA0araxZ;(ZmM%o5=Arg!WR9U<AtZz1Q>Lw0GT0Hu}Oqc+V zM>JzZ9>DlJwy(#$BmYXMO_&f!iJ$OFNx;i?e+AEk%s};CSCSVabv@@~VEzGD<Q2z0 zeap0FV*I#3HB$N^|MdeH<HWpJvM+`6_<+%E6=(EBk9Q2Th;FskTn+@0^TejtkHV9I zv72iH!K3b^_!sAGTC?fJ0B6nX$nVG$A(_(1gc?o7B{@!S-fpvex@kY^66L}3y0S); zvh2weEUZadWU-tmF=9^?8>V79GSzS$DKXp=vjbz}#~u9mEpyLBZARKS&$yGY{G=-> z{=|JoH<a+axBz7@fEJhaPy@byz|Euoa;{>gF3NkjI^#c_t;@QYtxGst15-Iyk9`_4 zk9_pD$yo|LBX4A0cHn_S7`b_UimQvQIg7E!IUAUbS&NaRM$p&I+TsbtMS<BsznNEy zSs&4Dp_sd3-g3@zzQ&K^yySf4+~kZ+7#En$@v5&4oYmmj=pIjW{CHvm#R=nKQC(ov zH_lt9nzsQrN3WQ(149PqYhXTGzX$Vm4`%L>U2mIvBD<}Ijv2cLGY8s&VwY;|9yjM! zdz<%QrgmJZfPXWuI8a-hg1q^AFwYaX8ksD^dCD1&oHxK-A3u(B6zddLIk8Sv7xzK= z4OR^TdEVNv2XnRfznQD^j$kFuiT&!6ka^OKiQel@@_vEVo^;2!PDaI;C*xu~r}uYX zc<fIh^K?^pPoVboTHxF#T`}e{j13-9AiIz4ddn>4aoeQEV}DxkFjfJ~)-9Xo1;!la ze64+T&8zG8A=N5@8o@#adK-0;=cBinBILlB;)^V%S6d|4`!>_3uQoL*rjIP9V}EM5 zha6;mOELAcn2r@2u@)ERpQ+f6VcsIgT|782_Vm8^g$d(ZFa}yUUrXhDT`1;jY5RN? zbJoH0ga+PxGj?k-&LKkHm1AN<#y|g16KX6qHWBAt5i;WHD0%At`TLp>OIhJR#fR0^ z>U%0_MdH$gmHlHyJ<CJJp@<~s8JuZ&>iWCQdZq>=8t3DDd!;`*b!mThTwSV2jaw5} z=eDFeb4}0e<ar6fr0r+6w>8EO!Fk2W{_fN|tGs6b%V))eObeg&6x!Cx|DjgZ4)w{k zEMaBh3h(l~SpR%a-I=%B_Bur^%^$S21l)1;KYoBVx$C9HOG8G$^mz}NMs~oJmoa{D zz&(D<akr6?m$JVhWcu^Yyw`U8%v){E0awsPI|AQHSmB@Vtcw$@X9pWSnxYLeA?U6< zTWs|3&yTQM7cC_J{J1*H0$-B5-ap^>c!cPQV00tirWHu_#W%SPlXZ<d9CBD?ob^LW zQfiNyUIU(Jg-<?<9}4NAh9OxGeTMIbJBF}6Y4P2bv=V)?Lbh-j`ySpD)}$_Pb|pEj zmas>T{?2f?(G$tpJ>maE`u{Nf?_T4U-tX^r%eF=j3ZWOWPKHdYU$TCWerVzUP)kRP z41?#g7#k}Sm)my0)9~YA+G6=A7#%V^D^r)bSD=^vaps-2BdKd5>MRe8i8&OPTyy$2 zvGKt;pz2cBG{qSnHA=j&FfG}+x<_qR%lP1{wIPQu#XUIW2*!krwCIp&afoqpPK=YV zvr}PTW76_O<)f9T11;vru=*7(Yec&m^>$%w{Y;GZWqGFM+q|^K8oUrP)YjDB?T<Bt zhtaP{^SjJ72}^pKS*PP234<CJ;QQW~ViTh*DtM$3S6mU#_@j+A-GtXS*SfC>MP{9B zHhV_k%*?gVjEp(tGNQ81pf?)W8)G6G9|30sYdN#Ct%Y`;*@5w#mMCmy+SzLj)4S%( zhi&_N&g;4Ar>k&n<W1b3hSF!VjpXO6#|JS!lMlXW#GHQJc=E_6jX7sq;*x_A`6)q1 zzIm)E-V7N*SI98d_+!7puCrNZoY#gT&%EE(a28itPS>&Qw!??KZEelowwhzbZHH6l zrAQ0B+tV;|J6P~WM+?{vqps(?<ZO;V1NH{oXE;~W*h=ev*0hEpy(5e@MxCVxkJ6(d zGi%ysLp;yWv(6>-ZOEiwL#Ezqmb}~HyE3m=o;zU`>T6A1?e9hQtb^7HD$aop!guTD zB+ThOCoXYW{8H~?^mX=OPqOd0C)uBuk{9P3x))NGhb6rjG5#}tvFiCvPu(Gm-b3%U z9X8jzRO=DrplJukI#$94quyN2GJbEMSG1kK&&vN@Ta!^AZRKYKVm<XQ)jHP@9apy( zh%>nMGwMAe-x`_z*rwPRS95HPxi2;b*Ry+|CE|!D){3)O`5n&H0k>IajmE4i8-@&P z#{U6XSDwFewEGET`~UCl*X{OyOJC3r^oQk(M0g|C%o1K;%fGSB4<#(~E>BvVxT5hs z<0t<430BX&-`3)(YjpRF%yU^O_R(SqdfnueRh~DmPyEuRx7$wh_z*P2ks->T<ezWK z)zV$(pO1OjEcy~FthMIxXke|LQMLP`@p6@*yFTk=*5m7Hf&Rckd;B41pwB)R&Jt3x zPUofk8^?xVNyuR_WIc;^J=;}Z-szh9XaArVvVR-+@pF$H`^(um{~Y{iT~^zZ0~g&m zV%z8YKN$VsvH?GN`_k(U<t~pMe&%<#oBf`@H{+A^S7(m<(a32F{`j4WmXnj8C|;Gc zd)@e*-!FRYnbPu{ysr+v{^^9CH-GP^Pdz(#al^~T!mWRDpV}LY+VYE=qIYFp^z@El z-6G!l`L81#J?7sxWJ&iM?wIn~ft5%9@ZsUj`zlv#sJi6eKfC(zJ*Tf}N}KWbvRjU% z-hW}Acjit1)x@}$yuazyde8N@zWdQ^-<rRM&Q<?@?D32Lw*IQxnD_d>k`O=U@|x!S zg75y|#gt!;y5P!xJ@CV&@7I61w(;8AHugQSY5Ny%4t?yd)rHAdI3Ipv*2kCqqa<<C z-Mu{zIU<~9yf0AG3r~D}_xMlq9=@UIuGHjpzZ-J-gcaAmeBTEbKYP=W4QGNc-}=wU zr9S_eyMH!w+R56TGnbr*$o<Y8|N2YoJAFU+%Vk%OsQKl@A3y#1D`Q7~=Z#)dZaNUR z>ig$H|M*?jjEF~a4<|fz^U5FJ_ovhEMn0YY@1D=pFaPbd2fkQ-=a^4-|K_nPgH^r% zG_tXz&!YFYkC^fHys5_*&8}V@y#Bt+U%&rvzxl@<uN|)aS@Qe74fj6u;gHRf{yxh4 zuhjmJuKey*1rzW3!A-ABp4Ir~eH-VVdt`0eY4eI@<vGQ{r*HZyW!dMYPu}@p%dcLp z{L`fsw?^#w=fzKd@7}v#?)&N&88KPEd^_@qcOG2xr)$g?{25Okz4W&)yc!WX^^Jo` zkB*=JhqNnxI(zdo$6}5izP)76^F^N?|9y1SZ~pwpffFy@_LFn-2ll(`*&iLddu`PG ze+*c6@{1X<k2Mbt6ny#8g!_LO{p+&$?_S?~{^=Eei@xq}*GFx<ZQrkNUNZWrU*5m% z`%%v5-O~&5dbXvkI-CCSulKK<7r1ffluw?UwW(?NuVdydsQq`!xa`^65B>G|IqqBL z4DYtTW$s1qbER?BJn`6oD-Pyd)V+K|>DY?fzlv)++wJk}d#>B~=ZgkiIrwsSw@)S) zkN-*Ux^bibm_DfA5RZGxD@(uk?{1q9t@x-{-IC{OLhsyB_?hoVV`tr3l9rH~v}frX z?$Fx4{~CHp<BbWuk}r&NT@ZV8!FxZu^0oD^Ctmd8_U|1@dHm-yVsa0y{@a^B{z1W4 zryQ64aD2sytt0Ne_MLHOA0D{i#y&GYxb)r6UOU)Yyk+l^Nq_18*^c3p9*^&_@{+*Z zcf0!@AC>;lM{i!&vhnnQ?(g+^e%gi4W!?JOtNvpbJaK39thfHT>xy3_mA+X1`s(h> za?aecfAS^kTNiFydw5vtJr89zTyoXoFP|KF`+J{c|M9JbJAQO-)$Z6qKRNNpA6|Ii z^Nde_wdk^8Kl|;v%puS2&8vRqf~omC>qb9(^Td-+^>}-6!<MFggHKI(^mji$@x$-e z{HA2r(mB)reC3OO_)fwvwr^N{ZM^rPpElJ`D*NlTZ$9|@%c@;vW4y<k*Zj)y*d1%u z?^|A0^itcthkI}RgZX98rhRYxyY7=w(+7Qc;D@f=eKyVcxc|CWf8KZ4rTyQ1VVVEx zAKe?Ox_#?4t&i^bN#o*Oo38q4L(e15Rikcb{`AxjexDbYyyRro%-cSG>c%fO-L~_k z+eYtQ;r#n^fBfY?bEnq!dMoqdEjJf^_Xp2TIN)?Fy!!iRo~)`o8+${)Urf1h>@$D; z=+6D|_gppY<6C;H`Agx#Yo7N!Fs3DO(HA|2&inAi%Mbmk@cpa*k@l~H58U#~(E5-5 zKIZPDmBYM=AI`3P@0#D<b?WyA^1pg%+~2R8o>)ENuTSjw`LRb{FWz>2cKX1~w|^YS zPrC4T6<haw$CEL1<bt*fmftXVz2kn<^NY_LHt(&Ue9v2pAN*i$;hzV*R-RKjzG~N& z?+t%<(xew!=FFLUXx6ONCm($9skWm>FZlSr`+oiT^y#lGdFP$c1%7{Cgu@Z};gl&a z-gCtj5B>Yxxs+f2<u4O&d->&k%`<1Nd3wi=n=XFz(P!tq|9;@iLk~Uq<(V@*UmY{% zi$%BG^8VSwhhuN}+0UAPv3vKF{2%@3tDAoQ^8=UG*Z=meb?Z*;t*BU07YdD=@vC3G z{g1D{O1p09(v7*7T{g9J(4eso4;yyFiBqQ{9^1L|j^cp>$A9;Q7mok&U;i5T|8Vy< z;87Om-uUzEZZ^+u)^$nOWfLP^Y19BQyL_nOqxb}ohLF;QQoAZO5d#evV~UXzJ-jU{ zYCr^(@SSpEQA;hyf`|5?<@9W=Z4uGqX*oSnX-~8q8fi*Hj2IxA_xGD;=E;*7)b~BT z{@4F{=gMS%bI(2Z+;h*zGxL1RoH=#Mc;{Q++VI2H*1Hyr9sAYM7hQC%;qe4E{`%K* zXMEuc3%~n|U)++2MhmXlwCM?dM#hElZQFhv%*^!VXJ=o1@ro7O|LdK1zWC~&|9tuE zE3R1lo#&o=^~BwG|3kLVckv|;Jg_5GSXe(HH@E2Oi!Z+NXl?Ct`)<1F<jpND=boH9 z_w=&KlfV4Wzx&;-|LdRr>9x6|M*aQo|M<tLx5VS$`rOKuo1gybSKojB-~YXuefQ^o z`AeaR8~1<g?fv{cd-opv$;~(a<;apHKYR3*S7v<kXFq#m>BNb%n##)lu%*2G$evWH z{lS0xx3ZtU{`&2|{Oeywf908H{`)WI&P5)&?z&%Y`|_9nbJ6(mUmNz|gH5Zizy9Ce zJ#!}Hak;!7edjy(wIq|B4O6B}zw96W;e}bdcKz{tbLPDFjh#C`T49>$jCJc)U;Fsu z|9I(lzk8srxVZGx`|o>hJ8<B?{_ZC~`T39DeDm&UmtJ~XEEG!ocVA!bhwr@?{MX<7 z=8pSbeYHFq2!t>H+~=<PMMp>cXB8E1U$uGj_Zp{9KU_3?_{0q_z4Z03egFGiz2E-! z{r7(Hi(fieRkiztZ+zoV<8pGw9KY+Xjp@qDmYn<U+p^;;U-|c)M~{AI`pA)s=8Ycx z?aAxc|1hhu@qslnW*qwU$&;gQ-@pI21>x|N@BiTs_Z+z8mUkjqS(p6dTW>9UtF3Kv z)wppt)K8i;JM8z5czou}w*p?TzcfF;X8-*8$Nu5P7r*f@zx{3Pb-Q=}^`!+1o}T#F zW4p#~-1y{gj~%<F>z;ca`Hw&SY1|_R4_;S$%{4c^dB+|9tUvnbn!W$=A63n>Xa8pA z4}Q?rT2r%c_YF6keXqMa^WRRKxa`ovg+J=P_ujQ%diL3OLxvH(^Mx1wqqCu*vFx(T z?wns#w6r)cFaPULKYi-1efxgB`B%T1^GbXB7oPb2@0YjN*Edi7{O2#-G;7xHZ~d2l zIeNh(k34kY>eUan)zz(EK6UD}Z~gekFCAXA=$ZAUrLA7KJL7}Xr}eyGF#E+@Z{4}% zs;erV{rcC>EPnp^*M~p!&|_PF{`1tNOD?(MiXA(if8*`9i~roy^SLoww*1q`VZ+A% zX7S>m{@{%_>N3}^T{XU`>HAl1-~N*+BSwt8=;4PSfBD^aV-LUf+RSIZ_O-rbK|#Y) z|Mg$@y4S2(cjFUJ^!Qe-T9JFf1;ZEq>%YGFpU01nT{&&quU@aN-hY2d$uCB2-MZ(d zE3f>!5f@%K?C<yNd1cqUdA)c1^rycoj6}Fj4)nq4n!Y?3xPZ+#kN>1=n-&bO)E{&` z<bK$*Hp3#uR3v^6PY=fK)9-gZ;9lu@FykTb!<lQv!Xm$)$Gv-6Fn?OGbcKGO>wfnG zo|PF7dLPPs*jURwt(|=PK7lXXFHZ|h3wqYdhhXQUM;-i$>A}E5`opfZd@~2`lj6=N zFD6o2|C*);^QHx-+^;|2TIqh!^H9da-nD$z=O~NT{eMvwXC95ygVAZhf(P`Kt_R%@ zc^=MK>lK+h^JszXrv=TS%s-%v6Q&1459$xO9(J$wP>4f@en9A1K4jfEZGntD(}DqE zc4vA`q@O=zdIz7h$EWih5%SC-<bCP7>n6ntt}G~DTzhxJm5aw0Up;D6Y(mlaBHW%Y zy6c`hxG`-JHVCzTs}-tW*if$(ag$oD2s@E#Mc4uL)*@1imM&gWTXpNgnpq3)!M4J8 z*Ii$G+b2a&$CjHzq(-Wx_tYVej|)bM!BKo1EH~tKrXaa$Xl_Zy&Y;*9)RBop(vWc~ zT@`ly{dmf;<BGAH?``MH^zK?dvp!#TpDgk`#S=N!FFjxB87)&*ED(FyI?8(I9k<># zwt^)l+p>kX)!(_)soa2gXM{?!@YaU&6;))6=<}#8?QkbsP|>`q32Z@DVCijl*7k?y zRVD10c?*fz&Z-tJxci$Gi<aJc$3m@$n|3d(trz|Hv;N~g`5fx3-jA2Q1|^ikpmwR` zlSABj`K|yT2k1}Z8!P2G^KAo7IWdqRPzbLu;FY`Z5ARus{7I(|z$f7y<<L2{9EMj; z$(RL#!hl8OTMy52Qx_!<XI2c5*M=hP22D97V+jZf0~S4rf0gi*M>{BaxM%H@m$3%& z_JO9HlJOu23IoQ8Yv3u*53l4s1?(uV&qO!?ubh(60)oPT@jCpQ0#AA5SMm-3JLQ$j zc>D;bWc)Ki3IoP><DZg;Z$WH%zXf*6OCg+qS5C=z4FrV&<L&rY15f=z@QkCLe}#9- zYeaY`c_%=3$V<#aSjo$lage8H0XyaGN0|92CuQiWO-Ono4WP;!2A2Biqkx_AUP8DD zUO6Q%9|VaRmFUI4R(O^-0?#<=SBhVUJU{K%4X>P%cO3{0d1H?t8QUG@MP(f2-2&{8 zmsO7NQ02W*roj*0xTE-|%8PGeZ2gu4JLOS7)`@aTzrO>)q2GAwbQqrc<;ghehch|` z$ZJEm1ztHNZxaYkdB+f@r@Rp|j`CgrcIX#afiQWLQ}TWcf<xYfg9taklQ#y>ILdnq zzfO7k5Ig{ya!TIsKyb*r$^_pE&?t}Z7%6$@fF1J08Iv*4lvDCfgW!;NbsAw+ANev4 z`nkfuPI>FCAgGp;GF%rT=#<wBKGj|>mvNLg9@ru8LdYAc{ke(;$}6U9$Q0!*ka3hZ z7uX>$v=ZSX@X9Iuz6^pxzln@j@<z)z%DWYq^2D=Od@qCc$Dr+$yjoBkeA#TLNN+pE zw;U8FU)2CL>;S((aPmdY$G27T$&7Nr=h`I${89Nf^<$DJqO9)20BkQD-^j=EK8;^T z0WV=0^5B(Ial=4R*IvL&PzSCbDJJ|XK1W#@TTqH*djPJ2{{lSo4Z(8_<&Za~2O{{6 zpmIu{3aek6{u$02m33$(MP`otL_pfgj^~(cJ1`q|003cLCvAtYv%VS6>y+&fW;tz# zFs~D~LzsQbb_jEvwjIJzI{<(%$4T2E?5roobDXjr!ZAAlfH21i+aa892LKReKeZjg zsN;TzF#Cz^5H3VO+5oF?E9{KF5&^awI)0?bu<ekZeSEk@@Gw2YwnKaz0nQ`gL_EW` zLp<BD?GVO-if8T#*9K#=emUOI9Y&b-`y~;=oC{&r@7HB`AHuBPZ(3n-z8=eVmm|#j z{f-QC!!y?JdKp%gjWeHwV?6$}XJt5m0PFkbGOYMtmEk7Dv;N;66#rKl?nXS@!&w=o zJhTV>0vT>Z80|s7REAp+MtjiN@8~8V97CA%R5<+r!e|eAr3m7m)mXXDqHr<9qkZVh zt)R}rpnd47ywnHnLw{28A3=Du#$}6mY4|oxEIF*D2A3FIS`4*r9ZbX0)8@Ngu22;Z z;>5Dlv4Rvi$`zv%TPsU>fCEpAxJ|^Wg_>AdQp}*mrcA)oHw3>}`#DydGG3krLIHBY z=}-wWZSg9-TBDIo&>ZVYMN_(2i^u^hL$z}3&z{G)3}CU<b*>m~(T-&zX<}_?Ra_0e zRp8pH6@ID2M}e0Cvv0Egj{x&q>;`!9je+Ob3Vg8|Ly+e43b#3UoEZJjdl}-=@R&D> z^D;PwECQwuFTqz!d=U6K$-_3eU*aXeKZ92~q;XkM`6B%#3M0L(&tV6@6C>Zu%Q5op zLOZT=;1$3quM0MC)dSNG4_SOFU#3y=#rjR^<HRhBLHWBOzY*9W)1XYyT(GZ!vhy10 zOiQfF!nhn+F0r;#dF^wQ3-#fnZ4K#_eGtA(*(BiLcVeXVpC|3*pOzN#v)DE`Hev|K zqMQQwsHAgD&6D&(VAw<1kbI++e8lA|oN(|sG4c}UgUGxBj=Th2<|XK#l9%0PobsI* zHo4$DHn~#i>9nB}L%$%?u7t;!&vP-vzC%bS=#2=E28O-Z=eQq;O`k6D8qjY7X4-Q2 zDhChxfStAum~CkSJld*|vmTgvt2O{UDj#7w<Q-QSdD!)fG<La~z^BqWF|JP+vRudD zA;ZRn61Rgs4wyQ(!K05~$TIGMuW|6Nbl|lTcYtS$gZ{Jw?*^uvMeykRLOyK6^9Y0v zoxrb4dK>VY5+4GluBt4+cG;n;Z4=~e+X1p{J9InJIx*Tt=zq{QhB0jed>GRs+KO!e zeMHbP9<X1Cb1_)n8Iq?Mc(&wO0i1I1!_Gnu`Ky3cd#IK?u(!xh*#UWv$p?)N`PnvE z;TS8B#<oKv_*7aaMmx`DS=Pg&EaJ?I)xa@HZvwtt(!UKnMbftbmrMEr;7W;a0Iro7 zV=vpYkjZjEXMrgPI%l(tSHrIWrVh>U)I;eBY?l#w*kwfC_IQXib{Sh7X`R@QJq;)y zb;2o<IG=*HLthZ|Lf|}!6OvEqfHbxa;Is1upPlanq*44%4BLj0FZZIRZNq5)`s2VO zC4G;Tm!NL~#u!2@=D?+r|4D@B1GA0Q!NZ0E&jnsCd1z16naGPWAxq$Wz(0}vyMWs) z%>B99rzl4c0e4GmAWWT^*9qWaNgoZ2`V;)nh1XdnUtcEie$XFs(ANO7EJ@JU1GBF0 z2mYP|LnoX54C18?X)k4SeGi%l>k3Xsd6fNi<frT}?zO122f(Q60{LIWde4K;b<h#M zO3GwAxA~nIbsb^acKC6?w8=a0u!*2|0MC}V6Sz`h*plsE@Q}X3L0{{jw>aoeOWXtg zmw=hqQTRg=!ycT!37NgX$Kh2Op`U&Ig-*&=JO|3|FVN{4RbJ$w?8bX1<0V~(NF~#W zxjr0DJ5V3kL7WxxJ7CyB(A$7v2Z4_PS4vE~!45Wkg@e9EV(5!EM*DeoJ9wUxm^OSJ zm^RrDkL!ZclRDXDZ*!C#de~)$9(LK0pDHiyW7~msrtIm&VN8Ko_B8zE62AmoB=JGu z3Bc6t1^9Acv^g=3-Q?h3<iK?j9|qsO4tkRVZv&>xdGOClTm}rA2z_9W!SiRk-l3me zcIc=2k%s(K-=RJ2vLAsgRdy!^S?sgn0SHMP28O>>G!Wn@))Wfo0cV0nmyrAufZ=U^ zv>AJ!qA9?Nf1cz|fgj%HpO1OFl3xj|_?Jum72t=r`B!4<toR#&75|fxe;4@SZT{Vu zZ!7*iz>5EX<WGYi-sXSFx&;ENrop!MK1D|)e=F$lHvdt~nU(xDU?sm(@^^zD-sbPY z+*tAV0!w~9VDWRTrdRxWxPPA_J=(udk)AL43&0O=^A}=nDdp=4U?sm)@|S}j-sVqY z4yO3$0W1DG$zKnCc$>cgO-1pej?}(JTsN^T>1!-+^RLI;M)5ZREBU)6{~qwe+x+`5 zPf+~(fffG|$=?coc$**gxA!%I{q22?IwgNM_~C8-9yD(yANE)K8o8ntzbg-GJ$S|M ziuLbn<buuBzDBNu<evb3c$>c%W4M&>ngT5Kccmo%eDK5D{FNB@6n_=4;$I>8SArkj z=7*itzD6$C+S=FX*1KxQs_(yJaP~Lg&ab~MEWQCBKVjSi@_n{%z&%fDFrrwwaDMeU zEyVAYBAZhe^BanIZz3yab!2PWcw!sAhtuO{KERvOf5BLJX1}I?(AqXRwJNPgcBHOI zYdyc}>q`VKSREDI_{t63XB^yTTHB_O`-6_q+SD~^t>ZBG{W*_>$-f=n%YpxW^8eJ5 z{(fuQB=UcFVpuTsrL+d#X2IL+;63m$-nDt+`>RCI`o)EJZ1nMzAL)&sG%lRU?=MdK zHFso_XJaC>6nikFjpzivTfVR~Sj;jnF>+f|nQgc^@QyJ&blj_Za$5t<@efMz#((^m zeAhhwm#8-tNP7~-pQ`)%TE|gd+JGGgIM}f*yg9llvXS4ESYH+d@D<Rr2fyEV;mgmq zo_Ztw#Ix-k8Cu}IH_{n5o=I!#MnyIyj0+};FAXx*O^jYmefW*cwfII3Umw5*>n4Fa zGf~PgztCWL0#nG>bx_magZ<KmLKgjkVtgI9dfg;&qO3h$-B(+jUCgxWy!-|y5nNXk z5fX+MBYoz&QN8>s$|Gr$YDb-VGo6WVT^iOE^!gElZ$MbkBbUa$jPh-aY`Ur}k(J$~ zO6YIS6<=4RJ=gZeUu_*}PNa?(zll1~&4N@l{s($|T5wem->tatUBJS_ub#N*@Zm&$ zA`5jfm1W792<v2?`g7>-J6P_FJ4<gA8mEl3emcWj`q$}N@~N$<iCzBTiFW_+SZWl% zCtK&=*>Kv>jdf8-b|(U9d=2Cq6Yu$Jsg~@oA6)!}yX>yZYVNk+;CI+CUfAxnLGOQI zY_MGe-Z%RA%SKCs1<7DxS&=a#m~XK<<+TlZpDNFmhWQcRmxD;hD|3JQ_m()ERN#={ z3cTaQQ@QK!tf;xO_L~FVdm+o6i>nw1u8&3WJn>rbW>o)MOF}Fokj{RU1&PNNP54{A z&0;-=;CSklHpAFFz{#;zyA)Jnw~Rd>-xY{wTmCe@q26bCP0HqvOX5QOdL+h=uK@p= z;raZ9bov1NJa|VrbkZB(l~Xdl0)oPTzL)T?6`t~F1IAI_o$yY1%MosaS5C=T0)oPT ze(0vN{FKLEC9e_KA&=KIF?Yw0a7xAl2q_Gh^(6k`+AQSxWgPX}4o`Vlf6#HCGWn=O zgoO;o{|KJH(z){iXg}ptUeAD_Fkqkw{|>{m9DEkTIOcl*-YGAQa2~vJDvs$?8z4N2 zf4@{r_*H!TRdo%R3ElJ<0M`u6kNJk+2R&CcsK;V><&-=XR=+m=|A)_2)iW-kD~xp^ z0NV`RYcK%I9%BHm0b#aJd#t2U;7su!Z4>cKJ6ncTW0)_)`w{Qg#KZ@WjLtJ)3A$sH zlFw!AW5n$dNeop3pW4`Q9IY$|eKL?O_dVtsNj!JqxQ#N1=PnW8t0hhYPm??|fN}3n z@Jt6@<ltE<d2o+~`#1}pdf-hCo*k0sd!S=pC3sqZIlgdR$2I|5isv+yz%Zr23xM;0 zIfhlkkC3<qI0nr7HMD;|Fw1ole4zuEO8z>~Q4ivo5OqrdbL~139%T`7n3j2{btbS6 zaz&jZKY<bC{VjnFV8~LJzrpuCZ8<1Qrn)x)UBwygyO4IO#O1)SX(siD&A7j|;3)-0 z`30T0TGFQhLm!)tF;zS_Y6N|ygZ{YWzZdi-$-}g$3p?$z4*WC8KLI>1I_MaSg+6J} z-vn0oe2*fmYy}*mt?1g|72SzZK7)4H1CKftcpq>Km~~MAkGd0hB=9%~E_PtpO7OIR zXC5&1nGcUTHIRp>Q(OZC&kYEpzHB<$sGvUyI_x0uT;T5kQx3}jn+V(tOkGu3fbB9u z?+aCV_d9r;7-X^b_5g$=4g<sU6$Rm<=nD$NCicAv*g>RCfD7K{pMbWi_=|xvrJPF1 zUxhHd&CfQY_}OL@|8mK{0{rkc|4Niy@uNLi_a+wHde_3MC-kq*K5cC_?y9S?QltAU z`*XS5phN%K>_RPoHAT<aS9K$Tbp^hsT@h}|ZEjnlYh0Bi{H0mg*~2*d@<%-(-+N0w z>WQCiE7Q!ho-puT`WN}-ej=+l7-{Agz2u6Y1K*^NdN`~9;DFv2xrVEPQ%BP-a0bTw z<&Uqf=&@$?X-%XKMz`i|E5=$U?;6h1JA#>6XMg!o&)I_?^@KAbM*O2w#UJ$?=juWG zb9G<OpKtH$jh{`G;p_Ctx_%DZF=D424^|@u*#{AFbsG^E=J=%u73*%$s}uh0gJ~lh z>w@ubg68cOvVbxz)D_UPR$-M8+>VtDQg<3!p0(cTM2tW#3&C;@cVui^^)o*_5q;(v zS}weP=k0Ba*G@c<Q~bx%hPUjA?WYg-or}M6+UG5OYE`!N_4x*@P%||>(EN^9&*=Cy zzPx{}?<4QFgtyd__+Hw`Y24Y^Ze;o*FXybfun}uA*HevHBb9>Yj~u#i)g`2PzE4_# zMZ2Uivh7rB+RIeom*c-`o1uM)>(20t32*#p?5g;G#{UrBp1O>CRz%09wVcM%;LgTg zkw@wxhU2|R@5)*AR5f;{Dn$%(%E6vRX%FzI$jgy!<6FZA6T9GzeT^yY{olTw`}Wyf z&D-2MF2~B<^;9(_hF=Ef_6Tg9@}}{XzcN+HwCko{KjTZKGs|X`e|h#-l5^&Mb>7!* z_<HKbn{HijTh+ov->hD|<o237YVWN3*3!G`?_TzI4foue7&~tKgsZN;rg-9*xRf(^ zJrz^((VUC%ZOZgui)--5Dftebf+5#cWcb^!hpaBlcTn!E!fW>ZD;gPrH$tok>%DzR z#djh#iu-^3n!b3yien3|^TJ^)8{pKqb1A6AYOZ=dKF$ePr=P|*R?2ha%V$Qm^GJj- zS6u65FtY(_BoR<^ZSn=+%ita5&@ry+1)wRX<XsPf!hps>{5uR!dDKP8y9Jo?T=4v9 z!oTSPTK|*`=p*=Kl&ckh*FEJFAKxQW7|=&~&{5>eIXmN6jtAkHuXJwO8P_1&skp)G z2HIq;&DAf%Q3l3(Y2!}#Abb`)^9{idS~q0UcC+D?Q~9c}`nBo*AFUhwGUF0t%ywow zG&q*Qb_lb4oIk+n#h8S!teooz$3nxY_XE{Bz!X%p9q@ZKd6B(Mf(one4eYlAr}r{s zy>d3N9}CG*%qO6OUWm{LVDuL~0gQSU^Y0k&REd`YR{}#7z6Zd$CV6;IpL1LxhwTGx zP^4vh!W=^I&^8YNv;1rq8103e<G{Nle<Scu9Qc^zC%xUGi|Xx`I0pJh5=Wp1`iqc{ ze09_dG4Chv*@B=$N1bI<^a2MS4OwyyM_UB)5r(5JG8IPIE>M{5R`EM9pQmyCpvMpo zezAUlj(ncR^@+~(NnqMx7yK4r+Oq|Ix5RUSp97|CbAe$KJMD{-j&Xp`NrW8OP)DB> zd36G#jDp?)97B4gC$OzQ^svhXJJ>u9465}U$pa9Q7`Eix)PB|k9fq8nqU_=s6m0`< z^G|_ps*jq$Vy?Mh@i%MlzGH~F<9YUW9XGK!VcppOEOW=gYUt2EcdXRDaYS#xj;5iB zoO8VC4^2#GG)!4G+1jV73;QC)N>3YFFcjearq~h5&AA}&$mWz?QW~1X5Oz>H7n#WU zNvr>;{|N5;H;h_V07-f(CoSfnt*+?yJh8(|t1Fdr=783B=76qSI{;zsx&qG?vY3B^ zKRh{|k??IDwbj=!sUey&NX_0J{$cz~LzKE<?ztl23s2--_Q)<!{n?Y4b9bhmxiyoq z4U>TlE9L1-ttjEUL~@djJKW$-8x4Nm`)?@j_Fd%e#69A0PG@gl@6N?thqOH0!`I?x zpJ-0&xWnzP$O&&r`9Ij7ab{<#%g_S1^xkq7chWDyUV$Ykf44E*RCL_?cI*e&P>_lu z2O||_8E)xoD6R`cv3C<KcFTvie8lG|(ajCfNHI!<9pg@8&!N-4@aO+!>uKyigV~!q zJK8X%+t9roSr@rDlTT~4x$CB^i-fPHL}>0xWYrdT`g~dOv+<W}qhVRLYdc_vH0qgq zf#I1=bd$8M(U60>^uu}?kNRsScOOQ#xkgwI^?dT>zP?y#w@=3ohgvX!-Tt&Or~Pj1 zMe8$Sd9gBZBG;P92_v*M@`HF!NTf^zn3uH|R$8y&K3jfk-YCkqDY7{-1y;za73Hj% zQaj1gCE?34!l=KRtnA6upcX9<b(+PRu9dY^lT}l&E^A$Zm4{q$=rw42v{%As=hKG$ zqErj=q0Pc_JF7#J(;iE&=*G0(wm5&oiJZr0cKAG{9X`$X)XWZl`17?{U4A`)XHxEH zw8PK~DsrN}2=wUkU*z&{hi(0^?V0!?rBU1MGcP-FasK1j$<5W3<t?q93Ql)#Kr715 zT^{K0>!TA<q$!O>Lp9$G)Mi;_t)0@7r4@9Z>FedQ7CbL=oqk!<I}d4iCes58$8ut2 ze1fsgm%SbR4%SFvFR687{Cr~7rpjQ2626V2Hu`F#^^=@^qgM2dM25w~n&)#E?y?q! z^;PXC8=Qa*PI$tfKLI<`_@A0t6YcWonJ4|&^%pj~@yFC)0I#r@#dDE6n0vynUxB&~ zqynNvOzIBwmkzdcb-v7!b^B1VnJiZ<?@{uyT!FOyD7I)x1X@SN&sn>5VUM*RQx10g zi`Go-%=DGk1Ug^RbW3_7>tx2TyvVlYzAnUkfW6YtGxG9wb!GTx#?QWYOv|bXgr`WG zX*Jk23{Q4?AH_4C;C3nBv5t{;*&J<BEwVOaT~=gkHQMFr*EButW$mCB7@D`o(6SPN z=r;5Lw5f=Gs$<yx4)%o+v9dF7r1exV?Wvtq>&xDfeU;T8wNY57K7*cd74@n0RTr!) z$Zobq(%MPgzE88#I)|0kNh_&VUyW8z?NP5|W0y1-%e>Lef#Qyg;p;oS!`Js{_{|vJ za#|bS5_vqlp*|YAI_>E|k52j)>89^tU+sjdDT}U2Wl+;ZR%AzHTRY0d)|YKW3_Rb< zJL&iN;vdBib!J8K@<a(vW@uOVn*vv*HA9Rz?SYG2!5zl7N?6(L!}#FC(>T-xMxVo7 zNQH3;<!(2I^_j4k#<Advby<r7(Xq_+<iWn)gfH}icrU`>TO`}hqR-HN9(Gvf;llWb z*i-Gp)=3=)`})GoNh2h7;=`B?I?C2$j|;ug&5@??#%10HH!L!qxh`=%;;x-iJz>c; z*e&qmwunZegKY8nJW(p{5Ey6*1wxs|c&0OUB>b?RFOowWz;?LH5kCYgd_GU)bKIkg z@-GQQ#U7doBe)ACA18E>C13IxO8$tW<c}0$Jm|&P*X!LL7FSd3H44grGWSHA*zX&z zSoQ_)HP+Sl=H9gS=oQ>$(c1qEX?iwZ!7B>UqhAPYGvt1t3|p<t`fpv&aIMDm8drC* z-a2xrokKwgIarcfM^fJ4oLWbwGAoS0wnqz84*h$si?%GTmxJY7*MHXC;5mRb&Z)7f z9V2)<#<F%XJ_VaGmU}yX+1F?7CW#R=qjnPZu68G)ft+@qJ_=XL(r&M>z|!H!*t4%1 z(d1}8iO=3#AH~ezL0sQ_$%#v}He7*E8W&8n_D`+3I(fsAtFR+vd-D1=_b|N;qjxeI zdhECdSKy3<H<6k2`4eaM`?M22^h5vf_2<sCXvdA=EqDgqVonL=MJJxwpMj_F|1E3Y zyxA-bXC;E2K5cZpZ#ddctgOq(oRKF+vQxiH=ec&p-;ci(f6p&kPlpl7JL!w$o%$2* zifs;U3vEgpW<gz`Zt`O;GdF?#xj7fg9+&oHPZ6!!3JYoGsHHO3rISw&8mW8i>kzN> z>N;c=Jcix(<dp~`wmE7;;YVNmpuKgR_&*8rG12<kR&dm&{0*+9lT$9-9mF+R*ePoD zL0p5-|2WIBW<d$xx>4(V7&QmX?5tXqW0N;+w0krCwG)>b;nEF8tv`Ntoj-p1gjdb! zg4+_0sJo9xN7wqp%_%?2TsyTF^Eh>t#k(M`ZkFy9UW<COMCoSnYJ{t-qih^!TSq6x zi1`)XgXnMloR>y7j}v$O*5N9eKsqto3dCP-o2kXpdZKY%;kv-OD0<BbG3SCk<eY0$ zbh9N<U4_7tW~}8nH#+??=6eR_ds{+TAH0=zhc1q8>dL}(7^5uHKFU0eM~6RZJX(;- zWC=rCL)&nL^Z7=juEp$&^Pv9Op2!<IH%#FSwpPx8q4&15fjNjsr)Dy>Q<z7>SXZ#F zcpcu1U>Pjkj$DeJGdrRiDZ|*5z}~;{4=z9pvc?kYj<2!F-y9oG35dx|>(_SBin4I{ z!8Pj9$cFG^*?14cngelPVr%rlj>uxSSYw-4jyk0Ho2|WhiEsQTj*`bS!k<??{Wy9# zc4fq@tt&$h;&cReUhZ+fUIYt87i4t?eWeQ~b^cP*Ph&=_uHn7zVR^WYXC;hf{!TY~ ze$YQNyL2<>va|ktLNibz&jL9^TksiYXb(7MXn#ECck%9b`#ZSiwQ0uLKjH(xw=r(C z<5~yY{w{uz&q>hQ|E$TKd-2B5qpjoQoNkl2d;ST1!s2eb9dp-<AD?+V%Tq?H9M96S zT+L6-@{65Roo%+i2CTNgTEi}xV%ORWS%<o#p2uGLXn1ort`^b9m!Yko7Jut)E`oNf zSB&I(%EKOR$UT&!8$L~2D>e3}-IFkqzT8%f1V{1z<-UWtZ(yh1eYvk=SI!nnkG~3O z&?ecDJZzpZTdlclbQ@+*y=E(RT+T4hB%&J(^UP9cR*{o@xr*yGJ-lg&_4}A<gvOz4 zuk`Klh_NWT0sYaKQ>|gPqN#QzXs*bd0&QDB?#c>2w0h{VXP|z$uUmRy-ip;g80&|s ziJiaF^1A%ms4kov0{dw3(@$(kV~j91^m8ql*!lB8T&FB9>~{NlK#r72?8KWkViD>q z_bSeV_J<IX9Mm7-HgLRdjjp0ZKI{p6v6X`1=vGQiT-?u*@}@mig-eQ9H)wgrNwmhZ z?`j_Kb#}k28QpA^?OF`2Gj<X!64-P0gjN8af|F>K93|3P-js^yx`LDkI<;%5_Ty-= zNPG5AT8eVm!n^-u%Su94lC3-8t~R{fr&n85i0i=k^R+~0s}$|>udzp?k70b+h&^^Y ztywyE^$ntLpnd)|x-GEP)$A3sI?(k+qp-h!aa!|l^EL-0)k>vObU?!nM;|<aK6nBp z?|_yk&<9VT4|brmaz)@6<t^QgjJ@=ZWO;IOLsn$V6Aj6~@5DQcXe0Zr+>-OT2lSlF z&3mmYO?XRm$Ij~Hfmmtsp!vL6T5@xCRx+z@(z2{xjNRRs8z=n9G09xm+0%t*N4URW zbY*EX@fKsAnYG!Eeev_&e>YTS&WwLll1kPtooqgTI^f22CAlWsNNzD3@`^d$=WR{? zVdr9VNAd@-ZfV_Q6X#x>_PMi`d%_r(`GhLCvBQHp&(LP7Jk&4Vu*}QbZN6nb6F(O} zlzc1sjGgN}*1Z~YyZJKo-j05ynOn^5bz1oGgxmYrF?9Lkx}|O8ndEk^2R?wd?0@D9 z=F9Qbv6;yik}sRJLeEt=^J}zamy(<D#^Zo1a17@LXqXc$RV%^VIpjr}l>gjWfB5V> zTIty~Es0ikup4#6)@n{ZjoLfScKfbYYEJAz{dFOZ^>OykT9W<LoL}^h)(IM_{$hVg zPNB_{zP6cqA9KJODcBjjptP-2>!USI?%&<Y)X8$zrx`RSC7-SLCvUQ}k3No>jA8mc zx!uMEv(4gTxa(3k(Hw2Ic4fKs&Me&49iIwPQX-&jk8aIwTIS94B{JSY4f{8DdZA?| z>H+o9h5BG!M=+X6tIx#yi_obpsKxTOb-Ogf42Gt@eP){$?=o-lh&x#353MVu`DXVJ zcMD>TA>3D~x94cdAN1cVICst;fF%oH$pkFfZd-D=x)zDv4m<K%L@U6K31P=_?oXZY zhw-khWf@aYoIMtEm9}L@gD<=}<ZHMrerDO_<W#eZz*QVM&}-W`m*6kc4!Lf?eA_iI zIT`(IbTTJtEW@=IV|EPs9HvBG`4iE$7cpnkeA7E!zUz&v(jJ^U<G~f|sQ<B0W)S0U z{FE^^?eR9p-7<~l0+)Y7{5^~XnWVYKr!$nyK=Vgm{BSqk#Ko8%!I+MFE_r5g-9+@p z{!#rb$LrL+tXVu4&u2X)5@`c?&6z#Ej5B-uo;0lXq0&-Q(rx{Ifl~t9@%NQhpl7I@ zO>w<q%Muc@F2X!-=ie*cl~l<8^@m5TSuO1VevvLLceDmg?v4-6LmwVCedZW>4FLB? zShL|&m2%YmVN=XxDPybw8<w7hZqzsAmg6a6qK{!zwd9QPHk+&Br@oQH6fUvW@XB)l z9=?LP_Fw5Rlg`7M1Mk*4Y<Esw>!8yZrN8xyE0g}wS!lL8ZJhXdUmxpD)aHwQN8j<G zR%ta?Hr^WWHj6TiF&pEqZ$#s6+^-C<hl-lshAZM>Pjmc~vYD{e0hJf|&Xv2$;isQH z=SrUKah1y1#MbCG^uRNu@Xj$~6Vc5^vKo|RozKLZ&lS;grLO7qzF1DemAof8*Yg;5 zLa&ZRlhvq$dv89Q*33!uIRB>8?;aV;9eXf&Z?gLR-~8fMjNX_pg|<Gi6i>=?Dva>f zjvP(Tu1?^-2i|hf<EPqm9Wx1EDb55cOWvf7O>2o!<PORj#k&`!u5w=UEz6m!zLA6W zpF^GmY!ZLZj%oZxG_89RY@c>&-?^Dc%|2tKMpYO%M__AqwYga2u4Qk?ejHbf)DsQy z_ma4RJ998o2Fiv$;!(2BO`{~XhrXlc&B5lUZpZkO6|~;f9;}~{$VsL`kBO3qnz8D^ zQ4VSgX`F|g<Q4hQhetW8b4)UGyD_pe#F>bhqegblLq6NwL5)jXyK8CdE&A-HdU2<H znfRX&<5+ZqxB1EoTE}75ne3lE)d~(V<H20lqNfecddZu66lY}AptT*%eG8{z9L)U< zEV3{6P0U|gFn>MRw+1uDSNa+dd#JC<)tvh#TV(uEYbG0Lc44P^(MH7#Q_U_R<rPR_ znie5zjgZwKWKqgnmK50kmA)0SRb!?%O}64`_bfI3vLEYgZ5n23Yy;D<GA4yBA8FQG zd((^g<12kF=<6$_7W$l;Iprnyl%$-q>yi{_*CqFGc3skt$g1-tf5?82d}K~3uI^hb z-pE$ohc~yd-<U5Xq8kl!e;rO?sfZ@L$;Og{7FP*o=az2NBVy0POQh~4&>eSc^$yV| zN~HcJ(BGztIWSAEX0)PIhx*bkdtNNdxkt&D;j}Yca**|yHcA?$X3sk`YjJX#Qg^N_ zY%O$CrZbVwrfMFx@D*x(AvJ3osF}xJ9Z9{~RBobASv9hrHNtyiXa(ybvt>|e_jm@D z7Uc(5o0Ch}95r6Di%*qM&M2=_CHw0PAUsjxEZ%GfUcphq(wRAW&?;34WG`=l?DbCB zqMY_RN|h5_X`Ew+9*fz7aSXEu%o;SzX^l3}+JKLt7h}DkwUI_1^kc+p=qsI_7B=v! z;q;;3q2xz%-$ZYC8NGqMsYUdFHKJ!Uh@QdT@P^eJ&=V_FyQV(4#^bGYd4~YK!`K?c z8&|IFbD!3l+gdPp*pT}>tvUDKMe4t_t;6dCj&jo`r2U_}q2@7|5B0{rjJt*#!jI=R z=QfGn##IWh*qT~BE}Dq@5d&9`?_1Z(+-)9t4inclfo-|+IR!&riCJ?2+#j*lD}k-K zxOZz|aB1=sr)Hf0gS)@sjh{SrVr}ycu5FT|m-(aHlQ&_6I3RS!)jiN$^e?UB%$rGz zT}-NZV{g>Z@H7~0${by9lw2%k4_WbZRvOlZSx}Nwr+4X^5${R1rmVA>Zh8lI<Fj*< zHRg@UT&!A>$yK<b8YQLX5?noThFFQu9F3;}uKHq4JP$DM@$A6;Pq(%mcc_|{i@9{q zdFRr3SjVWjbVNKqXybDRJby*IGkl}W#b!hNWvs{+CmUiRGdG;T75pu0MqT3nOf%{? z2F$20WQ)bDdIDzEQ`8j<t$jLLcsXr?Rq%B5j0w2sQ;wb??x$fCKh$@?IX5%EPTR&m zu&xa_TM{$CaC7kDowutxU_7x^7vc^oWCXXGlVu;p%*-r9Z#*Ewc$#U>Tv~u}0QVGd z;+>OkvRO`9ynExv++fa>Ie8^zB?a;dur(^4q?hp7d`3wb$Mup@Yg`X*pA%J@a4t9? zM}$AQjSbba&`)q47QX|-iC9g!o2^!hyC~w+ssQfM$nU{)-U+l~qnoT>&K+^@i|xC| zqMY}vE94Pwifj<i^Y!pX-ovOi{KaW^bbGFph8gc>(-0$Mah)%B+wsgSU*eJY2MM3j z$@=AYY0Qy*xM5;A%9-xY>MlID<+>r|gYIXa*gE7}0r>XqB<?+0&n&&$LpzQKH2+17 z!&gNP?puYs`+2e4=+tzEES;wv_e|b>KUc$(584BHUYZ*8J^>`I%DA?7pxt3p+~4J0 zJ=U@{TR`d+%KnTWEACixoFGqH5ArFpoLM9?t&rlEzk}b)<a;g3CC{@jdg46vWz&Pk z!}?km(+89g{LX`S%60Cy?&OPsFAA?*)u8X}oN>!PA+GxTaXMZ!9k6$Kp2`fb#$bc= zkL^wGh}Y6X#OFKG^Bq;}vHtPT|G*RL=hM2e-}}cldq=!8uO!}y9sEA5(}wsc(B8A& znXY^Y9Y0ID>LJn<^y{owp={HG2SP&@ZjkQS1O8)nbn1ZjeeHJQtW#ug-hK5`gW{a> zraR<0Z83caJ)HHmQq<S<A&cacA9Ki`-)|EazxA9JT&aItfa{iEqdp_J27Wz!lRmvD zGy|Nj@*=Il5j71_ri_}4SLUp5DpVFY7l8ZmEAh_b5X83^l21pwgdWQk-}%l%(B})j zq4&&p*2Cca{hhXOwmV1r@SxqH`g%M=Dgj0Jt3qLZhPDRYV?)_38En_ff*r6~Cww=2 z4}35D3Rh`xrOPae%|J?+u^gN;z&Y)cIZKN)x2yHD@y;mHYQZ@jQcZrUdrU7Ab#lJ) z$NI~p?Ga}<6n?B*JKCFUFAYPQ$SJGpJZCjHc{<O-<J8sJZk=@0uk3$+`*-K>sH?aQ z{*GG*d_HVZov+e^vh=QMeiv*XpJ2WHSivub@2<TIuR<=Y!dJ<)6*UWMhhRf4LsKgT z2t_{MTzco<Iaxuf8I(2kyR+_|L0os-SyeG^u(UhwuK75zYVop)an96tRY2seRRa<W z+Ff_!REhpFf1FENVNhD|4N58b22sH`Zehc~(<2t$dKW(Jrb5)cYVkJ*99p5|46^zl zB?lk*0AVBzWi>&+Yw^A6TL^J92KaBQS$OM!566`ZXjQ*>P=3Oo1FWYcun<GB4-$a7 zb5bnZe``Sg=QRnkLMG1S(ny1-LIABjC^MuVf+}SU5d;3E3#;zFZDGZ@+bag-YsU<& z%%FT_4ud<;5NSVt;D$`=sOSHuzG30J=C%_PRD=rQJvLRlZZ~iP{4J8sIL=SM1h2z; z;ptYwCj_$oDH+ocR2Xo2KK@n0Qy$YYj`D7Vcgov`Fut|4ozia}C{B4R5mx#cGLG_U z;2rYx(FilGa!TGeL2%0JMVRHFetsE8c^lxJ@>U>Bx^ha!S`ZWlyuJ|srodAk`5DLG zAHX~1twA^jubk5FNf4a!su5Q5f-;Wseh%-Hw;SOqc;%Fg10X02c>R<3r|cJ!ag=ui z-XYJ$xaIK5DH;C;g2I3^^6+mxJj=^(7Z^u*e}Z?)TZ1smqMVZP4hRYZ&R{uq!Bbus zUdh9glmYU(5sZSSoRaZA2nqv!iEZE*JmulL5G7B)5ZIxg2RaWWkKc|s<&_qLZ$4<0 z$NZ&!dOom2UIxQyc;(0kr(;d(lsB^p;Z}Ic%aw7|1^En+cMQP-(3Dg1#)BX+qsnUV zuNR*3ST~HLymI_H^veWosIv`p_H&24S*){8c*+|g<0!8Z*dfnAaKQMY^t%~!hrIF> z!m7Q*WE|x!1$N3yBFy?%PRY9i1gE@qgr~q$zmYPI@*07i@~RLnhgVL?djJH7yf5b? ztn?#h9OZ4puT$P0gon~^qfCPzx-aj;Kc(O0z)Bv|JLSEEFm0_I`QY>);-AC}f4LL? zD&bk)0(d2l=^gTXg$P!Grks?a|0@U*Gir7ceBc%GIA$`A<z>Hg$n&p9_yD|eO5X25 zaLD`0awIcAqkfbt<+(C|9rDCkENtV-Nf|DN9rBVZ5uOK6d0dDnc~M}eJo4qkD@Q&! z*XQt0Vuq8g_*V%}c?o#Np}gGNY=FF72(zs!r{s+R!69!B%TNhVdE?-fyi#C?e#m0T zZ!}%k$ux|Io3jP~YTzkv0=$wpAJ{2xI>PkIkq^%Gb^Mc<;km@k@RWBoJi{#S-S~CN zYeaA*Xv#?$t~wATX4Kpk@T~!$JeFO_TMg`x7i58B@X9H9c*oc&Z(bq7s(vTQIO_K# zuu~rRTn(Tpr{w(u2of`D-U{%w15m#y@QkB8d^hKm7oz+oc;%G5y&yQ`eZ3mtG(6=^ zg;(+p0z32@23zQ9(3Dg1egT3*UaA1$PI$^Q;g!6jzz%uYJqWVSl~eNm69k968>8Se zK%=~AGLGftb<iO%OdGR3DW~L77l*u?VhESQQ{HrV#zCGt6TeP*jR=R~m6I~u?7&WW z)d;g5C~t<0qr6Lio${KItQ<7ulsuGgfV?O1jUn44<xx-aQQlSfb;yghBZ_$|r{pC- zkeE@GC__dS0OggzD|xek9r7+oB0N-iRhbY?x3B^KRC!q*C2t|HQy%l&1FszU;M|q? zCozz=a37LQ2cUkl;TgyBeh0q}c_X0PQ2oPwuS|m<x<zPLuH68X$1*8-O~4L$u{8)+ z!7E2TI5(doO3d)$C-DzD3VCz!%Q))ykN9=U>qMAdIVEow2o8BmQb>lf2zm2l9Ob<Z z?2vb98^SSo<&?ZvKyb*ry$0b*c$W7Dc*ap4p4~d-jYM#${^33bx>Md^gjd2-9&}am z1Pk?(ZsdgirIH{?8SZlkIpo!#4vaj|DDNg22mL(!=HDT&0P+Uh8&`3|KzGASR{(h) z&U2MheEenKlx{NmhBt&j1^gU%>cp@Q-XX69?b*fansQ2>3aek6{x|y8p7U<HB$Rg8 zODN|B{UQ;IYdGQ=wjGo=5TH%zmLZ;D+aX@b7Bqxm?|z3c*IBkhn0CpRgeu5m*mj7| zMxam<mLr~F+aaFqne|6kjd+G_hj`W(#|$_<ig;)Ju`;5F;5Y*(;u*Fb;&Ty5N<tdx z8MYnbX$!8m;q(H;E87SP;zs~15CN<S5YMpf5FbO}c1d7;Fl;--kF)~-2-8+eC9NF% z%65W;_{(LS3Ksy}BWbh`!?pweXaw%J2s-W0u<a19Y%gdCbDp?SG8BWKVcQ`-fxveq zAs_J!+Ya$;@6Sj=3h@lv4)LtZf0l&lh*xzhNQl20Ank}}*mj67M&LDzfTM`5urq!V z0<Dq|Lp;N_LwdFquCL)-4TzU*$D$y9D$q$Qq%|R)VcQ|zM1b=HIGydq6j1&{{4~Ii zte`$0@eJDz@zaq`^_dBXN4Vc1Uba<>hHxqPIS+^PustvwLjX?bkG3oB*O0IW@v{k( zL;5nrPqe}wwhx5+9pcOTL!$i+POtigU<3c$LHzRug>M)XP7Mm*G$=eD`Y9XC%NFB{ zUMYEa78Y!!tNs&1IEZkAk`WR>e^`cjxWGunKkf*lzv!yH@@y=$cm2nM(!V$;{F);@ z>O+6S5r)0=b{VdMytxRUmf=o>VGkE{6ps4B9^4;VxCscu9xl6&3jM7+r$x7ExLK<n zeOQnb@sI<*;vocn#ghj{^Kk=y<ue8%>%jt$^)x};UFKr|>)th<8z72d{P3<neym&l zL)_m-oVb%Kf9>4*@698|x*@MvtlR1c$y@J=LEdk-BBaJrCEQLQcn=*+yhT3XzBp*s z&26T2-sVP7-3vd@jcf7bN5=7SPd~&n9=V~*(uHzM7qNAQu#aS;jT9XGaAUx3Fft$x z7n2EC3JC}4h#1~=mysX4)h_As{<;i_s<`v6ihC_pMO!j3_eOIP*IP6ru}=*9ZdB6Q zuZtudeTd_<;3p5pRI!f>`yIwNK_|~N$xj}PGlE_WoP-|(&v}X;`<>+AHwGV+I06hE z#J-D#z_^Cmm|>=M!2^qXdw}A)q3F=f=0Ul9ELS-^WcrvF^B>`$Lyn;5gO0KY%yAR? zi?kf`(a!`P2V5ud0^oY!;rQisXBoUImj~MlF)v;Zke9%)4X?if$ACH3DSnhkoJR$H z#T-eM1!1)xjF=lKdO)V79gx=r%nSL@o)@sZC@beKf)2Z~9tE8|F?f|P_{G^#<Szog z48N7|D5s!vd_@_=Ia16MItxtuz$W5MDbg$9m2SZEXiK^(ctv+&<Qt-%v>|j0QU7Xq zq!V=72JJ>*6ZjU1k*Br<n0hwA*8(#wWyAg<)&<&&h*SB3F9^B9EysUFcVg%x&JCK6 zc<3cC+X-Z4Q_o8H(GtgiVIRRW9T@d0c+hq@ev5O4sLu_OryLk|6lW2Ifl+3GVei5A zvGt@al%7ruJ;j+fClL?b#5p=`z^GSoUJm7>tb*PS41ENy0fror7P@f%Oo5L8KkMK> z08ASmf<Ne>zb^TI2Kw(D^ml+!7drDjYw_?tJ@12vvwT3-X+K#O@@31q&{6L;-GSNu z#rZT$hqlEtX~Y}{ZB)>qJNv1?Ex?n2!OP)<?L^R@14bQ?F77SWOL{ZH-v(wGSHm|t z=<6l_3eYz>=uZMu2jtJ^A+`>?CI3{=_W(nt(BVZ%ZvwqT;@5z?fZ0~r=0CFdiFFUK zv?1*#cp#H@6ngFeh8=8M0oyi&PO8n&wrY>l^V$|^#knu2bFMuEP6C%noB*B&OuH?C zhYbb31$e2%-vhp1@;?K-2AKBT0uQ?hnWRH+k#;RGY-rPAD{;mQ+8Xay2>Nc|{lJtH zgnt2EwSVxbGHPiD-H8j(9bjA9jQuee`s*Wr7g<=`pMw765ofI~lXThvZG!wP6ZH}J z5b#S9{|xxB#J#{rfti;V_&6|i?t<@h(0e3*JLn(v(^*Hktm}Muw0WTqY_5+4rkpw} zPL-W}s_Z(-Xww~-<5eE@hhCho3VZ^%OyWXd^m##l2>4!!7XYu87&c(t37+-9J0yM$ z7&gkI-CE&MM|so}w&6a*HXZg7X<2WtJLqk|D6hERbWGAC2%iL|oRo}Hb=}!tUhzy! z(YwK?a0tU4^%)J1a*v?=>F}_ppicmX9R$4;808nZ9C(U@&NNCUusxSRn!J3((IHK) z!byY`zZ1J~Nu>_ZOL)aYJylxNyPejFgE(7-Wr6N2%cYcKT48~q7sqzNQv{597j%|u zk^`Fvt9*fNoss^0<+Ax{7nK%e`NDb1a_Og)1^VZ+9m4jUW8|xHL5F<Gtb&K$g1$h8 zRlbN*?Oe<Q6ulaJ3Pbkg@H)!P`xXMz4h<IOIbUqUq;p*7SS@fG7=8G1wzt{vM}Vo@ zVfa?b(++%0;y(bReG2)=hy9oQI@%S-VannDf9$_D9c32$s89A&n?4m7W!Ed=r&&Cl zm+3QrDF=0`&z1Zs;2SJDud(_q5+4LcdSwS<Wh<RFmG*IBUN^ZlC2hcQUf@Dt^qB&d zeIz{c7W4(cC|d#TGY=kZThJ-{CScaxK6vOO(q0W*EqQhT!~TN)H1I>fl+y(NxPy+m z5i%P=Z*kC{0jB)@@XtzmCGZ|#%3+^+4qmkZ=n=_Bm=0-_9mMlc#d8303L7}Tlkz9P zqi#mA>?k+er@&!g#wmW_l#*ZUpgS>Sj-gE0m3AIOnW$6tUqO!nqkY&i!DpW#ia2%c z<~+^jaboaXN%`~O(f+Qa{Brnlz{o>f%ce^_3E{c$N`IuW^-nqIPVC3Gf|SX$uy33) z**2oUv^mR#d<C85KwO;qnDA)Nc3ueIsB8s&Y`PO8ud&RF_CsD{DW5WtmrX}_Eagvu zA0g?~32jvHuzt{P1&;|lPSOj2Sq4>hq_^!1KKqP1r#?=M_Anm#=rK*`GafqVb->VJ zJalFsrw+u-lR5~Vdf<fQ2?L`)2zmoBbP#DtH-RaCHgL5?7yWU$#Ls|^J|pC>1>SA( zi!&e(NP0Wyhk$9fR(OmHf}iw1NdCjXCoDSW7dqOa&<FYG)Su;oZoIE2bVIrHVqoe< zJVVk^w>tGC{|fjTVCGv2T#H|6XWB^FS%)pc`G|vK9;$8Y$XnT;vc#DS<XMS-N{$2b zxxrPmGy72h7&?e{i1G+JXoLHdlFz=ZWDdY+Z`V*J>k<AM$aKvEj!Ak77`k6WJ4^yD zlsu$QkUYqr_W{Two)sh|9X8>(CuGhCzTd%*x)l5^pf^i;6Yz5u7IX6#B!<m7j}m(R z1{ifMWKxIMCH*XLtHj5FQSUa-F$YhVq*sEc$D-@NT(=1RDqz_68rCVwr6(*N?qjQ8 zE&0a*7fT+}r$|it4U+$7z$i0y)}be_Q$i-`Xg?w^=8HB%9v5uJHbWl$SMc{r9`Lel z2suvzua<PQJAJ)H=bBQd4Ow@Pp?}Xo-!19&pg-rJLl41E`b!S_K@00kL4V!Cu58Hl zOB@1*U6jtQ*}$|Fba2ge;CZ0QHq7><=2tG*LbZPv>@zkWd~mMH{%e*Cb)e3Lb)o#~ z-i`}pR`V;CQ_UM)D1$mr)YSlCDqjcYb!Q^`%S!ktFx&h{c=UHcZv;+AI{G@tV!^|5 zn387=aH+)Wfxqp*_XE=o<?zfy>Oic<0nWGVGf*K*>CgAK?0(whNbAJ8nl>5w>-!NO z14eoDJ;2ak;HkimOPmkf0!)3LhVQiKJOhODw8?Cf1@M<k3^MyR<?vd;Ihc^S6nL)W zfi2mFDU<D2U*w>p4GaEC(02n<&jax28_EvU`%3Bs$2e79@eYa_>(Yo+b_;3R7pV`^ z#4M~&2S$0nNcl<NgruXcSVw~YCEz8JPMbU_>1ZQbTH+bN2PN(WZUv@IT)@YHX}2zT z*v+Q*Nd9*4O#r42^Wb4C!T&5U^b_<HF!fXA0=CPJG<Mm+cX>Ye;KaK#iXZ(#rDeOl z7J0F(9G|bHO;C3ttZaq2FG@Ls=V`Val&yqvLei_W2w$txh7qUegYY!=m*wzz80sO% z69XOzOnN>11c`qJ3_DCyeWA=jPXep77$-$q*2PT{*8o>Z9_oa86g+5mT=R>xq;Hb+ z9l*^JZvk!rrhOvtyCmKNjJgr}M1c=D@Qc7oAG8ON*J<#)Ch5%Uh@`WOXdAW;9g^M# z`dJI}UWy)&Jg6hy)1yqi6drl2v^s4_`y2utc_<w?_YnMH(8o!<AGlcZQ07!gKMIVt zXUl{gDN|?KxsqN8oRa*c)6SQp?h?S&l4k-i`mdeu{gRG6^+pGMEimQpf^Tuqp9DrZ z^<Mbhz_jNS;C+&3J@8L}m2SV0^s7N{mG}too05n0W5ASS0@KdKu#?^;`B|23V3uV% zFzrwImAH<$EFKryohxe5U6AQ20;Zlw>zd%;K^{VWDd@Bz>dTc2kFe62*Ji;J1N{bI zC8x&1u9cvF8<=V9;h&ZGAn-m5yHO9W*Cie0cKr?*I=f&`*9pnv1^!54v<0`PpU3S7 zmbP`H49v?t4}PQr7XV9{Zqz-o8}@OdK5TxL7y7$f;8{i`bFSopo!l%V?Fn9YwWOZ} zuC?fH)TtX~wq>rC80B-Xb?`R<EBVcmUI(5Xz|@WU?~y#v#l27Rkp7|rzh?2%R&KT# z$|V0$2amGh8qnEhq<qf^3$rYqm}ZY}#Ok`twxz~oPXR7D2-A6BLv_7opD9!H3AolP zT--mOVY{EK=q83rg{N!UOogGh8gIq>gL1reVvhMUP`_d>5tSHvaqOMJvLjEf&jm)F z8uStTXbZf43p@?jlo<BpI}U;$G~V-^0sDyg&qI<99XSsXX^FQ;I`rjzPC-8cd|1-U zfqw%`IpjzG74nn7ZIZtQ_&6}iqZ`0o7G2<;e!A|lFz1ze5SV3z935eiFXV7+wdwf| zI_gEpM|n9mlArT*UQY$R7I=xIF95#ZqH}D}*IIOeHvuzW*h+7<=o<6=p2g4cjPqw9 z{}AwgN$&(cDCxvUfGH;hOq-zWLJsXfI`rb0X46kgI`i%Ar@OrUbXUMZhdkO`UxBeA zVqwbX`wo;T#uKy^>M1bo!+as1<DkmdMO%?S2|ru%F9HUipsxn5l5}F&QI*S8Z}EtH zp@%A$>mdi7wpIByIp}OlivA=p^+a8`o(5)HVp;Y`o=V`KSUhgDYuAgC4jZ~?b7@=G z5eMC2b62~Ae$v5Dn<K3b-8tS09l{tl9PQ8@w0PJiIo{elxfb0s5_EV`7TC!xZSF=} zb1R!ePd9CjGP*~=7X!;Oa$Ht+bC&_jvT*FR=}2$WtAUZ$bsTb7M%oa4(2cObQ-D>w zf^2se=*SmE(%e0g2X*b1<@F#xk7`%o@t_WrOpci%UzCsIp`fRLi!8c30z6Lgv;d=w zYTn4PX<9zQa2yZqG1hd9vCvPg`#6r<V=2m`)_v^%YMsco8&xu)hgvtWFRAsQr?P*Y z=&9;oZ+c)iTQ>*RTv*D%hC|JVXUM#`{#R)S;1I@hrfq_UEoQ>b;$C{5#Oo1;O$2=@ zFzg^OY{PqlGuZ}6p8-rcTi{W4!E-+_$}8y2z&APQm6F~9`XUFtR??pY{a%T80k4oe zCh$s0-wpgYu+o8LP;-7@RbSLeU8gw5wx5->^xKweD|L<2ke^zE^B$eLp7I{GE#Ha5 zxD27}oM&-eQ$`!2y>Wdf=&%QESeA``it=&YE$B($*^=G@yuiYogR?#a|FghHB%L<t z0jB(K!=wERo^g;HwCJ2)b533co2Yd$`31d5@}p01&Mb782V5ihAyZ!_=_%mlz)af$ z-ze!Qiw=8=wDW;?NS^0_p`R@i_Mr~Ex5+iKpjQIFDETS#u%uT3|3=bLK3;1?z8%0v zfmxPb_+yeEy6Yz-59M@9I?BO!=|tK;0K<+VEqHhhqOHVyIAZa*U^C98g>H4g6D&H* z%WI0D*8@*?(9zC?Oz0-+TedgiG5MNsuJZo-pS&ii^)jzVsx7%-U)3gg??~NK<-H@d z{^d1GjR`K4S+!5zJIYjfL2vaA0Iy|gJo%)1N3+;Zp$q%_EViW)@Q^3y&`T?jbd-r} zb3uoWypJSsB{1wG(nf(X=G%12ReccH?t_l<YLKPINxo;JY{K=joz{s_Pvz9}2KcbV zdBEsvf{waoe=BFXj=^6p>9c`Rzk+8C@HENO4vcyfbo5c`FVdn;wOUC(1Y9pMY|Q88 z<!sMrLmYF;`MU@HS;?~l_&H$eKsiSp{OAKBZ4z|qr|bi)+KdLB>@f%FZJTsD_?_6m z_lUF!?4kLAnJ?=iBr)y7u*wVAmWep~IZn*M<HYDMvnjIxJ^-xp3QBq*=&*sHqaHY) z7yJpCM&*n2mHD92A&uQ0z-Q|)0db1oi9!BKCjNQgQ7(a5Uih!*_@zU+hCKHS`3ipO z32*ZwU;B(*<dsSJbf)B=4h(Pem!dDLyvl(Ue@gPt2S2>cUy1kq6n_=4;;)wcHQ<N0 z`Ria_#a|Ds_*Y2&mEecB`5W<GpW<HwtoYYU{wDCl+x%Pb7*z2$11tXBl7A2Q;cfnX zFty^}53KkPO8&#(hqw7(M>A0TM}QUoG0EQ!et4U|1J$SaJAoxXNvtp3V|m5T^;Jaj z^L|uB@y8^8KKS8n{sJ@!#a{@l_)W<_9sKY%e<_9$#a|Ar_^Ty<4fx@0{yH>u#a|Ds z_}57O_27rM`B4`m6hG=>gyP>V`S*Yy-sXq>V~QX4k176_B>zG1!`u9aag9*?uLCRo zW0Joe{O~q^2j2Hk{GGsxzt`e-p&sZJzsrM5gXDJ^z>=S9G}f03^+0d)=VSO)`~|>@ zzf|&<gCE}JPhyBs{PTbnf3@VV0YALWUxzV7@x%V36#ojzzY_fLHh&|A7RA2?Sn;DT z2>n~Y4{!57iR-oE-vzArQ5S;$0Qli;{xrr_#s3np;zwNw{v+UrxA|MKUQql;ffYaM zLhyHkAKvEg!F56L_X10Pchur{=V2WLulU_DtUDyXJ0Do_CnWy_@Wb2u#ken|_@@9X z{`Hc-3H<Oj{}x=k6@N3Z;@>a%4}c%u=7)VID}LB#vf^)({Kvo#Z}Ycf{-gLifF-}j zu=u&oqgVW%5av;m-xCH_{3tu^$u%Fn&0mOT2Z|pyDN+0=yWls$4{!5N$FxE5mjWyP zYRO*%et4U|4pR%oUk@z#Go(Hl(1l*{XF#7)$)5pzN)^A<Cj+|B+x*aHrs9V_GZlZO zrB6l`_~C7S=vk)tp=X)mZ<PFNzz=Wpug6?Y@uS{nDgND(e-HTKZT@|j+bDjtfpW$F zy5v6set4U|74s9te-v2pw@dyG@Wb2uotRfB{%&BwFTZPOxaY3BYIs_yea8Ly&M7TU z6c^)!`_Fd9ebHeJgC_4p!WC#=)so!XvSD~ClY3w{6yapP?KstGH1|uz35~ttL?)bx z=`R&KQj2qLa4M-hqcUwow>CsO?HxLoj_L}yaS}yZj}>4~+JdxE=Z}?&a9&zp>K}W? zmZZgUZa$ONpIRR8&BocEOAB!J-RQJ|1)(^*EZ)3xek%uSoVOU=@$Oscj8xVKKh1di zbRe8z?FPC$2dC3x_fhKIgEJ)({^bRoS#BTBi5wMwWqD5gEaR=SJHz4>R_kO>aLJQB zm&=nqQ=YW8Jlgqd4QCv+XAFz+q^N{<c|p{u%R24xmp$fRJ}T;4Y6Ng@R&02z{B(wI z2F``?;Cw5b9Rd5{EYODB=#K7JD4}5#&b7eKuxY*fpyq-VMmf&uxcKICX}vZtvZ?0~ zd22^?`7Pd_kMrhYpL`u>Ie2&)Rb&!>*W;J_Q-hkp6BU;i){gEraNeNd<~g6@4Aj#H zHGO9_PiP7Sa2~6%%oi)i8ElW>dOHiJy|`nMbS6*wOs9qBo1ppT&#HM%USx-*dCh0i z94BCKmsDz>LA`6Smow|DhP%dQpzdT@Y71GKnk!DqvRL}2-Bwv}-r@PmGJ<8{S!K+n z*68#P(=1$ro$u#Q!k+)R*va3Y_FQ|`YFn`{C!(pWPTz3z%<~z2$>{u9*fYBuyEyxj z1-W9M`S`1{-En_sdG<-Fms*=abF>+XoAtiD&F}sp9WtZlu=v6FeaSuM)H(jW51YBk zEy*Y5j7XkMV5k1<^(6*QL+CM2)w#MdBBA%*NQX{%TxDGz7tYMODD<O=U4e^2I1SU- zySg)|Wnppe?Qm)C2i(!(im`c<E2fw`w5uzMOEmAeil6@Is=ceiKEKc9TdqfaAzx+G zT;J)Ags`i6sNHatoitpfosf#N+WZk;yW2JEwD+P=w^s{v1+<J4y5_pil{cv(5tvdj z)ibu@1^>i~11H_C>-Ijfw=rUPp+%li5{w#Q!+d7>sCwOO>4J3X-0p*PpKE3pq*E?) zP_jEeCfi?J@dD)Um$Fwyd|sR{mgg%8ntPT{4*O0+YRG54fRoum?OCqUlUdM|dP9SH z9rDY%p*JitQ1fD2^ZosrhqKJHUYx0rmj%tULRs}&>aVZ=YW;%xZ`H3@J~P?c6^MlD zpFJ6H&1es}%6p7RD0y;Vi6WuBi$g)|M~u^sD~ioCdusy0s6P~pB7`${fWnh2_WS)C z%EDJwJYRxveJVSMlY2tYdj|BMb=o(m4v^>G>g)i{3-X61RZQG_dms?;X9preK5Z8Y zgr`>Q_xd;76dn(mJOP^gpCmIVWCk5FgOC}tWcFBkPN~?B<64%4$4NaK{x*8L{2T5K zkA+M<6j;#sx6xDcZ&)2pR6HLFF4$se$yO{Zik3{PvNhAPox+-XZ)eG~1GHzv&r;Kl zfdDANmgcEY0H>Sz!^IW*AJ`TOlxXJLl|N)l6Rphcn#q>dg?7c(ws)0kZ)jtFvlI5q z*!u{3NOsnJ-^)YaEAa&;RZR86qUH(Dq>2~Vmc3anw6jpw(*5BqY9%yg%c90;UDUXT z8jHHxTO%|MQsbzft*P?IY)^q;c2Kn`wy67F2n9>@?BIff=Gnn5pz@cMzpZ?S`P6sX zJ^VAaF0|M~l#e=Vwd(A=7Pj=YEG+c3EX-CVwS^tL><MVCW>0qTu{RgAQ`hrKJWrjO zrv}!V$N#_y(OTI9dZ48m%`gU_yfZlt(5f6AF+N}v>GEn>tc#v3)L7#QEGELn16^Jt zZ(_yRz~qXlE~CVsXB7HTb3ct39<;EMVdi@CS?q@Io8!kw{6e8|sa~iR1`GYko;kyk z>yytWUr3$eRmdzhW0xA{h(ETbJ=u>x)tDR`@A-apNDBp%vE&GxX(P@t!udea?9K0D zRE!@qhv8aqU)(fD%qffW%8;}7;bba#YqBo6cFv?Zqe{k>#1<H;t=Kh~aZ%_5Y+I?L z)yz8W#u)9^g2#d=ovwNB^Li#$B>a;q#sx4&d#6@RESZY&tK1r;qlO2k3TqsrZ(5#% zF*-Ta7)>iX$N!Iy(PI2Bw#WbeF?wp$7xtM;mKQ*FrClF`t}ag5{|DEWsp8sl@A8R| zT{o28|ATAGRCC4hS@yMM_5a<q1=p4Ru*~z;l`EW8GFo0+riQYXr?N$_x34AW>GfZ$ zzpcKGy}+*9!Q-^Jnq-TsNy(@I*OQyX^<*qY!0Nxn2<Y{f6tRDPcL{oYgVmQxF6Gsf z`mramN7-`(*_ZaNW=~>y*_ZY<KCm<_`VxB%`%_7RJ*i0Z8ZOKZB1TCOdXlT8%)HU8 zHor9|Q4};+#8wyiii{$?NSjkMr!0A6vO4*#<O=i__Nhs+)!n{`yW6KvGK;!!jzx0P zQw?TrC>Zi5i;}tKM0v)AVd{Gu|M>6eP_i`n^Xw*bxEV8N>qauh-czfy4CW#8mA#Xm zpWMqU1A0xT>_^Vtqxw$pY1MnolD&=Zi2f4`M-0_}FgCkz1}8NfVJ3QUA00hBw;tzR zpl|I;=7z>qJeP8%b)MmoaPfo_%#_=3;;KKbg*VUtQfhcwOI?xHmPK)rC1&x<3UDPU zN*K%i-I&qsUHyLhFn@RE1;*Yru=uP<?wJ$A0zC-FA_$koX7~89Zt<o)k6;$QqV3vp z%w2KH+g2ka&ZS?5GtE$9eXEE~h!dQ|dB2;Y8+q~o&L<aV5nsEeb!1>$BFj4c)mp!G zVD6s?wi{ZYH!JK~GV0VH(k`q<M(=FsHvDD#SM$V#;MBA}=uFu=l2OcnM}^l%AFIo) zE8Mvxk;R<MiItyQ8a-}YP?{_?qjd$zRLaeH@Nt}fZqCi#lJxDYPIxd9em&&E>2ITI z{R;}Rw=eaYqdGnA%gpi<Ue}DUH@NMeuJ&&g=PKa*$x57zCh$`U!?P>ijZ?o_4_`as z)-Fqa&Gef$?_9E=kQ~}}m*7liEGVqJ+{!tT)nG(-L~zR5a-%a#_kGuQfgh(+XXHH< zDXy3to>);F|DY2y!l01a<JJm!7G4@BnKuaj=nueG%(Yn@=Ny{R1%-9C<QgL|KyuC} zNbdL)$;WY8b`mE|aQ*6ZXh+qtFD4E}Hbgh!91T%Eo<@^6#1iLj%*7dT7LNZOt)iM~ zvHsm0+0+n?6sI#<N1x8P$mJL5qD^U>IPVwdiPerlIknncqj~2NN~+CGWbIs1E9_|f zUzfiw(mMLh(N1kFjJAc7q(!QzKk!sTNSto%-;&DsV1LHjonEZB#fk2<;r7??_*I<R z-iuSCd$H#3#7a4D8&<IaH%{X88L`~htXMhDt4Ay8#VOG^vtADvSOW)B!E{EikE`@r zuD|`U5wV$|dH(z#=?rKd4PBk~1a@>l-U-jJSi)Ott-dpSSbf*pt8bhIe;6zB8MRTI z<cW6EI=bgz-`hQ}^t~8tPN9Z}n@`=$lBBi%^U&FMQNm3LaSjhp1FFf5Zr{12Mp&n2 zw13O|(v3zcgX_UF&wKPoec~*SHf1TK?}={U+3(icb@(crh34aFbU5_`=R2Or%tQ&r z>2x0ituyUk>HE-&vuHl}srSR3v#1a2%3$yAiON#|LHXa@y$^hq)tT?R-()B3gt(0~ z#!X1=mV%~8$re$gWpsm)Mx-`U#s*6vK)`?@WFXb(VVs<nT2yMOA|U2^Xr&J0aeBQD zpAPLfy?Z*G4z(P|(+{VUb~t`=EW@RWl(CcsjdH)g^{(~ql}$jW?R?I?XMM8r{+?(3 z*0Y}Vto8ogd%r6<%JYKcCvqjPkB(Iw9Tkj9JXQO|z}VA6V;^2VNqg>?@~3;c%T6ZB zZmGWc@iMpXhIX`mwDZu+5!QpLp3X6;M)&e9qcsBDqo3nR1aU~5+<W@;!wI*Byke7j za%Ig*jsWudNICc9m#;K&O7``S*D5FZxT<wx^B$|kZLXqawQgb`bk>|O$3^Bv=~<tI zRDbRy5zzXDZvCl8c``Dw{i7TiOO~^CVf?8$`*{!R#m6`{u4HxBSb6H%%4-(=&1lwj z*OfJ^O^&L#UOjz{xyb6x<yx(`{%|!bH+7qOk0;>&b^Xcu|Duxiu{u7o1`{)<;>qy1 znG4$Mj+exEjuY4Tyr*N!u(+C4VOUT1C@a!eb=GA@S2EMIuh~7#MCWT0zZU=6h3Ac; zmB5csOU1&9nr#_Yl7Hf3Pn16~_5!n3^ui(5@m`flq&C;|S3k;HdP7x@nKhh`Dt`5E z#;4_CrR27n6Xuyz+sED-b=Eju^ts>Wg5~2*n&(N&qo*=FIVpVhWS%EgZ8`Si)9)qv zxQo%ee4JxQg4MRPru6X|vx;kZU;UdpI;L!d-~`7QCymR|Q5P01uS-`SA5~n|KB?{U zWO-3v`jfJx^V#x5TiIVVJjfX<@g!>=ov<wgtonCCy6|`>do`>$nve2ubRggv%~<nP z=DOyw=DCbH#<}M*+8@(@RIOR}cy(X6;&-luUOZOQAD&z4-z_J4NoCguR$5v)_AL|5 zm6sm1(R_;-9UcCB&O|d)8pcHavs%)-=2$#<!*Z~W%7g8bbsnmIO0!dEp(pHFD3w18 zy=TrsW^SJC43sJLVuF7)Bdj-e;F7ybx)ZGQwDonads3Ujr=3-H&9YoclJ&RUJbti5 z*8{G{Is(f7U;d^X^m^ig*n<gwW^&9>oKr33-m|dTHtKp7HZ106`jIQiTmL}*1i!Zr zTAOl%j>KcORBg_T9ur<21UGy#+4u1`S(EYyr`Kmj)%?@jFS7>utL#-f*r!;LFV0$! ztb5lRu43onRsXlF_EZwB!M@e(2U>^n`I>*G9_tBG@8@A1R>1vRwa`+m85Pbk9V=Tn zbNR>4T%y8Wv#2zaY9Dvo;BEWr-(X(|&)DYp>Pwl+?JAn$e}a<Tit25XbFmqh<r3u_ zi^6N5!9>+Z{$^Wc#i@h2lFHioM|I4bF{$~XnPoHj$82p*@l-n1+;c1uB)C^D`c_YK zSy5l}_04sa=80x5k^RJs?^g2!yMC}}`(p{WwqlW8!7vxkULLlSy|3yT+0G`iV=Kot zpQ?PKYFql+r`w-ik#4%JjH^JNXFk2+>Gt%4#}gL}J-zZ6tu^1-{IljGx79SiJhOJj zks0H%FYy$9)L?mWGI{;Lm+*7X4ew=t$vHnc<Ga~6LN6ZU7%}5W_SWOc;)=&As5SO@ zS#kM{2Oq1Mu_t>hrZwf0#pQ}cYO7YpOX+xGViU?U?#SNNGESb(OwC|5>f*A;%VxA3 z|Iz88nW^m0wJzRc71<xnOc|^58P(m7O$sAzBKO_w>s3S}oyv@UEa65#?aX*E+Y>&O z&LtkNn9-8GOEz1^=^9d=u~H&_`8BfdoMgScZ}r6bSijXoJM=KdYJ_%uNZW%@8u&8N zU6CG}-PcS^v#(~~NZ*=$dq!FFzUEicx75GQ8sKj<zkOR-wkO-kH4bdeI(pC-&by98 zJIC0saJ@3ni=~G{t8rF+Q?%L>nb8j?LahE|QmL&ECv*ohSaHEenm5M#vJdB@nteDN z_0VHhS}U)v%>MJQ|0!2FIJ&rkwaEV>`!_@7=OqTwvwHep{B^?+GmN{N(b?^PbzRjb zaz)u~%)4#L(V1lRHH$XzWbV6T+J|&46ibfQRX3VFlss6uB4lQg$418zL+0wKYFzev zC$WCKyl6J_x)S*>DxW&_#sw9}dE(3!MNzUMeQ^rAJU{y``+NJz&~gR32hr_GUtGB& zS<zCK3$oj1?0NU~3(B&`jwj3b<f=$BD4IRl&-qf}$S^DIY|yM6elGgANV?8UZLQi; z&0S9F$xMZ5pL1Piv|Y<LuA{TXG0r0c6;3KCEGaj4f+M$XkK1L(lYEBpee)T{&E~j$ zZF7?2wz<=C=gI?@q(5BEePh*TT@SPz8Q8$5$p66c?A`wH)!W@2NO;{>@kIIdaOULL z>$IY>m4a+p%M<$is6FxVvdpN;AL$I=o|ycE!&-ANu{~EIJHsQW^@NMFsYk0fkJ(za zsq*X5Q9FLae<^1T@u6J*)XuuD;y3?_YxcmbXZrF`KS%HVL;DoJiYEtF7HeJb0ZHK~ z*1tJ0r|3UvKhCUdp46FQ5BTBf(-q;qr|X%q*(q9MvUb~B$+8=npEYkK%4StusTvhq zkCw(#lpe{%`GoA!ngg8Ee_KCG*6ZIby@t=Ef?O<H%lW_m?H}PuxNhp3tXe)N_AAro z{ANDSW3|<T6;C#g4bMU5Dr#(&PdwG0S~L7l8-7!BT`p1c-`?Igv>%%<4;`p^HC#)w z{(s~W^Vgkvv8?#ii{(M{<XqzD=nDgSe$dSv`LaZxB*ro?6>$U{dPODf46kED;>qOp zY^}81lfU=c*jW5<S#0cE`t)b?1x0`LiIc^A?on|;(O*xe{e#KvgFFj=`^Q7Cq(AoE zYqPb@H>;-P@F<en!pJ{P{3caxd#gO(7e&-XGwfYvobyIkbDc)|^SeU7b=;B7<aWDa zFAVi0^OCgoo}LH}?ah4Xotul(^6Z@(i>H%Q<l5}bN!AA*IuiPntt)Mi#pcpXX=|$D zvF3(~%@t2_OboKubN?7iUwp-{o3GDa*J`eOj~ACW{f1{Jzj=do#A7Yv7L`?PJDTDL ze)$!|Ph{&7DXk#>uZJs3zzw-r`IgM(I?AR$q+=F$0#C{(`4Re%8OP^{rIF4a*XvJa zr*QYdy@ck|>m{*qVz46W<zCIw%(#lpy3PwniO(YWtT~g)ek^+xXT%#RxhfYgwET^` z>woj+FJkn-m1M_-o^U3gf^P3SO~vU<ieuf4*(7*6nHATIYthWg$4|90<~q&P!^`x= zhhb<R=p4uVpHTl!b27Ys)Ev%!>@Ys*Y>^%3Y3mL%ucdX~B<wY3{cp0#aub0}itFgI z=K0x4eENQ4>9qsv`4LeWd)mvVkMPOfgk0jtk7E_irp7bTm*uFXIhi&0<@Jr(`C+~6 z9rbS~`kL?P9B0?Y#WS`3yCm+jKE<8;*T+1Xddxcl{!nY6_D|J(ZMjM#SbwlB5kB|G zB$}_N*;LaX9&45->fim`U@kVlgnO*i@x3wg4FR5FjLuxMyzW@}g~i89ip$<AFTa`3 z6%)VKtP3iiJQio{f|{Q-jn2*rR~OEVOO-ays(&|a?l00+>6@4b@l0v9AyZcQqvJsk zd^u=t$R)n9pyfAQ>jm>mj#pfi%_Z{dw=!$YeVTkW_aykAZJ7GA${(p-`IF4S6ZZbf ztSbBEiW?pnek?AGALpx~xBqKAKF}VI=?PHPmNAc2ZhxmK&Qqn((%XaaSh}vf@9iJG zGgR^9nEsmWc2#Ef=%z%=sN<t9vTLQLSg~22WjJcSGn6X(b^AL*gB+D5Wp-5<S^I3w zfu@R@e-g9)O&$N=8R9%Rl<X^gBEH=|pP8DA-S97b_vB>h6E%H2-!!wMf@cfT7WToH z8S6i)-kf^0${%UYGWGw1r?^@vdq3;Vs^xd*vkz9dtFui!^VpKP&0f{>6pB09VAO`G zKR;ovHV$k3<n7!kW+dzUIdEs}H1dqsBy(2euJRh>#h(1x<TNo8`4y>&SdtZ~!@XF? z%=(k`=JEWP;wSf+{Zp})Va@eZ^(Vi~bxi1$zTFb<n=<ZO?i|Ncn!KfuldjE`9<GRu zDt~I~f6Hvn+|Jz%y^v42*!d62|0B--yF&l9dc5)f$D#k8{MnXwRMJ*AR9;p5>sNEd zJbRh+^os7p$+EJW$MCd_b$2h){ZsvWY6pM6l}o(!W8?YYm*3|q>cAz;x>(hg)aHSe znt3%_-F&OqK5$p@>2N0H>}uR^zcdsZ<cU^hS9SSst{sY*CvP!byJY$uKE{)w%$Cf; z6MPRTIXzcA_Q8R$j~TB|8I75)P5nN5@@K2BQc1ZzwsCF3eRFC%eLEUr&RFb&Rm|lf zzTJ^Y{D!Tbx^NVWRVDrv-_D$$6Ejm=+#H>_cH&x#&$TY__0jr~?C7p8+h%f=Cs&?j zjoKX}tjn76>V2<ZtyjN{buWjl5$m@%nf5UKNPw*gd3)uoH_ZB|Bd@#Z+rIzoYXiqv zJN1k;ZM`;v4%5c;5!d#t&HED5+Nv{?wO<OpT=YQkBXLvWm$#14j$b}7Lb>0E>^b_d zbA&a8ecP;OdqyAAp6>&V$@G5=zF737;`MQVF<Re7b_5&#9Feb$d7DA)+2S@UnVp?% zY}7ie(~Fi*iQSsa&Pq12E^AYAI*Yn0`D35<#=aqMKX%ltlRCj)O8NF=-OMTRS;+~k zB70x5E;}XOl$=nsFtq9SWu!6p+w|v~U$13^7@VzMTi)0B4zn)qb0e&ayCnHMi{0)f z?+KccFS6z0a!S>$$>#!MF~^q9w52n{(k4pjVwn6n!ur_5*1$fSZ+@S8>C?<)YQ34a zUx`0bg4qtwcgnS<Z|RvkKu7XODGT+MGL&~fxP40OZfP_Ehe~g?h2eU;rFTq;wOb7< z0GH03QXx`{?Zlb$X4;v}-JNV;beodX?n^ezO-}39%xN%VJdLJJnwIxF_6qCvHYRr@ zhA-S()S29wXiV<nT9)~@BN496oXyt@cA0sbIkWu*$!U%1TZVxt+K`-Pn$FB~<B-nV zh#e)Sjmgc4VL^@kd#uU3g7?lBtUJ46(W*05XD-{iV$s_670bI94O=;NRo4phs{6%D zhAk!Q)NK7VN1b{_XLq5Rx2Z2`?-;g_uh@Di{s`=Q)~x7WrX_(FuPIonS5-Q@_15-b zYwP0tJ&Vt<e&%|>u9Ig}?^wI+44--9yjhoc1Sig1LwJSWNWW-=IGMN27dY!JzG@fE zrC&s7gm_9lLWFqd{YZ^TJ%SObM=&CfM_@}m0$a-kjKJ0qj-VEM1S8?djxZCJ^_V3R z3Wqi1ukBv5qO)L~=@pB@vgIo}3Kk$<!RiBy+{l$ok*%}3ZE^SFDe$hCGR-#pzt>v0 z*L%kx^Zj+?$>i{A#1!7x#bzGat&gNKoyT<y*7a2>S!oSf*L^NIdpDr)?d?U@`9k(o z*V+3l*taKMCD|osV=fAZfsGmdO()Bq?zx=3yTHD^1IRnbE;;{}qwwv?w;r<WmD@7) z_lsoDUeJyFJ+e#A-k+lI?H!_;{E|J{asE94_U!5R&w4jll$^cIXgqs29i>`3I@wFw zGTD8e?Aa?$BTpu~<ZS$B6b=JFsj+qOQ@ovj{{Z&w%^@6W$0g_A4^a5_HX*zCjj?5_ z_bS=5cU}wf{bZM%y`Q1*>@_KN@=^V*vSqTTwR?Pf{m2W*E;$>Dsl&h~ah!kr?%MS? zxB%?gOHM=VK<ARR5vXn7-T`>c=;U9@mca??z@EMHcOYXkO3vO#(RlXE`+(-5lf4>S zCVLtq-yZG8TFEXsd)J`w?WwQ3$+A~#%VbYJd-f{j+W^@mXYUpip1oTpBkw26-o>^| z_U;6G_AaPG&XQen_LiXV?F}Ngl4UPVR+;Sm2e!VwdB{7-E;)O5qwwsRwRN3;<87Jj zZ2|lC)UIOVlC$@96rR0LO+e0(<)5(1WbawFp1m<$$OB}Ttc~DXC@fadrw&oA5g>b) zl2s;qf5+Cd_aTi>mh6(Xp?5g=_CBq7rhdqtu(S8y!M?ps$SJZ*MIi`YVQXzm^XVP@ z6HoRgk)6F?f_;0t5H+7%a{e7c;oI8-Pd>}uWLrjmP4k|;s=bt@$u2p21#1P~)(v4g zS@v|y6i@c_P5|HDA>^ZEm#n=acTBSS+n%S|0tDI1kexl*_Uv7#IEm+yv-dF+7OUtp z_@eig7<*IMI(s*PJ$u!Yk(FI?_Od8^d%KZcf2Y|p+9;AQzP%P?WtW^iomYK($B~_X zSKBh#)AJtR9&s7bzfN0+jncer{B!;_fYp}lJ;c_xcaWkT=v;FCeHn%4-@F5eN6~3K zuCryb_YJUTZ`?ZMcCt&(ULOk2-uxVLKUwzVr^;k+4_n{fA>_$qmz=%7LgCrF!|$)I zpPapa1bg;sE0KH2E;)NIq44d|Uvu7<e_2~5|Birtdz+}%i_Rry?-wXMd!O6O?=~gN z-b`C2d#Ayky-V;fs72?Jv-dU%&tB_3c<Qt4HQF-l6^{dZ_QorAuaI4`HuPR6-`<i| zs);Lmvuv5{T?O{-4Iyfty5#I-P<Z|=-ALbB(8*qtEt9=wuxD?=PUNFxmz=$V^V_mR zR7*gTz1d{(WUq~_>}j7SP29x4Dg(oR;!$4Q6K-9}#GQ=CIw!Fek5sJv&0@*R@vU?} zK<$2ttTMH${X^~Aba@)!kDDvI0DZ9~vAKLY;v;!EvLU`b_N(+0d+|?wnM<xGtKCX+ z8QHTpV;<Es<}SH*o$R)e{tvVUs<SI+N+SV)tZ|AGa(N^GkcnSDAt&>aDOW$EM7hol zR##p@kR(Tma(}#KUvoQ3$SDLnHbDpVB}a*JUC%`c*&j#Q)Adx8kkgR>KptNpPbiRe zJrO1Nb&&u-o>U-DE|7K3ixT`yBmj`@+z++L(+bLUK8X_L4Uqsq*6}<_$js4vLe}v# zO2}CR*N0x>DLG1%&x`~Ba$|w4<4cq%Z;Au}vi9#NA<u~f0J8SOC?S6u!S(TaCWrPF z=W{c%=BH~@3#e&+s*chQWX;dd8HsyGWX(@qH!B@S*8FszyG%ybT>LW?lI};={Cn6) zT#F!U{`FbeP26V-<ULl_nw6S=e`n=ZWX->qtnBLlQ-S;oD-Xce{QQ-bv&d=ipp|zb zkGIE8sd|u^pXR<wvg$KG1Fd<kr233)fX*Z>STzY*#~@Nri_H8CJ`u{XG&1uu_@tGO zA~QdO&sbUUn2Nl}%8DQJGg@=B1(~r6?(xc*pTU<xIlhB(=4bFVTi%Y${0yG-_>6V% z=a%0~IrA^j^#RHF%lr%WhO#@51pBT03Vh~9@XrP1x~?`UJn-lpYQyB;hElML`pn;= zQMOq9pN)K>mBaBH_Cf}&L>fLg)B`nx?ZZ*w{G&EWdMs=hc55C0OW~gS3TstUJ;HRD zZG`nOPkQ&rRyb_JKBu*-Ypz<hO3zaB($X%ie`=r53Yf>TXI+@nP|cI*4pYrMnU&Ii z94px_teSuDDy4baDqvSd%|BO_(mhNSc27_pW*fR`pOs4Q9*{chV&EQyO7EV33cH7% z!tQ~l@UW+tYrA-u*}dE}<~_o+0pV$6$Fk0t<t#S@L-n6&%4YsS=5iJ%4UZ}uk4l&} z<~W=JUj$|!)qZQ%9i0khpEFp;3icPnR~_~R!`C@N$GpqQI@gzT*i$)kQ^%uHy`M}R zjuoY{&pxjGKGL&~8=OYZ{%3F&j7@{tr}ZvIQ&)DH$*!#;-V-(vS;tLf>Cp*i)DI=? zMo#Zzj-3hlxrCgySjWz+#rUQDGvX|?Snaog)vxX34i9g$xCi}HVD-0=yo2m~PI4)w zx{56^kMMY~_>;-B9qBU`t3Mo%j2>TP*Wl$~;$!NzfN%Ho3oMq;t)9N!;!gBkV8!7( z<h!k2F?q=1mEesYhZvc*o=5+T)r<3O%a@%OEG7ne)@1my`8~21hjK3t5hf1hUK}Dl zaWL4%!C)H)gXIHpFm-JlB0X_1*v28!Gj;~=qb{*1R~%j;69<D2g73GSL*Or3{Soj6 zt5?5>iQ%__cUb)Zn3x!UegNL%adIAKuf>Yz4=rCdU$wXw{F=qGf7rvXgB8OE$j3bW zaby?gH1E38K2m41+ZT|hO+crlIp_2~PO>Wzlk!r^uLo;fX0hMXuJo}i`(<T_%ka5O z9Q38=%a&U`ew7VaybfDbtH9?n`J1r(3NShH8NFHamT}YmYp`O%K5K9XxYpwP!1FA= z6igdtE!^9|jGb@ue8mB-Y@RRw+5dE0GJ4G!;$ig7;9J3Ne$GX9@u9wZudtr4G`JYb zSI6;jHO<kkd8RZ4OuK=6AU;Ol3SQ&k-jHLi8#h~h8=O9i+rc})^6hQ%F3Ud&-VN3m zG1s&{mD)1<^?>CcMrJM<j`%06{t!MDSw8w88FB*onhEs*F$*~UsNEn-o*r^y;u9;Q zXZ*GPgR#F6?8QOY#VTlJ+-=+f`gX0u^v%6%(>!ap@$|9A&aCT;U%GycFk>HKmASD1 zJNxGT#ObGb946(56i@oCIrbsVlV&pZjeZU|ZT0iObyhzMjD5q`{2?X=i!;+=#en!k z{$O{y?XTvdi;3n^<R^99yJmIVj_Ufj6j$YEKbdhdYY2ZIjBSH8_wmi(<zU(}7{BzK z%&bK$&N_>`z+bfZMeqg>GoMV|E$CkXtKEa-1C~<_mLD#*;OP7d&#hMw8}K+jCjJ-7 zW&^nr?Djk2Z}ih`nX?ZsvPoGK!z?_<@iE61v;MIBPl07$_+qg3mq}#C)aa*zr&xX( zoCV9bJ~HENI2zBnR=)$>V)aenRu4a7v5r^Uz-mkOx09Wp*p2$KgI_qfxv|sZ_&5=Z zT_pcCri}YVWOENnUyS~0WcqTEYl}G$>8Dw&{xT0PQorOIejCmbF#R%m&4+~+cUzwG znL3fr@S^y`i{@|-bsXQvjI~*3_$QPnE!O;D+|63V{opFAe;HhBaTa{3hv}DDqxd@X z4W9mbi>IQeU&iJ^Fk@!g-4DLq!>wS&s*SuJtavI8k9wSKmh)}&&w2XqSiZ*d`(U?U z{J?VL|4U%m7w3S*>hDj<E<W^m#sp*~e2ro|fb2LvE{(;;Y7R^zrz~d7HJ``2{Rn#o zPe)HI44)XAx#DaRw`lC(MaP^hJjd}d<6_oHW(>`_Qyg9M<HI=G4dUQ5SiTLA@xkB| z;K>#@gRk~*7OeQpCNo}!FAn2nF!NO7W$=CARu8WPt8O=Wji>Lin0cx(HNGXl4_W<A z@HVTj0PnI`@nMWjTN}aOu~=ipSQ<OTK;vjQFM?kM%LnlfTMqHiv*pOnTb45({h-Hr zFVE5W*Vti>n>gC|3pWx+rGP%Txe?&^jZTl>?zj=)UvzH84>zxZS`0Xw9@f5Q)`gbN z*Mo1e_BE!i?l4TdA9iydJ0I4#_mG)~Mn3?iKSsYFJjvn)aK>^Dfte46(+0lY;w50_ zgVBExJQu7uFCgFH>02$Hho1Rh+C2hhtPTGW@N?iXY&Vi$u>3vX-Ik-aerWZKx%OF8 zSN^;LRv+aj^C0r`=ay54{vg@yFJN~KqkX`Qo$9->(0iBN*qP5DT-~Fd9sIpmJ`)dJ zhnRJ<o594^tgTJ_6kDTL--)f!PX`mvNPnHx6HD1L`WCQkxpu*k&)E9p1j>})&2(6C zcYGhGW3i7YK8k~~<A9r7-N~Nb$Mi3)IYXZ`56#-$bHL**mXGw&a5QJ8SiSl?)#_`( z^vl$hex|3FE$0t7>dQI$8}St*S2xZ3o6pim^Zg8{XT67_kK?HuZ--M2R)5oE{51Lw z@NA2_z;i9<i(q^(oNn+!tKSK}+v<D3>#hD#FmvAU*MT=#eJgmg#czSPTaIk*@HpQD zYyV=d>3A5m%kj|o+=~ADR^JQW>*@Dfz1sbWr|<XpuX_5!p8lxSpQP?_uzYAGpRic| z3|c;Y)p2k97@o#6<^l8E__+bhJXhUdF8Nlg-w3|lV&b8D6ZJ*+E&*+ry2K`6Y-F>D zc7oj@E?xqD8H~*$#wU2o^0$HI4}AGqRAlw^y(r=7DK|D5)1sM{gAYZstiBg4e>68# zSN=GgD?_aBVia|P)vtaqJo&Hhh85i(>WkPvis+}YgKtHTf}I`aii=Otvz}gkRJ+tG z`ktr%fz=a_q92BOtxr~@vA|~VP4L@bd?-$mUEjOGl_5vZA&OIA+20IKTPzN?j2`>N z8IOOR#l)bv$#OP;Z}s$U9Hn32=@mD{rwYCLF5ie-@pB%2KI9bdM*p(azW_cS;&?5- zmU_6x;&Swpz_L$l;__MjqAzjHJsamZbJ6JWE#Bzq<-hoS<awUH4Xk<f68hz_=s2Te zM6@<hNB-Oq@5&#a)wVm2#C!7R5zQfY4G{0mUnj)bXWYG59RIGLKzk&Oy*oa~H|3uN zY0RcN4)bZ2!}P%&>*6~wV2_PH);0V`>92XlQVnJ-%x7rC*XUc2(^fwfTxazQz|0N9 zXYT0yW%#XN=0;>^rq#EhpJny3Gned+)x>#@^;ySH7f)R`IRCZZM$f*m<>FwzKjQ2# z7Lm;~m$K>?{uZ9&qPFlq;`^AGOw>Ff20E`zlpV%Ub|xx5#7XBeqwfLJccY&UrtcG( zCx(-?oOQ^JmZP~d8!Y>Gkm+y4r(Y57uo#M-_eSlmv3g=@d~$uqzpGsg@#$8FX*-H% zFLfN>$5pY|Wt#JIC{KaaN7W}L2D5MJIf>ykgYn;B#!c5G2GbAq=Q8z+eMI-DM!x`z z&&Ezac%$XK0N!Oet>EV^X9sw9h=T-}ec0G(1@8kZwzXuA38t;L!9TV7CE(XAU+o?N z)0bchc+hel0>1~w&mc`MwR-9X>bv653clFtX)911)UG&;wd<G8Nyh#U(Pu5Dj{#$2 z^ujJajBU_j>$ZdOPd*gW$6&eD6SH84#a-ZMEoN*38=oS^LZ43>f9Ol#`Y!yc<@bOO zfz@|n8630vb>I_V+SQu(MQlu8Xtzjl5TCvjm0LUyTxB`<Uz7q92R#cd;`nLm;-}7! zrZ4!Q^P}t(eVg1G;$qs<dC=%z0B^GRJK&ubzXX2HVq#OI{?b+vu`1eaG4U(<0a#<C zcK3Pueoy}zSZ(en59Rg6>Z5F8r?|rEyTO&AK3EA>fAPO~E;$|Qi!TLF@bpu`)(2hF z82)%Tb3A=Bn6`?gU+?KRgnC`~6+dJ3^jGITV`mRo{l$O7dC_v@=MOB0xnE4YBF@h( zhnN%}3iUc?77vEF2*2XYGx-yrMpl32KQ`mlAxCY+>8I<L&YLENs++ZX{EW{66Q6iF zxhdqBy71hwMaL0$%!v~RcR!``se5)2XAGiq9CqD3vi3c9pA~P*Kbz8d)*b)j9ek~W z@let{sC1bA_~+T^+`7&?hxSs*9s}bZ)^oW!#hm?KxsLb*Kph8-{(0~ei*?MIZaHx< zF{vXa=KJxpEzTj&wfHIU8jJBIcAv$Y!1seMqb<fq_XVci3h-vjAvSuBY3#Fa=~+h| z;~3jd{=UU^;Jsk^TnT1w82%CPPprNQeAx1vz{jmV1wLu{vdNq=_IH5avlxzvg^ioA z8@s}19g~TdlCJr0a~Pl8xagYCjjxWk6CJ0PO3uEAH5MPEUpgn~JZtbC@N}?Z-b=n7 zOblZ$lIfe_<iO1yCjN%cJlDOL;qL`A7KXnM{HVo>!#2x*3fu=)%zMeZJPu<K`S60r zk+1GN3wCo}pYb%?{>oPqs|4H}-#K=Ad@_3Cr}N!Br^ly1cK8*~zK@CXq%oA$lHpF$ zeAoz{3|6cTkf&PxCUAq*<9jS?^_#)WXTz7C`E2m*;CU9~i=Mrjwtfiiws;+Qy~S$x zkq`&c6Hnt0TYb)MZ0-g>WA%OD=RE!MV8xuV)o0MA?hY_>+vq#MKk+y}wH*0>$l{&g z*TL$$+B$Ca>ibDg|F+drS99C(wJ!+=HRP1V4}d3t$FS`sPqTPBxY6P{;9D)G@4*_d z^&#j9v9ZbAQ(pqvx<AD7Ggxo+lflea(_iT~;+)$@!0xyj&>wfK3+RKJO98Q-g|A8h z@x8_29o{~;Gk@$2nA?$k59?a?a_xf$$(+v&9spkoR==JnPqO+$;F(shxj`HZXAij5 zV(n91VES#IJ@#6>0hzuSJ-+L?hr!Q*zX_HPN674Vmuqg^LEdZeT=35=ZUW0!w-17& zeQ<zFZW{;96BjGlz1``LdUbt_+N@y}2UJ>I1tz<7u5|r;wl(xj-O2FD5kJFc@8;l& zej0cbTcrkTe>#{P@w48VdyU?jd(D<V4?a2KxA2`7XMX|M+3&LaZusPg-^1tpj=v7< z_!}*M6MS;S-^}*_9Df_w@poDNbMVO#|9Njszun%NemTqE3!fbE_wj7p+20R#_8Bh| z&!h0k5&t+JQ91qzu;uGKCBDwH%8sw|)cKaL{r!B$pJ4fQ@W~N>GDGk98L;EevHWKE z<cL3ykNg~;v2bhp>GN^pPZxZ0#P8-aXvb$PKIH6gwERu*$q|1u)6emVf3ybRbC&-+ zd~(F!&F8a@zX$B>@3Z{<@W~PX6>eo6{{YzWk68Xu_~eLxoX;N}{{-0b^_)%pEvg8! z;}=zO%W3(#*GM`3WXsRMCrA8gd@knr4PeKgWBJYS$q|1Zk4GK91?>3j3&x*T_~eM+ z#%DT?-wt;CotD1~J~`q)$LZGbp9eesi<X~*PmcI|`3%DG_kkUM(DH}ilO4Y}#^tEx z7stVtujh60zqmHc5kJkdeaD{wc6`N9eB!4Z@rhyD@u!0wUojM)_$fzxVt9$;FUYTv zSWK)8zXLuw;&*Y%aQtqtv;T_aAAnDe`29R1a{Pl}$3JTM$KjJB{s}I19DfjO`Eg<; ze{|oY?D+8tt~o6~UI})5VrBSs@W~N>GWR%+p8-4mX3O6OpB(Y~xMp_z9bm_&FUI}= zd~(D;#C4<N9|2o_Nma-%NpU_QJAO$mr&`M|VXP-Pev9QVfKQJ2t(*oOzYT2oOINSr z9Sd6REllsX=G(Muue>^BwwC|dO><@iMb>1D6r}!A{{_QT!uTLhGg4jbBe7b&t1`2t zdTVB3X7rWc8f)GU6}>CzrC5fQ4ob#8p|?gwS}<=SEcw^hD_OH?bfV>Rxj?HI=*?Hr zTa;dkeU|q?`I>!J6TW$ALoD`-f6S>){!L8#V%JdTCH)_}>vg@aDyV;_<*pp>WHW24 z4e0I1T6uwYu05VvXt<t#s$t&f<oPE*kK&_Qr;ax3kA^)oT;yRM{+>Q726_wB!j8f6 zSlNd*)DJFbd11rCTD@(qlJ(cd8qJ;!>DrdW!rF9AZq&k|g+s(Y*EEVZb3QpRE0#X> zozdwe?>aMYP)i&u9i2FTgWmd>?7QlhSG_&nyj}j(+ux7X4~>;RXsY0?X}NH0!*{T! zzFzfcb>EoBv<kp$qhoR2i5e@~nki*{zN-efVoi<W{g?FoQ0b_|kx@ZOO@Felsl5Ej z`jg=s(RhnjJd-#U1Qow*KYbeO?@@c0>{|O@(q4P|Q>n+o_ks;{+~50p?U$a-j?E_C zDy=R_C0JXnY@nm^AHI8S#aP~xd*ZE<pd>T9xuJPt_-3@jy!S0Lo037(*Z)fI+Vj1M z6}fkGvF)+?!uNBrzej0T!TWvuvS$j)IJQNJV^z$Ti;(@ga|+(QRTtId+I)m}L#;_p zXws{2((wK*T#i>!T7bVZlWFgLS%3KV<FwzyH~QBsTHL+5(|^%O`?4Osc0ZNhG5FdQ zol6%jxtI6QEMBu_@vzs>+|#v~cj^p#ABj|J*RE(=)ZH`eJu*h$8Gf685$!DcLRZ(a zHA@$-9rn(WLYD7_%J_o+qR#HFMcpe_EnC~YcolEDS+aKR6xZOCtFO6&7nn#TcK8kx zk856Yk}v64cK0&90B88?PlnfC+rIjqMRzT`*S+@Vf3NqV?22X`7gQE=E|10Y`tx+2 z+E3Q+nWR_NKGQ_j`K*+zbddavLE%4V??yz=Uh+j`XHRvVy@g=UUhqX^?Vm0=d-G9v z_RimcJb^6#61GhK>A2zBdjZ+m07h8981d~rhphUtS8mHBKTP)R?M9wMcFEaz0ENTA z^Y`#izQ~^Js7%|Z$(}vqS{FK(oDDq(a2QyrnDmilFG+UxegyXI$<|2r_S!mZlq&c0 z&)KU4JA3~E_U#QIFCe?*d>TOEFz|wQ{<V_jpPpS<dx30ee2U51Oy}PO1H*sTM!+@Q z89dLvYb*FTJlXW^jl{dr@}{yS6=(UUe!8SO*wObZhPB&_Jd!=dRPEYSEZ&fl*xEYg z_jq3Y3-(d1mvY5L&x2IPJP7`jt!FPj2f3E)k}E6t-Lszc2byaxIi9xOJTIqR-5Z)` z_WBK-+N~rP{O-A85Z!OdE;)NncH2n*|I^<+yMAcmXs&4=SGt6bNsbcb(Qgi=MCKV^ zJ|XM*T9lAekpMu}I7bP29D?KQV&~9UOt6G!kaaw?zYC3JkhQ;DZ_A62<?Adf&q3C4 z#QiSRP3pzAyo+)jAJ$pfm2dRQH4pv|E9-Zq{Kf3=JfofD|F-3ECZPKNkDjc){KAtj zjM<x}rLp1XWdDN0yUHlIw9u(p*Av>h`UO9rG({s{N4Osj+S1U9M>UEwuOL>hHJ25- zOfZb_3?E(_<gXR-*8zE5{>nljAQmNx-)!=Du*RNe*ZMrn=of$+Jbk0ZThPz7oK7&$ zYt8Qu)8IC%zaQLT^;d)Mw)#zAjseEL+Iqy}Y_>R!z7OpD`KHC1N6%P}=E*Lyo&{_F zW}cbfD8kj8Fuzf30@qkQZR)vpsruVa=J;ax($mKX&$Jxbp^t{IeT;Lx!SZ=ISo@LY zQkT^~1n#kV;-}wl7(V^b=T8Q!t?eFXhsCn<4B7PspGV35B=Tgi;!sP*=ZI6}VfM+g z%a9o#&G#}rPgmb3fK^xf<8+I$CpqG)j(eUCK94#kQNPCFIUdKyj6u2VFCo*e!MB6) zwOszItu$CMmp^qDw}2bK^0}RiKjredgFFi?n-`ObbL1Pm3!FdjY8@v25y!{)Hrn&e zVC&mx&$rQ@Zw6c6Mti=Q-|Si6jGeRjmcW+};u~|dLj9dbW?T$byR$v4GB+;ZkGTHA zi^gSv$MG?0^L#lDsI*vfnCzZGn|)vVjS}NkVxAv?CtJSe8ad)mW3D<rV;6m%(Pa5^ z;FBYMv-f!h{*Q9@@!$9+f5{QQl~aea&sZA{u~a-GP8ajmak|0I=6cKD0G}N3H!_zT ze-qg8pSS$o@W~N>kM|kIi{57#2Q7a9J~`qaV!WLFBVc2H>FUnqEAIT@&)}}S>dI@w zhj1U{8C-n@KIEUl-4pBPnM-VNDE5lB_4@}0S!al6J3VE3cEehavHFc#U#zMj7c4xz z@Kg^g$1SYrsiP!VIHWC-T}>|2aK(eCnqtSvE#!Gu965D!Y!0aThEoIWC3l~?Iaqh9 zDd;oLod!}{svn;=N6$i7uZ6WJp6Gd^;fbb}(j4mwNc*(~TGuLE`{ipdp0O5Uu6oP8 zW}UlSqVpQ9s@GW&uDy~A3^&IUu^fG6-O84VMTwTti^@{0O*p10$7+pDqmJ!8#e34H zj7nTX&Cy|txuBeta60QgpYm5I)A|IgORyO$qgzTAC8{2)yk*Rzx!4V6%>X?SY#Nm* z)k*<VM)4Glh;@#3E7oW|0oF$8>r8z<b?U|7^eJYA;dtxQV81tIR`=^MYxQ)RbyULj zd3Z+D8}=c!x%zR_-<aA;Zt0w^@k(tif3nlm$^|W@zZ$G8esi#<_*a9m;$IH3RJMs@ z|D=PHWJ8IzTD1<(-DcIjyAoe*cw<&9ODnCWSmlF-(aMxpX%(PBV)pl8%vhf$idl;F zBRlI9x6h|Kds5r=yilHv-JtjU=YlHZLxyz?HKtABYDB!vK5Vb>KWis^yxFd(mfD1s zhs+aKRz_&PU}{n3u_D$msXuw%Lx;*!u|<i)`d>DtDQrp1^S*Lu6uQ)5{U1A~-IT;M zJ1SV!PTTt5j2?*-JiERrng!qZhM2FjZp3+NKM2?0XbEzxNA|BXVhgfkwbs)Z)+g+r z>ec$cSa+?j$wc<lo>=@B{R3CLbE-1<?RSII@0_Y(#N~sckV$0AZW#J?Q*41O)W3P~ zy23a(nelkfu3qzX7Y$a4D4JTF*?h!{LFLVMEznpc&r;8O$V4V#7{te{R~3ZuIpW2q za)qm<{#I`HV`L(jGHl{#)}RP7iKfxdZgBg`x4t<%O5ut+;p&z7s672bj#{qH)87oE z5OP~s+xUjJ3Tu3W8ZM5x;2YFX%x-u~YtY^BmhjnTkBgd_=e^ZitNO;6l`1|rq|XR) zy{T;jsnh>67yN2Ytl6w_+^ZVe|IWfaY`AmsT;}J8qxt#u0qWZsT9n!n-}L{5QTfIT zBaI4?j%CY!Ju^11g?%!nb+`PPON_lSQv3^N>b&7KG>-M}9=y(t6Z5_DU-}28{`UFc z^!twv$K<o^=Z|~)`EN#_bw3|*A2$1W`4+pMpB(X65Io0z?vBpketwiSl1GoUpSKL( z&!bxG=jC=kC#qxXPc@H4L%YNF?UoO)Z)a0mddwMc)nwH@%2`<3RnM9K`_2EOwxri? zH`whayWMQJ+w9gHZ?Uw)$~*0Lm)#oMls|7}vzj6D9xK0Sw>i7rYq$IC)_4W~fR)W! zt;h$hJYcs+?AH1pG>3A~VYjwF!A2_^f5YPhXPd0{OtWw1h*3gUB%JlOb&aYt{bP;? ztMb}w^4g9Cve#i+=`glCOpT7`jQ&OQzgGXFwsNMa=pV;}?9@bROHKd4ipm)4Iv?!0 zqvw`;C#y~-RsZgrO|eGj;eks|CN2!BAJ@unsm-B9UCop~kzhqs)fm1~F}BSb&?onw zepjX9vTEJ-sh6gHDEU}PtSpmwVap4<hF|X-2y{->r)pz2T=mQFlQ@0aIA(i>)p-WX zMkU54%(_76>Q9aNgvw;EzbO3gI(Hzb-ga^*$eL@1Cy(!c?_j>%mW9_9Dm!{cSwmEB z=!~*yuIzM0zKs43UU9VA%u%iCw&LEwzd!xjo8Q$}8&g}^27HQG)|9BY=B>m<m50qI zg8Do#ymG037n>#SlfxDF!sm>U=O<Y&m^!1H%9AG6mVb>_(#j<MA3i~>2(MfcP31NH zSG*y=LeBhy;v8k2q80bP-|<R)NNv8-jKBIo4_<zAcPwstusg<TQhATg-2-Y3^Z$L> z|Ay#bn<IPPlYd)muDm=Sn}Ip8D_nHmFE;skb<dpqsB?S|?wRh(is6-$s~?k2F}!pB z;9jDr@ek+0FyF&ZhR-$+?wn7(VNw48{9$qb0Q`7iEU9yrd8SXQ{dsn_Sl&7RgGG~A z<ucDzZ!xjr_^@gP{nh@$8e}G7ta;W{)-sy)l4DhUH9un=?UPmGn#?M-_3wuFJ}{W^ zng1*s;f!zT)0iHsh?TEekzq|#H*#lg)qeHXyEn4$aouftmb=1?u14-x4Y3dZ>bh8} zrvF#h#%gPRhCI&T8iU7PaZ62q&Cf$`GKu=Xe6u~qYKDF**dOS*s(OpHNe_>f6o-50 zE%KLI@BWHf!;gTW1?qCGcF$xTYfOBeTy6GCj>o<C)Jn^d_2AUeDwD3D-QJ#tlZn`< zPMtYoJ#!4dqPQaUWO)8ijqqA8lskv5AV%ARQ|nmSZOhmP!xg{O${PncGsUzbJ+%i1 z|KarMsh5XGFOJpQbl%#tA(S7i2)7*b6NAOo0pABWZTg^dKwl|qvPxo&^WxDJ4;FK_ z>nq=CG{d6j_el4)>CdMguiQMQFF#*8%IBBs_@A=triQID9}Zk`i(7jxQ^6{4e;cmM zUH`ZF`$OOQfgsaxk~74~AHSEAAN_h_NJ3wS{wR8LZQ$us=!ejoYXwiAU{os5@AvH} zp6L&#wpKqjrmx2IU28vf&ewB?Y@+g7^`UcxlXAtKS9dlZE{&CTRLII#OFGT?WfPf- z!|^iajN%_&qk;c1XTD`|!%%+i(cXI}f6H?Yt{qs9N8|P0)#1F}oQoa%;pric?0u=N zO+i!9(IK9KF#kJ7>zrHvfEkBa;+ofZ4csBlR5b^~V|V!N6_wV%nHoh6ovos?PcG4M zjy;WQ;Lp2ziRQ`fUP9YUS@u#^oWFL=rskV<*E{Cl@vgW2cy{{0Xx5LU4=L_3vo}}t zy;c@04X<9lTH9f+vJ{JKs(!FJrMru4Q~ieKrs)1S)_g@SF~1gl*;|7_PyOJpn}Qxi zx%rBLea!Ju7ZzvDUYdL|Yt9OsL-_$uCh=J6u>^P2b7HSVSK5EeYLc?jZLD;McOo|o zF;}OCbwf+c+3RGx`3hOjC7Nq8UunLsYEv!|vixy3lUDQglBsoLwpKs>A-nfZE&uqB z?H<W-?S`TL@yr4C-ta08A4`K#$M(e%15L4OG#BrRjykOEhm?uG(HLt~+>Y5j`HeX- zo-VPPviSzpU3IK8I%;&he>_LZ?4Vg|`YscPOp2#2O%;7_a3$G4KFO70sMj@abPaiq zz24okj_I57u-Z3ImiEMgUk#QgnAOZ6CFXlBwY9T>wSh;+N;A)9%u(^H6{#mWTXg)Z zoSrM`?9eeVb*<*Co|k<!!Jd=*YK8vG#(_&X-aX!PdCO>hd#mT7_Uk(<dKzkZ#&zr^ zzRkq7=Y>|TKUIA#>oC5P?0fnyGna_zN+PCutQCHJ*R{2jAKgbSo&{BI?Mj?rHOa1P zkD*aX{o7U3<;4j`^=NtQ@~7LYw+@yE<*esg@$^br{963s>XmgIxdtDuV@1SmJv!b8 zU$5#Pe{hniH99u>>2{t~UPKhPX38^76|AAFUWDnuCG@0LmNFF&*FHRXrJf#gHImx= zwJNv9bmyp3-zhn*xm(f4$Z${RYKJlJF?Bl4(@&l|Y8y*F(P^GT60_dU#A6Ay5Y8(i zislLLEMj~xPgZYun<zZ7rtU<dV)h!dkDb_i`t+DB10BIG6F<%hPfTbjeRHTL_Qntk zOZJ6!`^S&jqT@l{uL4wwTxE6Xf-;G%o-Xk4?+X7AHh$N(|2^upW3=NOhPx>1K1X>E zW$VZqhcvk`KE3GHlh2kmP_WS}EUdrDD;o)J9!crxwt09Y*f)~W)9vuEV4;6I3(5<{ zU4@DQ`MCnQP<*~nQ6O_4bk4NroTcG!1<ysv6%-cse{Vr~p}4P5Q6TRxkPF2Fg^B{X zzd$Y&`7G+3X`rCAuzyDi$_vG#g^B|CP=Q=19xqh9k6h?qA^i_ruHW*VGgX|kG-iJD zcn*sBzSOzO-)H~SZv>+>Qs3L6(qZ43a@wHDA+{sb*Y60UG*bDFsB}c2-yTM3r22EB z(vjQWnJ>Rg$5`_vhfg=(bgS@Znr6(si4mG}(~M@xH{SRuvz>R#&1U=Ao0_l4OpC?X zPRme!>!)wMNxaWC&-i%rXKpcDRlWJ9n{H~zOueGTmU+C`+|S%9-c;3_xYo5C9_%Ns zbsnfJ^kU-L(2I#{LoX(-bzX=QdNOfs*aEWk#FT-<j!aye_bB9eeB+0_q7L63zwT`R zRL<z%v#d+s?iHl{a4l$k^9V7vcIo0y^ED(eUkWzLuC;gZO7hj+tI<(!(W*OFb&K1z zc*UA~R`6wJ60ddtLKoY`U+8XMw7BC=>6R_-imhl{*4e$H`(DY5J6Ct!yK40p)-K9x z;mCZfbMXr7tzCQ1>NUoXrHdCWUACq>#<pv5cYADU#|jLEI=)bS_hP=9jW2pty2B8u zPwlq$MP`jhUh=+j+0yPss}^@JZCCpp-GwUIS371bZCfGEw`XLpoik+Dux;0r4{Hcb zVcQ~gwewBzE9@3U*V4616{jw~ioUG#&J~@@2o$nnE)eQWTvvB2THdkv&b4kVHI*I4 zVuXz^cD%22`tBZuZbe%U3i`F0^;XUJFcyo5|6Pk2%TC(sTD&w2B)sKo7T>u_BVd*e z;1i0~ZD!oRuy)y^d%D(Yek@+vz2a^&DvOpbUfQlTI~j`=YZou+Sf*|;7ql!Vc9$(% zqp@4HqGwqf;qT~>{bhghg=L*fjUzmoKTQfaRwgUXQ&s<%I;B9aEs!T6r^qf9u9fYV zO)mJYgKW8!9btXvv@2xW%9_H%*Aos4t2_>iB`3ZTJYpW4__muyu<iSm#;-324-`F8 z92)cM_KvW=_k?_#0Y9W*9rVd(u2~Ex?eQ8$_$`NuegBD1<p0_9e%thmw(CZ0+vl-> z`&oVT+6ffD2W<TO_;jCR+~l+B%t}_=swJWm^vRE3=6zyMT+X^~HvNm6h35<6#QNrc zaJ|{5H6WzD1!LZotTjt(r<NpZZ%w8aBx{?JiqCYzHvbg6l)oT)r&niAQZ@PCI=sFY z`xx_R#6J0YzdhnUti8y`Hq%o0zrbH_PQ;kk6%PboVa|6XE6p#8D&_!^+V}lfu-{o; zTe5OivT9Z`HB0?ZYfeo`g%zliHem?=P4~w1c9uBTyr`te?=PGY=X%!D`}1gXL4Va! zUD%xYuXW|w7xK$~uS`y6(3+BUjXH!4Yddw8SpPoywDBVR$M3c<RqIa&Q!v@%Y#QNs zP&7L^VOFwkmexm4!}Z21=ra3o!-)I3AE*5z>~DVD{bQuRk2gl+96I@aHvRIEj@^En z*p9~9uQ%@uU;psGL(_Mu!>{;pq13VZ9?pR}^R8Of-M+f5@W)@4XuiR{tXpU2voKh8 zXHjR!;5T5)7k`0^owHEY>e5BaR&{aO_tqx&{8DpEI#v%`OMZCqSt=GRr0&(x+C1m7 zxn|j_)m%NCqgD0r9K|L?tIb8>$erq1yoQUF=mPazq@^pm+Lx_4OCLi!;RWxxj6|2m z=OXFa&RkEQixggbkIXP}H5ck<FF#91zR<;Q1D7q*_4mki{gsRK`^67JTfBDZiWMJ# zcuq=m#d<EkENSWov2?`;A!W`<dY_3C#_F6CC#0Nf;)IO%nK&WoeI|~zWbWF|6~yo! z?_3Nmdv&hz4={bsQa{|0xFyi7!pKd86g$!%gmdKwA)Rf?3~TLdQ)U?HY*Qxc+F9HQ zhetQa=j!+Sm7hKIVf*JA+>mkh!PV+#x;b<wm9seNjv-=ptXO-tsbY`r_5^hnTWWGR z!~IHGzpY-rVp&I<PHC&nFPfP)S4`n|&uf--ES~av|3F#4QPZ=i((qElzM;YjwoK9` z7Tephv+^#3r~8ig<LO?#uw8R;h+fHl;%<Hi6AxAT->mDTR`M6f(ktsa`3|ygZwa!0 zedFx?F?!!#5Ap=E>?sD$-a4>v?|x+6U%TY&-Gjon*M}^BWKVH$_Wm5~+uMblCA;Ko zd=rJkz-IB*lVz`*?Ckvr?Atqn>|fJ58+&aXHcGdN(?OO!`RVMbzGu(;E;ozLC1>v! zC>#dfwvB)5$+DLuTYG`x<J+5u+)8%I*?1R)!@#*3Gxb^abf4nvN$=a+jXZ(ulC=@& z_es9Jy~wR(*&9Pv8T}5Xv-R!uBR7#<a`vu4;n_3qMq7_g_H<qC>@5U)_KMQT$}Ty3 z^HKQr)K~c;d;AV8vgdv$Z1>BeEM>i9mz+J#U*Fy#+>l?gm$GH*?^9skzZ|0C>yoqg z1PagIyg_&`qLaNETPAyd5BBU8zk=9+&LwB>`zSnnw=-@<ZRliAW2!RQJIvOzSCT-U zOm@lH`=2O0d-K)Dd1TqU*p^|hNcDYt(~w87S5$24uu+=d!9Qm&4YvLjx!<4L@hEA< z{0Q@<sLs}5qclH<FKS!<jVC*MbHSc}rMnQlez`steahBhqx88G@b&>@Zvxrb>jr!F zMm>k9a+j>_B0b8sSVf;_Y=Z%S>|IKB_BMk(dkMyO*k`}a-q&m$HcE^7sFnc8o{NRX z<NrkV?3Fblk2D_7qWAo3-HAM%EPFcss!aCek8iIFIYV~I+9>)l3g6xUaw}Q()V{O# zTd;3$2l5E>x#%rhhmF$WEdN@`vZwQxwO5=5`}X>go5(I%pUismo_~vXKp=+3p8DhL z-3a#Vm8X$w$u2p2*Q4<4Em7>$uKb&7%ZOibJJ`1;-bnVA+B$5MmaONWv!{9O{QD}{ zx7UI^lD!SK4jZK<`}ybWT@7~jUI6>{G`~l(_m{Q~8>OXH{B!m+e$L)Mfqi?MkoS^Z z5|32;6aHB&dFcYGZ3HNO*O8sQA+Tp}^gP4~=v;F4G_O2+ZAX~9bI{4&bX&%F#QElo zZ?B>UxsvRXwGns6V5`4VV<0=S=f+<4W*~e1RVeNw*>gTntaN7=|D3%nSnbN*a<;y` zZHSZ6x#av?jKb^hozHpwooUNtk8hRv_Riaj+)H-J*?RzmXK%$I)ilQHZ=)@fJ<S8p zzog1q$u2p2yHI%c?xJo?b3yiI*)rMtN3d^iC$i$=lC$>`3g2EIvc^vKG!IoKd%t4q z+Z#Y0$=>VeJ$oJM>w2>6&9-IOD>)zR**m`$IZJlQ+9)YU;oD=}BLC*tGTEyK`}P(f zZzj9s>`g-9*;~b&GV?(G-D=BZZ!XxkcN|$ZU2^sc&TpNHNscUg&1CUp?{2o9y-N9> zBD>`5{Rs-szs@0K*_1u`<m_qvbKhPY@<{f!*g9;KRyXj^*_#J;_Htm~-a6!w?EQ_c z!$xU!H~*Zy+riG>zkq#v8jF$a4cIztlvY2_KWDE6Z0(h59{Bd2L+&EGBp#`>gnt%G zUVW5*IkMuXdn{*9^T4xrK`rtovP;h1L=>LAF4_&!=wxpJ+1Z;7_U(x`l7BbZI&75w zWIwzCfb1<KJ9{g^p1lvrKe$nH{w+h}`L|Z>wxg51R$Ep<Tpj}Z_KqM=AiL!3eHn#k z?+aDPZakLQGTEaY-(D3ub39{XlC!7#M&DjDatB%dwb?S++Yk2qs}fH-mz=$SK;hea zk!lHavbWrp$=<KQp1lhdzbx4$XYUva&)(g8k$cFpr#Pw%d!uyT^6f1^ZX~;8ZH&4Q zg~ckmN3rW8%bv#6*}DPk+uMPx{m~_7&z-Za{+@n-=Bey;ke$87VA(4olP)}g&mj!| zJA3lmViokz$58_S+3O@bdy-{uDw$M^J>4TkNj%C&@x5QevjyqB#C~JMirN~r9-Zpg z)Z4^69EK3ojyvWl&N^PHU7Ie`Jg9XNTUT}gxHzxBj985NPkA}wiEm?~(iuB>tkDI~ z@z`A(R)WjOp1s-3`{<n)6h-!g{p9?ibEp5+FThw-COxv}hmpPZjO@k7$fX7LG|!_% z<?=`XAQQiQLQdu-Q?7nSiSjX#06?bC`Gj1ZmrS{T{1#vPg!Lh)q;ry^M7hRoLZ}ED zDEG%v^>x2H-By@Px#TEOo<{hLRj6EYlqesMuqssW!;et*%hmQ*Y<Zk=>r1Gi{-qHa zfLvD~Pb!cnBR^$z8SF`p67{Dbe9tP>U&&FTJcFS9S4sX#juPeC*N$67E#-FK3pJEa zV@kO(S2=P%QGPY$u8%55&L_$nD8JrnRF0falyj^JTC8R-<;eL&Ib#*92{pk4%H7x* z73J90+6E?RKDf4Ad6x2TgvBwHBj*$KXHu@~3sRu*M$RY78`1xFtLdd2IiDz>Mfp*y zX{8)FpD5>;W1g2tIh}Ike4>0d<teLCIdVQxK8Ny;TTPa7<b0z1R?25u&1TAx^NI3i z%I~n61(YM_6XkO$Uu!if%8~Pl@_Ceh)hkENC(3W9T<2RQ)kn@J${E|Dzq1;ZyRkMZ z%JHq}pKW;;<<3`EzJPK!KQ~d1oKMtW$X-+uY68_q&L_%SDX+1b{gfl;6Xi=N*LA#- z<`;54QQk(m8`DP0k@Jc2<#`FFIe!;_&gwK??FHp43*?Rhxf3h*gt}2Wm?P&C_Pg?u zX;0^|C{fN>7Jtbqri?M?zhXE4YmrMS-($<Q_(%e|-^y9!a%A0inN(^17oW1Cy%~<X zll)}(6*Mufp!{Q2mc1n94OVVN#$^1HR-S;&UpyMqusyxE(WE8{t0@07E2ojGksq^i zFLDa`FG4wxy-Sh5Z_B%p>yTfzvizNde8|eKKgWm5(YhP9yo5f4DfCb8P9G*uE|9M) zkZ&%KqkYKQTU=1yRUqrRwn>(+=K#LEwLt!smG{$M=4Xl9|6G4wvE_}FGapM{xAHvX z4&F~_UMRKHyz0+>qa^(NFZxj1`=&-%Vn4|~Lmz&8eTF*v%=(Oy=!5DrO2V%-c<S&| z(eMLd^L>M}m4#n2I7_MD%g|!<b%HZ$MBgDeTgeq?wU#-vWTa?@9-JA?P=7`=L-k0} z3`<6ermbT>>p!C(;b*{SsP)0`8A^Sge1=kA+4Yp+?64o&pP_f3)Ss>3$}>%kGz4KI zwq)243@aHn1d(HY6JcodIr<qMji@Y$Kxp%f5Qgf45T5Z#xOthU{nXlPeT46Pd8Pgr zy*%}Z-|q6t{jYTKZqNIS?A{{EV72k(e2*S|zstQow0q6cRfP<{g1*<~)z5#K%Nmfv zC-~py^6Euj;qr9e_qIH3{%cJIO1~8sa{WGG$z5&Br!HFCzBrsNYyEeiS|^7EW!17( zOS|rkLge0`nh!|Fvd*Zqd(E1q?Q3G*OI(>f;fvW9^9EI0Y0a{*1y|O6Z&y^N=7_NW zO4xi;-K#tNZk_Sf3(LfYz9Z*T3%*z3#mfIOMR+pc(#5<FmGh;p2_nq-*kGLlxvnx; z=f8_Bo&X*XzKE^Po1A|QCk>uLzMRZujcl5CpkhzwaD&B{UB^+|4#Q7OMAo$gr@_Qn zwo}RQ4d%QbOIyx#FzrSh{4;f>SAE%}f5LalUnR=g9nK;<j*s!dyx&wlbKS!WHNyKl zPMb!r`t-%T50&=io6*}iL^df~>Dp54Tw6Y-kLJCkYKv^%T`J#+xp~(qF;;&KhxT>d zW8P`1J`y*hr+srj=Im2{p=%dj<U<yo<M^0st?2!uX^ZKf#@D>Bv;|DN=KZD`i;Ty) z8m#eJK<0YL*ilU8Sxi54uVCuRrffMMz>%NSkNj-)I6h7=9GVa6FXLj~Z<+=Zmk85F zgjMF+0(ZKYXzTPoX57z{{p-n$<#`%+`A>WzJ@fxO^*2i<K1R<NYK|Fwqb+mx;YIzT zY?azmY9c$1kMSWX`|6|Gb{yo@u5Q}X`<OVK@8Sdh{LA2Vkn!_;^@aJO{l#!J-`G#j zS6f}=X;!Z`@Y8VUxBN7CF1Xp^1z^V4)a?e}0hWF7DU0;2VENEPUSjp@!0jG?C9>-y zzDDx_pQ5<YMl^QVYISkIR<tkodUkxA;4q>-4w4zuO2y{{xys_#z{ICg{u3L`VZ%`y z%mahBfah8KD!9eN^w-p-f3a4pzYmO`rtU&8epV_DL*!mC{^-!C&#nyT1@J=_tF6rz z%b#tQ9|u2W^@qXFTCBcMU-kp~8vBmr1NFSf*w2B#4^|&HkbhwL>_hsTH}dD8#~H9# zeIZ7MBOeq;H(uZ<{`Ad^3mo;$ja`83#!mhj4($eHgBgcF`;WEhW8K4!QLIvw!yluu z!x!!E!U5$v78(5<@NA2xfp4|AAH3Y+17PNx;R`dz#waFtle?|{5%5Nf*MK*H728@c zV`KbDgST7G9`Fu}p93>4#=iL9w)_cTc*c&#^hK*rgL9VuL-1a({9&A9$c8@|{F29i z+45gU{}Ye@Q;X&Q&n;i=4p=^OL~ENGo5U=3%yQD;w=8E6d=l(@c-!(7PsZ2vUE^!w zpCm4fuj6Yx42O0#zD7^G!5B|p?dek(a^ntmb4jr_bAxS=_U00Hqq#&J4M%MeBZJun z^vz&=4#);i2RC?ad05vcRXRRsTq?nuWB91!ufh0k%G{iXH-<J%(%3k?kFi<p*{t?# z8vMK1OmNAeeL;Q__Y^i1WBHnr{iEcoEuIT*w)i^mJd0ldcUXJ`+~wiB!5a5<<om3C zGx$-9d%#=3+85N<KCt{D-mx8)vmgA7#cJz$i^qd^TRvl=<C5|DICyV}O<$;Q>}z~p zv3%J-VEI1>_k-o<PBOCLGrn3&JMxEPgt7k~`okWd`ETl~Uq>xp{=hSKvh=6O>S<T= zS$1?x(z9{buI97hH=?id_{@ulb18P++-A(8xlQcMoK#)fh>nx^5zTG-Z#Z+{&^LqU zf$=Yz&(t@#6@8P}mWTDsuSWBbzG}|YXr3G)<Fmm(1v54^if0}9I;*E2I`<h4W3KsQ z@K3-k9$o-e-6iB!tG^H2WAQ@pIxus_eD=@_mOm%R>n%s~<ROdI)@F<4&o;{+1V3f< zngh>TtiDj+*dGFa$MR+WdzO;}e;+JAH;{i2^3C~ougBkK`7gqG#p55aSp6bi#((*v zn7Vx*?8aC9G~?1iIexhD)p^s6ua2dL)5X|9Gq@WZ&)f8|#<5oWTAFgkF~ZdzuJtfu z8gc48%zTUV4Ia*VxXHuK9&Yh)tB2b?On)N#Js$4$@CFZW^6)kf@9^+04?pkWJs!?^ zc%O$~@o>L~2RwYl!^b^5n8z9;*DqbeM7Yw!-dF?|Q^D=~>HN5x&(EA*`<R<Q99urD zeG_}S&iSzBD&wjB^uyX;+Q~JR!}!P27V8+pSR4LS@FdIE+{;*w+L>ncUEu3Hob~W5 z56|)NTo1Q+n0?#$CY#I2t}pnyMr|tLM|8gfFPi_%^@#7|6pt6w-#VL}P2?{)o0Gk| zKCWaf3s;x1_=w_3Z1lXs=*9Jp$!a5dCP3NU&VI(T@8b%7<{|sijRDI(@zyvQJux<A z&S!Y{IGdF9INSiwaeN$S?ONHqo}92)Hmkt2r*TtTAJyDYU+_QD)0V-Schvc){LGT6 zV{oIDUAvTB;{2g3S_7mBp5yqK`8iR(5m)tnqU<wPCObazN1aX0U8nakb}sYmT=sj| z`Iu+tW50);%RM`0z4+gyUyRqs<-;yA`{&1HvzN?1Yw!bL=Ayy3f{D||bxwSa%$zj% zc`##V@NO_;XKd~P&jicnedJkS%?IJRR^JPr2X;1Zw^%lpTl^w;C0KsS<{GfGc{f-# zd&&43`Ln^|9QsGVuI?7FtGgZS{MiZC{M0;rhV145af$Xd`fSd3*w*!-!Rx{F+2D;} z{JWPJnS|d)zYQs8@jCEcva|2w1n=C$Pjh}}Eb8TFKRIRbtKhW7v%!o@y{>8FVA?bo z8+ztwa0R#lESr_!ELb*wLT&`B@4}3$(f5Fx!OrGfi)FLb;wmuX64~qoJDY33&L;gd zdd2d7u(R1~v1~FfMo<5A?G)MU13Q~Lz|Q8gR^Jbwv50Jb+hW=LzQwiRAAnuoUjjRu zFN0-Mc8IC5qq+kYr@@E8uI@3gt9t_M{22nf^WA&Yv16+7b8|*xW9GmH#(*{qUJqt$ z4Bi!vjhi#NCO3NKm!2IM{34kC7`zvpws;44LM-2|hhy<r><awXIa&9K&Ns>R;wfoP zxOwPf>R$P~)}@bEDQ;|aJh@778z9$MOk6c@js8|JzFeibAwMs*SiVfNn0V-TVr*)j z%mmBk&&jjE8VljMR?l41@g%az@x)-+Y_nK%V<lLA%H|rdv&r!!viU`;|2CZUVCUxp z7R%;li__rkU}y82U}y6gu=Dc;s~>>B8|-X;$70$1p~b{T&rc$oKLI<NKLyL?0Qs=x ztL_nt>%h$0sP0LytIND~{^&mODtp{BW9H^C;}^|gH&-_hFWNBkka$FMmHkL@jOMVL ztB261y?IN2Ox@$?@z3D>;K}&v+V!xmC9cstY$r39u95%OldCOm1gAYc^XeMnX`UO? zmcd=fS6kc-ZUD<>51INAXO_k5(9iKW%%!N^7O-M2AKJif-(QaG_9J|Cag!gWj~gh* z4;ME*uM-a9=<&nFP4}CI!}!E{$<C&a*_W?X9ID8~;ac?tA9a0Y^u$U1x>j+(U+p7? zvj997ET6?u9cLdLUGGuH_*OwVbt2zdJ-(0e=M(ZFL#_nNw>mPueL_A=BjcOlG=Qg& zUAxqY+J$G@)%e4U+MVw4eN4N5q_(iFW7;1%AF3=?yJ^djO?)yO`5<3CAMRr;Orp*u z4#SJCE&X<VOdM~J50{c@*I>1EF<AcC{u-=$*uO#XuOTxhBOl;J*Prkrf3hCO$HaMt z+Lf=&#~EsC9T~euKL?B-M&ApjzeZmRrrikBR#cZcWAJ)7v%&V5pm}2Sn!|U1)h_+h za}%TA2xk5peHXYB?CN$~&L;Fdp8h^$7k~VY`r8|e{RbC+{D_`Q&~`LWXm6e4U^lui z+w9r&aRqNoRD7Dq#Og-*-$+h@wJ&GMY0H@dW-JZA89WKBIZO;Rc1GU<&Uzf#b$tQP zaK2$Hx^Kc(<R`YwJkL-MThTmU;Mwsp{@*13tH|=#wS|16Ym2@_dLL8wlfOsZn}3hG zxBRYk*{43Gy6t58_$iGS^G<WyVD&i-RxDb{bylx<a%?diVytThW2XbmcpLq#;M+ZY ztB0AxpVGV)M{T<}gQGFURy2-X9>>QVmp(0@HC`M8Kdrv>kZY};{>kT0YhE$;HOCC@ z1y8k{Zg7Le@_#y5cGi=#RzDd`UrgN%U}9uA8^LXsqq_M2X~jzXHDL8oKHP0FaWek7 z{^DzN{=z@aRnu;-#cB&b{#1G;WHX=fQJ+0U^LZ1pv+3gm?-rmhK`Z6>aT~q`#6Yn! zcn%m}Z<C+ILt}TF;yH!fWbq;J!Vm{K_Ac=-<7n!3pkHbE_#6A8#qHon!1AFDygAhC zd3J1v)r<42<^KfyZHr$9@3Htb@V*f1*|vU@6Z!m#)u+%8SpN6G$G~b=zMZsKKD=%D zjHj-z)L+FUm;hEBz5}kan7#zW#n}m%ClQ`)IY;5J516{bEgna4!=|pe%ox})5_ZR1 z#pQn5Rtkv4pE-=*ZvF>d6uP<|)|h@q<29bln0|)->Rws%-{|iH(>J5v4W454&w!aj zpJ6_j^Gl=EHzUuod}6O_Gh=5Pn0OgGFM{cp!8tH<z;JY)!e^u33;v>~f57Th_bH1R z&)7FD=T`7eu;QO4@3I{E@NKJ~23FtPJO@YTCi)hg%cv8b<7m&tFqZSqYxozPFYu#x z0(O=5lbwAZm&am%tk|Z>>Zju%|3_C>Tc`IiG5)OTX35n3tj0^_jG4jeSDnQf@MN&Y zMaPOP+1Uht(Y4j+>3xi!^Ho=4odT<^?c_9Av1Kl(tw_&&Fc@EStukMJ?j<ufjQ$z$ zOt5TfEEp%F7iK;fn=8TXR=*3}Y56VS4Pe>aN8VvM^5+Gx{JEd}9gEfXoTvW*vg<oO zxqU>o)=!{J$sZ#hmvV?!yA9+ju;MV4oVI%Ur#KsZ4VW>wL;ett!fVB7{!r&juH7s= z=bMicT*j-dG&yN;3S0@6ePXQr)No{r`Czc(TL+fU@(n)>&Vrc-rY_~C%(V;e4$q(H zS$ZQp$MG?~eO|svR{@qk_@#5b(c`bK$38C~=8%bx(PzQ5W%SM9Ca~&i&desewx|=G z%iu-6&GR@uM%@~4%#%NHt_Q#-;pYtwr!7bROklrodSdYjhqIQW`G&1Oc6$80*5Ovm zVXO1?XPmyB`xJ+JEr)WQb8DP_1NWW|@35Q>I6K+JoPHPg^$zDOrw7hnhTG})@tnuu z0n4GC*deB<(;wkElEvDX_-rIbafZt26FfV0IBhxG;7s6L<Mef0Z#bN_oW3yDF3v$y zKF&d_<?MpfmLCh9kK9-Uy_WMLob?`OgU8unIeX#k^f=g!?BpzG9~^j*Kgbbhz;X`2 zIplGU<T*t#%Q?tbH{*FuQNrV-Ee9J#6Fg3x$H`jGaX5`0r^(~ATFwxhHjmTpae6~e z5&KlpdXKZg<Ls~;jtNCOJ<cwVle3&UID0+LK94hCIn&`B@;FEGoZ^_}H1YeLc%D<7 z@HlD9VZSV%;Bo3aPS$eT;52$1?7HzPZnd0lIPlz<7PotxUd!14XT8Tkj_mBPoXv1{ zdYoMzCucd77w`2r`#jEo<?MlT$m1NzbK)_}!CoA}`5aGpoV4X&J3hhV)Onn&<-7u? z(c?6EoL0+WKF8ZUPP@nHwVVMs>pji}kF&#aj=<TOKOV++<&TH)oaHc|<9j{MK955i zI<^!spW}yOv0Lo1B97h5EiQ?L9L<-Kcr13a(<6V(;k4yc!I{AQuhZA@`JKaA%Yj?c z$o;j`H}UzP!>yJx8BSZ?=aTlk&n3N<!<;W!?{PMGoE?^f?UJ1yXP3vxSxyU_z4<to z?90cwWWaLprR0!j=SbcTml!67#mxEAc%D<5@HlD9SqEo=$Eou;S<6`ur_tjyd7M_u z>4VeeaoRmjujTB5gDp3oOE={ERl37+o`<v3vqK$sJ}u2z4*O2&UXQcS;|y31<)w!_ z&XGJPMp`_Ie{nL$M1z?px*l6>$6eQ`(QoT&!Qv~WEq?--9P#UD&(&qFlsbOK@~6Qk zNBjnUkMH=*n^BIRwfsi-<cQzIN9vA02kiI@EWZ^#IpVkReSXJp2RnX`<*$QJj`+QN zJmmQ6!H&Pp^84VEBmNG)5AXOp!H)l;<>%m&BmQ14?Hqp}*zpfoem{J2#6QS)(H(yP z?D!`ve-J)7;tz3IYx&wFEnoN18sDHQ%#I(V`2M!z*Mc42j#t1~DM$PU?>c8X*zsGe z{RQyJ5x<qkbk06wF~;%NS$;2ka>OU*?piC@0CxP%mcI=?IpX)_uit_lV8?&X@}GxK zj`+Lt*Mz|yu;U-F{C@c4h<`ADof!;(9e*g~>l#Pd@r&Zz+S~r>I;Yn1i>fR?1)m)8 zYx(Yt<EO!nZ{uGy4L&*IH*ibh_|w6T-)!yAgHMk5Ej+h(`~_gg@3Q=E_~eM+!!v)! zUk7&ljh4R&KKcLU?tS2+tnPf_=b22xWHJn63~>n2ju<s+Bol}jEUhC38ZmXVLff&W zCP1P=Ly`^A#xC18wTRK8P~|__Ubp4$QZL)<`ugrm`||EiEwxnXuJ2y9H??dx>*l%< zDMY~<Fp~TIp6C3|oEZ|d+xETtxd+ZX-{0?i&+q)s@0{mPp1+2_1?TF8zXMqKdo+J9 z_{fHjaglwB?>S)MAJF_1_{fHTFukAh9Re2q5zQX}AKCDaruTimL15t@*ZdLikq!TJ zdVlI01=f5Xk8yqBzLi<{Iid8ieNF^e_%)ip0DNS_PvH8pj!#Z4u<&~{e;xS9hToh1 z`+~<{Rl?t_`G|K8vf=MY|IL!q4=jAf95@H@W;Xoi(tii#yZ|ixVa-RJa*z!lv68>7 zauBN<HQ$fE)4spR%fk0Z(|^<XOM!)tzAJtm_{fG|pWYw&8-Ru1s`+i;BO88a`tL!1 zH?Z&#H)S6&^CKI6UwYr_-v}&x#7*%LGe5H7KZEnzdc6F5fQ7$b^ACWJZ1^c$cM$$T zVBrsG{xJB+hJQSLeC0=M7YTpN<MWt~S@=AzGskQJV9n1(-06QV;>~RMrPgs^3|ROT znjZ%r+3>5=$CkM@z{0Q9{5tTF4Zl8p+>+Y>Ec{l@Zv!9M@H^9g=jLL({y_LUG`}Bw zWW#?Z{Wo&%9$?|8H2)y@$cBF?eXbz)FtG3kHGc?vWWyg$pMS_b4lMjp&Br+8A`73# zkaA8#9Ybn<o{oPWV$W>&r8qyP=R;l$SonxD$1AVK%Z9%I=V64O02cl-%};`lZ1~G@ zu1WY!z`|$DX&>=sHhjeVi^A^#R{YB9IWap`&5g(B-#F*S>Z(|*Djttpzw_qJi^XoJ zs;Tz)O~L<TQT<}qr%fU{jvM_;{t|jAcO8~4kMfYpof%H?-FW*kzXg5vr%vyjD~q0v zZYkXU{YTE?TfE-4aN~izy!ecLkL=q~vbAJaT>-wTi}ysP@WtNQQ}MOiQSV!;gY`}# z<&^yQy5QjbPOta1)Zni84B=OP5Z%u2#d@{F{rJB2u0TJ_J!`3e^5_CTM=rm7YP_H> zuUNJJL@4EWUxV%7SH7LPK)mQ=t<zkxwYs2W0N<`xtiaA7JoY?P-(knMa68ratK0JN z{o??n{JKEbwciLTxvni#Io10rH@*_CzHrWOy<haW*uWQiuc-@s1K-^Z?5qnKExrhU z!B*XP-^n^>8NVsc-g<3|^x-|fKu{(q!Z(9=)J-Ycim$5gs`H2Y_x7>P;O=-{UGB+y zoLF^<7aR8Mt$UnAXF->W2){0`m^<?y5AXKIeod5LP#>6e{N?eZ!Tve<)icQ$m^DGO zld6s&I(5N|zFwzV8Q=j~M&h@|g3!n}@c0sdSy!%AZ7g}9{r+1Tu$C{qRejIybBk}e ze(CBpooy|*s+Ve9zo@;dqphu_<@&1Y<FJwbvYq2JKd@%aL-H}bj26=ZR;Q}?ocP>$ zb^M0-y!egrn)v+qiulU-s(5p}C4Ns;ysD~dPSxD1>Z%*6=2hKTRZ}&;YDLw`s#R6Z zRV`KbXiFFRUK;yL*Cg%1w}5KHJ6!u?K)!|Heiz?dx)b_3oV;ejwn&m&uD)foEd4E` z)^M_x^krcCk|NxptMdAlNt@66rVb9=O)36XG~Yh@y?$#)y$V8qFQB`nr+YSEMxfr& zF!^T`@I?Q4U*x$^HT~h8#?|es@g)THodRzX;PZW+xMt02uTj2UAp2Ves)8`A3jDBP zXKUArwJqBJ|E<1vV6TsYD=<I&={YhL`!!zkaCqH<dS=R>M&`bSJ7Olz**yw*KVqW} zqF}(Ot*C~zTG?Y=vDX4@+dB%e96Cv2qX`PZfZ_f4yWv#;`p5l<*y{zh?D6kEXEU-S zvGK=H2nM{U57lY`XpfsFma)J6$hN&LkYmV_#Kv|g1OpZx#?N|W+M^w@_kRM@9#1wS z`Ch<}RnOoTp|^SHuadD)iDgWDuNpD0)gk!~;D>RRMB6MM(o5Yg|8C-WB9p|2Q_xuL z=ENb_8kX_ZovL}dD5o3X&;&dg8(nlUeH%e$TrNgtyYR*3HAU$Y)eG=biY!UWvfdx* zPomltLc&sbT*}-A%x{L+2@plb^+eTfgaybtCO}TX5tw*{NGGu;vMi1M_w@eA>AImk z=!C3mN(E;bQ<ETbzM2G?V`~y*UZ<R;6@EBQ*(8+nozA=_$>gG(vPmdsoJ@kuF{sgs z%fY8?63TgP_7<(U1?7}YLOI9XB*^S*gI4%J=A2j|1l@Q?mdxwmD(Ui#Su)pKm2~;@ zp5&IpKI6yri|zO?a>n1m@+ZhDY5t%VrStD*%C3pA$9F4q`DWP1c(|X);@4-%tFmOS zKTI*y59#-ZHGXL|-e#n}OFMg&ld&5#J2}~THFEbRf&$h)%z8_Ww^L5P--fT`v5L`% zyj%w_F|yytBk$|6$ky9{EUnswd+$86E!!_lve*;8cF2B}j>TmJ&impX%QHfge#=jL zR_C%`^_20-BHGC~n()Sh+YqiBn8w_8<Xws7dgN<?ug0<u8OLBs&p9{;nD-2D`}Ik! z-weE1>p9L#fLV77@|~Kq1Nie=&$)ZI*3)JyFl|;Nw`u(|z+J%Hj`ALfF9Xvi>#oxr z*6jsmU2-1QeA;0j<UR!8OUfWKp+D0EqkdE{`Y=N<{8pS0`0%?#^k`e@xqdz4I5S1R z2ePzfV{F#~^!X?<)*1DFp+R7*QtG`!_W)yCt?+%or5470Agb;V^c5Np1IK|mM#qt{ zjZ&Nu;00QL8n_miF?kXhW1;w?z)8&?14et)bJ(3u&BvH9=1T7ee$eB)>~D|8jLABU z(GRCr^NWDj1GC+O$cVG@jcsiN<~Y*+W>4=%fuGX26nGmj`$hkE0n^SuAopud4ES3f zR?ngTx#lwt-_@Kl;ODiTcD@fRcCbBEJ}iU&CCy<>Ue$W~cEr*TX#Ha7UqhDhJ&JSY zY=>zO=fedL>A6t^J;uq*ANXhH&xqEuF8nid4}O??-4U+>ZIfdY6YNjl8_)5WDte5E zyi<bLTq2@}AH2TE#8@kT5N8)z;TSNo!r-~c3fBUcJEp%j=Kds~^SK!r?JC>~TnNmu zYeO#4`c7cjRQhgU*i`%;;A=Hr2VAW=y}&mCbG+_EUZC~sf$KEx18&fqWxyCSWq%_u zeUdQ(mN;<RBC(=>W;+1?ByM~j<O=wz68w|+bDo>A?nQTmvpzi*oaYi}&hsmUvl-UJ z9~)zPtKQQULAhV!BH)0=7%Ofo)O)%xR%-Vwc2LLk1$B)7sAKwzI<v%w80t%18$+$G zbD@3OSC~E^%eAnK>#(S+IJApwIOXWO+JHb`0Xzjure&I+1V%Re<>;pHn}CIn_$d2Z zz(+Rx9T;EX_X7+6In93od}PDlkGKi{0I=d$&YSC<O4Pp}cJ8sN>V}#c#r-Jf9;c!m zY(%T^%Q-&Vx$f={@NZ0=e;kZmdiL+e$BMT_wsr<e2MV`Gca-cb!g;9hu6SO_&v@QR zox$_pJXZMu&N~h!!gqal5Ho68-|;}yNx9Q@#-k(o3hldjbR<M{;^pxVPK2F;;+s;w z>5q-7(#o?+>U)Q^oYPa>Kyt_6<Jia?8Xt*#oEE1)77uuqD$j=di*}y~y1~+5Ly$fs z0`bt-11ZcvNk?3DP7HGu8$}ye#Xf-^y;}TqbX&u<4KpHJ*A=dFyt9`$7kYp#H3uRK zxI~}+X<*LiA*Ud6!{FCpXh%Fh@{=<^O9dj^LWhq9F8UyT(a03X|2li+q;lfrUjG{M z1Nux|B0rUz^rxJ{-M;?emmN2>GZl!HT-^6-^zzhL*r_~|4C3r-UMdjk59|u$#npM& zcpxz|)F0dxJ*4_p?(8ZV@bApq5#H^nGnJJe2p?y4$H}pKE)ihAO9qN|l>9tiQoJ*| zyU45iEAL#NDGRbJUO_9BrflNa;e2#&bbC)A8BICfIa7>yZ_hrm+Yj(JtxbEO=Fz#> z6VdHOTMM@oZ$tg^l#@&%!%pQB|N8f-b3MD?DVQ2a=BM1qH+bH-aLee6<6|XH7w;<R z5ACMq;I7bauZ{Lyh?x`Y_kS~9aB0nq#|o3tLzVBh?<&5DV^p%+@AdO^`|dy$N3l4! z81cpIate3p^Upg@93CGH?rbk<zhC(tjfVn(O;Pyr)82D$|2&nGa^G=_b5hRei(_Mv zEtNkmc{=`hXm^RS9NZ=6VS{KZ9-L8g34AC%RCzY}c*?CjEgpESS3Xj?Ar)XRd(YW1 zAx1pUMYj|^Rk%GnDk>)Z?}T(ro>np0I{f4DF`TV;!n@<a<H0EbX}4$rdme^gt!gY< zfpiq!ZS4=vWfY=$QC})h^l?VPD+})!Mil%zTT5D16j~95aNx1%c`^7AV(@h3L0mVO za(v2^z;yJs=uqW*$wyOea93cr7t_j9;a!Xe<C&-8Ub&(2;Z$Ifevd}C7e8IJrEu$D zTaG#d&GXzlrzEe&toR)ACEi)@cwVR<{*2z0%O37*VSAMu*@o6X!fO}DUl|`$?e300 ze*Ey5!e05{A}7Y0!QI{!jwkj-cch#^e^AY-Cl2s>!V_DAyYhA)KkV7?>b0pjVk@_e zcDc4iG|C=BTjsTp;%&U5GT7@l$%4i}GT4}3SeJ6WbtdKO4kSl88dZVf{;h!%+HY^I ziL0v|YTc+wx!r-gY810hF@H2Z=J|Z$tn&=&J>$(qO7ViTK__%Ncu|7BmTW26d2!$I zsI$EA(Ah)dsmOeck{Xqg-PQW~OVyH)9yM%bR3v!iC#yx{8%r|0{+;*|?5|c^?yBHK zzTAAASA41hTLbLV&10!RRb3j}F`o<{ak-}Gxaa7oIs?AS!?c)QN`0)0W0!vsvvNz( zw!t=M4_VQzYEEJ<rgGHGyiw1}++hFg{}=Oe%(Eua;9@7i*>>D_QDXFm<6~!kJf6ay zVArw3<Im6@@mq@>J$C+GXY-tpx5YQ3Hm~qd7$cVFtw;SFGuHh7uZ7GWu@{~%A*^{G zI(v9LmA5;(r7Dk}&GiMgrvew`EhcZyi{wePKhpBUuHS?#E8Nd#%jH)2f!c5cms}ok zH~1dSdD6c;98JvjFAf*^zA{^}iY#u(TzkQR*(7@JXvr%)zA#+2FdXl7zv_E9=WG7; zxsT*+nDS`g$$Z}n;c8qzS{#nod#&J)A<JGV+F2M5)P_S(;`&lxahM0QNHO*6{Y=K0 z%&(84uc-|O9(A8ohekXe*2%>MFkE&@eARu}_qCk${zq~*<UKm&NpH+z!oqSCyopGq z7H0t0)9h<$EV9bojoH`EP;UDkx5gmG%3g9e*M<?2&WGKv`PSz=;@^<_Xx@`koZtO5 zvQ=FVb#`|&c0RDOZS|@~zF_{Iu8uX0t6I7;zUHlI_qKJcT+yblaH)@PtBYxwrOhqg z6|nQltwx$#RGr4o`&X^a_}04k)3y4+72Pe`A-rDP`ck@3Y?miwbgf;{*wX&d8(O>i z-uB5oN;j8bv+=>I8z%D3>Hw}7cT5;gD<G3{ypIRqbl@aGHRY<G6L_Kt+Udy&lh|)v zv9=YTUvFQ%wsnHKs?<C8I$5b@_qV=si4%EPKlpcJo?cPx?GsfjW4auf7^n1Anv8cf zO1b8L7_SPP>~__LMOjZ@-@)J3JXav8^cf&-uSL%?%KUrVwl@#*MD~_KZ`<1kS?n<e zVh`v4GVIkrp2*%G={i_2mE!MkV~=qVdpO6JVQ&HC1IUuZr*A+Z7_jspenyblUz{5; z_I?0t_jeRB`yokeunob0m%e}>woQBFvy96jWXql_dZ<+r8~+SRFyN*1P3(nr8SL@h zE*bVBkdGrv(l%VSY1zB10@Z4v!&069VHxdRi>2+~801o9Nn(%Z;w*a~>x3-+;ar{c z*X2C0?D0O~3GLmX>tMn3v3>Xvd))7ce-8uO_PBn)Z<EA7eyhgzZy2)JE7oP~?_U7h z_7adMviB`r2MZ>3&Q$ENPvYMzz_z`5$Ti54#J`uIu>6ZPL0*qsfsFH;#@<`Nwmopv zd2Ogw5_@kzvh59l*9sl&mFhC|%ZF^+<NdX~*WM&;!^iVlmc3c^sMY`-?OmqJXzzMp z%Rm1X$OFid#9lcRmc1*`uG<S8?ZuE;MtiqoY1!j_m+BkNP^%>N7DKY^U5P&W6424! zEM&2_8rZUz$G*mqC5gReC@gzdFNeGtnfA(b8U1?{*s?bT{c_2ZB=$H@ZF|R2Hv%2) zU8T!t@7ut%r&C}*bmT}9d*6h@vUklGHvM(bkt?yKz2_iX_JTu@5gU`F>>_An-vL;F z?E9W!rEQS!OY4h{!;L1$9Cw+g>{r%305j@gp6A#lNxLG;(&&Fr_W(#c>}<dY0Fb$z zHwiN0mrjtmoizzE`zhDmk0U6QO+q=hdnQ5VcFQEl-0qkJIcfv|$c(2+knM3}IoCUr zAjgaV0GadNB*<k(0D#PSXA)%28<QY&+h3s-at{IL7!&0@EajVWlo`)X79t&h%y@2A z5`J`WzMUmMujLT<jQ7h~<*!-gjQ`u2<*pec&%V0nMNzbD`lRJ~x<0=-hyQ$MhDww% zK5mbe=?})oeM-yPfA=}79OLC?-Q(cCq04JfALHk~pIKjRN0rL+$7jY^%Uq9;T)r?J z<L$fElO=w>Kgg1kS#pb(M^PX1!^eBFRMPgjy|QI)pP2^0kAeReO2Uuk|5cWp%98)T zEcta$b~nNv=ASR?9uMESOg^7G@sihG4!1)pY1zzqEt@&4<=L7ZM|&vCxy6%R-ZOHQ zqyNOhN3L4B+E=vUjt{Ll|4%AiVErkR{sU5%*?%==s`Otq=iA8q`%ssw#(O%u*K{<? zjUn<?B(Y%q)up~lW!1Fh3~%wbqebJ58ED{vwg=X#`&jTnEvmX!v^RIGv6{8+PSIbJ zn!pF^FG?xB(4UdQv3jBZF0>r<G>x5UlDKd6YVvBPeW_*sfK-2|={r_buvWCJHGe<r zk)le*CUfwN8Re>D5uL78)s1WKU)||6x2&Bj)w7zHKToYTJ-QU=2<T=!U(L79lwqE{ zz^LG3XO<D~T!rP0r_k2yKW;x=d&A<@nC#Bdx?8H!=r-QXOVwvOaffb;1DaA{sWrAO z{im?4Qm(4C3%fdXjhFlC$uQP^b#KKB;9x(Z?un=dt^vlXsrD-iwVwN!dJBKn!YeiY zGC22HxYNSeW-I$`;Pe8E{l_i5O>@}Rp9AynmHo)i0rNf)ZbzO+z7Cmvg5Tyo3-HXn z5(g}fjZsJ47r^Zqv)BQ?T((&uOK)S;RoCACJ$0ivR%2fVkYm8o_i~NrKwo3&lfb;+ z;SloYHQoV?I4eElgE%XjM}ZM%qwm&u5A?mjjN5wTr?mcIV8mJJ$$18tz6~OOSK}ez zl*YrrFKIsG{|^@bXIf7??3=_B*xWY(|IGangVuczXyd9f)L}v!W*m=07CSb^u4F3x zjOr{L$mYI`Qmd|wQCEHc>fcir<35e;26UEoAzv&0+w;W6sH?scH9_5q533u*?WLRp z#mHe``cQ$4J}4Xq#<7FKTxVg=aL5xsfoDrws8cBzb>f0+EWV8~Pt|vaFfZtb!s~%? zJf!d};A=HzykTE`!w3C#62S1;W#5-*%-Gzi`E9_hz-WVWoO9Ulu^pk_rJaX?IfrjT z-T=&)Y)0N_@%uH7K>xhv(4YMtR(4*t_(wD@0_T|K{}T8ei!%zWec&ck`EXG8N5__Z zlR3;|+&Ma)yx(fBV6;&!I0{2j*TOuEyO{mjg$%yJUBKWdjB)1Q0ScD@S7<y0JWu00 zfDz}5;j=ntvJ9AWW*GTyjgJE(=8D6*oxqH3HF7sFefSD8;;-tG|G35@z~9sy`mjf1 z+DU2rJn$jSKMj0DW7>HQn7)z!IxySiyrO?HSApl1L1sc7i7n6ZNj!Of+>OG)7@4{@ zMm*K`mkyvD^HzOxsR9^tLSe*-+hK+00K=Zb_W>i$s%{Fn8kjyq$N8-E2Z8G~pZaB5 zkA6E%7N;Fp>OQFThrvO7Ra?&kuh;rlfj4UXw}5wOJ=@x&F=EMgs~g{*17-{>kpJ4! zf8Wxx{}Nl^`DKuqQr0#BZJ0Qt4>t)1zJ6RV{97Oxewb~@0BnhU8wYV;5&G^j&QV~_ ztDBH7)A(<IV;a{2BaVvS0F0PV=XRqN7<CkG17588YzKCg%^G0TQFWICH)(z+FygQ3 zb_4fn+ylG~nEv!3@6!5pz<V_A1;)Hob%_yMg=rHpoG#m<7lGMFw)?8Z`I*HzsyXnH z^I6$pzs_n5-?-gSdidtf0)}sH5i(=KIIKsGYYd-Vi3#ySt%psw4p{rfzn4{A#LfM@ z)+d0QEd4!}9`$7$8TU_?K}K>>U-lg?`hT<N;kV2g{w*%|HoAyoLO8wY_p`DO3q{|T zem|}{M=0CFjc8Ejk{_!r$EX+?b4lSCFk+=}6gXmG#LI9>fVtf(M@BpquF$gBN7=2~ zAFe;Q2u7TZ4>m?ym&lxiPnXcQ*~q0HR{J>2ZKa<FJ=#_H&w(+H3fBUoU1g^YxJKhn z;5uN=rB4DkX+2`hIjs1^U)C7$=C(rFd>DAM)+6?u&x+p*{46kSGKMc|J?*?|Va!j( zr_B?<?AH+TJ6ccQ#x!0JTNn$)M_X=bn!~xO^yE})+y}e>m~-;`!05lJdxyro&@a~* zeR7*MKM9QaDPzGoDci2>Iceq<`u3a7NtpwDzl)jk@Wae=#Mby=VQ9VgwfF%d8W#a0 zoA>-h@%%my9GGI7QwEG|IORA!C!DzEAb#8i8cvP%UZRBN)PjR-ICVHY6+897Q&7&- zrum(~$cEo--9L-5H}}u3*L=i-+egDkOw9eWn}NlCzve#!KC<EO!7;h`vlm$SM>Kx` zd}PBvier1>4+0B+RP)EcM;1P*=G{VmV9n>8<a>17n3oN|49D==zFQ6~e8!pl8ZR6E z0t~D06TrepY!$x&d}PC4hGTExCxM0Etog0rBO5-(#k`9M<6_=Lgg7hvh%v8E82%O< zFNysfz+(S7&3^%WWW(Q&sVMvdz`}o3^N)a!Z1@A%7YP3-u<%DT|1|i>hChn!s_@5v zHQyKT_`VSSJVzEjuc2I``F#J-C5n&JD6=~%)eY6^=fm#5uBo~KZ-8L>DED7qw9bLk zT$7N>ohzK!k*e7B4WSvqhSHw=Q^#i24MnF-8$^D0IJTrP`S!6Z@=yId6?yl~%Y%`- z-hFdc`A~H3+(G11!?A0MlEqKG{pPI4>zttyXM7NO=m+Dyr;f!Qi+ui_g6ZyiZ(jWV zd&gpdq3E;E4kEw(R?J_N9GNoRJvn^wd(DC2(Dc%};F+Pq`pEKAM}L^tJaaHV=gK$V ziWR*5iy!8l`b8@5bRg%dy5Q;jobppgQ+X$cV}ZIUC-QTyJ@tzp<P{}7{N68KBo3Y~ z$hoF4dFtp7@<J#%bM(bLGV2P8lD`hIr1_I?|Bu*|lP6-~w|@!izf9#dUx7C`<f4s= z69v;t-}|@1+w;D_mIu-5F}4X0>T-dueG@I8`lV`9$shbuw;5J#!kcKaE|;E=T^A}! zj>4NtA0qfh%<r3%a)*P{KlbiWVadDyX2s)JEErCX6iolvd&7k@-+gP=V?#3#N96b3 zjD5Z6u2XNN<Ne-n?7G6_d&5@*-+e6=dHdMqf#T063f>)_b=%Mkj2QCUZ^r7j2a4`W zlx)q%-PLo{7+>%Q_aU~%uAlK((Y6`;XY6|W&5QbGeCO?B7X{vaGtxKXL_=W4%QMc* z82GDJ==uul-aZlOD}K5m>fH_c#w+8!200!|1WyNwqo?zWBm2HzvNbXDJCE;se_!9e zoxg_m*VI1yov-gZwD0Hp-m3f+?r6liukK5p)Q94yXS{Wu7jH%SO8Oh3Z@hA@m-qT% zsat>Jl@GK>{~kY%RGs~)+Y=8LZ*C~5%dMMo_N8;FW8o=y3ZOXW?SWLzX#SMoi2z3X zzM}b!f#czVK;^l?I~?3S8_%f=oPGJ+=*WxX!wtc+2hSbN`$pc@q%+tH?*bQ1!}z*& z`M>`0`1m_HQ^IF|a&Gi^*a?;HN(E;0J>OS(wsNfUOkjS>x$FD92lq_P_>iS_#}1DV z1$G_}Il)w5I{9O$aV7-*V7+rAYrN~#5WNdu`c6-A%HO_aJaW3gxhAsx6j0&rx=>ws zMjzVmi{ziWX?*jsAfF`o_2_tH9qt=`uWmeYrpAe8m!Ht(CsB^J|IWW4<yM}$3wN#K zj?+;*-Ov->wyvOf*Xt$IQtL{KcSLu-5p~AinBk251?Ej;@4H7+FTMR{;ohP;u1!w_ zhGsfBgEL2*x3NC|)#{;ANTnmrskb6OiQIPTc;RhN%&2^_azi4&@RKPwygN}kc%P%j z`P%CT=DdMOrm!`gEMY#k;hyNN#k;&aU61{6d=&33>CNkptGAXMdvSaOvV%M6)w2)5 z{^Kuy(Cd}u0iSa`Jy0(=st)EU_DkOLDR@85W<FVfyHb1N!J=>e*|Wdq3<(Erd-u&q z{#fv$DWl<n{E=XOUFErV2U3CLS5oeuJsU50|2}6^$u7>;X^&0YHEloFv}tBdn|A!p zz_gdAotc(i(~e_~@4hpNc2wUNn)T}0@0V;_i1q5(_n+;1)~r|0V!e9y(6c{(_O0uG z3V#PBJ~i?3STquF=2u;F`HYM5-J9lIJFBEH===EG>#q3ZyxCV>Rvgaz#0}S9dFk}2 zxeKZ*%1Vnu{+SmS<V=kOFLC_7nc>``{NloboEcN5<&|6<a?9slRyKRyrB~0Xh*e$} zzv{-ztFOPN>Wb2jIlX8xfgD4|UQL}9^keBmR(rT!fCO?3`QJt8Ma2Yi4Ea0*uFszr z2!_JbF1mR7B{OE0x-J_>LfgQ8*LD03me63y0xZB`nWyqNs)z~)vZ4agmg3SDGRpV^ zs4_7vvJTr&HptWMsXD9=hALBSE8|coJ=;?TJlpg|w?R9~7ZS96`lEEp4c1d6<tHI3 z^hSDPy-qJAWMCCB$BFeukR6s0V;K<^d7x_!>QGi(Dj|8lst%wkb7IsgE^X45vVrzI zJ#^qehZ16x_o4)nry~n``lsr|R2j9}o>y1dP`>nn4;}d=(Gq`AhF|*R*@EN?1bm!) zn2J6p5Kt45YUqiTj(W^gh~RRGI;=sCO4<hbC{#T1l?^UwhYHfk#S%OU<kN&&DBD_x z3M#3(s*Y-yW@rpa`%AUhQYP81@&jt+i)xqsL?zX>(kl)^;v!UE^)kbR5cN7=MW!AZ zsW&DWJd`n!r8tU58CmhEM<R|9lP?%0G4h~~QO|bx&xK6Ar$d2C)Oj|@VHtTYbij%W zy;^!@4*1F^aC&39j^Y!ej2MVmalvt1M2FdN76N;N;W`O0s7vtALKSi7fXP{?qO3XK zB@_>USe26lo0>}<(?Vp`md5H&PSjQHg2UlSD2}INd$d6v+hkqkkLFUxc4&vTRh!T; z(I@Iy=Gl<Gd1cBL?8F==5=)SnaAJvs#?&PuP@x<@24js%pp0D9K!I9|wGKEzF6&TF zTPl-D8?Z?L8>%g316=4d&(o`R$%{eHVse0yJRR(48&rv1@X#JK$`4>wh9CZ?&n#mf zJzJuSVG9{^e15gok`Ztejs<-F7%-N)ap)Z%2;h2kz-2ucRUC!Mfj!oP-ov!1xQa*Y z*+4zoWPNf~yKGzegSzA?8vtHA+AcV3Q?)@p?I~H?!U9R@6p}Ldp}3wu%D;#cNvM#a zAmWdxAbC0+Fh7>M%<-cH8B4E@qszEt*lA0ZD?RFIopOTq$<tigfL&$Fv(Nfuvb}`D z${($hwmciCM+W_%U1iI&?dh}1V8i%gxU9$O+0XNoQRyXjOg%$WasD$jC@&Qjmh07X zJb1L^5#I(p$D>N@^1cbm%hUDUgJ`EV+@CXHL*UuAme+=h_@K!nIUD>>=6Xi#@)yun zZTJ~i9xB4CMsL0Krdav)<@KxEALzM$_1v0y*IW~;o;`Q=9Grz+`_P*16)Umq?(&wc zg7~nA_hvI^_R6(u?I#9s>fxRT+E-<%=F0si=jruLC|P>k0+OYfs~#coZVR!VAwhGN z=??Yowa!(15=HPFgIBJ;cjZI4^FzugtmG@+G`G8>yQ?EDE^SDgS=x{`v$SEZsj{@8 z+QNK(#A|kG!#oS$XyF>*mbMkMf7?eW{sTQf;f|%}t6Fm@Rv>$`T@{w#?;mx4{pDKE zGMvY9YLQ*!JY*za96#$7^nS#~%@73x&U_9(%aCc0by-Gx%aLt+FF@`?mLxVl2Zdn3 zQev^k4YAnk2Da?+z0dAJ=p=~^zDr6lU}+M(UI6-sbNj~L24KscT1)A(B(d>TC<Fsu zit~u-n{~9uezJ_qXOL}sw8cJ45*xdr5Da)(1Ady2X)lZ{_MQi(J?>+W^0*<aQPBGl z8@$eF^XedT>?8^AWhiW359B5xVJW=VfNdW88$*^Pykk(<yiv&XQIhb^Kw<HwU`#2R zq<Jm}z~b?+eL^1Z%d~j;lkqOi<OL_=U6aWxn2dKrCNDG@@0Lv7)X8|C&g6wB<K3-! zSTIckPhG!K5`H9pccn3lE_)7PssOkgnXw=b^VGc`ODnL`jzca*mLz42bB-u6wDgbb zpd{gOsplw*icdov1ek@)*s@*Di|qUGk3hErS(4ZjS(ZlsJGu{F&ijwSX&pPSDRfqE z`;5$3n}l+1KlJ<a+=Hl3*(8*6J75xIuFobxW*m5}lBotAv)2~}n=vm@rC5hiPT3@s z7ec@_Se2SkPT3@s^BI7vv?7Lbc_u)qP+kNuTbD;rPT3@s^Id(M=SVIm31yQ|PT%Ky z3RNzBQ7V-4I_M{?a>^#5JPP3!Poe5lHVNgtHoM4EsB+3Cp`5X~%~PmyiIq~Jocm&~ zS4gUyvPmfCJpV&ap~~%f&-imaF$prx@j0K-iuDLK=f_Gd_d(|T$bNU>pXl=CDCd0G zsO1+Rhj|As?){cyGc0+4#p9&TRdXCUE|TLReH_H&A0GGcc!$S1OB-%Lo`-xRa!ux4 zy)c=+BRKO-fT}2cPcKAs#0DR0aV__1#O)|>uf~JG-_m#p7~2%Z83sO}F}ELwG#&x| zna0=-ID;B<-*8T2=rFT9JFw}-G=@z#t}$%73p9pJ-eaTMg-zb~p)hRn`gtzr$d`d% z!&2_EKp*5?SMFf?-F7b8yRr;CBp2;nAsFplE*R~}d#`vsQ0}*N(Vo2XP90}STVpUL z_gvKAI`);2dyyAfxZc7n6FzXRZdV;^iGIDsK^)XQ!qhFcaD#<yKCrRbXW6lF2%BS$ z^*)qi8>R4b!0=zagRBS`?JE5Xz;^;;`nr37u|HD!{lHzoT*n_q?gi#p>_CPO<nw+z z-ixI4<X|o-{`0_SPw8I<{%g&r{X<$$&g;PRlRgY-d;s{@9>?{gtXShR;A=hXya627 z7;)mWGi-}<%Iycn7`Z9ry}<MzeR7}0QpOZ<k#~)`@bhBWW}+X{1f&1c1;eL{1gBs| z@Ih1(n-=DFLEVp>M0u%&D=b`N;aUr$Kc+70%bWqu*X^ofZ_zKeIP<Vc;usYnF9haX z<s9hI7=2Z;)J2)Gi83><I3B{WG1OO2!H*v~qA}Y-mhYc&A7JhoLEp_cu4*)Y0r<#< zpRn!?K^&&gJ`?(@+G78Z4ZjKN1vfBE&A`G(9~FNc^vH(ai#`f}J+SciXg=l$zrSnv zh>5xH12Hl8eH_$$%wNu7!#|AJiv3rCmHp<{HH|$FtzFxu?+*B|`vR(K=If70e3bhF za*xA@^nC$QXF9H>HO2FzJ4Rl{yNX^J9~t?(@u88I#s@}zG=8`uQ1bKZ>PucL`9;Yu zOMX`Jk0k@VwpID3xc1ZpJABvFVDYvh^|gm{>)!9>HL33Wo&eqtlso#$_~FqXji*Kr zjlVGZlku_9m&b>^cLt@LW2NKc!=>-X$@g@j-O*i}LQ<Xz(0V%I-i1q}+Y7fPLye(i ze&ctFw-(kHJr#L6u_xuQ-O3LJ=ClVQ^9CQoja)w%ANuy!ed=8|rlmwG5XIZl=zYrl z_GcP$+czh3`6jsN)<FLkFCNS-2vxqD2n1`C1-y$W6^PID_(7@X5AO8sI`O0N0lX<` z<OF)9y>&yo{QAvDsY%|M#-6A?e4}{#=u6{6MVlM)BTps1{q3)N-(E0&HnAsB{hl|x z)6QR%vvO<FuRPtJ*Z;-BV^iSid*N#O`8wX*ML#_o^8T=tKeX$0c=`HE<0G%b%kWNl z7ZR?sst824cr~I=dp!v3iar(YAN=w7xv+X~Q_39<6a@lPLjBKdIq}l?xo7(F@SZd; zc5k5MyHDrkeYX$SR8hl^w}N>k`<@y?*}lFLJ|{mBd<S>FZw-9SpFNW4F;y|a`;;2< z@jk1)Mc<6v=8ffm5A)|H_OC*{RmsGr!F$IX=3MH*{Nn9J-#nd<_xVN1)N?QO&MV{R zF5Y$VW19+aop!@mfve|4NL`bS?l>03yo<iynGB7DE{U8R#iN=(8w{Kr4LX>KDbF|9 zA1&Tmv?aRjhR5|)V!W>?fcKDjZz|&3y~67KVbtLbUnA^4w62zw*OWc}6QTQp!$ITe zm)`G91@QjCbJKTDfBfr#Q^z8Y6$T>Jsfn(4XP?`QThUv9H~jD%;gdPbdBU)0VK};w zZ?VD4cJSVy^2F@Y#o-Y6QL9cX&Ml_TD>_b@RmO9es5jv$OpE8Dp-Fk%o=d8>-nC=< z&;-9XxR1hbk69`eu*7-RtoQr;9?pGY^Qs=WvrkY$w`xV(Dm>A)s;h-(7kTziy={kE z<25VpZ_zL9nYd_0*NQcnCs<L7ufv|CmMX##eftAzvJHB*Y=gh;Nl3)?KhSwd?!Qg) zYgB=yV8GBu{E&y^H>GD8=Q98P<Nh)anW+=GRUz+3Y$PBG1`Kh(yBC@ESXb;d0o(Ql zARk1QBsRVPg<!y`Xjh#lr9JMc#NHnRTlRQ7$$QyN5*rUfBN#CJ0(iXuv=>Acd)t65 zd+I$2)zC>28{dFJFkpn7CS=-U+{E5r0o(S5AU7dP5*z!V5DXaEf}dr`v}d1(JPg^g zms1P54_T7f_%RfM0VBisVXSE{g3L1d`ESUyr&A8>^Elol!8rD}?Ol`tZ#i_d$G<Ja z-f3XVp8r+IrO1+`>>?=i=7>f9<M{c2NGIWO=@TW62lv7J2xR`9z;i!rm;K2{w(J#P z9yq^3mL&E>mZj1Ej?QO^T{<J{jM72oyfq0j=bcHAIUXiK=D1JQiY5esvPmdszfFS7 zaWDyT5d=AhvH*pQ)m1{!l`FN}igNmUb5{B7Su*FOO1gfF77wC6`}csB#ksF!$&Y5q zPiM*h$&+0^$i(>kS6yBWneq8sEsOoX*D}xl(4~LQC{G{Q<1CNtAoN~<vf3-H>0Ipr zYV3Uy3tD<Q`MA78yms}MTNF?qc4%CQr>VOhQg-d#6`A*Tb$m%N+xQs0s@uBy9z12Q z@TxVi*}2-P>Fs=shu(wkimUfqrX_o4l|G-uR=hMDf5Y+b$QqsH??TAtz1#~>CVCqq z-s<}WoHsa^r!Zqa2beaOBhS<NTHwW6-voT8#?8Q=)f|pT5}4~M{rNnyv<qA2o#9RC zzv=lmVo@1*Os&Ymw=sO1!oQozD+k8Vt8Gj*F#W_fg6%0zE$~8M`Vd2|)12pk>ow;l zVEC-;v;*I#G5gyE%)0B4dw^;G1>|0h_XDp7rav5m9a?_?xL@mOe~;FufcI*B4ER}K z+9!v8OMiij%OEqsS2=&iw#~cx(YE<c1llw4Oj$8Ji27pF#!;-U?8_)}DKP!N78&zL z>BoRE?n-|d@B(1Q`A+0JG)7z*H}#x+6Yz3i*i@U;W{v&OW9*cjBrvuIiW2~SSnFwj zgVu+DpS18c3;(&soL7jO@hxTP(MO|y&C>tU(*GKmF~16#{g?Ovo0y~j5_9%PV$OY| z#GKDyNzD07ojETB|6~rUV-aoN#_BvDV_uA0g54Km%YMaxIWBSJGGKCwv@Cw2tQ2J` zRpVFmHioSrZI&W~uQ2V*1Ezh9RrdO5Y&M}xY}z=CO)%@OLxx?2dx2*G%lw&R>1(u} zzGAKzex0SS*ZTF~d>)uSHzThE<`}W=gPMOgaF3<`GGy@+KAGqFd(lVMV}e~77j>K@ z{63Tk22{`g_yG_%g&8Yk^Ndh*lJjJ>nvXtl+hX|WmwC>r0a%@90;fsyn}LxHzZKg7 zwc<eE1}uE|sr=apJ+k3%#vB&@7GU8&r}-~{k8Jq+F_(mY09g2kH2*O8$cFzaVkrD0 zz``HW{9*8s4gWaCMffAYir<WPxU_VopSk(4^J+KBr&d4G^ETWrVq;T{U+xEjj`;XH zzJEvEJfl8+^gw4P-XgoAy}MEO%$dEaW6heD_HO0FNB#L<{kI_w4OL>~0vdDS*SNyM zfH~BMkjW($8T$cmV~-`%0%U9#Op^JKb*#^00_Ssvm9{~?FRk|_fHx!a*q&p{b|YGr zK0x%niXU$l03b=bo|OJI`rp&Bet~W(fDY4FY!|&mryW@tR;e#_tv!D(sjp(GHKy@% ziyAvR*Xr8ddR|%cn|-&qYR(PS-iM1n$~kI&Gtyd@63!>ow?p{-5cQAWph(`Hat8Zw zNOynAN&ayP?_N(9q}+Ij=i&x@@ltQ;oiSAWnJFh8oU@=vovj=Q0#^w3x`y+9=VF&e zwiG^9yp^?w4~@UGd|h4sNXW@Mb(4#;lqu(Ukl#)i{3>>1ISrvV@*G#r5l6Sj?@NSE zgdF8TA{4(5&!gEgo=>Z+PnQR9&bYEdWV};<ES`JOlJL%we>{Qr?w9=IaeRj){uceH z{8h3v<tFlv<80?(o%2b)3;xN#@<VyZ-~DgC-QoW4s`uIBP5=B>%DEHyPPnG;gZc18 zeFFt(YR$05HBNX`eL)4<Y4I9Q8!!LhCZ})&PYE^7ym?qHXB6Iltbkut`Jl$R`1PoB zDZZ*fTm*b5*_U$1ULOC!*iXj)1z({!Q#3#2cwZk$;rutw%I3)Tj`@!LX+Np_4t&bL zxbNG0pYKcA>$sj%=P!=9u}kBvXYsXw;(-!8&%`*?1(KyWYwMgj;Nt5rGP3F#M4~EK zye(efoz;$?iT6A)<B9xuC_ev*@+amaCJDBnzt<8Z##pz;)|~y}_=%!zcxLE6+CTfF z@pGZwRr+fN!QHV>R|UPN-ST$Fu8-g6VKpLunJk4D<7cq%s{BjX=X^Ek_i5YfL%MZ| z!sL4I8#LK9a4q6b@I+Utp?sZhUCp{n8UpKPH(XY{8Q%@rUHCL-I-+qbexG-JfV~gu z@076rNnc|$Ii+z%^c$7GDs07CmzTs$X`O*@^5o>#jRY<lfBQ`*^jImrm5}?l2Od-F zBEDa7NeWkvj^31flrtFL9DgT{^XvNB1=a=+!IG0GPr8lyB?Ec=B|nSTl>B47II$%0 zaqqi8tuv0J4LqYbkos73`(shBR^?AI5C3%FCeLerzeZo1`H<O$u}Vd^#W%87Jg*-Q z?9AI4rQ~fv)Or3?`r3dD@)5Tf-wIN(Ff&2M0ycYNe_Fg9&vc#h80hz({OjMRdc*xQ zzt1^M?aTwv;X5~CQO(KT*!9?oIe6agT>L)oT8;Oc9zXRwWv|CzKfUtowF*8Y>I$Oj z>mpu+&{iVd77_a%yPlScw@EAT^jGjS#cN64T0yxtB{lo-*ATzqJwEO@>2FkG2fBLk z>P6~%mBRcFv&_DR!ea+X+`s?6<sxYeOZ)o+wjLK${7>ow0_)hp-Kf5uP?r5!1mDBq z^2Onb#r(QM*~-~o1Gc>i?;8-xq^&Q<HySqRZ#39?``Z*1mcO`H9pASom;2(I!Zo$C zBX!|K?d<51aJfhPP5E}axMF4c{hR9R(tf%DbxkU9{<W*Na2=wwESzYb?ev6eYr}Q5 z;rhC8Lt=Jhc{p*W4qe7IGJMA(<NB2C7r&b!<AlG#OhO&FP$8ec$go$h$|9!BwugrX z%y`)Ls^J4ZWuY&V{qC=UWggt&d>v0Y{*iqtDvN<XGbS(P8#~v6fh%5XA86~&xDb|Q z2TW)tH$_)gbv(c~p{{9JvGxI2oSckLwRfyq&DTU)*Xz!2aK!`Nt&J<%?wy>~-qF4K z9=y)7n;*eg)w-hn-VZU^(TP7K$)4Qi+Lrd_#+DVG9c`0y)Z0&2tZKwpZ@VtcTD9Ur zQM(7PPi<}NTyy{G=E==;wXErQ5SKA8%;E=lKZMe}dhJJud~*xqjz326C+dac#J^uV zIvXEo*DoJ!xj-j4Ke8S>$sBO?{?7|ehqY@j6eTs6FUX(^c%0@!M$Z3yNT!o)M4P~3 z_Ue09tZI=-;60jxXLzb+^QjeHht`j)WZK|gWM1+AX4i+gPnIN@`xyQWtJ5s*vzb4M zOg%H@rO4ck<{>lT{G$CgyumzIVB6!iSM0H_*!v@3+g=T1@d?o2HelOc8Dz1?BT%uo z8`!pY6Xc2PZPRtIV44-jkJ#hiFJcdWe`MHO0C^&N|F^D#1=B3@#2%Mo?@eIaKgM?= zdqcVo7EH6aFBW@YU~P}*p)>3yAWvY=mGdbmW}3AOKVpxkE5sho=VsWeh0NGUA`i*E z9zPmWp4Eh(^~mfG&*`!Z_T5G-?f!N{E<={2ZSWm(8TN)C(?{Cl{#@*B0JiPzfVdGl zNn-D-P-x7eD=@Ek53#aWtjp*ht}EE~d}WX;kR^$|{|tp??@Gp`37P&yky%E2uVQKW z=WBqh595H04fmBaruxdw_~D$Py%J=x_YSaauLm;PF-iRU6*RVgharo-QeB36KAvN@ z?X8Er99fdK;gd1c`m4B(kxTzBLne>*K7pleZxHfC_7H#DzpFMv7JD&WMte=bmc1PI zf$^0j{$<@Sa&-g*a_QeJWbrR+zT|LDO=Rz@x(*ghSJ&f5?3DqFz3&3s{<T4#$liB! z9W0ox?!%ARy9!wB9R;@St%t~1OCk@+_uuiOG3Bcdg2%bV{&Ie?jPd&bOUs^rBV@*2 zlGq!C!m@V_*RdXC+PhYl!Cp?*xobb#%{b?)ZRE&0g<_^_*sk=q0+>A7%bG9#LFgy& zFNZqYzeA9lkm(=)rVx8s+n3xZ%Ic9NiGNw!munfb^~kgrM;3bz16%RSZH8QiEQvg% zoIk;j#+0w!ho3fN+T%8qW$f>_u(a*<L9RxYB=-Ik3d`Pg>_-za?U66`QosS^9Au>2 z1NfmVN$kA}1>2=BNQzhHVf9NM%5#RirR+0u2O)1nmL&H6848VAbX^as#{lS`j1~Ip zr(bMWr#!^OcTglO#ooCzW@*I^6tx1-9{1Vg(H_@p%U(XmsuWq0l;IS-#Dqop^{C5h zl#+zUrB9T&=8HCSpMiWc@?2!L%Qmy_FS-;lHuue=*!GE{Nzx7sjlXTQ00@jJqaL#5 zhm!S}dbJ?vSQ(keO(vn-9(UT~af>`N=7Vv{CZQbhRM$YMV>xA$P|o9uPiqCsDVv0H z#-&9oSWej_lyjfas}*sSQ#J|Z+{S!ME6Pw#*(8*68}c`v!rh2+$|j+l>jbxhOcf}n zY!b@3-+V_a%27_)B$Q*`xExoe5X$X&#Q0r?@+-VzXF19trxVI!DChiSVtGs<{e$vZ zDF3V$qbP@*PAD%!IgfXlSPnUzP>%hA`=r*eocjrrP+o2X0La`<n*_PS2mp||oiqtD z*Bz4}>urOlf^2V>SbrY;`72$47q=m&6UuK)OR7C?2TVda*JG0)FMz!RTEPPh%y0L< zSu*Cg`ECx&F~5DeV!)eh>bOLyw9MmBTV9eSe?CjTH%rdCf6ez)R{39M$=}P8{~=2r z%#z>BlFwzzYQL#eUVn0~%PPMmOXhKpN}Av6NiJ{J!TiYC=E<^h=I}T~CCz^^OFoh% zpVl(JTZH-LH`my``hIR_Rnqd+TI6?=F#r6re&~&Z{||LJ?O{HuZM<Fok9B!H%Ht@1 zTFX-ZyIL+o`5cu0P|LhO5cAdli!A<0EpLRQcsA3!yqZ3bj;B8}|H$XL252VGW}hU> ztd~ANlc}dYb2==uXrgmqnG9A=pZLlyGiSRp3o=e|onNHRYh|kKlUbQ18E3FEi_)j9 zGW8kfs<MhQPf%qRvajczm9oy$oX=J#P_xuLYnrK2r<d$gr7Z4T>z#UZYSn~T)c)Y= zu8wxz$brx2G<)aI(id17Kh@G*yP|tV9Ud=e=~~LWKskfFt1nB{NlASx=8Cqqj#bu2 zlvZ^<WL>CfZ0PD()v|W&Qk<x4Sh4DU+_ZUq`*pY7+DL*}QMagO`ts>pZoLKPFJVbY z_(Bunm(kRxZ@;a!aaCK(3fyzrvL@RRReGm7KY4yF7`K(RtJkjTXm4*>mC-<L=3rVL zE^X;v)U&GXf##Oaq)#v|Zd-A0*2r+gd1moTEvp+>uk}vPHLhH>Vr^DCZ7tm`x3sn0 z-ty2|+bwtrm90U;h;TO?ZE0SN=R;Z+;w?6rvq7D##3!%5?2S~W*9(^}UG`8X1{X6# zZz*si2HjLAA2Z2Im)=&J#Z*&`rztHarp^RR+VoCGT2#1S+p>0bS4%S-InTI0!<p$D zTRhJWnw-c$`i2r5N~q&L?84PCC-*VGEylh(!sF{0GWOdMY>w6O9F8fC9=iyId7M_P zF^^$zT&BKR!{e1%7UuB`eWSl9GvDdJe!=K%3?J0DTG%$)<+ojwKWNWj9>a;vnDt!` z9(#%2#<0WhU%0I(htEaWzqxI|@Kb$LgU3|xleeq8b-+00QT$F|$O?A@HvqG44{*}b zH);Jk=+TDZgJ<v-jeEiA2S%LTJAn5Bv#*DcaU7-i>w$mfan$|9uUq)Ig-6raEwXUT z!W9;t2Yd<I#s1t~;OSlT!>!f026(Z@VY_a<#uy)-mr%a-0e@EOUj)9#;-l{pf5y6o zV}Qh1oA>Y|rt+;2zWYSJ6~dTaFMPyNz7^v3;t*5x>+vcK!SKU=_r7U&BN~)B5XNxx zScY{Xz?@6v$cUBEvrPEF;sbf|K7Vx#E}ROBAHpF&ZPG@TodjhjwkLIMjP;>}bptvJ z2l6da7xqnE8>26!tcx+>-!led4lBG2dW^NfIA&KEW3B2)Tc|Jb=Xu$M(k^(n3SN#n z!nZMexXkjwVECZ0_Q7EIpzv?tL+yw8fEdQ;1IAPRT`GP;UL<v+mj5<J-C2{=UHoBn z{TObk%eJj{KlNdCWB3!0+t>kQ#Of;AIgX6+Qg{Ryu~PUnaJ}YZopA2d_?y738Xo~} z*Zfi72QB?qfVpkyLEfl2W5C-qX1o2GzYO@VJw10LypNbZxacdt-F6kW8|vAJAy3cm zD)8Q6rRVnZ7_!6xcFnv(f6Tl>e{Pfbz}F>$VN2E*wtc(Sv+a7pTu-!p*TP(Xu4W7? zkg>jB&DdUrT&(qR;8KmNfe~}D!#a0}58#>g4!l1QeT~JpG4_w;Y&VLGwv0{4e<*d) zuF=~#gmbB^OW!a)*U)F|Ke<0rdiu$jN<6_^DmGDOVr%<jW5ncI+GI>%|5~<{K!$G$ z*8+pDa2@ahV2&^QfqjE%H(|AfI-e0AP)Ei~otG6q>#e$enBle;ZE}pRqYsP$#z^59 za8}&ZHXrrKTPAIRC);_4I%&(suvtO->~9ek>^s{+Je8htW|`ClPKte$nRqhp!m%;b zm7JI%WWUC`U!PMei&u81;0U@b82;1=Mx9R!hJT+G3}4KB`sLWRh#r1c3x=OJ2!?O7 z1Y;ayf)~I=!3l&~a4ojIf-!cbg6lEu1UF!)1TV+X2yQ}11vg_l3GTx#RWQ0=H3dJ2 z4fnGOqu(5hD&e5-=3Hw`bI@;&so|jS=6MVBSJ^>dc}~D^&|mY6MM86G!9g}0^wGp0 z{Ze+8frD%~Nh{_}n$rvpvf;E^@$A%`Zg7wdr^kwOujZ@=2ib7!SZzdz7%Qe7n%@tM zZ1~Suaoz(g{O2_P1@Ms#f4?<G2Y`h?tog^mM>hNsYkW@wYd(jHvEp`@S@_)E%G_{6 zz`~Deeku6Kh967ME4K_-_;Jmz1|Qk*YtnPlT>vcnCe3dKAKCCRE;65aY<ZdRH*5YD z@R1E4ah7$2&z8r8zgP43fsbtXh_kF;d_U1F;iokJAo$3Je<;1qx`%;<KcM+X!ACay zLF}URdf^TMYre0{<NM0-=Mu8;eHGY$X}%9JRPWqzz)5I+Eikg-*J0lz{CZ%qpVa*2 z;3FG;6ZSj8Zw3~Ax90bNk8Jqsu)h#~FR<`+{C$W$v*GW+W>xt8z{20F?IZR+WWz`N zD};~uS17)^DXekr8u|FohdqZhCtiJ{_u-$9^6W(PRR@El&z6@vUvQG@9_Q^3&F7uP z$@wWK9z9v-9EjK8w;u25aW<951Dle#KR9*fHmAO$wQ}^tSvQ2zWXIlk{-*Lxcg1IR zw{>r*3x2Wq#Hh37#2IIE<!I#@Ft(h$&DqSFXwylC?hYjj&b+^5MlyKj?2=i@{4-~k zlq3UZMwiUIdn_3`Ga4y7^F7yn`{(}xT}c^rs>XiTg}ms@`@uzbk9qec<8JX#%6X_J znM|oSvy6_qp?H30TPM7T&-^ey&WuH>Xg%eOjygw@0ks_19vB^Sj@&&K4{Q(IJxYHO zkFWC?lDj{s3yc)xRHA(F?lJrxy?d<ZfI_`@k3BS|(0b_VA+5u*jedUAq<Z=FyAOD6 zoLRy)@QXHfeqSN90U37ji&l0nQD`~PeZN^d=ntNO=~;01*xeuK*q#mM+&zY;Wf+Sw zH^gPnUPh!R^u_3aPnEa>K~uIrUB>&^y>W=*D=XeJ7-54>j5#UZ$ByM;y*%PAUG=nv zcSkwqM(;#%5|2C^-ktNmp$;?R8(+X!DK9(=e8wZXi+zkI<1<+HF6Q{wpU^Llq5Fh2 z;h|wX#Uks%jCdbraxG?b&!(Nyvorf$=j3P!pC3_uK;1#Ug$nNm!h5Jv?#*NBd7DA; zA?1|pmb%g1DJKyMElA~rc6m=C#6zh-W+c4zQrU9O-0mFYQy1NV?ipw5oKdWaW8LLv zaKJ_D>{0i1>_ywhrG>WJ1<Cp+*7<!SXK!@-=&zl_$vidpM>(of_fGxZso}_DSSMbs z{7Ga!Xa4nT2Id?;I6juYvmrnK8Mbit2jipFK|WPPDY`Y4dsk=>{b!Ho_!<ha1sH-g zclbx+LwJ6s70=7)_aapV;{{${r#?INd;Z;gvk{(w7&vj(IUL+ksYW5qPT`5Bf5F$M zrhf0Of#)Jq_tLXDfp`ASsTjd)8ymleFD}IzcNH!f<+qF6<qwqJfY}|!w}^f?-sjsL z+~vJnDISeKj!_#Ler5cF6NksulN%>6&wIA9=WpKR%na@*+MTzvC-nMErx)MT@_n&5 zmHXy=XJ#DVdxGU$ZVlbi6KC9LG9T~T8g<5gwcl~r<9Kw_fU?z-3{d78gSTxxZnrhK z-oX=3(OnWRJ{cB-#C`{#VgwterviC+J6KhaQYwJwUiQPnyCJRdd+fa`_UK!17fO$K zy-Ump?W)X|_@Zt48ilW=malGVqBlo5>BRSr#dGj{T2bEC_~r4$$wkhAjwQ(;`_z#{ z-{5omx@1T#vHmN4O|tyt>5|G5Sj$e{;?#TF-g9TMf7|`V;*+(`vQ0litae!Yf*sr! z&`!#2rxjT3I0R;AGD=Gw1D;N|GprfIBR_H6<U@QS=p44mBl$U%sB-{q_Q1~s@FAJ! z^owPcrv`6zno};fMdz>`X5`}e;T`m@aCf1aw}?@wtDLhQJ&16bj5Zd;1L1x|Fw%8X zSNRvCeA62G(5Ko<V9oywT3m;GXj32+XqU*`o-9z232@fOdlVbn2`uYU0rY=;QaumY zG3xcGUHGkR)mw{TtxlJURaM$SoA?ryVXbTbP7<@QqmTNI8u-%WMGvjjLrNke@|%WE zE^?#DrKv#2FyeFAuzDB`XpVp>+vOCn+BR?cANW$09v?*H8sr&lCl*cis1Z1WTNDC0 z7<K1>=dTq9jvr^tPm(jZOkSf#SZfj2+ni3uhV8dAirst$P(|w&r_<J=cjat#)4}8p z&J2uoQ+x;3;(GL^56>B*EV=jO8O%P6VtntWAHhl!%Q?bb8@k%!*9CWCJq|E_^d;WP zb~c^n_S@3dC~Yo&d%cqO)rhXsPM<M5(aTW}nbA>kSLN(!xjj1V>tMMD8h4Y-n0i=E zBG+yj#c$oF9cU?mh|T1YmYP5G?J;_R=+tAm9HrNBAKkIKV?U0)a@ZDTKvHqg!%YWI z*1D0wO^9!hKAv3SmZ~z2{}M!D30ho&Iq)*(z!En~W_v5WVju9E<gYhly*38F1_oN8 zwRq2_SKui<Inc4=<SlMwld_=Jg4-Oftp`qWO}GpGuG<t))^%Ou1?D71_q>@%Zu~CA zy3Oga_JmKVbug63kM8Q+(AgF*_+qi&TSrInBq`p#7b%ycLhNnJPmVg*ocW%EqeS&y zzH7LJfq(s#XDUazg@OP5Xn#H1)BehuQM>6~l+<n7y6F*=B$P*7PY<xqn|>rcZePa| z*c|hsvgwFy<x^@K&soA*CG((to#~e~J~(2~ma$w;i~lPUk7phX;28UR?l_OD-y1D) z9*kzl?t|qSvhTr~3^}KGdvs^<4jfk($TN>zTji)H-77xx$P#m`b$RR)(XE4RZj4$! zJy|szpO2%LKIGQ9hj0wj2Go3J5!PaV{N<f{0{R)!`$ike?|ZEwc;9eClzW(xot;bS z^j7d>y^|{07TtlhqBz{Y=|S4YvRf^81a^k{>w*FG<Yl<O@}CA~h5IAhS(bftmG)bZ zKE6!<MbL|Nh0lsd;brg6B(0dfc}L8@0e9zrIln%R>Kf8ouYKqScix`Xde41&$JsmY zN9j>+AG|#R$G{w2nxjY0&dy)hHni^lv2{FN<u?rZ)>L&AxUq5+J>8g`&uu-90{1F; zFP`rloZc6|4`t7d9v-i!jpHvn{(|om;QNJ<4Mp?FFW4CmjppNs$<a@Za}C-XFU49} z=j?^2gOK;(8Fb3~DAVrXV&^&@XWl$q@X83DCvObK%hfVpj_mNvuzJp%doi|L`I7g% zD(1oAl!K#ZJ=P}|JFmuz@vCM+i0|J-i*6CeFdm4{-*gCj_M%PKa7(M!XKY)%^_hD^ zS`PK2_5cxVA4$3Y`uCd$kKt)t9G@y}xIbRJ>9Zb_)@9!OJC@ncoJK7hty#|(hODy7 zfNi;G0@=2exPUFr7u#00?b@vJY&o1&PFwUxQi=5}q^-A~k+k)AmNXy_LE3t}Pt-h9 z`P=9xYZvcBozOnspKAOml}=&Vpq_axvR{*$aW7{wE9T|tx;{KCi$^*SyXQZM>XFLQ z+}!?;_#V|Z%TGH#Xv_4=_WwCNIEuHxu2<i(der;GlwFU{2Fo+7A4UJ0j?ZMz^u{OY z$49Ym&3TvOlOCMk{j;%a*EBBuOhZFs!!3&%Z~cQi?pSo|vfJ+XRO2E(lWIR*DW~!9 zylVSBtMA35suPy#`|7%TyoW)vpI$UpG*3Ny*|?&+yJbyh#(QWD5fAD<(6Sb9?^Cxt zP1q)H#PPhEv>4{@Z22SJM>Z*CWruloRX>4fd{B4#q>I&ya!sMSohV(HT{o*Zvn~y< z#tV$BCpa_gUZ~9LapTIi4tx$R{Q_T8KOL3HIp;sQX{xVoe{e<HYP^04j|i_=)!NdG zd$DjQR!7Ez(T1&uv#sMxEnSUmD;~n{+6Pwge!B^M)AUu{U2PnEWq(3qSIfPt*J38} zf$Og3##P-t6Vk-qd4^<mFI<FKe(SA^mM*=(%x1*0p0>^I;02~xr+0rLZ;P8~IM9nu zU2xtMNf%kuqqC!{yRm!q8a#T9#j5)!wW>%R4@^9ZvL6u6?ocQ0c3j<_@vwL{MU4_} zc<k(GUwgroo*v)Y(T)$+Wjq9)ZLh84-i~|jnXo&098sh3o)xPvXoZ}QFvaN8XE~8C z)E-HT+E=V>%X}8wINqhVX4-~&Cz)5citFA4&oKY?4=HCo>!q)7q<5&UhL>YWj9dCu zs@6+c2=8hrc#QO6yee>52lq*+M0>3obK%#x!oq-asc%BQ3z?Xi$551Qd;O4kY$gf! z^Qg28zhWD3ZZm$QK7A2;Ujnx6eIK&DUl)5_x(*ghb35@P_814T_n&}mdw&OcB73`Z z9W0pUuEUSm3j&M1L%_DZA;<}2N#rs85Lqzb+&=s;28<W&ioLghEqiVmWcn{j`uheH zw!Nc}#Xla~YI`nywe3|vo?txGH|T78!{D)P`WHbKd)EWo_Ua+mB1_UX+;S*1W>GbL zlm6mf7h`V;FzxAnxtoE@kR^$|MNruGnjp6!(?5<M%g~0q8cW;17a-RnOA>p{P-x7e z>cjY1fJ}S5--Ttgw*gDrKb*y#(7&(hI#@8>z%dj5czh@J{xh)UpRW`$$4ipL;Tb3_ z|8D4pT!u{lN^}|h`vI_R?^?*vn<VxQKx5n60hv77qYvWWKLOkJ=0RqAlEmHs6t=xR zkmJa-$N8o0`Dn|w*8rLANfLWwP}ug4Ko)y3T?T)Byno2H*9LhxvLtQ87lXpGH;<S; z)4y4|jP?@1w!K4;IiDnny^lj-+dB%m4w?4KbQ$fn1Kak<o5&vLsb%j*+7NqJ=`z~m zv#GYd5y%tS<9OQk7#FcuuFGieC1A^54(pU6OVT!cKY+rv_X1?G$2rC_+WQrjw!Ii+ zW=Udi7z*3o7-X?mq03+|XBx0=F9CT0vLtOIhubyFUQI3JWyl<l*}9DO_*|)NZyjXL zK}ljy>S%op<GB}^_Bap8qrE@C(zbUPauQjR*yDChV;0R%;Ab;3?ae_Jdw&FM+4Gkn zrV;2QiM=)`Y<sVQ$G*^BwJxK7Y{RmbhqBy$=p>0fob$5nEvUyK0O~7yT<6K7JwC%m zdwM-BK)X%?S(4b>1BJ#cTF98Bkm+9yve-KaZ21>rU)zu+X&X6z3x#Fx)+l81XzwOn zM*rRbw(T({v?)pK{R<Sfz4ee6Ak!X~EQ3Au%$;p-BlOQ9OVT#{jE8M61viSIqrFe+ zGTMs)TlS{1tqNpGVvomvmc7~|keiTcFM-T5+Pf7?+g>Z=iR_6FC}vv3Insnodkc}p zUK_A&ZwqAhLz4J+FBF!4i^!Apw^o<YKR!cf+v7Skk-aB%9W0m@9mS8>TMR7z{a?Vg zy#tUr7bJ;)93#s=b#J)X<5KMX9N4yZ1acf%lGvl(w#PX2ATxflZlk}s5N&&5)|sfk z??Z3f8-gtU)$20a%i6z%+1Cl|<;HX!ESNr3fgiDV2Qb^BJ=(VV8wO9ky8>#Jv`@L8 zf}}C^pX$~;_P0To(ViS%<&cHXf~><&nS$Pr*lUJp*{eGUxeb~2?$l+p$C%PTZWEEF zJ%b;sp28^4-3UE-I!)Vyb)WVm={mWOLSfav4P%>k7&^B58C}M9cLH1XE{;GhMV2IG zc$C%r4Fz~{1?qlFNLUJwOKuZ%x;lV%2O)eO`DSGL#5VGgb?ktg>xW^F>%JthC$cP! z{&)0l1H?e3Ryb|NOF5S(jdBTR(U)|B%zdv(kj0kLK@J04qX_}nr)(0+8HZ13#bqd` zY!b@(_W{R>sTSpwO+vZ7KF~iNuXFpvL_TGcP;PH8$mj9wLz)l<-#)%&Ip@LSx_pv% z6*#+fc?s&<e^0S~3}r9q@=}yjHVNgkApBG-A}C(~{I6PWgUtP#N#K_m0RZw<S#o)n zd~KGDIh#(XKO53ntyzHfD4T@xxDfy#>vhx9LaxTNzu1#}^dE9Mp`6DLCPA(-0s!Rf z{;~fip`80JlOQM1-ql)Bf%YJ$6UrB+C1t-hOXmK>B=GBu004POmRz4D-;pIZWXX5J zKd$3UWmr)mrxWZiOG~OfncGT@^3S2Z_;eX2JJvt<3%U*;I>h>?o@JzpGS)wLn=Vg4 z#`@=eSIf&G&w~6nTGlI<dDnx;|B_YC<9H_8$9zj4gL*5cPv!{AG5>sbdURQNeLRk3 zVmaoc&)hMf>;D(8*x|bhFh6}i*0T1;_e(9uP>%WPdpEN@2Ql!HXD>(A*#_|Ai0XA& z<z^0PzKm%S{5jyS%Hs1plS-QZc$WNUS@M6)lJ{rHFJ;Ludvb0++Q<5lGmuq2lqK_c zK_$;0e^&qfvafm$_Rv>9Vw%A>>!hxq(8U$tV}0@8t!0iE)))VmEg9>J{~KD4qP!0B zvs#WrUIJPA$NGq^f6%Ir^~FEt$u7sI0sFYHF89V;PPO8d5OT_X!V6NuYfN9=a58id z<U&t|UR~WW8go&`Xyi(aQINvRFBuB^nu{q&yW(AFF$Fy3Z%)p8+Vf88OK;D+Kw+#{ z*A<LTpC^}-_nv;$%Cxhdqr6C$T_@wpTy|mR<v3HCbq&tw_2r|Mwhp||bk&OXRV{6H ze{s`)qo(LrG^qC}nCg>XVgd!hpX>sZF`&aR(N!l}xNvbt8~xLq%qvl>e1S5r<^-3f zSZ`u=W@FxED$7N=kU<r$KsBy-5LZ8VJt94Pa&d|jVk~i~NnO!Qe~OH6nm|EjYwCI} z)#_~u_uv%|axqnOU+U<(e?=GGL)@IEb#&n+t$d$|x+;=x0_%m-x(09YUDJGn^#%-l zR?X>JRh@2KUGGv2tikI(aP7;RB_=$)vc-#5nzCXguE8ilckWJHa8kVk!Rt@f>mzhU zr8OLTIL#%i>{9zWRd$)aIF+r2>|K$XsK6S%jL4_2J!RLjFF2VpbCoIMeJ0#Y2C==I zfh9NH*lsG!?fYdKb6<>YaxRaFnsw&>&*x!z4qsiz5q&Gl1jCNPI8;%`($r^T>~DgW z4+<B7hq^(w%VRcXu?cM2O;~yx!=`B$zD}im9-E`T2HU=YGmRXS^O$HFb|va>4IJ-G zqYnw>Pa=yCkmXzS>YTsmv41lhz-jC&k3sz!^LQ1$Dg7K^+9#(18DpSuIWYRK@GM~X ztuXy9)tG&WX-r>Xvv3kW<(p*}@>4y-sr^)#`*hl*Z*gS!sW9gT{8YFM7=9{D-{6zN zJYIsI3UeG|8gsvlI8SGsVUKY(m}N3ISSA>8n;~Ndy}{_S!EDds&m<qdb3QAKcIc<U z@XheSyOey68~B$phIPp3<E1=5Qjd&&DSZPl+A?~Kjl#>IM_d$60%KeaMobM(SeR|d zoB^KASTdnK^Ns_wXWl)5Hq84A(1v**!E)3QJ2pn#V(b^=iaD*`iGV(-^<4On>!e+d zljv;>JC|E_E@w<8uw$Ovx9i#%c4k?2)O!{tuv7mL{JDa5XdCsfpg$O&?B~Ys5IZu~ zn0M-LZRsQCL>cXH?i2&l4!K$U2C)-Enbfs0=FgS1!@eNa3d0`%F1eC6Yjl>nkj=XQ z7NAV@HijMb&I0xe{-}2u)B?w}o^8Rt(qr!MZ)(M-zFK2$6EOD_hjTaq%;)*3Ux+O2 z!mjZLw#+*PP{%xP-(c}=jCobgzS9TTHMqjUabU)QKENM^X#?#lyiAvgKj3{<Vh-Nt z1cPUu&rhO`@NJB^T|<A+KF8Ex#OfOM8@|v7zE8nD4Gg~(9tFO`;@|1<-7e^1-`HvP zuzNT3-N3Xn2K*HdbBgi#ZR&k~;BRRh0RD4e_~t$Z{0|;hehz5;H=#dj>4$;EKH3n> z=dP8VS+EsL^Ih~=>0g7MePmncpIZxD2-_%k5krHQ19Lu5-wI5hVcTu9IGvhv5A;1A zhws*Q*IAs$wH`k5db+ZS__#U_j1Ql$Hf=p?@&DSwFIo7AhkYT`Wqj!8ao{(ArC%c! zen)fI7mll*8^rQ%5&C_no=fye<~GOdF0JR7eO@qP@dd%~W4Yi++P*q(A@eYbW)Wxg zp7EH4%QfDIdT|Rc0lo^yRfxUQ3Cwx>W#k7vjt}#Z=LKogNBw3GyT1fRY*kytdpzu< zfcFB^W*hK9V2o)lZ1X)*%FZ0%p8>P22=Y<Q?*<;!{2t(8OFyFZ>!3&6Sl2~gUB88^ zfjLGg=rQ+HTcf}WHGUnK{bgPBkMDpt{FNTZe;@S7tm~fz+~r{(>!Sb4XWIV?F#FXD z{4lVz+o$=jL9b)wgYTS&rtUW_%(#gi#!c)z=W%@4mbjRotgA3%MNT{PCxBUZJ@DBy z_T^~|UpRNgCg+Lj`+n$)EnMPZAN=)QrZMJ;4`awU@EgUxYk@hY8-Z)I{#D=w!1M=m z+_%uv^PQYN#+fl(41A~NZvakeyal+)!sw6c3w`JTrp+gT(Kn-qZ1kwFViE)AS*@p^ z&sqAHf$4KA^aGlM_IciozPaoRW2j^9Lm!kLwt4PN^f_T*#6Jh~A*aaW<f5-Rj1}zU zB9=L5NA(wTGiSEu*8o>rdd7-&5R)9nietyN>VWl_=G@_NxZdToYd!jv)9vYV62P2? zXjgI22UVAxr!;2}c$dY0#?n6zjJh1toc$hFb~vv@KjiWKuYq&S!XqBe`3m%>J-(`Y zE{*+p7S{1$TmG9oy^{jg^Cb7P|C7A;fsV5{@BMdI|5mb4gb`*fJIO)~5yn`Hafl#J zB0zT5pb#BLB?~b~#*!l&S<;mSh}6wh6Nd<5umNL?QFDE$lbY1c&zH;PDhX}(<kG|> zZpvx>OP!S4s}kS*9O@8<x<nWU|32S&XJ$uh8AzL+bI-kFkM=vyeCL^Go|*UE_wTdd zHC8T;#wDNZ0FQw2Rq5Z5@sW|U7D|6;`O-6KF>T9cT8z)i=0;faRW=`tp0Y*c#erON zK^wza5n*jpWnC5zf>}3iA1>_9^|W7GFpoNt_G`B~%pAGnXWip-$IoROW3dj$8R2-$ z;Z23(=d#gQtkcPvQ=>nPezu2;og6=uIgF21IXs3TcK=@%V5CuO3$_WJ_bJXrd=ofn z@k(&D#aDo9EuIUmi?DePAQfQhOuP)~Oh>rn!(eQYyyO{hgT)Vk7g$^c&O|sNzUBhH z)`pHvP1^zR5{s_`lP}eIP$#(!%-S&L{;V5=nUmP9WcS_I8Jwqd6@0F10=HnFNz9$+ zhq#ovlYabR&b^&Z%D!!F&^E-3tx;{al94yE-eMzUd}`#(n~v)mH5TSg_ezX>42=DT ze-D^#!N_-kS&JSIgVlC7d83u@0pDlwUNF9H)IMZ{EIXY2;MMaeD`AH_#*iH@)}iA2 zbUDthV7&C_&->`ltzpGq^yhv1(ChjNaVgU+Kg=TILyuWk2B(mx!SY)J`69B@L)rU$ zK_Cw?`WFTIJx0I5R{x@ZgZ|5<AKSIPTrNGe<QlTGld`vye!V=z*tuAG)Q)ws*y)k3 z-%!u{rAO_s>HX59erA%L9?ISxjo-;b%vi3Fp8BY*!S4YxPggi!vEMXU{$^gT(7IAz znkT2TXpa2(X(r%=7(aX<@aG4dAO02oYzp)={cH8$!z-m{gp4n)lpi(TCNMhV&0zLF zMm_*$pJVthf!Ssa-UJ?vIPo-ix0R28_eMCL20sOs&KB@DEzW|!9dPzrc{B1u7Po?r zSWc4mi2%!ft255r8H~<2b1B>6^T>?HjU|4C#ppC+v-2qI&Ov0K+pcxawjLcyaoV_b zWuBvPZQH1H>j5}J`*WpIdp%GXyUq1CVQfCvaccQ342M};XF1GTo$c^ku9Z2QW?$hj zsy<Y~ANtYuV6fIF`9qF_9v{;UJ!Rr6;S<BpfXSY}IEdZG8mMsmC6?a|pX~Yg%ExiT zS4qdmS4Mvue6r`a^B9b?EeCe|m6qQLpX~Wv>@FO?2kiL6mcJ1`+4DyN|8D|2{;1_| zhEMkVt%1+CfgOK`<&VK9d;YFqPIrSHe~;zwg-`bUeZjmx4R-u-%YPO=+4J+k+ISA^ z`1>vY0DQ9NzYwgSgJ8!$Wce?`Cwu-xu&xe+9sii+ABRu&{K;VLodjEcJQ?xh)od4J z$B)-?P1Vj<ybkR6Y0IAnpX~V!eEm880<hyZS^g6EWY2Hr`lsW!fE~Zh^4sB)JwL~F zPRCyfcKja8?}bnH`~j|EI{pyY@kcCw6MVAgk8;T8_?y9wzr*s!;FCRn7stJhzZ>lM z`z-%y_+-x?=Q^R|KMQvJ7cBoEe6r^s;_J!rUj#e;QOiFDpX~X^Ij(m6NwDQ7QW0P8 zC@4FAf_XH@t1;yBz>eQ+`7OxFo}cB|$?8wEf*n6+`77a*J-?IVPsi^9JN|&>55XsU z{xHXTj=vG?_**T18+@|o?<nj)6Jub<-(&fE;gdaoAIDKn|I=W{&s+X;@X4OPpJOD) zKLB?8Lze#{e6r_Ha4h8bhry1oIRfikT-oy{3o%9$C&8Al^K|h`s-x`qCAA#4Sp7O@ zzryj;mOl?Z+4CDXK5_g7V8?H={3Y<op5M%&g5$S<9ly=;+u@TvKgaj4<F5o8KKDgk z$iTGH+r|yN>;oTIWSH+HZs5C_lUN~c;HucIiY=0Q^zI(TQMmhCifJ>j{Fd37B=H>- z^`@5?2_sPqGt~_zbHn*4o?2&Sxc{qLlKo@77iX$6pSops|DOJ_fr~Tsnd@(vO{+Zd z>HI$;w(a;2Pu@K?SanPNp#<?ShKPQ5eQcki)`d038kn;l9jv;0?3Q|>3C<y2OpI86 z_12OR@q_x`vGo_6p}x!3uRcTl@7nry)f2z)WbHX7j$st9u$-7HGhTnaJ{Cn9ygO_B zlzTLJH&Ftk7=wztad*Aqy4~IIXfjhtM3gMK<<=9KWbIC(5S~Em8};*VJ;~@!);*fq zKI@U0J8QQ^5ju#Uaq?YHzDqGUKA)+qyS(F@xobN{fBAB4;#GD$`S`n@|Hu&&!_35H zn{{PA{?q-jGNPcpac>ffPv-uMB5%C%{HZsPO`h}kIrp8jXZF3neEIC;FaN1_boSS) zn>yyq9-qDQmp?ljtw>*~9j$8Wm_76Q!zLmJ+Nx=JJksW8W1Z&7mp)@>?YUsS?vqTh z_%#0P3`Nv%aaCAj`rY}HCw_41aO%;GGdGsvfoEf7uRj~FuG>Ddde$Sg4?kk!2j*kr zpC8}0dB^zplcVE%CZ9ibGFOo&j>uD^uOw&HPJWM3RnAI2J^J)xPyg}D$yuq%@1L4{ zW)zfsxpG$RGkc!-ug^R-x&PGhT;hMRO5~5HzCihnJo|t!=E~iBGBXBdv!Z6_<0g_) ztgj*6luOBXn)iO@l}Lbb*1|b{9nZLBHc>@(6Env|<%@I%dZX=O+-(p2%QNF!lElND zMvv9$x06ggTMFArs9$zSdz7YZbNgK%nf-p7tIu5Gx4E~|n|E5RPyDv1cs`RS;_aCk z#D+9cY>292KD7skx0BmWv#T?;eb~g0$&{_1d;e0+{QB0PFO9Vrv<K8ywR1iDf~v>O zo}g2`Galm9*nJ4mtB6LL?Eg`&k~m;y-!rg7TUP(KYQ~7a7k6=jh)r6aId{t}B0e>5 zxoFFpz7qq>s~_)Y9{cxH?;N-|#F<Ns+*sDXr|NOyz_gKD#Z%2kCaZUDY3lz<=7arX z>n?U0GS{mPUY>DIn5e0p!~pB*|JJ~h*fP5?>yZyNj`S^lBso7bImTlmkM-|4@%>ZB z25ypGMN3RQQg0$E_0R1)(w6MIxNUY{Pg_HOW!shVS0>qiJNwy{<d#?VpBk^<S@l@` zp_;Mg+?_Y}e~T!5t+AHo)RrTSzs5iDC^i}8hUSa6tZi<hRdavOfa!N&*n5yw-uP!4 zPk-c%o>#tiYVW|^#=Eo8*j5<T!SjiB`N*v8k&Uc}c<Re@$B3GDK{N53{%GU<rLr>h z<vj73l8+A08Lnba7r*K8j?_(`VlUEjJgI0w6W7Ns$;WbkpO5Ft^0AjqWVw8-H+eEy z`GMZbla;Y6AD+{jY@ED5Ijo4SK`cZ3Ig)<&tVioj1fb>_ii@;z<xOMgUn%{sNxxYw zwOFOKIMJ%Uw#<l1c5U$;X4h7apOK!v)-6d{-%qS8#V3pHlMnm$^e@=bB>9$BR^0sl zIfm1)MUil|U9vt--?9dl_njcBnZDUZE~|Rw`=>Ut*X&ixd~yph0;AR8*T~8AyYD7C z=d6e79-g`F?y-T&TV|)W`?bDb_SB5k?_`EkMBgNeXydbAtTx(WnTGL)#z!-$dmbDA z#*_D^9vy#je1FyB%~g#i>K^g1<b{*D(tLdV0r_(M`1-Hl^?0Vj)vZ62dZdl$hRV(^ z;zRynrj$MGM)r@rsYlypw<Ra@r^b_y^zUKo>ded;n5}VR<DSgz7RLiD|2-%F@tL2< z#uiQ7$E~?+?DB~bJUprqW$K80m&~Q?9+23Du{`lL74J`Lm#C3Ps?Uq@Ef8<~{X>f~ zb9_X^%G{G-Y)ImLUd+nw+)_z2%tGA6*?o$p7e-Qivag8<r}Uqh(f0sxL!&5pvA(bM zT{-hA$?crSUfqA{)GrU^leI=l>CHl^Z$WMWE!qF51>X)0=JPkx!M4{?pGp49KgBBb zZ9VY^+!me_i&IX%$_h3bzcuTz+$9Fh%9XRF%n?QcxB7#^)sNl8maF)u{YQ*H3uFH$ zqW!@rc!QbwR4_}w=VnjeZqi8ojDai7jOrWDj0xG7B3{HuJwAmIwJK<8Py|P#Pku?= zl#&HE?ND3%N?bLSeSJeNtC}em+I1w}D{ruROpHx8>z6m^+fUIR>kmcWuv%G}IkQas z&M4w<<FDBle=XC*9(7_%GILJ<*e|Y)bq?Kh%j_+Wv~45;;8Nlk-m&E?TmCEYGXLL> zs^%}Hw&y<BF<N`w%O;}i>?ddI$ZE8$r}l&SlG!`9?0MyN_5ytCl#eyfKJmR%N6>s& z+ud3B60=M*hpk$RL@cu<S!Lp#<rV+0kC`^(iS{P3%c`1ZG|!a=Gx|Bi-mLL{!5_wN zeCC#@p6!Eg6xR2X(faN;ElpI%Sl>!%(f;1Fzq!xEkL%M>c-BNYw5!43%C_arS!!BT z@)0sqnaBFSwxv?KhjNVU2=kwk4^rFZ1!jnmMSW&g;=2}l%l3WMSkJgK7msfrzxNlZ z*mdL2M@MAF8hXgJ$|fvta$d<~-8yFr-=Q(hdRYBtmiO=B+u+S#{B!KAEtP%W8K~46 zEZ<pe_V4mR)W6y5wDdg@)weAnmhKVRk$N~E>l<gk@}}YLX<idCGW*+B{?VQC#nA(& zjvD5Jvgso~V{iF9mfx%6zI|WW_l13ru$P<6G(Gi&ryhCgD^HELwN8Hf)bXnA`Q)1V zzC(3Q>}`#wOLrb7E}V{DKXRmQ|2_9Ueeas&lcP`XSX24*lNI})8NKJpXC7OVdUEuc zJ!@t^^NrWOed=UqvhlUX(LYG8`R81T`d%}mZ~rXxt*K{TwS6$U<{rGvQKdPO7(VOy zE#Jr|o7d&8i)34jWMX+Vy4*J<J<75BIb%9*H^=8kYe$cAl)GjBd3(<rKkwf23P<kL zY+)b9R($U-uGijCTgAZ5__tnLQRWhDPx4IU;p)dYs%eSs?E4e9#W7Q(S})aO<<V>~ z21V@6$NJal{AH-JZ-2BueUtYth?G|@ZGGcgQvJO|^o7lSD>ghH9i_20di$Trl}p~g zuJ8M3Zy37RY|lTc|J(Y%FWA%gKh&$*_BX5?eu88DC-z8k>_Dva*tcV4(Yzb|iF}Ot zeIrx#{=c8yMAYE(Ut=qLeSAj8Ppf7m8&A|NGTUbIr->QKY_k4uvsK!6xN%4ElpB98 z-NQ{fl9Y{jY%<zrB`@9ak)PE*zwfL2?%B8fFy|XjJ@eE(Pi=qdtNjg)qgq}0WYw5> zZA<lcC{=s8W_9SXoQW119YM*`43TLwx#nKAY20f@uwC-;hcXSBE5}F2pEv97jkXJ` z9yBX&y!I+q-V!lcF-dv7xq-j&kNm9k`An*<fz|cP#>r@P!O)SASy?&GN@{2RuV2;> zr#v?ESL3l$znH9=xpH_fe%x#PSpIn50qJG5IoY5!!nrud92^^7T+eLu?N2=<Pi3o| zuUH#7j;Lql5*>5;zR~zUazE-w&gwa8zpD;U#yjyDBM0dl1+DVOnpElj!ZAhcf0LwR zNRI#5lB4s`XuUI1GcQp|$8FP@OWR2zoNk}BjUzSUoW}N>x#YZv*rv;3U5`z^-V*D1 z{o2^>%=a=gqNC(>4MaArY^z+Csvm1hS<ml{;+ZO5DSb`8Rm9T5J0ARUS^J9COPAib z^oI6JmtNg=sSVea2B-BKuKYac+SRLu2tbxz-M@Z7zf0Mbwol%#xuduD?sUU#t2Q8m zU|tAGn=oXKa`C@ezkF6?<Fc!lxBl*mrPJA{@Kr>UA}zmRdHeFKTbJLwl&6EQZo4YI zzJIVgJ=C+RFMVNG@zBgm7#q@;rla>EF5Gb8hH3h};p6Sgmo2~c>h|Ryzac$M{U_S5 zUeUg^Wjeby46Pc(b2R$s()NyzEp5+!yv5qJ%$S@W>QC#PinRpI`b@V`vA%n#r@!l} z^qs^C>mN*Cct<*t2sK=|fj4`L{1T}(ZO_yuy`j6;{8p%ZlD2ONX(+|9M7cic6Tv2Z z49k?4asjg_MkUufed5ZD?ydRs+bD-N)dcY+!+y$(`c?T%?Lv7v7~^kC9@?ezps=hy z!m|7tmM<tOt9_d6(i1H;b3YgVd}33{7fSCb`(pV6_F`{nd+4Jx$-_S1sjtG=n`vhd zpPSx+O~f_zYbms;E0Bk4tT+y8*oL^YURT(riFK*ioez{m#)WnJr^NM)o*!^Sc)`SE zo#(=SCOT^xvI|RFYv!$6Xee_Xk<Sqm|1>ov{%P1x3$|TTQ|&_0PFaIn1H03K&TaUQ zn5w5uYfpibB<||GYihEmhkh+d?5t_MW?^ZrCVS(;SV_q)N;PfQ)U+>KSiP(!d+Wm3 zXKGqoYTA}9Ot#i!vrytmLs?eSo?TeoUXwMwg#Ha<*M@cuwbZZ#=6ycCDe;ApdrH4p z_JCH-Z$CyVw<7F|j2#1m-FJ3GyT34^Aa4t@AM0pY{)ua^UePjbj7hyw=w75;+oi9w zq2fr9A!UFcHRrv&;<$w&rLX(0j(0#CSX&&kGgQ()<ib+A*pp$c)DQFw^2HjCR{l8C z`;k*)U!L~L;WX93+lNK9g*R)9doR><oXM8~<xEZrC~xJ<fHsY{roOLPGy?lRqI*NI zs8)*crF)Na`da@YWKp$$lk!ZVQ9F9N20Pq4w8ak8>&@ZY%tgwBAx{%vHk#F`Z-^Et zumg8*C>PZhj{Dv^xNOJz4WI6ael5I6gVjIXtG@x$ZkA^Z{c7v&aoqHqt@#;u=c{Sv zA05%b+Uflk4*gD7ZM%*Rl}@kLCZ<Uk=waJi)G@?QqZfzLEv^rz*bRK?4J{ojmVTn` z<2QU_>GYkzyzP#)y<N-Cyh}2#??$65gs#;NAgBm;9@9n@7T*S={Xafl>b%1DWK74K zN(;!P2AMw}ILwE59c0Osbqw?ga-6JhGNl}u=hJ+0`ffm?Ha0csxXkHOTc=Ow523yX zC_5cMkNd!(KG`dKWS?|9ecQpIzO9s})2Db5p}r={PG6O+Q~4X@P~St8r_=YeZNrC> ziSOt1>C@Ra0S@(Tqdc9yzqf7pP-^1Y1aDsr*y(!{9O~2fr_=YkZNrCB6VEYteYIe# zFRo*^P~Q&9)98!qxzf;oI`(qo)$^E6-__ty-%iT1-zBSC&r40wH$>U#)3KJ*r+z|x zdnmiL2z0i_SA#?QMkqUdvuqvZ_!q&UzOPfBPT%Kj8$OhpHuJ~n)A6jc?<?R?pVq~6 z<K1Q3@S$YlH#&Xw2%NsZ0Eha%O*u_=$@%Y_2*UC1rtI`-PMyA&z@a{s(`1*NKE+iH z_3fkV^u5Q{QBIVB1AThVbvk`UZK&_rKwlbc?Mo~Ghx#s{ta_KMeTnxW2=(o!?Cet; zr|&v&sP7ueNwP~$A6Gx7=sQT+>6>TkG~Q2xLw(Y(_34t+cN>Dxz6r`s-$k}g`n~`T z_1#KY>&YdjZv;W8?<i&2rTt%nt&_e#0*CtUq<jI{C8zJp2m*aqY9HYA&9`;Z_ib>f zPy2)E{P$<J4IfHZF6IyIjeQIFRA16}n9oq(F3L}kU2^vQPXwWT&6GRI8t+1~)o0FJ z1AU2WsGDYcODH~3sBaf#XJ5wFQ7(BeIMmlhc^Z8to>QoAZ=i2cpzp&)`ZT}O>|aW* zv~BoMx^kR9&OZ6ljkgmV+Sf&SI{Q9l+wh@u<#YUT`mO*weV+w~`i3Zn>rXsV$=&?1 zSmi5U;7=!6^U*|h`u-Rk>f20t6WJxFPjepVyGnD=NtV8=$WC7#9O%=tf##Tl50jj} zZ&3>MZKbR%eeS!3@#~$qDf)UScadFk`u-P!K;H+`lzYk2r#V#}`bw+#4DCBWIY)NM z>L}HIGSs)3veVaW>!eTHUZAgZ9%a?L<n&#LAk;TWxsxpWv<;|E`mW<M)YnB>^W~D$ zw-iC3Z;8gxPL{qFTPJ<DfkS;`l=qWea{6vT5bE1Y`2bn^mf1S#`vN%7r+4^bFOXew z`bH20`aU#F+3CyLI_cXD4)iIWaBPI^lGFE}5Cr-@+(Oyulh0Hqeb4b3>U)~9xGsrD zD*X%nG0^<^h}LN*S>tUbt4{iU!e^*Y^QLv`lGFDO2ts`Wl%0Jy*gEu;DL!YQuVR$) zHnK}rN0~kYea+e?oW3?&Cw+>88R$#SWp}?1nM+RJJOqKhtCPIvuo;=gyTaB<Uo%+x z5@b@X`dnaO^vCJ@AjLr6^%}z_vh=mvI_bL!9N1SY|7k2PIeo5;mA9q<d&tsvBUwD@ z8{{+4clKh+Lu8knzV!$!R#j`BKTcl`?DTB{OP{_2NN2+_@AyZ>h(~?d4g})abj~<c zEw03;?W^qJ0#@zEdU(HOH$dZX`*@AxE0hC$=bfa?-1+3{&PGz=rLh!#Df@b%>~)B5 z=S;N=j`6jnb<jz6`{!D))?c9S@?DsIEi#u}zpm^)z5KTnAGX3Oo`=!acaa3+^nLpt zTYm-h;rFkMPue>3LAk1^jDHJ>`tbW!?d1obD9`i-0Oh)(@~omVb5Ka|>kB2*KAcDC zb7L_y%IPBh1x4j~Mdgc%$_+*3`9<XgMdgJ><xEl8uKh@gecGmcqO9W&pC~u^0)VpC zmrs<#?OXNw{=M81x|mOueWJdZLe>g$)T`_h_1E|UfO1PwS>I3k{!-dcdzF2HFWq-o z!3)&8zKn=^eSi2wxz!f{l(ql9*UGliUS*%CZ}SBJ<rPKc_M)=(XFkEt`2v9Q%|&JH zH+-UAW7R%IDZ%1R^7*VOMP+Rd2ZOS<hhssR?IDgDlhmH=LGLyCGNQO!BQ+G*9^%d? z<&@#ZJ1t*jwuiW`3n_`u_MkW&CZ#E}J;ZkgWwwX-Q$aaR`3FJy0?Pkr%Sqa^J;eXn zmR)>Uw@*;~&<2J*+tyz|ne8EQY0#eSA>r1{6VxxH{JXYZ_A=JQ+Mv9M^6%TS#>e)c z_j^ndpY0)`<7OrG&-Re`%cvOJM49a&@wc{YcQ%O$TULBnwvWWAsr4mpf7nd@HLL=B z79}Q!RN}XBTgC>Hn&30Gl51^wgfi>7#IGsK*Y}}P3-!!p$sa^Tw=*nxpr|}%%iG|$ z!T--uIjMNCD=7b25r2PC`G-a2<5SC}Gi-SY`flVaz|EiampP6WWr%vlQkp4hkB_5d z#>eGtLcQuDcXY9M%6&C^@p|gbG%K8XDc=gGUca}((=NVS`IIZ}PU|$+$z>eXr`@tE zlKXp0Me->(l#1$fN3KYu8w*9E;NF|938P#3pUpFM+$nemfjtX%b$p~vdk@IpM3c4x zt#Es>NPgPrf;Mg_Q*Vq(LDAhXr;|^23oH=%`(BbwbF)k0DR;OeD88-b^o6&&9B<9k z8(0z--L;bF%(tpkTev?pC1_`$Yq~pBcMYskOEU?l-Cmj+YSorp;9RZ9si9J*+#piF z1Ks>wqNXFdOTEEQb-?s8-B${uxJL0~)yveILQ;&--0&grYsZ~DyVE}ywj}<mhGiYC zdv<s6n~}yx=J6rZB`RcDK^j?y*xoZ5>fPX=?XoE9s|ZG<oeAHYCKhTM%x=YFzJJWS z_c{jVyS766D(!ao9yNFtSo>qWpD#}0w}jE}b?W=h=?`(pNe7&Ff_2>Bbn+eVG4{{a z7}@n|ydLvCA9Cu&;k#ZOkNNKQoKQdhQfPK_t!fciZPh2=g$B2Sn*%xDX`aLPgJ~=N zLxKDW%Fh1K4<SC2uS#u<OC1}*IsbipYEH4)#Jf~qP7nT2o%szdpzJQwnox2+5huhK za2fYPWFzE@z#8umneQ!whryo(+gMbFr?E)SNFh#yIj45=P1HGzohBwGx@C{Y%!kL= z@H_IkjvbbPHO4kF#|I{cW;^%>uxyYX)j9oOGhX=zo{!I%3pgRh9ur#=Kgn+fYr8=I zJoUShyaFtrbdql-yS}J1ef36lzOSx;6Jq+hNdB~a8LYmpLGH%LcrQ|4c8tC+H?DnA zo$o6gONi;i#JFV5>NwWKuWSO(vzYbkw|&hWbv|Y#bv_1AGj(pfA!aO!!)VUAm@ALz z%j3mCTd>zDJDkoCqjSFe^Hnl);c?31g~&MuH*#Ud;_(8DzmA-``SRzpWX3;VcIL_J zEPf8W7p(Q8xfr)t`@(OMoo%!?^LrRsKG=3>@5iz~;D?xf@&b(o->46R8AmK_@g6Y! zEs$+$*J|+r@Wz1ixd877@RtLOzl?s3o%LaKO3!z|8l(COZ3FwchUdrf0z5bN5Hl7N z_iC7W#<Ec3Vtdv79wWzIoy!<`9hkW`cmUiIV76Z`zro^_a8?AE?aOn9EM`6xYjUB+ zBK@+%*$H;>F6B2DrzSQMa6-&jOw6oi>X{o8SL-71Jd0T`ninq@&-Dd%aoo(gypuCV z&q;Dx7Hs1_rqx{Jn(Iwu`ZDqn@B)kFEBt0Squ{HoJPU5N^3CAS1epDBMm~{$SSJRz zgVl$#4eaL^z1~0Q^0B(M2K*4G*nBh=e6Q`!;4U!sdz=Yy6If%EolC4-ZF5#G-D|A8 z58P|<2$;DxIyLrtz#5n4;=TY&uNxQGj|IJcEZYK3h#R<+qp>iz^0UDYftxMv0cQie z0z4Dh7@0LGoDlyu%fa6o%jL4Oo;+gZ^3QfKen_^0cUsP^;9X$p6y6PH-6h+=&jg%j z!D`!%JRivSgRx)nPhvj^IDZpxehfx`3FC+zwtU(4a)4irI0=pSWI-NJ7Uc0+0cPG! zzt|j~7s*T3ffocApPGKZjl4PFGk!0>Il#=lku!(!&ssbRCL8&SVCK~H`(-fmD0$iU z!15=!v=h9`;tzxOSpIjwdo9LSx?W@SNInjhZ&{CV`B`(PabdS~YTqBH55rjrmY*Hx z$6)-Q5a*{6R;-x#QLx%d&k4&ZjSh#LJW*5NC|-=wa}k^i0(r*Dn~}?(>PvV@z-fta z`AOv01#;Gk?+d#<?h0@(SYz*`?Eu)0E3q-)+!J8t#_(I=Yc3pr2N>Iv=uYgioF1_J zEdBJ8ke?m@IGC}NTt!X<SU!<FO`Z!@TkI-n0OQXx>?~OjVa10nv1?3mGE1x<<nt2j zGvoaS@Qq;UTtlYL=o|vy7I3iD*fxP2Th%r$J@7oXK8Z6YC7-i$;d`RChJT;MUqvpT z$o^rld?FhTl6PCVY~BmD>!jpqD<47r=Yjk?R*qdIT8EB*D8Sfl?A**YP#)p(ZQyFK zwV~AclYUFn5vO84m^pAdOPeDc|0;6%lljuVrL;AYmzRR&Pi)ZK>35ODF<3rPUz?EM zWBK%7icQ`IH}+BFUqddRusxMN74a+D!P>s0M|K{xa{OGD0Ml0)oU$q~ZS{MN`mH3_ zZ&`gHZv$gzId+xZY~|QrW^FFRwz95>Bm2vG1N<4V9akCi;l^9GHNe{gyg%Uo1Nb8B zXWV5+z#0qdtLznvSr27zT8zGOJFZgJa(NQD^=)~r<!nP<7s*TS18W``d-+201p#I* z)wV)<s53UO2FocM8^*xbSk8;!ELeJuk>ww?#l~`MHEnl+vDMjM{@IA5?W>$QR@(~f zEq6Zo8!&ws{zmW<5ns<Jl<$f7<p;p~BYF8#VA@>HF?o`8QT{`V;g(N;t>4OjYB9Ey z9|dEl(Rl*Q9F^aQ9kEC*+bWo2aS}OjgXN5Z7esRTxnfa-OX$CXxffqPtFZntxHXWk z0IM&!74+f8SmD;s50EovaVqwaoqxUtrf<VXR<Ri@ze)a3gp<p_%#)XY-QsT|f7)Vv zUoj4rezvWOLttz+_B&s(PAZN>a;=jJ`ARmUKUofzpZAih!Pd9Q`2~J*afIc=<c9;f z^@)*Rhg>!=x8^v;9(M`PpT{JSbnLR&;dYKc9cDgU?BnE0bU1k@hmH<+*>fw_q_!D% zKCADKiyUWw!!3u03NdQ6pLNHy+IP6)z~o5bI8ghhF4vZMapwryR&`Dn&(iN!PU#&7 zpLRRE!*bA_9Ag`H@?BQGANg*J8^C)kPJ{PaJPO_y^T(?pMjFLIgBvT2aAFXgjBxw~ zaJA(e1lL;pZE&6C{5d#f<<c`Zz-f!ekz>1wxh9OQ9@CeJ6|1pTfmt)ESHC81>;f?B z&fpBV-r~jJw8c$ewQ<MfVEHz|m~>v_{HFU<?zakb?EPu=sYH7>k2+uQdP0m1CeCaZ z^(iphl)2u6P9yK3%(^wW7kq=|<iIPfd;r`DW<8s>xAEz0M(<i@54!w$F}l_{Iqkij zLqXdRBR28fN&&SN*MZ3{2Au4lHr^<HGi~K_vgb3#ia0W*#bE9Hlv*r53nqJhYY;!Q z-E!myvghCvA2YPeau|1v>^Y3x$7vn1oMAX*&)LXQakg!;oKZMr&)GaReyADa4mf1b z8RJrq)3e*^*#n2{IeUY+qWgllqR(1>9zNOgpJNJ~&i!ELw*!{{0(`RPALRKN$3Fyi z{1+{M0zTRE53^}F{t>X_AGiET_+-yN$?qduzCO;e{CIW5kJqw4B0GM(j%DNcDX`<u zv-}45WY1qvh>NOYRu>mFzQppI;gdbTg<IiHe-`ZYw_AP=KH2kE7UHPJI}34C<6V~D z1E1{qy=<yZ{{YzOAF}*m_+-!D$hCUM9|1f5Cd(g%Pxk!H?2a6NE7<Y3S^f_AWX~Tf z#A%K13gWcxw){Qt$)3NL-Ko>R5A5{sxBLU}$)5j05ZCo!5Z86W@(;r&d;SqFr#Ssb z!A}3A<)4I4cKk#v7JIMdYv1}_%TFXDexjOvF4^;I*+n~k9oX^HmOl?Z+4CE?ci{L7 zz>eQ!`AguFJ-?Yte~#Y*cKnr=-wB`W`CVMAcl;i(<J<L+7=};w{Ed8VIsORP@i$xj z%(>1<J)e2M$nkf89e<DI?}bnH{C#|FIsVgN$In~-bMVQYzn^Q`j(-5`_%B-i1bnjR zALbaz@sEHVf70?#!Y4a^NsQgT<(HI#Ex%-5#4l;!_>b)Q3%KOx_!+R{w^)7_KH2kI zxt{6xZD7amwEQmkWY6#6SkCc#!H%yv0+%p9%AP;MH9E)N1a|x}%ijf`?D@OxaYzjL z9<b$?CL_MiWtAPjw3g!ytG|@>?BcqXrY(OSe6r^^@Llit3&2KyaI@9KQ+>NQs_*~6 z2d*$-RMYPyjw*-UY_$58CN*$n{Jp8ivdMw!D7Kx6aYwAwnN9ilaB5c5t<_P~yIX&4 z__4R*(qaK|Qw=lqxYbFEOjYBF!Pj$@`FPz9Vv3$j5pzk}#3Y7E-o!tN|KzXp`C&zs zi47mgDUM=tpgdQeC*EGKiFB0O-dow1B#K(RcXnS&(bW1b>0MxA(!@V<l(;4N`+uds z4^~%?=`*rdf9Yc)n^f%5fr?y(H1_?9&sg7rD6&&N-k1DRvTrV}CNiK}wVx=oKNwdp zQG`(0o2{tX-dD+ZVuM5loH;gV;t<`EGP1b(o;hahGNX+296X<hdfV$BnYnFotLk3= zRejCtuMr*gU+UwpAFodwx*+1A|IKVg>Oo@B;fYLX<M9C^0OjLHhyr)4`rL%tnmAMP zO)T|L>d{OY9(t|uyDCTi*izm2FPhENqm92Rt5%Du59G_r$1)|t<r>|aFIS$M$RvMS zS((hme{#IuN^7@eTJy>3$D;X(EQ<afye#$LtTDy)AyAgQ7<*|(tTeGbo5+^rld1Pl zaCVm}w|;G?Kh&A5{lMYmd9j}+&#OIB9xtmuR6Ulhsxq;g8h?&;rAOoO>P+%yJ*Q3` zS|nXHW2g5T^_{kcxY#Nbi(`(k4f@1(q;mtG*v6)m+5V=K^`({aY);0CVv~e*#EqzR zK_1kEZQQ5oAg)N*MlmJsiGR_@l$h&Vu>BDWVoD$g>e4~|j+UDAAH+YG_<YHx(l3<V zQ~t$@2h5^kU+U9F0xFyy)S<7YVMWaXLN+X`(SZM*Vk}Jacu4S4wRU8BdZcgF`qQEj zoc7R5Q9D!bA0l#3#!N?w>ih#o;Y-!d0Q1nyTeLL~>r7XFN8fK^!nE(bI|pp&Sha!2 zaR%4+@q+x|;HuL?NqAyx;cXi>EDXK{7}CGP8`yJL75eTmUkH3g-v|JkRHt-4Sy*5G zN@wD|k2)>Rx8q#~r?_8jvo4idAeqC!nxp&~Ca1}gD{DLd1Ub~#Nm<*xOHK#p+o8U9 zby0Tu<O8Sgc5tX~l=3{XOHSV!1P%k=^&)>d$!W6u;Pib79O~OkS^FH99KHuZps#ib zWsNUQ=DLU1w+|fZQ@M-mlGE`g2pk61X8DsRr^(W*I(;4_2l{kQ7i%WF<aGQs0*8TT zYmA%7X>twO={pJz^|e!0KQ1{P{~rQ}foE^#kH(xPa~$RL>D+UQzD~+bWS6XtxQ?Ad zefueIBB#k*oALTC2Z#3Upxi)q$?02&Aka6nm9n!>K2jaF#WlWAU!Jmby5#hI96_jW zlxFf_nmo(aN#E~-1AU1c<&9*QoW5ZMfxdILQa(mblT&2XNuS>9S3h>UOdPaze3<0) zJwZwRE{ep4r+IKmJnHrPjfQ9CiNh2ZI})ExpPpy7ShaN{EPLroljo9EC;R?8pX%49 zQrWJ0mt5W12;9B}SW2HdxAn>K^y#)K;EXnkWV0VTmrwO8JBr@ZIcpdCmLqq`>2qcG z>E*wr_jH_I4Nm(ZpD1hIe4?!VfKQb1Um;P}cIXpjjngN}+75i8T;~e_%36m$QPy1e zM44-=v3FTPDUMLtC+hW`;uGa?9;N?1R65QAjL}@!^%iTOtnq)uDws!E<8Qa+1Z9oC z&z8F=Yy4ldWjEMIY`K|w`9tekshYC<@!w2|Kh`<_-In#7KmTL@)0SnA{PQoi?D(f_ zc?b3QEB@}O^>JOVRoX~B{)=B36>WdP*SdY4-W}VhW}4$EcMM|=qEtBT$jJ*&J67>E z#m7kYA!QCnR`VFJ>%tr+6}K_RM#T>`8yluMI4W)&9TD|!==e;8Tu&Oz=?6pwtGeze zSY^2G!Q~Bo0~|pOt+763J1^65M+2F)VxA|~9I{TzbPatTnQ1n1Vdl$Vt(yx1{za5E zZ`yC5t5#g41!N}=F}!m1D<1up>sr6<w_N?ATm2fjF#Q^=e%U5GR(q!(?EBStoIJ$z zTcLi_WcoGFMr#{mof@q5&Nfyd8?^1F$xaX0>o4lpbI@<F_HpR1)VQRRu^FuG54|3< z{a4DKmE^RQ%TJ8CQZ}q0W540If)`o51bmgn%fQWG?*GL)$t_kc8*e5%`{~2m53gSJ zN?l~f32`aQK(;lJ8AFxEBA+lXRkBTXGA~9hj329HgKSG%x#si=veS<)Zv#AULvz3h zG5(w(o%qsZr-$;po&D88+Yn=awd~K3kyp!p{Hie+tTmgqSaXD*tJT+HGUFj!ebnbd zK3%`)^7g~?HpoYg6Jq*3OFCt%`gR=3X=gwEdU=Skzee_tlF?Hm`#(#@=LRzmvcE?9 zH<KBUk>3W!euFoGv9m^F`7jxu8+i}78LYNj$=6xA=883E<lDeGE58AJYass|SUS_> zdo1n+%T_l=u=f@A`SH@<1#ay0;eEIxXdB`rUzr;FN;2EeyW|tu&-jfTyELapE*sdU z3?2Z_1-rGH25UVsK0R-4+6uQ={t!3|mQRMsZI<&Ma2Hs5ZX~ZEyD?&iA0vIw)VNB? z^ldOu&pR5-IHcFz7dOYGPR~Z_90r>EM$*F=4Xy)|-MuA^ciQ`lY0H-#WY2G4pBYD{ zv;bTYL2VmG|6<By&u?NM==iJ|e?PL>@>}4OJs-dM-#^4}MrS)5vghR3FFBpeWu>zL zzZpJ0lixgli0O8G{N{i2aMbcQ!zX+G*5F>|Hn7vb%kp=_Cwu-LHY=xpFWB*)wfsDM zvgbb++~eF2cKjDDe*!+)^AEFKIQ>V!mM@XU8!wHr<HwV%G0TrvgAKp&vdrbtwdv^Z z+g;0Uy7IE$;97R&K8z_`%U&3}<ly<)^4=Zh+G%C)p8FrmC4c^UeO2!;alr4>{ef(0 z%_Ced9j<9oxp(xH%5zH_e|4-fRyo+DRu8{_uwk%zu)b%;Eh)p|tz>s?_SRqD`s>W> zZ1TZx+<KCJV_czrHbU%Nkm!oHE1T=Y<-J*5yUizSb_{&7)?5?T_2=GRU5Cvidzakb zBh<TDe|6nhS__G>RG8@AkM#Xs-{!_QzH+;GT(=(nN>8S0GFe&PclWEwb4w?avE+m2 zJ~;2etF~-ze7$aL%iV`Ac#%DXOV~1LG(B9mt?!bVk2Jo~x5Vpe_)3q_bn#c#PU3}! zFMPPJZ~k$o_42;dmL-iRYOnakYdhmx=JV?h)m!#s>EuuTIzJicZ=G2EvA=!!oZ8z` z+hyZqNqP2<@10mza^%&jM0PS6ubep-blqf0={5J)|HaBbzV@fp@#_1l(bO7gk&Wp~ zv*q>MsvpU4MLCLAo|%!ED}Bnwm$69RT)FO}=3W559n&|vImO+IvcBB?*}esRAMDHC zl8WM{-~Zox$L0TZW){|QZ()MjZ2Y<GceaP0*f4?(6@ANfZND$4dkj&3ec9&9fvUPI z^Q8l+<~heJ<CU{g`SN2k>fUR|c-_QW#y`9Ewqup0**{)BYxb*EG480CHCLIf>N7Lf zm)(*xy^o+NmYJJRN*llKQJPPtXCG_$vwWUyXlgomSvJOR96en3P-m;6#AnK@w^ctl z{K?^LRZ~8e+FmoJ6(#>9#||y})IWDr4PRV-Wk<3u`;vZrDE6sWkz83CNOI->_^YbY zpZ}`9tns+oarJ)N)PC{9N!=}}duZmi+J`SQt5d(WC3as`-<;~ImuJLgY^mBZ=ao-g z^AU})@x&`1yr$Vp@bZ><TQ1*n4ZoC?%T^B?e-0+=nvDOe^T}8F9gM-7%pDXf<rfCx zgDLr9%T13}s3-lp9INbPBmAj8Q3)F-%z80fRqsc2N1~bgLo-bux+kI%GgziOM!_2S zT~-Neq;G*+C8n+MAanEABNNm1HNvX+u=$mq`TDg9jd^1-#SEN${?xI|jC^u1*;uJ^ z;~TTC(kSabn2)9FXI+(#&8mN``rOj5tUFm9tJXGr65kn5&QI6#yA$)x_B6tp9FZQ^ zJLBujmZu)M{JPAHYBNTDTjI$5WtlnFH=T~@Ka1~)%=I-KdrWhmfqk@33D8@WRTtJ5 zmy6r0KIOIZUHcaIK(f==7TVrP%;=(k(Z#xJ75Ms|k_Y%oijL`A*PBed>2z`PDeZ}! zO}y<|A8&h}Ys}}+wD(pbLOS5>K12NSa2&lRMtCZ`eKh6z3$d}MjY*!F5|jMjAy#&8 ze?M0h2K!fcZ`i=qg}yG`qS&zZ(|xOYr$(?fM1PSXVss3353XO^w`yqW9iC~agWb`~ z##3(580K3j@l{g;Ynx_wty;@#^!<a}{8`o2v7vwU?We2OZIwGV@P>8Qs-ab<S9f)D z5u|_W&6w$oKfR@Q#I&7r%|ks8tzF;UvA(~rf137pOpWqwd)=_Qr@QNp-f7&qdR5=* z?p~v^|Bj()6n1}lE$@2|o|z$Q22XDoT*#SrEZxR58w<F*ch$nK?%VG8bjO-Ob6<}i z_gGJG^k8dvd-%W8y{DCdxn>7Kc>&pB;H=&J;rQIkRi}NNu21Ngx16jbj`oEvIjmSH zfxhz=Q&xNRqqa`p7r>#uhbTK8K#xbjp}uCyPM^L*oWB1D9O~n|V#<Ep>G+y$!-vv& zt^8R+mVH%Zr|)~<P~R@f>enTw?=KNJ3_Nd?KTe<cPTx<#p}xJ8ryK7-+BSSBo%bAn zq-OzH*FLPixNHse>HI)Em#j_kG6WW@>bw{D<Ls-ob+n6L3=Z`@OSy&YlG8U2L7*?C zKKGDipU&A;Cw<rO8R!$#IlE6z--nQd`ktoTNtV7kveUO39O{#<PO?i*->nD&eY2&b zlPrB)kMa7x2oCjW3@v1roW9Q?2=xt7cK*}%zUnmIKjJggca-ubvP(|iml1^em^YnI z8vD2&;`NP#1AU1B%G<~;Ieq^HL7=Z*?M{+4-nq6;_8kNV`byMBV{ysp`)dS&zBx}* z&Xc9@J!I8M-*G-eeZ!P@lU;K9et{s+H<v#Bc+<8HeF@D?pil2hnHZUTm}GS%bZ;!s z_wJ3950Pcx1-4H56tgMRH%fV$@g^E<8$OiY)6Sm*Wa*nnR$tOrbnm@XKF*L`a`x%^ zTVUUN)0BJ3(svQr>01kyeKwU*A3x$sd^&wy1+3clZszV)79f4j_G;|AlX9T1qK>kB z=#r}|y0=)t7!v={k@$2xeFpod+6nsYjKyN|tFH0MzFKl6xrA&}T{F#Axe}jFUm!Bj z%l|LEx9I(W^TK(OGqs)hL^<sX0LohDK2e_M3joSmXFgHZI`N6}d<t40N-NoEYc3a& z^||=$*r`|fY$7Y^USv6+Ia7+tN$_2^tb2|6F4F!~NoCffe=b1n^}Y3<RY`L9CiT6k z)IvS~V}EN({L!K!{m<ybm$khqWg%mGTy0E>`0?{?v6Bk+CGo3lS^86yueW8ZKi+T4 zo2X~M8^61#Ui*C|#Vlif;txl~STAM#AOBCb?DT!tmK9@+`HR13%eyJ3DgX0SzTdRO zXZ{lIUa{4e&>SgcsAoPC?~jVkABk(Hl%wO;yVkB*+uir+wSC>X;c5<L&vde5YAwef z-k)}!6X__f_a`?|wLfjK>U_D&3Z^-CiCRuQVTok!EG4`T+cLQJ&hEjbeRr-M?C;YN zct^*w!S3#MbBsT&jqWBY2l+&Ma?bDrDIEKscJgw1UmxurQcwIk-FgMp>h{_=tD*UZ z-tKO0;TE6MM1trv<aC`Y><Nq+!nN3V+bYiJqBcb*KTdPe8ISc(IJ{|3ZY*zo_xkny zcXrz@qQF&m^>$!CHAE(hoo*xJzM=cB$jQ-SW6_#>(ApQU4>0$a^?k|qQ^qni&o86{ z4(r<7n_fsA>)CTY4Aysu_ET+EF3yc)cW;G0{5{8&fjq?8h{V@-NfA!I51IB;%1$TP z>(oBV$wQ3T+~-w0?e`q#owN;Ypy>=}!*8mG{jj+o+JqAJt>zx6c5~Qi?sc+1(mv4K z16=~f|AwReEc+fKZw5C69Q^C~S5W81MIYWL=<@gbX#YFRpGhtJb^H)B-m^5uW-{|{ z?w_ij{qI?tU)jc7`?k$NU+^xRN1alZ?DU7Yl&=oy*Lp*zx!1W8%y`YcQLR1Ixwc?G z7I<ENXTS+D{xbIvo2f6dv%%ShonC*4nbTU?Hb6#Ct-I%lA8Ic|HbllwgNMP)i@_Vg ztovH|NA|N_cs}#u<xLh}1E)EVv%MJp2=be)d>y#cVy%-kU~P~1%-HArgRR~_*!Mm+ zM(lI%59?m%Y$qQH*25-rIXxl94`<5{lCeI|*0{RJ^zSitoGqV>k}t4w+02?W9QkAg zST^^OnMb2@GnjcaZMTAZEq@TqSk87n$9|(nZ9ik>tbN7bF`NuIv>ELEfKA>H^yl7@ z*7c1`=h04S8`+IL#0iF}vG<T!12f&&=UUA8^xbacnhWNAru@J-wBC%Ib)kKr$G2Jz z<BQz}))>=d=G0(xnEsqS^zFxj-b<X#wD;RGbM5U9aV_^ZWsk;$edoyj`^YIP-vMR} z=V)G9$jufn0^b1E*vH82V6}aK%$hWO;ZCsZSD(zc;d~a1ZH6O!r<F5Stv$mL{v24g z?ILdlOON;uk=@v_JLATSt$rS{$@^qi;FH}!+Yqyc>ok^?<SMZG?IbhqI*qH1%(h%7 zKM1G6vS&V-b>=w>EWQHy;y}I(ES+6s{ATzUfYD{-T0i*Bj|)4z{hh(MXz%BgHh!+P zo}5oYT*`Z=8kb~@>s*bclUy5M#&oX6B^wx{;Rs{jxf&y5(m0KrG3lJw@aKUUr;%%1 zODxtnR)96$0rEPq^fZw}+rWN|@D@p*lGchFONbfEER99H8nE;?kg?fd*(sm8w(z`u zcrGS_#`AvH7i01K5F<XXf<N>rUm08nCZDHc4JEdbX`kyrkKr$dL-u^e@1N^vwwx9? zWY5V4&vLX`PCFd3=j1q~aW=3{lCo2&)AGB(WY1?V{j(hS+&{}PVEIGv$(}#VQgQl6 zEN2rOvgeEj&u?rFp5NGN`P<-=J%0yZ4Nm76*x9_-^7p|fd;ZfLKREt4*zpfo{tNKQ zo_~-f;rNHZj(^nhkHIH<{_(=|8+s=^dVYh$$YjKiSA)rpAFpK@SpD%ju+<-5VEGyN zWY1sB_m1N?fgPXu)!K-+M%nY**wr|GJJ|6DEPn_-+4G0lA3FX<u;XvD{2lPgo{!J{ zyX(8aj{mgfkHaT>{<CbePJbTk_y;Wi1^8soKgc%d_=muT-_6f!4{b27b(#la-tKvr z%Pw;-cfON%JKt5uoEDykNyW~MwY?g*Mo<-ty*3$pQO~(dPR1tndF!uVdn5LO-s`(l zZyd(&Oi9}KCEbbU9yIr)Q;+J7b7oy;#w!O-bp`lVgJ<wt^%GOkE0eKja}9Yt(K4di zjJe;fk}=`5Kk6s-C>Cu~-<cV&Umx2>>EOT)l_yWep1UQLt;$>yJ=Kw^su`;@?-3Sj zJa}3958JBmJU4f4$BsKIW^K(?bj+?@n@Jw4OvNVX`<3TTovOU|)$g2ov-<rLUtq;P z^r64KoTqc5Cnc&YX!jUxQZsuF^X$ab7FAd1u735o?;8E7o~wvwZayxpZ1Z^K&CI&2 z8Dl>7u2G{cUOAeX{i?LUXinBVUcK|!$=HkX6Hijao2yQI|J2FjR+2AkzFW^iH1|YL zsN|E)J+&Xmmp0%1%8YYMU*&m$=E_X+RoIQcs(q|>r?j9W$+G~~_npf+e>Yd&F<T?A zU7L>`jYj(2Q*YM1KVOz9DSxQ^!F)28$j8qby}atUc`~G?yyjfmq%`W8J&_Lz?W#VY z@#ad@;zK_+E#jG+@gyVCczGV-O>0SI&Ccq_WnbnTBS}VYh+=h>q|t2UlSMwEjeL@s z8MUFWm@Mqn(>nO9)Of5kdSmqW4=w6kmMceIq%)JyN`32e@Ujzs72BG6u<p^^?Gs;$ z#onA`$2X&-QBQKP&bAIzZrBNq*O<OC*C)*L7B5Z4*%l`LAQn6E-Ba6M(t6|xqI|68 z@t4es%$L3Nol{+zb=8kY>oOmEqbc?u>JPnfWo)SaN8q~*{*1xDZ}7;QC;0yTQD#om zLuMW8!t|xB>!kyy%og?1iP*D^f110lBY9I*N9D|HKAyWzYq92WXBQSP&&`%)ShWuu zseSvtGndr=Nc~$aZ^ZV|3)_8EHls4@^R@+=5A5;VwL|o#?K&RR&2e>^89%u`cKoH+ zW6$1H*-@2St|yRQvs;lJ?e9gO(ceq|>d+$jzwYs&E7`(d9Gb6QC7pZ&9oWUp9LeQ0 zwp^2D?WOO^+i$*sC&n7TB=##a&a0j1i9PX?LlZM1typ8mpmAm{u`>L5x;HaylRwGE zOCwJ7SG}8-AC&f7h5FWe*d23b?Ud%|*_#swPHj^?-eCVE&eh*|H5pG%WMfP8T+mOJ z$971QINHnLldXeU?GI_OmlYIeh7Z(kYpZ(cSnP#C)|6Uhl5MHMRCE2Ys*;AbT+TdU z)LfQHRBg{ElaFRfGIfow9%a3iW;%9cDt~q)mNa`8dav15&B~~LSpDT=!%exAw%qkO z^>lPHHe$9W^Q_g;{ijYG{obiPN1s1+ur1p*zwOHAPx3DOd3tv0mC3mFzVY6#@!T8F zV)b3$+-fw&`$nU!pnu)ZzZr|8^9^*)(CYi;k68<LZ?gVVT1zLscWPVnlBivO&(+_U z*^`g;H(mX_`OIGZBlDTN`e*uN-@|in(Y`_cs(XClUbReZm+t<@=|girM<v$Qp=gex z)%p30*qfE8re>S`+nj2g#D5LV^|e<SpHIe_H?_BG01hom^Rb$TGUfSX>7&WVG9`_# zz5JJ_x~lQ$KjY6#r93J|75=O$@@KRB8GHGAr%p6~vTa>Hxo!_$icR%h-_6>K$Y1$* z|EGTbtym%-<1hQrU;cd_e7l*Gm!mm}<MCGM{HNKm(Vu?<&&G0P9hLcHX5A~_KXs(a z>=*KUJJmk+%KkSGG`>DiCGCy-bIbGbNGsp7$9{PzpLqS7@wnB(2y<0ze{5OI?DfsP z(OfvK(cVUWLsFkln)x!@JM+Y-`qy1O{xA4Ko{Q$qATx6YnYk0<TXQnDM<dOwd+Gb9 zy2>MawZ@O+h#g_1w>qiYcbOU6S#I}av7OD@%a|>8Vhcw|I}>A>Kas^MWzLJX#l+Z8 zJ{mJy+{EqgtIbrao?h(Hf!iBr{wbR2OjY9XH&3#Ehm}bt9?MqMK7RQDm9GAVw9@iW zv@)VK6>Zb1$z76<O?>8_T^YMCF*baPZ-H8(QLv6ORn9WEMavJFIe1au4^zGi3f~>l z5?Pko&OYr8wz3)d_}#geQn7RL@s#xhR<R$?$7-)&FJbq)@=W#PKUo&rr+y<Hk+zK4 zKM6<eWXCbP7UW^esw(*M{go&7pBhN*to>19?8Nh@4ohP`nKdIq#}Tz)AC-E2JeK&$ zWL3-S-%@?e<8R$Z?Ej+l$+oMnO1EFXye+-D|BgQ0%;{dW;f}%X4e1R-{R0EtUHIba z4LpIimM7u5(nI~}RcU^5C4J2&K5>=)EN}VHg_%XeSDopPTp6^#Ywb`^`b=D-1irCp z@ui<!b$2?us;_H9&#K$I(`#0(?Ztpg(*uLumm(UZ!0)=G*TcH4JH57Vb^jo@s)lHP zZTpJWOPAib^oI6J^~*gUzu|_Z*S0Thp>50B4LqsW2Q6(*SP%_%>rRPOZIG=WTf4ev zRd;XtW6Q5KUE+##SN9Mtj4NViaMh|oTaSw3=T)nv*Cwv5=(>VWJ;Ae)p*$PN=XrK4 zk>a_{YihEmhsA)?Ti_*$zcH_+=IQw9#6(ZcczjvSv*bMaIr9Gabu|a#Eelhfw779$ ztaBPh7RIuLsq0`YTd0oymCtJq>M^^a?qMGDi=JB~Bt-b&o_@Jy!yN+yy=zym;?CcO z)vE@(qMum_!dMiM)~_18y`yXGhE-apZ>5YC&CkM2S>|s+H!FnT7Fzs$Yo<KtSY&`< zT1_^h#Tgj?4&g3hX=Wo%=DMayi}_n?u|7&I);(v3fpfO;M{AR7!KS_HRKCcTOZZf3 zi9Y;a^`*3ctaFsN<LUZnXrJ_HJ8&ss!DW1g_U)qFPL_RTWM|)}z@feY$~|P4oQ@k2 zI1HR~oIg*KrBBx^oW9S4Lw#J+nC{s%b3HoHH+K)bO=RiQb1_ceQ{X^fJk7UU3Ykkz z$Dbl_82E1dX<R9NGi;sa<3)0yucQgLHz0G#>G(SY4g=HZtKI~VzO!td^l=nn^jW{p z=%hTC?2^;*D+CS$7wqGYn~!(dI`qYLomuuRB9mrpq}Uc=^H(~kk6#*nx|-?(pd+rt zr|m1Qu?78JDlD5d4qdxeS^Zwcr~0+&EX{2=4p&$74AfaK(Ck{*iciPWr(27_nFr~r z7NG0d`c%LA)LgqY51e(Fs(k>LoIY1}pI-hBo`DMVo6gj?PgH7q@QJd$W*3Pl%f>28 z$TBFEeWG6L%k0LrHmO(HC+f9ce4?!R_KC85>Jw$ni%*p6D16Kc=2IzqKW)oBlx6QG zTXs9EKP)Q$Nm2Q`Mdg1iD*t+F**pttM4B|F`Q7G&Kel{HQTf`Uvi373S-v?wkieE7 zjB0)Pt3_pwHI<Tzw}3xQOkpFj?f=0P_+!gIpIT1%^%B)5itJA`7x9biP4pMl|3OiC zM^U-R---WLRImMuN!Fg96_vR*5v8cUBw19}e!?VMe`!&9Sy8#8sQe#`%A-Z)BLA0I z|2zLGes`2?|3&^T_1jcbU;4hOeDnM2Mr7+(7S(^IsJwkj*<K)DZGM|BJi?jopk%tE zhu}!0s5&@EDyo@!WK>kCUnt};Cth$VJT;_egNS9(->Zln?l%bg2ZxsSt-6iF?`i99 zT-Cew^cqFP*l@>cy?bMZtX~-{GJqen)BzsPRrzO=6t%;!_=P{rGY4NC60GfZ@_|)@ z8@fCC@9J~%f%Ug<;OG8U@qS74tBZGVBEWkar;TI%?Q6R___fOJ^#emro9Si1sS3O1 zrye)-`F;zBq|w1%VDiA-M%n7#?p1>w<~+ixvHpt=OM4gb6PBxQXHZUj$54;_KWJ?! z^ngqBKFlf+^hlXriZLorqZseG@$-HYht%C2tGc=j{kC5E>*dWEFDcBaKU%h?Vz&Ez zQ9b46-tZ~zR&w<Tcf%dML($9@`k~sih^9!YnKtVw8<M5q2KzgUVihzPCl>b_9fE72 zYDPH!GoCrkj$otG%9`Rn|KwhgAG?e$Rtu*a=>JU~$t%`mo?47fRf?*N*EX<?6v?&r z`ud}F%qF*X_1%Rvd*&beG)kh)!@hM^q*jmn>1<s;ZrR^k+^L&+F^cPC(1ttK4t1Na zI(_HsJ5t9)<$Q%}|E*nLjm3Penfu~S{vIp82>HB#&+(jjF0dZCj{Buk-)($9lwZiF zjwv}_FgOQJ2N=GQYhSzA;!f~~!Roh#e4Ukdfme{7&FJ;99?*LZHkpL3I)^*C-{~;z zXF1#h)9DE@$DJk~4aeX*)-+gc$R>Wx5->JbXk5)?Y&N(BtU9L?e3t7A-gyqgOF5hk z_#vj>N_-#RO#OlYUjf#!>TP87o7gns++aEPfo~1)I?K^m1|zw7E^Z^3@4omX^3Q@9 zi(+Bx86Bf@2N+!jGY`7=FMCYeCnA1=qTUk{C$4^<w(?T&cqEVMc;U|j{2W+%{)W6C ztg(pmgMf1cj6I1Y@}pM%J@9K*UQK`0nSPIhIcM<rJz#XkSCB8Ta*ly@U*B+cftxMH zuDJ7?aJ!YK!M6r@4H%o_lJ|nG-{ON{>$muw0e@2@Pp};+p1QF|Z6Am@8gG23<;1{W zjyOiX2dutivwSE&)PbLkI7Xfa%jf?<mOq7mOvXnZ{}AljzGUU!hVzP*%eGg+@|EQB zt?&d{Yr?K!;lw=3B(0Cx7AGjXXK@mxoOe4p^D@_A=E=pEkuTok<c#ON4yRCL`!eUx zZrh>l4EbRj^|YPA{-z?QPQltI;2&MX@OVC$@m8!vzR2QE@Deb3%7t4k|1kK*0N-Z$ zUC5bhqf;E#wCT48j2%Wl^B-fr3?2Y~&Eg^OpMz!F56Jk`^vk@&m>0tz1~V^4J_4R7 z;CK~SW8BD?HC~N{zT$JinqT}CPh0s2c)rD(z!{5KYdT*xZ8w8kEZz#f0W3W?lQnkf zXH4<VfKT7Dt&BAo|D2WY0N-aZT>W00X*&kq36@Uj`Kp!g0zVzdp9RbRj7{szU~E_H zLo?pp;Dcb<(*^#i#j=65YUF#tuUh^-@Chr&KZ?gM8xj|gYr*tY@nP_LEC-)!{Te;k zl~@3lpU1(AtXz7Uz-r59;yNqG_QVQ{^Wc>cr@S1zF2ZHcfbX=N=fIz_oHp=1VC$d6 z0|CZI>Z{~cIP#V7OJJ=Zw!y>%`NxsGGzoS-*$;jhxyE~(d@SN5WZPsUFG)m~Eer>F z3ATDX7mWTA{856xyqx(EF2QFdivld4*m)^g63DLsV{=(4{8lT^f!nRT9(-HC?+Ne# zSUL~D84BbZ1H37~n*+Qpz&pY6)pyYIWw3NIKP6wY_yzDjFm`HvmW)TZyc#S&J2^ge zYeT=AX7E8cWa&3;4@LYkwwn^IN!lj%fF~ndeiisluxx-^Dxb@?F>n=FzWpJ%Hj<ZS zzzYKT6=1c+mQr+yU)n-$2Gduma@NX)SAfx9+DXn?IkxDx<4jv|)>wQqxYy!#@Sw$C z2Y<%m&w)n*{yi3NM{fOJDn0no=oe;e2II@puLknHVA+-;KLggdy1?HIIL}(n5c2Ou z^0HZA=FI4P4*Wxl4}*_d{3`gk#j@cwu=;v}d=hN?DvK33`i(oo>0`ZC2OP}>e$tvR ztBW`#%fQ%e_<sXVTmAv?JTUW8#<o({VEOpIY!O&`gqH*uU0&W6;C3)Jmu!c>5-gqg zzibWI*}u-pcOV}OI2!|wov$)+?y+)YW%q%xryM_(ZL{(h!MiM;0Pl`CTH9r;1Jf^l zE_=$#9{`VoFJkVFfS<FRUhoerW=_g}43_<B3(x2|1}2-fvVm;mli-tJj-4uy={Nd} z99el1jLiw=sGLt>*;dZnh(mQuzsu+44Pg4MNFiTjIi=t$EayAmYb=K`lxG7@tK~?4 zF2LG$n3wV;Wb81u4S<Iuj_y5_Z?w1t%$yn9Fs^(Qj6LP}rhIFFcSN{?v6g??@~gpn zEaw^U-T*&kIkm|17T19pkLgR})%JpaV)(rLZ>)SS_=l0)_-(>+<Ok--@P#!mYAZWW zfaP2H?afH8wiVPHc^W(mET23P`C4<AoCmItI66M5xWKl}gXMqm@sEB3P<<t?0aG@Z zu~f7LxZPrOm}5J8>?d4JKT6uCS32BTIM>rY#T|=QFgNBr3!ZFp=UEj4giUsBhYIJ0 z70l@cPR^W~w&<%E;ZW1bHx=HMs$hQSIr-+od1b}c!g-~RrQCUC1@nHP<BxHe>hP|@ zbN>~)@r{$S9^AW06?^&J8z<jqZ99l<Pjflm$;TtPjuR`M<y6$k^BhV${2Zr^4(~6# z_oDCJg--qgv9BDa5BJ`MzQZna@)rxw@mEan8!}FQnA2W|k63#$*mJb-EPll?UMFyz z<J37k8U21;j8t)w*9fdUN%=~LOAF`7Nh+>#^6FUZgAOzPB@WlcVjpri#c8U;a|y}p za5@%ic9>5y@7q|@4RmbRUWk!Kzt4ugSZRdgUk784ez#4>lDbD_@SR}n5iS`6V~@dK z1=C(Qz5`4$&$6RWe1qYN@1J*vKka)6Y0K9b$exe={yhY2^6@2`EPn}nvgbGBckD5# z1zcfqo8`AtCVPI4ZP4*of*pU@@;AaKd;Ul?UZZsr*zg-KTl5>nQoKB~cySbU@tr(7 zo_LPlraU{ItG>17)^{I_r{A4P-nlVT`OVS#op<)keEgPF<F5}TZhcd+4x?wc6`5{$ zjK5`ivM72UcIwmF@Fr8+XFgK9t$FpL&0;B{T=nCZ)eC>*<d*I&Lt8$-Wh}$9#L=_V zHTs>JN#lXw&%yYt9hr5L-#_(>D4yb>Dqs0l&y$qHVtx3;^C6|z)FdC!oUs0UN=#D@ z+cgBwo6PmCxDP%}jIywu`ZJyVYo7;si$_5Umx?zKyDNN9qfo;WKi#}7K7FOGyRIG3 z)$b{>p$e@}zY-rjWKy8nE7jB11;L{<l!b*>>Rop!g6{v#;iXKBdCjfnU1@Rj;s3gA z@q8r0+=?~nOgz4~%|X=L@h*c`+^@4i9cX<iX}?!$koi-|e#Wdrju(tvby}C#lS6$R z6KG%Plhd~hNvN-dvf4|Z`gi(zz@fesl${Qs$E(4iKK5%~ANy{v?_O}IubuLA`Zn1% zd?;0}<d3sYTd=clA2`&Pqs+e9Cuh^2AaNL2sd4p^HD2j;`VN3YeIt~!WS5+d?;>y* zSb2~?TglQ_Lw5Rp3J&${ryS0Q)A5hC4IfHXUHn->mcClD)u(H)Mjsz0P4IV51kGQo zFRpdxbOWn)(X0g^eL5a>`pyN*KAUvyRM+2qa&>wx!L4Ord^eeM1)m&GpTT^VZ-S>e z;uzID>!5x$9z8b^=+o~u8=DcE<n+0+`}Fd6@T^B*hv_Wn&y;10PgH8%%Qs4Tc0*;K zsF&}3qFneUK}uQc$S2BL2R>2OxP7AR`Z6-gb%1%6pp!D$ceyPmD69YFL0SEG+p?a8 zQ2%$@vg@qqS&Eo@7DVx1WZ&K*{xe18zbq>MgDt0MuklR%t&74=n%i%Ro>CCFFO-7B zeEAfL;g?E5dipm>q0WANME4foDr$%MMT$bZC~SxSiHX8})V|f+axMxKQiyR<P%z~i zXzC4Xxku|p$F^Fl+SVP`dYle3ujV%eILFhR7_7B`f6ea;q`_>r25Wt2yOSR2OBc?u zw08Xcw}yZdV)W}=GuA|=51m7s=gaK*rP=2!K(6nvX7WPIZvm@~>lf_Kz0}5?|EW#6 zY*eDn+un0y&6;=`8ZS%A>!<AQb$B0Yyw0D(B=b&dDF9y?EInlZ-Yfhw9oHMaY$ba> zzB<!!z2R%0O!oX{HcPip%32#*;gCJ2joqE&<Sb_;9J1$hGQW<~1vba;a0V=Y2u$|; zVdlm0H-a61tL1NlPxkyB_}THtz=q#=+2YHh<NfIG+r3+Q#pR1K@BI9rd>k7J=LheN z&E=TBnP}^+I)d*tZ~a8SKiO;E(deBkdGx*pEF;S#Gjs1xa$MhxuG7-N^UptP(S4a2 zQOxc7u}np#uI;03?OAhH@ulke?fKY=@0>bx*?sQ4xok39S^aq1k+vt-8U1?4B5M$l z#Q!dHef{6n?8p*-`{<0Ak=E>}|GR7@nYT%!cVP;W%jWP#<D_g3WS1Z_QL<}xG~N$B z=GtHODKV2{jX!TZ>(B*J@6}^pD$gfR8`f_{fUooC|7q&c9Y=o7Jmlk7ct7baLK~&L zAv1erQ`?no4cX*CW&QU0orBex+hym%_4qtrY{)_V#wzbq!kQyi^b4mEOLKevp9a0) z={BNVOY1;&<`S>9d8*da+NIuEJ7Y`DYtP4OQad@jJJC3QqnWWE2j9vE<D6l}Gp&)W z?z7N8eNUYDtN6f)18?pSCpR}AU%H3);YPVp*b|SP`2L$)>&IptQeFKcsqMVC6VnKz z^VQre)(-xtk=JI3Gyh|FZ6aF15nehTy{*@NR(tBqGu=0+kYlk}SNED#JpB{<<kF7i zH?(v#Wfom_Sx5M$1*T7_^RHlddE3>?SA25$Czf{bo<+yf6)QfzqR{4}D?a|aZDEDg zb?wzRv@CDAx_xO!>+(;uNA4*;H?AvqE!M_4?LF}a%r4l{RU4m6T<&XX+6zBVnrN-b zwbZP<ZecQ8Ls0InWeaPwHN2V8n_Za7)(o`N3}qLlvo-C@46Q}9_UI*uDaXj|#IwGp zX2|~}YG@06+VkY-yTO^sZ>SQZd%&4FMPG4UsE?OGyuMJL4&-xPCwz_)qr0VMq@)m} z`(OF~##@}P>oKJ6;k8o&I7?Q1iY!@I^t2Q+%hPK-mB%w>(bH?;nY<zTH+D{|@hUz& z*nbDH+Sab_&`UzRv2$kXz^b(@VxAv-3wHF}U=J4cc2Bu*AbSS%Tc>(-D!3XTxqYoD z`iav|_x9hmsu#-C*FE&>r{Y@G?!A|P>s5g{TGV8B9<Vr=cR}}kdcMUR!kcs^o{p)s zw|_g{bk_vhBGu-vj(3zeP7BZRYIWRkfUM`4#Zj&%FC~ZL*raV0nM+PzGXjT!XQw#C z<k-UKlMkG}o4|p-_%6!rWS5){$s7irvyDGn$+Ay=aQZ$64)q<UJe_^NZ`<&pWR7*! zhxCQl1jZ-_`t*!~Id<j4Bxlp3lpF@u4fCg$EPe8uv+uj$P+yjE6WJxF<J$-v2G$+s zkJG1fEvHZCOrgFJ%JaxBIUUCkI1D^jYru_HW3u{849`&CZtBuxm#mIB&&p5HCtfF6 z<JGaZ(>EU+>U)kd--tdreL9b@Saq|6WwZ3vkyXZz@g;l)>%OGb*70GI(<i^G-$jww z@U}+S{1uP-_$T=c^}R@$wd#}8*M~&<Y$}0gY;gj|<C}NNI9Pvr_REYz=SSjc9KXkB zps!4Q&Lz9#>WZ$Flr5&&CP(7a@$_lFM5DSHj5U!5>-<i-)vxBc=vqll8!ApBcgg8< zW%udj|4!FR&aoZMV-T`a>p^KQWo?g)+oVy-S`W=pG1g95^XC&g#Nu*r6!%-Zwi5QI z>tMH9K`D+>*(dDL^(vnzhwDo_aIFiUDC@hT+X~v)m^61<e<sN}q!II%KeoK9sBEvj z#OKmp``f=Ls{gB^@;?@pPfRVx-MdBlol^Ecal2i`RMvW4QN-^oD&J95zTcM9wCBH` zMT=529uvFW2yFT5MfHDORQ`o6r`TXpvGuFg^2Bx+dRJfRQ;!)W;W=w}Ob{L)m@0qd zQhe}Z4;+j}9ZB8Q&Cyd=M_0FtWgGkC+GT5(nxMZOE~@O(tJ^-_su!hoxT2=PgYdya z_R-}e|E2}cdKZ%oqeuaFFFMw)S+$yH#Uoo7R9E3Q>5GOl-O<%l%IU{yQ!h*vbsxQK zQ6wB34jygy2V?++$Gs~CSlidL_BQ+%c<ZCxLs#=cg?-e2ZGYd#`n$S|2-oTzlCG=u z#_x*m|FC>%^nQasTw@)uy_lG|OTg?4%Cs+OCbMomW*_1)*Q-2E2lyh3TWHJon9-R9 zFSK%f_oxqd9SiKAQ*SOj-=J$({`wQ`{qyd$chB9%+5$ZxX5VF=t=~^Q`wjEEuLr=` zY~(M1F92&FqHP}AJb#hpA4Jan)3iMV{;=h|2*x(k_M6~kmNNmyPNU~A7&}edBj6h? zJ_^oRd<@L~&+w0f*I4-^c%8*3!2<zjIFg&Mm5mmc!r2sXHd}cT`Bsao!8-!ZSFOAj z`PVFFZe#2(ygkoGIG#fO99a8f`RY4lH+T5gJ?pIFUOz`K6rOvI;YWW>^pM4}4L`c) zp<@%=nwW=7>2NUb_|C5leCM8z(J_wEDf{tV+O?f5JTId6Y7J)r`$=f$TTZ;x%3F|Q zhkGU_j*kq#6FGWkI6i(c@?qro!mT}X{BHdaVr?(xnl9@_-)ZJrFMY+*7H7e%H*<Zr z6?~PIw}HiTz6E>V(&l%pJz7`Z&$MyR=$PYD*S0;-!&iN^&U+Y#zH`jAUdCaLHyxik zuai2jb8es~#ON_Gk{3jJOzh+gIBn&N!EF0}Eb#nT;Q7Ab`M#P0eu(MI#7nk)nK;U} zFC+hL_JyzB_5XACHt<nZ=f3dXlVsSlGmhhA5+`HI87<m~NCp~du-ta?A&nI6fYdWV zDxbj#hL8rN(ZlIYTU7AiN0pBRXn(e~=SA!3@$`B<Xg$5tQ)|&;kFTXI_Immo5ikq^ zk<SDJy#N2&YwfHILG5{a-+SM)U}gU6S<iabv!3;__g-u5wP`Ds6*duPD#w5^Zn$MZ zoU1?L)Sf5t{GjZ~x>C3hcN-jM&@MQxiZhRC|DeRo3+=?^N8G1WT_aBIk)mx~9v#Cz z;#}c&#N(booF9zwhU1<%hnToh@~i+xdlUSfzzNB}0JsjAWnTq9UGj7RrzBntj4?{c z1TXKc#F@mz%v+TgSncKFe7V}EWgtJd4ImHKhFw}4Kptw}n0Ve%GS_JG0mZqDuq$mS zFzSl+rOs|-*+*P+fE@%s+Y-FXAIJE{L4vLtc$5Q;F3Hcb!@K;@$DR9M2dwzFO8&>e z5AX6nfqtjtZv$5R&r1I7;D>klU)0tOGQf)eb;-XA{O~USZZt0?|1Ds}-zWKxfFIuF zKaRGo`1^q+KgUMehvOo>;^)}to*NnjR{Rx`KL&nymwyb}hLmqs0t^17i>ikX(ZnLg zN3C^Scim*UH1cuwLW%Y=wANu6MSrn<JO7cdr8&<dw1F3%uG;x=|0?@m4hk_IVT8L7 z-=`3ZI{8RGv}++x2*V%BLp`}p<(v16EbgVQbGe3Okl!;zH+KNfgJ+$xY-ls$aVqZ_ z*@Jo)Joph#<*UN#*QNhOo{`ze78>@_Mc4gVZEez|i8UX8UG3skP=2Vb;mp>!FPr|P znTy<ULr+uBjoFqTt<9Cc_gatDQ=Uz~bv762ej(d3YbCxmJF%y-XY%cXyCz)zUsj%- zF?yw)ynbbQ^2U`oL2%{gl5H!eCGT0;l3cs8GugfJq2!NOZce_i^7-VOD|aM&SN<u| zojlwB%DMiPxf%A#Su1~(^e4-+*F5p1<gYIYU<KxQ(wZ?oaeaG1qOqeWc}=$EiOyX4 zAC?T_8^K}UN;`Y!Ki`_WtoK*PaXM+R_{6@L<xPiEL1^CoKXZ{Wv4ii#?4yCwQD+X6 zeAgQ|lQV34cCaX1eCC~)b<$hvKXkBUYK8X@&YJV460@@{zd4*M|M|a!i-JXm4#%uq zap@(e_Juz17oP%0MJiN~XbBYr3lg3Ci%QF~Ef@b|uKdKRgYSfX$S*gS6`k52vkrpO zpQ`W$eFqQ5tfK{`quxDG@|a!lF6d>c?2?zq=AvJ?zt=Wwza6ySg~rD{rT%@nk~*(v zA9(Ck;-PHI)RJ8Jwm3^!21)y%?NM*(C5H}#P8KR{H)rqMVCF76GnHkxQToKT#49HQ zrDbO)-}X;u4u*c5UDCZf7j5bC2NFL$g8UBciCJfmLt!fMbFZCzC1__`PN4*U*Kh`U zpG02Ai%UnH%9U)X5aso!P92WfezOo7Ab0<v10_?-yoXS#L$G7T?6A3~sPvM9Z--9! zi&*NiRN{}>mOuO~SH5=6aY&;L61}i~S$4@KSLC91K62(j=*QH=4je>|Wj3`*eBe)I zTfX{OuKY}Q(54n=Xp>=@*eO3`)zSw3?2`J2a?!uPo7zxTnHO4Gtig(u4U5)Bjzg<# zi*<Rf{KjVw=0Yb}H~u2(?Py88P%mZg9tiya^@7~|X;}T{?2;=N<f11>4^pa~_`9H; z*nK=uT9j@1Z;4!aCUGWL@-yn^4J1D6_hlE)o{=lN>h>dE!^_rWr@d@<3x4%fE_C3z zlODr!w7ArF>Ojfg)Rx1Z(9xTQhF-5H=*=$N|BYP9?(ZEfFbev7rGaDnORg^S9fO7y zX;|^qpeNCpZ4Q1VSNi*^?ELU8xl23^y+uaRaT8PQMP=q*yEL3_`(Q_I^t-=3u_yHE zk$@2h*(VObrs>2_LujYLqU_?=_UFnjfBPi#Lpv@ywXfu-;o?)dm=#Lb`ogJf^QhnF zN`LX0pm`LM_xMVE$KEcv+tDHnEzru-;Xs*pzg-&0F1YCaT<G}kPP|hx_6SPm=Jg}w zRTK<l7lsezN^Y2a66F~zE)AbL9Qw7&D=~n)<{v1^UGn5RLGMwN03|L$iJ#Z<DoUin zp6ucu^ykV3-^<yhK3es}zLI-XPN7udyFpJ`!QSH1z^OeY*C^>Mhv&^)=^e|01%oKZ z{y=H?%sZjqlm*Vfnk+}i44UW}2g2U$yp!L^1@Hgr9=o)NHxDP?E_tECK7pDkL(OCt zOn)F3dT=asL<ymz4?5l*_8o)8Dln#$6(#;>u&CDBTmACSvh(L(k-KE+chHMRokWSU zi);M3vNQXrb<QdcyuYucGGx7fAO?FIc4&5mC+tbwlejsAJC5wae|s`l^2I+LhpkwT ztiPar;$W=!L~qPGjJ|vl--17Ou;i7nFO&*<g9bFPv(34NT<H@(%UY$yEa&^#5?DTD z1!o5f!X|R^?I|t|o_f0k<3L%{DM$)=`vRqxp4lJzZdsrr6)Z}0!y<OhTUwZH`Qp4> z`N^Li+E?;2`$mPg%;%rY@h)7D_%%kh;)Cy$eA!=QW3+m)Js17i{|Nd{qEE2TqD=?U zrZL`>r7F<d68-2Qmu6eO{&KFoa?6=q=)06y7C41oRUvw9q6WRTFuUYar*qNV_t0x! zX0NUAvVQ!c$0pL~vBlYz_`SLEUGE*tm3)~p&|_IMKJ?7LL%&+`iK1Mza1C{!F6Zg7 z-O=Oq$+_}3ca5k=ucJrLzFc(w{~SpVF>*kURsFg0zxw_NdfY}mZf(v*UwT^Cqr#>| zvMpCM<jRj<P0PS86RA(gLrrqlCFjZliOpwvgI2cX+@@T4{n)Y;M@ZY}_tbiWo|E7} zTkxLPQ}PsAB={;)M{&28ZTaN?l`H?z`jB@J9N0ZljQX=tZ;QjY3Iwfi>ZFBJQd=HJ zsRtiBQe1lR=`oY*PW6^t*6YJda>Y4}3&)Z26nHtxHvJ-3-hA62Bq#Rd0;Q$UZ(rzV zeL_EKSC-lf+h$vKKAJ0k*niwIJc+cZ3m>(kmU$X_vMtB|HdlV`y~NL{VaVJI{q{i5 zY|B^v?_Bx4s}JoN(lv1dv^7ITXsH)dGql#rsGT3&U;k3BeAzbYnfQSp<JW%ZK|QG( zHKm^D(?Un+RZttHHrbZ_*<AVAakM4IDX-s$5lXjUL1Im|r9PZ1|A8smrH@)BK0q6{ z(Z-v@xNgykur;iB$@g;QH;e1wQD}F>TY53{`ev^D)Gdd4OUkIJEv#;*pqZKYdMLn} z<<(*jHGDhtGr!Q#pMr+I+RCG>(F4?n;cWWob-BpDT;JnMyczVdTo`xJ=TTx`MXJM3 z+hkkb_-U?u>>m=TkOeE*7*Bk#(w)>ABc9ULo7kRh`R%uJ<p=L$si3WO+(x+q7_~0O zs8wF(JBqKoAIk;pvf1cu-af0e^!@#z?Lq%{{E6raD`ai35|!<^xA?Yi{J-zU>>&57 z)c965;vC<_(8NB`VniYvj@XxczHAfQ*pZ#*-c8-Z^RJyfDTiM^*NYS9xB0hR+I{KT zOJ6wF8(e$ow)b<vHOG1{@s&Lp`E15iCz5{}dt01cPW~;}yR_rNDcTy_nwaXnMkD#& zjm9kQehF+rK1VK`Ca}fcI>8p4TjSH*GybzN<Vr0Wli@Rl>rmFg@ME3RFap;EuOArb zDjFDgrs&l3#pebFUMT8m+;5eAf-Rya6<J^QC{CANoH6@<d9F8GZ+xD6c;epNug+!m zdX3_0+c_WEzJL`1u!6nC5@!;R^X~VG)44xSEAHQ6B;MVf@n$3EGUKeE$Gf=@<)E(E z>oa&{)Fp}WYl8m3r!xfsan61(^6!PcFO(DQ9ViKSRBjo|E7DP#Dmcr1`BHUHpKZha z{OI>yi;qfL$<gi|eH-rRM+YZjzuR9YE0dp#JQjMCZ`Fj?mu-k{tUBehi{-w!z^7S` z=$1mE_4t2aPS_czSz4TTzb09cEDl3T@Y{9Iq-HZs_KQY>zo%b1*I#YNiyiwU?8If( zR%;_|aQc_$wp*JnTGJOXCi!>RlQL$tHDmRRN}kP+bI-Tps|C--ZCvX;d+h=%vTcuD zfHqh4Y6VUV-@o(RIittkeEJvX9`|mcwER3syO^@)1a|m8lQAdwA$<zuKf-k0Ei)?P z<H&REq1_X)&kt`K`Fr@Cgt*vAIKfJmB`v+2wC^r6c5O16^u?pm-8k8}ALkqoQbyI8 zszcg-w*381n1gU#90+p^%K2UpXUDdme<Un8B8m&Yeb_5Bv`@$|Vp?2(L!jcD=C?en z3+^qvujqd7LvoTs=fQ?4Y<F659vh!^mFpAd(>^`I`Lqs4Oflk@d!6b6{>DJ?A+vFO z;naXA<X?XO(oGH5-H4-;^qoB*&FYxnwtVrjj-`3@sV!|{i;p_bc072$+|C2IbVfX4 z&s~YbgO?54NR(bWf8pE@kCH<EGwlsxdsI%%m2e)0b0gA~at?;o%eh|C=^1W-=NyQd zCt8H<23%KCPRaW`2uvegDchWqr{-Z8o&&GRvttPN!7Ha^a1V#VfTf%#!aSnTk0TS~ zD6bt}lUGa{<_uk@WZVgg!hmJuQ}S#XN7}vcnmj+#Fc0OFj4luq2IN_!oI@7+Q4Zty zy9HjCw*uilc;%FgjUXrtcq#341fKQ5xp^h;IbcoRMe`6I1FxKt@lPNq3>cY?KU3f- zF9@&Xy$Vcu(p|I~U{Hndt7QCA!+?=BNJbqg5A*u2ygvYI@&a85SHLT$;_~MA0$ah5 zRZRF*eEd~y46tMhqF5hX@8kXj>c{fr&F_Vu25lL<a!Q^Gt6!J?7n$EvQt^ukQ?`3K zO#5CyAygj{T!?2ob{)cOhpt1I?Z<TpvmLk&VV2u<2(unshj17HdOCjJn6^@N(T6be zzmk!3QkZ(5NQG;iSfd~O)bEQj+>S8yyH$oMkNPc^;V}pY4Ni0}G=>f4YOu$zGm;N& zL*UMcp%CA-85-KPK|6mCS7DKJ9DlEYN4<)1N@AW%WkDt54ft`uEO!=uCNS5(u<pdQ zBthQ`yg=hwEqPi&->C6ym-NR$&q#VNF#41$|Bo8}6ENE?ZIp$lZfx7Y>Kp;CFT3x@ zK$g1>)u-|6cp}P4{l5>7z9G(WTMv9QFw1xZ9(oI&S->5VejK<<@=pcctnoiB`S*kV zj7I;xr2h=`tfW&8bmlo_V$UOVcJpQ4s*J#HS&+spW533uW7LOu&k6Owa|Xq`O=;jH za0tJ3@Tf0ANBN9Jz|?_dq<vMsNaLPA2tIX|ME;tf%OA#i8Rci-(N_e133x29YBQ50 zM!Bh*SWiy?BX5CM0<Vx5dU0(|q=jwx?M_!tx5Sk5_mY1r@QWJ%8ybEKm}QK?qb<2Q zXNR{R*UrdK><s{`xaKIE^l52PUa{sL18uZMN7&ulFh-;67-X^bR|pW481gvgxbGE3 zF0j@all+ti@A6loZKyGM9PlW_(=|%|>A>(VKiY%)e$^~s#lJ}Mr@;^J^0%UWD*5fe zihqsdUk848m;Vv8E5*MaSn)qC`JVwlyvzSA>PYc#2Uh&MB|qwrdrMsYEbOoN_W}$4 zrOW3ozN>Aa`&GY>T8pfyp7dv&%V1N7q4l9EV;r6*)3IyIHbx!`Z{V{IzDm^J_v>>5 z&ewJh)fgAQ(0ypK5s1%zVQst^&u!v6ZQwfM-5M27W>tsq)JR(k$2o}Dcfy;>HUu}P ze0U4S*J!2eqZs^>oqWS8IR{T+eaV(aJ3c+RCfdV1@gC5YrY{_}FYOw5p*ZY3L0A1P zq-OQh`A=&qM>pSju?HKi<ecQ4;SJ0KIZR1*4&|U`7^)tG<axtWi@B3|v406}#FOE= z<d)=9$-D7Aqdv&VCez7Oe2SE_A&Rf8#UBt)g<sL-pxmvoYlDxLZA{!1*%Iw`=1QWE z*_ab>-l!6GLK}44E<9@@FMnAN^68Im3Ga5EOx2Sn<SmOGO1>3*3^sqd(@L&^^#aN6 z307xWvMsrz?2+)dLyzJadv}x)UWcYTlT(v_oBXmPM?CHBr46X7x2JHkXN$4b7Vk3o z@g*bhA93QUu0=WY`z58K`wLw%r(g3};f>iZng*Zx`F*aFqe}6`uIQHNcTbPPMW*J( z%`dL0Ivo03#{A%mp282l;4z@Xt7q}1)EW8IefGbc=|^6fvQ5z~sy2n)9t=Jjd8}+> zcxz}2N_4~)vmX8}Xkh{sZjQ=%mFUL3uoiS5fK|k-kf=@9s-hnIV>gv;imVR`dC|ul z8QCvDbM*A8*Puavyg0kWQz*Y+g}1o^5#XXy%=6G%{DxT{=Jn#fUf(F|xiwV-RR=?# zVY&NWIcprYO3k0Fd4KoMt?1^Tpq?lAvUhq4MT-!!U9-6WWlYCz!Ys^&GJI{)(I>jm zMyZ@$CUkOpkSN1@v71i+=G^O{O~G%kx^k6gRay8EneMT|?&$A4J<;C>HXADaAtB*C zl_BzLi!EjPvW=@QSycq<Zoy2-5&u@NsDB&tJxUADkQV;{%d{yO@;8WIjN`^-M?a>! zY5pB83uDWhJ61M#@XJLDTU)UGGq$|tj<%MzJMh7yHoVG%gTmn`yApnu{Kd~lyDzoH zu%UEF?4sszAhaxx;XfnfyX5?~&}U=I9A>EvPJ;$>%L>KHm(0mG{-b0n#*Y%H<vkuH z3Bz0PSI^S)yD6ExA$HUJ<@oAT?2FBJv%t#6pGwXbAA4HLPcK2uMayDKmvuCwSo7OZ z6w;bI=C8muTBgDU;~X3ou2u#7e0{^czbD3fc)_|r<Xh&wp8E<ODkN!Ge5Z)7)~B3? z%||7~dv)U&{}3K0Mu@9%<0^!7=TE$W@A--8s(TCWD}1O3WZFSFzAJ}$C2@RBOcC+B zPRw7;QuAc@7TxDebLq0@K&OVl`a<_*Kcv&+QD)>_%{eePZ#|FoI9I1GQ28x$wTQpJ z=pnDrK$ijiVYk>YyTt{U^9Oc85#qX@_m6tWniHsQ2-Hj+Z%qw2+<Lw|&j)F~VSdx| zEir{B^8L%tr7cWjFLra=9nCx`z8xKH*sK^2CYZnc?xoEuI`Gn-I0K&t=j#(^WLYYj zW`4|&==A*M>EUVG*eILl;=@rY+qvyu%V%SlEbTZ~{%gzdd8vGcJDQ~&9w9F`j4$i> zFp(c7ZCUH0^KzTp+_tde?sj}L46hR4lz)6t?K~d6WQ=#!%}YCy{9$QV%pEeBGK<de z5yc&mRkJYSo!1;u-{U7uuKtWmSe{-EtrtxM^}5L}bty;X37}1=c4<!1NfTXyOiH%v zYFw&F`f1XJG7&V9#Uz&x;z*e|!KJvFR$u4Rz$MhkQ;jJnkc%_B|C#1rliJwfjKX3L zLd?g=s7MNccQDt&lZW09|0Q@nA2_3wc$O6Nj35c8<l#AVn7o$|9)zbnrd9Ir{69<{ zc@pr-DS1mlP#Ca0gFma`DUa7PC2t+Drk^<l;RL*LO2+*lC=3{Fz#m@oDbI#i^6(ry zOx`Ml^|4pU_?}FIAG&Ba{wR60o09h$u&&?J2*==+Q}T9zpfF&x4}Vw|>KA}l@(u&* z@^&J;4qiDW;{XT>175~^96SRGc|jTHho~5^CeOomFb7^aDZ}LZW174Q#<#*#Kh9S$ zj`FCpF7H`{M`(ZMXJi`u&{a^DlE-VclGg>S$txgzJ-l*KC-Ls1#Ehz7S+~JczcP3w z??qr;9_wv{`ZfPqroj*0C%W)Q)o%n?$@_O;T^{Q(0k53WkNRl(ePS2FN?ugP!G0bK zSd&-Ca3j2OQig~3Lz=wNl?W^Qv2qwkd7s2D<$2)Y3RxGRyH3fg21VzagD_<(r})^< zb-vXIkHmL-9^calv)w7D<nftLm&f`UN#4DAe0ve5{ghMkdO*<R71ba-65l`M@vTF6 zB)j~NJU+G;+E+Q1?{7iS^L-ZKk>u^m<I5mC4qiDW?<@$ECtXn=f*BRUui_gR!i*ig z9#y>xfbITjc=ADyf@1t?@<u(4uwD)om$xo5Y6sGW!K<9&<F9N}j0#nQFAKnD4$kv2 zU)Fctx=0yhdFnw|PRUbY_3P6A7p;q^e7H_xxd8x#c|Cy5giD~147(2TDo)T4=J@P7 zg!Oh#c^n^Ihp=u>#&djf9l{)6T!%2n2iGC2*BjGw-jw4r9Vhb`b{*m|o8Yd|RU)2Y z*C9TJz(h&-6yh0n9pW!X;B%4?L_EW;L;Mv8d_fW@pJCS_{*wrNSrTR;o?+J^ehdQh zC4un_yAJW3_g*RqEFZ(JL;O_;d`%KALp;N-L;R-@_?9FvJ;Sa;Jja^{CE;qs>*EjY z%YNiKgxS71&d{lMso9@|la;?cFZ{9$ccL+Pf&Y{jpUVsP%WwkxXrJaN8Rj|~+MoGJ z8IB>0_GeBWo?e`#NYXmQLnZT089xVM{5Ls9&{2Q1NAtfsL1R6_XpiQ88J3ONJf0U; z`cWUWSC8rg)EDj5!*PI)=lE3^?u7C}W9X4YJbk&(4#S@r+}n0ME4a@H!=DZGX9E3M zVCWgZ6@q*Jp?iLp7x(%@%DB%*i<+0Khcs<5kV}IXdU(Y*sVAtt9>bRp^PXkh=Pm6a zN<F5I{A`N%HI!sG@rOT~p7%gH(o>=;;D<hi{@IV7^7C=nHnV8iQln#GwE<;Du<%Ee z1a?0EX<oD?w0rSRbt6J(V=kU3@pRBJPPugQv9Izv1+30K=ladHYK%#0JUT{u7Vj|M zjCk}P@vib5U^Hie=K*6J7I+ab#$18Zz?BlW0>^<lUbVwFNW20Va$PydS76GY4a_w* z$QJkEN`J(;?*q@%-W5dN?m8LrR`1{PUQnHd&%D){?pzmCXS$2$I3>Rm`6-O?Nqo}` zy0g3jR|CW5;+tkQz*k8;1(<v)EwKA8F4DMbpGf2CfHbZS2`#OTaSah`*vt!KiNMT@ zVU^dPD-&fA>$RvK)|bHJfEiXYfi2ZG5U0-0&o86PAC~K*6_7!%<N#MIIWdi{W9TE^ zJx2X-3>J6=Fv=;`L_2|}O8P2b+<Oap7jR1A)xft)o;ARWH6F@U`T)CUU?LCq9a`k! z>WMtu_jS9p`a&MAO_0ass$A<d`8r15xd>$w&n+m|MdiRrc+{i7Oy2;^et~lE{`?}g z`8fQo@JeUIxw_5K=sL!=O1$UXi1?U>$4WdM^eGyKJze=oqrOGJF~J=lsH@UJ$0&<< z=Na~3U0=*Hq93qaf=>G<B&I!(*TpP5>WBSW@ZSs!n+yI&fWHZ^@`7AfAINgYD9BRZ zK;W4L>bnQxIasA#ugM8w$f9j4;i0F%<AABF;zyjD7ves$oky_7Pnk9F;1?Kn&F_z{ zOvGKsdZtUjt9*3~-9nT}InYgD#!r+OZA8SWwBU2wA^6<9z~}1Uh%|~{#~@$Ld#FNq z*hgU0C;J_5`Gi9mM|>|jF8Qm$1@H317VcgF=;rPfNJ{=$;D>klQy4Q<UUPueJzcBh zZwEiT%fABURs5a6ihqsdUk848m;VurX^MY6u;Sk)`JV<qyvzTLwpZX;ZLdH^^1lRr zc$a?%#ug=iC$N&gSMv9QAKvBfL%&x1M}Q^2i8`SDP0R6$pYKtt_q5F*u;L#h`76N> z@A8jBKa%pzII!Yxl>F1d5AX6PQT2)+_2Ry#otFHq;D>kl+tJPyKkCAHPa8a2CI92V z@Gk!oXt#=g8?ev^cSYKvLCdN>YA;3g<oKWQu5IB<u=&tliccA1<Tot-E%sWYw=Zi{ zo_^b??AwE#@b6&dIBQr4TL=dc4k8>uID&8t;aKpo{vD%!f}QHmhQAy7cB**pQ`ttN ze(v+Fm+}peR&U%oVn>V&zHU)<6V_?}E%ocUJ*mLlZNVFl`#?9F&d%+A|Lu~~N6BS2 zeHEd1N(P)byz}r`g!h;9AGH{pooY<UuEl2AS4aI5a{X}%@3vf;_(5Z~#a!C&^W2!b zy8qXFzY_c3Uq4c8j6L3eZYSQQ2&AsbK42K{zm@Tv`k8TVzs0xE0zq#id(VunKFg?# z`}g<?8VBuy#)sX#_58BO?Pu_B5a{gfXSkOjBHj-W-|X1zyz3#p&yj&Wh1+FvHQm{9 zFR{&tT_)Zo7CZ8_FLgN2)SpE(#(8mHwF$p`rrHI63{`}A6}C~6<A45|sUI}uJOD8j z0Dn-dNlsU5eeTx#{51bxhcQ;VZVc8$_4UxO8-ucH=aPOLIu<_V`KEvQwMq9|(Ap86 zpe?<V-`bYzKH^&*ATFBUymVPx%RLvQ&&4|UQoIT<eA_=#V)<y|`~_S9TQO{r5>f3P z%kJoyzx2F=QMIV^KRJR(JbgB|t<2N#F08GNK<0Vyi(6Xr^}dHkWG&1SAs^L-n}ZLn z7mSdWa@PIo$H&J{x^8m(FSKO#f7CZl*bkLccpM0Yiiqpe>%i=HyoVv3p5Ytdc^&Y= z)8RgW*E82C83|An1`ND~Ke)CCc}%P1aZJ(VnYg}*XIlISr}X0-n<npK+%vfPSu&3L zb-?TL@LVyXJkGi4@>V0P%FD4(>9-zOmp2_@r4yiw9|qRtJ%X^3$6qDyAAxmw95Y9f z_moV7AG(WaJ0&jwtmM54tjkLxJd(U$$~5?)yBODSS03w6$$J-Amp2pPk>u@>Y4AgL z@w51&^y9OGk~avf%bSJpNb*j}H29&rID<b*9>-QG&*Zt6x;#EpjUdldHbOMr#XIpw z$-{G%D{m~YE-!`f7<lEFFPy3RffF<?-VHDhp7aR3((m)Yy1Z2gGhgMDyz4=bm{GwR z{Fwqzc~N*JkM`2#twDGsd0flZ<*h(i$*YiYNN2L$>+;qkJVO69(=rWy=z`DSkCKP^ z1y{fS3QT#j4$LQj<M7H!oy-j&kWV^(1DW@`u2X!EfTEY9526#G(Jq(6Gmho>K7KWM zo<W3JPUTcw-kMJV>dO3)V#2TD<FD3^xR2NKIB0lw6Ys+?U)m{e&F7+35OE9W$|-p& ztbSek|E4t`r3dHy_4dOs`-<xjW;tDlF#EIX5DvQm0EF3}T!%3GgX<7xdv+bddOa~c z+mq`Mjv>H$ql?3EF@fYC#9y8l{v^UG4}PnMbwwJS8AO=Zn`=c7m5Q(h%>GBmFvt5D zBIJZ=pZQvt_W7z7rhUGpg(1RSW1&3SN3EeSO#A#$^7Gvt+K1Nx;iR!&%nNf|r}KlK zWkY{)oaFD9LB_+Lrn(->$}?s84VEAFHLHfD$9<Rf;I`0k?{;`Y*4o_MZUD%8N1&k_ zMm?b2C4xNc))3)g_k&tk-UNaoZ}EWK+dW|S9uHXF*vW+l=Pqw(6@u#)OyJDPH;D6R zZ)jWD(y^><DK@yx{X+AKS-APdPQ0Z!NPl_rLUL<&faj-}DMU5QUol^?ihIKI8Hb7f z8Wa=O<@j+8Jen-q9Ou3H+%L}h<XjoY)RmwU&x2pB;YT%$vCZY#28=2c{C|=-2f1j& zVlI6FFxxNlMgGiB%}a~>GDT;zkywm#N>5$qzZ6E<#T+2}IrI_pgzN(-hoHxR8K?9C zR%datue)>XV>BKeLr*d9$9_z&<N&*KytKQb>lkUp{N4y@-Fai3U&knyn8zbcrvtm^ z9_n`1F_M&W&V*wV=mK+`fG=fxp~JY~&e6pr56cbj@>HVU75_M3%A{+M{EfiyF8_3G zUT&7;Nr4C6<(UIBDw&HUPZ~V%E>ElWZqEwI(+M7UmuHnWN4Hw?tN{<a%d<|Kms>A+ zy1@hQ@@$29l|D~Mo^9ZPcX^)H=HH%`Jlnwo@AABeOPiAOlH}O|9(b2$C)%Xqc^z2U zGb{P`f*;=H??v?~{yt#E-!J(G!4I$a$?DFt6>9TrvJIGF^jUb9KY}(U<(n12LOxE^ zUXHJE@E~V#w%td~v(<e1&-s?DoraP_^K6yIm7RWkP1YZ`1{#g&#2NGU!IXbsFjy~s zx0}X5e-s#VP1(pMyjQYeg80tQz^Q1#z{zOgz=@~_b7)z}<(VmG@&41d!y6+TocDD0 zcnwdZz1K8HdA0_``yiR3$Y(h7mFqXHJ$|FGeH7mii5Fz7;B};PwrW{pbax`scHpRG zS`lw__g=4A)M(pyTS&Yaa;OjKplMM=q-YZo-m5Wgi0;PU2JyFE{H+szYw>rok!ZA| zZ&n@KTWA(Vf2&RfIsEFm!Ct@NjdWLiXMzv;;9QoJl_~5sO}}`@=q&#JTi4k>H_UR5 z<Y*sSr&DN?@}f*j{5+{8L!C2bswiV1G&lj}5EMh`ZHn2ttRoRJ5}lD)q-<kPr1OiN zll@!2Qtp%)7EZW4U9oH9c4SjzOQZM_Q``<n)Mi0<Lw<A0O4#jvfu6V(t_W`FxBSx^ z?J6<f*LKax(<Tm@${20n`RcepPq-p(HQM9}4!woeb@JC|w>w{8%H*9F<7ndQgE>f^ zh|=kcTRj%uQ!_JGpr>P0NYoZ;*L2F@mL#Lnqr50fWRuj`hE7Pk!U}JB*g~m9`ZiLH z6$cVla5CG6Llt$?rR4B;ml?M@$DU|3{he1I9W=!|MCzQ8T@zxj1vhq9hS!H4%T6<5 zb6+?zV9twdN?koSQub)=jBq1r%j@4-b<^&N*NN60c_d?4c-w6JPS({ocHsn*y~&Nq zZ{dxq{zfbMyZH4M-ur3vChuc>7H6B-Tau9pw)5>{yic`D(lg1*#EWfLAMH1j{WwAA z8@+8~kAGk$j}Mr$vP<s$t6X%(!GE57)b=*Uqd)A4_`Y%a?Hi58_>#mp=cJamYmMnu zXWG1?Jr!jv|AtofQ6sVu?-gd^OPqI}GG^;;t0rTliVk6HdavI$4)q6(gZ)uM<m~s? z3~a~rZNFXb-x7~XyL#IqP5rbeW&1amS`S-om9R@CC3pBc`o9tZx2gr9!Mt2+Z}9p| zVaDp{4cBniJG8OY#~S~J??Iz&Tw5f8Gi$2)ACB}xj<FF^dcT72akY6f);GKl%eu>0 zv@Fg&>J$CIoM0!45fW`PV;Z8?GnQVrABNe6BHu-?E6$i@n?!Hwaz=z@HDxs!GrBw6 zv#PS~k4JW#-EkOiGFAxrRcBKE{!y30R>1(qw*YW(V7qAohn>73cQCRk?tgE(=?`zj zX+7%?pD-=Ht5>!;BHy56T*^DQ<nSPV{d0ZC-Z3on^uoE3W4%BIPv`Nw=NJiY|G<mJ zxq%l=ajH?=_De}~eT>a3HEqCqeeaEJi<&!QRk7My{7K&Q#Ty&&+uYgS;=I8Wt88h* zTVnjM!SbsSv#h;+S;vaI+FF*cXjy1Oz?F+)SH>rHUVouKG4RC5w8%CfK6dkb%p*JQ z!{+#LEgSZHNqzk?9e;=;S{U=|!_MWIuEh<CcY!LM_j*<r@|`8V3*?y^7&ko-$Cu5f z1}bL<#^IHqse$ULcs(dEr7@6b3^X*1uSf<eg(N+%hP=F}t8&o8{jQpx<`MBNv*7*m zlWW6tpOUvWpr@Ojmrl=1|882fQUI6Wx5QaS?mJqmi|+N_H|l=tA)n{wKx*3fLeHYW ztU2SI1h_YFT?%<o!P^7=B##oJ&0}t?VRVgnzR_QP4MMw3nJd2?i#PU`wJmPBL!X@2 z+4wlN@UD&yJg;4dWnpXc{Em-e%Ksdjo<}R%{Dp)g{|iO&!?oB<wxVO$D_pu@Jb>cc zaH_{$NY44I9=Z&Xe%OMB9*c)zysdR1$@q-Pg`#NJVO{=0j4Z=Y1q{9O^qK1GhF&UK zzM^Boc)r;5mw0=~+0V;+T#jROS|1Q$dH*Zsd58-H^}>9gLOk32NAXPnPkz37zvS~T z-8gvMt1DN!9f*DVDtOZAIgX{^b$N{lQxD~oJkAg5^6;D?(o-I7pyd4xur4nt`S2s0 zl7~5jVe;NWnEFs2^H=g72iE1yL3j+ja!RKyASeu2+KWF^;3<!n3MKDFU|n7p!h`V2 zDH;C^g2I4hW00%{fbyuPlD8XJlPC7=Hh`v_lJQ#*6b2OMH$4JCc>x(mxyRsjc^QPq zz$>R@90oyQz)Sn^N0k@PWlBG@6j+zH7h&eBoRlHvSu}Z(N+e^uqJEsaVI1@`xrVOE z^Q=Ia`6{R6O#(raS56*PUdmPSnt*kA&mcS<UO6Ri76`h$od|D*r+%E5QS!b9tjilj zxB^}|C9eYnO<pvOFm<Fn_7f#f&G~ylgA;S_Z#h`}Rq|LiUEULz%1VGnd7S%H@>o7i zzry1Pvkxk#<oyT)O<u)bgj?Y$kL6MF-UQa<714HG@XARUT&vLKeIkkQR(Q(e+_jR& zH7v@L{j`X7_QNYD<$2gg$v4r7C}Kb8bg=kKKE!*dEBU1JB42R^zal7kmx3TMqdw7x zv`+(2zboJw2R%Gj<5!c1tt!LoSH*GeU5%xHRyEQ}T@f6TL4GwR0S31rSrCBZv9dG6 zd21#m+acl%=*p>lRapJH^#7l%nOrOtSKs7Q<)AS+4zNDx9)Zyqt`#BlS%ldS*-z>C z4L{b6>ySR|1^^Hyzv~dr=U3|?f(P-e57!~gcI!HXV+h<K37mXm*ma1%+zkLAd_`V( z48rY_7DnON=GMtD4+rxCKOw_hvtS?inGADHgx8sWlVP<0#r{b*h<LPLBPT-m!$t*n z()m$glX(c|#GC9FbPY(4>x9X6DV&VIE-zf07rr$w%(YXxDUgTyFuOzuf26!_Cv3ij zc-Y@We{h_Pe=aZlD;Z9KAN6DIli@CeM;qFGAkKNyLUXk{Q=Oc5JE}*?yG)%VZ!P%( zin!O)<MMCb^*H^GU8fJfP1j?bZ}hpVIeL`1HJ7V0VyQ*0?ksO>?`UaTvDo>TpA5`R zH+K%R18?4kmV*{9#j2I_B|sX;Xl`A$texLrUfA3^m%^9bwL%irhX-A<u9Li9cRqf& zd?^;BzIqoHk+?9$dvTqWH{hBAI8;xZm#4opqqCoXQ?AGAcj9idDdJiY`wII%*E7&H zMOb0>3k{2R31Xnpla8T;IL7`-$6rO)G5Uu%TW&AnF}C>FS9;-NlHLalesR{_F5pUF zG*huIStIGMB0L3{{caU}Lh_K_0DL8WkHF6Xru^gZ3nZQL+kjc#Kf-qaQ$F!Ml1@3_ z1!mfQ_#XpPCe!YaJf8z*8B`g8-L)l@$9-=EY20-t=;VHj3_1y(MUa6!1Wo`CYBF`~ z$IwNcVFL~W0>^;S|HV5P31E!1f<6%#<EG0$PUDGd^hpw<PQ<&3sw|Lo)fmv|8sHUO z$EZ7T23`#D$k*jT*j?YE43$>LD9c5(Z6`eP7Vj{y9wAfEyMQAaJqFCOFM@|0!M_^# zddW{Ys1HG313XRgF9A+To-W{d8c(~#>p)*2`6+)TFx%C1c*<4!1G{JPLDx#?Azatc zIw;p!-8KL{+_gI7;jR}xf>cVTjxDU&u#Bi5Ub6*`0EdC85A&-4W;?8gNBs&O*o@bE zL9YQGr}2<a<pu243-~Tl`cKh#bZkQn=9PelJ|XHh79RS9s1IewBu@iyrQ{(UWeBlP zQMXBwrx7>-uk-<SZH4seTZmj!bai7LD1IFWVRPz6`!Em1gRuJ!18n8ebqu?OSr*vI z7!M3N=Ci=iThM72*g?>@1K$jcwkp0Aosu{M`W(sg5^$@=ze3_2pg*V4!AJQf^+jBm zHrxgOx}<jjza{y10%sjM&mlGTOP)uN9%UE0A)Sf7&s!i9_A_IWXEiYTg3B{iqq8j3 z0lJ$>VCZ0y|5jkiSpYvz^2`MOy2HcvWqwogLx1xDVA>7(n-59)V&HB`hyL8(FYMV1 z{P!CDDUJSPN#6~gp8(S)%<EbF$~q;EjX@aBM183Dc~~FnT`V&r$4}IQ`4XyC@x#ul zjhWC%jcF!qr`j9KpxT=WJyahtQ5UWb8s`0DDccY0F(PpQ7-OKIhk+*ovwhBjhaF2< zF7hy}+A6U7u2f2+>lpIOm{%oy445)I;cFy)5pbQvs6)OhCHRSNmi()Lmq^UCD}bpF z#!ilPu0Du!$0($6-!tsecytVMbQJy+!lO+J90rDun)s!QX!{H*fXPo6ll-hFc$XjL z9C6P<T=G|gAKvAM9o%<;rfBa1B_w|X_~BjtM%>aU-KGO8edb91dEke4`4{0@ulUoz zivMZJ{|xxyUH)frJyrbMfffG_$&WV3Z`iv0uWNf0b^$B?tmNMdet4I^7j0F^?*mr+ zgAPBV=oP<Nh--o5=RO|y-5b;k>&rx)(7XIGjMa*N46u}M(&prcz3E;4DHw+pe*#$X zPnY~j@WZ?Ov(P*ge+pRfua^94zz^^8uS4Ha{Eq-D{wE~=Ht@r{{7<88EB<GI1%JD9 zKka_2@1yoKOrCt*#F%g&=bMlL*Z@X{h2Sc2RmO^}<NEu}F)3?qg?yK&iz}yCnGABb zgBcuYr5fw(T~1o8|7Ea3%oIXO#)x1w)LC)IdfynXUB<m!<9~0eIp*-rvwKNFOqjo* zg@GeXFT)YY&N#C3|01vc*jKQ-VncX+|4HcV74Ihf3sUs=pEfHm-5uS1=_}DUFWrvc zC-K{j-?j0}qHnJ7H;OO49R9`G9XQ3ZyAj`GTJtOK7UZ1}`A#>(Ro|f&pfvC|`g`vd z#V0u;Tn)__)nYe6WFvU{O?(Td$H(7zdAr?+FC5~FhSPdJ(`X$YFvs<*!S@gEVC+|Y zJx_|?@}B3Vv@scD0=_!qtm%V0o+>=hADsI^f3zU(O<o<{Y;D2!LcGw&v0*yi^!d{a zg~i^3_!1ktCLC+VFLSwE<nIpP#8vF97&KGN(Z4lgeZCKVCsxPB+V1Dy%2@dp{*Q&7 zHDJ_#kozj|TiIy0`{S1}Uz8ec%dyoE6*V@9n0cwnj7ht+``fSnN_lFP2(_jn_&ot> zMM(FrXSe5mfp4hTqP8r`j4z3-_sZ|bVD-2#W3)6P5A$G+;fwCZUn{!1xF5dv@JX{0 zzi&q0EZ%{AExY5FwTjxS`Uj?h)hm0kv&Fl`S%F_-+4zEx85DXu`3voa>phf<lrC}_ zDVHS{bUtlXQ>L?<K%O(qQ%?s!zOC8r%Qi&T<7+sZ`adwM#YwpRrYJLa1@)eUt<V?Z zqfob-)XoRCkfHqosZreP@E-O$aPPx`e!C%CU+^yXHT0fFYCB`Jes%?S0$}$<2Y(Ag zn^%ZE3lI7>c%#29-d(&7`Ouo^Va40=iyl_o?N~MXmSb1vi#%1|VUMJr;Pw?=n+HFg zvFy$LgQlp>j781|?E_QI;D@(J(f=PTTOZyO*??A7&2}Z~>Se>sc(Z9^YxJ=`%hT9v z8KZJ9o!y?XVr7SaWo(6QigE*Hb=y-NDeTKIJHCh=MyHuFW5$<Q_->TI#^Dc)F4{J_ z8S&ek_{iqKmYmYmxSKY|7O6wqMcVT0l7e1-M@sNo;#}bVMB}mD8SKv)xqeZGc>^`( z<^3mU%Yn&eEczzGe<ko}fj=Q|1@~dauZe72B5bJd4XR@MnRmW?$j-(-5!nRWgxMcH ze-e9j&VV<|J{kAVxjXvSoZHaXe$THAeWk4GOk@K`v`A0F;&^!Y*Jt-)ybvREWTPt8 zP(DKbgRuTa?jphdp55#L@1Zo@ImVIzqa?s62{1|mEKB0F5XaWe->UBji)Eu5CgMzI z$KKH`6K#wL)ek=a>90T^?njaKZ?vk;aP*p>xWx!8dgnDx4Mew0urFl!p>hzhEr~11 zW1;o1ju@l*Up~7xzNArpb1Y-BUE<_z^dm<%tH-+;qplp0hvzf%mYc7Si4#tF<S?$} z*J=m1;P~7a&;R`J?InhgflcBIo0l)A6znm%r8b7?x<xJg-cU?T4MKOphY86T_p{v9 zvSR*%)@J4n7JR@chLc=IP(Y>27kZ)1E@Br9w#&5Qt47U>gy8c_C3X4pWG-6PygWwr z+nOQxe4(-VZFln!VpUG(MB;XwoIHY2maB4M;t|r6CfF9L8ScZ&h<Vjz*wZ7+GJ-xI zU3D=|rY?$cIu#C|$Zl`N%bJT&I}2Hvi|=Y}y<5s(JRfgsiZhon_Zf4JzJ-}l<7gx} z95=SOW7$&IDzO`ClV6%HD;HmrO1HE%v&gEg{0Ev@>`Dr7)S#pfeLvYod{}Tfe{fc@ z*jK|)M5DLn?fYpQiZi>#S;XV?Gmvi&KoE~FZU|t<P+}_gCq<?O8gCw7F)c9eX6|Gv z1eiLWVsJ06oH_5jeLJ290<oz9>{Y6442)|K`<@_cYM^4~c%v;4n<k<fw5Zzyc#xpu z{jhYV1s!z-JzW845^GSYv7rhI*Nv~39*9g6T8U>vmEL$sl(9w^A>!gL2j*d5Bj*6? zX@TI>KzM3^YEBKr8Utgdj*rZAzIWz4L#t#cFJ6%jt2482XYPeKbNW`PLxW<(?@qxR zSG>~$)zicVu&KhpQv;2Sf$7)=HZu^PKHiuasGdH)urUyC6q2M#gtTOyEpXafef{;Z z%4;j9x3t~Wd2P$5YbITNb*y^)r^jRZU_8!u#t4Mp6&=oRS|PDFhHqFK<1v2CH^whm zzFgmQ)3Lk_@5G2T1iT~dydHy&ptGpe067GTbsjxl7jgcsB0V;LJCq*h4zbjM9ahgG zUxmCaM!KBk5QIgM<#)BN7$!pJQOhpcTiANETw}ptr|WP&$3j@#weNU6UY-b#XlLuv zUv#HZ3@wDutzOYmoViu~PNz`PFT=0GfaR_D<A;yIGd<%N#vGam7vPsp>ysi(Ub=Dc z%;%%{CV@xSkMcN%Dd&-Z`<`_DIuTa-70Eb;o8WbM9M|+dtz>YFQW&s&HU6~1$Kd&F z&p67%RbZGr=1V^1lnh=+6b39mf<HUqWANNNpyX`=*7e(qU^i&WDH)G~pfF(cMJ$6& z2Z+HJ!z+3J4Oo-sS%u&{(3Dd$ehh-bfS*9!h&>@O1TK<sEbm+Jn!EypIltpNCF2jE zC=587d@M%{o_h!wM|mH>Yw`;BBK#7(a!STY5EKTC!JeGo5%Rc~gK>~&;u%1fSF{b` zIq=F!8Jxe?<z4;~!mHt9@Fnm{9_F)kd0x`z!7IlwoH)NxVur6^yJB02!E=w5k~a@n zE3bDE!aL!WQ}S*DL6?_7GL|C-&pA{juM1d{H;QeUc2Q2r`x_86d1ERNrfp*I<?u@0 zW?;(0g@A5U7uwZ!0i8eOL%hlMLO$v28t{!#A^gg`%qNF1W5>J%KIR>R=P&tKZ$HJa zCeP2ZGF~|qm$z@n4;ypd-F1qOziMm%ELn%4hIY9eUfC}QoVRbM>@6gF2z2F?JQY^I zF8yQd+fiejNQ;29jUx(Sj!&*bSk5&%B!sCW`!wAg6pHQBb%<vi+dW+p@vP5JixAot z!YnV_Bi%fN*&bbo^z7fRLs;$c5j2EpbJro9pMSnQ=I1)_Qy<qMe3=^nKv=J5hOwSu z%#}R+SR3v0H5ul4rL+&~({ZdsxNhgiXhl5j^&=Tp`)D$G;n(xRf65EL=Y-8}$b)^| z>Q?(;tl|9bJ{%R#b|##oU*5aPhKco(Vew6Q;XCre-^dGpColZ06E^2TU(~1hMqd1$ zyzmjp&wWd%Z;#t19eq7lNdA`)kNWp~c6fSmtq~;2e_LLBYhHNOu&}&I#GW7hMn~OA z=`?loqtl#QD%>!gPvlp2hLQE#(EJ-ev4uw8PNU0HTVzJuVKcvdS?gTvn~_XI`(v=d z#b}*~vx64iiB0D+S{EzsTEEslA1`a)p>gKzA96S52)Y}RdzR$u1}@nN--QS4Aw~H0 zOP4{W<J&Q}&Tnm5G-AvRZJc&MoG9^m+lTZ*oPT?*OpC{KzJ9JNf-OrbR^9aTj$6@W zioBitdTzsR!fCqp`5nuf=MuFvYc>>h@0OVxk@#sEJs;-lGIVs#71(K*98<1=$M7ib zFNxXdabGOnQ|EncSYqBglmT;`BOT+FI3so(@EFMx0UislWFpSpmlN0MI>wkXieu$W zcyuclBQJ4=YYKG89mTcSIq)%w=K)WYco8txR|QWR7~{SxXPQR86>&;8$aTMK3AyeW zwDT}DqddYv?k5z6+|dfNpDQ^!#;_swIdN>C0{khMa~3e}r?{WVWLcn(ptCH{N6_a1 zF93!e%mnZf2OIYRcWC^b8vkmIe~qL=Uw$i7$Y}t69GE)LCQnIBeP5RR?ZCg0{IHqv zdr8NACih4Q-H<2mbp>7pjP@XK7ckm@z|h64lz0s=>R05u4!B0r9|5Kv*nUvAW}Swo zYMAz+t=7XQH9Fgev^j06zR^jWy89JiQ}>L7dARKvgEVj^?BecANMoH<(P0bq4OtVm z_@ttv{Hoqflwa*3Gf{rEW^Z<B`x{nk`xsDuwO7eR`BfV;QGT^QiDgs$LOdU+a&<#l z)vo-wq_JP*;L)zQPm8u>U*Ntga|$r7SAu5}FzhdQ62Rj%9`L#6*TS|ghCN+8TjIBn z7B&&`8-P)Efg6EQcEOMG8C?<|21XkdbmG4Urk>M*e+;bjd`|N00R44IN8NG{ph!Cp zI19|Qs9Wy8QE5%uf%Fu7SfgJh@f^^{Ner1LZK3Q5dx>^}vd~^`J4r}7%4#A`?P1~> zWonNI%OKMBg9mcm`htF>Q%~w7c%A@;9_p-XbDpMyhFOmR)@cPi##4cJ0iz!Y3_Edb z75D|<vB2yvEYn1dj(#N05AFjU{Ydb`20X_xfIMhpW09oq1x7gqPbY92FlCayLejqu zyh`GB;H|*0x!BW*Iu&^xNBC)pVH4v;i3frI6`1A9!tZqGyo~U>(IT(gfl=3#!#xuG zj)0(70Hb{i{7v9Kc-8)aRb5aIVe?gphaRdPIYx~g0~#IlaQirdS4leabN44%h)``q z!>ku^mdWFY4+BF_?lWOMx%4<N?KTDedW}9+V$=`!0Ex8E0?*Xws27(GTL_utU#wx& zi{RM~dWS|wnFakt(7PlZb;5q<%6Uk`n<ak+Jl_ST&ddvSC-9@dKZaL!MmZzOhS1x! zIrMPPJ4fECj~JPuJz-+bLdkhalZkd4Wc!&8UkyxqCgEW>foB0HBu)WiTyph68d2Aj zhcs?oBTZE4i8OA#&(YHAIDoO8Z88dv{v&V@7=2vq-DJLyFEG<VzS#E}0=^Yql?!|m zRKDO-<A5<w<I%An!!`4zeCQCO9k#*ONQ`=5*~MPZXMm?l{46laF6i5V(M|+@5qJSG zWung6PX#>#+yzYewAE^0)-}txPVzAABfw1iefW)%e+TeZ$wM6;2WDF6%Q0NwG%)p6 zb^vC*c*u`32;2^guv<qcgIh-^gIh<?V<OTDm%(GY!Y@fVe#Ag0A(L@C;Z?pmM%|RK zEaXAGmayy%@S}m*#v0+TkUW*Z<25?^fSdMnl0F?gb-*k;Wm1;P7uZ7@9pt+G0%@uh zJ&8EQuVaw^tTTZs@VGyU8NtP5TIK<-_G9t-KH^?Iv@4O<6!62l{0ZFmia{9k24E#0 z?OgDuK!<nv=ipvT@y`QR{EtiiC%_Ny@^8a6SMfg$toZvS{~-9`6+c<knLTD9u;k}G z4fWymncn43V7!v@d5ykU@z0U`^S}@9@-ITuSNv&U#s7%pUk`qGm%khRUGZ-PR{SqY z{tWoxUH+HQFBJa{V9D=6S*X9qa=haA_|dK;zb6PR`0;%acV8U0ynWQ(xCz%?H%V-b zi+!BEah`|)rQN-80i&4v15UqY8llI6>mwV>Hib9Dt!U3ttJtdQ&o-LeITDC&t=Q66 zJjz%8z@TkdAq%IU7-x28tP0<;nsY{E$FU{njH(Z?*TM*VcHpNTBRC}^&bNsNDmGPY z?cZ_k9KND$3?N0sKJnRe#>oKA>mDZKMEaa@>`q8I6}V1(1G_L|csIsJ<)xi`&N#}n zzn1wIpF;jjd#VM$z(L=!H!~J<3)vT~B_)*d?|{^5N*#9*cRJYLwXsKRml^tQS$CwT zVoP{yT<n=sr^B4LP8@^Hl<UWuVMCzXlfM8ORt)&X2WkJ8o%M|7F?ac$E$zb=#TNeO zd_N!KgzG#Kjl(bclX6AqL*hEiU()G`Z-8gt^1{RM{-4i9u2V7+pePJj)QUeCV}uN* zRq`+<3VHaU<9H+PT|@|fl#DNF7*MRUP$qRk|99oh2bO&w$l$Y|xaVhpPQ~TT>zhv_ zZi(P<{wO~FDjNY7Hsa4S@SMZuyf5{`7?VG*Uq~D4ZCA+yd6;wQA7fr$(?iT-W9oXy zA)ss}hzQF%a(ED?om_{ojes0WjecC<RawXrLD<WWGI7pS^$h^V#bAHl3zWg*eof#? z;Mo!%1%4D5B6$DAxpKkN2iz;^xIgB*rbWE|<KBqR6XJSKd*EJ3%x}?t^y)ef>>GnH z9ow9u>lkEly_IDVSjus)$>4X-1grp7HmH_qYaj&P<wv`9um1^P=X$by{-1R{xo%SR zpYffBqT|qE=z3CSl;C>O<?NI0tl)04wsGR`6!CYu_&Z1ZZ54l4iNEXk*V!wF5xNU9 zh1+F1GStWn*=HjgaH`t3asJX{iTk-HwB1s>BO~iGh9CRZC@WKBZCNbx&lHi1H0R3* zIG@Sl*-ViQp+@YgK82mar^G2yXXD<_pYm^Tc6K_u5S^WYPOR0lIJ)>6CpJ?Q*cjO0 z$X{gP<h7cN=UzW$`Fj>mTYRVDvU?WKUi>#IWI;DaF0>=x-wnkqzHJDrv*<E~l<3d{ zQ+WLf;EN9T;^aJ*#-YdU!+x{a+PbIMD0a%ty|K!EANQAa7P~3T-R)-FU-cU6AaYrB zvy|w&Y`61mi$o>&F$cCLu20C^5|b0w5uc%*R0Ubt*iEdZiK4doB?`)USk%VDI1`NZ z#od@Z>*~BbWGje|3Tzd6WD}K5*x{M*C2HED_)dm5wAC+axNWTSn=vAjG8fo|y6f_M zP2!Oru@_fqBQ%>L{t9g$o+Gemn-8xNc%7qhTP5{ws}X<2?%1}Jz-jTflYc*6sdir> z%T$!8W)9q8pDQ#9?X7<7g%^|!*yF5rXJSV?X=*onThx;KaNEW@+-*2}jvQ^%<nL_x ziygm$evkZp!1;y6sxM@*VJ#;AtS^pF%JGaVbugArANtOP7=IPJnZkKq`G<Kil4GKB zlvx*uD6zw?hwH?iubA5NC6ZuFRL-1&&0{!1Yqfc==e~mb3m+=_kM8CAkZoKG`Gxys zb31Szr&uD>_9baiTwqzcY|&k<cP*cbH|+HrHH`~z<*xwO1!A3*9J~eJd`EM~1$bJP za@}ff`&|oKTNa8XossoXd^jT+8)r4f|F@rl|3B)x7SmNrz%Q?<bmQO^2E2&v<ym;P zSJLVI@J!3=xw;SO0_MGva!SS*Ku{R)qSx^U*IXe_zgO%4O_%owf+^6HQ!<u<pfDh} zMS30wpne>~8Att)UYBR$-ekmkPh25%dBLX<-U?57yoXZqXah|@Pc_2p;FVK4{UZnp z176aIWHA8Bqh3nhTfn-!41%<aa!SS@Ku{Pklty`10Z?8*#zC%G1Wb9-6$}DoR0zLP zhG5a;h4&)aIK)#P>yL4i$NM`?Ug3)fSHLT$;_~jb3wI-#z9&QR@mIUY^({g$4jT7+ zsB$p>ygf9<>ml!c(3Mm2R9OAG^#9HG+B}<v?Z$Pu7iYb@4q=wpbqKTEu0xo%k4eIG z1Xw4um2i?7b8W-I(^L@r>{rb)tb~8V37b4Sh5ZC}b)1y<cwTsWUicSz;WzTa|DG2< zm>0(Lfa9F}Ot-#d82d(s#eXU<e4PxhgZ^xvGxOr-IAN1#&A`6qJ;UO0`N6Y}b}1Qt zvCtyKMQTCI9c_2z@5m4_8fX4BOC};2=kr4XzNotZTSj<2(~_x+m}D25G9>1SCVEms z(s@#ggn6l#-?c!+EWN9h*G9>Qkb>N(FtnG0n@S{4zNW_f<!uwhf&XpXmaXZmE{8*x z&7qGCjKHQ{HHS(t7d;*hZBINeCV)|o;`_V}z^FDC<Nn6Qn1gol7!8lra9qQaG(1IO zjKTSH&=*6NaEMcD$>RE;o;#-_R^dW)Db9nlAG2>OI>KtrTXZu;XOmVK<q~@)xL$&C z34ALs!rWJ3RszQ~`c;xX4s?`J@ZS!MG75hDawgKH*GRky^y?)LWhOM7lsw-DeHJjE z%NM~fmOPNhwM-$OxI@FMB}P6xm)_0y5lM%Qjm?sN9QbiyCI2bO!?Zt^JTrl}YxEa2 z`b(0Y0M8DM{)VJCfc|@p{wGOq1bvT2&q?}p&<{)cL%>IYm2Mc1M0u(IAaDr3(2aXC z1RXXrF^(u6?#U1s_A{>l<{Sz6Szl77s7qPz#9ViwGf|i7yUZr)kLNoII&7`lp$Qwg z=RiOw)vnA0nvLQ|`PDiZ*VNUT5ZBbzJ{zv7t9>?HOLzBMq>!W1O~Y)@7RwTbj{vis zBOhMt1>FyfGP)RLaWV84{Ioyxcj<M&v<d8&-|yVLK1ic%a>0Iwyv3P7osfh25$6Cg zFX$@htANpuTnsx2o&@NX8ivgUPZ#LW+2#41#IPCHs|3$#;8_~aB1vBZdaH)pHJ%k3 zUJ1;yQ%~xx#sT0M^b-zxtF~cuY5Sj$cR=wVKTF|tNTuZH7<I?9i_93}gTSoEN8!sP zo#|1Jf`=IG*2S=oi^ppi_HpSLPh6bP@HAlN^#D9<=i*y6JV(O|G@RCOn}$0yd=Ic1 z8^5m6VH1&8H}ZuY1kX6&ts2kwC7tEnrqQ33^f>4*Nczjb8A(UEx!x<}{|0!6q}KrN z1ZJJGysvBYKT1rQdo-NW@KFt)9>S(a!?uRe&PBN(lV|KG+nP}gvrefG>YC${Y8z&3 zsEwH@ziML~i&VekSftt*$0F6nOqBl$+6<0kkvlF;0YQx$8YZ8A6#f*#2PF;z!@J)i ziQxLH?(?9tI~NOmL|WDzyvq-L+__lj<9@3pA^97?5AX6fV(eA&rvp<Tx<!&d4Giz{ zx1zj?za3cdcS-)$;D>kl*Pt&e{&m2L|8dFx1o+`y{%xoi#s4(0;OF6X`ed@ZHi^?Y zCdA`$?eC;XSe2YG@iP;h$>fi-HaWT<It<Mvk1;Ms*ogbG=}(%u$Q?J}jER;WE8Fs; zwYl>5UdyK6I-84hzrd3yvMsY#=E{Q;v+1{w<RZU#qi1qYBhUEQH32J|UDfvKm(FHp z_?;Qk^aC@Nq<fN2rne=#)6XUEOW%;bJRPrHoZOe5nS3L?B>8Ik?&R}nYewpw-k6pC z9X^baN{5cvrDpQziQbaaGww<ErcWmJC7uj6CAt~wNf}LyFKlA`QBSE^+qv&R$<Y~` zXM8j9%f#AXQ+h{XDzV2-;qULs=@*<v(~PHTyA#hPepkC7@#@i0rRIAFN=~KU1b=S; zyy29;$!<DQRB9gemYN59OHLd*P;xS{ea0_mJXibu^g!aN+UCNha8t0U79VO!Y@{yC zojEXnYE!#oMsCI%iTe^iOl+=&Cbiv#sr0{IQ1+S`CubJb?n(bK{mb|E#C$^bHh(I; ze<ay6Lv_~7v9-^qPo{sD&OtUxS=(_T*)wmLIVs&=cSY?3wRhFNDfRC4r)o#kyRNbJ zzS<wooLM^%Y^t*YP58V^Q|+U);LIgQQN9xgN=_f~m72$TO9txFwa?Z5viAEk@0q!_ zt{nW8{-$s$&_r&Xcjjiny=LZ<wZE_Z@3njCCWE&zoT`1*(Yf~Y`PQ!8J@c1!->=;_ z^SQbv>Rk6K(xm;VIxj6!d-7-i_J+;R94I-vueaoAU3pz+I8|rYT^UN%t@WoWnvS6E z?50D#B`3p8N*n)%@MCq8XYQYQx~{Bl+RQiVP%Gen5;B|Wt_q9R#M<*W-C~C~9<@r% zy4mj^DCvjBTW^WfZTF&W)Ga}ZS5VTXx@kix$V<-PmRoA-I?wdQe9$))Y)Y2bt=*T4 zSxD0oN+rsZRwDAfPI4xEw=^a!2j7ya>ppl;r0GPuZOQWb8{a)3!fVjlBT3&aV-w}y zyPI}QShut!d=9?l?)ucB-k7g$J5qJS??B3y0Vm})C#9Bdtx8wlc}vd;k*)%*7-`m? zLYh!_-7B<5o|fB`mi0H@vb`R;*i98o^JKl?^`f>Dq3?CD<=^tJtP|Ep{r38nU{if3 zds6)`?NlV?P2KVadkOhe3##9J%RoJPM}2o#w6rqt-Lj|tM19>+Kk64XIB=k3kadXM zw%bjS6x%}m>~N|qHOpJSq`|`;%AU#|%AQ)^IP1z;W%XaKf5mC(^}Cs;KgC?@SI(Nq z*28|vTAnp+t=({S{eAV#_4m~GhEnwde#o~|^^Y=V<~r-vwPloZ6geC`P;z2c^V%yL z>gu1WUpufTW`$9HRo+=0^&1*|{-*lp)=p%ZRg0VTz}ji`FE_N*|F9u~9TCi3$=+E1 zLc`UCP4#cAy>(a~KU~|~@Xh*M{VNSM>>pYlKdJv+!;Q$}<k}8@Q-ftUH7qHd9h~i- zO)Jm>vtDlao3;1(Z#&L#4&nU`r48S&KhTg``}g*3g|IH9u`ICEtlzEO5V`FnYvf?b z(OE~={-j}A!`g-|c9Z|MhN6b68n!X_WBX$^w4R-;%r@WMlPjJ5&E&LNZ^OhHWew58 zMTYN`utRpi!SCflZEq%Pl6Myd{5{FGZ2HBwa*>BG^KTCNs~$+snK8D+JEOeTT2av9 zuWFo8Q)^e*Gp4oMwT<n*+LX<;EMK2hT7>VpZ^vqrb>f|vFVcek<ugVl`Vns%zW(CU z(Wm-C*PMDMX8F_J6!{MON{f!YTk?FLT{;@PffM^fV+TPyg+6!eaLM!U;rlOTDcd~k zFCFbQ2i^^h3z`G$k7h-B5BN~Rw@aS4al0Ed61^eA$!U-|9Y#)lG0T&Vh@7&_DO>V9 za`7g1gU@gH_8`|2Z->U7I2f~xbeZ7mBj0|(7f9>?U$NoKBKLu8XdH9)r^AAeT2e#E zD@bg2^6g{3`<;9%WWM{!_l}cqZQ99qkog{V^7W3C?~}H#%(tJpzVjiuc7MEF6Kic> z#P?Bore#?_B3Cp0rtJ&+MkuM5^}*Um_x8ai=a<wYOR8BUkRD)3_pqdIJ0<lx_AOTS zt?fLC`CzA{`@N;354{t*>JaKx+SgX~dK`Jy4ln6`)~cVi<yU#ucK7=X6Vkk>Rn}G( zwS`)hxmv0WiLbFWhDTA0{irS0^oe(z8e=&QqwTWhYqu4O7NVD+LbMN+Be;rcpD%>X z^j7J#{v0i~PqvL6kc2kL+*D4uFF`(fi^LrO?3JUv_Q{r!-x`Z*dm#z^ZCD)%u3`BN z6y~*x^K+}SoYH-Ges$$6-G}E^SLu{aZ-pb|H~FJWSJ(J)N{73Sk1k#MW0bC-?(UIG zr`K=Y+Wg$ktKUFf56h<aE>V8BowJqKJ;}UsY~}l8D`&k8YvXm#(}smUjvo=<3AXW6 zqM2<xTtuDNsyW`UWwWiLb=!L|GJ9vg|8~iC+#&e<$b+p6X#%RHc~UvFwCrMx`ehGa zrurV*u2Hw!kM9d&bS^eL?4xJ;4C_o^&=+nA-k9ZxpDo$G7o$I<dFp!o7F#)5UlGUO zw+|ZD+XsWV5(IDD3*H>~-rrNQJ?rFNbRruXTQ{&TXIOsUQNK~JFBkNcfj39F`%1R& zcjOk-TYhV=ql0%~PiWjh=x|W#uphh_Z+!2+Q?fmWyrGBp)V|O)_2t=Sl&19I%ie_+ zw(qEI*zZbR)RhWjhS0md(za+3^gll>atIn7lDbfD*iq=+2OVg&f&HOz^^^BO3&_O| zl6_K_LGXr(-#=Wkz5d3NmQl2qBg~%AHQ5EwB=qoQXP`-;(BzENM3q!(;;l~=TC888 z32OKtG&v|Wq1HkZTw~cIg(esU>RS#$6Uc=ohcr#72U-<NSXAFxXt9T)W^7)esEMuv z^QXm`H!aB4Rlk<GLoTeM>%eO~^<e(>-Gvr)LF*{yh(t|v9hg7$VBXY&dDlPrG3>DY zKVXMfKGF^a^}8=@2ikzGi7iRk>_DNoYO?&a$Gfn`yRt4=epPqE4g-avZ?g_~&DL9J z;;-2*!lPt;*leY2p|FDQxMdWe9@zSdBIy(Fl)MmX#I=QOq^JRBQ2zY)x#+74!W_#u zDjdeBa1d9k{L$QQD9@(B8+mmBdeG1)gVDhmWsmbplPh_idGor({2Q*$HX}{xs|#$5 z3A|Tw?rgM?EucmM+>wqxlnY(ea6R+4ZEq@K2knsEaO1E$73Ak!{ZxK~MNWPP4~MR# z+=Ix4qf<DQU4XnpuP$h~t+3c%O!>iL<`61Av@d3z1g|%B>|n|BxJR~`S3@W2Cx8(f zcdhO<68SlIZAwpGZ5uEe`+X<TDhCca*GNYv?dn(1fOgAkq<&3yETxye0poFGXgqc; zuji(uHoU;Gz0hXum)Qft62d}a#62$`kFrq1Zj7FRYzwSW{_28|#nGSl0pbdP9M8Mk z^sAaa4%_zArn%6S$NFHYT+lv9i`W&Zpgrg*9Sw__`woY$Q0-_REXzBbh`4KR_#j-I znC373-aWzM296Yg#EqOE2&WpF-aim4Zm3aOt$p=WZ){Yp)eqf5_MyJeRqg&mcyb8& zJt<`i+ul=vI<((?JM_tr{Vw!SsVh>6>k{$rwZFZu<Ve<M6tm=o#cYki;zVWQ@=&pA zhu{0^JG~|E?<vB)74FYi0&2ex&kK$f*ecj2*jiB20k)UJcpj>?559|89%y9y%TiuH zbqe}<&ld7;@Yj}iSQXY|Y*V9a#~wQvx_Sln;%~5OYueFHzU^E4`r5bGo~WJLin|?a z>w{Lc9T&Uw#$L30B4^SZhy8i|ovHBpAKZgJ>+5L>T|Y3;<sBG!#(V1d;&TH7FL<%D ze{ru>_6dv!R!<r``5x;H;4bq<<MZ5u821kDJhykh*C@_mJn8kCV(&cn)em|vNifd8 znK9gXmizU&z0MxWz8&X&9<0t{77{5(@g&J{qsTGND`O}*kg=4On7g|iUk=81gK=`~ z`qXC!wiky7wp)>tzDv&aSp_zB`FnnF_i>*+t+%+?uKFPLcNsGtZ7j}M{OjzPYfbHm zn0$vJgSZExa_?n))M2a4bJ&qHc1TWc6y%(0`T}^1t8JVoD$eiaj!Q=xzfT%}z_Dm_ zt3p+Wc3&~1vqG@(;N^d-<}I^rn6VuF-fKxq%~{4rB}d~)whgnEqlacKlXoQlI{CR| zW8|^WqufatUSGB$y0Pk%&n}jy=LSB_8i>jhVaN0I(ZT4(A*=10aQVN49t-2E%%^{T zZZP{rBQfw?aU!zCzuDO{imxyG`|L{+PARhKov-C0J9qB4ymkAnvZ5q*((;^CS8qAf zIwP(04s4xq_l!09v#m3FW^9WWp3a=xhOgnic=}(@9XS1~b7vwO`+sq6_k?MN+^y)5 zzZ0gZU9g3l@nzXV@rp~=l&%d~{2K1FYmWHKtXMR5SpcV(j(^#Uot;(36P8s&y?C<k z_^<4~URl}s<s7fEE?JQ*#;LK72ESdGNzJB}SbF}Re(794dxA6jo51&It*zEZwmoRO z-P&}~n!boJ$-l!!Ue(r&)iWyjl~#PQcPrj9c{XnE50rZL+67i*+a9~XSN3Gps};~~ z|ITygj2?UQ>0g|C-1#zZejd!>V#=Nq*x~<7#+)!6(x*WFBTVPrGNUp+jy%`?`|gRS zUp}`cy4l}@90%hSq)uqWnaI{q&C0Txv1^mjq%R(g?#BBw{XE^2+*N1L4zUVDhc@sJ zNni4sWHj<<-DI3;Z6q6$O>ql#@^rEW`tCwaWnh)wLb0zjQB&2Qtcm_MQ8QyrqH;zW zGP`GV#~Tw<XLLS)-v>2D337V;gS2sH1m{G5u-Hf^Zb(dxkBxl$pYAQ(`a!eN^5lJ> zE)iN!^KNmz*IRWaVWlFhwRoA;J>f?0W{+&O6R=Cw`AV^|+1hex4eCA>-og5=I+?Ki z;w!?5Tm9WlQ_*(A{)m5bGG%N@h~2pfvEw$;=(m!MXbVgAam^{cDF3yme{*hq5brT1 zD^`WWo07$$jjIfl;0s|<VxEZ1_llA=;Mka~3~of3UqmVYAL`x)KC0^68{K>I!DKRw zQ%vJzpuVF;8xYARMj8;?0Rj#m;)rMm4TL~~351X)0b|SU$?;GP6a|%!1akUXFQ+f| zaC*5OjxYA`_D);siAq~eo7!M$Z;ITWh~Yy;oIp(8|9|bZ_N)v^>-oC(z5DlDGynCh zXFcm#&wAF!{#>s{4_Nupr=oMBufjJ@L}OMS#zFVh3S&-mL$n$aO5A(k-w9ap%#@jN zcQ^XeP4`TGjXur#d&LMBy(#!>*lj^UB0Ls(7KA6Iw`R6k58ExZ^oznfk<%xiRiAt= zwI0}?`W))8pLGa4$2#ObJ7zazO-1<PCL>u7D*(M;kG4dsqI*z_H=?D{SD@=l(T=4; z7i$!B?S+5g8`#X>Gs?_ZdMC%>?ol{fX$y8u{-?}VYrblof={6N)PjWlzEr{OU4`yl zNg3X@%+}!U^!DIeu6@>g*2lBgyAP7YXb&$0ziJ2D7tuGHQIpa!J2&NR^1&}}#P^-C zAH4thKm0as#*N9NPfds3@hMrjPw~?IU3SetIdlKf`+stO)BTt3e{#w_-uC<NVQHvq z{484T{?hwb-M{l<TCRyN2Tug|4y0_(+-Hw+h<Be(GhFxz_C(NI5#O)AqFrz<%x^s# z#;z%u=m&@5?%rdAgBbO>7yBUkU$Zy+<7tD3@CI44&x7~JT6i7$gABY4_fgpGDW>Jz zy90ZcX2wm(J(0OD*yU;m+KG}{tm#5ac$2ryk3Q~dx5PJwt;~W?IJ1B!VYCKMX6^%e zA-&z<@AkE&w=)OxTjL5o;ZyvRN2iW;%C^lmNPRxrtJ3k$Q8GUnzn%|Am-zOlHJg9w zdLr$w(vuqu+f2Bp=^O{H`7Wlo_wJ-070+6a)1I})%~~fF&kEq%rL%lZPndt@+MM>y z^d~c(%6x|R4>f&^OJcv{9p*^-=)Ao`_d_G{>Sd3|yLYpE-iXitj2YpE$kHgd2dfU# z5M^&0MqZ<Dhv^DWPLKMwnM?2}fq2G3<ui_nd^Ojq?0Ujiw}ge&EE1Vg@^y%OrNiW_ z@~yyUPUrecSNm2x<SRwKg-&UBW?0mF|1f%DyXOPuqRHutd<XG|y|DM2uEikXOQ#P5 zF9ckP|9|T<@Xq%(jp4s%`aopnlzFw)L$*&QZApE3Z3Di{yiR{)oe2-t@w?8c)VbBQ z<uy7{-#krwn0<A1UBi^(sb%<nRQ+n5|C$}wv`kK#o}q5#+KSbMWh_T0i*oTO{ZQ$G znnG)=X^?FHFMV?~J?RhP`2<G!OtMD*!coNO=3I%IGL3OO>m=fM3|Aa{{zE^=%VQFP z8{yCKO$870WFqjOJbg7LS0Kg|&~^Pf5LfzT$TY_1Bk1xP@eVYexo{38V-6?^1Ad_s zKT8l;UydtGqr6oJn!M{<5I=yR4kcqb2nqw{=i{dxf%5pwwvzWauqH1D&vfvcCeEQ` zK<^>)jv;;qf%39t8ufbyL6_HycoTv;l)Nn<C=57(bs!(*@qJFFQQqGmX!1T=f%qi^ zbtoAxfS@qo#1MYs2$aWXm6g070&DVeV~A5nbtoCHf}k+q#BTgtM4&uAL$Bn$4Xnw# zp#<^q2<lKWehq@cfVZ8%&kO|0<2MzV#`<1B(B)OxQBdte$vBIs!hn;Q_Y4B%eHKB= zGwH{gya42h?_}Ul98!jOzFU{ay0T3ukIybCdE<aJd3lo%??6z8lBe=W`t7X%hY=`` z&!Q=L^fz4|+SX*7s6)xS4FrjqG<hNTLI9Mf#tPVg-_{cH<Qi=(`1E`Nqdf6EI?I*E z*eKp_7_VaZSLNQD#7r%y0Uu?uTt3T1K9*aCe@))!*k5QXb*QwI_b)!T1KHRn>QH?A zcPS!V3ifkBN8|Gds(t;y?8|CQ1H82dKb;8bQ1Vn<{X6te@&1J-UlgXbgNSpya}F?b zymH%w>vK>E#+?J{)Y&-@=lJ0qh_nAY2jc9%&Ve{>=p2auM}L#_bB=HT$Y(n{2jU?_ z@T{LWrjNmcazI$q+6Nm2$L;o?!H4a5+-3h62f)wz&z13`h_n7|TOLh_v;L(bhOrKD z)_;wR_ae^ve_h7MBhLDN(~jdC7q)*qE7Mi^|5e71A)S5mdotdEIQ!$@+i~%}3H#GO z%5;_g%^`6v8}Ne0(DjhBVoJWfz%NlIV|<rETPYFR%OkN0*@(R<*4G<D7edYor%Wb0 z1Vdlv$TIMCbiTczEp?prjat-*{Oc<293l^KR*(IS;|%{f=M%G^pb7at!S(3p*CS0} z(60AL9?+Pko)f<wY3kW<G1p6(I_B8V&#&@5eLj~ip38m#7-NBh>m}X~`X<T07kH~i z-!18zL2n0U+s;DxHiD|l3rXGh{A1>Lr13a_pm=m_!A0p4s1u*R<~I!ats{OvN_@8v zy3;;_eh3(2F27YM#`lH5%v+4GM58xJI_vv{q#ps^reTb6LJsLKYM8#N^n@PjS$lr_ z!5Om;C!f3L`wGhbVlAWc9@XTO;JluC)*wJn@ho{AF!bYRhs8O{N=a`-ycU?YU5-FL zB@<XZ@6YeZsptL0T1N3SY5e2R-D#^HgozUO0;A2cS?*~B*umj>LE?*`!wwGpI572p z1>u(xKL`9au#(daOr5tO{1HLvgR+&ca_!^T3S~IHaY^IXaSq&q^5Y1oi@?W#Q5P@k z)r|l@5%>)7d|>JsMpz>8M&L$?D}Xmke%b`<M@J6q;K=!|<ZlNL+ELKSkGebf6fo-> zLijy`s&BVeN9g3#9r@Ke8L8jgbMm6T{05_td7~yXgzAq+oCp6^SvvOP*=^SSEW#vU z%3(XgADnLqJ|S@ebhMNBZs9Rt)Kl>E1EcN&ljjI9WquzaF8SH+T^dif<YBp}qxh~M z+K2DfIC?@4^_@npr=7Z>497kw+j$=aSyf&Ri3)RWbiUVzx{Gh|y^QoVz-)`n2u+gb zDDXFc=|AMzE9r6I7bU$07<F^L^+*3!wng0?ogvH76ZsweX*<QQ<C`&z)Be;UADA|5 zL6{3nePDa~r=L1kAgqw|R$%z6$QuVneFXnQz-SkTj`|49GFgVw0oc(wK2%Rf{|=2` z$01Dh)bmz^B4FrmmH;o*aJ|G4(9w4U57Ie?Ft1n-!?xm^ei$1#h6p-*lYQqisJq}f zWz#u7@VzS`2QvAMGJ&JOKFM<s81__UnS~O=e&!5d+VBwYEc{D5P;X@iz6<sF@kqnL zccE0<@m;9#iVj(h@5R8V<Y<`r#rMRZBj;#=bAS=lH^=yn)UfX~gd{)9LvZ->F$M|; z2YnK-TDw9|As;$&t>*AUPv;#4=;pkmP$T*4z>nbYH)38>@|%E_{B4qd2lx>j{+*b2 z6n`tQ;y)z$4}%}U;Xi^gU-85DoV{JqzC!<Q@FO_<XE0_e{vKc{-*nsjrWb95p!iKc z#zV<(<^U`HNs`|JKZ3(wgz-o57XvH)3dvsuegucV27O=g*8wa3cFF$&_z@ib{b+i{ ze*jqVcS`;)@FO_<u!HlxJJ`Yg-W^tng?CO(zV+d}^D#wx+rxhIL%j1*cxPeJr~e*Z z8tRI5BrJg=AD%i|+|O&3_w%0hKR4@Q%KbdtwHx`Ko_mkD=Qh>X;lVw(BKP9-`wz(b zd7E%`f2Vyv4|no#KM!~HQts#BUP&wN{4{g-J6?$&?w+2wUs&qx@Zo-8p%?e`jxJ7L z>^H=YdAJX1-_!d$+|z@e!Mz^so?f9l`q^Rb=}oz5H13eJkJ+;+$G<!JHtr=H+vKw* z1fI>^k<%XaMLVKx)P;AgtSoWg>R)h==fKr!V+O+AOE2-Bgq4Z=Qm4FoP=gcVPS4%A zCpSaf?fHo5VYknn$-6zH(p#<RhP+dPd+&n<pPcJD<bVIIAGzf{pV9K359CoA?j7}~ zw_=yrHdni`&%R?39>@DWK6TdzIYj$8Kb@cAJ|&n_?_cCQ0<abk*S?PqbM4z^vOUJe zo#Og>#W2^`*Z8W$25S|oeN_+p=xZT6i})S>UctX{53oP+-57OVhJK_@t+Wf(b_Ywn z_^joTSE~QrpKJMF>U%90wRT9C7~`b6wnWOP75E_^=2k%`AI4kbJ_L?ynFu({@%X`* z<{V1id{7hybVu=X7=iMbSIMgc*5xG-r%ZJy87n|g7%+=?1_I@|5g4a_n-Ju<3uN!> z(@G={CF3!~6$Z=-;|F88kmtd_lE>@8x;)ll9D+JjTFUh^*9kB@r<m}s`1tQi(lgE= z$&Wa%rKoZlPq}`Uc?mSkLC&G%IRptD`lq;lrs*NBC*cxO@<2qhk4TqoZu20Wc6ScM zslRg|&h}8Wi(_ng&NVDn5(n2$;*jxaDe-$`yc79Z{^FGM6*A82O>SOc;e@%$(7Led z_Cv4tBxAf5B*y`HEk_#_hF-wYq_Wr?tl?0sxNZ%f5V!;J$-rFGqiuOTLf{_Y`M_K^ zhY^-YEYCRwy#n+W$=?h7oWzs^-*n`BPv(6A^ti_VmWI25x!xU*a2i3bQ>jxnX*{5l zS7DSlTH%XGQ~Wwcy7+zt>o^gZb=iS13z&A;iLe-$<*r6pDd{f&Hv!Wo#}T$kI&8r8 zxI;fG@d?mhLr^-PJoO$i^Lvz@;B)lv)cAFrgRzX|h7eNDlN~vfr^?bX$YR}`4&av< z^4RXq+ByI`t3F2`kn22g9gR3_2Zz4|byWNjV8!1k<-<<2mBYUY`YZlsV8M@VW|E6S zEcl#tVd3!W!aIu8hl)SVyTDUsK!@bIu*RrHTpY^>__e|@-}di`EsPs{!YH;aZY;%@ z3zue>1!7mqUcz@BO{?m!-PSbAyFH8FGK@`%8}Ixg-i&9$LS=!aI?n`$=eNlHhRmJy z*I8CzO#623*xej^1S#`HijWfXF85+5WpB*gcf>UM62aNa`(xg|tHFih|4Q(F;Had{ z<a@|`nlHAN>#*gYMDU(XTEX&xzWHX&@=x$vC4MW!?~3K0aEEeGW6M9e)M1$25n~mf z7XoF8lNMe6iL%DX|JRm@eaLH;_v5!p{8otH72-E0ewT<}Xg;!3JB8nP6njeVW+{-^ zELNx)__AhZSr+VXSZ?eE--6KWZ-))LVf}9VIm!zQ&E~j)X8^_5B`xoTxn>JF^fIrJ zziC+cn<0PGF!DF0$lv^D<u?v1zX|dihmqfyBEM-E`2(=e?wsdg9}{&SXv~7gtiabZ zjl}zA4faH@N_=2eEPb3lad($B|CJUzUpg>w6$>7$^)0uRcQA4AT|AqVSent@3=jII z_?^@Jml%8YlFxpg(Fz>s=y`qcs^xyUrRS%ESC+a2-xK7s=0~#ar*Eym_d3o>u7bab zeMa!yG?WMF{k`tb42*FfZ2ch9^u{xv@}B?5Y>bKW-}y!J0DT@>*9gDQ?>l1TCa$0! zm&^+Pw0PPbZY%4RmRDZ20<Rpn{L{hyrSRj}R#DP?mNdLBOVh!%d8j5S+KxeQc4~sB zzxplDp{<AZLf<RcKOMag-WGVd1@XSK#|INHZ=K>ff7SFByh%%f+Jk3;k>9qLjn$6t zBhh1HhH4ad$8J%S;p8keRjMv|I2^k<l{1!e4P{~~g*8FHX{0s1`&Nr5u2;J~?eI_f z-hkeB{yn(U6#e=5K!+us=j?LX(mKsRD^s4`N=<Ak`e-8bbYLgG82|j`*9I@rr(@rY z8$AiLA{M}xQagJ3%>3HyU{~<1+Wd$I|G%pD)~~J&)J|KLTktc;%P4pnewC<wz2}PH zJPFPT!IQyXHF_IY*G`LgBwsrD;t4PIybp>eI6ZsMzd6{2XLK)89}(+DtS2a*>y5jW z4WMH@cQ^dDCUMp7ecf0~Q@cnus8unHRI!Mnv3EwYFq&0xW{E8n^l?CwKz9d!3(dNE zJ$P!e{bHs$D&p~pYXk+qV@(2I<V@7-<rDv=7i|(3vRmS&Q<CY(HY0elH`an#3tzU4 zWX0WlZatC}amQ}Eh?^20WZ&Q)E*^KoT5&boQO1x!IS8um|C)ch-TM}pMX0^_KCa!y z4t)~n<LLp(_LsgQdtlw$7vCK0ZIk{{=<)AUSm}Ybz;~gUAH6oeZbF@RSzfI4Lc;h; z->ZiC{>g6lg@orTuw1j9gKft#l%-m062}LQFfX6G$CH|VfiX&Y_g#n>i3{_LUTe+y z;{)QEea!W+zw<TexY8i`FZ^Op&hE?59^Y;@Hg0X|@=v$(B~TALFUB3tV%}ILuJm|t zy+iokd3d!o7M>hg7GO=hd+WS))4cnZ<t1(3IR%>U%z56*E}Wm)em>pE5cPg-aL_BB zz3suwe)li&epGtgeI_e_1$0i^2OWb0{!!;0p6j-V6x031xG{PwR|S{A!S{9jcXG77 z$b9BgUl`p|(DPLB=q*F?W5v)lop~&LWguX11#!M(@Ty<zt&r1Zm7hj#&OPVjg997| z?WeX;(iW9sw3AM~<K}scwNE`hx+N5Os%7++xO?<gO&8ax={apvibXk)$XsZl0g)5( z>=D<YnAg2)1%&RXRopEkFBOuj$O|p6JQX3jE|GAH8jcb*43L&=!J&x0Wz7%lQTo2~ ziyeqZvYmFEM86tB*_KL~!d~0#b86jp)JX3;YSNdQhnAL%{eM_)KSti&_+oc<+{pVD zydj%jgmuGbcQx&b?5f%o+m&Ip?7DMT{;oi5BisL-U&Q;ZfVE}&*S9a&zIOW~yNY+Y zcTL!pC+HbdvUbhcRk`cIT^mTV@^|4qn(fnLQ|TjlEtf@0<hAv77%t59X5OoL2i||z z-*O3`NsF7Ix!}X-S8&Xp8@EpaC6|=#pY1t5*q_&y*8=V*;zsXJ3>V%*b@}gzXC#in z^D=64?L6Lv+s73g3(YS0$WtiB-Rqg(@@$`;)s`i5hd!_J_PjPYkh80{h%IWbD#eT$ za7VTm7rd4#WpvwUN@&?0`Qw|0D>hb))bP-}*1Rnr_V~AKUwRq!`kU%8#n1|U3}*yY zX!ZWQEq8a(Qz={3UCqn|z4Y(E^NeTpW%W@0Sy+Sd-Zu<)Y&uIp?GxnNJ_$6hN6@xk z59%dl6VB+D9IJGH(=h(EcA*4i8Rl2E@j9N2acm^Zw2W@EErXe*-*Rt{iPdg@%p=+$ zNZBIAu`^`lWA3^>ZpJYW(*CR;)`EVX3#HIpHqGXaWeS<O%xQdzL(DJcDG%o9My~O4 z_hJrj@{2JT{c-^PQ?5h|gZ<Fnb3n~s7G~#&xITTp-xRBR{EM>){EM>{{O415XP!V^ zQ;$xQ9L{<t9@yPoV{RjjU$wUa-PH%;eG#L#Z=M+~s=DL#zKFS`Z?2h-cr36tAT_|s z%^hfsqa=70<|V(F1&6Z&>ail{+n?(S?EdVw-jB@uVAtnf51#zo5&XY||5mYzIu-n_ zb=MkEw_eOeQ#cpJmIa6{4{&kLzGZ;|z8khe)dzCpp=CH@9*fn?ZE>UEe^8St*}+!U zCAd3?xowJARjL%yZLDPQAMd4n4)-d$0z2`x)s8W{{m*Xt{H9Tx##n12*<(b@Kz>@> z$ZW+MJKpp*pE$?!?(0Ea(px|J=eXb3w#K{WyUTKW`ptBfVOzi8ldi&^pAH<M9Jy*X zv5w65?8DsJwk+>#<_+QD>_weWw{CH+waZ@7(P!EB<oXILI?U1)!>sh&T+f}y%5!vA zuxm8zJQ{W$4Lgr+#s3!Tw&2M|Z$wyy^L)Y6b=h^B?45$R27skIumYgfzYZK&7KmkF zrtHUh!5cRo#|{DV>Oc-`-OV*8)|XiANo~X$kn1&P9f<XuSWlqNU%l1Jv!*Z0wZ=l8 zuoF^hxIVSqzP1QfSN2<C!><4-HJNiHyU})k>JazgPQkLz=j<A@8*hKE<Sb%kdfO-c zbyuO?+JWb2ZMEk{#!DGTIGSX%eS|woR<S+HTbcHIW_Z)4!$^Pc?YQ5{@)Va%@1A2U zFKhXz$M5~X%X$9GJ!kOFV%k=&Bg)2F`QktC<9ChpL^{)zCDPi`4zLv7wff|(cv`e} zT$>dL<z2+1Rh+H9d|BABVyU~#11WeQq%3dDnjT1vbLCluHMeo@6$4&+K4B#A#v?}T zKfD$98?C1UAzYa-_MQ&9jp)R<S@2V%E&AZ;Jky9`&I>>M&NO4$JH^KGTc@-9k5T@+ zzm5Cd)4Tr)>!?1QUreAi&K)w+DD$-6u#gLH;E^i)<PqCXR1GNaJxF=yE@L^~H;R7z zuK!!7j}Lx_{bF{2W8S%cFmV0g{7(jsoWE=qLHkY67t&_EE~Q=t1uKAAZzF9pSFp1N zX7vVtpVJyVmATi~uC6B(oU?MV&j~DZ`nAEo$KBJ-Q?Q=3XWnpCX;U-;TO2@%CjR%^ zWlX_4llI)2zBjx8>$g+h*6>p5#+>$O!FpO-Pro^M)mf7VxE_c9ZN(XyAGNv4931&s zdiXY!E5-@Rq`dP#9c;IId{QIMR~Hr<2RvNc?=SMOY)Xl{<rrhm>SZ6pS$?yq{Qzp; z;{OtA|N5-A<8IjC^;x|{<HY#GTA_6Uv|OPF+I|R$V&@I&pZ0262ix;Qv;_DnVlCub zD(sASKHk)t6g*k?R-O0GKHQrfZ+Wb{a9)b{TVr0)vXI?fZ4AWnKXBjRpZ)ORmT;A) z?R1{YfYhwnv7S8B{XurF`_Mk5y(Bcr7j|>cUi$J8&^l(9+BPgWDq22fdEQ@REStUb z!!^e8*|G4N+lqr-vmfuSYI!Dj5>`FMd$IPo2|Ho-Dcw-;J9rAtQU<PIHPM6j<lZ$l zrPjr><Fwz!K7bL=%4_sy?%R+*X792<a-?8wt+g0&^Ooh!#_Q*--RyjN%f+7>t~=(d zcWBXbLmUgRs_Kfn7Uz%Ng14w=Lb5pXFUwk-h4*>~@NVq!K{4}s_AdShcPs3;$+Hi= zxJq~gd&nDuKXJ>mDq6(A`)^o(=Zf_0D7(~}h}Qa~K(>A%&Ux$=7TWl|ST^;;^~NCj zR&y+?%$-w3%DSp^M{wN~@@6G6_XfLs?ZMx&AIwV3dY6(5&UHgJ`y+Z|%QE2=qUMj- zH4oo~JKoX4`L>@Tg;(uN^!sJ(r{29E_h`K|6X%A8J?67)oICa_4`<xUK>ixr^DsNm zV{5SfL<;&@uRZqQjAu#Ief|yf@z)32Pj?J{7~OjQwSf-2!`W)Bsr_d7TXKbqwVkyl z{4Kn-c)~tg^X{|Oz{YQ|R)wB0W?W%8@G*vzV=^Thct3HGFZlcL4~@3q?~6J-`{*sU zAE6i4;9fu4$J%PYo9k)EnP`Qz)!t(#6YtJj;@n<%+<}5~xH8yu{vuXphNumE3VkF0 z-CrN_2fJ`R@;kVK^A;(kk30PZ*Fx=@59u#!4!6v%vhohKg;&q6D&6Sa`@jF-(D&@o zl;_{GtI<c+ppVpWl(DwTK2r5z=a1a)SEH9ydG@|vi6>9@&90d^j&%%Y&#o!-6wDBK zOZabRSBd^p<J}uPCHl~>>^g_v<S0<+vHh*!cfu<$+uB+d%Bwp(^WVM|tysjTCw%+P zcMNo(y~Q;W>3iOSPm<o}g%7KA`e58WyJn~thqDVkTHCOlMBBvOQ&1-Iius;-r+BcQ z-pBT~*4QmB+F!Of=JkE2$A-iiM;Pb&wCx@9lindb96r7*5Iw5TIRC;K2eTN*JldJ_ zm_2jJk#NiXTi(OG<|*R5X61)#IfqiZXZM(W2K#Y`cQ5pG`te7<iu>PxJN^XTOix&O z;i?aK9z^fg@`i)p_z`-5Jw~{rT|mxggPLG0u-hfDi*;uzM_$ifyy1Hndgfd9=qpCv zox^z&{O94)jfY!KUvF3#b+1n|{^gH;Z^9mVm%e-u648?>dv@&5KVa<r>Fm-WK9w@= z+M_PK<|KOKkzl8{jo!oY*VeP(ci~rKk4s%~C6P52XE<U+K}m=YB(S;`Ys?G9=DoqL z3)9Sn!IQuX1fDPOJb@$jdXs&Uo-3^Lb&g0@?y|gszovJ-|LeF|wJ5tWh4k*Z_ITWz zotp-m#bL|uz_*W64z-|Xp{Bp$NN&&hxI+Hs;Bk1K7@yU6j&U#U*$d9^*dvao)!XK7 z?_OgXh4ytIcj?!;P8qsJ`4Fui%{%uhS1PmfLu|DU|K9ssa^Ne<OOP`51~FSi6E~#H z7SWTl^Dn+(xVq=twJ3NGdc}nexVBzvubJ$%v6U4(IfmEU#MmNyL5(Un!w9sUe{<l- z>{$1jmS^m<40|jSJ^SZ_OA522zH#l895=DP=oNJM8EszYweC`OPl@9WgYaf?Eig4t za<<}{M0x{OX=2UMELUp@=-q|6=%lZGRwB73ld{M~kGE%}BbbrUrv5hTF56?{2JHP4 zcp=^@7jt(t-fIt_S7ZfG@j7|tUS1_<9_zM3to&iU%{Z&rz_sw%*9<pP)OBL4O{I=% zm1hO){v9{M_^z%!yT0EU7b{p?6>*og_;*E{N;lYRG@Sp!pH3ee{0_EJ+j|!Nru-~! z@`*5cEl1cm+;lc8*IgQW2cz^mRmSpCe2d4wnc4*34tCPNBOX}&wl80%-R)V~+iu6m z1#iSEm40h`<4~V<x1Po<<JG)Vt<F^`b}x0tQ%KauW}K4?OIV*}S@t;?TOlItWm}EE z;h=Zl>7WZUWwNb@u1v`Fzy5)9_j?07agLmi`!W@|yOw74{XM>f_xGlm^IV-bxTCHu z$ZOacJnu#yPFS8HBkx7g+n(jR8ysTA8=h#dc@MW_?&-mK!{7dQp0jjUWf}j{;~y2v z=&njPE_D6ji!ojYaubE~Km5&)+?eb0t;|FJEj;1nSAe!2dJT6j)5DWI`wEWI7d-9O zxA-5<e}A>HEIi@E)y8rkR@A0(HQ{&l{lL8U{kQ*sksutwN{0RFpD{{dZ0^C>EPUyA z1wTu9BJsL|IEnkfWn6cV!9>WA@pSw%O$E~NsK-HuG>Ov(#bFrp=FFKBDz*wIPl<){ zYuAUq5}i4LEx+i#MRWL%c!9=KFlT0zw8CqMHt+4x2NsBQ0YH0j(Sk+yePxmHl{wMd zi!8{){}ijpSh8SVl=5fKzE}L$l~>n4R^3opwyL_Ws<Qs>TN*r%*00}Cr^VM+K3=x& z(RGbXV;R#!w={(E8|qixeT!AtG<~F>2{!M7%Ev>sm5;7(tS)b?USAtpwSHY)O=V+c zMd-2W#;VXrxrNx!Bhe)bP;BTP@wd#b>-5mP+KuHk)fFKa<-UctvxL?4<?AX#w}+@J zz7J3yTEDTfes#_I$3pqHRD`}1x}|2r1lT-OT^qWipeVGi;n7gV`pSk-?fS;hy7I<V zRkk)Z$E?coRqJaDqV?-nRxYk=s1pq|Z_bz5K>t=5w0U%WLqqk-no1P?SnZ?r<rS5o z^2WyURck{PFvu#}<o3|w2Ns1MD{lx@)|P{{B2->mA!sO=WK@94qY{%sD>pQX3V@cX zvTggh<<%6?xITnUjZn{q#>)CoLnX98L%>up+xm636+;b;_^bkWR#jEkRyHKtt_lj^ z39_}&btN_ltgH~eIXyH~Hon$S0a3#A_-aGwfko?US5>mk(!WG;*ro|zbwJ@##y#}3 zP<<s-sjhwWU+Ef2pP+5U5&a+?ea-Hd7^K<NOvBvd^YT?s@%*06XFs#ZXP?y3tnESR zRYd%gN00M*vmPhb<EiPfl=Lv-0R(ldz+RO4MwI{7w2%^rsvRlu4ZA<4Uf<-t;&vTX zc6{4K?l*4lQKRVl@g0|0zG8i=@(Ld|$_&r-mCW)*B9r|kzTzc<QX(h|eZ|qqcJ6#7 z1dn0mm-xI-noqf&NpsEjVS`VU7g#je>wH_~)98o~!Z<qW{MJZxt!;JtmO8rF3hHTS z7pbS6HeRbk9i9=t_5pF5LDvW0t{HY;Q=J}4%5|N=w{EWa&<)acnUhASV{C-7yc)k= zzlxOlVTN!H$nw%BpGjNfL$l_HZR*F(^@YT<@%bf_$E^^b!qMeLkY|=JWH&7&Y4$R9 z+WCexS+P^9!F^qwzR)B*BjOteUoPS2hTu4p=K8FX$szd7TzVGYV^YWH6DXs^*X+8s zkTmlZ-)2{duf-MN*KL|z4^1}G%!#1kqc_ar!q<5oMl=GJxxQ_#lF8mhAU91mT&IWT zTnN$!Ak78m{K@W(;3`FQv6K^;Y;2UNlrw9xcL_KaPc{~VigyPn6|ppYQ)jaapVtwE zgAmg)Eo5J4c2zNl)Mu`52TI(D&<Y*fU2`Xoqg+(Ob;%Y?L8XX3gXqwTQuIQ|DPg@R zhy4^)UI}h$F$-x6ZL>go9ARZq{P&A?E4tRCb-rSuei7x=_=@NHW|a8C^Qn5#f7W+` z@Qi3#!@9DD#<iHJ>W6$TNF;5jtHa*4<+Y7vtEwtjtu50RG5Ys;q#QYym94^jhbc{a zhe8#EO$S$F!Yr$=EZ@*rH3CQV>RPNjMo6qIuUkLln?#yuY_wReK5bNQfB$EMRK5%{ zS*CGo!jW^Prs_Glhhljh_8YD(s~$;Tq_don(;FJruln>XWfhgH%Qw_q+f-;pXoDqC z8TMctvL&%@f^}=JF>A7ot83u}H8o|AHeSoMPVCjl<;;eLYed*(V|BN>`q2>*8&;Lq zSCp-4Y#JfGZrxh!*}Q&T89+n%FicoeR<Fh~w7Q|378{vkq+}sj><eACYUMTAlU9(s zbz-%q`7fKep|VDN<)I8)Os}kNTwPsRbFGhm3Ld+F5uL(LW<!q1Qc)>(^3?QGZOmSb zH<d=}UBhLouN2!<S67y;t8NghcD>>hEV>-`r3S|}hEFCoRMuW=kEC6hAEzv3>Qp7Q z6pTalO?FwsBr$h=<ySXUHqiC$zKunF*@8Js%SvW0nOSzv;`<(qBIcyxoT_Z*gG(ZU z<=%VlT~da#xw88nnzOhJXNYA}Vh$(e%$^sGAmxDv=Pj92CQj${Qii1Bqz~tQe=3=$ zgeskC49R|taHk5<dl$?r89C$7aw+$|2j`V7SsI-)B+t+~Ke*_D=$zT9HNHkE$o`W` zixX&7rEBbUO{!C+duPrrn^{t__)lnfP39ri5@*z^V0<EF%H*VJXHPCHo?Kiw<<23} zN6t>Yhg#=PdBjl8R6ADIlu!P5zwj5rdcZ`;MBq_`z;hjSq)RXs{|W;xK8PQlAFV-P zex@;gtBj}NpT`XQ&-o=Uk4XqD=g;v?1&^*D<;f?Gfs%L%u&&<`#Fc&-GL7;35p;Q9 zLcAG49ZL2>5OjIR5N|?Yefe$+(<tv72)eu<BCfCNmAuD6*W^9GdMN#}WE$iD6+xHx zOT_i|Q1bT5Jow}BKm<QZUN*4O??=G8ytgGE{=}i=9YsvnZwcZ`9#68Byx#-s^8SeU zaQdB;dGN>Mffe{s@~#6`@^D>!h`fu4#}L$^bovMcg#jO^!H;T>&&V{$=N^(mo~#$Y zl`!NzNGZcqd63NGfiw7Fo!P$H_vB3W2d%zl1>#`@btriSAV|!lCB^(fpgi@xG3v*2 z8_HAq?FSx*pbjN(0SLOhZHOy*d~c0ul!q%WL-dOyz5+oVN?tVxy1Z`0cOXzdz8|OL zJp-)O*A+s11%f)1ye%MT@*b>1T**^o1@-$r=(@aS#8)7wL&<vy1Wn#UOjq*wE+*3` z@1OCn%j@QK5zy43<Q)e=mj_wty`ZtaxNhvo>j&24Wwat5Kv0L0_b~{Xyhk=6PT!)u zn`9dFbFuEayhDiRAgDviaM4e7dB+e}@;)!qD32f3(&dqFKY}`>43`Ch#7rthUhy6? z^}7XuX_WT}{xx}-Rfy(;rVb^K4WP@5W2jd8eL<#CUK6k;Zxq{X82h;zWFGwSSmDNx zk~aZZ>9-45mv;d1Vfu%Q<!Jh?h$61~$89o=`uzj2F7FuPw3Rxf4A&tLbb0#`uR);w zZkK74$MI8_cM0*~<o#Oa!5@!uKYnH)P@WnqC@;nT+~bj6il7dqUyA>gF9bt70_9CX zARpwVrTCw_8T1th>X7o%Qv9#H2Mjw9DDMsgCGRd^t-kJVMC(9PhmtoH1c{ln5`N(- z0-!wlu##5>tjY645vLESL&<v>1WjJWL1be;qP#E4G}ia8fOUBthz}=^^Ry<fGOo#+ zCetYIzX5CVvcssy8PL?B^m`EmP2TEG<W=^g&6q}cKf%8y&o>_NNeJpt^0;o$<gKYd zd<g>Ud$&xZJkGbeJlZdYpbjPP4<P9BjvyXKpu8_5FpcsC@vqBce*@h)lswMUn!L5N zvGV7cG7b6CIkxKZ4kKQHpbjY`JqUs>k9;hf`puSUlt;hP<Xsm)e3<&Ct3H5a9yRPk z%6`1>#<D1nd3Aa8<p_d0lztC@py^k02=UDb)bAddMtK{6b$Le+--)0OC6DE3^41k0 zeg=W^=E*e5dmdPm=U<5EaP{Rpt;wqmz)yQXqdc{Cpgj7OChs%*@l4(c(9|Jiq`wM+ zChx0=`VQiU^6r&sl*e_QChxyABHoXn4kfP>1Wn#wP}U9v%DYddQ66rj3VCup6iTs^ zl9Az0;bXa)e1$Wnr|>n6z(<?19;)0;Bk(<z!q+?k-<}k{%_H!s`AC)9G6EmlNY`)M z2z(b(_-Nx{?2<{EE^p@ue3Mf6T1Vhpn8MdS0w3F3FZYEJ_-F^6Z~q8<-%a5=FaqCC zQ}_;!!1s>iE5tvJ&>@V8OKdEDrQI@9{B%6&?i4;mN2S<#yca~$)FJVxn?ca(JD&bM z9AAo^$LEZ|_qddYKOW;T9%Rt>)uGBw={L<YaOxii6WeJu0{Nixs3-AH{p2x$el<?T z@UPN71DuwmPk^0AZBND>KCP}yodsE0l(`n69D(K123ZK2yakY#`3Y$1Q01z)`giD` z;(Ichd{LNgcNWg;1<rvu&-WR4G^67xEC@)a&dz~&wi5wBT->BqG{mn{nE!~=hR%Wb z^-cr;@z18jZ%B#frNp@gbPnX_`IB=X&N<pS5WmTZ03iPPlsL~HCP><T)Sq$Z0RI=9 z2ms=WSCA3sdfYh>=X%;X5HD~d0ElxgcMin49xaiC6)2x^=Ri8wmrHGeS%-ASodfAy zFV;&!6Ve%X4x~>*<Xe)!bjF<n>0Hk_2jX0hIS1lgPwkfkFY?cH5&@8&8lRn#J_qqv zB`t>hj5`PN--E~rNr)hwapyq#JVZ`Q!cL?!?i@&8fXGKS!K8e~odfBd-<<>T`<w^> z;`gJwD<4cpM?*Y$Abl~?RU0!M@#KN@2avAHU^?Q-1L+uV%~g`Zbbb6~`41xfYg#(u z$ph&)S2ds0(h*M{NdF4bIZyDQe8iIn(y<mW|4~wyj(GAwI(*CgrIwC(@<95-NdLdJ zbi|Vf(jP(kpq7q!@<4himLWH2>4+x}q%T9d>NC_2@#KN@<w&0`DNIK^c_6(E=}Kp& zBc42vz5?lWlEQSvlLykvlQH2BE5XnCfd@YTgn04*|0<+&Z0A9Fh$j!ES0J79I1i>H zo;;9ViS!OhVLIZ;1L>TnoCEPH@b^f9Ym6AbT?rY_K|Bju`(&IS4bMjW78&OUm`5Y7 z#ssEgd=}R_$Pz;w<8zv_Ul?)pg*48WJXRo{hxlLEQF{_Y{97sU)|9xaKl6_Tzw$rE zF<z(r%I0?+LHxfU{-MktK>Q|{P0c~9-{%p}wbRXf#4#SH=MOC}y;#eS@i~2dO1iS? zIOIoPPXBsJ`W_j#kPcr=|36dG|1T{a<9Yg9De3RZcq#HvLHZ{{(=*T}JX~jxeixch ztu-bgemCMpcDiVfFC#un#>Jumac4~6A_8&MJ}SLM@>f9KY^3j$ah3k<l=%OV694Zh z@gJqc-$;r7%h0&<EiGAIW*{Y9)^GF)=!dZ~Q_XjZA3km$cKtHHni78^CH`DW{Kb^` z-=)M~Nr@jziT_r{`=KA^hs^Us(s7FxAF~s8fRlGyhk0Hjg+ssFFOuZFcjp#)3V-sx z_=q>dMULU_fJ^z}Art5JG>OC9d?q=0Q<-<1hf>6CW+5<H+iUJE4}WX;&)*Wh=GLaT zTYC-Fz7;zhnRijIxx4BJaqf%Sw|cK(wB?fQ+}gcX=b^VEhm$d^65>AVH7Yw)M>Xe` z?X@L4%-7yyP2P*WMj>$vmjw^Kqndi}^;(Xh6%|dcJ*y<+DbE}!u9OFjG_riUNTb+~ z6lnywI-VnvgyaK28b|V}ANlde)%BH?YPS$PLxTrYhJHM9XkNzfM37F@9|IbJ?mYXW zr8^J&Xf!<OqC``9`OuE~N@Z<beRXZ)YQ@2)hUAkw_7gJV;jJ?HxJ`YfOw+_CALX&T zDIeUZe6*U6L6;@dv<#4|KiiWu4EI!#e5sH3aEy`9v7p-Gxs{=u_G3OtS*zC730Xs) zu8~=;d89_trC`0@l2lo<em$PnFURB7HD!&}>nhi8Xf$-4kW^94J@cUD`c-)NTUA7; zy1t?8Yql5YvYlGsS##&(qf>0eU0fV<N@Fz2$6@&B%{7U9Xy+k5uW#78I!&OoO_hdt zS;K}^x~|UiHmSUL#2<}WQ~o%cROZ3s>QhkJ)k#h0TvSc3BOX2*5(ke_UfEE#q4u%* z@;ak_RZ&^P+Uhz37Gie$3HPK(S##lo70RUgvp?0ftIAeB4zrin*Oxyo=RvN=ux=99 z6I~Kx>1uc|S7Lq0a}-`z$;9+&6e8eX(0RQQYd3+X0^h7*tO*32YxB7peT9Z`UL<%{ zf~OgQI<VXv4ZAfA9ULB=4xPn5Bh)VwnE&KO@M1kF&dDYNvo1{g5-|T6u$FY_ixF3L zSc0YXc*J?c5ENa<AdBzkM*z|#rX8T0pid%$#J2)t`6K8dVAN6IATZWb0<+$zi`e4> zwr5?$o*=R=KGtQ13`!rwuTy%4k*4T623dTEpSnR$fh}O@Dey#Klp!!>K~I5i1cpum zbIpe!Fzp6@v5!U}FydnW3)svENjl3amh>2KSmTF32!5U`GLO<3xLVZ(dDbWlzO@Rk z(D-!>eZ+nlQXlS5A!LUnUFsv~QXhvO`Uv`eus&nxZ&IHznm&Rq^$~QbkHZgr1pPl) zpX-(X!{-Ek3;Ln$uSffdZ*ms{-wGFGpPc~=on4K<i)<cq2Qb=*{NkF#!xH}z^cBF& z+XTECSmoU$dD=mLLgF}Z3o!iIg>-(a*x`Rc@*D>JyAodnJ}CK{fe&f?$ADQco+JO< z=66MbKS<KK4<dQYGYIHc)ZYbu(=Rc`1Kyt%`fLUc089PNNx;bKLccUE$q$-|_7nW5 zhdEv2r>)2j8*`sQ!Grpl4{1ELHV^mnF`v}v&j9mU3hB=Q(>^<ZcWXR*CC?hrao*?f zyr}WeZj{5k-;+GBGoNR1>h-eZp`2GF&raYUXgoiZJZKB^$H1@~?QC{P{#M}Q8vhB& z&vH98{<kGRe8Bv@#(!G!Q-?oFo)>`6YCPv{9&;S%9{?*I5|V#E=>184G?QI-=<G_D zJdo+aSf}dl^4dJy`^M#$JZMK(j>Z#^JSf+NpvraKEcp+BeyhemQSv_w`ecp2Nb(;9 zy;$R)A^E98SmU27`453UU*lgS`KeD-(pkqCu(XM5g~nfJIO8h&^W5=><6wVQV=4RU zd_~`cAzI;P4BZNE#&oGLY&2bA`1CS`ci=Lk!aH$GTH#h~SEO(|E`uxl0)`QV_v4bQ z!m#Nh3d3HD6h4IENMY1j%?sk$DLHrOm~&hX#{@qD+B%10Zw><Oq~;pLl^w)0KZ+jE zcrtOhjB?=fTnl}cawwBQ@dG<@ScanOI2X$#%Be@VQDU?$zhR%tIUTm)_uU0g4e&~h zzDCkZKu3G!Qim51p42eL2ZxUFA(wrh^`Km(5AZ|MhRpBiykFzdG3phd&S(ePjhF7k zz7LQq=tmI`0#pA>2<R7r{tPhsh2UrTlO+8juqE+v;6h-Pce<pvf{y+m@^%8F&O+uH z;E2TCz_6W@w^ZT;=qrF}pMHcY$$tVEHWf07zai=HHO@yuKI*~eBPf&0PtHezJ{}nL z5%hFm*jdnL07F-Y4x0yP^MwfCmOQ<{FG`HM@*a!ecLRS{@)rR^4?*_=e^1iK0Uwlf zKk)Y@rceDq<2fqnXcOay5;N}`8qaY_4}t!3NoTol0keI35Z;y;b~R2(e(L#q$-fY| zThc?or#1Q+NvHmQ)aZ~a>O~u#)#$w%{k)`8pNo=CIUi{BONc8U1{OYC1sd90;2psI z=vpiX2is53p}(0faT74&g5Cm*G6W6*!@dG90nU-Q6c{!Y^n760RNxuF$RltaFv=9T z85n#@PaShC%A=jxe|*67Pn08qsu$voQvVUhBFG6+4#pCWKMsc6AZ5}A7?e!ljY=l; zcj!8X%(0Y-{>pJuV5Xytv6RU=p<fF;Nye3Yq&Z^<(wbCR7Wfp8jx%u!o-!$CqQ-;x z*Zy2y4{j?^PuQP!{2b*hM7UAnDDYH?(T>~?MDT}!XGwYtnEtJFLw-kp<ahK({!L0B z<Z*N>)$-~XZF(bhqpe^!foVh7?MCX!a$#RVN1JdAba1icp}dEH)ws<(N>5-%AMiPP zuF!aN4Euyou6XVWdW7hAn-O615apL3K!*@@ei9+9@xVTU-VOR9iJ2ER5p?1e5~J^O zj1_dYX)`d(qWl((e}_%y{(%O@Nx^dw_`4Dp0UrY9*h@Pc2B!WifR6w}PZPQuagD!2 z@>hWVhQ|MMo1bGC$1YJ{%I}r*mB0yL>iGh~05Ho%JvdgVayeFra^XiDD})^IbF2{j zHNa?Vhd(I!(aszbL|)i|<ABJ!6S!Dn=wr^(u(Y|!yzl{~vuHo*1H`J`X``tqg9mM- ze8a53R}B;$^_itGbX99V@$9RTSqA~i$57v!VF$J?*Eu)SZy}H4)y?#i90b%?@IW@_ zeTN5qQ1C#1_5s0zGTF}^9!v7T2JD-Hhvk1s<AF_t9N2@tCwLlxqZ-c&#Ffs#YJEsu zl^y7lGi2R4@2mByf%4Rvll#xAH7(avj!YfHCgU}mjMr>3UbBhdkv4I7U=zV3Z6bK2 zO&lKBMDR$P2p(w@hX*zhJklnDN7}^UNwJAqZ>QQst-Wazwa%wa)ViHEQRf09+Qf^Y zjCH5Z@CSjTz^Kcu=u_ru;59Zjihv<g@DP7P!`n3coXzh#44%Efu(K-;ykF9P0Q`!^ z|6>iKzdQWDxA{397-wwk`abX_jej7Cc^%+Zw6E(J^oE}cIUT^L2kYX3F6_&qUYWoX zC4DjQmoyv$hD}`PyJoFTXWjYC2lEQt49v2QgT5J<b!1svH6GSo@$a`W&*#j8lK%wo z5lM%gP1Muj@6zxeHU7&s-8>EcejB@>3(tR5UROZF`M}h(6M^-Wdh&c$)DiyTQgy!> zxWvxussUbUW7gM&{@}>32c}Hu=-LRZWYRvg+mi_20LI+pDnxif(kYX+;+#d9v=!xG zY<Fz~R&rWx9+CIklBXLyFK9dmZ62=a_^yN~cQNqGHeJZ4kByOK9o2Y#sPV*+F2^4i z@Xg~9$3Y)*&V|vgYAj-VtFhOG_8YJGVPEGQ8FndFbkxl`7w*>1h0mZ6Rj!7ObUZG> z{^&-44-1?LjCy_n_7Q86Tk)^POtkO+Cd(4*Fh!rF@jzBSWzIr?%zVm;AmjqW{$kw) z`GOurJS6cFV8|DAVoSrt8ixNkJafUPbU+!+O1Fhrt|*K${!(Gc)vpgbd1IO!7xGeP z)I$U%AMq!Y9IwW&V-M6}Uh3}$R(2=?X5CrNRLN5c9F{!Lopup<R{%rj+vvBnA^gnI z6LL2z9U$vQg(2&k3a`-WSfS<BaR}2Z^+7po$4N?O##McR#kolwG?e?KlCRrJ$Ef>c z*4IKny9<mq=UhLT@@F8xmjn(27fM_r(^R?OdrFlBK4*;$z7|ENy%fKWQI^GeH6z>z z%yKs)+zd?JXmjWwFxr7S2%Z+;MG|iVMtuc+2k=T@C3Cf;Q|20A%A`)4fZ1Ne-#}2h zHKT8n#shg&zvlXOvZABBEefMN$3J%>kCLNfKh(xJ!+D15Dq^mMY3D-d!+D8yCl-5& zhk&8K$ujaK{RlAHUF3}e!w!Of02p==a$La0z$))@i6MjQyh7NP*S5I^5ZD4nU4)$D zz|dLX7l9AhSghd>N_q(N?*mhQ5%4RLJ`ouD2|CK>^@>8;b~?gQNr#W{dWE2)ZH*rT zv+kL|ui03vF*-E<HzYshoCc=;Vc=eypX+g6HxT8P04F3*1h^lVIy{2_8ws9;$d9Pf z&2&jR>SCsAbm%1bqoBJrI@-yhdnFxpp^Y5*Y-^TFI@(##VH1<>uIS@{S(haUAxS?E zj6BMJ*!H3?SAm`{G3w3sQ~laR`>An~?IHN<z=QGxZUTng1#STj8^%`p6b=*iQsb=| z!Q;e=4jT#n5O`33ft!J$>o&y`g8=F0`Z<e%`W7M3mpMlip^l@WBl|Du<}ZOKOFH!B zJ>nwz{9*)@EBK*1$G9TeDu7Tcd7vZPQt%V+l>GFo!@w-}C<1&><ed+U@&x~B;I}0{ z0^F_P9$@6<8ppVtq|;ACUhuPhiOshV;Ope~J`9XH5NCG+Ll5FnF9O51PG0Cidiw7{ z{~9oD5(a+4=HYtKY?1iqz^yia_G;i4B!&%nPlqyH?ZB)r@lN1lz_9OVl*xNELO$$c zo&cr|Q9kd>D0}jLnBXY_{Sq+cECKEZhMw%lu1v{;HgTbk34XMRD<m=aIYv7Cg^~`L zF4_U*^1RsvJw#sevwbPQ7kIJFL)~1kqu^m#H4?L|jS@32?MC~feO&Yb+K^>E2aK{@ z`3So;{=GK8>j$8}An|eF0~&r=V%U%O5rod<|FMQ&17=y&;SI@8o?ilwL7RRXxLf0) zZ9zBDj;<?`=Q%tJi)su0oxsv=<Vh=)bofGABe1Mj8g(X)f&MZu>Yj%7OgjwBwnn}* z>V~qik)DRS3H%M<w<P}uz~_M}X9aY1**q+l&)y0;Y@U9jMz?@bR{C^=xss;{_+g1F zfR}6hYb3o2^jeMnHAzQ%rb8#{#<ou1Ch3&90~l?W1{vwn=Y?+VlAaFwi*{ZY>Xgp9 zLyo{d)G+H#o791)6PWdd-=)88^9Y$eNt{7DkOy_o@B*X08EBJ?kfeu!^Ci6mm^MMV z-d_UKx0!bdF!%&L4h&hunU{bU15+mKltH_J?m=BMDkO&eGqwRMIkW?K`2JGHw<Wy@ z_<I^Ytnt%V$q(PiIHvKO(C}$s+N2RYtUJqU0=|;u$#iQN@&pgc&1BsXr`<A_X!r?W z)N51(bhZ~|lK-%VVGD<TN@D1lc~+xe1crS2LnieB&WJ*;YL`vGnV_?*dW0Kg-e%xJ zjsHuMz8Umck`9}XnhOlS5;7M{9_TshA)B804Dbq#UZdeUn<t|aJYSP^>hld?=;`?* zFv_F+Q67XHl85r!HT;6jlkt7f4*(-C?K$d@hL1{q_|B;FHr<nh(-+zS{8_NE+h^nK z9|GSj`740Ywhj;NK>p*P!=?g12fPFrHgv-#?nYp?R~0bpCG~NCTf-bTKp#C0JiU@1 z^~yqA<V8DX$#O@#fi0Wg+Ybyr=Jg_9)^r<Zp8yU^4BfIyfRTT63-CsXw*f0V!<Jdk z*!=X3tlhxSKkIu4-__{fw=wOL^<!YxYbWq)Hr>4l_zhsRk>Kf)JgmzfHGJOY7d!(= zy2mFm<a<yj%AripjgpQ!c~B3b8+i&f9FaU|BhNyOjy52_2ln?g0z)p#^?XC}LpRSe zz$~i<7<E={<YB#7$70Y~FXW{!dAcOM9rzS5<YxzgPun~hwZLbAq3dY)qvr$34?BCV zNcw){p}$c+=-FOiDL*^c#u-aMXWc310C2v>Kgs4{du5{z%<Fm)_)EalhxECUejGRk zOgRUEOMzK#1bC&*!+K@cNQ`=A(>JIOaSJeI9zpoNP3N4L{R%Mbmi+|6QHh@cj@vx6 zb9RS~-8sO}qX_3OqYnY2JmDwQ0kQ=BFz_!mI_*pyia|eZW3G|1&jUjrZ!_>^jb|Xq z<Mjixju!Z&J(<@#QPOt;PX?x(Mue%7UIaWtVwCHB2w3XirLCwx<*boBJAmtK9=3(I zNz$2jlSbbr>6E`$!)OnoXDjHmp(^Xgk`9{p4T)h_FYN{%&T-ziC4Donv`+@*_edVJ zzgOC7v<vtHo6hmTOS`cy$AA-(j<(>KBIq5!(w<qMGrypt4M(RZ`A6pf)6O*r0h>-c zjE1iXI`kPm(Wbkh<7n7ioxiYc){I9S2j??&?SlPHo!5_^fm08~6UM2H!X@_kkr_u` z=r>8x7bfrBjE*L+8*tsAt|xG9XDR+tyyB<uisU)k=nBk{ie81waSEfJg$kqHd5*^Q zJLh|1*G1qa?9ixqHsP@_g_{lIS%o(n#&Zg{*m-#`W%M>1r@4W5B+oZF&OWdBTX71e zaJymbQuqa_1Lf?O_y911(CrxTK^vRUi~W#vUXvJoSmF@y5y=w<K57_`Dfw|clA$nU ziM%b~>5v%p9(`QmX5bS>vaL1DbJ9D}?|44KYn={WEiv@rHJUr&SH?wz?@N3M_>U4N zWSY9>13u+Hya&-L_2hL4)z;!U6~*6={0ak>jlxelf?whsV1zQBjPeMe&nX;|JS+pj z;mL>3D4t2cl*yx5^3MQ9aQMTRa}<9Gu;PbJggy(wkKph}F?T8cCBTY5CizRjkKpjH zz<i_lD}WV$mE^AhKZ3(whw)VLHv%jECdt1E{0I(zGsXzTzZqEZw@ChN;74%yci>W| z;@=6Z_**4^JNOYC{uj_3ihn<_;y*0;kANS+;XjJ!iWPqxSn;2b{GH%OaQM6Mc!T0U z1+4gcCI3b6BRKq*@VuYmPXJ4Po^P|gc%6ws@$>#ij^sDT0V{s^iQu0Eeguc#!ZUA* zzX(|Ihb2FJgx5D5e)vhQ;$H}?_@({LZQw_6_;<jK75`3P#eZ1Jhb?)}%i)JTu}OwF z%s8;(KQ8%CfFHr(@5E(Q#oq<2_|HiG9`GYL{JnVAMe$z*R{Z@oKc*amLGioN@l1>4 zce#Njzbi-b!`{5V=J3PjpHuuHV8w4q{vz-rIQ+%9e5Uwk04x55l0OQ51c!eK<|D-) z16KTvlD`T32oC=yT$)t;&A^JEZ3N6`j~N{Pofuvee=D%!-!J(OfFHr(KZwhHivJL> z;_s0B$H9-_@SnhaE5+XltoXYnKibX3wo^PkxFoJ{FR<cINPe`N3qkSo+RH@ApN6)Z zDEZU;Hh)?Uu0bF;`~eKfihmri;-4h>E$|~a{6(1e6@M|X;$I>8E5MK7@K<3yp!jQm z6+haA_D@5bFgX01F?T5b7GTA{U-BOSKZ3)55NiX)e+XFdcT4^=;74%yd$2B2{IF+{ z<mVcW`edL^42qxEK<<?M8DU_-Uod5=71E9=cUac6FBX2Ws4x_oVp&LYey2{I8VVH^ zS<{e&V}<80<}93Rx}-=0hZ*3zz8YbANW`HLj(p>re1_9LVw<{QlZbbDf5d&!n^qtY zV<QBW@8A2+y@wMCqmz5|UQ8G*i7Q4A_X$e$8^^F`?#4LxaCFC}mSv5J#IdI`ceFg; zXLL5SlFQ0IFZeFZHF~&bacpiJ`<dChCn6R5+>-yo0^=fRonK`h>@N-3J<H+Q`u@!} zt<$6~U*%q>QiCp+zrD*P>0;MaTeB|LDUYP)>)fY2_I}frJJDylvE#Elmc=rCZS|w< z{Yhh^uwUfQnwxFQq5jyLx`{H(CdxN!iz%;G>=WEH4m&EDR<^xYwfg5SM%Z_|xoII$ zoO`!RX|_!Lm-Y?p-Z%=S8o{@G?GcZ48*|m(fPD#}iI4@$rRK@q-NZc5y!Hm>#ZF#l z?cE;ZroB_OodY)LH^jb5T^!tDQ^a>r>hN*ule;_dG3;VX7n(tOzqMv~`MGV_l}cEK zZBsYI+SpOE!dhe7waY`>^FSGi(BB32$b9JOzV?E3uz5mA5cXv&2KNP@Uls`LigO=M zQ3AchE&;pYb<?-p*ex6Bs8iG2SZ16%;C8Zo>b&;e<`?>n@qMot=7oO$cx5s08MQ6s z!ajOE)*5@?Gtlh1Cd{3pon!tx(b@~JhoRUJjh<^|Vuv=AY^_1g3YpI>Dy9ACe%pCd z=<h7|)tE6p+LF6Fu;(&%`sHrYU+ynh*LCw_td)`Y$T$-FX53hc9jI@AQ<WFo>Dh~2 z<OYn+O)+wD-!&`i!aOsb^|q>lUD(a96MM<M9r0{>h`Y$e-M7CvWvi{NXD@bf<sN}O zZ0q1o?38(1T+_7krob-rXrys3^rqs1L|bv!#3^DA(!kC*b_urD6o@?tt-zMzv*;^Z zvfe8(-M;p&n@`~kQ$Nt2{pU``{o(q+&fMpF;VU`2p0y=Gc2C0CQ8%sEo$EgG{E;n3 zUO94rd#Q5Q>BMV;{r2u~zV?{w|G6AA-~;^(Bd6-+cADWEOCJyZp0&Up<ifv&Z`}<) zI-2wRn4PgmnJ1QCmL+x=p9iad3{U%=@HE*gFn;C24}MBNP3~Tv^fTHTJFB6^z>{vd zKYlCj4t9Om8TVs<)Jxo@*)E;?3CE4_gxX2`AJgjDhaD%elc8;4RZF{UG1hI4rIU~H z74Nbfw1xZ2AH&a}i}JeQF1_9K`V+Ii2EKg(`*JsllI=a)QNwuu6{B;*lk|1p-hPy_ zESJ=Gei4r|U*}B`Phh7tmik#9H}<;6E^ZZ!_1JwMdxc|E+-;9@fj!n5?EZ_EB}d$h zWnM@a#=8m6tP2UhaV`;*JJELC+;uah4}a+W0(v(?gFUteu*gyN3g14<V~?e_U9oH5 z*I6PoZw7uu;o;?z3b|p(-EGT-7fX4N5KhfSU%{Sw{l;;7Up(Uk_Hx|H9?|m?_(KNv zVf3Kg|7oxSK77Jc%(Q}!dM+D>tTo*0SlJ?O)I3~!Ag36k&+)-4H46kCG~_lpHm`pe zqeW+r<8fc6k0(GoK-&2$MzftGwVl~VyKC&dW7$j3UcxAt9yiZ&6zt%b5ZGr0&$4X; zf!25i_c-ic3;xW}b9=L0LJ!Q&Sut-}U`(XP9WWB3Zt#O&^lNwfdvlEw@7-e@@4DHp z%P{>KbDv#Hy9ESBIpW{_jyA8smII-u1G{tgV88k2{LgY{@5@&W?(l7{e}uo@cJ9n+ z@6(CV?`cRJ*dTU$j+?=~u-pN=q_vUogfUfdV{LIbPyENi)A%oPkF|T!`C}OQCR%s( zN}Iad*FPM0ucb8ZHILNbUO76OpGKY)jJr2foemhT;PZWlO;_JxL(H4OeL^SWkzS0y z?HEI|8DATT=C7R=&08Cb7P~P<D=jQ<U~gcbip34o@fY!d@Wi$AK0IrnwZg%*(<GX{ zcBw?^7*9@O_t>|+nENTc;M{N&t_$qC50@Gnbw2wB<Fe-l1A8^buvcUDg)9D$qlvJ= z`|lcA*yk0a4t~?budDkn(ISzE=Ul`%VoBT5?kT*c)gpKfJ3MF;$zyak8<c2b9fUnW zA?c{%>b(NIR%wCQVQYaFJ7PVeVy?aEj@<$~sny!AoW8+u#ZATGYsWsg?xC7G6i2VP zoBU_7lVqW=r5m}V?oR#UZd!q5NO_LFB1P=TY>h=p3yj0c;;f&rm0d$kmgGFDI8(=% z|I9f0TsKxx{l+$qU-X^8Zj4ubSPPZbKf+!g%Pz|s6T>KkboNN$%_jCW?>D-Mt!%8l z4~fw?KaP2T^c>;yK&NbPN9qp7>cmJ)#GLpStH@XeJZ|tpA~+3e{2ds9GO?zgYaB*6 zf)GbIiqL~{4%q(fZAZ`VhSY7?+r0~ZEyk&WPtaFLJ!5?~=7vmzGI6dTHBB8GKaE{s zpJuVLc2>!9<Pv*yi*>WM(zoZ*$6^>m()x}V?!JVl0D7eNC4vQ*r#x5{qwcnKgr$bV z0V}Kb&4J@Mt2u&j_`*CRUeLGE9gB5;%P_dAEO;|E4<nT58ICPQ&(LD%8BR>v8#aqu z5hWL1ou9<R*@C_iS_bdHY{k`34DGwrjkzFF<`!paw<*g`nQzIpMsOGPifx4tq0KqJ z)HOx(bJ}8C;7NI9dH(9&gt>|Ng4iuMIxkvGPbl~wY)^5fCwvOJxuXGVY&5&K&$#&E zdxrb!)u1Ux2uChtbkZlA<SPAYzem_4?hXgOb0ivojBHq2`l!+rS{+5omOtkUcE8Bo zm9rZ)x9bt1?ICeUsXXI~c!IyS#@c>iVF!1)`e^g+!#=hcZ$u5xv4+E0IZ5lhX$;oW zIXhwTKG+azO`IuT5-Wf$I6uxS%l0q0lpQeo{?YLC{i8Wo^dWFu>KGhEOI|{+-H9_% zqw8j#XJIxJKFS)S<-}RdSH)QXY=PO{gZ-PqC4HmoW+yHz#(m6(vk~l46MQ?cEBM>o z=W?Fs$VDw8nU)7DP%)=_+PKSdI%@9JyCzvj9i^=0um;W9<8SY$zAg4x)Bna`MgL`^ zv&KGqIhEUrc`lnP(co`CSzx9|e7?5e@2#;l;@pM)P40+C@SE@aA|8*Gq91bi;dG8& zpP)a*-S|Bc@g!@9Iwh|Be6T05d()kXOE_0b+jK)!>88o_uHdgB-xvH%@K@&+ndz7r zj#a6$5|Ez|=RiAguA9zPTG!2Jxz2i9+u!uvW2Ogx<7*B61|ISo-@f{X;62BDZOd}c zf~(+XitoK^__!Xk@;)WsgipygjpuhfV>pXdeWTEkyQv3HzK8Qc?5Ymij@j4v5X*LB zM{#l${A|Mk_F?xvE6?&UWm&)qycaRk)fye=ruVYWI6K<a!1H0#zZ2(VXT_*{Y}wdg zXJDVNHIl{i7~4O#Pr_9RT=C!;9M+zt!i#yeN91n!I@fu*m~*kVy~s4Ifqr&sVnY-4 zusv7gTLb?V>Edk3yfDr98ays5z_lCKw(PBjHCE<GC+(|(7NpOk9`ST5+wQZ1zl}Xd zUTew|lmog1aaF1#l4W`8-35u~-Pm9H=5X=*U2#{O=k)Ff_IGC;eXZ0Rx;;tVx6iQa zn)Ef@{}onajhriAv(F>tY5?P%xNd>7X*t4Vvd?<=VMaW}GQ4&#7QI&V=M=<oN7Sc_ z_2C}vvi@$&^xE0H(q`!YHGLFUT#RGFGIxoVqpjy%W4o8Gp|pxT@>-s<eC;GFQ`qU& z+8OL^0#AjuXOi<bwB4c7EH}nEt|YdR(@I)G#6cHz$Nwo<$H78RInMdok)l=~;v7a$ zPJk+7lKU9T6m}Dyw=BTXWvFdFZ4B+(oV%wfD|cGl+!$!X^$(U||MD7NeZW^7H~jQK zj#<sMf#)%MC8aZeU=RBY&Zb4)+HCd`N@1v7sO(d_P{f5bq<oz9CM6{iWX5foR;E}@ z#hEj1-XSD#4Or{0&1(y^O{mSU-O^Uv)|PCcrx(_4QYAjUt#;niOC#=QvuYoHdJX<P z5qE9%(~m!!CH>d5@@iV2el_Mk*BA8G<kJgk0^(PcgsV7M?}@Ut8YlHkMcl(4t5P>s zrCEXJbN7gKNQS4K`@MJ9nByo3SNm`k8P{dK1MkB+H?O3%jF^jO8K;loDrDxy>~vvA zj4hY5ge^THZvV#Jr!&*?--{TXymG-@l=|L6+w1VZ1J)6BXewn&?YOg-?Un4)rS_Fw zoL%pzJ1Wv<IB7>oWzCcA)xFSI#Z}$e9}S+JI=^;-OK4GBic)cIu{u=b74^Y+`v9($ zY;WT4Kp#-6h-Yk{v%PZrmhBx@=D;OTbGPpwz!M|eU&j2hqrPQ(m-uhp-Xs1GY){B~ zbhA$Om00gSjOwDNh${kBF*nm(Sh*|<pr*$d6SetAk-mlfdRbogHwCrxtKi3cBF0l* zU2w^BUEjW`^X<A69cP)862TZre-i)2ZS%x`tgTx7H??gM|E+B=iT@*QC&hn9+q?Yl zD>1@-vy76qjJ8DIJR>6Oaf))^(?)*FV{1T-p_M$}ID6ITW{kNotL<p)fYxSXm-s!) z>oeAEDxG#WP<x>@Yl+cZrF}U8pE$$0yCK4Q2WdObBxbl6D}J15in%fHt+dtdZv~#p z=-v+PBE~UXU%#t%oYZ+o+}*dp=u|zKJZIk+d@?RpOR;`>L+v9|JZI$$5_kLeT4R+4 z)Q&X})a+}i(Ea}>2j@I%4Ob0VEmTCZN1E;IQA``@ubK0l`K^a-@@eO{)OjtEoxn9Z zT=QFFmw4`KpuM}wc=23U_o#DM-7j9(73{k1_29|tj^O_#{I_CF*X3;w{?@+N;*+ai zb*;g=%dU|XDEK>E&p7bsW{=J(SAJ%kutxRWV;sO$^_@Am`bF=)eA(FCgDZj?|Cas} zd@Fb=3z}p>lPqYG1x>PA@xR5>9y}?oZrw&cTmxNG@HBi#T#d!uiG9G!nPPjkSj)+C z&s7hf`vI=yn5PqFBYHnP%<`{#oc;U{C*$UrR&m_|n&2PnXe0d(UELPPg0H%1Z$tKh zRS$DzSsf$o{kO3yGIRFe>dW<UlVb@>#<lL94}3A2@0M}MI2_Ao9eJ)13lLfP(PGe# z@JthFIz57ZhjXH`Y@A8DKko6PoYSul96#ML=*``2jq1%c%xGTJJ?44;bJ4G?&WdHR zCIufC{G`AYy9d`hnR^RsX<Q61<+|-d$RLj&s~}vPZFV%rdhX6FXlwaTy7pdqeQ>9h z9i3p;A#O~<JOfLi|BJrZXB@)SyJSy99fsz0?@Q*5yT5Y?b4$W(!s_Obk=}R6<n`eQ z&#EzYOp8vFb;q0;oi`)}F`N;{PIn9(w{oKa);j85nnjzjE$R+Xdoh-Cg?^W<?Va<l z{1fg?$yIJFo!qGD=4eH<wWnk7O0=o!rRbK^S8z8e$h7c;aB=jdXh(S7?BeLj=n+Uh z8jCPRYl*=9o^Vb$E!q>kh<ir|-EEosaEGY9UU<Vt3kEONyK@c{yk3wUm@a&(<o?#P zm$8D)q#WBrr4Qy&{!%gDptX={J%Y1H;VWU`N35B>X20_0V2K)QXXj(A#g)Rqo`?~6 zt}5Bm#|qL!ODBv&w1$65oHLU>w_)^m?R#&gy<)b@U`t|V=tTWXHj46aF7!()%RU>5 zWcj9-;i_uHv+*Hcn;3y{_oLuvu>M16nHIL0=qnMlXrH+sHP{LZw#M97`#f23_o^!R z*iCVF^o!AZMB9N6Em+L)-f{yM$K9gk67VF{-6#7IXI5{Uv<$pc^&V-nuiO73?+&cH z^W?RF8F6>xBaLE3g>mVWb(`eZdVawtqU?N>ofn-(tYkx)W(R5mOZ@7+SvV{FrLe*Y zU)#oqaFvbokg!7By)qJQTDdfe>nMUMtW25znFrUbH;H?`#zC~OnYe6v&tElmY=jTQ zu{N%!FF^Yb<lR@EEtuYo^Ej5_oIqT+iDWm4HPwZLG5-C2PrAsD-YnMoJs5>r@KqoW z*8Ls4m&CP!AATHn<IarH=t10!-5NJGM#Ko^xo{;|h%wQ;knj|q?=$_>18K;q?l#9f zm*iFTkFNUDKf2<_eQ5O8BcepPdYH`n)^XM*hP%&pOq69@k~P`T!upC*opS)8F+BZ3 zzh{!1C2<XI>Q*sN><;3tqJ2JT%R~QzH-R>m={5~9k0s_6$%EQ9q95zEQc}>)x7nr8 zVsTp5KZa$9vp}Q<a2^#gI_ztk`q|5$_K10lX3kzR@1Z&5Dw+4d?E4linlpRJoD#+# zm_2jRqIrw%A)fib1NY6IH**Q23X`koD>IjtMP@E4c_1=#0i=jcx;4V=`|gb{oMQ`o zaM6NA_kCrNF?-44g}2XnXwIS~w=bEq_+F?$v7y^T4b_j<me+)CsR-e#)Rom6EAfHg z>U#Vd#-KQ`xq$d!b4_*aqoMK*ja8Mkjn%8l8>`pXhSXP)@pN)@=Je2<nbG?ehUBN4 z$?oh*uFJsJtZPx2z3Vu>Pd+`gp@Gcv=FFKB!Y1OAr%b6XD490dq78)H;nMHW(&v^} z*Hl)78rO%!H>pF&1Zg4ed>;~Dw63<*t*%|YUdb$}M_ubtG%{9HH<YiWgh%VwZ>S5c zs;;X-lGSueQz(C3dBa)(C%{<sm20qBy`$H#GV02!>mRFbsQmL{MBRp!fp0U1)|J<m zKU%pC*8WqPX!f~h$%2shDtrn}d?!DJCU+(uVqfOBKb5a+WZOMDj9k)E<&q}8Wv`XR z@85Hmc)ML=L&|f~z<)cwTd%kEkTfAw>6C2i2C*js8@m8rg!E*R?FMjFcwp`7>PI)! z+YYcAeiHh^Ee&5lTUItzH^S|ZZ?XIwyW&z_%RcZxWh1#paQx})Hw~4m_y<o~mE_l* z{8}yu#xZkfXL_u<u_|<nRoFCrq#x1WDnj^b`ef!`QvWzrgWD@7uMB+(A^8tHFt6lp zVFi3&|EqUH_j@B>oA4*(F@rE0bmkZJWp|Q&m<rI;6?TtWEjlCh6W@b(wvz~Lv?kv< zd5Yzky}s`8`szok8bkT3CWHzt>yF#;Q#>g&fBlBq>d?LT{CaI=ZRmfp_df7dR(GEN zeQy46f%G<F1|z1<RnbOEF<`3E(i$<)h^eI(ZM4+zC&5HR$b_KiFr8FUsZvTU#RyqT zJ8XxxOqc1p9j4>V-gX#=TH19x{JKob_QlSy9Y(1?>M|XwRQCNj&-p(0<RPH5+t=>? z_Vqh(?(;d{^Eu!1J>T=^`IB?+GwYt_`)5pF*7N=XKMJpY931FbvTAU}z)IKl?w*xe zY3}Bo0tKMn6i`^XV%gyRiwC-<7w%ZGs-R_tnH?AFD)bCW(UmI(3d>h?_AGk<!Gu+P zolJBY&(G{HUs+hO%q2c>%WZ`ZboF%&urSVFwWPOaX`!uWX;&YUnl)pkR=%0jCrr4Z zmr{L<toyopADBi->@X9Uz7G_Z;FQDwM#z}8O_=?WmI75s{q({|XvVE`ZfN=79M|j{ zKQ#Xit<%e#*#qe78pOXVr%#X*;!ve!I?6<A@>Oq>q{_>6V8*%c$eU=eC13Su^jLO7 zSu6>;m56GL$gyg6zI;RU=DgZ~7nYy=FO*Mf$>$!6He^*}sAo|ipBkIvJ{yy^%*$8L zoz5Rds#@H<Ah$N)p?6f9L*3P9u<@<P!#WzyQb%J@M<KB5P)i=yH9s7!%|250X!&Cm z8`J}%+aC5oV^DT@cD`nIe%9LPk?f;okCktz$hPL2XXjgP$+x!V+gheqx8!HFdS|dl zISFl)D;0{xg(NqVS>2MadnkH1ySD6+@<%HktK8r=@3M(K;7~E+Vs1XyJiUBwzTD+Z z3-XV-c1;c2m0gstZxefJdu&wbyQY-y!ny{>us7_#&_AKPJs2~gTx0A}KgPm(wqbK< zu$mL*550*U;n-~}`J#;ZR-lhR89kJJxNL3tBNdNUJ~nPct}JTGx3uJ2Tc+pc=9^m_ zo|kW?$65pV!q`{An2!oA`RYfaN3)NWZ79zc^EEAUYW1Ct7`Bt~n9QZn*Za=m>yzl7 zou6vzT`PjRGqfeCyPK->wU~cbzB=uz?PK_=zT}fkTZ_hSt%jM#{e}w0T<i4QqP%ZF z*p9G&Lmg|9b}Y#=)@xexwe#|IZrr;i&0RbCI%lQ&_Rf6W>^zQ~Iy+xKPcy|ksJCQe zlo{2AJM*=3(e4USqSe)xNNzoA@|Jwft(xa`b6s)B^ZmSR4C-s4K73!Ans>Pg)0&^! zHl1IV$k*SZ^)2p=us=tFK9RaJ`7S6ErRQ5%hOwB8n^3+WkO#UlyOVy18xxF|vb{8D zcD`{a`egQ@vWLspRy<Pq=(xvn8^%Kobqu}5HiUh;HmSGM^}hzAxp?;U+C_Oc3iyIu zY?eMNFlK5?{&;k{K}+%{qS^VAQA>U(+mc^PTt{3_+?bu4-;|v@y)ci0oL$Pwrh9HH z+*Y`48bQaS>|OLzD|yVwTS+gNo@w{YxiIIJn78`w4}B25NPA}I2mPt}12^7yU7`Nn z^=&<Ut5(0e=c=ZwFTcFdIQ^>WGr5gj`M~nQ#Y;F24#dZ9LjzsCi>D8Etscxw=N&qW zGt-yw0-foJbo%J)G4}?eu8u*`9cN&LO1&9N`cLEd_aSwir8awK(kM<x+N7}*rAcFI zN-0|2yS%G|7a?(lILI9vS8Qi7jkoJ`@V1?v&a-d^x|XlFkJl27MO)Ilc<H^pT<CQy z?d@7Ta5gQg&Sr<ML3_BK9Oa@^!_@emWs8@djgxwL*O^Cvl*Knl9ZPywFs9BtR?f~W zc>tAXQKJeOlxOv{IBCk5L*VRc^ad{Zu5U$OmwTU5s&OTg>Hf6I?k!XC`|`ppr|=AU zsebbBe(LHQrQ0d!;(mh{K&7%$<+*v$OS1I5C3#a;(1Nr>-h`e~?%xL$+t`VN!bYaJ zUbF6J(=6AUU5gn(dhJ?ZT}p-PQOff|vz4oQ2hX-9y;YU!-Ic3)2D{FtjM2Peai<^Q z{^tHHW+rcCJ9A4^Ed$DVzkdZcZ4aD9pI%JHopRUd<0$1H?xWAx(P^rGdD&U2m9}(m zrH9K{9Mxo_mZ{U#Kh~^SncU86bsdZ0mOy2kt!Ls#1s(3yZD;m&XIJpJant}yx97~v zl>g!v(Y@&k>R0<WTWI}j?athSH))_wJa1YD&nEpdm$SRz47`*B?1}A}Z633>l$Kz8 zjdji7ACfRg<4X!IP-aYTbk`%(c}rr~fKFh{%T;}Y)32S`aIGKBW2y2FMvT$5WYyig z^>FcWe8FQnJsmAw;k^Y^fTKqm@tro0(!t>#oO03%7Z42t?;hbpmy{0^RbF{YU*^;P zaf<srR76Sek54kwkf@$F<MI10qwJeSx}9jjY?^_<F!1gj6e|E^Uj@<ZyAv!M+(Q+P zn}`LX1=FE-4I2h_@8x3=QTp@<!1N7)rO*8LEI8}|tLJx-2l{&INv|eKpRWH+-*#}I zFA~pm0~5Qy01owSBW?XL(dQ{GyF-1tXOP^2>G(?ohJigh`H-(=pB|zqPvw424E2dK zmVHN%hx(LOdFgw*&m--A-!;@Xo4oK|$onrc8^~7ZInIZ8(svHg+ZSCA4)v+OClf80 zzUvSK_T3}fOy9XaPxdVZhx+<SkEQP}UxtIiJyZEGeZK`Z`}q6tD1GZlPa|6JHbwje zc$9te^CF_!%WpR&`o01V?bG;MM6_V~wj=OZS@(?aagr!~`b`(*sl9*AG0>;qXmD!+ z2Nz7=cSr^L?j0t*mMDF;R!HB=q(gnJq{nLS&yWZDdh1B{5~YuKrJH?Ojh#@R=2|t; zg4dDN<KR%A{45_zAAkEy^fiG)eQLv4`mXY2I4Jb);luP@1Xf+NH@k#msBaVLvGjf1 zm*JqWTpy<I60qr84-WNhC*44_ARZz67#|)hy<ED?f0z0^*_RqG+5O}-5-pfM)f4L5 zL3#mE{(Gm-lfLhR1N-#*N0~!J3#M-`f>7T{iVY!?zRP`{^c@3-`i_uBo&?jUaTVxW zv4*ty?_EBRa{8T$QTmRP)>yURb(Gnf<mD@N1Byi1_imzi(wACa%GV=rBU&(hsr99Q zHH5W9>AR9>`WAwN_Ld(YEv^OA_fZ5ME2|&>CHm~#C;RS49_Z6=I*xh<X8Hz@2l{?z zh_w07#=7)<4tc1rleGHCg6Z3UAk_C9#k!HHz3=gP(kH(L`YJW1nur!m-@io==vz6J zw2i-Oe4h0E4LH=dp7bEmg6aDKf>57)e3&TvuJw87E0?Z7-#C(EjlVMaKhQV0khJ;l zy*^L+G*?4?$i}*UDYr38w!+{rANz>1?|nqoC4H(V)YnOR8qtEcsXR4aR*AQkD192k z;z{2_97BB@NpB-sFnzy=z++{tVqQiCfb`u!G<{zH2l{eq{}9oF>Dz)J(06~1^bVr* z-RSdV-wWVS-!9T)wfC=l84e2fi?^02eRGJaOZwOuJxbp}#?Tn!rTpi<3<rhPja)|3 zW~c819KF7Z^T2_9Rr5&}kXi6;teAwrV`Y7!4&HMB*>@As^vwka`t%#UW3BfUH~2Cf z6n_5z9~+6%cQeuS^?*Zt+eq&tS}^-M5qPYup>95o5vA{gMANq!9O%pUl0HeaVER6b zAkg>8c8W=-^nJ+Z(H|B69vtX<yEtR?N5!{%84d~$6)BbjNZ*HvX5UNTP#^u9*-o_J zZL0XM2s~ES!+ZIV52f!TM6a*%ZQwv(^$_Vcq6M!*zYQGfTf2?)2vPd%UV`>kHjobW z?IVpm38pW#9y~G&hNAS@+?Kutq(gmb!y2Lm(`P>S@<&z!o+V1(9YkyIDsZ6h9O+lR z7X0;drN*V#t*l3<@li{ZzK;=2-&5dFA7fO>B$$0qA_?`ikS-FX&#sl!-ajTC=$j;c z;#x3$I}rr>9s@^5kx5^N&y&9Y1P=6_yPxz3(SqswA%Z~Px?>b8Ad|kuMCGB+oi74? zHS!bkB$&R}kp%i4uO@B%yVU1N-xc6cAAK7&A+z9hjJp&;sILv4+9Lb9e4g}at_1pi zOJks!Xu<SRKGe6qKzc1v`tBx*Cw&@6p}ym!7Z5F&zLf|(R@VCMd>kf9pVlblN#D~P z1AUWQN$)0F@H)nALg2BoKD~}&LjdW!muUJ_HqfW#x=eH3g6T_LZ+wRNTzMFh^ercv zzJuUE-xTQ@B3dwg8dn}G>+?tXV9YpuD>!<6xiWB|?}Ap+_#p|V?+qk@zRj}3#>?;c zJj&&?ZiM>O7i)<YypG&u2m*ai)so&vRC}$jq)%&qsPBOOZivi+>66`|zQg#hh)nvl zrYKMPWNV<WaFXPU$Sjz?UIc-@XSQ>1um_p+-S6|HZzEXx<VV8A`}hdT8O}X1TK>gu z(v)}l9`Je6_eWsqn@J>GjBS-_n+546KldER9MRW%x%@X)y+4WhZ_4}8=<;72ByIND zwU_Mswb#c%;qp4>%>Ed=Pj5r+1gXHDFAnjo57{jL{l3pb-+0|8tGzxnXpEvW36^&b z65m$k%~08M6IMxw`2HNB+*^*&4E66?;!>h)swR#n2Kqj>o8K)xjLd@7YiT<s^7727 zUzkuwlqGpS9q4!Yfj?ZjB30fk-X^24Y)k^_iAe%L`fVI^U8hh*qm@nq`EMsN%?m2Y zS2_vg%cr{DQ>Z0h=_HUZ|7x5nOeR0{x9a~b<ezl8alX<?AYY4J5=fs<;$L||Bl<1? zf77QMNZ;(SJHS_d5=g%zNdQRyHV55TDO6Kl=_HVU5s9N-pnRp1K>j6knfX-tq)UPP zOG_zN-#g*!e5fG%NtXir%S$Q8e;524y-fW>x)k8QoBV}dGE6?{QXv1zQp)L@0e_8` zt%gs!6yRS){(3K|A)j<9kpCX?&Hu;9CtV8UUqk+%cu5oaq)UPPYsvp>FIh|e%2KYg z@4e*z)XUUf(xpK8_c1jQyU-3$`jR*qy-50gpXUznuTQ0KfNwT!gHO5?;NMtEIeX^7 zzsbv{!6#h`@IO#WIlgh7nEdp3{9uazp;Y?Asq{xu>DyB2k7D04FO$DWmjd<QLB7^X zg*D`pE(P*GM*io$WET0POM(24mr|~M9jWx<RC+1;c6yoYAzcdS>mvVqu_V&?AYBUN z-(5<%`g&67dsFG<==%pRQ+>aa%3qO6r}NX}Z&iw)9#0RX@_#p#W^R?)8m$L0HrE`D z_WfRpZ+&C=pQQZxp3~04TtV8O$1{VZ$CI`(RY`gx=}ym|M*2L`tE~>5q)4yz=|$wD zyX+~S_78Q-{v?&wdE5nG{*X@^|L3XnKaEb8W3vmg=N+6bFHGgz`NZohpPkCTJ(a%4 zryJ0BDf$wh#`cvzp5hPt^db0{!{6o8ZKPQb%fFN2?@OisHkG#VW%iyLonMjnY4y*w zbXl^d#`aa%`BDD3p8RCa`271)`kwIVA^11K|5_?v&k+b^s*m-jBDr?*`u=O2Zx8J& zemOc_Y4-Z|R8CLjC)bLxzRHir`B8!TSl=p>G4J!uUeovWl)k@8rT<eZ{mSU{IHpY; zV*TUJNu})^w-0+*Psb%|sOKkZh)*-8TsR3I?zk_c^!-^XZT^&hKMeo)==>aW&V}vd zvp(l8N#$RaO3(3WjX&1!oL^I;3~8|5{h|=HknSM;Se&;0%WY1jQ}*Y+>GMY@&)CYD z{k}hP$3~ZT*UL^6`)B+Gsr=OZ96u|Sk5A&@%VV<(&D4+Y$J_W=K$`V?{AYc>w`cqx zrP3+?kN=_1-%a^@DgU$4d|mFxA+BHV?irO%tv7mC&!~KxkKUdMzCC4osc$*=7`EP6 zzKtJCe<r2xnN)gbD$RXC9K5|Rq|$c1WBP49)%;(<5`WHU{>0RLo#@9`#Z>s5zb4+5 z;^V_O#Pv^nIF<flDsAJboQfYn-}imK(!ZDb0?_oOne@ILw~cF1J08<HZqJy@No_qD zV`pcIQQFR#${4kWGnH4`dzs2ec7>(nsZExtT$vy4tW0IA-Dk;myWrd&$T8ibjgMm} zlqlKls6@C^(J2ZADFwFki~Wj@8f;QbF>MD?+BCmWaMX^)RMFG-9i|9wUy)>^_W`C@ zqchWXBzxOb%9>T$(3a9=yV%lNQaj30rABQdJFRHA6Kl-vPAP3GHO}2e>~sdh#AT+t zTOKH7l(w?Q`;S-L-`lZbCEKLBy3z#)*nrHg$QAwU#k`vx%i4(Qz5v`&ngC<xC-cB( zqlh{>7qc(Aujj$IqU9^^_S#F@QcaTO@s>AlC40k`F7J=+T;4Iptn%~3b-FewOQDyk z^W4T|$x2>;n(^9~cP*FpAl3gs+9%GLHm6Ejv@MtxKIkTmX&9A2ITmEt6TT9Y7BB7Y za^rUCs(}IROY5E4(a*+kb(Qw|rW`TWbctQ-b8McCT`rj^E0?>Sn2Y<}Fk~OD<0ry_ zm2PuxN{MSS^&~rTy@Lk2;s&PZ^0VJ<s~q?3+A*p_zIeISACp$xA8(dT*`*DQUO`7^ z*RsXz3bt~p3y(5-S1cD;xj2;*CrkTK$K2&BGyNc;O`RFP4lHNO>3w{^l%0m`KU9x( z;yqScz8{cK{3;a}4=X=ivTQM%{;7an+8KGeKgP7l?feX^aFa1z1!?@cbSW03TO~K7 zb{e}*@f{mDaMbvVci-9wbR|ljN^M9^ThqT{VDLtL&2~laY0i+P`eJX|%+t0mrxuSh z4B`RX#_Zdaq!XJGNvaK_R`+19af%jhFfPqQ*D1{DmAzeE{lWaybkIm;$`7Plm^u+8 z2KrGVr_JeezaDU!)0B6+Mq5x-Ff#nibs9@$J;4^0zRq~CmKO8n;phtXV~^UioOVY% z9@UHeU99=5`jX{;IcNG6oh$vi-Py%@yyAgTOM7r?NU3%HOq8Ccvb4f?u8LRqPPc!z zw~H@KJ3q(imE9}uk9Ukqe=O6$;S9&x9gnDFJ_Ri<ZJ$or75Dy1TeN9XZx^Sl__Ro> zZz*Siq$f+NwLJ8UT8Vm=^=YrM(;rX0QRBofG5)%0dH>*PCl~#+M6!K5W#;n51NU|q z!RqkiYP7gChf~TpZMh2v8!kErY3Z;PAZerxSABn}WAWf%7sjTCI^Du)D`lkZ<xYuh zUpCkK<B0Df@<>h5?fuY=S0(tJ92<zF9c~13YvFJcxW;4MH`aRG46gII1zhl0&l;wB z+y<`qcs`i>P^WVNSoN7b;Ez+r?G2>vN?`@+cJf7F>UOva-0U$hL)}h}Eg9-|m^!r| z!eO<Ax*cu?Q@6vir=4gvgcz}VKVJ=?++*6UzpXjB>cS3(3*c&xWjAG<TsBa~VcP9{ z6~$cb)g8xkyNvE@3m#*a{Nv=efN8J8y0^tvhjpKLEBHK)lHVC{`aNz&J`ivQNvn;j zo4!skV_^KHq-m3j<_FT9=6~9l_$S1n9>&bu)E4<lKC-%yzun}tH<X_<mK-0RE4jGb z_MWRYUQC<<mYwov!E;pCWkj=?yt~b2`P$?m#-1AKN4NURVSKFm99DVyHNn*Fu=<F) zYBWb$iPTjid)kQfhm+Gk8qZFyer)tuW9t1LF9gp9n+?)sc7o3{`_XIfD^<T=Z*ugy z{o54NxV_ip=<PMUD9{;V+J2tuEf8t@d1?#oP@kQrw#ZMk({ZZ61uv&fj%RjK#?75U z<dj)%^}_2jOxu%og%}%ZWdn6;?$oM(3q<<E$%X0bTI*}<aq>L!RA2X7U9#J33o+yK zeCeSc7mY*ucdRUaNXmwovKO48?7&+n`;Ie|b$dmrQvM&aUTphq`A6fQHvhK#qx$fd zlMCaM-<E#0mGSB1(su>X+DP6iv$G+PhnT)7s4nzLzr)grp9|72uGSjUN%}t18TM(2 zvH4=@qz`4A!_{EQCb-Gtzd+7hNaXVa%$nxp--5Fwz{|iIw=WXA!LoBdagFCZ1O5b9 ze$yO($jgVp>pYhHNwCTuAZ`xiBLUv-vC4kc<00@jz*hE~UcMIjZm{YV=Q)p8gJ1Cc zgWw-{`K@5J!F&sLb7~th+LMfJ>`VHQ@`?Ws1!Y5=<xkbJE$5@@CvETCP0xkI2FBc_ zHXbhaxE4K(D<|&*Gaek4{A#f3+DL2-<egyk(I#RqSU%Bs7!3IIOHy{d=QP9FKs1}t zo3s~Q&ObZI9}YMnX3oA-_B0c#z&4Mt)yZ3sGuEAa7MOAF<k+tDIjOf9Q>T(vpv(h? z;U)I8k!N;>7$4TlhF)SFST@{3oawRpow^*SAH2|GeB;WPPRc)M^}<W)h4;HAUria~ zhd4)<$%bkljYGQL%GLyBLyXPSWOF@n8vmu|0I|W#>2sae90y<O`ed5=`XI5{^ACYr zJm)Sj?RR|Uw9Z)$KMx-8{KMciUM`($J>Cx9=s8Eg!yX?6@ARDSfQw*_vCYIi0p1HX z+xCIgmP5oB!D^%I+3)$X^G8JU6>YY6d#i2PspKgf3g+YCz@OOnd&a@O<T~USWlU#? z^Gqe#pm{L~EZgv_)=VdF@M$YcUZTH=Jd=kwOE;;#3yC?fbS@%RdwD0A@#*B<-~w1S zv=gztK|WNy(*imA9lsa(EH7u?==#&i`@!;~*+boKp6)`nD7ZGD?mNss)cyO0(VMJq z=t}%H80ZW!ZJeog(Z2Nc>L*NRRZup><+xb>X(n>+)4Sv~PIc~Ulpkgi=?}+g1=o2_ z8<>7^{P|$kLx&fDnGXqmKWXzrv-iV(WYm#dBcb<WW+!?RKcF|UAHB)7xBA9(hM2Zo zqqbn9+H#HBQXn#xoLqI#E+?-Ci)VVku8)o*D+IPtCb5k&iEYz@vLUYG)=Yj|O{A_S z>UOvQ)>vvJqSJ9Y!3_bY87!MO5nDV*;|l*Ie0<_CzSkH{_zMHh5|34Ona8qc!1IT} z_j&mzz>j<R2$*w?)BhlNBUm=8?2|<E74{|L6J4LAJuXoGA;a5{7(c|hOy)YZagfM- zzfQjDCo%^ez6V?g@bmyTgH=}cFuxpL1MUqlZA|K=j^unnnYCscWs*5H6!1e_$#yK& zr811A_sY&{BK_&)8b8?V<OMKuB;m7OzgK=^EV%OK2Xr-=4U~V_a5#QKOkM9&z2AxT zJIvgYe;i&5M#uZ;XZJn6E5O)Xrg~?2P93<#%Vj@f$(5CSet_EpyePnoC8xgzK7Etu zXM8wZi~J!l?TzSLjU}i5Vld;xaa8YcAm0|?9Rc1I;BSD{F4_4lu(hiQmTxtF4tRM1 zd=QMUBKkq+BZn7(k9ZD#ib$Hx5o6EcdgR{E5pyBJZdY~|n7(lM7BGHyxEFjKST>vh z%eSmKWpJapU~gyC<~e_d{C3Z20JjI6y8;fjIz5eWmIWO7Ty;qgZFZa{@O=SiO~4uU za@juumQQMkUyX6L6YTw*-2(n5a@wE$Dfl_C+R_Yu9&By-kuOV~(Ls;Nj}Cc0K8Ril z_^*Mb6aQ%cqHNGUxooB9w}KfHra#Mkakv&aeoV0ZEE^=B>oI=K%D3oOyRx@~rGFi9 zq36s8F9FMM_&mD|tadE`_j^tiSpI|)y#QYAIql$w0?wnJ^9u4Oy_|Zo!?E1y9|24M zBIIB89O;+OP5&;i*({%nPhVt<0e?@-&#GP6l<;5l{BGn20>1h}`ehsABjF$M{9fd* z2K--ozS^rkk`4HyOnv10x~wwh$OgBj__a$|=f|=pB5kvCx85=TC~}1|%7_z@uReRs z<aJ&?4S9iEPLp%A>-Mtx(s@L4$>|w_-{A2caHGd<VC)bli(O^2O6MJoT_+zz-s16Y zaI42B!Ib|LWfjWivt$`w;5pLY?(uf;!c67~<1F%Wj_N<vrM8xJd-*<augB}b_}AHU z2#ig3ZVIu^6YpmX>pocL#P`z|?z<;7Uj7_u{Np%31W)rAA87nJx$sP|${r_P9q`}p z<tLEe;^l|I?Ou*g^gKajwMOcE>~J}Fwa555GvqP$W_E!YKT$RK8(xmRnLS=!3*H;Z z8K3Xhd}K~*O?LY0z(>7&KA3TA{!#lsJ(aWq?Md$aX~PDSWA|q~mfaf-muE7cHH_U) z8piI=8OCnccN=K~cH4N4u-nPokz?N`;}@vF&xI(!y57ECeK(0X0jxHv4Emj182#6) zU+RhIcXIh~ikD9VU+m@5Bc5F|fY*B))bGi&#D;(q;>);{S6#b_j0cCG12YC3E`k?= zRnIme{oXA5cM`ijW=+-k)$#X$9||!3O60>H?}fu!*Q~bRLu7qRu<Wq5fIn$%!KUO| zvB+(z$*IrQ4UM0tOujGB6JpwNgX~9#o?|%N55^BS$Pb5z_{ZVH;8~ut2HfKDJn%Bl zIRd`V<3r#F!D`nP#7&;BHjQ}vWAJv5=Yn^DnHTPR6!^r|dyF(baeC;7%wKrC8T`EG z90$MX@d@w&&tdH7+QyY_1OJq0{ydb)JZ=7=ZMK$be%ZW`9U9NBudySUN7QFyTh}pL zOwY+ce~7DjEGa+B50e9o&l5Rgc(&T!PDI~q`F|m?-g9mRPxG8b;6~5s1kdvFZZJM_ zWqZN&jngSP?RWBi@a;tN1N9|sq`st$i~L;P370x-j%%DJ_ubTy+|!|V#QZQA=npY| zxKVy+CDwY}1a1JUy_<-P1INL3Jri*9VKBBi`6s}PH;4Pct377~yw2lo;Pqh5Q`NN* ztZ{f3@kye!o%*(#&D4=R6GPWCCf}CHe8KScplpa~SBv^iZK2K<wPhBOzIO6vFn#Uh zE#PS$%eJeDW)J1v`gsr;<rAMb2lvsGPkc`K#OG~+o)BmGDvIpM`Dk^K-ZmAPLKV^E zA*Nj)P=B=(Ydn_Cj8!LJ0LK0gsO^J9>UDTEn7(ry)zRs3FZdp?`U2nRT$%6(yqtC2 z=`wrJE1#5?BS)_rt2@AJh{g#q<!_SB_|o-(I6A@6uA3#NO&WU+?*d;2mi;G*&4HYA zeIoA;<o5;gje-1`K>iIce-)k2d3*?bIFP?a+U%!pYnQu*@bVDL?l#$vEwaB&KAca) z{x<B7>cP{&^mQ~1O#2=GPVg*`=?DFN#BmzHv@y|1Upg%Rw}Yj>KxEE1ej|8^=d1(M zmyZ7sm_ADICp@3}Gmm<?Y<M!pQ6+f9%kfR-%K_dM;BR@1Z!$%&+C@9`y<Jz=kHJ6n z_z3tFu>8<W%z8QcBgTzu3vG{bo`bJ+uWP=Frh5J+<d+3}c-BYq@4telApib>Vf?t= zFh2U%hH1a8C$jsCCU3^2hFef(eH~z33w=;?b`7xxtnoQSto8D>;5x9z!)oGGkLe$s zV_eyF;OjhI51#AsM(})(X|J9IIsP!1x#@J`1D(e|s4*b?V1Q+ljazW?Tyco|3G8qI z`;uo|*kNtgnrzpZT9cFWEOz{%mBo%7hDXq5b%mJzz2yvR+Lx_tRZupC=gV)m6032A z##K4E4lFtT(>!u`7P#5td0^&?<LAJ)do10HJf|B>A2^QWYrI^2!Mt#C>XaWGrf)SD z9Hwt|E#xq^=pMo00(iH_YFp9cdhiP#PXqtZW9dBPaRc~g9yfxIfz`%0h_98f=8O4R zzAztZzF6NywC5|TpP>7e<X(XK?lw7X_^M&r@HNAQ;64J`PLtDyKQc@kmKnzGA;Z{h z&#|K>D!2I(V9l3X)h_vD5?EtH`Pk#|EHL^UM?RsC9WH>;f2+nhZAzbu=X)Epep(wf z9?XVO7+-xvHc-Fp`G|C?-aJ_LG!r@JIS#&*ZBE_-##auvf~nJSWG8da$=ksA$Km<l znE|GqiM*LSn=jz6oBh<W%P@8Pv0?On!!UZ2HZBPCgqSuiur|`p1!~tOBJFZ=+O7LC zCm#kEyj<<Q+T-_wvDtA(z_Y!49vC|lIdg4+*1c^+=9<IX!K_yf?*Mmt{!VZ=ShhV* zWW91&^$rDit>^DTzAlh&@bYJoKM7XfsjS*&{sccem9zqFOa6vS8~&Ziw{fdtczY)E zCx)?gw_$AkQ^VMi?6INle`E69)M5387@yy!HZor1+uQJe8Apv1C#N5@cHKt0OuF#1 zledFsfhnKe1IE{`Y&{r1JI*pNes*{+7(YACH1Hyi8^E1l`KN|B0G7^gg75R3Mlfrg zD@*;l21smJ@9{R|8$Cxlw|K0w+dbzwFurnn#Gwv{#rclss9k#l{DSAuR;`D!&0V`5 z^73ZVM`C&Q$KYdLUI70REZ<7!39x+F0%omrxRrG;>v0=6=ka`St;Y+%1&`4aG1i^U z3&Hr*`3f8LeA~$vfp7O1zeY<uXBW6X#<C}R2#jqJ<1~^#eY>J3y<Gf}0B-|pY}6z7 z{?v2p$o$z1{)XpZubyKkI==;G-j#JDrw<(N1<U7>V^_4t<3X@|F8ONkK9ARcf9UZL zc)!PM!T8<r*MSduydL~_9&ZF6_IMNcC69-}M?I#k(W@TQ*66s$v{lc^UE6nn^WaGt z*QeP!Fh0y;OZH;V*$Hm&82@BvdHgK6HRhM)z<!SCd2n_?EYEg=7kd6~@FK9))$Qfa zA@2?3_{iB-ME*Ef_Q>W<0Uil3_BoxC;b4=SckN*Hk@|NJSpA~;sJixg+y~z0IkYeP zBG_y@5OcBx<mwCQnFT%+aE^L;GxB3GU(Z7H+}rWhUd;=yQ_sC+Lv}v8s!N=*nt)U1 zIrHFLh`oM&E5i<3OSNYG8BsxF*Pcb_nYNva^-SB&Q+lRtYj0Uo>6xe6^PK5v&Sd`F za0{n<!>!zJ8gAqCYM3^hZ+HP;OE-+)FEG52$54hBm9AaOI!o8Cnm^->)5~`w4fk_D zZg`O8*YIkFso^!;!x|nc-TRlVWiOV=*KrCkyq;y>@J9ZAYIqZuI);b2Y%n~+9$LfO z_$d~{+u3t#ct<Al?+x$dveWRc((~c6XG_<6WxGqy9?PD~WWHqlVkYx#!+Th|4e!mA z#z25|z4TF?_q&OVua7c5b+4&wjE`!4?j$mP9A;i-(C0Y#Ro8V6<5%7LIE-I)@8d9j z)j7_UEr6GRHFt!U1z2_4`4^n^Hp`CWzJ~g~XmaY?W0?9j8m7MF9%m@f8R9Jct~Ta; zw0cSZrRk{(%7(a{XL07MYOwk0YA=^hn!Q{;Y4un>neVZD((dsPnD)Mvw(EICxok#n z@|+62tIcNg{*__$CT&?8=nruXmmKtW`E2qp2Gf@Ez2Fw`W#D~a)($6s5sb|a?+15! zd;olp#|Odpd3*>w1lIUjPh1D4E}dI+z31d#2S4NGKLdZ$%fAEO<M9u{FT_}X@76PC zmDPDw&zv3J0RAah_8$hn;_(si39#DO3qBd+h&5H$6_S_1*S(eW=-j2htw^rFC+c~H z<Dfg5={fi*y4A~RYjjsEk8S}oo}HdXu>2tX*cj0-cWSL>ene|yj;@uW#{-Oy#8JDV zFM-vTqu?)l4t~@1gVTu*bZy``$H33W^73zi%?~R3cR^X&>GbbFj$ec`)Dy`+!uT+f zf8^U7wjy%45?tjm?a30Io{Pbgy}SUHuT=IzFzJMIHJCExgUDycoNOC-K3Hu$4wesv z_k%k<e;0Tt##-C-w|}Rn8~luye;vHtW7?bD16DuoBcjXUBKYq-M|J%Sd>M7o?(8dI z)r&uMo^|?b>9dT-4d4l$gKx^zcJ!CcBi04DKERYoIE`S|iVF1U{OI(50^I63P2l++ z<AbsV0lpKAZ58FnX|uyQaG%HYN!df5zXQAxY;_HLT#bAuSmWw;@Gj3k27VT-{#4m- z#T@<pzwA3+z83rgFBkq%jCI{wcF@bO1IxG4e=+z77@ZM5E0b@LJDslv7(cpt=?AT4 z39j+@4dn8z+K#Loy$;ha<yXX5W2SsM82x2=aI?pi;JKc&7fe4npP;Y&Rxf`MjIX6r z<E^|CjLlku%kKeuo6GxSx!O{`I_5ij)_4wWFMmAdlu>{Am%#FWHTdf>$H{kl{)5Pi zV703N-UF7eUI1gOt^dM*J(V;;>#tk$Tfx|EYrgFMUE>^J$u)eCCD-tw(%&exCVt-J zM@r{VtuK$5{1~@&hVgHw;S=75=dj^q>2Eg`*yn63kH_c+&#%ap&czjs(P5M07xDG? zM)~nllh>A>HC5Dkox`z@zH1yE{W-cKz`Abv81qqUzwXZ+t_NQT)|i|HhW|17S(q{7 zI0Z2MC#<zj&qJJ?aiMeH$LL3QerW~MU%HRWEDZRaVCnn>^8Q%v_5uug{3!C(9uI-( zd)cGwdEKYGx`fwyyav3^<Bi}AF^(32w|n_c@K?QjJ@^|Q&j<e?z|2$EF3Ata*gZEm z=CN#}PZJy7D9NMpl3af?a5lr&9B_Vk7HmF00Iu`$-QdeSehxg-<0AO|V0@*&H|l=e z>DdEjJ#u(2cnMg2F+!Bz<nw(*{Nij-T@QJ=$};bqyc@jP%T?Ewfd6GLmwx$8{+Ay4 z(T^ozHzv0s-&MNziD;*N&my92HimU?Zu2gpz89vVix6Rx&6kM!wwatZJa70#h*oca zRsQ1<bL)suj4N7Vym%bPa$+?<9VE=WQCtk)g<9r`;X1H53I)$s-Nb}n&vyxpKMidB zS)ShvpP2BmBWL_pu<_eGe?EL-!e7Asm+{-d#_#m}ZurE6-^)Fk@%zEXAN2gy@QDeZ z@$fd|4}p!p-t#xYCno$&+;bU!7;OCQp1%V=G2!pzzRdW$z{aQFo&SsQi3xuX-(fWV zUa;}^d;S6V#Dss4?lb-&u<?(2{xSH(gnyjx?iv3C*z<LbDtq({Owst7kF}m36~M-C z@cc&j#Dw3(eYf#vfsNnl`EBrt34cEK<HlbAHvS^dr=KJBwQ;(+mp9xCHvVeQUjv_* z@Q3&woblI!jlaqBhv5?w{s=?e_}jq7-|6|g;1d)6v)twwe>d3pFM9rd_{4;NfO~)A z9|Rl!i02=LPfYm7IIkK1IN0-bJ*@uHJ*}egv-Ny;$@8<*z{YR({1*7cgipWJ8@~-~ z{7%ou-&tb9@8$N~`2Aqxul4+O@QDe3J<nu}zY%PF{O0V(XIWyxe~weC@rz*Ndw;s; zet|!=7qr3n__M+I_|56ZXIWyR{{+uZjDHgB`DMA7UslESAJO=F4%X=TdJfiTeDD9V zsql#jzn<?_7=Ier_)T8_EcnEPPro!7zXfdkcF$i3pP29$ahYNKPO$M;d;S{u#DqV@ zb0p)h1sk8fkblZH#WCRzv-j2bBVgkn^8CZ_i3$G*Ta}D|6zuuB4wwFNe5q*sa{PI{ z=a=Kp>y2OV{HgGX2_Jtp8y|l*8-JGPH^V0;{1*0!8NU^5{Dq#s2tG04cXFv_{BE%E z*Lwas_{4<2o;^s$$A>o>f4k@JfKN>LJGuNb{w}cbU-bO_@QDfk0M8YTe-Lc^Bc6X0 zJ~81R<N2rYkApp5*TeFEMQt37uj}EPJinp<Hh!z;x4|bS{Q2y4G5!Lu@ppUvbMT1? zzsSA|<L?0*A3L2r*jPbK_$SztVEmI{&#$bC`IXiDECJE@m9*;?&#$Cyw-|q_=hwq0 zCj4n!P8h!dZ2V@=Z-Gxt`1s*g<Ku^0jo<G13*i$JK4a-4#_t3hzu)r*;S&@7>P%*V z@z;QjzuxmV!Y3yDO+0Tm{xI11&wBoD_{4<&9M3<EPhWi0_%C|?e)z<Me}G4D#y<!) z{t?eV3ZIzpkMWGr_{YJXKdvt3k1KEuNHqR9`sGf~A4k93X?)oX9*4b(2_Kt3X8b*1 z$G^XSB|ikUoF6HhzT(P4p)ljBhK6genR!j)3~)n3L-2X^)mM|6aV?(;izfX3oVK}9 z)~n1AqFVhPWhj{M(v8Z@)bkhP@%v{K-qA3w_Q}bcYCbn<<7?kO^~NiIb?W4V#$xu$ zUmv*c@VLyxhAXlo$9|jh%@tcFzcL{+F*|a2VrHTwTh9N*-xjN{+<Oex<i=vz(X#Wo zz?=M3G1s2?FTbkGytFS<ju!4`T&Oxlh`46SSG`RF{FQ`m_wM!jq0`^J{y+F`@w2{G zoZp)3>FZq3d*5&BHJ$Fa*yZO+-=f&VN%N9ExCoJWdPt^lCf+;A%Mss<Hv>+(-fm<T z$~~CI(J-*=1Rtx3+?zVN@~VifMCr3I0%)=XN7Hd*fCc;cm_?L6`M~t?o3Nww?I&GF zv|x4VcR;PJ%46=iy|2Ow#?vwDB<`cEfx|Z9M56qqdaH^2mUO7E>_yV`L<^?R(soSb zZ{hs~fgP^0(0)~JzH+)r+t{$Q?B#iY3*Fr0i$BGuT_gBuqhv8y>Jm0=NB=$`WokLs z=vmH%#LK`u1ITm|>AM8a^BmPN-(#L5WEOyRf3N2ZD&z07h3)Twy6;TnAx2!ObxXG6 zcZX}h#7gs}Y%@&X$M@NB)B5^&*}Yrn-oiRJ^Ix#eQ72=jkx%t|o*$0=^<5{y=`~1W z-h%pbbow{H_I$KwZqJ;)yL))Yd*A`T3~9}po?^HknAA@L%2U6w<?8>a^(vf4hEwZR zxz-l-jiSbyqOjf}ps{6h>uRv+04Deru*&#Q-U={%;d-Utceb%AF7rpv-jZNC?n7c& zkU6Az<aBCYn|<rRp+3!>x3d1Nh4)#a1=FEp(7rOYV;4~;RIPccmw9;F`ga1^jYJEk z&(d~G<o}D-KdV>krOq91_X7Q)Ol@H;b3y4!zaGYm#?nk`rq~=wiAPT$DU<)S#+fe- zBXZC5ybm2_9n)HtJogLNvV!MNg+oj@^|tn1Ipdn9c+HAG-)xP0&o$S0`dhh{(=%_{ z(8#COxEy~d`%SG^|08cI=Yf{9r!*I1%ba=c!^YM{o=2Cva3<bcy#|`*^?7y9BX4Dn z&8NV7tWcoC#)Z$)GwIACqRw-+R*W&n^gK%Mph$wXHxYP{$bTbqEI5tuYmoeoao^(J zmHc%11ZC(~cjNnrw{j<O&A;SMLLMlMzW-y-u<mz<r}LY;i>IIY^cs-jU-MkX4+D2) zrvH!3ga2K#V5~cV;7pO6H8fka!ue3Hw4DhhS5#WFLnHOg&a5}X3H9lWY5HuoD9x|; zJAE8nIMbQ6pWIMi3+V+!>B#v!;fILHOagZk-^#3C3-1Y{1=FEp;IFb~(z}Rnc4j>W z=Q^SV(`RWrCi36NtT(M3Sw^jooRqZulmyZ`v&v@*c4jTORGf~_tZuP5?X>FV#+c_+ zm*cejuREj8Y`E%Qc1CUd|IetUdGi0oGwNhNPIXA;P#_y6|BcKoJ8_OWo!-B4>A&c? zT;tUZ{@U-YT+3CgbFH&$x$`nLFMq%Jjlu`3Kl|F=Q!my&)qie(`Q*>nJUO}QpMFv- zKR)4{>YA;30yksg6!&bda%9GYDY0aH`Ibo)Q?@qLDZln}6I_1n=3-{TmIn9KZo<=5 zTk=~goqWQUs;%+Uy~>eKRj5RjlVAD$zyJQw8!;!wDUY9)jO~@RlQ;LDQ?s={J84Vp z=VpwL?Ksq3cC2>O(cIhSczd40o~J9f)^5ppJMvr09hxzr!MAC~_$gcSK7Yo9{MN%2 znJQWM(%w_Yaw8Atgr{uI2lmFg-rU~(GhX|CW>-VmYkzfW{%e1IYTJarnY3~8=9(ub zY;BlVyD8RKwRPsa*Y=%?t=oF*HyV^$J>|2im2!hqHedPQ@>^z3%#D1eY{Kx&@5a8H zIbnL`1lJGkR~4hf6DF5U*_v@W-u=PkIcNr7ov8i1d*ZrzrfXBJ{IR8K1bt8Eho!4> zYs2HQCB-N{{{4U0c*4-o3HnF(bfW@#i-mU_x+hbteQNUNEBCd!{w`(?^;VZ%`D;oP zU;EyvlMVHg4=_IFy|VArG1XLzrW`!flPNMPMm{sXH8;bRy7JfURmF&sQE}ASL>2Cj zRPKN~Tk4sv!gt^P<1by*{hh`=&o6mm=wRJ{ygYkL?(w_#4Q40)#h2fE?$(PxJTLda zhQ{*${QrLb{D1rX>u$WD;awA!zuHlA&4>QWdzLT%@OS1Me&pZXx8$x*Jb%1x_CJ34 znxEf0@zla^9<Th9pTE*{@9TGd>I?t+>tC39&YGKl`)4=RFZ=M(!ykL!cQR{se{t!* zuNeMu>(zC){mqu1$=C1r_0<2+@o?A2FFE)Jf3&%7$$z`O@W`!y_RRlt`MCbgo0s2R z^`2YiJvUtbi^1O93zw{XXKeMUQ#2?2OlWH0)Lkw4!t8v*C!>e550|Yif288k%E!iS zh&>YWcAkY-ALtw6Id@Bbe>BE}ZpR9*VA@;qwGT&YvyYTLTK-tY26vJV>+EjHSIy2> zKN>xj-B31|ueoJ<`P_VUTv<&}C#3QXZt46@-5-`Nr|0x79eALBux0V!;_x9>OV=61 z13mY3-Q4v+$aQZV;QbaKT)Z?Cf1s<cYXEUeEByJ3dj`VH&hF(M1B?4QGt+r9#^UKM ztsV0_Zoi@JwmF{kf7MmIu0k!8doYcoVPMrpPLAsH-|}+h>58wFsIIpw#KYj7L<^?l zMg)d|Z`;ntNuu<HSMeRB1AP(oW`>9sOvjxF3<LAq_z+k6G<%dM`v!@DzHBw=cA^E- z!MnmjeQ$3dy@M!yy1F%ey0Q=Tb(2=KVEP_KU>NxJ1AG*T(kHu2pXvzpz3B5fxL`W| zfRtfi^)Mf^h|;HL{HE_uz|zM>xkC0JA4MS_Ovm?0i|0ex2;iutI2vznfPvNfDK-tD zde8BBYR`{}fxhx}r0a+lEKg;;ZOSU&&d1*i`CvR9gS(~i1(NC$U9G7PWuK0zzr#$N zj~VYnZo%|f+K!3*H*!U1S~=1<jprng&Ls%|X^p2Oke2`K?=*T3t6|3>Kb=;)_4gEo zA`MYG3Gn6PB#=Ir#Km5)%Rl#=ZUkRgW61@do|j4|bH?Z2o629EN^eM|{~(qAH$J`7 zJ$L0xZmInL=+i^w%YQ#f<^O|E>pidX=YJcWA6ftE?_T&fk`G*n?T;==rLP*54lc%* zW|DJ3a25zpOQpY+@uCsEC`ND3(aB@Qa(l&!-n!NQK*pW3R&*@w>F?&9Gw#(YzHt1O zsnPje@u@FW%D)cBmve8y2~UQjRdmLu$xKU^ofo^8FJ9WQvU~B&_gtL`PmHBT==ETy zpBtC=_vpP&ogGVh`W6p7;GD92@x5Ig{i~Mn>Jv5FH#v4B<IVkDa3jepJl+Iu^jPcH zY>&0}Fy0)08+blg&pFo;Z})QPS>mzQj9!nWhc(`n-2r~k<DFpE;6$$S?;>W2VEcYw z2Ad{LMW%qRa}8rtjp1!9cZRpK1R18j^9)m8t>InhvbsV%g{47%H<c~;#9{fQ0c`EP z&db%V7LVnhTRh$dzBAw~3pfKFZ-;{)oPPNPKR7J8>NeZJNgJ^vX(M${v9?fm;*)KG z-_Vt`ojQ`X%kQQ?#04I2tL>|a(*iszzzaNH17}enr;X#}pSi^TKrUTY7dWw#@^xna zP{0W>YidsRv=VE;(%(WXczGL`K60G-VAe~=p?~yS6Hbo3ItM3My38JM;!kuX_Mq!R zvyJkJ-`az+A+F{Wr>82Cv6Q*@$SeeN9vm;5nP;*mkzeiQwa96YE4v7cJ&w}}#s*hb z9Ol<}olEM7VZGogvy=J?h8LB-x2wP3Uu5!b%3Iq*%zT?DKj(Zj4(W@nY*kP;#EA3y zn@BkkKR8TZslW2JzSD-&|Mm~3$@A$S^-;oaW-eIS7O?ayEb{zLFfrlNmgMhly<p?7 z_xz3Ui3xubO*Q?)VB_!f{9W*g3IAFAZ~Wb0<L~$U1MrCn{~-P}{vojAuYOO%wf9|R ze}@VF62p#$G52&`eQhHfy$EmR+0l9QKi77ReCqFjmuD{HIY4vm=GE@WLT{b!)qAJ8 z&spxX&3!I(pS}8Q$bGu|)9s&b{dCi(>pxxl=^RfAnxzaqL$y!w93XRr)5Q~mwc@{W zGIKmWM)P&_PbI!TG^A2-(6flzVU=wd*I!vZ^4W1>Rt>jT79%~05NrQMg^$;4n)LbF z&6A&+vPJpD^6O7t`R4~NZWw>Tfmd_2Ts}3|-;v|9s=4XtxXkzyxy-~#?>+Pc&tSfL z>gc3{PfW~hslC9J%oH_-U7+q0JmDFd{8a6h`yXh(>Cig9<<-<)Tg+U4a{Al!<mA5A z_WELUU;ClfvR01WhuZ(_(;QdBiP|3ktrI#yJCDDfIU)Ueg7(VEXu*e%y42^3ncAm$ z+O_VL*P;clydKSupPLmc;^S+7d20BEmn*l#PrHg0uV0;6-jF-SHqK&n!(LjHiF2+$ zS<J;H(rM+~u;YfGRF52Ew_W9y>bR8^uQz3uA9bE_dZHV)-|!=Rv33ei^5W-T)X>`A zUCgw%s@=^wwWPUL?QO1)+uPg}x3}4Op}D=iy%_Zkx8sQ;m6@FEeu+A(N370<@v1fM zj~n)i=hzvQd*y{U*1z(-H#WZZ{HdJ{byZKxJ2U3paG<8C7*%b(VW;!fQ^hE5Uw)*R zODuxXT;G0#&!+aKL!ZP}>~Y8TJ9g+uE$v16b<8>@l=|EH{Y=OGGcNkiHJj*@ZSh#E zOvc*u_Z^t|`gNJE_6c}xhep~BPu#Hkm$^)Ceoo_UQj^Bo6S?a57PCiQICb(!@zja= zR~-5FspCh!bL!ZUzdm*J$X}g0Qq19>u7(N6<9^w3M{P;Z<dONc)HgATpT(*Fx*EoN zU&b}=zTpXaaN~!+H+h7bD_?uz)bXRnk8apkx#eipsM1!?YI-8mzPgxczMy&h<ZE4T zkDokJx#d+WT^^4JjirVvJg+$rS+D!C;KzQm8~e@c+J|8bi#K62b2ZcJX8sM&U3pSH z`Dy0!4d1%q3E|%HH|%bh@M>-%J%Q$Wr@5Wac8!qcZdoSpwKrj9H<HVWx!h*<hVCG} zo4BqRWl3j<d1ATn8H3i7!txobCvC2M>evM4QD(-v_{fU!M_N(ZUoS?#x;B%4&yHi` zHP4uxM_VUOIUrkknpszjuKa6i|A}K&otf3#e&s(L`|gQ`L#>$^um9?+6^DAp_5R{- z|1tOai7gfAJSLs-iWh4|cKphJm~x<XVoG{qOzFwfrBjAkS>KR`lC4vI)Lc8|Kyy>` zP0e>U-`l*#<@}uWw8HfyE7!O`KJ+QKcIT>@RcXg*4b(GcMt0_x6EbD1Yuj0MrX2X$ z#AsYAPt*Ogay{j(sJ$lE^bg&qPHA<V{M0>7o;@zAY@JZGHEEgHS08$u^>Exh^>2aG z`W86tZ-JA0bIy^yr%qL0qglXn`P^?k;6_0vzxAG8orR_xY@IN9gw}f>7js9dGUHfV zzL&|)+<V@q;xW^Z`}(?P*PZUow0Ajo@i&C1x90P&J^#keNl#TJE6NogXGLj@?qIbq z*C?E`TC2*OkIh+k+t--gWs~`PLDd$sqgXNLj@!QS`gQQ@HJT3%sYjov)p|5%wdT~E zg}3dT^LYCN<<xGy=kl-gJaPGXO}BmR7ynp2{)x*AQ;N~#k(XF8Ui<DF!->{t&evYr zb86e<5lM4NZM9DpqudC89~g@NRy1Yfob9i@@WyjLE04zIM)L0O7R8G4;n!zIHyz75 z>zkbQb#rb$GA@%lF)=f~`dZED+rFZ58k3ycnxdNyyOr;y@1E+WEgzb5^PD>69eRXs zb+pbozk2+fuT2`6bb*zT{Ph{pP53CH&8+m4>^!Zc+ORfmgIbnzJ{EflqgSm^9do`` z`P6M&VW}Oycb$IP@OQL9{5iD39WT7?nK`W|b9{CFszVQR4N-h!<hJc~^53G&(?|00 z*l<jz?}%S_oj%{nSYLd;n#1T;zs#w<ZTKaBO*E&i;M)FjTjsdSn>S}`Vak=SJ6l@| zwJ*13PR#krq^pXVdo&{>&E`oXjEM2RcKN0$y5k5Qb#*Zc+>t91cWl3H$2r&Dw&RKO z+b>s7%=uc?meRO(mNJ@(x!SF#>utDPnsx4Rng-izWMTVM_t{vCu*lUVU(R`A&O+<M z*RPFkY9H^)m?zJj)B3YqCR=`0G5gxL-`IEC=PF0CTMn0vYQwehc~0e8PWT?kwfrRW zwE9bPfivAu*k^OLX47qHib5@~wa@D~zkNza?WFFK?)E9V#(d8N{<bxZztOo-abxS8 z@|GXbORNU7bIc>Y?IAlVXUb>A+#IfooLxW3ZaMGK$s@OI4eh{7*EU=$KXpur>*+YZ zAy?C*H6m^e*H&n&;+qb0J~gL(Qm*<c*VjAg$I)Y^)Q^KH?rHs&?ww+8cCD_kX4l_w zfX}A(6UEFOO`O+Wc;jGhYkbw{N9N@vZ?x==J^j*&sQrsOUT%%rTfWymv6xY*mXV}K zo1#%=INxXDzHb?c`3)0lo<1>tT<*$W{o<wS$0uJ~jHL19dC{UT?v_^0<=7ytXVmGg z>7-4*QRzR3?QvGT+!l2fbCb6eb1i#)UyPjJgyw}u%en5Fr7}mpmvOB<Qw?uroz4V- zbK)C?k8@YB>6iQ7SSPKuT*sey{*86~o!NWz<+)M!%O8k(=eJDxY<}w$|M%x&#RWfP zwQ_5syCdQHy}|vxe8R|;f6h7cjpoYvbDNu3C995dk1}}{--aoVaxeWV>aHGN``%xc zoi}u%?7Uqs-xT%p7w4lBw!Ho3$s_rvZPe9n($!N{ZT@LIFvxmT-b}vblGipR8ClqJ zAYN~|dS*Ou?ZuhBIXAzxVf;Cdzp87a=%thKomulNTaBXmwZpKkYrff5qvj^9M$v*| zZo)|J^YVsJwMT*5#)P`QXvnos>^OfiS7hx~9TWfgA2Z|QvuJx|#{?v`|8yjii?4M5 z`K3(7F}|RunVKKbHAcgE@$ve9j*qT4HpQd5y}Tnw`SG=%o7DP}JF{@@eJZ!L;li1f z4Nv{ktW&3SMsLp-Ge@hKqvK!EXRi9DVl-)(^J0GTzAIlV=EA&U?wjj>`GZVU$G4Pz zhA#fP{y(pawQpwb9ZwvaNbM6EhTU=eq<OzSc_DwjkFT$4pNfz1PKsjgOnhdOn-wuH zKT_q+#q0_gbzP@x;D+(FoAG)r{;8V$)US?YCd56CY$ATI{pTZ@@yFfu@2_6=-p~B~ ze;6vVdw^Ih_Dzhh=!+S8q1bmpZ=LJ;sPA3zGXn1I-rGCN%Wm#%^XOx}3q88Gx7Q(W z+5V_@>lIb?H%r!074Hd<os&1KkJN&`aqZ){cjnna+$!y7P~D~0x&0XH8Y=k~+EX>3 z{d}dZ;;h+2tg@T(pRfAdl#TIq%S-+lM0*));`o<NWQMD+EtYW{iLXrVnW)vS{$_aF zVvFyoI`ONh{h$7}7%|sRL<`+nxAyvz59i+f^8+)vF6Qj;^FPgGx!*q#b^d&JrlJ^; zj$C?CuBliS@8~F2v}cQ%m!3bht-RE#@6jsPbKD6hwY(D7lIaU{BlEiRBc`w6+<Pk8 zD~g#bk8@wbb-H~vw3>BlCAGS%gobuWxs&UTkEc(|OB-f(N_uHSqdVUCzDrk5EAS<W z1u<yz=?~fQwiw)aOMJYtYx&}y-WxhQ2f9|SMC5Bo?~kbQavfS*^0`N&4SH;^=YC0; zh5RuuuT7-vlV{IDykQ|0)&+U(v-35x^Yv?^N3xHWJyyP<g1ka0KU>Xyh?e|tl-?6j zU*bf2-1i8F&$z#0LBMTr`zNN_{)zf#?Vp&sC|}QKcfP(gKea7iKku|p<a6`&E%|Bl zrsrVB3R?rci&FbG7Ub*ZNp<aA`MUY}T9RXa_U7wu$;($kdn%rF`$aaEooT;_uU@rB zZEg=r<CuF@0zXHCDf?77?4wPoJ_`Gl4l3Uesl@0q@@3esK^vl0*M^;E=#$_4o)kT9 z?a*J|I{Mr$?$T}*m$S5MV6bOd&r<f5I99l?<TS$4?!`TQW7GN<53KC!SloN}ih-U% z_M`N4cJ)bd*QlK;V`%JJdT+<dp1b=N53U+ulX=R#SnZgW$613t+M1p!C4R@s!GWH> zyHCsW#g_10!cx;uV+DB~uEc2!)N2bQnP;f~OqrqTm0i8dT<g2oypw7~$kQKbSFT!e zPw884Zu|Zi?o<cex45^5oj|f{h1(H?tuv-K`WpVHcLV+J`)<n&=9#8jr6wGqkr=Es z?r$%WPa~EK#9?ZV<67c7iIOW;5pO1j`qq%1MYLc#<{~f*oVuQmwM6NYEvBy*9O~Om zdMeR^>9`w#Vc@0Jd}u9}KG|yeJ_io<9VFdOv|u_mATSKPw3Ck!qV!E5n!djP2l^uX z=k^#OcENP~DJjFi%ZOzg`H(*O&Gfwl4)m3^klcgJg6a6L2n+)+M^~9R(w8SH551Aj zae+Sl{#(?5%!1b;N~mud`l3U~q_5iNNnZgR=&NiZxd@pB)2DB#1olnu$1k18q>sO2 zCiZD;1p3Ae^Y^@Gky$W(*B}V=HSFhaanq1VUyaX`eM`WBzPGiJBqqW1eH=-kk7l^v z7IOOd+iGIpT4fM5CJA}$iw0xtK26{6lM3`*i+$00WU{Z;=gGcp;6PtBGVMV~g6Z3e zB+&QXMWjy>rEdyRdD8di97BEENXs7<Oy6z<fxcM_Nz3=rSLgGjPva`o_blnL#>*jJ zhJ(T^{Nnz$FMSshy?xoYfkS<VNsh6;WNnT@S9l*|F53){z5>zoT?Ljt{^qSPX&N63 z9E?B2BR~6r_-HwkhLA0?6i4w0+1Y$}tn~HsksSo6-b;v9uj){}KGYln$Zr-bFSWm| z<|O(w)+`uLM|V*hXS`z%^LHD#p7;);>ct1?{cRU@QtV5}Etoz_+cA;<hW58<%~NQ_ zXxWwoRvkY#Vi9TeWfDlMtoAA>v{T-6IRW{a14$sQ_3PSL5bc4lbP~vyUv7#8Q3Lr( zCxLveFG(P+`EW-psCX8>(n%m+^F0ZqHD3o~K{N<o=_HV^`IiLJ;W*GLtnr@&(uE`e zAboKveMu^PDd|T{<{S4}pPohI<nKT9>8YgU@4xhEbB67ov-D5n{A@LR`TNvpK99+L zi0g}Fg9|=ACzW29N_VHy_odRGOr<}QN^ef3x5epb5%%&w`r}mow^Qj<d!v8!<=ZGs z|I&*-#O=u@W6-Bl?ayA}>6<7|f9pL6F4T~wzq5WkWg1A+-&x<@sFieq^yv2Js*(*F zOEd2BvUKa<lJVv9nAiD1zPn%#((WofOs6itT~>HS9qt%(nc>y2+edhsG`Klgys~eG z+t}F0Z%Aa4)QX<YxJ{w5rQM_NK>VJ>c&A{;y<HD<^epdRF~DBQ`+GasI5=waW5Dve z7d!gzUAl6HZG#N*ozd)NoY8R~SMe(bOrLgJvWand=X=J;U>oL2eX($vwk$5cx8%m~ z4#yj|vag>Tp21~tdueOO;0oOY#pxwI+(EcIB8hufaA$Oy2jd$ZYI-nkq$wU8=v>ur z_M&9z;+0*p*(q?A*uBnaD#II`(=x-mn$t4l?o4iFuu6320XMc;M=CV$TZpW=31+=a zFmoZnjPnFv7GTcFiCntgMbrcYzhf##g;t`;LyQe>uitd?S*P5d!A3APB$)Z<a1(O$ zC73yz;F*Db%2!yulu2yRoHiRmj16wDAN6SMar^rUVA}5FT0fPxvfyM-pXxDri1DY} ze>b0ebh`a_I*)KJaG3V#+@E0V91qW(tMHF2yMT0?=dh+}PpI3wr?S#(^@0o5Udmi# zxIN&6m?dzc>XJRRV4bUVj-pQ;mYn`b@YMmvZ;8A)z;gqPJ=y~p9YN3Sf&4BnKZ?B5 z%l`s=pO+s4Kj`IO2Y<rLkAv5Hd;+}DbGCy=0{kV9_agtY=br@c1lyj+U0yDo-wZg< z1)O5Qc|MT;$jfEJkHPYrY&aa?mje7+%-2-VJCuwcmB%=G1|Q|X>I?Kl)d6R6fG-TN z^^y3~0{P4UHwAbeSbc%bdM83+!<_+M6yRksj$VX+Pat0dMo$*o_5P(qkM9><&+A=G ziF|X+*E<aKJJRNVy-PuysEWA5W7;3l-%c+4ESRJ7iTcIxo&fLj{OjQV0IdF%PY!`) zr}Y0Umg~2w-B|SVMfj4b@Co|8*r|q(ao=y4@o|}9d}s4Z?XmSl{c3YfetD<o%NO;A zvEy>X^smiX_sqcNFYT*RAMGTcey`HFqR+L~Ia~{7txNDMuzVtUODxxz$}9rQ4~#+W zmv?-|px#lIVEQhp>+wKNe<d9HE5YCN{9WkzRv_Qw<+6EiAm1P0AII3;qyN-ne53a< z%6?}veopMc&#vAjaPYH}GZrEo?b<a3Tp3_|>-dL|%ZKutFuVj`9N_u@PY-ZofUgVi z`@!m$-Nd;bKL>8}oY%m&dU+AN2rU20hGm{3Y<(eYeIdL$=D2m>L9l$XfjH#l^iQ-l z(6bJV{-}w#KENA2|I5fXdHf~taEzTj>QgJbEx_9Yyd%J0%_L)0<1!ili~}3<nx}T2 zm5*#*MEEF~Q$>dERCE#Cb1j>Lj31i|x@F0$?^=nq9@B3c|4vSS>X}4>uLi#peFfz7 zS6+RjI%WqP`YW%#c$7FVkl!BQg<$DnTxjkjdb$G+eUNbQbHc&5i9Pr_;m`*OhczwX z;Gcwpe-aLUNI0xx3Fn6a=f?r(aKQOlz<H&_iD-_~KaIBKV!7TEpf%U|qz+sIX1wVd zK<|i2<OO8bM_~885Om1D?~;!R@|S&IMCYJsCZ~^*vH{lpf3^CziAcQ;&jMpdwfx@< zroXGzk1gOUJZC0&I#}~U<AMHlWtV{IQ&+YXJRfXj+dW5R7lPGB;bmT~@z4iWy=~w@ zu$5ioIpPn2tt?}})%#WCPl8pJI`#dbr0h1&QQ7TaEBkdX{{eE=Qdf2X_&KoEyT@}> zb}!h<{?N-`Ma~#-WocjL5ZKBd@f?*s3bwK*VyynxnkoC$ZyE=#E%3EwI-U4QYo_Up z3SiA0aW3<iwJ>S~OOJHUisjJ+FnLM8H~X<sjhw!mK9xLzo&mZsQwzrL4i~`q(P7z! zUmR`#(@uw*z}V+-Gk6ioY<vb-YsfkHq+%WUHDHamIwJNvJQ>VbO)z6A;m-}^tPkhl zm#oIdqCmbZ!2O=H4G#4=ovXpaVA-%9JQDDCdHF`<jDf_4qL*(%zTacne<0u-4)99> zehrMBx?a$E)Y_uHG5zY_1Q$F98#R}cvQ1u2z3S6MJ}<y`dXCE8703s@oObD4mXuxV z<+MxZpu{%$#BAOXVEM=7#Q^^Z?ER^CW+t2?UM`!D2J#anoW(W9*Y#L}YrxWpE!jGc zw}Atn=zGVGvmJRen6Z>?CHiram0bSO9H|8_@O<pawu60JvYi3$4Y2%XoV5Xd670vY zo+l-oXTYip-|Jbh!;gb^2K>N>*}n+NJ|E-qM)><Y#vj=qf~{Q#0{&sJ*>EI~zZ&3R z?3JO*^pxQXE35Z$nf+x~1bAkE+dO{<Pf6zoa*Z)>L)nr*-XGvc1H2wgTgqs6*%q+M z;+wKB#~i(9tBiG6oO1f4>>IIMbEj;#=ddp7y=L;Q`daVZO6=bcHhThJm7OSY%IO~C zmsf((qrdl+SI2VcEVuEt4qOQM(*i92$c7i;%nHhCym=eSZwdGd11w*u><g6b2FoY3 zy}U2L8hgkqvdC8l@`u2tKk#k&CghW79KI?a39$EP**B3Bld|6mIC}$3dtAM=qg?(p zoj>*RxyX;jxSTOqA%Dt;=&qOm_O?~fPgb@<{`7iu9h%_4pB3_<%HoHL7O?50KZMI) zMIQLGVo|Ke)!XaK(q9$*v0Q$r_(Xu$f~Dt&$nl$<n{*zsYi6Af?01hVHgb)PtqK+R z_T7euxdt<gpY2+@Vq582x?+3jTDoFK={j6v{YooKI~xo?OC|nXSrK48>pK^p=-N%^ z%5xbH?r&-ZFK-}ywa1O%>pZ6o+!A2=(v@9^e7@&5fqMhaW-q57bWU`9>A@anLo;}H zEO&pCVBR^o>U}=o{~*Bo1N`F{yX(Uvf&3M)+K9b+ueHOiq)EyK@pbLu<g_=UU(cl< z<%g)w%V|qg2;`Rq@+$(l{AkxCV0*`Ggx=)dhxXWb(EXb|KXm6@-(R{8ws9i6Z4Btz zDY>7L@2su>>pH$h{RmgrIS!*w{pc|LqduyUPrAYF0q%`C?wWSU^LN2n>+zSsn>>C7 zybUa0JxKhz$HU;=F(;zV%s$UQ34YOI`b5{R&YqXRN5RrVKWAR^_%QaB#~j_4sGpq8 z*cjn+hx@?|0mipZ&urwkc>FE!tpUf{tFnu{TsoHpW#t$1E%>UbqzSrzw|6E-lu!C) zkWAwTSbZ^BebG#u=CQ^<esS^^F#R-{zR<HwJ>zw9?A7zqM1H52(<WVuCi2ceeor9p z3*^|7@K*<N)~-bUP#|9y$k&6_FRFI~(YH~yhQA+>$TtO?9KREwc2)amWl6us`%`O9 zQZ~ett(D)HXPGLnY*79rFE4=cZLRd<S3M(h{5-hc^9x|cNunQKQg1^b4>5I|k50`? z=|7+PH1_n&!O4B!oiE#7BQ_%kN3==(==j3(W4ZesA;z043s?7{j<0rgd(Ikge}IQP zX9Ds^z5Ge=Mvn);n?2qJekPEA2`u|HuD%?|zv{7U{svh7{1$O{ATNSdwi)>zFMk&N z1CI}Yf8?=jI2dEi(ahg@`77X~0q0e)+4IXl{zi;-uc>Ex&K`WC`%~vz^y~h`$$tuF z3?y>;*vTJ4UKh)?Hbe!Fr-K<^j<Xs}zbCjcz*l3d&Dkcl9Z*I=>#&`R<qI1#^6ACK zp|6v&0akhU?zM6N<G^8!TcW+6P4@|7{%%3N=VPzNbi!}oZ(BN9DPVu{I|R+1k6k(! zCw%Nleutn9JWd4(3q5}kn3(W8IoFu}Zm{v!c>WN4V!~g`vvlLH0~>#v=WmBkO!zyP z!p7eTHvT@(e-S=0;qT}A$M}pn_uCIp)Ti=iR3As<tADFKU+02quV3r4;}60oCVa+( zy-P5njprDD#PexKL`?X!#oi^Tzf;(|1oaHl>E8>VnDA+ry-QGkJF#~OMu$EB2z+9~ zKgt?w_8$X#dzcnZzy6+}X#8xBb=C9rw+(yuV3u(udvq_WnD7g%hsK`@HvNnx$8Um9 zO!%{yBgStAJN{tr%H%go^=lJv_IvX)W;9+Ezf|L`{LaLL8X8;ror#+>t-Mp?4gXK* z*Z!ZA?T_wr-yDy>5u)FWta;|Xs!3bwwpP2}2q?)XkJN0Pv_;<*iGQ);K=z<kRf2TH zzjGS1(J?F?)$ZFdCOdOI&9(Xli1AAGkCsm!X}(YvR6pIG|JCj&^Xn5+5=+dEGnE}} zpT74}!!K_RHVt0hH*s)^ebeUplkU4VpXz(C?_Mv9`nL8~_3iHaO5Y3aTPl3_Bd*In zPxs&Gc2XC=Z=vtH#PT!z2FFl?`v#AGUsUycrb^!ebKk!i%8yh(<?0?)v-Gx(AIKGI zKbNDF`=!sZbjwb)w{=`!WqW1J<GVw-D^E1Eea8JZtJ+-UzUgCa^2hY|Ntho=(1iNG zEv<QDp*r~fL@2L4gS_qx@-yiPzn>B6KNJ5<^`1#S^$hl$i67R>+Lr{rt1{~QB5%dk zP*=$3J4MNNjY4_j8RXLfd1w>-z^32)_foVxYe!Glz`%-umEpG^Tu$$bC5wAI_>DS! z{bKR*vk~s&_u`g~`Vm!W@Gn5=S<&aTyd_f4sGn^;P0IjEI=cC-JhpM&JL+2>DQZ{W z;w8Pj(`d!Oy^9A{tm+%}<&G3rK3K*V&AQ%<<bKd@aW7w5In5bCTcz%PzJjCg;*3dM z+`o89PjAm)PuJPh^eo0}eVrZs-R$+!`{8<4cAwQk3c#Yv{v{>)y9So8!qgsKVlzO6 zO9%K(!r*%_W4MY9c}sd%xbF--c(yKB+S|hykUF}%dV5!NXcu5gt^5@Kv|&0YaHfWz z|NX<>o|UKRNHLc$Udanbv}N!tD)}<us^w?(r2PzH%HW_f`>n+@Gv3M|?H^cn7CYr1 zT5`5Aa^}ey*t)WN)nMm}`}@vPRoBWvrpucRF#l7MXKu6mh00X+*o9)|l9el`Yk&=O zEn~4*)o0!Nf7$n=bPZv_@H7NmpIa!L1nD|M`_v^@RQhJ3uB*AnbwT%^rb7b5bHRbW zi*yZT`c&5R^@2lvT*D_ifC;`E9O~0~%=AgO>H9P|)OQ_evk92sb>L86fwbw<)wSv4 zIm0M@+*c$zfC>I1aHww@Y15~p>H8aSXy5xuk7XavD@N&)UrZm*4ibGlgBYc+ne<rt ze&x$>P`Idt57So-_V($S<S2c!Nspl~;(5p@`{t82eUp41>F7h?u)V5xEPeBQ84d~; zE#$-Wsjtnx2f(2|jkB@z4f--16fWxK!}LuCo4)PfP+u$QvGjexm*Jprk@TBBT_c&k zA~@8ic8#S^zZa}BK3p^eFnv5vO7#5#9O`Q$J(j+sz6=M2i`MgD`s%>mzU(F7P~R=2 z$IzF((3jz$aM3UyrqA+7XKzCu>eD#Tc(UNzn3X(i?{?CfOIlwFM6>Uc;85Qp((<nb z)3*jesP7PI(|57YlYKkEp}y6m<qr#{?++0K`YsknV?p*!^?B0wJUG<1iS$_Q{kAW| zLE+*~KFq$$z^Y67j&Th2Z6~eqZb3Xk_GLaiR{G*?e3-s^u-C^6hDYn$O?nLb%2Y?F z?;vT@r!~Ozy%!wXx0m!7{ZXd#K%nmuaZKMdpGSMk^j)%0-yzat>1+38I4E4QfDhBh zv(d!9-v@{KPLQ5TwBT(jdk{fr-$v4=ufgZZzCQp5`l340W7+qNFT+9Ml6`!bzL{Xv zC4JxK80u>zJyw4_=gV+VaNkcheJW%6{yTZ^171~irwi|Wa&oeBa)<{Ea7a^oq*SA& zWD^jBW!fV~8ZF~QhT3RTi4rhqj2S?NIz015MGb!x)CeKudZ`b$6MMOR7%yKZb+~<w zma(XG#&#Gdwak2}!#EKlqEZbQ$oIZ$uirZB91`_D)A_#no^Qd*dDm~f>$iUE-~PAu zUh62Zt*;v4h4A9YgUkEB@JC~Yr;*nU&;BfJ1^dE<2;2HtFQeEOrY>7wKf+>Pm5!sn z>A<$WT?mh+?^2xxKXhLz!ynPdb2js$zD4-8_3cG?8oW4dQ}_=du<ZL1`%eQr%S*kY zZxyhu?=ZrwUvZ+Z1p-@NFT$)F>ie3GqkT^RTl)B1Q_bbzM>)~Q>k>=fB|NsQg{Qt0 zJmaXZ2fwyH+BTYf?5DQAG{WoQsc$~K==&>R+LQ+m7iz*EE1lr*-$BlNwIeS?Tg2%! z;a4EA(qCGQd4NX9nD4bZj^#K4Z0XBqA7C4cleqB^XxkW-KOJfRRY>?19)GR#)Wk#J zo`j6&*UR8(6Z0s9xAc8(KX_k<Oq}SGu>2bN@9BF}(Mw}^y=xr8Y!BlQj+y`f!l=KD zLzvfl#v#md8iz2iw~Rx$!~_5k=Jk$o2q#Pc0AXHl7>BUkPK@XI-Z+GlCIEmi&$q@Q zJk10E5a#*LIE2eh003d0Z;V42eIVly=JDP*gnbhLK$yo{;}EvT3*&jbGY;V@697P% z#~b4io@W982y?s}hj7XS01)PQGY(;l3DZVlbS#FALp;ZcaR`3{0jXozeef%qz%cvI zHCCAY=VmL+{=?%M9r^4(8&oI=v;RD6h1q{zvBK;>N3AgWj|;PuqdxQ>_ls5-{l}F$ zW<2_jdy5s1{^Q<ng;6%nIVr~%dXoshti!sZIG3bc0`cfi>Nu(dL1zzrLC2RN9{nq1 z`h<>OpyR0@{VlXihqeCD13Jv_U(x?UyK>@joKTMG(H}#+PYVR<Z^*U}{WCP8qqTl@ zJw*}ihi!SBlT|LTFE6Eo{NC9|ytJRBZ`JWkUy1k!by(s%beQ&`?(_EK#J{M+3lWe0 zo_8cC{&(5oFld1b><d>&5D^$3VfIPobiAwq!2B^@_^w@6{Np;v@?rdh{~{-z_dCjI zeLvU1+2CV*g@2>Ny1bclfaZUs<EMk4!ZAIR&ClnW19a3kAMxgxqtf%Cj_m!5ub8u+ z@i4?^Tl%rH3ZD0@IY+9W9aCyQ*@Bj_WAG^XJbupe<DB^O9~$QnXtsV*JW7oHczBfP ztY^Y1-hL3AlVFUezvr_?edK#SZPe$yIW+yi(R#QG!kU>&^n=_{qwVH6?}2Yt^2~E! zW=m!I;cpfzTW)L5eG;6NY?R2{wAQoX^O9!A*(v2=aaIybXmjPUaTeDS+FW^noW-?- zHaGJqIg6bow)uRloW;}vo1+_ZRW{L<+HC7NbCzON?YF6Ays{Okh~W7@zw|#p5+BO1 z;euy;R1cL|naT6&?5r%Q&9)z1XC=squ+!*g(pmIT_DRaIE7*U@e43w?TE&q+n(8}( zqgy5_*vctOf#xVZJg)M1%X1noXZ};;aPUs6x(4EP5pAaJxF)K?b%Sy|C5YU{;P8D+ zb^VOfh~eOR=qgEzYab)GG4h(oXD{ILdVM1GFrL@mk{81BL=Uc!jNHb!)>H2@!WLBq zNsI8;B&}_;jbX!B?<%GwE$tJXHV(sF+RS`&>TSNHwezwu%FFlTRM~Bvz}1r0t}7cO zZRr?k7kpY;==mJeCgFMgEagJDM$+<E<TggWWn<)fy`;76v@zP~^GrKR8!eQycKz5G z{pup7O~IpYT*N*@+i|_3<ki5JYdQ18wVaaI0OPt#@o~M)Ypjd-{v$cKellfD;WbyW z0lNN3Fw)lwUTE=c9Cn;9NV#(Qz#>U&m&L|Nn;awU;!jKK;rTM_fnx=AdNK8IOrWk5 zP6D&c(vFC`NpvFa+k*Kk92=v(rc!4)JoHaxUaU9t0VSUfjJ%bcZ825LePFc9RH<jC z7yZCDOTI{di(sTN_RO~UHV)%?;iZU6!o!9y%5ekr`9<1EU9d-C=9$yCza)9#w_Y%K zCSR6E?6h$hs+li!qJ5_^UmoXTz|5Ci*r4R71J=2cvmTg6bOIY2kmgpg0X$PDc6n_K zHJ29P4{Tvx3YP%GU&?a}9oojcTbk4y<^gXwu)*wug?yDB<^yjyRn|MFDb1+{2i|aM z@Hj^Dt<{{x;J_PBo%L>MgXT1X18+D@s8Z3>syVB{fj6AB);p(dnzJ4pc*AK&bBLa; zn$rOeyy0|W|5@Se(wyDkz#C2vx|VSEYR*1z;0>o2`??AztvLt4fj69kXeQyjra6bf zfj6AK%)6*gzvdhT2i|Z7(A7lGNzFM04!q$EW!_QcdI{zoRWIPX=%@6;=lkmB9n}(G z_A59ysrl1@;SIkW=Vfh!i+(#%_*I&ZW2y^p_$drS;a39-zgF`XgAZ@`b(wcs`Hio< z)9N;9elz&+hTn>=F8Wski~csvUk^UK;kRerY2|te!8@(sbZUM#FudXK!VnhyyMaaj zUd`VJKD^=gX5OE5_XqFQI&ge1nB&Vm6nMjb4Tovbe;8Qw_iO%9@Zk-A0Ow8N4+0B+ zNb`rmhZjCC+b+_4zB_!8=7&lGKHn9lH~cc3zl5Iz7XEb2_rZrZ{Mk4J3%?3j_|=+U z13tXrFU0vs__e^ouh;wr@Zk-=5$6u!HvtQOwdSt{AKviS;g~P{Helgz*8HvD!yA4F z4vE6=1XlcIx3w<8mAu(Z@6+CKo-=1=@QU+i+Dk9e<DilB6V`I)V&|e;hu8Ggc}vP} zMa!x8T?_p;{32hin$NdtYrLAm9aTH7Q@?dPR;b^#J2t4_&K=LH-`>;LIVrwti(Ta0 z;GNjuo!S6@{lih;lZ7dt&B3nzN!v=ET5|+%QM-xl>iypS+3Njk+BiG9Dcby-61DS@ z{hsk>OPBqQFzWz2Xlz?^gz^}64e}#fURNBwu0M7!$a$|A?=lx*FTFivW#0SFgbvS4 z{y{1|VLNtHdU@n`rN73$FhhwaO5d2&QQ8;XQQYajL2kuA@g4CC9>)%9MO>x-bT4+w z8H&1oUg>MK7h)H#VeFSRH`H1BYyXYXBat26&ahgUzv36zF#-ElH5DDzHl*FUNogmA zohT~)sjqU=7yX(|iB!RNhSS(3ChZn?hPoW=-{Ak6xw1CN@@xFdHYGM))}+cE?(SdV zwADmC^(Oj;BiOx6<;7hBQPO^<eCHacKkaE<o@le{f2`I;9qV_ysi#HdINCedY`=us zuY>vCb&xw73}Gh(?guh!b6|ZMyGF%iAHtx8`ipl4yYUSUIY*fWzf9v|pNM{>->+pV zj(dVolb`Ton+EVscmLo=&MwxI$cwuJ`B<gF#m2%vc7lgh$!o8!P3p%kcuzG*^1t&w zxQ8SOE2qw^cXqSms;Z0Q54jJA9?5$Qhu7>lyzBc(an^gl!F``(IoA8tG3&i(98<-) zcxM@}O#5x_{h<f)9t^L~e<<>B!6V*dg$s*k*A&CTc?)L578LupsNjNP?3<8UFe47h z!WmS8bAfT#bHKdkY}Y|gR#|@k?=9;?u71|CWcfWSxz+T&tDEdM9EG%E)i;-Y@9H&p zy_YWp=Q3KC;dN0yw^_OD4!mBPy;Q!a;8U?>cdxoDH!;&84*Exn;iH^Su?=tbYRi{! zk@(THFmJq^x%%F$*FeRx)|K}x#nu?3CDc!wthX^Gk$T4T|A%$yc|jviFs@DP`SkJS z2*==YL{V}MOonfQ=eZvDvdYcDUygNgqVGls)L;%G#^V~t=wn*Zw-(semqNG`UYzLQ zyrN*h@hK$3^@y^M`HQ|Cz_z|Vgsb4ii4I(|*!m_MLYTI&ynN;$`u<N~OP~5Sm1Pkp z`u0K~81TYs{1JVuH_<2WH|Y9v$s0}ID>@B+=q}ukKcWx!>PFxDz_xwll)#G<o8Eyy zFklJuoCnYH#^JSn?nGc)AM2R*i_<z(J=pqMK@fesmlu7rfNg!92r@r$qK^krTi+h= zRzpVnSRT=L1F)q}y&J;5Do*rW2Z5z;QWD{2c<RG54Wq9K*w*(N!aeZfMBh>fY<;K~ zw+b@qOXxV%lly1D)K>`)m&f)fQ!w~L9f)_g1iuoK*8y3rgzzi*Zp>iDPCkHZZ`L34 z{Tw`b%(olA%vZbcQ2;w%i5m~O%&7zB!@K_tf5ZuozcQ8qi%>6l%r^=D3G1pC_aoW0 z;D{4_5|&>h|2@6uQlu4!V6?8gK!U<@tns-Loricib}0ekdHi7CrRzaF+mro=t{h?Z zmpT<f-$j`Hk^P2lHo~ZX=TB7#7-9B*wi{gu!mPJvR4Cwc{64S4Rfy;D#yHrM8>W8a z5YP0+Ax!<oA<X=ZLzwm&hcL@y9KtNGaR~Dnr*R0gpBaZR+y7N9=tO3$zuyW$8}m_i zI5Xyhcvsp(8}I7zB872NIq4VXgd1|g9CylT{Zjv;|G(zM|2QXnFem(*oba)n@Y(Ee zNZ%ui{d^t}xWJwepIIuW!upZ}uK>u!M{rqUUl&PC&V`y0<1#8IwF%1Qk8t(Hm=%<3 zClTddafv+lVol`c(vO1kFBXmT?q#c+?rGF3ljlm!wPkLET97<zQF9&OisY@|ll8t8 zjcJ1mRbJ_u8AN+p)1L7Zy1sUlpsukXd9DyM^mt9c)b8!~u4qP)mfmF~jrh!OO)zK6 zw5%Mwjj?>i9fq-LRkKWiW)?A*d>E-NJ}FprH!gku<X+gkq;*A$Qeca2TeYgSX(hgV z)7=S&5A{5p$5W0&_A_D}0}C(3Zv#AzA8Os}MqmtAwKg`7XE-h>4v%FxCMettjPr)V zt-yHZukdQ%X&SEuzC`17z|%Eu1IBq=@z(>-*0>#bj>emTF;ArI*$P|@%;*0L;c;$P z@($nzc$S6b16J!40`gh6tns7P{D4i$!R~}$*gaV=>@E-tyDt<ByC(^5!!uaH>v2vL z47<&`EU<fm$YJ*v1jE*(;7(W~HrqIcv@9c!y9r<(`+RuRt&+!q%e5SJ#`>JVxgN?< zpGGIrTr7EkH&t+z#j!E+RqI0Oe7PnQbu(Wjr+&1fl0!G=`_x)Zl#?fA0XF%9XY!@3 z!m%;VUuyoEI*_-*)Q|IuTBB$xF!D7V<g3;hLchz+_lr_Sq@O0(&dbK0p6{mpJV%Oc z2%CAL5=(Al^fNWz4IO42vF{;#iR2rz(%Km1QS;p=5s$J=W?Of|-=gKGfE%^^&w-n@ zd<eKz%Xb5>*7yi;yT%8AH*35WxD%M|I1K-z0IN%>USN!OHw^iHEoWI?1ZH1a3ICFo z)AmEav~wf;ue2PH>!B(><!=RYmDiw_(}ol9Qnx7crPC0mLpf!AZfD4<bJ!|tb<<X9 zQ`)M=HGW;#YS#3EeP&Huw4LOot|25}@YNbcyjF<<vrdxm;44g<(Dw{RpBFvk$=bR+ zrinedbBl%_(eD*(g$~%J*3PK~#<5i4#lWyb;d)@?rQSp60ET|UpRVO-LymtXuL7Q@ z<=wyww0t@64H~ZjMqg6=GT_@S+z8C}r9Dl+tcP9j>okY*HZ9)`{208{;nqw&b6!u@ z>0uw60lSrhP3E||E3+OR=lEnjJaxY$I(v{xFd)}N;kk(IqHqZ?ysVGH<DosrsyNIW z-f+sT`BT(kfn00(TIX!=;SC>kYS!SH2Q2)Bn$J3cH~htDN;QZeuLBl7>QmX%3^}~v zx8gV{{MEq1U$6P?;KLjKW)xZYTY-hYOY?Vw4{!KAnfXCyPiB6Q>q{wn_Ja>^_-S-? z(SHC~^uMP0hrx$8{636j;U59ke77v%yGe{kc;UO#&<8Z%Ee96<Y|Te~yYPlT5B*K} zDPYB~sI0sqX*n|=gjt`NzVBOq=ggUtOjgaRstV|zY0aBq2S%9rpf5OOn5+28nU_Wm zb3UW_;^u-$Tbn19JTajo{$y=LJ#l{uGYC5(UE!Uakx-ItX=hy3GwrF;WNB?_-iBk` zojKq4{J9&-H+UPS_=ycwDev)Uth)mH5!YSSk2W5+VO;mP|30p_;ZO0T-Klsfd41Y@ z@9pvJ?+uRk-a8&|Z>Yb2?fq&8^ZW0(|J$ij><XOlBO9<gaC95=;TLur$9aM?zi`@0 zwoP~{n29Of&iRYdF4~uNW{l&L|I&Yqb=O3Ly@@N%a>gWa1#Lkrp86YQ0MOTjUB91P zQ?F(Q@|(*Z{nn!oJ$mn>%NTAhdh|<=PJHx=xAbfaQa5E%b8aK~`S|wIPCr)K=a*xa zr)$Dae+pApyi*tZcqs0?_t8a8#aX0l3(_IYupdjUdL$Nq0`puQD8<?dRkUqQeRI<> z&p{pae;bPxZo&y#cFuOZoz2bBt`jjw&4V@H_2{>wMUURqd|$~G<ekcQy+_xk-G_>r z>ygv&ntINiZC_Vc_<n41{PcdurA3d{r=cgR>M6SO(Pe41vW@RO+Vp5$oNL<*1FzKx zGbE3Alr^h*Deivsjz_=EFny*50)&2aw;wt4w<8DERjv!Ko4D@chawL~YNynCC0jAS z_T-v!&f;JPX|Er(z`ATv^LH(moc^Eg$m#!yLrR1(EpuCH1`FN%_!X!3dCtlF$$L-l zD{|`!(~cjBbsl?pWF%gQo;ZlPu|&A5w9nb;m;0(l9*nWRsUvmEse>aUwRNc}^*8U^ zP!~S^*KX>A-~6`fcS9E;m$aLzZ%MR#6}3?01U6Jfy)9LB;j|O!uJ|8)mGL=j3xASd zllG9;$>@&KKCcUCK(*>wHUH+clyUx!lGM%E;d?07<wt7gv=o&dK`op-ad2d)^q-~A zY+1ggY|Fzf^;_1EzvZTicT)41x}``MuxcLT(%!`OV~LTGfy7ALzV>(LI$o-7?}pUP zkG=9-S4(;7=4acV>uI?hvgcFv6^Cl;u^)LE)A?mvCeijS)3(eGBwI=l*Avt?keyT2 zgPuP<RsImh)z^p9UaF?fJH6j^(Mv|s-j;I8f>s^<FZ%CL^3e%TB|6Z1pPbOm{5daM z`VWatzcA9(Tr{A^iW+yArK@-peP$?->rv{aRF7cZX(#2Wzg4OFxN6J9wnPV{SEas8 z-Kkqr^HSd&)IGoSA4>l*b#rQM>Z=pH)bvPKOs&7gwohXvDDs27=Y7tHs(k%$+S9w5 zk6A91DK%*ukAiDdp9uPVu$w$=Pf1O%?1`t;sC{xxjCuO^)u<G#0UUQw%4l~*Flu+O zM(YaS`KZ+SU?}dsjg`1gU^D`U{tcLQB6|5t-4}ls+B-_NbN}=WhpxE(doPuCZ{Oyt z98O?<^TtH!lkCI5TWh@&r=5=4xxk&ZO~Bo?JAil99t7T9`)lBy+8W?JwKoF~+*l6W ze<S&WH`X-uVs?7yMh~;o!=-u#HSK(Tc*g&tUEu6h`u8dQy-NRnr9Z9oA5i)aD*cCQ zZ^lS@d88k@j-GjSWFV^AA?-qT7_vUdj##n-kR62VP$1)51jlrb*?<~N>@4k)@OK8& z&UcPrCL2dH>`33e;ku?y_LctYoW|477j=K|#&PfMq36RVhMmJ~ji4>iDmZ#==n2Y# zzi1aQ)I9dP3pkH0p=dY5Y6K;|KD=q*lY4&9TAcL79B?xD00A4zM{%)<m$a{{sBl)a zEN#BGahZD7(!8wYj@3<nFjKd2?!53cE$0vSMW0_h{rq`V#FbmTTFi}B7jJcC9=M^n z!(G75*tZ5(5($fox!3rEYV-MEzSz!>Ye~&7j&V!-8fq+Az|G%dDs|G*ak#p;>;d<| z(E7ZG!Vl*^5_wEt)YN7;?x3=L-ubqNS}^%rTn*JV#q(CqaGE$53|r@6E_iWq>iXj9 z>KWcmDoAy>9x@L3VhOIQ2i^6dhw>f{Ka&4gWHE_IUA1_I6G|1&n_rx|fksy?m=Po^ zF{x2!DBr^<97Sc8ynd9u;**(p7jw_Zx7p4YvHx*%&{+@EMwx6Kd+s)vvJM`Ijgm0) z^lg+#&K7g#c-5+9caJiw&F6$-n0}}?nv%@ZyisDUCwZg923t0A%#1eoY##Le$ILSG zIXy=U?pKw=^?8;HMiL(8KuVmaW5?oMig=z^K8?rYKyJSKv~K={HJ)x^z=_@X(+4l} zN#t>)-Ux5&8$j3^mqy=0$VE5cq}BMd6`uN72cqvTU`rqGRkFsU=-@rKV8F@54e->* zdJugZfo*-v*RDg+@sLh~AG*nn_`_oX_2I~B^!){}t*-~+!|>un-!l*h2AsSL$!Hh# zvECTR-&f!*eW7&-4nihQbo>njf&mlAmusCWeZ@MC`k2<z7j8m$H2eNdr@;?h=>a6G z2cUg%cx|7{vRnG{StsT2;<Qa_&vnbbvLpx%@YIKAFGe5J+WHz1X1?M?-xndU^|c|q z9-jJ2;2DSVa!;}>eQ5+yH^zy+t0A%UeID3ly-**Yxr)B;0@J=qc(?-A-)segKjb0a z{gdEVVhXw;+b<#f>b&^wu3*MqgfXPrm-+IUp5)7Cjm%fO!a9I53E@}b#skY32P|BT zs7FTOk*`iXLEHr>YhDVN&(<!4XTEIbLU>Exg(XNfnm*97oY(_JBk$QUP-fyNN7%AM zg{}NlSl3mc1(9-0R04#(AjZVAPa21K_Iu+H=6Em;VV2W4gxMdBLl|W?vU(WHuyKfI z|1b{Wgb4s3%yu*mVIJH0Y>#dqGGqC!QX%}&#>kwtgz?NUa5|pHH@aG+XMNnOLinTO z*XM*gbeMZ(v%bt2(EPNH=eN$RzhCLF=<C<v!-!{n4rRx?1vz29d!k&R-<=wS+(D#A z{kwB@wASzbaZZ@yLOGpY`W*9z$nDCB{~tMF9uJk%>3^Yv<w%eJZodvo{vT$CL-{#j z-G*)t5~ID%Uf4Q)s49oQFefbSCH&P{@iKde4UX@=r^T8|wyr^hBNshtmQlZ+C*PTq z)6}?fNoGIeU^nTk*;ReHCQ0=d%CZZyZ0{`D*_UukVt<-0pQ{Qtb3I4N-K*}fCX1Oi z_mWQMi7c>u=2Dpo&Yl<!q9g|?yuRYgF^H43qkp<S=6A%S%_mz^z&ROw%16eyAYDG% zG;xj={o10``0AA{+~%4^%*-|~QP-VPY;&=hnLEeV$GIOBn;v1e5voKlZJWuD+jUd5 zJsFMpX*!%!)IQZbK48q|v)^~Z&(QKcz_Ydd8Q=vPHvr!bjN#$zf?uiS_W`d3=DbD? z{AOSt`}V?b({hf5r#0qr?gtj89Wn<2Z02xbhneSvE;IkT&*Iy-6o*OXTMdtMT!iJi z1pad1OYuwFP)5b!*qx&}N#Lu1SuSFx7khxsd<xRXry-6G>8A*;MOgSY#xd6H-3{9e zhCO5L*KNv(W6kG8|2#{-jT1P`v%Ee$%4KXoSoUU7*DYcj+SG7xd{g^uH$sL!P{_J^ z4!&H=(T3Ei=JyW(Bdy}>1x{)CL12_u>FEYWyDARamUCMQqpxvaYo+H9@H#C|13#eU z)Uy$o{ihxtc`N>Fz_7_++972DHgoz&pPYs`I^=P&V5B$oc^Gk$*2dsQS@u47v`Z9y zz<mW6<&C0lxrYJ!gOc9|+@Sd^3$E7`hx*zzrx*B#0mr=_7-7Ys{sUSLF838tIx#-D zuSk?-Uk?A4<{tq*srmbXKMb&%+a1!Je%Ob8rSu;KF1O^gALVjkyE{+I2Y^#rzAK1R zX{o0Ma@v6L;;z;BN5JcJT5=w<aEIo+1bG)Q#}1AS+{0Jt`4#XFG#_>7N}bFH{;}p9 z1b*Ja2&=S|vwmm~G21}59kI;+^4eYcxr_RhKH#G6<ed{2c1s`NH)Zlp0@n?acMR0E zxac3u<i*oC_t56t9j^z}p58t%>PX4cz%#VG3OJ?ZXlM2r#or5zeqeB|g>SO(t-zAk zaxF)_avoF3Q4eZQcyfrhYB~F1r{?bi?$+|xfS<82#*x|^oH|keN+&s}e<k;USxy-v zz-An!t#<}cHuKH^?2tO=xRZAVxSxsCxw`KZooFwkKZZ+8mL&;~zN7Fo;Dm)4CuxD@ z9RmkEqrcqZ*f@^4K8|ag2Y4+%j>rF6c(mg<=DQfaOmn6JBdwCx0h1^B0;^*_bTEy1 z4*@(g|6XtLZCs4+WNE{Cc;s~f@^#yRFW2(Tz&M5|Iq?Hp{!`%n!0i7m@TgnEc};Vu zv)_^*wdAKP`I(HIw`5AsR@f1-<Z&(UfE@Kho4LO!k1Yx}1EU_LEUvbn#}#+J=Ab@! zthoU7%<oEhPp<On21fr^ddRt5%Xb0a35+tjN%&SvexJs>AxAk?Jv<ByFYUs5l)e7= zUBS3%h=X%cHhIs1dw|arIc!qxh<0#cli8bYSEety$j|I`)&pg_52$Ae(jOpJd**}z zP;UyC0K?0^I_$&d9SP)@Ux0YJD$Sn<3~%@;Tzkm<ay78<8#TWPe0al0dlU#C^=96$ zXw&@l;KLg}>dJhpj=J(hKgy`=-vd6p;qS#cSM=`#7XBg4e+_(i!#|8;web6ZHQ!AJ ze0Lh^9A5Z5Pstui?sQ<`H)wt%`0$30vdg#ae3l}6DDgZ+`+1I{H~cpA2W=1g&p6TF zsrlXD!yEoC^fBS@23GvwvV6^F{vNh+)*Sz{zyFXo&4Cf>>Ws&pxHArOZkWF>?X0ga z?VGf{^ay5?S5$s3m{AVq6srnTUi@W$E_@;UW$~A5y$}BJ1rM{b-rnsw^ZL2Eo*h-! zb$%3@R>WV4zYMSbjinRw>YuMIjBlOz?8M%Zj`!Y<w@-Q^_5G8Focy|Z{pew*ULHAp z>eZ2tPyXB~ys+!S_Q~D98;Eb5yrK9iz7=p9d_OYb>5ux-#RG>%K8igRdou04Rm?Xw zPDI^UpyT8#Bj?6%7~e_lLqB)I6P`YGXyhEzOx!S$(v5+(p{V24eHCBi;@e!E8hLPL zt}c>xE6(;^<#ZLQnLoV$0qNI=A*-yLNIS>v7}x&6Kzvi(=P;M|<+StAbpOkKjnnl| zB9p?8;k}PY?5VU@=cZl1{Gsx+_t5mThc*-UNpon}gN1Wi3yR~M*20`tO=eDu?JjQd zXXCl}1`=~}<>$|9{fEs5tyvP>=5v9tX4%bPHTJ%kp@)TzZ@F!hj|tbvoQ<AR`FHPv z@Ska(WT7-3e#08$7-leF1jj>luZi=&l9LyM&z&b}gKROpIMK&E1Opb7;ZF@b_2Im& z;;4_;20U(2Mu&V|%EgI}6%YspENBF;3V{09ry0j|8{p+QPS}q>7%|3)j`ffT2J~<& zRqxMIUsT6Y-!^zlU#JOTmPMSz<vh<0QU8Ax5`Klp-%v)LzZ<w8{sMT(Hx8WhJUc>t zweaFZpM>St$p4c(&o0u2acxf4cTx;xA>n2OKh9#rvk#<#up2|z)6b~Zm<NqHW10gw z_vxKbIILx$>!)#4oxrsWubtT!lfb;TO~EgKm+K?M6-`5!ZXvwLZ45o?84TMb2~0iI zc>}!g5oh#pjELOE=t~7CD({o|{6^vZz>9!+?YtSj4w(9X1mB=J&j7bu{3kSrx}Vna zM&R9APMtj(zX<#sFt6p=CeLg64}lK=(;o7FrR5(2zaC)Ky^aDitq1uDVA{#+{Zks# zwxNKpo=Ke3@*_wSvM}@3bwWF0(-4NE-l$-XLE%`KJar979q395mjJ_?>qNG-G8po* z>}y!Xp9eX-;iu4!!mkF_*IcY~#cu>3-te1H7U4GoD?Xl~nq@k(_E{X`ozu!WRkMSa zPCv^#r<V-FhRikBA3L?U=IWo>gsX_BCp>ks2-hO+N_{0#(wSU1{>t$?$3HuM;|Isa z7k+R&z9BJ}S2F&<$pSKm@fPX?uPm|2^H=z>M+@<;Qa`TQo_(juUHr}p_gnw+cWH!Y zU1o=o-!SsSTU8UD(D~)psdqt<-?igsjo&u@zmI?HqZ8wcK6)#@Df(5NUmo&v{JxX? zb%##7i~Yn0eZTze>FeCZc)xIXl2?*=$n$UBQHZyThH1mwu;J~%hT)la@tq=AhnQKH z*)gaMxV2tg?~>T9!$ZUF;?qZ7c;VJzND{nK!ip6gL#LgsLuZ`LC53Ukzd6ypb(s57 zq8zCN-cfVY)IB)t9@M|DsrQ$>cWT@;{A=(Bk#maq9KJaD`NZ}(-YJ{Fl);-$-n%t! ze_bT)M0W=7#l5@G?MGSp#@yMyseBXC>n;u6VcV8=QtIt9a!&u1GjjT`T&$DA9P#$x zM?nhal<ipOlb$Tup6DPmv8`BLt+J+0#M}_`!Wtu2rbBNPIQg-zijVMCs(xoIs@_8t zZHH&#P2cr3UgD|NJiZqfQ7o<xQsWheTSI4F7-=ir8c6YmU_rQhpummlw`RdA?j9^~ zi$dy+SH7V)UzMf*PNyxgqjYEaLcUpgr}w0{sgQOC?+*rRpFmqQg1tNkqHZ)OL)!fc zu4e<z*M}9xx+<zBpks%(DMr2J3xk@Abq8-(N=e54MO~$npP$s3*sgXCElN8oKd#im zw}#Vr-_4DiP~2*n#LiSSuqUxS(<WJ0%*ghzJ9OyWH0lgit3iHk@$Hb6E8D{uGi_V} zCD=zZu#=p`_WtV~pM8=H@Q;vxVhAH)iXVIL*T1|U{b(^PY%^)nl~Jyy;}->1HLLeJ z2M>;vRTge3-!d2BMA{iVc<#uSo40s_FP|Hp<!!lcO9K5OjXdDn(ni;?9~nYk@4f!Z z?<cmOMoxTFdeW2V#l5uS-34wh{QkP|l4xE25-)!JV3Z@4eeBqaBWHqEM6c~lJHPvf zy>YxdJj`+1yW_pS7rfr~-@WmIS26hB-vd9{+wSeG80_8H`&6{6Vo+(H@9yuv#`z-O zv}Ac>-6-$(b$N$jE01cHLw%+ED2{16VP8Ep_)(0|#$dl!g_|whVBsbUw`$C>+zMY0 z-w59f-vHl)+D<WBwh!_{k10_-(2t^|^;se0ZN(vXzbvo|OyqBcU_lT<Oe@M;&o?ab z+o*q=^>2gzZQ?KAwnSZH-&JZwjkM7&I@s3l=O?!B$Y)FtpU#i&Jn_=VaL`NbzpUT) z{^6IuJu&Rov3{9`vUjg_>mYvtZ)gU+tRH#ws|-f@bJ+FkCOv(+(AkR`#1shL5JkWB zI|J<Zs9(3nEA1=8R{^RXVmQ`?{F;DqBwB;Fp~a7qffk``Ll=*WKb6=%>B$KlJc{Fc z27GUj9>N>D?$E2~>CsYEBlz8R;?;A*XQIIy`=$R7+fjNr(scskXtp;?9fvC3L0Y_R zI|N>Kx{)$Tml@5-`y7sj2a)%-lE=AM?wJE4Yb&EeFOHOX-C=dSKJ&AYy2|K@zd1J? z=?=bqn1y$rOZ!5oedb&Gy0;@Jzk0giMt4?5gJW12C^(Luz?tX7$4&>{0p42TP4d3K zmKwYr_)cV)8fv0qec~zhg6Z#|{O6debmxgf!B-+m$Dxsdl1NP11znpV+ZvC6aahX` zMrfbK*$PgF;&d2J2RQ2oqrtoS(Qf4Si?(wtGfO{&lCsQ0C|#zeGVO;tYe+nWF<GbD zyy)1deK0up9MeY@6Y66cNRQ}Wb@mKmVM9YEm$4D@Pxm*wN2!75A3w4~eOHstuN?B9 zeYehC?bp3~v%3apt$&?g1AHI)`(AY{PM^Q_7;`$TzU2sx<ym-U@(*jv@U*D=!>E%V z{c1WidE?BrCwWwKQ{mKwiSVTDC0i?gmWtr4Idta5k@wPGsyrTv%}(cC@RJJ;^7&6i zZ@i#bT^n7{-tRHxK*TLPhI4A|WyL#7e-+yi>I`~`dbdA})ypnOP5Jup2Tks`{L4~_ z_g1)zD}K>enVRC`I|4`-`_C%rx3Z;I6k5_keDM)uJf8psb%}Z#;FZgSr{YhRY<vF@ zo^YWCOLxXPOMesD5$&4!XVTMxZ+lW0&1jPWzx;~AcaiJ6xDK<wW8ig=pIB4yqrTG4 zQw44zp7wR1U!XVmiQ=xA-wcjOfi8U}%};rL?1bld8$4bWQS)(VKAxjFINo7QK2^di zEPi*x<Ci*C(q^nywiCy;24eg+>UebwWt_!n(wt_^Y2|S?hto<9O4=XP6P^#Aof)c) z*8U0>JiaDhEWlVjgmEz(>x!rx@P$_R-D<afW~%lzTEiS-U1xB+M}6sh#5F{ARMz-E ztBIEW{j4H>6UHM|sagxK;+;eXQn<05kuHp&kB{M5;+{69#98&su|n6IF%aANT+egs zpX&&B1xI|o<DV)Fcb2{por3ndE2q5%yl#By<UQzBd>-xY`In*BH=xxPUx9B@(1PDm za@4sWQSG_Ft!JCYx?-j_!CT-q2ye7j59-MN%VVgz7kJ#<3q<PF_dX?0B^MN3S=3Xs zsp#qVj^n$u6Y&RQv(&vnpSt&udl1Jz7~G4TE_3#(+H=;H)g4mI#K~A;&6|lYtWP^{ zXJQj|2Ql)q?-0)AhL8Px<ZN&xK9T1{aMkM7mG^JNW0oBk@X6`sw->qx(r&=Wxu-a1 z?lvq0eIHXxqAIP<!$_aT_3+MtGwuOeJuu`RK<_RZEOHC$E@MuUH%#W!UgmTt?R@z2 zk#jleQ3{p*kV^ltdx%eSPv9#m=+M?$Iu4Jj<29}0@Sy9e<Jdzk)*_5;;Fo6SVADZ= z%J_}%<Cw+zl%s*&g3|ACCfr(Eh_7X~m+(A{Yvj6Ue;dyExQqD;jwN+POT4=1lEMi! zX*akIs$B?c!%npJsuJ9J@Otpr!E?j4Q;xklk~;Rvxt?P$pF2`}X>EJ$pVfBNK8x?Y z{$$ZKd}nrj>Z`!3@y*fnNu?|~j}ra&W8;!?#9bDT*4}dAhT0XWnv$w?DE@e=K2)}7 zdg`v3cb>w%EqTFH_Ph<gcd{^$<aOos<o)E?rlD7z@O#I`dlPCVRk6Gk2N#t?>&<aD zr0#lC<*6@^|H*hcG8ff;Id#<}^<+P_ke1x()vaZj>w47RCRP5z+Uq8458{u{#ql@D zl{Iq^Ya4n@=X<H5<8u(V=lB)wx3()8uJ*y1S(oVY=awAw6Z<yo>+F5K_g{xz899sV zn$xGe@#jtzjz2fan^edv=zTl(wfk#R(Wh|T^kfuYz^OaEt9wrtPD-4NPKqCIa{lev z_L;99U*Q}*ey8)V2)~8nMuPb#o@8Dg?rGRkcY4W0UAwwo!(HLI(~k4LmsgRxbLI;6 z1GKBUcg$;_`OOd287a5+&}So)=CJ<iUSfUEj4mq0SsO=M=7QtUI(%!S`h5RGD0|`Y z>)ghfHH#A9G-Yx2(Kd2QU-!M^xY|DR^O3EUHKqS}4hKqn%d|grNUnT>bQp(o<($Af z+Ei0uqiP3?cZpM9N39KYrS6iuT)ThFzdR&&zx;~I=3xY!FUhT$5TBZSZPceG2Tx+I zM_JQn(11a`L}~X;d;xX}PjCC9GKwd5PJH&wLnEgr22WuI;v4#7t{0!n+D)iC!r<66 zWy8?VM$S&@nbL)?dA<HTxA47V@rNg<w(tvU-=6TqgzcEkDfoCeTKw*Csq<FEDVn6x z_ghDd520gn&*V{bRJ@<qUKirmVZrrV3P=Co>O-B2)O9vziYlK?4N6_J4OL6r#ol6# zzsLN`-e+x~3~%E5P}CWoGL7G<pEI>5)ChbNM}_x2Cv+6&G(3;NQSrjg{yX#B3peoU z=#)1lNdM}{nWHGd%|rcode5V=<c`wD(hkOYLdJTkOnMb_4J8(p`#Uxj_G4u;p7q$v za7BT$9yELl^Iz(Wr?f3_8+on4Gah>?wH#mIHl@8|L+;*Vr``S22ViO3QMC|^UOzGP z!pO(Zv=6;J^3ijhepO}kxpo}g$|~xa`q+@uk9)Ag?>0GKj&-Y}-kIRrw`2G&kXk21 z-s?*b>}iMgz2E=do*gG}A6@YlV|XPJ>BdoV^ThT&?GvZ$*-<eZ#Kh;N^J1O;6g5BE z;k|t9W4D+0COE&JarX!Ly8GkdqlM$odWG-fe&R1T?Cw13A><9XZX~4EbKSjRcMrL# zq7#@&DE&>Wvv>-w%kIJvW0-Pv%;o6ClRs5=(b{9I_w06OO!jyQ#_9QT)U;PSz+*$| zIBHj2>2u_#)ZKq5?pG~J203NxOM6%$_!W!|WtHwrC)ui~rNzJNd*Ov4p1aV;aE$!^ zDcuA8p0rmPO>JgL-h64~jib1xt}A5k8n=<(Dr00J?@Eu?>O79IrC8%7RUEs6KN}f2 ze!bHl*_m1w)Th%Q&pVnYJ+xp$K_}{ZZ*cx&KRsUPu70O)Z+uYQ2_Jj)+(y4J?M+Uc z#6y4FubwWMo6aklOWm~E=kff7_jzn}j(hIDLEXzgdOaNvdT%=a_)YFU<bkuv2XDOa z0{eE_eeaDI?hjJ=(I}pj(YCi<9yzDRj;F@XMx1?geY|yW<ZQf>H4~b!Xe#sl0J)yh zXGGQ(bur#AN9*)(RB%kF)?S<TaHp{a;{_7N_yv^DZaUs#u`qVj$ib*#?EFMs4a>+e zisKbfovP2u9%}K+gT6zn$;Q=w^zkU|f-S#g%cY%TAGt@kVnN9^d@=g!$S&zAypzK< zese`%ad$kppK}IZ8cx9OqT1s)2GptCn$qqpoE`mMzs#I>3!n57+iPo>WB>BJf#6;v z7`=<ih9XX+_Q!sqSP|6jP<rHJzjs$V#`YQ9_kM(9?x|y^U>Tm%4xDzIQ-A$F>h>*M zO~-N1m-Ys1OFJ~@dBeG?|3RK%C&hozj_a-FXWM_!$=|nL8aexeo>(`o51R)*4vsgJ zd)<SclgC<0I~>CiHHLrp_i1l;=U;B%I4<!xdfzm0f4SkA&Sy5fi5QHX^(EdjJ*B^X z3v(o?my5fKr<^~gul~^4c>*Pmb`Ltiv(`nEj_a#u*5mvO*G_p0buiQ0)n4~9C2!%l z^wtX_ANf`Ol#iR7c^|KE{-E+Wu0dW@t%*J~E6Q_zaJH>I#9qa7NN_ZG^T5ct)K9!A zv!aU%$-<M3gCpv0W)_~{rCx;|b+v#M2{0<r?;d!jeSYE5==ig5uNWDb?+vh~qo)cd zc{qj+@80p38(A;AH^vKhKU@17+&Qgx5~Z(4x>7Hv1|ujhZIa{H)kDrsv=mmGepAXi zKJ|*Ux9)XAcsh^K|K`uo?n6IlpILb0X;_cDLY5tOZPwLH>SbKbG|#NLaR`i7i(#&1 z-a0UHCe`aDu0C_)Kt<H|Zajl?PAhew#Ya$+!zg{bw*%?b^Nn;qN_^k$_N(6>M2UCr zxOyN{UZiT<gYpidyn9gIJ<sB9Ji&5?ri5^`mXfCP=SLzt-wfI`PudhUvo7^~Os;kE zZ9G4bik`%M`BR1dhE0VyHmeb0-*X3dmFg<X^Yi+f^9CMQy^>>b2xD&%p9igrb(xt2 z%qwIt^cO*YbbGY+8oxI<vR4jp6pG&3Z!lDOQ2p)YUwwXV9rOI$Y@MIgeL2q0t!Z!m zg)=?&SN76f?d+#G`u9;IkL0O!`i>mOew9mk<!Sq<#lFDvv0qwo`n@-P`NCkKlZO^t z9B{8FEbbOIYdbg&`t6MU|B735&FruIan02ZfB&%h3a9$oKmN)!^RH1djc2I<3iPE_ zjuULJmt3`M=}LT=;W*gzExBxM>uoKof;HFmTI|@$aK);oWsT0NW!$GRX~JKjn}6*$ zuDc<5&9#dbU$@}8Ypz~=t&%$G@3l8npC4mtGxwb%%+VUxnzdHB^{xOI9b<eu&pBan zeA;D)qdDPZPB?@x=ZwY89^*UrweyRyw0mN``uzWq@MHN%kd#FDtr^3%a*J~m?>|)+ z_qe0H0Hs)VJv3n5`uWB2huud)kL4lOwh?Q_haYnT#kL&EJ-(^M7+cOViQLWu?{{Ub zW1kFEs=s^3D37fdZDrO3u;txj<hMGfZOg3unpByZioNO?;hN&Git(-Zb!r`fI(r>~ zHN{wbpy7JHlU8@b49%^{q;XO1WOea?d%ycY=)t`8;fL}cjyzKEn76uk(7nF+q>IH8 z79jfi8BSxi<fcHIT~}?WE3Oft8UuOQaf@^6(XI=7-T$%Vb~z8JcjRWD-$g<VT$lmN zHOy8ewEI;pUd=<_43?%~-@K`~?0QnQkv6wJw;$h7Tvn^N!Kx2-xlrd>dmvO>b?YlT z8%D8nQE}tK;-(bqwgD?kG!-{0TN*;u(nd*3&q1_NZu>C0J;NE-p~lU=QN~TEvAEa0 zf#&aXL+fWadG4(g6z_KzGXH(<eURl{0-0LrVxQZ<@Y4vZGVgP_^u<90m5D*{K!&}D z7XSX&s^BMf@^N5rXk8L)#@cvKOV*AEHgPGo?Od^Z#Zqq4sTXRsmwK>YIay+VC}=Gf zk;RccQ^$(u=Y2RYSews|#Z-HXu4rw-&JE4jvtdlD_+jUg#;i>tvMiz=dmB<Kzg5d_ zTe-Ap$?Dtg7*qRgjg7&+r&hA_)Uy(oEN!|C9}s>b&DtsT6M1^8)lcGBTiK39(^Z|d zZA6yoLGQq8t7BTN>NePVc?s53Zdx|BGJbifcWM4K>MHqY_LD5v-{g)(;b*4VaafR8 zmMtFJ%Ja9&$f^<b`DnIU^TySZ?EPIoh4qP=WV7J0bjSw5+3`z)ou&2m%jj+`cP!JJ zD=%5qx@>7~eOT?b1l>3{I!l|m2FuAZ=XipVyJXqgAnP1`nR?26XdEb8c@IB&o{?42 zV{lrR-K|F3l4UKlH%N$2b!X0)t+UfIL%bauy2z;ecfUy;tV_U4pol(C1ZTy}Nkd;A z{XeqiOlu}vM_qg&JRLr`icyhQ*W+g%{Eb@9I9{jT0&kaNH^Lq8;zY-{AP@|AbtnF; zg{MB&f#}2iwXILRAMHUVPV8%gz|uEAjxg<^KJrE1v%r>pZVF*uQ;QRQyCJak@!C%G zkuUmQ2DbHGk8l!Roaj3Mfvu0%FuXRQebg)ZJ^;4$-HEX105tdnu&pnJu-I3u;}CXp z-qBZUp4fd$>)`igS^5?tycnMLu`acJ?pJ|r`*tDBb`vN1=0ITEw+rDz@YFW}Ui2*m zw)BNqCpGZmMBl9tSo*GMMtCbc^_A#2miK$Ww!Q|0kHU)+eXAj`^$jE0X2_^d>Vo>Z z5VrK?RU_O0FHZD51%ajS+IEEZ!BZd0#5n4E0l&7s-3YUO#fiTC5Lo&aaIDc&U#X6x zzPEvGeav$jyg1Q!6arfx+iWpB^_A&3=nIVlw)OQPJR4q|))A61rR56_0kGYu?;?2e zsE=taePPJd`{(#kPV`kEWZCzP5`@LRq>iIL9ye@#bqMc;7bp5^A+Yr|AuRo6s*a<+ zKLxh*<+EI^@Zv<@N(gLyLkP1DS>9<nj{2Sfw)K(I4KGgg{TB!<eKpLp51#ri(Q(xG z3t&rMg!Qr-UYzJV2!W;VI<`d`p8Cq+8Ap9QZrJ+T5pIGPC;Hg0EPdB|NXERW?{Xan zeR<=7ZG9&ZUI#Bu>&OGw*7r^JIo1pHP1kYM_Z47EUqLg1vmp~F`lL)+{>@(SsE7J^ zmqQ-))!^6C=j}qc4PKn+y9NS{8MW{zl1X`e9Y=k409*PBlL#+{7bp5|hrrVJheHT& zg{OU$I*$6*1KavmBMiB5qVNBJ#L{;|JHqqesgL!;IO_W$er<hifgFDWC;I*yg0{W` z2#Y>Bc2nQqLT>BZjPN0NaiWjsK}+8sF<#oYO2<)OPXCM6A+DBW?L=Qr|NA5AYKCWd zuYxBJ`ohKdwd{-bAY2bGPU{O7LSWff>mj@rp88mB(f0?ymcAm&*TIVueNrYZuWbWJ z!&Bea;6)#8vGuhf$o?cw^nDuwjTv=g3cREf=u6>O^xY3^>5J_}@E~O3L?3Oo^et+@ z*k?bXee-o3>u(RRrLP!uGOhzMaiZ@pAh7f;24`F+WYkx!<ET&iO9(Q!GRQ_dABA)J z%k9&_Ylf%31@O#^`rgMc?Gt^hJIfBi;dip-x6?M}O?@>w4q^4pH}!E0!j-X3*k{C1 zH{$c<x=Hdq0{JNU=F7E$PJjDu0Lk~8It}x^5}5gFSJn@8XglMy?tD2m=!o0FiLlHp z#~;FzM}5`!we(%Q72z^?aS}Hkf;<so?T9@{OFiO*$6sAmM$I~fZ-1EYB6wc&G2b{m z$C0J)tJ7c~%O+0rNmzc3{P*+?A8ny)h0(OlI2ac}V1^cSAf9345YMr19Kul(06>`S zXB@&j#u$e%^S(g~xNn)*qC|+FV8{Rnm*8iqmeqjIuyKfIA8OHpqljnNIK(FqSg!>Q zh-cV1#PfR4IE3wf!2EeVW*ovv697PXYEBq!>g>`o)-S`xfqw}CX)WkRJj2EzzT5-= z5a#uQaR^U00RV*AR{ep@WqmSi9O8Ww06<ue-9U;k$FOk-^ZaET!c`^!fH2P=#vwcp zfs<OmH3k_r4)Hjit7`$u)*+t9cjFMBLcA`s>mwfFj6?i<#KY6M2NADvAVGX}fJ}Hn zPPhi?Zr8Ff1`@&<hxFHHLaKZ??zs188TmX883(>S{#hS5S-XF(2_8DHhwyeC<^n<( zA1;m?$|VuT_;6p<;Sj>b2oLD69t<vyAIhyoJpPAx98xYAETPMC!q?=4)dd7)n*ZIL z_`7n#yzf&^^S9=Nzc0}+2ID34Qyrd$Fvd&hA9a{(FkXZ(@57Y~^yQ%%mE$+RN!0RW z9oF{ceMyJ+B7Q33O&`+fugl@r=Y;Rp;nhfAj`R=a#Ebos--|i%Z{~#Yj-+x;(1-CC z&Z+<K#X5c+;xQh>l{&2Thh>bkA>K#)4LR|5>M*}?M%wVYocM=znBP2Oe1>!E5C7PT z$9N6@T~2x_&mpA8_zi!Q9iNXrs2tbegsu5f9&LaAtQ@`>Q$c&=e<z3^*MamHfB7qO z_%a?u-{ze7ojKvZ&I$MBgnySER^L`Dk+R2rM2Qc>5&VP+6+3pcSrl8@5}Bm1W*oBO z%``)nR84_o<`%NzMtL-!6+g=Jc*JKtBxgA5Dex%Il*!3`kbGV`^YoZ8pY+JsJhtWY zT@whN;UaD38L~aqlocWKOIgD6CzZ0Ib7zwDDv+!}ws9uc+^M3aE5Fye`W}1sNHwH0 zihRZ0t@o^4?O-=VEalm_d<FI(&nz~H4F)8{l|8Z2<?Yz=aL#PB#?pHlmpN;%@aL-M z-ZB%1<tniyq7t{<cK0%DZ@F?s%N^$%D{}$pBcnv>X{7UtXw4mE7SrTLlvzwOeU#y# zezG~486-^#mMYct!x^I`LEn%nQzA7tl9iX45elR$Q7tPQmsst#>fRNrrLlCZ?yR~4 ztBFEwTsDF2p{Gg2iq?B?Z(gyK^N>M%X4%4WkFg+Z7EcyJ)xViur01B<Yg8D#qGgl} zRdr;x(ag#ud(KJMYqoGSzEYXZKEKjs7AjDnD-A!(u=!_pGs}Eb7IPKHu-(%4wql+~ zr3@Bv4d!m`mebueGx>v3v$|KWxEsSIz$<TSX}srd=Fdf2S7C;WoqLSRG>iP67f-dT z?!EoaWlKj%ylPqV@+GTQ+|h!UkaP*GE}=`ir1h?)t7a})GxG|=!TciU$=Pq1I$+4@ zL#_8wixBP`@^LzI8sKrxHkjwfDUgxV3jbwz7e0=AJjxs4kyfpd!Sf!{8jQ4xvl{aG z7Jm&euX(n@KL$^op&*<u_X{1C+{U=RG&bPc(%>*YHlzKx{&JF*oO;D(@YQ;Nu#wl5 z2A5ixabgef*To)OhZwny<M@V(Wod%PwV+y0kMUErycrnRP)dF)Fs@e=#&r|#6;#?* zVAPM{;Ce&JnYK>j)xfy!Q|spO9%nhc*onNa7CVt<zF_FRMljNwvaGez+8Ff{XIWD4 zsGm6N6LrHnjkB%M&Ma4)*RQzF<h`4bqs%I8HRM%V&b(9bVkdC5*aP0Rf@>^}jUzDQ zQp6pAhb?N))`P$aVA}IEJnU1PL%^^}ab5$44Tk?U&HpLn(68i&fpJ}`^iaM?%lm+D z*YYQT@6_@mz^G4^wjUUM*yQ!F#<XoSFl|HKaPHFZpV655f1o+c_s3dJ{riDgw_WgQ z3%`i4)FJBPN~t&GXVxx8`Dcq9<u~<=axM@#^8SWk<X0oO-|8Djt-Nd;$D;?9D+!Ob zQ2WL%2A-<r?30yRUI$#I<)~vPW${t}Ds4UF3xQeQ1bnT9(H5q>$iwXU3%#a4BfaU* z4Hn<V5p-Gh=a}|VhX|YXs8KGHmyIzN)E=)%#1{jz>?QCR0}7LS5xnS3S~^*;BDXPg zCQx^*Kk8BYqWZwBJK-a|kZI^<!;9R;ut)7Nin^p8wI}J<fYIj^o)5ghN(<f%q7!v) zblMnYDP>*lhDY0#vb@w;t>rzy;4Asl!0WVp4{*DdUj_UOyx0s~rj3xkR%}2TQ^vg( z-^M88=V(teJjS@eD5JsXZwA9wgRi$R(~CX8H;N6dmfXfMtUt_rJA!--F1O@!ER6aw z9Q0d*8-Q7d8{wNQjJ%9|t%chxyxzi_foV@CJZ+M)056iVAkM5S-feMgjK22;>cP0- zxm)1|;1XckSqG0kpyZ9f(5*0R=lM%v)+Op$Vb&RSi9Nu^h6dOywn5io!O-<B!O(S+ zVCed`;MJB+8^h)#?PR~k_(^gMRl%2OIr}_xC{79({UphAM=ktxjTZxBtR-0wEHBEU z_~<V@|0+JqR1GZWIOM0~4UpGZa->o6M#vXh@*5DAIzirZST5Mec|L_<3-i92aysOv z<R~Any%eS#dKLD7*#@H1#;AjfStl4D%tPUufKm2~Sw_|$`l`XOS>d&i-)hNQEW8q! zW#?G7>mS&RS)~7t*uM@uvCYOP&s5mv#t@$bhCMFRR9YDIITdZBo`1qN#bNy{0%o~7 z;cv0{s1u{79hhl-a5if>({2N1+Na@rEPk(r4_Ww#g->QMFL5O=Hwnx-K^wYL@vF<r z@<^Sq4640gj|)4berTVPry!qgrL{1hkxrAbIZ5LNaM7kpj&k!nt8f!A@=~}N82S}% z1x8ydjJ9ImR+w##K5Q`hr^0M2lt*Evt%sL(1UBQb!5Y7?!;D|paTCg~9PBV-AG*vj zA9lzZ&YUm(uJDn!xn6C92FcgP9=^_Coz%b=1G7!5;7hc8A#g&=QC5y$#jgcMdB4Q= zBA@9+KkyQ<0qM;#3TceZs1w7taR|eT_P{RXMJK|yiO!gn*2YMC=@@C3ep=c%nww>R z5gy}Q;myDpN98QzP4F12O8yKm#u2y5;T{ESU&Fr>m^K`QU#aD@fe!#vPdofe@KP@D zmWgeLEV+%5&t=j^IOZt45ZoES(q3qb%cvjr=C*~59UedLki6J_VuOvR;xxp(*d~|b zKlRUtM_x)^2aG(79BD6SzU&)|;6*3Wo4k<5^yi%ZZ}_PH>C6jxvcDOOwwO+P*21Ig z2K$<WamN0q_{6ZoaL`5u!yd(12@Y&9_;!oaV&OI5Nm-D0lhhl=l#$yQ$CDYf|DWN( zodKI&l!M0*BS-&HnC*``H5{~^k)sZ0@OWDW4s27LBye-UaU;OUSIKG9HjR;w^COL? z1OM3K4{15<;T+ivw%3cmuvyANTjiRKd8=b7+SW~4$5`YieTm26>AFsM9G13L=LubJ zHg?dyKI>;AJo5D?;FtA)b~G6Eqd2caj`~r!9~kXu(!wU6b-NdGw5gHb0!*FM-(<<r zriPEUSN!|HS*vju@Gi~S2aGyYdeXo@)tqC%s4u05oIZ_vf#1}4KkzBdPXm9b<;3SQ za<-q+a{y&Pol9P<Ph}hUJbxKHNAoF1-!^je8KZ}Fg1Y7YA#Ob|>w$dq8N-+IQjYSg zw8RfsoX51Bw*3$odfY|utP}Pb@>%cFzQ8M_51?M;9OR;23Pg^2k!MXV(#ySxi#$wU zI%w&%Ft0x=*=MH0qt8^*9@xn1OeHS`_JPqK#+3l0u8cetU|wIatrZ9L?X&?yPr>`Z z+cf_z;GRJ49s)*rRbIr;TliN24sV7W?M{w*hA^!0?XWKdOnb_Jqk+5#@oqf8-X36G z7H<(S%4Ya13w1K>RhIk)jZsE-vBiNMm24OCJ2WQ=Oq*!~+JJRVonhMWs{p%i0QUhS ztxG<_m6w2zKIo#avkv)=q<bRZv%Kz^jGWWSN+;wY)TzPHp)hoZDuHRkbYQj%ZJ_*m zjnV$0n=H;Pmb?X+_MkpO_i4^-;0FRu1hNpztL+b=-z)uHkhAS5e;xRFVA@ax{8M0# z5z5iW$amfV{*~s;14f*xPs-oa@)R)ohpLk_@Ib&(dQNFhHRMAU=S+r^7uIsrXPyVl zdO*G9O|>xUi1J7&<a0Ex1V-LUekU;NO}9(lErDF=S!3aKnm-@>2LkMM0_*yTpvZjp zkY&s}2ESkP7XZJcG3?EI)53$m$Tu8<{C!~7XALm=lfnxT2fd0D14brFUJD!z<av95 zQ8p!C415u=ZliEHFv`yU7M>AcmWy-Slo#{^BMq^VFSqc00rrq*xIMs;=YUaWqrV%N z_EYB%0*=ZHHYt1RAm1Cvy%OMbfY~>~x<9b3!|!YUbl@|<+J4S)D?LcdXZf^~<1wFO znRQhU%(fG}5*YU6KL!t*6h=AncWL|_aF4}5tnoa^2Q_X0J_U@tVjltz2blSCA2yZO zV&F-Eoc2eiX?Zp9<$*kO2w2y-;vf%|HU&96%NRlXM9`K>-Utl6%-4gy$SqpVymY%L zovXFH3i7qUqUQlEZ-V?`VCYf#>i$`90`eaQa)sG0Ov`+Ktkc#59|$;X)5vQUMw?Nm zk{<;|Jx5Syk%2%SgO11$ux^V2FT*d;brpLBeU9~mv;{TrmB6r}0CiJvm6p#3X8n*e z8@?JC`Kq)xX*p~zKsy=voxseu8S<8Z!~RylI-wr)hXRyG;ZEQV&2I&M23VJ?;70*g zdG%WILjfLF41S-5{~1`<VZpIL&N?qRnUQ-TEl;9d;~9>JF!LqfD-ST=W%Z^9*h9N{ ztRI&BR^Td)>wvEZW_cF_-w?=^9@GoV=pBGZT^NjV(oPTc;bA<ew5x&JH0KH6&04+| zc&nDL1l|VBv<Kn40~`qh?*gW6)xaG4%opwG{ZRA22K*c_?L=F6>45JhfnTxYuLbfV z)TPHdgr35F_=v`9fD;<0fJ=d4PtjYz(}1ZTWhuPe;=>NwrZ~52PCYoR2l7!y?oF)n zDg#byc>^%YY0|RKlMj7`M>SptJP>eV-N0uud@SP=@L^XJdPPr^?Mpq#KRUybS6O(G z=CpwWI~0FC@N$c@N6Qf(-Dk;P(sI}trOl|rBE(1EwD5-kKZddwIhsEmIBdyjKijks z@~IZ*5=(xQmbZg*3o!FSTNJUMu#B*+2z}Scf28HGt>~v3qpuacs5$QgOMgJWEBaeY zPWxexn}qz7PK$aiVx6-OpwGl2T3!Mi1ExKcU!>*8E5@=w9=jf%{e*TRuNd1x<SAgC zS8PFmy|00@Q1g**Y_Y{**}+$w1`DIVD%()5*b~6aYdUb3C1;(${wQpZJqIj$eyaIR zkn8%1y#f4Ez=@m$em%e(?=j@Tv;`sL!FFU`uyb5Akn@~1E*@YW=hbz*zP})r`-O36 zcX>|2^zs~O9P0h9X^wKd-fb3){w({Ev21d0%WFz?Z;SdEH#>80%WFirPvKaSd)sj- z*e*J&al0Y7CiCoW9P0mWk=JJC{&?(@XK~}|GSBgNO(6F^<6wu}JCAF`E5@P+^?R-0 zX58uuZpH18;MI<EkKnbKHWj=sb6+;D&2j!j<m)r@Q{&q4cuM4(@z_Q1Ry-dN+~Jse zJ@vhTZWl<MO59k5lK|lWhlYVYjgJAxH0}eAYrGe@B*5$&e9l8X3YTflHpr7&j<H2I z2OK_orc)SoKsUDle~>@*D-7M#KbL$u=pS_-j_I23g9C5)v(eU)whEZ~>1s89F)+O0 z*WuVIe6(qy@EbJ05qx;VN1K|x-kO1h->Uhm!G|~ewKz_Qezd9V_2#r`{(A7?4IgbP zd%ZbZHKzj{c*E&LzZad|z+yv>=I;R?-thP0T?pat0~Y>4%|8S_yy3rw<`Dj2VBrsH z{z>rR4gVCTnS?(CtoeL4!ZzizD0<<$Ni?zMyVHP$KU?#wz=t>dd3ban{1mY87ixYj z`0$3m81v4;uLBl-qvoRxU3kN9MmH0FE3oj_X?`2{@P?1}nj-vmVBvRaemD5=hQAAs zqlLd4Sor%jKMg*-;UB;pf$-5rpA$aXLe*y<`0$2*1kdM%-w!N&-Ci!*ir(<iUSAOY z5U}Qlyg+{_hI=`9;fLZF&YB-80TzC_=1&J7-tc|QiwS==u<+|OzX5!B!$-SJ6@C-2 z@Ow0W5BTtgzZZ{Zg})D2_^3D551$Rt8~!28aR~o4VBw>#6#ppr@P<Et$JD|f1QtH( zO7VxmhZlaHgE<S$=d*%KH9rsaMt&aZjNb4Qc%&@+GGO6XYkm#*@P@w-^8&)J1r~m* z=C1}H-tgDrTp;{)z{2m={9WL~8~$#bD}~<!Ec{;0-w!^#;iqwa5&i*S%}3EydBXto z!Vh~mL~DLH1}yw(nqLk+yx~s|&K*$agneMe*Ka}IbNAi%w0xGmk>*^Xw?;~Smc5Y* zk&lzv8>!TpTvOynC+&E`8}igjoo6Zv>t0E_x1K%aO$>kN;bv)=_HhpY?Edle>F+pu zYGMiSKg{AEiIP9$InlJUx{7<Q)Rmv^b@I**MZa|VCr-)P)6uD`zg!c8jvXtxYNS(f zX2yoPAEw<SQNMg<;n^Ce<Lq@#d)hk{brR4sH|?w}_hXQ6URi^`TUXwU_|9Mt0@}lM z)i3^Ei4LrS-#y`p_>=Qz)?MG<j<uMZCU4@NOG`>;)~Mep6YfmAMV&>@a#dZdYrf$W z)+p`2ALpo_6mgyFN3cTe$NdXx)H<j`2c7)*m0S^ZxflEvcVW%NkAuBk9x3p>x3S|# zu(wD5f@+lp`&`!ho7CEPu^Hdxs^ZuKfxApOe$Us3pFx?5cZ9pbI|qiHUb48x;{bNL z;EIb}>+@)V<GnX`WMsmXwEqOw0Y=V1N4<jB`!VQov0vuMQS3*N_A1Uyt{UP>p>Bz` z^8Lc`Bk{sVu-fYKLTGKDpjH)r-*dSt=inpWz!|3<Ijgm@)qW5gA+M($#n`XIzlvzN zhczu%U=>oYxErX+zZ~l>b_Sf~(O{pCIW@)IH+Gh8KZ7<7_8Us)Q}@-K@vGAA@}ko2 zqga=nX%H%4ou<8+P0zHWMzB{0*VtDWwKKaZsFhje!SBpE{aX|KvUSIH*ni*;{EJGq zm%QqKb>GwbHk~*yau%!LdOaIYq(_E#wNH3F^>S??))D?V@zhbziC~A8A8|!;^llgH zm^KbzRq+9=DjxG<YE|)`_DJ`x4MF=2Vm(N#${KsTu;QQkDzP6{djh-b1a((ihW6Ze z3>t#f6v4%=Pr+)nCtSyU6D#c2UWRpa+v9W7AwQZb3)ZLQo)D=rtou6@>@SkePn93T zJ|tM<G=?2qoS~3gSaJIO=s0h}&bq?W&pYn#e)HSUo$htrkNSQa9f~@U*vzzAcQV{{ zY}na12!7Ba=`eLCuu|+;wS_U#cG`3HU^k;WXRp7}FB(E$WgDG9U*x*c#6EWCa(W@@ z<c<s6VdunY?49z;NH12PZ71X1g-$PH(rwu}W$FKs*59c0@5|D^ZxsD~(64$K^zR!( ze?NBgdTP=(>f8c*VO_th=ZTWjrv9Oiv4z>Nb1L8j>)W=d_4&uHne1}t5RT<IHmYlM zUZ?XOK{=lID9?wdoKCpJwwxIEkIIoNe9GxX4|UU1H||@NTx25W`G9<!N0q0Xy7_C{ z$vhY?)W1pm(u*9>a<n|)Q<tl(%7jBoOAw}AA-;*Cc(}<>VOpc^nUpQAdebNf2mH^O z_<&!b!n7~2f3}Ga!dIAh+8<JH83p=+Fz^T*hS<8|*f^4LZZ)nP2-h6OZMD{ZoMxns zJA`%g<`-{1Z>>X8Y~FOWZl8btx_#i;`C$D?Pu7eaOCHozU<B4cwAKpzk6AM>^T7wc z7~p3n*=u0o!w&sz#ChMNj75}>D8`CcpH7SwslRKnKU?_}YSt$(*<AY@3RzE!pH>7P zxNx1cV2!PeET{unLG9nWq!xQM`!M@BUC@gI%)gAIyBMCB<C<<P-ld3R|Nk`JOmK4Z zWuF%pjAmTSLLeA$d>Vfi!?O=kPS0_3BfPDz9^tL<;zY+n2m}L8U?1NHPkpQd(RUxP zt#1&)A;`puj(Z^x3^?H+hI$<U^|2mAAD-*k`gp(MvTWi+$5Rjp2Ar4#uNr{*c*J5H z%llXGmVIF!6C2>gi4HtBwDnDDM40tLebgiR_?*Yq*NSihyg1SKPY?(OoOB9*L|?Iv zgI<@|*7q91i{Zs-9WIZBmcGgB5tjCd>p1HBA~5yob5Q;?;FIv;MBkMVSiDFH!f7Gl zS9mu8lc!zeFaW(c;jv$7%&0^alCf{G{-~RAv~MYXEqw(&2$#W&lQ@1~oF_t@dJZ62 zb0%zbSY===pMi$j0Pq}|?_{WaSwE~lOWy@)=sO3QILTMS@@wS3r*$SoFO897iIO4A zabO(6!I@V}5JvrF9K!57#v#md8iz2;FS3&;2*bu9{z3$#?$d~8*f_+q-Hbzc5&|={ zfG-rXO|Q}6tq8L`w*_H$2w|3IjgA*X*5`zu%n3i66MjA?{EM7$e@^&B5O${{f7G98 zKApcBZ;BFBj5|%IZvdbDvpQR!dvi`$`XKqJfA>)x&+pculF!2er}g*dg#RulJdhR6 zy7>>j+m;jD`6o6?&O7A?8pb-$XT{3NJ@Z*CKb>9CvUJJq-^0g&x2;@x+xO&)!N3ZB z=F2aMMVk2tc9hR2ZIS+V*2)Q=4rdvot|T(?{6JSL&{>cA>E<Yx7}=@xC#=~*>kCp{ zQCd&d^#`lh`fyXLus*L`zVe=6k<ar#>I^=6K0k^6xca=0Jk=N6(i8G|ZNPqs{;0mQ z)W=YTImV{K%lrm-#nOk%ExC;`4kFaq4v#Ud)(S`hW9%!;;|TZ)Uj&RXuJA3u7!NA# zX5bsNya^cR1;x1@csVfU-}oLRzlSq=n4j1QZ0v-tnAp74;@B8=@|#ijMZ`}B=JA|k z>uXxh<H911cLUd3{6>v`1Uc+c`>-DYZUd&CJ@5}}4$~rE#pwrrMsrXH&JTfEu5Iu? z)|{ij$XnU=3h;q|@4{BTM@{|8=ED}}pEYLN9n&19Jp~N?>KKJ{kxC0W-^)|q%YFzP z*BsP`TN=puj-%@Xe+j<>@N<BfFXgNs$_L?VEPT6#n=Sn38lMFJ0buIsf#0n0uYgg0 zr4#nLU6!16#ri=yH?1+aTt7_e&3(<neHMNL>2%+4(KZvOAq?mC<1`}}bv;=y%9#+1 zvP}^TyGsSbKKbTAU4x4LAt;u9coj}d>;reg*8#JxP`8}RQkY}yzJTM#fY)nz8SqvM z?+!TX8f=f2C&76Rn010N;q15M>42|v{;kGwa9}g-QF64mvH|7cySECL14jdnlL9UV z*817!6g~qv%OK?iHg$;dn0iAQOuZ$odP9El-Ght#E<%{josK`E)55$CC`7%f>(nGL z>yz<QwH)=z_wJRv3b<O!>wy<)`E1}t@X{`eGd8eYlG+B2>x%_9SbQ79o~UI{)Urp( zwLMC%?NM@VkCOjB?Lm7L(H@kW*91kh2R8CaiIUd<C$;<%;2Bzuy5W1lic<@Wv8>Xf zo!Rz9Y<JYLI?hVHA&+TNKhXOn!O(SyVCcG3FzVT^bAusP^Pgb?jZ1*x%^Yb0=OekG zLSIsA-+{uisI<%j-tf_vBEm=ih!l_vhc;0BdBE_7pThA$_|?F|Z_xZk@Zk-=3H@LA z&A`HM*Zj@k!yEoq^gZEs01JPY=I;g{-tc?SuY|t`Sopn~zaM;f!%w4)gns~7@t57! zy5vt+E#*{>ax-W7{@g1oube$InVjkSzV&y`oH@zl6?0|<#LqOJqt5A>`5X^V^L}5? zmX=})YFW!_l<|MZ{lE2`WIBwLx~ILf;mZiLlenDwO7$&h@B}g-3Xi`bNetBofg9l2 zrZ_gMdmoIG-22K<Ib=of;zXZ><=4o6FZY$w$(B0NKW$!eTk8tb-IAuiRa!kQ=yj^U zRaVZeoUMA?XPG~oatH;;^tT(G8{)TxRhd%B0*B9O8940L6s|1i{MO2^`U}6CkXgH$ z!uN+l;kxp)bL%<I4q%74lRLayRhnDRo}TAa-8x+3JwE;MuLiOjucq+v*po#v2T9$; zm;?GsZOr$$tN5g?@s3bmO{gaC%@wyS^t!w$p`A{5%KL5td&P&-Zr#G6=;XH3&liPj ziuB%sZfa6pe%gs{zq#N<5EqZ_ESX#qY4qyvTORvv0<&^%H2h}uE#K_Nv83)^{!Jy0 z9df*yqLVQvR<X(7$k~Rp>lZrR6S^ksWPTOzym6I(q~e`EocppJ=1EYlM90aWojr2$ z=Og?5mDr!FRQ3wPJccv<8<8v1&WXQqrqkvYFW$}CQ!^UaMSEnZC4sQJW!jcX#dN{K zTu6HO&iyjWvT56<AK!V9ss82fwhnLV^UM6Tn+E>n7j397+i~7B{&>kY%&I&w;mK16 z9k0K}QFDoPH>aH%@8p4V9&8+F>7}mX?#j|&$8g%{U5OH}gU)mQ9{!!s&A)@Mj*JBJ zqtTsP_HWs?<(FIjh3RNLY&qAmpD5f-o+{D51T4ncmSr&dPtk|EryPlX`0BZ^e<xGE zfitT(mLvIJu;+3i_FVQRJz3HbUxC&xO1m|o#yZ;W=c9j|#RhEMY44q@oFsOc`(m)) zU2%6~U2zp#wXvq+qm!|`|GTyGfv>VU^ZdOxA>4#CjSkXlh;7i6qQ-EgXrpG@2oWzD zEdz|EZE6A}n!qJwLV(!XPPSz&b-+?ZMWJ1+>@3@HX8FuIvyQ{=C);&8bjF=!cWg`h zaXZwyEnA^r{|#EI`~98wJSQiY&~~?b;N<?!bAIPJ&w0*y&->o{zVA76JIiR<+Uy?r zwc)C|y{b)d{z>^)qh;;aiia;`XY1-m*k5s4)!zA^aDJf7i5K4bCvnHq<5~6=b!CNf z>|M^ze!o=SFV>_k^LCMAZHPZ<Pfvbr!&S5BnTh(VpXi>E>?w#P^{*dFrC&dkev6uW z;<7KMyNar1f^pQ%UFaNaxaz`(bDy8}(9B2jGx854n)7Qb_S8KZw=<vZW{3K!C+faY zzNhXVGkfcf=389*|MVkgX+Jfm-<p4tdI$3z$!A=@u<EM)eC{E7;*ks8{knX%`f;c8 zzgO%@#s_U^b$eqrjZe!LrLD8WjpM<OoKP*gpSN=`e@Ho|AH8i2m()JW$b6Hzqj@~_ zfwS{}38O9lBlZzITl<}SP2KLU&2`_go#Wr^I{OaQ!so2<@;AGF@xgKMFP_ogH%@2- zk7unu`ts03e=zQ{r(dU*%H-HfyqH*m9b<**Khmh=Nc<l6LggRDe6{<V9qc$&$dn7y ziZQc4{zS*|LPhS8nUBqS_}JP^E<Ym~ErslkX+zaJekVWesp83-5*<4_TrJ0w-j{Fc zzW&-b$Fo(Bv$y?>1+Gr^ctoxmll-dPRgV{{xU1hJnRbBWD7dF;cilG=`GQzJT1D@` z-d(k4LF)v+?&~}k;Pp&M^Y59^lJA(1qj@(v9;eQ(32D9__De~fk@PyG-%8k5zc3*e znrMff%&6L3{aAi!^%Dg@_K)FBb_xHZLUqCw=VV8w{M1dEYDU8G*vJ33m_9i+n)}G^ z<X-aV9i4ZNr$=v~?rA^#+c(SoUX9lmW+W)_c7E=wOOjqn`fu&U8Zm|JQ1wSI)*b5i z9cW$3o{4Ak$E)|Sd*VR)m!#g5?c-TDXCC|YR$|xL(M_E*coHD>&u8jVvmSo+y42wh zoN+thre3W~9q~^!r1B&A>G?~4RB=&;rw@)+XXpR(1&6Y3Z`@-K@PmVsUGPk2*$;kP zmwGjqI>OAy(UH~MefHIs)PBDYFVD41(s-fQ`0NxKkwqF0#u`WOedy@PXH(3h?o4qu z|M6sG$d-JU>P*_sIsB5s^uc7NuBd)|uyDGvEE%6aAMC7tyxKj-lCP-S^SL_`FW2pA zt7b%}=l}BPf~Sh|W^U(rs;#Pe&r|N~(8fJ~)l&UPif1C`|7`wO+p<+Hl3e4)%?`@8 z`CX7xkK`-n|9q|VxnsDka{k{`UnjpLyIZS{I<6yB3)eE)w#w6$Z!3H*v9>(>aQ5?0 ztvObf%JgOjm;Avs3p>Pn{l-*VMa7Qlwf7Dde*E`u{rGfQS;bGTPrc2Lk<r(#<2Avx zCkIjuI%D+CXueXVY$x`U#Z=4Mr8~a1mO5U4c3Nu3(Y5#fq$PFN$^O)P*53Qj;T;EN zyngaSsiyqpGk&OD>R-;jqn0PE(mT%N=M66Xaam=>{GV#)<LtwOomuC*iFxgOqm3~( z-f+pRM?0?^Pq{0db<DyaC-Qt2eRFv-s;l=7-SE+i-JCn_&acyd^m-=Sc`?^3XEN3K zi=RAtY9Ld~+*i#$#Irg7@{|;e>O$31|MpaWruNBiJ+tl9Qsoxd4fdkXCVM%%xwM** zk{(Z=YRS~PQRwC}dBtg-bu9PR>xo|1530BN<X<ti(iiUj*N2lFYP(o$+3@7ie1%CR zd+KoAUZqu<(J?RSYo+p4h3vrxPF<I&)qc=Ac3)eYsU6Qg!_!*ie0FNzy_jaqhHF^H zNYzi!prb}lWF_ZTSC4B4&-VP?TQBEl%yOd$wmT=seIftn9!s8X!Rynpqmn-Vm_|UV z=FhfuR!EYsNA~eV_VhN6pz-hhw{aqa-v{)J>1d+O?&{i~A>A2@^IencJD%!s-ph=q z@F8B$b6pf{=6Xqf(LC%tcOdbj)iCkt#>}7QcF%fDd#-POi4v*#>t$8#p4Yg_V$a<- zlM!FNr{N0=u9&!%ng0nLZTGhFY}re$M|SHuL7tWB)Dvx7+mvyY!EVy(r+hu1_+!vr z(dN4*r8+ok-$yJ?)l1APC*S-DyR!f1xAuRZF@S$}y_`!`pmXp1tBx*E&EW0AKj>f_ zQ_FMPfA->dR+c~aM2)|KtKK`?&7rP+SG{!obB{gu88NuVbN!inNWRLj<8N|i&|LI= zuA9IA)i<-J@WXdoQVni5_A!1OySZ9d&eLlisqu5lcdt#g=xMypE}h%-ydhUcAYBjn z>xshY3U(()mS1_?(7YgXV>-xPs?%M?_neVe^Yw0&&q&Ug6MZX>Jo)So+_Cz`-@Nq? z`L#Cx(6;X+{q}(~bw{fA)cudEtLlz6+?MoT)t-i{@@o@Z{&>R|zW>56PjEdw@Wu~Q zg*RSKE#s-dId8n`_O9+n*7?TwQd#6Z$ZEkk@*DEkr*>bsr{JDtYd*=hvwEG!*`4}q zW~QwD$RYf}9Gwf251i%M$-SxMTn2aWFFL3Fke`<6`zF_q+0JS5P}LLPy&=_*%+~oF zt<xUpi3i-@34Xp+IgF+vb={}>^V^YVG<A(<lX*P*MDEcVS7&Aq^L1}BU#q^<<8|NA z^-gL}eElMyR_!&fPP9kg0IY4^vuCFovFQE(9GIuB;)%nbUUc-iqa&5eDla;mpYhyb zKM$P@-wloxrp<cnhj>5lp4(Ild2aKcPT|YyC;ase*AI-CqYYP8?|GF`qcL#m+EjzM zy0+1$zL|_Wo}116{?^P0$MUoNSiUm(O!&(A^$lj8Io5C$-%=mbm|#ZJw~u3*bB^7b zYS0m*qcOks*t*nPiFftwiE-;}s_}b%&p%n}am|$zGv)XEb-eqAQ+eu4>eD=}T>IL$ zj<uXRQ}t<T9E&WiUC?~B{-s8ruaUU)xwM%PHy1sJRvpRpn^c_EIU!E#x1~5O9H&)B zoL2cpqJ@L*`L(7gpI>V*5}(`8vwv~S*?*qBXXAD@M(xZ;`j5Eh?b=JXuFc$0)3K;I zdrM9G-OY|2*VoEE!EDu=Y$Lp+IlHnZX=z+v>{otA4x#AwKlWSY{>$?Fr#)El;hK3= zb$d-ydriK*hRu#!7B%OV)Fd^|3niI!DVrFY6kJ(TkM(Z%<D6)*f2k+CNZUd`$lkha zG(FR8<a@52^^sp<``e@E2D>I~NbjQI6B`uYSCexa^3H5;PTf+IbGz@(1l(TZ|FU=S zvU6~UNhqb@jQ4fyp7i{o`_10xaQZpVScux4-s;BHyeY?3R8JaDpLbvGW%y)KP1bGA z9hK4E;FI>*j`O^~?NQ4~eX-BgwJ_NOyuYTiy}9w0nuTmvP3R1*OO;V6!?f#M+so36 zYIu;dx4nk#wMQ2<*B5HW*!8-xP_sXMUvpteO&9xSXTDt1Q_vR5U7d+rC;hIBV$@eZ z$WF;@s9f%9jr^9v#_-%{kq*>=tX-BUig}DdMpI5>|1)I|mJhk{cYCr!bv%Ar!ua`r z{GETeuehpt#O;-<-Aq%>t2f#+l9D#xy=tJiX_(cjSI3W!@~g5QH5u$1*|K4H-8uUh zBWHc|;s{$DPuk5^WqAIx$Tp~Jx<~FEn)FC2I)~ZxbfZf3ZRS?Pxpjv8_4ll2b?wn# z!5CWSs$zxoQp4}w(%rjZ%V2TCs!3bNQvI4D`zG^{$Ht9A{lhF|U(#YdCVSpYHEsQ> zHQJDNI4;MdF1_ZbSWb1leZ@W=tl82xq?NZzGF4e`-`%S=6-Um)(AEl5m$jV=hDS@3 zTE<9e#>l{$btT-ebba*TEk?VCWg=1k7PYv<%W{Ug*gX=%V2D*GtEqQyT(fHMoN=?I z5B*bgne?sMG(4<9;m2I860_XM(kktdX>#$v#x)xT2envwl;Ox4hO0J>^mnh<P6bi! z6a~=arQIAJ1Cz#$Ww-{NGuWn9Caycun(yrBUbcMc9jRuwl`yH>ZtU#7{ic<7esKA% zE3hhgirIDwrt)SrX%(9YY#CY=HLv;F>lR$&Tk+dI+uXpcl_u)iLt!B?o^z5}jfX3c z8wOr;m_Iu6eUPZ~%2Rr-PnYqjP)I()UvU+hh*{#V<8e=Xl6}$_pCinstC1T9Uh^V< z#Fc&1h-P00IBstbX<e6DFda7|Fbup_oRviB(|thGw+<ZZyN`7IUElECz6>7<*ADT= z{8tG!eV+!$`aVh8`UV(uOCH;&dQIO9pQrRbVytf~X~`{^jy(tr1Fzl2pH`yU`!=HT zRBoIY>)T0ss`2vI$YXualQ#do-RDW)%fwjUe$wVMV8A8MRKHJSK;>nh?(2H{((3D2 z-vQDGi59#~qQv&OHPlZdlRiBQYx?xfFVdIRwZ(R#1=ClDz++{#$S0=nBA<u7dPZxK zzE?=^Ct5Il*CB}XT_^ksQTFLs5T&K>BYZ~oWz=ttL<`~((s%I3W2LV<&YvEl^ywKD z)3+HM>wB8?5uydt_Xh|feb*N#Ccj9Z%@wlmLDG@FGL2J>D+{JizrIHLZg`P&ktlta z_&n+R6L75WS<+L?2kAfdW%y8NZPOp3^r=r(m-PKtK4X1qtLn92_8mqL+1ILe>?BIx z9G@qBKLAJi%2lVvj0MxDaUbdXUCIW1m-#$o?of#J?ILd~`+iZPZ!hViMA@h3kyMxT zsjnk_I$Wlj|1uiCk$vwUA>BiizV{GKUlTaiS5LZ~Xu<2qSQ#&Wzxww8QTi??n!d&0 zSYHoGwb_E{({bdnvOYk6WPS>ezAK5QPvbt)S0T=Bq6O3Udk7+Zi-stswn^VrK2QED zneV4>C+`^1g6S)n?-#2-ULZ=}e4^R+8E|Bu)|yIhMP|YDeF}lc%4+Y2Cm%|mo%>|p zQ=}t(m8VJOky$W(Uqle;ThdBdjZ^7+ug{adXTg!a84aYD5iOX$e~%#2S5TilLzF%} zW1~Fj`!=7kKKwlC8o~5^-Iw7*!R<l46(D`@BbvU~z_C8riw{FEeJ7B3th}W!@aGkx z^x0gCePvaoBYo~!<$cI3cpYUra3X!T9Hdw~GU>a)=Skl@aIEinWKlWOQD(<HbcI_P zr_*#SN#E}hRYv-xJJR=d%}b3$3tqR@XEfc)`n_8I(8o^S2lzC7cY<SmCrIxjS}=Wj zUejY`{ay#f8UV8IMxyB(21oj8x0BYmvS9kwBZ%}ZFOt?VB7K?zOy4$etnU@lEkp~Z z@6!k(eJir0dx+9^6VdcN3RYejk#GS%&g2s8{+hn0NU7e47wb1%_E(<gpZmF>fpj&| zg7l%MO#Kws+my(S=ISC*_M^%23*eQHA+uoi{ci*wD{DnRmx+x4wf9z{^01>!=LNOH zhl`#DXk1yaybBQcwkqo)>@AP<2OZ)^*JpD_Xx13AWkfs9HP&=Z8|iCiJXic9G7DC( zrR_7we}iY^BK@wi*j`ocPHv`{^mN1eBrO|5AUz`_0Hk%@8v^OKhXjDMd=>&}T{nh6 zTGxFckk)lu2&8o`4uSM+5}JP$j^JdaLm*$*K_QUVbxa7P=Y#}+^kpUKcbBAfP7VRS z&ch*))_K(1?DnG7dBN(~jeR;Vh5)}bJ)cbJP&fu(=@8)SyrnsbklsqZ(jkzq`a&SB z@f8ATod-f7t$92I(wZwnAgy`ywnR{-g<_TdeNWg&`bLl42Yk(wA&@T3UmP+4<ZGS@ zf%MHJ`Vv7Vmrl}gejy|P@RydPZy~+j%hHrrIt2JS&O;!rwtdzMw6T!J|1O`dC#~^+ zz^Ao1vc~^k__P*e)%gEgpVnThZv(&N(=$nH{QtzK^`N-I8_7q?r}h4d3)0W=q4!o? zI7ph~BOS(AQa){cxSf2Cmvm^8&%e``-%mbcF+JeZR^Mnz`hK6*Uc4M%dVeJeUf&l= z(g%II6+Xw8dw<7?JpY?MU;gBH(^}I>Nb<FYlnX`j=P)&fW7g-Fv^Qg8vJ?Jg@R$1X zzCD>0C28hY7o?x#S8Gcr!R!B5KB@lYc+UKrlKlVV)9vJAOXlxN^1o4%K3<YOo21j) z+m>T_;@TytzbwpwK8+1Y@aZKb={ri&x=wb%^Gn)S_CQI#u3KI3{J$(of2}0_y~*i` zQ$$j}Jj}s99p)UL4#%8N_m=4Um`^XmKg>_%pD)S(vQHPtXRMc(*jxTppRfL9{wja5 zr2Og0>1h={y$?QP$-NioM2UUV!W`?<H<y(Ea7lWwB>lOPw5}Ii@cLdTNxxi@{^!Z* zimH-y$?;GT=Ga7k#fM7x!zJlY`?QX4%2wF?rsHWbX*(WTNHZT-lpGHg|HYTrCf0=% zzxC>Y`8BCYzuZs!GClEw_c_0EpYzkU{rX$_8?pWB`>TG-jc&a7-?t~-ZJBh7CH$Zr z?yFEF+$;$<Q(|Fs2c@4aW4R-sk2QS8toSYp^7z)t#LKzb_m|9b?w)vtdzqE|lG`Uf zm!Gx=dp8Zm+X(a4F?6*l+)&Z(!V>olbPsGyeuM8`y=K+M5iv{dque>LWZ<U3dj<yk zy4&3ymRq^G;_ENHqY`mf^o_J9_gmmE9qjFMo``R<OthG$q@toX_V)TZ>;?;WUWV9% zdeyo<niesa4R2V}w{he0WHZ{{WvkY#LlwqZLHvI%eFZzxPEg&wns&Bq?Hj&naPz?M zhC#iT)4fu+aMaBHO(VL$B?AJEbpHO}P;t{eaV;yX1f|{W9pBJo&*P}*(!qg|fmOwU zkM&I|-ZygF#(P#Ey|KvVvF;_IsL(Ri<_{kml5z3H8wT$lxJS1b+xs>Ttm%{8&WcFK zqD=$E-o=X+$K`IO+NFzb+<5Qcn*LZWBkx>xV=TIjn`i?XEsJ%7Z^|5ce@SuGJsaap zWVhY8n9gNy?u~Bj@eUNPa&t2@+5&h|5sX^Fy`2v3V#b=5up{^4<o?y|lZOrk7OhyZ zQny0!zQ%m%eXht2kRvUgKdif6Ti9Sb8S^VfTzb;2ugNN~KsRkg+%(Df_KBNiGQ{1e zow!35DOpU`NZ*PTOWWf{VjZd%-CHWhjZ=td_2lBvZsc|xLz%7`8Q3s*o9@d+wL-XQ z(7i)HbtcEw2sirrdY25dwfLfeNj*Se^K+z<>0yn#qZrr2fOIzuBOXm#&aLSUgR6>* z+2nb!uQ<tZ3=#GEEgM$HdR7h(+;dOg@Dw@A`_^yR+-DiOk+%_l>&9aD&_;I<+X*AN z+elA)fjhu;^Dr`wjvSWfU8lOdlDmjHz3G~aYc=;ho$GP8roc?nS%1BtQ!S^*z#;Fd zM$!uUEyT*k7_nOmKr-~W_xyG3TjR0L^D!SBbn5p8(-~uIb8^1gxO-gU2ooxG9Z5Yd zT3OOTr|LF&j1gC<tYqkSSnZX45&s5jFL|wo<s;+7IJOhNRZIUqA{>YJgRcPVTC$CJ zt(PAFUk~QG-K{&oZ`O|U1nG8<d%>$cE`Zm9)i<+<Lmoc><~q~WC7oNrrgIxu^-AYH zqS+4)ZN$FNM#^Uz;VC@LC6wWVq^)d>%lR6p_Kp#;>ur1o(|QqlpV{q~y%pR5mJJ^! z&h>aXxY=X*5}!EErQjB@?8kQP%@^d$JeK~I9_#w_t_b&lt!&ZDhv9sZX!egq;{^Lc z8>#QcMtBO_iN=pHey@@Lu}i;`)u>$^#CL+_hn>VGFIO8Ef@RMxBJFZ~*+XADthRJ| z&TcUM>-c-YBOdPqW51J&^B~b|qrNcasUx%n-ePMDy4nq+E3|Qcq$kFV=eMgZIu@(I zY9q(7#<SaJya7!A1{>f78^{ZFsZO&q#^|Y)&ijZtkG}*)XRYczL~MvS_|xqnE}viT z<&T0Ffz=o4TgHad$(WKq9WH|J0?Ys7#MK@@55~`qb3d3d<nSnXv&XIAkAXFwh4H!5 za~S+k#KGr|qq?4mIA4r7`#eYE;me-$0{G9t*4}45|5D`7dA|H3UziWU!O!CiLHSgH z_S|e3`@$HYj?foJ;F+En)2|oGKY1d)ba)}S-s2XZXJz4qdf|n7;Vm^AS}9}v7?<-C zkLsfTT{I5qTdiy^DjQ=sVIOdO<Zut%xgPg|-|ulhn6cvaA72UXB3fPG+pMmhs4bKa zZK3?_#!<go*%;%ui`157#0HO5*E}$O)O@D-?IMkH?9#FCFm|QdJiZ0o?lI%q>9V@e zYkNj$uCsj~+`SUxbW+A}mQ#Yp67A4WMYB|I9kB^4JLMB>nkC!rAYzl_^nkI!;pJd# z3UX|4SY@zbmX3v)MCuJ3{24fRMI4T`z?V&CCpe5@Y+BJso<i)~7-#rdPwi5@RbaJ? z_UZiX_FLB&k$t8gUeHfo*srrb;>5U|DM<SBM0Dn)U;2n{zx9RSSsu55DeL5|VEWqO zHn7T@4d7q{<-^{%l<&0mQa<eIO!+V;w?}$njGY%_r+dDHHfle2TSL#udnkuJPTmV< z?76+&Wk3Dy<QfCi>*TVx!^`FGm64qB;rK(yyCOMyU0ox{*Luz<csSzR7jZrnaUO^` z4@Dg2Ojnomd@15Q9dQmuoM$7>S0c{gh;t<3d?Vs~C*piR;+&2+KaDtNCpc;IKW$Gl zPR!=?%!tD{adLc+u8-vJ^zt#}jbM$hJecVGxfQ(7bGCsQCxO%EIopvh@|>OELd5Ar zpC5Y~A2#+hK5nBvg>(<MR}A+~>=%<}Omvx?abWwrq=z_lnw&PzF+4i4Cvuv0_LzKZ zVqarDpHOdd+Oyg)ZLoc3(zIcX$#-F(*&ktD+t=%OWUkfm=rD7Dt{Lie%wmh?-g?b% z*rIcRlaGO~@N#U?vEa(C1mknZ$1Yt<IE-DXHjlAO&l@;CKG1v^>RRhLvT+cs`4D|> z9YZ_zvB~@|o5J~b%(tC3>H0jJqp_pc`$5;7eTK2)Zo|}fkKx^vx4L3n&+Q5M>TcpZ zk2yZnu1n;fmx%3PjXjQU9oG)ae%j*7J`4Vs$12Nl8p=NE`3I2yna7_3k9+=M@Cy<D zi04Spw~1ymcJy0Yjz#hqmvbvcb6qd_^!K~eF8WsU@Vhkc^@A@3t1Y!e`q#;e;1<v4 z{FZ9-@*(gNFQ?D7R-NOIfboUX^Cd9nuXm|WrH49#9RE1J^iamx(*wp=j-!6q=H)xV z4|u-pr0*Q(Q{X2e`5$|%y1oondq=_afzvPi51ylXPk4MEJo!g{5U%!k3@rQQlX38B zu-dX2EI-=u1-9`iKiYXGjU8bRT<ZHsBV`C_+8gE&YzlJ-b=%lZkI~o0-%25?E5ho> zIqFA^1#F%pI~Nf7bn@rH^smEeZ=J{ZM(5l)@(-WtcgJZ0Q)iGb^z!A%uZ`r41M$=7 z*7emK`Q)9%m7Xu1cSL-A=yWz9r{4n~n}VEvcRJMu{19xoKauO2OWy;7oezQ4U)Zbl z0v(<QJ^(g*XlIcB8Q9v(cnEsF67lg@;2e$Q_&3OpgH^BWISrQo-yr_j%Vp2cJ(fLZ z!K$}`nDu<hYK=M5nXUzUn|1DUSRDKt%Bt_gkzD?@@c<5Ek2<ba{RH`CtzqnVmto4= zo@hE(20al@l`|x;In_q22CI$g7wU5O3UC7$KWP5b-00*rVDg;20B(-tEneP%yp3pc z7uf8VF0)PNi}l`ST~pN>UKW*&ah6-VvIl*#`7+r|otn!WZUEDU%hWE}e5seWg3%r1 zZKNaHidHXWHW*ghj1%JuR7rmq5nnXQhFlUGWm^vsA3FJ5F#d5E8}*xp!`FkcyHR~D zpJSgZ+Y819$I-F2#LN4^_$TP;1Y6k;lV^5fQ}A<7<XiOG9&nnUZQr-^es{pP?^e4Q zkFqad+VgI;aVK$s$GgDSdb}IVyy5taaoO+qd%?GR`6!q^b)41U9<bUXK6X0!S}=A7 zdC|-7M?M_k%@OBgUj6`_u?TOCINKt;J;D!C#(YTIMjA;g(6;cMowjW<Iqk7|JGBp< zm5p&Zr(XP(kt_$6KO2%b7awN!gVE>YO<?@#a3{DOEY1ONhsRHYmwS%)+g$mrK<xFL zgW#g)tOSpE`7>brBmHR|*R*l&h2SG#+U4rq3jUJkKMSTlCzl@dil12sMwi31O~1D| z%yE_)_x$I<L}&jY@IQEt#`95+v*4FKX8ubZ_xy42X)mt<|J=)^^K2s5b0RvAyS98E zj4oH#VK8Opa%^T^0M~jsZPa{gZP9$|_%9-_kL2^f@+UHVr!fEPy#j}^JuUyMUtR*= z72$ng)yrqve0U5jAL2KiGt+<R`LBQvf$59P7<k;{RxoXF`j3O<H?s#@o%{rH??a8v zG`bw;i(tw)4mz|>t>n7K(cW#rhO?f7EK}h*n3t*Ya%{<%-|%^6X2Q|AFO!Qn^<Mr{ z<P8Z{ex}jORdya&ZEPVnf#rv<fEPrZYa@Jpgw5yDUqJ4Ug-mCJSA*sAGsJ!`r+t|r zu<G4T{3O`>Fmu1>97oO^;pBDTha&mz1eeJt_%xK=hrl1>>SLQ@bqw42OUJ5R*J;1G z&G<qgb1;?KV)&VfbDW<4-e~eed?hnHo=V+o_<0Un!-rF;j~jl0M_vpc;Zn-*i>cHn z3?Jp^UBfR;%ww5jsnj2u{1v83!}#T27(OxaJu7pXrHD;Vf7tb{{C<VW@q4$&^4*Pw z%Sm{@l|@+d;pOzH&4<QOdaf_4xiQFNjGim#_tY4X<NXTh*-B)5IlK*gsmF`~egC<F z@t|{#&P|T96THOZUEte2=fmJmk9)ygp0gX=@9|#nP=q%}9L8I)d2C{w$UgI}`@Yi% zPXYVFH4iq0a}72HKTx;%Q_peFv9kLpKh=4s8nN2TJSRUpjGuJvex;5<;byS>)<NXB zb6Eaa<nc;y0jy)EmUs)%>Y~hTW&>q{&6Ei?<HNv@aXFW^>bpD<JDX&uY$7(vo`po^ zSzTZ|)|7X@)!PzrVvP8`)A>U^vfJUAVB&kzd@AI)S8KQ)EWW}#&u;<~10Ng0db`*V zuea;;x56g|ejAU2ntpufIQUGy4xDA&el^ZYu-SmG9KQ=bG4Ol1Z)^Nsu<;p_j$edN z4E!O!{u_S;Z2VErzYjh!@W*&W)%e>yXFD8X;OwN!jI#@DIuCmOGw_Ll|19?qjeiJi z{1-j{D12hzzr@fq{xPue&v^b>_(bE2YWvdadcgLj)p=h&(K%l+@N*0auV3eVw^lMb z((Rs4U!~Pw#_3>K8eRtW_UOC6(~rN?#K0fo9*yxwz{Vf*{H^ebfsdcVKDPKd>|=Y# z^T**61OIvMcbNXeVAFrx^H0Dh2L5TL0OS7@?D;ys%YL2P6^*a+x9xkI!9TX|t<K|) z-vpl+_<0T`uV2@NIn&?f`S>+M4EzGWyBfa(Z2WzmzaKs^@DFe)X8fnY#`pfo;2Xuj zf1Yb{;~xea|CrbR3VdSVALskB@lSv~zbu>Z%c^-MmuUPl{5Hq)%kZ1+OIz0H`Sait z1HXyWkn!=A?MqwM>iKQ(iGknF_fz8+z-CXU=Xb#;27V7;AB^7%HvWj`kHRMg{(XGk zG5#3X_<KEnAADlq?`J+Y{sFM@&v^b>_(bEEr#Pp3emRNDJ-<Ac@XPC&mWhGiz<Ja7 zjbP)qd44;5V&LPGD~;a)Hh#b77vU2Fe~4+^`1mB*mzHOMhBi(t<J|D;)^ToGcr~ks zEBq$wI8Q%<6DHPiz9RJ=t=Y^vb5*q+KPjfFhI3j$*R8}hZ@BnyE<bztLm$2PXw}gw zTZ5N%n%8~4D_NP@tqJ$LU4Q-DXO~@B``FA!yAF44V_h|^+VnqJLutHgv{1P$_vhR5 zg*U$T)|q@&eqFLInO0Dn{n<iQZuc{v&9AF_oK^XfmCTSAviYim)AQ@{g+euZj#g@= zDe<Xy$#@p)e@&o0Rr$)FwWKPO^(}ukkWwm}tTQ+=o0SSvM>8X=89AQHx8!F$k}a@e zp=x0*uz4fJM{*--ai+AI7v0)^i5IAYRj6OT4(r?sfcf0({i({=ucsDPVjNGujz5zX zhmU6RvkO&^`}NpJ<w&vqYtr6xYniB3YtjyV$X2BNcGXLK1G0eM+i0cNQm81l%Km(I zM+;tWGuGr!^;Ld)p`z}aJEre=$H{wASz;xzYRCI_++4G}h81LM;uU1+MfG9bH$z^B zTlLGWE;}JzaAHDwbs>N8v9-UmE&nIUieKut8m*J;_UKgVSNCAz<3bg^(?ajednEg_ z>r$*8nXG*(@6lg5>o3yTN3!ShVY1#=K6k1=l^t9vKjyc~(!q{=Wua>D2H}!*zMR8! zJe;Y%;4ODd6m?9Dr@@tO_uZ5`K9pwPWUU`L?8cE>c@NtjrgxK`&ChtRTY)a=|A&8r z{&sz8J?SjXXY-Y;0-D`XS=y`Y$?O<M{g_DF%39&`SXG&|%LY61GX{$v#iGy6X5Gp+ z${K%srmSHmK26qw!@8#Pwf~yt_p;I%FEsGUOAYRmlc&P3TK6m;t$S6S(33L!Wqu8T z^{!YaDwnL?gp~7C2%V9RSWba*w|G<uzxO=y^R2<fQeasv;H3&V--W<>XMP>3B{j8o zY00PR4i;;wsV2!^ziQKDTRYBE_ry9)lli0P;j>6tuqkdci$YD==8oTX9jITi1eALq zyMJIcPt-=s<Zwc=$GQE3?j?%=B~Pv1&1owxhBDrIShc!1Y0VwDUV1LQZ*U5BB0QHI zo_LQewFk;$(S|LoGUeWZSaUbKc1>C%${xO*EJceRh~E-7M(=MVPYai*;FW|`_x7=p z(UiHU@~;L=wZKoZ9*|p?>$hFWCwX5~*Af+eRQp3VjB$URk(z@<SU-X&oR9Y&@^rTS zbv#WKrS-<g7S~xWH1XFkaOQ6QtR&9!a^-2>xS1I1>-BOzTreH{4lqgI3DT`Z>5~sk zUq3k3$2FIGUXu?OOy3$(hJhEMC*1;&zO2uaefs?*(x>lr`aLED({V2n!@yZR{23=o zpJr|4N#8DFtgp+<`EbE>=-n*Cz;`t8$J#4BrteR|vA%xNy+jM9;{XD~z;~$LSBSE& zhNwL0{R%PG_X6p9q6O3O9}yS^=GyqvLzKQ+qUrlKIM#QZbUX%4$Jc!sJ`{5M__LQN zefmAd^t}d-^yzzHYCq9}={teIF!175iZubGZ>G<qy{<oFedFYH5G|OFw-6Wx*7ft} z8KU&*cP-^f-yA+8efqxU?g#SWg4dz%`?0>+O7A2}pU$7A?|tA{Upwhhq6O2p0D;HK zn*B7z)K2NEBbvTj!LhzWq??EqOy3d&k-qwI(nX^5neDVK-Ag*wcbv5P--7AuMiA+{ zM0K_jrH|hMgMFU@$NJ8Y?jTw)eV;%O>+2`ImneM=MCHl8hxn8}`G=tIZ<DT1#3Mib zB%fKLpa06cz-p%jUsw7d0_pQXJU#yug7N+YiO0%&CphyGK=w5fl_&dj97X!3ogf|8 zYk7Ll!{%mS1-7QY3b0^2eYy*tB%`K>VzOE9VqQX2z3QJzVx;dvWSP$(vtarxZJ$B@ z8?4z7+2JaS>T_w?5(1f;$3q~k{s@6|^o_`s$A1%ne9dDakXAcGAgy^M1kyS_<OhWo zjMZ@`nL-n3^~0qu#TX>5<2(e)m!?&Ip(oVB*SHP=zK+8XNXPxG&M4(K1Tuhpv&D%? zUk1?mQ$asWDIEg&8fPJpo=c*`3-UNa{=d_w^&*P=zuu?y4!Hau<{IzJKl1tJ+$T%Y z&y=M9-lz4>uKMpACHXqOT}br1HQnO$+kLj|)A6D)tk6rE{!Z(<#RXq}QAzqPpVm9` zP}1vsdLe24r?-^wA1X=zJD=VUnX!@n4<-43Tax}?lhc{$CF%J-J&HcYgYHEpA+bNx zUXotz(;e^|;1^5sH&03@KPIh7MVF_OFJ*_$xjvraiq>7Ix{K@N%fZy&2%@h6-QDYp z>-)MlZS3R1y?bawu{h~HHr{gOjZWUwOL^k(s4ls?dq)P=o2aPuVF!6ZlvQFkuPW+g zQTsY^n{+3yCN7itx2+mnbx)sOM_u0c2b=ozt}w3;Yh&T=HS2p*j;=Rr^-f*%<pYiW z8;9td2JulZuf6Kszmmd9U4^BKm&%&ESFP!5*L%09oA`Euw(ylCGH^w)uWx9{hGAaK z9>%)Vxv%qf>z&b+1MB;S!wa#cFVUV`$i0HOB`M`<E36vqE%ueTW3k@29bP|0rFzLx z>+d=Zi}C$xUQky3$u}QwfLu65;l-;4*Yp*G$^IJ-uI|SBn|Mbx@_zU5s^o}b`g89h zHZeXKy3=%DP3J!5OoufWT|vB(2v^r2wr6SS{kFh?=H5%xyrgJl!J#a3M3BdrdbQ`R zjv>vX(=~655Epo?d5*bT``^0fkFWRq9O?Ia&KUR>kGFz5BL4D-ztVHI!D0S!b!`Xt zM*OuAzvwwT;S7P_!Kcm@!$fN%wl*}9R=`%<>(xE8X!0?dW_YXT$WPdDnaQ!kmDO}Z zeZg<LNLyVorf;(HRe{KS>-N-@F3w#Js~_>F!>wTYG;r{(D~q4xTZfl{uLaA`D~b5o z?QJWas>5sm2iqwBZnK~A;hrw#-(&L5sBDa}-|b<WC126>gBz`EbtI25W!*cavY)oQ z{bMy|IZr#>1fJ(H?a)1J$5$I^yTfWDZFl?7$}W85<XzxJ9`}ITBMxIM*h$^N4<&66 zK0$Br1A6Tlh!lFSv^MreI%7;5XQ+Q?67h-Khqe}61y&#Bh!+ygZ}5UW<Xvw1>myE# z%Q<aJe*+Qy4yz3M-FvP0Prh|>`IEYwJP*dtq27k5-znd0^-?~xo$|pp%G>kJ?wZW( zr!Rs|u6Nw~uG^4Z>hX3kI^BDxJHhC2@2s|fnFkzy7q~s*&_|9#pKDAz&TjCBBhKoG zGvwua;c)&AWk2cV`;c#q<oAO$C&+f$YHb0B_G0&i<`e9;=W+FWgYCJk=jtvn4t3kJ zxv6~&SCj9L^v9TSa)HK!{D9vsP@lFEtHGLA@ss8Rha14m3y#wU#-9$igE@Yjo&uP8 zAhZR&?=>6H8`{+d#pIL^W1I4!-|>IY6XSAxB0H&H*M1kuPU)HnR$H2g*z7p6zroAp zXO%HOgM&Sk3C~$l#`fP<-z+pc<s&N_V|+MM_Vf@L=kA@x+riinFyk;_>T*~*7+Vf6 z1LL>AVN5!my~x`<?guXdtBpk>^NGVl;N=nj4v$BWcSiiXNSpmVQQN5__@6pLzfec$ z3+lMm{D9stM~y~0V_eSojOGXT9;V7OCpfHrXo$*!LtntNXU^1L*I2#yE!ZDp>T>T- zR+G>C6F8(p+1f}RW6HXB7a5x>8{S={@0`31IW{<X9!$ONoyK-BW5eMBSmn*P;Lw&f zmV`3<DRaGH$^?IQL}g=)c=mMuloPSp;hA9K>@=SWIj*}5V{`nBk>g{pYz}<daK2}Z z9AE7q27VjYEv6s)r^_CNmEIo4m&RD&cX2u}eh=9AMb96CPYnDK&f~^s{8So$tLJZn zPYnF+bd&LSf{nk|^Y_6g2LAr&d7}eh<3Hp1&%!4L{voD5(?1S2{tKRe1U@nFUt|t9 z{!y^!OC*1$={rT^r?bqHo}aD;8$ajy_3(*--@ue&{6?_x^PayDJ~8lH7#_xN1slKM w`5o|yfxnF7(fBLD#_#d`Uiieo@8?)Eei3Z^QO~~*J~8meI7W=W73}!`2jOADhX4Qo literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/revision.txt b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/revision.txt new file mode 100644 index 000000000..5420c93d5 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/revision.txt @@ -0,0 +1 @@ +Revision: 2491 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_api.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_api.h new file mode 100644 index 000000000..17ba2ba8c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_api.h @@ -0,0 +1,1687 @@ +/* + * Programming interface for wl_api. + * Copyright (C) 2010 HD Wireless AB + * + * You should have received a copy of the license along with this library. + */ + +/*! \file wl_api.h ************************************************************* + * + * \brief Basic WiFi API + * + * This file provides the wl_api interface. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: + * \li SPB104 + EVK1100 + * \li SPB104 + EVK1101 + * \li SPB104 + EVK1104 + * \li SPB104 + EVK1105 (SPI) + * \li SPB104 + EVK1105 (SPI + irq) + * \li SPB105 + EVK1105 (SPI) + * - AppNote: + * + * \author H&D Wireless AB: \n + * + ***************************************************************************** + * + * \section intro Introduction + * This is the documentation for the generic WiFi Driver API \a wl_api. + * + * \section files Main Files + * - wl_api.h : WiFi driver interface. + * - lib_ucr*_hd_wifi_standalone_v*.*.a - Driver library. + * + */ +/** \mainpage wl_api Reference Manual + +\image html images/wl_api_block_diagram_small.png "wl_api Architecture" + +(o)WL API &copy; is a programming interface for WiFi (802.11). It aims +to be a complete interface for embedded applications wanting to use +wireless as a communications interface. (o)WL API &copy; is shortened +"wl_api" in this document. + +wl_api has been designed to meet the following goals : + \li Simple : The API is as simple as is practicable + to make it easy to use. + \li Minimal size : The API is usable on very resource constrained + platforms. + \li Portable : The API is deployable on any platform with a standards + compliant C compiler. + \li OS independent : The API is deployable on systems using a real time + operating system as well as with applications running on the + "bare metal" of a hardware platform (that is without an operating system). + +As a consequence of these design goals wl_api does not allow very fine +grained control of most parameters relating to 802.11 networks. That +would increase the flexibility of the API while also increasing +complexity and code size. When the underlying WiFi hardware can +support a richer feature set the extra features can be offered as a +add-on library if required. + +The wl_api is implemented by two libraries. The core library is +compiled for a hardware platform and is independent of operating +system or IP stack. The core library contains all WiFi +functionality. The core library is supported by a suite of transport +libraries. The transport libraries implements the hardware +communication layer and are specific to the type of hardware interface +used to connect the host platform to the WiFi hardware. For example, +there are transport libraries for SPI and for SDIO. Only the core +library has a public interface (wl_api.h) but applications will need +to link with both the core library and a transport library matching +the hardware configuration. + +\section wl_api_princ Operation Principles + +There are three important properties of wl_api to keep in mind when +programming with it. + +The first is that wl_api is \b asynchronous. For instance, when the +\a wl_connect() function is called to attempt connection with an access +point it will trigger a sequence of packets being exchanged with the +access point after which, if everything is okay, a connection has been +established. The \a wl_connect() call is asynchronous (or non-blocking) +which means that you don't know if the connection attempt has +succeeded after the call returns. You only know if the sequence was +successfully started or not. To find out if, and when, the connection +attempt was successful you must register an event handler using the +function \a wl_register_event_cb(). This is true of a number of API calls +(which is indicated in their documentation). + +The second important property is that wl_api is \b polled. wl_api +never executes "by itself", since it would then have to support +interrupts, timers, locks and other operating system dependent +features. Instead all asynchronous processes proceed when wl_api is +polled by calling the \a wl_tick() function. When \a wl_tick() is called +wl_api reacts to any received management frames, expires any internal timers and +performs any other tasks necessary for forward progress. After +\a wl_tick() returns nothing will happen unless it or some other wl_api +function is called again. Also, to send and receive data, the \a wl_process_rx() +and \a wl_process_tx() must be invoked upon reception and transmission of data. + +The third important property is that wl_api is \b not \b thread \b safe. +All wl_api calls must execute in the same context since the +library has no knowledge of the locking mechanisms available (if any). + +\section wl_api_code_examples A note on the code examples + +The code examples illustrate how to call the different wl_api functions. +They do not constitute a complete program. Functions with the prefix "app_" +in the code examples are application specific calls that illustrate a +particular action. These functions are not part of the API and will have +to be implemented if needed. For a complete working code example see +one of the H&D Wireless software reference designs, such as the WiFi HTTP +server demo code in the Atmel Software Framework. + +The API is structured into these functional groups: + +\li \ref wl_api +\li \ref wl_wifi +\li \ref wl_data +\li \ref wl_transport +\li \ref wl_custom + +Also documented here is the transport layers for SPI and SDIO. +There interfaces are only necessary when porting the library to +a new hardware platform. + +\li \ref wl_spi +\li \ref wl_sdio + + * \section contactinfo Contact Information + * For further information, visit + * <A href="http://www.hd-wireless.se/">H&D Wireless</A>.\n + * Support and FAQ: http://www.atmel.com/ + */ + +#ifndef WL_API_H +#define WL_API_H + +#define WL_API_RELEASE_NAME "v2.7.0" + +/*! Maximum size of a SSID */ +#define WL_SSID_MAX_LENGTH 32 +/*! Size of a MAC-address or BSSID */ +#define WL_MAC_ADDR_LENGTH 6 +/*! Maximum length of a passphrase */ +#define WL_MAX_PASS_LEN 64 +/*! Indicates that there is no SNR information */ +#define WL_SNR_UNKNOWN -128 + +#define SPB104 104 +#define SPB105 105 + +/*! \ingroup wl_api + * API Error codes */ +typedef enum { + WL_FAILURE = -1, + WL_SUCCESS = 1, + WL_NOEFFECT, + WL_OOM, + WL_INVALID_LENGTH, + WL_NOT_SUPPORTED, + WL_ABSORBED, + WL_RESOURCES, + WL_BUSY, + WL_RETRY, /*!< Retry the operation later. The driver is busy + resolving an operation that conflicts with the + request. */ + WL_INVALID_ARGS, + WL_AVAIL, + WL_CARD_FAILURE, /*!< Could not detect SPB device */ + WL_FIRMWARE_INVALID, /*!< Invalid firmware data */ + +} wl_err_t; + +/*! \ingroup wl_wifi + * Event identifiers */ +enum wl_event_id_t { + WL_EVENT_MEDIA_CONNECTED = 0, + WL_EVENT_CONN_FAILURE, + WL_EVENT_MEDIA_DISCONNECTED, + WL_EVENT_SCAN_COMPLETE, + WL_EVENT_FAILURE, + MAX_WL_EVENT +}; + +/*! \ingroup wl_wifi + * Authentication modes */ +enum wl_auth_mode { + AUTH_MODE_INVALID, + AUTH_MODE_AUTO, + AUTH_MODE_OPEN_SYSTEM, + AUTH_MODE_SHARED_KEY, + AUTH_MODE_WPA, + AUTH_MODE_WPA2, + AUTH_MODE_WPA_PSK, + AUTH_MODE_WPA2_PSK +}; + +/*! \ingroup wl_wifi + * Encryption modes */ +enum wl_enc_type { /* Values map to 802.11 encryption suites... */ + ENC_TYPE_WEP = 5, + ENC_TYPE_TKIP = 2, + ENC_TYPE_CCMP = 4, + /* ... except these two, 7 and 8 are reserved in 802.11-2007 */ + ENC_TYPE_NONE = 7, + ENC_TYPE_AUTO = 8 +}; + +enum wl_host_attention_mode { + WL_HOST_ATTENTION_SDIO = 0x1, /*!< For SDIO or polled SPI */ + WL_HOST_ATTENTION_SPI = 0x5a /*!< For SPI with interrupt line */ +}; + +/*! \ingroup wl_wifi + * Event descriptor +*/ +struct wl_event_t { + enum wl_event_id_t id; /**< Event identifier. */ + +}; + +/*! \ingroup wl_wifi + * Infrastructure (ESS) or Ad-hoc (IBSS) connection modes. + */ +enum wl_conn_type_t { + WL_CONN_TYPE_INFRA, /*!< For infrastructure mode (default) */ + WL_CONN_TYPE_ADHOC /*!< For ad-hoc mode */ +}; + +/* Note: + * If your environment does not have stdint.h you will have to + * define the fixed-width integer types specified in that file + * yourself, make sure that those definitions are included + * before any inclusions of wl_api.h, and build with the macro + * WITHOUT_STDINT defined. In this case the wl_api library + * must have been built with the same integer type definitions. + */ + +#ifndef WITHOUT_STDINT +#include <stdint.h> +#endif + +/* Note: + * If your environment does not have stdio.h you will have to define + * the size_t type yourself, make sure that that definition is + * included before any inclusions of wl_api.h, and build with the + * macro WITHOUT_STDIO defined. In this case the wl_api library must + * have been built with the same size_t type definition. + */ +#ifndef WITHOUT_STDIO +#include <stdio.h> +#endif + +/*! \ingroup wl_wifi + * + * \brief SSID representation. + * + * The SSID is a binary string and cannot be treated as a + * C-string safely. An empty SSID is represented by a + * SSID struct with the len field set to 0. + */ +struct wl_ssid_t +{ + char ssid[WL_SSID_MAX_LENGTH]; /**< Octet array containing the SSID data. */ + uint8_t len; /**< Length of valid data in ssid member. + * Cannot be longer than WL_SSID_MAX_LENGTH. */ +}; + +/*! \ingroup wl_wifi + * + * MAC-address/BSSID representation + * + * A broadcast BSSID is one with all octets set to 0xFF. + */ +struct wl_mac_addr_t +{ + uint8_t octet[WL_MAC_ADDR_LENGTH]; /**< Octet array containing the MAC address + * data. This array is always WL_MAC_ADDR_LENGTH bytes. + */ +}; + +/*! \ingroup wl_wifi + * + * Network representation + * + */ +struct wl_network_t +{ + struct wl_ssid_t ssid; /**< The SSID of the network. */ + struct wl_mac_addr_t bssid; /**< The BSSID of the network. */ + uint8_t channel; /**< The wlan channel which the network uses */ + uint32_t beacon_period; /**< Beacon period for the network */ + uint16_t dtim_period; /**< DTIM period for the network */ + int32_t rssi; /**< Received Signal Strength in dBm (measured on beacons) */ + int32_t snr; /**< Received Signal to noise ratio in dBm (measured on beacons) */ + uint8_t enc_type; /**< The encryption type used in the network. */ + + enum wl_conn_type_t net_type; /**< Type of network (Infrastructure or Ad-Hoc */ + size_t ie_len; /**< Always 0 unless wl_api has been built with WL_CONFIG_WPA_SUPPLICANT */ + + uint8_t ie[0]; /**< Not used unless wl_api has been built with WL_CONFIG_WPA_SUPPLICANT */ +}; + +/*! \ingroup wl_wifi + * Network list representation. Array of pointers to wl_network_t entries. + * + */ +struct wl_network_list_t +{ + struct wl_network_t **net; /**< The list of pointers to networks */ + size_t cnt; /**< Number of networks */ +}; + +#define WL_RATE_1MBIT 2 +#define WL_RATE_2MBIT 4 +#define WL_RATE_5_5MBIT 11 +#define WL_RATE_6MBIT 12 +#define WL_RATE_9MBIT 18 +#define WL_RATE_11MBIT 22 +#define WL_RATE_12MBIT 24 +#define WL_RATE_18MBIT 36 +#define WL_RATE_22MBIT 44 +#define WL_RATE_24MBIT 48 +#define WL_RATE_33MBIT 66 +#define WL_RATE_36MBIT 72 +#define WL_RATE_48MBIT 96 +#define WL_RATE_54MBIT 108 +#define WL_RATE_NUM_RATES 14 +#define WL_RATE_INVALID WL_RATE_NUM_RATES + +/*! \ingroup wl_wifi + * + * Rate representation + * + */ +typedef uint8_t wl_rate_t; + +/** \defgroup wl_api Library support functions + * + * These functions manage the library in general. They concern initalizing + * the library, downloading firmware to the WiFi chip and handling events + * from the library. + +For this example we assume that the application is running stand-alone +without an operating system. + +Before the library can do anything it needs to start up the WiFi +hardware by downloading a firmware image. The firmware image is +relatively big (around 144kB) and is therefore not included in the library +it is only needed once. It is up to the application to decide where to +store the firmware image and how to read it into the wl_api library. + +Step one is to write a function of the type \a ::wl_fw_read_cb_t +that wl_api will call to retrive the firmware image. Assuming that you +have some spare RAM (or whatever memory type is used for read only +data, such as FLASH memory) on your platform you can simply include +the firmware image from the \a wl_fw.h header file and write a +firmware read function like this + +\code +static size_t fw_read_cb(void* ctx, + uint8_t** buf, + size_t offset, + size_t len) +{ + if ( NULL == buf ) { + return 0; + } + *buf = ((uint8_t*) fw_buf) + offset; + if ( len > ( fw_len - offset ) ) { + return fw_len - offset; + } + return len; +} + +\endcode + +If the firmware image is stored in ROM this function may have to read +it back block by block instead. + +First, firmware must be downloaded to the device + +\code +if ( wl_transport_init(fw_read_cb, NULL, &mode) != WL_SUCCESS ) { + app_error("Firmware download failed"); + return 0; +} +\endcode + +The wl_api library is then initialized like this + +\code +if ( wl_init(NULL, init_complete_cb, mode) != WL_SUCCESS ) { + app_error("Init failed"); + return 0; +} +\endcode + +The library startup process will now require \a wl_poll() to be called +a number of times before it can complete. In addition, if the +application needs to know when the startup process has completed so +that it can, for example, start up an IP stack it will have to supply +a valid callback function of the type \a ::wl_init_complete_cb_t as a parameter +to the \a wl_init() call and start polling the wl_api library. + +The init complete callback will only be executed during a call to \a wl_poll() +or another wl_api function. This simplifies the implementation since no +internal locking is required and the wl_api library becomes OS-independent. + +\code +static void init_complete_cb(void* ctx) { + init_ip_stack(); +} +\endcode + +Registering the event callback is straightforward : + +\code +if (wl_register_event_cb(event_cb, NULL) != WL_SUCCESS) { + app_error("Failed to register event handler"); + return 0; +} +\endcode + +Similar to \a wl_poll(), there is also a \a wl_tick() function that takes a +free running "tick" counter with millisecond resolution as an argument so +that it can trigger internal timers when necessary. Assuming that such a tick +counter is provided by the macro GET_MS_TICK() the wl_api execution loop becomes + +\code +while (TRUE) { + wl_tick(GET_MS_TICK()); + wl_poll(); +} +\endcode + +In a stand-alone application this loop would usually be the main application +loop and include application specific calls as well. + +After some number of main loop iterations the init_complete_cb will be +invoked and the application can initialize its IP stack. + + * @{ + */ + +/*! \brief WiFi event callback. + * + * This function receives WiFi events that the application + * wants notification of. This function is supplied by the user + * of the API. + * + * @param event Struct describing the type of event and, for some + * events, additional information regarding the + * status of the event. See wl_event_t for additional + * information. + * @param ctx A context handle. This handle is passed + * untouched to the callback and has the same value + * as the context registered with the callback in + * wl_register_event_cb(). + */ +typedef void (*wl_event_cb_t) (struct wl_event_t event, void* ctx); + + +/*! \brief Initialization complete callback function. + * + * Invoked when WiFi initialization is complete. + * + * @param ctx Opaque context pointer as provided to \a wl_init() that will be + * passed back to the callback. + */ +typedef void (wl_init_complete_cb_t)(void* ctx); + + +/*! \brief Register an event handler. + * + * Register an event handler with the driver. This + * event handler will be called whenever a event + * listed in #wl_event_id_t occurs. + * See #wl_event_cb_t and #wl_event_id_t for more details. + * + * @param cb Event callback function to register. + * @param ctx Opaque context pointer that will be + * passed to the callback when it is + * invoked. This parameter is never + * accessed by the API. + * @return WL_SUCCESS + */ +wl_err_t wl_register_event_cb(wl_event_cb_t cb, void* ctx); + +/*! \brief Initialize the wl_api library. + * + * Note that \a wl_poll() must be called for this function to progress + * towards complete init + * + * The startup process will proceed asynchronously and will inkove + * init_complete_cb when completed. The callback will not be invoked if any + * error occurs during initialization. + * + * This function should be called after firmware has been downloaded to the + * device. + * + * @param ctx Opaque context pointer that will be passed to the callback + * when invoked. This parameter is never accessed by the API. + * @param init_complete_cb callback function to invoke when initialization is + * complete. + * @param mode Indicates the host attention mode used by the device. If + * \a wl_transport_init() was used to download the firmware image to the + * device, the proper mode can be obtained from the mode parameter of + * that function. + * + * @return + * - WL_SUCCESS + * - WL_FAILURE + */ +wl_err_t wl_init(void* ctx, wl_init_complete_cb_t init_complete_cb, + enum wl_host_attention_mode mode); + + +/*! \brief Shutdown the wl_api library and free resources. + * + * \a wl_init() must be invoked to startup the library + * again. + * + * @return + * - WL_SUCCESS on success + * - WL_FAILURE + * + */ +wl_err_t wl_shutdown(void); + + +/*! \brief WiFi driver timer tick function + * + * Periodic timers are triggered from this function so it should be called as + * often as possible if precision timing is required (traffic timeouts, + * authentication timeouts etc). + * + * @param tick A tick count in us. This is used to expire timers + * in the driver. + */ +void wl_tick(uint32_t tick); + +/*! @} */ + + +/** \defgroup wl_wifi Connection Management + * + * These functions access WiFi-specific functionality such as + * scanning, connect/disconnect, authentication and encryption, + * and power save modes. + * + +\section scanning Scanning + +To scan all channels that are available in the current regulatory +domain + +\code + if ( wl_scan() != WL_SUCCESS ) { + // May be busy scanning already, no fatal error + return 0; + } +\endcode + +Since wl_scan() only starts the scanning process the application +should add code to the event handler to catch the "scan complete" event +and retrieve the list of seen networks from the library + +\code +static void event_cb(struct wl_event_t event, void* ctx) { + switch(event.id) { + case WL_EVENT_SCAN_COMPLETE: + struct wl_network_list_t *netlist; + uint8_t netcnt; + + wl_get_network_list(&netlist); + netcnt = netlist->cnt; + while (--netcnt) { + print_network(netlist->net[netcnt]); + } + break; + } +} +\endcode + +The function print_network() could display the network name, the SSID, in +a user interface. It is important to keep in mind is that despite the fact +that the SSID is usually presented as a ASCII string, it is +in fact just a byte string and can legally contain all kinds of +non-printable characters, including a 0-byte. This means that it is +easy to end up with buffer overrun bugs if the SSID is ever treated +as a normal string without precautions. + +\code +void print_network(struct wl_network_t* wl_network) +{ + char ssid[WL_SSID_MAX_LENGTH + 1]; + memset(ssid, 0, sizeof(ssid)); + memcpy(ssid, wl_network->ssid.ssid, wl_network->ssid.len); + if (app_is_printable(ssid)) { + app_print("\"%s\" ", ssid); + } + else { + app_print("<binary SSID> "); + } + switch (wl_network->enc_type) { + case ENC_TYPE_WEP : + app_print("(WEP encryption)"); + break; + case ENC_TYPE_TKIP : + app_print("(TKIP encryption)"); + break; + case ENC_TYPE_CCMP : + app_print("(CCMP encryption)"); + break; + } + app_print("\n"); +} +\endcode + +\section connecting Connecting + +To connect to an access point (beware binary SSIDs) the connection process +must be started + +\code + if ( wl_connect("My AP", strlen("My AP")) + != WL_SUCCESS ) { + app_error("Connection failed.\n"); + return 0; + } +\endcode + +and the \a WL_EVENT_MEDIA_CONNECTED and \a WL_EVENT_CONN_FAILURE events should be +caught. To detect that a connection is terminated after it has been successfully established +(such as when the AP goes out of range) the \a WL_EVENT_MEDIA_DISCONNECTED event +must be also be caught + + +\code +static void event_cb(struct wl_event_t event, void* ctx) { + switch(event.id) { + case WL_EVENT_SCAN_COMPLETE: + struct wl_network_list_t *netlist; + uint8_t netcnt; + + wl_get_network_list(&netlist); + netcnt = netlist->cnt; + while (--netcnt) { + print_network(netlist->net[netcnt]); + } + break; + case WL_EVENT_CONN_FAILURE: + app_error("Connection failed\n"); + break; + case WL_EVENT_MEDIA_CONNECTED: + app_print("Connected to Access Point\n"); + app_ip_interface_up(); + break; + case WL_EVENT_MEDIA_DISCONNECTED: + app_print("Disconnected from Access Point\n"); + app_ip_interface_down(); + break; + } +} +\endcode + +\section security Security + +To use WEP a WEP key must be added before the connection is initiated. +To set the 40-bit WEP key 0xDEADBEEF00 as default key for key index 0 do + +\code + char key[5] = { 0xDE, 0xAD, 0xBE, 0xEF, 0x00 }; + struct wl_mac_addr_t bssid; + + // This means that the bssid is a broadcast bssid and the WEP key will be a default key instead of a key-mapping key. + memset(&bssid.octet, 0xff, sizeof bssid.octet); + + if ( wl_add_wep_key(0, sizeof key, key, &bssid) + != WL_SUCCESS ) { + app_error("Failed to add WEP key."); + return 0; + } +\endcode + +To use WPA/WPA2 with a Pre-shared key a passphrase must be associated +with the network before the connection is initiated. + +\code + struct wl_network_t net; + char passphrase[] = "MySecretKey"; + + memset(&net, 0, sizeof net); + memset(net.bssid.octet, 0xFF, sizeof net.bssid.octet); + strncpy(net.ssid.ssid, "My AP", strlen("My AP")); + net.ssid.len = strlen("My AP"); + net.enc_type = ENC_TYPE_AUTO; + if (wl_set_passphrase(&net, + passphrase, + strlen(passphrase), + ENC_TYPE_AUTO, + AUTH_MODE_AUTO) + != WL_SUCCESS) { + app_error("Failed to add passphrase"); + } +\endcode + +The library supports several passphrase-network associations to be +configured simultaneously. Be aware that the \a wl_connect() call +can take up to 15 seconds longer than normal when using a pre-shared +WPA/WPA2 key since the platform must calculate a temporal encryption +key from the passphrase before the connection attempt can start. + + * @{ + */ + + +/*! \brief Scan all channels. + * + * Starts a scan of all WiFi channels allowed in this regulatory + * domain. The list of allowed channels (the domain) is adapted to the + * channels announced as allowed by the first AP heard. + * + * The scan will proceed asynchronously and will raise a + * WL_EVENT_SCAN_COMPLETE event when completed. + * + * Currently, there's a limit on the scan list size that depends on the + * architecture (6 networks for the AVR32 UCR1 architecture 16 networks for + * other architectures. If more network exist, the strongest networks are + * chosen. Note that the limitation on the scan list size does not limit the + * networks which the device can connect to. See wl_connect() for more + * details. + * + * @return + * - WL_SUCCESS + * - WL_FAILURE. + */ +wl_err_t wl_scan(void); + +/*! \brief Get the list of currently known networks. + * + * Retrieves the list of currently known networks from + * the driver. To ensure that this list is up-to-date + * a wl_scan() call should be issued and this function + * should be called upon reception of the WL_EVENT_SCAN_COMPLETE + * event. This function can be called at other times + * but the list of networks retrieved then might not + * correspond to the networks actually in range. + * + * Note that a successful scan does not necessarily + * find any networks. + * + * @param network_list Output buffer. The API call returns + * a pointer to allocated memory containing the network list. + * @return + * - WL_SUCCESS + * - WL_FAILURE. + */ +wl_err_t wl_get_network_list(struct wl_network_list_t **network_list); + +#ifdef WFE_6_12 +/*! \brief Start a Ad-hoc network. + * + * Attempt to start a Ad-hoc (IBSS) network. If a Ad-hoc network + * is successfully started then a WL_EVENT_MEDIA_CONNECTED event + * will be raised once the first peer station connects to the Ad-hoc + * network (and not when the network is announced on the air). + * + * If a Ad-hoc network should be started with encryption + * enabled then \a wl_set_passphrase() should be called before + * \a wl_start_adhoc_net() to configure the security parameters. + * The Ad-hoc network is started with the security parameters + * (if any) that was configured for the specified \a ssid. + * + * @param ssid The SSID of the new network. If there's a network + * already present with this SSID this call will fail. + * @param channel The channel to use. Valid channels are 1-14 + * @param auth_mode The authentication mode to use. Supported + * authentication modes for Ad-hoc networks are + * AUTH_MODE_OPEN_SYSTEM and AUTH_MODE_SHARED_KEY. + * Passing other modes will cause a WL_INVALID_ARGS return. + * If AUTH_MODE_SHARED_KEY is used then a valid WEP + * key must be set with a call to \a wl_add_wep_key() + * and the default WEP key index must be set with a + * call to \a wl_set_default_wep_key(). + * @return + * - WL_SUCCESS on success. + * - WL_INVALID_ARGS if the ssid is malformed, if + * the channel not valid or if the authentication mode + * is invalid. + * - WL_RETRY if the driver is busy resolving a conflicting + * operation. The operation should be retried after a wait + * (at least one call to wl_poll() for polled implementations). + * - WL_BUSY if the driver is already connected or if a network + * with the same SSID is already known. + * + */ +wl_err_t wl_start_adhoc_net(struct wl_ssid_t ssid, + uint8_t channel, + enum wl_auth_mode auth_mode); +#endif +/*! \brief Connect to a SSID. + * + * Attempt to connect to a given SSID. If the driver is already + * connected to an AP with a different SSID then this call will + * return WL_BUSY and wl_disconnect() should be called before + * trying again. + * + * The connection process will proceed asynchronously and will raise a + * WL_EVENT_MEDIA_CONNECTED event when completed, or a WL_EVENT_CONN_FAILURE + * when failed. After a WL_EVENT_MEDIA_CONNECTED event has been raised + * a WL_EVENT_MEDIA_DISCONNECT event will be raised if the connection is + * terminated. Note that this can be caused by external factors and can + * happen at any time. + * + * If wl_connect() is invoked with a network that is not shown in the + * scan list, the device will probe for that specific network and connect + * to it, if found. This is also the method to use in order to connect to + * "hidden" networks (AP's that doesn't broadcast its SSID). + * + * @param ssid Pointer to the SSID string. + * Freed by caller. + * @param ssid_len Length of the SSID string in octets. Max value is 32. + * @return + * - WL_SUCCESS + * - WL_FAILURE if the network could not be found + * - WL_BUSY if the driver is already connected + * - WL_RETRY if the driver is busy resolving a conflicting operation. + * The operation should be retried after a wait (at least one call to wl_poll() + * for polled implementations). + */ +wl_err_t wl_connect(char* ssid, size_t ssid_len); + +/*! \brief Connect to a BSSID + * + * Attempt to connect to a given BSSID. If the driver is already + * connected to an AP with a different BSSID then this call will + * return WL_BUSY and wl_disconnect() should be called before + * trying again. + * + * The connection process will proceed asynchronously and will raise a + * WL_EVENT_MEDIA_CONNECTED event when completed, or a WL_EVENT_CONN_FAILURE + * when failed. After a WL_EVENT_MEDIA_CONNECTED event has been raised + * a WL_EVENT_MEDIA_DISCONNECT event will be raised if the connection is + * terminated. Note that this can be caused by external factors and can + * happen at any time. + * + * If wl_connect_bssid() is invoked with a network that is not shown in the + * scan list, the device will probe for that specific network and connect + * to it, if found. + * + * @param bssid Pointer to the BSSID. Freed by caller. + * @return + * - WL_SUCCESS + * - WL_FAILURE if the network could not be found + * - WL_BUSY if the driver is already connected + * - WL_RETRY if the driver is busy resolving a conflicting operation. + * The operation should be retried after a wait (at least one call to wl_poll() + * for polled implementations). + */ +wl_err_t wl_connect_bssid(struct wl_mac_addr_t bssid); + +/*! \brief Disconnect from the network + * + * Disconnect from any currently associated network. + * + * The disconnection process will proceed asynchronously and will raise a + * WL_EVENT_MEDIA_DISCONNECTED event when completed. + * @return + * - WL_SUCCESS if the disconnect process was started + * - WL_FAILURE if the driver was not connected + * - WL_RETRY if the driver is in the process of connecting. + * In this case the disconnect must be retried after + * the connection attempt has completed (resulted in a + * WL_EVENT_MEDIA_CONNECTED or a WL_EVENT_CONN_FAILURE event). + */ +wl_err_t wl_disconnect(void); + +/*! + * @brief Add a WEP encryption key to the device. + * + * Configure a key into the device. The key type (WEP-40, WEP-104) + * is determined by the size of the key (5 bytes for WEP-40, 13 bytes for WEP-104). + * + * @param key_idx The key index to set. Valid values are 0-3. + * @param key_len Length of key in bytes. Valid values are 5 and 13. + * @param key Key input buffer. + * @param bssid BSSID that the key applies to. If this is + * the broadcast BSSID then the key is configured + * as one of the default keys (not _the_ default key, + * this must be set by calling set_default_wep_key() + * after adding it). If the BSSID is a valid unicast + * bssid then the key is configured as a key-mapping + * key ( See 802.11-2007 8.2.1.3 ). + * @return + * - WL_SUCCESS on success. + * - WL_INVALID_LENGTH if the key length is bad. + * - WL_FAILURE on failure + */ +wl_err_t wl_add_wep_key(uint8_t key_idx, + size_t key_len, + const void *key, + struct wl_mac_addr_t *bssid); + +/*! @brief Set the default WEP key index. + * + * Select which WEP key to use for transmitted packets. + * For this to work correctly you must have added a WEP + * key with \a wl_add_wep_key() as a default key, using the + * same index as the one set in this call. + * @param key_idx Index of the key to make the default key. + * Valid values are 0-3. + * @return WL_SUCCESS or WL_FAILURE. + */ +wl_err_t wl_set_default_wep_key(uint8_t key_idx); + +/*! \brief Delete a WEP key. + * + * Deletes a WEP key from the driver. + * + * @param key_idx The index of the key to delete. Valid values are 0-3. + * @param bssid BSSID that the key applies to. If this is + * the broadcast BSSID then the key deleted is a default key. + * If the BSSID is a valid unicast bssid then the deleted + * key is a key-mapping key. + * @return WL_SUCCESS or WL_FAILURE + */ +wl_err_t wl_delete_wep_key(uint8_t key_idx, struct wl_mac_addr_t *bssid); + +/*! @brief Set a WPA/WPA2 passphase + * + * Associate a WPA/WPA2/RSN passphrase with a network. + * The number of passphrases that can be stored can + * vary but is always at least one. Passphrases can + * be added until \a wl_add_wpa_passphrase() returns + * WL_RESOURCES. + * + * @param net Network with which to associate the passphrase. + * @param passphrase Passphrase. Valid characters in a passphrase + * must lie between ASCII 32-126 (decimal). + * @param len Length of passphrase. Valid lengths are 8-63. + * @param enc_type Encryption type. If this is set to ENC_TYPE_AUTO + * then the most secure supported mode will be automatically + * selected. Normally you only need to pass something else here + * if you need to enforce picking a certain encryption mode when + * the network supports several modes and you don't want to use + * the best one. + * @param auth_mode Authentication mode. If this is set to AUTH_MODE_AUTO + * then the most secure mode will be automatically selected. + * Normally you only need to pass something else here if the network + * announces support for both WPA and WPA2/RSN and the passphrases are + * different. + * @return + * - WL_SUCCESS + * - WL_INVALID_ARGS if the passphrase length is invalid. + * - WL_RESOURCES if no more passphrases can be added. + */ +wl_err_t wl_set_passphrase(const struct wl_network_t *net, + const char *passphrase, + const size_t len, + const enum wl_enc_type enc_type, + const enum wl_auth_mode auth_mode); + +/*! @brief Remove a WPA/WPA2 passphase + * + * Remove a WPA/WPA2/RSN passphrase associated with a network. + * + * @param net Network with which to associate the passphrase. + * If net is NULL then all stored passphrases will be + * cleared. + * @return + * - WL_SUCCESS + * - WL_FAILURE if no passphrase was associated with the net. + */ +wl_err_t wl_clear_passphrase(struct wl_network_t *net); + + +/*! \brief Enable legacy power save mode + * + * Enable legacy power save mode. In legacy power save mode, the device + * will power down when idle. When connected, the device will wake up to + * receive beacon frames and any buffered data from the AP. The response + * time when legacy power save is enabled might therefore be as long as the + * AP beacon interval (mostly 100 ms). However, the throughput should not + * be affected. + * + * @return WL_SUCCESS or WL_FAILURE. + */ +wl_err_t wl_enable_ps(void); + +/*! \brief Disable legacy power save mode + * + * @return WL_SUCCESS or WL_FAILURE. + */ +wl_err_t wl_disable_ps(void); + +/*! \brief Configure power save parameters. + * + * @param use_ps_poll Use PS-Poll frames to retrieve buffered data. Any changes + * to this parameter will take effect upon next connect + * or when power save is enabled through wl_enable_ps(). + * Note: To retrieve one buffered packet, the ps poll scheme + * needs one ps poll packet to the AP instead of two null + * packets in the power management bit scheme. Ps poll avoids + * the overhead of traffic monitoring time in active mode as + * well. But since each ps poll request can make the AP + * release only one buffered packet, it is not the optimal + * scheme for applications with heavy downlink traffic. + * @param ps_traffic_timeout Timeout in [ms] to wait for more buffered data + * from AP. This setting has no effect if + * use_ps_poll is 1. Any changes to this parameter + * will take effect immediately. + * @param ps_delay Power save will de delayed ps_delay [ms] after connecting to + * an AP. + * @param rx_all_dtim If set to 1, then STA will wake up to listen to every + * beacon containing DTIM (delivery traffic indication messages) when + * connected. The actual DTIM interval is configured in the AP. + * If the DTIM interval, as configured in the AP, is larger than + * \a listen_interval, the STA will wakeup according to the + * \a listen_interval parameter. + * @param listen_interval The Listen Interval field is used to indicate to the + * AP how often a STA in power save mode wakes to listen + * to beacon frames. The value of this parameter is expressed in units + * of Beacon Interval. An AP may use the Listen Interval information in + * determining the lifetime of frames that it buffers for a STA. + * Any changes to this parameter will take effect upon next association. + * + * @return WL_SUCCESS or WL_FAILURE. + */ +wl_err_t wl_conf_ps(uint8_t use_ps_poll, + uint32_t ps_traffic_timeout, + uint32_t ps_delay, + uint8_t rx_all_dtim, + uint16_t listen_interval); + +/*! \brief Get the interface MAC address. + * + * Return the 802.3 MAC address of the network interface. + * + * @param buf Output buffer. It must be at least WL_MAC_ADDR_LENGTH + * bytes long and only the first WL_MAC_ADDR_LENGTH bytes + * will contain valid data. + * @return + * - WL_FAILURE if the interface is not up. + * - WL_SUCCESS + */ +wl_err_t wl_get_mac_addr(uint8_t* buf); + +/*! \brief Return the associated network. + * + * Return the description of the currently associated + * network, if any. + * + * @return The network description, or NULL of the driver + * is unconnected. + */ +struct wl_network_t* wl_get_current_network(void); +/*! @} */ + +/** \defgroup wl_data Data Transfer + * + * \brief Packet processing interface. + * + * Note that the examples in this group assumes that the transport library + * functions in the \a wl_transport group are being used. For more information, + * See the documentation for those functions in the \a wl_transport group. + +For the IP stack integration you need to intercept received packets so +they can be sent up the stack and to transmit packets coming down the +stack. + +By default the wl_api library discards all data packets. To receive +them the application must register a rx interrupt service routine (isr) +using the \a wl_register_rx_isr() function. + +\code +static void rx_isr(void* ctx) { + rx_pending = TRUE; +} +\endcode + +Since the rx_isr() function is only called in interrupt context, it is not +safe to perform the actual read directly from rx_isr(). If an OS is used, +the normal case is to signal a receiver thread to invoke the ip stack +read function to read the pending data. In a system that runs without an OS +(as in the example), a flag is set to indicate that wl_rx() can be invoked +from the ip stack read function next time the ip stack is polled. +The beginning of a ip stack read function can look like this + +\code +static void ip_stack_rx_pkt() { + char *pkt = malloc(MAX_PKT_SIZE); + uint16_t len = MAX_PKT_SIZE; + + if (p == NULL) { + app_error("Out of memory."); + return; + } + wl_rx(pkt, &len); + if (0 == len) { + app_error("Packet reception failed."); + free(pkt); + return + } +} +\endcode + +Since the ip_stack_rx_pkt() function should only be called when there is +actually a packet ready to read you do not have to check the return value +from \a wl_rx() since it only returns failure if there is no packet ready to +read. + +A packet arriving from the WiFi interface can be either a data +packet or a message from the WiFi hardware to the WiFi driver +(which is implemented by the wl_api library). This means that +wl_api must process every packet to decide if it is an internal +message or a data frame that +should be passed up to the application. Data packets are +prefixed with an extra header containing some administrative +information, and may be followed by padding bytes and so +wl_api also needs to strip the extra header and any padding +before the packet can be safely ingested by the IP stack. +All this happens in the function \a wl_process_rx() which \b must +be called on every packet received by a call to \a wl_rx(). + +Continuing the ip_stack_rx_pkt() example + +\code + { + char* stripped_pkt; + size_t stripped_pkt_len; + uint16_t vlan; + int status; + + status = wl_process_rx(pkt, + len, + &stripped_pkt, + &stripped_pkt_len, + &vlan); + if (WL_ABSORBED == status) { + // This is normal. The packet was a + // wl_api-internal message. + free(pkt); + return; + } + app_ip_stack_input(stripped_pkt, + stripped_pkt_len, + vlan); + free(pkt); + } +} +\endcode + +If \a wl_process_rx() decides that the packet was a command it processes +it and returns \a WL_ABSORBED to signal that the packet should +not be used by anyone else. Otherwise stripped_pkt is +pointing to the beginning of a 802.3 Ethernet frame of length +stripped_pkt_len. If the IP stack supports VLAN and QoS +the extra VLAN tag should be passed to the IP stack +together with the packet. For IP stacks without this support the VLAN tag +contents can safely be ignored, but it must still be filled in by \a wl_process_tx(). + +To register the receive isr + +\code + wl_register_rx_isr(rx_isr, NULL); +\endcode + +Transmitting data packets happens in a similar way but does not +require a callback/isr since the application/IP stack knows when it has +packets to send. + +\code +int ip_stack_tx_pkt(char *pkt, size_t len, uint16_t vlan_tag) { + int status; + char wlan_hdr[WL_HEADER_SIZE]; + // The packet must have an Ethernet header + if (len < ETHERNET_HEADER_SIZE) { + app_error("Invalid packet length"); + return 0; + } + hdr_len = sizeof wlan_hdr; + status = wl_process_tx(pkt, + ETHERNET_HEADER_SIZE, + len, + wlan_hdr, + vlan_tag, + NULL); + if ( WL_SUCCESS != status ) { + app_error("Packet processing failed"); + return 0; + } + // Transmit the header first + if (wl_tx(wlan_hdr, hdr_len) != WL_SUCCESS) { + app_error("Header transmission failed"); + return 0; + } + // Then transmit the data packet + if (wl_tx(pkt, len) != WL_SUCCESS) { + app_error("Packet transmission failed"); + return 0; + } +} +\endcode + +The final piece of the puzzle in the IP stack integration is +the MAC address of the WiFi interface + +\code + char mac_addr[WL_MAC_ADDR_LENGTH]; + + wl_get_mac_addr(mac_addr); + ip_stack_set_mac_address(mac_addr); +\endcode + + * @{ + */ + +/*! Size of the wl_api packet header */ +#ifdef WFE_6_12 +#define WL_HEADER_SIZE 16 +#else +#define WL_HEADER_SIZE 14 +#endif + +/*! Maximum packet size (including wl_api headers and paddings) + * + * Maximum packet size is obtained with the following data: + * + * 1500 bytes of Ethernet payload (MTU) + 14 bytes of Ethernet header + + * WL_HEADER_SIZE of wl header. This data is then size-aligned to 16. + * + */ +#define WL_MAX_PKT_LEN 1536 + + +/*! + * \brief Process rx packet. + * + * Processes a raw rx packet by unencrypting it (if necessary) + * and stripping headers so as to output a 802.3 frame. + * + * wl_process_rx() will strip bytes both from the head and from the tail. + * + * Upon return from wl_process_rx(), the pointer at stripped_pkt will + * point to the start of the Ethernet header, hence adjusting the offset + * by WL_HEADER_LEN bytes. Any padding (added by the wifi device) will + * be removed from the tail of the packet, hence making len smaller. + * + * The wl_api library of the device will not perform any Ethernet padding + * removal. The padding removal performed by wl_process_rx() is only for + * the padding used in the protocol shared by the host and the device. + * This padding is mainly there to ensure that the host does not have to + * deal with rx of odd-sized data buffers (which some DMA's have problems + * to handle). + * + * @param pkt Input buffer (raw packet) + * @param pkt_len Length of the input buffer (in bytes) + * @param stripped_pkt Pointer to the packet with the + * transport header stripped. + * @param stripped_pkt_len Length of the stripped packet. + * @param vlanid_prio VLAN ID and 802.1p priority value + * using following format: + * <PRE> + * 1 + * 5|432109876543|210 + * -+------------+--- + * 0| VLANID |PRI + * </PRE> + * + * @returns + * - WL_FAILURE + * - WL_ABSORBED if the packet was an internal driver command + * and not a proper data packet. The packet should + * be freed and the stripped_pkt will not point + * to a valid packet. + * - WL_SUCCESS + */ +wl_err_t wl_process_rx(char *pkt, size_t pkt_len, char **stripped_pkt, + size_t *stripped_pkt_len, uint16_t *vlanid_prio); + +/*! \brief Process tx packet. + * + * Prepare tx packet for transmission. + * + * This function is typically used only by the TCP/IP stack driver. + * + * Takes a Ethernet II frame header and generates a message passing header + * for it. + * + * The caller should ensure that any frames injected into wl_process_tx() + * are proper Ethernet frames. The wl_api library or the device will not + * perform any Ethernet padding if the frames are too short. + * + * The Ethernet header is assumed to have the following layout : + * <dst addr:6><src addr:6><type:2>... + * The rest of the Ethernet header buffer (if any) is ignored. + * + * A note on the TX packet representation : + * If your TX packets are simple contiguous buffers you can ignore + * the rest of this note and pass NULL in parameter \a pkt_handle. + * A TX packet may have a more complex structure than a RX packet + * (which must be a contiguous, flat buffer). The IP stack may + * for example represent a packet as a linked list of buffers where + * the Ethernet header, the IP header and other headers, are represented + * by separate buffers. In some cases, such as when the driver is + * running in SoftAP mode, a TX packet has to be copied and queued + * internally for later processing and to support this when packets + * have a complicated structure a special data access function can + * be registered. See \a wl_register_pkt_read_cb() for details. + * If you use \a wl_process_tx() with non-simple packets you + * should pass a handle to the packet in parameter \a pkt_handle + * and register an access function with \a wl_register_pkt_read_cb(). + * + * @param eth_hdr Input buffer (Ethernet header) + * @param eth_hdr_len Input buffer length (must be >= 14) + * This is usually the same as pkt_len unless e.g linked list or buffers + * chained in other ways are being used. + * @param pkt_len Length of the complete data packet (in bytes) + * @param hdr Pointer to the header buffer (must be + * allocated by the caller). The length of the buffer + * must be at least WL_HEADER_SIZE bytes. + * @param vlanid_prio VLAN ID and 802.1p priority value + * using following format: + * <PRE> + * 1 + * 5|432109876543|210 + * -+------------+--- + * 0| VLANID |PRI + * </PRE> + * Ignored for legacy association (no WMM) + * @param pkt_handle A handle to the complete packet. If this parameter + * is NULL then \a eth_hdr is expected to point to the whole packet + * in a single contiguous buffer (the default). If a different packet + * representation is used this parameter should be a handle to the + * complete packet and will be passed unmodified to the data + * access function that was registered with \a wl_register_pkt_read_cb(). + * + * @returns + * - WL_FAILURE + * - WL_RESOURCES if packet can not be processed at the moment. + * The caller must either drop the packet or try + * retransmit it later. + * - WL_AVAIL if network not available + * - WL_SUCCESS if packet is ready for transmission through wl_tx(). + */ +wl_err_t wl_process_tx(char *eth_hdr, + size_t eth_hdr_len, + size_t pkt_len, + char *hdr, + uint16_t vlanid_prio, + void *pkt_handle); + + +/*! \brief Get current TX and RX rate used for data transfer + * + * During transmission and reception of data, the actual rate used will depend + * on the signal quality. This function can be used to get the actual rate used + * for the last tx and rx data. + * + * @param tx will hold the tx rate upon successful return. + * @param rx will hold the rx rate upon successful return. + * + * @return + * - WL_SUCCESS on success + * - WL_FAILURE on failure. + */ +wl_err_t wl_get_rate(wl_rate_t *tx, wl_rate_t *rx); + + +/*! @} */ /* End wl_data group */ + + +/** \defgroup wl_transport Transport interface + * + * \brief Low level transport interface. + * + * These functions access the low level transport driver which makes + * the application independent of the actual physical transport + * layer (usually SDIO or SPI). + * + +For applications running on an real time kernel or without an +operating system, the provided transport library will fit right into the +application design. However, when running on a more complex operating system +(such as windows or linux) which has its own transport primitivies and +components (and probably its own IP stack) it might be preferred to design a +custom transport library for that specific environment. Therefore, these +transport interface functions are fully optional. + + + * @{ + */ + +#define WL_RX_MIN_PKT_LEN 32 + + +/*! \brief WiFi event callback. + * + * This function is invoked in interrupt context when there is new data + * available from the mac. This function is supplied by the user + * of the API. + * + * This function is typically used only by the TCP/IP stack driver. + * + * @param ctx A context handle. This handle is passed + * untouched to the callback and has the same value + * as the context registered with the callback in + * wl_register_event_cb(). + */ +typedef void (*wl_rx_isr_t) (void* ctx); + + +/*! \brief Firmware access function. + * + * Reads the WiFi firmware image. This function is supplied by + * the user of this API since storage for the firmware image is + * managed by the application. + * + * This function should read the specified number of bytes of the + * firmware image starting at the specified \a offset. The number of + * bytes to read is given in \a len. Upon return, \a buf should point + * to a buffer which holds the read data and the number of valid bytes + * in \a buf is returned from the call. + * + * This function will be called repeatedly until the complete firmware + * image has been read. + * + * This function may be called again at any time while the driver is + * running to download further pieces of the WiFi firmware image as + * needed by the runtime requirements. This will normally only happen + * when the driver switches between networks of different kinds such + * as from WEP to WPA, or from ESS to IBSS for example. + * + * For convenience, any time a firmware chunk has been completely + * downloaded this function will be called once with the \a buf + * parameter set to NULL to indicate that no more data is needed right + * now and that any dynamically allocated buffers which holds firmware + * data can be freed without much performance impact. + * + * @param ctx Opaque context pointer as provided to \a wl_init() that will be + * passed back to the callback. + * @param buf Should be assigned the address of the buffer holding the read + * data upon return. This parameter can be NULL which indicates + * that there are no further immediately pending accesses. + * @param offset Offset in bytes from the start of the firmware image. + * Data should be copied into buf starting at \a offset. + * @param len The number of bytes to copy into \a buf. + * @return The number of bytes copied into buf. This may be smaller than + * \len if the implementation of the function so requires. + */ +typedef size_t (wl_fw_read_cb_t)(void *ctx, + const uint8_t **buf, + size_t offset, + size_t len); + + +/*! \brief Initialize the transport interface and download the WiFi firmware + * image to the device. + * + * This operation will proceed synchronously until the firmware is completely + * downloaded. wl_init() should be called after this function has returned to + * perform device initialization. + * + * @param fw_read_cb callback function to invoke during firmware download. + * @param ctx Opaque context pointer that will be passed to the callbacks + * when they are invoked. This parameter is never + * accessed by the API. + * @param mode will hold the host attention mode used by the transport layer. + * This parameter can be passed directly to \a wl_init(). + * + * @return + * + * - WL_CARD_FAILURE if the wl hardware device is not available + * - WL_FIRMWARE_INVALID if the firmware obtained through fw_read_cb is + * invalid. + * - WL_OOM if the necessary memory could not be allocated. + */ +wl_err_t wl_transport_init(wl_fw_read_cb_t *fw_read_cb, + void *ctx, + enum wl_host_attention_mode *mode); + +/*! \brief WiFi driver forward progress function + * + * This function must be called in polled environments to + * ensure forward progress. The call can be made as often as possible from + * the main application loop. However, the call will not have any effect unless + * there is an interrupt pending from the hardware. + * + * In interrupt mode, wl_poll() must be called if no interrupt + * handler is registered through wl_register_rx_isr(). When an interrupt + * handler is registered, it is no longer necessary to invoke wl_poll(). + * + * Note that this function should not be invoked from interrupt context. + * + */ +void wl_poll(void); + + +/*! \brief Register RX callback + * + * Register function to be called by the low level transport driver + * when a new packet is available or when there is a state change in the + * data path. When invoked, any pending data can be fetched by calling wl_rx(). + * + * This function is typically used only by the TCP/IP stack driver. + * Note, the registered function is called in interrupt context. + * + * @param isr rx interrup handler. + * @param ctx Opaque context pointer that is passed unmodified to the + * rx_cb callback when it is invoked. + * + * @return WL_SUCCESS + */ +wl_err_t wl_register_rx_isr(wl_rx_isr_t isr, void* ctx); + + +/*! \brief Read pending packet + * + * Read a pending packet from the low level transport driver. + * The read packet must be passed to the wl_process_rx() function + * for proper driver operation. + * + * @param buf Buffer to read the packet into. This buffer must be + * at least WL_MAX_PKT_LEN bytes long. + * @param len Length of buf in bytes. Contains the length of the + * read packet in bytes on output. + * @return + * - WL_FAILURE if no RX packet is pending. + * - WL_SUCCESS + */ +wl_err_t wl_rx(uint8_t* buf, uint16_t* len); + +/*! \brief Send processed tx packet + * + * Send a packet to the low level transport driver. + * This packet has to have been successfully processed by the + * wl_process_tx() function. + * + * @param buf Buffer to send. + * @param len Length of buf in bytes. + * + * @return + * - WL_FAILURE if the interface is not ready to send. + * - WL_SUCCESS if the packet was successfully transmitted. + */ +wl_err_t wl_tx(const uint8_t* buf, uint16_t len); + + +/*! \brief Configure data alignment + * + * This function can be used if the host SDIO/SPI controller has certain + * requirements on the data transfer sizes that can be used on the SDIO/SPI bus. + * + * If the txsize parameter is non-zero, additional padding data should be added + * when performing the low level transfer of data buffer of sizes that are not + * a multiple of the size_align parameter. See \ref wl_sdio and \ref wl_spi for + * more information. + * + * @param txsize will configure the size alignment for tx data. + * + */ +void wl_conf_alignment(uint8_t txsize); + + +/*! @} */ /* End wl_transport group */ + + +/** \defgroup wl_custom Custom environment support + * + * \brief Support for custom environments + * + * These functions should only be used in cases where the transport library is + * not used at all. This usually applies to operating systems and environments + * where there already exists a transport layer framework, e.g. linux or + * windows. + * + * + +Note that the \a wl_poll() function is part of the transport library. Therefore, +it should not be used in custom environments. Therefore, it is necessary to +implement a custom polling or interrupt based scheme to ensure that any +incoming packets are processed by the core. + + * @{ + */ + + /*! \brief Wakeup callback function. + * + * Invoked when the WiFi device should wake up from power save mode. + * This function should send the proper commands to the device. + * + * Note that this type should only be used in custom environments, where + * the transport library is not used. + * + * @param ctx Opaque context pointer as provided to \a wl_register_wakeup_cb() + * that will be passed back to the callback. + * @param wakeup indicates whether wakeup should be set or cleared in the + * device. + */ +typedef void (wl_wakeup_cb_t)(void* ctx, uint8_t wakeup); + +/*! \brief Register wakeup callback function. + * + * Register a function that will be invoked when the WiFi device should wake + * up from power save mode. + * + * Note that this function should only be used in custom environments, where + * the transport library is not used. + * + * @param wakeup_cb Will be invoked when the device should wakeup from sleep + * mode. + * @param ctx Opaque context pointer that will be passed back to the callback. + */ +void wl_register_wakeup_cb(wl_wakeup_cb_t *wakeup_cb, void *ctx); + + +/*! \brief Management tx callback function. + * + * Invoked when the a management message should be transmitted to the + * WiFi device. This function should ensure that the message is passed through + * to the device and should never fail. + * + * Note that this type should only be used in custom environments, where + * the transport library is not used. + * + * @param ctx Opaque context pointer as provided to \a wl_register_mgmt_tx_cb() + * that will be passed back to the callback. + * @param buf Points to the buffer which holds the management data, + * @param len Size of the buffer. + */ +typedef void (wl_mgmt_tx_cb_t)(void *ctx, const uint8_t *buf, uint16_t len); + + +/*! \brief Register management tx callback function + * + * Register a function that will be invoked when a management message should + * be transmitted to the device. + * + * Note that this function should only be used in custom environments, where + * the transport library is not used. + * + * IMPORTANT : In a custom environment without a transport library \a + * wl_register_mgmt_tx_cb() \b must have been called + * before \a wl_fw_download() is called since \a + * wl_fw_download() depends on the \a mgmt_tx_cb() to send + * the firmware data to the WiFi chip. + * + * @param mgmt_tx_cb The callback function to invoke. + * @param ctx Opaque context pointer that will be passed back to the callback. + */ +void wl_register_mgmt_tx_cb(wl_mgmt_tx_cb_t *mgmt_tx_cb, void *ctx); + + + +/*! \brief Download the WiFi firmware image to the device. + * + * This operation will proceed synchronously until the firmware is completely + * downloaded. wl_init() should be called after this function has returned to + * perform device initialization. This function depends on \a + * wl_register_mgmt_tx_cb(). See that function for details. + * + * @param ctx Opaque context pointer that will be passed to the callbacks + * when they are invoked. This parameter is never + * accessed by the API. + * @param fw_read_cb callback function to invoke during firmware download. + * + * @return + * + * - WL_CARD_FAILURE if the wl hardware device is not available + * - WL_FIRMWARE_INVALID if the firmware obtained through fw_read_cb is + * invalid. + * - WL_OOM if the necessary memory could not be allocated. + */ + wl_err_t wl_fw_download(wl_fw_read_cb_t *fw_read_cb, void *ctx); + + + +/*! @} */ /* End wl_custom group */ + + + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h new file mode 100644 index 000000000..5be5f3762 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_fw.h @@ -0,0 +1,19287 @@ +/* + * Programming interface for wl_api. + * Copyright (C) 2010 HD Wireless AB + * + * You should have received a copy of the license along with this library. + */ + +#ifndef WITHOUT_STDINT +#include <stdint.h> +#endif +const uint8_t fw_buf[154188] = { + 0x10, 0x61, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, 0x00, 0x00, 0x00, 0x10, 0x61, 0x04, 0x00, + 0x38, 0x61, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x20, 0x61, 0x04, 0x00, + 0x30, 0x61, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x30, 0x61, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x61, 0x04, 0x00, + 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xee, 0xee, + 0xee, 0xee, 0x18, 0xf0, 0x9f, 0xe5, 0x18, 0xf0, + 0x9f, 0xe5, 0x18, 0xf0, 0x9f, 0xe5, 0x18, 0xf0, + 0x9f, 0xe5, 0x00, 0x00, 0xa0, 0xe1, 0x18, 0xf0, + 0x9f, 0xe5, 0x18, 0xf0, 0x9f, 0xe5, 0x44, 0x00, + 0x00, 0x00, 0xb4, 0x08, 0x00, 0x00, 0xb4, 0x08, + 0x00, 0x00, 0xb4, 0x08, 0x00, 0x00, 0xb4, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x08, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0f, 0xe1, 0x1f, 0x00, 0xc0, 0xe3, + 0x13, 0x00, 0x80, 0xe3, 0xc0, 0x00, 0x80, 0xe3, + 0x00, 0xf0, 0x2f, 0xe1, 0x1c, 0xf0, 0x9f, 0xe5, + 0x3d, 0x02, 0x00, 0xeb, 0x5a, 0x02, 0x00, 0xeb, + 0x8d, 0x02, 0x00, 0xeb, 0x01, 0x00, 0x8f, 0xe2, + 0x10, 0xff, 0x2f, 0xe1, 0x41, 0xf0, 0xde, 0xfb, + 0x01, 0xf0, 0xdc, 0xfd, 0x3c, 0x00, 0x78, 0x00, + 0x00, 0x00, 0xfe, 0xe7, 0x00, 0x00, 0x5c, 0x00, + 0x00, 0x00, 0x78, 0x47, 0xc0, 0x46, 0x01, 0x00, + 0x00, 0xea, 0x78, 0x47, 0xc0, 0x46, 0x17, 0x00, + 0x00, 0xea, 0x8c, 0x11, 0x9f, 0xe5, 0x00, 0x20, + 0x91, 0xe5, 0x00, 0x30, 0x0f, 0xe1, 0x84, 0x11, + 0x9f, 0xe5, 0xfd, 0x20, 0xa1, 0xe8, 0x80, 0x01, + 0x9f, 0xe5, 0x80, 0x21, 0x9f, 0xe5, 0x01, 0x20, + 0x42, 0xe0, 0x0d, 0x00, 0x40, 0xe0, 0x3c, 0x00, + 0xb4, 0x00, 0x00, 0x00, 0x02, 0x00, 0x50, 0xe1, + 0x28, 0x00, 0x00, 0xaa, 0x68, 0x01, 0x9f, 0xe5, + 0x0d, 0x00, 0x50, 0xe1, 0x02, 0x00, 0x00, 0xba, + 0x04, 0x20, 0x10, 0xe4, 0x04, 0x20, 0x81, 0xe4, + 0xfa, 0xff, 0xff, 0xea, 0x58, 0x11, 0x9f, 0xe5, + 0x58, 0x01, 0x9f, 0xe5, 0x00, 0x00, 0x81, 0xe5, + 0x3c, 0x11, 0x9f, 0xe5, 0x50, 0x01, 0x9f, 0xe5, + 0x00, 0x00, 0x81, 0xe5, 0x1e, 0xff, 0x2f, 0xe1, + 0x3c, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x48, 0x11, + 0x9f, 0xe5, 0x00, 0x00, 0x91, 0xe5, 0x24, 0x11, + 0x9f, 0xe5, 0x00, 0x00, 0x81, 0xe5, 0x2c, 0x11, + 0x9f, 0xe5, 0x38, 0x01, 0x9f, 0xe5, 0x00, 0x00, + 0x81, 0xe5, 0x1e, 0xff, 0x2f, 0xe1, 0x74, 0x02, + 0x00, 0xeb, 0x10, 0x01, 0x9f, 0xe5, 0x28, 0x11, + 0x9f, 0xe5, 0x04, 0x20, 0x91, 0xe4, 0x04, 0x20, + 0x00, 0xe4, 0x04, 0x21, 0x9f, 0xe5, 0x02, 0x00, + 0x51, 0xe1, 0x3c, 0x00, 0x2c, 0x01, 0x00, 0x00, + 0xfa, 0xff, 0xff, 0x1a, 0xf0, 0x10, 0x9f, 0xe5, + 0xfd, 0x20, 0xb1, 0xe8, 0x03, 0xf0, 0x2f, 0xe1, + 0xe0, 0x10, 0x9f, 0xe5, 0x00, 0x20, 0x81, 0xe5, + 0xe8, 0x10, 0x9f, 0xe5, 0xf4, 0x20, 0x9f, 0xe5, + 0x00, 0x20, 0x81, 0xe5, 0x02, 0x10, 0x80, 0xe2, + 0x00, 0x00, 0x20, 0xe0, 0x01, 0x00, 0x40, 0xe2, + 0x11, 0xff, 0x2f, 0xe1, 0x01, 0x00, 0x8f, 0xe2, + 0x10, 0xff, 0x2f, 0xe1, 0x3c, 0x00, 0x68, 0x01, + 0x00, 0x00, 0x01, 0xf0, 0x9c, 0xf8, 0x78, 0x47, + 0x00, 0x00, 0x01, 0x00, 0x8f, 0xe2, 0x10, 0xff, + 0x2f, 0xe1, 0x01, 0xf0, 0x94, 0xf8, 0x78, 0x47, + 0x00, 0x00, 0x03, 0x00, 0x2d, 0xe9, 0x00, 0x10, + 0x0f, 0xe1, 0x00, 0x10, 0x80, 0xe5, 0xb8, 0x10, + 0x9f, 0xe5, 0x04, 0x10, 0x80, 0xe5, 0x00, 0x10, + 0xa0, 0xe1, 0x10, 0x00, 0x80, 0xe2, 0xfc, 0x1f, + 0xa0, 0xe8, 0x00, 0x20, 0xa0, 0xe1, 0x3c, 0x00, + 0xa4, 0x01, 0x00, 0x00, 0x01, 0x30, 0xa0, 0xe1, + 0x03, 0x00, 0xbd, 0xe8, 0x08, 0x00, 0x83, 0xe5, + 0x0c, 0x10, 0x83, 0xe5, 0xd3, 0x00, 0xa0, 0xe3, + 0x00, 0xf0, 0x21, 0xe1, 0x00, 0x60, 0xa2, 0xe8, + 0x00, 0x10, 0x4f, 0xe1, 0x04, 0x10, 0x82, 0xe4, + 0xd2, 0x00, 0xa0, 0xe3, 0x00, 0xf0, 0x21, 0xe1, + 0x00, 0x60, 0xa2, 0xe8, 0x00, 0x10, 0x4f, 0xe1, + 0x04, 0x10, 0x82, 0xe4, 0xd1, 0x00, 0xa0, 0xe3, + 0x3c, 0x00, 0xe0, 0x01, 0x00, 0x00, 0x00, 0xf0, + 0x21, 0xe1, 0x00, 0x7f, 0xa2, 0xe8, 0x00, 0x10, + 0x4f, 0xe1, 0x04, 0x10, 0x82, 0xe4, 0xd7, 0x00, + 0xa0, 0xe3, 0x00, 0xf0, 0x21, 0xe1, 0x00, 0x60, + 0xa2, 0xe8, 0x00, 0x10, 0x4f, 0xe1, 0x04, 0x10, + 0x82, 0xe4, 0xdb, 0x00, 0xa0, 0xe3, 0x00, 0xf0, + 0x21, 0xe1, 0x00, 0x60, 0xa2, 0xe8, 0x00, 0x10, + 0x4f, 0xe1, 0x00, 0x10, 0x82, 0xe5, 0x00, 0x00, + 0x93, 0xe5, 0x3c, 0x00, 0x1c, 0x02, 0x00, 0x00, + 0x00, 0xf0, 0x2f, 0xe1, 0x1e, 0xff, 0x2f, 0xe1, + 0x20, 0x00, 0x00, 0x00, 0x04, 0x03, 0x00, 0x00, + 0x20, 0xee, 0x01, 0x00, 0xd8, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0xf0, 0x9f, 0xe5, + 0x10, 0x01, 0x00, 0x00, 0x08, 0x03, 0x00, 0x00, + 0xee, 0xee, 0xee, 0xee, 0x24, 0x03, 0x00, 0x00, + 0x20, 0x02, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x63, 0x1c, 0x0b, 0x4d, 0x3c, 0x00, 0x58, 0x02, + 0x00, 0x00, 0x01, 0xd1, 0x6c, 0x69, 0x10, 0xe0, + 0x00, 0xf0, 0x6c, 0xfb, 0x09, 0x48, 0xff, 0xf7, + 0x0c, 0xff, 0xec, 0x60, 0x08, 0x4a, 0x51, 0x68, + 0x50, 0x68, 0x88, 0x42, 0xfc, 0xd0, 0x02, 0x20, + 0x28, 0x70, 0x01, 0x21, 0x8a, 0x20, 0x01, 0xf0, + 0x12, 0xf8, 0x20, 0x1c, 0xb0, 0xbd, 0x30, 0x00, + 0x07, 0x00, 0x51, 0x02, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x00, 0xb0, 0xb5, 0x05, 0x1c, 0x3c, 0x00, + 0x94, 0x02, 0x00, 0x00, 0x00, 0x24, 0x00, 0xf0, + 0x50, 0xfb, 0x14, 0x48, 0xff, 0xf7, 0xf0, 0xfe, + 0x13, 0x49, 0x14, 0x48, 0xc1, 0x60, 0x01, 0x21, + 0x13, 0x4a, 0x49, 0x03, 0x91, 0x60, 0x13, 0x49, + 0xca, 0x78, 0x08, 0x23, 0x9a, 0x43, 0xca, 0x70, + 0xca, 0x78, 0x04, 0x23, 0x1a, 0x43, 0xca, 0x70, + 0x6b, 0x1c, 0x0d, 0xd0, 0x0e, 0x4b, 0x5a, 0x68, + 0x59, 0x68, 0x91, 0x42, 0xfc, 0xd0, 0xbe, 0x21, + 0x3c, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x19, 0x73, + 0x19, 0x7a, 0x11, 0x22, 0x91, 0x43, 0x19, 0x72, + 0x19, 0x7a, 0xc9, 0x07, 0xfc, 0xd4, 0x02, 0x21, + 0x01, 0x70, 0xff, 0xf7, 0xd0, 0xfe, 0x20, 0x1c, + 0xb0, 0xbd, 0x91, 0x02, 0x00, 0x00, 0xff, 0xff, + 0xff, 0x00, 0x30, 0x00, 0x07, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, + 0x08, 0x47, 0x10, 0x47, 0x18, 0x47, 0x20, 0x47, + 0x28, 0x47, 0x30, 0x47, 0x38, 0x47, 0x10, 0xb5, + 0x04, 0x1c, 0x10, 0x1c, 0x00, 0xf0, 0x23, 0xf9, + 0x03, 0xc4, 0x10, 0xbc, 0x08, 0xbc, 0x18, 0x47, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x03, 0x00, 0x00, + 0x10, 0xb4, 0x04, 0x2a, 0x0e, 0xd3, 0x03, 0x1c, + 0x0b, 0x43, 0x9b, 0x07, 0x0a, 0xd1, 0x08, 0xc8, + 0x10, 0xc9, 0xa3, 0x42, 0x02, 0xd1, 0x04, 0x3a, + 0x04, 0x2a, 0xf8, 0xd2, 0xa3, 0x42, 0x01, 0xd0, + 0x04, 0x38, 0x04, 0x39, 0x00, 0x2a, 0x02, 0xd1, + 0x00, 0x20, 0x10, 0xbc, 0x70, 0x47, 0xd3, 0x07, + 0x01, 0xd5, 0x01, 0x32, 0x05, 0xe0, 0x03, 0x78, + 0x0c, 0x78, 0x01, 0x31, 0x3c, 0x00, 0x38, 0x04, + 0x00, 0x00, 0x01, 0x30, 0xa3, 0x42, 0x07, 0xd1, + 0x03, 0x78, 0x0c, 0x78, 0x01, 0x31, 0x01, 0x30, + 0xa3, 0x42, 0x01, 0xd1, 0x02, 0x3a, 0xf1, 0xd1, + 0x18, 0x1b, 0xe9, 0xe7, 0x00, 0x00, 0x78, 0x47, + 0x00, 0x00, 0x00, 0x20, 0xa0, 0xe3, 0x04, 0x00, + 0x51, 0xe3, 0x08, 0x00, 0x00, 0x3a, 0x03, 0xc0, + 0x10, 0xe2, 0x0d, 0x00, 0x00, 0x0a, 0x04, 0xc0, + 0x6c, 0xe2, 0x02, 0x00, 0x5c, 0xe3, 0x3c, 0x00, + 0x74, 0x04, 0x00, 0x00, 0x01, 0x20, 0xc0, 0xe4, + 0x01, 0x20, 0xc0, 0xa4, 0x01, 0x20, 0xc0, 0xc4, + 0x0c, 0x10, 0x41, 0xe0, 0x06, 0x00, 0x00, 0xea, + 0x81, 0xcf, 0xb0, 0xe1, 0x01, 0x20, 0xc0, 0x24, + 0x01, 0x20, 0xc0, 0x24, 0x01, 0x20, 0xc0, 0x44, + 0x1e, 0xff, 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, + 0x00, 0x20, 0xa0, 0xe3, 0x00, 0x40, 0x2d, 0xe9, + 0x02, 0x30, 0xa0, 0xe1, 0x02, 0xc0, 0xa0, 0xe1, + 0x3c, 0x00, 0xb0, 0x04, 0x00, 0x00, 0x02, 0xe0, + 0xa0, 0xe1, 0x20, 0x10, 0x51, 0xe2, 0x0c, 0x50, + 0xa0, 0x28, 0x0c, 0x50, 0xa0, 0x28, 0x20, 0x10, + 0x51, 0x22, 0xfb, 0xff, 0xff, 0x2a, 0x01, 0x1e, + 0xb0, 0xe1, 0x0c, 0x50, 0xa0, 0x28, 0x0c, 0x00, + 0xa0, 0x48, 0x00, 0x40, 0xbd, 0xe8, 0x01, 0x11, + 0xb0, 0xe1, 0x04, 0x20, 0x80, 0x24, 0x1e, 0xff, + 0x2f, 0x01, 0x01, 0x20, 0xc0, 0x44, 0x01, 0x20, + 0xc0, 0x44, 0x3c, 0x00, 0xec, 0x04, 0x00, 0x00, + 0x40, 0x04, 0x11, 0xe3, 0x01, 0x20, 0xc0, 0x14, + 0x1e, 0xff, 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, + 0x03, 0x00, 0x52, 0xe3, 0x3e, 0x00, 0x00, 0x9a, + 0x03, 0xc0, 0x10, 0xe2, 0x08, 0x00, 0x00, 0x0a, + 0x01, 0x30, 0xd1, 0xe4, 0x02, 0x00, 0x5c, 0xe3, + 0x0c, 0x20, 0x82, 0xe0, 0x01, 0xc0, 0xd1, 0x94, + 0x01, 0x30, 0xc0, 0xe4, 0x01, 0x30, 0xd1, 0x34, + 0x04, 0x20, 0x42, 0xe2, 0x3c, 0x00, 0x28, 0x05, + 0x00, 0x00, 0x01, 0xc0, 0xc0, 0x94, 0x01, 0x30, + 0xc0, 0x34, 0x03, 0x30, 0x11, 0xe2, 0x1e, 0x00, + 0x00, 0x0a, 0x04, 0x20, 0x52, 0xe2, 0x2f, 0x00, + 0x00, 0x3a, 0x03, 0xc0, 0x31, 0xe7, 0x02, 0x00, + 0x53, 0xe3, 0x08, 0x00, 0x00, 0x0a, 0x0f, 0x00, + 0x00, 0x8a, 0x2c, 0x34, 0xa0, 0xe1, 0x04, 0xc0, + 0xb1, 0xe5, 0x04, 0x20, 0x52, 0xe2, 0x0c, 0x3c, + 0x83, 0xe1, 0x04, 0x30, 0x80, 0xe4, 0x3c, 0x00, + 0x64, 0x05, 0x00, 0x00, 0xf9, 0xff, 0xff, 0x2a, + 0x01, 0x10, 0x81, 0xe2, 0x23, 0x00, 0x00, 0xea, + 0x2c, 0x38, 0xa0, 0xe1, 0x04, 0xc0, 0xb1, 0xe5, + 0x04, 0x20, 0x52, 0xe2, 0x0c, 0x38, 0x83, 0xe1, + 0x04, 0x30, 0x80, 0xe4, 0xf9, 0xff, 0xff, 0x2a, + 0x02, 0x10, 0x81, 0xe2, 0x1b, 0x00, 0x00, 0xea, + 0x2c, 0x3c, 0xa0, 0xe1, 0x04, 0xc0, 0xb1, 0xe5, + 0x04, 0x20, 0x52, 0xe2, 0x0c, 0x34, 0x83, 0xe1, + 0x3c, 0x00, 0xa0, 0x05, 0x00, 0x00, 0x04, 0x30, + 0x80, 0xe4, 0xf9, 0xff, 0xff, 0x2a, 0x03, 0x10, + 0x81, 0xe2, 0x13, 0x00, 0x00, 0xea, 0x78, 0x47, + 0x00, 0x00, 0x10, 0x40, 0x2d, 0xe9, 0x20, 0x20, + 0x52, 0xe2, 0x05, 0x00, 0x00, 0x3a, 0x18, 0x50, + 0xb1, 0x28, 0x18, 0x50, 0xa0, 0x28, 0x18, 0x50, + 0xb1, 0x28, 0x18, 0x50, 0xa0, 0x28, 0x20, 0x20, + 0x52, 0x22, 0xf9, 0xff, 0xff, 0x2a, 0x02, 0xce, + 0xb0, 0xe1, 0x3c, 0x00, 0xdc, 0x05, 0x00, 0x00, + 0x18, 0x50, 0xb1, 0x28, 0x18, 0x50, 0xa0, 0x28, + 0x18, 0x00, 0xb1, 0x48, 0x18, 0x00, 0xa0, 0x48, + 0x10, 0x40, 0xbd, 0xe8, 0x02, 0xcf, 0xb0, 0xe1, + 0x04, 0x30, 0x91, 0x24, 0x04, 0x30, 0x80, 0x24, + 0x1e, 0xff, 0x2f, 0x01, 0x82, 0x2f, 0xb0, 0xe1, + 0x01, 0x20, 0xd1, 0x44, 0x01, 0x30, 0xd1, 0x24, + 0x01, 0xc0, 0xd1, 0x24, 0x01, 0x20, 0xc0, 0x44, + 0x01, 0x30, 0xc0, 0x24, 0x3c, 0x00, 0x18, 0x06, + 0x00, 0x00, 0x01, 0xc0, 0xc0, 0x24, 0x1e, 0xff, + 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, 0xff, 0x30, + 0x01, 0xe2, 0x02, 0x10, 0xa0, 0xe1, 0x03, 0x24, + 0x83, 0xe1, 0x02, 0x28, 0x82, 0xe1, 0x88, 0xff, + 0xff, 0xea, 0x78, 0x47, 0x00, 0x00, 0x80, 0x24, + 0x10, 0xe2, 0x00, 0x00, 0x60, 0x42, 0x41, 0x30, + 0x32, 0xe0, 0x00, 0x10, 0x61, 0x22, 0xa1, 0xc1, + 0x70, 0xe0, 0x20, 0x00, 0x00, 0x3a, 0x3c, 0x00, + 0x54, 0x06, 0x00, 0x00, 0x21, 0xc4, 0x70, 0xe0, + 0x0f, 0x00, 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, + 0xff, 0x24, 0x82, 0xe3, 0x21, 0xc2, 0x70, 0xe0, + 0x17, 0x00, 0x00, 0x3a, 0x21, 0xc4, 0x70, 0xe0, + 0x09, 0x00, 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, + 0xff, 0x28, 0x82, 0xe3, 0x21, 0xc4, 0x70, 0xe0, + 0x00, 0x04, 0xa0, 0x21, 0xff, 0x2c, 0x82, 0x23, + 0x21, 0xc2, 0x70, 0xe0, 0x0e, 0x00, 0x00, 0x3a, + 0x3c, 0x00, 0x90, 0x06, 0x00, 0x00, 0x00, 0xc0, + 0x70, 0xe2, 0x83, 0x00, 0x00, 0x2a, 0x20, 0x04, + 0xa0, 0x21, 0xa1, 0xc3, 0x70, 0xe0, 0x80, 0x13, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc3, + 0x70, 0xe0, 0x00, 0x13, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0xa1, 0xc2, 0x70, 0xe0, 0x80, 0x12, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc2, + 0x70, 0xe0, 0x00, 0x12, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x3c, 0x00, 0xcc, 0x06, 0x00, 0x00, + 0xa1, 0xc1, 0x70, 0xe0, 0x80, 0x11, 0x41, 0x20, + 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc1, 0x70, 0xe0, + 0x00, 0x11, 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, + 0xa1, 0xc0, 0x70, 0xe0, 0x80, 0x10, 0x41, 0x20, + 0x02, 0x20, 0xa2, 0xe0, 0x01, 0xc0, 0x70, 0xe0, + 0x00, 0x10, 0x41, 0x20, 0x02, 0x20, 0xb2, 0xe0, + 0xe5, 0xff, 0xff, 0x2a, 0xc3, 0x0f, 0x32, 0xe0, + 0xa3, 0x0f, 0x80, 0xe0, 0x3c, 0x00, 0x08, 0x07, + 0x00, 0x00, 0x00, 0x10, 0x61, 0x22, 0x1e, 0xff, + 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, 0x00, 0x20, + 0xa0, 0xe3, 0xa1, 0xc1, 0x70, 0xe0, 0x20, 0x00, + 0x00, 0x3a, 0x21, 0xc4, 0x70, 0xe0, 0x0f, 0x00, + 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, 0xff, 0x24, + 0x82, 0xe3, 0x21, 0xc2, 0x70, 0xe0, 0x17, 0x00, + 0x00, 0x3a, 0x21, 0xc4, 0x70, 0xe0, 0x09, 0x00, + 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, 0x3c, 0x00, + 0x44, 0x07, 0x00, 0x00, 0xff, 0x28, 0x82, 0xe3, + 0x21, 0xc4, 0x70, 0xe0, 0x00, 0x04, 0xa0, 0x21, + 0xff, 0x2c, 0x82, 0x23, 0x21, 0xc2, 0x70, 0xe0, + 0x0e, 0x00, 0x00, 0x3a, 0x00, 0xc0, 0x70, 0xe2, + 0x50, 0x00, 0x00, 0x2a, 0x20, 0x04, 0xa0, 0x21, + 0xa1, 0xc3, 0x70, 0xe0, 0x80, 0x13, 0x41, 0x20, + 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc3, 0x70, 0xe0, + 0x00, 0x13, 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, + 0x3c, 0x00, 0x80, 0x07, 0x00, 0x00, 0xa1, 0xc2, + 0x70, 0xe0, 0x80, 0x12, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x21, 0xc2, 0x70, 0xe0, 0x00, 0x12, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0xa1, 0xc1, + 0x70, 0xe0, 0x80, 0x11, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x21, 0xc1, 0x70, 0xe0, 0x00, 0x11, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0xa1, 0xc0, + 0x70, 0xe0, 0x80, 0x10, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x3c, 0x00, 0xbc, 0x07, 0x00, 0x00, + 0x01, 0xc0, 0x70, 0xe0, 0x00, 0x10, 0x41, 0x20, + 0x02, 0x20, 0xb2, 0xe0, 0xe5, 0xff, 0xff, 0x2a, + 0x02, 0x00, 0xa0, 0xe1, 0x1e, 0xff, 0x2f, 0xe1, + 0x78, 0x47, 0x00, 0x00, 0x0a, 0x10, 0x40, 0xe2, + 0x20, 0x01, 0x40, 0xe0, 0x20, 0x02, 0x80, 0xe0, + 0x20, 0x04, 0x80, 0xe0, 0x20, 0x08, 0x80, 0xe0, + 0xa0, 0x01, 0xa0, 0xe1, 0x00, 0x21, 0x80, 0xe0, + 0x82, 0x10, 0x51, 0xe0, 0x3c, 0x00, 0xf8, 0x07, + 0x00, 0x00, 0x01, 0x00, 0x80, 0x52, 0x0a, 0x10, + 0x81, 0x42, 0x1e, 0xff, 0x2f, 0xe1, 0x30, 0xb4, + 0x44, 0x1c, 0x81, 0x07, 0x08, 0xd0, 0x01, 0x78, + 0x01, 0x30, 0x00, 0x29, 0x02, 0xd1, 0x00, 0x1b, + 0x30, 0xbc, 0x70, 0x47, 0x81, 0x07, 0xf6, 0xd1, + 0x0b, 0x4a, 0xd5, 0x01, 0x02, 0xc8, 0x8b, 0x1a, + 0x8b, 0x43, 0x2b, 0x40, 0xfa, 0xd0, 0x00, 0x1b, + 0x0a, 0x06, 0x01, 0xd1, 0x03, 0x38, 0x3c, 0x00, + 0x34, 0x08, 0x00, 0x00, 0xef, 0xe7, 0x0a, 0x04, + 0x12, 0x0e, 0x01, 0xd1, 0x02, 0x38, 0xea, 0xe7, + 0x09, 0x02, 0x09, 0x0e, 0xe7, 0xd1, 0x01, 0x38, + 0xe5, 0xe7, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, + 0xf0, 0xb4, 0x03, 0x1c, 0x04, 0x1c, 0x0c, 0x43, + 0xa4, 0x07, 0x0c, 0xd1, 0x10, 0x4d, 0xef, 0x01, + 0x02, 0xe0, 0x04, 0x31, 0x04, 0x3a, 0x10, 0xc3, + 0x04, 0x2a, 0x04, 0xd3, 0x0c, 0x68, 0x66, 0x1b, + 0x3c, 0x00, 0x70, 0x08, 0x00, 0x00, 0xa6, 0x43, + 0x3e, 0x40, 0xf5, 0xd0, 0x00, 0x2a, 0x07, 0xd0, + 0x0c, 0x78, 0x01, 0x31, 0x1c, 0x70, 0x01, 0x33, + 0x00, 0x2c, 0x03, 0xd0, 0x01, 0x3a, 0xf7, 0xd1, + 0xf0, 0xbc, 0x70, 0x47, 0x01, 0x2a, 0xfb, 0xd9, + 0x51, 0x1e, 0x00, 0x22, 0x1a, 0x70, 0x01, 0x33, + 0x01, 0x39, 0xfb, 0xd1, 0xf4, 0xe7, 0x01, 0x01, + 0x01, 0x01, 0x78, 0x47, 0x00, 0x00, 0x02, 0x00, + 0xa0, 0xe3, 0x3c, 0x00, 0xac, 0x08, 0x00, 0x00, + 0x02, 0x10, 0xa0, 0xe3, 0x2e, 0xfe, 0xff, 0xea, + 0x1f, 0x40, 0x2d, 0xe9, 0x00, 0x00, 0x0f, 0xe1, + 0xc0, 0x00, 0x80, 0xe3, 0x00, 0xf0, 0x2f, 0xe1, + 0x81, 0x00, 0xa0, 0xe3, 0x02, 0x10, 0xa0, 0xe3, + 0x01, 0x20, 0x8f, 0xe2, 0x12, 0xff, 0x2f, 0xe1, + 0x00, 0xf0, 0xe6, 0xfc, 0x78, 0x47, 0x00, 0x00, + 0x1f, 0x40, 0xbd, 0xe8, 0xfe, 0xff, 0xff, 0xea, + 0x1f, 0x50, 0x2d, 0xe9, 0x3c, 0x00, 0xe8, 0x08, + 0x00, 0x00, 0x01, 0x00, 0x8f, 0xe2, 0x10, 0xff, + 0x2f, 0xe1, 0x00, 0xf0, 0x40, 0xfb, 0x78, 0x47, + 0x00, 0x00, 0x1f, 0x50, 0xbd, 0xe8, 0x04, 0xf0, + 0x5e, 0xe2, 0x1f, 0x50, 0x2d, 0xe9, 0x01, 0x00, + 0x8f, 0xe2, 0x10, 0xff, 0x2f, 0xe1, 0x00, 0xf0, + 0x18, 0xfb, 0x78, 0x47, 0x00, 0x00, 0x1f, 0x50, + 0xbd, 0xe8, 0x04, 0xf0, 0x5e, 0xe2, 0x00, 0xbd, + 0x01, 0xb5, 0x00, 0xa0, 0x00, 0x47, 0x3c, 0x00, + 0x24, 0x09, 0x00, 0x00, 0x00, 0x30, 0x0f, 0xe1, + 0xc0, 0x30, 0xc3, 0xe3, 0x03, 0xf0, 0x21, 0xe1, + 0x01, 0x00, 0x8f, 0xe2, 0x10, 0xff, 0x2f, 0xe1, + 0x01, 0xbd, 0x01, 0xb5, 0x00, 0xa0, 0x00, 0x47, + 0x00, 0x30, 0x0f, 0xe1, 0xc0, 0x30, 0x83, 0xe3, + 0x03, 0xf0, 0x21, 0xe1, 0x01, 0x00, 0x8f, 0xe2, + 0x10, 0xff, 0x2f, 0xe1, 0x01, 0xbd, 0x00, 0x00, + 0x18, 0x00, 0x9f, 0xe5, 0x04, 0x10, 0x90, 0xe4, + 0x3c, 0x00, 0x60, 0x09, 0x00, 0x00, 0x00, 0x00, + 0x51, 0xe3, 0x02, 0x00, 0x00, 0x0a, 0x04, 0x20, + 0x90, 0xe4, 0x00, 0x20, 0x81, 0xe5, 0xf9, 0xff, + 0xff, 0xea, 0x0e, 0xf0, 0xa0, 0xe1, 0x7c, 0x09, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x00, + 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0xd8, 0x03, + 0x00, 0x00, 0xd8, 0x03, 0x00, 0x00, 0xd8, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x09, 0x00, 0x00, + 0x44, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, + 0x44, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, + 0x00, 0x80, 0x01, 0x00, 0x10, 0x8e, 0x01, 0x00, + 0x10, 0x8e, 0x01, 0x00, 0x88, 0xf8, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00, + 0xc4, 0x33, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x0e, 0x50, 0xa0, 0xe1, + 0x58, 0x40, 0x9f, 0xe5, 0x3c, 0x00, 0xd8, 0x09, + 0x00, 0x00, 0x04, 0x00, 0x94, 0xe4, 0x01, 0x00, + 0x50, 0xe3, 0x05, 0xf0, 0xa0, 0x01, 0x04, 0x10, + 0x94, 0xe4, 0x04, 0x20, 0x94, 0xe4, 0x03, 0x00, + 0x00, 0xeb, 0x04, 0x00, 0x94, 0xe4, 0x04, 0x10, + 0x94, 0xe4, 0x07, 0x00, 0x00, 0xeb, 0xf5, 0xff, + 0xff, 0xea, 0x01, 0x00, 0x50, 0xe1, 0x0e, 0xf0, + 0xa0, 0x01, 0x02, 0x00, 0x51, 0xe1, 0x04, 0x30, + 0x90, 0x14, 0x04, 0x30, 0x81, 0x14, 0x3c, 0x00, + 0x14, 0x0a, 0x00, 0x00, 0xfb, 0xff, 0xff, 0x1a, + 0x0e, 0xf0, 0xa0, 0xe1, 0x14, 0x20, 0x9f, 0xe5, + 0x00, 0x20, 0x92, 0xe5, 0x01, 0x00, 0x50, 0xe1, + 0x04, 0x20, 0x80, 0x14, 0xfc, 0xff, 0xff, 0x1a, + 0x0e, 0xf0, 0xa0, 0xe1, 0x80, 0x09, 0x00, 0x00, + 0xcc, 0x09, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, + 0x20, 0xe6, 0x01, 0x00, 0x13, 0x00, 0x00, 0x00, + 0x53, 0x56, 0x43, 0x5f, 0x00, 0x04, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x0a, 0x00, 0x00, 0x20, 0xee, + 0x01, 0x00, 0x12, 0x00, 0x00, 0x00, 0x49, 0x52, + 0x51, 0x5f, 0x00, 0x02, 0x00, 0x00, 0x20, 0xf2, + 0x01, 0x00, 0x11, 0x00, 0x00, 0x00, 0x46, 0x49, + 0x51, 0x5f, 0x80, 0x00, 0x00, 0x00, 0x20, 0xf4, + 0x01, 0x00, 0x17, 0x00, 0x00, 0x00, 0x41, 0x42, + 0x54, 0x5f, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf4, + 0x01, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x55, 0x4e, + 0x44, 0x5f, 0x3c, 0x00, 0x8c, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf4, 0x01, 0x00, + 0x1f, 0x00, 0x00, 0x00, 0x55, 0x53, 0x52, 0x5f, + 0x01, 0x00, 0x00, 0x00, 0x0e, 0x50, 0xa0, 0xe1, + 0x00, 0x60, 0x0f, 0xe1, 0x8c, 0x40, 0x9f, 0xe5, + 0x04, 0x10, 0x94, 0xe4, 0x01, 0x00, 0x51, 0xe3, + 0x09, 0x00, 0x00, 0x0a, 0x04, 0x00, 0x94, 0xe4, + 0x01, 0x10, 0x80, 0xe0, 0x03, 0x10, 0xc1, 0xe3, + 0x04, 0x20, 0x94, 0xe4, 0x3c, 0x00, 0xc8, 0x0a, + 0x00, 0x00, 0xc0, 0x20, 0x82, 0xe3, 0x02, 0xf0, + 0x2f, 0xe1, 0x04, 0xd0, 0x41, 0xe2, 0x04, 0x20, + 0x94, 0xe4, 0x13, 0x00, 0x00, 0xeb, 0xf2, 0xff, + 0xff, 0xea, 0x06, 0xf0, 0x2f, 0xe1, 0x05, 0xf0, + 0xa0, 0xe1, 0x0e, 0x50, 0xa0, 0xe1, 0x00, 0x60, + 0x0f, 0xe1, 0x44, 0x40, 0x9f, 0xe5, 0x04, 0x10, + 0x94, 0xe4, 0x01, 0x00, 0x51, 0xe3, 0x08, 0x00, + 0x00, 0x0a, 0x04, 0x00, 0x94, 0xe4, 0x3c, 0x00, + 0x04, 0x0b, 0x00, 0x00, 0x01, 0x10, 0x80, 0xe0, + 0x03, 0x10, 0xc1, 0xe3, 0x04, 0x20, 0x94, 0xe4, + 0xc0, 0x20, 0x82, 0xe3, 0x02, 0xf0, 0x2f, 0xe1, + 0x04, 0xd0, 0x41, 0xe2, 0x04, 0x20, 0x94, 0xe4, + 0xf3, 0xff, 0xff, 0xea, 0x06, 0xf0, 0x2f, 0xe1, + 0x05, 0xf0, 0xa0, 0xe1, 0x01, 0x00, 0x50, 0xe1, + 0x04, 0x20, 0x80, 0x14, 0xfc, 0xff, 0xff, 0x1a, + 0x0e, 0xf0, 0xa0, 0xe1, 0x3c, 0x0a, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x0b, 0x00, 0x00, 0x01, 0x60, + 0xc0, 0x46, 0xc0, 0x46, 0xc0, 0x46, 0x70, 0x47, + 0x00, 0x00, 0x10, 0x1e, 0x10, 0xee, 0x02, 0x00, + 0x11, 0xe3, 0xfc, 0xff, 0xff, 0x1a, 0x10, 0x0e, + 0x01, 0xee, 0x10, 0x1e, 0x10, 0xee, 0x02, 0x00, + 0x11, 0xe3, 0xfc, 0xff, 0xff, 0x1a, 0x1e, 0xff, + 0x2f, 0xe1, 0x10, 0x1e, 0x10, 0xee, 0x01, 0x00, + 0x11, 0xe3, 0x03, 0x00, 0x00, 0x0a, 0x10, 0x1e, + 0x11, 0xee, 0x3c, 0x00, 0x7c, 0x0b, 0x00, 0x00, + 0x00, 0x10, 0x80, 0xe5, 0x01, 0x00, 0xa0, 0xe3, + 0x1e, 0xff, 0x2f, 0xe1, 0x00, 0x00, 0x20, 0xe0, + 0x1e, 0xff, 0x2f, 0xe1, 0x8d, 0x46, 0x97, 0x46, + 0x78, 0x47, 0xc0, 0x46, 0x78, 0xfd, 0xff, 0xea, + 0x10, 0xb5, 0x04, 0x1c, 0x03, 0x28, 0x01, 0xd9, + 0x00, 0xf0, 0xac, 0xfb, 0x0c, 0x48, 0x40, 0x68, + 0x00, 0x28, 0x00, 0xd0, 0x03, 0x24, 0x0b, 0x48, + 0x01, 0x68, 0x09, 0x48, 0x3c, 0x00, 0xb8, 0x0b, + 0x00, 0x00, 0x12, 0x30, 0x00, 0x29, 0x05, 0xd0, + 0x06, 0x21, 0x61, 0x43, 0x40, 0x5c, 0xc3, 0x00, + 0x18, 0x18, 0x04, 0xe0, 0x06, 0x21, 0x61, 0x43, + 0x40, 0x5c, 0x14, 0x23, 0x58, 0x43, 0x0a, 0x30, + 0x00, 0x06, 0x00, 0x0e, 0x10, 0xbd, 0xd4, 0x7a, + 0x01, 0x00, 0xa8, 0x69, 0x01, 0x00, 0x80, 0xb5, + 0x09, 0x4a, 0x09, 0x49, 0x03, 0x20, 0x00, 0xf0, + 0xf2, 0xf9, 0x08, 0x49, 0x08, 0x20, 0x3c, 0x00, + 0xf4, 0x0b, 0x00, 0x00, 0x08, 0x60, 0x48, 0x60, + 0x07, 0x49, 0x1d, 0x20, 0x01, 0xf0, 0xb2, 0xfc, + 0x06, 0x49, 0x1e, 0x20, 0x01, 0xf0, 0xae, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x00, 0x6c, 0x01, 0x00, + 0x31, 0x27, 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x29, 0x25, 0x00, 0x00, 0x31, 0x25, 0x00, 0x00, + 0x05, 0x49, 0x80, 0xb5, 0x08, 0x20, 0x88, 0x60, + 0x1d, 0x20, 0x01, 0xf0, 0xbf, 0xfc, 0x1e, 0x20, + 0x3c, 0x00, 0x30, 0x0c, 0x00, 0x00, 0x01, 0xf0, + 0xbc, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x02, 0x1c, 0x08, 0x1c, 0xd1, 0x2a, + 0x80, 0xb5, 0x01, 0xd1, 0x05, 0xf0, 0x19, 0xfc, + 0x80, 0xbd, 0x03, 0x49, 0x80, 0xb5, 0x00, 0x20, + 0x08, 0x80, 0x05, 0x20, 0x05, 0xf0, 0xd5, 0xfb, + 0x80, 0xbd, 0xb0, 0x74, 0x01, 0x00, 0x80, 0xb5, + 0x54, 0x28, 0x01, 0xd1, 0x06, 0xf0, 0xcd, 0xf8, + 0x80, 0xbd, 0x3c, 0x00, 0x6c, 0x0c, 0x00, 0x00, + 0xb0, 0xb5, 0x10, 0x4d, 0x02, 0x1c, 0x01, 0x24, + 0x01, 0x2a, 0x0d, 0x48, 0x29, 0x68, 0x06, 0xd0, + 0xc4, 0x2a, 0x03, 0xd1, 0x6a, 0x68, 0x00, 0x2a, + 0x05, 0xd0, 0xac, 0x60, 0xb0, 0xbd, 0x0e, 0xf0, + 0x89, 0xfb, 0x6c, 0x60, 0x08, 0xe0, 0x00, 0x22, + 0xaa, 0x60, 0x6c, 0x60, 0x0e, 0xf0, 0x82, 0xfb, + 0x00, 0x21, 0x04, 0x20, 0x12, 0xf0, 0xc8, 0xfc, + 0x06, 0xf0, 0xd8, 0xf8, 0x3c, 0x00, 0xa8, 0x0c, + 0x00, 0x00, 0xb0, 0xbd, 0x00, 0x00, 0xc4, 0x60, + 0x01, 0x00, 0xbc, 0x74, 0x01, 0x00, 0x05, 0x4a, + 0x51, 0x69, 0x08, 0x1a, 0x11, 0x69, 0x09, 0x68, + 0x10, 0x31, 0x81, 0x42, 0x01, 0xd8, 0x50, 0x61, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x8c, 0x6e, + 0x01, 0x00, 0x01, 0x49, 0x49, 0x68, 0x40, 0x1a, + 0x70, 0x47, 0x8c, 0x6e, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x69, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x0c, 0x00, 0x00, 0x8c, 0x6e, 0x01, 0x00, + 0x02, 0x4a, 0x51, 0x69, 0x08, 0x18, 0x50, 0x61, + 0x70, 0x47, 0x00, 0x00, 0x8c, 0x6e, 0x01, 0x00, + 0x0e, 0x49, 0x0f, 0x48, 0x10, 0xb5, 0x19, 0x22, + 0x92, 0x01, 0x41, 0x60, 0x89, 0x18, 0xc1, 0x60, + 0x0b, 0x49, 0x00, 0x22, 0x0c, 0x31, 0x01, 0x60, + 0x0a, 0x49, 0x82, 0x60, 0x09, 0x68, 0x01, 0x23, + 0xdb, 0x03, 0xc9, 0x18, 0x08, 0x4c, 0x41, 0x61, + 0x3c, 0x00, 0x20, 0x0d, 0x00, 0x00, 0x21, 0x68, + 0x00, 0x29, 0x02, 0xd0, 0x07, 0x49, 0x01, 0x61, + 0x01, 0xe0, 0x00, 0xf0, 0x0c, 0xf8, 0x22, 0x60, + 0x10, 0xbd, 0x44, 0xdc, 0x01, 0x00, 0x8c, 0x6e, + 0x01, 0x00, 0xc8, 0x09, 0x00, 0x00, 0x34, 0x58, + 0x01, 0x00, 0xc4, 0x09, 0x00, 0x00, 0x01, 0x48, + 0x02, 0x49, 0x08, 0x61, 0x70, 0x47, 0xc8, 0x09, + 0x00, 0x00, 0x8c, 0x6e, 0x01, 0x00, 0x08, 0x28, + 0x05, 0xd2, 0x3c, 0x00, 0x5c, 0x0d, 0x00, 0x00, + 0x03, 0x4b, 0x80, 0x00, 0x19, 0x50, 0x02, 0x49, + 0x20, 0x31, 0x0a, 0x50, 0x70, 0x47, 0x00, 0x00, + 0x64, 0x6d, 0x01, 0x00, 0x70, 0xb5, 0x06, 0x1c, + 0x0d, 0x48, 0x0d, 0x1c, 0x00, 0x68, 0x14, 0x1c, + 0x00, 0x28, 0x03, 0xd1, 0x20, 0x1c, 0x00, 0xf0, + 0x09, 0xfc, 0x70, 0xbd, 0x28, 0x06, 0x01, 0xd5, + 0x00, 0xf0, 0x22, 0xfe, 0x22, 0x1c, 0x29, 0x1c, + 0x30, 0x1c, 0x08, 0xf0, 0x3c, 0x00, 0x98, 0x0d, + 0x00, 0x00, 0xdd, 0xfd, 0x01, 0x1c, 0x03, 0x48, + 0x54, 0x30, 0x43, 0x69, 0x32, 0x1c, 0xff, 0xf7, + 0x1b, 0xfb, 0x70, 0xbd, 0x00, 0x00, 0x50, 0x6d, + 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0d, 0x48, + 0x1f, 0x1c, 0x00, 0x68, 0x15, 0x1c, 0x0c, 0x1c, + 0x00, 0x28, 0x02, 0xd1, 0x28, 0x1c, 0x00, 0xf0, + 0xe8, 0xfb, 0x20, 0x06, 0x01, 0xd5, 0x00, 0xf0, + 0x02, 0xfe, 0x2a, 0x1c, 0x21, 0x1c, 0x3c, 0x00, + 0xd4, 0x0d, 0x00, 0x00, 0x30, 0x1c, 0x08, 0xf0, + 0xbd, 0xfd, 0x01, 0x1c, 0x03, 0x48, 0x54, 0x30, + 0x43, 0x69, 0x3a, 0x1c, 0xff, 0xf7, 0xfb, 0xfa, + 0xf8, 0xbd, 0x00, 0x00, 0x50, 0x6d, 0x01, 0x00, + 0xf8, 0xb5, 0xf1, 0x28, 0x4e, 0xd1, 0x2a, 0x48, + 0x69, 0x46, 0x82, 0x69, 0xff, 0xf7, 0xee, 0xfa, + 0x27, 0x49, 0x00, 0x26, 0x54, 0x39, 0xc8, 0x68, + 0x8b, 0x68, 0xc2, 0x00, 0x01, 0x30, 0xd5, 0x18, + 0x3c, 0x00, 0x10, 0x0e, 0x00, 0x00, 0x07, 0x28, + 0xc8, 0x60, 0x00, 0xd1, 0xce, 0x60, 0x22, 0x48, + 0x6c, 0x68, 0x00, 0x68, 0x00, 0x28, 0x03, 0xd0, + 0x00, 0x21, 0x20, 0x1c, 0x08, 0xf0, 0x3b, 0xfb, + 0x6e, 0x60, 0x25, 0x68, 0x20, 0x89, 0xa9, 0x78, + 0x02, 0x39, 0x40, 0x1a, 0xe9, 0x78, 0x40, 0x1a, + 0x20, 0x81, 0xa8, 0x78, 0x28, 0x18, 0x02, 0x38, + 0x20, 0x60, 0x6e, 0x78, 0x28, 0x78, 0x08, 0x28, + 0x17, 0xd2, 0x3c, 0x00, 0x4c, 0x0e, 0x00, 0x00, + 0x30, 0x06, 0x07, 0xd5, 0x27, 0x1c, 0x20, 0x1c, + 0x00, 0xf0, 0x7a, 0xfc, 0x04, 0x1c, 0x38, 0x1c, + 0x00, 0xf0, 0x9c, 0xfb, 0x28, 0x78, 0x0f, 0x49, + 0x40, 0x39, 0x80, 0x00, 0x0a, 0x58, 0x00, 0x2a, + 0x04, 0xd0, 0x31, 0x1c, 0x20, 0x1c, 0xff, 0xf7, + 0xb3, 0xfa, 0x08, 0xe0, 0x05, 0x21, 0x00, 0xe0, + 0x04, 0x21, 0x06, 0x20, 0x00, 0xf0, 0x10, 0xfa, + 0x20, 0x1c, 0x00, 0xf0, 0x3c, 0x00, 0x88, 0x0e, + 0x00, 0x00, 0x87, 0xfb, 0x30, 0x06, 0x01, 0xd5, + 0x00, 0xf0, 0xa1, 0xfd, 0xf8, 0xbd, 0x01, 0x21, + 0x06, 0x20, 0x00, 0xf0, 0x04, 0xfa, 0xf9, 0xe7, + 0x00, 0x00, 0xa4, 0x6d, 0x01, 0x00, 0xcc, 0x5c, + 0x01, 0x00, 0xf8, 0xb5, 0x1a, 0x4d, 0x19, 0x4f, + 0x01, 0x24, 0x54, 0x35, 0x29, 0x1c, 0x03, 0x20, + 0x7c, 0x60, 0x17, 0x4b, 0x18, 0x4a, 0x05, 0xf0, + 0xf4, 0xfb, 0x00, 0x28, 0x02, 0xd0, 0x3c, 0x00, + 0xc4, 0x0e, 0x00, 0x00, 0x00, 0x20, 0x38, 0x60, + 0x1f, 0xe0, 0x3c, 0x60, 0x07, 0x21, 0x28, 0x1c, + 0xea, 0x69, 0xff, 0xf7, 0x83, 0xfa, 0x38, 0x20, + 0x00, 0xf0, 0x80, 0xfc, 0x00, 0x24, 0xb8, 0x60, + 0xb8, 0x68, 0xe6, 0x00, 0x35, 0x18, 0x68, 0x46, + 0x02, 0x21, 0x00, 0xf0, 0x75, 0xfb, 0x28, 0x60, + 0x28, 0x1c, 0x00, 0xf0, 0xa5, 0xfd, 0xb8, 0x68, + 0x81, 0x59, 0x06, 0x48, 0x54, 0x30, 0x02, 0x6a, + 0x3c, 0x00, 0x00, 0x0f, 0x00, 0x00, 0xff, 0xf7, + 0x6c, 0xfa, 0x01, 0x34, 0x07, 0x2c, 0xea, 0xdb, + 0x00, 0x20, 0xf8, 0x60, 0x38, 0x61, 0xf8, 0xbd, + 0x00, 0x00, 0x50, 0x6d, 0x01, 0x00, 0x81, 0x9a, + 0x00, 0x00, 0x61, 0x9a, 0x00, 0x00, 0x05, 0x48, + 0x80, 0xb5, 0x00, 0x68, 0x00, 0x28, 0x05, 0xd0, + 0x03, 0x48, 0x54, 0x30, 0x42, 0x6a, 0x00, 0x21, + 0xff, 0xf7, 0x53, 0xfa, 0x80, 0xbd, 0x50, 0x6d, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0x0f, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0xb5, 0x0a, 0x4e, + 0x09, 0x4d, 0x08, 0x4c, 0x08, 0x3e, 0xa1, 0x69, + 0x00, 0x29, 0x07, 0xd0, 0x30, 0x68, 0x41, 0x60, + 0x00, 0x7b, 0x81, 0x00, 0x69, 0x58, 0xff, 0xf7, + 0x3e, 0xfa, 0xf4, 0xe7, 0x03, 0x49, 0x02, 0x20, + 0x08, 0x70, 0x70, 0xbd, 0x00, 0x10, 0x07, 0x00, + 0xe0, 0x7e, 0x01, 0x00, 0x00, 0x02, 0x07, 0x00, + 0x70, 0xb5, 0x0a, 0x4e, 0x3c, 0x00, 0x78, 0x0f, + 0x00, 0x00, 0x09, 0x4d, 0x08, 0x4c, 0x08, 0x3e, + 0xe1, 0x69, 0x00, 0x29, 0x07, 0xd0, 0x70, 0x68, + 0x41, 0x60, 0x00, 0x7b, 0x81, 0x00, 0x69, 0x58, + 0xff, 0xf7, 0x24, 0xfa, 0xf4, 0xe7, 0x03, 0x49, + 0x02, 0x20, 0x08, 0x70, 0x70, 0xbd, 0x00, 0x10, + 0x07, 0x00, 0xe0, 0x7e, 0x01, 0x00, 0x00, 0x02, + 0x07, 0x00, 0xb0, 0xb5, 0x09, 0x4d, 0x04, 0x1c, + 0x28, 0x1c, 0x20, 0x22, 0x40, 0x30, 0x3c, 0x00, + 0xb4, 0x0f, 0x00, 0x00, 0x05, 0x49, 0xff, 0xf7, + 0x9f, 0xfa, 0xe0, 0x68, 0xe8, 0x60, 0x20, 0x69, + 0x28, 0x61, 0xa0, 0x6a, 0xa8, 0x62, 0x60, 0x68, + 0x68, 0x60, 0xb0, 0xbd, 0x70, 0x52, 0x01, 0x00, + 0x00, 0x10, 0x07, 0x00, 0xf8, 0xb5, 0x00, 0x24, + 0x00, 0x23, 0x20, 0x28, 0x01, 0xdb, 0x01, 0x24, + 0x07, 0xe0, 0x08, 0x4e, 0x80, 0x00, 0x35, 0x58, + 0x07, 0x4f, 0xbd, 0x42, 0x00, 0xd0, 0x2b, 0x1c, + 0x3c, 0x00, 0xf0, 0x0f, 0x00, 0x00, 0x31, 0x50, + 0x13, 0x60, 0x00, 0x2c, 0x03, 0xd0, 0x21, 0x1c, + 0x82, 0x20, 0x00, 0xf0, 0x52, 0xf9, 0x20, 0x1c, + 0xf8, 0xbd, 0xe0, 0x7e, 0x01, 0x00, 0x75, 0x75, + 0x00, 0x00, 0xb0, 0xb5, 0x0b, 0x4d, 0x04, 0x1c, + 0x28, 0x68, 0x00, 0x28, 0x0f, 0xd0, 0x20, 0x1c, + 0x12, 0xf0, 0xb7, 0xfd, 0x00, 0x28, 0x0a, 0xd0, + 0x21, 0x7a, 0x28, 0x7a, 0x0a, 0x07, 0x00, 0x07, + 0x00, 0x0f, 0x3c, 0x00, 0x2c, 0x10, 0x00, 0x00, + 0x12, 0x0f, 0x90, 0x42, 0x29, 0x72, 0x01, 0xd0, + 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, + 0x70, 0x78, 0x01, 0x00, 0xf0, 0xb5, 0x42, 0x4e, + 0x05, 0x1c, 0x30, 0x68, 0x85, 0xb0, 0x00, 0x28, + 0x63, 0xd0, 0x00, 0x24, 0x00, 0x20, 0x00, 0x2d, + 0x06, 0xd0, 0x69, 0x78, 0x18, 0x29, 0x03, 0xd1, + 0xe9, 0x79, 0x01, 0x29, 0x00, 0xd1, 0x01, 0x20, + 0x00, 0x28, 0x45, 0xd0, 0x3c, 0x00, 0x68, 0x10, + 0x00, 0x00, 0x00, 0x20, 0xb0, 0x72, 0x81, 0x00, + 0x4a, 0x19, 0x93, 0x7a, 0x59, 0x06, 0x89, 0x0f, + 0xdb, 0x06, 0x04, 0xd5, 0xb3, 0x7a, 0x01, 0x27, + 0x8f, 0x40, 0x3b, 0x43, 0xb3, 0x72, 0xd2, 0x7a, + 0x13, 0x09, 0x12, 0x07, 0x12, 0x0f, 0x93, 0x42, + 0x05, 0xd3, 0x01, 0x22, 0x8a, 0x40, 0x14, 0x43, + 0x01, 0xaa, 0x89, 0x00, 0x50, 0x50, 0x01, 0x30, + 0x04, 0x28, 0xe4, 0xdb, 0xb0, 0x7a, 0x3c, 0x00, + 0xa4, 0x10, 0x00, 0x00, 0x20, 0x40, 0x01, 0x07, + 0x0d, 0xd5, 0x41, 0x07, 0x09, 0xd5, 0xc1, 0x07, + 0x05, 0xd5, 0x81, 0x07, 0x01, 0xd5, 0x00, 0x24, + 0x05, 0xe0, 0x02, 0x99, 0x02, 0xe0, 0x01, 0x99, + 0x00, 0xe0, 0x03, 0x99, 0x04, 0x91, 0x41, 0x07, + 0x09, 0xd5, 0xc1, 0x07, 0x05, 0xd5, 0x81, 0x07, + 0x01, 0xd5, 0x00, 0x24, 0x03, 0xe0, 0x02, 0x99, + 0x00, 0xe0, 0x01, 0x99, 0x03, 0x91, 0xc1, 0x07, + 0x3c, 0x00, 0xe0, 0x10, 0x00, 0x00, 0x05, 0xd5, + 0x81, 0x07, 0x01, 0xd5, 0x00, 0x24, 0x01, 0xe0, + 0x02, 0x99, 0x01, 0x91, 0x80, 0x07, 0x01, 0xd5, + 0x00, 0x24, 0x22, 0xe0, 0x0f, 0x2c, 0x20, 0xd1, + 0x70, 0x68, 0x00, 0x28, 0x0b, 0xd0, 0x04, 0x9a, + 0x02, 0xab, 0x00, 0x92, 0x0a, 0xcb, 0x01, 0x9a, + 0x28, 0x1c, 0x0b, 0xf0, 0x8a, 0xfb, 0x00, 0x20, + 0x70, 0x60, 0x10, 0xe0, 0x17, 0xe0, 0x30, 0x7a, + 0x29, 0x7a, 0x3c, 0x00, 0x1c, 0x11, 0x00, 0x00, + 0x00, 0x07, 0x09, 0x07, 0x09, 0x0f, 0x00, 0x0f, + 0x88, 0x42, 0x07, 0xd0, 0x04, 0x9a, 0x02, 0xab, + 0x00, 0x92, 0x0a, 0xcb, 0x01, 0x9a, 0x28, 0x1c, + 0x0b, 0xf0, 0x76, 0xfb, 0x28, 0x7a, 0x30, 0x72, + 0x01, 0x20, 0x0f, 0x2c, 0x00, 0xd0, 0x00, 0x20, + 0x05, 0xb0, 0xf0, 0xbd, 0x01, 0x20, 0xfb, 0xe7, + 0x70, 0x78, 0x01, 0x00, 0x0d, 0x4a, 0x70, 0xb5, + 0x11, 0x68, 0x00, 0x20, 0x3c, 0x00, 0x58, 0x11, + 0x00, 0x00, 0x00, 0x29, 0x0e, 0xd0, 0x11, 0x7a, + 0x09, 0x06, 0x0b, 0xd5, 0x53, 0x7a, 0x94, 0x7a, + 0x03, 0x21, 0x01, 0x25, 0x2a, 0x1c, 0x8a, 0x40, + 0x1e, 0x1c, 0x16, 0x40, 0x03, 0xd0, 0x22, 0x40, + 0x01, 0xd1, 0x01, 0x20, 0x70, 0xbd, 0xff, 0x31, + 0x09, 0x06, 0x09, 0x16, 0xf2, 0xd5, 0x70, 0xbd, + 0x00, 0x00, 0x70, 0x78, 0x01, 0x00, 0x10, 0xb5, + 0x08, 0x4c, 0x20, 0x68, 0x00, 0x28, 0x3c, 0x00, + 0x94, 0x11, 0x00, 0x00, 0x04, 0xd0, 0x60, 0x68, + 0x00, 0x28, 0x01, 0xd1, 0x0b, 0xf0, 0xc0, 0xfb, + 0x00, 0x20, 0x00, 0x21, 0x00, 0x22, 0x07, 0xc4, + 0x0c, 0x3c, 0x01, 0x20, 0x60, 0x60, 0x10, 0xbd, + 0x70, 0x78, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0x08, 0x60, 0x70, 0x47, 0x70, 0x78, 0x01, 0x00, + 0xf8, 0xb5, 0x0e, 0x4d, 0x04, 0x1c, 0x00, 0x20, + 0x68, 0x72, 0x20, 0x1c, 0x12, 0xf0, 0xde, 0xfc, + 0x3c, 0x00, 0xd0, 0x11, 0x00, 0x00, 0x00, 0x28, + 0x12, 0xd0, 0x00, 0x20, 0x03, 0x21, 0x01, 0x22, + 0x0f, 0x1a, 0x16, 0x1c, 0x23, 0x7a, 0xbe, 0x40, + 0x33, 0x40, 0x04, 0xd0, 0x6b, 0x7a, 0x16, 0x1c, + 0x86, 0x40, 0x33, 0x43, 0x6b, 0x72, 0x01, 0x30, + 0x00, 0x06, 0x00, 0x0e, 0x03, 0x28, 0xef, 0xd9, + 0xf8, 0xbd, 0x70, 0x78, 0x01, 0x00, 0x92, 0x00, + 0x51, 0x18, 0x8a, 0x7a, 0x12, 0x07, 0x12, 0x0f, + 0x02, 0x70, 0x3c, 0x00, 0x0c, 0x12, 0x00, 0x00, + 0xca, 0x7a, 0x12, 0x07, 0x12, 0x0f, 0x42, 0x70, + 0xca, 0x7a, 0x12, 0x09, 0x82, 0x70, 0x09, 0x7b, + 0x81, 0x80, 0x70, 0x47, 0x03, 0x4a, 0x0f, 0x21, + 0x52, 0x7a, 0x01, 0x20, 0x91, 0x43, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x78, 0x01, 0x00, + 0x40, 0x07, 0x05, 0x49, 0x40, 0x0f, 0x05, 0x4a, + 0x09, 0x56, 0x52, 0x7a, 0x01, 0x20, 0x0a, 0x40, + 0x00, 0xd1, 0x00, 0x20, 0x3c, 0x00, 0x48, 0x12, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x5e, 0x46, + 0x01, 0x00, 0x70, 0x78, 0x01, 0x00, 0x12, 0x4a, + 0x70, 0xb5, 0x53, 0x7a, 0x94, 0x7a, 0xff, 0x20, + 0x03, 0x21, 0x01, 0x25, 0x2a, 0x1c, 0x8a, 0x40, + 0x1e, 0x1c, 0x16, 0x40, 0x14, 0xd0, 0x22, 0x40, + 0x12, 0xd1, 0x08, 0x06, 0x00, 0x0e, 0x07, 0xd0, + 0x01, 0x28, 0x07, 0xd0, 0x02, 0x28, 0x07, 0xd0, + 0x03, 0x28, 0x07, 0xd1, 0x07, 0x20, 0x3c, 0x00, + 0x84, 0x12, 0x00, 0x00, 0x70, 0xbd, 0x03, 0x20, + 0x70, 0xbd, 0x01, 0x20, 0x70, 0xbd, 0x05, 0x20, + 0x70, 0xbd, 0xff, 0x20, 0x70, 0xbd, 0xff, 0x31, + 0x09, 0x06, 0x09, 0x16, 0xe1, 0xd5, 0x70, 0xbd, + 0x70, 0x78, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x13, 0x48, 0x0d, 0x1c, 0x81, 0x68, 0x00, 0x29, + 0x05, 0xd0, 0x01, 0x7b, 0x00, 0x29, 0x01, 0xd1, + 0x04, 0x73, 0x45, 0x73, 0xf8, 0xbd, 0x0f, 0x4e, + 0x3c, 0x00, 0xc0, 0x12, 0x00, 0x00, 0x31, 0x1c, + 0x20, 0x31, 0x8a, 0x79, 0x00, 0xab, 0x1a, 0x70, + 0xc9, 0x79, 0x59, 0x70, 0x42, 0x68, 0x00, 0x2a, + 0x07, 0xd0, 0x20, 0x02, 0x28, 0x43, 0x01, 0x1c, + 0x00, 0x20, 0xff, 0xf7, 0x7e, 0xf8, 0x00, 0x28, + 0x04, 0xd1, 0x2a, 0x1c, 0x21, 0x1c, 0x00, 0x20, + 0x11, 0xf0, 0x0f, 0xf8, 0x00, 0xab, 0x18, 0x88, + 0xf0, 0x84, 0xe2, 0xe7, 0x00, 0x00, 0x88, 0x5a, + 0x01, 0x00, 0x3c, 0x00, 0xfc, 0x12, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x81, 0x20, 0xff, 0xf7, 0xcd, 0xff, 0x80, 0xbd, + 0x01, 0x49, 0x01, 0x20, 0x88, 0x60, 0x70, 0x47, + 0x88, 0x5a, 0x01, 0x00, 0x05, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0x88, 0x60, 0x08, 0x7b, 0x00, 0x28, + 0x02, 0xd0, 0x49, 0x7b, 0xff, 0xf7, 0xbc, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x88, 0x5a, 0x01, 0x00, + 0x02, 0x4a, 0x01, 0x1c, 0x3c, 0x00, 0x38, 0x13, + 0x00, 0x00, 0x50, 0x68, 0x51, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x88, 0x5a, 0x01, 0x00, 0x10, 0xb5, + 0x0c, 0x1c, 0x07, 0xf0, 0x64, 0xfa, 0x04, 0x61, + 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, 0xff, 0xb5, + 0x0e, 0x1c, 0x1f, 0x1c, 0x38, 0x20, 0x81, 0xb0, + 0x00, 0xf0, 0x3d, 0xfa, 0x1d, 0x49, 0x04, 0x1c, + 0x48, 0x69, 0x00, 0x28, 0x01, 0xd1, 0x4c, 0x61, + 0x00, 0xe0, 0x04, 0x60, 0x30, 0x01, 0x3c, 0x00, + 0x74, 0x13, 0x00, 0x00, 0x00, 0x90, 0x00, 0x04, + 0x00, 0x0c, 0x00, 0xf0, 0x15, 0xfa, 0x05, 0x1c, + 0x00, 0x99, 0xff, 0xf7, 0x8b, 0xf8, 0x00, 0x20, + 0x73, 0x1e, 0x04, 0xe0, 0x01, 0x01, 0x4a, 0x19, + 0x10, 0x32, 0x6a, 0x50, 0x01, 0x30, 0x98, 0x42, + 0xf8, 0xd3, 0x00, 0x01, 0x2d, 0x50, 0x38, 0x21, + 0x20, 0x1c, 0xff, 0xf7, 0x7b, 0xf8, 0xa5, 0x60, + 0x65, 0x60, 0xe6, 0x85, 0x0c, 0x20, 0x60, 0x86, + 0x3c, 0x00, 0xb0, 0x13, 0x00, 0x00, 0xaf, 0x20, + 0x80, 0x01, 0xe0, 0x61, 0x0e, 0x20, 0xe0, 0x86, + 0x00, 0x20, 0x20, 0x60, 0x01, 0x98, 0xe0, 0x60, + 0x38, 0x68, 0x60, 0x61, 0x03, 0x99, 0x04, 0x48, + 0x08, 0x60, 0x04, 0x48, 0x38, 0x60, 0x05, 0xb0, + 0x00, 0x20, 0xf0, 0xbd, 0x00, 0x00, 0xfc, 0x5a, + 0x01, 0x00, 0xdd, 0x15, 0x01, 0x00, 0xfd, 0x16, + 0x01, 0x00, 0x02, 0x1c, 0x08, 0x1c, 0xf0, 0x2a, + 0x80, 0xb5, 0x3c, 0x00, 0xec, 0x13, 0x00, 0x00, + 0x04, 0xd0, 0xf1, 0x2a, 0x07, 0xd1, 0x06, 0xf0, + 0x09, 0xfb, 0x80, 0xbd, 0x07, 0xf0, 0x0c, 0xfa, + 0x0d, 0xf0, 0xa8, 0xfa, 0x80, 0xbd, 0x01, 0x21, + 0x02, 0x20, 0xff, 0xf7, 0x4d, 0xff, 0x80, 0xbd, + 0x01, 0x49, 0x00, 0x20, 0x48, 0x61, 0x70, 0x47, + 0xfc, 0x5a, 0x01, 0x00, 0x00, 0x28, 0x02, 0xd0, + 0x00, 0x29, 0x00, 0xd0, 0xc1, 0x60, 0x70, 0x47, + 0xf8, 0xb5, 0x17, 0x1c, 0x3c, 0x00, 0x28, 0x14, + 0x00, 0x00, 0x0e, 0x1c, 0x05, 0x1c, 0x1c, 0x1c, + 0x1c, 0x30, 0x07, 0xf0, 0xc8, 0xf8, 0x01, 0x69, + 0x42, 0x69, 0x80, 0x68, 0x89, 0x19, 0x89, 0x1a, + 0x81, 0x42, 0x06, 0xd2, 0x23, 0x1c, 0x3a, 0x1c, + 0x31, 0x1c, 0x28, 0x1c, 0x00, 0xf0, 0x05, 0xf8, + 0xf8, 0xbd, 0x00, 0x20, 0x38, 0x60, 0x20, 0x60, + 0xfa, 0xe7, 0xff, 0xb5, 0x85, 0xb0, 0x05, 0x98, + 0x01, 0x27, 0x0e, 0x1c, 0x1c, 0x30, 0x3c, 0x00, + 0x64, 0x14, 0x00, 0x00, 0x07, 0xf0, 0xae, 0xf8, + 0x04, 0x1c, 0x80, 0x88, 0x04, 0x30, 0x03, 0x90, + 0x2c, 0x48, 0x04, 0x90, 0x80, 0x79, 0x02, 0x90, + 0xa0, 0x69, 0xb0, 0x42, 0x17, 0xd2, 0x35, 0x1a, + 0x11, 0xe0, 0x03, 0x98, 0xff, 0xf7, 0x16, 0xfc, + 0x00, 0x28, 0x06, 0xd1, 0x01, 0x21, 0x8e, 0x20, + 0xff, 0xf7, 0x08, 0xff, 0x00, 0x25, 0x00, 0x27, + 0x05, 0xe0, 0x21, 0x68, 0x01, 0x60, 0x20, 0x60, + 0x3c, 0x00, 0xa0, 0x14, 0x00, 0x00, 0xa0, 0x69, + 0x01, 0x30, 0xa0, 0x61, 0x01, 0x3d, 0xeb, 0xd2, + 0x00, 0x2f, 0x35, 0xd0, 0xa0, 0x69, 0x80, 0x1b, + 0xa0, 0x61, 0x20, 0x69, 0x80, 0x19, 0x20, 0x61, + 0x61, 0x69, 0x40, 0x1a, 0xe1, 0x68, 0x88, 0x42, + 0x03, 0xd9, 0x07, 0x21, 0x8e, 0x20, 0xff, 0xf7, + 0xec, 0xfe, 0x25, 0x68, 0x2f, 0x1c, 0x70, 0x1e, + 0x01, 0x95, 0x00, 0xe0, 0x3f, 0x68, 0x01, 0x38, + 0xfc, 0xd2, 0x3c, 0x00, 0xdc, 0x14, 0x00, 0x00, + 0x38, 0x68, 0x20, 0x60, 0x02, 0x98, 0x04, 0x99, + 0x88, 0x71, 0x2e, 0x68, 0x2c, 0x60, 0x32, 0x1d, + 0x00, 0x92, 0x29, 0x1c, 0x20, 0x31, 0x01, 0x22, + 0x28, 0x1d, 0x05, 0x9b, 0x08, 0xf0, 0x7a, 0xfc, + 0xbd, 0x42, 0x01, 0xd0, 0x35, 0x1c, 0xf0, 0xe7, + 0x00, 0x20, 0x38, 0x61, 0x01, 0x98, 0x07, 0x99, + 0x04, 0x30, 0x08, 0x60, 0x08, 0x98, 0x04, 0x37, + 0x07, 0x60, 0x09, 0xb0, 0x3c, 0x00, 0x18, 0x15, + 0x00, 0x00, 0xf0, 0xbd, 0x02, 0x98, 0x04, 0x99, + 0x88, 0x71, 0xf9, 0xe7, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0x38, 0xb5, 0x04, 0x1c, 0x15, 0x1c, + 0x00, 0x20, 0x0c, 0x60, 0x09, 0xe0, 0xe2, 0x68, + 0x20, 0x1c, 0x00, 0x92, 0xa3, 0x8a, 0x21, 0x68, + 0xa2, 0x69, 0x08, 0xf0, 0x56, 0xfc, 0x20, 0x1c, + 0xe4, 0x68, 0x00, 0x2c, 0xf3, 0xd1, 0x28, 0x60, + 0x38, 0xbd, 0x80, 0xb5, 0x0c, 0xe0, 0x3c, 0x00, + 0x54, 0x15, 0x00, 0x00, 0xc2, 0x68, 0x8a, 0x42, + 0x08, 0xd1, 0x00, 0x21, 0xc1, 0x60, 0x00, 0x28, + 0x03, 0xd1, 0x06, 0x21, 0x8e, 0x20, 0xff, 0xf7, + 0x9d, 0xfe, 0x80, 0xbd, 0x10, 0x1c, 0x00, 0x28, + 0xf7, 0xd0, 0xef, 0xe7, 0x10, 0xb5, 0x04, 0x1c, + 0x0c, 0xd0, 0xa0, 0x69, 0x00, 0x28, 0x06, 0xd1, + 0x20, 0x69, 0x00, 0x28, 0x03, 0xd0, 0x06, 0xf0, + 0xf7, 0xfd, 0x00, 0x20, 0x20, 0x61, 0x20, 0x1c, + 0x3c, 0x00, 0x90, 0x15, 0x00, 0x00, 0x06, 0xf0, + 0xf2, 0xfd, 0x10, 0xbd, 0x00, 0x00, 0x10, 0xb5, + 0x00, 0x28, 0x09, 0xd0, 0xc4, 0x68, 0x03, 0xe0, + 0xff, 0xf7, 0xe7, 0xff, 0x20, 0x1c, 0xf9, 0xe7, + 0x00, 0x2c, 0xf9, 0xd1, 0xff, 0xf7, 0xe1, 0xff, + 0x10, 0xbd, 0x01, 0x1c, 0x00, 0x20, 0x04, 0xe0, + 0x0a, 0x89, 0xc9, 0x68, 0x10, 0x18, 0x00, 0x04, + 0x00, 0x0c, 0x00, 0x29, 0xf8, 0xd1, 0x70, 0x47, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x15, 0x00, 0x00, + 0x00, 0xe0, 0x08, 0x1c, 0xc1, 0x68, 0x00, 0x29, + 0xfb, 0xd1, 0x70, 0x47, 0xf8, 0xb5, 0x06, 0x1c, + 0x0c, 0x1c, 0x1c, 0x20, 0x00, 0xf0, 0x68, 0xfa, + 0x05, 0x1c, 0x00, 0x2e, 0x01, 0xd1, 0x00, 0x2c, + 0x02, 0xd1, 0x30, 0x1c, 0x01, 0x21, 0x03, 0xe0, + 0x20, 0x1c, 0x00, 0xf0, 0x5d, 0xfa, 0x00, 0x21, + 0x00, 0x22, 0x00, 0x92, 0x0a, 0x1c, 0x01, 0x1c, + 0x23, 0x1c, 0x28, 0x1c, 0x3c, 0x00, 0x08, 0x16, + 0x00, 0x00, 0x08, 0xf0, 0xf2, 0xfb, 0x28, 0x1c, + 0xf8, 0xbd, 0xb0, 0xb5, 0x03, 0x32, 0x92, 0x08, + 0x92, 0x00, 0x14, 0x04, 0x24, 0x0c, 0x09, 0x19, + 0x1d, 0x1c, 0xc9, 0x18, 0x09, 0x04, 0x09, 0x0c, + 0xff, 0xf7, 0xd7, 0xff, 0x01, 0x89, 0x02, 0x68, + 0x12, 0x19, 0x09, 0x1b, 0x49, 0x1b, 0x02, 0x60, + 0x01, 0x81, 0xb0, 0xbd, 0x00, 0x00, 0xf8, 0xb5, + 0x0a, 0x4c, 0xa0, 0x21, 0x20, 0x1c, 0x3c, 0x00, + 0x44, 0x16, 0x00, 0x00, 0xfe, 0xf7, 0x2a, 0xff, + 0x00, 0x20, 0x26, 0x1c, 0xa0, 0x36, 0x07, 0x4d, + 0x07, 0xe0, 0x0c, 0x21, 0x41, 0x43, 0x49, 0x19, + 0x0e, 0xc9, 0x27, 0x1d, 0x0e, 0xc7, 0x20, 0x34, + 0x01, 0x30, 0xa6, 0x42, 0xf5, 0xd1, 0xf8, 0xbd, + 0xd0, 0x5c, 0x01, 0x00, 0xc8, 0x3f, 0x01, 0x00, + 0xf7, 0xb5, 0xc4, 0x68, 0x06, 0x1c, 0x00, 0x25, + 0x00, 0x2c, 0x82, 0xb0, 0x23, 0xd0, 0x20, 0x89, + 0x3c, 0x00, 0x80, 0x16, 0x00, 0x00, 0x90, 0x42, + 0x20, 0xd3, 0xe1, 0x68, 0x87, 0x1a, 0x01, 0x91, + 0x00, 0x21, 0xe1, 0x60, 0x03, 0x99, 0x00, 0x20, + 0xff, 0xf7, 0xa1, 0xff, 0x05, 0x1c, 0x20, 0x89, + 0xc0, 0x1b, 0x20, 0x81, 0x2a, 0x68, 0x03, 0x99, + 0x30, 0x1c, 0x00, 0xf0, 0x16, 0xf8, 0x20, 0x89, + 0xc0, 0x19, 0x20, 0x81, 0x01, 0x99, 0x20, 0x1c, + 0xff, 0xf7, 0xb1, 0xfe, 0x21, 0x1c, 0x28, 0x1c, + 0xff, 0xf7, 0x3c, 0x00, 0xbc, 0x16, 0x00, 0x00, + 0xad, 0xfe, 0x29, 0x1c, 0x30, 0x1c, 0xff, 0xf7, + 0xa9, 0xfe, 0x01, 0x20, 0x00, 0x2d, 0x00, 0xd1, + 0x00, 0x20, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xf7, 0xb5, 0x04, 0x1c, 0x0e, 0x1c, 0x00, 0x20, + 0x01, 0xe0, 0x20, 0x1c, 0x0c, 0x1c, 0xe1, 0x68, + 0x00, 0x29, 0xfa, 0xd1, 0x27, 0x89, 0xb7, 0x42, + 0x0a, 0xd3, 0xb8, 0x1b, 0x00, 0x04, 0x00, 0x0c, + 0x20, 0x81, 0x21, 0x68, 0x3c, 0x00, 0xf8, 0x16, + 0x00, 0x00, 0x09, 0x18, 0x02, 0x98, 0x32, 0x1c, + 0xfe, 0xf7, 0xfb, 0xfe, 0xfe, 0xbd, 0xf1, 0x1b, + 0x0d, 0x04, 0x2d, 0x0c, 0x00, 0x28, 0x19, 0xd0, + 0x01, 0x89, 0xa9, 0x42, 0x16, 0xd3, 0x49, 0x1b, + 0x09, 0x04, 0x09, 0x0c, 0x01, 0x81, 0x00, 0x68, + 0x41, 0x18, 0x02, 0x98, 0x2a, 0x1c, 0xfe, 0xf7, + 0xe8, 0xfe, 0x21, 0x68, 0x02, 0x98, 0x72, 0x1b, + 0x40, 0x19, 0xfe, 0xf7, 0xe2, 0xfe, 0x3c, 0x00, + 0x34, 0x17, 0x00, 0x00, 0x20, 0x89, 0xc0, 0x1b, + 0x20, 0x81, 0x20, 0x68, 0xc0, 0x19, 0x20, 0x60, + 0xdf, 0xe7, 0x03, 0x21, 0x8e, 0x20, 0xff, 0xf7, + 0xad, 0xfd, 0xda, 0xe7, 0xf8, 0xb5, 0x04, 0x1c, + 0x00, 0x26, 0x13, 0xe0, 0x21, 0x89, 0x00, 0x20, + 0xff, 0xf7, 0x3e, 0xff, 0x05, 0x1c, 0x22, 0x89, + 0x21, 0x68, 0x00, 0x68, 0xfe, 0xf7, 0xc8, 0xfe, + 0x00, 0x2e, 0x01, 0xd1, 0x2e, 0x1c, 0x03, 0xe0, + 0x3c, 0x00, 0x70, 0x17, 0x00, 0x00, 0x29, 0x1c, + 0x38, 0x1c, 0xff, 0xf7, 0x50, 0xfe, 0xe4, 0x68, + 0x2f, 0x1c, 0x00, 0x2c, 0xe9, 0xd1, 0x30, 0x1c, + 0xf8, 0xbd, 0xb0, 0xb5, 0x04, 0x1c, 0x00, 0x89, + 0x40, 0x1a, 0x05, 0x04, 0x20, 0x68, 0x2d, 0x0c, + 0x40, 0x18, 0x29, 0x1c, 0xff, 0xf7, 0x1f, 0xff, + 0x21, 0x89, 0x49, 0x1b, 0x21, 0x81, 0xe1, 0x68, + 0xc1, 0x60, 0xe0, 0x60, 0xb0, 0xbd, 0x10, 0xb5, + 0x03, 0x30, 0x3c, 0x00, 0xac, 0x17, 0x00, 0x00, + 0x09, 0x4a, 0x81, 0x08, 0x10, 0x68, 0x3d, 0x24, + 0x08, 0x4b, 0x64, 0x01, 0x89, 0x00, 0x09, 0x18, + 0x1b, 0x19, 0x99, 0x42, 0x01, 0xd8, 0x11, 0x60, + 0x10, 0xbd, 0x0f, 0x21, 0x80, 0x20, 0xff, 0xf7, + 0x6b, 0xfd, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0xb4, 0xcf, 0x01, 0x00, 0x14, 0xc8, 0x01, 0x00, + 0x10, 0xb5, 0x11, 0xf0, 0x61, 0xff, 0x04, 0x1c, + 0x03, 0xd1, 0x0d, 0x21, 0x3c, 0x00, 0xe8, 0x17, + 0x00, 0x00, 0x80, 0x20, 0xff, 0xf7, 0x5b, 0xfd, + 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x01, 0x1f, 0x0b, 0x68, 0x0d, 0x48, 0x00, 0x22, + 0x83, 0x42, 0x04, 0xd0, 0x01, 0x32, 0x10, 0x30, + 0x03, 0x2a, 0xf9, 0xd3, 0x01, 0xe0, 0x03, 0x2a, + 0x06, 0xd3, 0x09, 0x24, 0x21, 0x1c, 0x80, 0x20, + 0xff, 0xf7, 0x45, 0xfd, 0x20, 0x1c, 0xb0, 0xbd, + 0x05, 0x4b, 0x00, 0x24, 0x9a, 0x79, 0x3c, 0x00, + 0x24, 0x18, 0x00, 0x00, 0x85, 0x68, 0x0d, 0x60, + 0x81, 0x60, 0x9a, 0x71, 0xf5, 0xe7, 0x00, 0x00, + 0x20, 0x57, 0x01, 0x00, 0x20, 0x10, 0x07, 0x00, + 0xb0, 0xb5, 0x00, 0x21, 0x10, 0x4a, 0x00, 0x23, + 0xd4, 0x68, 0x84, 0x42, 0x04, 0xd2, 0x01, 0x33, + 0x10, 0x32, 0x03, 0x2b, 0xf8, 0xd3, 0x01, 0xe0, + 0x03, 0x2b, 0x01, 0xd3, 0x04, 0x21, 0x0e, 0xe0, + 0x0a, 0x4c, 0xa3, 0x79, 0x90, 0x68, 0x00, 0x28, + 0x3c, 0x00, 0x60, 0x18, 0x00, 0x00, 0x02, 0xd1, + 0xa3, 0x71, 0x03, 0x21, 0x06, 0xe0, 0x05, 0x68, + 0x95, 0x60, 0xa3, 0x71, 0x00, 0x29, 0x01, 0xd1, + 0x04, 0xc0, 0xb0, 0xbd, 0x80, 0x20, 0xff, 0xf7, + 0x14, 0xfd, 0x00, 0x20, 0xb0, 0xbd, 0x20, 0x57, + 0x01, 0x00, 0x20, 0x10, 0x07, 0x00, 0xa0, 0x30, + 0x00, 0x8a, 0x40, 0x07, 0x40, 0x0f, 0x08, 0x28, + 0x0f, 0xd2, 0x01, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x3c, 0x00, 0x9c, 0x18, 0x00, 0x00, + 0x05, 0x03, 0x03, 0x05, 0x07, 0x07, 0x09, 0x09, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x02, 0x20, 0x70, 0x47, 0x03, 0x20, 0x70, 0x47, + 0x04, 0x20, 0x70, 0x47, 0xb0, 0xb5, 0x10, 0x4d, + 0x68, 0x69, 0x00, 0x28, 0x07, 0xd0, 0x0e, 0x49, + 0x00, 0x22, 0x2c, 0x31, 0x03, 0xc9, 0x01, 0x43, + 0x03, 0x20, 0x06, 0xf0, 0xcf, 0xff, 0x0b, 0x4c, + 0x00, 0x22, 0x03, 0xcc, 0x3c, 0x00, 0xd8, 0x18, + 0x00, 0x00, 0x08, 0x3c, 0x01, 0x43, 0x03, 0x20, + 0x06, 0xf0, 0xaf, 0xff, 0x03, 0xcc, 0x08, 0x43, + 0x07, 0x49, 0x4a, 0x68, 0x02, 0x43, 0x4a, 0x60, + 0x8a, 0x68, 0x10, 0x43, 0x88, 0x60, 0x01, 0x20, + 0x68, 0x61, 0xb0, 0xbd, 0x00, 0x00, 0x64, 0x73, + 0x01, 0x00, 0xb0, 0x58, 0x01, 0x00, 0x10, 0x00, + 0x07, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x0f, 0xf0, + 0xa8, 0xfa, 0x05, 0x4d, 0xe8, 0x6a, 0x3c, 0x00, + 0x14, 0x19, 0x00, 0x00, 0x00, 0x28, 0x06, 0xd1, + 0x00, 0x2c, 0x04, 0xd0, 0x20, 0x1c, 0x0f, 0xf0, + 0xb7, 0xfd, 0x01, 0x20, 0x28, 0x70, 0xb0, 0xbd, + 0xf4, 0x6e, 0x01, 0x00, 0x05, 0x49, 0x80, 0xb5, + 0x88, 0x6a, 0x00, 0x28, 0x04, 0xda, 0x00, 0x20, + 0x88, 0x62, 0x01, 0x21, 0x0d, 0xf0, 0x42, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7e, 0x01, 0x00, + 0xf8, 0xb5, 0x1e, 0x4d, 0x04, 0x1c, 0x00, 0x20, + 0x3c, 0x00, 0x50, 0x19, 0x00, 0x00, 0x68, 0x62, + 0xa8, 0x70, 0x1c, 0x48, 0x00, 0x78, 0xc0, 0x07, + 0x22, 0xd5, 0xb8, 0x20, 0x03, 0x59, 0x1a, 0x48, + 0x00, 0x78, 0x0e, 0x28, 0x09, 0xd1, 0x0a, 0x1c, + 0x80, 0x32, 0x06, 0xd0, 0x18, 0x4e, 0x0d, 0x20, + 0x32, 0x5c, 0x8a, 0x42, 0x01, 0xdd, 0x01, 0x38, + 0xfa, 0xd1, 0x59, 0x1e, 0x0b, 0x06, 0x1b, 0x0e, + 0xab, 0x70, 0xab, 0x62, 0x0e, 0x28, 0x0b, 0xd2, + 0x08, 0xe0, 0x3c, 0x00, 0x8c, 0x19, 0x00, 0x00, + 0x62, 0x18, 0xb0, 0x32, 0x12, 0x7b, 0x82, 0x42, + 0x02, 0xd8, 0x58, 0x1a, 0xa8, 0x62, 0x02, 0xe0, + 0x01, 0x39, 0x00, 0x29, 0xf4, 0xda, 0x0e, 0xf0, + 0x35, 0xf9, 0x00, 0x90, 0x00, 0xab, 0x18, 0x78, + 0x59, 0x78, 0x81, 0x42, 0x00, 0xd9, 0x58, 0x78, + 0xed, 0x30, 0xe8, 0x70, 0x01, 0x21, 0x20, 0x1c, + 0x0d, 0xf0, 0x02, 0xfd, 0xf8, 0xbd, 0x00, 0x00, + 0xac, 0x7e, 0x01, 0x00, 0x3c, 0x00, 0xc8, 0x19, + 0x00, 0x00, 0x1d, 0x75, 0x01, 0x00, 0x11, 0x67, + 0x01, 0x00, 0xc7, 0x52, 0x01, 0x00, 0x0e, 0x49, + 0x10, 0xb5, 0x08, 0x69, 0x8b, 0x68, 0xc2, 0x00, + 0xd4, 0x18, 0x62, 0x68, 0x00, 0x2a, 0x0f, 0xd1, + 0x01, 0x30, 0x08, 0x61, 0x07, 0x28, 0x01, 0xd1, + 0x00, 0x20, 0x08, 0x61, 0x20, 0x1c, 0x00, 0xf0, + 0x24, 0xf8, 0x05, 0x48, 0x21, 0x68, 0x54, 0x30, + 0x02, 0x6a, 0xfe, 0xf7, 0xec, 0xfc, 0x3c, 0x00, + 0x04, 0x1a, 0x00, 0x00, 0x10, 0xbd, 0x06, 0x21, + 0x06, 0x20, 0xff, 0xf7, 0x4b, 0xfc, 0x10, 0xbd, + 0x50, 0x6d, 0x01, 0x00, 0x08, 0x49, 0x09, 0x79, + 0xc9, 0x07, 0x08, 0x4a, 0x08, 0xd4, 0x00, 0xe0, + 0x08, 0x1c, 0xc1, 0x68, 0x00, 0x29, 0xfb, 0xd1, + 0x01, 0x89, 0x04, 0x31, 0x01, 0x81, 0x00, 0xe0, + 0x00, 0x20, 0xd0, 0x62, 0x70, 0x47, 0x00, 0x00, + 0x60, 0x80, 0x07, 0x00, 0x04, 0x6c, 0x01, 0x00, + 0x3c, 0x00, 0x40, 0x1a, 0x00, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x19, 0x21, 0x89, 0x01, 0x00, 0x20, + 0xff, 0xf7, 0xc5, 0xfd, 0x01, 0x1c, 0x60, 0x60, + 0x20, 0x68, 0xff, 0xf7, 0xe0, 0xfc, 0x60, 0x68, + 0x21, 0x68, 0x08, 0x30, 0x08, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x0a, 0x28, 0x01, 0xda, 0x04, 0x20, + 0x04, 0xe0, 0x50, 0x28, 0x01, 0xda, 0x05, 0x20, + 0x00, 0xe0, 0x07, 0x20, 0x04, 0x4a, 0x11, 0x78, + 0x38, 0x23, 0x3c, 0x00, 0x7c, 0x1a, 0x00, 0x00, + 0xc0, 0x00, 0x18, 0x40, 0x99, 0x43, 0x08, 0x43, + 0x10, 0x70, 0x70, 0x47, 0x88, 0x00, 0x07, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x07, 0x48, 0x40, 0x68, + 0x08, 0xe0, 0x01, 0x69, 0xa9, 0x42, 0x04, 0xd1, + 0x44, 0x68, 0x05, 0xf0, 0xc7, 0xfd, 0x20, 0x1c, + 0x00, 0xe0, 0x40, 0x68, 0x00, 0x28, 0xf4, 0xd1, + 0xb0, 0xbd, 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, + 0xf8, 0xb5, 0x00, 0x25, 0x3c, 0x00, 0xb8, 0x1a, + 0x00, 0x00, 0x06, 0xf0, 0x84, 0xfd, 0x11, 0x4f, + 0x04, 0x1c, 0xbe, 0x79, 0x20, 0x68, 0x00, 0x28, + 0x07, 0xd1, 0xa0, 0x88, 0x04, 0x30, 0xff, 0xf7, + 0xf2, 0xf8, 0x00, 0x28, 0x06, 0xd1, 0x01, 0x21, + 0x0f, 0xe0, 0x01, 0x68, 0x21, 0x60, 0xa1, 0x69, + 0x01, 0x39, 0xa1, 0x61, 0x10, 0xc0, 0x05, 0x1c, + 0x20, 0x69, 0x01, 0x30, 0x20, 0x61, 0x61, 0x69, + 0x40, 0x1a, 0xe1, 0x68, 0x88, 0x42, 0x3c, 0x00, + 0xf4, 0x1a, 0x00, 0x00, 0x03, 0xd9, 0x07, 0x21, + 0x8e, 0x20, 0xff, 0xf7, 0xd3, 0xfb, 0xbe, 0x71, + 0x28, 0x1c, 0xf8, 0xbd, 0x20, 0x10, 0x07, 0x00, + 0xb0, 0xb5, 0x09, 0xf0, 0xbb, 0xff, 0x2f, 0x4c, + 0x00, 0x28, 0x20, 0x74, 0x03, 0xd0, 0x01, 0x21, + 0x01, 0x20, 0x0a, 0xf0, 0x71, 0xfc, 0x2b, 0x4d, + 0x14, 0x35, 0x28, 0x68, 0x00, 0x28, 0x4d, 0xd0, + 0x01, 0x21, 0x0f, 0x20, 0x11, 0xf0, 0x82, 0xfd, + 0x3c, 0x00, 0x30, 0x1b, 0x00, 0x00, 0x28, 0x89, + 0x08, 0xf0, 0xfb, 0xff, 0x01, 0x1c, 0x01, 0x22, + 0x0f, 0x20, 0x11, 0xf0, 0x40, 0xfd, 0xe0, 0x78, + 0x01, 0x25, 0x02, 0x28, 0x36, 0xd1, 0x0a, 0xf0, + 0xc6, 0xf8, 0x00, 0x28, 0x0a, 0xd0, 0x0b, 0xf0, + 0x92, 0xfb, 0x1e, 0x49, 0x09, 0x68, 0x40, 0x18, + 0x11, 0xf0, 0x5f, 0xf8, 0x00, 0x28, 0x01, 0xd1, + 0x02, 0x20, 0x2f, 0xe0, 0xe0, 0x78, 0x02, 0x28, + 0x24, 0xd1, 0x3c, 0x00, 0x6c, 0x1b, 0x00, 0x00, + 0x60, 0x70, 0x25, 0x70, 0x60, 0x68, 0x01, 0x28, + 0x1c, 0xd0, 0x15, 0x48, 0x10, 0x38, 0x81, 0x7b, + 0x00, 0x29, 0x04, 0xd1, 0x85, 0x73, 0x0f, 0x20, + 0x13, 0x49, 0x10, 0xf0, 0x01, 0xfc, 0x08, 0xf0, + 0x4f, 0xfe, 0x00, 0x28, 0x07, 0xd0, 0x0e, 0x48, + 0x01, 0x21, 0x98, 0x38, 0x00, 0x69, 0x01, 0xf0, + 0xb7, 0xfd, 0x00, 0x28, 0x05, 0xd0, 0x01, 0x20, + 0x0e, 0xf0, 0x0c, 0xfd, 0x3c, 0x00, 0xa8, 0x1b, + 0x00, 0x00, 0x01, 0x20, 0x0e, 0xf0, 0x1d, 0xfc, + 0xb0, 0xbd, 0x05, 0xf0, 0xdc, 0xfe, 0xb0, 0xbd, + 0xe0, 0x78, 0x00, 0x28, 0x01, 0xd1, 0x25, 0x70, + 0xf7, 0xe7, 0x03, 0x20, 0x00, 0xe0, 0x04, 0x20, + 0x0d, 0xf0, 0x8d, 0xfa, 0xb0, 0xbd, 0x84, 0x66, + 0x01, 0x00, 0x6c, 0x57, 0x01, 0x00, 0xe9, 0x03, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x00, 0x21, + 0x00, 0x20, 0x0a, 0x4d, 0x00, 0xe0, 0x3c, 0x00, + 0xe4, 0x1b, 0x00, 0x00, 0x01, 0x31, 0xcb, 0x00, + 0x5a, 0x19, 0x16, 0x79, 0x01, 0x2e, 0x02, 0xd0, + 0x52, 0x79, 0xa2, 0x42, 0x02, 0xd0, 0x0b, 0x29, + 0xf4, 0xd3, 0x70, 0xbd, 0x0b, 0x29, 0xfc, 0xd2, + 0xc8, 0x00, 0x01, 0x21, 0x5a, 0x19, 0x28, 0x58, + 0x11, 0x71, 0x70, 0xbd, 0x38, 0x58, 0x01, 0x00, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x7f, 0x24, 0x23, + 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, 0x00, 0x6a, + 0x3c, 0x00, 0x20, 0x1c, 0x00, 0x00, 0xfe, 0xf7, + 0xda, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x94, 0x46, 0x01, 0x00, 0x80, 0xb5, + 0x04, 0xf0, 0x37, 0xff, 0x00, 0x20, 0x11, 0xf0, + 0x84, 0xfc, 0x00, 0x20, 0x80, 0xbd, 0xb0, 0xb5, + 0x05, 0x4c, 0x05, 0x1c, 0x20, 0x6b, 0xe1, 0x6a, + 0x02, 0xf0, 0xe3, 0xfd, 0x29, 0x1c, 0xa0, 0x6a, + 0x02, 0xf0, 0x11, 0xfb, 0xb0, 0xbd, 0xa4, 0x6c, + 0x01, 0x00, 0x3c, 0x00, 0x5c, 0x1c, 0x00, 0x00, + 0xb0, 0xb5, 0x03, 0x1c, 0x08, 0x1c, 0x14, 0x1c, + 0x00, 0x2b, 0x0c, 0x4d, 0x09, 0xd0, 0x69, 0x69, + 0x89, 0x00, 0x01, 0x31, 0x0a, 0x04, 0x12, 0x0c, + 0x22, 0x80, 0x29, 0x1c, 0xfe, 0xf7, 0x3e, 0xfc, + 0x0a, 0xe0, 0x01, 0x1c, 0x28, 0x1c, 0x22, 0x88, + 0xfe, 0xf7, 0x38, 0xfc, 0x20, 0x88, 0x01, 0x28, + 0x02, 0xd9, 0x80, 0x08, 0x01, 0x38, 0x68, 0x61, + 0x01, 0x20, 0xb0, 0xbd, 0x3c, 0x00, 0x98, 0x1c, + 0x00, 0x00, 0x20, 0x6e, 0x01, 0x00, 0xf1, 0xb5, + 0x00, 0x98, 0x00, 0x26, 0xc1, 0x68, 0x08, 0x68, + 0x09, 0x89, 0x1c, 0x29, 0x34, 0xd3, 0xc1, 0x88, + 0xff, 0x23, 0x01, 0x33, 0x99, 0x42, 0x2f, 0xd1, + 0x01, 0x88, 0xc9, 0x1a, 0x2c, 0xd1, 0x41, 0x88, + 0x08, 0x29, 0x29, 0xd1, 0x01, 0x79, 0x06, 0x29, + 0x26, 0xd1, 0x41, 0x79, 0x04, 0x29, 0x23, 0xd1, + 0x00, 0x25, 0x00, 0x24, 0x07, 0x1c, 0x3c, 0x00, + 0xd4, 0x1c, 0x00, 0x00, 0x18, 0x37, 0x0b, 0xe0, + 0xa0, 0x00, 0x41, 0x18, 0x04, 0x31, 0x04, 0x22, + 0x38, 0x1c, 0xfe, 0xf7, 0x8b, 0xfb, 0x00, 0x28, + 0x01, 0xd1, 0x01, 0x25, 0x04, 0xe0, 0x01, 0x34, + 0x0a, 0x49, 0x48, 0x69, 0xa0, 0x42, 0xef, 0xd8, + 0x08, 0x49, 0x08, 0x78, 0x00, 0x28, 0x0a, 0xd0, + 0x01, 0x28, 0x01, 0xd0, 0x02, 0x28, 0x06, 0xd1, + 0x00, 0x2d, 0x04, 0xd1, 0x00, 0x98, 0xc0, 0x68, + 0x3c, 0x00, 0x10, 0x1d, 0x00, 0x00, 0xff, 0xf7, + 0x42, 0xfc, 0x01, 0x26, 0x30, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x20, 0x6e, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x68, 0x70, 0x47, 0x00, 0x00, 0x20, 0x6e, + 0x01, 0x00, 0x02, 0x49, 0x48, 0x60, 0x01, 0x20, + 0x48, 0x61, 0x70, 0x47, 0x00, 0x00, 0x20, 0x6e, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x01, 0x26, + 0x03, 0xf0, 0xef, 0xfa, 0x25, 0x1c, 0x10, 0x35, + 0x00, 0x28, 0x3c, 0x00, 0x4c, 0x1d, 0x00, 0x00, + 0x04, 0xd0, 0x00, 0x20, 0x20, 0x77, 0x03, 0xf0, + 0xf1, 0xfb, 0x07, 0xe0, 0x03, 0xf0, 0x38, 0xfd, + 0x00, 0x28, 0x09, 0xd0, 0x01, 0x20, 0x20, 0x77, + 0x03, 0xf0, 0xce, 0xfc, 0x01, 0x1c, 0x06, 0x22, + 0x28, 0x1c, 0xfe, 0xf7, 0xc3, 0xfb, 0x02, 0xe0, + 0x02, 0x20, 0x20, 0x77, 0x00, 0x26, 0x30, 0x1c, + 0x70, 0xbd, 0x00, 0x00, 0x03, 0x48, 0x80, 0x7a, + 0xc0, 0x07, 0x03, 0x49, 0x3c, 0x00, 0x88, 0x1d, + 0x00, 0x00, 0xc0, 0x0f, 0x88, 0x62, 0x70, 0x47, + 0x00, 0x00, 0x40, 0x90, 0x07, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, 0x88, 0x62, + 0x70, 0x47, 0xa4, 0x6c, 0x01, 0x00, 0x06, 0x48, + 0x80, 0x7a, 0xc1, 0x07, 0x06, 0x4a, 0xc9, 0x0f, + 0x91, 0x62, 0x20, 0x21, 0x80, 0x07, 0x00, 0xd4, + 0x00, 0x21, 0xa0, 0x32, 0x11, 0x70, 0x70, 0x47, + 0x00, 0x00, 0x40, 0x90, 0x07, 0x00, 0x3c, 0x00, + 0xc4, 0x1d, 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x07, 0x4a, 0x12, 0x68, 0x07, 0x4b, 0x9b, 0x69, + 0x1a, 0x40, 0x01, 0xd0, 0x01, 0x22, 0x00, 0xe0, + 0x00, 0x22, 0x0a, 0x60, 0x01, 0x21, 0x00, 0x2a, + 0x00, 0xd0, 0x00, 0x21, 0x01, 0x60, 0x70, 0x47, + 0x10, 0x00, 0x07, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x01, 0x22, 0x02, 0x60, 0x0a, 0x60, 0x70, 0x47, + 0xb0, 0xb5, 0x0d, 0x1c, 0x01, 0x1c, 0x58, 0x31, + 0x3c, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x04, 0x1c, + 0x06, 0x22, 0x28, 0x1d, 0xfe, 0xf7, 0x77, 0xfb, + 0x21, 0x1c, 0x5e, 0x31, 0x06, 0x22, 0x28, 0x1c, + 0x0a, 0x30, 0xfe, 0xf7, 0x70, 0xfb, 0x21, 0x1c, + 0x64, 0x31, 0x06, 0x22, 0x28, 0x1c, 0x10, 0x30, + 0xfe, 0xf7, 0x69, 0xfb, 0xb0, 0xbd, 0xfe, 0xb5, + 0x00, 0x25, 0x1d, 0x72, 0x17, 0x1c, 0x0e, 0x1c, + 0xb2, 0x6d, 0x00, 0x21, 0x92, 0x19, 0x50, 0x32, + 0xd2, 0x7a, 0x3c, 0x00, 0x3c, 0x1e, 0x00, 0x00, + 0x1c, 0x1c, 0x5a, 0x72, 0x00, 0x78, 0x32, 0x1c, + 0x80, 0x32, 0xc0, 0x07, 0xc0, 0x17, 0x01, 0x30, + 0x01, 0x90, 0x08, 0x98, 0x02, 0x92, 0x00, 0x28, + 0x01, 0xd1, 0x30, 0x7f, 0x2b, 0xe0, 0x37, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x00, 0xdd, 0x01, 0x1c, + 0x01, 0x98, 0x00, 0x28, 0x02, 0xd0, 0x08, 0x98, + 0x01, 0x28, 0x10, 0xd1, 0x02, 0x9a, 0x90, 0x6b, + 0x00, 0x28, 0x06, 0xd0, 0x3c, 0x00, 0x78, 0x1e, + 0x00, 0x00, 0x88, 0x42, 0x01, 0xd9, 0x45, 0x1a, + 0x01, 0x3d, 0x70, 0x19, 0xb0, 0x30, 0x03, 0xe0, + 0xb5, 0x6d, 0x01, 0x3d, 0x70, 0x19, 0x50, 0x30, + 0x00, 0x7b, 0x0f, 0xe0, 0x02, 0x9a, 0x10, 0x6a, + 0x00, 0x28, 0x07, 0xd0, 0x88, 0x42, 0x01, 0xd9, + 0x45, 0x1a, 0x01, 0x3d, 0x70, 0x19, 0xa0, 0x30, + 0x00, 0x79, 0x03, 0xe0, 0xbd, 0x69, 0x01, 0x3d, + 0x78, 0x19, 0x00, 0x7f, 0xa0, 0x72, 0x3c, 0x00, + 0xb4, 0x1e, 0x00, 0x00, 0x0e, 0xf0, 0x0c, 0xf8, + 0x0e, 0x28, 0x11, 0xd1, 0xa0, 0x7a, 0x08, 0xf0, + 0x67, 0xff, 0x00, 0x28, 0x0c, 0xd0, 0x78, 0x68, + 0x00, 0x28, 0x05, 0xd1, 0x1b, 0x48, 0x00, 0x25, + 0x00, 0x78, 0x08, 0xf0, 0x4b, 0xff, 0x02, 0xe0, + 0x45, 0x1e, 0x78, 0x19, 0x00, 0x7a, 0xa0, 0x72, + 0x02, 0x9a, 0x50, 0x69, 0x00, 0x28, 0x17, 0xd0, + 0x08, 0x98, 0x01, 0x28, 0x14, 0xd0, 0xa0, 0x7a, + 0x3c, 0x00, 0xf0, 0x1e, 0x00, 0x00, 0x08, 0xf0, + 0x4e, 0xff, 0x00, 0x28, 0x0f, 0xd0, 0x01, 0x98, + 0x00, 0x28, 0x07, 0xd0, 0x02, 0x20, 0x20, 0x72, + 0x70, 0x6c, 0x80, 0x19, 0x40, 0x30, 0xc0, 0x79, + 0x60, 0x72, 0x04, 0xe0, 0x7d, 0x68, 0x01, 0x3d, + 0x78, 0x19, 0x00, 0x7a, 0xa0, 0x72, 0x02, 0x9a, + 0xa0, 0x7a, 0x91, 0x69, 0x08, 0xf0, 0x51, 0xff, + 0x20, 0x60, 0x02, 0x9a, 0x60, 0x7a, 0x91, 0x69, + 0x08, 0xf0, 0x3c, 0x00, 0x2c, 0x1f, 0x00, 0x00, + 0x4b, 0xff, 0x60, 0x60, 0xa0, 0x7a, 0xe0, 0x72, + 0x25, 0x73, 0xfe, 0xbd, 0xd4, 0x7e, 0x01, 0x00, + 0x90, 0x57, 0x01, 0x00, 0x00, 0x06, 0x00, 0x0e, + 0x00, 0x2a, 0x8c, 0xb5, 0x01, 0xd0, 0x8a, 0x22, + 0x00, 0xe0, 0x88, 0x22, 0x00, 0xab, 0x1a, 0x80, + 0x0c, 0xf0, 0xc2, 0xf8, 0x01, 0x90, 0x68, 0x46, + 0x0b, 0xf0, 0xbc, 0xfa, 0x8c, 0xbd, 0x00, 0x00, + 0x01, 0x1c, 0x08, 0x48, 0x3c, 0x00, 0x68, 0x1f, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x68, 0x00, 0x28, + 0x09, 0xd0, 0x49, 0x68, 0x02, 0x20, 0x00, 0x29, + 0x00, 0xd1, 0x01, 0x20, 0x01, 0x06, 0x09, 0x0e, + 0x00, 0x20, 0x06, 0xf0, 0xd8, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x20, 0x67, 0x01, 0x00, 0x1c, 0xb5, + 0x01, 0x90, 0x04, 0x1c, 0x44, 0x30, 0x01, 0xaa, + 0x69, 0x46, 0x11, 0xf0, 0xb8, 0xfd, 0x00, 0x28, + 0x0b, 0xd0, 0xa0, 0x69, 0x00, 0x21, 0x3c, 0x00, + 0xa4, 0x1f, 0x00, 0x00, 0xc2, 0x07, 0xd2, 0x0f, + 0x02, 0x20, 0xff, 0xf7, 0xc9, 0xff, 0x00, 0x21, + 0x20, 0x1c, 0x0f, 0xf0, 0xd9, 0xfe, 0x1c, 0xbd, + 0x04, 0x21, 0x98, 0x20, 0xff, 0xf7, 0x72, 0xf9, + 0xf9, 0xe7, 0x00, 0x00, 0x8c, 0xb5, 0x00, 0xab, + 0x84, 0x21, 0x19, 0x80, 0x05, 0x4b, 0x02, 0x1c, + 0x18, 0x1c, 0x99, 0x8a, 0x0c, 0xf0, 0x8e, 0xf8, + 0x01, 0x90, 0x68, 0x46, 0x0b, 0xf0, 0x7c, 0xfa, + 0x3c, 0x00, 0xe0, 0x1f, 0x00, 0x00, 0x8c, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x06, 0x49, 0x80, 0xb5, 0xc9, 0x68, + 0x14, 0x23, 0x40, 0x31, 0x89, 0x7a, 0x04, 0x4a, + 0x59, 0x43, 0x89, 0x18, 0x80, 0x00, 0x08, 0x58, + 0xfe, 0xf7, 0xe9, 0xf9, 0x80, 0xbd, 0x70, 0x7c, + 0x01, 0x00, 0x54, 0x47, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x20, 0xff, 0xf7, 0xd6, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x20, 0x00, 0x00, + 0x80, 0xb5, 0x12, 0x48, 0x11, 0x49, 0x80, 0x8a, + 0x0a, 0x8b, 0x00, 0x21, 0x00, 0x28, 0xc2, 0xb0, + 0x0c, 0xd1, 0x01, 0x2a, 0x05, 0xd0, 0x02, 0x2a, + 0x15, 0xd0, 0x00, 0xab, 0x5a, 0x80, 0x0e, 0x22, + 0x07, 0xe0, 0x02, 0x22, 0x00, 0xab, 0x5a, 0x80, + 0x99, 0x80, 0x04, 0xe0, 0x00, 0xab, 0x5a, 0x80, + 0x0d, 0x22, 0x00, 0xab, 0x9a, 0x80, 0x00, 0xab, + 0x18, 0x80, 0xff, 0x20, 0x3c, 0x00, 0x58, 0x20, + 0x00, 0x00, 0x98, 0x71, 0xd9, 0x71, 0x68, 0x46, + 0x00, 0xf0, 0xd1, 0xf9, 0x42, 0xb0, 0x80, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x09, 0xf0, 0x5f, 0xfc, 0x00, 0x20, 0x05, 0xf0, + 0x2a, 0xf9, 0x03, 0x4c, 0xe0, 0x8a, 0x05, 0xf0, + 0x36, 0xf9, 0x20, 0x1c, 0x0f, 0xf0, 0xb3, 0xfe, + 0x10, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x1c, 0xb5, + 0x09, 0xf0, 0x4f, 0xfc, 0x07, 0x20, 0x3c, 0x00, + 0x94, 0x20, 0x00, 0x00, 0x00, 0xab, 0x07, 0x4c, + 0x18, 0x80, 0xe1, 0x8a, 0x20, 0x1c, 0x0c, 0xf0, + 0x0b, 0xf8, 0x01, 0x90, 0x68, 0x46, 0x0b, 0xf0, + 0x17, 0xfa, 0x20, 0x1c, 0x0f, 0xf0, 0x9e, 0xfe, + 0x1c, 0xbd, 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x98, 0x20, 0xff, 0xf7, + 0xf1, 0xf8, 0x80, 0xbd, 0x10, 0xb5, 0x15, 0x4c, + 0xc2, 0xb0, 0xa0, 0x8a, 0x00, 0x28, 0x03, 0xd0, + 0x3c, 0x00, 0xd0, 0x20, 0x00, 0x00, 0x01, 0x28, + 0x1e, 0xd1, 0x02, 0x20, 0x00, 0xe0, 0x01, 0x20, + 0xe1, 0x68, 0x40, 0x31, 0x88, 0x72, 0x20, 0x69, + 0x08, 0xf0, 0x23, 0xfd, 0x02, 0x1c, 0x0c, 0x48, + 0x18, 0x38, 0x80, 0x88, 0xe1, 0x68, 0x0f, 0xf0, + 0xa4, 0xfe, 0xa0, 0x8a, 0x00, 0xab, 0x18, 0x80, + 0x01, 0x20, 0x58, 0x80, 0x00, 0x20, 0x98, 0x80, + 0xff, 0x21, 0x99, 0x71, 0xd8, 0x71, 0x68, 0x46, + 0x00, 0xf0, 0x3c, 0x00, 0x0c, 0x21, 0x00, 0x00, + 0x7b, 0xf9, 0x42, 0xb0, 0x10, 0xbd, 0x03, 0x21, + 0x98, 0x20, 0xff, 0xf7, 0xc5, 0xf8, 0xf8, 0xe7, + 0x70, 0x7c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0x03, 0x48, 0x0f, 0xf0, 0x60, 0xfe, + 0x00, 0x20, 0x05, 0xf0, 0xcd, 0xf8, 0x80, 0xbd, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x48, + 0x0f, 0xf0, 0x56, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0x70, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0x48, 0x21, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0x21, 0x98, 0x20, + 0xff, 0xf7, 0xa9, 0xf8, 0x80, 0xbd, 0x80, 0xb5, + 0x03, 0x20, 0xff, 0xf7, 0x34, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0xf0, 0xb5, 0x21, 0x4e, 0x00, 0x27, + 0xb1, 0x8a, 0x30, 0x1c, 0x00, 0x25, 0x04, 0x24, + 0x00, 0x29, 0x00, 0x8b, 0xc3, 0xb0, 0x1e, 0xd1, + 0x01, 0x28, 0x07, 0xd0, 0x31, 0x1c, 0x49, 0x8b, + 0x02, 0x28, 0x12, 0xd1, 0x00, 0x29, 0x3c, 0x00, + 0x84, 0x21, 0x00, 0x00, 0x07, 0xd1, 0x00, 0x24, + 0x05, 0xe0, 0x00, 0x24, 0x01, 0x25, 0x02, 0x20, + 0x00, 0xab, 0xd8, 0x80, 0x1f, 0x81, 0x0f, 0xf0, + 0x7f, 0xff, 0x00, 0x2c, 0x10, 0xd1, 0xf1, 0x68, + 0x05, 0x20, 0x40, 0x31, 0x88, 0x72, 0x0e, 0xe0, + 0x00, 0x29, 0x1a, 0xd1, 0x00, 0xab, 0xd8, 0x80, + 0x0e, 0x20, 0x02, 0xe0, 0x00, 0xab, 0xd8, 0x80, + 0x0d, 0x20, 0x00, 0xab, 0x18, 0x81, 0x07, 0xe0, + 0x3c, 0x00, 0xc0, 0x21, 0x00, 0x00, 0x30, 0x1c, + 0x0f, 0xf0, 0x13, 0xfe, 0x20, 0x1c, 0xff, 0xf7, + 0xfc, 0xfe, 0x00, 0x2d, 0x08, 0xd0, 0xb0, 0x8a, + 0x00, 0xab, 0x98, 0x80, 0xff, 0x20, 0x98, 0x72, + 0xdf, 0x72, 0x01, 0xa8, 0x00, 0xf0, 0x11, 0xf9, + 0x43, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0x10, 0xb5, 0x00, 0x20, 0x05, 0xf0, + 0x6c, 0xf8, 0x04, 0x4c, 0xe0, 0x8a, 0x05, 0xf0, + 0x78, 0xf8, 0x3c, 0x00, 0xfc, 0x21, 0x00, 0x00, + 0x0f, 0xf0, 0x4c, 0xff, 0x20, 0x1c, 0x0f, 0xf0, + 0xf3, 0xfd, 0x10, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x80, 0xb5, 0x04, 0x20, 0xff, 0xf7, 0xd8, 0xfe, + 0x01, 0x48, 0x0f, 0xf0, 0xe9, 0xfd, 0x80, 0xbd, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x20, + 0xff, 0xf7, 0xce, 0xfe, 0x01, 0x20, 0x05, 0xf0, + 0x5f, 0xf8, 0x02, 0x48, 0x0f, 0xf0, 0xdc, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x22, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, + 0x03, 0x20, 0xff, 0xf7, 0xc0, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x1d, 0x4d, 0xc2, 0xb0, + 0x28, 0x8b, 0x00, 0xab, 0xff, 0x21, 0x58, 0x80, + 0x99, 0x71, 0x00, 0x21, 0xd9, 0x71, 0xaa, 0x8a, + 0x00, 0x24, 0x01, 0x2a, 0x18, 0xd1, 0x2a, 0x1c, + 0x52, 0x8b, 0x02, 0x28, 0x0f, 0xd1, 0x00, 0x2a, + 0x16, 0xd1, 0x03, 0x20, 0x58, 0x80, 0x3c, 0x00, + 0x74, 0x22, 0x00, 0x00, 0x99, 0x80, 0x2c, 0x1c, + 0xff, 0x22, 0x98, 0x1d, 0xe9, 0x69, 0xfe, 0xf7, + 0x3b, 0xf9, 0xe1, 0x68, 0x04, 0x20, 0x40, 0x31, + 0x88, 0x72, 0x10, 0xe0, 0x00, 0x2a, 0x06, 0xd1, + 0x01, 0x24, 0x0e, 0x20, 0x01, 0xe0, 0x01, 0x24, + 0x0d, 0x20, 0x00, 0xab, 0x98, 0x80, 0x28, 0x1c, + 0x0f, 0xf0, 0xa4, 0xfd, 0x04, 0x20, 0xff, 0xf7, + 0x8d, 0xfe, 0x00, 0x2c, 0x05, 0xd0, 0xa8, 0x8a, + 0x3c, 0x00, 0xb0, 0x22, 0x00, 0x00, 0x00, 0xab, + 0x18, 0x80, 0x68, 0x46, 0x00, 0xf0, 0xa5, 0xf8, + 0x42, 0xb0, 0xb0, 0xbd, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0x10, 0xb5, 0x00, 0x20, 0x05, 0xf0, + 0x00, 0xf8, 0x03, 0x4c, 0xe0, 0x8a, 0x05, 0xf0, + 0x0c, 0xf8, 0x20, 0x1c, 0x0f, 0xf0, 0x89, 0xfd, + 0x10, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, + 0x04, 0x20, 0xff, 0xf7, 0x6e, 0xfe, 0x01, 0x48, + 0x0f, 0xf0, 0x3c, 0x00, 0xec, 0x22, 0x00, 0x00, + 0x7f, 0xfd, 0x80, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x20, 0xff, 0xf7, 0x64, 0xfe, + 0x01, 0x20, 0x04, 0xf0, 0xf5, 0xff, 0x02, 0x48, + 0x0f, 0xf0, 0x72, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x03, 0x20, + 0xff, 0xf7, 0x56, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x19, 0x4d, 0x04, 0x24, 0xa9, 0x8a, + 0x28, 0x1c, 0x02, 0x8b, 0x3c, 0x00, 0x28, 0x23, + 0x00, 0x00, 0xc2, 0xb0, 0x01, 0x29, 0x14, 0xd1, + 0x40, 0x8b, 0x04, 0x2a, 0x0b, 0xd1, 0x00, 0x28, + 0x00, 0xd1, 0x00, 0x24, 0x0f, 0xf0, 0xad, 0xfe, + 0x00, 0x2c, 0x19, 0xd1, 0xe9, 0x68, 0x05, 0x20, + 0x40, 0x31, 0x88, 0x72, 0x17, 0xe0, 0x00, 0x28, + 0x10, 0xd1, 0x00, 0xab, 0x5a, 0x80, 0x0e, 0x20, + 0x02, 0xe0, 0x00, 0xab, 0x5a, 0x80, 0x0d, 0x20, + 0x00, 0xab, 0x98, 0x80, 0x19, 0x80, 0x3c, 0x00, + 0x64, 0x23, 0x00, 0x00, 0xff, 0x20, 0x98, 0x71, + 0x00, 0x20, 0xd8, 0x71, 0x68, 0x46, 0x00, 0xf0, + 0x49, 0xf8, 0x42, 0xb0, 0xb0, 0xbd, 0x28, 0x1c, + 0x0f, 0xf0, 0x38, 0xfd, 0x20, 0x1c, 0xff, 0xf7, + 0x21, 0xfe, 0xf6, 0xe7, 0x70, 0x7c, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x20, 0x04, 0xf0, 0x9e, 0xff, + 0x03, 0x4c, 0xe0, 0x8a, 0x04, 0xf0, 0xaa, 0xff, + 0x20, 0x1c, 0x0f, 0xf0, 0x27, 0xfd, 0x10, 0xbd, + 0x3c, 0x00, 0xa0, 0x23, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0x80, 0xb5, 0x04, 0x20, 0xff, 0xf7, + 0x0c, 0xfe, 0x01, 0x48, 0x0f, 0xf0, 0x1d, 0xfd, + 0x80, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x20, 0xff, 0xf7, 0x02, 0xfe, 0x01, 0x20, + 0x04, 0xf0, 0x93, 0xff, 0x02, 0x48, 0x0f, 0xf0, + 0x10, 0xfd, 0x80, 0xbd, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x01, 0x1c, + 0x44, 0x31, 0x3c, 0x00, 0xdc, 0x23, 0x00, 0x00, + 0x04, 0x1c, 0x06, 0x22, 0x28, 0x1c, 0xfe, 0xf7, + 0x89, 0xf8, 0xec, 0x60, 0x20, 0x69, 0x03, 0xf0, + 0x97, 0xf8, 0x01, 0x1c, 0x06, 0x22, 0xa8, 0x18, + 0xfe, 0xf7, 0x80, 0xf8, 0x04, 0x20, 0xff, 0xf7, + 0xf7, 0xfd, 0xb0, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x90, 0xb5, 0x04, 0x1c, 0x80, 0x88, 0x93, 0xb0, + 0x00, 0x28, 0x06, 0xd0, 0x15, 0x49, 0x06, 0x22, + 0x48, 0x80, 0x18, 0x31, 0x3c, 0x00, 0x18, 0x24, + 0x00, 0x00, 0x88, 0x1f, 0xfe, 0xf7, 0x6d, 0xf8, + 0x68, 0x46, 0x0c, 0xf0, 0x14, 0xf8, 0x20, 0x88, + 0x01, 0x28, 0x08, 0xd1, 0x60, 0x88, 0x03, 0x28, + 0x05, 0xd1, 0xa0, 0x88, 0x00, 0x28, 0x02, 0xd1, + 0x06, 0x20, 0x0c, 0xa9, 0x08, 0x70, 0xa0, 0x79, + 0x06, 0x21, 0xff, 0x28, 0x04, 0xd0, 0xe0, 0x79, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x1c, 0x08, 0x31, + 0x0b, 0x20, 0x08, 0xaa, 0x50, 0x72, 0x3c, 0x00, + 0x54, 0x24, 0x00, 0x00, 0x20, 0x1c, 0x08, 0xf0, + 0x3b, 0xff, 0x03, 0x90, 0x68, 0x46, 0x0b, 0xf0, + 0x31, 0xf8, 0x13, 0xb0, 0x90, 0xbd, 0x00, 0x00, + 0x58, 0x7c, 0x01, 0x00, 0x07, 0x4b, 0x1a, 0x78, + 0x82, 0x42, 0x01, 0xd0, 0x00, 0x29, 0x07, 0xd0, + 0xff, 0x20, 0x18, 0x70, 0x04, 0x48, 0x01, 0x88, + 0x01, 0x22, 0x52, 0x03, 0x91, 0x43, 0x01, 0x80, + 0x70, 0x47, 0x00, 0x00, 0x4c, 0x7b, 0x01, 0x00, + 0x3c, 0x00, 0x90, 0x24, 0x00, 0x00, 0x32, 0x80, + 0x07, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x0c, 0x23, + 0x07, 0x49, 0x58, 0x43, 0x40, 0x18, 0x00, 0x79, + 0x0a, 0xf0, 0x4f, 0xf9, 0x01, 0x20, 0x03, 0x49, + 0xa0, 0x40, 0x08, 0x39, 0x0a, 0x78, 0x10, 0x43, + 0x08, 0x70, 0x10, 0xbd, 0x00, 0x00, 0x74, 0x7a, + 0x01, 0x00, 0x03, 0x4a, 0x00, 0x21, 0x11, 0x54, + 0x80, 0x00, 0x30, 0x32, 0x10, 0x58, 0x01, 0x70, + 0x70, 0x47, 0x3c, 0x00, 0xcc, 0x24, 0x00, 0x00, + 0xe0, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xfe, 0xf7, 0x12, 0xff, + 0x20, 0x1c, 0xff, 0xf7, 0xed, 0xff, 0x00, 0x21, + 0x20, 0x1c, 0x0e, 0xf0, 0x89, 0xfb, 0x10, 0xbd, + 0x05, 0x49, 0x80, 0xb5, 0x88, 0x60, 0x08, 0x7f, + 0x24, 0x23, 0x04, 0x49, 0x58, 0x43, 0x08, 0x58, + 0xfd, 0xf7, 0x6c, 0xff, 0x80, 0xbd, 0x00, 0x00, + 0xd4, 0x79, 0x01, 0x00, 0x3c, 0x00, 0x08, 0x25, + 0x00, 0x00, 0x94, 0x46, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x21, 0x91, 0x20, 0xfe, 0xf7, 0xc7, 0xfe, + 0x80, 0xbd, 0x02, 0x4a, 0x11, 0x68, 0x81, 0x43, + 0x11, 0x60, 0x70, 0x47, 0x00, 0x00, 0x78, 0x6e, + 0x01, 0x00, 0x80, 0xb5, 0xfe, 0xf7, 0xe9, 0xfe, + 0x80, 0xbd, 0x80, 0xb5, 0xfe, 0xf7, 0xe5, 0xfe, + 0x80, 0xbd, 0x80, 0xb5, 0x00, 0xf0, 0x31, 0xfa, + 0x80, 0xbd, 0x03, 0x49, 0x80, 0xb5, 0x3c, 0x00, + 0x44, 0x25, 0x00, 0x00, 0x04, 0x20, 0x88, 0x60, + 0x00, 0xf0, 0xd0, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x99, 0xfa, 0x80, 0xbd, 0x80, 0xb5, 0x00, 0xf0, + 0x99, 0xfb, 0x80, 0xbd, 0x38, 0xb5, 0x20, 0x28, + 0x15, 0xd2, 0x0d, 0x4c, 0x22, 0x1c, 0x20, 0x32, + 0x95, 0x79, 0x00, 0xab, 0x1d, 0x70, 0xd2, 0x79, + 0x5a, 0x70, 0x0a, 0x4b, 0x82, 0x00, 0x99, 0x50, + 0x3c, 0x00, 0x80, 0x25, 0x00, 0x00, 0x01, 0x21, + 0x81, 0x40, 0x08, 0x48, 0x01, 0x60, 0x42, 0x68, + 0x11, 0x43, 0x41, 0x60, 0x00, 0xab, 0x18, 0x88, + 0xe0, 0x84, 0x38, 0xbd, 0x01, 0x21, 0xff, 0x20, + 0xfe, 0xf7, 0x83, 0xfe, 0xf9, 0xe7, 0x00, 0x10, + 0x07, 0x00, 0x30, 0x74, 0x01, 0x00, 0x00, 0x40, + 0x07, 0x00, 0x20, 0x28, 0x09, 0xd2, 0x05, 0x49, + 0x06, 0x4b, 0x82, 0x00, 0x99, 0x50, 0x05, 0x4a, + 0x51, 0x68, 0x3c, 0x00, 0xbc, 0x25, 0x00, 0x00, + 0x01, 0x23, 0x83, 0x40, 0x99, 0x43, 0x51, 0x60, + 0x70, 0x47, 0x00, 0x00, 0xa9, 0x75, 0x00, 0x00, + 0x30, 0x74, 0x01, 0x00, 0x00, 0x40, 0x07, 0x00, + 0x02, 0x4a, 0x11, 0x68, 0x08, 0x43, 0x10, 0x60, + 0x70, 0x47, 0x00, 0x00, 0x78, 0x6e, 0x01, 0x00, + 0x0b, 0x48, 0x01, 0x68, 0x03, 0x22, 0x12, 0x04, + 0x11, 0x43, 0x01, 0x60, 0x01, 0x68, 0x07, 0x22, + 0x12, 0x06, 0x91, 0x43, 0x3c, 0x00, 0xf8, 0x25, + 0x00, 0x00, 0x01, 0x22, 0x52, 0x06, 0x89, 0x18, + 0x01, 0x60, 0x01, 0x68, 0x12, 0x0c, 0x11, 0x43, + 0x01, 0x60, 0x01, 0x68, 0x52, 0x08, 0x11, 0x43, + 0x01, 0x60, 0x70, 0x47, 0x00, 0x00, 0x80, 0x00, + 0x07, 0x00, 0xfe, 0xb5, 0x1c, 0x4e, 0x05, 0x1c, + 0xb0, 0x8a, 0xf2, 0x68, 0x12, 0xd0, 0x01, 0x24, + 0x00, 0x29, 0x09, 0xd1, 0x11, 0x6d, 0x02, 0xaa, + 0x01, 0xab, 0xfe, 0xf7, 0xf8, 0xfe, 0x3c, 0x00, + 0x34, 0x26, 0x00, 0x00, 0x02, 0x98, 0x00, 0x28, + 0x01, 0xd0, 0x00, 0x24, 0x0b, 0xe0, 0x01, 0xaa, + 0x02, 0xa9, 0x28, 0x1c, 0xfe, 0xf7, 0x70, 0xff, + 0x05, 0xe0, 0x11, 0x6d, 0x02, 0xaa, 0x00, 0x24, + 0x01, 0xab, 0xfe, 0xf7, 0x01, 0xff, 0x0e, 0x49, + 0x08, 0x1c, 0x20, 0x30, 0x82, 0x79, 0x00, 0xab, + 0x1a, 0x70, 0xc0, 0x79, 0x58, 0x70, 0x30, 0x68, + 0x00, 0x28, 0x02, 0xd1, 0x02, 0x98, 0x30, 0x60, + 0x3c, 0x00, 0x70, 0x26, 0x00, 0x00, 0x02, 0xe0, + 0x02, 0x98, 0x72, 0x68, 0xd0, 0x60, 0x01, 0x98, + 0x00, 0xab, 0x70, 0x60, 0x18, 0x88, 0xc8, 0x84, + 0xf0, 0x68, 0xc0, 0x6c, 0xf0, 0x60, 0x20, 0x1c, + 0xfe, 0xbd, 0x24, 0x7e, 0x01, 0x00, 0x00, 0x10, + 0x07, 0x00, 0xf8, 0xb5, 0x04, 0x1c, 0x54, 0x27, + 0x1d, 0x4e, 0x00, 0x20, 0x30, 0x60, 0x70, 0x60, + 0x67, 0x43, 0x38, 0x04, 0x15, 0x1c, 0x00, 0x0c, + 0xb1, 0x82, 0x3c, 0x00, 0xac, 0x26, 0x00, 0x00, + 0xff, 0xf7, 0x96, 0xf8, 0x08, 0x21, 0x30, 0x61, + 0x00, 0x26, 0x17, 0x4a, 0x14, 0xe0, 0x03, 0x1c, + 0x24, 0x33, 0x42, 0x61, 0x03, 0x61, 0xc6, 0x61, + 0x01, 0x83, 0x08, 0x33, 0x03, 0x60, 0xb1, 0x23, + 0x43, 0x60, 0x03, 0x1c, 0x64, 0x33, 0xc3, 0x60, + 0x0c, 0x23, 0x03, 0x81, 0x03, 0x1c, 0x54, 0x33, + 0x4c, 0x30, 0x28, 0xc0, 0x01, 0x3c, 0x18, 0x1c, + 0x00, 0x2c, 0xe8, 0xd1, 0x3c, 0x00, 0xe8, 0x26, + 0x00, 0x00, 0x09, 0x4e, 0x07, 0x22, 0x30, 0x69, + 0xd2, 0x43, 0xc1, 0x19, 0x50, 0x50, 0x02, 0x1c, + 0x10, 0x32, 0x80, 0x39, 0x8a, 0x63, 0xf0, 0x60, + 0xb0, 0x60, 0x00, 0x21, 0x00, 0x20, 0xff, 0xf7, + 0x88, 0xff, 0x30, 0x69, 0xf0, 0x60, 0xb0, 0x60, + 0xf8, 0xbd, 0x24, 0x7e, 0x01, 0x00, 0x91, 0x00, + 0x05, 0x00, 0x01, 0x48, 0x40, 0x6a, 0x70, 0x47, + 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, 0x3c, 0x00, + 0x24, 0x27, 0x00, 0x00, 0x01, 0x48, 0x00, 0x88, + 0x70, 0x47, 0x00, 0x00, 0xfc, 0x6b, 0x01, 0x00, + 0x06, 0x49, 0x80, 0xb5, 0x08, 0x88, 0x01, 0x30, + 0x08, 0x80, 0x05, 0x49, 0x08, 0x20, 0x08, 0x60, + 0x04, 0x49, 0x88, 0x69, 0x88, 0x61, 0x00, 0xf0, + 0x21, 0xf8, 0x80, 0xbd, 0xfc, 0x6b, 0x01, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x03, 0x4a, 0x01, 0x20, 0x12, 0x1d, 0x06, 0xca, + 0x3c, 0x00, 0x60, 0x27, 0x00, 0x00, 0x91, 0x42, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0xe8, 0x7d, + 0x01, 0x00, 0x06, 0x48, 0x00, 0xb5, 0xc0, 0x7c, + 0x00, 0x28, 0x03, 0xd1, 0xff, 0xf7, 0xef, 0xff, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, 0x00, 0xbd, + 0x00, 0x20, 0x00, 0xbd, 0x00, 0x00, 0xa0, 0x80, + 0x07, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x80, 0x07, + 0x02, 0xd5, 0x06, 0xf0, 0x3e, 0xfd, 0x03, 0xe0, + 0xe0, 0x07, 0x3c, 0x00, 0x9c, 0x27, 0x00, 0x00, + 0x01, 0xd5, 0x06, 0xf0, 0xe3, 0xfd, 0x60, 0x07, + 0x01, 0xd5, 0xfe, 0xf7, 0xab, 0xfd, 0x10, 0xbd, + 0x02, 0x4a, 0x01, 0x1c, 0x10, 0x68, 0x11, 0x60, + 0x70, 0x47, 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, + 0x38, 0xb5, 0x20, 0x4d, 0x2c, 0x1c, 0x20, 0x34, + 0xa0, 0x79, 0x00, 0xab, 0x18, 0x70, 0xe0, 0x79, + 0x58, 0x70, 0xfe, 0xf7, 0x27, 0xfa, 0x00, 0xab, + 0x18, 0x88, 0xe8, 0x84, 0x3c, 0x00, 0xd8, 0x27, + 0x00, 0x00, 0x1a, 0x48, 0x81, 0x78, 0x08, 0x22, + 0x91, 0x43, 0x81, 0x70, 0x81, 0x78, 0x11, 0x43, + 0x81, 0x70, 0x17, 0x48, 0x41, 0x68, 0x80, 0x22, + 0x91, 0x43, 0x41, 0x60, 0x01, 0x68, 0x11, 0x43, + 0x01, 0x60, 0x00, 0x20, 0x01, 0x30, 0x64, 0x28, + 0xfc, 0xd3, 0xa0, 0x79, 0x0f, 0x4d, 0x00, 0xab, + 0x18, 0x70, 0xe0, 0x79, 0x10, 0x4c, 0x58, 0x70, + 0x20, 0x1c, 0x10, 0x30, 0x00, 0xf0, 0x3c, 0x00, + 0x14, 0x28, 0x00, 0x00, 0xdf, 0xfb, 0x00, 0x20, + 0xc0, 0x43, 0xa0, 0x61, 0xff, 0xf7, 0x9c, 0xff, + 0x00, 0x28, 0x09, 0xd0, 0x0a, 0x49, 0x08, 0x69, + 0x01, 0x30, 0x08, 0x61, 0x00, 0x20, 0x3c, 0x31, + 0x89, 0x68, 0x48, 0x63, 0x06, 0xf0, 0xee, 0xfc, + 0x00, 0xab, 0x18, 0x88, 0xe8, 0x84, 0x38, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, + 0xf4, 0x00, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x3c, 0x00, 0x50, 0x28, 0x00, 0x00, 0xe8, 0x7d, + 0x01, 0x00, 0x0a, 0x48, 0x80, 0xb5, 0x00, 0x6a, + 0x00, 0x28, 0x01, 0xd0, 0xfe, 0xf7, 0xc1, 0xf9, + 0x07, 0x48, 0x07, 0x49, 0x3c, 0x30, 0x80, 0x68, + 0x10, 0x30, 0x48, 0x61, 0x01, 0x20, 0x08, 0x61, + 0x05, 0x49, 0x08, 0x68, 0x80, 0x22, 0x90, 0x43, + 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, 0xe8, 0x7d, + 0x01, 0x00, 0x00, 0x30, 0x07, 0x00, 0xf4, 0x00, + 0x07, 0x00, 0x3c, 0x00, 0x8c, 0x28, 0x00, 0x00, + 0x80, 0xb5, 0x0c, 0xf0, 0xcb, 0xfe, 0x06, 0xf0, + 0xbf, 0xfc, 0x80, 0xbd, 0x01, 0x49, 0xc8, 0x62, + 0x70, 0x47, 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, + 0x02, 0x4a, 0x91, 0x6a, 0x08, 0x43, 0x90, 0x62, + 0x70, 0x47, 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, + 0x18, 0x23, 0x06, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x00, 0x21, 0x02, 0x79, 0x03, 0x68, 0x1a, 0x70, + 0x01, 0x31, 0x08, 0x30, 0x3c, 0x00, 0xc8, 0x28, + 0x00, 0x00, 0x03, 0x29, 0xf8, 0xd3, 0x70, 0x47, + 0x00, 0x00, 0x28, 0x52, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, + 0x81, 0x62, 0x70, 0x47, 0x00, 0x00, 0x85, 0x75, + 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, 0xf8, 0xb5, + 0xff, 0xf7, 0x33, 0xff, 0x28, 0x4f, 0x00, 0x28, + 0x04, 0xd0, 0xff, 0xf7, 0xc8, 0xff, 0x38, 0x6a, + 0x01, 0x30, 0x38, 0x62, 0xf8, 0x6a, 0x3c, 0x00, + 0x04, 0x29, 0x00, 0x00, 0x00, 0x28, 0x02, 0xd0, + 0x01, 0x89, 0x04, 0x39, 0x01, 0x81, 0x38, 0x6b, + 0x00, 0x25, 0x00, 0x28, 0x08, 0xd0, 0x0b, 0x20, + 0x3d, 0x63, 0x10, 0xf0, 0xe5, 0xfa, 0x1e, 0x49, + 0x08, 0x68, 0x21, 0x22, 0x90, 0x43, 0x08, 0x60, + 0x38, 0x78, 0x3c, 0x21, 0x1b, 0x4a, 0x41, 0x43, + 0x8c, 0x18, 0xff, 0x22, 0x79, 0x6a, 0x3a, 0x70, + 0x00, 0x29, 0x0c, 0xd0, 0xb9, 0x69, 0x01, 0x31, + 0x3c, 0x00, 0x40, 0x29, 0x00, 0x00, 0xb9, 0x61, + 0x7d, 0x62, 0xbd, 0x68, 0x00, 0x2d, 0x04, 0xd0, + 0x63, 0x6b, 0x7a, 0x6b, 0x00, 0x21, 0xfd, 0xf7, + 0x47, 0xfd, 0xf8, 0xbd, 0x04, 0x28, 0x03, 0xd3, + 0x01, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0xa1, 0xfc, + 0x38, 0x69, 0x26, 0x1c, 0x01, 0x30, 0x38, 0x61, + 0x20, 0x36, 0x30, 0x78, 0x02, 0x28, 0x03, 0xd0, + 0x0c, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x95, 0xfc, + 0x35, 0x70, 0x3c, 0x00, 0x7c, 0x29, 0x00, 0x00, + 0xa1, 0x69, 0x00, 0x29, 0xe8, 0xd0, 0x63, 0x6b, + 0x30, 0x34, 0x20, 0x78, 0x0c, 0x1c, 0x00, 0x21, + 0x7a, 0x6b, 0xfd, 0xf7, 0x27, 0xfd, 0xdf, 0xe7, + 0x04, 0x6c, 0x01, 0x00, 0xf4, 0x00, 0x07, 0x00, + 0x18, 0xdb, 0x01, 0x00, 0x10, 0xb5, 0x0b, 0x4c, + 0x60, 0x6a, 0x00, 0x28, 0x0e, 0xd0, 0x0a, 0x48, + 0x00, 0xf0, 0x12, 0xfb, 0x00, 0x20, 0x60, 0x62, + 0xa4, 0x68, 0x00, 0x2c, 0x3c, 0x00, 0xb8, 0x29, + 0x00, 0x00, 0x05, 0xd0, 0x7e, 0x23, 0xdb, 0x43, + 0x00, 0x22, 0x01, 0x21, 0xfd, 0xf7, 0x0d, 0xfd, + 0x10, 0xbd, 0xe0, 0x69, 0x01, 0x30, 0xe0, 0x61, + 0x10, 0xbd, 0x04, 0x6c, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x09, 0x48, 0x41, 0x68, 0x3f, 0x22, + 0x12, 0x04, 0x91, 0x43, 0x0d, 0x22, 0x12, 0x04, + 0x89, 0x18, 0x41, 0x60, 0x41, 0x68, 0x01, 0x22, + 0x52, 0x02, 0x91, 0x43, 0x41, 0x60, 0x3c, 0x00, + 0xf4, 0x29, 0x00, 0x00, 0x03, 0x48, 0x81, 0x78, + 0x81, 0x70, 0x81, 0x78, 0x81, 0x70, 0x70, 0x47, + 0x80, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, + 0xf0, 0xb5, 0x01, 0x25, 0x08, 0x24, 0x00, 0x20, + 0x0e, 0x4a, 0x0f, 0x49, 0x00, 0x26, 0x3c, 0x23, + 0x43, 0x43, 0xd1, 0x52, 0x9b, 0x18, 0x5d, 0x71, + 0x9b, 0x60, 0x5e, 0x61, 0x1c, 0x82, 0xc0, 0x27, + 0xdf, 0x60, 0x20, 0x27, 0xfe, 0x54, 0x9e, 0x61, + 0x3c, 0x00, 0x30, 0x2a, 0x00, 0x00, 0x30, 0x27, + 0xfe, 0x54, 0x07, 0x4f, 0x3f, 0x18, 0x20, 0x37, + 0x01, 0x30, 0x05, 0x28, 0x9f, 0x63, 0xe9, 0xd3, + 0x05, 0x48, 0xff, 0x32, 0x01, 0x32, 0x90, 0x62, + 0xf0, 0xbd, 0x18, 0xdb, 0x01, 0x00, 0xbe, 0xba, + 0x00, 0x00, 0x30, 0x80, 0x07, 0x00, 0x06, 0x6c, + 0x01, 0x00, 0x01, 0x49, 0x48, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, 0x05, 0x49, + 0x08, 0x5c, 0x3c, 0x00, 0x6c, 0x2a, 0x00, 0x00, + 0x05, 0x49, 0x49, 0x68, 0x40, 0x18, 0xc0, 0x06, + 0xc0, 0x0e, 0x04, 0x49, 0x20, 0x30, 0x48, 0x72, + 0x70, 0x47, 0x00, 0x00, 0xa0, 0x57, 0x01, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x80, 0xb5, 0x15, 0x21, 0x84, 0x20, 0xfe, 0xf7, + 0x07, 0xfc, 0x80, 0xbd, 0xf8, 0xb5, 0x43, 0x48, + 0x84, 0x68, 0x03, 0x34, 0x42, 0x4d, 0x04, 0xe0, + 0x20, 0x1c, 0x10, 0xf0, 0x3c, 0x00, 0xa8, 0x2a, + 0x00, 0x00, 0xb9, 0xf8, 0x00, 0x28, 0x71, 0xd1, + 0x28, 0x69, 0xc0, 0x07, 0xf7, 0xd5, 0x3e, 0x48, + 0x28, 0x60, 0x3e, 0x4a, 0x14, 0x1c, 0x20, 0x34, + 0x20, 0x79, 0x00, 0x90, 0x3c, 0x23, 0x3c, 0x49, + 0x58, 0x43, 0x45, 0x18, 0x28, 0x79, 0xff, 0xf7, + 0xcc, 0xff, 0x28, 0x1c, 0x3a, 0x49, 0x08, 0x30, + 0x48, 0x60, 0x01, 0x26, 0x08, 0x1c, 0x06, 0x60, + 0x68, 0x6a, 0x00, 0x28, 0x0d, 0xd0, 0x3c, 0x00, + 0xe4, 0x2a, 0x00, 0x00, 0xa9, 0x6a, 0x92, 0x6a, + 0x35, 0x4b, 0x9f, 0x68, 0xd7, 0x1b, 0x1a, 0x68, + 0x51, 0x18, 0x79, 0x18, 0x8a, 0x42, 0x5a, 0x68, + 0x00, 0xd8, 0x00, 0xe0, 0x01, 0x32, 0x06, 0xc0, + 0xe8, 0x6a, 0xfe, 0xf7, 0x87, 0xff, 0x2d, 0x49, + 0xe8, 0x6a, 0x48, 0x60, 0x30, 0x1c, 0x0e, 0x60, + 0x66, 0x79, 0x1f, 0xe0, 0x2b, 0x48, 0x46, 0x61, + 0x04, 0x7f, 0x29, 0x49, 0x20, 0x1c, 0x50, 0x39, + 0x3c, 0x00, 0x20, 0x2b, 0x00, 0x00, 0x89, 0x6a, + 0xfd, 0xf7, 0x5a, 0xfc, 0x00, 0x98, 0x84, 0x42, + 0x10, 0xd0, 0x3c, 0x20, 0x22, 0x49, 0x60, 0x43, + 0x40, 0x18, 0x87, 0x69, 0x00, 0x2f, 0x09, 0xd0, + 0x00, 0x21, 0x20, 0x30, 0x01, 0x70, 0x7e, 0x23, + 0xdb, 0x43, 0x02, 0x21, 0x00, 0x22, 0x20, 0x1c, + 0xfd, 0xf7, 0x4c, 0xfc, 0x01, 0x20, 0xa0, 0x40, + 0x86, 0x43, 0x00, 0x2e, 0xdd, 0xd1, 0xe9, 0x69, + 0x00, 0x29, 0x3c, 0x00, 0x5c, 0x2b, 0x00, 0x00, + 0x03, 0xd0, 0x30, 0x20, 0x40, 0x5d, 0xfd, 0xf7, + 0x3a, 0xfc, 0x16, 0x4c, 0x50, 0x3c, 0x60, 0x6a, + 0x00, 0x28, 0x03, 0xd0, 0x0a, 0x21, 0x84, 0x20, + 0xfe, 0xf7, 0x96, 0xfb, 0x20, 0x35, 0x28, 0x78, + 0x01, 0x28, 0x03, 0xd0, 0x0b, 0x21, 0x84, 0x20, + 0xfe, 0xf7, 0x8e, 0xfb, 0x02, 0x20, 0x28, 0x70, + 0xe0, 0x68, 0x01, 0x30, 0x00, 0xe0, 0x07, 0xe0, + 0xe0, 0x60, 0x00, 0x98, 0x3c, 0x00, 0x98, 0x2b, + 0x00, 0x00, 0x20, 0x70, 0x00, 0x98, 0x60, 0x70, + 0x0a, 0x48, 0x00, 0x68, 0x60, 0x63, 0xf8, 0xbd, + 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x40, + 0x07, 0x00, 0x01, 0x00, 0x00, 0x01, 0x30, 0x80, + 0x07, 0x00, 0x18, 0xdb, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x54, 0x6c, 0x01, 0x00, 0x00, 0xa0, + 0x07, 0x00, 0x78, 0x6e, 0x01, 0x00, 0x3c, 0x22, + 0x3c, 0x23, 0x4a, 0x43, 0x09, 0x49, 0x3c, 0x00, + 0xd4, 0x2b, 0x00, 0x00, 0xb0, 0xb5, 0x54, 0x18, + 0x58, 0x43, 0x45, 0x18, 0x21, 0x1c, 0x38, 0x22, + 0x28, 0x1c, 0xfd, 0xf7, 0xe5, 0xfc, 0xa0, 0x6b, + 0x00, 0x78, 0xa9, 0x6b, 0x08, 0x70, 0x00, 0x20, + 0x20, 0x34, 0x20, 0x70, 0xb0, 0xbd, 0x00, 0x00, + 0x18, 0xdb, 0x01, 0x00, 0x3c, 0x23, 0x07, 0x49, + 0x58, 0x43, 0x10, 0xb5, 0x44, 0x18, 0x20, 0x34, + 0x20, 0x78, 0x02, 0x28, 0x03, 0xd1, 0x0d, 0x21, + 0x3c, 0x00, 0x10, 0x2c, 0x00, 0x00, 0x84, 0x20, + 0xfe, 0xf7, 0x47, 0xfb, 0x00, 0x20, 0x20, 0x70, + 0x10, 0xbd, 0x18, 0xdb, 0x01, 0x00, 0xff, 0xb5, + 0x3c, 0x20, 0x48, 0x43, 0x1a, 0x49, 0x81, 0xb0, + 0x44, 0x18, 0x26, 0x1c, 0x20, 0x36, 0x30, 0x78, + 0x15, 0x1c, 0x0f, 0x9f, 0x02, 0x28, 0x03, 0xd1, + 0x04, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x31, 0xfb, + 0x01, 0x20, 0x30, 0x70, 0x25, 0x71, 0x0b, 0x99, + 0x30, 0x22, 0x3c, 0x00, 0x4c, 0x2c, 0x00, 0x00, + 0x61, 0x80, 0x0a, 0x99, 0xe1, 0x62, 0x0d, 0x99, + 0xa1, 0x61, 0x0c, 0x99, 0xe1, 0x61, 0x0e, 0x99, + 0x61, 0x62, 0xa7, 0x62, 0x01, 0x99, 0x11, 0x55, + 0x7e, 0x21, 0xc9, 0x43, 0x61, 0x63, 0x04, 0x99, + 0x00, 0x29, 0x00, 0xd1, 0x00, 0x20, 0x06, 0x1c, + 0x28, 0x1c, 0x08, 0xf0, 0x8b, 0xf8, 0x00, 0x28, + 0x01, 0xd0, 0x02, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0xa1, 0x6b, 0x30, 0x43, 0x3c, 0x00, 0x88, 0x2c, + 0x00, 0x00, 0x08, 0x70, 0x05, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0x18, 0xdb, 0x01, 0x00, 0x80, 0xb5, + 0x14, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x03, 0xfb, + 0x80, 0xbd, 0x01, 0x48, 0x40, 0x78, 0x70, 0x47, + 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, 0x02, 0x48, + 0x00, 0x69, 0xc0, 0x07, 0xc0, 0x0f, 0x70, 0x47, + 0x00, 0x00, 0x00, 0x40, 0x07, 0x00, 0x01, 0x1c, + 0x3c, 0x23, 0x04, 0x4a, 0x59, 0x43, 0x3c, 0x00, + 0xc4, 0x2c, 0x00, 0x00, 0x89, 0x18, 0x20, 0x31, + 0x09, 0x78, 0x01, 0x20, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x18, 0xdb, 0x01, 0x00, + 0x08, 0x48, 0x40, 0x6a, 0x00, 0x28, 0x0a, 0xd1, + 0x07, 0x4a, 0x00, 0x21, 0x20, 0x23, 0x9b, 0x5c, + 0x02, 0x2b, 0x04, 0xd0, 0x01, 0x31, 0x3c, 0x32, + 0x05, 0x29, 0xf7, 0xd3, 0x70, 0x47, 0x01, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, + 0x3c, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x18, 0xdb, + 0x01, 0x00, 0xf8, 0xb5, 0x0e, 0x1c, 0x04, 0x1c, + 0x17, 0x1c, 0xfe, 0xf7, 0x82, 0xfe, 0x20, 0x1c, + 0x11, 0x4c, 0x60, 0x60, 0x01, 0x20, 0x20, 0x60, + 0x10, 0x4d, 0x68, 0x69, 0x01, 0x30, 0x68, 0x61, + 0x68, 0x6a, 0x00, 0x28, 0x03, 0xd0, 0x07, 0x21, + 0x84, 0x20, 0xfe, 0xf7, 0xba, 0xfa, 0xa0, 0x68, + 0x40, 0x07, 0x03, 0xd5, 0x06, 0x21, 0x84, 0x20, + 0xfe, 0xf7, 0x3c, 0x00, 0x3c, 0x2d, 0x00, 0x00, + 0xb3, 0xfa, 0x08, 0x48, 0x00, 0x69, 0x00, 0x28, + 0x03, 0xda, 0xaa, 0x21, 0x84, 0x20, 0xfe, 0xf7, + 0xab, 0xfa, 0x02, 0x20, 0x68, 0x62, 0xae, 0x60, + 0x2f, 0x70, 0xf8, 0xbd, 0x00, 0x30, 0x07, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0x00, 0x40, 0x07, 0x00, + 0x04, 0x4a, 0x51, 0x80, 0x10, 0x71, 0x03, 0x48, + 0x03, 0x49, 0x08, 0x30, 0x48, 0x60, 0x01, 0x20, + 0x08, 0x60, 0x70, 0x47, 0x3c, 0x00, 0x78, 0x2d, + 0x00, 0x00, 0x3c, 0x6c, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x00, 0x21, 0x00, 0x23, 0x05, 0xe0, + 0x02, 0x89, 0x43, 0x60, 0xc0, 0x68, 0x51, 0x18, + 0x09, 0x04, 0x09, 0x0c, 0x00, 0x28, 0xf7, 0xd1, + 0x04, 0x31, 0x08, 0x04, 0x00, 0x0c, 0x70, 0x47, + 0x00, 0x00, 0x02, 0x4a, 0x51, 0x6b, 0x08, 0x43, + 0x50, 0x63, 0x70, 0x47, 0x00, 0x00, 0x04, 0x6c, + 0x01, 0x00, 0x38, 0xb5, 0x0a, 0x4c, 0x3c, 0x00, + 0xb4, 0x2d, 0x00, 0x00, 0x22, 0x1c, 0x20, 0x32, + 0x95, 0x79, 0x00, 0xab, 0x1d, 0x70, 0xd2, 0x79, + 0x5a, 0x70, 0x03, 0x68, 0x40, 0x68, 0x06, 0x4a, + 0x50, 0x65, 0x05, 0x48, 0x13, 0x65, 0x50, 0x30, + 0x81, 0x60, 0x00, 0xab, 0x18, 0x88, 0xe0, 0x84, + 0x38, 0xbd, 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0x98, 0xb5, 0x0d, 0x4c, + 0x20, 0x1c, 0x20, 0x30, 0x81, 0x79, 0x00, 0xab, + 0x3c, 0x00, 0xf0, 0x2d, 0x00, 0x00, 0x19, 0x70, + 0xc0, 0x79, 0x58, 0x70, 0x0a, 0x48, 0x00, 0xf0, + 0xec, 0xf8, 0x09, 0x49, 0x00, 0x20, 0x48, 0x62, + 0xff, 0xf7, 0x69, 0xff, 0x00, 0x28, 0x03, 0xd0, + 0x12, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x49, 0xfa, + 0x00, 0xab, 0x18, 0x88, 0xe0, 0x84, 0x98, 0xbd, + 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x04, 0x6c, 0x01, 0x00, 0x03, 0x48, + 0x01, 0x7a, 0x3c, 0x00, 0x2c, 0x2e, 0x00, 0x00, + 0xfe, 0x22, 0x91, 0x43, 0x0a, 0x31, 0x01, 0x72, + 0x70, 0x47, 0x00, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x90, 0xb5, 0x0e, 0x4c, 0x85, 0xb0, 0xa0, 0x78, + 0x02, 0x28, 0x14, 0xd1, 0x03, 0x20, 0xa0, 0x70, + 0x0b, 0x49, 0x00, 0x20, 0x00, 0x22, 0x04, 0x92, + 0x02, 0x90, 0x03, 0x91, 0xe1, 0x88, 0x01, 0x22, + 0x01, 0x92, 0x00, 0x91, 0x61, 0x78, 0x20, 0x78, + 0x22, 0x69, 0xe3, 0x68, 0x3c, 0x00, 0x68, 0x2e, + 0x00, 0x00, 0x08, 0xf0, 0x94, 0xfd, 0x04, 0x48, + 0x09, 0xf0, 0x7f, 0xf9, 0x05, 0xb0, 0x90, 0xbd, + 0x00, 0x00, 0xb4, 0x79, 0x01, 0x00, 0xad, 0xb6, + 0x00, 0x00, 0x71, 0xb6, 0x00, 0x00, 0xb0, 0xb5, + 0x0c, 0x4d, 0xac, 0x79, 0x0c, 0x49, 0x09, 0x78, + 0x00, 0x29, 0x03, 0xd0, 0x01, 0x29, 0x0e, 0xd0, + 0x02, 0x29, 0x08, 0xd1, 0xc2, 0x88, 0x00, 0x2a, + 0x09, 0xd0, 0x01, 0x23, 0x81, 0x68, 0x3c, 0x00, + 0xa4, 0x2e, 0x00, 0x00, 0x02, 0x20, 0x0f, 0xf0, + 0xc1, 0xf8, 0x03, 0xe0, 0x02, 0x21, 0x86, 0x20, + 0xfe, 0xf7, 0xf8, 0xf9, 0xac, 0x71, 0xb0, 0xbd, + 0x20, 0x10, 0x07, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x68, 0x07, 0x49, 0x4a, 0x60, + 0x03, 0x79, 0xca, 0x78, 0xcb, 0x70, 0x00, 0x79, + 0x90, 0x42, 0x06, 0xd0, 0x03, 0x48, 0x14, 0x30, + 0x00, 0x89, 0x07, 0xf0, 0x27, 0xfe, 0x06, 0xf0, + 0x3c, 0x00, 0xe0, 0x2e, 0x00, 0x00, 0xab, 0xfa, + 0x80, 0xbd, 0x84, 0x66, 0x01, 0x00, 0x70, 0xb5, + 0x16, 0x4c, 0x15, 0x4d, 0xa0, 0x78, 0x00, 0x26, + 0x98, 0x3d, 0x01, 0x28, 0x03, 0xd1, 0x28, 0x69, + 0x08, 0xf0, 0xfb, 0xfc, 0xa6, 0x70, 0x60, 0x68, + 0x01, 0x28, 0x03, 0xd0, 0x00, 0x21, 0x28, 0x69, + 0x00, 0xf0, 0xff, 0xfb, 0x0e, 0x48, 0x29, 0x69, + 0x0c, 0xf0, 0x31, 0xfa, 0x01, 0x20, 0x0c, 0xf0, + 0xe4, 0xf8, 0x3c, 0x00, 0x1c, 0x2f, 0x00, 0x00, + 0xe0, 0x78, 0x01, 0x28, 0x02, 0xd0, 0x01, 0x20, + 0x60, 0x70, 0x00, 0xe0, 0x66, 0x70, 0x06, 0x48, + 0x14, 0x30, 0x41, 0x68, 0x01, 0x29, 0x06, 0xd1, + 0x06, 0x60, 0x41, 0x6f, 0x00, 0x29, 0x02, 0xd0, + 0x00, 0x20, 0xfd, 0xf7, 0x4c, 0xfa, 0x70, 0xbd, + 0x84, 0x66, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x30, 0xb5, 0x00, 0x22, 0x00, 0x23, 0x01, 0x25, + 0x2c, 0x1c, 0x94, 0x40, 0x3c, 0x00, 0x58, 0x2f, + 0x00, 0x00, 0x04, 0x40, 0x01, 0xd0, 0xca, 0x54, + 0x01, 0x33, 0x01, 0x32, 0x0e, 0x2a, 0xf6, 0xdb, + 0x18, 0x1c, 0x30, 0xbd, 0x00, 0x00, 0xff, 0xb5, + 0x01, 0x27, 0x00, 0x26, 0x05, 0x1c, 0x02, 0x20, + 0x81, 0xb0, 0x00, 0x90, 0x00, 0x2d, 0x18, 0xd0, + 0x28, 0x78, 0xff, 0x28, 0x15, 0xd0, 0x00, 0x24, + 0x10, 0xe0, 0x28, 0x19, 0x80, 0x78, 0x0a, 0x99, + 0x00, 0x29, 0x01, 0xd0, 0x01, 0x06, 0x3c, 0x00, + 0x94, 0x2f, 0x00, 0x00, 0x08, 0xd5, 0x07, 0xf0, + 0xe9, 0xfe, 0x0e, 0x28, 0x03, 0xd0, 0x01, 0x21, + 0x81, 0x40, 0x0e, 0x43, 0x00, 0xe0, 0x00, 0x27, + 0x01, 0x34, 0x68, 0x78, 0xa0, 0x42, 0xeb, 0xdc, + 0x00, 0x98, 0x02, 0x9d, 0x01, 0x38, 0x00, 0x90, + 0xdf, 0xd1, 0x03, 0x98, 0x31, 0x1c, 0x81, 0x43, + 0x02, 0xd0, 0x03, 0x98, 0x06, 0x40, 0x00, 0x27, + 0x04, 0x98, 0x06, 0x60, 0x05, 0xb0, 0x38, 0x1c, + 0x3c, 0x00, 0xd0, 0x2f, 0x00, 0x00, 0xf0, 0xbd, + 0x00, 0x00, 0x02, 0x21, 0x01, 0x60, 0x64, 0x21, + 0x01, 0xe0, 0x01, 0x39, 0x02, 0xd0, 0x02, 0x68, + 0x92, 0x07, 0xfa, 0xd4, 0x01, 0x20, 0x00, 0x29, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x10, 0xb5, + 0x00, 0x20, 0xc4, 0x43, 0x05, 0x4b, 0x02, 0x22, + 0x01, 0x01, 0x5a, 0x50, 0xc9, 0x18, 0x8c, 0x60, + 0x01, 0x30, 0x08, 0x28, 0xf8, 0xdb, 0x10, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x30, 0x00, 0x00, + 0x00, 0x30, 0x07, 0x00, 0xf0, 0xb5, 0x05, 0x1c, + 0x60, 0x35, 0xc7, 0x6a, 0x04, 0x1c, 0x28, 0x7b, + 0x00, 0x2f, 0x8b, 0xb0, 0x15, 0xd0, 0x08, 0x28, + 0x15, 0xd2, 0x02, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x00, 0x00, 0x07, 0x04, 0x04, 0x07, + 0x09, 0x09, 0x0c, 0x0c, 0x01, 0x26, 0x00, 0x21, + 0x09, 0xe0, 0x00, 0x26, 0x06, 0xe0, 0x02, 0x26, + 0x02, 0x21, 0x04, 0xe0, 0x3c, 0x00, 0x48, 0x30, + 0x00, 0x00, 0x03, 0x26, 0x03, 0x21, 0x01, 0xe0, + 0x04, 0x26, 0x01, 0x21, 0x8c, 0x22, 0x12, 0x59, + 0x07, 0x91, 0x26, 0x49, 0x06, 0x90, 0x04, 0x91, + 0x00, 0x20, 0x03, 0x90, 0x05, 0x97, 0x08, 0x92, + 0xe0, 0x69, 0x22, 0x69, 0x21, 0x1c, 0x70, 0x31, + 0x01, 0x91, 0x21, 0x49, 0x00, 0x90, 0x70, 0x00, + 0x40, 0x18, 0x60, 0x30, 0x02, 0x92, 0x03, 0x88, + 0x59, 0x1c, 0x01, 0x80, 0x1e, 0x48, 0x3c, 0x00, + 0x84, 0x30, 0x00, 0x00, 0x02, 0x88, 0xa1, 0x68, + 0x0a, 0xa8, 0x09, 0xf0, 0xe1, 0xff, 0x60, 0x60, + 0xe8, 0x7a, 0xa1, 0x6a, 0xc9, 0x07, 0x00, 0x07, + 0x00, 0x0e, 0xc9, 0x0d, 0x08, 0x43, 0x61, 0x6a, + 0x22, 0x69, 0xc9, 0x07, 0x89, 0x0d, 0x01, 0x43, + 0x01, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x80, 0x03, 0x08, 0x43, 0x21, 0x6a, 0xc9, 0x03, + 0x08, 0x43, 0x08, 0x21, 0x08, 0x43, 0x0a, 0x99, + 0x3c, 0x00, 0xc0, 0x30, 0x00, 0x00, 0x08, 0x80, + 0x20, 0x1c, 0xfe, 0xf7, 0x98, 0xfe, 0x20, 0x69, + 0x00, 0x28, 0x04, 0xd1, 0x20, 0x1c, 0x0a, 0xf0, + 0x82, 0xf9, 0x0b, 0xb0, 0xf0, 0xbd, 0x80, 0x79, + 0x06, 0x28, 0x01, 0xd9, 0xfe, 0xf7, 0x0f, 0xf9, + 0x20, 0x69, 0x06, 0x49, 0x80, 0x79, 0x80, 0x00, + 0x09, 0x58, 0x20, 0x1c, 0xfd, 0xf7, 0x74, 0xf9, + 0xef, 0xe7, 0x79, 0x2f, 0x01, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x3c, 0x00, 0xfc, 0x30, 0x00, 0x00, + 0x08, 0x61, 0x01, 0x00, 0x74, 0x57, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x58, 0x30, 0x8a, 0xb0, + 0x0e, 0xf0, 0x7c, 0xfe, 0x22, 0x1c, 0x80, 0x32, + 0x51, 0x68, 0x00, 0x29, 0x01, 0xd0, 0x11, 0x7a, + 0x07, 0xe0, 0x00, 0x28, 0x04, 0xd0, 0x80, 0x69, + 0x80, 0x07, 0x01, 0xd5, 0x03, 0x21, 0x00, 0xe0, + 0x01, 0x21, 0xd2, 0x68, 0x07, 0x91, 0x22, 0x49, + 0x00, 0x20, 0x08, 0x92, 0x3c, 0x00, 0x38, 0x31, + 0x00, 0x00, 0x04, 0x91, 0x00, 0x22, 0x05, 0x92, + 0x06, 0x90, 0x03, 0x90, 0xe0, 0x69, 0x22, 0x69, + 0x00, 0x90, 0x21, 0x1c, 0x70, 0x31, 0x1c, 0x48, + 0x01, 0x91, 0x02, 0x92, 0x03, 0x89, 0x59, 0x1c, + 0x01, 0x81, 0x1a, 0x48, 0x02, 0x88, 0xa1, 0x68, + 0x09, 0xa8, 0x09, 0xf0, 0x76, 0xff, 0x60, 0x60, + 0x6b, 0x20, 0x00, 0x5d, 0xa1, 0x6a, 0x22, 0x69, + 0xc9, 0x07, 0x00, 0x07, 0x00, 0x0e, 0x3c, 0x00, + 0x74, 0x31, 0x00, 0x00, 0xc9, 0x0d, 0x01, 0x43, + 0x01, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x80, 0x03, 0x08, 0x43, 0x09, 0x99, 0x08, 0x80, + 0x20, 0x1c, 0xfe, 0xf7, 0x35, 0xfe, 0x20, 0x69, + 0x00, 0x28, 0x04, 0xd1, 0x20, 0x1c, 0x0a, 0xf0, + 0x1f, 0xf9, 0x0a, 0xb0, 0x10, 0xbd, 0x80, 0x79, + 0x06, 0x28, 0x01, 0xd9, 0xfe, 0xf7, 0xac, 0xf8, + 0x20, 0x69, 0x07, 0x49, 0x80, 0x79, 0x80, 0x00, + 0x3c, 0x00, 0xb0, 0x31, 0x00, 0x00, 0x09, 0x58, + 0x20, 0x1c, 0xfd, 0xf7, 0x11, 0xf9, 0xef, 0xe7, + 0x00, 0x00, 0xbd, 0x2f, 0x01, 0x00, 0x24, 0x6a, + 0x01, 0x00, 0x08, 0x61, 0x01, 0x00, 0x74, 0x57, + 0x01, 0x00, 0x3e, 0xb5, 0x05, 0x1c, 0x00, 0x69, + 0x04, 0x21, 0x07, 0xf0, 0xd2, 0xfa, 0x00, 0x28, + 0x09, 0xd0, 0x42, 0x78, 0x02, 0x32, 0x01, 0x1c, + 0x68, 0x46, 0xfd, 0xf7, 0x88, 0xf9, 0xe8, 0x6a, + 0x6c, 0x46, 0x3c, 0x00, 0xec, 0x31, 0x00, 0x00, + 0x02, 0x90, 0x00, 0xe0, 0x00, 0x24, 0x28, 0x1c, + 0x14, 0x30, 0x02, 0xf0, 0x03, 0xfb, 0x00, 0x28, + 0x04, 0xd0, 0x21, 0x1c, 0x28, 0x1c, 0x05, 0xf0, + 0xa5, 0xfe, 0x3e, 0xbd, 0x00, 0x2c, 0xfc, 0xd0, + 0x02, 0x49, 0x20, 0x1c, 0x49, 0x69, 0xfd, 0xf7, + 0xe2, 0xf8, 0xf6, 0xe7, 0x44, 0x7d, 0x01, 0x00, + 0x70, 0xb5, 0x1e, 0x1c, 0x18, 0x23, 0x58, 0x43, + 0x06, 0x4b, 0x04, 0x9d, 0x3c, 0x00, 0x28, 0x32, + 0x00, 0x00, 0x19, 0x50, 0xc4, 0x18, 0x00, 0x20, + 0x60, 0x61, 0x62, 0x60, 0xa6, 0x60, 0xe5, 0x60, + 0x0f, 0xf0, 0xb9, 0xfd, 0x20, 0x61, 0x70, 0xbd, + 0x00, 0x00, 0xb8, 0x7d, 0x01, 0x00, 0x02, 0x4a, + 0x01, 0x1c, 0x90, 0x69, 0x91, 0x61, 0x70, 0x47, + 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x6b, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x04, 0x49, 0x04, 0x4b, 0x3c, 0x00, + 0x64, 0x32, 0x00, 0x00, 0xca, 0x68, 0x09, 0x69, + 0x5c, 0x3b, 0x5b, 0x68, 0xc9, 0x1a, 0x41, 0x43, + 0x50, 0x18, 0x70, 0x47, 0xa0, 0x7d, 0x01, 0x00, + 0x01, 0x48, 0x00, 0x78, 0x70, 0x47, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0x80, 0xb5, 0x06, 0x22, + 0x01, 0x49, 0xfd, 0xf7, 0x35, 0xf9, 0x80, 0xbd, + 0xfe, 0x67, 0x01, 0x00, 0xf0, 0xb5, 0x89, 0xb0, + 0x00, 0x93, 0x16, 0x4f, 0x13, 0x1c, 0x0e, 0x1c, + 0x3c, 0x00, 0xa0, 0x32, 0x00, 0x00, 0x04, 0x1c, + 0x3a, 0x1c, 0x01, 0xf0, 0x62, 0xff, 0x01, 0xa9, + 0x06, 0xa8, 0xa2, 0x68, 0x02, 0xf0, 0x0b, 0xf9, + 0x01, 0xaa, 0x06, 0xa9, 0x38, 0x1c, 0x63, 0x6a, + 0x02, 0xf0, 0x81, 0xfc, 0x05, 0x1c, 0x01, 0x28, + 0x14, 0xd1, 0x0c, 0x48, 0xfc, 0x21, 0xc8, 0x51, + 0x38, 0x1c, 0x02, 0xf0, 0x0c, 0xf8, 0x03, 0x21, + 0x30, 0x1c, 0x07, 0xf0, 0x52, 0xfa, 0x00, 0x28, + 0x07, 0xd0, 0x3c, 0x00, 0xdc, 0x32, 0x00, 0x00, + 0x80, 0x78, 0x00, 0xf0, 0x33, 0xfc, 0x20, 0x1c, + 0x10, 0x30, 0x0e, 0xf0, 0x47, 0xfd, 0x00, 0xe0, + 0x00, 0x25, 0x28, 0x1c, 0x09, 0xb0, 0xf0, 0xbd, + 0xf4, 0x67, 0x01, 0x00, 0xc1, 0x38, 0x00, 0x00, + 0x10, 0xb5, 0x07, 0x4c, 0x06, 0x48, 0x06, 0x22, + 0x21, 0x1d, 0x08, 0x38, 0xfd, 0xf7, 0xf6, 0xf8, + 0x01, 0xf0, 0xfc, 0xff, 0x00, 0xf0, 0x42, 0xfc, + 0x20, 0x1c, 0x02, 0xf0, 0x3c, 0x00, 0x18, 0x33, + 0x00, 0x00, 0x27, 0xfc, 0x10, 0xbd, 0xf4, 0x67, + 0x01, 0x00, 0x08, 0x49, 0xc9, 0x68, 0x00, 0x29, + 0x0a, 0xd0, 0x06, 0x4a, 0x01, 0x32, 0x51, 0x78, + 0x12, 0x78, 0x48, 0x43, 0x00, 0x2a, 0x01, 0xd1, + 0x08, 0x18, 0x70, 0x47, 0x10, 0x18, 0x70, 0x47, + 0x01, 0x30, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x04, 0x4b, 0x05, 0x49, 0x00, 0x28, + 0x5a, 0x69, 0x00, 0xd0, 0x01, 0x1c, 0x3c, 0x00, + 0x54, 0x33, 0x00, 0x00, 0x10, 0x1c, 0x59, 0x61, + 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0xb9, 0x75, 0x00, 0x00, 0x07, 0x49, 0x00, 0x20, + 0x0a, 0x78, 0x02, 0x2a, 0x09, 0xd1, 0x0a, 0x7c, + 0x00, 0x2a, 0x05, 0xd1, 0xca, 0x68, 0x00, 0x2a, + 0x03, 0xd0, 0x49, 0x69, 0x00, 0x29, 0x00, 0xd0, + 0x01, 0x20, 0x70, 0x47, 0x78, 0x69, 0x01, 0x00, + 0x0c, 0x4a, 0x80, 0xb5, 0x01, 0x21, 0x51, 0x60, + 0x3c, 0x00, 0x90, 0x33, 0x00, 0x00, 0x09, 0xf0, + 0x6a, 0xf8, 0x09, 0x48, 0x1c, 0x30, 0x81, 0x69, + 0x00, 0x29, 0x07, 0xd0, 0x00, 0x23, 0x83, 0x61, + 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, 0x00, 0xf0, + 0xd2, 0xf8, 0x80, 0xbd, 0x00, 0x22, 0x00, 0x21, + 0x03, 0x48, 0x00, 0xf0, 0x5c, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, 0x51, 0x35, + 0x00, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x01, 0x28, + 0x16, 0xd1, 0x3c, 0x00, 0xcc, 0x33, 0x00, 0x00, + 0x0e, 0x4d, 0x02, 0x2c, 0x09, 0xd1, 0x00, 0xf0, + 0x2b, 0xfa, 0x00, 0x28, 0x0e, 0xd0, 0x68, 0x69, + 0x00, 0x28, 0x0b, 0xd1, 0x21, 0x1c, 0x13, 0x20, + 0x0c, 0xe0, 0x03, 0x2c, 0xfa, 0xd1, 0x00, 0xf0, + 0xf9, 0xf9, 0x00, 0x28, 0x02, 0xd0, 0x28, 0x7c, + 0x00, 0x28, 0xf3, 0xd0, 0xb0, 0xbd, 0x21, 0x1c, + 0x00, 0x06, 0x00, 0x0e, 0x04, 0xf0, 0x62, 0xfc, + 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x34, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x0c, 0x4c, 0x00, 0x25, 0x25, 0x74, 0x65, 0x61, + 0xe5, 0x60, 0x00, 0xf0, 0x3c, 0xfa, 0x00, 0xf0, + 0x34, 0xfa, 0x07, 0x48, 0x1c, 0x38, 0x05, 0x61, + 0x09, 0xf0, 0x33, 0xff, 0x20, 0x78, 0x00, 0x28, + 0x02, 0xd1, 0x04, 0xf0, 0x6e, 0xfa, 0xb0, 0xbd, + 0x02, 0x28, 0xfc, 0xd1, 0x04, 0xf0, 0xa5, 0xfb, + 0xb0, 0xbd, 0x78, 0x69, 0x01, 0x00, 0x3c, 0x00, + 0x44, 0x34, 0x00, 0x00, 0x0c, 0x48, 0x80, 0xb5, + 0x01, 0x78, 0x00, 0x29, 0x12, 0xd0, 0xc0, 0x68, + 0x00, 0x28, 0x0f, 0xd1, 0x08, 0x48, 0x1c, 0x38, + 0x40, 0x69, 0x00, 0x28, 0x0a, 0xd1, 0x07, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x06, 0xd0, 0x00, 0x22, + 0x07, 0x21, 0x10, 0x20, 0x10, 0xf0, 0xa0, 0xf9, + 0x02, 0xf0, 0x2c, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0xd4, 0x67, 0x01, 0x00, + 0x3c, 0x00, 0x80, 0x34, 0x00, 0x00, 0xf8, 0xb5, + 0x1d, 0x4e, 0x1c, 0x4d, 0x04, 0x1c, 0xf0, 0x68, + 0x02, 0x27, 0x1c, 0x3d, 0x00, 0x28, 0x07, 0xd0, + 0xe8, 0x68, 0x00, 0x28, 0x04, 0xd0, 0xfd, 0xf7, + 0xc2, 0xfe, 0x00, 0x28, 0x00, 0xd0, 0xbc, 0x43, + 0x00, 0x2c, 0x14, 0xd0, 0x37, 0x70, 0xf0, 0x68, + 0x14, 0x4f, 0x00, 0x28, 0x10, 0xd0, 0xe0, 0x07, + 0x17, 0xd4, 0xfd, 0xf7, 0xb4, 0xfe, 0x00, 0x28, + 0x13, 0xd0, 0x3c, 0x00, 0xbc, 0x34, 0x00, 0x00, + 0x70, 0x69, 0x00, 0x28, 0x06, 0xd1, 0xe8, 0x68, + 0x00, 0x28, 0x01, 0xd0, 0xfd, 0xf7, 0x1a, 0xff, + 0x0d, 0xf0, 0x0a, 0xfa, 0xf8, 0xbd, 0x68, 0x69, + 0x00, 0x28, 0x05, 0xd1, 0x09, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x2c, 0x04, 0xd1, + 0x39, 0x1c, 0x20, 0x1c, 0x0e, 0xf0, 0x52, 0xfd, + 0xf0, 0xe7, 0x04, 0xf0, 0x1d, 0xfb, 0x02, 0xf0, + 0xeb, 0xfb, 0xeb, 0xe7, 0x3c, 0x00, 0xf8, 0x34, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0x50, 0xc3, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x05, 0x48, + 0x41, 0x69, 0x00, 0x29, 0x04, 0xd0, 0x40, 0x6a, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x06, 0x49, + 0x00, 0x20, 0x48, 0x60, 0x08, 0x60, 0x88, 0x60, + 0x08, 0xf0, 0x9b, 0xff, 0x07, 0x21, 0x3c, 0x00, + 0x34, 0x35, 0x00, 0x00, 0x12, 0x20, 0x22, 0x79, + 0x10, 0xf0, 0x3a, 0xf9, 0x10, 0xbd, 0x00, 0x00, + 0x5c, 0x69, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0x08, 0x60, 0x70, 0x47, 0xe8, 0x67, 0x01, 0x00, + 0xf8, 0xb5, 0x07, 0x1c, 0x0e, 0x1c, 0x08, 0xf0, + 0xa3, 0xfa, 0x13, 0x4d, 0x04, 0x1c, 0x68, 0x68, + 0x00, 0x28, 0x17, 0xd0, 0x00, 0x2f, 0x02, 0xd0, + 0xa8, 0x68, 0x03, 0x28, 0x13, 0xd3, 0x00, 0x20, + 0x3c, 0x00, 0x70, 0x35, 0x00, 0x00, 0xa8, 0x60, + 0x68, 0x60, 0x21, 0x1c, 0x0f, 0x20, 0x0e, 0xf0, + 0xf0, 0xfe, 0x28, 0x68, 0x00, 0x28, 0x03, 0xd0, + 0x00, 0x2c, 0x06, 0xd1, 0x01, 0x20, 0x02, 0xe0, + 0x01, 0x2c, 0x02, 0xd1, 0x00, 0x20, 0xff, 0xf7, + 0xfa, 0xfe, 0xf8, 0xbd, 0x72, 0x1c, 0x00, 0x21, + 0x04, 0x48, 0x00, 0xf0, 0x68, 0xf8, 0xa8, 0x68, + 0x01, 0x30, 0xa8, 0x60, 0xf5, 0xe7, 0x5c, 0x69, + 0x01, 0x00, 0x3c, 0x00, 0xac, 0x35, 0x00, 0x00, + 0x51, 0x35, 0x00, 0x00, 0x0a, 0x49, 0x80, 0xb5, + 0xca, 0x68, 0x00, 0x2a, 0x0b, 0xd0, 0x42, 0x68, + 0x00, 0x2a, 0x09, 0xd0, 0x00, 0x22, 0x4a, 0x62, + 0x02, 0x68, 0x0a, 0x62, 0x02, 0x68, 0x07, 0x21, + 0x17, 0x20, 0x10, 0xf0, 0xef, 0xf8, 0x80, 0xbd, + 0x01, 0x20, 0x48, 0x62, 0x80, 0xbd, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0x70, 0xb5, 0x14, 0x4d, + 0x84, 0x6c, 0xe9, 0x68, 0x3c, 0x00, 0xe8, 0x35, + 0x00, 0x00, 0x00, 0x29, 0x17, 0xd0, 0x40, 0x30, + 0xec, 0x61, 0x40, 0x78, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x68, 0x62, 0x28, 0x6a, 0x0e, 0x4e, + 0x00, 0x1b, 0xb0, 0x42, 0x0c, 0xd2, 0x08, 0xf0, + 0x3a, 0xfe, 0x29, 0x6a, 0x40, 0x1a, 0xb0, 0x42, + 0x03, 0xd2, 0x02, 0x22, 0x07, 0x21, 0x13, 0x20, + 0x09, 0xe0, 0x04, 0xf0, 0xb6, 0xfa, 0x70, 0xbd, + 0x07, 0x48, 0xa9, 0x68, 0x0b, 0xf0, 0x3c, 0x00, + 0x24, 0x36, 0x00, 0x00, 0xbd, 0xfe, 0x22, 0x1c, + 0x07, 0x21, 0x16, 0x20, 0x10, 0xf0, 0xc0, 0xf8, + 0x70, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x0a, 0x49, 0x80, 0xb5, 0x00, 0x20, 0x88, 0x61, + 0x08, 0x69, 0x00, 0x28, 0x0c, 0xd0, 0x07, 0x48, + 0x1c, 0x30, 0x00, 0x78, 0x00, 0x28, 0x07, 0xd0, + 0x01, 0xf0, 0xd2, 0xff, 0x02, 0x28, 0x03, 0xd1, + 0x3c, 0x00, 0x60, 0x36, 0x00, 0x00, 0x00, 0xf0, + 0x12, 0xf9, 0x00, 0xf0, 0xbc, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, 0xf0, 0xb5, + 0x06, 0x1c, 0x0c, 0x1c, 0x15, 0x1c, 0x91, 0xb0, + 0x01, 0xa8, 0x40, 0x21, 0xfc, 0xf7, 0x0d, 0xff, + 0x00, 0x21, 0x68, 0x46, 0xfd, 0xf7, 0xa7, 0xff, + 0x04, 0x90, 0x01, 0xa8, 0x06, 0x22, 0x08, 0x49, + 0xfc, 0xf7, 0x31, 0xff, 0x06, 0x22, 0x02, 0xa8, + 0x02, 0x30, 0x3c, 0x00, 0x9c, 0x36, 0x00, 0x00, + 0x06, 0x49, 0xfc, 0xf7, 0x2b, 0xff, 0x00, 0xab, + 0xdc, 0x76, 0x0c, 0x95, 0x31, 0x1c, 0x01, 0xa8, + 0x07, 0xf0, 0x4e, 0xf8, 0x11, 0xb0, 0xf0, 0xbd, + 0x12, 0x61, 0x01, 0x00, 0xf8, 0x67, 0x01, 0x00, + 0x03, 0x1c, 0x08, 0x1c, 0x19, 0x1c, 0x11, 0x4b, + 0x80, 0xb5, 0x06, 0xd0, 0x04, 0x21, 0x11, 0x80, + 0x04, 0x22, 0x19, 0x1c, 0xfc, 0xf7, 0x12, 0xff, + 0x16, 0xe0, 0x04, 0x22, 0x3c, 0x00, 0xd8, 0x36, + 0x00, 0x00, 0x01, 0x1c, 0x18, 0x1c, 0xfc, 0xf7, + 0x0c, 0xff, 0x09, 0x48, 0x10, 0x38, 0x00, 0x69, + 0x00, 0x28, 0x0c, 0xd0, 0x07, 0x48, 0x0c, 0x30, + 0x00, 0x78, 0x00, 0x28, 0x07, 0xd0, 0x01, 0xf0, + 0x84, 0xff, 0x02, 0x28, 0x03, 0xd1, 0x00, 0xf0, + 0xc4, 0xf8, 0x00, 0xf0, 0x6e, 0xf8, 0x01, 0x20, + 0x80, 0xbd, 0x6c, 0x69, 0x01, 0x00, 0xf8, 0xb5, + 0x04, 0x1c, 0x0f, 0x1c, 0x00, 0x25, 0x3c, 0x00, + 0x14, 0x37, 0x00, 0x00, 0x00, 0x26, 0x01, 0xf0, + 0x73, 0xff, 0x02, 0x28, 0x2f, 0xd1, 0x19, 0x49, + 0x01, 0x2f, 0x08, 0x68, 0x07, 0xd1, 0x02, 0x1c, + 0x22, 0x40, 0x0a, 0xd1, 0x20, 0x43, 0x08, 0x60, + 0xa0, 0x42, 0x06, 0xd1, 0x04, 0xe0, 0x00, 0x28, + 0x03, 0xd0, 0xa0, 0x43, 0x08, 0x60, 0x00, 0xd1, + 0x01, 0x25, 0x48, 0x68, 0x00, 0x28, 0x1a, 0xd1, + 0x00, 0x2d, 0x17, 0xd0, 0x01, 0x20, 0x48, 0x60, + 0x3c, 0x00, 0x50, 0x37, 0x00, 0x00, 0x38, 0x1c, + 0x08, 0xf0, 0x89, 0xfe, 0x0b, 0x48, 0x1c, 0x30, + 0x81, 0x69, 0x00, 0x29, 0x07, 0xd0, 0x00, 0x23, + 0x83, 0x61, 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, + 0xff, 0xf7, 0xf1, 0xfe, 0x06, 0xe0, 0x00, 0x22, + 0x00, 0x21, 0x04, 0x48, 0xff, 0xf7, 0x7b, 0xff, + 0x00, 0xe0, 0x01, 0x26, 0x30, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, 0x51, 0x35, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x37, 0x00, 0x00, + 0x03, 0x1c, 0x08, 0x1c, 0x19, 0x1c, 0x12, 0x4b, + 0x80, 0xb5, 0x06, 0xd0, 0x04, 0x21, 0x11, 0x80, + 0x04, 0x22, 0x19, 0x1c, 0xfc, 0xf7, 0xaa, 0xfe, + 0x18, 0xe0, 0x04, 0x22, 0x01, 0x1c, 0x18, 0x1c, + 0xfc, 0xf7, 0xa4, 0xfe, 0x0a, 0x48, 0x10, 0x30, + 0xc1, 0x68, 0x00, 0x29, 0x0e, 0xd0, 0x00, 0x78, + 0x00, 0x28, 0x0b, 0xd0, 0x01, 0xf0, 0x1e, 0xff, + 0x02, 0x28, 0x07, 0xd1, 0x3c, 0x00, 0xc8, 0x37, + 0x00, 0x00, 0x00, 0xf0, 0x64, 0xf8, 0x00, 0xf0, + 0x2e, 0xf8, 0x00, 0x28, 0x01, 0xd1, 0x09, 0xf0, + 0x7a, 0xfd, 0x01, 0x20, 0x80, 0xbd, 0x68, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x0a, 0x4c, 0x20, 0x69, + 0x00, 0x28, 0x09, 0xd0, 0xa1, 0x69, 0x00, 0x29, + 0x06, 0xd1, 0x7d, 0x21, 0xc9, 0x00, 0x41, 0x43, + 0x03, 0x22, 0x07, 0x20, 0x0f, 0xf0, 0xe1, 0xfe, + 0x21, 0x69, 0x01, 0x20, 0x00, 0x29, 0x3c, 0x00, + 0x04, 0x38, 0x00, 0x00, 0x00, 0xd1, 0x00, 0x20, + 0x10, 0xbd, 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, + 0x10, 0xb5, 0x05, 0x4c, 0x00, 0x28, 0x03, 0xd0, + 0xfd, 0xf7, 0x9a, 0xfc, 0xe0, 0x60, 0x10, 0xbd, + 0x01, 0x20, 0x00, 0x21, 0xe1, 0x60, 0x10, 0xbd, + 0x78, 0x69, 0x01, 0x00, 0x0a, 0x48, 0x0a, 0x49, + 0x10, 0xb5, 0xc0, 0x68, 0x1c, 0x39, 0xc9, 0x68, + 0x00, 0x28, 0x03, 0xd0, 0x00, 0x29, 0x01, 0xd0, + 0x3c, 0x00, 0x40, 0x38, 0x00, 0x00, 0x01, 0x24, + 0x00, 0xe0, 0x00, 0x24, 0x00, 0x2c, 0x03, 0xd0, + 0x02, 0x22, 0x07, 0x20, 0x0f, 0xf0, 0xb7, 0xfe, + 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x4c, 0x00, 0x20, + 0x21, 0x69, 0x00, 0x29, 0x0c, 0xd0, 0x06, 0x49, + 0x1c, 0x31, 0x09, 0x78, 0x00, 0x29, 0x07, 0xd0, + 0x00, 0xf0, 0x09, 0xf8, 0x01, 0x20, 0xa0, 0x61, + 0x20, 0x69, 0x3c, 0x00, 0x7c, 0x38, 0x00, 0x00, + 0x7d, 0x23, 0xdb, 0x00, 0x58, 0x43, 0x10, 0xbd, + 0x5c, 0x69, 0x01, 0x00, 0x80, 0xb5, 0x03, 0x21, + 0x07, 0x20, 0x0f, 0xf0, 0xd1, 0xfe, 0x80, 0xbd, + 0x80, 0xb5, 0x02, 0x21, 0x07, 0x20, 0x0f, 0xf0, + 0xcb, 0xfe, 0x80, 0xbd, 0x06, 0x48, 0x80, 0xb5, + 0x00, 0x78, 0x00, 0x28, 0x01, 0xd0, 0xfd, 0xf7, + 0x29, 0xfd, 0x00, 0x22, 0x07, 0x21, 0x11, 0x20, + 0x0f, 0xf0, 0x7c, 0xff, 0x3c, 0x00, 0xb8, 0x38, + 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x10, 0x1c, + 0x06, 0x4a, 0x51, 0x61, 0x00, 0xf0, 0xa3, 0xf8, + 0x10, 0x20, 0x00, 0x2c, 0x00, 0xd1, 0x11, 0x20, + 0x00, 0x22, 0x07, 0x21, 0x0f, 0xf0, 0x69, 0xff, + 0x10, 0xbd, 0x5c, 0x69, 0x01, 0x00, 0x01, 0x49, + 0x48, 0x62, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x4c, 0x3c, 0x00, + 0xf4, 0x38, 0x00, 0x00, 0xe0, 0x69, 0x00, 0x28, + 0x0c, 0xd1, 0xe0, 0x62, 0x01, 0x20, 0xe0, 0x61, + 0x0b, 0xf0, 0x08, 0xfd, 0x0b, 0xf0, 0x74, 0xfe, + 0x01, 0x20, 0x00, 0xf0, 0xb5, 0xf8, 0x0f, 0xf0, + 0x4d, 0xfa, 0x60, 0x63, 0x10, 0xbd, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x05, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0xc8, 0x61, 0x88, 0x63, 0x00, 0xf0, + 0x89, 0xf8, 0x00, 0xf0, 0x01, 0xf9, 0x02, 0xf0, + 0x3c, 0x00, 0x30, 0x39, 0x00, 0x00, 0x91, 0xfb, + 0x80, 0xbd, 0x44, 0x7d, 0x01, 0x00, 0x10, 0xb5, + 0x01, 0x28, 0x38, 0xd1, 0x08, 0x06, 0x00, 0x0e, + 0x05, 0x28, 0x32, 0xd1, 0x1d, 0x4c, 0x20, 0x78, + 0x01, 0x28, 0x09, 0xd0, 0x02, 0x28, 0x1b, 0xd0, + 0x03, 0x28, 0x2a, 0xd1, 0x02, 0xf0, 0x7d, 0xfb, + 0x00, 0xf0, 0x6f, 0xf8, 0x01, 0x20, 0x10, 0xe0, + 0x17, 0x48, 0x21, 0x6b, 0x0b, 0xf0, 0x1b, 0xfd, + 0x0b, 0xf0, 0x3c, 0x00, 0x6c, 0x39, 0x00, 0x00, + 0x41, 0xfe, 0x15, 0x48, 0x00, 0x69, 0x03, 0x28, + 0x01, 0xd3, 0xc0, 0x07, 0x03, 0xd5, 0x01, 0x21, + 0x20, 0x6b, 0x07, 0xf0, 0x19, 0xff, 0x02, 0x20, + 0x00, 0xf0, 0x78, 0xf8, 0x10, 0xbd, 0x0f, 0x48, + 0x00, 0x68, 0x20, 0x64, 0x0a, 0x48, 0x5c, 0x30, + 0xc1, 0x68, 0x02, 0x69, 0x89, 0x18, 0xc1, 0x60, + 0x03, 0xf0, 0xcc, 0xfc, 0x03, 0x20, 0x00, 0xf0, + 0x69, 0xf8, 0x01, 0x20, 0x3c, 0x00, 0xa8, 0x39, + 0x00, 0x00, 0xe0, 0x62, 0x10, 0xbd, 0x09, 0x21, + 0x00, 0xe0, 0x08, 0x21, 0x09, 0x20, 0xfd, 0xf7, + 0x76, 0xfc, 0x10, 0xbd, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0xf4, 0x68, + 0x01, 0x00, 0x78, 0x6e, 0x01, 0x00, 0xb0, 0xb5, + 0x0f, 0x4c, 0x20, 0x78, 0x65, 0x1e, 0x01, 0x28, + 0x0f, 0xd1, 0x00, 0x20, 0xff, 0xf7, 0xa1, 0xfc, + 0x0c, 0x49, 0x09, 0x88, 0x49, 0x08, 0x3c, 0x00, + 0xe4, 0x39, 0x00, 0x00, 0x40, 0x1a, 0x0f, 0xf0, + 0x19, 0xf9, 0x00, 0x28, 0x04, 0xd0, 0x28, 0x78, + 0x01, 0x28, 0x07, 0xd0, 0x02, 0x28, 0x05, 0xd0, + 0x20, 0x78, 0x00, 0x28, 0x04, 0xd1, 0x28, 0x78, + 0x03, 0x28, 0x01, 0xd1, 0x01, 0x20, 0xb0, 0xbd, + 0x00, 0x20, 0xb0, 0xbd, 0x45, 0x7d, 0x01, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x01, 0x49, 0xc8, 0x64, + 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0x3c, 0x00, 0x20, 0x3a, 0x00, 0x00, 0x04, 0x49, + 0x05, 0x4a, 0x89, 0x68, 0x12, 0x6d, 0x01, 0x20, + 0x91, 0x42, 0x00, 0xd3, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, 0x20, 0x6b, + 0x07, 0xf0, 0xf9, 0xfe, 0xa0, 0x6b, 0x00, 0x28, + 0x03, 0xd1, 0x03, 0x48, 0x21, 0x6b, 0x0b, 0xf0, + 0x92, 0xfc, 0x10, 0xbd, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x3c, 0x00, 0x5c, 0x3a, 0x00, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x04, 0x48, 0x00, 0x78, + 0x02, 0x28, 0x01, 0xd0, 0x03, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x44, 0x7d, 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x1c, + 0xff, 0xf7, 0xd0, 0xff, 0x06, 0x1c, 0x01, 0x2f, + 0x26, 0x4d, 0x1f, 0xd0, 0x02, 0x2f, 0x45, 0xd0, + 0x03, 0x2f, 0x12, 0xd1, 0x24, 0x48, 0x25, 0x4b, + 0x00, 0x69, 0x6a, 0x69, 0x3c, 0x00, 0x98, 0x3a, + 0x00, 0x00, 0x41, 0x08, 0x5a, 0x43, 0x23, 0x4b, + 0xd4, 0x18, 0x8c, 0x42, 0x00, 0xd9, 0x0c, 0x1c, + 0x00, 0x2e, 0x05, 0xd0, 0x1e, 0x49, 0x5b, 0x39, + 0x09, 0x78, 0x00, 0x29, 0x00, 0xd1, 0x04, 0x1c, + 0x05, 0x22, 0x21, 0x1c, 0x09, 0x20, 0x0f, 0xf0, + 0x80, 0xfd, 0x18, 0x4a, 0x5c, 0x3a, 0x17, 0x70, + 0xf8, 0xbd, 0xff, 0xf7, 0xd6, 0xfb, 0x00, 0x28, + 0x02, 0xd0, 0x28, 0x69, 0x00, 0x28, 0x3c, 0x00, + 0xd4, 0x3a, 0x00, 0x00, 0x0e, 0xd0, 0x04, 0xf0, + 0xcf, 0xfb, 0x13, 0x4b, 0x69, 0x69, 0x11, 0x4a, + 0x59, 0x43, 0x5c, 0x3a, 0xd2, 0x6b, 0x89, 0x18, + 0x88, 0x42, 0x01, 0xd9, 0x44, 0x1a, 0x04, 0xe0, + 0x00, 0x24, 0x02, 0xe0, 0x04, 0xf0, 0xae, 0xfd, + 0x04, 0x1c, 0x00, 0x2e, 0xdb, 0xd0, 0x09, 0x48, + 0x5b, 0x38, 0x00, 0x78, 0x01, 0x28, 0xd6, 0xd1, + 0x08, 0x4b, 0x9c, 0x42, 0x02, 0xd9, 0x58, 0x42, + 0x3c, 0x00, 0x10, 0x3b, 0x00, 0x00, 0x24, 0x18, + 0xd0, 0xe7, 0x00, 0x24, 0xce, 0xe7, 0x04, 0xf0, + 0xae, 0xfb, 0xca, 0xe7, 0x00, 0x00, 0xf4, 0x68, + 0x01, 0x00, 0xa0, 0x7d, 0x01, 0x00, 0x98, 0x3a, + 0x00, 0x00, 0x88, 0x13, 0x00, 0x00, 0x80, 0xb5, + 0x05, 0x21, 0x09, 0x20, 0x0f, 0xf0, 0x7d, 0xfd, + 0x02, 0x49, 0x00, 0x20, 0x08, 0x70, 0x80, 0xbd, + 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, 0x70, 0xb5, + 0x06, 0x1c, 0x3c, 0x00, 0x4c, 0x3b, 0x00, 0x00, + 0x0d, 0xf0, 0xbc, 0xfa, 0xff, 0xf7, 0xce, 0xfe, + 0x09, 0x4c, 0x0a, 0x48, 0x21, 0x6b, 0x0b, 0xf0, + 0x21, 0xfc, 0x01, 0x25, 0x01, 0x21, 0x30, 0x06, + 0x00, 0x0e, 0xa5, 0x63, 0x07, 0xf0, 0x3a, 0xfe, + 0x05, 0x48, 0x29, 0x02, 0x09, 0x58, 0x00, 0x29, + 0x00, 0xd1, 0x05, 0x61, 0x70, 0xbd, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x3c, 0x00, 0x88, 0x3b, + 0x00, 0x00, 0x02, 0x4a, 0x11, 0x6c, 0x08, 0x43, + 0x10, 0x64, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x80, 0xb5, 0xff, 0xf7, 0xbf, 0xfe, + 0x0b, 0xf0, 0xa1, 0xfb, 0x80, 0xbd, 0x02, 0x4a, + 0x01, 0x1c, 0x10, 0x69, 0x11, 0x61, 0x70, 0x47, + 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, 0xf3, 0xb5, + 0x06, 0x1c, 0x00, 0x20, 0x89, 0xb0, 0xf8, 0x4c, + 0x08, 0x90, 0xe2, 0x69, 0x08, 0x25, 0x3c, 0x00, + 0xc4, 0x3b, 0x00, 0x00, 0x00, 0x2a, 0x03, 0xd0, + 0x06, 0xa9, 0x07, 0xa8, 0xfc, 0xf7, 0x06, 0xfc, + 0x30, 0x1c, 0xf3, 0x4e, 0x00, 0x27, 0x20, 0x36, + 0x82, 0x28, 0x6f, 0xd0, 0x15, 0xdc, 0x01, 0x28, + 0x18, 0xd0, 0x80, 0x28, 0x6b, 0xd1, 0xee, 0x4d, + 0x80, 0x3d, 0xa8, 0x68, 0x01, 0x28, 0x67, 0xd1, + 0x68, 0x68, 0x0f, 0xf0, 0x1b, 0xf8, 0x00, 0x28, + 0x63, 0xd1, 0x01, 0x21, 0x01, 0x20, 0x0d, 0xf0, + 0x3c, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x9d, 0xf8, + 0x08, 0xf0, 0xdb, 0xfd, 0x0b, 0xb0, 0xf0, 0xbd, + 0x83, 0x28, 0x6d, 0xd0, 0x84, 0x28, 0x55, 0xd1, + 0xe7, 0xe0, 0x0a, 0x98, 0x0a, 0x28, 0x04, 0xd2, + 0x03, 0xa3, 0x1b, 0x18, 0x1b, 0x5a, 0x5b, 0x00, + 0x9f, 0x44, 0xf6, 0xe0, 0x00, 0x00, 0xee, 0x00, + 0x0b, 0x00, 0xf7, 0x00, 0xf7, 0x00, 0xf7, 0x00, + 0xf7, 0x00, 0x2f, 0x00, 0x88, 0x00, 0x8b, 0x00, + 0xad, 0x00, 0x3c, 0x00, 0x3c, 0x3c, 0x00, 0x00, + 0x00, 0xf0, 0x56, 0xfe, 0x00, 0x28, 0x17, 0xd0, + 0xd6, 0x4a, 0x80, 0x3a, 0xd1, 0x6a, 0x06, 0x98, + 0x81, 0x42, 0x16, 0xd0, 0x06, 0x21, 0x00, 0x28, + 0x00, 0xd1, 0x07, 0x21, 0x0d, 0x06, 0x2d, 0x0e, + 0x00, 0x28, 0x0e, 0xd0, 0xcf, 0x4a, 0x01, 0x20, + 0x80, 0x3a, 0x50, 0x65, 0x0f, 0xf0, 0xa0, 0xf8, + 0xcc, 0x4a, 0x80, 0x3a, 0x50, 0x66, 0x04, 0xe0, + 0x00, 0x21, 0x16, 0x20, 0x3c, 0x00, 0x78, 0x3c, + 0x00, 0x00, 0x0f, 0xf0, 0xdc, 0xfc, 0x01, 0x25, + 0x02, 0x20, 0x05, 0x90, 0x2e, 0xe2, 0xc6, 0x48, + 0x80, 0x38, 0x40, 0x6d, 0x00, 0x28, 0x2e, 0xd0, + 0xc6, 0x49, 0x20, 0x69, 0xc4, 0x4d, 0x40, 0x18, + 0x0e, 0xf0, 0xc1, 0xff, 0x00, 0x28, 0x12, 0xd0, + 0x0f, 0xf0, 0x85, 0xf8, 0xc1, 0x49, 0x49, 0x42, + 0x40, 0x18, 0xbd, 0x49, 0x20, 0x61, 0x80, 0x39, + 0x48, 0x6e, 0x40, 0x19, 0x0e, 0xf0, 0x3c, 0x00, + 0xb4, 0x3c, 0x00, 0x00, 0xbb, 0xff, 0x00, 0x28, + 0x11, 0xd0, 0x0a, 0xe0, 0xf7, 0xe0, 0x17, 0xe2, + 0xb2, 0xe0, 0xb0, 0xe0, 0xb6, 0x49, 0x20, 0x69, + 0x80, 0x39, 0x49, 0x6e, 0x40, 0x1a, 0xa8, 0x42, + 0x05, 0xdb, 0xb3, 0x49, 0xb5, 0x4d, 0x80, 0x39, + 0x4f, 0x65, 0x03, 0xf0, 0x27, 0xfb, 0x06, 0x22, + 0x29, 0x1c, 0x16, 0x20, 0x0f, 0xf0, 0x72, 0xfc, + 0x47, 0xe0, 0x95, 0xe0, 0x00, 0xf0, 0xfe, 0xfd, + 0x3c, 0x00, 0xf0, 0x3c, 0x00, 0x00, 0x00, 0x28, + 0x42, 0xd1, 0xaa, 0x4d, 0xc4, 0x3d, 0xef, 0x60, + 0x08, 0xf0, 0x19, 0xfd, 0x03, 0xf0, 0x15, 0xfb, + 0xa8, 0x6a, 0x00, 0x28, 0x02, 0xd0, 0xff, 0xf7, + 0x4c, 0xff, 0xaf, 0x62, 0xa4, 0x48, 0x80, 0x38, + 0x00, 0x68, 0x00, 0x21, 0xff, 0xf7, 0xf9, 0xfc, + 0x08, 0xf0, 0x3f, 0xf9, 0x09, 0x21, 0x16, 0x20, + 0x0f, 0xf0, 0x87, 0xfc, 0x00, 0x22, 0x16, 0x21, + 0x83, 0x20, 0x3c, 0x00, 0x2c, 0x3d, 0x00, 0x00, + 0x0f, 0xf0, 0x40, 0xfd, 0xff, 0xf7, 0x86, 0xfc, + 0x21, 0xe0, 0x00, 0xf0, 0x1b, 0xfe, 0x1e, 0xe0, + 0x06, 0xf0, 0x54, 0xfa, 0x97, 0x4d, 0x80, 0x3d, + 0xa9, 0x6f, 0x40, 0x1a, 0x04, 0x90, 0x06, 0x98, + 0x00, 0x28, 0x01, 0xd0, 0xaf, 0x65, 0x02, 0xe0, + 0xa8, 0x6d, 0x00, 0x28, 0x08, 0xd1, 0x91, 0x48, + 0xc4, 0x38, 0x00, 0x78, 0x80, 0x07, 0x03, 0xd5, + 0x92, 0x48, 0x47, 0x60, 0x3c, 0x00, 0x68, 0x3d, + 0x00, 0x00, 0x00, 0xf0, 0x02, 0xfe, 0x04, 0x98, + 0xff, 0x38, 0x23, 0x38, 0x14, 0x28, 0x02, 0xd2, + 0x01, 0x20, 0xe8, 0x63, 0x53, 0xe0, 0xef, 0x63, + 0x51, 0xe0, 0x87, 0x4a, 0xb5, 0x7a, 0x80, 0x3a, + 0x00, 0x2d, 0x4c, 0xd0, 0x0d, 0xf0, 0x71, 0xff, + 0x00, 0xf0, 0xad, 0xfd, 0x07, 0x1c, 0x82, 0x48, + 0x80, 0x38, 0x40, 0x6f, 0xff, 0x30, 0x5f, 0x30, + 0x0e, 0xf0, 0x3d, 0xff, 0x02, 0x1c, 0x3c, 0x00, + 0xa4, 0x3d, 0x00, 0x00, 0x7e, 0x48, 0x80, 0x38, + 0x40, 0x6d, 0x00, 0x28, 0x1a, 0xd1, 0x00, 0xf0, + 0xf1, 0xfd, 0x00, 0x28, 0x16, 0xd1, 0x04, 0x2d, + 0x02, 0xd1, 0x00, 0x2f, 0x12, 0xd1, 0x1b, 0xe0, + 0x00, 0x2f, 0x06, 0xd0, 0x02, 0x2d, 0x14, 0xd0, + 0x79, 0x48, 0x40, 0x68, 0x00, 0x28, 0x09, 0xd0, + 0x12, 0xe0, 0x00, 0x2a, 0x10, 0xd1, 0x4b, 0x21, + 0xc9, 0x00, 0x01, 0x23, 0x09, 0x22, 0x16, 0x20, + 0x3c, 0x00, 0xe0, 0x3d, 0x00, 0x00, 0x0f, 0xf0, + 0xd6, 0xfc, 0x6e, 0x4a, 0x73, 0x48, 0x80, 0x3a, + 0x11, 0x68, 0x0b, 0xf0, 0xd8, 0xfa, 0x18, 0xe0, + 0x01, 0x21, 0x00, 0x20, 0x01, 0xe0, 0x01, 0x21, + 0x01, 0x20, 0x00, 0xf0, 0x2a, 0xfe, 0x10, 0xe0, + 0x67, 0x4a, 0x6c, 0x49, 0x80, 0x3a, 0x90, 0x6e, + 0x40, 0x18, 0x90, 0x66, 0x01, 0x25, 0x08, 0x95, + 0x8b, 0xe1, 0x04, 0x21, 0x6c, 0xe1, 0x61, 0x4a, + 0x66, 0x48, 0x3c, 0x00, 0x1c, 0x3e, 0x00, 0x00, + 0x80, 0x3a, 0x11, 0x68, 0x0b, 0xf0, 0xaa, 0xfa, + 0x88, 0xe1, 0xaf, 0x60, 0xa8, 0x6f, 0xe8, 0x67, + 0x63, 0x48, 0x01, 0x6d, 0xa9, 0x67, 0x07, 0x9a, + 0x14, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x08, 0x18, 0x12, 0x30, 0xa8, 0x66, 0x70, 0x78, + 0xb0, 0x70, 0x30, 0x78, 0x70, 0x70, 0x02, 0x20, + 0x30, 0x70, 0xa0, 0x69, 0xfc, 0xf7, 0xc2, 0xfa, + 0xef, 0x64, 0xa8, 0x6f, 0x3c, 0x00, 0x58, 0x3e, + 0x00, 0x00, 0xe9, 0x6f, 0x59, 0x4b, 0x40, 0x1a, + 0x98, 0x42, 0x12, 0xd2, 0x68, 0x6d, 0x06, 0x99, + 0x88, 0x42, 0x0e, 0xd0, 0x30, 0x78, 0x02, 0x28, + 0x0b, 0xd8, 0x0e, 0xf0, 0x9c, 0xff, 0xa9, 0x6f, + 0x08, 0x22, 0x40, 0x1a, 0x52, 0x49, 0x09, 0x1a, + 0x3b, 0x1c, 0x16, 0x20, 0x0f, 0xf0, 0x85, 0xfc, + 0x00, 0xe0, 0xaf, 0x65, 0x01, 0x20, 0x05, 0x90, + 0x08, 0x90, 0x43, 0x48, 0x02, 0x25, 0x3c, 0x00, + 0x94, 0x3e, 0x00, 0x00, 0xc4, 0x38, 0xc1, 0x68, + 0x00, 0x29, 0x72, 0xd1, 0x01, 0x21, 0xc1, 0x60, + 0x49, 0x48, 0x00, 0x6b, 0x00, 0x28, 0x6c, 0xd0, + 0x08, 0xf0, 0x66, 0xfc, 0x69, 0xe0, 0x3c, 0x48, + 0x00, 0x22, 0x01, 0x92, 0x80, 0x38, 0x80, 0x68, + 0x01, 0x28, 0x04, 0xd1, 0x38, 0x48, 0x80, 0x38, + 0x87, 0x60, 0x01, 0x20, 0x48, 0xe1, 0x3a, 0x48, + 0x01, 0x23, 0x43, 0x60, 0x34, 0x48, 0xc4, 0x38, + 0x3c, 0x00, 0xd0, 0x3e, 0x00, 0x00, 0x00, 0x78, + 0x00, 0x28, 0x0a, 0xd1, 0x00, 0xf0, 0x25, 0xfe, + 0x00, 0x28, 0x06, 0xd0, 0xff, 0x21, 0x91, 0x31, + 0x01, 0x23, 0x09, 0x22, 0x16, 0x20, 0x0f, 0xf0, + 0x52, 0xfc, 0x2c, 0x49, 0x80, 0x39, 0x48, 0x6f, + 0x89, 0x6f, 0x42, 0x1a, 0x03, 0x92, 0x06, 0xf0, + 0x76, 0xf9, 0x28, 0x49, 0x80, 0x39, 0x89, 0x6f, + 0x03, 0x9a, 0x40, 0x1a, 0x02, 0x90, 0x37, 0x20, + 0x00, 0x01, 0x3c, 0x00, 0x0c, 0x3f, 0x00, 0x00, + 0x10, 0x1a, 0x50, 0x28, 0x0d, 0xd2, 0x23, 0x48, + 0x80, 0x38, 0x40, 0x6d, 0x00, 0x28, 0x04, 0xd1, + 0x02, 0x98, 0xff, 0x38, 0x55, 0x38, 0x14, 0x28, + 0x01, 0xd2, 0x01, 0x22, 0x00, 0xe0, 0x00, 0x22, + 0x01, 0x92, 0x03, 0x9a, 0x01, 0x20, 0xff, 0x3a, + 0x0b, 0x3a, 0x50, 0x2a, 0x00, 0xd3, 0x00, 0x20, + 0x04, 0x90, 0x00, 0x28, 0x0a, 0xd0, 0x17, 0x48, + 0x80, 0x38, 0xc0, 0x6f, 0x3c, 0x00, 0x48, 0x3f, + 0x00, 0x00, 0x08, 0x1a, 0x9b, 0x21, 0xc9, 0x00, + 0x40, 0x1a, 0x14, 0x28, 0x01, 0xd2, 0x01, 0x22, + 0x00, 0xe0, 0x00, 0x22, 0x00, 0x92, 0x00, 0x2a, + 0x11, 0xd0, 0x0f, 0x4d, 0x01, 0x20, 0x80, 0x3d, + 0x68, 0x65, 0x0e, 0xf0, 0x20, 0xff, 0x68, 0x66, + 0x01, 0x25, 0x01, 0x21, 0x16, 0x20, 0x0f, 0xf0, + 0x5e, 0xfb, 0x00, 0x21, 0x16, 0x20, 0x0f, 0xf0, + 0x5a, 0xfb, 0x00, 0xe0, 0xba, 0xe0, 0x3c, 0x00, + 0x84, 0x3f, 0x00, 0x00, 0xf0, 0x79, 0x02, 0x28, + 0x3c, 0xd8, 0x05, 0x4a, 0x80, 0x3a, 0x51, 0x6c, + 0x00, 0x29, 0x37, 0xd1, 0x13, 0x6c, 0x11, 0x1c, + 0x00, 0x2b, 0x33, 0xd1, 0x16, 0xe0, 0x00, 0x00, + 0x24, 0x6d, 0x01, 0x00, 0x50, 0xc3, 0x00, 0x00, + 0xc0, 0x5c, 0x15, 0x00, 0x70, 0x99, 0x14, 0x00, + 0xb0, 0x57, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xe2, 0x04, 0x00, 0x00, 0x00, 0x90, 0x07, 0x00, + 0x3c, 0x00, 0xc0, 0x3f, 0x00, 0x00, 0x53, 0x07, + 0x00, 0x00, 0x1e, 0x02, 0x00, 0x00, 0xc8, 0x57, + 0x01, 0x00, 0x4a, 0x6d, 0x00, 0x2a, 0x02, 0xd0, + 0xb2, 0x7a, 0x02, 0x2a, 0x15, 0xd1, 0x00, 0x9a, + 0x00, 0x2a, 0x03, 0xd0, 0xca, 0x6d, 0x01, 0x32, + 0xca, 0x65, 0x00, 0xe0, 0xcf, 0x65, 0x01, 0x9a, + 0x00, 0x2a, 0x0b, 0xd0, 0x8a, 0x6f, 0xcb, 0x6f, + 0xd2, 0x1a, 0x5a, 0x4b, 0x9a, 0x42, 0x02, 0xd2, + 0x8a, 0x6d, 0x3c, 0x00, 0xfc, 0x3f, 0x00, 0x00, + 0x01, 0x32, 0x00, 0xe0, 0x01, 0x22, 0x8a, 0x65, + 0x00, 0xe0, 0x8f, 0x65, 0x04, 0x99, 0x00, 0x29, + 0x01, 0xd1, 0x02, 0x28, 0x0b, 0xd9, 0x54, 0x4a, + 0x02, 0x28, 0x1e, 0xd9, 0xd0, 0x6f, 0x61, 0x68, + 0x88, 0x42, 0x1a, 0xd1, 0x91, 0x6f, 0x08, 0x1a, + 0x50, 0x49, 0x88, 0x42, 0x15, 0xdd, 0x4e, 0x4b, + 0x98, 0x6f, 0xe1, 0x68, 0x40, 0x1a, 0x7d, 0x21, + 0xc9, 0x00, 0x88, 0x42, 0x3c, 0x00, 0x38, 0x40, + 0x00, 0x00, 0x0b, 0xdd, 0x61, 0x69, 0x40, 0x1a, + 0x00, 0x28, 0x04, 0xdd, 0x02, 0x11, 0x40, 0x11, + 0x10, 0x18, 0x40, 0x18, 0x01, 0xe0, 0x80, 0x10, + 0x08, 0x18, 0x60, 0x61, 0x58, 0x6f, 0xe0, 0x60, + 0x03, 0x98, 0xff, 0x38, 0x23, 0x38, 0x14, 0x28, + 0x09, 0xd2, 0x02, 0x98, 0xff, 0x38, 0x23, 0x38, + 0x14, 0x28, 0x04, 0xd2, 0x3e, 0x4a, 0x90, 0x6f, + 0x50, 0x64, 0x90, 0x6a, 0x90, 0x64, 0x3c, 0x00, + 0x74, 0x40, 0x00, 0x00, 0x0e, 0xf0, 0x9a, 0xfe, + 0x3a, 0x49, 0x49, 0x6c, 0x40, 0x1a, 0x3b, 0x49, + 0x88, 0x42, 0x01, 0xd9, 0x37, 0x49, 0x4f, 0x64, + 0x39, 0x49, 0x03, 0x98, 0x40, 0x18, 0x14, 0x28, + 0x07, 0xd2, 0x34, 0x49, 0xc8, 0x6b, 0x00, 0x28, + 0x03, 0xd0, 0x88, 0x6f, 0x08, 0x64, 0x88, 0x6a, + 0x88, 0x64, 0x0e, 0xf0, 0x83, 0xfe, 0x2f, 0x49, + 0x09, 0x6c, 0x40, 0x1a, 0x31, 0x49, 0x88, 0x42, + 0x3c, 0x00, 0xb0, 0x40, 0x00, 0x00, 0x01, 0xd9, + 0x2c, 0x48, 0x07, 0x64, 0x04, 0x20, 0x05, 0x90, + 0x08, 0x21, 0x16, 0x20, 0x0f, 0xf0, 0xb9, 0xfa, + 0x28, 0x48, 0x40, 0x6d, 0x00, 0x28, 0x02, 0xd0, + 0x04, 0x99, 0x00, 0x29, 0x08, 0xd0, 0x29, 0x49, + 0x00, 0x28, 0x00, 0xd1, 0x29, 0x49, 0x3b, 0x1c, + 0x06, 0x22, 0x16, 0x20, 0x0f, 0xf0, 0x57, 0xfb, + 0x02, 0x2d, 0x09, 0xd0, 0x06, 0x2d, 0x0a, 0xd0, + 0x07, 0x2d, 0x3c, 0x00, 0xec, 0x40, 0x00, 0x00, + 0x13, 0xd1, 0x07, 0xe0, 0x01, 0x21, 0x16, 0x20, + 0xfd, 0xf7, 0xd6, 0xf8, 0x1e, 0xe0, 0x1a, 0x4a, + 0x57, 0x63, 0x97, 0x63, 0x18, 0x4a, 0x06, 0x98, + 0xd0, 0x62, 0x07, 0x99, 0x11, 0x63, 0x53, 0x6b, + 0x18, 0x43, 0x50, 0x63, 0x90, 0x6b, 0x08, 0x43, + 0x90, 0x63, 0x05, 0x98, 0x00, 0x28, 0x05, 0xd0, + 0x05, 0x98, 0x0c, 0xf0, 0x5f, 0xfa, 0x05, 0x98, + 0x0c, 0xf0, 0xd2, 0xf9, 0x3c, 0x00, 0x28, 0x41, + 0x00, 0x00, 0x08, 0x2d, 0x05, 0xd0, 0x0d, 0x48, + 0x44, 0x38, 0x85, 0x70, 0x28, 0x1c, 0x03, 0xf0, + 0xdc, 0xfd, 0x11, 0x49, 0xe0, 0x69, 0x88, 0x42, + 0x00, 0xd1, 0x61, 0xe5, 0x08, 0x98, 0x00, 0x28, + 0xfb, 0xd0, 0xb0, 0x7a, 0x02, 0x28, 0xf8, 0xd1, + 0x01, 0x21, 0x16, 0x20, 0x0f, 0xf0, 0x6f, 0xfa, + 0x02, 0x20, 0x0d, 0xf0, 0xe8, 0xfe, 0x53, 0xe5, + 0x00, 0x00, 0x53, 0x07, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x41, 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x20, 0xa1, 0x07, 0x00, 0x20, 0x4e, 0x00, 0x00, + 0x3f, 0xfb, 0xff, 0xff, 0xa0, 0x86, 0x01, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0xc0, 0x5c, 0x15, 0x00, + 0xf1, 0x1d, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xf8, 0xb5, 0x21, 0x48, + 0x00, 0x68, 0x21, 0x4d, 0x69, 0x69, 0x08, 0x40, + 0x01, 0xd1, 0x01, 0x27, 0x00, 0xe0, 0x00, 0x27, + 0x3c, 0x00, 0xa0, 0x41, 0x00, 0x00, 0x1d, 0x4d, + 0x01, 0x26, 0x69, 0x6a, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x26, 0x1b, 0x4d, 0x1a, 0x48, 0x2c, 0x1c, + 0xa0, 0x30, 0x02, 0x7a, 0x28, 0x1c, 0x40, 0x30, + 0x80, 0x34, 0x10, 0x23, 0xb7, 0x42, 0x10, 0xd1, + 0x01, 0x25, 0xc5, 0x80, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x23, 0x1a, 0x43, 0x11, 0x1c, 0x01, 0x73, + 0x01, 0x20, 0x0e, 0xf0, 0x88, 0xfe, 0x08, 0x20, + 0x20, 0x70, 0x3c, 0x00, 0xdc, 0x41, 0x00, 0x00, + 0x00, 0x22, 0x16, 0x21, 0x80, 0x20, 0x13, 0xe0, + 0x11, 0x27, 0xc7, 0x80, 0x2e, 0x1c, 0x0b, 0x4d, + 0x00, 0x29, 0x00, 0xd1, 0x00, 0x23, 0x1a, 0x43, + 0x11, 0x1c, 0x01, 0x73, 0x01, 0x20, 0x0e, 0xf0, + 0x75, 0xfe, 0x08, 0x20, 0x20, 0x70, 0x30, 0x6d, + 0x00, 0x22, 0x16, 0x21, 0x68, 0x67, 0x82, 0x20, + 0x0f, 0xf0, 0xd0, 0xfa, 0xf8, 0xbd, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0x3c, 0x00, 0x18, 0x42, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x00, 0x90, + 0x07, 0x00, 0xb0, 0xb5, 0x0f, 0x4d, 0x04, 0x1c, + 0xaa, 0x7a, 0x01, 0x21, 0x08, 0x1c, 0x00, 0x2a, + 0x00, 0xd0, 0x00, 0x20, 0x00, 0x2c, 0x00, 0xd0, + 0x00, 0x21, 0x88, 0x42, 0x0a, 0xd0, 0x00, 0x2c, + 0x04, 0xd1, 0x00, 0xf0, 0x42, 0xfb, 0x00, 0xf0, + 0xd6, 0xfa, 0x03, 0xe0, 0x00, 0xf0, 0xd9, 0xfa, + 0x00, 0xf0, 0x09, 0xf8, 0xa8, 0x7a, 0x3c, 0x00, + 0x54, 0x42, 0x00, 0x00, 0x02, 0x49, 0xe4, 0x39, + 0x48, 0x71, 0xac, 0x72, 0xb0, 0xbd, 0x00, 0x00, + 0x44, 0x6d, 0x01, 0x00, 0x80, 0xb5, 0x3e, 0xf0, + 0x55, 0xf8, 0x02, 0x49, 0x01, 0x20, 0x08, 0x70, + 0x80, 0xbd, 0x00, 0x00, 0x68, 0x7e, 0x01, 0x00, + 0xf3, 0xb5, 0x01, 0x20, 0x8d, 0xb0, 0x0f, 0x1c, + 0x01, 0x24, 0x08, 0x90, 0x0e, 0xf0, 0x92, 0xfd, + 0x06, 0x1c, 0x00, 0xf0, 0xb5, 0xfa, 0x09, 0x90, + 0x3c, 0x00, 0x90, 0x42, 0x00, 0x00, 0x00, 0xf0, + 0x80, 0xfb, 0x07, 0x90, 0xfe, 0xf7, 0x3f, 0xfa, + 0x05, 0x1c, 0x00, 0x21, 0x0c, 0x91, 0x08, 0xf0, + 0xf0, 0xfb, 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x0a, 0x90, 0xfe, 0xf7, + 0x12, 0xfd, 0x05, 0xf0, 0xe0, 0xfe, 0x0b, 0x90, + 0x00, 0x2d, 0x23, 0xd0, 0x28, 0x88, 0x41, 0x07, + 0x20, 0xd4, 0x29, 0x1d, 0x04, 0x91, 0x0a, 0x35, + 0x00, 0x06, 0x3c, 0x00, 0xcc, 0x42, 0x00, 0x00, + 0x80, 0x0e, 0x01, 0x21, 0x20, 0x28, 0x03, 0x95, + 0x00, 0xd0, 0x00, 0x21, 0x0d, 0x1c, 0x04, 0x98, + 0x06, 0xf0, 0x38, 0xfd, 0x0c, 0x90, 0x04, 0x98, + 0x06, 0xf0, 0x10, 0xfd, 0x00, 0x28, 0x08, 0xd0, + 0x03, 0x98, 0x01, 0xf0, 0x87, 0xfa, 0x00, 0x28, + 0x03, 0xd0, 0x00, 0x2d, 0x01, 0xd1, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x0c, 0x99, 0x01, 0x43, + 0x0c, 0x91, 0xfc, 0xf7, 0x3c, 0x00, 0x08, 0x43, + 0x00, 0x00, 0x23, 0xff, 0x00, 0x28, 0x2f, 0xd0, + 0x07, 0xf0, 0x99, 0xff, 0x05, 0x1c, 0x07, 0xf0, + 0xb2, 0xff, 0x04, 0x90, 0xff, 0xf7, 0xf3, 0xf8, + 0x0c, 0x99, 0x01, 0x43, 0x00, 0x2d, 0x06, 0xd0, + 0x04, 0x98, 0xf0, 0x4a, 0x30, 0x1a, 0x90, 0x42, + 0x01, 0xd2, 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0x08, 0x43, 0x0c, 0x90, 0x0b, 0x98, 0x0a, 0x9b, + 0x18, 0x43, 0x01, 0x1c, 0x0b, 0x91, 0x3c, 0x00, + 0x44, 0x43, 0x00, 0x00, 0x05, 0xf0, 0xce, 0xfe, + 0x00, 0x28, 0x1a, 0xd1, 0x00, 0x2d, 0x06, 0xd0, + 0x04, 0x98, 0xe7, 0x49, 0x30, 0x1a, 0x88, 0x42, + 0x01, 0xd2, 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0x0c, 0x99, 0x08, 0x43, 0x05, 0x1c, 0x00, 0xf0, + 0x1f, 0xfb, 0x28, 0x43, 0x03, 0xe0, 0x00, 0xf0, + 0x1b, 0xfb, 0x0c, 0x99, 0x08, 0x43, 0x0c, 0x90, + 0x00, 0xf0, 0xd4, 0xfb, 0x0b, 0x99, 0x01, 0x43, + 0x3c, 0x00, 0x80, 0x43, 0x00, 0x00, 0x0b, 0x91, + 0xdc, 0x49, 0xc8, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0x01, 0x38, 0xc8, 0x60, 0x08, 0xf0, 0xe7, 0xfb, + 0x06, 0x90, 0x08, 0xf0, 0x90, 0xfd, 0x31, 0x1a, + 0x05, 0x91, 0x06, 0x99, 0xd6, 0x48, 0x81, 0x42, + 0x08, 0xd8, 0x00, 0x2f, 0x08, 0xd1, 0x05, 0x99, + 0x40, 0x08, 0x81, 0x42, 0x04, 0xd9, 0x06, 0x99, + 0x81, 0x42, 0x01, 0xd9, 0x00, 0x24, 0x8b, 0xe0, + 0xd0, 0x48, 0x3c, 0x00, 0xbc, 0x43, 0x00, 0x00, + 0x05, 0x99, 0xd0, 0x4d, 0x81, 0x42, 0x26, 0xd2, + 0xe8, 0x79, 0x10, 0x28, 0x06, 0xd2, 0x00, 0x2f, + 0x21, 0xd1, 0xcc, 0x48, 0xa0, 0x38, 0x80, 0x6a, + 0x00, 0x28, 0x1c, 0xd1, 0x09, 0xf0, 0x62, 0xff, + 0x04, 0x90, 0x00, 0x28, 0x02, 0xd1, 0x00, 0x20, + 0xc3, 0x49, 0x13, 0xe0, 0x09, 0xf0, 0x10, 0xfe, + 0x00, 0x28, 0x03, 0xd0, 0xc4, 0x48, 0xc0, 0x69, + 0x00, 0x28, 0xf4, 0xd0, 0x3c, 0x00, 0xf8, 0x43, + 0x00, 0x00, 0x04, 0x98, 0x05, 0x28, 0x03, 0xd0, + 0xc1, 0x48, 0x00, 0x6a, 0x00, 0x28, 0x65, 0xd1, + 0xbb, 0x49, 0x48, 0x6a, 0x00, 0x28, 0x23, 0xd0, + 0x01, 0x38, 0x48, 0x62, 0x00, 0xf0, 0x87, 0xff, + 0x00, 0x28, 0x11, 0xd0, 0xbb, 0x48, 0x05, 0x99, + 0x81, 0x42, 0x0d, 0xd2, 0x01, 0xf0, 0x9b, 0xf8, + 0x04, 0x30, 0x0d, 0xf0, 0xee, 0xfc, 0x40, 0x30, + 0xc1, 0x7a, 0x01, 0x29, 0x4e, 0xd0, 0x3c, 0x00, + 0x34, 0x44, 0x00, 0x00, 0x80, 0x7a, 0x00, 0x28, + 0x01, 0xd0, 0x05, 0x28, 0x49, 0xd3, 0x01, 0xf0, + 0xdf, 0xf8, 0x02, 0x28, 0x10, 0xd0, 0x00, 0x2f, + 0x02, 0xd1, 0x06, 0x98, 0x00, 0x28, 0x40, 0xd1, + 0x00, 0x20, 0x08, 0x90, 0x82, 0xe1, 0xaa, 0x48, + 0xa0, 0x38, 0xc0, 0x68, 0x00, 0x28, 0x38, 0xd0, + 0xa8, 0x48, 0x80, 0x69, 0x48, 0x62, 0x34, 0xe0, + 0x0a, 0xa9, 0x03, 0xc9, 0x08, 0x43, 0x45, 0xd0, + 0x3c, 0x00, 0x70, 0x44, 0x00, 0x00, 0xa3, 0x48, + 0x29, 0x78, 0xa0, 0x38, 0x02, 0x29, 0x40, 0xd8, + 0x40, 0x6d, 0x00, 0x28, 0x0a, 0xd0, 0x9f, 0x48, + 0xa2, 0x49, 0x20, 0x38, 0xc0, 0x68, 0x40, 0x18, + 0x0e, 0xf0, 0xc7, 0xfb, 0x00, 0x28, 0x01, 0xd0, + 0x01, 0x21, 0x00, 0xe0, 0x00, 0x21, 0x96, 0x4a, + 0x90, 0x6a, 0x00, 0x28, 0x02, 0xda, 0x64, 0x08, + 0x64, 0x00, 0x2a, 0xe0, 0x00, 0x29, 0x09, 0xd1, + 0x95, 0x4b, 0x3c, 0x00, 0xac, 0x44, 0x00, 0x00, + 0xa0, 0x3b, 0x5b, 0x6d, 0x00, 0x2b, 0x02, 0xd0, + 0x05, 0x28, 0x0d, 0xdb, 0x01, 0xe0, 0x07, 0x28, + 0x0a, 0xdb, 0x01, 0x20, 0xc0, 0x43, 0x90, 0x62, + 0x64, 0x08, 0x8e, 0x49, 0x64, 0x00, 0x00, 0x20, + 0xa0, 0x39, 0x88, 0x65, 0x14, 0xe0, 0xd1, 0xe0, + 0x39, 0x43, 0x11, 0xd1, 0x89, 0x49, 0xa0, 0x39, + 0xcb, 0x6d, 0x00, 0x2b, 0x02, 0xd1, 0x89, 0x6d, + 0x01, 0x29, 0x09, 0xd9, 0x3c, 0x00, 0xe8, 0x44, + 0x00, 0x00, 0x07, 0x9b, 0x00, 0x2b, 0x01, 0xd1, + 0x07, 0x28, 0x01, 0xdb, 0x64, 0x08, 0x64, 0x00, + 0x01, 0x30, 0x90, 0x62, 0xbd, 0xe0, 0x7d, 0x49, + 0x88, 0x69, 0x04, 0x90, 0x00, 0x20, 0x88, 0x61, + 0x0c, 0x98, 0x00, 0x28, 0x2c, 0xd0, 0x07, 0xf0, + 0x66, 0xfc, 0x00, 0x28, 0x02, 0xd0, 0x02, 0x20, + 0x04, 0x43, 0x25, 0xe0, 0x7a, 0x48, 0xc0, 0x6a, + 0x00, 0x28, 0x04, 0xd1, 0x77, 0x48, 0x3c, 0x00, + 0x24, 0x45, 0x00, 0x00, 0xa0, 0x38, 0xc0, 0x68, + 0x00, 0x28, 0x1c, 0xd1, 0x04, 0x98, 0x00, 0x28, + 0x0d, 0xd1, 0x28, 0x78, 0x10, 0x28, 0x02, 0xd3, + 0xe8, 0x78, 0x02, 0x28, 0x02, 0xd9, 0x28, 0x79, + 0x10, 0x28, 0x04, 0xd3, 0x04, 0x24, 0x6b, 0x49, + 0x01, 0x22, 0x8a, 0x61, 0x94, 0xe0, 0x6c, 0x48, + 0xa0, 0x38, 0x40, 0x6d, 0x00, 0x28, 0x71, 0xd0, + 0x05, 0xf0, 0xa2, 0xfd, 0x00, 0x28, 0x6d, 0xd0, + 0x3c, 0x00, 0x60, 0x45, 0x00, 0x00, 0x64, 0x08, + 0x64, 0x00, 0x88, 0xe0, 0xff, 0xf7, 0x5b, 0xfa, + 0x00, 0x28, 0x1a, 0xd0, 0x68, 0x48, 0x00, 0x78, + 0x02, 0x28, 0x01, 0xd1, 0x00, 0x2f, 0x14, 0xd1, + 0x00, 0x20, 0xfe, 0xf7, 0x70, 0xfe, 0x30, 0x1a, + 0x04, 0x90, 0xff, 0xf7, 0x6c, 0xfa, 0x00, 0x28, + 0x07, 0xd0, 0xff, 0xf7, 0x1e, 0xfa, 0x00, 0x28, + 0x03, 0xd0, 0x5d, 0x49, 0x04, 0x98, 0x88, 0x42, + 0x4f, 0xd3, 0x3c, 0x00, 0x9c, 0x45, 0x00, 0x00, + 0x05, 0xf0, 0x6c, 0xfd, 0x00, 0x28, 0x4b, 0xd1, + 0x53, 0x49, 0x08, 0x78, 0x03, 0x28, 0x08, 0xd1, + 0x88, 0x68, 0x01, 0x22, 0xd2, 0x07, 0x30, 0x1a, + 0x90, 0x42, 0x41, 0xd2, 0x01, 0x22, 0x0a, 0x70, + 0x57, 0xe0, 0x54, 0x48, 0x00, 0x78, 0x02, 0x28, + 0x01, 0xd1, 0x00, 0x2f, 0x51, 0xd1, 0x4a, 0x49, + 0x88, 0x68, 0x51, 0x49, 0x80, 0x1b, 0x88, 0x42, + 0x07, 0xd9, 0x01, 0x20, 0x3c, 0x00, 0xd8, 0x45, + 0x00, 0x00, 0xfe, 0xf7, 0x42, 0xfe, 0x7d, 0x21, + 0x09, 0x01, 0x40, 0x18, 0x44, 0x49, 0x88, 0x60, + 0x4a, 0x48, 0x00, 0x78, 0x02, 0x28, 0x04, 0xd1, + 0x07, 0x9b, 0x00, 0x2b, 0x01, 0xd1, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x47, 0x4b, 0x47, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x3c, 0x49, 0x89, 0x68, + 0x89, 0x1b, 0x88, 0x42, 0x30, 0xd9, 0x07, 0x9b, + 0x00, 0x20, 0x03, 0x93, 0x00, 0xf0, 0x3c, 0x00, + 0x14, 0x46, 0x00, 0x00, 0x79, 0xff, 0x02, 0x90, + 0xff, 0xf7, 0xd8, 0xf9, 0x04, 0x90, 0x01, 0xf0, + 0x57, 0xf8, 0x04, 0x99, 0x02, 0x9a, 0x51, 0x43, + 0x48, 0x43, 0x01, 0x90, 0x00, 0xf0, 0xdc, 0xff, + 0x41, 0x1c, 0x01, 0x98, 0x01, 0x22, 0x48, 0x43, + 0x11, 0x1c, 0x00, 0xe0, 0x1b, 0xe0, 0x31, 0x4b, + 0x5b, 0x6a, 0x83, 0x42, 0x00, 0xd3, 0x00, 0x21, + 0x03, 0x9b, 0x01, 0x22, 0x00, 0x2b, 0x00, 0xd0, + 0x3c, 0x00, 0x50, 0x46, 0x00, 0x00, 0x00, 0x22, + 0x2c, 0x4b, 0x51, 0x43, 0x9b, 0x6a, 0x01, 0x22, + 0x83, 0x42, 0x00, 0xd3, 0x00, 0x22, 0x50, 0x00, + 0x08, 0x18, 0x03, 0xd0, 0x23, 0x49, 0x03, 0x20, + 0x08, 0x70, 0x03, 0xe0, 0x09, 0x98, 0xc0, 0x68, + 0x06, 0x28, 0x08, 0xd9, 0x02, 0x24, 0x08, 0x98, + 0x00, 0x28, 0x6e, 0xd0, 0x1d, 0x49, 0x00, 0x20, + 0xc8, 0x61, 0x48, 0x61, 0xa5, 0xe0, 0x1a, 0x49, + 0x48, 0x69, 0x3c, 0x00, 0x8c, 0x46, 0x00, 0x00, + 0x00, 0x28, 0x0a, 0xd1, 0x00, 0x2f, 0x05, 0xd0, + 0x01, 0x22, 0x4a, 0x61, 0xc8, 0x69, 0x80, 0x18, + 0xc8, 0x61, 0x0a, 0xe0, 0x00, 0x20, 0xc8, 0x61, + 0x03, 0xe0, 0x00, 0x2f, 0x05, 0xd1, 0x00, 0x20, + 0x48, 0x61, 0x0d, 0x98, 0x00, 0x28, 0x00, 0xd1, + 0xc8, 0x68, 0x00, 0x20, 0x08, 0x90, 0x08, 0x78, + 0x01, 0x28, 0x2f, 0xd0, 0x02, 0x28, 0x4b, 0xd1, + 0x00, 0x2f, 0x08, 0xd1, 0x3c, 0x00, 0xc8, 0x46, + 0x00, 0x00, 0xe8, 0x78, 0x00, 0x28, 0x02, 0xd1, + 0x28, 0x78, 0x10, 0x28, 0x43, 0xd2, 0x28, 0x79, + 0x10, 0x28, 0x40, 0xd2, 0x48, 0x68, 0x0a, 0x69, + 0x30, 0x1a, 0x90, 0x42, 0x67, 0xd3, 0x01, 0x22, + 0x0a, 0x70, 0x38, 0xe0, 0x00, 0x00, 0xe2, 0x04, + 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x68, 0x7e, + 0x01, 0x00, 0xa0, 0x86, 0x01, 0x00, 0x88, 0x13, + 0x00, 0x00, 0x44, 0x6d, 0x01, 0x00, 0x3c, 0x00, + 0x04, 0x47, 0x00, 0x00, 0xc8, 0x57, 0x01, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0x98, 0x3a, 0x00, 0x00, + 0xc0, 0x57, 0x01, 0x00, 0x40, 0x0d, 0x03, 0x00, + 0xc4, 0x09, 0x00, 0x00, 0xb2, 0x0c, 0x00, 0x00, + 0x00, 0x20, 0x0b, 0x9a, 0x0a, 0x9b, 0xc0, 0x43, + 0x1a, 0x43, 0x37, 0xd0, 0x00, 0x2f, 0x35, 0xd1, + 0x07, 0x9b, 0x00, 0x2b, 0x08, 0xd0, 0x6a, 0x78, + 0x02, 0x2a, 0x2f, 0xd9, 0x2a, 0x78, 0x10, 0x2a, + 0x3c, 0x00, 0x40, 0x47, 0x00, 0x00, 0x2c, 0xd2, + 0x2a, 0x79, 0x10, 0x2a, 0x29, 0xd2, 0x25, 0x4b, + 0x1a, 0x6c, 0x00, 0x2a, 0x06, 0xd0, 0x9a, 0x6a, + 0x9f, 0x6c, 0xba, 0x42, 0x02, 0xd1, 0x1f, 0x20, + 0x1f, 0xe0, 0x2e, 0xe0, 0x20, 0x4b, 0x5a, 0x6c, + 0x00, 0x2a, 0x03, 0xd0, 0x1f, 0x4f, 0xb3, 0x1a, + 0xbb, 0x42, 0x16, 0xd3, 0x1c, 0x4b, 0x00, 0x2a, + 0x05, 0xd0, 0x9a, 0x6a, 0x9f, 0x6c, 0xba, 0x42, + 0x01, 0xd1, 0x3c, 0x00, 0x7c, 0x47, 0x00, 0x00, + 0x0f, 0x20, 0x0d, 0xe0, 0x07, 0x9a, 0x00, 0x2a, + 0x04, 0xd0, 0xea, 0x79, 0x20, 0x2a, 0x01, 0xd1, + 0x00, 0x20, 0x05, 0xe0, 0xea, 0x79, 0x10, 0x2a, + 0x01, 0xd3, 0x03, 0x20, 0x00, 0xe0, 0x9a, 0x6a, + 0x12, 0x4a, 0x12, 0x68, 0x02, 0x40, 0x0b, 0xd1, + 0x01, 0x20, 0x08, 0x90, 0x02, 0x20, 0x08, 0x70, + 0x0f, 0x48, 0x08, 0x61, 0x4e, 0x60, 0x64, 0xe7, + 0xff, 0xe7, 0x01, 0x20, 0x3c, 0x00, 0xb8, 0x47, + 0x00, 0x00, 0x08, 0x90, 0x60, 0xe7, 0x0c, 0x49, + 0x88, 0x6a, 0x00, 0x28, 0x01, 0xda, 0x01, 0x30, + 0x02, 0xe0, 0x00, 0x28, 0x01, 0xdd, 0x00, 0x20, + 0x88, 0x62, 0x00, 0x20, 0x08, 0x62, 0x08, 0x99, + 0x20, 0x04, 0x08, 0x43, 0x0f, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x71, 0x02, + 0x00, 0x00, 0x08, 0x20, 0x07, 0x00, 0x53, 0x07, + 0x00, 0x00, 0x68, 0x7e, 0x01, 0x00, 0x3c, 0x00, + 0xf4, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x48, 0x70, 0x47, 0x50, 0x7e, 0x01, 0x00, + 0x80, 0xb5, 0x3d, 0xf0, 0x7f, 0xfd, 0x02, 0x49, + 0x01, 0x20, 0x08, 0x70, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x7e, 0x01, 0x00, 0xf8, 0xb5, 0x0d, 0x1c, + 0x0e, 0xf0, 0xc8, 0xfa, 0x26, 0x49, 0x04, 0x1c, + 0x88, 0x6a, 0x26, 0x4e, 0x00, 0x28, 0x01, 0xd0, + 0x04, 0x20, 0x03, 0xe0, 0x70, 0x6a, 0x00, 0x28, + 0x3c, 0x00, 0x30, 0x48, 0x00, 0x00, 0x01, 0xd0, + 0x01, 0x38, 0x70, 0x62, 0x00, 0x27, 0x00, 0x2d, + 0x02, 0xd0, 0xb7, 0x61, 0xf7, 0x61, 0x0a, 0xe0, + 0xb0, 0x69, 0x1c, 0x49, 0x01, 0x30, 0xb0, 0x61, + 0x49, 0x6d, 0x00, 0x29, 0x03, 0xd0, 0x03, 0x28, + 0x01, 0xd9, 0x01, 0x20, 0xf0, 0x61, 0xb4, 0x60, + 0xf1, 0x68, 0x00, 0x91, 0x08, 0xf0, 0xf7, 0xfc, + 0xf0, 0x60, 0x00, 0x99, 0x88, 0x42, 0x02, 0xd0, + 0x30, 0x62, 0x3c, 0x00, 0x6c, 0x48, 0x00, 0x00, + 0x34, 0x61, 0x0b, 0xe0, 0x00, 0xf0, 0x90, 0xf8, + 0x00, 0x28, 0x01, 0xd0, 0x11, 0x48, 0x00, 0xe0, + 0x11, 0x48, 0x31, 0x69, 0x61, 0x1a, 0x81, 0x42, + 0x00, 0xd9, 0x37, 0x62, 0x0b, 0x4a, 0x0c, 0x48, + 0xd1, 0x6c, 0x20, 0x30, 0x00, 0x29, 0x01, 0xd0, + 0x0a, 0x21, 0x03, 0xe0, 0x01, 0x7a, 0x00, 0x29, + 0x01, 0xd0, 0xff, 0x31, 0x01, 0x72, 0x00, 0x2d, + 0x03, 0xd1, 0x01, 0x7a, 0x3c, 0x00, 0xa8, 0x48, + 0x00, 0x00, 0x00, 0x29, 0x00, 0xd0, 0x91, 0x6a, + 0x00, 0x7a, 0x00, 0x28, 0x00, 0xd1, 0x17, 0x65, + 0xf8, 0xbd, 0xa4, 0x6c, 0x01, 0x00, 0x3c, 0x7e, + 0x01, 0x00, 0xa6, 0x0e, 0x00, 0x00, 0xa8, 0x61, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x06, 0x49, + 0x80, 0xb5, 0x89, 0x68, 0x00, 0x29, 0x07, 0xd0, + 0x05, 0x21, 0x00, 0x28, 0x00, 0xd1, 0x04, 0x21, + 0x08, 0x06, 0x00, 0x0e, 0x03, 0xf0, 0x3c, 0x00, + 0xe4, 0x48, 0x00, 0x00, 0x05, 0xfa, 0x80, 0xbd, + 0x60, 0x6c, 0x01, 0x00, 0x07, 0x48, 0x00, 0x68, + 0x07, 0x49, 0x4a, 0x69, 0x10, 0x40, 0x01, 0xd0, + 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, 0x49, 0x6a, + 0x88, 0x42, 0x01, 0xd1, 0x01, 0x20, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x10, 0x00, 0x07, 0x00, + 0xa4, 0x6c, 0x01, 0x00, 0x70, 0xb5, 0x0e, 0xf0, + 0x49, 0xfa, 0x02, 0x1c, 0x00, 0xf0, 0x3a, 0xf8, + 0x3c, 0x00, 0x20, 0x49, 0x00, 0x00, 0x10, 0x49, + 0x00, 0x28, 0x0e, 0xd0, 0x08, 0x1c, 0xa0, 0x31, + 0x0e, 0x78, 0x0e, 0x4b, 0x10, 0x2e, 0x01, 0xd3, + 0x80, 0x6f, 0x03, 0xe0, 0x49, 0x78, 0x10, 0x29, + 0x0e, 0xd3, 0xc0, 0x6f, 0xc0, 0x18, 0x84, 0x1a, + 0x0a, 0xe0, 0x08, 0x1c, 0x80, 0x30, 0x45, 0x69, + 0x08, 0x49, 0x8d, 0x42, 0x01, 0xd9, 0x0c, 0x1c, + 0x05, 0xe0, 0xc0, 0x68, 0x10, 0x1a, 0x2c, 0x1a, + 0x00, 0x2c, 0x3c, 0x00, 0x5c, 0x49, 0x00, 0x00, + 0x00, 0xda, 0x64, 0x19, 0x20, 0x1c, 0x70, 0xbd, + 0xa4, 0x6c, 0x01, 0x00, 0xa6, 0x0e, 0x00, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0x80, 0xb5, 0x05, 0xf0, + 0xb7, 0xfb, 0x00, 0x28, 0x02, 0xd0, 0x07, 0xf0, + 0x1f, 0xff, 0x80, 0xbd, 0x03, 0x48, 0x00, 0x78, + 0x00, 0x28, 0xfa, 0xd0, 0x07, 0xf0, 0x70, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, + 0x03, 0x49, 0x01, 0x20, 0x3c, 0x00, 0x98, 0x49, + 0x00, 0x00, 0x49, 0x69, 0x03, 0x29, 0x00, 0xd8, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x60, 0x6c, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x00, 0x24, + 0x28, 0x78, 0x01, 0x28, 0x03, 0xd0, 0x05, 0xf0, + 0x6a, 0xfb, 0x04, 0x06, 0x24, 0x0e, 0xfe, 0xf7, + 0xd2, 0xfc, 0x00, 0x02, 0x20, 0x43, 0x02, 0xd1, + 0x68, 0x6a, 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, + 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, 0x3c, 0x00, + 0xd4, 0x49, 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, + 0x01, 0x21, 0x01, 0x28, 0x00, 0xd0, 0x00, 0x21, + 0x01, 0x48, 0x41, 0x62, 0x70, 0x47, 0x00, 0x00, + 0x60, 0x6c, 0x01, 0x00, 0x15, 0x48, 0x10, 0xb5, + 0x04, 0x68, 0x15, 0x48, 0x00, 0x6a, 0x00, 0x28, + 0x14, 0xd0, 0xff, 0xf7, 0xcb, 0xff, 0x00, 0x28, + 0x0e, 0xd1, 0x11, 0x48, 0x11, 0x49, 0xc4, 0x30, + 0x40, 0x69, 0x88, 0x42, 0x08, 0xd2, 0xcc, 0x08, + 0x3c, 0x00, 0x10, 0x4a, 0x00, 0x00, 0xa0, 0x42, + 0x05, 0xd3, 0xff, 0xf7, 0x7e, 0xff, 0xa0, 0x42, + 0x01, 0xda, 0x0c, 0x4c, 0x01, 0xe0, 0xff, 0x24, + 0x91, 0x34, 0x7d, 0x20, 0x00, 0x01, 0x84, 0x42, + 0x04, 0xd9, 0x00, 0x22, 0x16, 0x21, 0x83, 0x20, + 0x0e, 0xf0, 0xbd, 0xfe, 0x01, 0x23, 0x09, 0x22, + 0x21, 0x1c, 0x16, 0x20, 0x0e, 0xf0, 0xa7, 0xfe, + 0x10, 0xbd, 0xb0, 0x57, 0x01, 0x00, 0x60, 0x6c, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x4a, 0x00, 0x00, + 0xc0, 0x5d, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x0e, 0x1c, 0x00, 0xf0, + 0x43, 0xf8, 0x00, 0x28, 0x0f, 0xd0, 0x08, 0x4c, + 0x20, 0x78, 0xc0, 0x07, 0x03, 0xd4, 0x05, 0xf0, + 0xab, 0xf9, 0x09, 0xf0, 0x31, 0xfe, 0x00, 0x2d, + 0x05, 0xd0, 0x20, 0x78, 0x80, 0x07, 0x02, 0xd4, + 0x30, 0x1c, 0x02, 0xf0, 0xfd, 0xfe, 0x70, 0xbd, + 0x60, 0x6c, 0x01, 0x00, 0x3c, 0x00, 0x88, 0x4a, + 0x00, 0x00, 0xb0, 0xb5, 0x00, 0x28, 0x18, 0xd0, + 0x11, 0x48, 0x81, 0x42, 0x15, 0xd2, 0x10, 0x48, + 0x0c, 0x1c, 0x0d, 0x18, 0x07, 0xf0, 0xdf, 0xfa, + 0x81, 0x00, 0x09, 0x18, 0xa1, 0x42, 0x01, 0xd2, + 0x40, 0x00, 0x03, 0xe0, 0x41, 0x00, 0x09, 0x18, + 0xa1, 0x42, 0x01, 0xd2, 0x24, 0x1a, 0x06, 0xe0, + 0x41, 0x00, 0xa1, 0x42, 0x03, 0xd2, 0x40, 0x08, + 0xf8, 0xe7, 0x06, 0x4d, 0x07, 0x4c, 0x3c, 0x00, + 0xc4, 0x4a, 0x00, 0x00, 0x0e, 0xf0, 0x72, 0xf9, + 0x00, 0x19, 0x29, 0x1c, 0x07, 0xf0, 0xdc, 0xfa, + 0xb0, 0xbd, 0x00, 0x00, 0x80, 0xb9, 0x2a, 0x00, + 0x53, 0x07, 0x00, 0x00, 0x4c, 0x1d, 0x00, 0x00, + 0x88, 0x13, 0x00, 0x00, 0xb0, 0xb5, 0x05, 0xf0, + 0xfd, 0xfa, 0x00, 0x28, 0x13, 0xd1, 0xfe, 0xf7, + 0xb5, 0xfe, 0x0a, 0x4c, 0x0a, 0x4d, 0x00, 0x28, + 0x60, 0x63, 0x00, 0xd0, 0x28, 0x60, 0x0e, 0xf0, + 0x3c, 0x00, 0x00, 0x4b, 0x00, 0x00, 0x55, 0xf9, + 0x21, 0x6a, 0x00, 0x29, 0x04, 0xd1, 0xe1, 0x69, + 0x40, 0x1a, 0x29, 0x68, 0x88, 0x42, 0x01, 0xd9, + 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, + 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, 0xb0, 0x57, + 0x01, 0x00, 0x80, 0xb5, 0xff, 0xf7, 0xdd, 0xff, + 0x00, 0x28, 0x05, 0xd0, 0x05, 0xf0, 0xb7, 0xfa, + 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, 0x80, 0xbd, + 0x00, 0x20, 0x3c, 0x00, 0x3c, 0x4b, 0x00, 0x00, + 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x0a, 0x4c, + 0x00, 0x21, 0xa2, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0xa1, 0x60, 0x02, 0xf0, 0x83, 0xf9, 0x10, 0xbd, + 0x61, 0x60, 0x01, 0x1c, 0x00, 0x22, 0x04, 0x20, + 0x0e, 0xf0, 0x36, 0xfd, 0x03, 0x48, 0x21, 0x68, + 0x0a, 0xf0, 0x08, 0xfc, 0x10, 0xbd, 0x00, 0x00, + 0xbc, 0x74, 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x3c, 0x00, 0x78, 0x4b, + 0x00, 0x00, 0x01, 0xd1, 0xfc, 0xf7, 0xc1, 0xfb, + 0x20, 0x4c, 0xe0, 0x6a, 0x00, 0x28, 0x15, 0xd0, + 0x1f, 0x4b, 0xa0, 0x69, 0x58, 0x43, 0xc6, 0x0b, + 0x20, 0x88, 0x46, 0x43, 0xf0, 0x00, 0x80, 0x19, + 0xe6, 0x60, 0xfb, 0xf7, 0x1c, 0xfe, 0xa8, 0x42, + 0x05, 0xd8, 0x30, 0x1c, 0xfb, 0xf7, 0x17, 0xfe, + 0x80, 0x19, 0xa8, 0x42, 0x02, 0xd2, 0x00, 0x20, + 0xe0, 0x60, 0x20, 0xe0, 0xe5, 0x60, 0x3c, 0x00, + 0xb4, 0x4b, 0x00, 0x00, 0x00, 0x2d, 0x1d, 0xd0, + 0x26, 0x88, 0xa0, 0x69, 0x70, 0x43, 0xc1, 0x03, + 0x28, 0x1c, 0xfb, 0xf7, 0xa5, 0xfd, 0x60, 0x61, + 0x0d, 0x48, 0x32, 0x1c, 0x29, 0x1c, 0x30, 0x30, + 0xfb, 0xf7, 0x0a, 0xfc, 0x0c, 0x4b, 0x60, 0x69, + 0x58, 0x43, 0xc0, 0x0b, 0x60, 0x62, 0x01, 0xf0, + 0xb7, 0xfd, 0xa0, 0x62, 0xe0, 0x68, 0x00, 0x28, + 0x04, 0xd0, 0x20, 0x69, 0xa1, 0x68, 0xfb, 0xf7, + 0x3c, 0x00, 0xf0, 0x4b, 0x00, 0x00, 0xf4, 0xfb, + 0x70, 0xbd, 0x05, 0x48, 0xa1, 0x68, 0xfb, 0xf7, + 0xef, 0xfb, 0x70, 0xbd, 0x00, 0x00, 0xc8, 0x74, + 0x01, 0x00, 0x40, 0x42, 0x0f, 0x00, 0xc0, 0xc6, + 0x2d, 0x00, 0x88, 0x13, 0x00, 0x00, 0xf1, 0xb5, + 0x3e, 0x48, 0x00, 0xab, 0x81, 0x78, 0xc0, 0x78, + 0x3e, 0x4f, 0x0a, 0x07, 0x04, 0x07, 0x58, 0x78, + 0x3b, 0x49, 0x12, 0x0f, 0x08, 0x5c, 0x14, 0x39, + 0x24, 0x0f, 0x3c, 0x00, 0x2c, 0x4c, 0x00, 0x00, + 0x80, 0x18, 0x78, 0x60, 0x01, 0x30, 0xb8, 0x60, + 0x18, 0x78, 0x35, 0x4d, 0x08, 0x5c, 0x00, 0x19, + 0xb8, 0x61, 0x01, 0x30, 0xf8, 0x61, 0xeb, 0x78, + 0x33, 0x48, 0x1e, 0x09, 0x33, 0x4b, 0x18, 0x38, + 0x81, 0x78, 0x5e, 0x43, 0xab, 0x78, 0x1d, 0x09, + 0xc8, 0x23, 0x6b, 0x43, 0x00, 0x29, 0x08, 0xd1, + 0x2b, 0x4d, 0x2d, 0x78, 0x3d, 0x60, 0xc5, 0x60, + 0x7d, 0x25, 0xed, 0x00, 0x3c, 0x00, 0x68, 0x4c, + 0x00, 0x00, 0x5d, 0x1b, 0x2c, 0x4b, 0x07, 0xe0, + 0x27, 0x4d, 0x6d, 0x78, 0x3d, 0x60, 0xc5, 0x60, + 0x4b, 0x25, 0x2d, 0x01, 0x5d, 0x1b, 0x28, 0x4b, + 0xf6, 0x18, 0x02, 0x20, 0x00, 0xf0, 0x57, 0xf8, + 0x28, 0x1a, 0xf8, 0x60, 0x22, 0x48, 0x22, 0x1c, + 0x18, 0x38, 0x81, 0x78, 0x03, 0x20, 0x00, 0xf0, + 0x4e, 0xf8, 0x30, 0x1a, 0x38, 0x62, 0x39, 0x68, + 0x00, 0xab, 0x79, 0x61, 0x5a, 0x78, 0x3c, 0x00, + 0xa4, 0x4c, 0x00, 0x00, 0x56, 0x23, 0xf9, 0x68, + 0x5a, 0x43, 0x89, 0x1a, 0xf9, 0x60, 0xc8, 0x31, + 0x39, 0x61, 0x18, 0x49, 0x18, 0x39, 0x89, 0x78, + 0x00, 0x29, 0xb9, 0x69, 0x11, 0xd1, 0x00, 0xab, + 0x1a, 0x78, 0x13, 0x4b, 0x14, 0x3b, 0x9a, 0x5c, + 0x53, 0x1c, 0x59, 0x43, 0x0a, 0x23, 0x59, 0x43, + 0x14, 0x4b, 0x59, 0x1a, 0x51, 0x43, 0x0a, 0x23, + 0x59, 0x43, 0x40, 0x1a, 0x38, 0x62, 0x12, 0x49, + 0x3c, 0x00, 0xe0, 0x4c, 0x00, 0x00, 0x10, 0xe0, + 0x00, 0xab, 0x1a, 0x78, 0x0a, 0x4b, 0x14, 0x3b, + 0x9a, 0x5c, 0x53, 0x1c, 0x59, 0x43, 0x0a, 0x23, + 0x59, 0x43, 0x0d, 0x4b, 0x59, 0x1a, 0x51, 0x43, + 0x0a, 0x23, 0x59, 0x43, 0x40, 0x1a, 0x0b, 0x49, + 0x38, 0x62, 0x40, 0x18, 0x78, 0x62, 0xf8, 0xbd, + 0x00, 0x00, 0x0c, 0x5a, 0x01, 0x00, 0x66, 0x5a, + 0x01, 0x00, 0x94, 0x78, 0x01, 0x00, 0xa0, 0x86, + 0x01, 0x00, 0x3c, 0x00, 0x1c, 0x4d, 0x00, 0x00, + 0x00, 0x48, 0x71, 0x00, 0xb0, 0xd6, 0x8c, 0x00, + 0x88, 0x10, 0x00, 0x00, 0x80, 0x38, 0x01, 0x00, + 0x58, 0x12, 0x00, 0x00, 0x70, 0x11, 0x01, 0x00, + 0x30, 0xb5, 0x19, 0x4b, 0x02, 0x28, 0xdd, 0x68, + 0x06, 0xd1, 0x00, 0x29, 0x04, 0xd1, 0x2b, 0x1c, + 0x0c, 0x33, 0x9c, 0x1a, 0x64, 0x23, 0x5c, 0x43, + 0x02, 0x28, 0x09, 0xd1, 0x01, 0x29, 0x07, 0xd1, + 0x64, 0x23, 0x7d, 0x24, 0x3c, 0x00, 0x58, 0x4d, + 0x00, 0x00, 0xe4, 0x00, 0x6b, 0x43, 0x1c, 0x19, + 0xa0, 0x23, 0x53, 0x43, 0xe4, 0x1a, 0x0a, 0x23, + 0x5a, 0x43, 0x03, 0x28, 0x09, 0xd1, 0x00, 0x29, + 0x07, 0xd1, 0x13, 0x23, 0xff, 0x24, 0xe4, 0x00, + 0x6b, 0x43, 0x1b, 0x19, 0x9b, 0x1a, 0x1c, 0x1c, + 0x5c, 0x43, 0x03, 0x28, 0x08, 0xd1, 0x01, 0x29, + 0x06, 0xd1, 0x0e, 0x20, 0x05, 0x49, 0x68, 0x43, + 0x40, 0x18, 0x80, 0x1a, 0x04, 0x1c, 0x3c, 0x00, + 0x94, 0x4d, 0x00, 0x00, 0x44, 0x43, 0x20, 0x1c, + 0x30, 0xbd, 0x00, 0x00, 0x7c, 0x78, 0x01, 0x00, + 0x84, 0x08, 0x00, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0x0c, 0x23, 0x60, 0x78, 0x05, 0x49, 0x14, 0x31, + 0x58, 0x43, 0x40, 0x18, 0x40, 0x68, 0x01, 0xf0, + 0x4f, 0xfc, 0x00, 0x21, 0x60, 0x78, 0x02, 0xf0, + 0x4b, 0xff, 0x10, 0xbd, 0x4c, 0x7b, 0x01, 0x00, + 0x0c, 0x48, 0xf8, 0xb5, 0x40, 0x78, 0x0c, 0x23, + 0x3c, 0x00, 0xd0, 0x4d, 0x00, 0x00, 0x0a, 0x49, + 0x58, 0x43, 0x14, 0x31, 0x44, 0x18, 0x26, 0x1d, + 0x60, 0xce, 0x30, 0x1c, 0x0b, 0xf0, 0x0b, 0xfd, + 0x00, 0x27, 0x41, 0x20, 0x47, 0x55, 0x05, 0x48, + 0x29, 0x1c, 0x02, 0xf0, 0xf0, 0xfe, 0x28, 0x1c, + 0x01, 0xf0, 0x31, 0xfc, 0x04, 0x34, 0xc0, 0xc4, + 0xf8, 0xbd, 0x4c, 0x7b, 0x01, 0x00, 0x55, 0x80, + 0x00, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x4c, 0x21, + 0x28, 0x78, 0x3c, 0x00, 0x0c, 0x4e, 0x00, 0x00, + 0x09, 0x4a, 0x41, 0x43, 0x8c, 0x18, 0x22, 0x68, + 0x01, 0x21, 0xfb, 0xf7, 0xe1, 0xfa, 0x28, 0x78, + 0x01, 0xf0, 0xfa, 0xfb, 0x3c, 0x23, 0xe0, 0x56, + 0x41, 0x1e, 0x01, 0x20, 0x07, 0xf0, 0x34, 0xfb, + 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x7c, 0x01, 0x00, + 0x58, 0xe3, 0x01, 0x00, 0x0c, 0x23, 0x07, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x80, 0xb5, 0x40, 0x68, + 0x41, 0x6b, 0x00, 0x29, 0x3c, 0x00, 0x48, 0x4e, + 0x00, 0x00, 0x02, 0xd0, 0x0b, 0xf0, 0xfb, 0xfd, + 0x80, 0xbd, 0x0b, 0xf0, 0x2c, 0xfd, 0x80, 0xbd, + 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, 0x38, 0x22, + 0x0a, 0x4b, 0x42, 0x43, 0xd2, 0x18, 0x00, 0x29, + 0x80, 0xb5, 0x04, 0xd0, 0x02, 0x29, 0x07, 0xd1, + 0x0b, 0xf0, 0xfb, 0xfc, 0x80, 0xbd, 0xd2, 0x6a, + 0x01, 0x21, 0xfb, 0xf7, 0xb0, 0xfa, 0x80, 0xbd, + 0x03, 0x21, 0x86, 0x20, 0xfc, 0xf7, 0x3c, 0x00, + 0x84, 0x4e, 0x00, 0x00, 0x0f, 0xfa, 0x80, 0xbd, + 0xd4, 0xe4, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x06, + 0x24, 0x0e, 0x0c, 0x20, 0x0e, 0x49, 0x60, 0x43, + 0x40, 0x18, 0x45, 0x68, 0xa8, 0x6b, 0x00, 0x28, + 0x03, 0xd1, 0x00, 0x21, 0x20, 0x1c, 0xfd, 0xf7, + 0xe1, 0xfa, 0x20, 0x1c, 0x07, 0xf0, 0xf2, 0xff, + 0x00, 0x28, 0x08, 0xd0, 0x28, 0x1c, 0x60, 0x30, + 0xc1, 0x79, 0x01, 0x29, 0x03, 0xd9, 0xff, 0x31, + 0x3c, 0x00, 0xc0, 0x4e, 0x00, 0x00, 0xc1, 0x71, + 0xff, 0x31, 0x81, 0x71, 0x01, 0x21, 0x20, 0x1c, + 0x02, 0xf0, 0xc5, 0xfe, 0xb0, 0xbd, 0x60, 0x7b, + 0x01, 0x00, 0x70, 0xb5, 0x00, 0x06, 0x00, 0x0e, + 0x05, 0x1c, 0x4c, 0x23, 0x0a, 0x49, 0x58, 0x43, + 0x44, 0x18, 0x3c, 0x20, 0x00, 0x5d, 0xff, 0x30, + 0x06, 0x06, 0x36, 0x16, 0x28, 0x1c, 0x01, 0xf0, + 0x90, 0xfb, 0x00, 0x21, 0x28, 0x1c, 0x22, 0x68, + 0xfb, 0xf7, 0x3c, 0x00, 0xfc, 0x4e, 0x00, 0x00, + 0x6f, 0xfa, 0x31, 0x1c, 0x00, 0x20, 0x07, 0xf0, + 0xc7, 0xfa, 0x70, 0xbd, 0x58, 0xe3, 0x01, 0x00, + 0x0c, 0x22, 0x0f, 0x4b, 0x42, 0x43, 0xd2, 0x18, + 0x10, 0xb5, 0x54, 0x68, 0x00, 0x29, 0x0d, 0xd0, + 0x02, 0x29, 0x0f, 0xd1, 0x2c, 0x20, 0x00, 0x5d, + 0x00, 0x28, 0x03, 0xd0, 0x07, 0x21, 0x0c, 0x20, + 0xfc, 0xf7, 0xba, 0xf9, 0x20, 0x1c, 0x0b, 0xf0, + 0xbb, 0xfc, 0x10, 0xbd, 0x3c, 0x00, 0x38, 0x4f, + 0x00, 0x00, 0x00, 0x21, 0x02, 0xf0, 0x8d, 0xfe, + 0x10, 0xbd, 0x04, 0x21, 0x0c, 0x20, 0xfc, 0xf7, + 0xae, 0xf9, 0x10, 0xbd, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x29, 0x07, 0xd0, + 0x0c, 0x23, 0x05, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x40, 0x68, 0x0b, 0xf0, 0x4a, 0xfc, 0x80, 0xbd, + 0x01, 0x21, 0x02, 0xf0, 0x76, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, 0x3c, 0x00, + 0x74, 0x4f, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x00, 0x29, 0x05, 0xd0, 0x02, 0x29, 0x1a, 0xd1, + 0x20, 0x1c, 0x0b, 0xf0, 0xeb, 0xfc, 0x10, 0xbd, + 0x0d, 0x48, 0x04, 0x70, 0x0d, 0x48, 0x07, 0xf0, + 0x07, 0xf9, 0x0d, 0x48, 0x01, 0x88, 0x01, 0x22, + 0x12, 0x03, 0x11, 0x43, 0x01, 0x80, 0x4c, 0x20, + 0x0a, 0x49, 0x60, 0x43, 0x40, 0x18, 0x40, 0x30, + 0x00, 0x78, 0xfd, 0xf7, 0x5d, 0xfd, 0x20, 0x1c, + 0x3c, 0x00, 0xb0, 0x4f, 0x00, 0x00, 0x0a, 0xf0, + 0xd4, 0xf8, 0x10, 0xbd, 0x03, 0x21, 0x86, 0x20, + 0xfc, 0xf7, 0x73, 0xf9, 0x10, 0xbd, 0x3c, 0x7c, + 0x01, 0x00, 0x05, 0x4e, 0x00, 0x00, 0x32, 0x80, + 0x07, 0x00, 0x58, 0xe3, 0x01, 0x00, 0xff, 0xb5, + 0x05, 0x1c, 0x01, 0x20, 0x83, 0xb0, 0x01, 0x90, + 0x0c, 0x20, 0x5d, 0x4a, 0x68, 0x43, 0x86, 0x18, + 0x01, 0x27, 0x00, 0x29, 0x74, 0x68, 0x0e, 0xd0, + 0x02, 0x29, 0x3c, 0x00, 0xec, 0x4f, 0x00, 0x00, + 0x6a, 0xd1, 0x2c, 0x20, 0x00, 0x5d, 0x00, 0x28, + 0x03, 0xd0, 0x06, 0x21, 0x0c, 0x20, 0xfc, 0xf7, + 0x53, 0xf9, 0x20, 0x1c, 0x0b, 0xf0, 0x20, 0xfd, + 0x07, 0xb0, 0xf0, 0xbd, 0x52, 0x48, 0x14, 0x38, + 0x45, 0x70, 0xa0, 0x6b, 0x00, 0x28, 0x07, 0xd0, + 0x50, 0x48, 0x07, 0xf0, 0x7f, 0xf8, 0x01, 0x21, + 0x28, 0x1c, 0xfd, 0xf7, 0x25, 0xfa, 0x1c, 0xe0, + 0x4d, 0x48, 0x07, 0xf0, 0x3c, 0x00, 0x28, 0x50, + 0x00, 0x00, 0x77, 0xf8, 0x4a, 0x48, 0x14, 0x38, + 0x05, 0x70, 0x4b, 0x48, 0x01, 0x88, 0x01, 0x22, + 0x52, 0x03, 0x11, 0x43, 0x01, 0x80, 0x40, 0x20, + 0x00, 0x5d, 0xfd, 0xf7, 0x12, 0xfd, 0xb0, 0x68, + 0x00, 0x28, 0x09, 0xd1, 0x28, 0x1c, 0x07, 0xf0, + 0x64, 0xff, 0xb0, 0x60, 0x00, 0x28, 0x03, 0xd1, + 0x09, 0x21, 0x0c, 0x20, 0xfc, 0xf7, 0x23, 0xf9, + 0x05, 0x98, 0x00, 0x28, 0x03, 0xd0, 0x3c, 0x00, + 0x64, 0x50, 0x00, 0x00, 0xe0, 0x6c, 0x01, 0x30, + 0xe0, 0x64, 0x0e, 0xe0, 0x67, 0x20, 0x00, 0x5d, + 0x00, 0x28, 0x07, 0xd1, 0xe0, 0x6c, 0x00, 0x28, + 0x04, 0xd1, 0x39, 0x48, 0x02, 0x38, 0xc0, 0x6a, + 0xa0, 0x64, 0x09, 0xe0, 0x20, 0x6d, 0x00, 0x28, + 0x01, 0xd0, 0x00, 0x27, 0x04, 0xe0, 0x28, 0x1c, + 0x07, 0xf0, 0x00, 0xff, 0x00, 0x28, 0xe5, 0xd1, + 0x05, 0x98, 0x20, 0x65, 0x20, 0x1c, 0x20, 0x30, + 0x3c, 0x00, 0xa0, 0x50, 0x00, 0x00, 0x62, 0x6a, + 0x02, 0x90, 0x81, 0x7b, 0x28, 0x1c, 0x07, 0xf0, + 0x78, 0xff, 0x00, 0x2f, 0x19, 0xd0, 0x20, 0x1c, + 0x60, 0x30, 0xc1, 0x79, 0x4a, 0x1c, 0xc2, 0x71, + 0x80, 0x79, 0x81, 0x42, 0x02, 0xd2, 0x01, 0x20, + 0x01, 0xe0, 0x40, 0xe0, 0x00, 0x20, 0x01, 0x90, + 0x00, 0x28, 0x0a, 0xd0, 0x25, 0x48, 0x00, 0x78, + 0x80, 0x07, 0x06, 0xd5, 0x00, 0xf0, 0x0d, 0xfb, + 0x01, 0x1c, 0x3c, 0x00, 0xdc, 0x50, 0x00, 0x00, + 0x20, 0x1c, 0x0b, 0xf0, 0x15, 0xfd, 0x01, 0x90, + 0x01, 0x98, 0x00, 0x28, 0x0f, 0xd0, 0x02, 0x98, + 0x00, 0x7b, 0x02, 0x28, 0x03, 0xd1, 0x20, 0x1c, + 0x04, 0xf0, 0xd0, 0xfe, 0x84, 0xe7, 0x01, 0x28, + 0x00, 0xd0, 0x7e, 0xe7, 0x21, 0x1c, 0x30, 0x1c, + 0x04, 0xf0, 0xe2, 0xfe, 0x7c, 0xe7, 0x25, 0x1c, + 0x60, 0x35, 0xe8, 0x79, 0xff, 0x30, 0xa8, 0x71, + 0x68, 0x7a, 0x06, 0xf0, 0x3c, 0x00, 0x18, 0x51, + 0x00, 0x00, 0x9d, 0xfc, 0x0d, 0xf0, 0x47, 0xfe, + 0x07, 0x1c, 0x05, 0xf0, 0x12, 0xff, 0x3f, 0x18, + 0x02, 0x98, 0x81, 0x7b, 0x20, 0x69, 0x04, 0x30, + 0x00, 0xf0, 0x35, 0xfa, 0x61, 0x6a, 0x05, 0xf0, + 0xea, 0xfe, 0x39, 0x18, 0x6b, 0x7a, 0x30, 0x88, + 0x80, 0x31, 0x09, 0x4a, 0x0d, 0xf0, 0x91, 0xfe, + 0x5d, 0xe7, 0x03, 0x21, 0x0c, 0x20, 0xfc, 0xf7, + 0xaa, 0xf8, 0x58, 0xe7, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x51, 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, + 0xa5, 0x4d, 0x00, 0x00, 0xc9, 0x4d, 0x00, 0x00, + 0x32, 0x80, 0x07, 0x00, 0x1d, 0x75, 0x01, 0x00, + 0x8d, 0x4e, 0x00, 0x00, 0xff, 0xb5, 0x81, 0xb0, + 0x1f, 0x1c, 0x05, 0x1c, 0x14, 0x1c, 0x10, 0x1c, + 0x0a, 0x9e, 0x00, 0xf0, 0xf5, 0xfc, 0x29, 0x1c, + 0x10, 0x31, 0x20, 0x1d, 0x06, 0x22, 0xfb, 0xf7, + 0xb7, 0xf9, 0xa8, 0x8e, 0x20, 0x80, 0xe8, 0x8e, + 0x3c, 0x00, 0x90, 0x51, 0x00, 0x00, 0x60, 0x80, + 0x02, 0x99, 0x20, 0x1c, 0x00, 0xf0, 0x07, 0xf9, + 0xff, 0x34, 0x01, 0x34, 0x66, 0x60, 0x27, 0x60, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xf8, 0xb5, + 0x0f, 0x1c, 0x1e, 0x1c, 0x05, 0x1c, 0x14, 0x1c, + 0x10, 0x1c, 0x00, 0xf0, 0xd8, 0xfc, 0xa8, 0x88, + 0x39, 0x1c, 0x20, 0x80, 0x28, 0x89, 0x60, 0x80, + 0x20, 0x1c, 0x00, 0xf0, 0xf0, 0xf8, 0xff, 0x34, + 0x01, 0x34, 0x3c, 0x00, 0xcc, 0x51, 0x00, 0x00, + 0x66, 0x60, 0xf8, 0xbd, 0x70, 0xb5, 0x04, 0x1c, + 0xc0, 0x68, 0x05, 0x68, 0x20, 0x1c, 0x14, 0x30, + 0x06, 0x1c, 0x00, 0xf0, 0x0f, 0xfb, 0x00, 0x28, + 0x16, 0xd0, 0x01, 0x22, 0x02, 0x21, 0x20, 0x69, + 0x05, 0xf0, 0xf8, 0xfa, 0x00, 0x28, 0x01, 0xd0, + 0xfb, 0xf7, 0x24, 0xff, 0x00, 0x22, 0x02, 0x21, + 0x20, 0x69, 0x05, 0xf0, 0xef, 0xfa, 0x00, 0x28, + 0x06, 0xd0, 0xfb, 0xf7, 0x3c, 0x00, 0x08, 0x52, + 0x00, 0x00, 0x01, 0xff, 0x00, 0x28, 0x02, 0xd0, + 0x30, 0x1c, 0x0b, 0xf0, 0x7c, 0xfb, 0x68, 0x89, + 0x80, 0x07, 0xc0, 0x0f, 0x03, 0xf0, 0xa7, 0xf8, + 0x18, 0x23, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0xc1, 0x68, 0x00, 0x29, 0x02, 0xd0, 0x20, 0x1c, + 0xfb, 0xf7, 0xd4, 0xf8, 0x70, 0xbd, 0x94, 0x67, + 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, 0x10, 0x1c, + 0x0d, 0x1c, 0x19, 0x1c, 0xff, 0x22, 0x3c, 0x00, + 0x44, 0x52, 0x00, 0x00, 0x00, 0x27, 0xff, 0x2d, + 0x25, 0xd0, 0x00, 0x29, 0x05, 0xd0, 0x4b, 0x88, + 0x00, 0x2b, 0x02, 0xd0, 0x00, 0xf0, 0x50, 0xfc, + 0x15, 0xe0, 0x00, 0x21, 0x10, 0x4e, 0x4b, 0x00, + 0x9e, 0x19, 0x02, 0x23, 0xf6, 0x5e, 0x86, 0x42, + 0x01, 0xdd, 0x0a, 0x1c, 0x04, 0xe0, 0x01, 0x31, + 0x09, 0x06, 0x09, 0x0e, 0x26, 0x29, 0xf1, 0xd3, + 0x09, 0x4e, 0x50, 0x00, 0x80, 0x19, 0x4e, 0x23, + 0x3c, 0x00, 0x80, 0x52, 0x00, 0x00, 0xc0, 0x5e, + 0x27, 0x2a, 0x07, 0xd2, 0x06, 0x49, 0x20, 0x39, + 0x49, 0x57, 0x47, 0x31, 0x40, 0x1a, 0x20, 0x60, + 0x01, 0x27, 0x02, 0xe0, 0x7e, 0x20, 0xc0, 0x43, + 0x20, 0x60, 0x38, 0x1c, 0xf8, 0xbd, 0xfa, 0x47, + 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x7e, 0x21, + 0x05, 0x1c, 0x00, 0x20, 0xc9, 0x43, 0x00, 0x2c, + 0x0f, 0xd0, 0x10, 0x1c, 0x05, 0xf0, 0x6b, 0xfd, + 0x00, 0x28, 0x3c, 0x00, 0xbc, 0x52, 0x00, 0x00, + 0x02, 0xd0, 0x21, 0x1c, 0xc9, 0x39, 0x01, 0xe0, + 0x21, 0x1c, 0x86, 0x39, 0x02, 0x20, 0xc0, 0x43, + 0xfb, 0xf7, 0xb4, 0xf9, 0x01, 0x1c, 0x01, 0x20, + 0x29, 0x60, 0xb0, 0xbd, 0x98, 0xb5, 0x14, 0x1c, + 0x00, 0x22, 0x00, 0x92, 0x22, 0x1c, 0xfd, 0xf7, + 0x43, 0xfe, 0x98, 0xbd, 0x05, 0x49, 0x80, 0xb5, + 0x08, 0x60, 0x05, 0x49, 0x01, 0x20, 0xc8, 0x61, + 0x01, 0x21, 0x00, 0x20, 0x3c, 0x00, 0xf8, 0x52, + 0x00, 0x00, 0x03, 0xf0, 0x1c, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x20, 0x67, 0x01, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x21, 0x00, 0x20, + 0x03, 0xf0, 0x11, 0xfe, 0x06, 0xf0, 0x0d, 0xfb, + 0x02, 0x49, 0x00, 0x20, 0x08, 0x60, 0x80, 0xbd, + 0x00, 0x00, 0x20, 0x67, 0x01, 0x00, 0x03, 0x49, + 0x01, 0x20, 0x09, 0x69, 0x00, 0x29, 0x00, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x53, 0x00, 0x00, 0x10, 0x67, 0x01, 0x00, + 0x03, 0x48, 0x00, 0x69, 0x00, 0x28, 0x01, 0xd0, + 0x40, 0x69, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x70, 0xb5, 0x16, 0x1c, + 0x0d, 0x1c, 0x04, 0x1c, 0x00, 0x28, 0x01, 0xd0, + 0x01, 0x2c, 0x07, 0xd1, 0x00, 0xf0, 0x36, 0xfa, + 0x00, 0x28, 0x05, 0xd0, 0x13, 0xf0, 0xca, 0xf9, + 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, 0x70, 0xbd, + 0x3c, 0x00, 0x70, 0x53, 0x00, 0x00, 0x01, 0x20, + 0x00, 0x2c, 0x00, 0xd0, 0x00, 0x20, 0x0a, 0x4c, + 0x04, 0x34, 0x61, 0xc4, 0x10, 0x3c, 0x00, 0xf0, + 0x24, 0xfa, 0x00, 0x28, 0x02, 0xd0, 0x00, 0xf0, + 0xc6, 0xf9, 0x01, 0xe0, 0x00, 0xf0, 0xe5, 0xf8, + 0xc0, 0x30, 0xc3, 0x6b, 0x22, 0x1d, 0x07, 0xca, + 0xfb, 0xf7, 0x20, 0xf8, 0x00, 0x20, 0x70, 0xbd, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0xf8, 0xb5, + 0x0d, 0x1c, 0x3c, 0x00, 0xac, 0x53, 0x00, 0x00, + 0x00, 0x21, 0x04, 0x1c, 0x28, 0x1c, 0x05, 0xf0, + 0xe3, 0xf9, 0x23, 0x1c, 0xff, 0x33, 0x21, 0x33, + 0xff, 0x27, 0x00, 0x28, 0x05, 0xd0, 0x22, 0x22, + 0x01, 0x1c, 0x18, 0x1c, 0xfb, 0xf7, 0x96, 0xf8, + 0x00, 0xe0, 0x1f, 0x70, 0x03, 0x21, 0x28, 0x1c, + 0x05, 0xf0, 0xd2, 0xf9, 0x26, 0x1c, 0xff, 0x36, + 0x41, 0x36, 0x00, 0x28, 0x05, 0xd0, 0x03, 0x22, + 0x01, 0x1c, 0xb0, 0x1c, 0x3c, 0x00, 0xe8, 0x53, + 0x00, 0x00, 0xfb, 0xf7, 0x86, 0xf8, 0x00, 0xe0, + 0xb7, 0x70, 0x01, 0x21, 0x28, 0x1c, 0x05, 0xf0, + 0xc2, 0xf9, 0x00, 0x28, 0x07, 0xd0, 0x01, 0x1c, + 0x20, 0x1c, 0xff, 0x30, 0x0a, 0x22, 0x46, 0x30, + 0xfb, 0xf7, 0x77, 0xf8, 0x00, 0xe0, 0x77, 0x71, + 0x32, 0x21, 0x28, 0x1c, 0x05, 0xf0, 0xb3, 0xf9, + 0x00, 0x28, 0x07, 0xd0, 0x01, 0x1c, 0x20, 0x1c, + 0xff, 0x30, 0x12, 0x22, 0x50, 0x30, 0x3c, 0x00, + 0x24, 0x54, 0x00, 0x00, 0xfb, 0xf7, 0x68, 0xf8, + 0x00, 0xe0, 0xf7, 0x73, 0x06, 0x21, 0x28, 0x1c, + 0x05, 0xf0, 0xa4, 0xf9, 0x00, 0x28, 0x07, 0xd0, + 0x01, 0x1c, 0x20, 0x1c, 0xff, 0x30, 0x04, 0x22, + 0x63, 0x30, 0xfb, 0xf7, 0x59, 0xf8, 0xf8, 0xbd, + 0xff, 0x34, 0x61, 0x34, 0xa7, 0x70, 0xfa, 0xe7, + 0x08, 0x49, 0x80, 0xb5, 0x09, 0x68, 0x00, 0x28, + 0x01, 0xd1, 0x07, 0x48, 0x01, 0x68, 0x08, 0x1c, + 0x3c, 0x00, 0x60, 0x54, 0x00, 0x00, 0x05, 0xd1, + 0x03, 0x21, 0x90, 0x20, 0xfb, 0xf7, 0x1d, 0xff, + 0x00, 0x20, 0x80, 0xbd, 0x01, 0xf0, 0xd7, 0xfb, + 0x80, 0xbd, 0x1c, 0x67, 0x01, 0x00, 0x20, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0xff, 0xf7, 0xe7, 0xff, + 0x80, 0xbd, 0xf0, 0xb5, 0x00, 0x24, 0x84, 0x46, + 0x00, 0x20, 0x0b, 0xe0, 0x87, 0x40, 0x17, 0x40, + 0x07, 0xd0, 0x14, 0x23, 0x0b, 0x4d, 0x43, 0x43, + 0x5b, 0x19, 0x3c, 0x00, 0x9c, 0x54, 0x00, 0x00, + 0x1b, 0x7c, 0x65, 0x46, 0x2b, 0x55, 0x01, 0x34, + 0x01, 0x30, 0x01, 0x27, 0x3b, 0x1c, 0x0e, 0x28, + 0x00, 0xd3, 0x00, 0x23, 0x0e, 0x88, 0x3d, 0x1c, + 0xa6, 0x42, 0x00, 0xdc, 0x00, 0x25, 0x2b, 0x40, + 0xe7, 0xd1, 0x0c, 0x80, 0xf0, 0xbd, 0x00, 0x00, + 0x74, 0x40, 0x01, 0x00, 0x78, 0xb5, 0x04, 0x1c, + 0x01, 0x20, 0x20, 0x70, 0x08, 0x20, 0x00, 0xab, + 0x0d, 0x1c, 0x18, 0x80, 0x3c, 0x00, 0xd8, 0x54, + 0x00, 0x00, 0x16, 0x1c, 0xa0, 0x1c, 0x69, 0x46, + 0xff, 0xf7, 0xd1, 0xff, 0x00, 0xab, 0x00, 0x22, + 0xd2, 0x43, 0x19, 0x88, 0x82, 0x40, 0x61, 0x70, + 0x32, 0x20, 0x28, 0x70, 0x10, 0x20, 0x18, 0x80, + 0x32, 0x40, 0xa8, 0x1c, 0x69, 0x46, 0xff, 0xf7, + 0xc2, 0xff, 0x00, 0xab, 0x18, 0x88, 0x68, 0x70, + 0x78, 0xbd, 0x80, 0xb5, 0x02, 0xf0, 0x35, 0xff, + 0x00, 0x21, 0x00, 0x28, 0x00, 0xd0, 0x3c, 0x00, + 0x14, 0x55, 0x00, 0x00, 0x01, 0x69, 0x08, 0x1c, + 0x80, 0xbd, 0x00, 0x00, 0x05, 0x49, 0x00, 0x28, + 0x01, 0xd0, 0xc8, 0x68, 0x00, 0xe0, 0x08, 0x69, + 0x00, 0x28, 0x01, 0xd0, 0x04, 0x30, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x10, 0x67, 0x01, 0x00, + 0x03, 0x48, 0x00, 0x69, 0x00, 0x28, 0x01, 0xd0, + 0x04, 0x30, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x02, 0x48, 0x00, 0x69, + 0x3c, 0x00, 0x50, 0x55, 0x00, 0x00, 0x00, 0x28, + 0xff, 0xd1, 0x70, 0x47, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, 0x20, 0x69, + 0x00, 0x28, 0x03, 0xd1, 0x04, 0x21, 0x90, 0x20, + 0xfb, 0xf7, 0x9b, 0xfe, 0x20, 0x69, 0x10, 0xbd, + 0x00, 0x00, 0x10, 0x67, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x00, 0xf0, 0x40, 0xf9, 0x00, 0x28, + 0x01, 0xd0, 0x00, 0x20, 0x10, 0xbd, 0x20, 0x1c, + 0x00, 0xf0, 0x3c, 0x00, 0x8c, 0x55, 0x00, 0x00, + 0x57, 0xf9, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, + 0x10, 0xbd, 0x02, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x70, 0xb5, 0x0f, 0x4e, 0x04, 0x1c, 0x30, 0x68, + 0x0d, 0x1c, 0x00, 0x28, 0x07, 0xd0, 0x21, 0x1c, + 0x04, 0x30, 0x05, 0xf0, 0xc1, 0xfb, 0x00, 0x28, + 0x01, 0xd0, 0x30, 0x68, 0x0b, 0xe0, 0x09, 0x4a, + 0x10, 0x68, 0x00, 0x28, 0x09, 0xd0, 0x21, 0x1c, + 0x14, 0x1c, 0x04, 0x30, 0x3c, 0x00, 0xc8, 0x55, + 0x00, 0x00, 0x05, 0xf0, 0xb4, 0xfb, 0x00, 0x28, + 0x02, 0xd0, 0x20, 0x68, 0x9c, 0x30, 0x00, 0xe0, + 0x03, 0x48, 0x40, 0x5d, 0x70, 0xbd, 0x20, 0x67, + 0x01, 0x00, 0x1c, 0x67, 0x01, 0x00, 0xcc, 0x47, + 0x01, 0x00, 0x04, 0x49, 0x00, 0x20, 0x09, 0x69, + 0x00, 0x29, 0x02, 0xd0, 0xff, 0x31, 0x01, 0x31, + 0x88, 0x69, 0x70, 0x47, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0x01, 0x48, 0x00, 0x7a, 0x3c, 0x00, + 0x04, 0x56, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0xac, 0x7c, 0x01, 0x00, 0xfe, 0xb5, 0x06, 0x1c, + 0x00, 0x20, 0x1f, 0x1c, 0x14, 0x1c, 0x00, 0x29, + 0x02, 0x90, 0x19, 0xd0, 0x01, 0x29, 0x26, 0xd0, + 0x02, 0x29, 0x47, 0xd1, 0x26, 0x48, 0x00, 0x78, + 0x05, 0xf0, 0xa0, 0xfb, 0xa0, 0x72, 0x0a, 0xf0, + 0x4f, 0xfc, 0x0e, 0x28, 0x09, 0xd1, 0xa0, 0x7a, + 0x05, 0xf0, 0xaa, 0xfb, 0x00, 0x28, 0x04, 0xd0, + 0x3c, 0x00, 0x40, 0x56, 0x00, 0x00, 0x20, 0x48, + 0x00, 0x78, 0x05, 0xf0, 0x92, 0xfb, 0xa0, 0x72, + 0x00, 0x20, 0x20, 0x72, 0x2f, 0xe0, 0x1d, 0x4d, + 0x28, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xfb, 0xf7, + 0x52, 0xfe, 0x00, 0x97, 0x2a, 0x68, 0x23, 0x1c, + 0x18, 0x32, 0x11, 0x1c, 0x30, 0x1c, 0xfc, 0xf7, + 0xde, 0xfb, 0x26, 0xe0, 0x30, 0x1c, 0x0c, 0xf0, + 0xca, 0xfb, 0x05, 0x1c, 0x02, 0xd0, 0xa8, 0x68, + 0x00, 0x28, 0x3c, 0x00, 0x7c, 0x56, 0x00, 0x00, + 0x08, 0xd1, 0x13, 0x48, 0x00, 0x68, 0x00, 0x28, + 0x01, 0xd1, 0xfb, 0xf7, 0x3b, 0xfe, 0x10, 0x48, + 0x00, 0x68, 0x18, 0x30, 0x02, 0x1c, 0x0e, 0x48, + 0x00, 0x97, 0x01, 0x68, 0x23, 0x1c, 0x18, 0x31, + 0x30, 0x1c, 0xfc, 0xf7, 0xc3, 0xfb, 0x00, 0x2d, + 0x0a, 0xd0, 0x40, 0x35, 0x28, 0x88, 0x80, 0x06, + 0x06, 0xd4, 0x00, 0x20, 0x20, 0x60, 0x03, 0xe0, + 0x01, 0x21, 0x90, 0x20, 0x3c, 0x00, 0xb8, 0x56, + 0x00, 0x00, 0xfb, 0xf7, 0xf4, 0xfd, 0x02, 0x98, + 0xfe, 0xbd, 0xb0, 0x69, 0x01, 0x00, 0x90, 0x57, + 0x01, 0x00, 0x20, 0x67, 0x01, 0x00, 0x1c, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x20, 0x02, 0xf0, + 0x4a, 0xfe, 0x18, 0x23, 0x05, 0x4a, 0x58, 0x43, + 0x80, 0x18, 0x40, 0x69, 0x01, 0x21, 0x00, 0x28, + 0x00, 0xd0, 0x41, 0x78, 0x08, 0x1c, 0x80, 0xbd, + 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, 0x3c, 0x00, + 0xf4, 0x56, 0x00, 0x00, 0x02, 0x49, 0x08, 0x69, + 0x00, 0x28, 0x00, 0xd1, 0xc8, 0x68, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x03, 0x48, 0xc0, 0x68, + 0x00, 0x28, 0x01, 0xd0, 0x04, 0x30, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x10, 0x67, 0x01, 0x00, + 0x10, 0xb5, 0x05, 0x4c, 0xe0, 0x68, 0x00, 0x28, + 0x03, 0xd1, 0x05, 0x21, 0x90, 0x20, 0xfb, 0xf7, + 0xbd, 0xfd, 0xe0, 0x68, 0x10, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x57, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0xf8, 0xb5, 0x0d, 0x1c, 0x00, 0x2a, + 0x03, 0xd0, 0x11, 0x49, 0x12, 0x4f, 0x0e, 0x78, + 0x01, 0xe0, 0x11, 0x4f, 0x0c, 0x26, 0x08, 0x2e, + 0x01, 0xd2, 0x34, 0x1c, 0x00, 0xe0, 0x08, 0x24, + 0x01, 0x21, 0x01, 0x70, 0x44, 0x70, 0x39, 0x1c, + 0x22, 0x1c, 0x02, 0x30, 0xfa, 0xf7, 0xcb, 0xfe, + 0x32, 0x1b, 0x00, 0x2a, 0x07, 0xdd, 0x32, 0x20, + 0x28, 0x70, 0x3c, 0x00, 0x6c, 0x57, 0x00, 0x00, + 0x39, 0x19, 0xa8, 0x1c, 0x6a, 0x70, 0xfa, 0xf7, + 0xc1, 0xfe, 0xf8, 0xbd, 0xff, 0x20, 0x28, 0x70, + 0x00, 0x20, 0x68, 0x70, 0xf9, 0xe7, 0x00, 0x00, + 0xa4, 0x69, 0x01, 0x00, 0xb0, 0x69, 0x01, 0x00, + 0x90, 0x57, 0x01, 0x00, 0x01, 0x49, 0x48, 0x62, + 0x70, 0x47, 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, + 0x03, 0x49, 0x80, 0xb5, 0x08, 0x60, 0x01, 0x21, + 0x01, 0x20, 0x03, 0xf0, 0x3c, 0x00, 0xa8, 0x57, + 0x00, 0x00, 0xc5, 0xfb, 0x80, 0xbd, 0x1c, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x21, 0x01, 0x20, + 0x03, 0xf0, 0xbd, 0xfb, 0x06, 0xf0, 0xb9, 0xf8, + 0x02, 0x49, 0x00, 0x20, 0x08, 0x60, 0x80, 0xbd, + 0x00, 0x00, 0x1c, 0x67, 0x01, 0x00, 0x03, 0x49, + 0x01, 0x20, 0xc9, 0x68, 0x00, 0x29, 0x00, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0x03, 0x48, 0xc0, 0x68, 0x3c, 0x00, + 0xe4, 0x57, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd0, + 0x40, 0x69, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x01, 0x20, 0x03, 0xf0, 0x9b, 0xfb, 0x80, 0xbd, + 0x05, 0x4a, 0x80, 0xb5, 0x12, 0x69, 0x00, 0x21, + 0x00, 0x2a, 0x03, 0xd0, 0x11, 0x1d, 0x05, 0xf0, + 0x91, 0xfa, 0x01, 0x1c, 0x08, 0x1c, 0x80, 0xbd, + 0x10, 0x67, 0x01, 0x00, 0x06, 0x4a, 0x80, 0xb5, + 0x3c, 0x00, 0x20, 0x58, 0x00, 0x00, 0x12, 0x69, + 0x00, 0x21, 0x00, 0x2a, 0x05, 0xd0, 0x11, 0x1c, + 0xff, 0x31, 0x21, 0x31, 0x05, 0xf0, 0x8b, 0xfa, + 0x01, 0x1c, 0x08, 0x1c, 0x80, 0xbd, 0x10, 0x67, + 0x01, 0x00, 0x05, 0x4a, 0x80, 0xb5, 0xd2, 0x68, + 0x00, 0x21, 0x00, 0x2a, 0x03, 0xd0, 0x11, 0x1d, + 0x05, 0xf0, 0x73, 0xfa, 0x01, 0x1c, 0x08, 0x1c, + 0x80, 0xbd, 0x10, 0x67, 0x01, 0x00, 0x06, 0x4a, + 0x80, 0xb5, 0x3c, 0x00, 0x5c, 0x58, 0x00, 0x00, + 0xd2, 0x68, 0x00, 0x21, 0x00, 0x2a, 0x05, 0xd0, + 0x11, 0x1c, 0xff, 0x31, 0x21, 0x31, 0x05, 0xf0, + 0x6d, 0xfa, 0x01, 0x1c, 0x08, 0x1c, 0x80, 0xbd, + 0x10, 0x67, 0x01, 0x00, 0xff, 0xb5, 0x0d, 0x1c, + 0x1f, 0x1c, 0x87, 0xb0, 0x10, 0x9e, 0x00, 0x24, + 0x02, 0xf0, 0x72, 0xfd, 0x18, 0x23, 0x13, 0x49, + 0x58, 0x43, 0x08, 0x58, 0x00, 0x28, 0x19, 0xd0, + 0x04, 0x1c, 0x33, 0x1c, 0x3c, 0x00, 0x98, 0x58, + 0x00, 0x00, 0x3a, 0x1c, 0x28, 0x1c, 0x09, 0x99, + 0xfa, 0xf7, 0x9f, 0xfd, 0x04, 0x1c, 0x14, 0xd0, + 0x18, 0x20, 0x00, 0xab, 0x18, 0x80, 0xaa, 0x68, + 0x01, 0xa8, 0x69, 0x46, 0xff, 0xf7, 0xe7, 0xfd, + 0x6a, 0x46, 0x01, 0xa9, 0x00, 0x20, 0x07, 0xf0, + 0x44, 0xfe, 0x00, 0x28, 0x05, 0xd1, 0x0a, 0x21, + 0x00, 0xe0, 0x0f, 0x21, 0x90, 0x20, 0xfb, 0xf7, + 0xea, 0xfc, 0x20, 0x1c, 0x0b, 0xb0, 0x3c, 0x00, + 0xd4, 0x58, 0x00, 0x00, 0xf0, 0xbd, 0x00, 0x00, + 0x94, 0x67, 0x01, 0x00, 0x10, 0xb5, 0x00, 0x24, + 0x02, 0xf0, 0x44, 0xfd, 0x18, 0x23, 0x05, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x80, 0x68, 0x00, 0x28, + 0x02, 0xd0, 0xfa, 0xf7, 0x71, 0xfd, 0x01, 0x24, + 0x20, 0x1c, 0x10, 0xbd, 0x94, 0x67, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x4b, 0x00, 0xf0, 0x4e, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x10, 0x67, 0x01, 0x00, + 0x3c, 0x00, 0x10, 0x59, 0x00, 0x00, 0x80, 0xb5, + 0x02, 0x4b, 0x00, 0xf0, 0x46, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x11, 0x67, 0x01, 0x00, 0xf8, 0xb5, + 0x0e, 0x1c, 0x15, 0x1c, 0x00, 0x28, 0x1c, 0x49, + 0x10, 0xd0, 0x48, 0x68, 0x1c, 0x4a, 0x28, 0x80, + 0x00, 0x20, 0x07, 0xe0, 0x0b, 0x18, 0x1c, 0x7a, + 0x14, 0x23, 0x63, 0x43, 0x9b, 0x18, 0x1b, 0x7c, + 0x33, 0x54, 0x01, 0x30, 0x2b, 0x88, 0x83, 0x42, + 0xf4, 0xdc, 0x3c, 0x00, 0x4c, 0x59, 0x00, 0x00, + 0x24, 0xe0, 0x00, 0x20, 0x0f, 0x1c, 0x00, 0x24, + 0x08, 0x60, 0x0f, 0xe0, 0x30, 0x5d, 0x05, 0xf0, + 0x07, 0xfa, 0x0e, 0x28, 0x01, 0xd1, 0x00, 0x20, + 0xf8, 0xbd, 0x39, 0x19, 0x08, 0x72, 0x01, 0x22, + 0x39, 0x68, 0x82, 0x40, 0x11, 0x43, 0x08, 0x1c, + 0x38, 0x60, 0x01, 0x34, 0x28, 0x88, 0xa0, 0x42, + 0xec, 0xdc, 0x28, 0x88, 0x78, 0x60, 0xff, 0xf7, + 0xb7, 0xfe, 0x00, 0x28, 0x3c, 0x00, 0x88, 0x59, + 0x00, 0x00, 0x06, 0xd0, 0x01, 0x69, 0x00, 0x29, + 0x03, 0xd0, 0x7f, 0x21, 0xc9, 0x43, 0x0b, 0xf0, + 0x52, 0xfb, 0x01, 0x20, 0xe3, 0xe7, 0x2c, 0x7d, + 0x01, 0x00, 0x74, 0x40, 0x01, 0x00, 0x10, 0xb5, + 0x1c, 0x1c, 0x00, 0x28, 0x0b, 0xd0, 0x20, 0x78, + 0x0e, 0x28, 0x05, 0xd2, 0x14, 0x23, 0x0c, 0x4a, + 0x58, 0x43, 0x80, 0x18, 0x00, 0x7c, 0x00, 0xe0, + 0x00, 0x20, 0x08, 0x70, 0x0e, 0xe0, 0x3c, 0x00, + 0xc4, 0x59, 0x00, 0x00, 0x08, 0x78, 0x05, 0xf0, + 0xd1, 0xf9, 0x20, 0x70, 0xff, 0xf7, 0x92, 0xfe, + 0x00, 0x28, 0x06, 0xd0, 0x01, 0x69, 0x00, 0x29, + 0x03, 0xd0, 0x7f, 0x21, 0xc9, 0x43, 0x0b, 0xf0, + 0x2d, 0xfb, 0x01, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x74, 0x40, 0x01, 0x00, 0x80, 0xb5, 0x27, 0x20, + 0xc0, 0x43, 0x09, 0xf0, 0x31, 0xfc, 0x80, 0xbd, + 0x80, 0xb5, 0x27, 0x20, 0xc0, 0x43, 0x09, 0xf0, + 0x3c, 0x00, 0x00, 0x5a, 0x00, 0x00, 0x39, 0xfc, + 0x80, 0xbd, 0x80, 0xb5, 0x28, 0x20, 0x09, 0xf0, + 0x42, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x28, 0x20, 0x09, 0xf0, 0x4a, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x01, 0x28, 0x28, 0xd1, + 0x01, 0x29, 0x01, 0xd0, 0xfb, 0xf7, 0x6b, 0xfc, + 0xff, 0xf7, 0xe9, 0xfd, 0x02, 0x28, 0x1a, 0xd1, + 0x07, 0xf0, 0x13, 0xfc, 0x12, 0x4c, 0x21, 0x69, + 0x88, 0x42, 0x3c, 0x00, 0x3c, 0x5a, 0x00, 0x00, + 0x15, 0xd0, 0x07, 0xf0, 0x0d, 0xfc, 0x20, 0x61, + 0x20, 0x68, 0x7d, 0x24, 0xe4, 0x00, 0x44, 0x43, + 0x0d, 0xf0, 0xae, 0xf9, 0x05, 0x1c, 0x07, 0xf0, + 0x0b, 0xfc, 0x28, 0x1a, 0x84, 0x42, 0x00, 0xd9, + 0x24, 0x1a, 0x01, 0x22, 0x21, 0x1c, 0x0a, 0x20, + 0x0d, 0xf0, 0xb2, 0xfd, 0xb0, 0xbd, 0x00, 0x21, + 0x09, 0x20, 0x0c, 0xf0, 0x75, 0xfc, 0xb0, 0xbd, + 0x07, 0x21, 0x0a, 0x20, 0x3c, 0x00, 0x78, 0x5a, + 0x00, 0x00, 0xfb, 0xf7, 0x14, 0xfc, 0xb0, 0xbd, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x7d, 0x20, + 0x02, 0x49, 0x00, 0x01, 0x08, 0x60, 0x70, 0x47, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x10, 0xb5, + 0x81, 0x6d, 0x04, 0x1c, 0xff, 0x30, 0x46, 0x30, + 0x0c, 0xf0, 0xd1, 0xfc, 0x20, 0x1c, 0xff, 0x30, + 0x50, 0x30, 0xa1, 0x6d, 0x0c, 0xf0, 0xcb, 0xfc, + 0x10, 0xbd, 0xb0, 0xb5, 0x04, 0x1c, 0x3c, 0x00, + 0xb4, 0x5a, 0x00, 0x00, 0x0d, 0x1c, 0x02, 0xf0, + 0x59, 0xfc, 0x20, 0x1c, 0x02, 0xf0, 0x56, 0xfc, + 0x18, 0x23, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x18, 0x22, 0x29, 0x1c, 0xfa, 0xf7, 0x70, 0xfd, + 0xb0, 0xbd, 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x09, 0xf0, 0xbc, 0xfb, + 0x20, 0x1c, 0x09, 0xf0, 0xc7, 0xfb, 0x10, 0xbd, + 0x10, 0xb5, 0x04, 0x1c, 0x09, 0xf0, 0xd0, 0xfb, + 0x3c, 0x00, 0xf0, 0x5a, 0x00, 0x00, 0x20, 0x1c, + 0x09, 0xf0, 0xdb, 0xfb, 0x10, 0xbd, 0x70, 0xb5, + 0x0c, 0x78, 0x06, 0x1c, 0x48, 0x88, 0x4d, 0x78, + 0xe2, 0x00, 0x80, 0x1a, 0xe9, 0x00, 0x40, 0x1a, + 0x01, 0x1c, 0x41, 0x43, 0x12, 0x31, 0x24, 0x20, + 0xfa, 0xf7, 0x91, 0xfd, 0x21, 0x1c, 0x61, 0x43, + 0xc9, 0x00, 0x40, 0x18, 0x29, 0x1c, 0x69, 0x43, + 0xc9, 0x00, 0x42, 0x18, 0x0c, 0x49, 0x88, 0x79, + 0x0c, 0x4b, 0x3c, 0x00, 0x2c, 0x5b, 0x00, 0x00, + 0x53, 0x43, 0x0c, 0x4a, 0x13, 0x60, 0x53, 0x7b, + 0x34, 0x02, 0x14, 0x60, 0x52, 0x7b, 0x88, 0x71, + 0x01, 0x33, 0x58, 0x10, 0x08, 0x4b, 0x80, 0x1a, + 0x01, 0x21, 0x49, 0x02, 0x58, 0x43, 0x00, 0x28, + 0x00, 0xda, 0x49, 0x42, 0x08, 0x18, 0x80, 0x12, + 0x21, 0x38, 0x70, 0xbd, 0x20, 0x10, 0x07, 0x00, + 0xec, 0x04, 0x00, 0x00, 0x00, 0xa0, 0x07, 0x00, + 0x03, 0x03, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x5b, + 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x06, 0x21, + 0x04, 0x30, 0xfa, 0xf7, 0x70, 0xfc, 0xff, 0x20, + 0x21, 0x30, 0xff, 0x21, 0x01, 0x55, 0x20, 0x1c, + 0xff, 0x30, 0x41, 0x30, 0x81, 0x70, 0x41, 0x71, + 0xc1, 0x73, 0xff, 0x20, 0x63, 0x30, 0x01, 0x55, + 0x00, 0x20, 0x20, 0x61, 0x60, 0x61, 0xff, 0x34, + 0x01, 0x34, 0xa0, 0x60, 0xe0, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x70, 0xb5, 0x06, 0x1c, 0x3c, 0x00, + 0xa4, 0x5b, 0x00, 0x00, 0x08, 0x1c, 0x58, 0x60, + 0x9a, 0x60, 0x1c, 0x1c, 0x1e, 0x60, 0x15, 0x1c, + 0x9b, 0x8a, 0xe2, 0x8a, 0x31, 0x1c, 0x02, 0xf0, + 0xa1, 0xfc, 0x28, 0x1a, 0xe0, 0x60, 0x70, 0xbd, + 0x70, 0xb5, 0x04, 0x1c, 0x08, 0x1c, 0x11, 0x1c, + 0x1e, 0x1c, 0x00, 0x25, 0xeb, 0x43, 0x22, 0x1c, + 0x18, 0x32, 0x0b, 0xf0, 0xf7, 0xfb, 0x22, 0x1c, + 0xff, 0x32, 0x50, 0x32, 0x11, 0x1c, 0x0a, 0x39, + 0x3c, 0x00, 0xe0, 0x5b, 0x00, 0x00, 0x01, 0x23, + 0x20, 0x1c, 0x00, 0xf0, 0xc6, 0xf8, 0x0c, 0x28, + 0x10, 0xd0, 0x01, 0x25, 0x20, 0x1c, 0x0b, 0xf0, + 0xac, 0xfa, 0x20, 0x1c, 0x00, 0xf0, 0x19, 0xf8, + 0x20, 0x1c, 0x00, 0xf0, 0x0a, 0xf8, 0x20, 0x1c, + 0x00, 0xf0, 0x29, 0xf8, 0x31, 0x1c, 0x20, 0x1c, + 0x0b, 0xf0, 0x17, 0xfa, 0x28, 0x1c, 0x70, 0xbd, + 0x00, 0x00, 0xff, 0x21, 0x1d, 0x31, 0x09, 0x58, + 0x80, 0x30, 0x3c, 0x00, 0x1c, 0x5c, 0x00, 0x00, + 0x89, 0x07, 0x00, 0x29, 0x01, 0xda, 0x01, 0x21, + 0x00, 0xe0, 0x00, 0x21, 0xc1, 0x62, 0x70, 0x47, + 0x01, 0x1c, 0x80, 0x31, 0x00, 0x22, 0x0a, 0x63, + 0x07, 0x4a, 0x12, 0x68, 0x00, 0x2a, 0x09, 0xd0, + 0x42, 0x88, 0x92, 0x06, 0x06, 0xd5, 0xff, 0x30, + 0x01, 0x30, 0xc0, 0x69, 0x40, 0x07, 0x01, 0xd4, + 0x01, 0x20, 0x08, 0x63, 0x70, 0x47, 0x00, 0x00, + 0xac, 0x69, 0x01, 0x00, 0x3c, 0x00, 0x58, 0x5c, + 0x00, 0x00, 0x80, 0xb5, 0x01, 0x1c, 0x4a, 0x88, + 0x00, 0x20, 0x52, 0x05, 0x05, 0xd5, 0xff, 0x31, + 0x01, 0x31, 0xc9, 0x69, 0x49, 0x07, 0x00, 0xd4, + 0x01, 0x20, 0x06, 0xf0, 0xec, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xf8, 0xb5, 0x05, 0x1c, 0x98, 0x68, + 0x17, 0x1c, 0x0e, 0x1c, 0x1c, 0x1c, 0x00, 0x28, + 0x02, 0xd1, 0x20, 0x1c, 0x0c, 0xf0, 0x31, 0xf8, + 0xab, 0x69, 0x39, 0x1c, 0x30, 0x1c, 0x3c, 0x00, + 0x94, 0x5c, 0x00, 0x00, 0xa2, 0x68, 0x0b, 0xf0, + 0x95, 0xfb, 0xf8, 0xbd, 0xf8, 0xb5, 0x16, 0x1c, + 0x0d, 0x1c, 0x1f, 0x1c, 0x00, 0x24, 0x02, 0xf0, + 0x61, 0xfb, 0x18, 0x23, 0x06, 0x49, 0x58, 0x43, + 0x40, 0x18, 0x43, 0x68, 0x00, 0x2b, 0x05, 0xd0, + 0x3a, 0x1c, 0x31, 0x1c, 0x28, 0x1c, 0xfa, 0xf7, + 0x8e, 0xfb, 0x01, 0x24, 0x20, 0x1c, 0xf8, 0xbd, + 0x94, 0x67, 0x01, 0x00, 0x80, 0xb5, 0x07, 0xf0, + 0x3c, 0x00, 0xd0, 0x5c, 0x00, 0x00, 0xc5, 0xfa, + 0x09, 0x49, 0x08, 0x61, 0x08, 0x68, 0x00, 0x28, + 0x02, 0xd1, 0x7d, 0x20, 0x00, 0x01, 0x08, 0x60, + 0x08, 0x68, 0x7d, 0x21, 0xc9, 0x00, 0x41, 0x43, + 0x00, 0x23, 0x01, 0x22, 0x0a, 0x20, 0x0d, 0xf0, + 0x4e, 0xfd, 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x21, 0x0a, 0x20, + 0x0d, 0xf0, 0x97, 0xfc, 0x80, 0xbd, 0xf8, 0xb5, + 0x0e, 0x1c, 0x3c, 0x00, 0x0c, 0x5d, 0x00, 0x00, + 0x51, 0x68, 0x14, 0x1c, 0x12, 0x68, 0xa5, 0x68, + 0x0b, 0x1c, 0x75, 0x1b, 0x57, 0x19, 0x97, 0x42, + 0x00, 0xd2, 0x01, 0x31, 0x42, 0x68, 0x00, 0x25, + 0x8a, 0x42, 0x02, 0xdd, 0x01, 0x25, 0x62, 0x60, + 0x05, 0xe0, 0x9a, 0x42, 0x03, 0xd1, 0x01, 0x68, + 0xb9, 0x42, 0x00, 0xd9, 0x01, 0x25, 0x00, 0x2d, + 0x09, 0xd0, 0x01, 0x68, 0x21, 0x60, 0xa6, 0x60, + 0xa3, 0x8a, 0xe2, 0x8a, 0x3c, 0x00, 0x48, 0x5d, + 0x00, 0x00, 0x60, 0x68, 0x02, 0xf0, 0xd7, 0xfb, + 0x30, 0x1a, 0xe0, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0xf0, 0x07, 0xfb, + 0x18, 0x23, 0x03, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x18, 0x21, 0xfa, 0xf7, 0x98, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, 0xfe, 0xb5, + 0x04, 0x1c, 0x08, 0x1c, 0x11, 0x1c, 0x1e, 0x1c, + 0x0c, 0x25, 0x01, 0x22, 0x00, 0x92, 0x3c, 0x00, + 0x84, 0x5d, 0x00, 0x00, 0xa2, 0x69, 0x02, 0xab, + 0xfd, 0xf7, 0xf0, 0xf8, 0x00, 0x28, 0x45, 0xd0, + 0x02, 0x98, 0x27, 0x21, 0x02, 0x1c, 0x0a, 0x40, + 0x01, 0xd1, 0x08, 0x43, 0x02, 0x90, 0x21, 0x49, + 0xa0, 0x69, 0x08, 0x40, 0x06, 0xd0, 0x02, 0x98, + 0x01, 0x40, 0x03, 0xd1, 0x49, 0x21, 0xc9, 0x00, + 0x08, 0x43, 0x02, 0x90, 0xa0, 0x6d, 0x02, 0x99, + 0x88, 0x42, 0x30, 0xd0, 0x00, 0x2e, 0x2d, 0xd0, + 0x3c, 0x00, 0xc0, 0x5d, 0x00, 0x00, 0x40, 0x21, + 0x20, 0x1c, 0x58, 0x30, 0xfa, 0xf7, 0x69, 0xfb, + 0x02, 0x98, 0x00, 0x25, 0x00, 0x26, 0x37, 0x1c, + 0xa0, 0x65, 0x19, 0xe0, 0xc0, 0x07, 0x11, 0xd5, + 0xf0, 0x19, 0x00, 0x19, 0x70, 0x30, 0x05, 0x71, + 0x28, 0x1c, 0x04, 0xf0, 0xd4, 0xff, 0x00, 0x28, + 0x04, 0xd0, 0xa0, 0x19, 0x80, 0x30, 0x05, 0x72, + 0x01, 0x36, 0x03, 0xe0, 0xe0, 0x19, 0x60, 0x30, + 0x05, 0x70, 0x3c, 0x00, 0xfc, 0x5d, 0x00, 0x00, + 0x01, 0x37, 0x01, 0x35, 0x2d, 0x06, 0x02, 0x98, + 0x2d, 0x0e, 0x40, 0x08, 0x02, 0x90, 0x02, 0x98, + 0x00, 0x28, 0xe2, 0xd1, 0x84, 0x20, 0x06, 0x51, + 0xf0, 0x19, 0x20, 0x67, 0xe7, 0x65, 0x00, 0x25, + 0x00, 0xe0, 0x0b, 0x25, 0x28, 0x1c, 0xfe, 0xbd, + 0xd8, 0x3a, 0x00, 0x00, 0x38, 0xb5, 0x05, 0x1c, + 0x08, 0x1c, 0x11, 0x1c, 0x00, 0x24, 0xe2, 0x43, + 0x6b, 0x46, 0xff, 0xf7, 0x3c, 0x00, 0x38, 0x5e, + 0x00, 0x00, 0x4f, 0xfa, 0x00, 0x28, 0x05, 0xd0, + 0xa8, 0x69, 0x00, 0x99, 0x01, 0x40, 0x81, 0x42, + 0x00, 0xd1, 0x01, 0x24, 0x20, 0x1c, 0x38, 0xbd, + 0x00, 0x00, 0x7c, 0xb5, 0x05, 0x6a, 0x86, 0x69, + 0x04, 0x1c, 0xc0, 0x68, 0xfb, 0xf7, 0xb7, 0xfb, + 0xe1, 0x69, 0xfb, 0xf7, 0xda, 0xfa, 0x20, 0x1c, + 0xe2, 0x69, 0x40, 0x30, 0xc1, 0x8b, 0x12, 0x89, + 0x89, 0x18, 0xc1, 0x83, 0x06, 0x49, 0x3c, 0x00, + 0x74, 0x5e, 0x00, 0x00, 0x01, 0x94, 0x00, 0x91, + 0x28, 0x69, 0x33, 0x1c, 0x82, 0x88, 0x01, 0x68, + 0xe0, 0x68, 0xc0, 0x68, 0x00, 0xf0, 0xf2, 0xf9, + 0x7c, 0xbd, 0x00, 0x00, 0x91, 0x5e, 0x00, 0x00, + 0xb0, 0xb5, 0xd1, 0x68, 0x55, 0x69, 0xc8, 0x68, + 0x14, 0x1c, 0x14, 0x4b, 0x0c, 0xe0, 0x02, 0x68, + 0x9a, 0x42, 0x07, 0xd1, 0xc2, 0x68, 0xca, 0x60, + 0x00, 0x21, 0xc1, 0x60, 0x01, 0x60, 0xfb, 0xf7, + 0x3c, 0x00, 0xb0, 0x5e, 0x00, 0x00, 0x73, 0xfb, + 0x03, 0xe0, 0x01, 0x1c, 0xc0, 0x68, 0x00, 0x28, + 0xf0, 0xd1, 0xe0, 0x68, 0xc0, 0x68, 0xe8, 0x60, + 0xe0, 0x68, 0xc5, 0x60, 0x20, 0x1c, 0x40, 0x30, + 0xc1, 0x8b, 0x2a, 0x89, 0x89, 0x18, 0xc1, 0x83, + 0x20, 0x68, 0x00, 0x28, 0x02, 0xd0, 0xff, 0xf7, + 0xba, 0xff, 0xb0, 0xbd, 0x04, 0x48, 0x04, 0xf0, + 0x4e, 0xf9, 0x00, 0x6a, 0x07, 0xf0, 0x77, 0xfa, + 0xb0, 0xbd, 0x3c, 0x00, 0xec, 0x5e, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0xa0, 0x6a, 0x01, 0x00, + 0xf1, 0xb5, 0x82, 0xb0, 0x02, 0x98, 0x06, 0x69, + 0x01, 0x1c, 0x08, 0x36, 0x60, 0x31, 0x45, 0x68, + 0x01, 0x91, 0x82, 0xe0, 0x10, 0x21, 0x00, 0x20, + 0x2f, 0x69, 0xfb, 0xf7, 0x63, 0xfb, 0x68, 0x61, + 0x01, 0x89, 0x08, 0x39, 0x09, 0x04, 0x09, 0x0c, + 0x01, 0x81, 0x68, 0x69, 0x00, 0x68, 0x40, 0x18, + 0x08, 0x21, 0xfb, 0xf7, 0x3c, 0x00, 0x28, 0x5f, + 0x00, 0x00, 0x57, 0xfb, 0xe8, 0x61, 0x68, 0x69, + 0x71, 0x88, 0x00, 0x68, 0x20, 0x22, 0x01, 0x80, + 0x71, 0x68, 0x41, 0x60, 0x01, 0x99, 0x49, 0x7b, + 0x89, 0x01, 0x11, 0x43, 0xc1, 0x70, 0x00, 0x21, + 0x81, 0x70, 0x28, 0x20, 0xfb, 0xf7, 0x75, 0xfc, + 0x39, 0x88, 0x04, 0x1c, 0xc1, 0x81, 0xa8, 0x6b, + 0x00, 0x28, 0x03, 0xd1, 0x01, 0x20, 0x80, 0x02, + 0x08, 0x43, 0xe0, 0x81, 0x06, 0x22, 0x3c, 0x00, + 0x64, 0x5f, 0x00, 0x00, 0x39, 0x1d, 0x20, 0x1c, + 0x10, 0x30, 0xfa, 0xf7, 0xc5, 0xfa, 0x39, 0x1c, + 0x0a, 0x31, 0x06, 0x22, 0x20, 0x1c, 0x16, 0x30, + 0x00, 0x90, 0xfa, 0xf7, 0xbd, 0xfa, 0x39, 0x1c, + 0x10, 0x31, 0x06, 0x22, 0x20, 0x1c, 0x1c, 0x30, + 0xfa, 0xf7, 0xb6, 0xfa, 0xe1, 0x89, 0x25, 0x4a, + 0x5c, 0x20, 0x11, 0x40, 0x01, 0x22, 0x92, 0x03, + 0x11, 0x43, 0x40, 0x5b, 0xe1, 0x81, 0x0f, 0x21, + 0x3c, 0x00, 0xa0, 0x5f, 0x00, 0x00, 0x08, 0x40, + 0x60, 0x84, 0x20, 0x1c, 0x20, 0x30, 0x16, 0x21, + 0x81, 0x71, 0x00, 0x21, 0x21, 0x70, 0xe9, 0x6b, + 0x00, 0x29, 0x07, 0xd0, 0x29, 0x69, 0x09, 0x8b, + 0x09, 0x07, 0x09, 0x0f, 0x21, 0x70, 0xa1, 0x84, + 0x18, 0x21, 0x81, 0x71, 0x06, 0x22, 0x60, 0x1c, + 0x00, 0x99, 0xfa, 0xf7, 0x94, 0xfa, 0x70, 0x68, + 0x00, 0x0e, 0xe0, 0x71, 0x70, 0x68, 0x00, 0x02, + 0x00, 0x0e, 0x3c, 0x00, 0xdc, 0x5f, 0x00, 0x00, + 0x20, 0x72, 0x70, 0x68, 0x00, 0x04, 0x00, 0x0e, + 0x60, 0x72, 0x70, 0x68, 0xa0, 0x72, 0x70, 0x88, + 0x00, 0x0a, 0xe0, 0x72, 0x70, 0x88, 0x20, 0x73, + 0x70, 0x88, 0x01, 0x30, 0x00, 0x04, 0x00, 0x0c, + 0x70, 0x80, 0x02, 0xd1, 0x70, 0x68, 0x01, 0x30, + 0x70, 0x60, 0xac, 0x61, 0x02, 0x98, 0x28, 0x62, + 0x2d, 0x68, 0x00, 0x2d, 0x00, 0xd0, 0x79, 0xe7, + 0x02, 0x98, 0x04, 0x49, 0x3c, 0x00, 0x18, 0x60, + 0x00, 0x00, 0x42, 0x68, 0x04, 0x48, 0x04, 0xf0, + 0x74, 0xf8, 0xfe, 0xbd, 0x00, 0x00, 0x8f, 0xc7, + 0xff, 0xff, 0x3d, 0xda, 0x00, 0x00, 0xa0, 0x6a, + 0x01, 0x00, 0xb0, 0xb5, 0x07, 0x4d, 0x28, 0x78, + 0x03, 0x28, 0x08, 0xd0, 0x00, 0x24, 0x2c, 0x70, + 0x69, 0x68, 0x00, 0x29, 0x03, 0xd0, 0x01, 0x20, + 0xfa, 0xf7, 0xc8, 0xf9, 0x6c, 0x60, 0xb0, 0xbd, + 0x00, 0x00, 0x9c, 0x73, 0x01, 0x00, 0x3c, 0x00, + 0x54, 0x60, 0x00, 0x00, 0xf8, 0xb5, 0x2b, 0x4b, + 0xd8, 0x6a, 0x00, 0x28, 0x50, 0xd0, 0x2a, 0x48, + 0x01, 0x1c, 0xff, 0x31, 0x01, 0x31, 0xca, 0x68, + 0x01, 0x32, 0xca, 0x60, 0x1a, 0x6c, 0x00, 0x2a, + 0x02, 0xd1, 0x4a, 0x69, 0x01, 0x32, 0x4a, 0x61, + 0x0a, 0x69, 0x01, 0x32, 0x0a, 0x61, 0xda, 0x68, + 0x00, 0x2a, 0x04, 0xd0, 0x1f, 0x4a, 0x01, 0x32, + 0x12, 0x78, 0x00, 0x2a, 0x02, 0xd1, 0x8a, 0x69, + 0x3c, 0x00, 0x90, 0x60, 0x00, 0x00, 0x01, 0x32, + 0x8a, 0x61, 0x00, 0x25, 0x07, 0x1d, 0x18, 0x26, + 0x1a, 0x4a, 0x6e, 0x43, 0x74, 0x32, 0x90, 0x59, + 0x00, 0x28, 0x29, 0xd0, 0xb4, 0x18, 0x60, 0x69, + 0x00, 0x28, 0x25, 0xd1, 0x60, 0x68, 0x00, 0x28, + 0x02, 0xd0, 0x01, 0x68, 0x00, 0x29, 0x05, 0xd1, + 0xa1, 0x68, 0x00, 0x29, 0x1c, 0xd0, 0x09, 0x68, + 0x00, 0x29, 0x19, 0xd0, 0x00, 0x28, 0x05, 0xd0, + 0xe1, 0x68, 0x3c, 0x00, 0xcc, 0x60, 0x00, 0x00, + 0x01, 0x31, 0xe1, 0x60, 0x00, 0x68, 0x81, 0x42, + 0x11, 0xd3, 0xa0, 0x68, 0x00, 0x28, 0x06, 0xd0, + 0x21, 0x69, 0x00, 0x68, 0x08, 0x18, 0x0c, 0xf0, + 0xa3, 0xfd, 0x00, 0x28, 0x07, 0xd0, 0x06, 0x4a, + 0x01, 0x20, 0x60, 0x61, 0x74, 0x32, 0x91, 0x59, + 0x38, 0x1c, 0xfa, 0xf7, 0x70, 0xf9, 0x01, 0x35, + 0x02, 0x2d, 0xcb, 0xdb, 0xf8, 0xbd, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x3c, 0x00, 0x08, 0x61, + 0x00, 0x00, 0xf4, 0x67, 0x01, 0x00, 0xf8, 0xb5, + 0x0f, 0x1c, 0x00, 0x25, 0x04, 0x1c, 0x00, 0x28, + 0x25, 0xd0, 0x20, 0x1c, 0x04, 0xf0, 0x03, 0xfe, + 0x00, 0x28, 0x06, 0xd0, 0xff, 0xf7, 0xff, 0xf8, + 0x04, 0x1c, 0xff, 0xf7, 0x50, 0xfb, 0x06, 0x1c, + 0x07, 0xe0, 0x20, 0x1c, 0xff, 0xf7, 0x91, 0xfb, + 0x06, 0x1c, 0x20, 0x1c, 0xff, 0xf7, 0x6f, 0xfb, + 0x04, 0x1c, 0x00, 0x2e, 0x06, 0xd0, 0x3c, 0x00, + 0x44, 0x61, 0x00, 0x00, 0xff, 0xf7, 0x4c, 0xfb, + 0x00, 0x28, 0x02, 0xd0, 0x01, 0x25, 0x01, 0x20, + 0x07, 0xe0, 0x00, 0x2c, 0x06, 0xd0, 0xff, 0xf7, + 0xef, 0xf8, 0x00, 0x28, 0x02, 0xd0, 0x01, 0x25, + 0x00, 0x20, 0x38, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0xb0, 0xb5, 0xc5, 0x68, 0x04, 0x1c, 0x0d, 0xf0, + 0x8f, 0xfc, 0x20, 0x7e, 0xc1, 0x07, 0x08, 0xd5, + 0xe1, 0x68, 0xa9, 0x42, 0x05, 0xd9, 0x22, 0x69, + 0x3c, 0x00, 0x80, 0x61, 0x00, 0x00, 0x91, 0x42, + 0x02, 0xd3, 0xe1, 0x8a, 0x01, 0x31, 0xe1, 0x82, + 0x81, 0x07, 0x08, 0xd5, 0xe1, 0x68, 0xa9, 0x42, + 0x05, 0xd2, 0x22, 0x69, 0x91, 0x42, 0x02, 0xd8, + 0xe1, 0x8a, 0x01, 0x31, 0xe1, 0x82, 0x40, 0x07, + 0x06, 0xd5, 0xe0, 0x68, 0x21, 0x69, 0x88, 0x42, + 0x02, 0xd1, 0xe0, 0x8a, 0x01, 0x30, 0xe0, 0x82, + 0xe0, 0x8a, 0xa1, 0x8a, 0x88, 0x42, 0x0d, 0xd3, + 0x60, 0x7e, 0x3c, 0x00, 0xbc, 0x61, 0x00, 0x00, + 0x02, 0x28, 0x0b, 0xd0, 0x20, 0x68, 0xe1, 0x68, + 0x04, 0x22, 0x07, 0xf0, 0x65, 0xfb, 0x60, 0x7e, + 0x00, 0x28, 0x03, 0xd1, 0x20, 0x68, 0x08, 0xf0, + 0xab, 0xff, 0xb0, 0xbd, 0x00, 0x20, 0xe0, 0x82, + 0xb0, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x06, 0x1c, + 0x0c, 0x23, 0x20, 0x49, 0x58, 0x43, 0x45, 0x18, + 0x00, 0x20, 0xa8, 0x60, 0x30, 0x1c, 0x06, 0xf0, + 0x91, 0xfe, 0x04, 0x1c, 0x3c, 0x00, 0xf8, 0x61, + 0x00, 0x00, 0x68, 0x60, 0x33, 0xd0, 0x01, 0x20, + 0xa8, 0x70, 0x2c, 0x20, 0x00, 0x5d, 0x02, 0x28, + 0x03, 0xd1, 0x20, 0x1c, 0x03, 0xf0, 0x45, 0xfe, + 0x10, 0xe0, 0x61, 0x6b, 0x00, 0x29, 0x0a, 0xd0, + 0x01, 0x28, 0x04, 0xd1, 0x21, 0x1c, 0x28, 0x1c, + 0x03, 0xf0, 0x55, 0xfe, 0x06, 0xe0, 0x20, 0x1c, + 0x0a, 0xf0, 0x0d, 0xfc, 0x02, 0xe0, 0x20, 0x1c, + 0x0a, 0xf0, 0x3d, 0xfb, 0x0d, 0x48, 0x3c, 0x00, + 0x34, 0x62, 0x00, 0x00, 0x14, 0x38, 0x41, 0x68, + 0x00, 0x29, 0x10, 0xd0, 0x20, 0x1c, 0x40, 0x30, + 0x02, 0x8b, 0x12, 0x07, 0x92, 0x0f, 0x01, 0x2a, + 0x09, 0xd0, 0x80, 0x8b, 0x32, 0x02, 0x00, 0x09, + 0x00, 0x04, 0x10, 0x43, 0x81, 0x22, 0x02, 0x43, + 0x0c, 0x20, 0x0d, 0xf0, 0xb7, 0xf9, 0x0c, 0xf0, + 0xa5, 0xfd, 0x60, 0x64, 0x70, 0xbd, 0x00, 0x00, + 0x60, 0x7b, 0x01, 0x00, 0xff, 0xb5, 0x08, 0x1c, + 0x3c, 0x00, 0x70, 0x62, 0x00, 0x00, 0x11, 0x1c, + 0x0c, 0x32, 0x20, 0x24, 0x14, 0x43, 0x0c, 0x4a, + 0x83, 0xb0, 0x0c, 0xae, 0x52, 0x68, 0x60, 0xce, + 0x94, 0x70, 0x00, 0x24, 0xd4, 0x70, 0x93, 0x63, + 0x0d, 0x23, 0x40, 0x27, 0xbb, 0x52, 0x94, 0x61, + 0x14, 0x84, 0x01, 0x22, 0x02, 0x92, 0x32, 0x1c, + 0x00, 0x90, 0x01, 0x91, 0x23, 0x1c, 0x29, 0x1c, + 0x03, 0x98, 0x00, 0xf0, 0x66, 0xf9, 0x07, 0xb0, + 0xf0, 0xbd, 0x3c, 0x00, 0xac, 0x62, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x00, 0x27, 0x11, 0x4e, 0x1d, 0xe0, 0xe0, 0x68, + 0x00, 0x28, 0x70, 0x68, 0x0c, 0xd1, 0x80, 0x88, + 0x00, 0x07, 0x0d, 0xd1, 0x01, 0x21, 0x0c, 0x48, + 0xfb, 0xf7, 0x84, 0xf9, 0xc4, 0x60, 0xe8, 0x60, + 0x70, 0x68, 0x81, 0x88, 0x01, 0x31, 0x02, 0xe0, + 0x81, 0x88, 0x22, 0x89, 0x89, 0x18, 0x81, 0x80, + 0xe0, 0x68, 0x39, 0x1c, 0x3c, 0x00, 0xe8, 0x62, + 0x00, 0x00, 0x00, 0x28, 0x01, 0xd1, 0x71, 0x68, + 0xc9, 0x6d, 0x25, 0x1c, 0x61, 0x60, 0x04, 0x1c, + 0x00, 0x2c, 0xdf, 0xd1, 0xf8, 0xbd, 0xa0, 0x7e, + 0x01, 0x00, 0x06, 0x49, 0x10, 0xb5, 0x49, 0x68, + 0x00, 0x23, 0x05, 0xe0, 0x8a, 0x88, 0x04, 0x89, + 0x12, 0x19, 0x8a, 0x80, 0x43, 0x60, 0xc0, 0x68, + 0x00, 0x28, 0xf7, 0xd1, 0x10, 0xbd, 0xa0, 0x7e, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x49, 0x3c, 0x00, + 0x24, 0x63, 0x00, 0x00, 0x00, 0x24, 0x49, 0x68, + 0x0a, 0xe0, 0x8a, 0x88, 0x03, 0x89, 0xd2, 0x18, + 0x8a, 0x80, 0xc3, 0x68, 0x22, 0x1c, 0x00, 0x2b, + 0x00, 0xd1, 0xca, 0x6d, 0x42, 0x60, 0x18, 0x1c, + 0x00, 0x28, 0xf2, 0xd1, 0x10, 0xbd, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x01, 0x1c, 0x13, 0x48, + 0x10, 0xb5, 0x40, 0x68, 0x00, 0x23, 0x09, 0xe0, + 0x82, 0x88, 0x0c, 0x89, 0x12, 0x19, 0x82, 0x80, + 0x3c, 0x00, 0x60, 0x63, 0x00, 0x00, 0x4b, 0x60, + 0xca, 0x68, 0x00, 0x2a, 0x00, 0xd1, 0x41, 0x66, + 0xc9, 0x68, 0x00, 0x29, 0xf3, 0xd1, 0x01, 0x1c, + 0x68, 0x31, 0x81, 0x64, 0xc3, 0x64, 0x43, 0x65, + 0x82, 0x88, 0x08, 0x23, 0x11, 0x1c, 0x08, 0x31, + 0x89, 0x07, 0x89, 0x0f, 0x59, 0x1a, 0x50, 0x23, + 0x19, 0x52, 0x51, 0x18, 0x81, 0x80, 0x01, 0x1c, + 0x40, 0x6e, 0x48, 0x31, 0xc1, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x63, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x10, 0xb5, 0x07, 0x49, + 0x00, 0x24, 0x4b, 0x68, 0x06, 0xe0, 0xc2, 0x68, + 0x21, 0x1c, 0x00, 0x2a, 0x00, 0xd1, 0xd9, 0x6d, + 0x41, 0x60, 0x10, 0x1c, 0x00, 0x28, 0xf6, 0xd1, + 0x10, 0xbd, 0x00, 0x00, 0xa0, 0x7e, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xfe, 0xb5, 0x06, 0x1c, + 0x0c, 0x48, 0x0c, 0x1c, 0x40, 0x68, 0x80, 0x21, + 0x81, 0x70, 0x00, 0x21, 0x3c, 0x00, 0xd8, 0x63, + 0x00, 0x00, 0xc1, 0x70, 0x15, 0x1c, 0x40, 0x22, + 0x81, 0x63, 0x11, 0x52, 0x81, 0x61, 0x01, 0x84, + 0x00, 0x20, 0x04, 0x22, 0x02, 0x92, 0x00, 0x90, + 0x01, 0x91, 0x29, 0x1c, 0x20, 0x1c, 0x1a, 0x1c, + 0x33, 0x1c, 0x00, 0xf0, 0xbc, 0xf8, 0xfe, 0xbd, + 0x00, 0x00, 0xa0, 0x7e, 0x01, 0x00, 0x70, 0xb5, + 0x06, 0x1c, 0x17, 0x48, 0x80, 0x78, 0x02, 0x21, + 0x16, 0x4a, 0x88, 0x43, 0x90, 0x70, 0x3c, 0x00, + 0x14, 0x64, 0x00, 0x00, 0x10, 0x1c, 0x80, 0x78, + 0x08, 0x43, 0x11, 0x1c, 0x88, 0x70, 0x13, 0x48, + 0x00, 0x24, 0xc4, 0x70, 0x70, 0x20, 0xfb, 0xf7, + 0xd9, 0xf9, 0x11, 0x4d, 0x70, 0x21, 0x68, 0x60, + 0xfa, 0xf7, 0x34, 0xf8, 0x30, 0x07, 0x00, 0x0f, + 0x69, 0x68, 0x90, 0x30, 0xc8, 0x65, 0x0d, 0x48, + 0x68, 0x22, 0x08, 0x80, 0x08, 0x1c, 0x28, 0x30, + 0x89, 0x60, 0x48, 0x61, 0x08, 0x20, 0x08, 0x82, + 0x3c, 0x00, 0x50, 0x64, 0x00, 0x00, 0x08, 0x1c, + 0x38, 0x30, 0x48, 0x63, 0x20, 0x38, 0x48, 0x64, + 0x5a, 0x20, 0x50, 0x54, 0x06, 0x48, 0x08, 0x31, + 0x41, 0x64, 0x44, 0x65, 0x70, 0xbd, 0x00, 0x00, + 0x07, 0x00, 0x58, 0x00, 0x07, 0x00, 0xa0, 0x7e, + 0x01, 0x00, 0xde, 0xc0, 0x00, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x0a, 0x4b, 0x10, 0xb5, 0x58, 0x6d, + 0x0a, 0x49, 0x00, 0x22, 0x49, 0x68, 0x00, 0x24, + 0x4a, 0x62, 0x3c, 0x00, 0x8c, 0x64, 0x00, 0x00, + 0x5c, 0x65, 0x4b, 0x6e, 0x00, 0x2b, 0x01, 0xd0, + 0xda, 0x60, 0x4a, 0x66, 0x8b, 0x6d, 0x00, 0x2b, + 0x03, 0xd0, 0x0a, 0x6e, 0x00, 0x21, 0xf9, 0xf7, + 0x9c, 0xff, 0x10, 0xbd, 0x00, 0x30, 0x07, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x09, 0x49, 0x10, 0xb5, + 0x08, 0x88, 0x01, 0x30, 0x08, 0x80, 0x01, 0x20, + 0x07, 0x49, 0x80, 0x02, 0x08, 0x60, 0x07, 0x4c, + 0xa2, 0x6d, 0x00, 0x2a, 0x3c, 0x00, 0xc8, 0x64, + 0x00, 0x00, 0x05, 0xd0, 0x05, 0x21, 0xd1, 0x20, + 0x0d, 0xf0, 0x6f, 0xf9, 0x01, 0x20, 0xa0, 0x65, + 0x10, 0xbd, 0xb0, 0x74, 0x01, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, 0xff, 0xb5, + 0x83, 0xb0, 0x0c, 0xae, 0x86, 0x46, 0x8c, 0x46, + 0x0e, 0x4a, 0x43, 0xce, 0x0f, 0xad, 0x0f, 0x1c, + 0x52, 0x68, 0x0c, 0x37, 0x30, 0xcd, 0x97, 0x70, + 0xd3, 0x70, 0x96, 0x63, 0x0d, 0x26, 0x3c, 0x00, + 0x04, 0x65, 0x00, 0x00, 0x40, 0x27, 0xbe, 0x52, + 0x05, 0x9e, 0x96, 0x61, 0x13, 0x84, 0x00, 0x22, + 0x02, 0x92, 0x2a, 0x1c, 0x00, 0x90, 0x01, 0x91, + 0x21, 0x1c, 0x60, 0x46, 0x73, 0x46, 0x00, 0xf0, + 0x29, 0xf8, 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0xff, 0xb5, 0x10, 0x1c, + 0x1a, 0x1c, 0x0c, 0x1c, 0x19, 0x1c, 0x60, 0x23, + 0xff, 0x32, 0x13, 0x43, 0x0c, 0x4a, 0x83, 0xb0, + 0x3c, 0x00, 0x40, 0x65, 0x00, 0x00, 0x0c, 0xae, + 0x52, 0x68, 0x60, 0xce, 0x93, 0x70, 0x00, 0x23, + 0xd3, 0x70, 0x93, 0x63, 0x40, 0x27, 0xbb, 0x52, + 0x93, 0x61, 0x13, 0x84, 0x03, 0x22, 0x02, 0x92, + 0x01, 0x91, 0x29, 0x1c, 0x32, 0x1c, 0x00, 0x90, + 0x20, 0x1c, 0x03, 0x9b, 0x00, 0xf0, 0x05, 0xf8, + 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xa0, 0x7e, + 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x1c, 0x11, 0x48, + 0x1c, 0x1c, 0x3c, 0x00, 0x7c, 0x65, 0x00, 0x00, + 0x08, 0x9b, 0x07, 0x9f, 0x40, 0x68, 0xde, 0x00, + 0x81, 0x65, 0x02, 0x66, 0x00, 0x21, 0x81, 0x80, + 0x0d, 0x48, 0x81, 0x59, 0x20, 0x1c, 0xf9, 0xf7, + 0x22, 0xff, 0x0b, 0x48, 0x30, 0x18, 0x41, 0x68, + 0x28, 0x1c, 0xf9, 0xf7, 0x1c, 0xff, 0x07, 0x49, + 0x06, 0x98, 0x49, 0x68, 0x00, 0x2c, 0x88, 0x62, + 0x0f, 0x86, 0x00, 0xd1, 0x2c, 0x1c, 0x05, 0x48, + 0x4c, 0x62, 0x45, 0x65, 0x3c, 0x00, 0xb8, 0x65, + 0x00, 0x00, 0x01, 0x21, 0x01, 0x65, 0x01, 0x64, + 0xf8, 0xbd, 0xa0, 0x7e, 0x01, 0x00, 0x90, 0x52, + 0x01, 0x00, 0x00, 0x30, 0x07, 0x00, 0xff, 0xb5, + 0x83, 0xb0, 0x0d, 0xae, 0x60, 0xce, 0x0c, 0x9f, + 0x08, 0x1c, 0x11, 0x1c, 0xd2, 0x19, 0xff, 0x32, + 0x40, 0x24, 0x14, 0x43, 0x0b, 0x4a, 0x52, 0x68, + 0x94, 0x70, 0x00, 0x24, 0xd4, 0x70, 0x93, 0x63, + 0x40, 0x23, 0x9f, 0x52, 0x94, 0x61, 0x3c, 0x00, + 0xf4, 0x65, 0x00, 0x00, 0x14, 0x84, 0x02, 0x22, + 0x02, 0x92, 0x32, 0x1c, 0x00, 0x90, 0x01, 0x91, + 0x23, 0x1c, 0x29, 0x1c, 0x03, 0x98, 0xff, 0xf7, + 0xb5, 0xff, 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x4c, 0x21, 0x0d, 0x4a, + 0x41, 0x43, 0x10, 0xb5, 0x8c, 0x18, 0x0c, 0x49, + 0x09, 0x78, 0x88, 0x42, 0x07, 0xd1, 0x05, 0xf0, + 0xc7, 0xfd, 0x0a, 0x48, 0x01, 0x88, 0x01, 0x22, + 0x3c, 0x00, 0x30, 0x66, 0x00, 0x00, 0x12, 0x03, + 0x91, 0x43, 0x01, 0x80, 0x20, 0x1c, 0x30, 0x30, + 0x0c, 0x23, 0xc1, 0x56, 0x40, 0x7b, 0x81, 0x42, + 0x02, 0xdd, 0x20, 0x8d, 0x0c, 0xf0, 0xe5, 0xfb, + 0x10, 0xbd, 0x58, 0xe3, 0x01, 0x00, 0x3c, 0x7c, + 0x01, 0x00, 0x32, 0x80, 0x07, 0x00, 0x01, 0x1c, + 0x60, 0x31, 0x80, 0xb5, 0xca, 0x79, 0x8b, 0x79, + 0x9a, 0x42, 0x07, 0xd9, 0x48, 0x7a, 0x0c, 0x23, + 0x07, 0x49, 0x3c, 0x00, 0x6c, 0x66, 0x00, 0x00, + 0x58, 0x43, 0x08, 0x5a, 0x0c, 0xf0, 0xd0, 0xfb, + 0x80, 0xbd, 0x20, 0x30, 0x00, 0x7b, 0x01, 0x28, + 0xfa, 0xd1, 0x48, 0x7a, 0x05, 0xf0, 0x40, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x1c, 0x21, 0xf9, 0xf7, + 0x03, 0xff, 0x03, 0x48, 0xa0, 0x80, 0xe0, 0x80, + 0x20, 0x81, 0x60, 0x81, 0xa0, 0x81, 0x10, 0xbd, + 0xff, 0xff, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x66, + 0x00, 0x00, 0xff, 0xb5, 0x04, 0x1c, 0x00, 0x20, + 0x83, 0xb0, 0x0d, 0x1c, 0x06, 0x2c, 0x02, 0x90, + 0x38, 0xd2, 0x1f, 0x4a, 0xff, 0x26, 0xc1, 0x00, + 0x89, 0x18, 0x89, 0x78, 0xa1, 0x42, 0x03, 0xd1, + 0xc0, 0x00, 0x80, 0x18, 0x46, 0x78, 0x04, 0xe0, + 0x01, 0x30, 0x00, 0x06, 0x00, 0x16, 0x06, 0x28, + 0xf1, 0xdb, 0xff, 0x2e, 0x24, 0xd0, 0x01, 0x93, + 0x20, 0x1c, 0x0d, 0xf0, 0xe8, 0xf9, 0x3c, 0x00, + 0xe4, 0x66, 0x00, 0x00, 0x00, 0x28, 0x05, 0xd0, + 0x24, 0x21, 0x28, 0x1c, 0x01, 0xab, 0x02, 0xaa, + 0xfa, 0xf7, 0x30, 0xfe, 0x10, 0x49, 0xf0, 0x00, + 0x30, 0x39, 0x0f, 0x58, 0x31, 0x06, 0x09, 0x16, + 0x28, 0x1c, 0x05, 0x9a, 0x01, 0x9b, 0xf9, 0xf7, + 0x6e, 0xfe, 0x06, 0x1c, 0x10, 0xd1, 0x20, 0x1c, + 0x0d, 0xf0, 0xd0, 0xf9, 0x00, 0x28, 0x0b, 0xd0, + 0x28, 0x1c, 0x69, 0x69, 0xfa, 0xf7, 0x12, 0xfe, + 0x3c, 0x00, 0x20, 0x67, 0x00, 0x00, 0x02, 0x98, + 0x68, 0x61, 0x04, 0xe0, 0x06, 0x2c, 0x01, 0xd3, + 0x07, 0x26, 0x00, 0xe0, 0x08, 0x26, 0x30, 0x1c, + 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xcc, 0x5a, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x1c, 0x09, 0xf0, + 0x86, 0xf8, 0x00, 0x28, 0x02, 0xd0, 0x20, 0x1c, + 0x09, 0xf0, 0xb5, 0xf8, 0x10, 0xbd, 0xfe, 0xb5, + 0x13, 0x4d, 0x04, 0x1c, 0xae, 0x69, 0x00, 0x2e, + 0x1c, 0xd0, 0x3c, 0x00, 0x5c, 0x67, 0x00, 0x00, + 0x10, 0x4f, 0x30, 0x37, 0x78, 0x68, 0x60, 0x43, + 0x01, 0x1c, 0x28, 0x88, 0xf9, 0xf7, 0xd2, 0xff, + 0x39, 0x68, 0x61, 0x43, 0x41, 0x18, 0x01, 0xa8, + 0x32, 0x1c, 0xf9, 0xf7, 0x37, 0xfe, 0x02, 0x98, + 0x29, 0x6a, 0x40, 0x18, 0x28, 0x62, 0x0b, 0xd4, + 0xe9, 0x69, 0x88, 0x42, 0x08, 0xd9, 0xa9, 0x69, + 0x40, 0x1a, 0x28, 0x62, 0x01, 0x98, 0x01, 0x30, + 0x01, 0xe0, 0x00, 0x20, 0x3c, 0x00, 0x98, 0x67, + 0x00, 0x00, 0x02, 0x90, 0x01, 0x90, 0x01, 0x98, + 0xfe, 0xbd, 0xc8, 0x74, 0x01, 0x00, 0xf8, 0xb5, + 0x00, 0x28, 0x28, 0xd0, 0x00, 0x24, 0x14, 0x4d, + 0x00, 0xe0, 0x01, 0x34, 0x61, 0x00, 0x09, 0x19, + 0x49, 0x19, 0x49, 0x78, 0x00, 0x29, 0xf8, 0xd1, + 0x63, 0x00, 0x1b, 0x19, 0x03, 0x33, 0x07, 0x22, + 0x69, 0x46, 0x03, 0xf0, 0xd4, 0xfb, 0x00, 0x2c, + 0x0f, 0xd0, 0x00, 0x20, 0x00, 0x99, 0x3c, 0x00, + 0xd4, 0x67, 0x00, 0x00, 0x0a, 0xe0, 0x42, 0x00, + 0x12, 0x18, 0xae, 0x5c, 0x53, 0x18, 0x52, 0x19, + 0x5e, 0x71, 0x56, 0x78, 0x01, 0x30, 0x9e, 0x71, + 0x92, 0x78, 0xda, 0x71, 0xa0, 0x42, 0xf2, 0xdb, + 0x00, 0x98, 0x03, 0x22, 0x02, 0x30, 0x03, 0x49, + 0xf9, 0xf7, 0x7e, 0xfe, 0xf8, 0xbd, 0x00, 0x00, + 0xeb, 0x62, 0x01, 0x00, 0xe8, 0x62, 0x01, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x08, 0x1c, 0xfa, 0xf7, + 0x3c, 0x00, 0x10, 0x68, 0x00, 0x00, 0x9d, 0xff, + 0x04, 0x1c, 0x28, 0x1c, 0xfa, 0xf7, 0xd9, 0xfe, + 0x21, 0x1c, 0xfa, 0xf7, 0xfc, 0xfd, 0x20, 0x1c, + 0xb0, 0xbd, 0xf3, 0xb5, 0x44, 0x48, 0x0c, 0x1c, + 0x00, 0x78, 0x81, 0xb0, 0x01, 0x28, 0x72, 0xd1, + 0xfa, 0xf7, 0x82, 0xf8, 0x41, 0x4d, 0xe8, 0x6a, + 0x41, 0x49, 0x08, 0x60, 0xe8, 0x6b, 0x48, 0x60, + 0x40, 0x48, 0xfa, 0xf7, 0xa6, 0xf9, 0xe8, 0x6a, + 0x00, 0x28, 0x3c, 0x00, 0x4c, 0x68, 0x00, 0x00, + 0xfc, 0xda, 0x22, 0x1c, 0x0f, 0x20, 0x01, 0x99, + 0x0a, 0xf0, 0xa4, 0xf8, 0x38, 0x4d, 0x02, 0x27, + 0x2f, 0x63, 0x38, 0x4a, 0x64, 0x26, 0x00, 0x20, + 0xaa, 0x21, 0x08, 0x32, 0x13, 0x18, 0x01, 0x30, + 0x00, 0x04, 0x00, 0x0c, 0x64, 0x28, 0x19, 0x74, + 0xf8, 0xd3, 0x16, 0x81, 0x00, 0x20, 0x50, 0x60, + 0x10, 0x1c, 0x10, 0x30, 0x10, 0x60, 0x00, 0x25, + 0x17, 0x1c, 0xd2, 0x60, 0x3c, 0x00, 0x88, 0x68, + 0x00, 0x00, 0x08, 0xe0, 0x28, 0x1c, 0xf9, 0xf7, + 0xa2, 0xff, 0x41, 0x31, 0x78, 0x19, 0x01, 0x35, + 0x2d, 0x04, 0x2d, 0x0c, 0x01, 0x74, 0xb5, 0x42, + 0xf4, 0xd3, 0x26, 0x4d, 0x6f, 0x63, 0x01, 0x20, + 0x28, 0x63, 0x24, 0x4d, 0xe8, 0x6a, 0x00, 0x28, + 0xfb, 0xda, 0x0b, 0x22, 0x3b, 0x1c, 0x24, 0x4e, + 0x03, 0xe0, 0x01, 0x32, 0x64, 0x2a, 0x00, 0xd1, + 0x00, 0x22, 0x10, 0x1c, 0x0c, 0x21, 0x3c, 0x00, + 0xc4, 0x68, 0x00, 0x00, 0x01, 0x39, 0x75, 0x5c, + 0x1f, 0x18, 0x3f, 0x7c, 0xbd, 0x42, 0xf3, 0xd1, + 0x01, 0x38, 0x00, 0xd5, 0x63, 0x20, 0x00, 0x29, + 0xf4, 0xd1, 0x18, 0x4e, 0x50, 0x1c, 0xf1, 0x6b, + 0x1a, 0x4a, 0x10, 0x1c, 0x01, 0x38, 0xfd, 0xd1, + 0xf0, 0x6b, 0x88, 0x42, 0x01, 0xd0, 0x01, 0x1c, + 0xf7, 0xe7, 0x02, 0x27, 0x37, 0x63, 0x16, 0x4d, + 0x90, 0x21, 0x28, 0x1c, 0xf9, 0xf7, 0xce, 0xfd, + 0x3c, 0x00, 0x00, 0x69, 0x00, 0x00, 0x28, 0x1c, + 0x28, 0x30, 0x28, 0x60, 0x28, 0x1c, 0x10, 0x30, + 0x2f, 0x81, 0xe8, 0x60, 0x28, 0x1c, 0x20, 0x30, + 0x28, 0x61, 0x04, 0x21, 0x00, 0xe0, 0x0c, 0xe0, + 0x29, 0x83, 0xe8, 0x61, 0xed, 0x62, 0x75, 0x63, + 0x01, 0x20, 0x30, 0x63, 0x22, 0x1c, 0x89, 0x20, + 0x01, 0x99, 0x0a, 0xf0, 0x38, 0xf8, 0x00, 0x20, + 0x28, 0x63, 0xfe, 0xbd, 0x00, 0x00, 0x08, 0x57, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0x69, 0x00, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x10, 0x8e, 0x01, 0x00, + 0x74, 0xff, 0x01, 0x00, 0x09, 0x57, 0x01, 0x00, + 0x20, 0x4e, 0x00, 0x00, 0xe4, 0xfe, 0x01, 0x00, + 0x80, 0xb5, 0x13, 0x28, 0x1e, 0xd0, 0xf0, 0x28, + 0x16, 0xd1, 0x09, 0xf0, 0xb5, 0xf9, 0x00, 0x28, + 0x13, 0xd1, 0x0d, 0xf0, 0xbf, 0xfa, 0x11, 0xf0, + 0x0d, 0xfc, 0x00, 0x22, 0x04, 0x21, 0xc4, 0x20, + 0x0c, 0xf0, 0x1c, 0xff, 0x3c, 0x00, 0x78, 0x69, + 0x00, 0x00, 0x09, 0x48, 0x00, 0x21, 0x00, 0x78, + 0x05, 0xf0, 0x3f, 0xfd, 0x05, 0xf0, 0x93, 0xf8, + 0x07, 0x49, 0x01, 0x20, 0x08, 0x60, 0x80, 0xbd, + 0x01, 0x1c, 0x01, 0x20, 0xfa, 0xf7, 0x87, 0xfc, + 0x80, 0xbd, 0x00, 0xf0, 0x32, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x6a, 0x57, 0x01, 0x00, 0x3c, 0xd9, + 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0xf0, 0xff, 0xf9, + 0x0b, 0x49, 0x02, 0x24, 0x48, 0x60, 0x3c, 0x00, + 0xb4, 0x69, 0x00, 0x00, 0x0a, 0x48, 0x04, 0x61, + 0x01, 0x20, 0x77, 0x21, 0x09, 0x03, 0x08, 0x61, + 0x08, 0x4d, 0x68, 0x68, 0x80, 0x07, 0x02, 0xd4, + 0x68, 0x68, 0x20, 0x43, 0x68, 0x60, 0x09, 0xf0, + 0xc7, 0xf9, 0x68, 0x68, 0xa0, 0x43, 0x68, 0x60, + 0x00, 0x20, 0xb0, 0xbd, 0xe0, 0x60, 0x01, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x00, 0x01, 0x07, 0x00, + 0x80, 0xb5, 0x01, 0x23, 0x03, 0x22, 0x00, 0x21, + 0x3c, 0x00, 0xf0, 0x69, 0x00, 0x00, 0x02, 0x20, + 0x3c, 0xf0, 0xf1, 0xfa, 0x00, 0x28, 0x01, 0xd0, + 0xfa, 0xf7, 0x81, 0xfc, 0x80, 0xbd, 0x1c, 0xb5, + 0xfc, 0xf7, 0xf5, 0xfa, 0xfa, 0xf7, 0x19, 0xfe, + 0x01, 0xf0, 0x03, 0xf9, 0x00, 0x24, 0x21, 0x1c, + 0x68, 0x46, 0x01, 0xf0, 0xe2, 0xfb, 0x00, 0xab, + 0x18, 0x78, 0x01, 0x28, 0x03, 0xd0, 0x02, 0x28, + 0x01, 0xd0, 0x03, 0x28, 0x01, 0xd1, 0x0c, 0xf0, + 0xb2, 0xfc, 0x3c, 0x00, 0x2c, 0x6a, 0x00, 0x00, + 0x01, 0x34, 0x24, 0x06, 0x24, 0x16, 0x06, 0x2c, + 0xec, 0xdb, 0xfa, 0xf7, 0x09, 0xf9, 0xfa, 0xf7, + 0xe7, 0xfc, 0xfa, 0xf7, 0x33, 0xfa, 0xfa, 0xf7, + 0x6d, 0xfa, 0xfb, 0xf7, 0xdf, 0xff, 0x05, 0xf0, + 0x4d, 0xfb, 0x06, 0xf0, 0x81, 0xfc, 0x0b, 0xf0, + 0x7d, 0xf9, 0x07, 0xf0, 0x29, 0xfc, 0x11, 0x48, + 0x10, 0x21, 0x01, 0x60, 0x09, 0x01, 0x01, 0x60, + 0xc9, 0x02, 0x01, 0x60, 0x3c, 0x00, 0x68, 0x6a, + 0x00, 0x00, 0x89, 0x00, 0x01, 0x60, 0x20, 0x21, + 0x01, 0x60, 0x04, 0x21, 0x01, 0x60, 0x08, 0x21, + 0x01, 0x60, 0x40, 0x21, 0x01, 0x60, 0x80, 0x21, + 0x01, 0x60, 0x89, 0x00, 0x01, 0x60, 0x49, 0x00, + 0x01, 0x60, 0x49, 0x00, 0x01, 0x60, 0x49, 0x00, + 0x01, 0x60, 0xc9, 0x03, 0x01, 0x60, 0x89, 0x0b, + 0x01, 0x60, 0xf9, 0xf7, 0x41, 0xff, 0x1c, 0xbd, + 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, 0x3c, 0x00, + 0xa4, 0x6a, 0x00, 0x00, 0x80, 0xb5, 0x3b, 0xf0, + 0x4f, 0xf8, 0x3b, 0xf0, 0x7d, 0xf9, 0xfa, 0xf7, + 0x4b, 0xf9, 0x80, 0xbd, 0xf8, 0xb5, 0x00, 0x25, + 0x00, 0x24, 0x00, 0x22, 0x00, 0x28, 0x71, 0xd0, + 0x43, 0x4f, 0xb9, 0x68, 0x0b, 0x1a, 0xbb, 0x60, + 0xf8, 0x68, 0x39, 0x1c, 0x01, 0x30, 0xf8, 0x60, + 0x89, 0x6a, 0x00, 0x2b, 0x1e, 0xdc, 0x02, 0x24, + 0x00, 0x29, 0x06, 0xda, 0xfb, 0x69, 0x98, 0x42, + 0x3c, 0x00, 0xe0, 0x6a, 0x00, 0x00, 0x06, 0xdd, + 0x3b, 0x69, 0x98, 0x42, 0x09, 0xdd, 0x07, 0xe0, + 0xbb, 0x69, 0x98, 0x42, 0x01, 0xdc, 0x01, 0x24, + 0x03, 0xe0, 0x7b, 0x69, 0x98, 0x42, 0x00, 0xdd, + 0x03, 0x24, 0x78, 0x6a, 0x00, 0x28, 0x08, 0xd0, + 0x00, 0x20, 0x78, 0x62, 0x03, 0x2c, 0x01, 0xd1, + 0x02, 0x24, 0x02, 0xe0, 0x02, 0x2c, 0x00, 0xd1, + 0x01, 0x24, 0x2e, 0x48, 0x01, 0x2c, 0x00, 0x79, + 0x18, 0xd1, 0x3c, 0x00, 0x1c, 0x6b, 0x00, 0x00, + 0xbb, 0x78, 0x99, 0x42, 0x15, 0xda, 0x3b, 0x78, + 0x7b, 0x70, 0x39, 0x70, 0x01, 0x31, 0xb9, 0x62, + 0x01, 0xd5, 0x01, 0x31, 0xb9, 0x62, 0xb9, 0x6a, + 0x01, 0x25, 0x99, 0x42, 0x03, 0xd1, 0x04, 0x28, + 0x04, 0xd2, 0x01, 0x30, 0x00, 0xe0, 0x00, 0x20, + 0x38, 0x71, 0x01, 0x22, 0x00, 0x29, 0x33, 0xda, + 0x27, 0xe0, 0x03, 0x2c, 0x35, 0xd1, 0x00, 0x26, + 0x00, 0x28, 0x07, 0xd0, 0x3c, 0x00, 0x58, 0x6b, + 0x00, 0x00, 0x1e, 0x49, 0x81, 0x40, 0x38, 0x6a, + 0x08, 0x18, 0x0c, 0xf0, 0x5c, 0xf8, 0x00, 0x28, + 0x2c, 0xd0, 0x1b, 0x48, 0x00, 0x78, 0x40, 0x07, + 0x05, 0xd5, 0xf8, 0x68, 0x39, 0x69, 0x88, 0x42, + 0x01, 0xdb, 0x03, 0x23, 0xfe, 0x56, 0xb8, 0x6a, + 0xb0, 0x42, 0x12, 0xdd, 0x01, 0x21, 0x79, 0x62, + 0x39, 0x78, 0x01, 0x25, 0x79, 0x70, 0x38, 0x70, + 0x01, 0x38, 0xb8, 0x62, 0x88, 0x42, 0x3c, 0x00, + 0x94, 0x6b, 0x00, 0x00, 0x01, 0xd0, 0x00, 0x21, + 0x39, 0x71, 0x00, 0x28, 0x0c, 0xda, 0x07, 0x20, + 0x38, 0x71, 0x00, 0xe0, 0x12, 0xe0, 0x07, 0xe0, + 0x38, 0x79, 0x00, 0x28, 0x09, 0xd0, 0xff, 0x30, + 0x38, 0x71, 0x06, 0xe0, 0x00, 0x2a, 0x02, 0xd0, + 0x0c, 0xf0, 0xf8, 0xf8, 0x38, 0x62, 0x00, 0x2c, + 0x04, 0xd0, 0xfe, 0xf7, 0x97, 0xfd, 0x29, 0x1c, + 0x08, 0xf0, 0xfc, 0xfb, 0xf8, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x6b, 0x00, 0x00, 0xac, 0x7e, + 0x01, 0x00, 0x50, 0xc3, 0x00, 0x00, 0x1d, 0x75, + 0x01, 0x00, 0x80, 0xb5, 0x10, 0x68, 0x00, 0x28, + 0x02, 0xd0, 0x00, 0xf0, 0x0a, 0xf8, 0x80, 0xbd, + 0x03, 0x48, 0xc0, 0x69, 0x80, 0x68, 0x08, 0xf0, + 0xb2, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x84, 0x6a, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0xc0, 0x68, + 0xc0, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xfa, 0xf7, + 0x7a, 0xfb, 0x3c, 0x00, 0x0c, 0x6c, 0x00, 0x00, + 0xe0, 0x68, 0xe1, 0x69, 0xc0, 0x68, 0x23, 0x1c, + 0x01, 0x4a, 0xff, 0xf7, 0xd7, 0xfb, 0x10, 0xbd, + 0xdd, 0x6b, 0x00, 0x00, 0xb0, 0xb5, 0x05, 0x1c, + 0x0c, 0x21, 0x00, 0x20, 0xfa, 0xf7, 0xd6, 0xfc, + 0x04, 0x1c, 0x00, 0x68, 0x00, 0x21, 0x41, 0x60, + 0x01, 0x60, 0x29, 0x88, 0x01, 0x81, 0x69, 0x88, + 0x41, 0x81, 0x29, 0x1c, 0xff, 0x31, 0x21, 0x31, + 0x20, 0x1c, 0x03, 0xf0, 0x3c, 0x00, 0x48, 0x6c, + 0x00, 0x00, 0x77, 0xf9, 0x29, 0x1c, 0xff, 0x31, + 0x46, 0x31, 0x20, 0x1c, 0x03, 0xf0, 0x71, 0xf9, + 0x29, 0x1c, 0xff, 0x31, 0x50, 0x31, 0x20, 0x1c, + 0x03, 0xf0, 0x6b, 0xf9, 0x29, 0x1c, 0xff, 0x31, + 0x43, 0x31, 0x20, 0x1c, 0x03, 0xf0, 0x65, 0xf9, + 0x29, 0x1c, 0xff, 0x31, 0x63, 0x31, 0x20, 0x1c, + 0x03, 0xf0, 0x5f, 0xf9, 0x04, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x20, 0x1c, 0x3c, 0x00, + 0x84, 0x6c, 0x00, 0x00, 0xff, 0xf7, 0x8e, 0xfd, + 0x20, 0x1c, 0xb0, 0xbd, 0xe4, 0x62, 0x01, 0x00, + 0xf8, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, 0x04, 0xd1, + 0x05, 0x21, 0x18, 0x20, 0xfa, 0xf7, 0x02, 0xfb, + 0x4d, 0xe0, 0x29, 0x1c, 0x12, 0x31, 0x06, 0x22, + 0x60, 0x1c, 0xf9, 0xf7, 0x25, 0xfc, 0x22, 0x1c, + 0x30, 0x32, 0x00, 0x26, 0x00, 0x21, 0x00, 0x20, + 0x16, 0x70, 0x34, 0x4b, 0x1b, 0x5c, 0x2f, 0x8a, + 0x3c, 0x00, 0xc0, 0x6c, 0x00, 0x00, 0xdf, 0x40, + 0xff, 0x07, 0x07, 0xd5, 0x17, 0x78, 0x01, 0x33, + 0x01, 0x37, 0x17, 0x70, 0x67, 0x18, 0x30, 0x37, + 0x7b, 0x70, 0x01, 0x31, 0x01, 0x30, 0x0e, 0x28, + 0xee, 0xdb, 0xa8, 0x7b, 0x60, 0x72, 0x10, 0x78, + 0x00, 0x28, 0x2b, 0xd0, 0x2a, 0x48, 0x1e, 0x21, + 0x09, 0x5c, 0x27, 0x1c, 0x10, 0x37, 0x21, 0x72, + 0x01, 0x68, 0x61, 0x81, 0xc1, 0x89, 0x21, 0x77, + 0x81, 0x89, 0x3c, 0x00, 0xfc, 0x6c, 0x00, 0x00, + 0x79, 0x73, 0xc1, 0x8a, 0xa1, 0x81, 0x01, 0x8b, + 0xe1, 0x81, 0x42, 0x8a, 0x21, 0x1c, 0x60, 0x31, + 0x4a, 0x80, 0x82, 0x8a, 0x8a, 0x80, 0x1f, 0x49, + 0x2c, 0x31, 0x09, 0x7a, 0x00, 0x29, 0x09, 0xd0, + 0x02, 0x29, 0x0a, 0xd1, 0x01, 0x22, 0x62, 0x62, + 0x62, 0x72, 0x42, 0x8b, 0xa2, 0x81, 0x80, 0x8b, + 0xe0, 0x81, 0x03, 0xe0, 0x01, 0x21, 0x66, 0x62, + 0x00, 0xe0, 0x00, 0x21, 0x3c, 0x00, 0x38, 0x6d, + 0x00, 0x00, 0xe8, 0x7b, 0x08, 0x40, 0x01, 0xd1, + 0x00, 0x20, 0xf8, 0xbd, 0xa8, 0x68, 0x43, 0x1c, + 0x09, 0xd0, 0x22, 0x1c, 0x12, 0x32, 0x00, 0x92, + 0x93, 0x1d, 0x02, 0x32, 0x21, 0x1c, 0x01, 0xf0, + 0x9c, 0xfa, 0xa0, 0x62, 0x00, 0xe0, 0xa6, 0x62, + 0x68, 0x7b, 0x29, 0x1c, 0x1d, 0x31, 0x20, 0x74, + 0x0b, 0x48, 0x20, 0x22, 0x20, 0x62, 0x20, 0x1c, + 0x42, 0x30, 0xbe, 0x73, 0xf9, 0xf7, 0x3c, 0x00, + 0x74, 0x6d, 0x00, 0x00, 0xc1, 0xfb, 0x40, 0x34, + 0x26, 0x70, 0x68, 0x7e, 0x04, 0x49, 0x60, 0x70, + 0x68, 0x68, 0x2c, 0x31, 0x48, 0x60, 0x01, 0x20, + 0xda, 0xe7, 0x00, 0x00, 0x90, 0x58, 0x01, 0x00, + 0xc8, 0x6e, 0x01, 0x00, 0x91, 0x02, 0x01, 0x00, + 0x70, 0xb5, 0x16, 0x1c, 0x0d, 0x1c, 0x04, 0x1c, + 0x00, 0x28, 0x06, 0xd0, 0x0c, 0x20, 0xfa, 0xf7, + 0x47, 0xfd, 0x30, 0xc0, 0x08, 0x38, 0x06, 0x72, + 0x3c, 0x00, 0xb0, 0x6d, 0x00, 0x00, 0x70, 0xbd, + 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x01, 0x1c, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x68, 0x01, 0xd0, + 0x01, 0x21, 0x00, 0xe0, 0x00, 0x21, 0xfc, 0xf7, + 0xa0, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x0c, 0x79, + 0x01, 0x00, 0x70, 0xb5, 0x0e, 0x1c, 0x04, 0x1c, + 0x00, 0x28, 0x01, 0xd1, 0xfa, 0xf7, 0x8f, 0xfa, + 0x06, 0x4d, 0x28, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0xfa, 0xf7, 0x3c, 0x00, 0xec, 0x6d, 0x00, 0x00, + 0x89, 0xfa, 0x04, 0x48, 0x2e, 0x60, 0xc4, 0x60, + 0x01, 0x21, 0x01, 0x70, 0x70, 0xbd, 0x00, 0x00, + 0xa8, 0x7e, 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, + 0x10, 0xb5, 0x07, 0x4c, 0x20, 0x68, 0x00, 0x28, + 0x01, 0xd1, 0xfa, 0xf7, 0x77, 0xfa, 0x05, 0x48, + 0x00, 0x69, 0x21, 0x68, 0xf9, 0xf7, 0xdf, 0xfa, + 0x00, 0x20, 0x20, 0x60, 0x10, 0xbd, 0x00, 0x00, + 0xa8, 0x7e, 0x01, 0x00, 0x3c, 0x00, 0x28, 0x6e, + 0x00, 0x00, 0x30, 0x00, 0x07, 0x00, 0x01, 0x20, + 0x05, 0x49, 0xc0, 0x06, 0x80, 0xb5, 0x08, 0x60, + 0x00, 0x22, 0x03, 0x21, 0x54, 0x20, 0x0c, 0xf0, + 0xb8, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x04, 0x21, + 0xc4, 0x20, 0x0c, 0xf0, 0xae, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x04, 0x48, 0x80, 0xb5, 0x00, 0x88, + 0x02, 0x49, 0xff, 0xf7, 0xb8, 0xff, 0x3c, 0x00, + 0x64, 0x6e, 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0x75, 0x4b, 0x00, 0x00, 0xc8, 0x74, 0x01, 0x00, + 0xf8, 0xb5, 0x06, 0x1c, 0x31, 0x48, 0x00, 0x25, + 0xc0, 0x68, 0x0c, 0x1c, 0x00, 0x28, 0x30, 0xd0, + 0x2e, 0x48, 0x2f, 0x4f, 0x04, 0x30, 0x00, 0x78, + 0x38, 0x76, 0x2c, 0x48, 0x04, 0x30, 0x40, 0x78, + 0x38, 0x81, 0x00, 0x2a, 0x0b, 0xd0, 0xf9, 0xf7, + 0xa5, 0xfa, 0x1f, 0x20, 0xb8, 0x76, 0x20, 0x1c, + 0x3c, 0x00, 0xa0, 0x6e, 0x00, 0x00, 0xf9, 0xf7, + 0xf6, 0xf9, 0x25, 0x48, 0x04, 0x30, 0x80, 0x78, + 0xb8, 0x76, 0x43, 0xe0, 0x25, 0x48, 0x22, 0x49, + 0x84, 0x42, 0x4d, 0x69, 0x02, 0xd2, 0x6c, 0x43, + 0xe4, 0x0b, 0x0f, 0xe0, 0x1f, 0x48, 0x21, 0x1c, + 0x80, 0x6a, 0x00, 0x90, 0xf9, 0xf7, 0x23, 0xfc, + 0x00, 0x99, 0x02, 0x1c, 0x4a, 0x43, 0xa1, 0x1a, + 0x1a, 0x4a, 0x69, 0x43, 0x52, 0x6a, 0xc9, 0x0b, + 0x50, 0x43, 0x3c, 0x00, 0xdc, 0x6e, 0x00, 0x00, + 0x44, 0x18, 0x02, 0x2c, 0x01, 0xd8, 0x00, 0x20, + 0xf8, 0xbd, 0xf9, 0xf7, 0x7d, 0xfa, 0x1f, 0x20, + 0xb8, 0x76, 0x20, 0x1c, 0xf9, 0xf7, 0xae, 0xf9, + 0x04, 0x1c, 0x11, 0x48, 0x04, 0x30, 0x80, 0x78, + 0xb8, 0x76, 0x0f, 0x4f, 0x7d, 0x6a, 0xac, 0x42, + 0x04, 0xd2, 0x20, 0x1c, 0xff, 0xf7, 0x22, 0xfc, + 0x05, 0x1c, 0x12, 0xe0, 0x21, 0x1c, 0x28, 0x1c, + 0xf9, 0xf7, 0xfc, 0xfb, 0x3c, 0x00, 0x18, 0x6f, + 0x00, 0x00, 0x06, 0x1c, 0x68, 0x43, 0x20, 0x1a, + 0xff, 0xf7, 0x17, 0xfc, 0x05, 0x1c, 0x00, 0x24, + 0x04, 0xe0, 0x78, 0x6a, 0xff, 0xf7, 0x11, 0xfc, + 0x45, 0x19, 0x01, 0x34, 0xb4, 0x42, 0xf8, 0xd3, + 0x28, 0x1c, 0xd4, 0xe7, 0x00, 0x00, 0xc8, 0x74, + 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, 0xc0, 0xc6, + 0x2d, 0x00, 0x01, 0x1c, 0x7d, 0x20, 0x80, 0xb5, + 0xc0, 0x00, 0xf9, 0xf7, 0x72, 0xfb, 0x3c, 0x00, + 0x54, 0x6f, 0x00, 0x00, 0x02, 0x49, 0x88, 0x61, + 0x40, 0x08, 0xc8, 0x61, 0x80, 0xbd, 0x00, 0x00, + 0xc8, 0x74, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, + 0x21, 0x1c, 0x00, 0x20, 0x0b, 0xf0, 0x42, 0xfa, + 0x21, 0x1c, 0x00, 0x20, 0x0b, 0xf0, 0x0a, 0xfa, + 0x00, 0xf0, 0x68, 0xfe, 0x10, 0xbd, 0x00, 0x00, + 0x85, 0x6f, 0x00, 0x00, 0x30, 0xb5, 0x0f, 0x4d, + 0x2a, 0x78, 0x04, 0x2a, 0x19, 0xd8, 0x00, 0x2a, + 0x3c, 0x00, 0x90, 0x6f, 0x00, 0x00, 0x17, 0xd0, + 0x00, 0x21, 0x07, 0xe0, 0x4b, 0x00, 0x5b, 0x18, + 0x5c, 0x19, 0x01, 0x23, 0xe4, 0x56, 0x84, 0x42, + 0x02, 0xda, 0x01, 0x31, 0x8a, 0x42, 0xf5, 0xdc, + 0x8a, 0x42, 0x00, 0xd1, 0x01, 0x39, 0x48, 0x00, + 0x40, 0x18, 0x40, 0x19, 0x81, 0x78, 0x02, 0x4a, + 0x34, 0x3a, 0x11, 0x70, 0xc0, 0x78, 0x50, 0x70, + 0x30, 0xbd, 0x00, 0x75, 0x01, 0x00, 0x30, 0xb5, + 0x11, 0x1c, 0x3c, 0x00, 0xcc, 0x6f, 0x00, 0x00, + 0x38, 0x31, 0x85, 0xb0, 0x91, 0x62, 0x08, 0x21, + 0x11, 0x86, 0x00, 0x23, 0x14, 0x1c, 0x01, 0x1c, + 0x53, 0x63, 0xc0, 0x68, 0x15, 0x4d, 0x0b, 0xe0, + 0x02, 0x68, 0xaa, 0x42, 0x06, 0xd1, 0xc2, 0x68, + 0xca, 0x60, 0xc3, 0x60, 0x03, 0x60, 0xfa, 0xf7, + 0xd1, 0xfa, 0x03, 0xe0, 0x01, 0x1c, 0xc0, 0x68, + 0x00, 0x28, 0xf1, 0xd1, 0x22, 0x1c, 0x40, 0x32, + 0x08, 0x21, 0x20, 0x68, 0x3c, 0x00, 0x08, 0x70, + 0x00, 0x00, 0xfa, 0xf7, 0x64, 0xfb, 0x0b, 0x49, + 0x20, 0x1c, 0x48, 0x30, 0x02, 0x90, 0x04, 0x94, + 0x03, 0x91, 0xe0, 0x69, 0x82, 0x88, 0x01, 0x68, + 0x6e, 0x20, 0x01, 0x92, 0x00, 0x91, 0x22, 0x1c, + 0x56, 0x32, 0x03, 0x5d, 0x21, 0x1c, 0x28, 0x31, + 0x20, 0x68, 0xff, 0xf7, 0x58, 0xfa, 0x05, 0xb0, + 0x30, 0xbd, 0xa0, 0x7e, 0x01, 0x00, 0xd5, 0x70, + 0x00, 0x00, 0x1c, 0xb5, 0x07, 0x49, 0x3c, 0x00, + 0x44, 0x70, 0x00, 0x00, 0x02, 0x1c, 0x01, 0x90, + 0x00, 0x91, 0xc0, 0x69, 0x13, 0x1c, 0x84, 0x88, + 0x01, 0x68, 0x10, 0x68, 0x48, 0x33, 0x22, 0x1c, + 0xff, 0xf7, 0x08, 0xf9, 0x1c, 0xbd, 0x00, 0x00, + 0xc9, 0x6f, 0x00, 0x00, 0x10, 0xb5, 0x14, 0x1c, + 0x18, 0x48, 0x03, 0xf0, 0x89, 0xf8, 0xa0, 0x42, + 0x01, 0xd0, 0xfa, 0xf7, 0x45, 0xf9, 0x04, 0x22, + 0x20, 0x1c, 0x40, 0x30, 0xa1, 0x6a, 0xf9, 0xf7, + 0x3c, 0x00, 0x80, 0x70, 0x00, 0x00, 0xbd, 0xf9, + 0x00, 0x28, 0x02, 0xd1, 0x01, 0x20, 0x20, 0x62, + 0x05, 0xe0, 0x00, 0x20, 0x20, 0x62, 0x84, 0x20, + 0x00, 0x5d, 0x00, 0x28, 0x03, 0xd1, 0x20, 0x1c, + 0x09, 0xf0, 0x23, 0xfb, 0x05, 0xe0, 0x20, 0x68, + 0xfa, 0xf7, 0x79, 0xfa, 0x20, 0x1c, 0xfa, 0xf7, + 0xa4, 0xfb, 0xe0, 0x69, 0x80, 0x79, 0x06, 0x28, + 0x06, 0xd1, 0x20, 0x6a, 0x06, 0x49, 0x00, 0x28, + 0x03, 0xd0, 0x3c, 0x00, 0xbc, 0x70, 0x00, 0x00, + 0x08, 0x69, 0x01, 0x30, 0x08, 0x61, 0x10, 0xbd, + 0x48, 0x69, 0x01, 0x30, 0x48, 0x61, 0x10, 0xbd, + 0xa0, 0x6a, 0x01, 0x00, 0x28, 0x61, 0x01, 0x00, + 0x1c, 0xb5, 0x14, 0x1c, 0x15, 0x48, 0x03, 0xf0, + 0x51, 0xf8, 0xa0, 0x42, 0x01, 0xd0, 0xfa, 0xf7, + 0x0d, 0xf9, 0x20, 0x1c, 0x4f, 0x30, 0x02, 0x79, + 0x41, 0x79, 0x00, 0xab, 0x12, 0x02, 0x11, 0x43, + 0xc2, 0x78, 0x12, 0x04, 0x3c, 0x00, 0xf8, 0x70, + 0x00, 0x00, 0x11, 0x43, 0x82, 0x78, 0x12, 0x06, + 0x11, 0x43, 0x00, 0x91, 0x01, 0x78, 0x40, 0x78, + 0x09, 0x02, 0x08, 0x43, 0x98, 0x80, 0x20, 0x1c, + 0x69, 0x46, 0x06, 0xf0, 0x3c, 0xf9, 0x00, 0x28, + 0x03, 0xd1, 0x20, 0x1c, 0x09, 0xf0, 0xe3, 0xfa, + 0x1c, 0xbd, 0x20, 0x68, 0xfa, 0xf7, 0x39, 0xfa, + 0x20, 0x1c, 0xfa, 0xf7, 0x64, 0xfb, 0xf7, 0xe7, + 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, 0x3c, 0x00, + 0x34, 0x71, 0x00, 0x00, 0xbc, 0xb5, 0x1f, 0x4d, + 0x14, 0x1c, 0x28, 0x1c, 0xdc, 0x30, 0x03, 0xf0, + 0x1f, 0xf8, 0xa0, 0x42, 0x01, 0xd0, 0xfa, 0xf7, + 0xdb, 0xf8, 0xa0, 0x6c, 0x00, 0xab, 0x02, 0x78, + 0x81, 0x78, 0x12, 0x02, 0x11, 0x43, 0x02, 0x79, + 0x12, 0x04, 0x11, 0x43, 0x42, 0x79, 0x12, 0x06, + 0x11, 0x43, 0x00, 0x91, 0x81, 0x79, 0xc0, 0x79, + 0x00, 0x02, 0x08, 0x43, 0x98, 0x80, 0x20, 0x1c, + 0x3c, 0x00, 0x70, 0x71, 0x00, 0x00, 0x69, 0x46, + 0x06, 0xf0, 0x0b, 0xf9, 0x00, 0x28, 0x17, 0xd0, + 0x01, 0x28, 0x0e, 0xd1, 0xed, 0x6c, 0x00, 0x2d, + 0x0b, 0xd0, 0x80, 0x20, 0x02, 0x5d, 0xe0, 0x6c, + 0x01, 0x21, 0x00, 0x28, 0x00, 0xd1, 0x00, 0x21, + 0x60, 0x68, 0x6b, 0x46, 0x0a, 0x30, 0xf9, 0xf7, + 0x23, 0xf9, 0x20, 0x68, 0xfa, 0xf7, 0xfb, 0xf9, + 0x20, 0x1c, 0xfa, 0xf7, 0x26, 0xfb, 0xbc, 0xbd, + 0x20, 0x1c, 0x3c, 0x00, 0xac, 0x71, 0x00, 0x00, + 0x00, 0xf0, 0x8e, 0xfe, 0xfa, 0xe7, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0xbc, 0xb5, 0x04, 0x1c, + 0x40, 0x6a, 0x00, 0x25, 0x00, 0x28, 0x03, 0xd0, + 0x60, 0x68, 0x00, 0x8b, 0x05, 0x07, 0x2d, 0x0f, + 0x22, 0x1c, 0x40, 0x32, 0x08, 0x21, 0x20, 0x68, + 0xfa, 0xf7, 0x7e, 0xfa, 0xa1, 0x68, 0x01, 0x95, + 0x00, 0x91, 0x21, 0x1c, 0x22, 0x1c, 0x60, 0x32, + 0x20, 0x68, 0x50, 0x31, 0x3c, 0x00, 0xe8, 0x71, + 0x00, 0x00, 0x0d, 0x1c, 0xe3, 0x68, 0x09, 0xf0, + 0xe2, 0xff, 0xe0, 0x69, 0x80, 0x6b, 0x00, 0x28, + 0x03, 0xd1, 0xfe, 0xf7, 0xe8, 0xfa, 0x00, 0x28, + 0x01, 0xd0, 0x18, 0x20, 0x00, 0xe0, 0x10, 0x20, + 0x06, 0x49, 0x01, 0x94, 0x00, 0x91, 0xe1, 0x69, + 0x08, 0x23, 0x09, 0x68, 0x0a, 0x18, 0x21, 0x1c, + 0x28, 0x31, 0x28, 0x1c, 0xff, 0xf7, 0x87, 0xf9, + 0xbc, 0xbd, 0x35, 0x71, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x72, 0x00, 0x00, 0x10, 0xb5, 0x10, 0x1c, + 0x38, 0x30, 0x90, 0x62, 0x04, 0x20, 0x10, 0x86, + 0x00, 0x20, 0x50, 0x63, 0x10, 0x68, 0x14, 0x1c, + 0x40, 0x32, 0x04, 0x21, 0xfa, 0xf7, 0x4a, 0xfa, + 0x23, 0x1c, 0x21, 0x1c, 0x28, 0x31, 0x02, 0x4a, + 0x20, 0x68, 0xff, 0xf7, 0xbd, 0xf8, 0x10, 0xbd, + 0x65, 0x70, 0x00, 0x00, 0x0e, 0xb5, 0xc3, 0x69, + 0x02, 0x1c, 0x98, 0x88, 0x05, 0x49, 0x02, 0x92, + 0x3c, 0x00, 0x60, 0x72, 0x00, 0x00, 0x01, 0x91, + 0x00, 0x90, 0x1b, 0x68, 0x10, 0x68, 0x91, 0x69, + 0x03, 0x22, 0xff, 0xf7, 0xae, 0xf9, 0x0e, 0xbd, + 0x00, 0x00, 0x25, 0x72, 0x00, 0x00, 0x0e, 0xb5, + 0x02, 0x1c, 0x06, 0x49, 0x10, 0x20, 0x00, 0x90, + 0x02, 0x92, 0x13, 0x1c, 0x01, 0x91, 0x10, 0x68, + 0x00, 0x22, 0x70, 0x33, 0x00, 0x21, 0xff, 0xf7, + 0x9c, 0xf9, 0x0e, 0xbd, 0x00, 0x00, 0x25, 0x72, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x72, 0x00, 0x00, + 0x10, 0xb5, 0x03, 0x1c, 0x00, 0x21, 0x00, 0x20, + 0x08, 0x4c, 0x00, 0xe0, 0x01, 0x31, 0xca, 0x00, + 0xa2, 0x58, 0x9a, 0x42, 0x02, 0xd0, 0x0b, 0x29, + 0xf8, 0xd3, 0x10, 0xbd, 0x0b, 0x29, 0xfc, 0xd2, + 0xc9, 0x00, 0x09, 0x19, 0x00, 0x20, 0x08, 0x71, + 0x01, 0x20, 0x10, 0xbd, 0x38, 0x58, 0x01, 0x00, + 0x8c, 0xb5, 0x00, 0xab, 0x86, 0x21, 0x19, 0x80, + 0x01, 0x1c, 0x04, 0x48, 0x3c, 0x00, 0xd8, 0x72, + 0x00, 0x00, 0x06, 0xf0, 0xee, 0xfe, 0x01, 0x90, + 0x68, 0x46, 0x06, 0xf0, 0xfa, 0xf8, 0x8c, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x0d, 0x48, 0x0d, 0x49, 0x94, 0xb0, + 0x04, 0x80, 0x06, 0x22, 0x18, 0x31, 0x0c, 0x30, + 0xf9, 0xf7, 0xfb, 0xf8, 0x01, 0xa8, 0x07, 0xf0, + 0xa2, 0xf8, 0x0c, 0x20, 0x09, 0xa9, 0x48, 0x72, + 0x00, 0xab, 0x1c, 0x80, 0x02, 0x21, 0x3c, 0x00, + 0x14, 0x73, 0x00, 0x00, 0x68, 0x46, 0x03, 0xf0, + 0xdb, 0xff, 0x04, 0x90, 0x01, 0xa8, 0x06, 0xf0, + 0xd1, 0xf8, 0x14, 0xb0, 0x10, 0xbd, 0x00, 0x00, + 0x58, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x04, 0xf0, + 0x45, 0xfe, 0x05, 0xf0, 0x53, 0xfa, 0x80, 0xbd, + 0x10, 0xb5, 0x19, 0x4c, 0xe0, 0x68, 0x00, 0x28, + 0x06, 0xd0, 0x61, 0x1c, 0x08, 0x78, 0x00, 0x28, + 0x03, 0xd1, 0x48, 0x78, 0xff, 0x30, 0x08, 0x70, + 0x3c, 0x00, 0x50, 0x73, 0x00, 0x00, 0x10, 0xbd, + 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, 0x08, 0x70, + 0xa1, 0x68, 0x00, 0x29, 0xf7, 0xd0, 0x00, 0x28, + 0xf5, 0xd1, 0x0e, 0x48, 0x54, 0x30, 0x81, 0x78, + 0x00, 0x29, 0x03, 0xd1, 0xc1, 0x78, 0xff, 0x31, + 0x81, 0x70, 0x10, 0xbd, 0xff, 0x31, 0x09, 0x06, + 0x09, 0x0e, 0x81, 0x70, 0xf9, 0xd1, 0xa1, 0x69, + 0x00, 0x29, 0xf6, 0xd0, 0x80, 0x88, 0x03, 0xf0, + 0xd0, 0xfb, 0x3c, 0x00, 0x8c, 0x73, 0x00, 0x00, + 0x04, 0x4a, 0x01, 0x1c, 0x5c, 0x32, 0x0c, 0x32, + 0x05, 0xca, 0x80, 0x1a, 0xa2, 0x69, 0xf9, 0xf7, + 0x1f, 0xf8, 0x10, 0xbd, 0x44, 0x7d, 0x01, 0x00, + 0xf0, 0xb5, 0x04, 0x1c, 0x40, 0x68, 0x00, 0x25, + 0x01, 0x79, 0x00, 0x22, 0x85, 0xb0, 0xc9, 0x07, + 0xcb, 0x17, 0x69, 0x49, 0x01, 0x33, 0x89, 0x6a, + 0x10, 0x29, 0x05, 0xd3, 0x66, 0x49, 0xc0, 0x39, + 0x08, 0x6b, 0x01, 0x30, 0x3c, 0x00, 0xc8, 0x73, + 0x00, 0x00, 0x08, 0x63, 0x8e, 0xe0, 0x21, 0x68, + 0x0e, 0x68, 0xf6, 0x78, 0xb7, 0x06, 0xff, 0x0f, + 0xb6, 0x09, 0x00, 0x2b, 0x04, 0x97, 0x06, 0xd0, + 0x63, 0x69, 0x1f, 0x1c, 0x1b, 0x6a, 0x50, 0x37, + 0x9f, 0x42, 0x00, 0xd1, 0x01, 0x25, 0x00, 0x2d, + 0x02, 0xd0, 0x63, 0x69, 0x1b, 0x6a, 0x04, 0xe0, + 0x3c, 0x23, 0x59, 0x4f, 0x73, 0x43, 0xdb, 0x19, + 0x04, 0x33, 0xe3, 0x61, 0x9f, 0x88, 0x3c, 0x00, + 0x04, 0x74, 0x00, 0x00, 0x00, 0x2f, 0x70, 0xd0, + 0x9b, 0x79, 0x02, 0x2b, 0x6e, 0xd0, 0x04, 0x2b, + 0x17, 0xd0, 0x06, 0x2b, 0x69, 0xd1, 0x08, 0x68, + 0xa0, 0x61, 0x08, 0x89, 0x04, 0x38, 0x08, 0x81, + 0x20, 0x68, 0x01, 0x68, 0x04, 0x31, 0x01, 0x60, + 0x4e, 0x49, 0x00, 0x29, 0x5d, 0xd0, 0x04, 0x9f, + 0xba, 0x42, 0x5a, 0xd1, 0x49, 0x48, 0x22, 0x1c, + 0x1c, 0x30, 0x02, 0xf0, 0x65, 0xfe, 0x05, 0xb0, + 0x3c, 0x00, 0x40, 0x74, 0x00, 0x00, 0xf0, 0xbd, + 0x09, 0x68, 0x25, 0x1c, 0xca, 0x79, 0x40, 0x35, + 0x26, 0x1c, 0xea, 0x73, 0x8b, 0x79, 0x22, 0x1c, + 0x50, 0x32, 0x13, 0x70, 0x4b, 0x79, 0x60, 0x36, + 0x53, 0x70, 0x0b, 0x79, 0x93, 0x70, 0x4b, 0x78, + 0xd3, 0x70, 0x09, 0x78, 0x11, 0x71, 0x00, 0x21, + 0x29, 0x72, 0x16, 0x21, 0xb1, 0x73, 0x61, 0x6a, + 0x00, 0x29, 0x06, 0xd0, 0x01, 0x8b, 0x09, 0x07, + 0x09, 0x0f, 0x3c, 0x00, 0x7c, 0x74, 0x00, 0x00, + 0x29, 0x72, 0xb1, 0x81, 0x18, 0x21, 0xb1, 0x73, + 0x01, 0x1c, 0x0a, 0x31, 0x20, 0x1c, 0x06, 0x22, + 0x49, 0x30, 0xf9, 0xf7, 0x33, 0xf8, 0x60, 0x68, + 0x14, 0x22, 0x01, 0x88, 0xe9, 0x82, 0x01, 0x1d, + 0x20, 0x1c, 0x58, 0x30, 0xf9, 0xf7, 0x2a, 0xf8, + 0xe8, 0x8a, 0x30, 0x49, 0x08, 0x40, 0x01, 0x21, + 0x89, 0x03, 0x08, 0x43, 0xe8, 0x82, 0x70, 0x89, + 0x0f, 0x21, 0x08, 0x40, 0x3c, 0x00, 0xb8, 0x74, + 0x00, 0x00, 0x70, 0x81, 0x20, 0x68, 0x01, 0x89, + 0x08, 0x39, 0x01, 0x81, 0x20, 0x68, 0x01, 0x68, + 0x08, 0x31, 0x01, 0x60, 0x08, 0x21, 0x00, 0x20, + 0xfa, 0xf7, 0x83, 0xf8, 0x05, 0x1c, 0x02, 0x68, + 0x20, 0x68, 0x08, 0x21, 0xfa, 0xf7, 0xfb, 0xf8, + 0x20, 0x68, 0xfa, 0xf7, 0x74, 0xf8, 0x21, 0x49, + 0xc5, 0x60, 0x2f, 0xe0, 0x30, 0xe0, 0xff, 0xe7, + 0x21, 0x68, 0x60, 0x68, 0x0a, 0x68, 0x3c, 0x00, + 0xf4, 0x74, 0x00, 0x00, 0x80, 0x23, 0xa2, 0x64, + 0x1e, 0x55, 0xe5, 0x64, 0x55, 0x79, 0x13, 0x79, + 0x2d, 0x02, 0x5b, 0x19, 0x95, 0x79, 0x2d, 0x04, + 0x5b, 0x19, 0xd5, 0x79, 0x2d, 0x06, 0x5b, 0x19, + 0x95, 0x78, 0x12, 0x78, 0x12, 0x02, 0xaa, 0x18, + 0x15, 0x04, 0x0a, 0x89, 0x2d, 0x0c, 0x08, 0x3a, + 0x0a, 0x81, 0x21, 0x68, 0x0a, 0x68, 0x08, 0x32, + 0x0a, 0x60, 0xe1, 0x69, 0x02, 0x1c, 0x0a, 0x32, + 0x3c, 0x00, 0x30, 0x75, 0x00, 0x00, 0x01, 0xa8, + 0x09, 0x68, 0x0b, 0xf0, 0x3e, 0xf9, 0xe0, 0x69, + 0x2b, 0x1c, 0x01, 0x68, 0x20, 0x1c, 0x70, 0x30, + 0x01, 0xaa, 0x0b, 0xf0, 0x86, 0xf9, 0x09, 0x49, + 0x01, 0x22, 0x6d, 0xe7, 0x20, 0x68, 0xfa, 0xf7, + 0x22, 0xf8, 0x20, 0x1c, 0xfa, 0xf7, 0x4d, 0xf9, + 0x70, 0xe7, 0x84, 0x6a, 0x01, 0x00, 0x68, 0x61, + 0x01, 0x00, 0x55, 0x72, 0x00, 0x00, 0x8f, 0xc7, + 0xff, 0xff, 0x3c, 0x00, 0x6c, 0x75, 0x00, 0x00, + 0x41, 0x70, 0x00, 0x00, 0x79, 0x72, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x82, 0x20, 0xf9, 0xf7, + 0x93, 0xfe, 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0xc0, 0x68, 0xf9, 0xf7, 0xfa, 0xff, + 0x01, 0x20, 0x80, 0xbd, 0x3c, 0x00, 0xa8, 0x75, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x21, 0xff, 0x20, + 0xf9, 0xf7, 0x79, 0xfe, 0x80, 0xbd, 0x70, 0x47, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x01, 0x20, + 0x70, 0x47, 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x06, 0x21, 0x99, 0x20, + 0xf9, 0xf7, 0x65, 0xfe, 0x80, 0xbd, 0xb0, 0xb5, + 0x00, 0x25, 0x01, 0x29, 0x12, 0x4c, 0x3c, 0x00, + 0xe4, 0x75, 0x00, 0x00, 0x0f, 0xd1, 0x0a, 0xf0, + 0x0f, 0xfc, 0x00, 0x28, 0x1d, 0xd0, 0x61, 0x78, + 0x3c, 0x23, 0x59, 0x43, 0x09, 0x19, 0x04, 0x31, + 0x01, 0x62, 0x61, 0x1c, 0x41, 0x62, 0x84, 0x62, + 0x04, 0x1c, 0x50, 0x34, 0x06, 0xe0, 0x00, 0x29, + 0x0f, 0xd1, 0x3c, 0x20, 0x50, 0x43, 0x25, 0x70, + 0x04, 0x19, 0x04, 0x34, 0x00, 0x2c, 0x08, 0xd0, + 0x20, 0x68, 0x00, 0x28, 0x02, 0xd0, 0x20, 0x21, + 0x3c, 0x00, 0x20, 0x76, 0x00, 0x00, 0xf8, 0xf7, + 0x18, 0xff, 0xa5, 0x80, 0x07, 0x20, 0xa0, 0x71, + 0xb0, 0xbd, 0x68, 0x61, 0x01, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x00, 0x21, 0x01, 0xf0, 0x41, 0xfc, + 0x60, 0x68, 0x00, 0x28, 0x01, 0xd0, 0x21, 0x68, + 0x01, 0x60, 0x20, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0x61, 0x68, 0x41, 0x60, 0x12, 0x4e, 0x70, 0x68, + 0xa0, 0x42, 0x01, 0xd1, 0x60, 0x68, 0x70, 0x60, + 0xe0, 0x68, 0x3c, 0x00, 0x5c, 0x76, 0x00, 0x00, + 0x00, 0x28, 0x0b, 0xd0, 0x00, 0x25, 0x06, 0xe0, + 0xe0, 0x68, 0xe9, 0x00, 0x41, 0x18, 0x14, 0x20, + 0x0b, 0xf0, 0xe2, 0xff, 0x01, 0x35, 0x30, 0x88, + 0x85, 0x42, 0xf5, 0xdb, 0x06, 0x21, 0x20, 0x1c, + 0x44, 0x30, 0xf8, 0xf7, 0xe9, 0xfe, 0x20, 0x6b, + 0x00, 0x28, 0x01, 0xd0, 0xf9, 0xf7, 0x86, 0xff, + 0xe0, 0x69, 0x00, 0x28, 0x01, 0xd0, 0xfa, 0xf7, + 0xaf, 0xf8, 0x70, 0xbd, 0x3c, 0x00, 0x98, 0x76, + 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, 0xf0, 0xb5, + 0x1d, 0x4f, 0x05, 0x9d, 0x3f, 0x68, 0x01, 0x26, + 0x1c, 0x1c, 0x33, 0x1c, 0x00, 0x2f, 0x00, 0xd0, + 0x2b, 0x1c, 0x1d, 0x06, 0x2d, 0x0e, 0x00, 0x29, + 0x06, 0xd0, 0x11, 0x78, 0x0e, 0x23, 0x16, 0x4f, + 0x09, 0x18, 0x09, 0x7a, 0x6b, 0x43, 0x10, 0xe0, + 0x21, 0x78, 0x00, 0x29, 0x13, 0xd0, 0xff, 0x31, + 0x0d, 0xe0, 0x01, 0x29, 0x01, 0xd9, 0x3c, 0x00, + 0xd4, 0x76, 0x00, 0x00, 0x01, 0x31, 0x11, 0x70, + 0x11, 0x78, 0x0e, 0x23, 0x0f, 0x4f, 0x49, 0x08, + 0x11, 0x70, 0x09, 0x18, 0x09, 0x7a, 0x6b, 0x43, + 0xdb, 0x19, 0x59, 0x5c, 0x21, 0x70, 0x21, 0x78, + 0x00, 0x29, 0x02, 0xd1, 0x11, 0x78, 0x00, 0x29, + 0xea, 0xd1, 0x09, 0x48, 0xc0, 0x68, 0x00, 0x28, + 0x05, 0xd0, 0x21, 0x78, 0x30, 0x1c, 0x00, 0x29, + 0x00, 0xd1, 0x00, 0x20, 0xf0, 0xbd, 0x01, 0x20, + 0x3c, 0x00, 0x10, 0x77, 0x00, 0x00, 0xf0, 0xbd, + 0x00, 0x00, 0x18, 0x67, 0x01, 0x00, 0x24, 0x67, + 0x01, 0x00, 0x5c, 0x67, 0x01, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x84, 0x46, 0x00, 0x20, 0xf0, 0xb5, + 0x00, 0x29, 0x09, 0xd0, 0x11, 0x78, 0x1a, 0x4e, + 0xb1, 0x70, 0x19, 0x4e, 0xb1, 0x78, 0x71, 0x70, + 0x31, 0x70, 0x01, 0x21, 0x31, 0x61, 0x27, 0xe0, + 0x16, 0x4e, 0x01, 0x23, 0xf1, 0x56, 0x63, 0x46, + 0x5f, 0x68, 0x3c, 0x00, 0x4c, 0x77, 0x00, 0x00, + 0x00, 0x23, 0xf6, 0x56, 0x01, 0x25, 0xcc, 0x0f, + 0xb7, 0x42, 0x00, 0xd9, 0x00, 0x25, 0x00, 0x2c, + 0x01, 0xd0, 0x00, 0x2d, 0xe8, 0xd1, 0x0e, 0x4f, + 0x3b, 0x69, 0x00, 0x2b, 0x03, 0xd0, 0x00, 0x2d, + 0x01, 0xd1, 0x16, 0x70, 0x02, 0xe0, 0x1c, 0x43, + 0x01, 0xd1, 0x11, 0x70, 0x01, 0x20, 0x01, 0x24, + 0x00, 0x2b, 0x00, 0xd0, 0x00, 0x24, 0x3c, 0x61, + 0x00, 0x2c, 0x02, 0xd0, 0x3c, 0x00, 0x88, 0x77, + 0x00, 0x00, 0x71, 0x1c, 0x39, 0x70, 0x01, 0xe0, + 0xff, 0x31, 0x79, 0x70, 0x00, 0x28, 0xd5, 0xd0, + 0x01, 0x20, 0xf0, 0xbd, 0x00, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x90, 0xb5, 0x0a, 0x4c, 0x00, 0x20, + 0x93, 0xb0, 0x20, 0x61, 0x03, 0x90, 0x68, 0x46, + 0x00, 0x21, 0x08, 0xf0, 0x84, 0xfd, 0x20, 0x7a, + 0x02, 0x28, 0x01, 0xd1, 0xe0, 0x6b, 0x00, 0xe0, + 0x20, 0x6c, 0xe0, 0x61, 0x01, 0x20, 0x3c, 0x00, + 0xc4, 0x77, 0x00, 0x00, 0x08, 0xf0, 0x8a, 0xfd, + 0x13, 0xb0, 0x90, 0xbd, 0xf4, 0x6e, 0x01, 0x00, + 0xf7, 0xb5, 0x05, 0x1c, 0x88, 0x88, 0x0c, 0x1c, + 0x82, 0xb0, 0x1f, 0x4f, 0x00, 0x28, 0x00, 0xd1, + 0x00, 0x27, 0x04, 0x98, 0x00, 0x28, 0x01, 0xd1, + 0xf9, 0xf7, 0x8a, 0xfd, 0x1b, 0x48, 0x3b, 0x1c, + 0x00, 0x68, 0x21, 0x1c, 0x02, 0x68, 0x28, 0x1c, + 0x00, 0x92, 0x04, 0x9a, 0xfe, 0xf7, 0x3c, 0xf8, + 0x3c, 0x00, 0x00, 0x78, 0x00, 0x00, 0x06, 0x1c, + 0x22, 0xd0, 0x03, 0x21, 0x04, 0x98, 0x02, 0xf0, + 0xb8, 0xff, 0x00, 0x28, 0x1b, 0xd0, 0x80, 0x78, + 0x01, 0x21, 0x03, 0xf0, 0xe4, 0xff, 0xa0, 0x88, + 0xa1, 0x8e, 0x48, 0x43, 0x00, 0x04, 0x0f, 0x49, + 0x00, 0x0c, 0x08, 0x80, 0x03, 0xf0, 0x81, 0xf9, + 0x01, 0x22, 0x00, 0x2d, 0x00, 0xd1, 0x00, 0x22, + 0x01, 0x1c, 0x0e, 0x20, 0x0b, 0xf0, 0xc9, 0xfe, + 0x00, 0x2f, 0x3c, 0x00, 0x3c, 0x78, 0x00, 0x00, + 0x08, 0xd1, 0x00, 0x21, 0x28, 0x1c, 0x02, 0xf0, + 0xbd, 0xfc, 0x03, 0xe0, 0x00, 0x26, 0x28, 0x1c, + 0x00, 0xf0, 0x0a, 0xf8, 0x30, 0x1c, 0x05, 0xb0, + 0xf0, 0xbd, 0x00, 0x00, 0xc1, 0xa1, 0x00, 0x00, + 0xe4, 0x65, 0x01, 0x00, 0xa8, 0x7c, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0xfe, 0xf7, 0x38, 0xf8, + 0x01, 0x21, 0x00, 0x2c, 0x00, 0xd1, 0x00, 0x21, + 0x0e, 0x20, 0x0b, 0xf0, 0x3c, 0x00, 0x78, 0x78, + 0x00, 0x00, 0xdd, 0xfe, 0x10, 0xbd, 0xf8, 0xb5, + 0x07, 0x1c, 0x0b, 0xf0, 0x94, 0xfa, 0xfd, 0xf7, + 0xbc, 0xfe, 0x00, 0x26, 0x02, 0x28, 0x1e, 0x4d, + 0x01, 0xd0, 0x2e, 0x70, 0xf8, 0xbd, 0xfd, 0xf7, + 0x3e, 0xf8, 0x04, 0x1c, 0xf9, 0xf7, 0x59, 0xfc, + 0x00, 0x28, 0x14, 0xd0, 0xfd, 0xf7, 0x77, 0xf8, + 0x00, 0x28, 0x10, 0xd0, 0x02, 0xf0, 0xf9, 0xfb, + 0x00, 0x28, 0x01, 0xd0, 0x00, 0x24, 0x3c, 0x00, + 0xb4, 0x78, 0x00, 0x00, 0x00, 0xe0, 0x15, 0x4c, + 0x33, 0x1c, 0x21, 0x1c, 0x07, 0x22, 0x16, 0x20, + 0x0b, 0xf0, 0x66, 0xff, 0x68, 0x78, 0x80, 0x21, + 0x08, 0x43, 0x68, 0x70, 0x02, 0xf0, 0x0a, 0xfc, + 0x00, 0x28, 0xde, 0xd1, 0x28, 0x78, 0x80, 0x07, + 0xdb, 0xd4, 0xfd, 0xf7, 0x23, 0xf9, 0x00, 0x28, + 0x05, 0xd1, 0x28, 0x78, 0xc0, 0x07, 0x02, 0xd5, + 0xfd, 0xf7, 0x42, 0xf8, 0xd1, 0xe7, 0x02, 0xf0, + 0x3c, 0x00, 0xf0, 0x78, 0x00, 0x00, 0xcd, 0xfb, + 0x00, 0x28, 0xcd, 0xd0, 0x28, 0x78, 0x02, 0x21, + 0x08, 0x43, 0x28, 0x70, 0x21, 0x1c, 0x38, 0x1c, + 0xfd, 0xf7, 0xc1, 0xf8, 0xc4, 0xe7, 0x60, 0x6c, + 0x01, 0x00, 0x71, 0x02, 0x00, 0x00, 0x10, 0xb5, + 0x12, 0x4c, 0x01, 0x20, 0x20, 0x70, 0xfe, 0xf7, + 0xf0, 0xf9, 0x01, 0x21, 0xa0, 0x68, 0xfb, 0xf7, + 0xf4, 0xfe, 0xa0, 0x68, 0x03, 0xf0, 0x87, 0xff, + 0x0d, 0x48, 0x3c, 0x00, 0x2c, 0x79, 0x00, 0x00, + 0xa1, 0x68, 0x07, 0xf0, 0x23, 0xfd, 0xfb, 0xf7, + 0x55, 0xff, 0xe0, 0x68, 0x00, 0x28, 0x0d, 0xd0, + 0x09, 0x49, 0x06, 0x20, 0x0a, 0xf0, 0x24, 0xfd, + 0x08, 0x49, 0x05, 0x20, 0x0a, 0xf0, 0x20, 0xfd, + 0xfb, 0xf7, 0x6e, 0xff, 0x00, 0x28, 0x01, 0xd0, + 0x05, 0xf0, 0xf8, 0xfc, 0x10, 0xbd, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xe1, 0x35, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x79, + 0x00, 0x00, 0xb1, 0x35, 0x00, 0x00, 0xf0, 0xb5, + 0x24, 0x4d, 0x23, 0x4c, 0x68, 0x7c, 0x20, 0x3c, + 0x9b, 0xb0, 0x00, 0x28, 0x08, 0xd0, 0x02, 0x28, + 0x03, 0xd8, 0x20, 0x89, 0x01, 0x38, 0x20, 0x81, + 0x37, 0xe0, 0x00, 0x27, 0x6f, 0x74, 0x34, 0xe0, + 0x1c, 0x4e, 0x68, 0x22, 0x14, 0x36, 0x31, 0x1c, + 0x0c, 0x31, 0x01, 0xa8, 0xf8, 0xf7, 0x09, 0xfe, + 0x18, 0x48, 0x33, 0x89, 0x01, 0x21, 0x3c, 0x00, + 0xa4, 0x79, 0x00, 0x00, 0x44, 0x30, 0x0a, 0x1c, + 0x00, 0x2b, 0x00, 0x7b, 0x00, 0xd1, 0x02, 0x1c, + 0x12, 0x06, 0x12, 0x0e, 0x0d, 0xaf, 0x3a, 0x70, + 0x94, 0x46, 0xaa, 0x7b, 0x93, 0x19, 0x30, 0x33, + 0x5b, 0x7b, 0x7b, 0x70, 0xea, 0x73, 0x01, 0x32, + 0x12, 0x06, 0x12, 0x0e, 0x00, 0x27, 0x82, 0x42, + 0xaa, 0x73, 0x01, 0xd3, 0xaf, 0x73, 0x04, 0xe0, + 0x62, 0x46, 0x01, 0x2a, 0x01, 0xd1, 0x77, 0x60, + 0x3c, 0x00, 0xe0, 0x79, 0x00, 0x00, 0x00, 0xe0, + 0x71, 0x60, 0x06, 0x48, 0x07, 0x4a, 0x80, 0x38, + 0x81, 0x67, 0x42, 0x67, 0x68, 0x22, 0x01, 0xa9, + 0xf8, 0xf7, 0xdd, 0xfd, 0x27, 0x81, 0x08, 0xf0, + 0x12, 0xfd, 0x1b, 0xb0, 0xf0, 0xbd, 0x84, 0x66, + 0x01, 0x00, 0xe9, 0x2e, 0x00, 0x00, 0xf1, 0xb5, + 0x86, 0xb0, 0x06, 0x99, 0x00, 0x20, 0x88, 0x61, + 0x06, 0x98, 0x84, 0x68, 0x80, 0x8d, 0x65, 0x68, + 0x01, 0x28, 0x3c, 0x00, 0x1c, 0x7a, 0x00, 0x00, + 0x4c, 0xd9, 0x35, 0x49, 0x49, 0x68, 0x05, 0x91, + 0x00, 0x29, 0x47, 0xd0, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x23, 0x03, 0x90, 0x28, 0x1c, 0x96, 0x46, + 0x94, 0x46, 0x06, 0x68, 0x04, 0x96, 0xf2, 0x78, + 0x80, 0x26, 0xb2, 0x43, 0x3f, 0x2a, 0x2e, 0xd8, + 0xd7, 0x06, 0xff, 0x0e, 0x01, 0x26, 0xbe, 0x40, + 0x37, 0x1c, 0x04, 0x9e, 0x52, 0x09, 0xb6, 0x78, + 0x76, 0x00, 0xb2, 0x18, 0x3c, 0x00, 0x58, 0x7a, + 0x00, 0x00, 0x26, 0x4e, 0x92, 0x00, 0x1c, 0x36, + 0xb2, 0x58, 0x3a, 0x40, 0x1e, 0xd0, 0x03, 0xe0, + 0x02, 0x90, 0x02, 0x89, 0xc0, 0x68, 0x51, 0x18, + 0x00, 0x28, 0xf9, 0xd1, 0x05, 0x98, 0x81, 0x42, + 0x14, 0xd8, 0x70, 0x46, 0x01, 0x30, 0x86, 0x46, + 0x00, 0x2b, 0x04, 0xd0, 0x60, 0x46, 0xd8, 0x60, + 0x01, 0x98, 0x62, 0x46, 0xd0, 0x60, 0x03, 0x98, + 0x01, 0x38, 0x03, 0x90, 0x06, 0xd0, 0x3c, 0x00, + 0x94, 0x7a, 0x00, 0x00, 0x23, 0x1c, 0x24, 0x68, + 0x60, 0x68, 0x02, 0x9a, 0x01, 0x90, 0x94, 0x46, + 0xc9, 0xe7, 0x70, 0x46, 0x01, 0x28, 0x07, 0xd9, + 0x2a, 0x1c, 0x00, 0x21, 0x3f, 0x20, 0x01, 0xf0, + 0x51, 0xff, 0x05, 0x1c, 0x06, 0x98, 0x85, 0x61, + 0x28, 0x1c, 0x01, 0xf0, 0xb3, 0xff, 0x0e, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x07, 0xd0, 0x28, 0x68, + 0x01, 0x88, 0x40, 0x79, 0x02, 0x31, 0x09, 0x1a, + 0x3c, 0x00, 0xd0, 0x7a, 0x00, 0x00, 0x28, 0x1c, + 0x01, 0xf0, 0xe5, 0xfc, 0xa2, 0x68, 0x06, 0x98, + 0xc0, 0x68, 0x06, 0x99, 0x0b, 0x69, 0x29, 0x1c, + 0xf8, 0xf7, 0x7c, 0xfc, 0x03, 0x49, 0x08, 0x69, + 0x01, 0x30, 0x08, 0x61, 0x07, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xfc, 0x5a, 0x01, 0x00, 0xcc, 0x5c, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x4a, 0x80, 0x00, + 0x12, 0x58, 0xd0, 0x06, 0xc0, 0x0e, 0x01, 0x30, + 0x07, 0x4b, 0x3c, 0x00, 0x0c, 0x7b, 0x00, 0x00, + 0x1c, 0x68, 0x00, 0x2c, 0xfc, 0xdb, 0x5a, 0x60, + 0x20, 0x22, 0x12, 0x1a, 0x91, 0x40, 0x19, 0x60, + 0x19, 0x68, 0x00, 0x29, 0xfc, 0xdb, 0x10, 0xbd, + 0xe8, 0x60, 0x01, 0x00, 0x30, 0x20, 0x07, 0x00, + 0xb0, 0xb5, 0x12, 0x4c, 0x00, 0x25, 0x25, 0x70, + 0xa1, 0x68, 0x11, 0x48, 0x07, 0xf0, 0x32, 0xfc, + 0x65, 0x61, 0xfb, 0xf7, 0xa3, 0xfe, 0xe0, 0x68, + 0x00, 0x28, 0x0d, 0xd0, 0x3c, 0x00, 0x48, 0x7b, + 0x00, 0x00, 0xfb, 0xf7, 0xa4, 0xfe, 0x01, 0x21, + 0x07, 0x20, 0x0b, 0xf0, 0x70, 0xfd, 0x0a, 0x49, + 0x06, 0x20, 0x0a, 0xf0, 0x4c, 0xfc, 0x09, 0x49, + 0x05, 0x20, 0x0a, 0xf0, 0x48, 0xfc, 0xa0, 0x68, + 0x03, 0xf0, 0x67, 0xfe, 0x00, 0x21, 0xa0, 0x68, + 0xfb, 0xf7, 0xcd, 0xfd, 0x05, 0xf0, 0xab, 0xfb, + 0xb0, 0xbd, 0x78, 0x69, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0xe1, 0x35, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x7b, 0x00, 0x00, 0xb1, 0x35, 0x00, 0x00, + 0x10, 0xb5, 0x0f, 0x4c, 0x20, 0x7c, 0x00, 0x28, + 0x19, 0xd1, 0x60, 0x69, 0x00, 0x28, 0x16, 0xd1, + 0xe0, 0x68, 0x00, 0x28, 0x06, 0xd0, 0x0a, 0x48, + 0x1c, 0x38, 0xc0, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0x05, 0xf0, 0xce, 0xfb, 0x01, 0x21, 0x07, 0x20, + 0x0b, 0xf0, 0x40, 0xfd, 0xa0, 0x68, 0x03, 0xf0, + 0x3f, 0xfe, 0x04, 0x48, 0xa1, 0x68, 0x07, 0xf0, + 0x3c, 0x00, 0xc0, 0x7b, 0x00, 0x00, 0xdb, 0xfb, + 0x01, 0x20, 0x20, 0x70, 0x10, 0xbd, 0x78, 0x69, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0x70, 0xb5, + 0x0e, 0x4c, 0x01, 0x22, 0xa3, 0x68, 0xe5, 0x68, + 0x26, 0x8a, 0x5d, 0x1b, 0xb5, 0x42, 0x01, 0xd1, + 0x00, 0x22, 0x06, 0xe0, 0x25, 0x68, 0x01, 0x33, + 0x2e, 0x68, 0xa3, 0x60, 0x26, 0x60, 0x04, 0x35, + 0x03, 0xc5, 0x00, 0x2a, 0x04, 0xd1, 0x01, 0x21, + 0x9d, 0x20, 0x3c, 0x00, 0xfc, 0x7b, 0x00, 0x00, + 0xf9, 0xf7, 0x52, 0xfb, 0x70, 0xbd, 0x03, 0x49, + 0x02, 0x20, 0x08, 0x60, 0x70, 0xbd, 0x00, 0x00, + 0x44, 0xe3, 0x01, 0x00, 0x40, 0x20, 0x07, 0x00, + 0x80, 0xb5, 0x02, 0xf0, 0xb9, 0xf8, 0x80, 0xbd, + 0x80, 0xb5, 0x02, 0x21, 0x2d, 0x20, 0xf9, 0xf7, + 0x3f, 0xfb, 0x00, 0x20, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x2a, 0x20, 0xf9, 0xf7, + 0x37, 0xfb, 0x00, 0x20, 0x3c, 0x00, 0x38, 0x7c, + 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x01, 0x21, 0x2b, 0x20, 0xf9, 0xf7, 0x2f, 0xfb, + 0x02, 0x20, 0x80, 0xbd, 0x00, 0x00, 0x01, 0x49, + 0x01, 0x20, 0x08, 0x61, 0x70, 0x47, 0x7c, 0x78, + 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0c, 0x23, + 0x0f, 0x1c, 0x17, 0x49, 0x58, 0x43, 0x45, 0x18, + 0x6c, 0x68, 0x30, 0x1c, 0x0b, 0xf0, 0x3f, 0xfe, + 0x00, 0x2f, 0x09, 0xd1, 0x30, 0x1c, 0x3c, 0x00, + 0x74, 0x7c, 0x00, 0x00, 0x03, 0xf0, 0xee, 0xfe, + 0x41, 0x20, 0x07, 0x55, 0x11, 0x48, 0x21, 0x1c, + 0xff, 0xf7, 0xa6, 0xff, 0xf8, 0xbd, 0x41, 0x20, + 0x07, 0x55, 0xa0, 0x6b, 0x00, 0x28, 0x03, 0xd0, + 0x20, 0x1c, 0x00, 0xf0, 0xdf, 0xf9, 0xf5, 0xe7, + 0x20, 0x1c, 0x00, 0xf0, 0xdb, 0xf9, 0xac, 0x68, + 0x00, 0x2c, 0x02, 0xd0, 0x00, 0x20, 0xa8, 0x60, + 0xed, 0xe7, 0x30, 0x1c, 0x05, 0xf0, 0x34, 0xf9, + 0x3c, 0x00, 0xb0, 0x7c, 0x00, 0x00, 0x04, 0x1c, + 0xe8, 0xd1, 0x08, 0x21, 0x0c, 0x20, 0xf9, 0xf7, + 0xf4, 0xfa, 0xe3, 0xe7, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x55, 0x80, 0x00, 0x00, 0x07, 0x4a, + 0x80, 0xb5, 0x50, 0x70, 0x51, 0x60, 0x12, 0x78, + 0x06, 0x4b, 0x80, 0x00, 0x52, 0x01, 0xd2, 0x18, + 0x10, 0x18, 0x40, 0x38, 0x02, 0x68, 0x08, 0x1c, + 0xf8, 0xf7, 0x7b, 0xfb, 0x80, 0xbd, 0x78, 0x69, + 0x01, 0x00, 0x3c, 0x00, 0xec, 0x7c, 0x00, 0x00, + 0xfc, 0x42, 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x49, + 0x04, 0x1c, 0xc8, 0x70, 0x08, 0x4d, 0xe4, 0x35, + 0xa8, 0x7a, 0x08, 0x71, 0x08, 0x2c, 0x01, 0xd3, + 0xf9, 0xf7, 0xfc, 0xfa, 0xa8, 0x7a, 0x05, 0x49, + 0x40, 0x01, 0x40, 0x18, 0xa1, 0x00, 0x40, 0x58, + 0xf8, 0xf7, 0x60, 0xfb, 0xb0, 0xbd, 0x00, 0x00, + 0x60, 0x6c, 0x01, 0x00, 0x80, 0x43, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x28, 0x3c, 0x00, 0x28, 0x7d, + 0x00, 0x00, 0x01, 0xd0, 0x09, 0xf0, 0x1d, 0xf9, + 0x80, 0xbd, 0xb0, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, + 0x00, 0x20, 0x08, 0x60, 0x68, 0x68, 0x09, 0xf0, + 0x36, 0xfb, 0x6c, 0x60, 0xb0, 0xbd, 0x10, 0xb5, + 0x04, 0x1c, 0x09, 0xf0, 0x34, 0xfb, 0x21, 0x68, + 0x00, 0x29, 0x00, 0xd1, 0x64, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x00, 0x21, 0x01, 0x60, 0x40, 0x60, + 0x70, 0x47, 0xf8, 0xb5, 0x46, 0x68, 0x3c, 0x00, + 0x64, 0x7d, 0x00, 0x00, 0x04, 0x1c, 0x40, 0x6a, + 0x35, 0x1c, 0x0a, 0x35, 0x00, 0x28, 0x04, 0xd0, + 0x20, 0x1c, 0xf9, 0xf7, 0x89, 0xfd, 0x07, 0x1c, + 0x00, 0xe0, 0x04, 0x27, 0x29, 0x1c, 0x60, 0x69, + 0x00, 0xf0, 0xf6, 0xfc, 0x79, 0x00, 0x0f, 0x18, + 0xba, 0x88, 0xf1, 0x8a, 0x05, 0x1c, 0x8a, 0x42, + 0x05, 0xd1, 0x30, 0x88, 0x00, 0x05, 0x02, 0xd5, + 0x04, 0xf0, 0xbe, 0xfb, 0x3c, 0xe0, 0x28, 0x68, + 0x3c, 0x00, 0xa0, 0x7d, 0x00, 0x00, 0x00, 0x28, + 0x0f, 0xd0, 0x01, 0x32, 0x8a, 0x42, 0x04, 0xd1, + 0xf9, 0xf7, 0x0f, 0xfc, 0x21, 0x68, 0xc1, 0x60, + 0x0b, 0xe0, 0xf9, 0xf7, 0xf0, 0xfb, 0xf0, 0x8a, + 0x00, 0x07, 0x04, 0xd0, 0x00, 0x21, 0x29, 0x60, + 0x29, 0xe0, 0x08, 0x07, 0x27, 0xd1, 0x20, 0x68, + 0x28, 0x60, 0xf0, 0x8a, 0xb8, 0x80, 0x13, 0x48, + 0x01, 0x68, 0x01, 0x31, 0x01, 0x60, 0x31, 0x88, + 0x49, 0x05, 0x3c, 0x00, 0xdc, 0x7d, 0x00, 0x00, + 0x18, 0xd4, 0x29, 0x68, 0x21, 0x60, 0x00, 0x21, + 0x29, 0x60, 0xe1, 0x69, 0x00, 0x29, 0x0d, 0xd0, + 0x89, 0x79, 0x02, 0x29, 0x0a, 0xd1, 0x08, 0x21, + 0x21, 0x86, 0x21, 0x1c, 0x38, 0x31, 0xa1, 0x62, + 0x22, 0x1c, 0xdc, 0x30, 0x08, 0x49, 0x02, 0xf0, + 0x81, 0xf9, 0xf8, 0xbd, 0x20, 0x1c, 0x00, 0xf0, + 0x5f, 0xf8, 0xfa, 0xe7, 0x20, 0x1c, 0xf9, 0xf7, + 0xef, 0xfc, 0xf6, 0xe7, 0x3c, 0x00, 0x18, 0x7e, + 0x00, 0x00, 0x20, 0x68, 0xf9, 0xf7, 0xbd, 0xfb, + 0xf7, 0xe7, 0xc4, 0x69, 0x01, 0x00, 0xb9, 0x71, + 0x00, 0x00, 0xf8, 0xb5, 0x0f, 0x1c, 0x09, 0x78, + 0x01, 0x24, 0xc9, 0x07, 0x21, 0xd5, 0x02, 0xf0, + 0x8c, 0xff, 0x00, 0x28, 0x01, 0xd0, 0x00, 0x24, + 0x1b, 0xe0, 0x0e, 0x4e, 0x75, 0x6e, 0x00, 0x2d, + 0x17, 0xd0, 0x34, 0x6e, 0x06, 0x22, 0x31, 0x1c, + 0x38, 0x1c, 0xf8, 0xf7, 0xd4, 0xfa, 0x3c, 0x00, + 0x54, 0x7e, 0x00, 0x00, 0x00, 0x28, 0x05, 0xd1, + 0x01, 0x20, 0x00, 0x2c, 0x00, 0xd0, 0x00, 0x20, + 0x04, 0x1c, 0x03, 0xe0, 0x01, 0x3d, 0x06, 0x36, + 0x00, 0x2d, 0xee, 0xd1, 0x00, 0x2c, 0x03, 0xd1, + 0x02, 0x4e, 0xb0, 0x6e, 0x01, 0x30, 0xb0, 0x66, + 0x20, 0x1c, 0xf8, 0xbd, 0x10, 0x79, 0x01, 0x00, + 0x30, 0xb5, 0x05, 0x1c, 0x00, 0x20, 0x06, 0x49, + 0x00, 0x22, 0x1c, 0x23, 0xcc, 0x56, 0xac, 0x42, + 0x3c, 0x00, 0x90, 0x7e, 0x00, 0x00, 0x01, 0xd1, + 0x08, 0x1c, 0x30, 0xbd, 0x01, 0x32, 0x48, 0x31, + 0x01, 0x2a, 0xf5, 0xd3, 0x30, 0xbd, 0xcc, 0x6d, + 0x01, 0x00, 0x10, 0xb5, 0x08, 0x4c, 0x00, 0x22, + 0x1c, 0x23, 0x53, 0x43, 0xe3, 0x58, 0x83, 0x42, + 0x04, 0xd1, 0x1c, 0x20, 0x50, 0x43, 0x00, 0x19, + 0x0a, 0x60, 0x10, 0xbd, 0x01, 0x32, 0x0e, 0x2a, + 0xf2, 0xd3, 0x00, 0x20, 0x10, 0xbd, 0xdc, 0x71, + 0x01, 0x00, 0x3c, 0x00, 0xcc, 0x7e, 0x00, 0x00, + 0xf0, 0xb5, 0x41, 0x68, 0x95, 0xb0, 0x07, 0x1c, + 0x90, 0x37, 0x13, 0x91, 0x04, 0x1c, 0xf8, 0x78, + 0x25, 0x1c, 0x80, 0x35, 0xc6, 0x07, 0x28, 0x79, + 0xf6, 0x0f, 0x4a, 0x49, 0x02, 0x28, 0x4d, 0xd1, + 0x0a, 0x6d, 0x00, 0x2a, 0x4a, 0xd0, 0x48, 0x68, + 0x01, 0x30, 0x48, 0x60, 0x0a, 0xf0, 0x58, 0xff, + 0x44, 0x49, 0x08, 0x61, 0x48, 0x61, 0x13, 0x99, + 0x09, 0x79, 0xc9, 0x07, 0x3c, 0x00, 0x08, 0x7f, + 0x00, 0x00, 0x01, 0xd4, 0x41, 0x49, 0x88, 0x61, + 0x20, 0x68, 0x06, 0x22, 0x06, 0x90, 0xa1, 0x68, + 0x03, 0xa8, 0xf8, 0xf7, 0xee, 0xfa, 0x06, 0x22, + 0x04, 0xa8, 0x02, 0x30, 0xe1, 0x68, 0xf8, 0xf7, + 0xe8, 0xfa, 0x07, 0xa8, 0x06, 0x22, 0x21, 0x69, + 0xf8, 0xf7, 0xe3, 0xfa, 0xb8, 0x78, 0x08, 0xab, + 0x00, 0x21, 0x98, 0x70, 0x0c, 0x96, 0x63, 0x6a, + 0x20, 0x1c, 0xa0, 0x30, 0x0a, 0x1c, 0x3c, 0x00, + 0x44, 0x7f, 0x00, 0x00, 0x00, 0x2b, 0x02, 0xd0, + 0x02, 0x8a, 0x52, 0x07, 0x52, 0x0f, 0x08, 0xab, + 0xda, 0x70, 0x00, 0xab, 0x99, 0x84, 0x13, 0x99, + 0x09, 0x88, 0xc9, 0x0b, 0xd9, 0x84, 0x69, 0x6b, + 0x10, 0xab, 0x10, 0x91, 0xa9, 0x6b, 0x11, 0x91, + 0x80, 0x8b, 0x29, 0x49, 0x18, 0x81, 0x09, 0x6d, + 0x03, 0xa8, 0xf8, 0xf7, 0x32, 0xfa, 0x29, 0x79, + 0x68, 0x6b, 0x0b, 0xf0, 0x4d, 0xfd, 0x29, 0x79, + 0x3c, 0x00, 0x80, 0x7f, 0x00, 0x00, 0xa8, 0x6b, + 0x0b, 0xf0, 0x67, 0xfd, 0x3d, 0xe0, 0x00, 0x28, + 0x38, 0xd1, 0x48, 0x6d, 0x14, 0x90, 0x00, 0x28, + 0x34, 0xd0, 0x20, 0x68, 0x06, 0x22, 0x03, 0x90, + 0xa1, 0x68, 0x68, 0x46, 0xf8, 0xf7, 0xab, 0xfa, + 0x06, 0x22, 0x68, 0x46, 0x80, 0x18, 0xe1, 0x68, + 0xf8, 0xf7, 0xa5, 0xfa, 0x05, 0xa8, 0x06, 0x22, + 0x21, 0x69, 0xf8, 0xf7, 0xa0, 0xfa, 0x00, 0x21, + 0x04, 0x91, 0x3c, 0x00, 0xbc, 0x7f, 0x00, 0x00, + 0xb9, 0x78, 0x08, 0xa8, 0x10, 0xab, 0x01, 0x72, + 0x08, 0x96, 0xe9, 0x68, 0x0b, 0x91, 0x69, 0x79, + 0x41, 0x72, 0x68, 0x6b, 0x0e, 0x90, 0xa8, 0x6b, + 0x10, 0x90, 0x28, 0x8d, 0xd8, 0x80, 0x68, 0x8d, + 0x18, 0x81, 0xe1, 0x69, 0x0c, 0xa8, 0x00, 0x29, + 0x04, 0xd0, 0x89, 0x79, 0x01, 0x70, 0x20, 0x6a, + 0x0d, 0x90, 0x01, 0xe0, 0x07, 0x21, 0x01, 0x70, + 0x68, 0x46, 0x14, 0x99, 0x3c, 0x00, 0xf8, 0x7f, + 0x00, 0x00, 0xf8, 0xf7, 0xef, 0xf9, 0x02, 0xe0, + 0x20, 0x68, 0xf9, 0xf7, 0xca, 0xfa, 0x20, 0x1c, + 0xf9, 0xf7, 0xf5, 0xfb, 0x15, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0xc0, 0x68, 0x06, 0x22, 0x01, 0x89, + 0x0c, 0x31, 0x01, 0x81, 0x05, 0x68, 0x21, 0x1c, + 0x0c, 0x3d, 0x05, 0x60, 0xa8, 0x18, 0xf8, 0xf7, + 0x64, 0xfa, 0x06, 0x22, 0xa1, 0x18, 0x3c, 0x00, + 0x34, 0x80, 0x00, 0x00, 0x28, 0x1c, 0xf8, 0xf7, + 0x5f, 0xfa, 0xa0, 0x8f, 0x00, 0x09, 0xe0, 0x62, + 0x20, 0x63, 0x03, 0x48, 0x01, 0x69, 0x20, 0x1c, + 0xf8, 0xf7, 0xc7, 0xf9, 0xb0, 0xbd, 0x00, 0x00, + 0x7c, 0x79, 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x60, 0x36, 0x05, 0x1c, 0x70, 0x7a, 0x0c, 0x23, + 0x25, 0x49, 0x58, 0x43, 0x44, 0x18, 0xa8, 0x6b, + 0x00, 0x27, 0x00, 0x28, 0x06, 0xd0, 0xa0, 0x78, + 0x3c, 0x00, 0x70, 0x80, 0x00, 0x00, 0x01, 0x28, + 0x03, 0xd1, 0xa7, 0x70, 0x70, 0x7a, 0x0a, 0xf0, + 0xb6, 0xfd, 0x2a, 0x1c, 0x0c, 0x21, 0x80, 0x20, + 0x0b, 0xf0, 0x95, 0xfb, 0xa8, 0x6b, 0x00, 0x28, + 0x33, 0xd0, 0xa0, 0x78, 0x02, 0x28, 0x0b, 0xd0, + 0x04, 0x28, 0x22, 0xd1, 0xa7, 0x70, 0x2f, 0x1c, + 0x40, 0x37, 0x78, 0x78, 0x02, 0x28, 0x0c, 0xd1, + 0x70, 0x7a, 0x0a, 0xf0, 0xa0, 0xfd, 0x18, 0xe0, + 0x03, 0x20, 0x3c, 0x00, 0xac, 0x80, 0x00, 0x00, + 0xa0, 0x70, 0x12, 0x49, 0x00, 0x20, 0x14, 0x39, + 0x09, 0x69, 0xf8, 0xf7, 0x90, 0xf9, 0x0f, 0xe0, + 0x2c, 0x1c, 0x07, 0xe0, 0x78, 0x78, 0x41, 0x21, + 0x22, 0x1c, 0x08, 0x55, 0x0c, 0x21, 0x80, 0x20, + 0x0b, 0xf0, 0x70, 0xfb, 0x60, 0x34, 0x60, 0x7a, + 0x04, 0xf0, 0x20, 0xff, 0x04, 0x1c, 0xf1, 0xd1, + 0x70, 0x7a, 0x40, 0x35, 0xa9, 0x8b, 0x00, 0x02, + 0x09, 0x09, 0x09, 0x04, 0x3c, 0x00, 0xe8, 0x80, + 0x00, 0x00, 0x08, 0x43, 0x81, 0x21, 0x01, 0x43, + 0x0c, 0x20, 0x0b, 0xf0, 0xa0, 0xfa, 0xf8, 0xbd, + 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, 0xf8, 0xb5, + 0x1c, 0x49, 0x05, 0x1c, 0x88, 0x6a, 0x01, 0x30, + 0x88, 0x62, 0x28, 0x1c, 0x0b, 0xf0, 0x7d, 0xfd, + 0x04, 0x1c, 0x11, 0xd0, 0x2b, 0x1c, 0x20, 0x33, + 0x1e, 0x1c, 0x5a, 0x79, 0x20, 0x1c, 0xb4, 0x30, + 0x19, 0x79, 0x14, 0x4f, 0xfd, 0xf7, 0x3c, 0x00, + 0x24, 0x81, 0x00, 0x00, 0x89, 0xf8, 0xaa, 0x7a, + 0x20, 0x1c, 0xb8, 0x30, 0xb1, 0x79, 0xfd, 0xf7, + 0xb9, 0xf8, 0x00, 0x2f, 0x04, 0xd1, 0x01, 0x21, + 0x28, 0x68, 0xfa, 0xf7, 0x6d, 0xfa, 0xf8, 0xbd, + 0x60, 0x68, 0xbc, 0x21, 0xc0, 0x8a, 0x08, 0x53, + 0x28, 0x68, 0x00, 0x21, 0xfa, 0xf7, 0x64, 0xfa, + 0x00, 0x28, 0x09, 0xd0, 0x06, 0x49, 0xc8, 0x6a, + 0x01, 0x30, 0xc8, 0x62, 0x00, 0x2c, 0xee, 0xd0, + 0x3c, 0x00, 0x60, 0x81, 0x00, 0x00, 0x20, 0x1c, + 0xf9, 0xf7, 0x47, 0xfb, 0xea, 0xe7, 0x20, 0x1c, + 0xf8, 0xf7, 0x3c, 0xf9, 0xe6, 0xe7, 0xc4, 0x69, + 0x01, 0x00, 0xa1, 0xff, 0x00, 0x00, 0xf8, 0xb5, + 0x16, 0x4c, 0x05, 0x1f, 0x00, 0x22, 0x21, 0x1c, + 0xa0, 0x31, 0x03, 0xe0, 0x28, 0x68, 0xa0, 0x42, + 0x09, 0xd0, 0x20, 0x34, 0xa1, 0x42, 0xf9, 0xd1, + 0x00, 0x2a, 0x04, 0xd1, 0x02, 0x21, 0x8e, 0x20, + 0xf9, 0xf7, 0x3c, 0x00, 0x9c, 0x81, 0x00, 0x00, + 0x83, 0xf8, 0xf8, 0xbd, 0x0d, 0x4f, 0xbe, 0x79, + 0x60, 0x69, 0x01, 0x30, 0x60, 0x61, 0xf8, 0xf7, + 0x97, 0xfd, 0xa8, 0x42, 0x07, 0xd1, 0xa0, 0x88, + 0x04, 0x30, 0xf8, 0xf7, 0x97, 0xfd, 0xe0, 0x69, + 0x01, 0x30, 0xe0, 0x61, 0x05, 0xe0, 0x20, 0x68, + 0x28, 0x60, 0x25, 0x60, 0xa0, 0x69, 0x01, 0x30, + 0xa0, 0x61, 0xbe, 0x71, 0xe5, 0xe7, 0x00, 0x00, + 0xd0, 0x5c, 0x01, 0x00, 0x3c, 0x00, 0xd8, 0x81, + 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, 0x00, 0x29, + 0x01, 0xdb, 0x06, 0x29, 0x01, 0xdb, 0x02, 0x20, + 0x70, 0x47, 0x06, 0x4b, 0xc9, 0x00, 0x5a, 0x5c, + 0xc9, 0x18, 0x02, 0x70, 0x4a, 0x78, 0x42, 0x70, + 0x8a, 0x78, 0x82, 0x70, 0x49, 0x68, 0x41, 0x60, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0xcc, 0x5a, + 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xf9, 0xf7, 0x3c, 0x00, + 0x14, 0x82, 0x00, 0x00, 0x75, 0xf8, 0x10, 0x48, + 0x40, 0x68, 0x00, 0x28, 0x00, 0xd0, 0x03, 0x24, + 0x10, 0x2d, 0x00, 0xd3, 0x0f, 0x25, 0x06, 0x20, + 0x0b, 0x49, 0x60, 0x43, 0x12, 0x31, 0x40, 0x18, + 0x41, 0x78, 0x80, 0x78, 0x49, 0x19, 0x09, 0x06, + 0x09, 0x0e, 0x88, 0x42, 0x00, 0xd2, 0x01, 0x1c, + 0x01, 0x20, 0x88, 0x40, 0x05, 0x49, 0x01, 0x38, + 0x09, 0x68, 0x08, 0x40, 0x00, 0x04, 0x00, 0x0c, + 0x3c, 0x00, 0x50, 0x82, 0x00, 0x00, 0x02, 0xf0, + 0x44, 0xfe, 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x7a, + 0x01, 0x00, 0x08, 0x20, 0x07, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0d, 0x1c, 0x09, 0xf0, 0xcf, 0xfd, + 0x00, 0x28, 0x03, 0xd1, 0x20, 0x1c, 0x09, 0xf0, + 0x82, 0xfd, 0x05, 0x61, 0xb0, 0xbd, 0x80, 0xb5, + 0x0a, 0xf0, 0x97, 0xfd, 0x03, 0x4a, 0x0c, 0x32, + 0x06, 0xca, 0x89, 0x18, 0x08, 0x1a, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x82, 0x00, 0x00, + 0xa0, 0x7d, 0x01, 0x00, 0x70, 0xb5, 0x0b, 0x4c, + 0x04, 0x9e, 0x64, 0x68, 0x0d, 0xe0, 0x65, 0x68, + 0x85, 0x42, 0x09, 0xd1, 0x20, 0x7a, 0x08, 0x70, + 0xe0, 0x68, 0x10, 0x60, 0x20, 0x69, 0x18, 0x60, + 0x20, 0x7d, 0x30, 0x80, 0x01, 0x20, 0x70, 0xbd, + 0x24, 0x68, 0x00, 0x2c, 0xef, 0xd1, 0x00, 0x20, + 0x70, 0xbd, 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x3c, 0x00, 0xc8, 0x82, + 0x00, 0x00, 0x20, 0x30, 0x81, 0x7b, 0x20, 0x69, + 0x04, 0x30, 0xfd, 0xf7, 0x64, 0xf9, 0x01, 0x1c, + 0x62, 0x20, 0x02, 0x5b, 0x63, 0x6a, 0x40, 0x34, + 0x20, 0x78, 0x02, 0xf0, 0xce, 0xfd, 0x10, 0xbd, + 0x00, 0x00, 0x0b, 0x49, 0x10, 0xb5, 0x08, 0x88, + 0x8a, 0x69, 0x0a, 0x23, 0x50, 0x43, 0x58, 0x43, + 0x0e, 0xd0, 0x08, 0x4a, 0x53, 0x89, 0x94, 0x88, + 0xd2, 0x88, 0x1b, 0x19, 0x52, 0x04, 0x3c, 0x00, + 0x04, 0x83, 0x00, 0x00, 0x52, 0x0c, 0x9a, 0x18, + 0xc9, 0x68, 0x06, 0x32, 0x4a, 0x43, 0x0a, 0x21, + 0x51, 0x43, 0xf8, 0xf7, 0xfd, 0xf9, 0x10, 0xbd, + 0xc8, 0x74, 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, + 0x10, 0xb5, 0x43, 0x1c, 0x01, 0xd1, 0x10, 0x48, + 0x10, 0xbd, 0x0f, 0x4a, 0x0e, 0x4b, 0x94, 0x3a, + 0x12, 0x68, 0x44, 0x3b, 0x1b, 0x7a, 0x10, 0xe0, + 0x54, 0x68, 0x84, 0x42, 0x0c, 0xd1, 0x00, 0x29, + 0x3c, 0x00, 0x40, 0x83, 0x00, 0x00, 0x0f, 0xd1, + 0x02, 0x2b, 0x03, 0xd1, 0xd4, 0x7b, 0x02, 0x2c, + 0x0a, 0xd2, 0x04, 0xe0, 0x00, 0x2b, 0x05, 0xd1, + 0xd4, 0x7b, 0xe4, 0x07, 0x04, 0xd4, 0x12, 0x68, + 0x00, 0x2a, 0xec, 0xd1, 0x00, 0x20, 0x10, 0xbd, + 0x10, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0x38, 0x6f, + 0x01, 0x00, 0x01, 0x1c, 0x01, 0x20, 0x01, 0x29, + 0x00, 0xd0, 0x00, 0x20, 0x70, 0x47, 0x00, 0xb5, + 0x02, 0x1c, 0x3c, 0x00, 0x7c, 0x83, 0x00, 0x00, + 0xfd, 0xf7, 0xce, 0xf8, 0x00, 0x28, 0x08, 0xd0, + 0x10, 0x1c, 0xff, 0xf7, 0xf1, 0xff, 0x18, 0x23, + 0x03, 0x49, 0x58, 0x43, 0x40, 0x18, 0x00, 0x69, + 0x00, 0xbd, 0x00, 0x20, 0x00, 0xbd, 0x00, 0x00, + 0x94, 0x67, 0x01, 0x00, 0x80, 0xb5, 0x00, 0x28, + 0x00, 0xd1, 0x08, 0x48, 0x07, 0x49, 0x00, 0x68, + 0x50, 0x31, 0x09, 0x7a, 0x00, 0x29, 0x02, 0xd0, + 0x02, 0x29, 0x04, 0xd1, 0x3c, 0x00, 0xb8, 0x83, + 0x00, 0x00, 0x00, 0xe0, 0x01, 0x21, 0x00, 0xf0, + 0x06, 0xf8, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, 0x12, 0x4a, + 0x12, 0x4b, 0x12, 0x7a, 0x2c, 0x3b, 0x00, 0x2a, + 0x03, 0xd1, 0x5a, 0x68, 0x00, 0x2a, 0x18, 0xd1, + 0x04, 0xe0, 0x02, 0x2a, 0x02, 0xd1, 0x9a, 0x68, + 0x00, 0x2a, 0x12, 0xd1, 0x00, 0x20, 0x70, 0x47, + 0xc2, 0x7b, 0x8a, 0x42, 0x01, 0xd0, 0x3c, 0x00, + 0xf4, 0x83, 0x00, 0x00, 0x03, 0x2a, 0x0a, 0xd1, + 0x82, 0x7e, 0x01, 0x2a, 0x07, 0xd1, 0x02, 0x7f, + 0x01, 0x32, 0x12, 0x06, 0x12, 0x0e, 0x02, 0x77, + 0xc3, 0x7e, 0x9a, 0x42, 0xee, 0xd2, 0x00, 0x68, + 0x00, 0x28, 0xec, 0xd1, 0x70, 0x47, 0x00, 0x00, + 0xf4, 0x6e, 0x01, 0x00, 0xf7, 0xb5, 0x84, 0x46, + 0x00, 0x20, 0x01, 0x27, 0x00, 0x24, 0x00, 0x25, + 0x88, 0xb0, 0x07, 0xe0, 0x62, 0x46, 0x52, 0x5d, + 0x3c, 0x00, 0x30, 0x84, 0x00, 0x00, 0x00, 0x2a, + 0x05, 0xd0, 0xab, 0x00, 0x6e, 0x46, 0xf2, 0x50, + 0x01, 0x35, 0x8d, 0x42, 0xf5, 0xd3, 0x00, 0x2d, + 0x00, 0xd0, 0x01, 0x20, 0x00, 0x28, 0x28, 0xd0, + 0x00, 0x27, 0x16, 0x4c, 0x6e, 0x46, 0x22, 0xe0, + 0x20, 0x1c, 0x00, 0xf0, 0x30, 0xf8, 0x01, 0x28, + 0x01, 0xd0, 0x07, 0x28, 0x06, 0xd1, 0x00, 0x21, + 0x20, 0x1c, 0x00, 0xf0, 0x34, 0xf8, 0x31, 0x68, + 0x88, 0x42, 0x3c, 0x00, 0x6c, 0x84, 0x00, 0x00, + 0x01, 0xd2, 0x02, 0x27, 0x14, 0xe0, 0x20, 0x68, + 0xc9, 0x00, 0x0c, 0x18, 0x08, 0x3c, 0x20, 0x1c, + 0x00, 0xf0, 0x1c, 0xf8, 0x07, 0x28, 0x07, 0xd1, + 0x01, 0x20, 0x01, 0x2d, 0x00, 0xd0, 0x00, 0x20, + 0x24, 0x68, 0x00, 0x28, 0x00, 0xd1, 0x08, 0x34, + 0x01, 0x3d, 0x04, 0x36, 0x00, 0x2d, 0xda, 0xd1, + 0x0a, 0x98, 0x04, 0x60, 0x0b, 0xb0, 0x38, 0x1c, + 0xf0, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x84, + 0x00, 0x00, 0x20, 0x52, 0x01, 0x00, 0x00, 0x68, + 0x00, 0x29, 0x01, 0xd0, 0x80, 0x02, 0x80, 0x0a, + 0x70, 0x47, 0x10, 0xb5, 0x40, 0x68, 0x80, 0x00, + 0x44, 0x0f, 0x08, 0x2c, 0x03, 0xd3, 0x02, 0x21, + 0x87, 0x20, 0xf8, 0xf7, 0xec, 0xfe, 0x20, 0x1c, + 0x10, 0xbd, 0x00, 0x29, 0x02, 0xd0, 0x00, 0x68, + 0x80, 0x0d, 0x70, 0x47, 0x40, 0x68, 0x80, 0x05, + 0x80, 0x0d, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x84, 0x00, 0x00, 0x10, 0xb5, 0x40, 0x68, + 0x40, 0x01, 0x44, 0x0f, 0x05, 0x2c, 0x03, 0xd3, + 0x05, 0x21, 0x87, 0x20, 0xf8, 0xf7, 0xd6, 0xfe, + 0x20, 0x1c, 0x10, 0xbd, 0xf8, 0xb5, 0x05, 0x1c, + 0x88, 0x0a, 0x00, 0x90, 0x1c, 0x48, 0x8e, 0x05, + 0xc0, 0x69, 0xb6, 0x0d, 0x17, 0x1c, 0x1c, 0x1c, + 0x00, 0x28, 0x05, 0xd1, 0x18, 0x48, 0x81, 0x69, + 0x8d, 0x42, 0x1d, 0xd0, 0x85, 0x61, 0x11, 0xe0, + 0x3c, 0x00, 0x20, 0x85, 0x00, 0x00, 0xfd, 0xf7, + 0xe8, 0xf8, 0x15, 0x49, 0x09, 0x78, 0x0e, 0x29, + 0x07, 0xd1, 0x00, 0x28, 0x05, 0xd0, 0x11, 0x49, + 0x50, 0x31, 0x06, 0x23, 0xc9, 0x56, 0xf9, 0xf7, + 0x06, 0xfa, 0x0e, 0x49, 0x00, 0x20, 0xc8, 0x61, + 0x8d, 0x61, 0x29, 0x1c, 0x20, 0x1c, 0xf8, 0xf7, + 0xe2, 0xf8, 0x79, 0x43, 0x20, 0x1c, 0xf8, 0xf7, + 0xde, 0xf8, 0x08, 0x48, 0x41, 0x61, 0x20, 0x1c, + 0x00, 0x99, 0x3c, 0x00, 0x5c, 0x85, 0x00, 0x00, + 0xf8, 0xf7, 0xd8, 0xf8, 0x05, 0x48, 0x40, 0x69, + 0x0a, 0x18, 0xa2, 0x42, 0x01, 0xd2, 0x40, 0x18, + 0x01, 0xe0, 0x40, 0x18, 0x00, 0x1b, 0x80, 0x02, + 0x80, 0x19, 0xf8, 0xbd, 0xac, 0x7c, 0x01, 0x00, + 0x11, 0x67, 0x01, 0x00, 0xf8, 0xb5, 0x0f, 0x1c, + 0x06, 0x1c, 0x14, 0x1c, 0x1d, 0x1c, 0x07, 0xf0, + 0xa1, 0xfc, 0x0e, 0x28, 0x09, 0xd1, 0x20, 0x1c, + 0x02, 0xf0, 0xfc, 0xfb, 0x3c, 0x00, 0x98, 0x85, + 0x00, 0x00, 0x00, 0x28, 0x04, 0xd0, 0x08, 0x48, + 0x00, 0x78, 0x02, 0xf0, 0xe4, 0xfb, 0x04, 0x1c, + 0x01, 0x21, 0x00, 0x2e, 0xac, 0x72, 0x00, 0xd0, + 0x39, 0x1c, 0x20, 0x1c, 0x02, 0xf0, 0x07, 0xfc, + 0x28, 0x60, 0x00, 0x20, 0x28, 0x72, 0x6c, 0x72, + 0xf8, 0xbd, 0x90, 0x57, 0x01, 0x00, 0x03, 0x1c, + 0x0a, 0x48, 0x10, 0xb5, 0x00, 0x24, 0x02, 0x1c, + 0xa0, 0x32, 0x03, 0xe0, 0x81, 0x88, 0x3c, 0x00, + 0xd4, 0x85, 0x00, 0x00, 0x99, 0x42, 0x09, 0xd2, + 0x20, 0x30, 0x82, 0x42, 0xf9, 0xd1, 0x00, 0x2c, + 0x04, 0xd1, 0x02, 0x21, 0x8e, 0x20, 0xf8, 0xf7, + 0x5d, 0xfe, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0xd0, 0x5c, 0x01, 0x00, 0xff, 0xb5, 0x06, 0x1c, + 0x00, 0x20, 0x81, 0xb0, 0x10, 0x60, 0x1f, 0x1c, + 0x01, 0x25, 0x14, 0x1c, 0x30, 0x1c, 0xff, 0xf7, + 0x6d, 0xff, 0x05, 0x28, 0x12, 0xd2, 0x02, 0xa3, + 0x3c, 0x00, 0x10, 0x86, 0x00, 0x00, 0x1b, 0x5c, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x03, 0x03, + 0x03, 0x03, 0x08, 0x00, 0x39, 0x1c, 0x30, 0x1c, + 0xff, 0xf7, 0x55, 0xff, 0x03, 0xe0, 0x02, 0x98, + 0xf8, 0xf7, 0xeb, 0xf8, 0x01, 0x30, 0x20, 0x60, + 0x04, 0xe0, 0x05, 0x21, 0x87, 0x20, 0xf8, 0xf7, + 0x34, 0xfe, 0x00, 0x25, 0x20, 0x68, 0x80, 0x28, + 0x04, 0xd9, 0x06, 0x21, 0x87, 0x20, 0xf8, 0xf7, + 0x2c, 0xfe, 0x3c, 0x00, 0x4c, 0x86, 0x00, 0x00, + 0x00, 0x25, 0x28, 0x1c, 0x05, 0xb0, 0xf0, 0xbd, + 0x70, 0xb5, 0x17, 0x4c, 0x60, 0x6c, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x1d, 0xe0, 0x16, 0x4e, + 0x14, 0x4d, 0x31, 0x88, 0xa0, 0x6c, 0x00, 0x28, + 0x08, 0xd0, 0x28, 0x78, 0x81, 0x42, 0x05, 0xd9, + 0xf8, 0xf7, 0x4c, 0xf8, 0x01, 0x38, 0xfa, 0xf7, + 0x51, 0xfe, 0x0e, 0xe0, 0xe0, 0x6c, 0x00, 0x28, + 0x0a, 0xd0, 0x00, 0x20, 0x3c, 0x00, 0x88, 0x86, + 0x00, 0x00, 0xfa, 0xf7, 0x4a, 0xfe, 0x29, 0x78, + 0x32, 0x88, 0x91, 0x42, 0x04, 0xd9, 0x90, 0x42, + 0x02, 0xd9, 0x10, 0x1c, 0x00, 0xe0, 0x08, 0x1c, + 0xfa, 0xf7, 0xdf, 0xfd, 0xe1, 0x6b, 0x44, 0x1a, + 0x0a, 0xf0, 0x81, 0xfb, 0x20, 0x1a, 0x00, 0xd5, + 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0xf8, 0x60, 0x01, 0x00, 0xfc, 0x60, + 0x01, 0x00, 0xff, 0xb5, 0x27, 0x4e, 0x3c, 0x00, + 0xc4, 0x86, 0x00, 0x00, 0x04, 0x1c, 0xb0, 0x79, + 0x0f, 0x1c, 0x15, 0x1c, 0x81, 0xb0, 0x00, 0x90, + 0x0a, 0xf0, 0x6c, 0xfb, 0xc1, 0x19, 0x23, 0x48, + 0x07, 0x68, 0x00, 0x2f, 0x05, 0xd1, 0x0a, 0x21, + 0x80, 0x20, 0xf8, 0xf7, 0xdf, 0xfd, 0x05, 0xb0, + 0xf0, 0xbd, 0x1e, 0x48, 0x40, 0x68, 0x84, 0x46, + 0x00, 0x28, 0x01, 0xd1, 0x00, 0x22, 0x0e, 0xe0, + 0x82, 0x68, 0x03, 0x68, 0xab, 0x42, 0x07, 0xd1, + 0x3c, 0x00, 0x00, 0x87, 0x00, 0x00, 0x03, 0x79, + 0xa3, 0x42, 0x04, 0xd1, 0x0b, 0x21, 0x80, 0x20, + 0xf8, 0xf7, 0xcb, 0xfd, 0x23, 0xe0, 0xc0, 0x68, + 0x00, 0x28, 0xf1, 0xd1, 0x13, 0x4b, 0xf8, 0x68, + 0x18, 0x60, 0x3d, 0x60, 0x3c, 0x71, 0xb9, 0x60, + 0x04, 0x98, 0x8d, 0x1a, 0x38, 0x61, 0x60, 0x46, + 0x00, 0x23, 0x05, 0xe0, 0x84, 0x68, 0xa4, 0x1a, + 0xac, 0x42, 0x03, 0xda, 0x03, 0x1c, 0xc0, 0x68, + 0x00, 0x28, 0x3c, 0x00, 0x3c, 0x87, 0x00, 0x00, + 0xf7, 0xd1, 0xf8, 0x60, 0x00, 0x2b, 0x08, 0xd1, + 0x07, 0x48, 0x3b, 0x1c, 0x47, 0x60, 0x08, 0x48, + 0x06, 0x4a, 0x00, 0x88, 0x0a, 0xf0, 0x8a, 0xfb, + 0x00, 0xe0, 0xdf, 0x60, 0x00, 0x98, 0xb0, 0x71, + 0xc3, 0xe7, 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, + 0x7c, 0x5d, 0x01, 0x00, 0x21, 0x38, 0x01, 0x00, + 0x2c, 0x74, 0x01, 0x00, 0xf3, 0xb5, 0x83, 0xb0, + 0x04, 0x1c, 0x09, 0xd0, 0x3c, 0x00, 0x78, 0x87, + 0x00, 0x00, 0x20, 0x1c, 0x04, 0x99, 0x09, 0xf0, + 0x8e, 0xfb, 0x00, 0x28, 0x03, 0xd0, 0x20, 0x1c, + 0x30, 0x30, 0x05, 0xb0, 0xf0, 0xbd, 0x0a, 0xf0, + 0x0e, 0xfb, 0x1e, 0x4a, 0x00, 0x26, 0x04, 0x9f, + 0x01, 0x96, 0x00, 0x90, 0x02, 0x92, 0x02, 0x9c, + 0x00, 0x25, 0x39, 0x1c, 0x20, 0x1c, 0x14, 0x30, + 0x02, 0xf0, 0xc5, 0xfa, 0x00, 0x28, 0x01, 0xd0, + 0x26, 0x1c, 0x03, 0xe0, 0x01, 0x35, 0x3c, 0x00, + 0xb4, 0x87, 0x00, 0x00, 0x1c, 0x34, 0x04, 0x2d, + 0xf2, 0xd3, 0x00, 0x2e, 0x22, 0xd1, 0x01, 0x98, + 0x13, 0x4f, 0x01, 0x30, 0x01, 0x90, 0x02, 0x28, + 0xe8, 0xd3, 0x01, 0x21, 0xc9, 0x06, 0x02, 0x9a, + 0x00, 0x20, 0x13, 0x69, 0x00, 0x9c, 0xe3, 0x1a, + 0x8b, 0x42, 0x01, 0xdd, 0x19, 0x1c, 0x16, 0x1c, + 0x01, 0x30, 0x1c, 0x32, 0x04, 0x28, 0xf4, 0xd3, + 0x30, 0x68, 0x00, 0x28, 0x01, 0xd0, 0xf8, 0xf7, + 0x3c, 0x00, 0xf0, 0x87, 0x00, 0x00, 0xd3, 0xfe, + 0x30, 0x1c, 0xfd, 0xf7, 0x4a, 0xff, 0x30, 0x1c, + 0x14, 0x30, 0x06, 0x22, 0x04, 0x99, 0xf7, 0xf7, + 0x7a, 0xfe, 0x00, 0x9c, 0x30, 0x1c, 0x34, 0x61, + 0xbd, 0xe7, 0x30, 0x6a, 0x01, 0x00, 0x34, 0x42, + 0x01, 0x00, 0x09, 0x49, 0x10, 0xb5, 0x4c, 0x69, + 0x03, 0xe0, 0xe1, 0x68, 0x81, 0x42, 0x03, 0xd0, + 0x24, 0x68, 0x00, 0x2c, 0xf9, 0xd1, 0x01, 0xe0, + 0x00, 0x2c, 0x3c, 0x00, 0x2c, 0x88, 0x00, 0x00, + 0x03, 0xd1, 0x02, 0x21, 0x02, 0x20, 0xf8, 0xf7, + 0x37, 0xfd, 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, + 0xfc, 0x5a, 0x01, 0x00, 0x10, 0xb5, 0xc3, 0x07, + 0x06, 0xd5, 0x08, 0x4b, 0x5c, 0x69, 0x0c, 0x43, + 0x5c, 0x61, 0x1c, 0x7e, 0x14, 0x43, 0x1c, 0x76, + 0x80, 0x07, 0x06, 0xd5, 0x04, 0x48, 0x43, 0x69, + 0x19, 0x43, 0x41, 0x61, 0x01, 0x7e, 0x11, 0x43, + 0x01, 0x76, 0x10, 0xbd, 0x3c, 0x00, 0x68, 0x88, + 0x00, 0x00, 0xfc, 0x57, 0x01, 0x00, 0x18, 0x58, + 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x16, 0x1c, 0x00, 0xf0, 0x08, 0xf8, 0xa0, 0x07, + 0xc0, 0x17, 0x01, 0x30, 0x32, 0x1c, 0x29, 0x1c, + 0x00, 0xf0, 0x21, 0xf8, 0x70, 0xbd, 0x10, 0xb5, + 0xc3, 0x07, 0x06, 0xd5, 0x08, 0x4b, 0x5c, 0x69, + 0x8c, 0x43, 0x5c, 0x61, 0x1c, 0x7e, 0x94, 0x43, + 0x1c, 0x76, 0x80, 0x07, 0x06, 0xd5, 0x3c, 0x00, + 0xa4, 0x88, 0x00, 0x00, 0x04, 0x48, 0x43, 0x69, + 0x8b, 0x43, 0x43, 0x61, 0x01, 0x7e, 0x91, 0x43, + 0x01, 0x76, 0x10, 0xbd, 0xfc, 0x57, 0x01, 0x00, + 0x18, 0x58, 0x01, 0x00, 0x03, 0x22, 0x11, 0x1f, + 0x80, 0xb5, 0x01, 0x20, 0x00, 0xf0, 0x02, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x30, 0xb5, 0x15, 0x1c, + 0x0c, 0x1c, 0x00, 0x28, 0x87, 0xb0, 0x02, 0xd0, + 0x1c, 0x22, 0x22, 0x49, 0x01, 0xe0, 0x22, 0x49, + 0x3c, 0x00, 0xe0, 0x88, 0x00, 0x00, 0x1c, 0x22, + 0x68, 0x46, 0xf7, 0xf7, 0x64, 0xfe, 0x05, 0x99, + 0x00, 0xab, 0x1a, 0x7e, 0x8c, 0x43, 0x20, 0x1c, + 0x95, 0x43, 0x02, 0x9a, 0x29, 0x1c, 0x02, 0x40, + 0x02, 0x92, 0x01, 0x9a, 0x02, 0x40, 0x01, 0x92, + 0x00, 0x9a, 0x02, 0x40, 0x00, 0x92, 0x03, 0x9a, + 0x02, 0x40, 0x03, 0x92, 0x98, 0x7c, 0x08, 0x40, + 0x98, 0x74, 0x58, 0x7c, 0x08, 0x40, 0x58, 0x74, + 0x18, 0x7c, 0x3c, 0x00, 0x1c, 0x89, 0x00, 0x00, + 0x08, 0x40, 0x18, 0x74, 0xd8, 0x7c, 0x08, 0x40, + 0xd8, 0x74, 0x02, 0x99, 0x10, 0x48, 0x41, 0x61, + 0x01, 0xaa, 0x06, 0xca, 0x91, 0x43, 0x81, 0x61, + 0x81, 0x68, 0x01, 0x9a, 0x11, 0x43, 0x81, 0x60, + 0x81, 0x68, 0x00, 0x9a, 0x91, 0x43, 0x81, 0x60, + 0x00, 0xaa, 0x06, 0xca, 0x11, 0x43, 0x42, 0x68, + 0x11, 0x43, 0x41, 0x60, 0x41, 0x68, 0x03, 0x9a, + 0x91, 0x43, 0x41, 0x60, 0x3c, 0x00, 0x58, 0x89, + 0x00, 0x00, 0x04, 0xa8, 0x0b, 0xf0, 0x01, 0xf8, + 0x07, 0xb0, 0x30, 0xbd, 0x00, 0x00, 0xfc, 0x57, + 0x01, 0x00, 0x18, 0x58, 0x01, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x01, 0x1c, + 0x01, 0x20, 0x08, 0xf0, 0xe0, 0xf9, 0x00, 0x2c, + 0x02, 0xd0, 0x03, 0xf0, 0x1c, 0xff, 0x10, 0xbd, + 0xfe, 0xf7, 0xd1, 0xfc, 0x10, 0xbd, 0xf0, 0xb5, + 0x0c, 0x1c, 0x01, 0x0e, 0x01, 0x23, 0x3c, 0x00, + 0x94, 0x89, 0x00, 0x00, 0x1b, 0x06, 0x09, 0x06, + 0x99, 0x42, 0x9f, 0xb0, 0x28, 0xd1, 0x17, 0x49, + 0x08, 0x40, 0x00, 0x21, 0x1a, 0x28, 0x00, 0xd3, + 0x02, 0x21, 0x00, 0x29, 0x19, 0xd1, 0xc5, 0x00, + 0x13, 0x4f, 0x10, 0xa8, 0xee, 0x19, 0xb2, 0x88, + 0x21, 0x68, 0xf7, 0xf7, 0x9d, 0xfd, 0x20, 0x1c, + 0xf8, 0xf7, 0xea, 0xfd, 0x7a, 0x59, 0x01, 0xa9, + 0x10, 0xa8, 0xf7, 0xf7, 0x07, 0xfd, 0x00, 0x28, + 0x3c, 0x00, 0xd0, 0x89, 0x00, 0x00, 0x05, 0xd0, + 0x10, 0x98, 0x01, 0xa9, 0x01, 0x90, 0xb0, 0x79, + 0x00, 0xf0, 0x9d, 0xf8, 0x1f, 0xb0, 0xf0, 0xbd, + 0x2a, 0x20, 0xf8, 0xf7, 0x5e, 0xfc, 0x20, 0x1c, + 0xf8, 0xf7, 0xd5, 0xfd, 0xf6, 0xe7, 0x03, 0x21, + 0x2a, 0x20, 0xf8, 0xf7, 0x56, 0xfc, 0xf1, 0xe7, + 0x00, 0x00, 0x7f, 0xff, 0xff, 0x00, 0x24, 0x45, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x1c, 0x80, 0x28, + 0x02, 0xd0, 0x3c, 0x00, 0x0c, 0x8a, 0x00, 0x00, + 0x81, 0x28, 0x08, 0xd1, 0x03, 0xe0, 0x20, 0x1c, + 0x00, 0xf0, 0x06, 0xf9, 0x10, 0xbd, 0x20, 0x1c, + 0xf8, 0xf7, 0xbc, 0xfd, 0x10, 0xbd, 0x03, 0x21, + 0x2c, 0x20, 0xf8, 0xf7, 0x3d, 0xfc, 0xf6, 0xe7, + 0xf0, 0xb5, 0x0c, 0x1c, 0x00, 0x21, 0x8b, 0xb0, + 0x0a, 0x91, 0x01, 0x0e, 0x01, 0x23, 0x1b, 0x06, + 0x09, 0x06, 0x99, 0x42, 0x2a, 0xd1, 0x18, 0x49, + 0x08, 0x40, 0x06, 0x1c, 0x3c, 0x00, 0x48, 0x8a, + 0x00, 0x00, 0x06, 0x2e, 0x01, 0xd3, 0x07, 0x21, + 0x24, 0xe0, 0x20, 0x89, 0xf8, 0xf7, 0xf1, 0xfe, + 0x22, 0x89, 0x21, 0x68, 0x05, 0x1c, 0xf7, 0xf7, + 0x4c, 0xfd, 0x20, 0x1c, 0xf8, 0xf7, 0x99, 0xfd, + 0xf4, 0x00, 0x0f, 0x4e, 0x28, 0x1c, 0x0a, 0xaa, + 0x69, 0x46, 0x33, 0x59, 0xf7, 0xf7, 0xb4, 0xfc, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x28, 0x07, 0xd1, + 0x28, 0x68, 0x69, 0x46, 0x00, 0x90, 0x3c, 0x00, + 0x84, 0x8a, 0x00, 0x00, 0xa0, 0x19, 0x00, 0x79, + 0x0a, 0x9a, 0x00, 0xf0, 0x09, 0xf9, 0x28, 0x1c, + 0xf8, 0xf7, 0xb0, 0xfe, 0x0b, 0xb0, 0xf0, 0xbd, + 0x01, 0x21, 0x2b, 0x20, 0xf8, 0xf7, 0x02, 0xfc, + 0xf8, 0xe7, 0x00, 0x00, 0x7f, 0xff, 0xff, 0x00, + 0x28, 0x46, 0x01, 0x00, 0x0a, 0x1c, 0x01, 0x0e, + 0x01, 0x23, 0x1b, 0x06, 0x09, 0x06, 0x99, 0x42, + 0x80, 0xb5, 0x08, 0xd0, 0x5b, 0x00, 0x99, 0x42, + 0x3c, 0x00, 0xc0, 0x8a, 0x00, 0x00, 0x0b, 0xd1, + 0x00, 0x06, 0x00, 0x0e, 0x11, 0x1c, 0x00, 0xf0, + 0x0e, 0xf9, 0x80, 0xbd, 0x05, 0x49, 0x01, 0x40, + 0x10, 0x1c, 0x05, 0xf0, 0xa2, 0xf9, 0x80, 0xbd, + 0x01, 0x21, 0x2d, 0x20, 0xf8, 0xf7, 0xe1, 0xfb, + 0x80, 0xbd, 0x7f, 0xff, 0xff, 0x00, 0x80, 0xb5, + 0x01, 0x1c, 0x0f, 0x20, 0x00, 0xf0, 0x13, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x01, 0x1c, 0x04, 0x20, + 0x00, 0xf0, 0x3c, 0x00, 0xfc, 0x8a, 0x00, 0x00, + 0x0d, 0xf8, 0x80, 0xbd, 0x80, 0xb5, 0x01, 0x1c, + 0x17, 0x20, 0x00, 0xf0, 0x07, 0xf8, 0x80, 0xbd, + 0x80, 0xb5, 0x01, 0x1c, 0x01, 0x20, 0x00, 0xf0, + 0x01, 0xf8, 0x80, 0xbd, 0xf8, 0xb5, 0x04, 0x1c, + 0x06, 0x1c, 0x80, 0x20, 0x84, 0x43, 0x0f, 0x1c, + 0x19, 0x2c, 0x01, 0xd3, 0xf8, 0xf7, 0xea, 0xfb, + 0x08, 0x48, 0x04, 0x5d, 0x21, 0x1c, 0x00, 0x20, + 0xf8, 0xf7, 0x50, 0xfd, 0x3c, 0x00, 0x38, 0x8b, + 0x00, 0x00, 0x05, 0x1c, 0x22, 0x1c, 0x39, 0x1c, + 0x00, 0x68, 0xf7, 0xf7, 0xda, 0xfc, 0x2a, 0x1c, + 0x31, 0x1c, 0x07, 0x20, 0xf8, 0xf7, 0x11, 0xf9, + 0xf8, 0xbd, 0xf4, 0x45, 0x01, 0x00, 0xf8, 0xb5, + 0x0d, 0x1c, 0x16, 0x1c, 0x04, 0x1c, 0x1f, 0x1c, + 0x08, 0x21, 0x00, 0x20, 0xf8, 0xf7, 0x39, 0xfd, + 0x14, 0x22, 0x01, 0x68, 0x0e, 0x4b, 0x72, 0x43, + 0xd2, 0x18, 0x0c, 0x71, 0x12, 0x7c, 0x3c, 0x00, + 0x74, 0x8b, 0x00, 0x00, 0x4a, 0x71, 0x0d, 0x60, + 0x0b, 0x4a, 0x8f, 0x71, 0x12, 0x68, 0x7f, 0x2a, + 0x03, 0xd9, 0x52, 0x05, 0x52, 0x0e, 0x80, 0x23, + 0x1a, 0x43, 0xca, 0x71, 0x07, 0x4a, 0x00, 0x23, + 0x51, 0x68, 0x01, 0x31, 0x51, 0x60, 0x02, 0x1c, + 0x81, 0x21, 0x00, 0x20, 0xf8, 0xf7, 0x08, 0xf9, + 0xf8, 0xbd, 0x00, 0x00, 0x74, 0x40, 0x01, 0x00, + 0xfc, 0x5a, 0x01, 0x00, 0x80, 0x6e, 0x01, 0x00, + 0x3c, 0x00, 0xb0, 0x8b, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x08, 0x21, 0x00, 0x20, 0xf8, 0xf7, + 0x0e, 0xfd, 0x21, 0x8b, 0xe2, 0x7d, 0x05, 0x1c, + 0x09, 0x05, 0x52, 0x07, 0x52, 0x0f, 0x49, 0x0c, + 0x00, 0x68, 0x11, 0x43, 0x81, 0x80, 0xa1, 0x7d, + 0x14, 0x23, 0x0e, 0x4a, 0x59, 0x43, 0x89, 0x18, + 0x09, 0x7c, 0xc1, 0x71, 0xe1, 0x6a, 0x01, 0x60, + 0xe1, 0x68, 0x28, 0x1c, 0xf8, 0xf7, 0x17, 0xfc, + 0x0a, 0x48, 0x3c, 0x00, 0xec, 0x8b, 0x00, 0x00, + 0x00, 0x68, 0x00, 0x28, 0x01, 0xd0, 0xf7, 0xf7, + 0xf1, 0xfb, 0x07, 0x49, 0x04, 0x31, 0x88, 0x68, + 0x01, 0x30, 0x88, 0x60, 0x00, 0x21, 0x2a, 0x1c, + 0x00, 0x20, 0x23, 0x6b, 0xf8, 0xf7, 0xd2, 0xf8, + 0x01, 0x20, 0xb0, 0xbd, 0x74, 0x40, 0x01, 0x00, + 0x7c, 0x6e, 0x01, 0x00, 0x01, 0x48, 0x80, 0x68, + 0x70, 0x47, 0x00, 0x00, 0x80, 0x6e, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x3c, 0x00, 0x28, 0x8c, + 0x00, 0x00, 0x92, 0xb0, 0x01, 0x68, 0x68, 0x46, + 0x08, 0x22, 0xf7, 0xf7, 0x62, 0xfc, 0x00, 0xab, + 0x98, 0x88, 0x40, 0x07, 0x40, 0x0f, 0xd8, 0x77, + 0x98, 0x88, 0x40, 0x04, 0x00, 0x0d, 0x18, 0x84, + 0xd8, 0x88, 0x58, 0x84, 0x00, 0x98, 0x0d, 0x90, + 0x05, 0x94, 0x20, 0x89, 0x08, 0x38, 0x20, 0x81, + 0x05, 0x98, 0x01, 0x68, 0x08, 0x31, 0x01, 0x60, + 0x00, 0x20, 0x0a, 0x90, 0x0c, 0x90, 0x3c, 0x00, + 0x64, 0x8c, 0x00, 0x00, 0x00, 0x21, 0x11, 0x20, + 0x09, 0xf0, 0x78, 0xfb, 0x05, 0x49, 0x06, 0x4a, + 0x08, 0x68, 0x01, 0x30, 0x08, 0x60, 0x02, 0x21, + 0x02, 0xa8, 0x01, 0xf0, 0xcd, 0xfc, 0x12, 0xb0, + 0x10, 0xbd, 0x00, 0x00, 0x80, 0x6e, 0x01, 0x00, + 0x55, 0x8b, 0x00, 0x00, 0x02, 0x1c, 0x01, 0x20, + 0x00, 0x06, 0x08, 0x43, 0x80, 0xb5, 0x2b, 0x21, + 0x0a, 0xf0, 0x8a, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x8c, 0x00, 0x00, 0xf7, 0xb5, + 0x04, 0x1c, 0x06, 0x1c, 0x80, 0x20, 0x84, 0x43, + 0x17, 0x1c, 0x06, 0x2c, 0x01, 0xd3, 0xf8, 0xf7, + 0x26, 0xfb, 0x0b, 0x48, 0x05, 0x5d, 0x29, 0x1c, + 0x00, 0x20, 0xf8, 0xf7, 0x8c, 0xfc, 0x04, 0x1c, + 0x00, 0x68, 0x01, 0x99, 0x2a, 0x1c, 0xf7, 0xf7, + 0x16, 0xfc, 0x39, 0x1c, 0x20, 0x1c, 0xf8, 0xf7, + 0xa2, 0xfb, 0x22, 0x1c, 0x31, 0x1c, 0x00, 0x23, + 0x02, 0x20, 0x3c, 0x00, 0xdc, 0x8c, 0x00, 0x00, + 0xf8, 0xf7, 0x68, 0xf8, 0xfe, 0xbd, 0x00, 0x00, + 0x20, 0x46, 0x01, 0x00, 0x0a, 0x1c, 0x01, 0x1c, + 0x80, 0xb5, 0x00, 0x23, 0x01, 0x20, 0xf8, 0xf7, + 0x5d, 0xf8, 0x80, 0xbd, 0xff, 0xb5, 0x9f, 0xb0, + 0x1f, 0x1c, 0x05, 0x1c, 0x0a, 0x30, 0x1e, 0x90, + 0x1c, 0xaa, 0x1d, 0xa9, 0x0a, 0xf0, 0x00, 0xff, + 0x00, 0x28, 0x71, 0xd0, 0x00, 0x2f, 0x09, 0xd0, + 0x0a, 0x21, 0x00, 0x20, 0x3c, 0x00, 0x18, 0x8d, + 0x00, 0x00, 0xf8, 0xf7, 0x5e, 0xfc, 0x06, 0x68, + 0x04, 0x1c, 0x30, 0x1d, 0xfa, 0xf7, 0xaf, 0xfa, + 0x05, 0xe0, 0x04, 0x21, 0x00, 0x20, 0xf8, 0xf7, + 0x54, 0xfc, 0x06, 0x68, 0x04, 0x1c, 0x28, 0x89, + 0x36, 0x49, 0x01, 0x22, 0x08, 0x80, 0x70, 0x80, + 0xe8, 0x88, 0x14, 0xa9, 0x30, 0x80, 0x19, 0xa8, + 0xfc, 0xf7, 0xf5, 0xfc, 0xfc, 0xf7, 0xff, 0xfb, + 0x01, 0x1c, 0xff, 0x31, 0x21, 0x31, 0x3c, 0x00, + 0x54, 0x8d, 0x00, 0x00, 0x20, 0x1c, 0x01, 0xf0, + 0xef, 0xf8, 0x19, 0xa9, 0x20, 0x1c, 0x01, 0xf0, + 0xeb, 0xf8, 0x14, 0xa9, 0x20, 0x1c, 0x01, 0xf0, + 0xe7, 0xf8, 0x20, 0x1c, 0x20, 0x99, 0xfd, 0xf7, + 0x4b, 0xfd, 0x00, 0x22, 0x02, 0x21, 0x01, 0xf0, + 0x33, 0xfd, 0x06, 0x1c, 0x1c, 0x99, 0x00, 0x20, + 0x88, 0x61, 0x30, 0x1c, 0xf8, 0xf7, 0x1c, 0xfa, + 0x00, 0x2e, 0x0b, 0xd0, 0x30, 0x7a, 0x00, 0x28, + 0x3c, 0x00, 0x90, 0x8d, 0x00, 0x00, 0x02, 0xd0, + 0x40, 0x21, 0x08, 0x43, 0x30, 0x72, 0x1c, 0x98, + 0x02, 0x22, 0x81, 0x69, 0x11, 0x43, 0x81, 0x61, + 0x04, 0xe0, 0x1c, 0x99, 0x02, 0x22, 0x88, 0x69, + 0x90, 0x43, 0x88, 0x61, 0x1d, 0xaa, 0x06, 0xca, + 0x01, 0xa8, 0x05, 0xf0, 0x58, 0xfb, 0x09, 0xa8, + 0x00, 0x2f, 0x02, 0xd0, 0x02, 0x22, 0x42, 0x72, + 0x01, 0xe0, 0x00, 0x21, 0x41, 0x72, 0x04, 0x94, + 0x01, 0xa8, 0x3c, 0x00, 0xcc, 0x8d, 0x00, 0x00, + 0x04, 0xf0, 0x7a, 0xfb, 0x01, 0x21, 0x1c, 0x98, + 0x08, 0xf0, 0xc8, 0xff, 0x00, 0x2f, 0x04, 0xd0, + 0x1c, 0x98, 0x01, 0x22, 0x81, 0x69, 0x11, 0x43, + 0x81, 0x61, 0xa8, 0x88, 0x1c, 0x9c, 0x01, 0xf0, + 0x9f, 0xfe, 0x02, 0x1c, 0x21, 0x1c, 0x00, 0xe0, + 0x04, 0xe0, 0x07, 0x48, 0x40, 0x88, 0x09, 0xf0, + 0x1f, 0xf8, 0x04, 0xe0, 0x3a, 0x1c, 0x00, 0x21, + 0x05, 0x20, 0xf9, 0xf7, 0x3c, 0x00, 0x08, 0x8e, + 0x00, 0x00, 0x9b, 0xf8, 0x00, 0x20, 0x23, 0xb0, + 0xf0, 0xbd, 0xfc, 0x60, 0x01, 0x00, 0x98, 0x7c, + 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, 0xc0, 0x68, + 0x05, 0x68, 0xa0, 0x1d, 0x01, 0xf0, 0x95, 0xff, + 0x00, 0x28, 0x45, 0xd0, 0x21, 0x1c, 0x14, 0x31, + 0x20, 0x1c, 0x6a, 0x46, 0x0a, 0xf0, 0x55, 0xfe, + 0x00, 0x28, 0x3d, 0xd0, 0xfc, 0xf7, 0x7d, 0xfa, + 0x00, 0x28, 0x39, 0xd1, 0x00, 0x98, 0x3c, 0x00, + 0x44, 0x8e, 0x00, 0x00, 0x4b, 0x21, 0x09, 0x5c, + 0x01, 0x29, 0x34, 0xd1, 0x04, 0x26, 0x09, 0xf0, + 0x19, 0xf9, 0x68, 0x88, 0x00, 0x28, 0x1b, 0xd1, + 0xa8, 0x88, 0x03, 0x21, 0x89, 0x03, 0x88, 0x43, + 0x15, 0x49, 0x00, 0x26, 0x08, 0x80, 0x01, 0x22, + 0x02, 0x21, 0x20, 0x69, 0x01, 0xf0, 0xb8, 0xfc, + 0x04, 0x1c, 0x14, 0xd0, 0x00, 0x98, 0x80, 0x69, + 0x80, 0x07, 0x10, 0xd5, 0xf8, 0xf7, 0x9a, 0xf9, + 0x3c, 0x00, 0x80, 0x8e, 0x00, 0x00, 0x20, 0x1c, + 0xf8, 0xf7, 0xdd, 0xf8, 0x00, 0x28, 0x09, 0xd1, + 0xf8, 0xf7, 0x7f, 0xf9, 0x01, 0x26, 0x00, 0x98, + 0x02, 0x22, 0x81, 0x69, 0x91, 0x43, 0x81, 0x61, + 0x00, 0x21, 0x01, 0xe0, 0x00, 0x98, 0x02, 0x21, + 0x08, 0xf0, 0x61, 0xff, 0x00, 0x98, 0x80, 0x69, + 0xa9, 0x88, 0xc2, 0x07, 0xd2, 0x0f, 0x30, 0x1c, + 0xf9, 0xf7, 0x45, 0xf8, 0xf8, 0xbd, 0xfa, 0x60, + 0x01, 0x00, 0x3c, 0x00, 0xbc, 0x8e, 0x00, 0x00, + 0x1c, 0xb5, 0x04, 0x69, 0x00, 0x23, 0x00, 0x22, + 0x00, 0x2c, 0x13, 0xd1, 0x4b, 0x24, 0x24, 0x5c, + 0x02, 0x2c, 0x03, 0xd1, 0x02, 0x29, 0x05, 0xd0, + 0x01, 0x22, 0x03, 0xe0, 0x02, 0x29, 0x01, 0xd1, + 0x01, 0x22, 0x01, 0x23, 0x00, 0x2a, 0x05, 0xd0, + 0x00, 0x90, 0x04, 0x20, 0x01, 0x93, 0x69, 0x46, + 0x09, 0xf0, 0x36, 0xfa, 0x1c, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x3c, 0x00, 0xf8, 0x8e, + 0x00, 0x00, 0xf2, 0x21, 0x0f, 0x20, 0x0c, 0x4d, + 0x0a, 0xf0, 0x99, 0xfb, 0x28, 0x78, 0x08, 0x28, + 0x0b, 0xd2, 0x01, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x07, 0x03, 0x03, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x00, 0x2c, 0x01, 0xd1, 0x05, 0xf0, + 0xbc, 0xfb, 0xb0, 0xbd, 0x01, 0x2c, 0xfc, 0xd1, + 0xff, 0x20, 0x07, 0xf0, 0x38, 0xfa, 0xb0, 0xbd, + 0x00, 0x00, 0x74, 0x66, 0x01, 0x00, 0x3c, 0x00, + 0x34, 0x8f, 0x00, 0x00, 0x8c, 0xb5, 0x05, 0x4a, + 0x00, 0xab, 0x11, 0x72, 0x00, 0x90, 0x19, 0x71, + 0x69, 0x46, 0x08, 0x20, 0x09, 0xf0, 0x0a, 0xfa, + 0x8c, 0xbd, 0x00, 0x00, 0xac, 0x7c, 0x01, 0x00, + 0xf3, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0x06, 0x27, + 0x85, 0xb0, 0x06, 0x68, 0x09, 0xf0, 0x26, 0xff, + 0x98, 0x49, 0x48, 0x63, 0x20, 0x69, 0x03, 0x21, + 0x01, 0xf0, 0x08, 0xfc, 0x96, 0x4d, 0x00, 0x28, + 0x3c, 0x00, 0x70, 0x8f, 0x00, 0x00, 0x4d, 0xd0, + 0x95, 0x49, 0x40, 0x31, 0x09, 0x79, 0x80, 0x78, + 0x81, 0x42, 0x47, 0xd1, 0x01, 0x21, 0x20, 0x69, + 0x01, 0xf0, 0xfb, 0xfb, 0x02, 0x90, 0x20, 0x69, + 0x32, 0x21, 0x01, 0xf0, 0xf6, 0xfb, 0x01, 0x90, + 0x02, 0x1c, 0x8d, 0x48, 0x02, 0x99, 0xfc, 0xf7, + 0x46, 0xff, 0x00, 0x28, 0x36, 0xd0, 0x00, 0x23, + 0x8a, 0x48, 0x02, 0x99, 0x01, 0x9a, 0xfc, 0xf7, + 0xe4, 0xfe, 0x3c, 0x00, 0xac, 0x8f, 0x00, 0x00, + 0x0b, 0x28, 0x2e, 0xd1, 0x86, 0x4a, 0x51, 0x88, + 0x70, 0x89, 0x41, 0x40, 0x03, 0x91, 0x0b, 0x1c, + 0x84, 0x49, 0x0b, 0x40, 0x25, 0xd1, 0x50, 0x80, + 0x03, 0x99, 0x17, 0x1c, 0x00, 0x29, 0x0b, 0xd0, + 0x03, 0x99, 0x48, 0x05, 0x02, 0xd5, 0x38, 0x1c, + 0xfc, 0xf7, 0x40, 0xfe, 0x03, 0x99, 0x88, 0x06, + 0x02, 0xd5, 0x38, 0x1c, 0xfc, 0xf7, 0x24, 0xfe, + 0x2a, 0x21, 0x20, 0x69, 0x3c, 0x00, 0xe8, 0x8f, + 0x00, 0x00, 0x01, 0xf0, 0xc8, 0xfb, 0x00, 0x28, + 0x0d, 0xd0, 0x80, 0x78, 0xe9, 0x69, 0x81, 0x42, + 0x09, 0xd0, 0xe8, 0x61, 0x38, 0x1c, 0xfc, 0xf7, + 0x16, 0xfe, 0x38, 0x1c, 0xfc, 0xf7, 0x07, 0xfe, + 0x38, 0x1c, 0xfc, 0xf7, 0x26, 0xfe, 0x00, 0x27, + 0x20, 0x1c, 0x20, 0x30, 0x04, 0x90, 0x40, 0x7a, + 0x08, 0x28, 0x71, 0xd1, 0x0a, 0xf0, 0xd1, 0xfc, + 0x00, 0x20, 0x68, 0x61, 0x00, 0x23, 0x3c, 0x00, + 0x24, 0x90, 0x00, 0x00, 0x2b, 0x61, 0xa8, 0x68, + 0x66, 0x49, 0x01, 0x30, 0xa8, 0x60, 0x30, 0x89, + 0x5c, 0x31, 0x88, 0x82, 0x01, 0xf0, 0x7a, 0xfd, + 0x62, 0x49, 0x5c, 0x31, 0x08, 0x61, 0x22, 0x6a, + 0x04, 0x98, 0x18, 0x21, 0x00, 0x7a, 0x01, 0xf0, + 0x33, 0xfe, 0xe1, 0x6a, 0x40, 0x18, 0x03, 0x90, + 0x5c, 0x48, 0x00, 0x6a, 0x00, 0x28, 0x0d, 0xd0, + 0x00, 0x2f, 0x0b, 0xd1, 0x59, 0x48, 0x01, 0x23, + 0x3c, 0x00, 0x60, 0x90, 0x00, 0x00, 0x5c, 0x30, + 0x01, 0x68, 0x1b, 0x07, 0x00, 0x22, 0x30, 0x68, + 0x09, 0xf0, 0x49, 0xff, 0x00, 0x28, 0x00, 0xd1, + 0x05, 0x27, 0x00, 0x21, 0xa0, 0x6b, 0x0a, 0xf0, + 0xce, 0xfc, 0x00, 0x21, 0x20, 0x6c, 0x0a, 0xf0, + 0xe8, 0xfc, 0x4f, 0x4b, 0x03, 0xce, 0x03, 0x9a, + 0x5c, 0x33, 0xfc, 0xf7, 0x88, 0xfd, 0x00, 0x20, + 0x4c, 0x4e, 0x05, 0x21, 0xb0, 0x63, 0x20, 0x69, + 0x01, 0xf0, 0x3c, 0x00, 0x9c, 0x90, 0x00, 0x00, + 0x6f, 0xfb, 0x01, 0x1c, 0x01, 0xd1, 0xf0, 0x60, + 0x1c, 0xe0, 0x01, 0x20, 0xf0, 0x60, 0x88, 0x78, + 0x45, 0x4a, 0x01, 0x32, 0x10, 0x70, 0xc8, 0x78, + 0x50, 0x70, 0x47, 0x4a, 0x10, 0x70, 0x30, 0x69, + 0x00, 0x28, 0x0a, 0xd0, 0x4a, 0x78, 0x08, 0x79, + 0x05, 0x31, 0x09, 0xf0, 0xdd, 0xfa, 0x31, 0x69, + 0xf7, 0xf7, 0x85, 0xf9, 0xf0, 0x68, 0x00, 0x28, + 0x04, 0xd0, 0x3b, 0x4a, 0x3c, 0x00, 0xd8, 0x90, + 0x00, 0x00, 0x01, 0x32, 0x10, 0x78, 0x00, 0x28, + 0x08, 0xd1, 0x00, 0x20, 0xa8, 0x61, 0x71, 0x6a, + 0x00, 0x29, 0x03, 0xd0, 0x20, 0x1c, 0x14, 0x30, + 0xf7, 0xf7, 0x74, 0xf9, 0x34, 0x4a, 0x5c, 0x32, + 0x10, 0x69, 0x31, 0x6a, 0x41, 0x18, 0x00, 0xe0, + 0x20, 0xe0, 0x0a, 0x23, 0xd0, 0x68, 0x0a, 0x22, + 0x09, 0xf0, 0xfb, 0xfe, 0x00, 0x28, 0x07, 0xd0, + 0x2d, 0x4a, 0x31, 0x6a, 0x5c, 0x32, 0x3c, 0x00, + 0x14, 0x91, 0x00, 0x00, 0xd0, 0x68, 0x40, 0x1a, + 0x11, 0x69, 0x40, 0x1a, 0x70, 0x60, 0x29, 0x4a, + 0x5c, 0x32, 0xd0, 0x68, 0x30, 0x62, 0xf0, 0x69, + 0x00, 0x28, 0x04, 0xd0, 0xfa, 0xf7, 0x00, 0xfd, + 0x01, 0x20, 0xfa, 0xf7, 0xa1, 0xfc, 0xfa, 0xf7, + 0x81, 0xfc, 0x27, 0x48, 0x00, 0x68, 0x03, 0xf0, + 0x07, 0xf9, 0x06, 0x98, 0x00, 0x28, 0x03, 0xd1, + 0x1e, 0x4e, 0x00, 0x23, 0xb3, 0x60, 0x16, 0xe0, + 0x3c, 0x00, 0x50, 0x91, 0x00, 0x00, 0x1c, 0x4e, + 0x01, 0x20, 0xb0, 0x60, 0x06, 0x98, 0x01, 0x68, + 0x40, 0x68, 0xb0, 0x65, 0x19, 0x48, 0x71, 0x65, + 0x54, 0x30, 0xc0, 0x88, 0x00, 0x28, 0x09, 0xd0, + 0xb1, 0x69, 0x00, 0x29, 0x06, 0xd0, 0x01, 0xf0, + 0xdc, 0xfc, 0x01, 0x1c, 0xe0, 0x6a, 0xb2, 0x69, + 0xf7, 0xf7, 0x2f, 0xf9, 0x00, 0x2f, 0x15, 0xd1, + 0x12, 0x48, 0x01, 0x69, 0x00, 0x29, 0x08, 0xd1, + 0x01, 0x21, 0x3c, 0x00, 0x8c, 0x91, 0x00, 0x00, + 0x01, 0x61, 0x2a, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0x00, 0x21, 0x00, 0x20, 0xf7, 0xf7, 0x20, 0xf9, + 0x09, 0x49, 0x00, 0x23, 0xcb, 0x62, 0x2b, 0x61, + 0x6b, 0x61, 0x06, 0xf0, 0xb5, 0xf8, 0x07, 0xb0, + 0xf0, 0xbd, 0x6b, 0x68, 0x06, 0x48, 0x00, 0x2b, + 0xf9, 0xd0, 0x02, 0x1d, 0x11, 0x1c, 0x38, 0x1c, + 0xf7, 0xf7, 0x0f, 0xf9, 0xf3, 0xe7, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x3c, 0x00, 0xc8, 0x91, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0xf4, 0x67, + 0x01, 0x00, 0x03, 0x08, 0x00, 0x00, 0xf8, 0x60, + 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, 0x08, 0xb5, + 0xf8, 0xf7, 0x2f, 0xfd, 0x00, 0x90, 0x00, 0xab, + 0x18, 0x88, 0x00, 0x28, 0x0c, 0xd0, 0x05, 0xf0, + 0x50, 0xff, 0x00, 0xab, 0x59, 0x88, 0x18, 0x88, + 0x05, 0xf0, 0x6d, 0xf9, 0xfe, 0xf7, 0x97, 0xf8, + 0x03, 0x20, 0xfb, 0xf7, 0x0e, 0xf8, 0x3c, 0x00, + 0x04, 0x92, 0x00, 0x00, 0x08, 0xbd, 0x01, 0x20, + 0xff, 0xf7, 0xb2, 0xfb, 0x00, 0x20, 0x08, 0xf0, + 0x8d, 0xfe, 0xf7, 0xe7, 0xf8, 0xb5, 0x4f, 0x49, + 0x8c, 0x68, 0x20, 0x6a, 0x00, 0x68, 0x05, 0x78, + 0xfc, 0xf7, 0x68, 0xfa, 0x00, 0x28, 0x12, 0xd0, + 0x2a, 0x07, 0x92, 0x0f, 0x01, 0x21, 0x01, 0x2a, + 0x00, 0xd0, 0x00, 0x21, 0x00, 0x29, 0x03, 0xd0, + 0x29, 0x06, 0x09, 0x0f, 0x0b, 0x29, 0x06, 0xd1, + 0x3c, 0x00, 0x40, 0x92, 0x00, 0x00, 0x2a, 0x21, + 0x09, 0x5d, 0x08, 0x18, 0x90, 0x30, 0x00, 0x7b, + 0xf9, 0xf7, 0x0d, 0xfc, 0x41, 0x4f, 0x3c, 0x3f, + 0xb8, 0x6b, 0x79, 0x6b, 0xf7, 0xf7, 0xc0, 0xf8, + 0xa0, 0x6c, 0x00, 0x26, 0xc6, 0x60, 0x60, 0x6b, + 0x80, 0x08, 0x04, 0xd0, 0xb8, 0x69, 0x01, 0x30, + 0xb8, 0x61, 0x06, 0xf0, 0xdc, 0xf9, 0x39, 0x4d, + 0x28, 0x69, 0x80, 0x05, 0x80, 0x0f, 0x08, 0xd1, + 0x78, 0x69, 0x3c, 0x00, 0x7c, 0x92, 0x00, 0x00, + 0x04, 0x21, 0x01, 0x30, 0x78, 0x61, 0x60, 0x6b, + 0x40, 0x08, 0x40, 0x00, 0x08, 0x43, 0x60, 0x63, + 0xb8, 0x6a, 0x00, 0x28, 0x03, 0xd0, 0x60, 0x6b, + 0x08, 0x21, 0x08, 0x43, 0x60, 0x63, 0x20, 0x1c, + 0x20, 0x30, 0x00, 0x90, 0x39, 0x68, 0xf7, 0xf7, + 0x9a, 0xf8, 0x03, 0x20, 0x00, 0x02, 0x28, 0x60, + 0x2b, 0x49, 0x88, 0x68, 0xa0, 0x63, 0xc8, 0x68, + 0xe0, 0x63, 0x08, 0x79, 0x3c, 0x00, 0xb8, 0x92, + 0x00, 0x00, 0xc0, 0x06, 0xc0, 0x0e, 0x25, 0x1c, + 0x40, 0x35, 0x28, 0x71, 0x48, 0x79, 0x68, 0x71, + 0x23, 0x48, 0x3c, 0x38, 0x46, 0x62, 0x00, 0x98, + 0x80, 0x7a, 0x01, 0xf0, 0x5e, 0xfd, 0x00, 0x21, + 0x00, 0x28, 0x21, 0x4a, 0x01, 0xd0, 0x11, 0x78, + 0x03, 0xe0, 0x93, 0x78, 0xdb, 0x07, 0x00, 0xd5, + 0x51, 0x78, 0xa9, 0x71, 0x00, 0x28, 0x04, 0xd0, + 0x1b, 0x49, 0x14, 0x31, 0x08, 0x68, 0x3c, 0x00, + 0xf4, 0x92, 0x00, 0x00, 0x20, 0x64, 0x00, 0xe0, + 0x6e, 0x80, 0xb8, 0x6a, 0xc0, 0x07, 0x02, 0xd5, + 0xff, 0x20, 0x28, 0x71, 0xae, 0x71, 0xe6, 0x61, + 0xb8, 0x68, 0x01, 0x30, 0xb8, 0x60, 0x79, 0x68, + 0x88, 0x42, 0x03, 0xd0, 0x0b, 0x21, 0x85, 0x20, + 0xf7, 0xf7, 0xc4, 0xff, 0x0d, 0x49, 0x88, 0x68, + 0xc0, 0x6c, 0x88, 0x60, 0xfb, 0x6a, 0x00, 0x2b, + 0x0c, 0xd0, 0x0e, 0x4a, 0xd4, 0x7b, 0x00, 0x2b, + 0x3c, 0x00, 0x30, 0x93, 0x00, 0x00, 0x02, 0xdd, + 0x7f, 0x2c, 0x05, 0xd2, 0x01, 0xe0, 0x00, 0x2c, + 0x02, 0xd0, 0xd4, 0x7b, 0xe3, 0x18, 0xd3, 0x73, + 0xfe, 0x62, 0xc9, 0x68, 0x88, 0x42, 0x03, 0xd1, + 0x05, 0x21, 0x85, 0x20, 0xf7, 0xf7, 0xa9, 0xff, + 0xf8, 0xbd, 0x24, 0x7e, 0x01, 0x00, 0x00, 0x40, + 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, 0xe8, 0x80, + 0x07, 0x00, 0x40, 0x00, 0x07, 0x00, 0xfe, 0xb5, + 0x30, 0x4c, 0x3c, 0x00, 0x6c, 0x93, 0x00, 0x00, + 0xa0, 0x6b, 0x21, 0x6b, 0xf7, 0xf7, 0x33, 0xf8, + 0x2d, 0x49, 0x3c, 0x31, 0x8e, 0x68, 0x70, 0x8b, + 0x06, 0x28, 0x04, 0xd2, 0xe0, 0x69, 0x01, 0x30, + 0xe0, 0x61, 0x0e, 0x20, 0x30, 0x85, 0x28, 0x49, + 0x3c, 0x31, 0x0d, 0x68, 0x00, 0x2d, 0x03, 0xd1, + 0x03, 0x21, 0x85, 0x20, 0xf7, 0xf7, 0x84, 0xff, + 0x24, 0x48, 0x45, 0x61, 0x35, 0x62, 0x31, 0x8d, + 0xef, 0x68, 0x04, 0x39, 0x3c, 0x00, 0xa8, 0x93, + 0x00, 0x00, 0x0c, 0x04, 0x01, 0x21, 0x02, 0x91, + 0x24, 0x0c, 0x00, 0x21, 0x01, 0x91, 0x1d, 0x48, + 0x3c, 0x30, 0x80, 0x8a, 0xa0, 0x42, 0x03, 0xd3, + 0x2c, 0x81, 0xee, 0x60, 0x00, 0x24, 0x0b, 0xe0, + 0x00, 0x2f, 0x04, 0xd1, 0x03, 0x21, 0x85, 0x20, + 0xf7, 0xf7, 0x69, 0xff, 0x04, 0xe0, 0x3d, 0x1c, + 0x20, 0x1a, 0x04, 0x04, 0xff, 0x68, 0x24, 0x0c, + 0x02, 0x98, 0x00, 0x28, 0x04, 0xd0, 0x3c, 0x00, + 0xe4, 0x93, 0x00, 0x00, 0x12, 0x49, 0x01, 0x20, + 0x08, 0x61, 0x00, 0x20, 0x02, 0x90, 0x01, 0x98, + 0x01, 0x30, 0x01, 0x90, 0x00, 0x2c, 0xdd, 0xd1, + 0x0c, 0x48, 0x0c, 0x4c, 0x3c, 0x30, 0x07, 0x60, + 0x01, 0x98, 0x30, 0x65, 0xb5, 0x64, 0x30, 0x6a, + 0x00, 0x68, 0x60, 0x62, 0x60, 0x68, 0x01, 0x30, + 0x60, 0x60, 0xa1, 0x68, 0x01, 0x31, 0x88, 0x42, + 0x03, 0xd0, 0x0a, 0x21, 0x85, 0x20, 0xf7, 0xf7, + 0x3c, 0x00, 0x20, 0x94, 0x00, 0x00, 0x41, 0xff, + 0x04, 0x48, 0x00, 0x68, 0xa0, 0x62, 0xfe, 0xbd, + 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x78, 0x6e, 0x01, 0x00, 0xb0, 0xb5, + 0x05, 0x1c, 0x01, 0x21, 0x0f, 0x20, 0x0a, 0xf0, + 0xf8, 0xf8, 0xf2, 0x21, 0x0f, 0x20, 0x0a, 0xf0, + 0xf4, 0xf8, 0x0c, 0x48, 0x0c, 0x4c, 0x00, 0x68, + 0x14, 0x3c, 0x00, 0x28, 0x0c, 0xd0, 0xe0, 0x78, + 0x01, 0x28, 0x3c, 0x00, 0x5c, 0x94, 0x00, 0x00, + 0x09, 0xd0, 0x01, 0x22, 0x29, 0x1c, 0x0f, 0x20, + 0x0a, 0xf0, 0xac, 0xf8, 0x60, 0x78, 0x02, 0x28, + 0x06, 0xd0, 0x01, 0x20, 0x03, 0xe0, 0x60, 0x78, + 0x02, 0x28, 0x01, 0xd0, 0x00, 0x20, 0x60, 0x70, + 0xb0, 0xbd, 0x00, 0x00, 0x98, 0x66, 0x01, 0x00, + 0x02, 0x22, 0x00, 0x28, 0x80, 0xb5, 0x00, 0xd1, + 0x03, 0x22, 0x03, 0x49, 0x0e, 0x20, 0x0a, 0xf0, + 0x9b, 0xf8, 0x00, 0x20, 0x3c, 0x00, 0x98, 0x94, + 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x50, 0xc3, + 0x00, 0x00, 0xf8, 0xb5, 0x00, 0x23, 0x00, 0x22, + 0x00, 0x28, 0x2e, 0xd0, 0x06, 0x89, 0x04, 0x68, + 0x75, 0x1e, 0x2d, 0x04, 0xb6, 0x1a, 0xf6, 0x07, + 0x2d, 0x0c, 0xf6, 0x0f, 0xb4, 0x46, 0x0e, 0xe0, + 0xa7, 0x5c, 0xa6, 0x18, 0x02, 0x33, 0x00, 0x97, + 0x77, 0x78, 0xa7, 0x54, 0x02, 0x32, 0x12, 0x04, + 0x00, 0x9f, 0x12, 0x0c, 0x00, 0x29, 0x3c, 0x00, + 0xd4, 0x94, 0x00, 0x00, 0x77, 0x70, 0x01, 0xdd, + 0x8b, 0x42, 0x15, 0xda, 0xaa, 0x42, 0xee, 0xd3, + 0xc0, 0x68, 0x00, 0x28, 0x10, 0xd0, 0x02, 0x89, + 0x00, 0x2a, 0xf9, 0xd0, 0x62, 0x46, 0x00, 0x2a, + 0x0b, 0xd0, 0x02, 0x68, 0x66, 0x5d, 0x17, 0x78, + 0x02, 0x33, 0x67, 0x55, 0x16, 0x70, 0x01, 0x22, + 0x00, 0x29, 0xd2, 0xdd, 0x8b, 0x42, 0xd0, 0xdb, + 0xf8, 0xbd, 0x00, 0x22, 0xcd, 0xe7, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x95, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0d, 0x1c, 0x01, 0x20, 0xf8, 0xf7, + 0x5e, 0xfb, 0x0d, 0x49, 0x00, 0x28, 0xc8, 0x61, + 0x14, 0xd0, 0x62, 0x68, 0x42, 0x60, 0xa2, 0x7c, + 0x02, 0x72, 0xa2, 0x68, 0xc2, 0x60, 0xe2, 0x68, + 0x02, 0x61, 0x22, 0x8a, 0x02, 0x75, 0x0a, 0x1d, + 0x0a, 0x62, 0x12, 0x68, 0x00, 0x2a, 0xff, 0xd1, + 0x02, 0x60, 0x48, 0x60, 0x00, 0x20, 0xa8, 0x60, + 0x01, 0x20, 0x3c, 0x00, 0x4c, 0x95, 0x00, 0x00, + 0xb0, 0xbd, 0x01, 0x20, 0xfa, 0xe7, 0x00, 0x00, + 0xa4, 0x6e, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x40, 0x68, 0x0d, 0x1c, 0x43, 0x1c, 0x02, 0xd1, + 0x21, 0x1c, 0x09, 0x48, 0x08, 0xe0, 0x00, 0x20, + 0xf8, 0xf7, 0x34, 0xfb, 0x06, 0x49, 0x94, 0x39, + 0x08, 0x61, 0x00, 0x28, 0x03, 0xd0, 0x21, 0x1c, + 0x00, 0xf0, 0x48, 0xfe, 0x00, 0xe0, 0x01, 0x20, + 0xa8, 0x60, 0x01, 0x20, 0x3c, 0x00, 0x88, 0x95, + 0x00, 0x00, 0xb0, 0xbd, 0x00, 0x00, 0x38, 0x6f, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x21, 0x97, 0x20, + 0xf7, 0xf7, 0x85, 0xfe, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x38, 0xb5, 0x0a, 0x1c, 0x14, 0x32, + 0x00, 0x92, 0x13, 0x1f, 0x05, 0x1c, 0x08, 0x3a, + 0x0c, 0x1c, 0x16, 0x31, 0x40, 0x68, 0xfe, 0xf7, + 0x6c, 0xfe, 0x00, 0x28, 0x01, 0xd0, 0x00, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0x69, 0x68, 0x3c, 0x00, + 0xc4, 0x95, 0x00, 0x00, 0xa0, 0x60, 0x61, 0x60, + 0x01, 0x20, 0x38, 0xbd, 0x10, 0xb5, 0x0c, 0x1c, + 0x01, 0x7a, 0x00, 0x29, 0x0f, 0xd0, 0x01, 0x29, + 0x09, 0xd0, 0x02, 0x29, 0x03, 0xd1, 0x00, 0x21, + 0x00, 0x20, 0x0a, 0xf0, 0x73, 0xfc, 0x00, 0x20, + 0x20, 0x71, 0x01, 0x20, 0x10, 0xbd, 0x41, 0x68, + 0x01, 0x20, 0x0a, 0xf0, 0x6b, 0xfc, 0x00, 0xf0, + 0x0d, 0xf9, 0xf4, 0xe7, 0x80, 0xb5, 0x04, 0x49, + 0x3c, 0x00, 0x00, 0x96, 0x00, 0x00, 0x48, 0x68, + 0x01, 0x38, 0x48, 0x60, 0x01, 0xd1, 0x07, 0xf0, + 0x6e, 0xfb, 0x00, 0x20, 0x80, 0xbd, 0xac, 0x79, + 0x01, 0x00, 0xb0, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, + 0x00, 0xf0, 0x4f, 0xfe, 0xa0, 0x60, 0x68, 0x68, + 0x60, 0x60, 0x01, 0x20, 0xb0, 0xbd, 0xb0, 0xb5, + 0x05, 0x1c, 0x0c, 0x1c, 0x00, 0xf0, 0x6f, 0xfe, + 0xa0, 0x60, 0x68, 0x68, 0x60, 0x60, 0x01, 0x20, + 0xb0, 0xbd, 0x3c, 0x00, 0x3c, 0x96, 0x00, 0x00, + 0x08, 0x1c, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x08, 0xc0, 0x01, 0x20, 0x70, 0x47, + 0xf8, 0xb5, 0x0f, 0x1c, 0x04, 0x1c, 0x20, 0x79, + 0x20, 0x28, 0x01, 0xd2, 0x20, 0x20, 0x20, 0x71, + 0x66, 0x79, 0x00, 0x2e, 0x02, 0xd1, 0x25, 0x79, + 0x00, 0x22, 0x0d, 0xe0, 0x25, 0x79, 0x29, 0x1c, + 0x30, 0x1c, 0xf7, 0xf7, 0x4f, 0xf8, 0x00, 0x29, + 0x01, 0xd1, 0x32, 0x1c, 0x3c, 0x00, 0x78, 0x96, + 0x00, 0x00, 0x04, 0xe0, 0x70, 0x43, 0x80, 0x19, + 0x05, 0x06, 0x2d, 0x0e, 0x32, 0x1c, 0xe0, 0x79, + 0x29, 0x1c, 0x00, 0xf0, 0xf2, 0xf9, 0x20, 0x7a, + 0x2f, 0x49, 0xc0, 0x07, 0xc0, 0x0f, 0x08, 0x60, + 0x2e, 0x48, 0x00, 0x78, 0xc0, 0x07, 0x43, 0xd5, + 0xa1, 0x79, 0x2c, 0x4a, 0xc8, 0x07, 0x48, 0xd4, + 0x2c, 0x4e, 0x16, 0x60, 0x8b, 0x07, 0x2b, 0x48, + 0x08, 0xd5, 0xcc, 0x08, 0x01, 0x23, 0x3c, 0x00, + 0xb4, 0x96, 0x00, 0x00, 0xa3, 0x40, 0x03, 0x60, + 0x49, 0x07, 0x04, 0xd5, 0x28, 0x49, 0x11, 0x60, + 0x01, 0xe0, 0x40, 0x21, 0x01, 0x60, 0x13, 0x68, + 0x26, 0x4a, 0xb3, 0x42, 0x10, 0xd1, 0x54, 0x68, + 0x01, 0x68, 0x0c, 0x43, 0x54, 0x60, 0x14, 0x68, + 0x0c, 0x40, 0x01, 0xd0, 0x51, 0x61, 0x00, 0xe0, + 0x91, 0x61, 0x54, 0x68, 0x0c, 0x43, 0x54, 0x60, + 0x94, 0x68, 0x21, 0x43, 0x91, 0x60, 0x13, 0xe0, + 0x3c, 0x00, 0xf0, 0x96, 0x00, 0x00, 0x54, 0x7c, + 0x01, 0x68, 0x0c, 0x43, 0x54, 0x74, 0x14, 0x7c, + 0x0c, 0x40, 0x03, 0xd0, 0x14, 0x7c, 0x0c, 0x43, + 0x14, 0x74, 0x02, 0xe0, 0x14, 0x7c, 0x8c, 0x43, + 0x14, 0x74, 0x54, 0x7c, 0x0c, 0x43, 0x54, 0x74, + 0x94, 0x7c, 0x21, 0x43, 0x91, 0x74, 0xb3, 0x42, + 0x05, 0xd1, 0x00, 0x22, 0x01, 0x68, 0x03, 0x20, + 0xff, 0xf7, 0x8d, 0xf8, 0x09, 0xe0, 0x00, 0x68, + 0x00, 0x21, 0x3c, 0x00, 0x2c, 0x97, 0x00, 0x00, + 0x02, 0x06, 0x12, 0x0e, 0x03, 0x20, 0xff, 0xf7, + 0x85, 0xf8, 0x01, 0xe0, 0x0b, 0x48, 0x10, 0x60, + 0x00, 0x20, 0x38, 0x71, 0x7d, 0x71, 0xf7, 0xf7, + 0xe9, 0xfd, 0x01, 0x20, 0xf8, 0xbd, 0x00, 0x00, + 0xcc, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x07, 0x00, + 0x5c, 0x5b, 0x01, 0x00, 0xb9, 0x9b, 0x00, 0x00, + 0x58, 0x5b, 0x01, 0x00, 0x95, 0x9b, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0x3c, 0x00, 0x68, 0x97, + 0x00, 0x00, 0x55, 0x9b, 0x00, 0x00, 0xb0, 0xb5, + 0x0d, 0x1c, 0x04, 0x30, 0x00, 0x24, 0xfe, 0xf7, + 0xd6, 0xfa, 0x01, 0x20, 0x6c, 0x60, 0xb0, 0xbd, + 0x00, 0x00, 0xf0, 0xb5, 0x07, 0x7a, 0x43, 0x68, + 0x04, 0x1c, 0x0e, 0x48, 0x0e, 0x1c, 0x00, 0x68, + 0x01, 0x25, 0x01, 0x1c, 0x9b, 0xb0, 0x06, 0xe0, + 0x4a, 0x68, 0x9a, 0x42, 0x02, 0xd1, 0x8f, 0x76, + 0x00, 0x25, 0x02, 0xe0, 0x09, 0x68, 0x3c, 0x00, + 0xa4, 0x97, 0x00, 0x00, 0x00, 0x29, 0xf6, 0xd1, + 0x00, 0x2d, 0x05, 0xd1, 0x21, 0x7a, 0x01, 0x29, + 0x02, 0xd1, 0x01, 0xa9, 0xf8, 0xf7, 0xa8, 0xf8, + 0x60, 0x68, 0x04, 0x36, 0x21, 0xc6, 0x1b, 0xb0, + 0x01, 0x20, 0xf0, 0xbd, 0xa4, 0x6e, 0x01, 0x00, + 0x10, 0xb5, 0x0c, 0x1c, 0x08, 0xf0, 0xae, 0xfc, + 0x60, 0x60, 0x01, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x10, 0xb5, 0x0c, 0x1c, 0x07, 0xf0, 0x84, 0xfa, + 0x3c, 0x00, 0xe0, 0x97, 0x00, 0x00, 0x04, 0xf0, + 0x54, 0xff, 0x00, 0x20, 0x60, 0x60, 0x01, 0x20, + 0x10, 0xbd, 0x00, 0x20, 0xc0, 0x43, 0x48, 0x60, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, + 0x0c, 0x1c, 0x00, 0x79, 0xfa, 0xf7, 0x07, 0xf8, + 0x00, 0x28, 0x01, 0xd0, 0x00, 0x20, 0x00, 0xe0, + 0x02, 0x20, 0x60, 0x60, 0x01, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0x1c, 0xb5, 0x06, 0x4c, 0x20, 0x68, + 0x00, 0x28, 0x3c, 0x00, 0x1c, 0x98, 0x00, 0x00, + 0x07, 0xd0, 0x09, 0xf0, 0xc5, 0xfa, 0x01, 0x90, + 0x20, 0x68, 0x41, 0x68, 0x68, 0x46, 0xf6, 0xf7, + 0xd6, 0xfd, 0x1c, 0xbd, 0xac, 0x79, 0x01, 0x00, + 0x01, 0x49, 0x08, 0x60, 0x70, 0x47, 0x00, 0x00, + 0xac, 0x79, 0x01, 0x00, 0x0e, 0xb5, 0x06, 0x4b, + 0x1b, 0x68, 0x00, 0x2b, 0x06, 0xd0, 0x02, 0x90, + 0x00, 0x91, 0x01, 0x92, 0x68, 0x46, 0xd9, 0x68, + 0xf6, 0xf7, 0xc1, 0xfd, 0x3c, 0x00, 0x58, 0x98, + 0x00, 0x00, 0x0e, 0xbd, 0x00, 0x00, 0xac, 0x79, + 0x01, 0x00, 0x1c, 0xb5, 0x04, 0x1c, 0x07, 0xf0, + 0x4c, 0xfa, 0x06, 0x48, 0x41, 0x68, 0x01, 0x31, + 0x41, 0x60, 0x00, 0x94, 0x00, 0x21, 0x01, 0x91, + 0x00, 0x68, 0x01, 0x68, 0x68, 0x46, 0xf6, 0xf7, + 0xad, 0xfd, 0x1c, 0xbd, 0x00, 0x00, 0xac, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0xf8, 0xf7, 0xa3, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x02, 0x1c, 0x3c, 0x00, + 0x94, 0x98, 0x00, 0x00, 0x80, 0x21, 0x03, 0x20, + 0x00, 0xf0, 0x5c, 0xf8, 0x01, 0x1c, 0x03, 0x48, + 0x00, 0x22, 0x43, 0x69, 0xf6, 0xf7, 0x9b, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xa4, 0x6d, 0x01, 0x00, + 0xf8, 0xb5, 0x0c, 0x1c, 0x13, 0x49, 0x05, 0x1c, + 0x08, 0x68, 0x16, 0x1c, 0x01, 0x30, 0x08, 0x60, + 0x00, 0x20, 0x20, 0x61, 0x22, 0x1c, 0x10, 0x32, + 0x28, 0x1d, 0x00, 0x21, 0x07, 0x1c, 0x00, 0x92, + 0x3c, 0x00, 0xd0, 0x98, 0x00, 0x00, 0x03, 0xf0, + 0xde, 0xfe, 0x20, 0x71, 0x20, 0x69, 0x00, 0x28, + 0x10, 0xd0, 0x01, 0x04, 0x09, 0x0c, 0x00, 0x20, + 0xf7, 0xf7, 0x79, 0xfe, 0x30, 0x60, 0x29, 0x1d, + 0x03, 0xc9, 0xa0, 0x60, 0xe1, 0x60, 0x30, 0x68, + 0x01, 0x68, 0x00, 0x9a, 0x38, 0x1c, 0x03, 0xf0, + 0xca, 0xfe, 0x20, 0x71, 0x01, 0x20, 0xf8, 0xbd, + 0x00, 0x00, 0x10, 0x75, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x1c, 0x3c, 0x00, 0x0c, 0x99, 0x00, 0x00, + 0x08, 0x21, 0x04, 0x20, 0x09, 0xf0, 0x4e, 0xff, + 0x03, 0x20, 0x80, 0xbd, 0x10, 0xb5, 0x07, 0x4a, + 0x0c, 0x1c, 0x51, 0x68, 0x01, 0x31, 0x51, 0x60, + 0x01, 0x1c, 0x10, 0x31, 0xc2, 0x68, 0x04, 0x30, + 0x03, 0xf0, 0xf0, 0xfe, 0x20, 0x71, 0x00, 0x20, + 0x10, 0xbd, 0x00, 0x00, 0x10, 0x75, 0x01, 0x00, + 0x04, 0x49, 0x80, 0xb5, 0x81, 0x61, 0x08, 0x21, + 0x02, 0x1c, 0x03, 0x20, 0x3c, 0x00, 0x48, 0x99, + 0x00, 0x00, 0x09, 0xf0, 0x32, 0xff, 0x03, 0x20, + 0x80, 0xbd, 0x95, 0xd8, 0x00, 0x00, 0xf7, 0xb5, + 0x07, 0x1c, 0x16, 0x1c, 0x06, 0x21, 0x00, 0x20, + 0x82, 0xb0, 0xf7, 0xf7, 0x3a, 0xfe, 0x05, 0x1c, + 0x20, 0x48, 0x00, 0x78, 0x06, 0x28, 0x00, 0xd9, + 0x28, 0x81, 0x2c, 0x68, 0x00, 0x20, 0xa7, 0x70, + 0x03, 0x99, 0xe1, 0x70, 0x31, 0x1c, 0x03, 0xe0, + 0x0a, 0x89, 0x10, 0x18, 0x0f, 0x1c, 0x3c, 0x00, + 0x84, 0x99, 0x00, 0x00, 0xc9, 0x68, 0x00, 0x29, + 0xf9, 0xd1, 0x6b, 0x46, 0x01, 0xaa, 0x21, 0x1d, + 0x00, 0xf0, 0x34, 0xf8, 0x00, 0xab, 0x18, 0x78, + 0x60, 0x71, 0x18, 0x78, 0x00, 0x28, 0x17, 0xd0, + 0x11, 0x48, 0x40, 0x68, 0x00, 0x28, 0x08, 0xd0, + 0x19, 0x78, 0x00, 0x20, 0xf7, 0xf7, 0x14, 0xfe, + 0x01, 0x1c, 0x38, 0x1c, 0xf7, 0xf7, 0x30, 0xfd, + 0x0a, 0xe0, 0x38, 0x68, 0x00, 0x28, 0x02, 0xd1, + 0x3c, 0x00, 0xc0, 0x99, 0x00, 0x00, 0x3f, 0x60, + 0x01, 0x20, 0xb8, 0x61, 0x00, 0xab, 0x19, 0x78, + 0x38, 0x89, 0x40, 0x18, 0x38, 0x81, 0x00, 0xab, + 0x98, 0x88, 0x31, 0x1c, 0x02, 0x38, 0x20, 0x80, + 0x28, 0x1c, 0xf7, 0xf7, 0x1c, 0xfd, 0x28, 0x1c, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xc8, 0x5c, + 0x01, 0x00, 0x01, 0x79, 0x42, 0x79, 0x00, 0x88, + 0x89, 0x18, 0x02, 0x39, 0x40, 0x1a, 0x70, 0x47, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x99, 0x00, 0x00, + 0x70, 0xb5, 0x08, 0x4d, 0x2c, 0x78, 0xad, 0x78, + 0x20, 0x18, 0x06, 0x1c, 0x00, 0x2d, 0x03, 0xd0, + 0x70, 0x19, 0x01, 0x38, 0x01, 0x3d, 0xa8, 0x43, + 0x10, 0x80, 0x80, 0x1b, 0x18, 0x70, 0x0c, 0x70, + 0x70, 0xbd, 0x00, 0x00, 0xc8, 0x5c, 0x01, 0x00, + 0xb0, 0xb5, 0x04, 0x68, 0x0c, 0x4a, 0x21, 0x88, + 0x52, 0x78, 0x02, 0x31, 0x91, 0x42, 0x11, 0xd2, + 0x55, 0x1a, 0xf7, 0xf7, 0x3c, 0x00, 0x38, 0x9a, + 0x00, 0x00, 0xc9, 0xfd, 0x01, 0x68, 0x00, 0x29, + 0x02, 0xd1, 0x00, 0x60, 0x01, 0x21, 0x81, 0x61, + 0x01, 0x89, 0x49, 0x19, 0x01, 0x81, 0x20, 0x88, + 0x40, 0x19, 0x20, 0x80, 0x60, 0x79, 0x40, 0x19, + 0x60, 0x71, 0xb0, 0xbd, 0x00, 0x00, 0xc8, 0x5c, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x06, 0x21, + 0xf1, 0x20, 0x09, 0xf0, 0xa2, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x1c, 0x02, 0x48, 0x3c, 0x00, + 0x74, 0x9a, 0x00, 0x00, 0x03, 0x70, 0x41, 0x70, + 0x82, 0x70, 0x70, 0x47, 0xc8, 0x5c, 0x01, 0x00, + 0xb0, 0xb5, 0x08, 0x1c, 0x09, 0x68, 0x15, 0x1c, + 0x8c, 0x78, 0xf7, 0xf7, 0x85, 0xfd, 0x04, 0x49, + 0xa0, 0x00, 0x09, 0x58, 0x00, 0x29, 0x02, 0xd0, + 0x28, 0x1c, 0xf6, 0xf7, 0x9e, 0xfc, 0xb0, 0xbd, + 0x84, 0x6d, 0x01, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0xc0, 0x7a, 0xa1, 0x7a, 0xc6, 0x07, 0xf6, 0x0f, + 0x3c, 0x00, 0xb0, 0x9a, 0x00, 0x00, 0x32, 0x1c, + 0x20, 0x1d, 0x01, 0xf0, 0x3c, 0xf8, 0x60, 0x69, + 0x25, 0x4f, 0xc1, 0x07, 0x37, 0xd5, 0xb8, 0x69, + 0x00, 0x28, 0x01, 0xd0, 0xf6, 0xf7, 0x87, 0xfc, + 0x20, 0x68, 0x05, 0x68, 0x28, 0x88, 0x80, 0x07, + 0x34, 0xd1, 0x01, 0xaa, 0x02, 0xa9, 0x28, 0x1c, + 0x01, 0xf0, 0x0b, 0xfc, 0x28, 0x1c, 0x01, 0xf0, + 0x12, 0xfc, 0x00, 0x78, 0xc0, 0x07, 0x0a, 0xd4, + 0x60, 0x69, 0x3c, 0x00, 0xec, 0x9a, 0x00, 0x00, + 0x80, 0x07, 0x26, 0xd4, 0x33, 0x1c, 0x29, 0x1c, + 0xa2, 0x7a, 0x20, 0x69, 0x7d, 0x69, 0xf6, 0xf7, + 0x72, 0xfc, 0x1e, 0xe0, 0x00, 0xab, 0x18, 0x7a, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x28, 0x06, 0xd0, + 0x02, 0x28, 0x16, 0xd1, 0x28, 0x1c, 0x79, 0x6a, + 0xf6, 0xf7, 0x61, 0xfc, 0x11, 0xe0, 0x00, 0xab, + 0x18, 0x79, 0x0e, 0x28, 0x01, 0xd0, 0x0f, 0x28, + 0x0b, 0xd1, 0x28, 0x1c, 0x3c, 0x00, 0x28, 0x9b, + 0x00, 0x00, 0x39, 0x6a, 0xf6, 0xf7, 0x56, 0xfc, + 0x06, 0xe0, 0x00, 0x07, 0x80, 0x0f, 0x03, 0xd1, + 0x20, 0x69, 0xf9, 0x69, 0xf6, 0xf7, 0x4e, 0xfc, + 0x78, 0x6b, 0x21, 0x21, 0x01, 0x30, 0x78, 0x63, + 0x22, 0x1c, 0x80, 0x20, 0x09, 0xf0, 0x31, 0xfe, + 0xfe, 0xbd, 0x28, 0x7a, 0x01, 0x00, 0x0b, 0x49, + 0x18, 0xb5, 0x08, 0x78, 0xc0, 0x07, 0x11, 0xd5, + 0x0a, 0x4a, 0x10, 0x1c, 0x20, 0x30, 0x3c, 0x00, + 0x64, 0x9b, 0x00, 0x00, 0x84, 0x79, 0x00, 0xab, + 0x1c, 0x70, 0xc0, 0x79, 0x58, 0x70, 0x08, 0x78, + 0x40, 0x23, 0x18, 0x43, 0x08, 0x70, 0x05, 0x48, + 0x00, 0x78, 0x08, 0x70, 0x00, 0xab, 0x18, 0x88, + 0xd0, 0x84, 0x18, 0xbd, 0x04, 0x00, 0x07, 0x00, + 0x00, 0x10, 0x07, 0x00, 0xe0, 0x60, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x05, 0x49, 0x10, 0xb5, + 0x88, 0x79, 0x05, 0x4b, 0x1a, 0x7c, 0x05, 0x4c, + 0x3c, 0x00, 0xa0, 0x9b, 0x00, 0x00, 0x24, 0x68, + 0x62, 0x40, 0x1a, 0x74, 0x88, 0x71, 0x10, 0xbd, + 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x58, 0x5b, 0x01, 0x00, 0x04, 0x49, + 0x0a, 0x68, 0x04, 0x48, 0x00, 0x68, 0x02, 0x40, + 0x01, 0xd0, 0x88, 0x61, 0x70, 0x47, 0x48, 0x61, + 0x70, 0x47, 0x10, 0x00, 0x07, 0x00, 0x58, 0x5b, + 0x01, 0x00, 0x02, 0x1c, 0x01, 0x20, 0x00, 0x06, + 0x08, 0x43, 0x3c, 0x00, 0xdc, 0x9b, 0x00, 0x00, + 0x80, 0xb5, 0x2a, 0x21, 0x09, 0xf0, 0xe6, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x00, 0x29, 0x03, 0xd0, 0x81, 0x29, 0x07, 0xd1, + 0x81, 0x20, 0x00, 0xe0, 0x80, 0x20, 0x22, 0x1c, + 0x2c, 0x21, 0x09, 0xf0, 0xd7, 0xfd, 0x10, 0xbd, + 0x02, 0x21, 0x2c, 0x20, 0xf7, 0xf7, 0x4c, 0xfb, + 0x20, 0x1c, 0xf7, 0xf7, 0xc3, 0xfc, 0x10, 0xbd, + 0x80, 0xb5, 0xb4, 0xb0, 0x3c, 0x00, 0x18, 0x9c, + 0x00, 0x00, 0x01, 0x28, 0x06, 0xd0, 0x82, 0x28, + 0x1c, 0xd1, 0x1a, 0xa8, 0x07, 0xf0, 0x35, 0xfc, + 0x34, 0xb0, 0x80, 0xbd, 0x81, 0x29, 0x13, 0xd1, + 0x0d, 0x48, 0x0c, 0x4a, 0x81, 0x69, 0x00, 0x68, + 0x50, 0x32, 0x81, 0x42, 0x02, 0xd0, 0xd1, 0x6a, + 0x01, 0x29, 0x02, 0xd0, 0x11, 0x78, 0x02, 0x29, + 0x02, 0xd1, 0x07, 0xf0, 0x0a, 0xf9, 0xeb, 0xe7, + 0x69, 0x46, 0xf7, 0xf7, 0x5a, 0xfe, 0x3c, 0x00, + 0x54, 0x9c, 0x00, 0x00, 0xe7, 0xe7, 0x01, 0x21, + 0x00, 0xe0, 0x02, 0x21, 0x18, 0x20, 0xf7, 0xf7, + 0x21, 0xfb, 0xe0, 0xe7, 0xa4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x00, 0x68, 0x17, 0x4d, + 0x9a, 0xb0, 0x68, 0x63, 0x08, 0xf0, 0x3e, 0xfa, + 0x20, 0x79, 0x14, 0x49, 0x13, 0x4a, 0x50, 0x39, + 0x2c, 0x3a, 0x02, 0x28, 0x0a, 0xd1, 0x90, 0x68, + 0x80, 0x02, 0xa8, 0x61, 0xc8, 0x68, 0xe8, 0x61, + 0x3c, 0x00, 0x90, 0x9c, 0x00, 0x00, 0x02, 0x20, + 0x28, 0x72, 0x07, 0xf0, 0xe4, 0xf8, 0x1a, 0xb0, + 0xb0, 0xbd, 0x03, 0x1c, 0x00, 0x20, 0x00, 0x2b, + 0x0b, 0xd1, 0x52, 0x68, 0x92, 0x02, 0xaa, 0x61, + 0x0a, 0x1c, 0x89, 0x68, 0xe9, 0x61, 0x28, 0x72, + 0x10, 0x68, 0x69, 0x46, 0xf7, 0xf7, 0x27, 0xfe, + 0xed, 0xe7, 0xa8, 0x61, 0x01, 0x20, 0x28, 0x72, + 0x28, 0x70, 0x00, 0x20, 0x06, 0xf0, 0x7d, 0xfa, + 0xe5, 0xe7, 0x3c, 0x00, 0xcc, 0x9c, 0x00, 0x00, + 0xf4, 0x6e, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x07, 0x20, 0xf7, 0xf7, 0xe1, 0xfa, 0x80, 0xbd, + 0x70, 0x47, 0x00, 0x00, 0xf8, 0xb5, 0x00, 0x24, + 0x19, 0x4a, 0x00, 0x26, 0xd5, 0x68, 0x11, 0x68, + 0x04, 0x35, 0x08, 0x1c, 0x91, 0x60, 0x02, 0xe0, + 0x01, 0x1c, 0x40, 0x19, 0x08, 0x60, 0x53, 0x68, + 0x83, 0x42, 0xf9, 0xd8, 0x3c, 0x00, 0x08, 0x9d, + 0x00, 0x00, 0x01, 0x34, 0x10, 0x32, 0x03, 0x2c, + 0x0e, 0x60, 0xee, 0xd3, 0xf6, 0xf7, 0xf1, 0xff, + 0x10, 0x48, 0x10, 0x49, 0x12, 0x4c, 0x08, 0x60, + 0x10, 0x49, 0x00, 0x20, 0x01, 0x22, 0x19, 0x23, + 0x5b, 0x01, 0x0c, 0x25, 0x43, 0x43, 0x1b, 0x19, + 0x45, 0x43, 0x4a, 0x51, 0x1f, 0x1c, 0x6d, 0x18, + 0xab, 0x60, 0x6b, 0x60, 0x00, 0x25, 0x1e, 0x1c, + 0x14, 0x36, 0x9e, 0x60, 0x33, 0x1c, 0x3c, 0x00, + 0x44, 0x9d, 0x00, 0x00, 0x01, 0x35, 0x27, 0x2d, + 0xf8, 0xdb, 0x01, 0x30, 0x03, 0x28, 0x9f, 0x60, + 0xe8, 0xdb, 0xf8, 0xbd, 0x20, 0x57, 0x01, 0x00, + 0x14, 0xc8, 0x01, 0x00, 0xb4, 0xcf, 0x01, 0x00, + 0x18, 0xd9, 0x01, 0x00, 0xb8, 0xcf, 0x01, 0x00, + 0xb0, 0xb5, 0x07, 0x4c, 0x25, 0x1c, 0xc0, 0x35, + 0x28, 0x6b, 0x1e, 0x21, 0x00, 0xf0, 0xf2, 0xf9, + 0xa2, 0x6b, 0x20, 0x1c, 0xdc, 0x30, 0x29, 0x6b, + 0x3c, 0x00, 0x80, 0x9d, 0x00, 0x00, 0x00, 0xf0, + 0xb6, 0xf9, 0xb0, 0xbd, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x00, 0x20, 0x10, 0x22, 0x10, 0xb5, + 0x0a, 0x49, 0x05, 0xe0, 0x0c, 0x23, 0x43, 0x43, + 0x5c, 0x18, 0x0c, 0x34, 0xcc, 0x50, 0x01, 0x30, + 0x0f, 0x28, 0xf7, 0xd3, 0x0c, 0x23, 0x58, 0x43, + 0x09, 0x50, 0x04, 0x48, 0x41, 0x60, 0x01, 0x60, + 0x02, 0x82, 0x00, 0x21, 0x81, 0x60, 0xc1, 0x60, + 0x10, 0xbd, 0x3c, 0x00, 0xbc, 0x9d, 0x00, 0x00, + 0x84, 0xe2, 0x01, 0x00, 0x44, 0xe3, 0x01, 0x00, + 0x10, 0xb5, 0x08, 0x4c, 0xa0, 0x6a, 0x00, 0x28, + 0x03, 0xd1, 0x07, 0x48, 0xf9, 0xf7, 0xe8, 0xfe, + 0xa0, 0x62, 0x04, 0x48, 0x44, 0x30, 0x00, 0x68, + 0x01, 0x21, 0xf9, 0xf7, 0x95, 0xfc, 0x60, 0x62, + 0x10, 0xbd, 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, + 0xcd, 0x26, 0x01, 0x00, 0xff, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x1e, 0x1c, 0x3c, 0x00, 0xf8, 0x9d, + 0x00, 0x00, 0x81, 0xb0, 0x0a, 0x9f, 0x1c, 0x21, + 0xf6, 0xf7, 0x4d, 0xfb, 0x03, 0x98, 0xa0, 0x61, + 0x25, 0x60, 0x25, 0x61, 0x26, 0x81, 0xa6, 0x82, + 0xe7, 0x60, 0x05, 0xb0, 0xf0, 0xbd, 0x70, 0xb5, + 0x0d, 0x1c, 0xa4, 0x21, 0x04, 0x1c, 0x08, 0x30, + 0xf6, 0xf7, 0x3d, 0xfb, 0x20, 0x1c, 0x44, 0x30, + 0x06, 0x22, 0x29, 0x1c, 0xf6, 0xf7, 0x65, 0xfb, + 0x18, 0x48, 0x3c, 0x23, 0x41, 0x1c, 0x3c, 0x00, + 0x34, 0x9e, 0x00, 0x00, 0x61, 0x62, 0x41, 0x78, + 0x59, 0x43, 0x09, 0x18, 0x89, 0x7a, 0x06, 0x29, + 0x01, 0xd1, 0xa0, 0x62, 0x02, 0xe0, 0x21, 0x1c, + 0x4d, 0x31, 0xa1, 0x62, 0x41, 0x78, 0x3c, 0x23, + 0x59, 0x43, 0x08, 0x18, 0x04, 0x30, 0x0f, 0x49, + 0x20, 0x62, 0x0b, 0x88, 0x00, 0x2b, 0x15, 0xd0, + 0xac, 0x20, 0x00, 0x5d, 0x0b, 0x4a, 0x18, 0x32, + 0x00, 0x02, 0x80, 0x18, 0xb0, 0x30, 0xe0, 0x60, + 0x3c, 0x00, 0x70, 0x9e, 0x00, 0x00, 0x8d, 0x68, + 0x00, 0x20, 0x08, 0xe0, 0xe2, 0x68, 0xc1, 0x00, + 0x54, 0x50, 0xe6, 0x68, 0x82, 0x00, 0x52, 0x19, + 0x71, 0x18, 0x4a, 0x60, 0x01, 0x30, 0x98, 0x42, + 0xf4, 0xdb, 0x70, 0xbd, 0x00, 0x00, 0x68, 0x61, + 0x01, 0x00, 0x58, 0x75, 0x01, 0x00, 0x1f, 0xb5, + 0x04, 0x1c, 0x60, 0x34, 0x61, 0x7a, 0x03, 0x1c, + 0x80, 0x6a, 0x08, 0x4a, 0x02, 0x91, 0x01, 0x90, + 0x03, 0x92, 0x3c, 0x00, 0xac, 0x9e, 0x00, 0x00, + 0xe2, 0x79, 0x18, 0x1c, 0x20, 0x30, 0x00, 0x92, + 0x44, 0x7b, 0x82, 0x7b, 0x5e, 0x20, 0xc1, 0x5a, + 0x18, 0x69, 0x04, 0x30, 0x23, 0x1c, 0x02, 0xf0, + 0x7f, 0xfe, 0x1f, 0xbd, 0x39, 0x4e, 0x00, 0x00, + 0xb0, 0xb5, 0x0b, 0x1c, 0x01, 0x88, 0x69, 0x20, + 0xc0, 0x5c, 0x86, 0xb0, 0x0e, 0x4a, 0x04, 0x91, + 0x03, 0x90, 0x05, 0x92, 0x0d, 0x4d, 0x59, 0x6a, + 0x9a, 0x6a, 0x2d, 0x68, 0x3c, 0x00, 0xe8, 0x9e, + 0x00, 0x00, 0x01, 0x24, 0x00, 0x2d, 0x00, 0xd0, + 0x04, 0x1c, 0x0a, 0x48, 0x00, 0x5d, 0x01, 0x91, + 0x02, 0x92, 0x00, 0x90, 0x18, 0x1c, 0x20, 0x30, + 0x44, 0x7b, 0x82, 0x7b, 0x5e, 0x20, 0xc1, 0x5a, + 0x18, 0x69, 0x04, 0x30, 0x23, 0x1c, 0x02, 0xf0, + 0xa4, 0xfe, 0x06, 0xb0, 0xb0, 0xbd, 0x51, 0x4f, + 0x00, 0x00, 0x18, 0x67, 0x01, 0x00, 0x0a, 0x61, + 0x01, 0x00, 0x01, 0x89, 0x8a, 0x1c, 0x3c, 0x00, + 0x24, 0x9f, 0x00, 0x00, 0x02, 0x81, 0x02, 0x68, + 0x02, 0x3a, 0x02, 0x60, 0x08, 0x0a, 0x09, 0x02, + 0x08, 0x43, 0x10, 0x80, 0x70, 0x47, 0x00, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x08, 0x78, 0x0e, 0x1c, + 0xff, 0x28, 0x14, 0xd0, 0x71, 0x78, 0x02, 0x31, + 0x00, 0x20, 0xf7, 0xf7, 0x45, 0xfb, 0x04, 0x1c, + 0x02, 0x89, 0x00, 0x68, 0x31, 0x1c, 0xf6, 0xf7, + 0xcf, 0xfa, 0x00, 0x2d, 0x06, 0xd0, 0x28, 0x1c, + 0x3c, 0x00, 0x60, 0x9f, 0x00, 0x00, 0xf7, 0xf7, + 0x34, 0xfb, 0x21, 0x1c, 0xf7, 0xf7, 0x57, 0xfa, + 0x00, 0xe0, 0x25, 0x1c, 0x28, 0x1c, 0x70, 0xbd, + 0x00, 0x00, 0xff, 0xb5, 0x0f, 0x1c, 0x1e, 0x1c, + 0x04, 0x1c, 0x98, 0x1c, 0x01, 0x04, 0x09, 0x0c, + 0x00, 0x20, 0x81, 0xb0, 0xf7, 0xf7, 0x27, 0xfb, + 0x05, 0x1c, 0x00, 0x68, 0x00, 0x2c, 0x38, 0x60, + 0x03, 0x99, 0x01, 0x70, 0x38, 0x68, 0x46, 0x70, + 0x06, 0xd0, 0x3c, 0x00, 0x9c, 0x9f, 0x00, 0x00, + 0x20, 0x1c, 0xf7, 0xf7, 0x15, 0xfb, 0x29, 0x1c, + 0xf7, 0xf7, 0x38, 0xfa, 0x00, 0xe0, 0x2c, 0x1c, + 0x20, 0x1c, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0x70, 0xb5, 0x10, 0x48, 0x04, 0x68, 0x04, 0x60, + 0x0f, 0x49, 0x20, 0x20, 0x08, 0x60, 0xa0, 0x05, + 0x0e, 0x4e, 0x02, 0xd5, 0x70, 0x6a, 0xf6, 0xf7, + 0x05, 0xfa, 0xe0, 0x01, 0x02, 0xd5, 0x30, 0x6e, + 0xf6, 0xf7, 0x00, 0xfa, 0x3c, 0x00, 0xd8, 0x9f, + 0x00, 0x00, 0x0a, 0x48, 0x04, 0x40, 0x00, 0x25, + 0x07, 0xe0, 0xe0, 0x07, 0x03, 0xd5, 0xa8, 0x00, + 0x30, 0x58, 0xf6, 0xf7, 0xf6, 0xf9, 0x01, 0x35, + 0x64, 0x08, 0x00, 0x2c, 0xf5, 0xd1, 0x70, 0xbd, + 0x00, 0x00, 0x00, 0x40, 0x07, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x30, 0x74, 0x01, 0x00, 0xff, 0xfd, + 0xff, 0xfe, 0x80, 0xb5, 0x07, 0x21, 0x80, 0x20, + 0xf7, 0xf7, 0x49, 0xf9, 0x80, 0xbd, 0x3c, 0x00, + 0x14, 0xa0, 0x00, 0x00, 0xf8, 0xb5, 0x14, 0x4b, + 0x82, 0x00, 0x9c, 0x58, 0xca, 0x06, 0x01, 0x27, + 0x39, 0x1c, 0xd2, 0x0e, 0x91, 0x40, 0x11, 0x4a, + 0x11, 0x60, 0x11, 0x4e, 0x40, 0x00, 0x85, 0x19, + 0x15, 0xe0, 0x60, 0x60, 0x20, 0x7b, 0xc1, 0x00, + 0x89, 0x19, 0x10, 0x31, 0x0a, 0x78, 0x0d, 0x23, + 0x9a, 0x43, 0x0a, 0x70, 0x39, 0x1c, 0x81, 0x40, + 0x31, 0x73, 0x07, 0x49, 0x00, 0x01, 0x08, 0x31, + 0x3c, 0x00, 0x50, 0xa0, 0x00, 0x00, 0x40, 0x18, + 0x08, 0x4a, 0x41, 0x68, 0x42, 0x60, 0x80, 0x68, + 0xf6, 0xf7, 0xbe, 0xf9, 0x28, 0x7b, 0x00, 0x28, + 0xe6, 0xd1, 0xf8, 0xbd, 0x00, 0x00, 0xa4, 0x73, + 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, 0x00, 0x60, + 0x07, 0x00, 0xd1, 0x75, 0x00, 0x00, 0x03, 0x49, + 0x01, 0x20, 0x09, 0x7a, 0x00, 0x29, 0x00, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x04, 0x7a, + 0x01, 0x00, 0x3c, 0x00, 0x8c, 0xa0, 0x00, 0x00, + 0x03, 0x49, 0x01, 0x20, 0x89, 0x7a, 0x00, 0x29, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0xb0, 0xb5, 0x00, 0x24, + 0xfa, 0xf7, 0x76, 0xfc, 0x00, 0x28, 0x14, 0xd0, + 0x01, 0x24, 0x08, 0xf0, 0x7d, 0xfe, 0x0a, 0x4d, + 0x0a, 0x4b, 0x00, 0x21, 0x5a, 0x18, 0xa0, 0x32, + 0x12, 0x78, 0x10, 0x2a, 0x06, 0xd3, 0x8a, 0x00, + 0xd2, 0x18, 0x92, 0x6f, 0x3c, 0x00, 0xc8, 0xa0, + 0x00, 0x00, 0x82, 0x1a, 0xaa, 0x42, 0x00, 0xd2, + 0x00, 0x24, 0x01, 0x31, 0x03, 0x29, 0xf0, 0xd3, + 0x20, 0x1c, 0xb0, 0xbd, 0x00, 0x00, 0x8b, 0x08, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x01, 0x48, + 0xc0, 0x68, 0x70, 0x47, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x16, 0x1c, 0xfd, 0xf7, 0x2e, 0xfe, 0x00, 0x20, + 0xe0, 0x60, 0x26, 0x61, 0xa5, 0x60, 0x3c, 0x00, + 0x04, 0xa1, 0x00, 0x00, 0x70, 0xbd, 0x00, 0x00, + 0xf8, 0xb5, 0x17, 0x1c, 0x0e, 0x1c, 0x04, 0x1c, + 0x00, 0x28, 0x01, 0xd0, 0x00, 0x2e, 0x01, 0xd1, + 0xf7, 0xf7, 0xf2, 0xf8, 0xa0, 0x68, 0x07, 0xf0, + 0x49, 0xf9, 0x05, 0x1c, 0x01, 0xd1, 0xf7, 0xf7, + 0xeb, 0xf8, 0x29, 0x1c, 0x6e, 0x60, 0xaf, 0x60, + 0x20, 0x1c, 0xfd, 0xf7, 0xfd, 0xfd, 0xe0, 0x68, + 0x41, 0x1c, 0xe1, 0x60, 0x00, 0x28, 0x03, 0xd1, + 0x3c, 0x00, 0x40, 0xa1, 0x00, 0x00, 0x05, 0x48, + 0x21, 0x69, 0x05, 0xf0, 0x2c, 0xf9, 0x20, 0x68, + 0xa8, 0x42, 0x02, 0xd1, 0x38, 0x1c, 0xf6, 0xf7, + 0x48, 0xf9, 0xf8, 0xbd, 0x00, 0x00, 0xc4, 0x60, + 0x01, 0x00, 0x00, 0x22, 0x01, 0x39, 0x10, 0xb5, + 0x05, 0xe0, 0x0c, 0x23, 0x53, 0x43, 0x1c, 0x18, + 0x0c, 0x34, 0xc4, 0x50, 0x01, 0x32, 0x8a, 0x42, + 0xf7, 0xd3, 0x00, 0x21, 0x0c, 0x23, 0x5a, 0x43, + 0x81, 0x50, 0x3c, 0x00, 0x7c, 0xa1, 0x00, 0x00, + 0x10, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x01, 0xd1, 0xf7, 0xf7, 0xbb, 0xf8, 0x20, 0x1c, + 0xfd, 0xf7, 0xda, 0xfd, 0x01, 0x1c, 0x85, 0x68, + 0xa0, 0x68, 0x07, 0xf0, 0x09, 0xf9, 0xe0, 0x68, + 0x01, 0x38, 0xe0, 0x60, 0x03, 0xd1, 0x06, 0x48, + 0x21, 0x69, 0x05, 0xf0, 0xe7, 0xf8, 0x21, 0x68, + 0x00, 0x29, 0x03, 0xd0, 0x88, 0x68, 0x49, 0x68, + 0xf6, 0xf7, 0x11, 0xf9, 0x3c, 0x00, 0xb8, 0xa1, + 0x00, 0x00, 0x28, 0x1c, 0xb0, 0xbd, 0xc4, 0x60, + 0x01, 0x00, 0x01, 0x21, 0x00, 0x28, 0x8c, 0xb5, + 0x00, 0xd1, 0x00, 0x21, 0x0e, 0x20, 0x09, 0xf0, + 0x32, 0xfa, 0x83, 0x20, 0x00, 0xab, 0x18, 0x80, + 0x00, 0x20, 0x04, 0xf0, 0x0c, 0xf8, 0x01, 0x90, + 0x68, 0x46, 0x03, 0xf0, 0x7a, 0xf9, 0x8c, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x08, 0xf0, 0xdf, 0xfd, + 0x06, 0x49, 0x0a, 0x89, 0x06, 0x49, 0x3c, 0x00, + 0xf4, 0xa1, 0x00, 0x00, 0x09, 0x6e, 0x41, 0x1a, + 0x0b, 0x0c, 0x59, 0x18, 0x89, 0x1a, 0x09, 0x04, + 0x09, 0x0c, 0x40, 0x1a, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x90, 0x07, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x70, 0xb5, 0x04, 0x1c, 0x88, 0x7e, 0x0d, 0x1c, + 0x20, 0x28, 0x03, 0xd9, 0x03, 0x21, 0x18, 0x20, + 0xf7, 0xf7, 0x40, 0xf8, 0x00, 0x26, 0x26, 0x76, + 0xa8, 0x7e, 0x29, 0x1c, 0x1b, 0x31, 0x60, 0x76, + 0x3c, 0x00, 0x30, 0xa2, 0x00, 0x00, 0x20, 0x1c, + 0x1d, 0x30, 0xaa, 0x7e, 0xf6, 0xf7, 0x5f, 0xf9, + 0x68, 0x68, 0x29, 0x1c, 0x60, 0x60, 0xa8, 0x68, + 0x13, 0x31, 0xa0, 0x60, 0xa8, 0x7b, 0x06, 0x22, + 0x20, 0x73, 0xe8, 0x7b, 0x60, 0x73, 0x28, 0x7c, + 0xa0, 0x73, 0x68, 0x7c, 0xe0, 0x73, 0xa8, 0x89, + 0x20, 0x82, 0xa8, 0x7c, 0xe0, 0x76, 0x26, 0x77, + 0x20, 0x1c, 0x12, 0x30, 0xa6, 0x76, 0xf6, 0xf7, + 0x46, 0xf9, 0x3c, 0x00, 0x6c, 0xa2, 0x00, 0x00, + 0x60, 0x68, 0x43, 0x1c, 0x1d, 0xd0, 0x11, 0x4d, + 0x6d, 0x61, 0x28, 0x68, 0x00, 0x28, 0x1a, 0xd0, + 0x22, 0x7b, 0x01, 0x1c, 0x0b, 0x7b, 0x9a, 0x42, + 0x01, 0xd3, 0x20, 0x60, 0x14, 0xe0, 0x0b, 0x1c, + 0x09, 0x68, 0x00, 0x29, 0x0b, 0xd0, 0x0e, 0x7b, + 0xb2, 0x42, 0x08, 0xd2, 0x0b, 0x68, 0x00, 0x2b, + 0xf0, 0xd0, 0x1e, 0x7b, 0xb2, 0x42, 0xed, 0xd3, + 0x23, 0x60, 0x0c, 0x60, 0x3c, 0x00, 0xa8, 0xa2, + 0x00, 0x00, 0x01, 0xe0, 0x21, 0x60, 0x1c, 0x60, + 0x00, 0x20, 0x70, 0xbd, 0x26, 0x60, 0x2c, 0x60, + 0xfa, 0xe7, 0xa4, 0x6e, 0x01, 0x00, 0x13, 0x4a, + 0xb0, 0xb5, 0x51, 0x68, 0x01, 0x24, 0x00, 0x29, + 0x1e, 0xd0, 0x13, 0x1d, 0xd1, 0x61, 0x13, 0x62, + 0x43, 0x68, 0x04, 0xe0, 0x10, 0x62, 0x00, 0x68, + 0xd0, 0x61, 0x00, 0x28, 0x14, 0xd0, 0xd0, 0x69, + 0x45, 0x68, 0x9d, 0x42, 0xf6, 0xd1, 0x3c, 0x00, + 0xe4, 0xa2, 0x00, 0x00, 0x10, 0x6a, 0x81, 0x42, + 0x04, 0xd1, 0x51, 0x60, 0xd0, 0x69, 0x00, 0x68, + 0x08, 0x60, 0x02, 0xe0, 0xd1, 0x69, 0x09, 0x68, + 0x01, 0x60, 0xd0, 0x69, 0xfc, 0xf7, 0xce, 0xff, + 0x00, 0x28, 0x00, 0xd0, 0x00, 0x24, 0x20, 0x1c, + 0xb0, 0xbd, 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x17, 0x4d, 0x01, 0x24, 0x29, 0x68, + 0x00, 0x29, 0x27, 0xd0, 0x6d, 0x61, 0x29, 0x61, + 0x3c, 0x00, 0x20, 0xa3, 0x00, 0x00, 0x43, 0x68, + 0x04, 0xe0, 0x68, 0x61, 0x00, 0x68, 0x28, 0x61, + 0x00, 0x28, 0x1d, 0xd0, 0x28, 0x69, 0x42, 0x68, + 0x9a, 0x42, 0xf6, 0xd1, 0xaa, 0x69, 0x2b, 0x69, + 0x9a, 0x42, 0x00, 0xd1, 0xa9, 0x61, 0x6a, 0x69, + 0x91, 0x42, 0x03, 0xd1, 0x29, 0x60, 0x00, 0x68, + 0x08, 0x60, 0x06, 0xe0, 0x00, 0x68, 0x10, 0x60, + 0x28, 0x68, 0x00, 0x28, 0x01, 0xd1, 0x07, 0xf0, + 0xcc, 0xfe, 0x3c, 0x00, 0x5c, 0xa3, 0x00, 0x00, + 0x28, 0x69, 0xfc, 0xf7, 0x9d, 0xff, 0x00, 0x28, + 0x02, 0xd0, 0x00, 0x24, 0x00, 0xe0, 0x01, 0x24, + 0x20, 0x1c, 0xb0, 0xbd, 0xa4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x07, 0x48, 0x44, 0x68, + 0x07, 0xe0, 0x21, 0x1c, 0x44, 0x31, 0x28, 0x1c, + 0x00, 0xf0, 0xd6, 0xfc, 0x00, 0x28, 0x02, 0xd1, + 0x64, 0x68, 0x00, 0x2c, 0xf5, 0xd1, 0x20, 0x1c, + 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xa3, + 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, 0x70, 0xb5, + 0x0d, 0x1c, 0x14, 0x1c, 0x00, 0x28, 0x0b, 0x4e, + 0x08, 0xd0, 0x70, 0x6e, 0x06, 0x23, 0x58, 0x43, + 0x02, 0x04, 0x12, 0x0c, 0x31, 0x1c, 0x28, 0x1c, + 0x22, 0x80, 0x07, 0xe0, 0x21, 0x88, 0x06, 0x20, + 0xf6, 0xf7, 0xa7, 0xf9, 0x70, 0x66, 0x22, 0x88, + 0x29, 0x1c, 0x30, 0x1c, 0xf6, 0xf7, 0x95, 0xf8, + 0x01, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xa3, 0x00, 0x00, 0x10, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x03, 0x28, 0x03, 0xd8, 0x04, 0x4a, + 0xc0, 0x00, 0x11, 0x50, 0x80, 0xbd, 0x01, 0x21, + 0x26, 0x20, 0xf6, 0xf7, 0x5b, 0xff, 0x80, 0xbd, + 0x7c, 0x79, 0x01, 0x00, 0xb0, 0xb5, 0x05, 0x1c, + 0xc0, 0x68, 0x01, 0x89, 0x39, 0x29, 0x39, 0xd3, + 0x04, 0x68, 0xa0, 0x79, 0x88, 0x28, 0x35, 0xd1, + 0xe0, 0x79, 0x8e, 0x28, 0x32, 0xd1, 0x20, 0x7a, + 0x3c, 0x00, 0x10, 0xa4, 0x00, 0x00, 0x01, 0x28, + 0x2f, 0xd1, 0x60, 0x7a, 0x03, 0x28, 0x2c, 0xd1, + 0x20, 0x7b, 0x02, 0x28, 0x01, 0xd0, 0xfe, 0x28, + 0x27, 0xd1, 0x60, 0x7b, 0x1d, 0x21, 0x08, 0x40, + 0x01, 0x28, 0x22, 0xd1, 0xa0, 0x7b, 0xc8, 0x21, + 0x08, 0x40, 0x08, 0x28, 0x1d, 0xd1, 0xa8, 0x1d, + 0xfb, 0xf7, 0xe1, 0xf9, 0x00, 0x28, 0x18, 0xd0, + 0x19, 0x20, 0x21, 0x5c, 0x00, 0x29, 0x14, 0xd1, + 0x01, 0x30, 0x3c, 0x00, 0x4c, 0xa4, 0x00, 0x00, + 0x39, 0x28, 0xf9, 0xdb, 0x68, 0x8b, 0x04, 0x21, + 0x08, 0x43, 0x68, 0x83, 0x03, 0xf0, 0xd6, 0xfe, + 0x00, 0x28, 0x09, 0xd1, 0x00, 0x23, 0x00, 0x22, + 0x26, 0x20, 0x04, 0x49, 0x09, 0xf0, 0x92, 0xf9, + 0x03, 0x48, 0x00, 0x68, 0x01, 0xf0, 0x84, 0xf9, + 0xb0, 0xbd, 0x00, 0x00, 0x50, 0xc3, 0x00, 0x00, + 0x0c, 0x79, 0x01, 0x00, 0xb0, 0xb5, 0x08, 0x4c, + 0xa3, 0x68, 0x01, 0x33, 0x3c, 0x00, 0x88, 0xa4, + 0x00, 0x00, 0xa3, 0x60, 0x0c, 0x1c, 0x09, 0xd0, + 0x25, 0x68, 0x00, 0x2d, 0x03, 0xd0, 0x23, 0x7a, + 0x61, 0x68, 0xf5, 0xf7, 0xa3, 0xff, 0x20, 0x1c, + 0xf7, 0xf7, 0xa9, 0xf9, 0xb0, 0xbd, 0x94, 0x79, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0xc0, 0x68, + 0x01, 0x89, 0x05, 0x68, 0x08, 0x29, 0x53, 0xd3, + 0x06, 0x22, 0x28, 0x1c, 0x55, 0x49, 0xf5, 0xf7, + 0x9e, 0xff, 0x00, 0x28, 0x37, 0xd1, 0x3c, 0x00, + 0xc4, 0xa4, 0x00, 0x00, 0xe9, 0x88, 0x52, 0x4e, + 0x04, 0x3e, 0x81, 0x29, 0x24, 0xd1, 0xe5, 0x68, + 0x29, 0x68, 0x08, 0x7a, 0x4a, 0x7a, 0x00, 0x02, + 0x80, 0x18, 0x00, 0x04, 0x00, 0x0c, 0x42, 0x0b, + 0x00, 0x05, 0x00, 0x0d, 0xe2, 0x75, 0x20, 0x83, + 0x4b, 0x89, 0x00, 0x20, 0x42, 0x00, 0xb2, 0x5a, + 0x9a, 0x42, 0x06, 0xd1, 0x28, 0x89, 0x0c, 0x38, + 0x02, 0x0a, 0x00, 0x02, 0x10, 0x43, 0x48, 0x81, + 0x3c, 0x00, 0x00, 0xa5, 0x00, 0x00, 0x02, 0xe0, + 0x01, 0x30, 0x02, 0x28, 0xf1, 0xd3, 0xe0, 0x68, + 0x01, 0x89, 0x0a, 0x39, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x0a, 0x31, 0x1c, 0xe0, 0x00, 0x22, + 0x00, 0x20, 0x43, 0x00, 0xf3, 0x5a, 0x8b, 0x42, + 0x01, 0xd1, 0x01, 0x22, 0x02, 0xe0, 0x01, 0x30, + 0x02, 0x28, 0xf6, 0xd3, 0x00, 0x2a, 0x11, 0xd1, + 0x07, 0xe0, 0x36, 0x49, 0x06, 0x22, 0x06, 0x31, + 0x28, 0x1c, 0x3c, 0x00, 0x3c, 0xa5, 0x00, 0x00, + 0xf5, 0xf7, 0x5e, 0xff, 0x00, 0x28, 0x08, 0xd1, + 0xe0, 0x68, 0x01, 0x89, 0x06, 0x39, 0x01, 0x81, + 0xe0, 0x68, 0x01, 0x68, 0x06, 0x31, 0x01, 0x60, + 0x10, 0xe0, 0xe0, 0x68, 0xff, 0xf7, 0xe2, 0xfc, + 0x0c, 0xe0, 0x02, 0x31, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x02, 0x39, 0x01, 0x60, 0xe0, 0x68, + 0x00, 0x89, 0x02, 0x38, 0x02, 0x0a, 0x00, 0x02, + 0x10, 0x43, 0x08, 0x80, 0x3c, 0x00, 0x78, 0xa5, + 0x00, 0x00, 0xe0, 0x68, 0x03, 0x25, 0x02, 0x89, + 0x01, 0x68, 0x24, 0x4e, 0x02, 0x2a, 0x10, 0xd9, + 0x09, 0x88, 0x08, 0x29, 0x05, 0xd0, 0xc1, 0x23, + 0xdb, 0x00, 0x99, 0x42, 0x03, 0xd1, 0x01, 0x25, + 0x02, 0xe0, 0x00, 0x25, 0x00, 0xe0, 0x02, 0x25, + 0xe9, 0x00, 0x71, 0x58, 0x00, 0x29, 0x00, 0xd1, + 0x02, 0x25, 0xf7, 0xf7, 0x04, 0xf8, 0xe9, 0x00, + 0x89, 0x19, 0x89, 0x88, 0x88, 0x42, 0x3c, 0x00, + 0xb4, 0xa5, 0x00, 0x00, 0x00, 0xd9, 0x03, 0x25, + 0xa1, 0x1d, 0x20, 0x1c, 0xfd, 0xf7, 0x34, 0xfc, + 0x00, 0x28, 0x00, 0xd1, 0x03, 0x25, 0x02, 0x2d, + 0x05, 0xd0, 0x03, 0x2d, 0x07, 0xd1, 0xe0, 0x68, + 0xf6, 0xf7, 0xe2, 0xff, 0x70, 0xbd, 0x20, 0x1c, + 0xfd, 0xf7, 0x1c, 0xfd, 0x70, 0xbd, 0xe0, 0x68, + 0x01, 0x89, 0x02, 0x39, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x02, 0x31, 0x01, 0x60, 0xe8, 0x00, + 0x3c, 0x00, 0xf0, 0xa5, 0x00, 0x00, 0x31, 0x58, + 0x20, 0x1c, 0xf5, 0xf7, 0xf1, 0xfe, 0x00, 0x28, + 0xef, 0xd1, 0xe0, 0x68, 0x01, 0x89, 0x02, 0x31, + 0x01, 0x81, 0xe0, 0x68, 0x01, 0x68, 0x02, 0x39, + 0x01, 0x60, 0xe3, 0xe7, 0x00, 0x00, 0x6a, 0x46, + 0x01, 0x00, 0x7c, 0x79, 0x01, 0x00, 0x70, 0xb5, + 0x0e, 0x1c, 0x04, 0x1c, 0x15, 0x1c, 0xf7, 0xf7, + 0x8c, 0xfb, 0x00, 0x28, 0x2a, 0xd0, 0x1b, 0x49, + 0x08, 0x68, 0x3c, 0x00, 0x2c, 0xa6, 0x00, 0x00, + 0x01, 0x30, 0x08, 0x60, 0x00, 0x2e, 0x0a, 0xd0, + 0x01, 0x2e, 0x0b, 0xd0, 0x02, 0x2e, 0x0f, 0xd1, + 0x20, 0x1c, 0x04, 0xf0, 0xcd, 0xf8, 0x20, 0x1c, + 0xff, 0xf7, 0xd6, 0xfe, 0x0c, 0xe0, 0x08, 0x21, + 0xe0, 0x68, 0x02, 0xe0, 0xc1, 0x21, 0xe0, 0x68, + 0xc9, 0x00, 0x04, 0xf0, 0x35, 0xf9, 0x03, 0xe0, + 0x02, 0x21, 0x26, 0x20, 0xf6, 0xf7, 0x20, 0xfe, + 0xe2, 0x7d, 0xe1, 0x6a, 0x3c, 0x00, 0x68, 0xa6, + 0x00, 0x00, 0x28, 0x1c, 0xfc, 0xf7, 0x95, 0xfb, + 0x20, 0x63, 0x00, 0x20, 0x20, 0x62, 0xa0, 0x62, + 0x20, 0x1c, 0x00, 0xf0, 0x6c, 0xfe, 0x70, 0xbd, + 0xe0, 0x68, 0xf6, 0xf7, 0x8a, 0xff, 0x00, 0x2d, + 0xf9, 0xd0, 0xe3, 0x7d, 0x00, 0x22, 0x01, 0x20, + 0xe1, 0x6a, 0xf5, 0xf7, 0xa7, 0xfe, 0x70, 0xbd, + 0x00, 0x00, 0x94, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x28, 0x04, 0xd1, 0x05, 0x48, 0x3c, 0x00, + 0xa4, 0xa6, 0x00, 0x00, 0x00, 0x68, 0x01, 0xf0, + 0x09, 0xf9, 0x80, 0xbd, 0x03, 0x21, 0x26, 0x20, + 0xf6, 0xf7, 0xf8, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x0c, 0x79, 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x80, 0x79, 0x00, 0x24, 0xc0, 0x07, 0x2d, 0xd5, + 0xf0, 0x68, 0x00, 0x68, 0x41, 0x7a, 0x11, 0x29, + 0x28, 0xd1, 0xc1, 0x88, 0x0a, 0x0a, 0x09, 0x02, + 0x11, 0x43, 0xc9, 0x04, 0x22, 0xd1, 0x01, 0x78, + 0x3c, 0x00, 0xe0, 0xa6, 0x00, 0x00, 0x11, 0x4f, + 0x09, 0x07, 0x89, 0x0e, 0x08, 0x18, 0x41, 0x88, + 0x0a, 0x0a, 0x09, 0x02, 0x11, 0x43, 0x0d, 0x04, + 0x2d, 0x0c, 0x43, 0x2d, 0x39, 0x68, 0x01, 0xd1, + 0xca, 0x07, 0x0e, 0xd4, 0x44, 0x2d, 0x06, 0xd1, + 0xc9, 0x07, 0x04, 0xd5, 0x24, 0x30, 0x00, 0xf0, + 0x22, 0xfb, 0x00, 0x28, 0x05, 0xd0, 0x06, 0x48, + 0x85, 0x42, 0x06, 0xd1, 0x38, 0x68, 0x80, 0x07, + 0x03, 0xd5, 0x3c, 0x00, 0x1c, 0xa7, 0x00, 0x00, + 0x01, 0x24, 0xf0, 0x68, 0xf6, 0xf7, 0x3a, 0xff, + 0x20, 0x1c, 0xf8, 0xbd, 0x7c, 0x5a, 0x01, 0x00, + 0x6c, 0x07, 0x00, 0x00, 0x80, 0xb5, 0x00, 0x28, + 0x07, 0xd0, 0x00, 0x21, 0x26, 0x20, 0x08, 0xf0, + 0x7b, 0xff, 0x02, 0x48, 0x00, 0x68, 0x01, 0xf0, + 0xbb, 0xf8, 0x80, 0xbd, 0x0c, 0x79, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x09, 0x4a, 0x08, 0x1c, + 0x51, 0x68, 0x01, 0x31, 0x3c, 0x00, 0x58, 0xa7, + 0x00, 0x00, 0x51, 0x60, 0x00, 0x21, 0x21, 0x62, + 0xa1, 0x62, 0xe2, 0x7d, 0xe1, 0x6a, 0xfc, 0xf7, + 0x18, 0xfb, 0x20, 0x63, 0x20, 0x1c, 0xf7, 0xf7, + 0xe6, 0xfa, 0x20, 0x1c, 0x00, 0xf0, 0xef, 0xfd, + 0x10, 0xbd, 0x94, 0x79, 0x01, 0x00, 0x0c, 0xb5, + 0x02, 0x1c, 0x08, 0x1c, 0x00, 0x21, 0x01, 0x91, + 0x00, 0x92, 0x6a, 0x46, 0x01, 0xa9, 0x00, 0xf0, + 0x02, 0xf8, 0x0c, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xa7, 0x00, 0x00, 0x70, 0xb5, 0x13, 0x68, + 0x00, 0x2b, 0x1e, 0xd0, 0x00, 0x26, 0x0b, 0x68, + 0x00, 0x2b, 0x02, 0xd1, 0x13, 0x68, 0x1b, 0x68, + 0x0b, 0x60, 0x13, 0x68, 0x1c, 0x68, 0x1b, 0x89, + 0xe5, 0x18, 0x08, 0xe0, 0x5c, 0x78, 0x1c, 0x19, + 0x02, 0x34, 0x0c, 0x60, 0x1c, 0x78, 0x84, 0x42, + 0x01, 0xd1, 0x18, 0x1c, 0x70, 0xbd, 0x0b, 0x68, + 0xab, 0x42, 0xf3, 0xd3, 0x13, 0x68, 0xdb, 0x68, + 0x3c, 0x00, 0xd0, 0xa7, 0x00, 0x00, 0x13, 0x60, + 0x0e, 0x60, 0x13, 0x68, 0x00, 0x2b, 0xe1, 0xd1, + 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x70, 0xb5, + 0x03, 0x1c, 0x20, 0xd0, 0x18, 0x68, 0x1e, 0x89, + 0x05, 0x1c, 0x16, 0xe0, 0x04, 0x78, 0xdd, 0x2c, + 0x10, 0xd1, 0x84, 0x78, 0x00, 0x2c, 0x0d, 0xd1, + 0xc4, 0x78, 0x50, 0x2c, 0x0a, 0xd1, 0x04, 0x79, + 0xf2, 0x2c, 0x07, 0xd1, 0x44, 0x79, 0x8c, 0x42, + 0x04, 0xd1, 0x3c, 0x00, 0x0c, 0xa8, 0x00, 0x00, + 0x02, 0x29, 0x0c, 0xd1, 0x84, 0x79, 0x94, 0x42, + 0x09, 0xd0, 0x44, 0x78, 0x20, 0x18, 0x02, 0x30, + 0x44, 0x1b, 0xb4, 0x42, 0xe5, 0xdb, 0xdb, 0x68, + 0x00, 0x2b, 0xde, 0xd1, 0x00, 0x20, 0x70, 0xbd, + 0x04, 0x49, 0x80, 0xb5, 0x0a, 0x78, 0x0a, 0x20, + 0x00, 0x2a, 0x00, 0xd0, 0x48, 0x6a, 0x00, 0xf0, + 0xd1, 0xf8, 0x80, 0xbd, 0x1c, 0x75, 0x01, 0x00, + 0xb0, 0xb5, 0x17, 0x4c, 0x3c, 0x00, 0x48, 0xa8, + 0x00, 0x00, 0x20, 0x68, 0x00, 0x28, 0x29, 0xd0, + 0x16, 0x4d, 0xe8, 0x69, 0x00, 0x28, 0x25, 0xd1, + 0x01, 0xf0, 0x3f, 0xfa, 0x00, 0x28, 0x21, 0xd1, + 0xff, 0xf7, 0x41, 0xfc, 0x00, 0x28, 0x1d, 0xd1, + 0x20, 0x68, 0xa9, 0x69, 0x40, 0x18, 0x08, 0xf0, + 0xd6, 0xf9, 0x00, 0x28, 0x16, 0xd0, 0x02, 0xf0, + 0x06, 0xfd, 0x21, 0x68, 0x40, 0x18, 0x08, 0xf0, + 0xce, 0xf9, 0x00, 0x28, 0x0e, 0xd0, 0x3c, 0x00, + 0x84, 0xa8, 0x00, 0x00, 0x01, 0x20, 0xe8, 0x61, + 0x00, 0x22, 0x25, 0x21, 0x80, 0x20, 0x08, 0xf0, + 0x8f, 0xff, 0x06, 0x48, 0x29, 0x6a, 0x04, 0xf0, + 0x83, 0xfd, 0x01, 0x21, 0x28, 0x6a, 0x00, 0xf0, + 0x89, 0xff, 0xb0, 0xbd, 0xe8, 0x59, 0x01, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x00, 0x24, 0xfa, 0xf7, + 0x0b, 0xff, 0x18, 0x4e, 0x71, 0x6a, 0x40, 0x18, + 0x3c, 0x00, 0xc0, 0xa8, 0x00, 0x00, 0x00, 0xf0, + 0x8e, 0xf8, 0x00, 0x28, 0x0b, 0xd1, 0x04, 0xf0, + 0xfe, 0xfb, 0x00, 0x21, 0x25, 0x20, 0x08, 0xf0, + 0xb0, 0xfe, 0x03, 0x22, 0x29, 0x1c, 0x28, 0x1c, + 0x00, 0xf0, 0xaf, 0xf8, 0x18, 0xe0, 0x70, 0x6a, + 0x44, 0x1e, 0x00, 0xf0, 0x7c, 0xf8, 0x00, 0x28, + 0x12, 0xd1, 0x0c, 0x48, 0x31, 0x6a, 0x04, 0xf0, + 0x56, 0xfd, 0x01, 0x21, 0x30, 0x6a, 0x00, 0xf0, + 0x5c, 0xff, 0x3c, 0x00, 0xfc, 0xa8, 0x00, 0x00, + 0x00, 0x20, 0xfa, 0xf7, 0x0d, 0xfe, 0x06, 0xf0, + 0x03, 0xf8, 0x00, 0x23, 0x00, 0x22, 0x25, 0x20, + 0x05, 0x49, 0x08, 0xf0, 0x3f, 0xff, 0x20, 0x1c, + 0x07, 0xf0, 0xfc, 0xfa, 0x70, 0xbd, 0x00, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x10, 0x27, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x28, + 0x07, 0xd0, 0x80, 0x28, 0x0d, 0xd1, 0x00, 0x22, + 0x00, 0x21, 0x08, 0x48, 0x3c, 0x00, 0x38, 0xa9, + 0x00, 0x00, 0xf8, 0xf7, 0x9a, 0xfe, 0x80, 0xbd, + 0x01, 0x29, 0x02, 0xd1, 0x06, 0x49, 0x00, 0x20, + 0xc8, 0x61, 0x04, 0xf0, 0xbe, 0xfb, 0x80, 0xbd, + 0x05, 0x21, 0x25, 0x20, 0xf6, 0xf7, 0xa7, 0xfc, + 0x80, 0xbd, 0x61, 0xa9, 0x00, 0x00, 0x1c, 0x75, + 0x01, 0x00, 0x00, 0x21, 0x00, 0x28, 0x80, 0xb5, + 0x01, 0xd1, 0x03, 0x48, 0x41, 0x68, 0x01, 0x22, + 0x25, 0x20, 0x08, 0xf0, 0x2c, 0xfe, 0x3c, 0x00, + 0x74, 0xa9, 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0xe8, 0x59, 0x01, 0x00, 0x02, 0x49, 0xc8, 0x68, + 0x01, 0x38, 0x48, 0x62, 0x70, 0x47, 0x00, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0x38, 0xb5, 0x03, 0x1c, + 0x08, 0x1c, 0x19, 0x1c, 0x11, 0x4b, 0x06, 0xd0, + 0x01, 0x21, 0x11, 0x80, 0x0a, 0x1c, 0x19, 0x1c, + 0xf5, 0xf7, 0xaa, 0xfd, 0x17, 0xe0, 0x0d, 0x4d, + 0x01, 0x1c, 0x2c, 0x78, 0x12, 0x88, 0x18, 0x1c, + 0x3c, 0x00, 0xb0, 0xa9, 0x00, 0x00, 0xf5, 0xf7, + 0xa2, 0xfd, 0x28, 0x78, 0x84, 0x42, 0x0d, 0xd0, + 0x00, 0x23, 0x6b, 0x61, 0x00, 0x28, 0x03, 0xd0, + 0x00, 0x20, 0x07, 0xf0, 0xa4, 0xfa, 0x05, 0xe0, + 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, 0x00, 0x92, + 0xf8, 0xf7, 0x23, 0xfc, 0x01, 0x20, 0x38, 0xbd, + 0x00, 0x00, 0x1c, 0x75, 0x01, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x01, 0x26, 0x08, 0xf0, 0xe1, 0xf9, + 0x05, 0x1c, 0x3c, 0x00, 0xec, 0xa9, 0x00, 0x00, + 0x00, 0x20, 0xfa, 0xf7, 0x8b, 0xfd, 0x44, 0x43, + 0x02, 0xf0, 0x40, 0xfc, 0x02, 0xf0, 0x3e, 0xfc, + 0x01, 0x1c, 0x23, 0x1c, 0x00, 0x22, 0x28, 0x1c, + 0x08, 0xf0, 0x7c, 0xfa, 0x00, 0x28, 0x13, 0xd1, + 0x0a, 0x48, 0x23, 0x1c, 0x00, 0x22, 0x81, 0x69, + 0x28, 0x1c, 0x08, 0xf0, 0x73, 0xfa, 0x00, 0x28, + 0x0a, 0xd1, 0xf8, 0xf7, 0x19, 0xfc, 0x01, 0x1c, + 0x23, 0x1c, 0x00, 0x22, 0x3c, 0x00, 0x28, 0xaa, + 0x00, 0x00, 0x28, 0x1c, 0x08, 0xf0, 0x69, 0xfa, + 0x00, 0x28, 0x00, 0xd1, 0x00, 0x26, 0x30, 0x1c, + 0x70, 0xbd, 0x1c, 0x75, 0x01, 0x00, 0x70, 0xb5, + 0x0d, 0x1c, 0x04, 0x1c, 0x16, 0x1c, 0x07, 0xf0, + 0x76, 0xf9, 0x00, 0x28, 0x0d, 0xd0, 0xfa, 0xf7, + 0x52, 0xfe, 0x00, 0x28, 0x09, 0xd0, 0xff, 0x30, + 0x01, 0x30, 0x43, 0x68, 0x00, 0x2b, 0x04, 0xd0, + 0x22, 0x1c, 0x29, 0x1c, 0x30, 0x1c, 0x3c, 0x00, + 0x64, 0xaa, 0x00, 0x00, 0xf5, 0xf7, 0xbb, 0xfc, + 0x70, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x1d, 0x20, 0x08, 0xf0, 0xdf, 0xfd, 0x07, 0x4a, + 0x07, 0x48, 0x11, 0x69, 0x01, 0x60, 0x51, 0x69, + 0x41, 0x60, 0x06, 0x49, 0x49, 0x68, 0x81, 0x60, + 0x00, 0x21, 0xc1, 0x60, 0x03, 0xf0, 0x74, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x28, 0x61, 0x01, 0x00, + 0x48, 0x75, 0x01, 0x00, 0x90, 0x5c, 0x01, 0x00, + 0x3c, 0x00, 0xa0, 0xaa, 0x00, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x40, 0x6b, 0x00, 0x28, 0x35, 0xd0, + 0x1d, 0x4d, 0x00, 0x26, 0x28, 0x78, 0x00, 0x28, + 0x24, 0xd0, 0x41, 0x20, 0x00, 0x5d, 0x00, 0x28, + 0x03, 0xd1, 0x08, 0xf0, 0x76, 0xf9, 0xa8, 0x61, + 0x1b, 0xe0, 0x69, 0x69, 0x01, 0x31, 0x69, 0x61, + 0xa8, 0x68, 0x00, 0x28, 0x08, 0xd0, 0x81, 0x42, + 0x06, 0xd1, 0x20, 0x69, 0x01, 0x1c, 0x10, 0x31, + 0x04, 0x30, 0x3c, 0x00, 0xdc, 0xaa, 0x00, 0x00, + 0x82, 0x22, 0xff, 0xf7, 0xad, 0xff, 0x68, 0x68, + 0x00, 0x28, 0x0a, 0xd0, 0x69, 0x69, 0x81, 0x42, + 0x07, 0xd1, 0x20, 0x69, 0x01, 0x1c, 0x10, 0x31, + 0x04, 0x30, 0x02, 0x22, 0xff, 0xf7, 0xa0, 0xff, + 0x6e, 0x61, 0x68, 0x78, 0x05, 0x21, 0x08, 0x40, + 0x08, 0xd0, 0x07, 0x48, 0x00, 0x78, 0x0e, 0x28, + 0x03, 0xd3, 0x60, 0x34, 0xe0, 0x79, 0xfb, 0xf7, + 0xcf, 0xff, 0x70, 0xbd, 0x3c, 0x00, 0x18, 0xab, + 0x00, 0x00, 0x03, 0x48, 0x06, 0x60, 0x70, 0xbd, + 0x00, 0x00, 0x1c, 0x75, 0x01, 0x00, 0x10, 0x67, + 0x01, 0x00, 0xd4, 0x7e, 0x01, 0x00, 0x80, 0x02, + 0x70, 0x47, 0x14, 0x23, 0x30, 0xb5, 0x09, 0x4d, + 0x4b, 0x43, 0x5b, 0x19, 0x5b, 0x68, 0x08, 0x24, + 0x00, 0x2b, 0x00, 0xd1, 0x02, 0x24, 0x38, 0x23, + 0x5a, 0x43, 0x05, 0x4b, 0x89, 0x00, 0xd2, 0x18, + 0x51, 0x5a, 0x02, 0x68, 0x09, 0x19, 0x3c, 0x00, + 0x54, 0xab, 0x00, 0x00, 0x51, 0x1a, 0x01, 0x60, + 0x30, 0xbd, 0x00, 0x00, 0x74, 0x40, 0x01, 0x00, + 0x8c, 0x41, 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x1c, + 0x2c, 0x48, 0x14, 0x1c, 0x2c, 0x4a, 0x48, 0x43, + 0x86, 0x46, 0x80, 0x18, 0x80, 0x0d, 0x84, 0x46, + 0x2b, 0x48, 0x2a, 0x4a, 0x06, 0x26, 0x1d, 0x1c, + 0x48, 0x43, 0x4a, 0x43, 0x0e, 0x2f, 0x40, 0xd2, + 0x01, 0xa3, 0xdb, 0x5d, 0x5b, 0x00, 0x9f, 0x44, + 0x3c, 0x00, 0x90, 0xab, 0x00, 0x00, 0x06, 0x08, + 0x0a, 0x0f, 0x14, 0x18, 0x1d, 0x20, 0x27, 0x24, + 0x27, 0x2b, 0x2f, 0x31, 0xc8, 0x00, 0x1f, 0xe0, + 0x88, 0x00, 0x1d, 0xe0, 0x21, 0x49, 0x70, 0x46, + 0x40, 0x18, 0x00, 0x0d, 0x18, 0xe0, 0x1f, 0x4a, + 0x80, 0x18, 0x80, 0x0d, 0x40, 0x18, 0x21, 0xe0, + 0x1e, 0x48, 0x10, 0x18, 0x00, 0x0d, 0x1d, 0xe0, + 0x1d, 0x49, 0x70, 0x46, 0x40, 0x18, 0x40, 0x0d, + 0x0a, 0xe0, 0x3c, 0x00, 0xcc, 0xab, 0x00, 0x00, + 0x1b, 0x49, 0x40, 0x18, 0x01, 0xe0, 0x1b, 0x48, + 0x10, 0x18, 0x40, 0x0d, 0x11, 0xe0, 0x1a, 0x49, + 0x40, 0x18, 0x05, 0xe0, 0x60, 0x46, 0x20, 0x80, + 0x00, 0x20, 0x16, 0xe0, 0x17, 0x48, 0x10, 0x18, + 0x80, 0x0d, 0x06, 0xe0, 0x16, 0x49, 0x02, 0xe0, + 0x16, 0x48, 0x48, 0x43, 0x16, 0x49, 0x40, 0x18, + 0xc0, 0x0d, 0x03, 0x30, 0x80, 0x08, 0x80, 0x00, + 0x20, 0x80, 0x2e, 0x80, 0x3c, 0x00, 0x08, 0xac, + 0x00, 0x00, 0xf8, 0xbd, 0xff, 0x21, 0xff, 0x20, + 0xf6, 0xf7, 0x49, 0xfb, 0x00, 0x20, 0x20, 0x80, + 0x28, 0x80, 0xf6, 0xe7, 0x00, 0x00, 0xd1, 0x45, + 0x17, 0x00, 0xff, 0xff, 0x3f, 0x00, 0xe3, 0x38, + 0x0e, 0x00, 0x55, 0x55, 0x15, 0x00, 0xff, 0xff, + 0x0f, 0x00, 0xa9, 0xaa, 0x2a, 0x01, 0x70, 0x1c, + 0x37, 0x00, 0xff, 0xff, 0x1f, 0x00, 0xcb, 0xcc, + 0x4c, 0x00, 0x70, 0x1c, 0x47, 0x00, 0x3c, 0x00, + 0x44, 0xac, 0x00, 0x00, 0xa9, 0xaa, 0x7a, 0x00, + 0x70, 0x1c, 0x67, 0x00, 0xa9, 0xaa, 0xba, 0x00, + 0x84, 0xf6, 0x12, 0x00, 0xec, 0x25, 0xb4, 0x00, + 0x04, 0x49, 0x00, 0x28, 0x01, 0xd0, 0x09, 0x22, + 0x00, 0xe0, 0x14, 0x22, 0x4a, 0x80, 0x48, 0x60, + 0x70, 0x47, 0x00, 0x00, 0xa4, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0x06, 0x22, 0xf5, 0xf7, 0x40, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0xbc, 0xb5, 0x15, 0x1c, + 0x3c, 0x00, 0x80, 0xac, 0x00, 0x00, 0x04, 0x1c, + 0x04, 0x31, 0x09, 0x04, 0x09, 0x0c, 0x01, 0xaa, + 0x6b, 0x46, 0xff, 0xf7, 0x6a, 0xff, 0x38, 0x20, + 0x06, 0x49, 0x68, 0x43, 0x40, 0x18, 0xa1, 0x00, + 0x40, 0x5a, 0x00, 0xab, 0x99, 0x88, 0x40, 0x18, + 0x19, 0x88, 0x40, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0xbc, 0xbd, 0x8c, 0x41, 0x01, 0x00, 0xbc, 0xb5, + 0x04, 0x1c, 0x15, 0x1c, 0x01, 0xaa, 0x6b, 0x46, + 0xff, 0xf7, 0x3c, 0x00, 0xbc, 0xac, 0x00, 0x00, + 0x53, 0xff, 0x38, 0x20, 0x05, 0x49, 0x68, 0x43, + 0x40, 0x18, 0xa1, 0x00, 0x40, 0x5a, 0x00, 0xab, + 0x99, 0x88, 0x40, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0xbc, 0xbd, 0x00, 0x00, 0x8c, 0x41, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x28, 0x0f, 0xd0, 0x00, 0x29, + 0x0d, 0xd0, 0x02, 0x78, 0x0b, 0x78, 0x9a, 0x42, + 0x09, 0xd1, 0xff, 0x2a, 0x05, 0xd0, 0x42, 0x78, + 0x02, 0x32, 0xf5, 0xf7, 0x3c, 0x00, 0xf8, 0xac, + 0x00, 0x00, 0x81, 0xfb, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x06, 0x22, 0x04, 0x49, + 0xf5, 0xf7, 0x75, 0xfb, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x5e, 0x40, 0x01, 0x00, 0x01, 0x1c, + 0x49, 0x78, 0x01, 0x20, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xad, 0x00, 0x00, 0x80, 0xb5, 0x06, 0x22, + 0xf5, 0xf7, 0x60, 0xfb, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x80, 0xb5, 0xff, 0xf7, 0xc7, 0xff, 0x80, 0xbd, + 0x80, 0xb5, 0x06, 0x22, 0x04, 0x49, 0xf5, 0xf7, + 0x51, 0xfb, 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, + 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, 0x00, 0x00, + 0x12, 0x61, 0x01, 0x00, 0x01, 0x1c, 0x80, 0x20, + 0x3c, 0x00, 0x70, 0xad, 0x00, 0x00, 0x81, 0x43, + 0x8a, 0x08, 0x0e, 0x20, 0x1c, 0x2a, 0x10, 0xb5, + 0x06, 0xd2, 0x03, 0x4c, 0x52, 0x00, 0xa3, 0x5c, + 0x8b, 0x42, 0x01, 0xd1, 0x10, 0x19, 0x40, 0x78, + 0x10, 0xbd, 0xfc, 0x41, 0x01, 0x00, 0x14, 0x23, + 0x02, 0x49, 0x58, 0x43, 0x40, 0x18, 0x40, 0x68, + 0x70, 0x47, 0x74, 0x40, 0x01, 0x00, 0x20, 0x22, + 0x01, 0x1c, 0x80, 0xb5, 0x02, 0x48, 0xf5, 0xf7, + 0x52, 0xfd, 0x3c, 0x00, 0xac, 0xad, 0x00, 0x00, + 0x80, 0xbd, 0x00, 0x00, 0x48, 0x61, 0x01, 0x00, + 0x08, 0x06, 0x00, 0x0e, 0x02, 0x28, 0x01, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x01, 0x20, 0x70, 0x47, + 0x00, 0x29, 0x0c, 0xd0, 0x07, 0x49, 0x09, 0x68, + 0x00, 0x29, 0x08, 0xd0, 0x14, 0x23, 0x06, 0x49, + 0x58, 0x43, 0x40, 0x18, 0xc0, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xad, + 0x00, 0x00, 0xac, 0x69, 0x01, 0x00, 0x74, 0x40, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x06, 0x22, + 0x01, 0x1c, 0x04, 0x48, 0xf5, 0xf7, 0x7d, 0xfb, + 0x06, 0x22, 0x21, 0x1c, 0x03, 0x48, 0xf5, 0xf7, + 0x78, 0xfb, 0x10, 0xbd, 0x00, 0x00, 0x12, 0x61, + 0x01, 0x00, 0x40, 0x80, 0x07, 0x00, 0x00, 0x29, + 0x01, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x38, 0x23, + 0x5a, 0x43, 0x07, 0x4b, 0xd2, 0x18, 0x3c, 0x00, + 0x24, 0xae, 0x00, 0x00, 0x83, 0x00, 0xd2, 0x5a, + 0x14, 0x23, 0x58, 0x43, 0x05, 0x4b, 0xc0, 0x18, + 0x40, 0x88, 0x10, 0x18, 0x08, 0x1a, 0x0a, 0x38, + 0x00, 0x04, 0x00, 0x0c, 0x70, 0x47, 0x00, 0x00, + 0x8c, 0x41, 0x01, 0x00, 0x74, 0x40, 0x01, 0x00, + 0xf8, 0xb5, 0x07, 0x1c, 0x08, 0x1c, 0x16, 0x1c, + 0x1c, 0x1c, 0x19, 0x1c, 0x00, 0xf0, 0x5a, 0xf8, + 0x05, 0x1c, 0x14, 0x35, 0x22, 0x1c, 0x31, 0x1c, + 0x3c, 0x00, 0x60, 0xae, 0x00, 0x00, 0x38, 0x1c, + 0xff, 0xf7, 0x0b, 0xff, 0x28, 0x18, 0x00, 0x04, + 0x00, 0x0c, 0xf8, 0xbd, 0x00, 0x00, 0x00, 0xb5, + 0x00, 0xf0, 0x4b, 0xf8, 0x0a, 0x30, 0x00, 0x04, + 0x00, 0x0c, 0x00, 0xbd, 0x00, 0x00, 0xf8, 0xb5, + 0x07, 0x1c, 0x08, 0x1c, 0x16, 0x1c, 0x1c, 0x1c, + 0x19, 0x1c, 0x00, 0xf0, 0x3e, 0xf8, 0x45, 0x00, + 0x1e, 0x35, 0x22, 0x1c, 0x31, 0x1c, 0x38, 0x1c, + 0xff, 0xf7, 0x3c, 0x00, 0x9c, 0xae, 0x00, 0x00, + 0xef, 0xfe, 0x28, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0xf8, 0xbd, 0x00, 0x00, 0xff, 0xb5, 0x0f, 0x1c, + 0x81, 0xb0, 0x0a, 0xa9, 0x14, 0x1c, 0x1e, 0x1c, + 0x03, 0xc9, 0x00, 0xf0, 0x29, 0xf8, 0x05, 0x1c, + 0x1e, 0x35, 0x21, 0x1c, 0x30, 0x1c, 0x00, 0xf0, + 0x23, 0xf8, 0x2d, 0x18, 0x22, 0x1c, 0x39, 0x1c, + 0x01, 0x98, 0xff, 0xf7, 0xd5, 0xfe, 0x28, 0x18, + 0x00, 0x04, 0x00, 0x0c, 0x3c, 0x00, 0xd8, 0xae, + 0x00, 0x00, 0x05, 0xb0, 0xf0, 0xbd, 0x0a, 0x49, + 0x80, 0xb5, 0x09, 0x88, 0x09, 0x29, 0x04, 0xd0, + 0x14, 0x29, 0x07, 0xd1, 0x01, 0x01, 0x80, 0x00, + 0x00, 0xe0, 0xc1, 0x00, 0x08, 0x18, 0x00, 0x04, + 0x00, 0x0c, 0x80, 0xbd, 0xff, 0x21, 0xff, 0x20, + 0xf6, 0xf7, 0xd1, 0xf9, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0xa6, 0x69, 0x01, 0x00, 0x38, 0x23, + 0x59, 0x43, 0x06, 0x4a, 0x14, 0x23, 0x3c, 0x00, + 0x14, 0xaf, 0x00, 0x00, 0x89, 0x18, 0x82, 0x00, + 0x89, 0x5a, 0x05, 0x4a, 0x58, 0x43, 0x80, 0x18, + 0x40, 0x88, 0x08, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0x70, 0x47, 0x00, 0x00, 0x8c, 0x41, 0x01, 0x00, + 0x74, 0x40, 0x01, 0x00, 0x02, 0x48, 0x03, 0x49, + 0x00, 0x68, 0x40, 0x00, 0x08, 0x5a, 0x70, 0x47, + 0xa8, 0x69, 0x01, 0x00, 0x54, 0x40, 0x01, 0x00, + 0x0a, 0x20, 0x70, 0x47, 0x10, 0xb5, 0x04, 0x1c, + 0x3c, 0x00, 0x50, 0xaf, 0x00, 0x00, 0xfd, 0xf7, + 0x62, 0xff, 0x20, 0x1c, 0x10, 0xbd, 0xb0, 0xb5, + 0x04, 0x1c, 0xc0, 0x68, 0x05, 0x68, 0xa0, 0x1d, + 0xff, 0xf7, 0xf5, 0xfe, 0x00, 0x28, 0x18, 0xd0, + 0x21, 0x1c, 0x14, 0x31, 0x20, 0x1c, 0x08, 0xf0, + 0xe2, 0xfd, 0x00, 0x28, 0x11, 0xd0, 0x29, 0x88, + 0x09, 0x48, 0x20, 0x22, 0x81, 0x82, 0x69, 0x88, + 0x01, 0x83, 0xa9, 0x88, 0x06, 0x35, 0x41, 0x83, + 0xc5, 0x61, 0x3c, 0x00, 0x8c, 0xaf, 0x00, 0x00, + 0x30, 0x21, 0x09, 0x5d, 0x11, 0x54, 0x61, 0x6b, + 0x41, 0x62, 0x01, 0x20, 0xf7, 0xf7, 0x28, 0xf8, + 0x20, 0x1c, 0xb0, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x70, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0x21, 0x1c, + 0x14, 0x31, 0x05, 0x68, 0x20, 0x1c, 0x08, 0xf0, + 0xc1, 0xfd, 0x00, 0x28, 0x08, 0xd0, 0x05, 0x4e, + 0xf0, 0x68, 0x02, 0xf0, 0xcf, 0xfd, 0x28, 0x88, + 0xf0, 0x82, 0x03, 0x20, 0x3c, 0x00, 0xc8, 0xaf, + 0x00, 0x00, 0xf7, 0xf7, 0x10, 0xf8, 0x20, 0x1c, + 0x70, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x3e, 0xb5, + 0x04, 0x1c, 0xc0, 0x68, 0x05, 0x68, 0xa0, 0x1d, + 0xff, 0xf7, 0xb7, 0xfe, 0x00, 0x28, 0x21, 0xd0, + 0x21, 0x1c, 0x14, 0x31, 0x20, 0x1c, 0x02, 0xaa, + 0x08, 0xf0, 0x77, 0xfd, 0x00, 0x28, 0x19, 0xd0, + 0x02, 0x98, 0x4b, 0x21, 0x09, 0x5c, 0x00, 0x29, + 0x10, 0xd0, 0x01, 0x29, 0x14, 0xd0, 0x3c, 0x00, + 0x04, 0xb0, 0x00, 0x00, 0x02, 0x29, 0x0c, 0xd1, + 0x29, 0x88, 0x0d, 0x20, 0x00, 0xab, 0x18, 0x80, + 0x20, 0x1c, 0x03, 0xf0, 0x51, 0xf8, 0x01, 0x90, + 0x68, 0x46, 0x02, 0xf0, 0x5d, 0xfa, 0xf6, 0xf7, + 0xb5, 0xf8, 0x00, 0x21, 0x02, 0x98, 0x06, 0xf0, + 0x9f, 0xfe, 0x20, 0x1c, 0x3e, 0xbd, 0x07, 0xf0, + 0x29, 0xf8, 0x02, 0x98, 0x00, 0x21, 0x80, 0x69, + 0xc2, 0x07, 0xd2, 0x0f, 0x04, 0x20, 0xf6, 0xf7, + 0x3c, 0x00, 0x40, 0xb0, 0x00, 0x00, 0x7f, 0xff, + 0xee, 0xe7, 0x10, 0xb5, 0x04, 0x1c, 0xfd, 0xf7, + 0xe6, 0xfe, 0x20, 0x1c, 0x10, 0xbd, 0x3e, 0xb5, + 0x05, 0x1c, 0x00, 0xf0, 0x40, 0xfe, 0x00, 0x28, + 0x15, 0xd1, 0x28, 0x1c, 0x14, 0x30, 0xfa, 0xf7, + 0xce, 0xfb, 0x00, 0x28, 0x0f, 0xd0, 0x05, 0x21, + 0x28, 0x69, 0xff, 0xf7, 0x86, 0xfb, 0x04, 0x1c, + 0x09, 0xd0, 0x05, 0x22, 0x21, 0x1c, 0x68, 0x46, + 0xf5, 0xf7, 0x3c, 0x00, 0x7c, 0xb0, 0x00, 0x00, + 0x3d, 0xfa, 0x05, 0x34, 0x02, 0x94, 0x68, 0x46, + 0x03, 0xf0, 0x1a, 0xfb, 0x2a, 0x1c, 0x0d, 0x21, + 0x8f, 0x20, 0x08, 0xf0, 0x8f, 0xfb, 0x00, 0x20, + 0x3e, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0xfa, 0xf7, 0x98, 0xf8, 0x20, 0x1c, 0x05, 0xf0, + 0xe5, 0xf8, 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x00, 0x69, 0x00, 0x21, + 0x94, 0xb0, 0xff, 0xf7, 0x3c, 0x00, 0xb8, 0xb0, + 0x00, 0x00, 0x61, 0xfb, 0x69, 0x46, 0xfb, 0xf7, + 0x26, 0xf8, 0x00, 0x28, 0x1e, 0xd0, 0x00, 0x98, + 0xfa, 0xf7, 0x29, 0xfa, 0x01, 0x1c, 0x01, 0xa8, + 0x02, 0xf0, 0xd7, 0xf9, 0x00, 0x98, 0xfa, 0xf7, + 0xd2, 0xf9, 0x04, 0x90, 0x05, 0x20, 0x09, 0xad, + 0x68, 0x72, 0x02, 0xa8, 0x21, 0x1c, 0x06, 0x22, + 0x02, 0x30, 0xf5, 0xf7, 0x06, 0xfa, 0x01, 0x20, + 0x08, 0x90, 0x21, 0x6a, 0x0a, 0x90, 0x3c, 0x00, + 0xf4, 0xb0, 0x00, 0x00, 0x28, 0x20, 0x09, 0x91, + 0x00, 0x5d, 0x28, 0x72, 0x01, 0xa8, 0x00, 0xf0, + 0x69, 0xf8, 0x20, 0x1c, 0x14, 0xb0, 0xb0, 0xbd, + 0xff, 0xb5, 0x16, 0x1c, 0x1f, 0x1c, 0x81, 0xb0, + 0x0a, 0x9d, 0x4c, 0x20, 0xf6, 0xf7, 0x90, 0xfb, + 0x04, 0x1c, 0x14, 0x30, 0x06, 0x22, 0x02, 0x99, + 0xf5, 0xf7, 0xea, 0xf9, 0x20, 0x1c, 0x06, 0x22, + 0x01, 0x99, 0xf5, 0xf7, 0xe5, 0xf9, 0x28, 0x20, + 0x3c, 0x00, 0x30, 0xb1, 0x00, 0x00, 0x00, 0x21, + 0x06, 0x55, 0xe1, 0x60, 0x27, 0x62, 0x00, 0x2d, + 0x01, 0xd0, 0x8e, 0x20, 0x00, 0xe0, 0x8d, 0x20, + 0x22, 0x1c, 0x0d, 0x21, 0x08, 0xf0, 0x33, 0xfb, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x05, 0x1c, 0x4c, 0x20, 0xf6, 0xf7, 0x6f, 0xfb, + 0x04, 0x1c, 0x4c, 0x22, 0x29, 0x1c, 0xf5, 0xf7, + 0x26, 0xfa, 0x29, 0x20, 0x40, 0x5d, 0x0d, 0x28, + 0x2c, 0xd2, 0x3c, 0x00, 0x6c, 0xb1, 0x00, 0x00, + 0x01, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, + 0x28, 0x1a, 0x28, 0x1e, 0x06, 0x0a, 0x28, 0x28, + 0x0e, 0x28, 0x22, 0x12, 0x16, 0x00, 0x22, 0x1c, + 0x0d, 0x21, 0x8c, 0x20, 0x1a, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x83, 0x20, 0x16, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x84, 0x20, 0x12, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x85, 0x20, 0x0e, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x86, 0x20, 0x3c, 0x00, 0xa8, 0xb1, + 0x00, 0x00, 0x0a, 0xe0, 0x22, 0x1c, 0x0d, 0x21, + 0x87, 0x20, 0x06, 0xe0, 0x22, 0x1c, 0x0d, 0x21, + 0x89, 0x20, 0x02, 0xe0, 0x22, 0x1c, 0x0d, 0x21, + 0x8b, 0x20, 0x08, 0xf0, 0xf6, 0xfa, 0xb0, 0xbd, + 0xe8, 0x68, 0xf6, 0xf7, 0xe6, 0xf9, 0x20, 0x1c, + 0xf6, 0xf7, 0x11, 0xfb, 0xb0, 0xbd, 0xfe, 0xb5, + 0x05, 0x1c, 0x90, 0x20, 0xf6, 0xf7, 0x2d, 0xfb, + 0x04, 0x1c, 0x90, 0x21, 0xf5, 0xf7, 0x3c, 0x00, + 0xe4, 0xb1, 0x00, 0x00, 0x5b, 0xf9, 0x37, 0x4e, + 0x01, 0x27, 0xf0, 0x69, 0x04, 0x28, 0x03, 0xd9, + 0x70, 0x6b, 0x01, 0x30, 0x70, 0x63, 0x4d, 0xe0, + 0x33, 0x48, 0xb1, 0x6b, 0x04, 0xf0, 0xd0, 0xf8, + 0x01, 0x20, 0x20, 0x62, 0xa8, 0x7e, 0x21, 0x1c, + 0x80, 0x31, 0x02, 0x91, 0x08, 0x70, 0x22, 0x1c, + 0x60, 0x32, 0x01, 0x92, 0x00, 0x20, 0x2f, 0x1c, + 0x20, 0x37, 0x90, 0x72, 0x78, 0x7a, 0x2b, 0x1c, + 0x3c, 0x00, 0x20, 0xb2, 0x00, 0x00, 0x14, 0x33, + 0xd0, 0x72, 0xe8, 0x68, 0xaa, 0x1d, 0xa0, 0x60, + 0xe8, 0x6b, 0x48, 0x60, 0x44, 0x20, 0x40, 0x5d, + 0x08, 0x72, 0x29, 0x1c, 0x20, 0x1c, 0x05, 0xf0, + 0xaa, 0xfc, 0x68, 0x6a, 0x00, 0x28, 0x0a, 0xd1, + 0x01, 0x9a, 0x20, 0x1c, 0x93, 0x7a, 0x02, 0x99, + 0x22, 0x1c, 0x70, 0x32, 0x58, 0x30, 0x09, 0x78, + 0xfa, 0xf7, 0xdb, 0xf9, 0x06, 0xe0, 0x3a, 0x7a, + 0x23, 0x1c, 0x3c, 0x00, 0x5c, 0xb2, 0x00, 0x00, + 0xe8, 0x69, 0x29, 0x6a, 0x70, 0x33, 0xfd, 0xf7, + 0x8d, 0xf9, 0x30, 0x20, 0x40, 0x5d, 0x18, 0x49, + 0x07, 0x28, 0x0b, 0xd1, 0x58, 0x20, 0x00, 0x5d, + 0xc0, 0x07, 0xc0, 0x17, 0x01, 0x30, 0xe0, 0x61, + 0x00, 0x20, 0x20, 0x61, 0x20, 0x1c, 0xf7, 0xf7, + 0x3f, 0xff, 0x18, 0xe0, 0x01, 0x22, 0x20, 0x1c, + 0x05, 0xf0, 0xac, 0xff, 0x07, 0x1c, 0x12, 0xd0, + 0x03, 0xf0, 0x06, 0xff, 0x3c, 0x00, 0x98, 0xb2, + 0x00, 0x00, 0xf3, 0x6d, 0x00, 0x2b, 0x06, 0xd0, + 0x60, 0x68, 0x20, 0x30, 0x82, 0x7b, 0x61, 0x6b, + 0x38, 0x1c, 0xf5, 0xf7, 0x99, 0xf8, 0xe8, 0x68, + 0xf6, 0xf7, 0x73, 0xf9, 0x20, 0x1c, 0xf6, 0xf7, + 0x9e, 0xfa, 0xfe, 0xbd, 0xf0, 0x69, 0x01, 0x30, + 0xf0, 0x61, 0xfa, 0xe7, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0x05, 0x31, + 0x00, 0x00, 0x70, 0xb5, 0x06, 0x1c, 0x3c, 0x00, + 0xd4, 0xb2, 0x00, 0x00, 0x0d, 0x1c, 0x09, 0x04, + 0x09, 0x0c, 0x00, 0x20, 0xf6, 0xf7, 0x7c, 0xf9, + 0x04, 0x1c, 0x2a, 0x1c, 0x31, 0x1c, 0x00, 0x68, + 0xf5, 0xf7, 0x06, 0xf9, 0x20, 0x1c, 0x70, 0xbd, + 0x40, 0x88, 0x70, 0x47, 0x03, 0x78, 0x1b, 0x07, + 0x9b, 0x0f, 0x0b, 0x70, 0x00, 0x78, 0x00, 0x09, + 0x10, 0x70, 0x70, 0x47, 0x04, 0x30, 0x70, 0x47, + 0x04, 0x30, 0x70, 0x47, 0xd4, 0x21, 0x01, 0x70, + 0x3c, 0x00, 0x10, 0xb3, 0x00, 0x00, 0x00, 0x21, + 0x41, 0x70, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x21, + 0x01, 0x70, 0x00, 0x21, 0x41, 0x70, 0x70, 0x47, + 0x00, 0x00, 0xb4, 0x21, 0x01, 0x70, 0x00, 0x21, + 0x41, 0x70, 0x70, 0x47, 0x00, 0x00, 0x01, 0x49, + 0x48, 0x65, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x01, 0x49, 0x08, 0x65, 0x70, 0x47, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0x01, 0x49, + 0x88, 0x65, 0x3c, 0x00, 0x4c, 0xb3, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, + 0xf8, 0xb5, 0x5f, 0x4f, 0x05, 0x1c, 0xb8, 0x68, + 0x01, 0x30, 0xb8, 0x60, 0x07, 0xf0, 0x24, 0xfd, + 0x38, 0x61, 0x90, 0x20, 0xf6, 0xf7, 0x66, 0xfa, + 0x04, 0x1c, 0x90, 0x21, 0xf5, 0xf7, 0x94, 0xf8, + 0x28, 0x6b, 0x27, 0x1c, 0x60, 0x63, 0x68, 0x8b, + 0x80, 0x37, 0x26, 0x1c, 0xc0, 0x07, 0xc0, 0x0f, + 0x20, 0x62, 0x68, 0x8b, 0x3c, 0x00, 0x88, 0xb3, + 0x00, 0x00, 0x60, 0x36, 0x02, 0x21, 0x40, 0x07, + 0xc0, 0x0f, 0x20, 0x63, 0x68, 0x8b, 0x80, 0x07, + 0xc0, 0x0f, 0xf8, 0x60, 0x28, 0x7f, 0x38, 0x70, + 0xb1, 0x72, 0x00, 0x28, 0x08, 0xd1, 0xf9, 0xf7, + 0xc8, 0xff, 0x00, 0x28, 0x02, 0xd0, 0x01, 0x20, + 0x60, 0x62, 0x01, 0xe0, 0x01, 0x20, 0xa0, 0x62, + 0xf8, 0x68, 0x00, 0x28, 0x03, 0xd0, 0x00, 0x21, + 0x02, 0x20, 0x06, 0xf0, 0xcc, 0xff, 0x3c, 0x00, + 0xc4, 0xb3, 0x00, 0x00, 0x2b, 0x1c, 0x10, 0x33, + 0xaa, 0x1d, 0x29, 0x1c, 0x20, 0x1c, 0x05, 0xf0, + 0xdf, 0xfb, 0xa8, 0x6a, 0x00, 0x28, 0x0c, 0xd1, + 0x39, 0x78, 0x02, 0x29, 0x07, 0xd0, 0x22, 0x1c, + 0x70, 0x32, 0x20, 0x1c, 0x58, 0x30, 0xb3, 0x7a, + 0xfa, 0xf7, 0x10, 0xf9, 0x08, 0xe0, 0x01, 0x26, + 0x5e, 0xe0, 0xaa, 0x7d, 0x23, 0x1c, 0x28, 0x6a, + 0x69, 0x6a, 0x70, 0x33, 0xfd, 0xf7, 0xc0, 0xf8, + 0x3c, 0x00, 0x00, 0xb4, 0x00, 0x00, 0xe9, 0x68, + 0x00, 0x20, 0x09, 0x89, 0x00, 0x29, 0x00, 0xd1, + 0x04, 0x20, 0xf0, 0x72, 0x38, 0x78, 0x01, 0x28, + 0x14, 0xd1, 0x00, 0x27, 0x00, 0x90, 0x00, 0x20, + 0x06, 0xe0, 0x29, 0x69, 0x01, 0x29, 0x03, 0xd1, + 0xa9, 0x69, 0x01, 0x27, 0x89, 0x07, 0x1a, 0xd5, + 0x06, 0xf0, 0x79, 0xfc, 0x00, 0x28, 0xf4, 0xd1, + 0x01, 0x2f, 0x14, 0xd1, 0x00, 0x98, 0x01, 0x28, + 0x11, 0xd1, 0x3c, 0x00, 0x3c, 0xb4, 0x00, 0x00, + 0x08, 0xe0, 0x20, 0x1c, 0x58, 0x30, 0x06, 0xf0, + 0xe1, 0xfc, 0x00, 0x28, 0x0a, 0xd0, 0x80, 0x69, + 0x80, 0x07, 0x07, 0xd5, 0xf0, 0x7a, 0x08, 0x21, + 0x08, 0x43, 0xf0, 0x72, 0x01, 0x20, 0xe0, 0x62, + 0xe8, 0x7d, 0x30, 0x73, 0xe8, 0x68, 0xa0, 0x60, + 0xe0, 0x6a, 0x00, 0x28, 0x12, 0xd0, 0x1a, 0x4f, + 0xf8, 0x6b, 0x00, 0x28, 0x0e, 0xd0, 0x30, 0x7b, + 0xf5, 0xf7, 0xde, 0xfe, 0x3c, 0x00, 0x78, 0xb4, + 0x00, 0x00, 0x00, 0x28, 0x09, 0xd0, 0x21, 0x1c, + 0x38, 0x1c, 0x40, 0x30, 0xfc, 0xf7, 0x55, 0xfc, + 0x14, 0x48, 0xb9, 0x6b, 0x03, 0xf0, 0x89, 0xff, + 0xf8, 0xbd, 0x10, 0x4f, 0x12, 0x48, 0xb9, 0x6b, + 0x03, 0xf0, 0x83, 0xff, 0x00, 0x22, 0x20, 0x1c, + 0x10, 0x49, 0x05, 0xf0, 0xa2, 0xfe, 0x06, 0x1c, + 0x03, 0xd1, 0x38, 0x6a, 0x01, 0x30, 0x38, 0x62, + 0xee, 0xe7, 0x20, 0x1c, 0xf6, 0xf7, 0x3c, 0x00, + 0xb4, 0xb4, 0x00, 0x00, 0x9f, 0xf9, 0xe8, 0x68, + 0xf6, 0xf7, 0x6e, 0xf8, 0x03, 0xf0, 0xf2, 0xfd, + 0x04, 0x48, 0x83, 0x6d, 0x00, 0x2b, 0xe2, 0xd0, + 0x00, 0x22, 0x30, 0x1c, 0x29, 0x6b, 0xf4, 0xf7, + 0x86, 0xff, 0xdc, 0xe7, 0xc4, 0x69, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x11, 0x30, 0x00, 0x00, 0x10, 0xb5, 0x0a, 0x20, + 0x07, 0xf0, 0xfe, 0xfc, 0x07, 0xf0, 0x5e, 0xfc, + 0x3c, 0x00, 0xf0, 0xb4, 0x00, 0x00, 0x0b, 0x49, + 0x44, 0x18, 0x0c, 0xe0, 0x20, 0x1c, 0x07, 0xf0, + 0x90, 0xfb, 0x00, 0x28, 0x07, 0xd0, 0xf7, 0xf7, + 0x34, 0xf9, 0x00, 0x28, 0x03, 0xd0, 0x12, 0x21, + 0x86, 0x20, 0xf5, 0xf7, 0xca, 0xfe, 0xf7, 0xf7, + 0x2c, 0xf9, 0x00, 0x28, 0xee, 0xd1, 0x01, 0xf0, + 0x80, 0xfd, 0x10, 0xbd, 0x00, 0x00, 0x40, 0x9c, + 0x00, 0x00, 0x10, 0xb5, 0x0c, 0x1c, 0x01, 0x1c, + 0x17, 0x4a, 0x3c, 0x00, 0x2c, 0xb5, 0x00, 0x00, + 0x01, 0x29, 0x50, 0x69, 0x04, 0xd0, 0x80, 0x29, + 0x1d, 0xd0, 0x81, 0x29, 0x21, 0xd1, 0x1c, 0xe0, + 0x91, 0x78, 0x01, 0x29, 0x15, 0xd1, 0x02, 0x21, + 0x91, 0x70, 0x14, 0x1c, 0x01, 0x1c, 0x10, 0x48, + 0x03, 0xf0, 0x28, 0xff, 0x01, 0x21, 0x60, 0x69, + 0x00, 0xf0, 0x2e, 0xf9, 0x60, 0x69, 0x01, 0xf0, + 0x5f, 0xfc, 0x20, 0x70, 0xa0, 0x88, 0xa1, 0x69, + 0x00, 0x23, 0x0a, 0x4a, 0x3c, 0x00, 0x68, 0xb5, + 0x00, 0x00, 0x07, 0xf0, 0x7e, 0xfc, 0x10, 0xbd, + 0x22, 0x21, 0x06, 0xe0, 0x01, 0xf0, 0x1d, 0xfc, + 0x20, 0x1c, 0x00, 0xf0, 0x4a, 0xf8, 0x10, 0xbd, + 0x1c, 0x21, 0x20, 0x20, 0xf5, 0xf7, 0x8f, 0xfe, + 0x10, 0xbd, 0xb4, 0x79, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0x3d, 0x2e, 0x00, 0x00, 0x70, 0xb5, + 0x1c, 0x4c, 0xa0, 0x78, 0x00, 0x28, 0x32, 0xd0, + 0x05, 0x28, 0x30, 0xd0, 0x60, 0x69, 0x3c, 0x00, + 0xa4, 0xb5, 0x00, 0x00, 0x00, 0xf0, 0xea, 0xf8, + 0x18, 0x4e, 0xb5, 0x79, 0xa0, 0x78, 0x01, 0x28, + 0x0b, 0xd0, 0x02, 0x28, 0x0e, 0xd0, 0x03, 0x28, + 0x10, 0xd0, 0x04, 0x28, 0x17, 0xd1, 0x42, 0x1f, + 0x80, 0x21, 0x20, 0x20, 0x08, 0xf0, 0x08, 0xf8, + 0x0e, 0xe0, 0x00, 0x21, 0x20, 0x20, 0x08, 0xf0, + 0x31, 0xf8, 0x0c, 0xe0, 0xa0, 0x88, 0x07, 0xf0, + 0x1d, 0xfc, 0x05, 0xe0, 0x20, 0x78, 0x00, 0xf0, + 0x3c, 0x00, 0xe0, 0xb5, 0x00, 0x00, 0x39, 0xfa, + 0x00, 0x20, 0x00, 0xf0, 0xc4, 0xfd, 0x60, 0x69, + 0x01, 0xf0, 0xe1, 0xfb, 0x05, 0x20, 0xa0, 0x70, + 0xb5, 0x71, 0x60, 0x69, 0x00, 0xf0, 0x61, 0xf9, + 0x00, 0x22, 0x20, 0x21, 0x81, 0x20, 0x08, 0xf0, + 0xd6, 0xf8, 0x70, 0xbd, 0x00, 0x00, 0xb4, 0x79, + 0x01, 0x00, 0x20, 0x10, 0x07, 0x00, 0xb0, 0xb5, + 0x0d, 0x4d, 0x04, 0x1c, 0xa8, 0x78, 0x00, 0x28, + 0x14, 0xd0, 0x3c, 0x00, 0x1c, 0xb6, 0x00, 0x00, + 0x68, 0x69, 0x00, 0xf0, 0x0b, 0xf9, 0x0a, 0x48, + 0x69, 0x69, 0x03, 0xf0, 0xa7, 0xfe, 0xa8, 0x88, + 0x07, 0xf0, 0x9e, 0xfb, 0x00, 0x2c, 0x02, 0xd0, + 0x68, 0x78, 0x00, 0xf0, 0x79, 0xff, 0x00, 0x20, + 0xa8, 0x70, 0xa9, 0x68, 0x20, 0x1c, 0xf4, 0xf7, + 0xca, 0xfe, 0xb0, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x06, 0x4b, 0x80, 0xb5, + 0x99, 0x78, 0x03, 0x29, 0x3c, 0x00, 0x58, 0xb6, + 0x00, 0x00, 0x06, 0xd1, 0x04, 0x21, 0x99, 0x70, + 0x20, 0x21, 0x02, 0x1c, 0x80, 0x20, 0x08, 0xf0, + 0xa4, 0xf8, 0x80, 0xbd, 0x00, 0x00, 0xb4, 0x79, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x4c, 0xa1, 0x78, + 0x03, 0x29, 0x0f, 0xd1, 0x10, 0x30, 0xfa, 0xf7, + 0xde, 0xf8, 0x00, 0x28, 0x09, 0xd0, 0x20, 0x78, + 0x00, 0xf0, 0xe5, 0xf9, 0x00, 0x20, 0x00, 0xf0, + 0x70, 0xfd, 0x00, 0x21, 0x05, 0x48, 0x3c, 0x00, + 0x94, 0xb6, 0x00, 0x00, 0xfc, 0xf7, 0x9c, 0xfa, + 0x10, 0xbd, 0x1b, 0x21, 0x20, 0x20, 0xf5, 0xf7, + 0x01, 0xfe, 0x10, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0x51, 0xb6, 0x00, 0x00, 0x09, 0x49, 0x80, 0xb5, + 0x89, 0x78, 0x03, 0x29, 0x09, 0xd1, 0x00, 0xf0, + 0xcd, 0xf9, 0x00, 0x20, 0x00, 0xf0, 0x58, 0xfd, + 0x01, 0x21, 0x05, 0x48, 0xfc, 0xf7, 0x84, 0xfa, + 0x80, 0xbd, 0x17, 0x21, 0x20, 0x20, 0xf5, 0xf7, + 0x3c, 0x00, 0xd0, 0xb6, 0x00, 0x00, 0xe9, 0xfd, + 0x80, 0xbd, 0xb4, 0x79, 0x01, 0x00, 0x51, 0xb6, + 0x00, 0x00, 0x70, 0xb5, 0x10, 0x4c, 0x1d, 0x1c, + 0xa3, 0x78, 0x06, 0x1c, 0x04, 0x98, 0x00, 0x2b, + 0x18, 0xd1, 0x01, 0x23, 0xa3, 0x70, 0x22, 0x61, + 0xe6, 0x60, 0x61, 0x70, 0xa0, 0x60, 0xa5, 0x61, + 0x00, 0x20, 0x07, 0xf0, 0xac, 0xfa, 0xa0, 0x80, + 0x30, 0x1c, 0xf7, 0xf7, 0x3c, 0xfb, 0xe0, 0x80, + 0x07, 0xf0, 0x3c, 0x00, 0x0c, 0xb7, 0x00, 0x00, + 0x4f, 0xfb, 0xc7, 0x21, 0xc9, 0x00, 0x28, 0x1a, + 0x41, 0x1a, 0x00, 0x22, 0x20, 0x20, 0x07, 0xf0, + 0x57, 0xff, 0x70, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, 0x00, 0xf0, + 0x09, 0xf8, 0x20, 0x1c, 0x00, 0xf0, 0x24, 0xf8, + 0x00, 0x2d, 0x01, 0xd0, 0xff, 0xf7, 0xd4, 0xfe, + 0xb0, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x0c, 0x4c, + 0x05, 0x1c, 0xa0, 0x68, 0x3c, 0x00, 0x48, 0xb7, + 0x00, 0x00, 0x00, 0x28, 0x0f, 0xd1, 0x0a, 0x48, + 0x01, 0x7e, 0x02, 0x22, 0x11, 0x40, 0x61, 0x60, + 0x01, 0x7e, 0x11, 0x43, 0x01, 0x76, 0x07, 0x20, + 0x03, 0xf0, 0x49, 0xfc, 0x20, 0x60, 0x03, 0xf0, + 0x98, 0xff, 0x03, 0xf0, 0xee, 0xff, 0xa0, 0x68, + 0x28, 0x43, 0xa0, 0x60, 0xb0, 0xbd, 0x40, 0x7c, + 0x01, 0x00, 0x0c, 0x80, 0x07, 0x00, 0x0a, 0x49, + 0x38, 0xb5, 0x0a, 0x1c, 0x20, 0x32, 0x3c, 0x00, + 0x84, 0xb7, 0x00, 0x00, 0x94, 0x79, 0x00, 0xab, + 0x1c, 0x70, 0xd2, 0x79, 0x07, 0x4c, 0x5a, 0x70, + 0xe2, 0x68, 0x00, 0x2a, 0x02, 0xd1, 0x06, 0x4d, + 0x01, 0x23, 0x6b, 0x70, 0x10, 0x43, 0xe0, 0x60, + 0x00, 0xab, 0x18, 0x88, 0xc8, 0x84, 0x38, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0x40, 0x7c, 0x01, 0x00, + 0x00, 0x50, 0x07, 0x00, 0xb0, 0xb5, 0x05, 0x1c, + 0x00, 0x29, 0x01, 0xd0, 0x00, 0xf0, 0x28, 0xf8, + 0x3c, 0x00, 0xc0, 0xb7, 0x00, 0x00, 0x06, 0x4c, + 0x60, 0x78, 0x21, 0x69, 0x08, 0x43, 0x03, 0xd1, + 0x01, 0x21, 0x0e, 0x20, 0x06, 0xf0, 0xc5, 0xfd, + 0x20, 0x69, 0x28, 0x43, 0x20, 0x61, 0xb0, 0xbd, + 0x00, 0x00, 0x18, 0x63, 0x01, 0x00, 0xb0, 0xb5, + 0x0a, 0x4c, 0x05, 0x1c, 0x22, 0x69, 0x00, 0x20, + 0x00, 0x2a, 0x0c, 0xd1, 0x00, 0x29, 0x00, 0xd0, + 0x04, 0xe0, 0x60, 0x78, 0x00, 0x28, 0x02, 0xd1, + 0x04, 0xf0, 0x3c, 0x00, 0xfc, 0xb7, 0x00, 0x00, + 0x69, 0xfb, 0x60, 0x70, 0x28, 0x1c, 0x06, 0xf0, + 0xef, 0xfc, 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x00, + 0x18, 0x63, 0x01, 0x00, 0x10, 0xb5, 0x08, 0x4c, + 0x60, 0x78, 0x00, 0x28, 0x0a, 0xd0, 0x06, 0xf0, + 0xe3, 0xfc, 0x00, 0x20, 0x60, 0x70, 0x20, 0x69, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x21, 0x0e, 0x20, + 0x06, 0xf0, 0x96, 0xfd, 0x10, 0xbd, 0x00, 0x00, + 0x18, 0x63, 0x01, 0x00, 0x3c, 0x00, 0x38, 0xb8, + 0x00, 0x00, 0x09, 0x49, 0x80, 0xb5, 0x0b, 0x69, + 0x83, 0x42, 0x04, 0xd1, 0x4a, 0x78, 0x00, 0x2a, + 0x01, 0xd1, 0x01, 0x22, 0x00, 0xe0, 0x00, 0x22, + 0x83, 0x43, 0x0b, 0x61, 0x00, 0x2a, 0x03, 0xd0, + 0x00, 0x21, 0x0e, 0x20, 0x06, 0xf0, 0x7f, 0xfd, + 0x80, 0xbd, 0x18, 0x63, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x20, 0xf6, 0xf7, 0x56, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x3c, 0x00, + 0x74, 0xb8, 0x00, 0x00, 0x00, 0xf0, 0x04, 0xf8, + 0x20, 0x1c, 0x00, 0xf0, 0x1f, 0xf8, 0x10, 0xbd, + 0xb0, 0xb5, 0x0c, 0x4d, 0x04, 0x1c, 0xa8, 0x68, + 0xa0, 0x42, 0x0f, 0xd1, 0x07, 0x20, 0x29, 0x68, + 0x08, 0xf0, 0x8c, 0xfb, 0x68, 0x68, 0x02, 0x22, + 0x07, 0x49, 0x00, 0x28, 0x08, 0x7e, 0x01, 0xd0, + 0x10, 0x43, 0x00, 0xe0, 0x90, 0x43, 0x08, 0x76, + 0x04, 0xf0, 0xc4, 0xf8, 0xa8, 0x68, 0xa0, 0x43, + 0x3c, 0x00, 0xb0, 0xb8, 0x00, 0x00, 0xa8, 0x60, + 0xb0, 0xbd, 0x40, 0x7c, 0x01, 0x00, 0x0c, 0x80, + 0x07, 0x00, 0x0a, 0x49, 0x38, 0xb5, 0x0a, 0x1c, + 0x20, 0x32, 0x94, 0x79, 0x00, 0xab, 0x1c, 0x70, + 0xd2, 0x79, 0x07, 0x4c, 0x5a, 0x70, 0xe2, 0x68, + 0x82, 0x42, 0x02, 0xd1, 0x06, 0x4d, 0x00, 0x23, + 0x6b, 0x70, 0x82, 0x43, 0xe2, 0x60, 0x00, 0xab, + 0x18, 0x88, 0xc8, 0x84, 0x38, 0xbd, 0x00, 0x10, + 0x07, 0x00, 0x3c, 0x00, 0xec, 0xb8, 0x00, 0x00, + 0x40, 0x7c, 0x01, 0x00, 0x00, 0x50, 0x07, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x0a, 0x4c, 0x00, 0x21, + 0x60, 0x69, 0xff, 0xf7, 0x11, 0xff, 0x04, 0x20, + 0x01, 0xf0, 0x46, 0xf9, 0x01, 0xf0, 0x88, 0xfb, + 0x00, 0x22, 0x04, 0x21, 0x04, 0x20, 0x01, 0xf0, + 0x8b, 0xf8, 0x28, 0x1c, 0x01, 0xf0, 0x4a, 0xfa, + 0x60, 0x69, 0xff, 0xf7, 0xa7, 0xff, 0xb0, 0xbd, + 0x40, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0x28, 0xb9, + 0x00, 0x00, 0x80, 0xb5, 0x01, 0xf0, 0x77, 0xfa, + 0x80, 0xbd, 0xb0, 0xb5, 0x0d, 0x4d, 0x01, 0x21, + 0x28, 0x69, 0xff, 0xf7, 0xf4, 0xfe, 0xff, 0xf7, + 0x2a, 0xfe, 0x00, 0xf0, 0x2c, 0xfb, 0x00, 0xf0, + 0x84, 0xfa, 0x00, 0x24, 0x00, 0x22, 0x04, 0x21, + 0x20, 0x1c, 0x01, 0xf0, 0x6c, 0xf8, 0x01, 0x34, + 0x24, 0x06, 0x24, 0x0e, 0x04, 0x2c, 0xf5, 0xd3, + 0x28, 0x69, 0xff, 0xf7, 0x86, 0xff, 0x3c, 0x00, + 0x64, 0xb9, 0x00, 0x00, 0xb0, 0xbd, 0x00, 0x00, + 0x40, 0x7c, 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x1c, + 0x0e, 0x1c, 0x07, 0x4c, 0x17, 0x1c, 0x01, 0x21, + 0x20, 0x69, 0xff, 0xf7, 0xd3, 0xfe, 0x3a, 0x1c, + 0x31, 0x1c, 0x28, 0x1c, 0x01, 0xf0, 0x52, 0xf8, + 0x20, 0x69, 0xff, 0xf7, 0x71, 0xff, 0xf8, 0xbd, + 0x40, 0x7c, 0x01, 0x00, 0xff, 0xb5, 0x89, 0xb0, + 0x06, 0x1c, 0x16, 0x98, 0x1d, 0x1c, 0x00, 0x28, + 0x3c, 0x00, 0xa0, 0xb9, 0x00, 0x00, 0x01, 0xd0, + 0x29, 0x48, 0x14, 0x90, 0x28, 0x68, 0x00, 0x88, + 0x00, 0x06, 0x80, 0x0e, 0x20, 0x28, 0x01, 0xd0, + 0x14, 0x28, 0x17, 0xd1, 0x0a, 0xaa, 0x18, 0x24, + 0x18, 0x21, 0x05, 0xca, 0xff, 0xf7, 0x77, 0xf9, + 0x07, 0x1c, 0x28, 0x1c, 0x01, 0x89, 0xa1, 0x42, + 0x02, 0xdd, 0x00, 0x68, 0x01, 0x19, 0x0b, 0xe0, + 0xc0, 0x68, 0x64, 0x1a, 0x00, 0x28, 0xf5, 0xd1, + 0x0f, 0x21, 0x3c, 0x00, 0xdc, 0xb9, 0x00, 0x00, + 0x86, 0x20, 0xf5, 0xf7, 0x61, 0xfc, 0x00, 0x21, + 0x01, 0xe0, 0x00, 0x21, 0x00, 0x27, 0x18, 0x48, + 0x08, 0x90, 0x80, 0x79, 0x07, 0x90, 0x0c, 0x20, + 0x16, 0x4a, 0x70, 0x43, 0x80, 0x18, 0x04, 0x79, + 0x04, 0x91, 0x12, 0x99, 0x15, 0x98, 0x14, 0x9a, + 0x01, 0x91, 0x03, 0x90, 0x05, 0x97, 0x00, 0x95, + 0x0a, 0xab, 0x02, 0x92, 0x21, 0x1c, 0x30, 0x1c, + 0x0c, 0xcb, 0xf7, 0xf7, 0x3c, 0x00, 0x18, 0xba, + 0x00, 0x00, 0x03, 0xf9, 0x01, 0x25, 0xb5, 0x40, + 0x0c, 0x4e, 0x08, 0x3e, 0x30, 0x78, 0x28, 0x40, + 0x06, 0xd0, 0x20, 0x1c, 0x00, 0xf0, 0xc9, 0xfd, + 0x30, 0x78, 0xa8, 0x43, 0x30, 0x70, 0x03, 0xe0, + 0x20, 0x1c, 0x13, 0x99, 0x00, 0xf0, 0x43, 0xff, + 0x07, 0xa9, 0x03, 0xc9, 0x88, 0x71, 0x0d, 0xb0, + 0xf0, 0xbd, 0x95, 0x24, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0x74, 0x7a, 0x01, 0x00, 0x3c, 0x00, + 0x54, 0xba, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0c, 0x23, 0x09, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x00, 0x79, 0x05, 0x1c, 0x00, 0xf0, 0x92, 0xfe, + 0x28, 0x1c, 0xf7, 0xf7, 0xc7, 0xf8, 0x01, 0x20, + 0x03, 0x4a, 0xa0, 0x40, 0x08, 0x3a, 0x11, 0x78, + 0x81, 0x43, 0x11, 0x70, 0xb0, 0xbd, 0x00, 0x00, + 0x74, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, + 0x20, 0x78, 0x00, 0x28, 0x03, 0xd1, 0x1a, 0x21, + 0x3c, 0x00, 0x90, 0xba, 0x00, 0x00, 0x86, 0x20, + 0xf5, 0xf7, 0x07, 0xfc, 0x20, 0x78, 0x10, 0xbd, + 0x00, 0x00, 0x18, 0x63, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x78, 0x70, 0x47, 0x00, 0x00, 0x2c, 0x63, + 0x01, 0x00, 0x80, 0xb5, 0xf6, 0xf7, 0xd1, 0xfe, + 0x00, 0xf0, 0x1b, 0xf9, 0x80, 0xbd, 0xfe, 0xb5, + 0x01, 0x68, 0x05, 0x1c, 0x0c, 0x68, 0x0e, 0x1c, + 0x21, 0x78, 0x88, 0x07, 0x71, 0xd1, 0x68, 0x69, + 0xc2, 0x07, 0x3c, 0x00, 0xcc, 0xba, 0x00, 0x00, + 0x6e, 0xd5, 0x80, 0x07, 0x6d, 0xd5, 0xe8, 0x7a, + 0xc2, 0x07, 0x08, 0x07, 0x09, 0x09, 0x02, 0x91, + 0x45, 0x49, 0x80, 0x0f, 0xd2, 0x0f, 0x00, 0x28, + 0x4f, 0x68, 0x05, 0xd0, 0x01, 0x28, 0x09, 0xd0, + 0x02, 0x28, 0x21, 0xd0, 0x03, 0x28, 0x5b, 0xd1, + 0xff, 0x23, 0x20, 0x1c, 0xa9, 0x7a, 0xf4, 0xf7, + 0x74, 0xfc, 0x55, 0xe0, 0x02, 0x98, 0x0b, 0x28, + 0x0a, 0xd0, 0x0c, 0x28, 0x3c, 0x00, 0x08, 0xbb, + 0x00, 0x00, 0x0f, 0xd0, 0x0d, 0x28, 0x4e, 0xd1, + 0x39, 0x4f, 0xf8, 0x68, 0xf4, 0xf7, 0x61, 0xfc, + 0x00, 0x20, 0xc0, 0x43, 0x5a, 0xe0, 0x35, 0x4f, + 0xa9, 0x7a, 0xbb, 0x68, 0x20, 0x1c, 0xf4, 0xf7, + 0x5b, 0xfc, 0x40, 0xe0, 0x32, 0x4f, 0x38, 0x69, + 0xf4, 0xf7, 0x53, 0xfc, 0x3b, 0xe0, 0x00, 0x21, + 0x01, 0x91, 0x02, 0x99, 0x00, 0x20, 0xff, 0x23, + 0x09, 0x07, 0x01, 0xd4, 0x01, 0x20, 0x3c, 0x00, + 0x44, 0xbb, 0x00, 0x00, 0x13, 0xe0, 0x31, 0x89, + 0x19, 0x29, 0x01, 0xd3, 0x26, 0x7e, 0x07, 0xe0, + 0x15, 0x29, 0x04, 0xd3, 0x18, 0x26, 0x71, 0x1a, + 0x49, 0x19, 0x0e, 0x7b, 0x00, 0xe0, 0x00, 0x26, + 0xb1, 0x06, 0x02, 0xd4, 0x01, 0x20, 0x73, 0x07, + 0x5b, 0x0f, 0x01, 0x21, 0x01, 0x91, 0x00, 0x28, + 0x03, 0xd0, 0xa9, 0x7a, 0x20, 0x1c, 0xf4, 0xf7, + 0x36, 0xfc, 0x01, 0x99, 0x01, 0x29, 0x15, 0xd1, + 0x3c, 0x00, 0x80, 0xbb, 0x00, 0x00, 0xf0, 0x06, + 0xc6, 0x0f, 0x20, 0x88, 0x1b, 0x4f, 0xe4, 0x8a, + 0xf9, 0x6b, 0x00, 0x05, 0xc0, 0x0f, 0x00, 0x29, + 0x1a, 0xd0, 0x4b, 0x1c, 0x18, 0xd0, 0x00, 0x2e, + 0x0a, 0xd0, 0x00, 0x28, 0x08, 0xd0, 0x38, 0x88, + 0x84, 0x42, 0x13, 0xd0, 0x02, 0x98, 0x0c, 0x28, + 0x01, 0xe0, 0x1d, 0xe0, 0x12, 0xe0, 0x0d, 0xd0, + 0x08, 0x1c, 0x01, 0xf0, 0x76, 0xf9, 0x00, 0x28, + 0x03, 0xd1, 0x3c, 0x00, 0xbc, 0xbb, 0x00, 0x00, + 0x00, 0xf0, 0xa6, 0xfa, 0xf4, 0xf7, 0x0a, 0xfc, + 0x00, 0x20, 0xc0, 0x43, 0xf8, 0x63, 0x00, 0x2e, + 0x0d, 0xd0, 0x3c, 0x80, 0x00, 0x20, 0xf8, 0x63, + 0x09, 0xe0, 0x20, 0x88, 0x00, 0x06, 0x80, 0x0e, + 0x20, 0x28, 0x04, 0xd1, 0x04, 0x4f, 0x20, 0x1c, + 0xb9, 0x6a, 0xf4, 0xf7, 0xf8, 0xfb, 0x29, 0x1c, + 0x02, 0x48, 0xfb, 0xf7, 0xef, 0xff, 0xfe, 0xbd, + 0x28, 0x7a, 0x01, 0x00, 0x3c, 0x00, 0xf8, 0xbb, + 0x00, 0x00, 0xa5, 0x9a, 0x00, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x00, 0x78, 0x00, 0x21, 0x00, 0xf0, + 0xfc, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0x18, 0x63, + 0x01, 0x00, 0x04, 0x4b, 0x05, 0x49, 0x00, 0x28, + 0x1a, 0x68, 0x00, 0xd0, 0x01, 0x1c, 0x10, 0x1c, + 0x19, 0x60, 0x70, 0x47, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x95, 0x75, 0x00, 0x00, 0x05, 0x48, + 0x80, 0xb5, 0x00, 0x7f, 0x24, 0x23, 0x3c, 0x00, + 0x34, 0xbc, 0x00, 0x00, 0x04, 0x49, 0x58, 0x43, + 0x40, 0x18, 0xc0, 0x69, 0xf4, 0xf7, 0xcc, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x79, 0x01, 0x00, + 0x94, 0x46, 0x01, 0x00, 0x02, 0x1c, 0x06, 0x48, + 0x80, 0xb5, 0x81, 0x62, 0x82, 0x60, 0x00, 0x7f, + 0x24, 0x23, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x80, 0x69, 0xf4, 0xf7, 0xb9, 0xfb, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x94, 0x46, 0x01, 0x00, + 0x3c, 0x00, 0x70, 0xbc, 0x00, 0x00, 0x80, 0xb5, + 0x00, 0x20, 0x00, 0xf0, 0x3c, 0xfb, 0x00, 0x20, + 0x00, 0xf0, 0x6d, 0xfa, 0x00, 0xf0, 0x65, 0xfa, + 0x04, 0x49, 0xc8, 0x6a, 0x01, 0x30, 0xc8, 0x62, + 0x08, 0x1f, 0x00, 0x88, 0x07, 0xf0, 0xc1, 0xf8, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x06, 0x48, + 0x80, 0xb5, 0x00, 0x21, 0x01, 0x77, 0xc1, 0x6a, + 0x01, 0x31, 0xc1, 0x62, 0x04, 0x38, 0x00, 0x88, + 0x07, 0xf0, 0x3c, 0x00, 0xac, 0xbc, 0x00, 0x00, + 0xb3, 0xf8, 0x03, 0xf0, 0xd1, 0xf9, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, 0x05, 0xf0, + 0xe9, 0xfa, 0x80, 0xbd, 0x80, 0xb5, 0x00, 0x28, + 0x03, 0xd1, 0x01, 0x20, 0x04, 0xf0, 0x22, 0xfa, + 0x80, 0xbd, 0x01, 0x20, 0x03, 0xf0, 0xe6, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x03, 0x49, 0x01, 0x20, + 0x49, 0x78, 0x00, 0x29, 0x00, 0xd0, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xbc, + 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, 0x70, 0xb5, + 0x13, 0x4d, 0x28, 0x78, 0x00, 0x28, 0x20, 0xd1, + 0x01, 0x21, 0x2e, 0x1c, 0x70, 0x68, 0xff, 0xf7, + 0x12, 0xfd, 0x00, 0x21, 0x07, 0x20, 0x06, 0xf0, + 0x2a, 0xfb, 0x0d, 0x48, 0x00, 0x24, 0x04, 0x71, + 0x04, 0xf0, 0xed, 0xf8, 0x06, 0xf0, 0xd5, 0xf9, + 0x01, 0x20, 0x28, 0x70, 0x0a, 0x48, 0x04, 0x60, + 0x44, 0x60, 0xf6, 0xf7, 0x4c, 0xfd, 0x3c, 0x00, + 0x24, 0xbd, 0x00, 0x00, 0xf7, 0xf7, 0x5e, 0xf8, + 0xff, 0xf7, 0xa2, 0xff, 0x00, 0xf0, 0xa8, 0xfd, + 0x05, 0x48, 0x71, 0x68, 0x03, 0xf0, 0x20, 0xfb, + 0x01, 0x20, 0x70, 0xbd, 0x2c, 0x63, 0x01, 0x00, + 0x50, 0x00, 0x07, 0x00, 0x80, 0x00, 0x07, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0xb0, 0xb5, 0x1e, 0x4c, + 0x20, 0x78, 0x01, 0x28, 0x35, 0xd1, 0x25, 0x1c, + 0x69, 0x68, 0x1c, 0x48, 0x03, 0xf0, 0x20, 0xfb, + 0x3c, 0x00, 0x60, 0xbd, 0x00, 0x00, 0x04, 0xf0, + 0xf0, 0xf8, 0x1a, 0x48, 0x01, 0x68, 0x49, 0x08, + 0x49, 0x00, 0x01, 0x60, 0x01, 0x68, 0x01, 0x22, + 0x11, 0x43, 0x01, 0x60, 0x00, 0xf0, 0x2b, 0xfe, + 0x00, 0xf0, 0x1b, 0xfc, 0x06, 0xf0, 0x99, 0xf8, + 0xf6, 0xf7, 0x29, 0xfe, 0xf6, 0xf7, 0x2d, 0xfc, + 0x00, 0x20, 0x20, 0x70, 0xff, 0xf7, 0x83, 0xff, + 0x00, 0xf0, 0x8b, 0xfd, 0x0f, 0x48, 0x81, 0x78, + 0x08, 0x22, 0x3c, 0x00, 0x9c, 0xbd, 0x00, 0x00, + 0x91, 0x43, 0x81, 0x70, 0x81, 0x78, 0x11, 0x43, + 0x81, 0x70, 0x0c, 0x49, 0x10, 0x20, 0x08, 0x71, + 0x68, 0x68, 0xff, 0xf7, 0x5f, 0xfd, 0xf7, 0xf7, + 0x39, 0xf8, 0xf6, 0xf7, 0x4d, 0xfd, 0x01, 0x21, + 0x07, 0x20, 0x06, 0xf0, 0xcd, 0xfa, 0x01, 0x20, + 0xb0, 0xbd, 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0xf0, 0x00, 0x07, 0x00, + 0x00, 0x00, 0x07, 0x00, 0x3c, 0x00, 0xd8, 0xbd, + 0x00, 0x00, 0x50, 0x00, 0x07, 0x00, 0x03, 0x49, + 0x01, 0x20, 0x89, 0x7a, 0x01, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0xb0, 0xb5, 0x15, 0x4d, 0x04, 0x1c, + 0x28, 0x7a, 0x00, 0x28, 0x20, 0xd1, 0xf9, 0xf7, + 0x00, 0xfc, 0x02, 0x28, 0x1c, 0xd1, 0x01, 0x20, + 0x28, 0x72, 0xe8, 0x68, 0x00, 0x28, 0x10, 0xd0, + 0x20, 0x68, 0x29, 0x68, 0x08, 0x60, 0x3c, 0x00, + 0x14, 0xbe, 0x00, 0x00, 0x69, 0x68, 0x0d, 0x48, + 0x03, 0xf0, 0xc2, 0xfa, 0x01, 0x21, 0x68, 0x68, + 0xff, 0xf7, 0xc8, 0xfc, 0x00, 0x22, 0x24, 0x20, + 0x61, 0x68, 0x07, 0xf0, 0xcf, 0xfb, 0xb0, 0xbd, + 0x00, 0x20, 0x28, 0x72, 0x21, 0x68, 0x01, 0x20, + 0xf4, 0xf7, 0xcf, 0xfa, 0xb0, 0xbd, 0x00, 0x20, + 0x21, 0x68, 0xf4, 0xf7, 0xca, 0xfa, 0xb0, 0xbd, + 0x04, 0x7a, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x3c, 0x00, 0x50, 0xbe, 0x00, 0x00, 0x04, 0x48, + 0x80, 0xb5, 0x00, 0x7a, 0x01, 0x28, 0x02, 0xd1, + 0x00, 0x20, 0x02, 0xf0, 0xf0, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x04, 0x7a, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x28, 0x07, 0xd0, 0x80, 0x28, 0x09, 0xd1, + 0x07, 0x48, 0x00, 0x7a, 0x00, 0x28, 0x04, 0xd0, + 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, 0x02, 0xf0, + 0xde, 0xfe, 0x80, 0xbd, 0x0e, 0x21, 0x24, 0x20, + 0xf5, 0xf7, 0x3c, 0x00, 0x8c, 0xbe, 0x00, 0x00, + 0x0b, 0xfa, 0x80, 0xbd, 0x04, 0x7a, 0x01, 0x00, + 0xf8, 0xb5, 0x3a, 0x4e, 0x05, 0x1c, 0xb0, 0x7a, + 0x00, 0x28, 0x69, 0xd1, 0xf9, 0xf7, 0xae, 0xfb, + 0x02, 0x28, 0x65, 0xd1, 0x36, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x61, 0xd0, 0x35, 0x48, 0x71, 0x68, + 0x03, 0xf0, 0x74, 0xfa, 0x01, 0x21, 0x70, 0x68, + 0xff, 0xf7, 0x7a, 0xfc, 0x6c, 0x20, 0xf5, 0xf7, + 0xb9, 0xfc, 0x04, 0x1c, 0x3c, 0x00, 0xc8, 0xbe, + 0x00, 0x00, 0x6c, 0x21, 0xf4, 0xf7, 0xe7, 0xfa, + 0x30, 0x68, 0x2c, 0x22, 0x04, 0x60, 0x29, 0x68, + 0x81, 0x60, 0x69, 0x68, 0xc1, 0x60, 0x00, 0x21, + 0x11, 0x54, 0x81, 0x62, 0xa9, 0x68, 0x00, 0x29, + 0x02, 0xd0, 0xe9, 0x68, 0x01, 0x61, 0x05, 0xe0, + 0x06, 0xf0, 0x5d, 0xff, 0x69, 0x68, 0x40, 0x18, + 0x31, 0x68, 0x08, 0x61, 0x70, 0x68, 0xff, 0xf7, + 0x14, 0xfd, 0x69, 0x21, 0x08, 0x55, 0x3c, 0x00, + 0x04, 0xbf, 0x00, 0x00, 0x00, 0x20, 0xf9, 0xf7, + 0x09, 0xfb, 0x01, 0x27, 0x3b, 0x1c, 0x06, 0x1c, + 0x22, 0x1c, 0x24, 0x32, 0x00, 0x21, 0xf9, 0xf7, + 0x79, 0xfb, 0x1c, 0x48, 0x03, 0x21, 0x00, 0x88, + 0x89, 0x03, 0x08, 0x43, 0x21, 0x1c, 0x40, 0x31, + 0x00, 0x91, 0x48, 0x83, 0x18, 0x48, 0x10, 0x21, + 0x60, 0x60, 0x18, 0x48, 0xa0, 0x60, 0xa7, 0x63, + 0x67, 0x63, 0x00, 0x20, 0xf5, 0xf7, 0x4c, 0xfb, + 0x3c, 0x00, 0x40, 0xbf, 0x00, 0x00, 0xe0, 0x60, + 0x02, 0x89, 0x00, 0x99, 0xca, 0x83, 0x07, 0x68, + 0x31, 0x1c, 0x38, 0x1d, 0x27, 0x61, 0xfe, 0xf7, + 0x8e, 0xfe, 0x38, 0x1c, 0x0a, 0x30, 0x0f, 0x49, + 0xfe, 0xf7, 0x89, 0xfe, 0xa4, 0x20, 0x38, 0x80, + 0x00, 0x20, 0x04, 0xf0, 0xde, 0xfb, 0x00, 0x22, + 0x1f, 0x20, 0x69, 0x68, 0x07, 0xf0, 0x2d, 0xfb, + 0xf8, 0xbd, 0xff, 0xe7, 0x00, 0x20, 0x29, 0x68, + 0xf4, 0xf7, 0x3c, 0x00, 0x7c, 0xbf, 0x00, 0x00, + 0x2e, 0xfa, 0xf8, 0xe7, 0x14, 0x7a, 0x01, 0x00, + 0x80, 0x5a, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xfa, 0x60, 0x01, 0x00, 0x99, 0xec, 0x00, 0x00, + 0x15, 0xed, 0x00, 0x00, 0x12, 0x61, 0x01, 0x00, + 0x06, 0x48, 0x80, 0xb5, 0x81, 0x7a, 0x00, 0x29, + 0x07, 0xd0, 0x00, 0x68, 0x04, 0x22, 0x20, 0x30, + 0x01, 0x7b, 0x11, 0x43, 0x01, 0x73, 0x02, 0xf0, + 0x6b, 0xfd, 0x80, 0xbd, 0x3c, 0x00, 0xb8, 0xbf, + 0x00, 0x00, 0x14, 0x7a, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x4c, 0xa0, 0x7a, 0x01, 0x28, 0x03, 0xd1, + 0x06, 0xf0, 0xf1, 0xfe, 0x21, 0x68, 0x88, 0x61, + 0x10, 0xbd, 0x14, 0x7a, 0x01, 0x00, 0x03, 0x1c, + 0x08, 0x1c, 0x1f, 0x49, 0x70, 0xb5, 0x0a, 0x68, + 0x01, 0x2b, 0x1c, 0xd0, 0x80, 0x2b, 0x05, 0xd0, + 0x83, 0x2b, 0x30, 0xd1, 0x88, 0x7a, 0x00, 0x28, + 0x14, 0xd0, 0x29, 0xe0, 0x53, 0x69, 0x3c, 0x00, + 0xf4, 0xbf, 0x00, 0x00, 0x00, 0x2b, 0x0e, 0xd0, + 0x94, 0x69, 0xd5, 0x69, 0x2e, 0x1b, 0x0c, 0x69, + 0x5d, 0x1b, 0x36, 0x1b, 0xb6, 0x10, 0xa4, 0x19, + 0x0c, 0x61, 0xcc, 0x68, 0x2d, 0x1b, 0xad, 0x10, + 0x64, 0x19, 0xcc, 0x60, 0x93, 0x61, 0x02, 0xf0, + 0x81, 0xfd, 0x70, 0xbd, 0x02, 0x28, 0x12, 0xd1, + 0x90, 0x6a, 0x0c, 0x1c, 0x00, 0x28, 0xf8, 0xd0, + 0x07, 0xf0, 0x0e, 0xfa, 0xa0, 0x7a, 0x01, 0x28, + 0x3c, 0x00, 0x30, 0xc0, 0x00, 0x00, 0xf3, 0xd1, + 0x20, 0x68, 0x81, 0x6a, 0x00, 0x29, 0xef, 0xd1, + 0x20, 0x30, 0x01, 0x7b, 0x08, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x70, 0xbd, 0x02, 0xf0, 0x21, 0xfd, + 0x70, 0xbd, 0x0e, 0x21, 0x1f, 0x20, 0xf5, 0xf7, + 0x28, 0xf9, 0x70, 0xbd, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0x02, 0x49, 0x0c, 0x31, 0x03, 0xc9, + 0x40, 0x18, 0x70, 0x47, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0x3c, 0x00, 0x6c, 0xc0, 0x00, 0x00, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x68, 0x04, 0x22, + 0x20, 0x30, 0x01, 0x7b, 0x11, 0x43, 0x01, 0x73, + 0x07, 0xf0, 0xe4, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0x70, 0xb5, 0x16, 0x4c, + 0x0e, 0x1c, 0xa1, 0x7a, 0x00, 0x29, 0x1c, 0xd0, + 0x21, 0x68, 0x08, 0x61, 0x07, 0xf0, 0x32, 0xfa, + 0x00, 0x28, 0x17, 0xd0, 0x20, 0x68, 0x00, 0x25, + 0x05, 0x62, 0x00, 0x22, 0x3c, 0x00, 0xa8, 0xc0, + 0x00, 0x00, 0x83, 0x21, 0x1f, 0x20, 0x07, 0xf0, + 0x94, 0xfa, 0x60, 0x68, 0xff, 0xf7, 0x03, 0xfc, + 0x21, 0x68, 0x04, 0x22, 0x20, 0x31, 0x08, 0x7b, + 0x2b, 0x1c, 0x90, 0x43, 0x08, 0x73, 0x31, 0x1c, + 0x00, 0x22, 0x1f, 0x20, 0x07, 0xf0, 0x61, 0xfb, + 0x70, 0xbd, 0x20, 0x68, 0x08, 0x22, 0x20, 0x30, + 0x01, 0x7b, 0x11, 0x43, 0x01, 0x73, 0x02, 0xf0, + 0xd6, 0xfc, 0x70, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xc0, 0x00, 0x00, 0x14, 0x7a, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0x77, 0xfc, 0x00, 0xf0, + 0x6f, 0xfc, 0x00, 0xf0, 0x29, 0xff, 0x00, 0xf0, + 0x5d, 0xfa, 0x00, 0xf0, 0xc5, 0xf8, 0x00, 0xf0, + 0x85, 0xff, 0x80, 0xbd, 0x80, 0xb5, 0xfa, 0xf7, + 0x85, 0xfa, 0x80, 0xbd, 0x01, 0x48, 0xc0, 0x68, + 0x70, 0x47, 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, + 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, + 0x3c, 0x00, 0x20, 0xc1, 0x00, 0x00, 0x02, 0x48, + 0xc1, 0x60, 0x70, 0x47, 0x00, 0x00, 0x81, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x01, 0x48, + 0x02, 0x49, 0xc8, 0x60, 0x70, 0x47, 0x81, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x01, 0x49, + 0x88, 0x61, 0x70, 0x47, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x01, 0x49, 0x00, 0x20, 0x88, 0x61, + 0x70, 0x47, 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x3c, 0x00, 0x5c, 0xc1, 0x00, 0x00, + 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, 0xc1, 0x61, + 0x70, 0x47, 0x00, 0x00, 0x89, 0x75, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, + 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, 0x81, 0x62, + 0x70, 0x47, 0x00, 0x00, 0x8d, 0x75, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, + 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, 0x01, 0x62, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xc1, + 0x00, 0x00, 0x91, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, + 0x01, 0x1c, 0x02, 0x48, 0x01, 0x61, 0x70, 0x47, + 0x00, 0x00, 0x99, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x01, 0x48, 0x02, 0x49, 0x08, 0x61, + 0x70, 0x47, 0x81, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x02, 0x1c, 0x08, 0x1c, 0x80, 0x2a, + 0x80, 0xb5, 0x02, 0xd1, 0x00, 0xf0, 0x3c, 0x00, + 0xd4, 0xc1, 0x00, 0x00, 0x07, 0xf8, 0x80, 0xbd, + 0x1e, 0x21, 0x21, 0x20, 0xf5, 0xf7, 0x62, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x10, 0x4d, + 0x04, 0x1c, 0xa8, 0x6b, 0x01, 0x30, 0xa8, 0x63, + 0x69, 0x6b, 0x09, 0x1a, 0x28, 0x1c, 0x00, 0x6b, + 0x0c, 0x29, 0x03, 0xd9, 0x00, 0x21, 0xff, 0xf7, + 0x91, 0xfa, 0x03, 0xe0, 0x08, 0x29, 0x01, 0xd1, + 0xff, 0xf7, 0x32, 0xfb, 0x20, 0x1c, 0x00, 0xf0, + 0x3c, 0x00, 0x10, 0xc2, 0x00, 0x00, 0x4d, 0xf9, + 0x60, 0x69, 0x40, 0x07, 0x01, 0xd5, 0x03, 0xf0, + 0x0c, 0xfc, 0x20, 0x1c, 0xe9, 0x6a, 0xf4, 0xf7, + 0xdb, 0xf8, 0xb0, 0xbd, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, + 0x01, 0x1c, 0x02, 0x48, 0x41, 0x62, 0x70, 0x47, + 0x00, 0x00, 0xb5, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x03, 0x49, 0x01, 0x20, 0x09, 0x6c, + 0x00, 0x29, 0x3c, 0x00, 0x4c, 0xc2, 0x00, 0x00, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0xe1, 0x6b, 0x00, 0x29, 0x01, 0xd1, 0xe0, 0x63, + 0x04, 0xe0, 0x81, 0x42, 0x02, 0xd0, 0x00, 0x20, + 0xc0, 0x43, 0xf8, 0xe7, 0x06, 0xf0, 0x9c, 0xfd, + 0x20, 0x64, 0x10, 0xbd, 0x28, 0x7a, 0x01, 0x00, + 0x01, 0x48, 0x00, 0x6c, 0x70, 0x47, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x3c, 0x00, 0x88, 0xc2, + 0x00, 0x00, 0x05, 0x49, 0x80, 0xb5, 0x00, 0x20, + 0x48, 0x63, 0x88, 0x63, 0xff, 0x21, 0x09, 0x31, + 0x15, 0x22, 0x10, 0x20, 0xf6, 0xf7, 0xfb, 0xf9, + 0x80, 0xbd, 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, + 0x81, 0x60, 0x70, 0x47, 0x00, 0x00, 0xc1, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x3c, 0x00, + 0xc4, 0xc2, 0x00, 0x00, 0x02, 0x48, 0xc1, 0x62, + 0x70, 0x47, 0x00, 0x00, 0xc5, 0x75, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x04, 0x4b, 0x05, 0x49, + 0x00, 0x28, 0x5a, 0x68, 0x00, 0xd0, 0x01, 0x1c, + 0x10, 0x1c, 0x59, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0xc9, 0x75, 0x00, 0x00, + 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, + 0x02, 0x48, 0x41, 0x61, 0x70, 0x47, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xc3, 0x00, 0x00, 0xcd, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x0f, 0x4b, + 0x10, 0xb5, 0xd9, 0x68, 0x00, 0x29, 0x19, 0xd0, + 0x0e, 0x4c, 0x00, 0x21, 0xca, 0x00, 0x12, 0x19, + 0x40, 0x3a, 0xd2, 0x6b, 0x82, 0x42, 0x02, 0xda, + 0x01, 0x31, 0x03, 0x29, 0xf6, 0xd3, 0x48, 0x1c, + 0x1a, 0x78, 0x00, 0x06, 0x00, 0x0e, 0x90, 0x42, + 0x08, 0xd0, 0x18, 0x70, 0x08, 0x06, 0x00, 0x0e, + 0x04, 0x1c, 0x3c, 0x00, 0x3c, 0xc3, 0x00, 0x00, + 0xf6, 0xf7, 0xba, 0xfa, 0x20, 0x1c, 0x03, 0xf0, + 0x1b, 0xfd, 0x10, 0xbd, 0x18, 0x63, 0x01, 0x00, + 0x3c, 0x42, 0x01, 0x00, 0x10, 0xb5, 0x14, 0x4c, + 0xe1, 0x68, 0x00, 0x29, 0x22, 0xd0, 0x21, 0x78, + 0x12, 0x4b, 0xca, 0x00, 0xd2, 0x18, 0x40, 0x3a, + 0xd3, 0x6b, 0x83, 0x42, 0x02, 0xda, 0x48, 0x1c, + 0x20, 0x70, 0x0b, 0xe0, 0x92, 0x6b, 0x82, 0x42, + 0x14, 0xdd, 0xff, 0x31, 0x3c, 0x00, 0x78, 0xc3, + 0x00, 0x00, 0x08, 0x06, 0x00, 0x0e, 0x20, 0x70, + 0x03, 0xd1, 0x19, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x8e, 0xff, 0x20, 0x78, 0xff, 0x30, 0x00, 0x06, + 0x00, 0x0e, 0xf6, 0xf7, 0x90, 0xfa, 0x20, 0x78, + 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, 0x03, 0xf0, + 0xee, 0xfc, 0x10, 0xbd, 0x00, 0x00, 0x18, 0x63, + 0x01, 0x00, 0x3c, 0x42, 0x01, 0x00, 0x09, 0x48, + 0x00, 0x21, 0x01, 0x81, 0x41, 0x81, 0x3c, 0x00, + 0xb4, 0xc3, 0x00, 0x00, 0x81, 0x81, 0xc1, 0x81, + 0x07, 0x4a, 0x02, 0x80, 0x01, 0x23, 0xdb, 0x02, + 0x43, 0x80, 0x82, 0x80, 0xc2, 0x80, 0x41, 0x76, + 0x31, 0x21, 0x81, 0x76, 0x01, 0x21, 0x01, 0x76, + 0x70, 0x47, 0x00, 0x00, 0x30, 0x80, 0x07, 0x00, + 0xff, 0xff, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x20, + 0xf6, 0xf7, 0xf8, 0xf8, 0x01, 0x20, 0xf6, 0xf7, + 0xdb, 0xfc, 0x01, 0x20, 0xf6, 0xf7, 0x5a, 0xfa, + 0x3c, 0x00, 0xf0, 0xc3, 0x00, 0x00, 0x01, 0x20, + 0x00, 0xf0, 0xf1, 0xfd, 0x01, 0x20, 0xf7, 0xf7, + 0xc6, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, + 0x11, 0x4c, 0x00, 0x29, 0x07, 0xd1, 0x00, 0x28, + 0x02, 0xd1, 0x01, 0x20, 0xe0, 0x60, 0x06, 0xe0, + 0x00, 0x21, 0xe1, 0x60, 0x03, 0xe0, 0x01, 0x29, + 0x07, 0xd1, 0x00, 0x28, 0x01, 0xd0, 0x20, 0x70, + 0x03, 0xe0, 0x18, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x3c, 0xff, 0x3c, 0x00, 0x2c, 0xc4, 0x00, 0x00, + 0x20, 0x78, 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, + 0xf6, 0xf7, 0x3e, 0xfa, 0x20, 0x78, 0xff, 0x30, + 0x00, 0x06, 0x00, 0x0e, 0x03, 0xf0, 0x9c, 0xfc, + 0x10, 0xbd, 0x00, 0x00, 0x18, 0x63, 0x01, 0x00, + 0x05, 0x49, 0x80, 0xb5, 0x09, 0x68, 0x88, 0x42, + 0x05, 0xd0, 0xfe, 0xf7, 0xff, 0xfb, 0x00, 0xf0, + 0x87, 0xfa, 0xff, 0xf7, 0x2b, 0xfc, 0x80, 0xbd, + 0xa8, 0x69, 0x01, 0x00, 0x3c, 0x00, 0x68, 0xc4, + 0x00, 0x00, 0x01, 0x49, 0x48, 0x70, 0x70, 0x47, + 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, 0x01, 0x49, + 0xc8, 0x60, 0x70, 0x47, 0x00, 0x00, 0x4c, 0x7b, + 0x01, 0x00, 0x03, 0x49, 0x01, 0x20, 0x09, 0x78, + 0x00, 0x29, 0x00, 0xd0, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, 0x04, 0x4a, + 0x00, 0x28, 0x02, 0xd0, 0x90, 0x69, 0x01, 0x30, + 0x90, 0x61, 0xd0, 0x69, 0x40, 0x18, 0x3c, 0x00, + 0xa4, 0xc4, 0x00, 0x00, 0xd0, 0x61, 0x70, 0x47, + 0x90, 0x5c, 0x01, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0x00, 0x68, 0x05, 0x68, 0x28, 0x1c, 0xfe, 0xf7, + 0x27, 0xff, 0x07, 0x1c, 0x60, 0x69, 0x15, 0x4e, + 0xc0, 0x07, 0xc0, 0x0f, 0x21, 0xd0, 0x01, 0xaa, + 0x02, 0xa9, 0x28, 0x1c, 0xfe, 0xf7, 0x12, 0xff, + 0x38, 0x78, 0xc0, 0x07, 0x0c, 0xd4, 0x60, 0x69, + 0x80, 0x07, 0x08, 0xd5, 0x00, 0xab, 0x18, 0x7a, + 0x3c, 0x00, 0xe0, 0xc4, 0x00, 0x00, 0x00, 0x28, + 0x01, 0xd0, 0x02, 0x28, 0x02, 0xd1, 0x70, 0x6a, + 0x01, 0x30, 0x70, 0x62, 0xfe, 0xbd, 0x00, 0xab, + 0x18, 0x7a, 0x00, 0x28, 0x01, 0xd0, 0x02, 0x28, + 0xf8, 0xd1, 0x70, 0x6a, 0x01, 0x30, 0x70, 0x62, + 0xb0, 0x6a, 0x01, 0x30, 0xb0, 0x62, 0xf1, 0xe7, + 0xf0, 0x6a, 0x01, 0x30, 0xf0, 0x62, 0xed, 0xe7, + 0x00, 0x00, 0x90, 0x5c, 0x01, 0x00, 0x02, 0x49, + 0x48, 0x69, 0x3c, 0x00, 0x1c, 0xc5, 0x00, 0x00, + 0x01, 0x30, 0x48, 0x61, 0x70, 0x47, 0x00, 0x00, + 0x90, 0x5c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x01, 0x1c, 0x40, 0x31, + 0x10, 0xb5, 0x0a, 0x8b, 0x12, 0x07, 0x92, 0x0f, + 0x01, 0x2a, 0x33, 0xd0, 0x4a, 0x78, 0x1a, 0x49, + 0x04, 0x1c, 0x60, 0x34, 0x00, 0x2a, 0x0b, 0x6a, + 0x22, 0xd1, 0xe2, 0x79, 0x01, 0x2a, 0x02, 0xd9, + 0xcc, 0x68, 0x01, 0x34, 0x3c, 0x00, 0x58, 0xc5, + 0x00, 0x00, 0xcc, 0x60, 0x02, 0x2a, 0x02, 0xd9, + 0x0c, 0x69, 0x01, 0x34, 0x0c, 0x61, 0x0c, 0x68, + 0x01, 0x34, 0x0c, 0x60, 0x44, 0x6b, 0x00, 0x2c, + 0x03, 0xd0, 0x04, 0x69, 0x24, 0x7c, 0xe4, 0x07, + 0x02, 0xd5, 0x4c, 0x68, 0x01, 0x34, 0x4c, 0x60, + 0x80, 0x6b, 0x00, 0x28, 0x02, 0xd0, 0x08, 0x6b, + 0x01, 0x30, 0x08, 0x63, 0x00, 0x2a, 0x0c, 0xd0, + 0x98, 0x18, 0x01, 0x38, 0x08, 0xe0, 0x3c, 0x00, + 0x94, 0xc5, 0x00, 0x00, 0x01, 0x2a, 0x01, 0xd0, + 0x02, 0x2a, 0x02, 0xd1, 0x88, 0x68, 0x01, 0x30, + 0x88, 0x60, 0xe0, 0x79, 0x18, 0x18, 0x08, 0x62, + 0x10, 0xbd, 0x00, 0x00, 0x90, 0x5c, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x01, 0x49, 0x0a, 0x20, + 0x08, 0x81, 0x70, 0x47, 0xc4, 0x7a, 0x01, 0x00, + 0xf0, 0xb5, 0x32, 0x4f, 0x04, 0x1c, 0x78, 0x78, + 0x85, 0xb0, 0xc0, 0x07, 0xc0, 0x0f, 0x03, 0x90, + 0x3c, 0x00, 0xd0, 0xc5, 0x00, 0x00, 0xb8, 0x78, + 0x02, 0x90, 0x01, 0x20, 0xa0, 0x40, 0x04, 0x90, + 0x39, 0x1c, 0x88, 0x70, 0x2c, 0x48, 0x00, 0x88, + 0x06, 0xf0, 0x0b, 0xfc, 0x01, 0x90, 0xfe, 0xf7, + 0xae, 0xfc, 0x04, 0x30, 0x29, 0x4e, 0xa5, 0x00, + 0x71, 0x59, 0x09, 0x79, 0x88, 0x42, 0x06, 0xd0, + 0xfe, 0xf7, 0xa5, 0xfc, 0x71, 0x59, 0x04, 0x30, + 0x08, 0x71, 0x01, 0x20, 0x78, 0x70, 0x00, 0x20, + 0x78, 0x70, 0x3c, 0x00, 0x0c, 0xc6, 0x00, 0x00, + 0x21, 0x48, 0x01, 0x21, 0x20, 0x4e, 0x30, 0x38, + 0x01, 0x55, 0x71, 0x59, 0x03, 0x20, 0x08, 0x70, + 0x06, 0xf0, 0xc6, 0xfb, 0x06, 0x1c, 0xfe, 0xf7, + 0x91, 0xfc, 0x36, 0x18, 0x0e, 0x36, 0x09, 0xe0, + 0x30, 0x1c, 0x06, 0xf0, 0xf5, 0xfa, 0x00, 0x28, + 0x04, 0xd0, 0x23, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x33, 0xfe, 0x03, 0xe0, 0xf6, 0xf7, 0x34, 0xfb, + 0x00, 0x28, 0xf1, 0xd0, 0x3c, 0x00, 0x48, 0xc6, + 0x00, 0x00, 0x12, 0x48, 0x13, 0x49, 0x3c, 0x38, + 0x00, 0x78, 0x08, 0x72, 0x20, 0x1c, 0xf4, 0xf7, + 0xa2, 0xfa, 0x0e, 0x4e, 0x71, 0x59, 0x08, 0x71, + 0x03, 0x98, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x21, + 0x79, 0x70, 0x09, 0x48, 0x00, 0x88, 0x01, 0x99, + 0x06, 0xf0, 0xbd, 0xfb, 0x02, 0x98, 0xb8, 0x70, + 0x09, 0x49, 0x49, 0x79, 0x04, 0x98, 0x88, 0x42, + 0x03, 0xd0, 0x24, 0x21, 0x86, 0x20, 0x3c, 0x00, + 0x84, 0xc6, 0x00, 0x00, 0xf4, 0xf7, 0x0e, 0xfe, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x50, 0x07, 0x00, + 0xd0, 0x79, 0x01, 0x00, 0x10, 0x7b, 0x01, 0x00, + 0x80, 0x80, 0x07, 0x00, 0x50, 0x80, 0x07, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, 0x05, 0x28, + 0x01, 0xd3, 0xf4, 0xf7, 0x29, 0xfe, 0x05, 0x2d, + 0x01, 0xd3, 0xf4, 0xf7, 0x25, 0xfe, 0x0b, 0x4a, + 0xa8, 0x00, 0x11, 0x58, 0xa0, 0x00, 0x10, 0x58, + 0x3c, 0x00, 0xc0, 0xc6, 0x00, 0x00, 0x0e, 0xc9, + 0x0e, 0xc0, 0x06, 0x21, 0x06, 0x22, 0x06, 0x48, + 0x69, 0x43, 0x2a, 0x38, 0x09, 0x18, 0x62, 0x43, + 0x10, 0x18, 0x06, 0x22, 0xf3, 0xf7, 0x0f, 0xff, + 0x02, 0x48, 0x30, 0x38, 0x41, 0x5d, 0x01, 0x55, + 0xb0, 0xbd, 0x10, 0x7b, 0x01, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0e, 0x48, 0x0d, 0x1c, 0x80, 0x78, + 0x01, 0x21, 0xa1, 0x40, 0x08, 0x40, 0x03, 0xd0, + 0x01, 0x21, 0x3c, 0x00, 0xfc, 0xc6, 0x00, 0x00, + 0x86, 0x20, 0xf4, 0xf7, 0xd1, 0xfd, 0x06, 0x21, + 0x06, 0x22, 0x09, 0x48, 0x69, 0x43, 0x09, 0x18, + 0x62, 0x43, 0x10, 0x18, 0x06, 0x22, 0xf3, 0xf7, + 0xf1, 0xfe, 0x20, 0x1c, 0xf4, 0xf7, 0x40, 0xfa, + 0x03, 0x4a, 0xa1, 0x00, 0x2a, 0x32, 0x51, 0x58, + 0x08, 0x71, 0xb0, 0xbd, 0x00, 0x50, 0x07, 0x00, + 0xe6, 0x7a, 0x01, 0x00, 0x03, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0x48, 0x60, 0x3c, 0x00, 0x38, 0xc7, + 0x00, 0x00, 0x07, 0xf0, 0x32, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0xd4, 0x7a, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x05, 0x28, 0x01, 0xd3, 0xf4, 0xf7, + 0xd8, 0xfd, 0x07, 0x49, 0x08, 0x7a, 0x07, 0x4a, + 0x10, 0x70, 0x01, 0x20, 0x08, 0x72, 0xfe, 0xf7, + 0xf4, 0xfb, 0x04, 0x4a, 0x04, 0x30, 0xa1, 0x00, + 0x3c, 0x32, 0x51, 0x58, 0x08, 0x71, 0x10, 0xbd, + 0x00, 0x00, 0x80, 0x80, 0x07, 0x00, 0x3c, 0x00, + 0x74, 0xc7, 0x00, 0x00, 0xd4, 0x7a, 0x01, 0x00, + 0x03, 0x49, 0x80, 0xb5, 0x01, 0x20, 0x48, 0x60, + 0x07, 0xf0, 0x0e, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0xd4, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xf4, 0xf7, 0xb4, 0xfd, + 0x20, 0x1c, 0xf5, 0xf7, 0x8f, 0xfe, 0x00, 0x21, + 0x20, 0x1c, 0xfb, 0xf7, 0x31, 0xfd, 0x01, 0x21, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x09, 0x04, + 0x3c, 0x00, 0xb0, 0xc7, 0x00, 0x00, 0x09, 0x0c, + 0x20, 0x1c, 0x04, 0xf0, 0x22, 0xfa, 0x10, 0xbd, + 0x00, 0x00, 0x06, 0x49, 0x01, 0x20, 0x05, 0x4b, + 0x88, 0x60, 0x00, 0x20, 0x3c, 0x33, 0x00, 0x21, + 0x82, 0x00, 0x9a, 0x58, 0x11, 0x70, 0x01, 0x30, + 0x05, 0x28, 0xf9, 0xdb, 0x70, 0x47, 0xd4, 0x7a, + 0x01, 0x00, 0x0f, 0x49, 0x38, 0xb5, 0x00, 0x20, + 0x88, 0x60, 0x0e, 0x48, 0x01, 0x1c, 0x20, 0x31, + 0x8a, 0x79, 0x3c, 0x00, 0xec, 0xc7, 0x00, 0x00, + 0x00, 0xab, 0x1a, 0x70, 0xc9, 0x79, 0x0a, 0x4c, + 0x09, 0x4d, 0x59, 0x70, 0x0c, 0x34, 0x3c, 0x35, + 0x00, 0x21, 0x03, 0x22, 0x63, 0x5c, 0x00, 0x2b, + 0x02, 0xd0, 0x8b, 0x00, 0xeb, 0x58, 0x1a, 0x70, + 0x01, 0x31, 0x05, 0x29, 0xf6, 0xdb, 0x00, 0xab, + 0x19, 0x88, 0xc1, 0x84, 0x38, 0xbd, 0x00, 0x00, + 0xd4, 0x7a, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0xff, 0xb5, 0x14, 0x4f, 0x3c, 0x00, 0x28, 0xc8, + 0x00, 0x00, 0x04, 0x1c, 0xbe, 0x79, 0x0d, 0x1c, + 0x81, 0xb0, 0x0f, 0x20, 0x00, 0xf0, 0xb9, 0xf8, + 0x2a, 0x1c, 0x10, 0x4d, 0x00, 0x90, 0x21, 0x1c, + 0x28, 0x1c, 0xf4, 0xf7, 0xde, 0xfc, 0x21, 0x1c, + 0xa8, 0x1d, 0x03, 0x9a, 0xf4, 0xf7, 0xd9, 0xfc, + 0x21, 0x1c, 0x28, 0x1c, 0x0c, 0x30, 0x04, 0x9a, + 0xf4, 0xf7, 0xd3, 0xfc, 0x21, 0x1c, 0x28, 0x1c, + 0x12, 0x30, 0x0a, 0x9a, 0xf4, 0xf7, 0x3c, 0x00, + 0x64, 0xc8, 0x00, 0x00, 0xcd, 0xfc, 0x07, 0xf0, + 0x9b, 0xf8, 0x00, 0x98, 0x00, 0xf0, 0x76, 0xf8, + 0xbe, 0x71, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0x20, 0x10, 0x07, 0x00, 0xe6, 0x7a, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x20, 0xf6, 0xf7, 0x26, 0xf8, + 0x07, 0x49, 0x88, 0x78, 0x00, 0x09, 0x00, 0x01, + 0x88, 0x70, 0x00, 0x24, 0x20, 0x1c, 0xf5, 0xf7, + 0x11, 0xfe, 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, + 0x3c, 0x00, 0xa0, 0xc8, 0x00, 0x00, 0x04, 0x2c, + 0xf7, 0xd3, 0x10, 0xbd, 0x00, 0x00, 0x00, 0x50, + 0x07, 0x00, 0x80, 0xb5, 0x02, 0xf0, 0xe3, 0xfb, + 0x03, 0x48, 0x81, 0x78, 0x0f, 0x22, 0x11, 0x43, + 0x81, 0x70, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x50, + 0x07, 0x00, 0xf8, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xf4, 0xf7, 0x17, 0xfd, + 0xa6, 0x00, 0x00, 0x2d, 0x11, 0x4f, 0x07, 0xd1, + 0xb8, 0x59, 0x3c, 0x00, 0xdc, 0xc8, 0x00, 0x00, + 0x81, 0x68, 0x00, 0x29, 0x0e, 0xd1, 0x40, 0x78, + 0x00, 0x28, 0x0b, 0xd0, 0x02, 0xe0, 0xff, 0x35, + 0x2d, 0x06, 0x2d, 0x0e, 0x29, 0x1c, 0x20, 0x1c, + 0xfb, 0xf7, 0x88, 0xfc, 0x01, 0x1c, 0x20, 0x1c, + 0x04, 0xf0, 0x7e, 0xf9, 0x06, 0x49, 0x01, 0x20, + 0x30, 0x39, 0x08, 0x55, 0x04, 0x48, 0x3c, 0x38, + 0x80, 0x68, 0x00, 0x28, 0x02, 0xd1, 0xb9, 0x59, + 0x03, 0x20, 0x08, 0x70, 0x3c, 0x00, 0x18, 0xc9, + 0x00, 0x00, 0xf8, 0xbd, 0x00, 0x00, 0x10, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0x04, 0xf0, 0xcd, 0xf9, + 0x80, 0xbd, 0x10, 0xb5, 0x04, 0x1c, 0x05, 0x28, + 0x01, 0xd3, 0xf4, 0xf7, 0xe6, 0xfc, 0x20, 0x1c, + 0xf5, 0xf7, 0xc1, 0xfd, 0x00, 0x20, 0x05, 0x4a, + 0xa1, 0x00, 0x51, 0x58, 0x88, 0x60, 0x04, 0x49, + 0x88, 0x78, 0x01, 0x22, 0xa2, 0x40, 0x10, 0x43, + 0x88, 0x70, 0x10, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xc9, 0x00, 0x00, 0x10, 0x7b, 0x01, 0x00, + 0x00, 0x50, 0x07, 0x00, 0x02, 0x4a, 0x91, 0x78, + 0x08, 0x43, 0x90, 0x70, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x50, 0x07, 0x00, 0xf8, 0xb5, 0x0c, 0x4f, + 0xbe, 0x79, 0x0f, 0x20, 0x00, 0xf0, 0x18, 0xf8, + 0x05, 0x1c, 0x00, 0x24, 0x20, 0x1c, 0xf4, 0xf7, + 0x0d, 0xf9, 0x08, 0x4a, 0xa1, 0x00, 0x51, 0x58, + 0x08, 0x71, 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, + 0x3c, 0x00, 0x90, 0xc9, 0x00, 0x00, 0x04, 0x2c, + 0xf3, 0xd3, 0x28, 0x1c, 0xff, 0xf7, 0xe1, 0xff, + 0xbe, 0x71, 0xf8, 0xbd, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0x10, 0x7b, 0x01, 0x00, 0xb0, 0xb5, + 0x08, 0x49, 0x8d, 0x78, 0x8a, 0x78, 0x05, 0x40, + 0x82, 0x43, 0x8a, 0x70, 0x06, 0xf0, 0xf9, 0xf9, + 0x04, 0x1c, 0x0a, 0x34, 0x20, 0x1c, 0x06, 0xf0, + 0x34, 0xf9, 0x00, 0x28, 0xfa, 0xd0, 0x28, 0x1c, + 0xb0, 0xbd, 0x3c, 0x00, 0xcc, 0xc9, 0x00, 0x00, + 0x00, 0x50, 0x07, 0x00, 0x01, 0x49, 0x0a, 0x20, + 0x08, 0x81, 0x70, 0x47, 0x38, 0x7b, 0x01, 0x00, + 0xf8, 0xb5, 0x10, 0x48, 0x04, 0x26, 0x04, 0x1c, + 0xe0, 0x34, 0x05, 0x1c, 0x38, 0x3d, 0x00, 0x27, + 0x20, 0x1c, 0x1c, 0x30, 0xe4, 0x60, 0xa0, 0x61, + 0x27, 0x61, 0x0b, 0x48, 0xa6, 0x82, 0xe0, 0x61, + 0x27, 0x62, 0xa7, 0x62, 0x06, 0x20, 0xa0, 0x84, + 0x20, 0x1c, 0xfe, 0xf7, 0x3c, 0x00, 0x08, 0xca, + 0x00, 0x00, 0x87, 0xfc, 0x20, 0x1c, 0x0c, 0x30, + 0xf6, 0xf7, 0xb7, 0xf9, 0x05, 0x49, 0x38, 0x3c, + 0xac, 0x42, 0x08, 0x80, 0xe7, 0xd1, 0xf8, 0xbd, + 0x00, 0x00, 0xd4, 0xe4, 0x01, 0x00, 0x12, 0x61, + 0x01, 0x00, 0x48, 0x7b, 0x01, 0x00, 0xf7, 0xb5, + 0x05, 0x1c, 0x0c, 0x23, 0x0f, 0x1c, 0x12, 0x49, + 0x58, 0x43, 0x44, 0x18, 0x20, 0x88, 0x06, 0xf0, + 0xea, 0xf9, 0xa0, 0x78, 0x01, 0x28, 0x3c, 0x00, + 0x44, 0xca, 0x00, 0x00, 0x1a, 0xd1, 0x66, 0x68, + 0x02, 0x2f, 0x05, 0xd1, 0x5c, 0x20, 0x80, 0x5b, + 0x02, 0x99, 0x00, 0x09, 0x88, 0x42, 0x11, 0xd1, + 0x28, 0x1c, 0xfe, 0xf7, 0xfb, 0xff, 0x30, 0x1c, + 0xf9, 0xf7, 0xfa, 0xfd, 0x04, 0x20, 0xa0, 0x70, + 0x39, 0x1c, 0x28, 0x1c, 0xfb, 0xf7, 0xf4, 0xf8, + 0x03, 0x4a, 0xe8, 0x00, 0x3c, 0x32, 0x11, 0x58, + 0x01, 0x31, 0x11, 0x50, 0xfe, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xca, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x01, 0x20, 0x06, 0x4a, 0x00, 0x21, + 0x0c, 0x23, 0x4b, 0x43, 0x9b, 0x18, 0x9b, 0x78, + 0x00, 0x2b, 0x00, 0xd0, 0x00, 0x20, 0x01, 0x31, + 0x04, 0x29, 0xf5, 0xdb, 0x70, 0x47, 0x60, 0x7b, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0xff, 0xf7, + 0xea, 0xfc, 0x00, 0x28, 0x03, 0xd1, 0x20, 0x21, + 0x0c, 0x20, 0xf4, 0xf7, 0xf6, 0xfb, 0x26, 0x1c, + 0x60, 0x36, 0x3c, 0x00, 0xbc, 0xca, 0x00, 0x00, + 0x00, 0x21, 0xf1, 0x71, 0xe1, 0x64, 0x60, 0x6b, + 0x25, 0x1c, 0x40, 0x35, 0x00, 0x28, 0x31, 0xd0, + 0xff, 0xf7, 0x04, 0xf9, 0x01, 0x22, 0x12, 0x03, + 0x00, 0x28, 0x20, 0x69, 0x01, 0x88, 0x01, 0xd0, + 0x91, 0x43, 0x00, 0xe0, 0x11, 0x43, 0x01, 0x80, + 0x20, 0x69, 0x01, 0x22, 0x00, 0x88, 0xd2, 0x02, + 0x28, 0x83, 0x20, 0x1c, 0x58, 0x30, 0x01, 0x88, + 0x91, 0x43, 0x01, 0x80, 0x3c, 0x00, 0xf8, 0xca, + 0x00, 0x00, 0xa3, 0x6b, 0x52, 0x08, 0x00, 0x2b, + 0x10, 0xd0, 0x91, 0x43, 0x01, 0x80, 0x28, 0x8b, + 0x00, 0x07, 0x80, 0x0f, 0x01, 0x28, 0x15, 0xd0, + 0x2e, 0x20, 0x01, 0x5d, 0x20, 0x69, 0x04, 0x30, + 0xf8, 0xf7, 0x41, 0xfd, 0x61, 0x6a, 0xfe, 0xf7, + 0xa8, 0xf9, 0x04, 0xe0, 0x11, 0x43, 0x01, 0x80, + 0x20, 0x1c, 0xfb, 0xf7, 0xcc, 0xfb, 0x68, 0x83, + 0x04, 0xe0, 0x20, 0x69, 0x41, 0x80, 0x3c, 0x00, + 0x34, 0xcb, 0x00, 0x00, 0xa8, 0x8b, 0x21, 0x69, + 0xc8, 0x82, 0xe0, 0x68, 0xf6, 0xf7, 0x20, 0xf9, + 0x30, 0x80, 0x60, 0x6d, 0x00, 0x28, 0x04, 0xd0, + 0x00, 0x22, 0x03, 0x21, 0x70, 0x7a, 0xfe, 0xf7, + 0x0d, 0xff, 0x20, 0x1c, 0x00, 0xf0, 0xb6, 0xf9, + 0x70, 0x7a, 0x06, 0xf0, 0x45, 0xf8, 0x70, 0xbd, + 0xb0, 0xb5, 0x00, 0x24, 0x06, 0xf0, 0x22, 0xf9, + 0x09, 0x4a, 0x00, 0x21, 0x0c, 0x23, 0x4b, 0x43, + 0x3c, 0x00, 0x70, 0xcb, 0x00, 0x00, 0x9d, 0x18, + 0x6b, 0x68, 0x5b, 0x6c, 0xad, 0x78, 0xc3, 0x1a, + 0x01, 0x2d, 0x02, 0xd1, 0xa3, 0x42, 0x00, 0xdd, + 0x1c, 0x1c, 0x01, 0x31, 0x05, 0x29, 0xf0, 0xd3, + 0x20, 0x1c, 0xb0, 0xbd, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x06, 0xf0, + 0xa8, 0xfe, 0x0c, 0x20, 0x08, 0x49, 0x60, 0x43, + 0x45, 0x18, 0x28, 0x88, 0x06, 0xf0, 0x35, 0xf9, + 0x68, 0x68, 0x3c, 0x00, 0xac, 0xcb, 0x00, 0x00, + 0x00, 0x28, 0x06, 0xd0, 0x20, 0x30, 0x00, 0x7b, + 0x01, 0x28, 0x02, 0xd1, 0x20, 0x1c, 0xff, 0xf7, + 0xa3, 0xfa, 0xb0, 0xbd, 0x60, 0x7b, 0x01, 0x00, + 0xff, 0xb5, 0x85, 0xb0, 0x0f, 0xae, 0x60, 0xce, + 0x38, 0x20, 0x1e, 0x49, 0x70, 0x43, 0x17, 0x1c, + 0x44, 0x18, 0xff, 0xf7, 0x7f, 0xf8, 0x01, 0x22, + 0x12, 0x03, 0x00, 0x28, 0x03, 0xd0, 0x20, 0x88, + 0x90, 0x43, 0x20, 0x80, 0x3c, 0x00, 0xe8, 0xcb, + 0x00, 0x00, 0x02, 0xe0, 0x21, 0x88, 0x11, 0x43, + 0x21, 0x80, 0x11, 0x98, 0x39, 0x1c, 0xe0, 0x62, + 0x05, 0x98, 0xf8, 0xf7, 0xd0, 0xfc, 0x01, 0x1c, + 0x2b, 0x1c, 0x38, 0x1c, 0x06, 0x9a, 0xfe, 0xf7, + 0x20, 0xf9, 0x60, 0x80, 0x06, 0x22, 0x20, 0x1d, + 0x0f, 0x49, 0xf3, 0xf7, 0x72, 0xfc, 0x23, 0x1c, + 0x08, 0x98, 0x30, 0x33, 0x18, 0x70, 0x0e, 0x98, + 0x0c, 0x49, 0x58, 0x70, 0x65, 0x63, 0x3c, 0x00, + 0x24, 0xcc, 0x00, 0x00, 0x00, 0x20, 0x02, 0x90, + 0x01, 0x22, 0x04, 0x92, 0x09, 0x48, 0x03, 0x91, + 0x5a, 0x78, 0x01, 0x88, 0x01, 0x92, 0x00, 0x91, + 0x19, 0x78, 0x24, 0x3b, 0x30, 0x1c, 0x62, 0x6b, + 0xfe, 0xf7, 0xa8, 0xfe, 0x09, 0xb0, 0xf0, 0xbd, + 0xd4, 0xe4, 0x01, 0x00, 0x12, 0x61, 0x01, 0x00, + 0x5d, 0x4e, 0x00, 0x00, 0x48, 0x7b, 0x01, 0x00, + 0xff, 0xb5, 0x87, 0xb0, 0x10, 0x98, 0x12, 0xaf, + 0x3c, 0x00, 0x60, 0xcc, 0x00, 0x00, 0x8c, 0x46, + 0xa2, 0xcf, 0x4c, 0x23, 0x30, 0x4c, 0x6b, 0x43, + 0x1c, 0x19, 0x16, 0x1c, 0x15, 0x9a, 0x27, 0x85, + 0x27, 0x1c, 0x30, 0x37, 0x06, 0x97, 0x05, 0x97, + 0x00, 0x23, 0x3b, 0x73, 0x05, 0x9f, 0x78, 0x73, + 0x11, 0x98, 0x27, 0x1c, 0x60, 0x64, 0x61, 0x60, + 0x22, 0x60, 0x40, 0x37, 0x3e, 0x70, 0x61, 0x46, + 0x61, 0x87, 0x07, 0x98, 0x31, 0x1c, 0xf8, 0xf7, + 0x80, 0xfc, 0x3c, 0x00, 0x9c, 0xcc, 0x00, 0x00, + 0x05, 0x99, 0xc8, 0x73, 0x0a, 0x98, 0x78, 0x70, + 0x30, 0x1c, 0xfe, 0xf7, 0x73, 0xf8, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0x41, 0x00, 0x02, 0x20, 0x01, 0x40, 0x11, 0x9a, + 0x01, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x08, 0x43, 0x38, 0x72, 0x20, 0x1c, 0x2e, 0x30, + 0x07, 0x99, 0xfd, 0xf7, 0xcf, 0xff, 0x28, 0x1c, + 0x04, 0xf0, 0xae, 0xf8, 0x3c, 0x00, 0xd8, 0xcc, + 0x00, 0x00, 0xfe, 0xf7, 0xfe, 0xff, 0x4c, 0x22, + 0x12, 0x4b, 0x6a, 0x43, 0xd2, 0x18, 0x01, 0x21, + 0x09, 0x03, 0x2a, 0x32, 0x00, 0x28, 0x04, 0xd0, + 0x10, 0x1c, 0x12, 0x88, 0x8a, 0x43, 0x02, 0x80, + 0x02, 0xe0, 0x10, 0x88, 0x08, 0x43, 0x10, 0x80, + 0x0b, 0x49, 0x00, 0x20, 0x03, 0x91, 0x06, 0x99, + 0x02, 0x90, 0x00, 0x22, 0x04, 0x92, 0x08, 0x48, + 0x0a, 0x7b, 0x41, 0x88, 0x23, 0x1c, 0x3c, 0x00, + 0x14, 0xcd, 0x00, 0x00, 0x01, 0x92, 0x00, 0x91, + 0x79, 0x78, 0x08, 0x33, 0x28, 0x1c, 0x62, 0x68, + 0xfe, 0xf7, 0x38, 0xfe, 0x0b, 0xb0, 0xf0, 0xbd, + 0x58, 0xe3, 0x01, 0x00, 0x75, 0x4f, 0x00, 0x00, + 0x3c, 0x7c, 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, + 0x01, 0x28, 0x27, 0xd0, 0x80, 0x28, 0x30, 0xd1, + 0xe0, 0x6c, 0x00, 0x28, 0x08, 0xd0, 0x69, 0x20, + 0x00, 0x5d, 0x18, 0x49, 0xc0, 0x00, 0x40, 0x18, + 0x3c, 0x00, 0x50, 0xcd, 0x00, 0x00, 0x04, 0x30, + 0x01, 0x68, 0x01, 0x31, 0x01, 0x60, 0x20, 0x1c, + 0xff, 0xf7, 0xe9, 0xfb, 0x13, 0x4d, 0x50, 0x3d, + 0xe8, 0x68, 0x00, 0x28, 0x05, 0xd0, 0x2e, 0x20, + 0x00, 0x5d, 0xfe, 0xf7, 0x10, 0xf8, 0x02, 0xf0, + 0x42, 0xfe, 0x20, 0x1c, 0x61, 0x68, 0xf3, 0xf7, + 0x2f, 0xfb, 0x40, 0x34, 0x60, 0x78, 0x00, 0x28, + 0x02, 0xd1, 0x06, 0xf0, 0x12, 0xf8, 0xa8, 0x60, + 0xb0, 0xbd, 0x3c, 0x00, 0x8c, 0xcd, 0x00, 0x00, + 0x20, 0x06, 0x00, 0x0e, 0x81, 0x28, 0xfa, 0xd1, + 0x22, 0x0c, 0x20, 0x04, 0x00, 0x0e, 0x02, 0x21, + 0xfe, 0xf7, 0xe6, 0xfd, 0xb0, 0xbd, 0x0a, 0x21, + 0x0c, 0x20, 0xf4, 0xf7, 0x7d, 0xfa, 0xb0, 0xbd, + 0x9c, 0x7b, 0x01, 0x00, 0xf8, 0xb5, 0x18, 0x4e, + 0x18, 0x4f, 0x05, 0x1c, 0x34, 0x79, 0xb8, 0x79, + 0x00, 0x90, 0x20, 0x1c, 0xf5, 0xf7, 0x7c, 0xff, + 0x00, 0x28, 0x06, 0xd0, 0x3c, 0x00, 0xc8, 0xcd, + 0x00, 0x00, 0x12, 0x48, 0x38, 0x38, 0x40, 0x68, + 0x85, 0x42, 0x01, 0xd1, 0x00, 0x2d, 0x03, 0xd1, + 0x10, 0x21, 0x86, 0x20, 0xf4, 0xf7, 0x63, 0xfa, + 0x0d, 0x49, 0x00, 0x20, 0x38, 0x39, 0x48, 0x60, + 0x04, 0x21, 0x20, 0x1c, 0xff, 0xf7, 0x59, 0xfc, + 0x04, 0x21, 0x20, 0x1c, 0xf5, 0xf7, 0xeb, 0xfe, + 0x0c, 0x21, 0x06, 0x4a, 0x61, 0x43, 0x30, 0x3a, + 0x89, 0x18, 0x0c, 0x71, 0x04, 0x20, 0x3c, 0x00, + 0x04, 0xce, 0x00, 0x00, 0x30, 0x71, 0x00, 0x98, + 0xb8, 0x71, 0x0f, 0x20, 0xff, 0xf7, 0xa6, 0xfd, + 0xf8, 0xbd, 0x00, 0x00, 0xa4, 0x7a, 0x01, 0x00, + 0x20, 0x10, 0x07, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x0f, 0x20, 0xff, 0xf7, 0xc1, 0xfd, 0xf5, 0xf7, + 0x3b, 0xff, 0x01, 0x25, 0x00, 0x28, 0x00, 0xd0, + 0x00, 0x25, 0x16, 0x4e, 0xb0, 0x79, 0x16, 0x4f, + 0x00, 0x90, 0x38, 0x79, 0x04, 0x28, 0x01, 0xd1, + 0x3c, 0x00, 0x40, 0xce, 0x00, 0x00, 0x00, 0x2c, + 0x03, 0xd1, 0x11, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x2c, 0xfa, 0x10, 0x48, 0x29, 0x06, 0x38, 0x38, + 0x44, 0x60, 0x09, 0x0e, 0x0c, 0x1c, 0x04, 0x20, + 0xff, 0xf7, 0x21, 0xfc, 0x03, 0x21, 0x20, 0x1c, + 0xff, 0xf7, 0x41, 0xfc, 0x21, 0x1c, 0x04, 0x20, + 0xf5, 0xf7, 0xaf, 0xfe, 0x0c, 0x21, 0x07, 0x4a, + 0x69, 0x43, 0x04, 0x20, 0x30, 0x3a, 0x89, 0x18, + 0x08, 0x71, 0x3c, 0x00, 0x7c, 0xce, 0x00, 0x00, + 0x3c, 0x71, 0x00, 0x98, 0xb0, 0x71, 0x20, 0x1c, + 0xff, 0xf7, 0x50, 0xfd, 0x04, 0x20, 0xf8, 0xbd, + 0x20, 0x10, 0x07, 0x00, 0xa4, 0x7a, 0x01, 0x00, + 0x0c, 0x23, 0x02, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x80, 0x68, 0x70, 0x47, 0x74, 0x7a, 0x01, 0x00, + 0x60, 0x30, 0xc1, 0x79, 0x80, 0x79, 0x81, 0x42, + 0x01, 0xd9, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xce, + 0x00, 0x00, 0x01, 0x48, 0x80, 0x68, 0x70, 0x47, + 0x00, 0x00, 0x4c, 0x7b, 0x01, 0x00, 0x38, 0xb5, + 0x69, 0x21, 0x09, 0x5c, 0x18, 0x23, 0x10, 0x4a, + 0x59, 0x43, 0x89, 0x18, 0x8a, 0x68, 0x01, 0x32, + 0x8a, 0x60, 0x4b, 0x69, 0xd2, 0x1a, 0xcb, 0x68, + 0x93, 0x42, 0x00, 0xd2, 0xca, 0x60, 0x00, 0x22, + 0x0b, 0x4c, 0x02, 0x60, 0x22, 0x1c, 0x20, 0x32, + 0x95, 0x79, 0x00, 0xab, 0x1d, 0x70, 0x3c, 0x00, + 0xf4, 0xce, 0x00, 0x00, 0xd2, 0x79, 0x5a, 0x70, + 0x0a, 0x68, 0x00, 0x2a, 0x01, 0xd1, 0x48, 0x60, + 0x00, 0xe0, 0x10, 0x60, 0x00, 0xab, 0x08, 0x60, + 0x18, 0x88, 0xe0, 0x84, 0x38, 0xbd, 0x00, 0x00, + 0xc4, 0x7b, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x18, 0x23, 0x0a, 0x49, 0x58, 0x43, 0x41, 0x18, + 0x08, 0x69, 0x01, 0x30, 0x08, 0x61, 0x48, 0x68, + 0x00, 0x28, 0x09, 0xd0, 0x48, 0x69, 0x01, 0x30, + 0x3c, 0x00, 0x30, 0xcf, 0x00, 0x00, 0x48, 0x61, + 0x48, 0x68, 0x02, 0x68, 0x4a, 0x60, 0x00, 0x2a, + 0x00, 0xd1, 0x0a, 0x60, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0xc4, 0x7b, 0x01, 0x00, 0xf8, 0xb5, + 0x12, 0x4e, 0x10, 0x4d, 0x0f, 0x4c, 0x0a, 0x27, + 0x21, 0x1c, 0x00, 0x20, 0xe0, 0x60, 0x2a, 0x31, + 0x22, 0x1c, 0x18, 0x32, 0xa1, 0x60, 0x62, 0x61, + 0x27, 0x82, 0x0c, 0x4a, 0xe0, 0x61, 0xa2, 0x61, + 0x60, 0x62, 0x3c, 0x00, 0x6c, 0xcf, 0x00, 0x00, + 0x06, 0x20, 0x20, 0x84, 0x08, 0x1c, 0xfe, 0xf7, + 0xd7, 0xf9, 0x20, 0x1c, 0x08, 0x30, 0xf5, 0xf7, + 0x01, 0xff, 0x4c, 0x3c, 0xac, 0x42, 0x70, 0x80, + 0xe5, 0xd1, 0xff, 0x20, 0x30, 0x70, 0xf8, 0xbd, + 0x88, 0xe4, 0x01, 0x00, 0x0c, 0xe3, 0x01, 0x00, + 0x3c, 0x7c, 0x01, 0x00, 0x12, 0x61, 0x01, 0x00, + 0xf8, 0xb5, 0x04, 0x1c, 0x0b, 0x48, 0x0e, 0x1c, + 0x17, 0x1c, 0x44, 0x70, 0x3c, 0x00, 0xa8, 0xcf, + 0x00, 0x00, 0x05, 0xf0, 0x00, 0xff, 0x05, 0x1c, + 0x39, 0x1c, 0x30, 0x1c, 0xfd, 0xf7, 0xab, 0xff, + 0x0c, 0x21, 0x05, 0x4a, 0x28, 0x18, 0x0a, 0x30, + 0x61, 0x43, 0x08, 0x32, 0x50, 0x50, 0x03, 0x48, + 0x89, 0x18, 0x00, 0x68, 0x88, 0x60, 0xf8, 0xbd, + 0x00, 0x00, 0x6c, 0x7a, 0x01, 0x00, 0x78, 0x6e, + 0x01, 0x00, 0x70, 0xb5, 0x0b, 0x4e, 0x05, 0x1c, + 0x70, 0x78, 0xff, 0x28, 0x0f, 0xd0, 0x3c, 0x00, + 0xe4, 0xcf, 0x00, 0x00, 0x0c, 0x23, 0x08, 0x4c, + 0x58, 0x43, 0x08, 0x34, 0x20, 0x58, 0x05, 0xf0, + 0x1d, 0xfe, 0x00, 0x28, 0x06, 0xd1, 0x70, 0x78, + 0x0c, 0x23, 0x58, 0x43, 0x00, 0x19, 0x81, 0x68, + 0x29, 0x43, 0x81, 0x60, 0x70, 0xbd, 0x00, 0x00, + 0x6c, 0x7a, 0x01, 0x00, 0x80, 0xb5, 0x30, 0x21, + 0x01, 0x48, 0xf3, 0xf7, 0x43, 0xfa, 0x80, 0xbd, + 0xec, 0xe5, 0x01, 0x00, 0x10, 0xb5, 0x05, 0xf0, + 0x3c, 0x00, 0x20, 0xd0, 0x00, 0x00, 0xc5, 0xfe, + 0x0a, 0x49, 0x44, 0x18, 0x0c, 0xe0, 0x20, 0x1c, + 0x05, 0xf0, 0xf7, 0xfd, 0x00, 0x28, 0x07, 0xd0, + 0xf5, 0xf7, 0x51, 0xfe, 0x00, 0x28, 0x03, 0xd0, + 0x13, 0x21, 0x86, 0x20, 0xf4, 0xf7, 0x31, 0xf9, + 0xf5, 0xf7, 0x49, 0xfe, 0x00, 0x28, 0xee, 0xd1, + 0x10, 0xbd, 0xb0, 0x36, 0x00, 0x00, 0xff, 0xb5, + 0x8b, 0xb0, 0x19, 0x9b, 0x0d, 0x1c, 0x04, 0x1c, + 0x1a, 0x20, 0x3c, 0x00, 0x5c, 0xd0, 0x00, 0x00, + 0x00, 0x2b, 0x16, 0x99, 0x00, 0xd1, 0x18, 0x20, + 0x01, 0x90, 0x14, 0x98, 0x00, 0x28, 0x27, 0xd0, + 0xff, 0x20, 0x19, 0x9b, 0x01, 0x30, 0x00, 0x2b, + 0x01, 0xd1, 0x18, 0x23, 0x00, 0xe0, 0x1a, 0x23, + 0x04, 0x33, 0x82, 0x42, 0x04, 0xd3, 0xd0, 0x1a, + 0x40, 0x08, 0x40, 0x00, 0x00, 0x04, 0x00, 0x0c, + 0x0d, 0x90, 0x6a, 0x48, 0x00, 0x88, 0xc2, 0x1a, + 0x12, 0x04, 0x12, 0x0c, 0x3c, 0x00, 0x98, 0xd0, + 0x00, 0x00, 0x04, 0x92, 0x00, 0x29, 0x08, 0xd0, + 0x89, 0x79, 0x66, 0x4a, 0x49, 0x00, 0x51, 0x5a, + 0x04, 0x9a, 0x51, 0x1a, 0x0a, 0x04, 0x12, 0x0c, + 0x04, 0x92, 0x04, 0x9a, 0x82, 0x42, 0x05, 0xd9, + 0x00, 0x20, 0x04, 0x90, 0x02, 0xe0, 0x60, 0x48, + 0x04, 0x90, 0x0d, 0x90, 0x01, 0x98, 0x01, 0x04, + 0x09, 0x0c, 0x0a, 0x91, 0x00, 0x20, 0xf4, 0xf7, + 0x84, 0xfa, 0x00, 0x90, 0x00, 0x68, 0x3c, 0x00, + 0xd4, 0xd0, 0x00, 0x00, 0x00, 0x26, 0x06, 0x90, + 0x20, 0x60, 0x00, 0x20, 0x05, 0x90, 0x0e, 0x98, + 0x00, 0x24, 0x00, 0x05, 0x00, 0x0c, 0x09, 0x90, + 0x1a, 0x98, 0x0d, 0x9f, 0x40, 0x07, 0x40, 0x0f, + 0x08, 0x90, 0x07, 0x94, 0x03, 0x95, 0x00, 0x2d, + 0x0d, 0xd0, 0x28, 0x89, 0xb8, 0x42, 0x04, 0xd8, + 0x36, 0x18, 0x3f, 0x1a, 0x07, 0xd0, 0xed, 0x68, + 0xf5, 0xe7, 0x39, 0x04, 0x09, 0x0c, 0x28, 0x1c, + 0x3c, 0x00, 0x10, 0xd1, 0x00, 0x00, 0xf4, 0xf7, + 0x38, 0xfb, 0xef, 0xe7, 0x00, 0x2e, 0x02, 0xd1, + 0x07, 0x99, 0x00, 0x29, 0x71, 0xd1, 0x27, 0x1c, + 0x6c, 0x20, 0xf4, 0xf7, 0x88, 0xfb, 0x07, 0x99, + 0x04, 0x1c, 0x00, 0x29, 0x20, 0xd1, 0x07, 0x94, + 0x00, 0x20, 0xa0, 0x61, 0x18, 0x98, 0x27, 0x1c, + 0x60, 0x60, 0x17, 0x98, 0x24, 0x37, 0xa0, 0x60, + 0x06, 0x98, 0x20, 0x61, 0x15, 0x98, 0x0f, 0xc8, + 0x0f, 0xc7, 0x3c, 0x00, 0x4c, 0xd1, 0x00, 0x00, + 0x14, 0x98, 0x5c, 0x21, 0x60, 0x63, 0x09, 0x98, + 0x08, 0x53, 0x19, 0x98, 0x69, 0x21, 0xe0, 0x63, + 0x1b, 0x98, 0x08, 0x55, 0x1c, 0x98, 0x60, 0x65, + 0x19, 0x98, 0x00, 0x28, 0x23, 0xd0, 0x08, 0x98, + 0x06, 0x99, 0x08, 0x83, 0x1f, 0xe0, 0x6c, 0x22, + 0x20, 0x1c, 0x07, 0x99, 0xf3, 0xf7, 0x1a, 0xfa, + 0x3c, 0x60, 0x01, 0x98, 0x62, 0x21, 0x30, 0x18, + 0xc8, 0x53, 0x15, 0x98, 0x3c, 0x00, 0x88, 0xd1, + 0x00, 0x00, 0x40, 0x21, 0x80, 0x7a, 0xc8, 0x55, + 0x00, 0x20, 0xb8, 0x63, 0x06, 0x98, 0x0a, 0x99, + 0xf4, 0xf7, 0x1f, 0xfa, 0xf8, 0x60, 0x02, 0x99, + 0xf4, 0xf7, 0x3b, 0xf9, 0x20, 0x1c, 0x40, 0x30, + 0x81, 0x8b, 0x05, 0x9a, 0x12, 0x07, 0x12, 0x0f, + 0x11, 0x43, 0x81, 0x83, 0x03, 0x98, 0x5e, 0x21, + 0x02, 0x90, 0x01, 0x98, 0x22, 0x4a, 0x30, 0x18, + 0x08, 0x53, 0x12, 0x68, 0x01, 0x21, 0x3c, 0x00, + 0xc4, 0xd1, 0x00, 0x00, 0x08, 0x1c, 0x00, 0x2a, + 0x00, 0xd0, 0x1b, 0x98, 0x00, 0x06, 0x04, 0x9a, + 0x00, 0x0e, 0x96, 0x42, 0x03, 0xd9, 0x2c, 0x22, + 0x11, 0x55, 0x1b, 0x49, 0x04, 0xe0, 0x15, 0x99, + 0x2c, 0x22, 0x09, 0x7a, 0x11, 0x55, 0x19, 0x49, + 0x08, 0x5c, 0x66, 0x21, 0x08, 0x55, 0x1c, 0x98, + 0x00, 0x28, 0x01, 0xd0, 0x1f, 0x20, 0x08, 0x55, + 0x00, 0x2d, 0x03, 0xd0, 0xe8, 0x68, 0x03, 0x90, + 0x3c, 0x00, 0x00, 0xd2, 0x00, 0x00, 0x00, 0x20, + 0x00, 0xe0, 0x09, 0xe0, 0xe8, 0x60, 0x05, 0x98, + 0x00, 0x26, 0x01, 0x30, 0x00, 0x04, 0x00, 0x0c, + 0x0d, 0x9f, 0x05, 0x90, 0x03, 0x9d, 0x6d, 0xe7, + 0x00, 0x98, 0xe0, 0x60, 0x02, 0x99, 0xf4, 0xf7, + 0xfa, 0xf8, 0x00, 0x20, 0x20, 0x60, 0x01, 0x21, + 0xa1, 0x63, 0x60, 0x34, 0x60, 0x80, 0x07, 0x98, + 0x0f, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x06, 0x61, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0xd2, 0x00, 0x00, + 0x5c, 0x43, 0x01, 0x00, 0x38, 0x09, 0x00, 0x00, + 0x18, 0x67, 0x01, 0x00, 0x0e, 0x61, 0x01, 0x00, + 0x0a, 0x61, 0x01, 0x00, 0x01, 0x48, 0x00, 0x68, + 0x70, 0x47, 0x00, 0x00, 0xc4, 0x6a, 0x01, 0x00, + 0x02, 0x49, 0x09, 0x1d, 0x03, 0xc9, 0x40, 0x18, + 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, + 0x01, 0x48, 0x00, 0x69, 0x70, 0x47, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0x3c, 0x00, 0x78, 0xd2, + 0x00, 0x00, 0x01, 0x48, 0x40, 0x69, 0x70, 0x47, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0x01, 0x48, + 0x80, 0x69, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x4e, 0x00, 0x20, + 0x35, 0x1c, 0x40, 0x35, 0xf0, 0x63, 0x0d, 0xe0, + 0xa0, 0x68, 0xf4, 0xf7, 0x7a, 0xf9, 0xb3, 0x6d, + 0x00, 0x2b, 0x04, 0xd0, 0x00, 0x22, 0x01, 0x20, + 0x61, 0x6b, 0xf3, 0xf7, 0x95, 0xf8, 0x3c, 0x00, + 0xb4, 0xd2, 0x00, 0x00, 0x20, 0x1c, 0xf4, 0xf7, + 0x9d, 0xfa, 0x28, 0x1c, 0xfa, 0xf7, 0x42, 0xfd, + 0x04, 0x1c, 0xec, 0xd1, 0x70, 0xbd, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0xf8, 0xb5, 0x1a, 0x4f, + 0x00, 0x26, 0xf8, 0x6b, 0x00, 0x28, 0x2c, 0xd0, + 0x38, 0x1c, 0x40, 0x30, 0x00, 0x90, 0x1d, 0xe0, + 0x16, 0x48, 0xb9, 0x6b, 0x02, 0xf0, 0x5c, 0xf8, + 0x00, 0x22, 0x20, 0x1c, 0x14, 0x49, 0x03, 0xf0, + 0x3c, 0x00, 0xf0, 0xd2, 0x00, 0x00, 0x7b, 0xff, + 0x05, 0x1c, 0x04, 0xd1, 0x38, 0x6a, 0x01, 0x30, + 0x38, 0x62, 0x01, 0x36, 0x0d, 0xe0, 0xa0, 0x68, + 0xf4, 0xf7, 0x49, 0xf9, 0xbb, 0x6d, 0x00, 0x2b, + 0x04, 0xd0, 0x00, 0x22, 0x28, 0x1c, 0x61, 0x6b, + 0xf3, 0xf7, 0x64, 0xf8, 0x20, 0x1c, 0xf4, 0xf7, + 0x6c, 0xfa, 0x00, 0x98, 0xfa, 0xf7, 0x11, 0xfd, + 0x04, 0x1c, 0xdc, 0xd1, 0x07, 0x48, 0xb9, 0x6b, + 0x02, 0xf0, 0x3c, 0x00, 0x2c, 0xd3, 0x00, 0x00, + 0x25, 0xf8, 0x00, 0x20, 0xf8, 0x63, 0x30, 0x1c, + 0xf8, 0xbd, 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x11, 0x30, 0x00, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0xc8, 0x63, 0x70, 0x47, 0xc4, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0x05, 0x4a, 0x00, 0x21, + 0x1c, 0x23, 0x43, 0x43, 0x9b, 0x18, 0x01, 0x30, + 0x04, 0x28, 0xd9, 0x66, 0x3c, 0x00, 0x68, 0xd3, + 0x00, 0x00, 0xf8, 0xdb, 0xfc, 0xf7, 0xfd, 0xfc, + 0x80, 0xbd, 0xc4, 0x69, 0x01, 0x00, 0x01, 0x49, + 0xc8, 0x64, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x01, 0x49, 0x88, 0x64, 0x70, 0x47, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0d, 0x1c, 0x21, 0x1c, 0x02, 0x8e, + 0x80, 0x6a, 0x40, 0x31, 0xf3, 0xf7, 0x2f, 0xf8, + 0x00, 0x28, 0x16, 0xd1, 0x02, 0x21, 0x3c, 0x00, + 0xa4, 0xd3, 0x00, 0x00, 0x20, 0x1c, 0xf4, 0xf7, + 0x6f, 0xfa, 0xe2, 0x69, 0xc0, 0x00, 0x10, 0x18, + 0x82, 0x8b, 0xab, 0x88, 0x9a, 0x42, 0x04, 0xd1, + 0x82, 0x69, 0x2b, 0x68, 0x9a, 0x42, 0x08, 0xd2, + 0x01, 0xe0, 0x9a, 0x42, 0x05, 0xd2, 0x00, 0x21, + 0x18, 0x30, 0x0c, 0xcd, 0x0c, 0xc0, 0x00, 0xe0, + 0x01, 0x21, 0x08, 0x1c, 0xb0, 0xbd, 0x00, 0x00, + 0xf8, 0xb5, 0x06, 0x1c, 0x00, 0x27, 0x44, 0x68, + 0x3c, 0x00, 0xe0, 0xd3, 0x00, 0x00, 0x0f, 0xe0, + 0x09, 0x49, 0x48, 0x6a, 0x01, 0x30, 0x48, 0x62, + 0xa0, 0x69, 0x00, 0x28, 0x02, 0xd0, 0xf4, 0xf7, + 0x00, 0xfa, 0xa7, 0x61, 0x26, 0x62, 0x25, 0x68, + 0x20, 0x1c, 0xff, 0xf7, 0x52, 0xfb, 0x2c, 0x1c, + 0x00, 0x2c, 0xed, 0xd1, 0xf8, 0xbd, 0xc4, 0x69, + 0x01, 0x00, 0x03, 0x30, 0x07, 0x4a, 0x81, 0x08, + 0x13, 0x68, 0x50, 0x68, 0x1b, 0x68, 0x89, 0x00, + 0x09, 0x18, 0x3c, 0x00, 0x1c, 0xd4, 0x00, 0x00, + 0x8b, 0x42, 0x01, 0xd3, 0x51, 0x60, 0x00, 0xe0, + 0x00, 0x20, 0x90, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x8c, 0x6e, 0x01, 0x00, 0x70, 0xb5, 0x12, 0x4e, + 0x80, 0x38, 0xc5, 0x00, 0x70, 0x59, 0x0c, 0x1c, + 0x00, 0x28, 0x04, 0xd1, 0x01, 0x21, 0x0d, 0x20, + 0xf3, 0xf7, 0x2e, 0xff, 0x0d, 0xe0, 0x20, 0x69, + 0x00, 0x28, 0x05, 0xd1, 0xa8, 0x19, 0x81, 0x88, + 0xe0, 0x68, 0x01, 0xf0, 0x3c, 0x00, 0x58, 0xd4, + 0x00, 0x00, 0x47, 0xfa, 0x20, 0x61, 0x71, 0x59, + 0x20, 0x1c, 0xf2, 0xf7, 0xbb, 0xff, 0x04, 0x1c, + 0x00, 0x2c, 0x07, 0xd0, 0xe0, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0xf4, 0xf7, 0x92, 0xf8, 0x20, 0x1c, + 0xf4, 0xf7, 0xbd, 0xf9, 0x70, 0xbd, 0x54, 0x42, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, + 0x0e, 0x49, 0x06, 0x22, 0xf3, 0xf7, 0x35, 0xf8, + 0x00, 0x26, 0xe6, 0x61, 0x66, 0x62, 0x3c, 0x00, + 0x94, 0xd4, 0x00, 0x00, 0x07, 0x20, 0x30, 0x21, + 0x08, 0x55, 0xe6, 0x63, 0x28, 0x1c, 0xf8, 0xf7, + 0x6b, 0xf8, 0xa0, 0x76, 0x20, 0x1c, 0x14, 0x30, + 0x06, 0x22, 0x29, 0x1c, 0xf3, 0xf7, 0x24, 0xf8, + 0x06, 0x22, 0x29, 0x1c, 0xa0, 0x18, 0xf3, 0xf7, + 0x1f, 0xf8, 0x26, 0x61, 0x70, 0xbd, 0x00, 0x00, + 0x12, 0x61, 0x01, 0x00, 0x80, 0xb5, 0xfd, 0xf7, + 0x85, 0xfe, 0x80, 0xbd, 0x01, 0x49, 0x48, 0x60, + 0x3c, 0x00, 0xd0, 0xd4, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, 0x02, 0x49, + 0x80, 0xb5, 0x49, 0x68, 0xf2, 0xf7, 0x7c, 0xff, + 0x80, 0xbd, 0xe4, 0x65, 0x01, 0x00, 0x80, 0xb5, + 0xf4, 0xf7, 0xe5, 0xf9, 0x07, 0x49, 0x07, 0x48, + 0x0e, 0xc9, 0x0e, 0xc0, 0x18, 0x38, 0x00, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x02, 0xf0, 0xb7, 0xfa, + 0x80, 0xbd, 0x02, 0xf0, 0x9e, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xd5, 0x00, 0x00, + 0xb0, 0x58, 0x01, 0x00, 0x90, 0x73, 0x01, 0x00, + 0x05, 0x49, 0x80, 0xb5, 0x89, 0x68, 0x00, 0x20, + 0x00, 0x29, 0x00, 0xd1, 0x03, 0x20, 0x00, 0x06, + 0x00, 0x0e, 0xfa, 0xf7, 0xe3, 0xfb, 0x80, 0xbd, + 0x60, 0x6c, 0x01, 0x00, 0x80, 0xb5, 0x03, 0x48, + 0x06, 0x22, 0x03, 0x49, 0xf2, 0xf7, 0xde, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x40, 0x80, 0x07, 0x00, + 0x12, 0x61, 0x01, 0x00, 0x3c, 0x00, 0x48, 0xd5, + 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x0c, 0x4d, + 0x0b, 0x1c, 0x21, 0x1c, 0x00, 0x20, 0x0c, 0x3d, + 0x00, 0x29, 0x09, 0x4c, 0x05, 0xd0, 0x28, 0x78, + 0x21, 0x1c, 0x10, 0x80, 0x02, 0x1c, 0x18, 0x1c, + 0x07, 0xe0, 0x11, 0x88, 0x0e, 0x29, 0x07, 0xd8, + 0x0a, 0x06, 0x12, 0x0e, 0x19, 0x1c, 0x20, 0x1c, + 0x2a, 0x70, 0xf2, 0xf7, 0xbe, 0xff, 0x01, 0x20, + 0xb0, 0xbd, 0xb0, 0x69, 0x01, 0x00, 0x3c, 0x00, + 0x84, 0xd5, 0x00, 0x00, 0x10, 0xb5, 0x00, 0x20, + 0x0a, 0x4a, 0x01, 0x21, 0x11, 0x60, 0x0a, 0x4c, + 0x0a, 0xe0, 0x02, 0x1c, 0x01, 0x6a, 0x50, 0x32, + 0x91, 0x42, 0x05, 0xd0, 0x61, 0x78, 0x3c, 0x23, + 0x59, 0x43, 0x09, 0x19, 0x04, 0x31, 0x01, 0x62, + 0x04, 0xf0, 0xba, 0xfb, 0x00, 0x28, 0xf0, 0xd1, + 0x10, 0xbd, 0x00, 0x00, 0xdc, 0x62, 0x01, 0x00, + 0x68, 0x61, 0x01, 0x00, 0x04, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0xc0, 0xd5, 0x00, 0x00, 0x00, 0x68, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x1c, 0x10, 0x20, + 0x04, 0xf0, 0xc7, 0xfe, 0x80, 0xbd, 0x28, 0x61, + 0x01, 0x00, 0x03, 0x22, 0x11, 0x1f, 0x80, 0xb5, + 0x00, 0x20, 0xfb, 0xf7, 0x76, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x0b, 0xf0, 0xb9, 0xfa, + 0x80, 0xbd, 0xff, 0xb5, 0x83, 0xb0, 0x16, 0x1c, + 0x00, 0x21, 0x01, 0x91, 0x1f, 0x1c, 0x08, 0x21, + 0x02, 0xaa, 0x3c, 0x00, 0xfc, 0xd5, 0x00, 0x00, + 0xfa, 0xf7, 0x0e, 0xff, 0x04, 0x1c, 0x2a, 0xd1, + 0x02, 0x98, 0x41, 0x68, 0x49, 0x00, 0x01, 0xd4, + 0x09, 0x24, 0x24, 0xe0, 0xfa, 0xf7, 0x52, 0xff, + 0x38, 0x60, 0x02, 0x98, 0x41, 0x68, 0x49, 0x02, + 0xcd, 0x0f, 0x29, 0x1c, 0xfa, 0xf7, 0x44, 0xff, + 0x01, 0x1c, 0x30, 0x60, 0x38, 0x68, 0x00, 0x06, + 0x00, 0x0e, 0x00, 0xf0, 0x1b, 0xf8, 0x00, 0x28, + 0x01, 0xd1, 0x0a, 0x24, 0x3c, 0x00, 0x38, 0xd6, + 0x00, 0x00, 0x0f, 0xe0, 0x31, 0x68, 0x02, 0x98, + 0x2b, 0x1c, 0x01, 0xaa, 0xfa, 0xf7, 0xd7, 0xff, + 0x00, 0x28, 0x06, 0xd0, 0x01, 0x98, 0x00, 0x28, + 0x04, 0xd0, 0x04, 0x99, 0x09, 0x68, 0x81, 0x42, + 0x00, 0xd2, 0x03, 0x24, 0x01, 0x98, 0x04, 0x99, + 0x08, 0x60, 0x07, 0xb0, 0x20, 0x1c, 0xf0, 0xbd, + 0x00, 0x00, 0x70, 0xb5, 0x05, 0x1c, 0x0e, 0x1c, + 0x01, 0x24, 0x00, 0xf0, 0x84, 0xff, 0x3c, 0x00, + 0x74, 0xd6, 0x00, 0x00, 0x00, 0x28, 0x08, 0xd0, + 0x03, 0x2d, 0x01, 0xd0, 0x04, 0x2d, 0x04, 0xd1, + 0x03, 0x20, 0xc0, 0x03, 0x86, 0x42, 0x00, 0xd3, + 0x00, 0x24, 0x20, 0x1c, 0x70, 0xbd, 0x00, 0x00, + 0x7c, 0xb5, 0x15, 0x1c, 0x06, 0x1c, 0x0c, 0x1c, + 0x29, 0x1c, 0x6a, 0x46, 0x01, 0xab, 0xff, 0xf7, + 0xa5, 0xff, 0x00, 0x28, 0x02, 0xd1, 0x00, 0x2c, + 0x01, 0xd1, 0x03, 0x20, 0x7c, 0xbd, 0x17, 0x48, + 0x3c, 0x00, 0xb0, 0xd6, 0x00, 0x00, 0x00, 0xab, + 0x06, 0x60, 0x18, 0x79, 0x07, 0x28, 0x21, 0xd2, + 0x02, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, + 0x00, 0x00, 0x1d, 0x04, 0x04, 0x06, 0x10, 0x17, + 0x13, 0x00, 0x04, 0x20, 0xed, 0xe7, 0x2a, 0x1c, + 0x21, 0x1c, 0x01, 0x20, 0x00, 0x9b, 0xf2, 0xf7, + 0x81, 0xfe, 0x00, 0x28, 0x12, 0xd1, 0x06, 0x20, + 0xe3, 0xe7, 0x2a, 0x68, 0x00, 0x99, 0x05, 0xe0, + 0x00, 0x98, 0x3c, 0x00, 0xec, 0xd6, 0x00, 0x00, + 0x42, 0x78, 0x81, 0x1c, 0x01, 0xe0, 0x2a, 0x68, + 0x69, 0x46, 0x20, 0x1c, 0xf2, 0xf7, 0xfe, 0xfe, + 0x03, 0xe0, 0x04, 0x21, 0x87, 0x20, 0xf3, 0xf7, + 0xcf, 0xfd, 0x00, 0x20, 0xd0, 0xe7, 0x00, 0x00, + 0xf8, 0x6b, 0x01, 0x00, 0xf7, 0xb5, 0x86, 0xb0, + 0x0e, 0x1c, 0x08, 0x21, 0x05, 0xaa, 0x06, 0x98, + 0xfa, 0xf7, 0x7e, 0xfe, 0x04, 0x1c, 0x45, 0xd1, + 0x05, 0x98, 0x41, 0x68, 0x3c, 0x00, 0x28, 0xd7, + 0x00, 0x00, 0x02, 0x90, 0x49, 0x02, 0xc9, 0x0f, + 0x00, 0x25, 0x04, 0x95, 0x03, 0x91, 0x08, 0x9f, + 0xfa, 0xf7, 0xd5, 0xfe, 0x01, 0x90, 0x02, 0xa9, + 0x03, 0xc9, 0xfa, 0xf7, 0xc6, 0xfe, 0x01, 0x99, + 0x05, 0x29, 0x14, 0xd2, 0x02, 0xa3, 0x5b, 0x5c, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x0e, 0x03, + 0x06, 0x0c, 0x03, 0x00, 0x87, 0x42, 0x0e, 0xd8, + 0x07, 0xe0, 0x87, 0x42, 0x0b, 0xd8, 0x3c, 0x00, + 0x64, 0xd7, 0x00, 0x00, 0x01, 0x25, 0xc0, 0x1b, + 0x04, 0x90, 0x07, 0xe0, 0x87, 0x42, 0x05, 0xd1, + 0x01, 0x25, 0x03, 0xe0, 0x05, 0x21, 0x87, 0x20, + 0xf3, 0xf7, 0x94, 0xfd, 0x00, 0x2d, 0x01, 0xd1, + 0x03, 0x24, 0x15, 0xe0, 0x05, 0x98, 0x41, 0x68, + 0x00, 0x29, 0x69, 0xda, 0x3a, 0x4a, 0x06, 0x99, + 0x11, 0x60, 0xfa, 0xf7, 0x91, 0xfe, 0x07, 0x1c, + 0x05, 0x98, 0x03, 0x99, 0xfa, 0xf7, 0x86, 0xfe, + 0x3c, 0x00, 0xa0, 0xd7, 0x00, 0x00, 0x05, 0x1c, + 0x01, 0x1c, 0x38, 0x1c, 0xff, 0xf7, 0x5f, 0xff, + 0x00, 0x28, 0x01, 0xd1, 0x0a, 0x24, 0x5e, 0xe0, + 0x07, 0x2f, 0x57, 0xd2, 0x02, 0xa3, 0xdb, 0x5d, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x53, 0x04, + 0x04, 0x06, 0x2e, 0x50, 0x48, 0x00, 0x04, 0x24, + 0x51, 0xe0, 0x04, 0x98, 0x00, 0x28, 0x01, 0xd1, + 0x00, 0x27, 0x14, 0xe0, 0x08, 0x99, 0x08, 0x18, + 0x00, 0x04, 0x3c, 0x00, 0xdc, 0xd7, 0x00, 0x00, + 0x00, 0x0c, 0xf4, 0xf7, 0x2b, 0xf8, 0x07, 0x1c, + 0x31, 0x1c, 0x08, 0x9a, 0xf2, 0xf7, 0x86, 0xfe, + 0x08, 0x98, 0x04, 0x99, 0x38, 0x18, 0xf2, 0xf7, + 0x2f, 0xfe, 0x08, 0x98, 0x04, 0x99, 0x3e, 0x1c, + 0x40, 0x18, 0x08, 0x90, 0x31, 0x1c, 0x00, 0x20, + 0x08, 0xaa, 0xf2, 0xf7, 0xec, 0xfd, 0x00, 0x28, + 0x00, 0xd1, 0x05, 0x24, 0x00, 0x2f, 0x2d, 0xd0, + 0x38, 0x1c, 0xf3, 0xf7, 0x3c, 0x00, 0x18, 0xd8, + 0x00, 0x00, 0xed, 0xff, 0x29, 0xe0, 0x03, 0x99, + 0x00, 0x29, 0x04, 0xd0, 0x05, 0x98, 0x40, 0x68, + 0x87, 0x02, 0xbf, 0x0a, 0x00, 0xe0, 0x00, 0x27, + 0x31, 0x1c, 0x28, 0x1c, 0x08, 0x9a, 0xf2, 0xf7, + 0x60, 0xfe, 0x04, 0x99, 0x00, 0x29, 0x03, 0xd0, + 0x08, 0x98, 0x28, 0x18, 0xf2, 0xf7, 0x07, 0xfe, + 0x00, 0x2f, 0x12, 0xd0, 0xf2, 0xf7, 0xcc, 0xfd, + 0x0f, 0xe0, 0x31, 0x1c, 0xa8, 0x1c, 0x3c, 0x00, + 0x54, 0xd8, 0x00, 0x00, 0x08, 0x9a, 0xf2, 0xf7, + 0x4f, 0xfe, 0x08, 0x98, 0x68, 0x70, 0x07, 0xe0, + 0xff, 0xe7, 0x07, 0x24, 0x04, 0xe0, 0x08, 0x24, + 0x03, 0x21, 0x87, 0x20, 0xf3, 0xf7, 0x1a, 0xfd, + 0x20, 0x1c, 0x09, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xf8, 0x6b, 0x01, 0x00, 0x9e, 0xb5, 0x1c, 0x1c, + 0x00, 0xab, 0x19, 0x72, 0x00, 0x92, 0x00, 0x22, + 0x01, 0x94, 0x69, 0x46, 0xfb, 0xf7, 0x08, 0xfa, + 0x3c, 0x00, 0x90, 0xd8, 0x00, 0x00, 0x9e, 0xbd, + 0x00, 0x00, 0x8f, 0xb5, 0x02, 0x92, 0x00, 0x22, + 0x00, 0x90, 0x01, 0x90, 0x03, 0x91, 0x69, 0x46, + 0x04, 0x20, 0xfb, 0xf7, 0xfc, 0xf9, 0x8f, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x01, 0x28, + 0x0a, 0xd0, 0x03, 0x28, 0x19, 0xd0, 0x04, 0x28, + 0x2c, 0xd1, 0x60, 0x68, 0x01, 0xf0, 0x35, 0xfc, + 0x01, 0x1c, 0x83, 0x20, 0x0c, 0xcc, 0x22, 0xe0, + 0x1c, 0x20, 0x3c, 0x00, 0xcc, 0xd8, 0x00, 0x00, + 0x14, 0x49, 0x60, 0x43, 0x40, 0x18, 0x14, 0x49, + 0x45, 0x18, 0x28, 0x1c, 0xf8, 0xf7, 0x46, 0xfc, + 0xa9, 0x68, 0x00, 0x29, 0x03, 0xd0, 0x22, 0x1c, + 0x08, 0x20, 0x05, 0xf0, 0x71, 0xfe, 0xb0, 0xbd, + 0x20, 0x8c, 0xc8, 0x28, 0x01, 0xd3, 0x04, 0x20, + 0x04, 0xe0, 0x65, 0x28, 0x01, 0xd3, 0x02, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0x20, 0x84, 0x20, 0x1c, + 0x03, 0xf0, 0xdc, 0xfa, 0x3c, 0x00, 0x08, 0xd9, + 0x00, 0x00, 0x22, 0x68, 0xe3, 0x68, 0x01, 0x1c, + 0x82, 0x20, 0xff, 0xf7, 0xb4, 0xff, 0xb0, 0xbd, + 0xa0, 0x21, 0x08, 0x20, 0xf3, 0xf7, 0xc3, 0xfc, + 0xb0, 0xbd, 0xdc, 0x71, 0x01, 0x00, 0x64, 0xee, + 0xff, 0xff, 0x03, 0x48, 0x04, 0x4a, 0x81, 0x68, + 0x51, 0x61, 0xc0, 0x68, 0x90, 0x61, 0x70, 0x47, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0xc0, 0x71, + 0x01, 0x00, 0x03, 0x49, 0x04, 0x4a, 0x3c, 0x00, + 0x44, 0xd9, 0x00, 0x00, 0x08, 0x6b, 0x90, 0x60, + 0x88, 0x68, 0xd0, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x90, 0x5c, 0x01, 0x00, 0xc0, 0x71, 0x01, 0x00, + 0x00, 0xb5, 0xff, 0xf7, 0xf1, 0xff, 0xff, 0xf7, + 0xe3, 0xff, 0x00, 0xbd, 0xb0, 0xb5, 0x0d, 0x1c, + 0x00, 0x28, 0x14, 0xd0, 0x0b, 0x49, 0x0c, 0x4c, + 0x88, 0x68, 0x62, 0x69, 0xc9, 0x68, 0x80, 0x1a, + 0xa2, 0x69, 0x89, 0x1a, 0x40, 0x18, 0x04, 0xd0, + 0x3c, 0x00, 0x80, 0xd9, 0x00, 0x00, 0x64, 0x23, + 0x59, 0x43, 0xf2, 0xf7, 0xc4, 0xfe, 0x20, 0x61, + 0xff, 0xf7, 0xcd, 0xff, 0x20, 0x69, 0x28, 0x60, + 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0xc0, 0x71, + 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, 0x00, 0x28, + 0x17, 0xd0, 0x0c, 0x49, 0x0d, 0x4c, 0x08, 0x6b, + 0xa2, 0x68, 0x89, 0x68, 0x80, 0x1a, 0xe2, 0x68, + 0x89, 0x1a, 0x3c, 0x00, 0xbc, 0xd9, 0x00, 0x00, + 0x40, 0x18, 0x07, 0xd0, 0x22, 0x88, 0x90, 0x42, + 0x04, 0xd9, 0x64, 0x23, 0x59, 0x43, 0xf2, 0xf7, + 0xa1, 0xfe, 0x60, 0x60, 0xff, 0xf7, 0xb6, 0xff, + 0x60, 0x68, 0x28, 0x60, 0x01, 0x20, 0xb0, 0xbd, + 0x00, 0x20, 0xb0, 0xbd, 0x90, 0x5c, 0x01, 0x00, + 0xc0, 0x71, 0x01, 0x00, 0x7c, 0xb5, 0x10, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x00, 0xf0, 0x24, 0xf8, + 0x7c, 0xbd, 0x0f, 0x48, 0x3c, 0x00, 0xf8, 0xd9, + 0x00, 0x00, 0xc0, 0x69, 0x84, 0x68, 0xe0, 0x68, + 0x25, 0x6a, 0xa6, 0x69, 0xf3, 0xf7, 0xe3, 0xfd, + 0xe1, 0x69, 0xf3, 0xf7, 0x06, 0xfd, 0x20, 0x1c, + 0xe2, 0x69, 0x40, 0x30, 0xc1, 0x8b, 0x12, 0x89, + 0x89, 0x18, 0xc1, 0x83, 0x07, 0x49, 0x01, 0x94, + 0x00, 0x91, 0x28, 0x69, 0x33, 0x1c, 0x82, 0x88, + 0x01, 0x68, 0xe0, 0x68, 0xc0, 0x68, 0xf8, 0xf7, + 0x1e, 0xfc, 0xe0, 0xe7, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xda, 0x00, 0x00, 0x84, 0x6a, 0x01, 0x00, + 0x91, 0x5e, 0x00, 0x00, 0xf0, 0xb5, 0x85, 0x69, + 0x06, 0x6a, 0x04, 0x1c, 0xc0, 0x68, 0x85, 0xb0, + 0xc0, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xf3, 0xf7, + 0x57, 0xfc, 0x0a, 0x49, 0x02, 0x95, 0x04, 0x94, + 0x03, 0x91, 0x30, 0x69, 0x82, 0x88, 0x01, 0x68, + 0x26, 0x20, 0x01, 0x92, 0x00, 0x91, 0x43, 0x5d, + 0xe0, 0x68, 0xe1, 0x69, 0x2a, 0x1c, 0x0e, 0x32, + 0x3c, 0x00, 0x70, 0xda, 0x00, 0x00, 0xc0, 0x68, + 0xf8, 0xf7, 0x37, 0xfd, 0x05, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xe9, 0xd9, 0x00, 0x00, 0x10, 0xb5, + 0x14, 0x1c, 0x05, 0x48, 0xfc, 0xf7, 0x7b, 0xfb, + 0xa0, 0x68, 0xf3, 0xf7, 0x9e, 0xfd, 0xe1, 0x68, + 0xc1, 0x60, 0x20, 0x1c, 0xf5, 0xf7, 0xbb, 0xfa, + 0x10, 0xbd, 0xa0, 0x6a, 0x01, 0x00, 0x7c, 0xb5, + 0x04, 0x1c, 0x60, 0x30, 0x02, 0x7b, 0xa1, 0x69, + 0x00, 0x91, 0x3c, 0x00, 0xac, 0xda, 0x00, 0x00, + 0x01, 0x92, 0x22, 0x1c, 0x21, 0x1c, 0x38, 0x31, + 0xa0, 0x68, 0x48, 0x32, 0x0d, 0x1c, 0x63, 0x69, + 0x03, 0xf0, 0x7a, 0xfb, 0x08, 0x21, 0x00, 0x20, + 0xf3, 0xf7, 0x88, 0xfd, 0xe0, 0x60, 0x26, 0x69, + 0xb1, 0x6b, 0x00, 0x29, 0x01, 0xd0, 0x10, 0x23, + 0x00, 0xe0, 0x18, 0x23, 0x05, 0x49, 0x01, 0x94, + 0x00, 0x91, 0x31, 0x68, 0xca, 0x18, 0x08, 0x23, + 0x01, 0x1c, 0x28, 0x1c, 0x3c, 0x00, 0xe8, 0xda, + 0x00, 0x00, 0xf8, 0xf7, 0x20, 0xfd, 0x7c, 0xbd, + 0x00, 0x00, 0x81, 0xda, 0x00, 0x00, 0xf0, 0xb5, + 0x46, 0x68, 0x17, 0x1c, 0x04, 0x1c, 0x01, 0x21, + 0x30, 0x1c, 0x9b, 0xb0, 0xfa, 0xf7, 0x0d, 0xfc, + 0x00, 0x25, 0x00, 0x28, 0x03, 0xd0, 0x13, 0x49, + 0x0a, 0x7a, 0x01, 0x2a, 0x01, 0xd1, 0x01, 0x25, + 0x1c, 0xe0, 0x88, 0x62, 0x4e, 0x61, 0x20, 0x89, + 0xc8, 0x61, 0x60, 0x89, 0x00, 0x28, 0x3c, 0x00, + 0x24, 0xdb, 0x00, 0x00, 0x03, 0xd0, 0x00, 0x20, + 0x08, 0x84, 0x48, 0x84, 0x04, 0xe0, 0xe0, 0x68, + 0x08, 0x84, 0x20, 0x8a, 0x48, 0x84, 0x60, 0x8a, + 0x88, 0x84, 0x08, 0x6b, 0x00, 0x28, 0x03, 0xd1, + 0x01, 0xa8, 0x03, 0xf0, 0x77, 0xfc, 0x04, 0xe0, + 0x01, 0x20, 0x08, 0x61, 0x00, 0x20, 0x02, 0xf0, + 0x39, 0xfb, 0x3d, 0x71, 0x1b, 0xb0, 0x01, 0x20, + 0xf0, 0xbd, 0x00, 0x00, 0xf4, 0x6e, 0x01, 0x00, + 0x3c, 0x00, 0x60, 0xdb, 0x00, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0xf7, 0xf7, 0xe8, 0xfb, 0x00, 0x28, + 0x11, 0xd1, 0x4b, 0x20, 0x00, 0x5d, 0x01, 0x28, + 0x0d, 0xd1, 0x20, 0x1c, 0x04, 0xf0, 0x85, 0xfa, + 0x00, 0x21, 0x20, 0x1c, 0x04, 0xf0, 0xf3, 0xf8, + 0xa0, 0x69, 0x00, 0x21, 0xc2, 0x07, 0xd2, 0x0f, + 0x04, 0x20, 0xf4, 0xf7, 0xd8, 0xf9, 0x10, 0xbd, + 0x00, 0x00, 0x38, 0xb5, 0x04, 0x1c, 0x04, 0xf0, + 0x36, 0xf9, 0x3c, 0x00, 0x9c, 0xdb, 0x00, 0x00, + 0x00, 0x28, 0x03, 0xd0, 0x40, 0x30, 0x80, 0x7a, + 0x00, 0x28, 0x25, 0xd1, 0x0c, 0x20, 0x29, 0x21, + 0x08, 0x55, 0x21, 0x1c, 0x06, 0x22, 0xa0, 0x18, + 0xf2, 0xf7, 0xa0, 0xfc, 0x20, 0x1c, 0x06, 0x22, + 0x0e, 0x49, 0xf2, 0xf7, 0x9b, 0xfc, 0x01, 0x20, + 0xe0, 0x61, 0x60, 0x62, 0x07, 0x20, 0x30, 0x21, + 0x08, 0x55, 0x00, 0x25, 0xe5, 0x63, 0x06, 0x20, + 0x00, 0xab, 0x18, 0x80, 0x3c, 0x00, 0xd8, 0xdb, + 0x00, 0x00, 0xe0, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0xf3, 0xf7, 0xdb, 0xfc, 0x02, 0x21, 0x68, 0x46, + 0xfd, 0xf7, 0x73, 0xfb, 0xe0, 0x60, 0x20, 0x1c, + 0xff, 0xf7, 0x69, 0xfc, 0xe5, 0x60, 0x20, 0x1c, + 0x38, 0xbd, 0x12, 0x61, 0x01, 0x00, 0xfe, 0xb5, + 0x05, 0x1c, 0x0e, 0x1c, 0x15, 0x20, 0x00, 0xab, + 0x98, 0x80, 0x14, 0x21, 0x17, 0x1c, 0x00, 0x20, + 0xf3, 0xf7, 0xe3, 0xfc, 0x02, 0x90, 0x3c, 0x00, + 0x14, 0xdc, 0x00, 0x00, 0x04, 0x68, 0x06, 0x22, + 0x31, 0x1c, 0x60, 0x1d, 0x25, 0x71, 0xf2, 0xf7, + 0x6b, 0xfc, 0x06, 0x22, 0x39, 0x1c, 0x20, 0x1c, + 0x0b, 0x30, 0xf2, 0xf7, 0x65, 0xfc, 0x01, 0xa8, + 0xff, 0xf7, 0x52, 0xfc, 0xfe, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x23, 0xfb, 0xf7, 0x5c, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x05, 0x1c, + 0x08, 0x35, 0x0f, 0x4e, 0x29, 0x1c, 0x04, 0x1c, + 0x3c, 0x00, 0x50, 0xdc, 0x00, 0x00, 0x06, 0x22, + 0x30, 0x1c, 0xf2, 0xf7, 0x50, 0xfc, 0xa0, 0x88, + 0xb0, 0x82, 0x28, 0x1c, 0x05, 0xf0, 0xa1, 0xff, + 0x00, 0x28, 0x0b, 0xd0, 0xe0, 0x88, 0x30, 0x61, + 0x28, 0x1c, 0x04, 0xf0, 0xcc, 0xf8, 0xa1, 0x88, + 0x40, 0x30, 0x41, 0x80, 0x00, 0x20, 0xf4, 0xf7, + 0xb8, 0xf9, 0x02, 0xe0, 0x04, 0x20, 0xf4, 0xf7, + 0xa0, 0xf9, 0x00, 0x20, 0x70, 0xbd, 0x70, 0x7c, + 0x01, 0x00, 0x3c, 0x00, 0x8c, 0xdc, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0xfb, 0xf7, 0xf8, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x04, 0x1c, + 0x04, 0x30, 0x05, 0x1c, 0xfd, 0xf7, 0x32, 0xf8, + 0x00, 0x28, 0x09, 0xd0, 0x00, 0x20, 0xf7, 0xf7, + 0x37, 0xfc, 0x00, 0x28, 0x04, 0xd0, 0x06, 0x22, + 0x01, 0x1c, 0x28, 0x1c, 0xf2, 0xf7, 0x1e, 0xfc, + 0x0a, 0x4e, 0x06, 0x22, 0x29, 0x1c, 0x30, 0x1c, + 0xf2, 0xf7, 0x18, 0xfc, 0x3c, 0x00, 0xc8, 0xdc, + 0x00, 0x00, 0x60, 0x89, 0xf0, 0x82, 0x28, 0x1c, + 0x05, 0xf0, 0x69, 0xff, 0x00, 0x28, 0x03, 0xd0, + 0x02, 0x20, 0xf4, 0xf7, 0x88, 0xf9, 0x02, 0xe0, + 0x05, 0x20, 0xf9, 0xf7, 0xf4, 0xfa, 0x00, 0x20, + 0x70, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x00, 0x79, 0x04, 0x28, 0x1c, 0xd2, + 0x60, 0x79, 0x01, 0x28, 0x01, 0xd0, 0x03, 0x28, + 0x04, 0xd1, 0x00, 0x22, 0x01, 0x21, 0x3c, 0x00, + 0x04, 0xdd, 0x00, 0x00, 0xa0, 0x1d, 0xf9, 0xf7, + 0x69, 0xfc, 0x60, 0x79, 0x00, 0x28, 0x04, 0xd1, + 0x22, 0x79, 0x00, 0x21, 0xf9, 0xf7, 0x62, 0xfc, + 0x0a, 0xe0, 0x03, 0x28, 0x08, 0xd1, 0x00, 0x24, + 0x22, 0x1c, 0x00, 0x21, 0x00, 0x20, 0xf9, 0xf7, + 0x59, 0xfc, 0x01, 0x34, 0x04, 0x2c, 0xf7, 0xdb, + 0x01, 0x20, 0x10, 0xbd, 0xf0, 0xb5, 0x97, 0xb0, + 0x17, 0x1c, 0x05, 0x1c, 0x04, 0x30, 0x04, 0x1c, + 0x3c, 0x00, 0x40, 0xdd, 0x00, 0x00, 0x15, 0xaa, + 0x16, 0xa9, 0x05, 0xf0, 0xe2, 0xfe, 0x00, 0x28, + 0x2e, 0xd0, 0x15, 0x98, 0x4b, 0x21, 0x09, 0x5c, + 0x00, 0x29, 0x23, 0xd0, 0x01, 0x29, 0x02, 0xd0, + 0x02, 0x29, 0x1f, 0xd1, 0x01, 0xe0, 0x04, 0xf0, + 0x90, 0xf9, 0xad, 0x7a, 0x13, 0x48, 0x16, 0x9e, + 0x05, 0x80, 0x06, 0x22, 0x21, 0x1c, 0x08, 0x30, + 0xf2, 0xf7, 0xc1, 0xfb, 0x22, 0x1c, 0x31, 0x1c, + 0x02, 0xa8, 0x3c, 0x00, 0x7c, 0xdd, 0x00, 0x00, + 0x00, 0xf0, 0x74, 0xfb, 0x0a, 0x20, 0x0a, 0xa9, + 0x48, 0x72, 0x00, 0xab, 0x9d, 0x80, 0x02, 0x21, + 0x01, 0xa8, 0xfd, 0xf7, 0x9f, 0xfa, 0x05, 0x90, + 0x02, 0xa8, 0xff, 0xf7, 0x95, 0xfb, 0xf3, 0xf7, + 0xf7, 0xf9, 0x00, 0x21, 0x15, 0x98, 0x03, 0xf0, + 0xe1, 0xff, 0x00, 0x20, 0x00, 0xe0, 0x01, 0x20, + 0x38, 0x71, 0x17, 0xb0, 0x01, 0x20, 0xf0, 0xbd, + 0x98, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0xb8, 0xdd, + 0x00, 0x00, 0x80, 0xb5, 0x01, 0x20, 0xfb, 0xf7, + 0x62, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x80, 0x7d, 0x15, 0x1c, 0x0a, 0x1c, + 0xc0, 0x07, 0xc0, 0x17, 0x01, 0x30, 0x21, 0x1c, + 0xf9, 0xf7, 0xfb, 0xfc, 0x00, 0x28, 0x03, 0xd1, + 0x04, 0x20, 0x28, 0x71, 0x01, 0x20, 0xb0, 0xbd, + 0x20, 0x6a, 0xf7, 0xf7, 0x76, 0xfe, 0x60, 0x6a, + 0xf7, 0xf7, 0x7b, 0xfe, 0x20, 0x6a, 0x3c, 0x00, + 0xf4, 0xdd, 0x00, 0x00, 0xfe, 0xf7, 0x88, 0xfa, + 0x00, 0x20, 0xb0, 0xbd, 0x10, 0xb5, 0x14, 0x1c, + 0xc2, 0x79, 0x81, 0x79, 0x80, 0x88, 0xf7, 0xf7, + 0xa1, 0xfa, 0x20, 0x71, 0x01, 0x20, 0x10, 0xbd, + 0x80, 0xb5, 0x01, 0x23, 0xfa, 0xf7, 0x70, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0xf0, 0xb5, 0x04, 0x1c, + 0x08, 0x1c, 0x00, 0x21, 0x0f, 0x28, 0x91, 0xb0, + 0x00, 0xd3, 0x02, 0x21, 0x00, 0x29, 0x41, 0xd1, + 0x3c, 0x00, 0x30, 0xde, 0x00, 0x00, 0xc0, 0x00, + 0x24, 0x4f, 0x10, 0x90, 0xc6, 0x19, 0xb2, 0x88, + 0x21, 0x68, 0x02, 0xa8, 0xf2, 0xf7, 0x5b, 0xfb, + 0x21, 0x89, 0xb0, 0x88, 0x09, 0x1a, 0x00, 0x29, + 0x07, 0xdd, 0x09, 0x04, 0x22, 0x68, 0x09, 0x0c, + 0x10, 0x18, 0xf3, 0xf7, 0xc0, 0xfb, 0x05, 0x1c, + 0x00, 0xe0, 0x00, 0x25, 0xb0, 0x79, 0x80, 0x21, + 0x88, 0x43, 0x17, 0x49, 0x78, 0x31, 0x09, 0x5c, + 0x00, 0x20, 0x3c, 0x00, 0x6c, 0xde, 0x00, 0x00, + 0xf3, 0xf7, 0xb4, 0xfb, 0x07, 0x1c, 0x00, 0x68, + 0x13, 0x49, 0x01, 0x90, 0x10, 0x98, 0x0b, 0x58, + 0x01, 0x9a, 0x29, 0x1c, 0x02, 0xa8, 0xf2, 0xf7, + 0xac, 0xfa, 0x00, 0x90, 0x28, 0x1c, 0xf3, 0xf7, + 0x73, 0xfb, 0x20, 0x1c, 0xf3, 0xf7, 0x82, 0xfb, + 0x00, 0x98, 0x00, 0x28, 0x08, 0xd0, 0x02, 0x98, + 0x01, 0x99, 0x08, 0x60, 0xb0, 0x79, 0x39, 0x1c, + 0xfa, 0xf7, 0x20, 0xff, 0x3c, 0x00, 0xa8, 0xde, + 0x00, 0x00, 0x11, 0xb0, 0xf0, 0xbd, 0x38, 0x1c, + 0xf3, 0xf7, 0x61, 0xfb, 0xf9, 0xe7, 0x2d, 0x20, + 0xf3, 0xf7, 0xf5, 0xf9, 0x20, 0x1c, 0xf3, 0xf7, + 0x6c, 0xfb, 0xf2, 0xe7, 0x00, 0x00, 0x24, 0x44, + 0x01, 0x00, 0x70, 0xb5, 0x05, 0x1c, 0x20, 0x35, + 0x06, 0x1c, 0xa8, 0x79, 0x04, 0x28, 0x48, 0xd2, + 0xe9, 0x79, 0x01, 0x29, 0x13, 0xd1, 0x30, 0x1c, + 0x28, 0x30, 0x03, 0xf0, 0x92, 0xff, 0x3c, 0x00, + 0xe4, 0xde, 0x00, 0x00, 0x00, 0x28, 0x3f, 0xd0, + 0x01, 0x1c, 0x8c, 0x31, 0x01, 0x65, 0xa9, 0x79, + 0x4c, 0x22, 0x04, 0x1c, 0x11, 0x54, 0x81, 0x18, + 0x41, 0x62, 0x50, 0x34, 0x04, 0x62, 0xe1, 0x1e, + 0x81, 0x62, 0x0b, 0xe0, 0x00, 0x29, 0x2f, 0xd1, + 0x3c, 0x22, 0x18, 0x49, 0x42, 0x43, 0x54, 0x18, + 0x17, 0x4a, 0x04, 0x34, 0x12, 0x68, 0x00, 0x2a, + 0x00, 0xd1, 0x48, 0x70, 0x00, 0x2c, 0x23, 0xd0, + 0x3c, 0x00, 0x20, 0xdf, 0x00, 0x00, 0x35, 0x1c, + 0x30, 0x35, 0xe8, 0x79, 0x01, 0x28, 0x01, 0xd0, + 0x05, 0x28, 0x01, 0xd1, 0x06, 0x20, 0xe8, 0x71, + 0x20, 0x22, 0x31, 0x1d, 0x20, 0x68, 0xf2, 0xf7, + 0xde, 0xfa, 0xb0, 0x8c, 0xa0, 0x80, 0xe8, 0x79, + 0xa0, 0x71, 0xa8, 0x79, 0x00, 0x25, 0xa0, 0x63, + 0x01, 0x20, 0x60, 0x81, 0x00, 0x20, 0xe0, 0x60, + 0x2e, 0x36, 0xe8, 0x00, 0x00, 0x19, 0x18, 0x30, + 0x08, 0x22, 0x3c, 0x00, 0x5c, 0xdf, 0x00, 0x00, + 0x31, 0x1c, 0xf2, 0xf7, 0xcb, 0xfa, 0x01, 0x35, + 0x04, 0x2d, 0xf5, 0xd3, 0x01, 0x20, 0x70, 0xbd, + 0x68, 0x61, 0x01, 0x00, 0xdc, 0x62, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0xc0, 0x7a, 0x01, 0x28, + 0x01, 0xd0, 0x03, 0x28, 0x07, 0xd1, 0x20, 0x1d, + 0x03, 0xf0, 0x40, 0xff, 0x00, 0x28, 0x02, 0xd0, + 0xa1, 0x7a, 0x40, 0x30, 0x41, 0x73, 0xe0, 0x7a, + 0x00, 0x28, 0x01, 0xd0, 0x3c, 0x00, 0x98, 0xdf, + 0x00, 0x00, 0x03, 0x28, 0x02, 0xd1, 0xa0, 0x7a, + 0x02, 0x49, 0x08, 0x70, 0x01, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0x68, 0x61, 0x01, 0x00, 0x70, 0xb5, + 0x0e, 0x1c, 0x03, 0x21, 0x04, 0x1c, 0x30, 0x1c, + 0xfc, 0xf7, 0xe1, 0xfb, 0x00, 0x28, 0x01, 0xd0, + 0x85, 0x78, 0x00, 0xe0, 0x00, 0x25, 0x0b, 0x48, + 0x32, 0x1c, 0x00, 0x68, 0x03, 0x68, 0x20, 0x7c, + 0x80, 0x07, 0xc0, 0x0f, 0x21, 0x1c, 0x3c, 0x00, + 0xd4, 0xdf, 0x00, 0x00, 0xf7, 0xf7, 0x62, 0xfe, + 0x00, 0x28, 0x05, 0xd0, 0x01, 0x21, 0x28, 0x1c, + 0xfd, 0xf7, 0xfe, 0xfb, 0x00, 0x20, 0x00, 0xe0, + 0x08, 0x20, 0x03, 0xf0, 0xc5, 0xff, 0x00, 0x20, + 0x70, 0xbd, 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, + 0x80, 0xb5, 0x42, 0x68, 0x00, 0x88, 0x01, 0x21, + 0x49, 0x06, 0x08, 0x43, 0x2d, 0x21, 0x05, 0xf0, + 0xd3, 0xfb, 0x80, 0xbd, 0x03, 0x49, 0x01, 0x20, + 0x3c, 0x00, 0x10, 0xe0, 0x00, 0x00, 0x49, 0x78, + 0x02, 0x29, 0x00, 0xd0, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, 0x8c, 0xb5, + 0x01, 0x28, 0x1f, 0xd1, 0x00, 0x29, 0x0d, 0xd0, + 0x01, 0x29, 0x0b, 0xd0, 0x02, 0x29, 0x01, 0xd0, + 0x03, 0x29, 0x16, 0xd1, 0x00, 0x20, 0xf9, 0xf7, + 0x14, 0xfc, 0x93, 0x20, 0x00, 0xab, 0x18, 0x80, + 0x00, 0x20, 0x08, 0xe0, 0x01, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x3c, 0x00, 0x4c, 0xe0, 0x00, 0x00, + 0xf9, 0xf7, 0x0a, 0xfc, 0x83, 0x20, 0x00, 0xab, + 0x18, 0x80, 0x02, 0x20, 0x00, 0xf0, 0xcc, 0xf8, + 0x01, 0x90, 0x68, 0x46, 0xff, 0xf7, 0x3a, 0xfa, + 0x8c, 0xbd, 0x01, 0x21, 0x0e, 0x20, 0xf3, 0xf7, + 0x1b, 0xf9, 0xf9, 0xe7, 0xff, 0xb5, 0x17, 0x1c, + 0x1e, 0x1c, 0x14, 0x21, 0x00, 0x20, 0x83, 0xb0, + 0xf3, 0xf7, 0xac, 0xfa, 0x05, 0x1c, 0x04, 0x68, + 0x12, 0x20, 0x00, 0xab, 0x3c, 0x00, 0x88, 0xe0, + 0x00, 0x00, 0x98, 0x80, 0x06, 0x22, 0x60, 0x1d, + 0x03, 0x99, 0xf2, 0xf7, 0x32, 0xfa, 0x00, 0x20, + 0x20, 0x71, 0x27, 0x73, 0x04, 0x99, 0x20, 0x1c, + 0xe1, 0x72, 0x31, 0x1c, 0x06, 0x22, 0x0d, 0x30, + 0xf2, 0xf7, 0x27, 0xfa, 0x02, 0x95, 0x01, 0xa8, + 0xff, 0xf7, 0x13, 0xfa, 0x07, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0f, 0x1c, + 0x0c, 0x21, 0x00, 0x20, 0xf3, 0xf7, 0x3c, 0x00, + 0xc4, 0xe0, 0x00, 0x00, 0x89, 0xfa, 0x05, 0x68, + 0x04, 0x1c, 0x28, 0x1d, 0x06, 0x22, 0x31, 0x1c, + 0xf2, 0xf7, 0x12, 0xfa, 0x6f, 0x81, 0x20, 0x1c, + 0xf8, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0d, 0x1c, 0x08, 0x21, 0x00, 0x20, 0xf3, 0xf7, + 0x77, 0xfa, 0x01, 0x68, 0x8c, 0x71, 0x8d, 0x80, + 0xb0, 0xbd, 0x00, 0x00, 0xf7, 0xb5, 0x0e, 0x1c, + 0x10, 0x21, 0x17, 0x1c, 0x00, 0x20, 0xf3, 0xf7, + 0x3c, 0x00, 0x00, 0xe1, 0x00, 0x00, 0x6b, 0xfa, + 0x04, 0x68, 0x05, 0x1c, 0x20, 0x1d, 0x06, 0x22, + 0x00, 0x99, 0xf2, 0xf7, 0xf4, 0xf9, 0x66, 0x81, + 0xa7, 0x81, 0x28, 0x1c, 0xfe, 0xbd, 0xf3, 0xb5, + 0x0c, 0x1c, 0x08, 0x21, 0x00, 0x20, 0x85, 0xb0, + 0xf3, 0xf7, 0x59, 0xfa, 0x06, 0x1c, 0x07, 0x68, + 0xe0, 0x68, 0x00, 0x28, 0x02, 0xd0, 0x05, 0x99, + 0x01, 0x29, 0x04, 0xd1, 0x05, 0x98, 0x38, 0x71, + 0x00, 0x20, 0x3c, 0x00, 0x3c, 0xe1, 0x00, 0x00, + 0x78, 0x71, 0x56, 0xe0, 0x03, 0x68, 0x01, 0x21, + 0x03, 0x93, 0x20, 0x69, 0x02, 0x90, 0xfc, 0xf7, + 0x17, 0xfb, 0x05, 0x1c, 0x02, 0x98, 0x32, 0x21, + 0xfc, 0xf7, 0x12, 0xfb, 0x00, 0x22, 0xd2, 0x43, + 0x01, 0x1c, 0x28, 0x1c, 0x04, 0xab, 0xf7, 0xf7, + 0xb9, 0xf8, 0x00, 0x28, 0x04, 0xd1, 0x30, 0x1c, + 0xf3, 0xf7, 0x02, 0xfa, 0x00, 0x26, 0x3c, 0xe0, + 0x00, 0x2d, 0x05, 0xd0, 0x3c, 0x00, 0x78, 0xe1, + 0x00, 0x00, 0x68, 0x78, 0x09, 0x38, 0x07, 0x28, + 0x01, 0xd8, 0x32, 0x20, 0x28, 0x70, 0x1c, 0x21, + 0x00, 0x20, 0xf3, 0xf7, 0x26, 0xfa, 0x01, 0x90, + 0x05, 0x68, 0x01, 0x1c, 0x30, 0x1c, 0xf3, 0xf7, + 0x40, 0xf9, 0xe0, 0x68, 0xf3, 0xf7, 0x0b, 0xfa, + 0xa8, 0x61, 0xe1, 0x68, 0x01, 0x98, 0xf3, 0xf7, + 0x38, 0xf9, 0x00, 0x20, 0xe0, 0x60, 0x05, 0x98, + 0x80, 0x21, 0x08, 0x43, 0x38, 0x71, 0x3c, 0x00, + 0xb4, 0xe1, 0x00, 0x00, 0x01, 0x20, 0x21, 0x1c, + 0x14, 0x31, 0x78, 0x71, 0x28, 0x1c, 0x06, 0x22, + 0xf2, 0xf7, 0x9a, 0xf9, 0x02, 0x9a, 0x29, 0x20, + 0x00, 0x92, 0x00, 0x5d, 0x01, 0x21, 0xe2, 0x6a, + 0x08, 0x28, 0x00, 0xd0, 0x00, 0x21, 0x28, 0x1c, + 0x03, 0x9b, 0x02, 0xf0, 0x9d, 0xff, 0xa0, 0x6b, + 0x28, 0x61, 0x20, 0x6c, 0x68, 0x61, 0x7f, 0x30, + 0x01, 0xd1, 0x0f, 0x20, 0x68, 0x61, 0x30, 0x1c, + 0x3c, 0x00, 0xf0, 0xe1, 0x00, 0x00, 0x07, 0xb0, + 0xf0, 0xbd, 0x10, 0xb5, 0x04, 0x1c, 0x08, 0x21, + 0x00, 0x20, 0xf3, 0xf7, 0xec, 0xf9, 0x01, 0x68, + 0x0c, 0x71, 0x10, 0xbd, 0x00, 0x00, 0x01, 0x48, + 0x00, 0x68, 0x70, 0x47, 0x00, 0x00, 0x28, 0x61, + 0x01, 0x00, 0x01, 0x49, 0x08, 0x60, 0x70, 0x47, + 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, 0x02, 0x1c, + 0x01, 0x20, 0x00, 0x06, 0x08, 0x43, 0x80, 0xb5, + 0x2d, 0x21, 0x3c, 0x00, 0x2c, 0xe2, 0x00, 0x00, + 0x05, 0xf0, 0xc0, 0xfa, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x01, 0x28, 0x07, 0xd0, 0xf1, 0x28, + 0x25, 0xd0, 0xf3, 0x28, 0x27, 0xd1, 0x02, 0x20, + 0x02, 0xf0, 0xbc, 0xf9, 0x80, 0xbd, 0x00, 0x29, + 0x1a, 0xd0, 0x01, 0x29, 0x03, 0xd0, 0xf2, 0x29, + 0xf8, 0xd1, 0x88, 0x21, 0x1c, 0xe0, 0x10, 0x48, + 0x01, 0x78, 0x00, 0x29, 0x05, 0xd1, 0x40, 0x78, + 0x01, 0x28, 0xef, 0xd1, 0x3c, 0x00, 0x68, 0xe2, + 0x00, 0x00, 0x00, 0xf0, 0x16, 0xfa, 0x80, 0xbd, + 0x0b, 0x48, 0x14, 0x30, 0x00, 0x89, 0xfc, 0xf7, + 0x5a, 0xfc, 0x01, 0x1c, 0x01, 0x22, 0x0f, 0x20, + 0x05, 0xf0, 0x9f, 0xf9, 0x80, 0xbd, 0x04, 0xf0, + 0x52, 0xfa, 0x80, 0xbd, 0x00, 0x20, 0xfa, 0xf7, + 0x32, 0xfe, 0x80, 0xbd, 0x02, 0x21, 0x0f, 0x20, + 0xf3, 0xf7, 0x05, 0xf8, 0x80, 0xbd, 0x84, 0x66, + 0x01, 0x00, 0x01, 0x48, 0x00, 0x78, 0x3c, 0x00, + 0xa4, 0xe2, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x74, 0x66, 0x01, 0x00, 0x01, 0x49, 0x00, 0x20, + 0x48, 0x60, 0x70, 0x47, 0xec, 0x65, 0x01, 0x00, + 0xf8, 0xb5, 0x0e, 0x1c, 0x13, 0x4d, 0x01, 0x1c, + 0x14, 0x1c, 0x68, 0x22, 0x28, 0x1c, 0x1f, 0x1c, + 0x0c, 0x30, 0xf2, 0xf7, 0x71, 0xf9, 0x0f, 0x49, + 0x00, 0x20, 0xac, 0x39, 0x48, 0x60, 0x01, 0x21, + 0x29, 0x60, 0x19, 0x21, 0x19, 0x2c, 0x6e, 0x67, + 0x3c, 0x00, 0xe0, 0xe2, 0x00, 0x00, 0x00, 0xd3, + 0x21, 0x1c, 0x29, 0x81, 0x09, 0x49, 0x14, 0x39, + 0x88, 0x73, 0x8f, 0x74, 0xc8, 0x78, 0x01, 0x28, + 0x08, 0xd0, 0x01, 0x21, 0x0f, 0x20, 0x05, 0xf0, + 0x9c, 0xf9, 0x19, 0x20, 0xfc, 0xf7, 0x15, 0xfc, + 0xfb, 0xf7, 0x99, 0xf8, 0x01, 0x20, 0xf8, 0xbd, + 0x00, 0x00, 0x98, 0x66, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x28, 0x02, 0xd1, 0x00, 0xf0, 0x2f, 0xf8, + 0x80, 0xbd, 0x3c, 0x00, 0x1c, 0xe3, 0x00, 0x00, + 0x01, 0x21, 0x1d, 0x20, 0xf2, 0xf7, 0xc0, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x01, 0x20, 0x07, 0x49, 0x00, 0x05, 0x80, 0xb5, + 0x88, 0x60, 0x00, 0x22, 0x80, 0x21, 0x16, 0x20, + 0x05, 0xf0, 0x4c, 0xf9, 0x04, 0xf0, 0x34, 0xfd, + 0x02, 0x49, 0x08, 0x61, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x24, 0x6d, 0x01, 0x00, + 0x06, 0x4a, 0x80, 0xb5, 0x3c, 0x00, 0x58, 0xe3, + 0x00, 0x00, 0xd1, 0x6a, 0x81, 0x42, 0x07, 0xd1, + 0x10, 0x7f, 0x24, 0x23, 0x04, 0x49, 0x58, 0x43, + 0x40, 0x18, 0xc0, 0x68, 0xf2, 0xf7, 0x35, 0xf8, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x94, 0x46, + 0x01, 0x00, 0x1d, 0x48, 0x1c, 0xb5, 0x00, 0x78, + 0x00, 0x28, 0x2d, 0xd0, 0x1c, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x29, 0xd0, 0x1a, 0x4a, 0x1a, 0x4b, + 0x04, 0x32, 0x11, 0x68, 0x1c, 0x69, 0x3c, 0x00, + 0x94, 0xe3, 0x00, 0x00, 0xa1, 0x42, 0x22, 0xd1, + 0x51, 0x68, 0x5b, 0x69, 0x99, 0x42, 0x1f, 0xd1, + 0x16, 0x49, 0x49, 0x68, 0x93, 0x68, 0xc9, 0x1a, + 0x81, 0x42, 0x19, 0xd2, 0xd0, 0x68, 0x14, 0x49, + 0x01, 0x30, 0xd0, 0x60, 0x09, 0x68, 0x88, 0x42, + 0x0c, 0xd9, 0x06, 0x22, 0xff, 0x21, 0x68, 0x46, + 0xf2, 0xf7, 0x2e, 0xf9, 0xf3, 0xf7, 0xac, 0xfc, + 0x01, 0x1c, 0x00, 0x23, 0x00, 0x22, 0x68, 0x46, + 0x3c, 0x00, 0xd0, 0xe3, 0x00, 0x00, 0x02, 0xf0, + 0xce, 0xf9, 0x01, 0x22, 0x1d, 0x20, 0x0a, 0x49, + 0x05, 0xf0, 0xf7, 0xf8, 0x1c, 0xbd, 0xf7, 0xf7, + 0x88, 0xf9, 0x04, 0x22, 0x81, 0x18, 0x08, 0x1c, + 0xfc, 0xf7, 0x27, 0xfb, 0xf6, 0xe7, 0x1c, 0x75, + 0x01, 0x00, 0x44, 0x75, 0x01, 0x00, 0x28, 0x61, + 0x01, 0x00, 0x90, 0x5c, 0x01, 0x00, 0xf0, 0x59, + 0x01, 0x00, 0xa0, 0x86, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x68, 0x3c, 0x00, 0x0c, 0xe4, 0x00, 0x00, + 0x00, 0x29, 0x15, 0xd1, 0x00, 0x79, 0x02, 0x28, + 0x12, 0xd1, 0x08, 0x1c, 0xf7, 0xf7, 0x80, 0xf8, + 0x00, 0x28, 0x0d, 0xd0, 0x03, 0xf0, 0xf2, 0xfc, + 0x08, 0x30, 0x41, 0x8f, 0x00, 0x29, 0x07, 0xd1, + 0x80, 0x69, 0x00, 0x28, 0x04, 0xd0, 0x80, 0x79, + 0x06, 0x28, 0x01, 0xd1, 0xfc, 0xf7, 0x18, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x01, 0x49, 0x00, 0x20, + 0x88, 0x62, 0x70, 0x47, 0x3c, 0x00, 0x48, 0xe4, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x05, 0x4d, 0x04, 0x1c, 0xa9, 0x1d, 0xff, 0xf7, + 0x14, 0xf8, 0x06, 0x22, 0x29, 0x1c, 0xa0, 0x18, + 0xf2, 0xf7, 0x4b, 0xf8, 0xb0, 0xbd, 0x70, 0x7c, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x15, 0x1c, + 0xff, 0xf7, 0x07, 0xf8, 0x06, 0x22, 0x29, 0x1c, + 0xa0, 0x18, 0xf2, 0xf7, 0x3e, 0xf8, 0xb0, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x0a, 0x30, 0x3c, 0x00, + 0x84, 0xe4, 0x00, 0x00, 0xf7, 0xf7, 0xbc, 0xf9, + 0x01, 0x23, 0x00, 0x28, 0x03, 0xd0, 0x05, 0x48, + 0x00, 0x78, 0x01, 0x28, 0x04, 0xd1, 0x00, 0x22, + 0x00, 0x21, 0x00, 0x20, 0x03, 0xf0, 0xc6, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x23, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x03, 0xf0, 0xbb, 0xfd, 0x80, 0xbd, + 0xb0, 0xb5, 0x05, 0x4d, 0xac, 0x79, 0x0a, 0x1c, + 0x3c, 0x00, 0xc0, 0xe4, 0x00, 0x00, 0x01, 0x1c, + 0x01, 0x23, 0x01, 0x20, 0x03, 0xf0, 0xb1, 0xfd, + 0xac, 0x71, 0xb0, 0xbd, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0c, 0x1c, + 0x88, 0x07, 0x02, 0xd5, 0xf6, 0xf7, 0x47, 0xfa, + 0x10, 0xe0, 0x60, 0x07, 0x0e, 0xd5, 0x17, 0x4f, + 0xa3, 0x20, 0xc0, 0x5d, 0x15, 0x4d, 0x10, 0x28, + 0x00, 0xd3, 0x15, 0x4d, 0x04, 0xf0, 0x59, 0xfc, + 0xb9, 0x6f, 0x3c, 0x00, 0xfc, 0xe4, 0x00, 0x00, + 0x40, 0x1a, 0x29, 0x1a, 0x01, 0x20, 0xf6, 0xf7, + 0xc1, 0xfa, 0xe0, 0x07, 0x11, 0x49, 0xc0, 0x0f, + 0x48, 0x60, 0x0c, 0xd0, 0x0d, 0x4c, 0x44, 0x3c, + 0x20, 0x78, 0x03, 0x28, 0x0f, 0xd1, 0x00, 0x2e, + 0x06, 0xd0, 0xf6, 0xf7, 0xf9, 0xf9, 0x01, 0x1c, + 0x01, 0x20, 0xf6, 0xf7, 0xaf, 0xfa, 0xf8, 0xbd, + 0x09, 0x49, 0x01, 0x20, 0xf6, 0xf7, 0xaa, 0xfa, + 0x01, 0x20, 0x20, 0x70, 0x3c, 0x00, 0x38, 0xe5, + 0x00, 0x00, 0xf7, 0xe7, 0x01, 0x21, 0x30, 0x1c, + 0xf6, 0xf7, 0x89, 0xfa, 0xf2, 0xe7, 0xa6, 0x0e, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0xc4, 0x09, + 0x00, 0x00, 0xb0, 0x57, 0x01, 0x00, 0x40, 0x42, + 0x0f, 0x00, 0x80, 0xb5, 0x06, 0x28, 0x04, 0xdb, + 0x05, 0x21, 0xff, 0x20, 0xf2, 0xf7, 0x9f, 0xfe, + 0x80, 0xbd, 0x03, 0x4a, 0xc0, 0x00, 0x11, 0x50, + 0x01, 0x21, 0x80, 0x18, 0x01, 0x71, 0x3c, 0x00, + 0x74, 0xe5, 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0x9c, 0x5a, 0x01, 0x00, 0x01, 0x48, 0x80, 0x68, + 0x70, 0x47, 0x00, 0x00, 0xd0, 0x60, 0x01, 0x00, + 0xb0, 0xb5, 0x08, 0x4c, 0x25, 0x1d, 0x28, 0x1c, + 0x21, 0x68, 0x00, 0xf0, 0xf1, 0xfe, 0x00, 0x28, + 0x03, 0xd1, 0x01, 0x21, 0x04, 0x48, 0xf2, 0xf7, + 0xcf, 0xfa, 0x28, 0x1c, 0x21, 0x68, 0x00, 0xf0, + 0xfb, 0xfe, 0xb0, 0xbd, 0xc0, 0x60, 0x01, 0x00, + 0x3c, 0x00, 0xb0, 0xe5, 0x00, 0x00, 0x2c, 0x10, + 0x07, 0x00, 0xb0, 0xb5, 0x10, 0x4d, 0x0c, 0x1c, + 0xa8, 0x68, 0x00, 0x28, 0x02, 0xd1, 0x04, 0xf0, + 0xf4, 0xfb, 0x28, 0x60, 0x20, 0x1c, 0x04, 0xf0, + 0x38, 0xfb, 0x01, 0x21, 0x03, 0x20, 0x03, 0xf0, + 0xc4, 0xfe, 0x04, 0xf0, 0xf0, 0xfb, 0xa8, 0x68, + 0x00, 0x28, 0x0b, 0xd1, 0x04, 0xf0, 0xe5, 0xfb, + 0x29, 0x68, 0x00, 0x1b, 0x40, 0x1a, 0x69, 0x68, + 0x40, 0x18, 0x3c, 0x00, 0xec, 0xe5, 0x00, 0x00, + 0x41, 0x08, 0x40, 0x18, 0x28, 0x60, 0x01, 0x20, + 0xa8, 0x60, 0xb0, 0xbd, 0xd0, 0x60, 0x01, 0x00, + 0xf8, 0xb5, 0x1f, 0x4e, 0x00, 0x24, 0xb0, 0x68, + 0x00, 0x28, 0x02, 0xd1, 0x04, 0xf0, 0xd0, 0xfb, + 0x70, 0x60, 0x05, 0xf0, 0x61, 0xf8, 0x04, 0xf0, + 0x8f, 0xfb, 0x05, 0x1c, 0xf9, 0xf7, 0x66, 0xfe, + 0x31, 0x68, 0x18, 0x4a, 0x41, 0x18, 0x12, 0x68, + 0xe8, 0x0b, 0x00, 0x2a, 0x3c, 0x00, 0x28, 0xe6, + 0x00, 0x00, 0x00, 0xd1, 0xa8, 0x0a, 0x40, 0x18, + 0x85, 0x42, 0x1f, 0xd9, 0x14, 0x4f, 0x2d, 0x1a, + 0x38, 0x1c, 0x20, 0x30, 0x81, 0x79, 0x00, 0xab, + 0x19, 0x70, 0xc0, 0x79, 0x58, 0x70, 0x05, 0xf0, + 0x6e, 0xf8, 0x00, 0x28, 0x03, 0xd1, 0x02, 0x21, + 0x8f, 0x20, 0xf2, 0xf7, 0x28, 0xfe, 0x29, 0x1c, + 0x0c, 0x48, 0xf2, 0x68, 0xf8, 0xf7, 0x09, 0xfc, + 0x00, 0x28, 0x04, 0xd0, 0x01, 0x1c, 0x3c, 0x00, + 0x64, 0xe6, 0x00, 0x00, 0x28, 0x1c, 0xff, 0xf7, + 0xa5, 0xff, 0x01, 0x24, 0x00, 0xab, 0x18, 0x88, + 0xf8, 0x84, 0x05, 0xf0, 0x47, 0xf8, 0x20, 0x1c, + 0xf8, 0xbd, 0x00, 0x00, 0xd0, 0x60, 0x01, 0x00, + 0xf4, 0x74, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x89, 0x13, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0xc8, 0x60, 0x70, 0x47, 0xd0, 0x60, 0x01, 0x00, + 0x06, 0x48, 0x80, 0xb5, 0x00, 0x68, 0x01, 0x28, + 0x3c, 0x00, 0xa0, 0xe6, 0x00, 0x00, 0x07, 0xd1, + 0x04, 0x48, 0xac, 0x38, 0x01, 0x69, 0x03, 0x48, + 0x00, 0xf0, 0x79, 0xfe, 0xf3, 0xf7, 0x2b, 0xfa, + 0x80, 0xbd, 0x98, 0x66, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0x80, 0xb5, 0x42, 0x78, 0x81, 0x68, + 0x00, 0x79, 0x03, 0xf0, 0xde, 0xff, 0x00, 0x28, + 0x01, 0xd1, 0xf5, 0xf7, 0xb6, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x1f, 0xb5, 0x04, 0xf0, 0x69, 0xfb, + 0xf6, 0xf7, 0x3c, 0x00, 0xdc, 0xe6, 0x00, 0x00, + 0x91, 0xff, 0x16, 0x4c, 0x02, 0x28, 0x03, 0xd1, + 0xff, 0xf7, 0xdc, 0xfd, 0x04, 0x28, 0x02, 0xd3, + 0x00, 0x20, 0x20, 0x70, 0x1f, 0xbd, 0xfb, 0xf7, + 0xf7, 0xfc, 0x00, 0x28, 0xfa, 0xd1, 0x60, 0x6a, + 0x00, 0x28, 0xf7, 0xd0, 0x20, 0x78, 0x80, 0x07, + 0xf4, 0xd4, 0x09, 0x21, 0x16, 0x20, 0x04, 0xf0, + 0x93, 0xff, 0x01, 0x20, 0x20, 0x70, 0x0b, 0x4c, + 0x09, 0x49, 0x02, 0x90, 0x3c, 0x00, 0x18, 0xe7, + 0x00, 0x00, 0x01, 0x94, 0x00, 0x91, 0x04, 0xf0, + 0x46, 0xfb, 0x00, 0x19, 0x03, 0x90, 0x68, 0x46, + 0xfd, 0xf7, 0xb5, 0xfb, 0x00, 0x22, 0x16, 0x21, + 0x84, 0x20, 0x05, 0xf0, 0x3e, 0xf8, 0xdc, 0xe7, + 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, 0x61, 0xed, + 0x00, 0x00, 0x40, 0x42, 0x0f, 0x00, 0x23, 0x48, + 0x70, 0xb5, 0x80, 0x78, 0x9c, 0xb0, 0x01, 0x28, + 0x3e, 0xd1, 0x20, 0x4c, 0x09, 0xa8, 0x3c, 0x00, + 0x54, 0xe7, 0x00, 0x00, 0x80, 0x3c, 0x61, 0x1c, + 0xfe, 0xf7, 0x92, 0xfe, 0x04, 0x20, 0x11, 0xad, + 0x68, 0x72, 0xa0, 0x6f, 0x19, 0xa9, 0x18, 0x90, + 0x7c, 0x20, 0x00, 0x5d, 0x01, 0x26, 0x08, 0x71, + 0x1d, 0x20, 0x00, 0x5d, 0x00, 0x28, 0x06, 0xd0, + 0x10, 0x96, 0x12, 0x96, 0xfc, 0xf7, 0xf6, 0xfa, + 0x28, 0x72, 0x20, 0x7a, 0x11, 0x90, 0xf3, 0xf7, + 0xcd, 0xff, 0x6a, 0x21, 0x08, 0x53, 0x40, 0x34, + 0x3c, 0x00, 0x90, 0xe7, 0x00, 0x00, 0x00, 0x22, + 0x01, 0xa9, 0x06, 0xa8, 0xf6, 0xf7, 0xcd, 0xff, + 0x21, 0x1c, 0x00, 0x20, 0xfb, 0xf7, 0xcb, 0xfb, + 0x06, 0xa9, 0xfb, 0xf7, 0xc8, 0xfb, 0x01, 0xa9, + 0xfb, 0xf7, 0xc5, 0xfb, 0x0a, 0x49, 0x09, 0x68, + 0x00, 0x29, 0x07, 0xd0, 0x33, 0x1c, 0x0a, 0x22, + 0x69, 0x46, 0xfb, 0xf7, 0xda, 0xfb, 0x00, 0x9a, + 0x07, 0x21, 0x91, 0x70, 0x0c, 0x90, 0x09, 0xa8, + 0xfe, 0xf7, 0x3c, 0x00, 0xcc, 0xe7, 0x00, 0x00, + 0x7b, 0xfe, 0x1c, 0xb0, 0x70, 0xbd, 0x00, 0x00, + 0x84, 0x66, 0x01, 0x00, 0xe4, 0x62, 0x01, 0x00, + 0xf8, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0xff, 0x22, + 0x01, 0x68, 0x12, 0x02, 0x0e, 0x1c, 0x08, 0x7b, + 0x49, 0x7b, 0x09, 0x02, 0x11, 0x40, 0x08, 0x43, + 0x05, 0x1c, 0x31, 0x1c, 0x06, 0x22, 0xa0, 0x18, + 0xf1, 0xf7, 0x7c, 0xfe, 0x06, 0x22, 0xb1, 0x18, + 0x20, 0x1c, 0xf1, 0xf7, 0x3c, 0x00, 0x08, 0xe8, + 0x00, 0x00, 0x77, 0xfe, 0x28, 0x0a, 0x29, 0x02, + 0x08, 0x43, 0x00, 0x04, 0x03, 0x21, 0x49, 0x02, + 0x00, 0x0c, 0x88, 0x42, 0x08, 0xd2, 0xe0, 0x68, + 0x01, 0x89, 0x0e, 0x39, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x0e, 0x31, 0x01, 0x60, 0xf8, 0xbd, + 0x00, 0x26, 0x20, 0x1c, 0x10, 0x30, 0x03, 0xf0, + 0xe8, 0xfa, 0x21, 0x8b, 0x00, 0x29, 0x05, 0xd1, + 0xe1, 0x7d, 0x00, 0x29, 0x0b, 0xd0, 0x3c, 0x00, + 0x44, 0xe8, 0x00, 0x00, 0x80, 0x69, 0x80, 0x07, + 0x08, 0xd4, 0xe0, 0x68, 0x01, 0x26, 0x01, 0x89, + 0x02, 0x39, 0x01, 0x81, 0xe0, 0x68, 0x01, 0x68, + 0x02, 0x31, 0x06, 0xe0, 0xe0, 0x68, 0x01, 0x89, + 0x06, 0x39, 0x01, 0x81, 0xe0, 0x68, 0x01, 0x68, + 0x06, 0x31, 0x01, 0x60, 0x14, 0x49, 0x00, 0x20, + 0x0b, 0x1f, 0x42, 0x00, 0x9a, 0x5a, 0xaa, 0x42, + 0x02, 0xd1, 0x11, 0x49, 0x06, 0x31, 0x02, 0xe0, + 0x3c, 0x00, 0x80, 0xe8, 0x00, 0x00, 0x01, 0x30, + 0x02, 0x28, 0xf5, 0xd3, 0xe0, 0x68, 0x06, 0x22, + 0x00, 0x68, 0xf1, 0xf7, 0x34, 0xfe, 0x01, 0x2e, + 0xcb, 0xd1, 0x81, 0x20, 0x00, 0xab, 0x18, 0x80, + 0xe1, 0x7d, 0x20, 0x8b, 0x49, 0x03, 0x08, 0x43, + 0x31, 0x03, 0x08, 0x43, 0x00, 0x04, 0x00, 0x0c, + 0x01, 0x0a, 0x00, 0x02, 0x08, 0x43, 0x58, 0x80, + 0xe0, 0x68, 0x19, 0x88, 0x00, 0x68, 0xc1, 0x80, + 0x59, 0x88, 0x3c, 0x00, 0xbc, 0xe8, 0x00, 0x00, + 0x01, 0x81, 0xb5, 0xe7, 0x6a, 0x46, 0x01, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x01, 0x89, 0x06, 0x22, + 0x08, 0x31, 0x01, 0x81, 0x04, 0x68, 0x04, 0x49, + 0x08, 0x3c, 0x04, 0x60, 0x20, 0x1c, 0xf1, 0xf7, + 0x0d, 0xfe, 0xe5, 0x80, 0xb0, 0xbd, 0x00, 0x00, + 0x6a, 0x46, 0x01, 0x00, 0xf8, 0xb5, 0x00, 0x29, + 0x01, 0xd0, 0x00, 0x28, 0x01, 0xd1, 0x00, 0x20, + 0xf8, 0xbd, 0x09, 0x04, 0x3c, 0x00, 0xf8, 0xe8, + 0x00, 0x00, 0x09, 0x0c, 0xf2, 0xf7, 0x43, 0xff, + 0x06, 0x1c, 0x05, 0x1c, 0x00, 0x27, 0x20, 0xe0, + 0x2c, 0x89, 0x29, 0x68, 0x02, 0x2c, 0x01, 0xd2, + 0x02, 0x20, 0x01, 0xe0, 0x48, 0x78, 0x02, 0x30, + 0x84, 0x42, 0x02, 0xdd, 0x24, 0x1a, 0x09, 0x18, + 0xf4, 0xe7, 0x84, 0x42, 0x10, 0xd0, 0x01, 0x1b, + 0x0a, 0x04, 0x01, 0x04, 0x09, 0x0c, 0x12, 0x0c, + 0x28, 0x1c, 0xf2, 0xf7, 0x9e, 0xfe, 0x3c, 0x00, + 0x34, 0xe9, 0x00, 0x00, 0x00, 0x28, 0x06, 0xd1, + 0xe8, 0x68, 0xf2, 0xf7, 0x2d, 0xfe, 0xef, 0x60, + 0x28, 0x89, 0x00, 0x1b, 0x28, 0x81, 0xed, 0x68, + 0x00, 0x2d, 0xdc, 0xd1, 0x30, 0x1c, 0xd1, 0xe7, + 0xf8, 0xb5, 0x85, 0x68, 0x04, 0x1c, 0x80, 0x69, + 0x2e, 0x1c, 0x00, 0x28, 0x0d, 0xd0, 0x71, 0x68, + 0xf2, 0xf7, 0xf6, 0xfd, 0xa0, 0x69, 0xf2, 0xf7, + 0x17, 0xfe, 0x06, 0xe0, 0x00, 0x21, 0xc1, 0x60, + 0x3c, 0x00, 0x70, 0xe9, 0x00, 0x00, 0xf1, 0x60, + 0xa0, 0x8d, 0x36, 0x68, 0x01, 0x38, 0xa0, 0x85, + 0xf0, 0x68, 0x00, 0x28, 0xf5, 0xd1, 0x30, 0x68, + 0xa0, 0x60, 0xa0, 0x8d, 0x01, 0x38, 0x00, 0x04, + 0x00, 0x0c, 0xa0, 0x85, 0x02, 0xd0, 0x20, 0x1c, + 0xf9, 0xf7, 0x39, 0xf8, 0x2a, 0x4f, 0x2a, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x03, 0xd0, 0x06, 0x21, + 0x68, 0x68, 0xfa, 0xf7, 0x7c, 0xfd, 0x68, 0x68, + 0x00, 0x68, 0x3c, 0x00, 0xac, 0xe9, 0x00, 0x00, + 0x81, 0x78, 0x00, 0x29, 0x2b, 0xd1, 0xc1, 0x78, + 0x00, 0x29, 0x30, 0xd1, 0x21, 0x8e, 0x01, 0x39, + 0x21, 0x86, 0xfb, 0xf7, 0x15, 0xf8, 0xa1, 0x6a, + 0x08, 0x1a, 0xa0, 0x62, 0xe1, 0x69, 0x88, 0x42, + 0x03, 0xd9, 0x04, 0x21, 0x02, 0x20, 0xf2, 0xf7, + 0x67, 0xfc, 0xb8, 0x68, 0x00, 0x28, 0x1e, 0xd0, + 0x1a, 0x49, 0x20, 0x8e, 0x49, 0x68, 0x0c, 0x22, + 0x52, 0x1a, 0x90, 0x42, 0x3c, 0x00, 0xe8, 0xe9, + 0x00, 0x00, 0x08, 0xd3, 0x19, 0x23, 0x9b, 0x01, + 0xaf, 0x22, 0x92, 0x01, 0x59, 0x43, 0xa0, 0x6a, + 0x51, 0x1a, 0x88, 0x42, 0x0e, 0xd2, 0x00, 0x21, + 0x0c, 0x20, 0x03, 0xf0, 0xac, 0xfc, 0x00, 0x20, + 0xb8, 0x60, 0x07, 0xe0, 0x01, 0x29, 0x05, 0xd1, + 0xc0, 0x78, 0x17, 0x28, 0x02, 0xd1, 0xa0, 0x8e, + 0x01, 0x38, 0xa0, 0x86, 0x2a, 0x1d, 0x06, 0xca, + 0xe0, 0x68, 0x63, 0x69, 0xf1, 0xf7, 0x3c, 0x00, + 0x24, 0xea, 0x00, 0x00, 0xdc, 0xfc, 0xb5, 0x42, + 0x01, 0xd0, 0x2d, 0x68, 0xb4, 0xe7, 0xa0, 0x8d, + 0x00, 0x28, 0x03, 0xd1, 0x05, 0x48, 0xb9, 0x69, + 0x00, 0xf0, 0x9e, 0xfc, 0xf8, 0xbd, 0x00, 0x00, + 0xfc, 0x5a, 0x01, 0x00, 0xcc, 0x5c, 0x01, 0x00, + 0x18, 0x57, 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, + 0x89, 0x07, 0x07, 0x4b, 0xca, 0x0f, 0x80, 0xb5, + 0x19, 0x7c, 0x00, 0x29, 0x06, 0xd0, 0x81, 0x43, + 0x3c, 0x00, 0x60, 0xea, 0x00, 0x00, 0x19, 0x74, + 0x03, 0xd1, 0x07, 0x21, 0x15, 0x20, 0x04, 0xf0, + 0xa2, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x1c, 0x01, 0x20, + 0xff, 0xf7, 0xe9, 0xff, 0x80, 0xbd, 0x80, 0xb5, + 0x01, 0x1c, 0x02, 0x20, 0xff, 0xf7, 0xe3, 0xff, + 0x80, 0xbd, 0xb0, 0xb5, 0x1b, 0x4c, 0x60, 0x68, + 0xfc, 0xf7, 0x2f, 0xff, 0x20, 0x68, 0x00, 0x25, + 0x40, 0x68, 0x3c, 0x00, 0x9c, 0xea, 0x00, 0x00, + 0x00, 0x28, 0x03, 0xd0, 0xfd, 0xf7, 0x18, 0xfc, + 0x20, 0x68, 0x45, 0x60, 0x60, 0x68, 0xfc, 0xf7, + 0xc5, 0xfe, 0x14, 0x48, 0x61, 0x68, 0x00, 0xf0, + 0x61, 0xfc, 0xa0, 0x7a, 0x01, 0x28, 0x05, 0xd0, + 0x02, 0x28, 0x03, 0xd0, 0x20, 0x68, 0x00, 0x68, + 0x00, 0xf0, 0xde, 0xf8, 0x01, 0x21, 0x1f, 0x20, + 0x04, 0xf0, 0xb2, 0xfd, 0x00, 0x21, 0x1f, 0x20, + 0x04, 0xf0, 0xae, 0xfd, 0x3c, 0x00, 0xd8, 0xea, + 0x00, 0x00, 0x02, 0x21, 0x1f, 0x20, 0x04, 0xf0, + 0xaa, 0xfd, 0xa5, 0x72, 0x21, 0x68, 0x2c, 0x20, + 0x40, 0x5c, 0x89, 0x68, 0xf1, 0xf7, 0x76, 0xfc, + 0x60, 0x68, 0xfc, 0xf7, 0xe4, 0xfe, 0x20, 0x68, + 0x05, 0x62, 0xb0, 0xbd, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0x04, 0x49, + 0x0a, 0x68, 0xc8, 0x68, 0x92, 0x6a, 0x00, 0x2a, + 0x01, 0xd0, 0x09, 0x69, 0x08, 0x18, 0x3c, 0x00, + 0x14, 0xeb, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0xb0, 0xb5, 0x13, 0x4c, + 0x05, 0x1c, 0xa0, 0x7a, 0x01, 0x38, 0x02, 0x28, + 0x19, 0xd8, 0x01, 0x21, 0x1f, 0x20, 0x04, 0xf0, + 0x81, 0xfd, 0x20, 0x68, 0xfc, 0x23, 0x01, 0x1c, + 0x20, 0x30, 0x02, 0x7b, 0x1a, 0x40, 0x02, 0x73, + 0x00, 0x2d, 0x0f, 0xd0, 0x01, 0x23, 0x1a, 0x43, + 0x02, 0x73, 0xa0, 0x7a, 0x03, 0x28, 0x07, 0xd1, + 0x3c, 0x00, 0x50, 0xeb, 0x00, 0x00, 0x01, 0x20, + 0x01, 0xf0, 0xe7, 0xfd, 0x00, 0x28, 0x01, 0xd1, + 0xff, 0xf7, 0x97, 0xff, 0xb0, 0xbd, 0x4b, 0x62, + 0xb0, 0xbd, 0x02, 0x21, 0x11, 0x43, 0x01, 0x73, + 0xf6, 0xe7, 0x14, 0x7a, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x0a, 0x30, 0xf6, 0xf7, 0x43, 0xfe, + 0x00, 0x28, 0x0c, 0xd0, 0x22, 0x88, 0x0a, 0x49, + 0x0b, 0x7a, 0x90, 0x04, 0xc0, 0x0f, 0x00, 0x2b, + 0x06, 0xd1, 0x3c, 0x00, 0x8c, 0xeb, 0x00, 0x00, + 0x12, 0x06, 0x92, 0x0e, 0x20, 0x2a, 0x00, 0xd1, + 0x01, 0x20, 0xc8, 0x60, 0x10, 0xbd, 0x00, 0x28, + 0xfc, 0xd1, 0x00, 0x22, 0x24, 0x21, 0x80, 0x20, + 0x04, 0xf0, 0x04, 0xfe, 0x10, 0xbd, 0x00, 0x00, + 0x04, 0x7a, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x1c, + 0x1f, 0x21, 0x80, 0x20, 0x04, 0xf0, 0xfa, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xf8, 0xb5, 0x1d, 0x4e, + 0x04, 0x1c, 0x30, 0x68, 0x3c, 0x00, 0xc8, 0xeb, + 0x00, 0x00, 0x1d, 0x1c, 0x47, 0x68, 0x20, 0x1c, + 0xf1, 0xf7, 0x0a, 0xfc, 0xfb, 0xf7, 0x87, 0xfa, + 0x00, 0x28, 0x04, 0xd0, 0x28, 0x1c, 0xf2, 0xf7, + 0x2a, 0xfb, 0x00, 0x28, 0x28, 0xd1, 0x20, 0x88, + 0x40, 0x05, 0x25, 0xd4, 0x30, 0x68, 0x00, 0x68, + 0xfe, 0xf7, 0x59, 0xf9, 0x00, 0x28, 0x03, 0xd1, + 0xfd, 0xf7, 0x89, 0xfa, 0xf1, 0xf7, 0xed, 0xfb, + 0x30, 0x68, 0x00, 0x25, 0x40, 0x68, 0x3c, 0x00, + 0x04, 0xec, 0x00, 0x00, 0x00, 0x28, 0x03, 0xd0, + 0xfd, 0xf7, 0x64, 0xfb, 0x30, 0x68, 0x45, 0x60, + 0x20, 0x88, 0x00, 0x09, 0x00, 0x07, 0x03, 0xd1, + 0x04, 0xf0, 0xc8, 0xf8, 0x61, 0x88, 0x45, 0x18, + 0x30, 0x68, 0x45, 0x61, 0x81, 0x6a, 0x01, 0x31, + 0x81, 0x62, 0x20, 0x88, 0x80, 0x04, 0xc1, 0x0f, + 0x02, 0x48, 0xf8, 0xf7, 0xcd, 0xff, 0xf8, 0xbd, + 0x14, 0x7a, 0x01, 0x00, 0xb1, 0xeb, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xec, 0x00, 0x00, 0xb0, 0xb5, + 0x0e, 0x4c, 0x05, 0x1c, 0x60, 0x68, 0xfc, 0xf7, + 0xf6, 0xfd, 0x0c, 0x48, 0x61, 0x68, 0x00, 0xf0, + 0x92, 0xfb, 0x00, 0x21, 0x24, 0x20, 0x04, 0xf0, + 0xec, 0xfc, 0x00, 0x22, 0xd2, 0x43, 0x80, 0x21, + 0x24, 0x20, 0x04, 0xf0, 0xb8, 0xfc, 0x00, 0x20, + 0xe0, 0x60, 0x20, 0x72, 0x20, 0x68, 0x01, 0x68, + 0x28, 0x06, 0x00, 0x0e, 0xf1, 0xf7, 0xb0, 0xfb, + 0xb0, 0xbd, 0x3c, 0x00, 0x7c, 0xec, 0x00, 0x00, + 0x04, 0x7a, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0xf2, 0xf7, + 0x85, 0xfc, 0x20, 0x1c, 0xf2, 0xf7, 0xb0, 0xfd, + 0x10, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x1c, 0x4e, + 0x05, 0x1c, 0xb0, 0x7a, 0x2c, 0x1c, 0x40, 0x34, + 0x02, 0x28, 0x26, 0xd1, 0xa0, 0x8b, 0x31, 0x89, + 0x88, 0x42, 0x22, 0xd1, 0x30, 0x68, 0x41, 0x6a, + 0x00, 0x29, 0x08, 0xd0, 0x3c, 0x00, 0xb8, 0xec, + 0x00, 0x00, 0x20, 0x30, 0x00, 0x7b, 0xc0, 0x07, + 0x04, 0xd5, 0x01, 0x20, 0x01, 0xf0, 0x2f, 0xfd, + 0x00, 0x28, 0x18, 0xd1, 0x60, 0x78, 0x00, 0x28, + 0x09, 0xd1, 0x30, 0x68, 0x02, 0x23, 0x20, 0x30, + 0x02, 0x7b, 0x0d, 0x49, 0x52, 0x08, 0x52, 0x00, + 0x1a, 0x43, 0x02, 0x73, 0x01, 0xe0, 0xff, 0x21, + 0xf5, 0x31, 0x01, 0x22, 0x1f, 0x20, 0x04, 0xf0, + 0x6e, 0xfc, 0x03, 0x20, 0xb0, 0x72, 0x3c, 0x00, + 0xf4, 0xec, 0x00, 0x00, 0x02, 0xe0, 0x28, 0x1c, + 0xff, 0xf7, 0xc4, 0xff, 0x60, 0x78, 0x00, 0x28, + 0x03, 0xd1, 0x29, 0x1c, 0x01, 0x20, 0x03, 0xf0, + 0x29, 0xfb, 0x70, 0xbd, 0x14, 0x7a, 0x01, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x60, 0x34, 0xe0, 0x79, 0x0e, 0x4d, 0x00, 0x28, + 0x0a, 0xd1, 0x02, 0x20, 0xa8, 0x72, 0x28, 0x68, + 0x40, 0x68, 0x00, 0x28, 0x04, 0xd1, 0x0b, 0x48, + 0x3c, 0x00, 0x30, 0xed, 0x00, 0x00, 0xfd, 0xf7, + 0xd0, 0xfa, 0x29, 0x68, 0x48, 0x60, 0x04, 0xf0, + 0x38, 0xf8, 0x29, 0x68, 0xc8, 0x61, 0xff, 0xf7, + 0xe0, 0xfe, 0x29, 0x68, 0x09, 0x69, 0x08, 0x1a, + 0x03, 0xf0, 0x6f, 0xff, 0x00, 0x28, 0x01, 0xd0, + 0xe0, 0x79, 0xa0, 0x71, 0xb0, 0xbd, 0x14, 0x7a, + 0x01, 0x00, 0xc1, 0xeb, 0x00, 0x00, 0xf8, 0xb5, + 0x04, 0x1c, 0x00, 0x26, 0x04, 0xf0, 0x21, 0xf8, + 0x05, 0x1c, 0x3c, 0x00, 0x6c, 0xed, 0x00, 0x00, + 0x22, 0x48, 0x00, 0x27, 0x07, 0x70, 0xa1, 0x07, + 0x04, 0xd0, 0xe1, 0x07, 0xc9, 0x0f, 0x01, 0x62, + 0xc5, 0x61, 0x01, 0x26, 0x41, 0x6b, 0x00, 0x29, + 0x34, 0xd1, 0x00, 0x2e, 0x32, 0xd0, 0x06, 0x1c, + 0xf9, 0xf7, 0x44, 0xff, 0x31, 0x6b, 0x1a, 0x4b, + 0x41, 0x1a, 0xa2, 0x07, 0x12, 0xd5, 0xda, 0x68, + 0x00, 0x2a, 0x08, 0xdd, 0x91, 0x42, 0x1a, 0x68, + 0x02, 0xda, 0x14, 0x09, 0x3c, 0x00, 0xa8, 0xed, + 0x00, 0x00, 0xa2, 0x18, 0x06, 0xe0, 0x14, 0x09, + 0x12, 0x1b, 0x03, 0xe0, 0x0a, 0x43, 0x02, 0xd1, + 0x1a, 0x68, 0x52, 0x00, 0x1a, 0x60, 0xb7, 0x63, + 0x0a, 0xe0, 0xb2, 0x6b, 0x01, 0x32, 0xb2, 0x63, + 0x02, 0x2a, 0x1a, 0x68, 0x01, 0xdd, 0x94, 0x08, + 0x00, 0xe0, 0x14, 0x09, 0x12, 0x1b, 0x1a, 0x60, + 0xd9, 0x60, 0x30, 0x63, 0xf5, 0x62, 0x18, 0x68, + 0x08, 0x49, 0x88, 0x42, 0x01, 0xd9, 0x3c, 0x00, + 0xe4, 0xed, 0x00, 0x00, 0x19, 0x60, 0x03, 0xe0, + 0x64, 0x28, 0x01, 0xd2, 0x64, 0x20, 0x18, 0x60, + 0xf5, 0xf7, 0xfc, 0xfd, 0xf8, 0xbd, 0x00, 0x00, + 0x60, 0x6c, 0x01, 0x00, 0xb0, 0x57, 0x01, 0x00, + 0x20, 0xa1, 0x07, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0x00, 0x20, 0x50, 0x4d, 0x00, 0x21, 0x68, 0x61, + 0x20, 0x69, 0xfb, 0xf7, 0xb3, 0xfc, 0x07, 0x1c, + 0x20, 0x69, 0x03, 0x21, 0xfb, 0xf7, 0xae, 0xfc, + 0x3c, 0x00, 0x20, 0xee, 0x00, 0x00, 0x00, 0x28, + 0x03, 0xd0, 0x80, 0x78, 0x29, 0x78, 0x88, 0x42, + 0x63, 0xd1, 0x47, 0x4d, 0x20, 0x1c, 0x14, 0x30, + 0x39, 0x1c, 0x06, 0x1c, 0x2a, 0x78, 0x02, 0xf0, + 0x5a, 0xfa, 0x00, 0x28, 0x59, 0xd1, 0xe0, 0x68, + 0x05, 0x68, 0x41, 0x48, 0x01, 0x95, 0x58, 0x30, + 0x02, 0x90, 0xfb, 0xf7, 0x6a, 0xff, 0x3e, 0x4d, + 0x19, 0x35, 0x00, 0x28, 0x0b, 0xd0, 0x28, 0x1c, + 0xfb, 0xf7, 0x3c, 0x00, 0x5c, 0xee, 0x00, 0x00, + 0x55, 0xff, 0x00, 0x28, 0x1e, 0xd1, 0x31, 0x1c, + 0x28, 0x1c, 0xfb, 0xf7, 0x65, 0xff, 0x00, 0x28, + 0x42, 0xd0, 0x17, 0xe0, 0x28, 0x1c, 0xfb, 0xf7, + 0x49, 0xff, 0x00, 0x28, 0x06, 0xd0, 0x39, 0x1c, + 0x02, 0x98, 0xfb, 0xf7, 0x63, 0xff, 0x00, 0x28, + 0x36, 0xd0, 0x0b, 0xe0, 0x39, 0x1c, 0x02, 0x98, + 0xfb, 0xf7, 0x5c, 0xff, 0x00, 0x28, 0x2f, 0xd0, + 0x31, 0x1c, 0x28, 0x1c, 0x3c, 0x00, 0x98, 0xee, + 0x00, 0x00, 0xfb, 0xf7, 0x4c, 0xff, 0x00, 0x28, + 0x29, 0xd0, 0x30, 0x1c, 0xf6, 0xf7, 0xad, 0xfc, + 0x29, 0x4a, 0x18, 0x32, 0x11, 0x7c, 0x00, 0x29, + 0x04, 0xd0, 0x51, 0x6a, 0x00, 0x29, 0x01, 0xd0, + 0x00, 0x28, 0x1c, 0xd1, 0x90, 0x6a, 0x00, 0x28, + 0x3b, 0xd0, 0x13, 0x78, 0x01, 0x9d, 0x01, 0x21, + 0x6d, 0x89, 0x01, 0x20, 0x2b, 0x40, 0x9b, 0x07, + 0x11, 0xd0, 0xa3, 0x6b, 0x1e, 0x4e, 0x3c, 0x00, + 0xd4, 0xee, 0x00, 0x00, 0x1d, 0x1c, 0x7f, 0x35, + 0x98, 0x36, 0x00, 0x2d, 0x14, 0xd0, 0x55, 0x8a, + 0x00, 0x2d, 0x08, 0xd1, 0x55, 0x69, 0xab, 0x42, + 0x0f, 0xda, 0x00, 0x20, 0x17, 0x4d, 0x01, 0x23, + 0x6b, 0x61, 0x0a, 0xe0, 0x29, 0xe0, 0xf5, 0x78, + 0x02, 0x2d, 0x06, 0xd1, 0x14, 0x4f, 0x55, 0x69, + 0x3f, 0x68, 0xed, 0x19, 0xab, 0x42, 0x00, 0xda, + 0x00, 0x20, 0x23, 0x6c, 0x1d, 0x1c, 0x7f, 0x35, + 0x3c, 0x00, 0x10, 0xef, 0x00, 0x00, 0x10, 0xd0, + 0x55, 0x8a, 0x00, 0x2d, 0x03, 0xd1, 0x95, 0x69, + 0xab, 0x42, 0x0a, 0xd2, 0x08, 0xe0, 0xf5, 0x78, + 0x02, 0x2d, 0x06, 0xd1, 0x0b, 0x4e, 0x95, 0x69, + 0x36, 0x68, 0xad, 0x19, 0xab, 0x42, 0x00, 0xd2, + 0x00, 0x21, 0x08, 0x43, 0x08, 0xd0, 0x10, 0x6a, + 0x00, 0x28, 0x01, 0xd0, 0xf1, 0xf7, 0x4b, 0xfa, + 0x00, 0x21, 0x20, 0x1c, 0x01, 0xf0, 0xb9, 0xf9, + 0xfe, 0xbd, 0x3c, 0x00, 0x4c, 0xef, 0x00, 0x00, + 0xec, 0x65, 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, + 0xcc, 0x67, 0x01, 0x00, 0x3e, 0xb5, 0x05, 0x6a, + 0x04, 0x1c, 0xc0, 0x68, 0xf2, 0xf7, 0x34, 0xfb, + 0xe1, 0x69, 0xf2, 0xf7, 0x57, 0xfa, 0x20, 0x1c, + 0x40, 0x30, 0xc1, 0x8b, 0x04, 0x31, 0xc1, 0x83, + 0x2b, 0x69, 0x10, 0x49, 0x98, 0x79, 0x06, 0x28, + 0x0a, 0xd1, 0x98, 0x88, 0x01, 0x91, 0x02, 0x94, + 0x00, 0x90, 0x60, 0x69, 0x3c, 0x00, 0x88, 0xef, + 0x00, 0x00, 0x1b, 0x68, 0x01, 0x68, 0xe0, 0x68, + 0x03, 0x22, 0xc0, 0x68, 0x0a, 0xe0, 0x02, 0x28, + 0x0b, 0xd1, 0x10, 0x20, 0x00, 0x90, 0x01, 0x91, + 0x02, 0x94, 0xe0, 0x68, 0xa3, 0x69, 0xc0, 0x68, + 0x00, 0x22, 0x00, 0x21, 0xf7, 0xf7, 0x0f, 0xfb, + 0x3e, 0xbd, 0xf2, 0xf7, 0xa6, 0xf9, 0xfb, 0xe7, + 0x00, 0x00, 0xbd, 0xef, 0x00, 0x00, 0x80, 0xb5, + 0xd1, 0x68, 0x50, 0x69, 0xc9, 0x68, 0x3c, 0x00, + 0xc4, 0xef, 0x00, 0x00, 0xc1, 0x60, 0xd1, 0x68, + 0xc8, 0x60, 0x11, 0x1c, 0x40, 0x31, 0xcb, 0x8b, + 0x00, 0x89, 0x18, 0x18, 0xc8, 0x83, 0x10, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0xff, 0xf7, 0xbc, 0xff, + 0x80, 0xbd, 0x03, 0x48, 0xfb, 0xf7, 0xcc, 0xf8, + 0x00, 0x6a, 0xfe, 0xf7, 0xf5, 0xf9, 0x80, 0xbd, + 0xa0, 0x6a, 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x0a, 0x24, 0x30, 0x07, 0x01, 0x09, 0xa0, 0x07, + 0x3c, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x01, 0x43, + 0x0f, 0x1c, 0x0a, 0x4d, 0x2f, 0x60, 0x04, 0xf0, + 0xfa, 0xfe, 0xad, 0x68, 0x28, 0x01, 0x00, 0x0f, + 0xb0, 0x42, 0x05, 0xd0, 0x01, 0x3c, 0xf4, 0xd2, + 0x01, 0x21, 0x9b, 0x20, 0xf2, 0xf7, 0x41, 0xf9, + 0x28, 0x02, 0x00, 0x0a, 0x08, 0x2e, 0x01, 0xd1, + 0x31, 0x05, 0x08, 0x43, 0xf8, 0xbd, 0x60, 0x00, + 0x07, 0x00, 0x01, 0x22, 0xd2, 0x05, 0x80, 0xb5, + 0x00, 0x21, 0x3c, 0x00, 0x3c, 0xf0, 0x00, 0x00, + 0x04, 0x20, 0x04, 0xf0, 0xdd, 0xfc, 0x0f, 0x20, + 0xff, 0xf7, 0xd6, 0xff, 0x0f, 0x21, 0x09, 0x04, + 0x08, 0x40, 0x00, 0x0c, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x05, 0x48, 0xfd, 0xf7, 0x4a, 0xf9, + 0x04, 0x48, 0xfd, 0xf7, 0x7b, 0xf8, 0x04, 0x48, + 0xfd, 0xf7, 0x6c, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0x89, 0x34, 0x01, 0x00, 0xed, 0x24, 0x00, 0x00, + 0x11, 0x1c, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xf0, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0x48, 0xf3, 0xf7, + 0x2a, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0xd1, 0x24, + 0x00, 0x00, 0x80, 0xb5, 0xf2, 0xf7, 0x53, 0xf9, + 0x80, 0xbd, 0x80, 0xb5, 0x00, 0x21, 0x00, 0x20, + 0x01, 0xf0, 0x51, 0xfe, 0x03, 0x20, 0x02, 0xf0, + 0x46, 0xff, 0x80, 0xbd, 0x00, 0x00, 0x06, 0x48, + 0x80, 0xb5, 0xc1, 0x69, 0x00, 0x29, 0x06, 0xd1, + 0x01, 0x6a, 0x00, 0x29, 0x03, 0xd1, 0x3c, 0x00, + 0xb4, 0xf0, 0x00, 0x00, 0x81, 0x6b, 0x03, 0x48, + 0x00, 0xf0, 0x5e, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x4c, 0x20, 0x6a, 0xfc, 0xf7, + 0xb3, 0xfb, 0x03, 0x48, 0x21, 0x6a, 0x00, 0xf0, + 0x4f, 0xf9, 0x10, 0xbd, 0x1c, 0x75, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x4c, + 0x20, 0x7c, 0x00, 0x28, 0x02, 0xd0, 0x01, 0x21, + 0x3c, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0xfd, 0xf7, + 0x86, 0xf9, 0x00, 0x25, 0x25, 0x70, 0xa0, 0x68, + 0x01, 0x28, 0x03, 0xd1, 0x00, 0x20, 0xa5, 0x60, + 0x01, 0xf0, 0x8f, 0xf8, 0xa0, 0x78, 0x01, 0x28, + 0x05, 0xd1, 0x03, 0x48, 0x98, 0x38, 0x00, 0x69, + 0xfc, 0xf7, 0xef, 0xfb, 0xa5, 0x70, 0xb0, 0xbd, + 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x21, 0x01, 0x20, 0x01, 0xf0, 0x09, 0xfe, + 0x80, 0xbd, 0x3c, 0x00, 0x2c, 0xf1, 0x00, 0x00, + 0x38, 0xb5, 0x69, 0x46, 0x00, 0x25, 0xf8, 0xf7, + 0xb7, 0xfe, 0x04, 0x1c, 0x01, 0xd1, 0x01, 0x20, + 0x38, 0xbd, 0xa0, 0x68, 0x00, 0x28, 0x04, 0xd0, + 0x00, 0x99, 0xa1, 0x31, 0x08, 0x20, 0x04, 0xf0, + 0x73, 0xfa, 0x1c, 0x21, 0x20, 0x1c, 0xf1, 0xf7, + 0xa3, 0xf9, 0x28, 0x1c, 0xf0, 0xe7, 0x00, 0x00, + 0xfe, 0xb5, 0x07, 0x1c, 0x4c, 0x23, 0x39, 0x49, + 0x58, 0x43, 0x44, 0x18, 0x3c, 0x00, 0x68, 0xf1, + 0x00, 0x00, 0x25, 0x1c, 0x40, 0x35, 0x28, 0x7a, + 0x37, 0x49, 0x48, 0x76, 0x21, 0x1c, 0x30, 0x31, + 0x02, 0x91, 0x0c, 0x23, 0xc8, 0x56, 0x42, 0x1c, + 0x0a, 0x73, 0x49, 0x7b, 0x88, 0x42, 0x46, 0xda, + 0x32, 0x48, 0x00, 0x78, 0x80, 0x07, 0x3e, 0xd5, + 0x00, 0x20, 0x01, 0x90, 0xf6, 0xf7, 0xaf, 0xfa, + 0x00, 0x28, 0x2e, 0xd0, 0xac, 0x21, 0x09, 0x58, + 0x00, 0x29, 0x01, 0xd0, 0xe4, 0x30, 0x3c, 0x00, + 0xa4, 0xf1, 0x00, 0x00, 0x00, 0xe0, 0xcc, 0x30, + 0x06, 0x1c, 0x40, 0x68, 0x00, 0x28, 0x25, 0xd0, + 0x02, 0x99, 0x08, 0x7b, 0x01, 0x28, 0x11, 0xd1, + 0x20, 0x1c, 0x2e, 0x30, 0x29, 0x78, 0xf6, 0xf7, + 0xed, 0xf9, 0x71, 0x68, 0x03, 0xe0, 0x72, 0x18, + 0x12, 0x7a, 0x82, 0x42, 0x03, 0xd9, 0xff, 0x31, + 0x09, 0x06, 0x09, 0x0e, 0xf7, 0xd1, 0xa9, 0x70, + 0x01, 0x20, 0x01, 0x90, 0x23, 0x1c, 0x3e, 0x33, + 0x3c, 0x00, 0xe0, 0xf1, 0x00, 0x00, 0x1a, 0x1d, + 0x30, 0x1c, 0x00, 0x97, 0x01, 0x99, 0xf8, 0xf7, + 0x58, 0xfa, 0x00, 0x28, 0x11, 0xd0, 0xa8, 0x78, + 0x80, 0x19, 0x00, 0x7a, 0x00, 0xe0, 0x00, 0x20, + 0x68, 0x70, 0x68, 0x78, 0x01, 0x21, 0xfb, 0xf7, + 0xe0, 0xfd, 0x60, 0x60, 0x38, 0x1c, 0x01, 0xf0, + 0x14, 0xfe, 0x38, 0x1c, 0x01, 0xf0, 0xa5, 0xfb, + 0xfe, 0xbd, 0x02, 0x99, 0x08, 0x7b, 0xff, 0x30, + 0x48, 0x73, 0x3c, 0x00, 0x1c, 0xf2, 0x00, 0x00, + 0x38, 0x1c, 0xfc, 0xf7, 0x19, 0xfc, 0x03, 0xf0, + 0xc3, 0xfd, 0x06, 0x1c, 0xfb, 0xf7, 0x8e, 0xfe, + 0x41, 0x00, 0x76, 0x18, 0x68, 0x78, 0x61, 0x68, + 0xfb, 0xf7, 0x6a, 0xfe, 0x31, 0x18, 0x20, 0x8d, + 0x3b, 0x1c, 0x05, 0x4a, 0x03, 0xf0, 0x12, 0xfe, + 0xe5, 0xe7, 0x00, 0x00, 0x58, 0xe3, 0x01, 0x00, + 0x30, 0x80, 0x07, 0x00, 0x1d, 0x75, 0x01, 0x00, + 0xd5, 0x4e, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xf2, + 0x00, 0x00, 0x03, 0x1c, 0x04, 0x48, 0x80, 0xb5, + 0x02, 0x79, 0x20, 0x30, 0x03, 0x49, 0x00, 0xf0, + 0x30, 0xf8, 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, 0x03, 0x1c, + 0x04, 0x48, 0x80, 0xb5, 0xc2, 0x78, 0x38, 0x30, + 0x03, 0x49, 0x00, 0xf0, 0x22, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0xac, 0x7c, 0x01, 0x00, 0xc8, 0x67, + 0x01, 0x00, 0x03, 0x1c, 0x04, 0x48, 0x3c, 0x00, + 0x94, 0xf2, 0x00, 0x00, 0x80, 0xb5, 0x82, 0x79, + 0x50, 0x30, 0x03, 0x49, 0x00, 0xf0, 0x14, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7c, 0x01, 0x00, + 0xcc, 0x67, 0x01, 0x00, 0x03, 0x1c, 0x04, 0x48, + 0x80, 0xb5, 0x42, 0x79, 0x68, 0x30, 0x03, 0x49, + 0x00, 0xf0, 0x06, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0xac, 0x7c, 0x01, 0x00, 0xd0, 0x67, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x24, 0x84, 0x80, 0x0b, 0x60, + 0x3c, 0x00, 0xd0, 0xf2, 0x00, 0x00, 0x19, 0x1c, + 0x51, 0x43, 0x01, 0x60, 0x19, 0x06, 0x09, 0x16, + 0x10, 0x22, 0x06, 0x30, 0xf1, 0xf7, 0x9f, 0xf9, + 0x10, 0xbd, 0xb0, 0xb5, 0x06, 0x4d, 0x00, 0x24, + 0xac, 0x60, 0xec, 0x60, 0xec, 0x61, 0x2c, 0x62, + 0x02, 0xf0, 0xf1, 0xfc, 0x00, 0xf0, 0x0d, 0xf8, + 0xec, 0x62, 0x2c, 0x70, 0xb0, 0xbd, 0x44, 0x7d, + 0x01, 0x00, 0x80, 0xb5, 0x80, 0x21, 0x01, 0x48, + 0xf1, 0xf7, 0x3c, 0x00, 0x0c, 0xf3, 0x00, 0x00, + 0xc7, 0xf8, 0x80, 0xbd, 0x04, 0x66, 0x01, 0x00, + 0xf8, 0xb5, 0x07, 0x4f, 0x00, 0x24, 0x00, 0x26, + 0x18, 0x20, 0x60, 0x43, 0xc5, 0x19, 0xee, 0x60, + 0x03, 0xf0, 0x42, 0xfd, 0x10, 0x35, 0x01, 0x34, + 0x02, 0x2c, 0x41, 0xc5, 0xf4, 0xdb, 0xf8, 0xbd, + 0xb8, 0x7d, 0x01, 0x00, 0x00, 0x23, 0x03, 0x60, + 0x04, 0x4b, 0x00, 0x29, 0x00, 0xd1, 0x19, 0x1c, + 0x41, 0x60, 0x00, 0x2a, 0x3c, 0x00, 0x48, 0xf3, + 0x00, 0x00, 0x00, 0xd1, 0x1a, 0x1c, 0x82, 0x60, + 0x70, 0x47, 0xbd, 0x75, 0x00, 0x00, 0x10, 0xb5, + 0x07, 0x4c, 0x20, 0x68, 0x01, 0x30, 0x20, 0x60, + 0x20, 0x28, 0x03, 0xd9, 0x58, 0x21, 0x58, 0x20, + 0xf1, 0xf7, 0x9d, 0xff, 0x21, 0x68, 0x01, 0x20, + 0x01, 0x39, 0x88, 0x40, 0x10, 0xbd, 0x60, 0x5b, + 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x21, 0x68, 0x00, 0x20, 0x00, 0x29, 0x3c, 0x00, + 0x84, 0xf3, 0x00, 0x00, 0x0a, 0xd0, 0xa9, 0x43, + 0x21, 0x60, 0x07, 0xd1, 0xa0, 0x68, 0xf1, 0xf7, + 0x23, 0xf8, 0x00, 0x28, 0x02, 0xd1, 0x21, 0x68, + 0x29, 0x43, 0x21, 0x60, 0xb0, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, 0x21, 0x68, + 0x00, 0x20, 0x29, 0x43, 0x21, 0x60, 0xa9, 0x42, + 0x07, 0xd1, 0x60, 0x68, 0xf1, 0xf7, 0x10, 0xf8, + 0x00, 0x28, 0x02, 0xd1, 0x21, 0x68, 0xa9, 0x43, + 0x3c, 0x00, 0xc0, 0xf3, 0x00, 0x00, 0x21, 0x60, + 0xb0, 0xbd, 0x1a, 0x4b, 0xb0, 0xb5, 0x9a, 0x6a, + 0x00, 0x28, 0x0b, 0xd0, 0x00, 0x2a, 0x07, 0xdb, + 0xb8, 0x24, 0x24, 0x58, 0x01, 0x3c, 0xa4, 0x1a, + 0x00, 0x19, 0xb0, 0x30, 0x00, 0x7b, 0x02, 0xe0, + 0x0e, 0x20, 0x00, 0xe0, 0x0d, 0x20, 0x5d, 0x6a, + 0x12, 0x4c, 0x00, 0x2d, 0x01, 0xd0, 0x20, 0x78, + 0x00, 0xe0, 0x20, 0x5c, 0xff, 0x24, 0xa8, 0x34, + 0xc4, 0x40, 0x3c, 0x00, 0xfc, 0xf3, 0x00, 0x00, + 0x9c, 0x60, 0xf5, 0x24, 0xc4, 0x40, 0x9c, 0x61, + 0xfd, 0x24, 0xc4, 0x40, 0xdc, 0x61, 0xff, 0x24, + 0x29, 0x34, 0xc4, 0x40, 0x5c, 0x61, 0xff, 0x24, + 0x53, 0x34, 0xc4, 0x40, 0x00, 0x20, 0x0c, 0x33, + 0x11, 0xc3, 0x00, 0x29, 0x05, 0xd0, 0x00, 0x2a, + 0x03, 0xdc, 0x02, 0x21, 0x50, 0x42, 0x00, 0xf0, + 0x65, 0xfb, 0xb0, 0xbd, 0xac, 0x7e, 0x01, 0x00, + 0xb8, 0x52, 0x01, 0x00, 0x3c, 0x00, 0x38, 0xf4, + 0x00, 0x00, 0x10, 0xb5, 0x13, 0x4c, 0x13, 0x48, + 0x21, 0x1c, 0xff, 0x31, 0x69, 0x31, 0x0e, 0xc9, + 0x0e, 0xc0, 0x21, 0x1c, 0xff, 0x31, 0x24, 0x22, + 0x75, 0x31, 0x0f, 0x48, 0xf1, 0xf7, 0x51, 0xf8, + 0x21, 0x1c, 0xff, 0x31, 0x3c, 0x22, 0x99, 0x31, + 0x0d, 0x48, 0xf1, 0xf7, 0xa6, 0xf8, 0xfc, 0xf7, + 0xa2, 0xff, 0x21, 0x1c, 0xff, 0x31, 0x10, 0x22, + 0xd5, 0x31, 0x09, 0x48, 0xf1, 0xf7, 0x3c, 0x00, + 0x74, 0xf4, 0x00, 0x00, 0x41, 0xf8, 0x21, 0x1c, + 0xff, 0x31, 0x28, 0x22, 0xe5, 0x31, 0x07, 0x48, + 0xf1, 0xf7, 0x96, 0xf8, 0x10, 0xbd, 0x00, 0x00, + 0x40, 0x63, 0x01, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x0c, 0x80, 0x07, 0x00, 0x30, 0x80, 0x07, 0x00, + 0x80, 0x80, 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, + 0xf8, 0xb5, 0x00, 0x28, 0x59, 0xd0, 0x04, 0xf0, + 0x4b, 0xf9, 0xf8, 0xf7, 0xb3, 0xfb, 0x00, 0x22, + 0x3c, 0x00, 0xb0, 0xf4, 0x00, 0x00, 0x01, 0x21, + 0x13, 0x20, 0x04, 0xf0, 0x7c, 0xf9, 0x2a, 0x49, + 0x29, 0x48, 0x49, 0x6c, 0x01, 0x60, 0x00, 0x21, + 0x29, 0x48, 0xc9, 0x43, 0x41, 0x60, 0x26, 0x4c, + 0x14, 0x34, 0x61, 0x6c, 0x81, 0x60, 0xa1, 0x6c, + 0xc1, 0x60, 0x00, 0x20, 0x25, 0x4d, 0x02, 0x26, + 0x01, 0x01, 0x6e, 0x50, 0x0a, 0x19, 0x4f, 0x19, + 0x50, 0x32, 0x04, 0x37, 0x0e, 0xca, 0x01, 0x30, + 0x08, 0x28, 0x3c, 0x00, 0xec, 0xf4, 0x00, 0x00, + 0x0e, 0xc7, 0xf4, 0xdb, 0x14, 0x22, 0x21, 0x1c, + 0xcc, 0x31, 0x1e, 0x48, 0xf1, 0xf7, 0x5a, 0xf8, + 0x1d, 0x48, 0x81, 0x78, 0x09, 0x09, 0x09, 0x01, + 0x81, 0x70, 0x00, 0x21, 0xc1, 0x70, 0x41, 0x70, + 0x21, 0x1c, 0xe0, 0x31, 0x0a, 0x78, 0x02, 0x70, + 0x49, 0x78, 0x41, 0x70, 0x21, 0x1c, 0xe8, 0x31, + 0x30, 0x22, 0x08, 0x30, 0xf1, 0xf7, 0x46, 0xf8, + 0x21, 0x1c, 0xff, 0x31, 0x3c, 0x00, 0x28, 0xf5, + 0x00, 0x00, 0x50, 0x22, 0x19, 0x31, 0x12, 0x48, + 0xf1, 0xf7, 0x3f, 0xf8, 0x83, 0x20, 0x80, 0x00, + 0x14, 0x22, 0x21, 0x18, 0x10, 0x48, 0xf1, 0xf7, + 0x38, 0xf8, 0x11, 0x20, 0x40, 0x01, 0x84, 0x22, + 0x21, 0x18, 0x0d, 0x48, 0xf1, 0xf7, 0x31, 0xf8, + 0xff, 0xf7, 0x73, 0xff, 0x20, 0x1c, 0xf1, 0xf7, + 0x28, 0xfd, 0xf8, 0xbd, 0xff, 0xf7, 0x6d, 0xff, + 0xfb, 0xe7, 0x08, 0x20, 0x07, 0x00, 0x3c, 0x00, + 0x64, 0xf5, 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, + 0x40, 0x20, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x00, 0x40, 0x07, 0x00, 0x00, 0x50, 0x07, 0x00, + 0x00, 0x60, 0x07, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x00, 0x90, 0x07, 0x00, 0xf8, 0xb5, 0x05, 0x1c, + 0x18, 0x48, 0xc0, 0x68, 0x00, 0x28, 0x25, 0xd0, + 0x16, 0x4e, 0x01, 0x36, 0x74, 0x78, 0x30, 0x78, + 0x27, 0x1a, 0x79, 0x19, 0x20, 0x1c, 0xf1, 0xf7, + 0x3c, 0x00, 0xa0, 0xf5, 0x00, 0x00, 0x4b, 0xf8, + 0x00, 0x90, 0x29, 0x1c, 0x20, 0x1c, 0xf1, 0xf7, + 0xb2, 0xf8, 0xc1, 0x19, 0x20, 0x1c, 0xf1, 0xf7, + 0x42, 0xf8, 0x60, 0x1a, 0x30, 0x70, 0x70, 0x1e, + 0x80, 0x68, 0x00, 0x28, 0x0d, 0xd0, 0x53, 0x36, + 0xf4, 0x78, 0x00, 0x99, 0x20, 0x1c, 0xf1, 0xf7, + 0xa2, 0xf8, 0xb1, 0x78, 0x61, 0x1a, 0x41, 0x18, + 0x20, 0x1c, 0xf1, 0xf7, 0x9c, 0xf8, 0x60, 0x1a, + 0xb0, 0x70, 0x3c, 0x00, 0xdc, 0xf5, 0x00, 0x00, + 0x03, 0x48, 0x5c, 0x30, 0x01, 0x69, 0xc2, 0x68, + 0x69, 0x43, 0x51, 0x18, 0xc1, 0x60, 0xf8, 0xbd, + 0x44, 0x7d, 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0x4d, + 0xe8, 0x68, 0x29, 0x69, 0x40, 0x18, 0x7d, 0x21, + 0x09, 0x01, 0x44, 0x18, 0x20, 0x1c, 0x03, 0xf0, + 0x0b, 0xfb, 0x00, 0x28, 0x0a, 0xd0, 0x03, 0xf0, + 0xcf, 0xfb, 0x01, 0x1b, 0x28, 0x69, 0xf1, 0xf7, + 0x7d, 0xf8, 0x01, 0x30, 0x3c, 0x00, 0x18, 0xf6, + 0x00, 0x00, 0x00, 0x04, 0x00, 0x0c, 0xff, 0xf7, + 0xb2, 0xff, 0xb0, 0xbd, 0x00, 0x00, 0xa0, 0x7d, + 0x01, 0x00, 0x70, 0xb5, 0x10, 0x4c, 0x60, 0x68, + 0x80, 0x25, 0xa8, 0x43, 0x60, 0x60, 0x20, 0x68, + 0x28, 0x43, 0x20, 0x60, 0x0d, 0x4e, 0x30, 0x1c, + 0x10, 0x30, 0xf3, 0xf7, 0xc8, 0xfc, 0x00, 0x28, + 0x03, 0xd1, 0x07, 0x21, 0x85, 0x20, 0xf1, 0xf7, + 0x2a, 0xfe, 0x08, 0x48, 0x00, 0x21, 0x3c, 0x00, + 0x54, 0xf6, 0x00, 0x00, 0x80, 0x68, 0x41, 0x63, + 0xc0, 0x6c, 0x10, 0x30, 0x70, 0x61, 0x01, 0x20, + 0x30, 0x61, 0x20, 0x68, 0xa8, 0x43, 0x20, 0x60, + 0x70, 0xbd, 0x00, 0x00, 0xf4, 0x00, 0x07, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x24, 0x7e, 0x01, 0x00, + 0x01, 0x1c, 0x00, 0x20, 0x05, 0x29, 0x80, 0xb5, + 0x09, 0xd2, 0x02, 0xa3, 0x5b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, + 0x3c, 0x00, 0x90, 0xf6, 0x00, 0x00, 0x03, 0x00, + 0xff, 0xf7, 0xcf, 0xfc, 0x80, 0xbd, 0x01, 0x22, + 0x92, 0x02, 0x80, 0xb5, 0x00, 0x21, 0x07, 0x20, + 0x04, 0xf0, 0xab, 0xf9, 0x80, 0xbd, 0x80, 0xb5, + 0x40, 0x22, 0x00, 0x21, 0x00, 0x20, 0x04, 0xf0, + 0xa4, 0xf9, 0x03, 0x22, 0x00, 0x21, 0x00, 0x20, + 0x04, 0xf0, 0x9f, 0xf9, 0x80, 0xbd, 0x70, 0xb5, + 0x0e, 0x1c, 0x05, 0x1c, 0x14, 0x1c, 0x08, 0x28, + 0x0e, 0xd1, 0x3c, 0x00, 0xcc, 0xf6, 0x00, 0x00, + 0x00, 0xf0, 0x00, 0xfc, 0x0e, 0x28, 0x01, 0xd1, + 0x14, 0x20, 0x00, 0xe0, 0x10, 0x20, 0xe1, 0x03, + 0x00, 0xd5, 0x01, 0x38, 0xc0, 0x06, 0x0a, 0x49, + 0xc0, 0x0e, 0x88, 0x71, 0x08, 0xe0, 0x09, 0x2d, + 0x06, 0xd1, 0xa0, 0x04, 0x01, 0xd5, 0x00, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0xf3, 0xf7, 0xb0, 0xf9, + 0x34, 0x40, 0x21, 0x1c, 0x32, 0x1c, 0x28, 0x1c, + 0x04, 0xf0, 0x7a, 0xf9, 0x3c, 0x00, 0x08, 0xf7, + 0x00, 0x00, 0x70, 0xbd, 0x00, 0x00, 0x00, 0x80, + 0x07, 0x00, 0x70, 0xb5, 0x00, 0x24, 0x13, 0x29, + 0x11, 0xd8, 0x00, 0x28, 0x01, 0xd1, 0x08, 0x4e, + 0x08, 0x25, 0x01, 0x28, 0x01, 0xd1, 0x07, 0x4e, + 0x09, 0x25, 0x00, 0xf0, 0x78, 0xfa, 0x00, 0x28, + 0x05, 0xd0, 0x02, 0x1c, 0x31, 0x1c, 0x28, 0x1c, + 0xff, 0xf7, 0xc3, 0xff, 0x01, 0x24, 0x20, 0x1c, + 0x70, 0xbd, 0xf8, 0xff, 0x07, 0x00, 0x3c, 0x00, + 0x44, 0xf7, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x01, 0x22, 0xd2, 0x02, 0x80, 0xb5, 0x00, 0x21, + 0x07, 0x20, 0x04, 0xf0, 0x53, 0xf9, 0x80, 0xbd, + 0x0f, 0x22, 0x12, 0x04, 0x07, 0x21, 0x49, 0x04, + 0x80, 0xb5, 0x09, 0x20, 0x04, 0xf0, 0x4a, 0xf9, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x00, 0x21, + 0x04, 0x20, 0x04, 0xf0, 0x1b, 0xfc, 0x40, 0x21, + 0x00, 0x20, 0x04, 0xf0, 0x17, 0xfc, 0x04, 0x49, + 0x3c, 0x00, 0x80, 0xf7, 0x00, 0x00, 0x00, 0x20, + 0x88, 0x60, 0x02, 0x48, 0x09, 0x69, 0x20, 0x30, + 0xff, 0xf7, 0x09, 0xfe, 0x80, 0xbd, 0x64, 0x73, + 0x01, 0x00, 0xb0, 0xb5, 0x60, 0x21, 0x00, 0x20, + 0x04, 0xf0, 0x07, 0xfc, 0x11, 0x4d, 0x00, 0x24, + 0x00, 0x22, 0x04, 0x20, 0x29, 0x5d, 0x04, 0xf0, + 0x28, 0xf9, 0x0c, 0x20, 0x03, 0xf0, 0x9b, 0xfb, + 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, 0x05, 0x2c, + 0xf2, 0xd3, 0x3c, 0x00, 0xbc, 0xf7, 0x00, 0x00, + 0x0f, 0x22, 0x00, 0x21, 0x0a, 0x20, 0x04, 0xf0, + 0x1b, 0xf9, 0x61, 0x21, 0x00, 0x20, 0x04, 0xf0, + 0xef, 0xfb, 0x06, 0x49, 0x01, 0x20, 0x88, 0x60, + 0x04, 0x48, 0x09, 0x69, 0x20, 0x30, 0xff, 0xf7, + 0xcd, 0xfd, 0xff, 0x20, 0x2d, 0x30, 0xb0, 0xbd, + 0xa8, 0x58, 0x01, 0x00, 0x64, 0x73, 0x01, 0x00, + 0xf8, 0xb5, 0x06, 0x1c, 0x12, 0x48, 0xc6, 0x70, + 0x01, 0x20, 0xff, 0xf7, 0x3c, 0x00, 0xf8, 0xf7, + 0x00, 0x00, 0xfd, 0xfb, 0x01, 0x27, 0xbf, 0x02, + 0x04, 0x1c, 0xb8, 0x43, 0x01, 0x1c, 0x01, 0x20, + 0x04, 0xf0, 0xd1, 0xfb, 0x03, 0x20, 0xff, 0xf7, + 0xf2, 0xfb, 0x05, 0x1c, 0xb8, 0x43, 0x01, 0x1c, + 0x03, 0x20, 0x04, 0xf0, 0xc8, 0xfb, 0x30, 0x1c, + 0x00, 0xf0, 0x9f, 0xf9, 0x00, 0xf0, 0x57, 0xf8, + 0x21, 0x1c, 0x01, 0x20, 0x04, 0xf0, 0xbf, 0xfb, + 0x29, 0x1c, 0x03, 0x20, 0x04, 0xf0, 0x3c, 0x00, + 0x34, 0xf8, 0x00, 0x00, 0xbb, 0xfb, 0x00, 0x20, + 0xf8, 0xbd, 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x22, 0x40, 0x21, 0x00, 0x20, + 0x04, 0xf0, 0xd8, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x01, 0x24, 0x09, 0x20, + 0xff, 0xf7, 0xcc, 0xfb, 0x0f, 0x21, 0x09, 0x04, + 0x88, 0x43, 0x03, 0x21, 0x89, 0x04, 0xe2, 0x04, + 0x05, 0x2d, 0x12, 0x4e, 0x20, 0xd2, 0x02, 0xa3, + 0x3c, 0x00, 0x70, 0xf8, 0x00, 0x00, 0x5b, 0x5d, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x06, 0x09, + 0x0c, 0x10, 0x03, 0x00, 0x03, 0x21, 0x09, 0x04, + 0x0c, 0xe0, 0x01, 0x21, 0x09, 0x04, 0x09, 0xe0, + 0x01, 0x21, 0x49, 0x04, 0x06, 0xe0, 0xf3, 0x68, + 0x04, 0x2b, 0x05, 0xd9, 0x02, 0xe0, 0xf3, 0x68, + 0x04, 0x2b, 0x01, 0xd8, 0x01, 0x43, 0x01, 0xe0, + 0x10, 0x43, 0x01, 0x1c, 0x09, 0x20, 0x04, 0xf0, + 0x80, 0xfb, 0x3c, 0x00, 0xac, 0xf8, 0x00, 0x00, + 0x20, 0x1c, 0x70, 0xbd, 0x00, 0x24, 0xfb, 0xe7, + 0x64, 0x73, 0x01, 0x00, 0x01, 0x21, 0xc9, 0x05, + 0x00, 0x28, 0x80, 0xb5, 0x02, 0xd0, 0x0a, 0x1c, + 0x00, 0x21, 0x00, 0xe0, 0x00, 0x22, 0x04, 0x20, + 0x04, 0xf0, 0x96, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0xf0, 0xb5, 0x91, 0xb0, 0x00, 0x26, 0x40, 0x21, + 0x01, 0xa8, 0xf0, 0xf7, 0xdd, 0xfd, 0x2a, 0x4f, + 0xb8, 0x79, 0x01, 0x22, 0x3c, 0x00, 0xe8, 0xf8, + 0x00, 0x00, 0x52, 0x03, 0x00, 0x90, 0x00, 0x21, + 0x06, 0x20, 0x04, 0xf0, 0x84, 0xf8, 0x60, 0x21, + 0x00, 0x20, 0x04, 0xf0, 0x58, 0xfb, 0x61, 0x21, + 0x00, 0x20, 0x04, 0xf0, 0x54, 0xfb, 0x08, 0x20, + 0x03, 0xf0, 0xef, 0xfa, 0x00, 0x24, 0x0f, 0x20, + 0xff, 0xf7, 0x71, 0xfb, 0x40, 0x05, 0x05, 0x0f, + 0xa8, 0x00, 0x01, 0xa9, 0x09, 0x58, 0x01, 0xaa, + 0x01, 0x31, 0x01, 0x34, 0x0c, 0x2c, 0x3c, 0x00, + 0x24, 0xf9, 0x00, 0x00, 0x11, 0x50, 0xf1, 0xd3, + 0x00, 0x20, 0x81, 0x00, 0x01, 0xaa, 0x51, 0x58, + 0xb1, 0x42, 0x01, 0xd9, 0x0e, 0x1c, 0x05, 0x1c, + 0x01, 0x30, 0x10, 0x28, 0xf5, 0xd3, 0x06, 0x20, + 0xff, 0xf7, 0x58, 0xfb, 0x0f, 0x21, 0x49, 0x02, + 0x88, 0x43, 0x69, 0x02, 0x08, 0x43, 0x01, 0x21, + 0x49, 0x03, 0x01, 0x43, 0x06, 0x20, 0x04, 0xf0, + 0x29, 0xfb, 0x0d, 0x48, 0x84, 0x68, 0x64, 0x34, + 0x3c, 0x00, 0x60, 0xf9, 0x00, 0x00, 0x08, 0xe0, + 0x20, 0x1c, 0x03, 0xf0, 0x5a, 0xf9, 0x00, 0x28, + 0x03, 0xd0, 0x01, 0x21, 0x95, 0x20, 0xf1, 0xf7, + 0x98, 0xfc, 0x0f, 0x20, 0xff, 0xf7, 0x3d, 0xfb, + 0x00, 0x04, 0xf1, 0xd5, 0x87, 0x20, 0x03, 0xf0, + 0xb2, 0xfa, 0x00, 0x98, 0xb8, 0x71, 0x11, 0xb0, + 0xf0, 0xbd, 0x20, 0x10, 0x07, 0x00, 0x00, 0x01, + 0x07, 0x00, 0x10, 0xb5, 0x17, 0x4c, 0x61, 0x69, + 0x00, 0x29, 0x3c, 0x00, 0x9c, 0xf9, 0x00, 0x00, + 0x04, 0xd0, 0x0a, 0x21, 0x13, 0x20, 0x03, 0xf0, + 0x47, 0xfe, 0x10, 0xbd, 0x01, 0x1c, 0x12, 0x48, + 0x01, 0x29, 0x00, 0x78, 0x0c, 0xd0, 0x11, 0x29, + 0xf7, 0xd1, 0x05, 0x28, 0x03, 0xd1, 0x01, 0x21, + 0x13, 0x20, 0xf1, 0xf7, 0x71, 0xfc, 0x20, 0x78, + 0x07, 0x28, 0xee, 0xd1, 0x02, 0x21, 0x0a, 0xe0, + 0x05, 0x28, 0x07, 0xd0, 0x06, 0x28, 0x0a, 0xd0, + 0x07, 0x28, 0xf7, 0xd0, 0x3c, 0x00, 0xd8, 0xf9, + 0x00, 0x00, 0x08, 0x28, 0xe4, 0xd1, 0x00, 0x20, + 0x05, 0xe0, 0x01, 0x21, 0x13, 0x20, 0xf1, 0xf7, + 0x5e, 0xfc, 0x10, 0xbd, 0x01, 0x20, 0x02, 0xf0, + 0x6c, 0xfd, 0x10, 0xbd, 0x00, 0x00, 0x7c, 0x78, + 0x01, 0x00, 0x0d, 0x49, 0x80, 0xb5, 0x09, 0x78, + 0x03, 0x29, 0x01, 0xd1, 0x00, 0x28, 0x0b, 0xd0, + 0x07, 0x29, 0x01, 0xd1, 0x00, 0x28, 0x07, 0xd0, + 0x02, 0x29, 0x01, 0xd1, 0x00, 0x28, 0x3c, 0x00, + 0x14, 0xfa, 0x00, 0x00, 0x03, 0xd1, 0x05, 0x29, + 0x09, 0xd1, 0x00, 0x28, 0x07, 0xd0, 0x00, 0x20, + 0xfc, 0xf7, 0x28, 0xfd, 0x00, 0x22, 0x13, 0x21, + 0x11, 0x20, 0x03, 0xf0, 0xc1, 0xfe, 0x80, 0xbd, + 0x7c, 0x78, 0x01, 0x00, 0x80, 0xb5, 0x06, 0x22, + 0x08, 0x21, 0x00, 0x20, 0x03, 0xf0, 0xde, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x07, 0x48, 0x80, 0xb5, + 0x40, 0x69, 0x00, 0x28, 0x01, 0xd1, 0xf1, 0xf7, + 0x3c, 0x00, 0x50, 0xfa, 0x00, 0x00, 0x33, 0xff, + 0x05, 0x49, 0x05, 0x4a, 0x08, 0x68, 0x50, 0x61, + 0x48, 0x68, 0x90, 0x61, 0x01, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, 0xb0, 0x58, + 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, 0x07, 0x48, + 0x80, 0xb5, 0x40, 0x69, 0x00, 0x28, 0x01, 0xd1, + 0xf1, 0xf7, 0x1d, 0xff, 0x05, 0x49, 0x05, 0x4a, + 0x08, 0x68, 0x90, 0x61, 0x48, 0x68, 0x50, 0x61, + 0x01, 0x20, 0x3c, 0x00, 0x8c, 0xfa, 0x00, 0x00, + 0x80, 0xbd, 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, + 0xb0, 0x58, 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x11, 0xb5, 0x00, 0xab, 0x59, 0x78, 0x14, 0x48, + 0x01, 0x23, 0xc0, 0x56, 0x00, 0x22, 0x09, 0x18, + 0x0b, 0x06, 0x1b, 0x16, 0x13, 0x21, 0x13, 0x2b, + 0x02, 0xdd, 0x00, 0xab, 0x59, 0x70, 0x07, 0xe0, + 0x00, 0x2b, 0x02, 0xda, 0x00, 0xab, 0x5a, 0x70, + 0x02, 0xe0, 0x1c, 0x1c, 0x3c, 0x00, 0xc8, 0xfa, + 0x00, 0x00, 0x00, 0xab, 0x5c, 0x70, 0x00, 0xab, + 0x1b, 0x78, 0x18, 0x18, 0x00, 0x06, 0x00, 0x16, + 0x13, 0x28, 0x02, 0xdd, 0x00, 0xab, 0x19, 0x70, + 0x06, 0xe0, 0x00, 0x28, 0x02, 0xda, 0x00, 0xab, + 0x1a, 0x70, 0x01, 0xe0, 0x00, 0xab, 0x18, 0x70, + 0x00, 0x98, 0x18, 0xbd, 0x00, 0x00, 0x64, 0x73, + 0x01, 0x00, 0x38, 0xb5, 0x0c, 0x1c, 0x15, 0x49, + 0x00, 0xab, 0x49, 0x68, 0x13, 0x25, 0x3c, 0x00, + 0x04, 0xfb, 0x00, 0x00, 0x00, 0x91, 0x59, 0x78, + 0x09, 0x18, 0x59, 0x70, 0x19, 0x78, 0x08, 0x18, + 0x18, 0x70, 0x19, 0x88, 0x10, 0x48, 0x02, 0x2c, + 0xc1, 0x80, 0x01, 0xd0, 0x00, 0x2c, 0x0b, 0xd1, + 0x00, 0xab, 0x18, 0x78, 0x13, 0x28, 0x00, 0xd9, + 0x1d, 0x70, 0x00, 0xab, 0x19, 0x78, 0x00, 0x20, + 0xff, 0xf7, 0xee, 0xfd, 0x02, 0x2c, 0x01, 0xd0, + 0x01, 0x2c, 0x09, 0xd1, 0x00, 0xab, 0x58, 0x78, + 0x3c, 0x00, 0x40, 0xfb, 0x00, 0x00, 0x13, 0x28, + 0x00, 0xd9, 0x5d, 0x70, 0x00, 0xab, 0x59, 0x78, + 0x01, 0x20, 0xff, 0xf7, 0xe0, 0xfd, 0x38, 0xbd, + 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, 0xa0, 0x58, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0e, 0x28, 0x13, 0x4d, 0x04, 0xd0, + 0x12, 0x49, 0xa0, 0x00, 0x00, 0x19, 0x4d, 0x39, + 0x45, 0x18, 0x06, 0x20, 0xff, 0xf7, 0x3d, 0xfa, + 0x0f, 0x49, 0x3c, 0x00, 0x7c, 0xfb, 0x00, 0x00, + 0xe0, 0x22, 0x09, 0x19, 0x10, 0x39, 0xc9, 0x7b, + 0x90, 0x43, 0x49, 0x01, 0x11, 0x40, 0x01, 0x43, + 0x06, 0x20, 0x04, 0xf0, 0x0d, 0xfa, 0x29, 0x1c, + 0x05, 0x20, 0x09, 0x4a, 0x03, 0xf0, 0x30, 0xff, + 0x08, 0x48, 0x1f, 0x22, 0x00, 0x19, 0x10, 0x38, + 0xc0, 0x7b, 0xc1, 0x04, 0xd2, 0x04, 0x08, 0x20, + 0x03, 0xf0, 0x26, 0xff, 0xb0, 0xbd, 0x00, 0x00, + 0xb4, 0x09, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xfb, + 0x00, 0x00, 0x14, 0x45, 0x01, 0x00, 0xff, 0x0f, + 0x00, 0x00, 0xc0, 0x58, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x06, 0x49, 0x00, 0x28, + 0x01, 0xd1, 0x08, 0x68, 0x80, 0xbd, 0x01, 0x28, + 0x01, 0xd1, 0x48, 0x68, 0x80, 0xbd, 0xf1, 0xf7, + 0x90, 0xfb, 0x00, 0x20, 0x80, 0xbd, 0x7c, 0x73, + 0x01, 0x00, 0x01, 0x48, 0x40, 0x68, 0x70, 0x47, + 0x00, 0x00, 0xa0, 0x58, 0x01, 0x00, 0x3c, 0x00, + 0xf4, 0xfb, 0x00, 0x00, 0x04, 0x48, 0x01, 0x23, + 0x04, 0x49, 0xc0, 0x56, 0xc9, 0x56, 0x40, 0x18, + 0x00, 0x04, 0x00, 0x0c, 0x70, 0x47, 0x00, 0x00, + 0xa0, 0x58, 0x01, 0x00, 0xa2, 0x58, 0x01, 0x00, + 0x01, 0x48, 0x40, 0x68, 0x70, 0x47, 0x00, 0x00, + 0x64, 0x73, 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x1c, + 0x0e, 0x1c, 0x00, 0xf0, 0x55, 0xf9, 0x04, 0x1c, + 0x00, 0xf0, 0x58, 0xf9, 0x00, 0x28, 0x2c, 0xd0, + 0x3c, 0x00, 0x30, 0xfc, 0x00, 0x00, 0xb3, 0x00, + 0x60, 0x1e, 0x00, 0x2d, 0x1c, 0x4e, 0x19, 0x49, + 0x1a, 0x4a, 0x06, 0xd1, 0x0b, 0x25, 0x0e, 0x2c, + 0x00, 0xd1, 0x19, 0x4a, 0xd2, 0x58, 0x08, 0x56, + 0x08, 0xe0, 0x01, 0x2d, 0x1c, 0xd1, 0x9a, 0x18, + 0x04, 0x36, 0x08, 0x18, 0x08, 0x25, 0x0e, 0x23, + 0x12, 0x6d, 0xc0, 0x56, 0x07, 0x1c, 0x47, 0x43, + 0xfb, 0x00, 0xdf, 0x19, 0x12, 0x4b, 0x3f, 0x21, + 0x58, 0x43, 0x3c, 0x00, 0x6c, 0xfc, 0x00, 0x00, + 0x11, 0x4b, 0xa9, 0x40, 0x0c, 0x1c, 0x38, 0x18, + 0xc0, 0x18, 0x14, 0x40, 0xec, 0x40, 0xc0, 0x11, + 0x60, 0x43, 0x1b, 0x0a, 0xc0, 0x18, 0x80, 0x12, + 0x03, 0xd1, 0x01, 0x20, 0x04, 0xe0, 0x00, 0x20, + 0xf8, 0xbd, 0x3f, 0x28, 0x00, 0xdd, 0x3f, 0x20, + 0x30, 0x60, 0xa8, 0x40, 0x08, 0x40, 0x8a, 0x43, + 0x10, 0x43, 0xf5, 0xe7, 0xcc, 0x59, 0x01, 0x00, + 0xdc, 0x58, 0x01, 0x00, 0x3c, 0x00, 0xa8, 0xfc, + 0x00, 0x00, 0x7c, 0x73, 0x01, 0x00, 0x7c, 0x59, + 0x01, 0x00, 0x06, 0x06, 0x00, 0x00, 0x26, 0x00, + 0x02, 0x00, 0x03, 0x48, 0x08, 0xb5, 0xc0, 0x88, + 0x00, 0xab, 0x18, 0x80, 0x00, 0x98, 0x08, 0xbd, + 0x00, 0x00, 0xa0, 0x58, 0x01, 0x00, 0xb0, 0xb5, + 0x0b, 0x4d, 0x09, 0x4c, 0x0e, 0x20, 0x6c, 0x60, + 0xff, 0xf7, 0x8d, 0xf9, 0x09, 0x49, 0x02, 0x1c, + 0xc8, 0x60, 0x01, 0x06, 0x09, 0x0e, 0x3c, 0x00, + 0xe4, 0xfc, 0x00, 0x00, 0x13, 0x3a, 0x02, 0x2a, + 0x02, 0xd9, 0x17, 0x38, 0x04, 0x28, 0x00, 0xd8, + 0x00, 0x21, 0x08, 0x1c, 0x6c, 0x60, 0xb0, 0xbd, + 0x04, 0x18, 0x02, 0x00, 0x60, 0x00, 0x07, 0x00, + 0x64, 0x73, 0x01, 0x00, 0x0a, 0x48, 0x98, 0xb5, + 0x02, 0x78, 0x13, 0x21, 0x14, 0x2a, 0x00, 0xd3, + 0x01, 0x70, 0x42, 0x78, 0x14, 0x2a, 0x00, 0xd3, + 0x41, 0x70, 0x06, 0x4c, 0x60, 0x68, 0xff, 0xf7, + 0x3c, 0x00, 0x20, 0xfd, 0x00, 0x00, 0xbd, 0xfe, + 0x00, 0x90, 0x00, 0xab, 0x18, 0x88, 0xe0, 0x80, + 0x00, 0xf0, 0x75, 0xff, 0x98, 0xbd, 0xa4, 0x58, + 0x01, 0x00, 0xa0, 0x58, 0x01, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x41, 0x78, 0x01, 0x20, 0xff, 0xf7, + 0xe6, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0xa6, 0x58, + 0x01, 0x00, 0x03, 0x48, 0x80, 0xb5, 0x01, 0x78, + 0x00, 0x20, 0xff, 0xf7, 0xdc, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xfd, 0x00, 0x00, + 0xa6, 0x58, 0x01, 0x00, 0xb0, 0xb5, 0x05, 0x4d, + 0x00, 0x24, 0x20, 0x1c, 0xff, 0xf7, 0x44, 0xf9, + 0x01, 0x34, 0x10, 0x2c, 0x01, 0xc5, 0xf8, 0xd3, + 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x44, 0x01, 0x00, + 0x04, 0x49, 0x80, 0xb5, 0x88, 0x70, 0x04, 0x49, + 0x80, 0x00, 0x09, 0x58, 0x07, 0x20, 0x04, 0xf0, + 0x0f, 0xf9, 0x80, 0xbd, 0x64, 0x73, 0x01, 0x00, + 0xd0, 0x58, 0x01, 0x00, 0x3c, 0x00, 0x98, 0xfd, + 0x00, 0x00, 0xb0, 0xb5, 0x3f, 0x24, 0x02, 0x1c, + 0x00, 0x2a, 0x01, 0xd1, 0x08, 0x20, 0x0b, 0x23, + 0x01, 0x2a, 0x01, 0xd1, 0x09, 0x20, 0x08, 0x23, + 0x25, 0x1c, 0x9d, 0x40, 0x00, 0x29, 0x00, 0xd1, + 0x01, 0x21, 0x3f, 0x29, 0x00, 0xd9, 0x21, 0x1c, + 0x99, 0x40, 0x0a, 0x1c, 0x29, 0x1c, 0xff, 0xf7, + 0x7c, 0xfc, 0xb0, 0xbd, 0x00, 0x00, 0x91, 0xb5, + 0x12, 0x49, 0x00, 0xab, 0x1a, 0x78, 0x3c, 0x00, + 0xd4, 0xfd, 0x00, 0x00, 0x08, 0x78, 0x11, 0x4c, + 0x80, 0x18, 0x00, 0x06, 0x00, 0x0e, 0x20, 0x70, + 0x49, 0x78, 0x5a, 0x78, 0x89, 0x18, 0x09, 0x06, + 0x09, 0x0e, 0x13, 0x22, 0x13, 0x28, 0x61, 0x70, + 0x00, 0xd9, 0x22, 0x70, 0x13, 0x29, 0x00, 0xd9, + 0x62, 0x70, 0x08, 0x49, 0x08, 0x48, 0x06, 0x39, + 0xc9, 0x88, 0x81, 0x80, 0x21, 0x78, 0x00, 0x20, + 0xff, 0xf7, 0x82, 0xfc, 0x61, 0x78, 0x01, 0x20, + 0x3c, 0x00, 0x10, 0xfe, 0x00, 0x00, 0xff, 0xf7, + 0x7e, 0xfc, 0x98, 0xbd, 0x00, 0x00, 0xa4, 0x58, + 0x01, 0x00, 0xa6, 0x58, 0x01, 0x00, 0x64, 0x73, + 0x01, 0x00, 0x70, 0xb5, 0x1d, 0x4d, 0x04, 0x1c, + 0x28, 0x78, 0x0e, 0x1c, 0x03, 0x28, 0x03, 0xd1, + 0x02, 0x21, 0x11, 0x20, 0xf1, 0xf7, 0x35, 0xfa, + 0x20, 0x1c, 0x00, 0xf0, 0x4e, 0xf8, 0x00, 0x28, + 0x25, 0xd0, 0x28, 0x78, 0x01, 0x28, 0x0a, 0xd1, + 0x68, 0x68, 0x3c, 0x00, 0x4c, 0xfe, 0x00, 0x00, + 0x00, 0x28, 0x07, 0xd0, 0x01, 0x21, 0x11, 0x20, + 0x03, 0xf0, 0xee, 0xfb, 0x01, 0x20, 0x69, 0x68, + 0xf0, 0xf7, 0xbd, 0xfa, 0x6c, 0x70, 0x6e, 0x60, + 0x20, 0x1c, 0xff, 0xf7, 0xc1, 0xfc, 0x04, 0x1c, + 0x00, 0xf0, 0xd4, 0xfe, 0x00, 0x2c, 0x02, 0xd0, + 0x68, 0x68, 0x00, 0x28, 0x02, 0xd1, 0xf6, 0xf7, + 0xd9, 0xf8, 0x70, 0xbd, 0x01, 0x20, 0x28, 0x70, + 0x01, 0x22, 0x21, 0x1c, 0x3c, 0x00, 0x88, 0xfe, + 0x00, 0x00, 0x11, 0x20, 0x03, 0xf0, 0x9f, 0xfb, + 0x70, 0xbd, 0x02, 0x21, 0x11, 0x20, 0xf1, 0xf7, + 0x06, 0xfa, 0x70, 0xbd, 0x00, 0x00, 0x9c, 0x73, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x28, 0x05, 0xd1, + 0x00, 0x29, 0x04, 0xd0, 0x01, 0x29, 0x01, 0xd1, + 0xf6, 0xf7, 0xbf, 0xf8, 0x80, 0xbd, 0x05, 0x49, + 0x08, 0x78, 0x03, 0x28, 0x02, 0xd0, 0x00, 0x20, + 0x08, 0x70, 0x80, 0xbd, 0x03, 0x21, 0x3c, 0x00, + 0xc4, 0xfe, 0x00, 0x00, 0x11, 0x20, 0xf1, 0xf7, + 0xed, 0xf9, 0x80, 0xbd, 0x9c, 0x73, 0x01, 0x00, + 0x01, 0x48, 0x40, 0x78, 0x70, 0x47, 0x00, 0x00, + 0x9c, 0x73, 0x01, 0x00, 0x01, 0x1c, 0x01, 0x39, + 0x01, 0x20, 0x0e, 0x29, 0x00, 0xd3, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, 0x13, 0x4c, + 0x20, 0x78, 0x01, 0x28, 0x0e, 0xd1, 0x60, 0x68, + 0x00, 0x28, 0x0d, 0xd0, 0x01, 0x21, 0x11, 0x20, + 0x3c, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0xf0, + 0x98, 0xfb, 0x01, 0x20, 0x61, 0x68, 0xf0, 0xf7, + 0x67, 0xfa, 0x00, 0x20, 0x60, 0x60, 0x20, 0x70, + 0x01, 0xe0, 0x03, 0x28, 0x0e, 0xd0, 0x00, 0x21, + 0x11, 0x20, 0x03, 0xf0, 0x8a, 0xfb, 0xff, 0xf7, + 0x24, 0xfc, 0xff, 0xf7, 0xc0, 0xfb, 0x05, 0x49, + 0x08, 0x7b, 0x40, 0x08, 0x40, 0x00, 0x08, 0x73, + 0x03, 0x20, 0x20, 0x70, 0x01, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xff, 0x00, 0x00, + 0x9c, 0x73, 0x01, 0x00, 0x88, 0x00, 0x07, 0x00, + 0x10, 0xb5, 0x0d, 0x4c, 0x20, 0x78, 0x03, 0x28, + 0x13, 0xd1, 0x00, 0x20, 0x20, 0x70, 0x0b, 0x48, + 0x01, 0x7b, 0x01, 0x22, 0x11, 0x43, 0x01, 0x73, + 0xff, 0xf7, 0x70, 0xfc, 0xff, 0xf7, 0x18, 0xfc, + 0x00, 0x28, 0x06, 0xd0, 0x02, 0x21, 0x21, 0x70, + 0x01, 0x1c, 0x00, 0x22, 0x11, 0x20, 0x03, 0xf0, + 0x2b, 0xfb, 0x01, 0x20, 0x3c, 0x00, 0x78, 0xff, + 0x00, 0x00, 0x10, 0xbd, 0x00, 0x00, 0x9c, 0x73, + 0x01, 0x00, 0x88, 0x00, 0x07, 0x00, 0x80, 0xb5, + 0x05, 0x49, 0x00, 0x28, 0x04, 0xd0, 0x00, 0x20, + 0x08, 0x60, 0x03, 0xf0, 0x5a, 0xfa, 0x80, 0xbd, + 0x01, 0x20, 0x08, 0x60, 0x80, 0xbd, 0x80, 0x5a, + 0x01, 0x00, 0xfe, 0xb5, 0x05, 0x1c, 0x80, 0x35, + 0x04, 0x1c, 0xa8, 0x68, 0x29, 0x79, 0x06, 0x68, + 0x20, 0x1c, 0xa0, 0x30, 0x02, 0x29, 0x3c, 0x00, + 0xb4, 0xff, 0x00, 0x00, 0x1c, 0xd1, 0x69, 0x79, + 0x08, 0x29, 0x01, 0xd0, 0x0c, 0x29, 0x17, 0xd1, + 0x01, 0x21, 0x61, 0x62, 0xa9, 0x68, 0x09, 0x68, + 0x09, 0x8b, 0x01, 0x82, 0xa9, 0x69, 0x01, 0x91, + 0x00, 0x8a, 0xc0, 0x06, 0x05, 0xd5, 0x60, 0x68, + 0x00, 0x88, 0x40, 0x05, 0x01, 0xd4, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x02, 0x90, 0x05, 0x20, + 0x01, 0xa9, 0x02, 0xf0, 0xb7, 0xf9, 0x02, 0xe0, + 0x3c, 0x00, 0xf0, 0xff, 0x00, 0x00, 0x00, 0x21, + 0x61, 0x62, 0x01, 0x82, 0xa9, 0x68, 0x1a, 0x23, + 0x0a, 0x89, 0x67, 0x6a, 0x18, 0x1c, 0x00, 0x2f, + 0x00, 0xd1, 0x18, 0x20, 0x10, 0x1a, 0x08, 0x81, + 0xa8, 0x68, 0x01, 0x68, 0x62, 0x6a, 0x00, 0x2a, + 0x00, 0xd1, 0x18, 0x23, 0xc9, 0x18, 0x01, 0x60, + 0xa8, 0x68, 0x41, 0xc4, 0x30, 0x88, 0x08, 0x3c, + 0x40, 0x04, 0x03, 0xd5, 0x20, 0x1c, 0xf7, 0xf7, + 0xbc, 0xf9, 0x3c, 0x00, 0x2c, 0x00, 0x01, 0x00, + 0xfe, 0xbd, 0x00, 0x21, 0xe1, 0x61, 0x30, 0x79, + 0xc0, 0x07, 0x03, 0xd4, 0x20, 0x1c, 0xf7, 0xf7, + 0x91, 0xfe, 0xf5, 0xe7, 0x20, 0x1c, 0xf7, 0xf7, + 0x43, 0xff, 0xf1, 0xe7, 0xf7, 0xb5, 0x05, 0x1c, + 0x0a, 0x30, 0x06, 0x1c, 0xf5, 0xf7, 0xa4, 0xfa, + 0x14, 0x4f, 0x04, 0x1c, 0x39, 0x88, 0xf2, 0xf7, + 0x83, 0xfe, 0x32, 0x88, 0x78, 0x68, 0x02, 0x80, + 0x72, 0x88, 0x02, 0x30, 0x3c, 0x00, 0x68, 0x00, + 0x01, 0x00, 0x02, 0x80, 0xb1, 0x88, 0x41, 0x80, + 0x69, 0x88, 0x02, 0x9a, 0x20, 0x1c, 0xfa, 0xf7, + 0xce, 0xfe, 0x0b, 0x4d, 0x08, 0x35, 0x68, 0x80, + 0xfb, 0xf7, 0x2b, 0xfe, 0x01, 0x21, 0x09, 0x03, + 0x00, 0x28, 0x28, 0x88, 0x01, 0xd0, 0x88, 0x43, + 0x00, 0xe0, 0x08, 0x43, 0x28, 0x80, 0x04, 0x48, + 0x00, 0x22, 0x00, 0x21, 0x14, 0x30, 0xf2, 0xf7, + 0x32, 0xfe, 0x20, 0x1c, 0xfc, 0xf7, 0x3c, 0x00, + 0xa4, 0x00, 0x01, 0x00, 0x85, 0xfa, 0xfe, 0xbd, + 0x24, 0x7b, 0x01, 0x00, 0x10, 0xb5, 0x13, 0x4c, + 0x11, 0x49, 0x20, 0x1c, 0xff, 0x30, 0x69, 0x30, + 0x0e, 0xc9, 0x0e, 0xc0, 0x20, 0x1c, 0xff, 0x30, + 0x24, 0x22, 0x75, 0x30, 0x0e, 0x49, 0xf0, 0xf7, + 0x17, 0xfa, 0x20, 0x1c, 0xff, 0x30, 0x3c, 0x22, + 0x99, 0x30, 0x0c, 0x49, 0xf0, 0xf7, 0x6c, 0xfa, + 0x20, 0x1c, 0xff, 0x30, 0x10, 0x22, 0xd5, 0x30, + 0x3c, 0x00, 0xe0, 0x00, 0x01, 0x00, 0x09, 0x49, + 0xf0, 0xf7, 0x09, 0xfa, 0x20, 0x1c, 0xff, 0x30, + 0x28, 0x22, 0xe5, 0x30, 0x07, 0x49, 0xf0, 0xf7, + 0x5e, 0xfa, 0x10, 0xbd, 0x00, 0x00, 0x00, 0x80, + 0x07, 0x00, 0x40, 0x63, 0x01, 0x00, 0x0c, 0x80, + 0x07, 0x00, 0x30, 0x80, 0x07, 0x00, 0x80, 0x80, + 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, 0xb0, 0xb5, + 0x00, 0x28, 0x3f, 0xd0, 0x21, 0x48, 0x41, 0x68, + 0x21, 0x4c, 0x3c, 0x00, 0x1c, 0x01, 0x01, 0x00, + 0x61, 0x60, 0xc1, 0x68, 0xe1, 0x60, 0x01, 0x69, + 0x21, 0x61, 0x80, 0x6a, 0xa0, 0x62, 0x1e, 0x49, + 0x1c, 0x48, 0x09, 0x68, 0x14, 0x38, 0x41, 0x64, + 0x1c, 0x48, 0x25, 0x1c, 0x3c, 0x35, 0x0f, 0xc8, + 0x0f, 0xc5, 0x20, 0x1c, 0x80, 0x22, 0x4c, 0x30, + 0x19, 0x49, 0xf0, 0xf7, 0x33, 0xfa, 0x14, 0x22, + 0x20, 0x1c, 0xcc, 0x30, 0x17, 0x49, 0xf0, 0xf7, + 0x2d, 0xfa, 0x38, 0x22, 0x3c, 0x00, 0x58, 0x01, + 0x01, 0x00, 0x20, 0x1c, 0xe0, 0x30, 0x15, 0x49, + 0xf0, 0xf7, 0x27, 0xfa, 0x20, 0x1c, 0xff, 0x30, + 0x50, 0x22, 0x19, 0x30, 0x13, 0x49, 0xf0, 0xf7, + 0x20, 0xfa, 0x83, 0x20, 0x80, 0x00, 0x14, 0x22, + 0x20, 0x18, 0x10, 0x49, 0xf0, 0xf7, 0x19, 0xfa, + 0x11, 0x20, 0x40, 0x01, 0x84, 0x22, 0x20, 0x18, + 0x0e, 0x49, 0xf0, 0xf7, 0x12, 0xfa, 0xff, 0xf7, + 0x8e, 0xff, 0xf8, 0xf7, 0x94, 0xfb, 0x3c, 0x00, + 0x94, 0x01, 0x01, 0x00, 0xb0, 0xbd, 0xff, 0xf7, + 0x89, 0xff, 0xb0, 0xbd, 0x00, 0x10, 0x07, 0x00, + 0x40, 0x63, 0x01, 0x00, 0x08, 0x20, 0x07, 0x00, + 0x40, 0x20, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x00, 0x40, 0x07, 0x00, 0x00, 0x50, 0x07, 0x00, + 0x00, 0x60, 0x07, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x00, 0x90, 0x07, 0x00, 0x0c, 0x49, 0x80, 0xb5, + 0x01, 0x20, 0x48, 0x60, 0x0a, 0x48, 0x14, 0x38, + 0x3c, 0x00, 0xd0, 0x01, 0x01, 0x00, 0x00, 0x78, + 0x01, 0x28, 0x04, 0xd0, 0x08, 0x48, 0x94, 0x38, + 0x40, 0x6f, 0x00, 0x28, 0x03, 0xd0, 0x00, 0x20, + 0x00, 0xf0, 0x1f, 0xf8, 0x80, 0xbd, 0x08, 0x68, + 0x00, 0x28, 0xfb, 0xd0, 0x03, 0x48, 0xf2, 0xf7, + 0x7a, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x98, 0x66, + 0x01, 0x00, 0xff, 0xff, 0x00, 0x00, 0x80, 0xb5, + 0x00, 0x28, 0x09, 0xd1, 0xf2, 0x21, 0x0f, 0x20, + 0x03, 0xf0, 0x3c, 0x00, 0x0c, 0x02, 0x01, 0x00, + 0x13, 0xfa, 0x00, 0x22, 0x0f, 0x21, 0xf1, 0x20, + 0x03, 0xf0, 0xcc, 0xfa, 0x80, 0xbd, 0x01, 0x20, + 0xf8, 0xf7, 0x6a, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x03, 0x20, 0x00, 0xf0, + 0xc9, 0xf9, 0x00, 0x21, 0x0f, 0x20, 0x03, 0xf0, + 0xff, 0xf9, 0xff, 0xf7, 0x65, 0xf8, 0x0b, 0x49, + 0x00, 0x20, 0x48, 0x74, 0xfb, 0xf7, 0xe6, 0xfa, + 0x09, 0x48, 0x00, 0x68, 0x3c, 0x00, 0x48, 0x02, + 0x01, 0x00, 0x00, 0x28, 0x03, 0xdc, 0x02, 0x21, + 0x40, 0x42, 0xff, 0xf7, 0x52, 0xfc, 0x04, 0x48, + 0x14, 0x30, 0x00, 0x68, 0x00, 0x28, 0x02, 0xd0, + 0x20, 0x1c, 0xf2, 0xf7, 0x42, 0xfe, 0x10, 0xbd, + 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, 0xd4, 0x7e, + 0x01, 0x00, 0x06, 0x49, 0x80, 0xb5, 0x09, 0x78, + 0x04, 0x29, 0x05, 0xd0, 0x05, 0x29, 0x03, 0xd0, + 0x06, 0x29, 0x01, 0xd0, 0x07, 0x29, 0x3c, 0x00, + 0x84, 0x02, 0x01, 0x00, 0x01, 0xd1, 0xfe, 0xf7, + 0xbd, 0xfd, 0x80, 0xbd, 0x74, 0x66, 0x01, 0x00, + 0x10, 0xb5, 0x09, 0x4c, 0xe0, 0x68, 0x00, 0x28, + 0x0b, 0xd1, 0x07, 0x48, 0x2c, 0x38, 0x00, 0x8a, + 0xc0, 0x07, 0x04, 0xd5, 0x00, 0x21, 0x01, 0x20, + 0x62, 0x68, 0xf9, 0xf7, 0xc9, 0xfa, 0x01, 0x20, + 0xe0, 0x60, 0x01, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0xf4, 0x6e, 0x01, 0x00, 0x8c, 0xb5, 0x02, 0x1c, + 0x3c, 0x00, 0xc0, 0x02, 0x01, 0x00, 0x08, 0x1c, + 0x11, 0x1c, 0xfd, 0xf7, 0x28, 0xff, 0x01, 0x90, + 0x00, 0x28, 0x05, 0xd0, 0x17, 0x20, 0x00, 0xab, + 0x18, 0x80, 0x68, 0x46, 0xfd, 0xf7, 0xff, 0xf8, + 0x8c, 0xbd, 0xf1, 0xb5, 0x2e, 0x4c, 0xae, 0xb0, + 0x00, 0x25, 0x25, 0x63, 0x20, 0x69, 0x01, 0x28, + 0x03, 0xd1, 0x01, 0xa8, 0x01, 0xf0, 0xa1, 0xf8, + 0x4e, 0xe0, 0x01, 0x26, 0x28, 0x4f, 0x26, 0x70, + 0x50, 0x3f, 0x3c, 0x00, 0xfc, 0x02, 0x01, 0x00, + 0xb8, 0x69, 0xf8, 0xf7, 0x4f, 0xf8, 0x25, 0x49, + 0x2c, 0x39, 0x00, 0x28, 0x1d, 0xd0, 0xe0, 0x6a, + 0x01, 0x28, 0x1a, 0xd1, 0x08, 0x8a, 0x0f, 0x1c, + 0x80, 0x07, 0x04, 0xd5, 0x00, 0x21, 0x02, 0x20, + 0x62, 0x68, 0xf9, 0xf7, 0x8f, 0xfa, 0x38, 0x8a, + 0x00, 0x07, 0x07, 0xd5, 0xe0, 0x68, 0x01, 0x28, + 0x04, 0xd1, 0x00, 0x21, 0x08, 0x20, 0x62, 0x68, + 0xf9, 0xf7, 0x84, 0xfa, 0x3c, 0x00, 0x38, 0x03, + 0x01, 0x00, 0x00, 0x22, 0x18, 0x21, 0x82, 0x20, + 0x26, 0x63, 0x03, 0xf0, 0x36, 0xfa, 0x25, 0xe0, + 0x08, 0x8a, 0x0e, 0x1c, 0x80, 0x07, 0x04, 0xd5, + 0x00, 0x21, 0x02, 0x20, 0x62, 0x68, 0xf9, 0xf7, + 0x74, 0xfa, 0x30, 0x8a, 0x00, 0x07, 0x07, 0xd5, + 0xe0, 0x68, 0x01, 0x28, 0x04, 0xd1, 0x00, 0x21, + 0x08, 0x20, 0x62, 0x68, 0xf9, 0xf7, 0x69, 0xfa, + 0x30, 0x8a, 0x40, 0x07, 0x04, 0xd5, 0x3c, 0x00, + 0x74, 0x03, 0x01, 0x00, 0x00, 0x22, 0x00, 0x21, + 0x04, 0x20, 0xf9, 0xf7, 0x61, 0xfa, 0x2e, 0x98, + 0x01, 0x28, 0x04, 0xd0, 0x1e, 0x95, 0x09, 0x21, + 0x1b, 0xa8, 0xff, 0xf7, 0x97, 0xff, 0xe5, 0x62, + 0xbd, 0x61, 0xe5, 0x60, 0x2f, 0xb0, 0xf0, 0xbd, + 0xf4, 0x6e, 0x01, 0x00, 0x80, 0xb5, 0x07, 0x20, + 0xfe, 0xf7, 0xa0, 0xfe, 0x00, 0x21, 0x0f, 0x20, + 0x03, 0xf0, 0x44, 0xf9, 0x0c, 0x48, 0x01, 0x78, + 0x3c, 0x00, 0xb0, 0x03, 0x01, 0x00, 0x00, 0x29, + 0x0f, 0xd0, 0x02, 0x21, 0x01, 0x70, 0x88, 0x38, + 0x00, 0x78, 0x00, 0x28, 0x04, 0xd0, 0x07, 0x49, + 0x10, 0x31, 0x48, 0x7c, 0x01, 0x30, 0x48, 0x74, + 0xf2, 0x22, 0x0f, 0x20, 0x05, 0x49, 0x03, 0xf0, + 0xfc, 0xf8, 0x00, 0x22, 0x0f, 0x21, 0xf3, 0x20, + 0x03, 0xf0, 0xe9, 0xf9, 0x80, 0xbd, 0x74, 0x66, + 0x01, 0x00, 0x80, 0x84, 0x1e, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x3c, 0x00, 0xec, 0x03, 0x01, 0x00, + 0xf2, 0x21, 0x0f, 0x20, 0x03, 0xf0, 0x20, 0xf9, + 0x01, 0x2c, 0x0a, 0xd1, 0x08, 0x48, 0x08, 0x49, + 0x00, 0x68, 0x14, 0x39, 0x00, 0x28, 0x05, 0xd0, + 0xc8, 0x78, 0x02, 0x28, 0x02, 0xd1, 0xf7, 0xf7, + 0xaf, 0xfa, 0x10, 0xbd, 0x00, 0x20, 0x48, 0x70, + 0x05, 0x20, 0xfe, 0xf7, 0x65, 0xfe, 0x10, 0xbd, + 0x98, 0x66, 0x01, 0x00, 0xf8, 0xb5, 0x28, 0x4e, + 0x30, 0x21, 0x35, 0x1c, 0x3c, 0x00, 0x28, 0x04, + 0x01, 0x00, 0x60, 0x35, 0x28, 0x89, 0x89, 0x5d, + 0x88, 0x42, 0x03, 0xd1, 0x00, 0x20, 0xff, 0xf7, + 0xf6, 0xfe, 0xf8, 0xbd, 0x34, 0x1c, 0x70, 0x34, + 0x01, 0x21, 0x21, 0x70, 0x41, 0x18, 0x80, 0x19, + 0x30, 0x30, 0x29, 0x81, 0x40, 0x78, 0x1d, 0x4f, + 0x18, 0x3f, 0x38, 0x70, 0x00, 0x28, 0x08, 0xd0, + 0x00, 0x21, 0xfb, 0xf7, 0xc2, 0xf9, 0x00, 0x28, + 0x07, 0xd1, 0x20, 0x78, 0xff, 0xf7, 0x3c, 0x00, + 0x64, 0x04, 0x01, 0x00, 0x9b, 0xff, 0xe7, 0xe7, + 0x01, 0x21, 0x0f, 0x20, 0xf0, 0xf7, 0x1a, 0xff, + 0x14, 0x48, 0x01, 0x21, 0x80, 0x30, 0x81, 0x70, + 0x38, 0x69, 0xfb, 0xf7, 0x55, 0xfa, 0x20, 0x73, + 0x00, 0x21, 0x0f, 0x20, 0x03, 0xf0, 0xd6, 0xf8, + 0x70, 0x7a, 0x01, 0x28, 0x0e, 0xd1, 0x0e, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x04, 0xd0, 0x38, 0x78, + 0x02, 0xf0, 0xda, 0xfa, 0x00, 0x28, 0x05, 0xd0, + 0x3c, 0x00, 0xa0, 0x04, 0x01, 0x00, 0x30, 0x7f, + 0x60, 0x73, 0x03, 0x20, 0x20, 0x70, 0x71, 0x89, + 0x05, 0xe0, 0x05, 0x20, 0x20, 0x70, 0xa8, 0x88, + 0xfa, 0xf7, 0x3b, 0xfb, 0x01, 0x1c, 0x00, 0x22, + 0x0f, 0x20, 0x03, 0xf0, 0x86, 0xf8, 0xba, 0xe7, + 0x00, 0x00, 0x04, 0x66, 0x01, 0x00, 0xe4, 0x62, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x02, 0xf0, + 0x6c, 0xfc, 0x36, 0x4b, 0x19, 0x1c, 0xa0, 0x31, + 0x0a, 0x78, 0x3c, 0x00, 0xdc, 0x04, 0x01, 0x00, + 0x10, 0x2a, 0x02, 0xd2, 0x0a, 0x79, 0x10, 0x2a, + 0x01, 0xd3, 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, + 0x30, 0x4e, 0xca, 0x79, 0x80, 0x36, 0x01, 0x2c, + 0x12, 0xd0, 0x00, 0x25, 0x02, 0x2c, 0x2e, 0xd0, + 0x04, 0x2c, 0x3c, 0xd1, 0x5c, 0x6b, 0x00, 0x2c, + 0x39, 0xd1, 0x9c, 0x6f, 0x00, 0x1b, 0x2a, 0x4c, + 0xa0, 0x42, 0x34, 0xd9, 0xb2, 0x68, 0x98, 0x6a, + 0x82, 0x42, 0x31, 0xd0, 0x3c, 0x00, 0x18, 0x05, + 0x01, 0x00, 0x4d, 0x72, 0x34, 0xe0, 0xb0, 0x68, + 0x9c, 0x6a, 0x02, 0x22, 0xa0, 0x42, 0x21, 0xd1, + 0x58, 0x6b, 0x00, 0x28, 0x1e, 0xd1, 0x00, 0x2d, + 0x1c, 0xd1, 0x48, 0x7a, 0x19, 0x28, 0x20, 0xd0, + 0x34, 0x68, 0x98, 0x6f, 0x64, 0x00, 0x00, 0x1b, + 0x74, 0x68, 0x00, 0x19, 0xff, 0x30, 0x1c, 0x4c, + 0x39, 0x30, 0xa0, 0x42, 0x16, 0xd2, 0x48, 0x79, + 0x8c, 0x79, 0x00, 0x19, 0x30, 0x28, 0x3c, 0x00, + 0x54, 0x05, 0x01, 0x00, 0x11, 0xd3, 0x10, 0x22, + 0x0f, 0xe0, 0x5c, 0x6b, 0x01, 0x2c, 0x06, 0xd1, + 0xb0, 0x68, 0x9a, 0x6a, 0x90, 0x42, 0x00, 0xd1, + 0x4d, 0x72, 0x00, 0x22, 0x05, 0xe0, 0x9c, 0x6f, + 0x00, 0x1b, 0x12, 0x4c, 0xa0, 0x42, 0x00, 0xd3, + 0x20, 0x22, 0x06, 0xe0, 0x4a, 0x7a, 0x19, 0x2a, + 0x01, 0xd2, 0x01, 0x32, 0x4a, 0x72, 0x20, 0x22, + 0xb0, 0x60, 0x30, 0x68, 0x9b, 0x6f, 0x98, 0x42, + 0x3c, 0x00, 0x90, 0x05, 0x01, 0x00, 0x04, 0xd1, + 0x00, 0x2a, 0x00, 0xd1, 0x48, 0x79, 0x4a, 0x71, + 0x06, 0xe0, 0x10, 0x2a, 0x04, 0xd3, 0x70, 0x60, + 0x33, 0x60, 0x48, 0x79, 0x88, 0x71, 0xf6, 0xe7, + 0xca, 0x71, 0x70, 0xbd, 0x00, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0xa3, 0x04, 0x00, 0x00, 0x71, 0x02, + 0x00, 0x00, 0x35, 0x0c, 0x00, 0x00, 0x05, 0x48, + 0x80, 0xb5, 0x81, 0x7b, 0x00, 0x29, 0x05, 0xd0, + 0x00, 0x21, 0x3c, 0x00, 0xcc, 0x05, 0x01, 0x00, + 0x81, 0x73, 0x03, 0x49, 0x0f, 0x20, 0x01, 0xf0, + 0x0f, 0xff, 0x80, 0xbd, 0x74, 0x66, 0x01, 0x00, + 0xe9, 0x03, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x02, 0xf0, 0xe2, 0xfb, 0x05, 0x1c, 0x38, 0x4e, + 0x20, 0x1c, 0x37, 0x49, 0x34, 0x1c, 0xa0, 0x34, + 0x10, 0x22, 0x44, 0x39, 0x01, 0x28, 0x2c, 0xd0, + 0x04, 0x28, 0x4e, 0xd1, 0x37, 0x1c, 0x74, 0x36, + 0x09, 0xce, 0x26, 0x78, 0x3c, 0x00, 0x08, 0x06, + 0x01, 0x00, 0xc0, 0x1a, 0x20, 0x2e, 0x04, 0xd1, + 0x30, 0x4e, 0xb0, 0x42, 0x01, 0xd9, 0x00, 0x26, + 0x4e, 0x61, 0x3e, 0x1c, 0x3f, 0x6c, 0x00, 0x2f, + 0x48, 0xd1, 0x77, 0x6c, 0x00, 0x2f, 0x45, 0xd1, + 0xb7, 0x6a, 0x00, 0x2f, 0x3d, 0xd0, 0x77, 0x6b, + 0x00, 0x2f, 0x3a, 0xd0, 0x27, 0x4f, 0xb8, 0x42, + 0x37, 0xd2, 0x60, 0x78, 0x10, 0x28, 0x06, 0xd3, + 0xf0, 0x6f, 0x18, 0x1a, 0x24, 0x4b, 0x3c, 0x00, + 0x44, 0x06, 0x01, 0x00, 0x98, 0x42, 0x01, 0xd2, + 0xe2, 0x70, 0xf5, 0x66, 0x48, 0x69, 0x06, 0x28, + 0x2f, 0xd2, 0x01, 0x30, 0x2c, 0xe0, 0x20, 0x78, + 0x20, 0x28, 0x01, 0xd1, 0x06, 0x23, 0x4b, 0x61, + 0x02, 0x23, 0x23, 0x71, 0xb3, 0x6a, 0x00, 0x2b, + 0x19, 0xd0, 0x49, 0x69, 0x03, 0x29, 0x16, 0xd9, + 0x71, 0x6b, 0x73, 0x6d, 0x59, 0x40, 0x12, 0xd0, + 0xe1, 0x78, 0x10, 0x29, 0x10, 0xd3, 0x61, 0x78, + 0x3c, 0x00, 0x80, 0x06, 0x01, 0x00, 0x33, 0x1c, + 0x10, 0x29, 0x0c, 0xd3, 0xd9, 0x6f, 0x69, 0x1a, + 0x13, 0x4d, 0xa9, 0x42, 0x07, 0xd2, 0x58, 0x6c, + 0x00, 0x28, 0x02, 0xd0, 0x98, 0x6c, 0x00, 0x28, + 0x00, 0xd1, 0x22, 0x71, 0xf8, 0xbd, 0x02, 0x28, + 0xfc, 0xd1, 0x22, 0x70, 0xfa, 0xe7, 0x48, 0x69, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x38, 0x48, 0x61, + 0x0a, 0x49, 0xf0, 0x6e, 0x40, 0x18, 0x02, 0xf0, + 0xb0, 0xfa, 0x3c, 0x00, 0xbc, 0x06, 0x01, 0x00, + 0x00, 0x28, 0xee, 0xd0, 0x01, 0x20, 0xe0, 0x70, + 0x06, 0x48, 0x28, 0x18, 0xf0, 0x66, 0xe8, 0xe7, + 0xa4, 0x6c, 0x01, 0x00, 0xe2, 0x04, 0x00, 0x00, + 0x1a, 0x06, 0x00, 0x00, 0x53, 0x07, 0x00, 0x00, + 0x00, 0x2d, 0x31, 0x01, 0x00, 0x5a, 0x62, 0x02, + 0x80, 0xb5, 0x41, 0x68, 0x09, 0x79, 0xc9, 0x07, + 0x13, 0xd5, 0xc1, 0x69, 0x00, 0x29, 0x0d, 0xd0, + 0x89, 0x79, 0x02, 0x29, 0x3c, 0x00, 0xf8, 0x06, + 0x01, 0x00, 0x0a, 0xd1, 0x08, 0x21, 0x01, 0x86, + 0x01, 0x1c, 0x38, 0x31, 0x81, 0x62, 0x02, 0x1c, + 0x06, 0x48, 0x04, 0x49, 0xf9, 0xf7, 0xfd, 0xfc, + 0x80, 0xbd, 0xf7, 0xf7, 0xdc, 0xfb, 0x80, 0xbd, + 0xf7, 0xf7, 0x23, 0xfb, 0x80, 0xbd, 0xb9, 0x71, + 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, 0x10, 0xb5, + 0x00, 0x24, 0x00, 0x28, 0x03, 0xd0, 0x02, 0xf0, + 0xe8, 0xfe, 0x00, 0x28, 0x17, 0xd0, 0x3c, 0x00, + 0x34, 0x07, 0x01, 0x00, 0x0c, 0x4c, 0x01, 0x20, + 0xa0, 0x72, 0x20, 0x68, 0x00, 0x21, 0x41, 0x62, + 0x0a, 0x49, 0x02, 0x68, 0xc9, 0x78, 0x60, 0x32, + 0x91, 0x71, 0x21, 0x89, 0x01, 0x31, 0x21, 0x81, + 0x00, 0x68, 0x40, 0x30, 0x81, 0x83, 0xfb, 0xf7, + 0x31, 0xfc, 0x20, 0x68, 0x00, 0x68, 0xfc, 0xf7, + 0xa1, 0xf9, 0x01, 0x24, 0x20, 0x1c, 0x10, 0xbd, + 0x14, 0x7a, 0x01, 0x00, 0x0e, 0x61, 0x01, 0x00, + 0x3c, 0x00, 0x70, 0x07, 0x01, 0x00, 0x7f, 0xb5, + 0x06, 0x1c, 0x1e, 0x48, 0x1d, 0x1c, 0x43, 0x88, + 0x02, 0x88, 0x1c, 0x21, 0x00, 0x20, 0x90, 0xb0, + 0xf0, 0xf7, 0x45, 0xff, 0x03, 0x90, 0x04, 0x68, + 0xff, 0x21, 0x01, 0x31, 0x21, 0x80, 0x08, 0x20, + 0x60, 0x80, 0x06, 0x20, 0x20, 0x71, 0x04, 0x20, + 0x60, 0x71, 0xc0, 0x01, 0x00, 0x2d, 0x00, 0xd1, + 0x08, 0x1c, 0xe0, 0x80, 0x01, 0xa8, 0x02, 0x30, + 0x31, 0x1c, 0x3c, 0x00, 0xac, 0x07, 0x01, 0x00, + 0x05, 0x1c, 0xfa, 0xf7, 0x5f, 0xfa, 0x10, 0x49, + 0x68, 0x46, 0xfa, 0xf7, 0x5b, 0xfa, 0x20, 0x1c, + 0x08, 0x30, 0x69, 0x46, 0xfa, 0xf7, 0x56, 0xfa, + 0x29, 0x1c, 0x20, 0x1c, 0x12, 0x30, 0xfa, 0xf7, + 0x51, 0xfa, 0x10, 0xab, 0x98, 0x88, 0x00, 0x22, + 0x01, 0x21, 0x20, 0x83, 0xd8, 0x88, 0x60, 0x83, + 0x18, 0x89, 0xe0, 0x81, 0x58, 0x89, 0x20, 0x82, + 0x68, 0x46, 0xf9, 0xf7, 0x3c, 0x00, 0xe8, 0x07, + 0x01, 0x00, 0x17, 0xff, 0x14, 0xb0, 0x70, 0xbd, + 0x00, 0x00, 0x14, 0x6e, 0x01, 0x00, 0x12, 0x61, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x18, 0x48, + 0x25, 0x1c, 0x00, 0x78, 0x60, 0x35, 0x80, 0x07, + 0x00, 0x28, 0x08, 0xda, 0xe8, 0x79, 0x00, 0x28, + 0x05, 0xd0, 0xf4, 0xf7, 0x70, 0xff, 0x01, 0x1c, + 0x20, 0x1c, 0x00, 0xf0, 0x78, 0xf9, 0x29, 0x88, + 0x2e, 0x20, 0x00, 0x5d, 0xf2, 0xf7, 0x3c, 0x00, + 0x24, 0x08, 0x01, 0x00, 0x9f, 0xfa, 0xe8, 0x79, + 0x00, 0x28, 0x0b, 0xd1, 0x20, 0x1c, 0x40, 0x30, + 0x01, 0x8b, 0x22, 0x69, 0x11, 0x80, 0x41, 0x8b, + 0x22, 0x69, 0x51, 0x80, 0x80, 0x8b, 0x21, 0x69, + 0xc8, 0x82, 0x07, 0xe0, 0x01, 0x28, 0x05, 0xd1, + 0x20, 0x69, 0x01, 0x22, 0x01, 0x88, 0xd2, 0x02, + 0x11, 0x43, 0x01, 0x80, 0x6a, 0x7a, 0xe0, 0x68, + 0x02, 0x49, 0xf2, 0xf7, 0x53, 0xfa, 0xb0, 0xbd, + 0x3c, 0x00, 0x60, 0x08, 0x01, 0x00, 0x1d, 0x75, + 0x01, 0x00, 0xd1, 0x4f, 0x00, 0x00, 0x90, 0xb5, + 0x04, 0x1c, 0x38, 0x23, 0x0c, 0x49, 0x58, 0x43, + 0x43, 0x18, 0x85, 0xb0, 0x00, 0x20, 0x0a, 0x49, + 0x02, 0x90, 0x18, 0x1c, 0x01, 0x22, 0x03, 0x91, + 0x09, 0x49, 0x04, 0x92, 0x30, 0x30, 0x42, 0x78, + 0x09, 0x88, 0x01, 0x92, 0x00, 0x91, 0x01, 0x78, + 0x5a, 0x6b, 0x0c, 0x33, 0x20, 0x1c, 0xfb, 0xf7, + 0x7c, 0xf8, 0x3c, 0x00, 0x9c, 0x08, 0x01, 0x00, + 0x05, 0xb0, 0x90, 0xbd, 0xd4, 0xe4, 0x01, 0x00, + 0x5d, 0x4e, 0x00, 0x00, 0x48, 0x7b, 0x01, 0x00, + 0x90, 0xb5, 0x85, 0xb0, 0x03, 0x1c, 0x00, 0x20, + 0x02, 0x90, 0x0a, 0x49, 0x18, 0x1c, 0x00, 0x22, + 0x04, 0x92, 0x60, 0x30, 0x03, 0x91, 0xc2, 0x79, + 0x01, 0x88, 0x01, 0x92, 0x00, 0x91, 0x5a, 0x6a, + 0xdc, 0x68, 0x20, 0x33, 0x99, 0x7b, 0x40, 0x7a, + 0x23, 0x1c, 0xfb, 0xf7, 0x3c, 0x00, 0xd8, 0x08, + 0x01, 0x00, 0x5d, 0xf8, 0x05, 0xb0, 0x90, 0xbd, + 0x00, 0x00, 0x0d, 0x4f, 0x00, 0x00, 0x07, 0x49, + 0x80, 0xb5, 0x88, 0x6a, 0x00, 0x28, 0x08, 0xd1, + 0x01, 0x20, 0x88, 0x62, 0xf0, 0xf7, 0xaf, 0xfc, + 0x01, 0x1c, 0x03, 0x48, 0x00, 0x22, 0xf2, 0xf7, + 0xb8, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x41, 0xe4, 0x00, 0x00, 0xf0, 0xb5, + 0x9b, 0xb0, 0x00, 0x28, 0x20, 0xd0, 0x3c, 0x00, + 0x14, 0x09, 0x01, 0x00, 0x01, 0x1c, 0x08, 0xa8, + 0xfc, 0xf7, 0xb2, 0xfd, 0x01, 0x20, 0x11, 0x90, + 0x03, 0x20, 0x10, 0xad, 0x28, 0x72, 0x04, 0x20, + 0x68, 0x72, 0x05, 0xa8, 0x00, 0x22, 0x69, 0x46, + 0xf4, 0xf7, 0x00, 0xff, 0x00, 0x24, 0x00, 0x26, + 0x05, 0xa9, 0x00, 0x20, 0xf9, 0xf7, 0xfc, 0xfa, + 0x69, 0x46, 0xf9, 0xf7, 0xf9, 0xfa, 0x0b, 0x90, + 0x08, 0xa8, 0xfc, 0xf7, 0xbb, 0xfd, 0x01, 0x34, + 0x3c, 0x00, 0x50, 0x09, 0x01, 0x00, 0x02, 0x2c, + 0x2e, 0x72, 0xf0, 0xdb, 0x1b, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0x90, 0xb5, 0x04, 0x1c, 0x4c, 0x23, + 0x0c, 0x49, 0x58, 0x43, 0x43, 0x18, 0x85, 0xb0, + 0x00, 0x20, 0x0a, 0x49, 0x02, 0x90, 0x00, 0x22, + 0x04, 0x92, 0x3c, 0x20, 0x03, 0x91, 0xc2, 0x5c, + 0x08, 0x48, 0x41, 0x88, 0x01, 0x92, 0x41, 0x20, + 0x00, 0x91, 0xc1, 0x5c, 0x5a, 0x68, 0x08, 0x33, + 0x20, 0x1c, 0x3c, 0x00, 0x8c, 0x09, 0x01, 0x00, + 0xfb, 0xf7, 0x02, 0xf8, 0x05, 0xb0, 0x90, 0xbd, + 0x58, 0xe3, 0x01, 0x00, 0x75, 0x4f, 0x00, 0x00, + 0x3c, 0x7c, 0x01, 0x00, 0xf8, 0xb5, 0x0e, 0x1c, + 0x22, 0x4c, 0x38, 0x21, 0x17, 0x1c, 0x05, 0x1c, + 0x20, 0x1c, 0xef, 0xf7, 0x75, 0xfd, 0x23, 0x1c, + 0x25, 0x33, 0x21, 0x1c, 0x24, 0x31, 0x10, 0x20, + 0x6a, 0x46, 0xf9, 0xf7, 0x1d, 0xf8, 0x00, 0xab, + 0x18, 0x88, 0x07, 0x21, 0x3c, 0x00, 0xc8, 0x09, + 0x01, 0x00, 0x1a, 0x4a, 0x02, 0x38, 0x20, 0x84, + 0x20, 0x1c, 0x20, 0x30, 0x81, 0x70, 0xc5, 0x70, + 0x11, 0x1c, 0x06, 0x73, 0x47, 0x73, 0x34, 0x31, + 0x21, 0x63, 0x30, 0x32, 0x62, 0x63, 0x01, 0x79, + 0x25, 0x1c, 0x10, 0x35, 0x21, 0x81, 0x20, 0x60, + 0xe5, 0x60, 0x18, 0x88, 0x40, 0x1a, 0x20, 0x83, + 0x20, 0x1c, 0x28, 0x30, 0x20, 0x61, 0x20, 0x1c, + 0xf9, 0xf7, 0x11, 0xf8, 0x0d, 0x48, 0x3c, 0x00, + 0x04, 0x0a, 0x01, 0x00, 0x00, 0x68, 0x00, 0x28, + 0x07, 0xd0, 0x06, 0x21, 0x20, 0x1c, 0xf8, 0xf7, + 0x47, 0xfd, 0x10, 0x21, 0x28, 0x1c, 0xf8, 0xf7, + 0x43, 0xfd, 0x08, 0x48, 0x02, 0x21, 0x01, 0x62, + 0x44, 0x62, 0x01, 0x21, 0x01, 0x62, 0x06, 0x48, + 0x00, 0x68, 0xef, 0xf7, 0xd5, 0xfc, 0xf8, 0xbd, + 0x8c, 0x8e, 0x01, 0x00, 0xe4, 0xfe, 0x01, 0x00, + 0xcc, 0x5c, 0x01, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x3c, 0x00, 0x40, 0x0a, 0x01, 0x00, 0x5c, 0x5b, + 0x01, 0x00, 0xf0, 0xb5, 0x06, 0x1c, 0x40, 0x36, + 0x31, 0x8b, 0x04, 0x1c, 0x25, 0x1c, 0x08, 0x07, + 0x80, 0x0f, 0x60, 0x35, 0x01, 0x28, 0x85, 0xb0, + 0x3b, 0xd0, 0xe8, 0x79, 0x00, 0x28, 0x05, 0xd1, + 0x20, 0x69, 0x01, 0x80, 0xb0, 0x8b, 0x21, 0x69, + 0xc8, 0x82, 0x07, 0xe0, 0x01, 0x28, 0x05, 0xd1, + 0x20, 0x69, 0x01, 0x22, 0x01, 0x88, 0xd2, 0x02, + 0x11, 0x43, 0x3c, 0x00, 0x7c, 0x0a, 0x01, 0x00, + 0x01, 0x80, 0x20, 0x48, 0x00, 0x78, 0x80, 0x07, + 0x26, 0xd5, 0xe8, 0x79, 0x00, 0x28, 0x23, 0xd0, + 0xa0, 0x6b, 0x00, 0x28, 0x1c, 0xd0, 0xf4, 0xf7, + 0x2f, 0xfe, 0x00, 0x28, 0x09, 0xd0, 0xb8, 0x21, + 0x09, 0x58, 0x00, 0x29, 0x05, 0xd0, 0x30, 0x21, + 0x09, 0x5d, 0xb4, 0x30, 0x08, 0x18, 0x07, 0x7a, + 0x00, 0xe0, 0x00, 0x27, 0x01, 0x21, 0x38, 0x1c, + 0xfa, 0xf7, 0x86, 0xf9, 0x3c, 0x00, 0xb8, 0x0a, + 0x01, 0x00, 0x04, 0x90, 0x20, 0x69, 0x04, 0x30, + 0x39, 0x1c, 0xf4, 0xf7, 0x6c, 0xfd, 0x04, 0x99, + 0xfa, 0xf7, 0xd3, 0xf9, 0x02, 0xe0, 0x20, 0x1c, + 0xf7, 0xf7, 0xf9, 0xfb, 0x70, 0x83, 0x70, 0x8b, + 0x21, 0x69, 0x00, 0x22, 0x48, 0x80, 0x09, 0x49, + 0x0a, 0x48, 0x04, 0x92, 0x03, 0x91, 0x02, 0x90, + 0xea, 0x79, 0x29, 0x88, 0x01, 0x92, 0x00, 0x91, + 0x62, 0x6a, 0xe3, 0x68, 0x20, 0x34, 0x3c, 0x00, + 0xf4, 0x0a, 0x01, 0x00, 0xa1, 0x7b, 0x68, 0x7a, + 0xfa, 0xf7, 0x4c, 0xff, 0x05, 0xb0, 0xf0, 0xbd, + 0x1d, 0x75, 0x01, 0x00, 0xd1, 0x4f, 0x00, 0x00, + 0xdd, 0x2f, 0x01, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0x26, 0x1c, 0x01, 0x20, 0x20, 0x36, 0x00, 0x29, + 0x02, 0x90, 0x2e, 0xd0, 0x58, 0x20, 0x00, 0x5b, + 0x00, 0x07, 0x80, 0x0f, 0x01, 0x28, 0x01, 0xd1, + 0xcc, 0x31, 0x00, 0xe0, 0xb4, 0x31, 0x48, 0x68, + 0x3c, 0x00, 0x30, 0x0b, 0x01, 0x00, 0x0d, 0x1c, + 0x00, 0x28, 0x24, 0xd0, 0x20, 0x1c, 0x60, 0x30, + 0xc2, 0x79, 0x01, 0x21, 0x01, 0x2a, 0x00, 0xd0, + 0x00, 0x21, 0x27, 0x1c, 0x62, 0x6d, 0x30, 0x37, + 0x00, 0x2a, 0x04, 0xd0, 0x3a, 0x1c, 0x28, 0x1c, + 0xf6, 0xf7, 0xe7, 0xfd, 0x07, 0xe0, 0x42, 0x7a, + 0x23, 0x1c, 0x68, 0x33, 0x00, 0x92, 0x3a, 0x1c, + 0x28, 0x1c, 0xf6, 0xf7, 0x9a, 0xfd, 0x02, 0x90, + 0x38, 0x78, 0x3c, 0x00, 0x6c, 0x0b, 0x01, 0x00, + 0x40, 0x19, 0x00, 0x7a, 0x01, 0x21, 0xb0, 0x73, + 0xfa, 0xf7, 0x26, 0xf9, 0x01, 0xe0, 0x00, 0x20, + 0xb0, 0x73, 0x60, 0x62, 0xb0, 0x7b, 0x0d, 0x28, + 0x01, 0xd9, 0xf0, 0xf7, 0xbb, 0xfb, 0x02, 0x98, + 0xfe, 0xbd, 0x00, 0x00, 0xff, 0xb5, 0x04, 0x1c, + 0x80, 0x30, 0x25, 0x1c, 0x5e, 0x35, 0x00, 0x78, + 0xae, 0x1d, 0xaf, 0x1f, 0x00, 0x28, 0x83, 0xb0, + 0x12, 0xd1, 0xf4, 0xf7, 0x3c, 0x00, 0xa8, 0x0b, + 0x01, 0x00, 0xc7, 0xfb, 0x00, 0x28, 0x07, 0xd0, + 0x06, 0x98, 0x05, 0x99, 0x02, 0x90, 0x04, 0x98, + 0x01, 0x90, 0xa6, 0x61, 0x67, 0x61, 0x0d, 0xe0, + 0x04, 0x98, 0x06, 0x99, 0x02, 0x90, 0x05, 0x98, + 0x01, 0x90, 0x66, 0x61, 0x05, 0xe0, 0x04, 0xa9, + 0x03, 0xc9, 0x02, 0x90, 0x06, 0x98, 0x01, 0x90, + 0x67, 0x61, 0xa5, 0x61, 0x06, 0x22, 0x38, 0x1c, + 0xef, 0xf7, 0x8b, 0xfc, 0x06, 0x22, 0x3c, 0x00, + 0xe4, 0x0b, 0x01, 0x00, 0x28, 0x1c, 0x02, 0x99, + 0xef, 0xf7, 0x86, 0xfc, 0x06, 0x22, 0x30, 0x1c, + 0x01, 0x99, 0xef, 0xf7, 0x81, 0xfc, 0x07, 0xb0, + 0xf0, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x05, 0x28, 0x01, 0xd3, 0xf0, 0xf7, + 0x7b, 0xfb, 0x02, 0x49, 0xa0, 0x00, 0x08, 0x58, + 0x85, 0x60, 0xb0, 0xbd, 0x10, 0x7b, 0x01, 0x00, + 0xf8, 0xb5, 0xff, 0xf7, 0x59, 0xf9, 0x05, 0x1c, + 0x3c, 0x00, 0x20, 0x0c, 0x01, 0x00, 0xfe, 0xf7, + 0xe8, 0xff, 0x04, 0x1c, 0x28, 0x1c, 0xff, 0xf7, + 0x58, 0xf9, 0x00, 0x28, 0x42, 0xd0, 0x69, 0x1e, + 0x21, 0x4d, 0x4a, 0x00, 0x20, 0x4b, 0x1c, 0x3d, + 0xae, 0x5c, 0x98, 0x5c, 0x30, 0x40, 0xd6, 0x18, + 0x01, 0x23, 0xf6, 0x56, 0x52, 0x19, 0xd2, 0x56, + 0x96, 0x42, 0x01, 0xdd, 0x15, 0x1c, 0x00, 0xe0, + 0x35, 0x1c, 0x18, 0x4b, 0x2a, 0x3b, 0x59, 0x56, + 0x51, 0x18, 0x3c, 0x00, 0x5c, 0x0c, 0x01, 0x00, + 0xb1, 0x42, 0x00, 0xdb, 0x31, 0x1c, 0x0e, 0x1c, + 0x00, 0x28, 0x26, 0xd0, 0xfe, 0xf7, 0xbe, 0xff, + 0x00, 0x90, 0x00, 0xab, 0x18, 0x78, 0x12, 0x49, + 0x00, 0x23, 0xc9, 0x56, 0x00, 0xab, 0x15, 0x22, + 0x10, 0x1a, 0x5b, 0x78, 0x00, 0x1b, 0x40, 0x18, + 0xd2, 0x1a, 0x12, 0x1b, 0x51, 0x18, 0x00, 0x22, + 0x85, 0x42, 0x02, 0xdb, 0x00, 0xab, 0x1a, 0x70, + 0x02, 0xe0, 0x40, 0x1b, 0x3c, 0x00, 0x98, 0x0c, + 0x01, 0x00, 0x00, 0xab, 0x18, 0x70, 0x8e, 0x42, + 0x02, 0xdb, 0x00, 0xab, 0x5a, 0x70, 0x02, 0xe0, + 0x88, 0x1b, 0x00, 0xab, 0x58, 0x70, 0x00, 0x98, + 0xff, 0xf7, 0x8d, 0xf8, 0x01, 0xf0, 0xff, 0xf8, + 0xf8, 0xbd, 0xe6, 0x78, 0x01, 0x00, 0x65, 0x73, + 0x01, 0x00, 0x70, 0xb5, 0x08, 0x4e, 0x06, 0x4d, + 0x00, 0x24, 0x06, 0x20, 0x60, 0x43, 0x80, 0x19, + 0x06, 0x22, 0x29, 0x1c, 0xef, 0xf7, 0x3c, 0x00, + 0xd4, 0x0c, 0x01, 0x00, 0x11, 0xfc, 0x01, 0x34, + 0x05, 0x2c, 0xf5, 0xdb, 0x70, 0xbd, 0x00, 0x00, + 0x4e, 0x47, 0x01, 0x00, 0xe6, 0x7a, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x01, 0x68, 0x03, 0x48, + 0xfe, 0xf7, 0x42, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0xa8, 0x79, 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x01, 0x68, 0x03, 0x48, + 0xfe, 0xf7, 0x4a, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x0d, 0x01, 0x00, 0xa8, 0x79, + 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, 0x10, 0xb5, + 0x00, 0x28, 0x0a, 0xd0, 0x06, 0x4c, 0xa1, 0x69, + 0x00, 0x29, 0x01, 0xd1, 0x00, 0x20, 0x00, 0xe0, + 0x09, 0x68, 0xf7, 0xf7, 0x38, 0xfb, 0xa0, 0x61, + 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, 0xa4, 0x6e, + 0x01, 0x00, 0xf3, 0xb5, 0x37, 0x48, 0x83, 0xb0, + 0x02, 0x90, 0x80, 0x79, 0x0e, 0x1c, 0x00, 0x27, + 0x01, 0x90, 0x3c, 0x00, 0x4c, 0x0d, 0x01, 0x00, + 0x34, 0x48, 0x35, 0x4a, 0x01, 0x6a, 0x03, 0x9c, + 0x03, 0x1c, 0x1b, 0x69, 0xa1, 0x42, 0x01, 0xd0, + 0x93, 0x61, 0x00, 0xe0, 0x53, 0x61, 0x31, 0x49, + 0x8a, 0x68, 0x96, 0x42, 0x3f, 0xd0, 0x2d, 0x48, + 0x8e, 0x60, 0xc1, 0x68, 0x00, 0x24, 0x25, 0x1c, + 0x00, 0x29, 0x2d, 0x48, 0x09, 0xd0, 0x00, 0x2e, + 0x0b, 0xd0, 0x28, 0x48, 0x01, 0x24, 0xc0, 0x6a, + 0x24, 0x03, 0x00, 0x28, 0x3c, 0x00, 0x88, 0x0d, + 0x01, 0x00, 0x06, 0xd0, 0x01, 0x27, 0x04, 0xe0, + 0x00, 0x2e, 0x01, 0xd0, 0x05, 0x1c, 0xf9, 0xe7, + 0x04, 0x1c, 0x00, 0x2f, 0x06, 0xd0, 0xfb, 0xf7, + 0x1e, 0xfb, 0x1f, 0x48, 0x01, 0x68, 0x22, 0x48, + 0xfe, 0xf7, 0xfb, 0xfa, 0x20, 0x1c, 0x28, 0x43, + 0x0e, 0xd0, 0x2a, 0x1c, 0x21, 0x1c, 0x01, 0x20, + 0x02, 0xf0, 0x21, 0xfe, 0x2a, 0x1c, 0x21, 0x1c, + 0x02, 0x20, 0x02, 0xf0, 0x1c, 0xfe, 0x3c, 0x00, + 0xc4, 0x0d, 0x01, 0x00, 0x2a, 0x1c, 0x21, 0x1c, + 0x03, 0x20, 0x02, 0xf0, 0x17, 0xfe, 0x00, 0x2f, + 0x06, 0xd1, 0x13, 0x48, 0x01, 0x68, 0x16, 0x48, + 0xfe, 0xf7, 0xce, 0xfa, 0xfa, 0xf7, 0x42, 0xfd, + 0x03, 0x9c, 0x00, 0x2c, 0x01, 0xd1, 0x01, 0xf0, + 0xe1, 0xff, 0x01, 0xa9, 0x03, 0xc9, 0x88, 0x71, + 0x01, 0xf0, 0xdc, 0xff, 0x0a, 0x4c, 0x0a, 0x4b, + 0x44, 0x3c, 0xa1, 0x69, 0x22, 0x69, 0x08, 0x3b, + 0x3c, 0x00, 0x00, 0x0e, 0x01, 0x00, 0x41, 0x1a, + 0x00, 0x2a, 0x03, 0xd0, 0x1a, 0x68, 0x51, 0x18, + 0x19, 0x60, 0x02, 0xe0, 0x5a, 0x68, 0x51, 0x18, + 0x59, 0x60, 0xa0, 0x61, 0x26, 0x61, 0x05, 0xb0, + 0xf0, 0xbd, 0x20, 0x10, 0x07, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, 0xb0, 0x57, + 0x01, 0x00, 0x00, 0x10, 0x60, 0x00, 0x84, 0x73, + 0x01, 0x00, 0x1c, 0xb5, 0x4c, 0x23, 0x08, 0x49, + 0x58, 0x43, 0x3c, 0x00, 0x3c, 0x0e, 0x01, 0x00, + 0x44, 0x18, 0x20, 0x1c, 0x40, 0x30, 0x41, 0x78, + 0x62, 0x68, 0x00, 0x91, 0x01, 0x92, 0x3f, 0x21, + 0x0b, 0x5d, 0x61, 0x8f, 0x00, 0x78, 0x62, 0x6c, + 0xfa, 0xf7, 0x28, 0xf8, 0xa0, 0x85, 0x1c, 0xbd, + 0x58, 0xe3, 0x01, 0x00, 0xb0, 0xb5, 0x16, 0x4d, + 0xa9, 0x69, 0x00, 0x29, 0x25, 0xd0, 0x2c, 0x1c, + 0x30, 0x34, 0x20, 0x7a, 0x00, 0x28, 0x20, 0xd0, + 0x00, 0x23, 0x81, 0x22, 0x3c, 0x00, 0x78, 0x0e, + 0x01, 0x00, 0x18, 0x20, 0x02, 0xf0, 0x89, 0xfc, + 0x20, 0x7a, 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, + 0x20, 0x72, 0x12, 0xd1, 0x0c, 0x48, 0x28, 0x21, + 0x2c, 0x38, 0x09, 0x5c, 0x21, 0x72, 0x29, 0x7a, + 0x00, 0x29, 0x01, 0xd1, 0x00, 0x6a, 0x00, 0xe0, + 0x40, 0x6a, 0xa9, 0x69, 0x80, 0x02, 0x81, 0x42, + 0x03, 0xd2, 0x49, 0x00, 0x81, 0x42, 0x01, 0xd2, + 0xa9, 0x61, 0xb0, 0xbd, 0xa8, 0x61, 0x3c, 0x00, + 0xb4, 0x0e, 0x01, 0x00, 0xb0, 0xbd, 0x01, 0xf0, + 0x1d, 0xf9, 0xb0, 0xbd, 0xf4, 0x6e, 0x01, 0x00, + 0x7f, 0xb5, 0x05, 0x1c, 0x04, 0x20, 0x6b, 0x46, + 0x1b, 0x18, 0x02, 0x90, 0x00, 0x26, 0x28, 0x18, + 0x6a, 0x46, 0x02, 0xa9, 0xfc, 0xf7, 0x8a, 0xfb, + 0x00, 0x28, 0x06, 0xd1, 0x00, 0xab, 0x18, 0x79, + 0x04, 0x28, 0x08, 0xd0, 0x18, 0x79, 0x03, 0x28, + 0x05, 0xd0, 0x00, 0xab, 0x18, 0x79, 0x10, 0x21, + 0x3c, 0x00, 0xf0, 0x0e, 0x01, 0x00, 0x08, 0x43, + 0x04, 0xb0, 0x70, 0xbd, 0x03, 0xa9, 0xe8, 0x68, + 0xf6, 0xf7, 0xd3, 0xff, 0x00, 0x28, 0x05, 0xd0, + 0x03, 0x98, 0x20, 0x21, 0x08, 0x43, 0x00, 0x06, + 0x00, 0x0e, 0xf1, 0xe7, 0x03, 0xa9, 0x00, 0x20, + 0xf6, 0xf7, 0xc7, 0xff, 0x04, 0x1c, 0x01, 0xd1, + 0x02, 0x20, 0xe9, 0xe7, 0xe8, 0x68, 0x00, 0xab, + 0x20, 0x60, 0x00, 0x98, 0x60, 0x60, 0x18, 0x79, + 0xa0, 0x76, 0x3c, 0x00, 0x2c, 0x0f, 0x01, 0x00, + 0xa8, 0x8c, 0x60, 0x76, 0xe8, 0x69, 0x20, 0x61, + 0x68, 0x8c, 0xa0, 0x82, 0x28, 0x8c, 0x20, 0x76, + 0x69, 0x69, 0x09, 0x48, 0x81, 0x42, 0x00, 0xd9, + 0x08, 0x1c, 0xa0, 0x60, 0x20, 0x1c, 0x02, 0xf0, + 0xa1, 0xfd, 0xa1, 0x68, 0x00, 0x29, 0x04, 0xd0, + 0x03, 0x9a, 0xa1, 0x32, 0x08, 0x20, 0x02, 0xf0, + 0x37, 0xfb, 0x30, 0x1c, 0xc7, 0xe7, 0x00, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x3c, 0x00, 0x68, 0x0f, + 0x01, 0x00, 0xfe, 0xb5, 0x06, 0x1c, 0x40, 0x78, + 0x01, 0x24, 0x06, 0x28, 0x50, 0xd3, 0xc1, 0x1e, + 0x03, 0x20, 0xef, 0xf7, 0x5e, 0xfb, 0x00, 0x90, + 0x0e, 0x28, 0x49, 0xd8, 0x00, 0x20, 0x0a, 0xe0, + 0x41, 0x00, 0x09, 0x18, 0x89, 0x19, 0x4a, 0x79, + 0x89, 0x79, 0x51, 0x18, 0x01, 0x39, 0x0e, 0x29, + 0x00, 0xd9, 0x00, 0x24, 0x01, 0x30, 0x00, 0x99, + 0x88, 0x42, 0xf1, 0xdb, 0x00, 0x2c, 0x3c, 0x00, + 0xa4, 0x0f, 0x01, 0x00, 0x37, 0xd0, 0x03, 0x22, + 0xb1, 0x1c, 0x1b, 0x48, 0xef, 0xf7, 0xa4, 0xfa, + 0x1a, 0x4c, 0x1c, 0x21, 0x20, 0x1c, 0xef, 0xf7, + 0x4d, 0xfa, 0x00, 0x25, 0x28, 0xe0, 0x69, 0x00, + 0x49, 0x19, 0x02, 0x91, 0x8a, 0x19, 0x53, 0x79, + 0x15, 0x48, 0x43, 0x54, 0x93, 0x79, 0x0f, 0x18, + 0x7b, 0x70, 0xd3, 0x79, 0xbb, 0x70, 0x07, 0x23, + 0xd2, 0x56, 0x01, 0x92, 0x44, 0x5c, 0x0f, 0xe0, + 0x3c, 0x00, 0xe0, 0x0f, 0x01, 0x00, 0x20, 0x1c, + 0xfe, 0xf7, 0x7b, 0xff, 0x00, 0x28, 0x07, 0xd0, + 0x0c, 0x4a, 0x60, 0x00, 0x80, 0x18, 0x01, 0x21, + 0x10, 0x38, 0x81, 0x73, 0x01, 0x99, 0xc1, 0x73, + 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, 0x07, 0x48, + 0x02, 0x99, 0x40, 0x5c, 0x79, 0x78, 0x40, 0x18, + 0xa0, 0x42, 0xe8, 0xd8, 0x01, 0x35, 0x00, 0x98, + 0x85, 0x42, 0xd3, 0xdb, 0xfe, 0xbd, 0xe8, 0x62, + 0x01, 0x00, 0x3c, 0x00, 0x1c, 0x10, 0x01, 0x00, + 0xe6, 0x78, 0x01, 0x00, 0xeb, 0x62, 0x01, 0x00, + 0x01, 0x68, 0x0f, 0x29, 0x01, 0xdd, 0x0f, 0x21, + 0x01, 0x60, 0x01, 0x68, 0x00, 0x29, 0x01, 0xda, + 0x00, 0x21, 0x01, 0x60, 0x70, 0x47, 0x00, 0x00, + 0xf8, 0xb5, 0x04, 0x1c, 0x1e, 0x48, 0x22, 0x1d, + 0x05, 0x68, 0x00, 0x92, 0x16, 0x1c, 0x23, 0x1c, + 0x0f, 0x1c, 0xcc, 0x33, 0x2a, 0x1c, 0x20, 0x1c, + 0x70, 0x30, 0xa1, 0x6d, 0x3c, 0x00, 0x58, 0x10, + 0x01, 0x00, 0x00, 0xf0, 0x3e, 0xf9, 0x00, 0x96, + 0xa1, 0x6d, 0x27, 0x20, 0x01, 0x40, 0x23, 0x1c, + 0xe4, 0x33, 0x20, 0x1c, 0x2a, 0x1c, 0x5c, 0x30, + 0x00, 0xf0, 0x33, 0xf9, 0x13, 0x48, 0x00, 0x78, + 0x0e, 0x28, 0x01, 0xd2, 0x01, 0x25, 0x85, 0x40, + 0x11, 0x48, 0xa1, 0x69, 0x00, 0x78, 0x29, 0x40, + 0x00, 0x07, 0x0b, 0xd4, 0x48, 0x07, 0x03, 0xd5, + 0x08, 0x07, 0x01, 0xd5, 0x04, 0x20, 0x3c, 0x00, + 0x94, 0x10, 0x01, 0x00, 0x81, 0x43, 0x88, 0x06, + 0x03, 0xd5, 0x48, 0x06, 0x01, 0xd5, 0x20, 0x20, + 0x81, 0x43, 0x23, 0x1c, 0xb4, 0x33, 0x2a, 0x1c, + 0x20, 0x1c, 0x30, 0x30, 0x00, 0x96, 0x00, 0xf0, + 0x13, 0xf9, 0x39, 0x1c, 0x20, 0x1c, 0xf0, 0xf7, + 0x47, 0xfc, 0xf8, 0xbd, 0x2c, 0x7d, 0x01, 0x00, + 0x10, 0x67, 0x01, 0x00, 0x1d, 0x75, 0x01, 0x00, + 0xb0, 0xb5, 0xf2, 0xf7, 0x27, 0xfc, 0xfe, 0xf7, + 0x3c, 0x00, 0xd0, 0x10, 0x01, 0x00, 0x09, 0xf9, + 0x0f, 0x48, 0x00, 0x25, 0x45, 0x70, 0x0e, 0x48, + 0x0d, 0x4c, 0x00, 0x88, 0x5b, 0x34, 0xa0, 0x82, + 0xf9, 0xf7, 0x23, 0xfd, 0x20, 0x61, 0xa0, 0x8a, + 0x00, 0x28, 0x04, 0xd0, 0x01, 0x21, 0x89, 0x05, + 0xef, 0xf7, 0x0d, 0xfb, 0xe1, 0x82, 0x05, 0x48, + 0x01, 0x38, 0x45, 0x60, 0x01, 0xf0, 0x55, 0xfe, + 0x02, 0x1c, 0x23, 0x1c, 0x00, 0x21, 0x00, 0x20, + 0xf4, 0xf7, 0x3c, 0x00, 0x0c, 0x11, 0x01, 0x00, + 0x49, 0xfd, 0xb0, 0xbd, 0x45, 0x7d, 0x01, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x70, 0xb5, 0x16, 0x1c, + 0x5a, 0x89, 0x04, 0x1c, 0x04, 0x98, 0x92, 0x07, + 0x92, 0x0f, 0x00, 0x25, 0x00, 0x29, 0xa2, 0x71, + 0x09, 0xd0, 0x05, 0x21, 0xf9, 0xf7, 0x24, 0xfb, + 0x00, 0x28, 0x01, 0xd0, 0xc0, 0x78, 0x00, 0xe0, + 0x01, 0x20, 0xe0, 0x71, 0x00, 0xe0, 0xe5, 0x71, + 0xe5, 0x60, 0xa6, 0x60, 0x3c, 0x00, 0x48, 0x11, + 0x01, 0x00, 0x70, 0xbd, 0x00, 0x00, 0xfe, 0xb5, + 0x05, 0x1c, 0x0e, 0x22, 0x9c, 0x30, 0x16, 0x49, + 0xef, 0xf7, 0xcf, 0xf9, 0x29, 0x1c, 0x28, 0x1c, + 0x80, 0x30, 0x88, 0x31, 0x00, 0x24, 0x2f, 0x1c, + 0x60, 0x37, 0x02, 0x91, 0x01, 0x90, 0x20, 0x06, + 0x00, 0x0e, 0x06, 0x1c, 0xf9, 0xf7, 0x0d, 0xfe, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x98, 0x42, 0x68, + 0x02, 0x99, 0x01, 0xe0, 0xea, 0x6d, 0x3c, 0x00, + 0x84, 0x11, 0x01, 0x00, 0x39, 0x1c, 0x00, 0x2a, + 0x0d, 0xd0, 0x00, 0x20, 0x03, 0xe0, 0x0b, 0x5c, + 0xb3, 0x42, 0x02, 0xd8, 0x01, 0x30, 0x90, 0x42, + 0xf9, 0xdb, 0x08, 0x18, 0x10, 0x38, 0xc0, 0x7b, + 0x29, 0x19, 0x90, 0x31, 0x08, 0x73, 0x01, 0x34, + 0x0e, 0x2c, 0xdf, 0xd3, 0xfe, 0xbd, 0x00, 0x00, + 0xcc, 0x47, 0x01, 0x00, 0xff, 0xb5, 0x81, 0xb0, + 0x14, 0x1c, 0x10, 0x1c, 0x06, 0x22, 0x0d, 0x1c, + 0x3c, 0x00, 0xc0, 0x11, 0x01, 0x00, 0x19, 0x1c, + 0x0b, 0x9e, 0x0a, 0x9f, 0xef, 0xf7, 0x97, 0xf9, + 0x06, 0x22, 0x39, 0x1c, 0xa0, 0x18, 0xef, 0xf7, + 0x92, 0xf9, 0xe6, 0x60, 0x2c, 0x60, 0x10, 0x20, + 0x28, 0x81, 0x6e, 0x60, 0x01, 0x98, 0xe8, 0x60, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x00, 0x20, 0x20, 0x61, 0x58, 0x20, + 0x00, 0x5d, 0x0e, 0x1c, 0x15, 0x1c, 0xc0, 0x07, + 0xc0, 0x17, 0x3c, 0x00, 0xfc, 0x11, 0x01, 0x00, + 0x01, 0x30, 0xe0, 0x61, 0x21, 0x6b, 0x00, 0x29, + 0x36, 0xd1, 0x1e, 0x49, 0x09, 0x68, 0x29, 0x43, + 0x32, 0xd0, 0xa1, 0x68, 0x89, 0x8a, 0x00, 0x29, + 0x2e, 0xd0, 0x00, 0x28, 0x0b, 0xd0, 0x20, 0x1c, + 0x58, 0x30, 0x00, 0xf0, 0xf3, 0xfd, 0x00, 0x28, + 0x1b, 0xd0, 0x81, 0x6a, 0x02, 0x6a, 0x40, 0x6a, + 0x09, 0x78, 0x00, 0x78, 0x06, 0xe0, 0x14, 0x4a, + 0x3c, 0x23, 0x11, 0x78, 0x3c, 0x00, 0x38, 0x12, + 0x01, 0x00, 0x50, 0x78, 0x43, 0x43, 0x9a, 0x18, + 0x04, 0x32, 0x00, 0x2d, 0x03, 0xd1, 0x02, 0x29, + 0x01, 0xd0, 0x03, 0x29, 0x02, 0xd1, 0x6d, 0x21, + 0x22, 0x61, 0x08, 0x55, 0x20, 0x69, 0x00, 0x28, + 0x0d, 0xd0, 0x81, 0x88, 0x00, 0x29, 0x01, 0xd1, + 0x01, 0x20, 0x70, 0xbd, 0x80, 0x79, 0x02, 0x28, + 0x05, 0xd1, 0x22, 0x1c, 0x07, 0x49, 0x07, 0x48, + 0xf8, 0xf7, 0x4b, 0xff, 0x02, 0xe0, 0x3c, 0x00, + 0x74, 0x12, 0x01, 0x00, 0x20, 0x1c, 0xef, 0xf7, + 0xb5, 0xf8, 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, + 0x28, 0x61, 0x01, 0x00, 0x68, 0x61, 0x01, 0x00, + 0xa1, 0xda, 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x21, 0x00, 0x20, 0xf9, 0xf7, + 0x39, 0xfe, 0xc4, 0x00, 0xf9, 0xf7, 0x54, 0xfe, + 0x24, 0x18, 0xf9, 0xf7, 0x47, 0xfe, 0x08, 0x49, + 0x20, 0x18, 0x09, 0x88, 0x08, 0x4c, 0x40, 0x18, + 0x3c, 0x00, 0xb0, 0x12, 0x01, 0x00, 0x06, 0x49, + 0x09, 0x88, 0x40, 0x18, 0x60, 0x61, 0xf9, 0xf7, + 0x46, 0xfe, 0x05, 0x49, 0x09, 0x88, 0x40, 0x18, + 0x40, 0x00, 0xa0, 0x61, 0x10, 0xbd, 0x02, 0x61, + 0x01, 0x00, 0x04, 0x61, 0x01, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0xa6, 0x69, 0x01, 0x00, 0x11, 0x40, + 0x08, 0x1c, 0x10, 0xb5, 0x1c, 0x1c, 0x19, 0x1c, + 0x08, 0x31, 0x18, 0x60, 0xf1, 0xf7, 0x31, 0xfe, + 0x60, 0x60, 0x3c, 0x00, 0xec, 0x12, 0x01, 0x00, + 0x10, 0xbd, 0x00, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x22, 0x48, 0x0f, 0x1c, 0x41, 0x68, 0x91, 0x42, + 0x03, 0xd0, 0x00, 0x21, 0x81, 0x60, 0xc1, 0x60, + 0x42, 0x60, 0xc4, 0x68, 0x15, 0xe0, 0x28, 0x20, + 0x1d, 0x49, 0x60, 0x43, 0x40, 0x18, 0x05, 0x1c, + 0x06, 0x22, 0x31, 0x1c, 0xef, 0xf7, 0x70, 0xf8, + 0x00, 0x28, 0x07, 0xd1, 0xa8, 0x1d, 0x39, 0x1c, + 0xf9, 0xf7, 0x10, 0xfd, 0x3c, 0x00, 0x28, 0x13, + 0x01, 0x00, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, + 0xf8, 0xbd, 0x01, 0x34, 0x24, 0x07, 0x24, 0x0f, + 0x12, 0x48, 0x80, 0x68, 0x84, 0x42, 0xe5, 0xd1, + 0x10, 0x4c, 0x28, 0x23, 0xa0, 0x68, 0x0f, 0x4d, + 0x58, 0x43, 0x40, 0x19, 0x06, 0x22, 0x31, 0x1c, + 0xef, 0xf7, 0xd3, 0xf8, 0xa0, 0x68, 0x28, 0x23, + 0x58, 0x43, 0x40, 0x19, 0x06, 0x30, 0x22, 0x22, + 0x39, 0x1c, 0xef, 0xf7, 0xca, 0xf8, 0x3c, 0x00, + 0x64, 0x13, 0x01, 0x00, 0xa0, 0x68, 0x01, 0x30, + 0x00, 0x07, 0x00, 0x0f, 0xa0, 0x60, 0xe1, 0x68, + 0x81, 0x42, 0x03, 0xd1, 0x01, 0x31, 0x08, 0x07, + 0x00, 0x0f, 0xe0, 0x60, 0x00, 0x20, 0xd6, 0xe7, + 0xec, 0x65, 0x01, 0x00, 0xa0, 0xf4, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x21, 0x03, 0x20, 0x00, 0xf0, + 0xe5, 0xff, 0x05, 0x4c, 0xa0, 0x68, 0x00, 0x28, + 0x04, 0xd1, 0x01, 0xf0, 0x07, 0xfd, 0x61, 0x68, + 0x3c, 0x00, 0xa0, 0x13, 0x01, 0x00, 0x40, 0x1a, + 0x60, 0x60, 0x10, 0xbd, 0x00, 0x00, 0xd0, 0x60, + 0x01, 0x00, 0x02, 0x68, 0x0a, 0x60, 0x01, 0x60, + 0x70, 0x47, 0x01, 0x1c, 0x00, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0x02, 0x68, 0x0a, 0x60, 0x70, 0x47, + 0x00, 0x00, 0xfe, 0xb5, 0x14, 0x1c, 0x1d, 0x1c, + 0x00, 0x22, 0xd2, 0x43, 0x01, 0xab, 0xf3, 0xf7, + 0x82, 0xff, 0x01, 0x98, 0x00, 0x26, 0x28, 0x40, + 0x01, 0x90, 0x3c, 0x00, 0xdc, 0x13, 0x01, 0x00, + 0x00, 0x25, 0x00, 0x27, 0x20, 0x60, 0x1e, 0xe0, + 0x01, 0x21, 0xb9, 0x40, 0x0a, 0x1c, 0x02, 0x40, + 0x18, 0xd0, 0x88, 0x43, 0x01, 0x90, 0x39, 0x06, + 0x09, 0x0e, 0x70, 0x19, 0x00, 0x19, 0x02, 0x91, + 0x01, 0x77, 0x08, 0x1c, 0xf9, 0xf7, 0xc6, 0xfc, + 0x00, 0x28, 0x06, 0xd0, 0x30, 0x1c, 0x00, 0x19, + 0x01, 0x36, 0x02, 0x99, 0x30, 0x30, 0x01, 0x70, + 0x04, 0xe0, 0x28, 0x1c, 0x3c, 0x00, 0x18, 0x14, + 0x01, 0x00, 0x01, 0x35, 0x02, 0x99, 0x00, 0x19, + 0x01, 0x72, 0x01, 0x37, 0x01, 0x98, 0x00, 0x28, + 0xdd, 0xd1, 0x70, 0x19, 0xa0, 0x61, 0x65, 0x60, + 0xe6, 0x62, 0xfe, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x14, 0x4d, 0x04, 0x1c, 0x28, 0x7a, 0x01, 0x28, + 0x02, 0xd1, 0x04, 0x20, 0xf6, 0xf7, 0xad, 0xf9, + 0x21, 0x1c, 0xa8, 0x6a, 0xf5, 0xf7, 0x21, 0xfc, + 0x00, 0x28, 0x03, 0xd1, 0x04, 0x20, 0x3c, 0x00, + 0x54, 0x14, 0x01, 0x00, 0xf6, 0xf7, 0xa4, 0xf9, + 0xb0, 0xbd, 0x02, 0x20, 0x28, 0x70, 0x28, 0x8c, + 0x00, 0x28, 0x00, 0xd0, 0x60, 0x81, 0x68, 0x8c, + 0x00, 0x28, 0x00, 0xd0, 0xa0, 0x81, 0xa8, 0x8c, + 0x00, 0x28, 0x00, 0xd0, 0xe0, 0x81, 0xe8, 0x69, + 0x01, 0x23, 0x02, 0x04, 0x12, 0x0c, 0x20, 0x1c, + 0x02, 0x49, 0xfc, 0xf7, 0x19, 0xff, 0xb0, 0xbd, + 0xf4, 0x6e, 0x01, 0x00, 0xa1, 0x77, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x14, 0x01, 0x00, 0xf8, 0xb5, + 0x19, 0x4e, 0x05, 0x1c, 0xb0, 0x69, 0x00, 0x28, + 0x00, 0xd1, 0x30, 0x68, 0xff, 0xf7, 0x3b, 0xfc, + 0x15, 0x4f, 0x04, 0x1c, 0x50, 0x37, 0x00, 0x28, + 0x0b, 0xd0, 0x60, 0x68, 0x29, 0x1c, 0x78, 0x60, + 0x01, 0x20, 0x38, 0x63, 0x20, 0x1c, 0xf5, 0xf7, + 0xea, 0xfb, 0x00, 0x28, 0x04, 0xd1, 0x00, 0x20, + 0xf8, 0xbd, 0x00, 0x23, 0xfb, 0x62, 0xfa, 0xe7, + 0x00, 0x23, 0x3c, 0x00, 0xcc, 0x14, 0x01, 0x00, + 0x23, 0x77, 0xf8, 0x6a, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0xf8, 0x62, 0x38, 0x7a, 0x01, 0x28, + 0x07, 0xd0, 0xf8, 0x69, 0x06, 0x49, 0x02, 0x04, + 0x12, 0x0c, 0x28, 0x1c, 0xfc, 0xf7, 0xe6, 0xfe, + 0x01, 0xe0, 0xfb, 0x62, 0xb3, 0x61, 0x01, 0x20, + 0xe5, 0xe7, 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, + 0xdd, 0x02, 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x16, 0x1c, 0x3c, 0x00, 0x08, 0x15, + 0x01, 0x00, 0x04, 0x2c, 0x1b, 0xd2, 0x10, 0x48, + 0x83, 0x42, 0x07, 0xd2, 0x58, 0x00, 0x0f, 0x49, + 0xef, 0xf7, 0xfb, 0xf8, 0xff, 0x30, 0x00, 0x0a, + 0x01, 0x38, 0x00, 0xe0, 0x00, 0x20, 0x1f, 0x35, + 0xea, 0x06, 0x61, 0x07, 0x09, 0x0e, 0xd2, 0x0e, + 0x11, 0x43, 0x72, 0x07, 0x52, 0x0d, 0x11, 0x43, + 0x00, 0x06, 0x00, 0x0a, 0x08, 0x43, 0x06, 0x4a, + 0xa1, 0x00, 0x50, 0x50, 0x70, 0xbd, 0x3c, 0x00, + 0x44, 0x15, 0x01, 0x00, 0x01, 0x21, 0x8d, 0x20, + 0xef, 0xf7, 0xac, 0xfe, 0x70, 0xbd, 0x00, 0x00, + 0x40, 0x9c, 0x00, 0x00, 0x00, 0x80, 0x38, 0x01, + 0xe8, 0x60, 0x01, 0x00, 0x09, 0x4a, 0x80, 0x00, + 0x10, 0x58, 0x40, 0x09, 0x40, 0x01, 0x07, 0x22, + 0x02, 0x43, 0x07, 0x48, 0x03, 0x68, 0x00, 0x2b, + 0xfc, 0xdb, 0x42, 0x60, 0x09, 0x06, 0x01, 0x60, + 0x01, 0x68, 0x00, 0x29, 0xfc, 0xdb, 0x08, 0x20, + 0x3c, 0x00, 0x80, 0x15, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0xe8, 0x60, 0x01, 0x00, 0x30, 0x20, + 0x07, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, + 0x07, 0x49, 0xa0, 0x00, 0x08, 0x58, 0x00, 0x28, + 0x03, 0xd1, 0x02, 0x21, 0x8d, 0x20, 0xef, 0xf7, + 0x80, 0xfe, 0x29, 0x1c, 0x20, 0x1c, 0xf6, 0xf7, + 0xa8, 0xfa, 0xb0, 0xbd, 0x00, 0x00, 0xe8, 0x60, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, + 0x07, 0x49, 0x3c, 0x00, 0xbc, 0x15, 0x01, 0x00, + 0xa0, 0x00, 0x08, 0x58, 0x00, 0x28, 0x03, 0xd1, + 0x02, 0x21, 0x8d, 0x20, 0xef, 0xf7, 0x6c, 0xfe, + 0x29, 0x1c, 0x20, 0x1c, 0xff, 0xf7, 0xc4, 0xff, + 0xb0, 0xbd, 0x00, 0x00, 0xe8, 0x60, 0x01, 0x00, + 0xf8, 0xb5, 0x0d, 0x1c, 0x16, 0x1c, 0xf7, 0xf7, + 0x17, 0xf9, 0x04, 0x1c, 0x28, 0x68, 0x40, 0x4f, + 0x81, 0x78, 0x00, 0x29, 0x3b, 0xd1, 0xc1, 0x78, + 0x00, 0x29, 0x58, 0xd1, 0x3c, 0x00, 0xf8, 0x15, + 0x01, 0x00, 0xf8, 0xf7, 0xf8, 0xf9, 0x22, 0x8e, + 0x61, 0x8e, 0x8a, 0x42, 0x04, 0xd0, 0xa1, 0x6a, + 0x09, 0x18, 0xe0, 0x69, 0x81, 0x42, 0x10, 0xd9, + 0x38, 0x49, 0x32, 0x1c, 0x48, 0x6b, 0x01, 0x30, + 0x48, 0x63, 0x20, 0x6a, 0x01, 0x30, 0x20, 0x62, + 0x38, 0x68, 0x01, 0x30, 0x38, 0x60, 0xe0, 0x68, + 0x63, 0x69, 0x29, 0x1c, 0xee, 0xf7, 0xd8, 0xfe, + 0xf8, 0xbd, 0x01, 0x32, 0x12, 0x04, 0x3c, 0x00, + 0x34, 0x16, 0x01, 0x00, 0x12, 0x0c, 0x22, 0x86, + 0xa1, 0x62, 0xb8, 0x68, 0x00, 0x28, 0x34, 0xd1, + 0x2c, 0x48, 0x0c, 0x23, 0x00, 0x68, 0x1b, 0x1a, + 0x9a, 0x42, 0x07, 0xd2, 0x19, 0x23, 0x9b, 0x01, + 0xaf, 0x22, 0x92, 0x01, 0x58, 0x43, 0x10, 0x1a, + 0x81, 0x42, 0x26, 0xd3, 0x01, 0x20, 0xb8, 0x60, + 0x01, 0x21, 0x0c, 0x20, 0x00, 0xf0, 0x7a, 0xfe, + 0x1f, 0xe0, 0x01, 0x29, 0x1d, 0xd1, 0xc0, 0x78, + 0x3c, 0x00, 0x70, 0x16, 0x01, 0x00, 0x17, 0x28, + 0x1a, 0xd1, 0xa0, 0x8e, 0xe1, 0x8e, 0x88, 0x42, + 0x14, 0xd3, 0xe9, 0x68, 0x09, 0x68, 0x09, 0x79, + 0x09, 0x06, 0x0f, 0xd5, 0x60, 0x6a, 0x32, 0x1c, + 0x01, 0x30, 0x60, 0x62, 0xe0, 0x68, 0x63, 0x69, + 0x29, 0x1c, 0xee, 0xf7, 0xa3, 0xfe, 0xe8, 0x68, + 0x01, 0x68, 0x08, 0x31, 0x0b, 0x20, 0x00, 0xf0, + 0x5c, 0xfe, 0xc3, 0xe7, 0x01, 0x30, 0xa0, 0x86, + 0xa0, 0x8d, 0x3c, 0x00, 0xac, 0x16, 0x01, 0x00, + 0xe1, 0x8d, 0x88, 0x42, 0x04, 0xd1, 0x03, 0x21, + 0x02, 0x20, 0xef, 0xf7, 0xf5, 0xfd, 0xb8, 0xe7, + 0x60, 0x68, 0x45, 0x60, 0x86, 0x60, 0x00, 0x68, + 0x60, 0x60, 0xf8, 0x68, 0x01, 0x30, 0xf8, 0x60, + 0xa0, 0x8d, 0x41, 0x1c, 0xa1, 0x85, 0x00, 0x28, + 0xab, 0xd1, 0x08, 0x48, 0xb9, 0x69, 0xfd, 0xf7, + 0x61, 0xfe, 0x22, 0x1c, 0x02, 0x21, 0xf1, 0x20, + 0x02, 0xf0, 0x64, 0xf8, 0x3c, 0x00, 0xe8, 0x16, + 0x01, 0x00, 0xa1, 0xe7, 0x00, 0x00, 0xfc, 0x5a, + 0x01, 0x00, 0x90, 0x5c, 0x01, 0x00, 0x18, 0x57, + 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x1c, 0x02, 0x21, 0xf0, 0x20, 0x02, 0xf0, + 0x54, 0xf8, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x28, + 0x03, 0xd1, 0x02, 0x48, 0x41, 0x78, 0xc9, 0x07, + 0xfc, 0xd5, 0x70, 0x47, 0x00, 0x00, 0x04, 0x00, + 0x07, 0x00, 0x80, 0xb5, 0x00, 0x06, 0x3c, 0x00, + 0x24, 0x17, 0x01, 0x00, 0x01, 0xd1, 0xf1, 0xf7, + 0x71, 0xfe, 0x80, 0xbd, 0x80, 0xb5, 0xf4, 0xf7, + 0xe5, 0xfa, 0x80, 0xbd, 0x80, 0xb5, 0xf6, 0xf7, + 0xeb, 0xf8, 0x80, 0xbd, 0x01, 0x49, 0x00, 0x20, + 0x08, 0x74, 0x70, 0x47, 0x78, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0xc0, 0x07, 0x03, 0xd5, 0x02, 0x49, + 0x01, 0x20, 0x00, 0xf0, 0x1d, 0xfc, 0x80, 0xbd, + 0x50, 0xc3, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0e, + 0x3c, 0x00, 0x60, 0x17, 0x01, 0x00, 0x01, 0x28, + 0x80, 0xb5, 0x02, 0xd1, 0xf6, 0xf7, 0xe1, 0xf9, + 0x80, 0xbd, 0x00, 0x28, 0xfc, 0xd1, 0xf1, 0xf7, + 0x4c, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0xf6, 0xf7, 0xd7, 0xf9, 0x80, 0xbd, 0x03, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x08, 0x74, 0xf6, 0xf7, + 0xfe, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x06, 0x00, 0x0e, + 0xf1, 0xf7, 0x3c, 0x00, 0x9c, 0x17, 0x01, 0x00, + 0x71, 0xfe, 0x80, 0xbd, 0x10, 0xb5, 0x01, 0x28, + 0x08, 0xd0, 0x02, 0x28, 0x03, 0xd0, 0x03, 0x28, + 0x01, 0xd0, 0xef, 0xf7, 0xa7, 0xfd, 0xf6, 0xf7, + 0xe9, 0xf9, 0x10, 0xbd, 0x01, 0xf0, 0xf8, 0xfa, + 0x04, 0x1c, 0xfa, 0xf7, 0x5d, 0xfd, 0x24, 0x1a, + 0xfa, 0xf7, 0x3e, 0xfd, 0x08, 0x49, 0x00, 0x28, + 0x0b, 0xd0, 0x48, 0x6a, 0x00, 0x28, 0x08, 0xd0, + 0x06, 0x48, 0x84, 0x42, 0x3c, 0x00, 0xd8, 0x17, + 0x01, 0x00, 0x05, 0xd2, 0x01, 0x1b, 0x01, 0x22, + 0x07, 0x20, 0x01, 0xf0, 0xf4, 0xfe, 0xe5, 0xe7, + 0x00, 0x20, 0x48, 0x61, 0xe2, 0xe7, 0x78, 0x69, + 0x01, 0x00, 0x50, 0xc3, 0x00, 0x00, 0x09, 0x49, + 0x80, 0xb5, 0x48, 0x69, 0x00, 0x28, 0x0c, 0xd0, + 0x08, 0x6a, 0xca, 0x69, 0x80, 0x1a, 0x00, 0x28, + 0x07, 0xdd, 0x00, 0x20, 0x48, 0x61, 0x01, 0x21, + 0x07, 0x20, 0x01, 0xf0, 0x10, 0xff, 0x3c, 0x00, + 0x14, 0x18, 0x01, 0x00, 0xf6, 0xf7, 0xb8, 0xf9, + 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0xe7, 0xfb, 0x80, 0xbd, + 0x80, 0xb5, 0x00, 0xf0, 0x3f, 0xfc, 0x00, 0x20, + 0xf7, 0xf7, 0xd4, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0x37, 0xfc, 0xfd, 0xf7, + 0x6f, 0xfc, 0xf5, 0xf7, 0x73, 0xfd, 0x30, 0xf0, + 0x47, 0xfb, 0x80, 0xbd, 0x04, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0x50, 0x18, 0x01, 0x00, 0xc1, 0x6a, + 0x00, 0x6b, 0xf2, 0xf7, 0xde, 0xff, 0x01, 0x20, + 0xf7, 0xf7, 0x89, 0xf8, 0x80, 0xbd, 0xa4, 0x6c, + 0x01, 0x00, 0x10, 0xb5, 0xf3, 0xf7, 0x41, 0xf8, + 0x0d, 0x4c, 0x00, 0x28, 0x04, 0xd0, 0x01, 0x20, + 0xe0, 0x64, 0xf7, 0xf7, 0xb2, 0xfc, 0x10, 0xbd, + 0x01, 0x21, 0x01, 0x20, 0xf3, 0xf7, 0xe9, 0xf8, + 0xfd, 0xf7, 0x4d, 0xfc, 0x60, 0x6d, 0x00, 0x28, + 0x03, 0xd0, 0x3c, 0x00, 0x8c, 0x18, 0x01, 0x00, + 0xf3, 0xf7, 0x82, 0xf8, 0x00, 0x28, 0x01, 0xd0, + 0xf5, 0xf7, 0x4a, 0xfd, 0x01, 0x20, 0xf2, 0xf7, + 0xc1, 0xfc, 0x10, 0xbd, 0xa4, 0x6c, 0x01, 0x00, + 0x04, 0x48, 0x80, 0xb5, 0xc1, 0x6a, 0x00, 0x6b, + 0xf2, 0xf7, 0xb2, 0xff, 0x01, 0x20, 0xf7, 0xf7, + 0x5d, 0xf8, 0x80, 0xbd, 0xa4, 0x6c, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0xf5, 0xfb, 0xf5, 0xf7, + 0x33, 0xfd, 0xfc, 0xf7, 0x3c, 0x00, 0xc8, 0x18, + 0x01, 0x00, 0x31, 0xfd, 0xf9, 0xf7, 0xcb, 0xff, + 0x04, 0x20, 0xf2, 0xf7, 0xa6, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, 0xc1, 0x6a, + 0x00, 0x6b, 0xf2, 0xf7, 0x98, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0xf0, 0xdd, 0xfb, 0x00, 0x20, 0xf7, 0xf7, + 0x3c, 0xf8, 0x30, 0xf0, 0xee, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x21, 0x3c, 0x00, + 0x04, 0x19, 0x01, 0x00, 0x01, 0x20, 0xff, 0xf7, + 0x19, 0xfa, 0x01, 0x20, 0xf2, 0xf7, 0x88, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0xc9, 0xfb, 0xfc, 0xf7, 0x07, 0xfd, 0x01, 0x21, + 0x01, 0x20, 0xff, 0xf7, 0x0b, 0xfa, 0x04, 0x20, + 0xf2, 0xf7, 0x7a, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, + 0x00, 0xf0, 0x8a, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x19, 0x01, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x82, 0x6a, 0x01, 0x21, 0x04, 0x20, + 0x00, 0xf0, 0x81, 0xfb, 0x80, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x03, 0x20, 0x00, 0xf0, 0x78, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, 0x82, 0x6a, + 0x01, 0x21, 0x04, 0x20, 0x00, 0xf0, 0x6f, 0xfb, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x22, 0x3c, 0x00, 0x7c, 0x19, 0x01, 0x00, + 0x00, 0x21, 0x03, 0x20, 0x00, 0xf0, 0x66, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x06, 0x48, 0x80, 0xb5, + 0x81, 0x68, 0x42, 0x69, 0x00, 0x69, 0x51, 0x18, + 0x81, 0x42, 0x03, 0xd9, 0x01, 0x21, 0x01, 0x20, + 0x00, 0xf0, 0x58, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0xd4, 0x79, 0x01, 0x00, 0x06, 0x48, 0x80, 0xb5, + 0x82, 0x88, 0x81, 0x68, 0x00, 0x69, 0x51, 0x18, + 0x81, 0x42, 0x03, 0xd9, 0x3c, 0x00, 0xb8, 0x19, + 0x01, 0x00, 0x01, 0x21, 0x02, 0x20, 0x00, 0xf0, + 0x48, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x10, 0xb5, 0x08, 0x4c, 0x20, 0x7b, + 0x21, 0x6a, 0xf9, 0xf7, 0x9c, 0xfa, 0xa1, 0x69, + 0x42, 0x18, 0xa0, 0x68, 0x21, 0x69, 0x80, 0x18, + 0x88, 0x42, 0x03, 0xd9, 0x01, 0x21, 0x02, 0x20, + 0x00, 0xf0, 0x33, 0xfb, 0x10, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x3c, 0x00, + 0xf4, 0x19, 0x01, 0x00, 0x00, 0x21, 0x00, 0x20, + 0x00, 0xf0, 0x2a, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x06, 0x00, 0x0e, 0x01, 0x28, 0x80, 0xb5, + 0x02, 0xd1, 0xf6, 0xf7, 0x8f, 0xf8, 0x80, 0xbd, + 0x00, 0x28, 0xfc, 0xd1, 0xf1, 0xf7, 0xfa, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0xf6, 0xf7, + 0x85, 0xf8, 0x80, 0xbd, 0x80, 0xb5, 0x00, 0x06, + 0x00, 0x0e, 0xf1, 0xf7, 0x29, 0xfd, 0x80, 0xbd, + 0x3c, 0x00, 0x30, 0x1a, 0x01, 0x00, 0xb0, 0xb5, + 0x02, 0x25, 0x02, 0x28, 0x10, 0x4c, 0x0b, 0xd1, + 0xfb, 0xf7, 0x47, 0xfc, 0x00, 0x28, 0x01, 0xd1, + 0xfe, 0xf7, 0x4f, 0xff, 0x25, 0x70, 0xa1, 0x68, + 0x0c, 0x48, 0xfd, 0xf7, 0xa8, 0xfc, 0xb0, 0xbd, + 0x03, 0x28, 0x0d, 0xd1, 0x08, 0x48, 0x7d, 0x23, + 0x1c, 0x38, 0x00, 0x69, 0xdb, 0x00, 0x58, 0x43, + 0x19, 0x1c, 0x40, 0x18, 0x41, 0x08, 0x02, 0x20, + 0x00, 0xf0, 0x3c, 0x00, 0x6c, 0x1a, 0x01, 0x00, + 0x91, 0xfa, 0x25, 0x70, 0xb0, 0xbd, 0xf8, 0xf7, + 0x31, 0xf9, 0xb0, 0xbd, 0x78, 0x69, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, + 0xe0, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xef, 0xf7, + 0x39, 0xfc, 0x02, 0x20, 0x20, 0x70, 0x00, 0xf0, + 0xaf, 0xfa, 0x10, 0xbd, 0x78, 0x69, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x82, 0x6a, 0x01, 0x21, + 0x04, 0x20, 0x00, 0xf0, 0x3c, 0x00, 0xa8, 0x1a, + 0x01, 0x00, 0xd3, 0xfa, 0x80, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x03, 0x20, 0x00, 0xf0, 0xca, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x00, 0xf0, 0xc2, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, 0x42, 0x69, + 0x01, 0x21, 0x01, 0x20, 0x00, 0xf0, 0xb9, 0xfa, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x3c, 0x00, + 0xe4, 0x1a, 0x01, 0x00, 0x06, 0x48, 0x80, 0xb5, + 0x82, 0x88, 0x00, 0x2a, 0x02, 0xd0, 0x01, 0x21, + 0x02, 0x20, 0x02, 0xe0, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x00, 0xf0, 0xa9, 0xfa, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, + 0x20, 0x7b, 0x21, 0x6a, 0xf9, 0xf7, 0xfe, 0xf9, + 0xa1, 0x69, 0x42, 0x18, 0x01, 0x21, 0x02, 0x20, + 0x00, 0xf0, 0x9a, 0xfa, 0x10, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x1b, 0x01, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x00, 0xf0, 0x90, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x38, 0xb5, 0xfa, 0xf7, 0x41, 0xfe, + 0x00, 0x20, 0xf0, 0xf7, 0x80, 0xf8, 0x00, 0x90, + 0x00, 0xab, 0x1c, 0x88, 0x5d, 0x88, 0xf8, 0xf7, + 0x3c, 0xf9, 0x00, 0x2c, 0x02, 0xd0, 0xfd, 0xf7, + 0x9e, 0xfa, 0x02, 0xe0, 0x01, 0x20, 0xf6, 0xf7, + 0x0a, 0xff, 0x3c, 0x00, 0x5c, 0x1b, 0x01, 0x00, + 0x29, 0x1c, 0x20, 0x1c, 0xfc, 0xf7, 0xb8, 0xfc, + 0x00, 0x2c, 0x02, 0xd0, 0xf5, 0xf7, 0xe0, 0xfb, + 0x02, 0xe0, 0x00, 0x20, 0x00, 0xf0, 0xdc, 0xf9, + 0x03, 0x20, 0x00, 0x2c, 0x00, 0xd1, 0x02, 0x20, + 0x00, 0x06, 0x00, 0x0e, 0xf2, 0xf7, 0x4e, 0xfb, + 0x38, 0xbd, 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, + 0x82, 0x6a, 0x01, 0x21, 0x04, 0x20, 0x00, 0xf0, + 0x5d, 0xfa, 0x80, 0xbd, 0x3c, 0x00, 0x98, 0x1b, + 0x01, 0x00, 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x30, 0xf0, 0x9b, 0xf9, 0x80, 0xbd, 0x80, 0xb5, + 0x00, 0x22, 0x00, 0x21, 0x03, 0x20, 0x00, 0xf0, + 0x50, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x42, 0x69, 0x01, 0x21, 0x01, 0x20, + 0x00, 0xf0, 0x47, 0xfa, 0x80, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x04, 0x48, 0x80, 0xb5, 0x82, 0x88, + 0x00, 0x2a, 0x03, 0xd0, 0x01, 0x21, 0x3c, 0x00, + 0xd4, 0x1b, 0x01, 0x00, 0x02, 0x20, 0x00, 0xf0, + 0x3b, 0xfa, 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, + 0x10, 0xb5, 0x06, 0x4c, 0x20, 0x7b, 0x21, 0x6a, + 0xf9, 0xf7, 0x90, 0xf9, 0xa1, 0x69, 0x42, 0x18, + 0x01, 0x21, 0x02, 0x20, 0x00, 0xf0, 0x2c, 0xfa, + 0x10, 0xbd, 0x00, 0x00, 0xd4, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0xfc, 0xf7, 0x93, 0xfb, 0x01, 0x21, + 0x01, 0x20, 0xff, 0xf7, 0x97, 0xf8, 0x04, 0x20, + 0x3c, 0x00, 0x10, 0x1c, 0x01, 0x00, 0xf2, 0xf7, + 0x06, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x2f, 0xf0, 0x6b, 0xfb, 0x00, 0x28, 0x0a, 0xd0, + 0x01, 0x20, 0xf2, 0xf7, 0xfc, 0xfa, 0xfa, 0xf7, + 0x2a, 0xfc, 0x00, 0x28, 0x02, 0xd1, 0x04, 0x20, + 0xf6, 0xf7, 0x5d, 0xf8, 0x80, 0xbd, 0x03, 0x21, + 0x16, 0x20, 0xef, 0xf7, 0x32, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x02, 0x48, 0x80, 0xb5, 0x00, 0x68, + 0xee, 0xf7, 0x3c, 0x00, 0x4c, 0x1c, 0x01, 0x00, + 0xc5, 0xfb, 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x42, 0x69, 0x01, 0x21, + 0x01, 0x20, 0x00, 0xf0, 0xf7, 0xf9, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, 0x30, 0xf0, + 0x35, 0xf9, 0x80, 0xbd, 0xb0, 0xb5, 0x18, 0x4c, + 0xaa, 0x20, 0x00, 0x5d, 0x04, 0x28, 0x19, 0xd1, + 0x01, 0x25, 0xe5, 0x62, 0x25, 0x63, 0x01, 0xf0, + 0x93, 0xf8, 0xa0, 0x66, 0x3c, 0x00, 0x88, 0x1c, + 0x01, 0x00, 0x01, 0xf0, 0xfc, 0xfd, 0xf2, 0xf7, + 0x2e, 0xfe, 0x00, 0x28, 0x0e, 0xd0, 0x02, 0x20, + 0xf2, 0xf7, 0xc3, 0xfa, 0xa5, 0x60, 0x01, 0xf0, + 0x86, 0xf8, 0x64, 0x30, 0x60, 0x60, 0xfa, 0xf7, + 0x8a, 0xfd, 0x01, 0x21, 0x01, 0x20, 0xff, 0xf7, + 0x46, 0xf8, 0xb0, 0xbd, 0x01, 0x20, 0xf2, 0xf7, + 0xb4, 0xfa, 0x00, 0x20, 0xa0, 0x60, 0x00, 0x21, + 0x01, 0x20, 0xff, 0xf7, 0x3c, 0xf8, 0x3c, 0x00, + 0xc4, 0x1c, 0x01, 0x00, 0xf2, 0xf7, 0x66, 0xfe, + 0x00, 0x28, 0xf1, 0xd0, 0xfa, 0xf7, 0x76, 0xfd, + 0xb0, 0xbd, 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0xef, 0xf7, 0xd6, 0xfe, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x20, + 0xef, 0xf7, 0xd0, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0xac, 0x21, 0x09, 0x5c, 0x02, 0x4a, 0x09, 0x02, + 0x89, 0x18, 0xc0, 0x31, 0x81, 0x60, 0x70, 0x47, + 0x3c, 0x00, 0x00, 0x1d, 0x01, 0x00, 0x70, 0x75, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x28, 0x04, 0xd1, + 0x03, 0xc9, 0x09, 0x68, 0xee, 0xf7, 0x64, 0xfb, + 0x80, 0xbd, 0x01, 0x21, 0x14, 0x20, 0xef, 0xf7, + 0xc4, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x28, + 0x02, 0xd1, 0x02, 0x48, 0x40, 0x68, 0x70, 0x47, + 0x40, 0x68, 0x70, 0x47, 0x00, 0x00, 0x58, 0x75, + 0x01, 0x00, 0x10, 0xb5, 0x00, 0x24, 0xf8, 0xf7, + 0x1c, 0xfb, 0x3c, 0x00, 0x3c, 0x1d, 0x01, 0x00, + 0x00, 0x28, 0x04, 0xd0, 0x40, 0x30, 0x80, 0x7a, + 0x05, 0x28, 0x00, 0xd1, 0x01, 0x24, 0x20, 0x1c, + 0x10, 0xbd, 0x00, 0x00, 0x04, 0x48, 0x00, 0x21, + 0x40, 0x68, 0x01, 0xe0, 0x01, 0x63, 0x40, 0x68, + 0x00, 0x28, 0xfb, 0xd1, 0x70, 0x47, 0x00, 0x00, + 0x58, 0x75, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0d, 0x1c, 0xf7, 0xf7, 0xa5, 0xf8, 0x40, 0x34, + 0xe5, 0x72, 0xb0, 0xbd, 0x3c, 0x00, 0x78, 0x1d, + 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x1c, 0xf8, 0xf7, + 0xfa, 0xfa, 0x04, 0x1c, 0x04, 0xd0, 0x05, 0x21, + 0x14, 0x20, 0xef, 0xf7, 0x8c, 0xfa, 0x28, 0xe0, + 0x00, 0x25, 0x14, 0x49, 0x28, 0x02, 0x46, 0x18, + 0x30, 0x1c, 0x44, 0x30, 0x06, 0x22, 0x12, 0x49, + 0xee, 0xf7, 0x2d, 0xfb, 0x00, 0x28, 0x02, 0xd1, + 0xac, 0x20, 0x85, 0x55, 0x34, 0x1c, 0x01, 0x35, + 0x03, 0x2d, 0xee, 0xd3, 0x00, 0x2c, 0x3c, 0x00, + 0xb4, 0x1d, 0x01, 0x00, 0x14, 0xd0, 0x39, 0x1c, + 0x20, 0x1c, 0xf8, 0xf7, 0x2b, 0xf8, 0x09, 0x49, + 0x00, 0x20, 0x20, 0x60, 0x18, 0x39, 0x48, 0x68, + 0x60, 0x60, 0x00, 0x28, 0x00, 0xd0, 0x04, 0x60, + 0x4c, 0x60, 0xca, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0x01, 0x21, 0x20, 0x1c, 0xee, 0xf7, 0xfe, 0xfa, + 0x20, 0x1c, 0xf8, 0xbd, 0x70, 0x75, 0x01, 0x00, + 0x58, 0x46, 0x01, 0x00, 0x80, 0xb5, 0xf8, 0xf7, + 0x3c, 0x00, 0xf0, 0x1d, 0x01, 0x00, 0xc1, 0xfa, + 0x00, 0x28, 0x04, 0xd1, 0x06, 0x21, 0x14, 0x20, + 0xef, 0xf7, 0x53, 0xfa, 0x80, 0xbd, 0xf5, 0xf7, + 0x16, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0xf8, 0xf7, 0xb3, 0xfa, 0x80, 0xbd, 0x10, 0xb5, + 0x09, 0x4c, 0x21, 0x88, 0x02, 0x29, 0x03, 0xd1, + 0x14, 0x20, 0xef, 0xf7, 0x42, 0xfa, 0x04, 0xe0, + 0xa3, 0x68, 0x8a, 0x00, 0x98, 0x50, 0x48, 0x1c, + 0x20, 0x80, 0x3c, 0x00, 0x2c, 0x1e, 0x01, 0x00, + 0x20, 0x88, 0x01, 0x38, 0x00, 0x04, 0x00, 0x0c, + 0x10, 0xbd, 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, + 0x0b, 0x1c, 0x11, 0x1c, 0x08, 0x4a, 0x80, 0xb5, + 0x12, 0x88, 0x90, 0x42, 0x06, 0xd2, 0xda, 0x68, + 0xc0, 0x00, 0x12, 0x18, 0x14, 0x20, 0x01, 0xf0, + 0xbb, 0xfb, 0x80, 0xbd, 0x03, 0x21, 0x14, 0x20, + 0xef, 0xf7, 0x22, 0xfa, 0x80, 0xbd, 0x00, 0x00, + 0x58, 0x75, 0x01, 0x00, 0x3c, 0x00, 0x68, 0x1e, + 0x01, 0x00, 0x08, 0x4a, 0x80, 0xb5, 0x12, 0x88, + 0x90, 0x42, 0x06, 0xd2, 0xc9, 0x68, 0xc0, 0x00, + 0x09, 0x18, 0x14, 0x20, 0x01, 0xf0, 0xdb, 0xfb, + 0x80, 0xbd, 0x04, 0x21, 0x14, 0x20, 0xef, 0xf7, + 0x0e, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x58, 0x75, + 0x01, 0x00, 0x01, 0x49, 0xc8, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, 0x80, 0xb5, + 0x06, 0x22, 0x44, 0x30, 0xee, 0xf7, 0x3c, 0x00, + 0xa4, 0x1e, 0x01, 0x00, 0xab, 0xfa, 0x00, 0x28, + 0x01, 0xd1, 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, + 0x80, 0xbd, 0x00, 0x00, 0x1c, 0xb5, 0x14, 0x4c, + 0x20, 0x69, 0x00, 0x28, 0x23, 0xd0, 0x20, 0x78, + 0x0a, 0x28, 0x01, 0xd0, 0x00, 0xf0, 0xfc, 0xf8, + 0x00, 0x20, 0x60, 0x61, 0x0f, 0x48, 0x40, 0x79, + 0xa0, 0x70, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x28, + 0x15, 0xd1, 0xfd, 0xf7, 0xed, 0xfe, 0x01, 0x90, + 0x3c, 0x00, 0xe0, 0x1e, 0x01, 0x00, 0xfd, 0xf7, + 0x82, 0xfe, 0x00, 0x90, 0x00, 0xab, 0x18, 0x79, + 0x19, 0x78, 0x40, 0x1a, 0x18, 0x71, 0x58, 0x79, + 0x59, 0x78, 0x40, 0x1a, 0x58, 0x71, 0x01, 0x98, + 0xf2, 0xf7, 0x89, 0xfe, 0x05, 0x20, 0x20, 0x70, + 0x00, 0xf0, 0xbf, 0xf9, 0x1c, 0xbd, 0x7c, 0x78, + 0x01, 0x00, 0x0c, 0x5a, 0x01, 0x00, 0x08, 0xb5, + 0x04, 0x4a, 0x00, 0x90, 0x14, 0x32, 0x00, 0x20, + 0x02, 0x4b, 0x3c, 0x00, 0x1c, 0x1f, 0x01, 0x00, + 0x02, 0x49, 0xf1, 0xf7, 0x7d, 0xf9, 0x08, 0xbd, + 0x2c, 0x75, 0x01, 0x00, 0xb1, 0xa8, 0x00, 0x00, + 0xb0, 0xb5, 0x00, 0x28, 0x06, 0xd0, 0x01, 0x28, + 0x06, 0xd0, 0x02, 0x28, 0x07, 0xd1, 0x0c, 0x4c, + 0x01, 0x25, 0x07, 0xe0, 0x0b, 0x4c, 0x04, 0xe0, + 0x0a, 0x4c, 0x2a, 0x3c, 0x01, 0xe0, 0x08, 0x4c, + 0xb6, 0x34, 0x00, 0x25, 0x00, 0xf0, 0x2c, 0xff, + 0x07, 0x49, 0x89, 0x6e, 0x3c, 0x00, 0x58, 0x1f, + 0x01, 0x00, 0x09, 0x19, 0x09, 0x1a, 0xa1, 0x42, + 0x00, 0xd9, 0x00, 0x21, 0x2a, 0x1c, 0x16, 0x20, + 0x01, 0xf0, 0x31, 0xfb, 0xb0, 0xbd, 0x71, 0x02, + 0x00, 0x00, 0x0c, 0x05, 0x00, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0x8c, 0xb5, 0x00, 0xab, 0x8e, 0x21, + 0x19, 0x80, 0xfc, 0xf7, 0x38, 0xf9, 0x01, 0x90, + 0x68, 0x46, 0xfb, 0xf7, 0xa6, 0xfa, 0x8c, 0xbd, + 0x00, 0x00, 0xbf, 0xb5, 0x13, 0x4a, 0x3c, 0x00, + 0x94, 0x1f, 0x01, 0x00, 0x01, 0x91, 0x0d, 0x1c, + 0x11, 0x7c, 0x88, 0x43, 0x04, 0x1c, 0x21, 0x43, + 0x08, 0x1c, 0x10, 0x74, 0xa0, 0x07, 0x0b, 0xd5, + 0x0e, 0x48, 0x00, 0x90, 0x01, 0x20, 0x02, 0x90, + 0x00, 0xf0, 0xfc, 0xfe, 0x0c, 0x49, 0x40, 0x18, + 0x03, 0x90, 0x68, 0x46, 0xf9, 0xf7, 0x6a, 0xff, + 0xe0, 0x07, 0x0c, 0xd5, 0xf1, 0xf7, 0x2c, 0xfd, + 0x00, 0x28, 0x03, 0xd0, 0x07, 0x48, 0x85, 0x42, + 0x3c, 0x00, 0xd0, 0x1f, 0x01, 0x00, 0x00, 0xd2, + 0x01, 0x90, 0x06, 0x48, 0x00, 0x90, 0x68, 0x46, + 0xf9, 0xf7, 0x09, 0xff, 0xbf, 0xbd, 0x78, 0x69, + 0x01, 0x00, 0x81, 0xea, 0x00, 0x00, 0x10, 0x27, + 0x00, 0x00, 0xa0, 0x86, 0x01, 0x00, 0x75, 0xea, + 0x00, 0x00, 0x10, 0xb5, 0x0a, 0x4c, 0x60, 0x69, + 0x00, 0x28, 0x0e, 0xd1, 0x01, 0x20, 0x60, 0x61, + 0xa1, 0x68, 0x07, 0x48, 0xfd, 0xf7, 0xcb, 0xf9, + 0x00, 0x21, 0x3c, 0x00, 0x0c, 0x20, 0x01, 0x00, + 0xa0, 0x68, 0xf9, 0xf7, 0xd1, 0xfb, 0x01, 0x22, + 0x07, 0x20, 0x04, 0x49, 0x01, 0xf0, 0xd8, 0xfa, + 0x10, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x98, 0x3a, 0x00, 0x00, + 0x10, 0xb5, 0x0c, 0x1c, 0x11, 0x1c, 0x06, 0x4a, + 0x00, 0x2b, 0x10, 0x70, 0x03, 0xd0, 0x00, 0x28, + 0x02, 0xd1, 0xf9, 0xf7, 0xf5, 0xfd, 0x10, 0xbd, + 0x20, 0x1c, 0xf9, 0xf7, 0x3c, 0x00, 0x48, 0x20, + 0x01, 0x00, 0x01, 0xfe, 0x10, 0xbd, 0xa0, 0x79, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4c, 0x05, 0x1c, + 0xe3, 0x6a, 0x20, 0x1f, 0x01, 0x33, 0xe3, 0x62, + 0x00, 0x88, 0x00, 0x29, 0x06, 0xd0, 0xa1, 0x68, + 0x89, 0x18, 0x21, 0x61, 0x05, 0x4a, 0x00, 0xf0, + 0xfc, 0xfe, 0x01, 0xe0, 0x00, 0xf0, 0xcf, 0xfe, + 0x25, 0x77, 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x55, 0xe3, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x20, 0x01, 0x00, 0x01, 0x1c, 0x03, 0x48, + 0x80, 0xb5, 0x40, 0x88, 0xff, 0xf7, 0xec, 0xfe, + 0x80, 0xbd, 0x00, 0x00, 0x98, 0x7c, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0xc1, 0x68, 0x18, 0x38, + 0x80, 0x88, 0xff, 0xf7, 0xe1, 0xfe, 0x80, 0xbd, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x00, 0x21, + 0x16, 0x20, 0x01, 0xf0, 0xbf, 0xfa, 0x01, 0x21, + 0x16, 0x20, 0x01, 0xf0, 0xbb, 0xfa, 0x80, 0xbd, + 0x3c, 0x00, 0xc0, 0x20, 0x01, 0x00, 0x10, 0xb5, + 0x0b, 0x4c, 0x20, 0x78, 0x0a, 0x28, 0x10, 0xd0, + 0x01, 0x20, 0x60, 0x61, 0x0a, 0x21, 0x13, 0x20, + 0x01, 0xf0, 0xaf, 0xfa, 0x0a, 0x20, 0x60, 0x70, + 0x20, 0x70, 0xfd, 0xf7, 0x3c, 0xfb, 0x01, 0x20, + 0xfd, 0xf7, 0xe9, 0xfb, 0x00, 0x20, 0xfa, 0xf7, + 0xc4, 0xf9, 0x10, 0xbd, 0x00, 0x00, 0x7c, 0x78, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x4c, 0x00, 0x20, + 0x0b, 0x49, 0x3c, 0x00, 0xfc, 0x20, 0x01, 0x00, + 0x20, 0x63, 0xe0, 0x62, 0x50, 0x39, 0x88, 0x61, + 0x20, 0x70, 0x08, 0x48, 0x38, 0x21, 0x0c, 0x38, + 0x00, 0x7a, 0x08, 0x55, 0x81, 0x21, 0x18, 0x20, + 0x01, 0xf0, 0x8e, 0xfa, 0x20, 0x69, 0x01, 0x28, + 0x02, 0xd1, 0x00, 0x20, 0xf5, 0xf7, 0x3e, 0xfb, + 0x10, 0xbd, 0x00, 0x00, 0xf4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x1c, 0x4c, 0x00, 0x25, 0x2c, 0x22, + 0x01, 0x1d, 0x20, 0x1c, 0x3c, 0x00, 0x38, 0x21, + 0x01, 0x00, 0x9a, 0xb0, 0xee, 0xf7, 0x39, 0xfa, + 0x18, 0x49, 0x2c, 0x31, 0x08, 0x1c, 0x00, 0x7a, + 0x8a, 0x69, 0x00, 0x2a, 0x13, 0xd1, 0x02, 0x28, + 0x03, 0xd1, 0xa0, 0x68, 0x00, 0x28, 0x20, 0xd0, + 0x04, 0xe0, 0x00, 0x28, 0x1d, 0xd1, 0x60, 0x68, + 0x00, 0x28, 0x1a, 0xd0, 0x80, 0x02, 0x88, 0x61, + 0x0e, 0x48, 0x69, 0x46, 0x24, 0x38, 0x00, 0x68, + 0xef, 0xf7, 0xcb, 0xfb, 0x11, 0xe0, 0x3c, 0x00, + 0x74, 0x21, 0x01, 0x00, 0x00, 0x22, 0x02, 0x28, + 0x03, 0xd1, 0xa0, 0x68, 0x00, 0x28, 0x09, 0xd1, + 0x04, 0xe0, 0x00, 0x28, 0x08, 0xd1, 0x60, 0x68, + 0x00, 0x28, 0x03, 0xd1, 0x8a, 0x61, 0xff, 0xf7, + 0xb1, 0xff, 0x01, 0xe0, 0x80, 0x02, 0x88, 0x61, + 0x28, 0x1c, 0x1a, 0xb0, 0xb0, 0xbd, 0x00, 0x00, + 0xc8, 0x6e, 0x01, 0x00, 0xf8, 0xb5, 0x0c, 0x49, + 0x02, 0x20, 0x48, 0x60, 0x0b, 0x49, 0x00, 0x05, + 0x3c, 0x00, 0xb0, 0x21, 0x01, 0x00, 0x08, 0x60, + 0x0b, 0x4f, 0xb8, 0x68, 0xf9, 0x68, 0x7c, 0x68, + 0x45, 0x1a, 0x2e, 0x1c, 0x04, 0xe0, 0xa0, 0x68, + 0x61, 0x68, 0xee, 0xf7, 0x09, 0xf9, 0x24, 0x68, + 0x01, 0x3d, 0xf8, 0xd2, 0x7c, 0x60, 0xf8, 0x68, + 0x80, 0x19, 0xf8, 0x60, 0xf8, 0xbd, 0x40, 0x20, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0x44, 0xe3, + 0x01, 0x00, 0xf8, 0xb5, 0x1f, 0x4e, 0x04, 0x1c, + 0x30, 0x69, 0x3c, 0x00, 0xec, 0x21, 0x01, 0x00, + 0x01, 0x21, 0xf9, 0xf7, 0x99, 0xfa, 0x1d, 0x49, + 0x60, 0x00, 0x40, 0x18, 0x10, 0x38, 0x81, 0x7b, + 0x1b, 0x4a, 0x51, 0x72, 0xc0, 0x7b, 0x10, 0x74, + 0x1a, 0x4f, 0x1b, 0x4d, 0x0e, 0x2c, 0x0a, 0xd1, + 0x01, 0x22, 0x02, 0x21, 0x08, 0x20, 0x01, 0xf0, + 0xf3, 0xfb, 0x03, 0x20, 0xff, 0x21, 0x41, 0x31, + 0x39, 0x86, 0x14, 0x21, 0x08, 0xe0, 0x02, 0x22, + 0x01, 0x21, 0x08, 0x20, 0x3c, 0x00, 0x28, 0x22, + 0x01, 0x00, 0x01, 0xf0, 0xe8, 0xfb, 0x12, 0x49, + 0x02, 0x20, 0x39, 0x86, 0x10, 0x21, 0xa9, 0x71, + 0xe8, 0x71, 0x10, 0x48, 0x11, 0x4a, 0x00, 0x19, + 0x10, 0x38, 0xc0, 0x7b, 0x00, 0x28, 0x03, 0xd0, + 0x01, 0x21, 0x51, 0x73, 0x10, 0x73, 0x01, 0xe0, + 0x00, 0x20, 0x50, 0x73, 0x00, 0x21, 0x20, 0x1c, + 0xfd, 0xf7, 0xe5, 0xfd, 0x30, 0x69, 0xf9, 0xf7, + 0x08, 0xfb, 0xf8, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x22, 0x01, 0x00, 0x40, 0x7c, 0x01, 0x00, + 0x76, 0x46, 0x01, 0x00, 0x0c, 0x80, 0x07, 0x00, + 0x30, 0x80, 0x07, 0x00, 0x00, 0x80, 0x07, 0x00, + 0xff, 0x01, 0x00, 0x00, 0x5c, 0x57, 0x01, 0x00, + 0xd0, 0x80, 0x07, 0x00, 0x10, 0xb5, 0x15, 0x4c, + 0x14, 0x4a, 0x21, 0x78, 0x00, 0x20, 0x18, 0x32, + 0x05, 0x29, 0x1d, 0xd0, 0x06, 0x29, 0x1b, 0xd0, + 0x07, 0x29, 0x01, 0xd0, 0x08, 0x29, 0x06, 0xd1, + 0x3c, 0x00, 0xa0, 0x22, 0x01, 0x00, 0x91, 0x68, + 0x05, 0x20, 0x10, 0x29, 0x00, 0xdb, 0x06, 0x20, + 0x20, 0x70, 0x01, 0x20, 0xa1, 0x78, 0x00, 0x28, + 0x61, 0x70, 0x0b, 0xd0, 0x00, 0x20, 0xfa, 0xf7, + 0xdc, 0xf8, 0x00, 0x21, 0x60, 0x78, 0xf4, 0xf7, + 0x3c, 0xfa, 0x0a, 0x22, 0x1e, 0x21, 0x13, 0x20, + 0x01, 0xf0, 0x7f, 0xf9, 0x10, 0xbd, 0xd1, 0x69, + 0x07, 0x20, 0x10, 0x29, 0xe8, 0xdb, 0x08, 0x20, + 0xe6, 0xe7, 0x3c, 0x00, 0xdc, 0x22, 0x01, 0x00, + 0x7c, 0x78, 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, + 0x01, 0x1c, 0x04, 0x1c, 0x44, 0x31, 0x00, 0x20, + 0xf6, 0xf7, 0x40, 0xfa, 0x30, 0x34, 0x00, 0x2d, + 0x07, 0xd0, 0x0e, 0xc8, 0x0e, 0xc4, 0x08, 0xc8, + 0x10, 0x38, 0x08, 0xc4, 0xf4, 0xf7, 0xc4, 0xf9, + 0xb0, 0xbd, 0x1e, 0xcc, 0x1e, 0xc0, 0xb0, 0xbd, + 0xf8, 0xb5, 0x08, 0x1c, 0x11, 0x1c, 0xf4, 0xf7, + 0x87, 0xfa, 0x08, 0x4c, 0x3c, 0x00, 0x18, 0x23, + 0x01, 0x00, 0x00, 0x25, 0x08, 0x4e, 0x08, 0x4f, + 0x06, 0xe0, 0x30, 0x6b, 0x00, 0x28, 0x03, 0xd0, + 0x35, 0x63, 0x20, 0x68, 0xee, 0xf7, 0x55, 0xf8, + 0x38, 0x68, 0x00, 0x28, 0xf5, 0xd0, 0xf8, 0xbd, + 0x00, 0x00, 0x5c, 0x5b, 0x01, 0x00, 0xe4, 0xfe, + 0x01, 0x00, 0x84, 0x5a, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x06, 0x00, 0x0e, 0x00, 0xf0, 0x07, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x0a, 0x1c, 0x3c, 0x00, + 0x54, 0x23, 0x01, 0x00, 0x23, 0x21, 0x01, 0xf0, + 0x2b, 0xfa, 0x80, 0xbd, 0xb0, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x12, 0x28, 0x03, 0xd3, 0x01, 0x21, + 0x23, 0x20, 0xee, 0xf7, 0x9b, 0xff, 0x06, 0x49, + 0xa0, 0x00, 0x08, 0x58, 0x04, 0xe0, 0x12, 0xc8, + 0x28, 0x1c, 0xee, 0xf7, 0x2e, 0xf8, 0x20, 0x1c, + 0x00, 0x28, 0xf8, 0xd1, 0xb0, 0xbd, 0x00, 0x00, + 0x68, 0x5b, 0x01, 0x00, 0xf8, 0xb5, 0x0e, 0x1c, + 0x3c, 0x00, 0x90, 0x23, 0x01, 0x00, 0x00, 0x25, + 0x04, 0x1c, 0x12, 0x28, 0x03, 0xd3, 0x01, 0x21, + 0x23, 0x20, 0xee, 0xf7, 0x82, 0xff, 0x13, 0x48, + 0xa7, 0x00, 0xc4, 0x59, 0x08, 0xe0, 0x20, 0x68, + 0xb0, 0x42, 0x03, 0xd1, 0x03, 0x21, 0x23, 0x20, + 0xee, 0xf7, 0x77, 0xff, 0x25, 0x1c, 0x64, 0x68, + 0x00, 0x2c, 0xf4, 0xd1, 0x0c, 0x4a, 0x04, 0x3a, + 0x10, 0x68, 0x00, 0x28, 0x01, 0xd0, 0x41, 0x68, + 0x11, 0x60, 0x3c, 0x00, 0xcc, 0x23, 0x01, 0x00, + 0x00, 0x28, 0x04, 0xd1, 0x02, 0x21, 0x23, 0x20, + 0xee, 0xf7, 0x66, 0xff, 0xf8, 0xbd, 0x00, 0x21, + 0x41, 0x60, 0x06, 0x60, 0x00, 0x2d, 0x01, 0xd0, + 0x68, 0x60, 0xf7, 0xe7, 0x01, 0x49, 0xc8, 0x51, + 0xf4, 0xe7, 0x00, 0x00, 0x68, 0x5b, 0x01, 0x00, + 0x70, 0xb5, 0x0e, 0x1c, 0x05, 0x1c, 0x00, 0x24, + 0x12, 0x28, 0x03, 0xd3, 0x01, 0x21, 0x23, 0x20, + 0xee, 0xf7, 0x4e, 0xff, 0x3c, 0x00, 0x08, 0x24, + 0x01, 0x00, 0x0d, 0x4b, 0xaa, 0x00, 0x98, 0x58, + 0x04, 0xe0, 0x01, 0x68, 0xb1, 0x42, 0x04, 0xd0, + 0x04, 0x1c, 0x40, 0x68, 0x00, 0x28, 0xf8, 0xd1, + 0x70, 0xbd, 0x00, 0x28, 0xfc, 0xd0, 0x00, 0x2c, + 0x41, 0x68, 0x01, 0xd1, 0x99, 0x50, 0x00, 0xe0, + 0x61, 0x60, 0x00, 0x21, 0x03, 0x4a, 0x01, 0x60, + 0x04, 0x3a, 0x11, 0x68, 0x41, 0x60, 0x10, 0x60, + 0x70, 0xbd, 0x68, 0x5b, 0x01, 0x00, 0x3c, 0x00, + 0x44, 0x24, 0x01, 0x00, 0xf3, 0xb5, 0x81, 0xb0, + 0x00, 0x28, 0x17, 0xd0, 0x01, 0x78, 0xff, 0x29, + 0x14, 0xd0, 0x45, 0x78, 0x44, 0x19, 0x02, 0x34, + 0x80, 0x27, 0x01, 0x3c, 0x26, 0x78, 0x01, 0x3d, + 0xbe, 0x43, 0x30, 0x1c, 0xf8, 0xf7, 0x82, 0xfc, + 0x01, 0x21, 0x81, 0x40, 0x02, 0x98, 0x01, 0x40, + 0x02, 0xd0, 0x3e, 0x43, 0x30, 0x1c, 0x20, 0x70, + 0x00, 0x2d, 0xee, 0xd1, 0xfe, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x24, 0x01, 0x00, 0x10, 0x4b, + 0x10, 0xb5, 0x59, 0x68, 0x41, 0x1a, 0x0f, 0x29, + 0x0d, 0xdc, 0x0e, 0x22, 0xd2, 0x43, 0x91, 0x42, + 0x09, 0xdb, 0x1a, 0x1c, 0x92, 0x68, 0x00, 0x29, + 0x01, 0xdd, 0x00, 0x2a, 0x03, 0xda, 0x00, 0x29, + 0x0d, 0xda, 0x00, 0x2a, 0x0b, 0xdc, 0x04, 0x33, + 0x03, 0xc3, 0xfd, 0xf7, 0x10, 0xfd, 0x04, 0x1c, + 0xfd, 0xf7, 0x13, 0xfd, 0x00, 0x28, 0x02, 0xd0, + 0x20, 0x1c, 0x3c, 0x00, 0xbc, 0x24, 0x01, 0x00, + 0xff, 0xf7, 0x92, 0xfe, 0x10, 0xbd, 0x00, 0x00, + 0x18, 0x63, 0x01, 0x00, 0xf8, 0xb5, 0x64, 0x4c, + 0x07, 0x1c, 0x60, 0x78, 0xa1, 0x78, 0x88, 0x42, + 0x0f, 0xd1, 0x08, 0x1c, 0xfd, 0xf7, 0xce, 0xf8, + 0xe0, 0x60, 0x04, 0x20, 0x60, 0x70, 0x0a, 0x22, + 0x1e, 0x21, 0x13, 0x20, 0x01, 0xf0, 0x70, 0xf8, + 0x00, 0x21, 0x60, 0x78, 0xf4, 0xf7, 0x24, 0xf9, + 0xf8, 0xbd, 0x04, 0x28, 0x3c, 0x00, 0xf8, 0x24, + 0x01, 0x00, 0x6e, 0xd1, 0x58, 0x4e, 0xfd, 0xf7, + 0xbc, 0xf8, 0x00, 0x90, 0x71, 0x78, 0x04, 0x1c, + 0x00, 0x20, 0x05, 0x29, 0x21, 0xd2, 0x01, 0xa3, + 0x5b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, 0x0b, 0x0f, + 0x14, 0x1a, 0x02, 0x00, 0x51, 0x48, 0x51, 0x49, + 0x60, 0x43, 0x41, 0x18, 0x7d, 0x20, 0xc0, 0x00, + 0xee, 0xf7, 0x87, 0xf8, 0x11, 0xe0, 0x87, 0x20, + 0x60, 0x43, 0x4d, 0x49, 0x02, 0xe0, 0x3c, 0x00, + 0x34, 0x25, 0x01, 0x00, 0x45, 0x20, 0x4d, 0x49, + 0x60, 0x43, 0x40, 0x18, 0x08, 0xe0, 0x4c, 0x48, + 0xcd, 0x21, 0x09, 0x01, 0x60, 0x43, 0x40, 0x1a, + 0x02, 0xe0, 0x46, 0x20, 0x60, 0x43, 0x82, 0x38, + 0x06, 0x06, 0x48, 0x48, 0x07, 0x21, 0x00, 0x79, + 0x36, 0x16, 0x08, 0x1a, 0x00, 0x19, 0x00, 0x90, + 0x68, 0x46, 0xfe, 0xf7, 0x5f, 0xfd, 0x38, 0x1c, + 0xfd, 0xf7, 0x2e, 0xfb, 0x00, 0x99, 0x42, 0x4a, + 0x3c, 0x00, 0x70, 0x25, 0x01, 0x00, 0x49, 0x00, + 0x51, 0x5a, 0x48, 0x43, 0x39, 0x49, 0x04, 0x1c, + 0x88, 0x78, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x28, + 0x1e, 0xd1, 0x35, 0x49, 0x00, 0x28, 0x03, 0xd1, + 0x3a, 0x48, 0x05, 0x78, 0x04, 0x20, 0x02, 0xe0, + 0x38, 0x48, 0x45, 0x78, 0x0c, 0x20, 0x30, 0x49, + 0xc9, 0x68, 0x49, 0x1b, 0x08, 0x18, 0x00, 0x90, + 0x68, 0x46, 0xfe, 0xf7, 0x3e, 0xfd, 0x00, 0x98, + 0x33, 0x49, 0x3c, 0x00, 0xac, 0x25, 0x01, 0x00, + 0x40, 0x00, 0x20, 0x31, 0x08, 0x5a, 0x2a, 0x49, + 0x44, 0x43, 0xc8, 0x68, 0xa8, 0x42, 0x01, 0xd9, + 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, 0x2e, 0x48, + 0x21, 0x18, 0x40, 0x00, 0xee, 0xf7, 0xa2, 0xf8, + 0x04, 0x1c, 0x00, 0x2d, 0x03, 0xd0, 0xfd, 0xf7, + 0xc3, 0xfa, 0x02, 0xe0, 0x3d, 0xe0, 0xfd, 0xf7, + 0xf3, 0xfa, 0x00, 0x2f, 0x02, 0xd1, 0x25, 0x48, + 0x0e, 0x38, 0x01, 0xe0, 0x3c, 0x00, 0xe8, 0x25, + 0x01, 0x00, 0x23, 0x48, 0x0a, 0x38, 0x01, 0x68, + 0x61, 0x1a, 0xcb, 0x1c, 0x01, 0xdb, 0x03, 0x29, + 0x00, 0xdd, 0x04, 0x60, 0x01, 0x68, 0xa1, 0x42, + 0x01, 0xd2, 0x01, 0x31, 0x04, 0xe0, 0xa1, 0x42, + 0x03, 0xd9, 0x00, 0x29, 0x01, 0xd0, 0x01, 0x39, + 0x01, 0x60, 0x01, 0x68, 0x38, 0x1c, 0xfd, 0xf7, + 0xc0, 0xfb, 0x10, 0x4c, 0x0a, 0x20, 0x60, 0x70, + 0x0a, 0x22, 0x13, 0x20, 0xa1, 0x68, 0x3c, 0x00, + 0x24, 0x26, 0x01, 0x00, 0x00, 0xf0, 0xd2, 0xff, + 0x60, 0x68, 0x00, 0xf0, 0xf7, 0xfa, 0x00, 0x28, + 0x00, 0xd1, 0x5f, 0xe7, 0x00, 0xf0, 0xba, 0xfb, + 0x11, 0x49, 0x00, 0x23, 0x40, 0x18, 0x0e, 0x49, + 0x60, 0x60, 0x1e, 0x39, 0xc8, 0x56, 0xb0, 0x42, + 0xf3, 0xd0, 0x0e, 0x70, 0x31, 0x1c, 0x00, 0x20, + 0xff, 0xf7, 0x84, 0xfe, 0x4e, 0xe7, 0xff, 0xf7, + 0x15, 0xfe, 0x4b, 0xe7, 0x7c, 0x78, 0x01, 0x00, + 0x3c, 0x00, 0x60, 0x26, 0x01, 0x00, 0x60, 0xd7, + 0xff, 0xff, 0x60, 0x8f, 0x01, 0x00, 0x54, 0x0b, + 0x00, 0x00, 0xc9, 0x09, 0x00, 0x00, 0x8e, 0xfe, + 0xff, 0xff, 0x0c, 0x5a, 0x01, 0x00, 0x12, 0x5a, + 0x01, 0x00, 0x20, 0xa1, 0x07, 0x00, 0x40, 0x42, + 0x0f, 0x00, 0x30, 0xb5, 0x0c, 0x4b, 0xfe, 0x24, + 0x1b, 0x88, 0x04, 0x40, 0xc0, 0x07, 0x5d, 0x07, + 0x6d, 0x0f, 0xdb, 0x08, 0xc0, 0x0f, 0x9c, 0x42, + 0x0b, 0xd8, 0x3c, 0x00, 0x9c, 0x26, 0x01, 0x00, + 0xa2, 0x18, 0x04, 0x3a, 0x9a, 0x42, 0x07, 0xd3, + 0x1a, 0x1b, 0x89, 0x5c, 0x01, 0x22, 0xaa, 0x40, + 0x11, 0x40, 0x01, 0xd0, 0x02, 0x21, 0x08, 0x43, + 0x30, 0xbd, 0x00, 0x00, 0xfa, 0x60, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x28, 0x03, 0xd0, 0x01, 0x1c, + 0x14, 0x20, 0xf5, 0xf7, 0xff, 0xfa, 0x80, 0xbd, + 0xb0, 0xb5, 0x04, 0x1c, 0xf7, 0xf7, 0x08, 0xfd, + 0x13, 0x4d, 0x00, 0x28, 0x3c, 0x00, 0xd8, 0x26, + 0x01, 0x00, 0x1d, 0xd1, 0xa0, 0x07, 0x16, 0xd5, + 0x02, 0x20, 0x84, 0x43, 0x11, 0x48, 0x01, 0x22, + 0x2a, 0x62, 0x40, 0x68, 0x00, 0x28, 0x13, 0xd0, + 0xf2, 0xf7, 0x51, 0xf9, 0x00, 0x28, 0x0f, 0xd1, + 0x0b, 0x48, 0xe4, 0x30, 0x80, 0x7a, 0x01, 0x28, + 0x00, 0xd0, 0x00, 0x22, 0x11, 0x1c, 0x01, 0x20, + 0xf2, 0xf7, 0xa5, 0xf9, 0x04, 0xe0, 0x00, 0xf0, + 0x4e, 0xfb, 0xe8, 0x61, 0xf2, 0xf7, 0x3c, 0x00, + 0x14, 0x27, 0x01, 0x00, 0x6b, 0xf9, 0xa9, 0x6a, + 0x00, 0x29, 0x02, 0xd0, 0x20, 0x1c, 0xed, 0xf7, + 0x5c, 0xfe, 0xb0, 0xbd, 0x60, 0x6c, 0x01, 0x00, + 0xb0, 0x57, 0x01, 0x00, 0x20, 0x48, 0xb0, 0xb5, + 0x81, 0x68, 0x01, 0x29, 0x04, 0xd1, 0x00, 0x78, + 0x00, 0x28, 0x01, 0xd1, 0xfd, 0xf7, 0x72, 0xfd, + 0x1b, 0x4d, 0x80, 0x3d, 0x2c, 0x1c, 0x70, 0x34, + 0x20, 0x78, 0x03, 0x38, 0x05, 0x28, 0x18, 0xd2, + 0x3c, 0x00, 0x50, 0x27, 0x01, 0x00, 0x01, 0xa3, + 0x1b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, 0x04, 0x15, + 0x27, 0x27, 0x27, 0x00, 0xfb, 0xf7, 0xf1, 0xff, + 0x60, 0x7b, 0x01, 0x1c, 0xff, 0x31, 0x61, 0x73, + 0x00, 0x28, 0xf7, 0xd1, 0x04, 0x20, 0x20, 0x70, + 0xa8, 0x89, 0xf8, 0xf7, 0xda, 0xf9, 0x01, 0x1c, + 0x00, 0x22, 0x0f, 0x20, 0x00, 0xf0, 0x25, 0xff, + 0xb0, 0xbd, 0xef, 0xf7, 0xce, 0xff, 0x6a, 0x21, + 0x49, 0x5b, 0x3c, 0x00, 0x8c, 0x27, 0x01, 0x00, + 0x88, 0x42, 0x0b, 0xd0, 0xe8, 0x89, 0xf8, 0xf7, + 0xcb, 0xf9, 0x01, 0x1c, 0x00, 0x23, 0x00, 0x22, + 0x0f, 0x20, 0x00, 0xf0, 0xf7, 0xff, 0x07, 0x20, + 0x20, 0x70, 0xb0, 0xbd, 0xfd, 0xf7, 0x3a, 0xfe, + 0xb0, 0xbd, 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, + 0xf0, 0xb5, 0x85, 0xb0, 0x04, 0x1c, 0x03, 0x80, + 0x18, 0x0c, 0x60, 0x80, 0x0d, 0x1c, 0x51, 0x78, + 0x10, 0x78, 0x09, 0x02, 0x3c, 0x00, 0xc8, 0x27, + 0x01, 0x00, 0x48, 0x40, 0xa0, 0x80, 0xd1, 0x78, + 0x90, 0x78, 0x09, 0x02, 0x48, 0x40, 0xe0, 0x80, + 0x51, 0x79, 0x10, 0x79, 0x09, 0x02, 0x48, 0x40, + 0x20, 0x81, 0x68, 0x46, 0x1a, 0x49, 0x14, 0x22, + 0xed, 0xf7, 0xe3, 0xfe, 0x00, 0x23, 0x00, 0x20, + 0xd9, 0x07, 0xc9, 0x0f, 0x8c, 0x46, 0x42, 0x00, + 0x56, 0x07, 0x76, 0x0f, 0x61, 0x46, 0x89, 0x19, + 0x49, 0x00, 0x6e, 0x5c, 0x49, 0x19, 0x3c, 0x00, + 0x04, 0x28, 0x01, 0x00, 0x49, 0x78, 0x6f, 0x46, + 0x09, 0x02, 0x4e, 0x40, 0x81, 0x00, 0x79, 0x58, + 0x0f, 0x4f, 0x49, 0x00, 0x61, 0x5a, 0x01, 0x30, + 0x4e, 0x40, 0x31, 0x06, 0x36, 0x0a, 0x76, 0x00, + 0xc9, 0x0d, 0x79, 0x5a, 0xf6, 0x19, 0x01, 0x27, + 0x7f, 0x02, 0xf6, 0x19, 0x36, 0x88, 0x71, 0x40, + 0xa6, 0x5a, 0x89, 0x19, 0xa1, 0x52, 0x05, 0x28, + 0xdc, 0xdb, 0x20, 0x89, 0xc0, 0x18, 0x01, 0x33, + 0x3c, 0x00, 0x40, 0x28, 0x01, 0x00, 0x08, 0x2b, + 0x20, 0x81, 0xd2, 0xdb, 0x05, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xd8, 0x56, 0x01, 0x00, 0xd8, 0x52, + 0x01, 0x00, 0xf0, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, + 0x1e, 0x1c, 0x00, 0x20, 0x89, 0xb0, 0x41, 0x00, + 0x53, 0x5a, 0x01, 0x30, 0x06, 0xaf, 0x7b, 0x52, + 0x05, 0x28, 0xf8, 0xdb, 0x10, 0x89, 0x00, 0xab, + 0x3a, 0x49, 0x80, 0x19, 0x58, 0x84, 0x68, 0x46, + 0x18, 0x22, 0x3c, 0x00, 0x7c, 0x28, 0x01, 0x00, + 0xed, 0xf7, 0x98, 0xfe, 0x00, 0x20, 0x41, 0x00, + 0x0a, 0x19, 0x52, 0x78, 0x63, 0x5c, 0x6f, 0x46, + 0x12, 0x02, 0x53, 0x40, 0x82, 0x00, 0xba, 0x58, + 0x06, 0xaf, 0x52, 0x00, 0xba, 0x5a, 0x31, 0x4f, + 0x01, 0x30, 0x53, 0x40, 0x1a, 0x06, 0x1b, 0x0a, + 0x5b, 0x00, 0xd2, 0x0d, 0xba, 0x5a, 0xdb, 0x19, + 0x01, 0x27, 0x7f, 0x02, 0xdb, 0x19, 0x1b, 0x88, + 0x5a, 0x40, 0x06, 0xab, 0x3c, 0x00, 0xb8, 0x28, + 0x01, 0x00, 0x5b, 0x5a, 0xd2, 0x18, 0x06, 0xab, + 0x5a, 0x52, 0x06, 0x28, 0xde, 0xdb, 0x61, 0x7b, + 0x20, 0x7b, 0x00, 0xab, 0x09, 0x02, 0x48, 0x40, + 0x59, 0x8c, 0x48, 0x40, 0x41, 0x08, 0xc0, 0x03, + 0x48, 0x40, 0x19, 0x8b, 0x40, 0x18, 0x18, 0x83, + 0xe1, 0x7b, 0xa0, 0x7b, 0x09, 0x02, 0x48, 0x40, + 0x19, 0x8b, 0x48, 0x40, 0x41, 0x08, 0xc0, 0x03, + 0x48, 0x40, 0x59, 0x8b, 0x40, 0x18, 0x3c, 0x00, + 0xf4, 0x28, 0x01, 0x00, 0x58, 0x83, 0x02, 0x20, + 0x41, 0x00, 0x06, 0xaa, 0x8a, 0x18, 0x20, 0x3a, + 0xd2, 0x8b, 0x01, 0x30, 0x53, 0x08, 0xd2, 0x03, + 0x5a, 0x40, 0x06, 0xab, 0x5b, 0x5a, 0xd2, 0x18, + 0x06, 0xab, 0x5a, 0x52, 0x06, 0x28, 0xef, 0xdb, + 0x30, 0x0a, 0x28, 0x70, 0x70, 0x04, 0x40, 0x0e, + 0x20, 0x21, 0x08, 0x43, 0x68, 0x70, 0xae, 0x70, + 0x61, 0x78, 0x20, 0x78, 0x00, 0xab, 0x09, 0x02, + 0x3c, 0x00, 0x30, 0x29, 0x01, 0x00, 0x48, 0x40, + 0x59, 0x8c, 0x48, 0x40, 0xc0, 0x05, 0x00, 0x0e, + 0xe8, 0x70, 0x00, 0x20, 0x41, 0x00, 0x06, 0xaa, + 0x53, 0x5a, 0x4a, 0x19, 0x01, 0x30, 0x13, 0x71, + 0x06, 0xab, 0x59, 0x5a, 0x09, 0x0a, 0x51, 0x71, + 0x06, 0x28, 0xf3, 0xdb, 0x09, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xec, 0x56, 0x01, 0x00, 0xd8, 0x52, + 0x01, 0x00, 0xf0, 0xb5, 0x46, 0x68, 0x05, 0x1c, + 0x60, 0x30, 0x3c, 0x00, 0x6c, 0x29, 0x01, 0x00, + 0x85, 0xb0, 0x04, 0x90, 0x60, 0xe0, 0x68, 0x68, + 0x0c, 0x21, 0x07, 0x69, 0x00, 0x20, 0xee, 0xf7, + 0x2d, 0xfe, 0x70, 0x61, 0x01, 0x89, 0x04, 0x39, + 0x09, 0x04, 0x09, 0x0c, 0x01, 0x81, 0x70, 0x69, + 0x00, 0x68, 0x40, 0x18, 0x04, 0x21, 0xee, 0xf7, + 0x21, 0xfe, 0xf0, 0x61, 0x70, 0x69, 0x20, 0x21, + 0x04, 0x68, 0x04, 0x98, 0x04, 0x22, 0x40, 0x7b, + 0x80, 0x01, 0x08, 0x43, 0x3c, 0x00, 0xa8, 0x29, + 0x01, 0x00, 0xe0, 0x70, 0x28, 0x69, 0x40, 0x89, + 0xa0, 0x70, 0x28, 0x69, 0x40, 0x89, 0x00, 0x0a, + 0x20, 0x70, 0x29, 0x69, 0x0c, 0x31, 0xa0, 0x18, + 0xed, 0xf7, 0x9b, 0xfd, 0x20, 0x78, 0x20, 0x21, + 0x40, 0x06, 0x40, 0x0e, 0x08, 0x43, 0x60, 0x70, + 0x28, 0x69, 0x0a, 0x30, 0x01, 0x88, 0x01, 0x31, + 0x09, 0x04, 0x09, 0x0c, 0x01, 0x80, 0x04, 0xd1, + 0x28, 0x69, 0x0c, 0x30, 0x01, 0x68, 0x3c, 0x00, + 0xe4, 0x29, 0x01, 0x00, 0x01, 0x31, 0x01, 0x60, + 0x35, 0x62, 0x61, 0x79, 0x20, 0x79, 0x09, 0x02, + 0x40, 0x18, 0xa1, 0x79, 0x09, 0x04, 0x40, 0x18, + 0xe1, 0x79, 0x09, 0x06, 0x43, 0x18, 0x00, 0x93, + 0xa0, 0x78, 0x21, 0x78, 0x09, 0x02, 0x40, 0x18, + 0x04, 0x04, 0x24, 0x0c, 0x10, 0x20, 0xee, 0xf7, + 0x13, 0xff, 0xb0, 0x61, 0x28, 0x69, 0x3a, 0x1c, + 0x01, 0x68, 0x00, 0x9b, 0x01, 0xa8, 0x0a, 0x32, + 0x3c, 0x00, 0x20, 0x2a, 0x01, 0x00, 0xff, 0xf7, + 0xc8, 0xfe, 0x28, 0x69, 0x23, 0x1c, 0x01, 0x68, + 0xb0, 0x69, 0x01, 0xaa, 0xff, 0xf7, 0x11, 0xff, + 0x36, 0x68, 0x00, 0x2e, 0x9c, 0xd1, 0x03, 0x49, + 0x04, 0x48, 0x6a, 0x68, 0xf7, 0xf7, 0x63, 0xfb, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xfd, 0x6b, + 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, 0x01, 0x38, + 0x07, 0x49, 0x40, 0x00, 0x09, 0x5c, 0x00, 0x29, + 0x06, 0xd0, 0x3c, 0x00, 0x5c, 0x2a, 0x01, 0x00, + 0x04, 0x49, 0x1c, 0x39, 0x08, 0x5c, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0xe6, 0x78, 0x01, 0x00, + 0xfe, 0xb5, 0x05, 0x1c, 0x00, 0x20, 0x02, 0x90, + 0x13, 0x48, 0x17, 0x1c, 0x00, 0x68, 0x0c, 0x1c, + 0x86, 0x78, 0x30, 0x1c, 0xfd, 0xf7, 0x28, 0xfa, + 0x00, 0x28, 0x01, 0xd1, 0x02, 0x98, 0xfe, 0xbd, + 0x00, 0x2d, 0x08, 0xd1, 0x3c, 0x00, 0x98, 0x2a, + 0x01, 0x00, 0x20, 0x68, 0x00, 0xab, 0x18, 0x71, + 0x60, 0x68, 0x58, 0x71, 0xa0, 0x68, 0x98, 0x71, + 0x03, 0x20, 0x38, 0x80, 0x29, 0x1c, 0x30, 0x1c, + 0x01, 0xaa, 0x00, 0xf0, 0x0e, 0xf8, 0x00, 0x2d, + 0xec, 0xd0, 0x00, 0xab, 0x19, 0x79, 0x21, 0x60, + 0x59, 0x79, 0x61, 0x60, 0x99, 0x79, 0xa1, 0x60, + 0x0c, 0x21, 0x39, 0x80, 0xe2, 0xe7, 0xf8, 0x6b, + 0x01, 0x00, 0xf8, 0xb5, 0x15, 0x1c, 0x3c, 0x00, + 0xd4, 0x2a, 0x01, 0x00, 0x42, 0x1e, 0x01, 0x38, + 0x47, 0x00, 0x3f, 0x18, 0x1f, 0x48, 0x3e, 0x18, + 0x00, 0x29, 0x06, 0xd0, 0x01, 0x24, 0x03, 0x22, + 0x31, 0x1c, 0x28, 0x1c, 0xed, 0xf7, 0x04, 0xfd, + 0x32, 0xe0, 0x68, 0x78, 0x01, 0x24, 0x00, 0x28, + 0x05, 0xd0, 0x29, 0x78, 0x08, 0x18, 0x01, 0x38, + 0x0e, 0x28, 0x00, 0xd9, 0x00, 0x24, 0x00, 0x2c, + 0x26, 0xd0, 0x00, 0x2a, 0x07, 0xd1, 0x2a, 0x21, + 0x3c, 0x00, 0x10, 0x2b, 0x01, 0x00, 0x12, 0x48, + 0xed, 0xf7, 0x9f, 0xfc, 0x1c, 0x21, 0x11, 0x48, + 0xed, 0xf7, 0x9b, 0xfc, 0x0f, 0x48, 0x03, 0x22, + 0x29, 0x1c, 0x30, 0x1c, 0xed, 0xf7, 0xe7, 0xfc, + 0x0c, 0x48, 0x71, 0x78, 0xc0, 0x5d, 0xb2, 0x78, + 0x00, 0x29, 0x0e, 0xd0, 0x00, 0x2a, 0x0c, 0xd0, + 0x01, 0x22, 0x43, 0x18, 0x08, 0x4d, 0x06, 0xe0, + 0x41, 0x00, 0x49, 0x19, 0x10, 0x39, 0x8a, 0x73, + 0xb7, 0x78, 0x3c, 0x00, 0x4c, 0x2b, 0x01, 0x00, + 0x01, 0x30, 0xcf, 0x73, 0x83, 0x42, 0xf6, 0xd8, + 0xfe, 0xf7, 0x60, 0xf8, 0x20, 0x1c, 0xf8, 0xbd, + 0xeb, 0x62, 0x01, 0x00, 0xca, 0x78, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x1c, 0x48, 0x00, 0x23, + 0xc0, 0x56, 0x43, 0x1c, 0x32, 0xd1, 0xa8, 0x7a, + 0xf8, 0xf7, 0x0c, 0xf9, 0x00, 0x26, 0x00, 0x28, + 0x18, 0x4c, 0x08, 0xd0, 0xe8, 0x69, 0xe1, 0x6b, + 0x00, 0x29, 0x0b, 0xd1, 0x3c, 0x00, 0x88, 0x2b, + 0x01, 0x00, 0x66, 0x63, 0x01, 0x21, 0xe1, 0x63, + 0xa6, 0x63, 0x06, 0xe0, 0xa8, 0x69, 0xe1, 0x6b, + 0x00, 0x29, 0x02, 0xd0, 0x66, 0x63, 0xa6, 0x63, + 0xe6, 0x63, 0xa1, 0x6b, 0x01, 0x31, 0xa1, 0x63, + 0x82, 0x03, 0x01, 0xd5, 0x0e, 0x4a, 0x10, 0x43, + 0xe2, 0x6b, 0x00, 0x2a, 0x00, 0xd0, 0x40, 0x42, + 0x62, 0x6b, 0x10, 0x18, 0x60, 0x63, 0x08, 0x29, + 0x0b, 0xd1, 0x00, 0x28, 0x01, 0xdd, 0x3c, 0x00, + 0xc4, 0x2b, 0x01, 0x00, 0x01, 0x20, 0x03, 0xe0, + 0x00, 0x28, 0x03, 0xda, 0x00, 0x20, 0xc0, 0x43, + 0xef, 0xf7, 0x62, 0xfe, 0x66, 0x63, 0xa6, 0x63, + 0x70, 0xbd, 0x00, 0x00, 0xf4, 0x6b, 0x01, 0x00, + 0x84, 0x6a, 0x01, 0x00, 0x00, 0x00, 0xfe, 0xff, + 0x0c, 0x21, 0x05, 0x4a, 0x41, 0x43, 0x89, 0x18, + 0x80, 0xb5, 0x89, 0x78, 0x00, 0x29, 0x01, 0xd1, + 0xf3, 0xf7, 0xf2, 0xfa, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x2c, 0x01, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x1c, 0x00, 0x20, + 0xf7, 0xf7, 0x03, 0xfa, 0x80, 0xbd, 0x80, 0xb5, + 0x01, 0x1c, 0x01, 0x20, 0xf7, 0xf7, 0xfd, 0xf9, + 0x80, 0xbd, 0x02, 0x49, 0x89, 0x68, 0x40, 0x1a, + 0xc0, 0x0f, 0x70, 0x47, 0x00, 0x00, 0x00, 0x01, + 0x07, 0x00, 0x02, 0x49, 0x89, 0x68, 0x08, 0x1a, + 0xc0, 0x17, 0x01, 0x30, 0x70, 0x47, 0x00, 0x01, + 0x07, 0x00, 0x3c, 0x00, 0x3c, 0x2c, 0x01, 0x00, + 0x05, 0x49, 0x4a, 0x68, 0x01, 0x23, 0x1a, 0x43, + 0x4a, 0x60, 0x8a, 0x68, 0x10, 0x18, 0x88, 0x60, + 0x48, 0x68, 0x98, 0x43, 0x48, 0x60, 0x70, 0x47, + 0x00, 0x01, 0x07, 0x00, 0x10, 0xb5, 0x15, 0x4b, + 0x00, 0x21, 0x0a, 0x01, 0x9a, 0x58, 0x00, 0x2a, + 0x17, 0xd1, 0x01, 0x24, 0x0a, 0x01, 0x9c, 0x50, + 0xd2, 0x18, 0x10, 0x73, 0x00, 0x23, 0x53, 0x73, + 0x02, 0x23, 0x01, 0x28, 0x3c, 0x00, 0x78, 0x2c, + 0x01, 0x00, 0x0e, 0x4a, 0x05, 0xd1, 0xc8, 0x00, + 0x80, 0x18, 0x10, 0x30, 0x02, 0x78, 0x9a, 0x43, + 0x04, 0xe0, 0xc8, 0x00, 0x80, 0x18, 0x10, 0x30, + 0x02, 0x78, 0x1a, 0x43, 0x02, 0x70, 0x02, 0xe0, + 0x01, 0x31, 0x08, 0x29, 0xe0, 0xdb, 0x08, 0x29, + 0x04, 0xd1, 0x01, 0x21, 0x99, 0x20, 0xee, 0xf7, + 0xfe, 0xfa, 0x03, 0x49, 0x08, 0x04, 0x00, 0x0c, + 0x10, 0xbd, 0xac, 0x73, 0x01, 0x00, 0x3c, 0x00, + 0xb4, 0x2c, 0x01, 0x00, 0x00, 0x60, 0x07, 0x00, + 0xff, 0xff, 0x00, 0x00, 0xf7, 0xb5, 0x19, 0x4f, + 0x19, 0x4e, 0x0c, 0x1c, 0xc1, 0x00, 0xc9, 0x19, + 0xb2, 0x68, 0x10, 0x31, 0x81, 0xb0, 0x01, 0x3a, + 0x4a, 0x60, 0x0b, 0x78, 0x1d, 0x1c, 0x0d, 0x22, + 0x93, 0x43, 0x0b, 0x70, 0x01, 0x22, 0x82, 0x40, + 0x3a, 0x73, 0x12, 0x4b, 0x00, 0x01, 0x03, 0x9a, + 0xc0, 0x18, 0x82, 0x60, 0x10, 0x4a, 0x10, 0x1c, + 0x3c, 0x00, 0xf0, 0x2c, 0x01, 0x00, 0x20, 0x30, + 0x87, 0x79, 0x00, 0xab, 0x1f, 0x70, 0xc0, 0x79, + 0x58, 0x70, 0xb0, 0x68, 0x03, 0x30, 0x00, 0x23, + 0x26, 0x1a, 0x01, 0xd5, 0x04, 0x1c, 0x01, 0x23, + 0x4c, 0x60, 0x0d, 0x70, 0x00, 0x2b, 0x04, 0xd0, + 0x20, 0x1c, 0xff, 0xf7, 0x8a, 0xff, 0x00, 0x28, + 0xfa, 0xd0, 0x00, 0xab, 0x18, 0x88, 0xd0, 0x84, + 0xff, 0xbd, 0x00, 0x60, 0x07, 0x00, 0x00, 0x01, + 0x07, 0x00, 0x3c, 0x00, 0x2c, 0x2d, 0x01, 0x00, + 0xac, 0x73, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x30, 0xb5, 0x00, 0x20, 0xc0, 0x43, 0x0b, 0x4c, + 0x09, 0x4b, 0x00, 0x22, 0xd1, 0x00, 0x09, 0x19, + 0x0d, 0x7c, 0xed, 0x07, 0x07, 0xd5, 0x49, 0x69, + 0x9d, 0x68, 0x49, 0x1b, 0x00, 0xd5, 0x00, 0x21, + 0x81, 0x42, 0x00, 0xd2, 0x08, 0x1c, 0x01, 0x32, + 0x08, 0x2a, 0xef, 0xdb, 0x30, 0xbd, 0x00, 0x00, + 0x00, 0x01, 0x07, 0x00, 0x3c, 0x00, 0x68, 0x2d, + 0x01, 0x00, 0x00, 0x60, 0x07, 0x00, 0xb0, 0xb5, + 0x08, 0x28, 0x0b, 0xd2, 0x08, 0x4d, 0x04, 0x01, + 0x29, 0x59, 0x00, 0x29, 0x04, 0xd0, 0x00, 0xf0, + 0x4a, 0xf8, 0x00, 0x20, 0x28, 0x51, 0xb0, 0xbd, + 0x02, 0x21, 0x00, 0xe0, 0x03, 0x21, 0x99, 0x20, + 0xee, 0xf7, 0x89, 0xfa, 0xb0, 0xbd, 0xac, 0x73, + 0x01, 0x00, 0x03, 0x49, 0x00, 0x01, 0x40, 0x18, + 0x41, 0x7b, 0x08, 0x22, 0x11, 0x43, 0x3c, 0x00, + 0xa4, 0x2d, 0x01, 0x00, 0x41, 0x73, 0x70, 0x47, + 0xac, 0x73, 0x01, 0x00, 0x01, 0x48, 0x80, 0x68, + 0x70, 0x47, 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, + 0x70, 0xb5, 0x0b, 0x4e, 0x09, 0x4d, 0x00, 0x22, + 0xd0, 0x00, 0x84, 0x19, 0x20, 0x7c, 0xc0, 0x07, + 0x07, 0xd5, 0x60, 0x69, 0xff, 0xf7, 0x26, 0xff, + 0x00, 0x28, 0x02, 0xd0, 0xa8, 0x68, 0x32, 0x30, + 0x60, 0x61, 0x01, 0x32, 0x08, 0x2a, 0xef, 0xdb, + 0x3c, 0x00, 0xe0, 0x2d, 0x01, 0x00, 0x70, 0xbd, + 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x02, 0x4a, 0xc0, 0x00, 0x80, 0x18, + 0x01, 0x74, 0x70, 0x47, 0x00, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x04, 0x49, 0xc0, 0x00, 0x41, 0x18, + 0x08, 0x7c, 0x08, 0x23, 0x02, 0x1c, 0x9a, 0x43, + 0x0a, 0x74, 0x70, 0x47, 0x00, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x70, 0xb5, 0x08, 0x28, 0x17, 0xd2, + 0x0e, 0x49, 0x3c, 0x00, 0x1c, 0x2e, 0x01, 0x00, + 0x8a, 0x68, 0x0e, 0x4d, 0x01, 0x3a, 0xc1, 0x00, + 0x49, 0x19, 0x4a, 0x61, 0x0c, 0x4b, 0x9a, 0x79, + 0x10, 0x31, 0x0c, 0x78, 0x0d, 0x26, 0xb4, 0x43, + 0x0c, 0x70, 0x01, 0x21, 0x81, 0x40, 0x29, 0x73, + 0x9a, 0x71, 0x09, 0x4a, 0x07, 0x49, 0x00, 0x01, + 0x80, 0x18, 0x41, 0x60, 0x70, 0xbd, 0x05, 0x21, + 0x99, 0x20, 0xee, 0xf7, 0x29, 0xfa, 0x70, 0xbd, + 0x00, 0x01, 0x07, 0x00, 0x3c, 0x00, 0x58, 0x2e, + 0x01, 0x00, 0x00, 0x60, 0x07, 0x00, 0x20, 0x10, + 0x07, 0x00, 0xd1, 0x75, 0x00, 0x00, 0xac, 0x73, + 0x01, 0x00, 0xf8, 0xb5, 0x9e, 0x46, 0x1a, 0x4b, + 0x94, 0x46, 0x9b, 0x68, 0x1a, 0x4c, 0xc2, 0x00, + 0x12, 0x19, 0x01, 0x3b, 0x53, 0x61, 0x15, 0x1c, + 0x18, 0x4c, 0xa6, 0x79, 0x2a, 0x1c, 0x10, 0x32, + 0x13, 0x78, 0x0d, 0x27, 0xbb, 0x43, 0x13, 0x70, + 0x01, 0x27, 0x12, 0x4b, 0x87, 0x40, 0x3c, 0x00, + 0x94, 0x2e, 0x01, 0x00, 0x1f, 0x73, 0xa6, 0x71, + 0x12, 0x4e, 0x00, 0x01, 0x80, 0x19, 0x63, 0x46, + 0x43, 0x60, 0x73, 0x46, 0x83, 0x60, 0x13, 0x78, + 0x40, 0x7b, 0xa6, 0x79, 0x01, 0x27, 0x18, 0x43, + 0x38, 0x43, 0x14, 0x35, 0x00, 0xab, 0x1e, 0x70, + 0xe4, 0x79, 0x5c, 0x70, 0x06, 0x4b, 0x9b, 0x68, + 0x03, 0x33, 0xcc, 0x1a, 0x00, 0xd5, 0x19, 0x1c, + 0x29, 0x60, 0x10, 0x70, 0x00, 0xab, 0x18, 0x88, + 0x3c, 0x00, 0xd0, 0x2e, 0x01, 0x00, 0x03, 0x4c, + 0x20, 0x3c, 0xe0, 0x84, 0xf8, 0xbd, 0x00, 0x01, + 0x07, 0x00, 0x00, 0x60, 0x07, 0x00, 0x20, 0x10, + 0x07, 0x00, 0xac, 0x73, 0x01, 0x00, 0x00, 0xb5, + 0x01, 0x1c, 0xff, 0xf7, 0x5e, 0xff, 0x42, 0x18, + 0x10, 0x1c, 0xff, 0xf7, 0x92, 0xfe, 0x00, 0x28, + 0xfa, 0xd0, 0x00, 0xbd, 0x00, 0x00, 0x89, 0x1a, + 0x40, 0x1a, 0x99, 0x18, 0x88, 0x42, 0x01, 0xd8, + 0x01, 0x20, 0x3c, 0x00, 0x0c, 0x2f, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0xf8, 0xb5, 0x0f, 0x1c, 0x04, 0x1c, 0x00, 0x28, + 0x01, 0xd1, 0xee, 0xf7, 0xef, 0xf9, 0x21, 0x1c, + 0x01, 0x20, 0xff, 0xf7, 0x19, 0xfa, 0x41, 0x20, + 0x00, 0x5d, 0x00, 0x28, 0x01, 0xd1, 0x00, 0x25, + 0x04, 0xe0, 0x02, 0x28, 0x01, 0xd1, 0x05, 0x25, + 0x00, 0xe0, 0x01, 0x25, 0xe0, 0x68, 0xee, 0xf7, + 0x29, 0xfb, 0xa6, 0x6b, 0x3c, 0x00, 0x48, 0x2f, + 0x01, 0x00, 0x00, 0x2e, 0x10, 0xd0, 0x00, 0x2f, + 0x06, 0xd0, 0x2f, 0x20, 0x02, 0x5d, 0x20, 0x6a, + 0x41, 0x6b, 0x28, 0x1c, 0xed, 0xf7, 0x44, 0xfa, + 0xa0, 0x69, 0x00, 0x28, 0x01, 0xd0, 0xee, 0xf7, + 0x46, 0xfc, 0x20, 0x6a, 0xee, 0xf7, 0x43, 0xfc, + 0x20, 0x1c, 0xee, 0xf7, 0x40, 0xfc, 0x30, 0x1c, + 0xf8, 0xbd, 0xb0, 0xb5, 0x04, 0x1c, 0xc0, 0x6b, + 0x00, 0x28, 0x09, 0xd0, 0x20, 0x69, 0x3c, 0x00, + 0x84, 0x2f, 0x01, 0x00, 0x00, 0x8b, 0xee, 0xf7, + 0x55, 0xf9, 0x00, 0x28, 0x03, 0xd0, 0x21, 0x1c, + 0x06, 0x20, 0xff, 0xf7, 0xe3, 0xf9, 0x08, 0x4d, + 0x20, 0x1c, 0xa9, 0x6d, 0xff, 0xf7, 0xba, 0xff, + 0x00, 0x28, 0x07, 0xd0, 0xe8, 0x68, 0x01, 0x30, + 0xe8, 0x60, 0x28, 0x6a, 0x01, 0x38, 0x28, 0x62, + 0xfc, 0xf7, 0x78, 0xf8, 0xb0, 0xbd, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, + 0x3c, 0x00, 0xc0, 0x2f, 0x01, 0x00, 0xe1, 0x6d, + 0xff, 0xf7, 0xa7, 0xff, 0x00, 0x28, 0x04, 0xd0, + 0xe0, 0x69, 0x01, 0x38, 0xe0, 0x61, 0xfc, 0xf7, + 0x68, 0xf8, 0x10, 0xbd, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x0c, 0x23, 0x0c, 0x49, 0x58, 0x43, + 0x40, 0x18, 0x10, 0xb5, 0x44, 0x68, 0xa1, 0x68, + 0x00, 0x29, 0x02, 0xd0, 0x20, 0x1c, 0xed, 0xf7, + 0xf3, 0xf9, 0xe0, 0x6b, 0x00, 0x28, 0x08, 0xd0, + 0x20, 0x69, 0x3c, 0x00, 0xfc, 0x2f, 0x01, 0x00, + 0x00, 0x8b, 0xee, 0xf7, 0x19, 0xf9, 0x00, 0x28, + 0x02, 0xd0, 0x20, 0x1c, 0xf9, 0xf7, 0x26, 0xf9, + 0x10, 0xbd, 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, + 0xf8, 0xb5, 0x22, 0x49, 0x48, 0x68, 0x80, 0x00, + 0x06, 0xd4, 0x01, 0x20, 0x40, 0x07, 0x08, 0x60, + 0x4a, 0x69, 0x92, 0x00, 0x00, 0xd4, 0x48, 0x60, + 0x1d, 0x4f, 0x78, 0x7e, 0xc3, 0x06, 0x01, 0x20, + 0x02, 0x1c, 0xdb, 0x0e, 0x3c, 0x00, 0x38, 0x30, + 0x01, 0x00, 0x9a, 0x40, 0x0a, 0x60, 0x79, 0x69, + 0x8c, 0x68, 0x8c, 0x60, 0x21, 0x07, 0x89, 0x0f, + 0x09, 0xd0, 0x21, 0x07, 0x04, 0xd5, 0x0b, 0x21, + 0x9e, 0x20, 0xee, 0xf7, 0x28, 0xf9, 0x00, 0xe0, + 0x78, 0x64, 0x0c, 0x20, 0x84, 0x43, 0x12, 0x48, + 0x3d, 0x68, 0x06, 0x5d, 0x6c, 0x68, 0x2c, 0x34, + 0x06, 0xe0, 0xa0, 0x68, 0x00, 0x68, 0xa0, 0x60, + 0xe9, 0x68, 0x28, 0x1c, 0xed, 0xf7, 0x3c, 0x00, + 0x74, 0x30, 0x01, 0x00, 0xb2, 0xf9, 0x01, 0x3e, + 0xf6, 0xd2, 0xa0, 0x68, 0x80, 0x68, 0x00, 0x28, + 0x0d, 0xd0, 0x40, 0x89, 0x00, 0x28, 0x0a, 0xd0, + 0x78, 0x6c, 0x00, 0x28, 0x07, 0xd1, 0x78, 0x69, + 0x80, 0x68, 0x80, 0x07, 0x03, 0xd1, 0x0c, 0x21, + 0x9e, 0x20, 0xee, 0xf7, 0x03, 0xf9, 0xf8, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0xcc, 0x6d, 0x01, 0x00, + 0xb4, 0x44, 0x01, 0x00, 0x09, 0x49, 0x80, 0xb5, + 0x3c, 0x00, 0xb0, 0x30, 0x01, 0x00, 0x08, 0x7e, + 0xc2, 0x06, 0xd2, 0x0e, 0x01, 0x20, 0x90, 0x40, + 0x07, 0x4a, 0x10, 0x60, 0x00, 0x20, 0x0a, 0x69, + 0xc0, 0x43, 0x90, 0x60, 0x08, 0x68, 0x24, 0x31, + 0x06, 0xc9, 0x03, 0x69, 0xed, 0xf7, 0x86, 0xf9, + 0x80, 0xbd, 0xcc, 0x6d, 0x01, 0x00, 0x00, 0x10, + 0x07, 0x00, 0xf8, 0xb5, 0x44, 0x68, 0x06, 0x1c, + 0x2c, 0x34, 0x20, 0x68, 0x0d, 0x1c, 0x80, 0x68, + 0x00, 0x90, 0x3c, 0x00, 0xec, 0x30, 0x01, 0x00, + 0x00, 0x28, 0x00, 0xd0, 0xc5, 0x60, 0x20, 0x68, + 0x00, 0x68, 0x20, 0x60, 0x40, 0x68, 0x00, 0x28, + 0x03, 0xd0, 0x0a, 0x21, 0x9e, 0x20, 0xee, 0xf7, + 0xcf, 0xf8, 0x20, 0x68, 0x45, 0x60, 0x28, 0x1c, + 0x02, 0xe0, 0x00, 0x22, 0x42, 0x60, 0x08, 0x1c, + 0xc1, 0x68, 0x00, 0x29, 0xf9, 0xd1, 0x71, 0x68, + 0x60, 0x27, 0x0b, 0x1c, 0x40, 0x33, 0x9c, 0x46, + 0x9b, 0x78, 0xca, 0x7e, 0x3c, 0x00, 0x28, 0x31, + 0x01, 0x00, 0x5b, 0x01, 0x12, 0x07, 0x12, 0x0f, + 0x3b, 0x40, 0x1a, 0x43, 0x8b, 0x8f, 0xff, 0x27, + 0x3f, 0x04, 0x1b, 0x04, 0x3b, 0x40, 0x1a, 0x43, + 0x90, 0x23, 0x1a, 0x43, 0x42, 0x60, 0x63, 0x46, + 0x9a, 0x78, 0x01, 0x32, 0xd2, 0x07, 0xd2, 0x0f, + 0x9a, 0x70, 0x89, 0x6b, 0xc1, 0x60, 0x21, 0x68, + 0x88, 0x60, 0x00, 0x98, 0x00, 0x28, 0x01, 0xd0, + 0x00, 0x98, 0xc5, 0x60, 0x0a, 0x4f, 0x3c, 0x00, + 0x64, 0x31, 0x01, 0x00, 0xbd, 0x79, 0xa0, 0x69, + 0x00, 0x28, 0x0c, 0xd0, 0x00, 0x22, 0xa2, 0x61, + 0x74, 0x68, 0x60, 0x69, 0xef, 0xf7, 0x2e, 0xff, + 0xe0, 0x6a, 0x61, 0x69, 0x40, 0x68, 0x48, 0x60, + 0x61, 0x69, 0x01, 0x20, 0x08, 0x60, 0xbd, 0x71, + 0xf8, 0xbd, 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, + 0xfe, 0xb5, 0x44, 0x68, 0x0f, 0x1c, 0x01, 0x94, + 0x2c, 0x34, 0x20, 0x1c, 0x12, 0x30, 0x02, 0x90, + 0x3c, 0x00, 0xa0, 0x31, 0x01, 0x00, 0x2c, 0xe0, + 0x0c, 0x20, 0xee, 0xf7, 0x00, 0xfb, 0x05, 0x1c, + 0x60, 0x68, 0x00, 0x28, 0x1d, 0xd1, 0x02, 0x98, + 0x00, 0x21, 0x00, 0x90, 0x00, 0x20, 0xee, 0xf7, + 0x0e, 0xfa, 0x06, 0x1c, 0x00, 0x98, 0x04, 0x21, + 0xee, 0xf7, 0x09, 0xfa, 0x01, 0x1c, 0x01, 0x98, + 0xc0, 0x7e, 0x00, 0x07, 0x00, 0x0f, 0xd0, 0x30, + 0x70, 0x60, 0x01, 0x98, 0xc0, 0x7e, 0x00, 0x07, + 0x00, 0x0f, 0x3c, 0x00, 0xdc, 0x31, 0x01, 0x00, + 0xf0, 0x30, 0x48, 0x60, 0x30, 0x1c, 0xee, 0xf7, + 0x19, 0xf9, 0x65, 0x60, 0xe6, 0x60, 0x01, 0xe0, + 0x20, 0x68, 0x05, 0x60, 0x60, 0x68, 0x28, 0x60, + 0x25, 0x60, 0x00, 0x20, 0x68, 0x60, 0xa8, 0x60, + 0x38, 0x1c, 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, + 0x39, 0x1c, 0x07, 0x1c, 0x00, 0x29, 0xca, 0xd1, + 0x60, 0x68, 0xa0, 0x60, 0xfe, 0xbd, 0x00, 0x00, + 0xff, 0xb5, 0x05, 0x1c, 0x3c, 0x00, 0x18, 0x32, + 0x01, 0x00, 0x08, 0x1c, 0x00, 0x26, 0x81, 0xb0, + 0xf4, 0xf7, 0x2f, 0xfe, 0x04, 0x1c, 0x02, 0xd0, + 0x60, 0x68, 0xff, 0x28, 0x01, 0xd1, 0x06, 0x26, + 0x28, 0xe0, 0x21, 0x1c, 0x20, 0x31, 0x0a, 0x78, + 0x01, 0x2a, 0x01, 0xd1, 0x03, 0x26, 0x21, 0xe0, + 0x01, 0x27, 0x25, 0x60, 0x0f, 0x70, 0x11, 0xc5, + 0x1d, 0x48, 0x08, 0x3d, 0x68, 0x61, 0x03, 0x98, + 0x6a, 0x46, 0xe8, 0x60, 0x04, 0x98, 0x3c, 0x00, + 0x54, 0x32, 0x01, 0x00, 0x28, 0x61, 0x1a, 0x48, + 0xa8, 0x61, 0x1a, 0x48, 0xe8, 0x61, 0x1a, 0x48, + 0x28, 0x62, 0x1a, 0x48, 0x68, 0x62, 0x20, 0x7e, + 0xa1, 0x68, 0xed, 0xf7, 0xb3, 0xfe, 0x00, 0x28, + 0x06, 0xd1, 0x60, 0x7e, 0xe1, 0x68, 0x6a, 0x46, + 0xed, 0xf7, 0xac, 0xfe, 0x00, 0x28, 0x07, 0xd0, + 0x04, 0x26, 0x31, 0x1c, 0x9e, 0x20, 0xee, 0xf7, + 0x0d, 0xf8, 0x30, 0x1c, 0x05, 0xb0, 0xf0, 0xbd, + 0x3c, 0x00, 0x90, 0x32, 0x01, 0x00, 0x6a, 0x46, + 0x0f, 0x49, 0x1d, 0x20, 0xed, 0xf7, 0x9d, 0xfe, + 0x01, 0x21, 0x0d, 0x48, 0x49, 0x07, 0x01, 0x60, + 0x22, 0x7e, 0x3b, 0x1c, 0xd2, 0x06, 0xd2, 0x0e, + 0x93, 0x40, 0x43, 0x60, 0x62, 0x7e, 0xd2, 0x06, + 0xd2, 0x0e, 0x97, 0x40, 0x47, 0x60, 0x41, 0x60, + 0xe6, 0xe7, 0x31, 0x33, 0x01, 0x00, 0xd9, 0x32, + 0x01, 0x00, 0x91, 0x31, 0x01, 0x00, 0xdd, 0x30, + 0x01, 0x00, 0x3c, 0x00, 0xcc, 0x32, 0x01, 0x00, + 0xfd, 0x32, 0x01, 0x00, 0x71, 0x33, 0x01, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x42, 0x68, 0x2c, 0x32, + 0x50, 0x68, 0x43, 0x68, 0x0b, 0x60, 0x81, 0x68, + 0x4b, 0x89, 0x0b, 0x81, 0x83, 0x68, 0x00, 0x21, + 0xd9, 0x60, 0x41, 0x60, 0x81, 0x60, 0x00, 0x68, + 0x50, 0x60, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0x70, 0xb5, 0x42, 0x68, 0xff, 0x26, 0x91, 0x87, + 0x10, 0x6b, 0x0c, 0x04, 0x3c, 0x00, 0x08, 0x33, + 0x01, 0x00, 0x05, 0x1c, 0x36, 0x04, 0x34, 0x40, + 0x43, 0x68, 0x59, 0x68, 0xb1, 0x43, 0x21, 0x43, + 0x59, 0x60, 0x00, 0x68, 0xa8, 0x42, 0xf7, 0xd1, + 0x10, 0x6b, 0x51, 0x69, 0x40, 0x68, 0x48, 0x60, + 0x51, 0x69, 0x01, 0x20, 0x08, 0x60, 0x70, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x43, 0x68, 0x08, 0x1c, + 0x59, 0x62, 0x9a, 0x62, 0x00, 0x25, 0x0a, 0xe0, + 0x45, 0x81, 0xc4, 0x68, 0x2a, 0x1c, 0x3c, 0x00, + 0x44, 0x33, 0x01, 0x00, 0x00, 0x2c, 0x03, 0xd1, + 0x9a, 0x7e, 0x12, 0x07, 0x12, 0x0f, 0x10, 0x32, + 0x42, 0x60, 0x20, 0x1c, 0x00, 0x28, 0xf2, 0xd1, + 0x18, 0x69, 0x41, 0x60, 0x19, 0x69, 0x01, 0x20, + 0x08, 0x60, 0x02, 0x48, 0x00, 0x68, 0xed, 0xf7, + 0x37, 0xf8, 0xb0, 0xbd, 0x5c, 0x5b, 0x01, 0x00, + 0x01, 0x20, 0x05, 0x49, 0x40, 0x07, 0x80, 0xb5, + 0x88, 0x60, 0x04, 0x48, 0x01, 0x68, 0x0d, 0x20, + 0x3c, 0x00, 0x80, 0x33, 0x01, 0x00, 0xfe, 0xf7, + 0xe6, 0xff, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0xc4, 0x60, 0x01, 0x00, 0xf8, 0xb5, + 0x0e, 0x4f, 0x0c, 0x4e, 0x00, 0x24, 0x48, 0x20, + 0x60, 0x43, 0xc5, 0x19, 0x48, 0x21, 0x28, 0x1c, + 0xed, 0xf7, 0x7b, 0xf8, 0x1c, 0x20, 0x60, 0x43, + 0x81, 0x19, 0x28, 0x1d, 0x1c, 0x22, 0xed, 0xf7, + 0xfe, 0xf8, 0x1c, 0x23, 0xe8, 0x56, 0x05, 0x49, + 0xfb, 0xf7, 0x3c, 0x00, 0xbc, 0x33, 0x01, 0x00, + 0xcd, 0xf8, 0x01, 0x34, 0x01, 0x2c, 0xe9, 0xd3, + 0xf8, 0xbd, 0x00, 0x00, 0xb8, 0x44, 0x01, 0x00, + 0xcc, 0x6d, 0x01, 0x00, 0x15, 0x32, 0x01, 0x00, + 0xff, 0xb5, 0x05, 0x1c, 0x0a, 0x30, 0x06, 0x1c, + 0x81, 0xb0, 0xf2, 0xf7, 0xdd, 0xf8, 0x18, 0x4f, + 0x04, 0x1c, 0x39, 0x88, 0xef, 0xf7, 0xbc, 0xfc, + 0x32, 0x88, 0x78, 0x68, 0x02, 0x80, 0x72, 0x88, + 0x02, 0x30, 0x02, 0x80, 0x3c, 0x00, 0xf8, 0x33, + 0x01, 0x00, 0xb1, 0x88, 0x12, 0x4e, 0x41, 0x80, + 0x28, 0x88, 0x08, 0x36, 0x40, 0x05, 0x00, 0x28, + 0x05, 0xda, 0x69, 0x88, 0x03, 0x9a, 0x20, 0x1c, + 0xf7, 0xf7, 0x01, 0xfd, 0x00, 0xe0, 0x00, 0x20, + 0x70, 0x80, 0xf8, 0xf7, 0x5e, 0xfc, 0x01, 0x21, + 0x09, 0x03, 0x00, 0x28, 0x30, 0x88, 0x01, 0xd0, + 0x88, 0x43, 0x00, 0xe0, 0x08, 0x43, 0x30, 0x80, + 0x05, 0x48, 0x00, 0x22, 0x00, 0x21, 0x3c, 0x00, + 0x34, 0x34, 0x01, 0x00, 0x14, 0x30, 0xef, 0xf7, + 0x65, 0xfc, 0x20, 0x1c, 0xf9, 0xf7, 0x74, 0xf8, + 0x05, 0xb0, 0xf0, 0xbd, 0xb0, 0x7a, 0x01, 0x00, + 0x10, 0xb5, 0x0e, 0x4c, 0x60, 0x68, 0xf8, 0xf7, + 0x95, 0xf9, 0x20, 0x68, 0x00, 0x6a, 0x00, 0x28, + 0x13, 0xd1, 0xf8, 0xf7, 0xbf, 0xfc, 0x00, 0x28, + 0x08, 0xd0, 0x21, 0x68, 0x01, 0x20, 0x08, 0x62, + 0x1f, 0x21, 0x00, 0x22, 0x83, 0x20, 0x00, 0xf0, + 0x3c, 0x00, 0x70, 0x34, 0x01, 0x00, 0x9f, 0xf9, + 0x02, 0xe0, 0x60, 0x68, 0xf8, 0xf7, 0x21, 0xfa, + 0xff, 0xf7, 0x97, 0xfc, 0x21, 0x68, 0x08, 0x61, + 0x10, 0xbd, 0x14, 0x7a, 0x01, 0x00, 0xfe, 0xb5, + 0x1b, 0x4e, 0x0f, 0x1c, 0x1d, 0x1c, 0x14, 0x1c, + 0xb0, 0x60, 0x08, 0x1c, 0xf7, 0xf7, 0x2b, 0xff, + 0xb0, 0x80, 0x34, 0x73, 0x35, 0x62, 0x38, 0x1c, + 0x01, 0xaa, 0x02, 0xa9, 0xf7, 0xf7, 0x25, 0xff, + 0x00, 0xab, 0x3c, 0x00, 0xac, 0x34, 0x01, 0x00, + 0x18, 0x7a, 0x01, 0x28, 0x18, 0xd1, 0x18, 0x79, + 0x0b, 0x28, 0x08, 0xd1, 0x30, 0x7f, 0x24, 0x23, + 0x0f, 0x49, 0x58, 0x43, 0x40, 0x18, 0x80, 0x68, + 0xec, 0xf7, 0x88, 0xff, 0xfe, 0xbd, 0x00, 0xab, + 0x18, 0x79, 0x0a, 0x28, 0x08, 0xd1, 0xf7, 0xf7, + 0x39, 0xfd, 0x07, 0x1c, 0x29, 0x1c, 0x20, 0x1c, + 0xf7, 0xf7, 0x16, 0xfd, 0x38, 0x18, 0xb0, 0x80, + 0x30, 0x7f, 0x24, 0x23, 0x3c, 0x00, 0xe8, 0x34, + 0x01, 0x00, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x40, 0x68, 0xec, 0xf7, 0x72, 0xff, 0xe8, 0xe7, + 0x00, 0x00, 0xd4, 0x79, 0x01, 0x00, 0x94, 0x46, + 0x01, 0x00, 0xb0, 0xb5, 0xff, 0xf7, 0x53, 0xfc, + 0x04, 0x1c, 0xfb, 0xf7, 0xfc, 0xfa, 0x0c, 0x4d, + 0x29, 0x68, 0x09, 0x69, 0x09, 0x1b, 0x0c, 0x1a, + 0x02, 0x21, 0x1f, 0x20, 0x00, 0xf0, 0x8b, 0xf8, + 0x14, 0x2c, 0x06, 0xdd, 0x02, 0x22, 0x3c, 0x00, + 0x24, 0x35, 0x01, 0x00, 0x21, 0x1c, 0x1f, 0x20, + 0x00, 0xf0, 0x50, 0xf8, 0x01, 0x20, 0xb0, 0xbd, + 0x29, 0x68, 0x01, 0x20, 0x89, 0x6a, 0x00, 0x29, + 0xf9, 0xd0, 0x00, 0x20, 0xb0, 0xbd, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0xf8, 0xb5, 0x1a, 0x4d, + 0x07, 0x1c, 0xae, 0x79, 0x01, 0x21, 0x19, 0x4c, + 0x00, 0x20, 0x22, 0x68, 0x00, 0x2a, 0x14, 0xd1, + 0xae, 0x71, 0xa2, 0x68, 0xd0, 0x68, 0x06, 0xca, + 0x3c, 0x00, 0x60, 0x35, 0x01, 0x00, 0xec, 0xf7, + 0x3c, 0xff, 0xae, 0x79, 0x00, 0x21, 0x13, 0x4a, + 0x50, 0x69, 0x01, 0x30, 0x50, 0x61, 0xa0, 0x68, + 0x80, 0x68, 0xa0, 0x60, 0x62, 0x68, 0x90, 0x42, + 0x06, 0xd1, 0x01, 0x20, 0x20, 0x60, 0x03, 0xe0, + 0x01, 0x30, 0x0c, 0x34, 0x03, 0x28, 0xe3, 0xdb, + 0x00, 0x2f, 0x08, 0xd1, 0x00, 0x29, 0x0a, 0xd0, + 0x0a, 0x48, 0x40, 0x68, 0x00, 0x28, 0x06, 0xd0, + 0xfa, 0xf7, 0x3c, 0x00, 0x9c, 0x35, 0x01, 0x00, + 0xf5, 0xff, 0x03, 0xe0, 0x01, 0x2f, 0x03, 0xd0, + 0x00, 0x29, 0x01, 0xd1, 0xae, 0x71, 0xce, 0xe7, + 0xae, 0x71, 0xf8, 0xbd, 0x20, 0x10, 0x07, 0x00, + 0x18, 0xd9, 0x01, 0x00, 0xa8, 0x60, 0x01, 0x00, + 0x70, 0x5d, 0x01, 0x00, 0x80, 0xb5, 0x01, 0x23, + 0xf5, 0xf7, 0x7c, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x23, 0xf5, 0xf7, 0x76, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x35, + 0x01, 0x00, 0xf8, 0xb5, 0x13, 0x4b, 0x00, 0x24, + 0x1b, 0x88, 0x98, 0x42, 0x1b, 0xd2, 0x11, 0x4b, + 0xc0, 0x00, 0xc0, 0x18, 0x45, 0x68, 0x06, 0x68, + 0x28, 0x68, 0x00, 0x28, 0x17, 0xd1, 0x0e, 0x4f, + 0xa8, 0x68, 0x43, 0x68, 0xb3, 0x42, 0x09, 0xd1, + 0xc3, 0x68, 0x8b, 0x42, 0x06, 0xd1, 0x03, 0x68, + 0x93, 0x42, 0x01, 0xd0, 0x53, 0x1c, 0x01, 0xd1, + 0x01, 0x24, 0x47, 0x60, 0x80, 0x68, 0x3c, 0x00, + 0x14, 0x36, 0x01, 0x00, 0x6b, 0x68, 0x83, 0x42, + 0xee, 0xd1, 0x03, 0xe0, 0x01, 0x21, 0x80, 0x20, + 0xed, 0xf7, 0x40, 0xfe, 0x20, 0x1c, 0xf8, 0xbd, + 0x56, 0x57, 0x01, 0x00, 0x84, 0x5d, 0x01, 0x00, + 0x29, 0xe3, 0x00, 0x00, 0xf8, 0xb5, 0x17, 0x4f, + 0x0a, 0x1c, 0xbe, 0x79, 0x16, 0x4d, 0x00, 0x23, + 0x6c, 0x68, 0x07, 0xe0, 0x21, 0x68, 0x91, 0x42, + 0x02, 0xd1, 0x21, 0x79, 0x81, 0x42, 0x04, 0xd0, + 0x3c, 0x00, 0x50, 0x36, 0x01, 0x00, 0x23, 0x1c, + 0xe4, 0x68, 0x00, 0x2c, 0xf5, 0xd1, 0x17, 0xe0, + 0x00, 0x2c, 0x15, 0xd0, 0x00, 0x2b, 0x0d, 0xd1, + 0xe3, 0x68, 0x0d, 0x48, 0x6b, 0x60, 0x00, 0x88, + 0x00, 0x2b, 0x02, 0xd1, 0xff, 0xf7, 0xd1, 0xfb, + 0x06, 0xe0, 0x0a, 0x4a, 0x99, 0x68, 0xff, 0xf7, + 0xf6, 0xfb, 0x01, 0xe0, 0xe0, 0x68, 0xd8, 0x60, + 0x28, 0x68, 0xe0, 0x60, 0x2c, 0x60, 0x02, 0xe0, + 0x01, 0x21, 0x3c, 0x00, 0x8c, 0x36, 0x01, 0x00, + 0xff, 0xf7, 0xa4, 0xff, 0xbe, 0x71, 0xf8, 0xbd, + 0x20, 0x10, 0x07, 0x00, 0x7c, 0x5d, 0x01, 0x00, + 0x2c, 0x74, 0x01, 0x00, 0x21, 0x38, 0x01, 0x00, + 0x70, 0xb5, 0x09, 0x4e, 0xb5, 0x79, 0xf9, 0xf7, + 0xaf, 0xfe, 0x04, 0x1c, 0x09, 0xd0, 0x20, 0x1c, + 0xed, 0xf7, 0x0c, 0xfb, 0x05, 0x49, 0x8a, 0x68, + 0x80, 0x18, 0x88, 0x60, 0x08, 0x68, 0x01, 0x30, + 0x08, 0x60, 0xb5, 0x71, 0x3c, 0x00, 0xc8, 0x36, + 0x01, 0x00, 0x20, 0x1c, 0x70, 0xbd, 0x20, 0x10, + 0x07, 0x00, 0xa8, 0x60, 0x01, 0x00, 0x09, 0x48, + 0x80, 0xb5, 0x40, 0x68, 0x02, 0x1c, 0x0b, 0xe0, + 0x01, 0x69, 0x00, 0x29, 0x07, 0xd0, 0x82, 0x42, + 0x04, 0xd0, 0x81, 0x68, 0x05, 0x48, 0x00, 0x88, + 0xff, 0xf7, 0xe5, 0xfa, 0x80, 0xbd, 0xc0, 0x68, + 0x00, 0x28, 0xf1, 0xd1, 0x80, 0xbd, 0x7c, 0x5d, + 0x01, 0x00, 0x2c, 0x74, 0x01, 0x00, 0x3c, 0x00, + 0x04, 0x37, 0x01, 0x00, 0x05, 0x48, 0x80, 0xb5, + 0x42, 0x68, 0x00, 0x2a, 0x04, 0xd0, 0x04, 0x48, + 0x00, 0x88, 0x91, 0x68, 0xff, 0xf7, 0xd2, 0xfa, + 0x80, 0xbd, 0x00, 0x00, 0x7c, 0x5d, 0x01, 0x00, + 0x2c, 0x74, 0x01, 0x00, 0x05, 0x48, 0x01, 0x68, + 0x00, 0x29, 0x04, 0xd0, 0xc0, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x18, 0xd9, 0x01, 0x00, + 0x3c, 0x00, 0x40, 0x37, 0x01, 0x00, 0x80, 0xb5, + 0xf6, 0xf7, 0xd1, 0xfa, 0x80, 0xbd, 0x13, 0x1c, + 0x0d, 0x4a, 0xb0, 0xb5, 0x12, 0x88, 0x90, 0x42, + 0x0f, 0xd2, 0x03, 0x29, 0x0d, 0xd2, 0x0a, 0x4a, + 0xc0, 0x00, 0x14, 0x58, 0x0a, 0x4d, 0xac, 0x42, + 0x07, 0xd1, 0x13, 0x50, 0x0c, 0x23, 0x59, 0x43, + 0x08, 0x4b, 0xc9, 0x18, 0x80, 0x18, 0x41, 0x60, + 0xb0, 0xbd, 0x02, 0x21, 0x80, 0x20, 0xed, 0xf7, + 0x94, 0xfd, 0x3c, 0x00, 0x7c, 0x37, 0x01, 0x00, + 0xb0, 0xbd, 0x00, 0x00, 0x56, 0x57, 0x01, 0x00, + 0x84, 0x5d, 0x01, 0x00, 0x09, 0xa0, 0x00, 0x00, + 0x18, 0xd9, 0x01, 0x00, 0xf8, 0xb5, 0x0f, 0x1c, + 0x1e, 0x1c, 0x15, 0x1c, 0x04, 0x1c, 0x11, 0x1c, + 0xff, 0xf7, 0x4a, 0xff, 0x33, 0x1c, 0x2a, 0x1c, + 0x39, 0x1c, 0x20, 0x1c, 0xf4, 0xf7, 0x8a, 0xff, + 0xf8, 0xbd, 0x00, 0x00, 0xf7, 0xb5, 0x94, 0x46, + 0xff, 0x29, 0x21, 0xd0, 0x3c, 0x00, 0xb8, 0x37, + 0x01, 0x00, 0x15, 0x48, 0x00, 0x88, 0x81, 0x42, + 0x21, 0xd2, 0x14, 0x4a, 0x15, 0x4e, 0xc8, 0x00, + 0x85, 0x18, 0xb4, 0x79, 0x68, 0x68, 0x02, 0x68, + 0x00, 0x2a, 0x03, 0xd1, 0x03, 0x1d, 0x0c, 0xcb, + 0x9a, 0x42, 0x11, 0xd0, 0x43, 0x68, 0x9a, 0x68, + 0x42, 0x60, 0x0e, 0x4a, 0x17, 0x69, 0x01, 0x37, + 0x17, 0x61, 0xb4, 0x71, 0x00, 0x22, 0x02, 0x60, + 0x00, 0x98, 0xd8, 0x60, 0x60, 0x46, 0x3c, 0x00, + 0xf4, 0x37, 0x01, 0x00, 0x18, 0x60, 0x19, 0x74, + 0x28, 0x68, 0x58, 0x60, 0xfe, 0xbd, 0xb4, 0x71, + 0x06, 0x21, 0x00, 0xe0, 0x07, 0x21, 0x80, 0x20, + 0xed, 0xf7, 0x4c, 0xfd, 0xf6, 0xe7, 0x00, 0x00, + 0x56, 0x57, 0x01, 0x00, 0x84, 0x5d, 0x01, 0x00, + 0x20, 0x10, 0x07, 0x00, 0xa8, 0x60, 0x01, 0x00, + 0xb0, 0xb5, 0x14, 0x4d, 0x6c, 0x68, 0x00, 0x2c, + 0x01, 0xd0, 0x84, 0x42, 0x04, 0xd0, 0x0c, 0x21, + 0x3c, 0x00, 0x30, 0x38, 0x01, 0x00, 0x80, 0x20, + 0xed, 0xf7, 0x37, 0xfd, 0xb0, 0xbd, 0xff, 0xf7, + 0xb8, 0xfa, 0xa1, 0x68, 0x40, 0x1a, 0x0d, 0x49, + 0x88, 0x42, 0x03, 0xda, 0x10, 0x21, 0x80, 0x20, + 0xed, 0xf7, 0x2b, 0xfd, 0x21, 0x79, 0x22, 0x68, + 0x01, 0x20, 0xff, 0xf7, 0xac, 0xff, 0xe3, 0x68, + 0x6b, 0x60, 0x00, 0x2b, 0x05, 0xd0, 0x07, 0x48, + 0x06, 0x4a, 0x00, 0x88, 0x99, 0x68, 0xff, 0xf7, + 0xfe, 0xfa, 0x3c, 0x00, 0x6c, 0x38, 0x01, 0x00, + 0x28, 0x68, 0xe0, 0x60, 0x2c, 0x60, 0xb0, 0xbd, + 0x7c, 0x5d, 0x01, 0x00, 0x18, 0xfc, 0xff, 0xff, + 0x21, 0x38, 0x01, 0x00, 0x2c, 0x74, 0x01, 0x00, + 0xb0, 0xb5, 0x15, 0x4c, 0x08, 0x20, 0x21, 0x1c, + 0x80, 0x31, 0x08, 0x70, 0x13, 0x4a, 0x41, 0x04, + 0x11, 0x60, 0x13, 0x48, 0x00, 0x68, 0x13, 0x4d, + 0x6b, 0x69, 0x18, 0x40, 0x01, 0xd1, 0x10, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x3c, 0x00, 0xa8, 0x38, + 0x01, 0x00, 0xa8, 0x23, 0x5b, 0x5d, 0x18, 0x43, + 0x23, 0x1c, 0x40, 0x33, 0x18, 0x73, 0x51, 0x60, + 0x20, 0x78, 0x80, 0x08, 0x80, 0x00, 0x20, 0x70, + 0x00, 0x20, 0xff, 0xf7, 0x12, 0xfb, 0xff, 0xf7, + 0x72, 0xfa, 0x64, 0x30, 0x28, 0x66, 0x01, 0x38, + 0xa0, 0x61, 0x20, 0x78, 0x03, 0x21, 0x08, 0x43, + 0x20, 0x70, 0xb0, 0xbd, 0x00, 0x00, 0x00, 0x90, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0x3c, 0x00, + 0xe4, 0x38, 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, + 0xa4, 0x6c, 0x01, 0x00, 0x38, 0xb5, 0x0a, 0x4c, + 0x21, 0x1c, 0x20, 0x31, 0x8a, 0x79, 0x00, 0xab, + 0x1a, 0x70, 0xc9, 0x79, 0x07, 0x4d, 0x59, 0x70, + 0x69, 0x78, 0x88, 0x42, 0x03, 0xd1, 0xf8, 0xf7, + 0x13, 0xfc, 0xff, 0x20, 0x68, 0x70, 0x00, 0xab, + 0x18, 0x88, 0xe0, 0x84, 0x38, 0xbd, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x4c, 0x7b, 0x01, 0x00, + 0x3c, 0x00, 0x20, 0x39, 0x01, 0x00, 0xf8, 0xb5, + 0x0b, 0x1c, 0x06, 0x1c, 0x04, 0x1d, 0x7f, 0x33, + 0x14, 0xd0, 0x33, 0x68, 0x5d, 0x18, 0x35, 0x60, + 0x23, 0x88, 0x1f, 0x18, 0x06, 0x23, 0xff, 0x56, + 0xeb, 0x1b, 0x33, 0x60, 0x23, 0x88, 0x18, 0x18, + 0x81, 0x71, 0x20, 0x88, 0x01, 0x30, 0x00, 0x04, + 0x00, 0x0c, 0x20, 0x80, 0x90, 0x42, 0x01, 0xd3, + 0x00, 0x20, 0x20, 0x80, 0x10, 0x1c, 0x31, 0x68, + 0xec, 0xf7, 0x3c, 0x00, 0x5c, 0x39, 0x01, 0x00, + 0x6d, 0xfe, 0xf8, 0xbd, 0x0e, 0x49, 0x0a, 0x7c, + 0x83, 0x78, 0x1a, 0x43, 0x0a, 0x74, 0x42, 0x78, + 0x83, 0x78, 0x9a, 0x43, 0x0b, 0x7c, 0x93, 0x43, + 0x0b, 0x74, 0x8a, 0x7c, 0x43, 0x78, 0x1a, 0x43, + 0x8a, 0x74, 0x8a, 0x7c, 0x03, 0x78, 0x9a, 0x43, + 0x8a, 0x74, 0x02, 0x78, 0x43, 0x78, 0x1a, 0x43, + 0x4b, 0x7c, 0x1a, 0x43, 0x4a, 0x74, 0x4a, 0x7c, + 0xc0, 0x78, 0x82, 0x43, 0x3c, 0x00, 0x98, 0x39, + 0x01, 0x00, 0x4a, 0x74, 0x70, 0x47, 0x10, 0x00, + 0x07, 0x00, 0xb0, 0xb5, 0x06, 0x4d, 0x00, 0x24, + 0x20, 0x06, 0x00, 0x0e, 0xed, 0xf7, 0xf7, 0xf8, + 0xa1, 0x00, 0x69, 0x58, 0x08, 0x71, 0x01, 0x34, + 0x04, 0x2c, 0xf5, 0xdb, 0xb0, 0xbd, 0x10, 0x7b, + 0x01, 0x00, 0x0b, 0x48, 0x0c, 0x49, 0x7d, 0x23, + 0x42, 0x69, 0xdb, 0x00, 0x00, 0x2a, 0xc8, 0x6b, + 0x07, 0xd0, 0xc0, 0x18, 0x1a, 0x01, 0x3c, 0x00, + 0xd4, 0x39, 0x01, 0x00, 0x90, 0x42, 0xc8, 0x63, + 0x01, 0xd9, 0x07, 0x48, 0xc8, 0x63, 0x70, 0x47, + 0xff, 0x38, 0xf5, 0x38, 0xc8, 0x63, 0x98, 0x42, + 0xf9, 0xd2, 0xcb, 0x63, 0x70, 0x47, 0x00, 0x00, + 0xf4, 0x68, 0x01, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0x70, 0x17, 0x00, 0x00, 0x70, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x16, 0x1c, 0xfb, 0xf7, 0xf6, 0xfa, + 0xb0, 0x43, 0x28, 0x43, 0x01, 0x1c, 0x20, 0x1c, + 0x3c, 0x00, 0x10, 0x3a, 0x01, 0x00, 0x00, 0xf0, + 0xcc, 0xfa, 0x70, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x0b, 0x4a, 0x00, 0x29, 0x09, 0xd0, 0x02, 0x29, + 0x0f, 0xd1, 0x01, 0x1c, 0x08, 0x48, 0xd2, 0x78, + 0x38, 0x30, 0xff, 0xf7, 0x78, 0xff, 0x06, 0x49, + 0x06, 0xe0, 0x01, 0x1c, 0x04, 0x48, 0x12, 0x79, + 0x20, 0x30, 0xff, 0xf7, 0x70, 0xff, 0x03, 0x49, + 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x3a, 0x01, 0x00, + 0xc8, 0x67, 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, + 0x80, 0xb5, 0x0b, 0x4a, 0x00, 0x29, 0x09, 0xd0, + 0x02, 0x29, 0x0f, 0xd1, 0x01, 0x1c, 0x08, 0x48, + 0x52, 0x79, 0x68, 0x30, 0xff, 0xf7, 0x5a, 0xff, + 0x06, 0x49, 0x06, 0xe0, 0x01, 0x1c, 0x04, 0x48, + 0x92, 0x79, 0x50, 0x30, 0xff, 0xf7, 0x52, 0xff, + 0x03, 0x49, 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, + 0xac, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0x88, 0x3a, + 0x01, 0x00, 0xd0, 0x67, 0x01, 0x00, 0xcc, 0x67, + 0x01, 0x00, 0x08, 0xb5, 0x04, 0x21, 0x00, 0x91, + 0x81, 0x7e, 0x43, 0x68, 0x03, 0x29, 0x06, 0xd1, + 0x01, 0x1c, 0x0c, 0x31, 0x01, 0x20, 0x6a, 0x46, + 0xec, 0xf7, 0x9a, 0xfc, 0x08, 0xbd, 0x19, 0x68, + 0xc1, 0x60, 0xfb, 0xe7, 0x00, 0x00, 0x10, 0xb5, + 0x03, 0x1c, 0x00, 0x20, 0x08, 0x4c, 0x00, 0x21, + 0xca, 0x00, 0x12, 0x19, 0x92, 0x78, 0x3c, 0x00, + 0xc4, 0x3a, 0x01, 0x00, 0x9a, 0x42, 0x03, 0xd1, + 0xc8, 0x00, 0x00, 0x19, 0x40, 0x68, 0x10, 0xbd, + 0x01, 0x31, 0x09, 0x06, 0x09, 0x16, 0x06, 0x29, + 0xf1, 0xdb, 0x10, 0xbd, 0xcc, 0x5a, 0x01, 0x00, + 0xf8, 0xb5, 0x0f, 0x1c, 0x16, 0x1c, 0x00, 0x25, + 0xfe, 0xf7, 0x8e, 0xf9, 0x04, 0x1c, 0x0a, 0xd0, + 0x4a, 0x20, 0x00, 0x5d, 0x05, 0x28, 0x06, 0xd1, + 0x38, 0x1c, 0xf1, 0xf7, 0x81, 0xfe, 0x00, 0x28, + 0x3c, 0x00, 0x00, 0x3b, 0x01, 0x00, 0x01, 0xd0, + 0x01, 0x25, 0x34, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x70, 0xb5, 0x0d, 0x1c, 0x16, 0x1c, + 0x00, 0x24, 0xfe, 0xf7, 0x78, 0xf9, 0x00, 0x28, + 0x0b, 0xd0, 0x4a, 0x21, 0x09, 0x5c, 0x05, 0x29, + 0x07, 0xd1, 0x01, 0x69, 0x00, 0x29, 0x04, 0xd1, + 0x30, 0x60, 0xf1, 0xf7, 0x04, 0xfd, 0x01, 0x24, + 0x28, 0x60, 0x20, 0x1c, 0x70, 0xbd, 0xf8, 0xb5, + 0x06, 0x1c, 0x3c, 0x00, 0x3c, 0x3b, 0x01, 0x00, + 0x00, 0x25, 0x0c, 0x1c, 0x08, 0x1c, 0xf1, 0xf7, + 0x5d, 0xfe, 0x00, 0x28, 0x01, 0xd0, 0x00, 0x21, + 0x05, 0xe0, 0x20, 0x1c, 0xf1, 0xf7, 0x74, 0xfe, + 0x00, 0x28, 0x14, 0xd0, 0x01, 0x21, 0x30, 0x1c, + 0xf4, 0xf7, 0x80, 0xfb, 0x00, 0x90, 0x00, 0x28, + 0x0d, 0xd0, 0x08, 0x4f, 0x01, 0x25, 0x06, 0x22, + 0x31, 0x1c, 0x38, 0x1c, 0xec, 0xf7, 0xc2, 0xfc, + 0x06, 0x22, 0x21, 0x1c, 0x3c, 0x00, 0x78, 0x3b, + 0x01, 0x00, 0xb8, 0x18, 0xec, 0xf7, 0xbd, 0xfc, + 0x00, 0x98, 0xf8, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x00, 0x21, + 0x00, 0x28, 0x06, 0xd0, 0x42, 0x78, 0x07, 0x2a, + 0x03, 0xd1, 0xc0, 0x79, 0x01, 0x28, 0x00, 0xd1, + 0x01, 0x21, 0x08, 0x1c, 0x70, 0x47, 0xf8, 0xb5, + 0x05, 0x1c, 0x00, 0x27, 0x16, 0x4e, 0xf1, 0xf7, + 0x28, 0xfe, 0x00, 0x28, 0x07, 0xd0, 0x3c, 0x00, + 0xb4, 0x3b, 0x01, 0x00, 0xf1, 0xf7, 0xc0, 0xfb, + 0x00, 0x28, 0x10, 0xd1, 0x00, 0x24, 0xf1, 0xf7, + 0xbb, 0xfc, 0x06, 0xe0, 0xf1, 0xf7, 0x02, 0xfe, + 0x00, 0x28, 0x08, 0xd0, 0x01, 0x24, 0xf1, 0xf7, + 0x99, 0xfd, 0x01, 0x1c, 0x06, 0x22, 0x30, 0x1c, + 0xec, 0xf7, 0x8e, 0xfc, 0x01, 0x27, 0x00, 0x2f, + 0x0d, 0xd0, 0x21, 0x1c, 0x28, 0x1c, 0xf4, 0xf7, + 0x3b, 0xfb, 0x01, 0x1c, 0x05, 0x48, 0x06, 0x22, + 0x3c, 0x00, 0xf0, 0x3b, 0x01, 0x00, 0x06, 0x38, + 0xc1, 0x60, 0x29, 0x1c, 0xec, 0xf7, 0x7f, 0xfc, + 0x01, 0x20, 0xf8, 0xbd, 0x00, 0x20, 0xfc, 0xe7, + 0x00, 0x00, 0x76, 0x7c, 0x01, 0x00, 0xf0, 0xb5, + 0x07, 0x1c, 0x00, 0x68, 0x02, 0x21, 0x04, 0x68, + 0x78, 0x69, 0x87, 0xb0, 0x01, 0x40, 0x00, 0x25, + 0x00, 0x29, 0x05, 0x91, 0x74, 0x4e, 0x12, 0xd0, + 0x22, 0x88, 0x01, 0x21, 0x13, 0x05, 0x02, 0xd4, + 0xc0, 0x07, 0x3c, 0x00, 0x2c, 0x3c, 0x01, 0x00, + 0xc1, 0x17, 0x01, 0x31, 0x6f, 0x48, 0x00, 0x29, + 0x00, 0x68, 0x01, 0xd0, 0x01, 0x30, 0x04, 0xe0, + 0x11, 0x06, 0x89, 0x0e, 0x2d, 0x29, 0x01, 0xd1, + 0x03, 0x30, 0x30, 0x60, 0x20, 0x88, 0x80, 0x07, + 0x67, 0xd1, 0x78, 0x69, 0xc0, 0x07, 0x64, 0xd5, + 0x03, 0xaa, 0x04, 0xa9, 0x20, 0x1c, 0xf7, 0xf7, + 0x4b, 0xfb, 0x00, 0xab, 0x18, 0x7c, 0x00, 0x28, + 0x07, 0xd0, 0x18, 0x7c, 0x3c, 0x00, 0x68, 0x3c, + 0x01, 0x00, 0x02, 0x28, 0x58, 0xd1, 0x18, 0x7b, + 0x40, 0x07, 0x40, 0x0f, 0x04, 0x28, 0x53, 0xd8, + 0x20, 0x79, 0x05, 0x99, 0xc0, 0x07, 0xc0, 0x17, + 0x01, 0x30, 0x02, 0x90, 0x00, 0x29, 0x02, 0xd1, + 0x02, 0x98, 0x00, 0x28, 0x48, 0xd1, 0x05, 0x99, + 0x00, 0x29, 0x04, 0xd0, 0x20, 0x88, 0x00, 0x05, + 0x01, 0xd4, 0x00, 0x20, 0x30, 0x60, 0xc0, 0x20, + 0xed, 0xf7, 0xcb, 0xfd, 0x05, 0x1c, 0x3c, 0x00, + 0xa4, 0x3c, 0x01, 0x00, 0x20, 0x1c, 0x0a, 0x30, + 0x06, 0x90, 0xfe, 0xf7, 0xad, 0xf8, 0x06, 0x1c, + 0x28, 0x1c, 0x08, 0x30, 0x23, 0x88, 0x02, 0x1d, + 0x11, 0x1d, 0xdb, 0x05, 0x06, 0xd5, 0x06, 0x9b, + 0x03, 0x60, 0x20, 0x1c, 0x10, 0x30, 0x10, 0x60, + 0x20, 0x1d, 0x0e, 0xe0, 0x23, 0x1d, 0x13, 0x60, + 0x22, 0x88, 0x92, 0x05, 0x05, 0xd5, 0x22, 0x1c, + 0x10, 0x32, 0x02, 0x60, 0x06, 0x9b, 0x0b, 0x60, + 0x3c, 0x00, 0xe0, 0x3c, 0x01, 0x00, 0x04, 0xe0, + 0x06, 0x9b, 0x03, 0x60, 0x20, 0x1c, 0x10, 0x30, + 0x08, 0x60, 0x28, 0x69, 0xf1, 0xf7, 0x43, 0xfc, + 0x00, 0x28, 0x08, 0xd0, 0x01, 0x28, 0x12, 0xd0, + 0x02, 0x28, 0x58, 0xd1, 0x00, 0xab, 0x18, 0x7c, + 0x00, 0x28, 0x54, 0xd1, 0x12, 0xe0, 0x00, 0xab, + 0x18, 0x7c, 0x02, 0x28, 0x0b, 0xd1, 0x00, 0x2e, + 0x4d, 0xd0, 0x4b, 0x20, 0x80, 0x5d, 0x02, 0x28, + 0x49, 0xd1, 0x3c, 0x00, 0x1c, 0x3d, 0x01, 0x00, + 0x07, 0xe0, 0x63, 0xe0, 0x00, 0xab, 0x18, 0x7c, + 0x00, 0x28, 0x02, 0xd1, 0x38, 0x1c, 0xfe, 0xf7, + 0x1b, 0xff, 0x20, 0x88, 0x41, 0x04, 0x30, 0x48, + 0x11, 0xd5, 0x00, 0x2e, 0x52, 0xd0, 0x00, 0xab, + 0x19, 0x7c, 0x00, 0x29, 0x26, 0xd0, 0x02, 0x99, + 0x00, 0x29, 0x02, 0xd0, 0xb0, 0x6a, 0x00, 0x78, + 0x00, 0xe0, 0x00, 0x78, 0x01, 0x28, 0x1d, 0xd0, + 0x03, 0x28, 0x43, 0xd1, 0x3c, 0x00, 0x58, 0x3d, + 0x01, 0x00, 0x1a, 0xe0, 0x00, 0xab, 0x19, 0x7c, + 0x02, 0x29, 0x16, 0xd1, 0x19, 0x7b, 0x04, 0x29, + 0x13, 0xd0, 0x19, 0x7b, 0x0c, 0x29, 0x10, 0xd0, + 0x22, 0x49, 0x09, 0x68, 0x00, 0x29, 0x0c, 0xd0, + 0x00, 0x2e, 0x0a, 0xd0, 0x02, 0x99, 0x00, 0x29, + 0x02, 0xd0, 0xb0, 0x6a, 0x00, 0x78, 0x00, 0xe0, + 0x00, 0x78, 0x01, 0x28, 0x29, 0xd0, 0x03, 0x28, + 0x27, 0xd0, 0x28, 0x22, 0x39, 0x1c, 0x3c, 0x00, + 0x94, 0x3d, 0x01, 0x00, 0x28, 0x1c, 0x88, 0x30, + 0xec, 0xf7, 0x0a, 0xfc, 0x00, 0xab, 0x19, 0x7c, + 0x28, 0x1c, 0x80, 0x30, 0x01, 0x71, 0x19, 0x7b, + 0x41, 0x71, 0x6c, 0x60, 0x6e, 0x61, 0x1b, 0xe0, + 0x05, 0x99, 0x00, 0x29, 0x14, 0xd0, 0x11, 0x48, + 0x84, 0x6c, 0x00, 0x2c, 0x10, 0xd0, 0x00, 0x22, + 0x00, 0x2e, 0x04, 0xd0, 0x40, 0x36, 0xb0, 0x7a, + 0x05, 0x28, 0x00, 0xd1, 0x01, 0x22, 0x00, 0x92, + 0x3c, 0x00, 0xd0, 0x3d, 0x01, 0x00, 0xf8, 0x7a, + 0xba, 0x7a, 0x29, 0x69, 0xc3, 0x07, 0xdb, 0x0f, + 0x06, 0x98, 0xec, 0xf7, 0x00, 0xfb, 0x28, 0x1c, + 0xed, 0xf7, 0x07, 0xfd, 0x00, 0x25, 0x28, 0x1c, + 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xc4, 0x6a, + 0x01, 0x00, 0x68, 0x61, 0x01, 0x00, 0x28, 0x61, + 0x01, 0x00, 0xc4, 0x69, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x20, 0xff, 0xf7, 0x70, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x3e, 0x01, 0x00, + 0xb0, 0xb5, 0x1d, 0x4d, 0x01, 0x28, 0x17, 0xd0, + 0xa2, 0x28, 0x06, 0xd0, 0xa3, 0x28, 0x03, 0xd1, + 0x01, 0x21, 0x15, 0x20, 0xff, 0xf7, 0x08, 0xfc, + 0xb0, 0xbd, 0x00, 0x29, 0x01, 0xd1, 0x17, 0x48, + 0x02, 0xe0, 0x7d, 0x20, 0xc0, 0x00, 0x48, 0x43, + 0x00, 0x23, 0x01, 0x22, 0x01, 0x1c, 0x28, 0x60, + 0x15, 0x20, 0xff, 0xf7, 0xa7, 0xfc, 0xb0, 0xbd, + 0x01, 0x29, 0x04, 0xd0, 0x3c, 0x00, 0x48, 0x3e, + 0x01, 0x00, 0x02, 0x29, 0xfa, 0xd1, 0x00, 0xf0, + 0x2a, 0xf8, 0xb0, 0xbd, 0x6c, 0x68, 0xf5, 0xf7, + 0xde, 0xfc, 0xfe, 0xf7, 0xa8, 0xff, 0x68, 0x60, + 0x00, 0x2c, 0x09, 0xd0, 0x29, 0x68, 0x0a, 0x23, + 0x59, 0x43, 0x00, 0x1b, 0x88, 0x42, 0x03, 0xd9, + 0x01, 0x21, 0x15, 0x20, 0xed, 0xf7, 0x17, 0xfa, + 0x01, 0x22, 0x15, 0x20, 0x29, 0x68, 0xff, 0xf7, + 0xa6, 0xfb, 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x3e, 0x01, 0x00, 0x04, 0x79, 0x01, 0x00, + 0x00, 0x87, 0x93, 0x03, 0x01, 0x20, 0x04, 0x49, + 0x40, 0x03, 0x80, 0xb5, 0x08, 0x60, 0x03, 0x21, + 0x15, 0x20, 0xed, 0xf7, 0x03, 0xfa, 0x80, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0x07, 0x48, 0x80, 0xb5, + 0xbe, 0x21, 0x01, 0x73, 0x01, 0x7a, 0x10, 0x22, + 0x11, 0x43, 0x01, 0x72, 0x00, 0x23, 0x02, 0x22, + 0x15, 0x20, 0x03, 0x49, 0xff, 0xf7, 0x68, 0xfc, + 0x3c, 0x00, 0xc0, 0x3e, 0x01, 0x00, 0x80, 0xbd, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x00, 0x80, 0x9f, + 0xd5, 0x00, 0x80, 0xb5, 0x00, 0x28, 0x03, 0xd0, + 0x0a, 0x1c, 0x15, 0x21, 0xa2, 0x20, 0x02, 0xe0, + 0x00, 0x22, 0x15, 0x21, 0xa3, 0x20, 0xff, 0xf7, + 0x66, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, + 0x00, 0xf0, 0x19, 0xf8, 0x0a, 0x48, 0xbe, 0x21, + 0x01, 0x73, 0x03, 0x7a, 0x10, 0x22, 0x93, 0x43, + 0x01, 0x24, 0x3c, 0x00, 0xfc, 0x3e, 0x01, 0x00, + 0x23, 0x43, 0x03, 0x72, 0x01, 0x73, 0x01, 0x7a, + 0x91, 0x43, 0x20, 0x22, 0x11, 0x43, 0x01, 0x72, + 0x02, 0x22, 0x15, 0x20, 0x02, 0x49, 0xff, 0xf7, + 0x5b, 0xfb, 0x10, 0xbd, 0x00, 0x03, 0x07, 0x00, + 0x80, 0x9f, 0xd5, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x15, 0x20, 0xff, 0xf7, 0x85, 0xfb, 0x04, 0x48, + 0xbe, 0x21, 0x01, 0x73, 0x01, 0x7a, 0x11, 0x22, + 0x91, 0x43, 0x01, 0x72, 0x3c, 0x00, 0x38, 0x3f, + 0x01, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x05, 0x1c, + 0x60, 0x36, 0x00, 0x27, 0x44, 0x68, 0x22, 0xe0, + 0x08, 0x21, 0x00, 0x20, 0xed, 0xf7, 0x41, 0xfb, + 0x60, 0x61, 0x01, 0x89, 0x04, 0x39, 0x09, 0x04, + 0x09, 0x0c, 0x01, 0x81, 0x60, 0x69, 0x00, 0x68, + 0x40, 0x18, 0x04, 0x21, 0xed, 0xf7, 0x35, 0xfb, + 0xe0, 0x61, 0x60, 0x69, 0x71, 0x7b, 0x3c, 0x00, + 0x74, 0x3f, 0x01, 0x00, 0x00, 0x68, 0x89, 0x01, + 0xc1, 0x70, 0x29, 0x69, 0x0c, 0x31, 0x03, 0x22, + 0xec, 0xf7, 0xba, 0xfa, 0x28, 0x69, 0x0c, 0x30, + 0x01, 0x68, 0x01, 0x31, 0x01, 0x60, 0x25, 0x62, + 0xa7, 0x61, 0x24, 0x68, 0x00, 0x2c, 0xda, 0xd1, + 0x02, 0x49, 0x03, 0x48, 0x6a, 0x68, 0xf6, 0xf7, + 0xb3, 0xf8, 0xf8, 0xbd, 0xfd, 0x6b, 0x00, 0x00, + 0xa0, 0x6a, 0x01, 0x00, 0x80, 0xb5, 0x00, 0x07, + 0x3c, 0x00, 0xb0, 0x3f, 0x01, 0x00, 0x00, 0x09, + 0x09, 0x02, 0x09, 0x0a, 0x08, 0x43, 0x02, 0x49, + 0x08, 0x60, 0xff, 0xf7, 0x20, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x60, 0x00, 0x07, 0x00, 0x08, 0x00, + 0x14, 0x00, 0xc8, 0x00, 0x00, 0x00, 0xe8, 0x03, + 0x00, 0x00, 0x10, 0x00, 0x14, 0x00, 0xc8, 0x00, + 0x00, 0x00, 0xe8, 0x03, 0x00, 0x00, 0x1c, 0x00, + 0x14, 0x00, 0xc8, 0x00, 0x00, 0x00, 0xe8, 0x03, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x3f, 0x01, 0x00, + 0x24, 0x01, 0x07, 0x00, 0x32, 0x00, 0x00, 0x00, + 0xe8, 0x03, 0x00, 0x00, 0x40, 0x06, 0x01, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x41, 0x6e, 0x62, 0x69, 0x7e, 0x64, 0x61, 0x6f, + 0x6f, 0x00, 0x00, 0x00, 0x52, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x20, 0x36, 0x5f, 0x37, 0x5f, + 0x31, 0x35, 0x20, 0x42, 0x75, 0x69, 0x6c, 0x64, + 0x20, 0x32, 0x3a, 0x35, 0x3c, 0x00, 0x28, 0x40, + 0x01, 0x00, 0x32, 0x39, 0x38, 0x20, 0x53, 0x65, + 0x70, 0x20, 0x30, 0x34, 0x20, 0x32, 0x30, 0x30, + 0x39, 0x20, 0x31, 0x37, 0x3a, 0x31, 0x33, 0x3a, + 0x32, 0x30, 0x20, 0x28, 0x48, 0x57, 0x3d, 0x34, + 0x3a, 0x33, 0x2c, 0x42, 0x54, 0x43, 0x4f, 0x45, + 0x58, 0x29, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, + 0x1c, 0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x00, + 0x64, 0x40, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xe8, 0x03, 0x70, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0xd0, 0x07, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x7c, 0x15, 0x15, 0x00, + 0x3c, 0x00, 0xa0, 0x40, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x70, 0x17, + 0x1e, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, + 0x00, 0x00, 0x28, 0x23, 0x16, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0xf8, 0x2a, + 0x0b, 0x00, 0x3c, 0x00, 0xdc, 0x40, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, + 0xe0, 0x2e, 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x00, 0x00, 0x00, 0x50, 0x46, 0x0e, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, + 0xf0, 0x55, 0x08, 0x00, 0x3c, 0x00, 0x18, 0x41, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2c, 0x00, + 0x00, 0x00, 0xc0, 0x5d, 0x0e, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0xe8, 0x80, + 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x42, 0x00, + 0x00, 0x00, 0xa0, 0x8c, 0x0a, 0x00, 0x3c, 0x00, + 0x54, 0x41, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x48, 0x00, 0x00, 0x00, 0x80, 0xbb, 0x0a, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, + 0xf0, 0xd2, 0x0a, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x6c, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x90, 0x00, + 0x3c, 0x00, 0x90, 0x41, 0x01, 0x00, 0xc0, 0x00, + 0x90, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x14, 0x00, + 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, 0xc0, 0x00, + 0x90, 0x00, 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, + 0x10, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x14, 0x00, + 0x10, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x14, 0x00, + 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, + 0x10, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x60, 0x00, + 0x48, 0x00, 0x3c, 0x00, 0xcc, 0x41, 0x01, 0x00, + 0x60, 0x00, 0x48, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x14, 0x00, 0x10, 0x00, 0x60, 0x00, 0x48, 0x00, + 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x60, 0x00, 0x48, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x60, 0x00, 0x48, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x02, 0x00, 0x04, 0x01, 0x0b, 0x02, 0x0c, 0x03, + 0x12, 0x04, 0x16, 0x05, 0x3c, 0x00, 0x08, 0x42, + 0x01, 0x00, 0x18, 0x06, 0x00, 0x0e, 0x00, 0x0e, + 0x24, 0x07, 0x00, 0x0e, 0x2c, 0x08, 0x30, 0x09, + 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x42, 0x0a, + 0x00, 0x0e, 0x48, 0x0b, 0x00, 0x0e, 0x00, 0x0e, + 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x60, 0x0c, + 0x00, 0x0e, 0x00, 0x0e, 0x6c, 0x0d, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0xc0, 0xff, 0xff, 0xff, 0x3c, 0x00, + 0x44, 0x42, 0x01, 0x00, 0xb6, 0xff, 0xff, 0xff, + 0xd3, 0xff, 0xff, 0xff, 0xc9, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x51, 0xb0, 0x00, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x51, 0xb0, 0x00, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x59, 0xaf, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x42, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xa5, 0xaf, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x4d, 0xaf, 0x00, 0x00, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x45, 0xb0, 0x00, 0x00, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xd5, 0xaf, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xad, 0xb0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x42, 0x01, 0x00, + 0x95, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x95, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x99, 0xb0, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x42, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x17, + 0x01, 0x00, 0x35, 0x17, 0x01, 0x00, 0x21, 0x17, + 0x01, 0x00, 0xd9, 0x9c, 0x00, 0x00, 0x49, 0x17, + 0x01, 0x00, 0x3d, 0x17, 0x01, 0x00, 0xd1, 0x9c, + 0x00, 0x00, 0xd1, 0x9c, 0x00, 0x00, 0x1d, 0x1a, + 0x01, 0x00, 0xd1, 0x9c, 0x00, 0x00, 0x01, 0x1a, + 0x01, 0x00, 0x31, 0x1a, 0x01, 0x00, 0x25, 0x1a, + 0x01, 0x00, 0x3d, 0x17, 0x01, 0x00, 0x3c, 0x00, + 0x34, 0x43, 0x01, 0x00, 0x81, 0x1a, 0x01, 0x00, + 0xd1, 0x9c, 0x00, 0x00, 0x79, 0x17, 0x01, 0x00, + 0xd9, 0x9c, 0x00, 0x00, 0x5d, 0x17, 0x01, 0x00, + 0xa1, 0x17, 0x01, 0x00, 0x95, 0x17, 0x01, 0x00, + 0x81, 0x17, 0x01, 0x00, 0x21, 0x18, 0x01, 0x00, + 0xf5, 0x17, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x10, 0x00, 0x08, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x43, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x19, 0x1c, + 0x01, 0x00, 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x85, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x85, 0x41, + 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, 0x85, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x35, 0x1b, + 0x01, 0x00, 0x3c, 0x00, 0xac, 0x43, 0x01, 0x00, + 0x9d, 0x1b, 0x01, 0x00, 0x01, 0x1c, 0x01, 0x00, + 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, + 0x89, 0x41, 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, + 0x65, 0x18, 0x01, 0x00, 0x29, 0x18, 0x01, 0x00, + 0x39, 0x18, 0x01, 0x00, 0xbd, 0x18, 0x01, 0x00, + 0x89, 0x41, 0x00, 0x00, 0x4d, 0x18, 0x01, 0x00, + 0xa5, 0x18, 0x01, 0x00, 0x85, 0x41, 0x00, 0x00, + 0x01, 0x19, 0x01, 0x00, 0x3c, 0x00, 0xe8, 0x43, + 0x01, 0x00, 0xd9, 0x18, 0x01, 0x00, 0xed, 0x18, + 0x01, 0x00, 0x15, 0x19, 0x01, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, 0x69, 0x1c, + 0x01, 0x00, 0x89, 0x41, 0x00, 0x00, 0x71, 0x1c, + 0x01, 0x00, 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0xfd, 0xdb, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x44, 0x01, 0x00, 0x1d, 0x7c, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x00, 0xf5, 0xda, 0x00, 0x00, + 0x14, 0x00, 0x81, 0x00, 0xfd, 0xdd, 0x00, 0x00, + 0x08, 0x00, 0x82, 0x00, 0xc5, 0xdd, 0x00, 0x00, + 0x38, 0x00, 0x83, 0x00, 0x45, 0xdc, 0x00, 0x00, + 0x10, 0x00, 0x84, 0x00, 0x99, 0xdc, 0x00, 0x00, + 0x0c, 0x00, 0x86, 0x00, 0x39, 0xdc, 0x00, 0x00, + 0x10, 0x00, 0x88, 0x00, 0x11, 0xde, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x44, 0x01, 0x00, 0x10, 0x00, + 0x8a, 0x00, 0x35, 0xdd, 0x00, 0x00, 0x0c, 0x00, + 0x8c, 0x00, 0xad, 0xdf, 0x00, 0x00, 0x1c, 0x00, + 0x8e, 0x00, 0xc9, 0xde, 0x00, 0x00, 0x38, 0x00, + 0x8f, 0x00, 0xed, 0xdc, 0x00, 0x00, 0x38, 0x00, + 0x90, 0x00, 0x75, 0xdf, 0x00, 0x00, 0x0c, 0x00, + 0x91, 0x00, 0x8d, 0xdc, 0x00, 0x00, 0x0c, 0x00, + 0x93, 0x00, 0xb9, 0xdd, 0x00, 0x00, 0x0c, 0x00, + 0x94, 0x00, 0x3c, 0x00, 0x9c, 0x44, 0x01, 0x00, + 0x00, 0x08, 0x08, 0x08, 0x10, 0x0c, 0x0c, 0x0c, + 0x08, 0x0c, 0x08, 0x0c, 0x08, 0x0c, 0x08, 0x08, + 0x08, 0x08, 0x14, 0x08, 0x08, 0x14, 0x00, 0x30, + 0x00, 0x01, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, + 0xad, 0x30, 0x01, 0x00, 0x15, 0x30, 0x01, 0x00, + 0x20, 0x30, 0x07, 0x00, 0x30, 0x30, 0x07, 0x00, + 0x06, 0x07, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x44, + 0x01, 0x00, 0xff, 0xff, 0xff, 0x00, 0xff, 0xff, + 0xff, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc9, 0x02, 0x00, 0x94, 0x3f, + 0x03, 0x00, 0xe0, 0x8b, 0x5a, 0x00, 0x05, 0x3a, + 0x85, 0x00, 0xc8, 0xf2, 0x06, 0x00, 0xf8, 0x4c, + 0x56, 0x00, 0x20, 0xa7, 0x3d, 0x00, 0xb7, 0x4a, + 0x00, 0x00, 0xb7, 0x4a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x45, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, + 0x02, 0x02, 0x03, 0x03, 0x03, 0x04, 0x04, 0x04, + 0x05, 0x06, 0x00, 0x00, 0x2d, 0x7c, 0x00, 0x00, + 0x00, 0x00, 0xff, 0x00, 0xfd, 0x95, 0x00, 0x00, + 0x08, 0x00, 0xff, 0x00, 0xed, 0x97, 0x00, 0x00, + 0x08, 0x00, 0x82, 0x00, 0xcd, 0x95, 0x00, 0x00, + 0x0c, 0x00, 0x83, 0x00, 0x4d, 0x96, 0x00, 0x00, + 0x0c, 0x00, 0x85, 0x00, 0x2d, 0x7c, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x45, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x3d, 0x96, 0x00, 0x00, 0x0c, 0x00, + 0x89, 0x00, 0xd9, 0x97, 0x00, 0x00, 0x08, 0x00, + 0x8a, 0x00, 0x91, 0x95, 0x00, 0x00, 0x08, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x3c, 0x00, 0x8c, 0x45, 0x01, 0x00, + 0xf9, 0x97, 0x00, 0x00, 0x08, 0x00, 0x8d, 0x00, + 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, + 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, + 0xc9, 0x97, 0x00, 0x00, 0x30, 0x00, 0x90, 0x00, + 0x11, 0x95, 0x00, 0x00, 0x18, 0x00, 0x91, 0x00, + 0x15, 0x96, 0x00, 0x00, 0x08, 0x00, 0x92, 0x00, + 0x59, 0x95, 0x00, 0x00, 0x3c, 0x00, 0x93, 0x00, + 0x29, 0x96, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x45, + 0x01, 0x00, 0x08, 0x00, 0x94, 0x00, 0xa1, 0x95, + 0x00, 0x00, 0x08, 0x00, 0x95, 0x00, 0x81, 0x97, + 0x00, 0x00, 0x0c, 0x00, 0x96, 0x00, 0x6d, 0x97, + 0x00, 0x00, 0x10, 0x00, 0x98, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x10, + 0x08, 0x00, 0x00, 0x08, 0x00, 0x10, 0x3c, 0x00, + 0x04, 0x46, 0x01, 0x00, 0x08, 0x0c, 0x0c, 0x0c, + 0x0c, 0x1c, 0x0c, 0x0c, 0x08, 0x00, 0x00, 0x00, + 0x0d, 0x8b, 0x00, 0x00, 0xf5, 0x8a, 0x00, 0x00, + 0xe9, 0x8a, 0x00, 0x00, 0x01, 0x8b, 0x00, 0x00, + 0x14, 0x08, 0x0c, 0x0c, 0x10, 0x0c, 0x00, 0x00, + 0xb1, 0x98, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, + 0x19, 0x99, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, + 0x3d, 0x7c, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x46, 0x01, 0x00, 0x3d, 0x99, + 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, 0x09, 0x99, + 0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x3d, 0x7c, + 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x01, + 0x04, 0x04, 0x08, 0x08, 0x81, 0x37, 0x80, 0xf3, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0xaa, 0xaa, + 0x03, 0x00, 0x00, 0xf8, 0x6d, 0xa9, 0x6d, 0xa9, + 0x6e, 0xa9, 0x3c, 0x00, 0x7c, 0x46, 0x01, 0x00, + 0x6e, 0xa8, 0x6e, 0xa8, 0x6e, 0xa8, 0x6f, 0xa7, + 0x6f, 0xa7, 0x6f, 0xa7, 0x6f, 0xa6, 0x6f, 0xa6, + 0x70, 0xa6, 0x70, 0xa5, 0x70, 0xa4, 0x00, 0x00, + 0xb5, 0x1b, 0x01, 0x00, 0xc9, 0x1b, 0x01, 0x00, + 0xe1, 0x1b, 0x01, 0x00, 0xe5, 0x9c, 0x00, 0x00, + 0xa5, 0x1b, 0x01, 0x00, 0xe5, 0x9c, 0x00, 0x00, + 0x89, 0x1b, 0x01, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x46, + 0x01, 0x00, 0xd1, 0x1a, 0x01, 0x00, 0xe5, 0x1a, + 0x01, 0x00, 0x05, 0x1b, 0x01, 0x00, 0x25, 0x1b, + 0x01, 0x00, 0xb1, 0x1a, 0x01, 0x00, 0xe5, 0x9c, + 0x00, 0x00, 0x9d, 0x1a, 0x01, 0x00, 0xd5, 0x9c, + 0x00, 0x00, 0xc1, 0x1a, 0x01, 0x00, 0x89, 0x19, + 0x01, 0x00, 0xa9, 0x19, 0x01, 0x00, 0xc9, 0x19, + 0x01, 0x00, 0xf1, 0x19, 0x01, 0x00, 0x79, 0x19, + 0x01, 0x00, 0xe5, 0x9c, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x46, 0x01, 0x00, 0x65, 0x19, 0x01, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0x55, 0x1c, 0x01, 0x00, + 0x45, 0x1c, 0x01, 0x00, 0x45, 0x1c, 0x01, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x47, 0x01, 0x00, 0xd5, 0x9c, + 0x00, 0x00, 0x55, 0x19, 0x01, 0x00, 0xe5, 0x9c, + 0x00, 0x00, 0x41, 0x19, 0x01, 0x00, 0x31, 0x19, + 0x01, 0x00, 0xd5, 0x9c, 0x00, 0x00, 0x02, 0x05, + 0x0a, 0x00, 0x00, 0x00, 0x02, 0x04, 0x0a, 0x00, + 0x00, 0x00, 0xc5, 0x20, 0x00, 0x00, 0x21, 0x21, + 0x00, 0x00, 0x25, 0x21, 0x00, 0x00, 0x39, 0x21, + 0x00, 0x00, 0x49, 0x21, 0x00, 0x00, 0x55, 0x21, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x47, 0x01, 0x00, + 0x61, 0x21, 0x00, 0x00, 0xed, 0x21, 0x00, 0x00, + 0x0d, 0x22, 0x00, 0x00, 0x21, 0x22, 0x00, 0x00, + 0x3d, 0x22, 0x00, 0x00, 0x49, 0x22, 0x00, 0x00, + 0xc5, 0x22, 0x00, 0x00, 0xe1, 0x22, 0x00, 0x00, + 0xf5, 0x22, 0x00, 0x00, 0xe9, 0x1f, 0x00, 0x00, + 0xe9, 0x1f, 0x00, 0x00, 0xe9, 0x1f, 0x00, 0x00, + 0xe9, 0x1f, 0x00, 0x00, 0xe9, 0x1f, 0x00, 0x00, + 0x11, 0x23, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x47, + 0x01, 0x00, 0x1d, 0x23, 0x00, 0x00, 0x89, 0x23, + 0x00, 0x00, 0xa5, 0x23, 0x00, 0x00, 0xb9, 0x23, + 0x00, 0x00, 0x11, 0x20, 0x00, 0x00, 0x1d, 0x20, + 0x00, 0x00, 0x6d, 0x20, 0x00, 0x00, 0x8d, 0x20, + 0x00, 0x00, 0xb9, 0x20, 0x00, 0x00, 0x00, 0x01, + 0x02, 0x03, 0x03, 0x05, 0x06, 0x06, 0x08, 0x09, + 0x08, 0x09, 0x09, 0x09, 0xc4, 0x80, 0xca, 0x80, + 0x80, 0x80, 0x80, 0x80, 0xd0, 0x80, 0x3c, 0x00, + 0xe4, 0x47, 0x01, 0x00, 0xd6, 0xd9, 0xdc, 0xdf, + 0xe2, 0x80, 0x80, 0x80, 0xe5, 0xe8, 0x80, 0x80, + 0x80, 0x80, 0xeb, 0xee, 0xf1, 0xf4, 0xf7, 0xfa, + 0xfd, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, + 0x04, 0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, + 0x08, 0x00, 0x09, 0x00, 0x0a, 0x00, 0x0b, 0x00, + 0x0c, 0x00, 0x0e, 0x00, 0x10, 0x00, 0x11, 0x00, + 0x13, 0x00, 0x16, 0x00, 0x18, 0x00, 0x1b, 0x00, + 0x3c, 0x00, 0x20, 0x48, 0x01, 0x00, 0x1e, 0x00, + 0x22, 0x00, 0x26, 0x00, 0x2b, 0x00, 0x30, 0x00, + 0x36, 0x00, 0x3c, 0x00, 0x44, 0x00, 0x4c, 0x00, + 0x55, 0x00, 0x5f, 0x00, 0x6b, 0x00, 0x78, 0x00, + 0x86, 0x00, 0x97, 0x00, 0xa9, 0x00, 0xbe, 0x00, + 0xd5, 0x00, 0xef, 0x00, 0xff, 0x7f, 0x0c, 0x00, + 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0xfe, 0xff, + 0xfc, 0xff, 0xfb, 0xff, 0xfa, 0xff, 0xf9, 0xff, + 0xf8, 0xff, 0x3c, 0x00, 0x5c, 0x48, 0x01, 0x00, + 0xf7, 0xff, 0xf6, 0xff, 0xf5, 0xff, 0xf4, 0xff, + 0xf3, 0xff, 0xf2, 0xff, 0xf1, 0xff, 0xf0, 0xff, + 0xef, 0xff, 0xee, 0xff, 0xed, 0xff, 0xec, 0xff, + 0xeb, 0xff, 0xea, 0xff, 0xe9, 0xff, 0xe8, 0xff, + 0xe7, 0xff, 0xe6, 0xff, 0xe5, 0xff, 0xe4, 0xff, + 0xe3, 0xff, 0xe2, 0xff, 0xe1, 0xff, 0xe0, 0xff, + 0xdf, 0xff, 0xde, 0xff, 0xdd, 0xff, 0xdc, 0xff, + 0xdc, 0xff, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x48, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xb1, 0x7c, 0x41, 0x00, 0x11, 0x5a, + 0x40, 0xe2, 0xb2, 0x7c, 0x41, 0x00, 0x05, 0x5a, + 0x40, 0xe2, 0xaf, 0x7c, 0x41, 0x00, 0xf9, 0x59, + 0x40, 0xe2, 0xb0, 0x7c, 0x41, 0x00, 0xed, 0x59, + 0x40, 0xe2, 0x24, 0x67, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x5c, 0x67, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x0a, 0x61, 0x01, 0x00, 0x3c, 0x00, + 0xd4, 0x48, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x0e, 0x61, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x32, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x6a, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x0b, 0x61, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x0f, 0x61, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x40, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x78, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x3c, 0x00, 0x10, 0x49, 0x01, 0x00, 0x0c, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0x10, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0x4e, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x86, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x0d, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0x11, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0xc0, 0x48, + 0x01, 0x00, 0x04, 0x00, 0x00, 0x0a, 0xe0, 0x48, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x49, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x00, 0x49, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x20, 0x49, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x18, 0x67, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x28, 0x75, 0x01, 0x01, + 0x7d, 0xa9, 0x40, 0xe2, 0x2c, 0x75, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x20, 0x75, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x44, 0x75, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x88, 0x49, + 0x01, 0x00, 0xf0, 0x59, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x24, 0x75, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0xb8, 0x7c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x8d, 0xa9, 0x00, 0x00, 0x01, 0x00, + 0x00, 0xda, 0x1d, 0x75, 0x01, 0x00, 0x01, 0x00, + 0x00, 0xe2, 0xc4, 0x67, 0x01, 0x00, 0x3c, 0x00, + 0xc4, 0x49, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x59, 0x00, 0x00, 0x0e, 0x00, 0x00, 0xd9, + 0xc8, 0x67, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xcc, 0x67, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xd0, 0x67, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x65, 0xd9, 0x00, 0x00, 0x04, 0x00, 0x00, 0xda, + 0xa5, 0xd9, 0x00, 0x00, 0x04, 0x00, 0x00, 0xda, + 0x3c, 0x00, 0x00, 0x4a, 0x01, 0x00, 0x01, 0x59, + 0x00, 0x00, 0x01, 0x00, 0x00, 0xda, 0x32, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x6a, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x11, 0x59, + 0x00, 0x00, 0x01, 0x00, 0x00, 0xda, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x48, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0xa0, 0x48, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x40, 0x49, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0x4a, 0x01, 0x00, + 0x05, 0x00, 0x00, 0x0a, 0x68, 0x49, 0x01, 0x00, + 0x09, 0x00, 0x00, 0x0a, 0x6c, 0x57, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x38, 0x61, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xac, 0x6e, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0xb0, 0x6e, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x70, 0x57, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x78, 0x4a, + 0x01, 0x00, 0xe8, 0x59, 0x01, 0x00, 0x08, 0x00, + 0x00, 0xe3, 0xdc, 0x58, 0x01, 0x14, 0x4d, 0xfd, + 0x40, 0xe3, 0x2c, 0x59, 0x01, 0x14, 0x39, 0xfd, + 0x40, 0xe3, 0xc0, 0x58, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x64, 0x73, 0x41, 0x00, 0x3d, 0x2e, + 0x44, 0xe2, 0x7c, 0x59, 0x01, 0x14, 0x3c, 0x00, + 0xb4, 0x4a, 0x01, 0x00, 0x9d, 0x2f, 0x44, 0xe3, + 0x5c, 0x57, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe2, + 0x79, 0x2e, 0x04, 0x00, 0x01, 0x00, 0x00, 0xdb, + 0xa0, 0x58, 0x01, 0x00, 0x02, 0x00, 0x00, 0xe3, + 0xa2, 0x58, 0x01, 0x00, 0x02, 0x00, 0x00, 0xe3, + 0xa0, 0x57, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0xd1, 0x88, 0x01, 0x00, 0x01, 0x00, 0x00, 0xda, + 0x1d, 0x89, 0x01, 0x00, 0x04, 0x00, 0x00, 0xda, + 0x3c, 0x00, 0xf0, 0x4a, 0x01, 0x00, 0x95, 0x88, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xdb, 0x31, 0x2f, + 0x04, 0x00, 0x0e, 0x00, 0x00, 0xd9, 0xc5, 0x2e, + 0x04, 0x00, 0x0e, 0x00, 0x00, 0xd9, 0x68, 0x6c, + 0x01, 0x01, 0x15, 0xd5, 0x40, 0xe2, 0xc0, 0x57, + 0x01, 0x00, 0x08, 0x00, 0x00, 0xe3, 0xc8, 0x57, + 0x01, 0x00, 0x34, 0x00, 0x00, 0xe3, 0x9c, 0x6c, + 0x01, 0x00, 0x08, 0x00, 0x00, 0xe3, 0xb0, 0x58, + 0x01, 0x03, 0x3c, 0x00, 0x2c, 0x4b, 0x01, 0x00, + 0xe9, 0xd4, 0x40, 0xe2, 0xbc, 0x58, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x9d, 0xa3, 0x00, 0x00, + 0x60, 0x00, 0x00, 0xd9, 0x70, 0x79, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x78, 0x79, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x7c, 0x5a, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x5d, 0x1c, 0x00, 0x00, + 0x11, 0x00, 0x00, 0xd9, 0x24, 0x6e, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x68, 0x4b, + 0x01, 0x00, 0x18, 0x58, 0x01, 0x05, 0xd5, 0xd5, + 0x40, 0xe3, 0xfc, 0x57, 0x01, 0x00, 0x14, 0x00, + 0x00, 0xe3, 0x04, 0x8e, 0x01, 0x03, 0xe5, 0xd5, + 0x40, 0xe3, 0x00, 0x5b, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x18, 0x5b, 0x01, 0x00, 0x40, 0x00, + 0x00, 0xe2, 0xd4, 0x67, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x8d, 0x37, 0x00, 0x00, 0x04, 0x00, + 0x00, 0xdb, 0xbd, 0x36, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x4b, 0x01, 0x00, 0x04, 0x00, 0x00, 0xdb, + 0xfc, 0x60, 0x01, 0x00, 0x02, 0x00, 0x00, 0xe2, + 0x90, 0x7d, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x70, 0x69, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xb0, 0x49, 0x01, 0x00, 0x1a, 0x00, 0x00, 0x0a, + 0x90, 0x4b, 0x01, 0x00, 0x06, 0x00, 0x00, 0x0a, + 0xa4, 0x58, 0x81, 0x00, 0x05, 0xfd, 0x40, 0xe3, + 0x3c, 0x00, 0xe0, 0x4b, 0x01, 0x00, 0x80, 0x4a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0x0a, 0x0c, 0x5a, + 0x81, 0x01, 0x25, 0x2d, 0x44, 0xe3, 0xe0, 0x4a, + 0x01, 0x00, 0x03, 0x00, 0x00, 0x0a, 0x18, 0x63, + 0x41, 0x00, 0xfd, 0xbb, 0x40, 0xe2, 0x08, 0x57, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe2, 0x9c, 0x48, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x4a, + 0x01, 0x00, 0x3c, 0x00, 0x1c, 0x4c, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x0a, 0xcc, 0x74, 0x01, 0x00, + 0x03, 0x00, 0x00, 0xe3, 0x65, 0x73, 0x41, 0x00, + 0xa9, 0x2e, 0x44, 0xe2, 0xf6, 0x59, 0x01, 0x01, + 0xd1, 0x2c, 0x44, 0xe3, 0x08, 0x4b, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x07, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x6a, 0x28, 0x4b, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x0a, 0x88, 0x7d, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x58, 0x4c, + 0x01, 0x00, 0x00, 0x75, 0x01, 0x04, 0x65, 0x6f, + 0x40, 0xe3, 0xbc, 0x78, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x38, 0x4b, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x0a, 0x04, 0x57, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x62, 0x58, 0x4b, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x80, 0x4b, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x68, 0x4b, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x8c, 0x7d, 0x01, 0x00, 0x3c, 0x00, + 0x94, 0x4c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x39, 0x2d, 0x04, 0x00, 0x04, 0x00, 0x00, 0xdb, + 0x94, 0x7d, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x40, 0x01, 0x00, 0x00, 0x00, 0x00, 0x64, + 0xa8, 0x4c, 0x01, 0x00, 0x04, 0x00, 0x00, 0x0a, + 0x3c, 0x00, 0xd0, 0x4c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x4c, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x0a, 0xd0, 0x4c, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x7a, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe2, 0xe8, 0x7a, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe2, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0x7a, + 0x01, 0x00, 0x3c, 0x00, 0x0c, 0x4d, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0xee, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf3, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0xf4, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf9, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0xfa, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x48, 0x4d, + 0x01, 0x00, 0xe8, 0x4c, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x00, 0x4d, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x18, 0x4d, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x30, 0x4d, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x90, 0x5c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x94, 0x5c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x98, 0x5c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x9c, 0x5c, 0x01, 0x00, 0x3c, 0x00, + 0x84, 0x4d, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xa0, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xa4, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xa8, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xac, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xb0, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xb4, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xb8, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x3c, 0x00, 0xc0, 0x4d, 0x01, 0x00, 0xbc, 0x5c, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0xc0, 0x5c, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0xc4, 0x5c, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0x90, 0x5c, + 0x01, 0x00, 0x38, 0x00, 0x00, 0xe3, 0x68, 0x4d, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0x0a, 0xd8, 0x4d, + 0x01, 0x00, 0x02, 0x00, 0x00, 0xfa, 0x12, 0x61, + 0x81, 0x01, 0x31, 0xd5, 0x40, 0xe3, 0x06, 0x61, + 0x01, 0x00, 0x3c, 0x00, 0xfc, 0x4d, 0x01, 0x00, + 0x02, 0x00, 0x00, 0xe2, 0x0b, 0x61, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe3, 0x0f, 0x61, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe3, 0x08, 0x61, 0x01, 0x00, + 0x02, 0x00, 0x00, 0xe2, 0x50, 0x7b, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0x01, 0x00, + 0x0e, 0x00, 0x00, 0x64, 0x9c, 0x57, 0x01, 0x01, + 0x91, 0x88, 0x41, 0xe3, 0x3c, 0x00, 0x38, 0x4e, + 0x01, 0x00, 0x6e, 0x41, 0x67, 0x6f, 0xe2, 0x65, + 0x60, 0x69, 0x6f, 0x20, 0x41, 0x42, 0x00, 0x00, + 0x00, 0x00, 0xf0, 0x4d, 0x01, 0x00, 0x09, 0x00, + 0x00, 0x0a, 0x48, 0x4e, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x0a, 0xe8, 0x4d, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x48, 0x4d, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x0a, 0x28, 0x61, 0x01, 0x01, 0x3c, 0x00, + 0x74, 0x4e, 0x01, 0x00, 0xbd, 0xd5, 0x40, 0xe2, + 0x69, 0x61, 0x41, 0x00, 0x85, 0xd5, 0x40, 0xe2, + 0x30, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x34, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x3c, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x34, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x44, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x3c, 0x00, 0xb0, 0x4e, 0x01, 0x00, 0x70, 0x4e, + 0x01, 0x00, 0x08, 0x00, 0x00, 0x0a, 0x18, 0x61, + 0x01, 0x00, 0x02, 0x00, 0x00, 0xe2, 0x1c, 0x61, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0x20, 0x61, + 0x01, 0x00, 0x02, 0x00, 0x00, 0xe2, 0x24, 0x61, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0xb8, 0x4e, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0xc8, 0x4e, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0xd8, 0x4e, + 0x01, 0x00, 0x3c, 0x00, 0xec, 0x4e, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x0a, 0x96, 0x48, 0x01, 0x00, + 0x06, 0x00, 0x00, 0xe3, 0xe0, 0x62, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x9b, 0x7d, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x62, 0x9c, 0x7d, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x62, 0x60, 0x7c, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x01, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x3c, 0x00, 0x28, 0x4f, + 0x01, 0x00, 0x2d, 0x63, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x62, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x49, 0xd5, 0x00, 0x00, 0x0e, 0x00, + 0x00, 0xd9, 0xf4, 0x67, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x62, 0x46, 0x7d, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x62, 0x9c, 0x7c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x98, 0x7c, 0x01, 0x00, 0x3c, 0x00, + 0x64, 0x4f, 0x01, 0x00, 0x02, 0x00, 0x00, 0x62, + 0xa0, 0x7c, 0x01, 0x00, 0x06, 0x00, 0x00, 0x62, + 0x58, 0x7c, 0x01, 0x00, 0x02, 0x00, 0x00, 0x62, + 0x64, 0x7c, 0x01, 0x00, 0x06, 0x00, 0x00, 0x62, + 0x5a, 0x7c, 0x01, 0x00, 0x02, 0x00, 0x00, 0x62, + 0x6a, 0x7c, 0x01, 0x00, 0x06, 0x00, 0x00, 0x62, + 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0xe4, 0x62, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x3c, 0x00, 0xa0, 0x4f, 0x01, 0x00, 0xe8, 0x62, + 0x01, 0x00, 0x03, 0x00, 0x00, 0xe2, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x01, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x4f, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x3c, 0x00, 0x18, 0x50, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0xf0, 0x4e, 0x01, 0x00, 0x2a, 0x00, + 0x00, 0x0a, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, 0x3c, 0x00, + 0x54, 0x50, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x05, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x3c, 0x00, 0x90, 0x50, 0x01, 0x00, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x06, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x07, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x08, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x09, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x50, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x0a, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x0b, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x0c, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x3c, 0x00, 0x08, 0x51, + 0x01, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, + 0x00, 0xdb, 0x0e, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, + 0x00, 0xdb, 0x48, 0x50, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x58, 0x50, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x68, 0x50, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x78, 0x50, 0x01, 0x00, 0x3c, 0x00, + 0x44, 0x51, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0x88, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0x98, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xa8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xb8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xc8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xd8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xe8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0x3c, 0x00, 0x80, 0x51, 0x01, 0x00, 0xf8, 0x50, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x08, 0x51, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x18, 0x51, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x40, 0x50, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x0a, 0xe8, 0x4e, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x4e, + 0x01, 0x00, 0x3c, 0x00, 0xbc, 0x51, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x28, 0x51, 0x01, 0x00, + 0x0e, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x51, + 0x01, 0x00, 0x98, 0x51, 0x01, 0x00, 0x0c, 0x00, + 0x00, 0x0a, 0x50, 0x4e, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x0a, 0xe0, 0x4c, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0x4b, 0x01, 0x00, 0x1d, 0x00, + 0x00, 0x0a, 0xf8, 0x51, 0x01, 0x00, 0x05, 0x00, + 0x00, 0x0a, 0x24, 0x80, 0x07, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1d, 0x80, 0x07, 0x00, 0x3c, 0x00, + 0x34, 0x52, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x2a, 0x80, 0x07, 0x00, 0x5c, 0x00, 0x00, 0x00, + 0x24, 0x80, 0x07, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x1d, 0x80, 0x07, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x2a, 0x80, 0x07, 0x00, 0x6a, 0x00, 0x00, 0x00, + 0x24, 0x80, 0x07, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x1d, 0x80, 0x07, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x2a, 0x80, 0x07, 0x00, 0x6a, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x52, 0x01, 0x00, 0x00, 0x01, + 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, + 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, + 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, + 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x01, 0x63, + 0x00, 0x00, 0xa1, 0x63, 0x00, 0x00, 0xc5, 0x63, + 0x00, 0x00, 0xb1, 0x62, 0x00, 0x00, 0xc5, 0x63, + 0x00, 0x00, 0x21, 0x63, 0x00, 0x00, 0x4d, 0x63, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x52, 0x01, 0x00, + 0xa1, 0x63, 0x00, 0x00, 0x01, 0x63, 0x00, 0x00, + 0xa1, 0x63, 0x00, 0x00, 0x06, 0x05, 0x05, 0x05, + 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, + 0x05, 0x05, 0x03, 0x05, 0x06, 0x07, 0x08, 0x09, + 0x0a, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x0f, 0x10, + 0x11, 0x00, 0x00, 0x00, 0xa5, 0xc6, 0x84, 0xf8, + 0x99, 0xee, 0x8d, 0xf6, 0x0d, 0xff, 0xbd, 0xd6, + 0xb1, 0xde, 0x54, 0x91, 0x3c, 0x00, 0xe8, 0x52, + 0x01, 0x00, 0x50, 0x60, 0x03, 0x02, 0xa9, 0xce, + 0x7d, 0x56, 0x19, 0xe7, 0x62, 0xb5, 0xe6, 0x4d, + 0x9a, 0xec, 0x45, 0x8f, 0x9d, 0x1f, 0x40, 0x89, + 0x87, 0xfa, 0x15, 0xef, 0xeb, 0xb2, 0xc9, 0x8e, + 0x0b, 0xfb, 0xec, 0x41, 0x67, 0xb3, 0xfd, 0x5f, + 0xea, 0x45, 0xbf, 0x23, 0xf7, 0x53, 0x96, 0xe4, + 0x5b, 0x9b, 0xc2, 0x75, 0x1c, 0xe1, 0xae, 0x3d, + 0x6a, 0x4c, 0x5a, 0x6c, 0x41, 0x7e, 0x3c, 0x00, + 0x24, 0x53, 0x01, 0x00, 0x02, 0xf5, 0x4f, 0x83, + 0x5c, 0x68, 0xf4, 0x51, 0x34, 0xd1, 0x08, 0xf9, + 0x93, 0xe2, 0x73, 0xab, 0x53, 0x62, 0x3f, 0x2a, + 0x0c, 0x08, 0x52, 0x95, 0x65, 0x46, 0x5e, 0x9d, + 0x28, 0x30, 0xa1, 0x37, 0x0f, 0x0a, 0xb5, 0x2f, + 0x09, 0x0e, 0x36, 0x24, 0x9b, 0x1b, 0x3d, 0xdf, + 0x26, 0xcd, 0x69, 0x4e, 0xcd, 0x7f, 0x9f, 0xea, + 0x1b, 0x12, 0x9e, 0x1d, 0x74, 0x58, 0x2e, 0x34, + 0x3c, 0x00, 0x60, 0x53, 0x01, 0x00, 0x2d, 0x36, + 0xb2, 0xdc, 0xee, 0xb4, 0xfb, 0x5b, 0xf6, 0xa4, + 0x4d, 0x76, 0x61, 0xb7, 0xce, 0x7d, 0x7b, 0x52, + 0x3e, 0xdd, 0x71, 0x5e, 0x97, 0x13, 0xf5, 0xa6, + 0x68, 0xb9, 0x00, 0x00, 0x2c, 0xc1, 0x60, 0x40, + 0x1f, 0xe3, 0xc8, 0x79, 0xed, 0xb6, 0xbe, 0xd4, + 0x46, 0x8d, 0xd9, 0x67, 0x4b, 0x72, 0xde, 0x94, + 0xd4, 0x98, 0xe8, 0xb0, 0x4a, 0x85, 0x6b, 0xbb, + 0x2a, 0xc5, 0x3c, 0x00, 0x9c, 0x53, 0x01, 0x00, + 0xe5, 0x4f, 0x16, 0xed, 0xc5, 0x86, 0xd7, 0x9a, + 0x55, 0x66, 0x94, 0x11, 0xcf, 0x8a, 0x10, 0xe9, + 0x06, 0x04, 0x81, 0xfe, 0xf0, 0xa0, 0x44, 0x78, + 0xba, 0x25, 0xe3, 0x4b, 0xf3, 0xa2, 0xfe, 0x5d, + 0xc0, 0x80, 0x8a, 0x05, 0xad, 0x3f, 0xbc, 0x21, + 0x48, 0x70, 0x04, 0xf1, 0xdf, 0x63, 0xc1, 0x77, + 0x75, 0xaf, 0x63, 0x42, 0x30, 0x20, 0x1a, 0xe5, + 0x0e, 0xfd, 0x6d, 0xbf, 0x3c, 0x00, 0xd8, 0x53, + 0x01, 0x00, 0x4c, 0x81, 0x14, 0x18, 0x35, 0x26, + 0x2f, 0xc3, 0xe1, 0xbe, 0xa2, 0x35, 0xcc, 0x88, + 0x39, 0x2e, 0x57, 0x93, 0xf2, 0x55, 0x82, 0xfc, + 0x47, 0x7a, 0xac, 0xc8, 0xe7, 0xba, 0x2b, 0x32, + 0x95, 0xe6, 0xa0, 0xc0, 0x98, 0x19, 0xd1, 0x9e, + 0x7f, 0xa3, 0x66, 0x44, 0x7e, 0x54, 0xab, 0x3b, + 0x83, 0x0b, 0xca, 0x8c, 0x29, 0xc7, 0xd3, 0x6b, + 0x3c, 0x28, 0x79, 0xa7, 0xe2, 0xbc, 0x3c, 0x00, + 0x14, 0x54, 0x01, 0x00, 0x1d, 0x16, 0x76, 0xad, + 0x3b, 0xdb, 0x56, 0x64, 0x4e, 0x74, 0x1e, 0x14, + 0xdb, 0x92, 0x0a, 0x0c, 0x6c, 0x48, 0xe4, 0xb8, + 0x5d, 0x9f, 0x6e, 0xbd, 0xef, 0x43, 0xa6, 0xc4, + 0xa8, 0x39, 0xa4, 0x31, 0x37, 0xd3, 0x8b, 0xf2, + 0x32, 0xd5, 0x43, 0x8b, 0x59, 0x6e, 0xb7, 0xda, + 0x8c, 0x01, 0x64, 0xb1, 0xd2, 0x9c, 0xe0, 0x49, + 0xb4, 0xd8, 0xfa, 0xac, 0x07, 0xf3, 0x25, 0xcf, + 0x3c, 0x00, 0x50, 0x54, 0x01, 0x00, 0xaf, 0xca, + 0x8e, 0xf4, 0xe9, 0x47, 0x18, 0x10, 0xd5, 0x6f, + 0x88, 0xf0, 0x6f, 0x4a, 0x72, 0x5c, 0x24, 0x38, + 0xf1, 0x57, 0xc7, 0x73, 0x51, 0x97, 0x23, 0xcb, + 0x7c, 0xa1, 0x9c, 0xe8, 0x21, 0x3e, 0xdd, 0x96, + 0xdc, 0x61, 0x86, 0x0d, 0x85, 0x0f, 0x90, 0xe0, + 0x42, 0x7c, 0xc4, 0x71, 0xaa, 0xcc, 0xd8, 0x90, + 0x05, 0x06, 0x01, 0xf7, 0x12, 0x1c, 0xa3, 0xc2, + 0x5f, 0x6a, 0x3c, 0x00, 0x8c, 0x54, 0x01, 0x00, + 0xf9, 0xae, 0xd0, 0x69, 0x91, 0x17, 0x58, 0x99, + 0x27, 0x3a, 0xb9, 0x27, 0x38, 0xd9, 0x13, 0xeb, + 0xb3, 0x2b, 0x33, 0x22, 0xbb, 0xd2, 0x70, 0xa9, + 0x89, 0x07, 0xa7, 0x33, 0xb6, 0x2d, 0x22, 0x3c, + 0x92, 0x15, 0x20, 0xc9, 0x49, 0x87, 0xff, 0xaa, + 0x78, 0x50, 0x7a, 0xa5, 0x8f, 0x03, 0xf8, 0x59, + 0x80, 0x09, 0x17, 0x1a, 0xda, 0x65, 0x31, 0xd7, + 0xc6, 0x84, 0xb8, 0xd0, 0x3c, 0x00, 0xc8, 0x54, + 0x01, 0x00, 0xc3, 0x82, 0xb0, 0x29, 0x77, 0x5a, + 0x11, 0x1e, 0xcb, 0x7b, 0xfc, 0xa8, 0xd6, 0x6d, + 0x3a, 0x2c, 0xc6, 0xa5, 0xf8, 0x84, 0xee, 0x99, + 0xf6, 0x8d, 0xff, 0x0d, 0xd6, 0xbd, 0xde, 0xb1, + 0x91, 0x54, 0x60, 0x50, 0x02, 0x03, 0xce, 0xa9, + 0x56, 0x7d, 0xe7, 0x19, 0xb5, 0x62, 0x4d, 0xe6, + 0xec, 0x9a, 0x8f, 0x45, 0x1f, 0x9d, 0x89, 0x40, + 0xfa, 0x87, 0xef, 0x15, 0xb2, 0xeb, 0x3c, 0x00, + 0x04, 0x55, 0x01, 0x00, 0x8e, 0xc9, 0xfb, 0x0b, + 0x41, 0xec, 0xb3, 0x67, 0x5f, 0xfd, 0x45, 0xea, + 0x23, 0xbf, 0x53, 0xf7, 0xe4, 0x96, 0x9b, 0x5b, + 0x75, 0xc2, 0xe1, 0x1c, 0x3d, 0xae, 0x4c, 0x6a, + 0x6c, 0x5a, 0x7e, 0x41, 0xf5, 0x02, 0x83, 0x4f, + 0x68, 0x5c, 0x51, 0xf4, 0xd1, 0x34, 0xf9, 0x08, + 0xe2, 0x93, 0xab, 0x73, 0x62, 0x53, 0x2a, 0x3f, + 0x08, 0x0c, 0x95, 0x52, 0x46, 0x65, 0x9d, 0x5e, + 0x3c, 0x00, 0x40, 0x55, 0x01, 0x00, 0x30, 0x28, + 0x37, 0xa1, 0x0a, 0x0f, 0x2f, 0xb5, 0x0e, 0x09, + 0x24, 0x36, 0x1b, 0x9b, 0xdf, 0x3d, 0xcd, 0x26, + 0x4e, 0x69, 0x7f, 0xcd, 0xea, 0x9f, 0x12, 0x1b, + 0x1d, 0x9e, 0x58, 0x74, 0x34, 0x2e, 0x36, 0x2d, + 0xdc, 0xb2, 0xb4, 0xee, 0x5b, 0xfb, 0xa4, 0xf6, + 0x76, 0x4d, 0xb7, 0x61, 0x7d, 0xce, 0x52, 0x7b, + 0xdd, 0x3e, 0x5e, 0x71, 0x13, 0x97, 0xa6, 0xf5, + 0xb9, 0x68, 0x3c, 0x00, 0x7c, 0x55, 0x01, 0x00, + 0x00, 0x00, 0xc1, 0x2c, 0x40, 0x60, 0xe3, 0x1f, + 0x79, 0xc8, 0xb6, 0xed, 0xd4, 0xbe, 0x8d, 0x46, + 0x67, 0xd9, 0x72, 0x4b, 0x94, 0xde, 0x98, 0xd4, + 0xb0, 0xe8, 0x85, 0x4a, 0xbb, 0x6b, 0xc5, 0x2a, + 0x4f, 0xe5, 0xed, 0x16, 0x86, 0xc5, 0x9a, 0xd7, + 0x66, 0x55, 0x11, 0x94, 0x8a, 0xcf, 0xe9, 0x10, + 0x04, 0x06, 0xfe, 0x81, 0xa0, 0xf0, 0x78, 0x44, + 0x25, 0xba, 0x4b, 0xe3, 0x3c, 0x00, 0xb8, 0x55, + 0x01, 0x00, 0xa2, 0xf3, 0x5d, 0xfe, 0x80, 0xc0, + 0x05, 0x8a, 0x3f, 0xad, 0x21, 0xbc, 0x70, 0x48, + 0xf1, 0x04, 0x63, 0xdf, 0x77, 0xc1, 0xaf, 0x75, + 0x42, 0x63, 0x20, 0x30, 0xe5, 0x1a, 0xfd, 0x0e, + 0xbf, 0x6d, 0x81, 0x4c, 0x18, 0x14, 0x26, 0x35, + 0xc3, 0x2f, 0xbe, 0xe1, 0x35, 0xa2, 0x88, 0xcc, + 0x2e, 0x39, 0x93, 0x57, 0x55, 0xf2, 0xfc, 0x82, + 0x7a, 0x47, 0xc8, 0xac, 0xba, 0xe7, 0x3c, 0x00, + 0xf4, 0x55, 0x01, 0x00, 0x32, 0x2b, 0xe6, 0x95, + 0xc0, 0xa0, 0x19, 0x98, 0x9e, 0xd1, 0xa3, 0x7f, + 0x44, 0x66, 0x54, 0x7e, 0x3b, 0xab, 0x0b, 0x83, + 0x8c, 0xca, 0xc7, 0x29, 0x6b, 0xd3, 0x28, 0x3c, + 0xa7, 0x79, 0xbc, 0xe2, 0x16, 0x1d, 0xad, 0x76, + 0xdb, 0x3b, 0x64, 0x56, 0x74, 0x4e, 0x14, 0x1e, + 0x92, 0xdb, 0x0c, 0x0a, 0x48, 0x6c, 0xb8, 0xe4, + 0x9f, 0x5d, 0xbd, 0x6e, 0x43, 0xef, 0xc4, 0xa6, + 0x3c, 0x00, 0x30, 0x56, 0x01, 0x00, 0x39, 0xa8, + 0x31, 0xa4, 0xd3, 0x37, 0xf2, 0x8b, 0xd5, 0x32, + 0x8b, 0x43, 0x6e, 0x59, 0xda, 0xb7, 0x01, 0x8c, + 0xb1, 0x64, 0x9c, 0xd2, 0x49, 0xe0, 0xd8, 0xb4, + 0xac, 0xfa, 0xf3, 0x07, 0xcf, 0x25, 0xca, 0xaf, + 0xf4, 0x8e, 0x47, 0xe9, 0x10, 0x18, 0x6f, 0xd5, + 0xf0, 0x88, 0x4a, 0x6f, 0x5c, 0x72, 0x38, 0x24, + 0x57, 0xf1, 0x73, 0xc7, 0x97, 0x51, 0xcb, 0x23, + 0xa1, 0x7c, 0x3c, 0x00, 0x6c, 0x56, 0x01, 0x00, + 0xe8, 0x9c, 0x3e, 0x21, 0x96, 0xdd, 0x61, 0xdc, + 0x0d, 0x86, 0x0f, 0x85, 0xe0, 0x90, 0x7c, 0x42, + 0x71, 0xc4, 0xcc, 0xaa, 0x90, 0xd8, 0x06, 0x05, + 0xf7, 0x01, 0x1c, 0x12, 0xc2, 0xa3, 0x6a, 0x5f, + 0xae, 0xf9, 0x69, 0xd0, 0x17, 0x91, 0x99, 0x58, + 0x3a, 0x27, 0x27, 0xb9, 0xd9, 0x38, 0xeb, 0x13, + 0x2b, 0xb3, 0x22, 0x33, 0xd2, 0xbb, 0xa9, 0x70, + 0x07, 0x89, 0x33, 0xa7, 0x3c, 0x00, 0xa8, 0x56, + 0x01, 0x00, 0x2d, 0xb6, 0x3c, 0x22, 0x15, 0x92, + 0xc9, 0x20, 0x87, 0x49, 0xaa, 0xff, 0x50, 0x78, + 0xa5, 0x7a, 0x03, 0x8f, 0x59, 0xf8, 0x09, 0x80, + 0x1a, 0x17, 0x65, 0xda, 0xd7, 0x31, 0x84, 0xc6, + 0xd0, 0xb8, 0x82, 0xc3, 0x29, 0xb0, 0x5a, 0x77, + 0x1e, 0x11, 0x7b, 0xcb, 0xa8, 0xfc, 0x6d, 0xd6, + 0x2c, 0x3a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x56, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x72, 0x65, 0x71, 0x45, 0x72, 0x72, 0x52, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x57, 0x01, 0x00, 0xc4, 0x8e, + 0x01, 0x00, 0x24, 0x9a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x24, 0x9a, + 0x01, 0x00, 0xa4, 0xb2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0xa4, 0xb2, + 0x01, 0x00, 0x14, 0xc8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x10, 0x20, + 0x30, 0x40, 0x50, 0xbb, 0x30, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x57, 0x01, 0x00, + 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x22, + 0x24, 0x26, 0x28, 0x2a, 0x2b, 0x2c, 0x01, 0x00, + 0x70, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x0d, 0x25, 0x00, 0x00, 0x41, 0x3f, 0x01, 0x00, + 0x65, 0x29, 0x01, 0x00, 0x0d, 0x25, 0x00, 0x00, + 0xf5, 0x5e, 0x00, 0x00, 0x41, 0x3f, 0x01, 0x00, + 0x41, 0x3f, 0x01, 0x00, 0x02, 0x04, 0x0b, 0x0c, + 0x12, 0x16, 0x18, 0x24, 0x3c, 0x00, 0x98, 0x57, + 0x01, 0x00, 0x30, 0x48, 0x60, 0x6c, 0x01, 0x00, + 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x02, 0x10, 0x12, 0x11, 0x00, + 0x00, 0x01, 0x18, 0x00, 0x00, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x57, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xe0, 0x93, 0x04, 0x00, + 0x40, 0x42, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, + 0xdf, 0x40, 0xcf, 0xfd, 0x00, 0x40, 0x83, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x58, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x00, 0x80, 0x81, 0x00, 0x00, + 0x80, 0x00, 0xbf, 0xff, 0x7f, 0x7e, 0x01, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x6f, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x58, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x78, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xb8, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf8, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x71, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x78, 0x71, 0x01, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x90, 0x71, 0x01, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x58, + 0x01, 0x00, 0xa8, 0x71, 0x01, 0x00, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x05, 0x0a, 0x01, 0x06, 0x0b, + 0x02, 0x07, 0x0c, 0x03, 0x08, 0x0d, 0x04, 0x09, + 0x00, 0x00, 0x03, 0x03, 0x01, 0x01, 0x00, 0x04, + 0x00, 0x04, 0x04, 0x06, 0x16, 0x1e, 0x1f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xff, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0xc4, 0x58, 0x01, 0x00, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, + 0x61, 0x8b, 0x4a, 0x00, 0x61, 0x8f, 0x4a, 0x00, + 0x61, 0x8b, 0x4a, 0x00, 0x05, 0xe3, 0xc0, 0x00, + 0x05, 0xcb, 0xc0, 0x00, 0x05, 0xbb, 0xc0, 0x00, + 0x85, 0xba, 0xc0, 0x00, 0x85, 0xa2, 0xc0, 0x00, + 0x85, 0x92, 0xc0, 0x00, 0x85, 0x8a, 0xc0, 0x00, + 0x85, 0x7a, 0xc0, 0x00, 0x45, 0x89, 0xc0, 0x00, + 0x3c, 0x00, 0x00, 0x59, 0x01, 0x00, 0x45, 0x71, + 0xc0, 0x00, 0x45, 0x69, 0xc0, 0x00, 0x45, 0x61, + 0xc0, 0x00, 0x45, 0x59, 0xc0, 0x00, 0x45, 0x51, + 0xc0, 0x00, 0x45, 0x49, 0xc0, 0x00, 0x45, 0x41, + 0xc0, 0x00, 0x45, 0x39, 0xc0, 0x00, 0x45, 0x31, + 0xc0, 0x00, 0x45, 0x29, 0xc0, 0x00, 0x45, 0x21, + 0xc0, 0x00, 0x60, 0x2d, 0x06, 0x00, 0x60, 0x2d, + 0x06, 0x00, 0x60, 0x2d, 0x06, 0x00, 0x60, 0x2d, + 0x06, 0x00, 0x3c, 0x00, 0x3c, 0x59, 0x01, 0x00, + 0x60, 0x2d, 0x06, 0x00, 0x60, 0x28, 0x06, 0x00, + 0x50, 0x26, 0x06, 0x00, 0x50, 0x21, 0x06, 0x00, + 0x50, 0x1f, 0x06, 0x00, 0x50, 0x1c, 0x06, 0x00, + 0x50, 0x1a, 0x06, 0x00, 0x50, 0x18, 0x06, 0x00, + 0x50, 0x16, 0x06, 0x00, 0x50, 0x14, 0x06, 0x00, + 0x50, 0x12, 0x06, 0x00, 0x50, 0x10, 0x06, 0x00, + 0x50, 0x0e, 0x06, 0x00, 0x50, 0x0c, 0x06, 0x00, + 0x50, 0x0a, 0x06, 0x00, 0x3c, 0x00, 0x78, 0x59, + 0x01, 0x00, 0x2b, 0x0b, 0x06, 0x00, 0x1d, 0x75, + 0xc0, 0x00, 0x1d, 0x75, 0xc0, 0x00, 0x1d, 0x75, + 0xc0, 0x00, 0x1d, 0x75, 0xc0, 0x00, 0x1d, 0x75, + 0xc0, 0x00, 0x1d, 0x75, 0xc0, 0x00, 0x1d, 0x6d, + 0xc0, 0x00, 0xdd, 0x5b, 0xc0, 0x00, 0xdd, 0x4b, + 0xc0, 0x00, 0xdd, 0x43, 0xc0, 0x00, 0xdd, 0x3b, + 0xc0, 0x00, 0xdd, 0x33, 0xc0, 0x00, 0xdd, 0x2b, + 0xc0, 0x00, 0xdd, 0x23, 0xc0, 0x00, 0x3c, 0x00, + 0xb4, 0x59, 0x01, 0x00, 0xdd, 0x1b, 0xc0, 0x00, + 0xdd, 0x13, 0xc0, 0x00, 0xdd, 0x13, 0xc0, 0x00, + 0xdd, 0x13, 0xc0, 0x00, 0xdd, 0x13, 0xc0, 0x00, + 0xdd, 0x13, 0xc0, 0x00, 0x05, 0x05, 0x05, 0x04, + 0x04, 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x05, 0x05, 0x05, 0x04, 0x04, 0x03, + 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x88, 0x13, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x59, 0x01, 0x00, 0x07, 0x00, + 0x00, 0x00, 0x80, 0x00, 0x5b, 0x00, 0x40, 0x02, + 0xe0, 0xfd, 0xf2, 0x00, 0xb8, 0xfc, 0xa4, 0x01, + 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, + 0x00, 0x00, 0x03, 0x0b, 0x9f, 0x5f, 0x07, 0x01, + 0x2a, 0x04, 0x21, 0x04, 0x17, 0x04, 0x0e, 0x04, + 0x04, 0x04, 0xfb, 0x03, 0xf1, 0x03, 0xe8, 0x03, + 0xc9, 0x03, 0xaa, 0x03, 0x8a, 0x03, 0x6b, 0x03, + 0x4c, 0x03, 0x3c, 0x00, 0x2c, 0x5a, 0x01, 0x00, + 0x2d, 0x03, 0x0e, 0x03, 0xee, 0x02, 0xec, 0x02, + 0x01, 0x03, 0x16, 0x03, 0x2b, 0x03, 0x40, 0x03, + 0x55, 0x03, 0x6a, 0x03, 0x7f, 0x03, 0x94, 0x03, + 0xa9, 0x03, 0xbe, 0x03, 0xd3, 0x03, 0xe8, 0x03, + 0xbe, 0x03, 0x94, 0x03, 0x6a, 0x03, 0x00, 0x02, + 0x04, 0x06, 0x07, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, + 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x00, 0x03, 0x3c, 0x00, 0x68, 0x5a, + 0x01, 0x00, 0x05, 0x08, 0x0b, 0x0e, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x5a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x5a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x5b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x5b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x5b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x5b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x5c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x5c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x5c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x5c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x5c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x5d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x5d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x5d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x5d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x5e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x5e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x5e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x5e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x5f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x5f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x5f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x5f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x60, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x60, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x60, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x60, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x60, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x61, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x61, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x61, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x62, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x62, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x62, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x62, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x63, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x63, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x63, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x63, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0x64, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x64, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0x64, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x64, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x64, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x65, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x65, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x65, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x65, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x66, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x66, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x66, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x66, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x67, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0x67, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x67, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0x67, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x68, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x68, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0x68, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0x68, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x68, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0x69, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x69, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x69, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x69, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x6a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x6a, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x6a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x6a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x6b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x6b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x6b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x6b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x6b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x6c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x6c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x6c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x6c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x6d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x6d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x6d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x6d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x6e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x6e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x6e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x6e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x6f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x6f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x6f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x70, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x70, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x70, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x71, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x71, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x71, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x71, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x72, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x72, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x72, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x72, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0x73, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x73, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0x73, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x73, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x73, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x74, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x74, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x74, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x74, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x75, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x75, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x75, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x75, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x76, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0x76, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x76, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0x76, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x77, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x77, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0x77, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0x77, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x77, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0x78, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x78, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x78, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x78, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x79, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x79, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x79, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x79, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x7a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x7a, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x7a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x7a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x7a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x7b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x7b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x7b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x7b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x7c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x7c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x7c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x7c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x7d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x7d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x7d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x7d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x7e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x7e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x7e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x7e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x7e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x7f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x7f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x7f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x7f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x70, 0xb5, 0x01, 0x25, 0x07, 0x4e, + 0xad, 0x03, 0x75, 0x61, 0x0a, 0x20, 0xfa, 0xf7, + 0x6c, 0xff, 0x30, 0x68, 0x80, 0x03, 0xc4, 0x0f, + 0xb5, 0x61, 0x0a, 0x20, 0xfa, 0xf7, 0x65, 0xff, + 0x20, 0x1c, 0x70, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x80, 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x70, 0xb5, 0x01, 0x25, 0x6d, 0x04, 0x00, 0x28, + 0x10, 0x4c, 0x01, 0xd0, 0x65, 0x61, 0x00, 0xe0, + 0xa5, 0x61, 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, + 0xa0, 0x68, 0x28, 0x43, 0xa0, 0x60, 0x0a, 0x20, + 0xfa, 0xf7, 0x4e, 0xff, 0x01, 0x26, 0xb6, 0x03, + 0x66, 0x61, 0x0a, 0x20, 0xfa, 0xf7, 0x48, 0xff, + 0xa6, 0x61, 0x01, 0x20, 0xfa, 0xf7, 0x44, 0xff, + 0x3c, 0x00, 0x60, 0x80, 0x01, 0x00, 0xa0, 0x68, + 0xa8, 0x43, 0xa0, 0x60, 0x60, 0x68, 0x28, 0x43, + 0x60, 0x60, 0x0a, 0x20, 0xfa, 0xf7, 0x3b, 0xff, + 0x70, 0xbd, 0x10, 0x00, 0x07, 0x00, 0x70, 0xb5, + 0x01, 0x25, 0x10, 0x4c, 0x6d, 0x04, 0x65, 0x61, + 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, 0xa0, 0x68, + 0x28, 0x43, 0xa0, 0x60, 0xee, 0x08, 0xa6, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0x28, 0xff, 0x66, 0x61, + 0x0a, 0x20, 0x3c, 0x00, 0x9c, 0x80, 0x01, 0x00, + 0xfa, 0xf7, 0x24, 0xff, 0xa5, 0x61, 0x0a, 0x20, + 0xfa, 0xf7, 0x20, 0xff, 0xa6, 0x61, 0x0a, 0x20, + 0xfa, 0xf7, 0x1c, 0xff, 0xa0, 0x68, 0xa8, 0x43, + 0xa0, 0x60, 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, + 0x70, 0xbd, 0x00, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x70, 0xb5, 0x01, 0x25, 0x0e, 0x4c, 0x6d, 0x04, + 0xa5, 0x61, 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, + 0xa0, 0x68, 0x28, 0x43, 0x3c, 0x00, 0xd8, 0x80, + 0x01, 0x00, 0xa0, 0x60, 0xee, 0x08, 0x66, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0x02, 0xff, 0x65, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0xfe, 0xfe, 0xa6, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0xfa, 0xfe, 0xa0, 0x68, + 0xa8, 0x43, 0xa0, 0x60, 0x60, 0x68, 0x28, 0x43, + 0x60, 0x60, 0x70, 0xbd, 0x00, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x70, 0xb5, 0x05, 0x1c, 0x00, 0x24, + 0x80, 0x26, 0x28, 0x1c, 0x30, 0x40, 0x3c, 0x00, + 0x14, 0x81, 0x01, 0x00, 0xff, 0xf7, 0x88, 0xff, + 0x68, 0x06, 0x05, 0x0e, 0x01, 0x34, 0x08, 0x2c, + 0xf6, 0xdb, 0xff, 0xf7, 0x6d, 0xff, 0x70, 0xbd, + 0x80, 0xb5, 0x02, 0x1c, 0x0b, 0x21, 0x80, 0x20, + 0xfb, 0xf7, 0x3e, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0xf8, 0xb5, 0x12, 0x48, 0x00, 0x25, 0x07, 0x1c, + 0xff, 0x37, 0x06, 0x1d, 0x01, 0x37, 0x28, 0x1c, + 0xf9, 0xf7, 0xea, 0xfd, 0x04, 0x1c, 0x17, 0xd0, + 0x3c, 0x00, 0x50, 0x81, 0x01, 0x00, 0x20, 0x69, + 0x00, 0x28, 0x04, 0xd0, 0xe0, 0x6a, 0x00, 0x28, + 0x03, 0xd0, 0x00, 0x20, 0xe0, 0x62, 0x25, 0x1c, + 0xf0, 0xe7, 0x7b, 0x68, 0x00, 0x2b, 0x05, 0xd0, + 0x32, 0x1c, 0x21, 0x1c, 0x44, 0x31, 0x01, 0x20, + 0xe8, 0xf7, 0x34, 0xf9, 0x20, 0x1c, 0x44, 0x30, + 0xf9, 0xf7, 0x37, 0xfe, 0xe2, 0xe7, 0xf8, 0xbd, + 0x00, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x11, 0x48, + 0x70, 0xb5, 0x3c, 0x00, 0x8c, 0x81, 0x01, 0x00, + 0x00, 0x68, 0xff, 0x28, 0x1d, 0xd1, 0xff, 0x20, + 0x32, 0x30, 0xfa, 0xf7, 0xa7, 0xfe, 0x0e, 0x4d, + 0x6c, 0x68, 0x0e, 0x48, 0xfa, 0xf7, 0xa2, 0xfe, + 0x68, 0x68, 0x24, 0x1a, 0x01, 0x20, 0x00, 0xf0, + 0x95, 0xfd, 0x6e, 0x68, 0x09, 0x48, 0xfa, 0xf7, + 0x99, 0xfe, 0x68, 0x68, 0x21, 0x1c, 0x0a, 0x39, + 0x30, 0x1a, 0x88, 0x42, 0x02, 0xd3, 0x0a, 0x34, + 0xa0, 0x42, 0x02, 0xd9, 0x3c, 0x00, 0xc8, 0x81, + 0x01, 0x00, 0x00, 0x20, 0x00, 0xf0, 0x85, 0xfd, + 0x70, 0xbd, 0xf4, 0x74, 0x01, 0x00, 0x00, 0x03, + 0x07, 0x00, 0x93, 0x03, 0x00, 0x00, 0x70, 0xb5, + 0x00, 0xf0, 0x4d, 0xf8, 0x01, 0x20, 0xed, 0xf7, + 0x34, 0xf9, 0x11, 0x4d, 0x18, 0x21, 0x68, 0x60, + 0x00, 0x20, 0xe9, 0xf7, 0xf2, 0xf9, 0x28, 0x60, + 0x04, 0x68, 0x80, 0x20, 0x20, 0x80, 0x00, 0x26, + 0x06, 0x22, 0xff, 0x21, 0x20, 0x1d, 0x3c, 0x00, + 0x04, 0x82, 0x01, 0x00, 0x66, 0x80, 0xe8, 0xf7, + 0x0b, 0xfa, 0x20, 0x1c, 0x0a, 0x30, 0x09, 0x49, + 0xf2, 0xf7, 0x2e, 0xfd, 0x20, 0x1c, 0x10, 0x30, + 0x07, 0x49, 0xf2, 0xf7, 0x29, 0xfd, 0xe6, 0x82, + 0x03, 0xcd, 0xe9, 0xf7, 0xf9, 0xf8, 0x02, 0x49, + 0x01, 0x20, 0x14, 0x39, 0x88, 0x60, 0x70, 0xbd, + 0x90, 0xd9, 0x01, 0x00, 0x12, 0x61, 0x01, 0x00, + 0x24, 0xf7, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x82, 0x01, 0x00, 0x10, 0xb5, + 0x06, 0x4c, 0x00, 0x22, 0x02, 0x20, 0xe1, 0x68, + 0xf0, 0xf7, 0x11, 0xfb, 0x60, 0x78, 0x02, 0x28, + 0x01, 0xd1, 0x00, 0xf0, 0x1a, 0xf9, 0x10, 0xbd, + 0x00, 0x00, 0x40, 0xd9, 0x01, 0x00, 0x80, 0xb5, + 0xa1, 0x20, 0xff, 0xf7, 0x50, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x40, 0x00, 0x0e, 0x21, 0x08, 0x40, + 0x80, 0xb5, 0xa0, 0x30, 0xff, 0xf7, 0x47, 0xff, + 0x80, 0xbd, 0x3c, 0x00, 0x7c, 0x82, 0x01, 0x00, + 0x10, 0xb5, 0x05, 0x4c, 0x20, 0x68, 0x00, 0x28, + 0x04, 0xd0, 0xe9, 0xf7, 0x87, 0xf9, 0x00, 0x20, + 0x20, 0x60, 0x60, 0x60, 0x10, 0xbd, 0x00, 0x00, + 0x90, 0xd9, 0x01, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0x01, 0x21, 0x07, 0x4a, 0x21, 0x61, 0x02, 0x20, + 0x10, 0x70, 0x61, 0x61, 0x00, 0xf0, 0xd6, 0xfc, + 0x00, 0xf0, 0xc8, 0xfb, 0x20, 0x1c, 0xed, 0xf7, + 0x9f, 0xfa, 0x10, 0xbd, 0x3c, 0x00, 0xb8, 0x82, + 0x01, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x7c, 0xd9, + 0x01, 0x00, 0x70, 0xb5, 0x02, 0x1c, 0x08, 0x1c, + 0x02, 0x25, 0x00, 0x2a, 0x13, 0x4e, 0x14, 0xd0, + 0x00, 0xf0, 0x11, 0xfc, 0x30, 0x78, 0x01, 0x21, + 0x08, 0x43, 0x30, 0x70, 0x30, 0x78, 0x28, 0x43, + 0x30, 0x70, 0x00, 0x20, 0x7d, 0x21, 0x49, 0x01, + 0xb2, 0x79, 0x92, 0x07, 0x00, 0xd5, 0x01, 0x34, + 0x01, 0x30, 0x88, 0x42, 0xf8, 0xdb, 0x3c, 0x00, + 0xf4, 0x82, 0x01, 0x00, 0x20, 0x1c, 0x70, 0xbd, + 0x30, 0x78, 0xa8, 0x43, 0x30, 0x70, 0x30, 0x78, + 0x40, 0x08, 0x40, 0x00, 0x30, 0x70, 0x05, 0x49, + 0x48, 0x68, 0x01, 0x22, 0x12, 0x04, 0x90, 0x43, + 0x48, 0x60, 0x01, 0x20, 0x70, 0xbd, 0x00, 0x00, + 0x88, 0x00, 0x07, 0x00, 0x6c, 0x00, 0x07, 0x00, + 0xff, 0xb5, 0x09, 0xae, 0x00, 0x20, 0x60, 0xce, + 0x28, 0x60, 0x00, 0x23, 0x9c, 0x46, 0x30, 0x60, + 0x3c, 0x00, 0x30, 0x83, 0x01, 0x00, 0x69, 0x46, + 0x01, 0xaa, 0x17, 0xe0, 0xdb, 0x07, 0x0e, 0xd5, + 0x12, 0x4b, 0x1c, 0x56, 0x63, 0x1c, 0x0a, 0xd0, + 0x01, 0x27, 0x2b, 0x68, 0xa7, 0x40, 0x3b, 0x43, + 0x2b, 0x60, 0x13, 0x68, 0xdb, 0x07, 0x02, 0xd5, + 0x33, 0x68, 0x3b, 0x43, 0x33, 0x60, 0x0b, 0x68, + 0x5b, 0x08, 0x0b, 0x60, 0x13, 0x68, 0x5b, 0x08, + 0x13, 0x60, 0x01, 0x30, 0x0b, 0x68, 0x00, 0x2b, + 0x01, 0xd0, 0x3c, 0x00, 0x6c, 0x83, 0x01, 0x00, + 0x22, 0x28, 0xe2, 0xd3, 0x63, 0x46, 0x01, 0x33, + 0x20, 0x20, 0x02, 0x2b, 0x9c, 0x46, 0x02, 0xa9, + 0x03, 0xaa, 0xf2, 0xdb, 0xff, 0xbd, 0x00, 0x00, + 0xb4, 0x8d, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0d, 0x1c, 0x1e, 0x21, 0x00, 0x22, 0x03, 0x20, + 0x05, 0x4b, 0xf9, 0xf7, 0xb3, 0xf8, 0x21, 0x1c, + 0x03, 0x20, 0xf9, 0xf7, 0xf5, 0xf8, 0x29, 0x1c, + 0x03, 0x20, 0xf9, 0xf7, 0x3c, 0x00, 0xa8, 0x83, + 0x01, 0x00, 0xf1, 0xf8, 0xb0, 0xbd, 0x80, 0x38, + 0x01, 0x00, 0xb0, 0xb5, 0x1c, 0x4c, 0x1c, 0x4d, + 0x21, 0x78, 0x02, 0x29, 0x09, 0xd0, 0x03, 0x29, + 0x19, 0xd0, 0x04, 0x29, 0x1f, 0xd0, 0x05, 0x29, + 0x23, 0xd1, 0x00, 0x20, 0x00, 0xf0, 0x17, 0xfb, + 0x23, 0xe0, 0x68, 0x61, 0x14, 0x48, 0x1c, 0x30, + 0xc1, 0x68, 0x02, 0x69, 0x89, 0x18, 0xc1, 0x60, + 0x00, 0xf0, 0x2f, 0xfb, 0xe0, 0x68, 0x3c, 0x00, + 0xe4, 0x83, 0x01, 0x00, 0x01, 0x38, 0xe0, 0x60, + 0x16, 0xd1, 0x32, 0x20, 0xe0, 0x60, 0xff, 0xf7, + 0xa3, 0xfe, 0x11, 0xe0, 0x00, 0x20, 0x00, 0xf0, + 0x01, 0xfb, 0x00, 0xf0, 0x2d, 0xfc, 0x01, 0x20, + 0x20, 0x70, 0x09, 0xe0, 0x00, 0x20, 0x00, 0xf0, + 0xf9, 0xfa, 0xff, 0xf7, 0x45, 0xff, 0x03, 0xe0, + 0x05, 0x21, 0x0b, 0x20, 0xe8, 0xf7, 0x46, 0xff, + 0x68, 0x69, 0x61, 0x68, 0xe7, 0xf7, 0xdd, 0xff, + 0x3c, 0x00, 0x20, 0x84, 0x01, 0x00, 0xb0, 0xbd, + 0x00, 0x00, 0x7c, 0xd9, 0x01, 0x00, 0x20, 0xf7, + 0x01, 0x00, 0xf7, 0xb5, 0x04, 0x1c, 0x17, 0x1c, + 0xff, 0xf7, 0x21, 0xfe, 0x20, 0x0a, 0xff, 0xf7, + 0x18, 0xff, 0x20, 0x06, 0x00, 0x0e, 0xff, 0xf7, + 0x62, 0xfe, 0xff, 0xf7, 0x18, 0xfe, 0xa1, 0x20, + 0xff, 0xf7, 0x5d, 0xfe, 0x00, 0x25, 0x16, 0xe0, + 0x00, 0x20, 0x00, 0x24, 0x40, 0x06, 0x06, 0x0e, + 0xff, 0xf7, 0x3c, 0x00, 0x5c, 0x84, 0x01, 0x00, + 0xd1, 0xfd, 0x00, 0x06, 0x00, 0x0e, 0x30, 0x43, + 0x01, 0x34, 0x08, 0x2c, 0xf5, 0xdb, 0x29, 0x1c, + 0x01, 0x9a, 0x01, 0x35, 0xbd, 0x42, 0x50, 0x54, + 0x01, 0xda, 0x00, 0x20, 0x00, 0xe0, 0x01, 0x20, + 0xff, 0xf7, 0xd4, 0xfd, 0xbd, 0x42, 0xe6, 0xdb, + 0xff, 0xf7, 0x1e, 0xfe, 0xfe, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0xff, 0xf7, 0x19, 0xfe, 0x09, 0x21, + 0x89, 0x03, 0x00, 0x22, 0x3c, 0x00, 0x98, 0x84, + 0x01, 0x00, 0x02, 0x20, 0xf0, 0xf7, 0xe9, 0xf9, + 0x80, 0xbd, 0x09, 0x21, 0x89, 0x03, 0x80, 0xb5, + 0x00, 0x22, 0x02, 0x20, 0xf0, 0xf7, 0xc9, 0xf9, + 0x01, 0x21, 0x09, 0x48, 0x89, 0x03, 0x81, 0x61, + 0x42, 0x68, 0x0a, 0x43, 0x42, 0x60, 0x82, 0x68, + 0x11, 0x43, 0x81, 0x60, 0x01, 0x21, 0x49, 0x04, + 0x81, 0x61, 0x82, 0x68, 0x8a, 0x43, 0x82, 0x60, + 0x42, 0x68, 0x11, 0x43, 0x41, 0x60, 0x3c, 0x00, + 0xd4, 0x84, 0x01, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0xf0, 0xb5, 0x04, 0x1c, + 0xc0, 0x68, 0x7b, 0x4e, 0x05, 0x68, 0x30, 0x78, + 0x85, 0xb0, 0x01, 0x28, 0x01, 0xd0, 0x02, 0x28, + 0x72, 0xd1, 0x00, 0x21, 0x20, 0x69, 0xf2, 0xf7, + 0x41, 0xf9, 0x76, 0x49, 0xf2, 0xf7, 0x24, 0xfc, + 0x00, 0x28, 0x69, 0xd0, 0x20, 0x1c, 0x20, 0x30, + 0x41, 0x7a, 0x08, 0x29, 0x02, 0xd1, 0x72, 0x4a, + 0x3c, 0x00, 0x10, 0x85, 0x01, 0x00, 0x00, 0x21, + 0x51, 0x61, 0x00, 0x7a, 0x22, 0x6a, 0x18, 0x21, + 0xf2, 0xf7, 0xc9, 0xfb, 0xe1, 0x6a, 0x37, 0x1c, + 0x40, 0x18, 0x6c, 0x49, 0x02, 0x90, 0x30, 0x78, + 0x0e, 0x1c, 0xff, 0x36, 0x0a, 0x1d, 0x01, 0x36, + 0x01, 0x28, 0x04, 0x92, 0x07, 0xd0, 0x65, 0x4a, + 0x02, 0x99, 0x1c, 0x32, 0x28, 0x1c, 0xed, 0xf7, + 0xe2, 0xfb, 0x00, 0x28, 0x6b, 0xd0, 0x32, 0x21, + 0x20, 0x69, 0x3c, 0x00, 0x4c, 0x85, 0x01, 0x00, + 0xf2, 0xf7, 0x16, 0xf9, 0x01, 0x90, 0x20, 0x69, + 0x01, 0x21, 0xf2, 0xf7, 0x11, 0xf9, 0x01, 0x1c, + 0x5e, 0x48, 0x01, 0x23, 0x01, 0x9a, 0xed, 0xf7, + 0x07, 0xfc, 0x00, 0x28, 0x04, 0xd1, 0x5b, 0x48, + 0xed, 0xf7, 0x92, 0xfa, 0x00, 0x21, 0xb9, 0x60, + 0x56, 0x48, 0x1c, 0x30, 0x81, 0x68, 0xea, 0xf7, + 0x19, 0xfc, 0x20, 0x1c, 0x14, 0x30, 0x03, 0x90, + 0x04, 0x99, 0xf2, 0xf7, 0x3c, 0x00, 0x88, 0x85, + 0x01, 0x00, 0xd5, 0xfb, 0x00, 0x28, 0x05, 0xd1, + 0x00, 0x22, 0xba, 0x60, 0x04, 0x98, 0x03, 0x99, + 0xf2, 0xf7, 0x6b, 0xfb, 0x4f, 0x49, 0x28, 0x89, + 0x09, 0x88, 0x88, 0x42, 0x03, 0xd0, 0x00, 0x22, + 0x4c, 0x49, 0xba, 0x60, 0x08, 0x80, 0x03, 0x21, + 0x20, 0x69, 0xf2, 0xf7, 0xe4, 0xf8, 0x00, 0x28, + 0x10, 0xd0, 0x46, 0x49, 0x82, 0x78, 0x20, 0x31, + 0x0b, 0x79, 0x94, 0x46, 0x9a, 0x42, 0x3c, 0x00, + 0xc4, 0x85, 0x01, 0x00, 0x09, 0xd0, 0x00, 0x22, + 0xba, 0x60, 0x62, 0x46, 0x0a, 0x71, 0x80, 0x78, + 0x01, 0x21, 0xf3, 0xf7, 0x05, 0xf9, 0x00, 0xe0, + 0x77, 0xe0, 0x06, 0x21, 0x20, 0x69, 0xf2, 0xf7, + 0xcd, 0xf8, 0x00, 0x28, 0x08, 0xd0, 0x81, 0x78, + 0x3a, 0x48, 0x40, 0x30, 0x82, 0x88, 0x91, 0x42, + 0x02, 0xd0, 0x00, 0x22, 0xba, 0x60, 0x81, 0x80, + 0x2a, 0x21, 0x20, 0x69, 0xf2, 0xf7, 0xbe, 0xf8, + 0x3c, 0x00, 0x00, 0x86, 0x01, 0x00, 0x00, 0x28, + 0x0d, 0xd0, 0x80, 0x78, 0xf1, 0x69, 0x33, 0x4a, + 0x81, 0x42, 0x08, 0xd0, 0x00, 0x21, 0xb9, 0x60, + 0xf0, 0x61, 0x10, 0x1c, 0xed, 0xf7, 0x09, 0xfb, + 0x2f, 0x48, 0xed, 0xf7, 0xfa, 0xfa, 0x38, 0x78, + 0x3b, 0x1c, 0x01, 0x28, 0x17, 0xd1, 0x02, 0x20, + 0x18, 0x70, 0x2a, 0x4f, 0x01, 0x23, 0x3b, 0x61, + 0x27, 0x4b, 0x03, 0xcd, 0x1c, 0x33, 0x08, 0x3d, + 0x02, 0x9a, 0x3c, 0x00, 0x3c, 0x86, 0x01, 0x00, + 0xed, 0xf7, 0xb0, 0xfa, 0x38, 0x1c, 0xed, 0xf7, + 0xd7, 0xf8, 0x32, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0x00, 0x21, 0x01, 0x20, 0xe7, 0xf7, 0xc4, 0xfe, + 0x00, 0xf0, 0xf4, 0xf9, 0x20, 0x1c, 0xf9, 0xf7, + 0xd5, 0xfb, 0x07, 0x1c, 0x11, 0xd1, 0x20, 0x1c, + 0xf9, 0xf7, 0x88, 0xfb, 0x07, 0x1c, 0x2e, 0xd0, + 0x01, 0x23, 0x3b, 0x61, 0x68, 0x89, 0x40, 0x21, + 0xc8, 0x53, 0x73, 0x68, 0x3c, 0x00, 0x78, 0x86, + 0x01, 0x00, 0x00, 0x2b, 0x04, 0xd0, 0x21, 0x1c, + 0x00, 0x20, 0x04, 0x9a, 0xe7, 0xf7, 0xac, 0xfe, + 0x01, 0x23, 0xfb, 0x62, 0x20, 0x69, 0x32, 0x21, + 0xf2, 0xf7, 0x75, 0xf8, 0x05, 0x1c, 0x20, 0x69, + 0x01, 0x21, 0xf2, 0xf7, 0x70, 0xf8, 0x0e, 0x4e, + 0x01, 0x1c, 0x2a, 0x1c, 0x30, 0x1c, 0xed, 0xf7, + 0xc0, 0xfb, 0x00, 0x28, 0x0e, 0xd1, 0x32, 0x21, + 0x20, 0x69, 0xf2, 0xf7, 0x64, 0xf8, 0x3c, 0x00, + 0xb4, 0x86, 0x01, 0x00, 0x05, 0x1c, 0x20, 0x69, + 0x01, 0x21, 0xf2, 0xf7, 0x5f, 0xf8, 0x01, 0x1c, + 0x3b, 0x1c, 0x2a, 0x1c, 0x30, 0x1c, 0xed, 0xf7, + 0xd7, 0xfa, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0x7c, 0xd9, 0x01, 0x00, 0x40, 0xf8, 0x01, 0x00, + 0x20, 0xf7, 0x01, 0x00, 0x02, 0x1c, 0x08, 0x1c, + 0x80, 0x2a, 0x80, 0xb5, 0x06, 0xd0, 0x81, 0x2a, + 0x03, 0xd0, 0x04, 0x21, 0x0b, 0x20, 0xe8, 0xf7, + 0x3c, 0x00, 0xf0, 0x86, 0x01, 0x00, 0xd9, 0xfd, + 0x80, 0xbd, 0xff, 0xf7, 0x5c, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x81, 0x78, 0xff, 0x29, + 0x01, 0xd0, 0x00, 0x79, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x80, 0xf8, 0x01, 0x00, 0x30, 0xb5, + 0x89, 0xb0, 0x00, 0x93, 0x0e, 0x4d, 0x13, 0x1c, + 0x04, 0x1c, 0x2a, 0x1c, 0xec, 0xf7, 0x25, 0xfd, + 0x01, 0xa9, 0x06, 0xa8, 0xa2, 0x68, 0xec, 0xf7, + 0xce, 0xfe, 0x3c, 0x00, 0x2c, 0x87, 0x01, 0x00, + 0x01, 0xaa, 0x06, 0xa9, 0x28, 0x1c, 0x63, 0x6a, + 0xed, 0xf7, 0x44, 0xfa, 0x04, 0x1c, 0x01, 0x28, + 0x04, 0xd1, 0x28, 0x1c, 0xed, 0xf7, 0x2c, 0xf8, + 0x00, 0xf0, 0x4a, 0xf8, 0x20, 0x1c, 0x09, 0xb0, + 0x30, 0xbd, 0x00, 0x00, 0x20, 0xf7, 0x01, 0x00, + 0x80, 0xb5, 0xed, 0xf7, 0x2b, 0xf8, 0x00, 0xf0, + 0x7d, 0xf8, 0x02, 0x48, 0xed, 0xf7, 0x02, 0xfa, + 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x87, + 0x01, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x28, 0x0b, 0xd1, 0x06, 0x48, 0xed, 0xf7, + 0xf8, 0xf9, 0x00, 0xf0, 0x6e, 0xf8, 0x01, 0x20, + 0xed, 0xf7, 0xeb, 0xfa, 0x03, 0x49, 0x03, 0x20, + 0xf9, 0xf7, 0x35, 0xfe, 0x80, 0xbd, 0x20, 0xf7, + 0x01, 0x00, 0x6d, 0x87, 0x01, 0x00, 0xb0, 0xb5, + 0x10, 0x4d, 0x04, 0x1c, 0x13, 0x1c, 0x2a, 0x1c, + 0x88, 0xb0, 0xec, 0xf7, 0x02, 0xfd, 0x3c, 0x00, + 0xa4, 0x87, 0x01, 0x00, 0x21, 0x1c, 0x0a, 0x31, + 0x06, 0x22, 0x28, 0x1d, 0xe7, 0xf7, 0xa4, 0xfe, + 0x69, 0x46, 0x05, 0xa8, 0x62, 0x69, 0xec, 0xf7, + 0x87, 0xfe, 0x28, 0x1c, 0xec, 0xf7, 0xee, 0xff, + 0x7f, 0x23, 0xdb, 0x43, 0x28, 0x1c, 0x6a, 0x46, + 0x05, 0xa9, 0xed, 0xf7, 0xf9, 0xf9, 0x00, 0xf0, + 0x1d, 0xf8, 0x08, 0xb0, 0xb0, 0xbd, 0x00, 0x00, + 0x20, 0xf7, 0x01, 0x00, 0x0a, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0xe0, 0x87, 0x01, 0x00, 0x01, 0x78, + 0x00, 0x29, 0x06, 0xd0, 0x02, 0x29, 0x01, 0xd0, + 0x05, 0x29, 0x07, 0xd1, 0x03, 0x21, 0x01, 0x70, + 0x80, 0xbd, 0x01, 0x21, 0x01, 0x70, 0x00, 0xf0, + 0x2e, 0xfa, 0x80, 0xbd, 0x03, 0x21, 0x0b, 0x20, + 0xe8, 0xf7, 0x4f, 0xfd, 0x80, 0xbd, 0x7c, 0xd9, + 0x01, 0x00, 0x09, 0x49, 0x80, 0xb5, 0x08, 0x78, + 0x00, 0x28, 0x06, 0xd0, 0x02, 0x28, 0x01, 0xd0, + 0x05, 0x28, 0x3c, 0x00, 0x1c, 0x88, 0x01, 0x00, + 0x05, 0xd1, 0x04, 0x20, 0x08, 0x70, 0x80, 0xbd, + 0xff, 0xf7, 0x38, 0xfd, 0x80, 0xbd, 0x02, 0x21, + 0x0b, 0x20, 0xe8, 0xf7, 0x39, 0xfd, 0x80, 0xbd, + 0x7c, 0xd9, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x0b, 0x20, 0x04, 0x4a, 0xfa, 0xf7, 0x82, 0xff, + 0xf6, 0xf7, 0x86, 0xfd, 0x02, 0x49, 0x08, 0x61, + 0x80, 0xbd, 0x00, 0x00, 0xdd, 0x86, 0x01, 0x00, + 0x7c, 0xd9, 0x01, 0x00, 0x3c, 0x00, 0x58, 0x88, + 0x01, 0x00, 0x0c, 0x48, 0x80, 0xb5, 0x01, 0x78, + 0x06, 0x29, 0x0e, 0xd2, 0x02, 0xa3, 0x5b, 0x5c, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x06, 0x03, + 0x07, 0x07, 0x07, 0x06, 0x00, 0x20, 0x00, 0xf0, + 0xc2, 0xf8, 0x80, 0xbd, 0x05, 0x21, 0x01, 0x70, + 0x80, 0xbd, 0x04, 0x21, 0x0b, 0x20, 0xe8, 0xf7, + 0x0e, 0xfd, 0x80, 0xbd, 0x00, 0x00, 0x7c, 0xd9, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x88, 0x01, 0x00, 0x10, 0xb5, 0x0d, 0x4b, + 0x04, 0x1c, 0x18, 0x1c, 0x10, 0x30, 0x00, 0x2c, + 0x08, 0xd0, 0xdb, 0x88, 0x5b, 0x04, 0x5b, 0x0c, + 0x0b, 0x80, 0x80, 0x7b, 0x48, 0x80, 0x04, 0x20, + 0x10, 0x80, 0x08, 0xe0, 0xda, 0x88, 0x01, 0x24, + 0xe4, 0x03, 0x22, 0x40, 0x0c, 0x88, 0x22, 0x43, + 0xda, 0x80, 0x49, 0x88, 0x81, 0x73, 0x01, 0x20, + 0x10, 0xbd, 0x00, 0x00, 0x30, 0x00, 0x07, 0x00, + 0x3c, 0x00, 0xd0, 0x88, 0x01, 0x00, 0x70, 0xb5, + 0x10, 0x4e, 0x02, 0x1c, 0x00, 0x23, 0xf0, 0x56, + 0x00, 0x2a, 0x02, 0xd0, 0x08, 0x70, 0x01, 0x24, + 0x15, 0xe0, 0x00, 0x23, 0xcd, 0x56, 0x85, 0x42, + 0x01, 0xd1, 0x01, 0x20, 0x70, 0xbd, 0x28, 0x1c, + 0x00, 0xf0, 0x5f, 0xf9, 0x04, 0x1c, 0x0a, 0xd0, + 0x07, 0x48, 0x35, 0x70, 0x00, 0x68, 0x00, 0x28, + 0x03, 0xd0, 0x00, 0x21, 0x0a, 0x20, 0xf9, 0xf7, + 0x28, 0xfd, 0x3c, 0x00, 0x0c, 0x89, 0x01, 0x00, + 0x00, 0xf0, 0x16, 0xfa, 0x20, 0x1c, 0x70, 0xbd, + 0xf4, 0x6b, 0x01, 0x00, 0x3c, 0xd9, 0x01, 0x00, + 0x03, 0x1c, 0x08, 0x1c, 0x00, 0x2b, 0x80, 0xb5, + 0x06, 0xd0, 0x04, 0x21, 0x11, 0x80, 0x04, 0x22, + 0x04, 0x49, 0xe7, 0xf7, 0xe3, 0xfd, 0x02, 0xe0, + 0x00, 0x68, 0x00, 0xf0, 0xcf, 0xf9, 0x01, 0x20, + 0x80, 0xbd, 0x00, 0x00, 0xf4, 0x74, 0x01, 0x00, + 0x10, 0xb5, 0xff, 0xf7, 0x3c, 0x00, 0x48, 0x89, + 0x01, 0x00, 0x97, 0xfb, 0xff, 0xf7, 0x89, 0xfc, + 0x04, 0x1c, 0xff, 0xf7, 0xb8, 0xfb, 0xff, 0xf7, + 0x84, 0xfc, 0x00, 0x2c, 0x02, 0xd1, 0x01, 0x28, + 0x00, 0xd1, 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0xf8, 0xb5, 0x20, 0x4f, 0x04, 0x1c, + 0x78, 0x78, 0x0e, 0x1c, 0x02, 0x28, 0x2e, 0xd0, + 0x1e, 0x4a, 0xf9, 0x68, 0x91, 0x61, 0x14, 0x23, + 0x1d, 0x49, 0x58, 0x43, 0x40, 0x18, 0x3c, 0x00, + 0x84, 0x89, 0x01, 0x00, 0x41, 0x7b, 0xb8, 0x78, + 0xf8, 0xf7, 0x14, 0xfe, 0x00, 0xf0, 0x8a, 0xf9, + 0x00, 0x25, 0x04, 0xe0, 0x00, 0x21, 0xb8, 0x78, + 0xf8, 0xf7, 0x0c, 0xfe, 0x01, 0x35, 0x78, 0x78, + 0x14, 0x23, 0x14, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x80, 0x7a, 0xa8, 0x42, 0xf2, 0xdc, 0x00, 0x25, + 0x08, 0xe0, 0x00, 0x21, 0xb8, 0x78, 0xf8, 0xf7, + 0xfd, 0xfd, 0x0f, 0x48, 0x00, 0x68, 0x20, 0x70, + 0x3c, 0x00, 0xc0, 0x89, 0x01, 0x00, 0x01, 0x34, + 0x01, 0x35, 0xb5, 0x42, 0xf4, 0xdb, 0x09, 0x4a, + 0xf8, 0x68, 0x50, 0x61, 0x78, 0x78, 0x02, 0x28, + 0x06, 0xd1, 0xb8, 0x68, 0x32, 0x1c, 0x21, 0x1c, + 0x00, 0x04, 0x00, 0x0c, 0xff, 0xf7, 0x25, 0xfd, + 0xb8, 0x68, 0x80, 0x19, 0xb8, 0x60, 0xf8, 0xbd, + 0x00, 0x00, 0x40, 0xd9, 0x01, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x64, 0x8d, 0x01, 0x00, 0x30, 0x20, + 0x07, 0x00, 0x3c, 0x00, 0xfc, 0x89, 0x01, 0x00, + 0x70, 0xb5, 0x06, 0x1c, 0x0c, 0x4d, 0x00, 0x24, + 0x2c, 0x70, 0xff, 0xf7, 0x39, 0xfc, 0x0a, 0x48, + 0x18, 0x21, 0x1c, 0x30, 0xac, 0x60, 0xe7, 0xf7, + 0x43, 0xfd, 0x08, 0x48, 0x44, 0x61, 0xf9, 0xf7, + 0x63, 0xf9, 0x00, 0x2e, 0x06, 0xd1, 0x06, 0x48, + 0x29, 0x69, 0xf6, 0xf7, 0xa7, 0xfc, 0x00, 0x20, + 0xec, 0xf7, 0xb0, 0xfe, 0x70, 0xbd, 0x00, 0x00, + 0x7c, 0xd9, 0x01, 0x00, 0x3c, 0x00, 0x38, 0x8a, + 0x01, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0x30, 0xb5, 0x12, 0x4c, 0x85, 0xb0, + 0x20, 0x68, 0x00, 0x28, 0x1c, 0xd0, 0x0f, 0x48, + 0x14, 0x38, 0x80, 0x68, 0x00, 0x28, 0x01, 0xd1, + 0xff, 0xf7, 0xc1, 0xfb, 0x20, 0x68, 0x00, 0x23, + 0x00, 0x68, 0x01, 0xaa, 0x04, 0x30, 0x01, 0x21, + 0xec, 0xf7, 0xd1, 0xfd, 0x08, 0x49, 0x08, 0x4a, + 0x08, 0x31, 0x0c, 0x31, 0x00, 0x92, 0x3c, 0x00, + 0x74, 0x8a, 0x01, 0x00, 0x03, 0xc9, 0x00, 0xab, + 0x45, 0x18, 0x99, 0x7b, 0x01, 0x9a, 0x20, 0x68, + 0x2b, 0x1c, 0xf2, 0xf7, 0x2b, 0xfe, 0x05, 0xb0, + 0x30, 0xbd, 0x00, 0x00, 0x90, 0xd9, 0x01, 0x00, + 0x29, 0x81, 0x01, 0x00, 0x10, 0xb5, 0x13, 0x4c, + 0x14, 0x23, 0x60, 0x70, 0x58, 0x43, 0x12, 0x4b, + 0xc1, 0x18, 0x8a, 0x88, 0xe2, 0x80, 0x18, 0x58, + 0xe0, 0x60, 0x08, 0x7a, 0xa0, 0x70, 0xff, 0x28, + 0x3c, 0x00, 0xb0, 0x8a, 0x01, 0x00, 0x12, 0xd0, + 0x00, 0x22, 0x08, 0x21, 0x0d, 0x4b, 0xf8, 0xf7, + 0x22, 0xfd, 0x00, 0x22, 0x02, 0x20, 0xe1, 0x68, + 0xef, 0xf7, 0xbd, 0xfe, 0x0a, 0x49, 0xe0, 0x68, + 0x48, 0x61, 0x4a, 0x68, 0x02, 0x43, 0x4a, 0x60, + 0x8a, 0x68, 0x10, 0x43, 0x88, 0x60, 0x60, 0x78, + 0x02, 0x28, 0x01, 0xd1, 0xff, 0xf7, 0xdf, 0xfc, + 0x10, 0xbd, 0x40, 0xd9, 0x01, 0x00, 0x64, 0x8d, + 0x01, 0x00, 0x3c, 0x00, 0xec, 0x8a, 0x01, 0x00, + 0xb8, 0x0b, 0x00, 0x00, 0x10, 0x00, 0x07, 0x00, + 0xfe, 0x30, 0x00, 0x06, 0x00, 0x0e, 0x06, 0x21, + 0x15, 0x4b, 0x41, 0x43, 0x58, 0x5c, 0x82, 0x06, + 0x14, 0x48, 0x92, 0x0e, 0x42, 0x71, 0xc9, 0x18, + 0x4a, 0x78, 0xd2, 0x06, 0xd2, 0x0e, 0x02, 0x71, + 0x42, 0x78, 0x0c, 0x23, 0x1a, 0x43, 0x42, 0x70, + 0x42, 0x78, 0x8b, 0x78, 0x92, 0x08, 0x92, 0x00, + 0x9b, 0x07, 0x9b, 0x0f, 0x3c, 0x00, 0x28, 0x8b, + 0x01, 0x00, 0x1a, 0x43, 0x42, 0x70, 0x02, 0x78, + 0xc0, 0x23, 0x9a, 0x43, 0x40, 0x32, 0x02, 0x70, + 0x02, 0x78, 0x38, 0x23, 0x1a, 0x43, 0x02, 0x70, + 0x02, 0x78, 0xc9, 0x78, 0x04, 0x23, 0x9a, 0x43, + 0x89, 0x00, 0x19, 0x40, 0x11, 0x43, 0x01, 0x70, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x00, 0xd8, 0x8d, + 0x01, 0x00, 0x88, 0x00, 0x07, 0x00, 0x8f, 0xb5, + 0x00, 0x20, 0x02, 0x90, 0x03, 0x90, 0x3c, 0x00, + 0x64, 0x8b, 0x01, 0x00, 0x07, 0x48, 0x02, 0xaa, + 0x03, 0xa9, 0x00, 0x91, 0x01, 0x92, 0x43, 0x89, + 0x02, 0x89, 0x03, 0xc8, 0xff, 0xf7, 0xd4, 0xfb, + 0x03, 0x98, 0x02, 0x99, 0xff, 0xf7, 0x04, 0xfc, + 0x8f, 0xbd, 0x00, 0x00, 0x04, 0x8e, 0x01, 0x00, + 0x08, 0x49, 0x4a, 0x78, 0x00, 0x2a, 0x03, 0xd1, + 0x88, 0x80, 0x00, 0x20, 0x88, 0x60, 0x70, 0x47, + 0x14, 0x23, 0x5a, 0x43, 0x04, 0x4b, 0xd2, 0x18, + 0x3c, 0x00, 0xa0, 0x8b, 0x01, 0x00, 0xd2, 0x88, + 0x42, 0x43, 0xc8, 0x88, 0x42, 0x43, 0x8a, 0x60, + 0x70, 0x47, 0x40, 0xd9, 0x01, 0x00, 0x64, 0x8d, + 0x01, 0x00, 0xf8, 0xb5, 0x25, 0x4e, 0x04, 0x1c, + 0x30, 0x7a, 0x40, 0x08, 0x40, 0x00, 0x30, 0x72, + 0xb0, 0x7a, 0x00, 0x20, 0xb0, 0x72, 0x01, 0x27, + 0x01, 0x2c, 0x20, 0x4d, 0x01, 0xd0, 0xfc, 0x42, + 0x13, 0xd1, 0x30, 0x7b, 0x38, 0x43, 0x30, 0x73, + 0x00, 0x22, 0x3c, 0x00, 0xdc, 0x8b, 0x01, 0x00, + 0x21, 0x1c, 0x00, 0x20, 0xff, 0xf7, 0x6e, 0xfb, + 0x63, 0x1c, 0x01, 0xd1, 0x3f, 0x21, 0xe9, 0x73, + 0xb1, 0x7a, 0xa0, 0x22, 0x11, 0x43, 0xb1, 0x72, + 0x31, 0x7a, 0x39, 0x43, 0x31, 0x72, 0xf8, 0xbd, + 0x30, 0x7b, 0x40, 0x08, 0x40, 0x00, 0x30, 0x73, + 0x01, 0x22, 0x21, 0x1c, 0x01, 0x20, 0xff, 0xf7, + 0x59, 0xfb, 0x01, 0x20, 0x00, 0x21, 0xe9, 0x73, + 0xb1, 0x7a, 0x02, 0x22, 0x3c, 0x00, 0x18, 0x8c, + 0x01, 0x00, 0x11, 0x43, 0xb1, 0x72, 0xb1, 0x7a, + 0x04, 0x22, 0x11, 0x43, 0xb1, 0x72, 0xb1, 0x7a, + 0x30, 0x22, 0x11, 0x43, 0xb1, 0x72, 0x31, 0x7a, + 0x39, 0x43, 0x31, 0x72, 0x08, 0x49, 0x4a, 0x68, + 0x80, 0x23, 0x9a, 0x43, 0x4a, 0x60, 0x0a, 0x68, + 0x1a, 0x43, 0x0a, 0x60, 0x31, 0x7b, 0x39, 0x43, + 0x31, 0x73, 0xd7, 0xe7, 0x00, 0x00, 0x88, 0x00, + 0x07, 0x00, 0x40, 0x00, 0x07, 0x00, 0x3c, 0x00, + 0x54, 0x8c, 0x01, 0x00, 0x6c, 0x00, 0x07, 0x00, + 0xb0, 0xb5, 0x0e, 0x4d, 0x0e, 0x48, 0x29, 0x69, + 0xf6, 0xf7, 0x9e, 0xfb, 0x0d, 0x48, 0xec, 0xf7, + 0x93, 0xfd, 0x0d, 0x48, 0x09, 0x4c, 0x00, 0x88, + 0x1c, 0x34, 0xa0, 0x82, 0xf1, 0xf7, 0x5a, 0xff, + 0x20, 0x61, 0xfa, 0xf7, 0x97, 0xf8, 0x02, 0x1c, + 0x23, 0x1c, 0x00, 0x21, 0x00, 0x20, 0xec, 0xf7, + 0x8b, 0xff, 0x32, 0x20, 0xe8, 0x60, 0xff, 0xf7, + 0x3c, 0x00, 0x90, 0x8c, 0x01, 0x00, 0xa5, 0xfa, + 0xb0, 0xbd, 0x7c, 0xd9, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0xdd, 0x84, 0x01, 0x00, 0x20, 0xf7, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x68, 0x78, + 0x00, 0x28, 0x0e, 0xd0, 0x14, 0x23, 0x08, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x44, 0x7a, 0x06, 0xe0, + 0xa8, 0x68, 0xe0, 0x40, 0x01, 0x06, 0x09, 0x0e, + 0xa8, 0x78, 0xf8, 0xf7, 0x76, 0xfc, 0x08, 0x3c, + 0xf6, 0xd5, 0x3c, 0x00, 0xcc, 0x8c, 0x01, 0x00, + 0xb0, 0xbd, 0x00, 0x00, 0x40, 0xd9, 0x01, 0x00, + 0x64, 0x8d, 0x01, 0x00, 0x01, 0x1c, 0x14, 0x48, + 0xb0, 0xb5, 0x01, 0x60, 0x13, 0x48, 0x02, 0x7f, + 0x02, 0x23, 0x9a, 0x43, 0x02, 0x77, 0x02, 0x7f, + 0x01, 0x24, 0x22, 0x43, 0x02, 0x77, 0x10, 0x4d, + 0x00, 0x29, 0x0c, 0xd0, 0x01, 0x22, 0x00, 0x21, + 0x03, 0x20, 0xef, 0xf7, 0x9f, 0xfd, 0x0d, 0x49, + 0x48, 0x7c, 0xa0, 0x43, 0x3c, 0x00, 0x08, 0x8d, + 0x01, 0x00, 0x48, 0x74, 0x68, 0x7a, 0x20, 0x43, + 0x68, 0x72, 0xb0, 0xbd, 0x01, 0x7f, 0x21, 0x43, + 0x01, 0x77, 0x68, 0x7a, 0x40, 0x08, 0x40, 0x00, + 0x68, 0x72, 0x01, 0x22, 0x00, 0x21, 0x03, 0x20, + 0xef, 0xf7, 0xb1, 0xfd, 0xb0, 0xbd, 0xf4, 0x74, + 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, 0x88, 0x00, + 0x07, 0x00, 0x10, 0x00, 0x07, 0x00, 0x10, 0xb5, + 0x07, 0x4c, 0x21, 0x1c, 0x00, 0x20, 0x3c, 0x00, + 0x44, 0x8d, 0x01, 0x00, 0xf9, 0xf7, 0x56, 0xfb, + 0x05, 0x48, 0x00, 0x23, 0xc0, 0x56, 0x01, 0x28, + 0x03, 0xdd, 0x21, 0x1c, 0x00, 0x20, 0xf9, 0xf7, + 0x19, 0xfb, 0x10, 0xbd, 0x65, 0x1a, 0x00, 0x00, + 0xf4, 0x6b, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, + 0x08, 0x01, 0x01, 0x00, 0x02, 0x18, 0x04, 0xff, + 0x82, 0xe8, 0xd7, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, + 0x3c, 0x00, 0x80, 0x8d, 0x01, 0x00, 0x00, 0x18, + 0x00, 0x06, 0x02, 0x03, 0x05, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, + 0x01, 0x00, 0xff, 0x10, 0x00, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x20, 0x00, 0x01, 0x00, 0x02, 0x10, + 0x00, 0x06, 0x02, 0x03, 0x05, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x0c, + 0x0d, 0x0e, 0x3c, 0x00, 0xbc, 0x8d, 0x01, 0x00, + 0xff, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1b, + 0x1c, 0x1d, 0xff, 0x1a, 0x11, 0x13, 0x12, 0x0f, + 0x10, 0xff, 0x02, 0x00, 0xff, 0x01, 0x03, 0x09, + 0x0a, 0x0b, 0x00, 0x00, 0x30, 0x0d, 0x02, 0x00, + 0x00, 0x00, 0x28, 0x0e, 0x03, 0x00, 0x00, 0x00, + 0x1e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x30, 0x0d, + 0x02, 0x01, 0x00, 0x00, 0x1e, 0x0c, 0x00, 0x01, + 0x00, 0x00, 0x23, 0x0d, 0x3c, 0x00, 0xf8, 0x8d, + 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x1d, 0x0d, + 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfe, + 0xfb, 0x6d, 0x00, 0x00, 0x80, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x8e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x8e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x8e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x8e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x8f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x8f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x8f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x8f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x90, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x90, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x90, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x90, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0x91, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x91, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0x91, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x91, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x91, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x92, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x92, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x92, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x92, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x93, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x93, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x93, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x93, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x94, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0x94, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x94, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0x94, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x95, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x95, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0x95, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0x95, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x95, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0x96, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x96, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x96, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x96, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x97, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x97, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x97, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x97, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x98, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x98, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x98, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x98, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x98, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x99, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x99, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x99, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x99, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x9a, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x9a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x9a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x9a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x9b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x9b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x9b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x9b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x9c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x9c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x9c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x9c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x9c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x9d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x9d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x9d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x9d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x9e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x9e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x9e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x9e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x9f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x9f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x9f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x9f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xa0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xa0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xa0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xa0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xa0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xa1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xa1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xa1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xa1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xa2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xa2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xa2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xa2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xa3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xa3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xa3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xa3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xa4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xa4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xa4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xa4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xa4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xa5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xa5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xa5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xa5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xa6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xa6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xa6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xa6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xa7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xa7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xa7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xa7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xa7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xa8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xa8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xa8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xa8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xa9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xa9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xa9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xa9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xaa, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xaa, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xaa, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xaa, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xab, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xab, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xab, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xab, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xab, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xac, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xac, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xac, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xac, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xad, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xad, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xad, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xad, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xae, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xae, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xae, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xae, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xaf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xaf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xaf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xaf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xaf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xb0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xb0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xb0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xb0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xb1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xb1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xb1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xb1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xb2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xb2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xb2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xb2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xb3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xb3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xb3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xb3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xb3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xb4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xb4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xb4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xb4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xb5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xb5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xb5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xb5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xb6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xb6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xb6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xb6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xb6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xb7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xb7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xb7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xb7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xb8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xb8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xb8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xb8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xb9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xb9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xb9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xb9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xba, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xba, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xba, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xba, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xba, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xbb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xbb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xbb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xbb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xbc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xbc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xbc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xbc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xbd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xbd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xbd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xbd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xbe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xbe, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xbe, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xbe, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xbe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xbf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xbf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xbf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xbf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xc0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xc0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xc0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xc0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xc1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xc1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xc1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xc1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xc2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xc2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xc2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xc2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xc2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xc3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xc3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xc3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xc3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xc4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xc4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xc4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xc4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xc5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xc5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xc5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xc5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xc5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xc6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xc6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xc6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xc6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xc7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xc7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xc7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xc7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xc8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xc8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xc8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xc8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xc9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xc9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xc9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xc9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xc9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xca, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xca, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xca, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xca, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xcb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xcb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xcb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xcb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xcc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xcc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xcc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xcc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xcd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xcd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xcd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xcd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xcd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xce, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xce, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xce, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xce, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xcf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xcf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xcf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xcf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xd0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xd0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xd0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xd0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xd1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xd1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xd1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xd1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xd1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xd2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xd2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xd2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xd2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xd3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xd3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xd3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xd3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xd4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xd4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xd4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xd4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xd4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xd5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xd5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xd5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xd5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xd6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xd6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xd6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xd6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xd7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xd7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xd7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xd7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xd8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xd8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xd8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xd8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xd8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xd9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xd9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xd9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xd9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xda, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xda, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xda, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xda, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xdb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xdb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xdb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xdc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xdc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xdc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xdc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xdc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xdd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xdd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xdd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xdd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xde, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xde, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xde, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xde, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xdf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xdf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xdf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xdf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xe0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xe0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xe0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xe0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xe0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xe1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xe1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xe1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xe1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xe2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xe2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xe2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xe2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xe3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xe3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xe3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xe3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xe3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xe4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xe4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xe4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xe4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xe5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xe5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xe5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xe5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xe6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xe6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xe6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xe6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xe7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xe7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xe7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xe7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xe7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xe8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xe8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xe8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xe8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xe9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xe9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xe9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xe9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xea, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xea, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xea, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xea, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xeb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xeb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xeb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xeb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xeb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xec, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xec, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xec, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xec, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xed, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xed, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xed, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xed, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xee, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xee, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xee, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xee, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xef, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xef, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xef, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xef, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xef, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xf0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xf0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xf0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xf0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xf1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xf1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xf1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xf1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xf2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xf2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xf2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xf2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xf2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xf3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xf3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xf3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xf3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xf4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xf4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xf4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xf4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xf5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xf5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xf5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xf5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xf6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xf6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xf6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xf6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xf6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xf7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xf7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xf7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xf7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xf8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xf8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xf8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xf8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xf9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xf9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xf9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xf9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xfa, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xfa, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xfa, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xfa, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xfa, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xfb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xfb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xfb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xfb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xfc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xfc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xfc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xfc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xfd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xfd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xfd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xfd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xfe, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xfe, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xfe, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xfe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xfe, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xff, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x68, 0xff, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x00, 0x10, 0x04, 0x00, 0x70, 0xb5, 0x2b, 0x48, + 0x06, 0x21, 0x81, 0x75, 0xc1, 0x75, 0x01, 0x7e, + 0x49, 0x08, 0x49, 0x00, 0x01, 0x76, 0x01, 0x7e, + 0x02, 0x22, 0x91, 0x43, 0x01, 0x76, 0x26, 0x49, + 0x0b, 0x78, 0x5b, 0x08, 0x5b, 0x00, 0x0b, 0x70, + 0x04, 0x23, 0x8b, 0x70, 0x0c, 0x23, 0x43, 0x76, + 0x20, 0x23, 0x03, 0x75, 0x1a, 0x24, 0x44, 0x75, + 0x24, 0x24, 0x84, 0x76, 0x10, 0x24, 0xc4, 0x76, + 0x3c, 0x00, 0x3c, 0x10, 0x04, 0x00, 0x2a, 0x25, + 0x4d, 0x70, 0x05, 0x7a, 0x30, 0x26, 0xb5, 0x43, + 0x20, 0x35, 0x05, 0x72, 0x85, 0x7a, 0x6d, 0x08, + 0x6d, 0x00, 0x85, 0x72, 0x85, 0x7a, 0x95, 0x43, + 0x85, 0x72, 0x85, 0x7a, 0x04, 0x26, 0x35, 0x43, + 0x85, 0x72, 0x85, 0x7a, 0x08, 0x26, 0x35, 0x43, + 0x85, 0x72, 0x85, 0x7a, 0xa5, 0x43, 0x85, 0x72, + 0x05, 0x7b, 0x2c, 0x43, 0x04, 0x73, 0x04, 0x7b, + 0x1c, 0x43, 0x3c, 0x00, 0x78, 0x10, 0x04, 0x00, + 0x04, 0x73, 0x04, 0x7b, 0x40, 0x25, 0x2c, 0x43, + 0x04, 0x73, 0x84, 0x7a, 0x23, 0x43, 0x83, 0x72, + 0x83, 0x7a, 0xab, 0x43, 0x83, 0x72, 0x03, 0x7b, + 0x80, 0x24, 0x23, 0x43, 0x03, 0x73, 0x08, 0x78, + 0x90, 0x43, 0x08, 0x70, 0x08, 0x78, 0x01, 0x22, + 0x10, 0x43, 0x08, 0x70, 0x08, 0x78, 0x04, 0x22, + 0x90, 0x43, 0x08, 0x70, 0x70, 0xbd, 0x00, 0x00, + 0x0c, 0x80, 0x07, 0x00, 0x3c, 0x00, 0xb4, 0x10, + 0x04, 0x00, 0x80, 0x80, 0x07, 0x00, 0x01, 0x49, + 0x04, 0x20, 0x48, 0x73, 0x70, 0x47, 0x40, 0x80, + 0x07, 0x00, 0x03, 0x49, 0x80, 0xb5, 0x00, 0x20, + 0x08, 0x80, 0x00, 0xf0, 0x0a, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xfc, 0x6b, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x67, 0xfb, + 0x80, 0xbd, 0x80, 0xb5, 0x0a, 0x49, 0x18, 0x20, + 0xc1, 0xf7, 0x3b, 0xfa, 0x09, 0x49, 0x3c, 0x00, + 0xf0, 0x10, 0x04, 0x00, 0x02, 0x20, 0xc1, 0xf7, + 0x37, 0xfa, 0x08, 0x49, 0x1f, 0x20, 0xc1, 0xf7, + 0x33, 0xfa, 0x07, 0x49, 0x1c, 0x20, 0xc1, 0xf7, + 0x2f, 0xfa, 0x06, 0x49, 0x03, 0x20, 0xc1, 0xf7, + 0x2b, 0xfa, 0x80, 0xbd, 0x99, 0x2a, 0x00, 0x00, + 0x41, 0x25, 0x00, 0x00, 0x55, 0x25, 0x00, 0x00, + 0x5d, 0x25, 0x00, 0x00, 0x39, 0x25, 0x00, 0x00, + 0x80, 0xb5, 0xbf, 0xf7, 0x91, 0xfd, 0x80, 0xbd, + 0x3c, 0x00, 0x2c, 0x11, 0x04, 0x00, 0x80, 0xb5, + 0x05, 0x4a, 0x05, 0x49, 0x0a, 0x20, 0xbf, 0xf7, + 0x4e, 0xff, 0x01, 0x20, 0x04, 0x49, 0x80, 0x02, + 0x08, 0x60, 0x48, 0x60, 0x80, 0xbd, 0xb4, 0x74, + 0x01, 0x00, 0xb1, 0x64, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x91, 0xfe, + 0x80, 0xbd, 0x80, 0xb5, 0x05, 0x4a, 0x05, 0x49, + 0x1b, 0x20, 0xbf, 0xf7, 0x38, 0xff, 0x01, 0x20, + 0x04, 0x49, 0x3c, 0x00, 0x68, 0x11, 0x04, 0x00, + 0xc0, 0x06, 0x08, 0x60, 0x48, 0x60, 0x80, 0xbd, + 0xb8, 0x74, 0x01, 0x00, 0x2d, 0x6e, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x80, 0xb5, 0x04, 0x48, + 0x00, 0xf0, 0x80, 0xfe, 0x03, 0x49, 0x00, 0x20, + 0x48, 0x60, 0x88, 0x60, 0x80, 0xbd, 0x00, 0x00, + 0x41, 0x4b, 0x00, 0x00, 0xbc, 0x74, 0x01, 0x00, + 0x80, 0xb5, 0xc5, 0xf7, 0xd5, 0xfe, 0xce, 0xf7, + 0xd9, 0xf8, 0x03, 0x49, 0x3c, 0x00, 0xa4, 0x11, + 0x04, 0x00, 0x08, 0x60, 0x03, 0x49, 0x0a, 0x20, + 0xd1, 0xf7, 0xef, 0xf8, 0x80, 0xbd, 0xbc, 0x74, + 0x01, 0x00, 0x49, 0x6e, 0x00, 0x00, 0x80, 0xb5, + 0x01, 0x22, 0x20, 0x21, 0x06, 0x20, 0xc8, 0xf7, + 0x56, 0xfc, 0xbf, 0xf7, 0x70, 0xfe, 0x03, 0x49, + 0x00, 0x20, 0x08, 0x60, 0x20, 0x21, 0x02, 0x48, + 0xbf, 0xf7, 0x63, 0xf9, 0x80, 0xbd, 0xcc, 0x5c, + 0x01, 0x00, 0x64, 0x6d, 0x01, 0x00, 0x3c, 0x00, + 0xe0, 0x11, 0x04, 0x00, 0x08, 0x48, 0x80, 0xb5, + 0x00, 0x68, 0x00, 0x28, 0x05, 0xd0, 0x06, 0x48, + 0x54, 0x30, 0x42, 0x6a, 0x00, 0x21, 0xbf, 0xf7, + 0xf3, 0xf8, 0x04, 0x4a, 0x04, 0x49, 0x03, 0x20, + 0xbf, 0xf7, 0xac, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x50, 0x6d, 0x01, 0x00, 0x89, 0x98, 0x00, 0x00, + 0x91, 0x98, 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x03, 0xf8, 0x00, 0xf0, 0x19, 0xf8, 0x80, 0xbd, + 0x3c, 0x00, 0x1c, 0x12, 0x04, 0x00, 0x10, 0xb5, + 0x09, 0x4c, 0x60, 0x21, 0x20, 0x1c, 0xbf, 0xf7, + 0x3a, 0xf9, 0x00, 0x20, 0xc0, 0x43, 0xa0, 0x60, + 0x20, 0x60, 0xff, 0x20, 0x02, 0x30, 0xe0, 0x84, + 0x20, 0x22, 0x20, 0x1c, 0x40, 0x30, 0x02, 0x49, + 0xbf, 0xf7, 0x5b, 0xf9, 0x10, 0xbd, 0x00, 0x10, + 0x07, 0x00, 0x70, 0x52, 0x01, 0x00, 0x00, 0x20, + 0x0a, 0x49, 0xc0, 0x43, 0x88, 0x60, 0x09, 0x4b, + 0x0a, 0x49, 0x3c, 0x00, 0x58, 0x12, 0x04, 0x00, + 0x00, 0x20, 0x82, 0x00, 0x01, 0x30, 0x00, 0x06, + 0x00, 0x0e, 0x20, 0x28, 0x99, 0x50, 0xf8, 0xd3, + 0x06, 0x49, 0x04, 0x4a, 0x08, 0x1c, 0x10, 0x30, + 0x08, 0x3a, 0x03, 0xc2, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0xe0, 0x7e, 0x01, 0x00, + 0x75, 0x75, 0x00, 0x00, 0x00, 0xa0, 0x07, 0x00, + 0x04, 0x48, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x0c, 0x38, 0x3c, 0x00, 0x94, 0x12, + 0x04, 0x00, 0x01, 0x21, 0x41, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x70, 0x78, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x03, 0x48, 0x00, 0x21, 0x00, 0x22, + 0x00, 0x23, 0x0e, 0xc0, 0x08, 0xc0, 0x70, 0x47, + 0x00, 0x00, 0x88, 0x5a, 0x01, 0x00, 0x04, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x48, 0x61, 0x02, 0x48, + 0x40, 0x21, 0x1c, 0x30, 0xbf, 0xf7, 0xe9, 0xf8, + 0x80, 0xbd, 0xfc, 0x5a, 0x01, 0x00, 0x3c, 0x00, + 0xd0, 0x12, 0x04, 0x00, 0x80, 0xb5, 0xce, 0xf7, + 0x3f, 0xf8, 0x03, 0x49, 0x88, 0x61, 0x03, 0x49, + 0x03, 0x20, 0xd1, 0xf7, 0x55, 0xf8, 0x80, 0xbd, + 0xfc, 0x5a, 0x01, 0x00, 0x0d, 0x17, 0x01, 0x00, + 0x80, 0xb5, 0xc0, 0xf7, 0xa5, 0xf9, 0x80, 0xbd, + 0xfe, 0xb5, 0x6c, 0x49, 0x00, 0x20, 0x00, 0x90, + 0xc8, 0x78, 0x6b, 0x4c, 0x6b, 0x4f, 0x43, 0x07, + 0xc0, 0x06, 0xc0, 0x17, 0xdb, 0x0e, 0xe3, 0x58, + 0x3c, 0x00, 0x0c, 0x13, 0x04, 0x00, 0x01, 0x30, + 0x38, 0x62, 0x3b, 0x61, 0x08, 0x1c, 0x80, 0x78, + 0x66, 0x4e, 0x03, 0x22, 0x41, 0x07, 0xa0, 0x36, + 0x02, 0x96, 0x49, 0x0f, 0x31, 0x72, 0x89, 0x00, + 0x61, 0x58, 0x3c, 0x1c, 0x61, 0x61, 0x01, 0x91, + 0xc0, 0x06, 0xc0, 0x0f, 0x78, 0x62, 0x20, 0x1c, + 0x00, 0x27, 0x87, 0x61, 0x00, 0x20, 0x21, 0x1c, + 0xc8, 0x61, 0x59, 0x48, 0x59, 0x49, 0x00, 0x78, + 0x09, 0x79, 0x3c, 0x00, 0x48, 0x13, 0x04, 0x00, + 0x5a, 0x4c, 0x4e, 0x07, 0x76, 0x0f, 0x71, 0x1c, + 0x8c, 0x46, 0xb1, 0x00, 0x8e, 0x46, 0x56, 0x49, + 0x80, 0x31, 0x00, 0x28, 0x24, 0xd0, 0x52, 0x4f, + 0x01, 0x28, 0x7f, 0x78, 0x1a, 0xd0, 0x02, 0x28, + 0x71, 0xd1, 0x4f, 0x48, 0x00, 0x2f, 0x0c, 0xd0, + 0x01, 0x2f, 0x6c, 0xd1, 0x40, 0x79, 0x4d, 0x4d, + 0x40, 0x07, 0x40, 0x0f, 0x82, 0x00, 0xaa, 0x58, + 0x4b, 0x4d, 0x01, 0x30, 0x3c, 0x00, 0x84, 0x13, + 0x04, 0x00, 0xea, 0x61, 0xa0, 0x73, 0x04, 0x22, + 0x4b, 0x48, 0x48, 0x4d, 0xc8, 0x61, 0x4a, 0x48, + 0x00, 0x2f, 0x00, 0xd0, 0x4a, 0x48, 0x2f, 0x1c, + 0x11, 0xe0, 0x42, 0x48, 0x00, 0x2f, 0x55, 0xd1, + 0x07, 0x70, 0x02, 0x27, 0x47, 0x70, 0x3f, 0x48, + 0x40, 0x78, 0x00, 0x28, 0x10, 0xd0, 0x01, 0x28, + 0x01, 0xd0, 0x02, 0x28, 0x4a, 0xd1, 0x3f, 0x48, + 0x3d, 0x4f, 0xc8, 0x61, 0x3f, 0x48, 0x3c, 0x00, + 0xc0, 0x13, 0x04, 0x00, 0x88, 0x61, 0x3a, 0x49, + 0x70, 0x46, 0x08, 0x58, 0x35, 0x1c, 0xb8, 0x61, + 0x60, 0x46, 0x60, 0x73, 0x04, 0xe0, 0x3c, 0x48, + 0x02, 0x22, 0x88, 0x61, 0x3b, 0x48, 0xc8, 0x61, + 0x00, 0x20, 0x32, 0x49, 0x06, 0xe0, 0x0e, 0x18, + 0xb6, 0x78, 0x76, 0x07, 0x76, 0x0f, 0x04, 0x2e, + 0x2f, 0xd8, 0x01, 0x30, 0x90, 0x42, 0xf6, 0xd3, + 0xc8, 0x79, 0x2e, 0x4f, 0xc0, 0x07, 0xc0, 0x0f, + 0x3c, 0x00, 0xfc, 0x13, 0x04, 0x00, 0xf8, 0x60, + 0x33, 0x48, 0x41, 0x68, 0x19, 0x43, 0x41, 0x60, + 0x81, 0x68, 0x19, 0x43, 0x81, 0x60, 0x01, 0x9a, + 0xb9, 0x69, 0x8c, 0x46, 0x11, 0x43, 0xfa, 0x69, + 0x86, 0x68, 0x11, 0x43, 0x8e, 0x43, 0x86, 0x60, + 0x46, 0x68, 0x31, 0x43, 0x41, 0x60, 0x01, 0x99, + 0x0b, 0x43, 0x18, 0x1c, 0x61, 0x46, 0x08, 0x43, + 0x10, 0x43, 0x01, 0x1c, 0x00, 0x22, 0x02, 0x20, + 0xc7, 0xf7, 0x3c, 0x00, 0x38, 0x14, 0x04, 0x00, + 0x03, 0xfa, 0x1e, 0x4e, 0x40, 0x3e, 0x70, 0x78, + 0xc0, 0x08, 0xc0, 0x00, 0x28, 0x43, 0x70, 0x70, + 0x70, 0x1c, 0x01, 0x78, 0x00, 0xe0, 0x29, 0xe0, + 0x08, 0x25, 0xa9, 0x43, 0x01, 0x70, 0x01, 0x20, + 0xc0, 0x43, 0xb0, 0x80, 0x00, 0x21, 0x01, 0x20, + 0xcf, 0xf7, 0x6c, 0xfc, 0x30, 0x1c, 0x80, 0x30, + 0x81, 0x78, 0x09, 0x09, 0x09, 0x01, 0x81, 0x70, + 0x0f, 0x21, 0x01, 0x70, 0x3c, 0x00, 0x74, 0x14, + 0x04, 0x00, 0x16, 0x4a, 0x69, 0x04, 0x11, 0x60, + 0x51, 0x60, 0x02, 0x9e, 0x10, 0x21, 0x32, 0x7a, + 0x7b, 0x6a, 0x00, 0x2b, 0x00, 0xd1, 0x00, 0x21, + 0x11, 0x43, 0x21, 0x73, 0x81, 0x78, 0x29, 0x43, + 0x81, 0x70, 0xe0, 0x78, 0x01, 0x21, 0x08, 0x43, + 0xe0, 0x70, 0xd2, 0xf7, 0xf2, 0xf9, 0x01, 0x20, + 0x00, 0x90, 0x00, 0x98, 0xfe, 0xbd, 0xc0, 0x57, + 0x01, 0x00, 0x6c, 0x43, 0x01, 0x00, 0x3c, 0x00, + 0xb0, 0x14, 0x04, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x40, 0x90, 0x07, 0x00, 0xc9, 0x1d, 0x00, 0x00, + 0x81, 0x1d, 0x00, 0x00, 0xa5, 0x1d, 0x00, 0x00, + 0x99, 0x1d, 0x00, 0x00, 0xf1, 0x1d, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x03, 0x49, 0x00, 0x20, 0x88, 0x62, 0x08, 0x70, + 0x48, 0x70, 0x08, 0x71, 0x08, 0x62, 0x70, 0x47, + 0xac, 0x7e, 0x01, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x3c, 0x00, 0xec, 0x14, 0x04, 0x00, 0x00, 0x20, + 0xcd, 0xf7, 0x69, 0xff, 0x80, 0xbd, 0xb0, 0xb5, + 0x0f, 0x48, 0xc0, 0xf7, 0x18, 0xfc, 0x0e, 0x4d, + 0x03, 0x20, 0x28, 0x70, 0x0d, 0x49, 0x0d, 0x48, + 0x0c, 0x39, 0x48, 0x60, 0x0d, 0x48, 0x0a, 0x4c, + 0x88, 0x60, 0x40, 0x21, 0x18, 0x34, 0x20, 0x1c, + 0xbe, 0xf7, 0xc1, 0xff, 0xff, 0x21, 0x68, 0x68, + 0x09, 0x06, 0x08, 0x43, 0x20, 0x60, 0xff, 0x21, + 0x06, 0x22, 0x3c, 0x00, 0x28, 0x15, 0x04, 0x00, + 0x20, 0x1d, 0xbf, 0xf7, 0x79, 0xf8, 0x01, 0x20, + 0xe0, 0x60, 0xb0, 0xbd, 0xc0, 0xa8, 0x13, 0x0a, + 0x20, 0x6e, 0x01, 0x00, 0xc0, 0xa8, 0x13, 0x01, + 0xff, 0xff, 0xff, 0x00, 0x80, 0xb5, 0x02, 0x49, + 0x01, 0x20, 0xc8, 0xf7, 0x45, 0xff, 0x80, 0xbd, + 0x9d, 0x1c, 0x00, 0x00, 0x98, 0xb5, 0x0c, 0x4c, + 0x00, 0x20, 0x60, 0x60, 0xe0, 0x60, 0x0b, 0x4b, + 0x0b, 0x49, 0x82, 0x00, 0x3c, 0x00, 0x64, 0x15, + 0x04, 0x00, 0x01, 0x30, 0x20, 0x28, 0x99, 0x50, + 0xfa, 0xdb, 0x6a, 0x46, 0x09, 0x49, 0x05, 0x20, + 0xbf, 0xf7, 0x2f, 0xfd, 0x00, 0x20, 0xc0, 0x43, + 0x20, 0x60, 0x06, 0x49, 0x20, 0x20, 0x08, 0x60, + 0x48, 0x60, 0x98, 0xbd, 0x00, 0x00, 0x00, 0x40, + 0x07, 0x00, 0x30, 0x74, 0x01, 0x00, 0xa9, 0x75, + 0x00, 0x00, 0xb5, 0x9f, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x05, 0x49, 0x00, 0x20, 0x3c, 0x00, + 0xa0, 0x15, 0x04, 0x00, 0x08, 0x60, 0x05, 0x48, + 0x81, 0x78, 0x28, 0x22, 0x91, 0x43, 0x81, 0x70, + 0x81, 0x78, 0x11, 0x43, 0x81, 0x70, 0x70, 0x47, + 0x78, 0x6e, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x41, 0x48, 0x10, 0xb5, + 0x00, 0x68, 0x02, 0x21, 0x88, 0x43, 0x3f, 0x49, + 0x08, 0x60, 0x08, 0x1c, 0x00, 0x68, 0x02, 0x21, + 0x08, 0x43, 0x3c, 0x49, 0x08, 0x60, 0x3c, 0x48, + 0x3c, 0x00, 0xdc, 0x15, 0x04, 0x00, 0x40, 0x68, + 0x80, 0x21, 0x88, 0x43, 0x3a, 0x49, 0x48, 0x60, + 0x08, 0x1c, 0x00, 0x68, 0x80, 0x21, 0x08, 0x43, + 0x37, 0x49, 0x08, 0x60, 0x37, 0x48, 0x01, 0x7a, + 0x01, 0x24, 0x21, 0x43, 0x01, 0x72, 0x01, 0x7a, + 0x02, 0x22, 0x11, 0x43, 0x01, 0x72, 0x01, 0x7a, + 0x04, 0x22, 0x91, 0x43, 0x01, 0x72, 0x01, 0x7a, + 0x08, 0x22, 0x11, 0x43, 0x01, 0x72, 0x01, 0x7b, + 0x21, 0x43, 0x3c, 0x00, 0x18, 0x16, 0x04, 0x00, + 0x01, 0x73, 0x01, 0x7b, 0x02, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x01, 0x7b, 0x04, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x01, 0x7b, 0x08, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x2e, 0x21, 0x41, 0x73, 0x81, 0x7b, + 0x38, 0x22, 0x91, 0x43, 0x28, 0x31, 0x81, 0x73, + 0x20, 0x21, 0x41, 0x74, 0x81, 0x7b, 0xc9, 0x08, + 0xc9, 0x00, 0x03, 0x31, 0x81, 0x73, 0x22, 0x21, + 0xc1, 0x73, 0x20, 0x49, 0x3c, 0x00, 0x54, 0x16, + 0x04, 0x00, 0x09, 0x7a, 0x41, 0x72, 0x1e, 0x49, + 0x49, 0x7a, 0x01, 0x74, 0x3c, 0x22, 0x02, 0x77, + 0x01, 0x1c, 0x10, 0x31, 0x4a, 0x73, 0x50, 0x23, + 0x8b, 0x73, 0x5a, 0x23, 0xcb, 0x73, 0x0d, 0x23, + 0x01, 0x1c, 0x20, 0x31, 0x0b, 0x70, 0x17, 0x4b, + 0x43, 0x84, 0x0e, 0x23, 0x4b, 0x70, 0x00, 0x21, + 0x41, 0x82, 0x30, 0x21, 0x01, 0x70, 0x05, 0x21, + 0x41, 0x70, 0x04, 0x21, 0x41, 0x71, 0x3c, 0x00, + 0x90, 0x16, 0x04, 0x00, 0x84, 0x71, 0xc4, 0x71, + 0x0c, 0x21, 0x01, 0x71, 0xf8, 0x21, 0x41, 0x80, + 0x0f, 0x49, 0xca, 0x72, 0x8a, 0x72, 0x03, 0x22, + 0x0a, 0x72, 0x09, 0x22, 0x4a, 0x72, 0x08, 0x22, + 0x0a, 0x73, 0x02, 0x7a, 0x40, 0x23, 0x1a, 0x43, + 0x02, 0x72, 0x4c, 0x73, 0xff, 0xf7, 0xa2, 0xfc, + 0x08, 0x48, 0x01, 0x78, 0x21, 0x43, 0x01, 0x70, + 0x10, 0xbd, 0x00, 0x00, 0xf0, 0x00, 0x07, 0x00, + 0x3c, 0x00, 0xcc, 0x16, 0x04, 0x00, 0xf4, 0x00, + 0x07, 0x00, 0x0c, 0x80, 0x07, 0x00, 0x76, 0x46, + 0x01, 0x00, 0x24, 0x09, 0x00, 0x00, 0x80, 0x80, + 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, 0x80, 0xb5, + 0x18, 0x21, 0x09, 0x48, 0xbe, 0xf7, 0xd7, 0xfe, + 0x08, 0x48, 0x00, 0x21, 0x3c, 0x38, 0x41, 0x60, + 0x81, 0x60, 0xc1, 0x60, 0x01, 0x61, 0x41, 0x61, + 0x81, 0x61, 0x01, 0x21, 0x01, 0x62, 0xff, 0xf7, + 0x5c, 0xff, 0x3c, 0x00, 0x08, 0x17, 0x04, 0x00, + 0xc0, 0xf7, 0x6c, 0xff, 0x80, 0xbd, 0x00, 0x00, + 0x24, 0x7e, 0x01, 0x00, 0xb0, 0xb5, 0x21, 0x48, + 0x00, 0x68, 0x40, 0x08, 0x1f, 0x49, 0x40, 0x00, + 0x08, 0x60, 0x08, 0x1c, 0x00, 0x68, 0x01, 0x21, + 0x08, 0x43, 0x1c, 0x49, 0x08, 0x60, 0x1c, 0x4a, + 0x10, 0x79, 0x01, 0x21, 0x08, 0x43, 0x10, 0x71, + 0x10, 0x79, 0x02, 0x21, 0x88, 0x43, 0x10, 0x71, + 0x00, 0xf0, 0x6c, 0xf8, 0x3c, 0x00, 0x44, 0x17, + 0x04, 0x00, 0x10, 0x7a, 0x01, 0x21, 0x08, 0x43, + 0x10, 0x72, 0x10, 0x7a, 0xfe, 0x21, 0x88, 0x43, + 0x0a, 0x30, 0x10, 0x72, 0x28, 0x20, 0x90, 0x72, + 0x5a, 0x20, 0xd0, 0x72, 0x11, 0x4d, 0x14, 0x20, + 0x28, 0x77, 0x2c, 0x1c, 0x10, 0x34, 0xa0, 0x73, + 0x16, 0x20, 0xa8, 0x75, 0x18, 0x20, 0xe8, 0x75, + 0xff, 0xf7, 0xa1, 0xfc, 0x0c, 0x48, 0x68, 0x86, + 0xe0, 0x7b, 0x40, 0x06, 0x40, 0x0e, 0x3c, 0x00, + 0x80, 0x17, 0x04, 0x00, 0x0e, 0x21, 0x08, 0x43, + 0xe0, 0x73, 0xe0, 0x7b, 0x80, 0x21, 0x08, 0x43, + 0xe0, 0x73, 0x07, 0x48, 0x41, 0x79, 0x04, 0x22, + 0x11, 0x43, 0x41, 0x71, 0xb0, 0xbd, 0x00, 0x00, + 0xf0, 0x00, 0x07, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x30, 0x80, 0x07, 0x00, 0xff, 0x01, 0x00, 0x00, + 0x50, 0x00, 0x07, 0x00, 0x80, 0xb5, 0xff, 0xf7, + 0xaf, 0xff, 0x00, 0x20, 0x14, 0x49, 0xc0, 0x43, + 0x3c, 0x00, 0xbc, 0x17, 0x04, 0x00, 0x88, 0x60, + 0xc1, 0xf7, 0x0b, 0xf9, 0x13, 0x49, 0x00, 0x20, + 0x48, 0x62, 0xc8, 0x60, 0x48, 0x61, 0x08, 0x61, + 0x88, 0x61, 0xc8, 0x61, 0x0f, 0x4b, 0x08, 0x62, + 0x0f, 0x4a, 0x08, 0x63, 0x38, 0x33, 0x1a, 0x80, + 0x01, 0x22, 0x5a, 0x71, 0x0b, 0x4a, 0x40, 0x32, + 0xd0, 0x60, 0x13, 0x60, 0x08, 0x23, 0x13, 0x81, + 0x50, 0x60, 0x09, 0x4a, 0x8a, 0x62, 0xff, 0x22, + 0x0a, 0x70, 0x3c, 0x00, 0xf8, 0x17, 0x04, 0x00, + 0x48, 0x70, 0x05, 0x48, 0x00, 0x21, 0x00, 0x22, + 0x50, 0x30, 0x00, 0x23, 0x0e, 0xc0, 0xc1, 0xf7, + 0xff, 0xf8, 0x80, 0xbd, 0x00, 0x30, 0x07, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0xbe, 0xba, 0x00, 0x00, + 0x85, 0x75, 0x00, 0x00, 0x03, 0x48, 0x10, 0x21, + 0x81, 0x71, 0x02, 0x21, 0xc1, 0x71, 0x30, 0x21, + 0x41, 0x72, 0x70, 0x47, 0x00, 0x80, 0x07, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0x34, 0x18, + 0x04, 0x00, 0x00, 0xb5, 0xc1, 0xf7, 0xdb, 0xfb, + 0x00, 0xbd, 0x70, 0x47, 0x00, 0x00, 0x80, 0xb5, + 0xcd, 0xf7, 0x87, 0xfd, 0x01, 0x49, 0x88, 0x60, + 0x80, 0xbd, 0x50, 0xd9, 0x01, 0x00, 0x80, 0xb5, + 0x06, 0x21, 0x05, 0x48, 0xbe, 0xf7, 0xfd, 0xfd, + 0x04, 0x49, 0x00, 0x20, 0x04, 0x39, 0x08, 0x60, + 0x00, 0xf0, 0x67, 0xf8, 0x00, 0xf0, 0x03, 0xf8, + 0x80, 0xbd, 0xec, 0x67, 0x01, 0x00, 0x3c, 0x00, + 0x70, 0x18, 0x04, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0x2c, 0x21, 0x20, 0x1c, 0xbe, 0xf7, 0x10, 0xfe, + 0x01, 0x20, 0x20, 0x70, 0x03, 0x49, 0x00, 0x20, + 0x1c, 0x39, 0xc8, 0x60, 0x08, 0x61, 0x88, 0x61, + 0x10, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0xcd, 0xf7, 0x5d, 0xfd, 0x09, 0x49, + 0x88, 0x60, 0x09, 0x49, 0x08, 0x20, 0xd0, 0xf7, + 0x73, 0xfd, 0x08, 0x49, 0x09, 0x20, 0xd0, 0xf7, + 0x3c, 0x00, 0xac, 0x18, 0x04, 0x00, 0x6f, 0xfd, + 0x07, 0x49, 0x11, 0x20, 0xd0, 0xf7, 0x6b, 0xfd, + 0x06, 0x48, 0xc2, 0xf7, 0x74, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0x21, 0x35, + 0x00, 0x00, 0xa1, 0x38, 0x00, 0x00, 0x45, 0x34, + 0x00, 0x00, 0xbd, 0x26, 0x01, 0x00, 0x80, 0xb5, + 0x86, 0xb0, 0x0f, 0x48, 0xc4, 0xf7, 0x45, 0xf9, + 0x00, 0xf0, 0x45, 0xf8, 0xff, 0xf7, 0xd7, 0xff, + 0xff, 0xf7, 0x3c, 0x00, 0xe8, 0x18, 0x04, 0x00, + 0xab, 0xff, 0x0c, 0x49, 0x03, 0x20, 0xd0, 0xf7, + 0x4d, 0xfd, 0x0b, 0x48, 0x69, 0x46, 0x00, 0x90, + 0x00, 0x20, 0x01, 0x90, 0x09, 0x48, 0x04, 0x90, + 0x09, 0x48, 0x02, 0x90, 0x09, 0x48, 0x03, 0x90, + 0x09, 0x48, 0x05, 0x90, 0x00, 0x20, 0xc4, 0xf7, + 0xcf, 0xf8, 0x06, 0xb0, 0x80, 0xbd, 0x00, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x45, 0x35, 0x00, 0x00, + 0x95, 0x32, 0x00, 0x00, 0x3c, 0x00, 0x24, 0x19, + 0x04, 0x00, 0xa0, 0x7d, 0x01, 0x00, 0xfd, 0x32, + 0x00, 0x00, 0xcd, 0x31, 0x00, 0x00, 0x45, 0x7d, + 0x01, 0x00, 0x10, 0xb5, 0xcd, 0xf7, 0xd5, 0xfc, + 0x09, 0x48, 0x09, 0x4c, 0x30, 0x21, 0x60, 0x61, + 0x08, 0x48, 0x74, 0x30, 0xbe, 0xf7, 0xa9, 0xfd, + 0x00, 0x20, 0xa0, 0x62, 0x06, 0x49, 0x20, 0x61, + 0xe1, 0x63, 0x60, 0x64, 0xa0, 0x64, 0x14, 0x21, + 0x21, 0x65, 0x60, 0x62, 0x10, 0xbd, 0x3c, 0x00, + 0x60, 0x19, 0x04, 0x00, 0xb9, 0x75, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x70, 0x17, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x09, 0x20, 0x04, 0x4a, + 0xd1, 0xf7, 0xe8, 0xfe, 0xcd, 0xf7, 0xec, 0xfc, + 0x02, 0x49, 0x08, 0x63, 0x80, 0xbd, 0x00, 0x00, + 0x39, 0x39, 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0x80, 0xb5, 0xac, 0x21, 0x03, 0x48, 0xbe, 0xf7, + 0x83, 0xfd, 0x00, 0xf0, 0x51, 0xf8, 0x00, 0xf0, + 0x3c, 0x00, 0x9c, 0x19, 0x04, 0x00, 0x49, 0xf8, + 0x80, 0xbd, 0xa4, 0x6c, 0x01, 0x00, 0x08, 0xb5, + 0x00, 0xf0, 0x4d, 0xf8, 0x00, 0xf0, 0x45, 0xf8, + 0x00, 0x21, 0x16, 0x20, 0x18, 0x4a, 0xd1, 0xf7, + 0xc8, 0xfe, 0x17, 0x4a, 0x04, 0x21, 0x10, 0x1c, + 0x40, 0x30, 0x01, 0x70, 0x00, 0x21, 0x81, 0x70, + 0x11, 0x21, 0xc1, 0x80, 0x14, 0x49, 0x01, 0x81, + 0x10, 0x1c, 0x80, 0x30, 0xc1, 0x78, 0x08, 0x22, + 0x91, 0x43, 0x3c, 0x00, 0xd8, 0x19, 0x04, 0x00, + 0xc1, 0x70, 0xc1, 0x78, 0x11, 0x43, 0xc1, 0x70, + 0x6a, 0x46, 0x0f, 0x49, 0x14, 0x20, 0xbf, 0xf7, + 0xf5, 0xfa, 0x0e, 0x49, 0x07, 0x20, 0xd0, 0xf7, + 0xcd, 0xfc, 0x0d, 0x49, 0x0f, 0x20, 0xd0, 0xf7, + 0xc9, 0xfc, 0xcd, 0xf7, 0xab, 0xfc, 0x0b, 0x49, + 0x08, 0x60, 0x0a, 0x48, 0x44, 0x38, 0x80, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x00, 0x20, 0xc6, 0xf7, + 0x6f, 0xf9, 0x08, 0xbd, 0x3c, 0x00, 0x14, 0x1a, + 0x04, 0x00, 0xb5, 0x3b, 0x00, 0x00, 0x00, 0x90, + 0x07, 0x00, 0xe7, 0xfd, 0x00, 0x00, 0x8d, 0x41, + 0x00, 0x00, 0xcd, 0x48, 0x00, 0x00, 0xd9, 0x49, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0xf0, 0x6f, 0xfc, 0x80, 0xbd, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x61, 0xfc, + 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, 0xb0, 0xb5, + 0x30, 0x21, 0x0c, 0x48, 0xbe, 0xf7, 0x3c, 0x00, + 0x50, 0x1a, 0x04, 0x00, 0x25, 0xfd, 0x0b, 0x4c, + 0x00, 0x25, 0x0a, 0x48, 0x84, 0x3c, 0x38, 0x22, + 0x03, 0x21, 0x70, 0x38, 0x65, 0x60, 0xbe, 0xf7, + 0xdd, 0xfd, 0x06, 0x48, 0x38, 0x22, 0x01, 0x21, + 0x38, 0x38, 0xbe, 0xf7, 0xd7, 0xfd, 0x0e, 0x20, + 0xa5, 0x60, 0x60, 0x70, 0x20, 0x70, 0x00, 0xf0, + 0x1d, 0xf8, 0xb0, 0xbd, 0x94, 0x67, 0x01, 0x00, + 0x04, 0x49, 0x00, 0xb5, 0x01, 0x20, 0x48, 0x60, + 0x3c, 0x00, 0x8c, 0x1a, 0x04, 0x00, 0x88, 0x60, + 0xc8, 0x60, 0xc3, 0xf7, 0xf8, 0xff, 0x00, 0xbd, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x0a, 0x20, 0x02, 0x4a, 0xd1, 0xf7, + 0x50, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x1d, 0x5a, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x05, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x00, 0xf0, 0xfd, 0xfb, + 0x80, 0xbd, 0x80, 0xb5, 0x02, 0x49, 0x04, 0x20, + 0xd0, 0xf7, 0x3c, 0x00, 0xc8, 0x1a, 0x04, 0x00, + 0x61, 0xfc, 0x80, 0xbd, 0x65, 0x1f, 0x00, 0x00, + 0x00, 0x21, 0x17, 0x48, 0xc9, 0x43, 0x80, 0xb5, + 0x16, 0x4b, 0x01, 0x70, 0x18, 0x1c, 0x10, 0x22, + 0x20, 0x30, 0x02, 0x71, 0x00, 0x22, 0x10, 0x33, + 0x9a, 0x73, 0x42, 0x79, 0x04, 0x23, 0x1a, 0x43, + 0x42, 0x71, 0x42, 0x79, 0x18, 0x23, 0x9a, 0x43, + 0x08, 0x32, 0x42, 0x71, 0x08, 0x1c, 0xd7, 0xf7, + 0x59, 0xf8, 0x00, 0x28, 0x3c, 0x00, 0x04, 0x1b, + 0x04, 0x00, 0x03, 0xd1, 0x01, 0x21, 0x9a, 0x20, + 0xbf, 0xf7, 0xcb, 0xfb, 0x50, 0x20, 0x09, 0x49, + 0x50, 0x22, 0x0a, 0x60, 0xc8, 0x60, 0x88, 0x60, + 0x48, 0x60, 0x08, 0x61, 0x01, 0x20, 0x48, 0x61, + 0x00, 0x20, 0xd7, 0xf7, 0xd8, 0xf8, 0x04, 0x49, + 0xff, 0x20, 0x08, 0x60, 0x80, 0xbd, 0xf4, 0x6b, + 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, 0x04, 0x02, + 0x07, 0x00, 0xf4, 0x74, 0x01, 0x00, 0x3c, 0x00, + 0x40, 0x1b, 0x04, 0x00, 0x80, 0xb5, 0xd7, 0xf7, + 0xfb, 0xf8, 0x80, 0xbd, 0x10, 0xb5, 0xff, 0xf7, + 0xab, 0xfb, 0xbf, 0xf7, 0xdd, 0xfb, 0x81, 0x48, + 0xcd, 0xf7, 0x98, 0xfa, 0x00, 0x24, 0x23, 0x1c, + 0x04, 0x22, 0x04, 0x21, 0x00, 0x20, 0x01, 0xf0, + 0x39, 0xfa, 0x00, 0x28, 0x01, 0xd0, 0xbf, 0xf7, + 0xc9, 0xfb, 0x23, 0x1c, 0x00, 0x22, 0xff, 0x21, + 0x00, 0x20, 0x01, 0xf0, 0x2f, 0xfa, 0x00, 0x28, + 0x3c, 0x00, 0x7c, 0x1b, 0x04, 0x00, 0x01, 0xd0, + 0xbf, 0xf7, 0xbf, 0xfb, 0x23, 0x1c, 0x00, 0x22, + 0xff, 0x21, 0x00, 0x20, 0x01, 0xf0, 0x25, 0xfa, + 0x00, 0x28, 0x01, 0xd0, 0xbf, 0xf7, 0xb5, 0xfb, + 0xc4, 0xf7, 0x27, 0xff, 0x70, 0x48, 0x84, 0x70, + 0x6f, 0x49, 0x7f, 0x20, 0x88, 0x70, 0x6e, 0x49, + 0x0c, 0x60, 0x03, 0x20, 0x08, 0x60, 0x6b, 0x48, + 0x44, 0x70, 0x6c, 0x48, 0x04, 0x80, 0x69, 0x48, + 0xc0, 0x78, 0x3c, 0x00, 0xb8, 0x1b, 0x04, 0x00, + 0x08, 0x21, 0x08, 0x43, 0x67, 0x49, 0xc8, 0x70, + 0x08, 0x1c, 0xc0, 0x78, 0x04, 0x21, 0x08, 0x43, + 0x64, 0x49, 0xc8, 0x70, 0x01, 0xf0, 0x7e, 0xfa, + 0xff, 0xf7, 0x7e, 0xff, 0xff, 0xf7, 0x2c, 0xfe, + 0x01, 0xf0, 0x46, 0xfb, 0xff, 0xf7, 0x18, 0xfb, + 0x01, 0xf0, 0x52, 0xfa, 0xff, 0xf7, 0x82, 0xfb, + 0x5f, 0x48, 0xc1, 0x68, 0x10, 0x22, 0x91, 0x43, + 0xc1, 0x60, 0x01, 0x69, 0x3c, 0x00, 0xf4, 0x1b, + 0x04, 0x00, 0x5d, 0x4a, 0x11, 0x43, 0x01, 0x61, + 0x01, 0x69, 0xd2, 0x0a, 0x91, 0x43, 0x01, 0x61, + 0xc1, 0x68, 0x5a, 0x4a, 0x11, 0x43, 0xc1, 0x60, + 0x81, 0x6a, 0x59, 0x4a, 0x11, 0x43, 0x81, 0x62, + 0x00, 0xf0, 0x77, 0xf9, 0x01, 0xf0, 0x1f, 0xf8, + 0x00, 0xf0, 0x93, 0xfa, 0x01, 0xf0, 0x99, 0xfb, + 0x00, 0xf0, 0xf1, 0xff, 0x00, 0xf0, 0x99, 0xfc, + 0x00, 0xf0, 0xdd, 0xfc, 0x00, 0xf0, 0x3c, 0x00, + 0x30, 0x1c, 0x04, 0x00, 0x83, 0xfc, 0xff, 0xf7, + 0xb3, 0xfc, 0x01, 0xf0, 0x31, 0xfa, 0x01, 0xf0, + 0x71, 0xfa, 0xff, 0xf7, 0x87, 0xfa, 0xff, 0xf7, + 0x9b, 0xfa, 0x01, 0x21, 0x01, 0x20, 0x4b, 0x4a, + 0xd1, 0xf7, 0x7c, 0xfd, 0x01, 0x21, 0x02, 0x20, + 0x49, 0x4a, 0xd1, 0xf7, 0x77, 0xfd, 0x02, 0x21, + 0x03, 0x20, 0x48, 0x4a, 0xd1, 0xf7, 0x72, 0xfd, + 0x02, 0x21, 0x04, 0x20, 0x46, 0x4a, 0xd1, 0xf7, + 0x3c, 0x00, 0x6c, 0x1c, 0x04, 0x00, 0x6d, 0xfd, + 0x02, 0x21, 0x05, 0x20, 0x45, 0x4a, 0xd1, 0xf7, + 0x68, 0xfd, 0x02, 0x21, 0x06, 0x20, 0x43, 0x4a, + 0xd1, 0xf7, 0x63, 0xfd, 0x01, 0x21, 0x07, 0x20, + 0x42, 0x4a, 0xd1, 0xf7, 0x5e, 0xfd, 0x02, 0x21, + 0x17, 0x20, 0x40, 0x4a, 0xd1, 0xf7, 0x59, 0xfd, + 0x02, 0x21, 0x08, 0x20, 0x3f, 0x4a, 0xd1, 0xf7, + 0x54, 0xfd, 0xff, 0xf7, 0xc8, 0xfd, 0x3d, 0x48, + 0x04, 0x60, 0x3c, 0x00, 0xa8, 0x1c, 0x04, 0x00, + 0x44, 0x60, 0xff, 0xf7, 0x17, 0xfa, 0xff, 0xf7, + 0x09, 0xfa, 0xff, 0xf7, 0x4f, 0xfc, 0x00, 0xf0, + 0x43, 0xf9, 0xff, 0xf7, 0x33, 0xfa, 0xff, 0xf7, + 0xfb, 0xfa, 0x01, 0xf0, 0x85, 0xf8, 0x01, 0xf0, + 0xeb, 0xf9, 0x01, 0xf0, 0x23, 0xfa, 0x01, 0xf0, + 0x71, 0xf9, 0x00, 0xf0, 0xe3, 0xff, 0xff, 0xf7, + 0x6f, 0xfa, 0x00, 0xf0, 0xaf, 0xf9, 0x00, 0xf0, + 0xbd, 0xf9, 0x00, 0xf0, 0x3c, 0x00, 0xe4, 0x1c, + 0x04, 0x00, 0xad, 0xfc, 0x00, 0xf0, 0x9b, 0xfe, + 0xff, 0xf7, 0xcd, 0xfa, 0xff, 0xf7, 0xab, 0xfe, + 0x00, 0xf0, 0xc3, 0xf9, 0xff, 0xf7, 0xab, 0xfd, + 0x00, 0xf0, 0x8d, 0xff, 0x00, 0xf0, 0x21, 0xff, + 0x00, 0xf0, 0x65, 0xf9, 0x00, 0xf0, 0x97, 0xf9, + 0x00, 0xf0, 0xfd, 0xfe, 0x00, 0xf0, 0xe5, 0xfe, + 0x00, 0xf0, 0x3f, 0xf9, 0x00, 0xf0, 0x73, 0xf9, + 0xff, 0xf7, 0x37, 0xfe, 0x00, 0xf0, 0x3c, 0x00, + 0x20, 0x1d, 0x04, 0x00, 0x21, 0xf9, 0x00, 0xf0, + 0x73, 0xfb, 0xff, 0xf7, 0xe5, 0xfb, 0x00, 0xf0, + 0xd3, 0xfb, 0xff, 0xf7, 0xa9, 0xfe, 0x00, 0xf0, + 0xbb, 0xfb, 0x00, 0xf0, 0x09, 0xff, 0x00, 0xf0, + 0xdb, 0xf9, 0x18, 0x48, 0xc9, 0xf7, 0x56, 0xf8, + 0x17, 0x48, 0xc9, 0xf7, 0x2b, 0xf8, 0x00, 0x22, + 0x01, 0x21, 0xf0, 0x20, 0xd1, 0xf7, 0x2e, 0xfd, + 0x00, 0x20, 0x10, 0xbd, 0xa9, 0x69, 0x00, 0x00, + 0x3c, 0x00, 0x5c, 0x1d, 0x04, 0x00, 0x00, 0x00, + 0x07, 0x00, 0xf0, 0x00, 0x07, 0x00, 0x2c, 0x00, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0x3c, 0x00, + 0x08, 0x00, 0xc0, 0x3f, 0x74, 0x38, 0xfc, 0xdf, + 0x7f, 0x38, 0x55, 0x69, 0x00, 0x00, 0xe5, 0x13, + 0x00, 0x00, 0x61, 0x0c, 0x00, 0x00, 0x6d, 0x0c, + 0x00, 0x00, 0x3d, 0x0c, 0x00, 0x00, 0xf1, 0x0d, + 0x00, 0x00, 0xc5, 0x33, 0x00, 0x00, 0x3d, 0x0f, + 0x00, 0x00, 0x3c, 0x00, 0x98, 0x1d, 0x04, 0x00, + 0xad, 0xd8, 0x00, 0x00, 0x80, 0x00, 0x07, 0x00, + 0x50, 0x57, 0x01, 0x00, 0x04, 0x40, 0x01, 0x00, + 0x80, 0xb5, 0x01, 0xf0, 0xa9, 0xf9, 0x00, 0xf0, + 0xc9, 0xf8, 0xff, 0xf7, 0xc5, 0xfe, 0x01, 0xf0, + 0x03, 0xfb, 0x01, 0xf0, 0x93, 0xfa, 0xff, 0xf7, + 0xcb, 0xf9, 0x2c, 0x48, 0xff, 0xf7, 0xe8, 0xf9, + 0x00, 0xf0, 0xaa, 0xf8, 0x00, 0xf0, 0x58, 0xff, + 0xff, 0xf7, 0x34, 0xfd, 0x3c, 0x00, 0xd4, 0x1d, + 0x04, 0x00, 0xff, 0xf7, 0xf2, 0xfb, 0xff, 0xf7, + 0x7a, 0xfa, 0xff, 0xf7, 0x00, 0xfa, 0x00, 0xf0, + 0x34, 0xf9, 0x00, 0xf0, 0x3c, 0xf9, 0x01, 0xf0, + 0xe2, 0xf8, 0xff, 0xf7, 0x7a, 0xf9, 0xff, 0xf7, + 0x72, 0xf9, 0xff, 0xf7, 0x9a, 0xf9, 0x01, 0xf0, + 0x66, 0xf9, 0x01, 0xf0, 0x8e, 0xf9, 0x01, 0xf0, + 0xe0, 0xf8, 0x00, 0xf0, 0x06, 0xff, 0x00, 0xf0, + 0xf0, 0xfb, 0x00, 0xf0, 0x46, 0xfb, 0x3c, 0x00, + 0x10, 0x1e, 0x04, 0x00, 0x00, 0xf0, 0xbc, 0xff, + 0x00, 0xf0, 0xe4, 0xfc, 0x00, 0xf0, 0x20, 0xfe, + 0xff, 0xf7, 0x40, 0xfa, 0xff, 0xf7, 0x46, 0xfe, + 0xff, 0xf7, 0x56, 0xfd, 0x00, 0xf0, 0x2c, 0xf9, + 0x00, 0xf0, 0xfa, 0xfe, 0x00, 0xf0, 0x8a, 0xfe, + 0x00, 0xf0, 0xd4, 0xf8, 0x00, 0xf0, 0xb4, 0xf8, + 0x00, 0xf0, 0x78, 0xfe, 0x00, 0xf0, 0x4e, 0xfe, + 0x00, 0xf0, 0xde, 0xf8, 0xff, 0xf7, 0xac, 0xfd, + 0x3c, 0x00, 0x4c, 0x1e, 0x04, 0x00, 0x00, 0xf0, + 0x8c, 0xf8, 0x00, 0xf0, 0xf8, 0xfa, 0xff, 0xf7, + 0x76, 0xfb, 0xff, 0xf7, 0x20, 0xfe, 0x01, 0xf0, + 0xa6, 0xfa, 0x00, 0xf0, 0x48, 0xfb, 0x00, 0xf0, + 0x7c, 0xfe, 0x00, 0xf0, 0x5c, 0xf9, 0xbe, 0xf7, + 0x57, 0xfd, 0x00, 0x20, 0x80, 0xbd, 0x80, 0x38, + 0x01, 0x00, 0x01, 0x49, 0x00, 0x20, 0x08, 0x60, + 0x70, 0x47, 0xa8, 0x7e, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x3c, 0x00, 0x88, 0x1e, 0x04, 0x00, + 0x01, 0xd1, 0xbf, 0xf7, 0x39, 0xfa, 0x0f, 0x48, + 0x7d, 0x21, 0xc9, 0x00, 0x84, 0x60, 0x01, 0x80, + 0x0d, 0x49, 0x01, 0x61, 0x80, 0x21, 0x41, 0x80, + 0x00, 0x21, 0xc1, 0x60, 0x01, 0x62, 0x0b, 0x48, + 0x41, 0x80, 0x14, 0x21, 0x81, 0x80, 0x07, 0x21, + 0x41, 0x81, 0x06, 0x4a, 0x46, 0x23, 0x04, 0x32, + 0x05, 0x24, 0x13, 0x70, 0x54, 0x70, 0x0a, 0x21, + 0x91, 0x70, 0x81, 0x76, 0x3c, 0x00, 0xc4, 0x1e, + 0x04, 0x00, 0x03, 0x76, 0x04, 0x81, 0x10, 0xbd, + 0x00, 0x00, 0xc8, 0x74, 0x01, 0x00, 0x00, 0x87, + 0x93, 0x03, 0x30, 0x00, 0x07, 0x00, 0x09, 0x48, + 0x80, 0xb5, 0x01, 0x69, 0x42, 0x69, 0x11, 0x43, + 0x82, 0x69, 0xc0, 0x69, 0x11, 0x43, 0x01, 0x43, + 0x00, 0x22, 0x03, 0x20, 0xc6, 0xf7, 0xbf, 0xfc, + 0xcc, 0xf7, 0x1b, 0xfa, 0x00, 0x20, 0xc2, 0xf7, + 0x92, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x00, 0x1f, 0x04, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x21, 0x81, 0x60, + 0x02, 0x21, 0xc1, 0x60, 0x03, 0x39, 0x41, 0x60, + 0xc7, 0xf7, 0x3a, 0xff, 0x80, 0xbd, 0x00, 0x00, + 0x40, 0x20, 0x07, 0x00, 0x08, 0xb5, 0x6a, 0x46, + 0x04, 0x49, 0x15, 0x20, 0xbf, 0xf7, 0x54, 0xf8, + 0x01, 0x20, 0x03, 0x49, 0x40, 0x05, 0x08, 0x60, + 0x48, 0x60, 0x08, 0xbd, 0xa5, 0x21, 0x01, 0x00, + 0x3c, 0x00, 0x3c, 0x1f, 0x04, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x70, 0x47, 0x00, 0x00, 0x06, 0x48, + 0x80, 0xb5, 0x80, 0x68, 0xc0, 0x01, 0x80, 0x0f, + 0x05, 0xd1, 0x03, 0x22, 0xc1, 0x43, 0xc6, 0xf7, + 0xba, 0xfc, 0xd6, 0xf7, 0x00, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x10, 0x00, 0x07, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0x21, 0x2a, 0x20, + 0x06, 0x4a, 0xd1, 0xf7, 0xea, 0xfb, 0x00, 0x22, + 0x07, 0x20, 0x3c, 0x00, 0x78, 0x1f, 0x04, 0x00, + 0x04, 0x49, 0xbe, 0xf7, 0xed, 0xfe, 0x04, 0x48, + 0xc7, 0xf7, 0x58, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x8d, 0x89, 0x00, 0x00, 0xd5, 0x9b, 0x00, 0x00, + 0x10, 0x46, 0x01, 0x00, 0x02, 0x48, 0x00, 0x21, + 0x00, 0x22, 0x00, 0x23, 0x0e, 0xc0, 0x70, 0x47, + 0x80, 0x6e, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x2c, 0x20, 0x06, 0x4a, 0xd1, 0xf7, 0xcc, 0xfb, + 0x00, 0x22, 0x00, 0x20, 0x3c, 0x00, 0xb4, 0x1f, + 0x04, 0x00, 0x04, 0x49, 0xbe, 0xf7, 0xcf, 0xfe, + 0x04, 0x49, 0x02, 0x20, 0xc8, 0xf7, 0x0b, 0xfa, + 0x80, 0xbd, 0x05, 0x8a, 0x00, 0x00, 0xe9, 0x9b, + 0x00, 0x00, 0xb1, 0x8b, 0x00, 0x00, 0x02, 0x48, + 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, 0x0e, 0xc0, + 0x70, 0x47, 0x10, 0x75, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x2b, 0x20, 0x04, 0x4a, 0xd1, 0xf7, + 0xae, 0xfb, 0x00, 0x22, 0x02, 0x20, 0x3c, 0x00, + 0xf0, 0x1f, 0x04, 0x00, 0x02, 0x49, 0xbe, 0xf7, + 0xb1, 0xfe, 0x80, 0xbd, 0x2d, 0x8a, 0x00, 0x00, + 0x8d, 0x8c, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x2d, 0x20, 0x07, 0x4a, + 0xd1, 0xf7, 0x9c, 0xfb, 0x00, 0x22, 0x01, 0x20, + 0x05, 0x49, 0xbe, 0xf7, 0x9f, 0xfe, 0x05, 0x48, + 0xcb, 0xf7, 0x56, 0xfa, 0x04, 0x48, 0xcc, 0xf7, + 0xf7, 0xf8, 0x80, 0xbd, 0xad, 0x8a, 0x00, 0x00, + 0x3c, 0x00, 0x2c, 0x20, 0x04, 0x00, 0x21, 0xe2, + 0x00, 0x00, 0xf9, 0xdf, 0x00, 0x00, 0x20, 0x44, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x02, 0x49, + 0x00, 0x20, 0x08, 0x60, 0x01, 0x20, 0x48, 0x60, + 0x70, 0x47, 0xac, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x49, 0x0d, 0x20, 0xd0, 0xf7, 0x9b, 0xf9, + 0x80, 0xbd, 0x61, 0x98, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0xcd, 0xf7, 0x77, 0xf9, + 0x03, 0x49, 0x3c, 0x00, 0x68, 0x20, 0x04, 0x00, + 0x08, 0x60, 0x01, 0x1c, 0x02, 0x48, 0xcd, 0xf7, + 0x97, 0xf9, 0x80, 0xbd, 0xa8, 0x79, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x29, 0xf8, 0x80, 0xbd, 0x80, 0xb5, 0x86, 0xb0, + 0x0c, 0x48, 0xc3, 0xf7, 0x6d, 0xfd, 0xd6, 0xf7, + 0xd3, 0xfb, 0x0b, 0x48, 0x0d, 0x49, 0x00, 0x90, + 0x0a, 0x48, 0x04, 0x91, 0x01, 0x90, 0x0a, 0x48, + 0x69, 0x46, 0x02, 0x90, 0x3c, 0x00, 0xa4, 0x20, + 0x04, 0x00, 0x00, 0x20, 0x03, 0x90, 0x05, 0x90, + 0x01, 0x20, 0xc3, 0xf7, 0x00, 0xfd, 0x07, 0x49, + 0x03, 0x20, 0xd0, 0xf7, 0x6a, 0xf9, 0x06, 0xb0, + 0x80, 0xbd, 0x20, 0xf7, 0x01, 0x00, 0x11, 0x87, + 0x01, 0x00, 0x95, 0x87, 0x01, 0x00, 0x55, 0x87, + 0x01, 0x00, 0x98, 0xd9, 0x01, 0x00, 0x6d, 0x87, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x20, 0xd6, 0xf7, + 0x90, 0xfc, 0x03, 0x49, 0x00, 0x20, 0x3c, 0x00, + 0xe0, 0x20, 0x04, 0x00, 0x08, 0x60, 0x48, 0x60, + 0x02, 0x48, 0x14, 0x39, 0x48, 0x60, 0x80, 0xbd, + 0x90, 0xd9, 0x01, 0x00, 0x3d, 0x82, 0x01, 0x00, + 0x70, 0xb5, 0x00, 0x26, 0x09, 0x4c, 0x09, 0x4d, + 0x26, 0x60, 0x66, 0x60, 0x44, 0x21, 0x50, 0x35, + 0x28, 0x1c, 0xa6, 0x61, 0xbe, 0xf7, 0xc8, 0xf9, + 0x14, 0x20, 0xe0, 0x60, 0xe8, 0x63, 0x28, 0x20, + 0xe8, 0x61, 0xa0, 0x60, 0x28, 0x64, 0x2e, 0x70, + 0x3c, 0x00, 0x1c, 0x21, 0x04, 0x00, 0x70, 0xbd, + 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x18, 0x20, 0x04, 0x4a, 0xd1, 0xf7, + 0x0c, 0xfb, 0x03, 0x49, 0x08, 0x20, 0xd0, 0xf7, + 0x2a, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x15, 0x9c, + 0x00, 0x00, 0x69, 0x9c, 0x00, 0x00, 0xfe, 0xb5, + 0x26, 0x4d, 0x28, 0x78, 0xc0, 0x07, 0x0c, 0xd4, + 0x25, 0x49, 0x00, 0x20, 0x08, 0x70, 0x28, 0x70, + 0x24, 0x48, 0x3c, 0x00, 0x58, 0x21, 0x04, 0x00, + 0x81, 0x78, 0x49, 0x08, 0x49, 0x00, 0x81, 0x70, + 0x81, 0x78, 0x01, 0x22, 0x11, 0x43, 0x81, 0x70, + 0x00, 0x24, 0xff, 0x26, 0x1f, 0x4f, 0x01, 0x36, + 0x21, 0x1c, 0x01, 0xa8, 0xc6, 0xf7, 0x32, 0xf8, + 0x00, 0xab, 0x18, 0x79, 0x01, 0x28, 0x1f, 0xd0, + 0x02, 0x28, 0x19, 0xd0, 0x03, 0x28, 0x1e, 0xd1, + 0xb8, 0x68, 0x00, 0x21, 0xb0, 0x43, 0xb8, 0x60, + 0x78, 0x68, 0x30, 0x43, 0x3c, 0x00, 0x94, 0x21, + 0x04, 0x00, 0x78, 0x60, 0x3a, 0x68, 0x32, 0x40, + 0xa0, 0x20, 0x05, 0xe0, 0x3b, 0x68, 0x33, 0x40, + 0x93, 0x42, 0x01, 0xd0, 0x01, 0x21, 0x01, 0xe0, + 0x01, 0x38, 0xf7, 0xd2, 0x78, 0x68, 0xb0, 0x43, + 0x78, 0x60, 0x00, 0x29, 0x03, 0xd0, 0x01, 0xa8, + 0x00, 0xf0, 0x27, 0xff, 0x02, 0xe0, 0x01, 0xa8, + 0x00, 0xf0, 0x45, 0xff, 0x01, 0x34, 0x24, 0x06, + 0x24, 0x16, 0x06, 0x2c, 0xcf, 0xdb, 0x3c, 0x00, + 0xd0, 0x21, 0x04, 0x00, 0x04, 0x49, 0x02, 0x22, + 0x08, 0x78, 0x10, 0x43, 0x08, 0x70, 0x28, 0x70, + 0xfe, 0xbd, 0x00, 0x00, 0x04, 0x00, 0x07, 0x00, + 0xe0, 0x60, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, + 0x10, 0x00, 0x07, 0x00, 0xb0, 0xb5, 0x00, 0x20, + 0x15, 0x23, 0x14, 0x49, 0x01, 0x25, 0x42, 0x00, + 0x8d, 0x54, 0x52, 0x18, 0x01, 0x30, 0x0e, 0x28, + 0x53, 0x70, 0xf8, 0xd3, 0x0f, 0x48, 0x1c, 0x22, + 0x3c, 0x00, 0x0c, 0x22, 0x04, 0x00, 0x1c, 0x38, + 0xbe, 0xf7, 0x73, 0xf9, 0x0d, 0x48, 0x0e, 0x21, + 0x2a, 0x38, 0xbe, 0xf7, 0x1c, 0xf9, 0x0b, 0x49, + 0x00, 0x20, 0x08, 0x60, 0x0b, 0x4c, 0x2a, 0x21, + 0x20, 0x1c, 0xbe, 0xf7, 0x14, 0xf9, 0x25, 0x70, + 0x0e, 0x20, 0x60, 0x70, 0x17, 0x20, 0xa0, 0x70, + 0x07, 0x48, 0x53, 0x21, 0x01, 0x70, 0x45, 0x21, + 0x41, 0x70, 0x20, 0x21, 0x81, 0x70, 0xb0, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x48, 0x22, 0x04, 0x00, + 0xe6, 0x78, 0x01, 0x00, 0xe4, 0x62, 0x01, 0x00, + 0xeb, 0x62, 0x01, 0x00, 0xe8, 0x62, 0x01, 0x00, + 0x0c, 0x49, 0x0d, 0x48, 0x00, 0x22, 0x41, 0x60, + 0x0c, 0x49, 0x81, 0x60, 0x0c, 0x49, 0xc1, 0x60, + 0x0c, 0x49, 0x01, 0x61, 0x0c, 0x49, 0x41, 0x61, + 0x0c, 0x49, 0x82, 0x61, 0xc1, 0x61, 0x0c, 0x49, + 0x01, 0x62, 0x0c, 0x49, 0x41, 0x62, 0x0c, 0x49, + 0x81, 0x62, 0x0c, 0x49, 0x3c, 0x00, 0x84, 0x22, + 0x04, 0x00, 0xc1, 0x62, 0xc2, 0x63, 0x70, 0x47, + 0x00, 0x00, 0xc9, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0xc1, 0x75, 0x00, 0x00, 0x81, 0x75, + 0x00, 0x00, 0x99, 0x75, 0x00, 0x00, 0xcd, 0x75, + 0x00, 0x00, 0x89, 0x75, 0x00, 0x00, 0x91, 0x75, + 0x00, 0x00, 0xb5, 0x75, 0x00, 0x00, 0x8d, 0x75, + 0x00, 0x00, 0xc5, 0x75, 0x00, 0x00, 0xb0, 0xb5, + 0x0e, 0x48, 0x0e, 0x49, 0x08, 0x60, 0x3c, 0x00, + 0xc0, 0x22, 0x04, 0x00, 0x08, 0x31, 0xc0, 0xf7, + 0x43, 0xfe, 0x0c, 0x49, 0x00, 0x25, 0x48, 0x60, + 0x0b, 0x48, 0x0a, 0x4c, 0x05, 0x60, 0x0b, 0x48, + 0x80, 0x3c, 0x05, 0x60, 0x10, 0x20, 0x20, 0x71, + 0xe0, 0x70, 0xa0, 0x71, 0x60, 0x71, 0x27, 0x20, + 0xc0, 0x43, 0xc3, 0xf7, 0xf7, 0xfb, 0x28, 0x20, + 0xc3, 0xf7, 0xfc, 0xfb, 0x25, 0x72, 0xb0, 0xbd, + 0xff, 0x3f, 0x00, 0x00, 0x2c, 0x7d, 0x01, 0x00, + 0x3c, 0x00, 0xfc, 0x22, 0x04, 0x00, 0x1c, 0x67, + 0x01, 0x00, 0x20, 0x67, 0x01, 0x00, 0x80, 0xb5, + 0x2c, 0x21, 0x01, 0x48, 0xbe, 0xf7, 0xc7, 0xf8, + 0x80, 0xbd, 0x3c, 0x7e, 0x01, 0x00, 0x80, 0xb5, + 0x38, 0x21, 0x01, 0x48, 0xbe, 0xf7, 0xbf, 0xf8, + 0x80, 0xbd, 0x68, 0x7e, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x0e, 0x20, 0x02, 0x4a, 0xd1, 0xf7, + 0x0c, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x21, 0xe0, + 0x00, 0x00, 0x3c, 0x00, 0x38, 0x23, 0x04, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xf0, 0xb5, 0x85, 0xb0, + 0x00, 0x27, 0x00, 0xab, 0x2f, 0x4e, 0x1f, 0x81, + 0x00, 0x25, 0x00, 0x24, 0x28, 0x1c, 0xd6, 0xf7, + 0xa1, 0xfb, 0x02, 0x2d, 0x03, 0xd1, 0xd6, 0xf7, + 0xf5, 0xfa, 0x00, 0x28, 0x0c, 0xd0, 0x01, 0x24, + 0x01, 0x2d, 0x03, 0xd1, 0x07, 0x20, 0x00, 0xab, + 0x18, 0x71, 0x01, 0xe0, 0x00, 0xab, 0x1f, 0x71, + 0x00, 0xab, 0x18, 0x79, 0x3c, 0x00, 0x74, 0x23, + 0x04, 0x00, 0xd6, 0xf7, 0x08, 0xfc, 0x00, 0x2c, + 0x39, 0xd0, 0x08, 0x21, 0x03, 0xa8, 0xd6, 0xf7, + 0xf2, 0xfa, 0x00, 0xab, 0x18, 0x7b, 0xfe, 0x28, + 0x31, 0xd1, 0x58, 0x7b, 0x01, 0x28, 0x2a, 0xd1, + 0x02, 0x21, 0x02, 0xa8, 0xd6, 0xf7, 0xe7, 0xfa, + 0x00, 0xab, 0x18, 0x89, 0x00, 0x28, 0x26, 0xd0, + 0x18, 0x89, 0x18, 0x49, 0x88, 0x42, 0x22, 0xd0, + 0x19, 0x89, 0x00, 0x20, 0xbf, 0xf7, 0x3c, 0x00, + 0xb0, 0x23, 0x04, 0x00, 0x13, 0xf9, 0x04, 0x1c, + 0x00, 0x69, 0x00, 0xab, 0x19, 0x89, 0xd6, 0xf7, + 0xd5, 0xfa, 0x20, 0x68, 0x00, 0xab, 0x1a, 0x89, + 0x01, 0x1c, 0x08, 0x31, 0x08, 0x3a, 0xcb, 0xf7, + 0xa1, 0xf9, 0x00, 0x28, 0x06, 0xd0, 0x02, 0x28, + 0x04, 0xd0, 0x02, 0x21, 0x94, 0x20, 0x37, 0x60, + 0xbe, 0xf7, 0x62, 0xff, 0x20, 0x1c, 0xbf, 0xf7, + 0xc7, 0xf8, 0xd4, 0xe7, 0x01, 0x21, 0x94, 0x20, + 0x3c, 0x00, 0xec, 0x23, 0x04, 0x00, 0xbe, 0xf7, + 0x5a, 0xff, 0xd5, 0xf7, 0x26, 0xff, 0x01, 0x35, + 0x2d, 0x06, 0x2d, 0x0e, 0x04, 0x2d, 0xa5, 0xd3, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x58, 0x57, + 0x01, 0x00, 0xff, 0xff, 0x00, 0x00, 0x0a, 0x48, + 0x00, 0x21, 0x02, 0x1c, 0x18, 0x32, 0x80, 0xb5, + 0x09, 0x4b, 0x02, 0xe0, 0x01, 0x60, 0x83, 0x80, + 0x08, 0x30, 0x82, 0x42, 0xfa, 0xd1, 0x04, 0x48, + 0x6c, 0x21, 0x3c, 0x00, 0x28, 0x24, 0x04, 0x00, + 0x6c, 0x38, 0xbe, 0xf7, 0x37, 0xf8, 0x04, 0x49, + 0x02, 0x20, 0xc7, 0xf7, 0xd1, 0xff, 0x80, 0xbd, + 0x7c, 0x79, 0x01, 0x00, 0xfc, 0x05, 0x00, 0x00, + 0x9d, 0x75, 0x00, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x26, 0x20, 0x0d, 0x4a, 0xd1, 0xf7, 0x7c, 0xf9, + 0x0c, 0x48, 0xc8, 0xf7, 0x73, 0xff, 0x0c, 0x48, + 0xc8, 0xf7, 0x76, 0xff, 0x0b, 0x49, 0x10, 0x20, + 0xcf, 0xf7, 0x94, 0xff, 0x3c, 0x00, 0x64, 0x24, + 0x04, 0x00, 0x0a, 0x49, 0x0c, 0x20, 0xcf, 0xf7, + 0x90, 0xff, 0x09, 0x49, 0x00, 0x20, 0xc7, 0xf7, + 0xb2, 0xff, 0xcc, 0xf7, 0x6e, 0xff, 0x07, 0x49, + 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, 0x9d, 0xa6, + 0x00, 0x00, 0xa9, 0xa4, 0x00, 0x00, 0x81, 0xa4, + 0x00, 0x00, 0x31, 0xa7, 0x00, 0x00, 0xb9, 0x6d, + 0x00, 0x00, 0xbd, 0xa6, 0x00, 0x00, 0x0c, 0x79, + 0x01, 0x00, 0x02, 0x49, 0x08, 0x78, 0x3c, 0x00, + 0xa0, 0x24, 0x04, 0x00, 0x40, 0x08, 0x40, 0x00, + 0x08, 0x70, 0x70, 0x47, 0x58, 0x00, 0x07, 0x00, + 0x00, 0x21, 0x08, 0x48, 0x80, 0xb5, 0x41, 0x61, + 0x81, 0x61, 0x01, 0x70, 0x41, 0x70, 0x41, 0x60, + 0x81, 0x60, 0x14, 0x22, 0xc2, 0x60, 0x01, 0x61, + 0x42, 0x62, 0xc1, 0x61, 0xff, 0xf7, 0x04, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x1c, 0x75, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x1d, 0x20, 0x04, 0x4a, + 0x3c, 0x00, 0xdc, 0x24, 0x04, 0x00, 0xd1, 0xf7, + 0x34, 0xf9, 0x03, 0x49, 0x08, 0x20, 0xcf, 0xf7, + 0x52, 0xff, 0x80, 0xbd, 0x00, 0x00, 0x11, 0xe3, + 0x00, 0x00, 0x09, 0xe4, 0x00, 0x00, 0x80, 0xb5, + 0x01, 0x21, 0x25, 0x20, 0x0a, 0x4a, 0xd1, 0xf7, + 0x24, 0xf9, 0xcc, 0xf7, 0x28, 0xff, 0x08, 0x49, + 0x08, 0x62, 0x08, 0x49, 0x01, 0x20, 0xcf, 0xf7, + 0x3e, 0xff, 0x07, 0x49, 0x02, 0x20, 0xcf, 0xf7, + 0x3a, 0xff, 0x3c, 0x00, 0x18, 0x25, 0x04, 0x00, + 0xfe, 0xf7, 0xe6, 0xff, 0x05, 0x48, 0xc1, 0xf7, + 0xe1, 0xf9, 0x80, 0xbd, 0x29, 0xa9, 0x00, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0xa1, 0xaa, 0x00, 0x00, + 0x2d, 0x19, 0x00, 0x00, 0x45, 0xa8, 0x00, 0x00, + 0x10, 0xb5, 0x06, 0x4c, 0x0c, 0x22, 0x22, 0x70, + 0xa0, 0x18, 0x05, 0x49, 0xbd, 0xf7, 0xd8, 0xff, + 0x00, 0x20, 0xc8, 0xf7, 0x85, 0xfb, 0x01, 0x20, + 0xa0, 0x60, 0x10, 0xbd, 0x3c, 0x00, 0x54, 0x25, + 0x04, 0x00, 0xa4, 0x69, 0x01, 0x00, 0x90, 0x57, + 0x01, 0x00, 0xb0, 0xb5, 0x1f, 0x4c, 0x00, 0x25, + 0x65, 0x80, 0x01, 0x20, 0x20, 0x70, 0x0a, 0x20, + 0xa0, 0x80, 0x90, 0x20, 0xe0, 0x80, 0x30, 0x20, + 0x20, 0x81, 0x90, 0x20, 0x60, 0x81, 0x30, 0x20, + 0xa0, 0x81, 0x17, 0x48, 0x04, 0x22, 0x07, 0x21, + 0x12, 0x30, 0xbe, 0xf7, 0x4c, 0xf8, 0x14, 0x48, + 0x04, 0x22, 0x05, 0x21, 0x16, 0x30, 0x3c, 0x00, + 0x90, 0x25, 0x04, 0x00, 0xbe, 0xf7, 0x46, 0xf8, + 0x12, 0x48, 0x11, 0x4a, 0xe0, 0x81, 0x20, 0x82, + 0x70, 0x32, 0x15, 0x70, 0x55, 0x70, 0x00, 0x20, + 0x3c, 0x23, 0x41, 0x01, 0x43, 0x43, 0x89, 0x18, + 0xf4, 0x31, 0x9b, 0x18, 0x01, 0x30, 0x04, 0x28, + 0x59, 0x60, 0xf5, 0xdb, 0x08, 0x48, 0x06, 0x22, + 0x1a, 0x30, 0x09, 0x49, 0xbd, 0xf7, 0x9a, 0xff, + 0x07, 0x48, 0x05, 0x4c, 0x0c, 0x30, 0x0f, 0xc8, + 0x3c, 0x00, 0xcc, 0x25, 0x04, 0x00, 0x20, 0x34, + 0x0f, 0xc4, 0x20, 0x21, 0x20, 0x1c, 0xbd, 0xf7, + 0x62, 0xff, 0xb0, 0xbd, 0x00, 0x00, 0xf8, 0x60, + 0x01, 0x00, 0x2c, 0x09, 0x00, 0x00, 0x58, 0x40, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x07, 0x48, + 0x10, 0xb5, 0x00, 0x68, 0x00, 0x28, 0x08, 0xd0, + 0x06, 0x48, 0xbe, 0xf7, 0x9c, 0xfe, 0x04, 0x1c, + 0xff, 0xf7, 0x9d, 0xfe, 0x20, 0x1c, 0xbe, 0xf7, + 0x96, 0xfe, 0x3c, 0x00, 0x08, 0x26, 0x04, 0x00, + 0x10, 0xbd, 0x00, 0x00, 0x58, 0x57, 0x01, 0x00, + 0xb5, 0xad, 0x00, 0x00, 0x04, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0x88, 0x70, 0x02, 0x21, 0x20, 0x20, + 0x02, 0x4a, 0xd1, 0xf7, 0x91, 0xf8, 0x80, 0xbd, + 0xb4, 0x79, 0x01, 0x00, 0x25, 0xb5, 0x00, 0x00, + 0x80, 0xb5, 0xcc, 0xf7, 0x8f, 0xfe, 0x01, 0x49, + 0x48, 0x61, 0x80, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x18, 0x21, 0x3c, 0x00, 0x44, 0x26, + 0x04, 0x00, 0x14, 0x48, 0xbd, 0xf7, 0x29, 0xff, + 0x14, 0x48, 0x01, 0x21, 0x01, 0x70, 0x00, 0x21, + 0xc1, 0x60, 0x41, 0x70, 0x01, 0x61, 0x00, 0xf0, + 0x02, 0xf9, 0x00, 0xf0, 0xaa, 0xf8, 0x00, 0xf0, + 0x1e, 0xf8, 0x00, 0xf0, 0xba, 0xf9, 0x00, 0xf0, + 0xcc, 0xf9, 0x00, 0xf0, 0x20, 0xf9, 0x00, 0xf0, + 0x64, 0xf9, 0x00, 0xf0, 0xce, 0xf9, 0x00, 0xf0, + 0xfc, 0xf8, 0x00, 0xf0, 0x82, 0xf9, 0x3c, 0x00, + 0x80, 0x26, 0x04, 0x00, 0x00, 0xf0, 0x28, 0xf8, + 0x00, 0xf0, 0x6e, 0xf8, 0x00, 0xf0, 0x4a, 0xf8, + 0xff, 0xf7, 0xc2, 0xff, 0x00, 0xf0, 0x72, 0xf9, + 0x80, 0xbd, 0x00, 0x00, 0x40, 0x7c, 0x01, 0x00, + 0x18, 0x63, 0x01, 0x00, 0xb0, 0xb5, 0x08, 0x4c, + 0x00, 0x25, 0x08, 0x48, 0x25, 0x77, 0x20, 0x60, + 0xce, 0xf7, 0xf0, 0xfd, 0x00, 0x20, 0xe5, 0x62, + 0xd0, 0xf7, 0xd0, 0xfa, 0x21, 0x1f, 0x08, 0x80, + 0x3c, 0x00, 0xbc, 0x26, 0x04, 0x00, 0xd0, 0xf7, + 0x6c, 0xfb, 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x95, 0x75, 0x00, 0x00, 0x80, 0xb5, + 0xcc, 0xf7, 0xc1, 0xfc, 0x80, 0xbd, 0x05, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x08, 0x70, 0x48, 0x70, + 0x03, 0x48, 0x04, 0x49, 0x03, 0x4a, 0x08, 0x30, + 0xcc, 0xf7, 0x27, 0xfe, 0x80, 0xbd, 0x2c, 0x63, + 0x01, 0x00, 0xed, 0xbc, 0x00, 0x00, 0x4d, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x26, 0x04, 0x00, + 0x80, 0xb5, 0xcc, 0xf7, 0x2b, 0xfe, 0x05, 0x49, + 0x48, 0x60, 0x01, 0x1c, 0x04, 0x48, 0xcc, 0xf7, + 0x4b, 0xfe, 0x04, 0x49, 0x03, 0x20, 0xcf, 0xf7, + 0x3d, 0xfe, 0x80, 0xbd, 0x2c, 0x63, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0xc1, 0xbc, 0x00, 0x00, + 0x04, 0x48, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x08, 0xc0, 0x02, 0x49, 0x10, 0x38, + 0x01, 0x60, 0x70, 0x47, 0x3c, 0x00, 0x34, 0x27, + 0x04, 0x00, 0x04, 0x7a, 0x01, 0x00, 0x1c, 0xe6, + 0x01, 0x00, 0x80, 0xb5, 0xcc, 0xf7, 0x09, 0xfe, + 0x05, 0x49, 0x05, 0x4a, 0x48, 0x60, 0x02, 0x21, + 0x24, 0x20, 0xd0, 0xf7, 0xfc, 0xff, 0x03, 0x48, + 0xc9, 0xf7, 0x6b, 0xfd, 0x80, 0xbd, 0x04, 0x7a, + 0x01, 0x00, 0x69, 0xbe, 0x00, 0x00, 0x71, 0xeb, + 0x00, 0x00, 0x10, 0xb5, 0x04, 0x4c, 0x14, 0x21, + 0x20, 0x1c, 0xbd, 0xf7, 0x96, 0xfe, 0x3c, 0x00, + 0x70, 0x27, 0x04, 0x00, 0x02, 0x48, 0x20, 0x60, + 0x10, 0xbd, 0x00, 0x00, 0x14, 0x7a, 0x01, 0x00, + 0xec, 0xe5, 0x01, 0x00, 0x80, 0xb5, 0xcc, 0xf7, + 0xe7, 0xfd, 0x07, 0x49, 0x07, 0x4a, 0x48, 0x60, + 0x02, 0x21, 0x1f, 0x20, 0xd0, 0xf7, 0xda, 0xff, + 0x05, 0x49, 0x01, 0x20, 0x08, 0x60, 0x05, 0x49, + 0x0c, 0x20, 0xcf, 0xf7, 0xf5, 0xfd, 0x80, 0xbd, + 0x14, 0x7a, 0x01, 0x00, 0xd5, 0xbf, 0x00, 0x00, + 0x3c, 0x00, 0xac, 0x27, 0x04, 0x00, 0x80, 0x5a, + 0x01, 0x00, 0x85, 0xff, 0x00, 0x00, 0x80, 0xb5, + 0xff, 0xf7, 0x4f, 0xfd, 0x01, 0x21, 0x21, 0x20, + 0x02, 0x4a, 0xd0, 0xf7, 0xc2, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0xc9, 0xc1, 0x00, 0x00, 0x80, 0xb5, + 0xcc, 0xf7, 0xc1, 0xfd, 0x02, 0x49, 0x08, 0x63, + 0xc9, 0xf7, 0x57, 0xfd, 0x80, 0xbd, 0x28, 0x7a, + 0x01, 0x00, 0x10, 0xb5, 0xcc, 0xf7, 0xb7, 0xfd, + 0x16, 0x4c, 0x3c, 0x00, 0xe8, 0x27, 0x04, 0x00, + 0x20, 0x61, 0xcc, 0xf7, 0xb3, 0xfd, 0x60, 0x61, + 0x14, 0x48, 0x15, 0x49, 0x08, 0x60, 0x16, 0x49, + 0x14, 0x48, 0x08, 0x60, 0xcc, 0xf7, 0xaa, 0xfd, + 0x14, 0x49, 0x08, 0x60, 0x00, 0xf0, 0x34, 0xf8, + 0xff, 0xf7, 0xe0, 0xff, 0xff, 0xf7, 0x5e, 0xff, + 0x00, 0xf0, 0x04, 0xf9, 0x00, 0xf0, 0x8e, 0xf8, + 0xff, 0xf7, 0x6e, 0xff, 0xff, 0xf7, 0xb0, 0xff, + 0xff, 0xf7, 0x8c, 0xff, 0x3c, 0x00, 0x24, 0x28, + 0x04, 0x00, 0xff, 0xf7, 0x04, 0xff, 0x00, 0xf0, + 0xaa, 0xf8, 0x0a, 0x48, 0xbf, 0xf7, 0xbd, 0xff, + 0xc9, 0xf7, 0xbb, 0xfd, 0x09, 0x49, 0x00, 0x20, + 0xcf, 0xf7, 0xa7, 0xfd, 0x10, 0xbd, 0x40, 0x7c, + 0x01, 0x00, 0x7d, 0xb7, 0x00, 0x00, 0x18, 0x7e, + 0x01, 0x00, 0xbd, 0xb8, 0x00, 0x00, 0x1c, 0x7e, + 0x01, 0x00, 0x20, 0x7e, 0x01, 0x00, 0xb9, 0xba, + 0x00, 0x00, 0x81, 0x24, 0x01, 0x00, 0x3c, 0x00, + 0x60, 0x28, 0x04, 0x00, 0x80, 0xb5, 0x38, 0x21, + 0x01, 0x48, 0xbd, 0xf7, 0x19, 0xfe, 0x80, 0xbd, + 0x90, 0x5c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0xb0, 0xb5, 0x0c, 0x4c, 0x0b, 0x4d, 0x00, 0x20, + 0x0c, 0x34, 0x60, 0x60, 0x25, 0x60, 0xe0, 0x60, + 0x0a, 0x20, 0x20, 0x81, 0x28, 0x1c, 0xc8, 0xf7, + 0x3f, 0xfd, 0x28, 0x1c, 0xc8, 0xf7, 0x3a, 0xfd, + 0x08, 0x3d, 0x68, 0x60, 0x04, 0x48, 0xc9, 0xf7, + 0x3c, 0x00, 0x9c, 0x28, 0x04, 0x00, 0x1b, 0xfd, + 0x20, 0x1c, 0xc0, 0xf7, 0x6e, 0xfa, 0x28, 0x80, + 0xb0, 0xbd, 0xb8, 0x7a, 0x01, 0x00, 0xd5, 0x33, + 0x01, 0x00, 0xf8, 0xb5, 0x1f, 0x4e, 0x1d, 0x4c, + 0x00, 0x20, 0x0c, 0x21, 0x41, 0x43, 0x82, 0x00, + 0x01, 0x30, 0x09, 0x19, 0x08, 0x31, 0x00, 0x06, + 0x00, 0x0e, 0x04, 0x28, 0xb1, 0x50, 0xf4, 0xd3, + 0x18, 0x48, 0x0c, 0x38, 0x30, 0x61, 0xce, 0xf7, + 0xf4, 0xf9, 0x3c, 0x00, 0xd8, 0x28, 0x04, 0x00, + 0x14, 0x4c, 0xa0, 0x78, 0x00, 0x09, 0x00, 0x01, + 0xa0, 0x70, 0x00, 0x27, 0xe7, 0x70, 0x67, 0x70, + 0x00, 0x24, 0xa5, 0x00, 0x70, 0x59, 0x07, 0x70, + 0x20, 0x1c, 0xbe, 0xf7, 0x53, 0xf9, 0x71, 0x59, + 0x08, 0x71, 0x00, 0x21, 0x20, 0x1c, 0xce, 0xf7, + 0x7d, 0xf9, 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, + 0x04, 0x2c, 0xee, 0xd3, 0x07, 0x4c, 0x20, 0x78, + 0x00, 0x09, 0x00, 0x01, 0x3c, 0x00, 0x14, 0x29, + 0x04, 0x00, 0x0a, 0x30, 0x20, 0x70, 0x20, 0x78, + 0xf0, 0x21, 0x88, 0x43, 0x30, 0x30, 0x20, 0x70, + 0xa0, 0x78, 0x0f, 0x21, 0x08, 0x43, 0xa0, 0x70, + 0xf8, 0xbd, 0x00, 0x50, 0x07, 0x00, 0x10, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0xcc, 0xf7, 0x9f, 0xfb, + 0x80, 0xbd, 0xb0, 0xb5, 0x0c, 0x4c, 0x0b, 0x4d, + 0x00, 0x20, 0x0c, 0x34, 0x60, 0x60, 0x25, 0x60, + 0xe0, 0x60, 0x0a, 0x20, 0x20, 0x81, 0x3c, 0x00, + 0x50, 0x29, 0x04, 0x00, 0x28, 0x1c, 0xc8, 0xf7, + 0xe1, 0xfc, 0x28, 0x1c, 0xc8, 0xf7, 0xd4, 0xfc, + 0x08, 0x3d, 0x68, 0x60, 0x20, 0x1c, 0xc0, 0xf7, + 0x0d, 0xfa, 0x28, 0x80, 0x02, 0x48, 0xc9, 0xf7, + 0x9b, 0xfc, 0xb0, 0xbd, 0x2c, 0x7b, 0x01, 0x00, + 0x49, 0x00, 0x01, 0x00, 0x80, 0xb5, 0xca, 0xf7, + 0x2f, 0xf8, 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, + 0xb0, 0xb5, 0x12, 0x4d, 0x3c, 0x21, 0x28, 0x1c, + 0x3c, 0x00, 0x8c, 0x29, 0x04, 0x00, 0xbd, 0xf7, + 0x86, 0xfd, 0x0f, 0x48, 0x28, 0x21, 0x3c, 0x30, + 0xbd, 0xf7, 0x81, 0xfd, 0x0d, 0x48, 0x00, 0x21, + 0x14, 0x38, 0x01, 0x61, 0xc1, 0x60, 0xff, 0x21, + 0x01, 0x70, 0x41, 0x70, 0x0a, 0x49, 0x0a, 0x4a, + 0x41, 0x60, 0x01, 0x21, 0x0c, 0x20, 0xd0, 0xf7, + 0xc8, 0xfe, 0x2c, 0x1c, 0x30, 0x34, 0x0c, 0x3d, + 0x00, 0x20, 0xd0, 0xf7, 0x4a, 0xf9, 0x20, 0x80, + 0x0c, 0x3c, 0x3c, 0x00, 0xc8, 0x29, 0x04, 0x00, + 0xac, 0x42, 0xf8, 0xd1, 0xb0, 0xbd, 0x00, 0x00, + 0x60, 0x7b, 0x01, 0x00, 0x20, 0xa1, 0x07, 0x00, + 0x35, 0xcd, 0x00, 0x00, 0x08, 0x49, 0x00, 0x20, + 0x0c, 0x22, 0x42, 0x43, 0x52, 0x18, 0x10, 0x71, + 0x01, 0x30, 0x05, 0x28, 0xf8, 0xdb, 0x04, 0x48, + 0x00, 0x21, 0x08, 0x38, 0x01, 0x70, 0x41, 0x60, + 0xff, 0x21, 0x41, 0x70, 0x70, 0x47, 0x00, 0x00, + 0x74, 0x7a, 0x01, 0x00, 0x3c, 0x00, 0x04, 0x2a, + 0x04, 0x00, 0x80, 0xb5, 0x78, 0x21, 0x01, 0x48, + 0xbd, 0xf7, 0x47, 0xfd, 0x80, 0xbd, 0xc4, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0xca, 0xf7, 0x97, 0xfa, + 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, + 0x0b, 0x4c, 0xff, 0x21, 0x05, 0x31, 0x20, 0x1c, + 0xbd, 0xf7, 0x37, 0xfd, 0x09, 0x48, 0xf0, 0x21, + 0x08, 0x51, 0x20, 0x1c, 0x40, 0x30, 0xc5, 0xf7, + 0x8e, 0xf9, 0x6c, 0x21, 0x06, 0x48, 0x3c, 0x00, + 0x40, 0x2a, 0x04, 0x00, 0xbd, 0xf7, 0x2c, 0xfd, + 0x04, 0x48, 0xc0, 0x21, 0x6c, 0x30, 0xbd, 0xf7, + 0x27, 0xfd, 0x10, 0xbd, 0xc4, 0x69, 0x01, 0x00, + 0xb0, 0xd9, 0x01, 0x00, 0xc8, 0x6a, 0x01, 0x00, + 0xb0, 0xb5, 0x0b, 0x4d, 0x00, 0x24, 0x1c, 0x20, + 0x60, 0x43, 0x40, 0x19, 0x6c, 0x30, 0xc3, 0xf7, + 0x0f, 0xfe, 0x01, 0x34, 0x04, 0x2c, 0xf6, 0xdb, + 0xcc, 0xf7, 0x6e, 0xfc, 0xa8, 0x63, 0xc7, 0xf7, + 0x3c, 0x00, 0x7c, 0x2a, 0x04, 0x00, 0x75, 0xf9, + 0x04, 0x48, 0xc9, 0xf7, 0x1c, 0xfc, 0x03, 0x48, + 0xcf, 0xf7, 0x03, 0xfa, 0xb0, 0xbd, 0xc4, 0x69, + 0x01, 0x00, 0xfd, 0x80, 0x00, 0x00, 0xe1, 0x22, + 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, 0x00, 0x20, + 0x20, 0x80, 0x03, 0x48, 0x06, 0x21, 0x08, 0x30, + 0xbd, 0xf7, 0xd5, 0xfc, 0x14, 0x20, 0x60, 0x60, + 0x10, 0xbd, 0x98, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x08, 0x4c, 0x3c, 0x00, 0xb8, 0x2a, 0x04, 0x00, + 0x00, 0x20, 0x20, 0x80, 0x60, 0x80, 0x06, 0x48, + 0x06, 0x21, 0x0c, 0x30, 0xbd, 0xf7, 0xc6, 0xfc, + 0x03, 0x48, 0x06, 0x21, 0x12, 0x30, 0xbd, 0xf7, + 0xc1, 0xfc, 0x14, 0x20, 0xa0, 0x60, 0x10, 0xbd, + 0x58, 0x7c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x0d, 0x20, 0x05, 0x4a, + 0xd0, 0xf7, 0x2e, 0xfe, 0x04, 0x48, 0xc8, 0xf7, + 0x1f, 0xfc, 0x04, 0x48, 0x3c, 0x00, 0xf4, 0x2a, + 0x04, 0x00, 0xca, 0xf7, 0x44, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x31, 0xd4, 0x00, 0x00, 0x51, 0xb1, + 0x00, 0x00, 0x09, 0xb1, 0x00, 0x00, 0x08, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x08, 0x60, 0xff, 0xf7, + 0xd0, 0xff, 0xff, 0xf7, 0xc0, 0xff, 0xff, 0xf7, + 0x04, 0xfc, 0x00, 0xf0, 0x4a, 0xf8, 0xff, 0xf7, + 0x0a, 0xfc, 0x00, 0xf0, 0x3c, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, 0x3c, 0x00, + 0x30, 0x2b, 0x04, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x29, 0xf8, 0x00, 0xf0, 0x1b, 0xf8, 0x00, 0xf0, + 0x51, 0xf8, 0x00, 0xf0, 0x31, 0xf8, 0x80, 0xbd, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0xff, 0x21, 0x89, 0x31, 0x02, 0x48, + 0xbd, 0xf7, 0xa2, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0xdc, 0x71, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x49, + 0x08, 0x20, 0xcf, 0xf7, 0x11, 0xfc, 0x80, 0xbd, + 0x3c, 0x00, 0x6c, 0x2b, 0x04, 0x00, 0x59, 0xd9, + 0x00, 0x00, 0x80, 0xb5, 0x03, 0x48, 0xcf, 0xf7, + 0x4c, 0xf9, 0x02, 0x49, 0x48, 0x80, 0x80, 0xbd, + 0x00, 0x00, 0x8d, 0x1f, 0x00, 0x00, 0x98, 0x7c, + 0x01, 0x00, 0x80, 0xb5, 0x03, 0x48, 0xcf, 0xf7, + 0x40, 0xf9, 0x02, 0x49, 0x88, 0x80, 0x80, 0xbd, + 0x00, 0x00, 0xd5, 0x23, 0x00, 0x00, 0x58, 0x7c, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x80, 0xb5, + 0x02, 0x48, 0x3c, 0x00, 0xa8, 0x2b, 0x04, 0x00, + 0xca, 0xf7, 0xe4, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x71, 0xe0, 0x00, 0x00, 0x80, 0xb5, 0xcc, 0xf7, + 0xa5, 0xfb, 0x02, 0x21, 0x0f, 0x20, 0x06, 0x4a, + 0xd0, 0xf7, 0xc2, 0xfd, 0x14, 0x21, 0x05, 0x48, + 0xbd, 0xf7, 0x68, 0xfc, 0x03, 0x48, 0x78, 0x21, + 0x14, 0x30, 0xbd, 0xf7, 0x63, 0xfc, 0x80, 0xbd, + 0x35, 0xe2, 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, + 0x80, 0xb5, 0xcc, 0xf7, 0x3c, 0x00, 0xe4, 0x2b, + 0x04, 0x00, 0xb7, 0xfb, 0x05, 0x49, 0x08, 0x61, + 0x05, 0x49, 0x0e, 0x20, 0xcf, 0xf7, 0xcd, 0xfb, + 0x04, 0x49, 0x08, 0x20, 0xcf, 0xf7, 0xc9, 0xfb, + 0x80, 0xbd, 0xec, 0x65, 0x01, 0x00, 0x01, 0x02, + 0x01, 0x00, 0xc1, 0x2e, 0x00, 0x00, 0x01, 0x49, + 0x00, 0x20, 0x08, 0x70, 0x70, 0x47, 0x40, 0xd9, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x01, 0x49, + 0x00, 0x20, 0x08, 0x70, 0x70, 0x47, 0x3c, 0x00, + 0x20, 0x2c, 0x04, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x07, 0x48, 0xc8, 0xf7, 0xf2, 0xff, + 0x06, 0x49, 0x48, 0x60, 0x06, 0x48, 0xc0, 0xf7, + 0x07, 0xfb, 0x06, 0x48, 0xc0, 0xf7, 0x86, 0xfb, + 0x05, 0x48, 0xc9, 0xf7, 0xa3, 0xfa, 0x80, 0xbd, + 0xa9, 0xe4, 0x00, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0xb9, 0xe4, 0x00, 0x00, 0x85, 0x2e, 0x00, 0x00, + 0x81, 0xe4, 0x00, 0x00, 0x07, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0x5c, 0x2c, 0x04, 0x00, 0x00, 0x21, + 0x00, 0x22, 0x00, 0x23, 0x0e, 0xc0, 0x08, 0xc0, + 0x10, 0x38, 0xc8, 0x21, 0x01, 0x60, 0x00, 0x21, + 0x0c, 0x38, 0x02, 0x4a, 0xcc, 0xf7, 0x61, 0xfb, + 0x80, 0xbd, 0xd0, 0x60, 0x01, 0x00, 0xfd, 0xe5, + 0x00, 0x00, 0x80, 0xb5, 0xcc, 0xf7, 0x67, 0xfb, + 0x04, 0x49, 0x08, 0x60, 0x01, 0x1c, 0x02, 0x48, + 0x04, 0x30, 0xcc, 0xf7, 0x86, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x98, 0x2c, 0x04, 0x00, + 0xc0, 0x60, 0x01, 0x00, 0x09, 0x48, 0x80, 0xb5, + 0x0a, 0x21, 0x01, 0x70, 0x41, 0x70, 0x08, 0x49, + 0x08, 0x4a, 0x81, 0x60, 0x00, 0x21, 0xc1, 0x60, + 0x52, 0x79, 0x82, 0x70, 0x01, 0x61, 0x41, 0x61, + 0x28, 0x21, 0x18, 0x30, 0xbd, 0xf7, 0xee, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x7c, 0x78, 0x01, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x0c, 0x5a, 0x01, 0x00, + 0xf8, 0xb5, 0x0f, 0x49, 0x3c, 0x00, 0xd4, 0x2c, + 0x04, 0x00, 0x0f, 0x48, 0x0d, 0x88, 0x4f, 0x88, + 0x06, 0x79, 0x00, 0x24, 0x30, 0x1b, 0x68, 0x43, + 0x68, 0x23, 0x0c, 0x49, 0x58, 0x43, 0x41, 0x18, + 0x7d, 0x20, 0xc0, 0x00, 0xbd, 0xf7, 0x0f, 0xfd, + 0x61, 0x00, 0x09, 0x4a, 0xa6, 0x42, 0x50, 0x52, + 0x00, 0xd1, 0x3d, 0x1c, 0x01, 0x34, 0x24, 0x06, + 0x24, 0x0e, 0x10, 0x2c, 0xea, 0xd3, 0x05, 0x49, + 0x01, 0x20, 0x08, 0x61, 0xf8, 0xbd, 0x3c, 0x00, + 0x10, 0x2d, 0x04, 0x00, 0xf6, 0x59, 0x01, 0x00, + 0x0c, 0x5a, 0x01, 0x00, 0x34, 0x44, 0x0f, 0x00, + 0x12, 0x5a, 0x01, 0x00, 0x7c, 0x78, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0xe7, 0xfa, 0x02, 0x49, + 0x01, 0x20, 0x08, 0x61, 0x80, 0xbd, 0x00, 0x00, + 0x7c, 0x78, 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x08, 0x1c, 0x0f, 0x49, 0x49, 0x79, 0x00, 0x29, + 0x01, 0xd1, 0x0e, 0x4b, 0x00, 0xe0, 0x0e, 0x4b, + 0x3c, 0x00, 0x4c, 0x2d, 0x04, 0x00, 0x00, 0x2c, + 0x07, 0xd0, 0x04, 0x21, 0x11, 0x80, 0x0a, 0x1c, + 0x01, 0x24, 0x19, 0x1c, 0xbd, 0xf7, 0xcd, 0xfb, + 0x0a, 0xe0, 0x01, 0x24, 0x01, 0x1c, 0x18, 0x1c, + 0x12, 0x88, 0xbd, 0xf7, 0xc6, 0xfb, 0x00, 0xf0, + 0xc4, 0xfa, 0x05, 0x49, 0x01, 0x20, 0x08, 0x61, + 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0x0c, 0x5a, + 0x01, 0x00, 0xfe, 0x59, 0x01, 0x00, 0xfa, 0x59, + 0x01, 0x00, 0x3c, 0x00, 0x88, 0x2d, 0x04, 0x00, + 0x7c, 0x78, 0x01, 0x00, 0x0d, 0x48, 0x8c, 0xb5, + 0xc1, 0x88, 0x00, 0xab, 0x0c, 0x4a, 0x99, 0x80, + 0x01, 0x89, 0x04, 0x20, 0xd9, 0x80, 0x18, 0x80, + 0x02, 0x21, 0x13, 0x20, 0xd0, 0xf7, 0xd0, 0xfc, + 0x00, 0xf0, 0xa6, 0xfa, 0x07, 0x49, 0x01, 0x20, + 0x08, 0x61, 0xff, 0xf7, 0x8d, 0xff, 0x6a, 0x46, + 0x01, 0xa9, 0x00, 0x20, 0xff, 0xf7, 0xbc, 0xff, + 0x8c, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0xc4, 0x2d, + 0x04, 0x00, 0xf4, 0x59, 0x01, 0x00, 0x95, 0xf9, + 0x00, 0x00, 0x7c, 0x78, 0x01, 0x00, 0xf8, 0xb5, + 0x13, 0x4e, 0x01, 0x25, 0xb5, 0x70, 0x05, 0x20, + 0xf0, 0x70, 0x11, 0x49, 0x10, 0x48, 0x0e, 0xc9, + 0x2c, 0x30, 0x0e, 0xc0, 0x00, 0x20, 0x70, 0x61, + 0x0f, 0x48, 0x0f, 0x49, 0x10, 0x4f, 0x00, 0x24, + 0x48, 0x60, 0xa0, 0x00, 0x39, 0x58, 0x20, 0x1c, + 0xd1, 0xf7, 0xd7, 0xf8, 0x01, 0x34, 0x3c, 0x00, + 0x00, 0x2e, 0x04, 0x00, 0x10, 0x2c, 0xf7, 0xd3, + 0x06, 0x4c, 0x0b, 0x4a, 0x20, 0x34, 0x20, 0x1c, + 0x0a, 0x49, 0xb5, 0x60, 0xcc, 0xf7, 0x92, 0xfa, + 0xcc, 0xf7, 0x9e, 0xfa, 0x30, 0x61, 0x20, 0x60, + 0xf8, 0xbd, 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, + 0xb0, 0x58, 0x01, 0x00, 0x04, 0x18, 0x02, 0x00, + 0x60, 0x00, 0x07, 0x00, 0xd4, 0x44, 0x01, 0x00, + 0x45, 0xfa, 0x00, 0x00, 0x71, 0xfa, 0x00, 0x00, + 0x3c, 0x00, 0x3c, 0x2e, 0x04, 0x00, 0x0c, 0x49, + 0x30, 0xb5, 0x00, 0x23, 0xcc, 0x56, 0x0b, 0x4b, + 0x00, 0x20, 0xf0, 0x25, 0x1a, 0x5c, 0x11, 0x07, + 0x09, 0x0f, 0x09, 0x19, 0x0f, 0x29, 0x01, 0xdd, + 0x0f, 0x21, 0x02, 0xe0, 0x00, 0x29, 0x00, 0xda, + 0x00, 0x21, 0x2a, 0x40, 0x51, 0x18, 0x19, 0x54, + 0x01, 0x30, 0x0e, 0x28, 0xee, 0xdb, 0x30, 0xbd, + 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, 0xc0, 0x58, + 0x01, 0x00, 0x3c, 0x00, 0x78, 0x2e, 0x04, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x00, 0x28, 0x08, 0xd0, + 0x01, 0x24, 0x14, 0x80, 0x05, 0x20, 0xcc, 0xf7, + 0xb5, 0xf8, 0x80, 0x03, 0xc0, 0x0f, 0x28, 0x70, + 0x07, 0xe0, 0x28, 0x78, 0x01, 0x22, 0x41, 0x04, + 0x52, 0x04, 0x05, 0x20, 0xd0, 0xf7, 0xae, 0xfd, + 0x01, 0x24, 0x20, 0x1c, 0xb0, 0xbd, 0x00, 0x00, + 0x98, 0xb5, 0x05, 0x4c, 0x60, 0x68, 0xcc, 0xf7, + 0xf5, 0xfd, 0x00, 0x90, 0x3c, 0x00, 0xb4, 0x2e, + 0x04, 0x00, 0x00, 0xab, 0x18, 0x88, 0xe0, 0x80, + 0xce, 0xf7, 0xfb, 0xff, 0x98, 0xbd, 0xa0, 0x58, + 0x01, 0x00, 0x38, 0xb5, 0x03, 0x1c, 0x08, 0x1c, + 0x00, 0x24, 0x00, 0x2b, 0x17, 0x4d, 0x07, 0xd0, + 0x0e, 0x21, 0x11, 0x80, 0x0a, 0x1c, 0x01, 0x24, + 0x29, 0x1c, 0xbd, 0xf7, 0x0c, 0xfb, 0x22, 0xe0, + 0x11, 0x88, 0x04, 0x29, 0x17, 0xd1, 0x01, 0x1c, + 0x68, 0x46, 0x12, 0x88, 0xbd, 0xf7, 0x3c, 0x00, + 0xf0, 0x2e, 0x04, 0x00, 0x03, 0xfb, 0x00, 0x98, + 0x00, 0x28, 0x01, 0xdb, 0x32, 0x30, 0x00, 0xe0, + 0x32, 0x38, 0x00, 0x90, 0x01, 0x1c, 0x64, 0x20, + 0xbd, 0xf7, 0x98, 0xfb, 0x01, 0x06, 0x09, 0x16, + 0x00, 0x90, 0x0e, 0x22, 0x28, 0x1c, 0xbd, 0xf7, + 0x85, 0xfb, 0x06, 0xe0, 0x0e, 0x29, 0x05, 0xd1, + 0x0a, 0x1c, 0x01, 0x1c, 0x28, 0x1c, 0xbd, 0xf7, + 0xe9, 0xfa, 0x01, 0x24, 0x20, 0x1c, 0x38, 0xbd, + 0x3c, 0x00, 0x2c, 0x2f, 0x04, 0x00, 0xda, 0x59, + 0x01, 0x00, 0x38, 0xb5, 0x03, 0x1c, 0x08, 0x1c, + 0x00, 0x24, 0x00, 0x2b, 0x17, 0x4d, 0x07, 0xd0, + 0x0e, 0x21, 0x11, 0x80, 0x0a, 0x1c, 0x01, 0x24, + 0x29, 0x1c, 0xbd, 0xf7, 0xd6, 0xfa, 0x22, 0xe0, + 0x11, 0x88, 0x04, 0x29, 0x17, 0xd1, 0x01, 0x1c, + 0x68, 0x46, 0x12, 0x88, 0xbd, 0xf7, 0xcd, 0xfa, + 0x00, 0x98, 0x00, 0x28, 0x01, 0xdb, 0x32, 0x30, + 0x00, 0xe0, 0x3c, 0x00, 0x68, 0x2f, 0x04, 0x00, + 0x32, 0x38, 0x00, 0x90, 0x01, 0x1c, 0x64, 0x20, + 0xbd, 0xf7, 0x62, 0xfb, 0x01, 0x06, 0x09, 0x16, + 0x00, 0x90, 0x0e, 0x22, 0x28, 0x1c, 0xbd, 0xf7, + 0x4f, 0xfb, 0x06, 0xe0, 0x0e, 0x29, 0x05, 0xd1, + 0x0a, 0x1c, 0x01, 0x1c, 0x28, 0x1c, 0xbd, 0xf7, + 0xb3, 0xfa, 0x01, 0x24, 0x20, 0x1c, 0x38, 0xbd, + 0xcc, 0x59, 0x01, 0x00, 0x03, 0x48, 0x80, 0xb5, + 0x01, 0x78, 0x00, 0x20, 0x3c, 0x00, 0xa4, 0x2f, + 0x04, 0x00, 0xcc, 0xf7, 0xb4, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xa6, 0x58, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x02, 0x49, 0x03, 0x20, 0x08, 0x70, + 0x00, 0x20, 0x48, 0x70, 0x70, 0x47, 0x9c, 0x73, + 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, 0x11, 0x20, + 0x02, 0x4a, 0xd0, 0xf7, 0xbc, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xa1, 0xfe, 0x00, 0x00, 0xf0, 0xb5, + 0x0b, 0x4f, 0x1c, 0x1c, 0x00, 0x23, 0x3c, 0x00, + 0xe0, 0x2f, 0x04, 0x00, 0xfd, 0x56, 0x2b, 0x1c, + 0x06, 0x2d, 0x01, 0xd1, 0x01, 0x20, 0xf0, 0xbd, + 0x06, 0x4e, 0x05, 0x1c, 0xd8, 0x00, 0x34, 0x36, + 0x35, 0x54, 0x80, 0x19, 0x41, 0x70, 0x82, 0x70, + 0x44, 0x60, 0x58, 0x1c, 0x38, 0x70, 0x00, 0x20, + 0xf0, 0xbd, 0x00, 0x00, 0x98, 0x5a, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x0c, 0x48, 0x00, 0xf0, + 0x21, 0xf9, 0x60, 0x78, 0xff, 0x28, 0x04, 0xd0, + 0x3c, 0x00, 0x1c, 0x30, 0x04, 0x00, 0x01, 0x23, + 0xe0, 0x56, 0x06, 0x21, 0x00, 0xf0, 0xcd, 0xf8, + 0x08, 0x4a, 0x01, 0x21, 0x10, 0x78, 0x08, 0x43, + 0x07, 0x49, 0x08, 0x70, 0x20, 0x23, 0x18, 0x43, + 0x08, 0x70, 0x80, 0x23, 0x18, 0x43, 0x10, 0x70, + 0x08, 0x70, 0x10, 0xbd, 0x00, 0x00, 0x91, 0x9b, + 0x00, 0x00, 0xe0, 0x60, 0x01, 0x00, 0x04, 0x00, + 0x07, 0x00, 0x10, 0xb5, 0x0a, 0x49, 0x04, 0x1c, + 0x08, 0x78, 0x3c, 0x00, 0x58, 0x30, 0x04, 0x00, + 0x40, 0x08, 0x40, 0x00, 0x08, 0x70, 0x08, 0x49, + 0x08, 0x70, 0x08, 0x48, 0x00, 0xf0, 0xf8, 0xf8, + 0x60, 0x78, 0xff, 0x28, 0x04, 0xd0, 0x01, 0x23, + 0xe0, 0x56, 0x05, 0x21, 0x00, 0xf0, 0xa4, 0xf8, + 0x10, 0xbd, 0x00, 0x00, 0xe0, 0x60, 0x01, 0x00, + 0x04, 0x00, 0x07, 0x00, 0x91, 0x9b, 0x00, 0x00, + 0x03, 0x48, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x08, 0xc0, 0x3c, 0x00, 0x94, 0x30, + 0x04, 0x00, 0x70, 0x47, 0x00, 0x00, 0xe8, 0x60, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, + 0x07, 0x4c, 0x00, 0x20, 0x60, 0x60, 0x20, 0x80, + 0xe0, 0x60, 0x02, 0x21, 0x14, 0x20, 0x04, 0x4a, + 0xd0, 0xf7, 0x49, 0xfb, 0x02, 0x48, 0x10, 0x30, + 0xa0, 0x60, 0x10, 0xbd, 0x00, 0x00, 0x58, 0x75, + 0x01, 0x00, 0x05, 0x1d, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x10, 0xb5, 0x48, 0x21, 0x3c, 0x00, + 0xd0, 0x30, 0x04, 0x00, 0x0a, 0x48, 0xbd, 0xf7, + 0xe3, 0xf9, 0x09, 0x4c, 0xe0, 0x21, 0x48, 0x34, + 0x20, 0x1c, 0xbd, 0xf7, 0xdd, 0xf9, 0x00, 0x20, + 0xc1, 0x00, 0x09, 0x19, 0x0a, 0x1c, 0x08, 0x32, + 0x01, 0x30, 0x1b, 0x28, 0x4a, 0x60, 0xf7, 0xd3, + 0x01, 0x48, 0x04, 0x38, 0x04, 0x60, 0x10, 0xbd, + 0x68, 0x5b, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x23, 0x20, 0x02, 0x4a, 0xd0, 0xf7, 0x1e, 0xfb, + 0x3c, 0x00, 0x0c, 0x31, 0x04, 0x00, 0x80, 0xbd, + 0x00, 0x00, 0x45, 0x23, 0x01, 0x00, 0x80, 0xb5, + 0xff, 0xf7, 0x6b, 0xf8, 0x80, 0xbd, 0x70, 0x47, + 0x00, 0x00, 0xf8, 0xb5, 0x01, 0x20, 0x1d, 0x49, + 0xc0, 0x07, 0x48, 0x60, 0x1d, 0x49, 0xff, 0x20, + 0x08, 0x73, 0x1c, 0x4e, 0x10, 0x20, 0x30, 0x60, + 0x05, 0x01, 0x35, 0x60, 0x1b, 0x4c, 0x80, 0x21, + 0x20, 0x1c, 0xbd, 0xf7, 0xac, 0xf9, 0x00, 0x21, + 0x19, 0x4a, 0x3c, 0x00, 0x48, 0x31, 0x04, 0x00, + 0x15, 0x4f, 0x00, 0x20, 0x0b, 0x01, 0x1b, 0x19, + 0x5a, 0x60, 0xcb, 0x00, 0xdb, 0x19, 0x18, 0x74, + 0x01, 0x31, 0x08, 0x29, 0xf6, 0xdb, 0x0f, 0x4c, + 0xfa, 0x21, 0x21, 0x80, 0x12, 0x49, 0x61, 0x80, + 0xa0, 0x60, 0x6a, 0x46, 0x11, 0x49, 0x04, 0x20, + 0xbd, 0xf7, 0x30, 0xff, 0x6a, 0x46, 0x10, 0x49, + 0x08, 0x20, 0xbd, 0xf7, 0x2b, 0xff, 0x10, 0x20, + 0x70, 0x60, 0x75, 0x60, 0x3c, 0x00, 0x84, 0x31, + 0x04, 0x00, 0x60, 0x68, 0x02, 0x21, 0x08, 0x43, + 0x60, 0x60, 0x0b, 0x49, 0x06, 0x4a, 0x08, 0x1c, + 0x10, 0x30, 0x08, 0x3a, 0x03, 0xc2, 0xf8, 0xbd, + 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0xac, 0x73, + 0x01, 0x00, 0xd1, 0x75, 0x00, 0x00, 0x20, 0x4e, + 0x00, 0x00, 0x05, 0x2c, 0x01, 0x00, 0x11, 0x2c, + 0x01, 0x00, 0x00, 0xa0, 0x07, 0x00, 0x3c, 0x00, + 0xc0, 0x31, 0x04, 0x00, 0x70, 0xb5, 0x0e, 0x1c, + 0x00, 0x24, 0xc4, 0xf7, 0x5b, 0xfe, 0x00, 0x28, + 0x3b, 0xd0, 0x45, 0x68, 0xff, 0x2d, 0x38, 0xd0, + 0x0c, 0x2e, 0x28, 0xd2, 0x01, 0xa3, 0x9b, 0x5d, + 0x5b, 0x00, 0x9f, 0x44, 0x05, 0x07, 0x09, 0x0b, + 0x0d, 0x10, 0x13, 0x16, 0x18, 0x1b, 0x1e, 0x21, + 0x18, 0x24, 0x20, 0xe0, 0x30, 0x24, 0x1e, 0xe0, + 0x60, 0x24, 0x1c, 0xe0, 0xc0, 0x24, 0x1a, 0xe0, + 0x3c, 0x00, 0xfc, 0x31, 0x04, 0x00, 0xff, 0x24, + 0x81, 0x34, 0x17, 0xe0, 0x09, 0x24, 0xa4, 0x01, + 0x14, 0xe0, 0x09, 0x24, 0xe4, 0x01, 0x11, 0xe0, + 0x0f, 0x4c, 0x0f, 0xe0, 0x09, 0x24, 0x24, 0x02, + 0x0c, 0xe0, 0x09, 0x24, 0x64, 0x02, 0x09, 0xe0, + 0x03, 0x24, 0xe4, 0x02, 0x06, 0xe0, 0x09, 0x24, + 0xa4, 0x02, 0x03, 0xe0, 0x09, 0x21, 0x9e, 0x20, + 0xbe, 0xf7, 0x39, 0xf8, 0x60, 0x00, 0x00, 0x19, + 0x40, 0x08, 0x3c, 0x00, 0x38, 0x32, 0x04, 0x00, + 0x05, 0x49, 0x80, 0x04, 0x40, 0x18, 0x05, 0x4a, + 0xa9, 0x00, 0x89, 0x18, 0x48, 0x60, 0x64, 0x20, + 0x60, 0x43, 0x70, 0xbd, 0xdc, 0x07, 0x00, 0x00, + 0x80, 0x38, 0x01, 0x00, 0x04, 0x00, 0x07, 0x00, + 0x02, 0x49, 0x80, 0xb5, 0x08, 0x60, 0xd0, 0xf7, + 0x97, 0xf8, 0x80, 0xbd, 0x5c, 0x5b, 0x01, 0x00, + 0xf8, 0xb5, 0x00, 0x26, 0x17, 0x4c, 0x17, 0x4b, + 0x19, 0x49, 0x26, 0x70, 0x3c, 0x00, 0x74, 0x32, + 0x04, 0x00, 0x00, 0x20, 0x14, 0x33, 0x0d, 0x88, + 0x15, 0x4e, 0x15, 0x4a, 0x04, 0xe0, 0xc1, 0x00, + 0xcf, 0x18, 0x7a, 0x60, 0x5e, 0x50, 0x01, 0x30, + 0xa8, 0x42, 0xf8, 0xdb, 0xc6, 0xf7, 0x2b, 0xfd, + 0xff, 0x21, 0x11, 0x4d, 0xa5, 0x31, 0x28, 0x1c, + 0xbd, 0xf7, 0xff, 0xf8, 0x00, 0x21, 0x28, 0x1c, + 0x02, 0x1c, 0x14, 0x32, 0xc2, 0x60, 0x10, 0x1c, + 0x01, 0x31, 0x14, 0x29, 0xf8, 0xdb, 0x3c, 0x00, + 0xb0, 0x32, 0x04, 0x00, 0x00, 0x26, 0xc6, 0x60, + 0x05, 0x48, 0x0c, 0x30, 0x60, 0xc0, 0x09, 0x48, + 0x18, 0x21, 0xbd, 0xf7, 0xed, 0xf8, 0x01, 0x20, + 0x04, 0x34, 0x41, 0xc4, 0x00, 0x20, 0xf8, 0xbd, + 0x70, 0x5d, 0x01, 0x00, 0x09, 0xa0, 0x00, 0x00, + 0x30, 0xd9, 0x01, 0x00, 0x56, 0x57, 0x01, 0x00, + 0x04, 0x5f, 0x01, 0x00, 0xa8, 0x60, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0xcf, 0xf7, 0xb6, 0xfc, + 0x3c, 0x00, 0xec, 0x32, 0x04, 0x00, 0x01, 0x49, + 0x08, 0x80, 0x80, 0xbd, 0x00, 0x00, 0x2c, 0x74, + 0x01, 0x00, 0x11, 0x48, 0xf8, 0xb5, 0x41, 0x79, + 0x00, 0x29, 0x02, 0xd1, 0x05, 0x78, 0x0f, 0x4e, + 0x01, 0xe0, 0x45, 0x78, 0x0f, 0x4e, 0x02, 0x23, + 0xf7, 0x5e, 0x00, 0x24, 0x60, 0x1b, 0x78, 0x43, + 0x64, 0x23, 0x0c, 0x49, 0x58, 0x43, 0x41, 0x18, + 0x7d, 0x20, 0xc0, 0x00, 0xbd, 0xf7, 0xf5, 0xf9, + 0x61, 0x00, 0x3c, 0x00, 0x28, 0x33, 0x04, 0x00, + 0x09, 0x4a, 0xac, 0x42, 0x50, 0x52, 0x01, 0xd1, + 0x00, 0x23, 0xf7, 0x5e, 0x01, 0x34, 0x24, 0x06, + 0x24, 0x0e, 0x10, 0x2c, 0xe9, 0xd3, 0xf8, 0xbd, + 0x0c, 0x5a, 0x01, 0x00, 0xfe, 0x59, 0x01, 0x00, + 0xfa, 0x59, 0x01, 0x00, 0x34, 0x44, 0x0f, 0x00, + 0x32, 0x5a, 0x01, 0x00, 0x38, 0xb5, 0x10, 0x4c, + 0xbe, 0x25, 0x25, 0x73, 0x20, 0x7a, 0x18, 0x21, + 0x88, 0x43, 0x20, 0x72, 0x3c, 0x00, 0x64, 0x33, + 0x04, 0x00, 0x6a, 0x46, 0x0d, 0x49, 0x0d, 0x20, + 0xbd, 0xf7, 0x33, 0xfe, 0x01, 0x20, 0x0b, 0x49, + 0x40, 0x03, 0x08, 0x60, 0x48, 0x60, 0x25, 0x73, + 0x2d, 0x20, 0xc0, 0x03, 0x20, 0x60, 0x25, 0x73, + 0x20, 0x7a, 0x10, 0x21, 0x08, 0x43, 0x20, 0x72, + 0x06, 0x48, 0x06, 0x49, 0x08, 0x60, 0x00, 0x20, + 0x48, 0x60, 0x38, 0xbd, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x00, 0x8d, 0x3e, 0x01, 0x00, 0x24, 0x00, + 0xa0, 0x33, 0x04, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x00, 0x87, 0x93, 0x03, 0x04, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x15, 0x20, 0x02, 0x4a, + 0xd0, 0xf7, 0xc8, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0x0d, 0x3e, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x60, 0x04, 0x00, 0x44, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x40, 0x20, 0x07, 0x00, + 0xff, 0xff, 0xff, 0xff, +}; +const uint32_t fw_len = sizeof(fw_buf) / sizeof(fw_buf[0]); diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_os.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_os.h new file mode 100644 index 000000000..1a3b75f35 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_os.h @@ -0,0 +1,35 @@ +#ifndef WL_OS_H +#define WL_OS_H + +#include <stdarg.h> +#include <stdlib.h> + +void *owl_os_alloc(size_t size); +void *owl_os_realloc(void *ptr, size_t size); +void owl_os_free(void *p); +void *owl_os_memcpy(void *dst, const void *src, size_t n); +void *owl_os_memset(void *s, int c, size_t n); +void *owl_os_memmove(void *dst, const void *src, size_t n); +size_t owl_os_strlen(char *s); +char *owl_os_strncpy(char *dst, const char *src, size_t n); +int owl_os_strncmp(const char *s1, const char *s2, size_t n); +int owl_os_strcmp(const char *s1, const char *s2); +char *owl_os_strcpy(char *dst, const char *src); +char *owl_os_strdup(const char *s); +char *owl_os_strndup(const char *s, size_t n); +int owl_os_memcmp(const void *s1, const void *s2, size_t n); +long int owl_os_strtol(const char *nptr, char **endptr, int base); +char *owl_os_strchr(const char *s, int c); +char *owl_os_strrchr(const char *s, int c); +int owl_os_strcasecmp(const char *s1, const char *s2); +char *owl_os_strstr(const char *haystack, const char *needle); + +int owl_os_snprintf(char *str, size_t size, const char *format, ...) + __attribute__((format(printf, 3, 4))); + +int owl_os_vprintf(const char *format, va_list arg); /* debug only */ +int owl_os_printf(const char *format, ...) /* debug only */ + __attribute__((format(printf, 1, 2))); + +#endif /* WL_OS_H */ + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_sdio.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_sdio.h new file mode 100644 index 000000000..ee08fad71 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_sdio.h @@ -0,0 +1,172 @@ +/*! + * \file wl_sdio.h + * \brief SDIO interface for wl_api. + * Copyright (C) 2010 HD Wireless AB + * + * You should have received a copy of the license along with this library. + */ + +#ifndef WL_SDIO_H +#define WL_SDIO_H + +/** \defgroup wl_sdio SDIO Interface + * + * These functions implement the interface that the wl_api library + * needs to work with a SDIO transport layer. + * + * The functions prototyped here must be implemented when porting the + * wl_api library to a new platform with a different SDIO configuration + * + * On platforms supported by H&D Wireless these functions are + * implemented in the file avr32_sdio.c + * + * @{ + */ + +/** + * Maximum transfer size. This will set an upper limit on the len parameter + * passed to owl_sdio_tx() and owl_sdio_rx(). + * + */ +#define MAX_BLOCK_LEN 512 + + +/** + * This flag might be set when owl_sdio_cmd() is called in case the cmd will + * be followed by a data transfer. If the flag is set, the transfer direction is + * from the device to the host (read). Otherwise, the transfer direction is + * from the host to the device (write). + * + */ + #define CMD_FLAG_TO_HOST (1 << 0) + + +/** + * Indicates that the sdio driver needs to be polled in order to make + * forward progress, i.e. it does not support interrupts + * + * The actual polling will result in owl_sdio_cmd() being called to + * request status information from the device. + * + * To activate polling, this flag should be set in owl_sdio_init(). + */ +#define SDIO_FLAG_POLL (1 << 0) + +/** + * Indicates that the sdio driver only supports 1-bit mode. + * + * To set 1-bit mode, this flag should be set in owl_sdio_init(). + */ +#define SDIO_FLAG_1BIT_MODE (1 << 1) + +/** + * This function will be invoked when wlan initialization should be performed, + * this happens when the wl_fw_download() function in the transport group of + * wl_api is invoked. + * + * The wifi device supports sdio high speed mode and clock frequencies up to + * 50 MHz. + * + * The function is responsible for doing any necessary sdio initialization such + * as allocating gpio's, setting up the mci master, one time allocations of + * dma buffers etc. + * + * @param flags is an out parameter that should hold any sdio flags upon return. + * The avaible flags are prefixed with SDIO_FLAG_ + * + * + */ +void owl_sdio_init(uint8_t *flags); + + + +/** + * This function will be invoked when an sdio cmd should be sent to the + * device. + * + * @param idx is the sdio command number + * @param arg is the sdio command argument + * @param flags specifies other options, such as any transfer direction. + * @param rsp should hold the command response upon return. If null, the + * response can be ignored. + * @param data holds a pointer to any data that might follow the command. This + * allows the sdio driver to setup dma transfers while waiting for the + * command response. NULL if no data transfer will follow. Note that + * the same data pointer will be passed to owl_sdio_tx(), which should + * start the actual transfer. + * @param len is the length of the data buffer. + * + */ +void owl_sdio_cmd(uint8_t idx, uint32_t arg, uint8_t flags, uint32_t *rsp, + const uint8_t *data, uint16_t len); + + +/** + * This function will be invoked when data should be transmitted to the device. + * + * If wl_fw_downlad() was called with the size_align parameter set to non-zero, + * the pad parameter should be used. If the pad parameter is not 0, additional + * data must be transmitted after the data buffer has be sent. Depending on + * how the data buffer was first allocated (probably by an TCP/IP stack), it + * might be safe or unsafe to continue reading beyond the data buffer to + * transmit the additional padding bytes. + * + * @param data holds a pointer to the data to transmit, the pointer is the + * same as the one passed to wl_tx(). + * @param len is the number of bytes that should be transmitted, including + * padding. + * @param pad is the number of padding bytes to send. + * + */ +void owl_sdio_tx(const uint8_t *data, uint16_t len, uint8_t pad); + + +/** + * This function will be invoked when data should be received from the device. + * + * @param data should hold the read data upon return. + * @param len is the number of bytes to read. + * + */ +void owl_sdio_rx(uint8_t *data, uint16_t len); + + +/** + * Invoked when sdio rx interrupts from the device should be enabled or + * disabled. + * + * If SDIO_FLAG_POLL was set in wl_spi_init(), then this function can be + * left empty. + * + * @param enable specifies if interrupts should be enabled or disabled. + * + */ +void owl_sdio_irq(uint8_t enable); + + +/** + * Delay executiom for the specified number of ms. This function will be called + * with delays in the 10-20 ms range during fw download and startup of the + * Wi-Fi device. This function can be implemented with a simple for-loop if + * desired (beware of optimization). The timing does not have to be accurate as + * long as the actual delay becomes at least the specified number of ms. + * + * @param ms is the minimal amount of time to wait [ms]. + * + */ +void owl_sdio_mdelay(uint32_t ms); + + +/** + * This function should be called whenever an interrupt is detected. It can + * be called from an interrupt context. + * + * If SDIO_FLAG_POLL was set in owl_sdio_init(), then wl_sdio_irq() + * should never be called. + * + */ +extern void wl_sdio_irq(void); + +/*! @} */ + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_spi.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_spi.h new file mode 100644 index 000000000..5d9137499 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wl_spi.h @@ -0,0 +1,185 @@ +/*! + * \file wl_spi.h + * \brief SPI interface for wl_api. + * Copyright (C) 2010 HD Wireless AB + * + * You should have received a copy of the license along with this library. + */ + +#ifndef WL_SPI_H +#define WL_SPI_H + +#ifndef WITHOUT_STDINT +#include <stdint.h> +#endif + +/** \defgroup wl_spi SPI Interface + * + * These functions implement the interface that the wl_api library + * needs to work with a SPI transport layer. + * + * The functions prototyped here must be implemented when porting the + * wl_api library to a new platform with a different SPI configuration + * + * On platforms supported by H&D Wireless these functions are + * implemented in the file avr32_spi.c + * + * @{ + */ + +/** + * Maximum transfer size. This will set an upper limit on the len parameter + * passed to owl_spi_txrx(). + * + * + */ +#define MAX_BLOCK_LEN 512 + + +/** + * Indicates that the spi driver needs to be polled in order to make + * forward progress, i.e. it does not support interrupts through SD pin 8. + * + * The actual polling will result in owl_spi_txrx() being call to + * request status information from the device. + * + * To activate polling, this flag should be set in owl_spi_init(). + * + * See wl_poll() and wl_register_rx_isr() for more information regarding + * polled and interrupt modes. + * + */ +#define SPI_FLAG_POLL (1 << 0) + + +/** + * This function will be invoked when wlan device initialization should be + * performed, this happens when the wl_fw_download() function in the transport + * group of wl_api is invoked. + * + * The wifi device requires spi mode 3, i.e. clock polarity high and sample + * on second phase. This corresponds to CPOL=1, CPHA=1. Maximum frequency on + * spi clock is 30 MHz. + * + * The function is also responsible for doing any necessary spi initialization + * such as allocating gpio's, setting up the SPI master, one time allocations of + * dma buffers etc. + * + * + * If the SPB105 device is used, two signals; POWER (pin 10 on SPB105) and + * SHUTDOWN (pin 4 on SPB105) might be connected to gpio's on the host. + * The GPIO_POWER_PIN is the main power supply to the device. The + * GPIO_SHUTDOWN_PIN (active low) should be defined as an input. + * + * After GPIO_POWER_PIN is pulled high by the host, the device will pull the + * GPIO_SHUTDOWN_PIN high once the device is properly powered. + * + * However, if pin 4 (GPIO_SHUTDOWN_PIN) is not connected to the host, a delay + * of up to 250 ms must be added after GPIO_POWER_PIN is pulled high to ensure + * that startup is completed. The actual time is usually much shorter, therefore + * one might try to reduce the delay for a particualar hardware design. + * + * On SPB104, the GPIO_POWER_PIN will be connected to VCC and GPIO_SHUTDOWN_PIN + * will be unconnected; hence we have to make sure that we have enough delay + * after powering on the host. Since the device power-on usually happens at the + * same time as the host power-on, the startup time of the host can be + * subtracted from any delay put into owl_spi_init(). + * + * @param flags is an out parameter that should hold any spi flags upon return. + * The avaible flags are prefixed with SPI_FLAG_ + * + * @return 0 on success + * -1 if any error occurs + * + */ +int owl_spi_init(uint8_t *flags); + + +/** + * Invoked when a spi transfer should be performed. + * + * All buffers that are allocated by the wl library will have a size that is + * aligned to 4. If size-unaligned data is passed to this function, it is + * always allocated by the ip stack. If 4-byte size alignment (e.g. for DMA) + * is required, 1-3 extra padding bytes can be transmitted after the in buffer. + * These bytes must be 0xff. + * + * Since size-unaligned data always comes from the ip stack, the out ptr is + * always NULL for such data. + * + * @param in points a buffer which holds the data to be transmitted. If NULL, + * then \a len bytes with the value 0xff should be transmitted on the + * bus. + * @param out points a buffer should hold the data received from the device. If + * NULL, any received data can be discarded. + * @param len is the length of the in and out buffers. + * + */ +void owl_spi_txrx(const uint8_t *in, uint8_t* out, uint16_t len); + + +/** + * Invoked when spi rx interrupts from the device should be enabled or disabled. + * Note that the spi interrupts are obtained from pin 8 on SPB104 or pin 3 from + * SPB105. This pin can be be connected to a gpio on the host. The irq line + * will signal an interrupt on both edges. + * + * In general, the wifi device will not issue a new interrupt unless the + * last interrupt has been handled. Also, during normal operation (i.e after + * the complete callback registered in wl_init() has been invoked), + * owl_spi_irq() will never be invoked so interrupts will be enabled all + * the time. For the SPI-mode, the purpose of owl_spi_irq() is basically to + * make sure that the first interrupt (coming after the reset performed in + * owl_spi_init()) is ignored. + * + * If SPI_FLAG_POLL was set in owl_spi_init(), then this function can be + * left empty and the wifi device will be used in polled mode. In polled mode, + * the interrupt line is not used. Regardless of polled or interrupt-mode, + * wl_poll() must be called to ensure progress of the driver. + * + * @param enable specifies if interrupts should be enabled or disabled. + * + */ +void owl_spi_irq(uint8_t enable); + + +/** + * Invoked when the spi cs for the wifi device should be enabled. Note that + * multiple calls to owl_spi_txrx() might be done during a 'single' chip + * select. + * + * @param enable specifies whether chip select should be asserted or deasserted, + * The chip select signal is active low, so if enable is '1' then the + * chip select connected to the wifi device should be set to '0'. + * + */ +void owl_spi_cs(uint8_t enable); + + +/** + * Delay executiom for the specified number of ms. This function will be called + * with delays in the 10-20 ms range during fw download and startup of the + * Wi-Fi device. This function can be implemented with a simple for-loop if + * desired (beware of optimization). The timing does not have to be accurate as + * long as the actual delay becomes at least the specified number of ms. + * + * @param ms is the minimal amount of time to wait [ms]. + * + */ +void owl_spi_mdelay(uint32_t ms); + + +/** + * This function should be called whenever an interrupt is detected. It can + * be called from an interrupt context. + * + * If SPI_FLAG_POLL was set in owl_spi_init(), then wl_spi_irq() + * should never be called. + * + */ +extern void wl_spi_irq(void); + + +/*! @} */ + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wlap_api.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wlap_api.h new file mode 100644 index 000000000..9a4483afa --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/wlap_api.h @@ -0,0 +1,154 @@ +/* + * Programming interface for wlap_api. + * Copyright (C) 2011 HD Wireless AB + * + * You should have received a copy of the license along with this library. + */ + +/*! \file wlap_api.h ************************************************************* + * + * \brief WiFi AP API + * + * This file provides the wlap_api interface. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: + * \li SPB104 + EVK1100 + * \li SPB104 + EVK1101 + * \li SPB104 + EVK1104 + * \li SPB104 + EVK1105 (SPI) + * \li SPB104 + EVK1105 (SPI + irq) + * \li SPB105 + EVK1105 (SPI) + * - AppNote: + * + * \author H&D Wireless AB: \n + * + ***************************************************************************** + * + * \section intro Introduction + * This is the documentation for the WiFi AP Driver API \a wlap_api. + * + * \section files Main Files + * - wlap_api.h : WiFi driver interface. + * - libwlap_api_*.*.a - Driver library. + * + */ + +#ifndef WLAP_API_H +#define WLAP_API_H + +#define WLAP_API_RELEASE_NAME "unknown" + +#include <wl_api.h> + +/** \defgroup wl_softap Access Point Mode + * + * \brief Support the WiFi Access Point mode. + * + * @{ + */ +/* + * Station representation + * + */ +struct wl_sta_t +{ + struct wl_mac_addr_t bssid; /**< The BSSID of the network. */ + uint8_t queued_pkt_cnt; /**< Number of queueud packets for + this STA. */ + uint8_t in_ps; /**< Is the STA in power save mode. */ + uint8_t aid; /**< STA AID */ +}; + +/* Station list representation. Array of pointers to wl_sta_t entries. */ +struct wl_sta_list_t +{ + struct wl_sta_t **sta; /**< The list of pointers to stations */ + size_t cnt; /**< Number of stations */ +}; + +/*! \brief Get the list of currently associated stations (SoftAP). + * + * Retrieves the list of current stations from + * the driver. + * + * This function is not thread safe. It must be called in the + * same execution context as wl_poll(). + * + * @param network_list Output buffer. The API call returns + * a pointer to allocated memory containing the network list. + * @return + * - WL_SUCCESS + * - WL_FAILURE. + */ +wl_err_t wlap_get_sta_list(struct wl_sta_list_t **network_list); + + +/*! Callback used to read data from a TX packet. + * This function is supplied by the user of the API. + * + * @param dst Destination buffer. The data should be copied + * to this buffer. + * @param src_handle Handle to the source packet from where + * the data should be copied. This handle is the same one that + * is passed in parameter \a pkt_handle to \a wl_process_tx(). + * @param read_len Number of bytes to copy from \a src_handle + * to \a dst. + * @param offset The offset in bytes, counting from the + * beginning of the Ethernet header, from where to copy data. + * @return + * - The number of bytes copied. This number may be smaller + * than the length requested in \a read_len but it may not + * be shorter than the length of the packet counting from + * \a offset. In other words, if the caller of this function + * receives a return count that is shorter than \a read_len + * he will assume that all packet data has been read. + * - < 0 on error. + */ +typedef ssize_t (*wl_pkt_read_cb_t)(char *dst, + void *src_handle, + size_t read_len, + int offset); + +/*! \brief Register a data access function for TX packets (SoftAP). + * + * When a TX data packet has a different representation than a single + * contiguous buffer in memory then a packet read function must be + * implemented and registered with this call. Whenever the library + * needs to read packet data it will call this function to do it. + * + * This function can be ignored if the TX packet representation is + * a single contiguous buffer. This function is only needed in SoftAP + * mode. + * + * @param pkt_read_cb Read callback. + * @param ctx Context + */ +void wl_register_pkt_read_cb(wl_pkt_read_cb_t pkt_read_cb); + +/*! \brief Start a network using the SoftAP mode. + * + * This call will cause the WiFi chip to start sending beacons + * and accept associations from WiFi stations. + * + */ +wl_err_t wlap_start_ap(const char *ssid, + const size_t ssid_len, + const uint8_t channel, + const enum wl_auth_mode auth_mode, + const enum wl_enc_type enc_type); + +/*! \brief Disconnect a STA (SoftAP) + * + * @param bssid The BSSID of the station to disconnect. + * @return + * - WL_SUCCESS + * - WL_FAILURE. + */ +wl_err_t wlap_disconnect_sta(const struct wl_mac_addr_t bssid); + + +/*! @} */ /* End wl_softap group */ + + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER/cycle_counter.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER/cycle_counter.h new file mode 100644 index 000000000..d0c51dfa1 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER/cycle_counter.h @@ -0,0 +1,309 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Cycle counter driver. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32UC devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CYCLE_COUNTER_H_ +#define _CYCLE_COUNTER_H_ + +#include "compiler.h" + + +//! Structure holding private information, automatically initialized by the +//! cpu_set_timeout() function. +typedef struct +{ + //! The cycle count at the begining of the timeout. + unsigned long delay_start_cycle; + + //! The cycle count at the end of the timeout. + unsigned long delay_end_cycle; + + //! Enable/disable the timout detection + unsigned char timer_state; + #define CPU_TIMER_STATE_STARTED 0 + #define CPU_TIMER_STATE_REACHED 1 + #define CPU_TIMER_STATE_STOPPED 2 +} t_cpu_time; + + +/*! + * \brief Convert milli-seconds into CPU cycles. + * + * \param ms: Number of millisecond. + * \param fcpu_hz: CPU frequency in Hz. + * + * \return the converted number of CPU cycles. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ U32 cpu_ms_2_cy(unsigned long ms, unsigned long fcpu_hz) +{ + return ((unsigned long long)ms * fcpu_hz + 999) / 1000; +} + + +/*! + * \brief Convert micro-seconds into CPU cycles. + * + * \param us: Number of microsecond. + * \param fcpu_hz: CPU frequency in Hz. + * + * \return the converted number of CPU cycles. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ U32 cpu_us_2_cy(unsigned long us, unsigned long fcpu_hz) +{ + return ((unsigned long long)us * fcpu_hz + 999999) / 1000000; +} + + +/*! + * \brief Convert CPU cycles into milli-seconds. + * + * \param cy: Number of CPU cycles. + * \param fcpu_hz: CPU frequency in Hz. + * + * \return the converted number of milli-second. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ U32 cpu_cy_2_ms(unsigned long cy, unsigned long fcpu_hz) +{ + return ((unsigned long long)cy * 1000 + fcpu_hz-1) / fcpu_hz; +} + + +/*! + * \brief Convert CPU cycles into micro-seconds. + * + * \param cy: Number of CPU cycles. + * \param fcpu_hz: CPU frequency in Hz. + * + * \return the converted number of micro-second. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ U32 cpu_cy_2_us(unsigned long cy, unsigned long fcpu_hz) +{ + return ((unsigned long long)cy * 1000000 + fcpu_hz-1) / fcpu_hz; +} + + +/*! + * \brief Set a timer variable. + * + * Ex: t_cpu_time timer; + * cpu_set_timeout( cpu_ms_2_cy(10, FOSC0), &timer ); // timeout in 10 ms + * if( cpu_is_timeout(&timer) ) + * cpu_stop_timeout(&timer); + * ../.. + * + * \param delay: (input) delay in CPU cycles before timeout. + * \param cpu_time: (output) internal information used by the timer API. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void cpu_set_timeout(unsigned long delay, t_cpu_time *cpu_time) +{ + cpu_time->delay_start_cycle = Get_system_register(AVR32_COUNT); + cpu_time->delay_end_cycle = cpu_time->delay_start_cycle + delay; + cpu_time->timer_state = CPU_TIMER_STATE_STARTED; +} + + +/*! + * \brief Test if a timer variable reached its timeout. + * + * Once the timeout is reached, the function will always return TRUE, + * until the cpu_stop_timeout() function is called. + * + * Ex: t_cpu_time timer; + * cpu_set_timeout( 10, FOSC0, &timer ); // timeout in 10 ms + * if( cpu_is_timeout(&timer) ) + * cpu_stop_timeout(&timer); + * ../.. + * + * \param cpu_time: (input) internal information used by the timer API. + * + * \return TRUE if timeout occured, otherwise FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned long cpu_is_timeout(t_cpu_time *cpu_time) +{ + unsigned long current_cycle_count = Get_system_register(AVR32_COUNT); + + if( cpu_time->timer_state==CPU_TIMER_STATE_STOPPED ) + return FALSE; + + // Test if the timeout as already occured. + else if (cpu_time->timer_state == CPU_TIMER_STATE_REACHED) + return TRUE; + + // If the ending cycle count of this timeout is wrapped, ... + else if (cpu_time->delay_start_cycle > cpu_time->delay_end_cycle) + { + if (current_cycle_count < cpu_time->delay_start_cycle && current_cycle_count > cpu_time->delay_end_cycle) + { + cpu_time->timer_state = CPU_TIMER_STATE_REACHED; + return TRUE; + } + return FALSE; + } + else + { + if (current_cycle_count < cpu_time->delay_start_cycle || current_cycle_count > cpu_time->delay_end_cycle) + { + cpu_time->timer_state = CPU_TIMER_STATE_REACHED; + return TRUE; + } + return FALSE; + } +} + + +/*! + * \brief Stop a timeout detection. + * + * Ex: t_cpu_time timer; + * cpu_set_timeout( 10, FOSC0, &timer ); // timeout in 10 ms + * if( cpu_is_timeout(&timer) ) + * cpu_stop_timeout(&timer); + * ../.. + * + * \param cpu_time: (input) internal information used by the timer API. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void cpu_stop_timeout(t_cpu_time *cpu_time) +{ + cpu_time->timer_state = CPU_TIMER_STATE_STOPPED; +} + + +/*! + * \brief Test if a timer is stopped. + * + * \param cpu_time: (input) internal information used by the timer API. + * + * \return TRUE if timer is stopped, otherwise FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned long cpu_is_timer_stopped(t_cpu_time *cpu_time) +{ + + if( cpu_time->timer_state==CPU_TIMER_STATE_STOPPED ) + return TRUE; + else + return FALSE; +} + + +/*! + * \brief Waits during at least the specified delay (in millisecond) before returning. + * + * \param delay: Number of millisecond to wait. + * \param fcpu_hz: CPU frequency in Hz. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void cpu_delay_ms(unsigned long delay, unsigned long fcpu_hz) +{ + t_cpu_time timer; + cpu_set_timeout( cpu_ms_2_cy(delay, fcpu_hz), &timer); + while( !cpu_is_timeout(&timer) ); +} + +/*! + * \brief Waits during at least the specified delay (in microsecond) before returning. + * + * \param delay: Number of microsecond to wait. + * \param fcpu_hz: CPU frequency in Hz. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void cpu_delay_us(unsigned long delay, unsigned long fcpu_hz) +{ + t_cpu_time timer; + cpu_set_timeout( cpu_us_2_cy(delay, fcpu_hz), &timer); + while( !cpu_is_timeout(&timer) ); +} + +/*! + * \brief Waits during at least the specified delay (in CPU cycles) before returning. + * + * \param delay: Number of CPU cycles to wait. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void cpu_delay_cy(unsigned long delay) +{ + t_cpu_time timer; + cpu_set_timeout( delay, &timer); + while( !cpu_is_timeout(&timer) ); +} + + +#define Get_sys_count() ( Get_system_register(AVR32_COUNT) ) +#define Set_sys_count(x) ( Set_system_register(AVR32_COUNT, (x)) ) +#define Get_sys_compare() ( Get_system_register(AVR32_COMPARE) ) +#define Set_sys_compare(x) ( Set_system_register(AVR32_COMPARE, (x)) ) + + +#endif // _CYCLE_COUNTER_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.c new file mode 100644 index 000000000..543fed644 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.c @@ -0,0 +1,995 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SMC on EBI driver for AVR32 UC3. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a SMC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "preprocessor.h" +#include "gpio.h" +#include "smc.h" + +// Configure the SM Controller with SM setup and timing information for all chip select +#define SMC_CS_SETUP(ncs) { \ + U32 nwe_setup = ((NWE_SETUP * hsb_mhz_up + 999) / 1000); \ + U32 ncs_wr_setup = ((NCS_WR_SETUP * hsb_mhz_up + 999) / 1000); \ + U32 nrd_setup = ((NRD_SETUP * hsb_mhz_up + 999) / 1000); \ + U32 ncs_rd_setup = ((NCS_RD_SETUP * hsb_mhz_up + 999) / 1000); \ + U32 nwe_pulse = ((NWE_PULSE * hsb_mhz_up + 999) / 1000); \ + U32 ncs_wr_pulse = ((NCS_WR_PULSE * hsb_mhz_up + 999) / 1000); \ + U32 nrd_pulse = ((NRD_PULSE * hsb_mhz_up + 999) / 1000); \ + U32 ncs_rd_pulse = ((NCS_RD_PULSE * hsb_mhz_up + 999) / 1000); \ + U32 nwe_cycle = ((NWE_CYCLE * hsb_mhz_up + 999) / 1000); \ + U32 nrd_cycle = ((NRD_CYCLE * hsb_mhz_up + 999) / 1000); \ + \ + /* Some coherence checks... */ \ + /* Ensures CS is active during Rd or Wr */ \ + if( ncs_rd_setup + ncs_rd_pulse < nrd_setup + nrd_pulse ) \ + ncs_rd_pulse = nrd_setup + nrd_pulse - ncs_rd_setup; \ + if( ncs_wr_setup + ncs_wr_pulse < nwe_setup + nwe_pulse ) \ + ncs_wr_pulse = nwe_setup + nwe_pulse - ncs_wr_setup; \ + \ + /* ncs_hold = n_cycle - ncs_setup - ncs_pulse */ \ + /* n_hold = n_cycle - n_setup - n_pulse */ \ + /* */ \ + /* All holds parameters must be positive or null, so: */ \ + /* nwe_cycle shall be >= ncs_wr_setup + ncs_wr_pulse */ \ + if( nwe_cycle < ncs_wr_setup + ncs_wr_pulse ) \ + nwe_cycle = ncs_wr_setup + ncs_wr_pulse; \ + \ + /* nwe_cycle shall be >= nwe_setup + nwe_pulse */ \ + if( nwe_cycle < nwe_setup + nwe_pulse ) \ + nwe_cycle = nwe_setup + nwe_pulse; \ + \ + /* nrd_cycle shall be >= ncs_rd_setup + ncs_rd_pulse */ \ + if( nrd_cycle < ncs_rd_setup + ncs_rd_pulse ) \ + nrd_cycle = ncs_rd_setup + ncs_rd_pulse; \ + \ + /* nrd_cycle shall be >= nrd_setup + nrd_pulse */ \ + if( nrd_cycle < nrd_setup + nrd_pulse ) \ + nrd_cycle = nrd_setup + nrd_pulse; \ + \ + AVR32_SMC.cs[ncs].setup = (nwe_setup << AVR32_SMC_SETUP0_NWE_SETUP_OFFSET) | \ + (ncs_wr_setup << AVR32_SMC_SETUP0_NCS_WR_SETUP_OFFSET) | \ + (nrd_setup << AVR32_SMC_SETUP0_NRD_SETUP_OFFSET) | \ + (ncs_rd_setup << AVR32_SMC_SETUP0_NCS_RD_SETUP_OFFSET); \ + AVR32_SMC.cs[ncs].pulse = (nwe_pulse << AVR32_SMC_PULSE0_NWE_PULSE_OFFSET) | \ + (ncs_wr_pulse << AVR32_SMC_PULSE0_NCS_WR_PULSE_OFFSET) | \ + (nrd_pulse << AVR32_SMC_PULSE0_NRD_PULSE_OFFSET) | \ + (ncs_rd_pulse << AVR32_SMC_PULSE0_NCS_RD_PULSE_OFFSET); \ + AVR32_SMC.cs[ncs].cycle = (nwe_cycle << AVR32_SMC_CYCLE0_NWE_CYCLE_OFFSET) | \ + (nrd_cycle << AVR32_SMC_CYCLE0_NRD_CYCLE_OFFSET); \ + AVR32_SMC.cs[ncs].mode = (((NCS_CONTROLLED_READ) ? AVR32_SMC_MODE0_READ_MODE_NCS_CONTROLLED : \ + AVR32_SMC_MODE0_READ_MODE_NRD_CONTROLLED) << AVR32_SMC_MODE0_READ_MODE_OFFSET) | \ + + (((NCS_CONTROLLED_WRITE) ? AVR32_SMC_MODE0_WRITE_MODE_NCS_CONTROLLED : \ + AVR32_SMC_MODE0_WRITE_MODE_NWE_CONTROLLED) << AVR32_SMC_MODE0_WRITE_MODE_OFFSET) | \ + (NWAIT_MODE << AVR32_SMC_MODE0_EXNW_MODE_OFFSET) | \ + (((SMC_8_BIT_CHIPS) ? AVR32_SMC_MODE0_BAT_BYTE_WRITE : \ + AVR32_SMC_MODE0_BAT_BYTE_SELECT) << AVR32_SMC_MODE0_BAT_OFFSET) | \ + (((SMC_DBW <= 8 ) ? AVR32_SMC_MODE0_DBW_8_BITS : \ + (SMC_DBW <= 16) ? AVR32_SMC_MODE0_DBW_16_BITS : \ + AVR32_SMC_MODE0_DBW_32_BITS) << AVR32_SMC_MODE0_DBW_OFFSET) | \ + (TDF_CYCLES << AVR32_SMC_MODE0_TDF_CYCLES_OFFSET) | \ + (TDF_OPTIM << AVR32_SMC_MODE0_TDF_MODE_OFFSET) | \ + (PAGE_MODE << AVR32_SMC_MODE0_PMEN_OFFSET) | \ + (PAGE_SIZE << AVR32_SMC_MODE0_PS_OFFSET); \ + smc_tab_cs_size[ncs] = (U8)EXT_SM_SIZE; \ + } + +static U8 smc_tab_cs_size[6]; + +static void smc_enable_muxed_pins(void); + + +void smc_init(unsigned long hsb_hz) +{ + unsigned long hsb_mhz_up = (hsb_hz + 999999) / 1000000; + +//! Whether to use the NCS0 pin +#ifdef SMC_USE_NCS0 + #include SMC_COMPONENT_CS0 + + // Setup SMC for NCS0 + SMC_CS_SETUP(0) + + #ifdef SMC_DBW_GLOBAL + #if (SMC_DBW_GLOBAL < SMC_DBW) + #undef SMC_DBW_GLOBAL + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + #else + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + + #ifdef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS_GLOBAL < SMC_8_BIT) + #undef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + #else + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + + #ifdef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE_GLOBAL < NWAIT_MODE) + #undef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + #else + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + + #undef EXT_SM_SIZE + #undef SMC_DBW + #undef SMC_8_BIT_CHIPS + #undef NWE_SETUP + #undef NCS_WR_SETUP + #undef NRD_SETUP + #undef NCS_RD_SETUP + #undef NCS_WR_PULSE + #undef NWE_PULSE + #undef NCS_RD_PULSE + #undef NRD_PULSE + #undef NCS_WR_HOLD + #undef NWE_HOLD + #undef NWE_CYCLE + #undef NCS_RD_HOLD + #undef NRD_CYCLE + #undef TDF_CYCLES + #undef TDF_OPTIM + #undef PAGE_MODE + #undef PAGE_SIZE + #undef NCS_CONTROLLED_READ + #undef NCS_CONTROLLED_WRITE + #undef NWAIT_MODE +#endif + + +//! Whether to use the NCS1 pin +#ifdef SMC_USE_NCS1 + #include SMC_COMPONENT_CS1 + + // Enable SM mode for CS1 if necessary. + AVR32_HMATRIX.sfr[AVR32_EBI_HMATRIX_NR] &= ~(1 << AVR32_EBI_SDRAM_CS); + AVR32_HMATRIX.sfr[AVR32_EBI_HMATRIX_NR]; + + // Setup SMC for NCS1 + SMC_CS_SETUP(1) + + #ifdef SMC_DBW_GLOBAL + #if (SMC_DBW_GLOBAL < SMC_DBW) + #undef SMC_DBW_GLOBAL + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + #else + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + + #ifdef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS_GLOBAL < SMC_8_BIT) + #undef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + #else + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + + #ifdef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE_GLOBAL < NWAIT_MODE) + #undef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + #else + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + + #undef EXT_SM_SIZE + #undef SMC_DBW + #undef SMC_8_BIT_CHIPS + #undef NWE_SETUP + #undef NCS_WR_SETUP + #undef NRD_SETUP + #undef NCS_RD_SETUP + #undef NCS_WR_PULSE + #undef NWE_PULSE + #undef NCS_RD_PULSE + #undef NRD_PULSE + #undef NCS_WR_HOLD + #undef NWE_HOLD + #undef NWE_CYCLE + #undef NCS_RD_HOLD + #undef NRD_CYCLE + #undef TDF_CYCLES + #undef TDF_OPTIM + #undef PAGE_MODE + #undef PAGE_SIZE + #undef NCS_CONTROLLED_READ + #undef NCS_CONTROLLED_WRITE + #undef NWAIT_MODE +#endif + +//! Whether to use the NCS2 pin +#ifdef SMC_USE_NCS2 + #include SMC_COMPONENT_CS2 + + // Setup SMC for NCS2 + SMC_CS_SETUP(2) + + #ifdef SMC_DBW_GLOBAL + #if (SMC_DBW_GLOBAL < SMC_DBW) + #undef SMC_DBW_GLOBAL + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + #else + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + + #ifdef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS_GLOBAL < SMC_8_BIT) + #undef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + #else + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + + #ifdef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE_GLOBAL < NWAIT_MODE) + #undef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + #else + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + + + #undef EXT_SM_SIZE + #undef SMC_DBW + #undef SMC_8_BIT_CHIPS + #undef NWE_SETUP + #undef NCS_WR_SETUP + #undef NRD_SETUP + #undef NCS_RD_SETUP + #undef NCS_WR_PULSE + #undef NWE_PULSE + #undef NCS_RD_PULSE + #undef NRD_PULSE + #undef NCS_WR_HOLD + #undef NWE_HOLD + #undef NWE_CYCLE + #undef NCS_RD_HOLD + #undef NRD_CYCLE + #undef TDF_CYCLES + #undef TDF_OPTIM + #undef PAGE_MODE + #undef PAGE_SIZE + #undef NCS_CONTROLLED_READ + #undef NCS_CONTROLLED_WRITE + #undef NWAIT_MODE +#endif + +//! Whether to use the NCS3 pin +#ifdef SMC_USE_NCS3 + #include SMC_COMPONENT_CS3 + + // Setup SMC for NCS3 + SMC_CS_SETUP(3) + + #ifdef SMC_DBW_GLOBAL + #if (SMC_DBW_GLOBAL < SMC_DBW) + #undef SMC_DBW_GLOBAL + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + #else + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + + #ifdef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS_GLOBAL < SMC_8_BIT) + #undef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + #else + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + + #ifdef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE_GLOBAL < NWAIT_MODE) + #undef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + #else + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + + + #undef EXT_SM_SIZE + #undef SMC_DBW + #undef SMC_8_BIT_CHIPS + #undef NWE_SETUP + #undef NCS_WR_SETUP + #undef NRD_SETUP + #undef NCS_RD_SETUP + #undef NCS_WR_PULSE + #undef NWE_PULSE + #undef NCS_RD_PULSE + #undef NRD_PULSE + #undef NCS_WR_HOLD + #undef NWE_HOLD + #undef NWE_CYCLE + #undef NCS_RD_HOLD + #undef NRD_CYCLE + #undef TDF_CYCLES + #undef TDF_OPTIM + #undef PAGE_MODE + #undef PAGE_SIZE + #undef NCS_CONTROLLED_READ + #undef NCS_CONTROLLED_WRITE + #undef NWAIT_MODE +#endif + +//! Whether to use the NCS4 pin +#ifdef SMC_USE_NCS4 + #include SMC_COMPONENT_CS4 + + // Setup SMC for NCS4 + SMC_CS_SETUP(4) + + #ifdef SMC_DBW_GLOBAL + #if (SMC_DBW_GLOBAL < SMC_DBW) + #undef SMC_DBW_GLOBAL + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + #else + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + + #ifdef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS_GLOBAL < SMC_8_BIT) + #undef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + #else + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + + #ifdef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE_GLOBAL < NWAIT_MODE) + #undef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + #else + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + + + #undef EXT_SM_SIZE + #undef SMC_DBW + #undef SMC_8_BIT_CHIPS + #undef NWE_SETUP + #undef NCS_WR_SETUP + #undef NRD_SETUP + #undef NCS_RD_SETUP + #undef NCS_WR_PULSE + #undef NWE_PULSE + #undef NCS_RD_PULSE + #undef NRD_PULSE + #undef NCS_WR_HOLD + #undef NWE_HOLD + #undef NWE_CYCLE + #undef NCS_RD_HOLD + #undef NRD_CYCLE + #undef TDF_CYCLES + #undef TDF_OPTIM + #undef PAGE_MODE + #undef PAGE_SIZE + #undef NCS_CONTROLLED_READ + #undef NCS_CONTROLLED_WRITE + #undef NWAIT_MODE +#endif + +//! Whether to use the NCS5 pin +#ifdef SMC_USE_NCS5 + #include SMC_COMPONENT_CS5 + + // Setup SMC for NCS5 + SMC_CS_SETUP(5) + + #ifdef SMC_DBW_GLOBAL + #if (SMC_DBW_GLOBAL < SMC_DBW) + #undef SMC_DBW_GLOBAL + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + #else + #if (SMC_DBW == 8) + #define SMC_DBW_GLOBAL 8 + #elif (SMC_DBW == 16) + #define SMC_DBW_GLOBAL 16 + #elif (SMC_DBW == 32) + #define SMC_DBW_GLOBAL 32 + #else + #error error in SMC_DBW size + #endif + #endif + + #ifdef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS_GLOBAL < SMC_8_BIT) + #undef SMC_8_BIT_CHIPS_GLOBAL + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + #else + #if (SMC_8_BIT_CHIPS == TRUE) + #define SMC_8_BIT_CHIPS_GLOBAL TRUE + #elif (SMC_8_BIT_CHIPS == FALSE) + #define SMC_8_BIT_CHIPS_GLOBAL FALSE + #else + #error error in SMC_8_BIT_CHIPS size + #endif + #endif + + #ifdef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE_GLOBAL < NWAIT_MODE) + #undef NWAIT_MODE_GLOBAL + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + #else + #if (NWAIT_MODE == AVR32_SMC_EXNW_MODE_DISABLED) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_DISABLED + #elif (NWAIT_MODE == AVR32_SMC_EXNW_MODE_FROZEN) + #define NWAIT_MODE_GLOBAL AVR32_SMC_EXNW_MODE_FROZEN + #else + #error error in NWAIT_MODE size + #endif + #endif + + + #undef EXT_SM_SIZE + #undef SMC_DBW + #undef SMC_8_BIT_CHIPS + #undef NWE_SETUP + #undef NCS_WR_SETUP + #undef NRD_SETUP + #undef NCS_RD_SETUP + #undef NCS_WR_PULSE + #undef NWE_PULSE + #undef NCS_RD_PULSE + #undef NRD_PULSE + #undef NCS_WR_HOLD + #undef NWE_HOLD + #undef NWE_CYCLE + #undef NCS_RD_HOLD + #undef NRD_CYCLE + #undef TDF_CYCLES + #undef TDF_OPTIM + #undef PAGE_MODE + #undef PAGE_SIZE + #undef NCS_CONTROLLED_READ + #undef NCS_CONTROLLED_WRITE + #undef NWAIT_MODE +#endif + // Put the multiplexed MCU pins used for the SM under control of the SMC. + smc_enable_muxed_pins(); +} + +/*! \brief Puts the multiplexed MCU pins used for the SMC + * + */ +static void smc_enable_muxed_pins(void) +{ + static const gpio_map_t SMC_EBI_GPIO_MAP = + { + // Enable data pins. +#ifdef EBI_DATA_0 + {ATPASTE2(EBI_DATA_0,_PIN),ATPASTE2(EBI_DATA_0,_FUNCTION)}, +#endif +#ifdef EBI_DATA_1 + {ATPASTE2(EBI_DATA_1,_PIN),ATPASTE2(EBI_DATA_1,_FUNCTION)}, +#endif +#ifdef EBI_DATA_2 + {ATPASTE2(EBI_DATA_2,_PIN),ATPASTE2(EBI_DATA_2,_FUNCTION)}, +#endif +#ifdef EBI_DATA_3 + {ATPASTE2(EBI_DATA_3,_PIN),ATPASTE2(EBI_DATA_3,_FUNCTION)}, +#endif +#ifdef EBI_DATA_4 + {ATPASTE2(EBI_DATA_4,_PIN),ATPASTE2(EBI_DATA_4,_FUNCTION)}, +#endif +#ifdef EBI_DATA_5 + {ATPASTE2(EBI_DATA_5,_PIN),ATPASTE2(EBI_DATA_5,_FUNCTION)}, +#endif +#ifdef EBI_DATA_6 + {ATPASTE2(EBI_DATA_6,_PIN),ATPASTE2(EBI_DATA_6,_FUNCTION)}, +#endif +#ifdef EBI_DATA_7 + {ATPASTE2(EBI_DATA_7,_PIN),ATPASTE2(EBI_DATA_7,_FUNCTION)}, +#endif +#ifdef EBI_DATA_8 + {ATPASTE2(EBI_DATA_8,_PIN),ATPASTE2(EBI_DATA_8,_FUNCTION)}, +#endif +#ifdef EBI_DATA_9 + {ATPASTE2(EBI_DATA_9,_PIN),ATPASTE2(EBI_DATA_9,_FUNCTION)}, +#endif +#ifdef EBI_DATA_10 + {ATPASTE2(EBI_DATA_10,_PIN),ATPASTE2(EBI_DATA_10,_FUNCTION)}, +#endif +#ifdef EBI_DATA_11 + {ATPASTE2(EBI_DATA_11,_PIN),ATPASTE2(EBI_DATA_11,_FUNCTION)}, +#endif +#ifdef EBI_DATA_12 + {ATPASTE2(EBI_DATA_12,_PIN),ATPASTE2(EBI_DATA_12,_FUNCTION)}, +#endif +#ifdef EBI_DATA_13 + {ATPASTE2(EBI_DATA_13,_PIN),ATPASTE2(EBI_DATA_13,_FUNCTION)}, +#endif +#ifdef EBI_DATA_14 + {ATPASTE2(EBI_DATA_14,_PIN),ATPASTE2(EBI_DATA_14,_FUNCTION)}, +#endif +#ifdef EBI_DATA_15 + {ATPASTE2(EBI_DATA_15,_PIN),ATPASTE2(EBI_DATA_15,_FUNCTION)}, +#endif +#ifdef EBI_DATA_16 + {ATPASTE2(EBI_DATA_16,_PIN),ATPASTE2(EBI_DATA_16,_FUNCTION)}, +#endif +#ifdef EBI_DATA_17 + {ATPASTE2(EBI_DATA_17,_PIN),ATPASTE2(EBI_DATA_17,_FUNCTION)}, +#endif +#ifdef EBI_DATA_18 + {ATPASTE2(EBI_DATA_18,_PIN),ATPASTE2(EBI_DATA_18,_FUNCTION)}, +#endif +#ifdef EBI_DATA_19 + {ATPASTE2(EBI_DATA_19,_PIN),ATPASTE2(EBI_DATA_19,_FUNCTION)}, +#endif +#ifdef EBI_DATA_20 + {ATPASTE2(EBI_DATA_20,_PIN),ATPASTE2(EBI_DATA_20,_FUNCTION)}, +#endif +#ifdef EBI_DATA_21 + {ATPASTE2(EBI_DATA_21,_PIN),ATPASTE2(EBI_DATA_21,_FUNCTION)}, +#endif +#ifdef EBI_DATA_22 + {ATPASTE2(EBI_DATA_22,_PIN),ATPASTE2(EBI_DATA_22,_FUNCTION)}, +#endif +#ifdef EBI_DATA_23 + {ATPASTE2(EBI_DATA_23,_PIN),ATPASTE2(EBI_DATA_23,_FUNCTION)}, +#endif +#ifdef EBI_DATA_24 + {ATPASTE2(EBI_DATA_24,_PIN),ATPASTE2(EBI_DATA_24,_FUNCTION)}, +#endif +#ifdef EBI_DATA_25 + {ATPASTE2(EBI_DATA_25,_PIN),ATPASTE2(EBI_DATA_25,_FUNCTION)}, +#endif +#ifdef EBI_DATA_26 + {ATPASTE2(EBI_DATA_26,_PIN),ATPASTE2(EBI_DATA_26,_FUNCTION)}, +#endif +#ifdef EBI_DATA_27 + {ATPASTE2(EBI_DATA_27,_PIN),ATPASTE2(EBI_DATA_27,_FUNCTION)}, +#endif +#ifdef EBI_DATA_28 + {ATPASTE2(EBI_DATA_28,_PIN),ATPASTE2(EBI_DATA_28,_FUNCTION)}, +#endif +#ifdef EBI_DATA_29 + {ATPASTE2(EBI_DATA_29,_PIN),ATPASTE2(EBI_DATA_29,_FUNCTION)}, +#endif +#ifdef EBI_DATA_30 + {ATPASTE2(EBI_DATA_30,_PIN),ATPASTE2(EBI_DATA_30,_FUNCTION)}, +#endif +#ifdef EBI_DATA_31 + {ATPASTE2(EBI_DATA_31,_PIN),ATPASTE2(EBI_DATA_31,_FUNCTION)}, +#endif + + // Enable address pins. +#if SMC_DBW_GLOBAL <= 8 +#ifdef EBI_ADDR_0 + {ATPASTE2(EBI_ADDR_0,_PIN),ATPASTE2(EBI_ADDR_0,_FUNCTION)}, +#endif +#endif +#if SMC_DBW_GLOBAL <= 16 +#ifdef EBI_ADDR_1 + {ATPASTE2(EBI_ADDR_1,_PIN),ATPASTE2(EBI_ADDR_1,_FUNCTION)}, +#endif +#endif + +#ifdef EBI_ADDR_2 + {ATPASTE2(EBI_ADDR_2,_PIN),ATPASTE2(EBI_ADDR_2,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_3 + {ATPASTE2(EBI_ADDR_3,_PIN),ATPASTE2(EBI_ADDR_3,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_4 + {ATPASTE2(EBI_ADDR_4,_PIN),ATPASTE2(EBI_ADDR_4,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_5 + {ATPASTE2(EBI_ADDR_5,_PIN),ATPASTE2(EBI_ADDR_5,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_6 + {ATPASTE2(EBI_ADDR_6,_PIN),ATPASTE2(EBI_ADDR_6,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_7 + {ATPASTE2(EBI_ADDR_7,_PIN),ATPASTE2(EBI_ADDR_7,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_8 + {ATPASTE2(EBI_ADDR_8,_PIN),ATPASTE2(EBI_ADDR_8,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_9 + {ATPASTE2(EBI_ADDR_9,_PIN),ATPASTE2(EBI_ADDR_9,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_10 + {ATPASTE2(EBI_ADDR_10,_PIN),ATPASTE2(EBI_ADDR_10,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_11 + {ATPASTE2(EBI_ADDR_11,_PIN),ATPASTE2(EBI_ADDR_11,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_12 + {ATPASTE2(EBI_ADDR_12,_PIN),ATPASTE2(EBI_ADDR_12,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_13 + {ATPASTE2(EBI_ADDR_13,_PIN),ATPASTE2(EBI_ADDR_13,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_14 + {ATPASTE2(EBI_ADDR_14,_PIN),ATPASTE2(EBI_ADDR_14,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_15 + {ATPASTE2(EBI_ADDR_15,_PIN),ATPASTE2(EBI_ADDR_15,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_16 + {ATPASTE2(EBI_ADDR_16,_PIN),ATPASTE2(EBI_ADDR_16,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_17 + {ATPASTE2(EBI_ADDR_17,_PIN),ATPASTE2(EBI_ADDR_17,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_18 + {ATPASTE2(EBI_ADDR_18,_PIN),ATPASTE2(EBI_ADDR_18,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_19 + {ATPASTE2(EBI_ADDR_19,_PIN),ATPASTE2(EBI_ADDR_19,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_20 + {ATPASTE2(EBI_ADDR_20,_PIN),ATPASTE2(EBI_ADDR_20,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_21 + {ATPASTE2(EBI_ADDR_21,_PIN),ATPASTE2(EBI_ADDR_21,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_22 + {ATPASTE2(EBI_ADDR_22,_PIN),ATPASTE2(EBI_ADDR_22,_FUNCTION)}, +#endif +#ifdef EBI_ADDR_23 + {ATPASTE2(EBI_ADDR_23,_PIN),ATPASTE2(EBI_ADDR_23,_FUNCTION)}, +#endif + +#if SMC_DBW_GLOBAL <= 8 + #undef SMC_8_BIT_CHIPS + #define SMC_8_BIT_CHIPS TRUE +#endif + + // Enable data mask pins. +#if !SMC_8_BIT_CHIPS_GLOBAL +#ifdef EBI_ADDR_0 + {ATPASTE2(EBI_ADDR_0,_PIN),ATPASTE2(EBI_ADDR_0,_FUNCTION)}, +#endif +#endif +#ifdef EBI_NWE0 + {ATPASTE2(EBI_NWE0,_PIN),ATPASTE2(EBI_NWE0,_FUNCTION)}, +#endif + +#if SMC_DBW_GLOBAL >= 16 + #ifdef EBI_NWE1 + {ATPASTE2(EBI_NWE1,_PIN),ATPASTE2(EBI_NWE1,_FUNCTION)}, + #endif + #if SMC_DBW_GLOBAL >= 32 + #ifdef EBI_ADDR_1 + {ATPASTE2(EBI_ADDR_1,_PIN),ATPASTE2(EBI_ADDR_1,_FUNCTION)}, + #endif + #ifdef EBI_NWE3 + {ATPASTE2(EBI_NWE3,_PIN),ATPASTE2(EBI_NWE3,_FUNCTION)}, + #endif + #endif +#endif + #ifdef EBI_NRD + {ATPASTE2(EBI_NRD,_PIN),ATPASTE2(EBI_NRD,_FUNCTION)}, + #endif + + // Enable control pins. +#if NWAIT_MODE_GLOBAL != AVR32_SMC_EXNW_MODE_DISABLED + #ifdef EBI_NWAIT + {ATPASTE2(EBI_NWAIT,_PIN),ATPASTE2(EBI_NWAIT,_FUNCTION)}, + #endif +#endif +#ifdef SMC_USE_NCS0 + #ifdef EBI_NCS_0 + {ATPASTE2(EBI_NCS_0,_PIN),ATPASTE2(EBI_NCS_0,_FUNCTION)}, + #endif +#endif +#ifdef SMC_USE_NCS1 + #ifdef EBI_NCS_1 + {ATPASTE2(EBI_NCS_1,_PIN),ATPASTE2(EBI_NCS_1,_FUNCTION)}, + #endif +#endif +#ifdef SMC_USE_NCS2 + #ifdef EBI_NCS_2 + {ATPASTE2(EBI_NCS_2,_PIN),ATPASTE2(EBI_NCS_2,_FUNCTION)}, + #endif +#endif +#ifdef SMC_USE_NCS3 + #ifdef EBI_NCS_3 + {ATPASTE2(EBI_NCS_3,_PIN),ATPASTE2(EBI_NCS_3,_FUNCTION)}, + #endif +#endif +#ifdef SMC_USE_NCS4 + #ifdef EBI_NCS_4 + {ATPASTE2(EBI_NCS_4,_PIN),ATPASTE2(EBI_NCS_4,_FUNCTION)}, + #endif +#endif +#ifdef SMC_USE_NCS5 + #ifdef EBI_NCS_5 + {ATPASTE2(EBI_NCS_5,_PIN),ATPASTE2(EBI_NCS_5,_FUNCTION)}, + #endif +#endif + }; + + gpio_enable_module(SMC_EBI_GPIO_MAP, sizeof(SMC_EBI_GPIO_MAP) / sizeof(SMC_EBI_GPIO_MAP[0])); +} + +unsigned char smc_get_cs_size(unsigned char cs) +{ + return smc_tab_cs_size[cs]; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.h new file mode 100644 index 000000000..c3bdf43c4 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC/smc.h @@ -0,0 +1,68 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SMC on EBI driver for AVR32 UC3. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a SMC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _SMC_H_ +#define _SMC_H_ + +#include <avr32/io.h> + +#include "compiler.h" +#include "conf_ebi.h" + +/*! \brief Initializes the AVR32 SMC module and the connected SRAM(s). + * \param hsb_hz HSB frequency in Hz (the HSB frequency is applied to the SMC). + * \note Each access to the SMC address space validates the mode of the SMC + * and generates an operation corresponding to this mode. + */ +extern void smc_init(unsigned long hsb_hz); + +/*! \brief Return the size of the peripheral connected . + * \param cs The chip select value + */ +extern unsigned char smc_get_cs_size(unsigned char cs); + +#endif // _SMC_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.c new file mode 100644 index 000000000..1008c9440 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.c @@ -0,0 +1,183 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief EIC driver for AVR32 UC3. + * + * AVR32 External Interrupt Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an EIC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "compiler.h" +#include "preprocessor.h" +#include "eic.h" + + + +void eic_init(volatile avr32_eic_t *eic, const eic_options_t *opt, unsigned int nb_lines) +{ + int i; + for (i = 0; i < nb_lines; i++) + { + // Set up mode level + eic->mode = (opt[i].eic_mode == 1) ? (eic->mode | (1 << opt[i].eic_line)) : (eic->mode & ~(1 << opt[i].eic_line)); + // Set up edge type + eic->edge = (opt[i].eic_edge == 1) ? (eic->edge | (1 << opt[i].eic_line)) : (eic->edge & ~(1 << opt[i].eic_line)); + // Set up level + eic->level = (opt[i].eic_level == 1) ? (eic->level | (1 << opt[i].eic_line)) : (eic->level & ~(1 << opt[i].eic_line)); + // Set up if filter is used + eic->filter = (opt[i].eic_filter == 1) ? (eic->filter | (1 << opt[i].eic_line)) : (eic->filter & ~(1 << opt[i].eic_line)); + // Set up which mode is used : asynchronous mode/ synchronous mode + eic->async = (opt[i].eic_async == 1) ? (eic->async | (1 << opt[i].eic_line)) : (eic->async & ~(1 << opt[i].eic_line)); + } +} + +void eic_enable_lines(volatile avr32_eic_t *eic, unsigned int mask_lines) +{ + eic->en = mask_lines; +} + +void eic_enable_line(volatile avr32_eic_t *eic, unsigned int line_number) +{ + // Enable line line_number + eic->en = 1 << line_number; +} + +void eic_disable_lines(volatile avr32_eic_t *eic, unsigned int mask_lines) +{ + eic->dis = mask_lines; +} + +void eic_disable_line(volatile avr32_eic_t *eic, unsigned int line_number) +{ + // Disable line line_number + eic->dis = 1 << line_number; +} + +Bool eic_is_line_enabled(volatile avr32_eic_t *eic, unsigned int line_number) +{ + return (eic->ctrl & (1 << line_number)) != 0; +} + +void eic_enable_interrupt_lines(volatile avr32_eic_t *eic, unsigned int mask_lines) +{ + eic->ier = mask_lines; +} + +void eic_enable_interrupt_line(volatile avr32_eic_t *eic, unsigned int line_number) +{ + // Enable line line_number + eic->ier = 1 << line_number; +} + +void eic_disable_interrupt_lines(volatile avr32_eic_t *eic, unsigned int mask_lines) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + eic->idr = mask_lines; + eic->imr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + +void eic_disable_interrupt_line(volatile avr32_eic_t *eic, unsigned int line_number) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + // Disable line line_number + if (global_interrupt_enabled) Disable_global_interrupt(); + eic->idr = 1 << line_number; + eic->imr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + +Bool eic_is_interrupt_line_enabled(volatile avr32_eic_t *eic, unsigned int line_number) +{ + return (eic->imr & (1 << line_number)) != 0; +} + +void eic_clear_interrupt_lines(volatile avr32_eic_t *eic, unsigned int mask_lines) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + eic->icr = mask_lines; + eic->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + +void eic_clear_interrupt_line(volatile avr32_eic_t *eic, unsigned int line_number) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + // Clear line line_number + if (global_interrupt_enabled) Disable_global_interrupt(); + eic->icr = 1 << line_number; + eic->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + +Bool eic_is_interrupt_line_pending(volatile avr32_eic_t *eic, unsigned int line_number) +{ + return (eic->isr & (1 << line_number)) != 0; +} + +#if !defined(AVR32_EIC_301_H_INCLUDED) +void eic_enable_interrupt_scan(volatile avr32_eic_t *eic,unsigned int presc) +{ + // Enable SCAN function with PRESC value + eic->scan |= (presc << AVR32_EIC_SCAN_PRESC_OFFSET) | (1 << AVR32_EIC_SCAN_EN_OFFSET); +} + +void eic_disable_interrupt_scan(volatile avr32_eic_t *eic) +{ + // Disable SCAN function + eic->scan = 0 << AVR32_EIC_SCAN_EN_OFFSET; +} + +unsigned long eic_get_interrupt_pad_scan(volatile avr32_eic_t *eic) +{ + // Return pad number that causes interrupt + return(eic->scan>>AVR32_EIC_SCAN_PIN_OFFSET); +} +#endif \ No newline at end of file diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.h new file mode 100644 index 000000000..32641b78e --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/EIC/eic.h @@ -0,0 +1,275 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief EIC driver for AVR32 UC3. + * + * AVR32 External Interrupt Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an EIC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _EIC_H_ +#define _EIC_H_ + +#include "compiler.h" + +/*! \name External Interrupt lines + */ +//! @{ +#if (UC3A || UC3B) +#define EXT_INT0 AVR32_EIC_INT0 //!< Line 0 +#define EXT_INT1 AVR32_EIC_INT1 //!< Line 1 +#define EXT_INT2 AVR32_EIC_INT2 //!< Line 2 +#define EXT_INT3 AVR32_EIC_INT3 //!< Line 3 +#define EXT_INT4 AVR32_EIC_INT4 //!< Line 4 +#define EXT_INT5 AVR32_EIC_INT5 //!< Line 5 +#define EXT_INT6 AVR32_EIC_INT6 //!< Line 6 +#define EXT_INT7 AVR32_EIC_INT7 //!< Line 7 +#define EXT_NMI AVR32_EIC_NMI //!< Line 8 +#else +#define EXT_INT0 AVR32_EIC_INT1 //!< Line 0 +#define EXT_INT1 AVR32_EIC_INT2 //!< Line 1 +#define EXT_INT2 AVR32_EIC_INT3 //!< Line 2 +#define EXT_INT3 AVR32_EIC_INT4 //!< Line 3 +#define EXT_INT4 AVR32_EIC_INT5 //!< Line 4 +#define EXT_INT5 AVR32_EIC_INT6 //!< Line 5 +#define EXT_INT6 AVR32_EIC_INT7 //!< Line 6 +#define EXT_INT7 AVR32_EIC_INT8 //!< Line 7 +#define EXT_NMI AVR32_EIC_NMI //!< Line 8 + +#endif + +//! @} + +/*! \name Mode Trigger Options + */ +//! @{ +#define EIC_MODE_EDGE_TRIGGERED AVR32_EIC_EDGE_IRQ //!< +#define EIC_MODE_LEVEL_TRIGGERED AVR32_EIC_LEVEL_IRQ //!< +//! @} + +/*! \name Edge level Options + */ +//! @{ +#define EIC_EDGE_FALLING_EDGE AVR32_EIC_FALLING_EDGE //!< +#define EIC_EDGE_RISING_EDGE AVR32_EIC_RISING_EDGE //!< +//! @} + +/*! \name Level Options + */ +//! @{ +#define EIC_LEVEL_LOW_LEVEL AVR32_EIC_LOW_LEVEL //!< +#define EIC_LEVEL_HIGH_LEVEL AVR32_EIC_HIGH_LEVEL //!< +//! @} + +/*! \name Filter Options + */ +//! @{ +#define EIC_FILTER_ENABLED AVR32_EIC_FILTER_ON //!< +#define EIC_FILTER_DISABLED AVR32_EIC_FILTER_OFF //!< +//! @} + +/*! \name Synch Mode Options + */ +//! @{ +#define EIC_SYNCH_MODE AVR32_EIC_SYNC //!< +#define EIC_ASYNCH_MODE AVR32_EIC_USE_ASYNC //!< +//! @} + +//! Configuration parameters of the EIC module. +typedef struct +{ + //!Line + unsigned char eic_line; + + //! Mode : EDGE_LEVEL or TRIGGER_LEVEL + unsigned char eic_mode; + + //! Edge : FALLING_EDGE or RISING_EDGE + unsigned char eic_edge; + + //! Level : LOW_LEVEL or HIGH_LEVEL + unsigned char eic_level; + + //! Filter: NOT_FILTERED or FILTERED + unsigned char eic_filter; + + //! Async: SYNC mode or ASYNC + unsigned char eic_async; + +} eic_options_t; + + +/*! \brief Init the EIC driver. + * + * \param eic Base address of the EIC module + * \param opt Configuration parameters of the EIC module (see \ref eic_options_t) + * \param nb_lines Number of lines to consider, equal to size of opt buffer + */ +extern void eic_init(volatile avr32_eic_t *eic, const eic_options_t *opt, unsigned int nb_lines); + +/*! \brief Enable the EIC driver. + * + * \param eic Base address of the EIC module + * \param mask_lines Mask for current selected lines + */ +extern void eic_enable_lines(volatile avr32_eic_t *eic, unsigned int mask_lines); + +/*! \brief Enable the EIC driver. + * + * \param eic Base address of the EIC module + * \param line_number Line number to enable + */ +extern void eic_enable_line(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Disable the EIC driver. + * + * \param eic Base address of the EIC module + * \param mask_lines Mask for current selected lines + */ +extern void eic_disable_lines(volatile avr32_eic_t *eic, unsigned int mask_lines); + +/*! \brief Disable the EIC driver. + * + * \param eic Base address of the EIC module + * \param line_number Line number to disable + */ +extern void eic_disable_line(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Tells whether an EIC line is enabled. + * + * \param eic Base address of the EIC module + * \param line_number Line number to test + * + * \return Whether an EIC line is enabled. + */ +extern Bool eic_is_line_enabled(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \name Interrupt Control Functions + */ +//! @{ + +/*! \brief Enable the interrupt feature of the EIC. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param mask_lines Mask for current selected lines + */ +extern void eic_enable_interrupt_lines(volatile avr32_eic_t *eic, unsigned int mask_lines); + +/*! \brief Enable the interrupt feature of the EIC. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param line_number Line number to enable + */ +extern void eic_enable_interrupt_line(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Disable the interrupt feature of the EIC. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param mask_lines Mask for current selected lines + */ +extern void eic_disable_interrupt_lines(volatile avr32_eic_t *eic, unsigned int mask_lines); + +/*! \brief Disable the interrupt feature of the EIC. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param line_number Line number to disable + */ +extern void eic_disable_interrupt_line(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Tells whether an EIC interrupt line is enabled. + * + * \param eic Base address of the EIC module + * \param line_number Line number to test + * + * \return Whether an EIC interrupt line is enabled. + */ +extern Bool eic_is_interrupt_line_enabled(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Clear the interrupt flag. + * Call this function once you've handled the interrupt. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param mask_lines Mask for current selected lines + */ +extern void eic_clear_interrupt_lines(volatile avr32_eic_t *eic, unsigned int mask_lines); + +/*! \brief Clear the interrupt flag. + * Call this function once you've handled the interrupt. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param line_number Line number to clear + */ +extern void eic_clear_interrupt_line(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Tells whether an EIC interrupt line is pending. + * + * \param eic Base address of the EIC module + * \param line_number Line number to test + * + * \return Whether an EIC interrupt line is pending. + */ +extern Bool eic_is_interrupt_line_pending(volatile avr32_eic_t *eic, unsigned int line_number); + +/*! \brief Enable the interrupt scan feature of the EIC. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + * \param presc Prescale select for the keypad scan rate in the range [0,31]. + */ +extern void eic_enable_interrupt_scan(volatile avr32_eic_t *eic, unsigned int presc); + +/*! \brief Disable the interrupt scan feature of the EIC. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + */ +extern void eic_disable_interrupt_scan(volatile avr32_eic_t *eic); + +/*! \brief Return scan pad number that causes interrupt. + * + * \param eic Base address of the EIC (i.e. &AVR32_EIC). + */ +extern unsigned long eic_get_interrupt_pad_scan(volatile avr32_eic_t *eic); + +//! @} + + +#endif // _EIC_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c new file mode 100644 index 000000000..2eee15c0a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c @@ -0,0 +1,1117 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief FLASHC driver for AVR32 UC3. + * + * AVR32 Flash Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a FLASHC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include <stddef.h> +#include "compiler.h" +#include "flashc.h" + + +/*! \name FLASHC Writable Bit-Field Registers + */ +//! @{ + +typedef union +{ + unsigned long fcr; + avr32_flashc_fcr_t FCR; +} u_avr32_flashc_fcr_t; + +typedef union +{ + unsigned long fcmd; + avr32_flashc_fcmd_t FCMD; +} u_avr32_flashc_fcmd_t; + +//! @} + + +/*! \name Flash Properties + */ +//! @{ + + +unsigned int flashc_get_flash_size(void) +{ +#if (defined AVR32_FLASHC_300_H_INCLUDED) + static const unsigned int FLASH_SIZE[1 << AVR32_FLASHC_PR_FSZ_SIZE] = + { + 32 << 10, + 64 << 10, + 128 << 10, + 256 << 10, + 384 << 10, + 512 << 10, + 768 << 10, + 1024 << 10 + }; + return FLASH_SIZE[(AVR32_FLASHC.pr & AVR32_FLASHC_PR_FSZ_MASK) >> AVR32_FLASHC_PR_FSZ_OFFSET]; +#else + static const unsigned int FLASH_SIZE[1 << AVR32_FLASHC_FSR_FSZ_SIZE] = + { + 32 << 10, + 64 << 10, + 128 << 10, + 256 << 10, + 384 << 10, + 512 << 10, + 768 << 10, + 1024 << 10 + }; + return FLASH_SIZE[(AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_FSZ_MASK) >> AVR32_FLASHC_FSR_FSZ_OFFSET]; +#endif +} + + +unsigned int flashc_get_page_count(void) +{ + return flashc_get_flash_size() / AVR32_FLASHC_PAGE_SIZE; +} + + +unsigned int flashc_get_page_count_per_region(void) +{ + return flashc_get_page_count() / AVR32_FLASHC_REGIONS; +} + + +unsigned int flashc_get_page_region(int page_number) +{ + return ((page_number >= 0) ? page_number : flashc_get_page_number()) / flashc_get_page_count_per_region(); +} + + +unsigned int flashc_get_region_first_page_number(unsigned int region) +{ + return region * flashc_get_page_count_per_region(); +} + + +//! @} + + +/*! \name FLASHC Control + */ +//! @{ + + +unsigned int flashc_get_wait_state(void) +{ + return (AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_FWS_MASK) >> AVR32_FLASHC_FCR_FWS_OFFSET; +} + + +void flashc_set_wait_state(unsigned int wait_state) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.fws = wait_state; + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +Bool flashc_is_ready_int_enabled(void) +{ + return ((AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_FRDY_MASK) != 0); +} + + +void flashc_enable_ready_int(Bool enable) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.frdy = (enable != FALSE); + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +Bool flashc_is_lock_error_int_enabled(void) +{ + return ((AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_LOCKE_MASK) != 0); +} + + +void flashc_enable_lock_error_int(Bool enable) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.locke = (enable != FALSE); + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +Bool flashc_is_prog_error_int_enabled(void) +{ + return ((AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_PROGE_MASK) != 0); +} + + +void flashc_enable_prog_error_int(Bool enable) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.proge = (enable != FALSE); + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +//! @} + + +/*! \name FLASHC Status + */ +//! @{ + + +Bool flashc_is_ready(void) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_FRDY_MASK) != 0); +} + + +void flashc_default_wait_until_ready(void) +{ + while (!flashc_is_ready()); +} + + +void (*volatile flashc_wait_until_ready)(void) = flashc_default_wait_until_ready; + + +/*! \brief Gets the error status of the FLASHC. + * + * \return The error status of the FLASHC built up from + * \c AVR32_FLASHC_FSR_LOCKE_MASK and \c AVR32_FLASHC_FSR_PROGE_MASK. + * + * \warning This hardware error status is cleared by all functions reading the + * Flash Status Register (FSR). This function is therefore not part of + * the driver's API which instead presents \ref flashc_is_lock_error + * and \ref flashc_is_programming_error. + */ +static unsigned int flashc_get_error_status(void) +{ + return AVR32_FLASHC.fsr & (AVR32_FLASHC_FSR_LOCKE_MASK | + AVR32_FLASHC_FSR_PROGE_MASK); +} + + +//! Sticky error status of the FLASHC. +//! This variable is updated by functions that issue FLASHC commands. It +//! contains the cumulated FLASHC error status of all the FLASHC commands issued +//! by a function. +static unsigned int flashc_error_status = 0; + + +Bool flashc_is_lock_error(void) +{ + return ((flashc_error_status & AVR32_FLASHC_FSR_LOCKE_MASK) != 0); +} + + +Bool flashc_is_programming_error(void) +{ + return ((flashc_error_status & AVR32_FLASHC_FSR_PROGE_MASK) != 0); +} + + +//! @} + + +/*! \name FLASHC Command Control + */ +//! @{ + + +unsigned int flashc_get_command(void) +{ + return (AVR32_FLASHC.fcmd & AVR32_FLASHC_FCMD_CMD_MASK) >> AVR32_FLASHC_FCMD_CMD_OFFSET; +} + + +unsigned int flashc_get_page_number(void) +{ + return (AVR32_FLASHC.fcmd & AVR32_FLASHC_FCMD_PAGEN_MASK) >> AVR32_FLASHC_FCMD_PAGEN_OFFSET; +} + + +void flashc_issue_command(unsigned int command, int page_number) +{ + u_avr32_flashc_fcmd_t u_avr32_flashc_fcmd; + flashc_wait_until_ready(); + u_avr32_flashc_fcmd.fcmd = AVR32_FLASHC.fcmd; + u_avr32_flashc_fcmd.FCMD.cmd = command; + if (page_number >= 0) u_avr32_flashc_fcmd.FCMD.pagen = page_number; + u_avr32_flashc_fcmd.FCMD.key = AVR32_FLASHC_FCMD_KEY_KEY; + AVR32_FLASHC.fcmd = u_avr32_flashc_fcmd.fcmd; + flashc_error_status = flashc_get_error_status(); + flashc_wait_until_ready(); +} + + +//! @} + + +/*! \name FLASHC Global Commands + */ +//! @{ + + +void flashc_no_operation(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_NOP, -1); +} + + +void flashc_erase_all(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EA, -1); +} + + +//! @} + + +/*! \name FLASHC Protection Mechanisms + */ +//! @{ + + +Bool flashc_is_security_bit_active(void) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_SECURITY_MASK) != 0); +} + + +void flashc_activate_security_bit(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_SSB, -1); +} + + +unsigned int flashc_get_bootloader_protected_size(void) +{ + unsigned int bootprot = (1 << AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE) - 1 - + flashc_read_gp_fuse_bitfield(AVR32_FLASHC_FGPFRLO_BOOTPROT_OFFSET, + AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE); + return (bootprot) ? AVR32_FLASHC_PAGE_SIZE << bootprot : 0; +} + + +unsigned int flashc_set_bootloader_protected_size(unsigned int bootprot_size) +{ + flashc_set_gp_fuse_bitfield(AVR32_FLASHC_FGPFRLO_BOOTPROT_OFFSET, + AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE, + (1 << AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE) - 1 - + ((bootprot_size) ? + 32 - clz((((min(max(bootprot_size, AVR32_FLASHC_PAGE_SIZE << 1), + AVR32_FLASHC_PAGE_SIZE << + ((1 << AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE) - 1)) + + AVR32_FLASHC_PAGE_SIZE - 1) / + AVR32_FLASHC_PAGE_SIZE) << 1) - 1) - 1 : + 0)); + return flashc_get_bootloader_protected_size(); +} + + +Bool flashc_is_external_privileged_fetch_locked(void) +{ + return (!flashc_read_gp_fuse_bit(AVR32_FLASHC_FGPFRLO_EPFL_OFFSET)); +} + + +void flashc_lock_external_privileged_fetch(Bool lock) +{ + flashc_set_gp_fuse_bit(AVR32_FLASHC_FGPFRLO_EPFL_OFFSET, !lock); +} + + +Bool flashc_is_page_region_locked(int page_number) +{ + return flashc_is_region_locked(flashc_get_page_region(page_number)); +} + + +Bool flashc_is_region_locked(unsigned int region) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_LOCK0_MASK << (region & (AVR32_FLASHC_REGIONS - 1))) != 0); +} + + +void flashc_lock_page_region(int page_number, Bool lock) +{ + flashc_issue_command((lock) ? AVR32_FLASHC_FCMD_CMD_LP : AVR32_FLASHC_FCMD_CMD_UP, page_number); +} + + +void flashc_lock_region(unsigned int region, Bool lock) +{ + flashc_lock_page_region(flashc_get_region_first_page_number(region), lock); +} + + +void flashc_lock_all_regions(Bool lock) +{ + unsigned int error_status = 0; + unsigned int region = AVR32_FLASHC_REGIONS; + while (region) + { + flashc_lock_region(--region, lock); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +//! @} + + +/*! \name Access to General-Purpose Fuses + */ +//! @{ + + +Bool flashc_read_gp_fuse_bit(unsigned int gp_fuse_bit) +{ + return ((flashc_read_all_gp_fuses() & 1ULL << (gp_fuse_bit & 0x3F)) != 0); +} + + +U64 flashc_read_gp_fuse_bitfield(unsigned int pos, unsigned int width) +{ + return flashc_read_all_gp_fuses() >> (pos & 0x3F) & ((1ULL << min(width, 64)) - 1); +} + + +U8 flashc_read_gp_fuse_byte(unsigned int gp_fuse_byte) +{ + return flashc_read_all_gp_fuses() >> ((gp_fuse_byte & 0x07) << 3); +} + + +U64 flashc_read_all_gp_fuses(void) +{ + return AVR32_FLASHC.fgpfrlo | (U64)AVR32_FLASHC.fgpfrhi << 32; +} + + +Bool flashc_erase_gp_fuse_bit(unsigned int gp_fuse_bit, Bool check) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EGPB, gp_fuse_bit & 0x3F); + return (check) ? flashc_read_gp_fuse_bit(gp_fuse_bit) : TRUE; +} + + +Bool flashc_erase_gp_fuse_bitfield(unsigned int pos, unsigned int width, Bool check) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_bit; + pos &= 0x3F; + width = min(width, 64); + for (gp_fuse_bit = pos; gp_fuse_bit < pos + width; gp_fuse_bit++) + { + flashc_erase_gp_fuse_bit(gp_fuse_bit, FALSE); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; + return (check) ? (flashc_read_gp_fuse_bitfield(pos, width) == (1ULL << width) - 1) : TRUE; +} + + +Bool flashc_erase_gp_fuse_byte(unsigned int gp_fuse_byte, Bool check) +{ + unsigned int error_status; + unsigned int current_gp_fuse_byte; + U64 value = flashc_read_all_gp_fuses(); + flashc_erase_all_gp_fuses(FALSE); + error_status = flashc_error_status; + for (current_gp_fuse_byte = 0; current_gp_fuse_byte < 8; current_gp_fuse_byte++, value >>= 8) + { + if (current_gp_fuse_byte != gp_fuse_byte) + { + flashc_write_gp_fuse_byte(current_gp_fuse_byte, value); + error_status |= flashc_error_status; + } + } + flashc_error_status = error_status; + return (check) ? (flashc_read_gp_fuse_byte(gp_fuse_byte) == 0xFF) : TRUE; +} + + +Bool flashc_erase_all_gp_fuses(Bool check) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EAGPF, -1); + return (check) ? (flashc_read_all_gp_fuses() == 0xFFFFFFFFFFFFFFFFULL) : TRUE; +} + + +void flashc_write_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value) +{ + if (!value) + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_WGPB, gp_fuse_bit & 0x3F); +} + + +void flashc_write_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_bit; + pos &= 0x3F; + width = min(width, 64); + for (gp_fuse_bit = pos; gp_fuse_bit < pos + width; gp_fuse_bit++, value >>= 1) + { + flashc_write_gp_fuse_bit(gp_fuse_bit, value & 0x01); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +void flashc_write_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_PGPFB, (gp_fuse_byte & 0x07) | value << 3); +} + + +void flashc_write_all_gp_fuses(U64 value) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_byte; + for (gp_fuse_byte = 0; gp_fuse_byte < 8; gp_fuse_byte++, value >>= 8) + { + flashc_write_gp_fuse_byte(gp_fuse_byte, value); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +void flashc_set_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value) +{ + if (value) + flashc_erase_gp_fuse_bit(gp_fuse_bit, FALSE); + else + flashc_write_gp_fuse_bit(gp_fuse_bit, FALSE); +} + + +void flashc_set_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_bit; + pos &= 0x3F; + width = min(width, 64); + for (gp_fuse_bit = pos; gp_fuse_bit < pos + width; gp_fuse_bit++, value >>= 1) + { + flashc_set_gp_fuse_bit(gp_fuse_bit, value & 0x01); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +void flashc_set_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value) +{ + unsigned int error_status; + switch (value) + { + case 0xFF: + flashc_erase_gp_fuse_byte(gp_fuse_byte, FALSE); + break; + case 0x00: + flashc_write_gp_fuse_byte(gp_fuse_byte, 0x00); + break; + default: + flashc_erase_gp_fuse_byte(gp_fuse_byte, FALSE); + error_status = flashc_error_status; + flashc_write_gp_fuse_byte(gp_fuse_byte, value); + flashc_error_status |= error_status; + } +} + + +void flashc_set_all_gp_fuses(U64 value) +{ + unsigned int error_status; + switch (value) + { + case 0xFFFFFFFFFFFFFFFFULL: + flashc_erase_all_gp_fuses(FALSE); + break; + case 0x0000000000000000ULL: + flashc_write_all_gp_fuses(0x0000000000000000ULL); + break; + default: + flashc_erase_all_gp_fuses(FALSE); + error_status = flashc_error_status; + flashc_write_all_gp_fuses(value); + flashc_error_status |= error_status; + } +} + + +//! @} + + +/*! \name Access to Flash Pages + */ +//! @{ + + +void flashc_clear_page_buffer(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_CPB, -1); +} + + +Bool flashc_is_page_erased(void) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_QPRR_MASK) != 0); +} + + +Bool flashc_quick_page_read(int page_number) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_QPR, page_number); + return flashc_is_page_erased(); +} + + +Bool flashc_erase_page(int page_number, Bool check) +{ + Bool page_erased = TRUE; + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EP, page_number); + if (check) + { + unsigned int error_status = flashc_error_status; + page_erased = flashc_quick_page_read(-1); + flashc_error_status |= error_status; + } + return page_erased; +} + + +Bool flashc_erase_all_pages(Bool check) +{ + Bool all_pages_erased = TRUE; + unsigned int error_status = 0; + unsigned int page_number = flashc_get_page_count(); + while (page_number) + { + all_pages_erased &= flashc_erase_page(--page_number, check); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; + return all_pages_erased; +} + + +void flashc_write_page(int page_number) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_WP, page_number); +} + + +Bool flashc_quick_user_page_read(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_QPRUP, -1); + return flashc_is_page_erased(); +} + + +Bool flashc_erase_user_page(Bool check) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EUP, -1); + return (check) ? flashc_quick_user_page_read() : TRUE; +} + + +void flashc_write_user_page(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_WUP, -1); +} + + +volatile void *flashc_memset8(volatile void *dst, U8 src, size_t nbytes, Bool erase) +{ + return flashc_memset16(dst, src | (U16)src << 8, nbytes, erase); +} + + +volatile void *flashc_memset16(volatile void *dst, U16 src, size_t nbytes, Bool erase) +{ + return flashc_memset32(dst, src | (U32)src << 16, nbytes, erase); +} + + +volatile void *flashc_memset32(volatile void *dst, U32 src, size_t nbytes, Bool erase) +{ + return flashc_memset64(dst, src | (U64)src << 32, nbytes, erase); +} + + +volatile void *flashc_memset64(volatile void *dst, U64 src, size_t nbytes, Bool erase) +{ + // Use aggregated pointers to have several alignments available for a same address. + UnionCVPtr flash_array_end; + UnionVPtr dest; + Union64 source = {0}; + StructCVPtr dest_end; + UnionCVPtr flash_page_source_end; + Bool incomplete_flash_page_end; + Union64 flash_dword; + UnionVPtr tmp; + unsigned int error_status = 0; + unsigned int i; + + // Reformat arguments. + flash_array_end.u8ptr = AVR32_FLASH + flashc_get_flash_size(); + dest.u8ptr = dst; + for (i = (Get_align((U32)dest.u8ptr, sizeof(U64)) - 1) & (sizeof(U64) - 1); + src; i = (i - 1) & (sizeof(U64) - 1)) + { + source.u8[i] = src; + src >>= 8; + } + dest_end.u8ptr = dest.u8ptr + nbytes; + + // If destination is outside flash, go to next flash page if any. + if (dest.u8ptr < AVR32_FLASH) + { + dest.u8ptr = AVR32_FLASH; + } + else if (flash_array_end.u8ptr <= dest.u8ptr && dest.u8ptr < AVR32_FLASHC_USER_PAGE) + { + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + + // If end of destination is outside flash, move it to the end of the previous flash page if any. + if (dest_end.u8ptr > AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE) + { + dest_end.u8ptr = AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE; + } + else if (AVR32_FLASHC_USER_PAGE >= dest_end.u8ptr && dest_end.u8ptr > flash_array_end.u8ptr) + { + dest_end.u8ptr = flash_array_end.u8ptr; + } + + // Align each end of destination pointer with its natural boundary. + dest_end.u16ptr = (U16 *)Align_down((U32)dest_end.u8ptr, sizeof(U16)); + dest_end.u32ptr = (U32 *)Align_down((U32)dest_end.u16ptr, sizeof(U32)); + dest_end.u64ptr = (U64 *)Align_down((U32)dest_end.u32ptr, sizeof(U64)); + + // While end of destination is not reached... + while (dest.u8ptr < dest_end.u8ptr) + { + // Clear the page buffer in order to prepare data for a flash page write. + flashc_clear_page_buffer(); + error_status |= flashc_error_status; + + // Determine where the source data will end in the current flash page. + flash_page_source_end.u64ptr = + (U64 *)min((U32)dest_end.u64ptr, + Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) + AVR32_FLASHC_PAGE_SIZE); + + // Determine if the current destination page has an incomplete end. + incomplete_flash_page_end = (Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) >= + Align_down((U32)dest_end.u8ptr, AVR32_FLASHC_PAGE_SIZE)); + + // Use a flash double-word buffer to manage unaligned accesses. + flash_dword.u64 = source.u64; + + // If destination does not point to the beginning of the current flash page... + if (!Test_align((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE)) + { + // Fill the beginning of the page buffer with the current flash page data. + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + for (tmp.u8ptr = (U8 *)Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE); + tmp.u64ptr < (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + + // If destination is not 64-bit aligned... + if (!Test_align((U32)dest.u8ptr, sizeof(U64))) + { + // Fill the beginning of the flash double-word buffer with the current + // flash page data. + // This is required by the hardware, even if page erase is not + // requested, in order to be able to write successfully to erased parts + // of flash pages that have already been written to. + for (i = 0; i < Get_align((U32)dest.u8ptr, sizeof(U64)); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Align the destination pointer with its 64-bit boundary. + dest.u64ptr = (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + + // If the current destination double-word is not the last one... + if (dest.u64ptr < dest_end.u64ptr) + { + // Write the flash double-word buffer to the page buffer and reinitialize it. + *dest.u64ptr++ = flash_dword.u64; + flash_dword.u64 = source.u64; + } + } + } + + // Write the source data to the page buffer with 64-bit alignment. + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + *dest.u64ptr++ = source.u64; + + // If the current destination page has an incomplete end... + if (incomplete_flash_page_end) + { + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + { + tmp.u8ptr = (volatile U8 *)dest_end.u8ptr; + + // If end of destination is not 64-bit aligned... + if (!Test_align((U32)dest_end.u8ptr, sizeof(U64))) + { + // Fill the end of the flash double-word buffer with the current flash page data. + for (i = Get_align((U32)dest_end.u8ptr, sizeof(U64)); i < sizeof(U64); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Write the flash double-word buffer to the page buffer. + *dest.u64ptr++ = flash_dword.u64; + } + + // Fill the end of the page buffer with the current flash page data. + for (; !Test_align((U32)tmp.u64ptr, AVR32_FLASHC_PAGE_SIZE); tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + } + } + + // If the current flash page is in the flash array... + if (dest.u8ptr <= AVR32_FLASHC_USER_PAGE) + { + // Erase the current page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_page(-1, FALSE); + error_status |= flashc_error_status; + } + flashc_write_page(-1); + error_status |= flashc_error_status; + + // If the end of the flash array is reached, go to the User page. + if (dest.u8ptr >= flash_array_end.u8ptr) + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + // If the current flash page is the User page... + else + { + // Erase the User page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_user_page(FALSE); + error_status |= flashc_error_status; + } + flashc_write_user_page(); + error_status |= flashc_error_status; + } + } + + // Update the FLASHC error status. + flashc_error_status = error_status; + + // Return the initial destination pointer as the standard memset function does. + return dst; +} + + +volatile void *flashc_memcpy(volatile void *dst, const void *src, size_t nbytes, Bool erase) +{ + // Use aggregated pointers to have several alignments available for a same address. + UnionCVPtr flash_array_end; + UnionVPtr dest; + UnionCPtr source; + StructCVPtr dest_end; + UnionCVPtr flash_page_source_end; + Bool incomplete_flash_page_end; + Union64 flash_dword; + Bool flash_dword_pending = FALSE; + UnionVPtr tmp; + unsigned int error_status = 0; + unsigned int i, j; + + // Reformat arguments. + flash_array_end.u8ptr = AVR32_FLASH + flashc_get_flash_size(); + dest.u8ptr = dst; + source.u8ptr = src; + dest_end.u8ptr = dest.u8ptr + nbytes; + + // If destination is outside flash, go to next flash page if any. + if (dest.u8ptr < AVR32_FLASH) + { + source.u8ptr += AVR32_FLASH - dest.u8ptr; + dest.u8ptr = AVR32_FLASH; + } + else if (flash_array_end.u8ptr <= dest.u8ptr && dest.u8ptr < AVR32_FLASHC_USER_PAGE) + { + source.u8ptr += AVR32_FLASHC_USER_PAGE - dest.u8ptr; + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + + // If end of destination is outside flash, move it to the end of the previous flash page if any. + if (dest_end.u8ptr > AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE) + { + dest_end.u8ptr = AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE; + } + else if (AVR32_FLASHC_USER_PAGE >= dest_end.u8ptr && dest_end.u8ptr > flash_array_end.u8ptr) + { + dest_end.u8ptr = flash_array_end.u8ptr; + } + + // Align each end of destination pointer with its natural boundary. + dest_end.u16ptr = (U16 *)Align_down((U32)dest_end.u8ptr, sizeof(U16)); + dest_end.u32ptr = (U32 *)Align_down((U32)dest_end.u16ptr, sizeof(U32)); + dest_end.u64ptr = (U64 *)Align_down((U32)dest_end.u32ptr, sizeof(U64)); + + // While end of destination is not reached... + while (dest.u8ptr < dest_end.u8ptr) + { + // Clear the page buffer in order to prepare data for a flash page write. + flashc_clear_page_buffer(); + error_status |= flashc_error_status; + + // Determine where the source data will end in the current flash page. + flash_page_source_end.u64ptr = + (U64 *)min((U32)dest_end.u64ptr, + Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) + AVR32_FLASHC_PAGE_SIZE); + + // Determine if the current destination page has an incomplete end. + incomplete_flash_page_end = (Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) >= + Align_down((U32)dest_end.u8ptr, AVR32_FLASHC_PAGE_SIZE)); + + // If destination does not point to the beginning of the current flash page... + if (!Test_align((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE)) + { + // Fill the beginning of the page buffer with the current flash page data. + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + for (tmp.u8ptr = (U8 *)Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE); + tmp.u64ptr < (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + + // If destination is not 64-bit aligned... + if (!Test_align((U32)dest.u8ptr, sizeof(U64))) + { + // Fill the beginning of the flash double-word buffer with the current + // flash page data. + // This is required by the hardware, even if page erase is not + // requested, in order to be able to write successfully to erased parts + // of flash pages that have already been written to. + for (i = 0; i < Get_align((U32)dest.u8ptr, sizeof(U64)); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Fill the end of the flash double-word buffer with the source data. + for (; i < sizeof(U64); i++) + flash_dword.u8[i] = *source.u8ptr++; + + // Align the destination pointer with its 64-bit boundary. + dest.u64ptr = (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + + // If the current destination double-word is not the last one... + if (dest.u64ptr < dest_end.u64ptr) + { + // Write the flash double-word buffer to the page buffer. + *dest.u64ptr++ = flash_dword.u64; + } + // If the current destination double-word is the last one, the flash + // double-word buffer must be kept for later. + else flash_dword_pending = TRUE; + } + } + + // Read the source data with the maximal possible alignment and write it to + // the page buffer with 64-bit alignment. + switch (Get_align((U32)source.u8ptr, sizeof(U32))) + { + case 0: + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + *dest.u64ptr++ = *source.u64ptr++; + break; + + case sizeof(U16): + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + { + for (j = 0; j < sizeof(U64) / sizeof(U16); j++) flash_dword.u16[j] = *source.u16ptr++; + *dest.u64ptr++ = flash_dword.u64; + } + break; + + default: + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + { + for (j = 0; j < sizeof(U64); j++) flash_dword.u8[j] = *source.u8ptr++; + *dest.u64ptr++ = flash_dword.u64; + } + } + + // If the current destination page has an incomplete end... + if (incomplete_flash_page_end) + { + // If the flash double-word buffer is in use, do not initialize it. + if (flash_dword_pending) i = Get_align((U32)dest_end.u8ptr, sizeof(U64)); + // If the flash double-word buffer is free... + else + { + // Fill the beginning of the flash double-word buffer with the source data. + for (i = 0; i < Get_align((U32)dest_end.u8ptr, sizeof(U64)); i++) + flash_dword.u8[i] = *source.u8ptr++; + } + + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + { + tmp.u8ptr = (volatile U8 *)dest_end.u8ptr; + + // If end of destination is not 64-bit aligned... + if (!Test_align((U32)dest_end.u8ptr, sizeof(U64))) + { + // Fill the end of the flash double-word buffer with the current flash page data. + for (; i < sizeof(U64); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Write the flash double-word buffer to the page buffer. + *dest.u64ptr++ = flash_dword.u64; + } + + // Fill the end of the page buffer with the current flash page data. + for (; !Test_align((U32)tmp.u64ptr, AVR32_FLASHC_PAGE_SIZE); tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + } + } + + // If the current flash page is in the flash array... + if (dest.u8ptr <= AVR32_FLASHC_USER_PAGE) + { + // Erase the current page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_page(-1, FALSE); + error_status |= flashc_error_status; + } + flashc_write_page(-1); + error_status |= flashc_error_status; + + // If the end of the flash array is reached, go to the User page. + if (dest.u8ptr >= flash_array_end.u8ptr) + { + source.u8ptr += AVR32_FLASHC_USER_PAGE - dest.u8ptr; + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + } + // If the current flash page is the User page... + else + { + // Erase the User page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_user_page(FALSE); + error_status |= flashc_error_status; + } + flashc_write_user_page(); + error_status |= flashc_error_status; + } + } + + // Update the FLASHC error status. + flashc_error_status = error_status; + + // Return the initial destination pointer as the standard memcpy function does. + return dst; +} + + +#if UC3C +void flashc_set_flash_waitstate_and_readmode(unsigned long cpu_f_hz) +{ + //! Device-specific data + #undef AVR32_FLASHC_FWS_0_MAX_FREQ + #undef AVR32_FLASHC_FWS_1_MAX_FREQ + #undef AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ + #undef AVR32_FLASHC_HSEN_FWS_1_MAX_FREQ + #define AVR32_FLASHC_FWS_0_MAX_FREQ 33000000 + #define AVR32_FLASHC_FWS_1_MAX_FREQ 66000000 + #define AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ 33000000 + #define AVR32_FLASHC_HSEN_FWS_1_MAX_FREQ 72000000 + // These defines are missing from or wrong in the toolchain header files uc3cxxx.h + // Put a Bugzilla + + if(cpu_f_hz > AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ) // > 33MHz + { + // Set a wait-state + flashc_set_wait_state(1); + if(cpu_f_hz <= AVR32_FLASHC_FWS_1_MAX_FREQ) // <= 66MHz and >33Mhz + { + // Disable the high-speed read mode. + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); + } + else // > 66Mhz + { + // Enable the high-speed read mode. + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSEN, -1); + } + } + else // <= 33 MHz + { + // Disable wait-state + flashc_set_wait_state(0); + + // Disable the high-speed read mode. + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); + + } +} +#endif // UC3C device-specific implementation + +//! @} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h new file mode 100644 index 000000000..9f2547a6e --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h @@ -0,0 +1,1002 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief FLASHC driver for AVR32 UC3. + * + * AVR32 Flash Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a FLASHC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _FLASHC_H_ +#define _FLASHC_H_ + +#include <avr32/io.h> +#include <stddef.h> +#include "compiler.h" + +//! Number of flash regions defined by the FLASHC. +#define AVR32_FLASHC_REGIONS (AVR32_FLASHC_FLASH_SIZE /\ + (AVR32_FLASHC_PAGES_PR_REGION * AVR32_FLASHC_PAGE_SIZE)) + + +/*! \name Flash Properties + */ +//! @{ + +/*! \brief Gets the size of the whole flash array. + * + * \return The size of the whole flash array in bytes. + */ +extern unsigned int flashc_get_flash_size(void); + +/*! \brief Gets the total number of pages in the flash array. + * + * \return The total number of pages in the flash array. + */ +extern unsigned int flashc_get_page_count(void); + +/*! \brief Gets the number of pages in each flash region. + * + * \return The number of pages in each flash region. + */ +extern unsigned int flashc_get_page_count_per_region(void); + +/*! \brief Gets the region number of a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \return The region number of the specified page. + */ +extern unsigned int flashc_get_page_region(int page_number); + +/*! \brief Gets the number of the first page of a region. + * + * \param region The region number: \c 0 to <tt>(AVR32_FLASHC_REGIONS - 1)</tt>. + * + * \return The number of the first page of the specified region. + */ +extern unsigned int flashc_get_region_first_page_number(unsigned int region); + +//! @} + + +/*! \name FLASHC Control + */ +//! @{ + +/*! \brief Gets the number of wait states of flash read accesses. + * + * \return The number of wait states of flash read accesses. + */ +extern unsigned int flashc_get_wait_state(void); + +/*! \brief Sets the number of wait states of flash read accesses. + * + * \param wait_state The number of wait states of flash read accesses: \c 0 to + * \c 1. + */ +extern void flashc_set_wait_state(unsigned int wait_state); + +/*! \brief Tells whether the Flash Ready interrupt is enabled. + * + * \return Whether the Flash Ready interrupt is enabled. + */ +extern Bool flashc_is_ready_int_enabled(void); + +/*! \brief Enables or disables the Flash Ready interrupt. + * + * \param enable Whether to enable the Flash Ready interrupt: \c TRUE or + * \c FALSE. + */ +extern void flashc_enable_ready_int(Bool enable); + +/*! \brief Tells whether the Lock Error interrupt is enabled. + * + * \return Whether the Lock Error interrupt is enabled. + */ +extern Bool flashc_is_lock_error_int_enabled(void); + +/*! \brief Enables or disables the Lock Error interrupt. + * + * \param enable Whether to enable the Lock Error interrupt: \c TRUE or + * \c FALSE. + */ +extern void flashc_enable_lock_error_int(Bool enable); + +/*! \brief Tells whether the Programming Error interrupt is enabled. + * + * \return Whether the Programming Error interrupt is enabled. + */ +extern Bool flashc_is_prog_error_int_enabled(void); + +/*! \brief Enables or disables the Programming Error interrupt. + * + * \param enable Whether to enable the Programming Error interrupt: \c TRUE or + * \c FALSE. + */ +extern void flashc_enable_prog_error_int(Bool enable); + +//! @} + + +/*! \name FLASHC Status + */ +//! @{ + +/*! \brief Tells whether the FLASHC is ready to run a new command. + * + * \return Whether the FLASHC is ready to run a new command. + */ +extern Bool flashc_is_ready(void); + +/*! \brief Waits actively until the FLASHC is ready to run a new command. + * + * This is the default function assigned to \ref flashc_wait_until_ready. + */ +extern void flashc_default_wait_until_ready(void); + +//! Pointer to the function used by the driver when it needs to wait until the +//! FLASHC is ready to run a new command. +//! The default function is \ref flashc_default_wait_until_ready. +//! The user may change this pointer to use another implementation. +extern void (*volatile flashc_wait_until_ready)(void); + +/*! \brief Tells whether a Lock Error has occurred during the last function + * called that issued one or more FLASHC commands. + * + * \return Whether a Lock Error has occurred during the last function called + * that issued one or more FLASHC commands. + */ +extern Bool flashc_is_lock_error(void); + +/*! \brief Tells whether a Programming Error has occurred during the last + * function called that issued one or more FLASHC commands. + * + * \return Whether a Programming Error has occurred during the last function + * called that issued one or more FLASHC commands. + */ +extern Bool flashc_is_programming_error(void); + +//! @} + + +/*! \name FLASHC Command Control + */ +//! @{ + +/*! \brief Gets the last issued FLASHC command. + * + * \return The last issued FLASHC command. + */ +extern unsigned int flashc_get_command(void); + +/*! \brief Gets the current FLASHC page number. + * + * \return The current FLASHC page number. + */ +extern unsigned int flashc_get_page_number(void); + +/*! \brief Issues a FLASHC command. + * + * \param command The command: \c AVR32_FLASHC_FCMD_CMD_x. + * \param page_number The page number to apply the command to: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: use this to apply the command to the current page number + * or if the command does not apply to any page number; + * \arg this argument may have other meanings according to the command. See + * the FLASHC chapter of the MCU datasheet. + * + * \warning A Lock Error is issued if the command violates the protection + * mechanism. + * + * \warning A Programming Error is issued if the command is invalid. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_issue_command(unsigned int command, int page_number); + +//! @} + + +/*! \name FLASHC Global Commands + */ +//! @{ + +/*! \brief Issues a No Operation command to the FLASHC. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_no_operation(void); + +/*! \brief Issues an Erase All command to the FLASHC. + * + * This command erases all bits in the flash array, the general-purpose fuse + * bits and the Security bit. The User page is not erased. + * + * This command also ensures that all volatile memories, such as register file + * and RAMs, are erased before the Security bit is erased, i.e. deactivated. + * + * \warning A Lock Error is issued if at least one region is locked or the + * bootloader protection is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern void flashc_erase_all(void); + +//! @} + + +/*! \name FLASHC Protection Mechanisms + */ +//! @{ + +/*! \brief Tells whether the Security bit is active. + * + * \return Whether the Security bit is active. + */ +extern Bool flashc_is_security_bit_active(void); + +/*! \brief Activates the Security bit. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_activate_security_bit(void); + +/*! \brief Gets the bootloader protected size. + * + * \return The bootloader protected size in bytes. + */ +extern unsigned int flashc_get_bootloader_protected_size(void); + +/*! \brief Sets the bootloader protected size. + * + * \param bootprot_size The wanted bootloader protected size in bytes. If this + * size is not supported, the actual size will be the + * nearest greater available size or the maximal possible + * size if the requested size is too large. + * + * \return The actual bootloader protected size in bytes. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern unsigned int flashc_set_bootloader_protected_size(unsigned int bootprot_size); + +/*! \brief Tells whether external privileged fetch is locked. + * + * \return Whether external privileged fetch is locked. + */ +extern Bool flashc_is_external_privileged_fetch_locked(void); + +/*! \brief Locks or unlocks external privileged fetch. + * + * \param lock Whether to lock external privileged fetch: \c TRUE or \c FALSE. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_external_privileged_fetch(Bool lock); + +/*! \brief Tells whether the region of a page is locked. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \return Whether the region of the specified page is locked. + */ +extern Bool flashc_is_page_region_locked(int page_number); + +/*! \brief Tells whether a region is locked. + * + * \param region The region number: \c 0 to <tt>(AVR32_FLASHC_REGIONS - 1)</tt>. + * + * \return Whether the specified region is locked. + */ +extern Bool flashc_is_region_locked(unsigned int region); + +/*! \brief Locks or unlocks the region of a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * \param lock Whether to lock the region of the specified page: \c TRUE or + * \c FALSE. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_page_region(int page_number, Bool lock); + +/*! \brief Locks or unlocks a region. + * + * \param region The region number: \c 0 to <tt>(AVR32_FLASHC_REGIONS - 1)</tt>. + * \param lock Whether to lock the specified region: \c TRUE or \c FALSE. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_region(unsigned int region, Bool lock); + +/*! \brief Locks or unlocks all regions. + * + * \param lock Whether to lock the regions: \c TRUE or \c FALSE. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_all_regions(Bool lock); + +//! @} + + +/*! \name Access to General-Purpose Fuses + */ +//! @{ + +/*! \brief Reads a general-purpose fuse bit. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * + * \return The value of the specified general-purpose fuse bit. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_read_gp_fuse_bit(unsigned int gp_fuse_bit); + +/*! \brief Reads a general-purpose fuse bit-field. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * + * \return The value of the specified general-purpose fuse bit-field. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern U64 flashc_read_gp_fuse_bitfield(unsigned int pos, unsigned int width); + +/*! \brief Reads a general-purpose fuse byte. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * + * \return The value of the specified general-purpose fuse byte. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern U8 flashc_read_gp_fuse_byte(unsigned int gp_fuse_byte); + +/*! \brief Reads all general-purpose fuses. + * + * \return The value of all general-purpose fuses as a word. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern U64 flashc_read_all_gp_fuses(void); + +/*! \brief Erases a general-purpose fuse bit. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_gp_fuse_bit(unsigned int gp_fuse_bit, Bool check); + +/*! \brief Erases a general-purpose fuse bit-field. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_gp_fuse_bitfield(unsigned int pos, unsigned int width, Bool check); + +/*! \brief Erases a general-purpose fuse byte. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_gp_fuse_byte(unsigned int gp_fuse_byte, Bool check); + +/*! \brief Erases all general-purpose fuses. + * + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_all_gp_fuses(Bool check); + +/*! \brief Writes a general-purpose fuse bit. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * \param value The value of the specified general-purpose fuse bit. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value); + +/*! \brief Writes a general-purpose fuse bit-field. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * \param value The value of the specified general-purpose fuse bit-field. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value); + +/*! \brief Writes a general-purpose fuse byte. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * \param value The value of the specified general-purpose fuse byte. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value); + +/*! \brief Writes all general-purpose fuses. + * + * \param value The value of all general-purpose fuses as a word. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_all_gp_fuses(U64 value); + +/*! \brief Sets a general-purpose fuse bit with the appropriate erase and write + * operations. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * \param value The value of the specified general-purpose fuse bit. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value); + +/*! \brief Sets a general-purpose fuse bit-field with the appropriate erase and + * write operations. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * \param value The value of the specified general-purpose fuse bit-field. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value); + +/*! \brief Sets a general-purpose fuse byte with the appropriate erase and write + * operations. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * \param value The value of the specified general-purpose fuse byte. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value); + +/*! \brief Sets all general-purpose fuses with the appropriate erase and write + * operations. + * + * \param value The value of all general-purpose fuses as a word. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_all_gp_fuses(U64 value); + +//! @} + + +/*! \name Access to Flash Pages + */ +//! @{ + +/*! \brief Clears the page buffer. + * + * This command resets all bits in the page buffer to one. Write accesses to the + * page buffer can only change page buffer bits from one to zero. + * + * \warning The page buffer is not automatically reset after a page write. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_clear_page_buffer(void); + +/*! \brief Tells whether the page to which the last Quick Page Read or Quick + * Page Read User Page command was applied was erased. + * + * \return Whether the page to which the last Quick Page Read or Quick Page Read + * User Page command was applied was erased. + */ +extern Bool flashc_is_page_erased(void); + +/*! \brief Applies the Quick Page Read command to a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \return Whether the specified page is erased. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern Bool flashc_quick_page_read(int page_number); + +/*! \brief Erases a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the command is applied to a page belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern Bool flashc_erase_page(int page_number, Bool check); + +/*! \brief Erases all pages within the flash array. + * + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if at least one region is locked or the + * bootloader protection is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern Bool flashc_erase_all_pages(Bool check); + +/*! \brief Writes a page from the page buffer. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \warning A Lock Error is issued if the command is applied to a page belonging + * to a locked region or to the bootloader protected area. + * + * \warning The page buffer is not automatically reset after a page write. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + */ +extern void flashc_write_page(int page_number); + +/*! \brief Issues a Quick Page Read User Page command to the FLASHC. + * + * \return Whether the User page is erased. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern Bool flashc_quick_user_page_read(void); + +/*! \brief Erases the User page. + * + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern Bool flashc_erase_user_page(Bool check); + +/*! \brief Writes the User page from the page buffer. + * + * \warning The page buffer is not automatically reset after a page write. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + */ +extern void flashc_write_user_page(void); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src source byte. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source byte. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset8(volatile void *dst, U8 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source half-word. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source half-word. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset16(volatile void *dst, U16 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source word. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source word. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset32(volatile void *dst, U32 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source double-word. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source double-word. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset64(volatile void *dst, U64 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source pattern. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source double-word. + * \param src_width \a src width in bits: 8, 16, 32 or 64. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +#define flashc_memset(dst, src, src_width, nbytes, erase) \ + TPASTE2(flashc_memset, src_width)((dst), (src), (nbytes), (erase)) + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the source pointed to by \a src. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Pointer to source data. + * \param nbytes Number of bytes to copy. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning If copying takes place between areas that overlap, the behavior is + * undefined. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memcpy(volatile void *dst, const void *src, size_t nbytes, Bool erase); + +#if UC3C + +/*! \brief Depednding to the CPU frequency, set the wait states of flash read + * accesses and enable or disable the High speed read mode. + * + * \param cpu_f_hz The CPU frequency + */ +void flashc_set_flash_waitstate_and_readmode(unsigned long cpu_f_hz); +#endif // UC3C device-specific implementation + +//! @} + + +#endif // _FLASHC_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c new file mode 100644 index 000000000..b6b83c73f --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c @@ -0,0 +1,458 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief GPIO driver for AVR32 UC3. + * + * This file defines a useful set of functions for the GPIO. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a GPIO module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "gpio.h" + +//! GPIO module instance. +#define GPIO AVR32_GPIO + + +/*! \name Peripheral Bus Interface + */ +//! @{ + + +int gpio_enable_module(const gpio_map_t gpiomap, unsigned int size) +{ + int status = GPIO_SUCCESS; + unsigned int i; + + for (i = 0; i < size; i++) + { + status |= gpio_enable_module_pin(gpiomap->pin, gpiomap->function); + gpiomap++; + } + + return status; +} + + +int gpio_enable_module_pin(unsigned int pin, unsigned int function) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + // Enable the correct function. + switch (function) + { + case 0: // A function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + + case 1: // B function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + + case 2: // C function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + + case 3: // D function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + case 4: // E function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; + + case 5: // F function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; + + case 6: // G function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; + + case 7: // H function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; +#endif + + default: + return GPIO_INVALID_ARGUMENT; + } + + // Disable GPIO control. + gpio_port->gperc = 1 << (pin & 0x1F); + + return GPIO_SUCCESS; +} + + +void gpio_enable_gpio(const gpio_map_t gpiomap, unsigned int size) +{ + unsigned int i; + + for (i = 0; i < size; i++) + { + gpio_enable_gpio_pin(gpiomap->pin); + gpiomap++; + } +} + + +void gpio_enable_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->oderc = 1 << (pin & 0x1F); + gpio_port->gpers = 1 << (pin & 0x1F); +} + + +// The open-drain mode is not synthesized on the current AVR32 products. +// If one day some AVR32 products have this feature, the corresponding part +// numbers should be listed in the #if below. +// Note that other functions are available in this driver to use pins with open +// drain in GPIO mode. The advantage of the open-drain mode functions over these +// other functions is that they can be used not only in GPIO mode but also in +// module mode. +#if 0 + + +void gpio_enable_pin_open_drain(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->odmers = 1 << (pin & 0x1F); +} + + +void gpio_disable_pin_open_drain(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->odmerc = 1 << (pin & 0x1F); +} + + +#endif + + +void gpio_enable_pin_pull_up(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puers = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_200_H_INCLUDED) || defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pderc = 1 << (pin & 0x1F); +#endif +} + + +void gpio_disable_pin_pull_up(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puerc = 1 << (pin & 0x1F); +} + +#if defined(AVR32_GPIO_200_H_INCLUDED) || defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) +// Added support of Pull-up Resistor, Pull-down Resistor and Buskeeper Control. + +/*! \brief Enables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +void gpio_enable_pin_pull_down(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puerc = 1 << (pin & 0x1F); + gpio_port->pders = 1 << (pin & 0x1F); +} + +/*! \brief Disables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +void gpio_disable_pin_pull_down(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->pderc = 1 << (pin & 0x1F); +} + +/*! \brief Enables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +void gpio_enable_pin_buskeeper(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puers = 1 << (pin & 0x1F); + gpio_port->pders = 1 << (pin & 0x1F); +} + +/*! \brief Disables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +void gpio_disable_pin_buskeeper(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puerc = 1 << (pin & 0x1F); + gpio_port->pderc = 1 << (pin & 0x1F); +} + +#endif + +int gpio_get_pin_value(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return (gpio_port->pvr >> (pin & 0x1F)) & 1; +} + + +int gpio_get_gpio_pin_output_value(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return (gpio_port->ovr >> (pin & 0x1F)) & 1; +} + + +int gpio_get_gpio_open_drain_pin_output_value(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return ((gpio_port->oder >> (pin & 0x1F)) & 1) ^ 1; +} + + +void gpio_set_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrs = 1 << (pin & 0x1F); // Value to be driven on the I/O line: 1. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_clr_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrc = 1 << (pin & 0x1F); // Value to be driven on the I/O line: 0. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_tgl_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrt = 1 << (pin & 0x1F); // Toggle the I/O line. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_set_gpio_open_drain_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->oderc = 1 << (pin & 0x1F); // The GPIO output driver is disabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_clr_gpio_open_drain_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrc = 1 << (pin & 0x1F); // Value to be driven on the I/O line: 0. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_tgl_gpio_open_drain_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrc = 1 << (pin & 0x1F); // Value to be driven on the I/O line if the GPIO output driver is enabled: 0. + gpio_port->odert = 1 << (pin & 0x1F); // The GPIO output driver is toggled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_enable_pin_glitch_filter(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->gfers = 1 << (pin & 0x1F); +} + + +void gpio_disable_pin_glitch_filter(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->gferc = 1 << (pin & 0x1F); +} + +/*! \brief Configure the edge detector of an input pin + * + * \param pin The pin number. + * \param mode The edge detection mode (\ref GPIO_PIN_CHANGE, \ref GPIO_RISING_EDGE + * or \ref GPIO_FALLING_EDGE). + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +static int gpio_configure_edge_detector(unsigned int pin, unsigned int mode) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + // Configure the edge detector. + switch (mode) + { + case GPIO_PIN_CHANGE: + gpio_port->imr0c = 1 << (pin & 0x1F); + gpio_port->imr1c = 1 << (pin & 0x1F); + break; + + case GPIO_RISING_EDGE: + gpio_port->imr0s = 1 << (pin & 0x1F); + gpio_port->imr1c = 1 << (pin & 0x1F); + break; + + case GPIO_FALLING_EDGE: + gpio_port->imr0c = 1 << (pin & 0x1F); + gpio_port->imr1s = 1 << (pin & 0x1F); + break; + + default: + return GPIO_INVALID_ARGUMENT; + } + + return GPIO_SUCCESS; +} + + +int gpio_enable_pin_interrupt(unsigned int pin, unsigned int mode) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + // Enable the glitch filter. + gpio_port->gfers = 1 << (pin & 0x1F); + + // Configure the edge detector. + if(GPIO_INVALID_ARGUMENT == gpio_configure_edge_detector(pin, mode)) + return(GPIO_INVALID_ARGUMENT); + + // Enable interrupt. + gpio_port->iers = 1 << (pin & 0x1F); + + return GPIO_SUCCESS; +} + + +void gpio_disable_pin_interrupt(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->ierc = 1 << (pin & 0x1F); +} + + +int gpio_get_pin_interrupt_flag(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return (gpio_port->ifr >> (pin & 0x1F)) & 1; +} + + +void gpio_clear_pin_interrupt_flag(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->ifrc = 1 << (pin & 0x1F); +} + + +//# +//# Peripheral Event System Support. +//# +#if UC3L +int gpio_configure_pin_periph_event_mode(unsigned int pin, unsigned int mode, unsigned int use_igf) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + if(TRUE == use_igf) + { + // Enable the glitch filter. + gpio_port->gfers = 1 << (pin & 0x1F); + } + else + { + // Disable the glitch filter. + gpio_port->gferc = 1 << (pin & 0x1F); + } + + // Configure the edge detector. + return(gpio_configure_edge_detector(pin, mode)); +} + +#endif + +//! @} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h new file mode 100644 index 000000000..f0b5fd884 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h @@ -0,0 +1,583 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief GPIO header for AVR32 UC3. + * + * This file contains basic GPIO driver functions. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a GPIO module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _GPIO_H_ +#define _GPIO_H_ + +#include <avr32/io.h> +#include "compiler.h" + +/*! \name Return Values of the GPIO API + */ +//! @{ +#define GPIO_SUCCESS 0 //!< Function successfully completed. +#define GPIO_INVALID_ARGUMENT 1 //!< Input parameters are out of range. +//! @} + + +/*! \name Interrupt Trigger Modes + */ +//! @{ +#define GPIO_PIN_CHANGE 0 //!< Interrupt triggered upon pin change. +#define GPIO_RISING_EDGE 1 //!< Interrupt triggered upon rising edge. +#define GPIO_FALLING_EDGE 2 //!< Interrupt triggered upon falling edge. +//! @} + + +//! A type definition of pins and modules connectivity. +typedef struct +{ + unsigned char pin; //!< Module pin. + unsigned char function; //!< Module function. +} gpio_map_t[]; + + +/*! \name Peripheral Bus Interface + * + * Low-speed interface with a non-deterministic number of clock cycles per + * access. + * + * This interface operates with lower clock frequencies (fPB <= fCPU), and its + * timing is not deterministic since it needs to access a shared bus which may + * be heavily loaded. + * + * \note This interface is immediately available without initialization. + */ +//! @{ + +/*! \brief Enables specific module modes for a set of pins. + * + * \param gpiomap The pin map. + * \param size The number of pins in \a gpiomap. + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_enable_module(const gpio_map_t gpiomap, unsigned int size); + +/*! \brief Enables a specific module mode for a pin. + * + * \param pin The pin number.\n + * Refer to the product header file `uc3x.h' (where x is the part + * number; e.g. x = a0512) for module pins. E.g., to enable a PWM + * channel output, the pin number can be AVR32_PWM_3_PIN for PWM + * channel 3. + * \param function The pin function.\n + * Refer to the product header file `uc3x.h' (where x is the + * part number; e.g. x = a0512) for module pin functions. E.g., + * to enable a PWM channel output, the pin function can be + * AVR32_PWM_3_FUNCTION for PWM channel 3. + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_enable_module_pin(unsigned int pin, unsigned int function); + +/*! \brief Enables the GPIO mode of a set of pins. + * + * \param gpiomap The pin map. + * \param size The number of pins in \a gpiomap. + */ +extern void gpio_enable_gpio(const gpio_map_t gpiomap, unsigned int size); + +/*! \brief Enables the GPIO mode of a pin. + * + * \param pin The pin number.\n + * Refer to the product header file `uc3x.h' (where x is the part + * number; e.g. x = a0512) for pin definitions. E.g., to enable the + * GPIO mode of PX21, AVR32_PIN_PX21 can be used. Module pins such as + * AVR32_PWM_3_PIN for PWM channel 3 can also be used to release + * module pins for GPIO. + */ +extern void gpio_enable_gpio_pin(unsigned int pin); + +// The open-drain mode is not synthesized on the current AVR32 products. +// If one day some AVR32 products have this feature, the corresponding part +// numbers should be listed in the #if below. +// Note that other functions are available in this driver to use pins with open +// drain in GPIO mode. The advantage of the open-drain mode functions over these +// other functions is that they can be used not only in GPIO mode but also in +// module mode. +#if 0 + +/*! \brief Enables the open-drain mode of a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_open_drain(unsigned int pin); + +/*! \brief Disables the open-drain mode of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_open_drain(unsigned int pin); + +#endif + +/*! \brief Enables the pull-up resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_pull_up(unsigned int pin); + +/*! \brief Disables the pull-up resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_pull_up(unsigned int pin); + +#if defined(AVR32_GPIO_200_H_INCLUDED) || defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) +// Added support of Pull-up Resistor, Pull-down Resistor and Buskeeper Control. + +/*! \brief Enables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_pull_down(unsigned int pin); + +/*! \brief Disables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_pull_down(unsigned int pin); + +/*! \brief Enables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_buskeeper(unsigned int pin); + +/*! \brief Disables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_buskeeper(unsigned int pin); + +#endif + +/*! \brief Returns the value of a pin. + * + * \param pin The pin number. + * + * \return The pin value. + */ +extern int gpio_get_pin_value(unsigned int pin); + +/*! \brief Returns the output value set for a GPIO pin. + * + * \param pin The pin number. + * + * \return The pin output value. + * + * \note This function must be used in conjunction with \ref gpio_set_gpio_pin, + * \ref gpio_clr_gpio_pin and \ref gpio_tgl_gpio_pin. + */ +extern int gpio_get_gpio_pin_output_value(unsigned int pin); + +/*! \brief Returns the output value set for a GPIO pin using open drain. + * + * \param pin The pin number. + * + * \return The pin output value. + * + * \note This function must be used in conjunction with + * \ref gpio_set_gpio_open_drain_pin, \ref gpio_clr_gpio_open_drain_pin + * and \ref gpio_tgl_gpio_open_drain_pin. + */ +extern int gpio_get_gpio_open_drain_pin_output_value(unsigned int pin); + +/*! \brief Drives a GPIO pin to 1. + * + * \param pin The pin number. + */ +extern void gpio_set_gpio_pin(unsigned int pin); + +/*! \brief Drives a GPIO pin to 0. + * + * \param pin The pin number. + */ +extern void gpio_clr_gpio_pin(unsigned int pin); + +/*! \brief Toggles a GPIO pin. + * + * \param pin The pin number. + */ +extern void gpio_tgl_gpio_pin(unsigned int pin); + +/*! \brief Drives a GPIO pin to 1 using open drain. + * + * \param pin The pin number. + */ +extern void gpio_set_gpio_open_drain_pin(unsigned int pin); + +/*! \brief Drives a GPIO pin to 0 using open drain. + * + * \param pin The pin number. + */ +extern void gpio_clr_gpio_open_drain_pin(unsigned int pin); + +/*! \brief Toggles a GPIO pin using open drain. + * + * \param pin The pin number. + */ +extern void gpio_tgl_gpio_open_drain_pin(unsigned int pin); + +/*! \brief Enables the glitch filter of a pin. + * + * When the glitch filter is enabled, a glitch with duration of less than 1 + * clock cycle is automatically rejected, while a pulse with duration of 2 clock + * cycles or more is accepted. For pulse durations between 1 clock cycle and 2 + * clock cycles, the pulse may or may not be taken into account, depending on + * the precise timing of its occurrence. Thus for a pulse to be guaranteed + * visible it must exceed 2 clock cycles, whereas for a glitch to be reliably + * filtered out, its duration must not exceed 1 clock cycle. The filter + * introduces 2 clock cycles latency. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_glitch_filter(unsigned int pin); + +/*! \brief Disables the glitch filter of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_glitch_filter(unsigned int pin); + +/*! \brief Enables the interrupt of a pin with the specified settings. + * + * \param pin The pin number. + * \param mode The trigger mode (\ref GPIO_PIN_CHANGE, \ref GPIO_RISING_EDGE or + * \ref GPIO_FALLING_EDGE). + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_enable_pin_interrupt(unsigned int pin, unsigned int mode); + +/*! \brief Disables the interrupt of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_interrupt(unsigned int pin); + +/*! \brief Gets the interrupt flag of a pin. + * + * \param pin The pin number. + * + * \return The pin interrupt flag. + */ +extern int gpio_get_pin_interrupt_flag(unsigned int pin); + +/*! \brief Clears the interrupt flag of a pin. + * + * \param pin The pin number. + */ +extern void gpio_clear_pin_interrupt_flag(unsigned int pin); + +//! @} + + +#if (defined AVR32_GPIO_LOCAL_ADDRESS) +/*! \name Local Bus Interface + * + * High-speed interface with only one clock cycle per access. + * + * This interface operates with high clock frequency (fCPU), and its timing is + * deterministic since it does not need to access a shared bus which may be + * heavily loaded. + * + * \warning To use this interface, the clock frequency of the peripheral bus on + * which the GPIO peripheral is connected must be set to the CPU clock + * frequency (fPB = fCPU). + * + * \note This interface has to be initialized in order to be available. + */ +//! @{ + +/*! \brief Enables the local bus interface for GPIO. + * + * \note This function must have been called at least once before using other + * functions in this interface. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_init(void) +{ + Set_system_register(AVR32_CPUCR, + Get_system_register(AVR32_CPUCR) | AVR32_CPUCR_LOCEN_MASK); +} + +/*! \brief Enables the output driver of a pin. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_enable_pin_output_driver(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oders = 1 << (pin & 0x1F); +} + +/*! \brief Disables the output driver of a pin. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_disable_pin_output_driver(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oderc = 1 << (pin & 0x1F); +} + +/*! \brief Returns the value of a pin. + * + * \param pin The pin number. + * + * \return The pin value. + * + * \note \ref gpio_local_init must have been called beforehand. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int gpio_local_get_pin_value(unsigned int pin) +{ + return (AVR32_GPIO_LOCAL.port[pin >> 5].pvr >> (pin & 0x1F)) & 1; +} + +/*! \brief Drives a GPIO pin to 1. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin nor its output + * driver. \ref gpio_enable_gpio_pin and + * \ref gpio_local_enable_pin_output_driver can be called for this + * purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_set_gpio_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrs = 1 << (pin & 0x1F); +} + +/*! \brief Drives a GPIO pin to 0. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin nor its output + * driver. \ref gpio_enable_gpio_pin and + * \ref gpio_local_enable_pin_output_driver can be called for this + * purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_clr_gpio_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrc = 1 << (pin & 0x1F); +} + +/*! \brief Toggles a GPIO pin. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin nor its output + * driver. \ref gpio_enable_gpio_pin and + * \ref gpio_local_enable_pin_output_driver can be called for this + * purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_tgl_gpio_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrt = 1 << (pin & 0x1F); +} + +/*! \brief Initializes the configuration of a GPIO pin so that it can be used + * with GPIO open-drain functions. + * + * \note This function must have been called at least once before using + * \ref gpio_local_set_gpio_open_drain_pin, + * \ref gpio_local_clr_gpio_open_drain_pin or + * \ref gpio_local_tgl_gpio_open_drain_pin. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_init_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrc = 1 << (pin & 0x1F); +} + +/*! \brief Drives a GPIO pin to 1 using open drain. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init and \ref gpio_local_init_gpio_open_drain_pin must + * have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_set_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oderc = 1 << (pin & 0x1F); +} + +/*! \brief Drives a GPIO pin to 0 using open drain. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init and \ref gpio_local_init_gpio_open_drain_pin must + * have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_clr_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oders = 1 << (pin & 0x1F); +} + +/*! \brief Toggles a GPIO pin using open drain. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init and \ref gpio_local_init_gpio_open_drain_pin must + * have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_tgl_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].odert = 1 << (pin & 0x1F); +} + +//! @} +#endif // AVR32_GPIO_LOCAL_ADDRESS + +#if UC3L +//! @{ +/*! \name Peripheral Event System support + * + * The GPIO can be programmed to output peripheral events whenever an interrupt + * condition is detected, such as pin value change, or only when a rising or + * falling edge is detected. + * + */ + +/*! \brief Enables the peripheral event generation of a pin. + * + * \param pin The pin number. + * + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_enable_pin_periph_event(unsigned int pin) +{ + AVR32_GPIO.port[pin >> 5].oderc = 1 << (pin & 0x1F); // The GPIO output driver is disabled for that pin. + AVR32_GPIO.port[pin >> 5].evers = 1 << (pin & 0x1F); +} + +/*! \brief Disables the peripheral event generation of a pin. + * + * \param pin The pin number. + * + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_disable_pin_periph_event(unsigned int pin) +{ + AVR32_GPIO.port[pin >> 5].everc = 1 << (pin & 0x1F); +} + +/*! \brief Configure the peripheral event trigger mode of a pin + * + * \param pin The pin number. + * \param mode The trigger mode (\ref GPIO_PIN_CHANGE, \ref GPIO_RISING_EDGE or + * \ref GPIO_FALLING_EDGE). + * \param use_igf use the Input Glitch Filter (TRUE) or not (FALSE). + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_configure_pin_periph_event_mode(unsigned int pin, unsigned int mode, unsigned int use_igf); + +//! @} +#endif + + +#endif // _GPIO_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x new file mode 100644 index 000000000..ec4109d46 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x @@ -0,0 +1,239 @@ +/* This file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Exception and interrupt vectors. + * + * This file maps all events supported by an AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an INTC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#if !__AVR32_UC__ && !__AVR32_AP__ + #error Implementation of the AVR32 architecture not supported by the INTC driver. +#endif + + +#include <avr32/io.h> + + +//! @{ +//! \verbatim + + + .section .exception, "ax", @progbits + + +// Start of Exception Vector Table. + + // EVBA must be aligned with a power of two strictly greater than the EVBA- + // relative offset of the last vector. + .balign 0x200 + + // Export symbol. + .global _evba + .type _evba, @function +_evba: + + .org 0x000 + // Unrecoverable Exception. +_handle_Unrecoverable_Exception: + rjmp $ + + .org 0x004 + // TLB Multiple Hit. +_handle_TLB_Multiple_Hit: + rjmp $ + + .org 0x008 + // Bus Error Data Fetch. +_handle_Bus_Error_Data_Fetch: + rjmp $ + + .org 0x00C + // Bus Error Instruction Fetch. +_handle_Bus_Error_Instruction_Fetch: + rjmp $ + + .org 0x010 + // NMI. +_handle_NMI: + rjmp $ + + .org 0x014 + // Instruction Address. +_handle_Instruction_Address: + rjmp $ + + .org 0x018 + // ITLB Protection. +_handle_ITLB_Protection: + rjmp $ + + .org 0x01C + // Breakpoint. +_handle_Breakpoint: + rjmp $ + + .org 0x020 + // Illegal Opcode. +_handle_Illegal_Opcode: + rjmp $ + + .org 0x024 + // Unimplemented Instruction. +_handle_Unimplemented_Instruction: + rjmp $ + + .org 0x028 + // Privilege Violation. +_handle_Privilege_Violation: + rjmp $ + + .org 0x02C + // Floating-Point: UNUSED IN AVR32UC and AVR32AP. +_handle_Floating_Point: + rjmp $ + + .org 0x030 + // Coprocessor Absent: UNUSED IN AVR32UC. +_handle_Coprocessor_Absent: + rjmp $ + + .org 0x034 + // Data Address (Read). +_handle_Data_Address_Read: + rjmp $ + + .org 0x038 + // Data Address (Write). +_handle_Data_Address_Write: + rjmp $ + + .org 0x03C + // DTLB Protection (Read). +_handle_DTLB_Protection_Read: + rjmp $ + + .org 0x040 + // DTLB Protection (Write). +_handle_DTLB_Protection_Write: + rjmp $ + + .org 0x044 + // DTLB Modified: UNUSED IN AVR32UC. +_handle_DTLB_Modified: + rjmp $ + + .org 0x050 + // ITLB Miss. +_handle_ITLB_Miss: + rjmp $ + + .org 0x060 + // DTLB Miss (Read). +_handle_DTLB_Miss_Read: + rjmp $ + + .org 0x070 + // DTLB Miss (Write). +_handle_DTLB_Miss_Write: + rjmp $ + + .org 0x100 + // Supervisor Call. +_handle_Supervisor_Call: + rjmp $ + + +// Interrupt support. +// The interrupt controller must provide the offset address relative to EVBA. +// Important note: +// All interrupts call a C function named _get_interrupt_handler. +// This function will read group and interrupt line number to then return in +// R12 a pointer to a user-provided interrupt handler. + + .balign 4 + + .irp priority, 0, 1, 2, 3 +_int\priority: +#if __AVR32_UC__ + // R8-R12, LR, PC and SR are automatically pushed onto the system stack by the + // CPU upon interrupt entry. No other register is saved by hardware. +#elif __AVR32_AP__ + // PC and SR are automatically saved in respectively RAR_INTx and RSR_INTx by + // the CPU upon interrupt entry. No other register is saved by hardware. + pushm r8-r12, lr +#endif + mov r12, \priority // Pass the int_level parameter to the _get_interrupt_handler function. + call _get_interrupt_handler + cp.w r12, 0 // Get the pointer to the interrupt handler returned by the function. +#if __AVR32_UC__ + movne pc, r12 // If this was not a spurious interrupt (R12 != NULL), jump to the handler. +#elif __AVR32_AP__ + breq spint\priority // If this was a spurious interrupt (R12 == NULL), branch. + st.w --sp, r12 // Push the pointer to the interrupt handler onto the system stack since no register may be altered. + popm r8-r12, lr, pc // Restore registers and jump to the handler. +spint\priority: + popm r8-r12, lr +#endif + rete // If this was a spurious interrupt (R12 == NULL), return from event handler. + .endr + + +// Constant data area. + + .balign 4 + + // Values to store in the interrupt priority registers for the various interrupt priority levels. + // The interrupt priority registers contain the interrupt priority level and + // the EVBA-relative interrupt vector offset. + .global ipr_val + .type ipr_val, @object +ipr_val: + .word (AVR32_INTC_INT0 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int0 - _evba),\ + (AVR32_INTC_INT1 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int1 - _evba),\ + (AVR32_INTC_INT2 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int2 - _evba),\ + (AVR32_INTC_INT3 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int3 - _evba) + + +//! \endverbatim +//! @} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c new file mode 100644 index 000000000..84d498d1a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c @@ -0,0 +1,214 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief INTC driver for AVR32 UC3. + * + * AVR32 Interrupt Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an INTC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "compiler.h" +#include "preprocessor.h" +#include "intc.h" + +// define _evba from exception.S +extern void _evba; + +//! Values to store in the interrupt priority registers for the various interrupt priority levels. +extern const unsigned int ipr_val[AVR32_INTC_NUM_INT_LEVELS]; + +//! Creates a table of interrupt line handlers per interrupt group in order to optimize RAM space. +//! Each line handler table contains a set of pointers to interrupt handlers. +#if (defined __GNUC__) +#define DECL_INT_LINE_HANDLER_TABLE(GRP, unused) \ +static volatile __int_handler _int_line_handler_table_##GRP[Max(AVR32_INTC_NUM_IRQS_PER_GRP##GRP, 1)]; +#elif (defined __ICCAVR32__) +#define DECL_INT_LINE_HANDLER_TABLE(GRP, unused) \ +static volatile __no_init __int_handler _int_line_handler_table_##GRP[Max(AVR32_INTC_NUM_IRQS_PER_GRP##GRP, 1)]; +#endif +MREPEAT(AVR32_INTC_NUM_INT_GRPS, DECL_INT_LINE_HANDLER_TABLE, ~); +#undef DECL_INT_LINE_HANDLER_TABLE + +//! Table containing for each interrupt group the number of interrupt request +//! lines and a pointer to the table of interrupt line handlers. +static const struct +{ + unsigned int num_irqs; + volatile __int_handler *_int_line_handler_table; +} _int_handler_table[AVR32_INTC_NUM_INT_GRPS] = +{ +#define INSERT_INT_LINE_HANDLER_TABLE(GRP, unused) \ + {AVR32_INTC_NUM_IRQS_PER_GRP##GRP, _int_line_handler_table_##GRP}, + MREPEAT(AVR32_INTC_NUM_INT_GRPS, INSERT_INT_LINE_HANDLER_TABLE, ~) +#undef INSERT_INT_LINE_HANDLER_TABLE +}; + + +/*! \brief Default interrupt handler. + * + * \note Taken and adapted from Newlib. + */ +#if (defined __GNUC__) +__attribute__((__interrupt__)) +#elif (defined __ICCAVR32__) +__interrupt +#endif +static void _unhandled_interrupt(void) +{ + // Catch unregistered interrupts. + while (TRUE); +} + + +/*! \brief Gets the interrupt handler of the current event at the \a int_level + * interrupt priority level (called from exception.S). + * + * \param int_level Interrupt priority level to handle. + * + * \return Interrupt handler to execute. + * + * \note Taken and adapted from Newlib. + */ +__int_handler _get_interrupt_handler(unsigned int int_level) +{ + // ICR3 is mapped first, ICR0 last. + // Code in exception.S puts int_level in R12 which is used by AVR32-GCC to + // pass a single argument to a function. + unsigned int int_grp = AVR32_INTC.icr[AVR32_INTC_INT3 - int_level]; + unsigned int int_req = AVR32_INTC.irr[int_grp]; + + // As an interrupt may disappear while it is being fetched by the CPU + // (spurious interrupt caused by a delayed response from an MCU peripheral to + // an interrupt flag clear or interrupt disable instruction), check if there + // are remaining interrupt lines to process. + // If a spurious interrupt occurs, the status register (SR) contains an + // execution mode and interrupt level masks corresponding to a level 0 + // interrupt, whatever the interrupt priority level causing the spurious + // event. This behavior has been chosen because a spurious interrupt has not + // to be a priority one and because it may not cause any trouble to other + // interrupts. + // However, these spurious interrupts place the hardware in an unstable state + // and could give problems in other/future versions of the CPU, so the + // software has to be written so that they never occur. The only safe way of + // achieving this is to always clear or disable peripheral interrupts with the + // following sequence: + // 1: Mask the interrupt in the CPU by setting GM (or IxM) in SR. + // 2: Perform the bus access to the peripheral register that clears or + // disables the interrupt. + // 3: Wait until the interrupt has actually been cleared or disabled by the + // peripheral. This is usually performed by reading from a register in the + // same peripheral (it DOES NOT have to be the same register that was + // accessed in step 2, but it MUST be in the same peripheral), what takes + // bus system latencies into account, but peripheral internal latencies + // (generally 0 cycle) also have to be considered. + // 4: Unmask the interrupt in the CPU by clearing GM (or IxM) in SR. + // Note that steps 1 and 4 are useless inside interrupt handlers as the + // corresponding interrupt level is automatically masked by IxM (unless IxM is + // explicitly cleared by the software). + // + // Get the right IRQ handler. + // + // If several interrupt lines are active in the group, the interrupt line with + // the highest number is selected. This is to be coherent with the + // prioritization of interrupt groups performed by the hardware interrupt + // controller. + // + // If no handler has been registered for the pending interrupt, + // _unhandled_interrupt will be selected thanks to the initialization of + // _int_line_handler_table_x by INTC_init_interrupts. + // + // exception.S will provide the interrupt handler with a clean interrupt stack + // frame, with nothing more pushed onto the stack. The interrupt handler must + // manage the `rete' instruction, what can be done thanks to pure assembly, + // inline assembly or the `__attribute__((__interrupt__))' C function + // attribute. + return (int_req) ? _int_handler_table[int_grp]._int_line_handler_table[32 - clz(int_req) - 1] : NULL; +} + +//! Init EVBA address. This sequence might also be done in the UTILS/STARTUP/GCC/crt0.S +static __inline__ void INTC_init_evba(void) +{ + Set_system_register(AVR32_EVBA, (int)&_evba ); +} + +void INTC_init_interrupts(void) +{ + unsigned int int_grp, int_req; + + INTC_init_evba(); + + // For all interrupt groups, + for (int_grp = 0; int_grp < AVR32_INTC_NUM_INT_GRPS; int_grp++) + { + // For all interrupt request lines of each group, + for (int_req = 0; int_req < _int_handler_table[int_grp].num_irqs; int_req++) + { + // Assign _unhandled_interrupt as default interrupt handler. + _int_handler_table[int_grp]._int_line_handler_table[int_req] = &_unhandled_interrupt; + } + + // Set the interrupt group priority register to its default value. + // By default, all interrupt groups are linked to the interrupt priority + // level 0 and to the interrupt vector _int0. + AVR32_INTC.ipr[int_grp] = ipr_val[AVR32_INTC_INT0]; + } +} + + +void INTC_register_interrupt(__int_handler handler, unsigned int irq, unsigned int int_level) +{ + // Determine the group of the IRQ. + unsigned int int_grp = irq / AVR32_INTC_MAX_NUM_IRQS_PER_GRP; + + // Store in _int_line_handler_table_x the pointer to the interrupt handler, so + // that _get_interrupt_handler can retrieve it when the interrupt is vectored. + _int_handler_table[int_grp]._int_line_handler_table[irq % AVR32_INTC_MAX_NUM_IRQS_PER_GRP] = handler; + + // Program the corresponding IPRX register to set the interrupt priority level + // and the interrupt vector offset that will be fetched by the core interrupt + // system. + // NOTE: The _intx functions are intermediate assembly functions between the + // core interrupt system and the user interrupt handler. + AVR32_INTC.ipr[int_grp] = ipr_val[int_level & (AVR32_INTC_IPR_INTLEVEL_MASK >> AVR32_INTC_IPR_INTLEVEL_OFFSET)]; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h new file mode 100644 index 000000000..31a4fc16b --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h @@ -0,0 +1,100 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief INTC driver for AVR32 UC3. + * + * AVR32 Interrupt Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an INTC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _INTC_H_ +#define _INTC_H_ + +#include "compiler.h" + + +//! Maximal number of interrupt request lines per group. +#define AVR32_INTC_MAX_NUM_IRQS_PER_GRP 32 + +//! Number of interrupt priority levels. +#define AVR32_INTC_NUM_INT_LEVELS (1 << AVR32_INTC_IPR_INTLEVEL_SIZE) + + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +//! Pointer to interrupt handler. +#if (defined __GNUC__) +typedef void (*__int_handler)(void); +#elif (defined __ICCAVR32__) +typedef void (__interrupt *__int_handler)(void); +#endif + + +/*! \brief Initializes the hardware interrupt controller driver. + * + * \note Taken and adapted from Newlib. + */ +extern void INTC_init_interrupts(void); + +/*! \brief Registers an interrupt handler. + * + * \param handler Interrupt handler to register. + * \param irq IRQ of the interrupt handler to register. + * \param int_level Interrupt priority level to assign to the group of this IRQ. + * + * \warning The interrupt handler must manage the `rete' instruction, what can + * be done thanks to pure assembly, inline assembly or the + * `__attribute__((__interrupt__))' C function attribute. + * + * \warning If several interrupt handlers of a same group are registered with + * different priority levels, only the latest priority level set will + * be effective. + * + * \note Taken and adapted from Newlib. + */ +extern void INTC_register_interrupt(__int_handler handler, unsigned int irq, unsigned int int_level); + +#endif // __AVR32_ABI_COMPILER__ + + +#endif // _INTC_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.c new file mode 100644 index 000000000..6c00f9e79 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.c @@ -0,0 +1,296 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief PDCA driver for AVR32 UC3. + * + * This file defines a useful set of functions for the PDCA interface on AVR32 + * devices. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a PDCA module. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "pdca.h" + + +volatile avr32_pdca_channel_t *pdca_get_handler(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = &AVR32_PDCA.channel[pdca_ch_number]; + + if (pdca_ch_number >= AVR32_PDCA_CHANNEL_LENGTH) + return (volatile avr32_pdca_channel_t *)PDCA_INVALID_ARGUMENT; + + return pdca_channel; +} + + +int pdca_init_channel(unsigned int pdca_ch_number, const pdca_channel_options_t *opt) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_disable_interrupt_transfer_complete(pdca_ch_number); // disable channel interrupt + pdca_disable_interrupt_reload_counter_zero(pdca_ch_number); // disable channel interrupt + + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pdca_channel->mar = (unsigned long)opt->addr; + pdca_channel->tcr = opt->size; + pdca_channel->psr = opt->pid; + pdca_channel->marr = (unsigned long)opt->r_addr; + pdca_channel->tcrr = opt->r_size; + pdca_channel->mr = +#if (defined AVR32_PDCA_120_H_INCLUDED ) || (defined AVR32_PDCA_121_H_INCLUDED ) || (defined AVR32_PDCA_122_H_INCLUDED ) +opt->etrig << AVR32_PDCA_ETRIG_OFFSET | +#endif // #ifdef AVR32_PDCA_120_H_INCLUDED + opt->transfer_size << AVR32_PDCA_SIZE_OFFSET; + pdca_channel->cr = AVR32_PDCA_ECLR_MASK; + pdca_channel->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); + + return PDCA_SUCCESS; +} + + +unsigned int pdca_get_channel_status(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + return (pdca_channel->sr & AVR32_PDCA_TEN_MASK) != 0; +} + + +void pdca_disable(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + // Disable transfer + pdca_channel->cr = AVR32_PDCA_TDIS_MASK; + +} + + +void pdca_enable(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + // Enable transfer + pdca_channel->cr = AVR32_PDCA_TEN_MASK; +} + + +unsigned int pdca_get_load_size(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + return pdca_channel->tcr; +} + + +void pdca_load_channel(unsigned int pdca_ch_number, volatile void *addr, unsigned int size) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pdca_channel->mar = (unsigned long)addr; + pdca_channel->tcr = size; + pdca_channel->cr = AVR32_PDCA_ECLR_MASK; + pdca_channel->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +unsigned int pdca_get_reload_size(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + return pdca_channel->tcrr; +} + + +void pdca_reload_channel(unsigned int pdca_ch_number, volatile void *addr, unsigned int size) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + // set up next memory address + pdca_channel->marr = (unsigned long)addr; + // set up next memory size + pdca_channel->tcrr = size; + pdca_channel->cr = AVR32_PDCA_ECLR_MASK; + pdca_channel->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void pdca_set_peripheral_select(unsigned int pdca_ch_number, unsigned int pid) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->psr = pid; +} + + +void pdca_set_transfer_size(unsigned int pdca_ch_number, unsigned int transfer_size) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->mr = (pdca_channel->mr & ~AVR32_PDCA_SIZE_MASK) | + transfer_size << AVR32_PDCA_SIZE_OFFSET; +} + + +#if (defined AVR32_PDCA_120_H_INCLUDED ) || (defined AVR32_PDCA_121_H_INCLUDED ) || (defined AVR32_PDCA_122_H_INCLUDED ) + + +void pdca_disable_event_trigger(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->mr &= ~AVR32_PDCA_ETRIG_MASK; +} + + +void pdca_enable_event_trigger(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->mr |= AVR32_PDCA_ETRIG_MASK; +} + + +#endif // #ifdef AVR32_PDCA_120_H_INCLUDED + + +void pdca_disable_interrupt_transfer_error(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pdca_channel->idr = AVR32_PDCA_TERR_MASK; + pdca_channel->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void pdca_enable_interrupt_transfer_error(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->ier = AVR32_PDCA_TERR_MASK; +} + + +void pdca_disable_interrupt_transfer_complete(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pdca_channel->idr = AVR32_PDCA_TRC_MASK; + pdca_channel->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void pdca_enable_interrupt_transfer_complete(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->ier = AVR32_PDCA_TRC_MASK; +} + + +void pdca_disable_interrupt_reload_counter_zero(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pdca_channel->idr = AVR32_PDCA_RCZ_MASK; + pdca_channel->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void pdca_enable_interrupt_reload_counter_zero(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + pdca_channel->ier = AVR32_PDCA_RCZ_MASK; +} + + +unsigned long pdca_get_transfer_status(unsigned int pdca_ch_number) +{ + // get the correct channel pointer + volatile avr32_pdca_channel_t *pdca_channel = pdca_get_handler(pdca_ch_number); + + return pdca_channel->isr; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.h new file mode 100644 index 000000000..5668fe997 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA/pdca.h @@ -0,0 +1,251 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief PDCA driver for AVR32 UC3. + * + * This file defines a useful set of functions for the PDCA interface on AVR32 + * devices. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a PDCA module. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PDCA_H_ +#define _PDCA_H_ + +#include <avr32/io.h> + + +//! Size of PDCA transfer: byte. +#define PDCA_TRANSFER_SIZE_BYTE AVR32_PDCA_BYTE + +//! Size of PDCA transfer: half-word. +#define PDCA_TRANSFER_SIZE_HALF_WORD AVR32_PDCA_HALF_WORD + +//! Size of PDCA transfer: word. +#define PDCA_TRANSFER_SIZE_WORD AVR32_PDCA_WORD + +/*! \name PDCA Driver Status Codes + */ +//! @{ +#define PDCA_SUCCESS 0 +#define PDCA_INVALID_ARGUMENT -1 +//! @} + +/*! \name PDCA Transfer Status Codes + */ +//! @{ +#define PDCA_TRANSFER_ERROR AVR32_PDCA_TERR_MASK +#define PDCA_TRANSFER_COMPLETE AVR32_PDCA_TRC_MASK +#define PDCA_TRANSFER_COUNTER_RELOAD_IS_ZERO AVR32_PDCA_RCZ_MASK +//! @} + + +//! PDCA channel options. +typedef struct +{ + //! Memory address. + volatile void *addr ; + //! Transfer counter. + unsigned int size ; + //! Next memory address. + volatile void *r_addr ; + //! Next transfer counter. + unsigned int r_size ; + //! Select peripheral ID. + unsigned int pid ; + //! Select the size of the transfer (byte, half-word or word). + unsigned int transfer_size ; +#if (defined AVR32_PDCA_120_H_INCLUDED ) || (defined AVR32_PDCA_121_H_INCLUDED ) || (defined AVR32_PDCA_122_H_INCLUDED ) +// Note: the options in this preprocessor section are only available from the PDCA IP version 1.2.0 on. + //! Enable (\c 1) or disable (\c 0) the transfer upon event trigger. + unsigned char etrig ; +#endif // #ifdef AVR32_PDCA_120_H_INCLUDED +} pdca_channel_options_t; + + +/*! \brief Get PDCA channel handler + * + * \param pdca_ch_number PDCA channel + * + * \return channel handled or PDCA_INVALID_ARGUMENT + */ +extern volatile avr32_pdca_channel_t *pdca_get_handler(unsigned int pdca_ch_number); + +/*! \brief Set the channel configuration + * + * \param pdca_ch_number PDCA channel + * \param opt channel option + */ +extern int pdca_init_channel(unsigned int pdca_ch_number, const pdca_channel_options_t *opt); + +/*! \brief Get the PDCA channel transfer enable status + * + * \param pdca_ch_number PDCA channel + * + * \return \c 1 if channel transfer is enabled, else \c 0 + */ +extern unsigned int pdca_get_channel_status(unsigned int pdca_ch_number); + +/*! \brief Disable the PDCA for the given channel + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_disable(unsigned int pdca_ch_number); + +/*! \brief Enable the PDCA for the given channel + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_enable(unsigned int pdca_ch_number); + +/*! \brief Get PDCA channel load size (or remaining size if transfer started) + * + * \param pdca_ch_number PDCA channel + * + * \return size current size to transfer + */ +extern unsigned int pdca_get_load_size(unsigned int pdca_ch_number); + +/*! \brief Set PDCA channel load values + * + * \param pdca_ch_number PDCA channel + * \param addr address where data to load are stored + * \param size size of the data block to load + */ +extern void pdca_load_channel(unsigned int pdca_ch_number, volatile void *addr, unsigned int size); + +/*! \brief Get PDCA channel reload size + * + * \param pdca_ch_number PDCA channel + * + * \return size current reload size + */ +extern unsigned int pdca_get_reload_size(unsigned int pdca_ch_number); + +/*! \brief Set PDCA channel reload values + * + * \param pdca_ch_number PDCA channel + * \param addr address where data to load are stored + * \param size size of the data block to load + */ +extern void pdca_reload_channel(unsigned int pdca_ch_number, volatile void *addr, unsigned int size); + +/*! \brief Set the peripheral function to use with the PDCA channel + * + * \param pdca_ch_number PDCA channel + * \param pid the peripheral ID + */ +extern void pdca_set_peripheral_select(unsigned int pdca_ch_number, unsigned int pid); + +/*! \brief Set the size of the transfer + * + * \param pdca_ch_number PDCA channel + * \param transfer_size size of the transfer (byte, half-word or word) + */ +extern void pdca_set_transfer_size(unsigned int pdca_ch_number, unsigned int transfer_size); + +#if (defined AVR32_PDCA_120_H_INCLUDED ) || (defined AVR32_PDCA_121_H_INCLUDED ) || (defined AVR32_PDCA_122_H_INCLUDED ) +// Note: the functions in this preprocessor section are only available from the PDCA IP version 1.2.0 on. + +/*! \brief Disable the event-triggered transfer feature + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_disable_event_trigger(unsigned int pdca_ch_number); + +/*! \brief Enable the event-triggered transfer feature + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_enable_event_trigger(unsigned int pdca_ch_number); + +#endif // #ifdef AVR32_PDCA_120_H_INCLUDED + +/*! \brief Disable PDCA transfer error interrupt + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_disable_interrupt_transfer_error(unsigned int pdca_ch_number); + +/*! \brief Enable PDCA transfer error interrupt + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_enable_interrupt_transfer_error(unsigned int pdca_ch_number); + +/*! \brief Disable PDCA transfer interrupt when completed (ie TCR and TCRR are both zero) + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_disable_interrupt_transfer_complete(unsigned int pdca_ch_number); + +/*! \brief Enable PDCA transfer interrupt when completed (ie TCR and TCRR are both zero) + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_enable_interrupt_transfer_complete(unsigned int pdca_ch_number); + +/*! \brief Disable PDCA transfer interrupt when TCRR reaches zero + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_disable_interrupt_reload_counter_zero(unsigned int pdca_ch_number); + +/*! \brief Enable PDCA transfer interrupt when TCRR reaches zero + * + * \param pdca_ch_number PDCA channel + */ +extern void pdca_enable_interrupt_reload_counter_zero(unsigned int pdca_ch_number); + +/*! \brief Get PDCA channel transfer status + * + * \param pdca_ch_number PDCA channel + * + * \return PDCA transfer status with the following bit-masks:\n + * - \c PDCA_TRANSFER_ERROR;\n + * - \c PDCA_TRANSFER_COMPLETE;\n + * - \c PDCA_TRANSFER_COUNTER_RELOAD_IS_ZERO. + */ +extern unsigned long pdca_get_transfer_status(unsigned int pdca_ch_number); + + +#endif // _PDCA_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c new file mode 100644 index 000000000..76d9268b4 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c @@ -0,0 +1,546 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Power Manager driver. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "pm.h" + + +/*! \name PM Writable Bit-Field Registers + */ +//! @{ + +typedef union +{ + unsigned long mcctrl; + avr32_pm_mcctrl_t MCCTRL; +} u_avr32_pm_mcctrl_t; + +typedef union +{ + unsigned long cksel; + avr32_pm_cksel_t CKSEL; +} u_avr32_pm_cksel_t; + +typedef union +{ + unsigned long pll; + avr32_pm_pll_t PLL; +} u_avr32_pm_pll_t; + +typedef union +{ + unsigned long oscctrl0; + avr32_pm_oscctrl0_t OSCCTRL0; +} u_avr32_pm_oscctrl0_t; + +typedef union +{ + unsigned long oscctrl1; + avr32_pm_oscctrl1_t OSCCTRL1; +} u_avr32_pm_oscctrl1_t; + +typedef union +{ + unsigned long oscctrl32; + avr32_pm_oscctrl32_t OSCCTRL32; +} u_avr32_pm_oscctrl32_t; + +typedef union +{ + unsigned long ier; + avr32_pm_ier_t IER; +} u_avr32_pm_ier_t; + +typedef union +{ + unsigned long idr; + avr32_pm_idr_t IDR; +} u_avr32_pm_idr_t; + +typedef union +{ + unsigned long icr; + avr32_pm_icr_t ICR; +} u_avr32_pm_icr_t; + +typedef union +{ + unsigned long gcctrl; + avr32_pm_gcctrl_t GCCTRL; +} u_avr32_pm_gcctrl_t; + +typedef union +{ + unsigned long rccr; + avr32_pm_rccr_t RCCR; +} u_avr32_pm_rccr_t; + +typedef union +{ + unsigned long bgcr; + avr32_pm_bgcr_t BGCR; +} u_avr32_pm_bgcr_t; + +typedef union +{ + unsigned long vregcr; + avr32_pm_vregcr_t VREGCR; +} u_avr32_pm_vregcr_t; + +typedef union +{ + unsigned long bod; + avr32_pm_bod_t BOD; +} u_avr32_pm_bod_t; + +//! @} + + +/*! \brief Sets the mode of the oscillator 0. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * \param mode Oscillator 0 mode (i.e. AVR32_PM_OSCCTRL0_MODE_x). + */ +static void pm_set_osc0_mode(volatile avr32_pm_t *pm, unsigned int mode) +{ + // Read + u_avr32_pm_oscctrl0_t u_avr32_pm_oscctrl0 = {pm->oscctrl0}; + // Modify + u_avr32_pm_oscctrl0.OSCCTRL0.mode = mode; + // Write + pm->oscctrl0 = u_avr32_pm_oscctrl0.oscctrl0; +} + + +void pm_enable_osc0_ext_clock(volatile avr32_pm_t *pm) +{ + pm_set_osc0_mode(pm, AVR32_PM_OSCCTRL0_MODE_EXT_CLOCK); +} + + +void pm_enable_osc0_crystal(volatile avr32_pm_t *pm, unsigned int fosc0) +{ + pm_set_osc0_mode(pm, (fosc0 < 900000) ? AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G0 : + (fosc0 < 3000000) ? AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G1 : + (fosc0 < 8000000) ? AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G2 : + AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G3); +} + + +void pm_enable_clk0(volatile avr32_pm_t *pm, unsigned int startup) +{ + pm_enable_clk0_no_wait(pm, startup); + pm_wait_for_clk0_ready(pm); +} + + +void pm_disable_clk0(volatile avr32_pm_t *pm) +{ + pm->mcctrl &= ~AVR32_PM_MCCTRL_OSC0EN_MASK; +} + + +void pm_enable_clk0_no_wait(volatile avr32_pm_t *pm, unsigned int startup) +{ + // Read register + u_avr32_pm_oscctrl0_t u_avr32_pm_oscctrl0 = {pm->oscctrl0}; + // Modify + u_avr32_pm_oscctrl0.OSCCTRL0.startup = startup; + // Write back + pm->oscctrl0 = u_avr32_pm_oscctrl0.oscctrl0; + + pm->mcctrl |= AVR32_PM_MCCTRL_OSC0EN_MASK; +} + + +void pm_wait_for_clk0_ready(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_OSC0RDY_MASK)); +} + + +/*! \brief Sets the mode of the oscillator 1. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * \param mode Oscillator 1 mode (i.e. AVR32_PM_OSCCTRL1_MODE_x). + */ +static void pm_set_osc1_mode(volatile avr32_pm_t *pm, unsigned int mode) +{ + // Read + u_avr32_pm_oscctrl1_t u_avr32_pm_oscctrl1 = {pm->oscctrl1}; + // Modify + u_avr32_pm_oscctrl1.OSCCTRL1.mode = mode; + // Write + pm->oscctrl1 = u_avr32_pm_oscctrl1.oscctrl1; +} + + +void pm_enable_osc1_ext_clock(volatile avr32_pm_t *pm) +{ + pm_set_osc1_mode(pm, AVR32_PM_OSCCTRL1_MODE_EXT_CLOCK); +} + + +void pm_enable_osc1_crystal(volatile avr32_pm_t *pm, unsigned int fosc1) +{ + pm_set_osc1_mode(pm, (fosc1 < 900000) ? AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G0 : + (fosc1 < 3000000) ? AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G1 : + (fosc1 < 8000000) ? AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G2 : + AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G3); +} + + +void pm_enable_clk1(volatile avr32_pm_t *pm, unsigned int startup) +{ + pm_enable_clk1_no_wait(pm, startup); + pm_wait_for_clk1_ready(pm); +} + + +void pm_disable_clk1(volatile avr32_pm_t *pm) +{ + pm->mcctrl &= ~AVR32_PM_MCCTRL_OSC1EN_MASK; +} + + +void pm_enable_clk1_no_wait(volatile avr32_pm_t *pm, unsigned int startup) +{ + // Read register + u_avr32_pm_oscctrl1_t u_avr32_pm_oscctrl1 = {pm->oscctrl1}; + // Modify + u_avr32_pm_oscctrl1.OSCCTRL1.startup = startup; + // Write back + pm->oscctrl1 = u_avr32_pm_oscctrl1.oscctrl1; + + pm->mcctrl |= AVR32_PM_MCCTRL_OSC1EN_MASK; +} + + +void pm_wait_for_clk1_ready(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_OSC1RDY_MASK)); +} + + +/*! \brief Sets the mode of the 32-kHz oscillator. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * \param mode 32-kHz oscillator mode (i.e. AVR32_PM_OSCCTRL32_MODE_x). + */ +static void pm_set_osc32_mode(volatile avr32_pm_t *pm, unsigned int mode) +{ + // Read + u_avr32_pm_oscctrl32_t u_avr32_pm_oscctrl32 = {pm->oscctrl32}; + // Modify + u_avr32_pm_oscctrl32.OSCCTRL32.mode = mode; + // Write + pm->oscctrl32 = u_avr32_pm_oscctrl32.oscctrl32; +} + + +void pm_enable_osc32_ext_clock(volatile avr32_pm_t *pm) +{ + pm_set_osc32_mode(pm, AVR32_PM_OSCCTRL32_MODE_EXT_CLOCK); +} + + +void pm_enable_osc32_crystal(volatile avr32_pm_t *pm) +{ + pm_set_osc32_mode(pm, AVR32_PM_OSCCTRL32_MODE_CRYSTAL); +} + + +void pm_enable_clk32(volatile avr32_pm_t *pm, unsigned int startup) +{ + pm_enable_clk32_no_wait(pm, startup); + pm_wait_for_clk32_ready(pm); +} + + +void pm_disable_clk32(volatile avr32_pm_t *pm) +{ + pm->oscctrl32 &= ~AVR32_PM_OSCCTRL32_OSC32EN_MASK; +} + + +void pm_enable_clk32_no_wait(volatile avr32_pm_t *pm, unsigned int startup) +{ + // Read register + u_avr32_pm_oscctrl32_t u_avr32_pm_oscctrl32 = {pm->oscctrl32}; + // Modify + u_avr32_pm_oscctrl32.OSCCTRL32.osc32en = 1; + u_avr32_pm_oscctrl32.OSCCTRL32.startup = startup; + // Write back + pm->oscctrl32 = u_avr32_pm_oscctrl32.oscctrl32; +} + + +void pm_wait_for_clk32_ready(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_OSC32RDY_MASK)); +} + + +void pm_cksel(volatile avr32_pm_t *pm, + unsigned int pbadiv, + unsigned int pbasel, + unsigned int pbbdiv, + unsigned int pbbsel, + unsigned int hsbdiv, + unsigned int hsbsel) +{ + u_avr32_pm_cksel_t u_avr32_pm_cksel = {0}; + + u_avr32_pm_cksel.CKSEL.cpusel = hsbsel; + u_avr32_pm_cksel.CKSEL.cpudiv = hsbdiv; + u_avr32_pm_cksel.CKSEL.hsbsel = hsbsel; + u_avr32_pm_cksel.CKSEL.hsbdiv = hsbdiv; + u_avr32_pm_cksel.CKSEL.pbasel = pbasel; + u_avr32_pm_cksel.CKSEL.pbadiv = pbadiv; + u_avr32_pm_cksel.CKSEL.pbbsel = pbbsel; + u_avr32_pm_cksel.CKSEL.pbbdiv = pbbdiv; + + pm->cksel = u_avr32_pm_cksel.cksel; + + // Wait for ckrdy bit and then clear it + while (!(pm->poscsr & AVR32_PM_POSCSR_CKRDY_MASK)); +} + + +void pm_gc_setup(volatile avr32_pm_t *pm, + unsigned int gc, + unsigned int osc_or_pll, // Use Osc (=0) or PLL (=1) + unsigned int pll_osc, // Sel Osc0/PLL0 or Osc1/PLL1 + unsigned int diven, + unsigned int div) +{ + u_avr32_pm_gcctrl_t u_avr32_pm_gcctrl = {0}; + + u_avr32_pm_gcctrl.GCCTRL.oscsel = pll_osc; + u_avr32_pm_gcctrl.GCCTRL.pllsel = osc_or_pll; + u_avr32_pm_gcctrl.GCCTRL.diven = diven; + u_avr32_pm_gcctrl.GCCTRL.div = div; + + pm->gcctrl[gc] = u_avr32_pm_gcctrl.gcctrl; +} + + +void pm_gc_enable(volatile avr32_pm_t *pm, + unsigned int gc) +{ + pm->gcctrl[gc] |= AVR32_PM_GCCTRL_CEN_MASK; +} + + +void pm_gc_disable(volatile avr32_pm_t *pm, + unsigned int gc) +{ + pm->gcctrl[gc] &= ~AVR32_PM_GCCTRL_CEN_MASK; +} + + +void pm_pll_setup(volatile avr32_pm_t *pm, + unsigned int pll, + unsigned int mul, + unsigned int div, + unsigned int osc, + unsigned int lockcount) +{ + u_avr32_pm_pll_t u_avr32_pm_pll = {0}; + + u_avr32_pm_pll.PLL.pllosc = osc; + u_avr32_pm_pll.PLL.plldiv = div; + u_avr32_pm_pll.PLL.pllmul = mul; + u_avr32_pm_pll.PLL.pllcount = lockcount; + + pm->pll[pll] = u_avr32_pm_pll.pll; +} + + +void pm_pll_set_option(volatile avr32_pm_t *pm, + unsigned int pll, + unsigned int pll_freq, + unsigned int pll_div2, + unsigned int pll_wbwdisable) +{ + u_avr32_pm_pll_t u_avr32_pm_pll = {pm->pll[pll]}; + u_avr32_pm_pll.PLL.pllopt = pll_freq | (pll_div2 << 1) | (pll_wbwdisable << 2); + pm->pll[pll] = u_avr32_pm_pll.pll; +} + + +unsigned int pm_pll_get_option(volatile avr32_pm_t *pm, + unsigned int pll) +{ + return (pm->pll[pll] & AVR32_PM_PLLOPT_MASK) >> AVR32_PM_PLLOPT_OFFSET; +} + + +void pm_pll_enable(volatile avr32_pm_t *pm, + unsigned int pll) +{ + pm->pll[pll] |= AVR32_PM_PLLEN_MASK; +} + + +void pm_pll_disable(volatile avr32_pm_t *pm, + unsigned int pll) +{ + pm->pll[pll] &= ~AVR32_PM_PLLEN_MASK; +} + + +void pm_wait_for_pll0_locked(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_LOCK0_MASK)); +} + + +void pm_wait_for_pll1_locked(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_LOCK1_MASK)); +} + + +void pm_switch_to_clock(volatile avr32_pm_t *pm, unsigned long clock) +{ + // Read + u_avr32_pm_mcctrl_t u_avr32_pm_mcctrl = {pm->mcctrl}; + // Modify + u_avr32_pm_mcctrl.MCCTRL.mcsel = clock; + // Write back + pm->mcctrl = u_avr32_pm_mcctrl.mcctrl; +} + + +void pm_switch_to_osc0(volatile avr32_pm_t *pm, unsigned int fosc0, unsigned int startup) +{ + pm_enable_osc0_crystal(pm, fosc0); // Enable the Osc0 in crystal mode + pm_enable_clk0(pm, startup); // Crystal startup time - This parameter is critical and depends on the characteristics of the crystal + pm_switch_to_clock(pm, AVR32_PM_MCSEL_OSC0); // Then switch main clock to Osc0 +} + + +void pm_bod_enable_irq(volatile avr32_pm_t *pm) +{ + pm->ier = AVR32_PM_IER_BODDET_MASK; +} + + +void pm_bod_disable_irq(volatile avr32_pm_t *pm) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pm->idr = AVR32_PM_IDR_BODDET_MASK; + pm->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void pm_bod_clear_irq(volatile avr32_pm_t *pm) +{ + pm->icr = AVR32_PM_ICR_BODDET_MASK; +} + + +unsigned long pm_bod_get_irq_status(volatile avr32_pm_t *pm) +{ + return ((pm->isr & AVR32_PM_ISR_BODDET_MASK) != 0); +} + + +unsigned long pm_bod_get_irq_enable_bit(volatile avr32_pm_t *pm) +{ + return ((pm->imr & AVR32_PM_IMR_BODDET_MASK) != 0); +} + + +unsigned long pm_bod_get_level(volatile avr32_pm_t *pm) +{ + return (pm->bod & AVR32_PM_BOD_LEVEL_MASK) >> AVR32_PM_BOD_LEVEL_OFFSET; +} + + +unsigned long pm_read_gplp(volatile avr32_pm_t *pm, unsigned long gplp) +{ + return pm->gplp[gplp]; +} + + +void pm_write_gplp(volatile avr32_pm_t *pm, unsigned long gplp, unsigned long value) +{ + pm->gplp[gplp] = value; +} + + +long pm_enable_module(volatile avr32_pm_t *pm, unsigned long module) +{ + unsigned long domain = module>>5; + unsigned long *regptr = (unsigned long*)(&(pm->cpumask) + domain); + + // Implementation-specific shortcut: the ckMASK registers are contiguous and + // memory-mapped in that order: CPUMASK, HSBMASK, PBAMASK, PBBMASK. + + *regptr |= (1<<(module%32)); + + return PASS; +} + +long pm_disable_module(volatile avr32_pm_t *pm, unsigned long module) +{ + unsigned long domain = module>>5; + unsigned long *regptr = (unsigned long*)(&(pm->cpumask) + domain); + + // Implementation-specific shortcut: the ckMASK registers are contiguous and + // memory-mapped in that order: CPUMASK, HSBMASK, PBAMASK, PBBMASK. + + *regptr &= ~(1<<(module%32)); + + return PASS; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h new file mode 100644 index 000000000..ca679f734 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h @@ -0,0 +1,493 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Power Manager driver. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PM_H_ +#define _PM_H_ + +#include <avr32/io.h> +#include "compiler.h" +#include "preprocessor.h" + + +/*! \brief Sets the MCU in the specified sleep mode. + * + * \param mode Sleep mode: + * \arg \c AVR32_PM_SMODE_IDLE: Idle; + * \arg \c AVR32_PM_SMODE_FROZEN: Frozen; + * \arg \c AVR32_PM_SMODE_STANDBY: Standby; + * \arg \c AVR32_PM_SMODE_STOP: Stop; + * \arg \c AVR32_PM_SMODE_DEEP_STOP: DeepStop; + * \arg \c AVR32_PM_SMODE_STATIC: Static. + */ +#define SLEEP(mode) {__asm__ __volatile__ ("sleep "STRINGZ(mode));} + + +//! Input and output parameters when initializing PM clocks using pm_configure_clocks(). +typedef struct +{ + //! CPU frequency (input/output argument). + unsigned long cpu_f; + + //! PBA frequency (input/output argument). + unsigned long pba_f; + + //! Oscillator 0's external crystal(or external clock) frequency (board dependant) (input argument). + unsigned long osc0_f; + + //! Oscillator 0's external crystal(or external clock) startup time: AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC (input argument). + unsigned long osc0_startup; +} pm_freq_param_t; + +#define PM_FREQ_STATUS_FAIL (-1) +#define PM_FREQ_STATUS_OK (0) + + +/*! \brief Gets the MCU reset cause. + * + * \param pm Base address of the Power Manager instance (i.e. &AVR32_PM). + * + * \return The MCU reset cause which can be masked with the + * \c AVR32_PM_RCAUSE_x_MASK bit-masks to isolate specific causes. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned int pm_get_reset_cause(volatile avr32_pm_t *pm) +{ + return pm->rcause; +} + + +/*! + * \brief This function will enable the external clock mode of the oscillator 0. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc0_ext_clock(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the crystal mode of the oscillator 0. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param fosc0 Oscillator 0 crystal frequency (Hz) + */ +extern void pm_enable_osc0_crystal(volatile avr32_pm_t *pm, unsigned int fosc0); + + +/*! + * \brief This function will enable the oscillator 0 to be used with a startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 0 startup time. AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk0(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will disable the oscillator 0. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_disable_clk0(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 0 to be used with no startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 0 startup time, for which the function does not wait. AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk0_no_wait(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will wait until the Osc0 clock is ready. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_clk0_ready(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the external clock mode of the oscillator 1. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc1_ext_clock(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the crystal mode of the oscillator 1. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param fosc1 Oscillator 1 crystal frequency (Hz) + */ +extern void pm_enable_osc1_crystal(volatile avr32_pm_t *pm, unsigned int fosc1); + + +/*! + * \brief This function will enable the oscillator 1 to be used with a startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 1 startup time. AVR32_PM_OSCCTRL1_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk1(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will disable the oscillator 1. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_disable_clk1(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 1 to be used with no startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 1 startup time, for which the function does not wait. AVR32_PM_OSCCTRL1_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk1_no_wait(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will wait until the Osc1 clock is ready. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_clk1_ready(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the external clock mode of the 32-kHz oscillator. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc32_ext_clock(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the crystal mode of the 32-kHz oscillator. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc32_crystal(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 32 to be used with a startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 32 kHz startup time. AVR32_PM_OSCCTRL32_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk32(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will disable the oscillator 32. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_disable_clk32(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 32 to be used with no startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 32 kHz startup time, for which the function does not wait. AVR32_PM_OSCCTRL32_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk32_no_wait(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will wait until the osc32 clock is ready. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_clk32_ready(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will select all the power manager clocks. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pbadiv Peripheral Bus A clock divisor enable + * \param pbasel Peripheral Bus A select + * \param pbbdiv Peripheral Bus B clock divisor enable + * \param pbbsel Peripheral Bus B select + * \param hsbdiv High Speed Bus clock divisor enable (CPU clock = HSB clock) + * \param hsbsel High Speed Bus select (CPU clock = HSB clock ) + */ +extern void pm_cksel(volatile avr32_pm_t *pm, unsigned int pbadiv, unsigned int pbasel, unsigned int pbbdiv, unsigned int pbbsel, unsigned int hsbdiv, unsigned int hsbsel); + + +/*! + * \brief This function will setup a generic clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gc generic clock number (0 for gc0...) + * \param osc_or_pll Use OSC (=0) or PLL (=1) + * \param pll_osc Select Osc0/PLL0 or Osc1/PLL1 + * \param diven Generic clock divisor enable + * \param div Generic clock divisor + */ +extern void pm_gc_setup(volatile avr32_pm_t *pm, unsigned int gc, unsigned int osc_or_pll, unsigned int pll_osc, unsigned int diven, unsigned int div); + + +/*! + * \brief This function will enable a generic clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gc generic clock number (0 for gc0...) + */ +extern void pm_gc_enable(volatile avr32_pm_t *pm, unsigned int gc); + + +/*! + * \brief This function will disable a generic clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gc generic clock number (0 for gc0...) + */ +extern void pm_gc_disable(volatile avr32_pm_t *pm, unsigned int gc); + + +/*! + * \brief This function will setup a PLL. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + * \param mul PLL MUL in the PLL formula + * \param div PLL DIV in the PLL formula + * \param osc OSC number (0 for osc0, 1 for osc1) + * \param lockcount PLL lockount + */ +extern void pm_pll_setup(volatile avr32_pm_t *pm, unsigned int pll, unsigned int mul, unsigned int div, unsigned int osc, unsigned int lockcount); + + +/*! + * \brief This function will set a PLL option. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + * \param pll_freq Set to 1 for VCO frequency range 80-180MHz, set to 0 for VCO frequency range 160-240Mhz. + * \param pll_div2 Divide the PLL output frequency by 2 (this settings does not change the FVCO value) + * \param pll_wbwdisable 1 Disable the Wide-Bandith Mode (Wide-Bandwith mode allow a faster startup time and out-of-lock time). 0 to enable the Wide-Bandith Mode. + */ +extern void pm_pll_set_option(volatile avr32_pm_t *pm, unsigned int pll, unsigned int pll_freq, unsigned int pll_div2, unsigned int pll_wbwdisable); + + +/*! + * \brief This function will get a PLL option. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + * \return Option + */ +extern unsigned int pm_pll_get_option(volatile avr32_pm_t *pm, unsigned int pll); + + +/*! + * \brief This function will enable a PLL. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + */ +extern void pm_pll_enable(volatile avr32_pm_t *pm, unsigned int pll); + + +/*! + * \brief This function will disable a PLL. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + */ +extern void pm_pll_disable(volatile avr32_pm_t *pm, unsigned int pll); + + +/*! + * \brief This function will wait for PLL0 locked + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_pll0_locked(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will wait for PLL1 locked + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_pll1_locked(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will switch the power manager main clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param clock Clock to be switched on. AVR32_PM_MCSEL_SLOW for RCOsc, AVR32_PM_MCSEL_OSC0 for Osc0, AVR32_PM_MCSEL_PLL0 for PLL0. + */ +extern void pm_switch_to_clock(volatile avr32_pm_t *pm, unsigned long clock); + + +/*! + * \brief Switch main clock to clock Osc0 (crystal mode) + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param fosc0 Oscillator 0 crystal frequency (Hz) + * \param startup Crystal 0 startup time. AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC. + */ +extern void pm_switch_to_osc0(volatile avr32_pm_t *pm, unsigned int fosc0, unsigned int startup); + + +/*! \brief Enables the Brown-Out Detector interrupt. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + */ +extern void pm_bod_enable_irq(volatile avr32_pm_t *pm); + + +/*! \brief Disables the Brown-Out Detector interrupt. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + */ +extern void pm_bod_disable_irq(volatile avr32_pm_t *pm); + + +/*! \brief Clears the Brown-Out Detector interrupt flag. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + */ +extern void pm_bod_clear_irq(volatile avr32_pm_t *pm); + + +/*! \brief Gets the Brown-Out Detector interrupt flag. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * + * \retval 0 No BOD interrupt. + * \retval 1 BOD interrupt pending. + */ +extern unsigned long pm_bod_get_irq_status(volatile avr32_pm_t *pm); + + +/*! \brief Gets the Brown-Out Detector interrupt enable status. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * + * \retval 0 BOD interrupt disabled. + * \retval 1 BOD interrupt enabled. + */ +extern unsigned long pm_bod_get_irq_enable_bit(volatile avr32_pm_t *pm); + + +/*! \brief Gets the triggering threshold of the Brown-Out Detector. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * + * \return Triggering threshold of the BOD. See the electrical characteristics + * in the part datasheet for actual voltage levels. + */ +extern unsigned long pm_bod_get_level(volatile avr32_pm_t *pm); + + +/*! + * \brief Read the content of the PM GPLP registers + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * + * \return The content of the chosen GPLP register. + */ +extern unsigned long pm_read_gplp(volatile avr32_pm_t *pm, unsigned long gplp); + + +/*! + * \brief Write into the PM GPLP registers + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * \param value Value to write + */ +extern void pm_write_gplp(volatile avr32_pm_t *pm, unsigned long gplp, unsigned long value); + + +/*! \brief Enable the clock of a module. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param module The module to clock (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks") + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long pm_enable_module(volatile avr32_pm_t *pm, unsigned long module); + +/*! \brief Disable the clock of a module. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param module The module to shut down (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks") + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long pm_disable_module(volatile avr32_pm_t *pm, unsigned long module); + + + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks + * according to the user wishes. + * + * This function needs some parameters stored in a pm_freq_param_t structure: + * - cpu_f and pba_f are the wanted frequencies, + * - osc0_f is the oscillator 0 on-board frequency (e.g. FOSC0), + * - osc0_startup is the oscillator 0 startup time (e.g. OSC0_STARTUP). + * + * The function will then configure the clocks using the following rules: + * - It first try to find a valid PLL frequency (the highest possible value to avoid jitter) in order + * to satisfy the CPU frequency, + * - It optimizes the configuration depending the various divide stages, + * - Then, the PBA frequency is configured from the CPU freq. + * - Note that HSB and PBB are configured with the same frequency as CPU. + * - Note also that the number of wait states of the flash read accesses is automatically set-up depending + * the CPU frequency. As a consequence, the application needs the FLASHC driver to compile. + * + * The CPU, HSB and PBA frequencies programmed after configuration are stored back into cpu_f and pba_f. + * + * \param param pointer on the configuration structure. + * + * \retval PM_FREQ_STATUS_OK Mode successfully initialized. + * \retval PM_FREQ_STATUS_FAIL The configuration can not be done. + */ +extern int pm_configure_clocks(pm_freq_param_t *param); + + +/*! \brief Automatically configure the USB clock. + * + * USB clock is configured to 48MHz, using the PLL1 from the Oscillator0, assuming + * a 12 MHz crystal is connected to it. + */ +extern void pm_configure_usb_clock(void); + + +#endif // _PM_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c new file mode 100644 index 000000000..8beb83b20 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c @@ -0,0 +1,268 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Power Manager clocks configuration helper. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <string.h> +#include "compiler.h" +#include "pm.h" + +extern void flashc_set_wait_state(unsigned int wait_state); +#if (defined AVR32_FLASHC_210_H_INCLUDED) +extern void flashc_issue_command(unsigned int command, int page_number); +#endif + + +#define PM_MAX_MUL ((1 << AVR32_PM_PLL0_PLLMUL_SIZE) - 1) + + +int pm_configure_clocks(pm_freq_param_t *param) +{ + // Supported frequencies: + // Fosc0 mul div PLL div2_en cpu_f pba_f Comment + // 12 15 1 192 1 12 12 + // 12 9 3 40 1 20 20 PLL out of spec + // 12 15 1 192 1 24 12 + // 12 9 1 120 1 30 15 + // 12 9 3 40 0 40 20 PLL out of spec + // 12 15 1 192 1 48 12 + // 12 15 1 192 1 48 24 + // 12 8 1 108 1 54 27 + // 12 9 1 120 1 60 15 + // 12 9 1 120 1 60 30 + // 12 10 1 132 1 66 16.5 + // + unsigned long in_cpu_f = param->cpu_f; + unsigned long in_osc0_f = param->osc0_f; + unsigned long mul, div, div2_en = 0, div2_cpu = 0, div2_pba = 0; + unsigned long pll_freq, rest; + Bool b_div2_pba, b_div2_cpu; + + // Switch to external Oscillator 0 + pm_switch_to_osc0(&AVR32_PM, in_osc0_f, param->osc0_startup); + + // Start with CPU freq config + if (in_cpu_f == in_osc0_f) + { + param->cpu_f = in_osc0_f; + param->pba_f = in_osc0_f; + return PM_FREQ_STATUS_OK; + } + else if (in_cpu_f < in_osc0_f) + { + // TBD + } + + rest = in_cpu_f % in_osc0_f; + + for (div = 1; div < 32; div++) + { + if ((div * rest) % in_osc0_f == 0) + break; + } + if (div == 32) + return PM_FREQ_STATUS_FAIL; + + mul = (in_cpu_f * div) / in_osc0_f; + + if (mul > PM_MAX_MUL) + return PM_FREQ_STATUS_FAIL; + + // export 2power from PLL div to div2_cpu + while (!(div % 2)) + { + div /= 2; + div2_cpu++; + } + + // Here we know the mul and div parameter of the PLL config. + // . Check out if the PLL has a valid in_cpu_f. + // . Try to have for the PLL frequency (VCO output) the highest possible value + // to reduce jitter. + while (in_osc0_f * 2 * mul / div < AVR32_PM_PLL_VCO_RANGE0_MAX_FREQ) + { + if (2 * mul > PM_MAX_MUL) + break; + mul *= 2; + div2_cpu++; + } + + if (div2_cpu != 0) + { + div2_cpu--; + div2_en = 1; + } + + pll_freq = in_osc0_f * mul / (div * (1 << div2_en)); + + // Update real CPU Frequency + param->cpu_f = pll_freq / (1 << div2_cpu); + mul--; + + pm_pll_setup(&AVR32_PM + , 0 // pll + , mul // mul + , div // div + , 0 // osc + , 16 // lockcount + ); + + pm_pll_set_option(&AVR32_PM + , 0 // pll + // PLL clock is lower than 160MHz: need to set pllopt. + , (pll_freq < AVR32_PM_PLL_VCO_RANGE0_MIN_FREQ) ? 1 : 0 // pll_freq + , div2_en // pll_div2 + , 0 // pll_wbwdisable + ); + + rest = pll_freq; + while (rest > AVR32_PM_PBA_MAX_FREQ || + rest != param->pba_f) + { + div2_pba++; + rest = pll_freq / (1 << div2_pba); + if (rest < param->pba_f) + break; + } + + // Update real PBA Frequency + param->pba_f = pll_freq / (1 << div2_pba); + + // Enable PLL0 + pm_pll_enable(&AVR32_PM, 0); + + // Wait for PLL0 locked + pm_wait_for_pll0_locked(&AVR32_PM); + + if (div2_cpu) + { + b_div2_cpu = TRUE; + div2_cpu--; + } + else + b_div2_cpu = FALSE; + + if (div2_pba) + { + b_div2_pba = TRUE; + div2_pba--; + } + else + b_div2_pba = FALSE; + + pm_cksel(&AVR32_PM + , b_div2_pba, div2_pba // PBA + , b_div2_cpu, div2_cpu // PBB + , b_div2_cpu, div2_cpu // HSB + ); + + if (param->cpu_f > AVR32_FLASHC_FWS_0_MAX_FREQ) + { + flashc_set_wait_state(1); +#if (defined AVR32_FLASHC_210_H_INCLUDED) + if (param->cpu_f > AVR32_FLASHC_HSEN_FWS_1_MAX_FREQ) + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSEN, -1); + else + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); +#endif + } + else + { + flashc_set_wait_state(0); +#if (defined AVR32_FLASHC_210_H_INCLUDED) + if (param->cpu_f > AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ) + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSEN, -1); + else + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); +#endif + } + + pm_switch_to_clock(&AVR32_PM, AVR32_PM_MCCTRL_MCSEL_PLL0); + + return PM_FREQ_STATUS_OK; +} + + +void pm_configure_usb_clock(void) +{ +#if UC3A3 + + // Setup USB GCLK. + pm_gc_setup(&AVR32_PM, AVR32_PM_GCLK_USBB, // gc + 0, // osc_or_pll: use Osc (if 0) or PLL (if 1) + 0, // pll_osc: select Osc0/PLL0 or Osc1/PLL1 + 0, // diven + 0); // div + + // Enable USB GCLK. + pm_gc_enable(&AVR32_PM, AVR32_PM_GCLK_USBB); +#else + // Use 12MHz from OSC0 and generate 96 MHz + pm_pll_setup(&AVR32_PM, 1, // pll. + 7, // mul. + 1, // div. + 0, // osc. + 16); // lockcount. + + pm_pll_set_option(&AVR32_PM, 1, // pll. + 1, // pll_freq: choose the range 80-180MHz. + 1, // pll_div2. + 0); // pll_wbwdisable. + + // start PLL1 and wait forl lock + pm_pll_enable(&AVR32_PM, 1); + + // Wait for PLL1 locked. + pm_wait_for_pll1_locked(&AVR32_PM); + + pm_gc_setup(&AVR32_PM, AVR32_PM_GCLK_USBB, // gc. + 1, // osc_or_pll: use Osc (if 0) or PLL (if 1). + 1, // pll_osc: select Osc0/PLL0 or Osc1/PLL1. + 0, // diven. + 0); // div. + pm_gc_enable(&AVR32_PM, AVR32_PM_GCLK_USBB); +#endif +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c new file mode 100644 index 000000000..f5fc1553d --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c @@ -0,0 +1,566 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief High-level library abstracting features such as oscillators/pll/dfll + * configuration, clock configuration, System-sensible parameters + * configuration, buses clocks configuration, sleep mode, reset. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ +#include "power_clocks_lib.h" + + +//! Device-specific data +#if UC3L +static long int pcl_configure_clocks_uc3l(pcl_freq_param_t *param); // FORWARD declaration +#endif + +#if UC3C +static long int pcl_configure_clocks_uc3c(pcl_freq_param_t *param); // FORWARD declaration +#endif + +long int pcl_configure_clocks(pcl_freq_param_t *param) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE + // Implementation for UC3A, UC3A3, UC3B parts. + return(pm_configure_clocks(param)); +#else + #ifdef AVR32_PM_410_H_INCLUDED + // Implementation for UC3C parts. + return(pcl_configure_clocks_uc3c(param)); + #else + // Implementation for UC3L parts. + return(pcl_configure_clocks_uc3l(param)); + #endif +#endif +} + + +//! Device-specific implementation +#if UC3L +// FORWARD declaration +static long int pcl_configure_synchronous_clocks( pm_clk_src_t main_clk_src, + unsigned long main_clock_freq_hz, + pcl_freq_param_t *param); + +long int pcl_configure_clocks_rcsys(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_RCSYS + + // Supported synchronous clocks frequencies if RCSYS is the main clock source: + // 115200Hz, 57600Hz, 28800Hz, 14400Hz, 7200Hz, 3600Hz, 1800Hz, 900Hz, 450Hz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target frequencies are reachable. + if((param->cpu_f > SCIF_SLOWCLOCK_FREQ_HZ) || (param->pba_f > SCIF_SLOWCLOCK_FREQ_HZ) + || (param->pbb_f > SCIF_SLOWCLOCK_FREQ_HZ)) + return(-1); +#endif + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_SLOW, SCIF_SLOWCLOCK_FREQ_HZ, param)); +} + + +long int pcl_configure_clocks_rc120m(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_RC120M + + // Supported synchronous clocks frequencies if RC120M is the main clock source: + // 30MHz, 15MHz, 7.5MHz, 3.75MHz, 1.875MHz, 937.5kHz, 468.75kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target frequencies are reachable. + if((param->cpu_f > SCIF_RC120M_FREQ_HZ) || (param->pba_f > SCIF_RC120M_FREQ_HZ) + || (param->pbb_f > SCIF_RC120M_FREQ_HZ)) + return(-1); +#endif + + // Start the 120MHz internal RCosc (RC120M) clock + scif_start_rc120M(); + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_RC120M, SCIF_RC120M_FREQ_HZ, param)); +} + + +long int pcl_configure_clocks_osc0(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_OSC0 + + // Supported synchronous clocks frequencies if OSC0 is the main clock source: + // (these obviously depend on the OSC0 frequency; we'll take 16MHz as an example) + // 16MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz, 62.5kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + + unsigned long main_clock_freq; + + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + + main_clock_freq = param->osc0_f; +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target frequencies are reachable. + if((param->cpu_f > main_clock_freq) || (param->pba_f > main_clock_freq) + || (param->pbb_f > main_clock_freq)) + return(-1); +#endif + // Configure OSC0 in crystal mode, external crystal with a fcrystal Hz frequency. + scif_configure_osc_crystalmode(SCIF_OSC0, main_clock_freq); + // Enable the OSC0 + scif_enable_osc(SCIF_OSC0, param->osc0_startup, true); + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_OSC0, main_clock_freq, param)); +} + + +long int pcl_configure_clocks_dfll0(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_DFLL + + // Supported synchronous clocks frequencies if DFLL is the main clock source: + // (these obviously depend on the DFLL target frequency; we'll take 100MHz as an example) + // 50MHz, 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1562.5kHz, 781.25kHz, 390.625kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + + unsigned long main_clock_freq; + scif_gclk_opt_t *pgc_dfllif_ref_opt; + + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + + main_clock_freq = param->dfll_f; +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target DFLL output frequency is in the correct range. + if((main_clock_freq > SCIF_DFLL_MAXFREQ_HZ) || (main_clock_freq < SCIF_DFLL_MINFREQ_HZ)) + return(-1); + // Verify that the target frequencies are reachable. + if((param->cpu_f > main_clock_freq) || (param->pba_f > main_clock_freq) + || (param->pbb_f > main_clock_freq)) + return(-1); +#endif + pgc_dfllif_ref_opt = (scif_gclk_opt_t *)param->pextra_params; + // Implementation note: this implementation configures the DFLL in closed-loop + // mode (because it gives the best accuracy) which enables the generic clock CLK_DFLLIF_REF + // as a reference (RCSYS being used as the generic clock source, undivided). + scif_dfll0_closedloop_configure_and_start(pgc_dfllif_ref_opt, main_clock_freq, TRUE); + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_DFLL0, main_clock_freq, param)); +} + + +static long int pcl_configure_clocks_uc3l(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_RCSYS, PCL_MC_OSC0, PCL_MC_DFLL0, PCL_MC_RC120M + + // Supported synchronous clocks frequencies if RCSYS is the main clock source: + // 115200Hz, 57600Hz, 28800Hz, 14400Hz, 7200Hz, 3600Hz, 1800Hz, 900Hz, 450Hz. + + // Supported synchronous clocks frequencies if RC120M is the main clock source: + // 30MHz, 15MHz, 7.5MHz, 3.75MHz, 1.875MHz, 937.5kHz, 468.75kHz. + + // Supported synchronous clocks frequencies if OSC0 is the main clock source: + // (these obviously depend on the OSC0 frequency; we'll take 16MHz as an example) + // 16MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz, 62.5kHz. + + // Supported synchronous clocks frequencies if DFLL is the main clock source: + // (these obviously depend on the DFLL target frequency; we'll take 100MHz as an example) + // 50MHz, 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1562.5kHz, 781.25kHz, 390.625kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + + if(PCL_MC_RCSYS == param->main_clk_src) + { + return(pcl_configure_clocks_rcsys(param)); + } + else if(PCL_MC_RC120M == param->main_clk_src) + { + return(pcl_configure_clocks_rc120m(param)); + } + else if(PCL_MC_OSC0 == param->main_clk_src) + { + return(pcl_configure_clocks_osc0(param)); + } + else // PCL_MC_DFLL0 == param->main_clk_src + { + return(pcl_configure_clocks_dfll0(param)); + } +} + +static long int pcl_configure_synchronous_clocks(pm_clk_src_t main_clk_src, unsigned long main_clock_freq_hz, pcl_freq_param_t *param) +{ + //# + //# Set the Synchronous clock division ratio for each clock domain + //# + pm_set_all_cksel(main_clock_freq_hz, param->cpu_f, param->pba_f, param->pbb_f); + + //# + //# Set the Flash wait state and the speed read mode (depending on the target CPU frequency). + //# +#if UC3L + flashcdw_set_flash_waitstate_and_readmode(param->cpu_f); +#elif UC3C + flashc_set_flash_waitstate_and_readmode(param->cpu_f); +#endif + + + //# + //# Switch the main clock source to the selected clock. + //# + pm_set_mclk_source(main_clk_src); + + return PASS; +} + +#endif // UC3L device-specific implementation + +//! UC3C Device-specific implementation +#if UC3C +static long int pcl_configure_clocks_uc3c(pcl_freq_param_t *param) +{ + #define PM_MAX_MUL ((1 << AVR32_SCIF_PLLMUL_SIZE) - 1) + #define AVR32_PM_PBA_MAX_FREQ 66000000 + #define AVR32_PM_PLL_VCO_RANGE0_MAX_FREQ 240000000 + #define AVR32_PM_PLL_VCO_RANGE0_MIN_FREQ 160000000 + + // Implementation for UC3C parts. + // Supported frequencies: + // Fosc0 mul div PLL div2_en cpu_f pba_f Comment + // 12 15 1 192 1 12 12 + // 12 9 3 40 1 20 20 PLL out of spec + // 12 15 1 192 1 24 12 + // 12 9 1 120 1 30 15 + // 12 9 3 40 0 40 20 PLL out of spec + // 12 15 1 192 1 48 12 + // 12 15 1 192 1 48 24 + // 12 8 1 108 1 54 27 + // 12 9 1 120 1 60 15 + // 12 9 1 120 1 60 30 + // 12 10 1 132 1 66 16.5 + // + unsigned long in_cpu_f = param->cpu_f; + unsigned long in_osc0_f = param->osc0_f; + unsigned long mul, div, div2_en = 0, div2_cpu = 0, div2_pba = 0; + unsigned long pll_freq, rest; + Bool b_div2_pba, b_div2_cpu; + + // Configure OSC0 in crystal mode, external crystal with a FOSC0 Hz frequency. + scif_configure_osc_crystalmode(SCIF_OSC0, in_osc0_f); + // Enable the OSC0 + scif_enable_osc(SCIF_OSC0, param->osc0_startup, true); + // Set the main clock source as being OSC0. + pm_set_mclk_source(PM_CLK_SRC_OSC0); + + // Start with CPU freq config + if (in_cpu_f == in_osc0_f) + { + param->cpu_f = in_osc0_f; + param->pba_f = in_osc0_f; + return PASS; + } + else if (in_cpu_f < in_osc0_f) + { + // TBD + } + + rest = in_cpu_f % in_osc0_f; + + for (div = 1; div < 32; div++) + { + if ((div * rest) % in_osc0_f == 0) + break; + } + if (div == 32) + return FAIL; + + mul = (in_cpu_f * div) / in_osc0_f; + + if (mul > PM_MAX_MUL) + return FAIL; + + // export 2power from PLL div to div2_cpu + while (!(div % 2)) + { + div /= 2; + div2_cpu++; + } + + // Here we know the mul and div parameter of the PLL config. + // . Check out if the PLL has a valid in_cpu_f. + // . Try to have for the PLL frequency (VCO output) the highest possible value + // to reduce jitter. + while (in_osc0_f * 2 * mul / div < AVR32_PM_PLL_VCO_RANGE0_MAX_FREQ) + { + if (2 * mul > PM_MAX_MUL) + break; + mul *= 2; + div2_cpu++; + } + + if (div2_cpu != 0) + { + div2_cpu--; + div2_en = 1; + } + + pll_freq = in_osc0_f * mul / (div * (1 << div2_en)); + + // Update real CPU Frequency + param->cpu_f = pll_freq / (1 << div2_cpu); + mul--; + + scif_pll_opt_t opt; + + opt.osc = SCIF_OSC0, // Sel Osc0 or Osc1 + opt.lockcount = 16, // lockcount in main clock for the PLL wait lock + opt.div = div, // DIV=1 in the formula + opt.mul = mul, // MUL=7 in the formula + opt.pll_div2 = div2_en, // pll_div2 Divide the PLL output frequency by 2 (this settings does not change the FVCO value) + opt.pll_wbwdisable = 0, //pll_wbwdisable 1 Disable the Wide-Bandith Mode (Wide-Bandwith mode allow a faster startup time and out-of-lock time). 0 to enable the Wide-Bandith Mode. + opt.pll_freq = (pll_freq < AVR32_PM_PLL_VCO_RANGE0_MIN_FREQ) ? 1 : 0, // Set to 1 for VCO frequency range 80-180MHz, set to 0 for VCO frequency range 160-240Mhz. + + + scif_pll_setup(SCIF_PLL0, opt); // lockcount in main clock for the PLL wait lock + + /* Enable PLL0 */ + scif_pll_enable(SCIF_PLL0); + + /* Wait for PLL0 locked */ + scif_wait_for_pll_locked(SCIF_PLL0) ; + + rest = pll_freq; + while (rest > AVR32_PM_PBA_MAX_FREQ || + rest != param->pba_f) + { + div2_pba++; + rest = pll_freq / (1 << div2_pba); + if (rest < param->pba_f) + break; + } + + // Update real PBA Frequency + param->pba_f = pll_freq / (1 << div2_pba); + + + if (div2_cpu) + { + b_div2_cpu = TRUE; + div2_cpu--; + } + else + b_div2_cpu = FALSE; + + if (div2_pba) + { + b_div2_pba = TRUE; + div2_pba--; + } + else + b_div2_pba = FALSE; + + if (b_div2_cpu == TRUE ) + { + pm_set_clk_domain_div(PM_CLK_DOMAIN_0, (pm_divratio_t) div2_cpu); // CPU + pm_set_clk_domain_div(PM_CLK_DOMAIN_1, (pm_divratio_t) div2_cpu); // HSB + pm_set_clk_domain_div(PM_CLK_DOMAIN_3, (pm_divratio_t) div2_cpu); // PBB + } + if (b_div2_pba == TRUE ) + { + pm_set_clk_domain_div(PM_CLK_DOMAIN_2, (pm_divratio_t) div2_pba); // PBA + pm_set_clk_domain_div(PM_CLK_DOMAIN_4, (pm_divratio_t) div2_pba); // PBC + } + + // Set Flashc Wait State + flashc_set_flash_waitstate_and_readmode(param->cpu_f); + + // Set the main clock source as being PLL0. + pm_set_mclk_source(PM_CLK_SRC_PLL0); + + return PASS; +} +#endif // UC3C device-specific implementation + +long int pcl_switch_to_osc(pcl_osc_t osc, unsigned int fcrystal, unsigned int startup) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + if(PCL_OSC0 == osc) + { + // Configure OSC0 in crystal mode, external crystal with a FOSC0 Hz frequency, + // enable the OSC0, set the main clock source as being OSC0. + pm_switch_to_osc0(&AVR32_PM, fcrystal, startup); + } + else + { + return PCL_NOT_SUPPORTED; + } +#else +// Implementation for UC3C, UC3L parts. + #if AVR32_PM_VERSION_RESETVALUE < 0x400 + return PCL_NOT_SUPPORTED; + #else + if(PCL_OSC0 == osc) + { + // Configure OSC0 in crystal mode, external crystal with a fcrystal Hz frequency. + scif_configure_osc_crystalmode(SCIF_OSC0, fcrystal); + // Enable the OSC0 + scif_enable_osc(SCIF_OSC0, startup, true); + // Set the Flash wait state and the speed read mode (depending on the target CPU frequency). +#if UC3L + flashcdw_set_flash_waitstate_and_readmode(fcrystal); +#elif UC3C + flashc_set_flash_waitstate_and_readmode(fcrystal); +#endif + // Set the main clock source as being OSC0. + pm_set_mclk_source(PM_CLK_SRC_OSC0); + } + else + { + return PCL_NOT_SUPPORTED; + } + #endif +#endif + return PASS; +} + +long int pcl_configure_usb_clock(void) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + pm_configure_usb_clock(); + return PASS; +#else + #ifdef AVR32_PM_410_H_INCLUDED + const scif_pll_opt_t opt = { + .osc = SCIF_OSC0, // Sel Osc0 or Osc1 + .lockcount = 16, // lockcount in main clock for the PLL wait lock + .div = 1, // DIV=1 in the formula + .mul = 5, // MUL=7 in the formula + .pll_div2 = 1, // pll_div2 Divide the PLL output frequency by 2 (this settings does not change the FVCO value) + .pll_wbwdisable = 0, //pll_wbwdisable 1 Disable the Wide-Bandith Mode (Wide-Bandwith mode allow a faster startup time and out-of-lock time). 0 to enable the Wide-Bandith Mode. + .pll_freq = 1, // Set to 1 for VCO frequency range 80-180MHz, set to 0 for VCO frequency range 160-240Mhz. + }; + + /* Setup PLL1 on Osc0, mul=7 ,no divisor, lockcount=16, ie. 16Mhzx6 = 96MHz output */ + scif_pll_setup(SCIF_PLL1, opt); // lockcount in main clock for the PLL wait lock + + /* Enable PLL1 */ + scif_pll_enable(SCIF_PLL1); + + /* Wait for PLL1 locked */ + scif_wait_for_pll_locked(SCIF_PLL1) ; + + // Implementation for UC3C parts. + // Setup the generic clock for USB + scif_gc_setup(AVR32_SCIF_GCLK_USB, + SCIF_GCCTRL_PLL1, + AVR32_SCIF_GC_NO_DIV_CLOCK, + 0); + // Now enable the generic clock + scif_gc_enable(AVR32_SCIF_GCLK_USB); + return PASS; + #else + return PCL_NOT_SUPPORTED; + #endif +#endif +} + + +#if UC3L +#else +void pcl_write_gplp(unsigned long gplp, unsigned long value) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + pm_write_gplp(&AVR32_PM,gplp,value); +#else + scif_write_gplp(gplp,value); +#endif +} + +unsigned long pcl_read_gplp(unsigned long gplp) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + return pm_read_gplp(&AVR32_PM,gplp); +#else + return scif_read_gplp(gplp); +#endif +} +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h new file mode 100644 index 000000000..28c5888da --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h @@ -0,0 +1,379 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief High-level library abstracting features such as oscillators/pll/dfll + * configuration, clock configuration, System-sensible parameters + * configuration, buses clocks configuration, sleep mode, reset. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _POWER_CLOCKS_LIB_H_ +#define _POWER_CLOCKS_LIB_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include <avr32/io.h> +#include "compiler.h" + +#ifndef AVR32_PM_VERSION_RESETVALUE +// Support for UC3A, UC3A3, UC3B parts. + #include "pm.h" +#else +//! Device-specific data +#if UC3L + #include "pm_uc3l.h" + #include "scif_uc3l.h" + #include "flashcdw.h" +#elif UC3C + #include "pm_uc3c.h" + #include "scif_uc3c.h" + #include "flashc.h" +#endif +#endif + +/*! \name Clocks Management + */ +//! @{ + +//! The different oscillators +typedef enum +{ + PCL_OSC0 = 0, + PCL_OSC1 = 1 +} pcl_osc_t; + +//! The different DFLLs +typedef enum +{ + PCL_DFLL0 = 0, + PCL_DFLL1 = 1 +} pcl_dfll_t; + +//! Possible Main Clock Sources +typedef enum +{ + PCL_MC_RCSYS, // Default main clock source, supported by all (aka Slow Clock) + PCL_MC_OSC0, // Supported by all + PCL_MC_OSC1, // Supported by UC3C only + PCL_MC_OSC0_PLL0, // Supported by UC3A, UC3B, UC3A3, UC3C (the main clock source is PLL0 with OSC0 as reference) + PCL_MC_OSC1_PLL0, // Supported by UC3A, UC3B, UC3A3, UC3C (the main clock source is PLL0 with OSC1 as reference) + PCL_MC_OSC0_PLL1, // Supported by UC3C (the main clock source is PLL1 with OSC0 as reference) + PCL_MC_OSC1_PLL1, // Supported by UC3C (the main clock source is PLL1 with OSC1 as reference) + PCL_MC_DFLL0, // Supported by UC3L + PCL_MC_DFLL1, // Not supported yet + PCL_MC_RC120M, // Supported by UC3L, UC3C + PCL_MC_RC8M, // Supported by UC3C + PCL_MC_CRIPOSC // Supported by UC3C +} pcl_mainclk_t; + +//! Input and output parameters to configure clocks with pcl_configure_clocks(). +// NOTE: regarding the frequency settings, always abide by the datasheet rules and min & max supported frequencies. +#ifndef AVR32_PM_VERSION_RESETVALUE +// Support for UC3A, UC3A3, UC3B parts. +#define pcl_freq_param_t pm_freq_param_t // See pm.h +#else +// Support for UC3C, UC3L parts. +typedef struct +{ + //! Main clock source selection (input argument). + pcl_mainclk_t main_clk_src; + + //! Target CPU frequency (input/output argument). + unsigned long cpu_f; + + //! Target PBA frequency (input/output argument). + unsigned long pba_f; + + //! Target PBB frequency (input/output argument). + unsigned long pbb_f; + + //! Target PBC frequency (input/output argument). + unsigned long pbc_f; + + //! Oscillator 0's external crystal(or external clock) frequency (board dependant) (input argument). + unsigned long osc0_f; + + //! Oscillator 0's external crystal(or external clock) startup time: AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC (input argument). + unsigned long osc0_startup; + + //! DFLL target frequency (input/output argument) (NOTE: the bigger, the most stable the frequency) + unsigned long dfll_f; + + //! Other parameters that might be necessary depending on the device (implementation-dependent). + // For the UC3L DFLL setup, this parameter should be pointing to a structure of + // type (scif_gclk_opt_t *). + void *pextra_params; +} pcl_freq_param_t; +#endif + +//! Define "not supported" for the lib. +#define PCL_NOT_SUPPORTED (-10000) + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - main_clk_src is the id of the main clock source to use, + * - cpu_f and pba_f and pbb_f are the wanted frequencies, + * - osc0_f is the oscillator 0's external crystal (or external clock) on-board frequency (e.g. FOSC0), + * - osc0_startup is the oscillator 0's external crystal (or external clock) startup time (e.g. OSC0_STARTUP). + * - dfll_f is the target DFLL frequency to set-up if main_clk_src is the dfll. + * + * The CPU, HSB and PBA frequencies programmed after configuration are stored back into cpu_f and pba_f. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks() and modify it to use + * preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the RCSYS osc as main source clock. + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies + * + * Supported main clock sources: PCL_MC_RCSYS + * + * Supported synchronous clocks frequencies: + * 115200Hz, 57600Hz, 28800Hz, 14400Hz, 7200Hz, 3600Hz, 1800Hz, 900Hz, 450Hz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_rcsys() and modify it to use + * preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_rcsys(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the RC120M osc as main source clock. + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies + * + * Supported main clock sources: PCL_MC_RC120M + * + * Supported synchronous clocks frequencies: + * 30MHz, 15MHz, 7.5MHz, 3.75MHz, 1.875MHz, 937.5kHz, 468.75kHz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_rc120m() and modify it to + * use preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_rc120m(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the OSC0 osc as main source clock + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies, + * - osc0_f is the oscillator 0's external crystal (or external clock) on-board frequency (e.g. FOSC0), + * - osc0_startup is the oscillator 0's external crystal (or external clock) startup time (e.g. OSC0_STARTUP). + * + * Supported main clock sources: PCL_MC_OSC0 + * + * Supported synchronous clocks frequencies: + * (these obviously depend on the OSC0 frequency; we'll take 16MHz as an example) + * 16MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz, 62.5kHz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_osc0() and modify it to use + * preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_osc0(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the DFLL0 as main source clock + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies, + * - dfll_f is the target DFLL frequency to set-up + * + * \note: when the DFLL0 is to be used as main source clock for the synchronous clocks, + * the target frequency of the DFLL should be chosen to be as high as possible + * within the specification range (for stability reasons); the target cpu and pbx + * frequencies will then be reached by appropriate division ratio. + * + * Supported main clock sources: PCL_MC_DFLL0 + * + * Supported synchronous clocks frequencies: + * (these obviously depend on the DFLL target frequency; we'll take 100MHz as an example) + * 50MHz, 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1562.5kHz, 781.25kHz, 390.625kHz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_dfll0() and modify it to + * use preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_dfll0(pcl_freq_param_t *param); + +/*! \brief Switch the main clock source to Osc0 configured in crystal mode + * + * \param osc The oscillator to enable and switch to. + * \param fcrystal Oscillator external crystal frequency (Hz) + * \param startup Oscillator startup time. + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long int pcl_switch_to_osc(pcl_osc_t osc, unsigned int fcrystal, unsigned int startup); + +/*! \brief Enable the clock of a module. + * + * \param module The module to clock (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks" + * or look in the module section). + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. +#define pcl_enable_module(module) pm_enable_module(&AVR32_PM, module) +#else +// Implementation for UC3C, UC3L parts. +#define pcl_enable_module(module) pm_enable_module(module) +#endif + +/*! \brief Disable the clock of a module. + * + * \param module The module to shut down (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks" + * or look in the module section). + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. +#define pcl_disable_module(module) pm_disable_module(&AVR32_PM, module) +#else +// Implementation for UC3C, UC3L parts. +#define pcl_disable_module(module) pm_disable_module(module) +#endif + +/*! \brief Configure the USB Clock + * + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long int pcl_configure_usb_clock(void); + +//! @} + +/*! \name Power Management + */ +//! @{ +/*! + * \brief Read the content of the GPLP registers + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * + * \return The content of the chosen GPLP register. + */ +extern unsigned long pcl_read_gplp(unsigned long gplp); + + +/*! + * \brief Write into the GPLP registers + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * \param value Value to write + */ +extern void pcl_write_gplp(unsigned long gplp, unsigned long value); + +//! @} + +#ifdef __cplusplus +} +#endif + +#endif // _POWER_CLOCKS_LIB_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.c new file mode 100644 index 000000000..4cbae0f70 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.c @@ -0,0 +1,213 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief RTC driver for AVR32 UC3. + * + * AVR32 Real Time Counter driver module. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an RTC and a PM module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "compiler.h" +#include "pm.h" +#include "rtc.h" + + +int rtc_is_busy(volatile avr32_rtc_t *rtc) +{ + return (rtc->ctrl & AVR32_RTC_CTRL_BUSY_MASK) != 0; +} + + +int rtc_init(volatile avr32_rtc_t *rtc, unsigned char osc_type, unsigned char psel) +{ + // If exit, it means that the configuration has not been set correctly + if (osc_type > (1 << AVR32_RTC_CTRL_CLK32_SIZE) - 1 || + psel > (1 << AVR32_RTC_CTRL_PSEL_SIZE) - 1) + return 0; + + // If we use the 32-kHz oscillator, we have to enable it first + if (osc_type == RTC_OSC_32KHZ) + { + // Select the 32-kHz oscillator crystal + pm_enable_osc32_crystal(&AVR32_PM); + // Enable the 32-kHz clock + pm_enable_clk32_no_wait(&AVR32_PM, AVR32_PM_OSCCTRL32_STARTUP_0_RCOSC); + } + + // Wait until the rtc CTRL register is up-to-date + while (rtc_is_busy(rtc)); + + // Set the new RTC configuration + rtc->ctrl = osc_type << AVR32_RTC_CTRL_CLK32_OFFSET | + psel << AVR32_RTC_CTRL_PSEL_OFFSET | + AVR32_RTC_CTRL_CLKEN_MASK; + + // Wait until write is done + while (rtc_is_busy(rtc)); + + // Set the counter value to 0 + rtc_set_value(rtc, 0x00000000); + // Set the top value to 0xFFFFFFFF + rtc_set_top_value(rtc, 0xFFFFFFFF); + + return 1; +} + + +void rtc_set_value(volatile avr32_rtc_t *rtc, unsigned long val) +{ + // Wait until we can write into the VAL register + while (rtc_is_busy(rtc)); + // Set the new val value + rtc->val = val; + // Wait until write is done + while (rtc_is_busy(rtc)); +} + + +unsigned long rtc_get_value(volatile avr32_rtc_t *rtc) +{ + return rtc->val; +} + + +void rtc_enable_wake_up(volatile avr32_rtc_t *rtc) +{ + // Wait until the rtc CTRL register is up-to-date + while (rtc_is_busy(rtc)); + // Enable the wake up of the RTC + rtc->ctrl |= AVR32_RTC_CTRL_WAKE_EN_MASK; + // Wait until write is done + while (rtc_is_busy(rtc)); +} + + +void rtc_disable_wake_up(volatile avr32_rtc_t *rtc) +{ + // Wait until the rtc CTRL register is up-to-date + while (rtc_is_busy(rtc)); + // Disable the wake up of the RTC + rtc->ctrl &= ~AVR32_RTC_CTRL_WAKE_EN_MASK; + // Wait until write is done + while (rtc_is_busy(rtc)); +} + + +void rtc_enable(volatile avr32_rtc_t *rtc) +{ + // Wait until the rtc CTRL register is up-to-date + while (rtc_is_busy(rtc)); + // Enable the RTC + rtc->ctrl |= AVR32_RTC_CTRL_EN_MASK; + // Wait until write is done + while (rtc_is_busy(rtc)); +} + + +void rtc_disable(volatile avr32_rtc_t *rtc) +{ + // Wait until the rtc CTRL register is up-to-date + while (rtc_is_busy(rtc)); + // Disable the RTC + rtc->ctrl &= ~AVR32_RTC_CTRL_EN_MASK; + // Wait until write is done + while (rtc_is_busy(rtc)); +} + + +void rtc_enable_interrupt(volatile avr32_rtc_t *rtc) +{ + rtc->ier = AVR32_RTC_IER_TOPI_MASK; +} + + +void rtc_disable_interrupt(volatile avr32_rtc_t *rtc) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + rtc->idr = AVR32_RTC_IDR_TOPI_MASK; + rtc->imr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void rtc_clear_interrupt(volatile avr32_rtc_t *rtc) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + rtc->icr = AVR32_RTC_ICR_TOPI_MASK; + rtc->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void rtc_set_top_value(volatile avr32_rtc_t *rtc, unsigned long top) +{ + // Wait until we can write into the VAL register + while (rtc_is_busy(rtc)); + // Set the new val value + rtc->top = top; + // Wait until write is done + while (rtc_is_busy(rtc)); +} + + +unsigned long rtc_get_top_value(volatile avr32_rtc_t *rtc) +{ + return rtc->top; +} + + +int rtc_interrupt_enabled(volatile avr32_rtc_t *rtc) +{ + return (rtc->imr & AVR32_RTC_IMR_TOPI_MASK) != 0; +} + + +int rtc_is_interrupt(volatile avr32_rtc_t *rtc) +{ + return (rtc->isr & AVR32_RTC_ISR_TOPI_MASK) != 0; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.h new file mode 100644 index 000000000..5702c2959 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/RTC/rtc.h @@ -0,0 +1,191 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief RTC driver for AVR32 UC3. + * + * AVR32 Real Time Counter driver module. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an RTC and a PM module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _RTC_H_ +#define _RTC_H_ + +#include "compiler.h" +#include <avr32/io.h> + + +/*! \name Oscillator Types + */ +//! @{ +#define RTC_OSC_32KHZ 1 +#define RTC_OSC_RC 0 +//! @} + +/*! \name Predefined PSEL Values + */ +//! @{ + +//! The PSEL value to set the RTC source clock (after the prescaler) to 1 Hz, +//! when using an external 32-kHz crystal. +#define RTC_PSEL_32KHZ_1HZ 14 + +//! The PSEL value to set the RTC source clock (after the prescaler) to 1.76 Hz, +//! when using the internal RC oscillator (~ 115 kHz). +#define RTC_PSEL_RC_1_76HZ 15 + +//! @} + + +/*! + * \brief This function will initialise the RTC module. + * If you use the 32 KHz oscillator, it will enable this module. + * This function also set the top value of the RTC to 0xFFFFFFFF + * and the value to 0. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \param osc_type The oscillator you want to use. If you need a better + * accuracy, use the 32 KHz oscillator (i.e. RTC_OSC_32KHZ). + * \param psel The preselector value for the corresponding oscillator (4-bits). + * To obtain this value, you can use this formula: + * psel = log(Fosc/Frtc)/log(2)-1, where Fosc is the frequency of the + * oscillator you are using (32 KHz or 115 KHz) and Frtc the frequency + * desired. + * \return 1 if the initialisation succeds otherwize it will return 0. + */ +extern int rtc_init(volatile avr32_rtc_t *rtc, unsigned char osc_type, unsigned char psel); + +/*! + * \brief Enable the RTC. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_enable(volatile avr32_rtc_t *rtc); + +/*! + * \brief Disable the RTC. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_disable(volatile avr32_rtc_t *rtc); + +/*! + * \brief Enable the wake up feature of the RTC. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_enable_wake_up(volatile avr32_rtc_t *rtc); + +/*! + * \brief Disable the wake up feature of the RTC. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_disable_wake_up(volatile avr32_rtc_t *rtc); + +/*! + * \brief Enable the interrupt feature of the RTC. + * An interrupt is raised when the value of the RTC + * is equal to its top value. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_enable_interrupt(volatile avr32_rtc_t *rtc); + +/*! + * \brief Disable the interrupt feature of the RTC. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_disable_interrupt(volatile avr32_rtc_t *rtc); + +/*! + * \brief Clear the interrupt flag. + * Call this function once you handled the interrupt. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + */ +extern void rtc_clear_interrupt(volatile avr32_rtc_t *rtc); + +/*! + * \brief Get the status of interrupts. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \return 1 if the interrupts are enabled otherwize it returns 0. + */ +extern int rtc_interrupt_enabled(volatile avr32_rtc_t *rtc); + +/*! + * \brief Check if an interrupt is raised. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \return 1 if an interrupt is currently raised otherwize it returns 0. + */ +extern int rtc_is_interrupt(volatile avr32_rtc_t *rtc); + +/*! + * \brief This function sets the RTC current top value. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \param top The top value you want to store. + */ +extern void rtc_set_top_value(volatile avr32_rtc_t *rtc, unsigned long top); + +/*! + * \brief This function returns the RTC current top value. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \return The RTC current top value. + */ +extern unsigned long rtc_get_top_value(volatile avr32_rtc_t *rtc); + +/*! + * \brief This function checks if the RTC is busy or not. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \return 1 if the RTC is busy otherwize it will return 0. + */ +extern int rtc_is_busy(volatile avr32_rtc_t *rtc); + +/*! + * \brief This function sets the RTC current value. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \param val The value you want to store. + */ +extern void rtc_set_value(volatile avr32_rtc_t *rtc, unsigned long val); + +/*! + * \brief This function returns the RTC current value. + * \param rtc Base address of the RTC (i.e. &AVR32_RTC). + * \return The RTC current value. + */ +extern unsigned long rtc_get_value(volatile avr32_rtc_t *rtc); + + +#endif // _RTC_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c new file mode 100644 index 000000000..d2b7ccd94 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c @@ -0,0 +1,443 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SPI driver for AVR32 UC3. + * + * This file defines a useful set of functions for the SPI interface on AVR32 + * devices. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "spi.h" + +#ifdef FREERTOS_USED + +#include "FreeRTOS.h" +#include "semphr.h" + +#endif + + +/*! \name SPI Writable Bit-Field Registers + */ +//! @{ + +typedef union +{ + unsigned long cr; + avr32_spi_cr_t CR; +} u_avr32_spi_cr_t; + +typedef union +{ + unsigned long mr; + avr32_spi_mr_t MR; +} u_avr32_spi_mr_t; + +typedef union +{ + unsigned long tdr; + avr32_spi_tdr_t TDR; +} u_avr32_spi_tdr_t; + +typedef union +{ + unsigned long ier; + avr32_spi_ier_t IER; +} u_avr32_spi_ier_t; + +typedef union +{ + unsigned long idr; + avr32_spi_idr_t IDR; +} u_avr32_spi_idr_t; + +typedef union +{ + unsigned long csr; + avr32_spi_csr0_t CSR; +} u_avr32_spi_csr_t; + +//! @} + + +#ifdef FREERTOS_USED + +//! The SPI mutex. +static xSemaphoreHandle xSPIMutex; + +#endif + + +/*! \brief Calculates the baudrate divider. + * + * \param options Pointer to a structure containing initialization options for + * an SPI channel. + * \param pba_hz SPI module input clock frequency (PBA clock, Hz). + * + * \return Divider or error code. + * \retval >=0 Success. + * \retval <0 Error. + */ +static int getBaudDiv(const spi_options_t *options, unsigned int pba_hz) +{ + int baudDiv = (pba_hz + options->baudrate / 2) / options->baudrate; + + if (baudDiv <= 0 || baudDiv > 255) { + return -1; + } + + return baudDiv; +} + + +void spi_reset(volatile avr32_spi_t *spi) +{ + spi->cr = AVR32_SPI_CR_SWRST_MASK; +} + + +spi_status_t spi_initSlave(volatile avr32_spi_t *spi, + unsigned char bits, + unsigned char spi_mode) +{ + if (spi_mode > 3 || + bits < 8 || bits > 16) { + return SPI_ERROR_ARGUMENT; + } + + // Reset. + spi->cr = AVR32_SPI_CR_SWRST_MASK; + + // Will use CSR0 offsets; these are the same for CSR0 to CSR3. + spi->csr0 = ((spi_mode >> 1) << AVR32_SPI_CSR0_CPOL_OFFSET) | + (((spi_mode & 0x1) ^ 0x1) << AVR32_SPI_CSR0_NCPHA_OFFSET) | + ((bits - 8) << AVR32_SPI_CSR0_BITS_OFFSET); + + return SPI_OK; +} + + +spi_status_t spi_initTest(volatile avr32_spi_t *spi) +{ + // Reset. + spi->cr = AVR32_SPI_CR_SWRST_MASK; + spi->mr |= AVR32_SPI_MR_MSTR_MASK | // Master Mode. + AVR32_SPI_MR_LLB_MASK; // Local Loopback. + + return SPI_OK; +} + + +spi_status_t spi_initMaster(volatile avr32_spi_t *spi, const spi_options_t *options) +{ + u_avr32_spi_mr_t u_avr32_spi_mr; + + if (options->modfdis > 1) { + return SPI_ERROR_ARGUMENT; + } + + // Reset. + spi->cr = AVR32_SPI_CR_SWRST_MASK; + + // Master Mode. + u_avr32_spi_mr.mr = spi->mr; + u_avr32_spi_mr.MR.mstr = 1; + u_avr32_spi_mr.MR.modfdis = options->modfdis; + u_avr32_spi_mr.MR.llb = 0; + u_avr32_spi_mr.MR.pcs = (1 << AVR32_SPI_MR_PCS_SIZE) - 1; + spi->mr = u_avr32_spi_mr.mr; + + return SPI_OK; +} + + +spi_status_t spi_selectionMode(volatile avr32_spi_t *spi, + unsigned char variable_ps, + unsigned char pcs_decode, + unsigned char delay) +{ + u_avr32_spi_mr_t u_avr32_spi_mr; + + if (variable_ps > 1 || + pcs_decode > 1) { + return SPI_ERROR_ARGUMENT; + } + + u_avr32_spi_mr.mr = spi->mr; + u_avr32_spi_mr.MR.ps = variable_ps; + u_avr32_spi_mr.MR.pcsdec = pcs_decode; + u_avr32_spi_mr.MR.dlybcs = delay; + spi->mr = u_avr32_spi_mr.mr; + + return SPI_OK; +} + + +spi_status_t spi_selectChip(volatile avr32_spi_t *spi, unsigned char chip) +{ +#ifdef FREERTOS_USED + while (pdFALSE == xSemaphoreTake(xSPIMutex, 20)); +#endif + + // Assert all lines; no peripheral is selected. + spi->mr |= AVR32_SPI_MR_PCS_MASK; + + if (spi->mr & AVR32_SPI_MR_PCSDEC_MASK) { + // The signal is decoded; allow up to 15 chips. + if (chip > 14) { + return SPI_ERROR_ARGUMENT; + } + + spi->mr &= ~AVR32_SPI_MR_PCS_MASK | (chip << AVR32_SPI_MR_PCS_OFFSET); + } else { + if (chip > 3) { + return SPI_ERROR_ARGUMENT; + } + + spi->mr &= ~(1 << (AVR32_SPI_MR_PCS_OFFSET + chip)); + } + + return SPI_OK; +} + + +spi_status_t spi_unselectChip(volatile avr32_spi_t *spi, unsigned char chip) +{ + unsigned int timeout = SPI_TIMEOUT; + + while (!(spi->sr & AVR32_SPI_SR_TXEMPTY_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + // Assert all lines; no peripheral is selected. + spi->mr |= AVR32_SPI_MR_PCS_MASK; + + // Last transfer, so deassert the current NPCS if CSAAT is set. + spi->cr = AVR32_SPI_CR_LASTXFER_MASK; + +#ifdef FREERTOS_USED + xSemaphoreGive(xSPIMutex); +#endif + + return SPI_OK; +} + + +spi_status_t spi_setupChipReg(volatile avr32_spi_t *spi, + const spi_options_t *options, + unsigned int pba_hz) +{ + u_avr32_spi_csr_t u_avr32_spi_csr; + + if (options->spi_mode > 3 || + options->stay_act > 1 || + options->bits < 8 || options->bits > 16) { + return SPI_ERROR_ARGUMENT; + } + + int baudDiv = getBaudDiv(options, pba_hz); + + if (baudDiv < 0) { + return SPI_ERROR_ARGUMENT; + } + + // Will use CSR0 offsets; these are the same for CSR0 to CSR3. + u_avr32_spi_csr.csr = 0; + u_avr32_spi_csr.CSR.cpol = options->spi_mode >> 1; + u_avr32_spi_csr.CSR.ncpha = (options->spi_mode & 0x1) ^ 0x1; + u_avr32_spi_csr.CSR.csaat = options->stay_act; + u_avr32_spi_csr.CSR.bits = options->bits - 8; + u_avr32_spi_csr.CSR.scbr = baudDiv; + u_avr32_spi_csr.CSR.dlybs = options->spck_delay; + u_avr32_spi_csr.CSR.dlybct = options->trans_delay; + + switch(options->reg) { + case 0: + spi->csr0 = u_avr32_spi_csr.csr; + break; + case 1: + spi->csr1 = u_avr32_spi_csr.csr; + break; + case 2: + spi->csr2 = u_avr32_spi_csr.csr; + break; + case 3: + spi->csr3 = u_avr32_spi_csr.csr; + break; + default: + return SPI_ERROR_ARGUMENT; + } + +#ifdef FREERTOS_USED + if (!xSPIMutex) + { + // Create the SPI mutex. + vSemaphoreCreateBinary(xSPIMutex); + if (!xSPIMutex) + { + while(1); + } + } +#endif + + return SPI_OK; +} + + +void spi_enable(volatile avr32_spi_t *spi) +{ + spi->cr = AVR32_SPI_CR_SPIEN_MASK; +} + + +void spi_disable(volatile avr32_spi_t *spi) +{ + spi->cr = AVR32_SPI_CR_SPIDIS_MASK; +} + + +int spi_is_enabled(volatile avr32_spi_t *spi) +{ + return (spi->sr & AVR32_SPI_SR_SPIENS_MASK) != 0; +} + + +inline unsigned char spi_writeRegisterEmptyCheck(volatile avr32_spi_t *spi) +{ + return ((spi->sr & AVR32_SPI_SR_TDRE_MASK) != 0); +} + + +inline spi_status_t spi_write(volatile avr32_spi_t *spi, unsigned short data) +{ + unsigned int timeout = SPI_TIMEOUT; + + while (!(spi->sr & AVR32_SPI_SR_TDRE_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + spi->tdr = data << AVR32_SPI_TDR_TD_OFFSET; + + return SPI_OK; +} + + +spi_status_t spi_variableSlaveWrite(volatile avr32_spi_t *spi, unsigned short data, + unsigned char pcs, unsigned char lastxfer) +{ + unsigned int timeout = SPI_TIMEOUT; + + if (pcs > 14 || lastxfer > 1) { + return SPI_ERROR_ARGUMENT; + } + + while (!(spi->sr & AVR32_SPI_SR_TDRE_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + spi->tdr = (data << AVR32_SPI_TDR_TD_OFFSET) | + (pcs << AVR32_SPI_TDR_PCS_OFFSET) | + (lastxfer << AVR32_SPI_TDR_LASTXFER_OFFSET); + + return SPI_OK; +} + + +inline unsigned char spi_writeEndCheck(volatile avr32_spi_t *spi) +{ + return ((spi->sr & AVR32_SPI_SR_TXEMPTY_MASK) != 0); +} + + +unsigned char spi_readRegisterFullCheck(volatile avr32_spi_t *spi) +{ + return ((spi->sr & AVR32_SPI_SR_RDRF_MASK) != 0); +} + + +inline spi_status_t spi_read(volatile avr32_spi_t *spi, unsigned short *data) +{ + unsigned int timeout = SPI_TIMEOUT; + + while ((spi->sr & (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) != + (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + *data = spi->rdr >> AVR32_SPI_RDR_RD_OFFSET; + + return SPI_OK; +} + + +unsigned char spi_getStatus(volatile avr32_spi_t *spi) +{ + spi_status_t ret = SPI_OK; + unsigned long sr = spi->sr; + + if (sr & AVR32_SPI_SR_OVRES_MASK) { + ret = SPI_ERROR_OVERRUN; + } + + if (sr & AVR32_SPI_SR_MODF_MASK) { + ret += SPI_ERROR_MODE_FAULT; + } + + if (ret == (SPI_ERROR_OVERRUN + SPI_ERROR_MODE_FAULT)) { + return SPI_ERROR_OVERRUN_AND_MODE_FAULT; + } + else if (ret > 0) { + return ret; + } else { + return SPI_OK; + } +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h new file mode 100644 index 000000000..6dcc92848 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h @@ -0,0 +1,342 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SPI driver for AVR32 UC3. + * + * This file defines a useful set of functions for the SPI interface on AVR32 + * devices. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _SPI_H_ +#define _SPI_H_ + +#include <avr32/io.h> + + +//! Time-out value (number of attempts). +#define SPI_TIMEOUT 10000 + + +//! Status codes used by the SPI driver. +typedef enum +{ + SPI_ERROR = -1, + SPI_OK = 0, + SPI_ERROR_TIMEOUT = 1, + SPI_ERROR_ARGUMENT, + SPI_ERROR_OVERRUN, + SPI_ERROR_MODE_FAULT, + SPI_ERROR_OVERRUN_AND_MODE_FAULT +} spi_status_t; + +//! Option structure for SPI channels. +typedef struct +{ + //! The SPI channel to set up. + unsigned char reg; + + //! Preferred baudrate for the SPI. + unsigned int baudrate; + + //! Number of bits in each character (8 to 16). + unsigned char bits; + + //! Delay before first clock pulse after selecting slave (in PBA clock periods). + unsigned char spck_delay; + + //! Delay between each transfer/character (in PBA clock periods). + unsigned char trans_delay; + + //! Sets this chip to stay active after last transfer to it. + unsigned char stay_act; + + //! Which SPI mode to use when transmitting. + unsigned char spi_mode; + + //! Disables the mode fault detection. + //! With this bit cleared, the SPI master mode will disable itself if another + //! master tries to address it. + unsigned char modfdis; +} spi_options_t; + + +/*! \brief Resets the SPI controller. + * + * \param spi Base address of the SPI instance. + */ +extern void spi_reset(volatile avr32_spi_t *spi); + +/*! \brief Initializes the SPI in slave mode. + * + * \param spi Base address of the SPI instance. + * \param bits Number of bits in each transmitted character (8 to 16). + * \param spi_mode Clock polarity and phase. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_initSlave(volatile avr32_spi_t *spi, + unsigned char bits, + unsigned char spi_mode); + +/*! \brief Sets up the SPI in a test mode where the transmitter is connected to + * the receiver (local loopback). + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval SPI_OK Success. + */ +extern spi_status_t spi_initTest(volatile avr32_spi_t *spi); + +/*! \brief Initializes the SPI in master mode. + * + * \param spi Base address of the SPI instance. + * \param options Pointer to a structure containing initialization options. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_initMaster(volatile avr32_spi_t *spi, const spi_options_t *options); + +/*! \brief Sets up how and when the slave chips are selected (master mode only). + * + * \param spi Base address of the SPI instance. + * \param variable_ps Target slave is selected in transfer register for every + * character to transmit. + * \param pcs_decode The four chip select lines are decoded externally. Values + * 0 to 14 can be given to \ref spi_selectChip. + * \param delay Delay in PBA periods between chip selects. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_selectionMode(volatile avr32_spi_t *spi, + unsigned char variable_ps, + unsigned char pcs_decode, + unsigned char delay); + +/*! \brief Selects slave chip. + * + * \param spi Base address of the SPI instance. + * \param chip Slave chip number (normal: 0 to 3, extarnally decoded signal: 0 + * to 14). + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_selectChip(volatile avr32_spi_t *spi, unsigned char chip); + +/*! \brief Unselects slave chip. + * + * \param spi Base address of the SPI instance. + * \param chip Slave chip number (normal: 0 to 3, extarnally decoded signal: 0 + * to 14). + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * + * \note Will block program execution until time-out occurs if last transmission + * is not complete. Invoke \ref spi_writeEndCheck beforehand if needed. + */ +extern spi_status_t spi_unselectChip(volatile avr32_spi_t *spi, unsigned char chip); + +/*! \brief Sets options for a specific slave chip. + * + * The baudrate field has to be written before transfer in master mode. Four + * similar registers exist, one for each slave. When using encoded slave + * addressing, reg=0 sets options for slaves 0 to 3, reg=1 for slaves 4 to 7 and + * so on. + * + * \param spi Base address of the SPI instance. + * \param options Pointer to a structure containing initialization options for + * an SPI channel. + * \param pba_hz SPI module input clock frequency (PBA clock, Hz). + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_setupChipReg(volatile avr32_spi_t *spi, + const spi_options_t *options, + unsigned int pba_hz); + +/*! \brief Enables the SPI. + * + * \param spi Base address of the SPI instance. + */ +extern void spi_enable(volatile avr32_spi_t *spi); + +/*! \brief Disables the SPI. + * + * Ensures that nothing is transferred while setting up buffers. + * + * \param spi Base address of the SPI instance. + * + * \warning This may cause data loss if used on a slave SPI. + */ +extern void spi_disable(volatile avr32_spi_t *spi); + +/*! \brief Tests if the SPI is enabled. + * + * \param spi Base address of the SPI instance. + * + * \return \c 1 if the SPI is enabled, otherwise \c 0. + */ +extern int spi_is_enabled(volatile avr32_spi_t *spi); + +/*! \brief Checks if there is no data in the transmit register. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval 1 No data in TDR. + * \retval 0 Some data in TDR. + */ +extern unsigned char spi_writeRegisterEmptyCheck(volatile avr32_spi_t *spi); + +/*! \brief Writes one data word in master fixed peripheral select mode or in + * slave mode. + * + * \param spi Base address of the SPI instance. + * \param data The data word to write. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * + * \note Will block program execution until time-out occurs if transmitter is + * busy and transmit buffer is full. Invoke + * \ref spi_writeRegisterEmptyCheck beforehand if needed. + * + * \note Once the data has been written to the transmit buffer, the end of + * transmission is not waited for. Invoke \ref spi_writeEndCheck if + * needed. + */ +extern spi_status_t spi_write(volatile avr32_spi_t *spi, unsigned short data); + +/*! \brief Selects a slave in master variable peripheral select mode and writes + * one data word to it. + * + * \param spi Base address of the SPI instance. + * \param data The data word to write. + * \param pcs Slave selector (bit 0 -> nCS line 0, bit 1 -> nCS line 1, + * etc.). + * \param lastxfer Boolean indicating whether this is the last data word + * transfer. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + * + * \note Will block program execution until time-out occurs if transmitter is + * busy and transmit buffer is full. Invoke + * \ref spi_writeRegisterEmptyCheck beforehand if needed. + * + * \note Once the data has been written to the transmit buffer, the end of + * transmission is not waited for. Invoke \ref spi_writeEndCheck if + * needed. + */ +extern spi_status_t spi_variableSlaveWrite(volatile avr32_spi_t *spi, + unsigned short data, + unsigned char pcs, + unsigned char lastxfer); + +/*! \brief Checks if all transmissions are complete. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval 1 All transmissions complete. + * \retval 0 Transmissions not complete. + */ +extern unsigned char spi_writeEndCheck(volatile avr32_spi_t *spi); + +/*! \brief Checks if there is data in the receive register. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval 1 Some data in RDR. + * \retval 0 No data in RDR. + */ +extern unsigned char spi_readRegisterFullCheck(volatile avr32_spi_t *spi); + +/*! \brief Reads one data word in master mode or in slave mode. + * + * \param spi Base address of the SPI instance. + * \param data Pointer to the location where to store the received data word. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * + * \note Will block program execution until time-out occurs if no data is + * received or last transmission is not complete. Invoke + * \ref spi_writeEndCheck or \ref spi_readRegisterFullCheck beforehand if + * needed. + */ +extern spi_status_t spi_read(volatile avr32_spi_t *spi, unsigned short *data); + +/*! \brief Gets status information from the SPI. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_OVERRUN Overrun error. + * \retval SPI_ERROR_MODE_FAULT Mode fault (SPI addressed as slave + * while in master mode). + * \retval SPI_ERROR_OVERRUN_AND_MODE_FAULT Overrun error and mode fault. + */ +extern unsigned char spi_getStatus(volatile avr32_spi_t *spi); + + +#endif // _SPI_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.c new file mode 100644 index 000000000..225642ede --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.c @@ -0,0 +1,314 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief TC driver for AVR32 UC3. + * + * AVR32 Timer/Counter driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a TC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "compiler.h" +#include "tc.h" + + +int tc_get_interrupt_settings(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + return tc->channel[channel].imr; +} + + +int tc_configure_interrupts(volatile avr32_tc_t *tc, unsigned int channel, const tc_interrupt_t *bitfield) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // Enable the appropriate interrupts. + tc->channel[channel].ier = bitfield->etrgs << AVR32_TC_ETRGS_OFFSET | + bitfield->ldrbs << AVR32_TC_LDRBS_OFFSET | + bitfield->ldras << AVR32_TC_LDRAS_OFFSET | + bitfield->cpcs << AVR32_TC_CPCS_OFFSET | + bitfield->cpbs << AVR32_TC_CPBS_OFFSET | + bitfield->cpas << AVR32_TC_CPAS_OFFSET | + bitfield->lovrs << AVR32_TC_LOVRS_OFFSET | + bitfield->covfs << AVR32_TC_COVFS_OFFSET; + + // Disable the appropriate interrupts. + if (global_interrupt_enabled) Disable_global_interrupt(); + tc->channel[channel].idr = (~bitfield->etrgs & 1) << AVR32_TC_ETRGS_OFFSET | + (~bitfield->ldrbs & 1) << AVR32_TC_LDRBS_OFFSET | + (~bitfield->ldras & 1) << AVR32_TC_LDRAS_OFFSET | + (~bitfield->cpcs & 1) << AVR32_TC_CPCS_OFFSET | + (~bitfield->cpbs & 1) << AVR32_TC_CPBS_OFFSET | + (~bitfield->cpas & 1) << AVR32_TC_CPAS_OFFSET | + (~bitfield->lovrs & 1) << AVR32_TC_LOVRS_OFFSET | + (~bitfield->covfs & 1) << AVR32_TC_COVFS_OFFSET; + tc->channel[channel].sr; + if (global_interrupt_enabled) Enable_global_interrupt(); + + return 0; +} + + +int tc_select_external_clock(volatile avr32_tc_t *tc, unsigned int channel, unsigned int ext_clk_sig_src) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS || ext_clk_sig_src >= 1 << AVR32_TC_BMR_TC0XC0S_SIZE) + return TC_INVALID_ARGUMENT; + + // Clear bit-field and set the correct behavior. + tc->bmr = (tc->bmr & ~(AVR32_TC_BMR_TC0XC0S_MASK << (channel * AVR32_TC_BMR_TC0XC0S_SIZE))) | + (ext_clk_sig_src << (channel * AVR32_TC_BMR_TC0XC0S_SIZE)); + + return 0; +} + + +int tc_init_capture(volatile avr32_tc_t *tc, const tc_capture_opt_t *opt) +{ + // Check for valid input. + if (opt->channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // MEASURE SIGNALS: Capture operating mode. + tc->channel[opt->channel].cmr = opt->ldrb << AVR32_TC_LDRB_OFFSET | + opt->ldra << AVR32_TC_LDRA_OFFSET | + 0 << AVR32_TC_WAVE_OFFSET | + opt->cpctrg << AVR32_TC_CPCTRG_OFFSET | + opt->abetrg << AVR32_TC_ABETRG_OFFSET | + opt->etrgedg << AVR32_TC_ETRGEDG_OFFSET| + opt->ldbdis << AVR32_TC_LDBDIS_OFFSET | + opt->ldbstop << AVR32_TC_LDBSTOP_OFFSET | + opt->burst << AVR32_TC_BURST_OFFSET | + opt->clki << AVR32_TC_CLKI_OFFSET | + opt->tcclks << AVR32_TC_TCCLKS_OFFSET; + + return 0; +} + + +int tc_init_waveform(volatile avr32_tc_t *tc, const tc_waveform_opt_t *opt) +{ + // Check for valid input. + if (opt->channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // GENERATE SIGNALS: Waveform operating mode. + tc->channel[opt->channel].cmr = opt->bswtrg << AVR32_TC_BSWTRG_OFFSET | + opt->beevt << AVR32_TC_BEEVT_OFFSET | + opt->bcpc << AVR32_TC_BCPC_OFFSET | + opt->bcpb << AVR32_TC_BCPB_OFFSET | + opt->aswtrg << AVR32_TC_ASWTRG_OFFSET | + opt->aeevt << AVR32_TC_AEEVT_OFFSET | + opt->acpc << AVR32_TC_ACPC_OFFSET | + opt->acpa << AVR32_TC_ACPA_OFFSET | + 1 << AVR32_TC_WAVE_OFFSET | + opt->wavsel << AVR32_TC_WAVSEL_OFFSET | + opt->enetrg << AVR32_TC_ENETRG_OFFSET | + opt->eevt << AVR32_TC_EEVT_OFFSET | + opt->eevtedg << AVR32_TC_EEVTEDG_OFFSET | + opt->cpcdis << AVR32_TC_CPCDIS_OFFSET | + opt->cpcstop << AVR32_TC_CPCSTOP_OFFSET | + opt->burst << AVR32_TC_BURST_OFFSET | + opt->clki << AVR32_TC_CLKI_OFFSET | + opt->tcclks << AVR32_TC_TCCLKS_OFFSET; + + return 0; +} + + +int tc_start(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // Enable, reset and start the selected timer/counter channel. + tc->channel[channel].ccr = AVR32_TC_SWTRG_MASK | AVR32_TC_CLKEN_MASK; + + return 0; +} + + +int tc_stop(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // Disable the selected timer/counter channel. + tc->channel[channel].ccr = AVR32_TC_CLKDIS_MASK; + + return 0; +} + + +int tc_software_trigger(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // Reset the selected timer/counter channel. + tc->channel[channel].ccr = AVR32_TC_SWTRG_MASK; + + return 0; +} + + +void tc_sync_trigger(volatile avr32_tc_t *tc) +{ + // Reset all channels of the selected timer/counter. + tc->bcr = AVR32_TC_BCR_SYNC_MASK; +} + + +void tc_sync_start(volatile avr32_tc_t *tc) +{ + unsigned int i; + // Enable the clock for each channel. + for(i=0; i<TC_NUMBER_OF_CHANNELS;i++) + tc->channel[i].ccr = AVR32_TC_CLKEN_MASK; + + // Reset all channels of the selected timer/counter. + tc->bcr = AVR32_TC_BCR_SYNC_MASK; +} + + +int tc_read_sr(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + return tc->channel[channel].sr; +} + + +int tc_read_tc(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + return Rd_bitfield(tc->channel[channel].cv, AVR32_TC_CV_MASK); +} + + +int tc_read_ra(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + return Rd_bitfield(tc->channel[channel].ra, AVR32_TC_RA_MASK); +} + + +int tc_read_rb(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + return Rd_bitfield(tc->channel[channel].rb, AVR32_TC_RB_MASK); +} + + +int tc_read_rc(volatile avr32_tc_t *tc, unsigned int channel) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + return Rd_bitfield(tc->channel[channel].rc, AVR32_TC_RC_MASK); +} + + +int tc_write_ra(volatile avr32_tc_t *tc, unsigned int channel, unsigned short value) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // This function is only available in WAVEFORM mode. + if (Tst_bits(tc->channel[channel].cmr, AVR32_TC_WAVE_MASK)) + Wr_bitfield(tc->channel[channel].ra, AVR32_TC_RA_MASK, value); + + return value; +} + + +int tc_write_rb(volatile avr32_tc_t *tc, unsigned int channel, unsigned short value) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // This function is only available in WAVEFORM mode. + if (Tst_bits(tc->channel[channel].cmr, AVR32_TC_WAVE_MASK)) + Wr_bitfield(tc->channel[channel].rb, AVR32_TC_RB_MASK, value); + + return value; +} + + +int tc_write_rc(volatile avr32_tc_t *tc, unsigned int channel, unsigned short value) +{ + // Check for valid input. + if (channel >= TC_NUMBER_OF_CHANNELS) + return TC_INVALID_ARGUMENT; + + // This function is only available in WAVEFORM mode. + if (Tst_bits(tc->channel[channel].cmr, AVR32_TC_WAVE_MASK)) + Wr_bitfield(tc->channel[channel].rc, AVR32_TC_RC_MASK, value); + + return value; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.h new file mode 100644 index 000000000..45ef4f25a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/TC/tc.h @@ -0,0 +1,591 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Timer/Counter driver for AVR32 UC3. + * + * AVR32 Timer/Counter driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a TC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _TC_H_ +#define _TC_H_ + +#include <avr32/io.h> + + +//! TC driver functions return value in case of invalid argument(s). +#define TC_INVALID_ARGUMENT (-1) + +//! Number of timer/counter channels. +#define TC_NUMBER_OF_CHANNELS (sizeof(((avr32_tc_t *)0)->channel) / sizeof(avr32_tc_channel_t)) + +/*! \name External Clock Signal 0 Selection + */ +//! @{ +#define TC_CH0_EXT_CLK0_SRC_TCLK0 AVR32_TC_TC0XC0S_TCLK0 +#define TC_CH0_EXT_CLK0_SRC_NO_CLK AVR32_TC_TC0XC0S_NO_CLK +#define TC_CH0_EXT_CLK0_SRC_TIOA1 AVR32_TC_TC0XC0S_TIOA1 +#define TC_CH0_EXT_CLK0_SRC_TIOA2 AVR32_TC_TC0XC0S_TIOA2 +//! @} + +/*! \name External Clock Signal 1 Selection + */ +//! @{ +#define TC_CH1_EXT_CLK1_SRC_TCLK1 AVR32_TC_TC1XC1S_TCLK1 +#define TC_CH1_EXT_CLK1_SRC_NO_CLK AVR32_TC_TC1XC1S_NO_CLK +#define TC_CH1_EXT_CLK1_SRC_TIOA0 AVR32_TC_TC1XC1S_TIOA0 +#define TC_CH1_EXT_CLK1_SRC_TIOA2 AVR32_TC_TC1XC1S_TIOA2 +//! @} + +/*! \name External Clock Signal 2 Selection + */ +//! @{ +#define TC_CH2_EXT_CLK2_SRC_TCLK2 AVR32_TC_TC2XC2S_TCLK2 +#define TC_CH2_EXT_CLK2_SRC_NO_CLK AVR32_TC_TC2XC2S_NO_CLK +#define TC_CH2_EXT_CLK2_SRC_TIOA0 AVR32_TC_TC2XC2S_TIOA0 +#define TC_CH2_EXT_CLK2_SRC_TIOA1 AVR32_TC_TC2XC2S_TIOA1 +//! @} + +/*! \name Event/Trigger Actions on Output + */ +//! @{ +#define TC_EVT_EFFECT_NOOP AVR32_TC_NONE +#define TC_EVT_EFFECT_SET AVR32_TC_SET +#define TC_EVT_EFFECT_CLEAR AVR32_TC_CLEAR +#define TC_EVT_EFFECT_TOGGLE AVR32_TC_TOGGLE +//! @} + +/*! \name RC Compare Trigger Enable + */ +//! @{ +#define TC_NO_TRIGGER_COMPARE_RC 0 +#define TC_TRIGGER_COMPARE_RC 1 +//! @} + +/*! \name Waveform Selection + */ +//! @{ +#define TC_WAVEFORM_SEL_UP_MODE AVR32_TC_WAVSEL_UP_NO_AUTO +#define TC_WAVEFORM_SEL_UP_MODE_RC_TRIGGER AVR32_TC_WAVSEL_UP_AUTO +#define TC_WAVEFORM_SEL_UPDOWN_MODE AVR32_TC_WAVSEL_UPDOWN_NO_AUTO +#define TC_WAVEFORM_SEL_UPDOWN_MODE_RC_TRIGGER AVR32_TC_WAVSEL_UPDOWN_AUTO +//! @} + +/*! \name TIOA or TIOB External Trigger Selection + */ +//! @{ +#define TC_EXT_TRIG_SEL_TIOA 1 +#define TC_EXT_TRIG_SEL_TIOB 0 +//! @} + +/*! \name External Event Selection + */ +//! @{ +#define TC_EXT_EVENT_SEL_TIOB_INPUT AVR32_TC_EEVT_TIOB_INPUT +#define TC_EXT_EVENT_SEL_XC0_OUTPUT AVR32_TC_EEVT_XC0_OUTPUT +#define TC_EXT_EVENT_SEL_XC1_OUTPUT AVR32_TC_EEVT_XC1_OUTPUT +#define TC_EXT_EVENT_SEL_XC2_OUTPUT AVR32_TC_EEVT_XC2_OUTPUT +//! @} + +/*! \name Edge Selection + */ +//! @{ +#define TC_SEL_NO_EDGE AVR32_TC_EEVTEDG_NO_EDGE +#define TC_SEL_RISING_EDGE AVR32_TC_EEVTEDG_POS_EDGE +#define TC_SEL_FALLING_EDGE AVR32_TC_EEVTEDG_NEG_EDGE +#define TC_SEL_EACH_EDGE AVR32_TC_EEVTEDG_BOTH_EDGES +//! @} + +/*! \name Burst Signal Selection + */ +//! @{ +#define TC_BURST_NOT_GATED AVR32_TC_BURST_NOT_GATED +#define TC_BURST_CLK_AND_XC0 AVR32_TC_BURST_CLK_AND_XC0 +#define TC_BURST_CLK_AND_XC1 AVR32_TC_BURST_CLK_AND_XC1 +#define TC_BURST_CLK_AND_XC2 AVR32_TC_BURST_CLK_AND_XC2 +//! @} + +/*! \name Clock Invert + */ +//! @{ +#define TC_CLOCK_RISING_EDGE 0 +#define TC_CLOCK_FALLING_EDGE 1 +//! @} + +/*! \name Clock Selection + */ +//! @{ +#define TC_CLOCK_SOURCE_TC1 AVR32_TC_TCCLKS_TIMER_CLOCK1 +#define TC_CLOCK_SOURCE_TC2 AVR32_TC_TCCLKS_TIMER_CLOCK2 +#define TC_CLOCK_SOURCE_TC3 AVR32_TC_TCCLKS_TIMER_CLOCK3 +#define TC_CLOCK_SOURCE_TC4 AVR32_TC_TCCLKS_TIMER_CLOCK4 +#define TC_CLOCK_SOURCE_TC5 AVR32_TC_TCCLKS_TIMER_CLOCK5 +#define TC_CLOCK_SOURCE_XC0 AVR32_TC_TCCLKS_XC0 +#define TC_CLOCK_SOURCE_XC1 AVR32_TC_TCCLKS_XC1 +#define TC_CLOCK_SOURCE_XC2 AVR32_TC_TCCLKS_XC2 +//! @} + + +//! Timer/counter interrupts. +typedef struct +{ + unsigned int :24; + + //! External trigger interrupt. + unsigned int etrgs : 1; + + //! RB load interrupt. + unsigned int ldrbs : 1; + + //! RA load interrupt. + unsigned int ldras : 1; + + //! RC compare interrupt. + unsigned int cpcs : 1; + + //! RB compare interrupt. + unsigned int cpbs : 1; + + //! RA compare interrupt. + unsigned int cpas : 1; + + //! Load overrun interrupt. + unsigned int lovrs : 1; + + //! Counter overflow interrupt. + unsigned int covfs : 1; +} tc_interrupt_t; + +//! Parameters when initializing a timer/counter in capture mode. +typedef struct +{ + //! Channel to initialize. + unsigned int channel ; + + unsigned int :12; + + //! RB loading selection:\n + //! - \ref TC_SEL_NO_EDGE;\n + //! - \ref TC_SEL_RISING_EDGE;\n + //! - \ref TC_SEL_FALLING_EDGE;\n + //! - \ref TC_SEL_EACH_EDGE. + unsigned int ldrb : 2; + + //! RA loading selection:\n + //! - \ref TC_SEL_NO_EDGE;\n + //! - \ref TC_SEL_RISING_EDGE;\n + //! - \ref TC_SEL_FALLING_EDGE;\n + //! - \ref TC_SEL_EACH_EDGE. + unsigned int ldra : 2; + + unsigned int : 1; + + //! RC compare trigger enable:\n + //! - \ref TC_NO_TRIGGER_COMPARE_RC;\n + //! - \ref TC_TRIGGER_COMPARE_RC. + unsigned int cpctrg : 1; + + unsigned int : 3; + + //! TIOA or TIOB external trigger selection:\n + //! - \ref TC_EXT_TRIG_SEL_TIOA;\n + //! - \ref TC_EXT_TRIG_SEL_TIOB. + unsigned int abetrg : 1; + + //! External trigger edge selection:\n + //! - \ref TC_SEL_NO_EDGE;\n + //! - \ref TC_SEL_RISING_EDGE;\n + //! - \ref TC_SEL_FALLING_EDGE;\n + //! - \ref TC_SEL_EACH_EDGE. + unsigned int etrgedg : 2; + + //! Counter clock disable with RB loading:\n + //! - \c FALSE;\n + //! - \c TRUE. + unsigned int ldbdis : 1; + + //! Counter clock stopped with RB loading:\n + //! - \c FALSE;\n + //! - \c TRUE. + unsigned int ldbstop : 1; + + //! Burst signal selection:\n + //! - \ref TC_BURST_NOT_GATED;\n + //! - \ref TC_BURST_CLK_AND_XC0;\n + //! - \ref TC_BURST_CLK_AND_XC1;\n + //! - \ref TC_BURST_CLK_AND_XC2. + unsigned int burst : 2; + + //! Clock invert:\n + //! - \ref TC_CLOCK_RISING_EDGE;\n + //! - \ref TC_CLOCK_FALLING_EDGE. + unsigned int clki : 1; + + //! Clock selection:\n + //! - \ref TC_CLOCK_SOURCE_TC1;\n + //! - \ref TC_CLOCK_SOURCE_TC2;\n + //! - \ref TC_CLOCK_SOURCE_TC3;\n + //! - \ref TC_CLOCK_SOURCE_TC4;\n + //! - \ref TC_CLOCK_SOURCE_TC5;\n + //! - \ref TC_CLOCK_SOURCE_XC0;\n + //! - \ref TC_CLOCK_SOURCE_XC1;\n + //! - \ref TC_CLOCK_SOURCE_XC2. + unsigned int tcclks : 3; +} tc_capture_opt_t; + +//! Parameters when initializing a timer/counter in waveform mode. +typedef struct +{ + //! Channel to initialize. + unsigned int channel ; + + //! Software trigger effect on TIOB:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int bswtrg : 2; + + //! External event effect on TIOB:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int beevt : 2; + + //! RC compare effect on TIOB:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int bcpc : 2; + + //! RB compare effect on TIOB:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int bcpb : 2; + + //! Software trigger effect on TIOA:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int aswtrg : 2; + + //! External event effect on TIOA:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int aeevt : 2; + + //! RC compare effect on TIOA:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int acpc : 2; + + //! RA compare effect on TIOA:\n + //! - \ref TC_EVT_EFFECT_NOOP;\n + //! - \ref TC_EVT_EFFECT_SET;\n + //! - \ref TC_EVT_EFFECT_CLEAR;\n + //! - \ref TC_EVT_EFFECT_TOGGLE. + unsigned int acpa : 2; + + unsigned int : 1; + + //! Waveform selection:\n + //! - \ref TC_WAVEFORM_SEL_UP_MODE;\n + //! - \ref TC_WAVEFORM_SEL_UP_MODE_RC_TRIGGER;\n + //! - \ref TC_WAVEFORM_SEL_UPDOWN_MODE;\n + //! - \ref TC_WAVEFORM_SEL_UPDOWN_MODE_RC_TRIGGER. + unsigned int wavsel : 2; + + //! External event trigger enable:\n + //! - \c FALSE;\n + //! - \c TRUE. + unsigned int enetrg : 1; + + //! External event selection:\n + //! - \ref TC_EXT_EVENT_SEL_TIOB_INPUT;\n + //! - \ref TC_EXT_EVENT_SEL_XC0_OUTPUT;\n + //! - \ref TC_EXT_EVENT_SEL_XC1_OUTPUT;\n + //! - \ref TC_EXT_EVENT_SEL_XC2_OUTPUT. + unsigned int eevt : 2; + + //! External event edge selection:\n + //! - \ref TC_SEL_NO_EDGE;\n + //! - \ref TC_SEL_RISING_EDGE;\n + //! - \ref TC_SEL_FALLING_EDGE;\n + //! - \ref TC_SEL_EACH_EDGE. + unsigned int eevtedg : 2; + + //! Counter clock disable with RC compare:\n + //! - \c FALSE;\n + //! - \c TRUE. + unsigned int cpcdis : 1; + + //! Counter clock stopped with RC compare:\n + //! - \c FALSE;\n + //! - \c TRUE. + unsigned int cpcstop : 1; + + //! Burst signal selection:\n + //! - \ref TC_BURST_NOT_GATED;\n + //! - \ref TC_BURST_CLK_AND_XC0;\n + //! - \ref TC_BURST_CLK_AND_XC1;\n + //! - \ref TC_BURST_CLK_AND_XC2. + unsigned int burst : 2; + + //! Clock invert:\n + //! - \ref TC_CLOCK_RISING_EDGE;\n + //! - \ref TC_CLOCK_FALLING_EDGE. + unsigned int clki : 1; + + //! Clock selection:\n + //! - \ref TC_CLOCK_SOURCE_TC1;\n + //! - \ref TC_CLOCK_SOURCE_TC2;\n + //! - \ref TC_CLOCK_SOURCE_TC3;\n + //! - \ref TC_CLOCK_SOURCE_TC4;\n + //! - \ref TC_CLOCK_SOURCE_TC5;\n + //! - \ref TC_CLOCK_SOURCE_XC0;\n + //! - \ref TC_CLOCK_SOURCE_XC1;\n + //! - \ref TC_CLOCK_SOURCE_XC2. + unsigned int tcclks : 3; +} tc_waveform_opt_t; + + +/*! \brief Reads timer/counter interrupt settings. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval >=0 The interrupt enable configuration organized according to \ref tc_interrupt_t. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_get_interrupt_settings(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Enables various timer/counter interrupts. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * \param bitfield The interrupt enable configuration. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_configure_interrupts(volatile avr32_tc_t *tc, unsigned int channel, const tc_interrupt_t *bitfield); + +/*! \brief Selects which external clock to use and how to configure it. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * \param ext_clk_sig_src External clock signal selection: + * \arg \c TC_CH0_EXT_CLK0_SRC_TCLK0; + * \arg \c TC_CH0_EXT_CLK0_SRC_NO_CLK; + * \arg \c TC_CH0_EXT_CLK0_SRC_TIOA1; + * \arg \c TC_CH0_EXT_CLK0_SRC_TIOA2; + * \arg \c TC_CH1_EXT_CLK1_SRC_TCLK1; + * \arg \c TC_CH1_EXT_CLK1_SRC_NO_CLK; + * \arg \c TC_CH1_EXT_CLK1_SRC_TIOA0; + * \arg \c TC_CH1_EXT_CLK1_SRC_TIOA2; + * \arg \c TC_CH2_EXT_CLK2_SRC_TCLK2; + * \arg \c TC_CH2_EXT_CLK2_SRC_NO_CLK; + * \arg \c TC_CH2_EXT_CLK2_SRC_TIOA0; + * \arg \c TC_CH2_EXT_CLK2_SRC_TIOA1. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_select_external_clock(volatile avr32_tc_t *tc, unsigned int channel, unsigned int ext_clk_sig_src); + +/*! \brief Sets options for timer/counter capture initialization. + * + * \param tc Pointer to the TC instance to access. + * \param opt Options for capture mode. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_init_capture(volatile avr32_tc_t *tc, const tc_capture_opt_t *opt); + +/*! \brief Sets options for timer/counter waveform initialization. + * + * \param tc Pointer to the TC instance to access. + * \param opt Options for waveform generation. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_init_waveform(volatile avr32_tc_t *tc, const tc_waveform_opt_t *opt); + +/*! \brief Starts a timer/counter. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_start(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Stops a timer/counter. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_stop(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Performs a software trigger: the counter is reset and the clock is started. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval 0 Success. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_software_trigger(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Asserts a SYNC signal to generate a software trigger and reset all channels. + * + * \param tc Pointer to the TC instance to access. + */ +extern void tc_sync_trigger(volatile avr32_tc_t *tc); + +/*! \brief Start all TC channels simultaneously. + * + * \param tc Pointer to the TC instance to access. + */ +extern void tc_sync_start(volatile avr32_tc_t *tc); + +/*! \brief Reads the status register. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval >=0 Status register value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_read_sr(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Reads the channel's TC counter and returns the value. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval >=0 TC counter value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_read_tc(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Reads the channel's RA register and returns the value. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval >=0 RA register value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_read_ra(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Reads the channel's RB register and returns the value. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval >=0 RB register value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_read_rb(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Reads the channel's RC register and returns the value. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * + * \retval >=0 RC register value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_read_rc(volatile avr32_tc_t *tc, unsigned int channel); + +/*! \brief Writes a value to the channel's RA register. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * \param value Value to write to the RA register. + * + * \retval >=0 Written value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_write_ra(volatile avr32_tc_t *tc, unsigned int channel, unsigned short value); + +/*! \brief Writes a value to the channel's RB register. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * \param value Value to write to the RB register. + * + * \retval >=0 Written value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_write_rb(volatile avr32_tc_t *tc, unsigned int channel, unsigned short value); + +/*! \brief Writes a value to the channel's RC register. + * + * \param tc Pointer to the TC instance to access. + * \param channel The TC instance channel to access. + * \param value Value to write to the RC register. + * + * \retval >=0 Written value. + * \retval TC_INVALID_ARGUMENT Invalid argument(s). + */ +extern int tc_write_rc(volatile avr32_tc_t *tc, unsigned int channel, unsigned short value); + + +#endif // _TC_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c new file mode 100644 index 000000000..b95882a75 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c @@ -0,0 +1,914 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief USART driver for AVR32 UC3. + * + * This file contains basic functions for the AVR32 USART, with support for all + * modes, settings and clock speeds. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "usart.h" + + +//------------------------------------------------------------------------------ +/*! \name Private Functions + */ +//! @{ + + +/*! \brief Checks if the USART is in multidrop mode. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART is in multidrop mode, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +static __inline__ int usart_mode_is_multidrop(volatile avr32_usart_t *usart) +{ + return ((usart->mr >> AVR32_USART_MR_PAR_OFFSET) & AVR32_USART_MR_PAR_MULTI) == AVR32_USART_MR_PAR_MULTI; +} + + +/*! \brief Calculates a clock divider (\e CD) and a fractional part (\e FP) for + * the USART asynchronous modes to generate a baud rate as close as + * possible to the baud rate set point. + * + * Baud rate calculation: + * \f$ Baudrate = \frac{SelectedClock}{Over \times (CD + \frac{FP}{8})} \f$, \e Over being 16 or 8. + * The maximal oversampling is selected if it allows to generate a baud rate close to the set point. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Baud rate successfully initialized. + * \retval USART_INVALID_INPUT Baud rate set point is out of range for the given input clock frequency. + */ +static int usart_set_async_baudrate(volatile avr32_usart_t *usart, unsigned int baudrate, unsigned long pba_hz) +{ + unsigned int over = (pba_hz >= 16 * baudrate) ? 16 : 8; + unsigned int cd_fp = ((1 << AVR32_USART_BRGR_FP_SIZE) * pba_hz + (over * baudrate) / 2) / (over * baudrate); + unsigned int cd = cd_fp >> AVR32_USART_BRGR_FP_SIZE; + unsigned int fp = cd_fp & ((1 << AVR32_USART_BRGR_FP_SIZE) - 1); + + if (cd < 1 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~(AVR32_USART_MR_USCLKS_MASK | + AVR32_USART_MR_SYNC_MASK | + AVR32_USART_MR_OVER_MASK)) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET | + ((over == 16) ? AVR32_USART_MR_OVER_X16 : AVR32_USART_MR_OVER_X8) << AVR32_USART_MR_OVER_OFFSET; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET | + fp << AVR32_USART_BRGR_FP_OFFSET; + + return USART_SUCCESS; +} + + +/*! \brief Calculates a clock divider (\e CD) for the USART synchronous master + * modes to generate a baud rate as close as possible to the baud rate + * set point. + * + * Baud rate calculation: + * \f$ Baudrate = \frac{SelectedClock}{CD} \f$. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Baud rate successfully initialized. + * \retval USART_INVALID_INPUT Baud rate set point is out of range for the given input clock frequency. + */ +static int usart_set_sync_master_baudrate(volatile avr32_usart_t *usart, unsigned int baudrate, unsigned long pba_hz) +{ + unsigned int cd = (pba_hz + baudrate / 2) / baudrate; + + if (cd < 1 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET | + AVR32_USART_MR_SYNC_MASK; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET; + + return USART_SUCCESS; +} + + +/*! \brief Selects the SCK pin as the source of baud rate for the USART + * synchronous slave modes. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Baud rate successfully initialized. + */ +static int usart_set_sync_slave_baudrate(volatile avr32_usart_t *usart) +{ + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_SCK << AVR32_USART_MR_USCLKS_OFFSET | + AVR32_USART_MR_SYNC_MASK; + + return USART_SUCCESS; +} + + +/*! \brief Calculates a clock divider (\e CD) for the USART ISO7816 mode to + * generate an ISO7816 clock as close as possible to the clock set point. + * + * ISO7816 clock calculation: + * \f$ Clock = \frac{SelectedClock}{CD} \f$. + * + * \param usart Base address of the USART instance. + * \param clock ISO7816 clock set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS ISO7816 clock successfully initialized. + * \retval USART_INVALID_INPUT ISO7816 clock set point is out of range for the given input clock frequency. + */ +static int usart_set_iso7816_clock(volatile avr32_usart_t *usart, unsigned int clock, unsigned long pba_hz) +{ + unsigned int cd = (pba_hz + clock / 2) / clock; + + if (cd < 1 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~(AVR32_USART_MR_USCLKS_MASK | + AVR32_USART_MR_SYNC_MASK | + AVR32_USART_MR_OVER_MASK)) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET | + AVR32_USART_MR_OVER_X16 << AVR32_USART_MR_OVER_OFFSET; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET; + + return USART_SUCCESS; +} + + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + + +/*! \brief Calculates a clock divider (\e CD) for the USART SPI master mode to + * generate a baud rate as close as possible to the baud rate set point. + * + * Baud rate calculation: + * \f$ Baudrate = \frac{SelectedClock}{CD} \f$. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Baud rate successfully initialized. + * \retval USART_INVALID_INPUT Baud rate set point is out of range for the given input clock frequency. + */ +static int usart_set_spi_master_baudrate(volatile avr32_usart_t *usart, unsigned int baudrate, unsigned long pba_hz) +{ + unsigned int cd = (pba_hz + baudrate / 2) / baudrate; + + if (cd < 4 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET; + + return USART_SUCCESS; +} + + +/*! \brief Selects the SCK pin as the source of baud rate for the USART SPI + * slave mode. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Baud rate successfully initialized. + */ +static int usart_set_spi_slave_baudrate(volatile avr32_usart_t *usart) +{ + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_SCK << AVR32_USART_MR_USCLKS_OFFSET; + + return USART_SUCCESS; +} + + +#endif // USART rev. >= 4.0.0 + + +//! @} + + +//------------------------------------------------------------------------------ +/*! \name Initialization Functions + */ +//! @{ + + +void usart_reset(volatile avr32_usart_t *usart) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + // Disable all USART interrupts. + // Interrupts needed should be set explicitly on every reset. + if (global_interrupt_enabled) Disable_global_interrupt(); + usart->idr = 0xFFFFFFFF; + usart->csr; + if (global_interrupt_enabled) Enable_global_interrupt(); + + // Reset mode and other registers that could cause unpredictable behavior after reset. + usart->mr = 0; + usart->rtor = 0; + usart->ttgr = 0; + + // Shutdown TX and RX (will be re-enabled when setup has successfully completed), + // reset status bits and turn off DTR and RTS. + usart->cr = AVR32_USART_CR_RSTRX_MASK | + AVR32_USART_CR_RSTTX_MASK | + AVR32_USART_CR_RSTSTA_MASK | + AVR32_USART_CR_RSTIT_MASK | + AVR32_USART_CR_RSTNACK_MASK | +#ifndef AVR32_USART_440_H_INCLUDED +// Note: Modem Signal Management DTR-DSR-DCD-RI are not included in USART rev.440. + AVR32_USART_CR_DTRDIS_MASK | +#endif + AVR32_USART_CR_RTSDIS_MASK; +} + + +int usart_init_rs232(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_async_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1, 1.5 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET; + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_rs232_tx_only(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits == 1 || opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_sync_master_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET; + + // Setup complete; enable communication. + // Enable only output as input is not possible in synchronous mode without + // transferring clock. + usart->cr = AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_hw_handshaking(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set hardware handshaking mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_HARDWARE << AVR32_USART_MR_MODE_OFFSET; + + return USART_SUCCESS; +} + + +int usart_init_modem(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set modem mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_MODEM << AVR32_USART_MR_MODE_OFFSET; + + return USART_SUCCESS; +} + + +int usart_init_sync_master(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits == 1 || opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_sync_master_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_CLKO_MASK; + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_sync_slave(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits == 1 || opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_sync_slave_baudrate(usart) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET; + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_rs485(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set RS485 mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_RS485 << AVR32_USART_MR_MODE_OFFSET; + + return USART_SUCCESS; +} + + +int usart_init_IrDA(volatile avr32_usart_t *usart, const usart_options_t *opt, + long pba_hz, unsigned char irda_filter) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set IrDA filter. + usart->ifr = irda_filter; + + // Set IrDA mode and activate filtering of input. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MODE_IRDA << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_FILTER_MASK; + + return USART_SUCCESS; +} + + +int usart_init_iso7816(volatile avr32_usart_t *usart, const usart_iso7816_options_t *opt, int t, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->paritytype > 1) + return USART_INVALID_INPUT; + + if (t == 0) + { + // Set USART mode to ISO7816, T=0. + // The T=0 protocol always uses 2 stop bits. + usart->mr = AVR32_USART_MR_MODE_ISO7816_T0 << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET | + opt->bit_order << AVR32_USART_MR_MSBF_OFFSET; // Allow MSBF in T=0. + } + else if (t == 1) + { + // Only LSB first in the T=1 protocol. + // max_iterations field is only used in T=0 mode. + if (opt->bit_order != 0 || + opt->max_iterations != 0) + return USART_INVALID_INPUT; + + // Set USART mode to ISO7816, T=1. + // The T=1 protocol always uses 1 stop bit. + usart->mr = AVR32_USART_MR_MODE_ISO7816_T1 << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_NBSTOP_1 << AVR32_USART_MR_NBSTOP_OFFSET; + } + else + return USART_INVALID_INPUT; + + if (usart_set_iso7816_clock(usart, opt->iso7816_hz, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set FIDI register: bit rate = selected clock/FI_DI_ratio/16. + usart->fidi = opt->fidi_ratio; + + // Set ISO7816 spesific options in the MODE register. + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + AVR32_USART_MR_CLKO_MASK | // Enable clock output. + opt->inhibit_nack << AVR32_USART_MR_INACK_OFFSET | + opt->dis_suc_nack << AVR32_USART_MR_DSNACK_OFFSET | + opt->max_iterations << AVR32_USART_MR_MAX_ITERATION_OFFSET; + + // Setup complete; enable the receiver by default. + usart_iso7816_enable_receiver(usart); + + return USART_SUCCESS; +} + + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + + +int usart_init_lin_master(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (usart_set_async_baudrate(usart, baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + usart->mr |= AVR32_USART_MR_MODE_LIN_MASTER << AVR32_USART_MR_MODE_OFFSET; // LIN master mode. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_lin_slave(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (usart_set_async_baudrate(usart, baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + usart->mr |= AVR32_USART_MR_MODE_LIN_SLAVE << AVR32_USART_MR_MODE_OFFSET; // LIN slave mode. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_spi_master(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->spimode > 3 || + opt->channelmode > 3 || + usart_set_spi_master_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= AVR32_USART_MR_MODE_SPI_MASTER << AVR32_USART_MR_MODE_OFFSET | // SPI master mode. + ((opt->spimode & 0x1) ^ 0x1) << AVR32_USART_MR_SYNC_OFFSET | // SPI clock phase. + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET | // Channel mode. + (opt->spimode >> 1) << AVR32_USART_MR_MSBF_OFFSET | // SPI clock polarity. + AVR32_USART_MR_CLKO_MASK; // Drive SCK pin. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_spi_slave(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->spimode > 3 || + opt->channelmode > 3 || + usart_set_spi_slave_baudrate(usart) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= AVR32_USART_MR_MODE_SPI_SLAVE << AVR32_USART_MR_MODE_OFFSET | // SPI slave mode. + ((opt->spimode & 0x1) ^ 0x1) << AVR32_USART_MR_SYNC_OFFSET | // SPI clock phase. + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET | // Channel mode. + (opt->spimode >> 1) << AVR32_USART_MR_MSBF_OFFSET; // SPI clock polarity. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +#endif // USART rev. >= 4.0.0 + + +//! @} + + +//------------------------------------------------------------------------------ +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + + +/*! \name SPI Control Functions + */ +//! @{ + + +int usart_spi_selectChip(volatile avr32_usart_t *usart) +{ + // Force the SPI chip select. + usart->cr = AVR32_USART_CR_RTSEN_MASK; + + return USART_SUCCESS; +} + + +int usart_spi_unselectChip(volatile avr32_usart_t *usart) +{ + int timeout = USART_DEFAULT_TIMEOUT; + + do + { + if (!timeout--) return USART_FAILURE; + } while (!usart_tx_empty(usart)); + + // Release the SPI chip select. + usart->cr = AVR32_USART_CR_RTSDIS_MASK; + + return USART_SUCCESS; +} + + +//! @} + + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +/*! \name Transmit/Receive Functions + */ +//! @{ + + +int usart_send_address(volatile avr32_usart_t *usart, int address) +{ + // Check if USART is in multidrop / RS485 mode. + if (!usart_mode_is_multidrop(usart)) return USART_MODE_FAULT; + + // Prepare to send an address. + usart->cr = AVR32_USART_CR_SENDA_MASK; + + // Write the address to TX. + usart_bw_write_char(usart, address); + + return USART_SUCCESS; +} + + +int usart_write_char(volatile avr32_usart_t *usart, int c) +{ + if (usart_tx_ready(usart)) + { + usart->thr = (c << AVR32_USART_THR_TXCHR_OFFSET) & AVR32_USART_THR_TXCHR_MASK; + return USART_SUCCESS; + } + else + return USART_TX_BUSY; +} + + +int usart_putchar(volatile avr32_usart_t *usart, int c) +{ + int timeout = USART_DEFAULT_TIMEOUT; + + if (c == '\n') + { + do + { + if (!timeout--) return USART_FAILURE; + } while (usart_write_char(usart, '\r') != USART_SUCCESS); + + timeout = USART_DEFAULT_TIMEOUT; + } + + do + { + if (!timeout--) return USART_FAILURE; + } while (usart_write_char(usart, c) != USART_SUCCESS); + + return USART_SUCCESS; +} + + +int usart_read_char(volatile avr32_usart_t *usart, int *c) +{ + // Check for errors: frame, parity and overrun. In RS485 mode, a parity error + // would mean that an address char has been received. + if (usart->csr & (AVR32_USART_CSR_OVRE_MASK | + AVR32_USART_CSR_FRAME_MASK | + AVR32_USART_CSR_PARE_MASK)) + return USART_RX_ERROR; + + // No error; if we really did receive a char, read it and return SUCCESS. + if (usart_test_hit(usart)) + { + *c = (usart->rhr & AVR32_USART_RHR_RXCHR_MASK) >> AVR32_USART_RHR_RXCHR_OFFSET; + return USART_SUCCESS; + } + else + return USART_RX_EMPTY; +} + + +int usart_getchar(volatile avr32_usart_t *usart) +{ + int c, ret; + + while ((ret = usart_read_char(usart, &c)) == USART_RX_EMPTY); + + if (ret == USART_RX_ERROR) + return USART_FAILURE; + + return c; +} + + +void usart_write_line(volatile avr32_usart_t *usart, const char *string) +{ + while (*string != '\0') + usart_putchar(usart, *string++); +} + + +int usart_get_echo_line(volatile avr32_usart_t *usart) +{ + int rx_char; + int retval = USART_SUCCESS; + + while (1) + { + rx_char = usart_getchar(usart); + if (rx_char == USART_FAILURE) + { + usart_write_line(usart, "Error!!!\n"); + retval = USART_FAILURE; + break; + } + if (rx_char == '\x03') + { + retval = USART_FAILURE; + break; + } + usart_putchar(usart, rx_char); + if (rx_char == '\r') + { + usart_putchar(usart, '\n'); + break; + } + } + + return retval; +} + + +//! @} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h new file mode 100644 index 000000000..bc1c100f8 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h @@ -0,0 +1,889 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief USART driver for AVR32 UC3. + * + * This file contains basic functions for the AVR32 USART, with support for all + * modes, settings and clock speeds. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _USART_H_ +#define _USART_H_ + +#include <avr32/io.h> +#include "compiler.h" + + +/*! \name Return Values + */ +//! @{ +#define USART_SUCCESS 0 //!< Successful completion. +#define USART_FAILURE -1 //!< Failure because of some unspecified reason. +#define USART_INVALID_INPUT 1 //!< Input value out of range. +#define USART_INVALID_ARGUMENT -1 //!< Argument value out of range. +#define USART_TX_BUSY 2 //!< Transmitter was busy. +#define USART_RX_EMPTY 3 //!< Nothing was received. +#define USART_RX_ERROR 4 //!< Transmission error occurred. +#define USART_MODE_FAULT 5 //!< USART not in the appropriate mode. +//! @} + +//! Default time-out value (number of attempts). +#define USART_DEFAULT_TIMEOUT 10000 + +/*! \name Parity Settings + */ +//! @{ +#define USART_EVEN_PARITY AVR32_USART_MR_PAR_EVEN //!< Use even parity on character transmission. +#define USART_ODD_PARITY AVR32_USART_MR_PAR_ODD //!< Use odd parity on character transmission. +#define USART_SPACE_PARITY AVR32_USART_MR_PAR_SPACE //!< Use a space as parity bit. +#define USART_MARK_PARITY AVR32_USART_MR_PAR_MARK //!< Use a mark as parity bit. +#define USART_NO_PARITY AVR32_USART_MR_PAR_NONE //!< Don't use a parity bit. +#define USART_MULTIDROP_PARITY AVR32_USART_MR_PAR_MULTI //!< Parity bit is used to flag address characters. +//! @} + +/*! \name Stop Bits Settings + */ +//! @{ +#define USART_1_STOPBIT AVR32_USART_MR_NBSTOP_1 //!< Use 1 stop bit. +#define USART_1_5_STOPBITS AVR32_USART_MR_NBSTOP_1_5 //!< Use 1.5 stop bits. +#define USART_2_STOPBITS AVR32_USART_MR_NBSTOP_2 //!< Use 2 stop bits (for more, just give the number of bits). +//! @} + +/*! \name Channel Modes + */ +//! @{ +#define USART_NORMAL_CHMODE AVR32_USART_MR_CHMODE_NORMAL //!< Normal communication. +#define USART_AUTO_ECHO AVR32_USART_MR_CHMODE_ECHO //!< Echo data. +#define USART_LOCAL_LOOPBACK AVR32_USART_MR_CHMODE_LOCAL_LOOP //!< Local loopback. +#define USART_REMOTE_LOOPBACK AVR32_USART_MR_CHMODE_REMOTE_LOOP //!< Remote loopback. +//! @} + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \name LIN Node Actions + */ +//! @{ +#define USART_LIN_PUBLISH_ACTION AVR32_USART_LINMR_NACT_PUBLISH //!< The USART transmits the response. +#define USART_LIN_SUBSCRIBE_ACTION AVR32_USART_LINMR_NACT_SUBSCRIBE //!< The USART receives the response. +#define USART_LIN_IGNORE_ACTION AVR32_USART_LINMR_NACT_IGNORE //!< The USART does not transmit and does not receive the reponse. +//! @} + +/*! \name LIN Checksum Types + */ +//! @{ +#define USART_LIN_ENHANCED_CHECKSUM 0 //!< LIN 2.0 "enhanced" checksum. +#define USART_LIN_CLASSIC_CHECKSUM 1 //!< LIN 1.3 "classic" checksum. +//! @} + +#endif // USART rev. >= 4.0.0 + + +//! Input parameters when initializing RS232 and similar modes. +typedef struct +{ + //! Set baud rate of the USART (unused in slave modes). + unsigned long baudrate; + + //! Number of bits to transmit as a character (5 to 9). + unsigned char charlength; + + //! How to calculate the parity bit: \ref USART_EVEN_PARITY, \ref USART_ODD_PARITY, + //! \ref USART_SPACE_PARITY, \ref USART_MARK_PARITY, \ref USART_NO_PARITY or + //! \ref USART_MULTIDROP_PARITY. + unsigned char paritytype; + + //! Number of stop bits between two characters: \ref USART_1_STOPBIT, + //! \ref USART_1_5_STOPBITS, \ref USART_2_STOPBITS or any number from 3 to 257 + //! which will result in a time guard period of that length between characters. + //! \note \ref USART_1_5_STOPBITS is supported in asynchronous modes only. + unsigned short stopbits; + + //! Run the channel in testmode: \ref USART_NORMAL_CHMODE, \ref USART_AUTO_ECHO, + //! \ref USART_LOCAL_LOOPBACK or \ref USART_REMOTE_LOOPBACK. + unsigned char channelmode; +} usart_options_t; + +//! Input parameters when initializing ISO7816 mode. +typedef struct +{ + //! Set the frequency of the ISO7816 clock. + unsigned long iso7816_hz; + + //! The number of ISO7816 clock ticks in every bit period (1 to 2047, 0 = disable clock). + //! Bit rate = \ref iso7816_hz / \ref fidi_ratio. + unsigned short fidi_ratio; + + //! How to calculate the parity bit: \ref USART_EVEN_PARITY for normal mode or + //! \ref USART_ODD_PARITY for inverse mode. + unsigned char paritytype; + + //! Inhibit Non Acknowledge:\n + //! - 0: the NACK is generated;\n + //! - 1: the NACK is not generated. + //! + //! \note This bit will be used only in ISO7816 mode, protocol T = 0 receiver. + int inhibit_nack; + + //! Disable successive NACKs. + //! Successive parity errors are counted up to the value in the \ref max_iterations field. + //! These parity errors generate a NACK on the ISO line. As soon as this value is reached, + //! no addititional NACK is sent on the ISO line. The ITERATION flag is asserted. + int dis_suc_nack; + + //! Max number of repetitions (0 to 7). + unsigned char max_iterations; + + //! Bit order in transmitted characters:\n + //! - 0: LSB first;\n + //! - 1: MSB first. + int bit_order; +} usart_iso7816_options_t; + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +//! Input parameters when initializing SPI mode. +typedef struct +{ + //! Set the frequency of the SPI clock (unused in slave mode). + unsigned long baudrate; + + //! Number of bits to transmit as a character (5 to 9). + unsigned char charlength; + + //! Which SPI mode to use. + unsigned char spimode; + + //! Run the channel in testmode: \ref USART_NORMAL_CHMODE, \ref USART_AUTO_ECHO, + //! \ref USART_LOCAL_LOOPBACK or \ref USART_REMOTE_LOOPBACK. + unsigned char channelmode; +} usart_spi_options_t; + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +/*! \name Initialization Functions + */ +//! @{ + +/*! \brief Resets the USART and disables TX and RX. + * + * \param usart Base address of the USART instance. + */ +extern void usart_reset(volatile avr32_usart_t *usart); + +/*! \brief Sets up the USART to use the standard RS232 protocol. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_rs232(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the standard RS232 protocol in TX-only mode. + * + * Compared to \ref usart_init_rs232, this function allows very high baud rates + * (up to \a pba_hz instead of \a pba_hz / \c 8) at the expense of full duplex. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + * + * \note The \c 1.5 stop bit is not supported in this mode. + */ +extern int usart_init_rs232_tx_only(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use hardware handshaking. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + * + * \note \ref usart_init_rs232 does not need to be invoked before this function. + */ +extern int usart_init_hw_handshaking(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the modem protocol, activating dedicated inputs/outputs. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_modem(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use a synchronous RS232-like protocol in master mode. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_sync_master(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use a synchronous RS232-like protocol in slave mode. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_sync_slave(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the RS485 protocol. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_rs485(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the IrDA protocol. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * \param irda_filter Counter used to distinguish received ones from zeros. + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_IrDA(volatile avr32_usart_t *usart, const usart_options_t *opt, + long pba_hz, unsigned char irda_filter); + +/*! \brief Sets up the USART to use the ISO7816 T=0 or T=1 smartcard protocols. + * + * The receiver is enabled by default. \ref usart_iso7816_enable_receiver and + * \ref usart_iso7816_enable_transmitter can be called to change the half-duplex + * communication direction. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up ISO7816 communication (see \ref usart_iso7816_options_t). + * \param t ISO7816 mode to use (T=0 or T=1). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_iso7816(volatile avr32_usart_t *usart, const usart_iso7816_options_t *opt, int t, long pba_hz); + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \brief Sets up the USART to use the LIN master mode. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + */ +extern int usart_init_lin_master(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz); + +/*! \brief Sets up the USART to use the LIN slave mode. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + */ +extern int usart_init_lin_slave(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz); + +/*! \brief Sets up the USART to use the SPI master mode. + * + * \ref usart_spi_selectChip and \ref usart_spi_unselectChip can be called to + * select or unselect the SPI slave chip. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up SPI mode (see \ref usart_spi_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_spi_master(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the SPI slave mode. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up SPI mode (see \ref usart_spi_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_spi_slave(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz); + +#endif // USART rev. >= 4.0.0 + +//! @} + + +//------------------------------------------------------------------------------ +/*! \name Read and Reset Error Status Bits + */ +//! @{ + +/*! \brief Resets the error status. + * + * This function resets the status bits indicating that a parity error, + * framing error or overrun has occurred. The RXBRK bit, indicating + * a start/end of break condition on the RX line, is also reset. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_reset_status(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_CR_RSTSTA_MASK; +} + +/*! \brief Checks if a parity error has occurred since last status reset. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a parity error has been detected, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_parity_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_PARE_MASK) != 0; +} + +/*! \brief Checks if a framing error has occurred since last status reset. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a framing error has been detected, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_framing_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_FRAME_MASK) != 0; +} + +/*! \brief Checks if an overrun error has occurred since last status reset. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a overrun error has been detected, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_overrun_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_OVRE_MASK) != 0; +} + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \brief Get LIN Error Status + * + * \param usart Base address of the USART instance. + * + * \retval The binary value of the error field. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_lin_get_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & (AVR32_USART_CSR_LINSNRE_MASK | + AVR32_USART_CSR_LINCE_MASK | + AVR32_USART_CSR_LINIPE_MASK | + AVR32_USART_CSR_LINISFE_MASK | + AVR32_USART_CSR_LINBE_MASK)) >> AVR32_USART_CSR_LINBE_OFFSET; +} + +#endif // USART rev. >= 4.0.0 + +//! @} + + +//------------------------------------------------------------------------------ +/*! \name ISO7816 Control Functions + */ +//! @{ + +/*! \brief Enables the ISO7816 receiver. + * + * The ISO7816 transmitter is disabled. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_iso7816_enable_receiver(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_CR_TXDIS_MASK | AVR32_USART_CR_RXEN_MASK; +} + +/*! \brief Enables the ISO7816 transmitter. + * + * The ISO7816 receiver is disabled. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_iso7816_enable_transmitter(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_CR_RXDIS_MASK | AVR32_USART_CR_TXEN_MASK; +} + +//! @} + + +//------------------------------------------------------------------------------ +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \name LIN Control Functions + */ +//! @{ + +/*! \brief Sets the node action. + * + * \param usart Base address of the USART instance. + * \param action The node action: \ref USART_LIN_PUBLISH_ACTION, + * \ref USART_LIN_SUBSCRIBE_ACTION or + * \ref USART_LIN_IGNORE_ACTION. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_node_action(volatile avr32_usart_t *usart, unsigned char action) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_NACT_MASK) | + action << AVR32_USART_LINMR_NACT_OFFSET; +} + +/*! \brief Enables or disables the Identifier parity. + * + * \param usart Base address of the USART instance. + * \param parity Whether to enable the Identifier parity: \c TRUE or \c FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_enable_parity(volatile avr32_usart_t *usart, unsigned char parity) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_PARDIS_MASK) | + !parity << AVR32_USART_LINMR_PARDIS_OFFSET; +} + +/*! \brief Enables or disables the checksum. + * + * \param usart Base address of the USART instance. + * \param parity Whether to enable the checksum: \c TRUE or \c FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_enable_checksum(volatile avr32_usart_t *usart, unsigned char checksum) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_CHKDIS_MASK) | + !checksum << AVR32_USART_LINMR_CHKDIS_OFFSET; +} + +/*! \brief Sets the checksum type. + * + * \param usart Base address of the USART instance. + * \param chktyp The checksum type: \ref USART_LIN_ENHANCED_CHEKSUM or + * \ref USART_LIN_CLASSIC_CHECKSUM. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_checksum(volatile avr32_usart_t *usart, unsigned char chktyp) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_CHKTYP_MASK) | + chktyp << AVR32_USART_LINMR_CHKTYP_OFFSET; +} + +/*! \brief Gets the response data length. + * + * \param usart Base address of the USART instance. + * + * \return The response data length. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned char usart_lin_get_data_length(volatile avr32_usart_t *usart) +{ + if (usart->linmr & AVR32_USART_LINMR_DLM_MASK) + { + unsigned char data_length = 1 << ((usart->linir >> (AVR32_USART_LINIR_IDCHR_OFFSET + 4)) & 0x03); + if (data_length == 1) + data_length = 2; + return data_length; + } + else + return ((usart->linmr & AVR32_USART_LINMR_DLC_MASK) >> AVR32_USART_LINMR_DLC_OFFSET) + 1; +} + +/*! \brief Sets the response data length for LIN 1.x. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_data_length_lin1x(volatile avr32_usart_t *usart) +{ + usart->linmr |= AVR32_USART_LINMR_DLM_MASK; +} + +/*! \brief Sets the response data length for LIN 2.x. + * + * \param usart Base address of the USART instance. + * \param data_length The response data length. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_data_length_lin2x(volatile avr32_usart_t *usart, unsigned char data_length) +{ + usart->linmr = (usart->linmr & ~(AVR32_USART_LINMR_DLC_MASK | + AVR32_USART_LINMR_DLM_MASK)) | + (data_length - 1) << AVR32_USART_LINMR_DLC_OFFSET; +} + +/*! \brief Enables or disables the frame slot mode. + * + * \param usart Base address of the USART instance. + * \param frameslot Whether to enable the frame slot mode: \c TRUE or + * \c FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_enable_frameslot(volatile avr32_usart_t *usart, unsigned char frameslot) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_FSDIS_MASK) | + !frameslot << AVR32_USART_LINMR_FSDIS_OFFSET; +} + +/*! \brief Gets the Identifier character. + * + * \param usart Base address of the USART instance. + * + * \return The Identifier character. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned char usart_lin_get_id_char(volatile avr32_usart_t *usart) +{ + return (usart->linir & AVR32_USART_LINIR_IDCHR_MASK) >> AVR32_USART_LINIR_IDCHR_OFFSET; +} + +/*! \brief Sets the Identifier character. + * + * \param usart Base address of the USART instance. + * \param id_char The Identifier character. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_id_char(volatile avr32_usart_t *usart, unsigned char id_char) +{ + usart->linir = (usart->linir & ~AVR32_USART_LINIR_IDCHR_MASK) | + id_char << AVR32_USART_LINIR_IDCHR_OFFSET; +} + +//! @} + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \name SPI Control Functions + */ +//! @{ + +/*! \brief Selects SPI slave chip. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Success. + */ +extern int usart_spi_selectChip(volatile avr32_usart_t *usart); + +/*! \brief Unselects SPI slave chip. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Success. + * \retval USART_FAILURE Time-out. + */ +extern int usart_spi_unselectChip(volatile avr32_usart_t *usart); + +//! @} + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +/*! \name Transmit/Receive Functions + */ +//! @{ + +/*! \brief Addresses a receiver. + * + * While in RS485 mode, receivers only accept data addressed to them. + * A packet/char with the address tag set has to precede any data. + * This function is used to address a receiver. This receiver should read + * all the following data, until an address packet addresses another receiver. + * + * \param usart Base address of the USART instance. + * \param address Address of the target device. + * + * \retval USART_SUCCESS Address successfully sent (if current mode is RS485). + * \retval USART_MODE_FAULT Wrong operating mode. + */ +extern int usart_send_address(volatile avr32_usart_t *usart, int address); + +/*! \brief Tests if the USART is ready to transmit a character. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART Transmit Holding Register is free, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_tx_ready(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_TXRDY_MASK) != 0; +} + +/*! \brief Writes the given character to the TX buffer if the transmitter is ready. + * + * \param usart Base address of the USART instance. + * \param c The character (up to 9 bits) to transmit. + * + * \retval USART_SUCCESS The transmitter was ready. + * \retval USART_TX_BUSY The transmitter was busy. + */ +extern int usart_write_char(volatile avr32_usart_t *usart, int c); + +/*! \brief An active wait writing a character to the USART. + * + * \param usart Base address of the USART instance. + * \param c The character (up to 9 bits) to transmit. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_bw_write_char(volatile avr32_usart_t *usart, int c) +{ + while (usart_write_char(usart, c) != USART_SUCCESS); +} + +/*! \brief Sends a character with the USART. + * + * \param usart Base address of the USART instance. + * \param c Character to write. + * + * \retval USART_SUCCESS The character was written. + * \retval USART_FAILURE The function timed out before the USART transmitter became ready to send. + */ +extern int usart_putchar(volatile avr32_usart_t *usart, int c); + +/*! \brief Tests if all requested USART transmissions are over. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART Transmit Shift Register and the USART Transmit + * Holding Register are free, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_tx_empty(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_TXEMPTY_MASK) != 0; +} + +/*! \brief Tests if the USART contains a received character. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART Receive Holding Register is full, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_test_hit(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_RXRDY_MASK) != 0; +} + +/*! \brief Checks the RX buffer for a received character, and stores it at the + * given memory location. + * + * \param usart Base address of the USART instance. + * \param c Pointer to the where the read character should be stored + * (must be at least short in order to accept 9-bit characters). + * + * \retval USART_SUCCESS The character was read successfully. + * \retval USART_RX_EMPTY The RX buffer was empty. + * \retval USART_RX_ERROR An error was deteceted. + */ +extern int usart_read_char(volatile avr32_usart_t *usart, int *c); + +/*! \brief Waits until a character is received, and returns it. + * + * \param usart Base address of the USART instance. + * + * \return The received character, or \ref USART_FAILURE upon error. + */ +extern int usart_getchar(volatile avr32_usart_t *usart); + +/*! \brief Writes one character string to the USART. + * + * \param usart Base address of the USART instance. + * \param string String to be written. + */ +extern void usart_write_line(volatile avr32_usart_t *usart, const char *string); + +/*! \brief Gets and echoes characters until end of line. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Success. + * \retval USART_FAILURE Low-level error detected or ETX character received. + */ +extern int usart_get_echo_line(volatile avr32_usart_t *usart); + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \brief Abort LIN transmission. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_abort(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_LINABT_MASK; +} + +/*! \brief Tests if a LIN transfer has been completed. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a LIN transfer has been completed, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_lin_transfer_completed(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_LINTC_MASK) != 0; +} + +#endif // USART rev. >= 4.0.0 + +//! @} + + +#endif // _USART_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.c new file mode 100644 index 000000000..ad5ecca65 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.c @@ -0,0 +1,87 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ****************************************************************** + * + * \brief Management of the delays. + * + * This file manages the "delays", with or without an OS. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ***************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ___________________________________________________ + +#include "delay.h" + + +//_____ M A C R O S ________________________________________________________ + + +//_____ D E F I N I T I O N S ______________________________________________ + +//! CPU frequency +#ifndef FREERTOS_USED +static unsigned long s_fcpu_hz; +#endif +#if (defined NUTOS_USED) +extern void NutSleep(unsigned long ms); +#endif + +//_____ D E C L A R A T I O N S ____________________________________________ + +void delay_init(unsigned long fcpu_hz) +{ +#ifndef FREERTOS_USED + s_fcpu_hz = fcpu_hz; +#endif +} + + +void delay_ms(unsigned long delay) +{ +#if (defined FREERTOS_USED) + vTaskDelay( (portTickType)TASK_DELAY_MS(delay) ); +#elif (defined NUTOS_USED) + NutSleep(delay); +#else + cpu_delay_ms(delay, s_fcpu_hz); +#endif +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.h new file mode 100644 index 000000000..28113267b --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/DELAY/delay.h @@ -0,0 +1,80 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3 delay management header file. + * + * This file contains definitions and services to handle "delays". + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _DELAY_H_ +#define _DELAY_H_ + +#include "compiler.h" +#ifdef FREERTOS_USED +# include "FreeRTOS.h" +# include "task.h" +#else +# include "cycle_counter.h" +#endif + + +/*! + * \brief Initialize the delay driver. + * + * \param fcpu_hz: CPU frequency in Hz. + */ +extern void delay_init(unsigned long fcpu_hz); + + +/*! + * \brief Waits during at least the specified delay (in millisecond) before returning. + * + * Note that in the case of FreeRTOS, the function will delay the current task for a given number of ms. + * + * \param delay: Number of millisecond to wait. + */ +extern void delay_ms(unsigned long delay); + + +#endif // _DELAY_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dhcp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dhcp.c new file mode 100644 index 000000000..8ef6c8426 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dhcp.c @@ -0,0 +1,1724 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Dynamic Host Configuration Protocol client + * + */ + +/* + * + * Copyright (c) 2001-2004 Leon Woestenberg <leon.woestenberg@gmx.net> + * Copyright (c) 2001-2004 Axon Digital Design B.V., The Netherlands. + * 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 file is a contribution to the lwIP TCP/IP stack. + * The Swedish Institute of Computer Science and Adam Dunkels + * are specifically granted permission to redistribute this + * source code. + * + * Author: Leon Woestenberg <leon.woestenberg@gmx.net> + * + * This is a DHCP client for the lwIP TCP/IP stack. It aims to conform + * with RFC 2131 and RFC 2132. + * + * TODO: + * - Proper parsing of DHCP messages exploiting file/sname field overloading. + * - Add JavaDoc style documentation (API, internals). + * - Support for interfaces other than Ethernet (SLIP, PPP, ...) + * + * Please coordinate changes and requests with Leon Woestenberg + * <leon.woestenberg@gmx.net> + * + * Integration with your code: + * + * In lwip/dhcp.h + * #define DHCP_COARSE_TIMER_SECS (recommended 60 which is a minute) + * #define DHCP_FINE_TIMER_MSECS (recommended 500 which equals TCP coarse timer) + * + * Then have your application call dhcp_coarse_tmr() and + * dhcp_fine_tmr() on the defined intervals. + * + * dhcp_start(struct netif *netif); + * starts a DHCP client instance which configures the interface by + * obtaining an IP address lease and maintaining it. + * + * Use dhcp_release(netif) to end the lease and use dhcp_stop(netif) + * to remove the DHCP client. + * + */ + +#include "lwip/opt.h" + +#if LWIP_DHCP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/stats.h" +#include "lwip/mem.h" +#include "lwip/udp.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/inet.h" +#include "lwip/sys.h" +#include "lwip/dhcp.h" +#include "lwip/autoip.h" +#include "lwip/dns.h" +#include "netif/etharp.h" + +#include <string.h> + +/** Default for DHCP_GLOBAL_XID is 0xABCD0000 + * This can be changed by defining DHCP_GLOBAL_XID and DHCP_GLOBAL_XID_HEADER, e.g. + * #define DHCP_GLOBAL_XID_HEADER "stdlib.h" + * #define DHCP_GLOBAL_XID rand() + */ +#ifdef DHCP_GLOBAL_XID_HEADER +#include DHCP_GLOBAL_XID_HEADER /* include optional starting XID generation prototypes */ +#endif + +/** DHCP_OPTION_MAX_MSG_SIZE is set to the MTU + * MTU is checked to be big enough in dhcp_start */ +#define DHCP_MAX_MSG_LEN(netif) (netif->mtu) +#define DHCP_MAX_MSG_LEN_MIN_REQUIRED 576 +/** Minimum length for reply before packet is parsed */ +#define DHCP_MIN_REPLY_LEN 44 + +#define REBOOT_TRIES 2 + +/* DHCP client state machine functions */ +static void dhcp_handle_ack(struct netif *netif); +static void dhcp_handle_nak(struct netif *netif); +static void dhcp_handle_offer(struct netif *netif); + +static err_t dhcp_discover(struct netif *netif); +static err_t dhcp_select(struct netif *netif); +static void dhcp_bind(struct netif *netif); +#if DHCP_DOES_ARP_CHECK +static void dhcp_check(struct netif *netif); +static err_t dhcp_decline(struct netif *netif); +#endif /* DHCP_DOES_ARP_CHECK */ +static err_t dhcp_rebind(struct netif *netif); +static err_t dhcp_reboot(struct netif *netif); +static void dhcp_set_state(struct dhcp *dhcp, u8_t new_state); + +/* receive, unfold, parse and free incoming messages */ +static void dhcp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, u16_t port); +static err_t dhcp_unfold_reply(struct dhcp *dhcp, struct pbuf *p); +static u8_t *dhcp_get_option_ptr(struct dhcp *dhcp, u8_t option_type); +static u8_t dhcp_get_option_byte(u8_t *ptr); +#if 0 +static u16_t dhcp_get_option_short(u8_t *ptr); +#endif +static u32_t dhcp_get_option_long(u8_t *ptr); +static void dhcp_free_reply(struct dhcp *dhcp); + +/* set the DHCP timers */ +static void dhcp_timeout(struct netif *netif); +static void dhcp_t1_timeout(struct netif *netif); +static void dhcp_t2_timeout(struct netif *netif); + +/* build outgoing messages */ +/* create a DHCP request, fill in common headers */ +static err_t dhcp_create_request(struct netif *netif); +/* free a DHCP request */ +static void dhcp_delete_request(struct netif *netif); +/* add a DHCP option (type, then length in bytes) */ +static void dhcp_option(struct dhcp *dhcp, u8_t option_type, u8_t option_len); +/* add option values */ +static void dhcp_option_byte(struct dhcp *dhcp, u8_t value); +static void dhcp_option_short(struct dhcp *dhcp, u16_t value); +static void dhcp_option_long(struct dhcp *dhcp, u32_t value); +/* always add the DHCP options trailer to end and pad */ +static void dhcp_option_trailer(struct dhcp *dhcp); + +/** + * Back-off the DHCP client (because of a received NAK response). + * + * Back-off the DHCP client because of a received NAK. Receiving a + * NAK means the client asked for something non-sensible, for + * example when it tries to renew a lease obtained on another network. + * + * We clear any existing set IP address and restart DHCP negotiation + * afresh (as per RFC2131 3.2.3). + * + * @param netif the netif under DHCP control + */ +static void +dhcp_handle_nak(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_handle_nak(netif=%p) %c%c%"U16_F"\n", + (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num)); + /* Set the interface down since the address must no longer be used, as per RFC2131 */ + netif_set_down(netif); + /* remove IP address from interface */ + netif_set_ipaddr(netif, IP_ADDR_ANY); + netif_set_gw(netif, IP_ADDR_ANY); + netif_set_netmask(netif, IP_ADDR_ANY); + /* Change to a defined state */ + dhcp_set_state(dhcp, DHCP_BACKING_OFF); + /* We can immediately restart discovery */ + dhcp_discover(netif); +} + +#if DHCP_DOES_ARP_CHECK +/** + * Checks if the offered IP address is already in use. + * + * It does so by sending an ARP request for the offered address and + * entering CHECKING state. If no ARP reply is received within a small + * interval, the address is assumed to be free for use by us. + * + * @param netif the netif under DHCP control + */ +static void +dhcp_check(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result; + u16_t msecs; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_check(netif=%p) %c%c\n", (void *)netif, (s16_t)netif->name[0], + (s16_t)netif->name[1])); + dhcp_set_state(dhcp, DHCP_CHECKING); + /* create an ARP query for the offered IP address, expecting that no host + responds, as the IP address should not be in use. */ + result = etharp_query(netif, &dhcp->offered_ip_addr, NULL); + if (result != ERR_OK) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, ("dhcp_check: could not perform ARP query\n")); + } + dhcp->tries++; + msecs = 500; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_check(): set request timeout %"U16_F" msecs\n", msecs)); +} +#endif /* DHCP_DOES_ARP_CHECK */ + +/** + * Remember the configuration offered by a DHCP server. + * + * @param netif the netif under DHCP control + */ +static void +dhcp_handle_offer(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + /* obtain the server address */ + u8_t *option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_SERVER_ID); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_handle_offer(netif=%p) %c%c%"U16_F"\n", + (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num)); + if (option_ptr != NULL) { + dhcp->server_ip_addr.addr = htonl(dhcp_get_option_long(&option_ptr[2])); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_handle_offer(): server 0x%08"X32_F"\n", dhcp->server_ip_addr.addr)); + /* remember offered address */ + ip_addr_set(&dhcp->offered_ip_addr, (struct ip_addr *)&dhcp->msg_in->yiaddr); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_handle_offer(): offer for 0x%08"X32_F"\n", dhcp->offered_ip_addr.addr)); + + dhcp_select(netif); + } +} + +/** + * Select a DHCP server offer out of all offers. + * + * Simply select the first offer received. + * + * @param netif the netif under DHCP control + * @return lwIP specific error (see error.h) + */ +static err_t +dhcp_select(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result; + u16_t msecs; +#if LWIP_NETIF_HOSTNAME + const char *p; +#endif /* LWIP_NETIF_HOSTNAME */ + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_select(netif=%p) %c%c%"U16_F"\n", (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num)); + dhcp_set_state(dhcp, DHCP_REQUESTING); + + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_REQUEST); + + dhcp_option(dhcp, DHCP_OPTION_MAX_MSG_SIZE, DHCP_OPTION_MAX_MSG_SIZE_LEN); + dhcp_option_short(dhcp, DHCP_MAX_MSG_LEN(netif)); + + /* MUST request the offered IP address */ + dhcp_option(dhcp, DHCP_OPTION_REQUESTED_IP, 4); + dhcp_option_long(dhcp, ntohl(dhcp->offered_ip_addr.addr)); + + dhcp_option(dhcp, DHCP_OPTION_SERVER_ID, 4); + dhcp_option_long(dhcp, ntohl(dhcp->server_ip_addr.addr)); + + dhcp_option(dhcp, DHCP_OPTION_PARAMETER_REQUEST_LIST, 4/*num options*/); + dhcp_option_byte(dhcp, DHCP_OPTION_SUBNET_MASK); + dhcp_option_byte(dhcp, DHCP_OPTION_ROUTER); + dhcp_option_byte(dhcp, DHCP_OPTION_BROADCAST); + dhcp_option_byte(dhcp, DHCP_OPTION_DNS_SERVER); + +#if LWIP_NETIF_HOSTNAME + p = (const char*)netif->hostname; + if (p != NULL) { + dhcp_option(dhcp, DHCP_OPTION_HOSTNAME, strlen(p)); + while (*p) { + dhcp_option_byte(dhcp, *p++); + } + } +#endif /* LWIP_NETIF_HOSTNAME */ + + dhcp_option_trailer(dhcp); + /* shrink the pbuf to the actual content length */ + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + /* send broadcast to any DHCP server */ + udp_sendto_if(dhcp->pcb, dhcp->p_out, IP_ADDR_BROADCAST, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_select: REQUESTING\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, ("dhcp_select: could not allocate DHCP request\n")); + } + dhcp->tries++; + msecs = (dhcp->tries < 6 ? 1 << dhcp->tries : 60) * 1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_select(): set request timeout %"U16_F" msecs\n", msecs)); + return result; +} + +/** + * The DHCP timer that checks for lease renewal/rebind timeouts. + * + */ +void +dhcp_coarse_tmr() +{ + struct netif *netif = netif_list; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_coarse_tmr()\n")); + /* iterate through all network interfaces */ + while (netif != NULL) { + /* only act on DHCP configured interfaces */ + if (netif->dhcp != NULL) { + /* timer is active (non zero), and triggers (zeroes) now? */ + if (netif->dhcp->t2_timeout-- == 1) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_coarse_tmr(): t2 timeout\n")); + /* this clients' rebind timeout triggered */ + dhcp_t2_timeout(netif); + /* timer is active (non zero), and triggers (zeroes) now */ + } else if (netif->dhcp->t1_timeout-- == 1) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_coarse_tmr(): t1 timeout\n")); + /* this clients' renewal timeout triggered */ + dhcp_t1_timeout(netif); + } + } + /* proceed to next netif */ + netif = netif->next; + } +} + +/** + * DHCP transaction timeout handling + * + * A DHCP server is expected to respond within a short period of time. + * This timer checks whether an outstanding DHCP request is timed out. + * + */ +void +dhcp_fine_tmr() +{ + struct netif *netif = netif_list; + /* loop through netif's */ + while (netif != NULL) { + /* only act on DHCP configured interfaces */ + if (netif->dhcp != NULL) { + /* timer is active (non zero), and is about to trigger now */ + if (netif->dhcp->request_timeout > 1) { + netif->dhcp->request_timeout--; + } + else if (netif->dhcp->request_timeout == 1) { + netif->dhcp->request_timeout--; + /* { netif->dhcp->request_timeout == 0 } */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_fine_tmr(): request timeout\n")); + /* this clients' request timeout triggered */ + dhcp_timeout(netif); + } + } + /* proceed to next network interface */ + netif = netif->next; + } +} + +/** + * A DHCP negotiation transaction, or ARP request, has timed out. + * + * The timer that was started with the DHCP or ARP request has + * timed out, indicating no response was received in time. + * + * @param netif the netif under DHCP control + */ +static void +dhcp_timeout(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_timeout()\n")); + /* back-off period has passed, or server selection timed out */ + if ((dhcp->state == DHCP_BACKING_OFF) || (dhcp->state == DHCP_SELECTING)) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_timeout(): restarting discovery\n")); + dhcp_discover(netif); + /* receiving the requested lease timed out */ + } else if (dhcp->state == DHCP_REQUESTING) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_timeout(): REQUESTING, DHCP request timed out\n")); + if (dhcp->tries <= 5) { + dhcp_select(netif); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_timeout(): REQUESTING, releasing, restarting\n")); + dhcp_release(netif); + dhcp_discover(netif); + } +#if DHCP_DOES_ARP_CHECK + /* received no ARP reply for the offered address (which is good) */ + } else if (dhcp->state == DHCP_CHECKING) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_timeout(): CHECKING, ARP request timed out\n")); + if (dhcp->tries <= 1) { + dhcp_check(netif); + /* no ARP replies on the offered address, + looks like the IP address is indeed free */ + } else { + /* bind the interface to the offered address */ + dhcp_bind(netif); + } +#endif /* DHCP_DOES_ARP_CHECK */ + } + /* did not get response to renew request? */ + else if (dhcp->state == DHCP_RENEWING) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_timeout(): RENEWING, DHCP request timed out\n")); + /* just retry renewal */ + /* note that the rebind timer will eventually time-out if renew does not work */ + dhcp_renew(netif); + /* did not get response to rebind request? */ + } else if (dhcp->state == DHCP_REBINDING) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_timeout(): REBINDING, DHCP request timed out\n")); + if (dhcp->tries <= 8) { + dhcp_rebind(netif); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_timeout(): RELEASING, DISCOVERING\n")); + dhcp_release(netif); + dhcp_discover(netif); + } + } else if (dhcp->state == DHCP_REBOOTING) { + if (dhcp->tries < REBOOT_TRIES) { + dhcp_reboot(netif); + } else { + dhcp_discover(netif); + } + } +} + +/** + * The renewal period has timed out. + * + * @param netif the netif under DHCP control + */ +static void +dhcp_t1_timeout(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_t1_timeout()\n")); + if ((dhcp->state == DHCP_REQUESTING) || (dhcp->state == DHCP_BOUND) || (dhcp->state == DHCP_RENEWING)) { + /* just retry to renew - note that the rebind timer (t2) will + * eventually time-out if renew tries fail. */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_t1_timeout(): must renew\n")); + dhcp_renew(netif); + } +} + +/** + * The rebind period has timed out. + * + * @param netif the netif under DHCP control + */ +static void +dhcp_t2_timeout(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_t2_timeout()\n")); + if ((dhcp->state == DHCP_REQUESTING) || (dhcp->state == DHCP_BOUND) || (dhcp->state == DHCP_RENEWING)) { + /* just retry to rebind */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_t2_timeout(): must rebind\n")); + dhcp_rebind(netif); + } +} + +/** + * Handle a DHCP ACK packet + * + * @param netif the netif under DHCP control + */ +static void +dhcp_handle_ack(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + u8_t *option_ptr; + /* clear options we might not get from the ACK */ + dhcp->offered_sn_mask.addr = 0; + dhcp->offered_gw_addr.addr = 0; + dhcp->offered_bc_addr.addr = 0; + + /* lease time given? */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_LEASE_TIME); + if (option_ptr != NULL) { + /* remember offered lease time */ + dhcp->offered_t0_lease = dhcp_get_option_long(option_ptr + 2); + } + /* renewal period given? */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_T1); + if (option_ptr != NULL) { + /* remember given renewal period */ + dhcp->offered_t1_renew = dhcp_get_option_long(option_ptr + 2); + } else { + /* calculate safe periods for renewal */ + dhcp->offered_t1_renew = dhcp->offered_t0_lease / 2; + } + + /* renewal period given? */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_T2); + if (option_ptr != NULL) { + /* remember given rebind period */ + dhcp->offered_t2_rebind = dhcp_get_option_long(option_ptr + 2); + } else { + /* calculate safe periods for rebinding */ + dhcp->offered_t2_rebind = dhcp->offered_t0_lease; + } + + /* (y)our internet address */ + ip_addr_set(&dhcp->offered_ip_addr, &dhcp->msg_in->yiaddr); + +/** + * Patch #1308 + * TODO: we must check if the file field is not overloaded by DHCP options! + */ +#if 0 + /* boot server address */ + ip_addr_set(&dhcp->offered_si_addr, &dhcp->msg_in->siaddr); + /* boot file name */ + if (dhcp->msg_in->file[0]) { + dhcp->boot_file_name = mem_malloc(strlen(dhcp->msg_in->file) + 1); + strcpy(dhcp->boot_file_name, dhcp->msg_in->file); + } +#endif + + /* subnet mask */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_SUBNET_MASK); + /* subnet mask given? */ + if (option_ptr != NULL) { + dhcp->offered_sn_mask.addr = htonl(dhcp_get_option_long(&option_ptr[2])); + } + + /* gateway router */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_ROUTER); + if (option_ptr != NULL) { + dhcp->offered_gw_addr.addr = htonl(dhcp_get_option_long(&option_ptr[2])); + } + + /* broadcast address */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_BROADCAST); + if (option_ptr != NULL) { + dhcp->offered_bc_addr.addr = htonl(dhcp_get_option_long(&option_ptr[2])); + } + + /* DNS servers */ + option_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_DNS_SERVER); + if (option_ptr != NULL) { + u8_t n; + dhcp->dns_count = dhcp_get_option_byte(&option_ptr[1]) / (u32_t)sizeof(struct ip_addr); + /* limit to at most DHCP_MAX_DNS DNS servers */ + if (dhcp->dns_count > DHCP_MAX_DNS) + dhcp->dns_count = DHCP_MAX_DNS; + for (n = 0; n < dhcp->dns_count; n++) { + dhcp->offered_dns_addr[n].addr = htonl(dhcp_get_option_long(&option_ptr[2 + n * 4])); +#if LWIP_DNS + dns_setserver( n, (struct ip_addr *)(&(dhcp->offered_dns_addr[n].addr))); +#endif /* LWIP_DNS */ + } +#if LWIP_DNS + dns_setserver( n, (struct ip_addr *)(&ip_addr_any)); +#endif /* LWIP_DNS */ + } +} + +/** + * Start DHCP negotiation for a network interface. + * + * If no DHCP client instance was attached to this interface, + * a new client is created first. If a DHCP client instance + * was already present, it restarts negotiation. + * + * @param netif The lwIP network interface + * @return lwIP error code + * - ERR_OK - No error + * - ERR_MEM - Out of memory + */ +err_t +dhcp_start(struct netif *netif) +{ + struct dhcp *dhcp; + err_t result = ERR_OK; + + LWIP_ERROR("netif != NULL", (netif != NULL), return ERR_ARG;); + dhcp = netif->dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_start(netif=%p) %c%c%"U16_F"\n", (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num)); + /* Remove the flag that says this netif is handled by DHCP, + it is set when we succeeded starting. */ + netif->flags &= ~NETIF_FLAG_DHCP; + + /* check MTU of the netif */ + if (netif->mtu < DHCP_MAX_MSG_LEN_MIN_REQUIRED) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_start(): Cannot use this netif with DHCP: MTU is too small\n")); + return ERR_MEM; + } + + /* no DHCP client attached yet? */ + if (dhcp == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_start(): starting new DHCP client\n")); + dhcp = mem_malloc(sizeof(struct dhcp)); + if (dhcp == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_start(): could not allocate dhcp\n")); + return ERR_MEM; + } + /* store this dhcp client in the netif */ + netif->dhcp = dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_start(): allocated dhcp")); + /* already has DHCP client attached */ + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_start(): restarting DHCP configuration\n")); + if (dhcp->pcb != NULL) { + udp_remove(dhcp->pcb); + } + LWIP_ASSERT("pbuf p_out wasn't freed", dhcp->p_out == NULL); + LWIP_ASSERT("reply wasn't freed", dhcp->msg_in == NULL && + dhcp->options_in == NULL && dhcp->options_in_len == 0); + } + + /* clear data structure */ + memset(dhcp, 0, sizeof(struct dhcp)); + /* allocate UDP PCB */ + dhcp->pcb = udp_new(); + if (dhcp->pcb == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_start(): could not obtain pcb\n")); + mem_free((void *)dhcp); + netif->dhcp = dhcp = NULL; + return ERR_MEM; + } +#if IP_SOF_BROADCAST + dhcp->pcb->so_options|=SOF_BROADCAST; +#endif /* IP_SOF_BROADCAST */ + /* set up local and remote port for the pcb */ + udp_bind(dhcp->pcb, IP_ADDR_ANY, DHCP_CLIENT_PORT); + udp_connect(dhcp->pcb, IP_ADDR_ANY, DHCP_SERVER_PORT); + /* set up the recv callback and argument */ + udp_recv(dhcp->pcb, dhcp_recv, netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_start(): starting DHCP configuration\n")); + /* (re)start the DHCP negotiation */ + result = dhcp_discover(netif); + if (result != ERR_OK) { + /* free resources allocated above */ + dhcp_stop(netif); + return ERR_MEM; + } + /* Set the flag that says this netif is handled by DHCP. */ + netif->flags |= NETIF_FLAG_DHCP; + return result; +} + +/** + * Inform a DHCP server of our manual configuration. + * + * This informs DHCP servers of our fixed IP address configuration + * by sending an INFORM message. It does not involve DHCP address + * configuration, it is just here to be nice to the network. + * + * @param netif The lwIP network interface + */ +void +dhcp_inform(struct netif *netif) +{ + struct dhcp *dhcp, *old_dhcp; + err_t result = ERR_OK; + dhcp = mem_malloc(sizeof(struct dhcp)); + if (dhcp == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_inform(): could not allocate dhcp\n")); + return; + } + memset(dhcp, 0, sizeof(struct dhcp)); + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_inform(): allocated dhcp\n")); + dhcp->pcb = udp_new(); + if (dhcp->pcb == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_inform(): could not obtain pcb")); + goto free_dhcp_and_return; + } + old_dhcp = netif->dhcp; + netif->dhcp = dhcp; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_inform(): created new udp pcb\n")); + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_INFORM); + + dhcp_option(dhcp, DHCP_OPTION_MAX_MSG_SIZE, DHCP_OPTION_MAX_MSG_SIZE_LEN); + dhcp_option_short(dhcp, DHCP_MAX_MSG_LEN(netif)); + + dhcp_option_trailer(dhcp); + + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + +#if IP_SOF_BROADCAST + dhcp->pcb->so_options|=SOF_BROADCAST; +#endif /* IP_SOF_BROADCAST */ + udp_bind(dhcp->pcb, IP_ADDR_ANY, DHCP_CLIENT_PORT); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_inform: INFORMING\n")); + udp_sendto_if(dhcp->pcb, dhcp->p_out, IP_ADDR_BROADCAST, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_inform: could not allocate DHCP request\n")); + } + + udp_remove(dhcp->pcb); + dhcp->pcb = NULL; + netif->dhcp = old_dhcp; +free_dhcp_and_return: + mem_free((void *)dhcp); +} + +/** Handle a possible change in the network configuration. + * + * This enters the REBOOTING state to verify that the currently bound + * address is still valid. + */ +void +dhcp_network_changed(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + if (!dhcp) + return; + switch (dhcp->state) { + case DHCP_REBINDING: + case DHCP_RENEWING: + case DHCP_BOUND: + case DHCP_REBOOTING: + netif_set_down(netif); + dhcp->tries = 0; + dhcp_reboot(netif); + break; + case DHCP_OFF: + /* stay off */ + break; + default: + dhcp->tries = 0; + dhcp_discover(netif); + break; + } +} + +#if DHCP_DOES_ARP_CHECK +/** + * Match an ARP reply with the offered IP address. + * + * @param netif the network interface on which the reply was received + * @param addr The IP address we received a reply from + */ +void dhcp_arp_reply(struct netif *netif, struct ip_addr *addr) +{ + LWIP_ERROR("netif != NULL", (netif != NULL), return;); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_arp_reply()\n")); + /* is a DHCP client doing an ARP check? */ + if ((netif->dhcp != NULL) && (netif->dhcp->state == DHCP_CHECKING)) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_arp_reply(): CHECKING, arp reply for 0x%08"X32_F"\n", addr->addr)); + /* did a host respond with the address we + were offered by the DHCP server? */ + if (ip_addr_cmp(addr, &netif->dhcp->offered_ip_addr)) { + /* we will not accept the offered address */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE | LWIP_DBG_LEVEL_WARNING, + ("dhcp_arp_reply(): arp reply matched with offered address, declining\n")); + dhcp_decline(netif); + } + } +} + +/** + * Decline an offered lease. + * + * Tell the DHCP server we do not accept the offered address. + * One reason to decline the lease is when we find out the address + * is already in use by another host (through ARP). + * + * @param netif the netif under DHCP control + */ +static err_t +dhcp_decline(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result = ERR_OK; + u16_t msecs; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_decline()\n")); + dhcp_set_state(dhcp, DHCP_BACKING_OFF); + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_DECLINE); + + dhcp_option(dhcp, DHCP_OPTION_REQUESTED_IP, 4); + dhcp_option_long(dhcp, ntohl(dhcp->offered_ip_addr.addr)); + + dhcp_option_trailer(dhcp); + /* resize pbuf to reflect true size of options */ + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + /* per section 4.4.4, broadcast DECLINE messages */ + udp_sendto_if(dhcp->pcb, dhcp->p_out, IP_ADDR_BROADCAST, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_decline: BACKING OFF\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("dhcp_decline: could not allocate DHCP request\n")); + } + dhcp->tries++; + msecs = 10*1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_decline(): set request timeout %"U16_F" msecs\n", msecs)); + return result; +} +#endif + + +/** + * Start the DHCP process, discover a DHCP server. + * + * @param netif the netif under DHCP control + */ +static err_t +dhcp_discover(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result = ERR_OK; + u16_t msecs; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_discover()\n")); + ip_addr_set(&dhcp->offered_ip_addr, IP_ADDR_ANY); + dhcp_set_state(dhcp, DHCP_SELECTING); + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_discover: making request\n")); + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_DISCOVER); + + dhcp_option(dhcp, DHCP_OPTION_MAX_MSG_SIZE, DHCP_OPTION_MAX_MSG_SIZE_LEN); + dhcp_option_short(dhcp, DHCP_MAX_MSG_LEN(netif)); + + dhcp_option(dhcp, DHCP_OPTION_PARAMETER_REQUEST_LIST, 4/*num options*/); + dhcp_option_byte(dhcp, DHCP_OPTION_SUBNET_MASK); + dhcp_option_byte(dhcp, DHCP_OPTION_ROUTER); + dhcp_option_byte(dhcp, DHCP_OPTION_BROADCAST); + dhcp_option_byte(dhcp, DHCP_OPTION_DNS_SERVER); + + dhcp_option_trailer(dhcp); + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_discover: realloc()ing\n")); + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_discover: sendto(DISCOVER, IP_ADDR_BROADCAST, DHCP_SERVER_PORT)\n")); + udp_sendto_if(dhcp->pcb, dhcp->p_out, IP_ADDR_BROADCAST, DHCP_SERVER_PORT, netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_discover: deleting()ing\n")); + dhcp_delete_request(netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_discover: SELECTING\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_discover: could not allocate DHCP request\n")); + } + dhcp->tries++; +#if LWIP_DHCP_AUTOIP_COOP + if(dhcp->tries >= LWIP_DHCP_AUTOIP_COOP_TRIES && dhcp->autoip_coop_state == DHCP_AUTOIP_COOP_STATE_OFF) { + dhcp->autoip_coop_state = DHCP_AUTOIP_COOP_STATE_ON; + autoip_start(netif); + } +#endif /* LWIP_DHCP_AUTOIP_COOP */ + msecs = (dhcp->tries < 6 ? 1 << dhcp->tries : 60) * 1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_discover(): set request timeout %"U16_F" msecs\n", msecs)); + return result; +} + + +/** + * Bind the interface to the offered IP address. + * + * @param netif network interface to bind to the offered address + */ +static void +dhcp_bind(struct netif *netif) +{ + u32_t timeout; + struct dhcp *dhcp; + struct ip_addr sn_mask, gw_addr; + LWIP_ERROR("dhcp_bind: netif != NULL", (netif != NULL), return;); + dhcp = netif->dhcp; + LWIP_ERROR("dhcp_bind: dhcp != NULL", (dhcp != NULL), return;); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_bind(netif=%p) %c%c%"U16_F"\n", (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num)); + + /* temporary DHCP lease? */ + if (dhcp->offered_t1_renew != 0xffffffffUL) { + /* set renewal period timer */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_bind(): t1 renewal timer %"U32_F" secs\n", dhcp->offered_t1_renew)); + timeout = (dhcp->offered_t1_renew + DHCP_COARSE_TIMER_SECS / 2) / DHCP_COARSE_TIMER_SECS; + if(timeout > 0xffff) { + timeout = 0xffff; + } + dhcp->t1_timeout = (u16_t)timeout; + if (dhcp->t1_timeout == 0) { + dhcp->t1_timeout = 1; + } + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_bind(): set request timeout %"U32_F" msecs\n", dhcp->offered_t1_renew*1000)); + } + /* set renewal period timer */ + if (dhcp->offered_t2_rebind != 0xffffffffUL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_bind(): t2 rebind timer %"U32_F" secs\n", dhcp->offered_t2_rebind)); + timeout = (dhcp->offered_t2_rebind + DHCP_COARSE_TIMER_SECS / 2) / DHCP_COARSE_TIMER_SECS; + if(timeout > 0xffff) { + timeout = 0xffff; + } + dhcp->t2_timeout = (u16_t)timeout; + if (dhcp->t2_timeout == 0) { + dhcp->t2_timeout = 1; + } + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_bind(): set request timeout %"U32_F" msecs\n", dhcp->offered_t2_rebind*1000)); + } + /* copy offered network mask */ + ip_addr_set(&sn_mask, &dhcp->offered_sn_mask); + + /* subnet mask not given? */ + /* TODO: this is not a valid check. what if the network mask is 0? */ + if (sn_mask.addr == 0) { + /* choose a safe subnet mask given the network class */ + u8_t first_octet = ip4_addr1(&sn_mask); + if (first_octet <= 127) { + sn_mask.addr = htonl(0xff000000); + } else if (first_octet >= 192) { + sn_mask.addr = htonl(0xffffff00); + } else { + sn_mask.addr = htonl(0xffff0000); + } + } + + ip_addr_set(&gw_addr, &dhcp->offered_gw_addr); + /* gateway address not given? */ + if (gw_addr.addr == 0) { + /* copy network address */ + gw_addr.addr = (dhcp->offered_ip_addr.addr & sn_mask.addr); + /* use first host address on network as gateway */ + gw_addr.addr |= htonl(0x00000001); + } + +#if LWIP_DHCP_AUTOIP_COOP + if(dhcp->autoip_coop_state == DHCP_AUTOIP_COOP_STATE_ON) { + autoip_stop(netif); + dhcp->autoip_coop_state = DHCP_AUTOIP_COOP_STATE_OFF; + } +#endif /* LWIP_DHCP_AUTOIP_COOP */ + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_bind(): IP: 0x%08"X32_F"\n", dhcp->offered_ip_addr.addr)); + netif_set_ipaddr(netif, &dhcp->offered_ip_addr); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_bind(): SN: 0x%08"X32_F"\n", sn_mask.addr)); + netif_set_netmask(netif, &sn_mask); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_STATE, ("dhcp_bind(): GW: 0x%08"X32_F"\n", gw_addr.addr)); + netif_set_gw(netif, &gw_addr); + /* bring the interface up */ + netif_set_up(netif); + /* netif is now bound to DHCP leased address */ + dhcp_set_state(dhcp, DHCP_BOUND); +} + +/** + * Renew an existing DHCP lease at the involved DHCP server. + * + * @param netif network interface which must renew its lease + */ +err_t +dhcp_renew(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result; + u16_t msecs; +#if LWIP_NETIF_HOSTNAME + const char *p; +#endif /* LWIP_NETIF_HOSTNAME */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_renew()\n")); + dhcp_set_state(dhcp, DHCP_RENEWING); + + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_REQUEST); + + dhcp_option(dhcp, DHCP_OPTION_MAX_MSG_SIZE, DHCP_OPTION_MAX_MSG_SIZE_LEN); + dhcp_option_short(dhcp, DHCP_MAX_MSG_LEN(netif)); + +#if LWIP_NETIF_HOSTNAME + p = (const char*)netif->hostname; + if (p != NULL) { + dhcp_option(dhcp, DHCP_OPTION_HOSTNAME, strlen(p)); + while (*p) { + dhcp_option_byte(dhcp, *p++); + } + } +#endif /* LWIP_NETIF_HOSTNAME */ + +#if 0 + dhcp_option(dhcp, DHCP_OPTION_REQUESTED_IP, 4); + dhcp_option_long(dhcp, ntohl(dhcp->offered_ip_addr.addr)); +#endif + +#if 0 + dhcp_option(dhcp, DHCP_OPTION_SERVER_ID, 4); + dhcp_option_long(dhcp, ntohl(dhcp->server_ip_addr.addr)); +#endif + /* append DHCP message trailer */ + dhcp_option_trailer(dhcp); + + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + udp_sendto_if(dhcp->pcb, dhcp->p_out, &dhcp->server_ip_addr, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_renew: RENEWING\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_renew: could not allocate DHCP request\n")); + } + dhcp->tries++; + /* back-off on retries, but to a maximum of 20 seconds */ + msecs = dhcp->tries < 10 ? dhcp->tries * 2000 : 20 * 1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_renew(): set request timeout %"U16_F" msecs\n", msecs)); + return result; +} + +/** + * Rebind with a DHCP server for an existing DHCP lease. + * + * @param netif network interface which must rebind with a DHCP server + */ +static err_t +dhcp_rebind(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result; + u16_t msecs; +#if LWIP_NETIF_HOSTNAME + const char *p; +#endif /* LWIP_NETIF_HOSTNAME */ + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_rebind()\n")); + dhcp_set_state(dhcp, DHCP_REBINDING); + + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_REQUEST); + + dhcp_option(dhcp, DHCP_OPTION_MAX_MSG_SIZE, DHCP_OPTION_MAX_MSG_SIZE_LEN); + dhcp_option_short(dhcp, DHCP_MAX_MSG_LEN(netif)); + +#if LWIP_NETIF_HOSTNAME + p = (const char*)netif->hostname; + if (p != NULL) { + dhcp_option(dhcp, DHCP_OPTION_HOSTNAME, strlen(p)); + while (*p) { + dhcp_option_byte(dhcp, *p++); + } + } +#endif /* LWIP_NETIF_HOSTNAME */ + +#if 0 + dhcp_option(dhcp, DHCP_OPTION_REQUESTED_IP, 4); + dhcp_option_long(dhcp, ntohl(dhcp->offered_ip_addr.addr)); + + dhcp_option(dhcp, DHCP_OPTION_SERVER_ID, 4); + dhcp_option_long(dhcp, ntohl(dhcp->server_ip_addr.addr)); +#endif + + dhcp_option_trailer(dhcp); + + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + /* broadcast to server */ + udp_sendto_if(dhcp->pcb, dhcp->p_out, IP_ADDR_BROADCAST, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_rebind: REBINDING\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_rebind: could not allocate DHCP request\n")); + } + dhcp->tries++; + msecs = dhcp->tries < 10 ? dhcp->tries * 1000 : 10 * 1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_rebind(): set request timeout %"U16_F" msecs\n", msecs)); + return result; +} + +/** + * Enter REBOOTING state to verify an existing lease + * + * @param netif network interface which must reboot + */ +static err_t +dhcp_reboot(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result; + u16_t msecs; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_reboot()\n")); + dhcp_set_state(dhcp, DHCP_REBOOTING); + + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_REQUEST); + + dhcp_option(dhcp, DHCP_OPTION_MAX_MSG_SIZE, DHCP_OPTION_MAX_MSG_SIZE_LEN); + dhcp_option_short(dhcp, 576); + + dhcp_option(dhcp, DHCP_OPTION_REQUESTED_IP, 4); + dhcp_option_long(dhcp, ntohl(dhcp->offered_ip_addr.addr)); + + dhcp_option_trailer(dhcp); + + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + /* broadcast to server */ + udp_sendto_if(dhcp->pcb, dhcp->p_out, IP_ADDR_BROADCAST, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_reboot: REBOOTING\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_reboot: could not allocate DHCP request\n")); + } + dhcp->tries++; + msecs = dhcp->tries < 10 ? dhcp->tries * 1000 : 10 * 1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_reboot(): set request timeout %"U16_F" msecs\n", msecs)); + return result; +} + + +/** + * Release a DHCP lease. + * + * @param netif network interface which must release its lease + */ +err_t +dhcp_release(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + err_t result; + u16_t msecs; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_release()\n")); + + /* idle DHCP client */ + dhcp_set_state(dhcp, DHCP_OFF); + /* clean old DHCP offer */ + dhcp->server_ip_addr.addr = 0; + dhcp->offered_ip_addr.addr = dhcp->offered_sn_mask.addr = 0; + dhcp->offered_gw_addr.addr = dhcp->offered_bc_addr.addr = 0; + dhcp->offered_t0_lease = dhcp->offered_t1_renew = dhcp->offered_t2_rebind = 0; + dhcp->dns_count = 0; + + /* create and initialize the DHCP message header */ + result = dhcp_create_request(netif); + if (result == ERR_OK) { + dhcp_option(dhcp, DHCP_OPTION_MESSAGE_TYPE, DHCP_OPTION_MESSAGE_TYPE_LEN); + dhcp_option_byte(dhcp, DHCP_RELEASE); + + dhcp_option_trailer(dhcp); + + pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len); + + udp_sendto_if(dhcp->pcb, dhcp->p_out, &dhcp->server_ip_addr, DHCP_SERVER_PORT, netif); + dhcp_delete_request(netif); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_release: RELEASED, DHCP_OFF\n")); + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("dhcp_release: could not allocate DHCP request\n")); + } + dhcp->tries++; + msecs = dhcp->tries < 10 ? dhcp->tries * 1000 : 10 * 1000; + dhcp->request_timeout = (msecs + DHCP_FINE_TIMER_MSECS - 1) / DHCP_FINE_TIMER_MSECS; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("dhcp_release(): set request timeout %"U16_F" msecs\n", msecs)); + /* bring the interface down */ + netif_set_down(netif); + /* remove IP address from interface */ + netif_set_ipaddr(netif, IP_ADDR_ANY); + netif_set_gw(netif, IP_ADDR_ANY); + netif_set_netmask(netif, IP_ADDR_ANY); + + /* TODO: netif_down(netif); */ + return result; +} + +/** + * Remove the DHCP client from the interface. + * + * @param netif The network interface to stop DHCP on + */ +void +dhcp_stop(struct netif *netif) +{ + struct dhcp *dhcp = netif->dhcp; + LWIP_ERROR("dhcp_stop: netif != NULL", (netif != NULL), return;); + /* Remove the flag that says this netif is handled by DHCP. */ + netif->flags &= ~NETIF_FLAG_DHCP; + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_stop()\n")); + /* netif is DHCP configured? */ + if (dhcp != NULL) { +#if LWIP_DHCP_AUTOIP_COOP + if(dhcp->autoip_coop_state == DHCP_AUTOIP_COOP_STATE_ON) { + autoip_stop(netif); + dhcp->autoip_coop_state = DHCP_AUTOIP_COOP_STATE_OFF; + } +#endif /* LWIP_DHCP_AUTOIP_COOP */ + + if (dhcp->pcb != NULL) { + udp_remove(dhcp->pcb); + dhcp->pcb = NULL; + } + LWIP_ASSERT("reply wasn't freed", dhcp->msg_in == NULL && + dhcp->options_in == NULL && dhcp->options_in_len == 0); + mem_free((void *)dhcp); + netif->dhcp = NULL; + } +} + +/* + * Set the DHCP state of a DHCP client. + * + * If the state changed, reset the number of tries. + * + * TODO: we might also want to reset the timeout here? + */ +static void +dhcp_set_state(struct dhcp *dhcp, u8_t new_state) +{ + if (new_state != dhcp->state) { + dhcp->state = new_state; + dhcp->tries = 0; + } +} + +/* + * Concatenate an option type and length field to the outgoing + * DHCP message. + * + */ +static void +dhcp_option(struct dhcp *dhcp, u8_t option_type, u8_t option_len) +{ + LWIP_ASSERT("dhcp_option: dhcp->options_out_len + 2 + option_len <= DHCP_OPTIONS_LEN", dhcp->options_out_len + 2U + option_len <= DHCP_OPTIONS_LEN); + dhcp->msg_out->options[dhcp->options_out_len++] = option_type; + dhcp->msg_out->options[dhcp->options_out_len++] = option_len; +} +/* + * Concatenate a single byte to the outgoing DHCP message. + * + */ +static void +dhcp_option_byte(struct dhcp *dhcp, u8_t value) +{ + LWIP_ASSERT("dhcp_option_byte: dhcp->options_out_len < DHCP_OPTIONS_LEN", dhcp->options_out_len < DHCP_OPTIONS_LEN); + dhcp->msg_out->options[dhcp->options_out_len++] = value; +} + +static void +dhcp_option_short(struct dhcp *dhcp, u16_t value) +{ + LWIP_ASSERT("dhcp_option_short: dhcp->options_out_len + 2 <= DHCP_OPTIONS_LEN", dhcp->options_out_len + 2U <= DHCP_OPTIONS_LEN); + dhcp->msg_out->options[dhcp->options_out_len++] = (u8_t)((value & 0xff00U) >> 8); + dhcp->msg_out->options[dhcp->options_out_len++] = (u8_t) (value & 0x00ffU); +} + +static void +dhcp_option_long(struct dhcp *dhcp, u32_t value) +{ + LWIP_ASSERT("dhcp_option_long: dhcp->options_out_len + 4 <= DHCP_OPTIONS_LEN", dhcp->options_out_len + 4U <= DHCP_OPTIONS_LEN); + dhcp->msg_out->options[dhcp->options_out_len++] = (u8_t)((value & 0xff000000UL) >> 24); + dhcp->msg_out->options[dhcp->options_out_len++] = (u8_t)((value & 0x00ff0000UL) >> 16); + dhcp->msg_out->options[dhcp->options_out_len++] = (u8_t)((value & 0x0000ff00UL) >> 8); + dhcp->msg_out->options[dhcp->options_out_len++] = (u8_t)((value & 0x000000ffUL)); +} + +/** + * Extract the DHCP message and the DHCP options. + * + * Extract the DHCP message and the DHCP options, each into a contiguous + * piece of memory. As a DHCP message is variable sized by its options, + * and also allows overriding some fields for options, the easy approach + * is to first unfold the options into a conitguous piece of memory, and + * use that further on. + * + */ +static err_t +dhcp_unfold_reply(struct dhcp *dhcp, struct pbuf *p) +{ + u16_t ret; + LWIP_ERROR("dhcp != NULL", (dhcp != NULL), return ERR_ARG;); + /* free any left-overs from previous unfolds */ + dhcp_free_reply(dhcp); + /* options present? */ + if (p->tot_len > (sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN)) { + dhcp->options_in_len = p->tot_len - (sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN); + dhcp->options_in = mem_malloc(dhcp->options_in_len); + if (dhcp->options_in == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("dhcp_unfold_reply(): could not allocate dhcp->options\n")); + dhcp->options_in_len = 0; + return ERR_MEM; + } + } + dhcp->msg_in = mem_malloc(sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN); + if (dhcp->msg_in == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("dhcp_unfold_reply(): could not allocate dhcp->msg_in\n")); + if (dhcp->options_in != NULL) { + mem_free(dhcp->options_in); + dhcp->options_in = NULL; + dhcp->options_in_len = 0; + } + return ERR_MEM; + } + + /** copy the DHCP message without options */ + ret = pbuf_copy_partial(p, dhcp->msg_in, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN, 0); + LWIP_ASSERT("ret == sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN", ret == sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_unfold_reply(): copied %"U16_F" bytes into dhcp->msg_in[]\n", + sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN)); + + if (dhcp->options_in != NULL) { + /** copy the DHCP options */ + ret = pbuf_copy_partial(p, dhcp->options_in, dhcp->options_in_len, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN); + LWIP_ASSERT("ret == dhcp->options_in_len", ret == dhcp->options_in_len); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_unfold_reply(): copied %"U16_F" bytes to dhcp->options_in[]\n", + dhcp->options_in_len)); + } + LWIP_UNUSED_ARG(ret); + return ERR_OK; +} + +/** + * Free the incoming DHCP message including contiguous copy of + * its DHCP options. + */ +static void dhcp_free_reply(struct dhcp *dhcp) +{ + if (dhcp->msg_in != NULL) { + mem_free((void *)dhcp->msg_in); + dhcp->msg_in = NULL; + } + if (dhcp->options_in) { + mem_free(dhcp->options_in); + dhcp->options_in = NULL; + dhcp->options_in_len = 0; + } + LWIP_DEBUGF(DHCP_DEBUG, ("dhcp_free_reply(): free'd\n")); +} + +/** + * If an incoming DHCP message is in response to us, then trigger the state machine + */ +static void dhcp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, u16_t port) +{ + struct netif *netif = (struct netif *)arg; + struct dhcp *dhcp = netif->dhcp; + struct dhcp_msg *reply_msg = (struct dhcp_msg *)p->payload; + u8_t *options_ptr; + u8_t msg_type; + u8_t i; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_recv(pbuf = %p) from DHCP server %"U16_F".%"U16_F".%"U16_F".%"U16_F" port %"U16_F"\n", (void*)p, + (u16_t)(ntohl(addr->addr) >> 24 & 0xff), (u16_t)(ntohl(addr->addr) >> 16 & 0xff), + (u16_t)(ntohl(addr->addr) >> 8 & 0xff), (u16_t)(ntohl(addr->addr) & 0xff), port)); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("pbuf->len = %"U16_F"\n", p->len)); + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("pbuf->tot_len = %"U16_F"\n", p->tot_len)); + /* prevent warnings about unused arguments */ + LWIP_UNUSED_ARG(pcb); + LWIP_UNUSED_ARG(addr); + LWIP_UNUSED_ARG(port); + + LWIP_ASSERT("reply wasn't freed", dhcp->msg_in == NULL && + dhcp->options_in == NULL && dhcp->options_in_len == 0); + + if (p->len < DHCP_MIN_REPLY_LEN) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, ("DHCP reply message too short\n")); + goto free_pbuf_and_return; + } + + if (reply_msg->op != DHCP_BOOTREPLY) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, ("not a DHCP reply message, but type %"U16_F"\n", (u16_t)reply_msg->op)); + goto free_pbuf_and_return; + } + /* iterate through hardware address and match against DHCP message */ + for (i = 0; i < netif->hwaddr_len; i++) { + if (netif->hwaddr[i] != reply_msg->chaddr[i]) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, + ("netif->hwaddr[%"U16_F"]==%02"X16_F" != reply_msg->chaddr[%"U16_F"]==%02"X16_F"\n", + (u16_t)i, (u16_t)netif->hwaddr[i], (u16_t)i, (u16_t)reply_msg->chaddr[i])); + goto free_pbuf_and_return; + } + } + /* match transaction ID against what we expected */ + if (ntohl(reply_msg->xid) != dhcp->xid) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, + ("transaction id mismatch reply_msg->xid(%"X32_F")!=dhcp->xid(%"X32_F")\n",ntohl(reply_msg->xid),dhcp->xid)); + goto free_pbuf_and_return; + } + /* option fields could be unfold? */ + if (dhcp_unfold_reply(dhcp, p) != ERR_OK) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("problem unfolding DHCP message - too short on memory?\n")); + goto free_pbuf_and_return; + } + + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("searching DHCP_OPTION_MESSAGE_TYPE\n")); + /* obtain pointer to DHCP message type */ + options_ptr = dhcp_get_option_ptr(dhcp, DHCP_OPTION_MESSAGE_TYPE); + if (options_ptr == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, ("DHCP_OPTION_MESSAGE_TYPE option not found\n")); + goto free_pbuf_and_return; + } + + /* read DHCP message type */ + msg_type = dhcp_get_option_byte(options_ptr + 2); + /* message type is DHCP ACK? */ + if (msg_type == DHCP_ACK) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("DHCP_ACK received\n")); + /* in requesting state? */ + if (dhcp->state == DHCP_REQUESTING) { + dhcp_handle_ack(netif); + dhcp->request_timeout = 0; +#if DHCP_DOES_ARP_CHECK + /* check if the acknowledged lease address is already in use */ + dhcp_check(netif); +#else + /* bind interface to the acknowledged lease address */ + dhcp_bind(netif); +#endif + } + /* already bound to the given lease address? */ + else if ((dhcp->state == DHCP_REBOOTING) || (dhcp->state == DHCP_REBINDING) || (dhcp->state == DHCP_RENEWING)) { + dhcp->request_timeout = 0; + dhcp_bind(netif); + } + } + /* received a DHCP_NAK in appropriate state? */ + else if ((msg_type == DHCP_NAK) && + ((dhcp->state == DHCP_REBOOTING) || (dhcp->state == DHCP_REQUESTING) || + (dhcp->state == DHCP_REBINDING) || (dhcp->state == DHCP_RENEWING ))) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("DHCP_NAK received\n")); + dhcp->request_timeout = 0; + dhcp_handle_nak(netif); + } + /* received a DHCP_OFFER in DHCP_SELECTING state? */ + else if ((msg_type == DHCP_OFFER) && (dhcp->state == DHCP_SELECTING)) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("DHCP_OFFER received in DHCP_SELECTING state\n")); + dhcp->request_timeout = 0; + /* remember offered lease */ + dhcp_handle_offer(netif); + } +free_pbuf_and_return: + dhcp_free_reply(dhcp); + pbuf_free(p); +} + +/** + * Create a DHCP request, fill in common headers + * + * @param netif the netif under DHCP control + */ +static err_t +dhcp_create_request(struct netif *netif) +{ + struct dhcp *dhcp; + u16_t i; +#ifndef DHCP_GLOBAL_XID + /** default global transaction identifier starting value (easy to match + * with a packet analyser). We simply increment for each new request. + * Predefine DHCP_GLOBAL_XID to a better value or a function call to generate one + * at runtime, any supporting function prototypes can be defined in DHCP_GLOBAL_XID_HEADER */ + static u32_t xid = 0xABCD0000; +#else + static u32_t xid; + static u8_t xid_initialised = 0; + if (!xid_initialised) { + xid = DHCP_GLOBAL_XID; + xid_initialised = !xid_initialised; + } +#endif + LWIP_ERROR("dhcp_create_request: netif != NULL", (netif != NULL), return ERR_ARG;); + dhcp = netif->dhcp; + LWIP_ERROR("dhcp_create_request: dhcp != NULL", (dhcp != NULL), return ERR_VAL;); + LWIP_ASSERT("dhcp_create_request: dhcp->p_out == NULL", dhcp->p_out == NULL); + LWIP_ASSERT("dhcp_create_request: dhcp->msg_out == NULL", dhcp->msg_out == NULL); + dhcp->p_out = pbuf_alloc(PBUF_TRANSPORT, sizeof(struct dhcp_msg), PBUF_RAM); + if (dhcp->p_out == NULL) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("dhcp_create_request(): could not allocate pbuf\n")); + return ERR_MEM; + } + LWIP_ASSERT("dhcp_create_request: check that first pbuf can hold struct dhcp_msg", + (dhcp->p_out->len >= sizeof(struct dhcp_msg))); + + /* reuse transaction identifier in retransmissions */ + if (dhcp->tries==0) + xid++; + dhcp->xid = xid; + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, + ("transaction id xid(%"X32_F")\n", xid)); + + dhcp->msg_out = (struct dhcp_msg *)dhcp->p_out->payload; + + dhcp->msg_out->op = DHCP_BOOTREQUEST; + /* TODO: make link layer independent */ + dhcp->msg_out->htype = DHCP_HTYPE_ETH; + /* TODO: make link layer independent */ + dhcp->msg_out->hlen = DHCP_HLEN_ETH; + dhcp->msg_out->hops = 0; + dhcp->msg_out->xid = htonl(dhcp->xid); + dhcp->msg_out->secs = 0; + dhcp->msg_out->flags = 0; + dhcp->msg_out->ciaddr.addr = 0; + if (dhcp->state==DHCP_BOUND || dhcp->state==DHCP_RENEWING || dhcp->state==DHCP_REBINDING) { + dhcp->msg_out->ciaddr.addr = netif->ip_addr.addr; + } + dhcp->msg_out->yiaddr.addr = 0; + dhcp->msg_out->siaddr.addr = 0; + dhcp->msg_out->giaddr.addr = 0; + for (i = 0; i < DHCP_CHADDR_LEN; i++) { + /* copy netif hardware address, pad with zeroes */ + dhcp->msg_out->chaddr[i] = (i < netif->hwaddr_len) ? netif->hwaddr[i] : 0/* pad byte*/; + } + for (i = 0; i < DHCP_SNAME_LEN; i++) { + dhcp->msg_out->sname[i] = 0; + } + for (i = 0; i < DHCP_FILE_LEN; i++) { + dhcp->msg_out->file[i] = 0; + } + dhcp->msg_out->cookie = htonl(0x63825363UL); + dhcp->options_out_len = 0; + /* fill options field with an incrementing array (for debugging purposes) */ + for (i = 0; i < DHCP_OPTIONS_LEN; i++) { + dhcp->msg_out->options[i] = (u8_t)i; /* for debugging only, no matter if truncated */ + } + return ERR_OK; +} + +/** + * Free previously allocated memory used to send a DHCP request. + * + * @param netif the netif under DHCP control + */ +static void +dhcp_delete_request(struct netif *netif) +{ + struct dhcp *dhcp; + LWIP_ERROR("dhcp_delete_request: netif != NULL", (netif != NULL), return;); + dhcp = netif->dhcp; + LWIP_ERROR("dhcp_delete_request: dhcp != NULL", (dhcp != NULL), return;); + LWIP_ASSERT("dhcp_delete_request: dhcp->p_out != NULL", dhcp->p_out != NULL); + LWIP_ASSERT("dhcp_delete_request: dhcp->msg_out != NULL", dhcp->msg_out != NULL); + if (dhcp->p_out != NULL) { + pbuf_free(dhcp->p_out); + } + dhcp->p_out = NULL; + dhcp->msg_out = NULL; +} + +/** + * Add a DHCP message trailer + * + * Adds the END option to the DHCP message, and if + * necessary, up to three padding bytes. + * + * @param dhcp DHCP state structure + */ +static void +dhcp_option_trailer(struct dhcp *dhcp) +{ + LWIP_ERROR("dhcp_option_trailer: dhcp != NULL", (dhcp != NULL), return;); + LWIP_ASSERT("dhcp_option_trailer: dhcp->msg_out != NULL\n", dhcp->msg_out != NULL); + LWIP_ASSERT("dhcp_option_trailer: dhcp->options_out_len < DHCP_OPTIONS_LEN\n", dhcp->options_out_len < DHCP_OPTIONS_LEN); + dhcp->msg_out->options[dhcp->options_out_len++] = DHCP_OPTION_END; + /* packet is too small, or not 4 byte aligned? */ + while ((dhcp->options_out_len < DHCP_MIN_OPTIONS_LEN) || (dhcp->options_out_len & 3)) { + /* LWIP_DEBUGF(DHCP_DEBUG,("dhcp_option_trailer:dhcp->options_out_len=%"U16_F", DHCP_OPTIONS_LEN=%"U16_F, dhcp->options_out_len, DHCP_OPTIONS_LEN)); */ + LWIP_ASSERT("dhcp_option_trailer: dhcp->options_out_len < DHCP_OPTIONS_LEN\n", dhcp->options_out_len < DHCP_OPTIONS_LEN); + /* add a fill/padding byte */ + dhcp->msg_out->options[dhcp->options_out_len++] = 0; + } +} + +/** + * Find the offset of a DHCP option inside the DHCP message. + * + * @param dhcp DHCP client + * @param option_type + * + * @return a byte offset into the UDP message where the option was found, or + * zero if the given option was not found. + */ +static u8_t *dhcp_get_option_ptr(struct dhcp *dhcp, u8_t option_type) +{ + u8_t overload = DHCP_OVERLOAD_NONE; + + /* options available? */ + if ((dhcp->options_in != NULL) && (dhcp->options_in_len > 0)) { + /* start with options field */ + u8_t *options = (u8_t *)dhcp->options_in; + u16_t offset = 0; + /* at least 1 byte to read and no end marker, then at least 3 bytes to read? */ + while ((offset < dhcp->options_in_len) && (options[offset] != DHCP_OPTION_END)) { + /* LWIP_DEBUGF(DHCP_DEBUG, ("msg_offset=%"U16_F", q->len=%"U16_F, msg_offset, q->len)); */ + /* are the sname and/or file field overloaded with options? */ + if (options[offset] == DHCP_OPTION_OVERLOAD) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("overloaded message detected\n")); + /* skip option type and length */ + offset += 2; + overload = options[offset++]; + } + /* requested option found */ + else if (options[offset] == option_type) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("option found at offset %"U16_F" in options\n", offset)); + return &options[offset]; + /* skip option */ + } else { + LWIP_DEBUGF(DHCP_DEBUG, ("skipping option %"U16_F" in options\n", options[offset])); + /* skip option type */ + offset++; + /* skip option length, and then length bytes */ + offset += 1 + options[offset]; + } + } + /* is this an overloaded message? */ + if (overload != DHCP_OVERLOAD_NONE) { + u16_t field_len; + if (overload == DHCP_OVERLOAD_FILE) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("overloaded file field\n")); + options = (u8_t *)&dhcp->msg_in->file; + field_len = DHCP_FILE_LEN; + } else if (overload == DHCP_OVERLOAD_SNAME) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("overloaded sname field\n")); + options = (u8_t *)&dhcp->msg_in->sname; + field_len = DHCP_SNAME_LEN; + /* TODO: check if else if () is necessary */ + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("overloaded sname and file field\n")); + options = (u8_t *)&dhcp->msg_in->sname; + field_len = DHCP_FILE_LEN + DHCP_SNAME_LEN; + } + offset = 0; + + /* at least 1 byte to read and no end marker */ + while ((offset < field_len) && (options[offset] != DHCP_OPTION_END)) { + if (options[offset] == option_type) { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("option found at offset=%"U16_F"\n", offset)); + return &options[offset]; + /* skip option */ + } else { + LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("skipping option %"U16_F"\n", options[offset])); + /* skip option type */ + offset++; + offset += 1 + options[offset]; + } + } + } + } + return NULL; +} + +/** + * Return the byte of DHCP option data. + * + * @param client DHCP client. + * @param ptr pointer obtained by dhcp_get_option_ptr(). + * + * @return byte value at the given address. + */ +static u8_t +dhcp_get_option_byte(u8_t *ptr) +{ + LWIP_DEBUGF(DHCP_DEBUG, ("option byte value=%"U16_F"\n", (u16_t)(*ptr))); + return *ptr; +} + +#if 0 /* currently unused */ +/** + * Return the 16-bit value of DHCP option data. + * + * @param client DHCP client. + * @param ptr pointer obtained by dhcp_get_option_ptr(). + * + * @return byte value at the given address. + */ +static u16_t +dhcp_get_option_short(u8_t *ptr) +{ + u16_t value; + value = *ptr++ << 8; + value |= *ptr; + LWIP_DEBUGF(DHCP_DEBUG, ("option short value=%"U16_F"\n", value)); + return value; +} +#endif + +/** + * Return the 32-bit value of DHCP option data. + * + * @param client DHCP client. + * @param ptr pointer obtained by dhcp_get_option_ptr(). + * + * @return byte value at the given address. + */ +static u32_t dhcp_get_option_long(u8_t *ptr) +{ + u32_t value; + value = (u32_t)(*ptr++) << 24; + value |= (u32_t)(*ptr++) << 16; + value |= (u32_t)(*ptr++) << 8; + value |= (u32_t)(*ptr++); + LWIP_DEBUGF(DHCP_DEBUG, ("option long value=%"U32_F"\n", value)); + return value; +} + +#endif /* LWIP_DHCP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dns.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dns.c new file mode 100644 index 000000000..62ccf6314 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/dns.c @@ -0,0 +1,982 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * DNS - host name to IP address resolver. + * + */ + +/** + + * This file implements a DNS host name to IP address resolver. + + * Port to lwIP from uIP + * by Jim Pettinato April 2007 + + * uIP version Copyright (c) 2002-2003, Adam Dunkels. + * 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. + * + * + * DNS.C + * + * The lwIP DNS resolver functions are used to lookup a host name and + * map it to a numerical IP address. It maintains a list of resolved + * hostnames that can be queried with the dns_lookup() function. + * New hostnames can be resolved using the dns_query() function. + * + * The lwIP version of the resolver also adds a non-blocking version of + * gethostbyname() that will work with a raw API application. This function + * checks for an IP address string first and converts it if it is valid. + * gethostbyname() then does a dns_lookup() to see if the name is + * already in the table. If so, the IP is returned. If not, a query is + * issued and the function returns with a ERR_INPROGRESS status. The app + * using the dns client must then go into a waiting state. + * + * Once a hostname has been resolved (or found to be non-existent), + * the resolver code calls a specified callback function (which + * must be implemented by the module that uses the resolver). + */ + +/*----------------------------------------------------------------------------- + * RFC 1035 - Domain names - implementation and specification + * RFC 2181 - Clarifications to the DNS Specification + *----------------------------------------------------------------------------*/ + +/** @todo: define good default values (rfc compliance) */ +/** @todo: improve answer parsing, more checkings... */ +/** @todo: check RFC1035 - 7.3. Processing responses */ + +/*----------------------------------------------------------------------------- + * Includes + *----------------------------------------------------------------------------*/ + +#include "lwip/opt.h" + +#if LWIP_DNS /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/udp.h" +#include "lwip/mem.h" +#include "lwip/dns.h" + +#include <string.h> + +/** DNS server IP address */ +#ifndef DNS_SERVER_ADDRESS +#define DNS_SERVER_ADDRESS inet_addr("208.67.222.222") /* resolver1.opendns.com */ +#endif + +/** DNS server port address */ +#ifndef DNS_SERVER_PORT +#define DNS_SERVER_PORT 53 +#endif + +/** DNS maximum number of retries when asking for a name, before "timeout". */ +#ifndef DNS_MAX_RETRIES +#define DNS_MAX_RETRIES 4 +#endif + +/** DNS resource record max. TTL (one week as default) */ +#ifndef DNS_MAX_TTL +#define DNS_MAX_TTL 604800 +#endif + +/* DNS protocol flags */ +#define DNS_FLAG1_RESPONSE 0x80 +#define DNS_FLAG1_OPCODE_STATUS 0x10 +#define DNS_FLAG1_OPCODE_INVERSE 0x08 +#define DNS_FLAG1_OPCODE_STANDARD 0x00 +#define DNS_FLAG1_AUTHORATIVE 0x04 +#define DNS_FLAG1_TRUNC 0x02 +#define DNS_FLAG1_RD 0x01 +#define DNS_FLAG2_RA 0x80 +#define DNS_FLAG2_ERR_MASK 0x0f +#define DNS_FLAG2_ERR_NONE 0x00 +#define DNS_FLAG2_ERR_NAME 0x03 + +/* DNS protocol states */ +#define DNS_STATE_UNUSED 0 +#define DNS_STATE_NEW 1 +#define DNS_STATE_ASKING 2 +#define DNS_STATE_DONE 3 + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +/** DNS message header */ +struct dns_hdr { + PACK_STRUCT_FIELD(u16_t id); + PACK_STRUCT_FIELD(u8_t flags1); + PACK_STRUCT_FIELD(u8_t flags2); + PACK_STRUCT_FIELD(u16_t numquestions); + PACK_STRUCT_FIELD(u16_t numanswers); + PACK_STRUCT_FIELD(u16_t numauthrr); + PACK_STRUCT_FIELD(u16_t numextrarr); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif +#define SIZEOF_DNS_HDR 12 + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +/** DNS query message structure */ +struct dns_query { + /* DNS query record starts with either a domain name or a pointer + to a name already present somewhere in the packet. */ + PACK_STRUCT_FIELD(u16_t type); + PACK_STRUCT_FIELD(u16_t class); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif +#define SIZEOF_DNS_QUERY 4 + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +/** DNS answer message structure */ +struct dns_answer { + /* DNS answer record starts with either a domain name or a pointer + to a name already present somewhere in the packet. */ + PACK_STRUCT_FIELD(u16_t type); + PACK_STRUCT_FIELD(u16_t class); + PACK_STRUCT_FIELD(u32_t ttl); + PACK_STRUCT_FIELD(u16_t len); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif +#define SIZEOF_DNS_ANSWER 10 + +/** DNS table entry */ +struct dns_table_entry { + u8_t state; + u8_t numdns; + u8_t tmr; + u8_t retries; + u8_t seqno; + u8_t err; + u32_t ttl; + char name[DNS_MAX_NAME_LENGTH]; + struct ip_addr ipaddr; + /* pointer to callback on DNS query done */ + dns_found_callback found; + void *arg; +}; + +#if DNS_LOCAL_HOSTLIST +/** struct used for local host-list */ +struct local_hostlist_entry { + /** static hostname */ + const char *name; + /** static host address in network byteorder */ + u32_t addr; + struct local_hostlist_entry *next; +}; + +#if DNS_LOCAL_HOSTLIST_IS_DYNAMIC +/** Local host-list. For hostnames in this list, no + * external name resolution is performed */ +static struct local_hostlist_entry *local_hostlist_dynamic; +#else /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */ + +/** Defining this allows the local_hostlist_static to be placed in a different + * linker section (e.g. FLASH) */ +#ifndef DNS_LOCAL_HOSTLIST_STORAGE_PRE +#define DNS_LOCAL_HOSTLIST_STORAGE_PRE static +#endif /* DNS_LOCAL_HOSTLIST_STORAGE_PRE */ +/** Defining this allows the local_hostlist_static to be placed in a different + * linker section (e.g. FLASH) */ +#ifndef DNS_LOCAL_HOSTLIST_STORAGE_POST +#define DNS_LOCAL_HOSTLIST_STORAGE_POST +#endif /* DNS_LOCAL_HOSTLIST_STORAGE_POST */ +DNS_LOCAL_HOSTLIST_STORAGE_PRE struct local_hostlist_entry local_hostlist_static[] + DNS_LOCAL_HOSTLIST_STORAGE_POST = DNS_LOCAL_HOSTLIST_INIT; + +#endif /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */ + +static void dns_init_local(); +#endif /* DNS_LOCAL_HOSTLIST */ + + +/* forward declarations */ +static void dns_recv(void *s, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, u16_t port); +static void dns_check_entries(void); + +/*----------------------------------------------------------------------------- + * Globales + *----------------------------------------------------------------------------*/ + +/* DNS variables */ +static struct udp_pcb *dns_pcb; +static u8_t dns_seqno; +static struct dns_table_entry dns_table[DNS_TABLE_SIZE]; +static struct ip_addr dns_servers[DNS_MAX_SERVERS]; + +#if (DNS_USES_STATIC_BUF == 1) +static u8_t dns_payload[DNS_MSG_SIZE]; +#endif /* (DNS_USES_STATIC_BUF == 1) */ + +/** + * Initialize the resolver: set up the UDP pcb and configure the default server + * (DNS_SERVER_ADDRESS). + */ +void +dns_init() +{ + struct ip_addr dnsserver; + + /* initialize default DNS server address */ + dnsserver.addr = DNS_SERVER_ADDRESS; + + LWIP_DEBUGF(DNS_DEBUG, ("dns_init: initializing\n")); + + /* if dns client not yet initialized... */ + if (dns_pcb == NULL) { + dns_pcb = udp_new(); + + if (dns_pcb != NULL) { + /* initialize DNS table not needed (initialized to zero since it is a + * global variable) */ + LWIP_ASSERT("For implicit initialization to work, DNS_STATE_UNUSED needs to be 0", + DNS_STATE_UNUSED == 0); + + /* initialize DNS client */ + udp_bind(dns_pcb, IP_ADDR_ANY, 0); + udp_recv(dns_pcb, dns_recv, NULL); + + /* initialize default DNS primary server */ + dns_setserver(0, &dnsserver); + } + } +#if DNS_LOCAL_HOSTLIST + dns_init_local(); +#endif +} + +/** + * Initialize one of the DNS servers. + * + * @param numdns the index of the DNS server to set must be < DNS_MAX_SERVERS + * @param dnsserver IP address of the DNS server to set + */ +void +dns_setserver(u8_t numdns, struct ip_addr *dnsserver) +{ + if ((numdns < DNS_MAX_SERVERS) && (dns_pcb != NULL) && + (dnsserver != NULL) && (dnsserver->addr !=0 )) { + dns_servers[numdns] = (*dnsserver); + } +} + +/** + * Obtain one of the currently configured DNS server. + * + * @param numdns the index of the DNS server + * @return IP address of the indexed DNS server or "ip_addr_any" if the DNS + * server has not been configured. + */ +struct ip_addr +dns_getserver(u8_t numdns) +{ + if (numdns < DNS_MAX_SERVERS) { + return dns_servers[numdns]; + } else { + return *IP_ADDR_ANY; + } +} + +/** + * The DNS resolver client timer - handle retries and timeouts and should + * be called every DNS_TMR_INTERVAL milliseconds (every second by default). + */ +void +dns_tmr(void) +{ + if (dns_pcb != NULL) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_tmr: dns_check_entries\n")); + dns_check_entries(); + } +} + +#if DNS_LOCAL_HOSTLIST +static void +dns_init_local() +{ +#if DNS_LOCAL_HOSTLIST_IS_DYNAMIC && defined(DNS_LOCAL_HOSTLIST_INIT) + int i; + struct local_hostlist_entry *entry; + /* Dynamic: copy entries from DNS_LOCAL_HOSTLIST_INIT to list */ + struct local_hostlist_entry local_hostlist_init[] = DNS_LOCAL_HOSTLIST_INIT; + for (i = 0; i < sizeof(local_hostlist_init) / sizeof(struct local_hostlist_entry); i++) { + entry = mem_malloc(sizeof(struct local_hostlist_entry)); + LWIP_ASSERT("mem-error in dns_init_local", entry != NULL); + if (entry != NULL) { + struct local_hostlist_entry *init_entry = &local_hostlist_init[i]; + entry->name = init_entry->name; + entry->addr = init_entry->addr; + entry->next = local_hostlist_dynamic; + local_hostlist_dynamic = entry; + } + } +#endif /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC && defined(DNS_LOCAL_HOSTLIST_INIT) */ +} + +/** + * Scans the local host-list for a hostname. + * + * @param hostname Hostname to look for in the local host-list + * @return The first IP address for the hostname in the local host-list or + * INADDR_NONE if not found. + */ +static u32_t +dns_lookup_local(const char *hostname) +{ +#if DNS_LOCAL_HOSTLIST_IS_DYNAMIC + struct local_hostlist_entry *entry = local_hostlist_dynamic; + while(entry != NULL) { + if(strcmp(entry->name, hostname) == 0) { + return entry->addr; + } + entry = entry->next; + } +#else /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */ + int i; + for (i = 0; i < sizeof(local_hostlist_static) / sizeof(struct local_hostlist_entry); i++) { + if(strcmp(local_hostlist_static[i].name, hostname) == 0) { + return local_hostlist_static[i].addr; + } + } +#endif /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */ + return INADDR_NONE; +} + +#if DNS_LOCAL_HOSTLIST_IS_DYNAMIC +/** Remove all entries from the local host-list for a specific hostname + * and/or IP addess + * + * @param hostname hostname for which entries shall be removed from the local + * host-list + * @param addr address for which entries shall be removed from the local host-list + * @return the number of removed entries + */ +int +dns_local_removehost(const char *hostname, const struct ip_addr *addr) +{ + int removed = 0; + struct local_hostlist_entry *entry = local_hostlist_dynamic; + struct local_hostlist_entry *last_entry = NULL; + while (entry != NULL) { + if (((hostname == NULL) || !strcmp(entry->name, hostname)) && + ((addr == NULL) || (entry->addr == addr->addr))) { + struct local_hostlist_entry *free_entry; + if (last_entry != NULL) { + last_entry->next = entry->next; + } else { + local_hostlist_dynamic = entry->next; + } + free_entry = entry; + entry = entry->next; + mem_free(free_entry); + removed++; + } else { + last_entry = entry; + entry = entry->next; + } + } + return removed; +} + +/** + * Add a hostname/IP address pair to the local host-list. + * Duplicates are not checked. + * + * @param hostname hostname of the new entry + * @param addr IP address of the new entry + * @return ERR_OK if succeeded or ERR_MEM on memory error + */ +err_t +dns_local_addhost(const char *hostname, const struct ip_addr *addr) +{ + struct local_hostlist_entry *entry; + entry = mem_malloc(sizeof(struct local_hostlist_entry)); + if (entry == NULL) { + return ERR_MEM; + } + entry->name = hostname; + entry->addr = addr->addr; + entry->next = local_hostlist_dynamic; + local_hostlist_dynamic = entry; + return ERR_OK; +} +#endif /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC*/ +#endif /* DNS_LOCAL_HOSTLIST */ + +/** + * Look up a hostname in the array of known hostnames. + * + * @note This function only looks in the internal array of known + * hostnames, it does not send out a query for the hostname if none + * was found. The function dns_enqueue() can be used to send a query + * for a hostname. + * + * @param name the hostname to look up + * @return the hostname's IP address, as u32_t (instead of struct ip_addr to + * better check for failure: != INADDR_NONE) or INADDR_NONE if the hostname + * was not found in the cached dns_table. + */ +static u32_t +dns_lookup(const char *name) +{ + u8_t i; +#if DNS_LOCAL_HOSTLIST || defined(DNS_LOOKUP_LOCAL_EXTERN) + u32_t addr; +#endif /* DNS_LOCAL_HOSTLIST || defined(DNS_LOOKUP_LOCAL_EXTERN) */ +#if DNS_LOCAL_HOSTLIST + if ((addr = dns_lookup_local(name)) != INADDR_NONE) { + return addr; + } +#endif /* DNS_LOCAL_HOSTLIST */ +#ifdef DNS_LOOKUP_LOCAL_EXTERN + if((addr = DNS_LOOKUP_LOCAL_EXTERN(name)) != INADDR_NONE) { + return addr; + } +#endif /* DNS_LOOKUP_LOCAL_EXTERN */ + + /* Walk through name list, return entry if found. If not, return NULL. */ + for (i = 0; i < DNS_TABLE_SIZE; ++i) { + if ((dns_table[i].state == DNS_STATE_DONE) && + (strcmp(name, dns_table[i].name) == 0)) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_lookup: \"%s\": found = ", name)); + ip_addr_debug_print(DNS_DEBUG, &(dns_table[i].ipaddr)); + LWIP_DEBUGF(DNS_DEBUG, ("\n")); + return dns_table[i].ipaddr.addr; + } + } + + return INADDR_NONE; +} + +#if DNS_DOES_NAME_CHECK +/** + * Compare the "dotted" name "query" with the encoded name "response" + * to make sure an answer from the DNS server matches the current dns_table + * entry (otherwise, answers might arrive late for hostname not on the list + * any more). + * + * @param query hostname (not encoded) from the dns_table + * @param response encoded hostname in the DNS response + * @return 0: names equal; 1: names differ + */ +static u8_t +dns_compare_name(unsigned char *query, unsigned char *response) +{ + unsigned char n; + + do { + n = *response++; + /** @see RFC 1035 - 4.1.4. Message compression */ + if ((n & 0xc0) == 0xc0) { + /* Compressed name */ + break; + } else { + /* Not compressed name */ + while (n > 0) { + if ((*query) != (*response)) { + return 1; + } + ++response; + ++query; + --n; + }; + ++query; + } + } while (*response != 0); + + return 0; +} +#endif /* DNS_DOES_NAME_CHECK */ + +/** + * Walk through a compact encoded DNS name and return the end of the name. + * + * @param query encoded DNS name in the DNS server response + * @return end of the name + */ +static unsigned char * +dns_parse_name(unsigned char *query) +{ + unsigned char n; + + do { + n = *query++; + /** @see RFC 1035 - 4.1.4. Message compression */ + if ((n & 0xc0) == 0xc0) { + /* Compressed name */ + break; + } else { + /* Not compressed name */ + while (n > 0) { + ++query; + --n; + }; + } + } while (*query != 0); + + return query + 1; +} + +/** + * Send a DNS query packet. + * + * @param numdns index of the DNS server in the dns_servers table + * @param name hostname to query + * @param id index of the hostname in dns_table, used as transaction ID in the + * DNS query packet + * @return ERR_OK if packet is sent; an err_t indicating the problem otherwise + */ +static err_t +dns_send(u8_t numdns, const char* name, u8_t id) +{ + err_t err; + struct dns_hdr *hdr; + struct dns_query qry; + struct pbuf *p; + char *query, *nptr; + const char *pHostname; + u8_t n; + + LWIP_DEBUGF(DNS_DEBUG, ("dns_send: dns_servers[%"U16_F"] \"%s\": request\n", + (u16_t)(numdns), name)); + LWIP_ASSERT("dns server out of array", numdns < DNS_MAX_SERVERS); + LWIP_ASSERT("dns server has no IP address set", dns_servers[numdns].addr != 0); + + /* if here, we have either a new query or a retry on a previous query to process */ + p = pbuf_alloc(PBUF_TRANSPORT, SIZEOF_DNS_HDR + DNS_MAX_NAME_LENGTH + + SIZEOF_DNS_QUERY, PBUF_RAM); + if (p != NULL) { + LWIP_ASSERT("pbuf must be in one piece", p->next == NULL); + /* fill dns header */ + hdr = (struct dns_hdr*)p->payload; + memset(hdr, 0, SIZEOF_DNS_HDR); + hdr->id = htons(id); + hdr->flags1 = DNS_FLAG1_RD; + hdr->numquestions = htons(1); + query = (char*)hdr + SIZEOF_DNS_HDR; + pHostname = name; + --pHostname; + + /* convert hostname into suitable query format. */ + do { + ++pHostname; + nptr = query; + ++query; + for(n = 0; *pHostname != '.' && *pHostname != 0; ++pHostname) { + *query = *pHostname; + ++query; + ++n; + } + *nptr = n; + } while(*pHostname != 0); + *query++='\0'; + + /* fill dns query */ + qry.type = htons(DNS_RRTYPE_A); + qry.class = htons(DNS_RRCLASS_IN); + MEMCPY( query, &qry, SIZEOF_DNS_QUERY); + + /* resize pbuf to the exact dns query */ + pbuf_realloc(p, (query + SIZEOF_DNS_QUERY) - ((char*)(p->payload))); + + /* connect to the server for faster receiving */ + udp_connect(dns_pcb, &dns_servers[numdns], DNS_SERVER_PORT); + /* send dns packet */ + err = udp_sendto(dns_pcb, p, &dns_servers[numdns], DNS_SERVER_PORT); + + /* free pbuf */ + pbuf_free(p); + } else { + err = ERR_MEM; + } + + return err; +} + +/** + * dns_check_entry() - see if pEntry has not yet been queried and, if so, sends out a query. + * Check an entry in the dns_table: + * - send out query for new entries + * - retry old pending entries on timeout (also with different servers) + * - remove completed entries from the table if their TTL has expired + * + * @param i index of the dns_table entry to check + */ +static void +dns_check_entry(u8_t i) +{ + struct dns_table_entry *pEntry = &dns_table[i]; + + LWIP_ASSERT("array index out of bounds", i < DNS_TABLE_SIZE); + + switch(pEntry->state) { + + case DNS_STATE_NEW: { + /* initialize new entry */ + pEntry->state = DNS_STATE_ASKING; + pEntry->numdns = 0; + pEntry->tmr = 1; + pEntry->retries = 0; + + /* send DNS packet for this entry */ + dns_send(pEntry->numdns, pEntry->name, i); + break; + } + + case DNS_STATE_ASKING: { + if (--pEntry->tmr == 0) { + if (++pEntry->retries == DNS_MAX_RETRIES) { + if ((pEntry->numdns+1<DNS_MAX_SERVERS) && (dns_servers[pEntry->numdns+1].addr!=0)) { + /* change of server */ + pEntry->numdns++; + pEntry->tmr = 1; + pEntry->retries = 0; + break; + } else { + LWIP_DEBUGF(DNS_DEBUG, ("dns_check_entry: \"%s\": timeout\n", pEntry->name)); + /* call specified callback function if provided */ + if (pEntry->found) + (*pEntry->found)(pEntry->name, NULL, pEntry->arg); + /* flush this entry */ + pEntry->state = DNS_STATE_UNUSED; + pEntry->found = NULL; + break; + } + } + + /* wait longer for the next retry */ + pEntry->tmr = pEntry->retries; + + /* send DNS packet for this entry */ + dns_send(pEntry->numdns, pEntry->name, i); + } + break; + } + + case DNS_STATE_DONE: { + /* if the time to live is nul */ + if (--pEntry->ttl == 0) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_check_entry: \"%s\": flush\n", pEntry->name)); + /* flush this entry */ + pEntry->state = DNS_STATE_UNUSED; + pEntry->found = NULL; + } + break; + } + case DNS_STATE_UNUSED: + /* nothing to do */ + break; + default: + LWIP_ASSERT("unknown dns_table entry state:", 0); + break; + } +} + +/** + * Call dns_check_entry for each entry in dns_table - check all entries. + */ +static void +dns_check_entries(void) +{ + u8_t i; + + for (i = 0; i < DNS_TABLE_SIZE; ++i) { + dns_check_entry(i); + } +} + +/** + * Receive input function for DNS response packets arriving for the dns UDP pcb. + * + * @params see udp.h + */ +static void +dns_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, u16_t port) +{ + u8_t i; + char *pHostname; + struct dns_hdr *hdr; + struct dns_answer ans; + struct dns_table_entry *pEntry; + u8_t nquestions, nanswers; +#if (DNS_USES_STATIC_BUF == 0) + u8_t dns_payload[DNS_MSG_SIZE]; +#endif /* (DNS_USES_STATIC_BUF == 0) */ +#if (DNS_USES_STATIC_BUF == 2) + u8_t* dns_payload; +#endif /* (DNS_USES_STATIC_BUF == 2) */ + + LWIP_UNUSED_ARG(arg); + LWIP_UNUSED_ARG(pcb); + LWIP_UNUSED_ARG(addr); + LWIP_UNUSED_ARG(port); + + /* is the dns message too big ? */ + if (p->tot_len > DNS_MSG_SIZE) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: pbuf too big\n")); + /* free pbuf and return */ + goto memerr1; + } + + /* is the dns message big enough ? */ + if (p->tot_len < (SIZEOF_DNS_HDR + SIZEOF_DNS_QUERY + SIZEOF_DNS_ANSWER)) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: pbuf too small\n")); + /* free pbuf and return */ + goto memerr1; + } + +#if (DNS_USES_STATIC_BUF == 2) + dns_payload = mem_malloc(p->tot_len); + if (dns_payload == NULL) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: mem_malloc error\n")); + /* free pbuf and return */ + goto memerr1; + } +#endif /* (DNS_USES_STATIC_BUF == 2) */ + + /* copy dns payload inside static buffer for processing */ + if (pbuf_copy_partial(p, dns_payload, p->tot_len, 0) == p->tot_len) { + /* The ID in the DNS header should be our entry into the name table. */ + hdr = (struct dns_hdr*)dns_payload; + i = htons(hdr->id); + if (i < DNS_TABLE_SIZE) { + pEntry = &dns_table[i]; + if(pEntry->state == DNS_STATE_ASKING) { + /* This entry is now completed. */ + pEntry->state = DNS_STATE_DONE; + pEntry->err = hdr->flags2 & DNS_FLAG2_ERR_MASK; + + /* We only care about the question(s) and the answers. The authrr + and the extrarr are simply discarded. */ + nquestions = htons(hdr->numquestions); + nanswers = htons(hdr->numanswers); + + /* Check for error. If so, call callback to inform. */ + if (((hdr->flags1 & DNS_FLAG1_RESPONSE) == 0) || (pEntry->err != 0) || (nquestions != 1)) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: \"%s\": error in flags\n", pEntry->name)); + /* call callback to indicate error, clean up memory and return */ + goto responseerr; + } + +#if DNS_DOES_NAME_CHECK + /* Check if the name in the "question" part match with the name in the entry. */ + if (dns_compare_name((unsigned char *)(pEntry->name), (unsigned char *)dns_payload + SIZEOF_DNS_HDR) != 0) { + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: \"%s\": response not match to query\n", pEntry->name)); + /* call callback to indicate error, clean up memory and return */ + goto responseerr; + } +#endif /* DNS_DOES_NAME_CHECK */ + + /* Skip the name in the "question" part */ + pHostname = (char *) dns_parse_name((unsigned char *)dns_payload + SIZEOF_DNS_HDR) + SIZEOF_DNS_QUERY; + + while(nanswers > 0) { + /* skip answer resource record's host name */ + pHostname = (char *) dns_parse_name((unsigned char *)pHostname); + + /* Check for IP address type and Internet class. Others are discarded. */ + MEMCPY(&ans, pHostname, SIZEOF_DNS_ANSWER); + if((ntohs(ans.type) == DNS_RRTYPE_A) && (ntohs(ans.class) == DNS_RRCLASS_IN) && (ntohs(ans.len) == sizeof(struct ip_addr)) ) { + /* read the answer resource record's TTL, and maximize it if needed */ + pEntry->ttl = ntohl(ans.ttl); + if (pEntry->ttl > DNS_MAX_TTL) { + pEntry->ttl = DNS_MAX_TTL; + } + /* read the IP address after answer resource record's header */ + MEMCPY( &(pEntry->ipaddr), (pHostname+SIZEOF_DNS_ANSWER), sizeof(struct ip_addr)); + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: \"%s\": response = ", pEntry->name)); + ip_addr_debug_print(DNS_DEBUG, (&(pEntry->ipaddr))); + LWIP_DEBUGF(DNS_DEBUG, ("\n")); + /* call specified callback function if provided */ + if (pEntry->found) { + (*pEntry->found)(pEntry->name, &pEntry->ipaddr, pEntry->arg); + } + /* deallocate memory and return */ + goto memerr2; + } else { + pHostname = pHostname + SIZEOF_DNS_ANSWER + htons(ans.len); + } + --nanswers; + } + LWIP_DEBUGF(DNS_DEBUG, ("dns_recv: \"%s\": error in response\n", pEntry->name)); + /* call callback to indicate error, clean up memory and return */ + goto responseerr; + } + } + } + + /* deallocate memory and return */ + goto memerr2; + +responseerr: + /* ERROR: call specified callback function with NULL as name to indicate an error */ + if (pEntry->found) { + (*pEntry->found)(pEntry->name, NULL, pEntry->arg); + } + /* flush this entry */ + pEntry->state = DNS_STATE_UNUSED; + pEntry->found = NULL; + +memerr2: +#if (DNS_USES_STATIC_BUF == 2) + /* free dns buffer */ + mem_free(dns_payload); +#endif /* (DNS_USES_STATIC_BUF == 2) */ + +memerr1: + /* free pbuf */ + pbuf_free(p); + return; +} + +/** + * Queues a new hostname to resolve and sends out a DNS query for that hostname + * + * @param name the hostname that is to be queried + * @param found a callback founction to be called on success, failure or timeout + * @param callback_arg argument to pass to the callback function + * @return @return a err_t return code. + */ +static err_t +dns_enqueue(const char *name, dns_found_callback found, void *callback_arg) +{ + u8_t i; + u8_t lseq, lseqi; + struct dns_table_entry *pEntry = NULL; + + /* search an unused entry, or the oldest one */ + lseq = lseqi = 0; + for (i = 0; i < DNS_TABLE_SIZE; ++i) { + pEntry = &dns_table[i]; + /* is it an unused entry ? */ + if (pEntry->state == DNS_STATE_UNUSED) + break; + + /* check if this is the oldest completed entry */ + if (pEntry->state == DNS_STATE_DONE) { + if ((dns_seqno - pEntry->seqno) > lseq) { + lseq = dns_seqno - pEntry->seqno; + lseqi = i; + } + } + } + + /* if we don't have found an unused entry, use the oldest completed one */ + if (i == DNS_TABLE_SIZE) { + if ((lseqi >= DNS_TABLE_SIZE) || (dns_table[lseqi].state != DNS_STATE_DONE)) { + /* no entry can't be used now, table is full */ + LWIP_DEBUGF(DNS_DEBUG, ("dns_enqueue: \"%s\": DNS entries table is full\n", name)); + return ERR_MEM; + } else { + /* use the oldest completed one */ + i = lseqi; + pEntry = &dns_table[i]; + } + } + + /* use this entry */ + LWIP_DEBUGF(DNS_DEBUG, ("dns_enqueue: \"%s\": use DNS entry %"U16_F"\n", name, (u16_t)(i))); + + /* fill the entry */ + pEntry->state = DNS_STATE_NEW; + pEntry->seqno = dns_seqno++; + pEntry->found = found; + pEntry->arg = callback_arg; + strcpy(pEntry->name, name); + + /* force to send query without waiting timer */ + dns_check_entry(i); + + /* dns query is enqueued */ + return ERR_INPROGRESS; +} + +/** + * Resolve a hostname (string) into an IP address. + * NON-BLOCKING callback version for use with raw API!!! + * + * Returns immediately with one of err_t return codes: + * - ERR_OK if hostname is a valid IP address string or the host + * name is already in the local names table. + * - ERR_INPROGRESS enqueue a request to be sent to the DNS server + * for resolution if no errors are present. + * + * @param hostname the hostname that is to be queried + * @param addr pointer to a struct ip_addr where to store the address if it is already + * cached in the dns_table (only valid if ERR_OK is returned!) + * @param found a callback function to be called on success, failure or timeout (only if + * ERR_INPROGRESS is returned!) + * @param callback_arg argument to pass to the callback function + * @return a err_t return code. + */ +err_t +dns_gethostbyname(const char *hostname, struct ip_addr *addr, dns_found_callback found, + void *callback_arg) +{ + /* not initialized or no valid server yet, or invalid addr pointer + * or invalid hostname or invalid hostname length */ + if ((dns_pcb == NULL) || (addr == NULL) || + (!hostname) || (!hostname[0]) || + (strlen(hostname) >= DNS_MAX_NAME_LENGTH)) { + return ERR_VAL; + } + +#if LWIP_HAVE_LOOPIF + if (strcmp(hostname,"localhost")==0) { + addr->addr = htonl(INADDR_LOOPBACK); + return ERR_OK; + } +#endif /* LWIP_HAVE_LOOPIF */ + + /* host name already in octet notation? set ip addr and return ERR_OK + * already have this address cached? */ + if (((addr->addr = inet_addr(hostname)) != INADDR_NONE) || + ((addr->addr = dns_lookup(hostname)) != INADDR_NONE)) { + return ERR_OK; + } + + /* queue query with specified callback */ + return dns_enqueue(hostname, found, callback_arg); +} + +#endif /* LWIP_DNS */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/init.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/init.c new file mode 100644 index 000000000..b7995276c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/init.c @@ -0,0 +1,276 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Modules initialization + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#include "lwip/init.h" +#include "lwip/stats.h" +#include "lwip/sys.h" +#include "lwip/mem.h" +#include "lwip/memp.h" +#include "lwip/pbuf.h" +#include "lwip/netif.h" +#include "lwip/sockets.h" +#include "lwip/ip.h" +#include "lwip/raw.h" +#include "lwip/udp.h" +#include "lwip/tcp.h" +#include "lwip/snmp_msg.h" +#include "lwip/autoip.h" +#include "lwip/igmp.h" +#include "lwip/dns.h" +#include "netif/etharp.h" + +/* Compile-time sanity checks for configuration errors. + * These can be done independently of LWIP_DEBUG, without penalty. + */ +#ifndef BYTE_ORDER + #error "BYTE_ORDER is not defined, you have to define it in your cc.h" +#endif +#if (!IP_SOF_BROADCAST && IP_SOF_BROADCAST_RECV) + #error "If you want to use broadcast filter per pcb on recv operations, you have to define IP_SOF_BROADCAST=1 in your lwipopts.h" +#endif +#if (!LWIP_ARP && ARP_QUEUEING) + #error "If you want to use ARP Queueing, you have to define LWIP_ARP=1 in your lwipopts.h" +#endif +#if (!LWIP_UDP && LWIP_UDPLITE) + #error "If you want to use UDP Lite, you have to define LWIP_UDP=1 in your lwipopts.h" +#endif +#if (!LWIP_UDP && LWIP_SNMP) + #error "If you want to use SNMP, you have to define LWIP_UDP=1 in your lwipopts.h" +#endif +#if (!LWIP_UDP && LWIP_DHCP) + #error "If you want to use DHCP, you have to define LWIP_UDP=1 in your lwipopts.h" +#endif +#if (!LWIP_UDP && LWIP_IGMP) + #error "If you want to use IGMP, you have to define LWIP_UDP=1 in your lwipopts.h" +#endif +#if (!LWIP_UDP && LWIP_DNS) + #error "If you want to use DNS, you have to define LWIP_UDP=1 in your lwipopts.h" +#endif +#if (LWIP_ARP && (ARP_TABLE_SIZE > 0x7f)) + #error "If you want to use ARP, ARP_TABLE_SIZE must fit in an s8_t, so, you have to reduce it in your lwipopts.h" +#endif +#if (LWIP_ARP && ARP_QUEUEING && (MEMP_NUM_ARP_QUEUE<=0)) + #error "If you want to use ARP Queueing, you have to define MEMP_NUM_ARP_QUEUE>=1 in your lwipopts.h" +#endif +#if (LWIP_RAW && (MEMP_NUM_RAW_PCB<=0)) + #error "If you want to use RAW, you have to define MEMP_NUM_RAW_PCB>=1 in your lwipopts.h" +#endif +#if (LWIP_UDP && (MEMP_NUM_UDP_PCB<=0)) + #error "If you want to use UDP, you have to define MEMP_NUM_UDP_PCB>=1 in your lwipopts.h" +#endif +#if (LWIP_TCP && (MEMP_NUM_TCP_PCB<=0)) + #error "If you want to use TCP, you have to define MEMP_NUM_TCP_PCB>=1 in your lwipopts.h" +#endif +#if (LWIP_TCP && (TCP_WND > 0xffff)) + #error "If you want to use TCP, TCP_WND must fit in an u16_t, so, you have to reduce it in your lwipopts.h" +#endif +#if (LWIP_TCP && (TCP_SND_QUEUELEN > 0xffff)) + #error "If you want to use TCP, TCP_SND_QUEUELEN must fit in an u16_t, so, you have to reduce it in your lwipopts.h" +#endif +#if (LWIP_TCP && ((TCP_MAXRTX > 12) || (TCP_SYNMAXRTX > 12))) + #error "If you want to use TCP, TCP_MAXRTX and TCP_SYNMAXRTX must less or equal to 12 (due to tcp_backoff table), so, you have to reduce them in your lwipopts.h" +#endif +#if (LWIP_TCP && TCP_LISTEN_BACKLOG && (TCP_DEFAULT_LISTEN_BACKLOG < 0) || (TCP_DEFAULT_LISTEN_BACKLOG > 0xff)) + #error "If you want to use TCP backlog, TCP_DEFAULT_LISTEN_BACKLOG must fit into an u8_t" +#endif +#if (LWIP_IGMP && (MEMP_NUM_IGMP_GROUP<=1)) + #error "If you want to use IGMP, you have to define MEMP_NUM_IGMP_GROUP>1 in your lwipopts.h" +#endif +#if (PPP_SUPPORT && (NO_SYS==1)) + #error "If you want to use PPP, you have to define NO_SYS=0 in your lwipopts.h" +#endif +#if (LWIP_NETIF_API && (NO_SYS==1)) + #error "If you want to use NETIF API, you have to define NO_SYS=0 in your lwipopts.h" +#endif +#if ((LWIP_SOCKET || LWIP_NETCONN) && (NO_SYS==1)) + #error "If you want to use Sequential API, you have to define NO_SYS=0 in your lwipopts.h" +#endif +#if ((LWIP_NETCONN || LWIP_SOCKET) && (MEMP_NUM_TCPIP_MSG_API<=0)) + #error "If you want to use Sequential API, you have to define MEMP_NUM_TCPIP_MSG_API>=1 in your lwipopts.h" +#endif +#if (!LWIP_NETCONN && LWIP_SOCKET) + #error "If you want to use Socket API, you have to define LWIP_NETCONN=1 in your lwipopts.h" +#endif +#if (((!LWIP_DHCP) || (!LWIP_AUTOIP)) && LWIP_DHCP_AUTOIP_COOP) + #error "If you want to use DHCP/AUTOIP cooperation mode, you have to define LWIP_DHCP=1 and LWIP_AUTOIP=1 in your lwipopts.h" +#endif +#if (((!LWIP_DHCP) || (!LWIP_ARP)) && DHCP_DOES_ARP_CHECK) + #error "If you want to use DHCP ARP checking, you have to define LWIP_DHCP=1 and LWIP_ARP=1 in your lwipopts.h" +#endif +#if (!LWIP_ARP && LWIP_AUTOIP) + #error "If you want to use AUTOIP, you have to define LWIP_ARP=1 in your lwipopts.h" +#endif +#if (LWIP_SNMP && (SNMP_CONCURRENT_REQUESTS<=0)) + #error "If you want to use SNMP, you have to define SNMP_CONCURRENT_REQUESTS>=1 in your lwipopts.h" +#endif +#if (LWIP_SNMP && (SNMP_TRAP_DESTINATIONS<=0)) + #error "If you want to use SNMP, you have to define SNMP_TRAP_DESTINATIONS>=1 in your lwipopts.h" +#endif +#if (LWIP_TCP && ((LWIP_EVENT_API && LWIP_CALLBACK_API) || (!LWIP_EVENT_API && !LWIP_CALLBACK_API))) + #error "One and exactly one of LWIP_EVENT_API and LWIP_CALLBACK_API has to be enabled in your lwipopts.h" +#endif +/* There must be sufficient timeouts, taking into account requirements of the subsystems. */ +#if ((NO_SYS==0) && (MEMP_NUM_SYS_TIMEOUT < (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_AUTOIP + LWIP_IGMP + LWIP_DNS + PPP_SUPPORT))) + #error "MEMP_NUM_SYS_TIMEOUT is too low to accomodate all required timeouts" +#endif +#if (IP_REASSEMBLY && (MEMP_NUM_REASSDATA > IP_REASS_MAX_PBUFS)) + #error "MEMP_NUM_REASSDATA > IP_REASS_MAX_PBUFS doesn't make sense since each struct ip_reassdata must hold 2 pbufs at least!" +#endif +#if (MEM_LIBC_MALLOC && MEM_USE_POOLS) + #error "MEM_LIBC_MALLOC and MEM_USE_POOLS may not both be simultaneously enabled in your lwipopts.h" +#endif +#if (MEM_USE_POOLS && !MEMP_USE_CUSTOM_POOLS) + #error "MEM_USE_POOLS requires custom pools (MEMP_USE_CUSTOM_POOLS) to be enabled in your lwipopts.h" +#endif +#if (PBUF_POOL_BUFSIZE <= MEM_ALIGNMENT) + #error "PBUF_POOL_BUFSIZE must be greater than MEM_ALIGNMENT or the offset may take the full first pbuf" +#endif +#if (TCP_QUEUE_OOSEQ && !LWIP_TCP) + #error "TCP_QUEUE_OOSEQ requires LWIP_TCP" +#endif +#if (DNS_LOCAL_HOSTLIST && !DNS_LOCAL_HOSTLIST_IS_DYNAMIC && !(defined(DNS_LOCAL_HOSTLIST_INIT))) + #error "you have to define define DNS_LOCAL_HOSTLIST_INIT {{'host1', 0x123}, {'host2', 0x234}} to initialize DNS_LOCAL_HOSTLIST" +#endif +#if PPP_SUPPORT && !PPPOS_SUPPORT & !PPPOE_SUPPORT + #error "PPP_SUPPORT needs either PPPOS_SUPPORT or PPPOE_SUPPORT turned on" +#endif + + +/* Compile-time checks for deprecated options. + */ +#ifdef MEMP_NUM_TCPIP_MSG + #error "MEMP_NUM_TCPIP_MSG option is deprecated. Remove it from your lwipopts.h." +#endif +#ifdef MEMP_NUM_API_MSG + #error "MEMP_NUM_API_MSG option is deprecated. Remove it from your lwipopts.h." +#endif +#ifdef TCP_REXMIT_DEBUG + #error "TCP_REXMIT_DEBUG option is deprecated. Remove it from your lwipopts.h." +#endif +#ifdef RAW_STATS + #error "RAW_STATS option is deprecated. Remove it from your lwipopts.h." +#endif +#ifdef ETHARP_QUEUE_FIRST + #error "ETHARP_QUEUE_FIRST option is deprecated. Remove it from your lwipopts.h." +#endif +#ifdef ETHARP_ALWAYS_INSERT + #error "ETHARP_ALWAYS_INSERT option is deprecated. Remove it from your lwipopts.h." +#endif +#if SO_REUSE +/* I removed the lot since this was an ugly hack. It broke the raw-API. + It also came with many ugly goto's, Christiaan Simons. */ + #error "SO_REUSE currently unavailable, this was a hack" +#endif + +#ifdef LWIP_DEBUG +static void +lwip_sanity_check(void) +{ + /* Warnings */ +#if LWIP_NETCONN + if (MEMP_NUM_NETCONN > (MEMP_NUM_TCP_PCB+MEMP_NUM_TCP_PCB_LISTEN+MEMP_NUM_UDP_PCB+MEMP_NUM_RAW_PCB)) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: MEMP_NUM_NETCONN should be less than the sum of MEMP_NUM_{TCP,RAW,UDP}_PCB+MEMP_NUM_TCP_PCB_LISTEN\n")); +#endif /* LWIP_NETCONN */ +#if LWIP_TCP + if (MEMP_NUM_TCP_SEG < TCP_SND_QUEUELEN) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: MEMP_NUM_TCP_SEG should be at least as big as TCP_SND_QUEUELEN\n")); + if (TCP_SND_BUF < 2 * TCP_MSS) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: TCP_SND_BUF must be at least as much as (2 * TCP_MSS) for things to work smoothly\n")); + if (TCP_SND_QUEUELEN < (2 * (TCP_SND_BUF/TCP_MSS))) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: TCP_SND_QUEUELEN must be at least as much as (2 * TCP_SND_BUF/TCP_MSS) for things to work\n")); + if (TCP_SNDLOWAT > TCP_SND_BUF) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: TCP_SNDLOWAT must be less than or equal to TCP_SND_BUF.\n")); + if (TCP_WND > (PBUF_POOL_SIZE*PBUF_POOL_BUFSIZE)) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: TCP_WND is larger than space provided by PBUF_POOL_SIZE*PBUF_POOL_BUFSIZE\n")); + if (TCP_WND < TCP_MSS) + LWIP_PLATFORM_DIAG(("lwip_sanity_check: WARNING: TCP_WND is smaller than MSS\n")); +#endif /* LWIP_TCP */ +} +#else /* LWIP_DEBUG */ +#define lwip_sanity_check() +#endif /* LWIP_DEBUG */ + +/** + * Perform Sanity check of user-configurable values, and initialize all modules. + */ +void +lwip_init(void) +{ + /* Sanity check user-configurable values */ + lwip_sanity_check(); + + /* Modules initialization */ + stats_init(); + sys_init(); + mem_init(); + memp_init(); + pbuf_init(); + netif_init(); +#if LWIP_SOCKET + lwip_socket_init(); +#endif /* LWIP_SOCKET */ + ip_init(); +#if LWIP_ARP + etharp_init(); +#endif /* LWIP_ARP */ +#if LWIP_RAW + raw_init(); +#endif /* LWIP_RAW */ +#if LWIP_UDP + udp_init(); +#endif /* LWIP_UDP */ +#if LWIP_TCP + tcp_init(); +#endif /* LWIP_TCP */ +#if LWIP_SNMP + snmp_init(); +#endif /* LWIP_SNMP */ +#if LWIP_AUTOIP + autoip_init(); +#endif /* LWIP_AUTOIP */ +#if LWIP_IGMP + igmp_init(); +#endif /* LWIP_IGMP */ +#if LWIP_DNS + dns_init(); +#endif /* LWIP_DNS */ +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/autoip.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/autoip.c new file mode 100644 index 000000000..dde6b6d05 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/autoip.c @@ -0,0 +1,499 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * AutoIP Automatic LinkLocal IP Configuration + * + */ + +/* + * + * Copyright (c) 2007 Dominik Spies <kontakt@dspies.de> + * 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. + * + * Author: Dominik Spies <kontakt@dspies.de> + * + * This is a AutoIP implementation for the lwIP TCP/IP stack. It aims to conform + * with RFC 3927. + * + * + * Please coordinate changes and requests with Dominik Spies + * <kontakt@dspies.de> + */ + +/******************************************************************************* + * USAGE: + * + * define LWIP_AUTOIP 1 in your lwipopts.h + * + * If you don't use tcpip.c (so, don't call, you don't call tcpip_init): + * - First, call autoip_init(). + * - call autoip_tmr() all AUTOIP_TMR_INTERVAL msces, + * that should be defined in autoip.h. + * I recommend a value of 100. The value must divide 1000 with a remainder almost 0. + * Possible values are 1000, 500, 333, 250, 200, 166, 142, 125, 111, 100 .... + * + * Without DHCP: + * - Call autoip_start() after netif_add(). + * + * With DHCP: + * - define LWIP_DHCP_AUTOIP_COOP 1 in your lwipopts.h. + * - Configure your DHCP Client. + * + */ + +#include "lwip/opt.h" + +#if LWIP_AUTOIP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/mem.h" +#include "lwip/udp.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/autoip.h" +#include "netif/etharp.h" + +#include <stdlib.h> +#include <string.h> + +/* 169.254.0.0 */ +#define AUTOIP_NET 0xA9FE0000 +/* 169.254.1.0 */ +#define AUTOIP_RANGE_START (AUTOIP_NET | 0x0100) +/* 169.254.254.255 */ +#define AUTOIP_RANGE_END (AUTOIP_NET | 0xFEFF) + + +/** Pseudo random macro based on netif informations. + * You could use "rand()" from the C Library if you define LWIP_AUTOIP_RAND in lwipopts.h */ +#ifndef LWIP_AUTOIP_RAND +#define LWIP_AUTOIP_RAND(netif) ( (((u32_t)((netif->hwaddr[5]) & 0xff) << 24) | \ + ((u32_t)((netif->hwaddr[3]) & 0xff) << 16) | \ + ((u32_t)((netif->hwaddr[2]) & 0xff) << 8) | \ + ((u32_t)((netif->hwaddr[4]) & 0xff))) + \ + (netif->autoip?netif->autoip->tried_llipaddr:0)) +#endif /* LWIP_AUTOIP_RAND */ + +/** + * Macro that generates the initial IP address to be tried by AUTOIP. + * If you want to override this, define it to something else in lwipopts.h. + */ +#ifndef LWIP_AUTOIP_CREATE_SEED_ADDR +#define LWIP_AUTOIP_CREATE_SEED_ADDR(netif) \ + htonl(AUTOIP_RANGE_START + ((u32_t)(((u8_t)(netif->hwaddr[4])) | \ + ((u32_t)((u8_t)(netif->hwaddr[5]))) << 8))) +#endif /* LWIP_AUTOIP_CREATE_SEED_ADDR */ + +/* static functions */ +static void autoip_handle_arp_conflict(struct netif *netif); + +/* creates a pseudo random LL IP-Address for a network interface */ +static void autoip_create_addr(struct netif *netif, struct ip_addr *ipaddr); + +/* sends an ARP probe */ +static err_t autoip_arp_probe(struct netif *netif); + +/* sends an ARP announce */ +static err_t autoip_arp_announce(struct netif *netif); + +/* configure interface for use with current LL IP-Address */ +static err_t autoip_bind(struct netif *netif); + +/* start sending probes for llipaddr */ +static void autoip_start_probing(struct netif *netif); + +/** + * Initialize this module + */ +void +autoip_init(void) +{ + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, ("autoip_init()\n")); +} + +/** + * Handle a IP address conflict after an ARP conflict detection + */ +static void +autoip_handle_arp_conflict(struct netif *netif) +{ + /* Somehow detect if we are defending or retreating */ + unsigned char defend = 1; /* tbd */ + + if(defend) { + if(netif->autoip->lastconflict > 0) { + /* retreat, there was a conflicting ARP in the last + * DEFEND_INTERVAL seconds + */ + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("autoip_handle_arp_conflict(): we are defending, but in DEFEND_INTERVAL, retreating\n")); + + /* TODO: close all TCP sessions */ + autoip_start(netif); + } else { + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("autoip_handle_arp_conflict(): we are defend, send ARP Announce\n")); + autoip_arp_announce(netif); + netif->autoip->lastconflict = DEFEND_INTERVAL * AUTOIP_TICKS_PER_SECOND; + } + } else { + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("autoip_handle_arp_conflict(): we do not defend, retreating\n")); + /* TODO: close all TCP sessions */ + autoip_start(netif); + } +} + +/** + * Create an IP-Address out of range 169.254.1.0 to 169.254.254.255 + * + * @param netif network interface on which create the IP-Address + * @param ipaddr ip address to initialize + */ +static void +autoip_create_addr(struct netif *netif, struct ip_addr *ipaddr) +{ + /* Here we create an IP-Address out of range 169.254.1.0 to 169.254.254.255 + * compliant to RFC 3927 Section 2.1 + * We have 254 * 256 possibilities */ + + u32_t addr = ntohl(LWIP_AUTOIP_CREATE_SEED_ADDR(netif)); + addr += netif->autoip->tried_llipaddr; + addr = AUTOIP_NET | (addr & 0xffff); + /* Now, 169.254.0.0 <= addr <= 169.254.255.255 */ + + if (addr < AUTOIP_RANGE_START) { + addr += AUTOIP_RANGE_END - AUTOIP_RANGE_START + 1; + } + if (addr > AUTOIP_RANGE_END) { + addr -= AUTOIP_RANGE_END - AUTOIP_RANGE_START + 1; + } + LWIP_ASSERT("AUTOIP address not in range", (addr >= AUTOIP_RANGE_START) && + (addr <= AUTOIP_RANGE_END)); + ipaddr->addr = htonl(addr); + + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("autoip_create_addr(): tried_llipaddr=%"U16_F", 0x%08"X32_F"\n", + (u16_t)(netif->autoip->tried_llipaddr), (u32_t)(ipaddr->addr))); +} + +/** + * Sends an ARP probe from a network interface + * + * @param netif network interface used to send the probe + */ +static err_t +autoip_arp_probe(struct netif *netif) +{ + return etharp_raw(netif, (struct eth_addr *)netif->hwaddr, &ethbroadcast, + (struct eth_addr *)netif->hwaddr, IP_ADDR_ANY, &ethzero, + &netif->autoip->llipaddr, ARP_REQUEST); +} + +/** + * Sends an ARP announce from a network interface + * + * @param netif network interface used to send the announce + */ +static err_t +autoip_arp_announce(struct netif *netif) +{ + return etharp_raw(netif, (struct eth_addr *)netif->hwaddr, &ethbroadcast, + (struct eth_addr *)netif->hwaddr, &netif->autoip->llipaddr, &ethzero, + &netif->autoip->llipaddr, ARP_REQUEST); +} + +/** + * Configure interface for use with current LL IP-Address + * + * @param netif network interface to configure with current LL IP-Address + */ +static err_t +autoip_bind(struct netif *netif) +{ + struct autoip *autoip = netif->autoip; + struct ip_addr sn_mask, gw_addr; + + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, + ("autoip_bind(netif=%p) %c%c%"U16_F" 0x%08"X32_F"\n", + (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num, autoip->llipaddr.addr)); + + IP4_ADDR(&sn_mask, 255, 255, 0, 0); + IP4_ADDR(&gw_addr, 0, 0, 0, 0); + + netif_set_ipaddr(netif, &autoip->llipaddr); + netif_set_netmask(netif, &sn_mask); + netif_set_gw(netif, &gw_addr); + + /* bring the interface up */ + netif_set_up(netif); + + return ERR_OK; +} + +/** + * Start AutoIP client + * + * @param netif network interface on which start the AutoIP client + */ +err_t +autoip_start(struct netif *netif) +{ + struct autoip *autoip = netif->autoip; + err_t result = ERR_OK; + + if(netif_is_up(netif)) { + netif_set_down(netif); + } + + /* Set IP-Address, Netmask and Gateway to 0 to make sure that + * ARP Packets are formed correctly + */ + netif->ip_addr.addr = 0; + netif->netmask.addr = 0; + netif->gw.addr = 0; + + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("autoip_start(netif=%p) %c%c%"U16_F"\n", (void*)netif, netif->name[0], + netif->name[1], (u16_t)netif->num)); + if(autoip == NULL) { + /* no AutoIP client attached yet? */ + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, + ("autoip_start(): starting new AUTOIP client\n")); + autoip = mem_malloc(sizeof(struct autoip)); + if(autoip == NULL) { + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, + ("autoip_start(): could not allocate autoip\n")); + return ERR_MEM; + } + memset( autoip, 0, sizeof(struct autoip)); + /* store this AutoIP client in the netif */ + netif->autoip = autoip; + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, ("autoip_start(): allocated autoip")); + } else { + autoip->state = AUTOIP_STATE_OFF; + autoip->ttw = 0; + autoip->sent_num = 0; + memset(&autoip->llipaddr, 0, sizeof(struct ip_addr)); + autoip->lastconflict = 0; + } + + autoip_create_addr(netif, &(autoip->llipaddr)); + autoip->tried_llipaddr++; + autoip_start_probing(netif); + + return result; +} + +static void +autoip_start_probing(struct netif *netif) +{ + struct autoip *autoip = netif->autoip; + + autoip->state = AUTOIP_STATE_PROBING; + autoip->sent_num = 0; + + /* time to wait to first probe, this is randomly + * choosen out of 0 to PROBE_WAIT seconds. + * compliant to RFC 3927 Section 2.2.1 + */ + autoip->ttw = (u16_t)(LWIP_AUTOIP_RAND(netif) % (PROBE_WAIT * AUTOIP_TICKS_PER_SECOND)); + + /* + * if we tried more then MAX_CONFLICTS we must limit our rate for + * accquiring and probing address + * compliant to RFC 3927 Section 2.2.1 + */ + if(autoip->tried_llipaddr > MAX_CONFLICTS) { + autoip->ttw = RATE_LIMIT_INTERVAL * AUTOIP_TICKS_PER_SECOND; + } +} + +/** + * Handle a possible change in the network configuration. + * + * If there is an AutoIP address configured, take the interface down + * and begin probing with the same address. + */ +void +autoip_network_changed(struct netif *netif) +{ + if (netif->autoip && netif->autoip->state != AUTOIP_STATE_OFF) { + netif_set_down(netif); + autoip_start_probing(netif); + } +} + +/** + * Stop AutoIP client + * + * @param netif network interface on which stop the AutoIP client + */ +err_t +autoip_stop(struct netif *netif) +{ + netif->autoip->state = AUTOIP_STATE_OFF; + netif_set_down(netif); + return ERR_OK; +} + +/** + * Has to be called in loop every AUTOIP_TMR_INTERVAL milliseconds + */ +void +autoip_tmr() +{ + struct netif *netif = netif_list; + /* loop through netif's */ + while (netif != NULL) { + /* only act on AutoIP configured interfaces */ + if (netif->autoip != NULL) { + if(netif->autoip->lastconflict > 0) { + netif->autoip->lastconflict--; + } + + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, + ("autoip_tmr() AutoIP-State: %"U16_F", ttw=%"U16_F"\n", + (u16_t)(netif->autoip->state), netif->autoip->ttw)); + + switch(netif->autoip->state) { + case AUTOIP_STATE_PROBING: + if(netif->autoip->ttw > 0) { + netif->autoip->ttw--; + } else { + if(netif->autoip->sent_num >= PROBE_NUM) { + netif->autoip->state = AUTOIP_STATE_ANNOUNCING; + netif->autoip->sent_num = 0; + netif->autoip->ttw = ANNOUNCE_WAIT * AUTOIP_TICKS_PER_SECOND; + } else { + autoip_arp_probe(netif); + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, + ("autoip_tmr() PROBING Sent Probe\n")); + netif->autoip->sent_num++; + /* calculate time to wait to next probe */ + netif->autoip->ttw = (u16_t)((LWIP_AUTOIP_RAND(netif) % + ((PROBE_MAX - PROBE_MIN) * AUTOIP_TICKS_PER_SECOND) ) + + PROBE_MIN * AUTOIP_TICKS_PER_SECOND); + } + } + break; + + case AUTOIP_STATE_ANNOUNCING: + if(netif->autoip->ttw > 0) { + netif->autoip->ttw--; + } else { + if(netif->autoip->sent_num == 0) { + /* We are here the first time, so we waited ANNOUNCE_WAIT seconds + * Now we can bind to an IP address and use it. + * + * autoip_bind calls netif_set_up. This triggers a gratuitous ARP + * which counts as an announcement. + */ + autoip_bind(netif); + } else { + autoip_arp_announce(netif); + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, + ("autoip_tmr() ANNOUNCING Sent Announce\n")); + } + netif->autoip->ttw = ANNOUNCE_INTERVAL * AUTOIP_TICKS_PER_SECOND; + netif->autoip->sent_num++; + + if(netif->autoip->sent_num >= ANNOUNCE_NUM) { + netif->autoip->state = AUTOIP_STATE_BOUND; + netif->autoip->sent_num = 0; + netif->autoip->ttw = 0; + } + } + break; + } + } + /* proceed to next network interface */ + netif = netif->next; + } +} + +/** + * Handles every incoming ARP Packet, called by etharp_arp_input. + * + * @param netif network interface to use for autoip processing + * @param hdr Incoming ARP packet + */ +void +autoip_arp_reply(struct netif *netif, struct etharp_hdr *hdr) +{ + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE, ("autoip_arp_reply()\n")); + if ((netif->autoip != NULL) && (netif->autoip->state != AUTOIP_STATE_OFF)) { + /* when ip.src == llipaddr && hw.src != netif->hwaddr + * + * when probing ip.dst == llipaddr && hw.src != netif->hwaddr + * we have a conflict and must solve it + */ + struct ip_addr sipaddr, dipaddr; + struct eth_addr netifaddr; + netifaddr.addr[0] = netif->hwaddr[0]; + netifaddr.addr[1] = netif->hwaddr[1]; + netifaddr.addr[2] = netif->hwaddr[2]; + netifaddr.addr[3] = netif->hwaddr[3]; + netifaddr.addr[4] = netif->hwaddr[4]; + netifaddr.addr[5] = netif->hwaddr[5]; + + /* Copy struct ip_addr2 to aligned ip_addr, to support compilers without + * structure packing (not using structure copy which breaks strict-aliasing rules). + */ + SMEMCPY(&sipaddr, &hdr->sipaddr, sizeof(sipaddr)); + SMEMCPY(&dipaddr, &hdr->dipaddr, sizeof(dipaddr)); + + if ((netif->autoip->state == AUTOIP_STATE_PROBING) || + ((netif->autoip->state == AUTOIP_STATE_ANNOUNCING) && + (netif->autoip->sent_num == 0))) { + /* RFC 3927 Section 2.2.1: + * from beginning to after ANNOUNCE_WAIT + * seconds we have a conflict if + * ip.src == llipaddr OR + * ip.dst == llipaddr && hw.src != own hwaddr + */ + if ((ip_addr_cmp(&sipaddr, &netif->autoip->llipaddr)) || + (ip_addr_cmp(&dipaddr, &netif->autoip->llipaddr) && + !eth_addr_cmp(&netifaddr, &hdr->shwaddr))) { + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE | LWIP_DBG_LEVEL_WARNING, + ("autoip_arp_reply(): Probe Conflict detected\n")); + autoip_start(netif); + } + } else { + /* RFC 3927 Section 2.5: + * in any state we have a conflict if + * ip.src == llipaddr && hw.src != own hwaddr + */ + if (ip_addr_cmp(&sipaddr, &netif->autoip->llipaddr) && + !eth_addr_cmp(&netifaddr, &hdr->shwaddr)) { + LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE | LWIP_DBG_LEVEL_WARNING, + ("autoip_arp_reply(): Conflicting ARP-Packet detected\n")); + autoip_handle_arp_conflict(netif); + } + } + } +} + +#endif /* LWIP_AUTOIP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/icmp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/icmp.c new file mode 100644 index 000000000..3ee17ae57 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/icmp.c @@ -0,0 +1,333 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * ICMP - Internet Control Message Protocol + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +/* Some ICMP messages should be passed to the transport protocols. This + is not implemented. */ + +#include "lwip/opt.h" + +#if LWIP_ICMP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/icmp.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/ip.h" +#include "lwip/def.h" +#include "lwip/stats.h" +#include "lwip/snmp.h" + +#include <string.h> + +/** Small optimization: set to 0 if incoming PBUF_POOL pbuf always can be + * used to modify and send a response packet (and to 1 if this is not the case, + * e.g. when link header is stripped of when receiving) */ +#ifndef LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN +#define LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN 1 +#endif /* LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN */ + +/* The amount of data from the original packet to return in a dest-unreachable */ +#define ICMP_DEST_UNREACH_DATASIZE 8 + +static void icmp_send_response(struct pbuf *p, u8_t type, u8_t code); + +/** + * Processes ICMP input packets, called from ip_input(). + * + * Currently only processes icmp echo requests and sends + * out the echo response. + * + * @param p the icmp echo request packet, p->payload pointing to the ip header + * @param inp the netif on which this packet was received + */ +void +icmp_input(struct pbuf *p, struct netif *inp) +{ + u8_t type; +#ifdef LWIP_DEBUG + u8_t code; +#endif /* LWIP_DEBUG */ + struct icmp_echo_hdr *iecho; + struct ip_hdr *iphdr; + struct ip_addr tmpaddr; + s16_t hlen; + + ICMP_STATS_INC(icmp.recv); + snmp_inc_icmpinmsgs(); + + + iphdr = p->payload; + hlen = IPH_HL(iphdr) * 4; + if (pbuf_header(p, -hlen) || (p->tot_len < sizeof(u16_t)*2)) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: short ICMP (%"U16_F" bytes) received\n", p->tot_len)); + goto lenerr; + } + + type = *((u8_t *)p->payload); +#ifdef LWIP_DEBUG + code = *(((u8_t *)p->payload)+1); +#endif /* LWIP_DEBUG */ + switch (type) { + case ICMP_ECHO: +#if !LWIP_MULTICAST_PING || !LWIP_BROADCAST_PING + { + int accepted = 1; +#if !LWIP_MULTICAST_PING + /* multicast destination address? */ + if (ip_addr_ismulticast(&iphdr->dest)) { + accepted = 0; + } +#endif /* LWIP_MULTICAST_PING */ +#if !LWIP_BROADCAST_PING + /* broadcast destination address? */ + if (ip_addr_isbroadcast(&iphdr->dest, inp)) { + accepted = 0; + } +#endif /* LWIP_BROADCAST_PING */ + /* broadcast or multicast destination address not acceptd? */ + if (!accepted) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: Not echoing to multicast or broadcast pings\n")); + ICMP_STATS_INC(icmp.err); + pbuf_free(p); + return; + } + } +#endif /* !LWIP_MULTICAST_PING || !LWIP_BROADCAST_PING */ + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: ping\n")); + if (p->tot_len < sizeof(struct icmp_echo_hdr)) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: bad ICMP echo received\n")); + goto lenerr; + } + if (inet_chksum_pbuf(p) != 0) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: checksum failed for received ICMP echo\n")); + pbuf_free(p); + ICMP_STATS_INC(icmp.chkerr); + snmp_inc_icmpinerrors(); + return; + } +#if LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN + if (pbuf_header(p, (PBUF_IP_HLEN + PBUF_LINK_HLEN))) { + /* p is not big enough to contain link headers + * allocate a new one and copy p into it + */ + struct pbuf *r; + /* switch p->payload to ip header */ + if (pbuf_header(p, hlen)) { + LWIP_ASSERT("icmp_input: moving p->payload to ip header failed\n", 0); + goto memerr; + } + /* allocate new packet buffer with space for link headers */ + r = pbuf_alloc(PBUF_LINK, p->tot_len, PBUF_RAM); + if (r == NULL) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: allocating new pbuf failed\n")); + goto memerr; + } + LWIP_ASSERT("check that first pbuf can hold struct the ICMP header", + (r->len >= hlen + sizeof(struct icmp_echo_hdr))); + /* copy the whole packet including ip header */ + if (pbuf_copy(r, p) != ERR_OK) { + LWIP_ASSERT("icmp_input: copying to new pbuf failed\n", 0); + goto memerr; + } + iphdr = r->payload; + /* switch r->payload back to icmp header */ + if (pbuf_header(r, -hlen)) { + LWIP_ASSERT("icmp_input: restoring original p->payload failed\n", 0); + goto memerr; + } + /* free the original p */ + pbuf_free(p); + /* we now have an identical copy of p that has room for link headers */ + p = r; + } else { + /* restore p->payload to point to icmp header */ + if (pbuf_header(p, -(s16_t)(PBUF_IP_HLEN + PBUF_LINK_HLEN))) { + LWIP_ASSERT("icmp_input: restoring original p->payload failed\n", 0); + goto memerr; + } + } +#endif /* LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN */ + /* At this point, all checks are OK. */ + /* We generate an answer by switching the dest and src ip addresses, + * setting the icmp type to ECHO_RESPONSE and updating the checksum. */ + iecho = p->payload; + tmpaddr.addr = iphdr->src.addr; + iphdr->src.addr = iphdr->dest.addr; + iphdr->dest.addr = tmpaddr.addr; + ICMPH_TYPE_SET(iecho, ICMP_ER); + /* adjust the checksum */ + if (iecho->chksum >= htons(0xffff - (ICMP_ECHO << 8))) { + iecho->chksum += htons(ICMP_ECHO << 8) + 1; + } else { + iecho->chksum += htons(ICMP_ECHO << 8); + } + + /* Set the correct TTL and recalculate the header checksum. */ + IPH_TTL_SET(iphdr, ICMP_TTL); + IPH_CHKSUM_SET(iphdr, 0); +#if CHECKSUM_GEN_IP + IPH_CHKSUM_SET(iphdr, inet_chksum(iphdr, IP_HLEN)); +#endif /* CHECKSUM_GEN_IP */ + + ICMP_STATS_INC(icmp.xmit); + /* increase number of messages attempted to send */ + snmp_inc_icmpoutmsgs(); + /* increase number of echo replies attempted to send */ + snmp_inc_icmpoutechoreps(); + + if(pbuf_header(p, hlen)) { + LWIP_ASSERT("Can't move over header in packet", 0); + } else { + err_t ret; + ret = ip_output_if(p, &(iphdr->src), IP_HDRINCL, + ICMP_TTL, 0, IP_PROTO_ICMP, inp); + if (ret != ERR_OK) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: ip_output_if returned an error: %c.\n", ret)); + } + } + break; + default: + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: ICMP type %"S16_F" code %"S16_F" not supported.\n", + (s16_t)type, (s16_t)code)); + ICMP_STATS_INC(icmp.proterr); + ICMP_STATS_INC(icmp.drop); + } + pbuf_free(p); + return; +lenerr: + pbuf_free(p); + ICMP_STATS_INC(icmp.lenerr); + snmp_inc_icmpinerrors(); + return; +#if LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN +memerr: + pbuf_free(p); + ICMP_STATS_INC(icmp.err); + snmp_inc_icmpinerrors(); + return; +#endif /* LWIP_ICMP_ECHO_CHECK_INPUT_PBUF_LEN */ +} + +/** + * Send an icmp 'destination unreachable' packet, called from ip_input() if + * the transport layer protocol is unknown and from udp_input() if the local + * port is not bound. + * + * @param p the input packet for which the 'unreachable' should be sent, + * p->payload pointing to the IP header + * @param t type of the 'unreachable' packet + */ +void +icmp_dest_unreach(struct pbuf *p, enum icmp_dur_type t) +{ + icmp_send_response(p, ICMP_DUR, t); +} + +#if IP_FORWARD || IP_REASSEMBLY +/** + * Send a 'time exceeded' packet, called from ip_forward() if TTL is 0. + * + * @param p the input packet for which the 'time exceeded' should be sent, + * p->payload pointing to the IP header + * @param t type of the 'time exceeded' packet + */ +void +icmp_time_exceeded(struct pbuf *p, enum icmp_te_type t) +{ + icmp_send_response(p, ICMP_TE, t); +} + +#endif /* IP_FORWARD || IP_REASSEMBLY */ + +/** + * Send an icmp packet in response to an incoming packet. + * + * @param p the input packet for which the 'unreachable' should be sent, + * p->payload pointing to the IP header + * @param type Type of the ICMP header + * @param code Code of the ICMP header + */ +static void +icmp_send_response(struct pbuf *p, u8_t type, u8_t code) +{ + struct pbuf *q; + struct ip_hdr *iphdr; + /* we can use the echo header here */ + struct icmp_echo_hdr *icmphdr; + + /* ICMP header + IP header + 8 bytes of data */ + q = pbuf_alloc(PBUF_IP, sizeof(struct icmp_echo_hdr) + IP_HLEN + ICMP_DEST_UNREACH_DATASIZE, + PBUF_RAM); + if (q == NULL) { + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_time_exceeded: failed to allocate pbuf for ICMP packet.\n")); + return; + } + LWIP_ASSERT("check that first pbuf can hold icmp message", + (q->len >= (sizeof(struct icmp_echo_hdr) + IP_HLEN + ICMP_DEST_UNREACH_DATASIZE))); + + iphdr = p->payload; + LWIP_DEBUGF(ICMP_DEBUG, ("icmp_time_exceeded from ")); + ip_addr_debug_print(ICMP_DEBUG, &(iphdr->src)); + LWIP_DEBUGF(ICMP_DEBUG, (" to ")); + ip_addr_debug_print(ICMP_DEBUG, &(iphdr->dest)); + LWIP_DEBUGF(ICMP_DEBUG, ("\n")); + + icmphdr = q->payload; + icmphdr->type = type; + icmphdr->code = code; + icmphdr->id = 0; + icmphdr->seqno = 0; + + /* copy fields from original packet */ + SMEMCPY((u8_t *)q->payload + sizeof(struct icmp_echo_hdr), (u8_t *)p->payload, + IP_HLEN + ICMP_DEST_UNREACH_DATASIZE); + + /* calculate checksum */ + icmphdr->chksum = 0; + icmphdr->chksum = inet_chksum(icmphdr, q->len); + ICMP_STATS_INC(icmp.xmit); + /* increase number of messages attempted to send */ + snmp_inc_icmpoutmsgs(); + /* increase number of destination unreachable messages attempted to send */ + snmp_inc_icmpouttimeexcds(); + ip_output(q, NULL, &(iphdr->src), ICMP_TTL, 0, IP_PROTO_ICMP); + pbuf_free(q); +} + +#endif /* LWIP_ICMP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/igmp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/igmp.c new file mode 100644 index 000000000..b302ef482 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/igmp.c @@ -0,0 +1,759 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * IGMP - Internet Group Management Protocol + * + */ + +/* + * Copyright (c) 2002 CITEL Technologies Ltd. + * 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. Neither the name of CITEL Technologies Ltd nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY CITEL TECHNOLOGIES AND CONTRIBUTORS ``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 CITEL TECHNOLOGIES OR CONTRIBUTORS 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 file is a contribution to the lwIP TCP/IP stack. + * The Swedish Institute of Computer Science and Adam Dunkels + * are specifically granted permission to redistribute this + * source code. +*/ + +/*------------------------------------------------------------- +Note 1) +Although the rfc requires V1 AND V2 capability +we will only support v2 since now V1 is very old (August 1989) +V1 can be added if required + +a debug print and statistic have been implemented to +show this up. +------------------------------------------------------------- +------------------------------------------------------------- +Note 2) +A query for a specific group address (as opposed to ALLHOSTS) +has now been implemented as I am unsure if it is required + +a debug print and statistic have been implemented to +show this up. +------------------------------------------------------------- +------------------------------------------------------------- +Note 3) +The router alert rfc 2113 is implemented in outgoing packets +but not checked rigorously incoming +------------------------------------------------------------- +Steve Reynolds +------------------------------------------------------------*/ + +/*----------------------------------------------------------------------------- + * RFC 988 - Host extensions for IP multicasting - V0 + * RFC 1054 - Host extensions for IP multicasting - + * RFC 1112 - Host extensions for IP multicasting - V1 + * RFC 2236 - Internet Group Management Protocol, Version 2 - V2 <- this code is based on this RFC (it's the "de facto" standard) + * RFC 3376 - Internet Group Management Protocol, Version 3 - V3 + * RFC 4604 - Using Internet Group Management Protocol Version 3... - V3+ + * RFC 2113 - IP Router Alert Option - + *----------------------------------------------------------------------------*/ + +/*----------------------------------------------------------------------------- + * Includes + *----------------------------------------------------------------------------*/ + +#include "lwip/opt.h" + +#if LWIP_IGMP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/igmp.h" +#include "lwip/debug.h" +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/ip.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/netif.h" +#include "lwip/icmp.h" +#include "lwip/udp.h" +#include "lwip/tcp.h" +#include "lwip/stats.h" + +#include "string.h" + +/*----------------------------------------------------------------------------- + * Globales + *----------------------------------------------------------------------------*/ + +static struct igmp_group* igmp_group_list; +static struct ip_addr allsystems; +static struct ip_addr allrouters; + +/** + * Initialize the IGMP module + */ +void +igmp_init(void) +{ + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_init: initializing\n")); + + IP4_ADDR(&allsystems, 224, 0, 0, 1); + IP4_ADDR(&allrouters, 224, 0, 0, 2); +} + +#ifdef LWIP_DEBUG +/** + * Dump global IGMP groups list + */ +void +igmp_dump_group_list() +{ + struct igmp_group *group = igmp_group_list; + + while (group != NULL) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_dump_group_list: [%"U32_F"] ", (u32_t)(group->group_state))); + ip_addr_debug_print(IGMP_DEBUG, &group->group_address); + LWIP_DEBUGF(IGMP_DEBUG, (" on if %p\n", group->interface)); + group = group->next; + } + LWIP_DEBUGF(IGMP_DEBUG, ("\n")); +} +#else +#define igmp_dump_group_list() +#endif /* LWIP_DEBUG */ + +/** + * Start IGMP processing on interface + * + * @param netif network interface on which start IGMP processing + */ +err_t +igmp_start(struct netif *netif) +{ + struct igmp_group* group; + + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_start: starting IGMP processing on if %p\n", netif)); + + group = igmp_lookup_group(netif, &allsystems); + + if (group != NULL) { + group->group_state = IGMP_GROUP_IDLE_MEMBER; + group->use++; + + /* Allow the igmp messages at the MAC level */ + if (netif->igmp_mac_filter != NULL) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_start: igmp_mac_filter(ADD ")); + ip_addr_debug_print(IGMP_DEBUG, &allsystems); + LWIP_DEBUGF(IGMP_DEBUG, (") on if %p\n", netif)); + netif->igmp_mac_filter( netif, &allsystems, IGMP_ADD_MAC_FILTER); + } + + return ERR_OK; + } + + return ERR_MEM; +} + +/** + * Stop IGMP processing on interface + * + * @param netif network interface on which stop IGMP processing + */ +err_t +igmp_stop(struct netif *netif) +{ + struct igmp_group *group = igmp_group_list; + struct igmp_group *prev = NULL; + struct igmp_group *next; + + /* look for groups joined on this interface further down the list */ + while (group != NULL) { + next = group->next; + /* is it a group joined on this interface? */ + if (group->interface == netif) { + /* is it the first group of the list? */ + if (group == igmp_group_list) { + igmp_group_list = next; + } + /* is there a "previous" group defined? */ + if (prev != NULL) { + prev->next = next; + } + /* disable the group at the MAC level */ + if (netif->igmp_mac_filter != NULL) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_stop: igmp_mac_filter(DEL ")); + ip_addr_debug_print(IGMP_DEBUG, &group->group_address); + LWIP_DEBUGF(IGMP_DEBUG, (") on if %p\n", netif)); + netif->igmp_mac_filter(netif, &(group->group_address), IGMP_DEL_MAC_FILTER); + } + /* free group */ + memp_free(MEMP_IGMP_GROUP, group); + } else { + /* change the "previous" */ + prev = group; + } + /* move to "next" */ + group = next; + } + return ERR_OK; +} + +/** + * Report IGMP memberships for this interface + * + * @param netif network interface on which report IGMP memberships + */ +void +igmp_report_groups( struct netif *netif) +{ + struct igmp_group *group = igmp_group_list; + + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_report_groups: sending IGMP reports on if %p\n", netif)); + + while (group != NULL) { + if (group->interface == netif) { + igmp_delaying_member( group, IGMP_JOIN_DELAYING_MEMBER_TMR); + } + group = group->next; + } +} + +/** + * Search for a group in the global igmp_group_list + * + * @param ifp the network interface for which to look + * @param addr the group ip address to search for + * @return a struct igmp_group* if the group has been found, + * NULL if the group wasn't found. + */ +struct igmp_group * +igmp_lookfor_group(struct netif *ifp, struct ip_addr *addr) +{ + struct igmp_group *group = igmp_group_list; + + while (group != NULL) { + if ((group->interface == ifp) && (ip_addr_cmp(&(group->group_address), addr))) { + return group; + } + group = group->next; + } + + /* to be clearer, we return NULL here instead of + * 'group' (which is also NULL at this point). + */ + return NULL; +} + +/** + * Search for a specific igmp group and create a new one if not found- + * + * @param ifp the network interface for which to look + * @param addr the group ip address to search + * @return a struct igmp_group*, + * NULL on memory error. + */ +struct igmp_group * +igmp_lookup_group(struct netif *ifp, struct ip_addr *addr) +{ + struct igmp_group *group = igmp_group_list; + + /* Search if the group already exists */ + group = igmp_lookfor_group(ifp, addr); + if (group != NULL) { + /* Group already exists. */ + return group; + } + + /* Group doesn't exist yet, create a new one */ + group = memp_malloc(MEMP_IGMP_GROUP); + if (group != NULL) { + group->interface = ifp; + ip_addr_set(&(group->group_address), addr); + group->timer = 0; /* Not running */ + group->group_state = IGMP_GROUP_NON_MEMBER; + group->last_reporter_flag = 0; + group->use = 0; + group->next = igmp_group_list; + + igmp_group_list = group; + } + + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_lookup_group: %sallocated a new group with address ", (group?"":"impossible to "))); + ip_addr_debug_print(IGMP_DEBUG, addr); + LWIP_DEBUGF(IGMP_DEBUG, (" on if %p\n", ifp)); + + return group; +} + +/** + * Remove a group in the global igmp_group_list + * + * @param group the group to remove from the global igmp_group_list + * @return ERR_OK if group was removed from the list, an err_t otherwise + */ +err_t +igmp_remove_group(struct igmp_group *group) +{ + err_t err = ERR_OK; + + /* Is it the first group? */ + if (igmp_group_list == group) { + igmp_group_list = group->next; + } else { + /* look for group further down the list */ + struct igmp_group *tmpGroup; + for (tmpGroup = igmp_group_list; tmpGroup != NULL; tmpGroup = tmpGroup->next) { + if (tmpGroup->next == group) { + tmpGroup->next = group->next; + break; + } + } + /* Group not found in the global igmp_group_list */ + if (tmpGroup == NULL) + err = ERR_ARG; + } + /* free group */ + memp_free(MEMP_IGMP_GROUP, group); + + return err; +} + +/** + * Called from ip_input() if a new IGMP packet is received. + * + * @param p received igmp packet, p->payload pointing to the ip header + * @param inp network interface on which the packet was received + * @param dest destination ip address of the igmp packet + */ +void +igmp_input(struct pbuf *p, struct netif *inp, struct ip_addr *dest) +{ + struct ip_hdr * iphdr; + struct igmp_msg* igmp; + struct igmp_group* group; + struct igmp_group* groupref; + + /* Note that the length CAN be greater than 8 but only 8 are used - All are included in the checksum */ + iphdr = p->payload; + if (pbuf_header(p, -(s16_t)(IPH_HL(iphdr) * 4)) || (p->len < IGMP_MINLEN)) { + pbuf_free(p); + IGMP_STATS_INC(igmp.lenerr); + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: length error\n")); + return; + } + + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: message from ")); + ip_addr_debug_print(IGMP_DEBUG, &(iphdr->src)); + LWIP_DEBUGF(IGMP_DEBUG, (" to address ")); + ip_addr_debug_print(IGMP_DEBUG, &(iphdr->dest)); + LWIP_DEBUGF(IGMP_DEBUG, (" on if %p\n", inp)); + + /* Now calculate and check the checksum */ + igmp = (struct igmp_msg *)p->payload; + if (inet_chksum(igmp, p->len)) { + pbuf_free(p); + IGMP_STATS_INC(igmp.chkerr); + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: checksum error\n")); + return; + } + + /* Packet is ok so find an existing group */ + group = igmp_lookfor_group(inp, dest); /* use the incoming IP address! */ + + /* If group can be found or create... */ + if (!group) { + pbuf_free(p); + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: IGMP frame not for us\n")); + return; + } + + /* NOW ACT ON THE INCOMING MESSAGE TYPE... */ + switch (igmp->igmp_msgtype) { + case IGMP_MEMB_QUERY: { + /* IGMP_MEMB_QUERY to the "all systems" address ? */ + if ((ip_addr_cmp(dest, &allsystems)) && (igmp->igmp_group_address.addr == 0)) { + /* THIS IS THE GENERAL QUERY */ + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: General IGMP_MEMB_QUERY on \"ALL SYSTEMS\" address (224.0.0.1) [igmp_maxresp=%i]\n", (int)(igmp->igmp_maxresp))); + + if (igmp->igmp_maxresp == 0) { + IGMP_STATS_INC(igmp.v1_rxed); + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: got an all hosts query with time== 0 - this is V1 and not implemented - treat as v2\n")); + igmp->igmp_maxresp = IGMP_V1_DELAYING_MEMBER_TMR; + } + + IGMP_STATS_INC(igmp.group_query_rxed); + groupref = igmp_group_list; + while (groupref) { + /* Do not send messages on the all systems group address! */ + if ((groupref->interface == inp) && (!(ip_addr_cmp(&(groupref->group_address), &allsystems)))) { + igmp_delaying_member( groupref, igmp->igmp_maxresp); + } + groupref = groupref->next; + } + } else { + /* IGMP_MEMB_QUERY to a specific group ? */ + if (group->group_address.addr != 0) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: IGMP_MEMB_QUERY to a specific group ")); + ip_addr_debug_print(IGMP_DEBUG, &group->group_address); + if (ip_addr_cmp (dest, &allsystems)) { + LWIP_DEBUGF(IGMP_DEBUG, (" using \"ALL SYSTEMS\" address (224.0.0.1) [igmp_maxresp=%i]\n", (int)(igmp->igmp_maxresp))); + /* we first need to re-lookfor the group since we used dest last time */ + group = igmp_lookfor_group(inp, &igmp->igmp_group_address); + } else { + LWIP_DEBUGF(IGMP_DEBUG, (" with the group address as destination [igmp_maxresp=%i]\n", (int)(igmp->igmp_maxresp))); + } + + if (group != NULL) { + IGMP_STATS_INC(igmp.unicast_query); + igmp_delaying_member( group, igmp->igmp_maxresp); + } + } + } + break; + } + case IGMP_V2_MEMB_REPORT: { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: IGMP_V2_MEMB_REPORT\n")); + + IGMP_STATS_INC(igmp.report_rxed); + if (group->group_state == IGMP_GROUP_DELAYING_MEMBER) { + /* This is on a specific group we have already looked up */ + group->timer = 0; /* stopped */ + group->group_state = IGMP_GROUP_IDLE_MEMBER; + group->last_reporter_flag = 0; + } + break; + } + default: { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_input: unexpected msg %d in state %d on group %p on if %p\n", + igmp->igmp_msgtype, group->group_state, &group, group->interface)); + break; + } + } + + pbuf_free(p); + return; +} + +/** + * Join a group on one network interface. + * + * @param ifaddr ip address of the network interface which should join a new group + * @param groupaddr the ip address of the group which to join + * @return ERR_OK if group was joined on the netif(s), an err_t otherwise + */ +err_t +igmp_joingroup(struct ip_addr *ifaddr, struct ip_addr *groupaddr) +{ + err_t err = ERR_VAL; /* no matching interface */ + struct igmp_group *group; + struct netif *netif; + + /* make sure it is multicast address */ + LWIP_ERROR("igmp_joingroup: attempt to join non-multicast address", ip_addr_ismulticast(groupaddr), return ERR_VAL;); + LWIP_ERROR("igmp_joingroup: attempt to join allsystems address", (!ip_addr_cmp(groupaddr, &allsystems)), return ERR_VAL;); + + /* loop through netif's */ + netif = netif_list; + while (netif != NULL) { + /* Should we join this interface ? */ + if ((netif->flags & NETIF_FLAG_IGMP) && ((ip_addr_isany(ifaddr) || ip_addr_cmp(&(netif->ip_addr), ifaddr)))) { + /* find group or create a new one if not found */ + group = igmp_lookup_group(netif, groupaddr); + + if (group != NULL) { + /* This should create a new group, check the state to make sure */ + if (group->group_state != IGMP_GROUP_NON_MEMBER) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_joingroup: join to group not in state IGMP_GROUP_NON_MEMBER\n")); + } else { + /* OK - it was new group */ + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_joingroup: join to new group: ")); + ip_addr_debug_print(IGMP_DEBUG, groupaddr); + LWIP_DEBUGF(IGMP_DEBUG, ("\n")); + + /* If first use of the group, allow the group at the MAC level */ + if ((group->use==0) && (netif->igmp_mac_filter != NULL)) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_joingroup: igmp_mac_filter(ADD ")); + ip_addr_debug_print(IGMP_DEBUG, groupaddr); + LWIP_DEBUGF(IGMP_DEBUG, (") on if %p\n", netif)); + netif->igmp_mac_filter(netif, groupaddr, IGMP_ADD_MAC_FILTER); + } + + IGMP_STATS_INC(igmp.join_sent); + igmp_send(group, IGMP_V2_MEMB_REPORT); + + igmp_start_timer(group, IGMP_JOIN_DELAYING_MEMBER_TMR); + + /* Need to work out where this timer comes from */ + group->group_state = IGMP_GROUP_DELAYING_MEMBER; + } + /* Increment group use */ + group->use++; + /* Join on this interface */ + err = ERR_OK; + } else { + /* Return an error even if some network interfaces are joined */ + /** @todo undo any other netif already joined */ + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_joingroup: Not enought memory to join to group\n")); + return ERR_MEM; + } + } + /* proceed to next network interface */ + netif = netif->next; + } + + return err; +} + +/** + * Leave a group on one network interface. + * + * @param ifaddr ip address of the network interface which should leave a group + * @param groupaddr the ip address of the group which to leave + * @return ERR_OK if group was left on the netif(s), an err_t otherwise + */ +err_t +igmp_leavegroup(struct ip_addr *ifaddr, struct ip_addr *groupaddr) +{ + err_t err = ERR_VAL; /* no matching interface */ + struct igmp_group *group; + struct netif *netif; + + /* make sure it is multicast address */ + LWIP_ERROR("igmp_leavegroup: attempt to leave non-multicast address", ip_addr_ismulticast(groupaddr), return ERR_VAL;); + LWIP_ERROR("igmp_leavegroup: attempt to leave allsystems address", (!ip_addr_cmp(groupaddr, &allsystems)), return ERR_VAL;); + + /* loop through netif's */ + netif = netif_list; + while (netif != NULL) { + /* Should we leave this interface ? */ + if ((netif->flags & NETIF_FLAG_IGMP) && ((ip_addr_isany(ifaddr) || ip_addr_cmp(&(netif->ip_addr), ifaddr)))) { + /* find group */ + group = igmp_lookfor_group(netif, groupaddr); + + if (group != NULL) { + /* Only send a leave if the flag is set according to the state diagram */ + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_leavegroup: Leaving group: ")); + ip_addr_debug_print(IGMP_DEBUG, groupaddr); + LWIP_DEBUGF(IGMP_DEBUG, ("\n")); + + /* If there is no other use of the group */ + if (group->use <= 1) { + /* If we are the last reporter for this group */ + if (group->last_reporter_flag) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_leavegroup: sending leaving group\n")); + IGMP_STATS_INC(igmp.leave_sent); + igmp_send(group, IGMP_LEAVE_GROUP); + } + + /* Disable the group at the MAC level */ + if (netif->igmp_mac_filter != NULL) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_leavegroup: igmp_mac_filter(DEL ")); + ip_addr_debug_print(IGMP_DEBUG, groupaddr); + LWIP_DEBUGF(IGMP_DEBUG, (") on if %p\n", netif)); + netif->igmp_mac_filter(netif, groupaddr, IGMP_DEL_MAC_FILTER); + } + + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_leavegroup: remove group: ")); + ip_addr_debug_print(IGMP_DEBUG, groupaddr); + LWIP_DEBUGF(IGMP_DEBUG, ("\n")); + + /* Free the group */ + igmp_remove_group(group); + } else { + /* Decrement group use */ + group->use--; + } + /* Leave on this interface */ + err = ERR_OK; + } else { + /* It's not a fatal error on "leavegroup" */ + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_leavegroup: not member of group\n")); + } + } + /* proceed to next network interface */ + netif = netif->next; + } + + return err; +} + +/** + * The igmp timer function (both for NO_SYS=1 and =0) + * Should be called every IGMP_TMR_INTERVAL milliseconds (100 ms is default). + */ +void +igmp_tmr(void) +{ + struct igmp_group *group = igmp_group_list; + + while (group != NULL) { + if (group->timer != 0) { + group->timer -= 1; + if (group->timer == 0) { + igmp_timeout(group); + } + } + group = group->next; + } +} + +/** + * Called if a timeout for one group is reached. + * Sends a report for this group. + * + * @param group an igmp_group for which a timeout is reached + */ +void +igmp_timeout(struct igmp_group *group) +{ + /* If the state is IGMP_GROUP_DELAYING_MEMBER then we send a report for this group */ + if (group->group_state == IGMP_GROUP_DELAYING_MEMBER) { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_timeout: report membership for group with address ")); + ip_addr_debug_print(IGMP_DEBUG, &(group->group_address)); + LWIP_DEBUGF(IGMP_DEBUG, (" on if %p\n", group->interface)); + + igmp_send(group, IGMP_V2_MEMB_REPORT); + } +} + +/** + * Start a timer for an igmp group + * + * @param group the igmp_group for which to start a timer + * @param max_time the time in multiples of IGMP_TMR_INTERVAL (decrease with + * every call to igmp_tmr()) + */ +void +igmp_start_timer(struct igmp_group *group, u8_t max_time) +{ + /** + * @todo Important !! this should be random 0 -> max_time. Find out how to do this + */ + group->timer = max_time; +} + +/** + * Stop a timer for an igmp_group + * + * @param group the igmp_group for which to stop the timer + */ +void +igmp_stop_timer(struct igmp_group *group) +{ + group->timer = 0; +} + +/** + * Delaying membership report for a group if necessary + * + * @param group the igmp_group for which "delaying" membership report + * @param maxresp query delay + */ +void +igmp_delaying_member( struct igmp_group *group, u8_t maxresp) +{ + if ((group->group_state == IGMP_GROUP_IDLE_MEMBER) || + ((group->group_state == IGMP_GROUP_DELAYING_MEMBER) && (maxresp > group->timer))) { + igmp_start_timer(group, (maxresp)/2); + group->group_state = IGMP_GROUP_DELAYING_MEMBER; + } +} + + +/** + * Sends an IP packet on a network interface. This function constructs the IP header + * and calculates the IP header checksum. If the source IP address is NULL, + * the IP address of the outgoing network interface is filled in as source address. + * + * @param p the packet to send (p->payload points to the data, e.g. next + protocol header; if dest == IP_HDRINCL, p already includes an IP + header and p->payload points to that IP header) + * @param src the source IP address to send from (if src == IP_ADDR_ANY, the + * IP address of the netif used to send is used as source address) + * @param dest the destination IP address to send the packet to + * @param ttl the TTL value to be set in the IP header + * @param proto the PROTOCOL to be set in the IP header + * @param netif the netif on which to send this packet + * @return ERR_OK if the packet was sent OK + * ERR_BUF if p doesn't have enough space for IP/LINK headers + * returns errors returned by netif->output + */ +err_t +igmp_ip_output_if(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t proto, struct netif *netif) +{ + /* This is the "router alert" option */ + u16_t ra[2]; + ra[0] = htons (ROUTER_ALERT); + ra[1] = 0x0000; /* Router shall examine packet */ + return ip_output_if_opt(p, src, dest, ttl, 0, proto, netif, ra, ROUTER_ALERTLEN); +} + +/** + * Send an igmp packet to a specific group. + * + * @param group the group to which to send the packet + * @param type the type of igmp packet to send + */ +void +igmp_send(struct igmp_group *group, u8_t type) +{ + struct pbuf* p = NULL; + struct igmp_msg* igmp = NULL; + struct ip_addr src = {0}; + struct ip_addr* dest = NULL; + + /* IP header + "router alert" option + IGMP header */ + p = pbuf_alloc(PBUF_TRANSPORT, IGMP_MINLEN, PBUF_RAM); + + if (p) { + igmp = p->payload; + LWIP_ASSERT("igmp_send: check that first pbuf can hold struct igmp_msg", + (p->len >= sizeof(struct igmp_msg))); + ip_addr_set(&src, &((group->interface)->ip_addr)); + + if (type == IGMP_V2_MEMB_REPORT) { + dest = &(group->group_address); + IGMP_STATS_INC(igmp.report_sent); + ip_addr_set(&(igmp->igmp_group_address), &(group->group_address)); + group->last_reporter_flag = 1; /* Remember we were the last to report */ + } else { + if (type == IGMP_LEAVE_GROUP) { + dest = &allrouters; + ip_addr_set(&(igmp->igmp_group_address), &(group->group_address)); + } + } + + if ((type == IGMP_V2_MEMB_REPORT) || (type == IGMP_LEAVE_GROUP)) { + igmp->igmp_msgtype = type; + igmp->igmp_maxresp = 0; + igmp->igmp_checksum = 0; + igmp->igmp_checksum = inet_chksum( igmp, IGMP_MINLEN); + + igmp_ip_output_if(p, &src, dest, IGMP_TTL, IP_PROTO_IGMP, group->interface); + } + + pbuf_free(p); + } else { + LWIP_DEBUGF(IGMP_DEBUG, ("igmp_send: not enough memory for igmp_send\n")); + } +} + +#endif /* LWIP_IGMP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet.c new file mode 100644 index 000000000..0d4f922fe --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet.c @@ -0,0 +1,280 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Functions common to all TCP/IPv4 modules, such as the byte order functions. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#include "lwip/inet.h" + +/* Here for now until needed in other places in lwIP */ +#ifndef isprint +#define in_range(c, lo, up) ((u8_t)c >= lo && (u8_t)c <= up) +#define isprint(c) in_range(c, 0x20, 0x7f) +#define isdigit(c) in_range(c, '0', '9') +#define isxdigit(c) (isdigit(c) || in_range(c, 'a', 'f') || in_range(c, 'A', 'F')) +#define islower(c) in_range(c, 'a', 'z') +#define isspace(c) (c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\t' || c == '\v') +#endif + +/** + * Ascii internet address interpretation routine. + * The value returned is in network order. + * + * @param cp IP address in ascii represenation (e.g. "127.0.0.1") + * @return ip address in network order + */ +u32_t +inet_addr(const char *cp) +{ + struct in_addr val; + + if (inet_aton(cp, &val)) { + return (val.s_addr); + } + return (INADDR_NONE); +} + +/** + * Check whether "cp" is a valid ascii representation + * of an Internet address and convert to a binary address. + * Returns 1 if the address is valid, 0 if not. + * This replaces inet_addr, the return value from which + * cannot distinguish between failure and a local broadcast address. + * + * @param cp IP address in ascii represenation (e.g. "127.0.0.1") + * @param addr pointer to which to save the ip address in network order + * @return 1 if cp could be converted to addr, 0 on failure + */ +int +inet_aton(const char *cp, struct in_addr *addr) +{ + u32_t val; + u8_t base; + char c; + u32_t parts[4]; + u32_t *pp = parts; + + c = *cp; + for (;;) { + /* + * Collect number up to ``.''. + * Values are specified as for C: + * 0x=hex, 0=octal, 1-9=decimal. + */ + if (!isdigit(c)) + return (0); + val = 0; + base = 10; + if (c == '0') { + c = *++cp; + if (c == 'x' || c == 'X') { + base = 16; + c = *++cp; + } else + base = 8; + } + for (;;) { + if (isdigit(c)) { + val = (val * base) + (int)(c - '0'); + c = *++cp; + } else if (base == 16 && isxdigit(c)) { + val = (val << 4) | (int)(c + 10 - (islower(c) ? 'a' : 'A')); + c = *++cp; + } else + break; + } + if (c == '.') { + /* + * Internet format: + * a.b.c.d + * a.b.c (with c treated as 16 bits) + * a.b (with b treated as 24 bits) + */ + if (pp >= parts + 3) + return (0); + *pp++ = val; + c = *++cp; + } else + break; + } + /* + * Check for trailing characters. + */ + if (c != '\0' && !isspace(c)) + return (0); + /* + * Concoct the address according to + * the number of parts specified. + */ + switch (pp - parts + 1) { + + case 0: + return (0); /* initial nondigit */ + + case 1: /* a -- 32 bits */ + break; + + case 2: /* a.b -- 8.24 bits */ + if (val > 0xffffffUL) + return (0); + val |= parts[0] << 24; + break; + + case 3: /* a.b.c -- 8.8.16 bits */ + if (val > 0xffff) + return (0); + val |= (parts[0] << 24) | (parts[1] << 16); + break; + + case 4: /* a.b.c.d -- 8.8.8.8 bits */ + if (val > 0xff) + return (0); + val |= (parts[0] << 24) | (parts[1] << 16) | (parts[2] << 8); + break; + } + if (addr) + addr->s_addr = htonl(val); + return (1); +} + +/** + * Convert numeric IP address into decimal dotted ASCII representation. + * returns ptr to static buffer; not reentrant! + * + * @param addr ip address in network order to convert + * @return pointer to a global static (!) buffer that holds the ASCII + * represenation of addr + */ +char * +inet_ntoa(struct in_addr addr) +{ + static char str[16]; + u32_t s_addr = addr.s_addr; + char inv[3]; + char *rp; + u8_t *ap; + u8_t rem; + u8_t n; + u8_t i; + + rp = str; + ap = (u8_t *)&s_addr; + for(n = 0; n < 4; n++) { + i = 0; + do { + rem = *ap % (u8_t)10; + *ap /= (u8_t)10; + inv[i++] = '0' + rem; + } while(*ap); + while(i--) + *rp++ = inv[i]; + *rp++ = '.'; + ap++; + } + *--rp = 0; + return str; +} + +/** + * These are reference implementations of the byte swapping functions. + * Again with the aim of being simple, correct and fully portable. + * Byte swapping is the second thing you would want to optimize. You will + * need to port it to your architecture and in your cc.h: + * + * #define LWIP_PLATFORM_BYTESWAP 1 + * #define LWIP_PLATFORM_HTONS(x) <your_htons> + * #define LWIP_PLATFORM_HTONL(x) <your_htonl> + * + * Note ntohs() and ntohl() are merely references to the htonx counterparts. + */ + +#if (LWIP_PLATFORM_BYTESWAP == 0) && (BYTE_ORDER == LITTLE_ENDIAN) + +/** + * Convert an u16_t from host- to network byte order. + * + * @param n u16_t in host byte order + * @return n in network byte order + */ +u16_t +htons(u16_t n) +{ + return ((n & 0xff) << 8) | ((n & 0xff00) >> 8); +} + +/** + * Convert an u16_t from network- to host byte order. + * + * @param n u16_t in network byte order + * @return n in host byte order + */ +u16_t +ntohs(u16_t n) +{ + return htons(n); +} + +/** + * Convert an u32_t from host- to network byte order. + * + * @param n u32_t in host byte order + * @return n in network byte order + */ +u32_t +htonl(u32_t n) +{ + return ((n & 0xff) << 24) | + ((n & 0xff00) << 8) | + ((n & 0xff0000UL) >> 8) | + ((n & 0xff000000UL) >> 24); +} + +/** + * Convert an u32_t from network- to host byte order. + * + * @param n u32_t in network byte order + * @return n in host byte order + */ +u32_t +ntohl(u32_t n) +{ + return htonl(n); +} + +#endif /* (LWIP_PLATFORM_BYTESWAP == 0) && (BYTE_ORDER == LITTLE_ENDIAN) */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet_chksum.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet_chksum.c new file mode 100644 index 000000000..47a11d4eb --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/inet_chksum.c @@ -0,0 +1,440 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Incluse internet checksum functions. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#include "lwip/inet_chksum.h" +#include "lwip/inet.h" + +#include <stddef.h> + +/* These are some reference implementations of the checksum algorithm, with the + * aim of being simple, correct and fully portable. Checksumming is the + * first thing you would want to optimize for your platform. If you create + * your own version, link it in and in your cc.h put: + * + * #define LWIP_CHKSUM <your_checksum_routine> + * + * Or you can select from the implementations below by defining + * LWIP_CHKSUM_ALGORITHM to 1, 2 or 3. + */ + +#ifndef LWIP_CHKSUM +# define LWIP_CHKSUM lwip_standard_chksum +# ifndef LWIP_CHKSUM_ALGORITHM +# define LWIP_CHKSUM_ALGORITHM 1 +# endif +#endif +/* If none set: */ +#ifndef LWIP_CHKSUM_ALGORITHM +# define LWIP_CHKSUM_ALGORITHM 0 +#endif + +/** Like the name says... */ +#if LWIP_PLATFORM_BYTESWAP && (BYTE_ORDER == LITTLE_ENDIAN) +/* little endian and PLATFORM_BYTESWAP defined */ +#define SWAP_BYTES_IN_WORD(w) LWIP_PLATFORM_HTONS(w) +#else +/* can't use htons on big endian (or PLATFORM_BYTESWAP not defined)... */ +#define SWAP_BYTES_IN_WORD(w) ((w & 0xff) << 8) | ((w & 0xff00) >> 8) +#endif + +/** Split an u32_t in two u16_ts and add them up */ +#define FOLD_U32T(u) ((u >> 16) + (u & 0x0000ffffUL)) + +#if (LWIP_CHKSUM_ALGORITHM == 1) /* Version #1 */ +/** + * lwip checksum + * + * @param dataptr points to start of data to be summed at any boundary + * @param len length of data to be summed + * @return host order (!) lwip checksum (non-inverted Internet sum) + * + * @note accumulator size limits summable length to 64k + * @note host endianess is irrelevant (p3 RFC1071) + */ +static u16_t +lwip_standard_chksum(void *dataptr, u16_t len) +{ + u32_t acc; + u16_t src; + u8_t *octetptr; + + acc = 0; + /* dataptr may be at odd or even addresses */ + octetptr = (u8_t*)dataptr; + while (len > 1) { + /* declare first octet as most significant + thus assume network order, ignoring host order */ + src = (*octetptr) << 8; + octetptr++; + /* declare second octet as least significant */ + src |= (*octetptr); + octetptr++; + acc += src; + len -= 2; + } + if (len > 0) { + /* accumulate remaining octet */ + src = (*octetptr) << 8; + acc += src; + } + /* add deferred carry bits */ + acc = (acc >> 16) + (acc & 0x0000ffffUL); + if ((acc & 0xffff0000UL) != 0) { + acc = (acc >> 16) + (acc & 0x0000ffffUL); + } + /* This maybe a little confusing: reorder sum using htons() + instead of ntohs() since it has a little less call overhead. + The caller must invert bits for Internet sum ! */ + return htons((u16_t)acc); +} +#endif + +#if (LWIP_CHKSUM_ALGORITHM == 2) /* Alternative version #2 */ +/* + * Curt McDowell + * Broadcom Corp. + * csm@broadcom.com + * + * IP checksum two bytes at a time with support for + * unaligned buffer. + * Works for len up to and including 0x20000. + * by Curt McDowell, Broadcom Corp. 12/08/2005 + * + * @param dataptr points to start of data to be summed at any boundary + * @param len length of data to be summed + * @return host order (!) lwip checksum (non-inverted Internet sum) + */ + +static u16_t +lwip_standard_chksum(void *dataptr, int len) +{ + u8_t *pb = dataptr; + u16_t *ps, t = 0; + u32_t sum = 0; + int odd = ((u32_t)pb & 1); + + /* Get aligned to u16_t */ + if (odd && len > 0) { + ((u8_t *)&t)[1] = *pb++; + len--; + } + + /* Add the bulk of the data */ + ps = (u16_t *)pb; + while (len > 1) { + sum += *ps++; + len -= 2; + } + + /* Consume left-over byte, if any */ + if (len > 0) { + ((u8_t *)&t)[0] = *(u8_t *)ps;; + } + + /* Add end bytes */ + sum += t; + + /* Fold 32-bit sum to 16 bits + calling this twice is propably faster than if statements... */ + sum = FOLD_U32T(sum); + sum = FOLD_U32T(sum); + + /* Swap if alignment was odd */ + if (odd) { + sum = SWAP_BYTES_IN_WORD(sum); + } + + return sum; +} +#endif + +#if (LWIP_CHKSUM_ALGORITHM == 3) /* Alternative version #3 */ +/** + * An optimized checksum routine. Basically, it uses loop-unrolling on + * the checksum loop, treating the head and tail bytes specially, whereas + * the inner loop acts on 8 bytes at a time. + * + * @arg start of buffer to be checksummed. May be an odd byte address. + * @len number of bytes in the buffer to be checksummed. + * @return host order (!) lwip checksum (non-inverted Internet sum) + * + * by Curt McDowell, Broadcom Corp. December 8th, 2005 + */ + +static u16_t +lwip_standard_chksum(void *dataptr, int len) +{ + u8_t *pb = dataptr; + u16_t *ps, t = 0; + u32_t *pl; + u32_t sum = 0, tmp; + /* starts at odd byte address? */ + int odd = ((u32_t)pb & 1); + + if (odd && len > 0) { + ((u8_t *)&t)[1] = *pb++; + len--; + } + + ps = (u16_t *)pb; + + if (((u32_t)ps & 3) && len > 1) { + sum += *ps++; + len -= 2; + } + + pl = (u32_t *)ps; + + while (len > 7) { + tmp = sum + *pl++; /* ping */ + if (tmp < sum) { + tmp++; /* add back carry */ + } + + sum = tmp + *pl++; /* pong */ + if (sum < tmp) { + sum++; /* add back carry */ + } + + len -= 8; + } + + /* make room in upper bits */ + sum = FOLD_U32T(sum); + + ps = (u16_t *)pl; + + /* 16-bit aligned word remaining? */ + while (len > 1) { + sum += *ps++; + len -= 2; + } + + /* dangling tail byte remaining? */ + if (len > 0) { /* include odd byte */ + ((u8_t *)&t)[0] = *(u8_t *)ps; + } + + sum += t; /* add end bytes */ + + /* Fold 32-bit sum to 16 bits + calling this twice is propably faster than if statements... */ + sum = FOLD_U32T(sum); + sum = FOLD_U32T(sum); + + if (odd) { + sum = SWAP_BYTES_IN_WORD(sum); + } + + return sum; +} +#endif + +/* inet_chksum_pseudo: + * + * Calculates the pseudo Internet checksum used by TCP and UDP for a pbuf chain. + * IP addresses are expected to be in network byte order. + * + * @param p chain of pbufs over that a checksum should be calculated (ip data part) + * @param src source ip address (used for checksum of pseudo header) + * @param dst destination ip address (used for checksum of pseudo header) + * @param proto ip protocol (used for checksum of pseudo header) + * @param proto_len length of the ip data part (used for checksum of pseudo header) + * @return checksum (as u16_t) to be saved directly in the protocol header + */ +u16_t +inet_chksum_pseudo(struct pbuf *p, + struct ip_addr *src, struct ip_addr *dest, + u8_t proto, u16_t proto_len) +{ + u32_t acc; + struct pbuf *q; + u8_t swapped; + + acc = 0; + swapped = 0; + /* iterate through all pbuf in chain */ + for(q = p; q != NULL; q = q->next) { + LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): checksumming pbuf %p (has next %p) \n", + (void *)q, (void *)q->next)); + acc += LWIP_CHKSUM(q->payload, q->len); + /*LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): unwrapped lwip_chksum()=%"X32_F" \n", acc));*/ + /* just executing this next line is probably faster that the if statement needed + to check whether we really need to execute it, and does no harm */ + acc = FOLD_U32T(acc); + if (q->len % 2 != 0) { + swapped = 1 - swapped; + acc = SWAP_BYTES_IN_WORD(acc); + } + /*LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): wrapped lwip_chksum()=%"X32_F" \n", acc));*/ + } + + if (swapped) { + acc = SWAP_BYTES_IN_WORD(acc); + } + acc += (src->addr & 0xffffUL); + acc += ((src->addr >> 16) & 0xffffUL); + acc += (dest->addr & 0xffffUL); + acc += ((dest->addr >> 16) & 0xffffUL); + acc += (u32_t)htons((u16_t)proto); + acc += (u32_t)htons(proto_len); + + /* Fold 32-bit sum to 16 bits + calling this twice is propably faster than if statements... */ + acc = FOLD_U32T(acc); + acc = FOLD_U32T(acc); + LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): pbuf chain lwip_chksum()=%"X32_F"\n", acc)); + return (u16_t)~(acc & 0xffffUL); +} + +/* inet_chksum_pseudo: + * + * Calculates the pseudo Internet checksum used by TCP and UDP for a pbuf chain. + * IP addresses are expected to be in network byte order. + * + * @param p chain of pbufs over that a checksum should be calculated (ip data part) + * @param src source ip address (used for checksum of pseudo header) + * @param dst destination ip address (used for checksum of pseudo header) + * @param proto ip protocol (used for checksum of pseudo header) + * @param proto_len length of the ip data part (used for checksum of pseudo header) + * @return checksum (as u16_t) to be saved directly in the protocol header + */ +/* Currently only used by UDPLITE, although this could change in the future. */ +#if LWIP_UDPLITE +u16_t +inet_chksum_pseudo_partial(struct pbuf *p, + struct ip_addr *src, struct ip_addr *dest, + u8_t proto, u16_t proto_len, u16_t chksum_len) +{ + u32_t acc; + struct pbuf *q; + u8_t swapped; + u16_t chklen; + + acc = 0; + swapped = 0; + /* iterate through all pbuf in chain */ + for(q = p; (q != NULL) && (chksum_len > 0); q = q->next) { + LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): checksumming pbuf %p (has next %p) \n", + (void *)q, (void *)q->next)); + chklen = q->len; + if (chklen > chksum_len) { + chklen = chksum_len; + } + acc += LWIP_CHKSUM(q->payload, chklen); + chksum_len -= chklen; + LWIP_ASSERT("delete me", chksum_len < 0x7fff); + /*LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): unwrapped lwip_chksum()=%"X32_F" \n", acc));*/ + /* fold the upper bit down */ + acc = FOLD_U32T(acc); + if (q->len % 2 != 0) { + swapped = 1 - swapped; + acc = SWAP_BYTES_IN_WORD(acc); + } + /*LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): wrapped lwip_chksum()=%"X32_F" \n", acc));*/ + } + + if (swapped) { + acc = SWAP_BYTES_IN_WORD(acc); + } + acc += (src->addr & 0xffffUL); + acc += ((src->addr >> 16) & 0xffffUL); + acc += (dest->addr & 0xffffUL); + acc += ((dest->addr >> 16) & 0xffffUL); + acc += (u32_t)htons((u16_t)proto); + acc += (u32_t)htons(proto_len); + + /* Fold 32-bit sum to 16 bits + calling this twice is propably faster than if statements... */ + acc = FOLD_U32T(acc); + acc = FOLD_U32T(acc); + LWIP_DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): pbuf chain lwip_chksum()=%"X32_F"\n", acc)); + return (u16_t)~(acc & 0xffffUL); +} +#endif /* LWIP_UDPLITE */ + +/* inet_chksum: + * + * Calculates the Internet checksum over a portion of memory. Used primarily for IP + * and ICMP. + * + * @param dataptr start of the buffer to calculate the checksum (no alignment needed) + * @param len length of the buffer to calculate the checksum + * @return checksum (as u16_t) to be saved directly in the protocol header + */ + +u16_t +inet_chksum(void *dataptr, u16_t len) +{ + return ~LWIP_CHKSUM(dataptr, len); +} + +/** + * Calculate a checksum over a chain of pbufs (without pseudo-header, much like + * inet_chksum only pbufs are used). + * + * @param p pbuf chain over that the checksum should be calculated + * @return checksum (as u16_t) to be saved directly in the protocol header + */ +u16_t +inet_chksum_pbuf(struct pbuf *p) +{ + u32_t acc; + struct pbuf *q; + u8_t swapped; + + acc = 0; + swapped = 0; + for(q = p; q != NULL; q = q->next) { + acc += LWIP_CHKSUM(q->payload, q->len); + acc = FOLD_U32T(acc); + if (q->len % 2 != 0) { + swapped = 1 - swapped; + acc = SWAP_BYTES_IN_WORD(acc); + } + } + + if (swapped) { + acc = SWAP_BYTES_IN_WORD(acc); + } + return (u16_t)~(acc & 0xffffUL); +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip.c new file mode 100644 index 000000000..a958242a4 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip.c @@ -0,0 +1,725 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * This is the IPv4 layer implementation for incoming and outgoing IP traffic. + * + * @see ip_frag.c + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" +#include "lwip/ip.h" +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/ip_frag.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/netif.h" +#include "lwip/icmp.h" +#include "lwip/igmp.h" +#include "lwip/raw.h" +#include "lwip/udp.h" +#include "lwip/tcp.h" +#include "lwip/snmp.h" +#include "lwip/dhcp.h" +#include "lwip/stats.h" +#include "arch/perf.h" + +#include <string.h> + +/** + * The interface that provided the packet for the current callback + * invocation. + */ +struct netif *current_netif; + +/** + * Header of the input packet currently being processed. + */ +const struct ip_hdr *current_header; + +/** + * Finds the appropriate network interface for a given IP address. It + * searches the list of network interfaces linearly. A match is found + * if the masked IP address of the network interface equals the masked + * IP address given to the function. + * + * @param dest the destination IP address for which to find the route + * @return the netif on which to send to reach dest + */ +struct netif * +ip_route(struct ip_addr *dest) +{ + struct netif *netif; + + /* iterate through netifs */ + for(netif = netif_list; netif != NULL; netif = netif->next) { + /* network mask matches? */ + if (netif_is_up(netif)) { + if (ip_addr_netcmp(dest, &(netif->ip_addr), &(netif->netmask))) { + /* return netif on which to forward IP packet */ + return netif; + } + } + } + if ((netif_default == NULL) || (!netif_is_up(netif_default))) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("ip_route: No route to 0x%"X32_F"\n", dest->addr)); + IP_STATS_INC(ip.rterr); + snmp_inc_ipoutnoroutes(); + return NULL; + } + /* no matching netif found, use default netif */ + return netif_default; +} + +#if IP_FORWARD +/** + * Forwards an IP packet. It finds an appropriate route for the + * packet, decrements the TTL value of the packet, adjusts the + * checksum and outputs the packet on the appropriate interface. + * + * @param p the packet to forward (p->payload points to IP header) + * @param iphdr the IP header of the input packet + * @param inp the netif on which this packet was received + * @return the netif on which the packet was sent (NULL if it wasn't sent) + */ +static struct netif * +ip_forward(struct pbuf *p, struct ip_hdr *iphdr, struct netif *inp) +{ + struct netif *netif; + + PERF_START; + /* Find network interface where to forward this IP packet to. */ + netif = ip_route((struct ip_addr *)&(iphdr->dest)); + if (netif == NULL) { + LWIP_DEBUGF(IP_DEBUG, ("ip_forward: no forwarding route for 0x%"X32_F" found\n", + iphdr->dest.addr)); + snmp_inc_ipoutnoroutes(); + return (struct netif *)NULL; + } + /* Do not forward packets onto the same network interface on which + * they arrived. */ + if (netif == inp) { + LWIP_DEBUGF(IP_DEBUG, ("ip_forward: not bouncing packets back on incoming interface.\n")); + snmp_inc_ipoutnoroutes(); + return (struct netif *)NULL; + } + + /* decrement TTL */ + IPH_TTL_SET(iphdr, IPH_TTL(iphdr) - 1); + /* send ICMP if TTL == 0 */ + if (IPH_TTL(iphdr) == 0) { + snmp_inc_ipinhdrerrors(); +#if LWIP_ICMP + /* Don't send ICMP messages in response to ICMP messages */ + if (IPH_PROTO(iphdr) != IP_PROTO_ICMP) { + icmp_time_exceeded(p, ICMP_TE_TTL); + } +#endif /* LWIP_ICMP */ + return (struct netif *)NULL; + } + + /* Incrementally update the IP checksum. */ + if (IPH_CHKSUM(iphdr) >= htons(0xffff - 0x100)) { + IPH_CHKSUM_SET(iphdr, IPH_CHKSUM(iphdr) + htons(0x100) + 1); + } else { + IPH_CHKSUM_SET(iphdr, IPH_CHKSUM(iphdr) + htons(0x100)); + } + + LWIP_DEBUGF(IP_DEBUG, ("ip_forward: forwarding packet to 0x%"X32_F"\n", + iphdr->dest.addr)); + + IP_STATS_INC(ip.fw); + IP_STATS_INC(ip.xmit); + snmp_inc_ipforwdatagrams(); + + PERF_STOP("ip_forward"); + /* transmit pbuf on chosen interface */ + netif->output(netif, p, (struct ip_addr *)&(iphdr->dest)); + return netif; +} +#endif /* IP_FORWARD */ + +/** + * This function is called by the network interface device driver when + * an IP packet is received. The function does the basic checks of the + * IP header such as packet size being at least larger than the header + * size etc. If the packet was not destined for us, the packet is + * forwarded (using ip_forward). The IP checksum is always checked. + * + * Finally, the packet is sent to the upper layer protocol input function. + * + * @param p the received IP packet (p->payload points to IP header) + * @param inp the netif on which this packet was received + * @return ERR_OK if the packet was processed (could return ERR_* if it wasn't + * processed, but currently always returns ERR_OK) + */ +err_t +ip_input(struct pbuf *p, struct netif *inp) +{ + struct ip_hdr *iphdr; + struct netif *netif; + u16_t iphdr_hlen; + u16_t iphdr_len; +#if LWIP_DHCP + int check_ip_src=1; +#endif /* LWIP_DHCP */ + + IP_STATS_INC(ip.recv); + snmp_inc_ipinreceives(); + + /* identify the IP header */ + iphdr = p->payload; + if (IPH_V(iphdr) != 4) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_WARNING, ("IP packet dropped due to bad version number %"U16_F"\n", IPH_V(iphdr))); + ip_debug_print(p); + pbuf_free(p); + IP_STATS_INC(ip.err); + IP_STATS_INC(ip.drop); + snmp_inc_ipinhdrerrors(); + return ERR_OK; + } + + /* obtain IP header length in number of 32-bit words */ + iphdr_hlen = IPH_HL(iphdr); + /* calculate IP header length in bytes */ + iphdr_hlen *= 4; + /* obtain ip length in bytes */ + iphdr_len = ntohs(IPH_LEN(iphdr)); + + /* header length exceeds first pbuf length, or ip length exceeds total pbuf length? */ + if ((iphdr_hlen > p->len) || (iphdr_len > p->tot_len)) { + if (iphdr_hlen > p->len) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("IP header (len %"U16_F") does not fit in first pbuf (len %"U16_F"), IP packet dropped.\n", + iphdr_hlen, p->len)); + } + if (iphdr_len > p->tot_len) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("IP (len %"U16_F") is longer than pbuf (len %"U16_F"), IP packet dropped.\n", + iphdr_len, p->tot_len)); + } + /* free (drop) packet pbufs */ + pbuf_free(p); + IP_STATS_INC(ip.lenerr); + IP_STATS_INC(ip.drop); + snmp_inc_ipindiscards(); + return ERR_OK; + } + + /* verify checksum */ +#if CHECKSUM_CHECK_IP + if (inet_chksum(iphdr, iphdr_hlen) != 0) { + + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("Checksum (0x%"X16_F") failed, IP packet dropped.\n", inet_chksum(iphdr, iphdr_hlen))); + ip_debug_print(p); + pbuf_free(p); + IP_STATS_INC(ip.chkerr); + IP_STATS_INC(ip.drop); + snmp_inc_ipinhdrerrors(); + return ERR_OK; + } +#endif + + /* Trim pbuf. This should have been done at the netif layer, + * but we'll do it anyway just to be sure that its done. */ + pbuf_realloc(p, iphdr_len); + + /* match packet against an interface, i.e. is this packet for us? */ +#if LWIP_IGMP + if (ip_addr_ismulticast(&(iphdr->dest))) { + if ((inp->flags & NETIF_FLAG_IGMP) && (igmp_lookfor_group(inp, &(iphdr->dest)))) { + netif = inp; + } else { + netif = NULL; + } + } else +#endif /* LWIP_IGMP */ + { + /* start trying with inp. if that's not acceptable, start walking the + list of configured netifs. + 'first' is used as a boolean to mark whether we started walking the list */ + int first = 1; + netif = inp; + do { + LWIP_DEBUGF(IP_DEBUG, ("ip_input: iphdr->dest 0x%"X32_F" netif->ip_addr 0x%"X32_F" (0x%"X32_F", 0x%"X32_F", 0x%"X32_F")\n", + iphdr->dest.addr, netif->ip_addr.addr, + iphdr->dest.addr & netif->netmask.addr, + netif->ip_addr.addr & netif->netmask.addr, + iphdr->dest.addr & ~(netif->netmask.addr))); + + /* interface is up and configured? */ + if ((netif_is_up(netif)) && (!ip_addr_isany(&(netif->ip_addr)))) { + /* unicast to this interface address? */ + if (ip_addr_cmp(&(iphdr->dest), &(netif->ip_addr)) || + /* or broadcast on this interface network address? */ + ip_addr_isbroadcast(&(iphdr->dest), netif)) { + LWIP_DEBUGF(IP_DEBUG, ("ip_input: packet accepted on interface %c%c\n", + netif->name[0], netif->name[1])); + /* break out of for loop */ + break; + } + } + if (first) { + first = 0; + netif = netif_list; + } else { + netif = netif->next; + } + if (netif == inp) { + netif = netif->next; + } + } while(netif != NULL); + } + +#if LWIP_DHCP + /* Pass DHCP messages regardless of destination address. DHCP traffic is addressed + * using link layer addressing (such as Ethernet MAC) so we must not filter on IP. + * According to RFC 1542 section 3.1.1, referred by RFC 2131). + */ + if (netif == NULL) { + /* remote port is DHCP server? */ + if (IPH_PROTO(iphdr) == IP_PROTO_UDP) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_TRACE, ("ip_input: UDP packet to DHCP client port %"U16_F"\n", + ntohs(((struct udp_hdr *)((u8_t *)iphdr + iphdr_hlen))->dest))); + if (ntohs(((struct udp_hdr *)((u8_t *)iphdr + iphdr_hlen))->dest) == DHCP_CLIENT_PORT) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_TRACE, ("ip_input: DHCP packet accepted.\n")); + netif = inp; + check_ip_src = 0; + } + } + } +#endif /* LWIP_DHCP */ + + /* broadcast or multicast packet source address? Compliant with RFC 1122: 3.2.1.3 */ +#if LWIP_DHCP + /* DHCP servers need 0.0.0.0 to be allowed as source address (RFC 1.1.2.2: 3.2.1.3/a) */ + if (check_ip_src && (iphdr->src.addr != 0)) +#endif /* LWIP_DHCP */ + { if ((ip_addr_isbroadcast(&(iphdr->src), inp)) || + (ip_addr_ismulticast(&(iphdr->src)))) { + /* packet source is not valid */ + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, ("ip_input: packet source is not valid.\n")); + /* free (drop) packet pbufs */ + pbuf_free(p); + IP_STATS_INC(ip.drop); + snmp_inc_ipinaddrerrors(); + snmp_inc_ipindiscards(); + return ERR_OK; + } + } + + /* packet not for us? */ + if (netif == NULL) { + /* packet not for us, route or discard */ + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_TRACE, ("ip_input: packet not for us.\n")); +#if IP_FORWARD + /* non-broadcast packet? */ + if (!ip_addr_isbroadcast(&(iphdr->dest), inp)) { + /* try to forward IP packet on (other) interfaces */ + ip_forward(p, iphdr, inp); + } else +#endif /* IP_FORWARD */ + { + snmp_inc_ipinaddrerrors(); + snmp_inc_ipindiscards(); + } + pbuf_free(p); + return ERR_OK; + } + /* packet consists of multiple fragments? */ + if ((IPH_OFFSET(iphdr) & htons(IP_OFFMASK | IP_MF)) != 0) { +#if IP_REASSEMBLY /* packet fragment reassembly code present? */ + LWIP_DEBUGF(IP_DEBUG, ("IP packet is a fragment (id=0x%04"X16_F" tot_len=%"U16_F" len=%"U16_F" MF=%"U16_F" offset=%"U16_F"), calling ip_reass()\n", + ntohs(IPH_ID(iphdr)), p->tot_len, ntohs(IPH_LEN(iphdr)), !!(IPH_OFFSET(iphdr) & htons(IP_MF)), (ntohs(IPH_OFFSET(iphdr)) & IP_OFFMASK)*8)); + /* reassemble the packet*/ + p = ip_reass(p); + /* packet not fully reassembled yet? */ + if (p == NULL) { + return ERR_OK; + } + iphdr = p->payload; +#else /* IP_REASSEMBLY == 0, no packet fragment reassembly code present */ + pbuf_free(p); + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("IP packet dropped since it was fragmented (0x%"X16_F") (while IP_REASSEMBLY == 0).\n", + ntohs(IPH_OFFSET(iphdr)))); + IP_STATS_INC(ip.opterr); + IP_STATS_INC(ip.drop); + /* unsupported protocol feature */ + snmp_inc_ipinunknownprotos(); + return ERR_OK; +#endif /* IP_REASSEMBLY */ + } + +#if IP_OPTIONS_ALLOWED == 0 /* no support for IP options in the IP header? */ + +#if LWIP_IGMP + /* there is an extra "router alert" option in IGMP messages which we allow for but do not police */ + if((iphdr_hlen > IP_HLEN && (IPH_PROTO(iphdr) != IP_PROTO_IGMP)) { +#else + if (iphdr_hlen > IP_HLEN) { +#endif /* LWIP_IGMP */ + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("IP packet dropped since there were IP options (while IP_OPTIONS_ALLOWED == 0).\n")); + pbuf_free(p); + IP_STATS_INC(ip.opterr); + IP_STATS_INC(ip.drop); + /* unsupported protocol feature */ + snmp_inc_ipinunknownprotos(); + return ERR_OK; + } +#endif /* IP_OPTIONS_ALLOWED == 0 */ + + /* send to upper layers */ + LWIP_DEBUGF(IP_DEBUG, ("ip_input: \n")); + ip_debug_print(p); + LWIP_DEBUGF(IP_DEBUG, ("ip_input: p->len %"U16_F" p->tot_len %"U16_F"\n", p->len, p->tot_len)); + + current_netif = inp; + current_header = iphdr; + +#if LWIP_RAW + /* raw input did not eat the packet? */ + if (raw_input(p, inp) == 0) +#endif /* LWIP_RAW */ + { + + switch (IPH_PROTO(iphdr)) { +#if LWIP_UDP + case IP_PROTO_UDP: +#if LWIP_UDPLITE + case IP_PROTO_UDPLITE: +#endif /* LWIP_UDPLITE */ + snmp_inc_ipindelivers(); + udp_input(p, inp); + break; +#endif /* LWIP_UDP */ +#if LWIP_TCP + case IP_PROTO_TCP: + snmp_inc_ipindelivers(); + tcp_input(p, inp); + break; +#endif /* LWIP_TCP */ +#if LWIP_ICMP + case IP_PROTO_ICMP: + snmp_inc_ipindelivers(); + icmp_input(p, inp); + break; +#endif /* LWIP_ICMP */ +#if LWIP_IGMP + case IP_PROTO_IGMP: + igmp_input(p,inp,&(iphdr->dest)); + break; +#endif /* LWIP_IGMP */ + default: +#if LWIP_ICMP + /* send ICMP destination protocol unreachable unless is was a broadcast */ + if (!ip_addr_isbroadcast(&(iphdr->dest), inp) && + !ip_addr_ismulticast(&(iphdr->dest))) { + p->payload = iphdr; + icmp_dest_unreach(p, ICMP_DUR_PROTO); + } +#endif /* LWIP_ICMP */ + pbuf_free(p); + + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("Unsupported transport protocol %"U16_F"\n", IPH_PROTO(iphdr))); + + IP_STATS_INC(ip.proterr); + IP_STATS_INC(ip.drop); + snmp_inc_ipinunknownprotos(); + } + } + + current_netif = NULL; + current_header = NULL; + + return ERR_OK; +} + +/** + * Sends an IP packet on a network interface. This function constructs + * the IP header and calculates the IP header checksum. If the source + * IP address is NULL, the IP address of the outgoing network + * interface is filled in as source address. + * If the destination IP address is IP_HDRINCL, p is assumed to already + * include an IP header and p->payload points to it instead of the data. + * + * @param p the packet to send (p->payload points to the data, e.g. next + protocol header; if dest == IP_HDRINCL, p already includes an IP + header and p->payload points to that IP header) + * @param src the source IP address to send from (if src == IP_ADDR_ANY, the + * IP address of the netif used to send is used as source address) + * @param dest the destination IP address to send the packet to + * @param ttl the TTL value to be set in the IP header + * @param tos the TOS value to be set in the IP header + * @param proto the PROTOCOL to be set in the IP header + * @param netif the netif on which to send this packet + * @return ERR_OK if the packet was sent OK + * ERR_BUF if p doesn't have enough space for IP/LINK headers + * returns errors returned by netif->output + * + * @note ip_id: RFC791 "some host may be able to simply use + * unique identifiers independent of destination" + */ +err_t +ip_output_if(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, + u8_t proto, struct netif *netif) +{ +#if IP_OPTIONS_SEND + return ip_output_if_opt(p, src, dest, ttl, tos, proto, netif, NULL, 0); +} + +/** + * Same as ip_output_if() but with the possibility to include IP options: + * + * @ param ip_options pointer to the IP options, copied into the IP header + * @ param optlen length of ip_options + */ +err_t ip_output_if_opt(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto, struct netif *netif, void *ip_options, + u16_t optlen) +{ +#endif /* IP_OPTIONS_SEND */ + struct ip_hdr *iphdr; + static u16_t ip_id = 0; + + snmp_inc_ipoutrequests(); + + /* Should the IP header be generated or is it already included in p? */ + if (dest != IP_HDRINCL) { + u16_t ip_hlen = IP_HLEN; +#if IP_OPTIONS_SEND + u16_t optlen_aligned = 0; + if (optlen != 0) { + /* round up to a multiple of 4 */ + optlen_aligned = ((optlen + 3) & ~3); + ip_hlen += optlen_aligned; + /* First write in the IP options */ + if (pbuf_header(p, optlen_aligned)) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("ip_output_if_opt: not enough room for IP options in pbuf\n")); + IP_STATS_INC(ip.err); + snmp_inc_ipoutdiscards(); + return ERR_BUF; + } + MEMCPY(p->payload, ip_options, optlen); + if (optlen < optlen_aligned) { + /* zero the remaining bytes */ + memset(((char*)p->payload) + optlen, 0, optlen_aligned - optlen); + } + } +#endif /* IP_OPTIONS_SEND */ + /* generate IP header */ + if (pbuf_header(p, IP_HLEN)) { + LWIP_DEBUGF(IP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("ip_output: not enough room for IP header in pbuf\n")); + + IP_STATS_INC(ip.err); + snmp_inc_ipoutdiscards(); + return ERR_BUF; + } + + iphdr = p->payload; + LWIP_ASSERT("check that first pbuf can hold struct ip_hdr", + (p->len >= sizeof(struct ip_hdr))); + + IPH_TTL_SET(iphdr, ttl); + IPH_PROTO_SET(iphdr, proto); + + ip_addr_set(&(iphdr->dest), dest); + + IPH_VHLTOS_SET(iphdr, 4, ip_hlen / 4, tos); + IPH_LEN_SET(iphdr, htons(p->tot_len)); + IPH_OFFSET_SET(iphdr, 0); + IPH_ID_SET(iphdr, htons(ip_id)); + ++ip_id; + + if (ip_addr_isany(src)) { + ip_addr_set(&(iphdr->src), &(netif->ip_addr)); + } else { + ip_addr_set(&(iphdr->src), src); + } + + IPH_CHKSUM_SET(iphdr, 0); +#if CHECKSUM_GEN_IP + IPH_CHKSUM_SET(iphdr, inet_chksum(iphdr, ip_hlen)); +#endif + } else { + /* IP header already included in p */ + iphdr = p->payload; + dest = &(iphdr->dest); + } + + IP_STATS_INC(ip.xmit); + + LWIP_DEBUGF(IP_DEBUG, ("ip_output_if: %c%c%"U16_F"\n", netif->name[0], netif->name[1], netif->num)); + ip_debug_print(p); + +#if ENABLE_LOOPBACK + if (ip_addr_cmp(dest, &netif->ip_addr)) { + /* Packet to self, enqueue it for loopback */ + LWIP_DEBUGF(IP_DEBUG, ("netif_loop_output()")); + return netif_loop_output(netif, p, dest); + } +#endif /* ENABLE_LOOPBACK */ +#if IP_FRAG + /* don't fragment if interface has mtu set to 0 [loopif] */ + if (netif->mtu && (p->tot_len > netif->mtu)) { + return ip_frag(p,netif,dest); + } +#endif + + LWIP_DEBUGF(IP_DEBUG, ("netif->output()")); + return netif->output(netif, p, dest); +} + +/** + * Simple interface to ip_output_if. It finds the outgoing network + * interface and calls upon ip_output_if to do the actual work. + * + * @param p the packet to send (p->payload points to the data, e.g. next + protocol header; if dest == IP_HDRINCL, p already includes an IP + header and p->payload points to that IP header) + * @param src the source IP address to send from (if src == IP_ADDR_ANY, the + * IP address of the netif used to send is used as source address) + * @param dest the destination IP address to send the packet to + * @param ttl the TTL value to be set in the IP header + * @param tos the TOS value to be set in the IP header + * @param proto the PROTOCOL to be set in the IP header + * + * @return ERR_RTE if no route is found + * see ip_output_if() for more return values + */ +err_t +ip_output(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto) +{ + struct netif *netif; + + if ((netif = ip_route(dest)) == NULL) { + LWIP_DEBUGF(IP_DEBUG, ("ip_output: No route to 0x%"X32_F"\n", dest->addr)); + IP_STATS_INC(ip.rterr); + return ERR_RTE; + } + + return ip_output_if(p, src, dest, ttl, tos, proto, netif); +} + +#if LWIP_NETIF_HWADDRHINT +/** Like ip_output, but takes and addr_hint pointer that is passed on to netif->addr_hint + * before calling ip_output_if. + * + * @param p the packet to send (p->payload points to the data, e.g. next + protocol header; if dest == IP_HDRINCL, p already includes an IP + header and p->payload points to that IP header) + * @param src the source IP address to send from (if src == IP_ADDR_ANY, the + * IP address of the netif used to send is used as source address) + * @param dest the destination IP address to send the packet to + * @param ttl the TTL value to be set in the IP header + * @param tos the TOS value to be set in the IP header + * @param proto the PROTOCOL to be set in the IP header + * @param addr_hint address hint pointer set to netif->addr_hint before + * calling ip_output_if() + * + * @return ERR_RTE if no route is found + * see ip_output_if() for more return values + */ +err_t +ip_output_hinted(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto, u8_t *addr_hint) +{ + struct netif *netif; + err_t err; + + if ((netif = ip_route(dest)) == NULL) { + LWIP_DEBUGF(IP_DEBUG, ("ip_output: No route to 0x%"X32_F"\n", dest->addr)); + IP_STATS_INC(ip.rterr); + return ERR_RTE; + } + + netif->addr_hint = addr_hint; + err = ip_output_if(p, src, dest, ttl, tos, proto, netif); + netif->addr_hint = NULL; + + return err; +} +#endif /* LWIP_NETIF_HWADDRHINT*/ + +#if IP_DEBUG +/* Print an IP header by using LWIP_DEBUGF + * @param p an IP packet, p->payload pointing to the IP header + */ +void +ip_debug_print(struct pbuf *p) +{ + struct ip_hdr *iphdr = p->payload; + u8_t *payload; + + payload = (u8_t *)iphdr + IP_HLEN; + + LWIP_DEBUGF(IP_DEBUG, ("IP header:\n")); + LWIP_DEBUGF(IP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(IP_DEBUG, ("|%2"S16_F" |%2"S16_F" | 0x%02"X16_F" | %5"U16_F" | (v, hl, tos, len)\n", + IPH_V(iphdr), + IPH_HL(iphdr), + IPH_TOS(iphdr), + ntohs(IPH_LEN(iphdr)))); + LWIP_DEBUGF(IP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(IP_DEBUG, ("| %5"U16_F" |%"U16_F"%"U16_F"%"U16_F"| %4"U16_F" | (id, flags, offset)\n", + ntohs(IPH_ID(iphdr)), + ntohs(IPH_OFFSET(iphdr)) >> 15 & 1, + ntohs(IPH_OFFSET(iphdr)) >> 14 & 1, + ntohs(IPH_OFFSET(iphdr)) >> 13 & 1, + ntohs(IPH_OFFSET(iphdr)) & IP_OFFMASK)); + LWIP_DEBUGF(IP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(IP_DEBUG, ("| %3"U16_F" | %3"U16_F" | 0x%04"X16_F" | (ttl, proto, chksum)\n", + IPH_TTL(iphdr), + IPH_PROTO(iphdr), + ntohs(IPH_CHKSUM(iphdr)))); + LWIP_DEBUGF(IP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(IP_DEBUG, ("| %3"U16_F" | %3"U16_F" | %3"U16_F" | %3"U16_F" | (src)\n", + ip4_addr1(&iphdr->src), + ip4_addr2(&iphdr->src), + ip4_addr3(&iphdr->src), + ip4_addr4(&iphdr->src))); + LWIP_DEBUGF(IP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(IP_DEBUG, ("| %3"U16_F" | %3"U16_F" | %3"U16_F" | %3"U16_F" | (dest)\n", + ip4_addr1(&iphdr->dest), + ip4_addr2(&iphdr->dest), + ip4_addr3(&iphdr->dest), + ip4_addr4(&iphdr->dest))); + LWIP_DEBUGF(IP_DEBUG, ("+-------------------------------+\n")); +} +#endif /* IP_DEBUG */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_addr.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_addr.c new file mode 100644 index 000000000..33e0aaddd --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_addr.c @@ -0,0 +1,86 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * This is the IPv4 address tools implementation. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" +#include "lwip/ip_addr.h" +#include "lwip/inet.h" +#include "lwip/netif.h" + +#define IP_ADDR_ANY_VALUE 0x00000000UL +#define IP_ADDR_BROADCAST_VALUE 0xffffffffUL + +/* used by IP_ADDR_ANY and IP_ADDR_BROADCAST in ip_addr.h */ +const struct ip_addr ip_addr_any = { IP_ADDR_ANY_VALUE }; +const struct ip_addr ip_addr_broadcast = { IP_ADDR_BROADCAST_VALUE }; + +/** + * Determine if an address is a broadcast address on a network interface + * + * @param addr address to be checked + * @param netif the network interface against which the address is checked + * @return returns non-zero if the address is a broadcast address + */ +u8_t ip_addr_isbroadcast(struct ip_addr *addr, struct netif *netif) +{ + u32_t addr2test; + + addr2test = addr->addr; + /* all ones (broadcast) or all zeroes (old skool broadcast) */ + if ((~addr2test == IP_ADDR_ANY_VALUE) || + (addr2test == IP_ADDR_ANY_VALUE)) + return 1; + /* no broadcast support on this network interface? */ + else if ((netif->flags & NETIF_FLAG_BROADCAST) == 0) + /* the given address cannot be a broadcast address + * nor can we check against any broadcast addresses */ + return 0; + /* address matches network interface address exactly? => no broadcast */ + else if (addr2test == netif->ip_addr.addr) + return 0; + /* on the same (sub) network... */ + else if (ip_addr_netcmp(addr, &(netif->ip_addr), &(netif->netmask)) + /* ...and host identifier bits are all ones? =>... */ + && ((addr2test & ~netif->netmask.addr) == + (IP_ADDR_BROADCAST_VALUE & ~netif->netmask.addr))) + /* => network broadcast address */ + return 1; + else + return 0; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_frag.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_frag.c new file mode 100644 index 000000000..ab35572e4 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/ipv4/ip_frag.c @@ -0,0 +1,794 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * This is the IPv4 packet segmentation and reassembly implementation. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Jani Monoses <jani@iv.ro> + * Simon Goldschmidt + * original reassembly code by Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" +#include "lwip/ip_frag.h" +#include "lwip/ip.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/netif.h" +#include "lwip/snmp.h" +#include "lwip/stats.h" +#include "lwip/icmp.h" + +#include <string.h> + +#if IP_REASSEMBLY +/** + * The IP reassembly code currently has the following limitations: + * - IP header options are not supported + * - fragments must not overlap (e.g. due to different routes), + * currently, overlapping or duplicate fragments are thrown away + * if IP_REASS_CHECK_OVERLAP=1 (the default)! + * + * @todo: work with IP header options + */ + +/** Setting this to 0, you can turn off checking the fragments for overlapping + * regions. The code gets a little smaller. Only use this if you know that + * overlapping won't occur on your network! */ +#ifndef IP_REASS_CHECK_OVERLAP +#define IP_REASS_CHECK_OVERLAP 1 +#endif /* IP_REASS_CHECK_OVERLAP */ + +/** Set to 0 to prevent freeing the oldest datagram when the reassembly buffer is + * full (IP_REASS_MAX_PBUFS pbufs are enqueued). The code gets a little smaller. + * Datagrams will be freed by timeout only. Especially useful when MEMP_NUM_REASSDATA + * is set to 1, so one datagram can be reassembled at a time, only. */ +#ifndef IP_REASS_FREE_OLDEST +#define IP_REASS_FREE_OLDEST 1 +#endif /* IP_REASS_FREE_OLDEST */ + +#define IP_REASS_FLAG_LASTFRAG 0x01 + +/** This is a helper struct which holds the starting + * offset and the ending offset of this fragment to + * easily chain the fragments. + * It has to be packed since it has to fit inside the IP header. + */ +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct ip_reass_helper { + PACK_STRUCT_FIELD(struct pbuf *next_pbuf); + PACK_STRUCT_FIELD(u16_t start); + PACK_STRUCT_FIELD(u16_t end); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define IP_ADDRESSES_AND_ID_MATCH(iphdrA, iphdrB) \ + (ip_addr_cmp(&(iphdrA)->src, &(iphdrB)->src) && \ + ip_addr_cmp(&(iphdrA)->dest, &(iphdrB)->dest) && \ + IPH_ID(iphdrA) == IPH_ID(iphdrB)) ? 1 : 0 + +/* global variables */ +static struct ip_reassdata *reassdatagrams; +static u16_t ip_reass_pbufcount; + +/* function prototypes */ +static void ip_reass_dequeue_datagram(struct ip_reassdata *ipr, struct ip_reassdata *prev); +static int ip_reass_free_complete_datagram(struct ip_reassdata *ipr, struct ip_reassdata *prev); + +/** + * Reassembly timer base function + * for both NO_SYS == 0 and 1 (!). + * + * Should be called every 1000 msec (defined by IP_TMR_INTERVAL). + */ +void +ip_reass_tmr(void) +{ + struct ip_reassdata *r, *prev = NULL; + + r = reassdatagrams; + while (r != NULL) { + /* Decrement the timer. Once it reaches 0, + * clean up the incomplete fragment assembly */ + if (r->timer > 0) { + r->timer--; + LWIP_DEBUGF(IP_REASS_DEBUG, ("ip_reass_tmr: timer dec %"U16_F"\n",(u16_t)r->timer)); + prev = r; + r = r->next; + } else { + /* reassembly timed out */ + struct ip_reassdata *tmp; + LWIP_DEBUGF(IP_REASS_DEBUG, ("ip_reass_tmr: timer timed out\n")); + tmp = r; + /* get the next pointer before freeing */ + r = r->next; + /* free the helper struct and all enqueued pbufs */ + ip_reass_free_complete_datagram(tmp, prev); + } + } +} + +/** + * Free a datagram (struct ip_reassdata) and all its pbufs. + * Updates the total count of enqueued pbufs (ip_reass_pbufcount), + * SNMP counters and sends an ICMP time exceeded packet. + * + * @param ipr datagram to free + * @param prev the previous datagram in the linked list + * @return the number of pbufs freed + */ +static int +ip_reass_free_complete_datagram(struct ip_reassdata *ipr, struct ip_reassdata *prev) +{ + int pbufs_freed = 0; + struct pbuf *p; + struct ip_reass_helper *iprh; + + LWIP_ASSERT("prev != ipr", prev != ipr); + if (prev != NULL) { + LWIP_ASSERT("prev->next == ipr", prev->next == ipr); + } + + snmp_inc_ipreasmfails(); +#if LWIP_ICMP + iprh = (struct ip_reass_helper *)ipr->p->payload; + if (iprh->start == 0) { + /* The first fragment was received, send ICMP time exceeded. */ + /* First, de-queue the first pbuf from r->p. */ + p = ipr->p; + ipr->p = iprh->next_pbuf; + /* Then, copy the original header into it. */ + SMEMCPY(p->payload, &ipr->iphdr, IP_HLEN); + icmp_time_exceeded(p, ICMP_TE_FRAG); + pbufs_freed += pbuf_clen(p); + pbuf_free(p); + } +#endif /* LWIP_ICMP */ + + /* First, free all received pbufs. The individual pbufs need to be released + separately as they have not yet been chained */ + p = ipr->p; + while (p != NULL) { + struct pbuf *pcur; + iprh = (struct ip_reass_helper *)p->payload; + pcur = p; + /* get the next pointer before freeing */ + p = iprh->next_pbuf; + pbufs_freed += pbuf_clen(pcur); + pbuf_free(pcur); + } + /* Then, unchain the struct ip_reassdata from the list and free it. */ + ip_reass_dequeue_datagram(ipr, prev); + LWIP_ASSERT("ip_reass_pbufcount >= clen", ip_reass_pbufcount >= pbufs_freed); + ip_reass_pbufcount -= pbufs_freed; + + return pbufs_freed; +} + +#if IP_REASS_FREE_OLDEST +/** + * Free the oldest datagram to make room for enqueueing new fragments. + * The datagram 'fraghdr' belongs to is not freed! + * + * @param fraghdr IP header of the current fragment + * @param pbufs_needed number of pbufs needed to enqueue + * (used for freeing other datagrams if not enough space) + * @return the number of pbufs freed + */ +static int +ip_reass_remove_oldest_datagram(struct ip_hdr *fraghdr, int pbufs_needed) +{ + /* @todo Can't we simply remove the last datagram in the + * linked list behind reassdatagrams? + */ + struct ip_reassdata *r, *oldest, *prev; + int pbufs_freed = 0, pbufs_freed_current; + int other_datagrams; + + /* Free datagrams until being allowed to enqueue 'pbufs_needed' pbufs, + * but don't free the datagram that 'fraghdr' belongs to! */ + do { + oldest = NULL; + prev = NULL; + other_datagrams = 0; + r = reassdatagrams; + while (r != NULL) { + if (!IP_ADDRESSES_AND_ID_MATCH(&r->iphdr, fraghdr)) { + /* Not the same datagram as fraghdr */ + other_datagrams++; + if (oldest == NULL) { + oldest = r; + } else if (r->timer <= oldest->timer) { + /* older than the previous oldest */ + oldest = r; + } + } + if (r->next != NULL) { + prev = r; + } + r = r->next; + } + if (oldest != NULL) { + pbufs_freed_current = ip_reass_free_complete_datagram(oldest, prev); + pbufs_freed += pbufs_freed_current; + } + } while ((pbufs_freed < pbufs_needed) && (other_datagrams > 1)); + return pbufs_freed; +} +#endif /* IP_REASS_FREE_OLDEST */ + +/** + * Enqueues a new fragment into the fragment queue + * @param fraghdr points to the new fragments IP hdr + * @param clen number of pbufs needed to enqueue (used for freeing other datagrams if not enough space) + * @return A pointer to the queue location into which the fragment was enqueued + */ +static struct ip_reassdata* +ip_reass_enqueue_new_datagram(struct ip_hdr *fraghdr, int clen) +{ + struct ip_reassdata* ipr; + /* No matching previous fragment found, allocate a new reassdata struct */ + ipr = memp_malloc(MEMP_REASSDATA); + if (ipr == NULL) { +#if IP_REASS_FREE_OLDEST + if (ip_reass_remove_oldest_datagram(fraghdr, clen) >= clen) { + ipr = memp_malloc(MEMP_REASSDATA); + } + if (ipr == NULL) +#endif /* IP_REASS_FREE_OLDEST */ + { + IPFRAG_STATS_INC(ip_frag.memerr); + LWIP_DEBUGF(IP_REASS_DEBUG,("Failed to alloc reassdata struct\n")); + return NULL; + } + } + memset(ipr, 0, sizeof(struct ip_reassdata)); + ipr->timer = IP_REASS_MAXAGE; + + /* enqueue the new structure to the front of the list */ + ipr->next = reassdatagrams; + reassdatagrams = ipr; + /* copy the ip header for later tests and input */ + /* @todo: no ip options supported? */ + SMEMCPY(&(ipr->iphdr), fraghdr, IP_HLEN); + return ipr; +} + +/** + * Dequeues a datagram from the datagram queue. Doesn't deallocate the pbufs. + * @param ipr points to the queue entry to dequeue + */ +static void +ip_reass_dequeue_datagram(struct ip_reassdata *ipr, struct ip_reassdata *prev) +{ + + /* dequeue the reass struct */ + if (reassdatagrams == ipr) { + /* it was the first in the list */ + reassdatagrams = ipr->next; + } else { + /* it wasn't the first, so it must have a valid 'prev' */ + LWIP_ASSERT("sanity check linked list", prev != NULL); + prev->next = ipr->next; + } + + /* now we can free the ip_reass struct */ + memp_free(MEMP_REASSDATA, ipr); +} + +/** + * Chain a new pbuf into the pbuf list that composes the datagram. The pbuf list + * will grow over time as new pbufs are rx. + * Also checks that the datagram passes basic continuity checks (if the last + * fragment was received at least once). + * @param root_p points to the 'root' pbuf for the current datagram being assembled. + * @param new_p points to the pbuf for the current fragment + * @return 0 if invalid, >0 otherwise + */ +static int +ip_reass_chain_frag_into_datagram_and_validate(struct ip_reassdata *ipr, struct pbuf *new_p) +{ + struct ip_reass_helper *iprh, *iprh_tmp, *iprh_prev=NULL; + struct pbuf *q; + u16_t offset,len; + struct ip_hdr *fraghdr; + int valid = 1; + + /* Extract length and fragment offset from current fragment */ + fraghdr = (struct ip_hdr*)new_p->payload; + len = ntohs(IPH_LEN(fraghdr)) - IPH_HL(fraghdr) * 4; + offset = (ntohs(IPH_OFFSET(fraghdr)) & IP_OFFMASK) * 8; + + /* overwrite the fragment's ip header from the pbuf with our helper struct, + * and setup the embedded helper structure. */ + /* make sure the struct ip_reass_helper fits into the IP header */ + LWIP_ASSERT("sizeof(struct ip_reass_helper) <= IP_HLEN", + sizeof(struct ip_reass_helper) <= IP_HLEN); + iprh = (struct ip_reass_helper*)new_p->payload; + iprh->next_pbuf = NULL; + iprh->start = offset; + iprh->end = offset + len; + + /* Iterate through until we either get to the end of the list (append), + * or we find on with a larger offset (insert). */ + for (q = ipr->p; q != NULL;) { + iprh_tmp = (struct ip_reass_helper*)q->payload; + if (iprh->start < iprh_tmp->start) { + /* the new pbuf should be inserted before this */ + iprh->next_pbuf = q; + if (iprh_prev != NULL) { + /* not the fragment with the lowest offset */ +#if IP_REASS_CHECK_OVERLAP + if ((iprh->start < iprh_prev->end) || (iprh->end > iprh_tmp->start)) { + /* fragment overlaps with previous or following, throw away */ + goto freepbuf; + } +#endif /* IP_REASS_CHECK_OVERLAP */ + iprh_prev->next_pbuf = new_p; + } else { + /* fragment with the lowest offset */ + ipr->p = new_p; + } + break; + } else if(iprh->start == iprh_tmp->start) { + /* received the same datagram twice: no need to keep the datagram */ + goto freepbuf; +#if IP_REASS_CHECK_OVERLAP + } else if(iprh->start < iprh_tmp->end) { + /* overlap: no need to keep the new datagram */ + goto freepbuf; +#endif /* IP_REASS_CHECK_OVERLAP */ + } else { + /* Check if the fragments received so far have no wholes. */ + if (iprh_prev != NULL) { + if (iprh_prev->end != iprh_tmp->start) { + /* There is a fragment missing between the current + * and the previous fragment */ + valid = 0; + } + } + } + q = iprh_tmp->next_pbuf; + iprh_prev = iprh_tmp; + } + + /* If q is NULL, then we made it to the end of the list. Determine what to do now */ + if (q == NULL) { + if (iprh_prev != NULL) { + /* this is (for now), the fragment with the highest offset: + * chain it to the last fragment */ +#if IP_REASS_CHECK_OVERLAP + LWIP_ASSERT("check fragments don't overlap", iprh_prev->end <= iprh->start); +#endif /* IP_REASS_CHECK_OVERLAP */ + iprh_prev->next_pbuf = new_p; + if (iprh_prev->end != iprh->start) { + valid = 0; + } + } else { +#if IP_REASS_CHECK_OVERLAP + LWIP_ASSERT("no previous fragment, this must be the first fragment!", + ipr->p == NULL); +#endif /* IP_REASS_CHECK_OVERLAP */ + /* this is the first fragment we ever received for this ip datagram */ + ipr->p = new_p; + } + } + + /* At this point, the validation part begins: */ + /* If we already received the last fragment */ + if ((ipr->flags & IP_REASS_FLAG_LASTFRAG) != 0) { + /* and had no wholes so far */ + if (valid) { + /* then check if the rest of the fragments is here */ + /* Check if the queue starts with the first datagram */ + if (((struct ip_reass_helper*)ipr->p->payload)->start != 0) { + valid = 0; + } else { + /* and check that there are no wholes after this datagram */ + iprh_prev = iprh; + q = iprh->next_pbuf; + while (q != NULL) { + iprh = (struct ip_reass_helper*)q->payload; + if (iprh_prev->end != iprh->start) { + valid = 0; + break; + } + iprh_prev = iprh; + q = iprh->next_pbuf; + } + /* if still valid, all fragments are received + * (because to the MF==0 already arrived */ + if (valid) { + LWIP_ASSERT("sanity check", ipr->p != NULL); + LWIP_ASSERT("sanity check", + ((struct ip_reass_helper*)ipr->p->payload) != iprh); + LWIP_ASSERT("validate_datagram:next_pbuf!=NULL", + iprh->next_pbuf == NULL); + LWIP_ASSERT("validate_datagram:datagram end!=datagram len", + iprh->end == ipr->datagram_len); + } + } + } + /* If valid is 0 here, there are some fragments missing in the middle + * (since MF == 0 has already arrived). Such datagrams simply time out if + * no more fragments are received... */ + return valid; + } + /* If we come here, not all fragments were received, yet! */ + return 0; /* not yet valid! */ +#if IP_REASS_CHECK_OVERLAP +freepbuf: + ip_reass_pbufcount -= pbuf_clen(new_p); + pbuf_free(new_p); + return 0; +#endif /* IP_REASS_CHECK_OVERLAP */ +} + +/** + * Reassembles incoming IP fragments into an IP datagram. + * + * @param p points to a pbuf chain of the fragment + * @return NULL if reassembly is incomplete, ? otherwise + */ +struct pbuf * +ip_reass(struct pbuf *p) +{ + struct pbuf *r; + struct ip_hdr *fraghdr; + struct ip_reassdata *ipr; + struct ip_reass_helper *iprh; + u16_t offset, len; + u8_t clen; + struct ip_reassdata *ipr_prev = NULL; + + IPFRAG_STATS_INC(ip_frag.recv); + snmp_inc_ipreasmreqds(); + + fraghdr = (struct ip_hdr*)p->payload; + + if ((IPH_HL(fraghdr) * 4) != IP_HLEN) { + LWIP_DEBUGF(IP_REASS_DEBUG,("ip_reass: IP options currently not supported!\n")); + IPFRAG_STATS_INC(ip_frag.err); + goto nullreturn; + } + + offset = (ntohs(IPH_OFFSET(fraghdr)) & IP_OFFMASK) * 8; + len = ntohs(IPH_LEN(fraghdr)) - IPH_HL(fraghdr) * 4; + + /* Check if we are allowed to enqueue more datagrams. */ + clen = pbuf_clen(p); + if ((ip_reass_pbufcount + clen) > IP_REASS_MAX_PBUFS) { +#if IP_REASS_FREE_OLDEST + if (!ip_reass_remove_oldest_datagram(fraghdr, clen) || + ((ip_reass_pbufcount + clen) > IP_REASS_MAX_PBUFS)) +#endif /* IP_REASS_FREE_OLDEST */ + { + /* No datagram could be freed and still too many pbufs enqueued */ + LWIP_DEBUGF(IP_REASS_DEBUG,("ip_reass: Overflow condition: pbufct=%d, clen=%d, MAX=%d\n", + ip_reass_pbufcount, clen, IP_REASS_MAX_PBUFS)); + IPFRAG_STATS_INC(ip_frag.memerr); + /* @todo: send ICMP time exceeded here? */ + /* drop this pbuf */ + goto nullreturn; + } + } + + /* Look for the datagram the fragment belongs to in the current datagram queue, + * remembering the previous in the queue for later dequeueing. */ + for (ipr = reassdatagrams; ipr != NULL; ipr = ipr->next) { + /* Check if the incoming fragment matches the one currently present + in the reassembly buffer. If so, we proceed with copying the + fragment into the buffer. */ + if (IP_ADDRESSES_AND_ID_MATCH(&ipr->iphdr, fraghdr)) { + LWIP_DEBUGF(IP_REASS_DEBUG, ("ip_reass: matching previous fragment ID=%"X16_F"\n", + ntohs(IPH_ID(fraghdr)))); + IPFRAG_STATS_INC(ip_frag.cachehit); + break; + } + ipr_prev = ipr; + } + + if (ipr == NULL) { + /* Enqueue a new datagram into the datagram queue */ + ipr = ip_reass_enqueue_new_datagram(fraghdr, clen); + /* Bail if unable to enqueue */ + if(ipr == NULL) { + goto nullreturn; + } + } else { + if (((ntohs(IPH_OFFSET(fraghdr)) & IP_OFFMASK) == 0) && + ((ntohs(IPH_OFFSET(&ipr->iphdr)) & IP_OFFMASK) != 0)) { + /* ipr->iphdr is not the header from the first fragment, but fraghdr is + * -> copy fraghdr into ipr->iphdr since we want to have the header + * of the first fragment (for ICMP time exceeded and later, for copying + * all options, if supported)*/ + SMEMCPY(&ipr->iphdr, fraghdr, IP_HLEN); + } + } + /* Track the current number of pbufs current 'in-flight', in order to limit + the number of fragments that may be enqueued at any one time */ + ip_reass_pbufcount += clen; + + /* At this point, we have either created a new entry or pointing + * to an existing one */ + + /* check for 'no more fragments', and update queue entry*/ + if ((ntohs(IPH_OFFSET(fraghdr)) & IP_MF) == 0) { + ipr->flags |= IP_REASS_FLAG_LASTFRAG; + ipr->datagram_len = offset + len; + LWIP_DEBUGF(IP_REASS_DEBUG, + ("ip_reass: last fragment seen, total len %"S16_F"\n", + ipr->datagram_len)); + } + /* find the right place to insert this pbuf */ + /* @todo: trim pbufs if fragments are overlapping */ + if (ip_reass_chain_frag_into_datagram_and_validate(ipr, p)) { + /* the totally last fragment (flag more fragments = 0) was received at least + * once AND all fragments are received */ + ipr->datagram_len += IP_HLEN; + + /* save the second pbuf before copying the header over the pointer */ + r = ((struct ip_reass_helper*)ipr->p->payload)->next_pbuf; + + /* copy the original ip header back to the first pbuf */ + fraghdr = (struct ip_hdr*)(ipr->p->payload); + SMEMCPY(fraghdr, &ipr->iphdr, IP_HLEN); + IPH_LEN_SET(fraghdr, htons(ipr->datagram_len)); + IPH_OFFSET_SET(fraghdr, 0); + IPH_CHKSUM_SET(fraghdr, 0); + /* @todo: do we need to set calculate the correct checksum? */ + IPH_CHKSUM_SET(fraghdr, inet_chksum(fraghdr, IP_HLEN)); + + p = ipr->p; + + /* chain together the pbufs contained within the reass_data list. */ + while(r != NULL) { + iprh = (struct ip_reass_helper*)r->payload; + + /* hide the ip header for every succeding fragment */ + pbuf_header(r, -IP_HLEN); + pbuf_cat(p, r); + r = iprh->next_pbuf; + } + /* release the sources allocate for the fragment queue entry */ + ip_reass_dequeue_datagram(ipr, ipr_prev); + + /* and adjust the number of pbufs currently queued for reassembly. */ + ip_reass_pbufcount -= pbuf_clen(p); + + /* Return the pbuf chain */ + return p; + } + /* the datagram is not (yet?) reassembled completely */ + LWIP_DEBUGF(IP_REASS_DEBUG,("ip_reass_pbufcount: %d out\n", ip_reass_pbufcount)); + return NULL; + +nullreturn: + LWIP_DEBUGF(IP_REASS_DEBUG,("ip_reass: nullreturn\n")); + IPFRAG_STATS_INC(ip_frag.drop); + pbuf_free(p); + return NULL; +} +#endif /* IP_REASSEMBLY */ + +#if IP_FRAG +#if IP_FRAG_USES_STATIC_BUF +static u8_t buf[LWIP_MEM_ALIGN_SIZE(IP_FRAG_MAX_MTU + MEM_ALIGNMENT - 1)]; +#endif /* IP_FRAG_USES_STATIC_BUF */ + +/** + * Fragment an IP datagram if too large for the netif. + * + * Chop the datagram in MTU sized chunks and send them in order + * by using a fixed size static memory buffer (PBUF_REF) or + * point PBUF_REFs into p (depending on IP_FRAG_USES_STATIC_BUF). + * + * @param p ip packet to send + * @param netif the netif on which to send + * @param dest destination ip address to which to send + * + * @return ERR_OK if sent successfully, err_t otherwise + */ +err_t +ip_frag(struct pbuf *p, struct netif *netif, struct ip_addr *dest) +{ + struct pbuf *rambuf; +#if IP_FRAG_USES_STATIC_BUF + struct pbuf *header; +#else + struct pbuf *newpbuf; + struct ip_hdr *original_iphdr; +#endif + struct ip_hdr *iphdr; + u16_t nfb; + u16_t left, cop; + u16_t mtu = netif->mtu; + u16_t ofo, omf; + u16_t last; + u16_t poff = IP_HLEN; + u16_t tmp; +#if !IP_FRAG_USES_STATIC_BUF + u16_t newpbuflen = 0; + u16_t left_to_copy; +#endif + + /* Get a RAM based MTU sized pbuf */ +#if IP_FRAG_USES_STATIC_BUF + /* When using a static buffer, we use a PBUF_REF, which we will + * use to reference the packet (without link header). + * Layer and length is irrelevant. + */ + rambuf = pbuf_alloc(PBUF_LINK, 0, PBUF_REF); + if (rambuf == NULL) { + LWIP_DEBUGF(IP_REASS_DEBUG, ("ip_frag: pbuf_alloc(PBUF_LINK, 0, PBUF_REF) failed\n")); + return ERR_MEM; + } + rambuf->tot_len = rambuf->len = mtu; + rambuf->payload = LWIP_MEM_ALIGN((void *)buf); + + /* Copy the IP header in it */ + iphdr = rambuf->payload; + SMEMCPY(iphdr, p->payload, IP_HLEN); +#else /* IP_FRAG_USES_STATIC_BUF */ + original_iphdr = p->payload; + iphdr = original_iphdr; +#endif /* IP_FRAG_USES_STATIC_BUF */ + + /* Save original offset */ + tmp = ntohs(IPH_OFFSET(iphdr)); + ofo = tmp & IP_OFFMASK; + omf = tmp & IP_MF; + + left = p->tot_len - IP_HLEN; + + nfb = (mtu - IP_HLEN) / 8; + + while (left) { + last = (left <= mtu - IP_HLEN); + + /* Set new offset and MF flag */ + tmp = omf | (IP_OFFMASK & (ofo)); + if (!last) + tmp = tmp | IP_MF; + + /* Fill this fragment */ + cop = last ? left : nfb * 8; + +#if IP_FRAG_USES_STATIC_BUF + poff += pbuf_copy_partial(p, (u8_t*)iphdr + IP_HLEN, cop, poff); +#else /* IP_FRAG_USES_STATIC_BUF */ + /* When not using a static buffer, create a chain of pbufs. + * The first will be a PBUF_RAM holding the link and IP header. + * The rest will be PBUF_REFs mirroring the pbuf chain to be fragged, + * but limited to the size of an mtu. + */ + rambuf = pbuf_alloc(PBUF_LINK, IP_HLEN, PBUF_RAM); + if (rambuf == NULL) { + return ERR_MEM; + } + LWIP_ASSERT("this needs a pbuf in one piece!", + (p->len >= (IP_HLEN))); + SMEMCPY(rambuf->payload, original_iphdr, IP_HLEN); + iphdr = rambuf->payload; + + /* Can just adjust p directly for needed offset. */ + p->payload = (u8_t *)p->payload + poff; + p->len -= poff; + + left_to_copy = cop; + while (left_to_copy) { + newpbuflen = (left_to_copy < p->len) ? left_to_copy : p->len; + /* Is this pbuf already empty? */ + if (!newpbuflen) { + p = p->next; + continue; + } + newpbuf = pbuf_alloc(PBUF_RAW, 0, PBUF_REF); + if (newpbuf == NULL) { + pbuf_free(rambuf); + return ERR_MEM; + } + /* Mirror this pbuf, although we might not need all of it. */ + newpbuf->payload = p->payload; + newpbuf->len = newpbuf->tot_len = newpbuflen; + /* Add it to end of rambuf's chain, but using pbuf_cat, not pbuf_chain + * so that it is removed when pbuf_dechain is later called on rambuf. + */ + pbuf_cat(rambuf, newpbuf); + left_to_copy -= newpbuflen; + if (left_to_copy) + p = p->next; + } + poff = newpbuflen; +#endif /* IP_FRAG_USES_STATIC_BUF */ + + /* Correct header */ + IPH_OFFSET_SET(iphdr, htons(tmp)); + IPH_LEN_SET(iphdr, htons(cop + IP_HLEN)); + IPH_CHKSUM_SET(iphdr, 0); + IPH_CHKSUM_SET(iphdr, inet_chksum(iphdr, IP_HLEN)); + +#if IP_FRAG_USES_STATIC_BUF + if (last) + pbuf_realloc(rambuf, left + IP_HLEN); + + /* This part is ugly: we alloc a RAM based pbuf for + * the link level header for each chunk and then + * free it.A PBUF_ROM style pbuf for which pbuf_header + * worked would make things simpler. + */ + header = pbuf_alloc(PBUF_LINK, 0, PBUF_RAM); + if (header != NULL) { + pbuf_chain(header, rambuf); + netif->output(netif, header, dest); + IPFRAG_STATS_INC(ip_frag.xmit); + snmp_inc_ipfragcreates(); + pbuf_free(header); + } else { + LWIP_DEBUGF(IP_REASS_DEBUG, ("ip_frag: pbuf_alloc() for header failed\n")); + pbuf_free(rambuf); + return ERR_MEM; + } +#else /* IP_FRAG_USES_STATIC_BUF */ + /* No need for separate header pbuf - we allowed room for it in rambuf + * when allocated. + */ + netif->output(netif, rambuf, dest); + IPFRAG_STATS_INC(ip_frag.xmit); + + /* Unfortunately we can't reuse rambuf - the hardware may still be + * using the buffer. Instead we free it (and the ensuing chain) and + * recreate it next time round the loop. If we're lucky the hardware + * will have already sent the packet, the free will really free, and + * there will be zero memory penalty. + */ + + pbuf_free(rambuf); +#endif /* IP_FRAG_USES_STATIC_BUF */ + left -= cop; + ofo += nfb; + } +#if IP_FRAG_USES_STATIC_BUF + pbuf_free(rambuf); +#endif /* IP_FRAG_USES_STATIC_BUF */ + snmp_inc_ipfragoks(); + return ERR_OK; +} +#endif /* IP_FRAG */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/mem.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/mem.c new file mode 100644 index 000000000..ea3f4a6cd --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/mem.c @@ -0,0 +1,635 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Dynamic memory manager + * + * This is a lightweight replacement for the standard C library malloc(). + * + * If you want to use the standard C library malloc() instead, define + * MEM_LIBC_MALLOC to 1 in your lwipopts.h + * + * To let mem_malloc() use pools (prevents fragmentation and is much faster than + * a heap but might waste some memory), define MEM_USE_POOLS to 1, define + * MEM_USE_CUSTOM_POOLS to 1 and create a file "lwippools.h" that includes a list + * of pools like this (more pools can be added between _START and _END): + * + * Define three pools with sizes 256, 512, and 1512 bytes + * LWIP_MALLOC_MEMPOOL_START + * LWIP_MALLOC_MEMPOOL(20, 256) + * LWIP_MALLOC_MEMPOOL(10, 512) + * LWIP_MALLOC_MEMPOOL(5, 1512) + * LWIP_MALLOC_MEMPOOL_END + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * Simon Goldschmidt + * + */ + +#include "lwip/opt.h" + +#if !MEM_LIBC_MALLOC /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/sys.h" +#include "lwip/stats.h" + +#include <string.h> + +#if MEM_USE_POOLS +/* lwIP head implemented with different sized pools */ + +/** + * Allocate memory: determine the smallest pool that is big enough + * to contain an element of 'size' and get an element from that pool. + * + * @param size the size in bytes of the memory needed + * @return a pointer to the allocated memory or NULL if the pool is empty + */ +void * +mem_malloc(mem_size_t size) +{ + struct memp_malloc_helper *element; + memp_t poolnr; + mem_size_t required_size = size + sizeof(struct memp_malloc_helper); + + for (poolnr = MEMP_POOL_FIRST; poolnr <= MEMP_POOL_LAST; poolnr++) { +#if MEM_USE_POOLS_TRY_BIGGER_POOL +again: +#endif /* MEM_USE_POOLS_TRY_BIGGER_POOL */ + /* is this pool big enough to hold an element of the required size + plus a struct memp_malloc_helper that saves the pool this element came from? */ + if (required_size <= memp_sizes[poolnr]) { + break; + } + } + if (poolnr > MEMP_POOL_LAST) { + LWIP_ASSERT("mem_malloc(): no pool is that big!", 0); + return NULL; + } + element = (struct memp_malloc_helper*)memp_malloc(poolnr); + if (element == NULL) { + /* No need to DEBUGF or ASSERT: This error is already + taken care of in memp.c */ +#if MEM_USE_POOLS_TRY_BIGGER_POOL + /** Try a bigger pool if this one is empty! */ + if (poolnr < MEMP_POOL_LAST) { + poolnr++; + goto again; + } +#endif /* MEM_USE_POOLS_TRY_BIGGER_POOL */ + return NULL; + } + + /* save the pool number this element came from */ + element->poolnr = poolnr; + /* and return a pointer to the memory directly after the struct memp_malloc_helper */ + element++; + + return element; +} + +/** + * Free memory previously allocated by mem_malloc. Loads the pool number + * and calls memp_free with that pool number to put the element back into + * its pool + * + * @param rmem the memory element to free + */ +void +mem_free(void *rmem) +{ + struct memp_malloc_helper *hmem = (struct memp_malloc_helper*)rmem; + + LWIP_ASSERT("rmem != NULL", (rmem != NULL)); + LWIP_ASSERT("rmem == MEM_ALIGN(rmem)", (rmem == LWIP_MEM_ALIGN(rmem))); + + /* get the original struct memp_malloc_helper */ + hmem--; + + LWIP_ASSERT("hmem != NULL", (hmem != NULL)); + LWIP_ASSERT("hmem == MEM_ALIGN(hmem)", (hmem == LWIP_MEM_ALIGN(hmem))); + LWIP_ASSERT("hmem->poolnr < MEMP_MAX", (hmem->poolnr < MEMP_MAX)); + + /* and put it in the pool we saved earlier */ + memp_free(hmem->poolnr, hmem); +} + +#else /* MEM_USE_POOLS */ +/* lwIP replacement for your libc malloc() */ + +/** + * The heap is made up as a list of structs of this type. + * This does not have to be aligned since for getting its size, + * we only use the macro SIZEOF_STRUCT_MEM, which automatically alignes. + */ +struct mem { + /** index (-> ram[next]) of the next struct */ + mem_size_t next; + /** index (-> ram[next]) of the next struct */ + mem_size_t prev; + /** 1: this area is used; 0: this area is unused */ + u8_t used; +}; + +/** All allocated blocks will be MIN_SIZE bytes big, at least! + * MIN_SIZE can be overridden to suit your needs. Smaller values save space, + * larger values could prevent too small blocks to fragment the RAM too much. */ +#ifndef MIN_SIZE +#define MIN_SIZE 12 +#endif /* MIN_SIZE */ +/* some alignment macros: we define them here for better source code layout */ +#define MIN_SIZE_ALIGNED LWIP_MEM_ALIGN_SIZE(MIN_SIZE) +#define SIZEOF_STRUCT_MEM LWIP_MEM_ALIGN_SIZE(sizeof(struct mem)) +#define MEM_SIZE_ALIGNED LWIP_MEM_ALIGN_SIZE(MEM_SIZE) + +/** the heap. we need one struct mem at the end and some room for alignment */ +static u8_t ram_heap[MEM_SIZE_ALIGNED + (2*SIZEOF_STRUCT_MEM) + MEM_ALIGNMENT]; +/** pointer to the heap (ram_heap): for alignment, ram is now a pointer instead of an array */ +static u8_t *ram; +/** the last entry, always unused! */ +static struct mem *ram_end; +/** pointer to the lowest free block, this is used for faster search */ +static struct mem *lfree; + +/** concurrent access protection */ +static sys_sem_t mem_sem; + +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + +static volatile u8_t mem_free_count; + +/* Allow mem_free from other (e.g. interrupt) context */ +#define LWIP_MEM_FREE_DECL_PROTECT() SYS_ARCH_DECL_PROTECT(lev_free) +#define LWIP_MEM_FREE_PROTECT() SYS_ARCH_PROTECT(lev_free) +#define LWIP_MEM_FREE_UNPROTECT() SYS_ARCH_UNPROTECT(lev_free) +#define LWIP_MEM_ALLOC_DECL_PROTECT() SYS_ARCH_DECL_PROTECT(lev_alloc) +#define LWIP_MEM_ALLOC_PROTECT() SYS_ARCH_PROTECT(lev_alloc) +#define LWIP_MEM_ALLOC_UNPROTECT() SYS_ARCH_UNPROTECT(lev_alloc) + +#else /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + +/* Protect the heap only by using a semaphore */ +#define LWIP_MEM_FREE_DECL_PROTECT() +#define LWIP_MEM_FREE_PROTECT() sys_arch_sem_wait(mem_sem, 0) +#define LWIP_MEM_FREE_UNPROTECT() sys_sem_signal(mem_sem) +/* mem_malloc is protected using semaphore AND LWIP_MEM_ALLOC_PROTECT */ +#define LWIP_MEM_ALLOC_DECL_PROTECT() +#define LWIP_MEM_ALLOC_PROTECT() +#define LWIP_MEM_ALLOC_UNPROTECT() + +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + + +/** + * "Plug holes" by combining adjacent empty struct mems. + * After this function is through, there should not exist + * one empty struct mem pointing to another empty struct mem. + * + * @param mem this points to a struct mem which just has been freed + * @internal this function is only called by mem_free() and mem_realloc() + * + * This assumes access to the heap is protected by the calling function + * already. + */ +static void +plug_holes(struct mem *mem) +{ + struct mem *nmem; + struct mem *pmem; + + LWIP_ASSERT("plug_holes: mem >= ram", (u8_t *)mem >= ram); + LWIP_ASSERT("plug_holes: mem < ram_end", (u8_t *)mem < (u8_t *)ram_end); + LWIP_ASSERT("plug_holes: mem->used == 0", mem->used == 0); + + /* plug hole forward */ + LWIP_ASSERT("plug_holes: mem->next <= MEM_SIZE_ALIGNED", mem->next <= MEM_SIZE_ALIGNED); + + nmem = (struct mem *)&ram[mem->next]; + if (mem != nmem && nmem->used == 0 && (u8_t *)nmem != (u8_t *)ram_end) { + /* if mem->next is unused and not end of ram, combine mem and mem->next */ + if (lfree == nmem) { + lfree = mem; + } + mem->next = nmem->next; + ((struct mem *)&ram[nmem->next])->prev = (u8_t *)mem - ram; + } + + /* plug hole backward */ + pmem = (struct mem *)&ram[mem->prev]; + if (pmem != mem && pmem->used == 0) { + /* if mem->prev is unused, combine mem and mem->prev */ + if (lfree == mem) { + lfree = pmem; + } + pmem->next = mem->next; + ((struct mem *)&ram[mem->next])->prev = (u8_t *)pmem - ram; + } +} + +/** + * Zero the heap and initialize start, end and lowest-free + */ +void +mem_init(void) +{ + struct mem *mem; + + LWIP_ASSERT("Sanity check alignment", + (SIZEOF_STRUCT_MEM & (MEM_ALIGNMENT-1)) == 0); + + /* align the heap */ + ram = LWIP_MEM_ALIGN(ram_heap); + /* initialize the start of the heap */ + mem = (struct mem *)ram; + mem->next = MEM_SIZE_ALIGNED; + mem->prev = 0; + mem->used = 0; + /* initialize the end of the heap */ + ram_end = (struct mem *)&ram[MEM_SIZE_ALIGNED]; + ram_end->used = 1; + ram_end->next = MEM_SIZE_ALIGNED; + ram_end->prev = MEM_SIZE_ALIGNED; + + mem_sem = sys_sem_new(1); + + /* initialize the lowest-free pointer to the start of the heap */ + lfree = (struct mem *)ram; + + MEM_STATS_AVAIL(avail, MEM_SIZE_ALIGNED); +} + +/** + * Put a struct mem back on the heap + * + * @param rmem is the data portion of a struct mem as returned by a previous + * call to mem_malloc() + */ +void +mem_free(void *rmem) +{ + struct mem *mem; + LWIP_MEM_FREE_DECL_PROTECT(); + + if (rmem == NULL) { + LWIP_DEBUGF(MEM_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("mem_free(p == NULL) was called.\n")); + return; + } + LWIP_ASSERT("mem_free: sanity check alignment", (((mem_ptr_t)rmem) & (MEM_ALIGNMENT-1)) == 0); + + LWIP_ASSERT("mem_free: legal memory", (u8_t *)rmem >= (u8_t *)ram && + (u8_t *)rmem < (u8_t *)ram_end); + + if ((u8_t *)rmem < (u8_t *)ram || (u8_t *)rmem >= (u8_t *)ram_end) { + SYS_ARCH_DECL_PROTECT(lev); + LWIP_DEBUGF(MEM_DEBUG | LWIP_DBG_LEVEL_SEVERE, ("mem_free: illegal memory\n")); + /* protect mem stats from concurrent access */ + SYS_ARCH_PROTECT(lev); + MEM_STATS_INC(illegal); + SYS_ARCH_UNPROTECT(lev); + return; + } + /* protect the heap from concurrent access */ + LWIP_MEM_FREE_PROTECT(); + /* Get the corresponding struct mem ... */ + mem = (struct mem *)((u8_t *)rmem - SIZEOF_STRUCT_MEM); + /* ... which has to be in a used state ... */ + LWIP_ASSERT("mem_free: mem->used", mem->used); + /* ... and is now unused. */ + mem->used = 0; + + if (mem < lfree) { + /* the newly freed struct is now the lowest */ + lfree = mem; + } + + MEM_STATS_DEC_USED(used, mem->next - ((u8_t *)mem - ram)); + + /* finally, see if prev or next are free also */ + plug_holes(mem); +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + mem_free_count = 1; +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + LWIP_MEM_FREE_UNPROTECT(); +} + +/** + * In contrast to its name, mem_realloc can only shrink memory, not expand it. + * Since the only use (for now) is in pbuf_realloc (which also can only shrink), + * this shouldn't be a problem! + * + * @param rmem pointer to memory allocated by mem_malloc the is to be shrinked + * @param newsize required size after shrinking (needs to be smaller than or + * equal to the previous size) + * @return for compatibility reasons: is always == rmem, at the moment + * or NULL if newsize is > old size, in which case rmem is NOT touched + * or freed! + */ +void * +mem_realloc(void *rmem, mem_size_t newsize) +{ + mem_size_t size; + mem_size_t ptr, ptr2; + struct mem *mem, *mem2; + /* use the FREE_PROTECT here: it protects with sem OR SYS_ARCH_PROTECT */ + LWIP_MEM_FREE_DECL_PROTECT(); + + /* Expand the size of the allocated memory region so that we can + adjust for alignment. */ + newsize = LWIP_MEM_ALIGN_SIZE(newsize); + + if(newsize < MIN_SIZE_ALIGNED) { + /* every data block must be at least MIN_SIZE_ALIGNED long */ + newsize = MIN_SIZE_ALIGNED; + } + + if (newsize > MEM_SIZE_ALIGNED) { + return NULL; + } + + LWIP_ASSERT("mem_realloc: legal memory", (u8_t *)rmem >= (u8_t *)ram && + (u8_t *)rmem < (u8_t *)ram_end); + + if ((u8_t *)rmem < (u8_t *)ram || (u8_t *)rmem >= (u8_t *)ram_end) { + SYS_ARCH_DECL_PROTECT(lev); + LWIP_DEBUGF(MEM_DEBUG | LWIP_DBG_LEVEL_SEVERE, ("mem_realloc: illegal memory\n")); + /* protect mem stats from concurrent access */ + SYS_ARCH_PROTECT(lev); + MEM_STATS_INC(illegal); + SYS_ARCH_UNPROTECT(lev); + return rmem; + } + /* Get the corresponding struct mem ... */ + mem = (struct mem *)((u8_t *)rmem - SIZEOF_STRUCT_MEM); + /* ... and its offset pointer */ + ptr = (u8_t *)mem - ram; + + size = mem->next - ptr - SIZEOF_STRUCT_MEM; + LWIP_ASSERT("mem_realloc can only shrink memory", newsize <= size); + if (newsize > size) { + /* not supported */ + return NULL; + } + if (newsize == size) { + /* No change in size, simply return */ + return rmem; + } + + /* protect the heap from concurrent access */ + LWIP_MEM_FREE_PROTECT(); + + MEM_STATS_DEC_USED(used, (size - newsize)); + + mem2 = (struct mem *)&ram[mem->next]; + if(mem2->used == 0) { + /* The next struct is unused, we can simply move it at little */ + mem_size_t next; + /* remember the old next pointer */ + next = mem2->next; + /* create new struct mem which is moved directly after the shrinked mem */ + ptr2 = ptr + SIZEOF_STRUCT_MEM + newsize; + if (lfree == mem2) { + lfree = (struct mem *)&ram[ptr2]; + } + mem2 = (struct mem *)&ram[ptr2]; + mem2->used = 0; + /* restore the next pointer */ + mem2->next = next; + /* link it back to mem */ + mem2->prev = ptr; + /* link mem to it */ + mem->next = ptr2; + /* last thing to restore linked list: as we have moved mem2, + * let 'mem2->next->prev' point to mem2 again. but only if mem2->next is not + * the end of the heap */ + if (mem2->next != MEM_SIZE_ALIGNED) { + ((struct mem *)&ram[mem2->next])->prev = ptr2; + } + /* no need to plug holes, we've already done that */ + } else if (newsize + SIZEOF_STRUCT_MEM + MIN_SIZE_ALIGNED <= size) { + /* Next struct is used but there's room for another struct mem with + * at least MIN_SIZE_ALIGNED of data. + * Old size ('size') must be big enough to contain at least 'newsize' plus a struct mem + * ('SIZEOF_STRUCT_MEM') with some data ('MIN_SIZE_ALIGNED'). + * @todo we could leave out MIN_SIZE_ALIGNED. We would create an empty + * region that couldn't hold data, but when mem->next gets freed, + * the 2 regions would be combined, resulting in more free memory */ + ptr2 = ptr + SIZEOF_STRUCT_MEM + newsize; + mem2 = (struct mem *)&ram[ptr2]; + if (mem2 < lfree) { + lfree = mem2; + } + mem2->used = 0; + mem2->next = mem->next; + mem2->prev = ptr; + mem->next = ptr2; + if (mem2->next != MEM_SIZE_ALIGNED) { + ((struct mem *)&ram[mem2->next])->prev = ptr2; + } + /* the original mem->next is used, so no need to plug holes! */ + } + /* else { + next struct mem is used but size between mem and mem2 is not big enough + to create another struct mem + -> don't do anyhting. + -> the remaining space stays unused since it is too small + } */ +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + mem_free_count = 1; +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + LWIP_MEM_FREE_UNPROTECT(); + return rmem; +} + +/** + * Adam's mem_malloc() plus solution for bug #17922 + * Allocate a block of memory with a minimum of 'size' bytes. + * + * @param size is the minimum size of the requested block in bytes. + * @return pointer to allocated memory or NULL if no free memory was found. + * + * Note that the returned value will always be aligned (as defined by MEM_ALIGNMENT). + */ +void * +mem_malloc(mem_size_t size) +{ + mem_size_t ptr, ptr2; + struct mem *mem, *mem2; +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + u8_t local_mem_free_count = 0; +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + LWIP_MEM_ALLOC_DECL_PROTECT(); + + if (size == 0) { + return NULL; + } + + /* Expand the size of the allocated memory region so that we can + adjust for alignment. */ + size = LWIP_MEM_ALIGN_SIZE(size); + + if(size < MIN_SIZE_ALIGNED) { + /* every data block must be at least MIN_SIZE_ALIGNED long */ + size = MIN_SIZE_ALIGNED; + } + + if (size > MEM_SIZE_ALIGNED) { + return NULL; + } + + /* protect the heap from concurrent access */ + sys_arch_sem_wait(mem_sem, 0); + LWIP_MEM_ALLOC_PROTECT(); +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + /* run as long as a mem_free disturbed mem_malloc */ + do { + local_mem_free_count = 0; +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + + /* Scan through the heap searching for a free block that is big enough, + * beginning with the lowest free block. + */ + for (ptr = (u8_t *)lfree - ram; ptr < MEM_SIZE_ALIGNED - size; + ptr = ((struct mem *)&ram[ptr])->next) { + mem = (struct mem *)&ram[ptr]; +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + mem_free_count = 0; + LWIP_MEM_ALLOC_UNPROTECT(); + /* allow mem_free to run */ + LWIP_MEM_ALLOC_PROTECT(); + if (mem_free_count != 0) { + local_mem_free_count = mem_free_count; + } + mem_free_count = 0; +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + + if ((!mem->used) && + (mem->next - (ptr + SIZEOF_STRUCT_MEM)) >= size) { + /* mem is not used and at least perfect fit is possible: + * mem->next - (ptr + SIZEOF_STRUCT_MEM) gives us the 'user data size' of mem */ + + if (mem->next - (ptr + SIZEOF_STRUCT_MEM) >= (size + SIZEOF_STRUCT_MEM + MIN_SIZE_ALIGNED)) { + /* (in addition to the above, we test if another struct mem (SIZEOF_STRUCT_MEM) containing + * at least MIN_SIZE_ALIGNED of data also fits in the 'user data space' of 'mem') + * -> split large block, create empty remainder, + * remainder must be large enough to contain MIN_SIZE_ALIGNED data: if + * mem->next - (ptr + (2*SIZEOF_STRUCT_MEM)) == size, + * struct mem would fit in but no data between mem2 and mem2->next + * @todo we could leave out MIN_SIZE_ALIGNED. We would create an empty + * region that couldn't hold data, but when mem->next gets freed, + * the 2 regions would be combined, resulting in more free memory + */ + ptr2 = ptr + SIZEOF_STRUCT_MEM + size; + /* create mem2 struct */ + mem2 = (struct mem *)&ram[ptr2]; + mem2->used = 0; + mem2->next = mem->next; + mem2->prev = ptr; + /* and insert it between mem and mem->next */ + mem->next = ptr2; + mem->used = 1; + + if (mem2->next != MEM_SIZE_ALIGNED) { + ((struct mem *)&ram[mem2->next])->prev = ptr2; + } + MEM_STATS_INC_USED(used, (size + SIZEOF_STRUCT_MEM)); + } else { + /* (a mem2 struct does no fit into the user data space of mem and mem->next will always + * be used at this point: if not we have 2 unused structs in a row, plug_holes should have + * take care of this). + * -> near fit or excact fit: do not split, no mem2 creation + * also can't move mem->next directly behind mem, since mem->next + * will always be used at this point! + */ + mem->used = 1; + MEM_STATS_INC_USED(used, mem->next - ((u8_t *)mem - ram)); + } + + if (mem == lfree) { + /* Find next free block after mem and update lowest free pointer */ + while (lfree->used && lfree != ram_end) { + LWIP_MEM_ALLOC_UNPROTECT(); + /* prevent high interrupt latency... */ + LWIP_MEM_ALLOC_PROTECT(); + lfree = (struct mem *)&ram[lfree->next]; + } + LWIP_ASSERT("mem_malloc: !lfree->used", ((lfree == ram_end) || (!lfree->used))); + } + LWIP_MEM_ALLOC_UNPROTECT(); + sys_sem_signal(mem_sem); + LWIP_ASSERT("mem_malloc: allocated memory not above ram_end.", + (mem_ptr_t)mem + SIZEOF_STRUCT_MEM + size <= (mem_ptr_t)ram_end); + LWIP_ASSERT("mem_malloc: allocated memory properly aligned.", + ((mem_ptr_t)mem + SIZEOF_STRUCT_MEM) % MEM_ALIGNMENT == 0); + LWIP_ASSERT("mem_malloc: sanity check alignment", + (((mem_ptr_t)mem) & (MEM_ALIGNMENT-1)) == 0); + + return (u8_t *)mem + SIZEOF_STRUCT_MEM; + } + } +#if LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT + /* if we got interrupted by a mem_free, try again */ + } while(local_mem_free_count != 0); +#endif /* LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT */ + LWIP_DEBUGF(MEM_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("mem_malloc: could not allocate %"S16_F" bytes\n", (s16_t)size)); + MEM_STATS_INC(err); + LWIP_MEM_ALLOC_UNPROTECT(); + sys_sem_signal(mem_sem); + return NULL; +} + +#endif /* MEM_USE_POOLS */ +/** + * Contiguously allocates enough space for count objects that are size bytes + * of memory each and returns a pointer to the allocated memory. + * + * The allocated memory is filled with bytes of value zero. + * + * @param count number of objects to allocate + * @param size size of the objects to allocate + * @return pointer to allocated memory / NULL pointer if there is an error + */ +void *mem_calloc(mem_size_t count, mem_size_t size) +{ + void *p; + + /* allocate 'count' objects of size 'size' */ + p = mem_malloc(count * size); + if (p) { + /* zero the memory */ + memset(p, 0, count * size); + } + return p; +} + +#endif /* !MEM_LIBC_MALLOC */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/memp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/memp.c new file mode 100644 index 000000000..bd2fd26a8 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/memp.c @@ -0,0 +1,388 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Dynamic pool memory manager + * + * lwIP has dedicated pools for many structures (netconn, protocol control blocks, + * packet buffers, ...). All these pools are managed here. + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#include "lwip/memp.h" +#include "lwip/pbuf.h" +#include "lwip/udp.h" +#include "lwip/raw.h" +#include "lwip/tcp.h" +#include "lwip/igmp.h" +#include "lwip/api.h" +#include "lwip/api_msg.h" +#include "lwip/tcpip.h" +#include "lwip/sys.h" +#include "lwip/stats.h" +#include "netif/etharp.h" +#include "lwip/ip_frag.h" + +#include <string.h> + +#if !MEMP_MEM_MALLOC /* don't build if not configured for use in lwipopts.h */ + +struct memp { + struct memp *next; +#if MEMP_OVERFLOW_CHECK + const char *file; + int line; +#endif /* MEMP_OVERFLOW_CHECK */ +}; + +#if MEMP_OVERFLOW_CHECK +/* if MEMP_OVERFLOW_CHECK is turned on, we reserve some bytes at the beginning + * and at the end of each element, initialize them as 0xcd and check + * them later. */ +/* If MEMP_OVERFLOW_CHECK is >= 2, on every call to memp_malloc or memp_free, + * every single element in each pool is checked! + * This is VERY SLOW but also very helpful. */ +/* MEMP_SANITY_REGION_BEFORE and MEMP_SANITY_REGION_AFTER can be overridden in + * lwipopts.h to change the amount reserved for checking. */ +#ifndef MEMP_SANITY_REGION_BEFORE +#define MEMP_SANITY_REGION_BEFORE 16 +#endif /* MEMP_SANITY_REGION_BEFORE*/ +#if MEMP_SANITY_REGION_BEFORE > 0 +#define MEMP_SANITY_REGION_BEFORE_ALIGNED LWIP_MEM_ALIGN_SIZE(MEMP_SANITY_REGION_BEFORE) +#else +#define MEMP_SANITY_REGION_BEFORE_ALIGNED 0 +#endif /* MEMP_SANITY_REGION_BEFORE*/ +#ifndef MEMP_SANITY_REGION_AFTER +#define MEMP_SANITY_REGION_AFTER 16 +#endif /* MEMP_SANITY_REGION_AFTER*/ +#if MEMP_SANITY_REGION_AFTER > 0 +#define MEMP_SANITY_REGION_AFTER_ALIGNED LWIP_MEM_ALIGN_SIZE(MEMP_SANITY_REGION_AFTER) +#else +#define MEMP_SANITY_REGION_AFTER_ALIGNED 0 +#endif /* MEMP_SANITY_REGION_AFTER*/ + +/* MEMP_SIZE: save space for struct memp and for sanity check */ +#define MEMP_SIZE (LWIP_MEM_ALIGN_SIZE(sizeof(struct memp)) + MEMP_SANITY_REGION_BEFORE_ALIGNED) +#define MEMP_ALIGN_SIZE(x) (LWIP_MEM_ALIGN_SIZE(x) + MEMP_SANITY_REGION_AFTER_ALIGNED) + +#else /* MEMP_OVERFLOW_CHECK */ + +/* No sanity checks + * We don't need to preserve the struct memp while not allocated, so we + * can save a little space and set MEMP_SIZE to 0. + */ +#define MEMP_SIZE 0 +#define MEMP_ALIGN_SIZE(x) (LWIP_MEM_ALIGN_SIZE(x)) + +#endif /* MEMP_OVERFLOW_CHECK */ + +/** This array holds the first free element of each pool. + * Elements form a linked list. */ +static struct memp *memp_tab[MEMP_MAX]; + +#else /* MEMP_MEM_MALLOC */ + +#define MEMP_ALIGN_SIZE(x) (LWIP_MEM_ALIGN_SIZE(x)) + +#endif /* MEMP_MEM_MALLOC */ + +/** This array holds the element sizes of each pool. */ +#if !MEM_USE_POOLS && !MEMP_MEM_MALLOC +static +#endif +const u16_t memp_sizes[MEMP_MAX] = { +#define LWIP_MEMPOOL(name,num,size,desc) LWIP_MEM_ALIGN_SIZE(size), +#include "lwip/memp_std.h" +}; + +#if !MEMP_MEM_MALLOC /* don't build if not configured for use in lwipopts.h */ + +/** This array holds the number of elements in each pool. */ +static const u16_t memp_num[MEMP_MAX] = { +#define LWIP_MEMPOOL(name,num,size,desc) (num), +#include "lwip/memp_std.h" +}; + +/** This array holds a textual description of each pool. */ +#ifdef LWIP_DEBUG +static const char *memp_desc[MEMP_MAX] = { +#define LWIP_MEMPOOL(name,num,size,desc) (desc), +#include "lwip/memp_std.h" +}; +#endif /* LWIP_DEBUG */ + +/** This is the actual memory used by the pools. */ +static u8_t memp_memory[MEM_ALIGNMENT - 1 +#define LWIP_MEMPOOL(name,num,size,desc) + ( (num) * (MEMP_SIZE + MEMP_ALIGN_SIZE(size) ) ) +#include "lwip/memp_std.h" +]; + +#if MEMP_SANITY_CHECK +/** + * Check that memp-lists don't form a circle + */ +static int +memp_sanity(void) +{ + s16_t i, c; + struct memp *m, *n; + + for (i = 0; i < MEMP_MAX; i++) { + for (m = memp_tab[i]; m != NULL; m = m->next) { + c = 1; + for (n = memp_tab[i]; n != NULL; n = n->next) { + if (n == m && --c < 0) { + return 0; + } + } + } + } + return 1; +} +#endif /* MEMP_SANITY_CHECK*/ +#if MEMP_OVERFLOW_CHECK +/** + * Check if a memp element was victim of an overflow + * (e.g. the restricted area after it has been altered) + * + * @param p the memp element to check + * @param memp_size the element size of the pool p comes from + */ +static void +memp_overflow_check_element(struct memp *p, u16_t memp_size) +{ + u16_t k; + u8_t *m; +#if MEMP_SANITY_REGION_BEFORE_ALIGNED > 0 + m = (u8_t*)p + MEMP_SIZE - MEMP_SANITY_REGION_BEFORE_ALIGNED; + for (k = 0; k < MEMP_SANITY_REGION_BEFORE_ALIGNED; k++) { + if (m[k] != 0xcd) { + LWIP_ASSERT("detected memp underflow!", 0); + } + } +#endif +#if MEMP_SANITY_REGION_AFTER_ALIGNED > 0 + m = (u8_t*)p + MEMP_SIZE + memp_size; + for (k = 0; k < MEMP_SANITY_REGION_AFTER_ALIGNED; k++) { + if (m[k] != 0xcd) { + LWIP_ASSERT("detected memp overflow!", 0); + } + } +#endif +} + +/** + * Do an overflow check for all elements in every pool. + * + * @see memp_overflow_check_element for a description of the check + */ +static void +memp_overflow_check_all(void) +{ + u16_t i, j; + struct memp *p; + + p = LWIP_MEM_ALIGN(memp_memory); + for (i = 0; i < MEMP_MAX; ++i) { + p = p; + for (j = 0; j < memp_num[i]; ++j) { + memp_overflow_check_element(p, memp_sizes[i]); + p = (struct memp*)((u8_t*)p + MEMP_SIZE + memp_sizes[i] + MEMP_SANITY_REGION_AFTER_ALIGNED); + } + } +} + +/** + * Initialize the restricted areas of all memp elements in every pool. + */ +static void +memp_overflow_init(void) +{ + u16_t i, j; + struct memp *p; + u8_t *m; + + p = LWIP_MEM_ALIGN(memp_memory); + for (i = 0; i < MEMP_MAX; ++i) { + p = p; + for (j = 0; j < memp_num[i]; ++j) { +#if MEMP_SANITY_REGION_BEFORE_ALIGNED > 0 + m = (u8_t*)p + MEMP_SIZE - MEMP_SANITY_REGION_BEFORE_ALIGNED; + memset(m, 0xcd, MEMP_SANITY_REGION_BEFORE_ALIGNED); +#endif +#if MEMP_SANITY_REGION_AFTER_ALIGNED > 0 + m = (u8_t*)p + MEMP_SIZE + memp_sizes[i]; + memset(m, 0xcd, MEMP_SANITY_REGION_AFTER_ALIGNED); +#endif + p = (struct memp*)((u8_t*)p + MEMP_SIZE + memp_sizes[i] + MEMP_SANITY_REGION_AFTER_ALIGNED); + } + } +} +#endif /* MEMP_OVERFLOW_CHECK */ + +/** + * Initialize this module. + * + * Carves out memp_memory into linked lists for each pool-type. + */ +void +memp_init(void) +{ + struct memp *memp; + u16_t i, j; + + for (i = 0; i < MEMP_MAX; ++i) { + MEMP_STATS_AVAIL(used, i, 0); + MEMP_STATS_AVAIL(max, i, 0); + MEMP_STATS_AVAIL(err, i, 0); + MEMP_STATS_AVAIL(avail, i, memp_num[i]); + } + + memp = LWIP_MEM_ALIGN(memp_memory); + /* for every pool: */ + for (i = 0; i < MEMP_MAX; ++i) { + memp_tab[i] = NULL; + /* create a linked list of memp elements */ + for (j = 0; j < memp_num[i]; ++j) { + memp->next = memp_tab[i]; + memp_tab[i] = memp; + memp = (struct memp *)((u8_t *)memp + MEMP_SIZE + memp_sizes[i] +#if MEMP_OVERFLOW_CHECK + + MEMP_SANITY_REGION_AFTER_ALIGNED +#endif + ); + } + } +#if MEMP_OVERFLOW_CHECK + memp_overflow_init(); + /* check everything a first time to see if it worked */ + memp_overflow_check_all(); +#endif /* MEMP_OVERFLOW_CHECK */ +} + +/** + * Get an element from a specific pool. + * + * @param type the pool to get an element from + * + * the debug version has two more parameters: + * @param file file name calling this function + * @param line number of line where this function is called + * + * @return a pointer to the allocated memory or a NULL pointer on error + */ +void * +#if !MEMP_OVERFLOW_CHECK +memp_malloc(memp_t type) +#else +memp_malloc_fn(memp_t type, const char* file, const int line) +#endif +{ + struct memp *memp; + SYS_ARCH_DECL_PROTECT(old_level); + + LWIP_ERROR("memp_malloc: type < MEMP_MAX", (type < MEMP_MAX), return NULL;); + + SYS_ARCH_PROTECT(old_level); +#if MEMP_OVERFLOW_CHECK >= 2 + memp_overflow_check_all(); +#endif /* MEMP_OVERFLOW_CHECK >= 2 */ + + memp = memp_tab[type]; + + if (memp != NULL) { + memp_tab[type] = memp->next; +#if MEMP_OVERFLOW_CHECK + memp->next = NULL; + memp->file = file; + memp->line = line; +#endif /* MEMP_OVERFLOW_CHECK */ + MEMP_STATS_INC_USED(used, type); + LWIP_ASSERT("memp_malloc: memp properly aligned", + ((mem_ptr_t)memp % MEM_ALIGNMENT) == 0); + memp = (struct memp*)((u8_t*)memp + MEMP_SIZE); + } else { + LWIP_DEBUGF(MEMP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("memp_malloc: out of memory in pool %s\n", memp_desc[type])); + MEMP_STATS_INC(err, type); + } + + SYS_ARCH_UNPROTECT(old_level); + + return memp; +} + +/** + * Put an element back into its pool. + * + * @param type the pool where to put mem + * @param mem the memp element to free + */ +void +memp_free(memp_t type, void *mem) +{ + struct memp *memp; + SYS_ARCH_DECL_PROTECT(old_level); + + if (mem == NULL) { + return; + } + LWIP_ASSERT("memp_free: mem properly aligned", + ((mem_ptr_t)mem % MEM_ALIGNMENT) == 0); + + memp = (struct memp *)((u8_t*)mem - MEMP_SIZE); + + SYS_ARCH_PROTECT(old_level); +#if MEMP_OVERFLOW_CHECK +#if MEMP_OVERFLOW_CHECK >= 2 + memp_overflow_check_all(); +#else + memp_overflow_check_element(memp, memp_sizes[type]); +#endif /* MEMP_OVERFLOW_CHECK >= 2 */ +#endif /* MEMP_OVERFLOW_CHECK */ + + MEMP_STATS_DEC(used, type); + + memp->next = memp_tab[type]; + memp_tab[type] = memp; + +#if MEMP_SANITY_CHECK + LWIP_ASSERT("memp sanity", memp_sanity()); +#endif /* MEMP_SANITY_CHECK */ + + SYS_ARCH_UNPROTECT(old_level); +} + +#endif /* MEMP_MEM_MALLOC */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/netif.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/netif.c new file mode 100644 index 000000000..cf3815c49 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/netif.c @@ -0,0 +1,683 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * lwIP network interface abstraction + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#include "lwip/def.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/tcp.h" +#include "lwip/snmp.h" +#include "lwip/igmp.h" +#include "netif/etharp.h" +#if ENABLE_LOOPBACK +#include "lwip/sys.h" +#if LWIP_NETIF_LOOPBACK_MULTITHREADING +#include "lwip/tcpip.h" +#endif /* LWIP_NETIF_LOOPBACK_MULTITHREADING */ +#endif /* ENABLE_LOOPBACK */ + +#if LWIP_AUTOIP +#include "lwip/autoip.h" +#endif /* LWIP_AUTOIP */ +#if LWIP_DHCP +#include "lwip/dhcp.h" +#endif /* LWIP_DHCP */ + +#if LWIP_NETIF_STATUS_CALLBACK +#define NETIF_STATUS_CALLBACK(n) { if (n->status_callback) (n->status_callback)(n); } +#else +#define NETIF_STATUS_CALLBACK(n) { /* NOP */ } +#endif /* LWIP_NETIF_STATUS_CALLBACK */ + +#if LWIP_NETIF_LINK_CALLBACK +#define NETIF_LINK_CALLBACK(n) { if (n->link_callback) (n->link_callback)(n); } +#else +#define NETIF_LINK_CALLBACK(n) { /* NOP */ } +#endif /* LWIP_NETIF_LINK_CALLBACK */ + +struct netif *netif_list; +struct netif *netif_default; + +/** + * Add a network interface to the list of lwIP netifs. + * + * @param netif a pre-allocated netif structure + * @param ipaddr IP address for the new netif + * @param netmask network mask for the new netif + * @param gw default gateway IP address for the new netif + * @param state opaque data passed to the new netif + * @param init callback function that initializes the interface + * @param input callback function that is called to pass + * ingress packets up in the protocol layer stack. + * + * @return netif, or NULL if failed. + */ +struct netif * +netif_add(struct netif *netif, struct ip_addr *ipaddr, struct ip_addr *netmask, + struct ip_addr *gw, + void *state, + err_t (* init)(struct netif *netif), + err_t (* input)(struct pbuf *p, struct netif *netif)) +{ + static u8_t netifnum = 0; + + /* reset new interface configuration state */ + netif->ip_addr.addr = 0; + netif->netmask.addr = 0; + netif->gw.addr = 0; + netif->flags = 0; +#if LWIP_DHCP + /* netif not under DHCP control by default */ + netif->dhcp = NULL; +#endif /* LWIP_DHCP */ +#if LWIP_AUTOIP + /* netif not under AutoIP control by default */ + netif->autoip = NULL; +#endif /* LWIP_AUTOIP */ +#if LWIP_NETIF_STATUS_CALLBACK + netif->status_callback = NULL; +#endif /* LWIP_NETIF_STATUS_CALLBACK */ +#if LWIP_NETIF_LINK_CALLBACK + netif->link_callback = NULL; +#endif /* LWIP_NETIF_LINK_CALLBACK */ +#if LWIP_IGMP + netif->igmp_mac_filter = NULL; +#endif /* LWIP_IGMP */ +#if ENABLE_LOOPBACK + netif->loop_first = NULL; + netif->loop_last = NULL; +#endif /* ENABLE_LOOPBACK */ + + /* remember netif specific state information data */ + netif->state = state; + netif->num = netifnum++; + netif->input = input; +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = NULL; +#endif /* LWIP_NETIF_HWADDRHINT*/ +#if ENABLE_LOOPBACK && LWIP_LOOPBACK_MAX_PBUFS + netif->loop_cnt_current = 0; +#endif /* ENABLE_LOOPBACK && LWIP_LOOPBACK_MAX_PBUFS */ + + netif_set_addr(netif, ipaddr, netmask, gw); + + /* call user specified initialization function for netif */ + if (init(netif) != ERR_OK) { + return NULL; + } + + /* add this netif to the list */ + netif->next = netif_list; + netif_list = netif; + snmp_inc_iflist(); + +#if LWIP_IGMP + /* start IGMP processing */ + if (netif->flags & NETIF_FLAG_IGMP) { + igmp_start( netif); + } +#endif /* LWIP_IGMP */ + + LWIP_DEBUGF(NETIF_DEBUG, ("netif: added interface %c%c IP addr ", + netif->name[0], netif->name[1])); + ip_addr_debug_print(NETIF_DEBUG, ipaddr); + LWIP_DEBUGF(NETIF_DEBUG, (" netmask ")); + ip_addr_debug_print(NETIF_DEBUG, netmask); + LWIP_DEBUGF(NETIF_DEBUG, (" gw ")); + ip_addr_debug_print(NETIF_DEBUG, gw); + LWIP_DEBUGF(NETIF_DEBUG, ("\n")); + return netif; +} + +/** + * Change IP address configuration for a network interface (including netmask + * and default gateway). + * + * @param netif the network interface to change + * @param ipaddr the new IP address + * @param netmask the new netmask + * @param gw the new default gateway + */ +void +netif_set_addr(struct netif *netif, struct ip_addr *ipaddr, struct ip_addr *netmask, + struct ip_addr *gw) +{ + netif_set_ipaddr(netif, ipaddr); + netif_set_netmask(netif, netmask); + netif_set_gw(netif, gw); +} + +/** + * Remove a network interface from the list of lwIP netifs. + * + * @param netif the network interface to remove + */ +void netif_remove(struct netif * netif) +{ + if ( netif == NULL ) return; + +#if LWIP_IGMP + /* stop IGMP processing */ + if (netif->flags & NETIF_FLAG_IGMP) { + igmp_stop( netif); + } +#endif /* LWIP_IGMP */ + + snmp_delete_ipaddridx_tree(netif); + + /* is it the first netif? */ + if (netif_list == netif) { + netif_list = netif->next; + snmp_dec_iflist(); + } + else { + /* look for netif further down the list */ + struct netif * tmpNetif; + for (tmpNetif = netif_list; tmpNetif != NULL; tmpNetif = tmpNetif->next) { + if (tmpNetif->next == netif) { + tmpNetif->next = netif->next; + snmp_dec_iflist(); + break; + } + } + if (tmpNetif == NULL) + return; /* we didn't find any netif today */ + } + /* this netif is default? */ + if (netif_default == netif) + /* reset default netif */ + netif_set_default(NULL); + LWIP_DEBUGF( NETIF_DEBUG, ("netif_remove: removed netif\n") ); +} + +/** + * Find a network interface by searching for its name + * + * @param name the name of the netif (like netif->name) plus concatenated number + * in ascii representation (e.g. 'en0') + */ +struct netif * +netif_find(char *name) +{ + struct netif *netif; + u8_t num; + + if (name == NULL) { + return NULL; + } + + num = name[2] - '0'; + + for(netif = netif_list; netif != NULL; netif = netif->next) { + if (num == netif->num && + name[0] == netif->name[0] && + name[1] == netif->name[1]) { + LWIP_DEBUGF(NETIF_DEBUG, ("netif_find: found %c%c\n", name[0], name[1])); + return netif; + } + } + LWIP_DEBUGF(NETIF_DEBUG, ("netif_find: didn't find %c%c\n", name[0], name[1])); + return NULL; +} + +/** + * Change the IP address of a network interface + * + * @param netif the network interface to change + * @param ipaddr the new IP address + * + * @note call netif_set_addr() if you also want to change netmask and + * default gateway + */ +void +netif_set_ipaddr(struct netif *netif, struct ip_addr *ipaddr) +{ + /* TODO: Handling of obsolete pcbs */ + /* See: http://mail.gnu.org/archive/html/lwip-users/2003-03/msg00118.html */ +#if LWIP_TCP + struct tcp_pcb *pcb; + struct tcp_pcb_listen *lpcb; + + /* address is actually being changed? */ + if ((ip_addr_cmp(ipaddr, &(netif->ip_addr))) == 0) + { + /* extern struct tcp_pcb *tcp_active_pcbs; defined by tcp.h */ + LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_STATE, ("netif_set_ipaddr: netif address being changed\n")); + pcb = tcp_active_pcbs; + while (pcb != NULL) { + /* PCB bound to current local interface address? */ + if (ip_addr_cmp(&(pcb->local_ip), &(netif->ip_addr))) { + /* this connection must be aborted */ + struct tcp_pcb *next = pcb->next; + LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_STATE, ("netif_set_ipaddr: aborting TCP pcb %p\n", (void *)pcb)); + tcp_abort(pcb); + pcb = next; + } else { + pcb = pcb->next; + } + } + for (lpcb = tcp_listen_pcbs.listen_pcbs; lpcb != NULL; lpcb = lpcb->next) { + /* PCB bound to current local interface address? */ + if ((!(ip_addr_isany(&(lpcb->local_ip)))) && + (ip_addr_cmp(&(lpcb->local_ip), &(netif->ip_addr)))) { + /* The PCB is listening to the old ipaddr and + * is set to listen to the new one instead */ + ip_addr_set(&(lpcb->local_ip), ipaddr); + } + } + } +#endif + snmp_delete_ipaddridx_tree(netif); + snmp_delete_iprteidx_tree(0,netif); + /* set new IP address to netif */ + ip_addr_set(&(netif->ip_addr), ipaddr); + snmp_insert_ipaddridx_tree(netif); + snmp_insert_iprteidx_tree(0,netif); + + LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("netif: IP address of interface %c%c set to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n", + netif->name[0], netif->name[1], + ip4_addr1(&netif->ip_addr), + ip4_addr2(&netif->ip_addr), + ip4_addr3(&netif->ip_addr), + ip4_addr4(&netif->ip_addr))); +} + +/** + * Change the default gateway for a network interface + * + * @param netif the network interface to change + * @param gw the new default gateway + * + * @note call netif_set_addr() if you also want to change ip address and netmask + */ +void +netif_set_gw(struct netif *netif, struct ip_addr *gw) +{ + ip_addr_set(&(netif->gw), gw); + LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("netif: GW address of interface %c%c set to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n", + netif->name[0], netif->name[1], + ip4_addr1(&netif->gw), + ip4_addr2(&netif->gw), + ip4_addr3(&netif->gw), + ip4_addr4(&netif->gw))); +} + +/** + * Change the netmask of a network interface + * + * @param netif the network interface to change + * @param netmask the new netmask + * + * @note call netif_set_addr() if you also want to change ip address and + * default gateway + */ +void +netif_set_netmask(struct netif *netif, struct ip_addr *netmask) +{ + snmp_delete_iprteidx_tree(0, netif); + /* set new netmask to netif */ + ip_addr_set(&(netif->netmask), netmask); + snmp_insert_iprteidx_tree(0, netif); + LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("netif: netmask of interface %c%c set to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n", + netif->name[0], netif->name[1], + ip4_addr1(&netif->netmask), + ip4_addr2(&netif->netmask), + ip4_addr3(&netif->netmask), + ip4_addr4(&netif->netmask))); +} + +/** + * Set a network interface as the default network interface + * (used to output all packets for which no specific route is found) + * + * @param netif the default network interface + */ +void +netif_set_default(struct netif *netif) +{ + if (netif == NULL) + { + /* remove default route */ + snmp_delete_iprteidx_tree(1, netif); + } + else + { + /* install default route */ + snmp_insert_iprteidx_tree(1, netif); + } + netif_default = netif; + LWIP_DEBUGF(NETIF_DEBUG, ("netif: setting default interface %c%c\n", + netif ? netif->name[0] : '\'', netif ? netif->name[1] : '\'')); +} + +/** + * Bring an interface up, available for processing + * traffic. + * + * @note: Enabling DHCP on a down interface will make it come + * up once configured. + * + * @see dhcp_start() + */ +void netif_set_up(struct netif *netif) +{ + if ( !(netif->flags & NETIF_FLAG_UP )) { + netif->flags |= NETIF_FLAG_UP; + +#if LWIP_SNMP + snmp_get_sysuptime(&netif->ts); +#endif /* LWIP_SNMP */ + + NETIF_LINK_CALLBACK(netif); + NETIF_STATUS_CALLBACK(netif); + +#if LWIP_ARP + /* For Ethernet network interfaces, we would like to send a "gratuitous ARP" */ + if (netif->flags & NETIF_FLAG_ETHARP) { + etharp_gratuitous(netif); + } +#endif /* LWIP_ARP */ + +#if LWIP_IGMP + /* resend IGMP memberships */ + if (netif->flags & NETIF_FLAG_IGMP) { + igmp_report_groups( netif); + } +#endif /* LWIP_IGMP */ + } +} + +/** + * Bring an interface down, disabling any traffic processing. + * + * @note: Enabling DHCP on a down interface will make it come + * up once configured. + * + * @see dhcp_start() + */ +void netif_set_down(struct netif *netif) +{ + if ( netif->flags & NETIF_FLAG_UP ) + { + netif->flags &= ~NETIF_FLAG_UP; +#if LWIP_SNMP + snmp_get_sysuptime(&netif->ts); +#endif + + NETIF_LINK_CALLBACK(netif); + NETIF_STATUS_CALLBACK(netif); + } +} + +/** + * Ask if an interface is up + */ +u8_t netif_is_up(struct netif *netif) +{ + return (netif->flags & NETIF_FLAG_UP)?1:0; +} + +#if LWIP_NETIF_STATUS_CALLBACK +/** + * Set callback to be called when interface is brought up/down + */ +void netif_set_status_callback(struct netif *netif, void (* status_callback)(struct netif *netif )) +{ + if ( netif ) + netif->status_callback = status_callback; +} +#endif /* LWIP_NETIF_STATUS_CALLBACK */ + +#if LWIP_NETIF_LINK_CALLBACK +/** + * Called by a driver when its link goes up + */ +void netif_set_link_up(struct netif *netif ) +{ + netif->flags |= NETIF_FLAG_LINK_UP; + +#if LWIP_DHCP + if (netif->dhcp) { + dhcp_network_changed(netif); + } +#endif /* LWIP_DHCP */ + +#if LWIP_AUTOIP + if (netif->autoip) { + autoip_network_changed(netif); + } +#endif /* LWIP_AUTOIP */ + + if (netif->flags & NETIF_FLAG_UP) { +#if LWIP_ARP + /* For Ethernet network interfaces, we would like to send a "gratuitous ARP" */ + if (netif->flags & NETIF_FLAG_ETHARP) { + etharp_gratuitous(netif); + } +#endif /* LWIP_ARP */ + +#if LWIP_IGMP + /* resend IGMP memberships */ + if (netif->flags & NETIF_FLAG_IGMP) { + igmp_report_groups( netif); + } +#endif /* LWIP_IGMP */ + } + NETIF_LINK_CALLBACK(netif); +} + +/** + * Called by a driver when its link goes down + */ +void netif_set_link_down(struct netif *netif ) +{ + netif->flags &= ~NETIF_FLAG_LINK_UP; + NETIF_LINK_CALLBACK(netif); +} + +/** + * Ask if a link is up + */ +u8_t netif_is_link_up(struct netif *netif) +{ + return (netif->flags & NETIF_FLAG_LINK_UP) ? 1 : 0; +} + +/** + * Set callback to be called when link is brought up/down + */ +void netif_set_link_callback(struct netif *netif, void (* link_callback)(struct netif *netif )) +{ + if (netif) { + netif->link_callback = link_callback; + } +} +#endif /* LWIP_NETIF_LINK_CALLBACK */ + +#if ENABLE_LOOPBACK +/** + * Send an IP packet to be received on the same netif (loopif-like). + * The pbuf is simply copied and handed back to netif->input. + * In multithreaded mode, this is done directly since netif->input must put + * the packet on a queue. + * In callback mode, the packet is put on an internal queue and is fed to + * netif->input by netif_poll(). + * + * @param netif the lwip network interface structure + * @param p the (IP) packet to 'send' + * @param ipaddr the ip address to send the packet to (not used) + * @return ERR_OK if the packet has been sent + * ERR_MEM if the pbuf used to copy the packet couldn't be allocated + */ +err_t +netif_loop_output(struct netif *netif, struct pbuf *p, + struct ip_addr *ipaddr) +{ + struct pbuf *r; + err_t err; + struct pbuf *last; +#if LWIP_LOOPBACK_MAX_PBUFS + u8_t clen = 0; +#endif /* LWIP_LOOPBACK_MAX_PBUFS */ + SYS_ARCH_DECL_PROTECT(lev); + LWIP_UNUSED_ARG(ipaddr); + + /* Allocate a new pbuf */ + r = pbuf_alloc(PBUF_LINK, p->tot_len, PBUF_RAM); + if (r == NULL) { + return ERR_MEM; + } +#if LWIP_LOOPBACK_MAX_PBUFS + clen = pbuf_clen(r); + /* check for overflow or too many pbuf on queue */ + if(((netif->loop_cnt_current + clen) < netif->loop_cnt_current) || + ((netif->loop_cnt_current + clen) > LWIP_LOOPBACK_MAX_PBUFS)) { + pbuf_free(r); + r = NULL; + return ERR_MEM; + } + netif->loop_cnt_current += clen; +#endif /* LWIP_LOOPBACK_MAX_PBUFS */ + + /* Copy the whole pbuf queue p into the single pbuf r */ + if ((err = pbuf_copy(r, p)) != ERR_OK) { + pbuf_free(r); + r = NULL; + return err; + } + + /* Put the packet on a linked list which gets emptied through calling + netif_poll(). */ + + /* let last point to the last pbuf in chain r */ + for (last = r; last->next != NULL; last = last->next); + + SYS_ARCH_PROTECT(lev); + if(netif->loop_first != NULL) { + LWIP_ASSERT("if first != NULL, last must also be != NULL", netif->loop_last != NULL); + netif->loop_last->next = r; + netif->loop_last = last; + } else { + netif->loop_first = r; + netif->loop_last = last; + } + SYS_ARCH_UNPROTECT(lev); + +#if LWIP_NETIF_LOOPBACK_MULTITHREADING + /* For multithreading environment, schedule a call to netif_poll */ + tcpip_callback((void (*)(void *))(netif_poll), netif); +#endif /* LWIP_NETIF_LOOPBACK_MULTITHREADING */ + + return ERR_OK; +} + +/** + * Call netif_poll() in the main loop of your application. This is to prevent + * reentering non-reentrant functions like tcp_input(). Packets passed to + * netif_loop_output() are put on a list that is passed to netif->input() by + * netif_poll(). + */ +void +netif_poll(struct netif *netif) +{ + struct pbuf *in; + SYS_ARCH_DECL_PROTECT(lev); + + do { + /* Get a packet from the list. With SYS_LIGHTWEIGHT_PROT=1, this is protected */ + SYS_ARCH_PROTECT(lev); + in = netif->loop_first; + if(in != NULL) { + struct pbuf *in_end = in; +#if LWIP_LOOPBACK_MAX_PBUFS + u8_t clen = pbuf_clen(in); + /* adjust the number of pbufs on queue */ + LWIP_ASSERT("netif->loop_cnt_current underflow", + ((netif->loop_cnt_current - clen) < netif->loop_cnt_current)); + netif->loop_cnt_current -= clen; +#endif /* LWIP_LOOPBACK_MAX_PBUFS */ + while(in_end->len != in_end->tot_len) { + LWIP_ASSERT("bogus pbuf: len != tot_len but next == NULL!", in_end->next != NULL); + in_end = in_end->next; + } + /* 'in_end' now points to the last pbuf from 'in' */ + if(in_end == netif->loop_last) { + /* this was the last pbuf in the list */ + netif->loop_first = netif->loop_last = NULL; + } else { + /* pop the pbuf off the list */ + netif->loop_first = in_end->next; + LWIP_ASSERT("should not be null since first != last!", netif->loop_first != NULL); + } + /* De-queue the pbuf from its successors on the 'loop_' list. */ + in_end->next = NULL; + } + SYS_ARCH_UNPROTECT(lev); + + if(in != NULL) { + /* loopback packets are always IP packets! */ + if(ip_input(in, netif) != ERR_OK) { + pbuf_free(in); + } + /* Don't reference the packet any more! */ + in = NULL; + } + /* go on while there is a packet on the list */ + } while(netif->loop_first != NULL); +} + +#if !LWIP_NETIF_LOOPBACK_MULTITHREADING +/** + * Calls netif_poll() for every netif on the netif_list. + */ +void +netif_poll_all(void) +{ + struct netif *netif = netif_list; + /* loop through netifs */ + while (netif != NULL) { + netif_poll(netif); + /* proceed to next network interface */ + netif = netif->next; + } +} +#endif /* !LWIP_NETIF_LOOPBACK_MULTITHREADING */ +#endif /* ENABLE_LOOPBACK */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/pbuf.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/pbuf.c new file mode 100644 index 000000000..6284b9a3a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/pbuf.c @@ -0,0 +1,931 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Packet buffer management + * + * Packets are built from the pbuf data structure. It supports dynamic + * memory allocation for packet contents or can reference externally + * managed packet contents both in RAM and ROM. Quick allocation for + * incoming packets is provided through pools with fixed sized pbufs. + * + * A packet may span over multiple pbufs, chained as a singly linked + * list. This is called a "pbuf chain". + * + * Multiple packets may be queued, also using this singly linked list. + * This is called a "packet queue". + * + * So, a packet queue consists of one or more pbuf chains, each of + * which consist of one or more pbufs. CURRENTLY, PACKET QUEUES ARE + * NOT SUPPORTED!!! Use helper structs to queue multiple packets. + * + * The differences between a pbuf chain and a packet queue are very + * precise but subtle. + * + * The last pbuf of a packet has a ->tot_len field that equals the + * ->len field. It can be found by traversing the list. If the last + * pbuf of a packet has a ->next field other than NULL, more packets + * are on the queue. + * + * Therefore, looping through a pbuf of a single packet, has an + * loop end condition (tot_len == p->len), NOT (next == NULL). + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#include "lwip/stats.h" +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/memp.h" +#include "lwip/pbuf.h" +#include "lwip/sys.h" +#include "arch/perf.h" +#if TCP_QUEUE_OOSEQ +#include "lwip/tcp.h" +#endif + +#include <string.h> + +#define SIZEOF_STRUCT_PBUF LWIP_MEM_ALIGN_SIZE(sizeof(struct pbuf)) +/* Since the pool is created in memp, PBUF_POOL_BUFSIZE will be automatically + aligned there. Therefore, PBUF_POOL_BUFSIZE_ALIGNED can be used here. */ +#define PBUF_POOL_BUFSIZE_ALIGNED LWIP_MEM_ALIGN_SIZE(PBUF_POOL_BUFSIZE) + +#if !TCP_QUEUE_OOSEQ || NO_SYS +#define PBUF_POOL_IS_EMPTY() +#else /* !TCP_QUEUE_OOSEQ || NO_SYS */ +/** Define this to 0 to prevent freeing ooseq pbufs when the PBUF_POOL is empty */ +#ifndef PBUF_POOL_FREE_OOSEQ +#define PBUF_POOL_FREE_OOSEQ 1 +#endif /* PBUF_POOL_FREE_OOSEQ */ + +#if PBUF_POOL_FREE_OOSEQ +#include "lwip/tcpip.h" +#define PBUF_POOL_IS_EMPTY() pbuf_pool_is_empty() +static u8_t pbuf_free_ooseq_queued; +/** + * Attempt to reclaim some memory from queued out-of-sequence TCP segments + * if we run out of pool pbufs. It's better to give priority to new packets + * if we're running out. + * + * This must be done in the correct thread context therefore this function + * can only be used with NO_SYS=0 and through tcpip_callback. + */ +static void +pbuf_free_ooseq(void* arg) +{ + struct tcp_pcb* pcb; + SYS_ARCH_DECL_PROTECT(old_level); + LWIP_UNUSED_ARG(arg); + + SYS_ARCH_PROTECT(old_level); + pbuf_free_ooseq_queued = 0; + SYS_ARCH_UNPROTECT(old_level); + + for (pcb = tcp_active_pcbs; NULL != pcb; pcb = pcb->next) { + if (NULL != pcb->ooseq) { + /** Free the ooseq pbufs of one PCB only */ + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_free_ooseq: freeing out-of-sequence pbufs\n")); + tcp_segs_free(pcb->ooseq); + pcb->ooseq = NULL; + return; + } + } +} + +/** Queue a call to pbuf_free_ooseq if not already queued. */ +static void +pbuf_pool_is_empty(void) +{ + u8_t queued; + SYS_ARCH_DECL_PROTECT(old_level); + + SYS_ARCH_PROTECT(old_level); + queued = pbuf_free_ooseq_queued; + pbuf_free_ooseq_queued = 1; + SYS_ARCH_UNPROTECT(old_level); + + if(!queued) { + /* queue a call to pbuf_free_ooseq if not already queued */ + if(tcpip_callback_with_block(pbuf_free_ooseq, NULL, 0) != ERR_OK) { + SYS_ARCH_PROTECT(old_level); + pbuf_free_ooseq_queued = 0; + SYS_ARCH_UNPROTECT(old_level); + } + } +} +#endif /* PBUF_POOL_FREE_OOSEQ */ +#endif /* !TCP_QUEUE_OOSEQ || NO_SYS */ + +/** + * Allocates a pbuf of the given type (possibly a chain for PBUF_POOL type). + * + * The actual memory allocated for the pbuf is determined by the + * layer at which the pbuf is allocated and the requested size + * (from the size parameter). + * + * @param layer flag to define header size + * @param length size of the pbuf's payload + * @param type this parameter decides how and where the pbuf + * should be allocated as follows: + * + * - PBUF_RAM: buffer memory for pbuf is allocated as one large + * chunk. This includes protocol headers as well. + * - PBUF_ROM: no buffer memory is allocated for the pbuf, even for + * protocol headers. Additional headers must be prepended + * by allocating another pbuf and chain in to the front of + * the ROM pbuf. It is assumed that the memory used is really + * similar to ROM in that it is immutable and will not be + * changed. Memory which is dynamic should generally not + * be attached to PBUF_ROM pbufs. Use PBUF_REF instead. + * - PBUF_REF: no buffer memory is allocated for the pbuf, even for + * protocol headers. It is assumed that the pbuf is only + * being used in a single thread. If the pbuf gets queued, + * then pbuf_take should be called to copy the buffer. + * - PBUF_POOL: the pbuf is allocated as a pbuf chain, with pbufs from + * the pbuf pool that is allocated during pbuf_init(). + * + * @return the allocated pbuf. If multiple pbufs where allocated, this + * is the first pbuf of a pbuf chain. + */ +struct pbuf * +pbuf_alloc(pbuf_layer layer, u16_t length, pbuf_type type) +{ + struct pbuf *p, *q, *r; + u16_t offset; + s32_t rem_len; /* remaining length */ + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_alloc(length=%"U16_F")\n", length)); + + /* determine header offset */ + offset = 0; + switch (layer) { + case PBUF_TRANSPORT: + /* add room for transport (often TCP) layer header */ + offset += PBUF_TRANSPORT_HLEN; + /* FALLTHROUGH */ + case PBUF_IP: + /* add room for IP layer header */ + offset += PBUF_IP_HLEN; + /* FALLTHROUGH */ + case PBUF_LINK: + /* add room for link layer header */ + offset += PBUF_LINK_HLEN; + break; + case PBUF_RAW: + break; + default: + LWIP_ASSERT("pbuf_alloc: bad pbuf layer", 0); + return NULL; + } + + switch (type) { + case PBUF_POOL: + /* allocate head of pbuf chain into p */ + p = memp_malloc(MEMP_PBUF_POOL); + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_alloc: allocated pbuf %p\n", (void *)p)); + if (p == NULL) { + PBUF_POOL_IS_EMPTY(); + return NULL; + } + p->type = type; + p->next = NULL; + + /* make the payload pointer point 'offset' bytes into pbuf data memory */ + p->payload = LWIP_MEM_ALIGN((void *)((u8_t *)p + (SIZEOF_STRUCT_PBUF + offset))); + LWIP_ASSERT("pbuf_alloc: pbuf p->payload properly aligned", + ((mem_ptr_t)p->payload % MEM_ALIGNMENT) == 0); + /* the total length of the pbuf chain is the requested size */ + p->tot_len = length; + /* set the length of the first pbuf in the chain */ + p->len = LWIP_MIN(length, PBUF_POOL_BUFSIZE_ALIGNED - LWIP_MEM_ALIGN_SIZE(offset)); + LWIP_ASSERT("check p->payload + p->len does not overflow pbuf", + ((u8_t*)p->payload + p->len <= + (u8_t*)p + SIZEOF_STRUCT_PBUF + PBUF_POOL_BUFSIZE_ALIGNED)); + LWIP_ASSERT("PBUF_POOL_BUFSIZE must be bigger than MEM_ALIGNMENT", + (PBUF_POOL_BUFSIZE_ALIGNED - LWIP_MEM_ALIGN_SIZE(offset)) > 0 ); + /* set reference count (needed here in case we fail) */ + p->ref = 1; + + /* now allocate the tail of the pbuf chain */ + + /* remember first pbuf for linkage in next iteration */ + r = p; + /* remaining length to be allocated */ + rem_len = length - p->len; + /* any remaining pbufs to be allocated? */ + while (rem_len > 0) { + q = memp_malloc(MEMP_PBUF_POOL); + if (q == NULL) { + PBUF_POOL_IS_EMPTY(); + /* free chain so far allocated */ + pbuf_free(p); + /* bail out unsuccesfully */ + return NULL; + } + q->type = type; + q->flags = 0; + q->next = NULL; + /* make previous pbuf point to this pbuf */ + r->next = q; + /* set total length of this pbuf and next in chain */ + LWIP_ASSERT("rem_len < max_u16_t", rem_len < 0xffff); + q->tot_len = (u16_t)rem_len; + /* this pbuf length is pool size, unless smaller sized tail */ + q->len = LWIP_MIN((u16_t)rem_len, PBUF_POOL_BUFSIZE_ALIGNED); + q->payload = (void *)((u8_t *)q + SIZEOF_STRUCT_PBUF); + LWIP_ASSERT("pbuf_alloc: pbuf q->payload properly aligned", + ((mem_ptr_t)q->payload % MEM_ALIGNMENT) == 0); + LWIP_ASSERT("check p->payload + p->len does not overflow pbuf", + ((u8_t*)p->payload + p->len <= + (u8_t*)p + SIZEOF_STRUCT_PBUF + PBUF_POOL_BUFSIZE_ALIGNED)); + q->ref = 1; + /* calculate remaining length to be allocated */ + rem_len -= q->len; + /* remember this pbuf for linkage in next iteration */ + r = q; + } + /* end of chain */ + /*r->next = NULL;*/ + + break; + case PBUF_RAM: + /* If pbuf is to be allocated in RAM, allocate memory for it. */ + p = (struct pbuf*)mem_malloc(LWIP_MEM_ALIGN_SIZE(SIZEOF_STRUCT_PBUF + offset) + LWIP_MEM_ALIGN_SIZE(length)); + if (p == NULL) { + return NULL; + } + /* Set up internal structure of the pbuf. */ + p->payload = LWIP_MEM_ALIGN((void *)((u8_t *)p + SIZEOF_STRUCT_PBUF + offset)); + p->len = p->tot_len = length; + p->next = NULL; + p->type = type; + + LWIP_ASSERT("pbuf_alloc: pbuf->payload properly aligned", + ((mem_ptr_t)p->payload % MEM_ALIGNMENT) == 0); + break; + /* pbuf references existing (non-volatile static constant) ROM payload? */ + case PBUF_ROM: + /* pbuf references existing (externally allocated) RAM payload? */ + case PBUF_REF: + /* only allocate memory for the pbuf structure */ + p = memp_malloc(MEMP_PBUF); + if (p == NULL) { + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("pbuf_alloc: Could not allocate MEMP_PBUF for PBUF_%s.\n", + (type == PBUF_ROM) ? "ROM" : "REF")); + return NULL; + } + /* caller must set this field properly, afterwards */ + p->payload = NULL; + p->len = p->tot_len = length; + p->next = NULL; + p->type = type; + break; + default: + LWIP_ASSERT("pbuf_alloc: erroneous type", 0); + return NULL; + } + /* set reference count */ + p->ref = 1; + /* set flags */ + p->flags = 0; + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_alloc(length=%"U16_F") == %p\n", length, (void *)p)); + return p; +} + + +/** + * Shrink a pbuf chain to a desired length. + * + * @param p pbuf to shrink. + * @param new_len desired new length of pbuf chain + * + * Depending on the desired length, the first few pbufs in a chain might + * be skipped and left unchanged. The new last pbuf in the chain will be + * resized, and any remaining pbufs will be freed. + * + * @note If the pbuf is ROM/REF, only the ->tot_len and ->len fields are adjusted. + * @note May not be called on a packet queue. + * + * @note Despite its name, pbuf_realloc cannot grow the size of a pbuf (chain). + */ +void +pbuf_realloc(struct pbuf *p, u16_t new_len) +{ + struct pbuf *q; + u16_t rem_len; /* remaining length */ + s32_t grow; + + LWIP_ASSERT("pbuf_realloc: p != NULL", p != NULL); + LWIP_ASSERT("pbuf_realloc: sane p->type", p->type == PBUF_POOL || + p->type == PBUF_ROM || + p->type == PBUF_RAM || + p->type == PBUF_REF); + + /* desired length larger than current length? */ + if (new_len >= p->tot_len) { + /* enlarging not yet supported */ + return; + } + + /* the pbuf chain grows by (new_len - p->tot_len) bytes + * (which may be negative in case of shrinking) */ + grow = new_len - p->tot_len; + + /* first, step over any pbufs that should remain in the chain */ + rem_len = new_len; + q = p; + /* should this pbuf be kept? */ + while (rem_len > q->len) { + /* decrease remaining length by pbuf length */ + rem_len -= q->len; + /* decrease total length indicator */ + LWIP_ASSERT("grow < max_u16_t", grow < 0xffff); + q->tot_len += (u16_t)grow; + /* proceed to next pbuf in chain */ + q = q->next; + LWIP_ASSERT("pbuf_realloc: q != NULL", q != NULL); + } + /* we have now reached the new last pbuf (in q) */ + /* rem_len == desired length for pbuf q */ + + /* shrink allocated memory for PBUF_RAM */ + /* (other types merely adjust their length fields */ + if ((q->type == PBUF_RAM) && (rem_len != q->len)) { + /* reallocate and adjust the length of the pbuf that will be split */ + q = mem_realloc(q, (u8_t *)q->payload - (u8_t *)q + rem_len); + LWIP_ASSERT("mem_realloc give q == NULL", q != NULL); + } + /* adjust length fields for new last pbuf */ + q->len = rem_len; + q->tot_len = q->len; + + /* any remaining pbufs in chain? */ + if (q->next != NULL) { + /* free remaining pbufs in chain */ + pbuf_free(q->next); + } + /* q is last packet in chain */ + q->next = NULL; + +} + +/** + * Adjusts the payload pointer to hide or reveal headers in the payload. + * + * Adjusts the ->payload pointer so that space for a header + * (dis)appears in the pbuf payload. + * + * The ->payload, ->tot_len and ->len fields are adjusted. + * + * @param p pbuf to change the header size. + * @param header_size_increment Number of bytes to increment header size which + * increases the size of the pbuf. New space is on the front. + * (Using a negative value decreases the header size.) + * If hdr_size_inc is 0, this function does nothing and returns succesful. + * + * PBUF_ROM and PBUF_REF type buffers cannot have their sizes increased, so + * the call will fail. A check is made that the increase in header size does + * not move the payload pointer in front of the start of the buffer. + * @return non-zero on failure, zero on success. + * + */ +u8_t +pbuf_header(struct pbuf *p, s16_t header_size_increment) +{ + u16_t type; + void *payload; + u16_t increment_magnitude; + + LWIP_ASSERT("p != NULL", p != NULL); + if ((header_size_increment == 0) || (p == NULL)) + return 0; + + if (header_size_increment < 0){ + increment_magnitude = -header_size_increment; + /* Check that we aren't going to move off the end of the pbuf */ + LWIP_ERROR("increment_magnitude <= p->len", (increment_magnitude <= p->len), return 1;); + } else { + increment_magnitude = header_size_increment; +#if 0 + /* Can't assert these as some callers speculatively call + pbuf_header() to see if it's OK. Will return 1 below instead. */ + /* Check that we've got the correct type of pbuf to work with */ + LWIP_ASSERT("p->type == PBUF_RAM || p->type == PBUF_POOL", + p->type == PBUF_RAM || p->type == PBUF_POOL); + /* Check that we aren't going to move off the beginning of the pbuf */ + LWIP_ASSERT("p->payload - increment_magnitude >= p + SIZEOF_STRUCT_PBUF", + (u8_t *)p->payload - increment_magnitude >= (u8_t *)p + SIZEOF_STRUCT_PBUF); +#endif + } + + type = p->type; + /* remember current payload pointer */ + payload = p->payload; + + /* pbuf types containing payloads? */ + if (type == PBUF_RAM || type == PBUF_POOL) { + /* set new payload pointer */ + p->payload = (u8_t *)p->payload - header_size_increment; + /* boundary check fails? */ + if ((u8_t *)p->payload < (u8_t *)p + SIZEOF_STRUCT_PBUF) { + LWIP_DEBUGF( PBUF_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("pbuf_header: failed as %p < %p (not enough space for new header size)\n", + (void *)p->payload, (void *)(p + 1))); + /* restore old payload pointer */ + p->payload = payload; + /* bail out unsuccesfully */ + return 1; + } + /* pbuf types refering to external payloads? */ + } else if (type == PBUF_REF || type == PBUF_ROM) { + /* hide a header in the payload? */ + if ((header_size_increment < 0) && (increment_magnitude <= p->len)) { + /* increase payload pointer */ + p->payload = (u8_t *)p->payload - header_size_increment; + } else { + /* cannot expand payload to front (yet!) + * bail out unsuccesfully */ + return 1; + } + } + else { + /* Unknown type */ + LWIP_ASSERT("bad pbuf type", 0); + return 1; + } + /* modify pbuf length fields */ + p->len += header_size_increment; + p->tot_len += header_size_increment; + + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_header: old %p new %p (%"S16_F")\n", + (void *)payload, (void *)p->payload, header_size_increment)); + + return 0; +} + +/** + * Dereference a pbuf chain or queue and deallocate any no-longer-used + * pbufs at the head of this chain or queue. + * + * Decrements the pbuf reference count. If it reaches zero, the pbuf is + * deallocated. + * + * For a pbuf chain, this is repeated for each pbuf in the chain, + * up to the first pbuf which has a non-zero reference count after + * decrementing. So, when all reference counts are one, the whole + * chain is free'd. + * + * @param p The pbuf (chain) to be dereferenced. + * + * @return the number of pbufs that were de-allocated + * from the head of the chain. + * + * @note MUST NOT be called on a packet queue (Not verified to work yet). + * @note the reference counter of a pbuf equals the number of pointers + * that refer to the pbuf (or into the pbuf). + * + * @internal examples: + * + * Assuming existing chains a->b->c with the following reference + * counts, calling pbuf_free(a) results in: + * + * 1->2->3 becomes ...1->3 + * 3->3->3 becomes 2->3->3 + * 1->1->2 becomes ......1 + * 2->1->1 becomes 1->1->1 + * 1->1->1 becomes ....... + * + */ +u8_t +pbuf_free(struct pbuf *p) +{ + u16_t type; + struct pbuf *q; + u8_t count; + + if (p == NULL) { + LWIP_ASSERT("p != NULL", p != NULL); + /* if assertions are disabled, proceed with debug output */ + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("pbuf_free(p == NULL) was called.\n")); + return 0; + } + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_free(%p)\n", (void *)p)); + + PERF_START; + + LWIP_ASSERT("pbuf_free: sane type", + p->type == PBUF_RAM || p->type == PBUF_ROM || + p->type == PBUF_REF || p->type == PBUF_POOL); + + count = 0; + /* de-allocate all consecutive pbufs from the head of the chain that + * obtain a zero reference count after decrementing*/ + while (p != NULL) { + u16_t ref; + SYS_ARCH_DECL_PROTECT(old_level); + /* Since decrementing ref cannot be guaranteed to be a single machine operation + * we must protect it. We put the new ref into a local variable to prevent + * further protection. */ + SYS_ARCH_PROTECT(old_level); + /* all pbufs in a chain are referenced at least once */ + LWIP_ASSERT("pbuf_free: p->ref > 0", p->ref > 0); + /* decrease reference count (number of pointers to pbuf) */ + ref = --(p->ref); + SYS_ARCH_UNPROTECT(old_level); + /* this pbuf is no longer referenced to? */ + if (ref == 0) { + /* remember next pbuf in chain for next iteration */ + q = p->next; + LWIP_DEBUGF( PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_free: deallocating %p\n", (void *)p)); + type = p->type; + /* is this a pbuf from the pool? */ + if (type == PBUF_POOL) { + memp_free(MEMP_PBUF_POOL, p); + /* is this a ROM or RAM referencing pbuf? */ + } else if (type == PBUF_ROM || type == PBUF_REF) { + memp_free(MEMP_PBUF, p); + /* type == PBUF_RAM */ + } else { + mem_free(p); + } + count++; + /* proceed to next pbuf */ + p = q; + /* p->ref > 0, this pbuf is still referenced to */ + /* (and so the remaining pbufs in chain as well) */ + } else { + LWIP_DEBUGF( PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_free: %p has ref %"U16_F", ending here.\n", (void *)p, ref)); + /* stop walking through the chain */ + p = NULL; + } + } + PERF_STOP("pbuf_free"); + /* return number of de-allocated pbufs */ + return count; +} + +/** + * Count number of pbufs in a chain + * + * @param p first pbuf of chain + * @return the number of pbufs in a chain + */ + +u8_t +pbuf_clen(struct pbuf *p) +{ + u8_t len; + + len = 0; + while (p != NULL) { + ++len; + p = p->next; + } + return len; +} + +/** + * Increment the reference count of the pbuf. + * + * @param p pbuf to increase reference counter of + * + */ +void +pbuf_ref(struct pbuf *p) +{ + SYS_ARCH_DECL_PROTECT(old_level); + /* pbuf given? */ + if (p != NULL) { + SYS_ARCH_PROTECT(old_level); + ++(p->ref); + SYS_ARCH_UNPROTECT(old_level); + } +} + +/** + * Concatenate two pbufs (each may be a pbuf chain) and take over + * the caller's reference of the tail pbuf. + * + * @note The caller MAY NOT reference the tail pbuf afterwards. + * Use pbuf_chain() for that purpose. + * + * @see pbuf_chain() + */ + +void +pbuf_cat(struct pbuf *h, struct pbuf *t) +{ + struct pbuf *p; + + LWIP_ERROR("(h != NULL) && (t != NULL) (programmer violates API)", + ((h != NULL) && (t != NULL)), return;); + + /* proceed to last pbuf of chain */ + for (p = h; p->next != NULL; p = p->next) { + /* add total length of second chain to all totals of first chain */ + p->tot_len += t->tot_len; + } + /* { p is last pbuf of first h chain, p->next == NULL } */ + LWIP_ASSERT("p->tot_len == p->len (of last pbuf in chain)", p->tot_len == p->len); + LWIP_ASSERT("p->next == NULL", p->next == NULL); + /* add total length of second chain to last pbuf total of first chain */ + p->tot_len += t->tot_len; + /* chain last pbuf of head (p) with first of tail (t) */ + p->next = t; + /* p->next now references t, but the caller will drop its reference to t, + * so netto there is no change to the reference count of t. + */ +} + +/** + * Chain two pbufs (or pbuf chains) together. + * + * The caller MUST call pbuf_free(t) once it has stopped + * using it. Use pbuf_cat() instead if you no longer use t. + * + * @param h head pbuf (chain) + * @param t tail pbuf (chain) + * @note The pbufs MUST belong to the same packet. + * @note MAY NOT be called on a packet queue. + * + * The ->tot_len fields of all pbufs of the head chain are adjusted. + * The ->next field of the last pbuf of the head chain is adjusted. + * The ->ref field of the first pbuf of the tail chain is adjusted. + * + */ +void +pbuf_chain(struct pbuf *h, struct pbuf *t) +{ + pbuf_cat(h, t); + /* t is now referenced by h */ + pbuf_ref(t); + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_chain: %p references %p\n", (void *)h, (void *)t)); +} + +/** + * Dechains the first pbuf from its succeeding pbufs in the chain. + * + * Makes p->tot_len field equal to p->len. + * @param p pbuf to dechain + * @return remainder of the pbuf chain, or NULL if it was de-allocated. + * @note May not be called on a packet queue. + */ +struct pbuf * +pbuf_dechain(struct pbuf *p) +{ + struct pbuf *q; + u8_t tail_gone = 1; + /* tail */ + q = p->next; + /* pbuf has successor in chain? */ + if (q != NULL) { + /* assert tot_len invariant: (p->tot_len == p->len + (p->next? p->next->tot_len: 0) */ + LWIP_ASSERT("p->tot_len == p->len + q->tot_len", q->tot_len == p->tot_len - p->len); + /* enforce invariant if assertion is disabled */ + q->tot_len = p->tot_len - p->len; + /* decouple pbuf from remainder */ + p->next = NULL; + /* total length of pbuf p is its own length only */ + p->tot_len = p->len; + /* q is no longer referenced by p, free it */ + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_dechain: unreferencing %p\n", (void *)q)); + tail_gone = pbuf_free(q); + if (tail_gone > 0) { + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, + ("pbuf_dechain: deallocated %p (as it is no longer referenced)\n", (void *)q)); + } + /* return remaining tail or NULL if deallocated */ + } + /* assert tot_len invariant: (p->tot_len == p->len + (p->next? p->next->tot_len: 0) */ + LWIP_ASSERT("p->tot_len == p->len", p->tot_len == p->len); + return ((tail_gone > 0) ? NULL : q); +} + +/** + * + * Create PBUF_RAM copies of pbufs. + * + * Used to queue packets on behalf of the lwIP stack, such as + * ARP based queueing. + * + * @note You MUST explicitly use p = pbuf_take(p); + * + * @note Only one packet is copied, no packet queue! + * + * @param p_to pbuf destination of the copy + * @param p_from pbuf source of the copy + * + * @return ERR_OK if pbuf was copied + * ERR_ARG if one of the pbufs is NULL or p_to is not big + * enough to hold p_from + */ +err_t +pbuf_copy(struct pbuf *p_to, struct pbuf *p_from) +{ + u16_t offset_to=0, offset_from=0, len; + + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_copy(%p, %p)\n", + (void*)p_to, (void*)p_from)); + + /* is the target big enough to hold the source? */ + LWIP_ERROR("pbuf_copy: target not big enough to hold source", ((p_to != NULL) && + (p_from != NULL) && (p_to->tot_len >= p_from->tot_len)), return ERR_ARG;); + + /* iterate through pbuf chain */ + do + { + LWIP_ASSERT("p_to != NULL", p_to != NULL); + /* copy one part of the original chain */ + if ((p_to->len - offset_to) >= (p_from->len - offset_from)) { + /* complete current p_from fits into current p_to */ + len = p_from->len - offset_from; + } else { + /* current p_from does not fit into current p_to */ + len = p_to->len - offset_to; + } + MEMCPY((u8_t*)p_to->payload + offset_to, (u8_t*)p_from->payload + offset_from, len); + offset_to += len; + offset_from += len; + LWIP_ASSERT("offset_to <= p_to->len", offset_to <= p_to->len); + if (offset_to == p_to->len) { + /* on to next p_to (if any) */ + offset_to = 0; + p_to = p_to->next; + } + LWIP_ASSERT("offset_from <= p_from->len", offset_from <= p_from->len); + if (offset_from >= p_from->len) { + /* on to next p_from (if any) */ + offset_from = 0; + p_from = p_from->next; + } + + if((p_from != NULL) && (p_from->len == p_from->tot_len)) { + /* don't copy more than one packet! */ + LWIP_ERROR("pbuf_copy() does not allow packet queues!\n", + (p_from->next == NULL), return ERR_VAL;); + } + if((p_to != NULL) && (p_to->len == p_to->tot_len)) { + /* don't copy more than one packet! */ + LWIP_ERROR("pbuf_copy() does not allow packet queues!\n", + (p_to->next == NULL), return ERR_VAL;); + } + } while (p_from); + LWIP_DEBUGF(PBUF_DEBUG | LWIP_DBG_TRACE, ("pbuf_copy: end of chain reached.\n")); + return ERR_OK; +} + +/** + * Copy (part of) the contents of a packet buffer + * to an application supplied buffer. + * + * @param buf the pbuf from which to copy data + * @param dataptr the application supplied buffer + * @param len length of data to copy (dataptr must be big enough). No more + * than buf->tot_len will be copied, irrespective of len + * @param offset offset into the packet buffer from where to begin copying len bytes + * @return the number of bytes copied, or 0 on failure + */ +u16_t +pbuf_copy_partial(struct pbuf *buf, void *dataptr, u16_t len, u16_t offset) +{ + struct pbuf *p; + u16_t left; + u16_t buf_copy_len; + u16_t copied_total = 0; + + LWIP_ERROR("pbuf_copy_partial: invalid buf", (buf != NULL), return 0;); + LWIP_ERROR("pbuf_copy_partial: invalid dataptr", (dataptr != NULL), return 0;); + + left = 0; + + if((buf == NULL) || (dataptr == NULL)) { + return 0; + } + + /* Note some systems use byte copy if dataptr or one of the pbuf payload pointers are unaligned. */ + for(p = buf; len != 0 && p != NULL; p = p->next) { + if ((offset != 0) && (offset >= p->len)) { + /* don't copy from this buffer -> on to the next */ + offset -= p->len; + } else { + /* copy from this buffer. maybe only partially. */ + buf_copy_len = p->len - offset; + if (buf_copy_len > len) + buf_copy_len = len; + /* copy the necessary parts of the buffer */ + MEMCPY(&((char*)dataptr)[left], &((char*)p->payload)[offset], buf_copy_len); + copied_total += buf_copy_len; + left += buf_copy_len; + len -= buf_copy_len; + offset = 0; + } + } + return copied_total; +} + +/** + * Copy application supplied data into a pbuf. + * This function can only be used to copy the equivalent of buf->tot_len data. + * + * @param buf pbuf to fill with data + * @param dataptr application supplied data buffer + * @param len length of the application supplied data buffer + * + * @return ERR_OK if successful, ERR_MEM if the pbuf is not big enough + */ +err_t +pbuf_take(struct pbuf *buf, const void *dataptr, u16_t len) +{ + struct pbuf *p; + u16_t buf_copy_len; + u16_t total_copy_len = len; + u16_t copied_total = 0; + + LWIP_ERROR("pbuf_take: invalid buf", (buf != NULL), return 0;); + LWIP_ERROR("pbuf_take: invalid dataptr", (dataptr != NULL), return 0;); + + if ((buf == NULL) || (dataptr == NULL) || (buf->tot_len < len)) { + return ERR_ARG; + } + + /* Note some systems use byte copy if dataptr or one of the pbuf payload pointers are unaligned. */ + for(p = buf; total_copy_len != 0; p = p->next) { + LWIP_ASSERT("pbuf_take: invalid pbuf", p != NULL); + buf_copy_len = total_copy_len; + if (buf_copy_len > p->len) { + /* this pbuf cannot hold all remaining data */ + buf_copy_len = p->len; + } + /* copy the necessary parts of the buffer */ + MEMCPY(p->payload, &((char*)dataptr)[copied_total], buf_copy_len); + total_copy_len -= buf_copy_len; + copied_total += buf_copy_len; + } + LWIP_ASSERT("did not copy all data", total_copy_len == 0 && copied_total == len); + return ERR_OK; +} + +/** + * Creates a single pbuf out of a queue of pbufs. + * + * @remark: The source pbuf 'p' is not freed by this function because that can + * be illegal in some places! + * + * @param p the source pbuf + * @param layer pbuf_layer of the new pbuf + * + * @return a new, single pbuf (p->next is NULL) + * or the old pbuf if allocation fails + */ +struct pbuf* +pbuf_coalesce(struct pbuf *p, pbuf_layer layer) +{ + struct pbuf *q; + err_t err; + if (p->next == NULL) { + return p; + } + q = pbuf_alloc(layer, p->tot_len, PBUF_RAM); + if (q == NULL) { + /* @todo: what do we do now? */ + return p; + } + err = pbuf_copy(q, p); + LWIP_ASSERT("pbuf_copy failed", err == ERR_OK); + pbuf_free(p); + return q; +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/raw.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/raw.c new file mode 100644 index 000000000..6966bbc44 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/raw.c @@ -0,0 +1,355 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Implementation of raw protocol PCBs for low-level handling of + * different types of protocols besides (or overriding) those + * already available in lwIP. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#if LWIP_RAW /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/def.h" +#include "lwip/memp.h" +#include "lwip/inet.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/raw.h" +#include "lwip/stats.h" +#include "lwip/snmp.h" +#include "arch/perf.h" + +#include <string.h> + +/** The list of RAW PCBs */ +static struct raw_pcb *raw_pcbs; + +/** + * Determine if in incoming IP packet is covered by a RAW PCB + * and if so, pass it to a user-provided receive callback function. + * + * Given an incoming IP datagram (as a chain of pbufs) this function + * finds a corresponding RAW PCB and calls the corresponding receive + * callback function. + * + * @param p pbuf to be demultiplexed to a RAW PCB. + * @param inp network interface on which the datagram was received. + * @return - 1 if the packet has been eaten by a RAW PCB receive + * callback function. The caller MAY NOT not reference the + * packet any longer, and MAY NOT call pbuf_free(). + * @return - 0 if packet is not eaten (pbuf is still referenced by the + * caller). + * + */ +u8_t +raw_input(struct pbuf *p, struct netif *inp) +{ + struct raw_pcb *pcb, *prev; + struct ip_hdr *iphdr; + s16_t proto; + u8_t eaten = 0; + + LWIP_UNUSED_ARG(inp); + + iphdr = p->payload; + proto = IPH_PROTO(iphdr); + + prev = NULL; + pcb = raw_pcbs; + /* loop through all raw pcbs until the packet is eaten by one */ + /* this allows multiple pcbs to match against the packet by design */ + while ((eaten == 0) && (pcb != NULL)) { + if (pcb->protocol == proto) { +#if IP_SOF_BROADCAST_RECV + /* broadcast filter? */ + if ((pcb->so_options & SOF_BROADCAST) || !ip_addr_isbroadcast(&(iphdr->dest), inp)) +#endif /* IP_SOF_BROADCAST_RECV */ + { + /* receive callback function available? */ + if (pcb->recv != NULL) { + /* the receive callback function did not eat the packet? */ + if (pcb->recv(pcb->recv_arg, pcb, p, &(iphdr->src)) != 0) { + /* receive function ate the packet */ + p = NULL; + eaten = 1; + if (prev != NULL) { + /* move the pcb to the front of raw_pcbs so that is + found faster next time */ + prev->next = pcb->next; + pcb->next = raw_pcbs; + raw_pcbs = pcb; + } + } + } + /* no receive callback function was set for this raw PCB */ + } + /* drop the packet */ + } + prev = pcb; + pcb = pcb->next; + } + return eaten; +} + +/** + * Bind a RAW PCB. + * + * @param pcb RAW PCB to be bound with a local address ipaddr. + * @param ipaddr local IP address to bind with. Use IP_ADDR_ANY to + * bind to all local interfaces. + * + * @return lwIP error code. + * - ERR_OK. Successful. No error occured. + * - ERR_USE. The specified IP address is already bound to by + * another RAW PCB. + * + * @see raw_disconnect() + */ +err_t +raw_bind(struct raw_pcb *pcb, struct ip_addr *ipaddr) +{ + ip_addr_set(&pcb->local_ip, ipaddr); + return ERR_OK; +} + +/** + * Connect an RAW PCB. This function is required by upper layers + * of lwip. Using the raw api you could use raw_sendto() instead + * + * This will associate the RAW PCB with the remote address. + * + * @param pcb RAW PCB to be connected with remote address ipaddr and port. + * @param ipaddr remote IP address to connect with. + * + * @return lwIP error code + * + * @see raw_disconnect() and raw_sendto() + */ +err_t +raw_connect(struct raw_pcb *pcb, struct ip_addr *ipaddr) +{ + ip_addr_set(&pcb->remote_ip, ipaddr); + return ERR_OK; +} + + +/** + * Set the callback function for received packets that match the + * raw PCB's protocol and binding. + * + * The callback function MUST either + * - eat the packet by calling pbuf_free() and returning non-zero. The + * packet will not be passed to other raw PCBs or other protocol layers. + * - not free the packet, and return zero. The packet will be matched + * against further PCBs and/or forwarded to another protocol layers. + * + * @return non-zero if the packet was free()d, zero if the packet remains + * available for others. + */ +void +raw_recv(struct raw_pcb *pcb, + u8_t (* recv)(void *arg, struct raw_pcb *upcb, struct pbuf *p, + struct ip_addr *addr), + void *recv_arg) +{ + /* remember recv() callback and user data */ + pcb->recv = recv; + pcb->recv_arg = recv_arg; +} + +/** + * Send the raw IP packet to the given address. Note that actually you cannot + * modify the IP headers (this is inconsistent with the receive callback where + * you actually get the IP headers), you can only specify the IP payload here. + * It requires some more changes in lwIP. (there will be a raw_send() function + * then.) + * + * @param pcb the raw pcb which to send + * @param p the IP payload to send + * @param ipaddr the destination address of the IP packet + * + */ +err_t +raw_sendto(struct raw_pcb *pcb, struct pbuf *p, struct ip_addr *ipaddr) +{ + err_t err; + struct netif *netif; + struct ip_addr *src_ip; + struct pbuf *q; /* q will be sent down the stack */ + + LWIP_DEBUGF(RAW_DEBUG | LWIP_DBG_TRACE, ("raw_sendto\n")); + + /* not enough space to add an IP header to first pbuf in given p chain? */ + if (pbuf_header(p, IP_HLEN)) { + /* allocate header in new pbuf */ + q = pbuf_alloc(PBUF_IP, 0, PBUF_RAM); + /* new header pbuf could not be allocated? */ + if (q == NULL) { + LWIP_DEBUGF(RAW_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("raw_sendto: could not allocate header\n")); + return ERR_MEM; + } + /* chain header q in front of given pbuf p */ + pbuf_chain(q, p); + /* { first pbuf q points to header pbuf } */ + LWIP_DEBUGF(RAW_DEBUG, ("raw_sendto: added header pbuf %p before given pbuf %p\n", (void *)q, (void *)p)); + } else { + /* first pbuf q equals given pbuf */ + q = p; + if(pbuf_header(q, -IP_HLEN)) { + LWIP_ASSERT("Can't restore header we just removed!", 0); + return ERR_MEM; + } + } + + if ((netif = ip_route(ipaddr)) == NULL) { + LWIP_DEBUGF(RAW_DEBUG | LWIP_DBG_LEVEL_WARNING, ("raw_sendto: No route to 0x%"X32_F"\n", ipaddr->addr)); + /* free any temporary header pbuf allocated by pbuf_header() */ + if (q != p) { + pbuf_free(q); + } + return ERR_RTE; + } + +#if IP_SOF_BROADCAST + /* broadcast filter? */ + if ( ((pcb->so_options & SOF_BROADCAST) == 0) && ip_addr_isbroadcast(ipaddr, netif) ) { + LWIP_DEBUGF(RAW_DEBUG | LWIP_DBG_LEVEL_WARNING, ("raw_sendto: SOF_BROADCAST not enabled on pcb %p\n", (void *)pcb)); + /* free any temporary header pbuf allocated by pbuf_header() */ + if (q != p) { + pbuf_free(q); + } + return ERR_VAL; + } +#endif /* IP_SOF_BROADCAST */ + + if (ip_addr_isany(&pcb->local_ip)) { + /* use outgoing network interface IP address as source address */ + src_ip = &(netif->ip_addr); + } else { + /* use RAW PCB local IP address as source address */ + src_ip = &(pcb->local_ip); + } + +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = &(pcb->addr_hint); +#endif /* LWIP_NETIF_HWADDRHINT*/ + err = ip_output_if (q, src_ip, ipaddr, pcb->ttl, pcb->tos, pcb->protocol, netif); +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = NULL; +#endif /* LWIP_NETIF_HWADDRHINT*/ + + /* did we chain a header earlier? */ + if (q != p) { + /* free the header */ + pbuf_free(q); + } + return err; +} + +/** + * Send the raw IP packet to the address given by raw_connect() + * + * @param pcb the raw pcb which to send + * @param p the IP payload to send + * + */ +err_t +raw_send(struct raw_pcb *pcb, struct pbuf *p) +{ + return raw_sendto(pcb, p, &pcb->remote_ip); +} + +/** + * Remove an RAW PCB. + * + * @param pcb RAW PCB to be removed. The PCB is removed from the list of + * RAW PCB's and the data structure is freed from memory. + * + * @see raw_new() + */ +void +raw_remove(struct raw_pcb *pcb) +{ + struct raw_pcb *pcb2; + /* pcb to be removed is first in list? */ + if (raw_pcbs == pcb) { + /* make list start at 2nd pcb */ + raw_pcbs = raw_pcbs->next; + /* pcb not 1st in list */ + } else { + for(pcb2 = raw_pcbs; pcb2 != NULL; pcb2 = pcb2->next) { + /* find pcb in raw_pcbs list */ + if (pcb2->next != NULL && pcb2->next == pcb) { + /* remove pcb from list */ + pcb2->next = pcb->next; + } + } + } + memp_free(MEMP_RAW_PCB, pcb); +} + +/** + * Create a RAW PCB. + * + * @return The RAW PCB which was created. NULL if the PCB data structure + * could not be allocated. + * + * @param proto the protocol number of the IPs payload (e.g. IP_PROTO_ICMP) + * + * @see raw_remove() + */ +struct raw_pcb * +raw_new(u8_t proto) { + struct raw_pcb *pcb; + + LWIP_DEBUGF(RAW_DEBUG | LWIP_DBG_TRACE, ("raw_new\n")); + + pcb = memp_malloc(MEMP_RAW_PCB); + /* could allocate RAW PCB? */ + if (pcb != NULL) { + /* initialize PCB to all zeroes */ + memset(pcb, 0, sizeof(struct raw_pcb)); + pcb->protocol = proto; + pcb->ttl = RAW_TTL; + pcb->next = raw_pcbs; + raw_pcbs = pcb; + } + return pcb; +} + +#endif /* LWIP_RAW */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/stats.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/stats.c new file mode 100644 index 000000000..4299a9480 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/stats.c @@ -0,0 +1,151 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Statistics module + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#if LWIP_STATS /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/def.h" +#include "lwip/stats.h" +#include "lwip/mem.h" + +#include <string.h> + +struct stats_ lwip_stats; + +#if LWIP_STATS_DISPLAY +void +stats_display_proto(struct stats_proto *proto, char *name) +{ + LWIP_PLATFORM_DIAG(("\n%s\n\t", name)); + LWIP_PLATFORM_DIAG(("xmit: %"STAT_COUNTER_F"\n\t", proto->xmit)); + LWIP_PLATFORM_DIAG(("recv: %"STAT_COUNTER_F"\n\t", proto->recv)); + LWIP_PLATFORM_DIAG(("fw: %"STAT_COUNTER_F"\n\t", proto->fw)); + LWIP_PLATFORM_DIAG(("drop: %"STAT_COUNTER_F"\n\t", proto->drop)); + LWIP_PLATFORM_DIAG(("chkerr: %"STAT_COUNTER_F"\n\t", proto->chkerr)); + LWIP_PLATFORM_DIAG(("lenerr: %"STAT_COUNTER_F"\n\t", proto->lenerr)); + LWIP_PLATFORM_DIAG(("memerr: %"STAT_COUNTER_F"\n\t", proto->memerr)); + LWIP_PLATFORM_DIAG(("rterr: %"STAT_COUNTER_F"\n\t", proto->rterr)); + LWIP_PLATFORM_DIAG(("proterr: %"STAT_COUNTER_F"\n\t", proto->proterr)); + LWIP_PLATFORM_DIAG(("opterr: %"STAT_COUNTER_F"\n\t", proto->opterr)); + LWIP_PLATFORM_DIAG(("err: %"STAT_COUNTER_F"\n\t", proto->err)); + LWIP_PLATFORM_DIAG(("cachehit: %"STAT_COUNTER_F"\n", proto->cachehit)); +} + +#if IGMP_STATS +void +stats_display_igmp(struct stats_igmp *igmp) +{ + LWIP_PLATFORM_DIAG(("\nIGMP\n\t")); + LWIP_PLATFORM_DIAG(("lenerr: %"STAT_COUNTER_F"\n\t", igmp->lenerr)); + LWIP_PLATFORM_DIAG(("chkerr: %"STAT_COUNTER_F"\n\t", igmp->chkerr)); + LWIP_PLATFORM_DIAG(("v1_rxed: %"STAT_COUNTER_F"\n\t", igmp->v1_rxed)); + LWIP_PLATFORM_DIAG(("join_sent: %"STAT_COUNTER_F"\n\t", igmp->join_sent)); + LWIP_PLATFORM_DIAG(("leave_sent: %"STAT_COUNTER_F"\n\t", igmp->leave_sent)); + LWIP_PLATFORM_DIAG(("unicast_query: %"STAT_COUNTER_F"\n\t", igmp->unicast_query)); + LWIP_PLATFORM_DIAG(("report_sent: %"STAT_COUNTER_F"\n\t", igmp->report_sent)); + LWIP_PLATFORM_DIAG(("report_rxed: %"STAT_COUNTER_F"\n\t", igmp->report_rxed)); + LWIP_PLATFORM_DIAG(("group_query_rxed: %"STAT_COUNTER_F"\n", igmp->group_query_rxed)); +} +#endif /* IGMP_STATS */ + +#if MEM_STATS || MEMP_STATS +void +stats_display_mem(struct stats_mem *mem, char *name) +{ + LWIP_PLATFORM_DIAG(("\nMEM %s\n\t", name)); + LWIP_PLATFORM_DIAG(("avail: %"U32_F"\n\t", (u32_t)mem->avail)); + LWIP_PLATFORM_DIAG(("used: %"U32_F"\n\t", (u32_t)mem->used)); + LWIP_PLATFORM_DIAG(("max: %"U32_F"\n\t", (u32_t)mem->max)); + LWIP_PLATFORM_DIAG(("err: %"U32_F"\n", (u32_t)mem->err)); +} + +#if MEMP_STATS +void +stats_display_memp(struct stats_mem *mem, int index) +{ + char * memp_names[] = { +#define LWIP_MEMPOOL(name,num,size,desc) desc, +#include "lwip/memp_std.h" + }; + if(index < MEMP_MAX) { + stats_display_mem(mem, memp_names[index]); + } +} +#endif /* MEMP_STATS */ +#endif /* MEM_STATS || MEMP_STATS */ + +#if SYS_STATS +void +stats_display_sys(struct stats_sys *sys) +{ + LWIP_PLATFORM_DIAG(("\nSYS\n\t")); + LWIP_PLATFORM_DIAG(("sem.used: %"U32_F"\n\t", (u32_t)sys->sem.used)); + LWIP_PLATFORM_DIAG(("sem.max: %"U32_F"\n\t", (u32_t)sys->sem.max)); + LWIP_PLATFORM_DIAG(("sem.err: %"U32_F"\n\t", (u32_t)sys->sem.err)); + LWIP_PLATFORM_DIAG(("mbox.used: %"U32_F"\n\t", (u32_t)sys->mbox.used)); + LWIP_PLATFORM_DIAG(("mbox.max: %"U32_F"\n\t", (u32_t)sys->mbox.max)); + LWIP_PLATFORM_DIAG(("mbox.err: %"U32_F"\n\t", (u32_t)sys->mbox.err)); +} +#endif /* SYS_STATS */ + +void +stats_display(void) +{ + s16_t i; + + LINK_STATS_DISPLAY(); + ETHARP_STATS_DISPLAY(); + IPFRAG_STATS_DISPLAY(); + IP_STATS_DISPLAY(); + IGMP_STATS_DISPLAY(); + ICMP_STATS_DISPLAY(); + UDP_STATS_DISPLAY(); + TCP_STATS_DISPLAY(); + MEM_STATS_DISPLAY(); + for (i = 0; i < MEMP_MAX; i++) { + MEMP_STATS_DISPLAY(i); + } + SYS_STATS_DISPLAY(); +} +#endif /* LWIP_STATS_DISPLAY */ + +#endif /* LWIP_STATS */ + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp.c new file mode 100644 index 000000000..c588d21df --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp.c @@ -0,0 +1,1463 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Transmission Control Protocol for IP + * + * This file contains common functions for the TCP implementation, such as functinos + * for manipulating the data structures and the TCP timer functions. TCP functions + * related to input and output is found in tcp_in.c and tcp_out.c respectively. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#if LWIP_TCP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/memp.h" +#include "lwip/snmp.h" +#include "lwip/tcp.h" +#include "lwip/debug.h" +#include "lwip/stats.h" + +#include <string.h> + +const char *tcp_state_str[] = { + "CLOSED", + "LISTEN", + "SYN_SENT", + "SYN_RCVD", + "ESTABLISHED", + "FIN_WAIT_1", + "FIN_WAIT_2", + "CLOSE_WAIT", + "CLOSING", + "LAST_ACK", + "TIME_WAIT" +}; + +/* Incremented every coarse grained timer shot (typically every 500 ms). */ +u32_t tcp_ticks; +const u8_t tcp_backoff[13] = + { 1, 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7}; + /* Times per slowtmr hits */ +const u8_t tcp_persist_backoff[7] = { 3, 6, 12, 24, 48, 96, 120 }; + +/* The TCP PCB lists. */ + +/** List of all TCP PCBs bound but not yet (connected || listening) */ +struct tcp_pcb *tcp_bound_pcbs; +/** List of all TCP PCBs in LISTEN state */ +union tcp_listen_pcbs_t tcp_listen_pcbs; +/** List of all TCP PCBs that are in a state in which + * they accept or send data. */ +struct tcp_pcb *tcp_active_pcbs; +/** List of all TCP PCBs in TIME-WAIT state */ +struct tcp_pcb *tcp_tw_pcbs; + +struct tcp_pcb *tcp_tmp_pcb; + +static u8_t tcp_timer; +static u16_t tcp_new_port(void); + +/** + * Called periodically to dispatch TCP timers. + * + */ +void +tcp_tmr(void) +{ + /* Call tcp_fasttmr() every 250 ms */ + tcp_fasttmr(); + + if (++tcp_timer & 1) { + /* Call tcp_tmr() every 500 ms, i.e., every other timer + tcp_tmr() is called. */ + tcp_slowtmr(); + } +} + +/** + * Closes the connection held by the PCB. + * + * Listening pcbs are freed and may not be referenced any more. + * Connection pcbs are freed if not yet connected and may not be referenced + * any more. If a connection is established (at least SYN received or in + * a closing state), the connection is closed, and put in a closing state. + * The pcb is then automatically freed in tcp_slowtmr(). It is therefore + * unsafe to reference it. + * + * @param pcb the tcp_pcb to close + * @return ERR_OK if connection has been closed + * another err_t if closing failed and pcb is not freed + */ +err_t +tcp_close(struct tcp_pcb *pcb) +{ + err_t err; + +#if TCP_DEBUG + LWIP_DEBUGF(TCP_DEBUG, ("tcp_close: closing in ")); + tcp_debug_print_state(pcb->state); +#endif /* TCP_DEBUG */ + + switch (pcb->state) { + case CLOSED: + /* Closing a pcb in the CLOSED state might seem erroneous, + * however, it is in this state once allocated and as yet unused + * and the user needs some way to free it should the need arise. + * Calling tcp_close() with a pcb that has already been closed, (i.e. twice) + * or for a pcb that has been used and then entered the CLOSED state + * is erroneous, but this should never happen as the pcb has in those cases + * been freed, and so any remaining handles are bogus. */ + err = ERR_OK; + TCP_RMV(&tcp_bound_pcbs, pcb); + memp_free(MEMP_TCP_PCB, pcb); + pcb = NULL; + break; + case LISTEN: + err = ERR_OK; + tcp_pcb_remove((struct tcp_pcb **)&tcp_listen_pcbs.pcbs, pcb); + memp_free(MEMP_TCP_PCB_LISTEN, pcb); + pcb = NULL; + break; + case SYN_SENT: + err = ERR_OK; + tcp_pcb_remove(&tcp_active_pcbs, pcb); + memp_free(MEMP_TCP_PCB, pcb); + pcb = NULL; + snmp_inc_tcpattemptfails(); + break; + case SYN_RCVD: + err = tcp_send_ctrl(pcb, TCP_FIN); + if (err == ERR_OK) { + snmp_inc_tcpattemptfails(); + pcb->state = FIN_WAIT_1; + } + break; + case ESTABLISHED: + err = tcp_send_ctrl(pcb, TCP_FIN); + if (err == ERR_OK) { + snmp_inc_tcpestabresets(); + pcb->state = FIN_WAIT_1; + } + break; + case CLOSE_WAIT: + err = tcp_send_ctrl(pcb, TCP_FIN); + if (err == ERR_OK) { + snmp_inc_tcpestabresets(); + pcb->state = LAST_ACK; + } + break; + default: + /* Has already been closed, do nothing. */ + err = ERR_OK; + pcb = NULL; + break; + } + + if (pcb != NULL && err == ERR_OK) { + /* To ensure all data has been sent when tcp_close returns, we have + to make sure tcp_output doesn't fail. + Since we don't really have to ensure all data has been sent when tcp_close + returns (unsent data is sent from tcp timer functions, also), we don't care + for the return value of tcp_output for now. */ + /* @todo: When implementing SO_LINGER, this must be changed somehow: + If SOF_LINGER is set, the data should be sent when tcp_close returns. */ + tcp_output(pcb); + } + return err; +} + +/** + * Abandons a connection and optionally sends a RST to the remote + * host. Deletes the local protocol control block. This is done when + * a connection is killed because of shortage of memory. + * + * @param pcb the tcp_pcb to abort + * @param reset boolean to indicate whether a reset should be sent + */ +void +tcp_abandon(struct tcp_pcb *pcb, int reset) +{ + u32_t seqno, ackno; + u16_t remote_port, local_port; + struct ip_addr remote_ip, local_ip; +#if LWIP_CALLBACK_API + void (* errf)(void *arg, err_t err); +#endif /* LWIP_CALLBACK_API */ + void *errf_arg; + + + /* Figure out on which TCP PCB list we are, and remove us. If we + are in an active state, call the receive function associated with + the PCB with a NULL argument, and send an RST to the remote end. */ + if (pcb->state == TIME_WAIT) { + tcp_pcb_remove(&tcp_tw_pcbs, pcb); + memp_free(MEMP_TCP_PCB, pcb); + } else { + seqno = pcb->snd_nxt; + ackno = pcb->rcv_nxt; + ip_addr_set(&local_ip, &(pcb->local_ip)); + ip_addr_set(&remote_ip, &(pcb->remote_ip)); + local_port = pcb->local_port; + remote_port = pcb->remote_port; +#if LWIP_CALLBACK_API + errf = pcb->errf; +#endif /* LWIP_CALLBACK_API */ + errf_arg = pcb->callback_arg; + tcp_pcb_remove(&tcp_active_pcbs, pcb); + if (pcb->unacked != NULL) { + tcp_segs_free(pcb->unacked); + } + if (pcb->unsent != NULL) { + tcp_segs_free(pcb->unsent); + } +#if TCP_QUEUE_OOSEQ + if (pcb->ooseq != NULL) { + tcp_segs_free(pcb->ooseq); + } +#endif /* TCP_QUEUE_OOSEQ */ + memp_free(MEMP_TCP_PCB, pcb); + TCP_EVENT_ERR(errf, errf_arg, ERR_ABRT); + if (reset) { + LWIP_DEBUGF(TCP_RST_DEBUG, ("tcp_abandon: sending RST\n")); + tcp_rst(seqno, ackno, &local_ip, &remote_ip, local_port, remote_port); + } + } +} + +/** + * Binds the connection to a local portnumber and IP address. If the + * IP address is not given (i.e., ipaddr == NULL), the IP address of + * the outgoing network interface is used instead. + * + * @param pcb the tcp_pcb to bind (no check is done whether this pcb is + * already bound!) + * @param ipaddr the local ip address to bind to (use IP_ADDR_ANY to bind + * to any local address + * @param port the local port to bind to + * @return ERR_USE if the port is already in use + * ERR_OK if bound + */ +err_t +tcp_bind(struct tcp_pcb *pcb, struct ip_addr *ipaddr, u16_t port) +{ + struct tcp_pcb *cpcb; + + LWIP_ERROR("tcp_bind: can only bind in state CLOSED", pcb->state == CLOSED, return ERR_ISCONN); + + if (port == 0) { + port = tcp_new_port(); + } + /* Check if the address already is in use. */ + /* Check the listen pcbs. */ + for(cpcb = (struct tcp_pcb *)tcp_listen_pcbs.pcbs; + cpcb != NULL; cpcb = cpcb->next) { + if (cpcb->local_port == port) { + if (ip_addr_isany(&(cpcb->local_ip)) || + ip_addr_isany(ipaddr) || + ip_addr_cmp(&(cpcb->local_ip), ipaddr)) { + return ERR_USE; + } + } + } + /* Check the connected pcbs. */ + for(cpcb = tcp_active_pcbs; + cpcb != NULL; cpcb = cpcb->next) { + if (cpcb->local_port == port) { + if (ip_addr_isany(&(cpcb->local_ip)) || + ip_addr_isany(ipaddr) || + ip_addr_cmp(&(cpcb->local_ip), ipaddr)) { + return ERR_USE; + } + } + } + /* Check the bound, not yet connected pcbs. */ + for(cpcb = tcp_bound_pcbs; cpcb != NULL; cpcb = cpcb->next) { + if (cpcb->local_port == port) { + if (ip_addr_isany(&(cpcb->local_ip)) || + ip_addr_isany(ipaddr) || + ip_addr_cmp(&(cpcb->local_ip), ipaddr)) { + return ERR_USE; + } + } + } + /* @todo: until SO_REUSEADDR is implemented (see task #6995 on savannah), + * we have to check the pcbs in TIME-WAIT state, also: */ + for(cpcb = tcp_tw_pcbs; cpcb != NULL; cpcb = cpcb->next) { + if (cpcb->local_port == port) { + if (ip_addr_cmp(&(cpcb->local_ip), ipaddr)) { + return ERR_USE; + } + } + } + + if (!ip_addr_isany(ipaddr)) { + pcb->local_ip = *ipaddr; + } + pcb->local_port = port; + TCP_REG(&tcp_bound_pcbs, pcb); + LWIP_DEBUGF(TCP_DEBUG, ("tcp_bind: bind to port %"U16_F"\n", port)); + return ERR_OK; +} +#if LWIP_CALLBACK_API +/** + * Default accept callback if no accept callback is specified by the user. + */ +static err_t +tcp_accept_null(void *arg, struct tcp_pcb *pcb, err_t err) +{ + LWIP_UNUSED_ARG(arg); + LWIP_UNUSED_ARG(pcb); + LWIP_UNUSED_ARG(err); + + return ERR_ABRT; +} +#endif /* LWIP_CALLBACK_API */ + +/** + * Set the state of the connection to be LISTEN, which means that it + * is able to accept incoming connections. The protocol control block + * is reallocated in order to consume less memory. Setting the + * connection to LISTEN is an irreversible process. + * + * @param pcb the original tcp_pcb + * @param backlog the incoming connections queue limit + * @return tcp_pcb used for listening, consumes less memory. + * + * @note The original tcp_pcb is freed. This function therefore has to be + * called like this: + * tpcb = tcp_listen(tpcb); + */ +struct tcp_pcb * +tcp_listen_with_backlog(struct tcp_pcb *pcb, u8_t backlog) +{ + struct tcp_pcb_listen *lpcb; + + LWIP_UNUSED_ARG(backlog); + LWIP_ERROR("tcp_listen: pcb already connected", pcb->state == CLOSED, return NULL); + + /* already listening? */ + if (pcb->state == LISTEN) { + return pcb; + } + lpcb = memp_malloc(MEMP_TCP_PCB_LISTEN); + if (lpcb == NULL) { + return NULL; + } + lpcb->callback_arg = pcb->callback_arg; + lpcb->local_port = pcb->local_port; + lpcb->state = LISTEN; + lpcb->so_options = pcb->so_options; + lpcb->so_options |= SOF_ACCEPTCONN; + lpcb->ttl = pcb->ttl; + lpcb->tos = pcb->tos; + ip_addr_set(&lpcb->local_ip, &pcb->local_ip); + TCP_RMV(&tcp_bound_pcbs, pcb); + memp_free(MEMP_TCP_PCB, pcb); +#if LWIP_CALLBACK_API + lpcb->accept = tcp_accept_null; +#endif /* LWIP_CALLBACK_API */ +#if TCP_LISTEN_BACKLOG + lpcb->accepts_pending = 0; + lpcb->backlog = (backlog ? backlog : 1); +#endif /* TCP_LISTEN_BACKLOG */ + TCP_REG(&tcp_listen_pcbs.listen_pcbs, lpcb); + return (struct tcp_pcb *)lpcb; +} + +/** + * Update the state that tracks the available window space to advertise. + * + * Returns how much extra window would be advertised if we sent an + * update now. + */ +u32_t tcp_update_rcv_ann_wnd(struct tcp_pcb *pcb) +{ + u32_t new_right_edge = pcb->rcv_nxt + pcb->rcv_wnd; + + if (TCP_SEQ_GEQ(new_right_edge, pcb->rcv_ann_right_edge + LWIP_MIN((TCP_WND / 2), pcb->mss))) { + /* we can advertise more window */ + pcb->rcv_ann_wnd = pcb->rcv_wnd; + return new_right_edge - pcb->rcv_ann_right_edge; + } else { + if (TCP_SEQ_GT(pcb->rcv_nxt, pcb->rcv_ann_right_edge)) { + /* Can happen due to other end sending out of advertised window, + * but within actual available (but not yet advertised) window */ + pcb->rcv_ann_wnd = 0; + } else { + /* keep the right edge of window constant */ + pcb->rcv_ann_wnd = pcb->rcv_ann_right_edge - pcb->rcv_nxt; + } + return 0; + } +} + +/** + * This function should be called by the application when it has + * processed the data. The purpose is to advertise a larger window + * when the data has been processed. + * + * @param pcb the tcp_pcb for which data is read + * @param len the amount of bytes that have been read by the application + */ +void +tcp_recved(struct tcp_pcb *pcb, u16_t len) +{ + int wnd_inflation; + + LWIP_ASSERT("tcp_recved: len would wrap rcv_wnd\n", + len <= 0xffff - pcb->rcv_wnd ); + + pcb->rcv_wnd += len; + if (pcb->rcv_wnd > TCP_WND) + pcb->rcv_wnd = TCP_WND; + + wnd_inflation = tcp_update_rcv_ann_wnd(pcb); + + /* If the change in the right edge of window is significant (default + * watermark is TCP_WND/2), then send an explicit update now. + * Otherwise wait for a packet to be sent in the normal course of + * events (or more window to be available later) */ + if (wnd_inflation >= TCP_WND_UPDATE_THRESHOLD) + tcp_ack_now(pcb); + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_recved: recveived %"U16_F" bytes, wnd %"U16_F" (%"U16_F").\n", + len, pcb->rcv_wnd, TCP_WND - pcb->rcv_wnd)); +} + +/** + * A nastly hack featuring 'goto' statements that allocates a + * new TCP local port. + * + * @return a new (free) local TCP port number + */ +static u16_t +tcp_new_port(void) +{ + struct tcp_pcb *pcb; +#ifndef TCP_LOCAL_PORT_RANGE_START +#define TCP_LOCAL_PORT_RANGE_START 4096 +#define TCP_LOCAL_PORT_RANGE_END 0x7fff +#endif + static u16_t port = TCP_LOCAL_PORT_RANGE_START; + + again: + if (++port > TCP_LOCAL_PORT_RANGE_END) { + port = TCP_LOCAL_PORT_RANGE_START; + } + + for(pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) { + if (pcb->local_port == port) { + goto again; + } + } + for(pcb = tcp_tw_pcbs; pcb != NULL; pcb = pcb->next) { + if (pcb->local_port == port) { + goto again; + } + } + for(pcb = (struct tcp_pcb *)tcp_listen_pcbs.pcbs; pcb != NULL; pcb = pcb->next) { + if (pcb->local_port == port) { + goto again; + } + } + return port; +} + +/** + * Connects to another host. The function given as the "connected" + * argument will be called when the connection has been established. + * + * @param pcb the tcp_pcb used to establish the connection + * @param ipaddr the remote ip address to connect to + * @param port the remote tcp port to connect to + * @param connected callback function to call when connected (or on error) + * @return ERR_VAL if invalid arguments are given + * ERR_OK if connect request has been sent + * other err_t values if connect request couldn't be sent + */ +err_t +tcp_connect(struct tcp_pcb *pcb, struct ip_addr *ipaddr, u16_t port, + err_t (* connected)(void *arg, struct tcp_pcb *tpcb, err_t err)) +{ + err_t ret; + u32_t iss; + + LWIP_ERROR("tcp_connect: can only connected from state CLOSED", pcb->state == CLOSED, return ERR_ISCONN); + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_connect to port %"U16_F"\n", port)); + if (ipaddr != NULL) { + pcb->remote_ip = *ipaddr; + } else { + return ERR_VAL; + } + pcb->remote_port = port; + if (pcb->local_port == 0) { + pcb->local_port = tcp_new_port(); + } + iss = tcp_next_iss(); + pcb->rcv_nxt = 0; + pcb->snd_nxt = iss; + pcb->lastack = iss - 1; + pcb->snd_lbb = iss - 1; + pcb->rcv_wnd = TCP_WND; + pcb->rcv_ann_wnd = TCP_WND; + pcb->rcv_ann_right_edge = pcb->rcv_nxt; + pcb->snd_wnd = TCP_WND; + /* As initial send MSS, we use TCP_MSS but limit it to 536. + The send MSS is updated when an MSS option is received. */ + pcb->mss = (TCP_MSS > 536) ? 536 : TCP_MSS; +#if TCP_CALCULATE_EFF_SEND_MSS + pcb->mss = tcp_eff_send_mss(pcb->mss, ipaddr); +#endif /* TCP_CALCULATE_EFF_SEND_MSS */ + pcb->cwnd = 1; + pcb->ssthresh = pcb->mss * 10; + pcb->state = SYN_SENT; +#if LWIP_CALLBACK_API + pcb->connected = connected; +#endif /* LWIP_CALLBACK_API */ + TCP_RMV(&tcp_bound_pcbs, pcb); + TCP_REG(&tcp_active_pcbs, pcb); + + snmp_inc_tcpactiveopens(); + + ret = tcp_enqueue(pcb, NULL, 0, TCP_SYN, 0, TF_SEG_OPTS_MSS +#if LWIP_TCP_TIMESTAMPS + | TF_SEG_OPTS_TS +#endif + ); + if (ret == ERR_OK) { + tcp_output(pcb); + } + return ret; +} + +/** + * Called every 500 ms and implements the retransmission timer and the timer that + * removes PCBs that have been in TIME-WAIT for enough time. It also increments + * various timers such as the inactivity timer in each PCB. + * + * Automatically called from tcp_tmr(). + */ +void +tcp_slowtmr(void) +{ + struct tcp_pcb *pcb, *pcb2, *prev; + u16_t eff_wnd; + u8_t pcb_remove; /* flag if a PCB should be removed */ + u8_t pcb_reset; /* flag if a RST should be sent when removing */ + err_t err; + + err = ERR_OK; + + ++tcp_ticks; + + /* Steps through all of the active PCBs. */ + prev = NULL; + pcb = tcp_active_pcbs; + if (pcb == NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: no active pcbs\n")); + } + while (pcb != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: processing active pcb\n")); + LWIP_ASSERT("tcp_slowtmr: active pcb->state != CLOSED\n", pcb->state != CLOSED); + LWIP_ASSERT("tcp_slowtmr: active pcb->state != LISTEN\n", pcb->state != LISTEN); + LWIP_ASSERT("tcp_slowtmr: active pcb->state != TIME-WAIT\n", pcb->state != TIME_WAIT); + + pcb_remove = 0; + pcb_reset = 0; + + if (pcb->state == SYN_SENT && pcb->nrtx == TCP_SYNMAXRTX) { + ++pcb_remove; + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: max SYN retries reached\n")); + } + else if (pcb->nrtx == TCP_MAXRTX) { + ++pcb_remove; + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: max DATA retries reached\n")); + } else { + if (pcb->persist_backoff > 0) { + /* If snd_wnd is zero, use persist timer to send 1 byte probes + * instead of using the standard retransmission mechanism. */ + pcb->persist_cnt++; + if (pcb->persist_cnt >= tcp_persist_backoff[pcb->persist_backoff-1]) { + pcb->persist_cnt = 0; + if (pcb->persist_backoff < sizeof(tcp_persist_backoff)) { + pcb->persist_backoff++; + } + tcp_zero_window_probe(pcb); + } + } else { + /* Increase the retransmission timer if it is running */ + if(pcb->rtime >= 0) + ++pcb->rtime; + + if (pcb->unacked != NULL && pcb->rtime >= pcb->rto) { + /* Time for a retransmission. */ + LWIP_DEBUGF(TCP_RTO_DEBUG, ("tcp_slowtmr: rtime %"S16_F + " pcb->rto %"S16_F"\n", + pcb->rtime, pcb->rto)); + + /* Double retransmission time-out unless we are trying to + * connect to somebody (i.e., we are in SYN_SENT). */ + if (pcb->state != SYN_SENT) { + pcb->rto = ((pcb->sa >> 3) + pcb->sv) << tcp_backoff[pcb->nrtx]; + } + + /* Reset the retransmission timer. */ + pcb->rtime = 0; + + /* Reduce congestion window and ssthresh. */ + eff_wnd = LWIP_MIN(pcb->cwnd, pcb->snd_wnd); + pcb->ssthresh = eff_wnd >> 1; + if (pcb->ssthresh < pcb->mss) { + pcb->ssthresh = pcb->mss * 2; + } + pcb->cwnd = pcb->mss; + LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_slowtmr: cwnd %"U16_F + " ssthresh %"U16_F"\n", + pcb->cwnd, pcb->ssthresh)); + + /* The following needs to be called AFTER cwnd is set to one + mss - STJ */ + tcp_rexmit_rto(pcb); + } + } + } + /* Check if this PCB has stayed too long in FIN-WAIT-2 */ + if (pcb->state == FIN_WAIT_2) { + if ((u32_t)(tcp_ticks - pcb->tmr) > + TCP_FIN_WAIT_TIMEOUT / TCP_SLOW_INTERVAL) { + ++pcb_remove; + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: removing pcb stuck in FIN-WAIT-2\n")); + } + } + + /* Check if KEEPALIVE should be sent */ + if((pcb->so_options & SOF_KEEPALIVE) && + ((pcb->state == ESTABLISHED) || + (pcb->state == CLOSE_WAIT))) { +#if LWIP_TCP_KEEPALIVE + if((u32_t)(tcp_ticks - pcb->tmr) > + (pcb->keep_idle + (pcb->keep_cnt*pcb->keep_intvl)) + / TCP_SLOW_INTERVAL) +#else + if((u32_t)(tcp_ticks - pcb->tmr) > + (pcb->keep_idle + TCP_MAXIDLE) / TCP_SLOW_INTERVAL) +#endif /* LWIP_TCP_KEEPALIVE */ + { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: KEEPALIVE timeout. Aborting connection to %"U16_F".%"U16_F".%"U16_F".%"U16_F".\n", + ip4_addr1(&pcb->remote_ip), ip4_addr2(&pcb->remote_ip), + ip4_addr3(&pcb->remote_ip), ip4_addr4(&pcb->remote_ip))); + + ++pcb_remove; + ++pcb_reset; + } +#if LWIP_TCP_KEEPALIVE + else if((u32_t)(tcp_ticks - pcb->tmr) > + (pcb->keep_idle + pcb->keep_cnt_sent * pcb->keep_intvl) + / TCP_SLOW_INTERVAL) +#else + else if((u32_t)(tcp_ticks - pcb->tmr) > + (pcb->keep_idle + pcb->keep_cnt_sent * TCP_KEEPINTVL_DEFAULT) + / TCP_SLOW_INTERVAL) +#endif /* LWIP_TCP_KEEPALIVE */ + { + tcp_keepalive(pcb); + pcb->keep_cnt_sent++; + } + } + + /* If this PCB has queued out of sequence data, but has been + inactive for too long, will drop the data (it will eventually + be retransmitted). */ +#if TCP_QUEUE_OOSEQ + if (pcb->ooseq != NULL && + (u32_t)tcp_ticks - pcb->tmr >= pcb->rto * TCP_OOSEQ_TIMEOUT) { + tcp_segs_free(pcb->ooseq); + pcb->ooseq = NULL; + LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_slowtmr: dropping OOSEQ queued data\n")); + } +#endif /* TCP_QUEUE_OOSEQ */ + + /* Check if this PCB has stayed too long in SYN-RCVD */ + if (pcb->state == SYN_RCVD) { + if ((u32_t)(tcp_ticks - pcb->tmr) > + TCP_SYN_RCVD_TIMEOUT / TCP_SLOW_INTERVAL) { + ++pcb_remove; + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: removing pcb stuck in SYN-RCVD\n")); + } + } + + /* Check if this PCB has stayed too long in LAST-ACK */ + if (pcb->state == LAST_ACK) { + if ((u32_t)(tcp_ticks - pcb->tmr) > 2 * TCP_MSL / TCP_SLOW_INTERVAL) { + ++pcb_remove; + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: removing pcb stuck in LAST-ACK\n")); + } + } + + /* If the PCB should be removed, do it. */ + if (pcb_remove) { + tcp_pcb_purge(pcb); + /* Remove PCB from tcp_active_pcbs list. */ + if (prev != NULL) { + LWIP_ASSERT("tcp_slowtmr: middle tcp != tcp_active_pcbs", pcb != tcp_active_pcbs); + prev->next = pcb->next; + } else { + /* This PCB was the first. */ + LWIP_ASSERT("tcp_slowtmr: first pcb == tcp_active_pcbs", tcp_active_pcbs == pcb); + tcp_active_pcbs = pcb->next; + } + + TCP_EVENT_ERR(pcb->errf, pcb->callback_arg, ERR_ABRT); + if (pcb_reset) { + tcp_rst(pcb->snd_nxt, pcb->rcv_nxt, &pcb->local_ip, &pcb->remote_ip, + pcb->local_port, pcb->remote_port); + } + + pcb2 = pcb->next; + memp_free(MEMP_TCP_PCB, pcb); + pcb = pcb2; + } else { + + /* We check if we should poll the connection. */ + ++pcb->polltmr; + if (pcb->polltmr >= pcb->pollinterval) { + pcb->polltmr = 0; + LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: polling application\n")); + TCP_EVENT_POLL(pcb, err); + if (err == ERR_OK) { + tcp_output(pcb); + } + } + + prev = pcb; + pcb = pcb->next; + } + } + + + /* Steps through all of the TIME-WAIT PCBs. */ + prev = NULL; + pcb = tcp_tw_pcbs; + while (pcb != NULL) { + LWIP_ASSERT("tcp_slowtmr: TIME-WAIT pcb->state == TIME-WAIT", pcb->state == TIME_WAIT); + pcb_remove = 0; + + /* Check if this PCB has stayed long enough in TIME-WAIT */ + if ((u32_t)(tcp_ticks - pcb->tmr) > 2 * TCP_MSL / TCP_SLOW_INTERVAL) { + ++pcb_remove; + } + + + + /* If the PCB should be removed, do it. */ + if (pcb_remove) { + tcp_pcb_purge(pcb); + /* Remove PCB from tcp_tw_pcbs list. */ + if (prev != NULL) { + LWIP_ASSERT("tcp_slowtmr: middle tcp != tcp_tw_pcbs", pcb != tcp_tw_pcbs); + prev->next = pcb->next; + } else { + /* This PCB was the first. */ + LWIP_ASSERT("tcp_slowtmr: first pcb == tcp_tw_pcbs", tcp_tw_pcbs == pcb); + tcp_tw_pcbs = pcb->next; + } + pcb2 = pcb->next; + memp_free(MEMP_TCP_PCB, pcb); + pcb = pcb2; + } else { + prev = pcb; + pcb = pcb->next; + } + } +} + +/** + * Is called every TCP_FAST_INTERVAL (250 ms) and process data previously + * "refused" by upper layer (application) and sends delayed ACKs. + * + * Automatically called from tcp_tmr(). + */ +void +tcp_fasttmr(void) +{ + struct tcp_pcb *pcb; + + for(pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) { + /* If there is data which was previously "refused" by upper layer */ + if (pcb->refused_data != NULL) { + /* Notify again application with data previously received. */ + err_t err; + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_fasttmr: notify kept packet\n")); + TCP_EVENT_RECV(pcb, pcb->refused_data, ERR_OK, err); + if (err == ERR_OK) { + pcb->refused_data = NULL; + } + } + + /* send delayed ACKs */ + if (pcb->flags & TF_ACK_DELAY) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_fasttmr: delayed ACK\n")); + tcp_ack_now(pcb); + pcb->flags &= ~(TF_ACK_DELAY | TF_ACK_NOW); + } + } +} + +/** + * Deallocates a list of TCP segments (tcp_seg structures). + * + * @param seg tcp_seg list of TCP segments to free + * @return the number of pbufs that were deallocated + */ +u8_t +tcp_segs_free(struct tcp_seg *seg) +{ + u8_t count = 0; + struct tcp_seg *next; + while (seg != NULL) { + next = seg->next; + count += tcp_seg_free(seg); + seg = next; + } + return count; +} + +/** + * Frees a TCP segment (tcp_seg structure). + * + * @param seg single tcp_seg to free + * @return the number of pbufs that were deallocated + */ +u8_t +tcp_seg_free(struct tcp_seg *seg) +{ + u8_t count = 0; + + if (seg != NULL) { + if (seg->p != NULL) { + count = pbuf_free(seg->p); +#if TCP_DEBUG + seg->p = NULL; +#endif /* TCP_DEBUG */ + } + memp_free(MEMP_TCP_SEG, seg); + } + return count; +} + +/** + * Sets the priority of a connection. + * + * @param pcb the tcp_pcb to manipulate + * @param prio new priority + */ +void +tcp_setprio(struct tcp_pcb *pcb, u8_t prio) +{ + pcb->prio = prio; +} +#if TCP_QUEUE_OOSEQ + +/** + * Returns a copy of the given TCP segment. + * The pbuf and data are not copied, only the pointers + * + * @param seg the old tcp_seg + * @return a copy of seg + */ +struct tcp_seg * +tcp_seg_copy(struct tcp_seg *seg) +{ + struct tcp_seg *cseg; + + cseg = memp_malloc(MEMP_TCP_SEG); + if (cseg == NULL) { + return NULL; + } + SMEMCPY((u8_t *)cseg, (const u8_t *)seg, sizeof(struct tcp_seg)); + pbuf_ref(cseg->p); + return cseg; +} +#endif + +#if LWIP_CALLBACK_API +/** + * Default receive callback that is called if the user didn't register + * a recv callback for the pcb. + */ +err_t +tcp_recv_null(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err) +{ + LWIP_UNUSED_ARG(arg); + if (p != NULL) { + tcp_recved(pcb, p->tot_len); + pbuf_free(p); + } else if (err == ERR_OK) { + return tcp_close(pcb); + } + return ERR_OK; +} +#endif /* LWIP_CALLBACK_API */ + +/** + * Kills the oldest active connection that has lower priority than prio. + * + * @param prio minimum priority + */ +static void +tcp_kill_prio(u8_t prio) +{ + struct tcp_pcb *pcb, *inactive; + u32_t inactivity; + u8_t mprio; + + + mprio = TCP_PRIO_MAX; + + /* We kill the oldest active connection that has lower priority than prio. */ + inactivity = 0; + inactive = NULL; + for(pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) { + if (pcb->prio <= prio && + pcb->prio <= mprio && + (u32_t)(tcp_ticks - pcb->tmr) >= inactivity) { + inactivity = tcp_ticks - pcb->tmr; + inactive = pcb; + mprio = pcb->prio; + } + } + if (inactive != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_kill_prio: killing oldest PCB %p (%"S32_F")\n", + (void *)inactive, inactivity)); + tcp_abort(inactive); + } +} + +/** + * Kills the oldest connection that is in TIME_WAIT state. + * Called from tcp_alloc() if no more connections are available. + */ +static void +tcp_kill_timewait(void) +{ + struct tcp_pcb *pcb, *inactive; + u32_t inactivity; + + inactivity = 0; + inactive = NULL; + /* Go through the list of TIME_WAIT pcbs and get the oldest pcb. */ + for(pcb = tcp_tw_pcbs; pcb != NULL; pcb = pcb->next) { + if ((u32_t)(tcp_ticks - pcb->tmr) >= inactivity) { + inactivity = tcp_ticks - pcb->tmr; + inactive = pcb; + } + } + if (inactive != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_kill_timewait: killing oldest TIME-WAIT PCB %p (%"S32_F")\n", + (void *)inactive, inactivity)); + tcp_abort(inactive); + } +} + +/** + * Allocate a new tcp_pcb structure. + * + * @param prio priority for the new pcb + * @return a new tcp_pcb that initially is in state CLOSED + */ +struct tcp_pcb * +tcp_alloc(u8_t prio) +{ + struct tcp_pcb *pcb; + u32_t iss; + + pcb = memp_malloc(MEMP_TCP_PCB); + if (pcb == NULL) { + /* Try killing oldest connection in TIME-WAIT. */ + LWIP_DEBUGF(TCP_DEBUG, ("tcp_alloc: killing off oldest TIME-WAIT connection\n")); + tcp_kill_timewait(); + /* Try to allocate a tcp_pcb again. */ + pcb = memp_malloc(MEMP_TCP_PCB); + if (pcb == NULL) { + /* Try killing active connections with lower priority than the new one. */ + LWIP_DEBUGF(TCP_DEBUG, ("tcp_alloc: killing connection with prio lower than %d\n", prio)); + tcp_kill_prio(prio); + /* Try to allocate a tcp_pcb again. */ + pcb = memp_malloc(MEMP_TCP_PCB); + if (pcb != NULL) { + /* adjust err stats: memp_malloc failed twice before */ + MEMP_STATS_DEC(err, MEMP_TCP_PCB); + } + } + if (pcb != NULL) { + /* adjust err stats: timewait PCB was freed above */ + MEMP_STATS_DEC(err, MEMP_TCP_PCB); + } + } + if (pcb != NULL) { + memset(pcb, 0, sizeof(struct tcp_pcb)); + pcb->prio = TCP_PRIO_NORMAL; + pcb->snd_buf = TCP_SND_BUF; + pcb->snd_queuelen = 0; + pcb->rcv_wnd = TCP_WND; + pcb->rcv_ann_wnd = TCP_WND; + pcb->tos = 0; + pcb->ttl = TCP_TTL; + /* As initial send MSS, we use TCP_MSS but limit it to 536. + The send MSS is updated when an MSS option is received. */ + pcb->mss = (TCP_MSS > 536) ? 536 : TCP_MSS; + pcb->rto = 3000 / TCP_SLOW_INTERVAL; + pcb->sa = 0; + pcb->sv = 3000 / TCP_SLOW_INTERVAL; + pcb->rtime = -1; + pcb->cwnd = 1; + iss = tcp_next_iss(); + pcb->snd_wl2 = iss; + pcb->snd_nxt = iss; + pcb->lastack = iss; + pcb->snd_lbb = iss; + pcb->tmr = tcp_ticks; + + pcb->polltmr = 0; + +#if LWIP_CALLBACK_API + pcb->recv = tcp_recv_null; +#endif /* LWIP_CALLBACK_API */ + + /* Init KEEPALIVE timer */ + pcb->keep_idle = TCP_KEEPIDLE_DEFAULT; + +#if LWIP_TCP_KEEPALIVE + pcb->keep_intvl = TCP_KEEPINTVL_DEFAULT; + pcb->keep_cnt = TCP_KEEPCNT_DEFAULT; +#endif /* LWIP_TCP_KEEPALIVE */ + + pcb->keep_cnt_sent = 0; + } + return pcb; +} + +/** + * Creates a new TCP protocol control block but doesn't place it on + * any of the TCP PCB lists. + * The pcb is not put on any list until binding using tcp_bind(). + * + * @internal: Maybe there should be a idle TCP PCB list where these + * PCBs are put on. Port reservation using tcp_bind() is implemented but + * allocated pcbs that are not bound can't be killed automatically if wanting + * to allocate a pcb with higher prio (@see tcp_kill_prio()) + * + * @return a new tcp_pcb that initially is in state CLOSED + */ +struct tcp_pcb * +tcp_new(void) +{ + return tcp_alloc(TCP_PRIO_NORMAL); +} + +/** + * Used to specify the argument that should be passed callback + * functions. + * + * @param pcb tcp_pcb to set the callback argument + * @param arg void pointer argument to pass to callback functions + */ +void +tcp_arg(struct tcp_pcb *pcb, void *arg) +{ + pcb->callback_arg = arg; +} +#if LWIP_CALLBACK_API + +/** + * Used to specify the function that should be called when a TCP + * connection receives data. + * + * @param pcb tcp_pcb to set the recv callback + * @param recv callback function to call for this pcb when data is received + */ +void +tcp_recv(struct tcp_pcb *pcb, + err_t (* recv)(void *arg, struct tcp_pcb *tpcb, struct pbuf *p, err_t err)) +{ + pcb->recv = recv; +} + +/** + * Used to specify the function that should be called when TCP data + * has been successfully delivered to the remote host. + * + * @param pcb tcp_pcb to set the sent callback + * @param sent callback function to call for this pcb when data is successfully sent + */ +void +tcp_sent(struct tcp_pcb *pcb, + err_t (* sent)(void *arg, struct tcp_pcb *tpcb, u16_t len)) +{ + pcb->sent = sent; +} + +/** + * Used to specify the function that should be called when a fatal error + * has occured on the connection. + * + * @param pcb tcp_pcb to set the err callback + * @param errf callback function to call for this pcb when a fatal error + * has occured on the connection + */ +void +tcp_err(struct tcp_pcb *pcb, + void (* errf)(void *arg, err_t err)) +{ + pcb->errf = errf; +} + +/** + * Used for specifying the function that should be called when a + * LISTENing connection has been connected to another host. + * + * @param pcb tcp_pcb to set the accept callback + * @param accept callback function to call for this pcb when LISTENing + * connection has been connected to another host + */ +void +tcp_accept(struct tcp_pcb *pcb, + err_t (* accept)(void *arg, struct tcp_pcb *newpcb, err_t err)) +{ + pcb->accept = accept; +} +#endif /* LWIP_CALLBACK_API */ + + +/** + * Used to specify the function that should be called periodically + * from TCP. The interval is specified in terms of the TCP coarse + * timer interval, which is called twice a second. + * + */ +void +tcp_poll(struct tcp_pcb *pcb, + err_t (* poll)(void *arg, struct tcp_pcb *tpcb), u8_t interval) +{ +#if LWIP_CALLBACK_API + pcb->poll = poll; +#endif /* LWIP_CALLBACK_API */ + pcb->pollinterval = interval; +} + +/** + * Purges a TCP PCB. Removes any buffered data and frees the buffer memory + * (pcb->ooseq, pcb->unsent and pcb->unacked are freed). + * + * @param pcb tcp_pcb to purge. The pcb itself is not deallocated! + */ +void +tcp_pcb_purge(struct tcp_pcb *pcb) +{ + if (pcb->state != CLOSED && + pcb->state != TIME_WAIT && + pcb->state != LISTEN) { + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_pcb_purge\n")); + +#if TCP_LISTEN_BACKLOG + if (pcb->state == SYN_RCVD) { + /* Need to find the corresponding listen_pcb and decrease its accepts_pending */ + struct tcp_pcb_listen *lpcb; + LWIP_ASSERT("tcp_pcb_purge: pcb->state == SYN_RCVD but tcp_listen_pcbs is NULL", + tcp_listen_pcbs.listen_pcbs != NULL); + for (lpcb = tcp_listen_pcbs.listen_pcbs; lpcb != NULL; lpcb = lpcb->next) { + if ((lpcb->local_port == pcb->local_port) && + (ip_addr_isany(&lpcb->local_ip) || + ip_addr_cmp(&pcb->local_ip, &lpcb->local_ip))) { + /* port and address of the listen pcb match the timed-out pcb */ + LWIP_ASSERT("tcp_pcb_purge: listen pcb does not have accepts pending", + lpcb->accepts_pending > 0); + lpcb->accepts_pending--; + break; + } + } + } +#endif /* TCP_LISTEN_BACKLOG */ + + + if (pcb->refused_data != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_pcb_purge: data left on ->refused_data\n")); + pbuf_free(pcb->refused_data); + pcb->refused_data = NULL; + } + if (pcb->unsent != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_pcb_purge: not all data sent\n")); + } + if (pcb->unacked != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_pcb_purge: data left on ->unacked\n")); + } +#if TCP_QUEUE_OOSEQ /* LW */ + if (pcb->ooseq != NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_pcb_purge: data left on ->ooseq\n")); + } + + /* Stop the retransmission timer as it will expect data on unacked + queue if it fires */ + pcb->rtime = -1; + + tcp_segs_free(pcb->ooseq); + pcb->ooseq = NULL; +#endif /* TCP_QUEUE_OOSEQ */ + tcp_segs_free(pcb->unsent); + tcp_segs_free(pcb->unacked); + pcb->unacked = pcb->unsent = NULL; + } +} + +/** + * Purges the PCB and removes it from a PCB list. Any delayed ACKs are sent first. + * + * @param pcblist PCB list to purge. + * @param pcb tcp_pcb to purge. The pcb itself is NOT deallocated! + */ +void +tcp_pcb_remove(struct tcp_pcb **pcblist, struct tcp_pcb *pcb) +{ + TCP_RMV(pcblist, pcb); + + tcp_pcb_purge(pcb); + + /* if there is an outstanding delayed ACKs, send it */ + if (pcb->state != TIME_WAIT && + pcb->state != LISTEN && + pcb->flags & TF_ACK_DELAY) { + pcb->flags |= TF_ACK_NOW; + tcp_output(pcb); + } + + if (pcb->state != LISTEN) { + LWIP_ASSERT("unsent segments leaking", pcb->unsent == NULL); + LWIP_ASSERT("unacked segments leaking", pcb->unacked == NULL); +#if TCP_QUEUE_OOSEQ + LWIP_ASSERT("ooseq segments leaking", pcb->ooseq == NULL); +#endif /* TCP_QUEUE_OOSEQ */ + } + + pcb->state = CLOSED; + + LWIP_ASSERT("tcp_pcb_remove: tcp_pcbs_sane()", tcp_pcbs_sane()); +} + +/** + * Calculates a new initial sequence number for new connections. + * + * @return u32_t pseudo random sequence number + */ +u32_t +tcp_next_iss(void) +{ + static u32_t iss = 6510; + + iss += tcp_ticks; /* XXX */ + return iss; +} + +#if TCP_CALCULATE_EFF_SEND_MSS +/** + * Calcluates the effective send mss that can be used for a specific IP address + * by using ip_route to determin the netif used to send to the address and + * calculating the minimum of TCP_MSS and that netif's mtu (if set). + */ +u16_t +tcp_eff_send_mss(u16_t sendmss, struct ip_addr *addr) +{ + u16_t mss_s; + struct netif *outif; + + outif = ip_route(addr); + if ((outif != NULL) && (outif->mtu != 0)) { + mss_s = outif->mtu - IP_HLEN - TCP_HLEN; + /* RFC 1122, chap 4.2.2.6: + * Eff.snd.MSS = min(SendMSS+20, MMS_S) - TCPhdrsize - IPoptionsize + * We correct for TCP options in tcp_enqueue(), and don't support + * IP options + */ + sendmss = LWIP_MIN(sendmss, mss_s); + } + return sendmss; +} +#endif /* TCP_CALCULATE_EFF_SEND_MSS */ + +const char* +tcp_debug_state_str(enum tcp_state s) +{ + return tcp_state_str[s]; +} + +#if TCP_DEBUG || TCP_INPUT_DEBUG || TCP_OUTPUT_DEBUG +/** + * Print a tcp header for debugging purposes. + * + * @param tcphdr pointer to a struct tcp_hdr + */ +void +tcp_debug_print(struct tcp_hdr *tcphdr) +{ + LWIP_DEBUGF(TCP_DEBUG, ("TCP header:\n")); + LWIP_DEBUGF(TCP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(TCP_DEBUG, ("| %5"U16_F" | %5"U16_F" | (src port, dest port)\n", + ntohs(tcphdr->src), ntohs(tcphdr->dest))); + LWIP_DEBUGF(TCP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(TCP_DEBUG, ("| %010"U32_F" | (seq no)\n", + ntohl(tcphdr->seqno))); + LWIP_DEBUGF(TCP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(TCP_DEBUG, ("| %010"U32_F" | (ack no)\n", + ntohl(tcphdr->ackno))); + LWIP_DEBUGF(TCP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(TCP_DEBUG, ("| %2"U16_F" | |%"U16_F"%"U16_F"%"U16_F"%"U16_F"%"U16_F"%"U16_F"| %5"U16_F" | (hdrlen, flags (", + TCPH_HDRLEN(tcphdr), + TCPH_FLAGS(tcphdr) >> 5 & 1, + TCPH_FLAGS(tcphdr) >> 4 & 1, + TCPH_FLAGS(tcphdr) >> 3 & 1, + TCPH_FLAGS(tcphdr) >> 2 & 1, + TCPH_FLAGS(tcphdr) >> 1 & 1, + TCPH_FLAGS(tcphdr) & 1, + ntohs(tcphdr->wnd))); + tcp_debug_print_flags(TCPH_FLAGS(tcphdr)); + LWIP_DEBUGF(TCP_DEBUG, ("), win)\n")); + LWIP_DEBUGF(TCP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(TCP_DEBUG, ("| 0x%04"X16_F" | %5"U16_F" | (chksum, urgp)\n", + ntohs(tcphdr->chksum), ntohs(tcphdr->urgp))); + LWIP_DEBUGF(TCP_DEBUG, ("+-------------------------------+\n")); +} + +/** + * Print a tcp state for debugging purposes. + * + * @param s enum tcp_state to print + */ +void +tcp_debug_print_state(enum tcp_state s) +{ + LWIP_DEBUGF(TCP_DEBUG, ("State: %s\n", tcp_state_str[s])); +} + +/** + * Print tcp flags for debugging purposes. + * + * @param flags tcp flags, all active flags are printed + */ +void +tcp_debug_print_flags(u8_t flags) +{ + if (flags & TCP_FIN) { + LWIP_DEBUGF(TCP_DEBUG, ("FIN ")); + } + if (flags & TCP_SYN) { + LWIP_DEBUGF(TCP_DEBUG, ("SYN ")); + } + if (flags & TCP_RST) { + LWIP_DEBUGF(TCP_DEBUG, ("RST ")); + } + if (flags & TCP_PSH) { + LWIP_DEBUGF(TCP_DEBUG, ("PSH ")); + } + if (flags & TCP_ACK) { + LWIP_DEBUGF(TCP_DEBUG, ("ACK ")); + } + if (flags & TCP_URG) { + LWIP_DEBUGF(TCP_DEBUG, ("URG ")); + } + if (flags & TCP_ECE) { + LWIP_DEBUGF(TCP_DEBUG, ("ECE ")); + } + if (flags & TCP_CWR) { + LWIP_DEBUGF(TCP_DEBUG, ("CWR ")); + } + LWIP_DEBUGF(TCP_DEBUG, ("\n")); +} + +/** + * Print all tcp_pcbs in every list for debugging purposes. + */ +void +tcp_debug_print_pcbs(void) +{ + struct tcp_pcb *pcb; + LWIP_DEBUGF(TCP_DEBUG, ("Active PCB states:\n")); + for(pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_DEBUGF(TCP_DEBUG, ("[%p]Local port %"U16_F", foreign port %"U16_F" snd_nxt %"U32_F" rcv_nxt %"U32_F" ", + pcb, pcb->local_port, pcb->remote_port, + pcb->snd_nxt, pcb->rcv_nxt)); + tcp_debug_print_state(pcb->state); + } + LWIP_DEBUGF(TCP_DEBUG, ("Listen PCB states:\n")); + for(pcb = (struct tcp_pcb *)tcp_listen_pcbs.pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_DEBUGF(TCP_DEBUG, ("[%p]Local port %"U16_F", foreign port %"U16_F" snd_nxt %"U32_F" rcv_nxt %"U32_F" ", + pcb, pcb->local_port, pcb->remote_port, + pcb->snd_nxt, pcb->rcv_nxt)); + tcp_debug_print_state(pcb->state); + } + LWIP_DEBUGF(TCP_DEBUG, ("TIME-WAIT PCB states:\n")); + for(pcb = tcp_tw_pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_DEBUGF(TCP_DEBUG, ("[%p]Local port %"U16_F", foreign port %"U16_F" snd_nxt %"U32_F" rcv_nxt %"U32_F" ", + pcb, pcb->local_port, pcb->remote_port, + pcb->snd_nxt, pcb->rcv_nxt)); + tcp_debug_print_state(pcb->state); + } +} + +/** + * Check state consistency of the tcp_pcb lists. + */ +s16_t +tcp_pcbs_sane(void) +{ + struct tcp_pcb *pcb; + for(pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_ASSERT("tcp_pcbs_sane: active pcb->state != CLOSED", pcb->state != CLOSED); + LWIP_ASSERT("tcp_pcbs_sane: active pcb->state != LISTEN", pcb->state != LISTEN); + LWIP_ASSERT("tcp_pcbs_sane: active pcb->state != TIME-WAIT", pcb->state != TIME_WAIT); + } + for(pcb = tcp_tw_pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_ASSERT("tcp_pcbs_sane: tw pcb->state == TIME-WAIT", pcb->state == TIME_WAIT); + } + return 1; +} +#endif /* TCP_DEBUG */ + +#endif /* LWIP_TCP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_in.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_in.c new file mode 100644 index 000000000..3930b40f6 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_in.c @@ -0,0 +1,1508 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Transmission Control Protocol, incoming traffic + * + * The input processing functions of the TCP layer. + * + * These functions are generally called in the order (ip_input() ->) + * tcp_input() -> * tcp_process() -> tcp_receive() (-> application). + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#if LWIP_TCP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/tcp.h" +#include "lwip/def.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/mem.h" +#include "lwip/memp.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/stats.h" +#include "lwip/snmp.h" +#include "arch/perf.h" + +/* These variables are global to all functions involved in the input + processing of TCP segments. They are set by the tcp_input() + function. */ +static struct tcp_seg inseg; +static struct tcp_hdr *tcphdr; +static struct ip_hdr *iphdr; +static u32_t seqno, ackno; +static u8_t flags; +static u16_t tcplen; + +static u8_t recv_flags; +static struct pbuf *recv_data; + +struct tcp_pcb *tcp_input_pcb; + +/* Forward declarations. */ +static err_t tcp_process(struct tcp_pcb *pcb); +static void tcp_receive(struct tcp_pcb *pcb); +static void tcp_parseopt(struct tcp_pcb *pcb); + +static err_t tcp_listen_input(struct tcp_pcb_listen *pcb); +static err_t tcp_timewait_input(struct tcp_pcb *pcb); + +/** + * The initial input processing of TCP. It verifies the TCP header, demultiplexes + * the segment between the PCBs and passes it on to tcp_process(), which implements + * the TCP finite state machine. This function is called by the IP layer (in + * ip_input()). + * + * @param p received TCP segment to process (p->payload pointing to the IP header) + * @param inp network interface on which this segment was received + */ +void +tcp_input(struct pbuf *p, struct netif *inp) +{ + struct tcp_pcb *pcb, *prev; + struct tcp_pcb_listen *lpcb; + u8_t hdrlen; + err_t err; + + PERF_START; + + TCP_STATS_INC(tcp.recv); + snmp_inc_tcpinsegs(); + + iphdr = p->payload; + tcphdr = (struct tcp_hdr *)((u8_t *)p->payload + IPH_HL(iphdr) * 4); + +#if TCP_INPUT_DEBUG + tcp_debug_print(tcphdr); +#endif + + /* remove header from payload */ + if (pbuf_header(p, -((s16_t)(IPH_HL(iphdr) * 4))) || (p->tot_len < sizeof(struct tcp_hdr))) { + /* drop short packets */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: short packet (%"U16_F" bytes) discarded\n", p->tot_len)); + TCP_STATS_INC(tcp.lenerr); + TCP_STATS_INC(tcp.drop); + snmp_inc_tcpinerrs(); + pbuf_free(p); + return; + } + + /* Don't even process incoming broadcasts/multicasts. */ + if (ip_addr_isbroadcast(&(iphdr->dest), inp) || + ip_addr_ismulticast(&(iphdr->dest))) { + TCP_STATS_INC(tcp.proterr); + TCP_STATS_INC(tcp.drop); + snmp_inc_tcpinerrs(); + pbuf_free(p); + return; + } + +#if CHECKSUM_CHECK_TCP + /* Verify TCP checksum. */ + if (inet_chksum_pseudo(p, (struct ip_addr *)&(iphdr->src), + (struct ip_addr *)&(iphdr->dest), + IP_PROTO_TCP, p->tot_len) != 0) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: packet discarded due to failing checksum 0x%04"X16_F"\n", + inet_chksum_pseudo(p, (struct ip_addr *)&(iphdr->src), (struct ip_addr *)&(iphdr->dest), + IP_PROTO_TCP, p->tot_len))); +#if TCP_DEBUG + tcp_debug_print(tcphdr); +#endif /* TCP_DEBUG */ + TCP_STATS_INC(tcp.chkerr); + TCP_STATS_INC(tcp.drop); + snmp_inc_tcpinerrs(); + pbuf_free(p); + return; + } +#endif + + /* Move the payload pointer in the pbuf so that it points to the + TCP data instead of the TCP header. */ + hdrlen = TCPH_HDRLEN(tcphdr); + if(pbuf_header(p, -(hdrlen * 4))){ + /* drop short packets */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: short packet\n")); + TCP_STATS_INC(tcp.lenerr); + TCP_STATS_INC(tcp.drop); + snmp_inc_tcpinerrs(); + pbuf_free(p); + return; + } + + /* Convert fields in TCP header to host byte order. */ + tcphdr->src = ntohs(tcphdr->src); + tcphdr->dest = ntohs(tcphdr->dest); + seqno = tcphdr->seqno = ntohl(tcphdr->seqno); + ackno = tcphdr->ackno = ntohl(tcphdr->ackno); + tcphdr->wnd = ntohs(tcphdr->wnd); + + flags = TCPH_FLAGS(tcphdr); + tcplen = p->tot_len + ((flags & (TCP_FIN | TCP_SYN)) ? 1 : 0); + + /* Demultiplex an incoming segment. First, we check if it is destined + for an active connection. */ + prev = NULL; + + + for(pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_ASSERT("tcp_input: active pcb->state != CLOSED", pcb->state != CLOSED); + LWIP_ASSERT("tcp_input: active pcb->state != TIME-WAIT", pcb->state != TIME_WAIT); + LWIP_ASSERT("tcp_input: active pcb->state != LISTEN", pcb->state != LISTEN); + if (pcb->remote_port == tcphdr->src && + pcb->local_port == tcphdr->dest && + ip_addr_cmp(&(pcb->remote_ip), &(iphdr->src)) && + ip_addr_cmp(&(pcb->local_ip), &(iphdr->dest))) { + + /* Move this PCB to the front of the list so that subsequent + lookups will be faster (we exploit locality in TCP segment + arrivals). */ + LWIP_ASSERT("tcp_input: pcb->next != pcb (before cache)", pcb->next != pcb); + if (prev != NULL) { + prev->next = pcb->next; + pcb->next = tcp_active_pcbs; + tcp_active_pcbs = pcb; + } + LWIP_ASSERT("tcp_input: pcb->next != pcb (after cache)", pcb->next != pcb); + break; + } + prev = pcb; + } + + if (pcb == NULL) { + /* If it did not go to an active connection, we check the connections + in the TIME-WAIT state. */ + for(pcb = tcp_tw_pcbs; pcb != NULL; pcb = pcb->next) { + LWIP_ASSERT("tcp_input: TIME-WAIT pcb->state == TIME-WAIT", pcb->state == TIME_WAIT); + if (pcb->remote_port == tcphdr->src && + pcb->local_port == tcphdr->dest && + ip_addr_cmp(&(pcb->remote_ip), &(iphdr->src)) && + ip_addr_cmp(&(pcb->local_ip), &(iphdr->dest))) { + /* We don't really care enough to move this PCB to the front + of the list since we are not very likely to receive that + many segments for connections in TIME-WAIT. */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: packed for TIME_WAITing connection.\n")); + tcp_timewait_input(pcb); + pbuf_free(p); + return; + } + } + + /* Finally, if we still did not get a match, we check all PCBs that + are LISTENing for incoming connections. */ + prev = NULL; + for(lpcb = tcp_listen_pcbs.listen_pcbs; lpcb != NULL; lpcb = lpcb->next) { + if ((ip_addr_isany(&(lpcb->local_ip)) || + ip_addr_cmp(&(lpcb->local_ip), &(iphdr->dest))) && + lpcb->local_port == tcphdr->dest) { + /* Move this PCB to the front of the list so that subsequent + lookups will be faster (we exploit locality in TCP segment + arrivals). */ + if (prev != NULL) { + ((struct tcp_pcb_listen *)prev)->next = lpcb->next; + /* our successor is the remainder of the listening list */ + lpcb->next = tcp_listen_pcbs.listen_pcbs; + /* put this listening pcb at the head of the listening list */ + tcp_listen_pcbs.listen_pcbs = lpcb; + } + + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: packed for LISTENing connection.\n")); + tcp_listen_input(lpcb); + pbuf_free(p); + return; + } + prev = (struct tcp_pcb *)lpcb; + } + } + +#if TCP_INPUT_DEBUG + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("+-+-+-+-+-+-+-+-+-+-+-+-+-+- tcp_input: flags ")); + tcp_debug_print_flags(TCPH_FLAGS(tcphdr)); + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n")); +#endif /* TCP_INPUT_DEBUG */ + + + if (pcb != NULL) { + /* The incoming segment belongs to a connection. */ +#if TCP_INPUT_DEBUG +#if TCP_DEBUG + tcp_debug_print_state(pcb->state); +#endif /* TCP_DEBUG */ +#endif /* TCP_INPUT_DEBUG */ + + /* Set up a tcp_seg structure. */ + inseg.next = NULL; + inseg.len = p->tot_len; + inseg.dataptr = p->payload; + inseg.p = p; + inseg.tcphdr = tcphdr; + + recv_data = NULL; + recv_flags = 0; + + /* If there is data which was previously "refused" by upper layer */ + if (pcb->refused_data != NULL) { + /* Notify again application with data previously received. */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: notify kept packet\n")); + TCP_EVENT_RECV(pcb, pcb->refused_data, ERR_OK, err); + if (err == ERR_OK) { + pcb->refused_data = NULL; + } else { + /* drop incoming packets, because pcb is "full" */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: drop incoming packets, because pcb is \"full\"\n")); + TCP_STATS_INC(tcp.drop); + snmp_inc_tcpinerrs(); + pbuf_free(p); + return; + } + } + tcp_input_pcb = pcb; + err = tcp_process(pcb); + /* A return value of ERR_ABRT means that tcp_abort() was called + and that the pcb has been freed. If so, we don't do anything. */ + if (err != ERR_ABRT) { + if (recv_flags & TF_RESET) { + /* TF_RESET means that the connection was reset by the other + end. We then call the error callback to inform the + application that the connection is dead before we + deallocate the PCB. */ + TCP_EVENT_ERR(pcb->errf, pcb->callback_arg, ERR_RST); + tcp_pcb_remove(&tcp_active_pcbs, pcb); + memp_free(MEMP_TCP_PCB, pcb); + } else if (recv_flags & TF_CLOSED) { + /* The connection has been closed and we will deallocate the + PCB. */ + tcp_pcb_remove(&tcp_active_pcbs, pcb); + memp_free(MEMP_TCP_PCB, pcb); + } else { + err = ERR_OK; + /* If the application has registered a "sent" function to be + called when new send buffer space is available, we call it + now. */ + if (pcb->acked > 0) { + TCP_EVENT_SENT(pcb, pcb->acked, err); + } + + if (recv_data != NULL) { + if(flags & TCP_PSH) { + recv_data->flags |= PBUF_FLAG_PUSH; + } + + /* Notify application that data has been received. */ + TCP_EVENT_RECV(pcb, recv_data, ERR_OK, err); + + /* If the upper layer can't receive this data, store it */ + if (err != ERR_OK) { + pcb->refused_data = recv_data; + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_input: keep incoming packet, because pcb is \"full\"\n")); + } + } + + /* If a FIN segment was received, we call the callback + function with a NULL buffer to indicate EOF. */ + if (recv_flags & TF_GOT_FIN) { + TCP_EVENT_RECV(pcb, NULL, ERR_OK, err); + } + + tcp_input_pcb = NULL; + /* Try to send something out. */ + tcp_output(pcb); +#if TCP_INPUT_DEBUG +#if TCP_DEBUG + tcp_debug_print_state(pcb->state); +#endif /* TCP_DEBUG */ +#endif /* TCP_INPUT_DEBUG */ + } + } + tcp_input_pcb = NULL; + + + /* give up our reference to inseg.p */ + if (inseg.p != NULL) + { + pbuf_free(inseg.p); + inseg.p = NULL; + } + } else { + + /* If no matching PCB was found, send a TCP RST (reset) to the + sender. */ + LWIP_DEBUGF(TCP_RST_DEBUG, ("tcp_input: no PCB match found, resetting.\n")); + if (!(TCPH_FLAGS(tcphdr) & TCP_RST)) { + TCP_STATS_INC(tcp.proterr); + TCP_STATS_INC(tcp.drop); + tcp_rst(ackno, seqno + tcplen, + &(iphdr->dest), &(iphdr->src), + tcphdr->dest, tcphdr->src); + } + pbuf_free(p); + } + + LWIP_ASSERT("tcp_input: tcp_pcbs_sane()", tcp_pcbs_sane()); + PERF_STOP("tcp_input"); +} + +/** + * Called by tcp_input() when a segment arrives for a listening + * connection (from tcp_input()). + * + * @param pcb the tcp_pcb_listen for which a segment arrived + * @return ERR_OK if the segment was processed + * another err_t on error + * + * @note the return value is not (yet?) used in tcp_input() + * @note the segment which arrived is saved in global variables, therefore only the pcb + * involved is passed as a parameter to this function + */ +static err_t +tcp_listen_input(struct tcp_pcb_listen *pcb) +{ + struct tcp_pcb *npcb; + err_t rc; + + /* In the LISTEN state, we check for incoming SYN segments, + creates a new PCB, and responds with a SYN|ACK. */ + if (flags & TCP_ACK) { + /* For incoming segments with the ACK flag set, respond with a + RST. */ + LWIP_DEBUGF(TCP_RST_DEBUG, ("tcp_listen_input: ACK in LISTEN, sending reset\n")); + tcp_rst(ackno + 1, seqno + tcplen, + &(iphdr->dest), &(iphdr->src), + tcphdr->dest, tcphdr->src); + } else if (flags & TCP_SYN) { + LWIP_DEBUGF(TCP_DEBUG, ("TCP connection request %"U16_F" -> %"U16_F".\n", tcphdr->src, tcphdr->dest)); +#if TCP_LISTEN_BACKLOG + if (pcb->accepts_pending >= pcb->backlog) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_listen_input: listen backlog exceeded for port %"U16_F"\n", tcphdr->dest)); + return ERR_ABRT; + } +#endif /* TCP_LISTEN_BACKLOG */ + npcb = tcp_alloc(pcb->prio); + /* If a new PCB could not be created (probably due to lack of memory), + we don't do anything, but rely on the sender will retransmit the + SYN at a time when we have more memory available. */ + if (npcb == NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_listen_input: could not allocate PCB\n")); + TCP_STATS_INC(tcp.memerr); + return ERR_MEM; + } +#if TCP_LISTEN_BACKLOG + pcb->accepts_pending++; +#endif /* TCP_LISTEN_BACKLOG */ + /* Set up the new PCB. */ + ip_addr_set(&(npcb->local_ip), &(iphdr->dest)); + npcb->local_port = pcb->local_port; + ip_addr_set(&(npcb->remote_ip), &(iphdr->src)); + npcb->remote_port = tcphdr->src; + npcb->state = SYN_RCVD; + npcb->rcv_nxt = seqno + 1; + npcb->rcv_ann_right_edge = npcb->rcv_nxt; + npcb->snd_wnd = tcphdr->wnd; + npcb->ssthresh = npcb->snd_wnd; + npcb->snd_wl1 = seqno - 1;/* initialise to seqno-1 to force window update */ + npcb->callback_arg = pcb->callback_arg; +#if LWIP_CALLBACK_API + npcb->accept = pcb->accept; +#endif /* LWIP_CALLBACK_API */ + /* inherit socket options */ + npcb->so_options = pcb->so_options & (SOF_DEBUG|SOF_DONTROUTE|SOF_KEEPALIVE|SOF_OOBINLINE|SOF_LINGER); + /* Register the new PCB so that we can begin receiving segments + for it. */ + TCP_REG(&tcp_active_pcbs, npcb); + + /* Parse any options in the SYN. */ + tcp_parseopt(npcb); +#if TCP_CALCULATE_EFF_SEND_MSS + npcb->mss = tcp_eff_send_mss(npcb->mss, &(npcb->remote_ip)); +#endif /* TCP_CALCULATE_EFF_SEND_MSS */ + + snmp_inc_tcppassiveopens(); + + /* Send a SYN|ACK together with the MSS option. */ + rc = tcp_enqueue(npcb, NULL, 0, TCP_SYN | TCP_ACK, 0, TF_SEG_OPTS_MSS +#if LWIP_TCP_TIMESTAMPS + /* and maybe include the TIMESTAMP option */ + | (npcb->flags & TF_TIMESTAMP ? TF_SEG_OPTS_TS : 0) +#endif + ); + if (rc != ERR_OK) { + tcp_abandon(npcb, 0); + return rc; + } + return tcp_output(npcb); + } + return ERR_OK; +} + +/** + * Called by tcp_input() when a segment arrives for a connection in + * TIME_WAIT. + * + * @param pcb the tcp_pcb for which a segment arrived + * + * @note the segment which arrived is saved in global variables, therefore only the pcb + * involved is passed as a parameter to this function + */ +static err_t +tcp_timewait_input(struct tcp_pcb *pcb) +{ + /* RFC 1337: in TIME_WAIT, ignore RST and ACK FINs + any 'acceptable' segments */ + /* RFC 793 3.9 Event Processing - Segment Arrives: + * - first check sequence number - we skip that one in TIME_WAIT (always + * acceptable since we only send ACKs) + * - second check the RST bit (... return) */ + if (flags & TCP_RST) { + return ERR_OK; + } + /* - fourth, check the SYN bit, */ + if (flags & TCP_SYN) { + /* If an incoming segment is not acceptable, an acknowledgment + should be sent in reply */ + if (TCP_SEQ_BETWEEN(seqno, pcb->rcv_nxt, pcb->rcv_nxt+pcb->rcv_wnd)) { + /* If the SYN is in the window it is an error, send a reset */ + tcp_rst(ackno, seqno + tcplen, &(iphdr->dest), &(iphdr->src), + tcphdr->dest, tcphdr->src); + return ERR_OK; + } + } else if (flags & TCP_FIN) { + /* - eighth, check the FIN bit: Remain in the TIME-WAIT state. + Restart the 2 MSL time-wait timeout.*/ + pcb->tmr = tcp_ticks; + } + + if ((tcplen > 0)) { + /* Acknowledge data, FIN or out-of-window SYN */ + pcb->flags |= TF_ACK_NOW; + return tcp_output(pcb); + } + return ERR_OK; +} + +/** + * Implements the TCP state machine. Called by tcp_input. In some + * states tcp_receive() is called to receive data. The tcp_seg + * argument will be freed by the caller (tcp_input()) unless the + * recv_data pointer in the pcb is set. + * + * @param pcb the tcp_pcb for which a segment arrived + * + * @note the segment which arrived is saved in global variables, therefore only the pcb + * involved is passed as a parameter to this function + */ +static err_t +tcp_process(struct tcp_pcb *pcb) +{ + struct tcp_seg *rseg; + u8_t acceptable = 0; + err_t err; + + err = ERR_OK; + + /* Process incoming RST segments. */ + if (flags & TCP_RST) { + /* First, determine if the reset is acceptable. */ + if (pcb->state == SYN_SENT) { + if (ackno == pcb->snd_nxt) { + acceptable = 1; + } + } else { + if (TCP_SEQ_BETWEEN(seqno, pcb->rcv_nxt, + pcb->rcv_nxt+pcb->rcv_wnd)) { + acceptable = 1; + } + } + + if (acceptable) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_process: Connection RESET\n")); + LWIP_ASSERT("tcp_input: pcb->state != CLOSED", pcb->state != CLOSED); + recv_flags |= TF_RESET; + pcb->flags &= ~TF_ACK_DELAY; + return ERR_RST; + } else { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_process: unacceptable reset seqno %"U32_F" rcv_nxt %"U32_F"\n", + seqno, pcb->rcv_nxt)); + LWIP_DEBUGF(TCP_DEBUG, ("tcp_process: unacceptable reset seqno %"U32_F" rcv_nxt %"U32_F"\n", + seqno, pcb->rcv_nxt)); + return ERR_OK; + } + } + + if ((flags & TCP_SYN) && (pcb->state != SYN_SENT && pcb->state != SYN_RCVD)) { + /* Cope with new connection attempt after remote end crashed */ + tcp_ack_now(pcb); + return ERR_OK; + } + + /* Update the PCB (in)activity timer. */ + pcb->tmr = tcp_ticks; + pcb->keep_cnt_sent = 0; + + tcp_parseopt(pcb); + + /* Do different things depending on the TCP state. */ + switch (pcb->state) { + case SYN_SENT: + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("SYN-SENT: ackno %"U32_F" pcb->snd_nxt %"U32_F" unacked %"U32_F"\n", ackno, + pcb->snd_nxt, ntohl(pcb->unacked->tcphdr->seqno))); + /* received SYN ACK with expected sequence number? */ + if ((flags & TCP_ACK) && (flags & TCP_SYN) + && ackno == ntohl(pcb->unacked->tcphdr->seqno) + 1) { + pcb->snd_buf++; + pcb->rcv_nxt = seqno + 1; + pcb->rcv_ann_right_edge = pcb->rcv_nxt; + pcb->lastack = ackno; + pcb->snd_wnd = tcphdr->wnd; + pcb->snd_wl1 = seqno - 1; /* initialise to seqno - 1 to force window update */ + pcb->state = ESTABLISHED; + +#if TCP_CALCULATE_EFF_SEND_MSS + pcb->mss = tcp_eff_send_mss(pcb->mss, &(pcb->remote_ip)); +#endif /* TCP_CALCULATE_EFF_SEND_MSS */ + + /* Set ssthresh again after changing pcb->mss (already set in tcp_connect + * but for the default value of pcb->mss) */ + pcb->ssthresh = pcb->mss * 10; + + pcb->cwnd = ((pcb->cwnd == 1) ? (pcb->mss * 2) : pcb->mss); + LWIP_ASSERT("pcb->snd_queuelen > 0", (pcb->snd_queuelen > 0)); + --pcb->snd_queuelen; + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("tcp_process: SYN-SENT --queuelen %"U16_F"\n", (u16_t)pcb->snd_queuelen)); + rseg = pcb->unacked; + pcb->unacked = rseg->next; + + /* If there's nothing left to acknowledge, stop the retransmit + timer, otherwise reset it to start again */ + if(pcb->unacked == NULL) + pcb->rtime = -1; + else { + pcb->rtime = 0; + pcb->nrtx = 0; + } + + tcp_seg_free(rseg); + + /* Call the user specified function to call when sucessfully + * connected. */ + TCP_EVENT_CONNECTED(pcb, ERR_OK, err); + tcp_ack_now(pcb); + } + /* received ACK? possibly a half-open connection */ + else if (flags & TCP_ACK) { + /* send a RST to bring the other side in a non-synchronized state. */ + tcp_rst(ackno, seqno + tcplen, &(iphdr->dest), &(iphdr->src), + tcphdr->dest, tcphdr->src); + } + break; + case SYN_RCVD: + if (flags & TCP_ACK) { + /* expected ACK number? */ + if (TCP_SEQ_BETWEEN(ackno, pcb->lastack+1, pcb->snd_nxt)) { + u16_t old_cwnd; + pcb->state = ESTABLISHED; + LWIP_DEBUGF(TCP_DEBUG, ("TCP connection established %"U16_F" -> %"U16_F".\n", inseg.tcphdr->src, inseg.tcphdr->dest)); +#if LWIP_CALLBACK_API + LWIP_ASSERT("pcb->accept != NULL", pcb->accept != NULL); +#endif + /* Call the accept function. */ + TCP_EVENT_ACCEPT(pcb, ERR_OK, err); + if (err != ERR_OK) { + /* If the accept function returns with an error, we abort + * the connection. */ + tcp_abort(pcb); + return ERR_ABRT; + } + old_cwnd = pcb->cwnd; + /* If there was any data contained within this ACK, + * we'd better pass it on to the application as well. */ + tcp_receive(pcb); + + /* Prevent ACK for SYN to generate a sent event */ + if (pcb->acked != 0) { + pcb->acked--; + } + + pcb->cwnd = ((old_cwnd == 1) ? (pcb->mss * 2) : pcb->mss); + + if (recv_flags & TF_GOT_FIN) { + tcp_ack_now(pcb); + pcb->state = CLOSE_WAIT; + } + } + /* incorrect ACK number */ + else { + /* send RST */ + tcp_rst(ackno, seqno + tcplen, &(iphdr->dest), &(iphdr->src), + tcphdr->dest, tcphdr->src); + } + } else if ((flags & TCP_SYN) && (seqno == pcb->rcv_nxt - 1)) { + /* Looks like another copy of the SYN - retransmit our SYN-ACK */ + tcp_rexmit(pcb); + } + break; + case CLOSE_WAIT: + /* FALLTHROUGH */ + case ESTABLISHED: + tcp_receive(pcb); + if (recv_flags & TF_GOT_FIN) { /* passive close */ + tcp_ack_now(pcb); + pcb->state = CLOSE_WAIT; + } + break; + case FIN_WAIT_1: + tcp_receive(pcb); + if (recv_flags & TF_GOT_FIN) { + if ((flags & TCP_ACK) && (ackno == pcb->snd_nxt)) { + LWIP_DEBUGF(TCP_DEBUG, + ("TCP connection closed: FIN_WAIT_1 %"U16_F" -> %"U16_F".\n", inseg.tcphdr->src, inseg.tcphdr->dest)); + tcp_ack_now(pcb); + tcp_pcb_purge(pcb); + TCP_RMV(&tcp_active_pcbs, pcb); + pcb->state = TIME_WAIT; + TCP_REG(&tcp_tw_pcbs, pcb); + } else { + tcp_ack_now(pcb); + pcb->state = CLOSING; + } + } else if ((flags & TCP_ACK) && (ackno == pcb->snd_nxt)) { + pcb->state = FIN_WAIT_2; + } + break; + case FIN_WAIT_2: + tcp_receive(pcb); + if (recv_flags & TF_GOT_FIN) { + LWIP_DEBUGF(TCP_DEBUG, ("TCP connection closed: FIN_WAIT_2 %"U16_F" -> %"U16_F".\n", inseg.tcphdr->src, inseg.tcphdr->dest)); + tcp_ack_now(pcb); + tcp_pcb_purge(pcb); + TCP_RMV(&tcp_active_pcbs, pcb); + pcb->state = TIME_WAIT; + TCP_REG(&tcp_tw_pcbs, pcb); + } + break; + case CLOSING: + tcp_receive(pcb); + if (flags & TCP_ACK && ackno == pcb->snd_nxt) { + LWIP_DEBUGF(TCP_DEBUG, ("TCP connection closed: CLOSING %"U16_F" -> %"U16_F".\n", inseg.tcphdr->src, inseg.tcphdr->dest)); + tcp_pcb_purge(pcb); + TCP_RMV(&tcp_active_pcbs, pcb); + pcb->state = TIME_WAIT; + TCP_REG(&tcp_tw_pcbs, pcb); + } + break; + case LAST_ACK: + tcp_receive(pcb); + if (flags & TCP_ACK && ackno == pcb->snd_nxt) { + LWIP_DEBUGF(TCP_DEBUG, ("TCP connection closed: LAST_ACK %"U16_F" -> %"U16_F".\n", inseg.tcphdr->src, inseg.tcphdr->dest)); + /* bugfix #21699: don't set pcb->state to CLOSED here or we risk leaking segments */ + recv_flags |= TF_CLOSED; + } + break; + default: + break; + } + return ERR_OK; +} + +#if TCP_QUEUE_OOSEQ +/** + * Insert segment into the list (segments covered with new one will be deleted) + * + * Called from tcp_receive() + */ +static void +tcp_oos_insert_segment(struct tcp_seg *cseg, struct tcp_seg *next) +{ + struct tcp_seg *old_seg; + + if (TCPH_FLAGS(cseg->tcphdr) & TCP_FIN) { + /* received segment overlaps all following segments */ + tcp_segs_free(next); + next = NULL; + } + else { + /* delete some following segments + oos queue may have segments with FIN flag */ + while (next && + TCP_SEQ_GEQ((seqno + cseg->len), + (next->tcphdr->seqno + next->len))) { + /* cseg with FIN already processed */ + if (TCPH_FLAGS(next->tcphdr) & TCP_FIN) { + TCPH_FLAGS_SET(cseg->tcphdr, TCPH_FLAGS(cseg->tcphdr) | TCP_FIN); + } + old_seg = next; + next = next->next; + tcp_seg_free(old_seg); + } + if (next && + TCP_SEQ_GT(seqno + cseg->len, next->tcphdr->seqno)) { + /* We need to trim the incoming segment. */ + cseg->len = (u16_t)(next->tcphdr->seqno - seqno); + pbuf_realloc(cseg->p, cseg->len); + } + } + cseg->next = next; +} +#endif + +/** + * Called by tcp_process. Checks if the given segment is an ACK for outstanding + * data, and if so frees the memory of the buffered data. Next, is places the + * segment on any of the receive queues (pcb->recved or pcb->ooseq). If the segment + * is buffered, the pbuf is referenced by pbuf_ref so that it will not be freed until + * i it has been removed from the buffer. + * + * If the incoming segment constitutes an ACK for a segment that was used for RTT + * estimation, the RTT is estimated here as well. + * + * Called from tcp_process(). + */ +static void +tcp_receive(struct tcp_pcb *pcb) +{ + struct tcp_seg *next; +#if TCP_QUEUE_OOSEQ + struct tcp_seg *prev, *cseg; +#endif + struct pbuf *p; + s32_t off; + s16_t m; + u32_t right_wnd_edge; + u16_t new_tot_len; + int found_dupack = 0; + + if (flags & TCP_ACK) { + right_wnd_edge = pcb->snd_wnd + pcb->snd_wl2; + + /* Update window. */ + if (TCP_SEQ_LT(pcb->snd_wl1, seqno) || + (pcb->snd_wl1 == seqno && TCP_SEQ_LT(pcb->snd_wl2, ackno)) || + (pcb->snd_wl2 == ackno && tcphdr->wnd > pcb->snd_wnd)) { + pcb->snd_wnd = tcphdr->wnd; + pcb->snd_wl1 = seqno; + pcb->snd_wl2 = ackno; + if (pcb->snd_wnd > 0 && pcb->persist_backoff > 0) { + pcb->persist_backoff = 0; + } + LWIP_DEBUGF(TCP_WND_DEBUG, ("tcp_receive: window update %"U16_F"\n", pcb->snd_wnd)); +#if TCP_WND_DEBUG + } else { + if (pcb->snd_wnd != tcphdr->wnd) { + LWIP_DEBUGF(TCP_WND_DEBUG, + ("tcp_receive: no window update lastack %"U32_F" ackno %" + U32_F" wl1 %"U32_F" seqno %"U32_F" wl2 %"U32_F"\n", + pcb->lastack, ackno, pcb->snd_wl1, seqno, pcb->snd_wl2)); + } +#endif /* TCP_WND_DEBUG */ + } + + /* (From Stevens TCP/IP Illustrated Vol II, p970.) Its only a + * duplicate ack if: + * 1) It doesn't ACK new data + * 2) length of received packet is zero (i.e. no payload) + * 3) the advertised window hasn't changed + * 4) There is outstanding unacknowledged data (retransmission timer running) + * 5) The ACK is == biggest ACK sequence number so far seen (snd_una) + * + * If it passes all five, should process as a dupack: + * a) dupacks < 3: do nothing + * b) dupacks == 3: fast retransmit + * c) dupacks > 3: increase cwnd + * + * If it only passes 1-3, should reset dupack counter (and add to + * stats, which we don't do in lwIP) + * + * If it only passes 1, should reset dupack counter + * + */ + + /* Clause 1 */ + if (TCP_SEQ_LEQ(ackno, pcb->lastack)) { + pcb->acked = 0; + /* Clause 2 */ + if (tcplen == 0) { + /* Clause 3 */ + if (pcb->snd_wl2 + pcb->snd_wnd == right_wnd_edge){ + /* Clause 4 */ + if (pcb->rtime >= 0) { + /* Clause 5 */ + if (pcb->lastack == ackno) { + found_dupack = 1; + if (pcb->dupacks + 1 > pcb->dupacks) + ++pcb->dupacks; + if (pcb->dupacks > 3) { + /* Inflate the congestion window, but not if it means that + the value overflows. */ + if ((u16_t)(pcb->cwnd + pcb->mss) > pcb->cwnd) { + pcb->cwnd += pcb->mss; + } + } else if (pcb->dupacks == 3) { + /* Do fast retransmit */ + tcp_rexmit_fast(pcb); + } + } + } + } + } + /* If Clause (1) or more is true, but not a duplicate ack, reset + * count of consecutive duplicate acks */ + if (!found_dupack) { + pcb->dupacks = 0; + } + } else if (TCP_SEQ_BETWEEN(ackno, pcb->lastack+1, pcb->snd_nxt)){ + /* We come here when the ACK acknowledges new data. */ + + /* Reset the "IN Fast Retransmit" flag, since we are no longer + in fast retransmit. Also reset the congestion window to the + slow start threshold. */ + if (pcb->flags & TF_INFR) { + pcb->flags &= ~TF_INFR; + pcb->cwnd = pcb->ssthresh; + } + + /* Reset the number of retransmissions. */ + pcb->nrtx = 0; + + /* Reset the retransmission time-out. */ + pcb->rto = (pcb->sa >> 3) + pcb->sv; + + /* Update the send buffer space. Diff between the two can never exceed 64K? */ + pcb->acked = (u16_t)(ackno - pcb->lastack); + + pcb->snd_buf += pcb->acked; + + /* Reset the fast retransmit variables. */ + pcb->dupacks = 0; + pcb->lastack = ackno; + + /* Update the congestion control variables (cwnd and + ssthresh). */ + if (pcb->state >= ESTABLISHED) { + if (pcb->cwnd < pcb->ssthresh) { + if ((u16_t)(pcb->cwnd + pcb->mss) > pcb->cwnd) { + pcb->cwnd += pcb->mss; + } + LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_receive: slow start cwnd %"U16_F"\n", pcb->cwnd)); + } else { + u16_t new_cwnd = (pcb->cwnd + pcb->mss * pcb->mss / pcb->cwnd); + if (new_cwnd > pcb->cwnd) { + pcb->cwnd = new_cwnd; + } + LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_receive: congestion avoidance cwnd %"U16_F"\n", pcb->cwnd)); + } + } + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_receive: ACK for %"U32_F", unacked->seqno %"U32_F":%"U32_F"\n", + ackno, + pcb->unacked != NULL? + ntohl(pcb->unacked->tcphdr->seqno): 0, + pcb->unacked != NULL? + ntohl(pcb->unacked->tcphdr->seqno) + TCP_TCPLEN(pcb->unacked): 0)); + + /* Remove segment from the unacknowledged list if the incoming + ACK acknowlegdes them. */ + while (pcb->unacked != NULL && + TCP_SEQ_LEQ(ntohl(pcb->unacked->tcphdr->seqno) + + TCP_TCPLEN(pcb->unacked), ackno)) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_receive: removing %"U32_F":%"U32_F" from pcb->unacked\n", + ntohl(pcb->unacked->tcphdr->seqno), + ntohl(pcb->unacked->tcphdr->seqno) + + TCP_TCPLEN(pcb->unacked))); + + next = pcb->unacked; + pcb->unacked = pcb->unacked->next; + + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("tcp_receive: queuelen %"U16_F" ... ", (u16_t)pcb->snd_queuelen)); + LWIP_ASSERT("pcb->snd_queuelen >= pbuf_clen(next->p)", (pcb->snd_queuelen >= pbuf_clen(next->p))); + /* Prevent ACK for FIN to generate a sent event */ + if ((pcb->acked != 0) && ((TCPH_FLAGS(next->tcphdr) & TCP_FIN) != 0)) { + pcb->acked--; + } + + pcb->snd_queuelen -= pbuf_clen(next->p); + tcp_seg_free(next); + + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("%"U16_F" (after freeing unacked)\n", (u16_t)pcb->snd_queuelen)); + if (pcb->snd_queuelen != 0) { + LWIP_ASSERT("tcp_receive: valid queue length", pcb->unacked != NULL || + pcb->unsent != NULL); + } + } + + /* If there's nothing left to acknowledge, stop the retransmit + timer, otherwise reset it to start again */ + if(pcb->unacked == NULL) + pcb->rtime = -1; + else + pcb->rtime = 0; + + pcb->polltmr = 0; + } else { + /* Fix bug bug #21582: out of sequence ACK, didn't really ack anything */ + pcb->acked = 0; + } + + /* We go through the ->unsent list to see if any of the segments + on the list are acknowledged by the ACK. This may seem + strange since an "unsent" segment shouldn't be acked. The + rationale is that lwIP puts all outstanding segments on the + ->unsent list after a retransmission, so these segments may + in fact have been sent once. */ + while (pcb->unsent != NULL && + TCP_SEQ_BETWEEN(ackno, ntohl(pcb->unsent->tcphdr->seqno) + + TCP_TCPLEN(pcb->unsent), pcb->snd_nxt)) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_receive: removing %"U32_F":%"U32_F" from pcb->unsent\n", + ntohl(pcb->unsent->tcphdr->seqno), ntohl(pcb->unsent->tcphdr->seqno) + + TCP_TCPLEN(pcb->unsent))); + + next = pcb->unsent; + pcb->unsent = pcb->unsent->next; + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("tcp_receive: queuelen %"U16_F" ... ", (u16_t)pcb->snd_queuelen)); + LWIP_ASSERT("pcb->snd_queuelen >= pbuf_clen(next->p)", (pcb->snd_queuelen >= pbuf_clen(next->p))); + /* Prevent ACK for FIN to generate a sent event */ + if ((pcb->acked != 0) && ((TCPH_FLAGS(next->tcphdr) & TCP_FIN) != 0)) { + pcb->acked--; + } + pcb->snd_queuelen -= pbuf_clen(next->p); + tcp_seg_free(next); + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("%"U16_F" (after freeing unsent)\n", (u16_t)pcb->snd_queuelen)); + if (pcb->snd_queuelen != 0) { + LWIP_ASSERT("tcp_receive: valid queue length", + pcb->unacked != NULL || pcb->unsent != NULL); + } + } + /* End of ACK for new data processing. */ + + LWIP_DEBUGF(TCP_RTO_DEBUG, ("tcp_receive: pcb->rttest %"U32_F" rtseq %"U32_F" ackno %"U32_F"\n", + pcb->rttest, pcb->rtseq, ackno)); + + /* RTT estimation calculations. This is done by checking if the + incoming segment acknowledges the segment we use to take a + round-trip time measurement. */ + if (pcb->rttest && TCP_SEQ_LT(pcb->rtseq, ackno)) { + /* diff between this shouldn't exceed 32K since this are tcp timer ticks + and a round-trip shouldn't be that long... */ + m = (s16_t)(tcp_ticks - pcb->rttest); + + LWIP_DEBUGF(TCP_RTO_DEBUG, ("tcp_receive: experienced rtt %"U16_F" ticks (%"U16_F" msec).\n", + m, m * TCP_SLOW_INTERVAL)); + + /* This is taken directly from VJs original code in his paper */ + m = m - (pcb->sa >> 3); + pcb->sa += m; + if (m < 0) { + m = -m; + } + m = m - (pcb->sv >> 2); + pcb->sv += m; + pcb->rto = (pcb->sa >> 3) + pcb->sv; + + LWIP_DEBUGF(TCP_RTO_DEBUG, ("tcp_receive: RTO %"U16_F" (%"U16_F" milliseconds)\n", + pcb->rto, pcb->rto * TCP_SLOW_INTERVAL)); + + pcb->rttest = 0; + } + } + + /* If the incoming segment contains data, we must process it + further. */ + if (tcplen > 0) { + /* This code basically does three things: + + +) If the incoming segment contains data that is the next + in-sequence data, this data is passed to the application. This + might involve trimming the first edge of the data. The rcv_nxt + variable and the advertised window are adjusted. + + +) If the incoming segment has data that is above the next + sequence number expected (->rcv_nxt), the segment is placed on + the ->ooseq queue. This is done by finding the appropriate + place in the ->ooseq queue (which is ordered by sequence + number) and trim the segment in both ends if needed. An + immediate ACK is sent to indicate that we received an + out-of-sequence segment. + + +) Finally, we check if the first segment on the ->ooseq queue + now is in sequence (i.e., if rcv_nxt >= ooseq->seqno). If + rcv_nxt > ooseq->seqno, we must trim the first edge of the + segment on ->ooseq before we adjust rcv_nxt. The data in the + segments that are now on sequence are chained onto the + incoming segment so that we only need to call the application + once. + */ + + /* First, we check if we must trim the first edge. We have to do + this if the sequence number of the incoming segment is less + than rcv_nxt, and the sequence number plus the length of the + segment is larger than rcv_nxt. */ + /* if (TCP_SEQ_LT(seqno, pcb->rcv_nxt)){ + if (TCP_SEQ_LT(pcb->rcv_nxt, seqno + tcplen)) {*/ + if (TCP_SEQ_BETWEEN(pcb->rcv_nxt, seqno + 1, seqno + tcplen - 1)){ + /* Trimming the first edge is done by pushing the payload + pointer in the pbuf downwards. This is somewhat tricky since + we do not want to discard the full contents of the pbuf up to + the new starting point of the data since we have to keep the + TCP header which is present in the first pbuf in the chain. + + What is done is really quite a nasty hack: the first pbuf in + the pbuf chain is pointed to by inseg.p. Since we need to be + able to deallocate the whole pbuf, we cannot change this + inseg.p pointer to point to any of the later pbufs in the + chain. Instead, we point the ->payload pointer in the first + pbuf to data in one of the later pbufs. We also set the + inseg.data pointer to point to the right place. This way, the + ->p pointer will still point to the first pbuf, but the + ->p->payload pointer will point to data in another pbuf. + + After we are done with adjusting the pbuf pointers we must + adjust the ->data pointer in the seg and the segment + length.*/ + + off = pcb->rcv_nxt - seqno; + p = inseg.p; + LWIP_ASSERT("inseg.p != NULL", inseg.p); + LWIP_ASSERT("insane offset!", (off < 0x7fff)); + if (inseg.p->len < off) { + LWIP_ASSERT("pbuf too short!", (((s32_t)inseg.p->tot_len) >= off)); + new_tot_len = (u16_t)(inseg.p->tot_len - off); + while (p->len < off) { + off -= p->len; + /* KJM following line changed (with addition of new_tot_len var) + to fix bug #9076 + inseg.p->tot_len -= p->len; */ + p->tot_len = new_tot_len; + p->len = 0; + p = p->next; + } + if(pbuf_header(p, (s16_t)-off)) { + /* Do we need to cope with this failing? Assert for now */ + LWIP_ASSERT("pbuf_header failed", 0); + } + } else { + if(pbuf_header(inseg.p, (s16_t)-off)) { + /* Do we need to cope with this failing? Assert for now */ + LWIP_ASSERT("pbuf_header failed", 0); + } + } + /* KJM following line changed to use p->payload rather than inseg->p->payload + to fix bug #9076 */ + inseg.dataptr = p->payload; + inseg.len -= (u16_t)(pcb->rcv_nxt - seqno); + inseg.tcphdr->seqno = seqno = pcb->rcv_nxt; + } + else { + if (TCP_SEQ_LT(seqno, pcb->rcv_nxt)){ + /* the whole segment is < rcv_nxt */ + /* must be a duplicate of a packet that has already been correctly handled */ + + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_receive: duplicate seqno %"U32_F"\n", seqno)); + tcp_ack_now(pcb); + } + } + + /* The sequence number must be within the window (above rcv_nxt + and below rcv_nxt + rcv_wnd) in order to be further + processed. */ + if (TCP_SEQ_BETWEEN(seqno, pcb->rcv_nxt, + pcb->rcv_nxt + pcb->rcv_wnd - 1)){ + if (pcb->rcv_nxt == seqno) { + /* The incoming segment is the next in sequence. We check if + we have to trim the end of the segment and update rcv_nxt + and pass the data to the application. */ + tcplen = TCP_TCPLEN(&inseg); + + if (tcplen > pcb->rcv_wnd) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, + ("tcp_receive: other end overran receive window" + "seqno %"U32_F" len %"U32_F" right edge %"U32_F"\n", + seqno, tcplen, pcb->rcv_nxt + pcb->rcv_wnd)); + if (TCPH_FLAGS(inseg.tcphdr) & TCP_FIN) { + /* Must remove the FIN from the header as we're trimming + * that byte of sequence-space from the packet */ + TCPH_FLAGS_SET(inseg.tcphdr, TCPH_FLAGS(inseg.tcphdr) &~ TCP_FIN); + } + /* Adjust length of segment to fit in the window. */ + inseg.len = pcb->rcv_wnd; + if (TCPH_FLAGS(inseg.tcphdr) & TCP_SYN) { + inseg.len -= 1; + } + pbuf_realloc(inseg.p, inseg.len); + tcplen = TCP_TCPLEN(&inseg); + LWIP_ASSERT("tcp_receive: segment not trimmed correctly to rcv_wnd\n", + (seqno + tcplen) == (pcb->rcv_nxt + pcb->rcv_wnd)); + } +#if TCP_QUEUE_OOSEQ + if (pcb->ooseq != NULL) { + if (TCPH_FLAGS(inseg.tcphdr) & TCP_FIN) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, + ("tcp_receive: received in-order FIN, binning ooseq queue\n")); + /* Received in-order FIN means anything that was received + * out of order must now have been received in-order, so + * bin the ooseq queue + * rcv_nxt + * . |--ooseq--| + * .==seg============|FIN + */ + while (pcb->ooseq != NULL) { + struct tcp_seg *old_ooseq = pcb->ooseq; + pcb->ooseq = pcb->ooseq->next; + tcp_seg_free(old_ooseq); + } + } + else { + struct tcp_seg* next = pcb->ooseq; + struct tcp_seg *old_seg; + /* rcv_nxt + * . |--ooseq--| + * .==seg============| + */ + while (next && + TCP_SEQ_GEQ(seqno + tcplen, + next->tcphdr->seqno + next->len)) { + /* inseg doesn't have FIN (already processed) */ + if (TCPH_FLAGS(next->tcphdr) & TCP_FIN && + (TCPH_FLAGS(inseg.tcphdr) & TCP_SYN) == 0) { + TCPH_FLAGS_SET(inseg.tcphdr, + TCPH_FLAGS(inseg.tcphdr) | TCP_FIN); + tcplen = TCP_TCPLEN(&inseg); + } + old_seg = next; + next = next->next; + tcp_seg_free(old_seg); + } + /* rcv_nxt + * . |--ooseq--| + * .==seg============| + */ + if (next && + TCP_SEQ_GT(seqno + tcplen, + next->tcphdr->seqno)) { + /* FIN in inseg already handled by dropping whole ooseq queue */ + inseg.len = (u16_t)(pcb->ooseq->tcphdr->seqno - seqno); + if (TCPH_FLAGS(inseg.tcphdr) & TCP_SYN) { + inseg.len -= 1; + } + pbuf_realloc(inseg.p, inseg.len); + tcplen = TCP_TCPLEN(&inseg); + LWIP_ASSERT("tcp_receive: segment not trimmed correctly to ooseq queue\n", + (seqno + tcplen) == pcb->ooseq->tcphdr->seqno); + } + pcb->ooseq = next; + } + } +#endif /* TCP_QUEUE_OOSEQ */ + + pcb->rcv_nxt = seqno + tcplen; + + /* Update the receiver's (our) window. */ + LWIP_ASSERT("tcp_receive: tcplen > rcv_wnd\n", pcb->rcv_wnd >= tcplen); + pcb->rcv_wnd -= tcplen; + + tcp_update_rcv_ann_wnd(pcb); + + /* If there is data in the segment, we make preparations to + pass this up to the application. The ->recv_data variable + is used for holding the pbuf that goes to the + application. The code for reassembling out-of-sequence data + chains its data on this pbuf as well. + + If the segment was a FIN, we set the TF_GOT_FIN flag that will + be used to indicate to the application that the remote side has + closed its end of the connection. */ + if (inseg.p->tot_len > 0) { + recv_data = inseg.p; + /* Since this pbuf now is the responsibility of the + application, we delete our reference to it so that we won't + (mistakingly) deallocate it. */ + inseg.p = NULL; + } + if (TCPH_FLAGS(inseg.tcphdr) & TCP_FIN) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_receive: received FIN.\n")); + recv_flags |= TF_GOT_FIN; + } + +#if TCP_QUEUE_OOSEQ + /* We now check if we have segments on the ->ooseq queue that + is now in sequence. */ + while (pcb->ooseq != NULL && + pcb->ooseq->tcphdr->seqno == pcb->rcv_nxt) { + + cseg = pcb->ooseq; + seqno = pcb->ooseq->tcphdr->seqno; + + pcb->rcv_nxt += TCP_TCPLEN(cseg); + LWIP_ASSERT("tcp_receive: ooseq tcplen > rcv_wnd\n", + pcb->rcv_wnd >= TCP_TCPLEN(cseg)); + pcb->rcv_wnd -= TCP_TCPLEN(cseg); + + tcp_update_rcv_ann_wnd(pcb); + + if (cseg->p->tot_len > 0) { + /* Chain this pbuf onto the pbuf that we will pass to + the application. */ + if (recv_data) { + pbuf_cat(recv_data, cseg->p); + } else { + recv_data = cseg->p; + } + cseg->p = NULL; + } + if (TCPH_FLAGS(cseg->tcphdr) & TCP_FIN) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_receive: dequeued FIN.\n")); + recv_flags |= TF_GOT_FIN; + if (pcb->state == ESTABLISHED) { /* force passive close or we can move to active close */ + pcb->state = CLOSE_WAIT; + } + } + + pcb->ooseq = cseg->next; + tcp_seg_free(cseg); + } +#endif /* TCP_QUEUE_OOSEQ */ + + + /* Acknowledge the segment(s). */ + tcp_ack(pcb); + + } else { + /* We get here if the incoming segment is out-of-sequence. */ + tcp_send_empty_ack(pcb); +#if TCP_QUEUE_OOSEQ + /* We queue the segment on the ->ooseq queue. */ + if (pcb->ooseq == NULL) { + pcb->ooseq = tcp_seg_copy(&inseg); + } else { + /* If the queue is not empty, we walk through the queue and + try to find a place where the sequence number of the + incoming segment is between the sequence numbers of the + previous and the next segment on the ->ooseq queue. That is + the place where we put the incoming segment. If needed, we + trim the second edges of the previous and the incoming + segment so that it will fit into the sequence. + + If the incoming segment has the same sequence number as a + segment on the ->ooseq queue, we discard the segment that + contains less data. */ + + prev = NULL; + for(next = pcb->ooseq; next != NULL; next = next->next) { + if (seqno == next->tcphdr->seqno) { + /* The sequence number of the incoming segment is the + same as the sequence number of the segment on + ->ooseq. We check the lengths to see which one to + discard. */ + if (inseg.len > next->len) { + /* The incoming segment is larger than the old + segment. We replace some segments with the new + one. */ + cseg = tcp_seg_copy(&inseg); + if (cseg != NULL) { + if (prev != NULL) { + prev->next = cseg; + } else { + pcb->ooseq = cseg; + } + tcp_oos_insert_segment(cseg, next); + } + break; + } else { + /* Either the lenghts are the same or the incoming + segment was smaller than the old one; in either + case, we ditch the incoming segment. */ + break; + } + } else { + if (prev == NULL) { + if (TCP_SEQ_LT(seqno, next->tcphdr->seqno)) { + /* The sequence number of the incoming segment is lower + than the sequence number of the first segment on the + queue. We put the incoming segment first on the + queue. */ + cseg = tcp_seg_copy(&inseg); + if (cseg != NULL) { + pcb->ooseq = cseg; + tcp_oos_insert_segment(cseg, next); + } + break; + } + } else { + /*if (TCP_SEQ_LT(prev->tcphdr->seqno, seqno) && + TCP_SEQ_LT(seqno, next->tcphdr->seqno)) {*/ + if (TCP_SEQ_BETWEEN(seqno, prev->tcphdr->seqno+1, next->tcphdr->seqno-1)) { + /* The sequence number of the incoming segment is in + between the sequence numbers of the previous and + the next segment on ->ooseq. We trim trim the previous + segment, delete next segments that included in received segment + and trim received, if needed. */ + cseg = tcp_seg_copy(&inseg); + if (cseg != NULL) { + if (TCP_SEQ_GT(prev->tcphdr->seqno + prev->len, seqno)) { + /* We need to trim the prev segment. */ + prev->len = (u16_t)(seqno - prev->tcphdr->seqno); + pbuf_realloc(prev->p, prev->len); + } + prev->next = cseg; + tcp_oos_insert_segment(cseg, next); + } + break; + } + } + /* If the "next" segment is the last segment on the + ooseq queue, we add the incoming segment to the end + of the list. */ + if (next->next == NULL && + TCP_SEQ_GT(seqno, next->tcphdr->seqno)) { + if (TCPH_FLAGS(next->tcphdr) & TCP_FIN) { + /* segment "next" already contains all data */ + break; + } + next->next = tcp_seg_copy(&inseg); + if (next->next != NULL) { + if (TCP_SEQ_GT(next->tcphdr->seqno + next->len, seqno)) { + /* We need to trim the last segment. */ + next->len = (u16_t)(seqno - next->tcphdr->seqno); + pbuf_realloc(next->p, next->len); + } + } + break; + } + } + prev = next; + } + } +#endif /* TCP_QUEUE_OOSEQ */ + + } + } else { + /* The incoming segment is not withing the window. */ + tcp_send_empty_ack(pcb); + } + } else { + /* Segments with length 0 is taken care of here. Segments that + fall out of the window are ACKed. */ + /*if (TCP_SEQ_GT(pcb->rcv_nxt, seqno) || + TCP_SEQ_GEQ(seqno, pcb->rcv_nxt + pcb->rcv_wnd)) {*/ + if(!TCP_SEQ_BETWEEN(seqno, pcb->rcv_nxt, pcb->rcv_nxt + pcb->rcv_wnd-1)){ + tcp_ack_now(pcb); + } + } +} + +/** + * Parses the options contained in the incoming segment. + * + * Called from tcp_listen_input() and tcp_process(). + * Currently, only the MSS option is supported! + * + * @param pcb the tcp_pcb for which a segment arrived + */ +static void +tcp_parseopt(struct tcp_pcb *pcb) +{ + u16_t c, max_c; + u16_t mss; + u8_t *opts, opt; +#if LWIP_TCP_TIMESTAMPS + u32_t tsval; +#endif + + opts = (u8_t *)tcphdr + TCP_HLEN; + + /* Parse the TCP MSS option, if present. */ + if(TCPH_HDRLEN(tcphdr) > 0x5) { + max_c = (TCPH_HDRLEN(tcphdr) - 5) << 2; + for (c = 0; c < max_c; ) { + opt = opts[c]; + switch (opt) { + case 0x00: + /* End of options. */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: EOL\n")); + return; + case 0x01: + /* NOP option. */ + ++c; + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: NOP\n")); + break; + case 0x02: + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: MSS\n")); + if (opts[c + 1] != 0x04 || c + 0x04 > max_c) { + /* Bad length */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: bad length\n")); + return; + } + /* An MSS option with the right option length. */ + mss = (opts[c + 2] << 8) | opts[c + 3]; + /* Limit the mss to the configured TCP_MSS and prevent division by zero */ + pcb->mss = ((mss > TCP_MSS) || (mss == 0)) ? TCP_MSS : mss; + /* Advance to next option */ + c += 0x04; + break; +#if LWIP_TCP_TIMESTAMPS + case 0x08: + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: TS\n")); + if (opts[c + 1] != 0x0A || c + 0x0A > max_c) { + /* Bad length */ + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: bad length\n")); + return; + } + /* TCP timestamp option with valid length */ + tsval = (opts[c+2]) | (opts[c+3] << 8) | + (opts[c+4] << 16) | (opts[c+5] << 24); + if (flags & TCP_SYN) { + pcb->ts_recent = ntohl(tsval); + pcb->flags |= TF_TIMESTAMP; + } else if (TCP_SEQ_BETWEEN(pcb->ts_lastacksent, seqno, seqno+tcplen)) { + pcb->ts_recent = ntohl(tsval); + } + /* Advance to next option */ + c += 0x0A; + break; +#endif + default: + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: other\n")); + if (opts[c + 1] == 0) { + LWIP_DEBUGF(TCP_INPUT_DEBUG, ("tcp_parseopt: bad length\n")); + /* If the length field is zero, the options are malformed + and we don't process them further. */ + return; + } + /* All other options have a length field, so that we easily + can skip past them. */ + c += opts[c + 1]; + } + } + } +} + +#endif /* LWIP_TCP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_out.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_out.c new file mode 100644 index 000000000..9605beb8e --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/tcp_out.c @@ -0,0 +1,1071 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Transmission Control Protocol, outgoing traffic + * + * The output functions of TCP. + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#include "lwip/opt.h" + +#if LWIP_TCP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/tcp.h" +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/memp.h" +#include "lwip/sys.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/stats.h" +#include "lwip/snmp.h" + +#include <string.h> +#define _TEST_HD_ +/* Forward declarations.*/ +static void tcp_output_segment(struct tcp_seg *seg, struct tcp_pcb *pcb); + +static struct tcp_hdr * +tcp_output_set_header(struct tcp_pcb *pcb, struct pbuf *p, int optlen, + u32_t seqno_be /* already in network byte order */) +{ + struct tcp_hdr *tcphdr = p->payload; + tcphdr->src = htons(pcb->local_port); + tcphdr->dest = htons(pcb->remote_port); + tcphdr->seqno = seqno_be; + tcphdr->ackno = htonl(pcb->rcv_nxt); + TCPH_FLAGS_SET(tcphdr, TCP_ACK); + tcphdr->wnd = htons(pcb->rcv_ann_wnd); + tcphdr->urgp = 0; + TCPH_HDRLEN_SET(tcphdr, (5 + optlen / 4)); + tcphdr->chksum = 0; + + /* If we're sending a packet, update the announced right window edge */ + pcb->rcv_ann_right_edge = pcb->rcv_nxt + pcb->rcv_ann_wnd; + + return tcphdr; +} + +/** + * Called by tcp_close() to send a segment including flags but not data. + * + * @param pcb the tcp_pcb over which to send a segment + * @param flags the flags to set in the segment header + * @return ERR_OK if sent, another err_t otherwise + */ +err_t +tcp_send_ctrl(struct tcp_pcb *pcb, u8_t flags) +{ + /* no data, no length, flags, copy=1, no optdata */ + return tcp_enqueue(pcb, NULL, 0, flags, TCP_WRITE_FLAG_COPY, 0); +} + +/** + * Write data for sending (but does not send it immediately). + * + * It waits in the expectation of more data being sent soon (as + * it can send them more efficiently by combining them together). + * To prompt the system to send data now, call tcp_output() after + * calling tcp_write(). + * + * @param pcb Protocol control block of the TCP connection to enqueue data for. + * @param data pointer to the data to send + * @param len length (in bytes) of the data to send + * @param apiflags combination of following flags : + * - TCP_WRITE_FLAG_COPY (0x01) data will be copied into memory belonging to the stack + * - TCP_WRITE_FLAG_MORE (0x02) for TCP connection, PSH flag will be set on last segment sent, + * @return ERR_OK if enqueued, another err_t on error + * + * @see tcp_write() + */ +err_t +tcp_write(struct tcp_pcb *pcb, const void *data, u16_t len, u8_t apiflags) +{ + LWIP_DEBUGF(TCP_OUTPUT_DEBUG, ("tcp_write(pcb=%p, data=%p, len=%"U16_F", apiflags=%"U16_F")\n", (void *)pcb, + data, len, (u16_t)apiflags)); + /* connection is in valid state for data transmission? */ + if (pcb->state == ESTABLISHED || + pcb->state == CLOSE_WAIT || + pcb->state == SYN_SENT || + pcb->state == SYN_RCVD) { + if (len > 0) { +#if LWIP_TCP_TIMESTAMPS + return tcp_enqueue(pcb, (void *)data, len, 0, apiflags, + pcb->flags & TF_TIMESTAMP ? TF_SEG_OPTS_TS : 0); +#else + return tcp_enqueue(pcb, (void *)data, len, 0, apiflags, 0); +#endif + } + return ERR_OK; + } else { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_STATE | LWIP_DBG_LEVEL_SEVERE, ("tcp_write() called in invalid state\n")); + return ERR_CONN; + } +} + +/** + * Enqueue data and/or TCP options for transmission + * + * Called by tcp_connect(), tcp_listen_input(), tcp_send_ctrl() and tcp_write(). + * + * @param pcb Protocol control block for the TCP connection to enqueue data for. + * @param arg Pointer to the data to be enqueued for sending. + * @param len Data length in bytes + * @param flags tcp header flags to set in the outgoing segment + * @param apiflags combination of following flags : + * - TCP_WRITE_FLAG_COPY (0x01) data will be copied into memory belonging to the stack + * - TCP_WRITE_FLAG_MORE (0x02) for TCP connection, PSH flag will be set on last segment sent, + * @param optflags options to include in segment later on (see definition of struct tcp_seg) + */ +err_t +tcp_enqueue(struct tcp_pcb *pcb, void *arg, u16_t len, + u8_t flags, u8_t apiflags, u8_t optflags) +{ + struct pbuf *p; + struct tcp_seg *seg, *useg, *queue; + u32_t seqno; + u16_t left, seglen; + void *ptr; + u16_t queuelen; + u8_t optlen; + + LWIP_DEBUGF(TCP_OUTPUT_DEBUG, + ("tcp_enqueue(pcb=%p, arg=%p, len=%"U16_F", flags=%"X16_F", apiflags=%"U16_F")\n", + (void *)pcb, arg, len, (u16_t)flags, (u16_t)apiflags)); + LWIP_ERROR("tcp_enqueue: packet needs payload, options, or SYN/FIN (programmer violates API)", + ((len != 0) || (optflags != 0) || ((flags & (TCP_SYN | TCP_FIN)) != 0)), + return ERR_ARG;); + LWIP_ERROR("tcp_enqueue: len != 0 || arg == NULL (programmer violates API)", + ((len != 0) || (arg == NULL)), return ERR_ARG;); + + /* fail on too much data */ + if (len > pcb->snd_buf) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_WARNING, + ("tcp_enqueue: too much data (len=%"U16_F" > snd_buf=%"U16_F")\n", len, pcb->snd_buf)); + pcb->flags |= TF_NAGLEMEMERR; + return ERR_MEM; + } + left = len; + ptr = arg; + + optlen = LWIP_TCP_OPT_LENGTH(optflags); + + /* seqno will be the sequence number of the first segment enqueued + * by the call to this function. */ + seqno = pcb->snd_lbb; + + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("tcp_enqueue: queuelen: %"U16_F"\n", (u16_t)pcb->snd_queuelen)); + + /* If total number of pbufs on the unsent/unacked queues exceeds the + * configured maximum, return an error */ + queuelen = pcb->snd_queuelen; + /* check for configured max queuelen and possible overflow */ + if ((queuelen >= TCP_SND_QUEUELEN) || (queuelen > TCP_SNDQUEUELEN_OVERFLOW)) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_WARNING, + ("tcp_enqueue: too long queue %"U16_F" (max %"U16_F")\n", queuelen, TCP_SND_QUEUELEN)); + TCP_STATS_INC(tcp.memerr); + pcb->flags |= TF_NAGLEMEMERR; + return ERR_MEM; + } + if (queuelen != 0) { + LWIP_ASSERT("tcp_enqueue: pbufs on queue => at least one queue non-empty", + pcb->unacked != NULL || pcb->unsent != NULL); + } else { + LWIP_ASSERT("tcp_enqueue: no pbufs on queue => both queues empty", + pcb->unacked == NULL && pcb->unsent == NULL); + } + + /* First, break up the data into segments and tuck them together in + * the local "queue" variable. */ + useg = queue = seg = NULL; + seglen = 0; + while (queue == NULL || left > 0) { + /* The segment length (including options) should be at most the MSS */ + seglen = left > (pcb->mss - optlen) ? (pcb->mss - optlen) : left; + + /* Allocate memory for tcp_seg, and fill in fields. */ + seg = memp_malloc(MEMP_TCP_SEG); + if (seg == NULL) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("tcp_enqueue: could not allocate memory for tcp_seg\n")); + goto memerr; + } + seg->next = NULL; + seg->p = NULL; + + /* first segment of to-be-queued data? */ + if (queue == NULL) { + queue = seg; + } + /* subsequent segments of to-be-queued data */ + else { + /* Attach the segment to the end of the queued segments */ + LWIP_ASSERT("useg != NULL", useg != NULL); + useg->next = seg; + } + /* remember last segment of to-be-queued data for next iteration */ + useg = seg; + + /* If copy is set, memory should be allocated + * and data copied into pbuf, otherwise data comes from + * ROM or other static memory, and need not be copied. */ + if (apiflags & TCP_WRITE_FLAG_COPY) { + if ((seg->p = pbuf_alloc(PBUF_TRANSPORT, seglen + optlen, PBUF_RAM)) == NULL) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("tcp_enqueue : could not allocate memory for pbuf copy size %"U16_F"\n", seglen)); + goto memerr; + } + LWIP_ASSERT("check that first pbuf can hold the complete seglen", + (seg->p->len >= seglen + optlen)); + queuelen += pbuf_clen(seg->p); + if (arg != NULL) { + MEMCPY((char *)seg->p->payload + optlen, ptr, seglen); + } + seg->dataptr = seg->p->payload; + } + /* do not copy data */ + else { + /* First, allocate a pbuf for the headers. */ + if ((seg->p = pbuf_alloc(PBUF_TRANSPORT, optlen, PBUF_RAM)) == NULL) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("tcp_enqueue: could not allocate memory for header pbuf\n")); + goto memerr; + } + queuelen += pbuf_clen(seg->p); + + /* Second, allocate a pbuf for holding the data. + * since the referenced data is available at least until it is sent out on the + * link (as it has to be ACKed by the remote party) we can safely use PBUF_ROM + * instead of PBUF_REF here. + */ + if (left > 0) { + if ((p = pbuf_alloc(PBUF_RAW, seglen, PBUF_ROM)) == NULL) { + /* If allocation fails, we have to deallocate the header pbuf as well. */ + pbuf_free(seg->p); + seg->p = NULL; + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("tcp_enqueue: could not allocate memory for zero-copy pbuf\n")); + goto memerr; + } + ++queuelen; + /* reference the non-volatile payload data */ + p->payload = ptr; + seg->dataptr = ptr; + + /* Concatenate the headers and data pbufs together. */ + pbuf_cat(seg->p/*header*/, p/*data*/); + p = NULL; + } + } + + /* Now that there are more segments queued, we check again if the + length of the queue exceeds the configured maximum or overflows. */ + if ((queuelen > TCP_SND_QUEUELEN) || (queuelen > TCP_SNDQUEUELEN_OVERFLOW)) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("tcp_enqueue: queue too long %"U16_F" (%"U16_F")\n", queuelen, TCP_SND_QUEUELEN)); + goto memerr; + } + + seg->len = seglen; + + /* build TCP header */ + if (pbuf_header(seg->p, TCP_HLEN)) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("tcp_enqueue: no room for TCP header in pbuf.\n")); + TCP_STATS_INC(tcp.err); + goto memerr; + } + seg->tcphdr = seg->p->payload; + seg->tcphdr->src = htons(pcb->local_port); + seg->tcphdr->dest = htons(pcb->remote_port); + seg->tcphdr->seqno = htonl(seqno); + seg->tcphdr->urgp = 0; + TCPH_FLAGS_SET(seg->tcphdr, flags); + /* don't fill in tcphdr->ackno and tcphdr->wnd until later */ + + seg->flags = optflags; + + /* Set the length of the header */ + TCPH_HDRLEN_SET(seg->tcphdr, (5 + optlen / 4)); + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_TRACE, ("tcp_enqueue: queueing %"U32_F":%"U32_F" (0x%"X16_F")\n", + ntohl(seg->tcphdr->seqno), + ntohl(seg->tcphdr->seqno) + TCP_TCPLEN(seg), + (u16_t)flags)); + + left -= seglen; + seqno += seglen; + ptr = (void *)((u8_t *)ptr + seglen); + } + + /* Now that the data to be enqueued has been broken up into TCP + segments in the queue variable, we add them to the end of the + pcb->unsent queue. */ + if (pcb->unsent == NULL) { + useg = NULL; + } + else { + for (useg = pcb->unsent; useg->next != NULL; useg = useg->next); + } + /* { useg is last segment on the unsent queue, NULL if list is empty } */ + + /* If there is room in the last pbuf on the unsent queue, + chain the first pbuf on the queue together with that. */ + if (useg != NULL && + TCP_TCPLEN(useg) != 0 && + !(TCPH_FLAGS(useg->tcphdr) & (TCP_SYN | TCP_FIN)) && + (!(flags & (TCP_SYN | TCP_FIN)) || (flags == TCP_FIN)) && + /* fit within max seg size */ + (useg->len + queue->len <= pcb->mss) && + /* only concatenate segments with the same options */ + (useg->flags == queue->flags) && + /* segments are consecutive */ + (ntohl(useg->tcphdr->seqno) + useg->len == ntohl(queue->tcphdr->seqno)) ) { + /* Remove TCP header from first segment of our to-be-queued list */ + if(pbuf_header(queue->p, -(TCP_HLEN + optlen))) { + /* Can we cope with this failing? Just assert for now */ + LWIP_ASSERT("pbuf_header failed\n", 0); + TCP_STATS_INC(tcp.err); + goto memerr; + } + if (queue->p->len == 0) { + /* free the first (header-only) pbuf if it is now empty (contained only headers) */ + struct pbuf *old_q = queue->p; + queue->p = queue->p->next; + old_q->next = NULL; + queuelen--; + pbuf_free(old_q); + } + if (flags & TCP_FIN) { + /* the new segment contains only FIN, no data -> put the FIN into the last segment */ + LWIP_ASSERT("FIN enqueued together with data", queue->p == NULL && queue->len == 0); + TCPH_SET_FLAG(useg->tcphdr, TCP_FIN); + } else { + LWIP_ASSERT("zero-length pbuf", (queue->p != NULL) && (queue->p->len > 0)); + pbuf_cat(useg->p, queue->p); + useg->len += queue->len; + useg->next = queue->next; + } + + LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("tcp_enqueue: chaining segments, new len %"U16_F"\n", useg->len)); + if (seg == queue) { + seg = useg; + seglen = useg->len; + } + memp_free(MEMP_TCP_SEG, queue); + } + else { + /* empty list */ + if (useg == NULL) { + /* initialize list with this segment */ + pcb->unsent = queue; + } + /* enqueue segment */ + else { + useg->next = queue; + } + } + if ((flags & TCP_SYN) || (flags & TCP_FIN)) { + ++len; + } + if (flags & TCP_FIN) { + pcb->flags |= TF_FIN; + } + pcb->snd_lbb += len; + + pcb->snd_buf -= len; + + /* update number of segments on the queues */ + pcb->snd_queuelen = queuelen; + LWIP_DEBUGF(TCP_QLEN_DEBUG, ("tcp_enqueue: %"S16_F" (after enqueued)\n", pcb->snd_queuelen)); + if (pcb->snd_queuelen != 0) { + LWIP_ASSERT("tcp_enqueue: valid queue length", + pcb->unacked != NULL || pcb->unsent != NULL); + } + + /* Set the PSH flag in the last segment that we enqueued, but only + if the segment has data (indicated by seglen > 0). */ + if (seg != NULL && seglen > 0 && seg->tcphdr != NULL && ((apiflags & TCP_WRITE_FLAG_MORE)==0)) { + TCPH_SET_FLAG(seg->tcphdr, TCP_PSH); + } + + return ERR_OK; +memerr: + pcb->flags |= TF_NAGLEMEMERR; + TCP_STATS_INC(tcp.memerr); + + if (queue != NULL) { + tcp_segs_free(queue); + } + if (pcb->snd_queuelen != 0) { + LWIP_ASSERT("tcp_enqueue: valid queue length", pcb->unacked != NULL || + pcb->unsent != NULL); + } + LWIP_DEBUGF(TCP_QLEN_DEBUG | LWIP_DBG_STATE, ("tcp_enqueue: %"S16_F" (with mem err)\n", pcb->snd_queuelen)); + return ERR_MEM; +} + + +#if LWIP_TCP_TIMESTAMPS +/* Build a timestamp option (12 bytes long) at the specified options pointer) + * + * @param pcb tcp_pcb + * @param opts option pointer where to store the timestamp option + */ +static void +tcp_build_timestamp_option(struct tcp_pcb *pcb, u32_t *opts) +{ + /* Pad with two NOP options to make everything nicely aligned */ + opts[0] = htonl(0x0101080A); + opts[1] = htonl(sys_now()); + opts[2] = htonl(pcb->ts_recent); +} +#endif + +/** Send an ACK without data. + * + * @param pcb Protocol control block for the TCP connection to send the ACK + */ +err_t +tcp_send_empty_ack(struct tcp_pcb *pcb) +{ + struct pbuf *p; + struct tcp_hdr *tcphdr; + u8_t optlen = 0; + +#if LWIP_TCP_TIMESTAMPS + if (pcb->flags & TF_TIMESTAMP) { + optlen = LWIP_TCP_OPT_LENGTH(TF_SEG_OPTS_TS); + } +#endif + p = pbuf_alloc(PBUF_IP, TCP_HLEN + optlen, PBUF_RAM); + if (p == NULL) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG, ("tcp_output: (ACK) could not allocate pbuf\n")); + return ERR_BUF; + } + LWIP_DEBUGF(TCP_OUTPUT_DEBUG, + ("tcp_output: sending ACK for %"U32_F"\n", pcb->rcv_nxt)); + /* remove ACK flags from the PCB, as we send an empty ACK now */ + pcb->flags &= ~(TF_ACK_DELAY | TF_ACK_NOW); + + tcphdr = tcp_output_set_header(pcb, p, optlen, htonl(pcb->snd_nxt)); + + /* NB. MSS option is only sent on SYNs, so ignore it here */ +#if LWIP_TCP_TIMESTAMPS + pcb->ts_lastacksent = pcb->rcv_nxt; + + if (pcb->flags & TF_TIMESTAMP) { + tcp_build_timestamp_option(pcb, (u32_t *)(tcphdr + 1)); + } +#endif + +#if CHECKSUM_GEN_TCP + tcphdr->chksum = inet_chksum_pseudo(p, &(pcb->local_ip), &(pcb->remote_ip), + IP_PROTO_TCP, p->tot_len); +#endif +#if LWIP_NETIF_HWADDRHINT + ip_output_hinted(p, &(pcb->local_ip), &(pcb->remote_ip), pcb->ttl, pcb->tos, + IP_PROTO_TCP, &(pcb->addr_hint)); +#else /* LWIP_NETIF_HWADDRHINT*/ + ip_output(p, &(pcb->local_ip), &(pcb->remote_ip), pcb->ttl, pcb->tos, + IP_PROTO_TCP); +#endif /* LWIP_NETIF_HWADDRHINT*/ + pbuf_free(p); + + return ERR_OK; +} + +/** + * Find out what we can send and send it + * + * @param pcb Protocol control block for the TCP connection to send data + * @return ERR_OK if data has been sent or nothing to send + * another err_t on error + */ +err_t +tcp_output(struct tcp_pcb *pcb) +{ + struct tcp_seg *seg, *useg; + u32_t wnd, snd_nxt; +#if TCP_CWND_DEBUG + s16_t i = 0; +#endif /* TCP_CWND_DEBUG */ + + /* First, check if we are invoked by the TCP input processing + code. If so, we do not output anything. Instead, we rely on the + input processing code to call us when input processing is done + with. */ + if (tcp_input_pcb == pcb) { + return ERR_OK; + } + + wnd = LWIP_MIN(pcb->snd_wnd, pcb->cwnd); + + seg = pcb->unsent; + + /* If the TF_ACK_NOW flag is set and no data will be sent (either + * because the ->unsent queue is empty or because the window does + * not allow it), construct an empty ACK segment and send it. + * + * If data is to be sent, we will just piggyback the ACK (see below). + */ + if (pcb->flags & TF_ACK_NOW && + (seg == NULL || + ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len > wnd)) { + return tcp_send_empty_ack(pcb); + } + + /* useg should point to last segment on unacked queue */ + useg = pcb->unacked; + if (useg != NULL) { + for (; useg->next != NULL; useg = useg->next); + } + +#if TCP_OUTPUT_DEBUG + if (seg == NULL) { + LWIP_DEBUGF(TCP_OUTPUT_DEBUG, ("tcp_output: nothing to send (%p)\n", + (void*)pcb->unsent)); + } +#endif /* TCP_OUTPUT_DEBUG */ +#if TCP_CWND_DEBUG + if (seg == NULL) { + LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_output: snd_wnd %"U16_F + ", cwnd %"U16_F", wnd %"U32_F + ", seg == NULL, ack %"U32_F"\n", + pcb->snd_wnd, pcb->cwnd, wnd, pcb->lastack)); + } else { + LWIP_DEBUGF(TCP_CWND_DEBUG, + ("tcp_output: snd_wnd %"U16_F", cwnd %"U16_F", wnd %"U32_F + ", effwnd %"U32_F", seq %"U32_F", ack %"U32_F"\n", + pcb->snd_wnd, pcb->cwnd, wnd, + ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len, + ntohl(seg->tcphdr->seqno), pcb->lastack)); + } +#endif /* TCP_CWND_DEBUG */ + /* data available and window allows it to be sent? */ + while (seg != NULL && + ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len <= wnd) { + LWIP_ASSERT("RST not expected here!", + (TCPH_FLAGS(seg->tcphdr) & TCP_RST) == 0); + /* Stop sending if the nagle algorithm would prevent it + * Don't stop: + * - if tcp_enqueue had a memory error before (prevent delayed ACK timeout) or + * - if FIN was already enqueued for this PCB (SYN is always alone in a segment - + * either seg->next != NULL or pcb->unacked == NULL; + * RST is no sent using tcp_enqueue/tcp_output. + */ + if((tcp_do_output_nagle(pcb) == 0) && + ((pcb->flags & (TF_NAGLEMEMERR | TF_FIN)) == 0)){ + break; + } +#if TCP_CWND_DEBUG + LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_output: snd_wnd %"U16_F", cwnd %"U16_F", wnd %"U32_F", effwnd %"U32_F", seq %"U32_F", ack %"U32_F", i %"S16_F"\n", + pcb->snd_wnd, pcb->cwnd, wnd, + ntohl(seg->tcphdr->seqno) + seg->len - + pcb->lastack, + ntohl(seg->tcphdr->seqno), pcb->lastack, i)); + ++i; +#endif /* TCP_CWND_DEBUG */ + + pcb->unsent = seg->next; + + if (pcb->state != SYN_SENT) { + TCPH_SET_FLAG(seg->tcphdr, TCP_ACK); + pcb->flags &= ~(TF_ACK_DELAY | TF_ACK_NOW); + } + + tcp_output_segment(seg, pcb); + snd_nxt = ntohl(seg->tcphdr->seqno) + TCP_TCPLEN(seg); + if (TCP_SEQ_LT(pcb->snd_nxt, snd_nxt)) { + pcb->snd_nxt = snd_nxt; + } + /* put segment on unacknowledged list if length > 0 */ + if (TCP_TCPLEN(seg) > 0) { + seg->next = NULL; + /* unacked list is empty? */ + if (pcb->unacked == NULL) { + pcb->unacked = seg; + useg = seg; + /* unacked list is not empty? */ + } else { + /* In the case of fast retransmit, the packet should not go to the tail + * of the unacked queue, but rather somewhere before it. We need to check for + * this case. -STJ Jul 27, 2004 */ + if (TCP_SEQ_LT(ntohl(seg->tcphdr->seqno), ntohl(useg->tcphdr->seqno))){ + /* add segment to before tail of unacked list, keeping the list sorted */ + struct tcp_seg **cur_seg = &(pcb->unacked); + while (*cur_seg && + TCP_SEQ_LT(ntohl((*cur_seg)->tcphdr->seqno), ntohl(seg->tcphdr->seqno))) { + cur_seg = &((*cur_seg)->next ); + } + seg->next = (*cur_seg); + (*cur_seg) = seg; + } else { + /* add segment to tail of unacked list */ + useg->next = seg; + useg = useg->next; + } + } + /* do not queue empty segments on the unacked list */ + } else { + tcp_seg_free(seg); + } + seg = pcb->unsent; + } + + if (seg != NULL && pcb->persist_backoff == 0 && + ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len > pcb->snd_wnd) { + /* prepare for persist timer */ + pcb->persist_cnt = 0; + pcb->persist_backoff = 1; + } + + pcb->flags &= ~TF_NAGLEMEMERR; + return ERR_OK; +} + +/** + * Called by tcp_output() to actually send a TCP segment over IP. + * + * @param seg the tcp_seg to send + * @param pcb the tcp_pcb for the TCP connection used to send the segment + */ +static void +tcp_output_segment(struct tcp_seg *seg, struct tcp_pcb *pcb) +{ + u16_t len; + struct netif *netif; + u32_t *opts; + + /** @bug Exclude retransmitted segments from this count. */ + snmp_inc_tcpoutsegs(); + + /* The TCP header has already been constructed, but the ackno and + wnd fields remain. */ + seg->tcphdr->ackno = htonl(pcb->rcv_nxt); + + /* advertise our receive window size in this TCP segment */ + seg->tcphdr->wnd = htons(pcb->rcv_ann_wnd); + + pcb->rcv_ann_right_edge = pcb->rcv_nxt + pcb->rcv_ann_wnd; + + /* Add any requested options. NB MSS option is only set on SYN + packets, so ignore it here */ + opts = (u32_t *)(seg->tcphdr + 1); + if (seg->flags & TF_SEG_OPTS_MSS) { + TCP_BUILD_MSS_OPTION(*opts); + opts += 1; + } +#if LWIP_TCP_TIMESTAMPS + pcb->ts_lastacksent = pcb->rcv_nxt; + + if (seg->flags & TF_SEG_OPTS_TS) { + tcp_build_timestamp_option(pcb, opts); + opts += 3; + } +#endif + +#ifdef _TEST_HD_ + /* ANGR: set rtime this _before_ checking ip_route(). Otherwise TCP_SYN will + * not be retransmitted in case the interface was down and tcp_connect() + * will not return any error. Since we still want the err_cb() (or maybe + * the wifi link comes up), make sure that we fulfill the retransmissions in + * tcp_slowtmr() + */ + + /* Set retransmission timer running if it is not currently enabled */ + if(pcb->rtime == -1) + pcb->rtime = 0; +#endif + + /* If we don't have a local IP address, we get one by + calling ip_route(). */ + if (ip_addr_isany(&(pcb->local_ip))) { + netif = ip_route(&(pcb->remote_ip)); + if (netif == NULL) { + return; + } + ip_addr_set(&(pcb->local_ip), &(netif->ip_addr)); + } + +#ifndef _TEST_HD_ + //Set retransmission timer running if it is not currently enabled + if(pcb->rtime == -1) + pcb->rtime = 0; +#endif + + if (pcb->rttest == 0) { + pcb->rttest = tcp_ticks; + pcb->rtseq = ntohl(seg->tcphdr->seqno); + + LWIP_DEBUGF(TCP_RTO_DEBUG, ("tcp_output_segment: rtseq %"U32_F"\n", pcb->rtseq)); + } + LWIP_DEBUGF(TCP_OUTPUT_DEBUG, ("tcp_output_segment: %"U32_F":%"U32_F"\n", + htonl(seg->tcphdr->seqno), htonl(seg->tcphdr->seqno) + + seg->len)); + + len = (u16_t)((u8_t *)seg->tcphdr - (u8_t *)seg->p->payload); + + seg->p->len -= len; + seg->p->tot_len -= len; + + seg->p->payload = seg->tcphdr; + + seg->tcphdr->chksum = 0; +#if CHECKSUM_GEN_TCP + seg->tcphdr->chksum = inet_chksum_pseudo(seg->p, + &(pcb->local_ip), + &(pcb->remote_ip), + IP_PROTO_TCP, seg->p->tot_len); +#endif + TCP_STATS_INC(tcp.xmit); + +#if LWIP_NETIF_HWADDRHINT + ip_output_hinted(seg->p, &(pcb->local_ip), &(pcb->remote_ip), pcb->ttl, pcb->tos, + IP_PROTO_TCP, &(pcb->addr_hint)); +#else /* LWIP_NETIF_HWADDRHINT*/ + ip_output(seg->p, &(pcb->local_ip), &(pcb->remote_ip), pcb->ttl, pcb->tos, + IP_PROTO_TCP); +#endif /* LWIP_NETIF_HWADDRHINT*/ +} + +/** + * Send a TCP RESET packet (empty segment with RST flag set) either to + * abort a connection or to show that there is no matching local connection + * for a received segment. + * + * Called by tcp_abort() (to abort a local connection), tcp_input() (if no + * matching local pcb was found), tcp_listen_input() (if incoming segment + * has ACK flag set) and tcp_process() (received segment in the wrong state) + * + * Since a RST segment is in most cases not sent for an active connection, + * tcp_rst() has a number of arguments that are taken from a tcp_pcb for + * most other segment output functions. + * + * @param seqno the sequence number to use for the outgoing segment + * @param ackno the acknowledge number to use for the outgoing segment + * @param local_ip the local IP address to send the segment from + * @param remote_ip the remote IP address to send the segment to + * @param local_port the local TCP port to send the segment from + * @param remote_port the remote TCP port to send the segment to + */ +void +tcp_rst(u32_t seqno, u32_t ackno, + struct ip_addr *local_ip, struct ip_addr *remote_ip, + u16_t local_port, u16_t remote_port) +{ + struct pbuf *p; + struct tcp_hdr *tcphdr; + p = pbuf_alloc(PBUF_IP, TCP_HLEN, PBUF_RAM); + if (p == NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_rst: could not allocate memory for pbuf\n")); + return; + } + LWIP_ASSERT("check that first pbuf can hold struct tcp_hdr", + (p->len >= sizeof(struct tcp_hdr))); + + tcphdr = p->payload; + tcphdr->src = htons(local_port); + tcphdr->dest = htons(remote_port); + tcphdr->seqno = htonl(seqno); + tcphdr->ackno = htonl(ackno); + TCPH_FLAGS_SET(tcphdr, TCP_RST | TCP_ACK); + tcphdr->wnd = htons(TCP_WND); + tcphdr->urgp = 0; + TCPH_HDRLEN_SET(tcphdr, 5); + + tcphdr->chksum = 0; +#if CHECKSUM_GEN_TCP + tcphdr->chksum = inet_chksum_pseudo(p, local_ip, remote_ip, + IP_PROTO_TCP, p->tot_len); +#endif + TCP_STATS_INC(tcp.xmit); + snmp_inc_tcpoutrsts(); + /* Send output with hardcoded TTL since we have no access to the pcb */ + ip_output(p, local_ip, remote_ip, TCP_TTL, 0, IP_PROTO_TCP); + pbuf_free(p); + LWIP_DEBUGF(TCP_RST_DEBUG, ("tcp_rst: seqno %"U32_F" ackno %"U32_F".\n", seqno, ackno)); +} + +/** + * Requeue all unacked segments for retransmission + * + * Called by tcp_slowtmr() for slow retransmission. + * + * @param pcb the tcp_pcb for which to re-enqueue all unacked segments + */ +void +tcp_rexmit_rto(struct tcp_pcb *pcb) +{ + struct tcp_seg *seg; + + if (pcb->unacked == NULL) { + return; + } + + /* Move all unacked segments to the head of the unsent queue */ + for (seg = pcb->unacked; seg->next != NULL; seg = seg->next); + /* concatenate unsent queue after unacked queue */ + seg->next = pcb->unsent; + /* unsent queue is the concatenated queue (of unacked, unsent) */ + pcb->unsent = pcb->unacked; + /* unacked queue is now empty */ + pcb->unacked = NULL; + + /* increment number of retransmissions */ + ++pcb->nrtx; + + /* Don't take any RTT measurements after retransmitting. */ + pcb->rttest = 0; + + /* Do the actual retransmission */ + tcp_output(pcb); +} + +/** + * Requeue the first unacked segment for retransmission + * + * Called by tcp_receive() for fast retramsmit. + * + * @param pcb the tcp_pcb for which to retransmit the first unacked segment + */ +void +tcp_rexmit(struct tcp_pcb *pcb) +{ + struct tcp_seg *seg; + struct tcp_seg **cur_seg; + + if (pcb->unacked == NULL) { + return; + } + + /* Move the first unacked segment to the unsent queue */ + /* Keep the unsent queue sorted. */ + seg = pcb->unacked; + pcb->unacked = seg->next; + + cur_seg = &(pcb->unsent); + while (*cur_seg && + TCP_SEQ_LT(ntohl((*cur_seg)->tcphdr->seqno), ntohl(seg->tcphdr->seqno))) { + cur_seg = &((*cur_seg)->next ); + } + seg->next = *cur_seg; + *cur_seg = seg; + + ++pcb->nrtx; + + /* Don't take any rtt measurements after retransmitting. */ + pcb->rttest = 0; + + /* Do the actual retransmission. */ + snmp_inc_tcpretranssegs(); + /* No need to call tcp_output: we are always called from tcp_input() + and thus tcp_output directly returns. */ +} + + +/** + * Handle retransmission after three dupacks received + * + * @param pcb the tcp_pcb for which to retransmit the first unacked segment + */ +void +tcp_rexmit_fast(struct tcp_pcb *pcb) +{ + if (pcb->unacked != NULL && !(pcb->flags & TF_INFR)) { + /* This is fast retransmit. Retransmit the first unacked segment. */ + LWIP_DEBUGF(TCP_FR_DEBUG, + ("tcp_receive: dupacks %"U16_F" (%"U32_F + "), fast retransmit %"U32_F"\n", + (u16_t)pcb->dupacks, pcb->lastack, + ntohl(pcb->unacked->tcphdr->seqno))); + tcp_rexmit(pcb); + + /* Set ssthresh to half of the minimum of the current + * cwnd and the advertised window */ + if (pcb->cwnd > pcb->snd_wnd) + pcb->ssthresh = pcb->snd_wnd / 2; + else + pcb->ssthresh = pcb->cwnd / 2; + + /* The minimum value for ssthresh should be 2 MSS */ + if (pcb->ssthresh < 2*pcb->mss) { + LWIP_DEBUGF(TCP_FR_DEBUG, + ("tcp_receive: The minimum value for ssthresh %"U16_F + " should be min 2 mss %"U16_F"...\n", + pcb->ssthresh, 2*pcb->mss)); + pcb->ssthresh = 2*pcb->mss; + } + + pcb->cwnd = pcb->ssthresh + 3 * pcb->mss; + pcb->flags |= TF_INFR; + } +} + + +/** + * Send keepalive packets to keep a connection active although + * no data is sent over it. + * + * Called by tcp_slowtmr() + * + * @param pcb the tcp_pcb for which to send a keepalive packet + */ +void +tcp_keepalive(struct tcp_pcb *pcb) +{ + struct pbuf *p; + struct tcp_hdr *tcphdr; + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_keepalive: sending KEEPALIVE probe to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n", + ip4_addr1(&pcb->remote_ip), ip4_addr2(&pcb->remote_ip), + ip4_addr3(&pcb->remote_ip), ip4_addr4(&pcb->remote_ip))); + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_keepalive: tcp_ticks %"U32_F" pcb->tmr %"U32_F" pcb->keep_cnt_sent %"U16_F"\n", + tcp_ticks, pcb->tmr, pcb->keep_cnt_sent)); + + p = pbuf_alloc(PBUF_IP, TCP_HLEN, PBUF_RAM); + + if(p == NULL) { + LWIP_DEBUGF(TCP_DEBUG, + ("tcp_keepalive: could not allocate memory for pbuf\n")); + return; + } + LWIP_ASSERT("check that first pbuf can hold struct tcp_hdr", + (p->len >= sizeof(struct tcp_hdr))); + + tcphdr = tcp_output_set_header(pcb, p, 0, htonl(pcb->snd_nxt - 1)); + +#if CHECKSUM_GEN_TCP + tcphdr->chksum = inet_chksum_pseudo(p, &pcb->local_ip, &pcb->remote_ip, + IP_PROTO_TCP, p->tot_len); +#endif + TCP_STATS_INC(tcp.xmit); + + /* Send output to IP */ +#if LWIP_NETIF_HWADDRHINT + ip_output_hinted(p, &pcb->local_ip, &pcb->remote_ip, pcb->ttl, 0, IP_PROTO_TCP, + &(pcb->addr_hint)); +#else /* LWIP_NETIF_HWADDRHINT*/ + ip_output(p, &pcb->local_ip, &pcb->remote_ip, pcb->ttl, 0, IP_PROTO_TCP); +#endif /* LWIP_NETIF_HWADDRHINT*/ + + pbuf_free(p); + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_keepalive: seqno %"U32_F" ackno %"U32_F".\n", + pcb->snd_nxt - 1, pcb->rcv_nxt)); +} + + +/** + * Send persist timer zero-window probes to keep a connection active + * when a window update is lost. + * + * Called by tcp_slowtmr() + * + * @param pcb the tcp_pcb for which to send a zero-window probe packet + */ +void +tcp_zero_window_probe(struct tcp_pcb *pcb) +{ + struct pbuf *p; + struct tcp_hdr *tcphdr; + struct tcp_seg *seg; + u16_t len; + u8_t is_fin; + + LWIP_DEBUGF(TCP_DEBUG, + ("tcp_zero_window_probe: sending ZERO WINDOW probe to %" + U16_F".%"U16_F".%"U16_F".%"U16_F"\n", + ip4_addr1(&pcb->remote_ip), ip4_addr2(&pcb->remote_ip), + ip4_addr3(&pcb->remote_ip), ip4_addr4(&pcb->remote_ip))); + + LWIP_DEBUGF(TCP_DEBUG, + ("tcp_zero_window_probe: tcp_ticks %"U32_F + " pcb->tmr %"U32_F" pcb->keep_cnt_sent %"U16_F"\n", + tcp_ticks, pcb->tmr, pcb->keep_cnt_sent)); + + seg = pcb->unacked; + + if(seg == NULL) + seg = pcb->unsent; + + if(seg == NULL) + return; + + is_fin = ((TCPH_FLAGS(seg->tcphdr) & TCP_FIN) != 0) && (seg->len == 0); + len = is_fin ? TCP_HLEN : TCP_HLEN + 1; + + p = pbuf_alloc(PBUF_IP, len, PBUF_RAM); + if(p == NULL) { + LWIP_DEBUGF(TCP_DEBUG, ("tcp_zero_window_probe: no memory for pbuf\n")); + return; + } + LWIP_ASSERT("check that first pbuf can hold struct tcp_hdr", + (p->len >= sizeof(struct tcp_hdr))); + + tcphdr = tcp_output_set_header(pcb, p, 0, seg->tcphdr->seqno); + + if (is_fin) { + /* FIN segment, no data */ + TCPH_FLAGS_SET(tcphdr, TCP_ACK | TCP_FIN); + } else { + /* Data segment, copy in one byte from the head of the unacked queue */ + *((char *)p->payload + sizeof(struct tcp_hdr)) = *(char *)seg->dataptr; + } + +#if CHECKSUM_GEN_TCP + tcphdr->chksum = inet_chksum_pseudo(p, &pcb->local_ip, &pcb->remote_ip, + IP_PROTO_TCP, p->tot_len); +#endif + TCP_STATS_INC(tcp.xmit); + + /* Send output to IP */ +#if LWIP_NETIF_HWADDRHINT + ip_output_hinted(p, &pcb->local_ip, &pcb->remote_ip, pcb->ttl, 0, IP_PROTO_TCP, + &(pcb->addr_hint)); +#else /* LWIP_NETIF_HWADDRHINT*/ + ip_output(p, &pcb->local_ip, &pcb->remote_ip, pcb->ttl, 0, IP_PROTO_TCP); +#endif /* LWIP_NETIF_HWADDRHINT*/ + + pbuf_free(p); + + LWIP_DEBUGF(TCP_DEBUG, ("tcp_zero_window_probe: seqno %"U32_F + " ackno %"U32_F".\n", + pcb->snd_nxt - 1, pcb->rcv_nxt)); +} +#endif /* LWIP_TCP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/udp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/udp.c new file mode 100644 index 000000000..697ca7ce3 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/core/udp.c @@ -0,0 +1,843 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * User Datagram Protocol module + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + + +/* udp.c + * + * The code for the User Datagram Protocol UDP & UDPLite (RFC 3828). + * + */ + +/* @todo Check the use of '(struct udp_pcb).chksum_len_rx'! + */ + +#include "lwip/opt.h" + +#if LWIP_UDP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/udp.h" +#include "lwip/def.h" +#include "lwip/memp.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/icmp.h" +#include "lwip/stats.h" +#include "lwip/snmp.h" +#include "arch/perf.h" +#include "lwip/dhcp.h" + +#include <string.h> + +/* The list of UDP PCBs */ +/* exported in udp.h (was static) */ +struct udp_pcb *udp_pcbs; + +/** + * Process an incoming UDP datagram. + * + * Given an incoming UDP datagram (as a chain of pbufs) this function + * finds a corresponding UDP PCB and hands over the pbuf to the pcbs + * recv function. If no pcb is found or the datagram is incorrect, the + * pbuf is freed. + * + * @param p pbuf to be demultiplexed to a UDP PCB. + * @param inp network interface on which the datagram was received. + * + */ +void +udp_input(struct pbuf *p, struct netif *inp) +{ + struct udp_hdr *udphdr; + struct udp_pcb *pcb, *prev; + struct udp_pcb *uncon_pcb; + struct ip_hdr *iphdr; + u16_t src, dest; + u8_t local_match; + u8_t broadcast; + + PERF_START; + + UDP_STATS_INC(udp.recv); + + iphdr = p->payload; + + /* Check minimum length (IP header + UDP header) + * and move payload pointer to UDP header */ + if (p->tot_len < (IPH_HL(iphdr) * 4 + UDP_HLEN) || pbuf_header(p, -(s16_t)(IPH_HL(iphdr) * 4))) { + /* drop short packets */ + LWIP_DEBUGF(UDP_DEBUG, + ("udp_input: short UDP datagram (%"U16_F" bytes) discarded\n", p->tot_len)); + UDP_STATS_INC(udp.lenerr); + UDP_STATS_INC(udp.drop); + snmp_inc_udpinerrors(); + pbuf_free(p); + goto end; + } + + udphdr = (struct udp_hdr *)p->payload; + + /* is broadcast packet ? */ + broadcast = ip_addr_isbroadcast(&(iphdr->dest), inp); + + LWIP_DEBUGF(UDP_DEBUG, ("udp_input: received datagram of length %"U16_F"\n", p->tot_len)); + + /* convert src and dest ports to host byte order */ + src = ntohs(udphdr->src); + dest = ntohs(udphdr->dest); + + udp_debug_print(udphdr); + + /* print the UDP source and destination */ + LWIP_DEBUGF(UDP_DEBUG, + ("udp (%"U16_F".%"U16_F".%"U16_F".%"U16_F", %"U16_F") <-- " + "(%"U16_F".%"U16_F".%"U16_F".%"U16_F", %"U16_F")\n", + ip4_addr1(&iphdr->dest), ip4_addr2(&iphdr->dest), + ip4_addr3(&iphdr->dest), ip4_addr4(&iphdr->dest), ntohs(udphdr->dest), + ip4_addr1(&iphdr->src), ip4_addr2(&iphdr->src), + ip4_addr3(&iphdr->src), ip4_addr4(&iphdr->src), ntohs(udphdr->src))); + +#if LWIP_DHCP + pcb = NULL; + /* when LWIP_DHCP is active, packets to DHCP_CLIENT_PORT may only be processed by + the dhcp module, no other UDP pcb may use the local UDP port DHCP_CLIENT_PORT */ + if (dest == DHCP_CLIENT_PORT) { + /* all packets for DHCP_CLIENT_PORT not coming from DHCP_SERVER_PORT are dropped! */ + if (src == DHCP_SERVER_PORT) { + if ((inp->dhcp != NULL) && (inp->dhcp->pcb != NULL)) { + /* accept the packe if + (- broadcast or directed to us) -> DHCP is link-layer-addressed, local ip is always ANY! + - inp->dhcp->pcb->remote == ANY or iphdr->src */ + if ((ip_addr_isany(&inp->dhcp->pcb->remote_ip) || + ip_addr_cmp(&(inp->dhcp->pcb->remote_ip), &(iphdr->src)))) { + pcb = inp->dhcp->pcb; + } + } + } + } else +#endif /* LWIP_DHCP */ + { + prev = NULL; + local_match = 0; + uncon_pcb = NULL; + /* Iterate through the UDP pcb list for a matching pcb. + * 'Perfect match' pcbs (connected to the remote port & ip address) are + * preferred. If no perfect match is found, the first unconnected pcb that + * matches the local port and ip address gets the datagram. */ + for (pcb = udp_pcbs; pcb != NULL; pcb = pcb->next) { + local_match = 0; + /* print the PCB local and remote address */ + LWIP_DEBUGF(UDP_DEBUG, + ("pcb (%"U16_F".%"U16_F".%"U16_F".%"U16_F", %"U16_F") --- " + "(%"U16_F".%"U16_F".%"U16_F".%"U16_F", %"U16_F")\n", + ip4_addr1(&pcb->local_ip), ip4_addr2(&pcb->local_ip), + ip4_addr3(&pcb->local_ip), ip4_addr4(&pcb->local_ip), pcb->local_port, + ip4_addr1(&pcb->remote_ip), ip4_addr2(&pcb->remote_ip), + ip4_addr3(&pcb->remote_ip), ip4_addr4(&pcb->remote_ip), pcb->remote_port)); + + /* compare PCB local addr+port to UDP destination addr+port */ + if ((pcb->local_port == dest) && + ((!broadcast && ip_addr_isany(&pcb->local_ip)) || + ip_addr_cmp(&(pcb->local_ip), &(iphdr->dest)) || +#if LWIP_IGMP + ip_addr_ismulticast(&(iphdr->dest)) || +#endif /* LWIP_IGMP */ +#if IP_SOF_BROADCAST_RECV + (broadcast && (pcb->so_options & SOF_BROADCAST)))) { +#else /* IP_SOF_BROADCAST_RECV */ + (broadcast))) { +#endif /* IP_SOF_BROADCAST_RECV */ + local_match = 1; + if ((uncon_pcb == NULL) && + ((pcb->flags & UDP_FLAGS_CONNECTED) == 0)) { + /* the first unconnected matching PCB */ + uncon_pcb = pcb; + } + } + /* compare PCB remote addr+port to UDP source addr+port */ + if ((local_match != 0) && + (pcb->remote_port == src) && + (ip_addr_isany(&pcb->remote_ip) || + ip_addr_cmp(&(pcb->remote_ip), &(iphdr->src)))) { + /* the first fully matching PCB */ + if (prev != NULL) { + /* move the pcb to the front of udp_pcbs so that is + found faster next time */ + prev->next = pcb->next; + pcb->next = udp_pcbs; + udp_pcbs = pcb; + } else { + UDP_STATS_INC(udp.cachehit); + } + break; + } + prev = pcb; + } + /* no fully matching pcb found? then look for an unconnected pcb */ + if (pcb == NULL) { + pcb = uncon_pcb; + } + } + + /* Check checksum if this is a match or if it was directed at us. */ + if (pcb != NULL || ip_addr_cmp(&inp->ip_addr, &iphdr->dest)) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE, ("udp_input: calculating checksum\n")); +#if LWIP_UDPLITE + if (IPH_PROTO(iphdr) == IP_PROTO_UDPLITE) { + /* Do the UDP Lite checksum */ +#if CHECKSUM_CHECK_UDP + u16_t chklen = ntohs(udphdr->len); + if (chklen < sizeof(struct udp_hdr)) { + if (chklen == 0) { + /* For UDP-Lite, checksum length of 0 means checksum + over the complete packet (See RFC 3828 chap. 3.1) */ + chklen = p->tot_len; + } else { + /* At least the UDP-Lite header must be covered by the + checksum! (Again, see RFC 3828 chap. 3.1) */ + UDP_STATS_INC(udp.chkerr); + UDP_STATS_INC(udp.drop); + snmp_inc_udpinerrors(); + pbuf_free(p); + goto end; + } + } + if (inet_chksum_pseudo_partial(p, (struct ip_addr *)&(iphdr->src), + (struct ip_addr *)&(iphdr->dest), + IP_PROTO_UDPLITE, p->tot_len, chklen) != 0) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("udp_input: UDP Lite datagram discarded due to failing checksum\n")); + UDP_STATS_INC(udp.chkerr); + UDP_STATS_INC(udp.drop); + snmp_inc_udpinerrors(); + pbuf_free(p); + goto end; + } +#endif /* CHECKSUM_CHECK_UDP */ + } else +#endif /* LWIP_UDPLITE */ + { +#if CHECKSUM_CHECK_UDP + if (udphdr->chksum != 0) { + if (inet_chksum_pseudo(p, (struct ip_addr *)&(iphdr->src), + (struct ip_addr *)&(iphdr->dest), + IP_PROTO_UDP, p->tot_len) != 0) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("udp_input: UDP datagram discarded due to failing checksum\n")); + UDP_STATS_INC(udp.chkerr); + UDP_STATS_INC(udp.drop); + snmp_inc_udpinerrors(); + pbuf_free(p); + goto end; + } + } +#endif /* CHECKSUM_CHECK_UDP */ + } + if(pbuf_header(p, -UDP_HLEN)) { + /* Can we cope with this failing? Just assert for now */ + LWIP_ASSERT("pbuf_header failed\n", 0); + UDP_STATS_INC(udp.drop); + snmp_inc_udpinerrors(); + pbuf_free(p); + goto end; + } + if (pcb != NULL) { + snmp_inc_udpindatagrams(); + /* callback */ + if (pcb->recv != NULL) { + /* now the recv function is responsible for freeing p */ + pcb->recv(pcb->recv_arg, pcb, p, &iphdr->src, src); + } else { + /* no recv function registered? then we have to free the pbuf! */ + pbuf_free(p); + goto end; + } + } else { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE, ("udp_input: not for us.\n")); + +#if LWIP_ICMP + /* No match was found, send ICMP destination port unreachable unless + destination address was broadcast/multicast. */ + if (!broadcast && + !ip_addr_ismulticast(&iphdr->dest)) { + /* move payload pointer back to ip header */ + pbuf_header(p, (IPH_HL(iphdr) * 4) + UDP_HLEN); + LWIP_ASSERT("p->payload == iphdr", (p->payload == iphdr)); + icmp_dest_unreach(p, ICMP_DUR_PORT); + } +#endif /* LWIP_ICMP */ + UDP_STATS_INC(udp.proterr); + UDP_STATS_INC(udp.drop); + snmp_inc_udpnoports(); + pbuf_free(p); + } + } else { + pbuf_free(p); + } +end: + PERF_STOP("udp_input"); +} + +/** + * Send data using UDP. + * + * @param pcb UDP PCB used to send the data. + * @param p chain of pbuf's to be sent. + * + * The datagram will be sent to the current remote_ip & remote_port + * stored in pcb. If the pcb is not bound to a port, it will + * automatically be bound to a random port. + * + * @return lwIP error code. + * - ERR_OK. Successful. No error occured. + * - ERR_MEM. Out of memory. + * - ERR_RTE. Could not find route to destination address. + * - More errors could be returned by lower protocol layers. + * + * @see udp_disconnect() udp_sendto() + */ +err_t +udp_send(struct udp_pcb *pcb, struct pbuf *p) +{ + /* send to the packet using remote ip and port stored in the pcb */ + return udp_sendto(pcb, p, &pcb->remote_ip, pcb->remote_port); +} + +/** + * Send data to a specified address using UDP. + * + * @param pcb UDP PCB used to send the data. + * @param p chain of pbuf's to be sent. + * @param dst_ip Destination IP address. + * @param dst_port Destination UDP port. + * + * dst_ip & dst_port are expected to be in the same byte order as in the pcb. + * + * If the PCB already has a remote address association, it will + * be restored after the data is sent. + * + * @return lwIP error code (@see udp_send for possible error codes) + * + * @see udp_disconnect() udp_send() + */ +err_t +udp_sendto(struct udp_pcb *pcb, struct pbuf *p, + struct ip_addr *dst_ip, u16_t dst_port) +{ + struct netif *netif; + + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE, ("udp_send\n")); + + /* find the outgoing network interface for this packet */ +#if LWIP_IGMP + netif = ip_route((ip_addr_ismulticast(dst_ip))?(&(pcb->multicast_ip)):(dst_ip)); +#else + netif = ip_route(dst_ip); +#endif /* LWIP_IGMP */ + + /* no outgoing network interface could be found? */ + if (netif == NULL) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("udp_send: No route to 0x%"X32_F"\n", dst_ip->addr)); + UDP_STATS_INC(udp.rterr); + return ERR_RTE; + } + return udp_sendto_if(pcb, p, dst_ip, dst_port, netif); +} + +/** + * Send data to a specified address using UDP. + * The netif used for sending can be specified. + * + * This function exists mainly for DHCP, to be able to send UDP packets + * on a netif that is still down. + * + * @param pcb UDP PCB used to send the data. + * @param p chain of pbuf's to be sent. + * @param dst_ip Destination IP address. + * @param dst_port Destination UDP port. + * @param netif the netif used for sending. + * + * dst_ip & dst_port are expected to be in the same byte order as in the pcb. + * + * @return lwIP error code (@see udp_send for possible error codes) + * + * @see udp_disconnect() udp_send() + */ +err_t +udp_sendto_if(struct udp_pcb *pcb, struct pbuf *p, + struct ip_addr *dst_ip, u16_t dst_port, struct netif *netif) +{ + struct udp_hdr *udphdr; + struct ip_addr *src_ip; + err_t err; + struct pbuf *q; /* q will be sent down the stack */ + +#if IP_SOF_BROADCAST + /* broadcast filter? */ + if ( ((pcb->so_options & SOF_BROADCAST) == 0) && ip_addr_isbroadcast(dst_ip, netif) ) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, + ("udp_sendto_if: SOF_BROADCAST not enabled on pcb %p\n", (void *)pcb)); + return ERR_VAL; + } +#endif /* IP_SOF_BROADCAST */ + + /* if the PCB is not yet bound to a port, bind it here */ + if (pcb->local_port == 0) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE, ("udp_send: not yet bound to a port, binding now\n")); + err = udp_bind(pcb, &pcb->local_ip, pcb->local_port); + if (err != ERR_OK) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("udp_send: forced port bind failed\n")); + return err; + } + } + + /* not enough space to add an UDP header to first pbuf in given p chain? */ + if (pbuf_header(p, UDP_HLEN)) { + /* allocate header in a separate new pbuf */ + q = pbuf_alloc(PBUF_IP, UDP_HLEN, PBUF_RAM); + /* new header pbuf could not be allocated? */ + if (q == NULL) { + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, ("udp_send: could not allocate header\n")); + return ERR_MEM; + } + /* chain header q in front of given pbuf p */ + pbuf_chain(q, p); + /* first pbuf q points to header pbuf */ + LWIP_DEBUGF(UDP_DEBUG, + ("udp_send: added header pbuf %p before given pbuf %p\n", (void *)q, (void *)p)); + } else { + /* adding space for header within p succeeded */ + /* first pbuf q equals given pbuf */ + q = p; + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: added header in given pbuf %p\n", (void *)p)); + } + LWIP_ASSERT("check that first pbuf can hold struct udp_hdr", + (q->len >= sizeof(struct udp_hdr))); + /* q now represents the packet to be sent */ + udphdr = q->payload; + udphdr->src = htons(pcb->local_port); + udphdr->dest = htons(dst_port); + /* in UDP, 0 checksum means 'no checksum' */ + udphdr->chksum = 0x0000; + + /* PCB local address is IP_ANY_ADDR? */ + if (ip_addr_isany(&pcb->local_ip)) { + /* use outgoing network interface IP address as source address */ + src_ip = &(netif->ip_addr); + } else { + /* check if UDP PCB local IP address is correct + * this could be an old address if netif->ip_addr has changed */ + if (!ip_addr_cmp(&(pcb->local_ip), &(netif->ip_addr))) { + /* local_ip doesn't match, drop the packet */ + if (q != p) { + /* free the header pbuf */ + pbuf_free(q); + q = NULL; + /* p is still referenced by the caller, and will live on */ + } + return ERR_VAL; + } + /* use UDP PCB local IP address as source address */ + src_ip = &(pcb->local_ip); + } + + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: sending datagram of length %"U16_F"\n", q->tot_len)); + +#if LWIP_UDPLITE + /* UDP Lite protocol? */ + if (pcb->flags & UDP_FLAGS_UDPLITE) { + u16_t chklen, chklen_hdr; + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: UDP LITE packet length %"U16_F"\n", q->tot_len)); + /* set UDP message length in UDP header */ + chklen_hdr = chklen = pcb->chksum_len_tx; + if ((chklen < sizeof(struct udp_hdr)) || (chklen > q->tot_len)) { + if (chklen != 0) { + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: UDP LITE pcb->chksum_len is illegal: %"U16_F"\n", chklen)); + } + /* For UDP-Lite, checksum length of 0 means checksum + over the complete packet. (See RFC 3828 chap. 3.1) + At least the UDP-Lite header must be covered by the + checksum, therefore, if chksum_len has an illegal + value, we generate the checksum over the complete + packet to be safe. */ + chklen_hdr = 0; + chklen = q->tot_len; + } + udphdr->len = htons(chklen_hdr); + /* calculate checksum */ +#if CHECKSUM_GEN_UDP + udphdr->chksum = inet_chksum_pseudo_partial(q, src_ip, dst_ip, + IP_PROTO_UDPLITE, q->tot_len, chklen); + /* chksum zero must become 0xffff, as zero means 'no checksum' */ + if (udphdr->chksum == 0x0000) + udphdr->chksum = 0xffff; +#endif /* CHECKSUM_CHECK_UDP */ + /* output to IP */ + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: ip_output_if (,,,,IP_PROTO_UDPLITE,)\n")); +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = &(pcb->addr_hint); +#endif /* LWIP_NETIF_HWADDRHINT*/ + err = ip_output_if(q, src_ip, dst_ip, pcb->ttl, pcb->tos, IP_PROTO_UDPLITE, netif); +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = NULL; +#endif /* LWIP_NETIF_HWADDRHINT*/ + } else +#endif /* LWIP_UDPLITE */ + { /* UDP */ + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: UDP packet length %"U16_F"\n", q->tot_len)); + udphdr->len = htons(q->tot_len); + /* calculate checksum */ +#if CHECKSUM_GEN_UDP + if ((pcb->flags & UDP_FLAGS_NOCHKSUM) == 0) { + udphdr->chksum = inet_chksum_pseudo(q, src_ip, dst_ip, IP_PROTO_UDP, q->tot_len); + /* chksum zero must become 0xffff, as zero means 'no checksum' */ + if (udphdr->chksum == 0x0000) udphdr->chksum = 0xffff; + } +#endif /* CHECKSUM_CHECK_UDP */ + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: UDP checksum 0x%04"X16_F"\n", udphdr->chksum)); + LWIP_DEBUGF(UDP_DEBUG, ("udp_send: ip_output_if (,,,,IP_PROTO_UDP,)\n")); + /* output to IP */ +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = &(pcb->addr_hint); +#endif /* LWIP_NETIF_HWADDRHINT*/ + err = ip_output_if(q, src_ip, dst_ip, pcb->ttl, pcb->tos, IP_PROTO_UDP, netif); +#if LWIP_NETIF_HWADDRHINT + netif->addr_hint = NULL; +#endif /* LWIP_NETIF_HWADDRHINT*/ + } + /* TODO: must this be increased even if error occured? */ + snmp_inc_udpoutdatagrams(); + + /* did we chain a separate header pbuf earlier? */ + if (q != p) { + /* free the header pbuf */ + pbuf_free(q); + q = NULL; + /* p is still referenced by the caller, and will live on */ + } + + UDP_STATS_INC(udp.xmit); + return err; +} + +/** + * Bind an UDP PCB. + * + * @param pcb UDP PCB to be bound with a local address ipaddr and port. + * @param ipaddr local IP address to bind with. Use IP_ADDR_ANY to + * bind to all local interfaces. + * @param port local UDP port to bind with. Use 0 to automatically bind + * to a random port between UDP_LOCAL_PORT_RANGE_START and + * UDP_LOCAL_PORT_RANGE_END. + * + * ipaddr & port are expected to be in the same byte order as in the pcb. + * + * @return lwIP error code. + * - ERR_OK. Successful. No error occured. + * - ERR_USE. The specified ipaddr and port are already bound to by + * another UDP PCB. + * + * @see udp_disconnect() + */ +err_t +udp_bind(struct udp_pcb *pcb, struct ip_addr *ipaddr, u16_t port) +{ + struct udp_pcb *ipcb; + u8_t rebind; + + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE, ("udp_bind(ipaddr = ")); + ip_addr_debug_print(UDP_DEBUG, ipaddr); + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE, (", port = %"U16_F")\n", port)); + + rebind = 0; + /* Check for double bind and rebind of the same pcb */ + for (ipcb = udp_pcbs; ipcb != NULL; ipcb = ipcb->next) { + /* is this UDP PCB already on active list? */ + if (pcb == ipcb) { + /* pcb may occur at most once in active list */ + LWIP_ASSERT("rebind == 0", rebind == 0); + /* pcb already in list, just rebind */ + rebind = 1; + } + + /* this code does not allow upper layer to share a UDP port for + listening to broadcast or multicast traffic (See SO_REUSE_ADDR and + SO_REUSE_PORT under *BSD). TODO: See where it fits instead, OR + combine with implementation of UDP PCB flags. Leon Woestenberg. */ +#ifdef LWIP_UDP_TODO + /* port matches that of PCB in list? */ + else + if ((ipcb->local_port == port) && + /* IP address matches, or one is IP_ADDR_ANY? */ + (ip_addr_isany(&(ipcb->local_ip)) || + ip_addr_isany(ipaddr) || + ip_addr_cmp(&(ipcb->local_ip), ipaddr))) { + /* other PCB already binds to this local IP and port */ + LWIP_DEBUGF(UDP_DEBUG, + ("udp_bind: local port %"U16_F" already bound by another pcb\n", port)); + return ERR_USE; + } +#endif + } + + ip_addr_set(&pcb->local_ip, ipaddr); + + /* no port specified? */ + if (port == 0) { +#ifndef UDP_LOCAL_PORT_RANGE_START +#define UDP_LOCAL_PORT_RANGE_START 4096 +#define UDP_LOCAL_PORT_RANGE_END 0x7fff +#endif + port = UDP_LOCAL_PORT_RANGE_START; + ipcb = udp_pcbs; + while ((ipcb != NULL) && (port != UDP_LOCAL_PORT_RANGE_END)) { + if (ipcb->local_port == port) { + /* port is already used by another udp_pcb */ + port++; + /* restart scanning all udp pcbs */ + ipcb = udp_pcbs; + } else + /* go on with next udp pcb */ + ipcb = ipcb->next; + } + if (ipcb != NULL) { + /* no more ports available in local range */ + LWIP_DEBUGF(UDP_DEBUG, ("udp_bind: out of free UDP ports\n")); + return ERR_USE; + } + } + pcb->local_port = port; + snmp_insert_udpidx_tree(pcb); + /* pcb not active yet? */ + if (rebind == 0) { + /* place the PCB on the active list if not already there */ + pcb->next = udp_pcbs; + udp_pcbs = pcb; + } + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("udp_bind: bound to %"U16_F".%"U16_F".%"U16_F".%"U16_F", port %"U16_F"\n", + (u16_t)((ntohl(pcb->local_ip.addr) >> 24) & 0xff), + (u16_t)((ntohl(pcb->local_ip.addr) >> 16) & 0xff), + (u16_t)((ntohl(pcb->local_ip.addr) >> 8) & 0xff), + (u16_t)(ntohl(pcb->local_ip.addr) & 0xff), pcb->local_port)); + return ERR_OK; +} +/** + * Connect an UDP PCB. + * + * This will associate the UDP PCB with the remote address. + * + * @param pcb UDP PCB to be connected with remote address ipaddr and port. + * @param ipaddr remote IP address to connect with. + * @param port remote UDP port to connect with. + * + * @return lwIP error code + * + * ipaddr & port are expected to be in the same byte order as in the pcb. + * + * The udp pcb is bound to a random local port if not already bound. + * + * @see udp_disconnect() + */ +err_t +udp_connect(struct udp_pcb *pcb, struct ip_addr *ipaddr, u16_t port) +{ + struct udp_pcb *ipcb; + + if (pcb->local_port == 0) { + err_t err = udp_bind(pcb, &pcb->local_ip, pcb->local_port); + if (err != ERR_OK) + return err; + } + + ip_addr_set(&pcb->remote_ip, ipaddr); + pcb->remote_port = port; + pcb->flags |= UDP_FLAGS_CONNECTED; +/** TODO: this functionality belongs in upper layers */ +#ifdef LWIP_UDP_TODO + /* Nail down local IP for netconn_addr()/getsockname() */ + if (ip_addr_isany(&pcb->local_ip) && !ip_addr_isany(&pcb->remote_ip)) { + struct netif *netif; + + if ((netif = ip_route(&(pcb->remote_ip))) == NULL) { + LWIP_DEBUGF(UDP_DEBUG, ("udp_connect: No route to 0x%lx\n", pcb->remote_ip.addr)); + UDP_STATS_INC(udp.rterr); + return ERR_RTE; + } + /** TODO: this will bind the udp pcb locally, to the interface which + is used to route output packets to the remote address. However, we + might want to accept incoming packets on any interface! */ + pcb->local_ip = netif->ip_addr; + } else if (ip_addr_isany(&pcb->remote_ip)) { + pcb->local_ip.addr = 0; + } +#endif + LWIP_DEBUGF(UDP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, + ("udp_connect: connected to %"U16_F".%"U16_F".%"U16_F".%"U16_F",port %"U16_F"\n", + (u16_t)((ntohl(pcb->remote_ip.addr) >> 24) & 0xff), + (u16_t)((ntohl(pcb->remote_ip.addr) >> 16) & 0xff), + (u16_t)((ntohl(pcb->remote_ip.addr) >> 8) & 0xff), + (u16_t)(ntohl(pcb->remote_ip.addr) & 0xff), pcb->remote_port)); + + /* Insert UDP PCB into the list of active UDP PCBs. */ + for (ipcb = udp_pcbs; ipcb != NULL; ipcb = ipcb->next) { + if (pcb == ipcb) { + /* already on the list, just return */ + return ERR_OK; + } + } + /* PCB not yet on the list, add PCB now */ + pcb->next = udp_pcbs; + udp_pcbs = pcb; + return ERR_OK; +} + +/** + * Disconnect a UDP PCB + * + * @param pcb the udp pcb to disconnect. + */ +void +udp_disconnect(struct udp_pcb *pcb) +{ + /* reset remote address association */ + ip_addr_set(&pcb->remote_ip, IP_ADDR_ANY); + pcb->remote_port = 0; + /* mark PCB as unconnected */ + pcb->flags &= ~UDP_FLAGS_CONNECTED; +} + +/** + * Set a receive callback for a UDP PCB + * + * This callback will be called when receiving a datagram for the pcb. + * + * @param pcb the pcb for wich to set the recv callback + * @param recv function pointer of the callback function + * @param recv_arg additional argument to pass to the callback function + */ +void +udp_recv(struct udp_pcb *pcb, + void (* recv)(void *arg, struct udp_pcb *upcb, struct pbuf *p, + struct ip_addr *addr, u16_t port), + void *recv_arg) +{ + /* remember recv() callback and user data */ + pcb->recv = recv; + pcb->recv_arg = recv_arg; +} + +/** + * Remove an UDP PCB. + * + * @param pcb UDP PCB to be removed. The PCB is removed from the list of + * UDP PCB's and the data structure is freed from memory. + * + * @see udp_new() + */ +void +udp_remove(struct udp_pcb *pcb) +{ + struct udp_pcb *pcb2; + + snmp_delete_udpidx_tree(pcb); + /* pcb to be removed is first in list? */ + if (udp_pcbs == pcb) { + /* make list start at 2nd pcb */ + udp_pcbs = udp_pcbs->next; + /* pcb not 1st in list */ + } else + for (pcb2 = udp_pcbs; pcb2 != NULL; pcb2 = pcb2->next) { + /* find pcb in udp_pcbs list */ + if (pcb2->next != NULL && pcb2->next == pcb) { + /* remove pcb from list */ + pcb2->next = pcb->next; + } + } + memp_free(MEMP_UDP_PCB, pcb); +} + +/** + * Create a UDP PCB. + * + * @return The UDP PCB which was created. NULL if the PCB data structure + * could not be allocated. + * + * @see udp_remove() + */ +struct udp_pcb * +udp_new(void) +{ + struct udp_pcb *pcb; + pcb = memp_malloc(MEMP_UDP_PCB); + /* could allocate UDP PCB? */ + if (pcb != NULL) { + /* UDP Lite: by initializing to all zeroes, chksum_len is set to 0 + * which means checksum is generated over the whole datagram per default + * (recommended as default by RFC 3828). */ + /* initialize PCB to all zeroes */ + memset(pcb, 0, sizeof(struct udp_pcb)); + pcb->ttl = UDP_TTL; + } + return pcb; +} + +#if UDP_DEBUG +/** + * Print UDP header information for debug purposes. + * + * @param udphdr pointer to the udp header in memory. + */ +void +udp_debug_print(struct udp_hdr *udphdr) +{ + LWIP_DEBUGF(UDP_DEBUG, ("UDP header:\n")); + LWIP_DEBUGF(UDP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(UDP_DEBUG, ("| %5"U16_F" | %5"U16_F" | (src port, dest port)\n", + ntohs(udphdr->src), ntohs(udphdr->dest))); + LWIP_DEBUGF(UDP_DEBUG, ("+-------------------------------+\n")); + LWIP_DEBUGF(UDP_DEBUG, ("| %5"U16_F" | 0x%04"X16_F" | (len, chksum)\n", + ntohs(udphdr->len), ntohs(udphdr->chksum))); + LWIP_DEBUGF(UDP_DEBUG, ("+-------------------------------+\n")); +} +#endif /* UDP_DEBUG */ + +#endif /* LWIP_UDP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/autoip.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/autoip.h new file mode 100644 index 000000000..d5464b709 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/autoip.h @@ -0,0 +1,118 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * + * AutoIP Automatic LinkLocal IP Configuration + */ + +/* + * + * Copyright (c) 2007 Dominik Spies <kontakt@dspies.de> + * 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. + * + * Author: Dominik Spies <kontakt@dspies.de> + * + * This is a AutoIP implementation for the lwIP TCP/IP stack. It aims to conform + * with RFC 3927. + * + * + * Please coordinate changes and requests with Dominik Spies + * <kontakt@dspies.de> + */ + +#ifndef __LWIP_AUTOIP_H__ +#define __LWIP_AUTOIP_H__ + +#include "lwip/opt.h" + +#if LWIP_AUTOIP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/netif.h" +#include "lwip/udp.h" +#include "netif/etharp.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AutoIP Timing */ +#define AUTOIP_TMR_INTERVAL 100 +#define AUTOIP_TICKS_PER_SECOND (1000 / AUTOIP_TMR_INTERVAL) + +/* RFC 3927 Constants */ +#define PROBE_WAIT 1 /* second (initial random delay) */ +#define PROBE_MIN 1 /* second (minimum delay till repeated probe) */ +#define PROBE_MAX 2 /* seconds (maximum delay till repeated probe) */ +#define PROBE_NUM 3 /* (number of probe packets) */ +#define ANNOUNCE_NUM 2 /* (number of announcement packets) */ +#define ANNOUNCE_INTERVAL 2 /* seconds (time between announcement packets) */ +#define ANNOUNCE_WAIT 2 /* seconds (delay before announcing) */ +#define MAX_CONFLICTS 10 /* (max conflicts before rate limiting) */ +#define RATE_LIMIT_INTERVAL 60 /* seconds (delay between successive attempts) */ +#define DEFEND_INTERVAL 10 /* seconds (min. wait between defensive ARPs) */ + +/* AutoIP client states */ +#define AUTOIP_STATE_OFF 0 +#define AUTOIP_STATE_PROBING 1 +#define AUTOIP_STATE_ANNOUNCING 2 +#define AUTOIP_STATE_BOUND 3 + +struct autoip +{ + struct ip_addr llipaddr; /* the currently selected, probed, announced or used LL IP-Address */ + u8_t state; /* current AutoIP state machine state */ + u8_t sent_num; /* sent number of probes or announces, dependent on state */ + u16_t ttw; /* ticks to wait, tick is AUTOIP_TMR_INTERVAL long */ + u8_t lastconflict; /* ticks until a conflict can be solved by defending */ + u8_t tried_llipaddr; /* total number of probed/used Link Local IP-Addresses */ +}; + + +/** Init srand, has to be called before entering mainloop */ +void autoip_init(void); + +/** Start AutoIP client */ +err_t autoip_start(struct netif *netif); + +/** Stop AutoIP client */ +err_t autoip_stop(struct netif *netif); + +/** Handles every incoming ARP Packet, called by etharp_arp_input */ +void autoip_arp_reply(struct netif *netif, struct etharp_hdr *hdr); + +/** Has to be called in loop every AUTOIP_TMR_INTERVAL milliseconds */ +void autoip_tmr(void); + +/** Handle a possible change in the network configuration */ +void autoip_network_changed(struct netif *netif); + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_AUTOIP */ + +#endif /* __LWIP_AUTOIP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/icmp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/icmp.h new file mode 100644 index 000000000..3f917ba04 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/icmp.h @@ -0,0 +1,113 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_ICMP_H__ +#define __LWIP_ICMP_H__ + +#include "lwip/opt.h" +#include "lwip/pbuf.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define ICMP_ER 0 /* echo reply */ +#define ICMP_DUR 3 /* destination unreachable */ +#define ICMP_SQ 4 /* source quench */ +#define ICMP_RD 5 /* redirect */ +#define ICMP_ECHO 8 /* echo */ +#define ICMP_TE 11 /* time exceeded */ +#define ICMP_PP 12 /* parameter problem */ +#define ICMP_TS 13 /* timestamp */ +#define ICMP_TSR 14 /* timestamp reply */ +#define ICMP_IRQ 15 /* information request */ +#define ICMP_IR 16 /* information reply */ + +enum icmp_dur_type { + ICMP_DUR_NET = 0, /* net unreachable */ + ICMP_DUR_HOST = 1, /* host unreachable */ + ICMP_DUR_PROTO = 2, /* protocol unreachable */ + ICMP_DUR_PORT = 3, /* port unreachable */ + ICMP_DUR_FRAG = 4, /* fragmentation needed and DF set */ + ICMP_DUR_SR = 5 /* source route failed */ +}; + +enum icmp_te_type { + ICMP_TE_TTL = 0, /* time to live exceeded in transit */ + ICMP_TE_FRAG = 1 /* fragment reassembly time exceeded */ +}; + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +/** This is the standard ICMP header only that the u32_t data + * is splitted to two u16_t like ICMP echo needs it. + * This header is also used for other ICMP types that do not + * use the data part. + */ +PACK_STRUCT_BEGIN +struct icmp_echo_hdr { + PACK_STRUCT_FIELD(u8_t type); + PACK_STRUCT_FIELD(u8_t code); + PACK_STRUCT_FIELD(u16_t chksum); + PACK_STRUCT_FIELD(u16_t id); + PACK_STRUCT_FIELD(u16_t seqno); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define ICMPH_TYPE(hdr) ((hdr)->type) +#define ICMPH_CODE(hdr) ((hdr)->code) + +/** Combines type and code to an u16_t */ +#define ICMPH_TYPE_SET(hdr, t) ((hdr)->type = (t)) +#define ICMPH_CODE_SET(hdr, c) ((hdr)->code = (c)) + + +#if LWIP_ICMP /* don't build if not configured for use in lwipopts.h */ + +void icmp_input(struct pbuf *p, struct netif *inp); +void icmp_dest_unreach(struct pbuf *p, enum icmp_dur_type t); +void icmp_time_exceeded(struct pbuf *p, enum icmp_te_type t); + +#endif /* LWIP_ICMP */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_ICMP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/igmp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/igmp.h new file mode 100644 index 000000000..da67e7508 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/igmp.h @@ -0,0 +1,164 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2002 CITEL Technologies Ltd. + * 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. Neither the name of CITEL Technologies Ltd nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY CITEL TECHNOLOGIES AND CONTRIBUTORS ``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 CITEL TECHNOLOGIES OR CONTRIBUTORS 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 file is a contribution to the lwIP TCP/IP stack. + * The Swedish Institute of Computer Science and Adam Dunkels + * are specifically granted permission to redistribute this + * source code. +*/ + +#ifndef __LWIP_IGMP_H__ +#define __LWIP_IGMP_H__ + +#include "lwip/opt.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/pbuf.h" + +#if LWIP_IGMP /* don't build if not configured for use in lwipopts.h */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * IGMP constants + */ +#define IP_PROTO_IGMP 2 +#define IGMP_TTL 1 +#define IGMP_MINLEN 8 +#define ROUTER_ALERT 0x9404 +#define ROUTER_ALERTLEN 4 + +/* + * IGMP message types, including version number. + */ +#define IGMP_MEMB_QUERY 0x11 /* Membership query */ +#define IGMP_V1_MEMB_REPORT 0x12 /* Ver. 1 membership report */ +#define IGMP_V2_MEMB_REPORT 0x16 /* Ver. 2 membership report */ +#define IGMP_LEAVE_GROUP 0x17 /* Leave-group message */ + +/* IGMP timer */ +#define IGMP_TMR_INTERVAL 100 /* Milliseconds */ +#define IGMP_V1_DELAYING_MEMBER_TMR (1000/IGMP_TMR_INTERVAL) +#define IGMP_JOIN_DELAYING_MEMBER_TMR (500 /IGMP_TMR_INTERVAL) + +/* MAC Filter Actions */ +#define IGMP_DEL_MAC_FILTER 0 +#define IGMP_ADD_MAC_FILTER 1 + +/* Group membership states */ +#define IGMP_GROUP_NON_MEMBER 0 +#define IGMP_GROUP_DELAYING_MEMBER 1 +#define IGMP_GROUP_IDLE_MEMBER 2 + +/* + * IGMP packet format. + */ +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct igmp_msg { + PACK_STRUCT_FIELD(u8_t igmp_msgtype); + PACK_STRUCT_FIELD(u8_t igmp_maxresp); + PACK_STRUCT_FIELD(u16_t igmp_checksum); + PACK_STRUCT_FIELD(struct ip_addr igmp_group_address); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +/* + * now a group structure - there is + * a list of groups for each interface + * these should really be linked from the interface, but + * if we keep them separate we will not affect the lwip original code + * too much + * + * There will be a group for the all systems group address but this + * will not run the state machine as it is used to kick off reports + * from all the other groups + */ + +struct igmp_group { + struct igmp_group *next; + struct netif *interface; + struct ip_addr group_address; + u8_t last_reporter_flag; /* signifies we were the last person to report */ + u8_t group_state; + u16_t timer; + u8_t use; /* counter of simultaneous uses */ +}; + + +/* Prototypes */ +void igmp_init(void); + +err_t igmp_start( struct netif *netif); + +err_t igmp_stop( struct netif *netif); + +void igmp_report_groups( struct netif *netif); + +struct igmp_group *igmp_lookfor_group( struct netif *ifp, struct ip_addr *addr); + +struct igmp_group *igmp_lookup_group( struct netif *ifp, struct ip_addr *addr); + +err_t igmp_remove_group( struct igmp_group *group); + +void igmp_input( struct pbuf *p, struct netif *inp, struct ip_addr *dest); + +err_t igmp_joingroup( struct ip_addr *ifaddr, struct ip_addr *groupaddr); + +err_t igmp_leavegroup( struct ip_addr *ifaddr, struct ip_addr *groupaddr); + +void igmp_tmr(void); + +void igmp_timeout( struct igmp_group *group); + +void igmp_start_timer( struct igmp_group *group, u8_t max_time); + +void igmp_stop_timer( struct igmp_group *group); + +void igmp_delaying_member( struct igmp_group *group, u8_t maxresp); + +err_t igmp_ip_output_if( struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, u8_t ttl, u8_t proto, struct netif *netif); + +void igmp_send( struct igmp_group *group, u8_t type); + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_IGMP */ + +#endif /* __LWIP_IGMP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet.h new file mode 100644 index 000000000..903afdf0f --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet.h @@ -0,0 +1,105 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_INET_H__ +#define __LWIP_INET_H__ + +#include "lwip/opt.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* For compatibility with BSD code */ +struct in_addr { + u32_t s_addr; +}; + +#define INADDR_NONE ((u32_t)0xffffffffUL) /* 255.255.255.255 */ +#define INADDR_LOOPBACK ((u32_t)0x7f000001UL) /* 127.0.0.1 */ +#define INADDR_ANY ((u32_t)0x00000000UL) /* 0.0.0.0 */ +#define INADDR_BROADCAST ((u32_t)0xffffffffUL) /* 255.255.255.255 */ + +u32_t inet_addr(const char *cp); +int inet_aton(const char *cp, struct in_addr *addr); +char *inet_ntoa(struct in_addr addr); /* returns ptr to static buffer; not reentrant! */ + +#ifdef htons +#undef htons +#endif /* htons */ +#ifdef htonl +#undef htonl +#endif /* htonl */ +#ifdef ntohs +#undef ntohs +#endif /* ntohs */ +#ifdef ntohl +#undef ntohl +#endif /* ntohl */ + +#ifndef LWIP_PLATFORM_BYTESWAP +#define LWIP_PLATFORM_BYTESWAP 0 +#endif + +#if BYTE_ORDER == BIG_ENDIAN +#define htons(x) (x) +#define ntohs(x) (x) +#define htonl(x) (x) +#define ntohl(x) (x) +#else /* BYTE_ORDER != BIG_ENDIAN */ +#ifdef LWIP_PREFIX_BYTEORDER_FUNCS +/* workaround for naming collisions on some platforms */ +#define htons lwip_htons +#define ntohs lwip_ntohs +#define htonl lwip_htonl +#define ntohl lwip_ntohl +#endif /* LWIP_PREFIX_BYTEORDER_FUNCS */ +#if LWIP_PLATFORM_BYTESWAP +#define htons(x) LWIP_PLATFORM_HTONS(x) +#define ntohs(x) LWIP_PLATFORM_HTONS(x) +#define htonl(x) LWIP_PLATFORM_HTONL(x) +#define ntohl(x) LWIP_PLATFORM_HTONL(x) +#else /* LWIP_PLATFORM_BYTESWAP */ +u16_t htons(u16_t x); +u16_t ntohs(u16_t x); +u32_t htonl(u32_t x); +u32_t ntohl(u32_t x); +#endif /* LWIP_PLATFORM_BYTESWAP */ + +#endif /* BYTE_ORDER == BIG_ENDIAN */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_INET_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet_chksum.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet_chksum.h new file mode 100644 index 000000000..6f5b1b63a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/inet_chksum.h @@ -0,0 +1,62 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_INET_CHKSUM_H__ +#define __LWIP_INET_CHKSUM_H__ + +#include "lwip/opt.h" + +#include "lwip/pbuf.h" +#include "lwip/ip_addr.h" + +#ifdef __cplusplus +extern "C" { +#endif + +u16_t inet_chksum(void *dataptr, u16_t len); +u16_t inet_chksum_pbuf(struct pbuf *p); +u16_t inet_chksum_pseudo(struct pbuf *p, + struct ip_addr *src, struct ip_addr *dest, + u8_t proto, u16_t proto_len); +#if LWIP_UDPLITE +u16_t inet_chksum_pseudo_partial(struct pbuf *p, + struct ip_addr *src, struct ip_addr *dest, + u8_t proto, u16_t proto_len, u16_t chksum_len); +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_INET_H__ */ + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip.h new file mode 100644 index 000000000..6b2cdee17 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip.h @@ -0,0 +1,200 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_IP_H__ +#define __LWIP_IP_H__ + +#include "lwip/opt.h" + +#include "lwip/def.h" +#include "lwip/pbuf.h" +#include "lwip/ip_addr.h" +#include "lwip/err.h" +#include "lwip/netif.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** Currently, the function ip_output_if_opt() is only used with IGMP */ +#define IP_OPTIONS_SEND LWIP_IGMP + +#define IP_HLEN 20 + +#define IP_PROTO_ICMP 1 +#define IP_PROTO_UDP 17 +#define IP_PROTO_UDPLITE 136 +#define IP_PROTO_TCP 6 + +/* This is passed as the destination address to ip_output_if (not + to ip_output), meaning that an IP header already is constructed + in the pbuf. This is used when TCP retransmits. */ +#ifdef IP_HDRINCL +#undef IP_HDRINCL +#endif /* IP_HDRINCL */ +#define IP_HDRINCL NULL + +#if LWIP_NETIF_HWADDRHINT +#define IP_PCB_ADDRHINT ;u8_t addr_hint +#else +#define IP_PCB_ADDRHINT +#endif /* LWIP_NETIF_HWADDRHINT */ + +/* This is the common part of all PCB types. It needs to be at the + beginning of a PCB type definition. It is located here so that + changes to this common part are made in one location instead of + having to change all PCB structs. */ +#define IP_PCB \ + /* ip addresses in network byte order */ \ + struct ip_addr local_ip; \ + struct ip_addr remote_ip; \ + /* Socket options */ \ + u16_t so_options; \ + /* Type Of Service */ \ + u8_t tos; \ + /* Time To Live */ \ + u8_t ttl \ + /* link layer address resolution hint */ \ + IP_PCB_ADDRHINT + +struct ip_pcb { +/* Common members of all PCB types */ + IP_PCB; +}; + +/* + * Option flags per-socket. These are the same like SO_XXX. + */ +#define SOF_DEBUG (u16_t)0x0001U /* turn on debugging info recording */ +#define SOF_ACCEPTCONN (u16_t)0x0002U /* socket has had listen() */ +#define SOF_REUSEADDR (u16_t)0x0004U /* allow local address reuse */ +#define SOF_KEEPALIVE (u16_t)0x0008U /* keep connections alive */ +#define SOF_DONTROUTE (u16_t)0x0010U /* just use interface addresses */ +#define SOF_BROADCAST (u16_t)0x0020U /* permit to send and to receive broadcast messages (see IP_SOF_BROADCAST option) */ +#define SOF_USELOOPBACK (u16_t)0x0040U /* bypass hardware when possible */ +#define SOF_LINGER (u16_t)0x0080U /* linger on close if data present */ +#define SOF_OOBINLINE (u16_t)0x0100U /* leave received OOB data in line */ +#define SOF_REUSEPORT (u16_t)0x0200U /* allow local address & port reuse */ + + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct ip_hdr { + /* version / header length / type of service */ + PACK_STRUCT_FIELD(u16_t _v_hl_tos); + /* total length */ + PACK_STRUCT_FIELD(u16_t _len); + /* identification */ + PACK_STRUCT_FIELD(u16_t _id); + /* fragment offset field */ + PACK_STRUCT_FIELD(u16_t _offset); +#define IP_RF 0x8000 /* reserved fragment flag */ +#define IP_DF 0x4000 /* dont fragment flag */ +#define IP_MF 0x2000 /* more fragments flag */ +#define IP_OFFMASK 0x1fff /* mask for fragmenting bits */ + /* time to live / protocol*/ + PACK_STRUCT_FIELD(u16_t _ttl_proto); + /* checksum */ + PACK_STRUCT_FIELD(u16_t _chksum); + /* source and destination IP addresses */ + PACK_STRUCT_FIELD(struct ip_addr src); + PACK_STRUCT_FIELD(struct ip_addr dest); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define IPH_V(hdr) (ntohs((hdr)->_v_hl_tos) >> 12) +#define IPH_HL(hdr) ((ntohs((hdr)->_v_hl_tos) >> 8) & 0x0f) +#define IPH_TOS(hdr) (ntohs((hdr)->_v_hl_tos) & 0xff) +#define IPH_LEN(hdr) ((hdr)->_len) +#define IPH_ID(hdr) ((hdr)->_id) +#define IPH_OFFSET(hdr) ((hdr)->_offset) +#define IPH_TTL(hdr) (ntohs((hdr)->_ttl_proto) >> 8) +#define IPH_PROTO(hdr) (ntohs((hdr)->_ttl_proto) & 0xff) +#define IPH_CHKSUM(hdr) ((hdr)->_chksum) + +#define IPH_VHLTOS_SET(hdr, v, hl, tos) (hdr)->_v_hl_tos = (htons(((v) << 12) | ((hl) << 8) | (tos))) +#define IPH_LEN_SET(hdr, len) (hdr)->_len = (len) +#define IPH_ID_SET(hdr, id) (hdr)->_id = (id) +#define IPH_OFFSET_SET(hdr, off) (hdr)->_offset = (off) +#define IPH_TTL_SET(hdr, ttl) (hdr)->_ttl_proto = (htons(IPH_PROTO(hdr) | ((u16_t)(ttl) << 8))) +#define IPH_PROTO_SET(hdr, proto) (hdr)->_ttl_proto = (htons((proto) | (IPH_TTL(hdr) << 8))) +#define IPH_CHKSUM_SET(hdr, chksum) (hdr)->_chksum = (chksum) + +/** The interface that provided the packet for the current callback invocation. */ +extern struct netif *current_netif; +/** Header of the input packet currently being processed. */ +extern const struct ip_hdr *current_header; + +#define ip_init() /* Compatibility define, not init needed. */ +struct netif *ip_route(struct ip_addr *dest); +err_t ip_input(struct pbuf *p, struct netif *inp); +err_t ip_output(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto); +err_t ip_output_if(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto, + struct netif *netif); +#if LWIP_NETIF_HWADDRHINT +err_t ip_output_hinted(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto, u8_t *addr_hint); +#endif /* LWIP_NETIF_HWADDRHINT */ +#if IP_OPTIONS_SEND +err_t ip_output_if_opt(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, + u8_t ttl, u8_t tos, u8_t proto, struct netif *netif, void *ip_options, + u16_t optlen); +#endif /* IP_OPTIONS_SEND */ +/** Get the interface that received the current packet. + * This function must only be called from a receive callback (udp_recv, + * raw_recv, tcp_accept). It will return NULL otherwise. */ +#define ip_current_netif() (current_netif) +/** Get the IP header of the current packet. + * This function must only be called from a receive callback (udp_recv, + * raw_recv, tcp_accept). It will return NULL otherwise. */ +#define ip_current_header() (current_header) +#if IP_DEBUG +void ip_debug_print(struct pbuf *p); +#else +#define ip_debug_print(p) +#endif /* IP_DEBUG */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_IP_H__ */ + + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_addr.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_addr.h new file mode 100644 index 000000000..5fbc44d14 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_addr.h @@ -0,0 +1,175 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_IP_ADDR_H__ +#define __LWIP_IP_ADDR_H__ + +#include "lwip/opt.h" + +#include "lwip/inet.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct ip_addr { + PACK_STRUCT_FIELD(u32_t addr); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +/* + * struct ipaddr2 is used in the definition of the ARP packet format in + * order to support compilers that don't have structure packing. + */ +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct ip_addr2 { + PACK_STRUCT_FIELD(u16_t addrw[2]); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +struct netif; + +extern const struct ip_addr ip_addr_any; +extern const struct ip_addr ip_addr_broadcast; + +/** IP_ADDR_ can be used as a fixed IP address + * for the wildcard and the broadcast address + */ +#define IP_ADDR_ANY ((struct ip_addr *)&ip_addr_any) +#define IP_ADDR_BROADCAST ((struct ip_addr *)&ip_addr_broadcast) + +/* Definitions of the bits in an Internet address integer. + + On subnets, host and network parts are found according to + the subnet mask, not these masks. */ + +#define IN_CLASSA(a) ((((u32_t)(a)) & 0x80000000UL) == 0) +#define IN_CLASSA_NET 0xff000000 +#define IN_CLASSA_NSHIFT 24 +#define IN_CLASSA_HOST (0xffffffff & ~IN_CLASSA_NET) +#define IN_CLASSA_MAX 128 + +#define IN_CLASSB(a) ((((u32_t)(a)) & 0xc0000000UL) == 0x80000000UL) +#define IN_CLASSB_NET 0xffff0000 +#define IN_CLASSB_NSHIFT 16 +#define IN_CLASSB_HOST (0xffffffff & ~IN_CLASSB_NET) +#define IN_CLASSB_MAX 65536 + +#define IN_CLASSC(a) ((((u32_t)(a)) & 0xe0000000UL) == 0xc0000000UL) +#define IN_CLASSC_NET 0xffffff00 +#define IN_CLASSC_NSHIFT 8 +#define IN_CLASSC_HOST (0xffffffff & ~IN_CLASSC_NET) + +#define IN_CLASSD(a) (((u32_t)(a) & 0xf0000000UL) == 0xe0000000UL) +#define IN_CLASSD_NET 0xf0000000 /* These ones aren't really */ +#define IN_CLASSD_NSHIFT 28 /* net and host fields, but */ +#define IN_CLASSD_HOST 0x0fffffff /* routing needn't know. */ +#define IN_MULTICAST(a) IN_CLASSD(a) + +#define IN_EXPERIMENTAL(a) (((u32_t)(a) & 0xf0000000UL) == 0xf0000000UL) +#define IN_BADCLASS(a) (((u32_t)(a) & 0xf0000000UL) == 0xf0000000UL) + +#define IN_LOOPBACKNET 127 /* official! */ + +#define IP4_ADDR(ipaddr, a,b,c,d) \ + (ipaddr)->addr = htonl(((u32_t)((a) & 0xff) << 24) | \ + ((u32_t)((b) & 0xff) << 16) | \ + ((u32_t)((c) & 0xff) << 8) | \ + (u32_t)((d) & 0xff)) + +#define ip_addr_set(dest, src) (dest)->addr = \ + ((src) == NULL? 0:\ + (src)->addr) +/** + * Determine if two address are on the same network. + * + * @arg addr1 IP address 1 + * @arg addr2 IP address 2 + * @arg mask network identifier mask + * @return !0 if the network identifiers of both address match + */ +#define ip_addr_netcmp(addr1, addr2, mask) (((addr1)->addr & \ + (mask)->addr) == \ + ((addr2)->addr & \ + (mask)->addr)) +#define ip_addr_cmp(addr1, addr2) ((addr1)->addr == (addr2)->addr) + +#define ip_addr_isany(addr1) ((addr1) == NULL || (addr1)->addr == 0) + +u8_t ip_addr_isbroadcast(struct ip_addr *, struct netif *); + +#define ip_addr_ismulticast(addr1) (((addr1)->addr & ntohl(0xf0000000UL)) == ntohl(0xe0000000UL)) + +#define ip_addr_islinklocal(addr1) (((addr1)->addr & ntohl(0xffff0000UL)) == ntohl(0xa9fe0000UL)) + +#define ip_addr_debug_print(debug, ipaddr) \ + LWIP_DEBUGF(debug, ("%"U16_F".%"U16_F".%"U16_F".%"U16_F, \ + ipaddr != NULL ? \ + (u16_t)(ntohl((ipaddr)->addr) >> 24) & 0xff : 0, \ + ipaddr != NULL ? \ + (u16_t)(ntohl((ipaddr)->addr) >> 16) & 0xff : 0, \ + ipaddr != NULL ? \ + (u16_t)(ntohl((ipaddr)->addr) >> 8) & 0xff : 0, \ + ipaddr != NULL ? \ + (u16_t)ntohl((ipaddr)->addr) & 0xff : 0)) + +/* These are cast to u16_t, with the intent that they are often arguments + * to printf using the U16_F format from cc.h. */ +#define ip4_addr1(ipaddr) ((u16_t)(ntohl((ipaddr)->addr) >> 24) & 0xff) +#define ip4_addr2(ipaddr) ((u16_t)(ntohl((ipaddr)->addr) >> 16) & 0xff) +#define ip4_addr3(ipaddr) ((u16_t)(ntohl((ipaddr)->addr) >> 8) & 0xff) +#define ip4_addr4(ipaddr) ((u16_t)(ntohl((ipaddr)->addr)) & 0xff) + +/** + * Same as inet_ntoa() but takes a struct ip_addr* + */ +#define ip_ntoa(addr) ((addr != NULL) ? inet_ntoa(*((struct in_addr*)(addr))) : "NULL") + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_IP_ADDR_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_frag.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_frag.h new file mode 100644 index 000000000..adc6e9195 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4/lwip/ip_frag.h @@ -0,0 +1,78 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Jani Monoses <jani@iv.ro> + * + */ + +#ifndef __LWIP_IP_FRAG_H__ +#define __LWIP_IP_FRAG_H__ + +#include "lwip/opt.h" +#include "lwip/err.h" +#include "lwip/pbuf.h" +#include "lwip/netif.h" +#include "lwip/ip_addr.h" +#include "lwip/ip.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if IP_REASSEMBLY +/* The IP reassembly timer interval in milliseconds. */ +#define IP_TMR_INTERVAL 1000 + +/* IP reassembly helper struct. + * This is exported because memp needs to know the size. + */ +struct ip_reassdata { + struct ip_reassdata *next; + struct pbuf *p; + struct ip_hdr iphdr; + u16_t datagram_len; + u8_t flags; + u8_t timer; +}; + +void ip_reass_init(void); +void ip_reass_tmr(void); +struct pbuf * ip_reass(struct pbuf *p); +#endif /* IP_REASSEMBLY */ + +#if IP_FRAG +err_t ip_frag(struct pbuf *p, struct netif *netif, struct ip_addr *dest); +#endif /* IP_FRAG */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_IP_FRAG_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api.h new file mode 100644 index 000000000..7d2c9e6ec --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api.h @@ -0,0 +1,224 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_API_H__ +#define __LWIP_API_H__ + +#include "lwip/opt.h" + +#if LWIP_NETCONN /* don't build if not configured for use in lwipopts.h */ + +#include <stddef.h> /* for size_t */ + +#include "lwip/netbuf.h" +#include "lwip/sys.h" +#include "lwip/ip_addr.h" +#include "lwip/err.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Throughout this file, IP addresses and port numbers are expected to be in + * the same byte order as in the corresponding pcb. + */ + +/* Flags for netconn_write */ +#define NETCONN_NOFLAG 0x00 +#define NETCONN_NOCOPY 0x00 /* Only for source code compatibility */ +#define NETCONN_COPY 0x01 +#define NETCONN_MORE 0x02 + +/* Helpers to process several netconn_types by the same code */ +#define NETCONNTYPE_GROUP(t) (t&0xF0) +#define NETCONNTYPE_DATAGRAM(t) (t&0xE0) + +enum netconn_type { + NETCONN_INVALID = 0, + /* NETCONN_TCP Group */ + NETCONN_TCP = 0x10, + /* NETCONN_UDP Group */ + NETCONN_UDP = 0x20, + NETCONN_UDPLITE = 0x21, + NETCONN_UDPNOCHKSUM= 0x22, + /* NETCONN_RAW Group */ + NETCONN_RAW = 0x40 +}; + +enum netconn_state { + NETCONN_NONE, + NETCONN_WRITE, + NETCONN_LISTEN, + NETCONN_CONNECT, + NETCONN_CLOSE +}; + +enum netconn_evt { + NETCONN_EVT_RCVPLUS, + NETCONN_EVT_RCVMINUS, + NETCONN_EVT_SENDPLUS, + NETCONN_EVT_SENDMINUS +}; + +#if LWIP_IGMP +enum netconn_igmp { + NETCONN_JOIN, + NETCONN_LEAVE +}; +#endif /* LWIP_IGMP */ + +/* forward-declare some structs to avoid to include their headers */ +struct ip_pcb; +struct tcp_pcb; +struct udp_pcb; +struct raw_pcb; +struct netconn; + +/** A callback prototype to inform about events for a netconn */ +typedef void (* netconn_callback)(struct netconn *, enum netconn_evt, u16_t len); + +/** A netconn descriptor */ +struct netconn { + /** type of the netconn (TCP, UDP or RAW) */ + enum netconn_type type; + /** current state of the netconn */ + enum netconn_state state; + /** the lwIP internal protocol control block */ + union { + struct ip_pcb *ip; + struct tcp_pcb *tcp; + struct udp_pcb *udp; + struct raw_pcb *raw; + } pcb; + /** the last error this netconn had */ + err_t err; + /** sem that is used to synchroneously execute functions in the core context */ + sys_sem_t op_completed; + /** mbox where received packets are stored until they are fetched + by the netconn application thread (can grow quite big) */ + sys_mbox_t recvmbox; + /** mbox where new connections are stored until processed + by the application thread */ + sys_mbox_t acceptmbox; + /** only used for socket layer */ + int socket; +#if LWIP_SO_RCVTIMEO + /** timeout to wait for new data to be received + (or connections to arrive for listening netconns) */ + int recv_timeout; +#endif /* LWIP_SO_RCVTIMEO */ +#if LWIP_SO_RCVBUF + /** maximum amount of bytes queued in recvmbox */ + int recv_bufsize; +#endif /* LWIP_SO_RCVBUF */ + s16_t recv_avail; +#if LWIP_TCP + /** TCP: when data passed to netconn_write doesn't fit into the send buffer, + this temporarily stores the message. */ + struct api_msg_msg *write_msg; + /** TCP: when data passed to netconn_write doesn't fit into the send buffer, + this temporarily stores how much is already sent. */ + size_t write_offset; +#if LWIP_TCPIP_CORE_LOCKING + /** TCP: when data passed to netconn_write doesn't fit into the send buffer, + this temporarily stores whether to wake up the original application task + if data couldn't be sent in the first try. */ + u8_t write_delayed; +#endif /* LWIP_TCPIP_CORE_LOCKING */ +#endif /* LWIP_TCP */ + /** A callback function that is informed about events for this netconn */ + netconn_callback callback; +}; + +/* Register an Network connection event */ +#define API_EVENT(c,e,l) if (c->callback) { \ + (*c->callback)(c, e, l); \ + } + +/* Network connection functions: */ +#define netconn_new(t) netconn_new_with_proto_and_callback(t, 0, NULL) +#define netconn_new_with_callback(t, c) netconn_new_with_proto_and_callback(t, 0, c) +struct +netconn *netconn_new_with_proto_and_callback(enum netconn_type t, u8_t proto, + netconn_callback callback); +err_t netconn_delete (struct netconn *conn); +/** Get the type of a netconn (as enum netconn_type). */ +#define netconn_type(conn) (conn->type) + +err_t netconn_getaddr (struct netconn *conn, + struct ip_addr *addr, + u16_t *port, + u8_t local); +#define netconn_peer(c,i,p) netconn_getaddr(c,i,p,0) +#define netconn_addr(c,i,p) netconn_getaddr(c,i,p,1) + +err_t netconn_bind (struct netconn *conn, + struct ip_addr *addr, + u16_t port); +err_t netconn_connect (struct netconn *conn, + struct ip_addr *addr, + u16_t port); +err_t netconn_disconnect (struct netconn *conn); +err_t netconn_listen_with_backlog(struct netconn *conn, u8_t backlog); +#define netconn_listen(conn) netconn_listen_with_backlog(conn, TCP_DEFAULT_LISTEN_BACKLOG) +struct netconn * netconn_accept (struct netconn *conn); +struct netbuf * netconn_recv (struct netconn *conn); +err_t netconn_sendto (struct netconn *conn, + struct netbuf *buf, struct ip_addr *addr, u16_t port); +err_t netconn_send (struct netconn *conn, + struct netbuf *buf); +err_t netconn_write (struct netconn *conn, + const void *dataptr, size_t size, + u8_t apiflags); +err_t netconn_close (struct netconn *conn); + +#if LWIP_IGMP +err_t netconn_join_leave_group (struct netconn *conn, + struct ip_addr *multiaddr, + struct ip_addr *interface, + enum netconn_igmp join_or_leave); +#endif /* LWIP_IGMP */ +#if LWIP_DNS +err_t netconn_gethostbyname(const char *name, struct ip_addr *addr); +#endif /* LWIP_DNS */ + +#define netconn_err(conn) ((conn)->err) +#define netconn_recv_bufsize(conn) ((conn)->recv_bufsize) + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_NETCONN */ + +#endif /* __LWIP_API_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api_msg.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api_msg.h new file mode 100644 index 000000000..7718d909b --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/api_msg.h @@ -0,0 +1,164 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_API_MSG_H__ +#define __LWIP_API_MSG_H__ + +#include "lwip/opt.h" + +#if LWIP_NETCONN /* don't build if not configured for use in lwipopts.h */ + +#include <stddef.h> /* for size_t */ + +#include "lwip/ip_addr.h" +#include "lwip/err.h" +#include "lwip/sys.h" +#include "lwip/igmp.h" +#include "lwip/api.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IP addresses and port numbers are expected to be in + * the same byte order as in the corresponding pcb. + */ +/** This struct includes everything that is necessary to execute a function + for a netconn in another thread context (mainly used to process netconns + in the tcpip_thread context to be thread safe). */ +struct api_msg_msg { + /** The netconn which to process - always needed: it includes the semaphore + which is used to block the application thread until the function finished. */ + struct netconn *conn; + /** Depending on the executed function, one of these union members is used */ + union { + /** used for do_send */ + struct netbuf *b; + /** used for do_newconn */ + struct { + u8_t proto; + } n; + /** used for do_bind and do_connect */ + struct { + struct ip_addr *ipaddr; + u16_t port; + } bc; + /** used for do_getaddr */ + struct { + struct ip_addr *ipaddr; + u16_t *port; + u8_t local; + } ad; + /** used for do_write */ + struct { + const void *dataptr; + size_t len; + u8_t apiflags; + } w; + /** used for do_recv */ + struct { + u16_t len; + } r; +#if LWIP_IGMP + /** used for do_join_leave_group */ + struct { + struct ip_addr *multiaddr; + struct ip_addr *interface; + enum netconn_igmp join_or_leave; + } jl; +#endif /* LWIP_IGMP */ +#if TCP_LISTEN_BACKLOG + struct { + u8_t backlog; + } lb; +#endif /* TCP_LISTEN_BACKLOG */ + } msg; +}; + +/** This struct contains a function to execute in another thread context and + a struct api_msg_msg that serves as an argument for this function. + This is passed to tcpip_apimsg to execute functions in tcpip_thread context. */ +struct api_msg { + /** function to execute in tcpip_thread context */ + void (* function)(struct api_msg_msg *msg); + /** arguments for this function */ + struct api_msg_msg msg; +}; + +#if LWIP_DNS +/** As do_gethostbyname requires more arguments but doesn't require a netconn, + it has its own struct (to avoid struct api_msg getting bigger than necessary). + do_gethostbyname must be called using tcpip_callback instead of tcpip_apimsg + (see netconn_gethostbyname). */ +struct dns_api_msg { + /** Hostname to query or dotted IP address string */ + const char *name; + /** Rhe resolved address is stored here */ + struct ip_addr *addr; + /** This semaphore is posted when the name is resolved, the application thread + should wait on it. */ + sys_sem_t sem; + /** Errors are given back here */ + err_t *err; +}; +#endif /* LWIP_DNS */ + +void do_newconn ( struct api_msg_msg *msg); +void do_delconn ( struct api_msg_msg *msg); +void do_bind ( struct api_msg_msg *msg); +void do_connect ( struct api_msg_msg *msg); +void do_disconnect ( struct api_msg_msg *msg); +void do_listen ( struct api_msg_msg *msg); +void do_send ( struct api_msg_msg *msg); +void do_recv ( struct api_msg_msg *msg); +void do_write ( struct api_msg_msg *msg); +void do_getaddr ( struct api_msg_msg *msg); +void do_close ( struct api_msg_msg *msg); +#if LWIP_IGMP +void do_join_leave_group( struct api_msg_msg *msg); +#endif /* LWIP_IGMP */ + +#if LWIP_DNS +void do_gethostbyname(void *arg); +#endif /* LWIP_DNS */ + +struct netconn* netconn_alloc(enum netconn_type t, netconn_callback callback); +void netconn_free(struct netconn *conn); + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_NETCONN */ + +#endif /* __LWIP_API_MSG_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/arch.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/arch.h new file mode 100644 index 000000000..5ab190a73 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/arch.h @@ -0,0 +1,235 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_ARCH_H__ +#define __LWIP_ARCH_H__ + +#ifndef LITTLE_ENDIAN +#define LITTLE_ENDIAN 1234 +#endif + +#ifndef BIG_ENDIAN +#define BIG_ENDIAN 4321 +#endif + +#include "arch/cc.h" + +/** Temporary: define format string for size_t if not defined in cc.h */ +#ifndef SZT_F +#define SZT_F U32_F +#endif /* SZT_F */ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef PACK_STRUCT_BEGIN +#define PACK_STRUCT_BEGIN +#endif /* PACK_STRUCT_BEGIN */ + +#ifndef PACK_STRUCT_END +#define PACK_STRUCT_END +#endif /* PACK_STRUCT_END */ + +#ifndef PACK_STRUCT_FIELD +#define PACK_STRUCT_FIELD(x) x +#endif /* PACK_STRUCT_FIELD */ + + +#ifndef LWIP_UNUSED_ARG +#define LWIP_UNUSED_ARG(x) (void)x +#endif /* LWIP_UNUSED_ARG */ + + +#ifdef LWIP_PROVIDE_ERRNO + +#define EPERM 1 /* Operation not permitted */ +#define ENOENT 2 /* No such file or directory */ +#define ESRCH 3 /* No such process */ +#define EINTR 4 /* Interrupted system call */ +#define EIO 5 /* I/O error */ +#define ENXIO 6 /* No such device or address */ +#define E2BIG 7 /* Arg list too long */ +#define ENOEXEC 8 /* Exec format error */ +#define EBADF 9 /* Bad file number */ +#define ECHILD 10 /* No child processes */ +#define EAGAIN 11 /* Try again */ +#define ENOMEM 12 /* Out of memory */ +#define EACCES 13 /* Permission denied */ +#define EFAULT 14 /* Bad address */ +#define ENOTBLK 15 /* Block device required */ +#define EBUSY 16 /* Device or resource busy */ +#define EEXIST 17 /* File exists */ +#define EXDEV 18 /* Cross-device link */ +#define ENODEV 19 /* No such device */ +#define ENOTDIR 20 /* Not a directory */ +#define EISDIR 21 /* Is a directory */ +#define EINVAL 22 /* Invalid argument */ +#define ENFILE 23 /* File table overflow */ +#define EMFILE 24 /* Too many open files */ +#define ENOTTY 25 /* Not a typewriter */ +#define ETXTBSY 26 /* Text file busy */ +#define EFBIG 27 /* File too large */ +#define ENOSPC 28 /* No space left on device */ +#define ESPIPE 29 /* Illegal seek */ +#define EROFS 30 /* Read-only file system */ +#define EMLINK 31 /* Too many links */ +#define EPIPE 32 /* Broken pipe */ +#define EDOM 33 /* Math argument out of domain of func */ +#define ERANGE 34 /* Math result not representable */ +#define EDEADLK 35 /* Resource deadlock would occur */ +#define ENAMETOOLONG 36 /* File name too long */ +#define ENOLCK 37 /* No record locks available */ +#define ENOSYS 38 /* Function not implemented */ +#define ENOTEMPTY 39 /* Directory not empty */ +#define ELOOP 40 /* Too many symbolic links encountered */ +#define EWOULDBLOCK EAGAIN /* Operation would block */ +#define ENOMSG 42 /* No message of desired type */ +#define EIDRM 43 /* Identifier removed */ +#define ECHRNG 44 /* Channel number out of range */ +#define EL2NSYNC 45 /* Level 2 not synchronized */ +#define EL3HLT 46 /* Level 3 halted */ +#define EL3RST 47 /* Level 3 reset */ +#define ELNRNG 48 /* Link number out of range */ +#define EUNATCH 49 /* Protocol driver not attached */ +#define ENOCSI 50 /* No CSI structure available */ +#define EL2HLT 51 /* Level 2 halted */ +#define EBADE 52 /* Invalid exchange */ +#define EBADR 53 /* Invalid request descriptor */ +#define EXFULL 54 /* Exchange full */ +#define ENOANO 55 /* No anode */ +#define EBADRQC 56 /* Invalid request code */ +#define EBADSLT 57 /* Invalid slot */ + +#define EDEADLOCK EDEADLK + +#define EBFONT 59 /* Bad font file format */ +#define ENOSTR 60 /* Device not a stream */ +#define ENODATA 61 /* No data available */ +#define ETIME 62 /* Timer expired */ +#define ENOSR 63 /* Out of streams resources */ +#define ENONET 64 /* Machine is not on the network */ +#define ENOPKG 65 /* Package not installed */ +#define EREMOTE 66 /* Object is remote */ +#define ENOLINK 67 /* Link has been severed */ +#define EADV 68 /* Advertise error */ +#define ESRMNT 69 /* Srmount error */ +#define ECOMM 70 /* Communication error on send */ +#define EPROTO 71 /* Protocol error */ +#define EMULTIHOP 72 /* Multihop attempted */ +#define EDOTDOT 73 /* RFS specific error */ +#define EBADMSG 74 /* Not a data message */ +#define EOVERFLOW 75 /* Value too large for defined data type */ +#define ENOTUNIQ 76 /* Name not unique on network */ +#define EBADFD 77 /* File descriptor in bad state */ +#define EREMCHG 78 /* Remote address changed */ +#define ELIBACC 79 /* Can not access a needed shared library */ +#define ELIBBAD 80 /* Accessing a corrupted shared library */ +#define ELIBSCN 81 /* .lib section in a.out corrupted */ +#define ELIBMAX 82 /* Attempting to link in too many shared libraries */ +#define ELIBEXEC 83 /* Cannot exec a shared library directly */ +#define EILSEQ 84 /* Illegal byte sequence */ +#define ERESTART 85 /* Interrupted system call should be restarted */ +#define ESTRPIPE 86 /* Streams pipe error */ +#define EUSERS 87 /* Too many users */ +#define ENOTSOCK 88 /* Socket operation on non-socket */ +#define EDESTADDRREQ 89 /* Destination address required */ +#define EMSGSIZE 90 /* Message too long */ +#define EPROTOTYPE 91 /* Protocol wrong type for socket */ +#define ENOPROTOOPT 92 /* Protocol not available */ +#define EPROTONOSUPPORT 93 /* Protocol not supported */ +#define ESOCKTNOSUPPORT 94 /* Socket type not supported */ +#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */ +#define EPFNOSUPPORT 96 /* Protocol family not supported */ +#define EAFNOSUPPORT 97 /* Address family not supported by protocol */ +#define EADDRINUSE 98 /* Address already in use */ +#define EADDRNOTAVAIL 99 /* Cannot assign requested address */ +#define ENETDOWN 100 /* Network is down */ +#define ENETUNREACH 101 /* Network is unreachable */ +#define ENETRESET 102 /* Network dropped connection because of reset */ +#define ECONNABORTED 103 /* Software caused connection abort */ +#define ECONNRESET 104 /* Connection reset by peer */ +#define ENOBUFS 105 /* No buffer space available */ +#define EISCONN 106 /* Transport endpoint is already connected */ +#define ENOTCONN 107 /* Transport endpoint is not connected */ +#define ESHUTDOWN 108 /* Cannot send after transport endpoint shutdown */ +#define ETOOMANYREFS 109 /* Too many references: cannot splice */ +#define ETIMEDOUT 110 /* Connection timed out */ +#define ECONNREFUSED 111 /* Connection refused */ +#define EHOSTDOWN 112 /* Host is down */ +#define EHOSTUNREACH 113 /* No route to host */ +#define EALREADY 114 /* Operation already in progress */ +#define EINPROGRESS 115 /* Operation now in progress */ +#define ESTALE 116 /* Stale NFS file handle */ +#define EUCLEAN 117 /* Structure needs cleaning */ +#define ENOTNAM 118 /* Not a XENIX named type file */ +#define ENAVAIL 119 /* No XENIX semaphores available */ +#define EISNAM 120 /* Is a named type file */ +#define EREMOTEIO 121 /* Remote I/O error */ +#define EDQUOT 122 /* Quota exceeded */ + +#define ENOMEDIUM 123 /* No medium found */ +#define EMEDIUMTYPE 124 /* Wrong medium type */ + + +#define ENSROK 0 /* DNS server returned answer with no data */ +#define ENSRNODATA 160 /* DNS server returned answer with no data */ +#define ENSRFORMERR 161 /* DNS server claims query was misformatted */ +#define ENSRSERVFAIL 162 /* DNS server returned general failure */ +#define ENSRNOTFOUND 163 /* Domain name not found */ +#define ENSRNOTIMP 164 /* DNS server does not implement requested operation */ +#define ENSRREFUSED 165 /* DNS server refused query */ +#define ENSRBADQUERY 166 /* Misformatted DNS query */ +#define ENSRBADNAME 167 /* Misformatted domain name */ +#define ENSRBADFAMILY 168 /* Unsupported address family */ +#define ENSRBADRESP 169 /* Misformatted DNS reply */ +#define ENSRCONNREFUSED 170 /* Could not contact DNS servers */ +#define ENSRTIMEOUT 171 /* Timeout while contacting DNS servers */ +#define ENSROF 172 /* End of file */ +#define ENSRFILE 173 /* Error reading file */ +#define ENSRNOMEM 174 /* Out of memory */ +#define ENSRDESTRUCTION 175 /* Application terminated lookup */ +#define ENSRQUERYDOMAINTOOLONG 176 /* Domain name is too long */ +#define ENSRCNAMELOOP 177 /* Domain name is too long */ + +#ifndef errno +extern int errno; +#endif + +#endif /* LWIP_PROVIDE_ERRNO */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_ARCH_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/debug.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/debug.h new file mode 100644 index 000000000..fb0760790 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/debug.h @@ -0,0 +1,100 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_DEBUG_H__ +#define __LWIP_DEBUG_H__ + +#include "lwip/arch.h" + +/** lower two bits indicate debug level + * - 0 all + * - 1 warning + * - 2 serious + * - 3 severe + */ +#define LWIP_DBG_LEVEL_ALL 0x00 +#define LWIP_DBG_LEVEL_OFF LWIP_DBG_LEVEL_ALL /* compatibility define only */ +#define LWIP_DBG_LEVEL_WARNING 0x01 /* bad checksums, dropped packets, ... */ +#define LWIP_DBG_LEVEL_SERIOUS 0x02 /* memory allocation failures, ... */ +#define LWIP_DBG_LEVEL_SEVERE 0x03 +#define LWIP_DBG_MASK_LEVEL 0x03 + +/** flag for LWIP_DEBUGF to enable that debug message */ +#define LWIP_DBG_ON 0x80U +/** flag for LWIP_DEBUGF to disable that debug message */ +#define LWIP_DBG_OFF 0x00U + +/** flag for LWIP_DEBUGF indicating a tracing message (to follow program flow) */ +#define LWIP_DBG_TRACE 0x40U +/** flag for LWIP_DEBUGF indicating a state debug message (to follow module states) */ +#define LWIP_DBG_STATE 0x20U +/** flag for LWIP_DEBUGF indicating newly added code, not thoroughly tested yet */ +#define LWIP_DBG_FRESH 0x10U +/** flag for LWIP_DEBUGF to halt after printing this debug message */ +#define LWIP_DBG_HALT 0x08U + +#ifndef LWIP_NOASSERT +#define LWIP_ASSERT(message, assertion) do { if(!(assertion)) \ + LWIP_PLATFORM_ASSERT(message); } while(0) +#else /* LWIP_NOASSERT */ +#define LWIP_ASSERT(message, assertion) +#endif /* LWIP_NOASSERT */ + +/** if "expression" isn't true, then print "message" and execute "handler" expression */ +#ifndef LWIP_ERROR +#define LWIP_ERROR(message, expression, handler) do { if (!(expression)) { \ + LWIP_PLATFORM_ASSERT(message); handler;}} while(0) +#endif /* LWIP_ERROR */ + +#ifdef LWIP_DEBUG +/** print debug message only if debug message type is enabled... + * AND is of correct type AND is at least LWIP_DBG_LEVEL + */ +#define LWIP_DEBUGF(debug, message) do { \ + if ( \ + ((debug) & LWIP_DBG_ON) && \ + ((debug) & LWIP_DBG_TYPES_ON) && \ + ((s16_t)((debug) & LWIP_DBG_MASK_LEVEL) >= LWIP_DBG_MIN_LEVEL)) { \ + LWIP_PLATFORM_DIAG(message); \ + if ((debug) & LWIP_DBG_HALT) { \ + while(1); \ + } \ + } \ + } while(0) + +#else /* LWIP_DEBUG */ +#define LWIP_DEBUGF(debug, message) +#endif /* LWIP_DEBUG */ + +#endif /* __LWIP_DEBUG_H__ */ + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/def.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/def.h new file mode 100644 index 000000000..c3681ac1f --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/def.h @@ -0,0 +1,49 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_DEF_H__ +#define __LWIP_DEF_H__ + +/* this might define NULL already */ +#include "lwip/arch.h" + +#define LWIP_MAX(x , y) (((x) > (y)) ? (x) : (y)) +#define LWIP_MIN(x , y) (((x) < (y)) ? (x) : (y)) + +#ifndef NULL +#define NULL ((void *)0) +#endif + + +#endif /* __LWIP_DEF_H__ */ + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dhcp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dhcp.h new file mode 100644 index 000000000..27a0adeb8 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dhcp.h @@ -0,0 +1,248 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** @file + */ + +#ifndef __LWIP_DHCP_H__ +#define __LWIP_DHCP_H__ + +#include "lwip/opt.h" + +#if LWIP_DHCP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/netif.h" +#include "lwip/udp.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** period (in seconds) of the application calling dhcp_coarse_tmr() */ +#define DHCP_COARSE_TIMER_SECS 60 +/** period (in milliseconds) of the application calling dhcp_coarse_tmr() */ +#define DHCP_COARSE_TIMER_MSECS (DHCP_COARSE_TIMER_SECS * 1000UL) +/** period (in milliseconds) of the application calling dhcp_fine_tmr() */ +#define DHCP_FINE_TIMER_MSECS 500 + +struct dhcp +{ + /** transaction identifier of last sent request */ + u32_t xid; + /** our connection to the DHCP server */ + struct udp_pcb *pcb; + /** incoming msg */ + struct dhcp_msg *msg_in; + /** incoming msg options */ + void *options_in; + /** ingoing msg options length */ + u16_t options_in_len; + /** current DHCP state machine state */ + u8_t state; + /** retries of current request */ + u8_t tries; + + struct pbuf *p_out; /* pbuf of outcoming msg */ + struct dhcp_msg *msg_out; /* outgoing msg */ + u16_t options_out_len; /* outgoing msg options length */ + u16_t request_timeout; /* #ticks with period DHCP_FINE_TIMER_SECS for request timeout */ + u16_t t1_timeout; /* #ticks with period DHCP_COARSE_TIMER_SECS for renewal time */ + u16_t t2_timeout; /* #ticks with period DHCP_COARSE_TIMER_SECS for rebind time */ + struct ip_addr server_ip_addr; /* dhcp server address that offered this lease */ + struct ip_addr offered_ip_addr; + struct ip_addr offered_sn_mask; + struct ip_addr offered_gw_addr; + struct ip_addr offered_bc_addr; +#define DHCP_MAX_DNS 2 + u32_t dns_count; /* actual number of DNS servers obtained */ + struct ip_addr offered_dns_addr[DHCP_MAX_DNS]; /* DNS server addresses */ + + u32_t offered_t0_lease; /* lease period (in seconds) */ + u32_t offered_t1_renew; /* recommended renew time (usually 50% of lease period) */ + u32_t offered_t2_rebind; /* recommended rebind time (usually 66% of lease period) */ +#if LWIP_DHCP_AUTOIP_COOP + u8_t autoip_coop_state; +#endif +/** Patch #1308 + * TODO: See dhcp.c "TODO"s + */ +#if 0 + struct ip_addr offered_si_addr; + u8_t *boot_file_name; +#endif +}; + +/* MUST be compiled with "pack structs" or equivalent! */ +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +/** minimum set of fields of any DHCP message */ +struct dhcp_msg +{ + PACK_STRUCT_FIELD(u8_t op); + PACK_STRUCT_FIELD(u8_t htype); + PACK_STRUCT_FIELD(u8_t hlen); + PACK_STRUCT_FIELD(u8_t hops); + PACK_STRUCT_FIELD(u32_t xid); + PACK_STRUCT_FIELD(u16_t secs); + PACK_STRUCT_FIELD(u16_t flags); + PACK_STRUCT_FIELD(struct ip_addr ciaddr); + PACK_STRUCT_FIELD(struct ip_addr yiaddr); + PACK_STRUCT_FIELD(struct ip_addr siaddr); + PACK_STRUCT_FIELD(struct ip_addr giaddr); +#define DHCP_CHADDR_LEN 16U + PACK_STRUCT_FIELD(u8_t chaddr[DHCP_CHADDR_LEN]); +#define DHCP_SNAME_LEN 64U + PACK_STRUCT_FIELD(u8_t sname[DHCP_SNAME_LEN]); +#define DHCP_FILE_LEN 128U + PACK_STRUCT_FIELD(u8_t file[DHCP_FILE_LEN]); + PACK_STRUCT_FIELD(u32_t cookie); +#define DHCP_MIN_OPTIONS_LEN 68U +/** make sure user does not configure this too small */ +#if ((defined(DHCP_OPTIONS_LEN)) && (DHCP_OPTIONS_LEN < DHCP_MIN_OPTIONS_LEN)) +# undef DHCP_OPTIONS_LEN +#endif +/** allow this to be configured in lwipopts.h, but not too small */ +#if (!defined(DHCP_OPTIONS_LEN)) +/** set this to be sufficient for your options in outgoing DHCP msgs */ +# define DHCP_OPTIONS_LEN DHCP_MIN_OPTIONS_LEN +#endif + PACK_STRUCT_FIELD(u8_t options[DHCP_OPTIONS_LEN]); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +/** start DHCP configuration */ +err_t dhcp_start(struct netif *netif); +/** enforce early lease renewal (not needed normally)*/ +err_t dhcp_renew(struct netif *netif); +/** release the DHCP lease, usually called before dhcp_stop()*/ +err_t dhcp_release(struct netif *netif); +/** stop DHCP configuration */ +void dhcp_stop(struct netif *netif); +/** inform server of our manual IP address */ +void dhcp_inform(struct netif *netif); +/** Handle a possible change in the network configuration */ +void dhcp_network_changed(struct netif *netif); + +/** if enabled, check whether the offered IP address is not in use, using ARP */ +#if DHCP_DOES_ARP_CHECK +void dhcp_arp_reply(struct netif *netif, struct ip_addr *addr); +#endif + +/** to be called every minute */ +void dhcp_coarse_tmr(void); +/** to be called every half second */ +void dhcp_fine_tmr(void); + +/** DHCP message item offsets and length */ +#define DHCP_MSG_OFS (UDP_DATA_OFS) + #define DHCP_OP_OFS (DHCP_MSG_OFS + 0) + #define DHCP_HTYPE_OFS (DHCP_MSG_OFS + 1) + #define DHCP_HLEN_OFS (DHCP_MSG_OFS + 2) + #define DHCP_HOPS_OFS (DHCP_MSG_OFS + 3) + #define DHCP_XID_OFS (DHCP_MSG_OFS + 4) + #define DHCP_SECS_OFS (DHCP_MSG_OFS + 8) + #define DHCP_FLAGS_OFS (DHCP_MSG_OFS + 10) + #define DHCP_CIADDR_OFS (DHCP_MSG_OFS + 12) + #define DHCP_YIADDR_OFS (DHCP_MSG_OFS + 16) + #define DHCP_SIADDR_OFS (DHCP_MSG_OFS + 20) + #define DHCP_GIADDR_OFS (DHCP_MSG_OFS + 24) + #define DHCP_CHADDR_OFS (DHCP_MSG_OFS + 28) + #define DHCP_SNAME_OFS (DHCP_MSG_OFS + 44) + #define DHCP_FILE_OFS (DHCP_MSG_OFS + 108) +#define DHCP_MSG_LEN 236 + +#define DHCP_COOKIE_OFS (DHCP_MSG_OFS + DHCP_MSG_LEN) +#define DHCP_OPTIONS_OFS (DHCP_MSG_OFS + DHCP_MSG_LEN + 4) + +#define DHCP_CLIENT_PORT 68 +#define DHCP_SERVER_PORT 67 + +/** DHCP client states */ +#define DHCP_REQUESTING 1 +#define DHCP_INIT 2 +#define DHCP_REBOOTING 3 +#define DHCP_REBINDING 4 +#define DHCP_RENEWING 5 +#define DHCP_SELECTING 6 +#define DHCP_INFORMING 7 +#define DHCP_CHECKING 8 +#define DHCP_PERMANENT 9 +#define DHCP_BOUND 10 +/** not yet implemented #define DHCP_RELEASING 11 */ +#define DHCP_BACKING_OFF 12 +#define DHCP_OFF 13 + +/** AUTOIP cooperatation flags */ +#define DHCP_AUTOIP_COOP_STATE_OFF 0 +#define DHCP_AUTOIP_COOP_STATE_ON 1 + +#define DHCP_BOOTREQUEST 1 +#define DHCP_BOOTREPLY 2 + +#define DHCP_DISCOVER 1 +#define DHCP_OFFER 2 +#define DHCP_REQUEST 3 +#define DHCP_DECLINE 4 +#define DHCP_ACK 5 +#define DHCP_NAK 6 +#define DHCP_RELEASE 7 +#define DHCP_INFORM 8 + +#define DHCP_HTYPE_ETH 1 + +#define DHCP_HLEN_ETH 6 + +#define DHCP_BROADCAST_FLAG 15 +#define DHCP_BROADCAST_MASK (1 << DHCP_FLAG_BROADCAST) + +/** BootP options */ +#define DHCP_OPTION_PAD 0 +#define DHCP_OPTION_SUBNET_MASK 1 /* RFC 2132 3.3 */ +#define DHCP_OPTION_ROUTER 3 +#define DHCP_OPTION_DNS_SERVER 6 +#define DHCP_OPTION_HOSTNAME 12 +#define DHCP_OPTION_IP_TTL 23 +#define DHCP_OPTION_MTU 26 +#define DHCP_OPTION_BROADCAST 28 +#define DHCP_OPTION_TCP_TTL 37 +#define DHCP_OPTION_END 255 + +/** DHCP options */ +#define DHCP_OPTION_REQUESTED_IP 50 /* RFC 2132 9.1, requested IP address */ +#define DHCP_OPTION_LEASE_TIME 51 /* RFC 2132 9.2, time in seconds, in 4 bytes */ +#define DHCP_OPTION_OVERLOAD 52 /* RFC2132 9.3, use file and/or sname field for options */ + +#define DHCP_OPTION_MESSAGE_TYPE 53 /* RFC 2132 9.6, important for DHCP */ +#define DHCP_OPTION_MESSAGE_TYPE_LEN 1 + + +#define DHCP_OPTION_SERVER_ID 54 /* RFC 2132 9.7, server IP address */ +#define DHCP_OPTION_PARAMETER_REQUEST_LIST 55 /* RFC 2132 9.8, requested option types */ + +#define DHCP_OPTION_MAX_MSG_SIZE 57 /* RFC 2132 9.10, message size accepted >= 576 */ +#define DHCP_OPTION_MAX_MSG_SIZE_LEN 2 + +#define DHCP_OPTION_T1 58 /* T1 renewal time */ +#define DHCP_OPTION_T2 59 /* T2 rebinding time */ +#define DHCP_OPTION_US 60 +#define DHCP_OPTION_CLIENT_ID 61 +#define DHCP_OPTION_TFTP_SERVERNAME 66 +#define DHCP_OPTION_BOOTFILE 67 + +/** possible combinations of overloading the file and sname fields with options */ +#define DHCP_OVERLOAD_NONE 0 +#define DHCP_OVERLOAD_FILE 1 +#define DHCP_OVERLOAD_SNAME 2 +#define DHCP_OVERLOAD_SNAME_FILE 3 + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_DHCP */ + +#endif /*__LWIP_DHCP_H__*/ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dns.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dns.h new file mode 100644 index 000000000..c1b8ae031 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/dns.h @@ -0,0 +1,99 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * lwip DNS resolver header file. + + * Author: Jim Pettinato + * April 2007 + + * ported from uIP resolv.c Copyright (c) 2002-2003, Adam Dunkels. + * + * 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. + */ + +#ifndef __LWIP_DNS_H__ +#define __LWIP_DNS_H__ + +#include "lwip/opt.h" + +#if LWIP_DNS /* don't build if not configured for use in lwipopts.h */ + +/** DNS timer period */ +#define DNS_TMR_INTERVAL 1000 + +/** DNS field TYPE used for "Resource Records" */ +#define DNS_RRTYPE_A 1 /* a host address */ +#define DNS_RRTYPE_NS 2 /* an authoritative name server */ +#define DNS_RRTYPE_MD 3 /* a mail destination (Obsolete - use MX) */ +#define DNS_RRTYPE_MF 4 /* a mail forwarder (Obsolete - use MX) */ +#define DNS_RRTYPE_CNAME 5 /* the canonical name for an alias */ +#define DNS_RRTYPE_SOA 6 /* marks the start of a zone of authority */ +#define DNS_RRTYPE_MB 7 /* a mailbox domain name (EXPERIMENTAL) */ +#define DNS_RRTYPE_MG 8 /* a mail group member (EXPERIMENTAL) */ +#define DNS_RRTYPE_MR 9 /* a mail rename domain name (EXPERIMENTAL) */ +#define DNS_RRTYPE_NULL 10 /* a null RR (EXPERIMENTAL) */ +#define DNS_RRTYPE_WKS 11 /* a well known service description */ +#define DNS_RRTYPE_PTR 12 /* a domain name pointer */ +#define DNS_RRTYPE_HINFO 13 /* host information */ +#define DNS_RRTYPE_MINFO 14 /* mailbox or mail list information */ +#define DNS_RRTYPE_MX 15 /* mail exchange */ +#define DNS_RRTYPE_TXT 16 /* text strings */ + +/** DNS field CLASS used for "Resource Records" */ +#define DNS_RRCLASS_IN 1 /* the Internet */ +#define DNS_RRCLASS_CS 2 /* the CSNET class (Obsolete - used only for examples in some obsolete RFCs) */ +#define DNS_RRCLASS_CH 3 /* the CHAOS class */ +#define DNS_RRCLASS_HS 4 /* Hesiod [Dyer 87] */ +#define DNS_RRCLASS_FLUSH 0x800 /* Flush bit */ + +/** Callback which is invoked when a hostname is found. + * A function of this type must be implemented by the application using the DNS resolver. + * @param name pointer to the name that was looked up. + * @param ipaddr pointer to a struct ip_addr containing the IP address of the hostname, + * or NULL if the name could not be found (or on any other error). + * @param callback_arg a user-specified callback argument passed to dns_gethostbyname +*/ +typedef void (*dns_found_callback)(const char *name, struct ip_addr *ipaddr, void *callback_arg); + + +void dns_init(void); + +void dns_tmr(void); + +void dns_setserver(u8_t numdns, struct ip_addr *dnsserver); + +struct ip_addr dns_getserver(u8_t numdns); + +err_t dns_gethostbyname(const char *hostname, struct ip_addr *addr, + dns_found_callback found, void *callback_arg); + +#if DNS_LOCAL_HOSTLIST && DNS_LOCAL_HOSTLIST_IS_DYNAMIC +int dns_local_removehost(const char *hostname, const struct ip_addr *addr); +err_t dns_local_addhost(const char *hostname, const struct ip_addr *addr); +#endif /* DNS_LOCAL_HOSTLIST && DNS_LOCAL_HOSTLIST_IS_DYNAMIC */ + +#endif /* LWIP_DNS */ + +#endif /* __LWIP_DNS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/err.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/err.h new file mode 100644 index 000000000..792f27606 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/err.h @@ -0,0 +1,89 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_ERR_H__ +#define __LWIP_ERR_H__ + +#include "lwip/opt.h" +#include "lwip/arch.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** Define LWIP_ERR_T in cc.h if you want to use + * a different type for your platform (must be signed). */ +#ifdef LWIP_ERR_T +typedef LWIP_ERR_T err_t; +#else /* LWIP_ERR_T */ + typedef s8_t err_t; +#endif /* LWIP_ERR_T*/ + +/* Definitions for error constants. */ + +#define ERR_OK 0 /* No error, everything OK. */ +#define ERR_MEM -1 /* Out of memory error. */ +#define ERR_BUF -2 /* Buffer error. */ +#define ERR_TIMEOUT -3 /* Timeout. */ +#define ERR_RTE -4 /* Routing problem. */ + +#define ERR_IS_FATAL(e) ((e) < ERR_RTE) + +#define ERR_ABRT -5 /* Connection aborted. */ +#define ERR_RST -6 /* Connection reset. */ +#define ERR_CLSD -7 /* Connection closed. */ +#define ERR_CONN -8 /* Not connected. */ + +#define ERR_VAL -9 /* Illegal value. */ + +#define ERR_ARG -10 /* Illegal argument. */ + +#define ERR_USE -11 /* Address in use. */ + +#define ERR_IF -12 /* Low-level netif error */ +#define ERR_ISCONN -13 /* Already connected. */ + +#define ERR_INPROGRESS -14 /* Operation in progress */ + + +#ifdef LWIP_DEBUG +extern const char *lwip_strerr(err_t err); +#else +#define lwip_strerr(x) "" +#endif /* LWIP_DEBUG */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_ERR_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/init.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/init.h new file mode 100644 index 000000000..a86e0d9c8 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/init.h @@ -0,0 +1,74 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_INIT_H__ +#define __LWIP_INIT_H__ + +#include "lwip/opt.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** X.x.x: Major version of the stack */ +#define LWIP_VERSION_MAJOR 1U +/** x.X.x: Minor version of the stack */ +#define LWIP_VERSION_MINOR 3U +/** x.x.X: Revision of the stack */ +#define LWIP_VERSION_REVISION 2U +/** For release candidates, this is set to 1..254 + * For official releases, this is set to 255 (LWIP_RC_RELEASE) + * For development versions (CVS), this is set to 0 (LWIP_RC_DEVELOPMENT) */ +#define LWIP_VERSION_RC 255U + +/** LWIP_VERSION_RC is set to LWIP_RC_RELEASE for official releases */ +#define LWIP_RC_RELEASE 255U +/** LWIP_VERSION_RC is set to LWIP_RC_DEVELOPMENT for CVS versions */ +#define LWIP_RC_DEVELOPMENT 0U + +#define LWIP_VERSION_IS_RELEASE (LWIP_VERSION_RC == LWIP_RC_RELEASE) +#define LWIP_VERSION_IS_DEVELOPMENT (LWIP_VERSION_RC == LWIP_RC_DEVELOPMENT) +#define LWIP_VERSION_IS_RC ((LWIP_VERSION_RC != LWIP_RC_RELEASE) && (LWIP_VERSION_RC != LWIP_RC_DEVELOPMENT)) + +/** Provides the version of the stack */ +#define LWIP_VERSION (LWIP_VERSION_MAJOR << 24 | LWIP_VERSION_MINOR << 16 | \ + LWIP_VERSION_REVISION << 8 | LWIP_VERSION_RC) + +/* Modules initialization */ +void lwip_init(void); + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_INIT_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/mem.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/mem.h new file mode 100644 index 000000000..327229e58 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/mem.h @@ -0,0 +1,109 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_MEM_H__ +#define __LWIP_MEM_H__ + +#include "lwip/opt.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if MEM_LIBC_MALLOC + +#include <stddef.h> /* for size_t */ + +typedef size_t mem_size_t; + +/* aliases for C library malloc() */ +#define mem_init() +/* in case C library malloc() needs extra protection, + * allow these defines to be overridden. + */ +#ifndef mem_free +#define mem_free free +#endif +#ifndef mem_malloc +#define mem_malloc malloc +#endif +#ifndef mem_calloc +#define mem_calloc calloc +#endif +#ifndef mem_realloc +static void *mem_realloc(void *mem, mem_size_t size) +{ + LWIP_UNUSED_ARG(size); + return mem; +} +#endif +#else /* MEM_LIBC_MALLOC */ + +/* MEM_SIZE would have to be aligned, but using 64000 here instead of + * 65535 leaves some room for alignment... + */ +#if MEM_SIZE > 64000l +typedef u32_t mem_size_t; +#else +typedef u16_t mem_size_t; +#endif /* MEM_SIZE > 64000 */ + +#if MEM_USE_POOLS +/** mem_init is not used when using pools instead of a heap */ +#define mem_init() +/** mem_realloc is not used when using pools instead of a heap: + we can't free part of a pool element and don't want to copy the rest */ +#define mem_realloc(mem, size) (mem) +#else /* MEM_USE_POOLS */ +/* lwIP alternative malloc */ +void mem_init(void); +void *mem_realloc(void *mem, mem_size_t size); +#endif /* MEM_USE_POOLS */ +void *mem_malloc(mem_size_t size); +void *mem_calloc(mem_size_t count, mem_size_t size); +void mem_free(void *mem); +#endif /* MEM_LIBC_MALLOC */ + +#ifndef LWIP_MEM_ALIGN_SIZE +#define LWIP_MEM_ALIGN_SIZE(size) (((size) + MEM_ALIGNMENT - 1) & ~(MEM_ALIGNMENT-1)) +#endif + +#ifndef LWIP_MEM_ALIGN +#define LWIP_MEM_ALIGN(addr) ((void *)(((mem_ptr_t)(addr) + MEM_ALIGNMENT - 1) & ~(mem_ptr_t)(MEM_ALIGNMENT-1))) +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_MEM_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp.h new file mode 100644 index 000000000..3de7bf9a0 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp.h @@ -0,0 +1,118 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#ifndef __LWIP_MEMP_H__ +#define __LWIP_MEMP_H__ + +#include "lwip/opt.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Create the list of all memory pools managed by memp. MEMP_MAX represents a NULL pool at the end */ +typedef enum { +#define LWIP_MEMPOOL(name,num,size,desc) MEMP_##name, +#include "lwip/memp_std.h" + MEMP_MAX +} memp_t; + +#if MEM_USE_POOLS +/* Use a helper type to get the start and end of the user "memory pools" for mem_malloc */ +typedef enum { + /* Get the first (via: + MEMP_POOL_HELPER_START = ((u8_t) 1*MEMP_POOL_A + 0*MEMP_POOL_B + 0*MEMP_POOL_C + 0)*/ + MEMP_POOL_HELPER_FIRST = ((u8_t) +#define LWIP_MEMPOOL(name,num,size,desc) +#define LWIP_MALLOC_MEMPOOL_START 1 +#define LWIP_MALLOC_MEMPOOL(num, size) * MEMP_POOL_##size + 0 +#define LWIP_MALLOC_MEMPOOL_END +#include "lwip/memp_std.h" + ) , + /* Get the last (via: + MEMP_POOL_HELPER_END = ((u8_t) 0 + MEMP_POOL_A*0 + MEMP_POOL_B*0 + MEMP_POOL_C*1) */ + MEMP_POOL_HELPER_LAST = ((u8_t) +#define LWIP_MEMPOOL(name,num,size,desc) +#define LWIP_MALLOC_MEMPOOL_START +#define LWIP_MALLOC_MEMPOOL(num, size) 0 + MEMP_POOL_##size * +#define LWIP_MALLOC_MEMPOOL_END 1 +#include "lwip/memp_std.h" + ) +} memp_pool_helper_t; + +/* The actual start and stop values are here (cast them over) + We use this helper type and these defines so we can avoid using const memp_t values */ +#define MEMP_POOL_FIRST ((memp_t) MEMP_POOL_HELPER_FIRST) +#define MEMP_POOL_LAST ((memp_t) MEMP_POOL_HELPER_LAST) +#endif /* MEM_USE_POOLS */ + +#if MEMP_MEM_MALLOC || MEM_USE_POOLS +extern const u16_t memp_sizes[MEMP_MAX]; +#endif /* MEMP_MEM_MALLOC || MEM_USE_POOLS */ + +#if MEMP_MEM_MALLOC + +#include "mem.h" + +#define memp_init() +#define memp_malloc(type) mem_malloc(memp_sizes[type]) +#define memp_free(type, mem) mem_free(mem) + +#else /* MEMP_MEM_MALLOC */ + +#if MEM_USE_POOLS +/** This structure is used to save the pool one element came from. */ +struct memp_malloc_helper +{ + memp_t poolnr; +}; +#endif /* MEM_USE_POOLS */ + +void memp_init(void); + +#if MEMP_OVERFLOW_CHECK +void *memp_malloc_fn(memp_t type, const char* file, const int line); +#define memp_malloc(t) memp_malloc_fn((t), __FILE__, __LINE__) +#else +void *memp_malloc(memp_t type); +#endif +void memp_free(memp_t type, void *mem); + +#endif /* MEMP_MEM_MALLOC */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_MEMP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp_std.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp_std.h new file mode 100644 index 000000000..d8d4945dd --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/memp_std.h @@ -0,0 +1,104 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * SETUP: Make sure we define everything we will need. + * + * We have create three types of pools: + * 1) MEMPOOL - standard pools + * 2) MALLOC_MEMPOOL - to be used by mem_malloc in mem.c + * 3) PBUF_MEMPOOL - a mempool of pbuf's, so include space for the pbuf struct + * + * If the include'r doesn't require any special treatment of each of the types + * above, then will declare #2 & #3 to be just standard mempools. + */ +#ifndef LWIP_MALLOC_MEMPOOL +/* This treats "malloc pools" just like any other pool. + The pools are a little bigger to provide 'size' as the amount of user data. */ +#define LWIP_MALLOC_MEMPOOL(num, size) LWIP_MEMPOOL(POOL_##size, num, (size + sizeof(struct memp_malloc_helper)), "MALLOC_"#size) +#define LWIP_MALLOC_MEMPOOL_START +#define LWIP_MALLOC_MEMPOOL_END +#endif /* LWIP_MALLOC_MEMPOOL */ + +#ifndef LWIP_PBUF_MEMPOOL +/* This treats "pbuf pools" just like any other pool. + * Allocates buffers for a pbuf struct AND a payload size */ +#define LWIP_PBUF_MEMPOOL(name, num, payload, desc) LWIP_MEMPOOL(name, num, (MEMP_ALIGN_SIZE(sizeof(struct pbuf)) + MEMP_ALIGN_SIZE(payload)), desc) +#endif /* LWIP_PBUF_MEMPOOL */ + + +/* + * A list of internal pools used by LWIP. + * + * LWIP_MEMPOOL(pool_name, number_elements, element_size, pool_description) + * creates a pool name MEMP_pool_name. description is used in stats.c + */ +#if LWIP_RAW +LWIP_MEMPOOL(RAW_PCB, MEMP_NUM_RAW_PCB, sizeof(struct raw_pcb), "RAW_PCB") +#endif /* LWIP_RAW */ + +#if LWIP_UDP +LWIP_MEMPOOL(UDP_PCB, MEMP_NUM_UDP_PCB, sizeof(struct udp_pcb), "UDP_PCB") +#endif /* LWIP_UDP */ + +#if LWIP_TCP +LWIP_MEMPOOL(TCP_PCB, MEMP_NUM_TCP_PCB, sizeof(struct tcp_pcb), "TCP_PCB") +LWIP_MEMPOOL(TCP_PCB_LISTEN, MEMP_NUM_TCP_PCB_LISTEN, sizeof(struct tcp_pcb_listen), "TCP_PCB_LISTEN") +LWIP_MEMPOOL(TCP_SEG, MEMP_NUM_TCP_SEG, sizeof(struct tcp_seg), "TCP_SEG") +#endif /* LWIP_TCP */ + +#if IP_REASSEMBLY +LWIP_MEMPOOL(REASSDATA, MEMP_NUM_REASSDATA, sizeof(struct ip_reassdata), "REASSDATA") +#endif /* IP_REASSEMBLY */ + +#if LWIP_NETCONN +LWIP_MEMPOOL(NETBUF, MEMP_NUM_NETBUF, sizeof(struct netbuf), "NETBUF") +LWIP_MEMPOOL(NETCONN, MEMP_NUM_NETCONN, sizeof(struct netconn), "NETCONN") +#endif /* LWIP_NETCONN */ + +#if NO_SYS==0 +LWIP_MEMPOOL(TCPIP_MSG_API, MEMP_NUM_TCPIP_MSG_API, sizeof(struct tcpip_msg), "TCPIP_MSG_API") +LWIP_MEMPOOL(TCPIP_MSG_INPKT,MEMP_NUM_TCPIP_MSG_INPKT, sizeof(struct tcpip_msg), "TCPIP_MSG_INPKT") +#endif /* NO_SYS==0 */ + +#if ARP_QUEUEING +LWIP_MEMPOOL(ARP_QUEUE, MEMP_NUM_ARP_QUEUE, sizeof(struct etharp_q_entry), "ARP_QUEUE") +#endif /* ARP_QUEUEING */ + +#if LWIP_IGMP +LWIP_MEMPOOL(IGMP_GROUP, MEMP_NUM_IGMP_GROUP, sizeof(struct igmp_group), "IGMP_GROUP") +#endif /* LWIP_IGMP */ + +#if NO_SYS==0 +LWIP_MEMPOOL(SYS_TIMEOUT, MEMP_NUM_SYS_TIMEOUT, sizeof(struct sys_timeo), "SYS_TIMEOUT") +#endif /* NO_SYS==0 */ + + +/* + * A list of pools of pbuf's used by LWIP. + * + * LWIP_PBUF_MEMPOOL(pool_name, number_elements, pbuf_payload_size, pool_description) + * creates a pool name MEMP_pool_name. description is used in stats.c + * This allocates enough space for the pbuf struct and a payload. + * (Example: pbuf_payload_size=0 allocates only size for the struct) + */ +LWIP_PBUF_MEMPOOL(PBUF, MEMP_NUM_PBUF, 0, "PBUF_REF/ROM") +LWIP_PBUF_MEMPOOL(PBUF_POOL, PBUF_POOL_SIZE, PBUF_POOL_BUFSIZE, "PBUF_POOL") + + +/* + * Allow for user-defined pools; this must be explicitly set in lwipopts.h + * since the default is to NOT look for lwippools.h + */ +#if MEMP_USE_CUSTOM_POOLS +#include "lwippools.h" +#endif /* MEMP_USE_CUSTOM_POOLS */ + +/* + * REQUIRED CLEANUP: Clear up so we don't get "multiply defined" error later + * (#undef is ignored for something that is not defined) + */ +#undef LWIP_MEMPOOL +#undef LWIP_MALLOC_MEMPOOL +#undef LWIP_MALLOC_MEMPOOL_START +#undef LWIP_MALLOC_MEMPOOL_END +#undef LWIP_PBUF_MEMPOOL diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netbuf.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netbuf.h new file mode 100644 index 000000000..ab9ea33d1 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netbuf.h @@ -0,0 +1,88 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_NETBUF_H__ +#define __LWIP_NETBUF_H__ + +#include "lwip/opt.h" +#include "lwip/pbuf.h" +#include "lwip/ip_addr.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct netbuf { + struct pbuf *p, *ptr; + struct ip_addr *addr; + u16_t port; +#if LWIP_NETBUF_RECVINFO + struct ip_addr *toaddr; + u16_t toport; +#endif /* LWIP_NETBUF_RECVINFO */ +}; + +/* Network buffer functions: */ +struct netbuf * netbuf_new (void); +void netbuf_delete (struct netbuf *buf); +void * netbuf_alloc (struct netbuf *buf, u16_t size); +void netbuf_free (struct netbuf *buf); +err_t netbuf_ref (struct netbuf *buf, + const void *dataptr, u16_t size); +void netbuf_chain (struct netbuf *head, + struct netbuf *tail); + +u16_t netbuf_len (struct netbuf *buf); +err_t netbuf_data (struct netbuf *buf, + void **dataptr, u16_t *len); +s8_t netbuf_next (struct netbuf *buf); +void netbuf_first (struct netbuf *buf); + + +#define netbuf_copy_partial(buf, dataptr, len, offset) \ + pbuf_copy_partial((buf)->p, (dataptr), (len), (offset)) +#define netbuf_copy(buf,dataptr,len) netbuf_copy_partial(buf, dataptr, len, 0) +#define netbuf_take(buf, dataptr, len) pbuf_take((buf)->p, dataptr, len) +#define netbuf_len(buf) ((buf)->p->tot_len) +#define netbuf_fromaddr(buf) ((buf)->addr) +#define netbuf_fromport(buf) ((buf)->port) +#if LWIP_NETBUF_RECVINFO +#define netbuf_destaddr(buf) ((buf)->toaddr) +#define netbuf_destport(buf) ((buf)->toport) +#endif /* LWIP_NETBUF_RECVINFO */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_NETBUF_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netdb.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netdb.h new file mode 100644 index 000000000..c59c3a442 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netdb.h @@ -0,0 +1,113 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Simon Goldschmidt + * + */ + +#include "lwip/opt.h" + +#if LWIP_DNS && LWIP_SOCKET + +#include <stddef.h> /* for size_t */ + +#include "lwip/sockets.h" + +/* some rarely used options */ +#ifndef LWIP_DNS_API_DECLARE_H_ERRNO +#define LWIP_DNS_API_DECLARE_H_ERRNO 1 +#endif + +#ifndef LWIP_DNS_API_DEFINE_ERRORS +#define LWIP_DNS_API_DEFINE_ERRORS 1 +#endif + +#ifndef LWIP_DNS_API_DECLARE_STRUCTS +#define LWIP_DNS_API_DECLARE_STRUCTS 1 +#endif + +#if LWIP_DNS_API_DEFINE_ERRORS +/** Errors used by the DNS API functions, h_errno can be one of them */ +#define EAI_NONAME 200 +#define EAI_SERVICE 201 +#define EAI_FAIL 202 +#define EAI_MEMORY 203 + +#define HOST_NOT_FOUND 210 +#define NO_DATA 211 +#define NO_RECOVERY 212 +#define TRY_AGAIN 213 +#endif /* LWIP_DNS_API_DEFINE_ERRORS */ + +#if LWIP_DNS_API_DECLARE_STRUCTS +struct hostent { + char *h_name; /* Official name of the host. */ + char **h_aliases; /* A pointer to an array of pointers to alternative host names, + terminated by a null pointer. */ + int h_addrtype; /* Address type. */ + int h_length; /* The length, in bytes, of the address. */ + char **h_addr_list; /* A pointer to an array of pointers to network addresses (in + network byte order) for the host, terminated by a null pointer. */ +#define h_addr h_addr_list[0] /* for backward compatibility */ +}; + +struct addrinfo { + int ai_flags; /* Input flags. */ + int ai_family; /* Address family of socket. */ + int ai_socktype; /* Socket type. */ + int ai_protocol; /* Protocol of socket. */ + socklen_t ai_addrlen; /* Length of socket address. */ + struct sockaddr *ai_addr; /* Socket address of socket. */ + char *ai_canonname; /* Canonical name of service location. */ + struct addrinfo *ai_next; /* Pointer to next in list. */ +}; +#endif /* LWIP_DNS_API_DECLARE_STRUCTS */ + +#if LWIP_DNS_API_DECLARE_H_ERRNO +/* application accessable error code set by the DNS API functions */ +extern int h_errno; +#endif /* LWIP_DNS_API_DECLARE_H_ERRNO*/ + +struct hostent *lwip_gethostbyname(const char *name); +int lwip_gethostbyname_r(const char *name, struct hostent *ret, char *buf, + size_t buflen, struct hostent **result, int *h_errnop); +void lwip_freeaddrinfo(struct addrinfo *ai); +int lwip_getaddrinfo(const char *nodename, + const char *servname, + const struct addrinfo *hints, + struct addrinfo **res); + +#if LWIP_COMPAT_SOCKETS +#define gethostbyname(name) lwip_gethostbyname(name) +#define gethostbyname_r(name, ret, buf, buflen, result, h_errnop) \ + lwip_gethostbyname_r(name, ret, buf, buflen, result, h_errnop) +#define freeaddrinfo(addrinfo) lwip_freeaddrinfo(addrinfo) +#define getaddrinfo(nodname, servname, hints, res) \ + lwip_getaddrinfo(nodname, servname, hints, res) +#endif /* LWIP_COMPAT_SOCKETS */ + +#endif /* LWIP_DNS && LWIP_SOCKET */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netif.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netif.h new file mode 100644 index 000000000..8e650d74d --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netif.h @@ -0,0 +1,265 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_NETIF_H__ +#define __LWIP_NETIF_H__ + +#include "lwip/opt.h" + +#define ENABLE_LOOPBACK (LWIP_NETIF_LOOPBACK || LWIP_HAVE_LOOPIF) + +#include "lwip/err.h" + +#include "lwip/ip_addr.h" + +#include "lwip/inet.h" +#include "lwip/pbuf.h" +#if LWIP_DHCP +struct dhcp; +#endif +#if LWIP_AUTOIP +struct autoip; +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* Throughout this file, IP addresses are expected to be in + * the same byte order as in IP_PCB. */ + +/** must be the maximum of all used hardware address lengths + across all types of interfaces in use */ +#define NETIF_MAX_HWADDR_LEN 6U + +/** TODO: define the use (where, when, whom) of netif flags */ + +/** whether the network interface is 'up'. this is + * a software flag used to control whether this network + * interface is enabled and processes traffic. + */ +#define NETIF_FLAG_UP 0x01U +/** if set, the netif has broadcast capability */ +#define NETIF_FLAG_BROADCAST 0x02U +/** if set, the netif is one end of a point-to-point connection */ +#define NETIF_FLAG_POINTTOPOINT 0x04U +/** if set, the interface is configured using DHCP */ +#define NETIF_FLAG_DHCP 0x08U +/** if set, the interface has an active link + * (set by the network interface driver) */ +#define NETIF_FLAG_LINK_UP 0x10U +/** if set, the netif is an device using ARP */ +#define NETIF_FLAG_ETHARP 0x20U +/** if set, the netif has IGMP capability */ +#define NETIF_FLAG_IGMP 0x40U + +/** Generic data structure used for all lwIP network interfaces. + * The following fields should be filled in by the initialization + * function for the device driver: hwaddr_len, hwaddr[], mtu, flags */ + +struct netif { + /** pointer to next in linked list */ + struct netif *next; + + /** IP address configuration in network byte order */ + struct ip_addr ip_addr; + struct ip_addr netmask; + struct ip_addr gw; + + /** This function is called by the network device driver + * to pass a packet up the TCP/IP stack. */ + err_t (* input)(struct pbuf *p, struct netif *inp); + /** This function is called by the IP module when it wants + * to send a packet on the interface. This function typically + * first resolves the hardware address, then sends the packet. */ + err_t (* output)(struct netif *netif, struct pbuf *p, + struct ip_addr *ipaddr); + /** This function is called by the ARP module when it wants + * to send a packet on the interface. This function outputs + * the pbuf as-is on the link medium. */ + err_t (* linkoutput)(struct netif *netif, struct pbuf *p); +#if LWIP_NETIF_STATUS_CALLBACK + /** This function is called when the netif state is set to up or down + */ + void (* status_callback)(struct netif *netif); +#endif /* LWIP_NETIF_STATUS_CALLBACK */ +#if LWIP_NETIF_LINK_CALLBACK + /** This function is called when the netif link is set to up or down + */ + void (* link_callback)(struct netif *netif); +#endif /* LWIP_NETIF_LINK_CALLBACK */ + /** This field can be set by the device driver and could point + * to state information for the device. */ + void *state; +#if LWIP_DHCP + /** the DHCP client state information for this netif */ + struct dhcp *dhcp; +#endif /* LWIP_DHCP */ +#if LWIP_AUTOIP + /** the AutoIP client state information for this netif */ + struct autoip *autoip; +#endif +#if LWIP_NETIF_HOSTNAME + /* the hostname for this netif, NULL is a valid value */ + char* hostname; +#endif /* LWIP_NETIF_HOSTNAME */ + /** maximum transfer unit (in bytes) */ + u16_t mtu; + /** number of bytes used in hwaddr */ + u8_t hwaddr_len; + /** link level hardware address of this interface */ + u8_t hwaddr[NETIF_MAX_HWADDR_LEN]; + /** flags (see NETIF_FLAG_ above) */ + u8_t flags; + /** descriptive abbreviation */ + char name[2]; + /** number of this interface */ + u8_t num; +#if LWIP_SNMP + /** link type (from "snmp_ifType" enum from snmp.h) */ + u8_t link_type; + /** (estimate) link speed */ + u32_t link_speed; + /** timestamp at last change made (up/down) */ + u32_t ts; + /** counters */ + u32_t ifinoctets; + u32_t ifinucastpkts; + u32_t ifinnucastpkts; + u32_t ifindiscards; + u32_t ifoutoctets; + u32_t ifoutucastpkts; + u32_t ifoutnucastpkts; + u32_t ifoutdiscards; +#endif /* LWIP_SNMP */ +#if LWIP_IGMP + /* This function could be called to add or delete a entry in the multicast filter table of the ethernet MAC.*/ + err_t (*igmp_mac_filter)( struct netif *netif, struct ip_addr *group, u8_t action); +#endif /* LWIP_IGMP */ +#if LWIP_NETIF_HWADDRHINT + u8_t *addr_hint; +#endif /* LWIP_NETIF_HWADDRHINT */ +#if ENABLE_LOOPBACK + /* List of packets to be queued for ourselves. */ + struct pbuf *loop_first; + struct pbuf *loop_last; +#if LWIP_LOOPBACK_MAX_PBUFS + u16_t loop_cnt_current; +#endif /* LWIP_LOOPBACK_MAX_PBUFS */ +#endif /* ENABLE_LOOPBACK */ +}; + +#if LWIP_SNMP +#define NETIF_INIT_SNMP(netif, type, speed) \ + /* use "snmp_ifType" enum from snmp.h for "type", snmp_ifType_ethernet_csmacd by example */ \ + netif->link_type = type; \ + /* your link speed here (units: bits per second) */ \ + netif->link_speed = speed; \ + netif->ts = 0; \ + netif->ifinoctets = 0; \ + netif->ifinucastpkts = 0; \ + netif->ifinnucastpkts = 0; \ + netif->ifindiscards = 0; \ + netif->ifoutoctets = 0; \ + netif->ifoutucastpkts = 0; \ + netif->ifoutnucastpkts = 0; \ + netif->ifoutdiscards = 0 +#else /* LWIP_SNMP */ +#define NETIF_INIT_SNMP(netif, type, speed) +#endif /* LWIP_SNMP */ + + +/** The list of network interfaces. */ +extern struct netif *netif_list; +/** The default network interface. */ +extern struct netif *netif_default; + +#define netif_init() /* Compatibility define, not init needed. */ + +struct netif *netif_add(struct netif *netif, struct ip_addr *ipaddr, struct ip_addr *netmask, + struct ip_addr *gw, + void *state, + err_t (* init)(struct netif *netif), + err_t (* input)(struct pbuf *p, struct netif *netif)); + +void +netif_set_addr(struct netif *netif,struct ip_addr *ipaddr, struct ip_addr *netmask, + struct ip_addr *gw); +void netif_remove(struct netif * netif); + +/* Returns a network interface given its name. The name is of the form + "et0", where the first two letters are the "name" field in the + netif structure, and the digit is in the num field in the same + structure. */ +struct netif *netif_find(char *name); + +void netif_set_default(struct netif *netif); + +void netif_set_ipaddr(struct netif *netif, struct ip_addr *ipaddr); +void netif_set_netmask(struct netif *netif, struct ip_addr *netmask); +void netif_set_gw(struct netif *netif, struct ip_addr *gw); + +void netif_set_up(struct netif *netif); +void netif_set_down(struct netif *netif); +u8_t netif_is_up(struct netif *netif); + +#if LWIP_NETIF_STATUS_CALLBACK +/* + * Set callback to be called when interface is brought up/down + */ +void netif_set_status_callback(struct netif *netif, void (* status_callback)(struct netif *netif)); +#endif /* LWIP_NETIF_STATUS_CALLBACK */ + +#if LWIP_NETIF_LINK_CALLBACK +void netif_set_link_up(struct netif *netif); +void netif_set_link_down(struct netif *netif); +u8_t netif_is_link_up(struct netif *netif); +/* + * Set callback to be called when link is brought up/down + */ +void netif_set_link_callback(struct netif *netif, void (* link_callback)(struct netif *netif)); +#endif /* LWIP_NETIF_LINK_CALLBACK */ + +#ifdef __cplusplus +} +#endif + +#if ENABLE_LOOPBACK +err_t netif_loop_output(struct netif *netif, struct pbuf *p, struct ip_addr *dest_ip); +void netif_poll(struct netif *netif); +#if !LWIP_NETIF_LOOPBACK_MULTITHREADING +void netif_poll_all(void); +#endif /* !LWIP_NETIF_LOOPBACK_MULTITHREADING */ +#endif /* ENABLE_LOOPBACK */ + +#endif /* __LWIP_NETIF_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netifapi.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netifapi.h new file mode 100644 index 000000000..22d8690ea --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/netifapi.h @@ -0,0 +1,107 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * 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 file is part of the lwIP TCP/IP stack. + * + */ + +#ifndef __LWIP_NETIFAPI_H__ +#define __LWIP_NETIFAPI_H__ + +#include "lwip/opt.h" + +#if LWIP_NETIF_API /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/sys.h" +#include "lwip/netif.h" +#include "lwip/dhcp.h" +#include "lwip/autoip.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct netifapi_msg_msg { +#if !LWIP_TCPIP_CORE_LOCKING + sys_sem_t sem; +#endif /* !LWIP_TCPIP_CORE_LOCKING */ + err_t err; + struct netif *netif; + union { + struct { + struct ip_addr *ipaddr; + struct ip_addr *netmask; + struct ip_addr *gw; + void *state; + err_t (* init) (struct netif *netif); + err_t (* input)(struct pbuf *p, struct netif *netif); + } add; + struct { + void (* voidfunc)(struct netif *netif); + err_t (* errtfunc)(struct netif *netif); + } common; + } msg; +}; + +struct netifapi_msg { + void (* function)(struct netifapi_msg_msg *msg); + struct netifapi_msg_msg msg; +}; + + +/* API for application */ +err_t netifapi_netif_add ( struct netif *netif, + struct ip_addr *ipaddr, + struct ip_addr *netmask, + struct ip_addr *gw, + void *state, + err_t (* init)(struct netif *netif), + err_t (* input)(struct pbuf *p, struct netif *netif) ); + +err_t netifapi_netif_set_addr ( struct netif *netif, + struct ip_addr *ipaddr, + struct ip_addr *netmask, + struct ip_addr *gw ); + +err_t netifapi_netif_common ( struct netif *netif, + void (* voidfunc)(struct netif *netif), + err_t (* errtfunc)(struct netif *netif) ); + +#define netifapi_netif_remove(n) netifapi_netif_common(n, netif_remove, NULL) +#define netifapi_netif_set_up(n) netifapi_netif_common(n, netif_set_up, NULL) +#define netifapi_netif_set_down(n) netifapi_netif_common(n, netif_set_down, NULL) +#define netifapi_netif_set_default(n) netifapi_netif_common(n, netif_set_default, NULL) +#define netifapi_dhcp_start(n) netifapi_netif_common(n, NULL, dhcp_start) +#define netifapi_dhcp_stop(n) netifapi_netif_common(n, dhcp_stop, NULL) +#define netifapi_autoip_start(n) netifapi_netif_common(n, NULL, autoip_start) +#define netifapi_autoip_stop(n) netifapi_netif_common(n, NULL, autoip_stop) + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_NETIF_API */ + +#endif /* __LWIP_NETIFAPI_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/opt.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/opt.h new file mode 100644 index 000000000..a7cdbd8e7 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/opt.h @@ -0,0 +1,1842 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * + * lwIP Options Configuration + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_OPT_H__ +#define __LWIP_OPT_H__ + +/* + * Include user defined options first. Anything not defined in these files + * will be set to standard values. Override anything you dont like! + */ +#include "lwipopts.h" +#include "lwip/debug.h" + +/* + ----------------------------------------------- + ---------- Platform specific locking ---------- + ----------------------------------------------- +*/ + +/** + * SYS_LIGHTWEIGHT_PROT==1: if you want inter-task protection for certain + * critical regions during buffer allocation, deallocation and memory + * allocation and deallocation. + */ +#ifndef SYS_LIGHTWEIGHT_PROT +#define SYS_LIGHTWEIGHT_PROT 0 +#endif + +/** + * NO_SYS==1: Provides VERY minimal functionality. Otherwise, + * use lwIP facilities. + */ +#ifndef NO_SYS +#define NO_SYS 0 +#endif + +/** + * MEMCPY: override this if you have a faster implementation at hand than the + * one included in your C library + */ +#ifndef MEMCPY +#define MEMCPY(dst,src,len) memcpy(dst,src,len) +#endif + +/** + * SMEMCPY: override this with care! Some compilers (e.g. gcc) can inline a + * call to memcpy() if the length is known at compile time and is small. + */ +#ifndef SMEMCPY +#define SMEMCPY(dst,src,len) memcpy(dst,src,len) +#endif + +/* + ------------------------------------ + ---------- Memory options ---------- + ------------------------------------ +*/ +/** + * MEM_LIBC_MALLOC==1: Use malloc/free/realloc provided by your C-library + * instead of the lwip internal allocator. Can save code size if you + * already use it. + */ +#ifndef MEM_LIBC_MALLOC +#define MEM_LIBC_MALLOC 0 +#endif + +/** +* MEMP_MEM_MALLOC==1: Use mem_malloc/mem_free instead of the lwip pool allocator. +* Especially useful with MEM_LIBC_MALLOC but handle with care regarding execution +* speed and usage from interrupts! +*/ +#ifndef MEMP_MEM_MALLOC +#define MEMP_MEM_MALLOC 0 +#endif + +/** + * MEM_ALIGNMENT: should be set to the alignment of the CPU + * 4 byte alignment -> #define MEM_ALIGNMENT 4 + * 2 byte alignment -> #define MEM_ALIGNMENT 2 + */ +#ifndef MEM_ALIGNMENT +#define MEM_ALIGNMENT 1 +#endif + +/** + * MEM_SIZE: the size of the heap memory. If the application will send + * a lot of data that needs to be copied, this should be set high. + */ +#ifndef MEM_SIZE +#define MEM_SIZE 1600 +#endif + +/** + * MEMP_OVERFLOW_CHECK: memp overflow protection reserves a configurable + * amount of bytes before and after each memp element in every pool and fills + * it with a prominent default value. + * MEMP_OVERFLOW_CHECK == 0 no checking + * MEMP_OVERFLOW_CHECK == 1 checks each element when it is freed + * MEMP_OVERFLOW_CHECK >= 2 checks each element in every pool every time + * memp_malloc() or memp_free() is called (useful but slow!) + */ +#ifndef MEMP_OVERFLOW_CHECK +#define MEMP_OVERFLOW_CHECK 0 +#endif + +/** + * MEMP_SANITY_CHECK==1: run a sanity check after each memp_free() to make + * sure that there are no cycles in the linked lists. + */ +#ifndef MEMP_SANITY_CHECK +#define MEMP_SANITY_CHECK 0 +#endif + +/** + * MEM_USE_POOLS==1: Use an alternative to malloc() by allocating from a set + * of memory pools of various sizes. When mem_malloc is called, an element of + * the smallest pool that can provide the length needed is returned. + * To use this, MEMP_USE_CUSTOM_POOLS also has to be enabled. + */ +#ifndef MEM_USE_POOLS +#define MEM_USE_POOLS 0 +#endif + +/** + * MEM_USE_POOLS_TRY_BIGGER_POOL==1: if one malloc-pool is empty, try the next + * bigger pool - WARNING: THIS MIGHT WASTE MEMORY but it can make a system more + * reliable. */ +#ifndef MEM_USE_POOLS_TRY_BIGGER_POOL +#define MEM_USE_POOLS_TRY_BIGGER_POOL 0 +#endif + +/** + * MEMP_USE_CUSTOM_POOLS==1: whether to include a user file lwippools.h + * that defines additional pools beyond the "standard" ones required + * by lwIP. If you set this to 1, you must have lwippools.h in your + * inlude path somewhere. + */ +#ifndef MEMP_USE_CUSTOM_POOLS +#define MEMP_USE_CUSTOM_POOLS 0 +#endif + +/** + * Set this to 1 if you want to free PBUF_RAM pbufs (or call mem_free()) from + * interrupt context (or another context that doesn't allow waiting for a + * semaphore). + * If set to 1, mem_malloc will be protected by a semaphore and SYS_ARCH_PROTECT, + * while mem_free will only use SYS_ARCH_PROTECT. mem_malloc SYS_ARCH_UNPROTECTs + * with each loop so that mem_free can run. + * + * ATTENTION: As you can see from the above description, this leads to dis-/ + * enabling interrupts often, which can be slow! Also, on low memory, mem_malloc + * can need longer. + * + * If you don't want that, at least for NO_SYS=0, you can still use the following + * functions to enqueue a deallocation call which then runs in the tcpip_thread + * context: + * - pbuf_free_callback(p); + * - mem_free_callback(m); + */ +#ifndef LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT +#define LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 0 +#endif + +/* + ------------------------------------------------ + ---------- Internal Memory Pool Sizes ---------- + ------------------------------------------------ +*/ +/** + * MEMP_NUM_PBUF: the number of memp struct pbufs (used for PBUF_ROM and PBUF_REF). + * If the application sends a lot of data out of ROM (or other static memory), + * this should be set high. + */ +#ifndef MEMP_NUM_PBUF +#define MEMP_NUM_PBUF 16 +#endif + +/** + * MEMP_NUM_RAW_PCB: Number of raw connection PCBs + * (requires the LWIP_RAW option) + */ +#ifndef MEMP_NUM_RAW_PCB +#define MEMP_NUM_RAW_PCB 4 +#endif + +/** + * MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One + * per active UDP "connection". + * (requires the LWIP_UDP option) + */ +#ifndef MEMP_NUM_UDP_PCB +#define MEMP_NUM_UDP_PCB 4 +#endif + +/** + * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. + * (requires the LWIP_TCP option) + */ +#ifndef MEMP_NUM_TCP_PCB +#define MEMP_NUM_TCP_PCB 5 +#endif + +/** + * MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP connections. + * (requires the LWIP_TCP option) + */ +#ifndef MEMP_NUM_TCP_PCB_LISTEN +#define MEMP_NUM_TCP_PCB_LISTEN 8 +#endif + +/** + * MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP segments. + * (requires the LWIP_TCP option) + */ +#ifndef MEMP_NUM_TCP_SEG +#define MEMP_NUM_TCP_SEG 16 +#endif + +/** + * MEMP_NUM_REASSDATA: the number of simultaneously IP packets queued for + * reassembly (whole packets, not fragments!) + */ +#ifndef MEMP_NUM_REASSDATA +#define MEMP_NUM_REASSDATA 5 +#endif + +/** + * MEMP_NUM_ARP_QUEUE: the number of simulateously queued outgoing + * packets (pbufs) that are waiting for an ARP request (to resolve + * their destination address) to finish. + * (requires the ARP_QUEUEING option) + */ +#ifndef MEMP_NUM_ARP_QUEUE +#define MEMP_NUM_ARP_QUEUE 30 +#endif + +/** + * MEMP_NUM_IGMP_GROUP: The number of multicast groups whose network interfaces + * can be members et the same time (one per netif - allsystems group -, plus one + * per netif membership). + * (requires the LWIP_IGMP option) + */ +#ifndef MEMP_NUM_IGMP_GROUP +#define MEMP_NUM_IGMP_GROUP 8 +#endif + +/** + * MEMP_NUM_SYS_TIMEOUT: the number of simulateously active timeouts. + * (requires NO_SYS==0) + */ +#ifndef MEMP_NUM_SYS_TIMEOUT +#define MEMP_NUM_SYS_TIMEOUT 3 +#endif + +/** + * MEMP_NUM_NETBUF: the number of struct netbufs. + * (only needed if you use the sequential API, like api_lib.c) + */ +#ifndef MEMP_NUM_NETBUF +#define MEMP_NUM_NETBUF 2 +#endif + +/** + * MEMP_NUM_NETCONN: the number of struct netconns. + * (only needed if you use the sequential API, like api_lib.c) + */ +#ifndef MEMP_NUM_NETCONN +#define MEMP_NUM_NETCONN 4 +#endif + +/** + * MEMP_NUM_TCPIP_MSG_API: the number of struct tcpip_msg, which are used + * for callback/timeout API communication. + * (only needed if you use tcpip.c) + */ +#ifndef MEMP_NUM_TCPIP_MSG_API +#define MEMP_NUM_TCPIP_MSG_API 8 +#endif + +/** + * MEMP_NUM_TCPIP_MSG_INPKT: the number of struct tcpip_msg, which are used + * for incoming packets. + * (only needed if you use tcpip.c) + */ +#ifndef MEMP_NUM_TCPIP_MSG_INPKT +#define MEMP_NUM_TCPIP_MSG_INPKT 8 +#endif + +/** + * PBUF_POOL_SIZE: the number of buffers in the pbuf pool. + */ +#ifndef PBUF_POOL_SIZE +#define PBUF_POOL_SIZE 16 +#endif + +/* + --------------------------------- + ---------- ARP options ---------- + --------------------------------- +*/ +/** + * LWIP_ARP==1: Enable ARP functionality. + */ +#ifndef LWIP_ARP +#define LWIP_ARP 1 +#endif + +/** + * ARP_TABLE_SIZE: Number of active MAC-IP address pairs cached. + */ +#ifndef ARP_TABLE_SIZE +#define ARP_TABLE_SIZE 10 +#endif + +/** + * ARP_QUEUEING==1: Outgoing packets are queued during hardware address + * resolution. + */ +#ifndef ARP_QUEUEING +#define ARP_QUEUEING 1 +#endif + +/** + * ETHARP_TRUST_IP_MAC==1: Incoming IP packets cause the ARP table to be + * updated with the source MAC and IP addresses supplied in the packet. + * You may want to disable this if you do not trust LAN peers to have the + * correct addresses, or as a limited approach to attempt to handle + * spoofing. If disabled, lwIP will need to make a new ARP request if + * the peer is not already in the ARP table, adding a little latency. + */ +#ifndef ETHARP_TRUST_IP_MAC +#define ETHARP_TRUST_IP_MAC 1 +#endif + +/** + * ETHARP_SUPPORT_VLAN==1: support receiving ethernet packets with VLAN header. + * Additionally, you can define ETHARP_VLAN_CHECK to an u16_t VLAN ID to check. + * If ETHARP_VLAN_CHECK is defined, only VLAN-traffic for this VLAN is accepted. + * If ETHARP_VLAN_CHECK is not defined, all traffic is accepted. + */ +#ifndef ETHARP_SUPPORT_VLAN +#define ETHARP_SUPPORT_VLAN 0 +#endif + +/* + -------------------------------- + ---------- IP options ---------- + -------------------------------- +*/ +/** + * IP_FORWARD==1: Enables the ability to forward IP packets across network + * interfaces. If you are going to run lwIP on a device with only one network + * interface, define this to 0. + */ +#ifndef IP_FORWARD +#define IP_FORWARD 0 +#endif + +/** + * IP_OPTIONS_ALLOWED: Defines the behavior for IP options. + * IP_OPTIONS_ALLOWED==0: All packets with IP options are dropped. + * IP_OPTIONS_ALLOWED==1: IP options are allowed (but not parsed). + */ +#ifndef IP_OPTIONS_ALLOWED +#define IP_OPTIONS_ALLOWED 1 +#endif + +/** + * IP_REASSEMBLY==1: Reassemble incoming fragmented IP packets. Note that + * this option does not affect outgoing packet sizes, which can be controlled + * via IP_FRAG. + */ +#ifndef IP_REASSEMBLY +#define IP_REASSEMBLY 1 +#endif + +/** + * IP_FRAG==1: Fragment outgoing IP packets if their size exceeds MTU. Note + * that this option does not affect incoming packet sizes, which can be + * controlled via IP_REASSEMBLY. + */ +#ifndef IP_FRAG +#define IP_FRAG 1 +#endif + +/** + * IP_REASS_MAXAGE: Maximum time (in multiples of IP_TMR_INTERVAL - so seconds, normally) + * a fragmented IP packet waits for all fragments to arrive. If not all fragments arrived + * in this time, the whole packet is discarded. + */ +#ifndef IP_REASS_MAXAGE +#define IP_REASS_MAXAGE 3 +#endif + +/** + * IP_REASS_MAX_PBUFS: Total maximum amount of pbufs waiting to be reassembled. + * Since the received pbufs are enqueued, be sure to configure + * PBUF_POOL_SIZE > IP_REASS_MAX_PBUFS so that the stack is still able to receive + * packets even if the maximum amount of fragments is enqueued for reassembly! + */ +#ifndef IP_REASS_MAX_PBUFS +#define IP_REASS_MAX_PBUFS 10 +#endif + +/** + * IP_FRAG_USES_STATIC_BUF==1: Use a static MTU-sized buffer for IP + * fragmentation. Otherwise pbufs are allocated and reference the original + * packet data to be fragmented. + */ +#ifndef IP_FRAG_USES_STATIC_BUF +#define IP_FRAG_USES_STATIC_BUF 1 +#endif + +/** + * IP_FRAG_MAX_MTU: Assumed max MTU on any interface for IP frag buffer + * (requires IP_FRAG_USES_STATIC_BUF==1) + */ +#if IP_FRAG_USES_STATIC_BUF && !defined(IP_FRAG_MAX_MTU) +#define IP_FRAG_MAX_MTU 1500 +#endif + +/** + * IP_DEFAULT_TTL: Default value for Time-To-Live used by transport layers. + */ +#ifndef IP_DEFAULT_TTL +#define IP_DEFAULT_TTL 255 +#endif + +/** + * IP_SOF_BROADCAST=1: Use the SOF_BROADCAST field to enable broadcast + * filter per pcb on udp and raw send operations. To enable broadcast filter + * on recv operations, you also have to set IP_SOF_BROADCAST_RECV=1. + */ +#ifndef IP_SOF_BROADCAST +#define IP_SOF_BROADCAST 0 +#endif + +/** + * IP_SOF_BROADCAST_RECV (requires IP_SOF_BROADCAST=1) enable the broadcast + * filter on recv operations. + */ +#ifndef IP_SOF_BROADCAST_RECV +#define IP_SOF_BROADCAST_RECV 0 +#endif + +/* + ---------------------------------- + ---------- ICMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_ICMP==1: Enable ICMP module inside the IP stack. + * Be careful, disable that make your product non-compliant to RFC1122 + */ +#ifndef LWIP_ICMP +#define LWIP_ICMP 1 +#endif + +/** + * ICMP_TTL: Default value for Time-To-Live used by ICMP packets. + */ +#ifndef ICMP_TTL +#define ICMP_TTL (IP_DEFAULT_TTL) +#endif + +/** + * LWIP_BROADCAST_PING==1: respond to broadcast pings (default is unicast only) + */ +#ifndef LWIP_BROADCAST_PING +#define LWIP_BROADCAST_PING 0 +#endif + +/** + * LWIP_MULTICAST_PING==1: respond to multicast pings (default is unicast only) + */ +#ifndef LWIP_MULTICAST_PING +#define LWIP_MULTICAST_PING 0 +#endif + +/* + --------------------------------- + ---------- RAW options ---------- + --------------------------------- +*/ +/** + * LWIP_RAW==1: Enable application layer to hook into the IP layer itself. + */ +#ifndef LWIP_RAW +#define LWIP_RAW 1 +#endif + +/** + * LWIP_RAW==1: Enable application layer to hook into the IP layer itself. + */ +#ifndef RAW_TTL +#define RAW_TTL (IP_DEFAULT_TTL) +#endif + +/* + ---------------------------------- + ---------- DHCP options ---------- + ---------------------------------- +*/ +/** + * LWIP_DHCP==1: Enable DHCP module. + */ +#ifndef LWIP_DHCP +#define LWIP_DHCP 0 +#endif + +/** + * DHCP_DOES_ARP_CHECK==1: Do an ARP check on the offered address. + */ +#ifndef DHCP_DOES_ARP_CHECK +#define DHCP_DOES_ARP_CHECK ((LWIP_DHCP) && (LWIP_ARP)) +#endif + +/* + ------------------------------------ + ---------- AUTOIP options ---------- + ------------------------------------ +*/ +/** + * LWIP_AUTOIP==1: Enable AUTOIP module. + */ +#ifndef LWIP_AUTOIP +#define LWIP_AUTOIP 0 +#endif + +/** + * LWIP_DHCP_AUTOIP_COOP==1: Allow DHCP and AUTOIP to be both enabled on + * the same interface at the same time. + */ +#ifndef LWIP_DHCP_AUTOIP_COOP +#define LWIP_DHCP_AUTOIP_COOP 0 +#endif + +/** + * LWIP_DHCP_AUTOIP_COOP_TRIES: Set to the number of DHCP DISCOVER probes + * that should be sent before falling back on AUTOIP. This can be set + * as low as 1 to get an AutoIP address very quickly, but you should + * be prepared to handle a changing IP address when DHCP overrides + * AutoIP. + */ +#ifndef LWIP_DHCP_AUTOIP_COOP_TRIES +#define LWIP_DHCP_AUTOIP_COOP_TRIES 9 +#endif + +/* + ---------------------------------- + ---------- SNMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_SNMP==1: Turn on SNMP module. UDP must be available for SNMP + * transport. + */ +#ifndef LWIP_SNMP +#define LWIP_SNMP 0 +#endif + +/** + * SNMP_CONCURRENT_REQUESTS: Number of concurrent requests the module will + * allow. At least one request buffer is required. + */ +#ifndef SNMP_CONCURRENT_REQUESTS +#define SNMP_CONCURRENT_REQUESTS 1 +#endif + +/** + * SNMP_TRAP_DESTINATIONS: Number of trap destinations. At least one trap + * destination is required + */ +#ifndef SNMP_TRAP_DESTINATIONS +#define SNMP_TRAP_DESTINATIONS 1 +#endif + +/** + * SNMP_PRIVATE_MIB: + */ +#ifndef SNMP_PRIVATE_MIB +#define SNMP_PRIVATE_MIB 0 +#endif + +/** + * Only allow SNMP write actions that are 'safe' (e.g. disabeling netifs is not + * a safe action and disabled when SNMP_SAFE_REQUESTS = 1). + * Unsafe requests are disabled by default! + */ +#ifndef SNMP_SAFE_REQUESTS +#define SNMP_SAFE_REQUESTS 1 +#endif + +/* + ---------------------------------- + ---------- IGMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_IGMP==1: Turn on IGMP module. + */ +#ifndef LWIP_IGMP +#define LWIP_IGMP 0 +#endif + +/* + ---------------------------------- + ---------- DNS options ----------- + ---------------------------------- +*/ +/** + * LWIP_DNS==1: Turn on DNS module. UDP must be available for DNS + * transport. + */ +#ifndef LWIP_DNS +#define LWIP_DNS 0 +#endif + +/** DNS maximum number of entries to maintain locally. */ +#ifndef DNS_TABLE_SIZE +#define DNS_TABLE_SIZE 4 +#endif + +/** DNS maximum host name length supported in the name table. */ +#ifndef DNS_MAX_NAME_LENGTH +#define DNS_MAX_NAME_LENGTH 256 +#endif + +/** The maximum of DNS servers */ +#ifndef DNS_MAX_SERVERS +#define DNS_MAX_SERVERS 2 +#endif + +/** DNS do a name checking between the query and the response. */ +#ifndef DNS_DOES_NAME_CHECK +#define DNS_DOES_NAME_CHECK 1 +#endif + +/** DNS use a local buffer if DNS_USES_STATIC_BUF=0, a static one if + DNS_USES_STATIC_BUF=1, or a dynamic one if DNS_USES_STATIC_BUF=2. + The buffer will be of size DNS_MSG_SIZE */ +#ifndef DNS_USES_STATIC_BUF +#define DNS_USES_STATIC_BUF 1 +#endif + +/** DNS message max. size. Default value is RFC compliant. */ +#ifndef DNS_MSG_SIZE +#define DNS_MSG_SIZE 512 +#endif + +/** DNS_LOCAL_HOSTLIST: Implements a local host-to-address list. If enabled, + * you have to define + * #define DNS_LOCAL_HOSTLIST_INIT {{"host1", 0x123}, {"host2", 0x234}} + * (an array of structs name/address, where address is an u32_t in network + * byte order). + * + * Instead, you can also use an external function: + * #define DNS_LOOKUP_LOCAL_EXTERN(x) extern u32_t my_lookup_function(const char *name) + * that returns the IP address or INADDR_NONE if not found. + */ +#ifndef DNS_LOCAL_HOSTLIST +#define DNS_LOCAL_HOSTLIST 0 +#endif /* DNS_LOCAL_HOSTLIST */ + +/** If this is turned on, the local host-list can be dynamically changed + * at runtime. */ +#ifndef DNS_LOCAL_HOSTLIST_IS_DYNAMIC +#define DNS_LOCAL_HOSTLIST_IS_DYNAMIC 0 +#endif /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */ + +/* + --------------------------------- + ---------- UDP options ---------- + --------------------------------- +*/ +/** + * LWIP_UDP==1: Turn on UDP. + */ +#ifndef LWIP_UDP +#define LWIP_UDP 1 +#endif + +/** + * LWIP_UDPLITE==1: Turn on UDP-Lite. (Requires LWIP_UDP) + */ +#ifndef LWIP_UDPLITE +#define LWIP_UDPLITE 0 +#endif + +/** + * UDP_TTL: Default Time-To-Live value. + */ +#ifndef UDP_TTL +#define UDP_TTL (IP_DEFAULT_TTL) +#endif + +/** + * LWIP_NETBUF_RECVINFO==1: append destination addr and port to every netbuf. + */ +#ifndef LWIP_NETBUF_RECVINFO +#define LWIP_NETBUF_RECVINFO 0 +#endif + +/* + --------------------------------- + ---------- TCP options ---------- + --------------------------------- +*/ +/** + * LWIP_TCP==1: Turn on TCP. + */ +#ifndef LWIP_TCP +#define LWIP_TCP 1 +#endif + +/** + * TCP_TTL: Default Time-To-Live value. + */ +#ifndef TCP_TTL +#define TCP_TTL (IP_DEFAULT_TTL) +#endif + +/** + * TCP_WND: The size of a TCP window. This must be at least + * (2 * TCP_MSS) for things to work well + */ +#ifndef TCP_WND +#define TCP_WND (4 * TCP_MSS) +#endif + +/** + * TCP_MAXRTX: Maximum number of retransmissions of data segments. + */ +#ifndef TCP_MAXRTX +#define TCP_MAXRTX 12 +#endif + +/** + * TCP_SYNMAXRTX: Maximum number of retransmissions of SYN segments. + */ +#ifndef TCP_SYNMAXRTX +#define TCP_SYNMAXRTX 6 +#endif + +/** + * TCP_QUEUE_OOSEQ==1: TCP will queue segments that arrive out of order. + * Define to 0 if your device is low on memory. + */ +#ifndef TCP_QUEUE_OOSEQ +#define TCP_QUEUE_OOSEQ (LWIP_TCP) +#endif + +/** + * TCP_MSS: TCP Maximum segment size. (default is 536, a conservative default, + * you might want to increase this.) + * For the receive side, this MSS is advertised to the remote side + * when opening a connection. For the transmit size, this MSS sets + * an upper limit on the MSS advertised by the remote host. + */ +#ifndef TCP_MSS +#define TCP_MSS 536 +#endif + +/** + * TCP_CALCULATE_EFF_SEND_MSS: "The maximum size of a segment that TCP really + * sends, the 'effective send MSS,' MUST be the smaller of the send MSS (which + * reflects the available reassembly buffer size at the remote host) and the + * largest size permitted by the IP layer" (RFC 1122) + * Setting this to 1 enables code that checks TCP_MSS against the MTU of the + * netif used for a connection and limits the MSS if it would be too big otherwise. + */ +#ifndef TCP_CALCULATE_EFF_SEND_MSS +#define TCP_CALCULATE_EFF_SEND_MSS 1 +#endif + + +/** + * TCP_SND_BUF: TCP sender buffer space (bytes). + */ +#ifndef TCP_SND_BUF +#define TCP_SND_BUF 256 +#endif + +/** + * TCP_SND_QUEUELEN: TCP sender buffer space (pbufs). This must be at least + * as much as (2 * TCP_SND_BUF/TCP_MSS) for things to work. + */ +#ifndef TCP_SND_QUEUELEN +#define TCP_SND_QUEUELEN (4 * (TCP_SND_BUF)/(TCP_MSS)) +#endif + +/** + * TCP_SNDLOWAT: TCP writable space (bytes). This must be less than or equal + * to TCP_SND_BUF. It is the amount of space which must be available in the + * TCP snd_buf for select to return writable. + */ +#ifndef TCP_SNDLOWAT +#define TCP_SNDLOWAT ((TCP_SND_BUF)/2) +#endif + +/** + * TCP_LISTEN_BACKLOG: Enable the backlog option for tcp listen pcb. + */ +#ifndef TCP_LISTEN_BACKLOG +#define TCP_LISTEN_BACKLOG 0 +#endif + +/** + * The maximum allowed backlog for TCP listen netconns. + * This backlog is used unless another is explicitly specified. + * 0xff is the maximum (u8_t). + */ +#ifndef TCP_DEFAULT_LISTEN_BACKLOG +#define TCP_DEFAULT_LISTEN_BACKLOG 0xff +#endif + +/** + * LWIP_TCP_TIMESTAMPS==1: support the TCP timestamp option. + */ +#ifndef LWIP_TCP_TIMESTAMPS +#define LWIP_TCP_TIMESTAMPS 0 +#endif + +/** + * TCP_WND_UPDATE_THRESHOLD: difference in window to trigger an + * explicit window update + */ +#ifndef TCP_WND_UPDATE_THRESHOLD +#define TCP_WND_UPDATE_THRESHOLD (TCP_WND / 4) +#endif + +/** + * LWIP_EVENT_API and LWIP_CALLBACK_API: Only one of these should be set to 1. + * LWIP_EVENT_API==1: The user defines lwip_tcp_event() to receive all + * events (accept, sent, etc) that happen in the system. + * LWIP_CALLBACK_API==1: The PCB callback function is called directly + * for the event. + */ +#ifndef LWIP_EVENT_API +#define LWIP_EVENT_API 0 +#define LWIP_CALLBACK_API 1 +#else +#define LWIP_EVENT_API 1 +#define LWIP_CALLBACK_API 0 +#endif + + +/* + ---------------------------------- + ---------- Pbuf options ---------- + ---------------------------------- +*/ +/** + * PBUF_LINK_HLEN: the number of bytes that should be allocated for a + * link level header. The default is 14, the standard value for + * Ethernet. + */ +#ifndef PBUF_LINK_HLEN +#define PBUF_LINK_HLEN 14 +#endif + +/** + * PBUF_POOL_BUFSIZE: the size of each pbuf in the pbuf pool. The default is + * designed to accomodate single full size TCP frame in one pbuf, including + * TCP_MSS, IP header, and link header. + */ +#ifndef PBUF_POOL_BUFSIZE +#define PBUF_POOL_BUFSIZE LWIP_MEM_ALIGN_SIZE(TCP_MSS+40+PBUF_LINK_HLEN) +#endif + +/* + ------------------------------------------------ + ---------- Network Interfaces options ---------- + ------------------------------------------------ +*/ +/** + * LWIP_NETIF_HOSTNAME==1: use DHCP_OPTION_HOSTNAME with netif's hostname + * field. + */ +#ifndef LWIP_NETIF_HOSTNAME +#define LWIP_NETIF_HOSTNAME 0 +#endif + +/** + * LWIP_NETIF_API==1: Support netif api (in netifapi.c) + */ +#ifndef LWIP_NETIF_API +#define LWIP_NETIF_API 0 +#endif + +/** + * LWIP_NETIF_STATUS_CALLBACK==1: Support a callback function whenever an interface + * changes its up/down status (i.e., due to DHCP IP acquistion) + */ +#ifndef LWIP_NETIF_STATUS_CALLBACK +#define LWIP_NETIF_STATUS_CALLBACK 0 +#endif + +/** + * LWIP_NETIF_LINK_CALLBACK==1: Support a callback function from an interface + * whenever the link changes (i.e., link down) + */ +#ifndef LWIP_NETIF_LINK_CALLBACK +#define LWIP_NETIF_LINK_CALLBACK 0 +#endif + +/** + * LWIP_NETIF_HWADDRHINT==1: Cache link-layer-address hints (e.g. table + * indices) in struct netif. TCP and UDP can make use of this to prevent + * scanning the ARP table for every sent packet. While this is faster for big + * ARP tables or many concurrent connections, it might be counterproductive + * if you have a tiny ARP table or if there never are concurrent connections. + */ +#ifndef LWIP_NETIF_HWADDRHINT +#define LWIP_NETIF_HWADDRHINT 0 +#endif + +/** + * LWIP_NETIF_LOOPBACK==1: Support sending packets with a destination IP + * address equal to the netif IP address, looping them back up the stack. + */ +#ifndef LWIP_NETIF_LOOPBACK +#define LWIP_NETIF_LOOPBACK 0 +#endif + +/** + * LWIP_LOOPBACK_MAX_PBUFS: Maximum number of pbufs on queue for loopback + * sending for each netif (0 = disabled) + */ +#ifndef LWIP_LOOPBACK_MAX_PBUFS +#define LWIP_LOOPBACK_MAX_PBUFS 0 +#endif + +/** + * LWIP_NETIF_LOOPBACK_MULTITHREADING: Indicates whether threading is enabled in + * the system, as netifs must change how they behave depending on this setting + * for the LWIP_NETIF_LOOPBACK option to work. + * Setting this is needed to avoid reentering non-reentrant functions like + * tcp_input(). + * LWIP_NETIF_LOOPBACK_MULTITHREADING==1: Indicates that the user is using a + * multithreaded environment like tcpip.c. In this case, netif->input() + * is called directly. + * LWIP_NETIF_LOOPBACK_MULTITHREADING==0: Indicates a polling (or NO_SYS) setup. + * The packets are put on a list and netif_poll() must be called in + * the main application loop. + */ +#ifndef LWIP_NETIF_LOOPBACK_MULTITHREADING +#define LWIP_NETIF_LOOPBACK_MULTITHREADING (!NO_SYS) +#endif + +/** + * LWIP_NETIF_TX_SINGLE_PBUF: if this is set to 1, lwIP tries to put all data + * to be sent into one single pbuf. This is for compatibility with DMA-enabled + * MACs that do not support scatter-gather. + * Beware that this might involve CPU-memcpy before transmitting that would not + * be needed without this flag! Use this only if you need to! + * + * @todo: TCP and IP-frag do not work with this, yet: + */ +#ifndef LWIP_NETIF_TX_SINGLE_PBUF +#define LWIP_NETIF_TX_SINGLE_PBUF 0 +#endif /* LWIP_NETIF_TX_SINGLE_PBUF */ + +/* + ------------------------------------ + ---------- LOOPIF options ---------- + ------------------------------------ +*/ +/** + * LWIP_HAVE_LOOPIF==1: Support loop interface (127.0.0.1) and loopif.c + */ +#ifndef LWIP_HAVE_LOOPIF +#define LWIP_HAVE_LOOPIF 0 +#endif + +/* + ------------------------------------ + ---------- SLIPIF options ---------- + ------------------------------------ +*/ +/** + * LWIP_HAVE_SLIPIF==1: Support slip interface and slipif.c + */ +#ifndef LWIP_HAVE_SLIPIF +#define LWIP_HAVE_SLIPIF 0 +#endif + +/* + ------------------------------------ + ---------- Thread options ---------- + ------------------------------------ +*/ +/** + * TCPIP_THREAD_NAME: The name assigned to the main tcpip thread. + */ +#ifndef TCPIP_THREAD_NAME +#define TCPIP_THREAD_NAME "tcpip_thread" +#endif + +/** + * TCPIP_THREAD_STACKSIZE: The stack size used by the main tcpip thread. + * The stack size value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef TCPIP_THREAD_STACKSIZE +#define TCPIP_THREAD_STACKSIZE 0 +#endif + +/** + * TCPIP_THREAD_PRIO: The priority assigned to the main tcpip thread. + * The priority value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef TCPIP_THREAD_PRIO +#define TCPIP_THREAD_PRIO 1 +#endif + +/** + * TCPIP_MBOX_SIZE: The mailbox size for the tcpip thread messages + * The queue size value itself is platform-dependent, but is passed to + * sys_mbox_new() when tcpip_init is called. + */ +#ifndef TCPIP_MBOX_SIZE +#define TCPIP_MBOX_SIZE 0 +#endif + +/** + * SLIPIF_THREAD_NAME: The name assigned to the slipif_loop thread. + */ +#ifndef SLIPIF_THREAD_NAME +#define SLIPIF_THREAD_NAME "slipif_loop" +#endif + +/** + * SLIP_THREAD_STACKSIZE: The stack size used by the slipif_loop thread. + * The stack size value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef SLIPIF_THREAD_STACKSIZE +#define SLIPIF_THREAD_STACKSIZE 0 +#endif + +/** + * SLIPIF_THREAD_PRIO: The priority assigned to the slipif_loop thread. + * The priority value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef SLIPIF_THREAD_PRIO +#define SLIPIF_THREAD_PRIO 1 +#endif + +/** + * PPP_THREAD_NAME: The name assigned to the pppMain thread. + */ +#ifndef PPP_THREAD_NAME +#define PPP_THREAD_NAME "pppMain" +#endif + +/** + * PPP_THREAD_STACKSIZE: The stack size used by the pppMain thread. + * The stack size value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef PPP_THREAD_STACKSIZE +#define PPP_THREAD_STACKSIZE 0 +#endif + +/** + * PPP_THREAD_PRIO: The priority assigned to the pppMain thread. + * The priority value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef PPP_THREAD_PRIO +#define PPP_THREAD_PRIO 1 +#endif + +/** + * DEFAULT_THREAD_NAME: The name assigned to any other lwIP thread. + */ +#ifndef DEFAULT_THREAD_NAME +#define DEFAULT_THREAD_NAME "lwIP" +#endif + +/** + * DEFAULT_THREAD_STACKSIZE: The stack size used by any other lwIP thread. + * The stack size value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef DEFAULT_THREAD_STACKSIZE +#define DEFAULT_THREAD_STACKSIZE 0 +#endif + +/** + * DEFAULT_THREAD_PRIO: The priority assigned to any other lwIP thread. + * The priority value itself is platform-dependent, but is passed to + * sys_thread_new() when the thread is created. + */ +#ifndef DEFAULT_THREAD_PRIO +#define DEFAULT_THREAD_PRIO 1 +#endif + +/** + * DEFAULT_RAW_RECVMBOX_SIZE: The mailbox size for the incoming packets on a + * NETCONN_RAW. The queue size value itself is platform-dependent, but is passed + * to sys_mbox_new() when the recvmbox is created. + */ +#ifndef DEFAULT_RAW_RECVMBOX_SIZE +#define DEFAULT_RAW_RECVMBOX_SIZE 0 +#endif + +/** + * DEFAULT_UDP_RECVMBOX_SIZE: The mailbox size for the incoming packets on a + * NETCONN_UDP. The queue size value itself is platform-dependent, but is passed + * to sys_mbox_new() when the recvmbox is created. + */ +#ifndef DEFAULT_UDP_RECVMBOX_SIZE +#define DEFAULT_UDP_RECVMBOX_SIZE 0 +#endif + +/** + * DEFAULT_TCP_RECVMBOX_SIZE: The mailbox size for the incoming packets on a + * NETCONN_TCP. The queue size value itself is platform-dependent, but is passed + * to sys_mbox_new() when the recvmbox is created. + */ +#ifndef DEFAULT_TCP_RECVMBOX_SIZE +#define DEFAULT_TCP_RECVMBOX_SIZE 0 +#endif + +/** + * DEFAULT_ACCEPTMBOX_SIZE: The mailbox size for the incoming connections. + * The queue size value itself is platform-dependent, but is passed to + * sys_mbox_new() when the acceptmbox is created. + */ +#ifndef DEFAULT_ACCEPTMBOX_SIZE +#define DEFAULT_ACCEPTMBOX_SIZE 0 +#endif + +/* + ---------------------------------------------- + ---------- Sequential layer options ---------- + ---------------------------------------------- +*/ +/** + * LWIP_TCPIP_CORE_LOCKING: (EXPERIMENTAL!) + * Don't use it if you're not an active lwIP project member + */ +#ifndef LWIP_TCPIP_CORE_LOCKING +#define LWIP_TCPIP_CORE_LOCKING 0 +#endif + +/** + * LWIP_NETCONN==1: Enable Netconn API (require to use api_lib.c) + */ +#ifndef LWIP_NETCONN +#define LWIP_NETCONN 1 +#endif + +/* + ------------------------------------ + ---------- Socket options ---------- + ------------------------------------ +*/ +/** + * LWIP_SOCKET==1: Enable Socket API (require to use sockets.c) + */ +#ifndef LWIP_SOCKET +#define LWIP_SOCKET 1 +#endif + +/** + * LWIP_COMPAT_SOCKETS==1: Enable BSD-style sockets functions names. + * (only used if you use sockets.c) + */ +#ifndef LWIP_COMPAT_SOCKETS +#define LWIP_COMPAT_SOCKETS 1 +#endif + +/** + * LWIP_POSIX_SOCKETS_IO_NAMES==1: Enable POSIX-style sockets functions names. + * Disable this option if you use a POSIX operating system that uses the same + * names (read, write & close). (only used if you use sockets.c) + */ +#ifndef LWIP_POSIX_SOCKETS_IO_NAMES +#define LWIP_POSIX_SOCKETS_IO_NAMES 1 +#endif + +/** + * LWIP_TCP_KEEPALIVE==1: Enable TCP_KEEPIDLE, TCP_KEEPINTVL and TCP_KEEPCNT + * options processing. Note that TCP_KEEPIDLE and TCP_KEEPINTVL have to be set + * in seconds. (does not require sockets.c, and will affect tcp.c) + */ +#ifndef LWIP_TCP_KEEPALIVE +#define LWIP_TCP_KEEPALIVE 1 +#endif + +/** + * LWIP_SO_RCVTIMEO==1: Enable SO_RCVTIMEO processing. + */ +#ifndef LWIP_SO_RCVTIMEO +#define LWIP_SO_RCVTIMEO 0 +#endif + +/** + * LWIP_SO_RCVBUF==1: Enable SO_RCVBUF processing. + */ +#ifndef LWIP_SO_RCVBUF +#define LWIP_SO_RCVBUF 0 +#endif + +/** + * If LWIP_SO_RCVBUF is used, this is the default value for recv_bufsize. + */ +#ifndef RECV_BUFSIZE_DEFAULT +#define RECV_BUFSIZE_DEFAULT INT_MAX +#endif + +/** + * SO_REUSE==1: Enable SO_REUSEADDR and SO_REUSEPORT options. DO NOT USE! + */ +#ifndef SO_REUSE +#define SO_REUSE 0 +#endif + +/* + ---------------------------------------- + ---------- Statistics options ---------- + ---------------------------------------- +*/ +/** + * LWIP_STATS==1: Enable statistics collection in lwip_stats. + */ +#ifndef LWIP_STATS +#define LWIP_STATS 1 +#endif + +#if LWIP_STATS + +/** + * LWIP_STATS_DISPLAY==1: Compile in the statistics output functions. + */ +#ifndef LWIP_STATS_DISPLAY +#define LWIP_STATS_DISPLAY 0 +#endif + +/** + * LINK_STATS==1: Enable link stats. + */ +#ifndef LINK_STATS +#define LINK_STATS 1 +#endif + +/** + * ETHARP_STATS==1: Enable etharp stats. + */ +#ifndef ETHARP_STATS +#define ETHARP_STATS (LWIP_ARP) +#endif + +/** + * IP_STATS==1: Enable IP stats. + */ +#ifndef IP_STATS +#define IP_STATS 1 +#endif + +/** + * IPFRAG_STATS==1: Enable IP fragmentation stats. Default is + * on if using either frag or reass. + */ +#ifndef IPFRAG_STATS +#define IPFRAG_STATS (IP_REASSEMBLY || IP_FRAG) +#endif + +/** + * ICMP_STATS==1: Enable ICMP stats. + */ +#ifndef ICMP_STATS +#define ICMP_STATS 1 +#endif + +/** + * IGMP_STATS==1: Enable IGMP stats. + */ +#ifndef IGMP_STATS +#define IGMP_STATS (LWIP_IGMP) +#endif + +/** + * UDP_STATS==1: Enable UDP stats. Default is on if + * UDP enabled, otherwise off. + */ +#ifndef UDP_STATS +#define UDP_STATS (LWIP_UDP) +#endif + +/** + * TCP_STATS==1: Enable TCP stats. Default is on if TCP + * enabled, otherwise off. + */ +#ifndef TCP_STATS +#define TCP_STATS (LWIP_TCP) +#endif + +/** + * MEM_STATS==1: Enable mem.c stats. + */ +#ifndef MEM_STATS +#define MEM_STATS ((MEM_LIBC_MALLOC == 0) && (MEM_USE_POOLS == 0)) +#endif + +/** + * MEMP_STATS==1: Enable memp.c pool stats. + */ +#ifndef MEMP_STATS +#define MEMP_STATS (MEMP_MEM_MALLOC == 0) +#endif + +/** + * SYS_STATS==1: Enable system stats (sem and mbox counts, etc). + */ +#ifndef SYS_STATS +#define SYS_STATS (NO_SYS == 0) +#endif + +#else + +#define LINK_STATS 0 +#define IP_STATS 0 +#define IPFRAG_STATS 0 +#define ICMP_STATS 0 +#define IGMP_STATS 0 +#define UDP_STATS 0 +#define TCP_STATS 0 +#define MEM_STATS 0 +#define MEMP_STATS 0 +#define SYS_STATS 0 +#define LWIP_STATS_DISPLAY 0 + +#endif /* LWIP_STATS */ + +/* + --------------------------------- + ---------- PPP options ---------- + --------------------------------- +*/ +/** + * PPP_SUPPORT==1: Enable PPP. + */ +#ifndef PPP_SUPPORT +#define PPP_SUPPORT 0 +#endif + +/** + * PPPOE_SUPPORT==1: Enable PPP Over Ethernet + */ +#ifndef PPPOE_SUPPORT +#define PPPOE_SUPPORT 0 +#endif + +/** + * PPPOS_SUPPORT==1: Enable PPP Over Serial + */ +#ifndef PPPOS_SUPPORT +#define PPPOS_SUPPORT PPP_SUPPORT +#endif + +#if PPP_SUPPORT + +/** + * NUM_PPP: Max PPP sessions. + */ +#ifndef NUM_PPP +#define NUM_PPP 1 +#endif + +/** + * PAP_SUPPORT==1: Support PAP. + */ +#ifndef PAP_SUPPORT +#define PAP_SUPPORT 0 +#endif + +/** + * CHAP_SUPPORT==1: Support CHAP. + */ +#ifndef CHAP_SUPPORT +#define CHAP_SUPPORT 0 +#endif + +/** + * MSCHAP_SUPPORT==1: Support MSCHAP. CURRENTLY NOT SUPPORTED! DO NOT SET! + */ +#ifndef MSCHAP_SUPPORT +#define MSCHAP_SUPPORT 0 +#endif + +/** + * CBCP_SUPPORT==1: Support CBCP. CURRENTLY NOT SUPPORTED! DO NOT SET! + */ +#ifndef CBCP_SUPPORT +#define CBCP_SUPPORT 0 +#endif + +/** + * CCP_SUPPORT==1: Support CCP. CURRENTLY NOT SUPPORTED! DO NOT SET! + */ +#ifndef CCP_SUPPORT +#define CCP_SUPPORT 0 +#endif + +/** + * VJ_SUPPORT==1: Support VJ header compression. + */ +#ifndef VJ_SUPPORT +#define VJ_SUPPORT 0 +#endif + +/** + * MD5_SUPPORT==1: Support MD5 (see also CHAP). + */ +#ifndef MD5_SUPPORT +#define MD5_SUPPORT 0 +#endif + +/* + * Timeouts + */ +#ifndef FSM_DEFTIMEOUT +#define FSM_DEFTIMEOUT 6 /* Timeout time in seconds */ +#endif + +#ifndef FSM_DEFMAXTERMREQS +#define FSM_DEFMAXTERMREQS 2 /* Maximum Terminate-Request transmissions */ +#endif + +#ifndef FSM_DEFMAXCONFREQS +#define FSM_DEFMAXCONFREQS 10 /* Maximum Configure-Request transmissions */ +#endif + +#ifndef FSM_DEFMAXNAKLOOPS +#define FSM_DEFMAXNAKLOOPS 5 /* Maximum number of nak loops */ +#endif + +#ifndef UPAP_DEFTIMEOUT +#define UPAP_DEFTIMEOUT 6 /* Timeout (seconds) for retransmitting req */ +#endif + +#ifndef UPAP_DEFREQTIME +#define UPAP_DEFREQTIME 30 /* Time to wait for auth-req from peer */ +#endif + +#ifndef CHAP_DEFTIMEOUT +#define CHAP_DEFTIMEOUT 6 /* Timeout time in seconds */ +#endif + +#ifndef CHAP_DEFTRANSMITS +#define CHAP_DEFTRANSMITS 10 /* max # times to send challenge */ +#endif + +/* Interval in seconds between keepalive echo requests, 0 to disable. */ +#ifndef LCP_ECHOINTERVAL +#define LCP_ECHOINTERVAL 0 +#endif + +/* Number of unanswered echo requests before failure. */ +#ifndef LCP_MAXECHOFAILS +#define LCP_MAXECHOFAILS 3 +#endif + +/* Max Xmit idle time (in jiffies) before resend flag char. */ +#ifndef PPP_MAXIDLEFLAG +#define PPP_MAXIDLEFLAG 100 +#endif + +/* + * Packet sizes + * + * Note - lcp shouldn't be allowed to negotiate stuff outside these + * limits. See lcp.h in the pppd directory. + * (XXX - these constants should simply be shared by lcp.c instead + * of living in lcp.h) + */ +#define PPP_MTU 1500 /* Default MTU (size of Info field) */ +#ifndef PPP_MAXMTU +/* #define PPP_MAXMTU 65535 - (PPP_HDRLEN + PPP_FCSLEN) */ +#define PPP_MAXMTU 1500 /* Largest MTU we allow */ +#endif +#define PPP_MINMTU 64 +#define PPP_MRU 1500 /* default MRU = max length of info field */ +#define PPP_MAXMRU 1500 /* Largest MRU we allow */ +#ifndef PPP_DEFMRU +#define PPP_DEFMRU 296 /* Try for this */ +#endif +#define PPP_MINMRU 128 /* No MRUs below this */ + +#ifndef MAXNAMELEN +#define MAXNAMELEN 256 /* max length of hostname or name for auth */ +#endif +#ifndef MAXSECRETLEN +#define MAXSECRETLEN 256 /* max length of password or secret */ +#endif + +#endif /* PPP_SUPPORT */ + +/* + -------------------------------------- + ---------- Checksum options ---------- + -------------------------------------- +*/ +/** + * CHECKSUM_GEN_IP==1: Generate checksums in software for outgoing IP packets. + */ +#ifndef CHECKSUM_GEN_IP +#define CHECKSUM_GEN_IP 1 +#endif + +/** + * CHECKSUM_GEN_UDP==1: Generate checksums in software for outgoing UDP packets. + */ +#ifndef CHECKSUM_GEN_UDP +#define CHECKSUM_GEN_UDP 1 +#endif + +/** + * CHECKSUM_GEN_TCP==1: Generate checksums in software for outgoing TCP packets. + */ +#ifndef CHECKSUM_GEN_TCP +#define CHECKSUM_GEN_TCP 1 +#endif + +/** + * CHECKSUM_CHECK_IP==1: Check checksums in software for incoming IP packets. + */ +#ifndef CHECKSUM_CHECK_IP +#define CHECKSUM_CHECK_IP 1 +#endif + +/** + * CHECKSUM_CHECK_UDP==1: Check checksums in software for incoming UDP packets. + */ +#ifndef CHECKSUM_CHECK_UDP +#define CHECKSUM_CHECK_UDP 1 +#endif + +/** + * CHECKSUM_CHECK_TCP==1: Check checksums in software for incoming TCP packets. + */ +#ifndef CHECKSUM_CHECK_TCP +#define CHECKSUM_CHECK_TCP 1 +#endif + +/* + --------------------------------------- + ---------- Debugging options ---------- + --------------------------------------- +*/ +/** + * LWIP_DBG_MIN_LEVEL: After masking, the value of the debug is + * compared against this value. If it is smaller, then debugging + * messages are written. + */ +#ifndef LWIP_DBG_MIN_LEVEL +#define LWIP_DBG_MIN_LEVEL LWIP_DBG_LEVEL_ALL +#endif + +/** + * LWIP_DBG_TYPES_ON: A mask that can be used to globally enable/disable + * debug messages of certain types. + */ +#ifndef LWIP_DBG_TYPES_ON +#define LWIP_DBG_TYPES_ON LWIP_DBG_ON +#endif + +/** + * ETHARP_DEBUG: Enable debugging in etharp.c. + */ +#ifndef ETHARP_DEBUG +#define ETHARP_DEBUG LWIP_DBG_OFF +#endif + +/** + * NETIF_DEBUG: Enable debugging in netif.c. + */ +#ifndef NETIF_DEBUG +#define NETIF_DEBUG LWIP_DBG_OFF +#endif + +/** + * PBUF_DEBUG: Enable debugging in pbuf.c. + */ +#ifndef PBUF_DEBUG +#define PBUF_DEBUG LWIP_DBG_OFF +#endif + +/** + * API_LIB_DEBUG: Enable debugging in api_lib.c. + */ +#ifndef API_LIB_DEBUG +#define API_LIB_DEBUG LWIP_DBG_OFF +#endif + +/** + * API_MSG_DEBUG: Enable debugging in api_msg.c. + */ +#ifndef API_MSG_DEBUG +#define API_MSG_DEBUG LWIP_DBG_OFF +#endif + +/** + * SOCKETS_DEBUG: Enable debugging in sockets.c. + */ +#ifndef SOCKETS_DEBUG +#define SOCKETS_DEBUG LWIP_DBG_OFF +#endif + +/** + * ICMP_DEBUG: Enable debugging in icmp.c. + */ +#ifndef ICMP_DEBUG +#define ICMP_DEBUG LWIP_DBG_OFF +#endif + +/** + * IGMP_DEBUG: Enable debugging in igmp.c. + */ +#ifndef IGMP_DEBUG +#define IGMP_DEBUG LWIP_DBG_OFF +#endif + +/** + * INET_DEBUG: Enable debugging in inet.c. + */ +#ifndef INET_DEBUG +#define INET_DEBUG LWIP_DBG_OFF +#endif + +/** + * IP_DEBUG: Enable debugging for IP. + */ +#ifndef IP_DEBUG +#define IP_DEBUG LWIP_DBG_OFF +#endif + +/** + * IP_REASS_DEBUG: Enable debugging in ip_frag.c for both frag & reass. + */ +#ifndef IP_REASS_DEBUG +#define IP_REASS_DEBUG LWIP_DBG_OFF +#endif + +/** + * RAW_DEBUG: Enable debugging in raw.c. + */ +#ifndef RAW_DEBUG +#define RAW_DEBUG LWIP_DBG_OFF +#endif + +/** + * MEM_DEBUG: Enable debugging in mem.c. + */ +#ifndef MEM_DEBUG +#define MEM_DEBUG LWIP_DBG_OFF +#endif + +/** + * MEMP_DEBUG: Enable debugging in memp.c. + */ +#ifndef MEMP_DEBUG +#define MEMP_DEBUG LWIP_DBG_OFF +#endif + +/** + * SYS_DEBUG: Enable debugging in sys.c. + */ +#ifndef SYS_DEBUG +#define SYS_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_DEBUG: Enable debugging for TCP. + */ +#ifndef TCP_DEBUG +#define TCP_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_INPUT_DEBUG: Enable debugging in tcp_in.c for incoming debug. + */ +#ifndef TCP_INPUT_DEBUG +#define TCP_INPUT_DEBUG LWIP_DBG_ON +#endif + +/** + * TCP_FR_DEBUG: Enable debugging in tcp_in.c for fast retransmit. + */ +#ifndef TCP_FR_DEBUG +#define TCP_FR_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_RTO_DEBUG: Enable debugging in TCP for retransmit + * timeout. + */ +#ifndef TCP_RTO_DEBUG +#define TCP_RTO_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_CWND_DEBUG: Enable debugging for TCP congestion window. + */ +#ifndef TCP_CWND_DEBUG +#define TCP_CWND_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_WND_DEBUG: Enable debugging in tcp_in.c for window updating. + */ +#ifndef TCP_WND_DEBUG +#define TCP_WND_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_OUTPUT_DEBUG: Enable debugging in tcp_out.c output functions. + */ +#ifndef TCP_OUTPUT_DEBUG +#define TCP_OUTPUT_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_RST_DEBUG: Enable debugging for TCP with the RST message. + */ +#ifndef TCP_RST_DEBUG +#define TCP_RST_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCP_QLEN_DEBUG: Enable debugging for TCP queue lengths. + */ +#ifndef TCP_QLEN_DEBUG +#define TCP_QLEN_DEBUG LWIP_DBG_OFF +#endif + +/** + * UDP_DEBUG: Enable debugging in UDP. + */ +#ifndef UDP_DEBUG +#define UDP_DEBUG LWIP_DBG_OFF +#endif + +/** + * TCPIP_DEBUG: Enable debugging in tcpip.c. + */ +#ifndef TCPIP_DEBUG +#define TCPIP_DEBUG LWIP_DBG_OFF +#endif + +/** + * PPP_DEBUG: Enable debugging for PPP. + */ +#ifndef PPP_DEBUG +#define PPP_DEBUG LWIP_DBG_OFF +#endif + +/** + * SLIP_DEBUG: Enable debugging in slipif.c. + */ +#ifndef SLIP_DEBUG +#define SLIP_DEBUG LWIP_DBG_OFF +#endif + +/** + * DHCP_DEBUG: Enable debugging in dhcp.c. + */ +#ifndef DHCP_DEBUG +#define DHCP_DEBUG LWIP_DBG_OFF +#endif + +/** + * AUTOIP_DEBUG: Enable debugging in autoip.c. + */ +#ifndef AUTOIP_DEBUG +#define AUTOIP_DEBUG LWIP_DBG_OFF +#endif + +/** + * SNMP_MSG_DEBUG: Enable debugging for SNMP messages. + */ +#ifndef SNMP_MSG_DEBUG +#define SNMP_MSG_DEBUG LWIP_DBG_OFF +#endif + +/** + * SNMP_MIB_DEBUG: Enable debugging for SNMP MIBs. + */ +#ifndef SNMP_MIB_DEBUG +#define SNMP_MIB_DEBUG LWIP_DBG_OFF +#endif + +/** + * DNS_DEBUG: Enable debugging for DNS. + */ +#ifndef DNS_DEBUG +#define DNS_DEBUG LWIP_DBG_OFF +#endif + +#endif /* __LWIP_OPT_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/pbuf.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/pbuf.h new file mode 100644 index 000000000..8ca61b176 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/pbuf.h @@ -0,0 +1,122 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#ifndef __LWIP_PBUF_H__ +#define __LWIP_PBUF_H__ + +#include "lwip/opt.h" +#include "lwip/err.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define PBUF_TRANSPORT_HLEN 20 +#define PBUF_IP_HLEN 20 + +typedef enum { + PBUF_TRANSPORT, + PBUF_IP, + PBUF_LINK, + PBUF_RAW +} pbuf_layer; + +typedef enum { + PBUF_RAM, /* pbuf data is stored in RAM */ + PBUF_ROM, /* pbuf data is stored in ROM */ + PBUF_REF, /* pbuf comes from the pbuf pool */ + PBUF_POOL /* pbuf payload refers to RAM */ +} pbuf_type; + + +/** indicates this packet's data should be immediately passed to the application */ +#define PBUF_FLAG_PUSH 0x01U + +struct pbuf { + /** next pbuf in singly linked pbuf chain */ + struct pbuf *next; + + /** pointer to the actual data in the buffer */ + void *payload; + + /** + * total length of this buffer and all next buffers in chain + * belonging to the same packet. + * + * For non-queue packet chains this is the invariant: + * p->tot_len == p->len + (p->next? p->next->tot_len: 0) + */ + u16_t tot_len; + + /** length of this buffer */ + u16_t len; + + /** pbuf_type as u8_t instead of enum to save space */ + u8_t /*pbuf_type*/ type; + + /** misc flags */ + u8_t flags; + + /** + * the reference count always equals the number of pointers + * that refer to this pbuf. This can be pointers from an application, + * the stack itself, or pbuf->next pointers from a chain. + */ + u16_t ref; + +}; + +/* Initializes the pbuf module. This call is empty for now, but may not be in future. */ +#define pbuf_init() + +struct pbuf *pbuf_alloc(pbuf_layer l, u16_t size, pbuf_type type); +void pbuf_realloc(struct pbuf *p, u16_t size); +u8_t pbuf_header(struct pbuf *p, s16_t header_size); +void pbuf_ref(struct pbuf *p); +void pbuf_ref_chain(struct pbuf *p); +u8_t pbuf_free(struct pbuf *p); +u8_t pbuf_clen(struct pbuf *p); +void pbuf_cat(struct pbuf *head, struct pbuf *tail); +void pbuf_chain(struct pbuf *head, struct pbuf *tail); +struct pbuf *pbuf_dechain(struct pbuf *p); +err_t pbuf_copy(struct pbuf *p_to, struct pbuf *p_from); +u16_t pbuf_copy_partial(struct pbuf *p, void *dataptr, u16_t len, u16_t offset); +err_t pbuf_take(struct pbuf *buf, const void *dataptr, u16_t len); +struct pbuf *pbuf_coalesce(struct pbuf *p, pbuf_layer layer); + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_PBUF_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/raw.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/raw.h new file mode 100644 index 000000000..545c43367 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/raw.h @@ -0,0 +1,99 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_RAW_H__ +#define __LWIP_RAW_H__ + +#include "lwip/opt.h" + +#if LWIP_RAW /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/pbuf.h" +#include "lwip/inet.h" +#include "lwip/ip.h" +#include "lwip/ip_addr.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct raw_pcb { +/* Common members of all PCB types */ + IP_PCB; + + struct raw_pcb *next; + + u8_t protocol; + + /* receive callback function + * @param arg user supplied argument (raw_pcb.recv_arg) + * @param pcb the raw_pcb which received data + * @param p the packet buffer that was received + * @param addr the remote IP address from which the packet was received + * @return 1 if the packet was 'eaten' (aka. deleted), + * 0 if the packet lives on + * If returning 1, the callback is responsible for freeing the pbuf + * if it's not used any more. + */ + u8_t (* recv)(void *arg, struct raw_pcb *pcb, struct pbuf *p, + struct ip_addr *addr); + /* user-supplied argument for the recv callback */ + void *recv_arg; +}; + +/* The following functions is the application layer interface to the + RAW code. */ +struct raw_pcb * raw_new (u8_t proto); +void raw_remove (struct raw_pcb *pcb); +err_t raw_bind (struct raw_pcb *pcb, struct ip_addr *ipaddr); +err_t raw_connect (struct raw_pcb *pcb, struct ip_addr *ipaddr); + +void raw_recv (struct raw_pcb *pcb, + u8_t (* recv)(void *arg, struct raw_pcb *pcb, + struct pbuf *p, + struct ip_addr *addr), + void *recv_arg); +err_t raw_sendto (struct raw_pcb *pcb, struct pbuf *p, struct ip_addr *ipaddr); +err_t raw_send (struct raw_pcb *pcb, struct pbuf *p); + +/* The following functions are the lower layer interface to RAW. */ +u8_t raw_input (struct pbuf *p, struct netif *inp); +#define raw_init() /* Compatibility define, not init needed. */ + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_RAW */ + +#endif /* __LWIP_RAW_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sio.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sio.h new file mode 100644 index 000000000..10eabcf16 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sio.h @@ -0,0 +1,143 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + */ + +/* + * This is the interface to the platform specific serial IO module + * It needs to be implemented by those platforms which need SLIP or PPP + */ + +#ifndef __SIO_H__ +#define __SIO_H__ + +#include "lwip/arch.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* If you want to define sio_fd_t elsewhere or differently, + define this in your cc.h file. */ +#ifndef __sio_fd_t_defined +typedef void * sio_fd_t; +#endif + +/* The following functions can be defined to something else in your cc.h file + or be implemented in your custom sio.c file. */ + +#ifndef sio_open +/** + * Opens a serial device for communication. + * + * @param devnum device number + * @return handle to serial device if successful, NULL otherwise + */ +sio_fd_t sio_open(u8_t devnum); +#endif + +#ifndef sio_send +/** + * Sends a single character to the serial device. + * + * @param c character to send + * @param fd serial device handle + * + * @note This function will block until the character can be sent. + */ +void sio_send(u8_t c, sio_fd_t fd); +#endif + +#ifndef sio_recv +/** + * Receives a single character from the serial device. + * + * @param fd serial device handle + * + * @note This function will block until a character is received. + */ +u8_t sio_recv(sio_fd_t fd); +#endif + +#ifndef sio_read +/** + * Reads from the serial device. + * + * @param fd serial device handle + * @param data pointer to data buffer for receiving + * @param len maximum length (in bytes) of data to receive + * @return number of bytes actually received - may be 0 if aborted by sio_read_abort + * + * @note This function will block until data can be received. The blocking + * can be cancelled by calling sio_read_abort(). + */ +u32_t sio_read(sio_fd_t fd, u8_t *data, u32_t len); +#endif + +#ifndef sio_tryread +/** + * Tries to read from the serial device. Same as sio_read but returns + * immediately if no data is available and never blocks. + * + * @param fd serial device handle + * @param data pointer to data buffer for receiving + * @param len maximum length (in bytes) of data to receive + * @return number of bytes actually received + */ +u32_t sio_tryread(sio_fd_t fd, u8_t *data, u32_t len); +#endif + +#ifndef sio_write +/** + * Writes to the serial device. + * + * @param fd serial device handle + * @param data pointer to data to send + * @param len length (in bytes) of data to send + * @return number of bytes actually sent + * + * @note This function will block until all data can be sent. + */ +u32_t sio_write(sio_fd_t fd, u8_t *data, u32_t len); +#endif + +#ifndef sio_read_abort +/** + * Aborts a blocking sio_read() call. + * + * @param fd serial device handle + */ +void sio_read_abort(sio_fd_t fd); +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* __SIO_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp.h new file mode 100644 index 000000000..b87717f9a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp.h @@ -0,0 +1,366 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001, 2002 Leon Woestenberg <leon.woestenberg@axon.tv> + * Copyright (c) 2001, 2002 Axon Digital Design B.V., The Netherlands. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Leon Woestenberg <leon.woestenberg@axon.tv> + * + */ +#ifndef __LWIP_SNMP_H__ +#define __LWIP_SNMP_H__ + +#include "lwip/opt.h" +#include "lwip/netif.h" +#include "lwip/udp.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @see RFC1213, "MIB-II, 6. Definitions" + */ +enum snmp_ifType { + snmp_ifType_other=1, /* none of the following */ + snmp_ifType_regular1822, + snmp_ifType_hdh1822, + snmp_ifType_ddn_x25, + snmp_ifType_rfc877_x25, + snmp_ifType_ethernet_csmacd, + snmp_ifType_iso88023_csmacd, + snmp_ifType_iso88024_tokenBus, + snmp_ifType_iso88025_tokenRing, + snmp_ifType_iso88026_man, + snmp_ifType_starLan, + snmp_ifType_proteon_10Mbit, + snmp_ifType_proteon_80Mbit, + snmp_ifType_hyperchannel, + snmp_ifType_fddi, + snmp_ifType_lapb, + snmp_ifType_sdlc, + snmp_ifType_ds1, /* T-1 */ + snmp_ifType_e1, /* european equiv. of T-1 */ + snmp_ifType_basicISDN, + snmp_ifType_primaryISDN, /* proprietary serial */ + snmp_ifType_propPointToPointSerial, + snmp_ifType_ppp, + snmp_ifType_softwareLoopback, + snmp_ifType_eon, /* CLNP over IP [11] */ + snmp_ifType_ethernet_3Mbit, + snmp_ifType_nsip, /* XNS over IP */ + snmp_ifType_slip, /* generic SLIP */ + snmp_ifType_ultra, /* ULTRA technologies */ + snmp_ifType_ds3, /* T-3 */ + snmp_ifType_sip, /* SMDS */ + snmp_ifType_frame_relay +}; + +#if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */ + +/** SNMP "sysuptime" Interval */ +#define SNMP_SYSUPTIME_INTERVAL 10 + +/** fixed maximum length for object identifier type */ +#define LWIP_SNMP_OBJ_ID_LEN 32 + +/** internal object identifier representation */ +struct snmp_obj_id +{ + u8_t len; + s32_t id[LWIP_SNMP_OBJ_ID_LEN]; +}; + +/* system */ +void snmp_set_sysdesr(u8_t* str, u8_t* len); +void snmp_set_sysobjid(struct snmp_obj_id *oid); +void snmp_get_sysobjid_ptr(struct snmp_obj_id **oid); +void snmp_inc_sysuptime(void); +void snmp_add_sysuptime(u32_t value); +void snmp_get_sysuptime(u32_t *value); +void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen); +void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen); +void snmp_set_syslocation(u8_t *ocstr, u8_t *ocstrlen); + +/* network interface */ +void snmp_add_ifinoctets(struct netif *ni, u32_t value); +void snmp_inc_ifinucastpkts(struct netif *ni); +void snmp_inc_ifinnucastpkts(struct netif *ni); +void snmp_inc_ifindiscards(struct netif *ni); +void snmp_add_ifoutoctets(struct netif *ni, u32_t value); +void snmp_inc_ifoutucastpkts(struct netif *ni); +void snmp_inc_ifoutnucastpkts(struct netif *ni); +void snmp_inc_ifoutdiscards(struct netif *ni); +void snmp_inc_iflist(void); +void snmp_dec_iflist(void); + +/* ARP (for atTable and ipNetToMediaTable) */ +void snmp_insert_arpidx_tree(struct netif *ni, struct ip_addr *ip); +void snmp_delete_arpidx_tree(struct netif *ni, struct ip_addr *ip); + +/* IP */ +void snmp_inc_ipinreceives(void); +void snmp_inc_ipinhdrerrors(void); +void snmp_inc_ipinaddrerrors(void); +void snmp_inc_ipforwdatagrams(void); +void snmp_inc_ipinunknownprotos(void); +void snmp_inc_ipindiscards(void); +void snmp_inc_ipindelivers(void); +void snmp_inc_ipoutrequests(void); +void snmp_inc_ipoutdiscards(void); +void snmp_inc_ipoutnoroutes(void); +void snmp_inc_ipreasmreqds(void); +void snmp_inc_ipreasmoks(void); +void snmp_inc_ipreasmfails(void); +void snmp_inc_ipfragoks(void); +void snmp_inc_ipfragfails(void); +void snmp_inc_ipfragcreates(void); +void snmp_inc_iproutingdiscards(void); +void snmp_insert_ipaddridx_tree(struct netif *ni); +void snmp_delete_ipaddridx_tree(struct netif *ni); +void snmp_insert_iprteidx_tree(u8_t dflt, struct netif *ni); +void snmp_delete_iprteidx_tree(u8_t dflt, struct netif *ni); + +/* ICMP */ +void snmp_inc_icmpinmsgs(void); +void snmp_inc_icmpinerrors(void); +void snmp_inc_icmpindestunreachs(void); +void snmp_inc_icmpintimeexcds(void); +void snmp_inc_icmpinparmprobs(void); +void snmp_inc_icmpinsrcquenchs(void); +void snmp_inc_icmpinredirects(void); +void snmp_inc_icmpinechos(void); +void snmp_inc_icmpinechoreps(void); +void snmp_inc_icmpintimestamps(void); +void snmp_inc_icmpintimestampreps(void); +void snmp_inc_icmpinaddrmasks(void); +void snmp_inc_icmpinaddrmaskreps(void); +void snmp_inc_icmpoutmsgs(void); +void snmp_inc_icmpouterrors(void); +void snmp_inc_icmpoutdestunreachs(void); +void snmp_inc_icmpouttimeexcds(void); +void snmp_inc_icmpoutparmprobs(void); +void snmp_inc_icmpoutsrcquenchs(void); +void snmp_inc_icmpoutredirects(void); +void snmp_inc_icmpoutechos(void); +void snmp_inc_icmpoutechoreps(void); +void snmp_inc_icmpouttimestamps(void); +void snmp_inc_icmpouttimestampreps(void); +void snmp_inc_icmpoutaddrmasks(void); +void snmp_inc_icmpoutaddrmaskreps(void); + +/* TCP */ +void snmp_inc_tcpactiveopens(void); +void snmp_inc_tcppassiveopens(void); +void snmp_inc_tcpattemptfails(void); +void snmp_inc_tcpestabresets(void); +void snmp_inc_tcpinsegs(void); +void snmp_inc_tcpoutsegs(void); +void snmp_inc_tcpretranssegs(void); +void snmp_inc_tcpinerrs(void); +void snmp_inc_tcpoutrsts(void); + +/* UDP */ +void snmp_inc_udpindatagrams(void); +void snmp_inc_udpnoports(void); +void snmp_inc_udpinerrors(void); +void snmp_inc_udpoutdatagrams(void); +void snmp_insert_udpidx_tree(struct udp_pcb *pcb); +void snmp_delete_udpidx_tree(struct udp_pcb *pcb); + +/* SNMP */ +void snmp_inc_snmpinpkts(void); +void snmp_inc_snmpoutpkts(void); +void snmp_inc_snmpinbadversions(void); +void snmp_inc_snmpinbadcommunitynames(void); +void snmp_inc_snmpinbadcommunityuses(void); +void snmp_inc_snmpinasnparseerrs(void); +void snmp_inc_snmpintoobigs(void); +void snmp_inc_snmpinnosuchnames(void); +void snmp_inc_snmpinbadvalues(void); +void snmp_inc_snmpinreadonlys(void); +void snmp_inc_snmpingenerrs(void); +void snmp_add_snmpintotalreqvars(u8_t value); +void snmp_add_snmpintotalsetvars(u8_t value); +void snmp_inc_snmpingetrequests(void); +void snmp_inc_snmpingetnexts(void); +void snmp_inc_snmpinsetrequests(void); +void snmp_inc_snmpingetresponses(void); +void snmp_inc_snmpintraps(void); +void snmp_inc_snmpouttoobigs(void); +void snmp_inc_snmpoutnosuchnames(void); +void snmp_inc_snmpoutbadvalues(void); +void snmp_inc_snmpoutgenerrs(void); +void snmp_inc_snmpoutgetrequests(void); +void snmp_inc_snmpoutgetnexts(void); +void snmp_inc_snmpoutsetrequests(void); +void snmp_inc_snmpoutgetresponses(void); +void snmp_inc_snmpouttraps(void); +void snmp_get_snmpgrpid_ptr(struct snmp_obj_id **oid); +void snmp_set_snmpenableauthentraps(u8_t *value); +void snmp_get_snmpenableauthentraps(u8_t *value); + +/* LWIP_SNMP support not available */ +/* define everything to be empty */ +#else + +/* system */ +#define snmp_set_sysdesr(str, len) +#define snmp_set_sysobjid(oid); +#define snmp_get_sysobjid_ptr(oid) +#define snmp_inc_sysuptime() +#define snmp_add_sysuptime(value) +#define snmp_get_sysuptime(value) +#define snmp_set_syscontact(ocstr, ocstrlen); +#define snmp_set_sysname(ocstr, ocstrlen); +#define snmp_set_syslocation(ocstr, ocstrlen); + +/* network interface */ +#define snmp_add_ifinoctets(ni,value) +#define snmp_inc_ifinucastpkts(ni) +#define snmp_inc_ifinnucastpkts(ni) +#define snmp_inc_ifindiscards(ni) +#define snmp_add_ifoutoctets(ni,value) +#define snmp_inc_ifoutucastpkts(ni) +#define snmp_inc_ifoutnucastpkts(ni) +#define snmp_inc_ifoutdiscards(ni) +#define snmp_inc_iflist() +#define snmp_dec_iflist() + +/* ARP */ +#define snmp_insert_arpidx_tree(ni,ip) +#define snmp_delete_arpidx_tree(ni,ip) + +/* IP */ +#define snmp_inc_ipinreceives() +#define snmp_inc_ipinhdrerrors() +#define snmp_inc_ipinaddrerrors() +#define snmp_inc_ipforwdatagrams() +#define snmp_inc_ipinunknownprotos() +#define snmp_inc_ipindiscards() +#define snmp_inc_ipindelivers() +#define snmp_inc_ipoutrequests() +#define snmp_inc_ipoutdiscards() +#define snmp_inc_ipoutnoroutes() +#define snmp_inc_ipreasmreqds() +#define snmp_inc_ipreasmoks() +#define snmp_inc_ipreasmfails() +#define snmp_inc_ipfragoks() +#define snmp_inc_ipfragfails() +#define snmp_inc_ipfragcreates() +#define snmp_inc_iproutingdiscards() +#define snmp_insert_ipaddridx_tree(ni) +#define snmp_delete_ipaddridx_tree(ni) +#define snmp_insert_iprteidx_tree(dflt, ni) +#define snmp_delete_iprteidx_tree(dflt, ni) + +/* ICMP */ +#define snmp_inc_icmpinmsgs() +#define snmp_inc_icmpinerrors() +#define snmp_inc_icmpindestunreachs() +#define snmp_inc_icmpintimeexcds() +#define snmp_inc_icmpinparmprobs() +#define snmp_inc_icmpinsrcquenchs() +#define snmp_inc_icmpinredirects() +#define snmp_inc_icmpinechos() +#define snmp_inc_icmpinechoreps() +#define snmp_inc_icmpintimestamps() +#define snmp_inc_icmpintimestampreps() +#define snmp_inc_icmpinaddrmasks() +#define snmp_inc_icmpinaddrmaskreps() +#define snmp_inc_icmpoutmsgs() +#define snmp_inc_icmpouterrors() +#define snmp_inc_icmpoutdestunreachs() +#define snmp_inc_icmpouttimeexcds() +#define snmp_inc_icmpoutparmprobs() +#define snmp_inc_icmpoutsrcquenchs() +#define snmp_inc_icmpoutredirects() +#define snmp_inc_icmpoutechos() +#define snmp_inc_icmpoutechoreps() +#define snmp_inc_icmpouttimestamps() +#define snmp_inc_icmpouttimestampreps() +#define snmp_inc_icmpoutaddrmasks() +#define snmp_inc_icmpoutaddrmaskreps() +/* TCP */ +#define snmp_inc_tcpactiveopens() +#define snmp_inc_tcppassiveopens() +#define snmp_inc_tcpattemptfails() +#define snmp_inc_tcpestabresets() +#define snmp_inc_tcpinsegs() +#define snmp_inc_tcpoutsegs() +#define snmp_inc_tcpretranssegs() +#define snmp_inc_tcpinerrs() +#define snmp_inc_tcpoutrsts() + +/* UDP */ +#define snmp_inc_udpindatagrams() +#define snmp_inc_udpnoports() +#define snmp_inc_udpinerrors() +#define snmp_inc_udpoutdatagrams() +#define snmp_insert_udpidx_tree(pcb) +#define snmp_delete_udpidx_tree(pcb) + +/* SNMP */ +#define snmp_inc_snmpinpkts() +#define snmp_inc_snmpoutpkts() +#define snmp_inc_snmpinbadversions() +#define snmp_inc_snmpinbadcommunitynames() +#define snmp_inc_snmpinbadcommunityuses() +#define snmp_inc_snmpinasnparseerrs() +#define snmp_inc_snmpintoobigs() +#define snmp_inc_snmpinnosuchnames() +#define snmp_inc_snmpinbadvalues() +#define snmp_inc_snmpinreadonlys() +#define snmp_inc_snmpingenerrs() +#define snmp_add_snmpintotalreqvars(value) +#define snmp_add_snmpintotalsetvars(value) +#define snmp_inc_snmpingetrequests() +#define snmp_inc_snmpingetnexts() +#define snmp_inc_snmpinsetrequests() +#define snmp_inc_snmpingetresponses() +#define snmp_inc_snmpintraps() +#define snmp_inc_snmpouttoobigs() +#define snmp_inc_snmpoutnosuchnames() +#define snmp_inc_snmpoutbadvalues() +#define snmp_inc_snmpoutgenerrs() +#define snmp_inc_snmpoutgetrequests() +#define snmp_inc_snmpoutgetnexts() +#define snmp_inc_snmpoutsetrequests() +#define snmp_inc_snmpoutgetresponses() +#define snmp_inc_snmpouttraps() +#define snmp_get_snmpgrpid_ptr(oid) +#define snmp_set_snmpenableauthentraps(value) +#define snmp_get_snmpenableauthentraps(value) + +#endif /* LWIP_SNMP */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_SNMP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_asn1.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_asn1.h new file mode 100644 index 000000000..a40d5ef8d --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_asn1.h @@ -0,0 +1,103 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Abstract Syntax Notation One (ISO 8824, 8825) codec. + */ + +/* + * Copyright (c) 2006 Axon Digital Design B.V., The Netherlands. + * 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. + * + * Author: Christiaan Simons <christiaan.simons@axon.tv> + */ + +#ifndef __LWIP_SNMP_ASN1_H__ +#define __LWIP_SNMP_ASN1_H__ + +#include "lwip/opt.h" +#include "lwip/err.h" +#include "lwip/pbuf.h" +#include "lwip/snmp.h" + +#if LWIP_SNMP + +#ifdef __cplusplus +extern "C" { +#endif + +#define SNMP_ASN1_UNIV (!0x80 | !0x40) +#define SNMP_ASN1_APPLIC (!0x80 | 0x40) +#define SNMP_ASN1_CONTXT ( 0x80 | !0x40) + +#define SNMP_ASN1_CONSTR (0x20) +#define SNMP_ASN1_PRIMIT (!0x20) + +/* universal tags */ +#define SNMP_ASN1_INTEG 2 +#define SNMP_ASN1_OC_STR 4 +#define SNMP_ASN1_NUL 5 +#define SNMP_ASN1_OBJ_ID 6 +#define SNMP_ASN1_SEQ 16 + +/* application specific (SNMP) tags */ +#define SNMP_ASN1_IPADDR 0 /* octet string size(4) */ +#define SNMP_ASN1_COUNTER 1 /* u32_t */ +#define SNMP_ASN1_GAUGE 2 /* u32_t */ +#define SNMP_ASN1_TIMETICKS 3 /* u32_t */ +#define SNMP_ASN1_OPAQUE 4 /* octet string */ + +/* context specific (SNMP) tags */ +#define SNMP_ASN1_PDU_GET_REQ 0 +#define SNMP_ASN1_PDU_GET_NEXT_REQ 1 +#define SNMP_ASN1_PDU_GET_RESP 2 +#define SNMP_ASN1_PDU_SET_REQ 3 +#define SNMP_ASN1_PDU_TRAP 4 + +err_t snmp_asn1_dec_type(struct pbuf *p, u16_t ofs, u8_t *type); +err_t snmp_asn1_dec_length(struct pbuf *p, u16_t ofs, u8_t *octets_used, u16_t *length); +err_t snmp_asn1_dec_u32t(struct pbuf *p, u16_t ofs, u16_t len, u32_t *value); +err_t snmp_asn1_dec_s32t(struct pbuf *p, u16_t ofs, u16_t len, s32_t *value); +err_t snmp_asn1_dec_oid(struct pbuf *p, u16_t ofs, u16_t len, struct snmp_obj_id *oid); +err_t snmp_asn1_dec_raw(struct pbuf *p, u16_t ofs, u16_t len, u16_t raw_len, u8_t *raw); + +void snmp_asn1_enc_length_cnt(u16_t length, u8_t *octets_needed); +void snmp_asn1_enc_u32t_cnt(u32_t value, u16_t *octets_needed); +void snmp_asn1_enc_s32t_cnt(s32_t value, u16_t *octets_needed); +void snmp_asn1_enc_oid_cnt(u8_t ident_len, s32_t *ident, u16_t *octets_needed); +err_t snmp_asn1_enc_type(struct pbuf *p, u16_t ofs, u8_t type); +err_t snmp_asn1_enc_length(struct pbuf *p, u16_t ofs, u16_t length); +err_t snmp_asn1_enc_u32t(struct pbuf *p, u16_t ofs, u8_t octets_needed, u32_t value); +err_t snmp_asn1_enc_s32t(struct pbuf *p, u16_t ofs, u8_t octets_needed, s32_t value); +err_t snmp_asn1_enc_oid(struct pbuf *p, u16_t ofs, u8_t ident_len, s32_t *ident); +err_t snmp_asn1_enc_raw(struct pbuf *p, u16_t ofs, u8_t raw_len, u8_t *raw); + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_SNMP */ + +#endif /* __LWIP_SNMP_ASN1_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_msg.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_msg.h new file mode 100644 index 000000000..6e50a6186 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_msg.h @@ -0,0 +1,313 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * SNMP Agent message handling structures. + */ + +/* + * Copyright (c) 2006 Axon Digital Design B.V., The Netherlands. + * 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. + * + * Author: Christiaan Simons <christiaan.simons@axon.tv> + */ + +#ifndef __LWIP_SNMP_MSG_H__ +#define __LWIP_SNMP_MSG_H__ + +#include "lwip/opt.h" +#include "lwip/snmp.h" +#include "lwip/snmp_structs.h" + +#if LWIP_SNMP + +#if SNMP_PRIVATE_MIB +#include "private_mib.h" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* The listen port of the SNMP agent. Clients have to make their requests to + this port. Most standard clients won't work if you change this! */ +#ifndef SNMP_IN_PORT +#define SNMP_IN_PORT 161 +#endif +/* The remote port the SNMP agent sends traps to. Most standard trap sinks won't + work if you change this! */ +#ifndef SNMP_TRAP_PORT +#define SNMP_TRAP_PORT 162 +#endif + +#define SNMP_ES_NOERROR 0 +#define SNMP_ES_TOOBIG 1 +#define SNMP_ES_NOSUCHNAME 2 +#define SNMP_ES_BADVALUE 3 +#define SNMP_ES_READONLY 4 +#define SNMP_ES_GENERROR 5 + +#define SNMP_GENTRAP_COLDSTART 0 +#define SNMP_GENTRAP_WARMSTART 1 +#define SNMP_GENTRAP_AUTHFAIL 4 +#define SNMP_GENTRAP_ENTERPRISESPC 6 + +struct snmp_varbind +{ + /* next pointer, NULL for last in list */ + struct snmp_varbind *next; + /* previous pointer, NULL for first in list */ + struct snmp_varbind *prev; + + /* object identifier length (in s32_t) */ + u8_t ident_len; + /* object identifier array */ + s32_t *ident; + + /* object value ASN1 type */ + u8_t value_type; + /* object value length (in u8_t) */ + u8_t value_len; + /* object value */ + void *value; + + /* encoding varbind seq length length */ + u8_t seqlenlen; + /* encoding object identifier length length */ + u8_t olenlen; + /* encoding object value length length */ + u8_t vlenlen; + /* encoding varbind seq length */ + u16_t seqlen; + /* encoding object identifier length */ + u16_t olen; + /* encoding object value length */ + u16_t vlen; +}; + +struct snmp_varbind_root +{ + struct snmp_varbind *head; + struct snmp_varbind *tail; + /* number of variable bindings in list */ + u8_t count; + /* encoding varbind-list seq length length */ + u8_t seqlenlen; + /* encoding varbind-list seq length */ + u16_t seqlen; +}; + +/** output response message header length fields */ +struct snmp_resp_header_lengths +{ + /* encoding error-index length length */ + u8_t erridxlenlen; + /* encoding error-status length length */ + u8_t errstatlenlen; + /* encoding request id length length */ + u8_t ridlenlen; + /* encoding pdu length length */ + u8_t pdulenlen; + /* encoding community length length */ + u8_t comlenlen; + /* encoding version length length */ + u8_t verlenlen; + /* encoding sequence length length */ + u8_t seqlenlen; + + /* encoding error-index length */ + u16_t erridxlen; + /* encoding error-status length */ + u16_t errstatlen; + /* encoding request id length */ + u16_t ridlen; + /* encoding pdu length */ + u16_t pdulen; + /* encoding community length */ + u16_t comlen; + /* encoding version length */ + u16_t verlen; + /* encoding sequence length */ + u16_t seqlen; +}; + +/** output response message header length fields */ +struct snmp_trap_header_lengths +{ + /* encoding timestamp length length */ + u8_t tslenlen; + /* encoding specific-trap length length */ + u8_t strplenlen; + /* encoding generic-trap length length */ + u8_t gtrplenlen; + /* encoding agent-addr length length */ + u8_t aaddrlenlen; + /* encoding enterprise-id length length */ + u8_t eidlenlen; + /* encoding pdu length length */ + u8_t pdulenlen; + /* encoding community length length */ + u8_t comlenlen; + /* encoding version length length */ + u8_t verlenlen; + /* encoding sequence length length */ + u8_t seqlenlen; + + /* encoding timestamp length */ + u16_t tslen; + /* encoding specific-trap length */ + u16_t strplen; + /* encoding generic-trap length */ + u16_t gtrplen; + /* encoding agent-addr length */ + u16_t aaddrlen; + /* encoding enterprise-id length */ + u16_t eidlen; + /* encoding pdu length */ + u16_t pdulen; + /* encoding community length */ + u16_t comlen; + /* encoding version length */ + u16_t verlen; + /* encoding sequence length */ + u16_t seqlen; +}; + +/* Accepting new SNMP messages. */ +#define SNMP_MSG_EMPTY 0 +/* Search for matching object for variable binding. */ +#define SNMP_MSG_SEARCH_OBJ 1 +/* Perform SNMP operation on in-memory object. + Pass-through states, for symmetry only. */ +#define SNMP_MSG_INTERNAL_GET_OBJDEF 2 +#define SNMP_MSG_INTERNAL_GET_VALUE 3 +#define SNMP_MSG_INTERNAL_SET_TEST 4 +#define SNMP_MSG_INTERNAL_GET_OBJDEF_S 5 +#define SNMP_MSG_INTERNAL_SET_VALUE 6 +/* Perform SNMP operation on object located externally. + In theory this could be used for building a proxy agent. + Practical use is for an enterprise spc. app. gateway. */ +#define SNMP_MSG_EXTERNAL_GET_OBJDEF 7 +#define SNMP_MSG_EXTERNAL_GET_VALUE 8 +#define SNMP_MSG_EXTERNAL_SET_TEST 9 +#define SNMP_MSG_EXTERNAL_GET_OBJDEF_S 10 +#define SNMP_MSG_EXTERNAL_SET_VALUE 11 + +#define SNMP_COMMUNITY_STR_LEN 64 +struct snmp_msg_pstat +{ + /* lwIP local port (161) binding */ + struct udp_pcb *pcb; + /* source IP address */ + struct ip_addr sip; + /* source UDP port */ + u16_t sp; + /* request type */ + u8_t rt; + /* request ID */ + s32_t rid; + /* error status */ + s32_t error_status; + /* error index */ + s32_t error_index; + /* community name (zero terminated) */ + u8_t community[SNMP_COMMUNITY_STR_LEN + 1]; + /* community string length (exclusive zero term) */ + u8_t com_strlen; + /* one out of MSG_EMPTY, MSG_DEMUX, MSG_INTERNAL, MSG_EXTERNAL_x */ + u8_t state; + /* saved arguments for MSG_EXTERNAL_x */ + struct mib_external_node *ext_mib_node; + struct snmp_name_ptr ext_name_ptr; + struct obj_def ext_object_def; + struct snmp_obj_id ext_oid; + /* index into input variable binding list */ + u8_t vb_idx; + /* ptr into input variable binding list */ + struct snmp_varbind *vb_ptr; + /* list of variable bindings from input */ + struct snmp_varbind_root invb; + /* list of variable bindings to output */ + struct snmp_varbind_root outvb; + /* output response lengths used in ASN encoding */ + struct snmp_resp_header_lengths rhl; +}; + +struct snmp_msg_trap +{ + /* lwIP local port (161) binding */ + struct udp_pcb *pcb; + /* destination IP address in network order */ + struct ip_addr dip; + + /* source enterprise ID (sysObjectID) */ + struct snmp_obj_id *enterprise; + /* source IP address, raw network order format */ + u8_t sip_raw[4]; + /* generic trap code */ + u32_t gen_trap; + /* specific trap code */ + u32_t spc_trap; + /* timestamp */ + u32_t ts; + /* list of variable bindings to output */ + struct snmp_varbind_root outvb; + /* output trap lengths used in ASN encoding */ + struct snmp_trap_header_lengths thl; +}; + +/** Agent Version constant, 0 = v1 oddity */ +extern const s32_t snmp_version; +/** Agent default "public" community string */ +extern const char snmp_publiccommunity[7]; + +extern struct snmp_msg_trap trap_msg; + +/** Agent setup, start listening to port 161. */ +void snmp_init(void); +void snmp_trap_dst_enable(u8_t dst_idx, u8_t enable); +void snmp_trap_dst_ip_set(u8_t dst_idx, struct ip_addr *dst); + +/** Varbind-list functions. */ +struct snmp_varbind* snmp_varbind_alloc(struct snmp_obj_id *oid, u8_t type, u8_t len); +void snmp_varbind_free(struct snmp_varbind *vb); +void snmp_varbind_list_free(struct snmp_varbind_root *root); +void snmp_varbind_tail_add(struct snmp_varbind_root *root, struct snmp_varbind *vb); +struct snmp_varbind* snmp_varbind_tail_remove(struct snmp_varbind_root *root); + +/** Handle an internal (recv) or external (private response) event. */ +void snmp_msg_event(u8_t request_id); +err_t snmp_send_response(struct snmp_msg_pstat *m_stat); +err_t snmp_send_trap(s8_t generic_trap, struct snmp_obj_id *eoid, s32_t specific_trap); +void snmp_coldstart_trap(void); +void snmp_authfail_trap(void); + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_SNMP */ + +#endif /* __LWIP_SNMP_MSG_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_structs.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_structs.h new file mode 100644 index 000000000..93f4ea3c1 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/snmp_structs.h @@ -0,0 +1,264 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Generic MIB tree structures. + * + * @todo namespace prefixes + */ + +/* + * Copyright (c) 2006 Axon Digital Design B.V., The Netherlands. + * 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. + * + * Author: Christiaan Simons <christiaan.simons@axon.tv> + */ + +#ifndef __LWIP_SNMP_STRUCTS_H__ +#define __LWIP_SNMP_STRUCTS_H__ + +#include "lwip/opt.h" + +#if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/snmp.h" + +#if SNMP_PRIVATE_MIB +#include "private_mib.h" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* MIB object instance */ +#define MIB_OBJECT_NONE 0 +#define MIB_OBJECT_SCALAR 1 +#define MIB_OBJECT_TAB 2 + +/* MIB object access */ +#define MIB_OBJECT_READ_ONLY 0 +#define MIB_OBJECT_READ_WRITE 1 +#define MIB_OBJECT_WRITE_ONLY 2 +#define MIB_OBJECT_NOT_ACCESSIBLE 3 + +/** object definition returned by (get_object_def)() */ +struct obj_def +{ + /* MIB_OBJECT_NONE (0), MIB_OBJECT_SCALAR (1), MIB_OBJECT_TAB (2) */ + u8_t instance; + /* 0 read-only, 1 read-write, 2 write-only, 3 not-accessible */ + u8_t access; + /* ASN type for this object */ + u8_t asn_type; + /* value length (host length) */ + u16_t v_len; + /* length of instance part of supplied object identifier */ + u8_t id_inst_len; + /* instance part of supplied object identifier */ + s32_t *id_inst_ptr; +}; + +struct snmp_name_ptr +{ + u8_t ident_len; + s32_t *ident; +}; + +/** MIB const scalar (.0) node */ +#define MIB_NODE_SC 0x01 +/** MIB const array node */ +#define MIB_NODE_AR 0x02 +/** MIB array node (mem_malloced from RAM) */ +#define MIB_NODE_RA 0x03 +/** MIB list root node (mem_malloced from RAM) */ +#define MIB_NODE_LR 0x04 +/** MIB node for external objects */ +#define MIB_NODE_EX 0x05 + +/** node "base class" layout, the mandatory fields for a node */ +struct mib_node +{ + /** returns struct obj_def for the given object identifier */ + void (*get_object_def)(u8_t ident_len, s32_t *ident, struct obj_def *od); + /** returns object value for the given object identifier, + @note the caller must allocate at least len bytes for the value */ + void (*get_value)(struct obj_def *od, u16_t len, void *value); + /** tests length and/or range BEFORE setting */ + u8_t (*set_test)(struct obj_def *od, u16_t len, void *value); + /** sets object value, only to be called when set_test() */ + void (*set_value)(struct obj_def *od, u16_t len, void *value); + /** One out of MIB_NODE_AR, MIB_NODE_LR or MIB_NODE_EX */ + const u8_t node_type; + /* array or max list length */ + const u16_t maxlength; +}; + +/** derived node for scalars .0 index */ +typedef struct mib_node mib_scalar_node; + +/** derived node, points to a fixed size const array + of sub-identifiers plus a 'child' pointer */ +struct mib_array_node +{ + /* inherited "base class" members */ + void (* const get_object_def)(u8_t ident_len, s32_t *ident, struct obj_def *od); + void (* const get_value)(struct obj_def *od, u16_t len, void *value); + u8_t (*set_test)(struct obj_def *od, u16_t len, void *value); + void (*set_value)(struct obj_def *od, u16_t len, void *value); + + const u8_t node_type; + const u16_t maxlength; + + /* aditional struct members */ + const s32_t *objid; + struct mib_node* const *nptr; +}; + +/** derived node, points to a fixed size mem_malloced array + of sub-identifiers plus a 'child' pointer */ +struct mib_ram_array_node +{ + /* inherited "base class" members */ + void (*get_object_def)(u8_t ident_len, s32_t *ident, struct obj_def *od); + void (*get_value)(struct obj_def *od, u16_t len, void *value); + u8_t (*set_test)(struct obj_def *od, u16_t len, void *value); + void (*set_value)(struct obj_def *od, u16_t len, void *value); + + u8_t node_type; + u16_t maxlength; + + /* aditional struct members */ + s32_t *objid; + struct mib_node **nptr; +}; + +struct mib_list_node +{ + struct mib_list_node *prev; + struct mib_list_node *next; + s32_t objid; + struct mib_node *nptr; +}; + +/** derived node, points to a doubly linked list + of sub-identifiers plus a 'child' pointer */ +struct mib_list_rootnode +{ + /* inherited "base class" members */ + void (*get_object_def)(u8_t ident_len, s32_t *ident, struct obj_def *od); + void (*get_value)(struct obj_def *od, u16_t len, void *value); + u8_t (*set_test)(struct obj_def *od, u16_t len, void *value); + void (*set_value)(struct obj_def *od, u16_t len, void *value); + + u8_t node_type; + u16_t maxlength; + + /* aditional struct members */ + struct mib_list_node *head; + struct mib_list_node *tail; + /* counts list nodes in list */ + u16_t count; +}; + +/** derived node, has access functions for mib object in external memory or device + using 'tree_level' and 'idx', with a range 0 .. (level_length() - 1) */ +struct mib_external_node +{ + /* inherited "base class" members */ + void (*get_object_def)(u8_t ident_len, s32_t *ident, struct obj_def *od); + void (*get_value)(struct obj_def *od, u16_t len, void *value); + u8_t (*set_test)(struct obj_def *od, u16_t len, void *value); + void (*set_value)(struct obj_def *od, u16_t len, void *value); + + u8_t node_type; + u16_t maxlength; + + /* aditional struct members */ + /** points to an extenal (in memory) record of some sort of addressing + information, passed to and interpreted by the funtions below */ + void* addr_inf; + /** tree levels under this node */ + u8_t tree_levels; + /** number of objects at this level */ + u16_t (*level_length)(void* addr_inf, u8_t level); + /** compares object sub identifier with external id + return zero when equal, nonzero when unequal */ + s32_t (*ident_cmp)(void* addr_inf, u8_t level, u16_t idx, s32_t sub_id); + void (*get_objid)(void* addr_inf, u8_t level, u16_t idx, s32_t *sub_id); + + /** async Questions */ + void (*get_object_def_q)(void* addr_inf, u8_t rid, u8_t ident_len, s32_t *ident); + void (*get_value_q)(u8_t rid, struct obj_def *od); + void (*set_test_q)(u8_t rid, struct obj_def *od); + void (*set_value_q)(u8_t rid, struct obj_def *od, u16_t len, void *value); + /** async Answers */ + void (*get_object_def_a)(u8_t rid, u8_t ident_len, s32_t *ident, struct obj_def *od); + void (*get_value_a)(u8_t rid, struct obj_def *od, u16_t len, void *value); + u8_t (*set_test_a)(u8_t rid, struct obj_def *od, u16_t len, void *value); + void (*set_value_a)(u8_t rid, struct obj_def *od, u16_t len, void *value); + /** async Panic Close (agent returns error reply, + e.g. used for external transaction cleanup) */ + void (*get_object_def_pc)(u8_t rid, u8_t ident_len, s32_t *ident); + void (*get_value_pc)(u8_t rid, struct obj_def *od); + void (*set_test_pc)(u8_t rid, struct obj_def *od); + void (*set_value_pc)(u8_t rid, struct obj_def *od); +}; + +/** export MIB tree from mib2.c */ +extern const struct mib_array_node internet; + +/** dummy function pointers for non-leaf MIB nodes from mib2.c */ +void noleafs_get_object_def(u8_t ident_len, s32_t *ident, struct obj_def *od); +void noleafs_get_value(struct obj_def *od, u16_t len, void *value); +u8_t noleafs_set_test(struct obj_def *od, u16_t len, void *value); +void noleafs_set_value(struct obj_def *od, u16_t len, void *value); + +void snmp_oidtoip(s32_t *ident, struct ip_addr *ip); +void snmp_iptooid(struct ip_addr *ip, s32_t *ident); +void snmp_ifindextonetif(s32_t ifindex, struct netif **netif); +void snmp_netiftoifindex(struct netif *netif, s32_t *ifidx); + +struct mib_list_node* snmp_mib_ln_alloc(s32_t id); +void snmp_mib_ln_free(struct mib_list_node *ln); +struct mib_list_rootnode* snmp_mib_lrn_alloc(void); +void snmp_mib_lrn_free(struct mib_list_rootnode *lrn); + +s8_t snmp_mib_node_insert(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_node **insn); +s8_t snmp_mib_node_find(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_node **fn); +struct mib_list_rootnode *snmp_mib_node_delete(struct mib_list_rootnode *rn, struct mib_list_node *n); + +struct mib_node* snmp_search_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snmp_name_ptr *np); +struct mib_node* snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snmp_obj_id *oidret); +u8_t snmp_iso_prefix_tst(u8_t ident_len, s32_t *ident); +u8_t snmp_iso_prefix_expand(u8_t ident_len, s32_t *ident, struct snmp_obj_id *oidret); + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_SNMP */ + +#endif /* __LWIP_SNMP_STRUCTS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sockets.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sockets.h new file mode 100644 index 000000000..675c1f740 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sockets.h @@ -0,0 +1,359 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + + +#ifndef __LWIP_SOCKETS_H__ +#define __LWIP_SOCKETS_H__ + +#include "lwip/opt.h" + +#if LWIP_SOCKET /* don't build if not configured for use in lwipopts.h */ + +#include <stddef.h> /* for size_t */ + +#include "lwip/ip_addr.h" +#include "lwip/inet.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* members are in network byte order */ +struct sockaddr_in { + u8_t sin_len; + u8_t sin_family; + u16_t sin_port; + struct in_addr sin_addr; + char sin_zero[8]; +}; + +struct sockaddr { + u8_t sa_len; + u8_t sa_family; + char sa_data[14]; +}; + +#ifndef socklen_t +# define socklen_t u32_t +#endif + +/* Socket protocol types (TCP/UDP/RAW) */ +#define SOCK_STREAM 1 +#define SOCK_DGRAM 2 +#define SOCK_RAW 3 + +/* + * Option flags per-socket. These must match the SOF_ flags in ip.h! + */ +#define SO_DEBUG 0x0001 /* Unimplemented: turn on debugging info recording */ +#define SO_ACCEPTCONN 0x0002 /* socket has had listen() */ +#define SO_REUSEADDR 0x0004 /* Unimplemented: allow local address reuse */ +#define SO_KEEPALIVE 0x0008 /* keep connections alive */ +#define SO_DONTROUTE 0x0010 /* Unimplemented: just use interface addresses */ +#define SO_BROADCAST 0x0020 /* permit to send and to receive broadcast messages (see IP_SOF_BROADCAST option) */ +#define SO_USELOOPBACK 0x0040 /* Unimplemented: bypass hardware when possible */ +#define SO_LINGER 0x0080 /* linger on close if data present */ +#define SO_OOBINLINE 0x0100 /* Unimplemented: leave received OOB data in line */ +#define SO_REUSEPORT 0x0200 /* Unimplemented: allow local address & port reuse */ + +#define SO_DONTLINGER ((int)(~SO_LINGER)) + +/* + * Additional options, not kept in so_options. + */ +#define SO_SNDBUF 0x1001 /* Unimplemented: send buffer size */ +#define SO_RCVBUF 0x1002 /* receive buffer size */ +#define SO_SNDLOWAT 0x1003 /* Unimplemented: send low-water mark */ +#define SO_RCVLOWAT 0x1004 /* Unimplemented: receive low-water mark */ +#define SO_SNDTIMEO 0x1005 /* Unimplemented: send timeout */ +#define SO_RCVTIMEO 0x1006 /* receive timeout */ +#define SO_ERROR 0x1007 /* get error status and clear */ +#define SO_TYPE 0x1008 /* get socket type */ +#define SO_CONTIMEO 0x1009 /* Unimplemented: connect timeout */ +#define SO_NO_CHECK 0x100a /* don't create UDP checksum */ + + +/* + * Structure used for manipulating linger option. + */ +struct linger { + int l_onoff; /* option on/off */ + int l_linger; /* linger time */ +}; + +/* + * Level number for (get/set)sockopt() to apply to socket itself. + */ +#define SOL_SOCKET 0xfff /* options for socket level */ + + +#define AF_UNSPEC 0 +#define AF_INET 2 +#define PF_INET AF_INET +#define PF_UNSPEC AF_UNSPEC + +#define IPPROTO_IP 0 +#define IPPROTO_TCP 6 +#define IPPROTO_UDP 17 +#define IPPROTO_UDPLITE 136 + +/* Flags we can use with send and recv. */ +#define MSG_PEEK 0x01 /* Peeks at an incoming message */ +#define MSG_WAITALL 0x02 /* Unimplemented: Requests that the function block until the full amount of data requested can be returned */ +#define MSG_OOB 0x04 /* Unimplemented: Requests out-of-band data. The significance and semantics of out-of-band data are protocol-specific */ +#define MSG_DONTWAIT 0x08 /* Nonblocking i/o for this operation only */ +#define MSG_MORE 0x10 /* Sender will send more */ + + +/* + * Options for level IPPROTO_IP + */ +#define IP_TOS 1 +#define IP_TTL 2 + +#if LWIP_TCP +/* + * Options for level IPPROTO_TCP + */ +#define TCP_NODELAY 0x01 /* don't delay send to coalesce packets */ +#define TCP_KEEPALIVE 0x02 /* send KEEPALIVE probes when idle for pcb->keep_idle milliseconds */ +#define TCP_KEEPIDLE 0x03 /* set pcb->keep_idle - Same as TCP_KEEPALIVE, but use seconds for get/setsockopt */ +#define TCP_KEEPINTVL 0x04 /* set pcb->keep_intvl - Use seconds for get/setsockopt */ +#define TCP_KEEPCNT 0x05 /* set pcb->keep_cnt - Use number of probes sent for get/setsockopt */ +#endif /* LWIP_TCP */ + +#if LWIP_UDP && LWIP_UDPLITE +/* + * Options for level IPPROTO_UDPLITE + */ +#define UDPLITE_SEND_CSCOV 0x01 /* sender checksum coverage */ +#define UDPLITE_RECV_CSCOV 0x02 /* minimal receiver checksum coverage */ +#endif /* LWIP_UDP && LWIP_UDPLITE*/ + + +#if LWIP_IGMP +/* + * Options and types for UDP multicast traffic handling + */ +#define IP_ADD_MEMBERSHIP 3 +#define IP_DROP_MEMBERSHIP 4 +#define IP_MULTICAST_TTL 5 +#define IP_MULTICAST_IF 6 +#define IP_MULTICAST_LOOP 7 + +typedef struct ip_mreq { + struct in_addr imr_multiaddr; /* IP multicast address of group */ + struct in_addr imr_interface; /* local IP address of interface */ +} ip_mreq; +#endif /* LWIP_IGMP */ + +/* + * The Type of Service provides an indication of the abstract + * parameters of the quality of service desired. These parameters are + * to be used to guide the selection of the actual service parameters + * when transmitting a datagram through a particular network. Several + * networks offer service precedence, which somehow treats high + * precedence traffic as more important than other traffic (generally + * by accepting only traffic above a certain precedence at time of high + * load). The major choice is a three way tradeoff between low-delay, + * high-reliability, and high-throughput. + * The use of the Delay, Throughput, and Reliability indications may + * increase the cost (in some sense) of the service. In many networks + * better performance for one of these parameters is coupled with worse + * performance on another. Except for very unusual cases at most two + * of these three indications should be set. + */ +#define IPTOS_TOS_MASK 0x1E +#define IPTOS_TOS(tos) ((tos) & IPTOS_TOS_MASK) +#define IPTOS_LOWDELAY 0x10 +#define IPTOS_THROUGHPUT 0x08 +#define IPTOS_RELIABILITY 0x04 +#define IPTOS_LOWCOST 0x02 +#define IPTOS_MINCOST IPTOS_LOWCOST + +/* + * The Network Control precedence designation is intended to be used + * within a network only. The actual use and control of that + * designation is up to each network. The Internetwork Control + * designation is intended for use by gateway control originators only. + * If the actual use of these precedence designations is of concern to + * a particular network, it is the responsibility of that network to + * control the access to, and use of, those precedence designations. + */ +#define IPTOS_PREC_MASK 0xe0 +#define IPTOS_PREC(tos) ((tos) & IPTOS_PREC_MASK) +#define IPTOS_PREC_NETCONTROL 0xe0 +#define IPTOS_PREC_INTERNETCONTROL 0xc0 +#define IPTOS_PREC_CRITIC_ECP 0xa0 +#define IPTOS_PREC_FLASHOVERRIDE 0x80 +#define IPTOS_PREC_FLASH 0x60 +#define IPTOS_PREC_IMMEDIATE 0x40 +#define IPTOS_PREC_PRIORITY 0x20 +#define IPTOS_PREC_ROUTINE 0x00 + + +/* + * Commands for ioctlsocket(), taken from the BSD file fcntl.h. + * lwip_ioctl only supports FIONREAD and FIONBIO, for now + * + * Ioctl's have the command encoded in the lower word, + * and the size of any in or out parameters in the upper + * word. The high 2 bits of the upper word are used + * to encode the in/out status of the parameter; for now + * we restrict parameters to at most 128 bytes. + */ +#if !defined(FIONREAD) || !defined(FIONBIO) +#define IOCPARM_MASK 0x7fU /* parameters must be < 128 bytes */ +#define IOC_VOID 0x20000000UL /* no parameters */ +#define IOC_OUT 0x40000000UL /* copy out parameters */ +#define IOC_IN 0x80000000UL /* copy in parameters */ +#define IOC_INOUT (IOC_IN|IOC_OUT) + /* 0x20000000 distinguishes new & + old ioctl's */ +#define _IO(x,y) (IOC_VOID|((x)<<8)|(y)) + +#define _IOR(x,y,t) (IOC_OUT|(((long)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y)) + +#define _IOW(x,y,t) (IOC_IN|(((long)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y)) +#endif /* !defined(FIONREAD) || !defined(FIONBIO) */ + +#ifndef FIONREAD +#define FIONREAD _IOR('f', 127, unsigned long) /* get # bytes to read */ +#endif +#ifndef FIONBIO +#define FIONBIO _IOW('f', 126, unsigned long) /* set/clear non-blocking i/o */ +#endif + +/* Socket I/O Controls: unimplemented */ +#ifndef SIOCSHIWAT +#define SIOCSHIWAT _IOW('s', 0, unsigned long) /* set high watermark */ +#define SIOCGHIWAT _IOR('s', 1, unsigned long) /* get high watermark */ +#define SIOCSLOWAT _IOW('s', 2, unsigned long) /* set low watermark */ +#define SIOCGLOWAT _IOR('s', 3, unsigned long) /* get low watermark */ +#define SIOCATMARK _IOR('s', 7, unsigned long) /* at oob mark? */ +#endif + +/* Socket flags: */ +#ifndef O_NONBLOCK +#define O_NONBLOCK 04000U +#endif + +/* FD_SET used for lwip_select */ +#ifndef FD_SET + #undef FD_SETSIZE + /* Make FD_SETSIZE match NUM_SOCKETS in socket.c */ + #define FD_SETSIZE MEMP_NUM_NETCONN + #define FD_SET(n, p) ((p)->fd_bits[(n)/8] |= (1 << ((n) & 7))) + #define FD_CLR(n, p) ((p)->fd_bits[(n)/8] &= ~(1 << ((n) & 7))) + #define FD_ISSET(n,p) ((p)->fd_bits[(n)/8] & (1 << ((n) & 7))) + #define FD_ZERO(p) memset((void*)(p),0,sizeof(*(p))) + + typedef struct fd_set { + unsigned char fd_bits [(FD_SETSIZE+7)/8]; + } fd_set; + +#endif /* FD_SET */ + +/** LWIP_TIMEVAL_PRIVATE: if you want to use the struct timeval provided + * by your system, set this to 0 and include <sys/time.h> in cc.h */ +#ifndef LWIP_TIMEVAL_PRIVATE +#define LWIP_TIMEVAL_PRIVATE 1 +#endif + +#if LWIP_TIMEVAL_PRIVATE +struct timeval { + long tv_sec; /* seconds */ + long tv_usec; /* and microseconds */ +}; +#endif /* LWIP_TIMEVAL_PRIVATE */ + +void lwip_socket_init(void); + +int lwip_accept(int s, struct sockaddr *addr, socklen_t *addrlen); +int lwip_bind(int s, const struct sockaddr *name, socklen_t namelen); +int lwip_shutdown(int s, int how); +int lwip_getpeername (int s, struct sockaddr *name, socklen_t *namelen); +int lwip_getsockname (int s, struct sockaddr *name, socklen_t *namelen); +int lwip_getsockopt (int s, int level, int optname, void *optval, socklen_t *optlen); +int lwip_setsockopt (int s, int level, int optname, const void *optval, socklen_t optlen); +int lwip_close(int s); +int lwip_connect(int s, const struct sockaddr *name, socklen_t namelen); +int lwip_listen(int s, int backlog); +int lwip_recv(int s, void *mem, size_t len, int flags); +int lwip_read(int s, void *mem, size_t len); +int lwip_recvfrom(int s, void *mem, size_t len, int flags, + struct sockaddr *from, socklen_t *fromlen); +int lwip_send(int s, const void *dataptr, size_t size, int flags); +int lwip_sendto(int s, const void *dataptr, size_t size, int flags, + const struct sockaddr *to, socklen_t tolen); +int lwip_socket(int domain, int type, int protocol); +int lwip_write(int s, const void *dataptr, size_t size); +int lwip_select(int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, + struct timeval *timeout); +int lwip_ioctl(int s, long cmd, void *argp); + +#if LWIP_COMPAT_SOCKETS +#define accept(a,b,c) lwip_accept(a,b,c) +#define bind(a,b,c) lwip_bind(a,b,c) +#define shutdown(a,b) lwip_shutdown(a,b) +#define closesocket(s) lwip_close(s) +#define connect(a,b,c) lwip_connect(a,b,c) +#define getsockname(a,b,c) lwip_getsockname(a,b,c) +#define getpeername(a,b,c) lwip_getpeername(a,b,c) +#define setsockopt(a,b,c,d,e) lwip_setsockopt(a,b,c,d,e) +#define getsockopt(a,b,c,d,e) lwip_getsockopt(a,b,c,d,e) +#define listen(a,b) lwip_listen(a,b) +#define recv(a,b,c,d) lwip_recv(a,b,c,d) +#define recvfrom(a,b,c,d,e,f) lwip_recvfrom(a,b,c,d,e,f) +#define send(a,b,c,d) lwip_send(a,b,c,d) +#define sendto(a,b,c,d,e,f) lwip_sendto(a,b,c,d,e,f) +#define socket(a,b,c) lwip_socket(a,b,c) +#define select(a,b,c,d,e) lwip_select(a,b,c,d,e) +#define ioctlsocket(a,b,c) lwip_ioctl(a,b,c) + +#if LWIP_POSIX_SOCKETS_IO_NAMES +#define read(a,b,c) lwip_read(a,b,c) +#define write(a,b,c) lwip_write(a,b,c) +#define close(s) lwip_close(s) +#endif /* LWIP_POSIX_SOCKETS_IO_NAMES */ + +#endif /* LWIP_COMPAT_SOCKETS */ + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_SOCKET */ + +#endif /* __LWIP_SOCKETS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/stats.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/stats.h new file mode 100644 index 000000000..4aec5e544 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/stats.h @@ -0,0 +1,285 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_STATS_H__ +#define __LWIP_STATS_H__ + +#include "lwip/opt.h" + +#include "lwip/mem.h" +#include "lwip/memp.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if LWIP_STATS + +#ifndef LWIP_STATS_LARGE +#define LWIP_STATS_LARGE 0 +#endif + +#if LWIP_STATS_LARGE +#define STAT_COUNTER u32_t +#define STAT_COUNTER_F U32_F +#else +#define STAT_COUNTER u16_t +#define STAT_COUNTER_F U16_F +#endif + +struct stats_proto { + STAT_COUNTER xmit; /* Transmitted packets. */ + STAT_COUNTER recv; /* Received packets. */ + STAT_COUNTER fw; /* Forwarded packets. */ + STAT_COUNTER drop; /* Dropped packets. */ + STAT_COUNTER chkerr; /* Checksum error. */ + STAT_COUNTER lenerr; /* Invalid length error. */ + STAT_COUNTER memerr; /* Out of memory error. */ + STAT_COUNTER rterr; /* Routing error. */ + STAT_COUNTER proterr; /* Protocol error. */ + STAT_COUNTER opterr; /* Error in options. */ + STAT_COUNTER err; /* Misc error. */ + STAT_COUNTER cachehit; +}; + +struct stats_igmp { + STAT_COUNTER lenerr; /* Invalid length error. */ + STAT_COUNTER chkerr; /* Checksum error. */ + STAT_COUNTER v1_rxed; /* */ + STAT_COUNTER join_sent; /* */ + STAT_COUNTER leave_sent; /* */ + STAT_COUNTER unicast_query; /* */ + STAT_COUNTER report_sent; /* */ + STAT_COUNTER report_rxed; /* */ + STAT_COUNTER group_query_rxed; /* */ +}; + +struct stats_mem { + mem_size_t avail; + mem_size_t used; + mem_size_t max; + STAT_COUNTER err; + STAT_COUNTER illegal; +}; + +struct stats_syselem { + STAT_COUNTER used; + STAT_COUNTER max; + STAT_COUNTER err; +}; + +struct stats_sys { + struct stats_syselem sem; + struct stats_syselem mbox; +}; + +struct stats_ { +#if LINK_STATS + struct stats_proto link; +#endif +#if ETHARP_STATS + struct stats_proto etharp; +#endif +#if IPFRAG_STATS + struct stats_proto ip_frag; +#endif +#if IP_STATS + struct stats_proto ip; +#endif +#if ICMP_STATS + struct stats_proto icmp; +#endif +#if IGMP_STATS + struct stats_igmp igmp; +#endif +#if UDP_STATS + struct stats_proto udp; +#endif +#if TCP_STATS + struct stats_proto tcp; +#endif +#if MEM_STATS + struct stats_mem mem; +#endif +#if MEMP_STATS + struct stats_mem memp[MEMP_MAX]; +#endif +#if SYS_STATS + struct stats_sys sys; +#endif +}; + +extern struct stats_ lwip_stats; + +#define stats_init() /* Compatibility define, not init needed. */ + +#define STATS_INC(x) ++lwip_stats.x +#define STATS_DEC(x) --lwip_stats.x +#else +#define stats_init() +#define STATS_INC(x) +#define STATS_DEC(x) +#endif /* LWIP_STATS */ + +#if TCP_STATS +#define TCP_STATS_INC(x) STATS_INC(x) +#define TCP_STATS_DISPLAY() stats_display_proto(&lwip_stats.tcp, "TCP") +#else +#define TCP_STATS_INC(x) +#define TCP_STATS_DISPLAY() +#endif + +#if UDP_STATS +#define UDP_STATS_INC(x) STATS_INC(x) +#define UDP_STATS_DISPLAY() stats_display_proto(&lwip_stats.udp, "UDP") +#else +#define UDP_STATS_INC(x) +#define UDP_STATS_DISPLAY() +#endif + +#if ICMP_STATS +#define ICMP_STATS_INC(x) STATS_INC(x) +#define ICMP_STATS_DISPLAY() stats_display_proto(&lwip_stats.icmp, "ICMP") +#else +#define ICMP_STATS_INC(x) +#define ICMP_STATS_DISPLAY() +#endif + +#if IGMP_STATS +#define IGMP_STATS_INC(x) STATS_INC(x) +#define IGMP_STATS_DISPLAY() stats_display_igmp(&lwip_stats.igmp) +#else +#define IGMP_STATS_INC(x) +#define IGMP_STATS_DISPLAY() +#endif + +#if IP_STATS +#define IP_STATS_INC(x) STATS_INC(x) +#define IP_STATS_DISPLAY() stats_display_proto(&lwip_stats.ip, "IP") +#else +#define IP_STATS_INC(x) +#define IP_STATS_DISPLAY() +#endif + +#if IPFRAG_STATS +#define IPFRAG_STATS_INC(x) STATS_INC(x) +#define IPFRAG_STATS_DISPLAY() stats_display_proto(&lwip_stats.ip_frag, "IP_FRAG") +#else +#define IPFRAG_STATS_INC(x) +#define IPFRAG_STATS_DISPLAY() +#endif + +#if ETHARP_STATS +#define ETHARP_STATS_INC(x) STATS_INC(x) +#define ETHARP_STATS_DISPLAY() stats_display_proto(&lwip_stats.etharp, "ETHARP") +#else +#define ETHARP_STATS_INC(x) +#define ETHARP_STATS_DISPLAY() +#endif + +#if LINK_STATS +#define LINK_STATS_INC(x) STATS_INC(x) +#define LINK_STATS_DISPLAY() stats_display_proto(&lwip_stats.link, "LINK") +#else +#define LINK_STATS_INC(x) +#define LINK_STATS_DISPLAY() +#endif + +#if MEM_STATS +#define MEM_STATS_AVAIL(x, y) lwip_stats.mem.x = y +#define MEM_STATS_INC(x) STATS_INC(mem.x) +#define MEM_STATS_INC_USED(x, y) do { lwip_stats.mem.used += y; \ + if (lwip_stats.mem.max < lwip_stats.mem.used) { \ + lwip_stats.mem.max = lwip_stats.mem.used; \ + } \ + } while(0) +#define MEM_STATS_DEC_USED(x, y) lwip_stats.mem.x -= y +#define MEM_STATS_DISPLAY() stats_display_mem(&lwip_stats.mem, "HEAP") +#else +#define MEM_STATS_AVAIL(x, y) +#define MEM_STATS_INC(x) +#define MEM_STATS_INC_USED(x, y) +#define MEM_STATS_DEC_USED(x, y) +#define MEM_STATS_DISPLAY() +#endif + +#if MEMP_STATS +#define MEMP_STATS_AVAIL(x, i, y) lwip_stats.memp[i].x = y +#define MEMP_STATS_INC(x, i) STATS_INC(memp[i].x) +#define MEMP_STATS_DEC(x, i) STATS_DEC(memp[i].x) +#define MEMP_STATS_INC_USED(x, i) do { ++lwip_stats.memp[i].used; \ + if (lwip_stats.memp[i].max < lwip_stats.memp[i].used) { \ + lwip_stats.memp[i].max = lwip_stats.memp[i].used; \ + } \ + } while(0) +#define MEMP_STATS_DISPLAY(i) stats_display_memp(&lwip_stats.memp[i], i) +#else +#define MEMP_STATS_AVAIL(x, i, y) +#define MEMP_STATS_INC(x, i) +#define MEMP_STATS_DEC(x, i) +#define MEMP_STATS_INC_USED(x, i) +#define MEMP_STATS_DISPLAY(i) +#endif + +#if SYS_STATS +#define SYS_STATS_INC(x) STATS_INC(sys.x) +#define SYS_STATS_DEC(x) STATS_DEC(sys.x) +#define SYS_STATS_DISPLAY() stats_display_sys(&lwip_stats.sys) +#else +#define SYS_STATS_INC(x) +#define SYS_STATS_DEC(x) +#define SYS_STATS_DISPLAY() +#endif + +/* Display of statistics */ +#if LWIP_STATS_DISPLAY +void stats_display(void); +void stats_display_proto(struct stats_proto *proto, char *name); +void stats_display_igmp(struct stats_igmp *igmp); +void stats_display_mem(struct stats_mem *mem, char *name); +void stats_display_memp(struct stats_mem *mem, int index); +void stats_display_sys(struct stats_sys *sys); +#else +#define stats_display() +#define stats_display_proto(proto, name) +#define stats_display_igmp(igmp) +#define stats_display_mem(mem, name) +#define stats_display_memp(mem, index) +#define stats_display_sys(sys) +#endif /* LWIP_STATS_DISPLAY */ + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_STATS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sys.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sys.h new file mode 100644 index 000000000..9a4f02abc --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/sys.h @@ -0,0 +1,245 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_SYS_H__ +#define __LWIP_SYS_H__ + +#include "lwip/opt.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if NO_SYS + +/* For a totally minimal and standalone system, we provide null + definitions of the sys_ functions. */ +typedef u8_t sys_sem_t; +typedef u8_t sys_mbox_t; +struct sys_timeo {u8_t dummy;}; + +#define sys_init() +#define sys_timeout(m,h,a) +#define sys_untimeout(m,a) +#define sys_sem_new(c) c +#define sys_sem_signal(s) +#define sys_sem_wait(s) +#define sys_sem_wait_timeout(s,t) +#define sys_arch_sem_wait(s,t) +#define sys_sem_free(s) +#define sys_mbox_new(s) 0 +#define sys_mbox_fetch(m,d) +#define sys_mbox_tryfetch(m,d) +#define sys_mbox_post(m,d) +#define sys_mbox_trypost(m,d) +#define sys_mbox_free(m) + +#define sys_thread_new(n,t,a,s,p) + +#else /* NO_SYS */ + +/** Return code for timeouts from sys_arch_mbox_fetch and sys_arch_sem_wait */ +#define SYS_ARCH_TIMEOUT 0xffffffffUL + +/* sys_mbox_tryfetch returns SYS_MBOX_EMPTY if appropriate. + * For now we use the same magic value, but we allow this to change in future. + */ +#define SYS_MBOX_EMPTY SYS_ARCH_TIMEOUT + +#include "lwip/err.h" +#include "arch/sys_arch.h" + +typedef void (* sys_timeout_handler)(void *arg); + +struct sys_timeo { + struct sys_timeo *next; + u32_t time; + sys_timeout_handler h; + void *arg; +}; + +struct sys_timeouts { + struct sys_timeo *next; +}; + +/* sys_init() must be called before anthing else. */ +void sys_init(void); + +/* + * sys_timeout(): + * + * Schedule a timeout a specified amount of milliseconds in the + * future. When the timeout occurs, the specified timeout handler will + * be called. The handler will be passed the "arg" argument when + * called. + * + */ +void sys_timeout(u32_t msecs, sys_timeout_handler h, void *arg); +void sys_untimeout(sys_timeout_handler h, void *arg); +struct sys_timeouts *sys_arch_timeouts(void); + +/* Semaphore functions. */ +sys_sem_t sys_sem_new(u8_t count); +void sys_sem_signal(sys_sem_t sem); +u32_t sys_arch_sem_wait(sys_sem_t sem, u32_t timeout); +void sys_sem_free(sys_sem_t sem); +void sys_sem_wait(sys_sem_t sem); +int sys_sem_wait_timeout(sys_sem_t sem, u32_t timeout); + +/* Time functions. */ +#ifndef sys_msleep +void sys_msleep(u32_t ms); /* only has a (close to) 1 jiffy resolution. */ +#endif +#ifndef sys_jiffies +u32_t sys_jiffies(void); /* since power up. */ +#endif + +/* Mailbox functions. */ +sys_mbox_t sys_mbox_new(int size); +void sys_mbox_post(sys_mbox_t mbox, void *msg); +err_t sys_mbox_trypost(sys_mbox_t mbox, void *msg); +u32_t sys_arch_mbox_fetch(sys_mbox_t mbox, void **msg, u32_t timeout); +#ifndef sys_arch_mbox_tryfetch /* Allow port to override with a macro */ +u32_t sys_arch_mbox_tryfetch(sys_mbox_t mbox, void **msg); +#endif +/* For now, we map straight to sys_arch implementation. */ +#define sys_mbox_tryfetch(mbox, msg) sys_arch_mbox_tryfetch(mbox, msg) +void sys_mbox_free(sys_mbox_t mbox); +void sys_mbox_fetch(sys_mbox_t mbox, void **msg); + +/* Thread functions. */ +sys_thread_t sys_thread_new(char *name, void (* thread)(void *arg), void *arg, int stacksize, int prio); + +#endif /* NO_SYS */ + +/** Returns the current time in milliseconds. */ +u32_t sys_now(void); + +/* Critical Region Protection */ +/* These functions must be implemented in the sys_arch.c file. + In some implementations they can provide a more light-weight protection + mechanism than using semaphores. Otherwise semaphores can be used for + implementation */ +#ifndef SYS_ARCH_PROTECT +/** SYS_LIGHTWEIGHT_PROT + * define SYS_LIGHTWEIGHT_PROT in lwipopts.h if you want inter-task protection + * for certain critical regions during buffer allocation, deallocation and memory + * allocation and deallocation. + */ +#if SYS_LIGHTWEIGHT_PROT + +/** SYS_ARCH_DECL_PROTECT + * declare a protection variable. This macro will default to defining a variable of + * type sys_prot_t. If a particular port needs a different implementation, then + * this macro may be defined in sys_arch.h. + */ +#define SYS_ARCH_DECL_PROTECT(lev) sys_prot_t lev +/** SYS_ARCH_PROTECT + * Perform a "fast" protect. This could be implemented by + * disabling interrupts for an embedded system or by using a semaphore or + * mutex. The implementation should allow calling SYS_ARCH_PROTECT when + * already protected. The old protection level is returned in the variable + * "lev". This macro will default to calling the sys_arch_protect() function + * which should be implemented in sys_arch.c. If a particular port needs a + * different implementation, then this macro may be defined in sys_arch.h + */ +#define SYS_ARCH_PROTECT(lev) lev = sys_arch_protect() +/** SYS_ARCH_UNPROTECT + * Perform a "fast" set of the protection level to "lev". This could be + * implemented by setting the interrupt level to "lev" within the MACRO or by + * using a semaphore or mutex. This macro will default to calling the + * sys_arch_unprotect() function which should be implemented in + * sys_arch.c. If a particular port needs a different implementation, then + * this macro may be defined in sys_arch.h + */ +#define SYS_ARCH_UNPROTECT(lev) sys_arch_unprotect(lev) +sys_prot_t sys_arch_protect(void); +void sys_arch_unprotect(sys_prot_t pval); + +#else + +#define SYS_ARCH_DECL_PROTECT(lev) +#define SYS_ARCH_PROTECT(lev) +#define SYS_ARCH_UNPROTECT(lev) + +#endif /* SYS_LIGHTWEIGHT_PROT */ + +#endif /* SYS_ARCH_PROTECT */ + +/* + * Macros to set/get and increase/decrease variables in a thread-safe way. + * Use these for accessing variable that are used from more than one thread. + */ + +#ifndef SYS_ARCH_INC +#define SYS_ARCH_INC(var, val) do { \ + SYS_ARCH_DECL_PROTECT(old_level); \ + SYS_ARCH_PROTECT(old_level); \ + var += val; \ + SYS_ARCH_UNPROTECT(old_level); \ + } while(0) +#endif /* SYS_ARCH_INC */ + +#ifndef SYS_ARCH_DEC +#define SYS_ARCH_DEC(var, val) do { \ + SYS_ARCH_DECL_PROTECT(old_level); \ + SYS_ARCH_PROTECT(old_level); \ + var -= val; \ + SYS_ARCH_UNPROTECT(old_level); \ + } while(0) +#endif /* SYS_ARCH_DEC */ + +#ifndef SYS_ARCH_GET +#define SYS_ARCH_GET(var, ret) do { \ + SYS_ARCH_DECL_PROTECT(old_level); \ + SYS_ARCH_PROTECT(old_level); \ + ret = var; \ + SYS_ARCH_UNPROTECT(old_level); \ + } while(0) +#endif /* SYS_ARCH_GET */ + +#ifndef SYS_ARCH_SET +#define SYS_ARCH_SET(var, val) do { \ + SYS_ARCH_DECL_PROTECT(old_level); \ + SYS_ARCH_PROTECT(old_level); \ + var = val; \ + SYS_ARCH_UNPROTECT(old_level); \ + } while(0) +#endif /* SYS_ARCH_SET */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __LWIP_SYS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcp.h new file mode 100644 index 000000000..c1515744d --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcp.h @@ -0,0 +1,709 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_TCP_H__ +#define __LWIP_TCP_H__ + +#include "lwip/opt.h" + +#if LWIP_TCP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/sys.h" +#include "lwip/mem.h" +#include "lwip/pbuf.h" +#include "lwip/ip.h" +#include "lwip/icmp.h" +#include "lwip/err.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct tcp_pcb; + +/* Functions for interfacing with TCP: */ + +/* Lower layer interface to TCP: */ +#define tcp_init() /* Compatibility define, not init needed. */ +void tcp_tmr (void); /* Must be called every + TCP_TMR_INTERVAL + ms. (Typically 250 ms). */ +/* Application program's interface: */ +struct tcp_pcb * tcp_new (void); +struct tcp_pcb * tcp_alloc (u8_t prio); + +void tcp_arg (struct tcp_pcb *pcb, void *arg); +void tcp_accept (struct tcp_pcb *pcb, + err_t (* accept)(void *arg, struct tcp_pcb *newpcb, + err_t err)); +void tcp_recv (struct tcp_pcb *pcb, + err_t (* recv)(void *arg, struct tcp_pcb *tpcb, + struct pbuf *p, err_t err)); +void tcp_sent (struct tcp_pcb *pcb, + err_t (* sent)(void *arg, struct tcp_pcb *tpcb, + u16_t len)); +void tcp_poll (struct tcp_pcb *pcb, + err_t (* poll)(void *arg, struct tcp_pcb *tpcb), + u8_t interval); +void tcp_err (struct tcp_pcb *pcb, + void (* err)(void *arg, err_t err)); + +#define tcp_mss(pcb) ((pcb)->mss) +#define tcp_sndbuf(pcb) ((pcb)->snd_buf) +#define tcp_nagle_disable(pcb) ((pcb)->flags |= TF_NODELAY) +#define tcp_nagle_enable(pcb) ((pcb)->flags &= ~TF_NODELAY) +#define tcp_nagle_disabled(pcb) (((pcb)->flags & TF_NODELAY) != 0) + +#if TCP_LISTEN_BACKLOG +#define tcp_accepted(pcb) (((struct tcp_pcb_listen *)(pcb))->accepts_pending--) +#else /* TCP_LISTEN_BACKLOG */ +#define tcp_accepted(pcb) +#endif /* TCP_LISTEN_BACKLOG */ + +void tcp_recved (struct tcp_pcb *pcb, u16_t len); +err_t tcp_bind (struct tcp_pcb *pcb, struct ip_addr *ipaddr, + u16_t port); +err_t tcp_connect (struct tcp_pcb *pcb, struct ip_addr *ipaddr, + u16_t port, err_t (* connected)(void *arg, + struct tcp_pcb *tpcb, + err_t err)); + +struct tcp_pcb * tcp_listen_with_backlog(struct tcp_pcb *pcb, u8_t backlog); +#define tcp_listen(pcb) tcp_listen_with_backlog(pcb, TCP_DEFAULT_LISTEN_BACKLOG) + +void tcp_abandon (struct tcp_pcb *pcb, int reset); +#define tcp_abort(pcb) tcp_abandon((pcb), 1) +err_t tcp_close (struct tcp_pcb *pcb); + +/* Flags for "apiflags" parameter in tcp_write and tcp_enqueue */ +#define TCP_WRITE_FLAG_COPY 0x01 +#define TCP_WRITE_FLAG_MORE 0x02 + +err_t tcp_write (struct tcp_pcb *pcb, const void *dataptr, u16_t len, + u8_t apiflags); + +void tcp_setprio (struct tcp_pcb *pcb, u8_t prio); + +#define TCP_PRIO_MIN 1 +#define TCP_PRIO_NORMAL 64 +#define TCP_PRIO_MAX 127 + +/* It is also possible to call these two functions at the right + intervals (instead of calling tcp_tmr()). */ +void tcp_slowtmr (void); +void tcp_fasttmr (void); + + +/* Only used by IP to pass a TCP segment to TCP: */ +void tcp_input (struct pbuf *p, struct netif *inp); +/* Used within the TCP code only: */ +err_t tcp_send_empty_ack(struct tcp_pcb *pcb); +err_t tcp_output (struct tcp_pcb *pcb); +void tcp_rexmit (struct tcp_pcb *pcb); +void tcp_rexmit_rto (struct tcp_pcb *pcb); +void tcp_rexmit_fast (struct tcp_pcb *pcb); +u32_t tcp_update_rcv_ann_wnd(struct tcp_pcb *pcb); + +/** + * This is the Nagle algorithm: try to combine user data to send as few TCP + * segments as possible. Only send if + * - no previously transmitted data on the connection remains unacknowledged or + * - the TF_NODELAY flag is set (nagle algorithm turned off for this pcb) or + * - the only unsent segment is at least pcb->mss bytes long (or there is more + * than one unsent segment - with lwIP, this can happen although unsent->len < mss) + * - or if we are in fast-retransmit (TF_INFR) + */ +#define tcp_do_output_nagle(tpcb) ((((tpcb)->unacked == NULL) || \ + ((tpcb)->flags & (TF_NODELAY | TF_INFR)) || \ + (((tpcb)->unsent != NULL) && (((tpcb)->unsent->next != NULL) || \ + ((tpcb)->unsent->len >= (tpcb)->mss))) \ + ) ? 1 : 0) +#define tcp_output_nagle(tpcb) (tcp_do_output_nagle(tpcb) ? tcp_output(tpcb) : ERR_OK) + + +#define TCP_SEQ_LT(a,b) ((s32_t)((a)-(b)) < 0) +#define TCP_SEQ_LEQ(a,b) ((s32_t)((a)-(b)) <= 0) +#define TCP_SEQ_GT(a,b) ((s32_t)((a)-(b)) > 0) +#define TCP_SEQ_GEQ(a,b) ((s32_t)((a)-(b)) >= 0) +/* is b<=a<=c? */ +#if 0 /* see bug #10548 */ +#define TCP_SEQ_BETWEEN(a,b,c) ((c)-(b) >= (a)-(b)) +#endif +#define TCP_SEQ_BETWEEN(a,b,c) (TCP_SEQ_GEQ(a,b) && TCP_SEQ_LEQ(a,c)) +#define TCP_FIN 0x01U +#define TCP_SYN 0x02U +#define TCP_RST 0x04U +#define TCP_PSH 0x08U +#define TCP_ACK 0x10U +#define TCP_URG 0x20U +#define TCP_ECE 0x40U +#define TCP_CWR 0x80U + +#define TCP_FLAGS 0x3fU + +/* Length of the TCP header, excluding options. */ +#define TCP_HLEN 20 + +#ifndef TCP_TMR_INTERVAL +#define TCP_TMR_INTERVAL 250 /* The TCP timer interval in milliseconds. */ +#endif /* TCP_TMR_INTERVAL */ + +#ifndef TCP_FAST_INTERVAL +#define TCP_FAST_INTERVAL TCP_TMR_INTERVAL /* the fine grained timeout in milliseconds */ +#endif /* TCP_FAST_INTERVAL */ + +#ifndef TCP_SLOW_INTERVAL +#define TCP_SLOW_INTERVAL (2*TCP_TMR_INTERVAL) /* the coarse grained timeout in milliseconds */ +#endif /* TCP_SLOW_INTERVAL */ + +#define TCP_FIN_WAIT_TIMEOUT 20000 /* milliseconds */ +#define TCP_SYN_RCVD_TIMEOUT 20000 /* milliseconds */ + +#define TCP_OOSEQ_TIMEOUT 6U /* x RTO */ + +#ifndef TCP_MSL +#define TCP_MSL 60000UL /* The maximum segment lifetime in milliseconds */ +#endif + +/* Keepalive values, compliant with RFC 1122. Don't change this unless you know what you're doing */ +#ifndef TCP_KEEPIDLE_DEFAULT +#define TCP_KEEPIDLE_DEFAULT 7200000UL /* Default KEEPALIVE timer in milliseconds */ +#endif + +#ifndef TCP_KEEPINTVL_DEFAULT +#define TCP_KEEPINTVL_DEFAULT 75000UL /* Default Time between KEEPALIVE probes in milliseconds */ +#endif + +#ifndef TCP_KEEPCNT_DEFAULT +#define TCP_KEEPCNT_DEFAULT 9U /* Default Counter for KEEPALIVE probes */ +#endif + +#define TCP_MAXIDLE TCP_KEEPCNT_DEFAULT * TCP_KEEPINTVL_DEFAULT /* Maximum KEEPALIVE probe time */ + +/* Fields are (of course) in network byte order. + * Some fields are converted to host byte order in tcp_input(). + */ +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct tcp_hdr { + PACK_STRUCT_FIELD(u16_t src); + PACK_STRUCT_FIELD(u16_t dest); + PACK_STRUCT_FIELD(u32_t seqno); + PACK_STRUCT_FIELD(u32_t ackno); + PACK_STRUCT_FIELD(u16_t _hdrlen_rsvd_flags); + PACK_STRUCT_FIELD(u16_t wnd); + PACK_STRUCT_FIELD(u16_t chksum); + PACK_STRUCT_FIELD(u16_t urgp); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define TCPH_OFFSET(phdr) (ntohs((phdr)->_hdrlen_rsvd_flags) >> 8) +#define TCPH_HDRLEN(phdr) (ntohs((phdr)->_hdrlen_rsvd_flags) >> 12) +#define TCPH_FLAGS(phdr) (ntohs((phdr)->_hdrlen_rsvd_flags) & TCP_FLAGS) + +#define TCPH_OFFSET_SET(phdr, offset) (phdr)->_hdrlen_rsvd_flags = htons(((offset) << 8) | TCPH_FLAGS(phdr)) +#define TCPH_HDRLEN_SET(phdr, len) (phdr)->_hdrlen_rsvd_flags = htons(((len) << 12) | TCPH_FLAGS(phdr)) +#define TCPH_FLAGS_SET(phdr, flags) (phdr)->_hdrlen_rsvd_flags = (((phdr)->_hdrlen_rsvd_flags & htons((u16_t)(~(u16_t)(TCP_FLAGS)))) | htons(flags)) +#define TCPH_SET_FLAG(phdr, flags ) (phdr)->_hdrlen_rsvd_flags = ((phdr)->_hdrlen_rsvd_flags | htons(flags)) +#define TCPH_UNSET_FLAG(phdr, flags) (phdr)->_hdrlen_rsvd_flags = htons(ntohs((phdr)->_hdrlen_rsvd_flags) | (TCPH_FLAGS(phdr) & ~(flags)) ) + +#define TCP_TCPLEN(seg) ((seg)->len + ((TCPH_FLAGS((seg)->tcphdr) & (TCP_FIN | TCP_SYN)) != 0)) + +enum tcp_state { + CLOSED = 0, + LISTEN = 1, + SYN_SENT = 2, + SYN_RCVD = 3, + ESTABLISHED = 4, + FIN_WAIT_1 = 5, + FIN_WAIT_2 = 6, + CLOSE_WAIT = 7, + CLOSING = 8, + LAST_ACK = 9, + TIME_WAIT = 10 +}; + +/** Flags used on input processing, not on pcb->flags +*/ +#define TF_RESET (u8_t)0x08U /* Connection was reset. */ +#define TF_CLOSED (u8_t)0x10U /* Connection was sucessfully closed. */ +#define TF_GOT_FIN (u8_t)0x20U /* Connection was closed by the remote end. */ + + +#if LWIP_CALLBACK_API + /* Function to call when a listener has been connected. + * @param arg user-supplied argument (tcp_pcb.callback_arg) + * @param pcb a new tcp_pcb that now is connected + * @param err an error argument (TODO: that is current always ERR_OK?) + * @return ERR_OK: accept the new connection, + * any other err_t abortsthe new connection + */ +#define DEF_ACCEPT_CALLBACK err_t (* accept)(void *arg, struct tcp_pcb *newpcb, err_t err) +#else /* LWIP_CALLBACK_API */ +#define DEF_ACCEPT_CALLBACK +#endif /* LWIP_CALLBACK_API */ + +/** + * members common to struct tcp_pcb and struct tcp_listen_pcb + */ +#define TCP_PCB_COMMON(type) \ + type *next; /* for the linked list */ \ + enum tcp_state state; /* TCP state */ \ + u8_t prio; \ + void *callback_arg; \ + /* ports are in host byte order */ \ + u16_t local_port; \ + /* the accept callback for listen- and normal pcbs, if LWIP_CALLBACK_API */ \ + DEF_ACCEPT_CALLBACK + + +/* the TCP protocol control block */ +struct tcp_pcb { +/** common PCB members */ + IP_PCB; +/** protocol specific PCB members */ + TCP_PCB_COMMON(struct tcp_pcb); + + /* ports are in host byte order */ + u16_t remote_port; + + u8_t flags; +#define TF_ACK_DELAY ((u8_t)0x01U) /* Delayed ACK. */ +#define TF_ACK_NOW ((u8_t)0x02U) /* Immediate ACK. */ +#define TF_INFR ((u8_t)0x04U) /* In fast recovery. */ +#define TF_TIMESTAMP ((u8_t)0x08U) /* Timestamp option enabled */ +#define TF_FIN ((u8_t)0x20U) /* Connection was closed locally (FIN segment enqueued). */ +#define TF_NODELAY ((u8_t)0x40U) /* Disable Nagle algorithm */ +#define TF_NAGLEMEMERR ((u8_t)0x80U) /* nagle enabled, memerr, try to output to prevent delayed ACK to happen */ + + /* the rest of the fields are in host byte order + as we have to do some math with them */ + /* receiver variables */ + u32_t rcv_nxt; /* next seqno expected */ + u16_t rcv_wnd; /* receiver window available */ + u16_t rcv_ann_wnd; /* receiver window to announce */ + u32_t rcv_ann_right_edge; /* announced right edge of window */ + + /* Timers */ + u32_t tmr; + u8_t polltmr, pollinterval; + + /* Retransmission timer. */ + s16_t rtime; + + u16_t mss; /* maximum segment size */ + + /* RTT (round trip time) estimation variables */ + u32_t rttest; /* RTT estimate in 500ms ticks */ + u32_t rtseq; /* sequence number being timed */ + s16_t sa, sv; /* @todo document this */ + + s16_t rto; /* retransmission time-out */ + u8_t nrtx; /* number of retransmissions */ + + /* fast retransmit/recovery */ + u32_t lastack; /* Highest acknowledged seqno. */ + u8_t dupacks; + + /* congestion avoidance/control variables */ + u16_t cwnd; + u16_t ssthresh; + + /* sender variables */ + u32_t snd_nxt; /* next new seqno to be sent */ + u16_t snd_wnd; /* sender window */ + u32_t snd_wl1, snd_wl2; /* Sequence and acknowledgement numbers of last + window update. */ + u32_t snd_lbb; /* Sequence number of next byte to be buffered. */ + + u16_t acked; + + u16_t snd_buf; /* Available buffer space for sending (in bytes). */ +#define TCP_SNDQUEUELEN_OVERFLOW (0xffff-3) + u16_t snd_queuelen; /* Available buffer space for sending (in tcp_segs). */ + + + /* These are ordered by sequence number: */ + struct tcp_seg *unsent; /* Unsent (queued) segments. */ + struct tcp_seg *unacked; /* Sent but unacknowledged segments. */ +#if TCP_QUEUE_OOSEQ + struct tcp_seg *ooseq; /* Received out of sequence segments. */ +#endif /* TCP_QUEUE_OOSEQ */ + + struct pbuf *refused_data; /* Data previously received but not yet taken by upper layer */ + +#if LWIP_CALLBACK_API + /* Function to be called when more send buffer space is available. + * @param arg user-supplied argument (tcp_pcb.callback_arg) + * @param pcb the tcp_pcb which has send buffer space available + * @param space the amount of bytes available + * @return ERR_OK: try to send some data by calling tcp_output + */ + err_t (* sent)(void *arg, struct tcp_pcb *pcb, u16_t space); + + /* Function to be called when (in-sequence) data has arrived. + * @param arg user-supplied argument (tcp_pcb.callback_arg) + * @param pcb the tcp_pcb for which data has arrived + * @param p the packet buffer which arrived + * @param err an error argument (TODO: that is current always ERR_OK?) + * @return ERR_OK: try to send some data by calling tcp_output + */ + err_t (* recv)(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err); + + /* Function to be called when a connection has been set up. + * @param arg user-supplied argument (tcp_pcb.callback_arg) + * @param pcb the tcp_pcb that now is connected + * @param err an error argument (TODO: that is current always ERR_OK?) + * @return value is currently ignored + */ + err_t (* connected)(void *arg, struct tcp_pcb *pcb, err_t err); + + /* Function which is called periodically. + * The period can be adjusted in multiples of the TCP slow timer interval + * by changing tcp_pcb.polltmr. + * @param arg user-supplied argument (tcp_pcb.callback_arg) + * @param pcb the tcp_pcb to poll for + * @return ERR_OK: try to send some data by calling tcp_output + */ + err_t (* poll)(void *arg, struct tcp_pcb *pcb); + + /* Function to be called whenever a fatal error occurs. + * There is no pcb parameter since most of the times, the pcb is + * already deallocated (or there is no pcb) when this function is called. + * @param arg user-supplied argument (tcp_pcb.callback_arg) + * @param err an indication why the error callback is called: + * ERR_ABRT: aborted through tcp_abort or by a TCP timer + * ERR_RST: the connection was reset by the remote host + */ + void (* errf)(void *arg, err_t err); +#endif /* LWIP_CALLBACK_API */ + +#if LWIP_TCP_TIMESTAMPS + u32_t ts_lastacksent; + u32_t ts_recent; +#endif /* LWIP_TCP_TIMESTAMPS */ + + /* idle time before KEEPALIVE is sent */ + u32_t keep_idle; +#if LWIP_TCP_KEEPALIVE + u32_t keep_intvl; + u32_t keep_cnt; +#endif /* LWIP_TCP_KEEPALIVE */ + + /* Persist timer counter */ + u32_t persist_cnt; + /* Persist timer back-off */ + u8_t persist_backoff; + + /* KEEPALIVE counter */ + u8_t keep_cnt_sent; +}; + +struct tcp_pcb_listen { +/* Common members of all PCB types */ + IP_PCB; +/* Protocol specific PCB members */ + TCP_PCB_COMMON(struct tcp_pcb_listen); + +#if TCP_LISTEN_BACKLOG + u8_t backlog; + u8_t accepts_pending; +#endif /* TCP_LISTEN_BACKLOG */ +}; + +#if LWIP_EVENT_API + +enum lwip_event { + LWIP_EVENT_ACCEPT, + LWIP_EVENT_SENT, + LWIP_EVENT_RECV, + LWIP_EVENT_CONNECTED, + LWIP_EVENT_POLL, + LWIP_EVENT_ERR +}; + +err_t lwip_tcp_event(void *arg, struct tcp_pcb *pcb, + enum lwip_event, + struct pbuf *p, + u16_t size, + err_t err); + +#define TCP_EVENT_ACCEPT(pcb,err,ret) ret = lwip_tcp_event((pcb)->callback_arg, (pcb),\ + LWIP_EVENT_ACCEPT, NULL, 0, err) +#define TCP_EVENT_SENT(pcb,space,ret) ret = lwip_tcp_event((pcb)->callback_arg, (pcb),\ + LWIP_EVENT_SENT, NULL, space, ERR_OK) +#define TCP_EVENT_RECV(pcb,p,err,ret) ret = lwip_tcp_event((pcb)->callback_arg, (pcb),\ + LWIP_EVENT_RECV, (p), 0, (err)) +#define TCP_EVENT_CONNECTED(pcb,err,ret) ret = lwip_tcp_event((pcb)->callback_arg, (pcb),\ + LWIP_EVENT_CONNECTED, NULL, 0, (err)) +#define TCP_EVENT_POLL(pcb,ret) ret = lwip_tcp_event((pcb)->callback_arg, (pcb),\ + LWIP_EVENT_POLL, NULL, 0, ERR_OK) +#define TCP_EVENT_ERR(errf,arg,err) lwip_tcp_event((arg), NULL, \ + LWIP_EVENT_ERR, NULL, 0, (err)) +#else /* LWIP_EVENT_API */ + +#define TCP_EVENT_ACCEPT(pcb,err,ret) \ + do { \ + if((pcb)->accept != NULL) \ + (ret) = (pcb)->accept((pcb)->callback_arg,(pcb),(err)); \ + else (ret) = ERR_OK; \ + } while (0) + +#define TCP_EVENT_SENT(pcb,space,ret) \ + do { \ + if((pcb)->sent != NULL) \ + (ret) = (pcb)->sent((pcb)->callback_arg,(pcb),(space)); \ + else (ret) = ERR_OK; \ + } while (0) + +#define TCP_EVENT_RECV(pcb,p,err,ret) \ + do { \ + if((pcb)->recv != NULL) { \ + (ret) = (pcb)->recv((pcb)->callback_arg,(pcb),(p),(err)); \ + } else { \ + (ret) = tcp_recv_null(NULL, (pcb), (p), (err)); \ + } \ + } while (0) + +#define TCP_EVENT_CONNECTED(pcb,err,ret) \ + do { \ + if((pcb)->connected != NULL) \ + (ret) = (pcb)->connected((pcb)->callback_arg,(pcb),(err)); \ + else (ret) = ERR_OK; \ + } while (0) + +#define TCP_EVENT_POLL(pcb,ret) \ + do { \ + if((pcb)->poll != NULL) \ + (ret) = (pcb)->poll((pcb)->callback_arg,(pcb)); \ + else (ret) = ERR_OK; \ + } while (0) + +#define TCP_EVENT_ERR(errf,arg,err) \ + do { \ + if((errf) != NULL) \ + (errf)((arg),(err)); \ + } while (0) + +#endif /* LWIP_EVENT_API */ + +/* This structure represents a TCP segment on the unsent and unacked queues */ +struct tcp_seg { + struct tcp_seg *next; /* used when putting segements on a queue */ + struct pbuf *p; /* buffer containing data + TCP header */ + void *dataptr; /* pointer to the TCP data in the pbuf */ + u16_t len; /* the TCP length of this segment */ + u8_t flags; +#define TF_SEG_OPTS_MSS (u8_t)0x01U /* Include MSS option. */ +#define TF_SEG_OPTS_TS (u8_t)0x02U /* Include timestamp option. */ + struct tcp_hdr *tcphdr; /* the TCP header */ +}; + +#define LWIP_TCP_OPT_LENGTH(flags) \ + (flags & TF_SEG_OPTS_MSS ? 4 : 0) + \ + (flags & TF_SEG_OPTS_TS ? 12 : 0) + +/** This returns a TCP header option for MSS in an u32_t */ +#define TCP_BUILD_MSS_OPTION(x) (x) = htonl(((u32_t)2 << 24) | \ + ((u32_t)4 << 16) | \ + (((u32_t)TCP_MSS / 256) << 8) | \ + (TCP_MSS & 255)) + +/* Internal functions and global variables: */ +struct tcp_pcb *tcp_pcb_copy(struct tcp_pcb *pcb); +void tcp_pcb_purge(struct tcp_pcb *pcb); +void tcp_pcb_remove(struct tcp_pcb **pcblist, struct tcp_pcb *pcb); + +u8_t tcp_segs_free(struct tcp_seg *seg); +u8_t tcp_seg_free(struct tcp_seg *seg); +struct tcp_seg *tcp_seg_copy(struct tcp_seg *seg); + +#define tcp_ack(pcb) \ + do { \ + if((pcb)->flags & TF_ACK_DELAY) { \ + (pcb)->flags &= ~TF_ACK_DELAY; \ + (pcb)->flags |= TF_ACK_NOW; \ + tcp_output(pcb); \ + } \ + else { \ + (pcb)->flags |= TF_ACK_DELAY; \ + } \ + } while (0) + +#define tcp_ack_now(pcb) \ + do { \ + (pcb)->flags |= TF_ACK_NOW; \ + tcp_output(pcb); \ + } while (0) + +err_t tcp_send_ctrl(struct tcp_pcb *pcb, u8_t flags); +err_t tcp_enqueue(struct tcp_pcb *pcb, void *dataptr, u16_t len, + u8_t flags, u8_t apiflags, u8_t optflags); + +void tcp_rexmit_seg(struct tcp_pcb *pcb, struct tcp_seg *seg); + +void tcp_rst(u32_t seqno, u32_t ackno, + struct ip_addr *local_ip, struct ip_addr *remote_ip, + u16_t local_port, u16_t remote_port); + +u32_t tcp_next_iss(void); + +void tcp_keepalive(struct tcp_pcb *pcb); +void tcp_zero_window_probe(struct tcp_pcb *pcb); + +#if TCP_CALCULATE_EFF_SEND_MSS +u16_t tcp_eff_send_mss(u16_t sendmss, struct ip_addr *addr); +#endif /* TCP_CALCULATE_EFF_SEND_MSS */ + +#if LWIP_CALLBACK_API +err_t tcp_recv_null(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err); +#endif /* LWIP_CALLBACK_API */ + +extern struct tcp_pcb *tcp_input_pcb; +extern u32_t tcp_ticks; + +const char* tcp_debug_state_str(enum tcp_state s); +#if TCP_DEBUG || TCP_INPUT_DEBUG || TCP_OUTPUT_DEBUG +void tcp_debug_print(struct tcp_hdr *tcphdr); +void tcp_debug_print_flags(u8_t flags); +void tcp_debug_print_state(enum tcp_state s); +void tcp_debug_print_pcbs(void); +s16_t tcp_pcbs_sane(void); +#else +# define tcp_debug_print(tcphdr) +# define tcp_debug_print_flags(flags) +# define tcp_debug_print_state(s) +# define tcp_debug_print_pcbs() +# define tcp_pcbs_sane() 1 +#endif /* TCP_DEBUG */ + +#if NO_SYS +#define tcp_timer_needed() +#else +void tcp_timer_needed(void); +#endif + +/* The TCP PCB lists. */ +union tcp_listen_pcbs_t { /* List of all TCP PCBs in LISTEN state. */ + struct tcp_pcb_listen *listen_pcbs; + struct tcp_pcb *pcbs; +}; +extern union tcp_listen_pcbs_t tcp_listen_pcbs; +extern struct tcp_pcb *tcp_active_pcbs; /* List of all TCP PCBs that are in a + state in which they accept or send + data. */ +extern struct tcp_pcb *tcp_tw_pcbs; /* List of all TCP PCBs in TIME-WAIT. */ + +extern struct tcp_pcb *tcp_tmp_pcb; /* Only used for temporary storage. */ + +/* Axioms about the above lists: + 1) Every TCP PCB that is not CLOSED is in one of the lists. + 2) A PCB is only in one of the lists. + 3) All PCBs in the tcp_listen_pcbs list is in LISTEN state. + 4) All PCBs in the tcp_tw_pcbs list is in TIME-WAIT state. +*/ + +/* Define two macros, TCP_REG and TCP_RMV that registers a TCP PCB + with a PCB list or removes a PCB from a list, respectively. */ +#if 0 +#define TCP_REG(pcbs, npcb) do {\ + LWIP_DEBUGF(TCP_DEBUG, ("TCP_REG %p local port %d\n", npcb, npcb->local_port)); \ + for(tcp_tmp_pcb = *pcbs; \ + tcp_tmp_pcb != NULL; \ + tcp_tmp_pcb = tcp_tmp_pcb->next) { \ + LWIP_ASSERT("TCP_REG: already registered\n", tcp_tmp_pcb != npcb); \ + } \ + LWIP_ASSERT("TCP_REG: pcb->state != CLOSED", npcb->state != CLOSED); \ + npcb->next = *pcbs; \ + LWIP_ASSERT("TCP_REG: npcb->next != npcb", npcb->next != npcb); \ + *(pcbs) = npcb; \ + LWIP_ASSERT("TCP_RMV: tcp_pcbs sane", tcp_pcbs_sane()); \ + tcp_timer_needed(); \ + } while(0) +#define TCP_RMV(pcbs, npcb) do { \ + LWIP_ASSERT("TCP_RMV: pcbs != NULL", *pcbs != NULL); \ + LWIP_DEBUGF(TCP_DEBUG, ("TCP_RMV: removing %p from %p\n", npcb, *pcbs)); \ + if(*pcbs == npcb) { \ + *pcbs = (*pcbs)->next; \ + } else for(tcp_tmp_pcb = *pcbs; tcp_tmp_pcb != NULL; tcp_tmp_pcb = tcp_tmp_pcb->next) { \ + if(tcp_tmp_pcb->next == npcb) { \ + tcp_tmp_pcb->next = npcb->next; \ + break; \ + } \ + } \ + npcb->next = NULL; \ + LWIP_ASSERT("TCP_RMV: tcp_pcbs sane", tcp_pcbs_sane()); \ + LWIP_DEBUGF(TCP_DEBUG, ("TCP_RMV: removed %p from %p\n", npcb, *pcbs)); \ + } while(0) + +#else /* LWIP_DEBUG */ + +#define TCP_REG(pcbs, npcb) \ + do { \ + npcb->next = *pcbs; \ + *(pcbs) = npcb; \ + tcp_timer_needed(); \ + } while (0) + +#define TCP_RMV(pcbs, npcb) \ + do { \ + if(*(pcbs) == npcb) { \ + (*(pcbs)) = (*pcbs)->next; \ + } \ + else { \ + for(tcp_tmp_pcb = *pcbs; \ + tcp_tmp_pcb != NULL; \ + tcp_tmp_pcb = tcp_tmp_pcb->next) { \ + if(tcp_tmp_pcb->next == npcb) { \ + tcp_tmp_pcb->next = npcb->next; \ + break; \ + } \ + } \ + } \ + npcb->next = NULL; \ + } while(0) + +#endif /* LWIP_DEBUG */ + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_TCP */ + +#endif /* __LWIP_TCP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcpip.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcpip.h new file mode 100644 index 000000000..00a3ec5dc --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/tcpip.h @@ -0,0 +1,143 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_TCPIP_H__ +#define __LWIP_TCPIP_H__ + +#include "lwip/opt.h" + +#if !NO_SYS /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/api_msg.h" +#include "lwip/netifapi.h" +#include "lwip/pbuf.h" +#include "lwip/api.h" +#include "lwip/sys.h" +#include "lwip/netif.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if LWIP_TCPIP_CORE_LOCKING +/** The global semaphore to lock the stack. */ +extern sys_sem_t lock_tcpip_core; +#define LOCK_TCPIP_CORE() sys_sem_wait(lock_tcpip_core) +#define UNLOCK_TCPIP_CORE() sys_sem_signal(lock_tcpip_core) +#define TCPIP_APIMSG(m) tcpip_apimsg_lock(m) +#define TCPIP_APIMSG_ACK(m) +#define TCPIP_NETIFAPI(m) tcpip_netifapi_lock(m) +#define TCPIP_NETIFAPI_ACK(m) +#else +#define LOCK_TCPIP_CORE() +#define UNLOCK_TCPIP_CORE() +#define TCPIP_APIMSG(m) tcpip_apimsg(m) +#define TCPIP_APIMSG_ACK(m) sys_sem_signal(m->conn->op_completed) +#define TCPIP_NETIFAPI(m) tcpip_netifapi(m) +#define TCPIP_NETIFAPI_ACK(m) sys_sem_signal(m->sem) +#endif /* LWIP_TCPIP_CORE_LOCKING */ + +void tcpip_init(void (* tcpip_init_done)(void *), void *arg); + +#if LWIP_NETCONN +err_t tcpip_apimsg(struct api_msg *apimsg); +#if LWIP_TCPIP_CORE_LOCKING +err_t tcpip_apimsg_lock(struct api_msg *apimsg); +#endif /* LWIP_TCPIP_CORE_LOCKING */ +#endif /* LWIP_NETCONN */ + +err_t tcpip_input(struct pbuf *p, struct netif *inp); + +#if LWIP_NETIF_API +err_t tcpip_netifapi(struct netifapi_msg *netifapimsg); +#if LWIP_TCPIP_CORE_LOCKING +err_t tcpip_netifapi_lock(struct netifapi_msg *netifapimsg); +#endif /* LWIP_TCPIP_CORE_LOCKING */ +#endif /* LWIP_NETIF_API */ + +err_t tcpip_callback_with_block(void (*f)(void *ctx), void *ctx, u8_t block); +#define tcpip_callback(f, ctx) tcpip_callback_with_block(f, ctx, 1) + +/* free pbufs or heap memory from another context without blocking */ +err_t pbuf_free_callback(struct pbuf *p); +err_t mem_free_callback(void *m); + +err_t tcpip_timeout(u32_t msecs, sys_timeout_handler h, void *arg); +err_t tcpip_untimeout(sys_timeout_handler h, void *arg); + +enum tcpip_msg_type { +#if LWIP_NETCONN + TCPIP_MSG_API, +#endif /* LWIP_NETCONN */ + TCPIP_MSG_INPKT, +#if LWIP_NETIF_API + TCPIP_MSG_NETIFAPI, +#endif /* LWIP_NETIF_API */ + TCPIP_MSG_CALLBACK, + TCPIP_MSG_TIMEOUT, + TCPIP_MSG_UNTIMEOUT +}; + +struct tcpip_msg { + enum tcpip_msg_type type; + sys_sem_t *sem; + union { +#if LWIP_NETCONN + struct api_msg *apimsg; +#endif /* LWIP_NETCONN */ +#if LWIP_NETIF_API + struct netifapi_msg *netifapimsg; +#endif /* LWIP_NETIF_API */ + struct { + struct pbuf *p; + struct netif *netif; + } inp; + struct { + void (*f)(void *ctx); + void *ctx; + } cb; + struct { + u32_t msecs; + sys_timeout_handler h; + void *arg; + } tmo; + } msg; +}; + +#ifdef __cplusplus +} +#endif + +#endif /* !NO_SYS */ + +#endif /* __LWIP_TCPIP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/udp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/udp.h new file mode 100644 index 000000000..1269ee19c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/lwip/udp.h @@ -0,0 +1,155 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIP_UDP_H__ +#define __LWIP_UDP_H__ + +#include "lwip/opt.h" + +#if LWIP_UDP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/pbuf.h" +#include "lwip/netif.h" +#include "lwip/ip_addr.h" +#include "lwip/ip.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define UDP_HLEN 8 + +/* Fields are (of course) in network byte order. */ +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct udp_hdr { + PACK_STRUCT_FIELD(u16_t src); + PACK_STRUCT_FIELD(u16_t dest); /* src/dest UDP ports */ + PACK_STRUCT_FIELD(u16_t len); + PACK_STRUCT_FIELD(u16_t chksum); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define UDP_FLAGS_NOCHKSUM 0x01U +#define UDP_FLAGS_UDPLITE 0x02U +#define UDP_FLAGS_CONNECTED 0x04U + +struct udp_pcb { +/* Common members of all PCB types */ + IP_PCB; + +/* Protocol specific PCB members */ + + struct udp_pcb *next; + + u8_t flags; + /* ports are in host byte order */ + u16_t local_port, remote_port; + +#if LWIP_IGMP + /* outgoing network interface for multicast packets */ + struct ip_addr multicast_ip; +#endif /* LWIP_IGMP */ + +#if LWIP_UDPLITE + /* used for UDP_LITE only */ + u16_t chksum_len_rx, chksum_len_tx; +#endif /* LWIP_UDPLITE */ + + /* receive callback function + * addr and port are in same byte order as in the pcb + * The callback is responsible for freeing the pbuf + * if it's not used any more. + * + * ATTENTION: Be aware that 'addr' points into the pbuf 'p' so freeing this pbuf + * makes 'addr' invalid, too. + * + * @param arg user supplied argument (udp_pcb.recv_arg) + * @param pcb the udp_pcb which received data + * @param p the packet buffer that was received + * @param addr the remote IP address from which the packet was received + * @param port the remote port from which the packet was received + */ + void (* recv)(void *arg, struct udp_pcb *pcb, struct pbuf *p, + struct ip_addr *addr, u16_t port); + /* user-supplied argument for the recv callback */ + void *recv_arg; +}; +/* udp_pcbs export for exernal reference (e.g. SNMP agent) */ +extern struct udp_pcb *udp_pcbs; + +/* The following functions is the application layer interface to the + UDP code. */ +struct udp_pcb * udp_new (void); +void udp_remove (struct udp_pcb *pcb); +err_t udp_bind (struct udp_pcb *pcb, struct ip_addr *ipaddr, + u16_t port); +err_t udp_connect (struct udp_pcb *pcb, struct ip_addr *ipaddr, + u16_t port); +void udp_disconnect (struct udp_pcb *pcb); +void udp_recv (struct udp_pcb *pcb, + void (* recv)(void *arg, struct udp_pcb *upcb, + struct pbuf *p, + struct ip_addr *addr, + u16_t port), + void *recv_arg); +err_t udp_sendto_if (struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *dst_ip, u16_t dst_port, struct netif *netif); +err_t udp_sendto (struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *dst_ip, u16_t dst_port); +err_t udp_send (struct udp_pcb *pcb, struct pbuf *p); + +#define udp_flags(pcb) ((pcb)->flags) +#define udp_setflags(pcb, f) ((pcb)->flags = (f)) + +/* The following functions are the lower layer interface to UDP. */ +void udp_input (struct pbuf *p, struct netif *inp); + +#define udp_init() /* Compatibility define, not init needed. */ + +#if UDP_DEBUG +void udp_debug_print(struct udp_hdr *udphdr); +#else +#define udp_debug_print(udphdr) +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_UDP */ + +#endif /* __LWIP_UDP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/etharp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/etharp.h new file mode 100644 index 000000000..fb1542a77 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/etharp.h @@ -0,0 +1,194 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2003 Swedish Institute of Computer Science. + * Copyright (c) 2003-2004 Leon Woestenberg <leon.woestenberg@axon.tv> + * Copyright (c) 2003-2004 Axon Digital Design B.V., The Netherlands. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ + +#ifndef __NETIF_ETHARP_H__ +#define __NETIF_ETHARP_H__ + +#include "lwip/opt.h" + +#if LWIP_ARP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/pbuf.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/ip.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef ETH_PAD_SIZE +#define ETH_PAD_SIZE 0 +#endif + +#ifndef ETHARP_HWADDR_LEN +#define ETHARP_HWADDR_LEN 6 +#endif + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct eth_addr { + PACK_STRUCT_FIELD(u8_t addr[ETHARP_HWADDR_LEN]); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct eth_hdr { +#if ETH_PAD_SIZE + PACK_STRUCT_FIELD(u8_t padding[ETH_PAD_SIZE]); +#endif + PACK_STRUCT_FIELD(struct eth_addr dest); + PACK_STRUCT_FIELD(struct eth_addr src); + PACK_STRUCT_FIELD(u16_t type); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define SIZEOF_ETH_HDR (14 + ETH_PAD_SIZE) + +#if ETHARP_SUPPORT_VLAN + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct eth_vlan_hdr { + PACK_STRUCT_FIELD(u16_t tpid); + PACK_STRUCT_FIELD(u16_t prio_vid); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define SIZEOF_VLAN_HDR 4 +#define VLAN_ID(vlan_hdr) (htons((vlan_hdr)->prio_vid) & 0xFFF) + +#endif /* ETHARP_SUPPORT_VLAN */ + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +/** the ARP message */ +struct etharp_hdr { + PACK_STRUCT_FIELD(u16_t hwtype); + PACK_STRUCT_FIELD(u16_t proto); + PACK_STRUCT_FIELD(u16_t _hwlen_protolen); + PACK_STRUCT_FIELD(u16_t opcode); + PACK_STRUCT_FIELD(struct eth_addr shwaddr); + PACK_STRUCT_FIELD(struct ip_addr2 sipaddr); + PACK_STRUCT_FIELD(struct eth_addr dhwaddr); + PACK_STRUCT_FIELD(struct ip_addr2 dipaddr); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#define SIZEOF_ETHARP_HDR 28 +#define SIZEOF_ETHARP_PACKET (SIZEOF_ETH_HDR + SIZEOF_ETHARP_HDR) + +/** 5 seconds period */ +#define ARP_TMR_INTERVAL 5000 + +#define ETHTYPE_ARP 0x0806 +#define ETHTYPE_IP 0x0800 +#define ETHTYPE_VLAN 0x8100 +#define ETHTYPE_PPPOEDISC 0x8863 /* PPP Over Ethernet Discovery Stage */ +#define ETHTYPE_PPPOE 0x8864 /* PPP Over Ethernet Session Stage */ + +/** ARP message types (opcodes) */ +#define ARP_REQUEST 1 +#define ARP_REPLY 2 + +#if ARP_QUEUEING +/** struct for queueing outgoing packets for unknown address + * defined here to be accessed by memp.h + */ +struct etharp_q_entry { + struct etharp_q_entry *next; + struct pbuf *p; +}; +#endif /* ARP_QUEUEING */ + +#define etharp_init() /* Compatibility define, not init needed. */ +void etharp_tmr(void); +s8_t etharp_find_addr(struct netif *netif, struct ip_addr *ipaddr, + struct eth_addr **eth_ret, struct ip_addr **ip_ret); +void etharp_ip_input(struct netif *netif, struct pbuf *p); +void etharp_arp_input(struct netif *netif, struct eth_addr *ethaddr, + struct pbuf *p); +err_t etharp_output(struct netif *netif, struct pbuf *q, struct ip_addr *ipaddr); +err_t etharp_query(struct netif *netif, struct ip_addr *ipaddr, struct pbuf *q); +err_t etharp_request(struct netif *netif, struct ip_addr *ipaddr); +/** For Ethernet network interfaces, we might want to send "gratuitous ARP"; + * this is an ARP packet sent by a node in order to spontaneously cause other + * nodes to update an entry in their ARP cache. + * From RFC 3220 "IP Mobility Support for IPv4" section 4.6. */ +#define etharp_gratuitous(netif) etharp_request((netif), &(netif)->ip_addr) + +err_t ethernet_input(struct pbuf *p, struct netif *netif); + +#if LWIP_AUTOIP +err_t etharp_raw(struct netif *netif, const struct eth_addr *ethsrc_addr, + const struct eth_addr *ethdst_addr, + const struct eth_addr *hwsrc_addr, const struct ip_addr *ipsrc_addr, + const struct eth_addr *hwdst_addr, const struct ip_addr *ipdst_addr, + const u16_t opcode); +#endif /* LWIP_AUTOIP */ + +#define eth_addr_cmp(addr1, addr2) (memcmp((addr1)->addr, (addr2)->addr, ETHARP_HWADDR_LEN) == 0) + +extern const struct eth_addr ethbroadcast, ethzero; + +#ifdef __cplusplus +} +#endif + +#endif /* LWIP_ARP */ + +#endif /* __NETIF_ARP_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/loopif.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/loopif.h new file mode 100644 index 000000000..3f4fa62cb --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/loopif.h @@ -0,0 +1,55 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __NETIF_LOOPIF_H__ +#define __NETIF_LOOPIF_H__ + +#include "lwip/opt.h" +#include "lwip/netif.h" +#include "lwip/err.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if !LWIP_NETIF_LOOPBACK_MULTITHREADING +#define loopif_poll netif_poll +#endif /* !LWIP_NETIF_LOOPBACK_MULTITHREADING */ + +err_t loopif_init(struct netif *netif); + +#ifdef __cplusplus +} +#endif + +#endif /* __NETIF_LOOPIF_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/ppp_oe.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/ppp_oe.h new file mode 100644 index 000000000..fac0a78d0 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/ppp_oe.h @@ -0,0 +1,163 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/***************************************************************************** +* ppp_oe.h - PPP Over Ethernet implementation for lwIP. +* +* Copyright (c) 2006 by Marc Boucher, Services Informatiques (MBSI) inc. +* +* The authors hereby grant permission to use, copy, modify, distribute, +* and license this software and its documentation for any purpose, provided +* that existing copyright notices are retained in all copies and that this +* notice and the following disclaimer are included verbatim in any +* distributions. No written agreement, license, or royalty fee is required +* for any of the authorized uses. +* +* THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS *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 CONTRIBUTORS 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. +* +****************************************************************************** +* REVISION HISTORY +* +* 06-01-01 Marc Boucher <marc@mbsi.ca> +* Ported to lwIP. +*****************************************************************************/ + + + +/* based on NetBSD: if_pppoe.c,v 1.64 2006/01/31 23:50:15 martin Exp */ + +/*- + * Copyright (c) 2002 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Martin Husemann <martin@NetBSD.org>. + * + * 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. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``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 FOUNDATION OR CONTRIBUTORS + * 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. + */ +#ifndef PPP_OE_H +#define PPP_OE_H + +#include "lwip/opt.h" + +#if PPPOE_SUPPORT > 0 + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct pppoehdr { + PACK_STRUCT_FIELD(u8_t vertype); + PACK_STRUCT_FIELD(u8_t code); + PACK_STRUCT_FIELD(u16_t session); + PACK_STRUCT_FIELD(u16_t plen); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/bpstruct.h" +#endif +PACK_STRUCT_BEGIN +struct pppoetag { + PACK_STRUCT_FIELD(u16_t tag); + PACK_STRUCT_FIELD(u16_t len); +} PACK_STRUCT_STRUCT; +PACK_STRUCT_END +#ifdef PACK_STRUCT_USE_INCLUDES +# include "arch/epstruct.h" +#endif + + +#define PPPOE_STATE_INITIAL 0 +#define PPPOE_STATE_PADI_SENT 1 +#define PPPOE_STATE_PADR_SENT 2 +#define PPPOE_STATE_SESSION 3 +#define PPPOE_STATE_CLOSING 4 +/* passive */ +#define PPPOE_STATE_PADO_SENT 1 + +#define PPPOE_HEADERLEN sizeof(struct pppoehdr) +#define PPPOE_VERTYPE 0x11 /* VER=1, TYPE = 1 */ + +#define PPPOE_TAG_EOL 0x0000 /* end of list */ +#define PPPOE_TAG_SNAME 0x0101 /* service name */ +#define PPPOE_TAG_ACNAME 0x0102 /* access concentrator name */ +#define PPPOE_TAG_HUNIQUE 0x0103 /* host unique */ +#define PPPOE_TAG_ACCOOKIE 0x0104 /* AC cookie */ +#define PPPOE_TAG_VENDOR 0x0105 /* vendor specific */ +#define PPPOE_TAG_RELAYSID 0x0110 /* relay session id */ +#define PPPOE_TAG_SNAME_ERR 0x0201 /* service name error */ +#define PPPOE_TAG_ACSYS_ERR 0x0202 /* AC system error */ +#define PPPOE_TAG_GENERIC_ERR 0x0203 /* gerneric error */ + +#define PPPOE_CODE_PADI 0x09 /* Active Discovery Initiation */ +#define PPPOE_CODE_PADO 0x07 /* Active Discovery Offer */ +#define PPPOE_CODE_PADR 0x19 /* Active Discovery Request */ +#define PPPOE_CODE_PADS 0x65 /* Active Discovery Session confirmation */ +#define PPPOE_CODE_PADT 0xA7 /* Active Discovery Terminate */ + +#ifndef ETHERMTU +#define ETHERMTU 1500 +#endif + +/* two byte PPP protocol discriminator, then IP data */ +#define PPPOE_MAXMTU (ETHERMTU-PPPOE_HEADERLEN-2) + +struct pppoe_softc; + + +void pppoe_init(void); + +err_t pppoe_create(struct netif *ethif, int pd, void (*linkStatusCB)(int pd, int up), struct pppoe_softc **scptr); +err_t pppoe_destroy(struct netif *ifp); + +int pppoe_connect(struct pppoe_softc *sc); +void pppoe_disconnect(struct pppoe_softc *sc); + +void pppoe_disc_input(struct netif *netif, struct pbuf *p); +void pppoe_data_input(struct netif *netif, struct pbuf *p); + +err_t pppoe_xmit(struct pppoe_softc *sc, struct pbuf *pb); + +extern int pppoe_hdrlen; + +#endif /* PPPOE_SUPPORT */ + +#endif /* PPP_OE_H */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/slipif.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/slipif.h new file mode 100644 index 000000000..ddc2dfa56 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/netif/slipif.h @@ -0,0 +1,53 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001, Swedish Institute of Computer Science. + * 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. Neither the name of the Institute nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``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 INSTITUTE OR CONTRIBUTORS 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __NETIF_SLIPIF_H__ +#define __NETIF_SLIPIF_H__ + +#include "lwip/netif.h" + +#ifdef __cplusplus +extern "C" { +#endif + +err_t slipif_init(struct netif * netif); +void slipif_poll(struct netif *netif); + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/etharp.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/etharp.c new file mode 100644 index 000000000..1a5d13404 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/etharp.c @@ -0,0 +1,1224 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Address Resolution Protocol module for IP over Ethernet + * + * Functionally, ARP is divided into two parts. The first maps an IP address + * to a physical address when sending a packet, and the second part answers + * requests from other machines for our physical address. + * + * This implementation complies with RFC 826 (Ethernet ARP). It supports + * Gratuitious ARP from RFC3220 (IP Mobility Support for IPv4) section 4.6 + * if an interface calls etharp_gratuitous(our_netif) upon address change. + */ + +/* + * Copyright (c) 2001-2003 Swedish Institute of Computer Science. + * Copyright (c) 2003-2004 Leon Woestenberg <leon.woestenberg@axon.tv> + * Copyright (c) 2003-2004 Axon Digital Design B.V., The Netherlands. + * 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 file is part of the lwIP TCP/IP stack. + * + */ + +#include "lwip/opt.h" + +#if LWIP_ARP /* don't build if not configured for use in lwipopts.h */ + +#include "lwip/inet.h" +#include "lwip/ip.h" +#include "lwip/stats.h" +#include "lwip/snmp.h" +#include "lwip/dhcp.h" +#include "lwip/autoip.h" +#include "netif/etharp.h" + +#if PPPOE_SUPPORT +#include "netif/ppp_oe.h" +#endif /* PPPOE_SUPPORT */ + +#include <string.h> + +/** the time an ARP entry stays valid after its last update, + * for ARP_TMR_INTERVAL = 5000, this is + * (240 * 5) seconds = 20 minutes. + */ +#define ARP_MAXAGE 240 +/** the time an ARP entry stays pending after first request, + * for ARP_TMR_INTERVAL = 5000, this is + * (2 * 5) seconds = 10 seconds. + * + * @internal Keep this number at least 2, otherwise it might + * run out instantly if the timeout occurs directly after a request. + */ +#define ARP_MAXPENDING 2 + +#define HWTYPE_ETHERNET 1 + +#define ARPH_HWLEN(hdr) (ntohs((hdr)->_hwlen_protolen) >> 8) +#define ARPH_PROTOLEN(hdr) (ntohs((hdr)->_hwlen_protolen) & 0xff) + +#define ARPH_HWLEN_SET(hdr, len) (hdr)->_hwlen_protolen = htons(ARPH_PROTOLEN(hdr) | ((len) << 8)) +#define ARPH_PROTOLEN_SET(hdr, len) (hdr)->_hwlen_protolen = htons((len) | (ARPH_HWLEN(hdr) << 8)) + +enum etharp_state { + ETHARP_STATE_EMPTY = 0, + ETHARP_STATE_PENDING, + ETHARP_STATE_STABLE +}; + +struct etharp_entry { +#if ARP_QUEUEING + /** + * Pointer to queue of pending outgoing packets on this ARP entry. + */ + struct etharp_q_entry *q; +#endif + struct ip_addr ipaddr; + struct eth_addr ethaddr; + enum etharp_state state; + u8_t ctime; + struct netif *netif; +}; + +const struct eth_addr ethbroadcast = {{0xff,0xff,0xff,0xff,0xff,0xff}}; +const struct eth_addr ethzero = {{0,0,0,0,0,0}}; +static struct etharp_entry arp_table[ARP_TABLE_SIZE]; +#if !LWIP_NETIF_HWADDRHINT +static u8_t etharp_cached_entry; +#endif + +/** + * Try hard to create a new entry - we want the IP address to appear in + * the cache (even if this means removing an active entry or so). */ +#define ETHARP_TRY_HARD 1 +#define ETHARP_FIND_ONLY 2 + +#if LWIP_NETIF_HWADDRHINT +#define NETIF_SET_HINT(netif, hint) if (((netif) != NULL) && ((netif)->addr_hint != NULL)) \ + *((netif)->addr_hint) = (hint); +static s8_t find_entry(struct ip_addr *ipaddr, u8_t flags, struct netif *netif); +#else /* LWIP_NETIF_HWADDRHINT */ +static s8_t find_entry(struct ip_addr *ipaddr, u8_t flags); +#endif /* LWIP_NETIF_HWADDRHINT */ + +static err_t update_arp_entry(struct netif *netif, struct ip_addr *ipaddr, struct eth_addr *ethaddr, u8_t flags); + + +/* Some checks, instead of etharp_init(): */ +#if (LWIP_ARP && (ARP_TABLE_SIZE > 0x7f)) + #error "If you want to use ARP, ARP_TABLE_SIZE must fit in an s8_t, so, you have to reduce it in your lwipopts.h" +#endif + + +#if ARP_QUEUEING +/** + * Free a complete queue of etharp entries + * + * @param q a qeueue of etharp_q_entry's to free + */ +static void +free_etharp_q(struct etharp_q_entry *q) +{ + struct etharp_q_entry *r; + LWIP_ASSERT("q != NULL", q != NULL); + LWIP_ASSERT("q->p != NULL", q->p != NULL); + while (q) { + r = q; + q = q->next; + LWIP_ASSERT("r->p != NULL", (r->p != NULL)); + pbuf_free(r->p); + memp_free(MEMP_ARP_QUEUE, r); + } +} +#endif + +/** + * Clears expired entries in the ARP table. + * + * This function should be called every ETHARP_TMR_INTERVAL microseconds (5 seconds), + * in order to expire entries in the ARP table. + */ +void +etharp_tmr(void) +{ + u8_t i; + + LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer\n")); + /* remove expired entries from the ARP table */ + for (i = 0; i < ARP_TABLE_SIZE; ++i) { + arp_table[i].ctime++; + if (((arp_table[i].state == ETHARP_STATE_STABLE) && + (arp_table[i].ctime >= ARP_MAXAGE)) || + ((arp_table[i].state == ETHARP_STATE_PENDING) && + (arp_table[i].ctime >= ARP_MAXPENDING))) { + /* pending or stable entry has become old! */ + LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: expired %s entry %"U16_F".\n", + arp_table[i].state == ETHARP_STATE_STABLE ? "stable" : "pending", (u16_t)i)); + /* clean up entries that have just been expired */ + /* remove from SNMP ARP index tree */ + snmp_delete_arpidx_tree(arp_table[i].netif, &arp_table[i].ipaddr); +#if ARP_QUEUEING + /* and empty packet queue */ + if (arp_table[i].q != NULL) { + /* remove all queued packets */ + LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: freeing entry %"U16_F", packet queue %p.\n", (u16_t)i, (void *)(arp_table[i].q))); + free_etharp_q(arp_table[i].q); + arp_table[i].q = NULL; + } +#endif + /* recycle entry for re-use */ + arp_table[i].state = ETHARP_STATE_EMPTY; + } +#if ARP_QUEUEING + /* still pending entry? (not expired) */ + if (arp_table[i].state == ETHARP_STATE_PENDING) { + /* resend an ARP query here? */ + } +#endif + } +} + +/** + * Search the ARP table for a matching or new entry. + * + * If an IP address is given, return a pending or stable ARP entry that matches + * the address. If no match is found, create a new entry with this address set, + * but in state ETHARP_EMPTY. The caller must check and possibly change the + * state of the returned entry. + * + * If ipaddr is NULL, return a initialized new entry in state ETHARP_EMPTY. + * + * In all cases, attempt to create new entries from an empty entry. If no + * empty entries are available and ETHARP_TRY_HARD flag is set, recycle + * old entries. Heuristic choose the least important entry for recycling. + * + * @param ipaddr IP address to find in ARP cache, or to add if not found. + * @param flags + * - ETHARP_TRY_HARD: Try hard to create a entry by allowing recycling of + * active (stable or pending) entries. + * + * @return The ARP entry index that matched or is created, ERR_MEM if no + * entry is found or could be recycled. + */ +static s8_t +#if LWIP_NETIF_HWADDRHINT +find_entry(struct ip_addr *ipaddr, u8_t flags, struct netif *netif) +#else /* LWIP_NETIF_HWADDRHINT */ +find_entry(struct ip_addr *ipaddr, u8_t flags) +#endif /* LWIP_NETIF_HWADDRHINT */ +{ + s8_t old_pending = ARP_TABLE_SIZE, old_stable = ARP_TABLE_SIZE; + s8_t empty = ARP_TABLE_SIZE; + u8_t i = 0, age_pending = 0, age_stable = 0; +#if ARP_QUEUEING + /* oldest entry with packets on queue */ + s8_t old_queue = ARP_TABLE_SIZE; + /* its age */ + u8_t age_queue = 0; +#endif + + /* First, test if the last call to this function asked for the + * same address. If so, we're really fast! */ + if (ipaddr) { + /* ipaddr to search for was given */ +#if LWIP_NETIF_HWADDRHINT + if ((netif != NULL) && (netif->addr_hint != NULL)) { + /* per-pcb cached entry was given */ + u8_t per_pcb_cache = *(netif->addr_hint); + if ((per_pcb_cache < ARP_TABLE_SIZE) && arp_table[per_pcb_cache].state == ETHARP_STATE_STABLE) { + /* the per-pcb-cached entry is stable */ + if (ip_addr_cmp(ipaddr, &arp_table[per_pcb_cache].ipaddr)) { + /* per-pcb cached entry was the right one! */ + ETHARP_STATS_INC(etharp.cachehit); + return per_pcb_cache; + } + } + } +#else /* #if LWIP_NETIF_HWADDRHINT */ + if (arp_table[etharp_cached_entry].state == ETHARP_STATE_STABLE) { + /* the cached entry is stable */ + if (ip_addr_cmp(ipaddr, &arp_table[etharp_cached_entry].ipaddr)) { + /* cached entry was the right one! */ + ETHARP_STATS_INC(etharp.cachehit); + return etharp_cached_entry; + } + } +#endif /* #if LWIP_NETIF_HWADDRHINT */ + } + + /** + * a) do a search through the cache, remember candidates + * b) select candidate entry + * c) create new entry + */ + + /* a) in a single search sweep, do all of this + * 1) remember the first empty entry (if any) + * 2) remember the oldest stable entry (if any) + * 3) remember the oldest pending entry without queued packets (if any) + * 4) remember the oldest pending entry with queued packets (if any) + * 5) search for a matching IP entry, either pending or stable + * until 5 matches, or all entries are searched for. + */ + + for (i = 0; i < ARP_TABLE_SIZE; ++i) { + /* no empty entry found yet and now we do find one? */ + if ((empty == ARP_TABLE_SIZE) && (arp_table[i].state == ETHARP_STATE_EMPTY)) { + LWIP_DEBUGF(ETHARP_DEBUG, ("find_entry: found empty entry %"U16_F"\n", (u16_t)i)); + /* remember first empty entry */ + empty = i; + } + /* pending entry? */ + else if (arp_table[i].state == ETHARP_STATE_PENDING) { + /* if given, does IP address match IP address in ARP entry? */ + if (ipaddr && ip_addr_cmp(ipaddr, &arp_table[i].ipaddr)) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: found matching pending entry %"U16_F"\n", (u16_t)i)); + /* found exact IP address match, simply bail out */ +#if LWIP_NETIF_HWADDRHINT + NETIF_SET_HINT(netif, i); +#else /* #if LWIP_NETIF_HWADDRHINT */ + etharp_cached_entry = i; +#endif /* #if LWIP_NETIF_HWADDRHINT */ + return i; +#if ARP_QUEUEING + /* pending with queued packets? */ + } else if (arp_table[i].q != NULL) { + if (arp_table[i].ctime >= age_queue) { + old_queue = i; + age_queue = arp_table[i].ctime; + } +#endif + /* pending without queued packets? */ + } else { + if (arp_table[i].ctime >= age_pending) { + old_pending = i; + age_pending = arp_table[i].ctime; + } + } + } + /* stable entry? */ + else if (arp_table[i].state == ETHARP_STATE_STABLE) { + /* if given, does IP address match IP address in ARP entry? */ + if (ipaddr && ip_addr_cmp(ipaddr, &arp_table[i].ipaddr)) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: found matching stable entry %"U16_F"\n", (u16_t)i)); + /* found exact IP address match, simply bail out */ +#if LWIP_NETIF_HWADDRHINT + NETIF_SET_HINT(netif, i); +#else /* #if LWIP_NETIF_HWADDRHINT */ + etharp_cached_entry = i; +#endif /* #if LWIP_NETIF_HWADDRHINT */ + return i; + /* remember entry with oldest stable entry in oldest, its age in maxtime */ + } else if (arp_table[i].ctime >= age_stable) { + old_stable = i; + age_stable = arp_table[i].ctime; + } + } + } + /* { we have no match } => try to create a new entry */ + + /* no empty entry found and not allowed to recycle? */ + if (((empty == ARP_TABLE_SIZE) && ((flags & ETHARP_TRY_HARD) == 0)) + /* or don't create new entry, only search? */ + || ((flags & ETHARP_FIND_ONLY) != 0)) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: no empty entry found and not allowed to recycle\n")); + return (s8_t)ERR_MEM; + } + + /* b) choose the least destructive entry to recycle: + * 1) empty entry + * 2) oldest stable entry + * 3) oldest pending entry without queued packets + * 4) oldest pending entry with queued packets + * + * { ETHARP_TRY_HARD is set at this point } + */ + + /* 1) empty entry available? */ + if (empty < ARP_TABLE_SIZE) { + i = empty; + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: selecting empty entry %"U16_F"\n", (u16_t)i)); + } + /* 2) found recyclable stable entry? */ + else if (old_stable < ARP_TABLE_SIZE) { + /* recycle oldest stable*/ + i = old_stable; + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: selecting oldest stable entry %"U16_F"\n", (u16_t)i)); +#if ARP_QUEUEING + /* no queued packets should exist on stable entries */ + LWIP_ASSERT("arp_table[i].q == NULL", arp_table[i].q == NULL); +#endif + /* 3) found recyclable pending entry without queued packets? */ + } else if (old_pending < ARP_TABLE_SIZE) { + /* recycle oldest pending */ + i = old_pending; + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: selecting oldest pending entry %"U16_F" (without queue)\n", (u16_t)i)); +#if ARP_QUEUEING + /* 4) found recyclable pending entry with queued packets? */ + } else if (old_queue < ARP_TABLE_SIZE) { + /* recycle oldest pending */ + i = old_queue; + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("find_entry: selecting oldest pending entry %"U16_F", freeing packet queue %p\n", (u16_t)i, (void *)(arp_table[i].q))); + free_etharp_q(arp_table[i].q); + arp_table[i].q = NULL; +#endif + /* no empty or recyclable entries found */ + } else { + return (s8_t)ERR_MEM; + } + + /* { empty or recyclable entry found } */ + LWIP_ASSERT("i < ARP_TABLE_SIZE", i < ARP_TABLE_SIZE); + + if (arp_table[i].state != ETHARP_STATE_EMPTY) + { + snmp_delete_arpidx_tree(arp_table[i].netif, &arp_table[i].ipaddr); + } + /* recycle entry (no-op for an already empty entry) */ + arp_table[i].state = ETHARP_STATE_EMPTY; + + /* IP address given? */ + if (ipaddr != NULL) { + /* set IP address */ + ip_addr_set(&arp_table[i].ipaddr, ipaddr); + } + arp_table[i].ctime = 0; +#if LWIP_NETIF_HWADDRHINT + NETIF_SET_HINT(netif, i); +#else /* #if LWIP_NETIF_HWADDRHINT */ + etharp_cached_entry = i; +#endif /* #if LWIP_NETIF_HWADDRHINT */ + return (err_t)i; +} + +/** + * Send an IP packet on the network using netif->linkoutput + * The ethernet header is filled in before sending. + * + * @params netif the lwIP network interface on which to send the packet + * @params p the packet to send, p->payload pointing to the (uninitialized) ethernet header + * @params src the source MAC address to be copied into the ethernet header + * @params dst the destination MAC address to be copied into the ethernet header + * @return ERR_OK if the packet was sent, any other err_t on failure + */ +static err_t +etharp_send_ip(struct netif *netif, struct pbuf *p, struct eth_addr *src, struct eth_addr *dst) +{ + struct eth_hdr *ethhdr = p->payload; + u8_t k; + + LWIP_ASSERT("netif->hwaddr_len must be the same as ETHARP_HWADDR_LEN for etharp!", + (netif->hwaddr_len == ETHARP_HWADDR_LEN)); + k = ETHARP_HWADDR_LEN; + while(k > 0) { + k--; + ethhdr->dest.addr[k] = dst->addr[k]; + ethhdr->src.addr[k] = src->addr[k]; + } + ethhdr->type = htons(ETHTYPE_IP); + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_send_ip: sending packet %p\n", (void *)p)); + /* send the packet */ + return netif->linkoutput(netif, p); +} + +/** + * Update (or insert) a IP/MAC address pair in the ARP cache. + * + * If a pending entry is resolved, any queued packets will be sent + * at this point. + * + * @param ipaddr IP address of the inserted ARP entry. + * @param ethaddr Ethernet address of the inserted ARP entry. + * @param flags Defines behaviour: + * - ETHARP_TRY_HARD Allows ARP to insert this as a new item. If not specified, + * only existing ARP entries will be updated. + * + * @return + * - ERR_OK Succesfully updated ARP cache. + * - ERR_MEM If we could not add a new ARP entry when ETHARP_TRY_HARD was set. + * - ERR_ARG Non-unicast address given, those will not appear in ARP cache. + * + * @see pbuf_free() + */ +static err_t +update_arp_entry(struct netif *netif, struct ip_addr *ipaddr, struct eth_addr *ethaddr, u8_t flags) +{ + s8_t i; + u8_t k; + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("update_arp_entry()\n")); + LWIP_ASSERT("netif->hwaddr_len == ETHARP_HWADDR_LEN", netif->hwaddr_len == ETHARP_HWADDR_LEN); + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("update_arp_entry: %"U16_F".%"U16_F".%"U16_F".%"U16_F" - %02"X16_F":%02"X16_F":%02"X16_F":%02"X16_F":%02"X16_F":%02"X16_F"\n", + ip4_addr1(ipaddr), ip4_addr2(ipaddr), ip4_addr3(ipaddr), ip4_addr4(ipaddr), + ethaddr->addr[0], ethaddr->addr[1], ethaddr->addr[2], + ethaddr->addr[3], ethaddr->addr[4], ethaddr->addr[5])); + /* non-unicast address? */ + if (ip_addr_isany(ipaddr) || + ip_addr_isbroadcast(ipaddr, netif) || + ip_addr_ismulticast(ipaddr)) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("update_arp_entry: will not add non-unicast IP address to ARP cache\n")); + return ERR_ARG; + } + /* find or create ARP entry */ +#if LWIP_NETIF_HWADDRHINT + i = find_entry(ipaddr, flags, netif); +#else /* LWIP_NETIF_HWADDRHINT */ + i = find_entry(ipaddr, flags); +#endif /* LWIP_NETIF_HWADDRHINT */ + /* bail out if no entry could be found */ + if (i < 0) + return (err_t)i; + + /* mark it stable */ + arp_table[i].state = ETHARP_STATE_STABLE; + /* record network interface */ + arp_table[i].netif = netif; + + /* insert in SNMP ARP index tree */ + snmp_insert_arpidx_tree(netif, &arp_table[i].ipaddr); + + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("update_arp_entry: updating stable entry %"S16_F"\n", (s16_t)i)); + /* update address */ + k = ETHARP_HWADDR_LEN; + while (k > 0) { + k--; + arp_table[i].ethaddr.addr[k] = ethaddr->addr[k]; + } + /* reset time stamp */ + arp_table[i].ctime = 0; +#if ARP_QUEUEING + /* this is where we will send out queued packets! */ + while (arp_table[i].q != NULL) { + struct pbuf *p; + /* remember remainder of queue */ + struct etharp_q_entry *q = arp_table[i].q; + /* pop first item off the queue */ + arp_table[i].q = q->next; + /* get the packet pointer */ + p = q->p; + /* now queue entry can be freed */ + memp_free(MEMP_ARP_QUEUE, q); + /* send the queued IP packet */ + etharp_send_ip(netif, p, (struct eth_addr*)(netif->hwaddr), ethaddr); + /* free the queued IP packet */ + pbuf_free(p); + } +#endif + return ERR_OK; +} + +/** + * Finds (stable) ethernet/IP address pair from ARP table + * using interface and IP address index. + * @note the addresses in the ARP table are in network order! + * + * @param netif points to interface index + * @param ipaddr points to the (network order) IP address index + * @param eth_ret points to return pointer + * @param ip_ret points to return pointer + * @return table index if found, -1 otherwise + */ +s8_t +etharp_find_addr(struct netif *netif, struct ip_addr *ipaddr, + struct eth_addr **eth_ret, struct ip_addr **ip_ret) +{ + s8_t i; + + LWIP_UNUSED_ARG(netif); + +#if LWIP_NETIF_HWADDRHINT + i = find_entry(ipaddr, ETHARP_FIND_ONLY, NULL); +#else /* LWIP_NETIF_HWADDRHINT */ + i = find_entry(ipaddr, ETHARP_FIND_ONLY); +#endif /* LWIP_NETIF_HWADDRHINT */ + if((i >= 0) && arp_table[i].state == ETHARP_STATE_STABLE) { + *eth_ret = &arp_table[i].ethaddr; + *ip_ret = &arp_table[i].ipaddr; + return i; + } + return -1; +} + +/** + * Updates the ARP table using the given IP packet. + * + * Uses the incoming IP packet's source address to update the + * ARP cache for the local network. The function does not alter + * or free the packet. This function must be called before the + * packet p is passed to the IP layer. + * + * @param netif The lwIP network interface on which the IP packet pbuf arrived. + * @param p The IP packet that arrived on netif. + * + * @return NULL + * + * @see pbuf_free() + */ +void +etharp_ip_input(struct netif *netif, struct pbuf *p) +{ + struct eth_hdr *ethhdr; + struct ip_hdr *iphdr; + LWIP_ERROR("netif != NULL", (netif != NULL), return;); + /* Only insert an entry if the source IP address of the + incoming IP packet comes from a host on the local network. */ + ethhdr = p->payload; + iphdr = (struct ip_hdr *)((u8_t*)ethhdr + SIZEOF_ETH_HDR); +#if ETHARP_SUPPORT_VLAN + if (ethhdr->type == ETHTYPE_VLAN) { + iphdr = (struct ip_hdr *)((u8_t*)ethhdr + SIZEOF_ETH_HDR + SIZEOF_VLAN_HDR); + } +#endif /* ETHARP_SUPPORT_VLAN */ + + /* source is not on the local network? */ + if (!ip_addr_netcmp(&(iphdr->src), &(netif->ip_addr), &(netif->netmask))) { + /* do nothing */ + return; + } + + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_ip_input: updating ETHARP table.\n")); + /* update ARP table */ + /* @todo We could use ETHARP_TRY_HARD if we think we are going to talk + * back soon (for example, if the destination IP address is ours. */ + update_arp_entry(netif, &(iphdr->src), &(ethhdr->src), 0); +} + + +/** + * Responds to ARP requests to us. Upon ARP replies to us, add entry to cache + * send out queued IP packets. Updates cache with snooped address pairs. + * + * Should be called for incoming ARP packets. The pbuf in the argument + * is freed by this function. + * + * @param netif The lwIP network interface on which the ARP packet pbuf arrived. + * @param ethaddr Ethernet address of netif. + * @param p The ARP packet that arrived on netif. Is freed by this function. + * + * @return NULL + * + * @see pbuf_free() + */ +void +etharp_arp_input(struct netif *netif, struct eth_addr *ethaddr, struct pbuf *p) +{ + struct etharp_hdr *hdr; + struct eth_hdr *ethhdr; + /* these are aligned properly, whereas the ARP header fields might not be */ + struct ip_addr sipaddr, dipaddr; + u8_t i; + u8_t for_us; +#if LWIP_AUTOIP + const u8_t * ethdst_hwaddr; +#endif /* LWIP_AUTOIP */ + + LWIP_ERROR("netif != NULL", (netif != NULL), return;); + + /* drop short ARP packets: we have to check for p->len instead of p->tot_len here + since a struct etharp_hdr is pointed to p->payload, so it musn't be chained! */ + if (p->len < SIZEOF_ETHARP_PACKET) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, + ("etharp_arp_input: packet dropped, too short (%"S16_F"/%"S16_F")\n", p->tot_len, + (s16_t)SIZEOF_ETHARP_PACKET)); + ETHARP_STATS_INC(etharp.lenerr); + ETHARP_STATS_INC(etharp.drop); + pbuf_free(p); + return; + } + + ethhdr = p->payload; + hdr = (struct etharp_hdr *)((u8_t*)ethhdr + SIZEOF_ETH_HDR); +#if ETHARP_SUPPORT_VLAN + if (ethhdr->type == ETHTYPE_VLAN) { + hdr = (struct etharp_hdr *)(((u8_t*)ethhdr) + SIZEOF_ETH_HDR + SIZEOF_VLAN_HDR); + } +#endif /* ETHARP_SUPPORT_VLAN */ + + /* RFC 826 "Packet Reception": */ + if ((hdr->hwtype != htons(HWTYPE_ETHERNET)) || + (hdr->_hwlen_protolen != htons((ETHARP_HWADDR_LEN << 8) | sizeof(struct ip_addr))) || + (hdr->proto != htons(ETHTYPE_IP)) || + (ethhdr->type != htons(ETHTYPE_ARP))) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_WARNING, + ("etharp_arp_input: packet dropped, wrong hw type, hwlen, proto, protolen or ethernet type (%"U16_F"/%"U16_F"/%"U16_F"/%"U16_F"/%"U16_F")\n", + hdr->hwtype, ARPH_HWLEN(hdr), hdr->proto, ARPH_PROTOLEN(hdr), ethhdr->type)); + ETHARP_STATS_INC(etharp.proterr); + ETHARP_STATS_INC(etharp.drop); + pbuf_free(p); + return; + } + ETHARP_STATS_INC(etharp.recv); + +#if LWIP_AUTOIP + /* We have to check if a host already has configured our random + * created link local address and continously check if there is + * a host with this IP-address so we can detect collisions */ + autoip_arp_reply(netif, hdr); +#endif /* LWIP_AUTOIP */ + + /* Copy struct ip_addr2 to aligned ip_addr, to support compilers without + * structure packing (not using structure copy which breaks strict-aliasing rules). */ + SMEMCPY(&sipaddr, &hdr->sipaddr, sizeof(sipaddr)); + SMEMCPY(&dipaddr, &hdr->dipaddr, sizeof(dipaddr)); + + /* this interface is not configured? */ + if (netif->ip_addr.addr == 0) { + for_us = 0; + } else { + /* ARP packet directed to us? */ + for_us = ip_addr_cmp(&dipaddr, &(netif->ip_addr)); + } + + /* ARP message directed to us? */ + if (for_us) { + /* add IP address in ARP cache; assume requester wants to talk to us. + * can result in directly sending the queued packets for this host. */ + update_arp_entry(netif, &sipaddr, &(hdr->shwaddr), ETHARP_TRY_HARD); + /* ARP message not directed to us? */ + } else { + /* update the source IP address in the cache, if present */ + update_arp_entry(netif, &sipaddr, &(hdr->shwaddr), 0); + } + + /* now act on the message itself */ + switch (htons(hdr->opcode)) { + /* ARP request? */ + case ARP_REQUEST: + /* ARP request. If it asked for our address, we send out a + * reply. In any case, we time-stamp any existing ARP entry, + * and possiby send out an IP packet that was queued on it. */ + + LWIP_DEBUGF (ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_arp_input: incoming ARP request\n")); + /* ARP request for our address? */ + if (for_us) { + + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_arp_input: replying to ARP request for our IP address\n")); + /* Re-use pbuf to send ARP reply. + Since we are re-using an existing pbuf, we can't call etharp_raw since + that would allocate a new pbuf. */ + hdr->opcode = htons(ARP_REPLY); + + hdr->dipaddr = hdr->sipaddr; + SMEMCPY(&hdr->sipaddr, &netif->ip_addr, sizeof(hdr->sipaddr)); + + LWIP_ASSERT("netif->hwaddr_len must be the same as ETHARP_HWADDR_LEN for etharp!", + (netif->hwaddr_len == ETHARP_HWADDR_LEN)); + i = ETHARP_HWADDR_LEN; +#if LWIP_AUTOIP + /* If we are using Link-Local, ARP packets must be broadcast on the + * link layer. (See RFC3927 Section 2.5) */ + ethdst_hwaddr = ((netif->autoip != NULL) && (netif->autoip->state != AUTOIP_STATE_OFF)) ? (u8_t*)(ethbroadcast.addr) : hdr->shwaddr.addr; +#endif /* LWIP_AUTOIP */ + + while(i > 0) { + i--; + hdr->dhwaddr.addr[i] = hdr->shwaddr.addr[i]; +#if LWIP_AUTOIP + ethhdr->dest.addr[i] = ethdst_hwaddr[i]; +#else /* LWIP_AUTOIP */ + ethhdr->dest.addr[i] = hdr->shwaddr.addr[i]; +#endif /* LWIP_AUTOIP */ + hdr->shwaddr.addr[i] = ethaddr->addr[i]; + ethhdr->src.addr[i] = ethaddr->addr[i]; + } + + /* hwtype, hwaddr_len, proto, protolen and the type in the ethernet header + are already correct, we tested that before */ + + /* return ARP reply */ + netif->linkoutput(netif, p); + /* we are not configured? */ + } else if (netif->ip_addr.addr == 0) { + /* { for_us == 0 and netif->ip_addr.addr == 0 } */ + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_arp_input: we are unconfigured, ARP request ignored.\n")); + /* request was not directed to us */ + } else { + /* { for_us == 0 and netif->ip_addr.addr != 0 } */ + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_arp_input: ARP request was not for us.\n")); + } + break; + case ARP_REPLY: + /* ARP reply. We already updated the ARP cache earlier. */ + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_arp_input: incoming ARP reply\n")); +#if (LWIP_DHCP && DHCP_DOES_ARP_CHECK) + /* DHCP wants to know about ARP replies from any host with an + * IP address also offered to us by the DHCP server. We do not + * want to take a duplicate IP address on a single network. + * @todo How should we handle redundant (fail-over) interfaces? */ + dhcp_arp_reply(netif, &sipaddr); +#endif + break; + default: + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_arp_input: ARP unknown opcode type %"S16_F"\n", htons(hdr->opcode))); + ETHARP_STATS_INC(etharp.err); + break; + } + /* free ARP packet */ + pbuf_free(p); +} + +/** + * Resolve and fill-in Ethernet address header for outgoing IP packet. + * + * For IP multicast and broadcast, corresponding Ethernet addresses + * are selected and the packet is transmitted on the link. + * + * For unicast addresses, the packet is submitted to etharp_query(). In + * case the IP address is outside the local network, the IP address of + * the gateway is used. + * + * @param netif The lwIP network interface which the IP packet will be sent on. + * @param q The pbuf(s) containing the IP packet to be sent. + * @param ipaddr The IP address of the packet destination. + * + * @return + * - ERR_RTE No route to destination (no gateway to external networks), + * or the return type of either etharp_query() or etharp_send_ip(). + */ +err_t +etharp_output(struct netif *netif, struct pbuf *q, struct ip_addr *ipaddr) +{ + struct eth_addr *dest, mcastaddr; + + /* make room for Ethernet header - should not fail */ + if (pbuf_header(q, sizeof(struct eth_hdr)) != 0) { + /* bail out */ + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("etharp_output: could not allocate room for header.\n")); + LINK_STATS_INC(link.lenerr); + return ERR_BUF; + } + + /* assume unresolved Ethernet address */ + dest = NULL; + /* Determine on destination hardware address. Broadcasts and multicasts + * are special, other IP addresses are looked up in the ARP table. */ + + /* broadcast destination IP address? */ + if (ip_addr_isbroadcast(ipaddr, netif)) { + /* broadcast on Ethernet also */ + dest = (struct eth_addr *)&ethbroadcast; + /* multicast destination IP address? */ + } else if (ip_addr_ismulticast(ipaddr)) { + /* Hash IP multicast address to MAC address.*/ + mcastaddr.addr[0] = 0x01; + mcastaddr.addr[1] = 0x00; + mcastaddr.addr[2] = 0x5e; + mcastaddr.addr[3] = ip4_addr2(ipaddr) & 0x7f; + mcastaddr.addr[4] = ip4_addr3(ipaddr); + mcastaddr.addr[5] = ip4_addr4(ipaddr); + /* destination Ethernet address is multicast */ + dest = &mcastaddr; + /* unicast destination IP address? */ + } else { + /* outside local network? */ + if (!ip_addr_netcmp(ipaddr, &(netif->ip_addr), &(netif->netmask))) { + /* interface has default gateway? */ + if (netif->gw.addr != 0) { + /* send to hardware address of default gateway IP address */ + ipaddr = &(netif->gw); + /* no default gateway available */ + } else { + /* no route to destination error (default gateway missing) */ + return ERR_RTE; + } + } + /* queue on destination Ethernet address belonging to ipaddr */ + return etharp_query(netif, ipaddr, q); + } + + /* continuation for multicast/broadcast destinations */ + /* obtain source Ethernet address of the given interface */ + /* send packet directly on the link */ + return etharp_send_ip(netif, q, (struct eth_addr*)(netif->hwaddr), dest); +} + +/** + * Send an ARP request for the given IP address and/or queue a packet. + * + * If the IP address was not yet in the cache, a pending ARP cache entry + * is added and an ARP request is sent for the given address. The packet + * is queued on this entry. + * + * If the IP address was already pending in the cache, a new ARP request + * is sent for the given address. The packet is queued on this entry. + * + * If the IP address was already stable in the cache, and a packet is + * given, it is directly sent and no ARP request is sent out. + * + * If the IP address was already stable in the cache, and no packet is + * given, an ARP request is sent out. + * + * @param netif The lwIP network interface on which ipaddr + * must be queried for. + * @param ipaddr The IP address to be resolved. + * @param q If non-NULL, a pbuf that must be delivered to the IP address. + * q is not freed by this function. + * + * @note q must only be ONE packet, not a packet queue! + * + * @return + * - ERR_BUF Could not make room for Ethernet header. + * - ERR_MEM Hardware address unknown, and no more ARP entries available + * to query for address or queue the packet. + * - ERR_MEM Could not queue packet due to memory shortage. + * - ERR_RTE No route to destination (no gateway to external networks). + * - ERR_ARG Non-unicast address given, those will not appear in ARP cache. + * + */ +err_t +etharp_query(struct netif *netif, struct ip_addr *ipaddr, struct pbuf *q) +{ + struct eth_addr * srcaddr = (struct eth_addr *)netif->hwaddr; + err_t result = ERR_MEM; + s8_t i; /* ARP entry index */ + + /* non-unicast address? */ + if (ip_addr_isbroadcast(ipaddr, netif) || + ip_addr_ismulticast(ipaddr) || + ip_addr_isany(ipaddr)) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: will not add non-unicast IP address to ARP cache\n")); + return ERR_ARG; + } + + /* find entry in ARP cache, ask to create entry if queueing packet */ +#if LWIP_NETIF_HWADDRHINT + i = find_entry(ipaddr, ETHARP_TRY_HARD, netif); +#else /* LWIP_NETIF_HWADDRHINT */ + i = find_entry(ipaddr, ETHARP_TRY_HARD); +#endif /* LWIP_NETIF_HWADDRHINT */ + + /* could not find or create entry? */ + if (i < 0) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: could not create ARP entry\n")); + if (q) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: packet dropped\n")); + ETHARP_STATS_INC(etharp.memerr); + } + return (err_t)i; + } + + /* mark a fresh entry as pending (we just sent a request) */ + if (arp_table[i].state == ETHARP_STATE_EMPTY) { + arp_table[i].state = ETHARP_STATE_PENDING; + } + + /* { i is either a STABLE or (new or existing) PENDING entry } */ + LWIP_ASSERT("arp_table[i].state == PENDING or STABLE", + ((arp_table[i].state == ETHARP_STATE_PENDING) || + (arp_table[i].state == ETHARP_STATE_STABLE))); + + /* do we have a pending entry? or an implicit query request? */ + if ((arp_table[i].state == ETHARP_STATE_PENDING) || (q == NULL)) { + /* try to resolve it; send out ARP request */ + result = etharp_request(netif, ipaddr); + if (result != ERR_OK) { + /* ARP request couldn't be sent */ + /* We don't re-send arp request in etharp_tmr, but we still queue packets, + since this failure could be temporary, and the next packet calling + etharp_query again could lead to sending the queued packets. */ + } + } + + /* packet given? */ + if (q != NULL) { + /* stable entry? */ + if (arp_table[i].state == ETHARP_STATE_STABLE) { + /* we have a valid IP->Ethernet address mapping */ + /* send the packet */ + result = etharp_send_ip(netif, q, srcaddr, &(arp_table[i].ethaddr)); + /* pending entry? (either just created or already pending */ + } else if (arp_table[i].state == ETHARP_STATE_PENDING) { +#if ARP_QUEUEING /* queue the given q packet */ + struct pbuf *p; + int copy_needed = 0; + /* IF q includes a PBUF_REF, PBUF_POOL or PBUF_RAM, we have no choice but + * to copy the whole queue into a new PBUF_RAM (see bug #11400) + * PBUF_ROMs can be left as they are, since ROM must not get changed. */ + p = q; + while (p) { + LWIP_ASSERT("no packet queues allowed!", (p->len != p->tot_len) || (p->next == 0)); + if(p->type != PBUF_ROM) { + copy_needed = 1; + break; + } + p = p->next; + } + if(copy_needed) { + /* copy the whole packet into new pbufs */ + p = pbuf_alloc(PBUF_RAW, p->tot_len, PBUF_RAM); + if(p != NULL) { + if (pbuf_copy(p, q) != ERR_OK) { + pbuf_free(p); + p = NULL; + } + } + } else { + /* referencing the old pbuf is enough */ + p = q; + pbuf_ref(p); + } + /* packet could be taken over? */ + if (p != NULL) { + /* queue packet ... */ + struct etharp_q_entry *new_entry; + /* allocate a new arp queue entry */ + new_entry = memp_malloc(MEMP_ARP_QUEUE); + if (new_entry != NULL) { + new_entry->next = 0; + new_entry->p = p; + if(arp_table[i].q != NULL) { + /* queue was already existent, append the new entry to the end */ + struct etharp_q_entry *r; + r = arp_table[i].q; + while (r->next != NULL) { + r = r->next; + } + r->next = new_entry; + } else { + /* queue did not exist, first item in queue */ + arp_table[i].q = new_entry; + } + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: queued packet %p on ARP entry %"S16_F"\n", (void *)q, (s16_t)i)); + result = ERR_OK; + } else { + /* the pool MEMP_ARP_QUEUE is empty */ + pbuf_free(p); + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: could not queue a copy of PBUF_REF packet %p (out of memory)\n", (void *)q)); + /* { result == ERR_MEM } through initialization */ + } + } else { + ETHARP_STATS_INC(etharp.memerr); + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: could not queue a copy of PBUF_REF packet %p (out of memory)\n", (void *)q)); + /* { result == ERR_MEM } through initialization */ + } +#else /* ARP_QUEUEING == 0 */ + /* q && state == PENDING && ARP_QUEUEING == 0 => result = ERR_MEM */ + /* { result == ERR_MEM } through initialization */ + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_query: Ethernet destination address unknown, queueing disabled, packet %p dropped\n", (void *)q)); +#endif + } + } + return result; +} + +/** + * Send a raw ARP packet (opcode and all addresses can be modified) + * + * @param netif the lwip network interface on which to send the ARP packet + * @param ethsrc_addr the source MAC address for the ethernet header + * @param ethdst_addr the destination MAC address for the ethernet header + * @param hwsrc_addr the source MAC address for the ARP protocol header + * @param ipsrc_addr the source IP address for the ARP protocol header + * @param hwdst_addr the destination MAC address for the ARP protocol header + * @param ipdst_addr the destination IP address for the ARP protocol header + * @param opcode the type of the ARP packet + * @return ERR_OK if the ARP packet has been sent + * ERR_MEM if the ARP packet couldn't be allocated + * any other err_t on failure + */ +#if !LWIP_AUTOIP +static +#endif /* LWIP_AUTOIP */ +err_t +etharp_raw(struct netif *netif, const struct eth_addr *ethsrc_addr, + const struct eth_addr *ethdst_addr, + const struct eth_addr *hwsrc_addr, const struct ip_addr *ipsrc_addr, + const struct eth_addr *hwdst_addr, const struct ip_addr *ipdst_addr, + const u16_t opcode) +{ + struct pbuf *p; + err_t result = ERR_OK; + u8_t k; /* ARP entry index */ + struct eth_hdr *ethhdr; + struct etharp_hdr *hdr; +#if LWIP_AUTOIP + const u8_t * ethdst_hwaddr; +#endif /* LWIP_AUTOIP */ + + /* allocate a pbuf for the outgoing ARP request packet */ + p = pbuf_alloc(PBUF_RAW, SIZEOF_ETHARP_PACKET, PBUF_RAM); + /* could allocate a pbuf for an ARP request? */ + if (p == NULL) { + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_LEVEL_SERIOUS, + ("etharp_raw: could not allocate pbuf for ARP request.\n")); + ETHARP_STATS_INC(etharp.memerr); + return ERR_MEM; + } + LWIP_ASSERT("check that first pbuf can hold struct etharp_hdr", + (p->len >= SIZEOF_ETHARP_PACKET)); + + ethhdr = p->payload; + hdr = (struct etharp_hdr *)((u8_t*)ethhdr + SIZEOF_ETH_HDR); + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_raw: sending raw ARP packet.\n")); + hdr->opcode = htons(opcode); + + LWIP_ASSERT("netif->hwaddr_len must be the same as ETHARP_HWADDR_LEN for etharp!", + (netif->hwaddr_len == ETHARP_HWADDR_LEN)); + k = ETHARP_HWADDR_LEN; +#if LWIP_AUTOIP + /* If we are using Link-Local, ARP packets must be broadcast on the + * link layer. (See RFC3927 Section 2.5) */ + ethdst_hwaddr = ((netif->autoip != NULL) && (netif->autoip->state != AUTOIP_STATE_OFF)) ? (u8_t*)(ethbroadcast.addr) : ethdst_addr->addr; +#endif /* LWIP_AUTOIP */ + /* Write MAC-Addresses (combined loop for both headers) */ + while(k > 0) { + k--; + /* Write the ARP MAC-Addresses */ + hdr->shwaddr.addr[k] = hwsrc_addr->addr[k]; + hdr->dhwaddr.addr[k] = hwdst_addr->addr[k]; + /* Write the Ethernet MAC-Addresses */ +#if LWIP_AUTOIP + ethhdr->dest.addr[k] = ethdst_hwaddr[k]; +#else /* LWIP_AUTOIP */ + ethhdr->dest.addr[k] = ethdst_addr->addr[k]; +#endif /* LWIP_AUTOIP */ + ethhdr->src.addr[k] = ethsrc_addr->addr[k]; + } + hdr->sipaddr = *(struct ip_addr2 *)ipsrc_addr; + hdr->dipaddr = *(struct ip_addr2 *)ipdst_addr; + + hdr->hwtype = htons(HWTYPE_ETHERNET); + hdr->proto = htons(ETHTYPE_IP); + /* set hwlen and protolen together */ + hdr->_hwlen_protolen = htons((ETHARP_HWADDR_LEN << 8) | sizeof(struct ip_addr)); + + ethhdr->type = htons(ETHTYPE_ARP); + /* send ARP query */ + result = netif->linkoutput(netif, p); + ETHARP_STATS_INC(etharp.xmit); + /* free ARP query packet */ + pbuf_free(p); + p = NULL; + /* could not allocate pbuf for ARP request */ + + return result; +} + +/** + * Send an ARP request packet asking for ipaddr. + * + * @param netif the lwip network interface on which to send the request + * @param ipaddr the IP address for which to ask + * @return ERR_OK if the request has been sent + * ERR_MEM if the ARP packet couldn't be allocated + * any other err_t on failure + */ +err_t +etharp_request(struct netif *netif, struct ip_addr *ipaddr) +{ + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_request: sending ARP request.\n")); + return etharp_raw(netif, (struct eth_addr *)netif->hwaddr, &ethbroadcast, + (struct eth_addr *)netif->hwaddr, &netif->ip_addr, &ethzero, + ipaddr, ARP_REQUEST); +} + +/** + * Process received ethernet frames. Using this function instead of directly + * calling ip_input and passing ARP frames through etharp in ethernetif_input, + * the ARP cache is protected from concurrent access. + * + * @param p the recevied packet, p->payload pointing to the ethernet header + * @param netif the network interface on which the packet was received + */ +err_t +ethernet_input(struct pbuf *p, struct netif *netif) +{ + struct eth_hdr* ethhdr; + u16_t type; + + /* points to packet payload, which starts with an Ethernet header */ + ethhdr = p->payload; + LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, + ("ethernet_input: dest:%02x:%02x:%02x:%02x:%02x:%02x, src:%02x:%02x:%02x:%02x:%02x:%02x, type:%2hx\n", + (unsigned)ethhdr->dest.addr[0], (unsigned)ethhdr->dest.addr[1], (unsigned)ethhdr->dest.addr[2], + (unsigned)ethhdr->dest.addr[3], (unsigned)ethhdr->dest.addr[4], (unsigned)ethhdr->dest.addr[5], + (unsigned)ethhdr->src.addr[0], (unsigned)ethhdr->src.addr[1], (unsigned)ethhdr->src.addr[2], + (unsigned)ethhdr->src.addr[3], (unsigned)ethhdr->src.addr[4], (unsigned)ethhdr->src.addr[5], + (unsigned)htons(ethhdr->type))); + + type = htons(ethhdr->type); +#if ETHARP_SUPPORT_VLAN + if (type == ETHTYPE_VLAN) { + struct eth_vlan_hdr *vlan = (struct eth_vlan_hdr*)(((char*)ethhdr) + SIZEOF_ETH_HDR); +#ifdef ETHARP_VLAN_CHECK /* if not, allow all VLANs */ + if (VLAN_ID(vlan) != ETHARP_VLAN_CHECK) { + /* silently ignore this packet: not for our VLAN */ + pbuf_free(p); + return ERR_OK; + } +#endif /* ETHARP_VLAN_CHECK */ + type = htons(vlan->tpid); + } +#endif /* ETHARP_SUPPORT_VLAN */ + + switch (type) { + /* IP packet? */ + case ETHTYPE_IP: +#if ETHARP_TRUST_IP_MAC + /* update ARP table */ + etharp_ip_input(netif, p); +#endif /* ETHARP_TRUST_IP_MAC */ + /* skip Ethernet header */ + if(pbuf_header(p, -(s16_t)SIZEOF_ETH_HDR)) { + LWIP_ASSERT("Can't move over header in packet", 0); + pbuf_free(p); + p = NULL; + } else { + /* pass to IP layer */ + ip_input(p, netif); + } + break; + + case ETHTYPE_ARP: + /* pass p to ARP module */ + etharp_arp_input(netif, (struct eth_addr*)(netif->hwaddr), p); + break; + +#if PPPOE_SUPPORT + case ETHTYPE_PPPOEDISC: /* PPP Over Ethernet Discovery Stage */ + pppoe_disc_input(netif, p); + break; + + case ETHTYPE_PPPOE: /* PPP Over Ethernet Session Stage */ + pppoe_data_input(netif, p); + break; +#endif /* PPPOE_SUPPORT */ + + default: + ETHARP_STATS_INC(etharp.proterr); + ETHARP_STATS_INC(etharp.drop); + pbuf_free(p); + p = NULL; + break; + } + + /* This means the pbuf is freed or consumed, + so the caller doesn't have to free it again */ + return ERR_OK; +} +#endif /* LWIP_ARP */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/loopif.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/loopif.c new file mode 100644 index 000000000..b7d663294 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/netif/loopif.c @@ -0,0 +1,68 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * Loop Interface + * + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#include "lwip/opt.h" + +#if LWIP_HAVE_LOOPIF + +#include "netif/loopif.h" +#include "lwip/snmp.h" + +/** + * Initialize a lwip network interface structure for a loopback interface + * + * @param netif the lwip network interface structure for this loopif + * @return ERR_OK if the loopif is initialized + * ERR_MEM if private data couldn't be allocated + */ +err_t +loopif_init(struct netif *netif) +{ + /* initialize the snmp variables and counters inside the struct netif + * ifSpeed: no assumption can be made! + */ + NETIF_INIT_SNMP(netif, snmp_ifType_softwareLoopback, 0); + + netif->name[0] = 'l'; + netif->name[1] = 'o'; + netif->output = netif_loop_output; + return ERR_OK; +} + +#endif /* LWIP_HAVE_LOOPIF */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/cc.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/cc.h new file mode 100644 index 000000000..fc9c07df3 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/cc.h @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2001-2003 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __ARCH_CC_H__ +#define __ARCH_CC_H__ + +/* Define platform endianness */ +#ifndef BYTE_ORDER +#define BYTE_ORDER BIG_ENDIAN +#endif /* BYTE_ORDER */ + +/* Define generic types used in lwIP */ +typedef unsigned char u8_t; +typedef signed char s8_t; +typedef unsigned short u16_t; +typedef signed short s16_t; +typedef unsigned long u32_t; +typedef signed long s32_t; + +typedef u32_t mem_ptr_t; + +/* Define (sn)printf formatters for these lwIP types */ +#define U16_F "u" +#define S16_F "d" +#define X16_F "x" +#define U32_F "u" +#define S32_F "d" +#define X32_F "x" + +/* Compiler hints for packing structures */ +#define PACK_STRUCT_FIELD(x) x +#define PACK_STRUCT_STRUCT __attribute__((packed)) +#define PACK_STRUCT_BEGIN +#define PACK_STRUCT_END + +/* Plaform specific diagnostic output */ +#ifdef CONFIG_OWL +# include <owl/core/owl_debug.h> +# define LWIP_PLATFORM_DIAG(x) owl_printf x +# define LWIP_PLATFORM_ASSERT(x) owl_assert(x) +#else +# include <printf-stdarg.h> +# define LWIP_PLATFORM_DIAG(x) do { printk x; } while(0) +# define LWIP_PLATFORM_ASSERT(x) do { \ + printk("Assertion \"%s\" failed at line " \ + "%d in %s\n", \ + x, __LINE__, __FILE__); while(1); \ + } while(0) +#endif + +#endif /* __ARCH_CC_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/perf.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/perf.h new file mode 100644 index 000000000..49917871e --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/arch/perf.h @@ -0,0 +1,7 @@ +#ifndef __PERF_H__ +#define __PERF_H__ + +#define PERF_START /* null definition */ +#define PERF_STOP(x) /* null definition */ + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/lwipopts.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/lwipopts.h new file mode 100644 index 000000000..ae4df230f --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/lwipopts.h @@ -0,0 +1,426 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * + * lwIP Options Configuration + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIPOPTS_H__ +#define __LWIPOPTS_H__ + +#include "wl_api.h" + +/* + ----------------------------------------------- + ---------- Platform specific locking ---------- + ----------------------------------------------- +*/ + +/** + * NO_SYS==1: Provides VERY minimal functionality. Otherwise, + * use lwIP facilities. + */ +#define NO_SYS 1 + + +/* + ------------------------------------ + ---------- Memory options ---------- + ------------------------------------ +*/ +/** + * MEM_ALIGNMENT: should be set to the alignment of the CPU + * 4 byte alignment -> #define MEM_ALIGNMENT 4 + * 2 byte alignment -> #define MEM_ALIGNMENT 2 + */ +#define MEM_ALIGNMENT 4 + +/** + * MEM_SIZE: the size of the heap memory. If the application will send + * a lot of data that needs to be copied, this should be set high. + */ +#define MEM_SIZE 16000 + + +/* + ------------------------------------------------ + ---------- Internal Memory Pool Sizes ---------- + ------------------------------------------------ +*/ +/** + * MEMP_NUM_PBUF: the number of memp struct pbufs (used for PBUF_ROM and PBUF_REF). + * If the application sends a lot of data out of ROM (or other static memory), + * this should be set high. + */ +#define MEMP_NUM_PBUF 30 + +/** + * MEMP_NUM_RAW_PCB: Number of raw connection PCBs + * (requires the LWIP_RAW option) + */ +#define MEMP_NUM_RAW_PCB 4 + +/** + * MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One + * per active UDP "connection". + * (requires the LWIP_UDP option) + */ +#define MEMP_NUM_UDP_PCB 4 + +/** + * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB 2 + +/** + * MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB_LISTEN 2 + +/** + * MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP segments. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_SEG 32 + +/** + * MEMP_NUM_ARP_QUEUE: the number of simulateously queued outgoing + * packets (pbufs) that are waiting for an ARP request (to resolve + * their destination address) to finish. + * (requires the ARP_QUEUEING option) + */ +#define MEMP_NUM_ARP_QUEUE 2 + +/** + * MEMP_NUM_SYS_TIMEOUT: the number of simulateously active timeouts. + * (requires NO_SYS==0) + */ +#define MEMP_NUM_SYS_TIMEOUT 0 + +/** + * MEMP_NUM_NETBUF: the number of struct netbufs. + * (only needed if you use the sequential API, like api_lib.c) + */ +#define MEMP_NUM_NETBUF 0 + +/** + * MEMP_NUM_NETCONN: the number of struct netconns. + * (only needed if you use the sequential API, like api_lib.c) + */ +#define MEMP_NUM_NETCONN 0 + +/** + * MEMP_NUM_TCPIP_MSG_API: the number of struct tcpip_msg, which are used + * for callback/timeout API communication. + * (only needed if you use tcpip.c) + */ +#define MEMP_NUM_TCPIP_MSG_API 0 + +/** + * MEMP_NUM_TCPIP_MSG_INPKT: the number of struct tcpip_msg, which are used + * for incoming packets. + * (only needed if you use tcpip.c) + */ +#define MEMP_NUM_TCPIP_MSG_INPKT 0 + +/** + * PBUF_POOL_SIZE: the number of buffers in the pbuf pool. + */ +#define PBUF_POOL_SIZE 32 + +/* + --------------------------------- + ---------- ARP options ---------- + --------------------------------- +*/ +/** + * LWIP_ARP==1: Enable ARP functionality. + */ +#define LWIP_ARP 1 + +/* + -------------------------------- + ---------- IP options ---------- + -------------------------------- +*/ +/** + * IP_FORWARD==1: Enables the ability to forward IP packets across network + * interfaces. If you are going to run lwIP on a device with only one network + * interface, define this to 0. + */ +#define IP_FORWARD 0 + +/** + * IP_OPTIONS: Defines the behavior for IP options. + * IP_OPTIONS==0_ALLOWED: All packets with IP options are dropped. + * IP_OPTIONS==1_ALLOWED: IP options are allowed (but not parsed). + */ +#define IP_OPTIONS_ALLOWED 1 + +/** + * IP_REASSEMBLY==1: Reassemble incoming fragmented IP packets. Note that + * this option does not affect outgoing packet sizes, which can be controlled + * via IP_FRAG. + */ +#define IP_REASSEMBLY 1 + +/** + * IP_FRAG==1: Fragment outgoing IP packets if their size exceeds MTU. Note + * that this option does not affect incoming packet sizes, which can be + * controlled via IP_REASSEMBLY. + */ +#define IP_FRAG 1 + +/** + * IP_REASS_MAXAGE: Maximum time (in multiples of IP_TMR_INTERVAL - so seconds, normally) + * a fragmented IP packet waits for all fragments to arrive. If not all fragments arrived + * in this time, the whole packet is discarded. + */ +#define IP_REASS_MAXAGE 3 + +/** + * IP_REASS_MAX_PBUFS: Total maximum amount of pbufs waiting to be reassembled. + * Since the received pbufs are enqueued, be sure to configure + * PBUF_POOL_SIZE > IP_REASS_MAX_PBUFS so that the stack is still able to receive + * packets even if the maximum amount of fragments is enqueued for reassembly! + */ +#define IP_REASS_MAX_PBUFS 10 + +/** + * IP_FRAG_USES_STATIC_BUF==1: Use a static MTU-sized buffer for IP + * fragmentation. Otherwise pbufs are allocated and reference the original + * packet data to be fragmented. + */ +#define IP_FRAG_USES_STATIC_BUF 0 + +/** + * IP_DEFAULT_TTL: Default value for Time-To-Live used by transport layers. + */ +#define IP_DEFAULT_TTL 255 + +/* + ---------------------------------- + ---------- ICMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_ICMP==1: Enable ICMP module inside the IP stack. + * Be careful, disable that make your product non-compliant to RFC1122 + */ +#define LWIP_ICMP 1 + +/** + * ICMP_TTL: Default value for Time-To-Live used by ICMP packets. + */ +#define ICMP_TTL (IP_DEFAULT_TTL) + +/* + --------------------------------- + ---------- RAW options ---------- + --------------------------------- +*/ +/** + * LWIP_RAW==1: Enable application layer to hook into the IP layer itself. + */ +#define LWIP_RAW 1 + +/* + ---------------------------------- + ---------- DHCP options ---------- + ---------------------------------- +*/ +/** + * LWIP_DHCP==1: Enable DHCP module. + */ +#define LWIP_DHCP 1 + +/* + ------------------------------------ + ---------- AUTOIP options ---------- + ------------------------------------ +*/ +/** + * LWIP_AUTOIP==1: Enable AUTOIP module. + */ +#define LWIP_AUTOIP 0 + +/* + ---------------------------------- + ---------- SNMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_SNMP==1: Turn on SNMP module. UDP must be available for SNMP + * transport. + */ +#define LWIP_SNMP 0 +#define SNMP_PRIVATE_MIB 0 + +/* + ---------------------------------- + ---------- IGMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_IGMP==1: Turn on IGMP module. + */ +#define LWIP_IGMP 1 + +/* + ---------------------------------- + ---------- DNS options ----------- + ---------------------------------- +*/ +/** + * LWIP_DNS==1: Turn on DNS module. UDP must be available for DNS + * transport. + */ +#define LWIP_DNS 1 + +/* + --------------------------------- + ---------- UDP options ---------- + --------------------------------- +*/ +/** + * LWIP_UDP==1: Turn on UDP. + */ +#define LWIP_UDP 1 + +/** + * LWIP_UDPLITE==1: Turn on UDP-Lite. (Requires LWIP_UDP) + */ +#define LWIP_UDPLITE 0 + +/** + * UDP_TTL: Default Time-To-Live value. + */ +#define UDP_TTL (IP_DEFAULT_TTL) + +/* + --------------------------------- + ---------- TCP options ---------- + --------------------------------- +*/ +/** + * LWIP_TCP==1: Turn on TCP. + */ +#define LWIP_TCP 1 + +/* + ---------------------------------- + ---------- Pbuf options ---------- + ---------------------------------- +*/ +/** + * PBUF_LINK_HLEN: the number of bytes that should be allocated for a + * link level header. The default is 14, the standard value for + * Ethernet. + */ +#define PBUF_LINK_HLEN (14 + ETH_PAD_SIZE) + +/* + ------------------------------------ + ---------- LOOPIF options ---------- + ------------------------------------ +*/ +/** + * LWIP_HAVE_LOOPIF==1: Support loop interface (127.0.0.1) and loopif.c + */ +#define LWIP_HAVE_LOOPIF 1 +#define LWIP_LOOPIF_MULTITHREADING 0 + +/* + ---------------------------------------------- + ---------- Sequential layer options ---------- + ---------------------------------------------- +*/ + +/** + * LWIP_NETCONN==1: Enable Netconn API (require to use api_lib.c) + */ +#define LWIP_NETCONN 0 + +/* + ------------------------------------ + ---------- Socket options ---------- + ------------------------------------ +*/ +/** + * LWIP_SOCKET==1: Enable Socket API (require to use sockets.c) + */ +#define LWIP_SOCKET 0 + +/* + ---------------------------------------- + ---------- Statistics options ---------- + ---------------------------------------- +*/ +/** + * LWIP_STATS==1: Enable statistics collection in lwip_stats. + */ +#define LWIP_STATS 1 +#define LINK_STATS 1 + +/* Misc */ +#define LWIP_NETIF_LINK_CALLBACK 1 +#define LWIP_NETIF_STATUS_CALLBACK 1 +#define LWIP_TIMEVAL_PRIVATE 0 + +#undef DHCP_DOES_ARP_CHECK + +#if 0 +#define LWIP_DEBUG 1 +//#define NETIF_DEBUG LWIP_DBG_ON +#define DHCP_DEBUG LWIP_DBG_ON +//#define ICMP_DEBUG LWIP_DBG_ON +//#define TCP_DEBUG LWIP_DBG_ON +//#define TCP_RTO_DEBUG LWIP_DBG_ON +//#define IP_DEBUG LWIP_DBG_ON +//#define TCP_CWND_DEBUG LWIP_DBG_ON +//#define ETHARP_DEBUG LWIP_DBG_ON +//#define PBUF_DEBUG LWIP_DBG_ON +#define TCP_INPUT_DEBUG LWIP_DBG_ON +#define TCP_OUTPUT_DEBUG LWIP_DBG_ON +#endif + +#define ETH_PAD_SIZE WL_HEADER_SIZE /* size of wifiengine header */ +#define MEM_LIBC_MALLOC 1 + +#define TCP_MSS 512 +#define TCP_SND_BUF 4096 +#endif /* __LWIPOPTS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/netif/wlif.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/netif/wlif.h new file mode 100644 index 000000000..6354e1c91 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include/netif/wlif.h @@ -0,0 +1,10 @@ +#ifndef __NETIF_NRWLANIF_H__ +#define __NETIF_NRWLANIF_H__ + +#include "lwip/netif.h" +#include "lwip/err.h" + +err_t wlif_init(struct netif *netif); +void wlif_poll(struct netif *netif); + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/netif/wlif.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/netif/wlif.c new file mode 100644 index 000000000..55d5b6abd --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/netif/wlif.c @@ -0,0 +1,386 @@ +#include "lwip/opt.h" +#include "lwip/def.h" +#include "lwip/mem.h" +#include "lwip/pbuf.h" +#include "lwip/stats.h" +#include "lwip/sys.h" +#include "netif/etharp.h" +#include "netif/wlif.h" +#include <wl_api.h> +#include <wlap_api.h> + +#define IFNAME0 'w' +#define IFNAME1 'l' + +/* the queue size will affect the tx performance when using power save. + * A small queue will quickly become filled up if we have to wake the device + * before the actual transmission can occur. When the queue is filled up, the + * packets will be discarded and retransmission will be handled by the upper + * layers. In case of TCP, the retransmission time might be quite long. + * + * If the packets can be put in the pqueue instead, all the packets + * (if possible) will be transmitted when the device wakes up, so we don't have + * to wait for retransmission from upper layers. + */ +#define PQUEUE_SIZE 8 + +struct wlif_t { + volatile uint8_t rx_pending; + + struct { + struct pbuf* buf[PQUEUE_SIZE]; + uint8_t first; + uint8_t last; + } pqueue; +}; + +#define PQUEUE_EMPTY(q) (q.last == q.first) +#define PQUEUE_FULL(q) ((q.last + 1) % PQUEUE_SIZE == q.first) +#define PQUEUE_FIRST(q) (q.buf[q.first]) +#define PQUEUE_DEQUEUE(q) \ + ({ \ + struct pbuf* __p = PQUEUE_FIRST(q); \ + q.first = (q.first + 1) % PQUEUE_SIZE; \ + __p; \ + }) +#define PQUEUE_ENQUEUE(q, p) \ + ({ \ + q.buf[q.last] = p; \ + q.last = (q.last + 1) % PQUEUE_SIZE; \ + }) + + +static err_t process_pqueue(struct netif* netif) +{ + struct pbuf *p; + struct pbuf *q; + int status; + struct wlif_t *priv = (struct wlif_t*) netif->state; + + /* queue empty? finished */ + if (PQUEUE_EMPTY(priv->pqueue)) + return ERR_OK; + + /* get first packet in queue */ + p = PQUEUE_FIRST(priv->pqueue); + + status = wl_process_tx( + p->payload + WL_HEADER_SIZE, /* ptr to eth hdr */ + p->len - WL_HEADER_SIZE, /* input buffer len */ + p->tot_len - WL_HEADER_SIZE, /* pkt len */ + p->payload, /* ptr to WE hdr */ + 0, /* prio */ + p); /* pkt handle */ + + /* if we fail due to power save mode, leave packet in queue and + * try again when target is awake again (upon WL_RX_EVENT_WAKEUP). + */ + if (status == WL_RESOURCES) + return ERR_IF; + + /* if we fail for another reason, just discard the packet */ + if (status != WL_SUCCESS) { + PQUEUE_DEQUEUE(priv->pqueue); + pbuf_free(p); + return ERR_IF; + } + + /* Send the data from the pbuf to the interface, one pbuf at a + * time. The size of the data in each pbuf is kept in the ->len + * variable. + */ + for (q = p; q != NULL; q = q->next) + wl_tx(q->payload, q->len); + + /* remove packet from queue and dec refcnt */ + PQUEUE_DEQUEUE(priv->pqueue); + pbuf_free(p); + + LINK_STATS_INC(link.xmit); + + /* tell caller to process next packet */ + return ERR_INPROGRESS; +} + + +/** + * Called in interrupt context when we can read more data from the mac. + * + */ +static void +rx_isr(void* ctx) +{ + struct netif *netif = ctx; + struct wlif_t *priv = (struct wlif_t*) netif->state; + priv->rx_pending = 1; +} + + +/** + * In this function, the hardware should be initialized. + * Called from wlif_init(). + * + * @param netif the already initialized lwip network interface structure + * for this ethernetif + */ +static err_t +low_level_init(struct netif *netif) +{ + /* device capabilities */ + netif->flags = NETIF_FLAG_BROADCAST | NETIF_FLAG_ETHARP | + NETIF_FLAG_IGMP; + + /* NETIF_FLAG_LINK_UP must be set only when we have an wlan assoc */ + + /* set MAC hardware address length */ + netif->hwaddr_len = ETHARP_HWADDR_LEN; + + if (wl_get_mac_addr(netif->hwaddr) != WL_SUCCESS) + return ERR_IF; + + /* maximum transfer unit */ + netif->mtu = 1500; + + return ERR_OK; +} + + +/** + * This function should do the actual transmission of the packet. The packet is + * contained in the pbuf that is passed to the function. This pbuf + * might be chained. + * + * @param netif the lwip network interface structure for this ethernetif + * @param p the MAC packet to send (e.g. IP packet including MAC addresses and + * type) + * @return ERR_OK if the packet could be sent + * an err_t value if the packet couldn't be sent + * + * @note Returning ERR_MEM here if a DMA queue of your MAC is full can lead to + * strange results. You might consider waiting for space in the DMA queue + * to become availale since the stack doesn't retry to send a packet + * dropped because of memory failure (except for the TCP timers). + */ +static err_t +low_level_output(struct netif *netif, struct pbuf *p) +{ + struct wlif_t* priv = (struct wlif_t*) netif->state; + + /* must have a linear buffer containing up to and including + * the ethernet header + */ + if (p->len < sizeof(struct eth_hdr)) + return ERR_IF; + + /* queue full? drop packet */ + if (PQUEUE_FULL(priv->pqueue)) + return ERR_INPROGRESS; /* no one seems to check this anyway */ + + /* queue packet */ + PQUEUE_ENQUEUE(priv->pqueue, p); + pbuf_ref(p); + while (process_pqueue(netif) == ERR_INPROGRESS); + return ERR_OK; /* no one seems to check this anyway */ +} + +/** + * Should allocate a pbuf and transfer the bytes of the incoming + * packet from the interface into the pbuf. + * + * @param netif the lwip network interface structure for this ethernetif + * @return a pbuf filled with the received packet (including MAC header) + * NULL on memory error + */ +static struct pbuf * +low_level_input(struct netif *netif) +{ + struct pbuf *p; + struct wlif_t *priv = (struct wlif_t*) netif->state; + + char *stripped_pkt; + size_t stripped_pkt_len; + u16_t vlan; + u8_t rx_hdr_size; + int status; + u16_t len; + + /* maximum packet length from wl_rx() */ + len = WL_MAX_PKT_LEN; + + /* We allocate a continous pbuf */ + p = pbuf_alloc(PBUF_RAW, len, PBUF_RAM); + if (p == NULL) { + LWIP_DEBUGF(NETIF_DEBUG, ("low_level_input: fail to alloc " + "pbuf of len:%"S32_F"\n", len)); + return NULL; + } + + /* Read the entire msg */ + priv->rx_pending = 0; + wl_rx(p->payload, &len); + if (len == 0) { + LWIP_DEBUGF(NETIF_DEBUG, ("low_level_input: len was 0")); + return NULL; + } + + status = wl_process_rx( + p->payload, /* input buf */ + len, /* input buf length */ + &stripped_pkt, + &stripped_pkt_len, + &vlan); + + if (status == WL_ABSORBED) { + LWIP_DEBUGF(NETIF_DEBUG, ("low_level_input: absorbed")); + pbuf_free(p); + return NULL; + } + + /* Data packet, remove padding */ + rx_hdr_size = stripped_pkt - (char*) p->payload; + pbuf_realloc(p, stripped_pkt_len + rx_hdr_size); + + LINK_STATS_INC(link.recv); + return p; +} + + +/** + * This function will be called by wlif_poll() when a packet has been received + * from the mac. Then the type of the received packet is determined and + * the appropriate input function is called. + * + * @param netif the lwip network interface structure for this ethernetif + */ +static void +wlif_input(struct netif *netif) +{ + struct eth_hdr *ethhdr; + struct pbuf *p; + + /* move received packet into a new pbuf */ + p = low_level_input(netif); + + /* no packet could be read, silently ignore this */ + if (p == NULL) + return; + + /* points to packet payload, which starts with an Ethernet header */ + ethhdr = p->payload; + switch (htons(ethhdr->type)) { + /* IP or ARP packet? */ + case ETHTYPE_IP: + case ETHTYPE_ARP: +#if PPPOE_SUPPORT + /* PPPoE packet? */ + case ETHTYPE_PPPOEDISC: + case ETHTYPE_PPPOE: +#endif /* PPPOE_SUPPORT */ + /* full packet send to tcpip_thread to process */ + if (netif->input(p, netif) != ERR_OK) { + LWIP_DEBUGF(NETIF_DEBUG, + ("wlif_input: IP input error\n")); + pbuf_free(p); + p = NULL; + } + break; + + default: + pbuf_free(p); + p = NULL; + break; + } +} + +static ssize_t pkt_read_cb(char *dst, + void *src_handle, + size_t read_len, + int offset) { + ssize_t rc; + + rc = pbuf_copy_partial((struct pbuf *)src_handle, + dst, + read_len, + offset + WL_HEADER_SIZE); + if ( 0 == rc ) { + return -1; + } + + return rc; +} + +/** + * Should be called at the beginning of the program to set up the + * network interface. It calls the function low_level_init() to do the + * actual setup of the hardware. + * + * This function should be passed as a parameter to netif_add(). + * + * @param netif the lwip network interface structure for this ethernetif + * @return ERR_OK if the loopif is initialized + * ERR_MEM if private data couldn't be allocated + * any other err_t on error + */ +err_t +wlif_init(struct netif *netif) +{ + static struct wlif_t wlif; + + LWIP_ASSERT("netif != NULL", (netif != NULL)); + +#if LWIP_NETIF_HOSTNAME + /* Initialize interface hostname */ + if ( NULL == netif->hostname ) { + netif->hostname = "wlif"; + } +#endif /* LWIP_NETIF_HOSTNAME */ + + netif->state = &wlif; + netif->name[0] = IFNAME0; + netif->name[1] = IFNAME1; + + /* We directly use etharp_output() here to save a function call. + * You can instead declare your own function an call etharp_output() + * from it if you have to do some checks before sending (e.g. if link + * is available...) */ + netif->output = etharp_output; + netif->linkoutput = low_level_output; + + wl_register_rx_isr(rx_isr, netif); + wl_register_pkt_read_cb(pkt_read_cb); + + /* initialize the hardware */ + return low_level_init(netif); +} + + +/** + * + */ +void +wlif_poll(struct netif* netif) +{ + struct wlif_t* priv = NULL; + + /* wl api forward progress */ + wl_poll(); + + if (netif) + priv = (struct wlif_t*) netif->state; + + /* wlif_init() not called yet? */ + if (priv == NULL) + return; + + /* no packets pending? */ + if (!priv->rx_pending) + return; + + /* read the pending packet */ + wlif_input(netif); + + /* send any packets that was queued due to filled up target queue + * or power save mode. + */ + process_pqueue(netif); +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/readme.txt b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/readme.txt new file mode 100644 index 000000000..c95f30e72 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/readme.txt @@ -0,0 +1 @@ +This directory is specific to the WIFI H&D SPB104 components (\COMPONENTS\WIFI\HD_SPB104). diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c new file mode 100644 index 000000000..09790c259 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c @@ -0,0 +1,571 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Abstraction layer for memory interfaces. + * + * This module contains the interfaces: + * - MEM <-> USB; + * - MEM <-> RAM; + * - MEM <-> MEM. + * + * This module may be configured and expanded to support the following features: + * - write-protected globals; + * - password-protected data; + * - specific features; + * - etc. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ____________________________________________________ + +#include "compiler.h" +#include "preprocessor.h" +#ifdef FREERTOS_USED +#include "FreeRTOS.h" +#include "semphr.h" +#endif +#include "ctrl_access.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +#ifdef FREERTOS_USED + +/*! \name LUN Access Protection Macros + */ +//! @{ + +/*! \brief Locks accesses to LUNs. + * + * \return \c TRUE if the access was successfully locked, else \c FALSE. + */ +#define Ctrl_access_lock() ctrl_access_lock() + +/*! \brief Unlocks accesses to LUNs. + */ +#define Ctrl_access_unlock() xSemaphoreGive(ctrl_access_semphr) + +//! @} + +//! Handle to the semaphore protecting accesses to LUNs. +static xSemaphoreHandle ctrl_access_semphr = NULL; + +#else + +/*! \name LUN Access Protection Macros + */ +//! @{ + +/*! \brief Locks accesses to LUNs. + * + * \return \c TRUE if the access was successfully locked, else \c FALSE. + */ +#define Ctrl_access_lock() TRUE + +/*! \brief Unlocks accesses to LUNs. + */ +#define Ctrl_access_unlock() + +//! @} + +#endif // FREERTOS_USED + + +#if MAX_LUN + +/*! \brief Initializes an entry of the LUN descriptor table. + * + * \param lun Logical Unit Number. + * + * \return LUN descriptor table entry initializer. + */ +#if ACCESS_USB == ENABLED && ACCESS_MEM_TO_RAM == ENABLED +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(Lun_, lun, _usb_read_10),\ + TPASTE3(Lun_, lun, _usb_write_10),\ + TPASTE3(Lun_, lun, _mem_2_ram),\ + TPASTE3(Lun_, lun, _ram_2_mem),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#elif ACCESS_USB == ENABLED +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(Lun_, lun, _usb_read_10),\ + TPASTE3(Lun_, lun, _usb_write_10),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#elif ACCESS_MEM_TO_RAM == ENABLED +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(Lun_, lun, _mem_2_ram),\ + TPASTE3(Lun_, lun, _ram_2_mem),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#else +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#endif + +//! LUN descriptor table. +static const struct +{ + Ctrl_status (*test_unit_ready)(void); + Ctrl_status (*read_capacity)(U32 *); + Bool (*wr_protect)(void); + Bool (*removal)(void); +#if ACCESS_USB == ENABLED + Ctrl_status (*usb_read_10)(U32, U16); + Ctrl_status (*usb_write_10)(U32, U16); +#endif +#if ACCESS_MEM_TO_RAM == ENABLED + Ctrl_status (*mem_2_ram)(U32, void *); + Ctrl_status (*ram_2_mem)(U32, const void *); +#endif + const char *name; +} lun_desc[MAX_LUN] = +{ +#if LUN_0 == ENABLE + Lun_desc_entry(0), +#endif +#if LUN_1 == ENABLE + Lun_desc_entry(1), +#endif +#if LUN_2 == ENABLE + Lun_desc_entry(2), +#endif +#if LUN_3 == ENABLE + Lun_desc_entry(3), +#endif +#if LUN_4 == ENABLE + Lun_desc_entry(4), +#endif +#if LUN_5 == ENABLE + Lun_desc_entry(5), +#endif +#if LUN_6 == ENABLE + Lun_desc_entry(6), +#endif +#if LUN_7 == ENABLE + Lun_desc_entry(7) +#endif +}; + +#endif + + +#if GLOBAL_WR_PROTECT == ENABLED +Bool g_wr_protect; +#endif + + +/*! \name Control Interface + */ +//! @{ + + +#ifdef FREERTOS_USED + +Bool ctrl_access_init(void) +{ + // If the handle to the protecting semaphore is not valid, + if (!ctrl_access_semphr) + { + // try to create the semaphore. + vSemaphoreCreateBinary(ctrl_access_semphr); + + // If the semaphore could not be created, there is no backup solution. + if (!ctrl_access_semphr) return FALSE; + } + + return TRUE; +} + + +/*! \brief Locks accesses to LUNs. + * + * \return \c TRUE if the access was successfully locked, else \c FALSE. + */ +static Bool ctrl_access_lock(void) +{ + // If the semaphore could not be created, there is no backup solution. + if (!ctrl_access_semphr) return FALSE; + + // Wait for the semaphore. + while (!xSemaphoreTake(ctrl_access_semphr, portMAX_DELAY)); + + return TRUE; +} + +#endif // FREERTOS_USED + + +U8 get_nb_lun(void) +{ +#if MEM_USB == ENABLE + U8 nb_lun; + + if (!Ctrl_access_lock()) return MAX_LUN; + + nb_lun = MAX_LUN + host_get_lun(); + + Ctrl_access_unlock(); + + return nb_lun; +#else + return MAX_LUN; +#endif +} + + +U8 get_cur_lun(void) +{ + return LUN_ID_0; +} + + +Ctrl_status mem_test_unit_ready(U8 lun) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].test_unit_ready() : +#endif +#if LUN_USB == ENABLE + Lun_usb_test_unit_ready(lun - LUN_ID_USB); +#else + CTRL_FAIL; +#endif + + Ctrl_access_unlock(); + + return status; +} + + +Ctrl_status mem_read_capacity(U8 lun, U32 *u32_nb_sector) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].read_capacity(u32_nb_sector) : +#endif +#if LUN_USB == ENABLE + Lun_usb_read_capacity(lun - LUN_ID_USB, u32_nb_sector); +#else + CTRL_FAIL; +#endif + + Ctrl_access_unlock(); + + return status; +} + + +U8 mem_sector_size(U8 lun) +{ + U8 sector_size; + + if (!Ctrl_access_lock()) return 0; + + sector_size = +#if MAX_LUN + (lun < MAX_LUN) ? 1 : +#endif +#if LUN_USB == ENABLE + Lun_usb_read_sector_size(lun - LUN_ID_USB); +#else + 0; +#endif + + Ctrl_access_unlock(); + + return sector_size; +} + + +Bool mem_wr_protect(U8 lun) +{ + Bool wr_protect; + + if (!Ctrl_access_lock()) return TRUE; + + wr_protect = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].wr_protect() : +#endif +#if LUN_USB == ENABLE + Lun_usb_wr_protect(lun - LUN_ID_USB); +#else + TRUE; +#endif + + Ctrl_access_unlock(); + + return wr_protect; +} + + +Bool mem_removal(U8 lun) +{ + Bool removal; + + if (!Ctrl_access_lock()) return TRUE; + + removal = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].removal() : +#endif +#if LUN_USB == ENABLE + Lun_usb_removal(); +#else + TRUE; +#endif + + Ctrl_access_unlock(); + + return removal; +} + + +const char *mem_name(U8 lun) +{ + return +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].name : +#endif +#if LUN_USB == ENABLE + LUN_USB_NAME; +#else + NULL; +#endif +} + + +//! @} + + +#if ACCESS_USB == ENABLED + +/*! \name MEM <-> USB Interface + */ +//! @{ + + +Ctrl_status memory_2_usb(U8 lun, U32 addr, U16 nb_sector) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_read_action(nb_sector); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].usb_read_10(addr, nb_sector) : +#endif + CTRL_FAIL; + memory_stop_read_action(); + + Ctrl_access_unlock(); + + return status; +} + + +Ctrl_status usb_2_memory(U8 lun, U32 addr, U16 nb_sector) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_write_action(nb_sector); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].usb_write_10(addr, nb_sector) : +#endif + CTRL_FAIL; + memory_stop_write_action(); + + Ctrl_access_unlock(); + + return status; +} + + +//! @} + +#endif // ACCESS_USB == ENABLED + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + + +Ctrl_status memory_2_ram(U8 lun, U32 addr, void *ram) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_read_action(1); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].mem_2_ram(addr, ram) : +#endif +#if LUN_USB == ENABLE + Lun_usb_mem_2_ram(addr, ram); +#else + CTRL_FAIL; +#endif + memory_stop_read_action(); + + Ctrl_access_unlock(); + + return status; +} + + +Ctrl_status ram_2_memory(U8 lun, U32 addr, const void *ram) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_write_action(1); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].ram_2_mem(addr, ram) : +#endif +#if LUN_USB == ENABLE + Lun_usb_ram_2_mem(addr, ram); +#else + CTRL_FAIL; +#endif + memory_stop_write_action(); + + Ctrl_access_unlock(); + + return status; +} + + +//! @} + +#endif // ACCESS_MEM_TO_RAM == ENABLED + + +#if ACCESS_STREAM == ENABLED + +/*! \name Streaming MEM <-> MEM Interface + */ +//! @{ + + + #if ACCESS_MEM_TO_MEM == ENABLED + +#include "fat.h" + +Ctrl_status stream_mem_to_mem(U8 src_lun, U32 src_addr, U8 dest_lun, U32 dest_addr, U16 nb_sector) +{ +#if (defined __GNUC__) && (defined __AVR32__) + __attribute__((__aligned__(4))) +#elif (defined __ICCAVR32__) + #pragma data_alignment = 4 +#endif + static U8 sector_buf[FS_512B]; + Ctrl_status status = CTRL_GOOD; + + while (nb_sector--) + { + if ((status = memory_2_ram(src_lun, src_addr++, sector_buf)) != CTRL_GOOD) break; + if ((status = ram_2_memory(dest_lun, dest_addr++, sector_buf)) != CTRL_GOOD) break; + } + + return status; +} + + #endif // ACCESS_MEM_TO_MEM == ENABLED + + +Ctrl_status stream_state(U8 id) +{ + return CTRL_GOOD; +} + + +U16 stream_stop(U8 id) +{ + return 0; +} + + +//! @} + +#endif // ACCESS_STREAM == ENABLED diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h new file mode 100644 index 000000000..358bf6589 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h @@ -0,0 +1,369 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Abstraction layer for memory interfaces. + * + * This module contains the interfaces: + * - MEM <-> USB; + * - MEM <-> RAM; + * - MEM <-> MEM. + * + * This module may be configured and expanded to support the following features: + * - write-protected globals; + * - password-protected data; + * - specific features; + * - etc. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CTRL_ACCESS_H_ +#define _CTRL_ACCESS_H_ + +#include "compiler.h" +#include "conf_access.h" + + +//! Status returned by CTRL_ACCESS interfaces. +typedef enum +{ + CTRL_GOOD = PASS, //!< Success, memory ready. + CTRL_FAIL = FAIL, //!< An error occurred. + CTRL_NO_PRESENT = FAIL + 1, //!< Memory unplugged. + CTRL_BUSY = FAIL + 2 //!< Memory not initialized or changed. +} Ctrl_status; + + +// FYI: Each Logical Unit Number (LUN) corresponds to a memory. + +// Check LUN defines. +#ifndef LUN_0 + #error LUN_0 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_1 + #error LUN_1 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_2 + #error LUN_2 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_3 + #error LUN_3 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_4 + #error LUN_4 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_5 + #error LUN_5 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_6 + #error LUN_6 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_7 + #error LUN_7 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_USB + #error LUN_USB must be defined as ENABLE or DISABLE in conf_access.h +#endif + +/*! \name LUN IDs + */ +//! @{ +#define LUN_ID_0 (0) //!< First static LUN. +#define LUN_ID_1 (LUN_ID_0 + LUN_0) +#define LUN_ID_2 (LUN_ID_1 + LUN_1) +#define LUN_ID_3 (LUN_ID_2 + LUN_2) +#define LUN_ID_4 (LUN_ID_3 + LUN_3) +#define LUN_ID_5 (LUN_ID_4 + LUN_4) +#define LUN_ID_6 (LUN_ID_5 + LUN_5) +#define LUN_ID_7 (LUN_ID_6 + LUN_6) +#define MAX_LUN (LUN_ID_7 + LUN_7) //!< Number of static LUNs. +#define LUN_ID_USB (MAX_LUN) //!< First dynamic LUN (USB host mass storage). +//! @} + + +// Include LUN header files. +#if LUN_0 == ENABLE + #include LUN_0_INCLUDE +#endif +#if LUN_1 == ENABLE + #include LUN_1_INCLUDE +#endif +#if LUN_2 == ENABLE + #include LUN_2_INCLUDE +#endif +#if LUN_3 == ENABLE + #include LUN_3_INCLUDE +#endif +#if LUN_4 == ENABLE + #include LUN_4_INCLUDE +#endif +#if LUN_5 == ENABLE + #include LUN_5_INCLUDE +#endif +#if LUN_6 == ENABLE + #include LUN_6_INCLUDE +#endif +#if LUN_7 == ENABLE + #include LUN_7_INCLUDE +#endif +#if LUN_USB == ENABLE + #include LUN_USB_INCLUDE +#endif + + +// Check the configuration of write protection in conf_access.h. +#ifndef GLOBAL_WR_PROTECT + #error GLOBAL_WR_PROTECT must be defined as ENABLED or DISABLED in conf_access.h +#endif + + +#if GLOBAL_WR_PROTECT == ENABLED + +//! Write protect. +extern Bool g_wr_protect; + +#endif + + +/*! \name Control Interface + */ +//! @{ + +#ifdef FREERTOS_USED + +/*! \brief Initializes the LUN access locker. + * + * \return \c TRUE if the locker was successfully initialized, else \c FALSE. + */ +extern Bool ctrl_access_init(void); + +#endif // FREERTOS_USED + +/*! \brief Returns the number of LUNs. + * + * \return Number of LUNs in the system. + */ +extern U8 get_nb_lun(void); + +/*! \brief Returns the current LUN. + * + * \return Current LUN. + * + * \todo Implement. + */ +extern U8 get_cur_lun(void); + +/*! \brief Tests the memory state and initializes the memory if required. + * + * The TEST UNIT READY SCSI primary command allows an application client to poll + * a LUN until it is ready without having to allocate memory for returned data. + * + * This command may be used to check the media status of LUNs with removable + * media. + * + * \param lun Logical Unit Number. + * + * \return Status. + */ +extern Ctrl_status mem_test_unit_ready(U8 lun); + +/*! \brief Returns the address of the last valid sector (512 bytes) in the + * memory. + * + * \param lun Logical Unit Number. + * \param u32_nb_sector Pointer to the address of the last valid sector. + * + * \return Status. + */ +extern Ctrl_status mem_read_capacity(U8 lun, U32 *u32_nb_sector); + +/*! \brief Returns the size of the physical sector. + * + * \param lun Logical Unit Number. + * + * \return Sector size (unit: 512 bytes). + */ +extern U8 mem_sector_size(U8 lun); + +/*! \brief Returns the write-protection state of the memory. + * + * \param lun Logical Unit Number. + * + * \return \c TRUE if the memory is write-protected, else \c FALSE. + * + * \note Only used by removable memories with hardware-specific write + * protection. + */ +extern Bool mem_wr_protect(U8 lun); + +/*! \brief Tells whether the memory is removable. + * + * \param lun Logical Unit Number. + * + * \return \c TRUE if the memory is removable, else \c FALSE. + */ +extern Bool mem_removal(U8 lun); + +/*! \brief Returns a pointer to the LUN name. + * + * \param lun Logical Unit Number. + * + * \return Pointer to the LUN name string. + */ +extern const char *mem_name(U8 lun); + +//! @} + + +#if ACCESS_USB == ENABLED + +/*! \name MEM <-> USB Interface + */ +//! @{ + +/*! \brief Tranfers data from the memory to USB. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to read. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status memory_2_usb(U8 lun, U32 addr, U16 nb_sector); + +/*! \brief Tranfers data from USB to the memory. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to write. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status usb_2_memory(U8 lun, U32 addr, U16 nb_sector); + +//! @} + +#endif // ACCESS_USB == ENABLED + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + +/*! \brief Copies 1 data sector from the memory to RAM. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to read. + * \param ram Pointer to RAM buffer to write. + * + * \return Status. + */ +extern Ctrl_status memory_2_ram(U8 lun, U32 addr, void *ram); + +/*! \brief Copies 1 data sector from RAM to the memory. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to write. + * \param ram Pointer to RAM buffer to read. + * + * \return Status. + */ +extern Ctrl_status ram_2_memory(U8 lun, U32 addr, const void *ram); + +//! @} + +#endif // ACCESS_MEM_TO_RAM == ENABLED + + +#if ACCESS_STREAM == ENABLED + +/*! \name Streaming MEM <-> MEM Interface + */ +//! @{ + +//! Erroneous streaming data transfer ID. +#define ID_STREAM_ERR 0xFF + + #if ACCESS_MEM_TO_MEM == ENABLED + +/*! \brief Copies data from one memory to another. + * + * \param src_lun Source Logical Unit Number. + * \param src_addr Source address of first memory sector to read. + * \param dest_lun Destination Logical Unit Number. + * \param dest_addr Destination address of first memory sector to write. + * \param nb_sector Number of sectors to copy. + * + * \return Status. + */ +extern Ctrl_status stream_mem_to_mem(U8 src_lun, U32 src_addr, U8 dest_lun, U32 dest_addr, U16 nb_sector); + + #endif // ACCESS_MEM_TO_MEM == ENABLED + +/*! \brief Returns the state of a streaming data transfer. + * + * \param id Transfer ID. + * + * \return Status. + * + * \todo Implement. + */ +extern Ctrl_status stream_state(U8 id); + +/*! \brief Stops a streaming data transfer. + * + * \param id Transfer ID. + * + * \return Number of remaining sectors. + * + * \todo Implement. + */ +extern U16 stream_stop(U8 id); + +//! @} + +#endif // ACCESS_STREAM == ENABLED + + +#endif // _CTRL_ACCESS_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c new file mode 100644 index 000000000..fe8a2a0d8 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c @@ -0,0 +1,133 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Macros and functions dedicated to debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "debug.h" +#include "util.h" + + +#if (defined __GNUC__) +# include "malloc.h" + +U32 get_heap_curr_used_size( void ) +{ + struct mallinfo my_info=mallinfo(); + return my_info.uordblks; +} + +U32 get_heap_total_used_size( void ) +{ + struct mallinfo my_info=mallinfo(); + return my_info.arena; +} +#endif + +U32 get_heap_free_size( void ) +{ + U32 high_mark= AVR32_SRAM_SIZE; + U32 low_mark = 0; + U32 size ; + void* p_mem; + + size = (high_mark + low_mark)/2; + + do + { + p_mem = malloc(size); + if( p_mem != NULL) + { // Can allocate memory + free(p_mem); + low_mark = size; + } + else + { // Can not allocate memory + high_mark = size; + } + + size = (high_mark + low_mark)/2; + } + while( (high_mark-low_mark) >1 ); + + return size; +} + +static void* round_trace_pbuf; +static U32 round_trace_size; + +void uc3_round_trace_init(void* buf, U32 size) +{ + round_trace_pbuf = buf; + (*(U32*)round_trace_pbuf)=(U32)buf+4; + round_trace_size = size; +} + +void uc3_round_trace(U32 val) +{ + //Disable_global_interrupt(); + + U32* p_wr = (U32*)(*(U32*)round_trace_pbuf); + *p_wr = val; + p_wr++; + if( ((U32)p_wr % round_trace_size) ==0 ) + p_wr= (U32*)round_trace_pbuf+1; + *p_wr = 0xdeadbeef; + *(U32*)round_trace_pbuf = (U32)p_wr; + + //Enable_global_interrupt(); +} + +void dump(char* _buf, uint16_t _count) { + + int i; + for (i = 0; i < _count; ++i) + { + printk("0x%x ", _buf[i]); + if ((i!=0)&&(i % 10 == 0)) + printk("\n\t"); + } + printk("\n"); +} + diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h new file mode 100644 index 000000000..a832d7c9c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h @@ -0,0 +1,116 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Macros and functions dedicated to debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _DEBUG_H_ +#define _DEBUG_H_ + +#include "stringz.h" + +/*! \brief These macros are used to add traces memory. + * + * First, initialise the trace with Uc3_trace_init(pointer), giving the start address + * of the memory location where will be stored the trace. + * Use Uc3_trace(something) to store "something" into the memory. The end of the trace + * is signaled by the "0xdeadbeef" pattern. + */ +#define Uc3_trace_init(debug_addr) \ + *(U32*)(debug_addr)=debug_addr+4 + +#define Uc3_trace(debug_addr, x) \ + *(U32*)(*(U32*)(debug_addr) ) = (U32)(x) ;\ + *(U32*)(*(U32*)(debug_addr)+4) = 0xdeadbeef ;\ + *(U32*)(debug_addr ) = *(U32*)(debug_addr)+4 + +/*! \brief This macro is used to insert labels into assembly output. + * + */ +#define Insert_label(name) \ + __asm__ __volatile__ (STRINGZ(name)":"); + +#if (defined __GNUC__) +/*! \brief Returns the number of total of used bytes allocated from the HEAP. + * + * \retval total number of used bytes. + */ +U32 get_heap_total_used_size( void ); + +/*! \brief Returns the number of bytes currently used from the HEAP. + * + * \retval total number of used bytes. + */ +U32 get_heap_curr_used_size( void ); +#endif + +/*! \brief Returns the number of free bytes in the HEAP. + * + * This funtion tries to allocate the maximum number of bytes by dichotomical method. + * + * \retval number of free bytes. + */ +extern U32 get_heap_free_size( void ); + +/*! \name Traces function using a round buffer + */ +//! @{ + +/*! \brief Initialize the trace using a round buffer. + * + * \param buf Base address of the buffer used for the trace. + * \param size Size of the round buffer. Must be a power of 2. + */ +void uc3_round_trace_init(void* buf, U32 size); + +/*! \brief Trace a data in the round buffer. + * + * The end of the trace is signaled by the "0xdeadbeef" pattern. + * \param val Data to trace; + */ +void uc3_round_trace(U32 val); + +//! @} + + +#endif // _DEBUG_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c new file mode 100644 index 000000000..99e927466 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c @@ -0,0 +1,215 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Strings and integers print module for debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "gpio.h" +#include "usart.h" +#include "print_funcs.h" + + +//! ASCII representation of hexadecimal digits. +static const char HEX_DIGITS[16] = "0123456789ABCDEF"; + + +void init_dbg_rs232(long pba_hz) +{ + init_dbg_rs232_ex(DBG_USART_BAUDRATE, pba_hz); +} + + +void init_dbg_rs232_ex(unsigned long baudrate, long pba_hz) +{ + static const gpio_map_t DBG_USART_GPIO_MAP = + { + {DBG_USART_RX_PIN, DBG_USART_RX_FUNCTION}, + {DBG_USART_TX_PIN, DBG_USART_TX_FUNCTION} + }; + + // Options for debug USART. + usart_options_t dbg_usart_options = + { + .baudrate = baudrate, + .charlength = 8, + .paritytype = USART_NO_PARITY, + .stopbits = USART_1_STOPBIT, + .channelmode = USART_NORMAL_CHMODE + }; + + // Setup GPIO for debug USART. + gpio_enable_module(DBG_USART_GPIO_MAP, + sizeof(DBG_USART_GPIO_MAP) / sizeof(DBG_USART_GPIO_MAP[0])); + + // Initialize it in RS232 mode. + usart_init_rs232(DBG_USART, &dbg_usart_options, pba_hz); +} + + +void print_dbg(const char *str) +{ + // Redirection to the debug USART. + print(DBG_USART, str); +} + + +void print_dbg_char(int c) +{ + // Redirection to the debug USART. + print_char(DBG_USART, c); +} + + +void print_dbg_ulong(unsigned long n) +{ + // Redirection to the debug USART. + print_ulong(DBG_USART, n); +} + + +void print_dbg_char_hex(unsigned char n) +{ + // Redirection to the debug USART. + print_char_hex(DBG_USART, n); +} + + +void print_dbg_short_hex(unsigned short n) +{ + // Redirection to the debug USART. + print_short_hex(DBG_USART, n); +} + + +void print_dbg_hex(unsigned long n) +{ + // Redirection to the debug USART. + print_hex(DBG_USART, n); +} + + +void print(volatile avr32_usart_t *usart, const char *str) +{ + // Invoke the USART driver to transmit the input string with the given USART. + usart_write_line(usart, str); +} + + +void print_char(volatile avr32_usart_t *usart, int c) +{ + // Invoke the USART driver to transmit the input character with the given USART. + usart_putchar(usart, c); +} + + +void print_ulong(volatile avr32_usart_t *usart, unsigned long n) +{ + char tmp[11]; + int i = sizeof(tmp) - 1; + + // Convert the given number to an ASCII decimal representation. + tmp[i] = '\0'; + do + { + tmp[--i] = '0' + n % 10; + n /= 10; + } while (n); + + // Transmit the resulting string with the given USART. + print(usart, tmp + i); +} + + +void print_char_hex(volatile avr32_usart_t *usart, unsigned char n) +{ + char tmp[3]; + int i; + + // Convert the given number to an ASCII hexadecimal representation. + tmp[2] = '\0'; + for (i = 1; i >= 0; i--) + { + tmp[i] = HEX_DIGITS[n & 0xF]; + n >>= 4; + } + + // Transmit the resulting string with the given USART. + print(usart, tmp); +} + + +void print_short_hex(volatile avr32_usart_t *usart, unsigned short n) +{ + char tmp[5]; + int i; + + // Convert the given number to an ASCII hexadecimal representation. + tmp[4] = '\0'; + for (i = 3; i >= 0; i--) + { + tmp[i] = HEX_DIGITS[n & 0xF]; + n >>= 4; + } + + // Transmit the resulting string with the given USART. + print(usart, tmp); +} + + +void print_hex(volatile avr32_usart_t *usart, unsigned long n) +{ + char tmp[9]; + int i; + + // Convert the given number to an ASCII hexadecimal representation. + tmp[8] = '\0'; + for (i = 7; i >= 0; i--) + { + tmp[i] = HEX_DIGITS[n & 0xF]; + n >>= 4; + } + + // Transmit the resulting string with the given USART. + print(usart, tmp); +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h new file mode 100644 index 000000000..38f931dc2 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h @@ -0,0 +1,294 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Strings and integers print module for debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PRINT_FUNCS_H_ +#define _PRINT_FUNCS_H_ + +#include <avr32/io.h> +#include "board.h" + + +/*! \name USART Settings for the Debug Module + */ +//! @{ +#if BOARD == EVK1100 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == EVK1101 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == UC3C_EK +# define DBG_USART (&AVR32_USART2) +# define DBG_USART_RX_PIN AVR32_USART2_RXD_0_1_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART2_RXD_0_1_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART2_TXD_0_1_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART2_TXD_0_1_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == EVK1104 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == EVK1105 +# define DBG_USART (&AVR32_USART0) +# define DBG_USART_RX_PIN AVR32_USART0_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART0_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART0_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART0_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == STK1000 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_FUNCTION +# define DBG_USART_BAUDRATE 115200 +#elif BOARD == NGW100 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_FUNCTION +# define DBG_USART_BAUDRATE 115200 +#elif BOARD == STK600_RCUC3L0 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_1_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_1_FUNCTION +// For the RX pin, connect STK600.PORTE.PE3 to STK600.RS232 SPARE.RXD +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_1_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_1_FUNCTION +// For the TX pin, connect STK600.PORTE.PE2 to STK600.RS232 SPARE.TXD +# define DBG_USART_BAUDRATE 57600 +# define DBG_USART_CLOCK_MASK AVR32_USART1_CLK_PBA +#elif BOARD == UC3L_EK +# define DBG_USART (&AVR32_USART3) +# define DBG_USART_RX_PIN AVR32_USART3_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART3_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART3_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART3_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +# define DBG_USART_CLOCK_MASK AVR32_USART3_CLK_PBA +#elif BOARD == ARDUINO +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +# define DBG_USART_CLOCK_MASK AVR32_USART1_CLK_PBA +#endif + +#if !defined(DBG_USART) || \ + !defined(DBG_USART_RX_PIN) || \ + !defined(DBG_USART_RX_FUNCTION) || \ + !defined(DBG_USART_TX_PIN) || \ + !defined(DBG_USART_TX_FUNCTION) || \ + !defined(DBG_USART_BAUDRATE) +# error The USART configuration to use for debug on your board is missing +#endif +//! @} + +/*! \name VT100 Common Commands + */ +//! @{ +#define CLEARSCR "\x1B[2J\x1B[;H" //!< Clear screen. +#define CLEAREOL "\x1B[K" //!< Clear end of line. +#define CLEAREOS "\x1B[J" //!< Clear end of screen. +#define CLEARLCR "\x1B[0K" //!< Clear line cursor right. +#define CLEARLCL "\x1B[1K" //!< Clear line cursor left. +#define CLEARELN "\x1B[2K" //!< Clear entire line. +#define CLEARCDW "\x1B[0J" //!< Clear cursor down. +#define CLEARCUP "\x1B[1J" //!< Clear cursor up. +#define GOTOYX "\x1B[%.2d;%.2dH" //!< Set cursor to (y, x). +#define INSERTMOD "\x1B[4h" //!< Insert mode. +#define OVERWRITEMOD "\x1B[4l" //!< Overwrite mode. +#define DELAFCURSOR "\x1B[K" //!< Erase from cursor to end of line. +#define CRLF "\r\n" //!< Carriage Return + Line Feed. +//! @} + +/*! \name VT100 Cursor Commands + */ +//! @{ +#define CURSON "\x1B[?25h" //!< Show cursor. +#define CURSOFF "\x1B[?25l" //!< Hide cursor. +//! @} + +/*! \name VT100 Character Commands + */ +//! @{ +#define NORMAL "\x1B[0m" //!< Normal. +#define BOLD "\x1B[1m" //!< Bold. +#define UNDERLINE "\x1B[4m" //!< Underline. +#define BLINKING "\x1B[5m" //!< Blink. +#define INVVIDEO "\x1B[7m" //!< Inverse video. +//! @} + +/*! \name VT100 Color Commands + */ +//! @{ +#define CL_BLACK "\033[22;30m" //!< Black. +#define CL_RED "\033[22;31m" //!< Red. +#define CL_GREEN "\033[22;32m" //!< Green. +#define CL_BROWN "\033[22;33m" //!< Brown. +#define CL_BLUE "\033[22;34m" //!< Blue. +#define CL_MAGENTA "\033[22;35m" //!< Magenta. +#define CL_CYAN "\033[22;36m" //!< Cyan. +#define CL_GRAY "\033[22;37m" //!< Gray. +#define CL_DARKGRAY "\033[01;30m" //!< Dark gray. +#define CL_LIGHTRED "\033[01;31m" //!< Light red. +#define CL_LIGHTGREEN "\033[01;32m" //!< Light green. +#define CL_YELLOW "\033[01;33m" //!< Yellow. +#define CL_LIGHTBLUE "\033[01;34m" //!< Light blue. +#define CL_LIGHTMAGENTA "\033[01;35m" //!< Light magenta. +#define CL_LIGHTCYAN "\033[01;36m" //!< Light cyan. +#define CL_WHITE "\033[01;37m" //!< White. +//! @} + + +/*! \brief Sets up DBG_USART with 8N1 at DBG_USART_BAUDRATE. + * + * \param pba_hz PBA clock frequency (Hz). + */ +extern void init_dbg_rs232(long pba_hz); + +/*! \brief Sets up DBG_USART with 8N1 at a given baud rate. + * + * \param baudrate Baud rate to set DBG_USART to. + * \param pba_hz PBA clock frequency (Hz). + */ +extern void init_dbg_rs232_ex(unsigned long baudrate, long pba_hz); + +/*! \brief Prints a string of characters to DBG_USART. + * + * \param str The string of characters to print. + */ +extern void print_dbg(const char *str); + +/*! \brief Prints a character to DBG_USART. + * + * \param c The character to print. + */ +extern void print_dbg_char(int c); + +/*! \brief Prints an integer to DBG_USART in a decimal representation. + * + * \param n The integer to print. + */ +extern void print_dbg_ulong(unsigned long n); + +/*! \brief Prints a char to DBG_USART in an hexadecimal representation. + * + * \param n The char to print. + */ +extern void print_dbg_char_hex(unsigned char n); + +/*! \brief Prints a short integer to DBG_USART in an hexadecimal representation. + * + * \param n The short integer to print. + */ +extern void print_dbg_short_hex(unsigned short n); + +/*! \brief Prints an integer to DBG_USART in an hexadecimal representation. + * + * \param n The integer to print. + */ +extern void print_dbg_hex(unsigned long n); + +/*! \brief Prints a string of characters to a given USART. + * + * \param usart Base address of the USART instance to print to. + * \param str The string of characters to print. + */ +extern void print(volatile avr32_usart_t *usart, const char *str); + +/*! \brief Prints a character to a given USART. + * + * \param usart Base address of the USART instance to print to. + * \param c The character to print. + */ +extern void print_char(volatile avr32_usart_t *usart, int c); + +/*! \brief Prints an integer to a given USART in a decimal representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The integer to print. + */ +extern void print_ulong(volatile avr32_usart_t *usart, unsigned long n); + +/*! \brief Prints a char to a given USART in an hexadecimal representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The char to print. + */ +extern void print_char_hex(volatile avr32_usart_t *usart, unsigned char n); + +/*! \brief Prints a short integer to a given USART in an hexadecimal + * representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The short integer to print. + */ +extern void print_short_hex(volatile avr32_usart_t *usart, unsigned short n); + +/*! \brief Prints an integer to a given USART in an hexadecimal representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The integer to print. + */ +extern void print_hex(volatile avr32_usart_t *usart, unsigned long n); + + +#endif // _PRINT_FUNCS_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h new file mode 100644 index 000000000..e3ebea7a1 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h @@ -0,0 +1,63 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS CPU include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_CPU_H__ +#define __AVR32_NEWLIB_ADDONS_CPU_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +#define CPU_HZ get_cpu_hz() + +void udelay(unsigned long usec); +void set_cpu_hz(unsigned int clk_hz); +unsigned int get_cpu_hz(); + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h new file mode 100644 index 000000000..31caf1304 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h @@ -0,0 +1,120 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS exceptions include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_EXCEPTIONS_H__ +#define __AVR32_NEWLIB_ADDONS_EXCEPTIONS_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +/* + Exception vector offsets +*/ +#define EVBA_UNRECOVERABLE 0x000 +#define EVBA_TLB_MULTIPLE 0x004 +#define EVBA_BUS_ERROR_DATA 0x008 +#define EVBA_BUS_ERROR_INSTR 0x00C +#define EVBA_NMI 0x010 +#define EVBA_INSTR_ADDR 0x014 +#define EVBA_ITLB_MISS 0x050 +#define EVBA_ITLB_PROT 0x018 +#define EVBA_BREAKPOINT 0x01C +#define EVBA_ILLEGAL_OPCODE 0x020 +#define EVBA_UNIMPLEMENTED 0x024 +#define EVBA_PRIVILEGE_VIOL 0x028 +#define EVBA_FLOATING_POINT 0x02C +#define EVBA_COP_ABSENT 0x030 +#define EVBA_SCALL 0x100 +#define EVBA_DATA_ADDR_R 0x034 +#define EVBA_DATA_ADDR_W 0x038 +#define EVBA_DTLB_MISS_R 0x060 +#define EVBA_DTLB_MISS_W 0x070 +#define EVBA_DTLB_PROT_R 0x03C +#define EVBA_DTLB_PROT_W 0x040 +#define EVBA_DTLB_MODIFIED 0x044 + + +/* + Define the form of the function used when registering exceptions. + The function should return the address which the exception should + return to after the exception processing. +*/ + +typedef unsigned int (*__exception_handler)(int /*evba_offset*/, int /*return address*/); + +/* + Define the form of the function used when registering a scall handler. +*/ + +typedef void (*__scall_handler)(int /*code*/, int /*p1*/, int /*p2*/ + , int /*p3*/, int /*p4*/); + +/* + Function for registering an exception handler for the exception with + offset given by evba_offset. +*/ +void _register_exception_handler(__exception_handler handler, int evba_offset); + +/* + Function for registering a scall handler which can be a arbirary + function which uses r8-r12 for parameters. +*/ +void _register_scall_handler(__scall_handler handler); + +/* + Initialize exceptions. Must be called before registering exception handlers + and needed to enable exceptions. 'evba' is the pointer to the exception + vector. 'handler_table' is a pointer to an array where the pointers to + the exception handlers are stored. This array must be at least 0x104 bytes + and word aligned. +*/ +void init_exceptions(void *evba, void *handler_table); + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h new file mode 100644 index 000000000..76d81f737 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h @@ -0,0 +1,82 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS interrupts include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_INTERRUPTS_H__ +#define __AVR32_NEWLIB_ADDONS_INTERRUPTS_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +#define INT_GRPS 64 +#define INT_LINES 32 +#define INTPR_BASE (__intc_base__ + 0x0000) +#define INTREQ_BASE (__intc_base__ + 64*4) +#define INTCAUSE_BASE (__intc_base__ + 2*64*4) + +//Register offsets +#define INTLEVEL 30 +#define AUTOVECTOR 0 +#define AUTOVECTOR_BITS 14 + +//Priorities +#define INT0 0 +#define INT1 1 +#define INT2 2 +#define INT3 3 + + +typedef void (*__newlib_int_handler)(int /* int_grp*/, void */*user_handle*/); + +__newlib_int_handler register_interrupt(__newlib_int_handler handler, int int_grp, int line, int priority, + .../* void *user_handle*/); +void init_interrupts(); +void set_interrupts_base(void *base); + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h new file mode 100644 index 000000000..a725769fa --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h @@ -0,0 +1,174 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS miscellaneous macros include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_IO_H__ +#define __AVR32_NEWLIB_ADDONS_IO_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +typedef char u8; +typedef unsigned int u32; + +#define __raw_writeb(v,a) (*(volatile unsigned char *)(a) = (v)) +#define __raw_writew(v,a) (*(volatile unsigned short *)(a) = (v)) +#define __raw_writel(v,a) (*(volatile unsigned int *)(a) = (v)) + +#define __raw_readb(a) (*(volatile unsigned char *)(a)) +#define __raw_readw(a) (*(volatile unsigned short *)(a)) +#define __raw_readl(a) (*(volatile unsigned int *)(a)) + +/* As long as I/O is only performed in P4 (or possibly P3), we're safe */ +#define writeb(v,a) __raw_writeb(v,a) +#define writew(v,a) __raw_writew(v,a) +#define writel(v,a) __raw_writel(v,a) + +#define readb(a) __raw_readb(a) +#define readw(a) __raw_readw(a) +#define readl(a) __raw_readl(a) + +/* Memory segments when segmentation is enabled */ +#define P0SEG 0x00000000 +#define P1SEG 0x80000000 +#define P2SEG 0xa0000000 +#define P3SEG 0xc0000000 +#define P4SEG 0xe0000000 + +/* Returns the privileged segment base of a given address */ +#define PXSEG(a) (((unsigned long)(a)) & 0xe0000000) + +/* Returns the physical address of a PnSEG (n=1,2) address */ +#define PHYSADDR(a) (((unsigned long)(a)) & 0x1fffffff) + +/* + * Map an address to a certain privileged segment + */ +#define P1SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P1SEG)) +#define P2SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P2SEG)) +#define P3SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P3SEG)) +#define P4SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P4SEG)) + + +#define cached(addr) P1SEGADDR(addr) +#define uncached(addr) P2SEGADDR(addr) +#define physaddr(addr) PHYSADDR(addr) + +#define BF(field, value) \ + ({ union { \ + struct { \ + unsigned : 32 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long __val: field ## _SIZE ; \ + }; \ + unsigned long __ul; \ + } __tmp; \ + __tmp.__ul = 0; \ + __tmp.__val = value; \ + __tmp.__ul;}) + +#define BF_D(field, value) \ + ({ union { \ + struct { \ + unsigned long long : 64 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long long __val: field ## _SIZE ; \ + }; \ + unsigned long long __ul; \ + } __tmp; \ + __tmp.__ul = 0; \ + __tmp.__val = value; \ + __tmp.__ul;}) + +#define BFINS(var, field, value) \ + { union {\ + struct { \ + unsigned : 32 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long __val: field ## _SIZE ; \ + }; \ + unsigned long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val = value; \ + var = __tmp.__ul;} + +#define BFEXT(var, field) \ + ({ union {\ + struct { \ + unsigned : 32 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long __val: field ## _SIZE ; \ + }; \ + unsigned long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val; }) + +#define BFINS_D(var, field, value) \ + { union {\ + struct { \ + unsigned long long : 64 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long long __val: field ## _SIZE ; \ + }; \ + unsigned long long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val = value; \ + var = __tmp.__ul;} + +#define BFEXT_D(var, field) \ + ({ union {\ + struct { \ + unsigned long long : 64 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long long __val: field ## _SIZE ; \ + }; \ + unsigned long long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val; }) + + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h new file mode 100644 index 000000000..6c4697d78 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h @@ -0,0 +1,208 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS USART include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_USART_H__ +#define __AVR32_NEWLIB_ADDONS_USART_H__ + +#include <_ansi.h> + +#include "nlao_io.h" + +_BEGIN_STD_C + +struct usart3 { + volatile u32 us_cr; + volatile u32 us_mr; + volatile u32 us_ier; + volatile u32 us_idr; + volatile u32 us_imr; + volatile u32 us_csr; + volatile u32 us_rhr; + volatile u32 us_thr; + volatile u32 us_brgr; + volatile u32 us_rtor; + volatile u32 us_ttgr; + volatile u32 us_reserved[5]; + volatile u32 us_fidi; + volatile u32 us_ner; + volatile u32 us_xxr; + volatile u32 us_if; +}; + +/* Register offsets */ +#define US_CR 0x0000 +#define US_MR 0x0004 +#define US_IER 0x0008 +#define US_IDR 0x000c +#define US_IMR 0x0010 +#define US_CSR 0x0014 +#define US_RHR 0x0018 +#define US_THR 0x001c +#define US_BRGR 0x0020 +#define US_RTOR 0x0024 +#define US_TTGR 0x0028 + +#define US_FIDI 0x0040 +#define US_NER 0x0044 +#define US_XXR 0x0048 +#define US_IF 0x004c + +#define US_RPR 0x0100 +#define US_RCR 0x0104 +#define US_TPR 0x0108 +#define US_TCR 0x010c +#define US_RNPR 0x0110 +#define US_RNCR 0x0114 +#define US_TNPR 0x0118 +#define US_TNCR 0x011c +#define US_PTCR 0x0120 +#define US_PTSR 0x0124 + + + + +/* USART3 Control Register */ +#define US_CR_RSTRX (1 << 2) +#define US_CR_RSTTX (1 << 3) +#define US_CR_RXEN (1 << 4) +#define US_CR_RXDIS (1 << 5) +#define US_CR_TXEN (1 << 6) +#define US_CR_TXDIS (1 << 7) +#define US_CR_RSTSTA (1 << 8) +#define US_CR_STTBRK (1 << 9) +#define US_CR_STPBRK (1 << 10) + +#define US_CR_DTREN (1 << 16) +#define US_CR_DTRDIS (1 << 17) +#define US_CR_RTSEN (1 << 18) +#define US_CR_RTSDIS (1 << 19) + +/* USART3 Mode Register */ +#define US_MR_MODE (15 << 0) +#define US_MR_MODE_NORMAL ( 0 << 0) +#define US_MR_MODE_HWFLOW ( 2 << 0) +#define US_MR_CLKS ( 3 << 4) +#define US_MR_CLKS_CLOCK ( 0 << 4) +#define US_MR_CLKS_FDIV1 ( 1 << 4) +#define US_MR_CLKS_SLOW ( 2 << 4) +#define US_MR_CLKS_EXT ( 3 << 4) +#define US_MR_CHRL_5BITS ( 0 << 6) +#define US_MR_CHRL_6BITS ( 1 << 6) +#define US_MR_CHRL_7BITS ( 2 << 6) +#define US_MR_CHRL_8BITS ( 3 << 6) +#define US_MR_SYNC ( 1 << 8) +#define US_MR_PAR_EVEN ( 0 << 9) +#define US_MR_PAR_ODD ( 1 << 9) +#define US_MR_PAR_SPACE ( 2 << 9) +#define US_MR_PAR_MARK ( 3 << 9) +#define US_MR_PAR_NONE ( 4 << 9) +#define US_MR_PAR_MDROP ( 6 << 9) +#define US_MR_NBSTOP_1BIT ( 0 << 12) +#define US_MR_NBSTOP_1_5BIT ( 1 << 12) +#define US_MR_NBSTOP_2BITS ( 2 << 12) +#define US_MR_OVER ( 1 << 19) +#define US_MR_OVER_X16 ( 0 << 19) +#define US_MR_OVER_X8 ( 1 << 19) + +/* USART3 Channel Status Register */ +#define US_CSR_RXRDY (1 << 0) +#define US_CSR_TXRDY (1 << 1) +#define US_CSR_RXBRK (1 << 2) +#define US_CSR_ENDRX (1 << 3) +#define US_CSR_ENDTX (1 << 4) + + +#define US_CSR_OVRE (1 << 5) +#define US_CSR_FRAME (1 << 6) +#define US_CSR_PARE (1 << 7) + +#define US_CSR_TXEMPTY (1 << 9) + +#define US_CSR_TXBUFE (1 << 11) +#define US_CSR_RXBUFF (1 << 12) +#define US_CSR_RIIC (1 << 16) +#define US_CSR_DSRIC (1 << 17) +#define US_CSR_DCDIC (1 << 18) +#define US_CSR_CTSIC (1 << 19) +#define US_CSR_RI (1 << 20) +#define US_CSR_DSR (1 << 21) +#define US_CSR_DCD (1 << 22) +#define US_CSR_CTS (1 << 23) + +/* USART3 Baud Rate Generator Register */ +#define US_BRGR_CD_OFFSET 0 +#define US_BRGR_FP_OFFSET 16 + +#define US_BRGR_CD_SIZE 16 +#define US_BRGR_FP_SIZE 3 + +#define US_BRGR_CD (0xFFFF << 0) +#define US_BRGR_FP ( 7 << 16) + +/*USART3 PDC Transfer Control Register */ +#define US_PTCR_RXTEN (1 << 0) +#define US_PTCR_RXTDIS (1 << 1) +#define US_PTCR_TXTEN (1 << 8) +#define US_PTCR_TXTDIS (1 << 9) + +/*USART3 PDC Transfer Status Register */ +#define US_PTSR_RXTEN (1 << 0) +#define US_PTSR_TXTEN (1 << 8) + + +int usart_init(int baudrate); +void usart_putc(char c); +void usart_puts(const char *s); +int usart_getc(void); +int usart_tstc(void); +void usart_setbrg(int baudrate, int cpu_clock); +void set_usart_base(void *usart_base); + + +_END_STD_C + +#endif /* MERLIN_USART3_H */ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/libnewlib_addons-at32ucr2-speed_opt.a b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/libnewlib_addons-at32ucr2-speed_opt.a new file mode 100644 index 0000000000000000000000000000000000000000..aa673eccdd47c07f3ab27c1726263ee9a8306143 GIT binary patch literal 25540 zcmeHPe{@_&d7US%q_?Y$B0I9ZvJ|>b+(Z~vUMs?}6XU9i2%F$i1BR-_@k*A~mJ(T7 zq_v}fp(>dCs&NxyV+Tx+Nu1(RS~!gX7ktXn!Z|jWp8VmHq{ZdP#OKrmlc>Q^o0_Qi z&YN#EyIRX~fMcK?Y2MuLn>*k9cr)|ny*K+7tmqo*?p+yK9M5-4nr~`ZzO-dY^OATx zp`+YmJicuCGLxV)qLf;pR46v-D?5}b=I2x^Rp_rjqSUY2-+oG|i}`n+QHuWE@u@zA zbjAH}I-BawY)<vQPi>rpn|spzUH7TfP<mtEa5g=ZN{@7>GughufmCnTKu>>q$cY>7 z?&|Ni`XD}~m1^@qAoffeP<;b^*-3F&8H1^8*ZTgnVtM)okmb<kOm;Z6zH2z`Sg|q6 z<TuF;>{`OGvSqhA80y=U=}&J;BZHpQ@O?oc`-Z!+SyXnzaJDO}Qo(UU_dvE^rTY5@ z?op|G`uc&<KAFBA9cKGBr3W|ku!%Mg1f29px_e6+RtATV;@+;ltQzjyxB)3qCBn?m zVE3l3VMOW{=o;F%MWqHa=>e7M?jJ-oQ(&eMogP8j)V)J}S?Gq+UC45HJ&iKgVUrxC z9LjFasLjI&Q^;cd&_>;Ofg)%(9hcdh?KU*jKwx&*LJ)=xfhD7ryEkQ2|KPwzhN<+H z^<B(0o6yH4`q-?GH}Qzm$;zaL`!)p?3XrZ;09lCu=~@L)*EWExu||svhj0F1o+33j zi>fnH&_(+OHZ~0|j-YQN5LP@c^T84fdv_*Sl1MCFx)kv@FUOItGxBF|UUj=y;$d1a z&WrsWkgGVT<rW>^pk}G6r2lAi-GzXk^fMM8_fGzkYD-4O?)lz_U#z>WE*pNOvOM|p zLr<@`5LMyXE64sqsgs9PTlI3H=SwtRnUk<I=La^u4~(<|MJM1q<!!BsUd4zg55^G} z$~6*+FxgfW+Mz4)mfLQ-CEoCsx4rB2@s_6Mrsm)4%5F;cH!Z<mbG%^_n(*G6n&ZQn zba!7@|Ldn}lxiBjZxaSC!t78G_6o|TN3yD^rz_i~n$`~wtEM5$DNWQiagduy$I&|T zkE1nHkv7znm#8Pbe)GoEhM}%aY1Py{xQWBsspchN9T;qea>ESH;$$*8&kGE%^b))q z5zn)9Dc%xe&&}68Um=rEBSOJ|Wg|G?`lPNldd4x`Tj1S#v>H7E?ZieKB*B1X2XPR4 zEQ{E?3)r={3UU%&oY=s%G0)yOWR{WTV>^hwyMbv>+GVGSL!h15+X{(1aeDxY<$Evm zk_NE67l*y@%(oI=@_h){wKoQtZ6HqKW<eok1N5%L;bTIg!eE9allstFVAdIH0ev2r zFL4;&u~)|Sdjq^Uu_v;GRv%Im|0PO>FlOV7?36>tJNaqZX&)_1U(;qm=J~M>GS@y8 zMiD}0l&wQN+toVAoOG&;B04*0^IAt{ehZD9M7*y!5qI;*rG_&BIHTSSb(5@2#uII^ z{a9y|+ZVg+`=WO-)a9==E%K^h+IILjFp91c@QVy)-b;a5SK^fhlhX=3&*<9_O4(q` zmYMxo^e%=v!uAirqYr6Z0}LOLb05Q)6<iNYK3&}KSsr-HZ$LW;zY$pYD66*L0zSOu zFGKl-zXDkE7Y7%~;F5^rrLLdNEzM>@J(KHa$!e6rV=3So)EqVY$+xcS$92>1@YhAh zE5nV>wKV+WRh|<0hu>-KOjd0zKl2k$-8JWh?~Hb88!Cq$^1@-|;rgk@ViPaEfG`<- zyfPU{+_5_{;*W>Jk;O;H?(jl6PizG#r@f}4?engwI7f;)ak2KQ=tsQ!OLkyv(6K*? zW50Ff7ImeryVI@bolEW{Eq`h6Q1Vv!j=tD}--#|<`*UH?lz#&duz#Db?QTEe_@={n zbgy9*YanCHscVd$JocFmc#cV#zgGdX?}-z8?}S1yV8tUih&`qid+!H!?X87etbAKc z8U%C|$8ZpP7-81lW5BMxEM)d~ae{Y1;grv(4d%=G@>(P1`v+jx-U#Gib^w4A8(fDA z2K3`Nbi&gf+fD2p0cKuiSgOyNI0V{>jWI~fR~&i$A|MprcO4AqkK%9vp83kUEDHQ1 zc*mZ{y7HPJPT~sJ9)AkLPlbd~cnqa20n7FvDgjUf&ucNu$9_?;_9$olxegL1_C%J@ z>aWn+L(0Ju#rCrfvaB<-4l>)>I>>CpxkeGYE@+EpBUeLa|G(3TXMgx(BbOka{qG(l zw?Jn894B-k7_U-AZY{f=2OtH}zq*Gbrc5~hHv;n9bA2M~3CNL!0Y#53(X;Of2GnaK z){*rVJ!G4f{YdmKMjz8_qt}?P&$SU<2|Vqy&%u6}b!mi$U5yjKHvn^uH6MNvyp#t# zTTbw*rM@i=$Hh=ravfvFhsG>Fe5Lexw9m!XRhrK{;4QxaZ769`9(P@(`OF{Q@|U6A zgpWBiSXY6w%9L$2Fudij!Mq~;4q&|w0|#@pw%-X1Z}~lFE8+J7YrcKxH5@$tu<N$v z#h-iJbaUb|)@`N7QHIHN+dNg{KKI}n4C}MjWO&FQ|Mr9$Kk}+N7oAl)9#xG=e<YkK zpS|~|;nGD<-M97=XCt#!P54Y$Ejtq~y(Lq3*L<wyT4CKd*vTboVLhBI?~iswb87r| zu(IoK)nU^AXf(DvS)Pd|@Z=>~Sv@xqzTnUCU-FgzXzinw<KLP%m#E!UnecbT7N1}I z@Yo$Hp7YLCg>P8=>e$;<YtBP%Imzo{;qe9WYkziR;`C~N_Rgdq+co#&HM=w6j&M#T z!)N?CWmW!Aq&0fhSGS(^OIMydI&tBwAAaNN@QA-V_LJkel8*T~HTEzr=8JNw<CdJq zl4in5e{Sr>SWdlC9&R}Kk4i0xjYq=Crw&v<^a7;%y^DYT{B@JeuN@*U=d<=X-_aik z^c@k{4JRvy{A74`-FSKU4Ll2%b`#?q8q=<Qql|Yfas1Xea<aY3zu((Ib>3QH8`i}4 zdk@$(alMn~L|au&TUBhE_mPtOOCJdBD7#{7V%~~Q4wm47v$JBIT+mvQ`y^}XV`wL> zUhUdsc~8KKJe&@maHUw7Ze5I2N<TPjf<m6In}_6j*-SNaz@xdo_oaJGseaLgGtSX( z*mJQ6`y%F5+&u>KJUcY|E9X_ti@g5RwZiL8N&!yrTY>c;&{`E?I$kqrk7>o;Ah2t% z9dZ(0oY=S<3c-L8%*hIKy0*tLDfYGlyY?t=gBK?@9)LnHVB|28(GJTOF>$Q#XW$)s zUNz(s@Z!YA6Ho{Sto#O&!KSuHJB(wPgQq<#vFN-rI5_Dn=Cy$35#IPkct4yO&np9u z`5NcZ-ZqgCnlfmLQ=Y3v5qANe?ZP!7<4_NeYb3{BNfvS&yf}#~Sc{i@3CTDX#0ig~ z^c}#8e(=TsxCUij%$IFnuoe%mg6^B};>4cF5?cMQ=~`UY<9tpiSeG3gfNS%5QxV1& zuGQHtO-?*z>yV!3z&gmhufj7n?c_P*JB-Y=JICh+BPSuVAC4G#8)S};2aT*x3h+k@ z<edfbCko_!Mm_<1=uhhDf_Pl517|ApwLE!p{>S6b{Mmi##9lb37rQtWyCO}!3>98` zHVmcHY7<`64x$vu2JiCpd%YqTB1Y>Md)eS6-x8^hx$j^bv)yG)4%x2B**>CoF_RQq z|6{D^dx};NFz0IA4$N~db`WRnBQClSadb&|;kX!O^KV344?NDl#=XEeJwER#%sBOb z7q}lD_ZS*yfL~|$oFkBrPRstZ$l$HOjRubbqc3WkD3@AiZ~~ZlOWA;{U`soc!<HX; z&lNrLo+lW2+xjB!nCOvrt>94%4Z+)BS@Lo*+F##K9YQ?XR^Lx;2S$Ch{xEQx(SHoM z9hmdie)v0${(Zo2Gk87lYGAf)4jy&a_#43QHuwlI(pV14Y&oL_9|PxMVD<;vM47@o z7tg>yV)Q5@-@#Zr7^BwC9)pjA^Mv8k&R+xb{1P89oE-3H4SpW@?+s>|F~8d~u#Kb* zf$jN18`<-fbIuFW+jD_B*DXYPI@GORFzPc$Fv@zZV3fn2(-TM|`MMbD>Ixh}1P0dt z!&l4oA$IZmR-Kml!CQU<#-OBa1g3qugt6ZO3~%|%Fdl`!0$BJ-!(RnHyydS({}=um zVBz-|elPg&mfw%|7k&m<^UbCVbJyy;Z@9>P>$2sS^S+_t6v{Ap-?~!Wy6)9=KZk$y zxR;Fb-s<@hFpT?c(eXXUFH#qCKR-5iSIx)c^&O4eq0kZG9c`lGrLqd$Zj1jrdUMW; z?#2D|SkRKOj|Y;pW)R|jUfaQ)ycgJr?Pj~bR8|?CsSVU65_>$0cSJdrjVAqbVHFPc zP3#IkUqWk%BaizhB1wOjU+gY8_V~%esx9F^R{z+t$Na|{g7z8f_d@#aTE#vY)ZpJE z`KeRErXaH`2s^6uz957}cLqUUbZ-#!dUud=_Xp)~5YoGXzzg;T$;KeFCn$bzU$!@n zjYaABf;YvN#0Q7s&ERs6&16(hdYG{o+L*wm*(<`{9u3ZnKF&nO9Aq7C;>})?{AU9H z7xabg_RDIQLc5sft;4gHYQATDpmaxwN;j^(AkHmMt8<=Q`@G(}yoHu`rQT5%-=pU~ zRSCB1IU2Kb&(-Kne6AuGx~@iV+jA9qG`k8jtP50=d;i=BGt^y`*%9cf^yWZUp=Sa| z;cOYq*V^5Kj#@wd(R=Um9!crh!=(k&h^q;98oC<2>CjaK`wv}>-iqid^sYo#5o}O& zHTpJ0_A2VfR^6M2QoZS}Oe!-t+|<16re>6Vkh{dVg=|Sv%Wvm%EN4|=pB*$}?CC+w zfsFNkJq{e3SZirL<0xaDt)E};o{MfNd@*}}2)%0$>pg3aX~kX-FxOpT59_?5_EIJd z0=juEI7s<?V6nFa*tK^H<YMJ}uStV|ZeA-6VlM(L_8tIs?Xf-FIf^{G55WrtoVN;x zHSpxquGo7V*tLgsYEgSTO&SDr^Y-B&_Nsuz9_}ad?Daq{R=%f98U%Fn&f*~Us)5Dc zSApH~jX*AD5BDo>ePc<;VvqB<*!x#t*WPx>#q1q5X%NuG_TnJ+$QOJ63GCY22f3KN z@0&CT=wjnIh`qVMV((|buDyehi`n~$NrQl{wjBqt$LpT4=kfiwYwrl;BKGt%Q>HPl zb`OBq<Nc=C!!v+9dnX_lv&VZ)*WMY(Vz1uBp&xpSf!*@4U5eRTWYQp@o8O9q*khTb zd~XJJ?0M7|v)5|UAfTJS69=&u2Nrv4fn9rS+alxF<2!SwzVlB*<~Umcf1QbAeTRTu zdu)qh<=bS^AfTIn76&QcLSQN1hk;#t3CP9lebA&qKv(CEj~k#6d%J*Ld+m^m*?YvK zK|oix7Y8X{1F+cp46tjj19GwUd%~naKv&0pz_w=l$+>6y9fIuITML<W5yyPtJU)js zm~y?31ItW%jqp;wZvngZ_Cs!m7iVmE--N<oM%C}ZLF_e|IF|3bz^=X1kXzx!iM?l` zaO_>nHah^%@+C|h?VSO3?3Iwm`AnQ?OONxAYwsDzNU!ZRn>gBg71*`M{1(EClk%O1 z!nJn-@-}$#TTC46m9Q*6JRV2Wm2~3Zq!V27dgz%i%L1o)2Lr5+OoRB6HwB@@l%nsI zEE5T#v8{DZKCkOU)Tj!|M?T|NzB>^zU*q(C<2I2HN?gJFjj|m``_3Xf@=cpFcGga0 z)e69JUk}fGtKkdYZ_GK4tdh`+lYB*%(CU9p-)~4cdBRyw>ma-RlJPiqlMXVkbJjtQ zSpfhtuQS#`uD1dJWX|)}L5^Di0P=MO^1=d{^PF|yb1Yd0ne&WwkQ=Q40GZ?5I>;QS z)<HIXJ5WJxv5^3fmm)x))Q<0eC|ig4o2>u<+3oj~xptH`;QJl+HOWKX_uOi1Q0BO7 zbL0rH^uZd$vn+pP;we`Fzsr$%e&6HBJipzJ%=622D;?AG{NAUfK<4@Vb4TX+<@%M5 ze4bx<-$a>p+rvmW%5jAIDZsHl_*b9TQV`Gc`$b3Q`918&Jiq^9WTxl&<+_fJ@56Y0 zpV1NyrZaQ?rfWw$&-Y0!;b7v=7`YYk3E)=>;wSQDucAPfF)$nH(O<l4P5eU0IF}xu zcWW2q=h;4GWZNgSY##{Y#{*Mt9g9CK_;vn4U-0uh{hPetw|#*Ej~eh^F8G;WaC@8{ z=)ne%R0_X@92i8X@0s<TG}Xm^3Mg;)^m{#h<83!44zs;W;Mw*VmNUiroeReh#-V;k z!&AaBChsf|7iS-(L)`U(Ic|jGVw53rBjSwB2;ci$%qGY73~g3AHY=yI$-HK0GwRrk zPG^&Izzl6(<=DJxI-BvC+pKbIR!wI!F>{+&J2tPL&L+p|4C`L)*sPw;X6wvt&T?$d zn$9M#2{SC`Y{%y8>1?i^xy@@Fo7YTdbM4G+x?_2cV}H(c_Iqb;f39P5?sPUYGq*X< zu{m!#n<F!{30kb!z5>iIwY-)$!Xwm}*G^oIYnkr~c+6F`yocxb1+SK6YlX)(QFGdX zxgL>u3~83h{05$$_eK#9o}KsD&xG${%$f6<R|7oOAoE!^Tn@Q@oX_%b9K{WX^Cfum zSss=X*L2Nk1?GB6>?6%BQXcShdG;b6JX;>tLHI7lJX}Zn33!yP&MBMLw?L2Ucpb~h zH4A*5loMss9F`63R>$^7d+W7?<ORF0ld{3q3c)Dzn*<~MO2Ms2FKJ!O{Hf<Ps~qpp zSq7djl=)hgnQINS=e4X$J$$v{#DNiaEz3p@(};cGKahNprcH2MsoMlI6uyh0UQmHU z2p)N9%<~1mfMukEeY>ALZaB07Z#if~`z{`BrR}iI;VoyG^ZvcnaN5Cvx16N&&V9Av ztN{n!ayp#%>}%ycJ2<_D-wzCL`582?)Flhd`qGUW{x)EE%YV?>i@qIL_<Ib0FZl45 zzYpC-?C%E_{ud1YAo%c>e+WNu5&mId;U6*lW8lME{xj$j!aoiy{4v8n1wOpxpT;&d z;hzB({yD?H06x6%NtHbeUI^Imz3PDP)u6k=TYe1p(8j)34=nr!!*2v1-trTevV`9P zEc{l(ZwDXV@{`yLB>Yvt!tXHrwcx{BekZ!C@OurX9~^kg$zbn_aI(N+bJXy+fe&x_ z4`P@Je><@7_Za?O@Zl|gAD)K`e?PGBzhL+W!H2i}Ll{=VKMXAVoZ){1e0a-0f;n9H z$AE=@!tlqyhqwGwm}7;18d&(}4F3Z7@WRLRsp<^BBm`{uC8iIQ)L@AXZ}~AyPr|PU z7JfXiU$PK<c*}3V+$H=*V9nRJ3eMLoF8P~|=9@3$TNb4wsMO@%m|8U#do@PS|FD|- zEXvM>=Y*2}>|4)&xy(QR<xq8|>ZNGOooB;yy;myL@>e2P`PH8skIpSUcLWWaoOqRc zM7GvG{copxmHLy4^EiLAlRy4$uJlu}^FNps{?tR*Co+osl>57pq@RhLJvwn_$p6tH z<>kDyM<!0~+8X>yH!n`<xYOBw8y9XmIut#BV)8e=wGVeh)?sf*Cj82`Cr&jTU3@{T z?v5}{nB0%@`{$BncbA_zI&t<ff9!5Q7u}OMTKzY%-H%4NALQjTK?}U(&k5aKS-s-? z7tsP=3{}5aVd@_>_5Z8F`fri?mzny1FIT!-*MIjzZ}bz<kNVs#!&V5~#8{M|aK8rn zk##-zt;GZ8w-%agVu)QCeQa8pHeEjYo4!UO&~AI)UV<yO7r_0vjq_TW+hU#X+&D4L z?e!F`zQ>-T)gQu{qSfETnWE)Qb?`}(rYYI~;y=8oL(6l_W1XX2iwPw#^MP6b1u-6% zX?HQ+jfnN(FU8~j-oku)wB_IsGPn_;V8HMi9O${mqMn|8>JE6<-X5bzpq<!gha?y< zd;o_P@U+J^5PN(c=i1v3nf+Uw*jNXJV8HMx9Fp*~$97;G%Xc5VYcB`6n7u6Yj=c!$ zFZQthwD$fI*tK^8at*vVvGFhzf&nA6FZE@)q<l{SyY|K*H^7S%8~dOT3>d++)1D8k ziLJe_0z3BfZ;`h{Cr)g92@1i0mBjt<Y(HGrti5Bvv}gL2x8KAe&`xZ89};=Sc?SS? ziiA*j|KVW3$_$dN1z^6{m^il2%kYl961H6%yf}#~c+XMtK@iRf38C;9@<MK0MJJ+0 zA;jRNz6=ZAbNFM>4Z({Odm>9{^}nI-IaqHxKF8;Mm~}YuJTKNko&!Ppd=JPxw+jq` zzuVw=P8hi!GRNbsj?D3NyOC=U&-49uBR4>1e`cSc+YXuMWuumGpb&h(3_r1OCguR* zV)4uSHX5!W^5rU>JIY<g`%sn*#n8XY?gU2PEJHE1p0eCa0^9xMJ&xYRQ0w1lvyIqp zk`}T}%k~kyi=o!Pp<o|Io9XY=&<<tc16w=wj^4#k>)$>YJNh>cuhEWvhRjpMb0}qi zY|FrYBYGF3?)q8rLd2sS5w<hiG;T0$GEUM0Tbm7z-o>z~pA~OIJf3OjXT=W!gHuWS zBk&!-%!l|x@M0fntbL@hzt`CAa9j+vzV{3PpsX6Re(?7G6!o&t3ef)cn?5Ly<~M>5 zZ}|yy37J<~fc1R=ILizl{f>Rl@>`u}2<^baPa6Iz@Zl|gHO{-(Ujr<Bw23ayTJYg5 zzZ27=@OyxT-)s2&;KN&f2Io%rSzzI#t+oBF;KN(~D9(lO(f+}+1&nBXm~iq&NbZB0 z@vWj_-}HN9q9q=<nS7H-p^UgjpmpIIRD}xt;8^Fxx}TrKv7>U`)$9J}a=v<}t<3CD zZ2ed5B$akp03ETp{_=THo)g}U(E9L~;uTykwY^5iqS#~TTra%`A$P)ajtUvi@)le# zz0=SYs|VD@9SSUYY64^@UtJ;A$#P(vm~~}Yn3-4j6-)an%yb*uXO<N2GtDh6=F3+z z=`*1f$ab>NgoARhEdTF*^IPD#ujl+<hL@J0Ex`;gCA-`!fuB2>^N)K8{X3uICC`=u z*YnAU!Ho`HAvhUneSbDGK3`Svn;omSKKIYhUZ0GbFoNITgc$#1|JkS_OIcQFvTF4Q z!7fdP?y7n2`_JaBG_OSMk>_Q9<<!nLms8+k^S_&3=DP(@5_1lu3$9cF=23Ws^Z&(o z1^54)YTfD9VqOzC&l^{909lPe;5A(4|0r<5^+YG({3uS!$Iu$b+GjuPwL-_SQ3=n4 zMXo31r=b5jyg0EZ@{|w_mB)eX<ZG`dHXY)bH_~{kjgm5Yq9<)g`3A^aoOs09{cnuF z6LOCezZUX<Bfr;R6%X>e7x7HTN;CWbWY%Bg4@0hZ<cA<PI5M9@Xr~h?_2~ln^9Az3 zJXwB1KG}6evmQVExF<7+UxnMRZU-OEPEE$(r*7s;-~4{Hd@Fn?o!vZy?^{o5T-vms zl{Oz3M5e)~zzaSTu79qQ_YuONGB~dxJU7ti4Qm05ai3-}?n5lbI^SZvC$tzdlEt`B z(3t1`I!BN5Z#jz`+~nY92QPIn-YeU*D;?bC;M*Pi4hOGy@X#dor0(dGx*wVQ77ybo zg!iU=w!!yO7RMcov2FFJX9#l#-|u*>z_>4Bzoysv2Z1pzEN6q^pl`E(TMo*h@pkC> z3`WX>a>#ePn8&Pzh=b#La<*Wkk>9s_k06q1!?G2Op9<$P?ow;G<@k8@Wvu%zun>0L z@2fI=v-`;tUwQd+$Mm<RVxI(xpWJ^;Yvgyr)V=(--;Tfh*>A;9?hE49UC_*ZLE1pF zoKL%)No`T?6E64UlgGY-b;C5*BKv`D_p{rm)MdChxST67cC=%k-)S&|kiooG2?i|f z#es7?(=k2ccrCcW$e2>KJ7Pi!$fZO7)ARnNcm>xMMSHw{i4%JaF&@O}XNAu|;<c&_ zp5@~-S#YmX$}+zPUYytyc}j=^=W!rQ9W)mL^CIVCCNZ(JuZjn8e14`K3kAn{ej!0T zh-W);FN(;lbJCG-1zzXKw*zM#`R%|DTe*L55a0FJTLkTw`(^hae?1s{mH)MTz~5wH epHX1m^|*qI!($$mIe=~9@%b*>g#Am;4gU-8$Tuti literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds new file mode 100644 index 000000000..59152ac0b --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds @@ -0,0 +1,266 @@ +/****************************************************************************** + * AVR32 AT32UC3A0512 GNU LD script file. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: AVR32 AT32UC3A0512 + * + * - author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +OUTPUT_FORMAT("elf32-avr32", "elf32-avr32", "elf32-avr32") + +OUTPUT_ARCH(avr32:uc) + +ENTRY(_start) + +MEMORY +{ + FLASH (rxai!w) : ORIGIN = 0x80000000, LENGTH = 0x00080000 + INTRAM (wxa!ri) : ORIGIN = 0x00000004, LENGTH = 0x0000FFFC + USERPAGE : ORIGIN = 0x80800000, LENGTH = 0x00000200 +} + +PHDRS +{ + FLASH PT_LOAD; + INTRAM_ALIGN PT_NULL; + INTRAM_AT_FLASH PT_LOAD; + INTRAM PT_NULL; + USERPAGE PT_LOAD; +} + +SECTIONS +{ + /* If this heap size is selected, all the INTRAM space from the end of the + data area to the beginning of the stack will be allocated for the heap. */ + __max_heap_size__ = -1; + + /* Use a default heap size if heap size was not defined. */ + __heap_size__ = DEFINED(__heap_size__) ? __heap_size__ : __max_heap_size__; + + /* Use a default stack size if stack size was not defined. */ + __stack_size__ = DEFINED(__stack_size__) ? __stack_size__ : 4K; + + /* Read-only sections, merged into text segment: */ + PROVIDE (__executable_start = 0x80000000); . = 0x80000000; + .interp : { *(.interp) } >FLASH AT>FLASH :FLASH + .reset : { *(.reset) } >FLASH AT>FLASH :FLASH + .hash : { *(.hash) } >FLASH AT>FLASH :FLASH + .dynsym : { *(.dynsym) } >FLASH AT>FLASH :FLASH + .dynstr : { *(.dynstr) } >FLASH AT>FLASH :FLASH + .gnu.version : { *(.gnu.version) } >FLASH AT>FLASH :FLASH + .gnu.version_d : { *(.gnu.version_d) } >FLASH AT>FLASH :FLASH + .gnu.version_r : { *(.gnu.version_r) } >FLASH AT>FLASH :FLASH + .rel.init : { *(.rel.init) } >FLASH AT>FLASH :FLASH + .rela.init : { *(.rela.init) } >FLASH AT>FLASH :FLASH + .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rel.fini : { *(.rel.fini) } >FLASH AT>FLASH :FLASH + .rela.fini : { *(.rela.fini) } >FLASH AT>FLASH :FLASH + .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rel.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rela.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rel.ctors : { *(.rel.ctors) } >FLASH AT>FLASH :FLASH + .rela.ctors : { *(.rela.ctors) } >FLASH AT>FLASH :FLASH + .rel.dtors : { *(.rel.dtors) } >FLASH AT>FLASH :FLASH + .rela.dtors : { *(.rela.dtors) } >FLASH AT>FLASH :FLASH + .rel.got : { *(.rel.got) } >FLASH AT>FLASH :FLASH + .rela.got : { *(.rela.got) } >FLASH AT>FLASH :FLASH + .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rel.plt : { *(.rel.plt) } >FLASH AT>FLASH :FLASH + .rela.plt : { *(.rela.plt) } >FLASH AT>FLASH :FLASH + .init : + { + KEEP (*(.init)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .plt : { *(.plt) } >FLASH AT>FLASH :FLASH + .text : + { + *(.text .stub .text.* .gnu.linkonce.t.*) + KEEP (*(.text.*personality*)) + /* .gnu.warning sections are handled specially by elf32.em. */ + *(.gnu.warning) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .fini : + { + KEEP (*(.fini)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + PROVIDE (__etext = .); + PROVIDE (_etext = .); + PROVIDE (etext = .); + .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rodata1 : { *(.rodata1) } >FLASH AT>FLASH :FLASH + .eh_frame_hdr : { *(.eh_frame_hdr) } >FLASH AT>FLASH :FLASH + .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >FLASH AT>FLASH :FLASH + .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >FLASH AT>FLASH :FLASH + .lalign : { . = ALIGN(8); PROVIDE(_data_lma = .); } >FLASH AT>FLASH :FLASH + . = ORIGIN(INTRAM); + .dalign : { . = ALIGN(8); PROVIDE(_data = .); } >INTRAM AT>INTRAM :INTRAM_ALIGN + /* Exception handling */ + .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Thread Local Storage sections */ + .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Ensure the __preinit_array_start label is properly aligned. We + could instead move the label definition inside the section, but + the linker would then create the section even if it turns out to + be empty, which isn't pretty. */ + PROVIDE (__preinit_array_start = ALIGN(32 / 8)); + .preinit_array : { KEEP (*(.preinit_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__preinit_array_end = .); + PROVIDE (__init_array_start = .); + .init_array : { KEEP (*(.init_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__init_array_end = .); + PROVIDE (__fini_array_start = .); + .fini_array : { KEEP (*(.fini_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__fini_array_end = .); + .ctors : + { + /* gcc uses crtbegin.o to find the start of + the constructors, so we make sure it is + first. Because this is a wildcard, it + doesn't matter if the user does not + actually link against crtbegin.o; the + linker won't look for a file to match a + wildcard. The wildcard also means that it + doesn't matter which directory crtbegin.o + is in. */ + KEEP (*crtbegin*.o(.ctors)) + /* We don't want to include the .ctor section from + from the crtend.o file until after the sorted ctors. + The .ctor section from the crtend file contains the + end of ctors marker and it must be last */ + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) + KEEP (*(SORT(.ctors.*))) + KEEP (*(.ctors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dtors : + { + KEEP (*crtbegin*.o(.dtors)) + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) + KEEP (*(SORT(.dtors.*))) + KEEP (*(.dtors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .jcr : { KEEP (*(.jcr)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dynamic : { *(.dynamic) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .got : { *(.got.plt) *(.got) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ramtext : { *(.ramtext .ramtext.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ddalign : { . = ALIGN(8); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data : + { + *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(.gnu.linkonce.d.*personality*)) + SORT(CONSTRUCTORS) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data1 : { *(.data1) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .balign : { . = ALIGN(8); PROVIDE(_edata = .); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (edata = .); + __bss_start = .; + .bss : + { + *(.dynbss) + *(.bss .bss.* .gnu.linkonce.b.*) + *(COMMON) + /* Align here to ensure that the .bss section occupies space up to + _end. Align after .bss to ensure correct alignment even if the + .bss section disappears because there are no input sections. */ + . = ALIGN(8); + } >INTRAM AT>INTRAM :INTRAM + . = ALIGN(8); + _end = .; + PROVIDE (end = .); + __heap_start__ = ALIGN(8); + .heap : + { + *(.heap) + . = (__heap_size__ == __max_heap_size__) ? + ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ - ABSOLUTE(.) : + __heap_size__; + } >INTRAM AT>INTRAM :INTRAM + __heap_end__ = .; + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + /* DWARF debug sections. + Symbols in the DWARF debugging sections are relative to the beginning + of the section so we begin them at 0. */ + /* DWARF 1 */ + .debug 0 : { *(.debug) } + .line 0 : { *(.line) } + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } + .debug_sfnames 0 : { *(.debug_sfnames) } + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } + .debug_funcnames 0 : { *(.debug_funcnames) } + .debug_typenames 0 : { *(.debug_typenames) } + .debug_varnames 0 : { *(.debug_varnames) } + .stack ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ : + { + _stack = .; + *(.stack) + . = __stack_size__; + _estack = .; + } >INTRAM AT>INTRAM :INTRAM + .userpage : { *(.userpage .userpage.*) } >USERPAGE AT>USERPAGE :USERPAGE + /DISCARD/ : { *(.note.GNU-stack) } +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds new file mode 100644 index 000000000..a5926d8be --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds @@ -0,0 +1,266 @@ +/****************************************************************************** + * AVR32 AT32UC3A1256 GNU LD script file. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: AVR32 AT32UC3A1256 + * + * - author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +OUTPUT_FORMAT("elf32-avr32", "elf32-avr32", "elf32-avr32") + +OUTPUT_ARCH(avr32:uc) + +ENTRY(_start) + +MEMORY +{ + FLASH (rxai!w) : ORIGIN = 0x80000000, LENGTH = 0x00040000 + INTRAM (wxa!ri) : ORIGIN = 0x00000004, LENGTH = 0x0000FFFC + USERPAGE : ORIGIN = 0x80800000, LENGTH = 0x00000200 +} + +PHDRS +{ + FLASH PT_LOAD; + INTRAM_ALIGN PT_NULL; + INTRAM_AT_FLASH PT_LOAD; + INTRAM PT_NULL; + USERPAGE PT_LOAD; +} + +SECTIONS +{ + /* If this heap size is selected, all the INTRAM space from the end of the + data area to the beginning of the stack will be allocated for the heap. */ + __max_heap_size__ = -1; + + /* Use a default heap size if heap size was not defined. */ + __heap_size__ = DEFINED(__heap_size__) ? __heap_size__ : __max_heap_size__; + + /* Use a default stack size if stack size was not defined. */ + __stack_size__ = DEFINED(__stack_size__) ? __stack_size__ : 4K; + + /* Read-only sections, merged into text segment: */ + PROVIDE (__executable_start = 0x80000000); . = 0x80000000; + .interp : { *(.interp) } >FLASH AT>FLASH :FLASH + .reset : { *(.reset) } >FLASH AT>FLASH :FLASH + .hash : { *(.hash) } >FLASH AT>FLASH :FLASH + .dynsym : { *(.dynsym) } >FLASH AT>FLASH :FLASH + .dynstr : { *(.dynstr) } >FLASH AT>FLASH :FLASH + .gnu.version : { *(.gnu.version) } >FLASH AT>FLASH :FLASH + .gnu.version_d : { *(.gnu.version_d) } >FLASH AT>FLASH :FLASH + .gnu.version_r : { *(.gnu.version_r) } >FLASH AT>FLASH :FLASH + .rel.init : { *(.rel.init) } >FLASH AT>FLASH :FLASH + .rela.init : { *(.rela.init) } >FLASH AT>FLASH :FLASH + .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rel.fini : { *(.rel.fini) } >FLASH AT>FLASH :FLASH + .rela.fini : { *(.rela.fini) } >FLASH AT>FLASH :FLASH + .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rel.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rela.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rel.ctors : { *(.rel.ctors) } >FLASH AT>FLASH :FLASH + .rela.ctors : { *(.rela.ctors) } >FLASH AT>FLASH :FLASH + .rel.dtors : { *(.rel.dtors) } >FLASH AT>FLASH :FLASH + .rela.dtors : { *(.rela.dtors) } >FLASH AT>FLASH :FLASH + .rel.got : { *(.rel.got) } >FLASH AT>FLASH :FLASH + .rela.got : { *(.rela.got) } >FLASH AT>FLASH :FLASH + .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rel.plt : { *(.rel.plt) } >FLASH AT>FLASH :FLASH + .rela.plt : { *(.rela.plt) } >FLASH AT>FLASH :FLASH + .init : + { + KEEP (*(.init)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .plt : { *(.plt) } >FLASH AT>FLASH :FLASH + .text : + { + *(.text .stub .text.* .gnu.linkonce.t.*) + KEEP (*(.text.*personality*)) + /* .gnu.warning sections are handled specially by elf32.em. */ + *(.gnu.warning) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .fini : + { + KEEP (*(.fini)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + PROVIDE (__etext = .); + PROVIDE (_etext = .); + PROVIDE (etext = .); + .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rodata1 : { *(.rodata1) } >FLASH AT>FLASH :FLASH + .eh_frame_hdr : { *(.eh_frame_hdr) } >FLASH AT>FLASH :FLASH + .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >FLASH AT>FLASH :FLASH + .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >FLASH AT>FLASH :FLASH + .lalign : { . = ALIGN(8); PROVIDE(_data_lma = .); } >FLASH AT>FLASH :FLASH + . = ORIGIN(INTRAM); + .dalign : { . = ALIGN(8); PROVIDE(_data = .); } >INTRAM AT>INTRAM :INTRAM_ALIGN + /* Exception handling */ + .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Thread Local Storage sections */ + .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Ensure the __preinit_array_start label is properly aligned. We + could instead move the label definition inside the section, but + the linker would then create the section even if it turns out to + be empty, which isn't pretty. */ + PROVIDE (__preinit_array_start = ALIGN(32 / 8)); + .preinit_array : { KEEP (*(.preinit_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__preinit_array_end = .); + PROVIDE (__init_array_start = .); + .init_array : { KEEP (*(.init_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__init_array_end = .); + PROVIDE (__fini_array_start = .); + .fini_array : { KEEP (*(.fini_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__fini_array_end = .); + .ctors : + { + /* gcc uses crtbegin.o to find the start of + the constructors, so we make sure it is + first. Because this is a wildcard, it + doesn't matter if the user does not + actually link against crtbegin.o; the + linker won't look for a file to match a + wildcard. The wildcard also means that it + doesn't matter which directory crtbegin.o + is in. */ + KEEP (*crtbegin*.o(.ctors)) + /* We don't want to include the .ctor section from + from the crtend.o file until after the sorted ctors. + The .ctor section from the crtend file contains the + end of ctors marker and it must be last */ + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) + KEEP (*(SORT(.ctors.*))) + KEEP (*(.ctors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dtors : + { + KEEP (*crtbegin*.o(.dtors)) + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) + KEEP (*(SORT(.dtors.*))) + KEEP (*(.dtors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .jcr : { KEEP (*(.jcr)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dynamic : { *(.dynamic) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .got : { *(.got.plt) *(.got) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ramtext : { *(.ramtext .ramtext.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ddalign : { . = ALIGN(8); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data : + { + *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(.gnu.linkonce.d.*personality*)) + SORT(CONSTRUCTORS) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data1 : { *(.data1) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .balign : { . = ALIGN(8); PROVIDE(_edata = .); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (edata = .); + __bss_start = .; + .bss : + { + *(.dynbss) + *(.bss .bss.* .gnu.linkonce.b.*) + *(COMMON) + /* Align here to ensure that the .bss section occupies space up to + _end. Align after .bss to ensure correct alignment even if the + .bss section disappears because there are no input sections. */ + . = ALIGN(8); + } >INTRAM AT>INTRAM :INTRAM + . = ALIGN(8); + _end = .; + PROVIDE (end = .); + __heap_start__ = ALIGN(8); + .heap : + { + *(.heap) + . = (__heap_size__ == __max_heap_size__) ? + ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ - ABSOLUTE(.) : + __heap_size__; + } >INTRAM AT>INTRAM :INTRAM + __heap_end__ = .; + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + /* DWARF debug sections. + Symbols in the DWARF debugging sections are relative to the beginning + of the section so we begin them at 0. */ + /* DWARF 1 */ + .debug 0 : { *(.debug) } + .line 0 : { *(.line) } + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } + .debug_sfnames 0 : { *(.debug_sfnames) } + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } + .debug_funcnames 0 : { *(.debug_funcnames) } + .debug_typenames 0 : { *(.debug_typenames) } + .debug_varnames 0 : { *(.debug_varnames) } + .stack ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ : + { + _stack = .; + *(.stack) + . = __stack_size__; + _estack = .; + } >INTRAM AT>INTRAM :INTRAM + .userpage : { *(.userpage .userpage.*) } >USERPAGE AT>USERPAGE :USERPAGE + /DISCARD/ : { *(.note.GNU-stack) } +} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h new file mode 100644 index 000000000..41163b6d9 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h @@ -0,0 +1,328 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor macro repeating utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _MREPEAT_H_ +#define _MREPEAT_H_ + +#include "preprocessor.h" + + +//! Maximal number of repetitions supported by MREPEAT. +#define MREPEAT_LIMIT 256 + +/*! \brief Macro repeat. + * + * This macro represents a horizontal repetition construct. + * + * \param count The number of repetitious calls to macro. Valid values range from 0 to MREPEAT_LIMIT. + * \param macro A binary operation of the form macro(n, data). This macro is expanded by MREPEAT with + * the current repetition number and the auxiliary data argument. + * \param data Auxiliary data passed to macro. + * + * \return <tt>macro(0, data) macro(1, data) ... macro(count - 1, data)</tt> + */ +#define MREPEAT(count, macro, data) TPASTE2(MREPEAT, count)(macro, data) + +#define MREPEAT0( macro, data) +#define MREPEAT1( macro, data) MREPEAT0( macro, data) macro( 0, data) +#define MREPEAT2( macro, data) MREPEAT1( macro, data) macro( 1, data) +#define MREPEAT3( macro, data) MREPEAT2( macro, data) macro( 2, data) +#define MREPEAT4( macro, data) MREPEAT3( macro, data) macro( 3, data) +#define MREPEAT5( macro, data) MREPEAT4( macro, data) macro( 4, data) +#define MREPEAT6( macro, data) MREPEAT5( macro, data) macro( 5, data) +#define MREPEAT7( macro, data) MREPEAT6( macro, data) macro( 6, data) +#define MREPEAT8( macro, data) MREPEAT7( macro, data) macro( 7, data) +#define MREPEAT9( macro, data) MREPEAT8( macro, data) macro( 8, data) +#define MREPEAT10( macro, data) MREPEAT9( macro, data) macro( 9, data) +#define MREPEAT11( macro, data) MREPEAT10( macro, data) macro( 10, data) +#define MREPEAT12( macro, data) MREPEAT11( macro, data) macro( 11, data) +#define MREPEAT13( macro, data) MREPEAT12( macro, data) macro( 12, data) +#define MREPEAT14( macro, data) MREPEAT13( macro, data) macro( 13, data) +#define MREPEAT15( macro, data) MREPEAT14( macro, data) macro( 14, data) +#define MREPEAT16( macro, data) MREPEAT15( macro, data) macro( 15, data) +#define MREPEAT17( macro, data) MREPEAT16( macro, data) macro( 16, data) +#define MREPEAT18( macro, data) MREPEAT17( macro, data) macro( 17, data) +#define MREPEAT19( macro, data) MREPEAT18( macro, data) macro( 18, data) +#define MREPEAT20( macro, data) MREPEAT19( macro, data) macro( 19, data) +#define MREPEAT21( macro, data) MREPEAT20( macro, data) macro( 20, data) +#define MREPEAT22( macro, data) MREPEAT21( macro, data) macro( 21, data) +#define MREPEAT23( macro, data) MREPEAT22( macro, data) macro( 22, data) +#define MREPEAT24( macro, data) MREPEAT23( macro, data) macro( 23, data) +#define MREPEAT25( macro, data) MREPEAT24( macro, data) macro( 24, data) +#define MREPEAT26( macro, data) MREPEAT25( macro, data) macro( 25, data) +#define MREPEAT27( macro, data) MREPEAT26( macro, data) macro( 26, data) +#define MREPEAT28( macro, data) MREPEAT27( macro, data) macro( 27, data) +#define MREPEAT29( macro, data) MREPEAT28( macro, data) macro( 28, data) +#define MREPEAT30( macro, data) MREPEAT29( macro, data) macro( 29, data) +#define MREPEAT31( macro, data) MREPEAT30( macro, data) macro( 30, data) +#define MREPEAT32( macro, data) MREPEAT31( macro, data) macro( 31, data) +#define MREPEAT33( macro, data) MREPEAT32( macro, data) macro( 32, data) +#define MREPEAT34( macro, data) MREPEAT33( macro, data) macro( 33, data) +#define MREPEAT35( macro, data) MREPEAT34( macro, data) macro( 34, data) +#define MREPEAT36( macro, data) MREPEAT35( macro, data) macro( 35, data) +#define MREPEAT37( macro, data) MREPEAT36( macro, data) macro( 36, data) +#define MREPEAT38( macro, data) MREPEAT37( macro, data) macro( 37, data) +#define MREPEAT39( macro, data) MREPEAT38( macro, data) macro( 38, data) +#define MREPEAT40( macro, data) MREPEAT39( macro, data) macro( 39, data) +#define MREPEAT41( macro, data) MREPEAT40( macro, data) macro( 40, data) +#define MREPEAT42( macro, data) MREPEAT41( macro, data) macro( 41, data) +#define MREPEAT43( macro, data) MREPEAT42( macro, data) macro( 42, data) +#define MREPEAT44( macro, data) MREPEAT43( macro, data) macro( 43, data) +#define MREPEAT45( macro, data) MREPEAT44( macro, data) macro( 44, data) +#define MREPEAT46( macro, data) MREPEAT45( macro, data) macro( 45, data) +#define MREPEAT47( macro, data) MREPEAT46( macro, data) macro( 46, data) +#define MREPEAT48( macro, data) MREPEAT47( macro, data) macro( 47, data) +#define MREPEAT49( macro, data) MREPEAT48( macro, data) macro( 48, data) +#define MREPEAT50( macro, data) MREPEAT49( macro, data) macro( 49, data) +#define MREPEAT51( macro, data) MREPEAT50( macro, data) macro( 50, data) +#define MREPEAT52( macro, data) MREPEAT51( macro, data) macro( 51, data) +#define MREPEAT53( macro, data) MREPEAT52( macro, data) macro( 52, data) +#define MREPEAT54( macro, data) MREPEAT53( macro, data) macro( 53, data) +#define MREPEAT55( macro, data) MREPEAT54( macro, data) macro( 54, data) +#define MREPEAT56( macro, data) MREPEAT55( macro, data) macro( 55, data) +#define MREPEAT57( macro, data) MREPEAT56( macro, data) macro( 56, data) +#define MREPEAT58( macro, data) MREPEAT57( macro, data) macro( 57, data) +#define MREPEAT59( macro, data) MREPEAT58( macro, data) macro( 58, data) +#define MREPEAT60( macro, data) MREPEAT59( macro, data) macro( 59, data) +#define MREPEAT61( macro, data) MREPEAT60( macro, data) macro( 60, data) +#define MREPEAT62( macro, data) MREPEAT61( macro, data) macro( 61, data) +#define MREPEAT63( macro, data) MREPEAT62( macro, data) macro( 62, data) +#define MREPEAT64( macro, data) MREPEAT63( macro, data) macro( 63, data) +#define MREPEAT65( macro, data) MREPEAT64( macro, data) macro( 64, data) +#define MREPEAT66( macro, data) MREPEAT65( macro, data) macro( 65, data) +#define MREPEAT67( macro, data) MREPEAT66( macro, data) macro( 66, data) +#define MREPEAT68( macro, data) MREPEAT67( macro, data) macro( 67, data) +#define MREPEAT69( macro, data) MREPEAT68( macro, data) macro( 68, data) +#define MREPEAT70( macro, data) MREPEAT69( macro, data) macro( 69, data) +#define MREPEAT71( macro, data) MREPEAT70( macro, data) macro( 70, data) +#define MREPEAT72( macro, data) MREPEAT71( macro, data) macro( 71, data) +#define MREPEAT73( macro, data) MREPEAT72( macro, data) macro( 72, data) +#define MREPEAT74( macro, data) MREPEAT73( macro, data) macro( 73, data) +#define MREPEAT75( macro, data) MREPEAT74( macro, data) macro( 74, data) +#define MREPEAT76( macro, data) MREPEAT75( macro, data) macro( 75, data) +#define MREPEAT77( macro, data) MREPEAT76( macro, data) macro( 76, data) +#define MREPEAT78( macro, data) MREPEAT77( macro, data) macro( 77, data) +#define MREPEAT79( macro, data) MREPEAT78( macro, data) macro( 78, data) +#define MREPEAT80( macro, data) MREPEAT79( macro, data) macro( 79, data) +#define MREPEAT81( macro, data) MREPEAT80( macro, data) macro( 80, data) +#define MREPEAT82( macro, data) MREPEAT81( macro, data) macro( 81, data) +#define MREPEAT83( macro, data) MREPEAT82( macro, data) macro( 82, data) +#define MREPEAT84( macro, data) MREPEAT83( macro, data) macro( 83, data) +#define MREPEAT85( macro, data) MREPEAT84( macro, data) macro( 84, data) +#define MREPEAT86( macro, data) MREPEAT85( macro, data) macro( 85, data) +#define MREPEAT87( macro, data) MREPEAT86( macro, data) macro( 86, data) +#define MREPEAT88( macro, data) MREPEAT87( macro, data) macro( 87, data) +#define MREPEAT89( macro, data) MREPEAT88( macro, data) macro( 88, data) +#define MREPEAT90( macro, data) MREPEAT89( macro, data) macro( 89, data) +#define MREPEAT91( macro, data) MREPEAT90( macro, data) macro( 90, data) +#define MREPEAT92( macro, data) MREPEAT91( macro, data) macro( 91, data) +#define MREPEAT93( macro, data) MREPEAT92( macro, data) macro( 92, data) +#define MREPEAT94( macro, data) MREPEAT93( macro, data) macro( 93, data) +#define MREPEAT95( macro, data) MREPEAT94( macro, data) macro( 94, data) +#define MREPEAT96( macro, data) MREPEAT95( macro, data) macro( 95, data) +#define MREPEAT97( macro, data) MREPEAT96( macro, data) macro( 96, data) +#define MREPEAT98( macro, data) MREPEAT97( macro, data) macro( 97, data) +#define MREPEAT99( macro, data) MREPEAT98( macro, data) macro( 98, data) +#define MREPEAT100(macro, data) MREPEAT99( macro, data) macro( 99, data) +#define MREPEAT101(macro, data) MREPEAT100(macro, data) macro(100, data) +#define MREPEAT102(macro, data) MREPEAT101(macro, data) macro(101, data) +#define MREPEAT103(macro, data) MREPEAT102(macro, data) macro(102, data) +#define MREPEAT104(macro, data) MREPEAT103(macro, data) macro(103, data) +#define MREPEAT105(macro, data) MREPEAT104(macro, data) macro(104, data) +#define MREPEAT106(macro, data) MREPEAT105(macro, data) macro(105, data) +#define MREPEAT107(macro, data) MREPEAT106(macro, data) macro(106, data) +#define MREPEAT108(macro, data) MREPEAT107(macro, data) macro(107, data) +#define MREPEAT109(macro, data) MREPEAT108(macro, data) macro(108, data) +#define MREPEAT110(macro, data) MREPEAT109(macro, data) macro(109, data) +#define MREPEAT111(macro, data) MREPEAT110(macro, data) macro(110, data) +#define MREPEAT112(macro, data) MREPEAT111(macro, data) macro(111, data) +#define MREPEAT113(macro, data) MREPEAT112(macro, data) macro(112, data) +#define MREPEAT114(macro, data) MREPEAT113(macro, data) macro(113, data) +#define MREPEAT115(macro, data) MREPEAT114(macro, data) macro(114, data) +#define MREPEAT116(macro, data) MREPEAT115(macro, data) macro(115, data) +#define MREPEAT117(macro, data) MREPEAT116(macro, data) macro(116, data) +#define MREPEAT118(macro, data) MREPEAT117(macro, data) macro(117, data) +#define MREPEAT119(macro, data) MREPEAT118(macro, data) macro(118, data) +#define MREPEAT120(macro, data) MREPEAT119(macro, data) macro(119, data) +#define MREPEAT121(macro, data) MREPEAT120(macro, data) macro(120, data) +#define MREPEAT122(macro, data) MREPEAT121(macro, data) macro(121, data) +#define MREPEAT123(macro, data) MREPEAT122(macro, data) macro(122, data) +#define MREPEAT124(macro, data) MREPEAT123(macro, data) macro(123, data) +#define MREPEAT125(macro, data) MREPEAT124(macro, data) macro(124, data) +#define MREPEAT126(macro, data) MREPEAT125(macro, data) macro(125, data) +#define MREPEAT127(macro, data) MREPEAT126(macro, data) macro(126, data) +#define MREPEAT128(macro, data) MREPEAT127(macro, data) macro(127, data) +#define MREPEAT129(macro, data) MREPEAT128(macro, data) macro(128, data) +#define MREPEAT130(macro, data) MREPEAT129(macro, data) macro(129, data) +#define MREPEAT131(macro, data) MREPEAT130(macro, data) macro(130, data) +#define MREPEAT132(macro, data) MREPEAT131(macro, data) macro(131, data) +#define MREPEAT133(macro, data) MREPEAT132(macro, data) macro(132, data) +#define MREPEAT134(macro, data) MREPEAT133(macro, data) macro(133, data) +#define MREPEAT135(macro, data) MREPEAT134(macro, data) macro(134, data) +#define MREPEAT136(macro, data) MREPEAT135(macro, data) macro(135, data) +#define MREPEAT137(macro, data) MREPEAT136(macro, data) macro(136, data) +#define MREPEAT138(macro, data) MREPEAT137(macro, data) macro(137, data) +#define MREPEAT139(macro, data) MREPEAT138(macro, data) macro(138, data) +#define MREPEAT140(macro, data) MREPEAT139(macro, data) macro(139, data) +#define MREPEAT141(macro, data) MREPEAT140(macro, data) macro(140, data) +#define MREPEAT142(macro, data) MREPEAT141(macro, data) macro(141, data) +#define MREPEAT143(macro, data) MREPEAT142(macro, data) macro(142, data) +#define MREPEAT144(macro, data) MREPEAT143(macro, data) macro(143, data) +#define MREPEAT145(macro, data) MREPEAT144(macro, data) macro(144, data) +#define MREPEAT146(macro, data) MREPEAT145(macro, data) macro(145, data) +#define MREPEAT147(macro, data) MREPEAT146(macro, data) macro(146, data) +#define MREPEAT148(macro, data) MREPEAT147(macro, data) macro(147, data) +#define MREPEAT149(macro, data) MREPEAT148(macro, data) macro(148, data) +#define MREPEAT150(macro, data) MREPEAT149(macro, data) macro(149, data) +#define MREPEAT151(macro, data) MREPEAT150(macro, data) macro(150, data) +#define MREPEAT152(macro, data) MREPEAT151(macro, data) macro(151, data) +#define MREPEAT153(macro, data) MREPEAT152(macro, data) macro(152, data) +#define MREPEAT154(macro, data) MREPEAT153(macro, data) macro(153, data) +#define MREPEAT155(macro, data) MREPEAT154(macro, data) macro(154, data) +#define MREPEAT156(macro, data) MREPEAT155(macro, data) macro(155, data) +#define MREPEAT157(macro, data) MREPEAT156(macro, data) macro(156, data) +#define MREPEAT158(macro, data) MREPEAT157(macro, data) macro(157, data) +#define MREPEAT159(macro, data) MREPEAT158(macro, data) macro(158, data) +#define MREPEAT160(macro, data) MREPEAT159(macro, data) macro(159, data) +#define MREPEAT161(macro, data) MREPEAT160(macro, data) macro(160, data) +#define MREPEAT162(macro, data) MREPEAT161(macro, data) macro(161, data) +#define MREPEAT163(macro, data) MREPEAT162(macro, data) macro(162, data) +#define MREPEAT164(macro, data) MREPEAT163(macro, data) macro(163, data) +#define MREPEAT165(macro, data) MREPEAT164(macro, data) macro(164, data) +#define MREPEAT166(macro, data) MREPEAT165(macro, data) macro(165, data) +#define MREPEAT167(macro, data) MREPEAT166(macro, data) macro(166, data) +#define MREPEAT168(macro, data) MREPEAT167(macro, data) macro(167, data) +#define MREPEAT169(macro, data) MREPEAT168(macro, data) macro(168, data) +#define MREPEAT170(macro, data) MREPEAT169(macro, data) macro(169, data) +#define MREPEAT171(macro, data) MREPEAT170(macro, data) macro(170, data) +#define MREPEAT172(macro, data) MREPEAT171(macro, data) macro(171, data) +#define MREPEAT173(macro, data) MREPEAT172(macro, data) macro(172, data) +#define MREPEAT174(macro, data) MREPEAT173(macro, data) macro(173, data) +#define MREPEAT175(macro, data) MREPEAT174(macro, data) macro(174, data) +#define MREPEAT176(macro, data) MREPEAT175(macro, data) macro(175, data) +#define MREPEAT177(macro, data) MREPEAT176(macro, data) macro(176, data) +#define MREPEAT178(macro, data) MREPEAT177(macro, data) macro(177, data) +#define MREPEAT179(macro, data) MREPEAT178(macro, data) macro(178, data) +#define MREPEAT180(macro, data) MREPEAT179(macro, data) macro(179, data) +#define MREPEAT181(macro, data) MREPEAT180(macro, data) macro(180, data) +#define MREPEAT182(macro, data) MREPEAT181(macro, data) macro(181, data) +#define MREPEAT183(macro, data) MREPEAT182(macro, data) macro(182, data) +#define MREPEAT184(macro, data) MREPEAT183(macro, data) macro(183, data) +#define MREPEAT185(macro, data) MREPEAT184(macro, data) macro(184, data) +#define MREPEAT186(macro, data) MREPEAT185(macro, data) macro(185, data) +#define MREPEAT187(macro, data) MREPEAT186(macro, data) macro(186, data) +#define MREPEAT188(macro, data) MREPEAT187(macro, data) macro(187, data) +#define MREPEAT189(macro, data) MREPEAT188(macro, data) macro(188, data) +#define MREPEAT190(macro, data) MREPEAT189(macro, data) macro(189, data) +#define MREPEAT191(macro, data) MREPEAT190(macro, data) macro(190, data) +#define MREPEAT192(macro, data) MREPEAT191(macro, data) macro(191, data) +#define MREPEAT193(macro, data) MREPEAT192(macro, data) macro(192, data) +#define MREPEAT194(macro, data) MREPEAT193(macro, data) macro(193, data) +#define MREPEAT195(macro, data) MREPEAT194(macro, data) macro(194, data) +#define MREPEAT196(macro, data) MREPEAT195(macro, data) macro(195, data) +#define MREPEAT197(macro, data) MREPEAT196(macro, data) macro(196, data) +#define MREPEAT198(macro, data) MREPEAT197(macro, data) macro(197, data) +#define MREPEAT199(macro, data) MREPEAT198(macro, data) macro(198, data) +#define MREPEAT200(macro, data) MREPEAT199(macro, data) macro(199, data) +#define MREPEAT201(macro, data) MREPEAT200(macro, data) macro(200, data) +#define MREPEAT202(macro, data) MREPEAT201(macro, data) macro(201, data) +#define MREPEAT203(macro, data) MREPEAT202(macro, data) macro(202, data) +#define MREPEAT204(macro, data) MREPEAT203(macro, data) macro(203, data) +#define MREPEAT205(macro, data) MREPEAT204(macro, data) macro(204, data) +#define MREPEAT206(macro, data) MREPEAT205(macro, data) macro(205, data) +#define MREPEAT207(macro, data) MREPEAT206(macro, data) macro(206, data) +#define MREPEAT208(macro, data) MREPEAT207(macro, data) macro(207, data) +#define MREPEAT209(macro, data) MREPEAT208(macro, data) macro(208, data) +#define MREPEAT210(macro, data) MREPEAT209(macro, data) macro(209, data) +#define MREPEAT211(macro, data) MREPEAT210(macro, data) macro(210, data) +#define MREPEAT212(macro, data) MREPEAT211(macro, data) macro(211, data) +#define MREPEAT213(macro, data) MREPEAT212(macro, data) macro(212, data) +#define MREPEAT214(macro, data) MREPEAT213(macro, data) macro(213, data) +#define MREPEAT215(macro, data) MREPEAT214(macro, data) macro(214, data) +#define MREPEAT216(macro, data) MREPEAT215(macro, data) macro(215, data) +#define MREPEAT217(macro, data) MREPEAT216(macro, data) macro(216, data) +#define MREPEAT218(macro, data) MREPEAT217(macro, data) macro(217, data) +#define MREPEAT219(macro, data) MREPEAT218(macro, data) macro(218, data) +#define MREPEAT220(macro, data) MREPEAT219(macro, data) macro(219, data) +#define MREPEAT221(macro, data) MREPEAT220(macro, data) macro(220, data) +#define MREPEAT222(macro, data) MREPEAT221(macro, data) macro(221, data) +#define MREPEAT223(macro, data) MREPEAT222(macro, data) macro(222, data) +#define MREPEAT224(macro, data) MREPEAT223(macro, data) macro(223, data) +#define MREPEAT225(macro, data) MREPEAT224(macro, data) macro(224, data) +#define MREPEAT226(macro, data) MREPEAT225(macro, data) macro(225, data) +#define MREPEAT227(macro, data) MREPEAT226(macro, data) macro(226, data) +#define MREPEAT228(macro, data) MREPEAT227(macro, data) macro(227, data) +#define MREPEAT229(macro, data) MREPEAT228(macro, data) macro(228, data) +#define MREPEAT230(macro, data) MREPEAT229(macro, data) macro(229, data) +#define MREPEAT231(macro, data) MREPEAT230(macro, data) macro(230, data) +#define MREPEAT232(macro, data) MREPEAT231(macro, data) macro(231, data) +#define MREPEAT233(macro, data) MREPEAT232(macro, data) macro(232, data) +#define MREPEAT234(macro, data) MREPEAT233(macro, data) macro(233, data) +#define MREPEAT235(macro, data) MREPEAT234(macro, data) macro(234, data) +#define MREPEAT236(macro, data) MREPEAT235(macro, data) macro(235, data) +#define MREPEAT237(macro, data) MREPEAT236(macro, data) macro(236, data) +#define MREPEAT238(macro, data) MREPEAT237(macro, data) macro(237, data) +#define MREPEAT239(macro, data) MREPEAT238(macro, data) macro(238, data) +#define MREPEAT240(macro, data) MREPEAT239(macro, data) macro(239, data) +#define MREPEAT241(macro, data) MREPEAT240(macro, data) macro(240, data) +#define MREPEAT242(macro, data) MREPEAT241(macro, data) macro(241, data) +#define MREPEAT243(macro, data) MREPEAT242(macro, data) macro(242, data) +#define MREPEAT244(macro, data) MREPEAT243(macro, data) macro(243, data) +#define MREPEAT245(macro, data) MREPEAT244(macro, data) macro(244, data) +#define MREPEAT246(macro, data) MREPEAT245(macro, data) macro(245, data) +#define MREPEAT247(macro, data) MREPEAT246(macro, data) macro(246, data) +#define MREPEAT248(macro, data) MREPEAT247(macro, data) macro(247, data) +#define MREPEAT249(macro, data) MREPEAT248(macro, data) macro(248, data) +#define MREPEAT250(macro, data) MREPEAT249(macro, data) macro(249, data) +#define MREPEAT251(macro, data) MREPEAT250(macro, data) macro(250, data) +#define MREPEAT252(macro, data) MREPEAT251(macro, data) macro(251, data) +#define MREPEAT253(macro, data) MREPEAT252(macro, data) macro(252, data) +#define MREPEAT254(macro, data) MREPEAT253(macro, data) macro(253, data) +#define MREPEAT255(macro, data) MREPEAT254(macro, data) macro(254, data) +#define MREPEAT256(macro, data) MREPEAT255(macro, data) macro(255, data) + + +#endif // _MREPEAT_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h new file mode 100644 index 000000000..5b996ba11 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h @@ -0,0 +1,55 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PREPROCESSOR_H_ +#define _PREPROCESSOR_H_ + +#include "tpaste.h" +#include "stringz.h" +#include "mrepeat.h" + + +#endif // _PREPROCESSOR_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h new file mode 100644 index 000000000..3528ea0da --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h @@ -0,0 +1,75 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor stringizing utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _STRINGZ_H_ +#define _STRINGZ_H_ + + +/*! \brief Stringize. + * + * Stringize a preprocessing token, this token being allowed to be \#defined. + * + * May be used only within macros with the token passed as an argument if the token is \#defined. + * + * For example, writing STRINGZ(PIN) within a macro \#defined by PIN_NAME(PIN) + * and invoked as PIN_NAME(PIN0) with PIN0 \#defined as A0 is equivalent to + * writing "A0". + */ +#define STRINGZ(x) #x + +/*! \brief Absolute stringize. + * + * Stringize a preprocessing token, this token being allowed to be \#defined. + * + * No restriction of use if the token is \#defined. + * + * For example, writing ASTRINGZ(PIN0) anywhere with PIN0 \#defined as A0 is + * equivalent to writing "A0". + */ +#define ASTRINGZ(x) STRINGZ(x) + + +#endif // _STRINGZ_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h new file mode 100644 index 000000000..a5d7beeaa --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h @@ -0,0 +1,95 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor token pasting utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _TPASTE_H_ +#define _TPASTE_H_ + + +/*! \name Token Paste + * + * Paste N preprocessing tokens together, these tokens being allowed to be \#defined. + * + * May be used only within macros with the tokens passed as arguments if the tokens are \#defined. + * + * For example, writing TPASTE2(U, WIDTH) within a macro \#defined by + * UTYPE(WIDTH) and invoked as UTYPE(UL_WIDTH) with UL_WIDTH \#defined as 32 is + * equivalent to writing U32. + */ +//! @{ +#define TPASTE2( a, b) a##b +#define TPASTE3( a, b, c) a##b##c +#define TPASTE4( a, b, c, d) a##b##c##d +#define TPASTE5( a, b, c, d, e) a##b##c##d##e +#define TPASTE6( a, b, c, d, e, f) a##b##c##d##e##f +#define TPASTE7( a, b, c, d, e, f, g) a##b##c##d##e##f##g +#define TPASTE8( a, b, c, d, e, f, g, h) a##b##c##d##e##f##g##h +#define TPASTE9( a, b, c, d, e, f, g, h, i) a##b##c##d##e##f##g##h##i +#define TPASTE10(a, b, c, d, e, f, g, h, i, j) a##b##c##d##e##f##g##h##i##j +//! @} + +/*! \name Absolute Token Paste + * + * Paste N preprocessing tokens together, these tokens being allowed to be \#defined. + * + * No restriction of use if the tokens are \#defined. + * + * For example, writing ATPASTE2(U, UL_WIDTH) anywhere with UL_WIDTH \#defined + * as 32 is equivalent to writing U32. + */ +//! @{ +#define ATPASTE2( a, b) TPASTE2( a, b) +#define ATPASTE3( a, b, c) TPASTE3( a, b, c) +#define ATPASTE4( a, b, c, d) TPASTE4( a, b, c, d) +#define ATPASTE5( a, b, c, d, e) TPASTE5( a, b, c, d, e) +#define ATPASTE6( a, b, c, d, e, f) TPASTE6( a, b, c, d, e, f) +#define ATPASTE7( a, b, c, d, e, f, g) TPASTE7( a, b, c, d, e, f, g) +#define ATPASTE8( a, b, c, d, e, f, g, h) TPASTE8( a, b, c, d, e, f, g, h) +#define ATPASTE9( a, b, c, d, e, f, g, h, i) TPASTE9( a, b, c, d, e, f, g, h, i) +#define ATPASTE10(a, b, c, d, e, f, g, h, i, j) TPASTE10(a, b, c, d, e, f, g, h, i, j) +//! @} + + +#endif // _TPASTE_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x new file mode 100644 index 000000000..23b658b98 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x @@ -0,0 +1,121 @@ +/* This file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AVR32UC C runtime startup file. + * + * This file has been built from the Newlib crt0.S. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32UC devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> + + +//! @{ +//! \verbatim + + + // This must be linked @ 0x80000000 if it is to be run upon reset. + .section .reset, "ax", @progbits + + + .global _start + .type _start, @function +_start: + // Jump to the C runtime startup routine. + lda.w pc, _stext + + + // _stext is placed outside the .reset section so that the program entry point + // can be changed without affecting the C runtime startup. + .section .text._stext, "ax", @progbits + + + .global _stext + .type _stext, @function +_stext: + // Set initial stack pointer. + lda.w sp, _estack + + // Set up EVBA so interrupts can be enabled. + lda.w r0, _evba + mtsr AVR32_EVBA, r0 + + // Enable the exception processing. + csrf AVR32_SR_EM_OFFSET + + // Load initialized data having a global lifetime from the data LMA. + lda.w r0, _data + lda.w r1, _edata + cp r0, r1 + brhs idata_load_loop_end + lda.w r2, _data_lma +idata_load_loop: + ld.d r4, r2++ + st.d r0++, r4 + cp r0, r1 + brlo idata_load_loop +idata_load_loop_end: + + // Clear uninitialized data having a global lifetime in the blank static storage section. + lda.w r0, __bss_start + lda.w r1, _end + cp r0, r1 + brhs udata_clear_loop_end + mov r2, 0 + mov r3, 0 +udata_clear_loop: + st.d r0++, r2 + cp r0, r1 + brlo udata_clear_loop +udata_clear_loop_end: + +#ifdef CONFIG_FRAME_POINTER + // Safety: Set the default "return" @ to the exit routine address. + lda.w lr, exit +#endif + + // Start the show. + lda.w pc, main + + +//! \endverbatim +//! @} diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h new file mode 100644 index 000000000..885be7fb9 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h @@ -0,0 +1,1145 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Compiler file for AVR32. + * + * This file defines commonly used types and macros. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _COMPILER_H_ +#define _COMPILER_H_ + +#if ((defined __GNUC__) && (defined __AVR32__)) || (defined __ICCAVR32__ || defined __AAVR32__) +# include <avr32/io.h> +#endif +#if (defined __ICCAVR32__) +# include <intrinsics.h> +#endif +#include "preprocessor.h" + +#include "parts.h" + + +//_____ D E C L A R A T I O N S ____________________________________________ + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +#include <stddef.h> +#include <stdlib.h> + + +#if (defined __ICCAVR32__) + +/*! \name Compiler Keywords + * + * Port of some keywords from GNU GCC for AVR32 to IAR Embedded Workbench for Atmel AVR32. + */ +//! @{ +#define __asm__ asm +#define __inline__ inline +#define __volatile__ +//! @} + +#endif + + +/*! \name Usual Types + */ +//! @{ +typedef unsigned char Bool; //!< Boolean. +#ifndef __cplusplus +#if !defined(__bool_true_false_are_defined) +typedef unsigned char bool; //!< Boolean. +#endif +#endif +typedef signed char S8 ; //!< 8-bit signed integer. +typedef unsigned char U8 ; //!< 8-bit unsigned integer. +typedef signed short int S16; //!< 16-bit signed integer. +typedef unsigned short int U16; //!< 16-bit unsigned integer. +typedef signed long int S32; //!< 32-bit signed integer. +typedef unsigned long int U32; //!< 32-bit unsigned integer. +typedef signed long long int S64; //!< 64-bit signed integer. +typedef unsigned long long int U64; //!< 64-bit unsigned integer. +typedef float F32; //!< 32-bit floating-point number. +typedef double F64; //!< 64-bit floating-point number. +//! @} + + +/*! \name Status Types + */ +//! @{ +typedef Bool Status_bool_t; //!< Boolean status. +typedef U8 Status_t; //!< 8-bit-coded status. +//! @} + + +/*! \name Aliasing Aggregate Types + */ +//! @{ + +//! 16-bit union. +typedef union +{ + S16 s16 ; + U16 u16 ; + S8 s8 [2]; + U8 u8 [2]; +} Union16; + +//! 32-bit union. +typedef union +{ + S32 s32 ; + U32 u32 ; + S16 s16[2]; + U16 u16[2]; + S8 s8 [4]; + U8 u8 [4]; +} Union32; + +//! 64-bit union. +typedef union +{ + S64 s64 ; + U64 u64 ; + S32 s32[2]; + U32 u32[2]; + S16 s16[4]; + U16 u16[4]; + S8 s8 [8]; + U8 u8 [8]; +} Union64; + +//! Union of pointers to 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + S64 *s64ptr; + U64 *u64ptr; + S32 *s32ptr; + U32 *u32ptr; + S16 *s16ptr; + U16 *u16ptr; + S8 *s8ptr ; + U8 *u8ptr ; +} UnionPtr; + +//! Union of pointers to volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + volatile S64 *s64ptr; + volatile U64 *u64ptr; + volatile S32 *s32ptr; + volatile U32 *u32ptr; + volatile S16 *s16ptr; + volatile U16 *u16ptr; + volatile S8 *s8ptr ; + volatile U8 *u8ptr ; +} UnionVPtr; + +//! Union of pointers to constant 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + const S64 *s64ptr; + const U64 *u64ptr; + const S32 *s32ptr; + const U32 *u32ptr; + const S16 *s16ptr; + const U16 *u16ptr; + const S8 *s8ptr ; + const U8 *u8ptr ; +} UnionCPtr; + +//! Union of pointers to constant volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + const volatile S64 *s64ptr; + const volatile U64 *u64ptr; + const volatile S32 *s32ptr; + const volatile U32 *u32ptr; + const volatile S16 *s16ptr; + const volatile U16 *u16ptr; + const volatile S8 *s8ptr ; + const volatile U8 *u8ptr ; +} UnionCVPtr; + +//! Structure of pointers to 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + S64 *s64ptr; + U64 *u64ptr; + S32 *s32ptr; + U32 *u32ptr; + S16 *s16ptr; + U16 *u16ptr; + S8 *s8ptr ; + U8 *u8ptr ; +} StructPtr; + +//! Structure of pointers to volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + volatile S64 *s64ptr; + volatile U64 *u64ptr; + volatile S32 *s32ptr; + volatile U32 *u32ptr; + volatile S16 *s16ptr; + volatile U16 *u16ptr; + volatile S8 *s8ptr ; + volatile U8 *u8ptr ; +} StructVPtr; + +//! Structure of pointers to constant 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + const S64 *s64ptr; + const U64 *u64ptr; + const S32 *s32ptr; + const U32 *u32ptr; + const S16 *s16ptr; + const U16 *u16ptr; + const S8 *s8ptr ; + const U8 *u8ptr ; +} StructCPtr; + +//! Structure of pointers to constant volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + const volatile S64 *s64ptr; + const volatile U64 *u64ptr; + const volatile S32 *s32ptr; + const volatile U32 *u32ptr; + const volatile S16 *s16ptr; + const volatile U16 *u16ptr; + const volatile S8 *s8ptr ; + const volatile U8 *u8ptr ; +} StructCVPtr; + +//! @} + +#endif // __AVR32_ABI_COMPILER__ + + +//_____ M A C R O S ________________________________________________________ + +/*! \name Usual Constants + */ +//! @{ +#define DISABLE 0 +#define ENABLE 1 +#define DISABLED 0 +#define ENABLED 1 +#define OFF 0 +#define ON 1 +#define FALSE 0 +#define TRUE 1 +#ifndef __cplusplus +#if !defined(__bool_true_false_are_defined) +#define false FALSE +#define true TRUE +#endif +#endif +#define KO 0 +#define OK 1 +#define PASS 0 +#define FAIL 1 +#define LOW 0 +#define HIGH 1 +#define CLR 0 +#define SET 1 +//! @} + + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +/*! \name Bit-Field Handling + */ +//! @{ + +/*! \brief Reads the bits of a value specified by a given bit-mask. + * + * \param value Value to read bits from. + * \param mask Bit-mask indicating bits to read. + * + * \return Read bits. + */ +#define Rd_bits( value, mask) ((value) & (mask)) + +/*! \brief Writes the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue to write bits to. + * \param mask Bit-mask indicating bits to write. + * \param bits Bits to write. + * + * \return Resulting value with written bits. + */ +#define Wr_bits(lvalue, mask, bits) ((lvalue) = ((lvalue) & ~(mask)) |\ + ((bits ) & (mask))) + +/*! \brief Tests the bits of a value specified by a given bit-mask. + * + * \param value Value of which to test bits. + * \param mask Bit-mask indicating bits to test. + * + * \return \c 1 if at least one of the tested bits is set, else \c 0. + */ +#define Tst_bits( value, mask) (Rd_bits(value, mask) != 0) + +/*! \brief Clears the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue of which to clear bits. + * \param mask Bit-mask indicating bits to clear. + * + * \return Resulting value with cleared bits. + */ +#define Clr_bits(lvalue, mask) ((lvalue) &= ~(mask)) + +/*! \brief Sets the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue of which to set bits. + * \param mask Bit-mask indicating bits to set. + * + * \return Resulting value with set bits. + */ +#define Set_bits(lvalue, mask) ((lvalue) |= (mask)) + +/*! \brief Toggles the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue of which to toggle bits. + * \param mask Bit-mask indicating bits to toggle. + * + * \return Resulting value with toggled bits. + */ +#define Tgl_bits(lvalue, mask) ((lvalue) ^= (mask)) + +/*! \brief Reads the bit-field of a value specified by a given bit-mask. + * + * \param value Value to read a bit-field from. + * \param mask Bit-mask indicating the bit-field to read. + * + * \return Read bit-field. + */ +#define Rd_bitfield( value, mask) (Rd_bits( value, mask) >> ctz(mask)) + +/*! \brief Writes the bit-field of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue to write a bit-field to. + * \param mask Bit-mask indicating the bit-field to write. + * \param bitfield Bit-field to write. + * + * \return Resulting value with written bit-field. + */ +#define Wr_bitfield(lvalue, mask, bitfield) (Wr_bits(lvalue, mask, (U32)(bitfield) << ctz(mask))) + +//! @} + + +/*! \brief This macro is used to test fatal errors. + * + * The macro tests if the expression is FALSE. If it is, a fatal error is + * detected and the application hangs up. + * + * \param expr Expression to evaluate and supposed to be nonzero. + */ +#ifdef _ASSERT_ENABLE_ + #define Assert(expr) \ + {\ + if (!(expr)) while (TRUE);\ + } +#else + #define Assert(expr) +#endif + + +/*! \name Zero-Bit Counting + * + * Under AVR32-GCC, __builtin_clz and __builtin_ctz behave like macros when + * applied to constant expressions (values known at compile time), so they are + * more optimized than the use of the corresponding assembly instructions and + * they can be used as constant expressions e.g. to initialize objects having + * static storage duration, and like the corresponding assembly instructions + * when applied to non-constant expressions (values unknown at compile time), so + * they are more optimized than an assembly periphrasis. Hence, clz and ctz + * ensure a possible and optimized behavior for both constant and non-constant + * expressions. + */ +//! @{ + +/*! \brief Counts the leading zero bits of the given value considered as a 32-bit integer. + * + * \param u Value of which to count the leading zero bits. + * + * \return The count of leading zero bits in \a u. + */ +#if (defined __GNUC__) + #define clz(u) __builtin_clz(u) +#elif (defined __ICCAVR32__) + #define clz(u) __count_leading_zeros(u) +#endif + +/*! \brief Counts the trailing zero bits of the given value considered as a 32-bit integer. + * + * \param u Value of which to count the trailing zero bits. + * + * \return The count of trailing zero bits in \a u. + */ +#if (defined __GNUC__) + #define ctz(u) __builtin_ctz(u) +#elif (defined __ICCAVR32__) + #define ctz(u) __count_trailing_zeros(u) +#endif + +//! @} + + +/*! \name Bit Reversing + */ +//! @{ + +/*! \brief Reverses the bits of \a u8. + * + * \param u8 U8 of which to reverse the bits. + * + * \return Value resulting from \a u8 with reversed bits. + */ +#define bit_reverse8(u8) ((U8)(bit_reverse32((U8)(u8)) >> 24)) + +/*! \brief Reverses the bits of \a u16. + * + * \param u16 U16 of which to reverse the bits. + * + * \return Value resulting from \a u16 with reversed bits. + */ +#define bit_reverse16(u16) ((U16)(bit_reverse32((U16)(u16)) >> 16)) + +/*! \brief Reverses the bits of \a u32. + * + * \param u32 U32 of which to reverse the bits. + * + * \return Value resulting from \a u32 with reversed bits. + */ +#if (defined __GNUC__) + #define bit_reverse32(u32) \ + (\ + {\ + unsigned int __value = (U32)(u32);\ + __asm__ ("brev\t%0" : "+r" (__value) : : "cc");\ + (U32)__value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define bit_reverse32(u32) ((U32)__bit_reverse((U32)(u32))) +#endif + +/*! \brief Reverses the bits of \a u64. + * + * \param u64 U64 of which to reverse the bits. + * + * \return Value resulting from \a u64 with reversed bits. + */ +#define bit_reverse64(u64) ((U64)(((U64)bit_reverse32((U64)(u64) >> 32)) |\ + ((U64)bit_reverse32((U64)(u64)) << 32))) + +//! @} + + +/*! \name Alignment + */ +//! @{ + +/*! \brief Tests alignment of the number \a val with the \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return \c 1 if the number \a val is aligned with the \a n boundary, else \c 0. + */ +#define Test_align(val, n ) (!Tst_bits( val, (n) - 1 ) ) + +/*! \brief Gets alignment of the number \a val with respect to the \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return Alignment of the number \a val with respect to the \a n boundary. + */ +#define Get_align( val, n ) ( Rd_bits( val, (n) - 1 ) ) + +/*! \brief Sets alignment of the lvalue number \a lval to \a alg with respect to the \a n boundary. + * + * \param lval Input/output lvalue. + * \param n Boundary. + * \param alg Alignment. + * + * \return New value of \a lval resulting from its alignment set to \a alg with respect to the \a n boundary. + */ +#define Set_align(lval, n, alg) ( Wr_bits(lval, (n) - 1, alg) ) + +/*! \brief Aligns the number \a val with the upper \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return Value resulting from the number \a val aligned with the upper \a n boundary. + */ +#define Align_up( val, n ) (((val) + ((n) - 1)) & ~((n) - 1)) + +/*! \brief Aligns the number \a val with the lower \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return Value resulting from the number \a val aligned with the lower \a n boundary. + */ +#define Align_down(val, n ) ( (val) & ~((n) - 1)) + +//! @} + + +/*! \name Mathematics + * + * The same considerations as for clz and ctz apply here but AVR32-GCC does not + * provide built-in functions to access the assembly instructions abs, min and + * max and it does not produce them by itself in most cases, so two sets of + * macros are defined here: + * - Abs, Min and Max to apply to constant expressions (values known at + * compile time); + * - abs, min and max to apply to non-constant expressions (values unknown at + * compile time). + */ +//! @{ + +/*! \brief Takes the absolute value of \a a. + * + * \param a Input value. + * + * \return Absolute value of \a a. + * + * \note More optimized if only used with values known at compile time. + */ +#define Abs(a) (((a) < 0 ) ? -(a) : (a)) + +/*! \brief Takes the minimal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Minimal value of \a a and \a b. + * + * \note More optimized if only used with values known at compile time. + */ +#define Min(a, b) (((a) < (b)) ? (a) : (b)) + +/*! \brief Takes the maximal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Maximal value of \a a and \a b. + * + * \note More optimized if only used with values known at compile time. + */ +#define Max(a, b) (((a) > (b)) ? (a) : (b)) + +/*! \brief Takes the absolute value of \a a. + * + * \param a Input value. + * + * \return Absolute value of \a a. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define abs(a) \ + (\ + {\ + int __value = (a);\ + __asm__ ("abs\t%0" : "+r" (__value) : : "cc");\ + __value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define abs(a) Abs(a) +#endif + +/*! \brief Takes the minimal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Minimal value of \a a and \a b. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define min(a, b) \ + (\ + {\ + int __value, __arg_a = (a), __arg_b = (b);\ + __asm__ ("min\t%0, %1, %2" : "=r" (__value) : "r" (__arg_a), "r" (__arg_b));\ + __value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define min(a, b) __min(a, b) +#endif + +/*! \brief Takes the maximal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Maximal value of \a a and \a b. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define max(a, b) \ + (\ + {\ + int __value, __arg_a = (a), __arg_b = (b);\ + __asm__ ("max\t%0, %1, %2" : "=r" (__value) : "r" (__arg_a), "r" (__arg_b));\ + __value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define max(a, b) __max(a, b) +#endif + +//! @} + + +/*! \brief Calls the routine at address \a addr. + * + * It generates a long call opcode. + * + * For example, `Long_call(0x80000000)' generates a software reset on a UC3 if + * it is invoked from the CPU supervisor mode. + * + * \param addr Address of the routine to call. + * + * \note It may be used as a long jump opcode in some special cases. + */ +#define Long_call(addr) ((*(void (*)(void))(addr))()) + +/*! \brief Resets the CPU by software. + * + * \warning It shall not be called from the CPU application mode. + */ +#if (defined __GNUC__) + #define Reset_CPU() \ + (\ + {\ + __asm__ __volatile__ (\ + "lddpc r9, 3f\n\t"\ + "mfsr r8, %[SR]\n\t"\ + "bfextu r8, r8, %[SR_M_OFFSET], %[SR_M_SIZE]\n\t"\ + "cp.w r8, 0b001\n\t"\ + "breq 0f\n\t"\ + "sub r8, pc, $ - 1f\n\t"\ + "pushm r8-r9\n\t"\ + "rete\n"\ + "0:\n\t"\ + "mtsr %[SR], r9\n"\ + "1:\n\t"\ + "mov r0, 0\n\t"\ + "mov r1, 0\n\t"\ + "mov r2, 0\n\t"\ + "mov r3, 0\n\t"\ + "mov r4, 0\n\t"\ + "mov r5, 0\n\t"\ + "mov r6, 0\n\t"\ + "mov r7, 0\n\t"\ + "mov r8, 0\n\t"\ + "mov r9, 0\n\t"\ + "mov r10, 0\n\t"\ + "mov r11, 0\n\t"\ + "mov r12, 0\n\t"\ + "mov sp, 0\n\t"\ + "stdsp sp[0], sp\n\t"\ + "ldmts sp, sp\n\t"\ + "mov lr, 0\n\t"\ + "lddpc pc, 2f\n\t"\ + ".balign 4\n"\ + "2:\n\t"\ + ".word _start\n"\ + "3:\n\t"\ + ".word %[RESET_SR]"\ + :\ + : [SR] "i" (AVR32_SR),\ + [SR_M_OFFSET] "i" (AVR32_SR_M_OFFSET),\ + [SR_M_SIZE] "i" (AVR32_SR_M_SIZE),\ + [RESET_SR] "i" (AVR32_SR_GM_MASK | AVR32_SR_EM_MASK | (AVR32_SR_M_SUP << AVR32_SR_M_OFFSET))\ + );\ + }\ + ) +#elif (defined __ICCAVR32__) + #define Reset_CPU() \ + {\ + extern void *volatile __program_start;\ + __asm__ __volatile__ (\ + "mov r7, LWRD(__program_start)\n\t"\ + "orh r7, HWRD(__program_start)\n\t"\ + "mov r9, LWRD("ASTRINGZ(AVR32_SR_GM_MASK | AVR32_SR_EM_MASK | (AVR32_SR_M_SUP << AVR32_SR_M_OFFSET))")\n\t"\ + "orh r9, HWRD("ASTRINGZ(AVR32_SR_GM_MASK | AVR32_SR_EM_MASK | (AVR32_SR_M_SUP << AVR32_SR_M_OFFSET))")\n\t"\ + "mfsr r8, "ASTRINGZ(AVR32_SR)"\n\t"\ + "bfextu r8, r8, "ASTRINGZ(AVR32_SR_M_OFFSET)", "ASTRINGZ(AVR32_SR_M_SIZE)"\n\t"\ + "cp.w r8, 001b\n\t"\ + "breq $ + 10\n\t"\ + "sub r8, pc, -12\n\t"\ + "pushm r8-r9\n\t"\ + "rete\n\t"\ + "mtsr "ASTRINGZ(AVR32_SR)", r9\n\t"\ + "mov r0, 0\n\t"\ + "mov r1, 0\n\t"\ + "mov r2, 0\n\t"\ + "mov r3, 0\n\t"\ + "mov r4, 0\n\t"\ + "mov r5, 0\n\t"\ + "mov r6, 0\n\t"\ + "st.w r0[4], r7\n\t"\ + "mov r7, 0\n\t"\ + "mov r8, 0\n\t"\ + "mov r9, 0\n\t"\ + "mov r10, 0\n\t"\ + "mov r11, 0\n\t"\ + "mov r12, 0\n\t"\ + "mov sp, 0\n\t"\ + "stdsp sp[0], sp\n\t"\ + "ldmts sp, sp\n\t"\ + "mov lr, 0\n\t"\ + "ld.w pc, lr[4]"\ + );\ + __program_start;\ + } +#endif + + +/*! \name System Register Access + */ +//! @{ + +/*! \brief Gets the value of the \a sysreg system register. + * + * \param sysreg Address of the system register of which to get the value. + * + * \return Value of the \a sysreg system register. + */ +#if (defined __GNUC__) + #define Get_system_register(sysreg) __builtin_mfsr(sysreg) +#elif (defined __ICCAVR32__) + #define Get_system_register(sysreg) __get_system_register(sysreg) +#endif + +/*! \brief Sets the value of the \a sysreg system register to \a value. + * + * \param sysreg Address of the system register of which to set the value. + * \param value Value to set the \a sysreg system register to. + */ +#if (defined __GNUC__) + #define Set_system_register(sysreg, value) __builtin_mtsr(sysreg, value) +#elif (defined __ICCAVR32__) + #define Set_system_register(sysreg, value) __set_system_register(sysreg, value) +#endif + +//! @} + + +/*! \name CPU Status Register Access + */ +//! @{ + +/*! \brief Tells whether exceptions are globally enabled. + * + * \return \c 1 if exceptions are globally enabled, else \c 0. + */ +#define Is_global_exception_enabled() (!Tst_bits(Get_system_register(AVR32_SR), AVR32_SR_EM_MASK)) + +/*! \brief Disables exceptions globally. + */ +#if (defined __GNUC__) + #define Disable_global_exception() ({__asm__ __volatile__ ("ssrf\t%0" : : "i" (AVR32_SR_EM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Disable_global_exception() (__set_status_flag(AVR32_SR_EM_OFFSET)) +#endif + +/*! \brief Enables exceptions globally. + */ +#if (defined __GNUC__) + #define Enable_global_exception() ({__asm__ __volatile__ ("csrf\t%0" : : "i" (AVR32_SR_EM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Enable_global_exception() (__clear_status_flag(AVR32_SR_EM_OFFSET)) +#endif + +/*! \brief Tells whether interrupts are globally enabled. + * + * \return \c 1 if interrupts are globally enabled, else \c 0. + */ +#define Is_global_interrupt_enabled() (!Tst_bits(Get_system_register(AVR32_SR), AVR32_SR_GM_MASK)) + +/*! \brief Disables interrupts globally. + */ +#if (defined __GNUC__) + #define Disable_global_interrupt() ({__asm__ __volatile__ ("ssrf\t%0" : : "i" (AVR32_SR_GM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Disable_global_interrupt() (__disable_interrupt()) +#endif + +/*! \brief Enables interrupts globally. + */ +#if (defined __GNUC__) + #define Enable_global_interrupt() ({__asm__ __volatile__ ("csrf\t%0" : : "i" (AVR32_SR_GM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Enable_global_interrupt() (__enable_interrupt()) +#endif + +/*! \brief Tells whether interrupt level \a int_level is enabled. + * + * \param int_level Interrupt level (0 to 3). + * + * \return \c 1 if interrupt level \a int_level is enabled, else \c 0. + */ +#define Is_interrupt_level_enabled(int_level) (!Tst_bits(Get_system_register(AVR32_SR), TPASTE3(AVR32_SR_I, int_level, M_MASK))) + +/*! \brief Disables interrupt level \a int_level. + * + * \param int_level Interrupt level to disable (0 to 3). + */ +#if (defined __GNUC__) + #define Disable_interrupt_level(int_level) ({__asm__ __volatile__ ("ssrf\t%0" : : "i" (TPASTE3(AVR32_SR_I, int_level, M_OFFSET)));}) +#elif (defined __ICCAVR32__) + #define Disable_interrupt_level(int_level) (__set_status_flag(TPASTE3(AVR32_SR_I, int_level, M_OFFSET))) +#endif + +/*! \brief Enables interrupt level \a int_level. + * + * \param int_level Interrupt level to enable (0 to 3). + */ +#if (defined __GNUC__) + #define Enable_interrupt_level(int_level) ({__asm__ __volatile__ ("csrf\t%0" : : "i" (TPASTE3(AVR32_SR_I, int_level, M_OFFSET)));}) +#elif (defined __ICCAVR32__) + #define Enable_interrupt_level(int_level) (__clear_status_flag(TPASTE3(AVR32_SR_I, int_level, M_OFFSET))) +#endif + +/*! \brief Protects subsequent code from interrupts. + */ +#define AVR32_ENTER_CRITICAL_REGION( ) \ + { \ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); \ + Disable_global_interrupt(); // Disable the appropriate interrupts. + +/*! \brief This macro must always be used in conjunction with AVR32_ENTER_CRITICAL_REGION + * so that interrupts are enabled again. + */ +#define AVR32_LEAVE_CRITICAL_REGION( ) \ + if (global_interrupt_enabled) Enable_global_interrupt(); \ + } + +//! @} + + +/*! \name Debug Register Access + */ +//! @{ + +/*! \brief Gets the value of the \a dbgreg debug register. + * + * \param dbgreg Address of the debug register of which to get the value. + * + * \return Value of the \a dbgreg debug register. + */ +#if (defined __GNUC__) + #define Get_debug_register(dbgreg) __builtin_mfdr(dbgreg) +#elif (defined __ICCAVR32__) + #define Get_debug_register(dbgreg) __get_debug_register(dbgreg) +#endif + +/*! \brief Sets the value of the \a dbgreg debug register to \a value. + * + * \param dbgreg Address of the debug register of which to set the value. + * \param value Value to set the \a dbgreg debug register to. + */ +#if (defined __GNUC__) + #define Set_debug_register(dbgreg, value) __builtin_mtdr(dbgreg, value) +#elif (defined __ICCAVR32__) + #define Set_debug_register(dbgreg, value) __set_debug_register(dbgreg, value) +#endif + +//! @} + +#endif // __AVR32_ABI_COMPILER__ + + +//! Boolean evaluating MCU little endianism. +#if ((defined __GNUC__) && (defined __AVR32__)) || ((defined __ICCAVR32__) || (defined __AAVR32__)) + #define LITTLE_ENDIAN_MCU FALSE +#else + #error If you are here, you should check what is exactly the processor you are using... + #define LITTLE_ENDIAN_MCU FALSE +#endif + +// Check that MCU endianism is correctly defined. +#ifndef LITTLE_ENDIAN_MCU + #error YOU MUST define the MCU endianism with LITTLE_ENDIAN_MCU: either FALSE or TRUE +#endif + +//! Boolean evaluating MCU big endianism. +#define BIG_ENDIAN_MCU (!LITTLE_ENDIAN_MCU) + + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +/*! \name MCU Endianism Handling + */ +//! @{ + +#if (LITTLE_ENDIAN_MCU==TRUE) + #define LSB(u16) (((U8 *)&(u16))[0]) //!< Least significant byte of \a u16. + #define MSB(u16) (((U8 *)&(u16))[1]) //!< Most significant byte of \a u16. + + #define LSH(u32) (((U16 *)&(u32))[0]) //!< Least significant half-word of \a u32. + #define MSH(u32) (((U16 *)&(u32))[1]) //!< Most significant half-word of \a u32. + #define LSB0W(u32) (((U8 *)&(u32))[0]) //!< Least significant byte of 1st rank of \a u32. + #define LSB1W(u32) (((U8 *)&(u32))[1]) //!< Least significant byte of 2nd rank of \a u32. + #define LSB2W(u32) (((U8 *)&(u32))[2]) //!< Least significant byte of 3rd rank of \a u32. + #define LSB3W(u32) (((U8 *)&(u32))[3]) //!< Least significant byte of 4th rank of \a u32. + #define MSB3W(u32) LSB0W(u32) //!< Most significant byte of 4th rank of \a u32. + #define MSB2W(u32) LSB1W(u32) //!< Most significant byte of 3rd rank of \a u32. + #define MSB1W(u32) LSB2W(u32) //!< Most significant byte of 2nd rank of \a u32. + #define MSB0W(u32) LSB3W(u32) //!< Most significant byte of 1st rank of \a u32. + + #define LSW(u64) (((U32 *)&(u64))[0]) //!< Least significant word of \a u64. + #define MSW(u64) (((U32 *)&(u64))[1]) //!< Most significant word of \a u64. + #define LSH0(u64) (((U16 *)&(u64))[0]) //!< Least significant half-word of 1st rank of \a u64. + #define LSH1(u64) (((U16 *)&(u64))[1]) //!< Least significant half-word of 2nd rank of \a u64. + #define LSH2(u64) (((U16 *)&(u64))[2]) //!< Least significant half-word of 3rd rank of \a u64. + #define LSH3(u64) (((U16 *)&(u64))[3]) //!< Least significant half-word of 4th rank of \a u64. + #define MSH3(u64) LSH0(u64) //!< Most significant half-word of 4th rank of \a u64. + #define MSH2(u64) LSH1(u64) //!< Most significant half-word of 3rd rank of \a u64. + #define MSH1(u64) LSH2(u64) //!< Most significant half-word of 2nd rank of \a u64. + #define MSH0(u64) LSH3(u64) //!< Most significant half-word of 1st rank of \a u64. + #define LSB0D(u64) (((U8 *)&(u64))[0]) //!< Least significant byte of 1st rank of \a u64. + #define LSB1D(u64) (((U8 *)&(u64))[1]) //!< Least significant byte of 2nd rank of \a u64. + #define LSB2D(u64) (((U8 *)&(u64))[2]) //!< Least significant byte of 3rd rank of \a u64. + #define LSB3D(u64) (((U8 *)&(u64))[3]) //!< Least significant byte of 4th rank of \a u64. + #define LSB4D(u64) (((U8 *)&(u64))[4]) //!< Least significant byte of 5th rank of \a u64. + #define LSB5D(u64) (((U8 *)&(u64))[5]) //!< Least significant byte of 6th rank of \a u64. + #define LSB6D(u64) (((U8 *)&(u64))[6]) //!< Least significant byte of 7th rank of \a u64. + #define LSB7D(u64) (((U8 *)&(u64))[7]) //!< Least significant byte of 8th rank of \a u64. + #define MSB7D(u64) LSB0D(u64) //!< Most significant byte of 8th rank of \a u64. + #define MSB6D(u64) LSB1D(u64) //!< Most significant byte of 7th rank of \a u64. + #define MSB5D(u64) LSB2D(u64) //!< Most significant byte of 6th rank of \a u64. + #define MSB4D(u64) LSB3D(u64) //!< Most significant byte of 5th rank of \a u64. + #define MSB3D(u64) LSB4D(u64) //!< Most significant byte of 4th rank of \a u64. + #define MSB2D(u64) LSB5D(u64) //!< Most significant byte of 3rd rank of \a u64. + #define MSB1D(u64) LSB6D(u64) //!< Most significant byte of 2nd rank of \a u64. + #define MSB0D(u64) LSB7D(u64) //!< Most significant byte of 1st rank of \a u64. + +#elif (BIG_ENDIAN_MCU==TRUE) + #define MSB(u16) (((U8 *)&(u16))[0]) //!< Most significant byte of \a u16. + #define LSB(u16) (((U8 *)&(u16))[1]) //!< Least significant byte of \a u16. + + #define MSH(u32) (((U16 *)&(u32))[0]) //!< Most significant half-word of \a u32. + #define LSH(u32) (((U16 *)&(u32))[1]) //!< Least significant half-word of \a u32. + #define MSB0W(u32) (((U8 *)&(u32))[0]) //!< Most significant byte of 1st rank of \a u32. + #define MSB1W(u32) (((U8 *)&(u32))[1]) //!< Most significant byte of 2nd rank of \a u32. + #define MSB2W(u32) (((U8 *)&(u32))[2]) //!< Most significant byte of 3rd rank of \a u32. + #define MSB3W(u32) (((U8 *)&(u32))[3]) //!< Most significant byte of 4th rank of \a u32. + #define LSB3W(u32) MSB0W(u32) //!< Least significant byte of 4th rank of \a u32. + #define LSB2W(u32) MSB1W(u32) //!< Least significant byte of 3rd rank of \a u32. + #define LSB1W(u32) MSB2W(u32) //!< Least significant byte of 2nd rank of \a u32. + #define LSB0W(u32) MSB3W(u32) //!< Least significant byte of 1st rank of \a u32. + + #define MSW(u64) (((U32 *)&(u64))[0]) //!< Most significant word of \a u64. + #define LSW(u64) (((U32 *)&(u64))[1]) //!< Least significant word of \a u64. + #define MSH0(u64) (((U16 *)&(u64))[0]) //!< Most significant half-word of 1st rank of \a u64. + #define MSH1(u64) (((U16 *)&(u64))[1]) //!< Most significant half-word of 2nd rank of \a u64. + #define MSH2(u64) (((U16 *)&(u64))[2]) //!< Most significant half-word of 3rd rank of \a u64. + #define MSH3(u64) (((U16 *)&(u64))[3]) //!< Most significant half-word of 4th rank of \a u64. + #define LSH3(u64) MSH0(u64) //!< Least significant half-word of 4th rank of \a u64. + #define LSH2(u64) MSH1(u64) //!< Least significant half-word of 3rd rank of \a u64. + #define LSH1(u64) MSH2(u64) //!< Least significant half-word of 2nd rank of \a u64. + #define LSH0(u64) MSH3(u64) //!< Least significant half-word of 1st rank of \a u64. + #define MSB0D(u64) (((U8 *)&(u64))[0]) //!< Most significant byte of 1st rank of \a u64. + #define MSB1D(u64) (((U8 *)&(u64))[1]) //!< Most significant byte of 2nd rank of \a u64. + #define MSB2D(u64) (((U8 *)&(u64))[2]) //!< Most significant byte of 3rd rank of \a u64. + #define MSB3D(u64) (((U8 *)&(u64))[3]) //!< Most significant byte of 4th rank of \a u64. + #define MSB4D(u64) (((U8 *)&(u64))[4]) //!< Most significant byte of 5th rank of \a u64. + #define MSB5D(u64) (((U8 *)&(u64))[5]) //!< Most significant byte of 6th rank of \a u64. + #define MSB6D(u64) (((U8 *)&(u64))[6]) //!< Most significant byte of 7th rank of \a u64. + #define MSB7D(u64) (((U8 *)&(u64))[7]) //!< Most significant byte of 8th rank of \a u64. + #define LSB7D(u64) MSB0D(u64) //!< Least significant byte of 8th rank of \a u64. + #define LSB6D(u64) MSB1D(u64) //!< Least significant byte of 7th rank of \a u64. + #define LSB5D(u64) MSB2D(u64) //!< Least significant byte of 6th rank of \a u64. + #define LSB4D(u64) MSB3D(u64) //!< Least significant byte of 5th rank of \a u64. + #define LSB3D(u64) MSB4D(u64) //!< Least significant byte of 4th rank of \a u64. + #define LSB2D(u64) MSB5D(u64) //!< Least significant byte of 3rd rank of \a u64. + #define LSB1D(u64) MSB6D(u64) //!< Least significant byte of 2nd rank of \a u64. + #define LSB0D(u64) MSB7D(u64) //!< Least significant byte of 1st rank of \a u64. + +#else + #error Unknown endianism. +#endif + +//! @} + + +/*! \name Endianism Conversion + * + * The same considerations as for clz and ctz apply here but AVR32-GCC's + * __builtin_bswap_16 and __builtin_bswap_32 do not behave like macros when + * applied to constant expressions, so two sets of macros are defined here: + * - Swap16, Swap32 and Swap64 to apply to constant expressions (values known + * at compile time); + * - swap16, swap32 and swap64 to apply to non-constant expressions (values + * unknown at compile time). + */ +//! @{ + +/*! \brief Toggles the endianism of \a u16 (by swapping its bytes). + * + * \param u16 U16 of which to toggle the endianism. + * + * \return Value resulting from \a u16 with toggled endianism. + * + * \note More optimized if only used with values known at compile time. + */ +#define Swap16(u16) ((U16)(((U16)(u16) >> 8) |\ + ((U16)(u16) << 8))) + +/*! \brief Toggles the endianism of \a u32 (by swapping its bytes). + * + * \param u32 U32 of which to toggle the endianism. + * + * \return Value resulting from \a u32 with toggled endianism. + * + * \note More optimized if only used with values known at compile time. + */ +#define Swap32(u32) ((U32)(((U32)Swap16((U32)(u32) >> 16)) |\ + ((U32)Swap16((U32)(u32)) << 16))) + +/*! \brief Toggles the endianism of \a u64 (by swapping its bytes). + * + * \param u64 U64 of which to toggle the endianism. + * + * \return Value resulting from \a u64 with toggled endianism. + * + * \note More optimized if only used with values known at compile time. + */ +#define Swap64(u64) ((U64)(((U64)Swap32((U64)(u64) >> 32)) |\ + ((U64)Swap32((U64)(u64)) << 32))) + +/*! \brief Toggles the endianism of \a u16 (by swapping its bytes). + * + * \param u16 U16 of which to toggle the endianism. + * + * \return Value resulting from \a u16 with toggled endianism. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define swap16(u16) ((U16)__builtin_bswap_16((U16)(u16))) +#elif (defined __ICCAVR32__) + #define swap16(u16) ((U16)__swap_bytes_in_halfwords((U16)(u16))) +#endif + +/*! \brief Toggles the endianism of \a u32 (by swapping its bytes). + * + * \param u32 U32 of which to toggle the endianism. + * + * \return Value resulting from \a u32 with toggled endianism. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define swap32(u32) ((U32)__builtin_bswap_32((U32)(u32))) +#elif (defined __ICCAVR32__) + #define swap32(u32) ((U32)__swap_bytes((U32)(u32))) +#endif + +/*! \brief Toggles the endianism of \a u64 (by swapping its bytes). + * + * \param u64 U64 of which to toggle the endianism. + * + * \return Value resulting from \a u64 with toggled endianism. + * + * \note More optimized if only used with values unknown at compile time. + */ +#define swap64(u64) ((U64)(((U64)swap32((U64)(u64) >> 32)) |\ + ((U64)swap32((U64)(u64)) << 32))) + +//! @} + + +/*! \name Target Abstraction + */ +//! @{ + +#define _GLOBEXT_ extern //!< extern storage-class specifier. +#define _CONST_TYPE_ const //!< const type qualifier. +#define _MEM_TYPE_SLOW_ //!< Slow memory type. +#define _MEM_TYPE_MEDFAST_ //!< Fairly fast memory type. +#define _MEM_TYPE_FAST_ //!< Fast memory type. + +typedef U8 Byte; //!< 8-bit unsigned integer. + +#define memcmp_ram2ram memcmp //!< Target-specific memcmp of RAM to RAM. +#define memcmp_code2ram memcmp //!< Target-specific memcmp of RAM to NVRAM. +#define memcpy_ram2ram memcpy //!< Target-specific memcpy from RAM to RAM. +#define memcpy_code2ram memcpy //!< Target-specific memcpy from NVRAM to RAM. + +#define LSB0(u32) LSB0W(u32) //!< Least significant byte of 1st rank of \a u32. +#define LSB1(u32) LSB1W(u32) //!< Least significant byte of 2nd rank of \a u32. +#define LSB2(u32) LSB2W(u32) //!< Least significant byte of 3rd rank of \a u32. +#define LSB3(u32) LSB3W(u32) //!< Least significant byte of 4th rank of \a u32. +#define MSB3(u32) MSB3W(u32) //!< Most significant byte of 4th rank of \a u32. +#define MSB2(u32) MSB2W(u32) //!< Most significant byte of 3rd rank of \a u32. +#define MSB1(u32) MSB1W(u32) //!< Most significant byte of 2nd rank of \a u32. +#define MSB0(u32) MSB0W(u32) //!< Most significant byte of 1st rank of \a u32. + +//! @} + +#endif // __AVR32_ABI_COMPILER__ + + +#endif // _COMPILER_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h new file mode 100644 index 000000000..ca516ee00 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h @@ -0,0 +1,136 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ****************************************************************** + * + * \brief ISP configuration file. + * + * This file contains the possible external configuration of the ISP. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USB module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ***************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_ISP_H_ +#define _CONF_ISP_H_ + +#include <avr32/io.h> +#include "compiler.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +#define PRODUCT_MANUFACTURER_ID 0x58 +#define PRODUCT_FAMILY_ID 0x20 + +#define ISP_VERSION 0x10 +#define ISP_ID0 0x00 +#define ISP_ID1 0x00 + +#define ISP_CFG1 (*(volatile U32 *)ISP_CFG1_ADDRESS) +#define ISP_CFG1_ADDRESS (AVR32_FLASHC_USER_PAGE_ADDRESS + ISP_CFG1_OFFSET) +#define ISP_CFG1_OFFSET 0x000001FC +#define ISP_CFG1_SIZE 4 + +#define ISP_CFG1_BOOT_KEY1 16 +#define ISP_CFG1_BOOT_KEY1_MASK 0xFFFF0000 +#define ISP_CFG1_BOOT_KEY1_OFFSET 16 +#define ISP_CFG1_BOOT_KEY1_SIZE 16 +#define ISP_CFG1_BOOT_KEY1_VALUE 0xE11E + +#define ISP_CFG1_FORCE 9 +#define ISP_CFG1_FORCE_MASK 0x00000200 +#define ISP_CFG1_FORCE_OFFSET 9 +#define ISP_CFG1_FORCE_SIZE 1 + +#define ISP_CFG1_IO_COND_EN 8 +#define ISP_CFG1_IO_COND_EN_MASK 0x00000100 +#define ISP_CFG1_IO_COND_EN_OFFSET 8 +#define ISP_CFG1_IO_COND_EN_SIZE 1 + +#define ISP_CFG1_CRC8 0 +#define ISP_CFG1_CRC8_MASK 0x000000FF +#define ISP_CFG1_CRC8_OFFSET 0 +#define ISP_CFG1_CRC8_SIZE 8 +#define ISP_CFG1_CRC8_POLYNOMIAL 0x107 + +#define ISP_CFG2 (*(volatile U32 *)ISP_CFG2_ADDRESS) +#define ISP_CFG2_ADDRESS (AVR32_FLASHC_USER_PAGE_ADDRESS + ISP_CFG2_OFFSET) +#define ISP_CFG2_OFFSET 0x000001F8 +#define ISP_CFG2_SIZE 4 + +#define ISP_CFG2_BOOT_KEY 17 +#define ISP_CFG2_BOOT_KEY_MASK 0xFFFE0000 +#define ISP_CFG2_BOOT_KEY_OFFSET 17 +#define ISP_CFG2_BOOT_KEY_SIZE 15 +#define ISP_CFG2_BOOT_KEY_VALUE 0x494F + +#define ISP_CFG2_IO_COND_LEVEL 16 +#define ISP_CFG2_IO_COND_LEVEL_MASK 0x00010000 +#define ISP_CFG2_IO_COND_LEVEL_OFFSET 16 +#define ISP_CFG2_IO_COND_LEVEL_SIZE 1 + +#define ISP_CFG2_IO_COND_PIN 8 +#define ISP_CFG2_IO_COND_PIN_MASK 0x0000FF00 +#define ISP_CFG2_IO_COND_PIN_OFFSET 8 +#define ISP_CFG2_IO_COND_PIN_SIZE 8 + +#define ISP_CFG2_CRC8 0 +#define ISP_CFG2_CRC8_MASK 0x000000FF +#define ISP_CFG2_CRC8_OFFSET 0 +#define ISP_CFG2_CRC8_SIZE 8 +#define ISP_CFG2_CRC8_POLYNOMIAL 0x107 + +#define ISP_KEY (*(volatile U32 *)ISP_KEY_ADDRESS) +#define ISP_KEY_ADDRESS (AVR32_SRAM_ADDRESS + ISP_KEY_OFFSET) +#define ISP_KEY_OFFSET 0x00000000 +#define ISP_KEY_SIZE 4 +#define ISP_KEY_VALUE ('I' << 24 | 'S' << 16 | 'P' << 8 | 'K') + +#ifndef ISP_OSC + #define ISP_OSC 0 +#endif + +#define DFU_FRAME_LENGTH 2048 + +#define PROGRAM_START_ADDRESS (AVR32_FLASH_ADDRESS + PROGRAM_START_OFFSET) +#define PROGRAM_START_OFFSET 0x00002000 + + +#endif // _CONF_ISP_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/parts.h b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/parts.h new file mode 100644 index 000000000..6637b2f76 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/SOFTWARE_FRAMEWORK/UTILS/parts.h @@ -0,0 +1,203 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Arch file for AVR32. + * + * This file defines common AVR32 UC3 series. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _ARCH_H_ +#define _ARCH_H_ + +// UC3 A Series +#define UC3A0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3A0128__) || \ + defined (__AVR32_UC3A0256__) || \ + defined (__AVR32_UC3A0512__) || \ + defined (__AVR32_UC3A0512ES__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3A0128__) || \ + defined (__AT32UC3A0256__) || \ + defined (__AT32UC3A0512__) || \ + defined (__AT32UC3A0512ES__))) + +#define UC3A1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3A1128__) || \ + defined (__AVR32_UC3A1256__) || \ + defined (__AVR32_UC3A1512__) || \ + defined (__AVR32_UC3A1512ES__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3A1128__) || \ + defined (__AT32UC3A1256__) || \ + defined (__AT32UC3A1512__) || \ + defined (__AT32UC3A1512ES__))) + +#define UC3A3 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3A364__) || \ + defined (__AVR32_UC3A364S__) || \ + defined (__AVR32_UC3A3128__) || \ + defined (__AVR32_UC3A3128S__) || \ + defined (__AVR32_UC3A3256__) || \ + defined (__AVR32_UC3A3256S__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3A364__) || \ + defined (__AT32UC3A364S__) || \ + defined (__AT32UC3A3128__) || \ + defined (__AT32UC3A3128S__) || \ + defined (__AT32UC3A3256__) || \ + defined (__AT32UC3A3256S__))) + +#define UC3A (UC3A0 || UC3A1 || UC3A3) + +// UC3 B Series +#define UC3B0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3B064__) || \ + defined (__AVR32_UC3B0128__) || \ + defined (__AVR32_UC3B0256__) || \ + defined (__AVR32_UC3B0256ES__) || \ + defined (__AVR32_UC3B0512__) || \ + defined (__AVR32_UC3B0512REVC_))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3B064__) || \ + defined (__AT32UC3B0128__) || \ + defined (__AT32UC3B0256__) || \ + defined (__AT32UC3B0256ES__) || \ + defined (__AT32UC3B0512__) || \ + defined (__AT32UC3B0512REVC__))) + +#define UC3B1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3B164__) || \ + defined (__AVR32_UC3B1128__) || \ + defined (__AVR32_UC3B1256__) || \ + defined (__AVR32_UC3B1256ES__) || \ + defined (__AVR32_UC3B1512__) || \ + defined (__AVR32_UC3B1512ES__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3B164__) || \ + defined (__AT32UC3B1128__) || \ + defined (__AT32UC3B1256__) || \ + defined (__AT32UC3B1256ES__) || \ + defined (__AT32UC3B1512__) || \ + defined (__AT32UC3B1512REVC__))) + +#define UC3B (UC3B0 || UC3B1 ) + +// UC3 C Series +#define UC3C0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3C064C__) || \ + defined (__AVR32_UC3C0128C__) || \ + defined (__AVR32_UC3C0256C__) || \ + defined (__AVR32_UC3C0512CREVC__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3C064C__) || \ + defined (__AT32UC3C0128C__) || \ + defined (__AT32UC3C0256C__) || \ + defined (__AT32UC3C0512C__))) + +#define UC3C1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3C164C__) || \ + defined (__AVR32_UC3C1128C__) || \ + defined (__AVR32_UC3C1256C__) || \ + defined (__AVR32_UC3C1512CREVC__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3C164C__) || \ + defined (__AT32UC3C1128C__) || \ + defined (__AT32UC3C1256C__) || \ + defined (__AT32UC3C1512C__))) + +#define UC3C2 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3C264C__) || \ + defined (__AVR32_UC3C2128C__) || \ + defined (__AVR32_UC3C2256C__) || \ + defined (__AVR32_UC3C2512CREVC__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3C264C__) || \ + defined (__AT32UC3C2128C__) || \ + defined (__AT32UC3C2256C__) || \ + defined (__AT32UC3C2512C__))) + +#define UC3C (UC3C0 || UC3C1 || UC3C2) + +// UC3 L Device series +#define UC3L0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L016__) || \ + defined (__AVR32_UC3L032__) || \ + defined (__AVR32_UC3L064__) || \ + defined (__AVR32_UC3L064REVB__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L016__) || \ + defined (__AT32UC3L032__) || \ + defined (__AT32UC3L064__) || \ + defined (__AT32UC3L064REVB__))) + +#define UC3L1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L116__) || \ + defined (__AVR32_UC3L132__) || \ + defined (__AVR32_UC3L164__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L116__) || \ + defined (__AT32UC3L132__) || \ + defined (__AT32UC3L164__))) + +#define UC3L2 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L216__) || \ + defined (__AVR32_UC3L232__) || \ + defined (__AVR32_UC3L264__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L216__) || \ + defined (__AT32UC3L232__) || \ + defined (__AT32UC3L264__))) + +#define UC3L3 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L316__) || \ + defined (__AVR32_UC3L332__) || \ + defined (__AVR32_UC3L364__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L316__) || \ + defined (__AT32UC3L332__) || \ + defined (__AT32UC3L364__))) + +#define UC3L (UC3L0 || UC3L1 || UC3L2 || UC3L3) + +#endif // _ARCH_H_ diff --git a/libraries/WiFi/extras/wifiHD/src/ard_spi.c b/libraries/WiFi/extras/wifiHD/src/ard_spi.c new file mode 100644 index 000000000..8bd288ba1 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ard_spi.c @@ -0,0 +1,1969 @@ +/* + * ard_spi.c + * + * Created on: May 27, 2010 + * Author: mlf by Metodo2 srl + */ + +//#define _APP_DEBUG_ + +#include <avr32/io.h> +#include "board.h" +#include "gpio.h" +#include "usart.h" +#include "ard_spi.h" +#include "ard_tcp.h" +#include "wifi_spi.h" +#include "wl_cm.h" +#include "ard_utils.h" +#include "intc.h" +#include "spi.h" +#include "debug.h" +#include "delay.h" +#include "eic.h" +#include "timer.h" +#include "lwip/dns.h" +#include <board_init.h> +#include "util.h" +#include "lwip/udp.h" +#include "lwip_setup.h" + +extern const char* fwVersion; + +/*! \name USART Settings + */ +//! @{ +#if BOARD == EVK1105 +# define ARD_USART_SPI (&AVR32_USART1) +# define ARD_USART_SPI_SCK_PIN AVR32_USART1_CLK_0_PIN +# define ARD_USART_SPI_SCK_FUNCTION AVR32_USART1_CLK_0_FUNCTION +# define ARD_USART_SPI_MISO_PIN AVR32_USART1_TXD_0_0_PIN +# define ARD_USART_SPI_MISO_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define ARD_USART_SPI_MOSI_PIN AVR32_USART1_RXD_0_0_PIN +# define ARD_USART_SPI_MOSI_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define ARD_USART_SPI_NSS_PIN AVR32_USART1_CTS_0_0_PIN +# define ARD_USART_SPI_NSS_FUNCTION AVR32_USART1_CTS_0_0_FUNCTION +# define ARD_USART_SPI_IRQ AVR32_USART1_IRQ +#endif +#if BOARD == ARDUINO +# define ARD_SPI (&AVR32_SPI0) +#define EXT_INT_PIN_LINE1 AVR32_EIC_EXTINT_5_PIN +#define EXT_INT_FUNCTION_LINE1 AVR32_EIC_EXTINT_5_FUNCTION +#define EXT_INT_LINE1 EXT_INT5 +#define EXT_INT_IRQ_LINE1 AVR32_EIC_IRQ_5 +#define EXT_INT_NB_LINES 1 +#endif + +/* These defines should be adjusted to match the application */ +/*! \brief CPU core speed in Hz */ +#define CPUHZ 60000000 +/*! \brief Number of bytes in the receive buffer when operating in slave mode */ +#define BUFFERSIZE 64 +/*! \brief A adjustable delay avoiding multiple requests on the switches */ +//#define TIMEOUT 150000 +#define TIMEOUT CPUHZ/200 +/*! \brief Number of bits in each SPI package*/ +#define SPI_BITS 8 +/*! \brief SPI slave speed in Hz */ +#define SPI_SLAVE_SPEED 1000000 + + +#ifndef CMD_MAX_LEN +#define CMD_MAX_LEN 1024 +#endif +#ifndef REPLY_MAX_LEN +#define REPLY_MAX_LEN 1024 +#endif + +#define _BUFFERSIZE 100 + +extern void tcp_debug_print_pcbs(void); +extern bool ifStatus; +extern bool scanNetCompleted; + +static char buf[CMD_MAX_LEN]; +static char reply[REPLY_MAX_LEN]; +static uint16_t cmdCorr = 0; +static uint16_t count = 0; +static uint16_t replyCount = 0; +static cmd_spi_state_t state = SPI_CMD_IDLE; +int receivedChars = 0; +static uint8_t _receiveBuffer[_BUFFERSIZE]; +bool startReply = false; +bool end_write = false; //TODO only for debug + +// Signal indicating a new command is coming from SPI interface +static volatile Bool startRecvCmdSignal = FALSE; + +#define MAX_CMD_NUM 36 +typedef struct sCmd_spi_list{ + cmd_spi_cb_t cb; + char cmd_id; + cmd_spi_rcb_t reply_cb; + void* ctx; + char flags; +}tCmd_spi_list; + +static tCmd_spi_list cmd_spi_list[MAX_CMD_NUM] = { {0} }; + +#ifdef _SPI_STATS_ +typedef struct sStatSpi +{ + int timeoutIntErr; + int timeoutErr; + int txErr; + int rxErr; + int wrongFrame; + int frameDisalign; + int overrideFrame; + int lastCmd; + int lastError; + unsigned long status; +}tStatSpi; + +tStatSpi statSpi = {0}; + +void initStatSpi() +{ + statSpi.lastCmd = 0; + statSpi.lastError = 0; + statSpi.status= 0; + statSpi.txErr = 0; + statSpi.rxErr = 0; + statSpi.timeoutErr= 0; + statSpi.timeoutIntErr= 0; + statSpi.wrongFrame = 0; + statSpi.frameDisalign = 0; + statSpi.overrideFrame = 0; +} + +void printStatSpi() +{ + printk("totSpiCmds\t: 0x%x\n", cmdCorr); + printk("lastCmd \t: 0x%x\n", statSpi.lastCmd); + printk("lastErr \t: 0x%x\n", statSpi.lastError); + printk("spiStatus\t: 0x%X\n", statSpi.status); + printk("spiTxErr \t: 0x%x\n", statSpi.txErr); + printk("spiRxErr \t: 0x%x\n", statSpi.rxErr); + printk("spiTmoErr\t: 0x%x\n", statSpi.timeoutErr); + printk("spiTmoIntErr\t: 0x%x\n", statSpi.timeoutIntErr); + printk("wrongFrame\t: 0x%x\n", statSpi.wrongFrame); + printk("disalFrame\t: 0x%x\n", statSpi.frameDisalign); + printk("overrideFrame\t: 0x%x\n", statSpi.overrideFrame); +} + +cmd_state_t +cmd_statSpi(int argc, char* argv[], void* ctx) +{ + printStatSpi(); + return CMD_DONE; +} + +cmd_state_t +cmd_resetStatSpi(int argc, char* argv[], void* ctx) +{ + initStatSpi(); + return CMD_DONE; +} +#endif + +#define ARRAY_SIZE(a) sizeof(a) / sizeof(a[0]) +#define RETURN_ERR(e) return (e==WL_SUCCESS) ? WIFI_SPI_ACK : WIFI_SPI_ERR; +#define RESET_USART_CSR(usart) usart->cr = AVR32_USART_CR_RSTSTA_MASK; + +int result = WL_CONNECT_FAILED; //Store the result of the last operation + +void* mapSockTCP[MAX_SOCK_NUM][MAX_MODE_NUM]; + +//Udp RemoteIp and remote Port +static tRemoteClient remoteClients[MAX_SOCK_NUM] = {{0,0}}; + +void setRemoteClient(uint16_t sock, uint32_t _ipaddr, uint16_t _port) +{ + if (sock < MAX_SOCK_NUM) + { + remoteClients[sock].ipaddr = _ipaddr; + remoteClients[sock].port = _port; + } +} + +tRemoteClient* getRemoteClient(uint16_t sock) +{ + if (sock < MAX_SOCK_NUM) + { + return &remoteClients[sock]; + } + return NULL; +} + +struct netif* ard_netif = NULL; + +// Network list retrived in the last scanNetwork +static struct wl_network_list_t network_list = { 0 }; + +struct ip_addr _hostIpAddr; + +static bool hostIpAddrFound = false; + +void* getTTCP(uint8_t sock, uint8_t mode) +{ + if (sock < MAX_SOCK_NUM) + return mapSockTCP[sock][mode]; + return NULL; +} + +int getSock(void * _ttcp) +{ + if (_ttcp != NULL) + { + int i = 0; + for (; i<MAX_SOCK_NUM; i++) + { + if (_ttcp == mapSockTCP[i][GET_TCP_MODE(_ttcp)]) + return i; + } + } + return -1; +} + +void setMapSockMode(uint8_t sock, void* _ttcp, uint8_t _tcp_mode) +{ + if ((IS_VALID_SOCK(sock))&&(_ttcp!=NULL)) + mapSockTCP[sock][_tcp_mode]=_ttcp; + INFO_TCP("Map [%d, %p, %s]\n", sock, _ttcp, Mode2Str(_tcp_mode)); +} + +void setMapSock(uint8_t sock, void* _ttcp) +{ + setMapSockMode(sock, _ttcp, GET_TCP_MODE(_ttcp)); +} + +void clearMapSockTcp(uint8_t sock, uint8_t mode) +{ + if (sock < MAX_SOCK_NUM) + { + //printk("UnMap [%d, %p]\n", sock, mapSockTCP[sock]); + mapSockTCP[sock][mode] = NULL; + } + +} + +void initMapSockTcp() +{ + memset(mapSockTCP, 0, sizeof(mapSockTCP)); +} + +#if 0 +/** + * Calculate bitrate based on number of bytes transmitted and elapsed time + */ +static void ard_tcp_print_stats(struct ttcp *ttcp) { + uint32_t ms = timer_get_ms() - ttcp->start_time; + uint32_t bytes = ttcp->mode == TTCP_MODE_TRANSMIT ? ttcp->nbuf + * ttcp->buflen : ttcp->recved; + + if (ttcp->verbose) + printk("\n"); + + printk("TTCP [%p]: %d bytes processed, %d.%d KB/s (%s/%s)\n", ttcp, bytes, + bytes / ms, bytes % ms, ProtMode2Str(ttcp->udp), + Mode2Str(ttcp->mode)); +} +#endif + +void showTTCPstatus() +{ + printk("IF status: %s\n", (ifStatus) ? "UP":"DOWN"); + printk("CONN status: %s\n", (_connected) ? "UP":"DOWN"); + + int i = 0; + for (; i<MAX_SOCK_NUM; i++) + { + int ii=0; + for (; ii<MAX_MODE_NUM; ii++) + { + void* p = getTTCP(i, ii); + if (p) + { + ttcp_t* _ttcp = (ttcp_t* )p; + printk("Socket n.:%d(%d) [0x%x] %s %s addr:%s port:%d\n", i, ii, _ttcp, + ProtMode2Str(_ttcp->udp), Mode2Str(_ttcp->mode), ip2str(_ttcp->addr), _ttcp->port); + if (_ttcp->udp == TCP_MODE) + { + int j = 0; + for (; j<MAX_CLIENT_ACCEPTED; ++j) + { + if (_ttcp->tpcb[j]){ + printk("[%d tpcp-%p]-Status:%d\n", j, _ttcp->tpcb[j], _ttcp->tpcb[j]->state); + } + } + + if (_ttcp->lpcb){ + printk("[tlcp-%p]-Status:%d\n", _ttcp->lpcb, _ttcp->lpcb->state); + } + }else{ + if (_ttcp->upcb){ + struct ip_addr loc = _ttcp->upcb->local_ip; + printk("[upcp-%p] flags:0x%x local:%s[0x%x]-%d\n", + _ttcp->upcb, _ttcp->upcb->flags, + ip2str(loc), loc, _ttcp->upcb->local_port); + tRemoteClient remote = {0,0};; + getRemoteData(i, ii, &remote); + struct ip_addr ipaddr = { remote.ipaddr }; + printk("remote:%s(0x%x)-%d\n", ip2str(ipaddr), remote.ipaddr, remote.port); + } + } + //ard_tcp_print_stats(_ttcp); + printk("Data avail:%s\n", isAvailTcpDataByte(i)?"YES":"NO"); + printk("------------------------------\n"); + } + } + } + + tcp_debug_print_pcbs(); +} + +int write_stream(volatile avr32_spi_t *spi, const char *stream, uint16_t len) +{ + uint16_t _len = 0; + unsigned short dummy=0; + + do { + //SIGN1_DN(); + if (spi_write(spi, *stream) == SPI_ERROR_TIMEOUT) + { +#ifdef _SPI_STATS_ + statSpi.timeoutErr++; + statSpi.txErr++; + statSpi.lastError = SPI_ERROR_TIMEOUT; + statSpi.status = spi_getStatus(spi); +#endif + return SPI_ERROR_TIMEOUT; + } + else + { + stream++; + _len++; + spi_read(spi,&dummy); + } + //SIGN1_UP(); + }while (_len < len); + return SPI_OK; +} + +void sendError() +{ + AVAIL_FOR_SPI(); + if (spi_write(&AVR32_SPI, ERR_CMD) != SPI_ERROR_TIMEOUT) + { + //Wait to empty the buffer + while(!spi_writeRegisterEmptyCheck(&AVR32_SPI)); + } + BUSY_FOR_SPI(); + WARN("Send SPI error!\n"); +} + +#define ENABLE_SPI_INT() do { \ + volatile avr32_spi_t *spi = ARD_SPI; \ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); \ + if (global_interrupt_enabled) Disable_global_interrupt(); \ + spi->IER.rdrf = 1; spi->IER.rxbuff = 1; spi->IER.endrx = 1; \ + if (global_interrupt_enabled) Enable_global_interrupt(); \ +}while(0); + +#define DISABLE_SPI_INT() do { \ + volatile avr32_spi_t *spi = ARD_SPI; \ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); \ + if (global_interrupt_enabled) Disable_global_interrupt(); \ + spi->IDR.rdrf = 1; spi->IDR.rxbuff = 1; spi->IDR.endrx = 1; \ + if (global_interrupt_enabled) Enable_global_interrupt(); \ +}while(0); + +#define CLEAR_SPI_INT() do { \ + eic_clear_interrupt_line(&AVR32_EIC, AVR32_SPI0_IRQ); \ + }while(0); + +int spi_add_cmd(char _cmd_id, cmd_spi_cb_t cb, cmd_spi_rcb_t rcb, void* ctx, + char flag) { + U32 i; + for (i = 0; i < ARRAY_SIZE(cmd_spi_list); i++) + if (!cmd_spi_list[i].cb) + break; + + if (i == ARRAY_SIZE(cmd_spi_list)) + { + printk("List Commands full!\n"); + return -1; + } + cmd_spi_list[i].cmd_id = _cmd_id; + cmd_spi_list[i].cb = cb; + cmd_spi_list[i].reply_cb = rcb; + cmd_spi_list[i].ctx = ctx; + cmd_spi_list[i].flags = flag; + return 0; +} + +int set_net_cmd_cb(int numParam, char* buf, void* ctx) { + struct wl_ssid_t ssid; + wl_err_t err = WL_FAILURE; + tParam* param = (tParam*) buf; + + if (param->paramLen < WL_SSID_MAX_LENGTH) { + memcpy(ssid.ssid, &param->param, param->paramLen); + ssid.len = param->paramLen; + ssid.ssid[ssid.len] = 0; + INFO_SPI("SSID:%s\n", ssid.ssid); + //dump(ssid.ssid, ssid.len); + err = wl_cm_set_network(&ssid, NULL); + if (err != 1) + WARN("err=%d\n", err); + } else { + WARN("SSID len out of range"); + } + return err; +} + +extern uint8_t ascii_to_key(char *outp, const char *inp); + +int set_key_cmd_cb(int numParam, char* buf, void* ctx) { + struct wl_ssid_t ssid; + struct wl_mac_addr_t bssid; + uint8_t idx=0, len=0; + char key[13], key_hex[27]; + char keyIdx[2]; + wl_err_t err = WL_SUCCESS; + tParam* params = (tParam*) buf; + + INFO_SPI("%s params=%d\n", __FUNCTION__, numParam); + + // SSID + memset(&ssid, 0, sizeof ssid); + + if (params->paramLen < WL_SSID_MAX_LENGTH) { + memcpy(ssid.ssid, &params->param, params->paramLen); + ssid.len = params->paramLen; + INFO_SPI("%s\n", ssid.ssid); + } else { + //printk("SSID len out of range"); + RETURN_ERR(WL_FAILURE) + } + + params = (tParam*)((char*)buf+PARAM_LEN_SIZE+params->paramLen); + strncpy(keyIdx, (const char*)&params->param, params->paramLen); + keyIdx[(uint8_t)params->paramLen]='\0'; + + idx = (uint8_t)atoi(keyIdx); + // KEY IDX + if ((params->paramLen != 1)||(idx < 0)||(idx > 3)){ + //printk("KEY IDX out of range %d\n", idx); + RETURN_ERR(WL_FAILURE) + } + + params = (tParam*)((char*)params+PARAM_LEN_SIZE+params->paramLen); + strncpy(key_hex, (const char*)&params->param, params->paramLen); + key_hex[(uint8_t)params->paramLen]='\0'; + len = ascii_to_key(key, key_hex); + // KEY + if (( len != 5)&&(len != 13)) + { + //printk("KEY len out of range %d", len); + RETURN_ERR(WL_FAILURE) + } +#if 0 + printk("KEY IDX = %d\n", idx); + dump(key, len); + printk("KEY len %d\n", len); +#endif + memset(&bssid.octet, 0xff, sizeof bssid.octet); + + wl_add_wep_key(idx, len, key, &bssid); + //wl_set_auth_mode(AUTH_MODE_SHARED_KEY); + wl_set_default_wep_key(idx); + + //Connect + err = wl_cm_set_network(&ssid, NULL); + if (err != 1) + WARN("err=%d\n", err); + RETURN_ERR(err) +} + +int set_passphrase_cmd_cb(int numParam, char* buf, void* ctx) { + struct wl_network_t net; + char pass[64]; + wl_err_t err = WL_SUCCESS; + tParam* params = (tParam*) buf; + + INFO_SPI("%s params=%d\n", __FUNCTION__, numParam); + + memset(&net, 0, sizeof net); + memset(net.bssid.octet, 0xFF, sizeof net.bssid.octet); + + net.enc_type = ENC_TYPE_AUTO; + + // SSID + if (params->paramLen < WL_SSID_MAX_LENGTH) { + memcpy(net.ssid.ssid, &params->param, params->paramLen); + net.ssid.len = params->paramLen; + INFO_SPI("%s %d\n", net.ssid.ssid, net.ssid.len); + } else { + //printk("SSID len out of range"); + RETURN_ERR(WL_FAILURE) + } + params = (tParam*)((char*)buf+PARAM_LEN_SIZE+params->paramLen); + // PASSPHRASE + + strncpy(pass, (const char*)&params->param, params->paramLen); + pass[(uint8_t)params->paramLen]='\0'; + INFO_SPI("Pass: %s %d\n", pass, params->paramLen); + + if (wl_set_passphrase(&net, + pass, + params->paramLen, + ENC_TYPE_AUTO, + AUTH_MODE_AUTO) + != WL_SUCCESS) { + WARN("%s : Failed to add passphrase\n", __func__); + + RETURN_ERR(WL_FAILURE) + } + printk("Connect to network..."); + //Connect + err = wl_cm_set_network(&net.ssid, NULL); + if (err != 1) + printk("err=%d\n", err); + else + printk("OK\n"); + RETURN_ERR(err) +} + +int set_ip_config_cmd_cb(int numParam, char* buf, void* ctx) { + struct ip_addr lwip_addr; + struct ctx_server *hs = ctx; + struct net_cfg *ncfg = &(hs->net_cfg); + struct netif *nif = ncfg->netif; + uint8_t parmsToChange=0; + const uint8_t MAX_IP_CONFIG_PARAMS = 3; + + wl_err_t err = WL_SUCCESS; + tParam* params = (tParam*) buf; + + if (params->paramLen == 1) + { + GET_PARAM_NEXT(BYTE, params, _parmsToChange); + parmsToChange = _parmsToChange; + } + else + RETURN_ERR(WL_FAILURE) + + INFO_SPI("%p numParam=%d parmsToChange=%d\n", ctx, numParam, parmsToChange); + + if (parmsToChange <= MAX_IP_CONFIG_PARAMS) + { + int i=0; + for (; i<parmsToChange; ++i) + { + if (params->paramLen == 4) + { + GET_PARAM_NEXT(LONG, params, _ip_addr); + lwip_addr.addr = _ip_addr; + INFO_SPI("%d] nif:%p lwip_addr=0x%x\n", i, nif, lwip_addr.addr); + switch (i) + { + case 0: // local_ip + { + netif_set_ipaddr(nif, &lwip_addr); + break; + } + case 1: // gateway + { + netif_set_gw(nif, &lwip_addr); + break; + } + case 2: // subnet + { + netif_set_netmask(nif, &lwip_addr); + break; + } + } + }else{ + RETURN_ERR(WL_FAILURE) + } + + } + /* Disable DHCP */ + ncfg->dhcp_enabled = STATIC_IP_CONFIG; + }else + RETURN_ERR(WL_FAILURE) + + RETURN_ERR(err) +} + +int set_dns_config_cmd_cb(int numParam, char* buf, void* ctx) { + struct ip_addr lwip_addr; + struct ctx_server *hs = ctx; + struct net_cfg *ncfg = &(hs->net_cfg); + struct netif *nif = ncfg->netif; + uint8_t parmsToChange=0; + const uint8_t MAX_DNS_CONFIG_PARAMS = 2; + + wl_err_t err = WL_SUCCESS; + tParam* params = (tParam*) buf; + + if (params->paramLen == 1) + { + GET_PARAM_NEXT(BYTE, params, _parmsToChange); + parmsToChange = _parmsToChange; + } + else + RETURN_ERR(WL_FAILURE) + + INFO_SPI("%p numParam=%d parmsToChange=%d\n", ctx, numParam, parmsToChange); + + if (parmsToChange <= MAX_DNS_CONFIG_PARAMS) + { + int i=0; + for (; i<parmsToChange; ++i) + { + if (params->paramLen == 4) + { + GET_PARAM_NEXT(LONG, params, _ip_addr); + lwip_addr.addr = _ip_addr; + INFO_SPI("%d] nif:%p lwip_addr=0x%x\n", i, nif, lwip_addr.addr); + dns_setserver(i, &lwip_addr); + }else{ + RETURN_ERR(WL_FAILURE) + } + } + /* Disable DHCP */ + ncfg->dhcp_enabled = STATIC_IP_CONFIG; + }else + RETURN_ERR(WL_FAILURE) + + RETURN_ERR(err) +} + + + +void set_result(wl_status_t _status) +{ + result = _status; +} + + +void set_result_cmd(int err) +{ + wl_err_t _err = (wl_err_t)err; + switch (_err) + { + case WL_SUCCESS: + set_result(WL_CONNECTED); + ERROR_LED_OFF(); + break; + default: + case WL_OOM: + case WL_INVALID_LENGTH: + case WL_NOT_SUPPORTED: + case WL_ABSORBED: + case WL_RESOURCES: + case WL_BUSY: + case WL_RETRY: + case WL_FAILURE: + set_result(WL_CONNECT_FAILED); + ERROR_LED_ON(); + break; + } + INFO_SPI("%s %d\n", __FUNCTION__, result); +} + + + +extern int ttcp_start(struct ip_addr addr, uint16_t port, void *opaque, + void *done_cb, int mode, uint16_t nbuf, uint16_t buflen, int udp, int verbose); + + +int start_server_tcp(uint16_t port, uint8_t sock, uint8_t protMode) +{ + struct ip_addr addr = { 0 }; + uint16_t buflen = 1024; + uint16_t nbuf = 1024; + wl_err_t err = WL_FAILURE; + +#ifdef _APP_DEBUG_ + int verbose = 1; +#else + int verbose = 0; +#endif + int udp = protMode; + int mode = 1; //RECEIVE + void* _ttcp = NULL; + + if (sock >= MAX_SOCK_NUM) + return WIFI_SPI_ERR; + + if (_connected) + { + WARN("Still connected...wait\n"); + return WIFI_SPI_ERR; + } + + if (!ifStatus) + { + WARN_VER("IF down...wait\n"); + return WIFI_SPI_ERR; + } + + + if (ard_tcp_start(addr, port, NULL, NULL, mode, nbuf, buflen, udp, verbose, sock, &_ttcp) == 0) + { + INFO_SPI("Start Server %s [%d, %d] OK!\n", ProtMode2Str(protMode), port, sock); + setMapSock(sock, _ttcp); + err = WL_SUCCESS; + }else{ + + WARN("Start Server %s [%d, %d] FAILED!\n", ProtMode2Str(protMode), port, sock); + clearMapSockTcp(sock, TTCP_MODE_RECEIVE); + } + return err; +} + + +int start_server_tcp_cmd_cb(int numParam, char* buf, void* ctx) { + wl_err_t err = WL_FAILURE; + tParam* params = (tParam*) buf; + if (numParam == 3) + { + GET_PARAM_NEXT(INT, params, port); + GET_PARAM_NEXT(BYTE, params, sock); + GET_PARAM_NEXT(BYTE, params, protMode); + err = start_server_tcp(port, sock, protMode); + } + return (err==WL_SUCCESS) ? WIFI_SPI_ACK : WIFI_SPI_ERR; +} + +int start_client_tcp(uint32_t _addr, uint16_t port, uint8_t sock, uint8_t protMode) +{ + uint16_t buflen = 1024; + uint16_t nbuf = 1024; + wl_err_t err = WL_FAILURE; + struct ip_addr addr = { .addr = _addr}; + + INFO_SPI("Addr:0x%x, port:%d, sock:%d, prot:%s\n", _addr, port, sock, ProtMode2Str(protMode)); + + #ifdef _APP_DEBUG_ + int verbose = 1; + #else + int verbose = 0; + #endif + + int udp = protMode; + int mode = 0; //TRANSMIT + void* _ttcp = NULL; + + if (sock >= MAX_SOCK_NUM) + return WIFI_SPI_ERR; + + // Check previous connection + _ttcp = getTTCP(sock, TTCP_MODE_TRANSMIT); + if (_ttcp != NULL) + { + WARN("Previous client %p not stopped !\n", _ttcp); + ard_tcp_stop(_ttcp); + clearMapSockTcp(sock, TTCP_MODE_TRANSMIT); + } + + if (ard_tcp_start(addr, port, NULL, NULL, mode, nbuf, buflen, udp, verbose, sock, &_ttcp) == 0) + { + INFO_SPI("Start Client %s %p [0x%x, %d, %d] OK!\n", ProtMode2Str(protMode), + _ttcp, addr, port, sock); + setMapSock(sock, _ttcp); + err = WL_SUCCESS; + }else{ + INFO_SPI("Start Client %s %p [0x%x, %d, %d] FAILED!\n", ProtMode2Str(protMode), + _ttcp, addr, port, sock); + clearMapSockTcp(sock, TTCP_MODE_TRANSMIT); + } + return err; +} + + +int start_client_tcp_cmd_cb(int numParam, char* buf, void* ctx) { + wl_err_t err = WL_FAILURE; + tParam* params = (tParam*) buf; + if (numParam == 4) + { + GET_PARAM_NEXT(LONG, params, _addr); + GET_PARAM_NEXT(INT, params, port); + GET_PARAM_NEXT(BYTE, params, sock); + GET_PARAM_NEXT(BYTE, params, protMode); + err = start_client_tcp(_addr, port, sock, protMode); + } + return (err==WL_SUCCESS) ? WIFI_SPI_ACK : WIFI_SPI_ERR; +} + +int stop_client_tcp_cmd_cb(int numParam, char* buf, void* ctx) { + wl_err_t err = WL_FAILURE; + tParam* params = (tParam*) buf; + void* _ttcp = NULL; + + if (numParam == 1) + { + GET_PARAM_NEXT(BYTE, params, sock); + + INFO_SPI("Stop client sock:%d\n", sock); + + if (sock < MAX_SOCK_NUM) + { + _ttcp = getTTCP(sock, TTCP_MODE_TRANSMIT); + ard_tcp_stop(_ttcp); + err = WL_SUCCESS; + } + } + return (err==WL_SUCCESS) ? WIFI_SPI_ACK : WIFI_SPI_ERR; +} + +int insert_data_cmd_cb(int numParam, char* buf, void* ctx) { + + tDataParam* msg = (tDataParam*) buf; + if ((numParam == 2)&&(msg->dataLen == 1)) + { + GET_DATA_BYTE(sock, buf+2); + GET_DATA_INT(len, buf+3); + //printk("tcp:%p buf:%p len:%d\n", getTTCP(sock), (uint8_t*)(buf+5), len); + insertBuf(sock, (uint8_t*)(buf+5), len); + } + return WIFI_SPI_ACK; +} + +int send_data_udp_cmd_cb(int numParam, char* buf, void* ctx) { + wl_err_t err = WL_FAILURE; + + tParam* params = (tParam*) buf; + if ((numParam == 1)&&(params->paramLen == 1)) + { + GET_PARAM_NEXT(BYTE, params, sock); + uint16_t len = 0; + uint8_t* p = mergeBuf(sock, NULL, &len); + err = sendUdpData(getTTCP(sock, TTCP_MODE_TRANSMIT), p, len); + clearBuf(sock); + free(p); + } + + return (err==WL_SUCCESS) ? WIFI_SPI_ACK : WIFI_SPI_ERR; +} + + +int send_data_tcp_cmd_cb(int numParam, char* buf, void* ctx) { + wl_err_t err = WL_FAILURE; + DATA_LED_ON(); + tDataParam* msg = (tDataParam*) buf; + if ((numParam == 2)&&(msg->dataLen == 1)) + { + GET_DATA_BYTE(sock, buf+2); + GET_DATA_INT(len, buf+3); + //printk("tcp:%p buf:%p len:%d\n", getTTCP(sock), (uint8_t*)(buf+5), len); + err = sendTcpData(getTTCP(sock, TTCP_MODE_TRANSMIT), (uint8_t*)(buf+5), len); + } + DATA_LED_OFF(); + return (err==WL_SUCCESS) ? WIFI_SPI_ACK : WIFI_SPI_ERR; +} + +int ack_cmd_cb(int numParam, char* buf, void* ctx) { + return WIFI_SPI_ACK; +} + +int get_result_cmd_cb(int numParam, char* buf, void* ctx) { + INFO_SPI("ifStatus:%d result:%d\n", ifStatus, result); + return WIFI_SPI_ACK; +} + +int disconnect_cmd_cb(int numParam, char* buf, void* ctx) +{ + return ((wl_disconnect()==WL_SUCCESS)? WIFI_SPI_ACK : WIFI_SPI_ERR); +} + + +cmd_spi_state_t get_reply_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CREATE_HEADER_REPLY(reply, recv, 1); + + reply[3] = 1; // paramLen + if (ctx != NULL) { + reply[4] = (*(uint8_t*)ctx); //param + } else { + reply[4] = (ifStatus)?WL_CONNECTED:result; //param + } + + END_HEADER_REPLY(reply, 5, *count); + + //INFO_SPI("result:%d\n", result); + return SPI_CMD_DONE; +} + +cmd_spi_state_t ack_reply_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CREATE_HEADER_REPLY(reply, recv, 1); + + reply[3] = 1; // paramLen + if (ctx != NULL) { + reply[4] = (*(uint8_t*) ctx != 1) ? WIFI_SPI_ERR : WIFI_SPI_ACK; //param + } else { + reply[4] = WIFI_SPI_ACK; //param + } + + END_HEADER_REPLY(reply, 5, *count); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_reply_ipaddr_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 3); + + PUT_LONG_IN_BYTE_NO(ard_netif->ip_addr.addr, reply, 3); + PUT_LONG_IN_BYTE_NO(ard_netif->netmask.addr, reply, 8); + PUT_LONG_IN_BYTE_NO(ard_netif->gw.addr, reply, 13); + + END_HEADER_REPLY(reply, 18, *count); + + return SPI_CMD_DONE; +} + +void getRemoteData(uint8_t sock, uint8_t mode, tRemoteClient* remoteData) +{ + if ((sock>=0) && (sock<MAX_SOCK_NUM)) + { + void* p = getTTCP(sock, mode); + if (p) + { + ttcp_t* _ttcp = (ttcp_t* )p; + if ((_ttcp->udp == UDP_MODE)) + { + if (_ttcp->mode == TTCP_MODE_RECEIVE) + { + remoteData->ipaddr = getRemoteClient(sock)->ipaddr; + remoteData->port = getRemoteClient(sock)->port; + }else{ + remoteData->ipaddr = (_ttcp->upcb) ? _ttcp->upcb->remote_ip.addr : 0; + remoteData->port = (_ttcp->upcb) ? _ttcp->upcb->remote_port : 0; + } + } + } + } +} + + +cmd_spi_state_t get_reply_remote_data_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + DUMP_SPI_CMD(recv); + + GET_DATA_BYTE(sock, recv+4); + + CREATE_HEADER_REPLY(reply, recv, 2); + tRemoteClient remoteData = {0,0}; + //TODO pass the mode + getRemoteData(sock, TTCP_MODE_RECEIVE, &remoteData); + + PUT_LONG_IN_BYTE_NO(remoteData.ipaddr, reply, 3); + PUT_DATA_INT(remoteData.port, reply, 8); + + END_HEADER_REPLY(reply, 11, *count); + + return SPI_CMD_DONE; +} + + +void foundHostByName(const char *name, struct ip_addr *ipaddr, void *callback_arg) +{ + _hostIpAddr.addr = (ipaddr)?ipaddr->addr:0xffffffff; + INFO_SPI("foundHostByName: Found Host: name=%s ip=0x%x\n", name, _hostIpAddr.addr); + hostIpAddrFound = true; +} + +int req_reply_host_by_name_cb(int numParam, char* buf, void* ctx) { + + char hostName[DNS_MAX_NAME_LENGTH]; + tParam* params = (tParam*) buf; + + // HostName + if (params->paramLen < DNS_MAX_NAME_LENGTH) { + memcpy(hostName, &params->param, params->paramLen); + hostName[params->paramLen]='\0'; + } else { + RETURN_ERR(WL_FAILURE) + } + + INFO_SPI("Looking for Host: name=%s\n", hostName); + _hostIpAddr.addr = 0; + hostIpAddrFound = false; + err_t err = dns_gethostbyname(hostName, &_hostIpAddr, foundHostByName, NULL); + if (err == ERR_OK) + { + INFO_SPI("Found Host: name=%s ip=0x%x\n", hostName, _hostIpAddr.addr); + hostIpAddrFound = true; + RETURN_ERR(WL_SUCCESS) + } + RETURN_ERR(WL_FAILURE) +} + +cmd_spi_state_t get_reply_host_by_name_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + u32_t addr = (hostIpAddrFound)?_hostIpAddr.addr : 0xffffffff; + INFO_SPI("Searching for Host: ip=0x%x found=%d\n", addr, hostIpAddrFound); + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 1); + + PUT_LONG_IN_BYTE_NO(addr, reply, 3); + + END_HEADER_REPLY(reply, 8, *count); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_reply_mac_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 1); + + reply[3] = WL_MAC_ADDR_LENGTH; + uint8_t mac[WL_MAC_ADDR_LENGTH]; + if (wl_get_mac_addr(mac) != WL_SUCCESS) { + RETURN_ERR_REPLY(recv, reply, count); + } + //rotate the byte order + reply[4]=mac[5]; + reply[5]=mac[4]; + reply[6]=mac[3]; + reply[7]=mac[2]; + reply[8]=mac[1]; + reply[9]=mac[0]; + END_HEADER_REPLY(reply, 10, *count); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_reply_curr_net_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + uint32_t type = (uint32_t)ctx; + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 1); + + struct wl_network_t* net = wl_get_current_network(); + uint8_t len = 0; + if (net != NULL) + { + switch (type) + { + default: + case GET_CURR_SSID_CMD: + { + len = net->ssid.len; + PUT_BUFDATA_BYTE(net->ssid.ssid, len, reply, 3); + break; + } + case GET_CURR_BSSID_CMD: + { + len = WL_MAC_ADDR_LENGTH; ; + PUT_BUFDATA_BYTE_REV(net->bssid.octet, len, reply, 3); + break; + } + case GET_CURR_RSSI_CMD: + { + len=sizeof(net->rssi); + PUT_LONG_IN_BYTE_HO(net->rssi, reply, 3); + //printk("RSSI:%d", net->rssi); + break; + } + case GET_CURR_ENCT_CMD: + { + len = sizeof(net->enc_type); + PUT_DATA_BYTE(net->enc_type, reply, 3); + //printk("ENCT:%d", net->enc_type); + break; + } + } + }else{ + PUT_DATA_BYTE(0, reply, 3); + } + + END_HEADER_REPLY(reply, 3+len+1, *count); + + //dump(reply, *count); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_reply_idx_net_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + uint32_t type = (uint32_t)ctx; + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 1); + + DUMP_SPI_CMD(recv); + + GET_DATA_BYTE(idx, recv+4); + + if (idx >= WL_NETWORKS_LIST_MAXNUM) + { + WARN("Index out of range: %d\n", idx); + return SPI_CMD_DONE; + } + uint8_t len = 0; + switch (type) + { + default: + case GET_IDX_SSID_CMD: + { + len = network_list.net[idx]->ssid.len; + PUT_BUFDATA_BYTE(network_list.net[idx]->ssid.ssid, len, reply, 3); + INFO_UTIL("SSID:%s\n", network_list.net[idx]->ssid.ssid); + break; + } + case GET_IDX_RSSI_CMD: + { + len = 4; + PUT_LONG_IN_BYTE_HO(network_list.net[idx]->rssi, reply, 3); + INFO_UTIL("RSSI:%d\n", network_list.net[idx]->rssi); + break; + } + case GET_IDX_ENCT_CMD: + { + len = 1; + PUT_DATA_BYTE(network_list.net[idx]->enc_type, reply, 3); + INFO_UTIL("ENCT:%d\n", network_list.net[idx]->enc_type); + break; + } + } + + + END_HEADER_REPLY(reply, 3+len+1, *count); + + DUMP(reply, *count); + + return SPI_CMD_DONE; +} + +static void copy_network_list(struct wl_network_list_t *dst, + struct wl_network_list_t *src) +{ + int i; + for (i = 0; i < dst->cnt; i++) + free(dst->net[i]); + free(dst->net); + + dst->cnt = 0; + + if (src->cnt == 0) + return; + dst->net = calloc(1, src->cnt * sizeof(struct wl_network_t *)); + if (dst->net == NULL) { + printk("could not allocate all gui net array\n"); + return; + } + + for (i = 0; i < src->cnt; i++) { + struct wl_network_t *net = src->net[i]; + dst->net[i] = malloc(sizeof(*net)); + if (dst->net[i] == NULL) { + printk("could not allocate all gui nets\n"); + return; + } + + memcpy(dst->net[i], net, sizeof(*net)); + dst->cnt++; + } +} + +int start_scan_net_cmd_cb(int numParam, char* buf, void* ctx) { + wl_err_t err = WL_FAILURE; + + INFO_SPI("Start Network Scan %d\n", numParam); + if (scanNetCompleted){ + scanNetCompleted = false; + err = wl_scan(); + if (err != WL_SUCCESS) + { + // May be busy scanning already, no fatal error + WARN("err=%d\n", err); + err = WL_SUCCESS; + } + } + return err; +} + +cmd_spi_state_t get_reply_scan_networks_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + const int8_t SCAN_NOT_YET_COMPLETED = 0; + + if (!scanNetCompleted) + { + //return empty list with an error to retry + CREATE_HEADER_REPLY(reply, recv, SCAN_NOT_YET_COMPLETED); + END_HEADER_REPLY(reply, 3, *count); + INFO_SPI("Scan not completed!\n"); + return SPI_CMD_DONE; + } + + int network_cnt = 0; + struct wl_network_list_t* wl_network_list; + + wl_get_network_list(&wl_network_list); + if (wl_network_list->cnt == 0) + { + CREATE_HEADER_REPLY(reply, recv, 0); + END_HEADER_REPLY(reply, 3, *count); + INFO_SPI("Networks not found!\n"); + return SPI_CMD_DONE; + } + + if (wl_network_list->cnt > WL_NETWORKS_LIST_MAXNUM) + { + network_cnt = WL_NETWORKS_LIST_MAXNUM ; + } + else{ + network_cnt = wl_network_list->cnt ; + } + + copy_network_list(&network_list, wl_network_list); + CREATE_HEADER_REPLY(reply, recv, network_cnt); + + uint8_t start = 3; + int ii = 0; + for (; ii < network_cnt; ii++) + { + uint8_t len = network_list.net[ii]->ssid.len+1; + network_list.net[ii]->ssid.ssid[network_list.net[ii]->ssid.len]=0; + PUT_BUFDATA_BYTE(network_list.net[ii]->ssid.ssid, len, reply, start); + start += len+1; + INFO_SPI("%d - %s [%d]- %d - %d - 0x%x\n",ii, network_list.net[ii]->ssid.ssid, + len, network_list.net[ii]->enc_type, + network_list.net[ii]->rssi, network_list.net[ii]->bssid); + } + + END_HEADER_REPLY(reply, start, *count); + //DUMP(reply, *count); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_state_tcp_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + + uint8_t _state = CLOSED; + if ((recv[3]==1)&&(recv[4]>=0)&&(recv[4]<MAX_SOCK_NUM)) + { + _state = getStateTcp(getTTCP((uint8_t)recv[4], TTCP_MODE_RECEIVE), 0); + } + PUT_DATA_BYTE(_state, reply, 3); + END_HEADER_REPLY(reply, 5, *count); + INFO_SPI_POLL("state:%d\n", _state); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_client_state_tcp_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + + uint8_t _state = CLOSED; + uint8_t _sock = recv[4]; + if ((recv[3]==1)&&(_sock>=0)&&(_sock<MAX_SOCK_NUM)) + { + void * p= getTTCP(_sock, TTCP_MODE_TRANSMIT); + if (p!=NULL) + { + _state = getStateTcp(p, 1); + }else{ + WARN_VER("TTCP not found for sock:%d\n", _sock); + } + } + PUT_DATA_BYTE(_state, reply, 3); + END_HEADER_REPLY(reply, 5, *count); + INFO_SPI_POLL("sock:%d state:%d\n", _sock, _state); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t avail_data_tcp_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + uint16_t dataAvail = 0; + if ((recv[3]==1)&&(recv[4]>=0)&&(recv[4]<MAX_SOCK_NUM)) + { + dataAvail = getAvailTcpDataByte((uint8_t)recv[4]); + } + PUT_DATA_INT_NO(dataAvail, reply, 3); + END_HEADER_REPLY(reply, 6, *count); + + INFO_SPI_POLL("dataAvail:%d\n", dataAvail); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t test_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + static int counter = 0; + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + PUT_DATA_BYTE(++counter, reply, 3); + END_HEADER_REPLY(reply, 5, *count); + return SPI_CMD_DONE; +} + +cmd_spi_state_t data_sent_tcp_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + SIGN2_DN(); + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + uint8_t dataSent = 0; + if ((recv[3]==1)&&(recv[4]>=0)&&(recv[4]<MAX_SOCK_NUM)) + { + dataSent = isDataSent(getTTCP((uint8_t)recv[4], TTCP_MODE_TRANSMIT)); + } + PUT_DATA_BYTE(dataSent, reply, 3); + END_HEADER_REPLY(reply, 5, *count); + SIGN2_UP(); + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_data_tcp_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + uint8_t data; + + CHECK_ARD_NETIF(recv, reply, count); + + tParam* params = (tParam*)&recv[3]; + + GET_PARAM_NEXT(BYTE, params, _sock); + GET_PARAM_NEXT(INT, params, _peek); + + if ((recv[3]==1)&&(recv[4]>=0)&&(recv[4]<MAX_SOCK_NUM)) + { + SIGN2_DN(); + + if (getTcpDataByte((uint8_t)recv[4], &data, _peek)) + { + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + PUT_DATA_BYTE(data, reply, 3); + END_HEADER_REPLY(reply, 5, *count); + }else{ + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_0); + END_HEADER_REPLY(reply, 3, *count); + } + SIGN2_UP(); + } + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_databuf_tcp_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + uint8_t* data; + uint16_t len; + + CHECK_ARD_NETIF(recv, reply, count); + + GET_DATA_BYTE(sock, buf+5); + if ((sock>=0)&&(sock<MAX_SOCK_NUM)) + { + if (getTcpData((uint8_t)sock, (void**)&data, &len)) + { + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_1); + PUT_BUFDATA_INT(data, len, reply, 3); + END_HEADER_REPLY(reply, 3+len+2, *count); + freeTcpData((uint8_t)sock); + }else{ + CREATE_HEADER_REPLY(reply, recv, PARAM_NUMS_0); + END_HEADER_REPLY(reply, 3, *count); + } + } + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_firmware_version_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 1); + + uint8_t len = strlen(fwVersion); + + PUT_BUFDATA_BYTE(fwVersion, len, reply, 3); + + END_HEADER_REPLY(reply, 3+len+1, *count); + + return SPI_CMD_DONE; +} + +cmd_spi_state_t get_test_cmd_cb(char* recv, char* reply, void* ctx, uint16_t* count) { + + uint8_t buffer[255] = {0}; + + CHECK_ARD_NETIF(recv, reply, count); + + CREATE_HEADER_REPLY(reply, recv, 1); + uint8_t len = 0; + if ((recv[3]==1)&&(recv[4]>=0)&&(recv[4]<0xFF)) + { + len = recv[4]; + int i= 0; + for (; i<len; ++i) buffer[i]=i; + PUT_BUFDATA_BYTE(buffer, len, reply, 3); + }else{ + len = strlen(fwVersion); + PUT_BUFDATA_BYTE(fwVersion, len, reply, 3); + } + END_HEADER_REPLY(reply, 3+len+1, *count); + + return SPI_CMD_DONE; +} + +int sendReply(int cmdIdx, char* recv, char* reply, void* resultCmd) +{ + uint16_t _count = 0; + int _result = SPI_OK; + + cmd_spi_list[cmdIdx].reply_cb(recv, reply, resultCmd, &_count); + state = SPI_CMD_REPLING; + + AVAIL_FOR_SPI(); + _result = write_stream(ARD_SPI, &reply[0], _count); +#ifdef _SPI_STATS_ + if ( _result != SPI_OK) + { + statSpi.lastCmd = cmd_spi_list[cmdIdx].cmd_id; + } +#endif + BUSY_FOR_SPI(); + + IF_SPI_DUMP(printk("==>")); + DUMP_SPI(recv, count); + IF_SPI_DUMP(printk("<==")); + DUMP_SPI(reply, _count); + replyCount = _count; + return _result; +} + +unsigned char* getStartCmdSeq(unsigned char* _recv, int len, int *offset) +{ + int i = 0; + *offset = 0; + //DEB_PIN_UP(); + for (; i<len; ++i) + { + if (_recv[i]==START_CMD) + { + if (i!=0) + { + DEB_PIN_TRIGGER(); + IF_WARN_VER(dump((char*)_recv, (uint16_t)len)); + WARN("%d] Disall. %d/%d cmd:%d\n", cmdCorr, i, len,_recv[i+1]); + } + *offset = i; + return &_recv[i]; + } + } + //DEB_PIN_DN(); + WARN("%d] Disall. %d\n", cmdCorr, i); + + return NULL; +} + +inline bool spiMsg8(uint8_t cmd) +{ + return ((cmd & DATA_FLAG)==0); +} + +int call_reply_cb(char* recv, char* reply) { + +// // check the start of message +// //TODO CHECK if also the ,en must be resize +// //char* recv = (char*)getStartCmdSeq((unsigned char*)_recv, &count); +// char* recv = (char*)getStartCmdSeq((unsigned char*)_recv, count); +// if (recv == NULL) +// return REPLY_ERR_MSG; + + unsigned char cmdId = (unsigned char) recv[1]; + uint8_t _result = REPLY_NO_ERR; + U32 i; + for (i = 0; i < ARRAY_SIZE(cmd_spi_list); i++) { + if (cmd_spi_list[i].cmd_id == cmdId) { + + if (cmd_spi_list[i].flags == CMD_SET_FLAG) { + //Send Reply for SET commands + if (sendReply(i, recv, reply, cmd_spi_list[i].ctx) != SPI_OK) + return REPLY_ERR_SET; + if (spiMsg8(cmdId)) + { + tSpiMsg* spiMsg = (tSpiMsg*) recv; + _result = cmd_spi_list[i].cb(spiMsg->nParam, + (char*) &(spiMsg->params[0]), cmd_spi_list[i].ctx); + }else + { + tSpiMsgData* spiMsg = (tSpiMsgData*) recv; + _result = cmd_spi_list[i].cb(spiMsg->nParam, + (char*) &(spiMsg->params[0]), cmd_spi_list[i].ctx); + } + + if (_result != WIFI_SPI_ACK) + return REPLY_ERR_CMD; + else + return REPLY_NO_ERR; + }else{ + if (spiMsg8(cmdId)) + { + tSpiMsg* spiMsg = (tSpiMsg*) recv; + _result = cmd_spi_list[i].cb(spiMsg->nParam, + (char*) &(spiMsg->params[0]), NULL); + }else{ + tSpiMsgData* spiMsg = (tSpiMsgData*) recv; + _result = cmd_spi_list[i].cb(spiMsg->nParam, + (char*) &(spiMsg->params[0]), NULL); + } + //Send Reply for GET commands or Immediate SET apply + if (cmd_spi_list[i].flags == CMD_GET_FLAG) { + if (sendReply(i, recv, reply, cmd_spi_list[i].ctx) != SPI_OK) + return REPLY_ERR_GET; + else + return REPLY_NO_ERR; + }else if (cmd_spi_list[i].flags == CMD_IMM_SET_FLAG) + { + if (sendReply(i, recv, reply, &_result) != SPI_OK) + return REPLY_ERR_GET; + else + return REPLY_NO_ERR; + + } + } + } + } + // Command not found + if (i==ARRAY_SIZE(cmd_spi_list)) + { + WARN("Unknown cmd 0x%x\n", cmdId); + DUMP(recv, count); + return REPLY_ERR_CMD; + } + return REPLY_NO_ERR; +} + +void init_spi_cmds(void* ctx) { + spi_add_cmd(SET_NET_CMD, set_net_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(SET_PASSPHRASE_CMD, set_passphrase_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(SET_KEY_CMD, set_key_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(SET_IP_CONFIG_CMD, set_ip_config_cmd_cb, ack_reply_cb, ctx, CMD_SET_FLAG); + spi_add_cmd(SET_DNS_CONFIG_CMD, set_dns_config_cmd_cb, ack_reply_cb, ctx, CMD_SET_FLAG); + spi_add_cmd(GET_CONN_STATUS_CMD, get_result_cmd_cb, get_reply_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_IPADDR_CMD, ack_cmd_cb, get_reply_ipaddr_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_MACADDR_CMD, ack_cmd_cb, get_reply_mac_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_CURR_SSID_CMD, ack_cmd_cb, get_reply_curr_net_cb, (void*)GET_CURR_SSID_CMD, CMD_GET_FLAG); + spi_add_cmd(GET_CURR_BSSID_CMD, ack_cmd_cb, get_reply_curr_net_cb, (void*)GET_CURR_BSSID_CMD, CMD_GET_FLAG); + spi_add_cmd(GET_CURR_RSSI_CMD, ack_cmd_cb, get_reply_curr_net_cb, (void*)GET_CURR_RSSI_CMD, CMD_GET_FLAG); + spi_add_cmd(GET_CURR_ENCT_CMD, ack_cmd_cb, get_reply_curr_net_cb, (void*)GET_CURR_ENCT_CMD, CMD_GET_FLAG); + spi_add_cmd(START_SCAN_NETWORKS, start_scan_net_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(SCAN_NETWORKS, ack_cmd_cb, get_reply_scan_networks_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(DISCONNECT_CMD, disconnect_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(GET_IDX_ENCT_CMD, ack_cmd_cb, get_reply_idx_net_cb, (void*)GET_IDX_ENCT_CMD, CMD_GET_FLAG); + spi_add_cmd(GET_IDX_SSID_CMD, ack_cmd_cb, get_reply_idx_net_cb, (void*)GET_IDX_SSID_CMD, CMD_GET_FLAG); + spi_add_cmd(GET_IDX_RSSI_CMD, ack_cmd_cb, get_reply_idx_net_cb, (void*)GET_IDX_RSSI_CMD, CMD_GET_FLAG); + spi_add_cmd(REQ_HOST_BY_NAME_CMD, req_reply_host_by_name_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(GET_HOST_BY_NAME_CMD, ack_cmd_cb, get_reply_host_by_name_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(START_SERVER_TCP_CMD, start_server_tcp_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(START_CLIENT_TCP_CMD, start_client_tcp_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(STOP_CLIENT_TCP_CMD, stop_client_tcp_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(GET_STATE_TCP_CMD, ack_cmd_cb, get_state_tcp_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_DATA_TCP_CMD, ack_cmd_cb, get_data_tcp_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(AVAIL_DATA_TCP_CMD, ack_cmd_cb, avail_data_tcp_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(SEND_DATA_TCP_CMD, send_data_tcp_cmd_cb, ack_reply_cb, NULL, CMD_IMM_SET_FLAG); + spi_add_cmd(DATA_SENT_TCP_CMD, ack_cmd_cb, data_sent_tcp_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_DATABUF_TCP_CMD, ack_cmd_cb, get_databuf_tcp_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_CLIENT_STATE_TCP_CMD, ack_cmd_cb, get_client_state_tcp_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_FW_VERSION_CMD, ack_cmd_cb, get_firmware_version_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(GET_TEST_CMD, ack_cmd_cb, get_test_cmd_cb, NULL, CMD_GET_FLAG); + spi_add_cmd(INSERT_DATABUF_CMD, insert_data_cmd_cb, ack_reply_cb, NULL, CMD_IMM_SET_FLAG); + spi_add_cmd(SEND_DATA_UDP_CMD, send_data_udp_cmd_cb, ack_reply_cb, NULL, CMD_SET_FLAG); + spi_add_cmd(GET_REMOTE_DATA_CMD, ack_cmd_cb, get_reply_remote_data_cb, NULL, CMD_GET_FLAG); +} + + +int checkMsgParam8(unsigned char* buf) +{ + int paramLenTot=0; + tSpiMsg* spiMsg = (tSpiMsg*)buf; + tParam *param = spiMsg->params; + int i=0; + for (; i<spiMsg->nParam; ++i) + { + uint8_t _len = param->paramLen; + paramLenTot+= _len+1; + //printk("%d) len:0x%x\n", i, _len); + param = (tParam*)((char*)(param)+_len+1); + } + return paramLenTot; +} + +int checkMsgParam16(unsigned char* buf) +{ + int paramLenTot=0; + tSpiMsgData* spiMsg = (tSpiMsgData*)buf; + tDataParam* param = (tDataParam*)spiMsg->params; + int i=0; + for (; i<spiMsg->nParam; ++i) + { + uint16_t _len = param->dataLen; + paramLenTot+= _len+sizeof(param->dataLen); + //printk("%d) len:0x%x\n", i, _len); + param = (tDataParam*)((char*)(param)+_len+sizeof(param->dataLen)); + } + return paramLenTot; +} + +bool checkMsgFormat(uint8_t* _recv, int len, int* offset) +{ + + unsigned char* recv = getStartCmdSeq(_recv, len, offset); + if ((recv == NULL)||(recv!=_recv)) + { + DEB_PIN_TRIGGER(); + + IF_WARN_VER(DUMP((char*)_recv, len)); + + STATSPI_DISALIGN_ERROR(); + + if (recv == NULL) + return false; + } + tSpiMsg* spiMsg = (tSpiMsg*) recv; + if ((spiMsg->cmd == START_CMD)&&((spiMsg->tcmd & REPLY_FLAG) == 0)) + { + int paramLenTot = 0; + if (spiMsg8(spiMsg->tcmd)) + paramLenTot = checkMsgParam8(recv); + else + { + DUMP_SPI(_recv, len); + paramLenTot = checkMsgParam16(recv); + } + + //INFO_SPI("cmd:0x%x TotLen:%d\n", spiMsg->tcmd, paramLenTot); + char* p = (char*)recv + paramLenTot + sizeof(tSpiHdr); + if (*p == END_CMD) + { + return true; + }else{ + WARN("%d] Not found end cmd: 0x%x\n", cmdCorr, *p); + } + } + return false; +} + +//#define AVR32_USART_CSR_ITERATION_MASK (UNDERRUN) 0x00000400 +//#define AVR32_USART_CSR_OVRE_MASK 0x00000020 +//#define AVR32_USART_CSR_RXRDY_MASK 0x00000001 + + +void spi_poll(struct netif* netif) { + + ard_netif = netif; + + if (startReply) + { + startReply = false; + int offset = 0; + DISABLE_SPI_INT(); + if (checkMsgFormat(_receiveBuffer, receivedChars, &offset)) + { + state = SPI_CMD_INPROGRESS; + count = receivedChars-offset; + if (count >= CMD_MAX_LEN) + count = CMD_MAX_LEN; + memcpy(buf, &_receiveBuffer[offset], count); + + //mark as buffer used + _receiveBuffer[0] = 0; + + int err = call_reply_cb(buf, &reply[0]); + if (err != REPLY_NO_ERR) + { + DUMP_SPI(buf, count); + DUMP_SPI(reply, replyCount); + } + receivedChars = 0; + count = 0; + state = SPI_CMD_IDLE; + } + else + { + sendError(); + WARN("%d] Check format msg failed!\n", cmdCorr); + IF_WARN_VER(dump((char*)_receiveBuffer, receivedChars)); + state = SPI_CMD_IDLE; + count=0; + //mark as buffer used + _receiveBuffer[0] = 0; + } + CLEAR_SPI_INT(); + //Enable Spi int to receive a new command + ENABLE_SPI_INT(); + //Available for receiving a new spi data + AVAIL_FOR_SPI(); + } + +#ifdef _SPI_STATS_ + if (statSpi.lastError != 0) + { + WARN("%d] Errot=0x%x spiStatus:0x%x\n", cmdCorr, statSpi.lastError, statSpi.status); + statSpi.lastError = 0; + } +#endif +} + +inline int spi_slaveReceiveInt(volatile avr32_spi_t *spi) +{ + receivedChars=0; + int index = 0; + int err = SPI_OK; + state = SPI_CMD_INPUT; + bool endOfFrame = false; + + do { + unsigned int timeout = SPI_TIMEOUT; + err = SPI_OK; + + while ((spi->sr & (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) != + (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) { + if ((timeout--)==0) { + err=SPI_ERROR_TIMEOUT; + break; + } + } + //DEB_PIN_TG(); + #if 0 +#ifdef _SPI_STATS_ + if (spi->sr & AVR32_SPI_SR_OVRES_MASK) + { + STATSPI_OVERRIDE_ERROR(); + } +#endif +#endif + if (err == SPI_OK) { + _receiveBuffer[index] = (spi->rdr >> AVR32_SPI_RDR_RD_OFFSET) & 0x00ff; + DEB_PIN_UP(2); + if ((index==0) && (_receiveBuffer[index] != START_CMD)) + DEB_PIN_TRIGGER(); + ++index; + ++receivedChars; + }else{ +#ifdef _SPI_STATS_ + STATSPI_TIMEOUT_ERROR(); +#endif + break; + } + + /* break on buffer overflow */ + if (receivedChars >= _BUFFERSIZE) { + err = SPI_ERROR_OVERRUN_AND_MODE_FAULT; + break; + } + + if (_receiveBuffer[index - 1] == END_CMD) + { + int8_t numParams = 0; + int idx = PARAM_LEN_POS+1; + bool islen16bit = ((_receiveBuffer[CMD_POS] & DATA_FLAG) == DATA_FLAG); + if (index >= idx) + { + numParams = _receiveBuffer[PARAM_LEN_POS]; + while (((index-1) > idx)&&(numParams>0)) + { + if (islen16bit) + idx += (_receiveBuffer[idx]<<8) + _receiveBuffer[idx+1]+2; + else + idx += _receiveBuffer[idx]+1; + --numParams; + } + if (((index-1) == idx) && (numParams == 0)) + endOfFrame = true; + } + if (!endOfFrame){ + WARN("Wrong termination index:%d nParam:%d idx:%d 16bit:%d\n", index, numParams, idx, islen16bit); + #ifdef _DEBUG_ + dump((char*)_receiveBuffer, receivedChars); + while(0); + #endif + } + } + } while (!endOfFrame); + return err; +} + +#if defined (__GNUC__) +__attribute__((__interrupt__)) +#elif defined (__ICCAVR32__) +__interrupt +#endif +static void spi_int_handler(void) +{ + volatile avr32_spi_t *spi = ARD_SPI; + DEB_PIN_DN(2); + DISABLE_SPI_INT(); + + if ((spi->sr & AVR32_SPI_SR_RDRF_MASK) != 0) + { + int err = spi_slaveReceiveInt(ARD_SPI); + if (err == SPI_OK) + { + BUSY_FOR_SPI(); + startReply=true; + ++cmdCorr; + //maintain disable interrupt to send the reply command + return; + } + } + ENABLE_SPI_INT(); +} + +inline spi_status_t spi_read8(volatile avr32_spi_t *spi, unsigned char *data) +{ + unsigned int timeout = SPI_TIMEOUT; + + while ((spi->sr & (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) != + (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + *data = (spi->rdr >> AVR32_SPI_RDR_RD_OFFSET) & 0x00ff; + + return SPI_OK; +} + + +/*! + * \brief Interrupt handler of the External interrupt line "1". + */ +#if __GNUC__ +__attribute__((__interrupt__)) +#elif __ICCAVR32__ +__interrupt +#endif +static void eic_int_handler1(void) +{ + eic_clear_interrupt_line(&AVR32_EIC, EXT_INT_LINE1); + startRecvCmdSignal = TRUE; +} + +//! Structure holding the configuration parameters of the EIC module. +eic_options_t eic_options[EXT_INT_NB_LINES]; + +void initExtInt() +{ + // Enable edge-triggered interrupt. + eic_options[0].eic_mode = EIC_MODE_EDGE_TRIGGERED; + // Interrupt will trigger on falling edge. + eic_options[0].eic_edge = EIC_EDGE_FALLING_EDGE; + // Initialize in synchronous mode : interrupt is synchronized to the clock + eic_options[0].eic_async = EIC_SYNCH_MODE; + // Set the interrupt line number. + eic_options[0].eic_line = EXT_INT_LINE1; + + // Disable all interrupts. + Disable_global_interrupt(); + + INTC_register_interrupt(&eic_int_handler1, EXT_INT_IRQ_LINE1, AVR32_INTC_INT0); + + // Map the interrupt lines to the GPIO pins with the right peripheral functions. + gpio_enable_module_pin(EXT_INT_PIN_LINE1,EXT_INT_FUNCTION_LINE1); + + // Init the EIC controller with the options + eic_init(&AVR32_EIC, eic_options, EXT_INT_NB_LINES); + + // Enable the chosen lines and their corresponding interrupt feature. + eic_enable_line(&AVR32_EIC, eic_options[0].eic_line); + eic_enable_interrupt_line(&AVR32_EIC, eic_options[0].eic_line); + + // Enable all interrupts. + Enable_global_interrupt(); +} + +int initSpi(void* ctx) +{ + volatile avr32_spi_t *spi = &AVR32_SPI0; + gpio_map_t spi_piomap = { \ + {AVR32_SPI0_SCK_0_0_PIN, AVR32_SPI0_SCK_0_0_FUNCTION}, \ + {AVR32_SPI0_MISO_0_0_PIN, AVR32_SPI0_MISO_0_0_FUNCTION}, \ + {AVR32_SPI0_MOSI_0_0_PIN, AVR32_SPI0_MOSI_0_0_FUNCTION}, \ + {AVR32_SPI0_NPCS_0_0_PIN, AVR32_SPI0_NPCS_0_0_FUNCTION}, \ + }; + + INFO_INIT("SPI init...\n"); + + /* Init PIO */ + gpio_enable_module(spi_piomap, ARRAY_SIZE(spi_piomap)); + + spi_options_t spiOptions; + + spiOptions.reg = 0; + spiOptions.baudrate = SPI_SLAVE_SPEED; + spiOptions.bits = SPI_BITS; + spiOptions.spck_delay = 0; + spiOptions.trans_delay = 4; + spiOptions.stay_act = 0; + spiOptions.spi_mode = 0; + spiOptions.modfdis = 0; + + /* Initialize as slave; bits, spi_mode */ + if (spi_initSlave(spi, spiOptions.bits, spiOptions.spi_mode) != SPI_OK) + { + INFO_SPI("SPI initialization failed!"); + return 1; + } + + spi_status_t status = spi_setupChipReg(spi, &spiOptions, FPBA_HZ); + if (status == SPI_ERROR_ARGUMENT) + WARN("Error configuring SPI\n"); + + // Disable all interrupts. + Disable_global_interrupt(); + + // Register the SPI interrupt handler to the interrupt controller. + INTC_register_interrupt((__int_handler)(&spi_int_handler), AVR32_SPI0_IRQ, AVR32_INTC_INT0); + + // Enable all interrupts. + Enable_global_interrupt(); + + ENABLE_SPI_INT(); + + spi_enable(spi); +#ifdef _SPI_STATS_ + initStatSpi(); +#endif + init_spi_cmds(ctx); + + memset(_receiveBuffer, 0, sizeof(_receiveBuffer)); + memset(buf, 0, sizeof(buf)); + memset(reply, 0, sizeof(reply)); + + initMapSockTcp(); + set_result(WL_IDLE_STATUS); + + init_pBuf(); + + return 0; +} + diff --git a/libraries/WiFi/extras/wifiHD/src/ard_spi.h b/libraries/WiFi/extras/wifiHD/src/ard_spi.h new file mode 100644 index 000000000..27ec33e81 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ard_spi.h @@ -0,0 +1,88 @@ +/* + * ard_spi.h + * + * Created on: May 27, 2010 + * Author: mlf by Metodo2 srl + */ + +#ifndef ARD_SPI_H_ +#define ARD_SPI_H_ + +#include "lwip/netif.h" +#include "console.h" +#include "wl_definitions.h" + + +typedef enum { + SPI_CMD_IDLE, + SPI_CMD_INPUT, + SPI_CMD_DONE, + SPI_CMD_INPROGRESS, + SPI_CMD_REPLING, + SPI_CMD_FAIL, +} cmd_spi_state_t; + +typedef enum { + REPLY_ERR_GET, + REPLY_ERR_SET, + REPLY_ERR_CMD, + REPLY_ERR_MSG, + REPLY_NO_ERR, +} reply_err_t; + + +typedef enum { + CMD_GET_FLAG = 0x01, + CMD_SET_FLAG = 0x02, + CMD_IMM_SET_FLAG = 0x04, +}cmd_flags; + +typedef enum eProtMode {TCP_MODE, UDP_MODE}tProtMode; + +#define TIMEOUT_SPI 200 +#define SPI_ALIGN_ERROR 0xF0 +#define SPI_OVERRIDE_ERROR 0xF1 +#define SPI_TIMEOUT_ERROR 0xF2 +#define DUMMY_DATA 0xFF + +typedef int (*cmd_spi_cb_t)(int numParam, char* buf, void* ctx); +typedef cmd_spi_state_t (*cmd_spi_rcb_t)(char* recv, char* reply, void* ctx, uint16_t* _count); + +typedef struct eRemoteClient{ + uint32_t ipaddr; + uint16_t port; +}tRemoteClient; + +void set_result_cmd(int err) ; + +void set_result(wl_status_t _status); + +int initSpi(void* ctx); + +void initExtInt(); + +void spi_poll(struct netif* netif); + +int spi_slaveReceive(volatile avr32_spi_t *spi); + +void showTTCPstatus(); + +int getSock(void * _ttcp); + +void* getTTCP(uint8_t sock, uint8_t mode); + +void setMapSockMode(uint8_t sock, void* _ttcp, uint8_t _tcp_mode); + +void clearMapSockTcp(uint8_t sock, uint8_t mode); + +int start_server_tcp(uint16_t port, uint8_t sock, uint8_t protMode); + +int start_client_tcp(uint32_t _addr, uint16_t port, uint8_t sock, uint8_t protMode); + +void setRemoteClient(uint16_t sock, uint32_t _ipaddr, uint16_t _port); + +tRemoteClient* getRemoteClient(uint16_t sock); + +void getRemoteData(uint8_t sock, uint8_t mode, tRemoteClient* remoteData); + +#endif /* ARD_SPI_H_ */ diff --git a/libraries/WiFi/extras/wifiHD/src/ard_tcp.c b/libraries/WiFi/extras/wifiHD/src/ard_tcp.c new file mode 100644 index 000000000..0a73b200d --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ard_tcp.c @@ -0,0 +1,987 @@ +/* + * ard_tcp.c + * + * Created on: May 27, 2010 + * Author: mlf by Metodo2 srl + */ + +//#define _APP_DEBUG_ +#include "lwip/opt.h" + +#include "lwip/mem.h" +#include "lwip/raw.h" +#include "lwip/icmp.h" +#include "lwip/netif.h" +#include "lwip/sys.h" +#include "lwip/sockets.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" +#include "lwip/tcp.h" +#include "lwip/udp.h" + +#include "ard_tcp.h" +#include "ard_spi.h" +#include "timer.h" +#include "util.h" + +#include "getopt.h" +#include "ard_utils.h" +#include "debug.h" +#include "trace.h" + +unsigned int startTime = 0; +extern bool ifStatus; + +static err_t tcp_data_sent(void *arg, struct tcp_pcb *pcb, u16_t len); + +static void atcp_init_pend_flags(struct ttcp* _ttcp) +{ + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + { + if (_ttcp) _ttcp->pending_close[i] = false; + } +} + +/** + * Clean up and free the ttcp structure + */ +static void ard_tcp_destroy(struct ttcp* ttcp) { + err_t err = ERR_OK; + DUMP_TCP_STATE(ttcp); + + uint8_t sock = getSock(ttcp); + if (sock == -1) + WARN("ttcp already deallocated!\n"); + + freeAllTcpData(sock); + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + { + if (ttcp->tpcb[i]) { + tcp_arg(ttcp->tpcb[i], NULL); + tcp_sent(ttcp->tpcb[i], NULL); + tcp_recv(ttcp->tpcb[i], NULL); + tcp_err(ttcp->tpcb[i], NULL); + //TEMPORAQARY + //err = tcp_close(ttcp->tpcb); + INFO_TCP("Closing tpcb: state:0x%x err:%d\n", ttcp->tpcb[i]->state, err); + } + } + + if (ttcp->lpcb) { + tcp_arg(ttcp->lpcb, NULL); + tcp_accept(ttcp->lpcb, NULL); + err = tcp_close(ttcp->lpcb); + INFO_TCP("Closing lpcb: state:0x%x err:%d\n", ttcp->lpcb->state, err); + } + + if (ttcp->upcb) { + udp_disconnect(ttcp->upcb); + udp_remove(ttcp->upcb); + } + + FREE_PAYLOAD(ttcp); + free(ttcp); +} + +/** + * Invoked when transfer is done or aborted (non-zero result). + */ +static void ard_tcp_done(struct ttcp* ttcp, int result) { +// if (result == 0) +// ard_tcp_print_stats(ttcp); + + if (ttcp->done_cb) + ttcp->done_cb(ttcp->opaque, result); + + ard_tcp_destroy(ttcp); + clearMapSockTcp(getSock(ttcp), GET_TCP_MODE(ttcp)); +} + +/** + * Only used in TCP mode. + * Will transmit a maximum of pbuf->tot_len bytes. + * Called upon connect and when there's space available in the TCP send window + * + */ +static err_t tcp_send_data_pcb(struct ttcp *ttcp, struct tcp_pcb *pcb) { + err_t err = ERR_OK; + uint32_t len; + + GET_CLIENT_ID(ttcp, pcb); + + len = ttcp->left[id]; + ttcp->buff_sent[id] = 0; + + if (len == 0) return ERR_MEM; + + INFO_TCP_VER("left=%d len:%d\n", ttcp->left[id], len); + + /* don't send more than we have in the payload */ + if (len > ttcp->buflen) + len = ttcp->buflen; + + /* We cannot send more data than space available in the send + buffer. */ + if (len > tcp_sndbuf(pcb)) + len = tcp_sndbuf(pcb); + + IF_TCP(startTime = timer_get_ms()); + err = tcp_write(pcb, ttcp->payload[id], len, TCP_WRITE_FLAG_COPY); + if (err != ERR_OK) + { + INFO_TCP("tcp_write failed %p state:%d len:%d err:%d\n", + pcb, pcb->state, len, err); + ttcp->buff_sent[id] = 0; + }else{ + ttcp->buff_sent[id] = 1; + ttcp->left[id] -= len; + } + + return err; +} + + +/** + * Only used in TCP mode. + */ +static err_t tcp_connect_cb(void *arg, struct tcp_pcb *tpcb, err_t err) { + struct ttcp* _ttcp = arg; + + if (_ttcp == NULL) return ERR_ARG; + + GET_CLIENT_ID(_ttcp, tpcb); + INFO_TCP("TTCP [%p-%p]: connect %d %d\n", _ttcp, tpcb, err, tpcb->state); + + _connected = ( tpcb->state == ESTABLISHED) ? 1 : 0; + _ttcp->tcp_poll_retries[id] = 0; + + _ttcp->start_time = timer_get_ms(); + + return ERR_OK; +} + +static void cleanSockState_cb(void *ctx) { + struct ttcp* _ttcp = ctx; + + if (_ttcp == NULL) return; + + int sock = getSock(_ttcp); + if (sock != -1) + clearMapSockTcp(sock, GET_TCP_MODE(_ttcp)); + INFO_TCP("TTCP [%p]: cleanSockState_cb %d\n", _ttcp, sock); + _connected = false; +} + +/** + * Only used in TCP mode. + */ + +static err_t close_conn_pcb(struct tcp_pcb* tpcb) { + + err_t err = tcp_close(tpcb); + if (err== ERR_OK) + { + tcp_arg(tpcb, NULL); + tcp_sent(tpcb, NULL); + tcp_recv(tpcb, NULL); + } + + INFO_TCP("Closing tpcb[%p]: state:0x%x err:%d\n", tpcb, tpcb->state, err); + return err; +} + +static void atcp_conn_err_cb(void *arg, err_t err) { + struct ttcp* _ttcp = arg; + + WARN("TTCP [%p]: connection error: %d currId:%d\n", + _ttcp, err, getCurrClientConnId()); + + if (ifStatus == false) + printk("Abort connection\n"); + + if (err == ERR_ABRT) + { + removeNewClientConn(_ttcp, GET_CURR_PCB(_ttcp)); + FREE_PAYLOAD_ID(_ttcp, getCurrClientConnId()); + } +} + +static void atcp_conn_cli_err_cb(void *arg, err_t err) { + struct ttcp* _ttcp = arg; + + if (_ttcp == NULL) return; + + WARN("TTCP [%p]: connection error: %d arg:%p\n", + _ttcp, err, arg); + + if (ifStatus == false) + printk("Abort connection\n"); + + if ((_ttcp)&&(err == ERR_ABRT)) + { + WARN("TTCP [%p]: free memory\n", _ttcp); + cleanSockState_cb(_ttcp); + // TODO + FREE_PAYLOAD(_ttcp); + } + + //atcp_init_pend_flags(_ttcp); +} + +static err_t close_conn(struct ttcp *_ttcp, struct tcp_pcb* tpcb) { + + if (_ttcp == NULL) return ERR_MEM; + + GET_CLIENT_ID(_ttcp, tpcb); + + err_t err = close_conn_pcb(_ttcp->tpcb[id]); + + if (err == ERR_MEM) + { + WARN("Cannot close id:%d-%p put pending\n", id, _ttcp->tpcb[id]); + _ttcp->pending_close[id] = true; + } + else{ + _ttcp->pending_close[id] = false; + removeNewClientConn(_ttcp, _ttcp->tpcb[id]); + FREE_PAYLOAD_ID(_ttcp, id); + INFO_TCP("----------------------\n"); + } + return err; +} + +void closeConnections() +{ + int ii=0; + for (; ii<MAX_MODE_NUM; ii++) + { + int i = 0; + for (; i<MAX_SOCK_NUM; i++) + { + void* p = getTTCP(i, ii); + if (p) + { + ttcp_t* _ttcp = (ttcp_t* )p; + if (_ttcp->udp == TCP_MODE) + { + ard_tcp_destroy(_ttcp); + clearMapSockTcp(getSock(_ttcp), GET_TCP_MODE(_ttcp)); + } + } + } + } +} + +/** + * Only used in TCP mode. + */ +static err_t atcp_recv_cb(void *arg, struct tcp_pcb *pcb, struct pbuf *p, + err_t err) { + struct ttcp* ttcp = arg; + + if (err == ERR_OK && p != NULL) { + DATA_LED_ON(); + /* for print_stats() */ + ttcp->recved += p->tot_len; + + if ((ttcp->verbose)||(verboseDebug & INFO_TCP_FLAG)) { + INFO_TCP("len:%d\n",p->tot_len); + DUMP_TCP(p->payload, p->tot_len); + ttcp->print_cnt++; + } + + uint8_t* pBufferStore = insert_pBuf(p, ttcp->sock, (void*) pcb); + INFO_TCP("sock:%d pcb:%p pbuf:%p err:%d bufStore:%p len:%d\n", + ttcp->sock, pcb, p, err, pBufferStore, p->tot_len); + pbuf_free(p); + DATA_LED_OFF(); + } + + /* p will be NULL when remote end is done */ + if (err == ERR_OK && p == NULL) { + INFO_TCP("atcp_recv_cb p=NULL on sock:%d pcb:%p\n", ttcp->sock, pcb); + close_conn(ttcp, pcb); + } + + if (err!=ERR_OK) + WARN("err=%d p=%p\n", err, p); + return ERR_OK; +} + +void ack_recved(void* pcb, int len) { + // Comment the call because it is activated on atcp_recv_cb + INFO_TCP("Received %p len:%d\n", pcb, len); + tcp_recved(pcb, len); +} + +static err_t atcp_poll(void *arg, struct tcp_pcb *pcb) { + struct ttcp* _ttcp = arg; + + if (_ttcp == NULL) return ERR_ARG; + + GET_CLIENT_ID(_ttcp, pcb); + + if (_ttcp->left[id]>0) + ++_ttcp->tcp_poll_retries[id]; + + if (_ttcp->tcp_poll_retries[id] > 4) { + WARN("ARD TCP [%p] arg=%p retries=%d abort\n", + pcb, arg, _ttcp->tcp_poll_retries[id]); + _ttcp->tcp_poll_retries[id] = 0; + tcp_abort(pcb); + _ttcp->pending_close[id] = false; + return ERR_ABRT; + } + + if (pcb) + INFO_TCP_POLL("keepAliveCnt:%d keep_idle:%d persist_cnt:%d\n", + pcb->keep_cnt_sent, pcb->keep_idle, pcb->persist_cnt); + + if (_ttcp->left[id] > 0) + INFO_TCP("ARD TCP [%p-%p] arg=%p retries=%d pend.close:%d len:%d\n", + (_ttcp)?GET_FIRST_CLIENT_TCP(_ttcp):0, pcb, arg, + _ttcp->tcp_poll_retries[id], _ttcp->pending_close[id], (_ttcp)?_ttcp->left[id]:0); + tcp_send_data_pcb(_ttcp, pcb); + + if (_ttcp->pending_close[id]) + { + err_t err = ERR_OK; + if (id >=0){ + err = tcp_close(pcb); + if (err == ERR_MEM) + { + _ttcp->pending_close[id] = true; + } + else + { + _ttcp->pending_close[id] = false; + removeNewClientConn(_ttcp, _ttcp->tpcb[id]); + FREE_PAYLOAD_ID(_ttcp, id); + INFO_TCP("----------------------\n"); + } + } + INFO_TCP("ARD TCP [%p-%p] try to close pending:%d err:%d id:%d\n", pcb, + (_ttcp)?GET_FIRST_CLIENT_TCP(_ttcp):0, _ttcp->pending_close[id], err, id); + } + return ERR_OK; +} + +static err_t atcp_poll_conn(void *arg, struct tcp_pcb *pcb) { + struct ttcp* _ttcp = arg; + + if (_ttcp == NULL) return ERR_ARG; + + GET_CLIENT_ID(_ttcp, pcb) + + INFO_TCP_POLL("ARD TCP [%p-%p] arg=%p retries=%d pend.close:%d conn:%d\n", + (_ttcp)?GET_FIRST_CLIENT_TCP(_ttcp):0, pcb, arg, + _ttcp->tcp_poll_retries[id], _ttcp->pending_close[id], _connected); + + if (id != NO_VALID_ID) + { + if (_ttcp->pending_close[id]) + ++(_ttcp->tcp_poll_retries[id]); + } + + if (_ttcp->tcp_poll_retries[id] > 8) { + WARN("ARD TCP [%p-%p] arg=%p retries=%d\n", + pcb, GET_FIRST_CLIENT_TCP(_ttcp), arg, _ttcp->tcp_poll_retries[id]); + _ttcp->tcp_poll_retries[id] = 0; + tcp_abort(pcb); + return ERR_ABRT; + } + + if ((_ttcp)&&(_connected)) tcp_send_data_pcb(_ttcp, pcb); + + if ((id != NO_VALID_ID) && (_ttcp->pending_close[id])) + { + err_t err = tcp_close(pcb); + if (err == ERR_MEM) + { + _ttcp->pending_close[id] = true; + } + else + { + cleanSockState_cb(_ttcp); + FREE_PAYLOAD_ID(_ttcp, id); + _ttcp->pending_close[id] = false; + } + + INFO_TCP("ARD TCP [%p-%p] try to close pending:%d\n", pcb, (_ttcp)?GET_FIRST_CLIENT_TCP(_ttcp):0, _ttcp->pending_close[id]); + } + return ERR_OK; +} + +int8_t currConnId = 0; + +int8_t getCurrClientConnId() { return currConnId;} + +int8_t getNewClientConnId(struct ttcp* _ttcp, struct tcp_pcb *newpcb) +{ + if (_ttcp != NULL){ + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + { + int idx = GET_IDX_CONN(i); + + if (_ttcp->tpcb[idx] == newpcb) + { + INFO_TCP_VER("ttcp:%p id=%d, tpcb=%p\n", _ttcp, idx, newpcb); + return idx; + } + } + } + WARN("No Valid Id for ttcp:%p pcb:%p\n", _ttcp, newpcb); + return NO_VALID_ID; +} + +struct tcp_pcb * getFirstClient(struct ttcp* _ttcp, bool verbose) +{ + if (_ttcp != NULL){ + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + { + int idx = GET_IDX_CONN(i); + if (_ttcp->tpcb[idx] != NULL) + { + if (verbose) INFO_TCP("ttcp:%p id=%d, tpcb=%p\n", _ttcp, idx, _ttcp->tpcb[idx]); + currConnId = idx; + return _ttcp->tpcb[idx]; + } + } + } + if (verbose) WARN("No Valid client for ttcp:%p\n", _ttcp); + return NULL; +} + + +int8_t setNewClientConn(struct ttcp* _ttcp, struct tcp_pcb *newpcb, uint8_t id) +{ + if ((_ttcp != NULL)&&(id>=0)&&(id<MAX_CLIENT_ACCEPTED)){ + INFO_TCP("ttcp:%p id=%d, tpcb=%p\n", _ttcp, id, newpcb); + _ttcp->tpcb[id] = newpcb; + return id; + } + return NO_VALID_ID; +} + +int8_t insertNewClientConn(struct ttcp* _ttcp, struct tcp_pcb *newpcb) +{ + if (_ttcp != NULL){ + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + { + int idx = GET_IDX_CONN(i); + if ((_ttcp->tpcb[idx] == NULL)||(_ttcp->tpcb[idx] == newpcb)) + { + INFO_TCP("ttcp:%p id=%d, tpcb=%p\n", _ttcp, idx, newpcb); + _ttcp->tpcb[idx] = newpcb; + return idx; + } + } + } + return NO_VALID_ID; +} + +int8_t removeNewClientConn(struct ttcp* _ttcp, struct tcp_pcb *newpcb) +{ + if (_ttcp != NULL){ + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + { + int idx = GET_IDX_CONN(i); + if (_ttcp->tpcb[idx] == newpcb) + { + INFO_TCP("ttcp:%p id=%d, tpcb=%p\n", _ttcp, idx, newpcb); + _ttcp->tpcb[idx] = NULL; + return idx; + } + } + } + return NO_VALID_ID; +} + +bool cleanNewClientConn(struct ttcp* _ttcp) +{ + if (_ttcp != NULL){ + int i = 0; + for (; i<MAX_CLIENT_ACCEPTED; ++i) + _ttcp->tpcb[i] = NULL; + return true; + } + return false; +} + + +/** + * Only used in TCP mode. + */ +static err_t atcp_accept_cb(void *arg, struct tcp_pcb *newpcb, err_t err) { + struct ttcp* _ttcp = arg; + + if (_ttcp == NULL) return ERR_ARG; + + INFO_TCP("ARD TCP [%p]: accept new [%p]\n", _ttcp, newpcb); + INFO_TCP("local:%d remote:%d state:%d\n", newpcb->local_port, newpcb->remote_port, newpcb->state); + + int8_t id = insertNewClientConn(_ttcp, newpcb); + + ASSERT((_ttcp->payload[id]==NULL), "payload not freed!"); + _ttcp->payload[id] = malloc(_ttcp->buflen); + INFO_TCP("Alloc payload %d-%p\n", id, _ttcp->payload[id]); + if (_ttcp->payload[id] == NULL) { + WARN("TTCP [%p]: could not allocate payload\n", _ttcp); + return -1; + } + tcp_arg(_ttcp->tpcb[id], _ttcp); + tcp_recv(_ttcp->tpcb[id], atcp_recv_cb); + tcp_err(_ttcp->tpcb[id], atcp_conn_err_cb); + tcp_poll(_ttcp->tpcb[id], atcp_poll, 4); + // Copy the pointer to ttcp also to TRANSMIT mode for the clients connected to the server + int _sock = getSock(_ttcp); + if ((_sock != -1)&&(IS_VALID_SOCK(_sock))) + setMapSockMode(_sock, _ttcp, TTCP_MODE_TRANSMIT); + _ttcp->start_time = timer_get_ms(); + return ERR_OK; +} + +/** + * Start TCP transfer. + */ +static int atcp_start(struct ttcp* ttcp) { + err_t err = ERR_OK; + + struct tcp_pcb * p = tcp_new(); + + if (p == NULL) { + WARN("TTCP [%p]: could not allocate pcb\n", ttcp); + return -1; + } + + currConnId = 0; + tcp_arg(p, ttcp); + atcp_init_pend_flags(ttcp); + + if (ttcp->mode == TTCP_MODE_TRANSMIT) { + int8_t id = insertNewClientConn(ttcp, p); + ttcp->payload[id] = malloc(ttcp->buflen); + INFO_TCP("Alloc payload %d-%p\n", id, ttcp->payload[id]); + if (ttcp->payload[id] == NULL) { + WARN("TTCP [%p]: could not allocate payload\n", ttcp); + return -1; + } + + struct tcp_pcb * pcb = p; + tcp_err(pcb, atcp_conn_cli_err_cb); + tcp_recv(pcb, atcp_recv_cb); + tcp_sent(pcb, tcp_data_sent); + tcp_poll(pcb, atcp_poll_conn, 4); + _connected = false; + INFO_TCP("[tpcb]-%p payload:%p\n", pcb, ttcp->payload[id]); + DUMP_TCP_STATE(ttcp); + if (tcp_connect(pcb, &ttcp->addr, ttcp->port, tcp_connect_cb) + != ERR_OK) { + WARN("TTCP [%p]: tcp connect failed\n", ttcp); + return -1; + } + + } else { + INFO_TCP("BEFORE BIND ttcp:%p lpcb:%p pcb:%p\n", ttcp, ttcp->lpcb, GET_FIRST_CLIENT_TCP(ttcp)); + + err = tcp_bind(p, IP_ADDR_ANY, ttcp->port); + if (err != ERR_OK){ + WARN("TTCP [%p]: bind failed err=%d Port already used\n", ttcp, err); + return -1; + } + + ttcp->lpcb = tcp_listen(p); + if (ttcp->lpcb == NULL) { + WARN("TTCP [%p]: listen failed\n", ttcp); + return -1; + } + + DUMP_TCP_STATE(ttcp); + tcp_accept(ttcp->lpcb, atcp_accept_cb); + } + + return 0; +} + +/** + * Only used in UDP mode. Will finalize the ttcp process when an end marker + * is seen. + */ +static void audp_recv_cb(void *arg, struct udp_pcb *upcb, struct pbuf *p, + struct ip_addr *addr, u16_t port) { + struct ttcp* ttcp = arg; + + /* for print_stats() */ + ttcp->recved += p->tot_len; + DUMP(p->payload,p->tot_len); + if (ttcp->verbose) { + printk("."); + if (ttcp->print_cnt % 80 == 0) + printk("\n"); + ttcp->print_cnt++; + } + INFO_TCP("UDP Insert %p sock:%d addr:%s port:%d\n", p, ttcp->sock, + ip2str(*addr), port); + insert_pBuf(p, ttcp->sock, (void*) upcb); + setRemoteClient(ttcp->sock, addr->addr, port); + + pbuf_free(p); +} + +/** + * Start UDP transfer. + */ +static int udp_start(struct ttcp* ttcp) { + err_t err = ERR_OK; + ttcp->udp_end_marker_left = 5; + ttcp->upcb = udp_new(); + if (ttcp->upcb == NULL) { + WARN("TTCP [%p]: could not allocate pcb\n", ttcp); + return -1; + } + + INFO_TCP("%s, upcb:%p %s:%d\n", __FUNCTION__, ttcp->upcb, ip2str(ttcp->addr), ttcp->port); + if (ttcp->mode == TTCP_MODE_TRANSMIT) { + if (udp_connect(ttcp->upcb, &(ttcp->addr), ttcp->port) != ERR_OK) { + WARN("TTCP [%p]: udp connect failed\n", ttcp); + return -1; + } + udp_recv(ttcp->upcb, audp_recv_cb, ttcp); + } else { + /* bind to any IP address on port specified */ + err = udp_bind(ttcp->upcb, IP_ADDR_ANY, ttcp->port); + if (err!= ERR_OK) { + WARN("TTCP [%p]: bind failed err=%d Port already used\n", ttcp, err); + return -1; + } + // clear remote client data + setRemoteClient(ttcp->sock, 0, 0); + udp_recv(ttcp->upcb, audp_recv_cb, ttcp); + } + INFO_TCP("%s, loc:0x%x-%d rem:0x%x-%d\n", __FUNCTION__, + ttcp->upcb->local_ip.addr, ttcp->upcb->local_port, + ttcp->upcb->remote_ip.addr, ttcp->upcb->remote_port); + return 0; +} + +/** + * Start a new ttcp transfer. It should be possible to call this function + * multiple times in order to get multiple ttcp streams. done_cb() will be + * invoked upon completion. + * + */ +int ard_tcp_start(struct ip_addr addr, uint16_t port, void *opaque, + ard_tcp_done_cb_t *done_cb, int mode, uint16_t nbuf, uint16_t buflen, + int udp, int verbose, uint8_t sock, void** _ttcp) { + struct ttcp* ttcp; + int status; + + if (mode != TTCP_MODE_TRANSMIT && mode != TTCP_MODE_RECEIVE) { + WARN("TTCP [-]: invalid mode\n"); + return -1; + } + + if (nbuf == 0) { + WARN("TTCP [-]: invalid nbuf\n"); + return -1; + } + + if (buflen == 0) { + WARN("TTCP [-]: invalid buflen\n"); + return -1; + } + + ttcp = calloc(1, sizeof(struct ttcp)); + if (ttcp == NULL) { + WARN("TTCP [-]: could not allocate memory for ttcp\n"); + return -1; + } + + ttcp->addr = addr; + ttcp->port = port; + ttcp->nbuf = nbuf; + ttcp->mode = mode; + ttcp->done_cb = done_cb; + ttcp->opaque = opaque; + ttcp->udp = udp; + ttcp->verbose = verbose; + ttcp->buflen = buflen; + cleanNewClientConn(ttcp); + + if (ttcp->udp) + status = udp_start(ttcp); + else + status = atcp_start(ttcp); + + if (status) { + WARN("Start server FAILED!\n"); + goto fail; + } + INFO_TCP("TTCP [%p-%p]: nbuf=%d, buflen=%d, port=%d (%s/%s)\n", ttcp, + ((ttcp->udp==1)?(void*)ttcp->upcb:GET_FIRST_CLIENT_TCP(ttcp)), ttcp->nbuf, ttcp->buflen, + ttcp->port, ProtMode2Str(ttcp->udp), Mode2Str(ttcp->mode)); + + *_ttcp = (void*) ttcp; + ttcp->sock = sock; + + return 0; + + fail: ard_tcp_destroy(ttcp); + return -1; +} + +void ard_tcp_stop(void* ttcp) { + struct ttcp* _ttcp = (struct ttcp*) ttcp; + if (_ttcp == NULL) + { + WARN("ttcp = NULL!\n"); + return; + } + if (_ttcp->mode == TTCP_MODE_TRANSMIT) { + int i = getCurrClientConnId(); + ard_tcp_destroy(_ttcp); + clearMapSockTcp(getSock(_ttcp), GET_TCP_MODE(_ttcp)); + _ttcp->tcp_poll_retries[i] = 0; + }else{ + DUMP_TCP_STATE(_ttcp); + + int i = getCurrClientConnId(); + if ((_ttcp)&&(_ttcp->tpcb[i])&&(_ttcp->tpcb[i]->state!=LAST_ACK)&&(_ttcp->tpcb[i]->state!=CLOSED)) + { + // Flush all the data + err_t err=tcp_output(_ttcp->tpcb[i]); + INFO_TCP("flush data: tpcb:%p err:%d\n", _ttcp->tpcb[i], err); + // if any socket cannot be close stop the close connection + close_conn(_ttcp, _ttcp->tpcb[i]); + } + } +} + +uint8_t getStateTcp(void* p, bool client) { + struct ttcp* _ttcp = (struct ttcp*) p; + + if (ifStatus == false) + return CLOSED; + struct tcp_pcb * pcb = GET_FIRST_CLIENT_TCP_NV(_ttcp); + if ((_ttcp != NULL) && ((pcb != NULL) || (client==0))) { + IF_SPI_POLL(DUMP_TCP_STATE(_ttcp)); + if (client) + { + if ((pcb->state != ESTABLISHED)&&(pcb->state != CLOSED)) + DUMP_TCP_STATE(_ttcp); + return pcb->state; + } + else + { + return _ttcp->lpcb->state; + } + } else { + WARN_POLL("TCP not initialized ttcp:%p tpcb:%p lpcb:%p\n", + _ttcp, ((_ttcp)?pcb:0), ((_ttcp)?_ttcp->lpcb:0)); + } + return CLOSED; +} + +uint8_t getModeTcp(void* p) { + struct ttcp* _ttcp = (struct ttcp*) p; + + if (_ttcp != NULL) + return _ttcp->mode; + return 0; +} + +uint8_t isDataSent(void* p) { + struct ttcp *_ttcp = (struct ttcp *)p; + + int8_t id = getCurrClientConnId(); + if ((_ttcp)&&(!_ttcp->buff_sent[id])) + { + return 0; + } + + return 1; +} + +static err_t tcp_data_sent(void *arg, struct tcp_pcb *pcb, u16_t len) { + struct ttcp *_ttcp; + + LWIP_UNUSED_ARG(len); + + _ttcp = arg; + + if (_ttcp == NULL) return ERR_ARG; + + GET_CLIENT_ID(_ttcp, pcb); + _ttcp->tcp_poll_retries[id] = 0; + _ttcp->buff_sent[id] = 1; + + INFO_TCP("Packet sent pcb:%p len:%d dur:%d left:%d\n", pcb, len, timer_get_ms() - startTime, + (_ttcp)?(_ttcp->left[id]):0); + + if ((_ttcp)&&(_ttcp->left[id] > 0)) { + tcp_send_data_pcb(_ttcp, pcb); + } + + return ERR_OK; +} + +int sendTcpData(void* p, uint8_t* buf, uint16_t len) +{ + struct ttcp* _ttcp = (struct ttcp*) p; + + if (_ttcp==NULL) + { + WARN("ttcp == NULL!\n"); + return WL_FAILURE; + } + + struct tcp_pcb * pcb = GET_FIRST_CLIENT_TCP_NV(_ttcp); + GET_CLIENT_ID(_ttcp, pcb); + + INFO_TCP_VER("ttcp:%p pcb:%p buf:%p len:%d\n", _ttcp, pcb, buf, len); + DUMP_TCP(buf,len); + IF_TCP_VER(DUMP_TCP_STATE(_ttcp)); + + if ((_ttcp != NULL) && (pcb != NULL) && + (buf != NULL) && (len != 0) && (_ttcp->payload[id] != NULL)) { + if (pcb->state == ESTABLISHED || pcb->state == CLOSE_WAIT || + pcb->state == SYN_SENT || pcb->state == SYN_RCVD) { + + memcpy(_ttcp->payload[id], buf, len); + _ttcp->payload[id][len]='\0'; + INFO_TCP_VER("'%s'\n", _ttcp->payload[id]); + _ttcp->left[id] = len; + tcp_sent(pcb, tcp_data_sent); + tcp_send_data_pcb(_ttcp, pcb); + + return WL_SUCCESS; + } + } + //printk("Write failure _ttcp=%p _ttcp->tpcb=%p buf=%p len=%d\n", _ttcp, _ttcp->tpcb, buf, len); + return WL_FAILURE; +} + +int sendUdpData(void* ttcp, uint8_t* buf, uint16_t len) { + struct ttcp* _ttcp = (struct ttcp*) ttcp; + if ((_ttcp != NULL) && (buf != NULL) && (len != 0)) + { + INFO_TCP("buf:%p len:%d\n", buf, len); + DUMP_TCP(buf,len); + }else{ + return WL_FAILURE; + } + + struct pbuf* p = pbuf_alloc(PBUF_TRANSPORT, len, PBUF_RAM); + if (p == NULL) { + WARN("TTCP [%p]: could not allocate pbuf\n", ttcp); + return WL_FAILURE; + } + memcpy(p->payload, buf, len); + if (udp_send(_ttcp->upcb, p) != ERR_OK) { + WARN("TTCP [%p]: udp_send() failed\n", _ttcp); + pbuf_free(p); + return WL_FAILURE; + } + + pbuf_free(p); + return WL_SUCCESS; +} + + + +char + usage[] = + "Usage: ttcp -t/-r [-options] host\n\ + -l length of bufs written to network (default 1024)\n\ + -n number of bufs written to network (default 1024)\n\ + -p port number to send to (default 2000)\n\ + -u udp\n\ + -v verbose\n"; + +/** + * + */ +cmd_state_t cmd_ttcp(int argc, char* argv[], void* ctx) { + + int c; + int mode = TTCP_MODE_TRANSMIT; + int verbose = 0; + uint16_t buflen = 1024; + uint16_t nbuf = 1024; + uint16_t port = 2000; + int udp = 0; + struct ip_addr addr = { 0 }; + + optind = 1; + while ((c = getopt(argc, argv, "utrl:n:p:v")) != -1) { + switch (c) { + case 't': + mode = TTCP_MODE_TRANSMIT; + break; + case 'r': + mode = TTCP_MODE_RECEIVE; + break; + case 'l': + buflen = atoi(optarg); + break; + case 'v': + verbose = 1; + break; + case 'n': + nbuf = atoi(optarg); + break; + case 'u': + udp = 1; + break; + case 'p': + port = atoi(optarg); + break; + } + } + + if (mode == TTCP_MODE_TRANSMIT) { + if (optind >= argc) { + printk("%s", usage); + return CMD_DONE; + } + + addr = str2ip(argv[optind]); + if (!addr.addr) { + printk("%s", usage); + return CMD_DONE; + } + } + void* _ttcp = NULL; + if (ard_tcp_start(addr, port, NULL, NULL, mode, nbuf, buflen, udp, verbose, + 0, &_ttcp)) + return CMD_DONE; + + return CMD_DONE; +} + + +#if 0 +#include "lwip/sockets.h" + +void testlwip() +{ + int Sock; + fd_set fdsetR; + FD_ZERO(&fdsetR); + FD_SET(Sock, &fdsetR); + fd_set fdsetE = fdsetR; + + int rc; + const int cMillies = 10000; + struct timeval timeout; + timeout.tv_sec = cMillies / 1000; + timeout.tv_usec = (cMillies % 1000) * 1000; + //rc = lwip_select(Sock + 1, &fdsetR, NULL, &fdsetE, &timeout); +} +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/ard_tcp.h b/libraries/WiFi/extras/wifiHD/src/ard_tcp.h new file mode 100644 index 000000000..078e0b0c5 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ard_tcp.h @@ -0,0 +1,124 @@ +/* + * ard_tcp.h + * + * Created on: May 27, 2010 + * Author: mlf by Metodo2 srl + */ + +#ifndef ARD_TCP_H +#define ARD_TCP_H + +#include "console.h" +#include "lwip/tcp.h" + +typedef void (ard_tcp_done_cb_t)(void *opaque, int result); + +#define TTCP_MODE_TRANSMIT 0 +#define TTCP_MODE_RECEIVE 1 +#define MAX_MODE_NUM 2 + +#define GET_TCP_MODE(X) ((X!=NULL)?((struct ttcp*)(X))->mode:0) +#define IS_VALID_SOCK(SOCK) ((SOCK>=0)&&(SOCK<MAX_SOCK_NUM)) +#define IS_UDP_SOCK(SOCK) ((getTTCP(SOCK, TTCP_MODE_RECEIVE)!=NULL)?((struct ttcp*)(getTTCP(SOCK, TTCP_MODE_RECEIVE)))->udp:0) + +// Maximum number of client connection accepted by server +#define MAX_CLIENT_ACCEPTED 4 +#define NO_VALID_ID 0xff + +#define GET_FIRST_CLIENT_TCP(TTCP) getFirstClient(TTCP, 1) +#define GET_FIRST_CLIENT_TCP_NV(TTCP) getFirstClient(TTCP, 0) +#define GET_CLIENT_TCP(TTCP,ID) (((TTCP!=NULL)&&(ID>=0)&&(ID<MAX_CLIENT_ACCEPTED))?TTCP->tpcb[ID] : NULL) +#define GET_CLIENT_ID(TTCP, PCB) uint8_t id = NO_VALID_ID; do { \ + id = getNewClientConnId(TTCP, PCB); \ + if (id == NO_VALID_ID) return ERR_MEM; \ + }while(0); +#define GET_IDX_CONN(I) ((I+currConnId)<MAX_CLIENT_ACCEPTED ? (I+currConnId) : (I+currConnId-MAX_CLIENT_ACCEPTED)) +#define GET_CURR_PCB(TTCP) GET_CLIENT_TCP(TTCP,getCurrClientConnId()) + +#define FREE_PAYLOAD(TTCP) do { \ + int id = getCurrClientConnId(); \ + INFO_TCP("Freeing payload %d-%p\n", id, TTCP->payload[id]); \ + if (TTCP->payload[id]) { \ + free(TTCP->payload[id]); \ + TTCP->payload[id] = NULL; } \ +}while(0); + +#define FREE_PAYLOAD_ID(TTCP,ID) do { \ + INFO_TCP("Freeing payload %d-%p\n", ID, TTCP->payload[ID]); \ + if (TTCP->payload[ID]) { \ + free(TTCP->payload[ID]); \ + TTCP->payload[ID] = NULL; } \ +}while(0); + + +typedef struct ttcp { + + /* options */ + struct ip_addr addr; /* host */ + uint16_t port; /* -p */ + uint16_t nbuf; /* -n */ + int mode; /* -t */ + int verbose; /* -v */ + int udp; /* -u */ + uint8_t sock; + uint8_t buff_sent[MAX_CLIENT_ACCEPTED]; + + /* common */ + uint16_t print_cnt; + uint32_t start_time; + uint32_t left[MAX_CLIENT_ACCEPTED]; + uint32_t recved; + ard_tcp_done_cb_t* done_cb; + void* opaque; + uint32_t buflen; /* -l */ + uint32_t tid; + + /* TCP specific */ + struct tcp_pcb* tpcb[MAX_CLIENT_ACCEPTED]; + struct tcp_pcb* lpcb; + char* payload[MAX_CLIENT_ACCEPTED]; + uint8_t tcp_poll_retries[MAX_CLIENT_ACCEPTED]; + bool pending_close[MAX_CLIENT_ACCEPTED]; + + /* UDP specific */ + int udp_started; + uint16_t udp_end_marker_left; + struct udp_pcb* upcb; +}ttcp_t; + +bool _connected; + +int ard_tcp_start(struct ip_addr addr, uint16_t port, void *opaque, + ard_tcp_done_cb_t *done_cb, int mode, uint16_t nbuf, uint16_t buflen, int udp, int verbose, uint8_t sock, void** _ttcp); + +void ard_tcp_stop(void* ttcp); + +uint8_t getStateTcp(void* p, bool client ); + +uint8_t getModeTcp(void* p); + +int sendTcpData(void* p, uint8_t* buf, uint16_t len); + +int sendUdpData(void* p, uint8_t* buf, uint16_t len); + +uint8_t isDataSent(void* p ); + +cmd_state_t cmd_ttcp(int argc, char* argv[], void* ctx); + +int8_t setNewClientConn(struct ttcp* _ttcp, struct tcp_pcb *newpcb, uint8_t id); + +int8_t insertNewClientConn(struct ttcp* _ttcp, struct tcp_pcb *newpcb); + +int8_t removeNewClientConn(struct ttcp* _ttcp, struct tcp_pcb *newpcb); + +bool cleanNewClientConn(struct ttcp* _ttcp); + +int8_t getNewClientConnId(struct ttcp* _ttcp, struct tcp_pcb *newpcb); + +int8_t getCurrClientConnId(); + +struct tcp_pcb * getFirstClient(struct ttcp* _ttcp, bool verbose); + +void closeConnections(); + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/ard_utils.c b/libraries/WiFi/extras/wifiHD/src/ard_utils.c new file mode 100644 index 000000000..c2937d897 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ard_utils.c @@ -0,0 +1,347 @@ +/* + * ard_utils.c + * + * Created on: Jul 4, 2010 + * Author: mlf by Metodo2 srl + */ +//#define _APP_DEBUG_ + +#include "lwip/pbuf.h" +#include "wifi_spi.h" +#include "ard_utils.h" +#include "debug.h" +#include "ard_spi.h" +#include "ard_tcp.h" + +#define MAX_PBUF_STORED 30 + +tData pBufStore[MAX_PBUF_STORED][MAX_SOCK_NUM]; + +unsigned char headBuf[MAX_SOCK_NUM] = {0}; +unsigned char tailBuf[MAX_SOCK_NUM] = {0}; + +#define IS_BUF_AVAIL(x) (tailBuf[x] != headBuf[x]) +#define IS_BUF_EMPTY(x) ((tailBuf[x] == 0) && (headBuf[x] == 0)) + +void init_pBuf() +{ + memset(pBufStore, 0, sizeof(pBufStore)); +} + +uint8_t* insertBuf(uint8_t sock, uint8_t* buf, uint16_t len) +{ + DUMP(buf,len); + if (sock>= MAX_SOCK_NUM) + { + WARN("Sock out of range: sock=%d", sock); + return NULL; + } + if (pBufStore[headBuf[sock]][sock].data != NULL) + { + WARN("Overwriting buffer %p idx:%d!\n", pBufStore[headBuf[sock]][sock].data, headBuf[sock]); + // to avoid memory leak free the oldest buffer + freetDataIdx(headBuf[sock], sock); + } + + u8_t* p = (u8_t*)calloc(len,sizeof(u8_t)); + if(p != NULL) { + memcpy(p, buf, len); + + pBufStore[headBuf[sock]][sock].data = p; + pBufStore[headBuf[sock]][sock].len = len; + pBufStore[headBuf[sock]][sock].idx = 0; + pBufStore[headBuf[sock]][sock].pcb = getTTCP(sock, TTCP_MODE_TRANSMIT); + headBuf[sock]++; + + if (headBuf[sock] == MAX_PBUF_STORED) + headBuf[sock] = 0; + if (headBuf[sock] == tailBuf[sock]) + { + WARN("Avoid to Overwrite data [%d-%d]!\n", headBuf[sock], tailBuf[sock]); + if (headBuf[sock] != 0) + --headBuf[sock]; + else + headBuf[sock] = MAX_PBUF_STORED-1; + } + INFO_UTIL("Insert[%d]: %p:%d-%d [%d,%d]\n", sock, p, len, p[0], headBuf[sock], tailBuf[sock]); + } + return p; +} + + +uint16_t calcMergeLen(uint8_t sock) +{ + uint16_t len = 0; + + unsigned char index = tailBuf[sock]; + do { + if (pBufStore[index][sock].data != NULL) + { + len += pBufStore[index][sock].len; + len -= pBufStore[index][sock].idx; + INFO_UTIL_VER(" [%d]: len:%d idx:%d tot:%d\n", sock, pBufStore[index][sock].len, pBufStore[index][sock].idx, len); + } + ++index; + if (index == MAX_PBUF_STORED) + index = 0; + }while (index!=headBuf[sock]); + return len; +} + +uint16_t clearBuf(uint8_t sock) +{ + uint16_t len = 0; + + unsigned char index = tailBuf[sock]; + do { + if (pBufStore[index][sock].data != NULL) + { + freetDataIdx(index,sock); + } + ++index; + if (index == MAX_PBUF_STORED) + index = 0; + }while (index!=headBuf[sock]); + tailBuf[sock]=index; + return len; +} + +uint8_t* mergeBuf(uint8_t sock, uint8_t** buf, uint16_t* _len) +{ + uint16_t len = calcMergeLen(sock); + uint8_t* p = (u8_t*)calloc(len,sizeof(u8_t)); + uint8_t* _p = p; + if(p != NULL) { + unsigned char index = tailBuf[sock]; + do { + if (pBufStore[index][sock].data != NULL) + { + memcpy(p, pBufStore[index][sock].data, pBufStore[index][sock].len); + p += pBufStore[index][sock].len; + } + ++index; + if (index == MAX_PBUF_STORED) + index = 0; + }while (index!=headBuf[sock]); + } + DUMP(_p,len); + if (buf != NULL) + *buf = _p; + if (_len != NULL) + *_len = len; + return _p; +} + +uint8_t* insert_pBuf(struct pbuf* q, uint8_t sock, void* _pcb) +{ + if (q == NULL) + return NULL; + + if (pBufStore[headBuf[sock]][sock].data != NULL) + { + WARN("Overwriting buffer %p idx:%d!\n", pBufStore[headBuf[sock]][sock].data, headBuf[sock]); + // to avoid memory leak free the oldest buffer + freetDataIdx(headBuf[sock], sock); + } + + u8_t* p = (u8_t*)calloc(q->tot_len,sizeof(u8_t)); + if(p != NULL) { + if (pbuf_copy_partial(q, p, q->tot_len,0) != q->tot_len) { + WARN("pbuf_copy_partial failed: src:%p, dst:%p, len:%d\n", q, p, q->tot_len); + free(p); + p = NULL; + return p; + } + + pBufStore[headBuf[sock]][sock].data = p; + pBufStore[headBuf[sock]][sock].len = q->tot_len; + pBufStore[headBuf[sock]][sock].idx = 0; + pBufStore[headBuf[sock]][sock].pcb = _pcb; + headBuf[sock]++; + + if (headBuf[sock] == MAX_PBUF_STORED) + headBuf[sock] = 0; + if (headBuf[sock] == tailBuf[sock]) + { + WARN("Avoid to Overwrite data [%d-%d]!\n", headBuf[sock], tailBuf[sock]); + if (headBuf[sock] != 0) + --headBuf[sock]; + else + headBuf[sock] = MAX_PBUF_STORED-1; + } + INFO_UTIL("Insert[%d]: %p:%d-%d [%d,%d]\n", sock, p, q->tot_len, p[0], headBuf[sock], tailBuf[sock]); + } + return p; +} + +void dumpPbuf(uint8_t sock) +{ + unsigned char index = tailBuf[sock]; + printk("headBuf=%d tailBuf=%d\n", headBuf[sock], tailBuf[sock]); + do { + if (pBufStore[index][sock].data != NULL) + { + printk("%d] pcb:%p Buf: %p Len:%d\n", pBufStore[index][sock].idx, pBufStore[index][sock].pcb, + pBufStore[index][sock].data, pBufStore[index][sock].len); + } + ++index; + if (index == MAX_PBUF_STORED) + index = 0; + }while (index!=headBuf[sock]); +} + +tData* get_pBuf(uint8_t sock) +{ + if (IS_BUF_EMPTY(sock)) + return NULL; + + if (IS_BUF_AVAIL(sock)) + { + tData* p = &(pBufStore[tailBuf[sock]][sock]); + INFO_UTIL_VER("%p [%d,%d]\n", p, headBuf[sock], tailBuf[sock]); + return p; + } + return NULL; +} + +void freetData(void * buf, uint8_t sock) +{ + if (buf==NULL) + { + WARN("Buf == NULL!"); + return; + } + + pBufStore[tailBuf[sock]][sock].data = NULL; + pBufStore[tailBuf[sock]][sock].len = 0; + pBufStore[tailBuf[sock]][sock].idx = 0; + pBufStore[tailBuf[sock]][sock].pcb = 0; + + if (++tailBuf[sock] == MAX_PBUF_STORED) + tailBuf[sock] = 0; + INFO_UTIL("%p [%d,%d]\n", buf, headBuf[sock], tailBuf[sock]); + free(buf); +} + +void freetDataIdx(uint8_t idxBuf, uint8_t sock) +{ + if (idxBuf >=MAX_PBUF_STORED) + { + WARN("idxBuf out of range: %d\n", idxBuf); + return; + } + + void * buf = pBufStore[idxBuf][sock].data; + + INFO_UTIL("%p idx:%d\n", buf, idxBuf); + + free(buf); + + pBufStore[idxBuf][sock].data = 0; + pBufStore[idxBuf][sock].len = 0; + pBufStore[idxBuf][sock].idx = 0; + pBufStore[idxBuf][sock].pcb = 0; +} + + +void ack_recved(void* pcb, int len); + +void ackAndFreeData(void* pcb, int len, uint8_t sock, uint8_t* data) +{ + INFO_TCP("Ack pcb:%p len:%d sock:%d data:%p\n", pcb, len, sock, data); + if (!IS_UDP_SOCK(sock)) + ack_recved(pcb, len); + if (data != NULL) + freetData(data, sock); +} + + +bool isAvailTcpDataByte(uint8_t sock) +{ + tData* p = get_pBuf(sock); + + if (p != NULL) + { + INFO_UTIL_VER("check:%d %d %p\n",p->idx, p->len, p->data); + if (p->idx == p->len) + { + INFO_UTIL("Free %p other buf %d tail:%d head:%d\n", + p->data, IS_BUF_AVAIL(sock), tailBuf[sock], headBuf[sock]); + ackAndFreeData(p->pcb, p->len, sock, p->data); + return (IS_BUF_AVAIL(sock)); + }else{ + return true; + } + } + return false; +} + +uint16_t getAvailTcpDataByte(uint8_t sock) +{ + uint16_t len = calcMergeLen(sock); + INFO_UTIL_VER("Availabled data: %d\n", len); + return len; +} + + +bool getTcpDataByte(uint8_t sock, uint8_t* payload, uint8_t peek) +{ + // ref field in struct pbuf has been used as index pointer for byte data + tData* p = get_pBuf(sock); + + if (p != NULL) + { + if (p->idx < p->len) + { + uint8_t* buf = (uint8_t*)p->data; + if (peek) + *payload = buf[p->idx]; + else + *payload = buf[p->idx++]; + INFO_UTIL_VER("get:%d %p %d\n",p->idx, p->data, *payload); + if (p->idx == p->len) + ackAndFreeData(p->pcb, p->len, sock, p->data); + return true; + }else{ + ackAndFreeData(p->pcb, p->len, sock, p->data); + } + } + return false; +} + +bool getTcpData(uint8_t sock, void** payload, uint16_t* len) +{ + tData* p = NULL; + p = get_pBuf(sock); + if (p != NULL) + { + *payload = p->data; + *len = p->len; + return true; + } + return false; +} + +bool freeTcpData(uint8_t sock) +{ + tData* p = NULL; + p = get_pBuf(sock); + if (p != NULL) + { + ackAndFreeData(p->pcb, p->len, sock, p->data); + return true; + } + return false; +} + +void freeAllTcpData(uint8_t sock) +{ + tData* p = NULL; + do{ + p = get_pBuf(sock); + if (p != NULL) + freetData(p->data, sock); + }while(p!=NULL); +} + + diff --git a/libraries/WiFi/extras/wifiHD/src/ard_utils.h b/libraries/WiFi/extras/wifiHD/src/ard_utils.h new file mode 100644 index 000000000..323b32833 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ard_utils.h @@ -0,0 +1,295 @@ +/* + * ard_utils.h + * + * Created on: Jul 4, 2010 + * Author: mlf by Metodo2 srl + */ + +#ifndef ARD_UTILS_H_ +#define ARD_UTILS_H_ + +#include "gpio.h" +#include "debug.h" +#include "ARDUINO/arduino.h" +#define INIT_SIGNAL_FOR_SPI() gpio_disable_pin_pull_up(ARDUINO_HANDSHAKE_PIN); +#define BUSY_FOR_SPI() gpio_set_gpio_pin(ARDUINO_HANDSHAKE_PIN) +#define AVAIL_FOR_SPI() gpio_clr_gpio_pin(ARDUINO_HANDSHAKE_PIN) + +#define LED0_UP() gpio_set_gpio_pin(LED0_GPIO) +#define LED0_DN() gpio_clr_gpio_pin(LED0_GPIO) +#define LED0_TL() gpio_tgl_gpio_pin(LED0_GPIO) +#define LED1_UP() gpio_set_gpio_pin(LED1_GPIO) +#define LED1_DN() gpio_clr_gpio_pin(LED1_GPIO) +#define LED1_TL() gpio_tgl_gpio_pin(LED1_GPIO) +#define LED2_UP() gpio_set_gpio_pin(LED2_GPIO) +#define LED2_DN() gpio_clr_gpio_pin(LED2_GPIO) +#define LED2_TL() gpio_tgl_gpio_pin(LED2_GPIO) + +#ifdef _DEBUG_ +#define SIGN0_UP LED0_UP +#define SIGN0_DN LED0_DN +#define SIGN0_TL LED0_TL +#define SIGN1_UP LED1_UP +#define SIGN1_DN LED1_DN +#define SIGN1_TL LED1_TL +#define SIGN2_UP LED2_UP +#define SIGN2_DN LED2_DN +#define SIGN2_TL LED2_TL + +#define DEB_PIN_UP(X) gpio_set_gpio_pin(DEB##X##_PIN_GPIO) +#define DEB_PIN_DN(X) gpio_clr_gpio_pin(DEB##X##_PIN_GPIO) +#define DEB_PIN_ENA(X) gpio_enable_gpio_pin(DEB##X##_PIN_GPIO) +#define DEB_PIN_TOGGLE(X) gpio_tgl_gpio_pin(DEB##X##_PIN_GPIO) +#define DEB_PIN_TRIGGER(X) DEB_PIN_DN(X); DEB_PIN_UP(X); + + +#else +#define SIGN0_UP() +#define SIGN0_DN() +#define SIGN0_TL() +#define SIGN1_UP() +#define SIGN1_DN() +#define SIGN1_TL() +#define SIGN2_UP() +#define SIGN2_DN() +#define SIGN2_TL() + +#define DEB_PIN_UP(X) +#define DEB_PIN_DN(X) +#define DEB_PIN_ENA(X) +#define DEB_PIN_TOGGLE(X) +#define DEB_PIN_TRIGGER(X) + +//#define TOGGLE_SIG0 +#endif + +#define DELAY_450NS asm volatile("nop") +#define DELAY_1uS DELAY_450NS; DELAY_450NS; +#define TOGGLE_SIG0() SIGN0_UP(); DELAY_450NS;SIGN0_DN(); + + +#define LINK_LED_OFF LED0_UP +#define ERROR_LED_OFF LED1_UP +#define DATA_LED_OFF LED2_UP + +#define LINK_LED_ON LED0_DN +#define ERROR_LED_ON LED1_DN +#define DATA_LED_ON LED2_DN + +#define LINK_LED_BL LED0_TL +#define ERROR_LED_BL LED1_TL +#define DATA_LED_BL LED2_TL + + +#define CREATE_HEADER_REPLY(REPLY, RECV, NUM_PARAMS)\ + REPLY[0] = RECV[0]; \ + REPLY[1] = RECV[1] | REPLY_FLAG; \ + REPLY[2] = NUM_PARAMS; + +#define CREATE_HEADER_REPLY_WAIT(REPLY, RECV, NUM_PARAMS)\ + REPLY[0] = RECV[0]; \ + REPLY[1] = RECV[1] | WAIT_FLAG; \ + REPLY[2] = NUM_PARAMS; + + +#define END_HEADER_REPLY(REPLY, TOT_LEN, COUNT)\ + REPLY[TOT_LEN] = END_CMD; \ + REPLY[TOT_LEN+1] = 0; \ + COUNT=TOT_LEN+1; + +#define RETURN_ERR_REPLY(RECV,REPLY,COUNT) \ + {uint8_t err = 0; return ack_reply_cb(RECV,REPLY,&err,COUNT);} + +#define CHECK_ARD_NETIF(RECV,REPLY,COUNT) \ + if (ard_netif == NULL) \ + { uint8_t err = 0; return ack_reply_cb(RECV,REPLY,&err,COUNT); } + +#define PUT_LONG_IN_BYTE_HO(LONG, BYTE, IDX) { \ + uint32_t _long = LONG; \ + BYTE[IDX] = 4; \ + BYTE[IDX+1] = (uint8_t)(_long & 0xff); \ + BYTE[IDX+2] = (uint8_t)((_long & 0xff00)>>8); \ + BYTE[IDX+3] = (uint8_t)((_long & 0xff0000)>>16); \ + BYTE[IDX+4] = (uint8_t)((_long & 0xff000000)>>24); \ +} + +#define PUT_LONG_IN_BYTE_NO(LONG, BYTE, IDX) { \ + uint32_t _long = LONG; \ + BYTE[IDX] = 4; \ + BYTE[IDX+4] = (uint8_t)(_long & 0xff); \ + BYTE[IDX+3] = (uint8_t)((_long & 0xff00)>>8); \ + BYTE[IDX+2] = (uint8_t)((_long & 0xff0000)>>16); \ + BYTE[IDX+1] = (uint8_t)((_long & 0xff000000)>>24); \ +} + + +#define PUT_DATA_INT(INT, BYTE, IDX) { \ + uint16_t _int = INT; \ + BYTE[IDX] = 2; \ + BYTE[IDX+1] = (uint8_t)((_int & 0xff00)>>8); \ + BYTE[IDX+2] = (uint8_t)(_int & 0xff); \ +} + +#define PUT_DATA_INT_NO(INT, BYTE, IDX) { \ + uint16_t _int = INT; \ + BYTE[IDX] = 2; \ + BYTE[IDX+2] = (uint8_t)((_int & 0xff00)>>8); \ + BYTE[IDX+1] = (uint8_t)(_int & 0xff); \ +} + +#define PUT_DATA_BYTE(DATA, BYTE, IDX) { \ + BYTE[IDX] = 1; \ + BYTE[IDX+1] = (uint8_t)DATA; \ +} + +#define PUT_BUFDATA_BYTE(BUF, BUFLEN, BYTE, IDX) { \ + BYTE[IDX] = (uint8_t)(BUFLEN & 0xff); \ + uint16_t i = 0; \ + for (; i<BUFLEN; ++i) \ + BYTE[IDX+1+i]=BUF[i]; \ +} + +#define PUT_BUFDATA_INT(BUF, BUFLEN, BYTE, IDX) { \ + BYTE[IDX] = (uint8_t)((BUFLEN & 0xff00)>>8); \ + BYTE[IDX+1] = (uint8_t)(BUFLEN & 0xff); \ + uint16_t i = 0; \ + for (; i<BUFLEN; ++i) \ + BYTE[IDX+2+i]=BUF[i]; \ +} + + +#define PUT_BUFDATA_BYTE_REV(BUF, BUFLEN, BYTE, IDX) { \ + BYTE[IDX] = (uint8_t)(BUFLEN & 0xff); \ + uint16_t i = 0; \ + for (; i<BUFLEN; ++i) \ + BYTE[IDX+1+i]=BUF[BUFLEN-i-1]; \ +} + +#define GET_DATA_LONG(INT32, BUF) \ + uint32_t INT32 = ((*(BUF))<<24) + ((*(BUF+1))<<16) + ((*(BUF+2))<<8) + (*(BUF+3)); + +#define GET_DATA_INT(INT16, BUF) \ + uint16_t INT16 = ((*(BUF))<<8) + (*(BUF+1)); + +#define GET_DATA_BYTE(BYTE, BUF) \ + uint8_t BYTE = (*(BUF)); + +#define CHECK_PARAM_LEN(PARAM, LEN) ((PARAM!=NULL)&&(PARAM->paramLen == LEN)) + +#define NEXT_PARAM(PARAM) \ + do { \ + if (PARAM!=NULL){ \ + PARAM=(tParam*)((uint8_t*)PARAM+PARAM->paramLen+1); \ + GET_PARAM_BYTE(PARAM, end) \ + if (end == END_CMD) WARN("End of cmd params", PARAM); \ + } \ + }while(0); + +#define GET_PARAM_LONG(PARAM, LONG) \ + uint32_t LONG = 0; \ + if CHECK_PARAM_LEN(PARAM, 4) { \ + tLongParam* s = (tLongParam*)PARAM; \ + LONG = s->param; \ + } + +#define GET_PARAM_INT(PARAM, INT) \ + uint16_t INT = 0; \ + if CHECK_PARAM_LEN(PARAM, 2) { \ + tIntParam* s = (tIntParam*)PARAM; \ + INT = s->param; \ + } + +#define GET_PARAM_BYTE(PARAM, BYTE) \ + uint8_t BYTE = 0; \ + if CHECK_PARAM_LEN(PARAM, 1) { \ + tByteParam* s = (tByteParam*)PARAM; \ + BYTE = s->param; \ + } + +#define GET_PARAM_NEXT(TYPE, PARAM, DATA) \ + GET_PARAM_##TYPE(PARAM, DATA) \ + NEXT_PARAM(PARAM) + +#ifdef _SPI_STATS_ +#define STATSPI_TIMEOUT_ERROR() \ + statSpi.timeoutIntErr++; \ + statSpi.rxErr++; \ + statSpi.lastError = SPI_TIMEOUT_ERROR; \ + statSpi.status = spi_getStatus(ARD_SPI); + +#define STATSPI_DISALIGN_ERROR() \ + statSpi.frameDisalign++; \ + statSpi.rxErr++; \ + statSpi.lastError = SPI_ALIGN_ERROR; \ + statSpi.status = spi_getStatus(ARD_SPI); + +#define STATSPI_OVERRIDE_ERROR() \ + statSpi.overrideFrame++; \ + statSpi.rxErr++; \ + statSpi.lastError = SPI_OVERRIDE_ERROR; \ + statSpi.status = spi_getStatus(ARD_SPI); + +#define STATSPI_TX_TIMEOUT_ERROR() \ + statSpi.timeoutErr++; \ + statSpi.txErr++; \ + statSpi.lastError = SPI_ERROR_TIMEOUT; \ + statSpi.status = spi_getStatus(ARD_SPI); +#else +#define STATSPI_TIMEOUT_ERROR() +#define STATSPI_TX_TIMEOUT_ERROR() +#define STATSPI_DISALIGN_ERROR() +#define STATSPI_OVERRIDE_ERROR() +#endif + +#define DUMP_TCP_STATE(TTCP) do {\ + int i = getCurrClientConnId(); \ + INFO_TCP("%d] ttcp:%p tpcb:%p state:%d lpcb:%p state:%d left:%d sent:%d\n", \ + i, TTCP, TTCP->tpcb[i], (TTCP->tpcb[i])?TTCP->tpcb[i]->state:0, \ + TTCP->lpcb, (TTCP->lpcb)?TTCP->lpcb->state:0, \ + (TTCP->tpcb[i])?TTCP->left[i]:0, (TTCP->tpcb[i])?TTCP->buff_sent[i]:0); \ + } while(0); + +#define Mode2Str(_Mode) ((_Mode==0)?"TRANSMIT":"RECEIVE") +#define ProtMode2Str(_protMode) ((_protMode==0)?"TCP":"UDP") + +typedef struct sData +{ + uint8_t* data; + uint16_t len; + uint16_t idx; + void* pcb; +}tData; + +struct pbuf; + +void init_pBuf(); + +uint8_t* insert_pBuf(struct pbuf* q, uint8_t sock, void* _pcb); + +uint8_t* insertBuf(uint8_t sock, uint8_t* buf, uint16_t len); + +uint8_t* mergeBuf(uint8_t sock, uint8_t** buf, uint16_t* _len); + +uint16_t clearBuf(uint8_t sock); + +tData* get_pBuf(uint8_t sock); + +void freetData(void * buf, uint8_t sock); + +void freetDataIdx(uint8_t idxBuf, uint8_t sock); + +bool isBufAvail(); + +bool getTcpData(uint8_t sock, void** payload, uint16_t* len); + +bool getTcpDataByte(uint8_t sock, uint8_t* payload, uint8_t peek); + +uint16_t getAvailTcpDataByte(uint8_t sock); + +bool isAvailTcpDataByte(uint8_t sock); + +uint8_t freeTcpData(uint8_t sock); + +void freeAllTcpData(uint8_t sock); + +#endif /* ARD_UTILS_H_ */ diff --git a/libraries/WiFi/extras/wifiHD/src/avr32_spi.c b/libraries/WiFi/extras/wifiHD/src/avr32_spi.c new file mode 100644 index 000000000..739fb284c --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/avr32_spi.c @@ -0,0 +1,394 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <gpio.h> +#include <intc.h> +#include <string.h> +#include <stdint.h> +#include <stdlib.h> +#include <wl_spi.h> +#include <printf-stdarg.h> +#include <board_init.h> + +#define ARRAY_SIZE(a) sizeof(a) / sizeof(a[0]) + +__attribute__((__interrupt__)) void avr32_irq_handler(void); +void owl_spi_mdelay(uint32_t ms); + +int owl_spi_init(U8 *flags) +{ +#ifdef _ASSERT_ENABLE_ /* To silence warning if Assert() macro is empty */ + volatile avr32_pm_t *pm = &AVR32_PM; +#endif + + volatile avr32_spi_t *spi = &WL_SPI; +#if WL_SPI_CS == 1 + volatile avr32_spi_csr1_t* CSR = &spi->CSR1; +#elif WL_SPI_CS == 2 + volatile avr32_spi_csr2_t* CSR = &spi->CSR2; +#elif WL_SPI_CS == 3 + volatile avr32_spi_csr3_t* CSR = &spi->CSR3; +#elif SPI_CS == 0 + volatile avr32_spi_csr0_t* CSR = &spi->CSR0; +#endif + +#ifndef WITH_NO_DMA + volatile avr32_pdca_channel_t *pdca_tx = &AVR32_PDCA.channel[0]; + volatile avr32_pdca_channel_t *pdca_rx = &AVR32_PDCA.channel[1]; +#endif + +#ifndef WL_IRQ_PIN + *flags = SPI_FLAG_POLL; +#else + *flags = 0; +#endif + + +#ifdef WL_IRQ_PIN + /* input, irq */ + gpio_enable_gpio_pin(WL_IRQ_PIN); + gpio_enable_pin_pull_up(WL_IRQ_PIN); +#endif + +//#ifdef WL_RESET_PIN +// /* reset pin */ +// gpio_enable_gpio_pin(WL_RESET_PIN); +// gpio_set_gpio_pin(WL_RESET_PIN); +//#endif + + +#ifdef WL_POWER_PIN + /* power off the device */ + gpio_enable_gpio_pin(WL_POWER_PIN); + gpio_set_gpio_pin(WL_POWER_PIN); +#endif + +#ifdef WL_SHUTDOWN_PIN + gpio_enable_gpio_pin(WL_SHUTDOWN_PIN); + +#ifdef WL_NO_INTERNAL_RESET /* never defined for SPB104/SPB105 */ + gpio_clr_gpio_pin(WL_SHUTDOWN_PIN); +#endif + +#ifdef WL_EXTERNAL_RESET + gpio_enable_gpio_pin(WL_RESET_PIN); +#endif + +#endif /* WL_SHUTDOWN_PIN */ + +#ifdef WL_POWER_PIN + /* power on the device */ + gpio_clr_gpio_pin(WL_POWER_PIN); +#endif + +#ifdef WL_SHUTDOWN_PIN + +#ifdef WL_NO_INTERNAL_RESET /* never defined for SPB104/SPB105 */ + owl_spi_mdelay(5); + gpio_set_gpio_pin(WL_SHUTDOWN_PIN); + +#elif WL_EXTERNAL_RESET + owl_spi_mdelay(5); + gpio_set_gpio_pin(WL_SHUTDOWN_PIN); + + owl_spi_mdelay(20); + //delay_ms(10); //2ms + + /* reset pin */ + gpio_set_gpio_pin(WL_RESET_PIN); + +#else + + /* The shutdown pin will go high once the device is powered */ + { +#define SHUTDOWN_TIMEOUT 350 + uint32_t shutdown_timer = 0; + while (gpio_get_pin_value(WL_SHUTDOWN_PIN) == 0) { + if (shutdown_timer > SHUTDOWN_TIMEOUT) + { + printk("Timeout WL Shutdown\n"); + return -1; + } + owl_spi_mdelay(5); + shutdown_timer += 5; + } + } +#endif /* WL_NO_INTERNAL_RESET */ + +#else + /* We need to make a guess about the time needed to power the device, + * this will depend on the hardware design. + */ + owl_spi_mdelay(5); +#endif /* WL_SHUTDOWN_PIN */ + + /* Note: SPI0 clock enabled at reset in pm->pbamask (see 13.6.3) */ + Assert(pm->pbamask & (1 << 5)); + + /* Note: GPIO clock enabled at reset in pm->pbamask (see 13.6.3) */ + Assert(pm->pbamask & (1 << 1)); +#ifdef WL_IRQ_PIN + /* 22.4.7: "In every port there are four interrupt lines + * connected to the interrupt controller. Every eigth + * interrupts in the port are ored together to form an + * interrupt line." + * + * WL_IRQ_# = (WL_IRQ_PIN / 32) * 4 + (WL_IRQ_PIN / 8) % 4 + * 62 => 1 * 4 + 3 = 7 + */ + INTC_register_interrupt(&avr32_irq_handler, WL_IRQ, AVR32_INTC_INT0); +#endif + +#ifndef WITH_NO_DMA + INTC_register_interrupt(&avr32_irq_handler, AVR32_PDCA_IRQ_0, + AVR32_INTC_INT0); + INTC_register_interrupt(&avr32_irq_handler, AVR32_PDCA_IRQ_1, + AVR32_INTC_INT0); + pdca_tx->IER.terr = 1; + pdca_rx->IER.terr = 1; +#endif + +#ifdef WL_SPI_CLOCK_DIVIDER + CSR->scbr = WL_SPI_CLOCK_DIVIDER; +#else + CSR->scbr = 2; +#endif + + /* Use max width of TDR register, 16 bit transfers */ + CSR->bits = 0x8; + + /* Make sure that we can hold CS low until transfer is completed, e.g + * LASTXFER is set in TDR. + */ + CSR->csaat = 1; + + /* NRG component requires clock polarity high */ + CSR->cpol = 1; + + +#ifdef WL_IRQ_PIN + /* make sure to clear any pending bits in ifr here. */ + gpio_clear_pin_interrupt_flag(WL_IRQ_PIN); +#endif + + return 0; +} + +#ifndef WITH_NO_DMA +static void dma_txrx(const U8* in, U8* out, U16 len) +{ + volatile avr32_pdca_channel_t *pdca_tx = &AVR32_PDCA.channel[0]; + volatile avr32_pdca_channel_t *pdca_rx = &AVR32_PDCA.channel[1]; + + /* setup tx */ + pdca_tx->mar = (U32) in; + pdca_tx->PSR.pid = WL_PDCA_PID_TX; + pdca_tx->tcr = len / 2; + pdca_tx->MR.size = 1; /* 2-byte */ + pdca_tx->IER.trc = 1; + + /* setup rx */ + pdca_rx->mar = (U32) out; + pdca_rx->PSR.pid = WL_PDCA_PID_RX; + pdca_rx->tcr = len / 2; + pdca_rx->MR.size = 1; /* 2-byte */ + pdca_rx->IER.trc = 1; + + /* start dma's. for some reason rx must be started prior to tx */ + pdca_rx->CR.ten = 1; + pdca_tx->CR.ten = 1; + + /* blocking wait until transfer is completed */ + while (!(pdca_tx->ISR.trc && pdca_rx->ISR.trc)); +} +#endif + +/* access data using byte pointers since we might get unaligned + * data from lwip. The cpu will issue a data abort if we try + * to access data which is not properly aligned. See data sheet. + * + * Note that fifo_txrx() doesn't handle the case where len is not a + * multiple of two bytes properly. + * + * However, there is no actual case where len is odd at the same time + * as the "out" pointer is non-NULL; therefore I think that in practice, + * we'll not write beyond the end of the "out" array. + * + * The extra unknown byte fetched from the in pointer will be discarded + * by the device since a length field included in the packet header will inform + * the device of the actual number of valid bytes (this implementation is + * kind of hidden inside the library). + */ +static void fifo_txrx(const U8 *in, U8* out, U16 len) +{ + volatile avr32_spi_t *spi = &WL_SPI; + UnionCPtr in_ptr; + UnionPtr out_ptr; + U32 sr; + + Assert(len); + + in_ptr.u8ptr = in; + out_ptr.u8ptr = out; + + while (len) { + U16 rdr; + union { + avr32_spi_tdr_t TDR; + U32 tdr; + } reg = { { 0 } }; + + while (!spi->SR.tdre); + while (!spi->SR.txempty); + + /* prepare tx data register contents */ + if (in_ptr.u8ptr) { + reg.TDR.td |= (in_ptr.u8ptr[0] << 8) | in_ptr.u8ptr[1]; + in_ptr.u16ptr++; + } + else + reg.TDR.td |= 0xffff; + + /* perform tx */ + spi->tdr = reg.tdr; + + /* wait until rx is ready */ + while (!spi->SR.rdrf); + + /* fetch rx data */ + rdr = spi->RDR.rd; + if (out_ptr.u8ptr) { + out_ptr.u8ptr[0] = (rdr >> 8) & 0xff; + out_ptr.u8ptr[1] = rdr & 0xff; + out_ptr.u16ptr++; + } + + if (len >= 2) + len -= 2; + else + len = 0; + } + + sr = spi->sr; + Assert(!(sr & AVR32_SPI_SR_OVRES_MASK)); + Assert(!(sr & AVR32_SPI_SR_MODF_MASK)); +} + +void owl_spi_txrx(const U8 *in, U8* out, U16 len) +{ +#ifndef WITH_NO_DMA + static uint8_t buf[MAX_BLOCK_LEN]; + + /* unaligned data or odd number of bytes, then skip dma */ + if ((U32) in % 4 || (U32) out % 4 || len % 2) { + fifo_txrx(in, out, len); + } else { + if (in == NULL) { + memset(buf, 0xff, len); + in = buf; + } else if (out == NULL) { + out = buf; + } + dma_txrx(in, out, len); + } +#else + fifo_txrx(in, out, len); +#endif +} + +void owl_spi_irq(U8 enable) +{ +#ifdef WL_IRQ_PIN + + if (enable) + gpio_enable_pin_interrupt(WL_IRQ_PIN, GPIO_PIN_CHANGE); + else + gpio_disable_pin_interrupt(WL_IRQ_PIN); +#endif +} + +void owl_spi_cs(U8 enable) +{ + volatile avr32_spi_t *spi = &WL_SPI; + + /* + * PCS = xxx0 => NPCS[3:0] = 1110 + * PCS = xx01 => NPCS[3:0] = 1101 + * PCS = x011 => NPCS[3:0] = 1011 + * PCS = 0111 => NPCS[3:0] = 0111 + * PCS = 1111 => forbidden (no peripheral is selected) + */ + + if (enable) +#if WL_SPI_CS == 2 + spi->MR.pcs = 0x3; /* cs2 */ +#elif WL_SPI_CS == 1 + spi->MR.pcs = 0x1; /* cs1 */ +#elif WL_SPI_CS == 3 + spi->MR.pcs = 0x7; /* cs3 */ +#elif WL_SPI_CS == 0 + spi->MR.pcs = 0x0; /* cs0 */ +#endif + else + spi->MR.pcs = 0xf; +} + +void owl_spi_mdelay(uint32_t ms) +{ + volatile int a = 0; + int i; + for (i = 0; i < ms * 5000; i++) + a++; +} + +__attribute__((__interrupt__)) void avr32_irq_handler(void) +{ +#ifndef WITH_NO_DMA + volatile avr32_pdca_channel_t *pdca_tx = &AVR32_PDCA.channel[0]; + volatile avr32_pdca_channel_t *pdca_rx = &AVR32_PDCA.channel[1]; + + /* tx xfer complete */ + if (pdca_tx->IMR.trc && pdca_tx->ISR.trc) { + pdca_tx->IDR.trc = 1; + pdca_tx->CR.tdis = 1; /* disable tx xfer */ + } + + /* rx xfer complete */ + if (pdca_rx->IMR.trc && pdca_rx->ISR.trc) { + pdca_rx->IDR.trc = 1; + pdca_rx->CR.tdis = 1; /* disable rx xfer */ + } +#endif + +#ifdef WL_IRQ_PIN + if (gpio_get_pin_interrupt_flag(WL_IRQ_PIN)) { + gpio_clear_pin_interrupt_flag(WL_IRQ_PIN); + wl_spi_irq(); + } +#endif + +} diff --git a/libraries/WiFi/extras/wifiHD/src/board_init.c b/libraries/WiFi/extras/wifiHD/src/board_init.c new file mode 100644 index 000000000..a2a191ea9 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/board_init.c @@ -0,0 +1,297 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +#include <pm.h> +#include <flashc.h> +#include <intc.h> +#include <board.h> +#include <gpio.h> +#ifdef WITH_SDRAM + #include <sdramc.h> +#endif +#include <board_init.h> +#include <spi.h> + +#ifndef NO_SERIAL /* The bootloader does not want serial port + * code */ +#include <usart.h> + +int board_putchar(char c) +{ + int timeout = USART_DEFAULT_TIMEOUT; + if (c == '\n') { + do { + if (!timeout--) + return USART_FAILURE; + } while (usart_write_char(&CONFIG_CONSOLE_PORT, '\r') != + USART_SUCCESS); + + timeout = USART_DEFAULT_TIMEOUT; + } + + do { + if (!timeout--) + return USART_FAILURE; + } while (usart_write_char(&CONFIG_CONSOLE_PORT, c) != USART_SUCCESS); + + return USART_SUCCESS; +} +#endif /* NO_SERIAL */ +/** + * Initializes the MCU system clocks. + */ +static void +init_sys_clocks(void) +{ + + /* if we don't run on OSC0 don't switch to it since we don't know + * what kind of oscillator we have here + */ + +#if OSC == 0 + /* switch to OSC0 to speed up the booting */ + pm_switch_to_osc0(&AVR32_PM, FOSC0, OSC0_STARTUP); +#endif + + +#ifndef USE_PLL + return; +#endif + + /* For audio, ee have to use OSC1 on to generate the correct clockrate + * for the SSC + */ +#if OSC == 1 + /* start oscillator1 */ + pm_enable_osc1_crystal(&AVR32_PM, FOSC1); + pm_enable_clk1(&AVR32_PM, OSC1_STARTUP); +#endif + + /* configure pll multipliers */ + pm_pll_setup(&AVR32_PM, + 0, /* pll */ + PLL_MUL, /* mul */ + 1, /* div */ + OSC, /* osc */ + 16); /* lockcount */ + + /* set PLL operating range and divider (fpll = fvco/2) + * this gives PLL output = 66 MHz (62.0928 MHz for EVK1105/OSC1) + */ + pm_pll_set_option(&AVR32_PM, + 0, /* pll */ + 1, /* pll_freq */ + 1, /* pll_div2 */ + 0); /* pll_wbwdisable. */ + + + /* start PLL0 and wait for the lock */ + pm_pll_enable(&AVR32_PM, 0); + pm_wait_for_pll0_locked(&AVR32_PM); + + /* Set all peripheral clocks torun at master clock rate */ + pm_cksel(&AVR32_PM, + 0, /* pbadiv */ + 0, /* pbasel */ + 0, /* pbbdiv */ + 0, /* pbbsel */ + 0, /* hsbdiv */ + 0); /* hsbsel */ + + /* Set one waitstate for the flash */ + flashc_set_wait_state(1); + + /* Switch to PLL0 as the master clock */ + pm_switch_to_clock(&AVR32_PM, AVR32_PM_MCCTRL_MCSEL_PLL0); +} + +static void init_exceptions(void) +{ + extern void _evba; + Set_system_register(AVR32_EVBA, (int)&_evba); + Enable_global_exception(); +} + +static void init_hmatrix(void) +{ + union { + unsigned long scfg; + avr32_hmatrix_scfg_t SCFG; + } u_avr32_hmatrix_scfg = { + AVR32_HMATRIX.scfg[AVR32_HMATRIX_SLAVE_FLASH] + }; + u_avr32_hmatrix_scfg.SCFG.defmstr_type = + AVR32_HMATRIX_DEFMSTR_TYPE_LAST_DEFAULT; + AVR32_HMATRIX.scfg[AVR32_HMATRIX_SLAVE_FLASH] = + u_avr32_hmatrix_scfg.scfg; +} + +static void init_interrupts(void) +{ + INTC_init_interrupts(); + Enable_global_interrupt(); +} + +static void init_spi(void) +{ +#if defined(WL_SPI) + int i; +#endif + + +#if defined(AT45DBX_SPI) + static const gpio_map_t AT45DBX_SPI_GPIO_MAP = { + { AT45DBX_SPI_SCK_PIN, AT45DBX_SPI_SCK_FUNCTION }, + { AT45DBX_SPI_MISO_PIN, AT45DBX_SPI_MISO_FUNCTION }, + { AT45DBX_SPI_MOSI_PIN, AT45DBX_SPI_MOSI_FUNCTION }, + { AT45DBX_SPI_NPCS2_PIN, AT45DBX_SPI_NPCS2_FUNCTION }, + }; +#endif + + +#if defined(WL_SPI) + const gpio_map_t WL_SPI_GPIO_MAP = { +#if defined(WL_SPI_NPCS0) + WL_SPI_NPCS0, +#endif + WL_SPI_NPCS, WL_SPI_MISO, WL_SPI_MOSI, WL_SPI_SCK + }; +#endif + +#if defined(WL_SPI) || defined(AT45DBX_SPI) + spi_options_t spiOptions = { + .modfdis = 1 /* only param used by spi_initMaster() */ + }; +#endif + +#if defined(AT45DBX_SPI) + gpio_enable_module(AT45DBX_SPI_GPIO_MAP, + sizeof(AT45DBX_SPI_GPIO_MAP) / + sizeof(AT45DBX_SPI_GPIO_MAP[0])); + spi_initMaster(AT45DBX_SPI, &spiOptions); + spi_selectionMode(AT45DBX_SPI, 0, 0, 0); +#endif + +#if defined(WL_SPI) + /* same pins might be initialized twice here */ + gpio_enable_module(WL_SPI_GPIO_MAP, + sizeof(WL_SPI_GPIO_MAP) / + sizeof(WL_SPI_GPIO_MAP[0])); + for (i = 0; i < sizeof(WL_SPI_GPIO_MAP)/sizeof(WL_SPI_GPIO_MAP[0]); i++) + gpio_enable_pin_pull_up(WL_SPI_GPIO_MAP[i].pin); + + /* same SPI controller might be initialized again */ + spi_initMaster(&WL_SPI, &spiOptions); + spi_selectionMode(&WL_SPI, 0, 0, 0); +#endif + +#if defined(AT45DBX_SPI) + spi_enable(AT45DBX_SPI); + + /* put up flash reset pin */ + gpio_set_gpio_pin(AT45DBX_CHIP_RESET); +#endif + +#if defined(WL_SPI) + spi_enable(&WL_SPI); +#endif +} + + +static void init_rs232(void) +{ +#ifndef NO_SERIAL +#if defined(BOARD_RS232_0) + const gpio_map_t BOARD_RS232_0_GPIO_MAP = { + BOARD_RS232_0_TX, + BOARD_RS232_0_RX, +#if defined(BOARD_RS232_0_RTS) && defined (BOARD_RS232_0_CTS) + BOARD_RS232_0_RTS, + BOARD_RS232_0_CTS +#endif + + }; +#endif + +#if defined(BOARD_RS232_1) + const gpio_map_t BOARD_RS232_1_GPIO_MAP = { + BOARD_RS232_1_TX, + BOARD_RS232_1_RX +#if defined(BOARD_RS232_1_RTS) && defined (BOARD_RS232_1_CTS) + BOARD_RS232_1_RTS, + BOARD_RS232_1_CTS +#endif + }; +#endif + +#if defined(BOARD_RS232_0) + gpio_enable_module(BOARD_RS232_0_GPIO_MAP, + sizeof(BOARD_RS232_0_GPIO_MAP) / + sizeof(BOARD_RS232_0_GPIO_MAP[0])); +#endif + +#if defined(BOARD_RS232_1) + gpio_enable_module(BOARD_RS232_1_GPIO_MAP, + sizeof(BOARD_RS232_1_GPIO_MAP) / + sizeof(BOARD_RS232_1_GPIO_MAP[0])); +#endif +#endif /* NO_SERIAL */ +} + +static void init_printk(void) +{ +#ifndef NO_SERIAL +#if defined(CONFIG_CONSOLE_PORT) + const usart_options_t usart_options = { + .baudrate = 57600, + .charlength = 8, + .paritytype = USART_NO_PARITY, + .stopbits = USART_1_STOPBIT, + .channelmode = USART_NORMAL_CHMODE + }; + usart_init_rs232(&CONFIG_CONSOLE_PORT, &usart_options, FPBA_HZ); +#endif +#endif /* NO_SERIAL */ +} + +void board_init(void) +{ + + init_exceptions(); + init_hmatrix(); + init_sys_clocks(); + init_interrupts(); + + init_rs232(); + init_printk(); + +#ifdef WITH_SDRAM + sdramc_init(FHSB_HZ); +#endif + init_spi(); +} diff --git a/libraries/WiFi/extras/wifiHD/src/board_init.h b/libraries/WiFi/extras/wifiHD/src/board_init.h new file mode 100644 index 000000000..05a660998 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/board_init.h @@ -0,0 +1,313 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef STARTUP_H +#define STARTUP_H + +#include <board.h> +#include <wl_api.h> /* defines SPB104, SPB105 */ + +void board_init(void); + + + +/* + * + * EVK1100 + * --------------------------------------------------------------------------- + * + */ +#if BOARD == EVK1100 + +/* USART0 physical assignment */ +#define BOARD_RS232_0 AVR32_USART1 +#define BOARD_RS232_0_TX \ + { AVR32_USART1_TXD_0_0_PIN, AVR32_USART1_TXD_0_0_FUNCTION } +#define BOARD_RS232_0_RX \ + { AVR32_USART1_RXD_0_0_PIN, AVR32_USART1_RXD_0_0_FUNCTION } + +/* USART1 physical assignment */ +#define BOARD_RS232_1 AVR32_USART0 +#define BOARD_RS232_1_TX \ + { AVR32_USART0_TXD_0_0_PIN, AVR32_USART0_TXD_0_0_FUNCTION } +#define BOARD_RS232_1_RX \ + { AVR32_USART0_RXD_0_0_PIN, AVR32_USART0_RXD_0_0_FUNCTION }, + +/* Clocks */ +#define USE_PLL +#define OSC 0 +#define PLL_MUL 10 + +/* Wifi (SPB104 only) */ +#if defined(EXT_BOARD) +#if EXT_BOARD == SPB104 +#define WL_SPI AVR32_SPI1 /* Pin 8 NC, so no irq support if using SD-slot */ +#define WL_SPI_CLOCK_DIVIDER 3 /* due to adapter */ +#define WL_PDCA_PID_TX AVR32_PDCA_PID_SPI1_TX +#define WL_PDCA_PID_RX AVR32_PDCA_PID_SPI1_RX +#define WL_SPI_CS 1 +#define WL_SPI_NPCS0 { AVR32_SPI1_NPCS_0_0_PIN, AVR32_SPI1_NPCS_0_0_FUNCTION } +#define WL_SPI_NPCS { AVR32_SPI1_NPCS_1_0_PIN, AVR32_SPI1_NPCS_1_0_FUNCTION } +#define WL_SPI_MISO { AVR32_SPI1_MISO_0_0_PIN, AVR32_SPI1_MISO_0_0_FUNCTION } +#define WL_SPI_MOSI { AVR32_SPI1_MOSI_0_0_PIN, AVR32_SPI1_MOSI_0_0_FUNCTION } +#define WL_SPI_SCK { AVR32_SPI1_SCK_0_0_PIN, AVR32_SPI1_SCK_0_0_FUNCTION } +#endif +#endif /* EXT_BOARD */ + + + + + + +/* + * + * EVK1101 + * --------------------------------------------------------------------------- + * + */ +#elif BOARD == EVK1101 + +/* USART0 physical assignment */ +#define BOARD_RS232_0 AVR32_USART1 +#define BOARD_RS232_0_TX \ + { AVR32_USART1_TXD_0_0_PIN, AVR32_USART1_TXD_0_0_FUNCTION } +#define BOARD_RS232_0_RX \ + { AVR32_USART1_RXD_0_0_PIN, AVR32_USART1_RXD_0_0_FUNCTION } + +/* Clocks */ +#define USE_PLL +#define OSC 0 +#define PLL_MUL 9 + +/* Wifi (SPB104 only) */ +#if defined(EXT_BOARD) +#if EXT_BOARD == SPB104 /* Pin 8 NC, so no irq support if using SD-slot */ +#define WL_SPI AVR32_SPI +#define WL_SPI_CLOCK_DIVIDER 3 /* due to adapter */ +#define WL_PDCA_PID_TX AVR32_PDCA_PID_SPI_TX +#define WL_PDCA_PID_RX AVR32_PDCA_PID_SPI_RX +#define WL_SPI_CS 1 +#if EXT_BOARD == SPB105 + #define WL_SHUTDOWN_PIN AVR32_PIN_PA06 + #define WL_POWER_PIN AVR32_PIN_PA30 +#endif +#define WL_SPI_NPCS0 { AVR32_SPI_NPCS_0_0_PIN, AVR32_SPI_NPCS_0_0_FUNCTION } +#define WL_SPI_NPCS { AVR32_SPI_NPCS_1_0_PIN, AVR32_SPI_NPCS_1_0_FUNCTION } +#define WL_SPI_MISO { AVR32_SPI_MISO_0_0_PIN, AVR32_SPI_MISO_0_0_FUNCTION } +#define WL_SPI_MOSI { AVR32_SPI_MOSI_0_0_PIN, AVR32_SPI_MOSI_0_0_FUNCTION } +#define WL_SPI_SCK { AVR32_SPI_SCK_0_0_PIN, AVR32_SPI_SCK_0_0_FUNCTION } +#endif +#endif /* EXT_BOARD */ + + + + + + + +/* + * + * EVK1104 + * --------------------------------------------------------------------------- + * + */ +#elif BOARD == EVK1104 /* EVK1104 */ + +/* USART0 physical assignment */ +#define BOARD_RS232_0 AVR32_USART1 +#define BOARD_RS232_0_TX \ + { AVR32_USART1_TXD_0_0_PIN, AVR32_USART1_TXD_0_0_FUNCTION } +#define BOARD_RS232_0_RX \ + { AVR32_USART1_RXD_0_0_PIN, AVR32_USART1_RXD_0_0_FUNCTION } + +/* Clocks */ +#define USE_PLL +#define OSC 0 +#define PLL_MUL 9 /* for some reason we cant use 66 MHz */ + +/* Wifi (SDIO: SPB104 only; SPI: SPB105 only) */ +#if defined(EXT_BOARD) +#if EXT_BOARD == SPB105 + #define WL_SPI AVR32_SPI0 + #define WL_PDCA_PID_TX AVR32_PDCA_PID_SPI0_TX + #define WL_PDCA_PID_RX AVR32_PDCA_PID_SPI0_RX + #define WL_SPI_CLOCK_DIVIDER 3 /* due to adapter */ + #define WL_SHUTDOWN_PIN AVR32_PIN_PA17 /* Pin 8 on RF-head -> Pin 4 on wifi */ + #define WL_IRQ_PIN AVR32_PIN_PA18 /* Pin 6 on RF-head -> Pin 3 on wifi */ + #define WL_IRQ AVR32_GPIO_IRQ_2 + #define WL_SPI_CS 3 + #define WL_SPI_NPCS { AVR32_SPI0_NPCS_3_1_PIN, AVR32_SPI0_NPCS_3_1_FUNCTION } + #define WL_SPI_MISO { AVR32_SPI0_MISO_0_0_PIN, AVR32_SPI0_MISO_0_0_FUNCTION } + #define WL_SPI_MOSI { AVR32_SPI0_MOSI_0_0_PIN, AVR32_SPI0_MOSI_0_0_FUNCTION } + #define WL_SPI_SCK { AVR32_SPI0_SCK_0_0_PIN, AVR32_SPI0_SCK_0_0_FUNCTION } +#elif EXT_BOARD == SPB104 + #ifdef SDIO_SLOT_A + #define WL_SDIO_CLK { AVR32_MCI_CLK_0_PIN, AVR32_MCI_CLK_0_FUNCTION } + #define WL_SDIO_CMD { AVR32_MCI_CMD_0_PIN, AVR32_MCI_CMD_0_FUNCTION } + #define WL_SDIO_DAT0 { AVR32_MCI_DATA_0_PIN, AVR32_MCI_DATA_0_FUNCTION } + #define WL_SDIO_DAT1 { AVR32_MCI_DATA_1_PIN, AVR32_MCI_DATA_1_FUNCTION } + #define WL_SDIO_DAT2 { AVR32_MCI_DATA_2_PIN, AVR32_MCI_DATA_2_FUNCTION } + #define WL_SDIO_DAT3 { AVR32_MCI_DATA_3_PIN, AVR32_MCI_DATA_3_FUNCTION } + #else + #define WL_SDIO_CLK { AVR32_MCI_CLK_0_PIN, AVR32_MCI_CLK_0_FUNCTION } + #define WL_SDIO_CMD { AVR32_MCI_CMD_1_0_PIN, AVR32_MCI_CMD_1_0_FUNCTION } + #define WL_SDIO_DAT0 { AVR32_MCI_DATA_8_0_PIN, AVR32_MCI_DATA_8_0_FUNCTION } + #define WL_SDIO_DAT1 { AVR32_MCI_DATA_9_0_PIN, AVR32_MCI_DATA_9_0_FUNCTION } + #define WL_SDIO_DAT2 { AVR32_MCI_DATA_10_0_PIN, AVR32_MCI_DATA_10_0_FUNCTION } + #define WL_SDIO_DAT3 { AVR32_MCI_DATA_11_0_PIN, AVR32_MCI_DATA_11_0_FUNCTION } + #endif +#endif +#endif /* EXT_BOARD */ + + + + + + + +/* + * + * EVK1105 + * --------------------------------------------------------------------------- + * + */ +#elif BOARD == EVK1105 /* EVK1105 */ + + +/* USART0 physical assignment */ +#define BOARD_RS232_0 AVR32_USART0 +#define BOARD_RS232_0_TX \ + { AVR32_USART0_TXD_0_0_PIN, AVR32_USART0_TXD_0_0_FUNCTION } +#define BOARD_RS232_0_RX \ + { AVR32_USART0_RXD_0_0_PIN, AVR32_USART0_RXD_0_0_FUNCTION } + +/* Clocks */ +#define USE_PLL +#define OSC 1 +#define PLL_MUL 10 + +/* Wifi SPB104/SPB105 */ +#if defined(EXT_BOARD) + #define WL_SPI AVR32_SPI0 + #define WL_PDCA_PID_TX AVR32_PDCA_PID_SPI0_TX + #define WL_PDCA_PID_RX AVR32_PDCA_PID_SPI0_RX + #if EXT_BOARD == SPB105 + #define WL_SPI_CLOCK_DIVIDER 3 /* due to adapter */ + #define WL_SHUTDOWN_PIN AVR32_PIN_PB31 /* Pin 8 on RF-head -> Pin 4 on wifi */ + #define WL_IRQ_PIN AVR32_PIN_PB30 /* Pin 6 on RF-head -> Pin 3 on wifi */ + #define WL_IRQ AVR32_GPIO_IRQ_7 + #define WL_SPI_CS 2 + #elif EXT_BOARD == SPB104 + #define WL_SPI_CLOCK_DIVIDER 3 /* due to adapter */ + #define WL_SPI_CS 1 + #endif + #define WL_SPI_NPCS0 { AVR32_SPI0_NPCS_0_0_PIN, AVR32_SPI0_NPCS_0_0_FUNCTION } + #if WL_SPI_CS == 1 + #define WL_SPI_NPCS { AVR32_SPI0_NPCS_1_0_PIN, AVR32_SPI0_NPCS_1_0_FUNCTION } + #elif WL_SPI_CS == 2 + #define WL_SPI_NPCS { AVR32_SPI0_NPCS_2_0_PIN, AVR32_SPI0_NPCS_2_0_FUNCTION } + #endif + #define WL_SPI_MISO { AVR32_SPI0_MISO_0_0_PIN, AVR32_SPI0_MISO_0_0_FUNCTION } + #define WL_SPI_MOSI { AVR32_SPI0_MOSI_0_0_PIN, AVR32_SPI0_MOSI_0_0_FUNCTION } + #define WL_SPI_SCK { AVR32_SPI0_SCK_0_0_PIN, AVR32_SPI0_SCK_0_0_FUNCTION } +#endif /* EXT_BOARD */ + +/* + * + * ARDUINO + * --------------------------------------------------------------------------- + * + */ +#elif BOARD == ARDUINO /* ARDUINO */ + + +/* USART0 physical assignment */ +#define BOARD_RS232_1 AVR32_USART1 +#define BOARD_RS232_1_TX \ + { AVR32_USART1_TXD_0_0_PIN, AVR32_USART1_TXD_0_0_FUNCTION } +#define BOARD_RS232_1_RX \ + { AVR32_USART1_RXD_0_0_PIN, AVR32_USART1_RXD_0_0_FUNCTION } + +/* Clocks */ +#define USE_PLL +#define OSC 0 +#define PLL_MUL 8 + +#define WL_SPI AVR32_SPI1 +#define WL_PDCA_PID_TX AVR32_PDCA_PID_SPI1_TX +#define WL_PDCA_PID_RX AVR32_PDCA_PID_SPI1_RX + +#define WL_SHUTDOWN_PIN AVR32_PIN_PA09 +#define WL_IRQ_PIN AVR32_PIN_PA03 +/* +* WL_IRQ_# = (WL_IRQ_PIN / 32) * 4 + (WL_IRQ_PIN / 8) % 4 + * 3 => 0 * 4 + 0 = 0 +*/ +#define WL_IRQ AVR32_GPIO_IRQ_0 +#define WL_SPI_CS 0 +#define WL_RESET_PIN AVR32_PIN_PA07 +#define WL_EXTERNAL_RESET 1 + + +#define WL_SPI_NPCS { AVR32_SPI1_NPCS_0_0_PIN, AVR32_SPI1_NPCS_0_0_FUNCTION } +#define WL_SPI_MISO { AVR32_SPI1_MISO_0_0_PIN, AVR32_SPI1_MISO_0_0_FUNCTION } +#define WL_SPI_MOSI { AVR32_SPI1_MOSI_0_0_PIN, AVR32_SPI1_MOSI_0_0_FUNCTION } +#define WL_SPI_SCK { AVR32_SPI1_SCK_0_0_PIN, AVR32_SPI1_SCK_0_0_FUNCTION } + +#endif /* EVKxxxx */ + + + + + + + + + +#if OSC == 0 +# define FOSC FOSC0 /* 12 MHz */ +#else +# define FOSC FOSC1 /* 11.2896 MHz */ +#endif + +#ifdef USE_PLL +# define FMCK_HZ ((FOSC * (PLL_MUL + 1)) / 2) +#else +# define FMCK_HZ FOSC +#endif + +#define FCPU_HZ FMCK_HZ +#define FHSB_HZ FCPU_HZ +#define FPBB_HZ FMCK_HZ +#define FPBA_HZ FMCK_HZ + + +#ifndef CONFIG_CONSOLE_PORT +#define CONFIG_CONSOLE_PORT BOARD_RS232_1 +#endif + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/cmd_wl.c b/libraries/WiFi/extras/wifiHD/src/cmd_wl.c new file mode 100644 index 000000000..a210dec37 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/cmd_wl.c @@ -0,0 +1,731 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <top_defs.h> +#include <ctype.h> +#include <stdlib.h> +#include <string.h> + +#include <cmd_wl.h> + +#include <wl_cm.h> +#include <console.h> +#include <util.h> +#include <lwip_setup.h> + +#include "lwip/netif.h" +#include "lwip/dns.h" +#include "debug.h" +#include "ard_spi.h" +#include "ard_tcp.h" +#include "ard_utils.h" + +extern void showTTCPstatus(); + +#define _DNS_CMD_ + +/** + * + */ +cmd_state_t +cmd_scan(int argc, char* argv[], void* ctx) +{ + /* Note that the scan results presented will + * be from the last scan, not this one. + */ + wl_scan(); + print_network_list(); + return CMD_DONE; +} + +cmd_state_t +cmd_debug_toggle(int argc, char* argv[], void* ctx) +{ + extern uint8_t tr_data_trace; + if ( argc != 2 ) { + printk("usage: dt <1|0>\n"); + return CMD_DONE; + } + if ( '0' == argv[1][0] ) { + tr_data_trace = 0; + } + if ( '1' == argv[1][0] ) { + tr_data_trace = 1; + } + return CMD_DONE; +} + +/** + * + */ +cmd_state_t +cmd_connect(int argc, char* argv[], void* ctx) +{ + struct wl_ssid_t ssid; + char desired_ssid[WL_SSID_MAX_LENGTH]; + int len = 0; + + if (argc < 2) { + printk("usage: connect <ssid>\n"); + return CMD_DONE; + } + + len = join_argv(desired_ssid, sizeof desired_ssid, argc - 1, argv + 1); + if (0 == len) { + return CMD_DONE; + } + + memcpy(ssid.ssid, desired_ssid, len); + ssid.len = len; + /* Start connection manager */ + wl_cm_set_network(&ssid, NULL); + wl_cm_start(); + return CMD_DONE; +} + +#ifdef WFE_6_12 +cmd_state_t +cmd_ibss(int argc, char* argv[], void* ctx) +{ + struct wl_ssid_t ssid; + char desired_ssid[WL_SSID_MAX_LENGTH]; + uint8_t channel; + enum wl_auth_mode amode; + int len = 0; + wl_err_t ret; + + if ( 2 == argc && ! strncmp(argv[1], "none", 4) ) { + printk("Disconnecting\n"); + wl_disconnect(); + wl_cm_stop(); + return CMD_DONE; + } + if (argc < 4) { + printk("usage: ibss <ssid> <channel (1-14)> <wep_enable (1|0)>\n"); + printk(" ibss none\n"); + return CMD_DONE; + } + + channel = atoi(argv[argc - 2]); + if ( *argv[argc - 1] == '0' ) { + amode = AUTH_MODE_OPEN_SYSTEM; + } else { + amode = AUTH_MODE_SHARED_KEY; + } + len = join_argv(desired_ssid, sizeof desired_ssid, argc - 3, argv + 1); + if (0 == len) { + return CMD_DONE; + } + if ( channel > 14 ) { + printk("Invalid channel %d\n", (int)channel); + return CMD_DONE; + } + printk("%s : Start with ssid \"%s\", channel %d\n", __func__, + desired_ssid, channel); + memcpy(ssid.ssid, desired_ssid, len); + ssid.len = len; + /* Stop the connection manager */ + wl_cm_stop(); + + ret = wl_start_adhoc_net(ssid, channel, amode); + switch (ret) { + case WL_BUSY: + printk("Driver is busy. Already connected?\n"); + break; + case WL_RETRY: + printk("Driver is busy. Retry operation\n"); + break; + case WL_OOM: + printk("Out of memory\n"); + break; + case WL_INVALID_ARGS: + printk("Invalid argument\n"); + break; + case WL_SUCCESS: + break; + default: + printk("Unknown error %d\n", ret); + break; + } + return CMD_DONE; +} +#endif +/** + * + */ +cmd_state_t +cmd_set_ip(int argc, char* argv[], void* ctx) +{ + struct ctx_server *hs = ctx; + struct net_cfg *ncfg = &(hs->net_cfg); + struct ip_addr lwip_addr; + struct netif *nif = ncfg->netif; + + if (argc == 2 && + (strncmp(argv[1], "none", 4) == 0)) { + ncfg->dhcp_enabled = DYNAMIC_IP_CONFIG; + + return CMD_DONE; + } + else if (argc != 4 ) { + printk("usage: ipconfig <ip> <netmask> <gateway-ip>\n"); + printk(" or : ipconfig none (to enable DHCP)\n"); + return CMD_DONE; + } + + /* IP address */ + lwip_addr = str2ip(argv[1]); + INFO_SPI("nif:%p lwip_addr=0x%x\n", nif, lwip_addr.addr); + netif_set_ipaddr(nif, &lwip_addr); + /* Netmask */ + lwip_addr = str2ip(argv[2]); + netif_set_netmask(nif, &lwip_addr); + /* Default Gateway address */ + lwip_addr = str2ip(argv[3]); + netif_set_gw(nif, &lwip_addr); + /* Disable DHCP */ + ncfg->dhcp_enabled = STATIC_IP_CONFIG; + + return CMD_DONE; +} + +#ifdef WITH_WPA + +/** + * + */ +cmd_state_t +cmd_delpass(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: dpass <ssid>\n"; + struct wl_network_t net; + char desired_ssid[WL_SSID_MAX_LENGTH]; + int len = 0; + + if (argc != 2) { + printk(usage); + return CMD_DONE; + } + + memset(&net, 0, sizeof net); + memset(net.bssid.octet, 0xFF, sizeof net.bssid.octet); + + len = join_argv(desired_ssid, sizeof desired_ssid, argc - 1, argv + 1); + if (0 == len) { + return CMD_DONE; + } + memcpy(net.ssid.ssid, desired_ssid, len); + net.ssid.len = len; + net.enc_type = ENC_TYPE_AUTO; + if (wl_clear_passphrase(&net) != WL_SUCCESS) { + printk("%s : Failed to delete passphrase\n", __func__); + } + + return CMD_DONE; +} + + +/** + * + */ +cmd_state_t +cmd_setpass(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: wpass <ssid> <passphrase>\n"; + struct wl_network_t net; + char desired_ssid[WL_SSID_MAX_LENGTH]; + int len = 0; + + if (argc < 3) { + printk(usage); + return CMD_DONE; + } + /* Not really kosher, an ssid may legally contain 0-bytes but + * the console interface does not deal with that. + */ + memset(&net, 0, sizeof net); + memset(net.bssid.octet, 0xFF, sizeof net.bssid.octet); + + len = join_argv(desired_ssid, sizeof desired_ssid, argc - 2, argv + 1); + if (0 == len) { + return CMD_DONE; + } + + memcpy(net.ssid.ssid, desired_ssid, len); + net.ssid.len = len; + net.enc_type = ENC_TYPE_AUTO; + if (wl_set_passphrase(&net, + argv[argc - 1], + strlen(argv[argc - 1]), + ENC_TYPE_AUTO, + AUTH_MODE_AUTO) + != WL_SUCCESS) { + printk("%s : Failed to add passphrase\n", __func__); + } + + return CMD_DONE; +} +#endif + +#ifdef _DNS_CMD_ +void foundHost(const char *name, struct ip_addr *ipaddr, void *callback_arg) +{ + printk("Found Host: name=%s ip=0x%x\n", name, ipaddr->addr); +} + +/** + * + */ +cmd_state_t +cmd_gethostbyname(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: getHost <hostname>\n"; + char hostname[DNS_MAX_NAME_LENGTH]; + struct ip_addr _addr; + int len = 0; + + if (argc < 2) { + printk(usage); + return CMD_DONE; + } + + len = join_argv(hostname, sizeof hostname, argc - 1, argv + 1); + if (0 == len) { + return CMD_DONE; + } + err_t err = dns_gethostbyname(hostname, &_addr, foundHost, NULL); + if (err == ERR_OK) + { + printk("Found Host: name=%s ip=0x%x\n", hostname, _addr.addr); + } + + return CMD_DONE; +} + +/** + * + */ +cmd_state_t +cmd_setDnsServer(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: setdns [1-2] aaa.bbb.ccc.ddd\n"; + struct ip_addr dnsIp; + int dnsIdx = 0; + + if (argc < 3) { + printk(usage); + return CMD_DONE; + } + + /* DNS IDX */ + dnsIdx = atoi(argv[1])-1; + /* IP address */ + dnsIp = str2ip(argv[2]); + + printk("Set DNS server %d to %s\n", dnsIdx, ip2str(dnsIp)); + dns_setserver(dnsIdx, &dnsIp); + struct ip_addr addr1 = dns_getserver(0); + struct ip_addr addr2 = dns_getserver(1); + + printk("==> DNS1: %s\n", ip2str(addr1), addr1); + printk("==> DNS2: %s\n", ip2str(addr2), addr2); + + return CMD_DONE; +} + +/** + * + */ +cmd_state_t +cmd_startSrv(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: startSrv <port> <sock> <tcp(0)/udp(1)>\n"; + + int port = 0; + int sock = 0; + int protMode = 0; + + if (argc < 4) { + printk(usage); + return CMD_DONE; + } + + /* TCP port */ + port = atoi(argv[1]); + /* socket index */ + sock = atoi(argv[2]); + /* Protocol Mode */ + protMode = atoi(argv[3]); + + printk("Start %s server on port %d sock %d\n", ProtMode2Str(protMode), port, sock); + if (start_server_tcp(port, sock, protMode) == -1) + { + WARN("Start %s server on port %d sock %d FAILED\n", ProtMode2Str(protMode), port, sock); + } + return CMD_DONE; +} + +/** + * + */ +cmd_state_t +cmd_startCli(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: startCli <ipaddr> <port> <sock> <tcp(0)/udp(1)>\n"; + struct ip_addr addr = {0}; + int port = 0; + int sock = 0; + int protMode = 0; + + if (argc < 5) { + printk(usage); + return CMD_DONE; + } + + /* IP address */ + addr = str2ip(argv[1]); + /* TCP port */ + port = atoi(argv[2]); + /* socket index */ + sock = atoi(argv[3]); + /* Protocol Mode */ + protMode = atoi(argv[4]); + + printk("Start client on addr 0x%x, port %d sock %d mode %d\n", addr, port, sock, protMode); + if (start_client_tcp(addr.addr, port, sock, protMode) == -1) + { + WARN("Start client on port %d sock %d prot %d mode %d FAILED\n", port, sock, protMode); + } + return CMD_DONE; +} + +#endif + + +/** + * + */ +cmd_state_t +cmd_status(int argc, char* argv[], void* ctx) +{ + struct net_cfg *ncfg = ctx; + struct wl_network_t* net; + uint8_t mac[WL_MAC_ADDR_LENGTH]; + + printk("wl_api version " WL_API_RELEASE_NAME "\n"); + /* print mac address */ + if (wl_get_mac_addr(mac) != WL_SUCCESS) { + printk("failed to get mac address\n"); + }else{ + printk("hw addr: %s\n", mac2str(mac)); + } + + /* print network info */ + net = wl_get_current_network(); + printk("link status: "); + if (!net) { + printk("down\n"); + + }else{ + print_network(net); + } + + /* print ip address */ + if (netif_is_up(netif_default)) + { + printk("ip addr: %s - ", ip2str(netif_default->ip_addr)); + printk("netmask: %s - ", ip2str(netif_default->netmask)); + printk("gateway: %s\n", ip2str(netif_default->gw)); + } + else + printk("ip interface is down\n"); + printk("dhcp : "); + if (ncfg->dhcp_enabled == DYNAMIC_IP_CONFIG) { + printk("enabled\n"); + } + else { + printk("disabled\n"); + } + struct ip_addr addr1 = dns_getserver(0); + struct ip_addr addr2 = dns_getserver(1); + + printk("DNS: %s - ", ip2str(addr1)); + printk("%s\n", ip2str(addr2)); + + showTTCPstatus(); + return CMD_DONE; +} + +#ifdef ADD_CMDS +/** + * + */ +cmd_state_t +cmd_power(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: powersave <on|off>\n"; + + if (argc < 2) { + printk(usage); + return CMD_DONE; + } + + if (!strcmp(argv[1], "on")) { + if (wl_enable_ps() != WL_SUCCESS) { + printk("could not enable power save\n"); + return CMD_DONE; + } + return CMD_DONE; + } + else if(!strcmp(argv[1], "off")) { + if (wl_disable_ps() != WL_SUCCESS) { + printk("could not disable power save\n"); + return CMD_DONE; + } + return CMD_DONE; + } + + printk(usage); + return CMD_DONE; +} +#endif + +#ifdef ADD_CMDS +/** + * + */ +cmd_state_t +cmd_psconf(int argc, char* argv[], void* ctx) +{ + const char *usage = + "usage: psconf <use_ps_poll> (0/1 default 0)\n" \ + " <traffic_timeout> ([ms] default 10)\n" \ + " <ps_delay> ([ms] default 5000)\n"\ + " <rx_all_dtim> (0/1 default 1)\n"\ + " <listen_interval> ([beacons] default 20)\n"; + + uint8_t use_ps_poll; + uint32_t traffic_timeout; + uint32_t ps_delay; + uint8_t rx_all_dtim; + uint16_t listen_interval; + + if (argc < 6) { + printk(usage); + return CMD_DONE; + } + + use_ps_poll = atoi(argv[1]); + traffic_timeout = atoi(argv[2]); + ps_delay = atoi(argv[3]); + rx_all_dtim = atoi(argv[4]); + listen_interval = atoi(argv[5]); + + if (use_ps_poll > 1) { + printk(usage); + return CMD_DONE; + } + + if (rx_all_dtim > 1) { + printk(usage); + return CMD_DONE; + } + + if (wl_conf_ps(use_ps_poll, traffic_timeout, ps_delay, + rx_all_dtim, listen_interval) != WL_SUCCESS) + printk("configuration failed\n"); + + return CMD_DONE; +} +#endif + +/** + * + */ +cmd_state_t +cmd_setkey(int argc, char* argv[], void* ctx) +{ + int idx, len; + char key[13]; + struct wl_mac_addr_t bssid; + const char *usage = "usage: setkey <key_idx (0-3)> <key in hex>\n\t "\ + "or: setkey none\n"; + + memset(&bssid.octet, 0xff, sizeof bssid.octet); + if (argc == 2 && strcmp(argv[1], "none") == 0) { + printk("Deleting WEP keys\n"); + wl_delete_wep_key(0, &bssid); + wl_delete_wep_key(1, &bssid); + wl_delete_wep_key(2, &bssid); + wl_delete_wep_key(3, &bssid); + return CMD_DONE; + } + if (argc < 3) { + printk(usage); + return CMD_DONE; + } + idx = atoi(argv[1]); + len = strlen(argv[2]); + /* Pass phrase? */ + if ( 5 == len || 13 == len ) { + strncpy(key, argv[2], len); + } + /* Otherwise it's a hex string */ + else { + len = ascii_to_key(key, argv[2]); + if (0 == len || idx > 3 || idx < 0 || (idx == 0 && *argv[1] != '0')) { + printk(usage); + return CMD_DONE; + } + if (len != 5 && len != 13) { + printk(" WEP key must be 10 (WEP-40) or 26 (WEP-104) digits\n"); + return CMD_DONE; + } + } + wl_add_wep_key(idx, len, key, &bssid); + wl_set_default_wep_key(idx); + + return CMD_DONE; +} + +cmd_state_t +cmd_debug(int argc, char* argv[], void* ctx) +{ + int level; + const char *usage = "usage: debug <section> <level>\n\t"\ + "section: init, cm, spi, tcp , util, warn\n\t" + "level : 0 (off), 1 (on), 2 (verbose)\n\t" + "or: debug print/on/off\n"; + + if (argc == 2 && strcmp(argv[1], "off") == 0) { + printk("Debug OFF\n"); + INIT_DEBUG_VARIABLES() + return CMD_DONE; + }else if (argc == 2 && strcmp(argv[1], "print") == 0) { + PRINT_DEBUG_VARIABLES() + return CMD_DONE; + }else if (argc == 2 && strcmp(argv[1], "on") == 0) { + printk("Debug ON\n"); + TURNON_DEBUG_VARIABLES(); + return CMD_DONE; + } + if (argc < 3) { + printk(usage); + return CMD_DONE; + } + level = atoi(argv[2]); + if (argc == 3 && strcmp(argv[1], "init") == 0) { + CHECK_DEBUG_LEVEL(level, INFO_INIT_FLAG); + }else if (argc == 3 && strcmp(argv[1], "spi") == 0) { + CHECK_DEBUG_LEVEL(level, INFO_SPI_FLAG); + }else if (argc == 3 && strcmp(argv[1], "tcp") == 0) { + CHECK_DEBUG_LEVEL(level, INFO_TCP_FLAG); + }else if (argc == 3 && strcmp(argv[1], "cm") == 0) { + CHECK_DEBUG_LEVEL(level, INFO_CM_FLAG); + }else if (argc == 3 && strcmp(argv[1], "util") == 0) { + CHECK_DEBUG_LEVEL(level, INFO_UTIL_FLAG); + }else if (argc == 3 && strcmp(argv[1], "warn") == 0) { + CHECK_DEBUG_LEVEL(level, INFO_WARN_FLAG); + } + return CMD_DONE; +} + +extern void dumpPbuf(uint8_t sock); + +/** + * + */ +cmd_state_t +cmd_dumpBuf(int argc, char* argv[], void* ctx) +{ + const char *usage = "usage: dumpPbuf [sock]\n\t"\ + "sock: socket Number\n"; + + if (argc == 2 && strcmp(argv[1], "all") == 0) { + printk("Dump All Buffers\n"); + int i = 0; + for (; i<MAX_SOCK_NUM; ++i) + { + printk("Socket: %d\n", i); + dumpPbuf(i); + } + }else if (argc == 2) { + uint8_t sock = atoi(argv[1]); + printk("Socket: %d\n", sock); + dumpPbuf(sock); + }else { + printk(usage); + } + return CMD_DONE; +} + + + +/** + * + */ +cmd_state_t +cmd_sendUdpData(int argc, char* argv[], void* ctx) +{ + const char pattern[]={'M', 'I', 'M', 'L', 'F', 'D'}; + const char* pattern2[]={"Prova", "1234567890","FineTest"}; + const char *usage = "usage: sendUdp [sock]\n\t"\ + "sock: socket Number\n"; + + if (argc < 2) + printk(usage); + + if (argc >= 2) { + + uint8_t sock = atoi(argv[1]); + printk("Socket: %d\n", sock); + + if (argc >= 3) { + uint8_t patternType = atoi(argv[2]); + printk("PatternType: %d\n", patternType); + if (patternType == 1) + { + insertBuf(sock, (uint8_t*)pattern2[0], strlen(pattern2[0])); + insertBuf(sock, (uint8_t*)pattern2[1], strlen(pattern2[1])); + insertBuf(sock, (uint8_t*)pattern2[2], strlen(pattern2[2])); + } + if (patternType == 2) + { + mergeBuf(sock, NULL, NULL); + } + }else{ + if (sock < MAX_SOCK_NUM) + { + sendUdpData(getTTCP(sock, TTCP_MODE_TRANSMIT), (uint8_t*)pattern, sizeof(pattern)/sizeof(char)); + } + } + + } + return CMD_DONE; +} diff --git a/libraries/WiFi/extras/wifiHD/src/cmd_wl.h b/libraries/WiFi/extras/wifiHD/src/cmd_wl.h new file mode 100644 index 000000000..a1d1a0f37 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/cmd_wl.h @@ -0,0 +1,66 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef CMD_CM_H +#define CMD_CM_H + +#include <console.h> +#include "netif/wlif.h" + +/*! A pointer to a struct of type "struct net_cfg" should be passed as + * the ctx pointer in the callbacks below. The struct must have a + * single instance per netif. + */ +#define _DNS_CMD_ + +cmd_state_t cmd_scan(int argc, char* argv[], void* ctx); +cmd_state_t cmd_connect(int argc, char* argv[], void* ctx); +cmd_state_t cmd_set_ip(int argc, char* argv[], void* ctx); +cmd_state_t cmd_setkey(int argc, char* argv[], void* ctx); +cmd_state_t cmd_status(int argc, char* argv[], void* ctx); +cmd_state_t cmd_power(int argc, char* argv[], void* ctx); +cmd_state_t cmd_psconf(int argc, char* argv[], void* ctx); +cmd_state_t cmd_setpass(int argc, char* argv[], void* ctx); +cmd_state_t cmd_delpass(int argc, char* argv[], void* ctx); +cmd_state_t cmd_debug(int argc, char* argv[], void* ctx); +cmd_state_t cmd_debug_toggle(int argc, char* argv[], void* ctx); +cmd_state_t cmd_statSpi(int argc, char* argv[], void* ctx); +cmd_state_t cmd_resetStatSpi(int argc, char* argv[], void* ctx); +cmd_state_t cmd_gethostbyname(int argc, char* argv[], void* ctx); +cmd_state_t cmd_setDnsServer(int argc, char* argv[], void* ctx); +cmd_state_t cmd_startSrv(int argc, char* argv[], void* ctx); +cmd_state_t cmd_startCli(int argc, char* argv[], void* ctx); +cmd_state_t cmd_dumpBuf(int argc, char* argv[], void* ctx); +cmd_state_t cmd_sendUdpData(int argc, char* argv[], void* ctx); +#ifdef WFE_6_12 +cmd_state_t cmd_ibss(int argc, char* argv[], void* ctx); +#endif + + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/console.c b/libraries/WiFi/extras/wifiHD/src/console.c new file mode 100644 index 000000000..e54943f09 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/console.c @@ -0,0 +1,212 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +#include <top_defs.h> +#include <string.h> +#include <stdint.h> +#include <stdlib.h> +#include <printf-stdarg.h> +#include <console.h> +#include <board_init.h> +#include <usart.h> + +#define MAX_CMD_CONSOLE_NUM 15 +struct { + cmd_cb_t cb; + const char* str; + void* ctx; +} cmd_list[MAX_CMD_CONSOLE_NUM] = { { 0 } }; + +#ifndef CMD_MAX_LEN +#define CMD_MAX_LEN 80 +#endif +extern int board_putchar(char c); +int io_getc(char *c) +{ + int ci; + int status; + status = usart_read_char(&CONFIG_CONSOLE_PORT, &ci); + if (status == USART_RX_EMPTY) + return 1; + + if (status == USART_RX_ERROR) { + CONFIG_CONSOLE_PORT.cr = AVR32_USART_CR_RSTSTA_MASK; + return 1; + } + + if (ci == '\r') { + board_putchar('\n'); + /* Echo char. */ + } else if (ci == '\b') { + board_putchar(ci); + board_putchar(' '); + board_putchar(ci); + } else + board_putchar(ci); + + + *c = ci; + return 0; +} + +static uint8_t is_initialized = 0; + +char* console_gets() +{ + static char buf[CMD_MAX_LEN]; + static int pos = 0; + char c; + + for (;;) { + if (io_getc(&c)) + return NULL; + + if (c == '\r' || c == '\n') { + buf[pos] = 0; + pos = 0; + return buf; + } + if (c == '\b') { + pos -= 1; + if (pos < 0) pos = 0; + buf[pos] = 0; + } + else + buf[pos++] = c; + if (pos == sizeof(buf)) + pos = 0; + } + return NULL; +} + +int console_add_cmd(const char* str, cmd_cb_t cb, void* ctx) +{ + uint32_t i; + for (i = 0; i < ARRAY_SIZE(cmd_list); i++) + if (!cmd_list[i].cb) + break; + + if (i == ARRAY_SIZE(cmd_list)) + return -1; + + cmd_list[i].str = str; + cmd_list[i].cb = cb; + cmd_list[i].ctx = ctx; + return 0; +} + +void console_init(void) +{ + printk("\n$ "); + is_initialized = 1; +} + +void console_init_silent(void) { + is_initialized = 1; +} + +int console_schedule_cmd(char *cmd, int interactive) { +#define MAX_ARGS 16 + static int argc, i; + static char* argv[MAX_ARGS]; + static char *buf; + static enum { INPUT, RUN } state = INPUT; + + switch (state) { + case INPUT: { + char* token; + if (NULL == cmd) { + return 0; + } + buf = strdup(cmd); + if (!buf) + return 0; + if (!strlen(buf)) { + interactive ? printk("$ ") : 0; + free(buf); + return 0; + } +#ifdef WIFI_DEBUG_ON + printk("%s : Scheduling command \"%s\"\n", + __func__, + buf); +#endif + for (i = 0; i < ARRAY_SIZE(cmd_list); i++) + if(cmd_list[i].str && !strncmp(cmd_list[i].str, buf, min(strlen(cmd_list[i].str), strlen(buf)))) + break; + + if (ARRAY_SIZE(cmd_list) == 0) { + printk("No commands available. Is the WiFi card responding?\n"); + } + if (i == ARRAY_SIZE(cmd_list)) { + if (interactive) { + printk("available commands:\n"); + for (i = 0; i < ARRAY_SIZE(cmd_list); i++) + if (cmd_list[i].cb) + printk(" %s\n", cmd_list[i].str); + printk("$ "); + } + free(buf); + return 0; + } + + for (token = strtok(buf, " "); token != NULL; + token = strtok(NULL, " ")) { + argv[argc] = token; + argc++; + if (argc == MAX_ARGS) + break; + } + + state = RUN; + } /* fall through */ + + case RUN: { + cmd_state_t s = cmd_list[i].cb(argc, argv, cmd_list[i].ctx); + if (s == CMD_INPROGRESS) + return 1; + + interactive ? printk("$ ") : 0; + + argc = 0; + memset(argv, 0, sizeof argv); + free(buf); + state = INPUT; + } + } + + return 1; +} + + +void console_poll(void) +{ + char *buf; + buf = console_gets(); + console_schedule_cmd(buf, 1); +} diff --git a/libraries/WiFi/extras/wifiHD/src/console.h b/libraries/WiFi/extras/wifiHD/src/console.h new file mode 100644 index 000000000..79bfedb88 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/console.h @@ -0,0 +1,46 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef CONSOLE_H +#define CONSOLE_H + + +typedef enum { + CMD_DONE, + CMD_INPROGRESS +} cmd_state_t; + +typedef cmd_state_t (*cmd_cb_t)(int argc, char* argv[], void* ctx); + +void console_init(void); +void console_init_silent(void); +char* console_gets(void); +int console_add_cmd(const char* str, cmd_cb_t cb, void* ctx); +int console_schedule_cmd(char *cmd, int interactive); +void console_poll(void); + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/debug.h b/libraries/WiFi/extras/wifiHD/src/debug.h new file mode 100644 index 000000000..154b79984 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/debug.h @@ -0,0 +1,191 @@ +//*********************************************/ +// +// File: debug.h +// +// Author: Domenico La Fauci +// +//********************************************/ + + +#ifndef Debug_H +#define Debug_H + +#include <stdio.h> +#include <string.h> + +#define INFO_INIT_FLAG 1 +#define INFO_TCP_FLAG 2 +#define INFO_SPI_FLAG 4 +#define INFO_CM_FLAG 8 +#define INFO_UTIL_FLAG 16 + +#define INFO_D (1<<0xD) // Debug +#define INFO_E (1<<0xE) // Error +#define INFO_WARN_FLAG (1<<0xF) // Warning +#define DEFAULT_INFO_FLAG 0 //INFO_WARN_FLAG + +#ifdef _DEBUG_ +#define DEFINE_DEBUG_VARIABLES() \ +uint16_t enableDebug = DEFAULT_INFO_FLAG | INFO_WARN_FLAG; \ +uint16_t verboseDebug = 0; \ +uint16_t dumpDebug = 0; \ +uint16_t pollDebug = 0; +#else +#define DEFINE_DEBUG_VARIABLES() \ +uint16_t enableDebug = DEFAULT_INFO_FLAG; \ +uint16_t verboseDebug = 0; \ +uint16_t dumpDebug = 0; \ +uint16_t pollDebug = 0; +#endif + +#define INIT_DEBUG_VARIABLES() \ + enableDebug = DEFAULT_INFO_FLAG | INFO_WARN_FLAG; \ + verboseDebug = 0; \ + dumpDebug = 0; pollDebug = 0; + + +#define PRINT_DEBUG_VARIABLES() \ + printk("Debug enabled: 0x%x\n", enableDebug); \ + printk("Verbose enabled: 0x%x\n", verboseDebug); \ + printk("Dump enabled: 0x%x\n", dumpDebug); \ + printk("POoll enabled: 0x%x\n", pollDebug); + +#define TURNON_DEBUG_VARIABLES() \ + enableDebug = 0xff; + +extern uint16_t enableDebug; +extern uint16_t verboseDebug; +extern uint16_t dumpDebug; +extern uint16_t pollDebug; + +#define ENABLE_DEBUG_LEVEL 1 +#define VERBOSE_DEBUG_LEVEL 2 +#define DUMP_DEBUG_LEVEL 3 +#define POLL_DEBUG_LEVEL 4 + +#define CHECK_DEBUG(VAR, LEVEL, LEVEL_LIMIT, FLAG) \ + do{ \ + if (LEVEL >= LEVEL_LIMIT) VAR |= FLAG; \ + else VAR &= ~FLAG; \ + }while(0); + +#define CHECK_ENA_DEBUG(LEVEL, FLAG) \ + CHECK_DEBUG(enableDebug, LEVEL, ENABLE_DEBUG_LEVEL, FLAG) +#define CHECK_VERB_DEBUG(LEVEL, FLAG) \ + CHECK_DEBUG(verboseDebug, LEVEL, VERBOSE_DEBUG_LEVEL, FLAG) +#define CHECK_DUMP_DEBUG(LEVEL, FLAG) \ + CHECK_DEBUG(dumpDebug, LEVEL, DUMP_DEBUG_LEVEL, FLAG) +#define CHECK_POLL_DEBUG(LEVEL, FLAG) \ + CHECK_DEBUG(pollDebug, LEVEL, POLL_DEBUG_LEVEL, FLAG) + + +#define CHECK_DEBUG_LEVEL(LEVEL, INFO_FLAG) \ + CHECK_ENA_DEBUG(LEVEL, INFO_FLAG) \ + CHECK_VERB_DEBUG(LEVEL, INFO_FLAG) \ + CHECK_DUMP_DEBUG(LEVEL, INFO_FLAG) \ + CHECK_POLL_DEBUG(LEVEL, INFO_FLAG) + +#ifdef _INFO_DEBUG_ +#define PRINT_DEBUG(msg, args...) do { \ + printk("[%s] " msg , __func__ , ##args ); \ +} while (0) + +#define INFO_DEBUG(msg, args...) do { \ + printk("I-[%s] " msg , __func__ , ##args ); \ +} while (0) + +#define WARN_DEBUG(msg, args...) do { \ + printk("W-[%s] " msg , __func__ , ##args ); \ +} while (0) + +#else +do { }while(0); +#endif + +#define IF_DEBUG(X,Y) do { \ +if (enableDebug & INFO_##X##_FLAG) \ +Y; \ +} while (0) + +#define IF_DEBUG_VER(X,Y) do { \ +if (verboseDebug & INFO_##X##_FLAG) \ +Y; \ +} while (0) + +#define IF_DEBUG_DUMP(X,Y) do { \ +if (dumpDebug & INFO_##X##_FLAG) \ +Y; \ +} while (0) + +#define IF_DEBUG_POLL(X,Y) do { \ +if (pollDebug & INFO_##X##_FLAG) {\ +Y; \ +}} while (0) + + + +#define IF_WARN(Y) IF_DEBUG(WARN,Y) +#define IF_WARN_VER(Y) IF_DEBUG_VER(WARN,Y) +#define IF_TCP(Y) IF_DEBUG(TCP,Y) +#define IF_TCP_VER(Y) IF_DEBUG_VER(TCP,Y) +#define IF_TCP_POLL(Y) IF_DEBUG_POLL(TCP,Y) +#define IF_TCP_DUMP(Y) IF_DEBUG_DUMP(TCP,Y) +#define IF_SPI(Y) IF_DEBUG(SPI,Y) +#define IF_SPI_VER(Y) IF_DEBUG_VER(SPI,Y) +#define IF_SPI_DUMP(Y) IF_DEBUG_DUMP(SPI,Y) +#define IF_SPI_POLL(Y) IF_DEBUG_POLL(SPI,Y) +#define IF_UTIL(Y) IF_DEBUG(UTIL,Y) +#define IF_UTIL_VER(Y) IF_DEBUG_VER(UTIL,Y) + +#define WARN(msg, args...) IF_DEBUG(WARN,WARN_DEBUG(msg, ##args)) +#define WARN_VER(msg, args...) IF_DEBUG_VER(WARN,WARN_DEBUG(msg, ##args)) +#define WARN_POLL(msg, args...) IF_DEBUG_POLL(WARN,WARN_DEBUG(msg, ##args)) +#if 0 // disable to reduce the size of binary +#define INFO_INIT(msg, args...) IF_DEBUG(INIT,PRINT_DEBUG(msg, ##args)) +#define INFO_INIT_VER(msg, args...) IF_DEBUG_VER(INIT,PRINT_DEBUG(msg, ##args)) +#else +#define INFO_INIT(msg, args...) +#define INFO_INIT_VER(msg, args...) +#endif +#define INFO_TCP(msg, args...) IF_DEBUG(TCP,PRINT_DEBUG(msg, ##args)) +#define INFO_TCP_VER(msg, args...) IF_DEBUG_VER(TCP,PRINT_DEBUG(msg, ##args)) +#define INFO_TCP_DUMP(msg, args...) IF_DEBUG_DUMP(TCP,PRINT_DEBUG(msg, ##args)) +#define INFO_TCP_POLL(msg, args...) IF_DEBUG_POLL(TCP,PRINT_DEBUG(msg, ##args)) +#define INFO_SPI(msg, args...) IF_DEBUG(SPI,PRINT_DEBUG(msg, ##args)) +#define INFO_SPI_VER(msg, args...) IF_DEBUG_VER(SPI,PRINT_DEBUG(msg, ##args)) +#define INFO_SPI_DUMP(msg, args...) IF_DEBUG_DUMP(SPI,PRINT_DEBUG(msg, ##args)) +#define INFO_SPI_POLL(msg, args...) IF_DEBUG_POLL(SPI,PRINT_DEBUG(msg, ##args)) +#define INFO_UTIL(msg, args...) IF_DEBUG(UTIL,PRINT_DEBUG(msg, ##args)) +#define INFO_UTIL_VER(msg, args...) IF_DEBUG_VER(UTIL,PRINT_DEBUG(msg, ##args)) +#define CM_DPRINTF(msg, args...) IF_DEBUG(CM,PRINT_DEBUG(msg, ##args)) + +extern void dump(char* _buf, uint16_t _count); + +#define _DUMP(BUF, COUNT) do { \ + printk("[%s]: ", __func__); \ + dump((char*)BUF, COUNT); \ + } while (0) + +#ifdef _APP_DEBUG_ +#define DUMP(BUF, COUNT) _DUMP(BUF, COUNT) +#else +#define DUMP(BUF, COUNT) do {} while (0) +#endif +#endif + +#define DUMP_TCP(BUF, COUNT) IF_TCP_DUMP(_DUMP(BUF, COUNT)) +#define DUMP_SPI(BUF, COUNT) IF_SPI_DUMP(_DUMP(BUF, COUNT)) + +#define DUMP_SPI_CMD(BUF) do { \ + if (dumpDebug & INFO_SPI_FLAG) { \ + int i = 0; \ + for (; i < CMD_MAX_LEN; ++i) \ + { \ + printk("0x%x ", BUF[i]); \ + if (BUF[i] == END_CMD) \ + break; \ + } \ + printk("\n"); \ + } \ +}while(0); + diff --git a/libraries/WiFi/extras/wifiHD/src/fw_download.h b/libraries/WiFi/extras/wifiHD/src/fw_download.h new file mode 100644 index 000000000..e36214f76 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/fw_download.h @@ -0,0 +1,38 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef FW_DOWNLOAD_H +#define FW_DOWNLOAD_H + +#include <stdint.h> +#include <stdio.h> + +int fw_download_init(void); +size_t fw_read_cb(void *ctx, const uint8_t** buf, size_t offset, size_t len); +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/fw_download_extflash.c b/libraries/WiFi/extras/wifiHD/src/fw_download_extflash.c new file mode 100644 index 000000000..d679271f2 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/fw_download_extflash.c @@ -0,0 +1,82 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <top_defs.h> +#include <wl_api.h> +#include <fw_download.h> +#include <nvram.h> +#include <printf-stdarg.h> + +int fw_download_init(void) +{ + nvram_init(); + return 0; +} + +#define BUF_SIZE 512 + + +size_t fw_read_cb(void* ctx, + const uint8_t** buf, + size_t offset, + size_t len) +{ + static uint8_t* fw_buf = NULL; + size_t rlen; + /* when firmware download is completed, this function will be + * invoked one additional time with buf set to NULL. we can + * free the firmware buffer at this time since it's no longer + * needed. + */ + if (NULL == buf) { + if (fw_buf) { + free(fw_buf); + fw_buf = NULL; + } + return 0; + } + + /* first call? then initialize flash and allocate a buffer to hold + * firmware data. + */ + if (fw_buf == NULL) { + fw_buf = malloc(BUF_SIZE); + + if (fw_buf == NULL) { + printk("could not allocate firmware buffer\n"); + return 0; + } + } + /* read at most a full buffer */ + rlen = len > BUF_SIZE ? BUF_SIZE : len; + + /* read data and update output parameters */ + nvram_read(offset, fw_buf, rlen); + *buf = fw_buf; + + return rlen; +} diff --git a/libraries/WiFi/extras/wifiHD/src/license.txt b/libraries/WiFi/extras/wifiHD/src/license.txt new file mode 100644 index 000000000..e57439f37 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/license.txt @@ -0,0 +1,42 @@ + Copyright (C) 2009, H&D Wireless AB All rights reserved. + + The license to use this software in whole and in part and to + redistribute it in any form follows with the WiFi HW module from H&D + Wireless and is granted under the following restrictions: + + 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 H&D Wireless AB may not be used to endorse or promote + products derived from this software without specific prior written + permission. + + 4. The software may only be used together with hardware from H&D + Wireless all other use is prohibited. + + 5. The license to use and redistribute the software is granted + together with the purchase of a hardware platform on a one to one + basis + + 6. The binary code may not be reversed engineered or by other means + copied to circumvent this license. + + THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT + SHALL HD WIRELESS AB 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. + + For more information regarding this software license Contact H&D + Wireless AB (support@hd-wireless.se). diff --git a/libraries/WiFi/extras/wifiHD/src/lwip_setup.c b/libraries/WiFi/extras/wifiHD/src/lwip_setup.c new file mode 100644 index 000000000..bfa8c090a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/lwip_setup.c @@ -0,0 +1,145 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +/*! + * \file lwIP setup code + * + * \brief Collects the lwIP setup code that an application has to + * execute in a standalone environment. + * + * \author H&D Wireless AB \n + * + */ + +#include <lwip/init.h> +#include <lwip/dhcp.h> +#include <lwip/tcp.h> +#include <ipv4/lwip/ip_frag.h> +#include <netif/etharp.h> +#include <netif/wlif.h> +#include <timer.h> + +#include "lwip_setup.h" +#include "lwip/dns.h" + + +/** + * + */ +static void +tcp_tmr_cb(void *ctx) +{ + tcp_tmr(); +} + +/** + * + */ +static void +ip_tmr_cb(void *ctx) +{ + ip_reass_tmr(); +} + +/** + * + */ +static void +dns_tmr_cb(void *ctx) +{ + dns_tmr(); +} + +/** + * + */ +static void +etharp_tmr_cb(void *ctx) +{ + etharp_tmr(); +} + + +/** + * + */ +static void +dhcp_fine_tmr_cb(void *ctx) +{ + dhcp_fine_tmr(); +} + +/** + * + */ +static void +dhcp_coarse_tmr_cb(void *ctx) +{ + dhcp_coarse_tmr(); +} + +int start_ip_stack(struct net_cfg *cfg, + struct ip_addr ipaddr, + struct ip_addr netmask, + struct ip_addr gw) { + + if (cfg->dhcp_enabled) { + IP4_ADDR(&gw, 0,0,0,0); + IP4_ADDR(&ipaddr, 0,0,0,0); + IP4_ADDR(&netmask, 0,0,0,0); + } + + /* add wl to lwip interface list and set as default */ + cfg->netif = netif_add(cfg->netif, + &ipaddr, + &netmask, + &gw, + NULL, + wlif_init, /* init */ + ethernet_input /* handles ARP and IP packets */); + + if (cfg->netif == NULL) + return -1; + netif_set_default(cfg->netif); + + /* register lwip timer callbacks for tcp, arp and dhcp protocols */ + timer_sched_timeout_cb(5000, TIMEOUT_PERIODIC, + etharp_tmr_cb, NULL); + timer_sched_timeout_cb(TCP_TMR_INTERVAL, TIMEOUT_PERIODIC, + tcp_tmr_cb, NULL); + timer_sched_timeout_cb(DHCP_FINE_TIMER_MSECS, TIMEOUT_PERIODIC, + dhcp_fine_tmr_cb, NULL); + timer_sched_timeout_cb(DHCP_COARSE_TIMER_MSECS, TIMEOUT_PERIODIC, + dhcp_coarse_tmr_cb, NULL); + timer_sched_timeout_cb(IP_TMR_INTERVAL, TIMEOUT_PERIODIC, + ip_tmr_cb, NULL); + timer_sched_timeout_cb(DNS_TMR_INTERVAL, TIMEOUT_PERIODIC, + dns_tmr_cb, NULL); + + return 1; +} diff --git a/libraries/WiFi/extras/wifiHD/src/lwip_setup.h b/libraries/WiFi/extras/wifiHD/src/lwip_setup.h new file mode 100644 index 000000000..7edf2b579 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/lwip_setup.h @@ -0,0 +1,30 @@ +#ifndef _LWIP_SETUP_H +#define _LWIP_SETUP_H + +#define INIT_IP_CONFIG 0xff +#define STATIC_IP_CONFIG 0 +#define DYNAMIC_IP_CONFIG 1 + +struct net_cfg { + struct netif *netif; /* lwip network interface */ + uint8_t dhcp_enabled; + uint8_t dhcp_running; +}; + +struct ctx_server { + struct net_cfg net_cfg; + uint8_t wl_init_complete; +}; + +/*! Start the IP stack. + * If cfg->netif must have been allocated and lwip_init() + * must have been called before this function is called + * (since the IP stack may have to be polled before this + * function can be called). + */ +int start_ip_stack(struct net_cfg *cfg, + struct ip_addr ipaddr, + struct ip_addr netmask, + struct ip_addr gw); + +#endif /* _LWIP_SETUP_H */ diff --git a/libraries/WiFi/extras/wifiHD/src/lwipopts.h b/libraries/WiFi/extras/wifiHD/src/lwipopts.h new file mode 100644 index 000000000..7b08b8489 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/lwipopts.h @@ -0,0 +1,450 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/** + * @file + * + * lwIP Options Configuration + */ + +/* + * Copyright (c) 2001-2004 Swedish Institute of Computer Science. + * 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 file is part of the lwIP TCP/IP stack. + * + * Author: Adam Dunkels <adam@sics.se> + * + */ +#ifndef __LWIPOPTS_H__ +#define __LWIPOPTS_H__ + +#include "wl_api.h" +#include <board.h> + +#ifndef BOARD +#error "BOARD must be defined" +#endif + +/* + ----------------------------------------------- + ---------- Platform specific locking ---------- + ----------------------------------------------- +*/ + +/** + * NO_SYS==1: Provides VERY minimal functionality. Otherwise, + * use lwIP facilities. + */ +#define NO_SYS 1 + + +/* + ------------------------------------ + ---------- Memory options ---------- + ------------------------------------ +*/ +/** + * MEM_ALIGNMENT: should be set to the alignment of the CPU + * 4 byte alignment -> #define MEM_ALIGNMENT 4 + * 2 byte alignment -> #define MEM_ALIGNMENT 2 + */ +#define MEM_ALIGNMENT 4 + +/** + * MEM_SIZE: the size of the heap memory. If the application will send + * a lot of data that needs to be copied, this should be set high. + */ +#define MEM_SIZE 16000 + + +/* + ------------------------------------------------ + ---------- Internal Memory Pool Sizes ---------- + ------------------------------------------------ +*/ +/** + * MEMP_NUM_PBUF: the number of memp struct pbufs (used for PBUF_ROM and PBUF_REF). + * If the application sends a lot of data out of ROM (or other static memory), + * this should be set high. + */ +#if BOARD == EVK1101 /* Reduced RAM */ + #define MEMP_NUM_PBUF 4 +#else + #define MEMP_NUM_PBUF 30 +#endif +/** + * MEMP_NUM_RAW_PCB: Number of raw connection PCBs + * (requires the LWIP_RAW option) + */ +#define MEMP_NUM_RAW_PCB 4 + +/** + * MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One + * per active UDP "connection". + * (requires the LWIP_UDP option) + */ +#define MEMP_NUM_UDP_PCB 4 + +/** + * MEMP_NUM_TCP_PCB: the number of simulatenously active TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB 4 + +/** + * MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP connections. + * (requires the LWIP_TCP option) + */ +#define MEMP_NUM_TCP_PCB_LISTEN 2 + +/** + * MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP segments. + * (requires the LWIP_TCP option) + */ +#if BOARD == EVK1101 /* Reduced RAM */ + #define MEMP_NUM_TCP_SEG 2 +#else + #define MEMP_NUM_TCP_SEG 32 +#endif + +/** + * MEMP_NUM_ARP_QUEUE: the number of simulateously queued outgoing + * packets (pbufs) that are waiting for an ARP request (to resolve + * their destination address) to finish. + * (requires the ARP_QUEUEING option) + */ +#define MEMP_NUM_ARP_QUEUE 2 + +/** + * MEMP_NUM_SYS_TIMEOUT: the number of simulateously active timeouts. + * (requires NO_SYS==0) + */ +#define MEMP_NUM_SYS_TIMEOUT 0 + +/** + * MEMP_NUM_NETBUF: the number of struct netbufs. + * (only needed if you use the sequential API, like api_lib.c) + */ +#define MEMP_NUM_NETBUF 0 + +/** + * MEMP_NUM_NETCONN: the number of struct netconns. + * (only needed if you use the sequential API, like api_lib.c) + */ +#define MEMP_NUM_NETCONN 0 + +/** + * MEMP_NUM_TCPIP_MSG_API: the number of struct tcpip_msg, which are used + * for callback/timeout API communication. + * (only needed if you use tcpip.c) + */ +#define MEMP_NUM_TCPIP_MSG_API 0 + +/** + * MEMP_NUM_TCPIP_MSG_INPKT: the number of struct tcpip_msg, which are used + * for incoming packets. + * (only needed if you use tcpip.c) + */ +#define MEMP_NUM_TCPIP_MSG_INPKT 0 + +/** + * PBUF_POOL_SIZE: the number of buffers in the pbuf pool. + */ +#if BOARD == EVK1101 /* Reduced RAM */ + #define PBUF_POOL_SIZE 2 +#else + #define PBUF_POOL_SIZE 32 +#endif +/* + --------------------------------- + ---------- ARP options ---------- + --------------------------------- +*/ +/** + * LWIP_ARP==1: Enable ARP functionality. + */ +#define LWIP_ARP 1 + +/* + -------------------------------- + ---------- IP options ---------- + -------------------------------- +*/ +/** + * IP_FORWARD==1: Enables the ability to forward IP packets across network + * interfaces. If you are going to run lwIP on a device with only one network + * interface, define this to 0. + */ +#define IP_FORWARD 0 + +/** + * IP_OPTIONS: Defines the behavior for IP options. + * IP_OPTIONS==0_ALLOWED: All packets with IP options are dropped. + * IP_OPTIONS==1_ALLOWED: IP options are allowed (but not parsed). + */ +#define IP_OPTIONS_ALLOWED 1 + +/** + * IP_REASSEMBLY==1: Reassemble incoming fragmented IP packets. Note that + * this option does not affect outgoing packet sizes, which can be controlled + * via IP_FRAG. + */ +#define IP_REASSEMBLY 1 + +/** + * IP_FRAG==1: Fragment outgoing IP packets if their size exceeds MTU. Note + * that this option does not affect incoming packet sizes, which can be + * controlled via IP_REASSEMBLY. + */ +#define IP_FRAG 1 + +/** + * IP_REASS_MAXAGE: Maximum time (in multiples of IP_TMR_INTERVAL - so seconds, normally) + * a fragmented IP packet waits for all fragments to arrive. If not all fragments arrived + * in this time, the whole packet is discarded. + */ +#define IP_REASS_MAXAGE 3 + +/** + * IP_REASS_MAX_PBUFS: Total maximum amount of pbufs waiting to be reassembled. + * Since the received pbufs are enqueued, be sure to configure + * PBUF_POOL_SIZE > IP_REASS_MAX_PBUFS so that the stack is still able to receive + * packets even if the maximum amount of fragments is enqueued for reassembly! + */ +#if BOARD == EVK1101 /* Reduced RAM */ + #define IP_REASS_MAX_PBUFS PBUF_POOL_SIZE + #define MEMP_NUM_REASSDATA PBUF_POOL_SIZE-1 +#else + #define IP_REASS_MAX_PBUFS 10 +#endif + +/** + * IP_FRAG_USES_STATIC_BUF==1: Use a static MTU-sized buffer for IP + * fragmentation. Otherwise pbufs are allocated and reference the original + * packet data to be fragmented. + */ +#define IP_FRAG_USES_STATIC_BUF 0 + +/** + * IP_DEFAULT_TTL: Default value for Time-To-Live used by transport layers. + */ +#define IP_DEFAULT_TTL 255 + +/* + ---------------------------------- + ---------- ICMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_ICMP==1: Enable ICMP module inside the IP stack. + * Be careful, disable that make your product non-compliant to RFC1122 + */ +#define LWIP_ICMP 1 + +/** + * ICMP_TTL: Default value for Time-To-Live used by ICMP packets. + */ +#define ICMP_TTL (IP_DEFAULT_TTL) + +/* + --------------------------------- + ---------- RAW options ---------- + --------------------------------- +*/ +/** + * LWIP_RAW==1: Enable application layer to hook into the IP layer itself. + */ +#define LWIP_RAW 1 + +/* + ---------------------------------- + ---------- DHCP options ---------- + ---------------------------------- +*/ +/** + * LWIP_DHCP==1: Enable DHCP module. + */ +#define LWIP_DHCP 1 + +/* + ------------------------------------ + ---------- AUTOIP options ---------- + ------------------------------------ +*/ +/** + * LWIP_AUTOIP==1: Enable AUTOIP module. + */ +#define LWIP_AUTOIP 0 + +/* + ---------------------------------- + ---------- SNMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_SNMP==1: Turn on SNMP module. UDP must be available for SNMP + * transport. + */ +#define LWIP_SNMP 0 +#define SNMP_PRIVATE_MIB 0 + +/* + ---------------------------------- + ---------- IGMP options ---------- + ---------------------------------- +*/ +/** + * LWIP_IGMP==1: Turn on IGMP module. + */ +#define LWIP_IGMP 0 + +/* + ---------------------------------- + ---------- DNS options ----------- + ---------------------------------- +*/ +/** + * LWIP_DNS==1: Turn on DNS module. UDP must be available for DNS + * transport. + */ +#define LWIP_DNS 1 + +/* + --------------------------------- + ---------- UDP options ---------- + --------------------------------- +*/ +/** + * LWIP_UDP==1: Turn on UDP. + */ +#define LWIP_UDP 1 + +/** + * LWIP_UDPLITE==1: Turn on UDP-Lite. (Requires LWIP_UDP) + */ +#define LWIP_UDPLITE 0 + +/** + * UDP_TTL: Default Time-To-Live value. + */ +#define UDP_TTL (IP_DEFAULT_TTL) + +/* + --------------------------------- + ---------- TCP options ---------- + --------------------------------- +*/ +/** + * LWIP_TCP==1: Turn on TCP. + */ +#define LWIP_TCP 1 + +/* + ---------------------------------- + ---------- Pbuf options ---------- + ---------------------------------- +*/ +/** + * PBUF_LINK_HLEN: the number of bytes that should be allocated for a + * link level header. The default is 14, the standard value for + * Ethernet. + */ +#define PBUF_LINK_HLEN (14 + ETH_PAD_SIZE) + +/* + ------------------------------------ + ---------- LOOPIF options ---------- + ------------------------------------ +*/ +/** + * LWIP_HAVE_LOOPIF==1: Support loop interface (127.0.0.1) and loopif.c + */ +#define LWIP_HAVE_LOOPIF 1 +#define LWIP_LOOPIF_MULTITHREADING 0 + +/* + ---------------------------------------------- + ---------- Sequential layer options ---------- + ---------------------------------------------- +*/ + +/** + * LWIP_NETCONN==1: Enable Netconn API (require to use api_lib.c) + */ +#define LWIP_NETCONN 0 + +/* + ------------------------------------ + ---------- Socket options ---------- + ------------------------------------ +*/ +/** + * LWIP_SOCKET==1: Enable Socket API (require to use sockets.c) + */ +#define LWIP_SOCKET 0 + +/* + ---------------------------------------- + ---------- Statistics options ---------- + ---------------------------------------- +*/ +/** + * LWIP_STATS==1: Enable statistics collection in lwip_stats. + */ +#define LWIP_STATS 1 +#define LINK_STATS 1 + +/* Misc */ +#define LWIP_NETIF_LINK_CALLBACK 1 +#define LWIP_NETIF_STATUS_CALLBACK 1 +#define LWIP_TIMEVAL_PRIVATE 0 + +#undef DHCP_DOES_ARP_CHECK + +#if 0 +#define LWIP_DEBUG 1 +//#define NETIF_DEBUG LWIP_DBG_ON +//#define DHCP_DEBUG LWIP_DBG_ON +//#define ICMP_DEBUG LWIP_DBG_ON +//#define TCP_DEBUG LWIP_DBG_ON +//#define TCP_RTO_DEBUG LWIP_DBG_ON +//#define IP_DEBUG LWIP_DBG_ON +//#define TCP_CWND_DEBUG LWIP_DBG_ON +//#define ETHARP_DEBUG LWIP_DBG_ON +#define PBUF_DEBUG LWIP_DBG_ON +//#define TCP_INPUT_DEBUG LWIP_DBG_ON +//#define TCP_OUTPUT_DEBUG LWIP_DBG_ON +#endif + +#define ETH_PAD_SIZE WL_HEADER_SIZE /* size of wifiengine header */ +#define MEM_LIBC_MALLOC 1 + +#define TCP_MSS 512 +#if BOARD == EVK1101 /* Reduced RAM */ + #define TCP_SND_BUF (1460*1) /* MTU (1500) - IP - TCP hdrs == 1460 */ +#else + #define TCP_SND_BUF 4096 +#endif +#endif /* __LWIPOPTS_H__ */ diff --git a/libraries/WiFi/extras/wifiHD/src/main.c b/libraries/WiFi/extras/wifiHD/src/main.c new file mode 100644 index 000000000..fffb34e48 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/main.c @@ -0,0 +1,454 @@ +/* + * main.c + * + * Created on: May 27, 2010 + * Author: mlf by Metodo2 srl + */ + +//#define _TEST_SPI_ + +#include <compiler.h> +#include "board.h" +#include "gpio.h" + +#include <stdint.h> +#include "wl_api.h" +#include "wl_cm.h" + +#include "lwip/init.h" +#include "lwip/dhcp.h" +#include "lwip/dns.h" +#include "lwip/tcp.h" +#include "netif/etharp.h" +#include "netif/wlif.h" + +#include "board_init.h" +#include "trace.h" + +#include "timer.h" +#include "util.h" +#include "cmd_wl.h" +#include "ping.h" +#include "ard_tcp.h" +#include "spi.h" +#include "ard_spi.h" +#include "delay.h" +#include "tc.h" +#include "debug.h" +#include "ard_utils.h" +#include <lwip_setup.h> + +/* FIRMWARE version */ +const char* fwVersion = "1.1.0"; + +#if BOARD == ARDUINO +#if !defined(DATAFLASH) +#include "wl_fw.h" + +int fw_download_init(void) { return 0;} +void fw_download_cb(void* ctx, uint8_t** buf, uint32_t* len) +{ + //printk("Fw download not available!\n"); + /* remember accross different calls */ + static uint8_t* _fw_buf = (uint8_t*)&fw_buf[0]; + static uint32_t offset = 0; + + /* when firmware download is completed, this function will be invoked + * on additional time with the input value of len set to 0. we can free + * the firmware buffer at this time since it's no longer needed. + */ + if (*len == 0) { + return; + } + + /* decide how much to read. we know *len bytes remains, but we only have + * room for SECTOR_SIEZ bytes in our buffer (fw_buf) + */ + uint32_t fw_len = *len; + + *buf = (_fw_buf+offset); + *len = fw_len; + + /* we need to know where to start reading upon next call */ + offset += fw_len; + +} +#else +#include "fw_download.h" +#endif +#endif + +bool ifStatus = false; +bool scanNetCompleted = false; + +static bool initSpiComplete = false; + +// variable used as enable flag for debug prints +DEFINE_DEBUG_VARIABLES(); + +/** + * + */ +static void +wl_cm_scan_cb(void* ctx) +{ + INFO_INIT("Scan Completed!\n"); + scanNetCompleted=true; +} + +/** + * + */ +static void +wl_cm_conn_cb(struct wl_network_t* net, void* ctx) +{ + struct ctx_server* hs = ctx; + + LINK_LED_ON(); + + INFO_INIT("Connection cb...\n"); + + printk("link up, connected to \"%s\"\n", ssid2str(&net->ssid)); + if ( hs->net_cfg.dhcp_enabled == DYNAMIC_IP_CONFIG ) { + INFO_INIT("Start DHCP...\n"); + printk("requesting dhcp ... "); + int8_t result = dhcp_start(hs->net_cfg.netif); + printk((result==ERR_OK)?"OK\n":"FAILED\n"); + hs->net_cfg.dhcp_running = 1; + } + else { + netif_set_up(hs->net_cfg.netif); + } + + INFO_INIT("Start DNS...\n"); + dns_init(); +} + + +/** + * + */ +static void +wl_cm_disconn_cb(void* ctx) +{ + struct ctx_server* hs = ctx; + + LINK_LED_OFF(); + INFO_INIT("Disconnection cb...\n"); + + if (hs->net_cfg.dhcp_running) { + printk("link down, release dhcp\n"); + dhcp_release(hs->net_cfg.netif); + dhcp_stop(hs->net_cfg.netif); + hs->net_cfg.dhcp_running = 0; + } else { + printk("link down\n"); + netif_set_down(hs->net_cfg.netif); + } + + set_result_cmd(WL_FAILURE); +} + +#if 0 +static void wl_cm_err_cb(void* ctx) +{ + int err = *(int*)ctx; + WARN("Error: %d\n", err); + set_result_cmd(err); +} +#endif + +/** + * + */ +static void +ip_status_cb(struct netif* netif) +{ + INFO_INIT("IP status cb...\n"); + if (netif_is_up(netif)) { + set_result_cmd(WL_SUCCESS); + printk("bound to %s\n", ip2str(netif->ip_addr)); + ifStatus = true; + }else{ + ifStatus = false; + closeConnections(); + WARN("Interface not up!\n"); + } +} + + +/** + * + */ +void +led_init(void) +{ + gpio_enable_gpio_pin(LED0_GPIO); + gpio_enable_gpio_pin(LED1_GPIO); + gpio_enable_gpio_pin(LED2_GPIO); + LINK_LED_OFF(); + ERROR_LED_OFF(); + DATA_LED_OFF(); +} + + +void tc_init(void) +{ + // The timer/counter instance and channel number are used in several functions. + // It's defined as local variable for ease-of-use causes and readability. + volatile avr32_tc_t *tc = WIFI_TC; + + // Options for waveform genration. + tc_waveform_opt_t waveform_opt = + { + .channel = WIFI_TC_CHANNEL_ID, // Channel selection. + + .bswtrg = TC_EVT_EFFECT_NOOP, // Software trigger effect on TIOB. + .beevt = TC_EVT_EFFECT_NOOP, // External event effect on TIOB. + .bcpc = TC_EVT_EFFECT_NOOP, // RC compare effect on TIOB. + .bcpb = TC_EVT_EFFECT_NOOP, // RB compare effect on TIOB. + + .aswtrg = TC_EVT_EFFECT_NOOP, // Software trigger effect on TIOA. + .aeevt = TC_EVT_EFFECT_NOOP, // External event effect on TIOA. + .acpc = TC_EVT_EFFECT_TOGGLE, // RC compare effect on TIOA: toggle. + .acpa = TC_EVT_EFFECT_TOGGLE, // RA compare effect on TIOA: toggle (other possibilities are none, set and clear). + + .wavsel = TC_WAVEFORM_SEL_UP_MODE_RC_TRIGGER,// Waveform selection: Up mode with automatic trigger(reset) on RC compare. + .enetrg = FALSE, // External event trigger enable. + .eevt = TC_EXT_EVENT_SEL_TIOB_INPUT, // External event selection. + .eevtedg = TC_SEL_NO_EDGE, // External event edge selection. + .cpcdis = FALSE, // Counter disable when RC compare. + .cpcstop = FALSE, // Counter clock stopped with RC compare. + + .burst = TC_BURST_NOT_GATED, // Burst signal selection. + .clki = TC_CLOCK_RISING_EDGE, // Clock inversion. + .tcclks = TC_CLOCK_SOURCE_TC2 // Internal source clock 3, connected to fPBA / 2. + }; + + // Assign I/O to timer/counter channel pin & function. + gpio_enable_module_pin(WIFI_TC_CHANNEL_PIN, WIFI_TC_CHANNEL_FUNCTION); + + // Initialize the timer/counter. + tc_init_waveform(tc, &waveform_opt); // Initialize the timer/counter waveform. + + // Set the compare triggers. + tc_write_ra(tc, WIFI_TC_CHANNEL_ID, 0x01A4); // Set RA value. + tc_write_rc(tc, WIFI_TC_CHANNEL_ID, 0x0348); // Set RC value. + + // Start the timer/counter. + tc_start(tc, WIFI_TC_CHANNEL_ID); + +} + +/** + * + */ +void +poll(struct ctx_server* hs) +{ + /* this will trigger any scheduled timer callbacks */ + timer_poll(); + + /* handle console input */ + console_poll(); + + /* wl api 'tick' */ + wl_tick(timer_get_ms()); + + /* lwip driver poll */ + wlif_poll(hs->net_cfg.netif); + + if (initSpiComplete) spi_poll(hs->net_cfg.netif); + +#ifdef WITH_GUI + gui_exec(timer_get_ms()); +#endif +} + +void initShell(void* ctx) +{ + /* initialize shell */ + INFO_INIT("Shell init...\n"); + console_init(); + console_add_cmd("scan", cmd_scan, NULL); + console_add_cmd("connect", cmd_connect, NULL); + console_add_cmd("setkey", cmd_setkey, NULL); + console_add_cmd("status", cmd_status, ctx); + console_add_cmd("debug", cmd_debug, NULL); + console_add_cmd("dumpBuf", cmd_dumpBuf, NULL); + console_add_cmd("ipconfig", cmd_set_ip, ctx); +#ifdef ADD_CMDS + console_add_cmd("powersave", cmd_power, NULL); + console_add_cmd("psconf", cmd_psconf, NULL); +#endif +#ifdef PING_CMD + console_add_cmd("ping", cmd_ping, NULL); +#endif + console_add_cmd("ttcp", cmd_ttcp, NULL); +#ifdef WITH_WPA + console_add_cmd("wpass", cmd_setpass, NULL); + console_add_cmd("dpass", cmd_delpass, NULL); +#endif +#ifdef _SPI_STATS_ + console_add_cmd("spiStat", cmd_statSpi, NULL); + console_add_cmd("resetSpiStat", cmd_resetStatSpi, NULL); +#endif +#ifdef _DNS_CMD_ + console_add_cmd("getHost", cmd_gethostbyname, NULL); + console_add_cmd("setDNS", cmd_setDnsServer, NULL); +#endif + console_add_cmd("startSrv", cmd_startSrv, NULL); + console_add_cmd("startCli", cmd_startCli, NULL); + console_add_cmd("sendUdp", cmd_sendUdpData, NULL); + +} + +/** + * + */ +void +wl_init_complete_cb(void* ctx) +{ + struct ctx_server *hs = ctx; + struct ip_addr ipaddr, netmask, gw; + wl_err_t wl_status; + + if (hs->net_cfg.dhcp_enabled == INIT_IP_CONFIG) + { + IP4_ADDR(&gw, 0,0,0,0); + IP4_ADDR(&ipaddr, 0,0,0,0); + IP4_ADDR(&netmask, 0,0,0,0); + + /* default is dhcp enabled */ + hs->net_cfg.dhcp_enabled = DYNAMIC_IP_CONFIG; + } + + start_ip_stack(&hs->net_cfg, + ipaddr, + netmask, + gw); + netif_set_status_callback(hs->net_cfg.netif, ip_status_cb); + + INFO_INIT("Starting CM...\n"); + /* start connection manager */ + wl_status = wl_cm_init(wl_cm_scan_cb, wl_cm_conn_cb, wl_cm_disconn_cb, hs); + ASSERT(wl_status == WL_SUCCESS, "failed to init wl conn mgr"); + wl_cm_start(); + + wl_scan(); + + if (initSpi(hs)){ + WARN("Spi not initialized\n"); + }else + { + initSpiComplete = true; + AVAIL_FOR_SPI(); + } + + hs->wl_init_complete = 1; +} + +void startup_init(void) +{ + INIT_SIGNAL_FOR_SPI(); + BUSY_FOR_SPI(); + + // if DEBUG enabled use DEB_PIN_GPIO for debug purposes + DEB_PIN_ENA(); + DEB_PIN_ENA(2); + DEB_PIN_UP(); + DEB_PIN_UP(2); +} + +const char timestamp[] = __TIMESTAMP__; + +/** + * + */ +int +main(void) +{ + wl_err_t wl_status; + int status; + struct ctx_server *hs; + enum wl_host_attention_mode mode; + + startup_init(); + + board_init(); + + led_init(); + + tc_init(); + + delay_init(FOSC0); + +#ifdef _TEST_SPI_ + for (;;) + { + /* handle console input */ + + console_poll(); + + spi_poll(NULL); + + } +#else + printk("Arduino Wifi Startup... [%s]\n", timestamp); + + size_t size_ctx_server = sizeof(struct ctx_server); + hs = calloc(1, size_ctx_server); + ASSERT(hs, "out of memory"); + + size_t size_netif = sizeof(struct netif); + hs->net_cfg.netif = calloc(1, size_netif); + ASSERT(hs->net_cfg.netif, "out of memory"); + hs->net_cfg.dhcp_enabled = INIT_IP_CONFIG; + + INFO_INIT("hs:%p size:0x%x netif:%p size:0x%x\n", hs, size_ctx_server, + hs->net_cfg.netif, size_netif); + initShell(hs); + timer_init(NULL, NULL); + lwip_init(); + + status = fw_download_init(); + ASSERT(status == 0, "failed to prepare for firmware download\n"); + + wl_status = wl_transport_init(fw_read_cb, hs, &mode); + if (wl_status != WL_SUCCESS) + goto err; + INFO_INIT("Mode: 0x%x\n", mode); + wl_status = wl_init(hs, wl_init_complete_cb, mode); + if (wl_status != WL_SUCCESS) + goto err; + + /* start main loop */ + for (;;) + poll(hs); + + +err: + /* show error message on console and display if wlan initialization fails */ + +#define WL_CARD_FAILURE_STR "Could not detect wl device, aborting\n" +#define WL_FIRMWARE_INVALID_STR "Invalid firmware data, aborting\n" +#define WL_OTHER_FAILURE_STR "Failed to start wl initialization\n" + + switch (wl_status) { + case WL_CARD_FAILURE: + printk(WL_CARD_FAILURE_STR); + break; + + case WL_FIRMWARE_INVALID: + printk(WL_FIRMWARE_INVALID_STR); + break; + + default: + printk(WL_OTHER_FAILURE_STR); + break; + } + for (;;) { + timer_poll(); + } +#endif +} diff --git a/libraries/WiFi/extras/wifiHD/src/nvram.c b/libraries/WiFi/extras/wifiHD/src/nvram.c new file mode 100644 index 000000000..2c61c5f1f --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/nvram.c @@ -0,0 +1,153 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <string.h> + +#include "compiler.h" +#include "preprocessor.h" +#include "board.h" +#include "power_clocks_lib.h" +#include "gpio.h" +#include "spi.h" +#include "conf_at45dbx.h" +#include "at45dbx.h" +#include <board_init.h> +#include <nvram.h> + + +static struct nvram { + uint8_t read; + void *data; + uint32_t len; + uint16_t off; +} PRIV; + +int nvram_init(void) +{ + spi_options_t spiOptions = { + .reg = AT45DBX_SPI_FIRST_NPCS, + .baudrate = AT45DBX_SPI_MASTER_SPEED, + .bits = AT45DBX_SPI_BITS, + .spck_delay = 0, + .trans_delay = 0, + .stay_act = 1, + .spi_mode = 0, + .modfdis = 1 + }; + + at45dbx_init(spiOptions, FPBA_HZ); + return 0; +} + + +/** + * Invoked by at45dbx driver + * + */ +void at45dbx_read_multiple_sector_callback(const void *psector) +{ + struct nvram *priv = &PRIV; + const uint8_t *buf = psector; + + if (!priv->read) + return; + + memcpy(priv->data, buf + priv->off, priv->len); +} + + +/** + * Invoked by at45dbx driver + * + */ +void at45dbx_write_multiple_sector_callback(void *psector) +{ + struct nvram *priv = &PRIV; + uint8_t *buf = psector; + memcpy(buf + priv->off, priv->data, priv->len); +} + + +/** + * Write/read any number bytes into any offset of nor flash by taking care + * of cases where the length is not aligned to the sector size or where + * the addr is not aligned to the sector offsets. + * + */ +static int nvram_rw(uint32_t addr, void *data, uint16_t len, int write) +{ + struct nvram *priv = &PRIV; + priv->read = write ? 0 : 1; + + while (len) { + uint32_t sector = addr / AT45DBX_SECTOR_SIZE; + priv->data = data; + priv->off = addr % AT45DBX_SECTOR_SIZE; + priv->len = AT45DBX_SECTOR_SIZE; + + if (len < AT45DBX_SECTOR_SIZE) + priv->len = len; + + if (priv->len > AT45DBX_SECTOR_SIZE - priv->off) + priv->len = AT45DBX_SECTOR_SIZE - priv->off; + + at45dbx_read_open(sector); + at45dbx_read_multiple_sector(1); + at45dbx_read_close(); + + if (write) { + at45dbx_write_open(sector); + at45dbx_write_multiple_sector(1); + at45dbx_write_close(); + } + + data += priv->len; + len -= priv->len; + addr += priv->len; + } + + return 0; +} + +/** + * Write any number bytes into any offset of nor flash. + * + */ +int nvram_write(uint32_t addr, const void *data, uint32_t len) +{ + return nvram_rw(addr, (void *) data, len, 1); +} + + +/** + * Read any number bytes into any offset of nor flash. + * + */ +int nvram_read(uint32_t addr, void *data, uint32_t len) +{ + return nvram_rw(addr, data, len, 0); +} diff --git a/libraries/WiFi/extras/wifiHD/src/nvram.h b/libraries/WiFi/extras/wifiHD/src/nvram.h new file mode 100644 index 000000000..888274987 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/nvram.h @@ -0,0 +1,10 @@ +#ifndef NVRAM_H +#define NVRAM_H + +#include <stdint.h> + +int nvram_init(void); +int nvram_read(uint32_t addr, void *data, uint32_t len); +int nvram_write(uint32_t addr, const void *data, uint32_t len); + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/owl_os.c b/libraries/WiFi/extras/wifiHD/src/owl_os.c new file mode 100644 index 000000000..d17d8cec7 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/owl_os.c @@ -0,0 +1,140 @@ +#include <stdlib.h> +#include <string.h> +#include <stdarg.h> +#include <stdio.h> + +#include <wl_os.h> + +void *owl_os_alloc(size_t size) +{ + return malloc(size); +} + +void *owl_os_realloc(void *ptr, size_t size) +{ + return realloc(ptr, size); +} + +void owl_os_free(void *p) +{ + free(p); +} + +void *owl_os_memcpy(void *dst, const void *src, size_t n) +{ + return memcpy(dst, src, n); +} + +void *owl_os_memset(void *s, int c, size_t n) +{ + return memset(s, c, n); +} + +void *owl_os_memmove(void *dst, const void *src, size_t n) +{ + return memmove(dst, src, n); +} + +size_t owl_os_strlen(char *s) +{ + return strlen(s); +} + +char *owl_os_strncpy(char *dst, const char *src, size_t n) +{ + return strncpy(dst, src, n); +} + +int owl_os_strncmp(const char *s1, const char *s2, size_t n) +{ + return strncmp(s1, s2, n); +} + +int owl_os_strcmp(const char *s1, const char *s2) +{ + return strcmp(s1, s2); +} + +char *owl_os_strcpy(char *dst, const char *src) +{ + return strcpy(dst, src); +} + +char *owl_os_strdup(const char *s) +{ + return strdup(s); +} + +char *owl_os_strndup(const char *s, size_t n) +{ + return strndup(s, n); +} + +int owl_os_memcmp(const void *s1, const void *s2, size_t n) +{ + return memcmp(s1, s2, n); +} + +long int owl_os_strtol(const char *nptr, char **endptr, int base) +{ + return strtol(nptr, endptr, base); +} + +char *owl_os_strchr(const char *s, int c) +{ + return strchr(s, c); +} + +char *owl_os_strrchr(const char *s, int c) +{ + return strrchr(s, c); +} + +int owl_os_strcasecmp(const char *s1, const char *s2) +{ + return strcasecmp(s1, s2); +} + +char *owl_os_strstr(const char *haystack, const char *needle) +{ + return strstr(haystack, needle); +} + +int owl_os_snprintf(char *str, size_t size, const char *format, ...) +{ + int ret; + va_list ap; + va_start(ap, format); + ret = vsniprintf(str, size, format, ap); + va_end(ap); + return ret; +} + +/* for debugging only, never called if wl_api was built without debug */ +#ifdef CONFIG_OWL +#include "owl_env.h" +int owl_os_printf(const char *fmt, ...) +{ + char *str = NULL; + va_list args; + int len; + char *iter; + + va_start(args, fmt); + + if ((str = malloc(160)) == NULL) + return -1; + + if ((len = vsniprintf(str, 160, fmt, args)) < 0) { + free(str); + return -1; + } + + iter = str; + while (*iter) + owl_putc(*iter++); + + free(str); + return len; +} +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/ping.c b/libraries/WiFi/extras/wifiHD/src/ping.c new file mode 100644 index 000000000..aba97db04 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ping.c @@ -0,0 +1,340 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2003 Swedish Institute of Computer Science. + * 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 file is derived from a part of the lwIP TCP/IP stack. + * + */ +#ifdef PING_CMD +#include "lwip/opt.h" + +#include "lwip/mem.h" +#include "lwip/raw.h" +#include "lwip/icmp.h" +#include "lwip/netif.h" +#include "lwip/sys.h" +#include "lwip/sockets.h" +#include "lwip/inet.h" +#include "lwip/inet_chksum.h" + +#include "ping.h" +#include "timer.h" +#include "util.h" + +#include "getopt.h" + +#define PING_ID 0xAFAF + +struct ping_info_t { + struct ip_addr destination; + uint32_t deadline; /* -w (in seconds) */ + uint32_t interval; /* -i (in ms) */ + uint32_t timeout; /* ms */ + uint32_t data_size; /* -s */ + uint32_t count; /* -c, 0 means continous ping */ + uint32_t size; + uint32_t first_tx_tm; + uint32_t last_tx_tm; + uint32_t last_rx_tm; + uint32_t num_tx; + uint32_t num_rx; + uint32_t flags; + uint16_t seq_num; + Bool quiet; /* -q */ + ping_complete_cb_t complete_cb; + void *ctx; +#define PING_REPLY (1 << 0) +}; + +static struct ping_info_t INFO; + +/** Prepare a echo ICMP request */ +static void ping_prepare_echo(struct icmp_echo_hdr *iecho, + struct ping_info_t* ping_info) +{ + int i; + + ICMPH_TYPE_SET(iecho,ICMP_ECHO); + ICMPH_CODE_SET(iecho, 0); + iecho->chksum = 0; + iecho->id = PING_ID; + iecho->seqno = htons(++ping_info->seq_num); + iecho->chksum = 0; + + /* fill the additional data buffer with some data */ + for(i = 0; i < ping_info->data_size; i++) { + ((char*)iecho)[sizeof(struct icmp_echo_hdr) + i] = i; + } + + iecho->chksum = inet_chksum(iecho, ping_info->size); +} + +/* Ping using the raw ip */ +static u8_t ping_recv(void *arg, struct raw_pcb *pcb, struct pbuf *p, + struct ip_addr *addr) +{ + struct icmp_echo_hdr *iecho; + struct ip_hdr *ip = p->payload; + struct ping_info_t* ping_info = (struct ping_info_t*) arg; + uint32_t us; + + if (pbuf_header( p, -PBUF_IP_HLEN)==0) { + iecho = p->payload; + + if ((iecho->id == PING_ID) && + (iecho->seqno == htons(ping_info->seq_num))) { + ping_info->last_rx_tm = timer_get_ms(); + ping_info->num_rx++; + us = 1000 * + (ping_info->last_rx_tm - ping_info->last_tx_tm); + + if (!ping_info->quiet) + printk("%d bytes from %s: icmp_seq=%d ttl=%d " \ + "time=%d.%03d ms\n", + p->tot_len, ip2str(ip->src), + iecho->seqno, + IPH_TTL(ip), + us / 1000, us % 1000); + + /* do some ping result processing */ + ping_info->flags |= PING_REPLY; + } + } + + pbuf_free(p); + return 1; /* eat the event */ +} + +static void ping_send(struct raw_pcb *raw, struct ping_info_t* ping_info) +{ + struct pbuf *p; + struct icmp_echo_hdr *iecho; + + if (!(p = pbuf_alloc(PBUF_IP, ping_info->size, PBUF_RAM))) { + return; + } + if ((p->len == p->tot_len) && (p->next == NULL)) { + iecho = p->payload; + + ping_prepare_echo(iecho, ping_info); + raw_sendto(raw, p, &ping_info->destination); + + if (!ping_info->first_tx_tm) + ping_info->first_tx_tm = timer_get_ms(); + ping_info->last_tx_tm = timer_get_ms(); + ping_info->num_tx++; + } + pbuf_free(p); +} + +void ping_set_callback(ping_complete_cb_t cb, void *ctx) { + INFO.complete_cb = cb; + INFO.ctx = ctx; +} + +void ping_stop(uint32_t *tx_cnt, uint32_t *rx_cnt) { + struct ping_info_t *ping_info = &INFO; + + *tx_cnt = ping_info->num_tx; + *rx_cnt = ping_info->num_rx; + ping_info->count = ping_info->num_tx; + if ( 0 == ping_info->count ) { + ping_info->count = 1; + } +} + +static int init_ping_info(int argc, char* argv[], struct ping_info_t* ping_info) +{ + int c; + ping_complete_cb_t cb; + void *ctx; + + cb = ping_info->complete_cb; + ctx = ping_info->ctx; + memset(ping_info, 0, sizeof(struct ping_info_t)); + ping_info->complete_cb = cb; + ping_info->ctx = ctx; + + ping_info->deadline = 0; + ping_info->interval = 1000; + ping_info->timeout = 3000; + ping_info->data_size = 32; + ping_info->count = 3; + ping_info->destination = + netif_default ? netif_default->gw : ip_addr_any; + + optind = 1; + while ((c = getopt(argc, argv, "c:i:s:w:q")) != -1) { + switch (c) { + case 'c': + ping_info->count = atoi(optarg); + break; + + case 'i': + ping_info->interval = atoi(optarg); + break; + + case 's': + ping_info->data_size = atoi(optarg); + break; + + case 'q': + ping_info->quiet = TRUE; + break; + + case 'w': + ping_info->deadline = atoi(optarg); + break; + } + } + + ping_info->size = sizeof(struct icmp_echo_hdr) + ping_info->data_size; + + if (optind >= argc) + return -1; + + ping_info->destination = str2ip(argv[optind]); + if (!ping_info->destination.addr) + return -1; + + + ping_info->last_rx_tm = timer_get_ms(); + + return 0; +} + +static void print_stats(struct ping_info_t* ping_info) +{ + printk("\n--- %s ping statistics ---\n", + ip2str(ping_info->destination)); + printk("%d packets transmitted, %d received, %d%% packet loss, "\ + "time %dms\n\n", + ping_info->num_tx, ping_info->num_rx, + 100 * (ping_info->num_tx - ping_info->num_rx) / + ping_info->num_tx, + timer_get_ms() - ping_info->first_tx_tm); +} + +static void ping_finalize(struct ping_info_t* ping_info) { + print_stats(ping_info); + if (ping_info->complete_cb) { + ping_info->complete_cb(ping_info->num_tx, ping_info->num_rx, ping_info->ctx); + } +} + +cmd_state_t cmd_ping(int argc, char* argv[], void* ctx) +{ + static enum { + INIT, + PING, + WAIT_REPLY + } state = INIT; + + struct ping_info_t *ping_info = &INFO; + static struct raw_pcb *pcb; + + switch (state) { + case INIT: + if (init_ping_info(argc, argv, ping_info) != 0) { + printk("Usage: ping [-c count] [-i interval] " \ + "[-s packetsize]\n " \ + "[-w deadline] [-q] destination\n"); + return CMD_DONE; + } + + if (!(pcb = raw_new(IP_PROTO_ICMP))) { + printk("could not allocate pcb\n"); + state = INIT; + return CMD_DONE; + } + raw_recv(pcb, ping_recv, ping_info); + raw_bind(pcb, IP_ADDR_ANY); + + printk("PING %s %d(%d) bytes of data\n", + ip2str(ping_info->destination), + ping_info->data_size, + ping_info->size); + state = PING; + /* fall through */ + + case PING: + if (!netif_is_up(netif_default)) { + printk("netif is down\n"); + raw_remove(pcb); + state = INIT; + return CMD_DONE; + } + + if (ping_info->count && ping_info->num_tx == ping_info->count) { + ping_finalize(ping_info); + raw_remove(pcb); + state = INIT; + return CMD_DONE; + } + + + if (timer_get_ms() < ping_info->last_rx_tm + ping_info->interval) { + return CMD_INPROGRESS; + } + ping_send(pcb, ping_info); + + state = WAIT_REPLY; + return CMD_INPROGRESS; + + case WAIT_REPLY: + if (ping_info->flags & PING_REPLY) { + ping_info->flags &= (~PING_REPLY); + state = PING; + return CMD_INPROGRESS; + } + + if (timer_get_ms() > + ping_info->last_tx_tm + ping_info->timeout) { + if (!ping_info->quiet) + printk("timeout from %s\n", + ip2str(ping_info->destination)); + state = PING; + return CMD_INPROGRESS; + } + + if (ping_info->deadline && + timer_get_ms() > + ping_info->first_tx_tm + ping_info->deadline * 1000) { + ping_finalize(ping_info); + raw_remove(pcb); + state = INIT; + return CMD_DONE; + } + + return CMD_INPROGRESS; + } + + /* unreachable */ + Assert(0); + return CMD_DONE; +} +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/ping.h b/libraries/WiFi/extras/wifiHD/src/ping.h new file mode 100644 index 000000000..47d409d74 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/ping.h @@ -0,0 +1,45 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* + * Copyright (c) 2001-2003 Swedish Institute of Computer Science. + * 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 file is derived from a part of the lwIP TCP/IP stack. + * + */ +#ifndef PING_H +#define PING_H + +#include "console.h" + +typedef void (*ping_complete_cb_t)(uint32_t tx_pkt_cnt, uint32_t rx_pkt_cnt, void *ctx); + +void ping_set_callback(ping_complete_cb_t cb, void *ctx); + +void ping_stop(uint32_t *tx_cnt, uint32_t *rx_cnt); + +cmd_state_t cmd_ping(int argc, char* argv[], void* ctx); + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/printf-stdarg.c b/libraries/WiFi/extras/wifiHD/src/printf-stdarg.c new file mode 100644 index 000000000..92eb21721 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/printf-stdarg.c @@ -0,0 +1,323 @@ +/* This source file is part of the ATMEL AVR32-SoftwareFramework-AT32UC3A-1.4.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief sprintf functions to replace newlib for AVR32 UC3. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (C) 2006-2008, Atmel Corporation 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 ATMEL may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +/* + Copyright 2001, 2002 Georges Menie (www.menie.org) + stdarg version contributed by Christian Ettinger + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2 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 Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +/* + putchar is the only external dependency for this file, + if you have a working putchar, leave it commented out. + If not, uncomment the define below and + replace outbyte(c) by your own function call. + +*/ + + +#include <stdarg.h> + +static void printchar(char **str, int c) +{ + extern int board_putchar(char c); + + if (str) { + **str = c; + ++(*str); + } + else (void) board_putchar(c); +} + +#define PAD_RIGHT 1 +#define PAD_ZERO 2 + +static int prints(char **out, const char *string, int width, int pad) +{ + register int pc = 0, padchar = ' '; + + if (width > 0) { + register int len = 0; + register const char *ptr; + for (ptr = string; *ptr; ++ptr) ++len; + if (len >= width) width = 0; + else width -= len; + if (pad & PAD_ZERO) padchar = '0'; + } + if (!(pad & PAD_RIGHT)) { + for ( ; width > 0; --width) { + printchar (out, padchar); + ++pc; + } + } + for ( ; *string ; ++string) { + printchar (out, *string); + ++pc; + } + for ( ; width > 0; --width) { + printchar (out, padchar); + ++pc; + } + + return pc; +} + +/* the following should be enough for 32 bit int */ +#define PRINT_BUF_LEN 12 + +static int printi(char **out, int i, int b, int sg, int width, int pad, int letbase) +{ + char print_buf[PRINT_BUF_LEN]; + register char *s; + register int t, neg = 0, pc = 0; + register unsigned int u = i; + + if (i == 0) { + print_buf[0] = '0'; + print_buf[1] = '\0'; + return prints (out, print_buf, width, pad); + } + + if (sg && b == 10 && i < 0) { + neg = 1; + u = -i; + } + + s = print_buf + PRINT_BUF_LEN-1; + *s = '\0'; + + while (u) { + t = u % b; + if( t >= 10 ) + t += letbase - '0' - 10; + *--s = t + '0'; + u /= b; + } + + if (neg) { + if( width && (pad & PAD_ZERO) ) { + printchar (out, '-'); + ++pc; + --width; + } + else { + *--s = '-'; + } + } + + return pc + prints (out, s, width, pad); +} + +#if 0 +int fprintf(__FILE *stream, const char *format, ...) +{ +return 0; +} +#endif + +int printk_va(char **out, const char *format, va_list args ) +{ + register int width, pad; + register int pc = 0; + char scr[2]; + + for (; *format != 0; ++format) { + if (*format == '%') { + ++format; + width = pad = 0; + if (*format == '\0') break; + if (*format == '%') goto out; + if (*format == '-') { + ++format; + pad = PAD_RIGHT; + } + while (*format == '0') { + ++format; + pad |= PAD_ZERO; + } + for ( ; *format >= '0' && *format <= '9'; ++format) { + width *= 10; + width += *format - '0'; + } + if( *format == 's' ) { + register char *s = (char *)va_arg( args, int ); + pc += prints (out, s?s:"(null)", width, pad); + continue; + } + if( *format == 'd' ) { + pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a'); + continue; + } + if( *format == 'p' ) { + pad = 8; + pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a'); + continue; + } + if( *format == 'x' ) { + pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a'); + continue; + } + if( *format == 'X' ) { + pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A'); + continue; + } + if( *format == 'u' ) { + pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a'); + continue; + } + if( *format == 'c' ) { + /* char are converted to int then pushed on the stack */ + scr[0] = (char)va_arg( args, int ); + scr[1] = '\0'; + pc += prints (out, scr, width, pad); + continue; + } + } + else { + out: + printchar (out, *format); + ++pc; + } + } + if (out) **out = '\0'; + va_end( args ); + return pc; +} + +int printk(const char *format, ...) +{ + va_list args; + + va_start( args, format ); + return printk_va( 0, format, args ); +} + +#ifndef __ARM__ +int sprintf(char *out, const char *format, ...) +{ + va_list args; + + va_start( args, format ); + return printk_va( &out, format, args ); +} +#endif + +#ifdef TEST_PRINTF +int main(void) +{ + char *ptr = "Hello world!"; + char *np = 0; + int i = 5; + unsigned int bs = sizeof(int)*8; + int mi; + char buf[80]; + + mi = (1 << (bs-1)) + 1; + printf("%s\n", ptr); + printf("printf test\n"); + printf("%s is null pointer\n", np); + printf("%d = 5\n", i); + printf("%d = - max int\n", mi); + printf("char %c = 'a'\n", 'a'); + printf("hex %x = ff\n", 0xff); + printf("hex %02x = 00\n", 0); + printf("signed %d = unsigned %u = hex %x\n", -3, -3, -3); + printf("%d %s(s)%", 0, "message"); + printf("\n"); + printf("%d %s(s) with %%\n", 0, "message"); + sprintf(buf, "justif: \"%-10s\"\n", "left"); printf("%s", buf); + sprintf(buf, "justif: \"%10s\"\n", "right"); printf("%s", buf); + sprintf(buf, " 3: %04d zero padded\n", 3); printf("%s", buf); + sprintf(buf, " 3: %-4d left justif.\n", 3); printf("%s", buf); + sprintf(buf, " 3: %4d right justif.\n", 3); printf("%s", buf); + sprintf(buf, "-3: %04d zero padded\n", -3); printf("%s", buf); + sprintf(buf, "-3: %-4d left justif.\n", -3); printf("%s", buf); + sprintf(buf, "-3: %4d right justif.\n", -3); printf("%s", buf); + + return 0; +} + +/* + * if you compile this file with + * gcc -Wall $(YOUR_C_OPTIONS) -DTEST_PRINTF -c printf.c + * you will get a normal warning: + * printf.c:214: warning: spurious trailing `%' in format + * this line is testing an invalid % at the end of the format string. + * + * this should display (on 32bit int machine) : + * + * Hello world! + * printf test + * (null) is null pointer + * 5 = 5 + * -2147483647 = - max int + * char a = 'a' + * hex ff = ff + * hex 00 = 00 + * signed -3 = unsigned 4294967293 = hex fffffffd + * 0 message(s) + * 0 message(s) with % + * justif: "left " + * justif: " right" + * 3: 0003 zero padded + * 3: 3 left justif. + * 3: 3 right justif. + * -3: -003 zero padded + * -3: -3 left justif. + * -3: -3 right justif. + */ + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/printf-stdarg.h b/libraries/WiFi/extras/wifiHD/src/printf-stdarg.h new file mode 100644 index 000000000..bce38b6f2 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/printf-stdarg.h @@ -0,0 +1,34 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef PRINTF_STDARG_H +#define PRINTF_STDARG_H +#include <stdarg.h> + +int printk(const char *format, ...); +int printk_va(char **out, const char *format, va_list args ); +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/timer.c b/libraries/WiFi/extras/wifiHD/src/timer.c new file mode 100644 index 000000000..6ffba634a --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/timer.c @@ -0,0 +1,232 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +#include <stdint.h> +#include <rtc.h> +#include <intc.h> +#include <timer.h> +#ifdef FREERTOS_USED +#include "FreeRTOS.h" +#include "task.h" +#endif + +#define TIMER_HZ 4 + + +struct timeout_t { + U32 tick; + U32 expire_at_tick; + Bool expired; + U8 type; + void (*cb)(void* ctx); + void* ctx; +}; + +struct timer_t { + volatile U32 tick; + struct timeout_t timeout[10]; + void (*tick_isr) (void* ctx); + const U32 MS_PER_TICK; + void *ctx; +}; + +#define ARRAY_SIZE(a) sizeof(a) / sizeof(a[0]) + + +static struct timer_t TIMER = { + .tick = 0, +#ifdef FREERTOS_USED + .MS_PER_TICK = 1 / portTICK_RATE_MS, +#else + .MS_PER_TICK = TIMER_HZ, +#endif + .timeout = { { 0 } }, +}; + +#ifdef FREERTOS_USED /* Use TICK-hook */ + +void vApplicationTickHook( void ) { + struct timer_t* priv = &TIMER; + priv->tick++; + if(priv->tick_isr) { + priv->tick_isr(priv->ctx); + } +} + +#else /* Use interrupt directly */ + +static __attribute__((__interrupt__)) void irq_handler(void) +{ + volatile avr32_rtc_t *rtc = &AVR32_RTC; + struct timer_t* priv = &TIMER; + priv->tick++; + + if(priv->tick_isr) + priv->tick_isr(priv->ctx); + + rtc->icr = AVR32_RTC_ICR_TOPI_MASK; + rtc->isr; +} + +#endif + +void timer_init(void (*tick_isr) (void* ctx), void* ctx) +{ + struct timer_t* priv = &TIMER; + uint8_t id; + +#ifndef FREERTOS_USED + INTC_register_interrupt(&irq_handler, AVR32_RTC_IRQ, AVR32_INTC_INT0); + if (!rtc_init(&AVR32_RTC, RTC_OSC_RC, 0)) + Assert(0); + + rtc_set_top_value(&AVR32_RTC, 115 * priv->MS_PER_TICK / 2); + rtc_enable_interrupt(&AVR32_RTC); + rtc_enable(&AVR32_RTC); +#else + /* With FreeRTOS we use the OS tick instead */ +#endif + priv->tick_isr = tick_isr; + priv->ctx = ctx; + + for (id = 0; id < ARRAY_SIZE(priv->timeout); id++) + priv->timeout[id].expired = TRUE; +} + + +U32 timer_get_ms(void) +{ + struct timer_t* priv = &TIMER; + return priv->tick * priv->MS_PER_TICK; +} + +void timer_delay(U32 ms) +{ + struct timer_t* priv = &TIMER; + U32 expire_at_tick = priv->tick + ms / priv->MS_PER_TICK; + while (priv->tick < expire_at_tick); +} + +/** + * Called from application main loop to invoke any scheduled timeout cbs. + * This function might be called as often as possible rather than at each tick + * to support the timeout value '0', e.g a timeout within less than one tick. + * + */ +void timer_poll(void) +{ + struct timer_t* priv = &TIMER; + U8 i; + + for (i = 0; i < ARRAY_SIZE(priv->timeout); i++) { + struct timeout_t* tmo = &priv->timeout[i]; + if (tmo->expired) + continue; + + if (tmo->expire_at_tick > priv->tick) + continue; + + if (tmo->cb) + tmo->cb(tmo->ctx); + + if (tmo->type == TIMEOUT_PERIODIC) + tmo->expire_at_tick = priv->tick + tmo->tick; + else + tmo->expired = TRUE; + } +} + +static U32 timer_sched_timeout(U32 ms, U8 type) +{ + struct timer_t* priv = &TIMER; + struct timeout_t* tmo; + U8 id; + + Assert(type == TIMEOUT_ONESHOT || type == TIMEOUT_PERIODIC); + + for (id = 0; id < ARRAY_SIZE(priv->timeout); id++) { + tmo = &priv->timeout[id]; + if (tmo->expired) + break; + } + + Assert(id != ARRAY_SIZE(priv->timeout)); + + tmo->tick = ms / priv->MS_PER_TICK; + tmo->expire_at_tick = priv->tick + tmo->tick; + tmo->type = type; + tmo->expired = FALSE; + return id; +} + +U32 timer_sched_timeout_cb(U32 ms, U8 type, void (*cb)(void *ctx), void* ctx) +{ + struct timer_t* priv = &TIMER; + struct timeout_t* tmo; + U8 id; + + Assert(cb); + id = timer_sched_timeout(ms, type); + tmo = &priv->timeout[id]; + + tmo->cb = cb; + tmo->ctx = ctx; + return id; +} + + +U32 timer_mod(U32 id, U32 ms, U8 type, void (*cb)(void *ctx), void* ctx) +{ + struct timer_t* priv = &TIMER; + + if (id != INVALID_TIMER_ID && !priv->timeout[id].expired) + timer_cancel_timeout(id); + + return timer_sched_timeout_cb(ms, type, cb, ctx); +} + +void timer_cancel_timeout(U32 id) +{ + struct timer_t* priv = &TIMER; + struct timeout_t* tmo; + + tmo = &priv->timeout[id]; + tmo->expired = TRUE; +} + +int timer_interval_passed(U32 old, U32 new, U32 diff) { + /* New did not wrap */ + if (new > old && new - old > diff) { + return 1; + } + /* New did wrap */ + else if (new < old && ( ( (U32)(-1) - old ) + new ) > diff ) { + return 1; + } + return 0; +} diff --git a/libraries/WiFi/extras/wifiHD/src/timer.h b/libraries/WiFi/extras/wifiHD/src/timer.h new file mode 100644 index 000000000..6614fbc44 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/timer.h @@ -0,0 +1,51 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef TIMER_H +#define TIMER_H +#include <stdint.h> + +enum { + TIMEOUT_ONESHOT, + TIMEOUT_PERIODIC +}; + +#define INVALID_TIMER_ID 0xFFFFFFFF + +/* Handle timer overflows. Return 1 if the interval has passed. */ +int timer_interval_passed(uint32_t old, uint32_t new, uint32_t diff); + +void timer_tick(); +void timer_init(void (*tick_isr) (void* ctx), void* ctx); +void timer_poll(void); +void timer_delay(uint32_t ms); +uint32_t timer_sched_timeout_cb(uint32_t ms, uint8_t type, void (*cb)(void *ctx), void* ctx); +uint32_t timer_mod(uint32_t id, uint32_t ms, uint8_t type, void (*cb)(void *ctx), void* ctx); +void timer_cancel_timeout(uint32_t id); +uint32_t timer_get_ms(void); + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/top_defs.h b/libraries/WiFi/extras/wifiHD/src/top_defs.h new file mode 100644 index 000000000..09f7c3ef8 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/top_defs.h @@ -0,0 +1,120 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef _TOP_DEFS_H +#define _TOP_DEFS_H + +#include <stdlib.h> +#include <stdint.h> + +#define ARRAY_SIZE(a) sizeof(a) / sizeof((a)[0]) + +#ifndef UNREF +#define UNREF(x) x = x +#endif + +#if __GNUC__ +#ifdef __KERNEL__ +#define WEAK_DECL +#else +#define WEAK_DECL __attribute__ ((__weak__)) +#endif +#define PACKED __attribute__ ((__packed__)) +#define USED __attribute__ ((__used__)) +#else + #error "Unsupported compiler" +#endif + +#ifndef TRUE +#define TRUE 1 +#endif + +#ifndef FALSE +#define FALSE 0 +#endif + + +#if 0 +#include <stdio.h> +/* + * These functions should _NOT_ be used, call iprintf, sniprintf, iscanf, siscanf etc + * instead. Those functions do not have support for floating point formats. + * Not using these functions saves 27kB of code. + */ +extern int printf(const char *format, ...) __attribute__ ((deprecated)); +extern int sprintf(char *str, const char *format, ...) __attribute__ ((deprecated)); +extern int snprintf(char *str, size_t size, const char *format, ...) __attribute__ ((deprecated)); + +int vprintf(const char *format, va_list ap) __attribute__ ((deprecated)); +int vfprintf(FILE *stream, const char *format, va_list ap) __attribute__ ((deprecated)); +int vsprintf(char *str, const char *format, va_list ap) __attribute__ ((deprecated)); +int vsnprintf(char *str, size_t size, const char *format, va_list ap) __attribute__ ((deprecated)); + +int scanf(const char *format, ...) __attribute__ ((deprecated)); +int fscanf(FILE *stream, const char *format, ...) __attribute__ ((deprecated)); +int sscanf(const char *str, const char *format, ...) __attribute__ ((deprecated)); + +int vscanf(const char *format, va_list ap) __attribute__ ((deprecated)); +int vsscanf(const char *str, const char *format, va_list ap) __attribute__ ((deprecated)); +int vfscanf(FILE *stream, const char *format, va_list ap) __attribute__ ((deprecated)); +#endif + +#endif + + + +#if defined(__linux__) || defined(__APPLE__) + #include <stdint.h> + #include <assert.h> + #define sniprintf snprintf + #define asiprintf asprintf + #define printk printf + #define siscanf sscanf + + #define WL_ASSERT(x) assert(x) + #define WL_DEBUG(args...) printf(args) + + #ifdef NO_LWIP + /* IP address representation from lwIP */ + struct ip_addr { + uint32_t addr; + } PACKED; + #endif + + #define FEAT_SOCKETS + +#else + #define WL_ASSERT(cond) do { \ + if (!(cond)) { \ + printk("%s:%d\n", __FILE__, __LINE__); \ + for(;;); \ + } \ + } while(0) + #define WL_DEBUG(args...) printk(args) + + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/trace.h b/libraries/WiFi/extras/wifiHD/src/trace.h new file mode 100644 index 000000000..984262a81 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/trace.h @@ -0,0 +1,44 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef TRACE_H +#define TRACE_H + +#include <compiler.h> +#include "printf-stdarg.h" + +#define ASSERT(cond, str) do { \ + if (!(cond)) { \ + printk("%s\n", str); \ + Assert(0); \ + } \ + } while(0) + + +#endif diff --git a/libraries/WiFi/extras/wifiHD/src/util.c b/libraries/WiFi/extras/wifiHD/src/util.c new file mode 100644 index 000000000..c01edebf4 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/util.c @@ -0,0 +1,260 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <top_defs.h> +#include <util.h> +#include <stdint.h> +#include <stdlib.h> +#include <wl_api.h> +#include <stdio.h> +#include <ctype.h> +#include <errno.h> +#include <string.h> +#include <printf-stdarg.h> + +const char* ip2str(struct ip_addr addr) +{ + static char buf[16]; + +#if BYTE_ORDER == LITTLE_ENDIAN + sniprintf(buf, sizeof(buf), "%lu.%lu.%lu.%lu", + addr.addr & 0xff, + (addr.addr >> 8) & 0xff, + (addr.addr >> 16) & 0xff, + (addr.addr >> 24) & 0xff); + return buf; +#else + sniprintf(buf, sizeof(buf), "%lu.%lu.%lu.%lu", + (addr.addr >> 24) & 0xff, + (addr.addr >> 16) & 0xff, + (addr.addr >> 8) & 0xff, + (addr.addr) & 0xff); + return buf; +#endif +} + +struct ip_addr str2ip(const char* str) +{ + int a,b,c,d; + uint32_t ip = 0; + struct ip_addr addr; + + if (siscanf(str,"%d.%d.%d.%d",&a,&b,&c,&d) != 4) + goto out; + + if (a < 0 || a > 255 || b < 0 || b > 255 || + c < 0 || c > 255 || d < 0 || d > 255) { + goto out; + } + +#if BYTE_ORDER == LITTLE_ENDIAN + ip = (d << 24) | (c << 16) | (b << 8) | a; +#else + ip = (a << 24) | (b << 16) | (c << 8) | d; +#endif + + out: + addr.addr = ip; + return addr; +} + +uint8_t ascii_to_key(char *outp, const char *inp) { + char buf[3]; + int len; + buf[2] = '\0'; + len = strlen(inp); + if (len % 2) { + printk("Invalid length\n"); + } + len = 0; + while (*inp) { + if (! isxdigit(*inp) || ! isxdigit(*(inp+1)) || + len > WL_MAX_PASS_LEN) { + return 0; + } + buf[0] = *inp++; + buf[1] = *inp++; + *outp++ = strtol(buf, NULL, 16); + len++; + } + return len; +} + + + +void printbuf(const char *prefix, const void *data, size_t len) +{ + const unsigned char *s = data; + int i, j; + + for (i = 0; i < len; i += 16) + { + printk("%s ", prefix); + for(j = 0; j < 16; j++) { + if(i + j >= len) + printk(" "); + else + printk("%02X ", (uint16_t)s[i + j]); + } + printk(": "); + for(j = 0; j < 16; j++) { + if(i + j >= len) + break; + if(s[i+j] >= 32 && s[i+j] < 127) + printk("%c", s[i + j]); + else + printk("."); + } + printk("\n"); + } +} + + +void print_network(struct wl_network_t* wl_network) +{ + printk("%s ", mac2str(wl_network->bssid.octet)); + printk("\"%s\"", ssid2str(&wl_network->ssid)); + printk(" RSSI %d dBm ", wl_network->rssi); + switch(wl_network->net_type) { + case WL_CONN_TYPE_ADHOC: + printk(" Ad-Hoc "); + break; + default : + break; + } + switch (wl_network->enc_type) { + case ENC_TYPE_WEP : + printk(" (WEP encryption)"); + break; + case ENC_TYPE_TKIP : + printk(" (TKIP encryption)"); + break; + case ENC_TYPE_CCMP : + printk(" (CCMP encryption)"); + break; + case ENC_TYPE_NONE : + break; + } + printk("\n"); + +} + +void print_network_list(void) +{ + struct wl_network_list_t* wl_network_list; + uint8_t i; + + wl_get_network_list(&wl_network_list); + + if (wl_network_list->cnt == 0) + printk("no nets found\n"); + + for (i = 0; i < wl_network_list->cnt; i++) + print_network(wl_network_list->net[i]); +} + +int join_argv(char *dst, size_t dst_len, int argc, char* argv[]) { + char *p = dst; + int i; + int len = 0; + + /* Not really kosher, an ssid may legally contain 0-bytes but + * the console interface does not deal with that. + */ + for (i = 0; i < argc; i++) { + len += strlen(argv[i]); + if (len > dst_len) { + printk("ssid too long (max %d)\n", (int) dst_len); + return 0; + } + p += sniprintf(p, + dst_len - (p - dst), + "%s ", + argv[i]); + } + if (p == dst) { + return 0; + } + p--; + *p = '\0'; /* Delete last space */ + + return p - dst; +} + +const char* ssid2str(struct wl_ssid_t *ssid) { + static char buf[WL_SSID_MAX_LENGTH + 1]; + + memset(buf, 0, sizeof buf); + memcpy(buf, ssid->ssid, ssid->len); + + return buf; +} + + +const char* mac2str(uint8_t* mac) +{ + static char buf[18]; + sniprintf(buf, sizeof(buf), "%02x-%02x-%02x-%02x-%02x-%02x", + mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); + return buf; +} + + +char* enc_type2str(enum wl_enc_type enc_type) +{ + switch(enc_type) { + case ENC_TYPE_WEP: + return "WEP"; + case ENC_TYPE_CCMP: + return "CCMP"; + case ENC_TYPE_TKIP: + return "TKIP"; + default: + return ""; + }; +} + +int equal_ssid(const struct wl_ssid_t* ssid1, + const struct wl_ssid_t* ssid2) { + if (ssid1->len == ssid2->len && + (memcmp(ssid1->ssid, ssid2->ssid, ssid1->len) == 0)) { + return 1; + } + return 0; +} + +int equal_bssid(const struct wl_mac_addr_t* bssid1, + const struct wl_mac_addr_t* bssid2) { + if (memcmp(bssid1, bssid2, sizeof *bssid1) == 0) { + return 1; + } + return 0; +} + + diff --git a/libraries/WiFi/extras/wifiHD/src/util.h b/libraries/WiFi/extras/wifiHD/src/util.h new file mode 100644 index 000000000..2b3f74f83 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/util.h @@ -0,0 +1,71 @@ +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef _UTIL_H +#define _UTIL_H +#include <stdint.h> +#include <stdlib.h> +#include <wl_api.h> +#include "lwip/ip.h" +#include <console.h> + +const char* ip2str(struct ip_addr addr); + +struct ip_addr str2ip(const char* str); + +uint8_t ascii_to_key(char *outp, const char *inp); + +void print_network(struct wl_network_t* wl_network); + +void print_network_list(void); + +int join_argv(char *dst, size_t dst_len, int argc, char* argv[]); + +void printbuf(const char *prefix, const void *data, size_t len); + +const char* ssid2str(struct wl_ssid_t *ssid); + +const char* mac2str(uint8_t mac[6]); + +char* enc_type2str(enum wl_enc_type enc_type); + +int equal_ssid(const struct wl_ssid_t* ssid1, + const struct wl_ssid_t* ssid2); + +int equal_bssid(const struct wl_mac_addr_t* bssid1, + const struct wl_mac_addr_t* bssid2); + +#define NET_SET_SSID(net, xssid, ssid_len) do { \ + DE_MEMCPY((net)->ssid.ssid, (xssid), (ssid_len)); \ + (net)->ssid.len = (ssid_len); \ + } while (0) + +#define NET_SET_BSSID(net, xbssid) do { \ + DE_MEMCPY(&(net)->bssid, &(xbssid), sizeof (xbssid)); \ + } while (0) + +#endif /* _UTIL_H */ diff --git a/libraries/WiFi/extras/wifiHD/src/wifi_spi.h b/libraries/WiFi/extras/wifiHD/src/wifi_spi.h new file mode 100644 index 000000000..e2e262c2f --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/wifi_spi.h @@ -0,0 +1,160 @@ +/* + * wifi_spi.h + * + * Created on: Jul 4, 2010 + * Author: mlf by Metodo2 srl + */ +#ifndef WiFi_Spi_h +#define WiFi_Spi_h + +#include "wl_definitions.h" + +#define CMD_FLAG 0 +#define REPLY_FLAG 1<<7 +#define DATA_FLAG 0x40 + +#define WIFI_SPI_ACK 1 +#define WIFI_SPI_ERR 0xFF + +#define TIMEOUT_CHAR 1000 + +//#define MAX_SOCK_NUM 4 /**< Maxmium number of socket */ +#define NO_SOCKET_AVAIL 255 + +#define START_CMD 0xE0 +#define END_CMD 0xEE +#define ERR_CMD 0xEF +#define CMD_POS 1 // Position of Command OpCode on SPI stream +#define PARAM_LEN_POS 2 // Position of Param len on SPI stream + +enum { + SET_NET_CMD = 0x10, + SET_PASSPHRASE_CMD = 0x11, + SET_KEY_CMD = 0x12, + TEST_CMD = 0x13, + SET_IP_CONFIG_CMD = 0x14, + SET_DNS_CONFIG_CMD = 0x15, + + GET_CONN_STATUS_CMD = 0x20, + GET_IPADDR_CMD = 0x21, + GET_MACADDR_CMD = 0x22, + GET_CURR_SSID_CMD = 0x23, + GET_CURR_BSSID_CMD = 0x24, + GET_CURR_RSSI_CMD = 0x25, + GET_CURR_ENCT_CMD = 0x26, + SCAN_NETWORKS = 0x27, + START_SERVER_TCP_CMD= 0x28, + GET_STATE_TCP_CMD = 0x29, + DATA_SENT_TCP_CMD = 0x2A, + AVAIL_DATA_TCP_CMD = 0x2B, + GET_DATA_TCP_CMD = 0x2C, + START_CLIENT_TCP_CMD= 0x2D, + STOP_CLIENT_TCP_CMD = 0x2E, + GET_CLIENT_STATE_TCP_CMD = 0x2F, + DISCONNECT_CMD = 0x30, + GET_IDX_SSID_CMD = 0x31, + GET_IDX_RSSI_CMD = 0x32, + GET_IDX_ENCT_CMD = 0x33, + REQ_HOST_BY_NAME_CMD= 0x34, + GET_HOST_BY_NAME_CMD= 0x35, + START_SCAN_NETWORKS = 0x36, + GET_FW_VERSION_CMD = 0x37, + GET_TEST_CMD = 0x38, + SEND_DATA_UDP_CMD = 0x39, + GET_REMOTE_DATA_CMD = 0x3A, + + // All command with DATA_FLAG 0x40 send a 16bit Len + + SEND_DATA_TCP_CMD = 0x44, + GET_DATABUF_TCP_CMD = 0x45, + INSERT_DATABUF_CMD = 0x46, + +}; + +#if 0 +enum wl_tcp_state { + CLOSED = 0, + LISTEN = 1, + SYN_SENT = 2, + SYN_RCVD = 3, + ESTABLISHED = 4, + FIN_WAIT_1 = 5, + FIN_WAIT_2 = 6, + CLOSE_WAIT = 7, + CLOSING = 8, + LAST_ACK = 9, + TIME_WAIT = 10 +}; +#endif + +enum numParams{ + PARAM_NUMS_0, + PARAM_NUMS_1, + PARAM_NUMS_2, + PARAM_NUMS_3, + PARAM_NUMS_4, + PARAM_NUMS_5, + MAX_PARAM_NUMS +}; + +#define MAX_PARAMS MAX_PARAM_NUMS-1 +#define PARAM_LEN_SIZE 1 + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + char* param; +}tParam; + +typedef struct __attribute__((__packed__)) +{ + uint16_t dataLen; + char* data; +}tDataParam; + + +typedef struct __attribute__((__packed__)) +{ + unsigned char cmd; + unsigned char tcmd; + unsigned char nParam; + tParam params[MAX_PARAMS]; +}tSpiMsg; + +typedef struct __attribute__((__packed__)) +{ + unsigned char cmd; + unsigned char tcmd; + unsigned char nParam; + tDataParam params[MAX_PARAMS]; +}tSpiMsgData; + + +typedef struct __attribute__((__packed__)) +{ + unsigned char cmd; + unsigned char tcmd; + //unsigned char totLen; + unsigned char nParam; +}tSpiHdr; + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + uint32_t param; +}tLongParam; + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + uint16_t param; +}tIntParam; + +typedef struct __attribute__((__packed__)) +{ + uint8_t paramLen; + uint8_t param; +}tByteParam; + +#endif +uint8_t param; \ No newline at end of file diff --git a/libraries/WiFi/extras/wifiHD/src/wl_cm.c b/libraries/WiFi/extras/wifiHD/src/wl_cm.c new file mode 100644 index 000000000..ebc0e45dd --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/wl_cm.c @@ -0,0 +1,431 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include "wl_cm.h" +#include "util.h" +#include <string.h> +#include "debug.h" + +/** Roaming configuration parameters **/ + +/*! The ROAMING_RSSI_THRESHOLD setting defines how bad the current + * signal strength should be before we'll consider roaming to an AP + * with better signal strength. The objective is to stay on the + * current AP as long as the RSSI is decent, even if there are other + * APs in the same BSS with better RSSI available. + * If ROAMING_RSSI_THRESHOLD is too high we might roam unecessarily. + * If ROAMING_RSSI_THRESHOLD is too low we might not roam in time to + * avoid packet loss. This also impacts power consumption, staying + * too long with an AP with poor RSSI will consume more power. + * Unit is dBm. + */ +#define ROAMING_RSSI_THRESHOLD -65 + +/*! The ROAMING_RSSI_DIFF setting defines how much better + * than the currently associated AP a new AP must be before + * we'll attempt to roam over to the new AP. + * If ROAMING_RSSI_DIFF is too high it might be too hard + * to roam (important if the STA is expected to move + * quickly through different AP coverage areas). + * If ROAMING_RSSI_DIFF is too low we might bounce between + * two APs with similar signal strengths. + * Unit is dBm. + */ +#define ROAMING_RSSI_DIFF 10 + +# include "printf-stdarg.h" +#include "ard_utils.h" +#include "debug.h" + +/** \defgroup wl_cm Connection Manager + * + * These functions are used to configure and control the WiFi connetion + * manager. + * + * + * @{ + */ + +struct cm_candidate { + struct wl_ssid_t ssid; + struct wl_mac_addr_t bssid; +}; + +struct cm { + cm_scan_cb_t *scan_cb; + cm_conn_cb_t *conn_cb; + cm_disconn_cb_t *disconn_cb; + void* ctx; + uint8_t enabled; + struct cm_candidate candidate; +}; + + +/** + * This function can be modified to pick a network based on + * application specific criteria. + * + * If the SSID can not be found in the scan list it will be + * assumed to be a hidden SSID and the wl_connect() command + * will be called to attempt to probe for the network and + * connect to it. + */ +static struct wl_network_t* +find_best_candidate(struct cm* cm) +{ + struct wl_network_list_t* netlist; + struct wl_network_t *best_net = NULL; + uint8_t i; + + if (wl_get_network_list(&netlist) != WL_SUCCESS) + return NULL; + + if (netlist->cnt == 0) + return NULL; + + for (i = 0; i < netlist->cnt; i++) { + /* match on ssid */ + if (cm->candidate.ssid.len) + if (!equal_ssid(&cm->candidate.ssid, + &netlist->net[i]->ssid)) + continue; + + /* match bssid */ + if (strncmp((char*) cm->candidate.bssid.octet, + "\xff\xff\xff\xff\xff\xff", 6)) + if (!equal_bssid(&cm->candidate.bssid, + &netlist->net[i]->bssid)) + continue; + /* check for best rssi. */ + if ( best_net && + ( best_net->rssi > netlist->net[i]->rssi) ) { + continue; + } + best_net = netlist->net[i]; + } + + return best_net; +} + + +/** + * + */ +static void +select_net(struct cm* cm) +{ + struct wl_network_t *candidate_net; + struct wl_network_t *current_net; + struct wl_ssid_t *ssid_p; + + int ret; + + /* Nothing to do */ + if (0 == cm->candidate.ssid.len) { + return; + } + + current_net = wl_get_current_network(); + candidate_net = find_best_candidate(cm); + + /* Connected to the candidate? ... */ + if ( current_net == candidate_net ) { + if ( current_net ) { + /* ...yes, dont change. */ + + return; + } + } + + /* Roaming checks */ + if (current_net && candidate_net) { + /* Are we changing BSSs? */ + if ( equal_ssid(&candidate_net->ssid, + &current_net->ssid)) { + + /* ...no. Does the currently connected + * net have a decent RSSI?...*/ + if ( current_net->rssi > ROAMING_RSSI_THRESHOLD ) { + /* ...yes, stay with it. */ + return; + } + /* ...no. Does the candidate have + * sufficiently better RSSI to + * motivate a switch to it? */ + if ( candidate_net->rssi < current_net->rssi + + ROAMING_RSSI_DIFF) { + return; + } + /* ...yes, try to roam to candidate_net */ + CM_DPRINTF("CM: Roaming from rssi %d to %d\n", + current_net->rssi, + candidate_net->rssi); + } + } + /* a candidate is found */ + if (candidate_net) { + /* We connect to a specific bssid here because + * find_best_candidate() might have picked a + * particulare AP among many with the same SSID. + * wl_connect() would pick one of them at random. + */ + ret = wl_connect_bssid(candidate_net->bssid); + } + /* no candidate found */ + else { + CM_DPRINTF("CM: No candidate found for ssid \"%s\"\n", + ssid2str(&cm->candidate.ssid)); + /* Might be a hidden SSID so we try to connect to it. + * wl_connect() will trigger a directed scan + * for the SSID in this case. + */ + ssid_p = &cm->candidate.ssid; + ret = wl_connect(ssid_p->ssid, ssid_p->len); + } + switch (ret) { + case WL_SUCCESS : + return; + case WL_BUSY: + wl_disconnect(); + return; + case WL_RETRY: + break; + default : + CM_DPRINTF("CM: failed to connect\n"); + break; + } + + /* some operation failed or no candidate found */ + if (wl_scan() != WL_SUCCESS) + CM_DPRINTF("CM: failed to scan\n"); +} + + +/** + * + */ +static void +wl_scan_complete_cb(void* ctx) +{ + struct cm *cm = ctx; + + CM_DPRINTF("CM: scan completed\n"); + + if (cm->scan_cb) + cm->scan_cb(cm->ctx); + + if ( 0 == cm->enabled ) { + return; + } + select_net(cm); +} + +/** + * + */ +static void +wl_media_connected_cb(void* ctx) +{ + struct cm *cm = ctx; + struct wl_network_t *net = wl_get_current_network(); + CM_DPRINTF("CM: connected to %s\n", ssid2str(&net->ssid)); + LINK_LED_ON(); + ERROR_LED_OFF(); + if (cm->conn_cb) + cm->conn_cb(net, cm->ctx); +} + + +/** + * + */ +static void +wl_conn_failure_cb(void* ctx) +{ + struct cm *cm = ctx; + CM_DPRINTF("CM: connect failed, scanning\n"); + ERROR_LED_ON(); + LINK_LED_OFF(); + + if ( 0 == cm->enabled ) { + return; + } + if (wl_scan() != WL_SUCCESS) + /* should never happen */ + CM_DPRINTF("CM: could not start scan after connect fail!\n"); +} + + +/** + * + */ +static void +wl_conn_lost_cb(void* ctx) +{ + struct cm *cm = ctx; + CM_DPRINTF("CM: connection lost, scanning\n"); + LINK_LED_OFF(); + if (cm->disconn_cb) + cm->disconn_cb(cm->ctx); + + if ( 0 == cm->enabled ) { + return; + } + if (wl_scan() != WL_SUCCESS) + /* should never happen */ + CM_DPRINTF("CM: could not start scan after connect lost!\n"); +} + + +/** + * + */ +static void +wl_event_cb(struct wl_event_t event, void* ctx) +{ + struct cm *cm = ctx; + + switch (event.id) { + case WL_EVENT_MEDIA_CONNECTED: + wl_media_connected_cb(cm); + break; + + case WL_EVENT_CONN_FAILURE: + wl_conn_failure_cb(cm); + break; + + case WL_EVENT_MEDIA_DISCONNECTED: + CM_DPRINTF("CM: disconnected\n"); + wl_conn_lost_cb(cm); + break; + + case WL_EVENT_SCAN_COMPLETE: + wl_scan_complete_cb(cm); + break; + + default: + CM_DPRINTF("CM: unhandled event\n"); + }; +} + +static struct cm *cm = NULL; + + +/** + * Doesn't actually start the CM, just initializing. CM will run whenever + * an valid ssid is set through wl_cm_set_network() and wl_cm_start() + * has been called. + */ +wl_err_t +wl_cm_init(cm_scan_cb_t scan_cb, + cm_conn_cb_t conn_cb, + cm_disconn_cb_t disconn_cb, + void* ctx) +{ + if (cm != NULL) + return WL_FAILURE; + + cm = calloc(1, sizeof(struct cm)); + if (cm == NULL) { + CM_DPRINTF("CM: out of memory\n"); + return WL_FAILURE; + } + + if (wl_register_event_cb(wl_event_cb, cm) != WL_SUCCESS) { + CM_DPRINTF("CM: could not register event cb\n"); + return WL_FAILURE; + } + + cm->scan_cb = scan_cb; + cm->conn_cb = conn_cb; + cm->disconn_cb = disconn_cb; + cm->enabled = 0; + cm->ctx = ctx; + + CM_DPRINTF("CM: initialized\n"); + return WL_SUCCESS; +} + +wl_err_t +wl_cm_start(void) { + if (NULL == cm) + return WL_FAILURE; + + cm->enabled = 1; + return WL_SUCCESS; +} + +wl_err_t +wl_cm_stop(void) { + if (NULL == cm) + return WL_FAILURE; + + cm->enabled = 0; + return WL_SUCCESS; +} + + +/** + * Set the desired network which the connection manager should try to + * connect to. + * + * The ssid and bssid of the desired network should be specified. The ssid and + * bssid will be matched against the networks found during scan. If any + * parameter is null, it will always match. If both parameters are null, + * the first found network will be chosen. + * + * @param ssid The ssid of the desired network. If null, any ssid will match. + * @param bssid The bssid of the desired network. If null, any bssid will match. + * + */ +wl_err_t +wl_cm_set_network(struct wl_ssid_t *ssid, struct wl_mac_addr_t *bssid) +{ + if (cm == NULL) + return WL_FAILURE; + + if (ssid) + memcpy(&cm->candidate.ssid, ssid, sizeof(cm->candidate.ssid)); + else + cm->candidate.ssid.len = 0; + + if (bssid) + memcpy(&cm->candidate.bssid, bssid, + sizeof(cm->candidate.bssid)); + else + memset(&cm->candidate.bssid, 0xff, sizeof(cm->candidate.bssid)); + + if (cm->candidate.ssid.len) + wl_scan(); + + return WL_SUCCESS; +} +/* + * @} + */ diff --git a/libraries/WiFi/extras/wifiHD/src/wl_cm.h b/libraries/WiFi/extras/wifiHD/src/wl_cm.h new file mode 100644 index 000000000..bbb65d979 --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/src/wl_cm.h @@ -0,0 +1,51 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef WL_CM_H +#define WL_CM_H + +#include <stdint.h> +#include <stdlib.h> +#include <wl_api.h> + +typedef void (cm_scan_cb_t)(void* ctx); +typedef void (cm_conn_cb_t)(struct wl_network_t *net, void* ctx); +typedef void (cm_disconn_cb_t)(void* ctx); + +wl_err_t wl_cm_set_network(struct wl_ssid_t *ssid, struct wl_mac_addr_t *bssid); + +wl_err_t wl_cm_init(cm_scan_cb_t scan_cb, + cm_conn_cb_t conn_cb, + cm_disconn_cb_t disconn_cb, + void* ctx); + +wl_err_t wl_cm_start(void); +wl_err_t wl_cm_stop(void); + +#endif diff --git a/hardware/arduino/sam/libraries/WiFi/utility/wl_definitions.h b/libraries/WiFi/extras/wifiHD/src/wl_definitions.h similarity index 70% rename from hardware/arduino/sam/libraries/WiFi/utility/wl_definitions.h rename to libraries/WiFi/extras/wifiHD/src/wl_definitions.h index 15de781fc..b07c203fc 100644 --- a/hardware/arduino/sam/libraries/WiFi/utility/wl_definitions.h +++ b/libraries/WiFi/extras/wifiHD/src/wl_definitions.h @@ -2,7 +2,7 @@ * wl_definitions.h * * Created on: Mar 6, 2011 - * Author: dlafauci + * Author: mlf by Metodo2 srl */ #ifndef WL_DEFINITIONS_H_ @@ -26,8 +26,7 @@ #define WL_MAX_ATTEMPT_CONNECTION 10 typedef enum { - WL_NO_SHIELD = 255, - WL_IDLE_STATUS = 0, + WL_IDLE_STATUS, WL_NO_SSID_AVAIL, WL_SCAN_COMPLETED, WL_CONNECTED, @@ -36,15 +35,5 @@ typedef enum { WL_DISCONNECTED } wl_status_t; -/* Encryption modes */ -enum wl_enc_type { /* Values map to 802.11 encryption suites... */ - ENC_TYPE_WEP = 5, - ENC_TYPE_TKIP = 2, - ENC_TYPE_CCMP = 4, - /* ... except these two, 7 and 8 are reserved in 802.11-2007 */ - ENC_TYPE_NONE = 7, - ENC_TYPE_AUTO = 8 -}; - #endif /* WL_DEFINITIONS_H_ */ diff --git a/libraries/WiFi/extras/wifiHD/wifiHD.cproj b/libraries/WiFi/extras/wifiHD/wifiHD.cproj new file mode 100644 index 000000000..3d15941fd --- /dev/null +++ b/libraries/WiFi/extras/wifiHD/wifiHD.cproj @@ -0,0 +1,1291 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <SchemaVersion>2.0</SchemaVersion> + <ProjectVersion>6.0</ProjectVersion> + <ToolchainName>com.Atmel.AVRGCC32</ToolchainName> + <ProjectGuid>417e15db-488a-4b56-8d4e-fbe832b2b649</ProjectGuid> + <Name>wifiHD</Name> + <avrdevice>AT32uc3a1256</avrdevice> + <avrdeviceseries>none</avrdeviceseries> + <AvrProjectType>Importer</AvrProjectType> + <OutputType>Executable</OutputType> + <Language>C</Language> + <OutputFileName>wifiHD</OutputFileName> + <OutputFileExtension>.elf</OutputFileExtension> + <OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory> + <ToolchainFlavour>Native</ToolchainFlavour> + <avrtool>com.atmel.avrdbg.tool.jtagicemk3</avrtool> + <KeepTimersRunning>true</KeepTimersRunning> + <AsfFrameworkConfig> + <framework-data> + <options /> + <configurations> + <configuration key="config.avr32.utils.trampoline" value="yes" default="yes" content-id="Atmel.ASF" /> + <configuration key="config.avr32.utils.gccstartup" value="yes" default="yes" content-id="Atmel.ASF" /> + <configuration key="config.utils.interrupt.intc" value="yes" default="yes" content-id="Atmel.ASF" /> + <configuration key="config.avr32.drivers.intc.exception" value="yes" default="yes" content-id="Atmel.ASF" /> + </configurations> + <files /> + <documentation help="" /> + </framework-data> + </AsfFrameworkConfig> + <avrtoolinterface>JTAG</avrtoolinterface> + <com_atmel_avrdbg_tool_jtagicemk3> + <ToolType>com.atmel.avrdbg.tool.jtagicemk3</ToolType> + <ToolName>JTAGICE3</ToolName> + <ToolNumber>J30200003078</ToolNumber> + <KeepTimersRunning>true</KeepTimersRunning> + <OverrideVtor>false</OverrideVtor> + <OverrideVtorValue> + </OverrideVtorValue> + <Channel> + <host>127.0.0.1</host> + <port>51999</port> + <ssl>False</ssl> + </Channel> + <ToolOptions> + <InterfaceName>JTAG</InterfaceName> + <InterfaceProperties> + <JtagDbgClock>250000</JtagDbgClock> + <JtagProgClock>1000000</JtagProgClock> + <IspClock>150000</IspClock> + <JtagInChain>false</JtagInChain> + <JtagEnableExtResetOnStartSession>false</JtagEnableExtResetOnStartSession> + <JtagDevicesBefore>0</JtagDevicesBefore> + <JtagDevicesAfter>0</JtagDevicesAfter> + <JtagInstrBitsBefore>0</JtagInstrBitsBefore> + <JtagInstrBitsAfter>0</JtagInstrBitsAfter> + </InterfaceProperties> + </ToolOptions> + </com_atmel_avrdbg_tool_jtagicemk3> + <AsfVersion>3.5.0</AsfVersion> + <OverrideVtor>false</OverrideVtor> + <OverrideVtorValue /> + <eraseonlaunchrule>0</eraseonlaunchrule> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)' == 'Release' "> + <ToolchainSettings> + <Avr32Gcc> + <avr32gcc.common.outputfiles.hex>True</avr32gcc.common.outputfiles.hex> + <avr32gcc.common.outputfiles.lss>True</avr32gcc.common.outputfiles.lss> + <avr32gcc.common.outputfiles.eep>True</avr32gcc.common.outputfiles.eep> + <avr32gcc.common.outputfiles.srec>True</avr32gcc.common.outputfiles.srec> + <avr32gcc.compiler.symbols.DefSymbols> + <ListValues> + <Value>BOARD=ARDUINO</Value> + <Value>WITH_KEY</Value> + <Value>WITH_WPA</Value> + <Value>WITH_NO_DMA</Value> + <Value>DATAFLASH=1</Value> + <Value>_INFO_DEBUG_=1</Value> + </ListValues> + </avr32gcc.compiler.symbols.DefSymbols> + <avr32gcc.compiler.directories.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD</Value> + </ListValues> + </avr32gcc.compiler.directories.IncludePaths> + <avr32gcc.compiler.optimization.level>Optimize for size (-Os)</avr32gcc.compiler.optimization.level> + <avr32gcc.compiler.optimization.OtherFlags>-fdata-sections -ffunction-sections</avr32gcc.compiler.optimization.OtherFlags> + <avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection> + <avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions>True</avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions> + <avr32gcc.compiler.optimization.ForceDoubleWordAlignment>True</avr32gcc.compiler.optimization.ForceDoubleWordAlignment> + <avr32gcc.compiler.warnings.AllWarnings>True</avr32gcc.compiler.warnings.AllWarnings> + <avr32gcc.compiler.miscellaneous.OtherFlags>-c -fmessage-length=0</avr32gcc.compiler.miscellaneous.OtherFlags> + <avr32gcc.linker.general.DoNotUseStandardStartFiles>True</avr32gcc.linker.general.DoNotUseStandardStartFiles> + <avr32gcc.linker.libraries.Libraries> + <ListValues> + <Value>newlib_addons-at32ucr2-speed_opt</Value> + <Value>_ucr2_hd_spi_v2.7.0</Value> + <Value>_ucr2_hd_wl_sta_intwpa_v2.7.0</Value> + </ListValues> + </avr32gcc.linker.libraries.Libraries> + <avr32gcc.linker.libraries.LibrarySearchPaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC</Value> + </ListValues> + </avr32gcc.linker.libraries.LibrarySearchPaths> + <avr32gcc.linker.optimization.GarbageCollectUnusedSections>True</avr32gcc.linker.optimization.GarbageCollectUnusedSections> + <avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection>True</avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection> + <avr32gcc.linker.optimization.AllowDirectReferencesToDataSection>True</avr32gcc.linker.optimization.AllowDirectReferencesToDataSection> + <avr32gcc.linker.miscellaneous.LinkerFlags>-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds</avr32gcc.linker.miscellaneous.LinkerFlags> + <avr32gcc.assembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.assembler.general.IncludePaths> + <avr32gcc.preprocessingassembler.general.AssemblerFlags>-Wa,-g</avr32gcc.preprocessingassembler.general.AssemblerFlags> + <avr32gcc.preprocessingassembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.preprocessingassembler.general.IncludePaths> +</Avr32Gcc> + </ToolchainSettings> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> + <ToolchainSettings> + <Avr32Gcc> + <avr32gcc.common.outputfiles.hex>True</avr32gcc.common.outputfiles.hex> + <avr32gcc.common.outputfiles.lss>True</avr32gcc.common.outputfiles.lss> + <avr32gcc.common.outputfiles.eep>True</avr32gcc.common.outputfiles.eep> + <avr32gcc.common.outputfiles.srec>True</avr32gcc.common.outputfiles.srec> + <avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories>false</avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories> + <avr32gcc.compiler.preprocessor.PreprocessOnly>false</avr32gcc.compiler.preprocessor.PreprocessOnly> + <avr32gcc.compiler.symbols.DefSymbols> + <ListValues> + <Value>BOARD=ARDUINO</Value> + <Value>NO_SYS</Value> + <Value>_DEBUG_</Value> + <Value>_ASSERT_ENABLE_</Value> + <Value>WITH_KEY</Value> + <Value>WITH_WPA</Value> + <Value>WITH_NO_DMA</Value> + <Value>DATAFLASH=1</Value> + <Value>_INFO_DEBUG_=1</Value> + </ListValues> + </avr32gcc.compiler.symbols.DefSymbols> + <avr32gcc.compiler.directories.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD</Value> + </ListValues> + </avr32gcc.compiler.directories.IncludePaths> + <avr32gcc.compiler.optimization.level>Optimize (-O1)</avr32gcc.compiler.optimization.level> + <avr32gcc.compiler.optimization.OtherFlags>-fdata-sections -ffunction-sections</avr32gcc.compiler.optimization.OtherFlags> + <avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection>true</avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection> + <avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.compiler.optimization.EnableFastMath>false</avr32gcc.compiler.optimization.EnableFastMath> + <avr32gcc.compiler.optimization.GeneratePositionIndependentCode>false</avr32gcc.compiler.optimization.GeneratePositionIndependentCode> + <avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions>true</avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions> + <avr32gcc.compiler.optimization.ForceDoubleWordAlignment>true</avr32gcc.compiler.optimization.ForceDoubleWordAlignment> + <avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool>false</avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool> + <avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing>false</avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing> + <avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData>false</avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData> + <avr32gcc.compiler.optimization.DebugLevel>Maximum (-g3)</avr32gcc.compiler.optimization.DebugLevel> + <avr32gcc.compiler.optimization.GenerateGprofInformation>false</avr32gcc.compiler.optimization.GenerateGprofInformation> + <avr32gcc.compiler.optimization.GenerateProfInformation>false</avr32gcc.compiler.optimization.GenerateProfInformation> + <avr32gcc.compiler.warnings.AllWarnings>true</avr32gcc.compiler.warnings.AllWarnings> + <avr32gcc.compiler.warnings.CheckSyntaxOnly>false</avr32gcc.compiler.warnings.CheckSyntaxOnly> + <avr32gcc.compiler.warnings.Pedantic>false</avr32gcc.compiler.warnings.Pedantic> + <avr32gcc.compiler.warnings.PedanticWarningsAsErrors>false</avr32gcc.compiler.warnings.PedanticWarningsAsErrors> + <avr32gcc.compiler.warnings.InhibitAllWarnings>false</avr32gcc.compiler.warnings.InhibitAllWarnings> + <avr32gcc.compiler.miscellaneous.OtherFlags>-c -fmessage-length=0</avr32gcc.compiler.miscellaneous.OtherFlags> + <avr32gcc.compiler.miscellaneous.SupportAnsiPrograms>false</avr32gcc.compiler.miscellaneous.SupportAnsiPrograms> + <avr32gcc.linker.general.DoNotUseStandardStartFiles>true</avr32gcc.linker.general.DoNotUseStandardStartFiles> + <avr32gcc.linker.general.DoNotUseDefaultLibraries>false</avr32gcc.linker.general.DoNotUseDefaultLibraries> + <avr32gcc.linker.general.NoStartupOrDefaultLibs>false</avr32gcc.linker.general.NoStartupOrDefaultLibs> + <avr32gcc.linker.general.OmitAllSymbolInformation>false</avr32gcc.linker.general.OmitAllSymbolInformation> + <avr32gcc.linker.general.NoSharedLibraries>false</avr32gcc.linker.general.NoSharedLibraries> + <avr32gcc.linker.libraries.Libraries> + <ListValues> + <Value>newlib_addons-at32ucr2-speed_opt</Value> + <Value>_ucr2_hd_spi_v2.7.0</Value> + <Value>_ucr2_hd_wl_sta_intwpa_v2.7.0</Value> + </ListValues> + </avr32gcc.linker.libraries.Libraries> + <avr32gcc.linker.libraries.LibrarySearchPaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.7.0/UCR2/GCC</Value> + </ListValues> + </avr32gcc.linker.libraries.LibrarySearchPaths> + <avr32gcc.linker.optimization.GarbageCollectUnusedSections>true</avr32gcc.linker.optimization.GarbageCollectUnusedSections> + <avr32gcc.linker.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.linker.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.linker.optimization.EnableFastMath>false</avr32gcc.linker.optimization.EnableFastMath> + <avr32gcc.linker.optimization.GeneratePositionIndependentCode>false</avr32gcc.linker.optimization.GeneratePositionIndependentCode> + <avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection>true</avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection> + <avr32gcc.linker.optimization.AllowDirectReferencesToDataSection>true</avr32gcc.linker.optimization.AllowDirectReferencesToDataSection> + <avr32gcc.assembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.assembler.general.IncludePaths> + <avr32gcc.assembler.general.AnounceVersion>false</avr32gcc.assembler.general.AnounceVersion> + <avr32gcc.assembler.debugging.DebugLevel>Default (-g)</avr32gcc.assembler.debugging.DebugLevel> + <avr32gcc.preprocessingassembler.general.AssemblerFlags>-Wa,-g</avr32gcc.preprocessingassembler.general.AssemblerFlags> + <avr32gcc.preprocessingassembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.preprocessingassembler.general.IncludePaths> + <avr32gcc.preprocessingassembler.general.SuppressWarnings>false</avr32gcc.preprocessingassembler.general.SuppressWarnings> + <avr32gcc.preprocessingassembler.general.AnounceVersion>false</avr32gcc.preprocessingassembler.general.AnounceVersion> + <avr32gcc.preprocessingassembler.debugging.DebugLevel>Default (-Wa,-g)</avr32gcc.preprocessingassembler.debugging.DebugLevel> + </Avr32Gcc> + </ToolchainSettings> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)' == 'Debug_512' "> + <OutputPath>bin\Debug_512\</OutputPath> + <ToolchainSettings> + <Avr32Gcc> + <avr32gcc.common.outputfiles.hex>True</avr32gcc.common.outputfiles.hex> + <avr32gcc.common.outputfiles.lss>True</avr32gcc.common.outputfiles.lss> + <avr32gcc.common.outputfiles.eep>True</avr32gcc.common.outputfiles.eep> + <avr32gcc.common.outputfiles.srec>True</avr32gcc.common.outputfiles.srec> + <avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories>false</avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories> + <avr32gcc.compiler.preprocessor.PreprocessOnly>false</avr32gcc.compiler.preprocessor.PreprocessOnly> + <avr32gcc.compiler.symbols.DefSymbols> + <ListValues> + <Value>BOARD=ARDUINO</Value> + <Value>_APP_DEBUG_</Value> + <Value>_DEBUG_</Value> + <Value>_ASSERT_ENABLE_</Value> + <Value>EXT_BOARD=SPB104</Value> + <Value>WITH_KEY</Value> + <Value>WITH_WPA</Value> + <Value>WITH_NO_DMA</Value> + <Value>LWIP_DEBUG</Value> + <Value>_INFO_DEBUG_=1</Value> + </ListValues> + </avr32gcc.compiler.symbols.DefSymbols> + <avr32gcc.compiler.directories.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD</Value> + </ListValues> + </avr32gcc.compiler.directories.IncludePaths> + <avr32gcc.compiler.optimization.level>Optimize (-O1)</avr32gcc.compiler.optimization.level> + <avr32gcc.compiler.optimization.OtherFlags>-fdata-sections</avr32gcc.compiler.optimization.OtherFlags> + <avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection>true</avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection> + <avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.compiler.optimization.EnableFastMath>false</avr32gcc.compiler.optimization.EnableFastMath> + <avr32gcc.compiler.optimization.GeneratePositionIndependentCode>false</avr32gcc.compiler.optimization.GeneratePositionIndependentCode> + <avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions>true</avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions> + <avr32gcc.compiler.optimization.ForceDoubleWordAlignment>false</avr32gcc.compiler.optimization.ForceDoubleWordAlignment> + <avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool>false</avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool> + <avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing>false</avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing> + <avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData>false</avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData> + <avr32gcc.compiler.optimization.DebugLevel>Maximum (-g3)</avr32gcc.compiler.optimization.DebugLevel> + <avr32gcc.compiler.optimization.GenerateGprofInformation>false</avr32gcc.compiler.optimization.GenerateGprofInformation> + <avr32gcc.compiler.optimization.GenerateProfInformation>false</avr32gcc.compiler.optimization.GenerateProfInformation> + <avr32gcc.compiler.warnings.AllWarnings>true</avr32gcc.compiler.warnings.AllWarnings> + <avr32gcc.compiler.warnings.CheckSyntaxOnly>false</avr32gcc.compiler.warnings.CheckSyntaxOnly> + <avr32gcc.compiler.warnings.Pedantic>false</avr32gcc.compiler.warnings.Pedantic> + <avr32gcc.compiler.warnings.PedanticWarningsAsErrors>false</avr32gcc.compiler.warnings.PedanticWarningsAsErrors> + <avr32gcc.compiler.warnings.InhibitAllWarnings>false</avr32gcc.compiler.warnings.InhibitAllWarnings> + <avr32gcc.compiler.miscellaneous.OtherFlags>-c -fmessage-length=0</avr32gcc.compiler.miscellaneous.OtherFlags> + <avr32gcc.compiler.miscellaneous.SupportAnsiPrograms>false</avr32gcc.compiler.miscellaneous.SupportAnsiPrograms> + <avr32gcc.linker.general.DoNotUseStandardStartFiles>true</avr32gcc.linker.general.DoNotUseStandardStartFiles> + <avr32gcc.linker.general.DoNotUseDefaultLibraries>false</avr32gcc.linker.general.DoNotUseDefaultLibraries> + <avr32gcc.linker.general.NoStartupOrDefaultLibs>false</avr32gcc.linker.general.NoStartupOrDefaultLibs> + <avr32gcc.linker.general.OmitAllSymbolInformation>false</avr32gcc.linker.general.OmitAllSymbolInformation> + <avr32gcc.linker.general.NoSharedLibraries>false</avr32gcc.linker.general.NoSharedLibraries> + <avr32gcc.linker.libraries.Libraries> + <ListValues> + <Value>newlib_addons-at32ucr2-speed_opt</Value> + <Value>_ucr2_hd_spi_standalone_v2.1.1</Value> + <Value>_ucr2_hd_wl_standalone_v2.1.1</Value> + </ListValues> + </avr32gcc.linker.libraries.Libraries> + <avr32gcc.linker.libraries.LibrarySearchPaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.1.1/UCR2/GCC</Value> + </ListValues> + </avr32gcc.linker.libraries.LibrarySearchPaths> + <avr32gcc.linker.optimization.GarbageCollectUnusedSections>true</avr32gcc.linker.optimization.GarbageCollectUnusedSections> + <avr32gcc.linker.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.linker.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.linker.optimization.EnableFastMath>false</avr32gcc.linker.optimization.EnableFastMath> + <avr32gcc.linker.optimization.GeneratePositionIndependentCode>false</avr32gcc.linker.optimization.GeneratePositionIndependentCode> + <avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection>true</avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection> + <avr32gcc.linker.optimization.AllowDirectReferencesToDataSection>true</avr32gcc.linker.optimization.AllowDirectReferencesToDataSection> + <avr32gcc.assembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.assembler.general.IncludePaths> + <avr32gcc.assembler.general.AnounceVersion>false</avr32gcc.assembler.general.AnounceVersion> + <avr32gcc.assembler.debugging.DebugLevel>Default (-g)</avr32gcc.assembler.debugging.DebugLevel> + <avr32gcc.preprocessingassembler.general.AssemblerFlags>-Wa,-g</avr32gcc.preprocessingassembler.general.AssemblerFlags> + <avr32gcc.preprocessingassembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.preprocessingassembler.general.IncludePaths> + <avr32gcc.preprocessingassembler.general.SuppressWarnings>false</avr32gcc.preprocessingassembler.general.SuppressWarnings> + <avr32gcc.preprocessingassembler.general.AnounceVersion>false</avr32gcc.preprocessingassembler.general.AnounceVersion> + <avr32gcc.preprocessingassembler.debugging.DebugLevel>Default (-Wa,-g)</avr32gcc.preprocessingassembler.debugging.DebugLevel> + </Avr32Gcc> + </ToolchainSettings> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)' == 'Release_512' "> + <OutputPath>bin\Release_512\</OutputPath> + <ToolchainSettings> + <Avr32Gcc> + <avr32gcc.common.outputfiles.hex>True</avr32gcc.common.outputfiles.hex> + <avr32gcc.common.outputfiles.lss>True</avr32gcc.common.outputfiles.lss> + <avr32gcc.common.outputfiles.eep>True</avr32gcc.common.outputfiles.eep> + <avr32gcc.common.outputfiles.srec>True</avr32gcc.common.outputfiles.srec> + <avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories>false</avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories> + <avr32gcc.compiler.preprocessor.PreprocessOnly>false</avr32gcc.compiler.preprocessor.PreprocessOnly> + <avr32gcc.compiler.symbols.DefSymbols> + <ListValues> + <Value>BOARD=ARDUINO</Value> + <Value>_ASSERT_ENABLE_</Value> + <Value>EXT_BOARD=SPB104</Value> + <Value>WITH_KEY</Value> + <Value>WITH_WPA</Value> + <Value>WITH_NO_DMA</Value> + <Value>LWIP_DEBUG</Value> + <Value>_INFO_DEBUG_=1</Value> + </ListValues> + </avr32gcc.compiler.symbols.DefSymbols> + <avr32gcc.compiler.directories.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-1.3.2/src/include/ipv4</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/LWIP/lwip-port-1.3.2/HD/if/include</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD</Value> + </ListValues> + </avr32gcc.compiler.directories.IncludePaths> + <avr32gcc.compiler.optimization.OtherFlags>-fdata-sections</avr32gcc.compiler.optimization.OtherFlags> + <avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection>true</avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection> + <avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.compiler.optimization.EnableFastMath>false</avr32gcc.compiler.optimization.EnableFastMath> + <avr32gcc.compiler.optimization.GeneratePositionIndependentCode>false</avr32gcc.compiler.optimization.GeneratePositionIndependentCode> + <avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions>true</avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions> + <avr32gcc.compiler.optimization.ForceDoubleWordAlignment>false</avr32gcc.compiler.optimization.ForceDoubleWordAlignment> + <avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool>false</avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool> + <avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing>false</avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing> + <avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData>false</avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData> + <avr32gcc.compiler.optimization.GenerateGprofInformation>false</avr32gcc.compiler.optimization.GenerateGprofInformation> + <avr32gcc.compiler.optimization.GenerateProfInformation>false</avr32gcc.compiler.optimization.GenerateProfInformation> + <avr32gcc.compiler.warnings.AllWarnings>true</avr32gcc.compiler.warnings.AllWarnings> + <avr32gcc.compiler.warnings.CheckSyntaxOnly>false</avr32gcc.compiler.warnings.CheckSyntaxOnly> + <avr32gcc.compiler.warnings.Pedantic>false</avr32gcc.compiler.warnings.Pedantic> + <avr32gcc.compiler.warnings.PedanticWarningsAsErrors>false</avr32gcc.compiler.warnings.PedanticWarningsAsErrors> + <avr32gcc.compiler.warnings.InhibitAllWarnings>false</avr32gcc.compiler.warnings.InhibitAllWarnings> + <avr32gcc.compiler.miscellaneous.OtherFlags>-c -fmessage-length=0</avr32gcc.compiler.miscellaneous.OtherFlags> + <avr32gcc.compiler.miscellaneous.SupportAnsiPrograms>false</avr32gcc.compiler.miscellaneous.SupportAnsiPrograms> + <avr32gcc.linker.general.DoNotUseStandardStartFiles>true</avr32gcc.linker.general.DoNotUseStandardStartFiles> + <avr32gcc.linker.general.DoNotUseDefaultLibraries>false</avr32gcc.linker.general.DoNotUseDefaultLibraries> + <avr32gcc.linker.general.NoStartupOrDefaultLibs>false</avr32gcc.linker.general.NoStartupOrDefaultLibs> + <avr32gcc.linker.general.OmitAllSymbolInformation>false</avr32gcc.linker.general.OmitAllSymbolInformation> + <avr32gcc.linker.general.NoSharedLibraries>false</avr32gcc.linker.general.NoSharedLibraries> + <avr32gcc.linker.libraries.Libraries> + <ListValues> + <Value>newlib_addons-at32ucr2-speed_opt</Value> + <Value>_ucr2_hd_spi_standalone_v2.1.1</Value> + <Value>_ucr2_hd_wl_standalone_v2.1.1</Value> + </ListValues> + </avr32gcc.linker.libraries.Libraries> + <avr32gcc.linker.libraries.LibrarySearchPaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/WIFI/HD/v2.1.1/UCR2/GCC</Value> + </ListValues> + </avr32gcc.linker.libraries.LibrarySearchPaths> + <avr32gcc.linker.optimization.GarbageCollectUnusedSections>true</avr32gcc.linker.optimization.GarbageCollectUnusedSections> + <avr32gcc.linker.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.linker.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.linker.optimization.EnableFastMath>false</avr32gcc.linker.optimization.EnableFastMath> + <avr32gcc.linker.optimization.GeneratePositionIndependentCode>false</avr32gcc.linker.optimization.GeneratePositionIndependentCode> + <avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection>true</avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection> + <avr32gcc.linker.optimization.AllowDirectReferencesToDataSection>true</avr32gcc.linker.optimization.AllowDirectReferencesToDataSection> + <avr32gcc.assembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.assembler.general.IncludePaths> + <avr32gcc.assembler.general.AnounceVersion>false</avr32gcc.assembler.general.AnounceVersion> + <avr32gcc.preprocessingassembler.general.AssemblerFlags>-Wa,-g</avr32gcc.preprocessingassembler.general.AssemblerFlags> + <avr32gcc.preprocessingassembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PDCA</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/TC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EBI/SMC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/DELAY</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/RTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/EIC</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/CPU/CYCLE_COUNTER</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.preprocessingassembler.general.IncludePaths> + <avr32gcc.preprocessingassembler.general.SuppressWarnings>false</avr32gcc.preprocessingassembler.general.SuppressWarnings> + <avr32gcc.preprocessingassembler.general.AnounceVersion>false</avr32gcc.preprocessingassembler.general.AnounceVersion> + </Avr32Gcc> + </ToolchainSettings> + </PropertyGroup> + <Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Compiler.targets" /> + <ItemGroup> + <Folder Include="src" /> + <Compile Include="src\ard_spi.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ard_spi.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ard_tcp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ard_tcp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ard_utils.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ard_utils.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\avr32_spi.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\board_init.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\board_init.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\cmd_wl.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\cmd_wl.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\CONFIG\conf_access.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\CONFIG\conf_at45dbx.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\console.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\console.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\debug.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\fw_download.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\fw_download_extflash.c"> + <SubType>compile</SubType> + </Compile> + <None Include="src\license.txt"> + <SubType>compile</SubType> + </None> + <Compile Include="src\lwipopts.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\lwip_setup.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\lwip_setup.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\main.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\nvram.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\nvram.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\owl_os.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ping.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ping.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\printf-stdarg.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\printf-stdarg.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx_mem.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\timer.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\timer.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\top_defs.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\trace.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\util.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\util.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\wifi_spi.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\wl_cm.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\wl_cm.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\wl_definitions.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\CONFIG" /> + <Compile Include="src\CONFIG\conf_ebi.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\CONFIG\conf_sd_mmc_spi.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\ASM" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\ASM\trampoline.x"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\BOARDS" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\board.h"> + <SubType>compile</SubType> + </Compile> + <None Include="src\SOFTWARE_FRAMEWORK\BOARDS\board.h.my"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO\arduino.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO\led.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO\led.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\wlap_api.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\wl_api.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\wl_os.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\wl_sdio.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\wl_spi.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx_mem.c"> + <SubType>compile</SubType> + </Compile> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\revision.txt"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR1" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR1\GCC" /> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR1\GCC\lib_ucr1_hd_sdio_v2.7.0.a"> + <SubType>compile</SubType> + </None> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR1\GCC\lib_ucr1_hd_spi_v2.7.0.a"> + <SubType>compile</SubType> + </None> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR1\GCC\lib_ucr1_hd_wl_sta_intwpa_v2.7.0.a"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR2" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR2\GCC" /> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR2\GCC\lib_ucr2_hd_sdio_v2.7.0.a"> + <SubType>compile</SubType> + </None> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR2\GCC\lib_ucr2_hd_spi_v2.7.0.a"> + <SubType>compile</SubType> + </None> + <None Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\WIFI\HD\v2.7.0\UCR2\GCC\lib_ucr2_hd_wl_sta_intwpa_v2.7.0.a"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\CPU" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\CPU\CYCLE_COUNTER" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\CPU\CYCLE_COUNTER\cycle_counter.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\EBI" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\EIC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\EIC\eic.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\EIC\eic.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\FLASHC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\FLASHC\flashc.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\FLASHC\flashc.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\GPIO" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\GPIO\gpio.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\GPIO\gpio.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC\exception.x"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC\intc.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC\intc.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PDCA" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PDCA\pdca.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PDCA\pdca.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\pm.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\pm.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\pm_conf_clocks.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\power_clocks_lib.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\power_clocks_lib.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\RTC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\RTC\rtc.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\RTC\rtc.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\SPI" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\SPI\spi.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\SPI\spi.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\TC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\TC\tc.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\TC\tc.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\USART" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\USART\usart.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\USART\usart.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\DELAY" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\DELAY\delay.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\DELAY\delay.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\dhcp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\dns.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\init.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\mem.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\memp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\netif.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\pbuf.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\raw.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\stats.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\tcp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\tcp_in.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\tcp_out.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\udp.c"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\autoip.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\icmp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\igmp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\inet.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\inet_chksum.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\ip.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\ip_addr.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\core\ipv4\ip_frag.c"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\autoip.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\icmp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\igmp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\inet.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\inet_chksum.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\ip.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\ip_addr.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\ipv4\lwip\ip_frag.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\api.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\api_msg.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\arch.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\debug.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\def.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\dhcp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\dns.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\err.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\init.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\mem.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\memp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\memp_std.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\netbuf.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\netdb.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\netif.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\netifapi.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\opt.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\pbuf.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\raw.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\sio.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\snmp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\snmp_asn1.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\snmp_msg.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\snmp_structs.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\sockets.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\stats.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\sys.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\tcp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\tcpip.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\lwip\udp.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\netif" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\netif\etharp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\netif\loopif.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\netif\ppp_oe.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\include\netif\slipif.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\netif" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\netif\etharp.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.2\src\netif\loopif.c"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD" /> + <None Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\readme.txt"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include\lwipopts.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include\arch" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include\arch\cc.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include\arch\perf.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include\netif" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\include\netif\wlif.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\netif" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-port-1.3.2\HD\if\netif\wlif.c"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY\CTRL_ACCESS" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY\CTRL_ACCESS\ctrl_access.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY\CTRL_ACCESS\ctrl_access.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\compiler.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\conf_isp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\parts.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\debug.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\debug.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\print_funcs.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\print_funcs.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS" /> + <None Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\libnewlib_addons-at32ucr2-speed_opt.a"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_cpu.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_exceptions.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_interrupts.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_io.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_usart.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\0512" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\0512\GCC" /> + <None Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\0512\GCC\link_uc3a0512.lds"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\1256" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\1256\GCC" /> + <None Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\1256\GCC\link_uc3a1256.lds"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\mrepeat.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\preprocessor.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\stringz.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\tpaste.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES\GCC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES\GCC\crt0.x"> + <SubType>compile</SubType> + </Compile> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/libraries/WiFi/extras/wifi_dnld/.cproject b/libraries/WiFi/extras/wifi_dnld/.cproject new file mode 100644 index 000000000..286dad7b9 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/.cproject @@ -0,0 +1,1281 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?> + +<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> +<storageModule moduleId="org.eclipse.cdt.core.settings"> +<cconfiguration id="avr32.managedbuild.config.gnu.exe.debug.618344773"> +<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="avr32.managedbuild.config.gnu.exe.debug.618344773" moduleId="org.eclipse.cdt.core.settings" name="Debug"> +<externalSettings/> +<extensions> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.atmel.avr.toolchain.avr32gcc.elf32-avr32" point="org.eclipse.cdt.core.BinaryParser"/> +<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +</extensions> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<configuration artifactName="wifi_dnld" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="AVR32 Standalone debug configuration" id="avr32.managedbuild.config.gnu.exe.debug.618344773" name="Debug" parent="avr32.managedbuild.config.gnu.exe.debug"> +<folderInfo id="avr32.managedbuild.config.gnu.exe.debug.618344773." name="/" resourcePath=""> +<toolChain id="avr32.managedbuild.toolchain.gnu.exe.debug.874656193" name="32-bit AVR/GNU C/C++ Toolchain" superClass="avr32.managedbuild.toolchain.gnu.exe.debug"> +<targetPlatform id="avr32.managedbuild.target.gnu.platform.exe.debug.909801431" name="%PlatformName.Dbg" superClass="avr32.managedbuild.target.gnu.platform.exe.debug"/> +<builder buildPath="${workspace_loc:/wifi_dnld/Debug}" id="avr32.managedbuild.target.gnu.builder.exe.debug.1715478179" keepEnvironmentInBuildfile="false" name="CDT Internal Builder" superClass="avr32.managedbuild.target.gnu.builder.exe.debug"/> +<tool id="avr32.managedbuild.tool.gnu.archiver.exe.debug.382668879" name="32-bit AVR/GNU Archiver" superClass="avr32.managedbuild.tool.gnu.archiver.exe.debug"/> +<tool id="avr32.managedbuild.tool.gnu.cpp.compiler.exe.debug.1606873657" name="32-bit AVR/GNU C++ Compiler" superClass="avr32.managedbuild.tool.gnu.cpp.compiler.exe.debug"> +<option id="gnu.cpp.compiler.option.optimization.level.181942560" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/> +<option id="gnu.cpp.compiler.option.debugging.level.333188277" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/> +<option id="avr32.cpp.compiler.option.mcu.853647015" name="Microcontroller Unit" superClass="avr32.cpp.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.compiler.option.include.paths.1415771519" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +</option> +<option id="avr32.cpp.compiler.option.flashvault.1838882229" name="Enable FlashVault support" superClass="avr32.cpp.compiler.option.flashvault" value="false" valueType="boolean"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.compiler.exe.debug.468457615" name="32-bit AVR/GNU C Compiler" superClass="avr32.managedbuild.tool.gnu.c.compiler.exe.debug"> +<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.26008628" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/> +<option id="gnu.c.compiler.option.debugging.level.259665554" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> +<option id="avr32.c.compiler.option.mcu.1201151349" name="Microcontroller Unit" superClass="avr32.c.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.compiler.option.optimization.flags.686407260" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections" valueType="string"/> +<option id="gnu.c.compiler.option.preprocessor.def.symbols.2029598871" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> +<listOptionValue builtIn="false" value="BOARD=ARDUINO"/> +</option> +<option id="gnu.c.compiler.option.include.paths.1842586158" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src"/> +</option> +<option id="avr32.c.compiler.option.flashvault.1772536800" name="Enable FlashVault support" superClass="avr32.c.compiler.option.flashvault" value="false" valueType="boolean"/> +<inputType id="avr32.managedbuild.tool.gnu.c.compiler.input.1816670662" superClass="avr32.managedbuild.tool.gnu.c.compiler.input"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.linker.exe.debug.681608330" name="32-bit AVR/GNU C Linker" superClass="avr32.managedbuild.tool.gnu.c.linker.exe.debug"> +<option id="avr32.c.linker.option.mcu.406721254" name="Microcontroller Unit" superClass="avr32.c.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.link.option.nostart.834549918" name="Do not use standard start files (-nostartfiles)" superClass="gnu.c.link.option.nostart" value="true" valueType="boolean"/> +<option id="gnu.c.link.option.ldflags.1902664612" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/> +<option id="gnu.c.link.option.paths.450454804" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<option id="gnu.c.link.option.libs.767799431" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.1957795482" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> +<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> +<additionalInput kind="additionalinput" paths="$(LIBS)"/> +</inputType> +</tool> +<tool id="avr32.managedbuild.tool.gnu.cpp.linker.exe.debug.2130683587" name="32-bit AVR/GNU C++ Linker" superClass="avr32.managedbuild.tool.gnu.cpp.linker.exe.debug"> +<option id="avr32.cpp.linker.option.mcu.1314062001" name="Microcontroller Unit" superClass="avr32.cpp.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.link.option.libs.418456932" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<option id="gnu.cpp.link.option.paths.2113734099" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.assembler.exe.debug.1502006803" name="32-bit AVR/GNU Assembler" superClass="avr32.managedbuild.tool.gnu.assembler.exe.debug"> +<option id="avr32.both.asm.option.debugging.level.612232148" name="Debug Level" superClass="avr32.both.asm.option.debugging.level" value="avr32.both.asm.debugging.level.max" valueType="enumerated"/> +<option id="avr32.both.asm.option.mcu.211813638" name="Microcontroller Unit" superClass="avr32.both.asm.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.both.asm.option.include.paths.1549891082" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.preprocessor.exe.debug.1062481241" name="32-bit AVR/GNU Preprocessing Assembler" superClass="avr32.managedbuild.tool.gnu.preprocessor.exe.debug"> +<option id="avr32.both.preprocessor.option.debugging.level.863609472" name="Debug Level" superClass="avr32.both.preprocessor.option.debugging.level" value="avr32.both.preprocessor.debugging.level.max" valueType="enumerated"/> +<option id="avr32.both.preprocessor.option.mcu.565918885" name="Microcontroller Unit" superClass="avr32.both.preprocessor.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="avr32.both.preprocessor.option.flags.1172892380" name="Assembler flags" superClass="avr32.both.preprocessor.option.flags" value="-Wa,-g" valueType="string"/> +<option id="avr32.both.preprocessor.option.paths.320260505" name="Include paths (-I)" superClass="avr32.both.preprocessor.option.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<inputType id="avr32.managedbuild.tool.gnu.preprocessor.input.609982404" superClass="avr32.managedbuild.tool.gnu.preprocessor.input"/> +</tool> +</toolChain> +</folderInfo> +<sourceEntries> +<entry excluding="SOFTWARE_FRAMEWORK/BOARDS/EVK1105" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/> +</sourceEntries> +</configuration> +</storageModule> +<storageModule moduleId="scannerConfiguration"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.657878227;avr32.managedbuild.config.gnu.exe.release.657878227.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1756143675;avr32.managedbuild.tool.gnu.c.compiler.input.1828784431"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.618344773;avr32.managedbuild.config.gnu.exe.debug.618344773.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.468457615;avr32.managedbuild.tool.gnu.c.compiler.input.1816670662"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +</cconfiguration> +<cconfiguration id="avr32.managedbuild.config.gnu.exe.release.657878227"> +<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="avr32.managedbuild.config.gnu.exe.release.657878227" moduleId="org.eclipse.cdt.core.settings" name="Release"> +<externalSettings/> +<extensions> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.atmel.avr.toolchain.avr32gcc.elf32-avr32" point="org.eclipse.cdt.core.BinaryParser"/> +<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +</extensions> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<configuration artifactName="wifi_dnld" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="AVR32 Standalone release configuration" id="avr32.managedbuild.config.gnu.exe.release.657878227" name="Release" parent="avr32.managedbuild.config.gnu.exe.release"> +<folderInfo id="avr32.managedbuild.config.gnu.exe.release.657878227." name="/" resourcePath=""> +<toolChain id="avr32.managedbuild.toolchain.gnu.exe.release.722848766" name="32-bit AVR/GNU C/C++ Toolchain" superClass="avr32.managedbuild.toolchain.gnu.exe.release"> +<targetPlatform id="avr32.managedbuild.target.gnu.platform.exe.release.787333741" name="%PlatformName.Dbg" superClass="avr32.managedbuild.target.gnu.platform.exe.release"/> +<builder buildPath="${workspace_loc:/wifi_dnld/Release}" id="avr32.managedbuild.target.gnu.builder.exe.release.1399107203" keepEnvironmentInBuildfile="false" name="CDT Internal Builder" superClass="avr32.managedbuild.target.gnu.builder.exe.release"/> +<tool id="avr32.managedbuild.tool.gnu.archiver.exe.release.1720225360" name="32-bit AVR/GNU Archiver" superClass="avr32.managedbuild.tool.gnu.archiver.exe.release"/> +<tool id="avr32.managedbuild.tool.gnu.cpp.compiler.exe.release.875278510" name="32-bit AVR/GNU C++ Compiler" superClass="avr32.managedbuild.tool.gnu.cpp.compiler.exe.release"> +<option id="gnu.cpp.compiler.option.optimization.level.183875732" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/> +<option id="gnu.cpp.compiler.option.debugging.level.2087046952" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/> +<option defaultValue="gnu.c.optimization.level.most" id="avr32.cpp.compiler.option.optimization.level.release.1669925035" name="Optimization Level" superClass="avr32.cpp.compiler.option.optimization.level.release" valueType="enumerated"/> +<option id="avr32.cpp.compiler.option.mcu.245744969" name="Microcontroller Unit" superClass="avr32.cpp.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.compiler.option.include.paths.2014943719" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +</option> +<option id="avr32.cpp.compiler.option.flashvault.275481591" name="Enable FlashVault support" superClass="avr32.cpp.compiler.option.flashvault" value="false" valueType="boolean"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.compiler.exe.release.1756143675" name="32-bit AVR/GNU C Compiler" superClass="avr32.managedbuild.tool.gnu.c.compiler.exe.release"> +<option defaultValue="gnu.c.optimization.level.most" id="avr32.c.compiler.option.optimization.level.release.1026762119" name="Optimization Level" superClass="avr32.c.compiler.option.optimization.level.release" valueType="enumerated"/> +<option id="gnu.c.compiler.option.debugging.level.1638027682" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> +<option id="avr32.c.compiler.option.mcu.1551179967" name="Microcontroller Unit" superClass="avr32.c.compiler.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.compiler.option.optimization.flags.1564845329" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections" valueType="string"/> +<option id="gnu.c.compiler.option.preprocessor.def.symbols.687766725" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> +<listOptionValue builtIn="false" value="BOARD=ARDUINO"/> +</option> +<option id="gnu.c.compiler.option.include.paths.1279594844" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +<listOptionValue builtIn="false" value="../src"/> +</option> +<option id="avr32.c.compiler.option.flashvault.1560264128" name="Enable FlashVault support" superClass="avr32.c.compiler.option.flashvault" value="false" valueType="boolean"/> +<inputType id="avr32.managedbuild.tool.gnu.c.compiler.input.1828784431" superClass="avr32.managedbuild.tool.gnu.c.compiler.input"/> +</tool> +<tool id="avr32.managedbuild.tool.gnu.c.linker.exe.release.1281932637" name="32-bit AVR/GNU C Linker" superClass="avr32.managedbuild.tool.gnu.c.linker.exe.release"> +<option id="avr32.c.linker.option.mcu.1595174478" name="Microcontroller Unit" superClass="avr32.c.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.c.link.option.nostart.901647440" name="Do not use standard start files (-nostartfiles)" superClass="gnu.c.link.option.nostart" value="true" valueType="boolean"/> +<option id="gnu.c.link.option.ldflags.183335601" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/> +<option id="gnu.c.link.option.paths.583164556" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<option id="gnu.c.link.option.libs.217934189" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.900000786" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> +<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> +<additionalInput kind="additionalinput" paths="$(LIBS)"/> +</inputType> +</tool> +<tool id="avr32.managedbuild.tool.gnu.cpp.linker.exe.release.1544350382" name="32-bit AVR/GNU C++ Linker" superClass="avr32.managedbuild.tool.gnu.cpp.linker.exe.release"> +<option id="avr32.cpp.linker.option.mcu.2135785353" name="Microcontroller Unit" superClass="avr32.cpp.linker.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.cpp.link.option.libs.1394437968" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> +<listOptionValue builtIn="false" value="newlib_addons-at32ucr2-speed_opt"/> +</option> +<option id="gnu.cpp.link.option.paths.1503002133" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.assembler.exe.release.2145926358" name="32-bit AVR/GNU Assembler" superClass="avr32.managedbuild.tool.gnu.assembler.exe.release"> +<option id="avr32.both.asm.option.debugging.level.1675736685" name="Debug Level" superClass="avr32.both.asm.option.debugging.level" value="avr32.both.asm.debugging.level.none" valueType="enumerated"/> +<option id="avr32.both.asm.option.mcu.1210222151" name="Microcontroller Unit" superClass="avr32.both.asm.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="gnu.both.asm.option.include.paths.1743520043" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +</tool> +<tool id="avr32.managedbuild.tool.gnu.preprocessor.exe.release.420525713" name="32-bit AVR/GNU Preprocessing Assembler" superClass="avr32.managedbuild.tool.gnu.preprocessor.exe.release"> +<option id="avr32.both.preprocessor.option.debugging.level.1011519699" name="Debug Level" superClass="avr32.both.preprocessor.option.debugging.level" value="avr32.both.preprocessor.debugging.level.none" valueType="enumerated"/> +<option id="avr32.both.preprocessor.option.mcu.612156450" name="Microcontroller Unit" superClass="avr32.both.preprocessor.option.mcu" value="-mpart=uc3a1256" valueType="string"/> +<option id="avr32.both.preprocessor.option.flags.1159687922" name="Assembler flags" superClass="avr32.both.preprocessor.option.flags" value="-Wa,-g" valueType="string"/> +<option id="avr32.both.preprocessor.option.paths.1457315047" name="Include paths (-I)" superClass="avr32.both.preprocessor.option.paths" valueType="includePath"> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS"/> +<listOptionValue builtIn="false" value="../src/CONFIG"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/USART"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/PM"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/UTILS"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC"/> +<listOptionValue builtIn="false" value="../src/SOFTWARE_FRAMEWORK/BOARDS"/> +</option> +<inputType id="avr32.managedbuild.tool.gnu.preprocessor.input.2082742376" superClass="avr32.managedbuild.tool.gnu.preprocessor.input"/> +</tool> +</toolChain> +</folderInfo> +<sourceEntries> +<entry excluding="SOFTWARE_FRAMEWORK/BOARDS/EVK1105" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/> +</sourceEntries> +</configuration> +</storageModule> +<storageModule moduleId="scannerConfiguration"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.release.657878227;avr32.managedbuild.config.gnu.exe.release.657878227.;avr32.managedbuild.tool.gnu.c.compiler.exe.release.1756143675;avr32.managedbuild.tool.gnu.c.compiler.input.1828784431"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +<scannerConfigBuildInfo instanceId="avr32.managedbuild.config.gnu.exe.debug.618344773;avr32.managedbuild.config.gnu.exe.debug.618344773.;avr32.managedbuild.tool.gnu.c.compiler.exe.debug.468457615;avr32.managedbuild.tool.gnu.c.compiler.input.1816670662"> +<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"/> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32ManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32StandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="com.atmel.avr32.debug.AVR32LinuxStandardMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-mpart=${part} -E -P -v -dD ${plugin_state_location}/${specs_file}" command="avr32-linux-g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="makefileGenerator"> +<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +<buildOutputProvider> +<openAction enabled="true" filePath=""/> +<parser enabled="true"/> +</buildOutputProvider> +<scannerInfoProvider id="specsFile"> +<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/> +<parser enabled="true"/> +</scannerInfoProvider> +</profile> +</scannerConfigBuildInfo> +</storageModule> +<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +</cconfiguration> +</storageModule> +<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +<project id="wifi_dnld.avr32.managedbuild.target.gnu.exe_2.0.1.570559459" name="32-bit AVR/GNU Executable" projectType="avr32.managedbuild.target.gnu.exe_2.0.1"/> +</storageModule> +</cproject> diff --git a/libraries/WiFi/extras/wifi_dnld/.project b/libraries/WiFi/extras/wifi_dnld/.project new file mode 100644 index 000000000..aa3047b51 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/.project @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>wifi_dnld</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <triggers>clean,full,incremental,</triggers> + <arguments> + <dictionary> + <key>?name?</key> + <value></value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.append_environment</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildArguments</key> + <value></value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildCommand</key> + <value>make</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildLocation</key> + <value>${workspace_loc:/wifi_dnld/Debug}</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.contents</key> + <value>org.eclipse.cdt.make.core.activeConfigSettings</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableAutoBuild</key> + <value>false</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableCleanBuild</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableFullBuild</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.stopOnError</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key> + <value>true</value> + </dictionary> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>com.atmel.avr32.core.nature</nature> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> + </natures> +</projectDescription> diff --git a/libraries/WiFi/extras/wifi_dnld/Release/wifi_dnld.elf b/libraries/WiFi/extras/wifi_dnld/Release/wifi_dnld.elf new file mode 100644 index 0000000000000000000000000000000000000000..11ec3ddc7305bca3222a211559170005c6c2f878 GIT binary patch literal 182489 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 literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_access.h b/libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_access.h new file mode 100644 index 000000000..23e9b3450 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_access.h @@ -0,0 +1,170 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Memory access control configuration file. + * + * This file contains the possible external configuration of the memory access + * control. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_ACCESS_H_ +#define _CONF_ACCESS_H_ + +#include "compiler.h" +#include "board.h" + + +/*! \name Activation of Logical Unit Numbers + */ +//! @{ +#define LUN_0 DISABLE //!< On-Chip Virtual Memory. +#define LUN_1 ENABLE //!< AT45DBX Data Flash. +#define LUN_2 DISABLE //!< SD/MMC Card over SPI. +#define LUN_3 DISABLE +#define LUN_4 DISABLE +#define LUN_5 DISABLE +#define LUN_6 DISABLE +#define LUN_7 DISABLE +#define LUN_USB DISABLE //!< Host Mass-Storage Memory. +//! @} + +/*! \name LUN 0 Definitions + */ +//! @{ +#define VIRTUAL_MEM LUN_0 +#define LUN_ID_VIRTUAL_MEM LUN_ID_0 +#define LUN_0_INCLUDE "virtual_mem.h" +#define Lun_0_test_unit_ready virtual_test_unit_ready +#define Lun_0_read_capacity virtual_read_capacity +#define Lun_0_wr_protect virtual_wr_protect +#define Lun_0_removal virtual_removal +#define Lun_0_usb_read_10 virtual_usb_read_10 +#define Lun_0_usb_write_10 virtual_usb_write_10 +#define Lun_0_mem_2_ram virtual_mem_2_ram +#define Lun_0_ram_2_mem virtual_ram_2_mem +#define LUN_0_NAME "\"On-Chip Virtual Memory\"" +//! @} + +/*! \name LUN 1 Definitions + */ +//! @{ +#define AT45DBX_MEM LUN_1 +#define LUN_ID_AT45DBX_MEM LUN_ID_1 +#define LUN_1_INCLUDE "at45dbx_mem.h" +#define Lun_1_test_unit_ready at45dbx_test_unit_ready +#define Lun_1_read_capacity at45dbx_read_capacity +#define Lun_1_wr_protect at45dbx_wr_protect +#define Lun_1_removal at45dbx_removal +#define Lun_1_usb_read_10 at45dbx_usb_read_10 +#define Lun_1_usb_write_10 at45dbx_usb_write_10 +#define Lun_1_mem_2_ram at45dbx_df_2_ram +#define Lun_1_ram_2_mem at45dbx_ram_2_df +#define LUN_1_NAME "\"AT45DBX Data Flash\"" +//! @} + +/*! \name LUN 2 Definitions + */ +//! @{ +#define SD_MMC_SPI_MEM LUN_2 +#define LUN_ID_SD_MMC_SPI_MEM LUN_ID_2 +#define LUN_2_INCLUDE "sd_mmc_spi_mem.h" +#define Lun_2_test_unit_ready sd_mmc_spi_test_unit_ready +#define Lun_2_read_capacity sd_mmc_spi_read_capacity +#define Lun_2_wr_protect sd_mmc_spi_wr_protect +#define Lun_2_removal sd_mmc_spi_removal +#define Lun_2_usb_read_10 sd_mmc_spi_usb_read_10 +#define Lun_2_usb_write_10 sd_mmc_spi_usb_write_10 +#define Lun_2_mem_2_ram sd_mmc_spi_mem_2_ram +#define Lun_2_ram_2_mem sd_mmc_spi_ram_2_mem +#define LUN_2_NAME "\"SD/MMC Card over SPI\"" +//! @} + +/*! \name USB LUNs Definitions + */ +//! @{ +#define MEM_USB LUN_USB +#define LUN_ID_MEM_USB LUN_ID_USB +#define LUN_USB_INCLUDE "host_mem.h" +#define Lun_usb_test_unit_ready(lun) host_test_unit_ready(lun) +#define Lun_usb_read_capacity(lun, nb_sect) host_read_capacity(lun, nb_sect) +#define Lun_usb_read_sector_size(lun) host_read_sector_size(lun) +#define Lun_usb_wr_protect(lun) host_wr_protect(lun) +#define Lun_usb_removal() host_removal() +#define Lun_usb_mem_2_ram(addr, ram) host_read_10_ram(addr, ram) +#define Lun_usb_ram_2_mem(addr, ram) host_write_10_ram(addr, ram) +#define LUN_USB_NAME "\"Host Mass-Storage Memory\"" +//! @} + +/*! \name Actions Associated with Memory Accesses + * + * Write here the action to associate with each memory access. + * + * \warning Be careful not to waste time in order not to disturb the functions. + */ +//! @{ +#define memory_start_read_action(nb_sectors) +#define memory_stop_read_action() +#define memory_start_write_action(nb_sectors) +#define memory_stop_write_action() +//! @} + +/*! \name Activation of Interface Features + */ +//! @{ +#define ACCESS_USB DISABLED //!< MEM <-> USB interface. +#define ACCESS_MEM_TO_RAM ENABLED //!< MEM <-> RAM interface. +#define ACCESS_STREAM DISABLED //!< Streaming MEM <-> MEM interface. +#define ACCESS_STREAM_RECORD DISABLED //!< Streaming MEM <-> MEM interface in record mode. +#define ACCESS_MEM_TO_MEM DISABLED //!< MEM <-> MEM interface. +#define ACCESS_CODEC DISABLED //!< Codec interface. +//! @} + +/*! \name Specific Options for Access Control + */ +//! @{ +#define GLOBAL_WR_PROTECT DISABLED //!< Management of a global write protection. +//! @} + + +#endif // _CONF_ACCESS_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_at45dbx.h b/libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_at45dbx.h new file mode 100644 index 000000000..3280e4fc1 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/CONFIG/conf_at45dbx.h @@ -0,0 +1,83 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT45DBX configuration file. + * + * This file contains the possible external configuration of the AT45DBX. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_AT45DBX_H_ +#define _CONF_AT45DBX_H_ + + +#include "conf_access.h" + +#if AT45DBX_MEM == DISABLE + #error conf_at45dbx.h is #included although AT45DBX_MEM is disabled +#endif + + +#include "at45dbx.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +//! Size of AT45DBX data flash memories to manage. +#define AT45DBX_MEM_SIZE AT45DBX_1MB + +//! Number of AT45DBX components to manage. +#define AT45DBX_MEM_CNT 1 + +//! First chip select used by AT45DBX components on the SPI module instance. +//! AT45DBX_SPI_NPCS0_PIN always corresponds to this first NPCS, whatever it is. +#define AT45DBX_SPI_FIRST_NPCS AT45DBX_SPI_NPCS + +//! SPI master speed in Hz. +#define AT45DBX_SPI_MASTER_SPEED 12000000 + +//! Number of bits in each SPI transfer. +#define AT45DBX_SPI_BITS 8 + + +#endif // _CONF_AT45DBX_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/Doc/SPB104 product brief.pdf b/libraries/WiFi/extras/wifi_dnld/src/Doc/SPB104 product brief.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8705cb148e29ec8e2ed80499f08a09bfa7ecc126 GIT binary patch literal 760252 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%0DwHdrSVc-t(xQ-%jPrA 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 z%0Dfv4I@2mb{qdd%2}RPlgb1xxjYT!`(E24Sml(=9e_w&*GxD4uu>M3y7@S@s0)%W zwLg-wme_I}3Jc1I-XwTyDB`anocyT2J5$Bto}H0BZobhSqw-n*PlGede;aAPI@lUH z8yY)Me|0dow*4w5LGx)Nb}-g=GPku6(|0na7UN+70Js5MENsjy%v|iO02V3$fa;S= z&erIEW>7YFvNEQYGdFawb+k2cB383?Fd}9kR{AQ!3}7R+`<G%TVgm<rV-sCbabhx7 zMk8B8xBt>_``=w6Hgj^a<6&ZQb#-O5`>UIFMkb7gw$@Cayu!{-W}mF0`VLma5{$&+ zR;Fe&0s_W1Mt>Qh-5iWf-~hyI%y6H{mjC-j%)!pi%1&%T{4d()Zvf|Ka^+tyVw?Ym z_L=tyVEYH{FFwGho&MkX*x6aw|0(-dJM%we0nD5%9BluTWo2ez{X3158NkT}_y>)h z^;7ZRX&h|KT%4SLr?InhvT=Ma>%aGp6Tr>J$@LE!GZ#1DAF`i%S-3y#_J5OQV`Ka0 zI6miq`9H_O!NT&7{&51hxVisB2Qz^AAAMnG=lE+Q{7vs)w7+}`|K69sXdM5baj<c4 zvHgcE3nw@8-(~-rd#-=1$6xEl{*SrhVB=z8{)a3F8z<nOYxJr2Kj!Z*8tXsy#$Pm! zf6)G#mw)anPUg>T@J~Kw?$4w4_i=oBOE_5nInST_81T<M1mI@j{!bb=%RlDebIsYg z{zEU|^J(F~^*TA|fBJYFK3zG)OiJb+#-Hbim`Tyr)`|GDbHs|oOwu+cw#0w^mneRE zkHm<z_{5pHSviH-L`As7S=l*RL^(vbL`1kbgqelK*_pXmMFsx<Ike#f1mGN<^c|f3 Ub$CC|BFm@8iGo60K?3f70gym+#Q*>R literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifi_dnld/src/Doc/gettingstarted.pdf b/libraries/WiFi/extras/wifi_dnld/src/Doc/gettingstarted.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7c37693b51441f56f6fbb858c6eb655e52609fca GIT binary patch literal 701930 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%0D&hDPn` zhw$>ct^#m*KB4jUFEOc5BUv1AAY`-BdHEgdUAmF>B7ptA&!p#{FP<y9M{rwaN2C&p zoXQ=gDMvz`G^83-imh~q*c%E7B+Y%(zA1fiyr+I$rO|(myGMKzviAF~5x2}@eeTK9 zVV2i56D~jt!(LqnCLM6Zh%z;mowvGnGo)RS?bvyMid}m$KGbe&mPq}RVb##Uh%>p= zvyU6GSmIgmK3DRAZGz@1{`%1W$f`Eea>&`>RQArOH9p{(ZCm=9uHw7JPtyc3&(Cr| z|5#0)!MC#MRiFh@d!nD1*^-!Agky<==wtTS(~i8HF$F@|b6MF9Uep~b-OZeo$C=^V zr$N4cCQ#W;yEFymrjXm+1OH6g0%Ah5g}kDom$kZ0fJqSszFHU^R`D;Sd^7LcVc{oC zVKB<%YB@Yi$gYE~X`J!oPAg~f_vdRfc77KkCz~~s##EtRYaU)u{5(z$GfSyn$4u)? znKMkTM_BK{W(ZC?0`Diu>MuQavZehOML682>>;$MKEs7AzJ2doCTP1xPTwD5bJ1hg ztTMopS8n@hFJMH^$Aovp@Mnt)>r~&k$vYt>8A7;tj9=^szY@j*-5`AYqW69~f6&sa z<v87!dYV>F8#`f3%>*E8;&it(6N>%QO?64N=%{3?lkQ+1AEYasVtYaJ5&OaJ`=I&T zw%D%LjAiWNm@nYKVi5LxFCCB@yOemjhP@eZ)_#X~|3JK@((`YF^Z`i>l+|7}6qd$B z&=v6su@tw6VraW%^6=%7Bddh+jA<^_s6j0A{aDV$^mM3}x`@2RR+V;`2b6HCU_YE) zboJ)iX~u_@?37x6=bU<El>x+m-4uDCq%S}5Hax0<=W=tn#E|B>1xCDywdMA_&<M*) zEpMuvUU!497v8x~Cg<s-N2diC@uO3kp#9|P7IIRY0BetGJp~=7Cm=?G511GJWnL<b ztgu4w8~=Cck?01ik!5A_mmd=vOLe+-{nF+q;^303{4kAdo|g*1)-GYkouPk-EdY_z zt$AKR%unThXm@v}u3@R}1_J=vVadINZ;$a6^eZSuZ7|bu5zlu4{34%K0vTk3Rz8+- z0Jpt!+%Fbyvl@+9M{y?8<vmQ&k?V~bGX$|y9w2R4zIVb!gGM(8%%wg%r?;1f7w)dz zIE^PD(&-cs*U5DXgWH;Rh*pYX+}XheIaZ0c;zbSa{xRi(90zQ<zO$C61Q*?m9Lgh_ z=e#5rNc0vuhttKrFunsic|qQStAp?qWxYh)$aH#mqce_rZ4fvC`EeLKY<8J_IGgCs zwC7ErnuP7{5HJC9g0P~%xeEL?Ymk=7xz;NWEjb=iYr^MT|B3}6v`;HDDu|uwJrm^! znEpa_@O?fJobG9kR>nOUH$HA8xZEHr%|5s~SR%~k;+&YaKl<OoS?0v9b6w^V>o|Cr zS45B3d_p}+>A>o=K)4XQ#~Ng_Tjbx>+_G&1j+xA^P1}{2qI7$wk+RFW_D{|abvhd| z#jZc#cdF_9VC_845P96dH}o3Enc6}&9ba{no>V`U<u9ZWuzgP=CY6v(^|&YMR~D)^ zA-t#EIQBm@zW@d7&)t63AMt>DfKq+JeW<t6W+2|3l<^k2SLi+xAo4m<6zvrJiN-IM z8jT8SNjLq;HzZO@x41&s%2IFp<*Pw362QlEhO5$wZb&ux&ikM&(r04qBL5?CWC?uE z4pgX`qRqf-paEMMQDxY$*V=pn(ydMFz7$PQcBel!IfBMJQ&bi%=CdP~s>RP+?i(u~ zdkvWez8YF(_85bTOsn6!Rh}LklLdk(KlfQ3G&ds4Z9cGHy_GQCOKZN^0dop3d3R){ zODBJJSelqRM!`H-V-M?M;`Nsvq`8Vklu98ybej?%%^W_5g&g}xc@akEYT;?I34Av8 z?UowLo*@wGc{tU(WJ-(-O0tc({8<$dYf)i^g4134>>YQCti^7n)3PiFXaW5KaC`@3 z5N}EQDUW8Fy|G2F-QO%;o+f!*Qj5D`ek3<je&}SgAU)t^;4%Zcb}_vA;!@9#{Jtk_ z$Feq<c_(xa<@zBasaI;9tsQI6EY_R@CnMXs*nfy`(Xf2}yc8X`=Uf$J4NqGm;;$|b z@5~=Kd!6=4)HYe9d&tC6y(qm&S}(I#+zpk5ZaH23C26vlJ3$i<Q0p=9MLD1#1yJP^ zS_!>K9B+U_&VhgzomI<^h@7bgo47_!fthWnhS!&X?V6ruyh6LnkzB@b3x}=#mKV2> zkFkx_HZ6^;2=zIilOCGvF@7xHGooahCDI8IVWH#PAIvkrP2&TKf5_G|%*_{KwXrd- z>{LQcAhKxrJB@#8XHiVL>xuJo9(<;yhR$L(<@<GaafUot(e>Nu&1b;8W3N>+8fUXf zr#dW&t=~H_MH#jtlHA;IW-qg+kq6XUf-SRk90d1|o*_P({n4vc=}F7O7c1q;Ytz{( zHq{F?wuf6ab)JNW9U3PK(R67CW06@#2|TBI&S*>ZzJ}8cYW04P*JCi;j<@kSR6VnC zr*Tt+B^_tFKSMQNkImU%5Ld~~W_QFv2T$*D8yF;Y;&iqT^(>&8Cps2cv7NtpmR*6y zuwG`Mq&jYR{ez>mhg9(0A$7wRKbpRK;L^{EsRsM2^@;OF?~&xl($G`BqLAmOIxD<8 zqm`s;mvp7%tCsCEZVjMwSCw0Px2#kt7LqfuBXOZxm0tTwc4>Au>*g5{u}E^5he(EH z`^>!kMpj%87wCLneAje`FlEf9E|WQOUhB!a<6c@6a>4A1_h#C;Fh}M}XC)@3?)C74 z&Maq@r7;l6Si~HQU}kuM`++^{H((8uJ*ByBX6>Xg$fwVAR+c?#s)Wy)K1=F#b;g?b z((G=n#yOtO7~zajYZ7|_t=e5s+yheX@4@f@p#{Jowla(>PHh*9(1LIBdAUM6c;x_; z-RqeW)u4NXUa8jh8z4s?(Q@d<IR>WpZBd%+q&fMETVp4idGm6t>{i;&lASsX$a1Q= zxj*LB=k4OM>4dHcUs#rUP|OL7?%_CbunTEfJ~Ib*ap`=Dr4=`i$IdM8+u0}o8AXBq zZj&CLB_~e0O#Iu~2E!v+EbE`rFfNJRwEMxqRED{CCl^a}9EVxS&CT&7PSs%4H2T3- z4A*c6fm4hd$1xtzRvI5@JBed7$cb$RZm;`&uo6Ro*JE4x_XaRLPVmVjrqiU>Qx6vr zbbPi-GD-_atczh|CEilUIGBskvEyy8BZwB~c&NQO9nNI}j?~%m-{AqS5cKL#z~LkY zd~fao0ifHYH{*xEy#3O8oHu8I9MHqW%aJ<CfkO<4g?L5X?~_5gwt8V(`+ndSgT(H; zvWoi2bRBa%WYroB1M$7Ko^*`JV|LgcLT@^T#Rz(=E@XOQc2Z+lK3$=Ef_4JBj5=%T z++rTt9&&HGhkw5KfcdQxcXog?KVPB10T)mQJ~2MVpDuC#xwL({l)RF>vaI5~tGx?9 zboH$2^{YNjfOpoY{fhJYmS42MKGq#K<HN{!HP#okH6qA7hMo0w2g5W3JO-Wh4wT9G z)I(4QaWRx3;~~^{hw@AEF1lpOG|EwF$V*5|M<&7`5hV9D`J&mQPQ%mj*_2Mr)ALz@ zCzyhg0@F^h(-(OsT^eVrQ+8dBd-XED8WMVp>Ry7+uc0&I=4!ZxZF}8a>7Xh`z@W3~ z#w@ypeS5&&>cEGLL;UIhV@k`*yZvT)xJN~C=q@ihkG)%BtAO~hBPNgCcmB!3N#~$+ zDrHzMi-6sCeKY)K;TW6klS%y4WZ8ln+e|)Zw3Or5{A^$PkBj|u&^7$jr{M|M*cyG# zwfRq4!56T(Li(KJRrKkwUAbKDVk>oEGS#)<uHmGG$6$5UH9V2|ntxM&%x~CP*><_F zo(<&3F5TbXEZs*xNZgVgZpeJK-YjSpv2AgWblbcd%ytp%;#Bv(Nft!L>I+jMJ2psD zWOVaNUz!o|6!re0(ocJ;#FlUT)qT|;^LiGX7bbP-*UK1=XNJZ?9PWYeXDd<;ZP%1$ z(H&<?Jm$<--yB2V+>0@c@}@1DTb`2o&&;k;G`A8*<0jG9EXZJ$<a20Q!s0cKU@6XT zy_*RBZ7K1JYyYI#vZ<$^C2G!<MLY3pIhPC_Wb_@JMhW~!)inGH{>jqpI?_c=G||$p zz|y-3d8(aIlpox?dKOLd3!bA3o<k_l;GK4gfpQ82FEg>5tTY#^EfhLn<zICMcc5HX zzPQc|dtc{#widHL<`hsAIibw=AdfmmG}nczr)ShrmzJwdpQbIL{A8NbeM5%s5$H<v zjG4NAFuv(fPi-3k6}YoT-=$2}e&l;|Mcp3Jj;BG4`$0TY)OIHiy})Aw76L#5BGXX& zX%PD}VPLFQz43its;JkafY-?B1Blt4LeY<L>^B;SH>FeW+;OFU)N%(F&czwuP)DQ% zRTwdp11l#h@-dI0%1w`<lG}szAlLjkdY8mH(GH8jiidrhUn1HdsE&02Ru>)1AGJU= zJ)@nP_b{K*7t2YEtuw_(u15+-MlHm@?r!ls$@H#aZ39$eK3hbhX{|+Db;_GQ3vUd? z?Ma(*R7fo2%H<}V5sE}CHS!`XHSx@M@Wz2@f-;?Cx@hGVra0vxYeyXW+hlfVDL2?& zQB>PnpE)ioTIY1+C=Ju_e=F}*$xKpOBLB9mYsqxC3~Pyqb~SBlMy7K`K(bJho|xLP zVBIvkYyCoFSzveUyxc}^Y+cw8mE5+q<G|u@!qVj3CCbMH=DWq?dxUk0oNgEZ8DE?R zc><plfWP)XPhg$@x%Kk|WXi#dNd_XM(PQOakM<!_eoG3ura~n}D{)6dL)#brCQ3zy z3c-f%K!)tWh>-blPM;{xu7N4KhM5ovwkU+Ah)g6SVoO6W9(5O_L(q^-7C|}^^*F5g zPW}DEqmcPl4Nax2l~XS}?!LT`x~(v?Ow3^)Qh^Ah_ly4b8h#<HWd)TbnH-%0f{9hs z`rpausOIyi7l|GT?Z9lL-%yLQ@~l7QSkcr-PnPyA6Zi2QkX|;mH^YG-hB-)33wqVu z3*WwOqhp?Vkmq`&cv+phGOw)6AVwjSruQG`zY{|Xkf)@ds0RPi-Bo#`wq4P-u65d@ zPUPiK=AhW_G5Hik80MnL_C0QRH9dqn{dpN8apvH0zoalC`dj)#AQo~P*5XPxA)(|e zU;7)ha%&@&vfi|RK@LYVgl5AeAClO-WHLlNRKNMT#LTasK%x!7CXI<fx`Q*T$RsH( zyf(HE)&9r(7ys`ml8875m&o+MdZi)dzkWYUNKc$^U>v70_4dwJ_6f@2LT`xXPr|vB ziFl3ZZ$G~K3XaF^iywj|!GYO#L*Dl%YIR>cup>iG_v{SOUOLrjOArRp>w?dtiVdm8 z1B>z(sq5g`YOpI5s6~wPo2LwEZtXBO;{D<{{dwVrgf?SD_EBG4)d@?L2aL+t-KG8A zvuTB0j0>d;(U~={OFfxIQ~$m&>!cQB>T{)(6;#qz%r@P6Yoy?hTGrz$(#PW{l52=8 z3nH<Z$Q)KuSdq%vXb`9YBvxa0#c-5#JR&-wZP?<G;(H3L!z*Hp$s0|);W<ND6zB#r zzW4oq(61@`pVS7N7(X~Mbo4nf_IIThXYGIfVe7X1*S<4o7pSN&D*@poOw33r!AMzd zmX5Im=M+e>+XC89B)={lq1yKA|KPaw7cHPw$DHpgjKAah;96W500y|r^-#|DmCcec zQXi7+qU3YG3;KQk6QHJGb6s8_fp;td0Pnqj9o%`?5z_)b0cV>+El6RcqxwTFgaZE$ z+1@<Pn!M}!F=(!x07dxpb(9Bc=?9x?rarde(R8pJg^`Q#VZ|tVdw={Tx&3GRHNY~s zzkqR{8WRqWq#sQ1=PQMLmwbXenPQ@_<RW7-;h&QAg2IBr#b3&_%7kbC3Y5z+{vZ_3 z!4#kupoga+ru?QkD{$7P!=etswC5S@yPU<a=aKmTC3pf`@w9-At>54FvIaPkzP5aA z5d^1R(}nNgcVpdb^wUwTF$(<c#3YuZ<s}94@9+AB2YryDJdxZIMsN<2(I$$i;bKeR zi287R4wJQl619S(Jc~rh)mO@Hig-(ZnhMFz>0NMARNX2%{&iYbX)1BK#I=XDwyW{^ zyAv$IK5vvakKW~bqIwW3#C?A+vlPc#G&*NG^w8!D;JsAw()Lkw$yd}*l_T#;IuCZf zmKvomM=(}fiuqH1b<Ray;aQeDx+Vn@o<3PZFt2Ml4@-VO$67>0j#P!M=!+LwtQcic zMiR*jtJo_$aRHGGikG2{3Mj_>1|xxB&k2jg_Rh`OGO7PDSt6=1O{P!>wZ)c}TLxwd zs+G4ac7*qoZj0nbSdvxCswR;N$df3tff8Q6stKs(?Vc-x@N#PS)fVEJb!5chpXh%) z(I2jy6L8D<RG5;^Sc8aEl${m{55c-VajL$GJ>N~bHT}8!LKQv?n{XW?G$VN@mVmA8 z!c~HNG)vTjY86Y$aI_wDmRhCD3KRn=|1et}<*4!Q;d4tJ`w$?m(A}Nv%CYai+1CWV z3;9tKbrN<)CkyrIm*XRT3!O~~l_Q7o&Me2{ml+F{!(j2oNB@s96Or;tH1%C$=<>SP zZ!JtSoRc}sm`w-b4rm2pi#Bc|8YZ7eQt>#NCOPMr4*;|*^rjgO4inKzv@Ehy$2}tr z?_S=3|2gmidMK^m9^IGy;>_M2q5s$LzokK~558Q`4u;+Tw9hmx`^m9<x{tj8+qPeT z&!wQ9h0RaC?*%9cr4;AS0Vk`^<w?EdGM~+AZ$7Zd0I6gro2E|ho3zm1MsyY$#bLkB zY13Pq=a?IKaq0|fcLgb?OA_75!3K!~400DJCAlT|PvMQr28%-?Dbw385CC3$PNsJ& z;bd`Gs=d~tL+I(Rzoz*d;AuNy9VYrc*x#r6dTMIHubS6D)6@_G6p?BWqw=69F0~;a zB32V|Xry|qZ_&{yP6K}>gN`Nd>%tUMiLJYb3VVi33H1fb_3dqHLY^6(2gL*VD;jvi z{-)j<Ld*YNba%(3YNgP*Il2m(TyIKM1Rq6gsZy=wZVk2>jS7zzYW~TU#)OYRMW1I? zb}+`TDAF2bBdYbrQ8|OiXatR;JN8dQlC%;P;HHf5vy^A^iLZQ=?~2s6lO&~KJC6GL zYutAV;)|a4qqinnV2zQ-N00kAUG%fiH?@<azITR0tiJaOtp~lJyqOvCPW&2Jjii;5 z^;+n2a$mHbaQa=G0pc>-%Ye*I(u;s|Ftab-Imd&bi`BQr+SFdUWpr}`x&W<8Bzv~i z5BW$aAc<&1>P@NouwFm&d(<YCJ{YO@$xMOVt@#y0$JXN`WzCz}W0_K^6Ev1=?8CgJ zPZv<~8N=|6g{|SCm!cL9JF%AC|30-37Ihgmei=5r;X+UIA#dO2n%)1%?v^>;(7mTN zx~J6yEJJr7*BC7@#Qd&o*V95WZ~sz3SDKc(K&dI~*K~9*{ng&{`9u8`zl^h*W=c&) zDOmx5G?+;Y*C?84I2aWVBlLS9(=fD=G-Co=@T|-NtBjh;g3g=B0_##wW4JJGr2=N5 z3MPzI6F!+08-9$c0al1PW{lV#YV4#rUR6K3XoZ2Z^VbU0&=fXzV8@oeu^IXdm)E(s z9$(kX*-IPf>d~RRT7GIIKhqCg#f#z`gsXi1t!y#xw~KB>J1?w@2lM&upV|FguQguz zLt4ul=*9gMG%Vd-?B16UYtl-&CU=VR>)PX3p&X*1^>+9s7dA@(^x`sGSyhs}mO#Kd zH(nDcsVq0o7;Y6}HhIUi2gx$A{KQaslHvm5;mf_!5SW?zSZ#IS!eBN*nFgnxJU>NB zp2kkRsxygiI5sf$1Fh`vvMg~&%;!@vkQ-1{_J{s=3Yfj@(5dz^PUt^R?O;t0%2&4w ziq(OcwY-6s&oG65wqvQ=zN*~HDvx1Zu*r{6lqKp3rD%s!dr+1iGAobO6#Vhcc*A<7 zQU3#SP{-?;+&01~2s=L@TO1iGi`y|(TT_uQQ^rfnXWsrc{`AdUNk%&~^C>0W%rKYy zs4SXB9<L{8{7Gf8uO=Va7tX~V=6v^(NiX`Dj8UbxrU0@!{Mm6b%^<I_a230f0z0N@ zuvs6gj!s>a7XLE^-4Lrzvyu!uMrE+j=-lXhZ^eSH&b*SM8K&YBFHvQ%*#N7KyOJz5 zP-RfDHd38c6)kF*+VB&7*BU_;ZKJs$@-rqGcGRciXH3lh73e?q6zMZy-T$(F#{MtN z|HGR6f32!v|2g`q--o^!%&7}lvn-=*1cC<sQ*Hfk6~Zz~)bNXeR;{l(>;H>=g<nST zf&zru47?cF8NStOR+2nmFQZg^id5<XwD^Fqt^m-0<^K&u3j+uf4GLQmi|ni871tH= zQ=I0T;X~Q}o;3km^+EPXMz!zQHWRQjdT^UBkT((clqzfs_lWL+v?WEVHi`wIgrd~v z6Y+|E5$2ihSe@ua)Eemp^`JV?^$oD-*mP)eMQ6{<)5cv*OxVw}$y1yBlEExH^>5F; zF&n!XUd`|?aw#NXEShf=cQ)sAzho^5jaf+5MRrc-xQm0%?81b{E^XNim6%-v5e)}+ z;Q-YhY@3k&xs$F)o>IS0Sdapwk1Q#7cFrbBD~aHY*QVDsVDVBpf5Ri}mBtpcxiHs^ z@{#|Mzw%D6O{v!pYT68gW8w|=$uH<+EjahY<(~Iw6TJo6t0cEH{Wbm-bvo8FSLW1X zTWsbI-ZK~7nJ47bHFE9}lfM~{Q1%;VcGX`*B3T&jY_++)PFQ5hZ`!jMaTEiYa)AR> z!k@SJCe8Jfak8i8*gInlDWLR4`$?VYTK1YTYj(gI66Fq?(S;#vw#!=h@s_(aEi~My zK-YxhDPGK(R;Es7b^(9m&mW_hIx&4x)i3Nrnf_CCruv^x#PsFDjmW0cW<$F6kvi<H z1NA6dn*UVOl<-|sY8*B@$wKeeN}!UO#Ce%^8Txtul=I|M*W_J$U1%I3zR9Rl16}#1 zfG`iSr2^(a#nSF0JZD;lK%=wZW(^aFlU;eP{4mcHGZnsa;?pw~kKST=zgxnWB%Hat z&M)uA4ENp$+T#ePin(fUA?FPGKId|}%0A*QUs8Q>z+-p2a@}xVMem1P_ml=^x3t_z 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 S;4Kj*LQIB}L5=&5;r|6xSsu&) literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x new file mode 100644 index 000000000..c12712150 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/ASM/trampoline.x @@ -0,0 +1,74 @@ +/* This file is part of the ATMEL AVR32-SoftwareFramework-AT32UC3A-1.4.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AVR32 UC3 ISP trampoline. + * + * In order to be able to program a project with both BatchISP and JTAGICE mkII + * without having to take the general-purpose fuses into consideration, add this + * file to the project and change the program entry point to _trampoline. + * + * The pre-programmed ISP will be erased if JTAGICE mkII is used. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32UC devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (C) 2006-2008, Atmel Corporation 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 ATMEL may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + + +#include "conf_isp.h" + + +//! @{ +//! \verbatim + + + // This must be linked @ 0x80000000 if it is to be run upon reset. + .section .reset, "ax", @progbits + + + .global _trampoline + .type _trampoline, @function +_trampoline: + // Jump to program start. + rjmp program_start + + .org PROGRAM_START_OFFSET +program_start: + // Jump to the C runtime startup routine. + lda.w pc, _stext + + +//! \endverbatim +//! @} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h new file mode 100644 index 000000000..fbdd466ef --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/arduino.h @@ -0,0 +1,234 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1100 board header file. + * + * This file contains definitions and services related to the features of the + * EVK1100 board rev. B and C. + * + * To use this board, define BOARD=EVK1100. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _ARDUINO_H_ +#define _ARDUINO_H_ + +#include "compiler.h" + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. +# include "led.h" +#endif // __AVR32_ABI_COMPILER__ + + +/*! \name Oscillator Definitions + */ +//! @{ + +// RCOsc has no custom calibration by default. Set the following definition to +// the appropriate value if a custom RCOsc calibration has been applied to your +// part. +//#define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< RCOsc frequency: Hz. + +#define FOSC32 32768 //!< Osc32 frequency: Hz. +#define OSC32_STARTUP AVR32_PM_OSCCTRL32_STARTUP_8192_RCOSC //!< Osc32 startup time: RCOsc periods. + +#define FOSC0 12000000 //!< Osc0 frequency: Hz. +#define OSC0_STARTUP AVR32_PM_OSCCTRL0_STARTUP_2048_RCOSC //!< Osc0 startup time: RCOsc periods. + +// Osc1 crystal is not mounted by default. Set the following definitions to the +// appropriate values if a custom Osc1 crystal is mounted on your board. +//#define FOSC1 12000000 //!< Osc1 frequency: Hz. +//#define OSC1_STARTUP AVR32_PM_OSCCTRL1_STARTUP_2048_RCOSC //!< Osc1 startup time: RCOsc periods. + +//! @} + + +//! Number of LEDs. +#define LED_COUNT 3 + +/*! \name GPIO Connections of LEDs + */ +//! @{ +#define LED0_GPIO AVR32_PIN_PB19 +#define LED1_GPIO AVR32_PIN_PB20 +#define LED2_GPIO AVR32_PIN_PB21 +//! @} + +/*! \name PWM Channels of LEDs + */ +//! @{ +#define LED0_PWM 0 +#define LED1_PWM 1 +#define LED2_PWM 2 +//! @} + +/*! \name PWM Functions of LEDs + */ +//! @{ +#define LED0_PWM_FUNCTION AVR32_PWM_0_FUNCTION +#define LED1_PWM_FUNCTION AVR32_PWM_1_FUNCTION +#define LED2_PWM_FUNCTION AVR32_PWM_2_FUNCTION +//! @} + +/*! \name Color Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED_MONO0_GREEN LED0 +#define LED_MONO1_GREEN LED1 +#define LED_MONO2_GREEN LED2 +//! @} + +#if 0 +/*! \name SPI Connections of the DIP204 LCD + */ +//! @{ +#define DIP204_SPI (&AVR32_SPI1) +#define DIP204_SPI_NPCS 2 +#define DIP204_SPI_SCK_PIN AVR32_SPI1_SCK_0_0_PIN +#define DIP204_SPI_SCK_FUNCTION AVR32_SPI1_SCK_0_0_FUNCTION +#define DIP204_SPI_MISO_PIN AVR32_SPI1_MISO_0_0_PIN +#define DIP204_SPI_MISO_FUNCTION AVR32_SPI1_MISO_0_0_FUNCTION +#define DIP204_SPI_MOSI_PIN AVR32_SPI1_MOSI_0_0_PIN +#define DIP204_SPI_MOSI_FUNCTION AVR32_SPI1_MOSI_0_0_FUNCTION +#define DIP204_SPI_NPCS_PIN AVR32_SPI1_NPCS_2_0_PIN +#define DIP204_SPI_NPCS_FUNCTION AVR32_SPI1_NPCS_2_0_FUNCTION +//! @} + +/*! \name GPIO and PWM Connections of the DIP204 LCD Backlight + */ +//! @{ +#define DIP204_BACKLIGHT_PIN AVR32_PIN_PB18 +#define DIP204_PWM_CHANNEL 6 +#define DIP204_PWM_PIN AVR32_PWM_6_PIN +#define DIP204_PWM_FUNCTION AVR32_PWM_6_FUNCTION +//! @} +#endif + +/*! \name SPI Connections of the AT45DBX Data Flash Memory + */ +//! @{ +#define AT45DBX_SPI (&AVR32_SPI1) +#define AT45DBX_SPI_NPCS 2 +#define AT45DBX_SPI_SCK_PIN AVR32_SPI1_SCK_0_0_PIN +#define AT45DBX_SPI_SCK_FUNCTION AVR32_SPI1_SCK_0_0_FUNCTION +#define AT45DBX_SPI_MISO_PIN AVR32_SPI1_MISO_0_0_PIN +#define AT45DBX_SPI_MISO_FUNCTION AVR32_SPI1_MISO_0_0_FUNCTION +#define AT45DBX_SPI_MOSI_PIN AVR32_SPI1_MOSI_0_0_PIN +#define AT45DBX_SPI_MOSI_FUNCTION AVR32_SPI1_MOSI_0_0_FUNCTION +#define AT45DBX_SPI_NPCS2_PIN AVR32_SPI1_NPCS_2_0_PIN +#define AT45DBX_SPI_NPCS2_FUNCTION AVR32_SPI1_NPCS_2_0_FUNCTION +#define AT45DBX_CHIP_RESET AVR32_PIN_PA02 +//! @} + + +/*! \name GPIO and SPI Connections of the SD/MMC Connector + */ +//! @{ +//#define SD_MMC_CARD_DETECT_PIN AVR32_PIN_PA02 +//#define SD_MMC_WRITE_PROTECT_PIN AVR32_PIN_PA07 +#define SD_MMC_SPI (&AVR32_SPI1) +#define SD_MMC_SPI_NPCS 1 +#define SD_MMC_SPI_SCK_PIN AVR32_SPI1_SCK_0_0_PIN +#define SD_MMC_SPI_SCK_FUNCTION AVR32_SPI1_SCK_0_0_FUNCTION +#define SD_MMC_SPI_MISO_PIN AVR32_SPI1_MISO_0_0_PIN +#define SD_MMC_SPI_MISO_FUNCTION AVR32_SPI1_MISO_0_0_FUNCTION +#define SD_MMC_SPI_MOSI_PIN AVR32_SPI1_MOSI_0_0_PIN +#define SD_MMC_SPI_MOSI_FUNCTION AVR32_SPI1_MOSI_0_0_FUNCTION +#define SD_MMC_SPI_NPCS_PIN AVR32_SPI1_NPCS_1_0_PIN +#define SD_MMC_SPI_NPCS_FUNCTION AVR32_SPI1_NPCS_1_0_FUNCTION +//! @} + +/* Timer Counter to generate clock for WiFi chip*/ +# define WIFI_TC (&AVR32_TC) +# define WIFI_TC_CHANNEL_ID 0 +# define WIFI_TC_CHANNEL_PIN AVR32_TC_A0_0_0_PIN +# define WIFI_TC_CHANNEL_FUNCTION AVR32_TC_A0_0_0_FUNCTION +// Note that TC_A0_0_0 pin is pin 6 (PB23) on AT32UC3A1512 QFP100. + +/* Pin related to WiFi chip communication */ +#ifndef USE_POLL + #define USE_POLL +#endif + #define SPI_CS 0 + #define AVR32_SPI AVR32_SPI1 + #define GPIO_IRQ_PIN AVR32_PIN_PA03 + #define GPIO_IRQ AVR32_GPIO_IRQ_7 + #define GPIO_W_RESET_PIN AVR32_PIN_PA07 + #define GPIO_W_SHUTDOWN_PIN AVR32_PIN_PA09 + +/* Pin related to shield communication */ + #define ARDUINO_HANDSHAKE_PIN AVR32_PIN_PA25 + + #define AVR32_PDCA_PID_TX AVR32_PDCA_PID_SPI1_TX + #define AVR32_PDCA_PID_RX AVR32_PDCA_PID_SPI1_RX + + +#if 0 +/*! \name TWI Connections of the Spare TWI Connector + */ +//! @{ +#define SPARE_TWI (&AVR32_TWI) +#define SPARE_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define SPARE_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define SPARE_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define SPARE_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION +//! @} + + +/*! \name SPI Connections of the Spare SPI Connector + */ +//! @{ +#define SPARE_SPI (&AVR32_SPI0) +#define SPARE_SPI_NPCS 0 +#define SPARE_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define SPARE_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define SPARE_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define SPARE_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define SPARE_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define SPARE_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define SPARE_SPI_NPCS_PIN AVR32_SPI0_NPCS_0_0_PIN +#define SPARE_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_0_0_FUNCTION +//! @} +#endif + +#endif // _ARDUINO_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c new file mode 100644 index 000000000..d7cd439db --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.c @@ -0,0 +1,346 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1100 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1100 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "preprocessor.h" +#include "compiler.h" +#include "arduino.h" +#include "led.h" + + +//! Structure describing LED hardware connections. +typedef const struct +{ + struct + { + U32 PORT; //!< LED GPIO port. + U32 PIN_MASK; //!< Bit-mask of LED pin in GPIO port. + } GPIO; //!< LED GPIO descriptor. + struct + { + S32 CHANNEL; //!< LED PWM channel (< 0 if N/A). + S32 FUNCTION; //!< LED pin PWM function (< 0 if N/A). + } PWM; //!< LED PWM descriptor. +} tLED_DESCRIPTOR; + + +//! Hardware descriptors of all LEDs. +static tLED_DESCRIPTOR LED_DESCRIPTOR[LED_COUNT] = +{ +#define INSERT_LED_DESCRIPTOR(LED_NO, unused) \ + { \ + {LED##LED_NO##_GPIO / 32, 1 << (LED##LED_NO##_GPIO % 32)},\ + {LED##LED_NO##_PWM, LED##LED_NO##_PWM_FUNCTION } \ + }, + MREPEAT(LED_COUNT, INSERT_LED_DESCRIPTOR, ~) +#undef INSERT_LED_DESCRIPTOR +}; + + +//! Saved state of all LEDs. +static volatile U32 LED_State = (1 << LED_COUNT) - 1; + + +U32 LED_Read_Display(void) +{ + return LED_State; +} + + +void LED_Display(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor; + volatile avr32_gpio_port_t *led_gpio_port; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + LED_State = leds; + + // For all LEDs... + for (led_descriptor = &LED_DESCRIPTOR[0]; + led_descriptor < LED_DESCRIPTOR + LED_COUNT; + led_descriptor++) + { + // Set the LED to the requested state. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + } +} + + +U32 LED_Read_Display_Mask(U32 mask) +{ + return Rd_bits(LED_State, mask); +} + + +void LED_Display_Mask(U32 mask, U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + mask &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Wr_bits(LED_State, mask, leds); + + // While there are specified LEDs left to manage... + while (mask) + { + // Select the next specified LED and set it to the requested state. + led_shift = 1 + ctz(mask); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + leds >>= led_shift - 1; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + mask >>= led_shift; + } +} + + +Bool LED_Test(U32 leds) +{ + return Tst_bits(LED_State, leds); +} + + +void LED_Off(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Clr_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it off. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_On(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Set_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it on. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_Toggle(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Tgl_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and toggle it. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrt = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +U32 LED_Read_Display_Field(U32 field) +{ + return Rd_bitfield(LED_State, field); +} + + +void LED_Display_Field(U32 field, U32 leds) +{ + // Move the bit-field to the appropriate position for the bit-mask. + LED_Display_Mask(field, leds << ctz(field)); +} + + +U8 LED_Get_Intensity(U32 led) +{ + tLED_DESCRIPTOR *led_descriptor; + + // Check that the argument value is valid. + led = ctz(led); + led_descriptor = &LED_DESCRIPTOR[led]; + if (led >= LED_COUNT || led_descriptor->PWM.CHANNEL < 0) return 0; + + // Return the duty cycle value if the LED PWM channel is enabled, else 0. + return (AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL)) ? + AVR32_PWM.channel[led_descriptor->PWM.CHANNEL].cdty : 0; +} + + +void LED_Set_Intensity(U32 leds, U8 intensity) +{ + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_pwm_channel_t *led_pwm_channel; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // For each specified LED... + for (leds &= (1 << LED_COUNT) - 1; leds; leds >>= led_shift) + { + // Select the next specified LED and check that it has a PWM channel. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + if (led_descriptor->PWM.CHANNEL < 0) continue; + + // Initialize or update the LED PWM channel. + led_pwm_channel = &AVR32_PWM.channel[led_descriptor->PWM.CHANNEL]; + if (!(AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL))) + { + led_pwm_channel->cmr = (AVR32_PWM_CPRE_MCK << AVR32_PWM_CPRE_OFFSET) & + ~(AVR32_PWM_CALG_MASK | + AVR32_PWM_CPOL_MASK | + AVR32_PWM_CPD_MASK); + led_pwm_channel->cprd = 0x000000FF; + led_pwm_channel->cdty = intensity; + AVR32_PWM.ena = 1 << led_descriptor->PWM.CHANNEL; + } + else + { + AVR32_PWM.isr; + while (!(AVR32_PWM.isr & (1 << led_descriptor->PWM.CHANNEL))); + led_pwm_channel->cupd = intensity; + } + + // Switch the LED pin to its PWM function. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (led_descriptor->PWM.FUNCTION & 0x1) + { + led_gpio_port->pmr0s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr0c = led_descriptor->GPIO.PIN_MASK; + } + if (led_descriptor->PWM.FUNCTION & 0x2) + { + led_gpio_port->pmr1s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr1c = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->gperc = led_descriptor->GPIO.PIN_MASK; + } +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h new file mode 100644 index 000000000..a577124ff --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/ARDUINO/led.h @@ -0,0 +1,191 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1100 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1100 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _LED_H_ +#define _LED_H_ + +#include "compiler.h" + + +/*! \name Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED0 0x01 +#define LED1 0x02 +#define LED2 0x04 +#define LED3 0x08 +#define LED4 0x10 +#define LED5 0x20 +#define LED6 0x40 +#define LED7 0x80 +//! @} + + +/*! \brief Gets the last state of all LEDs set through the LED API. + * + * \return State of all LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display(void); + +/*! \brief Sets the state of all LEDs. + * + * \param leds New state of all LEDs (1 bit per LED). + * + * \note The pins of all LEDs are set to GPIO output mode. + */ +extern void LED_Display(U32 leds); + +/*! \brief Gets the last state of the specified LEDs set through the LED API. + * + * \param mask LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Mask(U32 mask); + +/*! \brief Sets the state of the specified LEDs. + * + * \param mask LEDs of which to set the state (1 bit per LED). + * + * \param leds New state of the specified LEDs (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Mask(U32 mask, U32 leds); + +/*! \brief Tests the last state of the specified LEDs set through the LED API. + * + * \param leds LEDs of which to test the state (1 bit per LED). + * + * \return \c TRUE if at least one of the specified LEDs has a state on, else + * \c FALSE. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern Bool LED_Test(U32 leds); + +/*! \brief Turns off the specified LEDs. + * + * \param leds LEDs to turn off (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Off(U32 leds); + +/*! \brief Turns on the specified LEDs. + * + * \param leds LEDs to turn on (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_On(U32 leds); + +/*! \brief Toggles the specified LEDs. + * + * \param leds LEDs to toggle (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Toggle(U32 leds); + +/*! \brief Gets as a bit-field the last state of the specified LEDs set through + * the LED API. + * + * \param field LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED, beginning with the first + * specified LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Field(U32 field); + +/*! \brief Sets as a bit-field the state of the specified LEDs. + * + * \param field LEDs of which to set the state (1 bit per LED). + * \param leds New state of the specified LEDs (1 bit per LED, beginning with + * the first specified LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Field(U32 field, U32 leds); + +/*! \brief Gets the intensity of the specified LED. + * + * \param led LED of which to get the intensity (1 bit per LED; only the least + * significant set bit is used). + * + * \return Intensity of the specified LED (0x00 to 0xFF). + * + * \warning The PWM channel of the specified LED is supposed to be used only by + * this module. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U8 LED_Get_Intensity(U32 led); + +/*! \brief Sets the intensity of the specified LEDs. + * + * \param leds LEDs of which to set the intensity (1 bit per LED). + * \param intensity New intensity of the specified LEDs (0x00 to 0xFF). + * + * \warning The PWM channels of the specified LEDs are supposed to be used only + * by this module. + * + * \note The pins of the specified LEDs are set to PWM output mode. + */ +extern void LED_Set_Intensity(U32 leds, U8 intensity); + + +#endif // _LED_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h new file mode 100644 index 000000000..edda44cb3 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/evk1105.h @@ -0,0 +1,433 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1105 board header file. + * + * This file contains definitions and services related to the features of the + * EVK1105 board rev. B. + * + * To use this board, define BOARD=EVK1105. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _EVK1105_H_ +#define _EVK1105_H_ + +#ifdef EVK1105_REV3 +# include "evk1105_rev3.h" +#else + +#include "compiler.h" + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. +# include "led.h" +#endif // __AVR32_ABI_COMPILER__ + + +/*! \name Oscillator Definitions + */ +//! @{ + +// RCOsc has no custom calibration by default. Set the following definition to +// the appropriate value if a custom RCOsc calibration has been applied to your +// part. +//#define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< RCOsc frequency: Hz. + +#define FOSC32 32768 //!< Osc32 frequency: Hz. +#define OSC32_STARTUP AVR32_PM_OSCCTRL32_STARTUP_8192_RCOSC //!< Osc32 startup time: RCOsc periods. + +#define FOSC0 12000000 //!< Osc0 frequency: Hz. +#define OSC0_STARTUP AVR32_PM_OSCCTRL0_STARTUP_2048_RCOSC //!< Osc0 startup time: RCOsc periods. + +#define FOSC1 11289600 //!< Osc1 frequency: Hz +#define OSC1_STARTUP AVR32_PM_OSCCTRL1_STARTUP_2048_RCOSC //!< Osc1 startup time: RCOsc periods. + + +//! @} + + +/*! \name SDRAM Definitions + */ +//! @{ + +//! Part header file of used SDRAM(s). +#define SDRAM_PART_HDR "MT48LC16M16A2TG7E/mt48lc16m16a2tg7e.h" + +//! Data bus width to use the SDRAM(s) with (16 or 32 bits; always 16 bits on +//! UC3). +#define SDRAM_DBW 16 +//! @} + + +/*! \name USB Definitions + */ +//! @{ +//! Multiplexed pin used for USB_ID: AVR32_USBB_USB_ID_x_x. +//! To be selected according to the AVR32_USBB_USB_ID_x_x_PIN and +//! AVR32_USBB_USB_ID_x_x_FUNCTION definitions from <avr32/uc3axxxx.h>. +#define AVR32_USBB_USB_ID_0_2_PIN 21 +#define AVR32_USBB_USB_ID_0_2_FUNCTION 2 +#define USB_ID AVR32_USBB_USB_ID_0_2 + +//! Multiplexed pin used for USB_VBOF: AVR32_USBB_USB_VBOF_x_x. +//! To be selected according to the AVR32_USBB_USB_VBOF_x_x_PIN and +//! AVR32_USBB_USB_VBOF_x_x_FUNCTION definitions from <avr32/uc3axxxx.h>. +# define USB_VBOF AVR32_USBB_USB_VBOF_0_1 + + +//! Active level of the USB_VBOF output pin. +# define USB_VBOF_ACTIVE_LEVEL LOW + +//! USB overcurrent detection pin. +# define USB_OVERCURRENT_DETECT_PIN AVR32_PIN_PX15 + +//! @} + + +//! GPIO connection of the MAC PHY PWR_DOWN/INT signal. +# define MACB_INTERRUPT_PIN AVR32_PIN_PA26 + + + +//! Number of LEDs. +#define LED_COUNT 4 + +/*! \name GPIO Connections of LEDs + */ +//! @{ +# define LED0_GPIO AVR32_PIN_PB27 +# define LED1_GPIO AVR32_PIN_PB28 +# define LED2_GPIO AVR32_PIN_PA05 +# define LED3_GPIO AVR32_PIN_PA06 +//! @} + +/*! \name Color Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED_MONO0_GREEN LED0 +#define LED_MONO1_GREEN LED1 +#define LED_MONO2_GREEN LED2 +#define LED_MONO3_GREEN LED3 +//! @} + +/*! \name PWM Channels of LEDs + */ +//! @{ +#define LED0_PWM 4 +#define LED1_PWM 5 +#define LED2_PWM (-1) +#define LED3_PWM (-1) +//! @} + +/*! \name PWM Functions of LEDs + */ +//! @{ +/* TODO: Implement PWM functionality */ +#define LED0_PWM_FUNCTION (-1)//AVR32_PWM_0_FUNCTION +#define LED1_PWM_FUNCTION (-1)//AVR32_PWM_1_FUNCTION +#define LED2_PWM_FUNCTION (-1) +#define LED3_PWM_FUNCTION (-1) +//! @} + +//! External interrupt connection of touch sensor. +#define QT1081_EIC_EXTINT_PIN AVR32_EIC_EXTINT_1_PIN +#define QT1081_EIC_EXTINT_FUNCTION AVR32_EIC_EXTINT_1_FUNCTION +#define QT1081_EIC_EXTINT_IRQ AVR32_EIC_IRQ_1 +#define QT1081_EIC_EXTINT_INT AVR32_EIC_INT1 +/*! \name Touch sensor low power mode select + */ +#define QT1081_LP_MODE AVR32_PIN_PB29 + +/*! \name GPIO Connections of touch buttons + */ +//! @{ +#define QT1081_TOUCH_SENSOR_0 AVR32_PIN_PB22 +#define QT1081_TOUCH_SENSOR_0_PRESSED 1 +#define QT1081_TOUCH_SENSOR_1 AVR32_PIN_PB23 +#define QT1081_TOUCH_SENSOR_1_PRESSED 1 +#define QT1081_TOUCH_SENSOR_2 AVR32_PIN_PB24 +#define QT1081_TOUCH_SENSOR_2_PRESSED 1 +#define QT1081_TOUCH_SENSOR_3 AVR32_PIN_PB25 +#define QT1081_TOUCH_SENSOR_3_PRESSED 1 +#define QT1081_TOUCH_SENSOR_4 AVR32_PIN_PB26 +#define QT1081_TOUCH_SENSOR_4_PRESSED 1 + +#define QT1081_TOUCH_SENSOR_ENTER QT1081_TOUCH_SENSOR_4 +#define QT1081_TOUCH_SENSOR_ENTER_PRESSED QT1081_TOUCH_SENSOR_4_PRESSED +#define QT1081_TOUCH_SENSOR_LEFT QT1081_TOUCH_SENSOR_3 +#define QT1081_TOUCH_SENSOR_LEFT_PRESSED QT1081_TOUCH_SENSOR_3_PRESSED +#define QT1081_TOUCH_SENSOR_RIGHT QT1081_TOUCH_SENSOR_2 +#define QT1081_TOUCH_SENSOR_RIGHT_PRESSED QT1081_TOUCH_SENSOR_2_PRESSED +#define QT1081_TOUCH_SENSOR_UP QT1081_TOUCH_SENSOR_0 +#define QT1081_TOUCH_SENSOR_UP_PRESSED QT1081_TOUCH_SENSOR_0_PRESSED +#define QT1081_TOUCH_SENSOR_DOWN QT1081_TOUCH_SENSOR_1 +#define QT1081_TOUCH_SENSOR_DOWN_PRESSED QT1081_TOUCH_SENSOR_1_PRESSED +//! @} + +/*! \name SPI Connections of the AT45DBX Data Flash Memory + */ +//! @{ +#define AT45DBX_SPI (&AVR32_SPI0) +#define AT45DBX_SPI_NPCS 0 +#define AT45DBX_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define AT45DBX_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define AT45DBX_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define AT45DBX_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define AT45DBX_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define AT45DBX_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define AT45DBX_SPI_NPCS0_PIN AVR32_SPI0_NPCS_0_0_PIN +#define AT45DBX_SPI_NPCS0_FUNCTION AVR32_SPI0_NPCS_0_0_FUNCTION +//! @} + +/*! \name GPIO and SPI Connections of the SD/MMC Connector + */ +//! @{ +#define SD_MMC_CARD_DETECT_PIN AVR32_PIN_PA02 +#define SD_MMC_WRITE_PROTECT_PIN AVR32_PIN_PA18 +#define SD_MMC_SPI (&AVR32_SPI0) +#define SD_MMC_SPI_NPCS 1 +#define SD_MMC_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define SD_MMC_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define SD_MMC_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define SD_MMC_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define SD_MMC_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define SD_MMC_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define SD_MMC_SPI_NPCS_PIN AVR32_SPI0_NPCS_1_0_PIN +#define SD_MMC_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_1_0_FUNCTION +//! @} + + +/*! \name TWI expansion + */ +//! @{ +#define EXPANSION_TWI (&AVR32_TWI) +#define EXPANSION_RESET AVR32_PIN_PX16 +#define EXPANSION_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define EXPANSION_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define EXPANSION_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define EXPANSION_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION +//! @} + +/*! \name Wireless expansion + */ + +#define WEXPANSION_EXTINT_PIN AVR32_EIC_EXTINT_8_PIN +#define WEXPANSION_EXTINT_FUNCTION AVR32_EIC_EXTINT_8_FUNCTION +#define WEXPANSION_GPIO1 AVR32_PIN_PB30 +#define WEXPANSION_GPIO2 AVR32_PIN_PB31 + +#define WEXPANSION_SPI (&AVR32_SPI0) +#define WEXPANSION_SPI_NPCS 2 +#define WEXPANSION_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define WEXPANSION_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define WEXPANSION_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define WEXPANSION_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define WEXPANSION_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define WEXPANSION_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define WEXPANSION_SPI_NPCS_PIN AVR32_SPI0_NPCS_2_0_PIN +#define WEXPANSION_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_2_0_FUNCTION + +//! @} + +/*! \name ET024006DHU TFT display + */ +//! @{ + +#define ET024006DHU_TE_PIN AVR32_PIN_PX19 +#define ET024006DHU_RESET_PIN AVR32_PIN_PX22 +#define ET024006DHU_BL_PIN AVR32_PWM_6_PIN +#define ET024006DHU_BL_FUNCTION AVR32_PWM_6_FUNCTION +#define ET024006DHU_DNC_PIN AVR32_EBI_ADDR_21_1_PIN +#define ET024006DHU_DNC_FUNCTION AVR32_EBI_ADDR_21_1_FUNCTION +#define ET024006DHU_EBI_NCS_PIN AVR32_EBI_NCS_0_1_PIN +#define ET024006DHU_EBI_NCS_FUNCTION AVR32_EBI_NCS_0_1_FUNCTION + +//! @} +/*! \name Optional SPI connection to the TFT + */ +//! @{ + +#define ET024006DHU_SPI (&AVR32_SPI0) +#define ET024006DHU_SPI_NPCS 3 +#define ET024006DHU_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define ET024006DHU_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define ET024006DHU_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define ET024006DHU_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define ET024006DHU_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define ET024006DHU_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define ET024006DHU_SPI_NPCS_PIN AVR32_SPI1_NPCS_3_0_PIN +#define ET024006DHU_SPI_NPCS_FUNCTION AVR32_SPI1_NPCS_3_0_FUNCTION + +//! @} + + +/*! \name Audio amplifier connection to the DAC + */ +//! @{ + +#define TPA6130_ABDAC (&AVR32_ABDAC) + +#define TPA6130_DATA0_PIN AVR32_ABDAC_DATA_0_1_PIN +#define TPA6130_DATA0_FUNCTION AVR32_ABDAC_DATA_0_1_FUNCTION +#define TPA6130_DATAN0_PIN AVR32_ABDAC_DATAN_0_1_PIN +#define TPA6130_DATAN0_FUNCTION AVR32_ABDAC_DATAN_0_1_FUNCTION +#define TPA6130_DATA1_PIN AVR32_ABDAC_DATA_1_1_PIN +#define TPA6130_DATA1_FUNCTION AVR32_ABDAC_DATA_1_1_FUNCTION +#define TPA6130_DATAN1_PIN AVR32_ABDAC_DATAN_1_1_PIN +#define TPA6130_DATAN1_FUNCTION AVR32_ABDAC_DATAN_1_1_FUNCTION + +#define TPA6130_ABDAC_PDCA_PID AVR32_PDCA_PID_ABDAC_TX +#define TPA6130_ABDAC_PDCA_CHANNEL 0 +#define TPA6130_ABDAC_PDCA_IRQ AVR32_PDCA_IRQ_0 +#define TPA6130_ABDAC_PDCA_INT_LEVEL AVR32_INTC_INT3 + +#define TPA6130_TWI (&AVR32_TWI) +#define TPA6130_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define TPA6130_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define TPA6130_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define TPA6130_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION + +//! }@ +/*! \name TI TLV320AIC23B sound chip + */ +//! @{ +#define TLV320_SSC (&AVR32_SSC) +#define TLV320_SSC_TX_CLOCK_PIN AVR32_SSC_TX_CLOCK_0_PIN +#define TLV320_SSC_TX_CLOCK_FUNCTION AVR32_SSC_TX_CLOCK_0_FUNCTION +#define TLV320_SSC_TX_DATA_PIN AVR32_SSC_TX_DATA_0_PIN +#define TLV320_SSC_TX_DATA_FUNCTION AVR32_SSC_TX_DATA_0_FUNCTION +#define TLV320_SSC_TX_FRAME_SYNC_PIN AVR32_SSC_TX_FRAME_SYNC_0_PIN +#define TLV320_SSC_TX_FRAME_SYNC_FUNCTION AVR32_SSC_TX_FRAME_SYNC_0_FUNCTION + +#define TLV320_TWI (&AVR32_TWI) +#define TLV320_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define TLV320_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define TLV320_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define TLV320_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION + +#define TLV320_PM_GCLK_PIN AVR32_PM_GCLK_0_0_PIN +#define TLV320_PM_GCLK_FUNCTION AVR32_PM_GCLK_0_0_FUNCTION +//! @} + +////! \name SPI: Apple Authentication Chip Hardware Connections +////! @{ +#define IPOD_AUTH_CHIP_SPI (&AVR32_SPI0) +#define IPOD_AUTH_CHIP_SPI_IRQ AVR32_SPI0_IRQ +#define IPOD_AUTH_CHIP_SPI_NPCS 2 +#define IPOD_AUTH_CHIP_SPI_SCK_PIN AVR32_SPI0_SCK_0_0_PIN +#define IPOD_AUTH_CHIP_SPI_SCK_FUNCTION AVR32_SPI0_SCK_0_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_MISO_PIN AVR32_SPI0_MISO_0_0_PIN +#define IPOD_AUTH_CHIP_SPI_MISO_FUNCTION AVR32_SPI0_MISO_0_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_MOSI_PIN AVR32_SPI0_MOSI_0_0_PIN +#define IPOD_AUTH_CHIP_SPI_MOSI_FUNCTION AVR32_SPI0_MOSI_0_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_NPCS_PIN AVR32_SPI0_NPCS_2_0_PIN +#define IPOD_AUTH_CHIP_SPI_NPCS_FUNCTION AVR32_SPI0_NPCS_2_0_FUNCTION +#define IPOD_AUTH_CHIP_SPI_N_RESET_PIN AVR32_PIN_PB30 +#define IPOD_AUTH_CHIP_SPI_CP_READY_PIN AVR32_PIN_PB31 +//! }@ + +/*! \name Connections of the iPOD Authentication Coprocessor + */ +//! @{ + +#define IPOD_AUTH_CHIP_TWI (&AVR32_TWI) +#define IPOD_AUTH_CHIP_TWI_SCL_PIN AVR32_TWI_SCL_0_0_PIN +#define IPOD_AUTH_CHIP_TWI_SCL_FUNCTION AVR32_TWI_SCL_0_0_FUNCTION +#define IPOD_AUTH_CHIP_TWI_SDA_PIN AVR32_TWI_SDA_0_0_PIN +#define IPOD_AUTH_CHIP_TWI_SDA_FUNCTION AVR32_TWI_SDA_0_0_FUNCTION +#define IPOD_AUTH_CHIP_TWI_N_RESET_PIN AVR32_PIN_PX16 + +//! @} + +/*! \name USART connection to the UC3B board controller + */ +//! @{ + +#define USART0_RXD_PIN AVR32_USART0_RXD_0_0_PIN +#define USART0_RXD_FUNCTION AVR32_USART0_RXD_0_0_FUNCTION +#define USART0_TXD_PIN AVR32_USART0_TXD_0_0_PIN +#define USART0_TXD_FUNCTION AVR32_USART0_TXD_0_0_FUNCTION +#define USART0_RTS_PIN AVR32_USART0_RTS_0_0_PIN +#define USART0_RTS_FUNCTION AVR32_USART0_RTS_0_0_FUNCTION +#define USART0_CTS_PIN AVR32_USART0_CTS_0_0_PIN +#define USART0_CTS_FUNCTION AVR32_USART0_CTS_0_0_FUNCTION + +//! @} + +#define ADC_VEXT_PIN AVR32_ADC_AD_7_PIN +#define ADC_VEXT_FUNCTION AVR32_ADC_AD_7_FUNCTION + +/*! \name LCD Connections of the ET024006DHU display + */ +//! @{ +#define ET024006DHU_SMC_USE_NCS 0 +#define ET024006DHU_SMC_COMPONENT_CS "smc_et024006dhu.h" + +#define ET024006DHU_EBI_DATA_0 AVR32_EBI_DATA_0 +#define ET024006DHU_EBI_DATA_1 AVR32_EBI_DATA_1 +#define ET024006DHU_EBI_DATA_2 AVR32_EBI_DATA_2 +#define ET024006DHU_EBI_DATA_3 AVR32_EBI_DATA_3 +#define ET024006DHU_EBI_DATA_4 AVR32_EBI_DATA_4 +#define ET024006DHU_EBI_DATA_5 AVR32_EBI_DATA_5 +#define ET024006DHU_EBI_DATA_6 AVR32_EBI_DATA_6 +#define ET024006DHU_EBI_DATA_7 AVR32_EBI_DATA_7 +#define ET024006DHU_EBI_DATA_8 AVR32_EBI_DATA_8 +#define ET024006DHU_EBI_DATA_9 AVR32_EBI_DATA_9 +#define ET024006DHU_EBI_DATA_10 AVR32_EBI_DATA_10 +#define ET024006DHU_EBI_DATA_11 AVR32_EBI_DATA_11 +#define ET024006DHU_EBI_DATA_12 AVR32_EBI_DATA_12 +#define ET024006DHU_EBI_DATA_13 AVR32_EBI_DATA_13 +#define ET024006DHU_EBI_DATA_14 AVR32_EBI_DATA_14 +#define ET024006DHU_EBI_DATA_15 AVR32_EBI_DATA_15 + +#define ET024006DHU_EBI_ADDR_21 AVR32_EBI_ADDR_21_1 + +#define ET024006DHU_EBI_NWE AVR32_EBI_NWE0_0 +#define ET024006DHU_EBI_NRD AVR32_EBI_NRD_0 +#define ET024006DHU_EBI_NCS AVR32_EBI_NCS_0_1 +//! @} + + +#endif // !EVK1105_REVA + +#endif // _EVK1105_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c new file mode 100644 index 000000000..561652aeb --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.c @@ -0,0 +1,346 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1105 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1105 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "preprocessor.h" +#include "compiler.h" +#include "evk1105.h" +#include "led.h" + + +//! Structure describing LED hardware connections. +typedef const struct +{ + struct + { + U32 PORT; //!< LED GPIO port. + U32 PIN_MASK; //!< Bit-mask of LED pin in GPIO port. + } GPIO; //!< LED GPIO descriptor. + struct + { + S32 CHANNEL; //!< LED PWM channel (< 0 if N/A). + S32 FUNCTION; //!< LED pin PWM function (< 0 if N/A). + } PWM; //!< LED PWM descriptor. +} tLED_DESCRIPTOR; + + +//! Hardware descriptors of all LEDs. +static tLED_DESCRIPTOR LED_DESCRIPTOR[LED_COUNT] = +{ +#define INSERT_LED_DESCRIPTOR(LED_NO, unused) \ + { \ + {LED##LED_NO##_GPIO / 32, 1 << (LED##LED_NO##_GPIO % 32)},\ + {LED##LED_NO##_PWM, LED##LED_NO##_PWM_FUNCTION } \ + }, + MREPEAT(LED_COUNT, INSERT_LED_DESCRIPTOR, ~) +#undef INSERT_LED_DESCRIPTOR +}; + + +//! Saved state of all LEDs. +static volatile U32 LED_State = (1 << LED_COUNT) - 1; + + +U32 LED_Read_Display(void) +{ + return LED_State; +} + + +void LED_Display(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor; + volatile avr32_gpio_port_t *led_gpio_port; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + LED_State = leds; + + // For all LEDs... + for (led_descriptor = &LED_DESCRIPTOR[0]; + led_descriptor < LED_DESCRIPTOR + LED_COUNT; + led_descriptor++) + { + // Set the LED to the requested state. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + } +} + + +U32 LED_Read_Display_Mask(U32 mask) +{ + return Rd_bits(LED_State, mask); +} + + +void LED_Display_Mask(U32 mask, U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + mask &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Wr_bits(LED_State, mask, leds); + + // While there are specified LEDs left to manage... + while (mask) + { + // Select the next specified LED and set it to the requested state. + led_shift = 1 + ctz(mask); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + leds >>= led_shift - 1; + if (leds & 1) + { + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= 1; + mask >>= led_shift; + } +} + + +Bool LED_Test(U32 leds) +{ + return Tst_bits(LED_State, leds); +} + + +void LED_Off(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Clr_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it off. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrs = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_On(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Set_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and turn it on. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrc = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +void LED_Toggle(U32 leds) +{ + // Use the LED descriptors to get the connections of a given LED to the MCU. + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // Make sure only existing LEDs are specified. + leds &= (1 << LED_COUNT) - 1; + + // Update the saved state of all LEDs with the requested changes. + Tgl_bits(LED_State, leds); + + // While there are specified LEDs left to manage... + while (leds) + { + // Select the next specified LED and toggle it. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + led_gpio_port->ovrt = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->oders = led_descriptor->GPIO.PIN_MASK; + led_gpio_port->gpers = led_descriptor->GPIO.PIN_MASK; + leds >>= led_shift; + } +} + + +U32 LED_Read_Display_Field(U32 field) +{ + return Rd_bitfield(LED_State, field); +} + + +void LED_Display_Field(U32 field, U32 leds) +{ + // Move the bit-field to the appropriate position for the bit-mask. + LED_Display_Mask(field, leds << ctz(field)); +} + + +U8 LED_Get_Intensity(U32 led) +{ + tLED_DESCRIPTOR *led_descriptor; + + // Check that the argument value is valid. + led = ctz(led); + led_descriptor = &LED_DESCRIPTOR[led]; + if (led >= LED_COUNT || led_descriptor->PWM.CHANNEL < 0) return 0; + + // Return the duty cycle value if the LED PWM channel is enabled, else 0. + return (AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL)) ? + AVR32_PWM.channel[led_descriptor->PWM.CHANNEL].cdty : 0; +} + + +void LED_Set_Intensity(U32 leds, U8 intensity) +{ + tLED_DESCRIPTOR *led_descriptor = &LED_DESCRIPTOR[0] - 1; + volatile avr32_pwm_channel_t *led_pwm_channel; + volatile avr32_gpio_port_t *led_gpio_port; + U8 led_shift; + + // For each specified LED... + for (leds &= (1 << LED_COUNT) - 1; leds; leds >>= led_shift) + { + // Select the next specified LED and check that it has a PWM channel. + led_shift = 1 + ctz(leds); + led_descriptor += led_shift; + if (led_descriptor->PWM.CHANNEL < 0) continue; + + // Initialize or update the LED PWM channel. + led_pwm_channel = &AVR32_PWM.channel[led_descriptor->PWM.CHANNEL]; + if (!(AVR32_PWM.sr & (1 << led_descriptor->PWM.CHANNEL))) + { + led_pwm_channel->cmr = (AVR32_PWM_CPRE_MCK << AVR32_PWM_CPRE_OFFSET) & + ~(AVR32_PWM_CALG_MASK | + AVR32_PWM_CPOL_MASK | + AVR32_PWM_CPD_MASK); + led_pwm_channel->cprd = 0x000000FF; + led_pwm_channel->cdty = intensity; + AVR32_PWM.ena = 1 << led_descriptor->PWM.CHANNEL; + } + else + { + AVR32_PWM.isr; + while (!(AVR32_PWM.isr & (1 << led_descriptor->PWM.CHANNEL))); + led_pwm_channel->cupd = intensity; + } + + // Switch the LED pin to its PWM function. + led_gpio_port = &AVR32_GPIO.port[led_descriptor->GPIO.PORT]; + if (led_descriptor->PWM.FUNCTION & 0x1) + { + led_gpio_port->pmr0s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr0c = led_descriptor->GPIO.PIN_MASK; + } + if (led_descriptor->PWM.FUNCTION & 0x2) + { + led_gpio_port->pmr1s = led_descriptor->GPIO.PIN_MASK; + } + else + { + led_gpio_port->pmr1c = led_descriptor->GPIO.PIN_MASK; + } + led_gpio_port->gperc = led_descriptor->GPIO.PIN_MASK; + } +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h new file mode 100644 index 000000000..7766b6a76 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/EVK1105/led.h @@ -0,0 +1,187 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AT32UC3A EVK1105 board LEDs support package. + * + * This file contains definitions and services related to the LED features of + * the EVK1105 board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 AT32UC3A devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _LED_H_ +#define _LED_H_ + +#include "compiler.h" + + +/*! \name Identifiers of LEDs to Use with LED Functions + */ +//! @{ +#define LED0 0x01 +#define LED1 0x02 +#define LED2 0x04 +#define LED3 0x08 +//! @} + + +/*! \brief Gets the last state of all LEDs set through the LED API. + * + * \return State of all LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display(void); + +/*! \brief Sets the state of all LEDs. + * + * \param leds New state of all LEDs (1 bit per LED). + * + * \note The pins of all LEDs are set to GPIO output mode. + */ +extern void LED_Display(U32 leds); + +/*! \brief Gets the last state of the specified LEDs set through the LED API. + * + * \param mask LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Mask(U32 mask); + +/*! \brief Sets the state of the specified LEDs. + * + * \param mask LEDs of which to set the state (1 bit per LED). + * + * \param leds New state of the specified LEDs (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Mask(U32 mask, U32 leds); + +/*! \brief Tests the last state of the specified LEDs set through the LED API. + * + * \param leds LEDs of which to test the state (1 bit per LED). + * + * \return \c TRUE if at least one of the specified LEDs has a state on, else + * \c FALSE. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern Bool LED_Test(U32 leds); + +/*! \brief Turns off the specified LEDs. + * + * \param leds LEDs to turn off (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Off(U32 leds); + +/*! \brief Turns on the specified LEDs. + * + * \param leds LEDs to turn on (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_On(U32 leds); + +/*! \brief Toggles the specified LEDs. + * + * \param leds LEDs to toggle (1 bit per LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Toggle(U32 leds); + +/*! \brief Gets as a bit-field the last state of the specified LEDs set through + * the LED API. + * + * \param field LEDs of which to get the state (1 bit per LED). + * + * \return State of the specified LEDs (1 bit per LED, beginning with the first + * specified LED). + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U32 LED_Read_Display_Field(U32 field); + +/*! \brief Sets as a bit-field the state of the specified LEDs. + * + * \param field LEDs of which to set the state (1 bit per LED). + * \param leds New state of the specified LEDs (1 bit per LED, beginning with + * the first specified LED). + * + * \note The pins of the specified LEDs are set to GPIO output mode. + */ +extern void LED_Display_Field(U32 field, U32 leds); + +/*! \brief Gets the intensity of the specified LED. + * + * \param led LED of which to get the intensity (1 bit per LED; only the least + * significant set bit is used). + * + * \return Intensity of the specified LED (0x00 to 0xFF). + * + * \warning The PWM channel of the specified LED is supposed to be used only by + * this module. + * + * \note The GPIO pin configuration of all LEDs is left unchanged. + */ +extern U8 LED_Get_Intensity(U32 led); + +/*! \brief Sets the intensity of the specified LEDs. + * + * \param leds LEDs of which to set the intensity (1 bit per LED). + * \param intensity New intensity of the specified LEDs (0x00 to 0xFF). + * + * \warning The PWM channels of the specified LEDs are supposed to be used only + * by this module. + * + * \note The pins of the specified LEDs are set to PWM output mode. + */ +extern void LED_Set_Intensity(U32 leds, U8 intensity); + + +#endif // _LED_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h new file mode 100644 index 000000000..78ee91e75 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h @@ -0,0 +1,120 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Standard board header file. + * + * This file includes the appropriate board header file according to the + * defined board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +#include <avr32/io.h> + +/*! \name Base Boards + */ +//! @{ +#define EVK1100 1 //!< AT32UC3A EVK1100 board. +#define EVK1101 2 //!< AT32UC3B EVK1101 board. +#define UC3C_EK 3 //!< AT32UC3C UC3C_EK board. +#define EVK1104 4 //!< AT32UC3A3 EVK1104 board. +#define EVK1105 5 //!< AT32UC3A EVK1105 board. +#define STK1000 6 //!< AT32AP7000 STK1000 board. +#define NGW100 7 //!< AT32AP7000 NGW100 board. +#define STK600_RCUC3L0 8 //!< STK600 RCUC3L0 board. +#define UC3L_EK 9 //!< AT32UC3L-EK board. +#define USER_BOARD 99 //!< User-reserved board (if any). +//! @} + +/*! \name Extension Boards + */ +//! @{ +#define EXT1102 1 //!< AT32UC3B EXT1102 board. +#define MC300 2 //!< AT32UC3 MC300 board. +#define USER_EXT_BOARD 99 //!< User-reserved extension board (if any). +//! @} + +#if BOARD == EVK1100 + #include "EVK1100/evk1100.h" +#elif BOARD == EVK1101 + #include "EVK1101/evk1101.h" +#elif BOARD == UC3C_EK + #include "UC3C_EK/uc3c_ek.h" +#elif BOARD == EVK1104 + #include "EVK1104/evk1104.h" +#elif BOARD == EVK1105 + #include "EVK1105/evk1105.h" +#elif BOARD == STK1000 + #include "STK1000/stk1000.h" +#elif BOARD == NGW100 + #include "NGW100/ngw100.h" +#elif BOARD == STK600_RCUC3L0 + #include "STK600/RCUC3L0/stk600_rcuc3l0.h" +#elif BOARD == UC3L_EK + #include "UC3L_EK/uc3l_ek.h" +#elif BOARD == ARDUINO + #include "ARDUINO/arduino.h" +#else + #error No known AVR32 board defined +#endif + +#if (defined EXT_BOARD) + #if EXT_BOARD == EXT1102 + #include "EXT1102/ext1102.h" + #elif EXT_BOARD == MC300 + #include "MC300/mc300.h" + #elif EXT_BOARD == USER_EXT_BOARD + // User-reserved area: #include the header file of your extension board here + // (if any). + #endif +#endif + + +#ifndef FRCOSC + #define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< Default RCOsc frequency. +#endif + + +#endif // _BOARD_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.ori b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.ori new file mode 100644 index 000000000..30052c8ab --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/BOARDS/board.h.ori @@ -0,0 +1,121 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Standard board header file. + * + * This file includes the appropriate board header file according to the + * defined board. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +#include <avr32/io.h> + +/*! \name Base Boards + */ +//! @{ +#define EVK1100 1 //!< AT32UC3A EVK1100 board. +#define EVK1101 2 //!< AT32UC3B EVK1101 board. +#define UC3C_EK 3 //!< AT32UC3C UC3C_EK board. +#define EVK1104 4 //!< AT32UC3A3 EVK1104 board. +#define EVK1105 5 //!< AT32UC3A EVK1105 board. +#define STK1000 6 //!< AT32AP7000 STK1000 board. +#define NGW100 7 //!< AT32AP7000 NGW100 board. +#define STK600_RCUC3L0 8 //!< STK600 RCUC3L0 board. +#define UC3L_EK 9 //!< AT32UC3L-EK board. +#define USER_BOARD 99 //!< User-reserved board (if any). +//! @} + +/*! \name Extension Boards + */ +//! @{ +#define EXT1102 1 //!< AT32UC3B EXT1102 board. +#define MC300 2 //!< AT32UC3 MC300 board. +#define USER_EXT_BOARD 99 //!< User-reserved extension board (if any). +//! @} + +#if BOARD == EVK1100 + #include "EVK1100/evk1100.h" +#elif BOARD == EVK1101 + #include "EVK1101/evk1101.h" +#elif BOARD == UC3C_EK + #include "UC3C_EK/uc3c_ek.h" +#elif BOARD == EVK1104 + #include "EVK1104/evk1104.h" +#elif BOARD == EVK1105 + #include "EVK1105/evk1105.h" +#elif BOARD == STK1000 + #include "STK1000/stk1000.h" +#elif BOARD == NGW100 + #include "NGW100/ngw100.h" +#elif BOARD == STK600_RCUC3L0 + #include "STK600/RCUC3L0/stk600_rcuc3l0.h" +#elif BOARD == UC3L_EK + #include "UC3L_EK/uc3l_ek.h" +#elif BOARD == USER_BOARD + // User-reserved area: #include the header file of your board here (if any). + #include "user_board.h" +#else + #error No known AVR32 board defined +#endif + +#if (defined EXT_BOARD) + #if EXT_BOARD == EXT1102 + #include "EXT1102/ext1102.h" + #elif EXT_BOARD == MC300 + #include "MC300/mc300.h" + #elif EXT_BOARD == USER_EXT_BOARD + // User-reserved area: #include the header file of your extension board here + // (if any). + #endif +#endif + + +#ifndef FRCOSC + #define FRCOSC AVR32_PM_RCOSC_FREQUENCY //!< Default RCOsc frequency. +#endif + + +#endif // _BOARD_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c new file mode 100644 index 000000000..d4b1b730f --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.c @@ -0,0 +1,672 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Management of the AT45DBX data flash controller through SPI. + * + * This file manages the accesses to the AT45DBX data flash components. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ___________________________________________________ + +#include "conf_access.h" + + +#if AT45DBX_MEM == ENABLE + +#include "compiler.h" +#include "board.h" +#include "gpio.h" +#include "spi.h" +#include "conf_at45dbx.h" +#include "at45dbx.h" +#include "printf-stdarg.h" + +#if AT45DBX_MEM_CNT > 4 + #error AT45DBX_MEM_CNT must not exceed 4 +#endif + + +//_____ D E F I N I T I O N S ______________________________________________ + +/*! \name AT45DBX Group A Commands + */ +//! @{ +#define AT45DBX_CMDA_RD_PAGE 0xD2 //!< Main Memory Page Read (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_ARRAY_LEG 0xE8 //!< Continuous Array Read, Legacy Command (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_ARRAY_LF_SM 0x03 //!< Continuous Array Read, Low-Frequency Mode (Serial Mode). +#define AT45DBX_CMDA_RD_ARRAY_AF_SM 0x0B //!< Continuous Array Read, Any-Frequency Mode (Serial Mode). +#define AT45DBX_CMDA_RD_SECTOR_PROT_REG 0x32 //!< Read Sector Protection Register (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_SECTOR_LKDN_REG 0x35 //!< Read Sector Lockdown Register (Serial/8-bit Mode). +#define AT45DBX_CMDA_RD_SECURITY_REG 0x77 //!< Read Security Register (Serial/8-bit Mode). +//! @} + +/*! \name AT45DBX Group B Commands + */ +//! @{ +#define AT45DBX_CMDB_ER_PAGE 0x81 //!< Page Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_ER_BLOCK 0x50 //!< Block Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_ER_SECTOR 0x7C //!< Sector Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_ER_CHIP 0xC794809A //!< Chip Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_XFR_PAGE_TO_BUF1 0x53 //!< Main Memory Page to Buffer 1 Transfer (Serial/8-bit Mode). +#define AT45DBX_CMDB_XFR_PAGE_TO_BUF2 0x55 //!< Main Memory Page to Buffer 2 Transfer (Serial/8-bit Mode). +#define AT45DBX_CMDB_CMP_PAGE_TO_BUF1 0x60 //!< Main Memory Page to Buffer 1 Compare (Serial/8-bit Mode). +#define AT45DBX_CMDB_CMP_PAGE_TO_BUF2 0x61 //!< Main Memory Page to Buffer 2 Compare (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF1_TO_PAGE_ER 0x83 //!< Buffer 1 to Main Memory Page Program with Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF2_TO_PAGE_ER 0x86 //!< Buffer 2 to Main Memory Page Program with Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF1_TO_PAGE 0x88 //!< Buffer 1 to Main Memory Page Program without Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_BUF2_TO_PAGE 0x89 //!< Buffer 2 to Main Memory Page Program without Built-in Erase (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_PAGE_TH_BUF1 0x82 //!< Main Memory Page Program through Buffer 1 (Serial/8-bit Mode). +#define AT45DBX_CMDB_PR_PAGE_TH_BUF2 0x85 //!< Main Memory Page Program through Buffer 2 (Serial/8-bit Mode). +#define AT45DBX_CMDB_RWR_PAGE_TH_BUF1 0x58 //!< Auto Page Rewrite through Buffer 1 (Serial/8-bit Mode). +#define AT45DBX_CMDB_RWR_PAGE_TH_BUF2 0x59 //!< Auto Page Rewrite through Buffer 2 (Serial/8-bit Mode). +//! @} + +/*! \name AT45DBX Group C Commands + */ +//! @{ +#define AT45DBX_CMDC_RD_BUF1_LF_SM 0xD1 //!< Buffer 1 Read, Low-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF2_LF_SM 0xD3 //!< Buffer 2 Read, Low-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF1_AF_SM 0xD4 //!< Buffer 1 Read, Any-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF2_AF_SM 0xD6 //!< Buffer 2 Read, Any-Frequency Mode (Serial Mode). +#define AT45DBX_CMDC_RD_BUF1_AF_8M 0x54 //!< Buffer 1 Read, Any-Frequency Mode (8-bit Mode). +#define AT45DBX_CMDC_RD_BUF2_AF_8M 0x56 //!< Buffer 2 Read, Any-Frequency Mode (8-bit Mode). +#define AT45DBX_CMDC_WR_BUF1 0x84 //!< Buffer 1 Write (Serial/8-bit Mode). +#define AT45DBX_CMDC_WR_BUF2 0x87 //!< Buffer 2 Write (Serial/8-bit Mode). +#define AT45DBX_CMDC_RD_STATUS_REG 0xD7 //!< Status Register Read (Serial/8-bit Mode). +#define AT45DBX_CMDC_RD_MNFCT_DEV_ID_SM 0x9F //!< Manufacturer and Device ID Read (Serial Mode). +//! @} + +/*! \name AT45DBX Group D Commands + */ +//! @{ +#define AT45DBX_CMDD_EN_SECTOR_PROT 0x3D2A7FA9 //!< Enable Sector Protection (Serial/8-bit Mode). +#define AT45DBX_CMDD_DIS_SECTOR_PROT 0x3D2A7F9A //!< Disable Sector Protection (Serial/8-bit Mode). +#define AT45DBX_CMDD_ER_SECTOR_PROT_REG 0x3D2A7FCF //!< Erase Sector Protection Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_PR_SECTOR_PROT_REG 0x3D2A7FFC //!< Program Sector Protection Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_LKDN_SECTOR 0x3D2A7F30 //!< Sector Lockdown (Serial/8-bit Mode). +#define AT45DBX_CMDD_PR_SECURITY_REG 0x9B000000 //!< Program Security Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_PR_CONF_REG 0x3D2A80A6 //!< Program Configuration Register (Serial/8-bit Mode). +#define AT45DBX_CMDD_DEEP_PWR_DN 0xB9 //!< Deep Power-down (Serial/8-bit Mode). +#define AT45DBX_CMDD_RSM_DEEP_PWR_DN 0xAB //!< Resume from Deep Power-down (Serial/8-bit Mode). +//! @} + + +/*! \name Bit-Masks and Values for the Status Register + */ +//! @{ +#define AT45DBX_MSK_BUSY 0x80 //!< Busy status bit-mask. +#define AT45DBX_BUSY 0x00 //!< Busy status value (0x00 when busy, 0x80 when ready). +#define AT45DBX_MSK_DENSITY 0x3C //!< Device density bit-mask. +//! @} +#if AT45DBX_MEM_SIZE == AT45DBX_1MB + +/*! \name AT45DB081 Memories + */ +//! @{ +#define AT45DB021D_DENSITY 0x14 //!< Device density value. +#define AT45DBX_DENSITY 0x24 //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 9 //!< Address bits for byte position within buffer. + +//! @} +#elif AT45DBX_MEM_SIZE == AT45DBX_2MB +/*! \name AT45DB021D Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x21 //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 10 //!< Address bits for byte position within buffer. + +//! @} +#if 0 +/*! \name AT45DB161 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x2C //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 10 //!< Address bits for byte position within buffer. + +//! @} +#endif + +#elif AT45DBX_MEM_SIZE == AT45DBX_4MB + +/*! \name AT45DB321 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x34 //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 10 //!< Address bits for byte position within buffer. + +//! @} + +#elif AT45DBX_MEM_SIZE == AT45DBX_8MB + +/*! \name AT45DB642 Memories + */ +//! @{ +#define AT45DBX_DENSITY 0x3C //!< Device density value. +#define AT45DBX_BYTE_ADDR_BITS 11 //!< Address bits for byte position within buffer. + + +//! @} + +#else + #error AT45DBX_MEM_SIZE is not defined to a supported value +#endif + + + +//! Address bits for page selection. +#define AT45DBX_PAGE_ADDR_BITS (AT45DBX_MEM_SIZE - AT45DBX_PAGE_BITS) + +//! Number of bits for addresses within pages. +#define AT45DBX_PAGE_BITS (AT45DBX_BYTE_ADDR_BITS - 1) + +//! Page size in bytes. +#define AT45DBX_PAGE_SIZE (1 << AT45DBX_PAGE_BITS) + +//! Bit-mask for byte position within buffer in \ref gl_ptr_mem. +#define AT45DBX_MSK_PTR_BYTE ((1 << AT45DBX_PAGE_BITS) - 1) + +//! Bit-mask for page selection in \ref gl_ptr_mem. +#define AT45DBX_MSK_PTR_PAGE (((1 << AT45DBX_PAGE_ADDR_BITS) - 1) << AT45DBX_PAGE_BITS) + +//! Bit-mask for byte position within sector in \ref gl_ptr_mem. +#define AT45DBX_MSK_PTR_SECTOR ((1 << AT45DBX_SECTOR_BITS) - 1) + + +/*! \brief Sends a dummy byte through SPI. + */ +#define spi_write_dummy() spi_write(AT45DBX_SPI, 0xFF) + + +//! Boolean indicating whether memory is in busy state. +static Bool at45dbx_busy; + +//! Memory data pointer. +static U32 gl_ptr_mem; + +//! Sector buffer. +static U8 sector_buf[AT45DBX_SECTOR_SIZE]; + + +/*! \name Control Functions + */ +//! @{ + + +Bool at45dbx_init(spi_options_t spiOptions, unsigned int pba_hz) +{ + // Setup SPI registers according to spiOptions. + for (spiOptions.reg = AT45DBX_SPI_FIRST_NPCS; + spiOptions.reg < AT45DBX_SPI_FIRST_NPCS + AT45DBX_MEM_CNT; + spiOptions.reg++) + { + if (spi_setupChipReg(AT45DBX_SPI, &spiOptions, pba_hz) != SPI_OK) return KO; + } + + // Memory ready. + at45dbx_busy = FALSE; + + return OK; +} + + +/*! \brief Selects or unselects a DF memory. + * + * \param memidx Memory ID of DF to select or unselect. + * \param bSelect Boolean indicating whether the DF memory has to be selected. + */ +static void at45dbx_chipselect_df(U8 memidx, Bool bSelect) +{ + if (bSelect) + { + // Select SPI chip. + spi_selectChip(AT45DBX_SPI, AT45DBX_SPI_FIRST_NPCS + memidx); + } + else + { + // Unselect SPI chip. + spi_unselectChip(AT45DBX_SPI, AT45DBX_SPI_FIRST_NPCS + memidx); + } +} + + +Bool at45dbx_mem_check(void) +{ + U8 df; + U16 status = 0; + + // DF memory check. + for (df = 0; df < AT45DBX_MEM_CNT; df++) + { + // Select the DF memory to check. + at45dbx_chipselect_df(df, TRUE); + + // Send the Status Register Read command. + spi_write(AT45DBX_SPI, AT45DBX_CMDC_RD_STATUS_REG); + + // Send a dummy byte to read the status register. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &status); + + // Unselect the checked DF memory. + at45dbx_chipselect_df(df, FALSE); + + // Unexpected device density value. + if ((status & AT45DBX_MSK_DENSITY) < AT45DB021D_DENSITY) + { + printk("Unexpected device density value: %d (0x%x)\n", (status & AT45DBX_MSK_DENSITY), status); + return KO; + } + } + + return OK; +} + + +/*! \brief Waits until the DF is ready. + */ +static void at45dbx_wait_ready(void) +{ + U16 status; + + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Send the Status Register Read command. + spi_write(AT45DBX_SPI, AT45DBX_CMDC_RD_STATUS_REG); + + // Read the status register until the DF is ready. + do + { + // Send a dummy byte to read the status register. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &status); + } while ((status & AT45DBX_MSK_BUSY) == AT45DBX_BUSY); + + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); +} + + +Bool at45dbx_read_open(U32 sector) +{ + U32 addr; + + // Set the global memory pointer to a byte address. + gl_ptr_mem = sector << AT45DBX_SECTOR_BITS; // gl_ptr_mem = sector * AT45DBX_SECTOR_SIZE. + + // If the DF memory is busy, wait until it's ready. + if (at45dbx_busy) at45dbx_wait_ready(); + at45dbx_busy = FALSE; + + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Initiate a page read at a given sector. + + // Send the Main Memory Page Read command. + spi_write(AT45DBX_SPI, AT45DBX_CMDA_RD_PAGE); + + // Send the three address bytes, which comprise: + // - (24 - (AT45DBX_PAGE_ADDR_BITS + AT45DBX_BYTE_ADDR_BITS)) reserved bits; + // - then AT45DBX_PAGE_ADDR_BITS bits specifying the page in main memory to be read; + // - then AT45DBX_BYTE_ADDR_BITS bits specifying the starting byte address within that page. + // NOTE: The bits of gl_ptr_mem above the AT45DBX_MEM_SIZE bits are useless for the local + // DF addressing. They are used for DF discrimination when there are several DFs. + addr = (Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_PAGE) << AT45DBX_BYTE_ADDR_BITS) | + Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE); + spi_write(AT45DBX_SPI, LSB2W(addr)); + spi_write(AT45DBX_SPI, LSB1W(addr)); + spi_write(AT45DBX_SPI, LSB0W(addr)); + + // Send 32 don't care clock cycles to initialize the read operation. + spi_write_dummy(); + spi_write_dummy(); + spi_write_dummy(); + spi_write_dummy(); + + return OK; +} + + +void at45dbx_read_close(void) +{ + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory ready. + at45dbx_busy = FALSE; +} + + +Bool at45dbx_write_open(U32 sector) +{ + U32 addr; + + // Set the global memory pointer to a byte address. + gl_ptr_mem = sector << AT45DBX_SECTOR_BITS; // gl_ptr_mem = sector * AT45DBX_SECTOR_SIZE. + + // If the DF memory is busy, wait until it's ready. + if (at45dbx_busy) at45dbx_wait_ready(); + at45dbx_busy = FALSE; + +#if AT45DBX_PAGE_SIZE > AT45DBX_SECTOR_SIZE + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Transfer the content of the current page to buffer 1. + + // Send the Main Memory Page to Buffer 1 Transfer command. + spi_write(AT45DBX_SPI, AT45DBX_CMDB_XFR_PAGE_TO_BUF1); + + // Send the three address bytes, which comprise: + // - (24 - (AT45DBX_PAGE_ADDR_BITS + AT45DBX_BYTE_ADDR_BITS)) reserved bits; + // - then AT45DBX_PAGE_ADDR_BITS bits specifying the page in main memory to be read; + // - then AT45DBX_BYTE_ADDR_BITS don't care bits. + // NOTE: The bits of gl_ptr_mem above the AT45DBX_MEM_SIZE bits are useless for the local + // DF addressing. They are used for DF discrimination when there are several DFs. + addr = Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_PAGE) << AT45DBX_BYTE_ADDR_BITS; + spi_write(AT45DBX_SPI, LSB2W(addr)); + spi_write(AT45DBX_SPI, LSB1W(addr)); + spi_write(AT45DBX_SPI, LSB0W(addr)); + + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Wait for end of page transfer. + at45dbx_wait_ready(); +#endif + + // Select the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, TRUE); + + // Initiate a page write at a given sector. + + // Send the Main Memory Page Program through Buffer 1 command. + spi_write(AT45DBX_SPI, AT45DBX_CMDB_PR_PAGE_TH_BUF1); + + // Send the three address bytes, which comprise: + // - (24 - (AT45DBX_PAGE_ADDR_BITS + AT45DBX_BYTE_ADDR_BITS)) reserved bits; + // - then AT45DBX_PAGE_ADDR_BITS bits specifying the page in main memory to be written; + // - then AT45DBX_BYTE_ADDR_BITS bits specifying the starting byte address within that page. + // NOTE: The bits of gl_ptr_mem above the AT45DBX_MEM_SIZE bits are useless for the local + // DF addressing. They are used for DF discrimination when there are several DFs. + addr = (Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_PAGE) << AT45DBX_BYTE_ADDR_BITS) | + Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE); + spi_write(AT45DBX_SPI, LSB2W(addr)); + spi_write(AT45DBX_SPI, LSB1W(addr)); + spi_write(AT45DBX_SPI, LSB0W(addr)); + + return OK; +} + + +void at45dbx_write_close(void) +{ + // While end of logical sector not reached, zero-fill remaining memory bytes. + while (Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_SECTOR)) + { + spi_write(AT45DBX_SPI, 0x00); + gl_ptr_mem++; + } + + // Unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; +} + + +//! @} + + +/*! \name Single-Byte Access Functions + */ +//! @{ + + +U8 at45dbx_read_byte(void) +{ + U16 data; + + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously finished a page read. + // => We have to access the next page. + + // Memory ready. + at45dbx_busy = FALSE; + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_read_open input parameter is a sector. + at45dbx_read_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Send a dummy byte to read the next data byte. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &data); + gl_ptr_mem++; + + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) + { + // unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return data; +} + + +Bool at45dbx_write_byte(U8 b) +{ + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously launched a page programming. + // => We have to access the next page. + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_write_open input parameter is a sector. + at45dbx_write_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Write the next data byte. + spi_write(AT45DBX_SPI, b); + gl_ptr_mem++; + + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) + { + // unselect the DF memory gl_ptr_mem points to in order to program the page. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return OK; +} + + +//! @} + + +/*! \name Multiple-Sector Access Functions + */ +//! @{ + + +Bool at45dbx_read_multiple_sector(U16 nb_sector) +{ + while (nb_sector--) + { + // Read the next sector. + at45dbx_read_sector_2_ram(sector_buf); + at45dbx_read_multiple_sector_callback(sector_buf); + } + + return OK; +} + + +Bool at45dbx_write_multiple_sector(U16 nb_sector) +{ + while (nb_sector--) + { + // Write the next sector. + at45dbx_write_multiple_sector_callback(sector_buf); + at45dbx_write_sector_from_ram(sector_buf); + } + + return OK; +} + + +//! @} + + +/*! \name Single-Sector Access Functions + */ +//! @{ + + +Bool at45dbx_read_sector_2_ram(void *ram) +{ + U8 *_ram = ram; + U16 i; + U16 data; + + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously finished a page read. + // => We have to access the next page. + + // Memory ready. + at45dbx_busy = FALSE; + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_read_open input parameter is a sector. + at45dbx_read_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Read the next sector. + for (i = AT45DBX_SECTOR_SIZE; i; i--) + { + // Send a dummy byte to read the next data byte. + spi_write_dummy(); + spi_read(AT45DBX_SPI, &data); + *_ram++ = data; + } + + // Update the memory pointer. + gl_ptr_mem += AT45DBX_SECTOR_SIZE; + +#if AT45DBX_PAGE_SIZE > AT45DBX_SECTOR_SIZE + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) +#endif + { + // unselect the DF memory gl_ptr_mem points to. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return OK; +} + + +Bool at45dbx_write_sector_from_ram(const void *ram) +{ + const U8 *_ram = ram; + U16 i; + + // Memory busy. + if (at45dbx_busy) + { + // Being here, we know that we previously launched a page programming. + // => We have to access the next page. + + // Eventually select the next DF and open the next page. + // NOTE: at45dbx_write_open input parameter is a sector. + at45dbx_write_open(gl_ptr_mem >> AT45DBX_SECTOR_BITS); // gl_ptr_mem / AT45DBX_SECTOR_SIZE. + } + + // Write the next sector. + for (i = AT45DBX_SECTOR_SIZE; i; i--) + { + // Write the next data byte. + spi_write(AT45DBX_SPI, *_ram++); + } + + // Update the memory pointer. + gl_ptr_mem += AT45DBX_SECTOR_SIZE; + +#if AT45DBX_PAGE_SIZE > AT45DBX_SECTOR_SIZE + // If end of page reached, + if (!Rd_bitfield(gl_ptr_mem, AT45DBX_MSK_PTR_BYTE)) +#endif + { + // unselect the DF memory gl_ptr_mem points to in order to program the page. + at45dbx_chipselect_df(gl_ptr_mem >> AT45DBX_MEM_SIZE, FALSE); + + // Memory busy. + at45dbx_busy = TRUE; + } + + return OK; +} + + +//! @} + + +#endif // AT45DBX_MEM == ENABLE diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h new file mode 100644 index 000000000..5816b618b --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx.h @@ -0,0 +1,269 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Management of the AT45DBX data flash controller through SPI. + * + * This file manages the accesses to the AT45DBX data flash components. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _AT45DBX_H_ +#define _AT45DBX_H_ + + +#include "conf_access.h" + +#if AT45DBX_MEM == DISABLE + #error at45dbx.h is #included although AT45DBX_MEM is disabled +#endif + + +#include "spi.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +/*! \name Available AT45DBX Sizes + * + * Number of address bits of available AT45DBX data flash memories. + * + * \note Only memories with page sizes of at least 512 bytes (sector size) are + * supported. + */ +//! @{ +#define AT45DBX_1MB 20 +#define AT45DBX_2MB 21 +#define AT45DBX_4MB 22 +#define AT45DBX_8MB 23 +//! @} + +// AT45DBX_1MB +#define AT45DBX_SECTOR_BITS 8 //! Number of bits for addresses within sectors. +// AT45DBX_2MB AT45DBX_4MB AT45DBX_8MB +//#define AT45DBX_SECTOR_BITS 9 //! Number of bits for addresses within sectors. + +//! Sector size in bytes. +#define AT45DBX_SECTOR_SIZE (1 << AT45DBX_SECTOR_BITS) + +//_____ D E C L A R A T I O N S ____________________________________________ + +/*! \name Control Functions + */ +//! @{ + +/*! \brief Initializes the data flash controller and the SPI channel by which + * the DF is controlled. + * + * \param spiOptions Initialization options of the DF SPI channel. + * \param pba_hz SPI module input clock frequency (PBA clock, Hz). + * + * \retval OK Success. + * \retval KO Failure. + */ +extern Bool at45dbx_init(spi_options_t spiOptions, unsigned int pba_hz); + +/*! \brief Performs a memory check on all DFs. + * + * \retval OK Success. + * \retval KO Failure. + */ +extern Bool at45dbx_mem_check(void); + +/*! \brief Opens a DF memory in read mode at a given sector. + * + * \param sector Start sector. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note Sector may be page-unaligned (depending on the DF page size). + */ +extern Bool at45dbx_read_open(U32 sector); + +/*! \brief Unselects the current DF memory. + */ +extern void at45dbx_read_close(void); + +/*! \brief This function opens a DF memory in write mode at a given sector. + * + * \param sector Start sector. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note Sector may be page-unaligned (depending on the DF page size). + * + * \note If \ref AT45DBX_PAGE_SIZE > \ref AT45DBX_SECTOR_SIZE, page content is + * first loaded in buffer to then be partially updated by write byte or + * write sector functions. + */ +extern Bool at45dbx_write_open(U32 sector); + +/*! \brief Fills the end of the current logical sector and launches page programming. + */ +extern void at45dbx_write_close(void); + +//! @} + + +/*! \name Single-Byte Access Functions + */ +//! @{ + +/*! \brief Performs a single byte read from DF memory. + * + * \return The read byte. + * + * \note First call must be preceded by a call to the \ref at45dbx_read_open + * function. + */ +extern U8 at45dbx_read_byte(void); + +/*! \brief Performs a single byte write to DF memory. + * + * \param b The byte to write. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_write_open + * function. + */ +extern Bool at45dbx_write_byte(U8 b); + +//! @} + + +/*! \name Multiple-Sector Access Functions + */ +//! @{ + +/*! \brief Reads \a nb_sector sectors from DF memory. + * + * Data flow is: DF -> callback. + * + * \param nb_sector Number of contiguous sectors to read. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_read_open + * function. + * + * \note As \ref AT45DBX_PAGE_SIZE is always a multiple of + * \ref AT45DBX_SECTOR_SIZE, there is no need to check page end for each + * byte. + */ +extern Bool at45dbx_read_multiple_sector(U16 nb_sector); + +/*! \brief Callback function invoked after each sector read during + * \ref at45dbx_read_multiple_sector. + * + * \param psector Pointer to read sector. + */ +extern void at45dbx_read_multiple_sector_callback(const void *psector); + +/*! \brief Writes \a nb_sector sectors to DF memory. + * + * Data flow is: callback -> DF. + * + * \param nb_sector Number of contiguous sectors to write. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_write_open + * function. + * + * \note As \ref AT45DBX_PAGE_SIZE is always a multiple of + * \ref AT45DBX_SECTOR_SIZE, there is no need to check page end for each + * byte. + */ +extern Bool at45dbx_write_multiple_sector(U16 nb_sector); + +/*! \brief Callback function invoked before each sector write during + * \ref at45dbx_write_multiple_sector. + * + * \param psector Pointer to sector to write. + */ +extern void at45dbx_write_multiple_sector_callback(void *psector); + +//! @} + + +/*! \name Single-Sector Access Functions + */ +//! @{ + +/*! \brief Reads 1 DF sector to a RAM buffer. + * + * Data flow is: DF -> RAM. + * + * \param ram Pointer to RAM buffer. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_read_open + * function. + */ +extern Bool at45dbx_read_sector_2_ram(void *ram); + +/*! \brief Writes 1 DF sector from a RAM buffer. + * + * Data flow is: RAM -> DF. + * + * \param ram Pointer to RAM buffer. + * + * \retval OK Success. + * \retval KO Failure. + * + * \note First call must be preceded by a call to the \ref at45dbx_write_open + * function. + */ +extern Bool at45dbx_write_sector_from_ram(const void *ram); + +//! @} + + +#endif // _AT45DBX_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c new file mode 100644 index 000000000..4c0ace2f5 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.c @@ -0,0 +1,234 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief CTRL_ACCESS interface for the AT45DBX data flash controller. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ___________________________________________________ + +#include "conf_access.h" + + +#if AT45DBX_MEM == ENABLE + +#include "conf_at45dbx.h" +#include "at45dbx.h" +#include "at45dbx_mem.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +//! Whether to detect write accesses to the memory. +#define AT45DBX_MEM_TEST_CHANGE_STATE ENABLED + + +#if (ACCESS_USB == ENABLED || ACCESS_MEM_TO_RAM == ENABLED) && AT45DBX_MEM_TEST_CHANGE_STATE == ENABLED + +//! Memory data modified flag. +static volatile Bool s_b_data_modify = FALSE; + +#endif + + +/*! \name Control Interface + */ +//! @{ + + +Ctrl_status at45dbx_test_unit_ready(void) +{ + return (at45dbx_mem_check() == OK) ? CTRL_GOOD : CTRL_NO_PRESENT; +} + + +Ctrl_status at45dbx_read_capacity(U32 *u32_nb_sector) +{ + *u32_nb_sector = (AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) - 1; + + return CTRL_GOOD; +} + + +Bool at45dbx_wr_protect(void) +{ + return FALSE; +} + + +Bool at45dbx_removal(void) +{ + return FALSE; +} + + +//! @} + + +#if ACCESS_USB == ENABLED + +#include "usb_drv.h" +#include "scsi_decoder.h" + + +/*! \name MEM <-> USB Interface + */ +//! @{ + + +Ctrl_status at45dbx_usb_read_10(U32 addr, U16 nb_sector) +{ + if (addr + nb_sector > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + + at45dbx_read_open(addr); + at45dbx_read_multiple_sector(nb_sector); + at45dbx_read_close(); + + return CTRL_GOOD; +} + + +void at45dbx_read_multiple_sector_callback(const void *psector) +{ + U16 data_to_transfer = AT45DBX_SECTOR_SIZE; + + // Transfer read sector to the USB interface. + while (data_to_transfer) + { + while (!Is_usb_in_ready(g_scsi_ep_ms_in)) + { + if(!Is_usb_endpoint_enabled(g_scsi_ep_ms_in)) + return; // USB Reset + } + + Usb_reset_endpoint_fifo_access(g_scsi_ep_ms_in); + data_to_transfer = usb_write_ep_txpacket(g_scsi_ep_ms_in, psector, + data_to_transfer, &psector); + Usb_ack_in_ready_send(g_scsi_ep_ms_in); + } +} + + +Ctrl_status at45dbx_usb_write_10(U32 addr, U16 nb_sector) +{ + if (addr + nb_sector > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + +#if AT45DBX_MEM_TEST_CHANGE_STATE == ENABLED + if (nb_sector) s_b_data_modify = TRUE; +#endif + + at45dbx_write_open(addr); + at45dbx_write_multiple_sector(nb_sector); + at45dbx_write_close(); + + return CTRL_GOOD; +} + + +void at45dbx_write_multiple_sector_callback(void *psector) +{ + U16 data_to_transfer = AT45DBX_SECTOR_SIZE; + + // Transfer sector to write from the USB interface. + while (data_to_transfer) + { + while (!Is_usb_out_received(g_scsi_ep_ms_out)) + { + if(!Is_usb_endpoint_enabled(g_scsi_ep_ms_out)) + return; // USB Reset + } + + Usb_reset_endpoint_fifo_access(g_scsi_ep_ms_out); + data_to_transfer = usb_read_ep_rxpacket(g_scsi_ep_ms_out, psector, + data_to_transfer, &psector); + Usb_ack_out_received_free(g_scsi_ep_ms_out); + } +} + + +//! @} + +#endif // ACCESS_USB == ENABLED + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + + +Ctrl_status at45dbx_df_2_ram(U32 addr, void *ram) +{ + if (addr + 1 > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + + at45dbx_read_open(addr); + at45dbx_read_sector_2_ram(ram); + at45dbx_read_close(); + + return CTRL_GOOD; +} + + +Ctrl_status at45dbx_ram_2_df(U32 addr, const void *ram) +{ + if (addr + 1 > AT45DBX_MEM_CNT << (AT45DBX_MEM_SIZE - AT45DBX_SECTOR_BITS)) return CTRL_FAIL; + +#if AT45DBX_MEM_TEST_CHANGE_STATE == ENABLED + s_b_data_modify = TRUE; +#endif + + at45dbx_write_open(addr); + at45dbx_write_sector_from_ram(ram); + at45dbx_write_close(); + + return CTRL_GOOD; +} + + +//! @} + +#endif // ACCESS_MEM_TO_RAM == ENABLED + + +#endif // AT45DBX_MEM == ENABLE diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h new file mode 100644 index 000000000..de24fa371 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/at45dbx_mem.h @@ -0,0 +1,164 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief CTRL_ACCESS interface for the AT45DBX data flash controller. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _AT45DBX_MEM_H_ +#define _AT45DBX_MEM_H_ + + +#include "conf_access.h" + +#if AT45DBX_MEM == DISABLE + #error at45dbx_mem.h is #included although AT45DBX_MEM is disabled +#endif + + +#include "ctrl_access.h" + + +//_____ D E C L A R A T I O N S ____________________________________________ + +/*! \name Control Interface + */ +//! @{ + +/*! \brief Tests the memory state and initializes the memory if required. + * + * The TEST UNIT READY SCSI primary command allows an application client to poll + * a LUN until it is ready without having to allocate memory for returned data. + * + * This command may be used to check the media status of LUNs with removable + * media. + * + * \return Status. + */ +extern Ctrl_status at45dbx_test_unit_ready(void); + +/*! \brief Returns the address of the last valid sector in the memory. + * + * \param u32_nb_sector Pointer to the address of the last valid sector. + * + * \return Status. + */ +extern Ctrl_status at45dbx_read_capacity(U32 *u32_nb_sector); + +/*! \brief Returns the write-protection state of the memory. + * + * \return \c TRUE if the memory is write-protected, else \c FALSE. + * + * \note Only used by removable memories with hardware-specific write + * protection. + */ +extern Bool at45dbx_wr_protect(void); + +/*! \brief Tells whether the memory is removable. + * + * \return \c TRUE if the memory is removable, else \c FALSE. + */ +extern Bool at45dbx_removal(void); + +//! @} + + +#if ACCESS_USB == ENABLED + +/*! \name MEM <-> USB Interface + */ +//! @{ + +/*! \brief Tranfers data from the memory to USB. + * + * \param addr Address of first memory sector to read. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status at45dbx_usb_read_10(U32 addr, U16 nb_sector); + +/*! \brief Tranfers data from USB to the memory. + * + * \param addr Address of first memory sector to write. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status at45dbx_usb_write_10(U32 addr, U16 nb_sector); + +//! @} + +#endif + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + +/*! \brief Copies 1 data sector from the memory to RAM. + * + * \param addr Address of first memory sector to read. + * \param ram Pointer to RAM buffer to write. + * + * \return Status. + */ +extern Ctrl_status at45dbx_df_2_ram(U32 addr, void *ram); + +/*! \brief Copies 1 data sector from RAM to the memory. + * + * \param addr Address of first memory sector to write. + * \param ram Pointer to RAM buffer to read. + * + * \return Status. + */ +extern Ctrl_status at45dbx_ram_2_df(U32 addr, const void *ram); + +//! @} + +#endif + + +#endif // _AT45DBX_MEM_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c new file mode 100644 index 000000000..2eee15c0a --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.c @@ -0,0 +1,1117 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief FLASHC driver for AVR32 UC3. + * + * AVR32 Flash Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a FLASHC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include <stddef.h> +#include "compiler.h" +#include "flashc.h" + + +/*! \name FLASHC Writable Bit-Field Registers + */ +//! @{ + +typedef union +{ + unsigned long fcr; + avr32_flashc_fcr_t FCR; +} u_avr32_flashc_fcr_t; + +typedef union +{ + unsigned long fcmd; + avr32_flashc_fcmd_t FCMD; +} u_avr32_flashc_fcmd_t; + +//! @} + + +/*! \name Flash Properties + */ +//! @{ + + +unsigned int flashc_get_flash_size(void) +{ +#if (defined AVR32_FLASHC_300_H_INCLUDED) + static const unsigned int FLASH_SIZE[1 << AVR32_FLASHC_PR_FSZ_SIZE] = + { + 32 << 10, + 64 << 10, + 128 << 10, + 256 << 10, + 384 << 10, + 512 << 10, + 768 << 10, + 1024 << 10 + }; + return FLASH_SIZE[(AVR32_FLASHC.pr & AVR32_FLASHC_PR_FSZ_MASK) >> AVR32_FLASHC_PR_FSZ_OFFSET]; +#else + static const unsigned int FLASH_SIZE[1 << AVR32_FLASHC_FSR_FSZ_SIZE] = + { + 32 << 10, + 64 << 10, + 128 << 10, + 256 << 10, + 384 << 10, + 512 << 10, + 768 << 10, + 1024 << 10 + }; + return FLASH_SIZE[(AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_FSZ_MASK) >> AVR32_FLASHC_FSR_FSZ_OFFSET]; +#endif +} + + +unsigned int flashc_get_page_count(void) +{ + return flashc_get_flash_size() / AVR32_FLASHC_PAGE_SIZE; +} + + +unsigned int flashc_get_page_count_per_region(void) +{ + return flashc_get_page_count() / AVR32_FLASHC_REGIONS; +} + + +unsigned int flashc_get_page_region(int page_number) +{ + return ((page_number >= 0) ? page_number : flashc_get_page_number()) / flashc_get_page_count_per_region(); +} + + +unsigned int flashc_get_region_first_page_number(unsigned int region) +{ + return region * flashc_get_page_count_per_region(); +} + + +//! @} + + +/*! \name FLASHC Control + */ +//! @{ + + +unsigned int flashc_get_wait_state(void) +{ + return (AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_FWS_MASK) >> AVR32_FLASHC_FCR_FWS_OFFSET; +} + + +void flashc_set_wait_state(unsigned int wait_state) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.fws = wait_state; + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +Bool flashc_is_ready_int_enabled(void) +{ + return ((AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_FRDY_MASK) != 0); +} + + +void flashc_enable_ready_int(Bool enable) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.frdy = (enable != FALSE); + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +Bool flashc_is_lock_error_int_enabled(void) +{ + return ((AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_LOCKE_MASK) != 0); +} + + +void flashc_enable_lock_error_int(Bool enable) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.locke = (enable != FALSE); + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +Bool flashc_is_prog_error_int_enabled(void) +{ + return ((AVR32_FLASHC.fcr & AVR32_FLASHC_FCR_PROGE_MASK) != 0); +} + + +void flashc_enable_prog_error_int(Bool enable) +{ + u_avr32_flashc_fcr_t u_avr32_flashc_fcr = {AVR32_FLASHC.fcr}; + u_avr32_flashc_fcr.FCR.proge = (enable != FALSE); + AVR32_FLASHC.fcr = u_avr32_flashc_fcr.fcr; +} + + +//! @} + + +/*! \name FLASHC Status + */ +//! @{ + + +Bool flashc_is_ready(void) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_FRDY_MASK) != 0); +} + + +void flashc_default_wait_until_ready(void) +{ + while (!flashc_is_ready()); +} + + +void (*volatile flashc_wait_until_ready)(void) = flashc_default_wait_until_ready; + + +/*! \brief Gets the error status of the FLASHC. + * + * \return The error status of the FLASHC built up from + * \c AVR32_FLASHC_FSR_LOCKE_MASK and \c AVR32_FLASHC_FSR_PROGE_MASK. + * + * \warning This hardware error status is cleared by all functions reading the + * Flash Status Register (FSR). This function is therefore not part of + * the driver's API which instead presents \ref flashc_is_lock_error + * and \ref flashc_is_programming_error. + */ +static unsigned int flashc_get_error_status(void) +{ + return AVR32_FLASHC.fsr & (AVR32_FLASHC_FSR_LOCKE_MASK | + AVR32_FLASHC_FSR_PROGE_MASK); +} + + +//! Sticky error status of the FLASHC. +//! This variable is updated by functions that issue FLASHC commands. It +//! contains the cumulated FLASHC error status of all the FLASHC commands issued +//! by a function. +static unsigned int flashc_error_status = 0; + + +Bool flashc_is_lock_error(void) +{ + return ((flashc_error_status & AVR32_FLASHC_FSR_LOCKE_MASK) != 0); +} + + +Bool flashc_is_programming_error(void) +{ + return ((flashc_error_status & AVR32_FLASHC_FSR_PROGE_MASK) != 0); +} + + +//! @} + + +/*! \name FLASHC Command Control + */ +//! @{ + + +unsigned int flashc_get_command(void) +{ + return (AVR32_FLASHC.fcmd & AVR32_FLASHC_FCMD_CMD_MASK) >> AVR32_FLASHC_FCMD_CMD_OFFSET; +} + + +unsigned int flashc_get_page_number(void) +{ + return (AVR32_FLASHC.fcmd & AVR32_FLASHC_FCMD_PAGEN_MASK) >> AVR32_FLASHC_FCMD_PAGEN_OFFSET; +} + + +void flashc_issue_command(unsigned int command, int page_number) +{ + u_avr32_flashc_fcmd_t u_avr32_flashc_fcmd; + flashc_wait_until_ready(); + u_avr32_flashc_fcmd.fcmd = AVR32_FLASHC.fcmd; + u_avr32_flashc_fcmd.FCMD.cmd = command; + if (page_number >= 0) u_avr32_flashc_fcmd.FCMD.pagen = page_number; + u_avr32_flashc_fcmd.FCMD.key = AVR32_FLASHC_FCMD_KEY_KEY; + AVR32_FLASHC.fcmd = u_avr32_flashc_fcmd.fcmd; + flashc_error_status = flashc_get_error_status(); + flashc_wait_until_ready(); +} + + +//! @} + + +/*! \name FLASHC Global Commands + */ +//! @{ + + +void flashc_no_operation(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_NOP, -1); +} + + +void flashc_erase_all(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EA, -1); +} + + +//! @} + + +/*! \name FLASHC Protection Mechanisms + */ +//! @{ + + +Bool flashc_is_security_bit_active(void) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_SECURITY_MASK) != 0); +} + + +void flashc_activate_security_bit(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_SSB, -1); +} + + +unsigned int flashc_get_bootloader_protected_size(void) +{ + unsigned int bootprot = (1 << AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE) - 1 - + flashc_read_gp_fuse_bitfield(AVR32_FLASHC_FGPFRLO_BOOTPROT_OFFSET, + AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE); + return (bootprot) ? AVR32_FLASHC_PAGE_SIZE << bootprot : 0; +} + + +unsigned int flashc_set_bootloader_protected_size(unsigned int bootprot_size) +{ + flashc_set_gp_fuse_bitfield(AVR32_FLASHC_FGPFRLO_BOOTPROT_OFFSET, + AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE, + (1 << AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE) - 1 - + ((bootprot_size) ? + 32 - clz((((min(max(bootprot_size, AVR32_FLASHC_PAGE_SIZE << 1), + AVR32_FLASHC_PAGE_SIZE << + ((1 << AVR32_FLASHC_FGPFRLO_BOOTPROT_SIZE) - 1)) + + AVR32_FLASHC_PAGE_SIZE - 1) / + AVR32_FLASHC_PAGE_SIZE) << 1) - 1) - 1 : + 0)); + return flashc_get_bootloader_protected_size(); +} + + +Bool flashc_is_external_privileged_fetch_locked(void) +{ + return (!flashc_read_gp_fuse_bit(AVR32_FLASHC_FGPFRLO_EPFL_OFFSET)); +} + + +void flashc_lock_external_privileged_fetch(Bool lock) +{ + flashc_set_gp_fuse_bit(AVR32_FLASHC_FGPFRLO_EPFL_OFFSET, !lock); +} + + +Bool flashc_is_page_region_locked(int page_number) +{ + return flashc_is_region_locked(flashc_get_page_region(page_number)); +} + + +Bool flashc_is_region_locked(unsigned int region) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_LOCK0_MASK << (region & (AVR32_FLASHC_REGIONS - 1))) != 0); +} + + +void flashc_lock_page_region(int page_number, Bool lock) +{ + flashc_issue_command((lock) ? AVR32_FLASHC_FCMD_CMD_LP : AVR32_FLASHC_FCMD_CMD_UP, page_number); +} + + +void flashc_lock_region(unsigned int region, Bool lock) +{ + flashc_lock_page_region(flashc_get_region_first_page_number(region), lock); +} + + +void flashc_lock_all_regions(Bool lock) +{ + unsigned int error_status = 0; + unsigned int region = AVR32_FLASHC_REGIONS; + while (region) + { + flashc_lock_region(--region, lock); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +//! @} + + +/*! \name Access to General-Purpose Fuses + */ +//! @{ + + +Bool flashc_read_gp_fuse_bit(unsigned int gp_fuse_bit) +{ + return ((flashc_read_all_gp_fuses() & 1ULL << (gp_fuse_bit & 0x3F)) != 0); +} + + +U64 flashc_read_gp_fuse_bitfield(unsigned int pos, unsigned int width) +{ + return flashc_read_all_gp_fuses() >> (pos & 0x3F) & ((1ULL << min(width, 64)) - 1); +} + + +U8 flashc_read_gp_fuse_byte(unsigned int gp_fuse_byte) +{ + return flashc_read_all_gp_fuses() >> ((gp_fuse_byte & 0x07) << 3); +} + + +U64 flashc_read_all_gp_fuses(void) +{ + return AVR32_FLASHC.fgpfrlo | (U64)AVR32_FLASHC.fgpfrhi << 32; +} + + +Bool flashc_erase_gp_fuse_bit(unsigned int gp_fuse_bit, Bool check) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EGPB, gp_fuse_bit & 0x3F); + return (check) ? flashc_read_gp_fuse_bit(gp_fuse_bit) : TRUE; +} + + +Bool flashc_erase_gp_fuse_bitfield(unsigned int pos, unsigned int width, Bool check) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_bit; + pos &= 0x3F; + width = min(width, 64); + for (gp_fuse_bit = pos; gp_fuse_bit < pos + width; gp_fuse_bit++) + { + flashc_erase_gp_fuse_bit(gp_fuse_bit, FALSE); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; + return (check) ? (flashc_read_gp_fuse_bitfield(pos, width) == (1ULL << width) - 1) : TRUE; +} + + +Bool flashc_erase_gp_fuse_byte(unsigned int gp_fuse_byte, Bool check) +{ + unsigned int error_status; + unsigned int current_gp_fuse_byte; + U64 value = flashc_read_all_gp_fuses(); + flashc_erase_all_gp_fuses(FALSE); + error_status = flashc_error_status; + for (current_gp_fuse_byte = 0; current_gp_fuse_byte < 8; current_gp_fuse_byte++, value >>= 8) + { + if (current_gp_fuse_byte != gp_fuse_byte) + { + flashc_write_gp_fuse_byte(current_gp_fuse_byte, value); + error_status |= flashc_error_status; + } + } + flashc_error_status = error_status; + return (check) ? (flashc_read_gp_fuse_byte(gp_fuse_byte) == 0xFF) : TRUE; +} + + +Bool flashc_erase_all_gp_fuses(Bool check) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EAGPF, -1); + return (check) ? (flashc_read_all_gp_fuses() == 0xFFFFFFFFFFFFFFFFULL) : TRUE; +} + + +void flashc_write_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value) +{ + if (!value) + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_WGPB, gp_fuse_bit & 0x3F); +} + + +void flashc_write_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_bit; + pos &= 0x3F; + width = min(width, 64); + for (gp_fuse_bit = pos; gp_fuse_bit < pos + width; gp_fuse_bit++, value >>= 1) + { + flashc_write_gp_fuse_bit(gp_fuse_bit, value & 0x01); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +void flashc_write_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_PGPFB, (gp_fuse_byte & 0x07) | value << 3); +} + + +void flashc_write_all_gp_fuses(U64 value) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_byte; + for (gp_fuse_byte = 0; gp_fuse_byte < 8; gp_fuse_byte++, value >>= 8) + { + flashc_write_gp_fuse_byte(gp_fuse_byte, value); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +void flashc_set_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value) +{ + if (value) + flashc_erase_gp_fuse_bit(gp_fuse_bit, FALSE); + else + flashc_write_gp_fuse_bit(gp_fuse_bit, FALSE); +} + + +void flashc_set_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value) +{ + unsigned int error_status = 0; + unsigned int gp_fuse_bit; + pos &= 0x3F; + width = min(width, 64); + for (gp_fuse_bit = pos; gp_fuse_bit < pos + width; gp_fuse_bit++, value >>= 1) + { + flashc_set_gp_fuse_bit(gp_fuse_bit, value & 0x01); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; +} + + +void flashc_set_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value) +{ + unsigned int error_status; + switch (value) + { + case 0xFF: + flashc_erase_gp_fuse_byte(gp_fuse_byte, FALSE); + break; + case 0x00: + flashc_write_gp_fuse_byte(gp_fuse_byte, 0x00); + break; + default: + flashc_erase_gp_fuse_byte(gp_fuse_byte, FALSE); + error_status = flashc_error_status; + flashc_write_gp_fuse_byte(gp_fuse_byte, value); + flashc_error_status |= error_status; + } +} + + +void flashc_set_all_gp_fuses(U64 value) +{ + unsigned int error_status; + switch (value) + { + case 0xFFFFFFFFFFFFFFFFULL: + flashc_erase_all_gp_fuses(FALSE); + break; + case 0x0000000000000000ULL: + flashc_write_all_gp_fuses(0x0000000000000000ULL); + break; + default: + flashc_erase_all_gp_fuses(FALSE); + error_status = flashc_error_status; + flashc_write_all_gp_fuses(value); + flashc_error_status |= error_status; + } +} + + +//! @} + + +/*! \name Access to Flash Pages + */ +//! @{ + + +void flashc_clear_page_buffer(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_CPB, -1); +} + + +Bool flashc_is_page_erased(void) +{ + return ((AVR32_FLASHC.fsr & AVR32_FLASHC_FSR_QPRR_MASK) != 0); +} + + +Bool flashc_quick_page_read(int page_number) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_QPR, page_number); + return flashc_is_page_erased(); +} + + +Bool flashc_erase_page(int page_number, Bool check) +{ + Bool page_erased = TRUE; + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EP, page_number); + if (check) + { + unsigned int error_status = flashc_error_status; + page_erased = flashc_quick_page_read(-1); + flashc_error_status |= error_status; + } + return page_erased; +} + + +Bool flashc_erase_all_pages(Bool check) +{ + Bool all_pages_erased = TRUE; + unsigned int error_status = 0; + unsigned int page_number = flashc_get_page_count(); + while (page_number) + { + all_pages_erased &= flashc_erase_page(--page_number, check); + error_status |= flashc_error_status; + } + flashc_error_status = error_status; + return all_pages_erased; +} + + +void flashc_write_page(int page_number) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_WP, page_number); +} + + +Bool flashc_quick_user_page_read(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_QPRUP, -1); + return flashc_is_page_erased(); +} + + +Bool flashc_erase_user_page(Bool check) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_EUP, -1); + return (check) ? flashc_quick_user_page_read() : TRUE; +} + + +void flashc_write_user_page(void) +{ + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_WUP, -1); +} + + +volatile void *flashc_memset8(volatile void *dst, U8 src, size_t nbytes, Bool erase) +{ + return flashc_memset16(dst, src | (U16)src << 8, nbytes, erase); +} + + +volatile void *flashc_memset16(volatile void *dst, U16 src, size_t nbytes, Bool erase) +{ + return flashc_memset32(dst, src | (U32)src << 16, nbytes, erase); +} + + +volatile void *flashc_memset32(volatile void *dst, U32 src, size_t nbytes, Bool erase) +{ + return flashc_memset64(dst, src | (U64)src << 32, nbytes, erase); +} + + +volatile void *flashc_memset64(volatile void *dst, U64 src, size_t nbytes, Bool erase) +{ + // Use aggregated pointers to have several alignments available for a same address. + UnionCVPtr flash_array_end; + UnionVPtr dest; + Union64 source = {0}; + StructCVPtr dest_end; + UnionCVPtr flash_page_source_end; + Bool incomplete_flash_page_end; + Union64 flash_dword; + UnionVPtr tmp; + unsigned int error_status = 0; + unsigned int i; + + // Reformat arguments. + flash_array_end.u8ptr = AVR32_FLASH + flashc_get_flash_size(); + dest.u8ptr = dst; + for (i = (Get_align((U32)dest.u8ptr, sizeof(U64)) - 1) & (sizeof(U64) - 1); + src; i = (i - 1) & (sizeof(U64) - 1)) + { + source.u8[i] = src; + src >>= 8; + } + dest_end.u8ptr = dest.u8ptr + nbytes; + + // If destination is outside flash, go to next flash page if any. + if (dest.u8ptr < AVR32_FLASH) + { + dest.u8ptr = AVR32_FLASH; + } + else if (flash_array_end.u8ptr <= dest.u8ptr && dest.u8ptr < AVR32_FLASHC_USER_PAGE) + { + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + + // If end of destination is outside flash, move it to the end of the previous flash page if any. + if (dest_end.u8ptr > AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE) + { + dest_end.u8ptr = AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE; + } + else if (AVR32_FLASHC_USER_PAGE >= dest_end.u8ptr && dest_end.u8ptr > flash_array_end.u8ptr) + { + dest_end.u8ptr = flash_array_end.u8ptr; + } + + // Align each end of destination pointer with its natural boundary. + dest_end.u16ptr = (U16 *)Align_down((U32)dest_end.u8ptr, sizeof(U16)); + dest_end.u32ptr = (U32 *)Align_down((U32)dest_end.u16ptr, sizeof(U32)); + dest_end.u64ptr = (U64 *)Align_down((U32)dest_end.u32ptr, sizeof(U64)); + + // While end of destination is not reached... + while (dest.u8ptr < dest_end.u8ptr) + { + // Clear the page buffer in order to prepare data for a flash page write. + flashc_clear_page_buffer(); + error_status |= flashc_error_status; + + // Determine where the source data will end in the current flash page. + flash_page_source_end.u64ptr = + (U64 *)min((U32)dest_end.u64ptr, + Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) + AVR32_FLASHC_PAGE_SIZE); + + // Determine if the current destination page has an incomplete end. + incomplete_flash_page_end = (Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) >= + Align_down((U32)dest_end.u8ptr, AVR32_FLASHC_PAGE_SIZE)); + + // Use a flash double-word buffer to manage unaligned accesses. + flash_dword.u64 = source.u64; + + // If destination does not point to the beginning of the current flash page... + if (!Test_align((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE)) + { + // Fill the beginning of the page buffer with the current flash page data. + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + for (tmp.u8ptr = (U8 *)Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE); + tmp.u64ptr < (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + + // If destination is not 64-bit aligned... + if (!Test_align((U32)dest.u8ptr, sizeof(U64))) + { + // Fill the beginning of the flash double-word buffer with the current + // flash page data. + // This is required by the hardware, even if page erase is not + // requested, in order to be able to write successfully to erased parts + // of flash pages that have already been written to. + for (i = 0; i < Get_align((U32)dest.u8ptr, sizeof(U64)); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Align the destination pointer with its 64-bit boundary. + dest.u64ptr = (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + + // If the current destination double-word is not the last one... + if (dest.u64ptr < dest_end.u64ptr) + { + // Write the flash double-word buffer to the page buffer and reinitialize it. + *dest.u64ptr++ = flash_dword.u64; + flash_dword.u64 = source.u64; + } + } + } + + // Write the source data to the page buffer with 64-bit alignment. + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + *dest.u64ptr++ = source.u64; + + // If the current destination page has an incomplete end... + if (incomplete_flash_page_end) + { + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + { + tmp.u8ptr = (volatile U8 *)dest_end.u8ptr; + + // If end of destination is not 64-bit aligned... + if (!Test_align((U32)dest_end.u8ptr, sizeof(U64))) + { + // Fill the end of the flash double-word buffer with the current flash page data. + for (i = Get_align((U32)dest_end.u8ptr, sizeof(U64)); i < sizeof(U64); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Write the flash double-word buffer to the page buffer. + *dest.u64ptr++ = flash_dword.u64; + } + + // Fill the end of the page buffer with the current flash page data. + for (; !Test_align((U32)tmp.u64ptr, AVR32_FLASHC_PAGE_SIZE); tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + } + } + + // If the current flash page is in the flash array... + if (dest.u8ptr <= AVR32_FLASHC_USER_PAGE) + { + // Erase the current page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_page(-1, FALSE); + error_status |= flashc_error_status; + } + flashc_write_page(-1); + error_status |= flashc_error_status; + + // If the end of the flash array is reached, go to the User page. + if (dest.u8ptr >= flash_array_end.u8ptr) + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + // If the current flash page is the User page... + else + { + // Erase the User page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_user_page(FALSE); + error_status |= flashc_error_status; + } + flashc_write_user_page(); + error_status |= flashc_error_status; + } + } + + // Update the FLASHC error status. + flashc_error_status = error_status; + + // Return the initial destination pointer as the standard memset function does. + return dst; +} + + +volatile void *flashc_memcpy(volatile void *dst, const void *src, size_t nbytes, Bool erase) +{ + // Use aggregated pointers to have several alignments available for a same address. + UnionCVPtr flash_array_end; + UnionVPtr dest; + UnionCPtr source; + StructCVPtr dest_end; + UnionCVPtr flash_page_source_end; + Bool incomplete_flash_page_end; + Union64 flash_dword; + Bool flash_dword_pending = FALSE; + UnionVPtr tmp; + unsigned int error_status = 0; + unsigned int i, j; + + // Reformat arguments. + flash_array_end.u8ptr = AVR32_FLASH + flashc_get_flash_size(); + dest.u8ptr = dst; + source.u8ptr = src; + dest_end.u8ptr = dest.u8ptr + nbytes; + + // If destination is outside flash, go to next flash page if any. + if (dest.u8ptr < AVR32_FLASH) + { + source.u8ptr += AVR32_FLASH - dest.u8ptr; + dest.u8ptr = AVR32_FLASH; + } + else if (flash_array_end.u8ptr <= dest.u8ptr && dest.u8ptr < AVR32_FLASHC_USER_PAGE) + { + source.u8ptr += AVR32_FLASHC_USER_PAGE - dest.u8ptr; + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + + // If end of destination is outside flash, move it to the end of the previous flash page if any. + if (dest_end.u8ptr > AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE) + { + dest_end.u8ptr = AVR32_FLASHC_USER_PAGE + AVR32_FLASHC_USER_PAGE_SIZE; + } + else if (AVR32_FLASHC_USER_PAGE >= dest_end.u8ptr && dest_end.u8ptr > flash_array_end.u8ptr) + { + dest_end.u8ptr = flash_array_end.u8ptr; + } + + // Align each end of destination pointer with its natural boundary. + dest_end.u16ptr = (U16 *)Align_down((U32)dest_end.u8ptr, sizeof(U16)); + dest_end.u32ptr = (U32 *)Align_down((U32)dest_end.u16ptr, sizeof(U32)); + dest_end.u64ptr = (U64 *)Align_down((U32)dest_end.u32ptr, sizeof(U64)); + + // While end of destination is not reached... + while (dest.u8ptr < dest_end.u8ptr) + { + // Clear the page buffer in order to prepare data for a flash page write. + flashc_clear_page_buffer(); + error_status |= flashc_error_status; + + // Determine where the source data will end in the current flash page. + flash_page_source_end.u64ptr = + (U64 *)min((U32)dest_end.u64ptr, + Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) + AVR32_FLASHC_PAGE_SIZE); + + // Determine if the current destination page has an incomplete end. + incomplete_flash_page_end = (Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE) >= + Align_down((U32)dest_end.u8ptr, AVR32_FLASHC_PAGE_SIZE)); + + // If destination does not point to the beginning of the current flash page... + if (!Test_align((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE)) + { + // Fill the beginning of the page buffer with the current flash page data. + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + for (tmp.u8ptr = (U8 *)Align_down((U32)dest.u8ptr, AVR32_FLASHC_PAGE_SIZE); + tmp.u64ptr < (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + + // If destination is not 64-bit aligned... + if (!Test_align((U32)dest.u8ptr, sizeof(U64))) + { + // Fill the beginning of the flash double-word buffer with the current + // flash page data. + // This is required by the hardware, even if page erase is not + // requested, in order to be able to write successfully to erased parts + // of flash pages that have already been written to. + for (i = 0; i < Get_align((U32)dest.u8ptr, sizeof(U64)); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Fill the end of the flash double-word buffer with the source data. + for (; i < sizeof(U64); i++) + flash_dword.u8[i] = *source.u8ptr++; + + // Align the destination pointer with its 64-bit boundary. + dest.u64ptr = (U64 *)Align_down((U32)dest.u8ptr, sizeof(U64)); + + // If the current destination double-word is not the last one... + if (dest.u64ptr < dest_end.u64ptr) + { + // Write the flash double-word buffer to the page buffer. + *dest.u64ptr++ = flash_dword.u64; + } + // If the current destination double-word is the last one, the flash + // double-word buffer must be kept for later. + else flash_dword_pending = TRUE; + } + } + + // Read the source data with the maximal possible alignment and write it to + // the page buffer with 64-bit alignment. + switch (Get_align((U32)source.u8ptr, sizeof(U32))) + { + case 0: + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + *dest.u64ptr++ = *source.u64ptr++; + break; + + case sizeof(U16): + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + { + for (j = 0; j < sizeof(U64) / sizeof(U16); j++) flash_dword.u16[j] = *source.u16ptr++; + *dest.u64ptr++ = flash_dword.u64; + } + break; + + default: + for (i = flash_page_source_end.u64ptr - dest.u64ptr; i; i--) + { + for (j = 0; j < sizeof(U64); j++) flash_dword.u8[j] = *source.u8ptr++; + *dest.u64ptr++ = flash_dword.u64; + } + } + + // If the current destination page has an incomplete end... + if (incomplete_flash_page_end) + { + // If the flash double-word buffer is in use, do not initialize it. + if (flash_dword_pending) i = Get_align((U32)dest_end.u8ptr, sizeof(U64)); + // If the flash double-word buffer is free... + else + { + // Fill the beginning of the flash double-word buffer with the source data. + for (i = 0; i < Get_align((U32)dest_end.u8ptr, sizeof(U64)); i++) + flash_dword.u8[i] = *source.u8ptr++; + } + + // This is required by the hardware, even if page erase is not requested, + // in order to be able to write successfully to erased parts of flash + // pages that have already been written to. + { + tmp.u8ptr = (volatile U8 *)dest_end.u8ptr; + + // If end of destination is not 64-bit aligned... + if (!Test_align((U32)dest_end.u8ptr, sizeof(U64))) + { + // Fill the end of the flash double-word buffer with the current flash page data. + for (; i < sizeof(U64); i++) + flash_dword.u8[i] = *tmp.u8ptr++; + + // Write the flash double-word buffer to the page buffer. + *dest.u64ptr++ = flash_dword.u64; + } + + // Fill the end of the page buffer with the current flash page data. + for (; !Test_align((U32)tmp.u64ptr, AVR32_FLASHC_PAGE_SIZE); tmp.u64ptr++) + *tmp.u64ptr = *tmp.u64ptr; + } + } + + // If the current flash page is in the flash array... + if (dest.u8ptr <= AVR32_FLASHC_USER_PAGE) + { + // Erase the current page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_page(-1, FALSE); + error_status |= flashc_error_status; + } + flashc_write_page(-1); + error_status |= flashc_error_status; + + // If the end of the flash array is reached, go to the User page. + if (dest.u8ptr >= flash_array_end.u8ptr) + { + source.u8ptr += AVR32_FLASHC_USER_PAGE - dest.u8ptr; + dest.u8ptr = AVR32_FLASHC_USER_PAGE; + } + } + // If the current flash page is the User page... + else + { + // Erase the User page if requested and write it from the page buffer. + if (erase) + { + flashc_erase_user_page(FALSE); + error_status |= flashc_error_status; + } + flashc_write_user_page(); + error_status |= flashc_error_status; + } + } + + // Update the FLASHC error status. + flashc_error_status = error_status; + + // Return the initial destination pointer as the standard memcpy function does. + return dst; +} + + +#if UC3C +void flashc_set_flash_waitstate_and_readmode(unsigned long cpu_f_hz) +{ + //! Device-specific data + #undef AVR32_FLASHC_FWS_0_MAX_FREQ + #undef AVR32_FLASHC_FWS_1_MAX_FREQ + #undef AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ + #undef AVR32_FLASHC_HSEN_FWS_1_MAX_FREQ + #define AVR32_FLASHC_FWS_0_MAX_FREQ 33000000 + #define AVR32_FLASHC_FWS_1_MAX_FREQ 66000000 + #define AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ 33000000 + #define AVR32_FLASHC_HSEN_FWS_1_MAX_FREQ 72000000 + // These defines are missing from or wrong in the toolchain header files uc3cxxx.h + // Put a Bugzilla + + if(cpu_f_hz > AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ) // > 33MHz + { + // Set a wait-state + flashc_set_wait_state(1); + if(cpu_f_hz <= AVR32_FLASHC_FWS_1_MAX_FREQ) // <= 66MHz and >33Mhz + { + // Disable the high-speed read mode. + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); + } + else // > 66Mhz + { + // Enable the high-speed read mode. + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSEN, -1); + } + } + else // <= 33 MHz + { + // Disable wait-state + flashc_set_wait_state(0); + + // Disable the high-speed read mode. + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); + + } +} +#endif // UC3C device-specific implementation + +//! @} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h new file mode 100644 index 000000000..9f2547a6e --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC/flashc.h @@ -0,0 +1,1002 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief FLASHC driver for AVR32 UC3. + * + * AVR32 Flash Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a FLASHC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _FLASHC_H_ +#define _FLASHC_H_ + +#include <avr32/io.h> +#include <stddef.h> +#include "compiler.h" + +//! Number of flash regions defined by the FLASHC. +#define AVR32_FLASHC_REGIONS (AVR32_FLASHC_FLASH_SIZE /\ + (AVR32_FLASHC_PAGES_PR_REGION * AVR32_FLASHC_PAGE_SIZE)) + + +/*! \name Flash Properties + */ +//! @{ + +/*! \brief Gets the size of the whole flash array. + * + * \return The size of the whole flash array in bytes. + */ +extern unsigned int flashc_get_flash_size(void); + +/*! \brief Gets the total number of pages in the flash array. + * + * \return The total number of pages in the flash array. + */ +extern unsigned int flashc_get_page_count(void); + +/*! \brief Gets the number of pages in each flash region. + * + * \return The number of pages in each flash region. + */ +extern unsigned int flashc_get_page_count_per_region(void); + +/*! \brief Gets the region number of a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \return The region number of the specified page. + */ +extern unsigned int flashc_get_page_region(int page_number); + +/*! \brief Gets the number of the first page of a region. + * + * \param region The region number: \c 0 to <tt>(AVR32_FLASHC_REGIONS - 1)</tt>. + * + * \return The number of the first page of the specified region. + */ +extern unsigned int flashc_get_region_first_page_number(unsigned int region); + +//! @} + + +/*! \name FLASHC Control + */ +//! @{ + +/*! \brief Gets the number of wait states of flash read accesses. + * + * \return The number of wait states of flash read accesses. + */ +extern unsigned int flashc_get_wait_state(void); + +/*! \brief Sets the number of wait states of flash read accesses. + * + * \param wait_state The number of wait states of flash read accesses: \c 0 to + * \c 1. + */ +extern void flashc_set_wait_state(unsigned int wait_state); + +/*! \brief Tells whether the Flash Ready interrupt is enabled. + * + * \return Whether the Flash Ready interrupt is enabled. + */ +extern Bool flashc_is_ready_int_enabled(void); + +/*! \brief Enables or disables the Flash Ready interrupt. + * + * \param enable Whether to enable the Flash Ready interrupt: \c TRUE or + * \c FALSE. + */ +extern void flashc_enable_ready_int(Bool enable); + +/*! \brief Tells whether the Lock Error interrupt is enabled. + * + * \return Whether the Lock Error interrupt is enabled. + */ +extern Bool flashc_is_lock_error_int_enabled(void); + +/*! \brief Enables or disables the Lock Error interrupt. + * + * \param enable Whether to enable the Lock Error interrupt: \c TRUE or + * \c FALSE. + */ +extern void flashc_enable_lock_error_int(Bool enable); + +/*! \brief Tells whether the Programming Error interrupt is enabled. + * + * \return Whether the Programming Error interrupt is enabled. + */ +extern Bool flashc_is_prog_error_int_enabled(void); + +/*! \brief Enables or disables the Programming Error interrupt. + * + * \param enable Whether to enable the Programming Error interrupt: \c TRUE or + * \c FALSE. + */ +extern void flashc_enable_prog_error_int(Bool enable); + +//! @} + + +/*! \name FLASHC Status + */ +//! @{ + +/*! \brief Tells whether the FLASHC is ready to run a new command. + * + * \return Whether the FLASHC is ready to run a new command. + */ +extern Bool flashc_is_ready(void); + +/*! \brief Waits actively until the FLASHC is ready to run a new command. + * + * This is the default function assigned to \ref flashc_wait_until_ready. + */ +extern void flashc_default_wait_until_ready(void); + +//! Pointer to the function used by the driver when it needs to wait until the +//! FLASHC is ready to run a new command. +//! The default function is \ref flashc_default_wait_until_ready. +//! The user may change this pointer to use another implementation. +extern void (*volatile flashc_wait_until_ready)(void); + +/*! \brief Tells whether a Lock Error has occurred during the last function + * called that issued one or more FLASHC commands. + * + * \return Whether a Lock Error has occurred during the last function called + * that issued one or more FLASHC commands. + */ +extern Bool flashc_is_lock_error(void); + +/*! \brief Tells whether a Programming Error has occurred during the last + * function called that issued one or more FLASHC commands. + * + * \return Whether a Programming Error has occurred during the last function + * called that issued one or more FLASHC commands. + */ +extern Bool flashc_is_programming_error(void); + +//! @} + + +/*! \name FLASHC Command Control + */ +//! @{ + +/*! \brief Gets the last issued FLASHC command. + * + * \return The last issued FLASHC command. + */ +extern unsigned int flashc_get_command(void); + +/*! \brief Gets the current FLASHC page number. + * + * \return The current FLASHC page number. + */ +extern unsigned int flashc_get_page_number(void); + +/*! \brief Issues a FLASHC command. + * + * \param command The command: \c AVR32_FLASHC_FCMD_CMD_x. + * \param page_number The page number to apply the command to: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: use this to apply the command to the current page number + * or if the command does not apply to any page number; + * \arg this argument may have other meanings according to the command. See + * the FLASHC chapter of the MCU datasheet. + * + * \warning A Lock Error is issued if the command violates the protection + * mechanism. + * + * \warning A Programming Error is issued if the command is invalid. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_issue_command(unsigned int command, int page_number); + +//! @} + + +/*! \name FLASHC Global Commands + */ +//! @{ + +/*! \brief Issues a No Operation command to the FLASHC. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_no_operation(void); + +/*! \brief Issues an Erase All command to the FLASHC. + * + * This command erases all bits in the flash array, the general-purpose fuse + * bits and the Security bit. The User page is not erased. + * + * This command also ensures that all volatile memories, such as register file + * and RAMs, are erased before the Security bit is erased, i.e. deactivated. + * + * \warning A Lock Error is issued if at least one region is locked or the + * bootloader protection is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern void flashc_erase_all(void); + +//! @} + + +/*! \name FLASHC Protection Mechanisms + */ +//! @{ + +/*! \brief Tells whether the Security bit is active. + * + * \return Whether the Security bit is active. + */ +extern Bool flashc_is_security_bit_active(void); + +/*! \brief Activates the Security bit. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_activate_security_bit(void); + +/*! \brief Gets the bootloader protected size. + * + * \return The bootloader protected size in bytes. + */ +extern unsigned int flashc_get_bootloader_protected_size(void); + +/*! \brief Sets the bootloader protected size. + * + * \param bootprot_size The wanted bootloader protected size in bytes. If this + * size is not supported, the actual size will be the + * nearest greater available size or the maximal possible + * size if the requested size is too large. + * + * \return The actual bootloader protected size in bytes. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern unsigned int flashc_set_bootloader_protected_size(unsigned int bootprot_size); + +/*! \brief Tells whether external privileged fetch is locked. + * + * \return Whether external privileged fetch is locked. + */ +extern Bool flashc_is_external_privileged_fetch_locked(void); + +/*! \brief Locks or unlocks external privileged fetch. + * + * \param lock Whether to lock external privileged fetch: \c TRUE or \c FALSE. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_external_privileged_fetch(Bool lock); + +/*! \brief Tells whether the region of a page is locked. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \return Whether the region of the specified page is locked. + */ +extern Bool flashc_is_page_region_locked(int page_number); + +/*! \brief Tells whether a region is locked. + * + * \param region The region number: \c 0 to <tt>(AVR32_FLASHC_REGIONS - 1)</tt>. + * + * \return Whether the specified region is locked. + */ +extern Bool flashc_is_region_locked(unsigned int region); + +/*! \brief Locks or unlocks the region of a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * \param lock Whether to lock the region of the specified page: \c TRUE or + * \c FALSE. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_page_region(int page_number, Bool lock); + +/*! \brief Locks or unlocks a region. + * + * \param region The region number: \c 0 to <tt>(AVR32_FLASHC_REGIONS - 1)</tt>. + * \param lock Whether to lock the specified region: \c TRUE or \c FALSE. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_region(unsigned int region, Bool lock); + +/*! \brief Locks or unlocks all regions. + * + * \param lock Whether to lock the regions: \c TRUE or \c FALSE. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_lock_all_regions(Bool lock); + +//! @} + + +/*! \name Access to General-Purpose Fuses + */ +//! @{ + +/*! \brief Reads a general-purpose fuse bit. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * + * \return The value of the specified general-purpose fuse bit. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_read_gp_fuse_bit(unsigned int gp_fuse_bit); + +/*! \brief Reads a general-purpose fuse bit-field. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * + * \return The value of the specified general-purpose fuse bit-field. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern U64 flashc_read_gp_fuse_bitfield(unsigned int pos, unsigned int width); + +/*! \brief Reads a general-purpose fuse byte. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * + * \return The value of the specified general-purpose fuse byte. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern U8 flashc_read_gp_fuse_byte(unsigned int gp_fuse_byte); + +/*! \brief Reads all general-purpose fuses. + * + * \return The value of all general-purpose fuses as a word. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern U64 flashc_read_all_gp_fuses(void); + +/*! \brief Erases a general-purpose fuse bit. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_gp_fuse_bit(unsigned int gp_fuse_bit, Bool check); + +/*! \brief Erases a general-purpose fuse bit-field. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_gp_fuse_bitfield(unsigned int pos, unsigned int width, Bool check); + +/*! \brief Erases a general-purpose fuse byte. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_gp_fuse_byte(unsigned int gp_fuse_byte, Bool check); + +/*! \brief Erases all general-purpose fuses. + * + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern Bool flashc_erase_all_gp_fuses(Bool check); + +/*! \brief Writes a general-purpose fuse bit. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * \param value The value of the specified general-purpose fuse bit. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value); + +/*! \brief Writes a general-purpose fuse bit-field. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * \param value The value of the specified general-purpose fuse bit-field. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value); + +/*! \brief Writes a general-purpose fuse byte. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * \param value The value of the specified general-purpose fuse byte. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value); + +/*! \brief Writes all general-purpose fuses. + * + * \param value The value of all general-purpose fuses as a word. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_write_all_gp_fuses(U64 value); + +/*! \brief Sets a general-purpose fuse bit with the appropriate erase and write + * operations. + * + * \param gp_fuse_bit The general-purpose fuse bit: \c 0 to \c 63. + * \param value The value of the specified general-purpose fuse bit. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_gp_fuse_bit(unsigned int gp_fuse_bit, Bool value); + +/*! \brief Sets a general-purpose fuse bit-field with the appropriate erase and + * write operations. + * + * \param pos The bit-position of the general-purpose fuse bit-field: \c 0 to + * \c 63. + * \param width The bit-width of the general-purpose fuse bit-field: \c 0 to + * \c 64. + * \param value The value of the specified general-purpose fuse bit-field. + * + * \warning A Lock Error is issued if the Security bit is active and the command + * is applied to BOOTPROT or EPFL fuses. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_gp_fuse_bitfield(unsigned int pos, unsigned int width, U64 value); + +/*! \brief Sets a general-purpose fuse byte with the appropriate erase and write + * operations. + * + * \param gp_fuse_byte The general-purpose fuse byte: \c 0 to \c 7. + * \param value The value of the specified general-purpose fuse byte. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_gp_fuse_byte(unsigned int gp_fuse_byte, U8 value); + +/*! \brief Sets all general-purpose fuses with the appropriate erase and write + * operations. + * + * \param value The value of all general-purpose fuses as a word. + * + * \warning A Lock Error is issued if the Security bit is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note The actual number of general-purpose fuse bits implemented by hardware + * is given by \c AVR32_FLASHC_GPF_NUM. The other bits among the 64 are + * fixed at 1 by hardware. + */ +extern void flashc_set_all_gp_fuses(U64 value); + +//! @} + + +/*! \name Access to Flash Pages + */ +//! @{ + +/*! \brief Clears the page buffer. + * + * This command resets all bits in the page buffer to one. Write accesses to the + * page buffer can only change page buffer bits from one to zero. + * + * \warning The page buffer is not automatically reset after a page write. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern void flashc_clear_page_buffer(void); + +/*! \brief Tells whether the page to which the last Quick Page Read or Quick + * Page Read User Page command was applied was erased. + * + * \return Whether the page to which the last Quick Page Read or Quick Page Read + * User Page command was applied was erased. + */ +extern Bool flashc_is_page_erased(void); + +/*! \brief Applies the Quick Page Read command to a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \return Whether the specified page is erased. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern Bool flashc_quick_page_read(int page_number); + +/*! \brief Erases a page. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if the command is applied to a page belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern Bool flashc_erase_page(int page_number, Bool check); + +/*! \brief Erases all pages within the flash array. + * + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \warning A Lock Error is issued if at least one region is locked or the + * bootloader protection is active. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern Bool flashc_erase_all_pages(Bool check); + +/*! \brief Writes a page from the page buffer. + * + * \param page_number The page number: + * \arg \c 0 to <tt>(flashc_get_page_count() - 1)</tt>: a page number within + * the flash array; + * \arg <tt>< 0</tt>: the current page number. + * + * \warning A Lock Error is issued if the command is applied to a page belonging + * to a locked region or to the bootloader protected area. + * + * \warning The page buffer is not automatically reset after a page write. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + */ +extern void flashc_write_page(int page_number); + +/*! \brief Issues a Quick Page Read User Page command to the FLASHC. + * + * \return Whether the User page is erased. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern Bool flashc_quick_user_page_read(void); + +/*! \brief Erases the User page. + * + * \param check Whether to check erase: \c TRUE or \c FALSE. + * + * \return Whether the erase succeeded or always \c TRUE if erase check was not + * requested. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note An erase operation can only set bits. + */ +extern Bool flashc_erase_user_page(Bool check); + +/*! \brief Writes the User page from the page buffer. + * + * \warning The page buffer is not automatically reset after a page write. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + * + * \note A write operation can only clear bits. + */ +extern void flashc_write_user_page(void); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src source byte. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source byte. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset8(volatile void *dst, U8 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source half-word. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source half-word. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset16(volatile void *dst, U16 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source word. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source word. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset32(volatile void *dst, U32 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source double-word. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source double-word. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memset64(volatile void *dst, U64 src, size_t nbytes, Bool erase); + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the repeated \a src big-endian source pattern. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Source double-word. + * \param src_width \a src width in bits: 8, 16, 32 or 64. + * \param nbytes Number of bytes to set. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +#define flashc_memset(dst, src, src_width, nbytes, erase) \ + TPASTE2(flashc_memset, src_width)((dst), (src), (nbytes), (erase)) + +/*! \brief Copies \a nbytes bytes to the flash destination pointed to by \a dst + * from the source pointed to by \a src. + * + * The destination areas that are not within the flash array or the User page + * are ignored. + * + * All pointer and size alignments are supported. + * + * \param dst Pointer to flash destination. + * \param src Pointer to source data. + * \param nbytes Number of bytes to copy. + * \param erase Whether to erase before writing: \c TRUE or \c FALSE. + * + * \return The value of \a dst. + * + * \warning If copying takes place between areas that overlap, the behavior is + * undefined. + * + * \warning This function may be called with \a erase set to \c FALSE only if + * the destination consists only of erased words, i.e. this function + * can not be used to write only one bit of a previously written word. + * E.g., if \c 0x00000001 then \c 0xFFFFFFFE are written to a word, the + * resulting value in flash may be different from \c 0x00000000. + * + * \warning A Lock Error is issued if the command is applied to pages belonging + * to a locked region or to the bootloader protected area. + * + * \note The FLASHC error status returned by \ref flashc_is_lock_error and + * \ref flashc_is_programming_error is updated. + */ +extern volatile void *flashc_memcpy(volatile void *dst, const void *src, size_t nbytes, Bool erase); + +#if UC3C + +/*! \brief Depednding to the CPU frequency, set the wait states of flash read + * accesses and enable or disable the High speed read mode. + * + * \param cpu_f_hz The CPU frequency + */ +void flashc_set_flash_waitstate_and_readmode(unsigned long cpu_f_hz); +#endif // UC3C device-specific implementation + +//! @} + + +#endif // _FLASHC_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c new file mode 100644 index 000000000..b6b83c73f --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.c @@ -0,0 +1,458 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief GPIO driver for AVR32 UC3. + * + * This file defines a useful set of functions for the GPIO. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a GPIO module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "gpio.h" + +//! GPIO module instance. +#define GPIO AVR32_GPIO + + +/*! \name Peripheral Bus Interface + */ +//! @{ + + +int gpio_enable_module(const gpio_map_t gpiomap, unsigned int size) +{ + int status = GPIO_SUCCESS; + unsigned int i; + + for (i = 0; i < size; i++) + { + status |= gpio_enable_module_pin(gpiomap->pin, gpiomap->function); + gpiomap++; + } + + return status; +} + + +int gpio_enable_module_pin(unsigned int pin, unsigned int function) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + // Enable the correct function. + switch (function) + { + case 0: // A function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + + case 1: // B function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + + case 2: // C function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + + case 3: // D function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pmr2c = 1 << (pin & 0x1F); +#endif + break; + +#if defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + case 4: // E function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; + + case 5: // F function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1c = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; + + case 6: // G function. + gpio_port->pmr0c = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; + + case 7: // H function. + gpio_port->pmr0s = 1 << (pin & 0x1F); + gpio_port->pmr1s = 1 << (pin & 0x1F); + gpio_port->pmr2s = 1 << (pin & 0x1F); + break; +#endif + + default: + return GPIO_INVALID_ARGUMENT; + } + + // Disable GPIO control. + gpio_port->gperc = 1 << (pin & 0x1F); + + return GPIO_SUCCESS; +} + + +void gpio_enable_gpio(const gpio_map_t gpiomap, unsigned int size) +{ + unsigned int i; + + for (i = 0; i < size; i++) + { + gpio_enable_gpio_pin(gpiomap->pin); + gpiomap++; + } +} + + +void gpio_enable_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->oderc = 1 << (pin & 0x1F); + gpio_port->gpers = 1 << (pin & 0x1F); +} + + +// The open-drain mode is not synthesized on the current AVR32 products. +// If one day some AVR32 products have this feature, the corresponding part +// numbers should be listed in the #if below. +// Note that other functions are available in this driver to use pins with open +// drain in GPIO mode. The advantage of the open-drain mode functions over these +// other functions is that they can be used not only in GPIO mode but also in +// module mode. +#if 0 + + +void gpio_enable_pin_open_drain(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->odmers = 1 << (pin & 0x1F); +} + + +void gpio_disable_pin_open_drain(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->odmerc = 1 << (pin & 0x1F); +} + + +#endif + + +void gpio_enable_pin_pull_up(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puers = 1 << (pin & 0x1F); +#if defined(AVR32_GPIO_200_H_INCLUDED) || defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) + gpio_port->pderc = 1 << (pin & 0x1F); +#endif +} + + +void gpio_disable_pin_pull_up(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puerc = 1 << (pin & 0x1F); +} + +#if defined(AVR32_GPIO_200_H_INCLUDED) || defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) +// Added support of Pull-up Resistor, Pull-down Resistor and Buskeeper Control. + +/*! \brief Enables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +void gpio_enable_pin_pull_down(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puerc = 1 << (pin & 0x1F); + gpio_port->pders = 1 << (pin & 0x1F); +} + +/*! \brief Disables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +void gpio_disable_pin_pull_down(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->pderc = 1 << (pin & 0x1F); +} + +/*! \brief Enables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +void gpio_enable_pin_buskeeper(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puers = 1 << (pin & 0x1F); + gpio_port->pders = 1 << (pin & 0x1F); +} + +/*! \brief Disables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +void gpio_disable_pin_buskeeper(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->puerc = 1 << (pin & 0x1F); + gpio_port->pderc = 1 << (pin & 0x1F); +} + +#endif + +int gpio_get_pin_value(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return (gpio_port->pvr >> (pin & 0x1F)) & 1; +} + + +int gpio_get_gpio_pin_output_value(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return (gpio_port->ovr >> (pin & 0x1F)) & 1; +} + + +int gpio_get_gpio_open_drain_pin_output_value(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return ((gpio_port->oder >> (pin & 0x1F)) & 1) ^ 1; +} + + +void gpio_set_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrs = 1 << (pin & 0x1F); // Value to be driven on the I/O line: 1. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_clr_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrc = 1 << (pin & 0x1F); // Value to be driven on the I/O line: 0. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_tgl_gpio_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrt = 1 << (pin & 0x1F); // Toggle the I/O line. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_set_gpio_open_drain_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->oderc = 1 << (pin & 0x1F); // The GPIO output driver is disabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_clr_gpio_open_drain_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrc = 1 << (pin & 0x1F); // Value to be driven on the I/O line: 0. + gpio_port->oders = 1 << (pin & 0x1F); // The GPIO output driver is enabled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_tgl_gpio_open_drain_pin(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + gpio_port->ovrc = 1 << (pin & 0x1F); // Value to be driven on the I/O line if the GPIO output driver is enabled: 0. + gpio_port->odert = 1 << (pin & 0x1F); // The GPIO output driver is toggled for that pin. + gpio_port->gpers = 1 << (pin & 0x1F); // The GPIO module controls that pin. +} + + +void gpio_enable_pin_glitch_filter(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->gfers = 1 << (pin & 0x1F); +} + + +void gpio_disable_pin_glitch_filter(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->gferc = 1 << (pin & 0x1F); +} + +/*! \brief Configure the edge detector of an input pin + * + * \param pin The pin number. + * \param mode The edge detection mode (\ref GPIO_PIN_CHANGE, \ref GPIO_RISING_EDGE + * or \ref GPIO_FALLING_EDGE). + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +static int gpio_configure_edge_detector(unsigned int pin, unsigned int mode) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + // Configure the edge detector. + switch (mode) + { + case GPIO_PIN_CHANGE: + gpio_port->imr0c = 1 << (pin & 0x1F); + gpio_port->imr1c = 1 << (pin & 0x1F); + break; + + case GPIO_RISING_EDGE: + gpio_port->imr0s = 1 << (pin & 0x1F); + gpio_port->imr1c = 1 << (pin & 0x1F); + break; + + case GPIO_FALLING_EDGE: + gpio_port->imr0c = 1 << (pin & 0x1F); + gpio_port->imr1s = 1 << (pin & 0x1F); + break; + + default: + return GPIO_INVALID_ARGUMENT; + } + + return GPIO_SUCCESS; +} + + +int gpio_enable_pin_interrupt(unsigned int pin, unsigned int mode) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + // Enable the glitch filter. + gpio_port->gfers = 1 << (pin & 0x1F); + + // Configure the edge detector. + if(GPIO_INVALID_ARGUMENT == gpio_configure_edge_detector(pin, mode)) + return(GPIO_INVALID_ARGUMENT); + + // Enable interrupt. + gpio_port->iers = 1 << (pin & 0x1F); + + return GPIO_SUCCESS; +} + + +void gpio_disable_pin_interrupt(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->ierc = 1 << (pin & 0x1F); +} + + +int gpio_get_pin_interrupt_flag(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + return (gpio_port->ifr >> (pin & 0x1F)) & 1; +} + + +void gpio_clear_pin_interrupt_flag(unsigned int pin) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + gpio_port->ifrc = 1 << (pin & 0x1F); +} + + +//# +//# Peripheral Event System Support. +//# +#if UC3L +int gpio_configure_pin_periph_event_mode(unsigned int pin, unsigned int mode, unsigned int use_igf) +{ + volatile avr32_gpio_port_t *gpio_port = &GPIO.port[pin >> 5]; + + if(TRUE == use_igf) + { + // Enable the glitch filter. + gpio_port->gfers = 1 << (pin & 0x1F); + } + else + { + // Disable the glitch filter. + gpio_port->gferc = 1 << (pin & 0x1F); + } + + // Configure the edge detector. + return(gpio_configure_edge_detector(pin, mode)); +} + +#endif + +//! @} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h new file mode 100644 index 000000000..f0b5fd884 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h @@ -0,0 +1,583 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief GPIO header for AVR32 UC3. + * + * This file contains basic GPIO driver functions. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a GPIO module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _GPIO_H_ +#define _GPIO_H_ + +#include <avr32/io.h> +#include "compiler.h" + +/*! \name Return Values of the GPIO API + */ +//! @{ +#define GPIO_SUCCESS 0 //!< Function successfully completed. +#define GPIO_INVALID_ARGUMENT 1 //!< Input parameters are out of range. +//! @} + + +/*! \name Interrupt Trigger Modes + */ +//! @{ +#define GPIO_PIN_CHANGE 0 //!< Interrupt triggered upon pin change. +#define GPIO_RISING_EDGE 1 //!< Interrupt triggered upon rising edge. +#define GPIO_FALLING_EDGE 2 //!< Interrupt triggered upon falling edge. +//! @} + + +//! A type definition of pins and modules connectivity. +typedef struct +{ + unsigned char pin; //!< Module pin. + unsigned char function; //!< Module function. +} gpio_map_t[]; + + +/*! \name Peripheral Bus Interface + * + * Low-speed interface with a non-deterministic number of clock cycles per + * access. + * + * This interface operates with lower clock frequencies (fPB <= fCPU), and its + * timing is not deterministic since it needs to access a shared bus which may + * be heavily loaded. + * + * \note This interface is immediately available without initialization. + */ +//! @{ + +/*! \brief Enables specific module modes for a set of pins. + * + * \param gpiomap The pin map. + * \param size The number of pins in \a gpiomap. + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_enable_module(const gpio_map_t gpiomap, unsigned int size); + +/*! \brief Enables a specific module mode for a pin. + * + * \param pin The pin number.\n + * Refer to the product header file `uc3x.h' (where x is the part + * number; e.g. x = a0512) for module pins. E.g., to enable a PWM + * channel output, the pin number can be AVR32_PWM_3_PIN for PWM + * channel 3. + * \param function The pin function.\n + * Refer to the product header file `uc3x.h' (where x is the + * part number; e.g. x = a0512) for module pin functions. E.g., + * to enable a PWM channel output, the pin function can be + * AVR32_PWM_3_FUNCTION for PWM channel 3. + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_enable_module_pin(unsigned int pin, unsigned int function); + +/*! \brief Enables the GPIO mode of a set of pins. + * + * \param gpiomap The pin map. + * \param size The number of pins in \a gpiomap. + */ +extern void gpio_enable_gpio(const gpio_map_t gpiomap, unsigned int size); + +/*! \brief Enables the GPIO mode of a pin. + * + * \param pin The pin number.\n + * Refer to the product header file `uc3x.h' (where x is the part + * number; e.g. x = a0512) for pin definitions. E.g., to enable the + * GPIO mode of PX21, AVR32_PIN_PX21 can be used. Module pins such as + * AVR32_PWM_3_PIN for PWM channel 3 can also be used to release + * module pins for GPIO. + */ +extern void gpio_enable_gpio_pin(unsigned int pin); + +// The open-drain mode is not synthesized on the current AVR32 products. +// If one day some AVR32 products have this feature, the corresponding part +// numbers should be listed in the #if below. +// Note that other functions are available in this driver to use pins with open +// drain in GPIO mode. The advantage of the open-drain mode functions over these +// other functions is that they can be used not only in GPIO mode but also in +// module mode. +#if 0 + +/*! \brief Enables the open-drain mode of a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_open_drain(unsigned int pin); + +/*! \brief Disables the open-drain mode of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_open_drain(unsigned int pin); + +#endif + +/*! \brief Enables the pull-up resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_pull_up(unsigned int pin); + +/*! \brief Disables the pull-up resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_pull_up(unsigned int pin); + +#if defined(AVR32_GPIO_200_H_INCLUDED) || defined(AVR32_GPIO_210_H_INCLUDED) || defined(AVR32_GPIO_211_H_INCLUDED) +// Added support of Pull-up Resistor, Pull-down Resistor and Buskeeper Control. + +/*! \brief Enables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_pull_down(unsigned int pin); + +/*! \brief Disables the pull-down resistor of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_pull_down(unsigned int pin); + +/*! \brief Enables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_buskeeper(unsigned int pin); + +/*! \brief Disables the buskeeper functionality on a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_buskeeper(unsigned int pin); + +#endif + +/*! \brief Returns the value of a pin. + * + * \param pin The pin number. + * + * \return The pin value. + */ +extern int gpio_get_pin_value(unsigned int pin); + +/*! \brief Returns the output value set for a GPIO pin. + * + * \param pin The pin number. + * + * \return The pin output value. + * + * \note This function must be used in conjunction with \ref gpio_set_gpio_pin, + * \ref gpio_clr_gpio_pin and \ref gpio_tgl_gpio_pin. + */ +extern int gpio_get_gpio_pin_output_value(unsigned int pin); + +/*! \brief Returns the output value set for a GPIO pin using open drain. + * + * \param pin The pin number. + * + * \return The pin output value. + * + * \note This function must be used in conjunction with + * \ref gpio_set_gpio_open_drain_pin, \ref gpio_clr_gpio_open_drain_pin + * and \ref gpio_tgl_gpio_open_drain_pin. + */ +extern int gpio_get_gpio_open_drain_pin_output_value(unsigned int pin); + +/*! \brief Drives a GPIO pin to 1. + * + * \param pin The pin number. + */ +extern void gpio_set_gpio_pin(unsigned int pin); + +/*! \brief Drives a GPIO pin to 0. + * + * \param pin The pin number. + */ +extern void gpio_clr_gpio_pin(unsigned int pin); + +/*! \brief Toggles a GPIO pin. + * + * \param pin The pin number. + */ +extern void gpio_tgl_gpio_pin(unsigned int pin); + +/*! \brief Drives a GPIO pin to 1 using open drain. + * + * \param pin The pin number. + */ +extern void gpio_set_gpio_open_drain_pin(unsigned int pin); + +/*! \brief Drives a GPIO pin to 0 using open drain. + * + * \param pin The pin number. + */ +extern void gpio_clr_gpio_open_drain_pin(unsigned int pin); + +/*! \brief Toggles a GPIO pin using open drain. + * + * \param pin The pin number. + */ +extern void gpio_tgl_gpio_open_drain_pin(unsigned int pin); + +/*! \brief Enables the glitch filter of a pin. + * + * When the glitch filter is enabled, a glitch with duration of less than 1 + * clock cycle is automatically rejected, while a pulse with duration of 2 clock + * cycles or more is accepted. For pulse durations between 1 clock cycle and 2 + * clock cycles, the pulse may or may not be taken into account, depending on + * the precise timing of its occurrence. Thus for a pulse to be guaranteed + * visible it must exceed 2 clock cycles, whereas for a glitch to be reliably + * filtered out, its duration must not exceed 1 clock cycle. The filter + * introduces 2 clock cycles latency. + * + * \param pin The pin number. + */ +extern void gpio_enable_pin_glitch_filter(unsigned int pin); + +/*! \brief Disables the glitch filter of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_glitch_filter(unsigned int pin); + +/*! \brief Enables the interrupt of a pin with the specified settings. + * + * \param pin The pin number. + * \param mode The trigger mode (\ref GPIO_PIN_CHANGE, \ref GPIO_RISING_EDGE or + * \ref GPIO_FALLING_EDGE). + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_enable_pin_interrupt(unsigned int pin, unsigned int mode); + +/*! \brief Disables the interrupt of a pin. + * + * \param pin The pin number. + */ +extern void gpio_disable_pin_interrupt(unsigned int pin); + +/*! \brief Gets the interrupt flag of a pin. + * + * \param pin The pin number. + * + * \return The pin interrupt flag. + */ +extern int gpio_get_pin_interrupt_flag(unsigned int pin); + +/*! \brief Clears the interrupt flag of a pin. + * + * \param pin The pin number. + */ +extern void gpio_clear_pin_interrupt_flag(unsigned int pin); + +//! @} + + +#if (defined AVR32_GPIO_LOCAL_ADDRESS) +/*! \name Local Bus Interface + * + * High-speed interface with only one clock cycle per access. + * + * This interface operates with high clock frequency (fCPU), and its timing is + * deterministic since it does not need to access a shared bus which may be + * heavily loaded. + * + * \warning To use this interface, the clock frequency of the peripheral bus on + * which the GPIO peripheral is connected must be set to the CPU clock + * frequency (fPB = fCPU). + * + * \note This interface has to be initialized in order to be available. + */ +//! @{ + +/*! \brief Enables the local bus interface for GPIO. + * + * \note This function must have been called at least once before using other + * functions in this interface. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_init(void) +{ + Set_system_register(AVR32_CPUCR, + Get_system_register(AVR32_CPUCR) | AVR32_CPUCR_LOCEN_MASK); +} + +/*! \brief Enables the output driver of a pin. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_enable_pin_output_driver(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oders = 1 << (pin & 0x1F); +} + +/*! \brief Disables the output driver of a pin. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_disable_pin_output_driver(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oderc = 1 << (pin & 0x1F); +} + +/*! \brief Returns the value of a pin. + * + * \param pin The pin number. + * + * \return The pin value. + * + * \note \ref gpio_local_init must have been called beforehand. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int gpio_local_get_pin_value(unsigned int pin) +{ + return (AVR32_GPIO_LOCAL.port[pin >> 5].pvr >> (pin & 0x1F)) & 1; +} + +/*! \brief Drives a GPIO pin to 1. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin nor its output + * driver. \ref gpio_enable_gpio_pin and + * \ref gpio_local_enable_pin_output_driver can be called for this + * purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_set_gpio_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrs = 1 << (pin & 0x1F); +} + +/*! \brief Drives a GPIO pin to 0. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin nor its output + * driver. \ref gpio_enable_gpio_pin and + * \ref gpio_local_enable_pin_output_driver can be called for this + * purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_clr_gpio_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrc = 1 << (pin & 0x1F); +} + +/*! \brief Toggles a GPIO pin. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init must have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin nor its output + * driver. \ref gpio_enable_gpio_pin and + * \ref gpio_local_enable_pin_output_driver can be called for this + * purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_tgl_gpio_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrt = 1 << (pin & 0x1F); +} + +/*! \brief Initializes the configuration of a GPIO pin so that it can be used + * with GPIO open-drain functions. + * + * \note This function must have been called at least once before using + * \ref gpio_local_set_gpio_open_drain_pin, + * \ref gpio_local_clr_gpio_open_drain_pin or + * \ref gpio_local_tgl_gpio_open_drain_pin. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_init_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].ovrc = 1 << (pin & 0x1F); +} + +/*! \brief Drives a GPIO pin to 1 using open drain. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init and \ref gpio_local_init_gpio_open_drain_pin must + * have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_set_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oderc = 1 << (pin & 0x1F); +} + +/*! \brief Drives a GPIO pin to 0 using open drain. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init and \ref gpio_local_init_gpio_open_drain_pin must + * have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_clr_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].oders = 1 << (pin & 0x1F); +} + +/*! \brief Toggles a GPIO pin using open drain. + * + * \param pin The pin number. + * + * \note \ref gpio_local_init and \ref gpio_local_init_gpio_open_drain_pin must + * have been called beforehand. + * + * \note This function does not enable the GPIO mode of the pin. + * \ref gpio_enable_gpio_pin can be called for this purpose. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_local_tgl_gpio_open_drain_pin(unsigned int pin) +{ + AVR32_GPIO_LOCAL.port[pin >> 5].odert = 1 << (pin & 0x1F); +} + +//! @} +#endif // AVR32_GPIO_LOCAL_ADDRESS + +#if UC3L +//! @{ +/*! \name Peripheral Event System support + * + * The GPIO can be programmed to output peripheral events whenever an interrupt + * condition is detected, such as pin value change, or only when a rising or + * falling edge is detected. + * + */ + +/*! \brief Enables the peripheral event generation of a pin. + * + * \param pin The pin number. + * + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_enable_pin_periph_event(unsigned int pin) +{ + AVR32_GPIO.port[pin >> 5].oderc = 1 << (pin & 0x1F); // The GPIO output driver is disabled for that pin. + AVR32_GPIO.port[pin >> 5].evers = 1 << (pin & 0x1F); +} + +/*! \brief Disables the peripheral event generation of a pin. + * + * \param pin The pin number. + * + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void gpio_disable_pin_periph_event(unsigned int pin) +{ + AVR32_GPIO.port[pin >> 5].everc = 1 << (pin & 0x1F); +} + +/*! \brief Configure the peripheral event trigger mode of a pin + * + * \param pin The pin number. + * \param mode The trigger mode (\ref GPIO_PIN_CHANGE, \ref GPIO_RISING_EDGE or + * \ref GPIO_FALLING_EDGE). + * \param use_igf use the Input Glitch Filter (TRUE) or not (FALSE). + * + * \return \ref GPIO_SUCCESS or \ref GPIO_INVALID_ARGUMENT. + */ +extern int gpio_configure_pin_periph_event_mode(unsigned int pin, unsigned int mode, unsigned int use_igf); + +//! @} +#endif + + +#endif // _GPIO_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x new file mode 100644 index 000000000..ec4109d46 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/exception.x @@ -0,0 +1,239 @@ +/* This file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Exception and interrupt vectors. + * + * This file maps all events supported by an AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an INTC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#if !__AVR32_UC__ && !__AVR32_AP__ + #error Implementation of the AVR32 architecture not supported by the INTC driver. +#endif + + +#include <avr32/io.h> + + +//! @{ +//! \verbatim + + + .section .exception, "ax", @progbits + + +// Start of Exception Vector Table. + + // EVBA must be aligned with a power of two strictly greater than the EVBA- + // relative offset of the last vector. + .balign 0x200 + + // Export symbol. + .global _evba + .type _evba, @function +_evba: + + .org 0x000 + // Unrecoverable Exception. +_handle_Unrecoverable_Exception: + rjmp $ + + .org 0x004 + // TLB Multiple Hit. +_handle_TLB_Multiple_Hit: + rjmp $ + + .org 0x008 + // Bus Error Data Fetch. +_handle_Bus_Error_Data_Fetch: + rjmp $ + + .org 0x00C + // Bus Error Instruction Fetch. +_handle_Bus_Error_Instruction_Fetch: + rjmp $ + + .org 0x010 + // NMI. +_handle_NMI: + rjmp $ + + .org 0x014 + // Instruction Address. +_handle_Instruction_Address: + rjmp $ + + .org 0x018 + // ITLB Protection. +_handle_ITLB_Protection: + rjmp $ + + .org 0x01C + // Breakpoint. +_handle_Breakpoint: + rjmp $ + + .org 0x020 + // Illegal Opcode. +_handle_Illegal_Opcode: + rjmp $ + + .org 0x024 + // Unimplemented Instruction. +_handle_Unimplemented_Instruction: + rjmp $ + + .org 0x028 + // Privilege Violation. +_handle_Privilege_Violation: + rjmp $ + + .org 0x02C + // Floating-Point: UNUSED IN AVR32UC and AVR32AP. +_handle_Floating_Point: + rjmp $ + + .org 0x030 + // Coprocessor Absent: UNUSED IN AVR32UC. +_handle_Coprocessor_Absent: + rjmp $ + + .org 0x034 + // Data Address (Read). +_handle_Data_Address_Read: + rjmp $ + + .org 0x038 + // Data Address (Write). +_handle_Data_Address_Write: + rjmp $ + + .org 0x03C + // DTLB Protection (Read). +_handle_DTLB_Protection_Read: + rjmp $ + + .org 0x040 + // DTLB Protection (Write). +_handle_DTLB_Protection_Write: + rjmp $ + + .org 0x044 + // DTLB Modified: UNUSED IN AVR32UC. +_handle_DTLB_Modified: + rjmp $ + + .org 0x050 + // ITLB Miss. +_handle_ITLB_Miss: + rjmp $ + + .org 0x060 + // DTLB Miss (Read). +_handle_DTLB_Miss_Read: + rjmp $ + + .org 0x070 + // DTLB Miss (Write). +_handle_DTLB_Miss_Write: + rjmp $ + + .org 0x100 + // Supervisor Call. +_handle_Supervisor_Call: + rjmp $ + + +// Interrupt support. +// The interrupt controller must provide the offset address relative to EVBA. +// Important note: +// All interrupts call a C function named _get_interrupt_handler. +// This function will read group and interrupt line number to then return in +// R12 a pointer to a user-provided interrupt handler. + + .balign 4 + + .irp priority, 0, 1, 2, 3 +_int\priority: +#if __AVR32_UC__ + // R8-R12, LR, PC and SR are automatically pushed onto the system stack by the + // CPU upon interrupt entry. No other register is saved by hardware. +#elif __AVR32_AP__ + // PC and SR are automatically saved in respectively RAR_INTx and RSR_INTx by + // the CPU upon interrupt entry. No other register is saved by hardware. + pushm r8-r12, lr +#endif + mov r12, \priority // Pass the int_level parameter to the _get_interrupt_handler function. + call _get_interrupt_handler + cp.w r12, 0 // Get the pointer to the interrupt handler returned by the function. +#if __AVR32_UC__ + movne pc, r12 // If this was not a spurious interrupt (R12 != NULL), jump to the handler. +#elif __AVR32_AP__ + breq spint\priority // If this was a spurious interrupt (R12 == NULL), branch. + st.w --sp, r12 // Push the pointer to the interrupt handler onto the system stack since no register may be altered. + popm r8-r12, lr, pc // Restore registers and jump to the handler. +spint\priority: + popm r8-r12, lr +#endif + rete // If this was a spurious interrupt (R12 == NULL), return from event handler. + .endr + + +// Constant data area. + + .balign 4 + + // Values to store in the interrupt priority registers for the various interrupt priority levels. + // The interrupt priority registers contain the interrupt priority level and + // the EVBA-relative interrupt vector offset. + .global ipr_val + .type ipr_val, @object +ipr_val: + .word (AVR32_INTC_INT0 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int0 - _evba),\ + (AVR32_INTC_INT1 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int1 - _evba),\ + (AVR32_INTC_INT2 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int2 - _evba),\ + (AVR32_INTC_INT3 << AVR32_INTC_IPR_INTLEVEL_OFFSET) | (_int3 - _evba) + + +//! \endverbatim +//! @} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c new file mode 100644 index 000000000..84d498d1a --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.c @@ -0,0 +1,214 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief INTC driver for AVR32 UC3. + * + * AVR32 Interrupt Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an INTC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> +#include "compiler.h" +#include "preprocessor.h" +#include "intc.h" + +// define _evba from exception.S +extern void _evba; + +//! Values to store in the interrupt priority registers for the various interrupt priority levels. +extern const unsigned int ipr_val[AVR32_INTC_NUM_INT_LEVELS]; + +//! Creates a table of interrupt line handlers per interrupt group in order to optimize RAM space. +//! Each line handler table contains a set of pointers to interrupt handlers. +#if (defined __GNUC__) +#define DECL_INT_LINE_HANDLER_TABLE(GRP, unused) \ +static volatile __int_handler _int_line_handler_table_##GRP[Max(AVR32_INTC_NUM_IRQS_PER_GRP##GRP, 1)]; +#elif (defined __ICCAVR32__) +#define DECL_INT_LINE_HANDLER_TABLE(GRP, unused) \ +static volatile __no_init __int_handler _int_line_handler_table_##GRP[Max(AVR32_INTC_NUM_IRQS_PER_GRP##GRP, 1)]; +#endif +MREPEAT(AVR32_INTC_NUM_INT_GRPS, DECL_INT_LINE_HANDLER_TABLE, ~); +#undef DECL_INT_LINE_HANDLER_TABLE + +//! Table containing for each interrupt group the number of interrupt request +//! lines and a pointer to the table of interrupt line handlers. +static const struct +{ + unsigned int num_irqs; + volatile __int_handler *_int_line_handler_table; +} _int_handler_table[AVR32_INTC_NUM_INT_GRPS] = +{ +#define INSERT_INT_LINE_HANDLER_TABLE(GRP, unused) \ + {AVR32_INTC_NUM_IRQS_PER_GRP##GRP, _int_line_handler_table_##GRP}, + MREPEAT(AVR32_INTC_NUM_INT_GRPS, INSERT_INT_LINE_HANDLER_TABLE, ~) +#undef INSERT_INT_LINE_HANDLER_TABLE +}; + + +/*! \brief Default interrupt handler. + * + * \note Taken and adapted from Newlib. + */ +#if (defined __GNUC__) +__attribute__((__interrupt__)) +#elif (defined __ICCAVR32__) +__interrupt +#endif +static void _unhandled_interrupt(void) +{ + // Catch unregistered interrupts. + while (TRUE); +} + + +/*! \brief Gets the interrupt handler of the current event at the \a int_level + * interrupt priority level (called from exception.S). + * + * \param int_level Interrupt priority level to handle. + * + * \return Interrupt handler to execute. + * + * \note Taken and adapted from Newlib. + */ +__int_handler _get_interrupt_handler(unsigned int int_level) +{ + // ICR3 is mapped first, ICR0 last. + // Code in exception.S puts int_level in R12 which is used by AVR32-GCC to + // pass a single argument to a function. + unsigned int int_grp = AVR32_INTC.icr[AVR32_INTC_INT3 - int_level]; + unsigned int int_req = AVR32_INTC.irr[int_grp]; + + // As an interrupt may disappear while it is being fetched by the CPU + // (spurious interrupt caused by a delayed response from an MCU peripheral to + // an interrupt flag clear or interrupt disable instruction), check if there + // are remaining interrupt lines to process. + // If a spurious interrupt occurs, the status register (SR) contains an + // execution mode and interrupt level masks corresponding to a level 0 + // interrupt, whatever the interrupt priority level causing the spurious + // event. This behavior has been chosen because a spurious interrupt has not + // to be a priority one and because it may not cause any trouble to other + // interrupts. + // However, these spurious interrupts place the hardware in an unstable state + // and could give problems in other/future versions of the CPU, so the + // software has to be written so that they never occur. The only safe way of + // achieving this is to always clear or disable peripheral interrupts with the + // following sequence: + // 1: Mask the interrupt in the CPU by setting GM (or IxM) in SR. + // 2: Perform the bus access to the peripheral register that clears or + // disables the interrupt. + // 3: Wait until the interrupt has actually been cleared or disabled by the + // peripheral. This is usually performed by reading from a register in the + // same peripheral (it DOES NOT have to be the same register that was + // accessed in step 2, but it MUST be in the same peripheral), what takes + // bus system latencies into account, but peripheral internal latencies + // (generally 0 cycle) also have to be considered. + // 4: Unmask the interrupt in the CPU by clearing GM (or IxM) in SR. + // Note that steps 1 and 4 are useless inside interrupt handlers as the + // corresponding interrupt level is automatically masked by IxM (unless IxM is + // explicitly cleared by the software). + // + // Get the right IRQ handler. + // + // If several interrupt lines are active in the group, the interrupt line with + // the highest number is selected. This is to be coherent with the + // prioritization of interrupt groups performed by the hardware interrupt + // controller. + // + // If no handler has been registered for the pending interrupt, + // _unhandled_interrupt will be selected thanks to the initialization of + // _int_line_handler_table_x by INTC_init_interrupts. + // + // exception.S will provide the interrupt handler with a clean interrupt stack + // frame, with nothing more pushed onto the stack. The interrupt handler must + // manage the `rete' instruction, what can be done thanks to pure assembly, + // inline assembly or the `__attribute__((__interrupt__))' C function + // attribute. + return (int_req) ? _int_handler_table[int_grp]._int_line_handler_table[32 - clz(int_req) - 1] : NULL; +} + +//! Init EVBA address. This sequence might also be done in the UTILS/STARTUP/GCC/crt0.S +static __inline__ void INTC_init_evba(void) +{ + Set_system_register(AVR32_EVBA, (int)&_evba ); +} + +void INTC_init_interrupts(void) +{ + unsigned int int_grp, int_req; + + INTC_init_evba(); + + // For all interrupt groups, + for (int_grp = 0; int_grp < AVR32_INTC_NUM_INT_GRPS; int_grp++) + { + // For all interrupt request lines of each group, + for (int_req = 0; int_req < _int_handler_table[int_grp].num_irqs; int_req++) + { + // Assign _unhandled_interrupt as default interrupt handler. + _int_handler_table[int_grp]._int_line_handler_table[int_req] = &_unhandled_interrupt; + } + + // Set the interrupt group priority register to its default value. + // By default, all interrupt groups are linked to the interrupt priority + // level 0 and to the interrupt vector _int0. + AVR32_INTC.ipr[int_grp] = ipr_val[AVR32_INTC_INT0]; + } +} + + +void INTC_register_interrupt(__int_handler handler, unsigned int irq, unsigned int int_level) +{ + // Determine the group of the IRQ. + unsigned int int_grp = irq / AVR32_INTC_MAX_NUM_IRQS_PER_GRP; + + // Store in _int_line_handler_table_x the pointer to the interrupt handler, so + // that _get_interrupt_handler can retrieve it when the interrupt is vectored. + _int_handler_table[int_grp]._int_line_handler_table[irq % AVR32_INTC_MAX_NUM_IRQS_PER_GRP] = handler; + + // Program the corresponding IPRX register to set the interrupt priority level + // and the interrupt vector offset that will be fetched by the core interrupt + // system. + // NOTE: The _intx functions are intermediate assembly functions between the + // core interrupt system and the user interrupt handler. + AVR32_INTC.ipr[int_grp] = ipr_val[int_level & (AVR32_INTC_IPR_INTLEVEL_MASK >> AVR32_INTC_IPR_INTLEVEL_OFFSET)]; +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h new file mode 100644 index 000000000..31a4fc16b --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/INTC/intc.h @@ -0,0 +1,100 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief INTC driver for AVR32 UC3. + * + * AVR32 Interrupt Controller driver module. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an INTC module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _INTC_H_ +#define _INTC_H_ + +#include "compiler.h" + + +//! Maximal number of interrupt request lines per group. +#define AVR32_INTC_MAX_NUM_IRQS_PER_GRP 32 + +//! Number of interrupt priority levels. +#define AVR32_INTC_NUM_INT_LEVELS (1 << AVR32_INTC_IPR_INTLEVEL_SIZE) + + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +//! Pointer to interrupt handler. +#if (defined __GNUC__) +typedef void (*__int_handler)(void); +#elif (defined __ICCAVR32__) +typedef void (__interrupt *__int_handler)(void); +#endif + + +/*! \brief Initializes the hardware interrupt controller driver. + * + * \note Taken and adapted from Newlib. + */ +extern void INTC_init_interrupts(void); + +/*! \brief Registers an interrupt handler. + * + * \param handler Interrupt handler to register. + * \param irq IRQ of the interrupt handler to register. + * \param int_level Interrupt priority level to assign to the group of this IRQ. + * + * \warning The interrupt handler must manage the `rete' instruction, what can + * be done thanks to pure assembly, inline assembly or the + * `__attribute__((__interrupt__))' C function attribute. + * + * \warning If several interrupt handlers of a same group are registered with + * different priority levels, only the latest priority level set will + * be effective. + * + * \note Taken and adapted from Newlib. + */ +extern void INTC_register_interrupt(__int_handler handler, unsigned int irq, unsigned int int_level); + +#endif // __AVR32_ABI_COMPILER__ + + +#endif // _INTC_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c new file mode 100644 index 000000000..76d9268b4 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.c @@ -0,0 +1,546 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Power Manager driver. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "pm.h" + + +/*! \name PM Writable Bit-Field Registers + */ +//! @{ + +typedef union +{ + unsigned long mcctrl; + avr32_pm_mcctrl_t MCCTRL; +} u_avr32_pm_mcctrl_t; + +typedef union +{ + unsigned long cksel; + avr32_pm_cksel_t CKSEL; +} u_avr32_pm_cksel_t; + +typedef union +{ + unsigned long pll; + avr32_pm_pll_t PLL; +} u_avr32_pm_pll_t; + +typedef union +{ + unsigned long oscctrl0; + avr32_pm_oscctrl0_t OSCCTRL0; +} u_avr32_pm_oscctrl0_t; + +typedef union +{ + unsigned long oscctrl1; + avr32_pm_oscctrl1_t OSCCTRL1; +} u_avr32_pm_oscctrl1_t; + +typedef union +{ + unsigned long oscctrl32; + avr32_pm_oscctrl32_t OSCCTRL32; +} u_avr32_pm_oscctrl32_t; + +typedef union +{ + unsigned long ier; + avr32_pm_ier_t IER; +} u_avr32_pm_ier_t; + +typedef union +{ + unsigned long idr; + avr32_pm_idr_t IDR; +} u_avr32_pm_idr_t; + +typedef union +{ + unsigned long icr; + avr32_pm_icr_t ICR; +} u_avr32_pm_icr_t; + +typedef union +{ + unsigned long gcctrl; + avr32_pm_gcctrl_t GCCTRL; +} u_avr32_pm_gcctrl_t; + +typedef union +{ + unsigned long rccr; + avr32_pm_rccr_t RCCR; +} u_avr32_pm_rccr_t; + +typedef union +{ + unsigned long bgcr; + avr32_pm_bgcr_t BGCR; +} u_avr32_pm_bgcr_t; + +typedef union +{ + unsigned long vregcr; + avr32_pm_vregcr_t VREGCR; +} u_avr32_pm_vregcr_t; + +typedef union +{ + unsigned long bod; + avr32_pm_bod_t BOD; +} u_avr32_pm_bod_t; + +//! @} + + +/*! \brief Sets the mode of the oscillator 0. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * \param mode Oscillator 0 mode (i.e. AVR32_PM_OSCCTRL0_MODE_x). + */ +static void pm_set_osc0_mode(volatile avr32_pm_t *pm, unsigned int mode) +{ + // Read + u_avr32_pm_oscctrl0_t u_avr32_pm_oscctrl0 = {pm->oscctrl0}; + // Modify + u_avr32_pm_oscctrl0.OSCCTRL0.mode = mode; + // Write + pm->oscctrl0 = u_avr32_pm_oscctrl0.oscctrl0; +} + + +void pm_enable_osc0_ext_clock(volatile avr32_pm_t *pm) +{ + pm_set_osc0_mode(pm, AVR32_PM_OSCCTRL0_MODE_EXT_CLOCK); +} + + +void pm_enable_osc0_crystal(volatile avr32_pm_t *pm, unsigned int fosc0) +{ + pm_set_osc0_mode(pm, (fosc0 < 900000) ? AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G0 : + (fosc0 < 3000000) ? AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G1 : + (fosc0 < 8000000) ? AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G2 : + AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G3); +} + + +void pm_enable_clk0(volatile avr32_pm_t *pm, unsigned int startup) +{ + pm_enable_clk0_no_wait(pm, startup); + pm_wait_for_clk0_ready(pm); +} + + +void pm_disable_clk0(volatile avr32_pm_t *pm) +{ + pm->mcctrl &= ~AVR32_PM_MCCTRL_OSC0EN_MASK; +} + + +void pm_enable_clk0_no_wait(volatile avr32_pm_t *pm, unsigned int startup) +{ + // Read register + u_avr32_pm_oscctrl0_t u_avr32_pm_oscctrl0 = {pm->oscctrl0}; + // Modify + u_avr32_pm_oscctrl0.OSCCTRL0.startup = startup; + // Write back + pm->oscctrl0 = u_avr32_pm_oscctrl0.oscctrl0; + + pm->mcctrl |= AVR32_PM_MCCTRL_OSC0EN_MASK; +} + + +void pm_wait_for_clk0_ready(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_OSC0RDY_MASK)); +} + + +/*! \brief Sets the mode of the oscillator 1. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * \param mode Oscillator 1 mode (i.e. AVR32_PM_OSCCTRL1_MODE_x). + */ +static void pm_set_osc1_mode(volatile avr32_pm_t *pm, unsigned int mode) +{ + // Read + u_avr32_pm_oscctrl1_t u_avr32_pm_oscctrl1 = {pm->oscctrl1}; + // Modify + u_avr32_pm_oscctrl1.OSCCTRL1.mode = mode; + // Write + pm->oscctrl1 = u_avr32_pm_oscctrl1.oscctrl1; +} + + +void pm_enable_osc1_ext_clock(volatile avr32_pm_t *pm) +{ + pm_set_osc1_mode(pm, AVR32_PM_OSCCTRL1_MODE_EXT_CLOCK); +} + + +void pm_enable_osc1_crystal(volatile avr32_pm_t *pm, unsigned int fosc1) +{ + pm_set_osc1_mode(pm, (fosc1 < 900000) ? AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G0 : + (fosc1 < 3000000) ? AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G1 : + (fosc1 < 8000000) ? AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G2 : + AVR32_PM_OSCCTRL1_MODE_CRYSTAL_G3); +} + + +void pm_enable_clk1(volatile avr32_pm_t *pm, unsigned int startup) +{ + pm_enable_clk1_no_wait(pm, startup); + pm_wait_for_clk1_ready(pm); +} + + +void pm_disable_clk1(volatile avr32_pm_t *pm) +{ + pm->mcctrl &= ~AVR32_PM_MCCTRL_OSC1EN_MASK; +} + + +void pm_enable_clk1_no_wait(volatile avr32_pm_t *pm, unsigned int startup) +{ + // Read register + u_avr32_pm_oscctrl1_t u_avr32_pm_oscctrl1 = {pm->oscctrl1}; + // Modify + u_avr32_pm_oscctrl1.OSCCTRL1.startup = startup; + // Write back + pm->oscctrl1 = u_avr32_pm_oscctrl1.oscctrl1; + + pm->mcctrl |= AVR32_PM_MCCTRL_OSC1EN_MASK; +} + + +void pm_wait_for_clk1_ready(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_OSC1RDY_MASK)); +} + + +/*! \brief Sets the mode of the 32-kHz oscillator. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * \param mode 32-kHz oscillator mode (i.e. AVR32_PM_OSCCTRL32_MODE_x). + */ +static void pm_set_osc32_mode(volatile avr32_pm_t *pm, unsigned int mode) +{ + // Read + u_avr32_pm_oscctrl32_t u_avr32_pm_oscctrl32 = {pm->oscctrl32}; + // Modify + u_avr32_pm_oscctrl32.OSCCTRL32.mode = mode; + // Write + pm->oscctrl32 = u_avr32_pm_oscctrl32.oscctrl32; +} + + +void pm_enable_osc32_ext_clock(volatile avr32_pm_t *pm) +{ + pm_set_osc32_mode(pm, AVR32_PM_OSCCTRL32_MODE_EXT_CLOCK); +} + + +void pm_enable_osc32_crystal(volatile avr32_pm_t *pm) +{ + pm_set_osc32_mode(pm, AVR32_PM_OSCCTRL32_MODE_CRYSTAL); +} + + +void pm_enable_clk32(volatile avr32_pm_t *pm, unsigned int startup) +{ + pm_enable_clk32_no_wait(pm, startup); + pm_wait_for_clk32_ready(pm); +} + + +void pm_disable_clk32(volatile avr32_pm_t *pm) +{ + pm->oscctrl32 &= ~AVR32_PM_OSCCTRL32_OSC32EN_MASK; +} + + +void pm_enable_clk32_no_wait(volatile avr32_pm_t *pm, unsigned int startup) +{ + // Read register + u_avr32_pm_oscctrl32_t u_avr32_pm_oscctrl32 = {pm->oscctrl32}; + // Modify + u_avr32_pm_oscctrl32.OSCCTRL32.osc32en = 1; + u_avr32_pm_oscctrl32.OSCCTRL32.startup = startup; + // Write back + pm->oscctrl32 = u_avr32_pm_oscctrl32.oscctrl32; +} + + +void pm_wait_for_clk32_ready(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_OSC32RDY_MASK)); +} + + +void pm_cksel(volatile avr32_pm_t *pm, + unsigned int pbadiv, + unsigned int pbasel, + unsigned int pbbdiv, + unsigned int pbbsel, + unsigned int hsbdiv, + unsigned int hsbsel) +{ + u_avr32_pm_cksel_t u_avr32_pm_cksel = {0}; + + u_avr32_pm_cksel.CKSEL.cpusel = hsbsel; + u_avr32_pm_cksel.CKSEL.cpudiv = hsbdiv; + u_avr32_pm_cksel.CKSEL.hsbsel = hsbsel; + u_avr32_pm_cksel.CKSEL.hsbdiv = hsbdiv; + u_avr32_pm_cksel.CKSEL.pbasel = pbasel; + u_avr32_pm_cksel.CKSEL.pbadiv = pbadiv; + u_avr32_pm_cksel.CKSEL.pbbsel = pbbsel; + u_avr32_pm_cksel.CKSEL.pbbdiv = pbbdiv; + + pm->cksel = u_avr32_pm_cksel.cksel; + + // Wait for ckrdy bit and then clear it + while (!(pm->poscsr & AVR32_PM_POSCSR_CKRDY_MASK)); +} + + +void pm_gc_setup(volatile avr32_pm_t *pm, + unsigned int gc, + unsigned int osc_or_pll, // Use Osc (=0) or PLL (=1) + unsigned int pll_osc, // Sel Osc0/PLL0 or Osc1/PLL1 + unsigned int diven, + unsigned int div) +{ + u_avr32_pm_gcctrl_t u_avr32_pm_gcctrl = {0}; + + u_avr32_pm_gcctrl.GCCTRL.oscsel = pll_osc; + u_avr32_pm_gcctrl.GCCTRL.pllsel = osc_or_pll; + u_avr32_pm_gcctrl.GCCTRL.diven = diven; + u_avr32_pm_gcctrl.GCCTRL.div = div; + + pm->gcctrl[gc] = u_avr32_pm_gcctrl.gcctrl; +} + + +void pm_gc_enable(volatile avr32_pm_t *pm, + unsigned int gc) +{ + pm->gcctrl[gc] |= AVR32_PM_GCCTRL_CEN_MASK; +} + + +void pm_gc_disable(volatile avr32_pm_t *pm, + unsigned int gc) +{ + pm->gcctrl[gc] &= ~AVR32_PM_GCCTRL_CEN_MASK; +} + + +void pm_pll_setup(volatile avr32_pm_t *pm, + unsigned int pll, + unsigned int mul, + unsigned int div, + unsigned int osc, + unsigned int lockcount) +{ + u_avr32_pm_pll_t u_avr32_pm_pll = {0}; + + u_avr32_pm_pll.PLL.pllosc = osc; + u_avr32_pm_pll.PLL.plldiv = div; + u_avr32_pm_pll.PLL.pllmul = mul; + u_avr32_pm_pll.PLL.pllcount = lockcount; + + pm->pll[pll] = u_avr32_pm_pll.pll; +} + + +void pm_pll_set_option(volatile avr32_pm_t *pm, + unsigned int pll, + unsigned int pll_freq, + unsigned int pll_div2, + unsigned int pll_wbwdisable) +{ + u_avr32_pm_pll_t u_avr32_pm_pll = {pm->pll[pll]}; + u_avr32_pm_pll.PLL.pllopt = pll_freq | (pll_div2 << 1) | (pll_wbwdisable << 2); + pm->pll[pll] = u_avr32_pm_pll.pll; +} + + +unsigned int pm_pll_get_option(volatile avr32_pm_t *pm, + unsigned int pll) +{ + return (pm->pll[pll] & AVR32_PM_PLLOPT_MASK) >> AVR32_PM_PLLOPT_OFFSET; +} + + +void pm_pll_enable(volatile avr32_pm_t *pm, + unsigned int pll) +{ + pm->pll[pll] |= AVR32_PM_PLLEN_MASK; +} + + +void pm_pll_disable(volatile avr32_pm_t *pm, + unsigned int pll) +{ + pm->pll[pll] &= ~AVR32_PM_PLLEN_MASK; +} + + +void pm_wait_for_pll0_locked(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_LOCK0_MASK)); +} + + +void pm_wait_for_pll1_locked(volatile avr32_pm_t *pm) +{ + while (!(pm->poscsr & AVR32_PM_POSCSR_LOCK1_MASK)); +} + + +void pm_switch_to_clock(volatile avr32_pm_t *pm, unsigned long clock) +{ + // Read + u_avr32_pm_mcctrl_t u_avr32_pm_mcctrl = {pm->mcctrl}; + // Modify + u_avr32_pm_mcctrl.MCCTRL.mcsel = clock; + // Write back + pm->mcctrl = u_avr32_pm_mcctrl.mcctrl; +} + + +void pm_switch_to_osc0(volatile avr32_pm_t *pm, unsigned int fosc0, unsigned int startup) +{ + pm_enable_osc0_crystal(pm, fosc0); // Enable the Osc0 in crystal mode + pm_enable_clk0(pm, startup); // Crystal startup time - This parameter is critical and depends on the characteristics of the crystal + pm_switch_to_clock(pm, AVR32_PM_MCSEL_OSC0); // Then switch main clock to Osc0 +} + + +void pm_bod_enable_irq(volatile avr32_pm_t *pm) +{ + pm->ier = AVR32_PM_IER_BODDET_MASK; +} + + +void pm_bod_disable_irq(volatile avr32_pm_t *pm) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + if (global_interrupt_enabled) Disable_global_interrupt(); + pm->idr = AVR32_PM_IDR_BODDET_MASK; + pm->isr; + if (global_interrupt_enabled) Enable_global_interrupt(); +} + + +void pm_bod_clear_irq(volatile avr32_pm_t *pm) +{ + pm->icr = AVR32_PM_ICR_BODDET_MASK; +} + + +unsigned long pm_bod_get_irq_status(volatile avr32_pm_t *pm) +{ + return ((pm->isr & AVR32_PM_ISR_BODDET_MASK) != 0); +} + + +unsigned long pm_bod_get_irq_enable_bit(volatile avr32_pm_t *pm) +{ + return ((pm->imr & AVR32_PM_IMR_BODDET_MASK) != 0); +} + + +unsigned long pm_bod_get_level(volatile avr32_pm_t *pm) +{ + return (pm->bod & AVR32_PM_BOD_LEVEL_MASK) >> AVR32_PM_BOD_LEVEL_OFFSET; +} + + +unsigned long pm_read_gplp(volatile avr32_pm_t *pm, unsigned long gplp) +{ + return pm->gplp[gplp]; +} + + +void pm_write_gplp(volatile avr32_pm_t *pm, unsigned long gplp, unsigned long value) +{ + pm->gplp[gplp] = value; +} + + +long pm_enable_module(volatile avr32_pm_t *pm, unsigned long module) +{ + unsigned long domain = module>>5; + unsigned long *regptr = (unsigned long*)(&(pm->cpumask) + domain); + + // Implementation-specific shortcut: the ckMASK registers are contiguous and + // memory-mapped in that order: CPUMASK, HSBMASK, PBAMASK, PBBMASK. + + *regptr |= (1<<(module%32)); + + return PASS; +} + +long pm_disable_module(volatile avr32_pm_t *pm, unsigned long module) +{ + unsigned long domain = module>>5; + unsigned long *regptr = (unsigned long*)(&(pm->cpumask) + domain); + + // Implementation-specific shortcut: the ckMASK registers are contiguous and + // memory-mapped in that order: CPUMASK, HSBMASK, PBAMASK, PBBMASK. + + *regptr &= ~(1<<(module%32)); + + return PASS; +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h new file mode 100644 index 000000000..ca679f734 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm.h @@ -0,0 +1,493 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Power Manager driver. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PM_H_ +#define _PM_H_ + +#include <avr32/io.h> +#include "compiler.h" +#include "preprocessor.h" + + +/*! \brief Sets the MCU in the specified sleep mode. + * + * \param mode Sleep mode: + * \arg \c AVR32_PM_SMODE_IDLE: Idle; + * \arg \c AVR32_PM_SMODE_FROZEN: Frozen; + * \arg \c AVR32_PM_SMODE_STANDBY: Standby; + * \arg \c AVR32_PM_SMODE_STOP: Stop; + * \arg \c AVR32_PM_SMODE_DEEP_STOP: DeepStop; + * \arg \c AVR32_PM_SMODE_STATIC: Static. + */ +#define SLEEP(mode) {__asm__ __volatile__ ("sleep "STRINGZ(mode));} + + +//! Input and output parameters when initializing PM clocks using pm_configure_clocks(). +typedef struct +{ + //! CPU frequency (input/output argument). + unsigned long cpu_f; + + //! PBA frequency (input/output argument). + unsigned long pba_f; + + //! Oscillator 0's external crystal(or external clock) frequency (board dependant) (input argument). + unsigned long osc0_f; + + //! Oscillator 0's external crystal(or external clock) startup time: AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC (input argument). + unsigned long osc0_startup; +} pm_freq_param_t; + +#define PM_FREQ_STATUS_FAIL (-1) +#define PM_FREQ_STATUS_OK (0) + + +/*! \brief Gets the MCU reset cause. + * + * \param pm Base address of the Power Manager instance (i.e. &AVR32_PM). + * + * \return The MCU reset cause which can be masked with the + * \c AVR32_PM_RCAUSE_x_MASK bit-masks to isolate specific causes. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned int pm_get_reset_cause(volatile avr32_pm_t *pm) +{ + return pm->rcause; +} + + +/*! + * \brief This function will enable the external clock mode of the oscillator 0. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc0_ext_clock(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the crystal mode of the oscillator 0. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param fosc0 Oscillator 0 crystal frequency (Hz) + */ +extern void pm_enable_osc0_crystal(volatile avr32_pm_t *pm, unsigned int fosc0); + + +/*! + * \brief This function will enable the oscillator 0 to be used with a startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 0 startup time. AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk0(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will disable the oscillator 0. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_disable_clk0(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 0 to be used with no startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 0 startup time, for which the function does not wait. AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk0_no_wait(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will wait until the Osc0 clock is ready. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_clk0_ready(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the external clock mode of the oscillator 1. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc1_ext_clock(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the crystal mode of the oscillator 1. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param fosc1 Oscillator 1 crystal frequency (Hz) + */ +extern void pm_enable_osc1_crystal(volatile avr32_pm_t *pm, unsigned int fosc1); + + +/*! + * \brief This function will enable the oscillator 1 to be used with a startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 1 startup time. AVR32_PM_OSCCTRL1_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk1(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will disable the oscillator 1. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_disable_clk1(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 1 to be used with no startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 1 startup time, for which the function does not wait. AVR32_PM_OSCCTRL1_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk1_no_wait(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will wait until the Osc1 clock is ready. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_clk1_ready(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the external clock mode of the 32-kHz oscillator. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc32_ext_clock(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the crystal mode of the 32-kHz oscillator. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_enable_osc32_crystal(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 32 to be used with a startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 32 kHz startup time. AVR32_PM_OSCCTRL32_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk32(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will disable the oscillator 32. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_disable_clk32(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will enable the oscillator 32 to be used with no startup time. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param startup Clock 32 kHz startup time, for which the function does not wait. AVR32_PM_OSCCTRL32_STARTUP_x_RCOSC. + */ +extern void pm_enable_clk32_no_wait(volatile avr32_pm_t *pm, unsigned int startup); + + +/*! + * \brief This function will wait until the osc32 clock is ready. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_clk32_ready(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will select all the power manager clocks. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pbadiv Peripheral Bus A clock divisor enable + * \param pbasel Peripheral Bus A select + * \param pbbdiv Peripheral Bus B clock divisor enable + * \param pbbsel Peripheral Bus B select + * \param hsbdiv High Speed Bus clock divisor enable (CPU clock = HSB clock) + * \param hsbsel High Speed Bus select (CPU clock = HSB clock ) + */ +extern void pm_cksel(volatile avr32_pm_t *pm, unsigned int pbadiv, unsigned int pbasel, unsigned int pbbdiv, unsigned int pbbsel, unsigned int hsbdiv, unsigned int hsbsel); + + +/*! + * \brief This function will setup a generic clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gc generic clock number (0 for gc0...) + * \param osc_or_pll Use OSC (=0) or PLL (=1) + * \param pll_osc Select Osc0/PLL0 or Osc1/PLL1 + * \param diven Generic clock divisor enable + * \param div Generic clock divisor + */ +extern void pm_gc_setup(volatile avr32_pm_t *pm, unsigned int gc, unsigned int osc_or_pll, unsigned int pll_osc, unsigned int diven, unsigned int div); + + +/*! + * \brief This function will enable a generic clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gc generic clock number (0 for gc0...) + */ +extern void pm_gc_enable(volatile avr32_pm_t *pm, unsigned int gc); + + +/*! + * \brief This function will disable a generic clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gc generic clock number (0 for gc0...) + */ +extern void pm_gc_disable(volatile avr32_pm_t *pm, unsigned int gc); + + +/*! + * \brief This function will setup a PLL. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + * \param mul PLL MUL in the PLL formula + * \param div PLL DIV in the PLL formula + * \param osc OSC number (0 for osc0, 1 for osc1) + * \param lockcount PLL lockount + */ +extern void pm_pll_setup(volatile avr32_pm_t *pm, unsigned int pll, unsigned int mul, unsigned int div, unsigned int osc, unsigned int lockcount); + + +/*! + * \brief This function will set a PLL option. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + * \param pll_freq Set to 1 for VCO frequency range 80-180MHz, set to 0 for VCO frequency range 160-240Mhz. + * \param pll_div2 Divide the PLL output frequency by 2 (this settings does not change the FVCO value) + * \param pll_wbwdisable 1 Disable the Wide-Bandith Mode (Wide-Bandwith mode allow a faster startup time and out-of-lock time). 0 to enable the Wide-Bandith Mode. + */ +extern void pm_pll_set_option(volatile avr32_pm_t *pm, unsigned int pll, unsigned int pll_freq, unsigned int pll_div2, unsigned int pll_wbwdisable); + + +/*! + * \brief This function will get a PLL option. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + * \return Option + */ +extern unsigned int pm_pll_get_option(volatile avr32_pm_t *pm, unsigned int pll); + + +/*! + * \brief This function will enable a PLL. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + */ +extern void pm_pll_enable(volatile avr32_pm_t *pm, unsigned int pll); + + +/*! + * \brief This function will disable a PLL. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param pll PLL number(0 for PLL0, 1 for PLL1) + */ +extern void pm_pll_disable(volatile avr32_pm_t *pm, unsigned int pll); + + +/*! + * \brief This function will wait for PLL0 locked + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_pll0_locked(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will wait for PLL1 locked + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + */ +extern void pm_wait_for_pll1_locked(volatile avr32_pm_t *pm); + + +/*! + * \brief This function will switch the power manager main clock. + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param clock Clock to be switched on. AVR32_PM_MCSEL_SLOW for RCOsc, AVR32_PM_MCSEL_OSC0 for Osc0, AVR32_PM_MCSEL_PLL0 for PLL0. + */ +extern void pm_switch_to_clock(volatile avr32_pm_t *pm, unsigned long clock); + + +/*! + * \brief Switch main clock to clock Osc0 (crystal mode) + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param fosc0 Oscillator 0 crystal frequency (Hz) + * \param startup Crystal 0 startup time. AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC. + */ +extern void pm_switch_to_osc0(volatile avr32_pm_t *pm, unsigned int fosc0, unsigned int startup); + + +/*! \brief Enables the Brown-Out Detector interrupt. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + */ +extern void pm_bod_enable_irq(volatile avr32_pm_t *pm); + + +/*! \brief Disables the Brown-Out Detector interrupt. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + */ +extern void pm_bod_disable_irq(volatile avr32_pm_t *pm); + + +/*! \brief Clears the Brown-Out Detector interrupt flag. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + */ +extern void pm_bod_clear_irq(volatile avr32_pm_t *pm); + + +/*! \brief Gets the Brown-Out Detector interrupt flag. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * + * \retval 0 No BOD interrupt. + * \retval 1 BOD interrupt pending. + */ +extern unsigned long pm_bod_get_irq_status(volatile avr32_pm_t *pm); + + +/*! \brief Gets the Brown-Out Detector interrupt enable status. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * + * \retval 0 BOD interrupt disabled. + * \retval 1 BOD interrupt enabled. + */ +extern unsigned long pm_bod_get_irq_enable_bit(volatile avr32_pm_t *pm); + + +/*! \brief Gets the triggering threshold of the Brown-Out Detector. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM). + * + * \return Triggering threshold of the BOD. See the electrical characteristics + * in the part datasheet for actual voltage levels. + */ +extern unsigned long pm_bod_get_level(volatile avr32_pm_t *pm); + + +/*! + * \brief Read the content of the PM GPLP registers + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * + * \return The content of the chosen GPLP register. + */ +extern unsigned long pm_read_gplp(volatile avr32_pm_t *pm, unsigned long gplp); + + +/*! + * \brief Write into the PM GPLP registers + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * \param value Value to write + */ +extern void pm_write_gplp(volatile avr32_pm_t *pm, unsigned long gplp, unsigned long value); + + +/*! \brief Enable the clock of a module. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param module The module to clock (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks") + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long pm_enable_module(volatile avr32_pm_t *pm, unsigned long module); + +/*! \brief Disable the clock of a module. + * + * \param pm Base address of the Power Manager (i.e. &AVR32_PM) + * \param module The module to shut down (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks") + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long pm_disable_module(volatile avr32_pm_t *pm, unsigned long module); + + + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks + * according to the user wishes. + * + * This function needs some parameters stored in a pm_freq_param_t structure: + * - cpu_f and pba_f are the wanted frequencies, + * - osc0_f is the oscillator 0 on-board frequency (e.g. FOSC0), + * - osc0_startup is the oscillator 0 startup time (e.g. OSC0_STARTUP). + * + * The function will then configure the clocks using the following rules: + * - It first try to find a valid PLL frequency (the highest possible value to avoid jitter) in order + * to satisfy the CPU frequency, + * - It optimizes the configuration depending the various divide stages, + * - Then, the PBA frequency is configured from the CPU freq. + * - Note that HSB and PBB are configured with the same frequency as CPU. + * - Note also that the number of wait states of the flash read accesses is automatically set-up depending + * the CPU frequency. As a consequence, the application needs the FLASHC driver to compile. + * + * The CPU, HSB and PBA frequencies programmed after configuration are stored back into cpu_f and pba_f. + * + * \param param pointer on the configuration structure. + * + * \retval PM_FREQ_STATUS_OK Mode successfully initialized. + * \retval PM_FREQ_STATUS_FAIL The configuration can not be done. + */ +extern int pm_configure_clocks(pm_freq_param_t *param); + + +/*! \brief Automatically configure the USB clock. + * + * USB clock is configured to 48MHz, using the PLL1 from the Oscillator0, assuming + * a 12 MHz crystal is connected to it. + */ +extern void pm_configure_usb_clock(void); + + +#endif // _PM_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c new file mode 100644 index 000000000..8beb83b20 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/pm_conf_clocks.c @@ -0,0 +1,268 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Power Manager clocks configuration helper. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <string.h> +#include "compiler.h" +#include "pm.h" + +extern void flashc_set_wait_state(unsigned int wait_state); +#if (defined AVR32_FLASHC_210_H_INCLUDED) +extern void flashc_issue_command(unsigned int command, int page_number); +#endif + + +#define PM_MAX_MUL ((1 << AVR32_PM_PLL0_PLLMUL_SIZE) - 1) + + +int pm_configure_clocks(pm_freq_param_t *param) +{ + // Supported frequencies: + // Fosc0 mul div PLL div2_en cpu_f pba_f Comment + // 12 15 1 192 1 12 12 + // 12 9 3 40 1 20 20 PLL out of spec + // 12 15 1 192 1 24 12 + // 12 9 1 120 1 30 15 + // 12 9 3 40 0 40 20 PLL out of spec + // 12 15 1 192 1 48 12 + // 12 15 1 192 1 48 24 + // 12 8 1 108 1 54 27 + // 12 9 1 120 1 60 15 + // 12 9 1 120 1 60 30 + // 12 10 1 132 1 66 16.5 + // + unsigned long in_cpu_f = param->cpu_f; + unsigned long in_osc0_f = param->osc0_f; + unsigned long mul, div, div2_en = 0, div2_cpu = 0, div2_pba = 0; + unsigned long pll_freq, rest; + Bool b_div2_pba, b_div2_cpu; + + // Switch to external Oscillator 0 + pm_switch_to_osc0(&AVR32_PM, in_osc0_f, param->osc0_startup); + + // Start with CPU freq config + if (in_cpu_f == in_osc0_f) + { + param->cpu_f = in_osc0_f; + param->pba_f = in_osc0_f; + return PM_FREQ_STATUS_OK; + } + else if (in_cpu_f < in_osc0_f) + { + // TBD + } + + rest = in_cpu_f % in_osc0_f; + + for (div = 1; div < 32; div++) + { + if ((div * rest) % in_osc0_f == 0) + break; + } + if (div == 32) + return PM_FREQ_STATUS_FAIL; + + mul = (in_cpu_f * div) / in_osc0_f; + + if (mul > PM_MAX_MUL) + return PM_FREQ_STATUS_FAIL; + + // export 2power from PLL div to div2_cpu + while (!(div % 2)) + { + div /= 2; + div2_cpu++; + } + + // Here we know the mul and div parameter of the PLL config. + // . Check out if the PLL has a valid in_cpu_f. + // . Try to have for the PLL frequency (VCO output) the highest possible value + // to reduce jitter. + while (in_osc0_f * 2 * mul / div < AVR32_PM_PLL_VCO_RANGE0_MAX_FREQ) + { + if (2 * mul > PM_MAX_MUL) + break; + mul *= 2; + div2_cpu++; + } + + if (div2_cpu != 0) + { + div2_cpu--; + div2_en = 1; + } + + pll_freq = in_osc0_f * mul / (div * (1 << div2_en)); + + // Update real CPU Frequency + param->cpu_f = pll_freq / (1 << div2_cpu); + mul--; + + pm_pll_setup(&AVR32_PM + , 0 // pll + , mul // mul + , div // div + , 0 // osc + , 16 // lockcount + ); + + pm_pll_set_option(&AVR32_PM + , 0 // pll + // PLL clock is lower than 160MHz: need to set pllopt. + , (pll_freq < AVR32_PM_PLL_VCO_RANGE0_MIN_FREQ) ? 1 : 0 // pll_freq + , div2_en // pll_div2 + , 0 // pll_wbwdisable + ); + + rest = pll_freq; + while (rest > AVR32_PM_PBA_MAX_FREQ || + rest != param->pba_f) + { + div2_pba++; + rest = pll_freq / (1 << div2_pba); + if (rest < param->pba_f) + break; + } + + // Update real PBA Frequency + param->pba_f = pll_freq / (1 << div2_pba); + + // Enable PLL0 + pm_pll_enable(&AVR32_PM, 0); + + // Wait for PLL0 locked + pm_wait_for_pll0_locked(&AVR32_PM); + + if (div2_cpu) + { + b_div2_cpu = TRUE; + div2_cpu--; + } + else + b_div2_cpu = FALSE; + + if (div2_pba) + { + b_div2_pba = TRUE; + div2_pba--; + } + else + b_div2_pba = FALSE; + + pm_cksel(&AVR32_PM + , b_div2_pba, div2_pba // PBA + , b_div2_cpu, div2_cpu // PBB + , b_div2_cpu, div2_cpu // HSB + ); + + if (param->cpu_f > AVR32_FLASHC_FWS_0_MAX_FREQ) + { + flashc_set_wait_state(1); +#if (defined AVR32_FLASHC_210_H_INCLUDED) + if (param->cpu_f > AVR32_FLASHC_HSEN_FWS_1_MAX_FREQ) + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSEN, -1); + else + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); +#endif + } + else + { + flashc_set_wait_state(0); +#if (defined AVR32_FLASHC_210_H_INCLUDED) + if (param->cpu_f > AVR32_FLASHC_HSEN_FWS_0_MAX_FREQ) + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSEN, -1); + else + flashc_issue_command(AVR32_FLASHC_FCMD_CMD_HSDIS, -1); +#endif + } + + pm_switch_to_clock(&AVR32_PM, AVR32_PM_MCCTRL_MCSEL_PLL0); + + return PM_FREQ_STATUS_OK; +} + + +void pm_configure_usb_clock(void) +{ +#if UC3A3 + + // Setup USB GCLK. + pm_gc_setup(&AVR32_PM, AVR32_PM_GCLK_USBB, // gc + 0, // osc_or_pll: use Osc (if 0) or PLL (if 1) + 0, // pll_osc: select Osc0/PLL0 or Osc1/PLL1 + 0, // diven + 0); // div + + // Enable USB GCLK. + pm_gc_enable(&AVR32_PM, AVR32_PM_GCLK_USBB); +#else + // Use 12MHz from OSC0 and generate 96 MHz + pm_pll_setup(&AVR32_PM, 1, // pll. + 7, // mul. + 1, // div. + 0, // osc. + 16); // lockcount. + + pm_pll_set_option(&AVR32_PM, 1, // pll. + 1, // pll_freq: choose the range 80-180MHz. + 1, // pll_div2. + 0); // pll_wbwdisable. + + // start PLL1 and wait forl lock + pm_pll_enable(&AVR32_PM, 1); + + // Wait for PLL1 locked. + pm_wait_for_pll1_locked(&AVR32_PM); + + pm_gc_setup(&AVR32_PM, AVR32_PM_GCLK_USBB, // gc. + 1, // osc_or_pll: use Osc (if 0) or PLL (if 1). + 1, // pll_osc: select Osc0/PLL0 or Osc1/PLL1. + 0, // diven. + 0); // div. + pm_gc_enable(&AVR32_PM, AVR32_PM_GCLK_USBB); +#endif +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c new file mode 100644 index 000000000..f5fc1553d --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.c @@ -0,0 +1,566 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief High-level library abstracting features such as oscillators/pll/dfll + * configuration, clock configuration, System-sensible parameters + * configuration, buses clocks configuration, sleep mode, reset. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ +#include "power_clocks_lib.h" + + +//! Device-specific data +#if UC3L +static long int pcl_configure_clocks_uc3l(pcl_freq_param_t *param); // FORWARD declaration +#endif + +#if UC3C +static long int pcl_configure_clocks_uc3c(pcl_freq_param_t *param); // FORWARD declaration +#endif + +long int pcl_configure_clocks(pcl_freq_param_t *param) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE + // Implementation for UC3A, UC3A3, UC3B parts. + return(pm_configure_clocks(param)); +#else + #ifdef AVR32_PM_410_H_INCLUDED + // Implementation for UC3C parts. + return(pcl_configure_clocks_uc3c(param)); + #else + // Implementation for UC3L parts. + return(pcl_configure_clocks_uc3l(param)); + #endif +#endif +} + + +//! Device-specific implementation +#if UC3L +// FORWARD declaration +static long int pcl_configure_synchronous_clocks( pm_clk_src_t main_clk_src, + unsigned long main_clock_freq_hz, + pcl_freq_param_t *param); + +long int pcl_configure_clocks_rcsys(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_RCSYS + + // Supported synchronous clocks frequencies if RCSYS is the main clock source: + // 115200Hz, 57600Hz, 28800Hz, 14400Hz, 7200Hz, 3600Hz, 1800Hz, 900Hz, 450Hz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target frequencies are reachable. + if((param->cpu_f > SCIF_SLOWCLOCK_FREQ_HZ) || (param->pba_f > SCIF_SLOWCLOCK_FREQ_HZ) + || (param->pbb_f > SCIF_SLOWCLOCK_FREQ_HZ)) + return(-1); +#endif + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_SLOW, SCIF_SLOWCLOCK_FREQ_HZ, param)); +} + + +long int pcl_configure_clocks_rc120m(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_RC120M + + // Supported synchronous clocks frequencies if RC120M is the main clock source: + // 30MHz, 15MHz, 7.5MHz, 3.75MHz, 1.875MHz, 937.5kHz, 468.75kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target frequencies are reachable. + if((param->cpu_f > SCIF_RC120M_FREQ_HZ) || (param->pba_f > SCIF_RC120M_FREQ_HZ) + || (param->pbb_f > SCIF_RC120M_FREQ_HZ)) + return(-1); +#endif + + // Start the 120MHz internal RCosc (RC120M) clock + scif_start_rc120M(); + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_RC120M, SCIF_RC120M_FREQ_HZ, param)); +} + + +long int pcl_configure_clocks_osc0(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_OSC0 + + // Supported synchronous clocks frequencies if OSC0 is the main clock source: + // (these obviously depend on the OSC0 frequency; we'll take 16MHz as an example) + // 16MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz, 62.5kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + + unsigned long main_clock_freq; + + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + + main_clock_freq = param->osc0_f; +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target frequencies are reachable. + if((param->cpu_f > main_clock_freq) || (param->pba_f > main_clock_freq) + || (param->pbb_f > main_clock_freq)) + return(-1); +#endif + // Configure OSC0 in crystal mode, external crystal with a fcrystal Hz frequency. + scif_configure_osc_crystalmode(SCIF_OSC0, main_clock_freq); + // Enable the OSC0 + scif_enable_osc(SCIF_OSC0, param->osc0_startup, true); + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_OSC0, main_clock_freq, param)); +} + + +long int pcl_configure_clocks_dfll0(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_DFLL + + // Supported synchronous clocks frequencies if DFLL is the main clock source: + // (these obviously depend on the DFLL target frequency; we'll take 100MHz as an example) + // 50MHz, 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1562.5kHz, 781.25kHz, 390.625kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + + unsigned long main_clock_freq; + scif_gclk_opt_t *pgc_dfllif_ref_opt; + + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + + main_clock_freq = param->dfll_f; +#ifdef AVR32SFW_INPUT_CHECK + // Verify that the target DFLL output frequency is in the correct range. + if((main_clock_freq > SCIF_DFLL_MAXFREQ_HZ) || (main_clock_freq < SCIF_DFLL_MINFREQ_HZ)) + return(-1); + // Verify that the target frequencies are reachable. + if((param->cpu_f > main_clock_freq) || (param->pba_f > main_clock_freq) + || (param->pbb_f > main_clock_freq)) + return(-1); +#endif + pgc_dfllif_ref_opt = (scif_gclk_opt_t *)param->pextra_params; + // Implementation note: this implementation configures the DFLL in closed-loop + // mode (because it gives the best accuracy) which enables the generic clock CLK_DFLLIF_REF + // as a reference (RCSYS being used as the generic clock source, undivided). + scif_dfll0_closedloop_configure_and_start(pgc_dfllif_ref_opt, main_clock_freq, TRUE); + + return(pcl_configure_synchronous_clocks(PM_CLK_SRC_DFLL0, main_clock_freq, param)); +} + + +static long int pcl_configure_clocks_uc3l(pcl_freq_param_t *param) +{ + // Supported main clock sources: PCL_MC_RCSYS, PCL_MC_OSC0, PCL_MC_DFLL0, PCL_MC_RC120M + + // Supported synchronous clocks frequencies if RCSYS is the main clock source: + // 115200Hz, 57600Hz, 28800Hz, 14400Hz, 7200Hz, 3600Hz, 1800Hz, 900Hz, 450Hz. + + // Supported synchronous clocks frequencies if RC120M is the main clock source: + // 30MHz, 15MHz, 7.5MHz, 3.75MHz, 1.875MHz, 937.5kHz, 468.75kHz. + + // Supported synchronous clocks frequencies if OSC0 is the main clock source: + // (these obviously depend on the OSC0 frequency; we'll take 16MHz as an example) + // 16MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz, 62.5kHz. + + // Supported synchronous clocks frequencies if DFLL is the main clock source: + // (these obviously depend on the DFLL target frequency; we'll take 100MHz as an example) + // 50MHz, 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1562.5kHz, 781.25kHz, 390.625kHz. + + // NOTE: by default, this implementation doesn't perform thorough checks on the + // input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + + +#ifdef AVR32SFW_INPUT_CHECK + // Verify that fCPU >= fPBx + if((param->cpu_f < param->pba_f) || (param->cpu_f < param->pbb_f)) + return(-1); +#endif + + if(PCL_MC_RCSYS == param->main_clk_src) + { + return(pcl_configure_clocks_rcsys(param)); + } + else if(PCL_MC_RC120M == param->main_clk_src) + { + return(pcl_configure_clocks_rc120m(param)); + } + else if(PCL_MC_OSC0 == param->main_clk_src) + { + return(pcl_configure_clocks_osc0(param)); + } + else // PCL_MC_DFLL0 == param->main_clk_src + { + return(pcl_configure_clocks_dfll0(param)); + } +} + +static long int pcl_configure_synchronous_clocks(pm_clk_src_t main_clk_src, unsigned long main_clock_freq_hz, pcl_freq_param_t *param) +{ + //# + //# Set the Synchronous clock division ratio for each clock domain + //# + pm_set_all_cksel(main_clock_freq_hz, param->cpu_f, param->pba_f, param->pbb_f); + + //# + //# Set the Flash wait state and the speed read mode (depending on the target CPU frequency). + //# +#if UC3L + flashcdw_set_flash_waitstate_and_readmode(param->cpu_f); +#elif UC3C + flashc_set_flash_waitstate_and_readmode(param->cpu_f); +#endif + + + //# + //# Switch the main clock source to the selected clock. + //# + pm_set_mclk_source(main_clk_src); + + return PASS; +} + +#endif // UC3L device-specific implementation + +//! UC3C Device-specific implementation +#if UC3C +static long int pcl_configure_clocks_uc3c(pcl_freq_param_t *param) +{ + #define PM_MAX_MUL ((1 << AVR32_SCIF_PLLMUL_SIZE) - 1) + #define AVR32_PM_PBA_MAX_FREQ 66000000 + #define AVR32_PM_PLL_VCO_RANGE0_MAX_FREQ 240000000 + #define AVR32_PM_PLL_VCO_RANGE0_MIN_FREQ 160000000 + + // Implementation for UC3C parts. + // Supported frequencies: + // Fosc0 mul div PLL div2_en cpu_f pba_f Comment + // 12 15 1 192 1 12 12 + // 12 9 3 40 1 20 20 PLL out of spec + // 12 15 1 192 1 24 12 + // 12 9 1 120 1 30 15 + // 12 9 3 40 0 40 20 PLL out of spec + // 12 15 1 192 1 48 12 + // 12 15 1 192 1 48 24 + // 12 8 1 108 1 54 27 + // 12 9 1 120 1 60 15 + // 12 9 1 120 1 60 30 + // 12 10 1 132 1 66 16.5 + // + unsigned long in_cpu_f = param->cpu_f; + unsigned long in_osc0_f = param->osc0_f; + unsigned long mul, div, div2_en = 0, div2_cpu = 0, div2_pba = 0; + unsigned long pll_freq, rest; + Bool b_div2_pba, b_div2_cpu; + + // Configure OSC0 in crystal mode, external crystal with a FOSC0 Hz frequency. + scif_configure_osc_crystalmode(SCIF_OSC0, in_osc0_f); + // Enable the OSC0 + scif_enable_osc(SCIF_OSC0, param->osc0_startup, true); + // Set the main clock source as being OSC0. + pm_set_mclk_source(PM_CLK_SRC_OSC0); + + // Start with CPU freq config + if (in_cpu_f == in_osc0_f) + { + param->cpu_f = in_osc0_f; + param->pba_f = in_osc0_f; + return PASS; + } + else if (in_cpu_f < in_osc0_f) + { + // TBD + } + + rest = in_cpu_f % in_osc0_f; + + for (div = 1; div < 32; div++) + { + if ((div * rest) % in_osc0_f == 0) + break; + } + if (div == 32) + return FAIL; + + mul = (in_cpu_f * div) / in_osc0_f; + + if (mul > PM_MAX_MUL) + return FAIL; + + // export 2power from PLL div to div2_cpu + while (!(div % 2)) + { + div /= 2; + div2_cpu++; + } + + // Here we know the mul and div parameter of the PLL config. + // . Check out if the PLL has a valid in_cpu_f. + // . Try to have for the PLL frequency (VCO output) the highest possible value + // to reduce jitter. + while (in_osc0_f * 2 * mul / div < AVR32_PM_PLL_VCO_RANGE0_MAX_FREQ) + { + if (2 * mul > PM_MAX_MUL) + break; + mul *= 2; + div2_cpu++; + } + + if (div2_cpu != 0) + { + div2_cpu--; + div2_en = 1; + } + + pll_freq = in_osc0_f * mul / (div * (1 << div2_en)); + + // Update real CPU Frequency + param->cpu_f = pll_freq / (1 << div2_cpu); + mul--; + + scif_pll_opt_t opt; + + opt.osc = SCIF_OSC0, // Sel Osc0 or Osc1 + opt.lockcount = 16, // lockcount in main clock for the PLL wait lock + opt.div = div, // DIV=1 in the formula + opt.mul = mul, // MUL=7 in the formula + opt.pll_div2 = div2_en, // pll_div2 Divide the PLL output frequency by 2 (this settings does not change the FVCO value) + opt.pll_wbwdisable = 0, //pll_wbwdisable 1 Disable the Wide-Bandith Mode (Wide-Bandwith mode allow a faster startup time and out-of-lock time). 0 to enable the Wide-Bandith Mode. + opt.pll_freq = (pll_freq < AVR32_PM_PLL_VCO_RANGE0_MIN_FREQ) ? 1 : 0, // Set to 1 for VCO frequency range 80-180MHz, set to 0 for VCO frequency range 160-240Mhz. + + + scif_pll_setup(SCIF_PLL0, opt); // lockcount in main clock for the PLL wait lock + + /* Enable PLL0 */ + scif_pll_enable(SCIF_PLL0); + + /* Wait for PLL0 locked */ + scif_wait_for_pll_locked(SCIF_PLL0) ; + + rest = pll_freq; + while (rest > AVR32_PM_PBA_MAX_FREQ || + rest != param->pba_f) + { + div2_pba++; + rest = pll_freq / (1 << div2_pba); + if (rest < param->pba_f) + break; + } + + // Update real PBA Frequency + param->pba_f = pll_freq / (1 << div2_pba); + + + if (div2_cpu) + { + b_div2_cpu = TRUE; + div2_cpu--; + } + else + b_div2_cpu = FALSE; + + if (div2_pba) + { + b_div2_pba = TRUE; + div2_pba--; + } + else + b_div2_pba = FALSE; + + if (b_div2_cpu == TRUE ) + { + pm_set_clk_domain_div(PM_CLK_DOMAIN_0, (pm_divratio_t) div2_cpu); // CPU + pm_set_clk_domain_div(PM_CLK_DOMAIN_1, (pm_divratio_t) div2_cpu); // HSB + pm_set_clk_domain_div(PM_CLK_DOMAIN_3, (pm_divratio_t) div2_cpu); // PBB + } + if (b_div2_pba == TRUE ) + { + pm_set_clk_domain_div(PM_CLK_DOMAIN_2, (pm_divratio_t) div2_pba); // PBA + pm_set_clk_domain_div(PM_CLK_DOMAIN_4, (pm_divratio_t) div2_pba); // PBC + } + + // Set Flashc Wait State + flashc_set_flash_waitstate_and_readmode(param->cpu_f); + + // Set the main clock source as being PLL0. + pm_set_mclk_source(PM_CLK_SRC_PLL0); + + return PASS; +} +#endif // UC3C device-specific implementation + +long int pcl_switch_to_osc(pcl_osc_t osc, unsigned int fcrystal, unsigned int startup) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + if(PCL_OSC0 == osc) + { + // Configure OSC0 in crystal mode, external crystal with a FOSC0 Hz frequency, + // enable the OSC0, set the main clock source as being OSC0. + pm_switch_to_osc0(&AVR32_PM, fcrystal, startup); + } + else + { + return PCL_NOT_SUPPORTED; + } +#else +// Implementation for UC3C, UC3L parts. + #if AVR32_PM_VERSION_RESETVALUE < 0x400 + return PCL_NOT_SUPPORTED; + #else + if(PCL_OSC0 == osc) + { + // Configure OSC0 in crystal mode, external crystal with a fcrystal Hz frequency. + scif_configure_osc_crystalmode(SCIF_OSC0, fcrystal); + // Enable the OSC0 + scif_enable_osc(SCIF_OSC0, startup, true); + // Set the Flash wait state and the speed read mode (depending on the target CPU frequency). +#if UC3L + flashcdw_set_flash_waitstate_and_readmode(fcrystal); +#elif UC3C + flashc_set_flash_waitstate_and_readmode(fcrystal); +#endif + // Set the main clock source as being OSC0. + pm_set_mclk_source(PM_CLK_SRC_OSC0); + } + else + { + return PCL_NOT_SUPPORTED; + } + #endif +#endif + return PASS; +} + +long int pcl_configure_usb_clock(void) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + pm_configure_usb_clock(); + return PASS; +#else + #ifdef AVR32_PM_410_H_INCLUDED + const scif_pll_opt_t opt = { + .osc = SCIF_OSC0, // Sel Osc0 or Osc1 + .lockcount = 16, // lockcount in main clock for the PLL wait lock + .div = 1, // DIV=1 in the formula + .mul = 5, // MUL=7 in the formula + .pll_div2 = 1, // pll_div2 Divide the PLL output frequency by 2 (this settings does not change the FVCO value) + .pll_wbwdisable = 0, //pll_wbwdisable 1 Disable the Wide-Bandith Mode (Wide-Bandwith mode allow a faster startup time and out-of-lock time). 0 to enable the Wide-Bandith Mode. + .pll_freq = 1, // Set to 1 for VCO frequency range 80-180MHz, set to 0 for VCO frequency range 160-240Mhz. + }; + + /* Setup PLL1 on Osc0, mul=7 ,no divisor, lockcount=16, ie. 16Mhzx6 = 96MHz output */ + scif_pll_setup(SCIF_PLL1, opt); // lockcount in main clock for the PLL wait lock + + /* Enable PLL1 */ + scif_pll_enable(SCIF_PLL1); + + /* Wait for PLL1 locked */ + scif_wait_for_pll_locked(SCIF_PLL1) ; + + // Implementation for UC3C parts. + // Setup the generic clock for USB + scif_gc_setup(AVR32_SCIF_GCLK_USB, + SCIF_GCCTRL_PLL1, + AVR32_SCIF_GC_NO_DIV_CLOCK, + 0); + // Now enable the generic clock + scif_gc_enable(AVR32_SCIF_GCLK_USB); + return PASS; + #else + return PCL_NOT_SUPPORTED; + #endif +#endif +} + + +#if UC3L +#else +void pcl_write_gplp(unsigned long gplp, unsigned long value) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + pm_write_gplp(&AVR32_PM,gplp,value); +#else + scif_write_gplp(gplp,value); +#endif +} + +unsigned long pcl_read_gplp(unsigned long gplp) +{ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. + return pm_read_gplp(&AVR32_PM,gplp); +#else + return scif_read_gplp(gplp); +#endif +} +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h new file mode 100644 index 000000000..28c5888da --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/PM/power_clocks_lib.h @@ -0,0 +1,379 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief High-level library abstracting features such as oscillators/pll/dfll + * configuration, clock configuration, System-sensible parameters + * configuration, buses clocks configuration, sleep mode, reset. + * + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _POWER_CLOCKS_LIB_H_ +#define _POWER_CLOCKS_LIB_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include <avr32/io.h> +#include "compiler.h" + +#ifndef AVR32_PM_VERSION_RESETVALUE +// Support for UC3A, UC3A3, UC3B parts. + #include "pm.h" +#else +//! Device-specific data +#if UC3L + #include "pm_uc3l.h" + #include "scif_uc3l.h" + #include "flashcdw.h" +#elif UC3C + #include "pm_uc3c.h" + #include "scif_uc3c.h" + #include "flashc.h" +#endif +#endif + +/*! \name Clocks Management + */ +//! @{ + +//! The different oscillators +typedef enum +{ + PCL_OSC0 = 0, + PCL_OSC1 = 1 +} pcl_osc_t; + +//! The different DFLLs +typedef enum +{ + PCL_DFLL0 = 0, + PCL_DFLL1 = 1 +} pcl_dfll_t; + +//! Possible Main Clock Sources +typedef enum +{ + PCL_MC_RCSYS, // Default main clock source, supported by all (aka Slow Clock) + PCL_MC_OSC0, // Supported by all + PCL_MC_OSC1, // Supported by UC3C only + PCL_MC_OSC0_PLL0, // Supported by UC3A, UC3B, UC3A3, UC3C (the main clock source is PLL0 with OSC0 as reference) + PCL_MC_OSC1_PLL0, // Supported by UC3A, UC3B, UC3A3, UC3C (the main clock source is PLL0 with OSC1 as reference) + PCL_MC_OSC0_PLL1, // Supported by UC3C (the main clock source is PLL1 with OSC0 as reference) + PCL_MC_OSC1_PLL1, // Supported by UC3C (the main clock source is PLL1 with OSC1 as reference) + PCL_MC_DFLL0, // Supported by UC3L + PCL_MC_DFLL1, // Not supported yet + PCL_MC_RC120M, // Supported by UC3L, UC3C + PCL_MC_RC8M, // Supported by UC3C + PCL_MC_CRIPOSC // Supported by UC3C +} pcl_mainclk_t; + +//! Input and output parameters to configure clocks with pcl_configure_clocks(). +// NOTE: regarding the frequency settings, always abide by the datasheet rules and min & max supported frequencies. +#ifndef AVR32_PM_VERSION_RESETVALUE +// Support for UC3A, UC3A3, UC3B parts. +#define pcl_freq_param_t pm_freq_param_t // See pm.h +#else +// Support for UC3C, UC3L parts. +typedef struct +{ + //! Main clock source selection (input argument). + pcl_mainclk_t main_clk_src; + + //! Target CPU frequency (input/output argument). + unsigned long cpu_f; + + //! Target PBA frequency (input/output argument). + unsigned long pba_f; + + //! Target PBB frequency (input/output argument). + unsigned long pbb_f; + + //! Target PBC frequency (input/output argument). + unsigned long pbc_f; + + //! Oscillator 0's external crystal(or external clock) frequency (board dependant) (input argument). + unsigned long osc0_f; + + //! Oscillator 0's external crystal(or external clock) startup time: AVR32_PM_OSCCTRL0_STARTUP_x_RCOSC (input argument). + unsigned long osc0_startup; + + //! DFLL target frequency (input/output argument) (NOTE: the bigger, the most stable the frequency) + unsigned long dfll_f; + + //! Other parameters that might be necessary depending on the device (implementation-dependent). + // For the UC3L DFLL setup, this parameter should be pointing to a structure of + // type (scif_gclk_opt_t *). + void *pextra_params; +} pcl_freq_param_t; +#endif + +//! Define "not supported" for the lib. +#define PCL_NOT_SUPPORTED (-10000) + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - main_clk_src is the id of the main clock source to use, + * - cpu_f and pba_f and pbb_f are the wanted frequencies, + * - osc0_f is the oscillator 0's external crystal (or external clock) on-board frequency (e.g. FOSC0), + * - osc0_startup is the oscillator 0's external crystal (or external clock) startup time (e.g. OSC0_STARTUP). + * - dfll_f is the target DFLL frequency to set-up if main_clk_src is the dfll. + * + * The CPU, HSB and PBA frequencies programmed after configuration are stored back into cpu_f and pba_f. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks() and modify it to use + * preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the RCSYS osc as main source clock. + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies + * + * Supported main clock sources: PCL_MC_RCSYS + * + * Supported synchronous clocks frequencies: + * 115200Hz, 57600Hz, 28800Hz, 14400Hz, 7200Hz, 3600Hz, 1800Hz, 900Hz, 450Hz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_rcsys() and modify it to use + * preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_rcsys(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the RC120M osc as main source clock. + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies + * + * Supported main clock sources: PCL_MC_RC120M + * + * Supported synchronous clocks frequencies: + * 30MHz, 15MHz, 7.5MHz, 3.75MHz, 1.875MHz, 937.5kHz, 468.75kHz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_rc120m() and modify it to + * use preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_rc120m(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the OSC0 osc as main source clock + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies, + * - osc0_f is the oscillator 0's external crystal (or external clock) on-board frequency (e.g. FOSC0), + * - osc0_startup is the oscillator 0's external crystal (or external clock) startup time (e.g. OSC0_STARTUP). + * + * Supported main clock sources: PCL_MC_OSC0 + * + * Supported synchronous clocks frequencies: + * (these obviously depend on the OSC0 frequency; we'll take 16MHz as an example) + * 16MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz, 62.5kHz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_osc0() and modify it to use + * preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_osc0(pcl_freq_param_t *param); + +/*! \brief Automatically configure the CPU, PBA, PBB, and HSB clocks using the DFLL0 as main source clock + * + * This function needs some parameters stored in a pcl_freq_param_t structure: + * - cpu_f and pba_f and pbb_f are the wanted frequencies, + * - dfll_f is the target DFLL frequency to set-up + * + * \note: when the DFLL0 is to be used as main source clock for the synchronous clocks, + * the target frequency of the DFLL should be chosen to be as high as possible + * within the specification range (for stability reasons); the target cpu and pbx + * frequencies will then be reached by appropriate division ratio. + * + * Supported main clock sources: PCL_MC_DFLL0 + * + * Supported synchronous clocks frequencies: + * (these obviously depend on the DFLL target frequency; we'll take 100MHz as an example) + * 50MHz, 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1562.5kHz, 781.25kHz, 390.625kHz. + * + * \note: by default, this implementation doesn't perform thorough checks on the + * input parameters. To enable the checks, define AVR32SFW_INPUT_CHECK. + * + * \note: since it is dynamically computing the appropriate field values of the + * configuration registers from the parameters structure, this function is not + * optimal in terms of code size. For a code size optimal solution, it is better + * to create a new function from pcl_configure_clocks_dfll0() and modify it to + * use preprocessor computation from pre-defined target frequencies. + * + * \param param pointer on the configuration structure. + * + * \retval 0 Success. + * \retval <0 The configuration cannot be performed. + */ +extern long int pcl_configure_clocks_dfll0(pcl_freq_param_t *param); + +/*! \brief Switch the main clock source to Osc0 configured in crystal mode + * + * \param osc The oscillator to enable and switch to. + * \param fcrystal Oscillator external crystal frequency (Hz) + * \param startup Oscillator startup time. + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long int pcl_switch_to_osc(pcl_osc_t osc, unsigned int fcrystal, unsigned int startup); + +/*! \brief Enable the clock of a module. + * + * \param module The module to clock (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks" + * or look in the module section). + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. +#define pcl_enable_module(module) pm_enable_module(&AVR32_PM, module) +#else +// Implementation for UC3C, UC3L parts. +#define pcl_enable_module(module) pm_enable_module(module) +#endif + +/*! \brief Disable the clock of a module. + * + * \param module The module to shut down (use one of the defines in the part-specific + * header file under "toolchain folder"/avr32/inc(lude)/avr32/; depending on the + * clock domain, look for the sections "CPU clocks", "HSB clocks", "PBx clocks" + * or look in the module section). + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +#ifndef AVR32_PM_VERSION_RESETVALUE +// Implementation for UC3A, UC3A3, UC3B parts. +#define pcl_disable_module(module) pm_disable_module(&AVR32_PM, module) +#else +// Implementation for UC3C, UC3L parts. +#define pcl_disable_module(module) pm_disable_module(module) +#endif + +/*! \brief Configure the USB Clock + * + * + * \return Status. + * \retval 0 Success. + * \retval <0 An error occured. + */ +extern long int pcl_configure_usb_clock(void); + +//! @} + +/*! \name Power Management + */ +//! @{ +/*! + * \brief Read the content of the GPLP registers + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * + * \return The content of the chosen GPLP register. + */ +extern unsigned long pcl_read_gplp(unsigned long gplp); + + +/*! + * \brief Write into the GPLP registers + * \param gplp GPLP register index (0,1,... depending on the number of GPLP registers for a given part) + * \param value Value to write + */ +extern void pcl_write_gplp(unsigned long gplp, unsigned long value); + +//! @} + +#ifdef __cplusplus +} +#endif + +#endif // _POWER_CLOCKS_LIB_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c new file mode 100644 index 000000000..cadb8b15e --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.c @@ -0,0 +1,443 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SPI driver for AVR32 UC3. + * + * This file defines a useful set of functions for the SPI interface on AVR32 + * devices. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "spi.h" + +#ifdef FREERTOS_USED + +#include "FreeRTOS.h" +#include "semphr.h" + +#endif + + +/*! \name SPI Writable Bit-Field Registers + */ +//! @{ + +typedef union +{ + unsigned long cr; + avr32_spi_cr_t CR; +} u_avr32_spi_cr_t; + +typedef union +{ + unsigned long mr; + avr32_spi_mr_t MR; +} u_avr32_spi_mr_t; + +typedef union +{ + unsigned long tdr; + avr32_spi_tdr_t TDR; +} u_avr32_spi_tdr_t; + +typedef union +{ + unsigned long ier; + avr32_spi_ier_t IER; +} u_avr32_spi_ier_t; + +typedef union +{ + unsigned long idr; + avr32_spi_idr_t IDR; +} u_avr32_spi_idr_t; + +typedef union +{ + unsigned long csr; + avr32_spi_csr0_t CSR; +} u_avr32_spi_csr_t; + +//! @} + + +#ifdef FREERTOS_USED + +//! The SPI mutex. +static xSemaphoreHandle xSPIMutex; + +#endif + + +/*! \brief Calculates the baudrate divider. + * + * \param options Pointer to a structure containing initialization options for + * an SPI channel. + * \param pba_hz SPI module input clock frequency (PBA clock, Hz). + * + * \return Divider or error code. + * \retval >=0 Success. + * \retval <0 Error. + */ +static int getBaudDiv(const spi_options_t *options, unsigned int pba_hz) +{ + int baudDiv = (pba_hz + options->baudrate / 2) / options->baudrate; + + if (baudDiv <= 0 || baudDiv > 255) { + return -1; + } + + return baudDiv; +} + + +void spi_reset(volatile avr32_spi_t *spi) +{ + spi->cr = AVR32_SPI_CR_SWRST_MASK; +} + + +spi_status_t spi_initSlave(volatile avr32_spi_t *spi, + unsigned char bits, + unsigned char spi_mode) +{ + if (spi_mode > 3 || + bits < 8 || bits > 16) { + return SPI_ERROR_ARGUMENT; + } + + // Reset. + spi->cr = AVR32_SPI_CR_SWRST_MASK; + + // Will use CSR0 offsets; these are the same for CSR0 to CSR3. + spi->csr0 = ((spi_mode >> 1) << AVR32_SPI_CSR0_CPOL_OFFSET) | + (((spi_mode & 0x1) ^ 0x1) << AVR32_SPI_CSR0_NCPHA_OFFSET) | + ((bits - 8) << AVR32_SPI_CSR0_BITS_OFFSET); + + return SPI_OK; +} + + +spi_status_t spi_initTest(volatile avr32_spi_t *spi) +{ + // Reset. + spi->cr = AVR32_SPI_CR_SWRST_MASK; + spi->mr |= AVR32_SPI_MR_MSTR_MASK | // Master Mode. + AVR32_SPI_MR_LLB_MASK; // Local Loopback. + + return SPI_OK; +} + + +spi_status_t spi_initMaster(volatile avr32_spi_t *spi, const spi_options_t *options) +{ + u_avr32_spi_mr_t u_avr32_spi_mr; + + if (options->modfdis > 1) { + return SPI_ERROR_ARGUMENT; + } + + // Reset. + spi->cr = AVR32_SPI_CR_SWRST_MASK; + + // Master Mode. + u_avr32_spi_mr.mr = spi->mr; + u_avr32_spi_mr.MR.mstr = 1; + u_avr32_spi_mr.MR.modfdis = options->modfdis; + u_avr32_spi_mr.MR.llb = 0; + u_avr32_spi_mr.MR.pcs = (1 << AVR32_SPI_MR_PCS_SIZE) - 1; + spi->mr = u_avr32_spi_mr.mr; + + return SPI_OK; +} + + +spi_status_t spi_selectionMode(volatile avr32_spi_t *spi, + unsigned char variable_ps, + unsigned char pcs_decode, + unsigned char delay) +{ + u_avr32_spi_mr_t u_avr32_spi_mr; + + if (variable_ps > 1 || + pcs_decode > 1) { + return SPI_ERROR_ARGUMENT; + } + + u_avr32_spi_mr.mr = spi->mr; + u_avr32_spi_mr.MR.ps = variable_ps; + u_avr32_spi_mr.MR.pcsdec = pcs_decode; + u_avr32_spi_mr.MR.dlybcs = delay; + spi->mr = u_avr32_spi_mr.mr; + + return SPI_OK; +} + + +spi_status_t spi_selectChip(volatile avr32_spi_t *spi, unsigned char chip) +{ +#ifdef FREERTOS_USED + while (pdFALSE == xSemaphoreTake(xSPIMutex, 20)); +#endif + + // Assert all lines; no peripheral is selected. + spi->mr |= AVR32_SPI_MR_PCS_MASK; + + if (spi->mr & AVR32_SPI_MR_PCSDEC_MASK) { + // The signal is decoded; allow up to 15 chips. + if (chip > 14) { + return SPI_ERROR_ARGUMENT; + } + + spi->mr &= ~AVR32_SPI_MR_PCS_MASK | (chip << AVR32_SPI_MR_PCS_OFFSET); + } else { + if (chip > 3) { + return SPI_ERROR_ARGUMENT; + } + + spi->mr &= ~(1 << (AVR32_SPI_MR_PCS_OFFSET + chip)); + } + + return SPI_OK; +} + + +spi_status_t spi_unselectChip(volatile avr32_spi_t *spi, unsigned char chip) +{ + unsigned int timeout = SPI_TIMEOUT; + + while (!(spi->sr & AVR32_SPI_SR_TXEMPTY_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + // Assert all lines; no peripheral is selected. + spi->mr |= AVR32_SPI_MR_PCS_MASK; + + // Last transfer, so deassert the current NPCS if CSAAT is set. + spi->cr = AVR32_SPI_CR_LASTXFER_MASK; + +#ifdef FREERTOS_USED + xSemaphoreGive(xSPIMutex); +#endif + + return SPI_OK; +} + + +spi_status_t spi_setupChipReg(volatile avr32_spi_t *spi, + const spi_options_t *options, + unsigned int pba_hz) +{ + u_avr32_spi_csr_t u_avr32_spi_csr; + + if (options->spi_mode > 3 || + options->stay_act > 1 || + options->bits < 8 || options->bits > 16) { + return SPI_ERROR_ARGUMENT; + } + + int baudDiv = getBaudDiv(options, pba_hz); + + if (baudDiv < 0) { + return SPI_ERROR_ARGUMENT; + } + + // Will use CSR0 offsets; these are the same for CSR0 to CSR3. + u_avr32_spi_csr.csr = 0; + u_avr32_spi_csr.CSR.cpol = options->spi_mode >> 1; + u_avr32_spi_csr.CSR.ncpha = (options->spi_mode & 0x1) ^ 0x1; + u_avr32_spi_csr.CSR.csaat = options->stay_act; + u_avr32_spi_csr.CSR.bits = options->bits - 8; + u_avr32_spi_csr.CSR.scbr = baudDiv; + u_avr32_spi_csr.CSR.dlybs = options->spck_delay; + u_avr32_spi_csr.CSR.dlybct = options->trans_delay; + + switch(options->reg) { + case 0: + spi->csr0 = u_avr32_spi_csr.csr; + break; + case 1: + spi->csr1 = u_avr32_spi_csr.csr; + break; + case 2: + spi->csr2 = u_avr32_spi_csr.csr; + break; + case 3: + spi->csr3 = u_avr32_spi_csr.csr; + break; + default: + return SPI_ERROR_ARGUMENT; + } + +#ifdef FREERTOS_USED + if (!xSPIMutex) + { + // Create the SPI mutex. + vSemaphoreCreateBinary(xSPIMutex); + if (!xSPIMutex) + { + while(1); + } + } +#endif + + return SPI_OK; +} + + +void spi_enable(volatile avr32_spi_t *spi) +{ + spi->cr = AVR32_SPI_CR_SPIEN_MASK; +} + + +void spi_disable(volatile avr32_spi_t *spi) +{ + spi->cr = AVR32_SPI_CR_SPIDIS_MASK; +} + + +int spi_is_enabled(volatile avr32_spi_t *spi) +{ + return (spi->sr & AVR32_SPI_SR_SPIENS_MASK) != 0; +} + + +unsigned char spi_writeRegisterEmptyCheck(volatile avr32_spi_t *spi) +{ + return ((spi->sr & AVR32_SPI_SR_TDRE_MASK) != 0); +} + + +spi_status_t spi_write(volatile avr32_spi_t *spi, unsigned short data) +{ + unsigned int timeout = SPI_TIMEOUT; + + while (!(spi->sr & AVR32_SPI_SR_TDRE_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + spi->tdr = data << AVR32_SPI_TDR_TD_OFFSET; + + return SPI_OK; +} + + +spi_status_t spi_variableSlaveWrite(volatile avr32_spi_t *spi, unsigned short data, + unsigned char pcs, unsigned char lastxfer) +{ + unsigned int timeout = SPI_TIMEOUT; + + if (pcs > 14 || lastxfer > 1) { + return SPI_ERROR_ARGUMENT; + } + + while (!(spi->sr & AVR32_SPI_SR_TDRE_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + spi->tdr = (data << AVR32_SPI_TDR_TD_OFFSET) | + (pcs << AVR32_SPI_TDR_PCS_OFFSET) | + (lastxfer << AVR32_SPI_TDR_LASTXFER_OFFSET); + + return SPI_OK; +} + + +unsigned char spi_writeEndCheck(volatile avr32_spi_t *spi) +{ + return ((spi->sr & AVR32_SPI_SR_TXEMPTY_MASK) != 0); +} + + +unsigned char spi_readRegisterFullCheck(volatile avr32_spi_t *spi) +{ + return ((spi->sr & AVR32_SPI_SR_RDRF_MASK) != 0); +} + + +spi_status_t spi_read(volatile avr32_spi_t *spi, unsigned short *data) +{ + unsigned int timeout = SPI_TIMEOUT; + + while ((spi->sr & (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) != + (AVR32_SPI_SR_RDRF_MASK | AVR32_SPI_SR_TXEMPTY_MASK)) { + if (!timeout--) { + return SPI_ERROR_TIMEOUT; + } + } + + *data = spi->rdr >> AVR32_SPI_RDR_RD_OFFSET; + + return SPI_OK; +} + + +unsigned char spi_getStatus(volatile avr32_spi_t *spi) +{ + spi_status_t ret = SPI_OK; + unsigned long sr = spi->sr; + + if (sr & AVR32_SPI_SR_OVRES_MASK) { + ret = SPI_ERROR_OVERRUN; + } + + if (sr & AVR32_SPI_SR_MODF_MASK) { + ret += SPI_ERROR_MODE_FAULT; + } + + if (ret == (SPI_ERROR_OVERRUN + SPI_ERROR_MODE_FAULT)) { + return SPI_ERROR_OVERRUN_AND_MODE_FAULT; + } + else if (ret > 0) { + return ret; + } else { + return SPI_OK; + } +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h new file mode 100644 index 000000000..6dcc92848 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/SPI/spi.h @@ -0,0 +1,342 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief SPI driver for AVR32 UC3. + * + * This file defines a useful set of functions for the SPI interface on AVR32 + * devices. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with an SPI module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _SPI_H_ +#define _SPI_H_ + +#include <avr32/io.h> + + +//! Time-out value (number of attempts). +#define SPI_TIMEOUT 10000 + + +//! Status codes used by the SPI driver. +typedef enum +{ + SPI_ERROR = -1, + SPI_OK = 0, + SPI_ERROR_TIMEOUT = 1, + SPI_ERROR_ARGUMENT, + SPI_ERROR_OVERRUN, + SPI_ERROR_MODE_FAULT, + SPI_ERROR_OVERRUN_AND_MODE_FAULT +} spi_status_t; + +//! Option structure for SPI channels. +typedef struct +{ + //! The SPI channel to set up. + unsigned char reg; + + //! Preferred baudrate for the SPI. + unsigned int baudrate; + + //! Number of bits in each character (8 to 16). + unsigned char bits; + + //! Delay before first clock pulse after selecting slave (in PBA clock periods). + unsigned char spck_delay; + + //! Delay between each transfer/character (in PBA clock periods). + unsigned char trans_delay; + + //! Sets this chip to stay active after last transfer to it. + unsigned char stay_act; + + //! Which SPI mode to use when transmitting. + unsigned char spi_mode; + + //! Disables the mode fault detection. + //! With this bit cleared, the SPI master mode will disable itself if another + //! master tries to address it. + unsigned char modfdis; +} spi_options_t; + + +/*! \brief Resets the SPI controller. + * + * \param spi Base address of the SPI instance. + */ +extern void spi_reset(volatile avr32_spi_t *spi); + +/*! \brief Initializes the SPI in slave mode. + * + * \param spi Base address of the SPI instance. + * \param bits Number of bits in each transmitted character (8 to 16). + * \param spi_mode Clock polarity and phase. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_initSlave(volatile avr32_spi_t *spi, + unsigned char bits, + unsigned char spi_mode); + +/*! \brief Sets up the SPI in a test mode where the transmitter is connected to + * the receiver (local loopback). + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval SPI_OK Success. + */ +extern spi_status_t spi_initTest(volatile avr32_spi_t *spi); + +/*! \brief Initializes the SPI in master mode. + * + * \param spi Base address of the SPI instance. + * \param options Pointer to a structure containing initialization options. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_initMaster(volatile avr32_spi_t *spi, const spi_options_t *options); + +/*! \brief Sets up how and when the slave chips are selected (master mode only). + * + * \param spi Base address of the SPI instance. + * \param variable_ps Target slave is selected in transfer register for every + * character to transmit. + * \param pcs_decode The four chip select lines are decoded externally. Values + * 0 to 14 can be given to \ref spi_selectChip. + * \param delay Delay in PBA periods between chip selects. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_selectionMode(volatile avr32_spi_t *spi, + unsigned char variable_ps, + unsigned char pcs_decode, + unsigned char delay); + +/*! \brief Selects slave chip. + * + * \param spi Base address of the SPI instance. + * \param chip Slave chip number (normal: 0 to 3, extarnally decoded signal: 0 + * to 14). + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_selectChip(volatile avr32_spi_t *spi, unsigned char chip); + +/*! \brief Unselects slave chip. + * + * \param spi Base address of the SPI instance. + * \param chip Slave chip number (normal: 0 to 3, extarnally decoded signal: 0 + * to 14). + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * + * \note Will block program execution until time-out occurs if last transmission + * is not complete. Invoke \ref spi_writeEndCheck beforehand if needed. + */ +extern spi_status_t spi_unselectChip(volatile avr32_spi_t *spi, unsigned char chip); + +/*! \brief Sets options for a specific slave chip. + * + * The baudrate field has to be written before transfer in master mode. Four + * similar registers exist, one for each slave. When using encoded slave + * addressing, reg=0 sets options for slaves 0 to 3, reg=1 for slaves 4 to 7 and + * so on. + * + * \param spi Base address of the SPI instance. + * \param options Pointer to a structure containing initialization options for + * an SPI channel. + * \param pba_hz SPI module input clock frequency (PBA clock, Hz). + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + */ +extern spi_status_t spi_setupChipReg(volatile avr32_spi_t *spi, + const spi_options_t *options, + unsigned int pba_hz); + +/*! \brief Enables the SPI. + * + * \param spi Base address of the SPI instance. + */ +extern void spi_enable(volatile avr32_spi_t *spi); + +/*! \brief Disables the SPI. + * + * Ensures that nothing is transferred while setting up buffers. + * + * \param spi Base address of the SPI instance. + * + * \warning This may cause data loss if used on a slave SPI. + */ +extern void spi_disable(volatile avr32_spi_t *spi); + +/*! \brief Tests if the SPI is enabled. + * + * \param spi Base address of the SPI instance. + * + * \return \c 1 if the SPI is enabled, otherwise \c 0. + */ +extern int spi_is_enabled(volatile avr32_spi_t *spi); + +/*! \brief Checks if there is no data in the transmit register. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval 1 No data in TDR. + * \retval 0 Some data in TDR. + */ +extern unsigned char spi_writeRegisterEmptyCheck(volatile avr32_spi_t *spi); + +/*! \brief Writes one data word in master fixed peripheral select mode or in + * slave mode. + * + * \param spi Base address of the SPI instance. + * \param data The data word to write. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * + * \note Will block program execution until time-out occurs if transmitter is + * busy and transmit buffer is full. Invoke + * \ref spi_writeRegisterEmptyCheck beforehand if needed. + * + * \note Once the data has been written to the transmit buffer, the end of + * transmission is not waited for. Invoke \ref spi_writeEndCheck if + * needed. + */ +extern spi_status_t spi_write(volatile avr32_spi_t *spi, unsigned short data); + +/*! \brief Selects a slave in master variable peripheral select mode and writes + * one data word to it. + * + * \param spi Base address of the SPI instance. + * \param data The data word to write. + * \param pcs Slave selector (bit 0 -> nCS line 0, bit 1 -> nCS line 1, + * etc.). + * \param lastxfer Boolean indicating whether this is the last data word + * transfer. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * \retval SPI_ERROR_ARGUMENT Invalid argument(s) passed. + * + * \note Will block program execution until time-out occurs if transmitter is + * busy and transmit buffer is full. Invoke + * \ref spi_writeRegisterEmptyCheck beforehand if needed. + * + * \note Once the data has been written to the transmit buffer, the end of + * transmission is not waited for. Invoke \ref spi_writeEndCheck if + * needed. + */ +extern spi_status_t spi_variableSlaveWrite(volatile avr32_spi_t *spi, + unsigned short data, + unsigned char pcs, + unsigned char lastxfer); + +/*! \brief Checks if all transmissions are complete. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval 1 All transmissions complete. + * \retval 0 Transmissions not complete. + */ +extern unsigned char spi_writeEndCheck(volatile avr32_spi_t *spi); + +/*! \brief Checks if there is data in the receive register. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval 1 Some data in RDR. + * \retval 0 No data in RDR. + */ +extern unsigned char spi_readRegisterFullCheck(volatile avr32_spi_t *spi); + +/*! \brief Reads one data word in master mode or in slave mode. + * + * \param spi Base address of the SPI instance. + * \param data Pointer to the location where to store the received data word. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_TIMEOUT Time-out. + * + * \note Will block program execution until time-out occurs if no data is + * received or last transmission is not complete. Invoke + * \ref spi_writeEndCheck or \ref spi_readRegisterFullCheck beforehand if + * needed. + */ +extern spi_status_t spi_read(volatile avr32_spi_t *spi, unsigned short *data); + +/*! \brief Gets status information from the SPI. + * + * \param spi Base address of the SPI instance. + * + * \return Status. + * \retval SPI_OK Success. + * \retval SPI_ERROR_OVERRUN Overrun error. + * \retval SPI_ERROR_MODE_FAULT Mode fault (SPI addressed as slave + * while in master mode). + * \retval SPI_ERROR_OVERRUN_AND_MODE_FAULT Overrun error and mode fault. + */ +extern unsigned char spi_getStatus(volatile avr32_spi_t *spi); + + +#endif // _SPI_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c new file mode 100644 index 000000000..b95882a75 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.c @@ -0,0 +1,914 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief USART driver for AVR32 UC3. + * + * This file contains basic functions for the AVR32 USART, with support for all + * modes, settings and clock speeds. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "usart.h" + + +//------------------------------------------------------------------------------ +/*! \name Private Functions + */ +//! @{ + + +/*! \brief Checks if the USART is in multidrop mode. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART is in multidrop mode, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +static __inline__ int usart_mode_is_multidrop(volatile avr32_usart_t *usart) +{ + return ((usart->mr >> AVR32_USART_MR_PAR_OFFSET) & AVR32_USART_MR_PAR_MULTI) == AVR32_USART_MR_PAR_MULTI; +} + + +/*! \brief Calculates a clock divider (\e CD) and a fractional part (\e FP) for + * the USART asynchronous modes to generate a baud rate as close as + * possible to the baud rate set point. + * + * Baud rate calculation: + * \f$ Baudrate = \frac{SelectedClock}{Over \times (CD + \frac{FP}{8})} \f$, \e Over being 16 or 8. + * The maximal oversampling is selected if it allows to generate a baud rate close to the set point. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Baud rate successfully initialized. + * \retval USART_INVALID_INPUT Baud rate set point is out of range for the given input clock frequency. + */ +static int usart_set_async_baudrate(volatile avr32_usart_t *usart, unsigned int baudrate, unsigned long pba_hz) +{ + unsigned int over = (pba_hz >= 16 * baudrate) ? 16 : 8; + unsigned int cd_fp = ((1 << AVR32_USART_BRGR_FP_SIZE) * pba_hz + (over * baudrate) / 2) / (over * baudrate); + unsigned int cd = cd_fp >> AVR32_USART_BRGR_FP_SIZE; + unsigned int fp = cd_fp & ((1 << AVR32_USART_BRGR_FP_SIZE) - 1); + + if (cd < 1 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~(AVR32_USART_MR_USCLKS_MASK | + AVR32_USART_MR_SYNC_MASK | + AVR32_USART_MR_OVER_MASK)) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET | + ((over == 16) ? AVR32_USART_MR_OVER_X16 : AVR32_USART_MR_OVER_X8) << AVR32_USART_MR_OVER_OFFSET; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET | + fp << AVR32_USART_BRGR_FP_OFFSET; + + return USART_SUCCESS; +} + + +/*! \brief Calculates a clock divider (\e CD) for the USART synchronous master + * modes to generate a baud rate as close as possible to the baud rate + * set point. + * + * Baud rate calculation: + * \f$ Baudrate = \frac{SelectedClock}{CD} \f$. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Baud rate successfully initialized. + * \retval USART_INVALID_INPUT Baud rate set point is out of range for the given input clock frequency. + */ +static int usart_set_sync_master_baudrate(volatile avr32_usart_t *usart, unsigned int baudrate, unsigned long pba_hz) +{ + unsigned int cd = (pba_hz + baudrate / 2) / baudrate; + + if (cd < 1 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET | + AVR32_USART_MR_SYNC_MASK; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET; + + return USART_SUCCESS; +} + + +/*! \brief Selects the SCK pin as the source of baud rate for the USART + * synchronous slave modes. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Baud rate successfully initialized. + */ +static int usart_set_sync_slave_baudrate(volatile avr32_usart_t *usart) +{ + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_SCK << AVR32_USART_MR_USCLKS_OFFSET | + AVR32_USART_MR_SYNC_MASK; + + return USART_SUCCESS; +} + + +/*! \brief Calculates a clock divider (\e CD) for the USART ISO7816 mode to + * generate an ISO7816 clock as close as possible to the clock set point. + * + * ISO7816 clock calculation: + * \f$ Clock = \frac{SelectedClock}{CD} \f$. + * + * \param usart Base address of the USART instance. + * \param clock ISO7816 clock set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS ISO7816 clock successfully initialized. + * \retval USART_INVALID_INPUT ISO7816 clock set point is out of range for the given input clock frequency. + */ +static int usart_set_iso7816_clock(volatile avr32_usart_t *usart, unsigned int clock, unsigned long pba_hz) +{ + unsigned int cd = (pba_hz + clock / 2) / clock; + + if (cd < 1 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~(AVR32_USART_MR_USCLKS_MASK | + AVR32_USART_MR_SYNC_MASK | + AVR32_USART_MR_OVER_MASK)) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET | + AVR32_USART_MR_OVER_X16 << AVR32_USART_MR_OVER_OFFSET; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET; + + return USART_SUCCESS; +} + + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + + +/*! \brief Calculates a clock divider (\e CD) for the USART SPI master mode to + * generate a baud rate as close as possible to the baud rate set point. + * + * Baud rate calculation: + * \f$ Baudrate = \frac{SelectedClock}{CD} \f$. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate set point. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Baud rate successfully initialized. + * \retval USART_INVALID_INPUT Baud rate set point is out of range for the given input clock frequency. + */ +static int usart_set_spi_master_baudrate(volatile avr32_usart_t *usart, unsigned int baudrate, unsigned long pba_hz) +{ + unsigned int cd = (pba_hz + baudrate / 2) / baudrate; + + if (cd < 4 || cd > (1 << AVR32_USART_BRGR_CD_SIZE) - 1) + return USART_INVALID_INPUT; + + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_MCK << AVR32_USART_MR_USCLKS_OFFSET; + + usart->brgr = cd << AVR32_USART_BRGR_CD_OFFSET; + + return USART_SUCCESS; +} + + +/*! \brief Selects the SCK pin as the source of baud rate for the USART SPI + * slave mode. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Baud rate successfully initialized. + */ +static int usart_set_spi_slave_baudrate(volatile avr32_usart_t *usart) +{ + usart->mr = (usart->mr & ~AVR32_USART_MR_USCLKS_MASK) | + AVR32_USART_MR_USCLKS_SCK << AVR32_USART_MR_USCLKS_OFFSET; + + return USART_SUCCESS; +} + + +#endif // USART rev. >= 4.0.0 + + +//! @} + + +//------------------------------------------------------------------------------ +/*! \name Initialization Functions + */ +//! @{ + + +void usart_reset(volatile avr32_usart_t *usart) +{ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); + + // Disable all USART interrupts. + // Interrupts needed should be set explicitly on every reset. + if (global_interrupt_enabled) Disable_global_interrupt(); + usart->idr = 0xFFFFFFFF; + usart->csr; + if (global_interrupt_enabled) Enable_global_interrupt(); + + // Reset mode and other registers that could cause unpredictable behavior after reset. + usart->mr = 0; + usart->rtor = 0; + usart->ttgr = 0; + + // Shutdown TX and RX (will be re-enabled when setup has successfully completed), + // reset status bits and turn off DTR and RTS. + usart->cr = AVR32_USART_CR_RSTRX_MASK | + AVR32_USART_CR_RSTTX_MASK | + AVR32_USART_CR_RSTSTA_MASK | + AVR32_USART_CR_RSTIT_MASK | + AVR32_USART_CR_RSTNACK_MASK | +#ifndef AVR32_USART_440_H_INCLUDED +// Note: Modem Signal Management DTR-DSR-DCD-RI are not included in USART rev.440. + AVR32_USART_CR_DTRDIS_MASK | +#endif + AVR32_USART_CR_RTSDIS_MASK; +} + + +int usart_init_rs232(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_async_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1, 1.5 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET; + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_rs232_tx_only(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits == 1 || opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_sync_master_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET; + + // Setup complete; enable communication. + // Enable only output as input is not possible in synchronous mode without + // transferring clock. + usart->cr = AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_hw_handshaking(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set hardware handshaking mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_HARDWARE << AVR32_USART_MR_MODE_OFFSET; + + return USART_SUCCESS; +} + + +int usart_init_modem(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set modem mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_MODEM << AVR32_USART_MR_MODE_OFFSET; + + return USART_SUCCESS; +} + + +int usart_init_sync_master(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits == 1 || opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_sync_master_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_CLKO_MASK; + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_sync_slave(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->paritytype > 7 || + opt->stopbits == 1 || opt->stopbits > 2 + 255 || + opt->channelmode > 3 || + usart_set_sync_slave_baudrate(usart) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET; + + if (opt->stopbits > USART_2_STOPBITS) + { + // Set two stop bits + usart->mr |= AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET; + // and a timeguard period gives the rest. + usart->ttgr = opt->stopbits - USART_2_STOPBITS; + } + else + // Insert 1 or 2 stop bits. + usart->mr |= opt->stopbits << AVR32_USART_MR_NBSTOP_OFFSET; + + // Set normal mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_NORMAL << AVR32_USART_MR_MODE_OFFSET; + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_rs485(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set RS485 mode. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MR_MODE_RS485 << AVR32_USART_MR_MODE_OFFSET; + + return USART_SUCCESS; +} + + +int usart_init_IrDA(volatile avr32_usart_t *usart, const usart_options_t *opt, + long pba_hz, unsigned char irda_filter) +{ + // First: Setup standard RS232. + if (usart_init_rs232(usart, opt, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set IrDA filter. + usart->ifr = irda_filter; + + // Set IrDA mode and activate filtering of input. + usart->mr = (usart->mr & ~AVR32_USART_MR_MODE_MASK) | + AVR32_USART_MODE_IRDA << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_FILTER_MASK; + + return USART_SUCCESS; +} + + +int usart_init_iso7816(volatile avr32_usart_t *usart, const usart_iso7816_options_t *opt, int t, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->paritytype > 1) + return USART_INVALID_INPUT; + + if (t == 0) + { + // Set USART mode to ISO7816, T=0. + // The T=0 protocol always uses 2 stop bits. + usart->mr = AVR32_USART_MR_MODE_ISO7816_T0 << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_NBSTOP_2 << AVR32_USART_MR_NBSTOP_OFFSET | + opt->bit_order << AVR32_USART_MR_MSBF_OFFSET; // Allow MSBF in T=0. + } + else if (t == 1) + { + // Only LSB first in the T=1 protocol. + // max_iterations field is only used in T=0 mode. + if (opt->bit_order != 0 || + opt->max_iterations != 0) + return USART_INVALID_INPUT; + + // Set USART mode to ISO7816, T=1. + // The T=1 protocol always uses 1 stop bit. + usart->mr = AVR32_USART_MR_MODE_ISO7816_T1 << AVR32_USART_MR_MODE_OFFSET | + AVR32_USART_MR_NBSTOP_1 << AVR32_USART_MR_NBSTOP_OFFSET; + } + else + return USART_INVALID_INPUT; + + if (usart_set_iso7816_clock(usart, opt->iso7816_hz, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + // Set FIDI register: bit rate = selected clock/FI_DI_ratio/16. + usart->fidi = opt->fidi_ratio; + + // Set ISO7816 spesific options in the MODE register. + usart->mr |= opt->paritytype << AVR32_USART_MR_PAR_OFFSET | + AVR32_USART_MR_CLKO_MASK | // Enable clock output. + opt->inhibit_nack << AVR32_USART_MR_INACK_OFFSET | + opt->dis_suc_nack << AVR32_USART_MR_DSNACK_OFFSET | + opt->max_iterations << AVR32_USART_MR_MAX_ITERATION_OFFSET; + + // Setup complete; enable the receiver by default. + usart_iso7816_enable_receiver(usart); + + return USART_SUCCESS; +} + + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + + +int usart_init_lin_master(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (usart_set_async_baudrate(usart, baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + usart->mr |= AVR32_USART_MR_MODE_LIN_MASTER << AVR32_USART_MR_MODE_OFFSET; // LIN master mode. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_lin_slave(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (usart_set_async_baudrate(usart, baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + usart->mr |= AVR32_USART_MR_MODE_LIN_SLAVE << AVR32_USART_MR_MODE_OFFSET; // LIN slave mode. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_spi_master(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->spimode > 3 || + opt->channelmode > 3 || + usart_set_spi_master_baudrate(usart, opt->baudrate, pba_hz) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= AVR32_USART_MR_MODE_SPI_MASTER << AVR32_USART_MR_MODE_OFFSET | // SPI master mode. + ((opt->spimode & 0x1) ^ 0x1) << AVR32_USART_MR_SYNC_OFFSET | // SPI clock phase. + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET | // Channel mode. + (opt->spimode >> 1) << AVR32_USART_MR_MSBF_OFFSET | // SPI clock polarity. + AVR32_USART_MR_CLKO_MASK; // Drive SCK pin. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +int usart_init_spi_slave(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz) +{ + // Reset the USART and shutdown TX and RX. + usart_reset(usart); + + // Check input values. + if (!opt || // Null pointer. + opt->charlength < 5 || opt->charlength > 9 || + opt->spimode > 3 || + opt->channelmode > 3 || + usart_set_spi_slave_baudrate(usart) == USART_INVALID_INPUT) + return USART_INVALID_INPUT; + + if (opt->charlength == 9) + { + // Character length set to 9 bits. MODE9 dominates CHRL. + usart->mr |= AVR32_USART_MR_MODE9_MASK; + } + else + { + // CHRL gives the character length (- 5) when MODE9 = 0. + usart->mr |= (opt->charlength - 5) << AVR32_USART_MR_CHRL_OFFSET; + } + + usart->mr |= AVR32_USART_MR_MODE_SPI_SLAVE << AVR32_USART_MR_MODE_OFFSET | // SPI slave mode. + ((opt->spimode & 0x1) ^ 0x1) << AVR32_USART_MR_SYNC_OFFSET | // SPI clock phase. + opt->channelmode << AVR32_USART_MR_CHMODE_OFFSET | // Channel mode. + (opt->spimode >> 1) << AVR32_USART_MR_MSBF_OFFSET; // SPI clock polarity. + + // Setup complete; enable communication. + // Enable input and output. + usart->cr = AVR32_USART_CR_RXEN_MASK | + AVR32_USART_CR_TXEN_MASK; + + return USART_SUCCESS; +} + + +#endif // USART rev. >= 4.0.0 + + +//! @} + + +//------------------------------------------------------------------------------ +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + + +/*! \name SPI Control Functions + */ +//! @{ + + +int usart_spi_selectChip(volatile avr32_usart_t *usart) +{ + // Force the SPI chip select. + usart->cr = AVR32_USART_CR_RTSEN_MASK; + + return USART_SUCCESS; +} + + +int usart_spi_unselectChip(volatile avr32_usart_t *usart) +{ + int timeout = USART_DEFAULT_TIMEOUT; + + do + { + if (!timeout--) return USART_FAILURE; + } while (!usart_tx_empty(usart)); + + // Release the SPI chip select. + usart->cr = AVR32_USART_CR_RTSDIS_MASK; + + return USART_SUCCESS; +} + + +//! @} + + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +/*! \name Transmit/Receive Functions + */ +//! @{ + + +int usart_send_address(volatile avr32_usart_t *usart, int address) +{ + // Check if USART is in multidrop / RS485 mode. + if (!usart_mode_is_multidrop(usart)) return USART_MODE_FAULT; + + // Prepare to send an address. + usart->cr = AVR32_USART_CR_SENDA_MASK; + + // Write the address to TX. + usart_bw_write_char(usart, address); + + return USART_SUCCESS; +} + + +int usart_write_char(volatile avr32_usart_t *usart, int c) +{ + if (usart_tx_ready(usart)) + { + usart->thr = (c << AVR32_USART_THR_TXCHR_OFFSET) & AVR32_USART_THR_TXCHR_MASK; + return USART_SUCCESS; + } + else + return USART_TX_BUSY; +} + + +int usart_putchar(volatile avr32_usart_t *usart, int c) +{ + int timeout = USART_DEFAULT_TIMEOUT; + + if (c == '\n') + { + do + { + if (!timeout--) return USART_FAILURE; + } while (usart_write_char(usart, '\r') != USART_SUCCESS); + + timeout = USART_DEFAULT_TIMEOUT; + } + + do + { + if (!timeout--) return USART_FAILURE; + } while (usart_write_char(usart, c) != USART_SUCCESS); + + return USART_SUCCESS; +} + + +int usart_read_char(volatile avr32_usart_t *usart, int *c) +{ + // Check for errors: frame, parity and overrun. In RS485 mode, a parity error + // would mean that an address char has been received. + if (usart->csr & (AVR32_USART_CSR_OVRE_MASK | + AVR32_USART_CSR_FRAME_MASK | + AVR32_USART_CSR_PARE_MASK)) + return USART_RX_ERROR; + + // No error; if we really did receive a char, read it and return SUCCESS. + if (usart_test_hit(usart)) + { + *c = (usart->rhr & AVR32_USART_RHR_RXCHR_MASK) >> AVR32_USART_RHR_RXCHR_OFFSET; + return USART_SUCCESS; + } + else + return USART_RX_EMPTY; +} + + +int usart_getchar(volatile avr32_usart_t *usart) +{ + int c, ret; + + while ((ret = usart_read_char(usart, &c)) == USART_RX_EMPTY); + + if (ret == USART_RX_ERROR) + return USART_FAILURE; + + return c; +} + + +void usart_write_line(volatile avr32_usart_t *usart, const char *string) +{ + while (*string != '\0') + usart_putchar(usart, *string++); +} + + +int usart_get_echo_line(volatile avr32_usart_t *usart) +{ + int rx_char; + int retval = USART_SUCCESS; + + while (1) + { + rx_char = usart_getchar(usart); + if (rx_char == USART_FAILURE) + { + usart_write_line(usart, "Error!!!\n"); + retval = USART_FAILURE; + break; + } + if (rx_char == '\x03') + { + retval = USART_FAILURE; + break; + } + usart_putchar(usart, rx_char); + if (rx_char == '\r') + { + usart_putchar(usart, '\n'); + break; + } + } + + return retval; +} + + +//! @} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h new file mode 100644 index 000000000..bc1c100f8 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/DRIVERS/USART/usart.h @@ -0,0 +1,889 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief USART driver for AVR32 UC3. + * + * This file contains basic functions for the AVR32 USART, with support for all + * modes, settings and clock speeds. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _USART_H_ +#define _USART_H_ + +#include <avr32/io.h> +#include "compiler.h" + + +/*! \name Return Values + */ +//! @{ +#define USART_SUCCESS 0 //!< Successful completion. +#define USART_FAILURE -1 //!< Failure because of some unspecified reason. +#define USART_INVALID_INPUT 1 //!< Input value out of range. +#define USART_INVALID_ARGUMENT -1 //!< Argument value out of range. +#define USART_TX_BUSY 2 //!< Transmitter was busy. +#define USART_RX_EMPTY 3 //!< Nothing was received. +#define USART_RX_ERROR 4 //!< Transmission error occurred. +#define USART_MODE_FAULT 5 //!< USART not in the appropriate mode. +//! @} + +//! Default time-out value (number of attempts). +#define USART_DEFAULT_TIMEOUT 10000 + +/*! \name Parity Settings + */ +//! @{ +#define USART_EVEN_PARITY AVR32_USART_MR_PAR_EVEN //!< Use even parity on character transmission. +#define USART_ODD_PARITY AVR32_USART_MR_PAR_ODD //!< Use odd parity on character transmission. +#define USART_SPACE_PARITY AVR32_USART_MR_PAR_SPACE //!< Use a space as parity bit. +#define USART_MARK_PARITY AVR32_USART_MR_PAR_MARK //!< Use a mark as parity bit. +#define USART_NO_PARITY AVR32_USART_MR_PAR_NONE //!< Don't use a parity bit. +#define USART_MULTIDROP_PARITY AVR32_USART_MR_PAR_MULTI //!< Parity bit is used to flag address characters. +//! @} + +/*! \name Stop Bits Settings + */ +//! @{ +#define USART_1_STOPBIT AVR32_USART_MR_NBSTOP_1 //!< Use 1 stop bit. +#define USART_1_5_STOPBITS AVR32_USART_MR_NBSTOP_1_5 //!< Use 1.5 stop bits. +#define USART_2_STOPBITS AVR32_USART_MR_NBSTOP_2 //!< Use 2 stop bits (for more, just give the number of bits). +//! @} + +/*! \name Channel Modes + */ +//! @{ +#define USART_NORMAL_CHMODE AVR32_USART_MR_CHMODE_NORMAL //!< Normal communication. +#define USART_AUTO_ECHO AVR32_USART_MR_CHMODE_ECHO //!< Echo data. +#define USART_LOCAL_LOOPBACK AVR32_USART_MR_CHMODE_LOCAL_LOOP //!< Local loopback. +#define USART_REMOTE_LOOPBACK AVR32_USART_MR_CHMODE_REMOTE_LOOP //!< Remote loopback. +//! @} + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \name LIN Node Actions + */ +//! @{ +#define USART_LIN_PUBLISH_ACTION AVR32_USART_LINMR_NACT_PUBLISH //!< The USART transmits the response. +#define USART_LIN_SUBSCRIBE_ACTION AVR32_USART_LINMR_NACT_SUBSCRIBE //!< The USART receives the response. +#define USART_LIN_IGNORE_ACTION AVR32_USART_LINMR_NACT_IGNORE //!< The USART does not transmit and does not receive the reponse. +//! @} + +/*! \name LIN Checksum Types + */ +//! @{ +#define USART_LIN_ENHANCED_CHECKSUM 0 //!< LIN 2.0 "enhanced" checksum. +#define USART_LIN_CLASSIC_CHECKSUM 1 //!< LIN 1.3 "classic" checksum. +//! @} + +#endif // USART rev. >= 4.0.0 + + +//! Input parameters when initializing RS232 and similar modes. +typedef struct +{ + //! Set baud rate of the USART (unused in slave modes). + unsigned long baudrate; + + //! Number of bits to transmit as a character (5 to 9). + unsigned char charlength; + + //! How to calculate the parity bit: \ref USART_EVEN_PARITY, \ref USART_ODD_PARITY, + //! \ref USART_SPACE_PARITY, \ref USART_MARK_PARITY, \ref USART_NO_PARITY or + //! \ref USART_MULTIDROP_PARITY. + unsigned char paritytype; + + //! Number of stop bits between two characters: \ref USART_1_STOPBIT, + //! \ref USART_1_5_STOPBITS, \ref USART_2_STOPBITS or any number from 3 to 257 + //! which will result in a time guard period of that length between characters. + //! \note \ref USART_1_5_STOPBITS is supported in asynchronous modes only. + unsigned short stopbits; + + //! Run the channel in testmode: \ref USART_NORMAL_CHMODE, \ref USART_AUTO_ECHO, + //! \ref USART_LOCAL_LOOPBACK or \ref USART_REMOTE_LOOPBACK. + unsigned char channelmode; +} usart_options_t; + +//! Input parameters when initializing ISO7816 mode. +typedef struct +{ + //! Set the frequency of the ISO7816 clock. + unsigned long iso7816_hz; + + //! The number of ISO7816 clock ticks in every bit period (1 to 2047, 0 = disable clock). + //! Bit rate = \ref iso7816_hz / \ref fidi_ratio. + unsigned short fidi_ratio; + + //! How to calculate the parity bit: \ref USART_EVEN_PARITY for normal mode or + //! \ref USART_ODD_PARITY for inverse mode. + unsigned char paritytype; + + //! Inhibit Non Acknowledge:\n + //! - 0: the NACK is generated;\n + //! - 1: the NACK is not generated. + //! + //! \note This bit will be used only in ISO7816 mode, protocol T = 0 receiver. + int inhibit_nack; + + //! Disable successive NACKs. + //! Successive parity errors are counted up to the value in the \ref max_iterations field. + //! These parity errors generate a NACK on the ISO line. As soon as this value is reached, + //! no addititional NACK is sent on the ISO line. The ITERATION flag is asserted. + int dis_suc_nack; + + //! Max number of repetitions (0 to 7). + unsigned char max_iterations; + + //! Bit order in transmitted characters:\n + //! - 0: LSB first;\n + //! - 1: MSB first. + int bit_order; +} usart_iso7816_options_t; + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +//! Input parameters when initializing SPI mode. +typedef struct +{ + //! Set the frequency of the SPI clock (unused in slave mode). + unsigned long baudrate; + + //! Number of bits to transmit as a character (5 to 9). + unsigned char charlength; + + //! Which SPI mode to use. + unsigned char spimode; + + //! Run the channel in testmode: \ref USART_NORMAL_CHMODE, \ref USART_AUTO_ECHO, + //! \ref USART_LOCAL_LOOPBACK or \ref USART_REMOTE_LOOPBACK. + unsigned char channelmode; +} usart_spi_options_t; + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +/*! \name Initialization Functions + */ +//! @{ + +/*! \brief Resets the USART and disables TX and RX. + * + * \param usart Base address of the USART instance. + */ +extern void usart_reset(volatile avr32_usart_t *usart); + +/*! \brief Sets up the USART to use the standard RS232 protocol. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_rs232(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the standard RS232 protocol in TX-only mode. + * + * Compared to \ref usart_init_rs232, this function allows very high baud rates + * (up to \a pba_hz instead of \a pba_hz / \c 8) at the expense of full duplex. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + * + * \note The \c 1.5 stop bit is not supported in this mode. + */ +extern int usart_init_rs232_tx_only(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use hardware handshaking. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + * + * \note \ref usart_init_rs232 does not need to be invoked before this function. + */ +extern int usart_init_hw_handshaking(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the modem protocol, activating dedicated inputs/outputs. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_modem(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use a synchronous RS232-like protocol in master mode. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_sync_master(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use a synchronous RS232-like protocol in slave mode. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_sync_slave(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the RS485 protocol. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_rs485(volatile avr32_usart_t *usart, const usart_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the IrDA protocol. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up RS232 communication (see \ref usart_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * \param irda_filter Counter used to distinguish received ones from zeros. + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_IrDA(volatile avr32_usart_t *usart, const usart_options_t *opt, + long pba_hz, unsigned char irda_filter); + +/*! \brief Sets up the USART to use the ISO7816 T=0 or T=1 smartcard protocols. + * + * The receiver is enabled by default. \ref usart_iso7816_enable_receiver and + * \ref usart_iso7816_enable_transmitter can be called to change the half-duplex + * communication direction. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up ISO7816 communication (see \ref usart_iso7816_options_t). + * \param t ISO7816 mode to use (T=0 or T=1). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_iso7816(volatile avr32_usart_t *usart, const usart_iso7816_options_t *opt, int t, long pba_hz); + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \brief Sets up the USART to use the LIN master mode. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + */ +extern int usart_init_lin_master(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz); + +/*! \brief Sets up the USART to use the LIN slave mode. + * + * \param usart Base address of the USART instance. + * \param baudrate Baud rate. + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + */ +extern int usart_init_lin_slave(volatile avr32_usart_t *usart, unsigned long baudrate, long pba_hz); + +/*! \brief Sets up the USART to use the SPI master mode. + * + * \ref usart_spi_selectChip and \ref usart_spi_unselectChip can be called to + * select or unselect the SPI slave chip. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up SPI mode (see \ref usart_spi_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_spi_master(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz); + +/*! \brief Sets up the USART to use the SPI slave mode. + * + * \param usart Base address of the USART instance. + * \param opt Options needed to set up SPI mode (see \ref usart_spi_options_t). + * \param pba_hz USART module input clock frequency (PBA clock, Hz). + * + * \retval USART_SUCCESS Mode successfully initialized. + * \retval USART_INVALID_INPUT One or more of the arguments is out of valid range. + */ +extern int usart_init_spi_slave(volatile avr32_usart_t *usart, const usart_spi_options_t *opt, long pba_hz); + +#endif // USART rev. >= 4.0.0 + +//! @} + + +//------------------------------------------------------------------------------ +/*! \name Read and Reset Error Status Bits + */ +//! @{ + +/*! \brief Resets the error status. + * + * This function resets the status bits indicating that a parity error, + * framing error or overrun has occurred. The RXBRK bit, indicating + * a start/end of break condition on the RX line, is also reset. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_reset_status(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_CR_RSTSTA_MASK; +} + +/*! \brief Checks if a parity error has occurred since last status reset. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a parity error has been detected, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_parity_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_PARE_MASK) != 0; +} + +/*! \brief Checks if a framing error has occurred since last status reset. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a framing error has been detected, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_framing_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_FRAME_MASK) != 0; +} + +/*! \brief Checks if an overrun error has occurred since last status reset. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a overrun error has been detected, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_overrun_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_OVRE_MASK) != 0; +} + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \brief Get LIN Error Status + * + * \param usart Base address of the USART instance. + * + * \retval The binary value of the error field. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_lin_get_error(volatile avr32_usart_t *usart) +{ + return (usart->csr & (AVR32_USART_CSR_LINSNRE_MASK | + AVR32_USART_CSR_LINCE_MASK | + AVR32_USART_CSR_LINIPE_MASK | + AVR32_USART_CSR_LINISFE_MASK | + AVR32_USART_CSR_LINBE_MASK)) >> AVR32_USART_CSR_LINBE_OFFSET; +} + +#endif // USART rev. >= 4.0.0 + +//! @} + + +//------------------------------------------------------------------------------ +/*! \name ISO7816 Control Functions + */ +//! @{ + +/*! \brief Enables the ISO7816 receiver. + * + * The ISO7816 transmitter is disabled. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_iso7816_enable_receiver(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_CR_TXDIS_MASK | AVR32_USART_CR_RXEN_MASK; +} + +/*! \brief Enables the ISO7816 transmitter. + * + * The ISO7816 receiver is disabled. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_iso7816_enable_transmitter(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_CR_RXDIS_MASK | AVR32_USART_CR_TXEN_MASK; +} + +//! @} + + +//------------------------------------------------------------------------------ +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \name LIN Control Functions + */ +//! @{ + +/*! \brief Sets the node action. + * + * \param usart Base address of the USART instance. + * \param action The node action: \ref USART_LIN_PUBLISH_ACTION, + * \ref USART_LIN_SUBSCRIBE_ACTION or + * \ref USART_LIN_IGNORE_ACTION. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_node_action(volatile avr32_usart_t *usart, unsigned char action) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_NACT_MASK) | + action << AVR32_USART_LINMR_NACT_OFFSET; +} + +/*! \brief Enables or disables the Identifier parity. + * + * \param usart Base address of the USART instance. + * \param parity Whether to enable the Identifier parity: \c TRUE or \c FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_enable_parity(volatile avr32_usart_t *usart, unsigned char parity) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_PARDIS_MASK) | + !parity << AVR32_USART_LINMR_PARDIS_OFFSET; +} + +/*! \brief Enables or disables the checksum. + * + * \param usart Base address of the USART instance. + * \param parity Whether to enable the checksum: \c TRUE or \c FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_enable_checksum(volatile avr32_usart_t *usart, unsigned char checksum) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_CHKDIS_MASK) | + !checksum << AVR32_USART_LINMR_CHKDIS_OFFSET; +} + +/*! \brief Sets the checksum type. + * + * \param usart Base address of the USART instance. + * \param chktyp The checksum type: \ref USART_LIN_ENHANCED_CHEKSUM or + * \ref USART_LIN_CLASSIC_CHECKSUM. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_checksum(volatile avr32_usart_t *usart, unsigned char chktyp) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_CHKTYP_MASK) | + chktyp << AVR32_USART_LINMR_CHKTYP_OFFSET; +} + +/*! \brief Gets the response data length. + * + * \param usart Base address of the USART instance. + * + * \return The response data length. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned char usart_lin_get_data_length(volatile avr32_usart_t *usart) +{ + if (usart->linmr & AVR32_USART_LINMR_DLM_MASK) + { + unsigned char data_length = 1 << ((usart->linir >> (AVR32_USART_LINIR_IDCHR_OFFSET + 4)) & 0x03); + if (data_length == 1) + data_length = 2; + return data_length; + } + else + return ((usart->linmr & AVR32_USART_LINMR_DLC_MASK) >> AVR32_USART_LINMR_DLC_OFFSET) + 1; +} + +/*! \brief Sets the response data length for LIN 1.x. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_data_length_lin1x(volatile avr32_usart_t *usart) +{ + usart->linmr |= AVR32_USART_LINMR_DLM_MASK; +} + +/*! \brief Sets the response data length for LIN 2.x. + * + * \param usart Base address of the USART instance. + * \param data_length The response data length. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_data_length_lin2x(volatile avr32_usart_t *usart, unsigned char data_length) +{ + usart->linmr = (usart->linmr & ~(AVR32_USART_LINMR_DLC_MASK | + AVR32_USART_LINMR_DLM_MASK)) | + (data_length - 1) << AVR32_USART_LINMR_DLC_OFFSET; +} + +/*! \brief Enables or disables the frame slot mode. + * + * \param usart Base address of the USART instance. + * \param frameslot Whether to enable the frame slot mode: \c TRUE or + * \c FALSE. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_enable_frameslot(volatile avr32_usart_t *usart, unsigned char frameslot) +{ + usart->linmr = (usart->linmr & ~AVR32_USART_LINMR_FSDIS_MASK) | + !frameslot << AVR32_USART_LINMR_FSDIS_OFFSET; +} + +/*! \brief Gets the Identifier character. + * + * \param usart Base address of the USART instance. + * + * \return The Identifier character. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ unsigned char usart_lin_get_id_char(volatile avr32_usart_t *usart) +{ + return (usart->linir & AVR32_USART_LINIR_IDCHR_MASK) >> AVR32_USART_LINIR_IDCHR_OFFSET; +} + +/*! \brief Sets the Identifier character. + * + * \param usart Base address of the USART instance. + * \param id_char The Identifier character. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_set_id_char(volatile avr32_usart_t *usart, unsigned char id_char) +{ + usart->linir = (usart->linir & ~AVR32_USART_LINIR_IDCHR_MASK) | + id_char << AVR32_USART_LINIR_IDCHR_OFFSET; +} + +//! @} + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \name SPI Control Functions + */ +//! @{ + +/*! \brief Selects SPI slave chip. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Success. + */ +extern int usart_spi_selectChip(volatile avr32_usart_t *usart); + +/*! \brief Unselects SPI slave chip. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Success. + * \retval USART_FAILURE Time-out. + */ +extern int usart_spi_unselectChip(volatile avr32_usart_t *usart); + +//! @} + +#endif // USART rev. >= 4.0.0 + + +//------------------------------------------------------------------------------ +/*! \name Transmit/Receive Functions + */ +//! @{ + +/*! \brief Addresses a receiver. + * + * While in RS485 mode, receivers only accept data addressed to them. + * A packet/char with the address tag set has to precede any data. + * This function is used to address a receiver. This receiver should read + * all the following data, until an address packet addresses another receiver. + * + * \param usart Base address of the USART instance. + * \param address Address of the target device. + * + * \retval USART_SUCCESS Address successfully sent (if current mode is RS485). + * \retval USART_MODE_FAULT Wrong operating mode. + */ +extern int usart_send_address(volatile avr32_usart_t *usart, int address); + +/*! \brief Tests if the USART is ready to transmit a character. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART Transmit Holding Register is free, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_tx_ready(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_TXRDY_MASK) != 0; +} + +/*! \brief Writes the given character to the TX buffer if the transmitter is ready. + * + * \param usart Base address of the USART instance. + * \param c The character (up to 9 bits) to transmit. + * + * \retval USART_SUCCESS The transmitter was ready. + * \retval USART_TX_BUSY The transmitter was busy. + */ +extern int usart_write_char(volatile avr32_usart_t *usart, int c); + +/*! \brief An active wait writing a character to the USART. + * + * \param usart Base address of the USART instance. + * \param c The character (up to 9 bits) to transmit. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_bw_write_char(volatile avr32_usart_t *usart, int c) +{ + while (usart_write_char(usart, c) != USART_SUCCESS); +} + +/*! \brief Sends a character with the USART. + * + * \param usart Base address of the USART instance. + * \param c Character to write. + * + * \retval USART_SUCCESS The character was written. + * \retval USART_FAILURE The function timed out before the USART transmitter became ready to send. + */ +extern int usart_putchar(volatile avr32_usart_t *usart, int c); + +/*! \brief Tests if all requested USART transmissions are over. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART Transmit Shift Register and the USART Transmit + * Holding Register are free, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_tx_empty(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_TXEMPTY_MASK) != 0; +} + +/*! \brief Tests if the USART contains a received character. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if the USART Receive Holding Register is full, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_test_hit(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_RXRDY_MASK) != 0; +} + +/*! \brief Checks the RX buffer for a received character, and stores it at the + * given memory location. + * + * \param usart Base address of the USART instance. + * \param c Pointer to the where the read character should be stored + * (must be at least short in order to accept 9-bit characters). + * + * \retval USART_SUCCESS The character was read successfully. + * \retval USART_RX_EMPTY The RX buffer was empty. + * \retval USART_RX_ERROR An error was deteceted. + */ +extern int usart_read_char(volatile avr32_usart_t *usart, int *c); + +/*! \brief Waits until a character is received, and returns it. + * + * \param usart Base address of the USART instance. + * + * \return The received character, or \ref USART_FAILURE upon error. + */ +extern int usart_getchar(volatile avr32_usart_t *usart); + +/*! \brief Writes one character string to the USART. + * + * \param usart Base address of the USART instance. + * \param string String to be written. + */ +extern void usart_write_line(volatile avr32_usart_t *usart, const char *string); + +/*! \brief Gets and echoes characters until end of line. + * + * \param usart Base address of the USART instance. + * + * \retval USART_SUCCESS Success. + * \retval USART_FAILURE Low-level error detected or ETX character received. + */ +extern int usart_get_echo_line(volatile avr32_usart_t *usart); + +#if defined(AVR32_USART_400_H_INCLUDED) || \ + defined(AVR32_USART_410_H_INCLUDED) || \ + defined(AVR32_USART_420_H_INCLUDED) || \ + defined(AVR32_USART_440_H_INCLUDED) || \ + defined(AVR32_USART_602_H_INCLUDED) + +/*! \brief Abort LIN transmission. + * + * \param usart Base address of the USART instance. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ void usart_lin_abort(volatile avr32_usart_t *usart) +{ + usart->cr = AVR32_USART_LINABT_MASK; +} + +/*! \brief Tests if a LIN transfer has been completed. + * + * \param usart Base address of the USART instance. + * + * \return \c 1 if a LIN transfer has been completed, otherwise \c 0. + */ +#if (defined __GNUC__) +__attribute__((__always_inline__)) +#endif +extern __inline__ int usart_lin_transfer_completed(volatile avr32_usart_t *usart) +{ + return (usart->csr & AVR32_USART_CSR_LINTC_MASK) != 0; +} + +#endif // USART rev. >= 4.0.0 + +//! @} + + +#endif // _USART_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c new file mode 100644 index 000000000..09790c259 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.c @@ -0,0 +1,571 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Abstraction layer for memory interfaces. + * + * This module contains the interfaces: + * - MEM <-> USB; + * - MEM <-> RAM; + * - MEM <-> MEM. + * + * This module may be configured and expanded to support the following features: + * - write-protected globals; + * - password-protected data; + * - specific features; + * - etc. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +//_____ I N C L U D E S ____________________________________________________ + +#include "compiler.h" +#include "preprocessor.h" +#ifdef FREERTOS_USED +#include "FreeRTOS.h" +#include "semphr.h" +#endif +#include "ctrl_access.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +#ifdef FREERTOS_USED + +/*! \name LUN Access Protection Macros + */ +//! @{ + +/*! \brief Locks accesses to LUNs. + * + * \return \c TRUE if the access was successfully locked, else \c FALSE. + */ +#define Ctrl_access_lock() ctrl_access_lock() + +/*! \brief Unlocks accesses to LUNs. + */ +#define Ctrl_access_unlock() xSemaphoreGive(ctrl_access_semphr) + +//! @} + +//! Handle to the semaphore protecting accesses to LUNs. +static xSemaphoreHandle ctrl_access_semphr = NULL; + +#else + +/*! \name LUN Access Protection Macros + */ +//! @{ + +/*! \brief Locks accesses to LUNs. + * + * \return \c TRUE if the access was successfully locked, else \c FALSE. + */ +#define Ctrl_access_lock() TRUE + +/*! \brief Unlocks accesses to LUNs. + */ +#define Ctrl_access_unlock() + +//! @} + +#endif // FREERTOS_USED + + +#if MAX_LUN + +/*! \brief Initializes an entry of the LUN descriptor table. + * + * \param lun Logical Unit Number. + * + * \return LUN descriptor table entry initializer. + */ +#if ACCESS_USB == ENABLED && ACCESS_MEM_TO_RAM == ENABLED +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(Lun_, lun, _usb_read_10),\ + TPASTE3(Lun_, lun, _usb_write_10),\ + TPASTE3(Lun_, lun, _mem_2_ram),\ + TPASTE3(Lun_, lun, _ram_2_mem),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#elif ACCESS_USB == ENABLED +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(Lun_, lun, _usb_read_10),\ + TPASTE3(Lun_, lun, _usb_write_10),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#elif ACCESS_MEM_TO_RAM == ENABLED +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(Lun_, lun, _mem_2_ram),\ + TPASTE3(Lun_, lun, _ram_2_mem),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#else +#define Lun_desc_entry(lun) \ + {\ + TPASTE3(Lun_, lun, _test_unit_ready),\ + TPASTE3(Lun_, lun, _read_capacity),\ + TPASTE3(Lun_, lun, _wr_protect),\ + TPASTE3(Lun_, lun, _removal),\ + TPASTE3(LUN_, lun, _NAME)\ + } +#endif + +//! LUN descriptor table. +static const struct +{ + Ctrl_status (*test_unit_ready)(void); + Ctrl_status (*read_capacity)(U32 *); + Bool (*wr_protect)(void); + Bool (*removal)(void); +#if ACCESS_USB == ENABLED + Ctrl_status (*usb_read_10)(U32, U16); + Ctrl_status (*usb_write_10)(U32, U16); +#endif +#if ACCESS_MEM_TO_RAM == ENABLED + Ctrl_status (*mem_2_ram)(U32, void *); + Ctrl_status (*ram_2_mem)(U32, const void *); +#endif + const char *name; +} lun_desc[MAX_LUN] = +{ +#if LUN_0 == ENABLE + Lun_desc_entry(0), +#endif +#if LUN_1 == ENABLE + Lun_desc_entry(1), +#endif +#if LUN_2 == ENABLE + Lun_desc_entry(2), +#endif +#if LUN_3 == ENABLE + Lun_desc_entry(3), +#endif +#if LUN_4 == ENABLE + Lun_desc_entry(4), +#endif +#if LUN_5 == ENABLE + Lun_desc_entry(5), +#endif +#if LUN_6 == ENABLE + Lun_desc_entry(6), +#endif +#if LUN_7 == ENABLE + Lun_desc_entry(7) +#endif +}; + +#endif + + +#if GLOBAL_WR_PROTECT == ENABLED +Bool g_wr_protect; +#endif + + +/*! \name Control Interface + */ +//! @{ + + +#ifdef FREERTOS_USED + +Bool ctrl_access_init(void) +{ + // If the handle to the protecting semaphore is not valid, + if (!ctrl_access_semphr) + { + // try to create the semaphore. + vSemaphoreCreateBinary(ctrl_access_semphr); + + // If the semaphore could not be created, there is no backup solution. + if (!ctrl_access_semphr) return FALSE; + } + + return TRUE; +} + + +/*! \brief Locks accesses to LUNs. + * + * \return \c TRUE if the access was successfully locked, else \c FALSE. + */ +static Bool ctrl_access_lock(void) +{ + // If the semaphore could not be created, there is no backup solution. + if (!ctrl_access_semphr) return FALSE; + + // Wait for the semaphore. + while (!xSemaphoreTake(ctrl_access_semphr, portMAX_DELAY)); + + return TRUE; +} + +#endif // FREERTOS_USED + + +U8 get_nb_lun(void) +{ +#if MEM_USB == ENABLE + U8 nb_lun; + + if (!Ctrl_access_lock()) return MAX_LUN; + + nb_lun = MAX_LUN + host_get_lun(); + + Ctrl_access_unlock(); + + return nb_lun; +#else + return MAX_LUN; +#endif +} + + +U8 get_cur_lun(void) +{ + return LUN_ID_0; +} + + +Ctrl_status mem_test_unit_ready(U8 lun) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].test_unit_ready() : +#endif +#if LUN_USB == ENABLE + Lun_usb_test_unit_ready(lun - LUN_ID_USB); +#else + CTRL_FAIL; +#endif + + Ctrl_access_unlock(); + + return status; +} + + +Ctrl_status mem_read_capacity(U8 lun, U32 *u32_nb_sector) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].read_capacity(u32_nb_sector) : +#endif +#if LUN_USB == ENABLE + Lun_usb_read_capacity(lun - LUN_ID_USB, u32_nb_sector); +#else + CTRL_FAIL; +#endif + + Ctrl_access_unlock(); + + return status; +} + + +U8 mem_sector_size(U8 lun) +{ + U8 sector_size; + + if (!Ctrl_access_lock()) return 0; + + sector_size = +#if MAX_LUN + (lun < MAX_LUN) ? 1 : +#endif +#if LUN_USB == ENABLE + Lun_usb_read_sector_size(lun - LUN_ID_USB); +#else + 0; +#endif + + Ctrl_access_unlock(); + + return sector_size; +} + + +Bool mem_wr_protect(U8 lun) +{ + Bool wr_protect; + + if (!Ctrl_access_lock()) return TRUE; + + wr_protect = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].wr_protect() : +#endif +#if LUN_USB == ENABLE + Lun_usb_wr_protect(lun - LUN_ID_USB); +#else + TRUE; +#endif + + Ctrl_access_unlock(); + + return wr_protect; +} + + +Bool mem_removal(U8 lun) +{ + Bool removal; + + if (!Ctrl_access_lock()) return TRUE; + + removal = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].removal() : +#endif +#if LUN_USB == ENABLE + Lun_usb_removal(); +#else + TRUE; +#endif + + Ctrl_access_unlock(); + + return removal; +} + + +const char *mem_name(U8 lun) +{ + return +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].name : +#endif +#if LUN_USB == ENABLE + LUN_USB_NAME; +#else + NULL; +#endif +} + + +//! @} + + +#if ACCESS_USB == ENABLED + +/*! \name MEM <-> USB Interface + */ +//! @{ + + +Ctrl_status memory_2_usb(U8 lun, U32 addr, U16 nb_sector) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_read_action(nb_sector); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].usb_read_10(addr, nb_sector) : +#endif + CTRL_FAIL; + memory_stop_read_action(); + + Ctrl_access_unlock(); + + return status; +} + + +Ctrl_status usb_2_memory(U8 lun, U32 addr, U16 nb_sector) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_write_action(nb_sector); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].usb_write_10(addr, nb_sector) : +#endif + CTRL_FAIL; + memory_stop_write_action(); + + Ctrl_access_unlock(); + + return status; +} + + +//! @} + +#endif // ACCESS_USB == ENABLED + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + + +Ctrl_status memory_2_ram(U8 lun, U32 addr, void *ram) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_read_action(1); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].mem_2_ram(addr, ram) : +#endif +#if LUN_USB == ENABLE + Lun_usb_mem_2_ram(addr, ram); +#else + CTRL_FAIL; +#endif + memory_stop_read_action(); + + Ctrl_access_unlock(); + + return status; +} + + +Ctrl_status ram_2_memory(U8 lun, U32 addr, const void *ram) +{ + Ctrl_status status; + + if (!Ctrl_access_lock()) return CTRL_FAIL; + + memory_start_write_action(1); + status = +#if MAX_LUN + (lun < MAX_LUN) ? lun_desc[lun].ram_2_mem(addr, ram) : +#endif +#if LUN_USB == ENABLE + Lun_usb_ram_2_mem(addr, ram); +#else + CTRL_FAIL; +#endif + memory_stop_write_action(); + + Ctrl_access_unlock(); + + return status; +} + + +//! @} + +#endif // ACCESS_MEM_TO_RAM == ENABLED + + +#if ACCESS_STREAM == ENABLED + +/*! \name Streaming MEM <-> MEM Interface + */ +//! @{ + + + #if ACCESS_MEM_TO_MEM == ENABLED + +#include "fat.h" + +Ctrl_status stream_mem_to_mem(U8 src_lun, U32 src_addr, U8 dest_lun, U32 dest_addr, U16 nb_sector) +{ +#if (defined __GNUC__) && (defined __AVR32__) + __attribute__((__aligned__(4))) +#elif (defined __ICCAVR32__) + #pragma data_alignment = 4 +#endif + static U8 sector_buf[FS_512B]; + Ctrl_status status = CTRL_GOOD; + + while (nb_sector--) + { + if ((status = memory_2_ram(src_lun, src_addr++, sector_buf)) != CTRL_GOOD) break; + if ((status = ram_2_memory(dest_lun, dest_addr++, sector_buf)) != CTRL_GOOD) break; + } + + return status; +} + + #endif // ACCESS_MEM_TO_MEM == ENABLED + + +Ctrl_status stream_state(U8 id) +{ + return CTRL_GOOD; +} + + +U16 stream_stop(U8 id) +{ + return 0; +} + + +//! @} + +#endif // ACCESS_STREAM == ENABLED diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h new file mode 100644 index 000000000..358bf6589 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS/ctrl_access.h @@ -0,0 +1,369 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Abstraction layer for memory interfaces. + * + * This module contains the interfaces: + * - MEM <-> USB; + * - MEM <-> RAM; + * - MEM <-> MEM. + * + * This module may be configured and expanded to support the following features: + * - write-protected globals; + * - password-protected data; + * - specific features; + * - etc. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CTRL_ACCESS_H_ +#define _CTRL_ACCESS_H_ + +#include "compiler.h" +#include "conf_access.h" + + +//! Status returned by CTRL_ACCESS interfaces. +typedef enum +{ + CTRL_GOOD = PASS, //!< Success, memory ready. + CTRL_FAIL = FAIL, //!< An error occurred. + CTRL_NO_PRESENT = FAIL + 1, //!< Memory unplugged. + CTRL_BUSY = FAIL + 2 //!< Memory not initialized or changed. +} Ctrl_status; + + +// FYI: Each Logical Unit Number (LUN) corresponds to a memory. + +// Check LUN defines. +#ifndef LUN_0 + #error LUN_0 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_1 + #error LUN_1 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_2 + #error LUN_2 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_3 + #error LUN_3 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_4 + #error LUN_4 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_5 + #error LUN_5 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_6 + #error LUN_6 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_7 + #error LUN_7 must be defined as ENABLE or DISABLE in conf_access.h +#endif +#ifndef LUN_USB + #error LUN_USB must be defined as ENABLE or DISABLE in conf_access.h +#endif + +/*! \name LUN IDs + */ +//! @{ +#define LUN_ID_0 (0) //!< First static LUN. +#define LUN_ID_1 (LUN_ID_0 + LUN_0) +#define LUN_ID_2 (LUN_ID_1 + LUN_1) +#define LUN_ID_3 (LUN_ID_2 + LUN_2) +#define LUN_ID_4 (LUN_ID_3 + LUN_3) +#define LUN_ID_5 (LUN_ID_4 + LUN_4) +#define LUN_ID_6 (LUN_ID_5 + LUN_5) +#define LUN_ID_7 (LUN_ID_6 + LUN_6) +#define MAX_LUN (LUN_ID_7 + LUN_7) //!< Number of static LUNs. +#define LUN_ID_USB (MAX_LUN) //!< First dynamic LUN (USB host mass storage). +//! @} + + +// Include LUN header files. +#if LUN_0 == ENABLE + #include LUN_0_INCLUDE +#endif +#if LUN_1 == ENABLE + #include LUN_1_INCLUDE +#endif +#if LUN_2 == ENABLE + #include LUN_2_INCLUDE +#endif +#if LUN_3 == ENABLE + #include LUN_3_INCLUDE +#endif +#if LUN_4 == ENABLE + #include LUN_4_INCLUDE +#endif +#if LUN_5 == ENABLE + #include LUN_5_INCLUDE +#endif +#if LUN_6 == ENABLE + #include LUN_6_INCLUDE +#endif +#if LUN_7 == ENABLE + #include LUN_7_INCLUDE +#endif +#if LUN_USB == ENABLE + #include LUN_USB_INCLUDE +#endif + + +// Check the configuration of write protection in conf_access.h. +#ifndef GLOBAL_WR_PROTECT + #error GLOBAL_WR_PROTECT must be defined as ENABLED or DISABLED in conf_access.h +#endif + + +#if GLOBAL_WR_PROTECT == ENABLED + +//! Write protect. +extern Bool g_wr_protect; + +#endif + + +/*! \name Control Interface + */ +//! @{ + +#ifdef FREERTOS_USED + +/*! \brief Initializes the LUN access locker. + * + * \return \c TRUE if the locker was successfully initialized, else \c FALSE. + */ +extern Bool ctrl_access_init(void); + +#endif // FREERTOS_USED + +/*! \brief Returns the number of LUNs. + * + * \return Number of LUNs in the system. + */ +extern U8 get_nb_lun(void); + +/*! \brief Returns the current LUN. + * + * \return Current LUN. + * + * \todo Implement. + */ +extern U8 get_cur_lun(void); + +/*! \brief Tests the memory state and initializes the memory if required. + * + * The TEST UNIT READY SCSI primary command allows an application client to poll + * a LUN until it is ready without having to allocate memory for returned data. + * + * This command may be used to check the media status of LUNs with removable + * media. + * + * \param lun Logical Unit Number. + * + * \return Status. + */ +extern Ctrl_status mem_test_unit_ready(U8 lun); + +/*! \brief Returns the address of the last valid sector (512 bytes) in the + * memory. + * + * \param lun Logical Unit Number. + * \param u32_nb_sector Pointer to the address of the last valid sector. + * + * \return Status. + */ +extern Ctrl_status mem_read_capacity(U8 lun, U32 *u32_nb_sector); + +/*! \brief Returns the size of the physical sector. + * + * \param lun Logical Unit Number. + * + * \return Sector size (unit: 512 bytes). + */ +extern U8 mem_sector_size(U8 lun); + +/*! \brief Returns the write-protection state of the memory. + * + * \param lun Logical Unit Number. + * + * \return \c TRUE if the memory is write-protected, else \c FALSE. + * + * \note Only used by removable memories with hardware-specific write + * protection. + */ +extern Bool mem_wr_protect(U8 lun); + +/*! \brief Tells whether the memory is removable. + * + * \param lun Logical Unit Number. + * + * \return \c TRUE if the memory is removable, else \c FALSE. + */ +extern Bool mem_removal(U8 lun); + +/*! \brief Returns a pointer to the LUN name. + * + * \param lun Logical Unit Number. + * + * \return Pointer to the LUN name string. + */ +extern const char *mem_name(U8 lun); + +//! @} + + +#if ACCESS_USB == ENABLED + +/*! \name MEM <-> USB Interface + */ +//! @{ + +/*! \brief Tranfers data from the memory to USB. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to read. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status memory_2_usb(U8 lun, U32 addr, U16 nb_sector); + +/*! \brief Tranfers data from USB to the memory. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to write. + * \param nb_sector Number of sectors to transfer. + * + * \return Status. + */ +extern Ctrl_status usb_2_memory(U8 lun, U32 addr, U16 nb_sector); + +//! @} + +#endif // ACCESS_USB == ENABLED + + +#if ACCESS_MEM_TO_RAM == ENABLED + +/*! \name MEM <-> RAM Interface + */ +//! @{ + +/*! \brief Copies 1 data sector from the memory to RAM. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to read. + * \param ram Pointer to RAM buffer to write. + * + * \return Status. + */ +extern Ctrl_status memory_2_ram(U8 lun, U32 addr, void *ram); + +/*! \brief Copies 1 data sector from RAM to the memory. + * + * \param lun Logical Unit Number. + * \param addr Address of first memory sector to write. + * \param ram Pointer to RAM buffer to read. + * + * \return Status. + */ +extern Ctrl_status ram_2_memory(U8 lun, U32 addr, const void *ram); + +//! @} + +#endif // ACCESS_MEM_TO_RAM == ENABLED + + +#if ACCESS_STREAM == ENABLED + +/*! \name Streaming MEM <-> MEM Interface + */ +//! @{ + +//! Erroneous streaming data transfer ID. +#define ID_STREAM_ERR 0xFF + + #if ACCESS_MEM_TO_MEM == ENABLED + +/*! \brief Copies data from one memory to another. + * + * \param src_lun Source Logical Unit Number. + * \param src_addr Source address of first memory sector to read. + * \param dest_lun Destination Logical Unit Number. + * \param dest_addr Destination address of first memory sector to write. + * \param nb_sector Number of sectors to copy. + * + * \return Status. + */ +extern Ctrl_status stream_mem_to_mem(U8 src_lun, U32 src_addr, U8 dest_lun, U32 dest_addr, U16 nb_sector); + + #endif // ACCESS_MEM_TO_MEM == ENABLED + +/*! \brief Returns the state of a streaming data transfer. + * + * \param id Transfer ID. + * + * \return Status. + * + * \todo Implement. + */ +extern Ctrl_status stream_state(U8 id); + +/*! \brief Stops a streaming data transfer. + * + * \param id Transfer ID. + * + * \return Number of remaining sectors. + * + * \todo Implement. + */ +extern U16 stream_stop(U8 id); + +//! @} + +#endif // ACCESS_STREAM == ENABLED + + +#endif // _CTRL_ACCESS_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c new file mode 100644 index 000000000..c7c0a03e5 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.c @@ -0,0 +1,119 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Macros and functions dedicated to debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "debug.h" + + +#if (defined __GNUC__) +# include "malloc.h" + +U32 get_heap_curr_used_size( void ) +{ + struct mallinfo my_info=mallinfo(); + return my_info.uordblks; +} + +U32 get_heap_total_used_size( void ) +{ + struct mallinfo my_info=mallinfo(); + return my_info.arena; +} +#endif + +U32 get_heap_free_size( void ) +{ + U32 high_mark= AVR32_SRAM_SIZE; + U32 low_mark = 0; + U32 size ; + void* p_mem; + + size = (high_mark + low_mark)/2; + + do + { + p_mem = malloc(size); + if( p_mem != NULL) + { // Can allocate memory + free(p_mem); + low_mark = size; + } + else + { // Can not allocate memory + high_mark = size; + } + + size = (high_mark + low_mark)/2; + } + while( (high_mark-low_mark) >1 ); + + return size; +} + +static void* round_trace_pbuf; +static U32 round_trace_size; + +void uc3_round_trace_init(void* buf, U32 size) +{ + round_trace_pbuf = buf; + (*(U32*)round_trace_pbuf)=(U32)buf+4; + round_trace_size = size; +} + +void uc3_round_trace(U32 val) +{ + //Disable_global_interrupt(); + + U32* p_wr = (U32*)(*(U32*)round_trace_pbuf); + *p_wr = val; + p_wr++; + if( ((U32)p_wr % round_trace_size) ==0 ) + p_wr= (U32*)round_trace_pbuf+1; + *p_wr = 0xdeadbeef; + *(U32*)round_trace_pbuf = (U32)p_wr; + + //Enable_global_interrupt(); +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h new file mode 100644 index 000000000..a832d7c9c --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/debug.h @@ -0,0 +1,116 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Macros and functions dedicated to debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _DEBUG_H_ +#define _DEBUG_H_ + +#include "stringz.h" + +/*! \brief These macros are used to add traces memory. + * + * First, initialise the trace with Uc3_trace_init(pointer), giving the start address + * of the memory location where will be stored the trace. + * Use Uc3_trace(something) to store "something" into the memory. The end of the trace + * is signaled by the "0xdeadbeef" pattern. + */ +#define Uc3_trace_init(debug_addr) \ + *(U32*)(debug_addr)=debug_addr+4 + +#define Uc3_trace(debug_addr, x) \ + *(U32*)(*(U32*)(debug_addr) ) = (U32)(x) ;\ + *(U32*)(*(U32*)(debug_addr)+4) = 0xdeadbeef ;\ + *(U32*)(debug_addr ) = *(U32*)(debug_addr)+4 + +/*! \brief This macro is used to insert labels into assembly output. + * + */ +#define Insert_label(name) \ + __asm__ __volatile__ (STRINGZ(name)":"); + +#if (defined __GNUC__) +/*! \brief Returns the number of total of used bytes allocated from the HEAP. + * + * \retval total number of used bytes. + */ +U32 get_heap_total_used_size( void ); + +/*! \brief Returns the number of bytes currently used from the HEAP. + * + * \retval total number of used bytes. + */ +U32 get_heap_curr_used_size( void ); +#endif + +/*! \brief Returns the number of free bytes in the HEAP. + * + * This funtion tries to allocate the maximum number of bytes by dichotomical method. + * + * \retval number of free bytes. + */ +extern U32 get_heap_free_size( void ); + +/*! \name Traces function using a round buffer + */ +//! @{ + +/*! \brief Initialize the trace using a round buffer. + * + * \param buf Base address of the buffer used for the trace. + * \param size Size of the round buffer. Must be a power of 2. + */ +void uc3_round_trace_init(void* buf, U32 size); + +/*! \brief Trace a data in the round buffer. + * + * The end of the trace is signaled by the "0xdeadbeef" pattern. + * \param val Data to trace; + */ +void uc3_round_trace(U32 val); + +//! @} + + +#endif // _DEBUG_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c new file mode 100644 index 000000000..99e927466 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.c @@ -0,0 +1,215 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Strings and integers print module for debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include "compiler.h" +#include "gpio.h" +#include "usart.h" +#include "print_funcs.h" + + +//! ASCII representation of hexadecimal digits. +static const char HEX_DIGITS[16] = "0123456789ABCDEF"; + + +void init_dbg_rs232(long pba_hz) +{ + init_dbg_rs232_ex(DBG_USART_BAUDRATE, pba_hz); +} + + +void init_dbg_rs232_ex(unsigned long baudrate, long pba_hz) +{ + static const gpio_map_t DBG_USART_GPIO_MAP = + { + {DBG_USART_RX_PIN, DBG_USART_RX_FUNCTION}, + {DBG_USART_TX_PIN, DBG_USART_TX_FUNCTION} + }; + + // Options for debug USART. + usart_options_t dbg_usart_options = + { + .baudrate = baudrate, + .charlength = 8, + .paritytype = USART_NO_PARITY, + .stopbits = USART_1_STOPBIT, + .channelmode = USART_NORMAL_CHMODE + }; + + // Setup GPIO for debug USART. + gpio_enable_module(DBG_USART_GPIO_MAP, + sizeof(DBG_USART_GPIO_MAP) / sizeof(DBG_USART_GPIO_MAP[0])); + + // Initialize it in RS232 mode. + usart_init_rs232(DBG_USART, &dbg_usart_options, pba_hz); +} + + +void print_dbg(const char *str) +{ + // Redirection to the debug USART. + print(DBG_USART, str); +} + + +void print_dbg_char(int c) +{ + // Redirection to the debug USART. + print_char(DBG_USART, c); +} + + +void print_dbg_ulong(unsigned long n) +{ + // Redirection to the debug USART. + print_ulong(DBG_USART, n); +} + + +void print_dbg_char_hex(unsigned char n) +{ + // Redirection to the debug USART. + print_char_hex(DBG_USART, n); +} + + +void print_dbg_short_hex(unsigned short n) +{ + // Redirection to the debug USART. + print_short_hex(DBG_USART, n); +} + + +void print_dbg_hex(unsigned long n) +{ + // Redirection to the debug USART. + print_hex(DBG_USART, n); +} + + +void print(volatile avr32_usart_t *usart, const char *str) +{ + // Invoke the USART driver to transmit the input string with the given USART. + usart_write_line(usart, str); +} + + +void print_char(volatile avr32_usart_t *usart, int c) +{ + // Invoke the USART driver to transmit the input character with the given USART. + usart_putchar(usart, c); +} + + +void print_ulong(volatile avr32_usart_t *usart, unsigned long n) +{ + char tmp[11]; + int i = sizeof(tmp) - 1; + + // Convert the given number to an ASCII decimal representation. + tmp[i] = '\0'; + do + { + tmp[--i] = '0' + n % 10; + n /= 10; + } while (n); + + // Transmit the resulting string with the given USART. + print(usart, tmp + i); +} + + +void print_char_hex(volatile avr32_usart_t *usart, unsigned char n) +{ + char tmp[3]; + int i; + + // Convert the given number to an ASCII hexadecimal representation. + tmp[2] = '\0'; + for (i = 1; i >= 0; i--) + { + tmp[i] = HEX_DIGITS[n & 0xF]; + n >>= 4; + } + + // Transmit the resulting string with the given USART. + print(usart, tmp); +} + + +void print_short_hex(volatile avr32_usart_t *usart, unsigned short n) +{ + char tmp[5]; + int i; + + // Convert the given number to an ASCII hexadecimal representation. + tmp[4] = '\0'; + for (i = 3; i >= 0; i--) + { + tmp[i] = HEX_DIGITS[n & 0xF]; + n >>= 4; + } + + // Transmit the resulting string with the given USART. + print(usart, tmp); +} + + +void print_hex(volatile avr32_usart_t *usart, unsigned long n) +{ + char tmp[9]; + int i; + + // Convert the given number to an ASCII hexadecimal representation. + tmp[8] = '\0'; + for (i = 7; i >= 0; i--) + { + tmp[i] = HEX_DIGITS[n & 0xF]; + n >>= 4; + } + + // Transmit the resulting string with the given USART. + print(usart, tmp); +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h new file mode 100644 index 000000000..38f931dc2 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/DEBUG/print_funcs.h @@ -0,0 +1,294 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Strings and integers print module for debug purposes. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USART module can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PRINT_FUNCS_H_ +#define _PRINT_FUNCS_H_ + +#include <avr32/io.h> +#include "board.h" + + +/*! \name USART Settings for the Debug Module + */ +//! @{ +#if BOARD == EVK1100 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == EVK1101 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == UC3C_EK +# define DBG_USART (&AVR32_USART2) +# define DBG_USART_RX_PIN AVR32_USART2_RXD_0_1_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART2_RXD_0_1_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART2_TXD_0_1_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART2_TXD_0_1_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == EVK1104 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == EVK1105 +# define DBG_USART (&AVR32_USART0) +# define DBG_USART_RX_PIN AVR32_USART0_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART0_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART0_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART0_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +#elif BOARD == STK1000 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_FUNCTION +# define DBG_USART_BAUDRATE 115200 +#elif BOARD == NGW100 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_FUNCTION +# define DBG_USART_BAUDRATE 115200 +#elif BOARD == STK600_RCUC3L0 +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_1_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_1_FUNCTION +// For the RX pin, connect STK600.PORTE.PE3 to STK600.RS232 SPARE.RXD +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_1_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_1_FUNCTION +// For the TX pin, connect STK600.PORTE.PE2 to STK600.RS232 SPARE.TXD +# define DBG_USART_BAUDRATE 57600 +# define DBG_USART_CLOCK_MASK AVR32_USART1_CLK_PBA +#elif BOARD == UC3L_EK +# define DBG_USART (&AVR32_USART3) +# define DBG_USART_RX_PIN AVR32_USART3_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART3_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART3_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART3_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +# define DBG_USART_CLOCK_MASK AVR32_USART3_CLK_PBA +#elif BOARD == ARDUINO +# define DBG_USART (&AVR32_USART1) +# define DBG_USART_RX_PIN AVR32_USART1_RXD_0_0_PIN +# define DBG_USART_RX_FUNCTION AVR32_USART1_RXD_0_0_FUNCTION +# define DBG_USART_TX_PIN AVR32_USART1_TXD_0_0_PIN +# define DBG_USART_TX_FUNCTION AVR32_USART1_TXD_0_0_FUNCTION +# define DBG_USART_BAUDRATE 57600 +# define DBG_USART_CLOCK_MASK AVR32_USART1_CLK_PBA +#endif + +#if !defined(DBG_USART) || \ + !defined(DBG_USART_RX_PIN) || \ + !defined(DBG_USART_RX_FUNCTION) || \ + !defined(DBG_USART_TX_PIN) || \ + !defined(DBG_USART_TX_FUNCTION) || \ + !defined(DBG_USART_BAUDRATE) +# error The USART configuration to use for debug on your board is missing +#endif +//! @} + +/*! \name VT100 Common Commands + */ +//! @{ +#define CLEARSCR "\x1B[2J\x1B[;H" //!< Clear screen. +#define CLEAREOL "\x1B[K" //!< Clear end of line. +#define CLEAREOS "\x1B[J" //!< Clear end of screen. +#define CLEARLCR "\x1B[0K" //!< Clear line cursor right. +#define CLEARLCL "\x1B[1K" //!< Clear line cursor left. +#define CLEARELN "\x1B[2K" //!< Clear entire line. +#define CLEARCDW "\x1B[0J" //!< Clear cursor down. +#define CLEARCUP "\x1B[1J" //!< Clear cursor up. +#define GOTOYX "\x1B[%.2d;%.2dH" //!< Set cursor to (y, x). +#define INSERTMOD "\x1B[4h" //!< Insert mode. +#define OVERWRITEMOD "\x1B[4l" //!< Overwrite mode. +#define DELAFCURSOR "\x1B[K" //!< Erase from cursor to end of line. +#define CRLF "\r\n" //!< Carriage Return + Line Feed. +//! @} + +/*! \name VT100 Cursor Commands + */ +//! @{ +#define CURSON "\x1B[?25h" //!< Show cursor. +#define CURSOFF "\x1B[?25l" //!< Hide cursor. +//! @} + +/*! \name VT100 Character Commands + */ +//! @{ +#define NORMAL "\x1B[0m" //!< Normal. +#define BOLD "\x1B[1m" //!< Bold. +#define UNDERLINE "\x1B[4m" //!< Underline. +#define BLINKING "\x1B[5m" //!< Blink. +#define INVVIDEO "\x1B[7m" //!< Inverse video. +//! @} + +/*! \name VT100 Color Commands + */ +//! @{ +#define CL_BLACK "\033[22;30m" //!< Black. +#define CL_RED "\033[22;31m" //!< Red. +#define CL_GREEN "\033[22;32m" //!< Green. +#define CL_BROWN "\033[22;33m" //!< Brown. +#define CL_BLUE "\033[22;34m" //!< Blue. +#define CL_MAGENTA "\033[22;35m" //!< Magenta. +#define CL_CYAN "\033[22;36m" //!< Cyan. +#define CL_GRAY "\033[22;37m" //!< Gray. +#define CL_DARKGRAY "\033[01;30m" //!< Dark gray. +#define CL_LIGHTRED "\033[01;31m" //!< Light red. +#define CL_LIGHTGREEN "\033[01;32m" //!< Light green. +#define CL_YELLOW "\033[01;33m" //!< Yellow. +#define CL_LIGHTBLUE "\033[01;34m" //!< Light blue. +#define CL_LIGHTMAGENTA "\033[01;35m" //!< Light magenta. +#define CL_LIGHTCYAN "\033[01;36m" //!< Light cyan. +#define CL_WHITE "\033[01;37m" //!< White. +//! @} + + +/*! \brief Sets up DBG_USART with 8N1 at DBG_USART_BAUDRATE. + * + * \param pba_hz PBA clock frequency (Hz). + */ +extern void init_dbg_rs232(long pba_hz); + +/*! \brief Sets up DBG_USART with 8N1 at a given baud rate. + * + * \param baudrate Baud rate to set DBG_USART to. + * \param pba_hz PBA clock frequency (Hz). + */ +extern void init_dbg_rs232_ex(unsigned long baudrate, long pba_hz); + +/*! \brief Prints a string of characters to DBG_USART. + * + * \param str The string of characters to print. + */ +extern void print_dbg(const char *str); + +/*! \brief Prints a character to DBG_USART. + * + * \param c The character to print. + */ +extern void print_dbg_char(int c); + +/*! \brief Prints an integer to DBG_USART in a decimal representation. + * + * \param n The integer to print. + */ +extern void print_dbg_ulong(unsigned long n); + +/*! \brief Prints a char to DBG_USART in an hexadecimal representation. + * + * \param n The char to print. + */ +extern void print_dbg_char_hex(unsigned char n); + +/*! \brief Prints a short integer to DBG_USART in an hexadecimal representation. + * + * \param n The short integer to print. + */ +extern void print_dbg_short_hex(unsigned short n); + +/*! \brief Prints an integer to DBG_USART in an hexadecimal representation. + * + * \param n The integer to print. + */ +extern void print_dbg_hex(unsigned long n); + +/*! \brief Prints a string of characters to a given USART. + * + * \param usart Base address of the USART instance to print to. + * \param str The string of characters to print. + */ +extern void print(volatile avr32_usart_t *usart, const char *str); + +/*! \brief Prints a character to a given USART. + * + * \param usart Base address of the USART instance to print to. + * \param c The character to print. + */ +extern void print_char(volatile avr32_usart_t *usart, int c); + +/*! \brief Prints an integer to a given USART in a decimal representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The integer to print. + */ +extern void print_ulong(volatile avr32_usart_t *usart, unsigned long n); + +/*! \brief Prints a char to a given USART in an hexadecimal representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The char to print. + */ +extern void print_char_hex(volatile avr32_usart_t *usart, unsigned char n); + +/*! \brief Prints a short integer to a given USART in an hexadecimal + * representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The short integer to print. + */ +extern void print_short_hex(volatile avr32_usart_t *usart, unsigned short n); + +/*! \brief Prints an integer to a given USART in an hexadecimal representation. + * + * \param usart Base address of the USART instance to print to. + * \param n The integer to print. + */ +extern void print_hex(volatile avr32_usart_t *usart, unsigned long n); + + +#endif // _PRINT_FUNCS_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h new file mode 100644 index 000000000..e3ebea7a1 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_cpu.h @@ -0,0 +1,63 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS CPU include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_CPU_H__ +#define __AVR32_NEWLIB_ADDONS_CPU_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +#define CPU_HZ get_cpu_hz() + +void udelay(unsigned long usec); +void set_cpu_hz(unsigned int clk_hz); +unsigned int get_cpu_hz(); + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h new file mode 100644 index 000000000..31caf1304 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_exceptions.h @@ -0,0 +1,120 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS exceptions include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_EXCEPTIONS_H__ +#define __AVR32_NEWLIB_ADDONS_EXCEPTIONS_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +/* + Exception vector offsets +*/ +#define EVBA_UNRECOVERABLE 0x000 +#define EVBA_TLB_MULTIPLE 0x004 +#define EVBA_BUS_ERROR_DATA 0x008 +#define EVBA_BUS_ERROR_INSTR 0x00C +#define EVBA_NMI 0x010 +#define EVBA_INSTR_ADDR 0x014 +#define EVBA_ITLB_MISS 0x050 +#define EVBA_ITLB_PROT 0x018 +#define EVBA_BREAKPOINT 0x01C +#define EVBA_ILLEGAL_OPCODE 0x020 +#define EVBA_UNIMPLEMENTED 0x024 +#define EVBA_PRIVILEGE_VIOL 0x028 +#define EVBA_FLOATING_POINT 0x02C +#define EVBA_COP_ABSENT 0x030 +#define EVBA_SCALL 0x100 +#define EVBA_DATA_ADDR_R 0x034 +#define EVBA_DATA_ADDR_W 0x038 +#define EVBA_DTLB_MISS_R 0x060 +#define EVBA_DTLB_MISS_W 0x070 +#define EVBA_DTLB_PROT_R 0x03C +#define EVBA_DTLB_PROT_W 0x040 +#define EVBA_DTLB_MODIFIED 0x044 + + +/* + Define the form of the function used when registering exceptions. + The function should return the address which the exception should + return to after the exception processing. +*/ + +typedef unsigned int (*__exception_handler)(int /*evba_offset*/, int /*return address*/); + +/* + Define the form of the function used when registering a scall handler. +*/ + +typedef void (*__scall_handler)(int /*code*/, int /*p1*/, int /*p2*/ + , int /*p3*/, int /*p4*/); + +/* + Function for registering an exception handler for the exception with + offset given by evba_offset. +*/ +void _register_exception_handler(__exception_handler handler, int evba_offset); + +/* + Function for registering a scall handler which can be a arbirary + function which uses r8-r12 for parameters. +*/ +void _register_scall_handler(__scall_handler handler); + +/* + Initialize exceptions. Must be called before registering exception handlers + and needed to enable exceptions. 'evba' is the pointer to the exception + vector. 'handler_table' is a pointer to an array where the pointers to + the exception handlers are stored. This array must be at least 0x104 bytes + and word aligned. +*/ +void init_exceptions(void *evba, void *handler_table); + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h new file mode 100644 index 000000000..76d81f737 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_interrupts.h @@ -0,0 +1,82 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS interrupts include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_INTERRUPTS_H__ +#define __AVR32_NEWLIB_ADDONS_INTERRUPTS_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +#define INT_GRPS 64 +#define INT_LINES 32 +#define INTPR_BASE (__intc_base__ + 0x0000) +#define INTREQ_BASE (__intc_base__ + 64*4) +#define INTCAUSE_BASE (__intc_base__ + 2*64*4) + +//Register offsets +#define INTLEVEL 30 +#define AUTOVECTOR 0 +#define AUTOVECTOR_BITS 14 + +//Priorities +#define INT0 0 +#define INT1 1 +#define INT2 2 +#define INT3 3 + + +typedef void (*__newlib_int_handler)(int /* int_grp*/, void */*user_handle*/); + +__newlib_int_handler register_interrupt(__newlib_int_handler handler, int int_grp, int line, int priority, + .../* void *user_handle*/); +void init_interrupts(); +void set_interrupts_base(void *base); + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h new file mode 100644 index 000000000..a725769fa --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_io.h @@ -0,0 +1,174 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS miscellaneous macros include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_IO_H__ +#define __AVR32_NEWLIB_ADDONS_IO_H__ + +#include <_ansi.h> + +_BEGIN_STD_C + +typedef char u8; +typedef unsigned int u32; + +#define __raw_writeb(v,a) (*(volatile unsigned char *)(a) = (v)) +#define __raw_writew(v,a) (*(volatile unsigned short *)(a) = (v)) +#define __raw_writel(v,a) (*(volatile unsigned int *)(a) = (v)) + +#define __raw_readb(a) (*(volatile unsigned char *)(a)) +#define __raw_readw(a) (*(volatile unsigned short *)(a)) +#define __raw_readl(a) (*(volatile unsigned int *)(a)) + +/* As long as I/O is only performed in P4 (or possibly P3), we're safe */ +#define writeb(v,a) __raw_writeb(v,a) +#define writew(v,a) __raw_writew(v,a) +#define writel(v,a) __raw_writel(v,a) + +#define readb(a) __raw_readb(a) +#define readw(a) __raw_readw(a) +#define readl(a) __raw_readl(a) + +/* Memory segments when segmentation is enabled */ +#define P0SEG 0x00000000 +#define P1SEG 0x80000000 +#define P2SEG 0xa0000000 +#define P3SEG 0xc0000000 +#define P4SEG 0xe0000000 + +/* Returns the privileged segment base of a given address */ +#define PXSEG(a) (((unsigned long)(a)) & 0xe0000000) + +/* Returns the physical address of a PnSEG (n=1,2) address */ +#define PHYSADDR(a) (((unsigned long)(a)) & 0x1fffffff) + +/* + * Map an address to a certain privileged segment + */ +#define P1SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P1SEG)) +#define P2SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P2SEG)) +#define P3SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P3SEG)) +#define P4SEGADDR(a) ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P4SEG)) + + +#define cached(addr) P1SEGADDR(addr) +#define uncached(addr) P2SEGADDR(addr) +#define physaddr(addr) PHYSADDR(addr) + +#define BF(field, value) \ + ({ union { \ + struct { \ + unsigned : 32 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long __val: field ## _SIZE ; \ + }; \ + unsigned long __ul; \ + } __tmp; \ + __tmp.__ul = 0; \ + __tmp.__val = value; \ + __tmp.__ul;}) + +#define BF_D(field, value) \ + ({ union { \ + struct { \ + unsigned long long : 64 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long long __val: field ## _SIZE ; \ + }; \ + unsigned long long __ul; \ + } __tmp; \ + __tmp.__ul = 0; \ + __tmp.__val = value; \ + __tmp.__ul;}) + +#define BFINS(var, field, value) \ + { union {\ + struct { \ + unsigned : 32 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long __val: field ## _SIZE ; \ + }; \ + unsigned long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val = value; \ + var = __tmp.__ul;} + +#define BFEXT(var, field) \ + ({ union {\ + struct { \ + unsigned : 32 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long __val: field ## _SIZE ; \ + }; \ + unsigned long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val; }) + +#define BFINS_D(var, field, value) \ + { union {\ + struct { \ + unsigned long long : 64 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long long __val: field ## _SIZE ; \ + }; \ + unsigned long long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val = value; \ + var = __tmp.__ul;} + +#define BFEXT_D(var, field) \ + ({ union {\ + struct { \ + unsigned long long : 64 - field ## _OFFSET - field ## _SIZE ; \ + unsigned long long __val: field ## _SIZE ; \ + }; \ + unsigned long long __ul; \ + } __tmp; \ + __tmp.__ul = var; \ + __tmp.__val; }) + + +_END_STD_C + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h new file mode 100644 index 000000000..6c4697d78 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE/nlao_usart.h @@ -0,0 +1,208 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief NEWLIB_ADDONS USART include file for AVR32. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef __AVR32_NEWLIB_ADDONS_USART_H__ +#define __AVR32_NEWLIB_ADDONS_USART_H__ + +#include <_ansi.h> + +#include "nlao_io.h" + +_BEGIN_STD_C + +struct usart3 { + volatile u32 us_cr; + volatile u32 us_mr; + volatile u32 us_ier; + volatile u32 us_idr; + volatile u32 us_imr; + volatile u32 us_csr; + volatile u32 us_rhr; + volatile u32 us_thr; + volatile u32 us_brgr; + volatile u32 us_rtor; + volatile u32 us_ttgr; + volatile u32 us_reserved[5]; + volatile u32 us_fidi; + volatile u32 us_ner; + volatile u32 us_xxr; + volatile u32 us_if; +}; + +/* Register offsets */ +#define US_CR 0x0000 +#define US_MR 0x0004 +#define US_IER 0x0008 +#define US_IDR 0x000c +#define US_IMR 0x0010 +#define US_CSR 0x0014 +#define US_RHR 0x0018 +#define US_THR 0x001c +#define US_BRGR 0x0020 +#define US_RTOR 0x0024 +#define US_TTGR 0x0028 + +#define US_FIDI 0x0040 +#define US_NER 0x0044 +#define US_XXR 0x0048 +#define US_IF 0x004c + +#define US_RPR 0x0100 +#define US_RCR 0x0104 +#define US_TPR 0x0108 +#define US_TCR 0x010c +#define US_RNPR 0x0110 +#define US_RNCR 0x0114 +#define US_TNPR 0x0118 +#define US_TNCR 0x011c +#define US_PTCR 0x0120 +#define US_PTSR 0x0124 + + + + +/* USART3 Control Register */ +#define US_CR_RSTRX (1 << 2) +#define US_CR_RSTTX (1 << 3) +#define US_CR_RXEN (1 << 4) +#define US_CR_RXDIS (1 << 5) +#define US_CR_TXEN (1 << 6) +#define US_CR_TXDIS (1 << 7) +#define US_CR_RSTSTA (1 << 8) +#define US_CR_STTBRK (1 << 9) +#define US_CR_STPBRK (1 << 10) + +#define US_CR_DTREN (1 << 16) +#define US_CR_DTRDIS (1 << 17) +#define US_CR_RTSEN (1 << 18) +#define US_CR_RTSDIS (1 << 19) + +/* USART3 Mode Register */ +#define US_MR_MODE (15 << 0) +#define US_MR_MODE_NORMAL ( 0 << 0) +#define US_MR_MODE_HWFLOW ( 2 << 0) +#define US_MR_CLKS ( 3 << 4) +#define US_MR_CLKS_CLOCK ( 0 << 4) +#define US_MR_CLKS_FDIV1 ( 1 << 4) +#define US_MR_CLKS_SLOW ( 2 << 4) +#define US_MR_CLKS_EXT ( 3 << 4) +#define US_MR_CHRL_5BITS ( 0 << 6) +#define US_MR_CHRL_6BITS ( 1 << 6) +#define US_MR_CHRL_7BITS ( 2 << 6) +#define US_MR_CHRL_8BITS ( 3 << 6) +#define US_MR_SYNC ( 1 << 8) +#define US_MR_PAR_EVEN ( 0 << 9) +#define US_MR_PAR_ODD ( 1 << 9) +#define US_MR_PAR_SPACE ( 2 << 9) +#define US_MR_PAR_MARK ( 3 << 9) +#define US_MR_PAR_NONE ( 4 << 9) +#define US_MR_PAR_MDROP ( 6 << 9) +#define US_MR_NBSTOP_1BIT ( 0 << 12) +#define US_MR_NBSTOP_1_5BIT ( 1 << 12) +#define US_MR_NBSTOP_2BITS ( 2 << 12) +#define US_MR_OVER ( 1 << 19) +#define US_MR_OVER_X16 ( 0 << 19) +#define US_MR_OVER_X8 ( 1 << 19) + +/* USART3 Channel Status Register */ +#define US_CSR_RXRDY (1 << 0) +#define US_CSR_TXRDY (1 << 1) +#define US_CSR_RXBRK (1 << 2) +#define US_CSR_ENDRX (1 << 3) +#define US_CSR_ENDTX (1 << 4) + + +#define US_CSR_OVRE (1 << 5) +#define US_CSR_FRAME (1 << 6) +#define US_CSR_PARE (1 << 7) + +#define US_CSR_TXEMPTY (1 << 9) + +#define US_CSR_TXBUFE (1 << 11) +#define US_CSR_RXBUFF (1 << 12) +#define US_CSR_RIIC (1 << 16) +#define US_CSR_DSRIC (1 << 17) +#define US_CSR_DCDIC (1 << 18) +#define US_CSR_CTSIC (1 << 19) +#define US_CSR_RI (1 << 20) +#define US_CSR_DSR (1 << 21) +#define US_CSR_DCD (1 << 22) +#define US_CSR_CTS (1 << 23) + +/* USART3 Baud Rate Generator Register */ +#define US_BRGR_CD_OFFSET 0 +#define US_BRGR_FP_OFFSET 16 + +#define US_BRGR_CD_SIZE 16 +#define US_BRGR_FP_SIZE 3 + +#define US_BRGR_CD (0xFFFF << 0) +#define US_BRGR_FP ( 7 << 16) + +/*USART3 PDC Transfer Control Register */ +#define US_PTCR_RXTEN (1 << 0) +#define US_PTCR_RXTDIS (1 << 1) +#define US_PTCR_TXTEN (1 << 8) +#define US_PTCR_TXTDIS (1 << 9) + +/*USART3 PDC Transfer Status Register */ +#define US_PTSR_RXTEN (1 << 0) +#define US_PTSR_TXTEN (1 << 8) + + +int usart_init(int baudrate); +void usart_putc(char c); +void usart_puts(const char *s); +int usart_getc(void); +int usart_tstc(void); +void usart_setbrg(int baudrate, int cpu_clock); +void set_usart_base(void *usart_base); + + +_END_STD_C + +#endif /* MERLIN_USART3_H */ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/libnewlib_addons-at32ucr2-speed_opt.a b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/libnewlib_addons-at32ucr2-speed_opt.a new file mode 100644 index 0000000000000000000000000000000000000000..aa673eccdd47c07f3ab27c1726263ee9a8306143 GIT binary patch literal 25540 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 literal 0 HcmV?d00001 diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds new file mode 100644 index 000000000..59152ac0b --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/0512/GCC/link_uc3a0512.lds @@ -0,0 +1,266 @@ +/****************************************************************************** + * AVR32 AT32UC3A0512 GNU LD script file. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: AVR32 AT32UC3A0512 + * + * - author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +OUTPUT_FORMAT("elf32-avr32", "elf32-avr32", "elf32-avr32") + +OUTPUT_ARCH(avr32:uc) + +ENTRY(_start) + +MEMORY +{ + FLASH (rxai!w) : ORIGIN = 0x80000000, LENGTH = 0x00080000 + INTRAM (wxa!ri) : ORIGIN = 0x00000004, LENGTH = 0x0000FFFC + USERPAGE : ORIGIN = 0x80800000, LENGTH = 0x00000200 +} + +PHDRS +{ + FLASH PT_LOAD; + INTRAM_ALIGN PT_NULL; + INTRAM_AT_FLASH PT_LOAD; + INTRAM PT_NULL; + USERPAGE PT_LOAD; +} + +SECTIONS +{ + /* If this heap size is selected, all the INTRAM space from the end of the + data area to the beginning of the stack will be allocated for the heap. */ + __max_heap_size__ = -1; + + /* Use a default heap size if heap size was not defined. */ + __heap_size__ = DEFINED(__heap_size__) ? __heap_size__ : __max_heap_size__; + + /* Use a default stack size if stack size was not defined. */ + __stack_size__ = DEFINED(__stack_size__) ? __stack_size__ : 4K; + + /* Read-only sections, merged into text segment: */ + PROVIDE (__executable_start = 0x80000000); . = 0x80000000; + .interp : { *(.interp) } >FLASH AT>FLASH :FLASH + .reset : { *(.reset) } >FLASH AT>FLASH :FLASH + .hash : { *(.hash) } >FLASH AT>FLASH :FLASH + .dynsym : { *(.dynsym) } >FLASH AT>FLASH :FLASH + .dynstr : { *(.dynstr) } >FLASH AT>FLASH :FLASH + .gnu.version : { *(.gnu.version) } >FLASH AT>FLASH :FLASH + .gnu.version_d : { *(.gnu.version_d) } >FLASH AT>FLASH :FLASH + .gnu.version_r : { *(.gnu.version_r) } >FLASH AT>FLASH :FLASH + .rel.init : { *(.rel.init) } >FLASH AT>FLASH :FLASH + .rela.init : { *(.rela.init) } >FLASH AT>FLASH :FLASH + .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rel.fini : { *(.rel.fini) } >FLASH AT>FLASH :FLASH + .rela.fini : { *(.rela.fini) } >FLASH AT>FLASH :FLASH + .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rel.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rela.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rel.ctors : { *(.rel.ctors) } >FLASH AT>FLASH :FLASH + .rela.ctors : { *(.rela.ctors) } >FLASH AT>FLASH :FLASH + .rel.dtors : { *(.rel.dtors) } >FLASH AT>FLASH :FLASH + .rela.dtors : { *(.rela.dtors) } >FLASH AT>FLASH :FLASH + .rel.got : { *(.rel.got) } >FLASH AT>FLASH :FLASH + .rela.got : { *(.rela.got) } >FLASH AT>FLASH :FLASH + .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rel.plt : { *(.rel.plt) } >FLASH AT>FLASH :FLASH + .rela.plt : { *(.rela.plt) } >FLASH AT>FLASH :FLASH + .init : + { + KEEP (*(.init)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .plt : { *(.plt) } >FLASH AT>FLASH :FLASH + .text : + { + *(.text .stub .text.* .gnu.linkonce.t.*) + KEEP (*(.text.*personality*)) + /* .gnu.warning sections are handled specially by elf32.em. */ + *(.gnu.warning) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .fini : + { + KEEP (*(.fini)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + PROVIDE (__etext = .); + PROVIDE (_etext = .); + PROVIDE (etext = .); + .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rodata1 : { *(.rodata1) } >FLASH AT>FLASH :FLASH + .eh_frame_hdr : { *(.eh_frame_hdr) } >FLASH AT>FLASH :FLASH + .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >FLASH AT>FLASH :FLASH + .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >FLASH AT>FLASH :FLASH + .lalign : { . = ALIGN(8); PROVIDE(_data_lma = .); } >FLASH AT>FLASH :FLASH + . = ORIGIN(INTRAM); + .dalign : { . = ALIGN(8); PROVIDE(_data = .); } >INTRAM AT>INTRAM :INTRAM_ALIGN + /* Exception handling */ + .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Thread Local Storage sections */ + .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Ensure the __preinit_array_start label is properly aligned. We + could instead move the label definition inside the section, but + the linker would then create the section even if it turns out to + be empty, which isn't pretty. */ + PROVIDE (__preinit_array_start = ALIGN(32 / 8)); + .preinit_array : { KEEP (*(.preinit_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__preinit_array_end = .); + PROVIDE (__init_array_start = .); + .init_array : { KEEP (*(.init_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__init_array_end = .); + PROVIDE (__fini_array_start = .); + .fini_array : { KEEP (*(.fini_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__fini_array_end = .); + .ctors : + { + /* gcc uses crtbegin.o to find the start of + the constructors, so we make sure it is + first. Because this is a wildcard, it + doesn't matter if the user does not + actually link against crtbegin.o; the + linker won't look for a file to match a + wildcard. The wildcard also means that it + doesn't matter which directory crtbegin.o + is in. */ + KEEP (*crtbegin*.o(.ctors)) + /* We don't want to include the .ctor section from + from the crtend.o file until after the sorted ctors. + The .ctor section from the crtend file contains the + end of ctors marker and it must be last */ + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) + KEEP (*(SORT(.ctors.*))) + KEEP (*(.ctors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dtors : + { + KEEP (*crtbegin*.o(.dtors)) + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) + KEEP (*(SORT(.dtors.*))) + KEEP (*(.dtors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .jcr : { KEEP (*(.jcr)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dynamic : { *(.dynamic) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .got : { *(.got.plt) *(.got) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ramtext : { *(.ramtext .ramtext.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ddalign : { . = ALIGN(8); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data : + { + *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(.gnu.linkonce.d.*personality*)) + SORT(CONSTRUCTORS) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data1 : { *(.data1) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .balign : { . = ALIGN(8); PROVIDE(_edata = .); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (edata = .); + __bss_start = .; + .bss : + { + *(.dynbss) + *(.bss .bss.* .gnu.linkonce.b.*) + *(COMMON) + /* Align here to ensure that the .bss section occupies space up to + _end. Align after .bss to ensure correct alignment even if the + .bss section disappears because there are no input sections. */ + . = ALIGN(8); + } >INTRAM AT>INTRAM :INTRAM + . = ALIGN(8); + _end = .; + PROVIDE (end = .); + __heap_start__ = ALIGN(8); + .heap : + { + *(.heap) + . = (__heap_size__ == __max_heap_size__) ? + ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ - ABSOLUTE(.) : + __heap_size__; + } >INTRAM AT>INTRAM :INTRAM + __heap_end__ = .; + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + /* DWARF debug sections. + Symbols in the DWARF debugging sections are relative to the beginning + of the section so we begin them at 0. */ + /* DWARF 1 */ + .debug 0 : { *(.debug) } + .line 0 : { *(.line) } + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } + .debug_sfnames 0 : { *(.debug_sfnames) } + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } + .debug_funcnames 0 : { *(.debug_funcnames) } + .debug_typenames 0 : { *(.debug_typenames) } + .debug_varnames 0 : { *(.debug_varnames) } + .stack ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ : + { + _stack = .; + *(.stack) + . = __stack_size__; + _estack = .; + } >INTRAM AT>INTRAM :INTRAM + .userpage : { *(.userpage .userpage.*) } >USERPAGE AT>USERPAGE :USERPAGE + /DISCARD/ : { *(.note.GNU-stack) } +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds new file mode 100644 index 000000000..a5926d8be --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds @@ -0,0 +1,266 @@ +/****************************************************************************** + * AVR32 AT32UC3A1256 GNU LD script file. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: AVR32 AT32UC3A1256 + * + * - author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +OUTPUT_FORMAT("elf32-avr32", "elf32-avr32", "elf32-avr32") + +OUTPUT_ARCH(avr32:uc) + +ENTRY(_start) + +MEMORY +{ + FLASH (rxai!w) : ORIGIN = 0x80000000, LENGTH = 0x00040000 + INTRAM (wxa!ri) : ORIGIN = 0x00000004, LENGTH = 0x0000FFFC + USERPAGE : ORIGIN = 0x80800000, LENGTH = 0x00000200 +} + +PHDRS +{ + FLASH PT_LOAD; + INTRAM_ALIGN PT_NULL; + INTRAM_AT_FLASH PT_LOAD; + INTRAM PT_NULL; + USERPAGE PT_LOAD; +} + +SECTIONS +{ + /* If this heap size is selected, all the INTRAM space from the end of the + data area to the beginning of the stack will be allocated for the heap. */ + __max_heap_size__ = -1; + + /* Use a default heap size if heap size was not defined. */ + __heap_size__ = DEFINED(__heap_size__) ? __heap_size__ : __max_heap_size__; + + /* Use a default stack size if stack size was not defined. */ + __stack_size__ = DEFINED(__stack_size__) ? __stack_size__ : 4K; + + /* Read-only sections, merged into text segment: */ + PROVIDE (__executable_start = 0x80000000); . = 0x80000000; + .interp : { *(.interp) } >FLASH AT>FLASH :FLASH + .reset : { *(.reset) } >FLASH AT>FLASH :FLASH + .hash : { *(.hash) } >FLASH AT>FLASH :FLASH + .dynsym : { *(.dynsym) } >FLASH AT>FLASH :FLASH + .dynstr : { *(.dynstr) } >FLASH AT>FLASH :FLASH + .gnu.version : { *(.gnu.version) } >FLASH AT>FLASH :FLASH + .gnu.version_d : { *(.gnu.version_d) } >FLASH AT>FLASH :FLASH + .gnu.version_r : { *(.gnu.version_r) } >FLASH AT>FLASH :FLASH + .rel.init : { *(.rel.init) } >FLASH AT>FLASH :FLASH + .rela.init : { *(.rela.init) } >FLASH AT>FLASH :FLASH + .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } >FLASH AT>FLASH :FLASH + .rel.fini : { *(.rel.fini) } >FLASH AT>FLASH :FLASH + .rela.fini : { *(.rela.fini) } >FLASH AT>FLASH :FLASH + .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rel.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rela.data.rel.ro : { *(.rel.data.rel.ro*) } >FLASH AT>FLASH :FLASH + .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } >FLASH AT>FLASH :FLASH + .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } >FLASH AT>FLASH :FLASH + .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } >FLASH AT>FLASH :FLASH + .rel.ctors : { *(.rel.ctors) } >FLASH AT>FLASH :FLASH + .rela.ctors : { *(.rela.ctors) } >FLASH AT>FLASH :FLASH + .rel.dtors : { *(.rel.dtors) } >FLASH AT>FLASH :FLASH + .rela.dtors : { *(.rela.dtors) } >FLASH AT>FLASH :FLASH + .rel.got : { *(.rel.got) } >FLASH AT>FLASH :FLASH + .rela.got : { *(.rela.got) } >FLASH AT>FLASH :FLASH + .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } >FLASH AT>FLASH :FLASH + .rel.plt : { *(.rel.plt) } >FLASH AT>FLASH :FLASH + .rela.plt : { *(.rela.plt) } >FLASH AT>FLASH :FLASH + .init : + { + KEEP (*(.init)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .plt : { *(.plt) } >FLASH AT>FLASH :FLASH + .text : + { + *(.text .stub .text.* .gnu.linkonce.t.*) + KEEP (*(.text.*personality*)) + /* .gnu.warning sections are handled specially by elf32.em. */ + *(.gnu.warning) + } >FLASH AT>FLASH :FLASH =0xd703d703 + .fini : + { + KEEP (*(.fini)) + } >FLASH AT>FLASH :FLASH =0xd703d703 + PROVIDE (__etext = .); + PROVIDE (_etext = .); + PROVIDE (etext = .); + .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >FLASH AT>FLASH :FLASH + .rodata1 : { *(.rodata1) } >FLASH AT>FLASH :FLASH + .eh_frame_hdr : { *(.eh_frame_hdr) } >FLASH AT>FLASH :FLASH + .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >FLASH AT>FLASH :FLASH + .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >FLASH AT>FLASH :FLASH + .lalign : { . = ALIGN(8); PROVIDE(_data_lma = .); } >FLASH AT>FLASH :FLASH + . = ORIGIN(INTRAM); + .dalign : { . = ALIGN(8); PROVIDE(_data = .); } >INTRAM AT>INTRAM :INTRAM_ALIGN + /* Exception handling */ + .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Thread Local Storage sections */ + .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + /* Ensure the __preinit_array_start label is properly aligned. We + could instead move the label definition inside the section, but + the linker would then create the section even if it turns out to + be empty, which isn't pretty. */ + PROVIDE (__preinit_array_start = ALIGN(32 / 8)); + .preinit_array : { KEEP (*(.preinit_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__preinit_array_end = .); + PROVIDE (__init_array_start = .); + .init_array : { KEEP (*(.init_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__init_array_end = .); + PROVIDE (__fini_array_start = .); + .fini_array : { KEEP (*(.fini_array)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (__fini_array_end = .); + .ctors : + { + /* gcc uses crtbegin.o to find the start of + the constructors, so we make sure it is + first. Because this is a wildcard, it + doesn't matter if the user does not + actually link against crtbegin.o; the + linker won't look for a file to match a + wildcard. The wildcard also means that it + doesn't matter which directory crtbegin.o + is in. */ + KEEP (*crtbegin*.o(.ctors)) + /* We don't want to include the .ctor section from + from the crtend.o file until after the sorted ctors. + The .ctor section from the crtend file contains the + end of ctors marker and it must be last */ + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) + KEEP (*(SORT(.ctors.*))) + KEEP (*(.ctors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dtors : + { + KEEP (*crtbegin*.o(.dtors)) + KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) + KEEP (*(SORT(.dtors.*))) + KEEP (*(.dtors)) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .jcr : { KEEP (*(.jcr)) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .dynamic : { *(.dynamic) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .got : { *(.got.plt) *(.got) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ramtext : { *(.ramtext .ramtext.*) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .ddalign : { . = ALIGN(8); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data : + { + *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(.gnu.linkonce.d.*personality*)) + SORT(CONSTRUCTORS) + } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .data1 : { *(.data1) } >INTRAM AT>FLASH :INTRAM_AT_FLASH + .balign : { . = ALIGN(8); PROVIDE(_edata = .); } >INTRAM AT>FLASH :INTRAM_AT_FLASH + PROVIDE (edata = .); + __bss_start = .; + .bss : + { + *(.dynbss) + *(.bss .bss.* .gnu.linkonce.b.*) + *(COMMON) + /* Align here to ensure that the .bss section occupies space up to + _end. Align after .bss to ensure correct alignment even if the + .bss section disappears because there are no input sections. */ + . = ALIGN(8); + } >INTRAM AT>INTRAM :INTRAM + . = ALIGN(8); + _end = .; + PROVIDE (end = .); + __heap_start__ = ALIGN(8); + .heap : + { + *(.heap) + . = (__heap_size__ == __max_heap_size__) ? + ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ - ABSOLUTE(.) : + __heap_size__; + } >INTRAM AT>INTRAM :INTRAM + __heap_end__ = .; + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + /* DWARF debug sections. + Symbols in the DWARF debugging sections are relative to the beginning + of the section so we begin them at 0. */ + /* DWARF 1 */ + .debug 0 : { *(.debug) } + .line 0 : { *(.line) } + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } + .debug_sfnames 0 : { *(.debug_sfnames) } + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } + .debug_funcnames 0 : { *(.debug_funcnames) } + .debug_typenames 0 : { *(.debug_typenames) } + .debug_varnames 0 : { *(.debug_varnames) } + .stack ORIGIN(INTRAM) + LENGTH(INTRAM) - __stack_size__ : + { + _stack = .; + *(.stack) + . = __stack_size__; + _estack = .; + } >INTRAM AT>INTRAM :INTRAM + .userpage : { *(.userpage .userpage.*) } >USERPAGE AT>USERPAGE :USERPAGE + /DISCARD/ : { *(.note.GNU-stack) } +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h new file mode 100644 index 000000000..41163b6d9 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/mrepeat.h @@ -0,0 +1,328 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor macro repeating utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _MREPEAT_H_ +#define _MREPEAT_H_ + +#include "preprocessor.h" + + +//! Maximal number of repetitions supported by MREPEAT. +#define MREPEAT_LIMIT 256 + +/*! \brief Macro repeat. + * + * This macro represents a horizontal repetition construct. + * + * \param count The number of repetitious calls to macro. Valid values range from 0 to MREPEAT_LIMIT. + * \param macro A binary operation of the form macro(n, data). This macro is expanded by MREPEAT with + * the current repetition number and the auxiliary data argument. + * \param data Auxiliary data passed to macro. + * + * \return <tt>macro(0, data) macro(1, data) ... macro(count - 1, data)</tt> + */ +#define MREPEAT(count, macro, data) TPASTE2(MREPEAT, count)(macro, data) + +#define MREPEAT0( macro, data) +#define MREPEAT1( macro, data) MREPEAT0( macro, data) macro( 0, data) +#define MREPEAT2( macro, data) MREPEAT1( macro, data) macro( 1, data) +#define MREPEAT3( macro, data) MREPEAT2( macro, data) macro( 2, data) +#define MREPEAT4( macro, data) MREPEAT3( macro, data) macro( 3, data) +#define MREPEAT5( macro, data) MREPEAT4( macro, data) macro( 4, data) +#define MREPEAT6( macro, data) MREPEAT5( macro, data) macro( 5, data) +#define MREPEAT7( macro, data) MREPEAT6( macro, data) macro( 6, data) +#define MREPEAT8( macro, data) MREPEAT7( macro, data) macro( 7, data) +#define MREPEAT9( macro, data) MREPEAT8( macro, data) macro( 8, data) +#define MREPEAT10( macro, data) MREPEAT9( macro, data) macro( 9, data) +#define MREPEAT11( macro, data) MREPEAT10( macro, data) macro( 10, data) +#define MREPEAT12( macro, data) MREPEAT11( macro, data) macro( 11, data) +#define MREPEAT13( macro, data) MREPEAT12( macro, data) macro( 12, data) +#define MREPEAT14( macro, data) MREPEAT13( macro, data) macro( 13, data) +#define MREPEAT15( macro, data) MREPEAT14( macro, data) macro( 14, data) +#define MREPEAT16( macro, data) MREPEAT15( macro, data) macro( 15, data) +#define MREPEAT17( macro, data) MREPEAT16( macro, data) macro( 16, data) +#define MREPEAT18( macro, data) MREPEAT17( macro, data) macro( 17, data) +#define MREPEAT19( macro, data) MREPEAT18( macro, data) macro( 18, data) +#define MREPEAT20( macro, data) MREPEAT19( macro, data) macro( 19, data) +#define MREPEAT21( macro, data) MREPEAT20( macro, data) macro( 20, data) +#define MREPEAT22( macro, data) MREPEAT21( macro, data) macro( 21, data) +#define MREPEAT23( macro, data) MREPEAT22( macro, data) macro( 22, data) +#define MREPEAT24( macro, data) MREPEAT23( macro, data) macro( 23, data) +#define MREPEAT25( macro, data) MREPEAT24( macro, data) macro( 24, data) +#define MREPEAT26( macro, data) MREPEAT25( macro, data) macro( 25, data) +#define MREPEAT27( macro, data) MREPEAT26( macro, data) macro( 26, data) +#define MREPEAT28( macro, data) MREPEAT27( macro, data) macro( 27, data) +#define MREPEAT29( macro, data) MREPEAT28( macro, data) macro( 28, data) +#define MREPEAT30( macro, data) MREPEAT29( macro, data) macro( 29, data) +#define MREPEAT31( macro, data) MREPEAT30( macro, data) macro( 30, data) +#define MREPEAT32( macro, data) MREPEAT31( macro, data) macro( 31, data) +#define MREPEAT33( macro, data) MREPEAT32( macro, data) macro( 32, data) +#define MREPEAT34( macro, data) MREPEAT33( macro, data) macro( 33, data) +#define MREPEAT35( macro, data) MREPEAT34( macro, data) macro( 34, data) +#define MREPEAT36( macro, data) MREPEAT35( macro, data) macro( 35, data) +#define MREPEAT37( macro, data) MREPEAT36( macro, data) macro( 36, data) +#define MREPEAT38( macro, data) MREPEAT37( macro, data) macro( 37, data) +#define MREPEAT39( macro, data) MREPEAT38( macro, data) macro( 38, data) +#define MREPEAT40( macro, data) MREPEAT39( macro, data) macro( 39, data) +#define MREPEAT41( macro, data) MREPEAT40( macro, data) macro( 40, data) +#define MREPEAT42( macro, data) MREPEAT41( macro, data) macro( 41, data) +#define MREPEAT43( macro, data) MREPEAT42( macro, data) macro( 42, data) +#define MREPEAT44( macro, data) MREPEAT43( macro, data) macro( 43, data) +#define MREPEAT45( macro, data) MREPEAT44( macro, data) macro( 44, data) +#define MREPEAT46( macro, data) MREPEAT45( macro, data) macro( 45, data) +#define MREPEAT47( macro, data) MREPEAT46( macro, data) macro( 46, data) +#define MREPEAT48( macro, data) MREPEAT47( macro, data) macro( 47, data) +#define MREPEAT49( macro, data) MREPEAT48( macro, data) macro( 48, data) +#define MREPEAT50( macro, data) MREPEAT49( macro, data) macro( 49, data) +#define MREPEAT51( macro, data) MREPEAT50( macro, data) macro( 50, data) +#define MREPEAT52( macro, data) MREPEAT51( macro, data) macro( 51, data) +#define MREPEAT53( macro, data) MREPEAT52( macro, data) macro( 52, data) +#define MREPEAT54( macro, data) MREPEAT53( macro, data) macro( 53, data) +#define MREPEAT55( macro, data) MREPEAT54( macro, data) macro( 54, data) +#define MREPEAT56( macro, data) MREPEAT55( macro, data) macro( 55, data) +#define MREPEAT57( macro, data) MREPEAT56( macro, data) macro( 56, data) +#define MREPEAT58( macro, data) MREPEAT57( macro, data) macro( 57, data) +#define MREPEAT59( macro, data) MREPEAT58( macro, data) macro( 58, data) +#define MREPEAT60( macro, data) MREPEAT59( macro, data) macro( 59, data) +#define MREPEAT61( macro, data) MREPEAT60( macro, data) macro( 60, data) +#define MREPEAT62( macro, data) MREPEAT61( macro, data) macro( 61, data) +#define MREPEAT63( macro, data) MREPEAT62( macro, data) macro( 62, data) +#define MREPEAT64( macro, data) MREPEAT63( macro, data) macro( 63, data) +#define MREPEAT65( macro, data) MREPEAT64( macro, data) macro( 64, data) +#define MREPEAT66( macro, data) MREPEAT65( macro, data) macro( 65, data) +#define MREPEAT67( macro, data) MREPEAT66( macro, data) macro( 66, data) +#define MREPEAT68( macro, data) MREPEAT67( macro, data) macro( 67, data) +#define MREPEAT69( macro, data) MREPEAT68( macro, data) macro( 68, data) +#define MREPEAT70( macro, data) MREPEAT69( macro, data) macro( 69, data) +#define MREPEAT71( macro, data) MREPEAT70( macro, data) macro( 70, data) +#define MREPEAT72( macro, data) MREPEAT71( macro, data) macro( 71, data) +#define MREPEAT73( macro, data) MREPEAT72( macro, data) macro( 72, data) +#define MREPEAT74( macro, data) MREPEAT73( macro, data) macro( 73, data) +#define MREPEAT75( macro, data) MREPEAT74( macro, data) macro( 74, data) +#define MREPEAT76( macro, data) MREPEAT75( macro, data) macro( 75, data) +#define MREPEAT77( macro, data) MREPEAT76( macro, data) macro( 76, data) +#define MREPEAT78( macro, data) MREPEAT77( macro, data) macro( 77, data) +#define MREPEAT79( macro, data) MREPEAT78( macro, data) macro( 78, data) +#define MREPEAT80( macro, data) MREPEAT79( macro, data) macro( 79, data) +#define MREPEAT81( macro, data) MREPEAT80( macro, data) macro( 80, data) +#define MREPEAT82( macro, data) MREPEAT81( macro, data) macro( 81, data) +#define MREPEAT83( macro, data) MREPEAT82( macro, data) macro( 82, data) +#define MREPEAT84( macro, data) MREPEAT83( macro, data) macro( 83, data) +#define MREPEAT85( macro, data) MREPEAT84( macro, data) macro( 84, data) +#define MREPEAT86( macro, data) MREPEAT85( macro, data) macro( 85, data) +#define MREPEAT87( macro, data) MREPEAT86( macro, data) macro( 86, data) +#define MREPEAT88( macro, data) MREPEAT87( macro, data) macro( 87, data) +#define MREPEAT89( macro, data) MREPEAT88( macro, data) macro( 88, data) +#define MREPEAT90( macro, data) MREPEAT89( macro, data) macro( 89, data) +#define MREPEAT91( macro, data) MREPEAT90( macro, data) macro( 90, data) +#define MREPEAT92( macro, data) MREPEAT91( macro, data) macro( 91, data) +#define MREPEAT93( macro, data) MREPEAT92( macro, data) macro( 92, data) +#define MREPEAT94( macro, data) MREPEAT93( macro, data) macro( 93, data) +#define MREPEAT95( macro, data) MREPEAT94( macro, data) macro( 94, data) +#define MREPEAT96( macro, data) MREPEAT95( macro, data) macro( 95, data) +#define MREPEAT97( macro, data) MREPEAT96( macro, data) macro( 96, data) +#define MREPEAT98( macro, data) MREPEAT97( macro, data) macro( 97, data) +#define MREPEAT99( macro, data) MREPEAT98( macro, data) macro( 98, data) +#define MREPEAT100(macro, data) MREPEAT99( macro, data) macro( 99, data) +#define MREPEAT101(macro, data) MREPEAT100(macro, data) macro(100, data) +#define MREPEAT102(macro, data) MREPEAT101(macro, data) macro(101, data) +#define MREPEAT103(macro, data) MREPEAT102(macro, data) macro(102, data) +#define MREPEAT104(macro, data) MREPEAT103(macro, data) macro(103, data) +#define MREPEAT105(macro, data) MREPEAT104(macro, data) macro(104, data) +#define MREPEAT106(macro, data) MREPEAT105(macro, data) macro(105, data) +#define MREPEAT107(macro, data) MREPEAT106(macro, data) macro(106, data) +#define MREPEAT108(macro, data) MREPEAT107(macro, data) macro(107, data) +#define MREPEAT109(macro, data) MREPEAT108(macro, data) macro(108, data) +#define MREPEAT110(macro, data) MREPEAT109(macro, data) macro(109, data) +#define MREPEAT111(macro, data) MREPEAT110(macro, data) macro(110, data) +#define MREPEAT112(macro, data) MREPEAT111(macro, data) macro(111, data) +#define MREPEAT113(macro, data) MREPEAT112(macro, data) macro(112, data) +#define MREPEAT114(macro, data) MREPEAT113(macro, data) macro(113, data) +#define MREPEAT115(macro, data) MREPEAT114(macro, data) macro(114, data) +#define MREPEAT116(macro, data) MREPEAT115(macro, data) macro(115, data) +#define MREPEAT117(macro, data) MREPEAT116(macro, data) macro(116, data) +#define MREPEAT118(macro, data) MREPEAT117(macro, data) macro(117, data) +#define MREPEAT119(macro, data) MREPEAT118(macro, data) macro(118, data) +#define MREPEAT120(macro, data) MREPEAT119(macro, data) macro(119, data) +#define MREPEAT121(macro, data) MREPEAT120(macro, data) macro(120, data) +#define MREPEAT122(macro, data) MREPEAT121(macro, data) macro(121, data) +#define MREPEAT123(macro, data) MREPEAT122(macro, data) macro(122, data) +#define MREPEAT124(macro, data) MREPEAT123(macro, data) macro(123, data) +#define MREPEAT125(macro, data) MREPEAT124(macro, data) macro(124, data) +#define MREPEAT126(macro, data) MREPEAT125(macro, data) macro(125, data) +#define MREPEAT127(macro, data) MREPEAT126(macro, data) macro(126, data) +#define MREPEAT128(macro, data) MREPEAT127(macro, data) macro(127, data) +#define MREPEAT129(macro, data) MREPEAT128(macro, data) macro(128, data) +#define MREPEAT130(macro, data) MREPEAT129(macro, data) macro(129, data) +#define MREPEAT131(macro, data) MREPEAT130(macro, data) macro(130, data) +#define MREPEAT132(macro, data) MREPEAT131(macro, data) macro(131, data) +#define MREPEAT133(macro, data) MREPEAT132(macro, data) macro(132, data) +#define MREPEAT134(macro, data) MREPEAT133(macro, data) macro(133, data) +#define MREPEAT135(macro, data) MREPEAT134(macro, data) macro(134, data) +#define MREPEAT136(macro, data) MREPEAT135(macro, data) macro(135, data) +#define MREPEAT137(macro, data) MREPEAT136(macro, data) macro(136, data) +#define MREPEAT138(macro, data) MREPEAT137(macro, data) macro(137, data) +#define MREPEAT139(macro, data) MREPEAT138(macro, data) macro(138, data) +#define MREPEAT140(macro, data) MREPEAT139(macro, data) macro(139, data) +#define MREPEAT141(macro, data) MREPEAT140(macro, data) macro(140, data) +#define MREPEAT142(macro, data) MREPEAT141(macro, data) macro(141, data) +#define MREPEAT143(macro, data) MREPEAT142(macro, data) macro(142, data) +#define MREPEAT144(macro, data) MREPEAT143(macro, data) macro(143, data) +#define MREPEAT145(macro, data) MREPEAT144(macro, data) macro(144, data) +#define MREPEAT146(macro, data) MREPEAT145(macro, data) macro(145, data) +#define MREPEAT147(macro, data) MREPEAT146(macro, data) macro(146, data) +#define MREPEAT148(macro, data) MREPEAT147(macro, data) macro(147, data) +#define MREPEAT149(macro, data) MREPEAT148(macro, data) macro(148, data) +#define MREPEAT150(macro, data) MREPEAT149(macro, data) macro(149, data) +#define MREPEAT151(macro, data) MREPEAT150(macro, data) macro(150, data) +#define MREPEAT152(macro, data) MREPEAT151(macro, data) macro(151, data) +#define MREPEAT153(macro, data) MREPEAT152(macro, data) macro(152, data) +#define MREPEAT154(macro, data) MREPEAT153(macro, data) macro(153, data) +#define MREPEAT155(macro, data) MREPEAT154(macro, data) macro(154, data) +#define MREPEAT156(macro, data) MREPEAT155(macro, data) macro(155, data) +#define MREPEAT157(macro, data) MREPEAT156(macro, data) macro(156, data) +#define MREPEAT158(macro, data) MREPEAT157(macro, data) macro(157, data) +#define MREPEAT159(macro, data) MREPEAT158(macro, data) macro(158, data) +#define MREPEAT160(macro, data) MREPEAT159(macro, data) macro(159, data) +#define MREPEAT161(macro, data) MREPEAT160(macro, data) macro(160, data) +#define MREPEAT162(macro, data) MREPEAT161(macro, data) macro(161, data) +#define MREPEAT163(macro, data) MREPEAT162(macro, data) macro(162, data) +#define MREPEAT164(macro, data) MREPEAT163(macro, data) macro(163, data) +#define MREPEAT165(macro, data) MREPEAT164(macro, data) macro(164, data) +#define MREPEAT166(macro, data) MREPEAT165(macro, data) macro(165, data) +#define MREPEAT167(macro, data) MREPEAT166(macro, data) macro(166, data) +#define MREPEAT168(macro, data) MREPEAT167(macro, data) macro(167, data) +#define MREPEAT169(macro, data) MREPEAT168(macro, data) macro(168, data) +#define MREPEAT170(macro, data) MREPEAT169(macro, data) macro(169, data) +#define MREPEAT171(macro, data) MREPEAT170(macro, data) macro(170, data) +#define MREPEAT172(macro, data) MREPEAT171(macro, data) macro(171, data) +#define MREPEAT173(macro, data) MREPEAT172(macro, data) macro(172, data) +#define MREPEAT174(macro, data) MREPEAT173(macro, data) macro(173, data) +#define MREPEAT175(macro, data) MREPEAT174(macro, data) macro(174, data) +#define MREPEAT176(macro, data) MREPEAT175(macro, data) macro(175, data) +#define MREPEAT177(macro, data) MREPEAT176(macro, data) macro(176, data) +#define MREPEAT178(macro, data) MREPEAT177(macro, data) macro(177, data) +#define MREPEAT179(macro, data) MREPEAT178(macro, data) macro(178, data) +#define MREPEAT180(macro, data) MREPEAT179(macro, data) macro(179, data) +#define MREPEAT181(macro, data) MREPEAT180(macro, data) macro(180, data) +#define MREPEAT182(macro, data) MREPEAT181(macro, data) macro(181, data) +#define MREPEAT183(macro, data) MREPEAT182(macro, data) macro(182, data) +#define MREPEAT184(macro, data) MREPEAT183(macro, data) macro(183, data) +#define MREPEAT185(macro, data) MREPEAT184(macro, data) macro(184, data) +#define MREPEAT186(macro, data) MREPEAT185(macro, data) macro(185, data) +#define MREPEAT187(macro, data) MREPEAT186(macro, data) macro(186, data) +#define MREPEAT188(macro, data) MREPEAT187(macro, data) macro(187, data) +#define MREPEAT189(macro, data) MREPEAT188(macro, data) macro(188, data) +#define MREPEAT190(macro, data) MREPEAT189(macro, data) macro(189, data) +#define MREPEAT191(macro, data) MREPEAT190(macro, data) macro(190, data) +#define MREPEAT192(macro, data) MREPEAT191(macro, data) macro(191, data) +#define MREPEAT193(macro, data) MREPEAT192(macro, data) macro(192, data) +#define MREPEAT194(macro, data) MREPEAT193(macro, data) macro(193, data) +#define MREPEAT195(macro, data) MREPEAT194(macro, data) macro(194, data) +#define MREPEAT196(macro, data) MREPEAT195(macro, data) macro(195, data) +#define MREPEAT197(macro, data) MREPEAT196(macro, data) macro(196, data) +#define MREPEAT198(macro, data) MREPEAT197(macro, data) macro(197, data) +#define MREPEAT199(macro, data) MREPEAT198(macro, data) macro(198, data) +#define MREPEAT200(macro, data) MREPEAT199(macro, data) macro(199, data) +#define MREPEAT201(macro, data) MREPEAT200(macro, data) macro(200, data) +#define MREPEAT202(macro, data) MREPEAT201(macro, data) macro(201, data) +#define MREPEAT203(macro, data) MREPEAT202(macro, data) macro(202, data) +#define MREPEAT204(macro, data) MREPEAT203(macro, data) macro(203, data) +#define MREPEAT205(macro, data) MREPEAT204(macro, data) macro(204, data) +#define MREPEAT206(macro, data) MREPEAT205(macro, data) macro(205, data) +#define MREPEAT207(macro, data) MREPEAT206(macro, data) macro(206, data) +#define MREPEAT208(macro, data) MREPEAT207(macro, data) macro(207, data) +#define MREPEAT209(macro, data) MREPEAT208(macro, data) macro(208, data) +#define MREPEAT210(macro, data) MREPEAT209(macro, data) macro(209, data) +#define MREPEAT211(macro, data) MREPEAT210(macro, data) macro(210, data) +#define MREPEAT212(macro, data) MREPEAT211(macro, data) macro(211, data) +#define MREPEAT213(macro, data) MREPEAT212(macro, data) macro(212, data) +#define MREPEAT214(macro, data) MREPEAT213(macro, data) macro(213, data) +#define MREPEAT215(macro, data) MREPEAT214(macro, data) macro(214, data) +#define MREPEAT216(macro, data) MREPEAT215(macro, data) macro(215, data) +#define MREPEAT217(macro, data) MREPEAT216(macro, data) macro(216, data) +#define MREPEAT218(macro, data) MREPEAT217(macro, data) macro(217, data) +#define MREPEAT219(macro, data) MREPEAT218(macro, data) macro(218, data) +#define MREPEAT220(macro, data) MREPEAT219(macro, data) macro(219, data) +#define MREPEAT221(macro, data) MREPEAT220(macro, data) macro(220, data) +#define MREPEAT222(macro, data) MREPEAT221(macro, data) macro(221, data) +#define MREPEAT223(macro, data) MREPEAT222(macro, data) macro(222, data) +#define MREPEAT224(macro, data) MREPEAT223(macro, data) macro(223, data) +#define MREPEAT225(macro, data) MREPEAT224(macro, data) macro(224, data) +#define MREPEAT226(macro, data) MREPEAT225(macro, data) macro(225, data) +#define MREPEAT227(macro, data) MREPEAT226(macro, data) macro(226, data) +#define MREPEAT228(macro, data) MREPEAT227(macro, data) macro(227, data) +#define MREPEAT229(macro, data) MREPEAT228(macro, data) macro(228, data) +#define MREPEAT230(macro, data) MREPEAT229(macro, data) macro(229, data) +#define MREPEAT231(macro, data) MREPEAT230(macro, data) macro(230, data) +#define MREPEAT232(macro, data) MREPEAT231(macro, data) macro(231, data) +#define MREPEAT233(macro, data) MREPEAT232(macro, data) macro(232, data) +#define MREPEAT234(macro, data) MREPEAT233(macro, data) macro(233, data) +#define MREPEAT235(macro, data) MREPEAT234(macro, data) macro(234, data) +#define MREPEAT236(macro, data) MREPEAT235(macro, data) macro(235, data) +#define MREPEAT237(macro, data) MREPEAT236(macro, data) macro(236, data) +#define MREPEAT238(macro, data) MREPEAT237(macro, data) macro(237, data) +#define MREPEAT239(macro, data) MREPEAT238(macro, data) macro(238, data) +#define MREPEAT240(macro, data) MREPEAT239(macro, data) macro(239, data) +#define MREPEAT241(macro, data) MREPEAT240(macro, data) macro(240, data) +#define MREPEAT242(macro, data) MREPEAT241(macro, data) macro(241, data) +#define MREPEAT243(macro, data) MREPEAT242(macro, data) macro(242, data) +#define MREPEAT244(macro, data) MREPEAT243(macro, data) macro(243, data) +#define MREPEAT245(macro, data) MREPEAT244(macro, data) macro(244, data) +#define MREPEAT246(macro, data) MREPEAT245(macro, data) macro(245, data) +#define MREPEAT247(macro, data) MREPEAT246(macro, data) macro(246, data) +#define MREPEAT248(macro, data) MREPEAT247(macro, data) macro(247, data) +#define MREPEAT249(macro, data) MREPEAT248(macro, data) macro(248, data) +#define MREPEAT250(macro, data) MREPEAT249(macro, data) macro(249, data) +#define MREPEAT251(macro, data) MREPEAT250(macro, data) macro(250, data) +#define MREPEAT252(macro, data) MREPEAT251(macro, data) macro(251, data) +#define MREPEAT253(macro, data) MREPEAT252(macro, data) macro(252, data) +#define MREPEAT254(macro, data) MREPEAT253(macro, data) macro(253, data) +#define MREPEAT255(macro, data) MREPEAT254(macro, data) macro(254, data) +#define MREPEAT256(macro, data) MREPEAT255(macro, data) macro(255, data) + + +#endif // _MREPEAT_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h new file mode 100644 index 000000000..5b996ba11 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/preprocessor.h @@ -0,0 +1,55 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _PREPROCESSOR_H_ +#define _PREPROCESSOR_H_ + +#include "tpaste.h" +#include "stringz.h" +#include "mrepeat.h" + + +#endif // _PREPROCESSOR_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h new file mode 100644 index 000000000..3528ea0da --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/stringz.h @@ -0,0 +1,75 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor stringizing utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _STRINGZ_H_ +#define _STRINGZ_H_ + + +/*! \brief Stringize. + * + * Stringize a preprocessing token, this token being allowed to be \#defined. + * + * May be used only within macros with the token passed as an argument if the token is \#defined. + * + * For example, writing STRINGZ(PIN) within a macro \#defined by PIN_NAME(PIN) + * and invoked as PIN_NAME(PIN0) with PIN0 \#defined as A0 is equivalent to + * writing "A0". + */ +#define STRINGZ(x) #x + +/*! \brief Absolute stringize. + * + * Stringize a preprocessing token, this token being allowed to be \#defined. + * + * No restriction of use if the token is \#defined. + * + * For example, writing ASTRINGZ(PIN0) anywhere with PIN0 \#defined as A0 is + * equivalent to writing "A0". + */ +#define ASTRINGZ(x) STRINGZ(x) + + +#endif // _STRINGZ_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h new file mode 100644 index 000000000..a5d7beeaa --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR/tpaste.h @@ -0,0 +1,95 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Preprocessor token pasting utils. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _TPASTE_H_ +#define _TPASTE_H_ + + +/*! \name Token Paste + * + * Paste N preprocessing tokens together, these tokens being allowed to be \#defined. + * + * May be used only within macros with the tokens passed as arguments if the tokens are \#defined. + * + * For example, writing TPASTE2(U, WIDTH) within a macro \#defined by + * UTYPE(WIDTH) and invoked as UTYPE(UL_WIDTH) with UL_WIDTH \#defined as 32 is + * equivalent to writing U32. + */ +//! @{ +#define TPASTE2( a, b) a##b +#define TPASTE3( a, b, c) a##b##c +#define TPASTE4( a, b, c, d) a##b##c##d +#define TPASTE5( a, b, c, d, e) a##b##c##d##e +#define TPASTE6( a, b, c, d, e, f) a##b##c##d##e##f +#define TPASTE7( a, b, c, d, e, f, g) a##b##c##d##e##f##g +#define TPASTE8( a, b, c, d, e, f, g, h) a##b##c##d##e##f##g##h +#define TPASTE9( a, b, c, d, e, f, g, h, i) a##b##c##d##e##f##g##h##i +#define TPASTE10(a, b, c, d, e, f, g, h, i, j) a##b##c##d##e##f##g##h##i##j +//! @} + +/*! \name Absolute Token Paste + * + * Paste N preprocessing tokens together, these tokens being allowed to be \#defined. + * + * No restriction of use if the tokens are \#defined. + * + * For example, writing ATPASTE2(U, UL_WIDTH) anywhere with UL_WIDTH \#defined + * as 32 is equivalent to writing U32. + */ +//! @{ +#define ATPASTE2( a, b) TPASTE2( a, b) +#define ATPASTE3( a, b, c) TPASTE3( a, b, c) +#define ATPASTE4( a, b, c, d) TPASTE4( a, b, c, d) +#define ATPASTE5( a, b, c, d, e) TPASTE5( a, b, c, d, e) +#define ATPASTE6( a, b, c, d, e, f) TPASTE6( a, b, c, d, e, f) +#define ATPASTE7( a, b, c, d, e, f, g) TPASTE7( a, b, c, d, e, f, g) +#define ATPASTE8( a, b, c, d, e, f, g, h) TPASTE8( a, b, c, d, e, f, g, h) +#define ATPASTE9( a, b, c, d, e, f, g, h, i) TPASTE9( a, b, c, d, e, f, g, h, i) +#define ATPASTE10(a, b, c, d, e, f, g, h, i, j) TPASTE10(a, b, c, d, e, f, g, h, i, j) +//! @} + + +#endif // _TPASTE_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x new file mode 100644 index 000000000..23b658b98 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x @@ -0,0 +1,121 @@ +/* This file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief AVR32UC C runtime startup file. + * + * This file has been built from the Newlib crt0.S. + * + * - Compiler: GNU GCC for AVR32 + * - Supported devices: All AVR32UC devices can be used. + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#include <avr32/io.h> + + +//! @{ +//! \verbatim + + + // This must be linked @ 0x80000000 if it is to be run upon reset. + .section .reset, "ax", @progbits + + + .global _start + .type _start, @function +_start: + // Jump to the C runtime startup routine. + lda.w pc, _stext + + + // _stext is placed outside the .reset section so that the program entry point + // can be changed without affecting the C runtime startup. + .section .text._stext, "ax", @progbits + + + .global _stext + .type _stext, @function +_stext: + // Set initial stack pointer. + lda.w sp, _estack + + // Set up EVBA so interrupts can be enabled. + lda.w r0, _evba + mtsr AVR32_EVBA, r0 + + // Enable the exception processing. + csrf AVR32_SR_EM_OFFSET + + // Load initialized data having a global lifetime from the data LMA. + lda.w r0, _data + lda.w r1, _edata + cp r0, r1 + brhs idata_load_loop_end + lda.w r2, _data_lma +idata_load_loop: + ld.d r4, r2++ + st.d r0++, r4 + cp r0, r1 + brlo idata_load_loop +idata_load_loop_end: + + // Clear uninitialized data having a global lifetime in the blank static storage section. + lda.w r0, __bss_start + lda.w r1, _end + cp r0, r1 + brhs udata_clear_loop_end + mov r2, 0 + mov r3, 0 +udata_clear_loop: + st.d r0++, r2 + cp r0, r1 + brlo udata_clear_loop +udata_clear_loop_end: + +#ifdef CONFIG_FRAME_POINTER + // Safety: Set the default "return" @ to the exit routine address. + lda.w lr, exit +#endif + + // Start the show. + lda.w pc, main + + +//! \endverbatim +//! @} diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h new file mode 100644 index 000000000..885be7fb9 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/compiler.h @@ -0,0 +1,1145 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Compiler file for AVR32. + * + * This file defines commonly used types and macros. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _COMPILER_H_ +#define _COMPILER_H_ + +#if ((defined __GNUC__) && (defined __AVR32__)) || (defined __ICCAVR32__ || defined __AAVR32__) +# include <avr32/io.h> +#endif +#if (defined __ICCAVR32__) +# include <intrinsics.h> +#endif +#include "preprocessor.h" + +#include "parts.h" + + +//_____ D E C L A R A T I O N S ____________________________________________ + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +#include <stddef.h> +#include <stdlib.h> + + +#if (defined __ICCAVR32__) + +/*! \name Compiler Keywords + * + * Port of some keywords from GNU GCC for AVR32 to IAR Embedded Workbench for Atmel AVR32. + */ +//! @{ +#define __asm__ asm +#define __inline__ inline +#define __volatile__ +//! @} + +#endif + + +/*! \name Usual Types + */ +//! @{ +typedef unsigned char Bool; //!< Boolean. +#ifndef __cplusplus +#if !defined(__bool_true_false_are_defined) +typedef unsigned char bool; //!< Boolean. +#endif +#endif +typedef signed char S8 ; //!< 8-bit signed integer. +typedef unsigned char U8 ; //!< 8-bit unsigned integer. +typedef signed short int S16; //!< 16-bit signed integer. +typedef unsigned short int U16; //!< 16-bit unsigned integer. +typedef signed long int S32; //!< 32-bit signed integer. +typedef unsigned long int U32; //!< 32-bit unsigned integer. +typedef signed long long int S64; //!< 64-bit signed integer. +typedef unsigned long long int U64; //!< 64-bit unsigned integer. +typedef float F32; //!< 32-bit floating-point number. +typedef double F64; //!< 64-bit floating-point number. +//! @} + + +/*! \name Status Types + */ +//! @{ +typedef Bool Status_bool_t; //!< Boolean status. +typedef U8 Status_t; //!< 8-bit-coded status. +//! @} + + +/*! \name Aliasing Aggregate Types + */ +//! @{ + +//! 16-bit union. +typedef union +{ + S16 s16 ; + U16 u16 ; + S8 s8 [2]; + U8 u8 [2]; +} Union16; + +//! 32-bit union. +typedef union +{ + S32 s32 ; + U32 u32 ; + S16 s16[2]; + U16 u16[2]; + S8 s8 [4]; + U8 u8 [4]; +} Union32; + +//! 64-bit union. +typedef union +{ + S64 s64 ; + U64 u64 ; + S32 s32[2]; + U32 u32[2]; + S16 s16[4]; + U16 u16[4]; + S8 s8 [8]; + U8 u8 [8]; +} Union64; + +//! Union of pointers to 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + S64 *s64ptr; + U64 *u64ptr; + S32 *s32ptr; + U32 *u32ptr; + S16 *s16ptr; + U16 *u16ptr; + S8 *s8ptr ; + U8 *u8ptr ; +} UnionPtr; + +//! Union of pointers to volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + volatile S64 *s64ptr; + volatile U64 *u64ptr; + volatile S32 *s32ptr; + volatile U32 *u32ptr; + volatile S16 *s16ptr; + volatile U16 *u16ptr; + volatile S8 *s8ptr ; + volatile U8 *u8ptr ; +} UnionVPtr; + +//! Union of pointers to constant 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + const S64 *s64ptr; + const U64 *u64ptr; + const S32 *s32ptr; + const U32 *u32ptr; + const S16 *s16ptr; + const U16 *u16ptr; + const S8 *s8ptr ; + const U8 *u8ptr ; +} UnionCPtr; + +//! Union of pointers to constant volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef union +{ + const volatile S64 *s64ptr; + const volatile U64 *u64ptr; + const volatile S32 *s32ptr; + const volatile U32 *u32ptr; + const volatile S16 *s16ptr; + const volatile U16 *u16ptr; + const volatile S8 *s8ptr ; + const volatile U8 *u8ptr ; +} UnionCVPtr; + +//! Structure of pointers to 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + S64 *s64ptr; + U64 *u64ptr; + S32 *s32ptr; + U32 *u32ptr; + S16 *s16ptr; + U16 *u16ptr; + S8 *s8ptr ; + U8 *u8ptr ; +} StructPtr; + +//! Structure of pointers to volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + volatile S64 *s64ptr; + volatile U64 *u64ptr; + volatile S32 *s32ptr; + volatile U32 *u32ptr; + volatile S16 *s16ptr; + volatile U16 *u16ptr; + volatile S8 *s8ptr ; + volatile U8 *u8ptr ; +} StructVPtr; + +//! Structure of pointers to constant 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + const S64 *s64ptr; + const U64 *u64ptr; + const S32 *s32ptr; + const U32 *u32ptr; + const S16 *s16ptr; + const U16 *u16ptr; + const S8 *s8ptr ; + const U8 *u8ptr ; +} StructCPtr; + +//! Structure of pointers to constant volatile 64-, 32-, 16- and 8-bit unsigned integers. +typedef struct +{ + const volatile S64 *s64ptr; + const volatile U64 *u64ptr; + const volatile S32 *s32ptr; + const volatile U32 *u32ptr; + const volatile S16 *s16ptr; + const volatile U16 *u16ptr; + const volatile S8 *s8ptr ; + const volatile U8 *u8ptr ; +} StructCVPtr; + +//! @} + +#endif // __AVR32_ABI_COMPILER__ + + +//_____ M A C R O S ________________________________________________________ + +/*! \name Usual Constants + */ +//! @{ +#define DISABLE 0 +#define ENABLE 1 +#define DISABLED 0 +#define ENABLED 1 +#define OFF 0 +#define ON 1 +#define FALSE 0 +#define TRUE 1 +#ifndef __cplusplus +#if !defined(__bool_true_false_are_defined) +#define false FALSE +#define true TRUE +#endif +#endif +#define KO 0 +#define OK 1 +#define PASS 0 +#define FAIL 1 +#define LOW 0 +#define HIGH 1 +#define CLR 0 +#define SET 1 +//! @} + + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +/*! \name Bit-Field Handling + */ +//! @{ + +/*! \brief Reads the bits of a value specified by a given bit-mask. + * + * \param value Value to read bits from. + * \param mask Bit-mask indicating bits to read. + * + * \return Read bits. + */ +#define Rd_bits( value, mask) ((value) & (mask)) + +/*! \brief Writes the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue to write bits to. + * \param mask Bit-mask indicating bits to write. + * \param bits Bits to write. + * + * \return Resulting value with written bits. + */ +#define Wr_bits(lvalue, mask, bits) ((lvalue) = ((lvalue) & ~(mask)) |\ + ((bits ) & (mask))) + +/*! \brief Tests the bits of a value specified by a given bit-mask. + * + * \param value Value of which to test bits. + * \param mask Bit-mask indicating bits to test. + * + * \return \c 1 if at least one of the tested bits is set, else \c 0. + */ +#define Tst_bits( value, mask) (Rd_bits(value, mask) != 0) + +/*! \brief Clears the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue of which to clear bits. + * \param mask Bit-mask indicating bits to clear. + * + * \return Resulting value with cleared bits. + */ +#define Clr_bits(lvalue, mask) ((lvalue) &= ~(mask)) + +/*! \brief Sets the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue of which to set bits. + * \param mask Bit-mask indicating bits to set. + * + * \return Resulting value with set bits. + */ +#define Set_bits(lvalue, mask) ((lvalue) |= (mask)) + +/*! \brief Toggles the bits of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue of which to toggle bits. + * \param mask Bit-mask indicating bits to toggle. + * + * \return Resulting value with toggled bits. + */ +#define Tgl_bits(lvalue, mask) ((lvalue) ^= (mask)) + +/*! \brief Reads the bit-field of a value specified by a given bit-mask. + * + * \param value Value to read a bit-field from. + * \param mask Bit-mask indicating the bit-field to read. + * + * \return Read bit-field. + */ +#define Rd_bitfield( value, mask) (Rd_bits( value, mask) >> ctz(mask)) + +/*! \brief Writes the bit-field of a C lvalue specified by a given bit-mask. + * + * \param lvalue C lvalue to write a bit-field to. + * \param mask Bit-mask indicating the bit-field to write. + * \param bitfield Bit-field to write. + * + * \return Resulting value with written bit-field. + */ +#define Wr_bitfield(lvalue, mask, bitfield) (Wr_bits(lvalue, mask, (U32)(bitfield) << ctz(mask))) + +//! @} + + +/*! \brief This macro is used to test fatal errors. + * + * The macro tests if the expression is FALSE. If it is, a fatal error is + * detected and the application hangs up. + * + * \param expr Expression to evaluate and supposed to be nonzero. + */ +#ifdef _ASSERT_ENABLE_ + #define Assert(expr) \ + {\ + if (!(expr)) while (TRUE);\ + } +#else + #define Assert(expr) +#endif + + +/*! \name Zero-Bit Counting + * + * Under AVR32-GCC, __builtin_clz and __builtin_ctz behave like macros when + * applied to constant expressions (values known at compile time), so they are + * more optimized than the use of the corresponding assembly instructions and + * they can be used as constant expressions e.g. to initialize objects having + * static storage duration, and like the corresponding assembly instructions + * when applied to non-constant expressions (values unknown at compile time), so + * they are more optimized than an assembly periphrasis. Hence, clz and ctz + * ensure a possible and optimized behavior for both constant and non-constant + * expressions. + */ +//! @{ + +/*! \brief Counts the leading zero bits of the given value considered as a 32-bit integer. + * + * \param u Value of which to count the leading zero bits. + * + * \return The count of leading zero bits in \a u. + */ +#if (defined __GNUC__) + #define clz(u) __builtin_clz(u) +#elif (defined __ICCAVR32__) + #define clz(u) __count_leading_zeros(u) +#endif + +/*! \brief Counts the trailing zero bits of the given value considered as a 32-bit integer. + * + * \param u Value of which to count the trailing zero bits. + * + * \return The count of trailing zero bits in \a u. + */ +#if (defined __GNUC__) + #define ctz(u) __builtin_ctz(u) +#elif (defined __ICCAVR32__) + #define ctz(u) __count_trailing_zeros(u) +#endif + +//! @} + + +/*! \name Bit Reversing + */ +//! @{ + +/*! \brief Reverses the bits of \a u8. + * + * \param u8 U8 of which to reverse the bits. + * + * \return Value resulting from \a u8 with reversed bits. + */ +#define bit_reverse8(u8) ((U8)(bit_reverse32((U8)(u8)) >> 24)) + +/*! \brief Reverses the bits of \a u16. + * + * \param u16 U16 of which to reverse the bits. + * + * \return Value resulting from \a u16 with reversed bits. + */ +#define bit_reverse16(u16) ((U16)(bit_reverse32((U16)(u16)) >> 16)) + +/*! \brief Reverses the bits of \a u32. + * + * \param u32 U32 of which to reverse the bits. + * + * \return Value resulting from \a u32 with reversed bits. + */ +#if (defined __GNUC__) + #define bit_reverse32(u32) \ + (\ + {\ + unsigned int __value = (U32)(u32);\ + __asm__ ("brev\t%0" : "+r" (__value) : : "cc");\ + (U32)__value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define bit_reverse32(u32) ((U32)__bit_reverse((U32)(u32))) +#endif + +/*! \brief Reverses the bits of \a u64. + * + * \param u64 U64 of which to reverse the bits. + * + * \return Value resulting from \a u64 with reversed bits. + */ +#define bit_reverse64(u64) ((U64)(((U64)bit_reverse32((U64)(u64) >> 32)) |\ + ((U64)bit_reverse32((U64)(u64)) << 32))) + +//! @} + + +/*! \name Alignment + */ +//! @{ + +/*! \brief Tests alignment of the number \a val with the \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return \c 1 if the number \a val is aligned with the \a n boundary, else \c 0. + */ +#define Test_align(val, n ) (!Tst_bits( val, (n) - 1 ) ) + +/*! \brief Gets alignment of the number \a val with respect to the \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return Alignment of the number \a val with respect to the \a n boundary. + */ +#define Get_align( val, n ) ( Rd_bits( val, (n) - 1 ) ) + +/*! \brief Sets alignment of the lvalue number \a lval to \a alg with respect to the \a n boundary. + * + * \param lval Input/output lvalue. + * \param n Boundary. + * \param alg Alignment. + * + * \return New value of \a lval resulting from its alignment set to \a alg with respect to the \a n boundary. + */ +#define Set_align(lval, n, alg) ( Wr_bits(lval, (n) - 1, alg) ) + +/*! \brief Aligns the number \a val with the upper \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return Value resulting from the number \a val aligned with the upper \a n boundary. + */ +#define Align_up( val, n ) (((val) + ((n) - 1)) & ~((n) - 1)) + +/*! \brief Aligns the number \a val with the lower \a n boundary. + * + * \param val Input value. + * \param n Boundary. + * + * \return Value resulting from the number \a val aligned with the lower \a n boundary. + */ +#define Align_down(val, n ) ( (val) & ~((n) - 1)) + +//! @} + + +/*! \name Mathematics + * + * The same considerations as for clz and ctz apply here but AVR32-GCC does not + * provide built-in functions to access the assembly instructions abs, min and + * max and it does not produce them by itself in most cases, so two sets of + * macros are defined here: + * - Abs, Min and Max to apply to constant expressions (values known at + * compile time); + * - abs, min and max to apply to non-constant expressions (values unknown at + * compile time). + */ +//! @{ + +/*! \brief Takes the absolute value of \a a. + * + * \param a Input value. + * + * \return Absolute value of \a a. + * + * \note More optimized if only used with values known at compile time. + */ +#define Abs(a) (((a) < 0 ) ? -(a) : (a)) + +/*! \brief Takes the minimal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Minimal value of \a a and \a b. + * + * \note More optimized if only used with values known at compile time. + */ +#define Min(a, b) (((a) < (b)) ? (a) : (b)) + +/*! \brief Takes the maximal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Maximal value of \a a and \a b. + * + * \note More optimized if only used with values known at compile time. + */ +#define Max(a, b) (((a) > (b)) ? (a) : (b)) + +/*! \brief Takes the absolute value of \a a. + * + * \param a Input value. + * + * \return Absolute value of \a a. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define abs(a) \ + (\ + {\ + int __value = (a);\ + __asm__ ("abs\t%0" : "+r" (__value) : : "cc");\ + __value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define abs(a) Abs(a) +#endif + +/*! \brief Takes the minimal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Minimal value of \a a and \a b. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define min(a, b) \ + (\ + {\ + int __value, __arg_a = (a), __arg_b = (b);\ + __asm__ ("min\t%0, %1, %2" : "=r" (__value) : "r" (__arg_a), "r" (__arg_b));\ + __value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define min(a, b) __min(a, b) +#endif + +/*! \brief Takes the maximal value of \a a and \a b. + * + * \param a Input value. + * \param b Input value. + * + * \return Maximal value of \a a and \a b. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define max(a, b) \ + (\ + {\ + int __value, __arg_a = (a), __arg_b = (b);\ + __asm__ ("max\t%0, %1, %2" : "=r" (__value) : "r" (__arg_a), "r" (__arg_b));\ + __value;\ + }\ + ) +#elif (defined __ICCAVR32__) + #define max(a, b) __max(a, b) +#endif + +//! @} + + +/*! \brief Calls the routine at address \a addr. + * + * It generates a long call opcode. + * + * For example, `Long_call(0x80000000)' generates a software reset on a UC3 if + * it is invoked from the CPU supervisor mode. + * + * \param addr Address of the routine to call. + * + * \note It may be used as a long jump opcode in some special cases. + */ +#define Long_call(addr) ((*(void (*)(void))(addr))()) + +/*! \brief Resets the CPU by software. + * + * \warning It shall not be called from the CPU application mode. + */ +#if (defined __GNUC__) + #define Reset_CPU() \ + (\ + {\ + __asm__ __volatile__ (\ + "lddpc r9, 3f\n\t"\ + "mfsr r8, %[SR]\n\t"\ + "bfextu r8, r8, %[SR_M_OFFSET], %[SR_M_SIZE]\n\t"\ + "cp.w r8, 0b001\n\t"\ + "breq 0f\n\t"\ + "sub r8, pc, $ - 1f\n\t"\ + "pushm r8-r9\n\t"\ + "rete\n"\ + "0:\n\t"\ + "mtsr %[SR], r9\n"\ + "1:\n\t"\ + "mov r0, 0\n\t"\ + "mov r1, 0\n\t"\ + "mov r2, 0\n\t"\ + "mov r3, 0\n\t"\ + "mov r4, 0\n\t"\ + "mov r5, 0\n\t"\ + "mov r6, 0\n\t"\ + "mov r7, 0\n\t"\ + "mov r8, 0\n\t"\ + "mov r9, 0\n\t"\ + "mov r10, 0\n\t"\ + "mov r11, 0\n\t"\ + "mov r12, 0\n\t"\ + "mov sp, 0\n\t"\ + "stdsp sp[0], sp\n\t"\ + "ldmts sp, sp\n\t"\ + "mov lr, 0\n\t"\ + "lddpc pc, 2f\n\t"\ + ".balign 4\n"\ + "2:\n\t"\ + ".word _start\n"\ + "3:\n\t"\ + ".word %[RESET_SR]"\ + :\ + : [SR] "i" (AVR32_SR),\ + [SR_M_OFFSET] "i" (AVR32_SR_M_OFFSET),\ + [SR_M_SIZE] "i" (AVR32_SR_M_SIZE),\ + [RESET_SR] "i" (AVR32_SR_GM_MASK | AVR32_SR_EM_MASK | (AVR32_SR_M_SUP << AVR32_SR_M_OFFSET))\ + );\ + }\ + ) +#elif (defined __ICCAVR32__) + #define Reset_CPU() \ + {\ + extern void *volatile __program_start;\ + __asm__ __volatile__ (\ + "mov r7, LWRD(__program_start)\n\t"\ + "orh r7, HWRD(__program_start)\n\t"\ + "mov r9, LWRD("ASTRINGZ(AVR32_SR_GM_MASK | AVR32_SR_EM_MASK | (AVR32_SR_M_SUP << AVR32_SR_M_OFFSET))")\n\t"\ + "orh r9, HWRD("ASTRINGZ(AVR32_SR_GM_MASK | AVR32_SR_EM_MASK | (AVR32_SR_M_SUP << AVR32_SR_M_OFFSET))")\n\t"\ + "mfsr r8, "ASTRINGZ(AVR32_SR)"\n\t"\ + "bfextu r8, r8, "ASTRINGZ(AVR32_SR_M_OFFSET)", "ASTRINGZ(AVR32_SR_M_SIZE)"\n\t"\ + "cp.w r8, 001b\n\t"\ + "breq $ + 10\n\t"\ + "sub r8, pc, -12\n\t"\ + "pushm r8-r9\n\t"\ + "rete\n\t"\ + "mtsr "ASTRINGZ(AVR32_SR)", r9\n\t"\ + "mov r0, 0\n\t"\ + "mov r1, 0\n\t"\ + "mov r2, 0\n\t"\ + "mov r3, 0\n\t"\ + "mov r4, 0\n\t"\ + "mov r5, 0\n\t"\ + "mov r6, 0\n\t"\ + "st.w r0[4], r7\n\t"\ + "mov r7, 0\n\t"\ + "mov r8, 0\n\t"\ + "mov r9, 0\n\t"\ + "mov r10, 0\n\t"\ + "mov r11, 0\n\t"\ + "mov r12, 0\n\t"\ + "mov sp, 0\n\t"\ + "stdsp sp[0], sp\n\t"\ + "ldmts sp, sp\n\t"\ + "mov lr, 0\n\t"\ + "ld.w pc, lr[4]"\ + );\ + __program_start;\ + } +#endif + + +/*! \name System Register Access + */ +//! @{ + +/*! \brief Gets the value of the \a sysreg system register. + * + * \param sysreg Address of the system register of which to get the value. + * + * \return Value of the \a sysreg system register. + */ +#if (defined __GNUC__) + #define Get_system_register(sysreg) __builtin_mfsr(sysreg) +#elif (defined __ICCAVR32__) + #define Get_system_register(sysreg) __get_system_register(sysreg) +#endif + +/*! \brief Sets the value of the \a sysreg system register to \a value. + * + * \param sysreg Address of the system register of which to set the value. + * \param value Value to set the \a sysreg system register to. + */ +#if (defined __GNUC__) + #define Set_system_register(sysreg, value) __builtin_mtsr(sysreg, value) +#elif (defined __ICCAVR32__) + #define Set_system_register(sysreg, value) __set_system_register(sysreg, value) +#endif + +//! @} + + +/*! \name CPU Status Register Access + */ +//! @{ + +/*! \brief Tells whether exceptions are globally enabled. + * + * \return \c 1 if exceptions are globally enabled, else \c 0. + */ +#define Is_global_exception_enabled() (!Tst_bits(Get_system_register(AVR32_SR), AVR32_SR_EM_MASK)) + +/*! \brief Disables exceptions globally. + */ +#if (defined __GNUC__) + #define Disable_global_exception() ({__asm__ __volatile__ ("ssrf\t%0" : : "i" (AVR32_SR_EM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Disable_global_exception() (__set_status_flag(AVR32_SR_EM_OFFSET)) +#endif + +/*! \brief Enables exceptions globally. + */ +#if (defined __GNUC__) + #define Enable_global_exception() ({__asm__ __volatile__ ("csrf\t%0" : : "i" (AVR32_SR_EM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Enable_global_exception() (__clear_status_flag(AVR32_SR_EM_OFFSET)) +#endif + +/*! \brief Tells whether interrupts are globally enabled. + * + * \return \c 1 if interrupts are globally enabled, else \c 0. + */ +#define Is_global_interrupt_enabled() (!Tst_bits(Get_system_register(AVR32_SR), AVR32_SR_GM_MASK)) + +/*! \brief Disables interrupts globally. + */ +#if (defined __GNUC__) + #define Disable_global_interrupt() ({__asm__ __volatile__ ("ssrf\t%0" : : "i" (AVR32_SR_GM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Disable_global_interrupt() (__disable_interrupt()) +#endif + +/*! \brief Enables interrupts globally. + */ +#if (defined __GNUC__) + #define Enable_global_interrupt() ({__asm__ __volatile__ ("csrf\t%0" : : "i" (AVR32_SR_GM_OFFSET));}) +#elif (defined __ICCAVR32__) + #define Enable_global_interrupt() (__enable_interrupt()) +#endif + +/*! \brief Tells whether interrupt level \a int_level is enabled. + * + * \param int_level Interrupt level (0 to 3). + * + * \return \c 1 if interrupt level \a int_level is enabled, else \c 0. + */ +#define Is_interrupt_level_enabled(int_level) (!Tst_bits(Get_system_register(AVR32_SR), TPASTE3(AVR32_SR_I, int_level, M_MASK))) + +/*! \brief Disables interrupt level \a int_level. + * + * \param int_level Interrupt level to disable (0 to 3). + */ +#if (defined __GNUC__) + #define Disable_interrupt_level(int_level) ({__asm__ __volatile__ ("ssrf\t%0" : : "i" (TPASTE3(AVR32_SR_I, int_level, M_OFFSET)));}) +#elif (defined __ICCAVR32__) + #define Disable_interrupt_level(int_level) (__set_status_flag(TPASTE3(AVR32_SR_I, int_level, M_OFFSET))) +#endif + +/*! \brief Enables interrupt level \a int_level. + * + * \param int_level Interrupt level to enable (0 to 3). + */ +#if (defined __GNUC__) + #define Enable_interrupt_level(int_level) ({__asm__ __volatile__ ("csrf\t%0" : : "i" (TPASTE3(AVR32_SR_I, int_level, M_OFFSET)));}) +#elif (defined __ICCAVR32__) + #define Enable_interrupt_level(int_level) (__clear_status_flag(TPASTE3(AVR32_SR_I, int_level, M_OFFSET))) +#endif + +/*! \brief Protects subsequent code from interrupts. + */ +#define AVR32_ENTER_CRITICAL_REGION( ) \ + { \ + Bool global_interrupt_enabled = Is_global_interrupt_enabled(); \ + Disable_global_interrupt(); // Disable the appropriate interrupts. + +/*! \brief This macro must always be used in conjunction with AVR32_ENTER_CRITICAL_REGION + * so that interrupts are enabled again. + */ +#define AVR32_LEAVE_CRITICAL_REGION( ) \ + if (global_interrupt_enabled) Enable_global_interrupt(); \ + } + +//! @} + + +/*! \name Debug Register Access + */ +//! @{ + +/*! \brief Gets the value of the \a dbgreg debug register. + * + * \param dbgreg Address of the debug register of which to get the value. + * + * \return Value of the \a dbgreg debug register. + */ +#if (defined __GNUC__) + #define Get_debug_register(dbgreg) __builtin_mfdr(dbgreg) +#elif (defined __ICCAVR32__) + #define Get_debug_register(dbgreg) __get_debug_register(dbgreg) +#endif + +/*! \brief Sets the value of the \a dbgreg debug register to \a value. + * + * \param dbgreg Address of the debug register of which to set the value. + * \param value Value to set the \a dbgreg debug register to. + */ +#if (defined __GNUC__) + #define Set_debug_register(dbgreg, value) __builtin_mtdr(dbgreg, value) +#elif (defined __ICCAVR32__) + #define Set_debug_register(dbgreg, value) __set_debug_register(dbgreg, value) +#endif + +//! @} + +#endif // __AVR32_ABI_COMPILER__ + + +//! Boolean evaluating MCU little endianism. +#if ((defined __GNUC__) && (defined __AVR32__)) || ((defined __ICCAVR32__) || (defined __AAVR32__)) + #define LITTLE_ENDIAN_MCU FALSE +#else + #error If you are here, you should check what is exactly the processor you are using... + #define LITTLE_ENDIAN_MCU FALSE +#endif + +// Check that MCU endianism is correctly defined. +#ifndef LITTLE_ENDIAN_MCU + #error YOU MUST define the MCU endianism with LITTLE_ENDIAN_MCU: either FALSE or TRUE +#endif + +//! Boolean evaluating MCU big endianism. +#define BIG_ENDIAN_MCU (!LITTLE_ENDIAN_MCU) + + +#ifdef __AVR32_ABI_COMPILER__ // Automatically defined when compiling for AVR32, not when assembling. + +/*! \name MCU Endianism Handling + */ +//! @{ + +#if (LITTLE_ENDIAN_MCU==TRUE) + #define LSB(u16) (((U8 *)&(u16))[0]) //!< Least significant byte of \a u16. + #define MSB(u16) (((U8 *)&(u16))[1]) //!< Most significant byte of \a u16. + + #define LSH(u32) (((U16 *)&(u32))[0]) //!< Least significant half-word of \a u32. + #define MSH(u32) (((U16 *)&(u32))[1]) //!< Most significant half-word of \a u32. + #define LSB0W(u32) (((U8 *)&(u32))[0]) //!< Least significant byte of 1st rank of \a u32. + #define LSB1W(u32) (((U8 *)&(u32))[1]) //!< Least significant byte of 2nd rank of \a u32. + #define LSB2W(u32) (((U8 *)&(u32))[2]) //!< Least significant byte of 3rd rank of \a u32. + #define LSB3W(u32) (((U8 *)&(u32))[3]) //!< Least significant byte of 4th rank of \a u32. + #define MSB3W(u32) LSB0W(u32) //!< Most significant byte of 4th rank of \a u32. + #define MSB2W(u32) LSB1W(u32) //!< Most significant byte of 3rd rank of \a u32. + #define MSB1W(u32) LSB2W(u32) //!< Most significant byte of 2nd rank of \a u32. + #define MSB0W(u32) LSB3W(u32) //!< Most significant byte of 1st rank of \a u32. + + #define LSW(u64) (((U32 *)&(u64))[0]) //!< Least significant word of \a u64. + #define MSW(u64) (((U32 *)&(u64))[1]) //!< Most significant word of \a u64. + #define LSH0(u64) (((U16 *)&(u64))[0]) //!< Least significant half-word of 1st rank of \a u64. + #define LSH1(u64) (((U16 *)&(u64))[1]) //!< Least significant half-word of 2nd rank of \a u64. + #define LSH2(u64) (((U16 *)&(u64))[2]) //!< Least significant half-word of 3rd rank of \a u64. + #define LSH3(u64) (((U16 *)&(u64))[3]) //!< Least significant half-word of 4th rank of \a u64. + #define MSH3(u64) LSH0(u64) //!< Most significant half-word of 4th rank of \a u64. + #define MSH2(u64) LSH1(u64) //!< Most significant half-word of 3rd rank of \a u64. + #define MSH1(u64) LSH2(u64) //!< Most significant half-word of 2nd rank of \a u64. + #define MSH0(u64) LSH3(u64) //!< Most significant half-word of 1st rank of \a u64. + #define LSB0D(u64) (((U8 *)&(u64))[0]) //!< Least significant byte of 1st rank of \a u64. + #define LSB1D(u64) (((U8 *)&(u64))[1]) //!< Least significant byte of 2nd rank of \a u64. + #define LSB2D(u64) (((U8 *)&(u64))[2]) //!< Least significant byte of 3rd rank of \a u64. + #define LSB3D(u64) (((U8 *)&(u64))[3]) //!< Least significant byte of 4th rank of \a u64. + #define LSB4D(u64) (((U8 *)&(u64))[4]) //!< Least significant byte of 5th rank of \a u64. + #define LSB5D(u64) (((U8 *)&(u64))[5]) //!< Least significant byte of 6th rank of \a u64. + #define LSB6D(u64) (((U8 *)&(u64))[6]) //!< Least significant byte of 7th rank of \a u64. + #define LSB7D(u64) (((U8 *)&(u64))[7]) //!< Least significant byte of 8th rank of \a u64. + #define MSB7D(u64) LSB0D(u64) //!< Most significant byte of 8th rank of \a u64. + #define MSB6D(u64) LSB1D(u64) //!< Most significant byte of 7th rank of \a u64. + #define MSB5D(u64) LSB2D(u64) //!< Most significant byte of 6th rank of \a u64. + #define MSB4D(u64) LSB3D(u64) //!< Most significant byte of 5th rank of \a u64. + #define MSB3D(u64) LSB4D(u64) //!< Most significant byte of 4th rank of \a u64. + #define MSB2D(u64) LSB5D(u64) //!< Most significant byte of 3rd rank of \a u64. + #define MSB1D(u64) LSB6D(u64) //!< Most significant byte of 2nd rank of \a u64. + #define MSB0D(u64) LSB7D(u64) //!< Most significant byte of 1st rank of \a u64. + +#elif (BIG_ENDIAN_MCU==TRUE) + #define MSB(u16) (((U8 *)&(u16))[0]) //!< Most significant byte of \a u16. + #define LSB(u16) (((U8 *)&(u16))[1]) //!< Least significant byte of \a u16. + + #define MSH(u32) (((U16 *)&(u32))[0]) //!< Most significant half-word of \a u32. + #define LSH(u32) (((U16 *)&(u32))[1]) //!< Least significant half-word of \a u32. + #define MSB0W(u32) (((U8 *)&(u32))[0]) //!< Most significant byte of 1st rank of \a u32. + #define MSB1W(u32) (((U8 *)&(u32))[1]) //!< Most significant byte of 2nd rank of \a u32. + #define MSB2W(u32) (((U8 *)&(u32))[2]) //!< Most significant byte of 3rd rank of \a u32. + #define MSB3W(u32) (((U8 *)&(u32))[3]) //!< Most significant byte of 4th rank of \a u32. + #define LSB3W(u32) MSB0W(u32) //!< Least significant byte of 4th rank of \a u32. + #define LSB2W(u32) MSB1W(u32) //!< Least significant byte of 3rd rank of \a u32. + #define LSB1W(u32) MSB2W(u32) //!< Least significant byte of 2nd rank of \a u32. + #define LSB0W(u32) MSB3W(u32) //!< Least significant byte of 1st rank of \a u32. + + #define MSW(u64) (((U32 *)&(u64))[0]) //!< Most significant word of \a u64. + #define LSW(u64) (((U32 *)&(u64))[1]) //!< Least significant word of \a u64. + #define MSH0(u64) (((U16 *)&(u64))[0]) //!< Most significant half-word of 1st rank of \a u64. + #define MSH1(u64) (((U16 *)&(u64))[1]) //!< Most significant half-word of 2nd rank of \a u64. + #define MSH2(u64) (((U16 *)&(u64))[2]) //!< Most significant half-word of 3rd rank of \a u64. + #define MSH3(u64) (((U16 *)&(u64))[3]) //!< Most significant half-word of 4th rank of \a u64. + #define LSH3(u64) MSH0(u64) //!< Least significant half-word of 4th rank of \a u64. + #define LSH2(u64) MSH1(u64) //!< Least significant half-word of 3rd rank of \a u64. + #define LSH1(u64) MSH2(u64) //!< Least significant half-word of 2nd rank of \a u64. + #define LSH0(u64) MSH3(u64) //!< Least significant half-word of 1st rank of \a u64. + #define MSB0D(u64) (((U8 *)&(u64))[0]) //!< Most significant byte of 1st rank of \a u64. + #define MSB1D(u64) (((U8 *)&(u64))[1]) //!< Most significant byte of 2nd rank of \a u64. + #define MSB2D(u64) (((U8 *)&(u64))[2]) //!< Most significant byte of 3rd rank of \a u64. + #define MSB3D(u64) (((U8 *)&(u64))[3]) //!< Most significant byte of 4th rank of \a u64. + #define MSB4D(u64) (((U8 *)&(u64))[4]) //!< Most significant byte of 5th rank of \a u64. + #define MSB5D(u64) (((U8 *)&(u64))[5]) //!< Most significant byte of 6th rank of \a u64. + #define MSB6D(u64) (((U8 *)&(u64))[6]) //!< Most significant byte of 7th rank of \a u64. + #define MSB7D(u64) (((U8 *)&(u64))[7]) //!< Most significant byte of 8th rank of \a u64. + #define LSB7D(u64) MSB0D(u64) //!< Least significant byte of 8th rank of \a u64. + #define LSB6D(u64) MSB1D(u64) //!< Least significant byte of 7th rank of \a u64. + #define LSB5D(u64) MSB2D(u64) //!< Least significant byte of 6th rank of \a u64. + #define LSB4D(u64) MSB3D(u64) //!< Least significant byte of 5th rank of \a u64. + #define LSB3D(u64) MSB4D(u64) //!< Least significant byte of 4th rank of \a u64. + #define LSB2D(u64) MSB5D(u64) //!< Least significant byte of 3rd rank of \a u64. + #define LSB1D(u64) MSB6D(u64) //!< Least significant byte of 2nd rank of \a u64. + #define LSB0D(u64) MSB7D(u64) //!< Least significant byte of 1st rank of \a u64. + +#else + #error Unknown endianism. +#endif + +//! @} + + +/*! \name Endianism Conversion + * + * The same considerations as for clz and ctz apply here but AVR32-GCC's + * __builtin_bswap_16 and __builtin_bswap_32 do not behave like macros when + * applied to constant expressions, so two sets of macros are defined here: + * - Swap16, Swap32 and Swap64 to apply to constant expressions (values known + * at compile time); + * - swap16, swap32 and swap64 to apply to non-constant expressions (values + * unknown at compile time). + */ +//! @{ + +/*! \brief Toggles the endianism of \a u16 (by swapping its bytes). + * + * \param u16 U16 of which to toggle the endianism. + * + * \return Value resulting from \a u16 with toggled endianism. + * + * \note More optimized if only used with values known at compile time. + */ +#define Swap16(u16) ((U16)(((U16)(u16) >> 8) |\ + ((U16)(u16) << 8))) + +/*! \brief Toggles the endianism of \a u32 (by swapping its bytes). + * + * \param u32 U32 of which to toggle the endianism. + * + * \return Value resulting from \a u32 with toggled endianism. + * + * \note More optimized if only used with values known at compile time. + */ +#define Swap32(u32) ((U32)(((U32)Swap16((U32)(u32) >> 16)) |\ + ((U32)Swap16((U32)(u32)) << 16))) + +/*! \brief Toggles the endianism of \a u64 (by swapping its bytes). + * + * \param u64 U64 of which to toggle the endianism. + * + * \return Value resulting from \a u64 with toggled endianism. + * + * \note More optimized if only used with values known at compile time. + */ +#define Swap64(u64) ((U64)(((U64)Swap32((U64)(u64) >> 32)) |\ + ((U64)Swap32((U64)(u64)) << 32))) + +/*! \brief Toggles the endianism of \a u16 (by swapping its bytes). + * + * \param u16 U16 of which to toggle the endianism. + * + * \return Value resulting from \a u16 with toggled endianism. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define swap16(u16) ((U16)__builtin_bswap_16((U16)(u16))) +#elif (defined __ICCAVR32__) + #define swap16(u16) ((U16)__swap_bytes_in_halfwords((U16)(u16))) +#endif + +/*! \brief Toggles the endianism of \a u32 (by swapping its bytes). + * + * \param u32 U32 of which to toggle the endianism. + * + * \return Value resulting from \a u32 with toggled endianism. + * + * \note More optimized if only used with values unknown at compile time. + */ +#if (defined __GNUC__) + #define swap32(u32) ((U32)__builtin_bswap_32((U32)(u32))) +#elif (defined __ICCAVR32__) + #define swap32(u32) ((U32)__swap_bytes((U32)(u32))) +#endif + +/*! \brief Toggles the endianism of \a u64 (by swapping its bytes). + * + * \param u64 U64 of which to toggle the endianism. + * + * \return Value resulting from \a u64 with toggled endianism. + * + * \note More optimized if only used with values unknown at compile time. + */ +#define swap64(u64) ((U64)(((U64)swap32((U64)(u64) >> 32)) |\ + ((U64)swap32((U64)(u64)) << 32))) + +//! @} + + +/*! \name Target Abstraction + */ +//! @{ + +#define _GLOBEXT_ extern //!< extern storage-class specifier. +#define _CONST_TYPE_ const //!< const type qualifier. +#define _MEM_TYPE_SLOW_ //!< Slow memory type. +#define _MEM_TYPE_MEDFAST_ //!< Fairly fast memory type. +#define _MEM_TYPE_FAST_ //!< Fast memory type. + +typedef U8 Byte; //!< 8-bit unsigned integer. + +#define memcmp_ram2ram memcmp //!< Target-specific memcmp of RAM to RAM. +#define memcmp_code2ram memcmp //!< Target-specific memcmp of RAM to NVRAM. +#define memcpy_ram2ram memcpy //!< Target-specific memcpy from RAM to RAM. +#define memcpy_code2ram memcpy //!< Target-specific memcpy from NVRAM to RAM. + +#define LSB0(u32) LSB0W(u32) //!< Least significant byte of 1st rank of \a u32. +#define LSB1(u32) LSB1W(u32) //!< Least significant byte of 2nd rank of \a u32. +#define LSB2(u32) LSB2W(u32) //!< Least significant byte of 3rd rank of \a u32. +#define LSB3(u32) LSB3W(u32) //!< Least significant byte of 4th rank of \a u32. +#define MSB3(u32) MSB3W(u32) //!< Most significant byte of 4th rank of \a u32. +#define MSB2(u32) MSB2W(u32) //!< Most significant byte of 3rd rank of \a u32. +#define MSB1(u32) MSB1W(u32) //!< Most significant byte of 2nd rank of \a u32. +#define MSB0(u32) MSB0W(u32) //!< Most significant byte of 1st rank of \a u32. + +//! @} + +#endif // __AVR32_ABI_COMPILER__ + + +#endif // _COMPILER_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h new file mode 100644 index 000000000..ca516ee00 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/conf_isp.h @@ -0,0 +1,136 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ****************************************************************** + * + * \brief ISP configuration file. + * + * This file contains the possible external configuration of the ISP. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices with a USB module can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ***************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _CONF_ISP_H_ +#define _CONF_ISP_H_ + +#include <avr32/io.h> +#include "compiler.h" + + +//_____ D E F I N I T I O N S ______________________________________________ + +#define PRODUCT_MANUFACTURER_ID 0x58 +#define PRODUCT_FAMILY_ID 0x20 + +#define ISP_VERSION 0x10 +#define ISP_ID0 0x00 +#define ISP_ID1 0x00 + +#define ISP_CFG1 (*(volatile U32 *)ISP_CFG1_ADDRESS) +#define ISP_CFG1_ADDRESS (AVR32_FLASHC_USER_PAGE_ADDRESS + ISP_CFG1_OFFSET) +#define ISP_CFG1_OFFSET 0x000001FC +#define ISP_CFG1_SIZE 4 + +#define ISP_CFG1_BOOT_KEY1 16 +#define ISP_CFG1_BOOT_KEY1_MASK 0xFFFF0000 +#define ISP_CFG1_BOOT_KEY1_OFFSET 16 +#define ISP_CFG1_BOOT_KEY1_SIZE 16 +#define ISP_CFG1_BOOT_KEY1_VALUE 0xE11E + +#define ISP_CFG1_FORCE 9 +#define ISP_CFG1_FORCE_MASK 0x00000200 +#define ISP_CFG1_FORCE_OFFSET 9 +#define ISP_CFG1_FORCE_SIZE 1 + +#define ISP_CFG1_IO_COND_EN 8 +#define ISP_CFG1_IO_COND_EN_MASK 0x00000100 +#define ISP_CFG1_IO_COND_EN_OFFSET 8 +#define ISP_CFG1_IO_COND_EN_SIZE 1 + +#define ISP_CFG1_CRC8 0 +#define ISP_CFG1_CRC8_MASK 0x000000FF +#define ISP_CFG1_CRC8_OFFSET 0 +#define ISP_CFG1_CRC8_SIZE 8 +#define ISP_CFG1_CRC8_POLYNOMIAL 0x107 + +#define ISP_CFG2 (*(volatile U32 *)ISP_CFG2_ADDRESS) +#define ISP_CFG2_ADDRESS (AVR32_FLASHC_USER_PAGE_ADDRESS + ISP_CFG2_OFFSET) +#define ISP_CFG2_OFFSET 0x000001F8 +#define ISP_CFG2_SIZE 4 + +#define ISP_CFG2_BOOT_KEY 17 +#define ISP_CFG2_BOOT_KEY_MASK 0xFFFE0000 +#define ISP_CFG2_BOOT_KEY_OFFSET 17 +#define ISP_CFG2_BOOT_KEY_SIZE 15 +#define ISP_CFG2_BOOT_KEY_VALUE 0x494F + +#define ISP_CFG2_IO_COND_LEVEL 16 +#define ISP_CFG2_IO_COND_LEVEL_MASK 0x00010000 +#define ISP_CFG2_IO_COND_LEVEL_OFFSET 16 +#define ISP_CFG2_IO_COND_LEVEL_SIZE 1 + +#define ISP_CFG2_IO_COND_PIN 8 +#define ISP_CFG2_IO_COND_PIN_MASK 0x0000FF00 +#define ISP_CFG2_IO_COND_PIN_OFFSET 8 +#define ISP_CFG2_IO_COND_PIN_SIZE 8 + +#define ISP_CFG2_CRC8 0 +#define ISP_CFG2_CRC8_MASK 0x000000FF +#define ISP_CFG2_CRC8_OFFSET 0 +#define ISP_CFG2_CRC8_SIZE 8 +#define ISP_CFG2_CRC8_POLYNOMIAL 0x107 + +#define ISP_KEY (*(volatile U32 *)ISP_KEY_ADDRESS) +#define ISP_KEY_ADDRESS (AVR32_SRAM_ADDRESS + ISP_KEY_OFFSET) +#define ISP_KEY_OFFSET 0x00000000 +#define ISP_KEY_SIZE 4 +#define ISP_KEY_VALUE ('I' << 24 | 'S' << 16 | 'P' << 8 | 'K') + +#ifndef ISP_OSC + #define ISP_OSC 0 +#endif + +#define DFU_FRAME_LENGTH 2048 + +#define PROGRAM_START_ADDRESS (AVR32_FLASH_ADDRESS + PROGRAM_START_OFFSET) +#define PROGRAM_START_OFFSET 0x00002000 + + +#endif // _CONF_ISP_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/parts.h b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/parts.h new file mode 100644 index 000000000..6637b2f76 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/SOFTWARE_FRAMEWORK/UTILS/parts.h @@ -0,0 +1,203 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*This file is prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief Arch file for AVR32. + * + * This file defines common AVR32 UC3 series. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + ******************************************************************************/ + +/* Copyright (c) 2009 Atmel Corporation. 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 Atmel may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 4. This software may only be redistributed and used in connection with an Atmel + * AVR product. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE + * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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 + * + */ + +#ifndef _ARCH_H_ +#define _ARCH_H_ + +// UC3 A Series +#define UC3A0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3A0128__) || \ + defined (__AVR32_UC3A0256__) || \ + defined (__AVR32_UC3A0512__) || \ + defined (__AVR32_UC3A0512ES__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3A0128__) || \ + defined (__AT32UC3A0256__) || \ + defined (__AT32UC3A0512__) || \ + defined (__AT32UC3A0512ES__))) + +#define UC3A1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3A1128__) || \ + defined (__AVR32_UC3A1256__) || \ + defined (__AVR32_UC3A1512__) || \ + defined (__AVR32_UC3A1512ES__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3A1128__) || \ + defined (__AT32UC3A1256__) || \ + defined (__AT32UC3A1512__) || \ + defined (__AT32UC3A1512ES__))) + +#define UC3A3 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3A364__) || \ + defined (__AVR32_UC3A364S__) || \ + defined (__AVR32_UC3A3128__) || \ + defined (__AVR32_UC3A3128S__) || \ + defined (__AVR32_UC3A3256__) || \ + defined (__AVR32_UC3A3256S__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3A364__) || \ + defined (__AT32UC3A364S__) || \ + defined (__AT32UC3A3128__) || \ + defined (__AT32UC3A3128S__) || \ + defined (__AT32UC3A3256__) || \ + defined (__AT32UC3A3256S__))) + +#define UC3A (UC3A0 || UC3A1 || UC3A3) + +// UC3 B Series +#define UC3B0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3B064__) || \ + defined (__AVR32_UC3B0128__) || \ + defined (__AVR32_UC3B0256__) || \ + defined (__AVR32_UC3B0256ES__) || \ + defined (__AVR32_UC3B0512__) || \ + defined (__AVR32_UC3B0512REVC_))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3B064__) || \ + defined (__AT32UC3B0128__) || \ + defined (__AT32UC3B0256__) || \ + defined (__AT32UC3B0256ES__) || \ + defined (__AT32UC3B0512__) || \ + defined (__AT32UC3B0512REVC__))) + +#define UC3B1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3B164__) || \ + defined (__AVR32_UC3B1128__) || \ + defined (__AVR32_UC3B1256__) || \ + defined (__AVR32_UC3B1256ES__) || \ + defined (__AVR32_UC3B1512__) || \ + defined (__AVR32_UC3B1512ES__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3B164__) || \ + defined (__AT32UC3B1128__) || \ + defined (__AT32UC3B1256__) || \ + defined (__AT32UC3B1256ES__) || \ + defined (__AT32UC3B1512__) || \ + defined (__AT32UC3B1512REVC__))) + +#define UC3B (UC3B0 || UC3B1 ) + +// UC3 C Series +#define UC3C0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3C064C__) || \ + defined (__AVR32_UC3C0128C__) || \ + defined (__AVR32_UC3C0256C__) || \ + defined (__AVR32_UC3C0512CREVC__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3C064C__) || \ + defined (__AT32UC3C0128C__) || \ + defined (__AT32UC3C0256C__) || \ + defined (__AT32UC3C0512C__))) + +#define UC3C1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3C164C__) || \ + defined (__AVR32_UC3C1128C__) || \ + defined (__AVR32_UC3C1256C__) || \ + defined (__AVR32_UC3C1512CREVC__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3C164C__) || \ + defined (__AT32UC3C1128C__) || \ + defined (__AT32UC3C1256C__) || \ + defined (__AT32UC3C1512C__))) + +#define UC3C2 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3C264C__) || \ + defined (__AVR32_UC3C2128C__) || \ + defined (__AVR32_UC3C2256C__) || \ + defined (__AVR32_UC3C2512CREVC__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3C264C__) || \ + defined (__AT32UC3C2128C__) || \ + defined (__AT32UC3C2256C__) || \ + defined (__AT32UC3C2512C__))) + +#define UC3C (UC3C0 || UC3C1 || UC3C2) + +// UC3 L Device series +#define UC3L0 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L016__) || \ + defined (__AVR32_UC3L032__) || \ + defined (__AVR32_UC3L064__) || \ + defined (__AVR32_UC3L064REVB__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L016__) || \ + defined (__AT32UC3L032__) || \ + defined (__AT32UC3L064__) || \ + defined (__AT32UC3L064REVB__))) + +#define UC3L1 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L116__) || \ + defined (__AVR32_UC3L132__) || \ + defined (__AVR32_UC3L164__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L116__) || \ + defined (__AT32UC3L132__) || \ + defined (__AT32UC3L164__))) + +#define UC3L2 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L216__) || \ + defined (__AVR32_UC3L232__) || \ + defined (__AVR32_UC3L264__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L216__) || \ + defined (__AT32UC3L232__) || \ + defined (__AT32UC3L264__))) + +#define UC3L3 ( defined (__GNUC__) && \ + ( defined (__AVR32_UC3L316__) || \ + defined (__AVR32_UC3L332__) || \ + defined (__AVR32_UC3L364__))) \ + ||((defined(__ICCAVR32__) || defined(__AAVR32__)) && \ + ( defined (__AT32UC3L316__) || \ + defined (__AT32UC3L332__) || \ + defined (__AT32UC3L364__))) + +#define UC3L (UC3L0 || UC3L1 || UC3L2 || UC3L3) + +#endif // _ARCH_H_ diff --git a/libraries/WiFi/extras/wifi_dnld/src/clocks.c b/libraries/WiFi/extras/wifi_dnld/src/clocks.c new file mode 100644 index 000000000..cdd07fabe --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/clocks.c @@ -0,0 +1,101 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + + +#include <avr32/io.h> +#include "board.h" +#include "clocks.h" +#include "pm.h" +#include "flashc.h" +#include "gpio.h" + +/** + * Initializes the MCU system clocks. + */ +void +init_sys_clocks(void) +{ + /* switch to OSC0 to speed up the booting */ + pm_switch_to_osc0(&AVR32_PM, FOSC0, OSC0_STARTUP); + +#ifndef USE_PLL + return; +#endif + + /* For audio, ee have to use OSC1 on to generate the correct clockrate + * for the SSC + */ +#if OSC == 1 + /* start oscillator1 */ + pm_enable_osc1_crystal(&AVR32_PM, FOSC1); + pm_enable_clk1(&AVR32_PM, OSC1_STARTUP); +#endif + + /* configure pll multipliers */ + pm_pll_setup(&AVR32_PM, + 0, /* pll */ + PLL_MUL, /* mul */ + 1, /* div */ + OSC, /* osc */ + 16); /* lockcount */ + + /* set PLL operating range and divider (fpll = fvco/2) + * this gives PLL output = 66 MHz (62.0928 MHz for EVK1105/OSC1) + */ + pm_pll_set_option(&AVR32_PM, + 0, /* pll */ + 1, /* pll_freq */ + 1, /* pll_div2 */ + 0); /* pll_wbwdisable. */ + + + /* start PLL0 and wait for the lock */ + pm_pll_enable(&AVR32_PM, 0); + pm_wait_for_pll0_locked(&AVR32_PM); + + /* Set all peripheral clocks torun at master clock rate */ + pm_cksel(&AVR32_PM, + 0, /* pbadiv */ + 0, /* pbasel */ + 0, /* pbbdiv */ + 0, /* pbbsel */ + 0, /* hsbdiv */ + 0); /* hsbsel */ + + /* Set one waitstate for the flash */ + flashc_set_wait_state(1); + + /* Switch to PLL0 as the master clock */ + pm_switch_to_clock(&AVR32_PM, AVR32_PM_MCCTRL_MCSEL_PLL0); + +#if OSC == 1 + pm_configure_usb_clock(); +#endif +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/clocks.h b/libraries/WiFi/extras/wifi_dnld/src/clocks.h new file mode 100644 index 000000000..cceda2903 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/clocks.h @@ -0,0 +1,78 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +#ifndef CLOCKS_H +#define CLOCKS_H + +#include "board.h" + + +#if BOARD == EVK1100 +# define USE_PLL +# define OSC 0 +# define PLL_MUL 10 +#elif BOARD == EVK1101 +# define USE_PLL +# define OSC 0 +# define PLL_MUL 9 +#elif BOARD == EVK1104 +# define USE_PLL +# define OSC 0 +# define PLL_MUL 9 /* for some reason we cant use 66 MHz */ +#elif BOARD == EVK1105 +# define USE_PLL +# define OSC 1 +# define PLL_MUL 10 +#elif BOARD == ARDUINO +# define USE_PLL +# define OSC 0 +# define PLL_MUL 8 +#endif + +#if OSC == 0 +# define FOSC FOSC0 /* 12 MHz */ +#else +# define FOSC FOSC1 /* 11.2896 MHz */ +#endif + +#ifdef USE_PLL +# define FMCK_HZ ((FOSC * (PLL_MUL + 1)) / 2) +#else +# define FMCK_HZ FOSC +#endif + +#define FCPU_HZ FMCK_HZ +#define FHSB_HZ FCPU_HZ +#define FPBB_HZ FMCK_HZ +#define FPBA_HZ FMCK_HZ + +void init_sys_clocks(void); + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/flash_fw.c b/libraries/WiFi/extras/wifi_dnld/src/flash_fw.c new file mode 100644 index 000000000..75d35f6bf --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/flash_fw.c @@ -0,0 +1,125 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <avr32/io.h> + +#include "printf-stdarg.h" +#include "wl_fw.h" +#include "startup.h" +#include "nor_flash.h" +#include "gpio.h" + +#define GREEN_OFF() gpio_set_gpio_pin(LED0_GPIO) +#define GREEN_ON() gpio_clr_gpio_pin(LED0_GPIO) +#define GREEN_BLINK() gpio_tgl_gpio_pin(LED0_GPIO) +#define RED_OFF() gpio_set_gpio_pin(LED1_GPIO) +#define RED_ON() gpio_clr_gpio_pin(LED1_GPIO) +#define RED_BLINK() gpio_tgl_gpio_pin(LED1_GPIO) +#define BLUE_OFF() gpio_set_gpio_pin(LED2_GPIO) +#define BLUE_ON() gpio_clr_gpio_pin(LED2_GPIO) +#define BLUE_BLINK() gpio_tgl_gpio_pin(LED2_GPIO) + + +/** + * + */ +void +led_init(void) +{ + gpio_enable_gpio_pin(LED0_GPIO); + gpio_enable_gpio_pin(LED1_GPIO); + gpio_enable_gpio_pin(LED2_GPIO); + GREEN_OFF(); + RED_OFF(); + BLUE_OFF(); +} + + +int main(void) +{ + U32 pos, len; + + startup_init(); + printk("*** HD chip firmware upgrade ver 2.7 ***\n"); + led_init(); + flash_init(); + GREEN_ON(); + if (at45dbx_mem_check() == OK) + { + printk("Memory check... [ OK ]\n"); + } + else + { + RED_ON(); + GREEN_OFF(); + printk("Memory check... [FAIL]\n"); + return 0; + } + printk("Writing firmware data to flash\n"); + pos = 0; + while (pos < fw_len) { + if (fw_len - pos > SECTOR_SIZE) + len = SECTOR_SIZE; + else + len = fw_len - pos; + + flash_write(pos, fw_buf + pos, len); + pos += len; + } + + printk("Verifying firmware data\n"); + pos = 0; + while (pos < fw_len) { + static U8 page_buf[SECTOR_SIZE]; + U32 i; + + if (fw_len - pos > SECTOR_SIZE) + len = SECTOR_SIZE; + else + len = fw_len - pos; + + flash_read(pos, page_buf, len); + + for (i = 0; i < len; i++) + if (*(page_buf + i) != *(fw_buf + pos + i)) { + RED_ON(); + GREEN_OFF(); + printk("Verify failed at byte %d, 0x%02x != 0x%02x\n", + pos + i, *(page_buf + i), *(fw_buf + pos + i)); + return 0; + } + + + pos += len; + } + GREEN_OFF(); + BLUE_ON(); + printk("Firmware successfully stored in flash!\n"); + return 0; +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/license.txt b/libraries/WiFi/extras/wifi_dnld/src/license.txt new file mode 100644 index 000000000..e57439f37 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/license.txt @@ -0,0 +1,42 @@ + Copyright (C) 2009, H&D Wireless AB All rights reserved. + + The license to use this software in whole and in part and to + redistribute it in any form follows with the WiFi HW module from H&D + Wireless and is granted under the following restrictions: + + 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 H&D Wireless AB may not be used to endorse or promote + products derived from this software without specific prior written + permission. + + 4. The software may only be used together with hardware from H&D + Wireless all other use is prohibited. + + 5. The license to use and redistribute the software is granted + together with the purchase of a hardware platform on a one to one + basis + + 6. The binary code may not be reversed engineered or by other means + copied to circumvent this license. + + THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT + SHALL HD WIRELESS AB 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. + + For more information regarding this software license Contact H&D + Wireless AB (support@hd-wireless.se). diff --git a/libraries/WiFi/extras/wifi_dnld/src/nor_flash.c b/libraries/WiFi/extras/wifi_dnld/src/nor_flash.c new file mode 100644 index 000000000..011594923 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/nor_flash.c @@ -0,0 +1,99 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include <string.h> +#include "compiler.h" +#include "preprocessor.h" +#include "board.h" +#include "power_clocks_lib.h" +#include "gpio.h" +#include "spi.h" +#include "conf_at45dbx.h" +#include "at45dbx.h" +#include "clocks.h" + + +void flash_init(void) +{ + static const gpio_map_t AT45DBX_SPI_GPIO_MAP = { + { AT45DBX_SPI_SCK_PIN, AT45DBX_SPI_SCK_FUNCTION }, + { AT45DBX_SPI_MISO_PIN, AT45DBX_SPI_MISO_FUNCTION }, + { AT45DBX_SPI_MOSI_PIN, AT45DBX_SPI_MOSI_FUNCTION }, + { AT45DBX_SPI_NPCS2_PIN, AT45DBX_SPI_NPCS2_FUNCTION }, + }; + + spi_options_t spiOptions = { + .reg = AT45DBX_SPI_FIRST_NPCS, + .baudrate = AT45DBX_SPI_MASTER_SPEED, + .bits = AT45DBX_SPI_BITS, + .spck_delay = 0, + .trans_delay = 0, + .stay_act = 1, + .spi_mode = 0, + .modfdis = 1 + }; + + gpio_enable_module(AT45DBX_SPI_GPIO_MAP, + sizeof(AT45DBX_SPI_GPIO_MAP) / + sizeof(AT45DBX_SPI_GPIO_MAP[0])); + + spi_initMaster(AT45DBX_SPI, &spiOptions); + + spi_selectionMode(AT45DBX_SPI, 0, 0, 0); + spi_enable(AT45DBX_SPI); + + /* put up flash reset pin */ + gpio_set_gpio_pin(AT45DBX_CHIP_RESET); + + at45dbx_init(spiOptions, FPBA_HZ); +} + +void flash_write(U32 addr, const U8* buf, U32 len) +{ + U32 sector = addr / AT45DBX_SECTOR_SIZE; + U32 i; + Assert(addr % AT45DBX_SECTOR_SIZE == 0); + + at45dbx_write_open(sector); + for (i = 0; i < len; i++) + at45dbx_write_byte(buf[i]); + at45dbx_write_close(); +} + +void flash_read(U32 addr, U8* buf, U32 len) +{ + U32 sector = addr / AT45DBX_SECTOR_SIZE; + U32 i; + Assert(addr % AT45DBX_SECTOR_SIZE == 0); + + at45dbx_read_open(sector); + for (i = 0; i < len; i++) + buf[i] = at45dbx_read_byte(); + at45dbx_read_close(); +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/nor_flash.h b/libraries/WiFi/extras/wifi_dnld/src/nor_flash.h new file mode 100644 index 000000000..52a4a200a --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/nor_flash.h @@ -0,0 +1,41 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef NOR_FLASH_H +#define NOR_FLASH_H + +#include "at45dbx.h" + +#define SECTOR_SIZE AT45DBX_SECTOR_SIZE + +void flash_init(void); +void flash_write(U32 addr, const U8* buf, U32 len); +void flash_read(U32 addr, U8* buf, U32 len); + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.c b/libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.c new file mode 100644 index 000000000..86ab88e09 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.c @@ -0,0 +1,323 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/* This source file is part of the ATMEL AVR32-SoftwareFramework-AT32UC3A-1.4.0 Release */ + +/*This file has been prepared for Doxygen automatic documentation generation.*/ +/*! \file ********************************************************************* + * + * \brief sprintf functions to replace newlib for AVR32 UC3. + * + * - Compiler: IAR EWAVR32 and GNU GCC for AVR32 + * - Supported devices: All AVR32 devices can be used. + * - AppNote: + * + * \author Atmel Corporation: http://www.atmel.com \n + * Support and FAQ: http://support.atmel.no/ + * + *****************************************************************************/ + +/* Copyright (C) 2006-2008, Atmel Corporation 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 ATMEL may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY ATMEL ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ + +/* + Copyright 2001, 2002 Georges Menie (www.menie.org) + stdarg version contributed by Christian Ettinger + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2 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 Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +/* + putchar is the only external dependency for this file, + if you have a working putchar, leave it commented out. + If not, uncomment the define below and + replace outbyte(c) by your own function call. + +*/ + + +#include <sys/reent.h> +#include <stdarg.h> + +#define putchar(c) print_dbg_char(c) + +static void printchar(char **str, int c) +{ + extern int putchar(int c); + + if (str) { + **str = c; + ++(*str); + } + else (void)putchar(c); +} + +#define PAD_RIGHT 1 +#define PAD_ZERO 2 + +static int prints(char **out, const char *string, int width, int pad) +{ + register int pc = 0, padchar = ' '; + + if (width > 0) { + register int len = 0; + register const char *ptr; + for (ptr = string; *ptr; ++ptr) ++len; + if (len >= width) width = 0; + else width -= len; + if (pad & PAD_ZERO) padchar = '0'; + } + if (!(pad & PAD_RIGHT)) { + for ( ; width > 0; --width) { + printchar (out, padchar); + ++pc; + } + } + for ( ; *string ; ++string) { + printchar (out, *string); + ++pc; + } + for ( ; width > 0; --width) { + printchar (out, padchar); + ++pc; + } + + return pc; +} + +/* the following should be enough for 32 bit int */ +#define PRINT_BUF_LEN 12 + +static int printi(char **out, int i, int b, int sg, int width, int pad, int letbase) +{ + char print_buf[PRINT_BUF_LEN]; + register char *s; + register int t, neg = 0, pc = 0; + register unsigned int u = i; + + if (i == 0) { + print_buf[0] = '0'; + print_buf[1] = '\0'; + return prints (out, print_buf, width, pad); + } + + if (sg && b == 10 && i < 0) { + neg = 1; + u = -i; + } + + s = print_buf + PRINT_BUF_LEN-1; + *s = '\0'; + + while (u) { + t = u % b; + if( t >= 10 ) + t += letbase - '0' - 10; + *--s = t + '0'; + u /= b; + } + + if (neg) { + if( width && (pad & PAD_ZERO) ) { + printchar (out, '-'); + ++pc; + --width; + } + else { + *--s = '-'; + } + } + + return pc + prints (out, s, width, pad); +} + +int fprintf(__FILE *stream, const char *format, ...) +{ +return 0; +} +int printk_va(char **out, const char *format, va_list args ) +{ + register int width, pad; + register int pc = 0; + char scr[2]; + + for (; *format != 0; ++format) { + if (*format == '%') { + ++format; + width = pad = 0; + if (*format == '\0') break; + if (*format == '%') goto out; + if (*format == '-') { + ++format; + pad = PAD_RIGHT; + } + while (*format == '0') { + ++format; + pad |= PAD_ZERO; + } + for ( ; *format >= '0' && *format <= '9'; ++format) { + width *= 10; + width += *format - '0'; + } + if( *format == 's' ) { + register char *s = (char *)va_arg( args, int ); + pc += prints (out, s?s:"(null)", width, pad); + continue; + } + if( *format == 'd' ) { + pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a'); + continue; + } + if( *format == 'p' ) { + pad = 8; + pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a'); + continue; + } + if( *format == 'x' ) { + pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a'); + continue; + } + if( *format == 'X' ) { + pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A'); + continue; + } + if( *format == 'u' ) { + pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a'); + continue; + } + if( *format == 'c' ) { + /* char are converted to int then pushed on the stack */ + scr[0] = (char)va_arg( args, int ); + scr[1] = '\0'; + pc += prints (out, scr, width, pad); + continue; + } + } + else { + out: + printchar (out, *format); + ++pc; + } + } + if (out) **out = '\0'; + va_end( args ); + return pc; +} + +int printk(const char *format, ...) +{ + va_list args; + + va_start( args, format ); + return printk_va( 0, format, args ); +} + +int sprintf(char *out, const char *format, ...) +{ + va_list args; + + va_start( args, format ); + return printk_va( &out, format, args ); +} + +#ifdef TEST_PRINTF +int main(void) +{ + char *ptr = "Hello world!"; + char *np = 0; + int i = 5; + unsigned int bs = sizeof(int)*8; + int mi; + char buf[80]; + + mi = (1 << (bs-1)) + 1; + printf("%s\n", ptr); + printf("printf test\n"); + printf("%s is null pointer\n", np); + printf("%d = 5\n", i); + printf("%d = - max int\n", mi); + printf("char %c = 'a'\n", 'a'); + printf("hex %x = ff\n", 0xff); + printf("hex %02x = 00\n", 0); + printf("signed %d = unsigned %u = hex %x\n", -3, -3, -3); + printf("%d %s(s)%", 0, "message"); + printf("\n"); + printf("%d %s(s) with %%\n", 0, "message"); + sprintf(buf, "justif: \"%-10s\"\n", "left"); printf("%s", buf); + sprintf(buf, "justif: \"%10s\"\n", "right"); printf("%s", buf); + sprintf(buf, " 3: %04d zero padded\n", 3); printf("%s", buf); + sprintf(buf, " 3: %-4d left justif.\n", 3); printf("%s", buf); + sprintf(buf, " 3: %4d right justif.\n", 3); printf("%s", buf); + sprintf(buf, "-3: %04d zero padded\n", -3); printf("%s", buf); + sprintf(buf, "-3: %-4d left justif.\n", -3); printf("%s", buf); + sprintf(buf, "-3: %4d right justif.\n", -3); printf("%s", buf); + + return 0; +} + +/* + * if you compile this file with + * gcc -Wall $(YOUR_C_OPTIONS) -DTEST_PRINTF -c printf.c + * you will get a normal warning: + * printf.c:214: warning: spurious trailing `%' in format + * this line is testing an invalid % at the end of the format string. + * + * this should display (on 32bit int machine) : + * + * Hello world! + * printf test + * (null) is null pointer + * 5 = 5 + * -2147483647 = - max int + * char a = 'a' + * hex ff = ff + * hex 00 = 00 + * signed -3 = unsigned 4294967293 = hex fffffffd + * 0 message(s) + * 0 message(s) with % + * justif: "left " + * justif: " right" + * 3: 0003 zero padded + * 3: 3 left justif. + * 3: 3 right justif. + * -3: -003 zero padded + * -3: -3 left justif. + * -3: -3 right justif. + */ + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.h b/libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.h new file mode 100644 index 000000000..f6bd66476 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/printf-stdarg.h @@ -0,0 +1,36 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef PRINTF_STDARG_H +#define PRINTF_STDARG_H +#include <stdarg.h> + +int printk(const char *format, ...); +int printk_va(char **out, const char *format, va_list args ); +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/startup.c b/libraries/WiFi/extras/wifi_dnld/src/startup.c new file mode 100644 index 000000000..fa2a8c01e --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/startup.c @@ -0,0 +1,75 @@ +/* This source file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#include "startup.h" +#include "pm.h" +#include "intc.h" +#include "board.h" +#include "print_funcs.h" +#include "clocks.h" + + +static void init_exceptions(void) +{ + extern void _evba; + Set_system_register(AVR32_EVBA, (int)&_evba); + Enable_global_exception(); +} + +static void init_hmatrix(void) +{ + union { + unsigned long scfg; + avr32_hmatrix_scfg_t SCFG; + } u_avr32_hmatrix_scfg = { + AVR32_HMATRIX.scfg[AVR32_HMATRIX_SLAVE_FLASH] + }; + u_avr32_hmatrix_scfg.SCFG.defmstr_type = + AVR32_HMATRIX_DEFMSTR_TYPE_LAST_DEFAULT; + AVR32_HMATRIX.scfg[AVR32_HMATRIX_SLAVE_FLASH] = + u_avr32_hmatrix_scfg.scfg; +} + +static void init_interrupts(void) +{ + INTC_init_interrupts(); + + //initExtInt(); + + Enable_global_interrupt(); +} + +void startup_init(void) +{ + init_exceptions(); + init_hmatrix(); + init_sys_clocks(); + init_interrupts(); + init_dbg_rs232(FPBA_HZ); +} diff --git a/libraries/WiFi/extras/wifi_dnld/src/startup.h b/libraries/WiFi/extras/wifi_dnld/src/startup.h new file mode 100644 index 000000000..a9adc60ba --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/startup.h @@ -0,0 +1,35 @@ +/* This header file is part of the ATMEL AVR-UC3-SoftwareFramework-1.7.0 Release */ + +/*! \page License + * Copyright (C) 2009, H&D Wireless AB 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 H&D Wireless AB may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY H&D WIRELESS AB ``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 EXPRESSLY AND + * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL 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. + */ +#ifndef STARTUP_H +#define STARTUP_H + +void startup_init(void); + +#endif diff --git a/libraries/WiFi/extras/wifi_dnld/src/wl_fw.h b/libraries/WiFi/extras/wifi_dnld/src/wl_fw.h new file mode 100644 index 000000000..5be5f3762 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/src/wl_fw.h @@ -0,0 +1,19287 @@ +/* + * Programming interface for wl_api. + * Copyright (C) 2010 HD Wireless AB + * + * You should have received a copy of the license along with this library. + */ + +#ifndef WITHOUT_STDINT +#include <stdint.h> +#endif +const uint8_t fw_buf[154188] = { + 0x10, 0x61, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, 0x00, 0x00, 0x00, 0x10, 0x61, 0x04, 0x00, + 0x38, 0x61, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x20, 0x61, 0x04, 0x00, + 0x30, 0x61, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x30, 0x61, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x61, 0x04, 0x00, + 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xee, 0xee, + 0xee, 0xee, 0x18, 0xf0, 0x9f, 0xe5, 0x18, 0xf0, + 0x9f, 0xe5, 0x18, 0xf0, 0x9f, 0xe5, 0x18, 0xf0, + 0x9f, 0xe5, 0x00, 0x00, 0xa0, 0xe1, 0x18, 0xf0, + 0x9f, 0xe5, 0x18, 0xf0, 0x9f, 0xe5, 0x44, 0x00, + 0x00, 0x00, 0xb4, 0x08, 0x00, 0x00, 0xb4, 0x08, + 0x00, 0x00, 0xb4, 0x08, 0x00, 0x00, 0xb4, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x08, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0f, 0xe1, 0x1f, 0x00, 0xc0, 0xe3, + 0x13, 0x00, 0x80, 0xe3, 0xc0, 0x00, 0x80, 0xe3, + 0x00, 0xf0, 0x2f, 0xe1, 0x1c, 0xf0, 0x9f, 0xe5, + 0x3d, 0x02, 0x00, 0xeb, 0x5a, 0x02, 0x00, 0xeb, + 0x8d, 0x02, 0x00, 0xeb, 0x01, 0x00, 0x8f, 0xe2, + 0x10, 0xff, 0x2f, 0xe1, 0x41, 0xf0, 0xde, 0xfb, + 0x01, 0xf0, 0xdc, 0xfd, 0x3c, 0x00, 0x78, 0x00, + 0x00, 0x00, 0xfe, 0xe7, 0x00, 0x00, 0x5c, 0x00, + 0x00, 0x00, 0x78, 0x47, 0xc0, 0x46, 0x01, 0x00, + 0x00, 0xea, 0x78, 0x47, 0xc0, 0x46, 0x17, 0x00, + 0x00, 0xea, 0x8c, 0x11, 0x9f, 0xe5, 0x00, 0x20, + 0x91, 0xe5, 0x00, 0x30, 0x0f, 0xe1, 0x84, 0x11, + 0x9f, 0xe5, 0xfd, 0x20, 0xa1, 0xe8, 0x80, 0x01, + 0x9f, 0xe5, 0x80, 0x21, 0x9f, 0xe5, 0x01, 0x20, + 0x42, 0xe0, 0x0d, 0x00, 0x40, 0xe0, 0x3c, 0x00, + 0xb4, 0x00, 0x00, 0x00, 0x02, 0x00, 0x50, 0xe1, + 0x28, 0x00, 0x00, 0xaa, 0x68, 0x01, 0x9f, 0xe5, + 0x0d, 0x00, 0x50, 0xe1, 0x02, 0x00, 0x00, 0xba, + 0x04, 0x20, 0x10, 0xe4, 0x04, 0x20, 0x81, 0xe4, + 0xfa, 0xff, 0xff, 0xea, 0x58, 0x11, 0x9f, 0xe5, + 0x58, 0x01, 0x9f, 0xe5, 0x00, 0x00, 0x81, 0xe5, + 0x3c, 0x11, 0x9f, 0xe5, 0x50, 0x01, 0x9f, 0xe5, + 0x00, 0x00, 0x81, 0xe5, 0x1e, 0xff, 0x2f, 0xe1, + 0x3c, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x48, 0x11, + 0x9f, 0xe5, 0x00, 0x00, 0x91, 0xe5, 0x24, 0x11, + 0x9f, 0xe5, 0x00, 0x00, 0x81, 0xe5, 0x2c, 0x11, + 0x9f, 0xe5, 0x38, 0x01, 0x9f, 0xe5, 0x00, 0x00, + 0x81, 0xe5, 0x1e, 0xff, 0x2f, 0xe1, 0x74, 0x02, + 0x00, 0xeb, 0x10, 0x01, 0x9f, 0xe5, 0x28, 0x11, + 0x9f, 0xe5, 0x04, 0x20, 0x91, 0xe4, 0x04, 0x20, + 0x00, 0xe4, 0x04, 0x21, 0x9f, 0xe5, 0x02, 0x00, + 0x51, 0xe1, 0x3c, 0x00, 0x2c, 0x01, 0x00, 0x00, + 0xfa, 0xff, 0xff, 0x1a, 0xf0, 0x10, 0x9f, 0xe5, + 0xfd, 0x20, 0xb1, 0xe8, 0x03, 0xf0, 0x2f, 0xe1, + 0xe0, 0x10, 0x9f, 0xe5, 0x00, 0x20, 0x81, 0xe5, + 0xe8, 0x10, 0x9f, 0xe5, 0xf4, 0x20, 0x9f, 0xe5, + 0x00, 0x20, 0x81, 0xe5, 0x02, 0x10, 0x80, 0xe2, + 0x00, 0x00, 0x20, 0xe0, 0x01, 0x00, 0x40, 0xe2, + 0x11, 0xff, 0x2f, 0xe1, 0x01, 0x00, 0x8f, 0xe2, + 0x10, 0xff, 0x2f, 0xe1, 0x3c, 0x00, 0x68, 0x01, + 0x00, 0x00, 0x01, 0xf0, 0x9c, 0xf8, 0x78, 0x47, + 0x00, 0x00, 0x01, 0x00, 0x8f, 0xe2, 0x10, 0xff, + 0x2f, 0xe1, 0x01, 0xf0, 0x94, 0xf8, 0x78, 0x47, + 0x00, 0x00, 0x03, 0x00, 0x2d, 0xe9, 0x00, 0x10, + 0x0f, 0xe1, 0x00, 0x10, 0x80, 0xe5, 0xb8, 0x10, + 0x9f, 0xe5, 0x04, 0x10, 0x80, 0xe5, 0x00, 0x10, + 0xa0, 0xe1, 0x10, 0x00, 0x80, 0xe2, 0xfc, 0x1f, + 0xa0, 0xe8, 0x00, 0x20, 0xa0, 0xe1, 0x3c, 0x00, + 0xa4, 0x01, 0x00, 0x00, 0x01, 0x30, 0xa0, 0xe1, + 0x03, 0x00, 0xbd, 0xe8, 0x08, 0x00, 0x83, 0xe5, + 0x0c, 0x10, 0x83, 0xe5, 0xd3, 0x00, 0xa0, 0xe3, + 0x00, 0xf0, 0x21, 0xe1, 0x00, 0x60, 0xa2, 0xe8, + 0x00, 0x10, 0x4f, 0xe1, 0x04, 0x10, 0x82, 0xe4, + 0xd2, 0x00, 0xa0, 0xe3, 0x00, 0xf0, 0x21, 0xe1, + 0x00, 0x60, 0xa2, 0xe8, 0x00, 0x10, 0x4f, 0xe1, + 0x04, 0x10, 0x82, 0xe4, 0xd1, 0x00, 0xa0, 0xe3, + 0x3c, 0x00, 0xe0, 0x01, 0x00, 0x00, 0x00, 0xf0, + 0x21, 0xe1, 0x00, 0x7f, 0xa2, 0xe8, 0x00, 0x10, + 0x4f, 0xe1, 0x04, 0x10, 0x82, 0xe4, 0xd7, 0x00, + 0xa0, 0xe3, 0x00, 0xf0, 0x21, 0xe1, 0x00, 0x60, + 0xa2, 0xe8, 0x00, 0x10, 0x4f, 0xe1, 0x04, 0x10, + 0x82, 0xe4, 0xdb, 0x00, 0xa0, 0xe3, 0x00, 0xf0, + 0x21, 0xe1, 0x00, 0x60, 0xa2, 0xe8, 0x00, 0x10, + 0x4f, 0xe1, 0x00, 0x10, 0x82, 0xe5, 0x00, 0x00, + 0x93, 0xe5, 0x3c, 0x00, 0x1c, 0x02, 0x00, 0x00, + 0x00, 0xf0, 0x2f, 0xe1, 0x1e, 0xff, 0x2f, 0xe1, + 0x20, 0x00, 0x00, 0x00, 0x04, 0x03, 0x00, 0x00, + 0x20, 0xee, 0x01, 0x00, 0xd8, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0xf0, 0x9f, 0xe5, + 0x10, 0x01, 0x00, 0x00, 0x08, 0x03, 0x00, 0x00, + 0xee, 0xee, 0xee, 0xee, 0x24, 0x03, 0x00, 0x00, + 0x20, 0x02, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x63, 0x1c, 0x0b, 0x4d, 0x3c, 0x00, 0x58, 0x02, + 0x00, 0x00, 0x01, 0xd1, 0x6c, 0x69, 0x10, 0xe0, + 0x00, 0xf0, 0x6c, 0xfb, 0x09, 0x48, 0xff, 0xf7, + 0x0c, 0xff, 0xec, 0x60, 0x08, 0x4a, 0x51, 0x68, + 0x50, 0x68, 0x88, 0x42, 0xfc, 0xd0, 0x02, 0x20, + 0x28, 0x70, 0x01, 0x21, 0x8a, 0x20, 0x01, 0xf0, + 0x12, 0xf8, 0x20, 0x1c, 0xb0, 0xbd, 0x30, 0x00, + 0x07, 0x00, 0x51, 0x02, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x00, 0xb0, 0xb5, 0x05, 0x1c, 0x3c, 0x00, + 0x94, 0x02, 0x00, 0x00, 0x00, 0x24, 0x00, 0xf0, + 0x50, 0xfb, 0x14, 0x48, 0xff, 0xf7, 0xf0, 0xfe, + 0x13, 0x49, 0x14, 0x48, 0xc1, 0x60, 0x01, 0x21, + 0x13, 0x4a, 0x49, 0x03, 0x91, 0x60, 0x13, 0x49, + 0xca, 0x78, 0x08, 0x23, 0x9a, 0x43, 0xca, 0x70, + 0xca, 0x78, 0x04, 0x23, 0x1a, 0x43, 0xca, 0x70, + 0x6b, 0x1c, 0x0d, 0xd0, 0x0e, 0x4b, 0x5a, 0x68, + 0x59, 0x68, 0x91, 0x42, 0xfc, 0xd0, 0xbe, 0x21, + 0x3c, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x19, 0x73, + 0x19, 0x7a, 0x11, 0x22, 0x91, 0x43, 0x19, 0x72, + 0x19, 0x7a, 0xc9, 0x07, 0xfc, 0xd4, 0x02, 0x21, + 0x01, 0x70, 0xff, 0xf7, 0xd0, 0xfe, 0x20, 0x1c, + 0xb0, 0xbd, 0x91, 0x02, 0x00, 0x00, 0xff, 0xff, + 0xff, 0x00, 0x30, 0x00, 0x07, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, + 0x08, 0x47, 0x10, 0x47, 0x18, 0x47, 0x20, 0x47, + 0x28, 0x47, 0x30, 0x47, 0x38, 0x47, 0x10, 0xb5, + 0x04, 0x1c, 0x10, 0x1c, 0x00, 0xf0, 0x23, 0xf9, + 0x03, 0xc4, 0x10, 0xbc, 0x08, 0xbc, 0x18, 0x47, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x03, 0x00, 0x00, + 0x10, 0xb4, 0x04, 0x2a, 0x0e, 0xd3, 0x03, 0x1c, + 0x0b, 0x43, 0x9b, 0x07, 0x0a, 0xd1, 0x08, 0xc8, + 0x10, 0xc9, 0xa3, 0x42, 0x02, 0xd1, 0x04, 0x3a, + 0x04, 0x2a, 0xf8, 0xd2, 0xa3, 0x42, 0x01, 0xd0, + 0x04, 0x38, 0x04, 0x39, 0x00, 0x2a, 0x02, 0xd1, + 0x00, 0x20, 0x10, 0xbc, 0x70, 0x47, 0xd3, 0x07, + 0x01, 0xd5, 0x01, 0x32, 0x05, 0xe0, 0x03, 0x78, + 0x0c, 0x78, 0x01, 0x31, 0x3c, 0x00, 0x38, 0x04, + 0x00, 0x00, 0x01, 0x30, 0xa3, 0x42, 0x07, 0xd1, + 0x03, 0x78, 0x0c, 0x78, 0x01, 0x31, 0x01, 0x30, + 0xa3, 0x42, 0x01, 0xd1, 0x02, 0x3a, 0xf1, 0xd1, + 0x18, 0x1b, 0xe9, 0xe7, 0x00, 0x00, 0x78, 0x47, + 0x00, 0x00, 0x00, 0x20, 0xa0, 0xe3, 0x04, 0x00, + 0x51, 0xe3, 0x08, 0x00, 0x00, 0x3a, 0x03, 0xc0, + 0x10, 0xe2, 0x0d, 0x00, 0x00, 0x0a, 0x04, 0xc0, + 0x6c, 0xe2, 0x02, 0x00, 0x5c, 0xe3, 0x3c, 0x00, + 0x74, 0x04, 0x00, 0x00, 0x01, 0x20, 0xc0, 0xe4, + 0x01, 0x20, 0xc0, 0xa4, 0x01, 0x20, 0xc0, 0xc4, + 0x0c, 0x10, 0x41, 0xe0, 0x06, 0x00, 0x00, 0xea, + 0x81, 0xcf, 0xb0, 0xe1, 0x01, 0x20, 0xc0, 0x24, + 0x01, 0x20, 0xc0, 0x24, 0x01, 0x20, 0xc0, 0x44, + 0x1e, 0xff, 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, + 0x00, 0x20, 0xa0, 0xe3, 0x00, 0x40, 0x2d, 0xe9, + 0x02, 0x30, 0xa0, 0xe1, 0x02, 0xc0, 0xa0, 0xe1, + 0x3c, 0x00, 0xb0, 0x04, 0x00, 0x00, 0x02, 0xe0, + 0xa0, 0xe1, 0x20, 0x10, 0x51, 0xe2, 0x0c, 0x50, + 0xa0, 0x28, 0x0c, 0x50, 0xa0, 0x28, 0x20, 0x10, + 0x51, 0x22, 0xfb, 0xff, 0xff, 0x2a, 0x01, 0x1e, + 0xb0, 0xe1, 0x0c, 0x50, 0xa0, 0x28, 0x0c, 0x00, + 0xa0, 0x48, 0x00, 0x40, 0xbd, 0xe8, 0x01, 0x11, + 0xb0, 0xe1, 0x04, 0x20, 0x80, 0x24, 0x1e, 0xff, + 0x2f, 0x01, 0x01, 0x20, 0xc0, 0x44, 0x01, 0x20, + 0xc0, 0x44, 0x3c, 0x00, 0xec, 0x04, 0x00, 0x00, + 0x40, 0x04, 0x11, 0xe3, 0x01, 0x20, 0xc0, 0x14, + 0x1e, 0xff, 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, + 0x03, 0x00, 0x52, 0xe3, 0x3e, 0x00, 0x00, 0x9a, + 0x03, 0xc0, 0x10, 0xe2, 0x08, 0x00, 0x00, 0x0a, + 0x01, 0x30, 0xd1, 0xe4, 0x02, 0x00, 0x5c, 0xe3, + 0x0c, 0x20, 0x82, 0xe0, 0x01, 0xc0, 0xd1, 0x94, + 0x01, 0x30, 0xc0, 0xe4, 0x01, 0x30, 0xd1, 0x34, + 0x04, 0x20, 0x42, 0xe2, 0x3c, 0x00, 0x28, 0x05, + 0x00, 0x00, 0x01, 0xc0, 0xc0, 0x94, 0x01, 0x30, + 0xc0, 0x34, 0x03, 0x30, 0x11, 0xe2, 0x1e, 0x00, + 0x00, 0x0a, 0x04, 0x20, 0x52, 0xe2, 0x2f, 0x00, + 0x00, 0x3a, 0x03, 0xc0, 0x31, 0xe7, 0x02, 0x00, + 0x53, 0xe3, 0x08, 0x00, 0x00, 0x0a, 0x0f, 0x00, + 0x00, 0x8a, 0x2c, 0x34, 0xa0, 0xe1, 0x04, 0xc0, + 0xb1, 0xe5, 0x04, 0x20, 0x52, 0xe2, 0x0c, 0x3c, + 0x83, 0xe1, 0x04, 0x30, 0x80, 0xe4, 0x3c, 0x00, + 0x64, 0x05, 0x00, 0x00, 0xf9, 0xff, 0xff, 0x2a, + 0x01, 0x10, 0x81, 0xe2, 0x23, 0x00, 0x00, 0xea, + 0x2c, 0x38, 0xa0, 0xe1, 0x04, 0xc0, 0xb1, 0xe5, + 0x04, 0x20, 0x52, 0xe2, 0x0c, 0x38, 0x83, 0xe1, + 0x04, 0x30, 0x80, 0xe4, 0xf9, 0xff, 0xff, 0x2a, + 0x02, 0x10, 0x81, 0xe2, 0x1b, 0x00, 0x00, 0xea, + 0x2c, 0x3c, 0xa0, 0xe1, 0x04, 0xc0, 0xb1, 0xe5, + 0x04, 0x20, 0x52, 0xe2, 0x0c, 0x34, 0x83, 0xe1, + 0x3c, 0x00, 0xa0, 0x05, 0x00, 0x00, 0x04, 0x30, + 0x80, 0xe4, 0xf9, 0xff, 0xff, 0x2a, 0x03, 0x10, + 0x81, 0xe2, 0x13, 0x00, 0x00, 0xea, 0x78, 0x47, + 0x00, 0x00, 0x10, 0x40, 0x2d, 0xe9, 0x20, 0x20, + 0x52, 0xe2, 0x05, 0x00, 0x00, 0x3a, 0x18, 0x50, + 0xb1, 0x28, 0x18, 0x50, 0xa0, 0x28, 0x18, 0x50, + 0xb1, 0x28, 0x18, 0x50, 0xa0, 0x28, 0x20, 0x20, + 0x52, 0x22, 0xf9, 0xff, 0xff, 0x2a, 0x02, 0xce, + 0xb0, 0xe1, 0x3c, 0x00, 0xdc, 0x05, 0x00, 0x00, + 0x18, 0x50, 0xb1, 0x28, 0x18, 0x50, 0xa0, 0x28, + 0x18, 0x00, 0xb1, 0x48, 0x18, 0x00, 0xa0, 0x48, + 0x10, 0x40, 0xbd, 0xe8, 0x02, 0xcf, 0xb0, 0xe1, + 0x04, 0x30, 0x91, 0x24, 0x04, 0x30, 0x80, 0x24, + 0x1e, 0xff, 0x2f, 0x01, 0x82, 0x2f, 0xb0, 0xe1, + 0x01, 0x20, 0xd1, 0x44, 0x01, 0x30, 0xd1, 0x24, + 0x01, 0xc0, 0xd1, 0x24, 0x01, 0x20, 0xc0, 0x44, + 0x01, 0x30, 0xc0, 0x24, 0x3c, 0x00, 0x18, 0x06, + 0x00, 0x00, 0x01, 0xc0, 0xc0, 0x24, 0x1e, 0xff, + 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, 0xff, 0x30, + 0x01, 0xe2, 0x02, 0x10, 0xa0, 0xe1, 0x03, 0x24, + 0x83, 0xe1, 0x02, 0x28, 0x82, 0xe1, 0x88, 0xff, + 0xff, 0xea, 0x78, 0x47, 0x00, 0x00, 0x80, 0x24, + 0x10, 0xe2, 0x00, 0x00, 0x60, 0x42, 0x41, 0x30, + 0x32, 0xe0, 0x00, 0x10, 0x61, 0x22, 0xa1, 0xc1, + 0x70, 0xe0, 0x20, 0x00, 0x00, 0x3a, 0x3c, 0x00, + 0x54, 0x06, 0x00, 0x00, 0x21, 0xc4, 0x70, 0xe0, + 0x0f, 0x00, 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, + 0xff, 0x24, 0x82, 0xe3, 0x21, 0xc2, 0x70, 0xe0, + 0x17, 0x00, 0x00, 0x3a, 0x21, 0xc4, 0x70, 0xe0, + 0x09, 0x00, 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, + 0xff, 0x28, 0x82, 0xe3, 0x21, 0xc4, 0x70, 0xe0, + 0x00, 0x04, 0xa0, 0x21, 0xff, 0x2c, 0x82, 0x23, + 0x21, 0xc2, 0x70, 0xe0, 0x0e, 0x00, 0x00, 0x3a, + 0x3c, 0x00, 0x90, 0x06, 0x00, 0x00, 0x00, 0xc0, + 0x70, 0xe2, 0x83, 0x00, 0x00, 0x2a, 0x20, 0x04, + 0xa0, 0x21, 0xa1, 0xc3, 0x70, 0xe0, 0x80, 0x13, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc3, + 0x70, 0xe0, 0x00, 0x13, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0xa1, 0xc2, 0x70, 0xe0, 0x80, 0x12, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc2, + 0x70, 0xe0, 0x00, 0x12, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x3c, 0x00, 0xcc, 0x06, 0x00, 0x00, + 0xa1, 0xc1, 0x70, 0xe0, 0x80, 0x11, 0x41, 0x20, + 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc1, 0x70, 0xe0, + 0x00, 0x11, 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, + 0xa1, 0xc0, 0x70, 0xe0, 0x80, 0x10, 0x41, 0x20, + 0x02, 0x20, 0xa2, 0xe0, 0x01, 0xc0, 0x70, 0xe0, + 0x00, 0x10, 0x41, 0x20, 0x02, 0x20, 0xb2, 0xe0, + 0xe5, 0xff, 0xff, 0x2a, 0xc3, 0x0f, 0x32, 0xe0, + 0xa3, 0x0f, 0x80, 0xe0, 0x3c, 0x00, 0x08, 0x07, + 0x00, 0x00, 0x00, 0x10, 0x61, 0x22, 0x1e, 0xff, + 0x2f, 0xe1, 0x78, 0x47, 0x00, 0x00, 0x00, 0x20, + 0xa0, 0xe3, 0xa1, 0xc1, 0x70, 0xe0, 0x20, 0x00, + 0x00, 0x3a, 0x21, 0xc4, 0x70, 0xe0, 0x0f, 0x00, + 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, 0xff, 0x24, + 0x82, 0xe3, 0x21, 0xc2, 0x70, 0xe0, 0x17, 0x00, + 0x00, 0x3a, 0x21, 0xc4, 0x70, 0xe0, 0x09, 0x00, + 0x00, 0x3a, 0x00, 0x04, 0xa0, 0xe1, 0x3c, 0x00, + 0x44, 0x07, 0x00, 0x00, 0xff, 0x28, 0x82, 0xe3, + 0x21, 0xc4, 0x70, 0xe0, 0x00, 0x04, 0xa0, 0x21, + 0xff, 0x2c, 0x82, 0x23, 0x21, 0xc2, 0x70, 0xe0, + 0x0e, 0x00, 0x00, 0x3a, 0x00, 0xc0, 0x70, 0xe2, + 0x50, 0x00, 0x00, 0x2a, 0x20, 0x04, 0xa0, 0x21, + 0xa1, 0xc3, 0x70, 0xe0, 0x80, 0x13, 0x41, 0x20, + 0x02, 0x20, 0xa2, 0xe0, 0x21, 0xc3, 0x70, 0xe0, + 0x00, 0x13, 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, + 0x3c, 0x00, 0x80, 0x07, 0x00, 0x00, 0xa1, 0xc2, + 0x70, 0xe0, 0x80, 0x12, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x21, 0xc2, 0x70, 0xe0, 0x00, 0x12, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0xa1, 0xc1, + 0x70, 0xe0, 0x80, 0x11, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x21, 0xc1, 0x70, 0xe0, 0x00, 0x11, + 0x41, 0x20, 0x02, 0x20, 0xa2, 0xe0, 0xa1, 0xc0, + 0x70, 0xe0, 0x80, 0x10, 0x41, 0x20, 0x02, 0x20, + 0xa2, 0xe0, 0x3c, 0x00, 0xbc, 0x07, 0x00, 0x00, + 0x01, 0xc0, 0x70, 0xe0, 0x00, 0x10, 0x41, 0x20, + 0x02, 0x20, 0xb2, 0xe0, 0xe5, 0xff, 0xff, 0x2a, + 0x02, 0x00, 0xa0, 0xe1, 0x1e, 0xff, 0x2f, 0xe1, + 0x78, 0x47, 0x00, 0x00, 0x0a, 0x10, 0x40, 0xe2, + 0x20, 0x01, 0x40, 0xe0, 0x20, 0x02, 0x80, 0xe0, + 0x20, 0x04, 0x80, 0xe0, 0x20, 0x08, 0x80, 0xe0, + 0xa0, 0x01, 0xa0, 0xe1, 0x00, 0x21, 0x80, 0xe0, + 0x82, 0x10, 0x51, 0xe0, 0x3c, 0x00, 0xf8, 0x07, + 0x00, 0x00, 0x01, 0x00, 0x80, 0x52, 0x0a, 0x10, + 0x81, 0x42, 0x1e, 0xff, 0x2f, 0xe1, 0x30, 0xb4, + 0x44, 0x1c, 0x81, 0x07, 0x08, 0xd0, 0x01, 0x78, + 0x01, 0x30, 0x00, 0x29, 0x02, 0xd1, 0x00, 0x1b, + 0x30, 0xbc, 0x70, 0x47, 0x81, 0x07, 0xf6, 0xd1, + 0x0b, 0x4a, 0xd5, 0x01, 0x02, 0xc8, 0x8b, 0x1a, + 0x8b, 0x43, 0x2b, 0x40, 0xfa, 0xd0, 0x00, 0x1b, + 0x0a, 0x06, 0x01, 0xd1, 0x03, 0x38, 0x3c, 0x00, + 0x34, 0x08, 0x00, 0x00, 0xef, 0xe7, 0x0a, 0x04, + 0x12, 0x0e, 0x01, 0xd1, 0x02, 0x38, 0xea, 0xe7, + 0x09, 0x02, 0x09, 0x0e, 0xe7, 0xd1, 0x01, 0x38, + 0xe5, 0xe7, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, + 0xf0, 0xb4, 0x03, 0x1c, 0x04, 0x1c, 0x0c, 0x43, + 0xa4, 0x07, 0x0c, 0xd1, 0x10, 0x4d, 0xef, 0x01, + 0x02, 0xe0, 0x04, 0x31, 0x04, 0x3a, 0x10, 0xc3, + 0x04, 0x2a, 0x04, 0xd3, 0x0c, 0x68, 0x66, 0x1b, + 0x3c, 0x00, 0x70, 0x08, 0x00, 0x00, 0xa6, 0x43, + 0x3e, 0x40, 0xf5, 0xd0, 0x00, 0x2a, 0x07, 0xd0, + 0x0c, 0x78, 0x01, 0x31, 0x1c, 0x70, 0x01, 0x33, + 0x00, 0x2c, 0x03, 0xd0, 0x01, 0x3a, 0xf7, 0xd1, + 0xf0, 0xbc, 0x70, 0x47, 0x01, 0x2a, 0xfb, 0xd9, + 0x51, 0x1e, 0x00, 0x22, 0x1a, 0x70, 0x01, 0x33, + 0x01, 0x39, 0xfb, 0xd1, 0xf4, 0xe7, 0x01, 0x01, + 0x01, 0x01, 0x78, 0x47, 0x00, 0x00, 0x02, 0x00, + 0xa0, 0xe3, 0x3c, 0x00, 0xac, 0x08, 0x00, 0x00, + 0x02, 0x10, 0xa0, 0xe3, 0x2e, 0xfe, 0xff, 0xea, + 0x1f, 0x40, 0x2d, 0xe9, 0x00, 0x00, 0x0f, 0xe1, + 0xc0, 0x00, 0x80, 0xe3, 0x00, 0xf0, 0x2f, 0xe1, + 0x81, 0x00, 0xa0, 0xe3, 0x02, 0x10, 0xa0, 0xe3, + 0x01, 0x20, 0x8f, 0xe2, 0x12, 0xff, 0x2f, 0xe1, + 0x00, 0xf0, 0xe6, 0xfc, 0x78, 0x47, 0x00, 0x00, + 0x1f, 0x40, 0xbd, 0xe8, 0xfe, 0xff, 0xff, 0xea, + 0x1f, 0x50, 0x2d, 0xe9, 0x3c, 0x00, 0xe8, 0x08, + 0x00, 0x00, 0x01, 0x00, 0x8f, 0xe2, 0x10, 0xff, + 0x2f, 0xe1, 0x00, 0xf0, 0x40, 0xfb, 0x78, 0x47, + 0x00, 0x00, 0x1f, 0x50, 0xbd, 0xe8, 0x04, 0xf0, + 0x5e, 0xe2, 0x1f, 0x50, 0x2d, 0xe9, 0x01, 0x00, + 0x8f, 0xe2, 0x10, 0xff, 0x2f, 0xe1, 0x00, 0xf0, + 0x18, 0xfb, 0x78, 0x47, 0x00, 0x00, 0x1f, 0x50, + 0xbd, 0xe8, 0x04, 0xf0, 0x5e, 0xe2, 0x00, 0xbd, + 0x01, 0xb5, 0x00, 0xa0, 0x00, 0x47, 0x3c, 0x00, + 0x24, 0x09, 0x00, 0x00, 0x00, 0x30, 0x0f, 0xe1, + 0xc0, 0x30, 0xc3, 0xe3, 0x03, 0xf0, 0x21, 0xe1, + 0x01, 0x00, 0x8f, 0xe2, 0x10, 0xff, 0x2f, 0xe1, + 0x01, 0xbd, 0x01, 0xb5, 0x00, 0xa0, 0x00, 0x47, + 0x00, 0x30, 0x0f, 0xe1, 0xc0, 0x30, 0x83, 0xe3, + 0x03, 0xf0, 0x21, 0xe1, 0x01, 0x00, 0x8f, 0xe2, + 0x10, 0xff, 0x2f, 0xe1, 0x01, 0xbd, 0x00, 0x00, + 0x18, 0x00, 0x9f, 0xe5, 0x04, 0x10, 0x90, 0xe4, + 0x3c, 0x00, 0x60, 0x09, 0x00, 0x00, 0x00, 0x00, + 0x51, 0xe3, 0x02, 0x00, 0x00, 0x0a, 0x04, 0x20, + 0x90, 0xe4, 0x00, 0x20, 0x81, 0xe5, 0xf9, 0xff, + 0xff, 0xea, 0x0e, 0xf0, 0xa0, 0xe1, 0x7c, 0x09, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x00, + 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0xd8, 0x03, + 0x00, 0x00, 0xd8, 0x03, 0x00, 0x00, 0xd8, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x09, 0x00, 0x00, + 0x44, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, + 0x44, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, + 0x00, 0x80, 0x01, 0x00, 0x10, 0x8e, 0x01, 0x00, + 0x10, 0x8e, 0x01, 0x00, 0x88, 0xf8, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00, + 0xc4, 0x33, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x0e, 0x50, 0xa0, 0xe1, + 0x58, 0x40, 0x9f, 0xe5, 0x3c, 0x00, 0xd8, 0x09, + 0x00, 0x00, 0x04, 0x00, 0x94, 0xe4, 0x01, 0x00, + 0x50, 0xe3, 0x05, 0xf0, 0xa0, 0x01, 0x04, 0x10, + 0x94, 0xe4, 0x04, 0x20, 0x94, 0xe4, 0x03, 0x00, + 0x00, 0xeb, 0x04, 0x00, 0x94, 0xe4, 0x04, 0x10, + 0x94, 0xe4, 0x07, 0x00, 0x00, 0xeb, 0xf5, 0xff, + 0xff, 0xea, 0x01, 0x00, 0x50, 0xe1, 0x0e, 0xf0, + 0xa0, 0x01, 0x02, 0x00, 0x51, 0xe1, 0x04, 0x30, + 0x90, 0x14, 0x04, 0x30, 0x81, 0x14, 0x3c, 0x00, + 0x14, 0x0a, 0x00, 0x00, 0xfb, 0xff, 0xff, 0x1a, + 0x0e, 0xf0, 0xa0, 0xe1, 0x14, 0x20, 0x9f, 0xe5, + 0x00, 0x20, 0x92, 0xe5, 0x01, 0x00, 0x50, 0xe1, + 0x04, 0x20, 0x80, 0x14, 0xfc, 0xff, 0xff, 0x1a, + 0x0e, 0xf0, 0xa0, 0xe1, 0x80, 0x09, 0x00, 0x00, + 0xcc, 0x09, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, + 0x20, 0xe6, 0x01, 0x00, 0x13, 0x00, 0x00, 0x00, + 0x53, 0x56, 0x43, 0x5f, 0x00, 0x04, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x0a, 0x00, 0x00, 0x20, 0xee, + 0x01, 0x00, 0x12, 0x00, 0x00, 0x00, 0x49, 0x52, + 0x51, 0x5f, 0x00, 0x02, 0x00, 0x00, 0x20, 0xf2, + 0x01, 0x00, 0x11, 0x00, 0x00, 0x00, 0x46, 0x49, + 0x51, 0x5f, 0x80, 0x00, 0x00, 0x00, 0x20, 0xf4, + 0x01, 0x00, 0x17, 0x00, 0x00, 0x00, 0x41, 0x42, + 0x54, 0x5f, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf4, + 0x01, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x55, 0x4e, + 0x44, 0x5f, 0x3c, 0x00, 0x8c, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf4, 0x01, 0x00, + 0x1f, 0x00, 0x00, 0x00, 0x55, 0x53, 0x52, 0x5f, + 0x01, 0x00, 0x00, 0x00, 0x0e, 0x50, 0xa0, 0xe1, + 0x00, 0x60, 0x0f, 0xe1, 0x8c, 0x40, 0x9f, 0xe5, + 0x04, 0x10, 0x94, 0xe4, 0x01, 0x00, 0x51, 0xe3, + 0x09, 0x00, 0x00, 0x0a, 0x04, 0x00, 0x94, 0xe4, + 0x01, 0x10, 0x80, 0xe0, 0x03, 0x10, 0xc1, 0xe3, + 0x04, 0x20, 0x94, 0xe4, 0x3c, 0x00, 0xc8, 0x0a, + 0x00, 0x00, 0xc0, 0x20, 0x82, 0xe3, 0x02, 0xf0, + 0x2f, 0xe1, 0x04, 0xd0, 0x41, 0xe2, 0x04, 0x20, + 0x94, 0xe4, 0x13, 0x00, 0x00, 0xeb, 0xf2, 0xff, + 0xff, 0xea, 0x06, 0xf0, 0x2f, 0xe1, 0x05, 0xf0, + 0xa0, 0xe1, 0x0e, 0x50, 0xa0, 0xe1, 0x00, 0x60, + 0x0f, 0xe1, 0x44, 0x40, 0x9f, 0xe5, 0x04, 0x10, + 0x94, 0xe4, 0x01, 0x00, 0x51, 0xe3, 0x08, 0x00, + 0x00, 0x0a, 0x04, 0x00, 0x94, 0xe4, 0x3c, 0x00, + 0x04, 0x0b, 0x00, 0x00, 0x01, 0x10, 0x80, 0xe0, + 0x03, 0x10, 0xc1, 0xe3, 0x04, 0x20, 0x94, 0xe4, + 0xc0, 0x20, 0x82, 0xe3, 0x02, 0xf0, 0x2f, 0xe1, + 0x04, 0xd0, 0x41, 0xe2, 0x04, 0x20, 0x94, 0xe4, + 0xf3, 0xff, 0xff, 0xea, 0x06, 0xf0, 0x2f, 0xe1, + 0x05, 0xf0, 0xa0, 0xe1, 0x01, 0x00, 0x50, 0xe1, + 0x04, 0x20, 0x80, 0x14, 0xfc, 0xff, 0xff, 0x1a, + 0x0e, 0xf0, 0xa0, 0xe1, 0x3c, 0x0a, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x0b, 0x00, 0x00, 0x01, 0x60, + 0xc0, 0x46, 0xc0, 0x46, 0xc0, 0x46, 0x70, 0x47, + 0x00, 0x00, 0x10, 0x1e, 0x10, 0xee, 0x02, 0x00, + 0x11, 0xe3, 0xfc, 0xff, 0xff, 0x1a, 0x10, 0x0e, + 0x01, 0xee, 0x10, 0x1e, 0x10, 0xee, 0x02, 0x00, + 0x11, 0xe3, 0xfc, 0xff, 0xff, 0x1a, 0x1e, 0xff, + 0x2f, 0xe1, 0x10, 0x1e, 0x10, 0xee, 0x01, 0x00, + 0x11, 0xe3, 0x03, 0x00, 0x00, 0x0a, 0x10, 0x1e, + 0x11, 0xee, 0x3c, 0x00, 0x7c, 0x0b, 0x00, 0x00, + 0x00, 0x10, 0x80, 0xe5, 0x01, 0x00, 0xa0, 0xe3, + 0x1e, 0xff, 0x2f, 0xe1, 0x00, 0x00, 0x20, 0xe0, + 0x1e, 0xff, 0x2f, 0xe1, 0x8d, 0x46, 0x97, 0x46, + 0x78, 0x47, 0xc0, 0x46, 0x78, 0xfd, 0xff, 0xea, + 0x10, 0xb5, 0x04, 0x1c, 0x03, 0x28, 0x01, 0xd9, + 0x00, 0xf0, 0xac, 0xfb, 0x0c, 0x48, 0x40, 0x68, + 0x00, 0x28, 0x00, 0xd0, 0x03, 0x24, 0x0b, 0x48, + 0x01, 0x68, 0x09, 0x48, 0x3c, 0x00, 0xb8, 0x0b, + 0x00, 0x00, 0x12, 0x30, 0x00, 0x29, 0x05, 0xd0, + 0x06, 0x21, 0x61, 0x43, 0x40, 0x5c, 0xc3, 0x00, + 0x18, 0x18, 0x04, 0xe0, 0x06, 0x21, 0x61, 0x43, + 0x40, 0x5c, 0x14, 0x23, 0x58, 0x43, 0x0a, 0x30, + 0x00, 0x06, 0x00, 0x0e, 0x10, 0xbd, 0xd4, 0x7a, + 0x01, 0x00, 0xa8, 0x69, 0x01, 0x00, 0x80, 0xb5, + 0x09, 0x4a, 0x09, 0x49, 0x03, 0x20, 0x00, 0xf0, + 0xf2, 0xf9, 0x08, 0x49, 0x08, 0x20, 0x3c, 0x00, + 0xf4, 0x0b, 0x00, 0x00, 0x08, 0x60, 0x48, 0x60, + 0x07, 0x49, 0x1d, 0x20, 0x01, 0xf0, 0xb2, 0xfc, + 0x06, 0x49, 0x1e, 0x20, 0x01, 0xf0, 0xae, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x00, 0x6c, 0x01, 0x00, + 0x31, 0x27, 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x29, 0x25, 0x00, 0x00, 0x31, 0x25, 0x00, 0x00, + 0x05, 0x49, 0x80, 0xb5, 0x08, 0x20, 0x88, 0x60, + 0x1d, 0x20, 0x01, 0xf0, 0xbf, 0xfc, 0x1e, 0x20, + 0x3c, 0x00, 0x30, 0x0c, 0x00, 0x00, 0x01, 0xf0, + 0xbc, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x02, 0x1c, 0x08, 0x1c, 0xd1, 0x2a, + 0x80, 0xb5, 0x01, 0xd1, 0x05, 0xf0, 0x19, 0xfc, + 0x80, 0xbd, 0x03, 0x49, 0x80, 0xb5, 0x00, 0x20, + 0x08, 0x80, 0x05, 0x20, 0x05, 0xf0, 0xd5, 0xfb, + 0x80, 0xbd, 0xb0, 0x74, 0x01, 0x00, 0x80, 0xb5, + 0x54, 0x28, 0x01, 0xd1, 0x06, 0xf0, 0xcd, 0xf8, + 0x80, 0xbd, 0x3c, 0x00, 0x6c, 0x0c, 0x00, 0x00, + 0xb0, 0xb5, 0x10, 0x4d, 0x02, 0x1c, 0x01, 0x24, + 0x01, 0x2a, 0x0d, 0x48, 0x29, 0x68, 0x06, 0xd0, + 0xc4, 0x2a, 0x03, 0xd1, 0x6a, 0x68, 0x00, 0x2a, + 0x05, 0xd0, 0xac, 0x60, 0xb0, 0xbd, 0x0e, 0xf0, + 0x89, 0xfb, 0x6c, 0x60, 0x08, 0xe0, 0x00, 0x22, + 0xaa, 0x60, 0x6c, 0x60, 0x0e, 0xf0, 0x82, 0xfb, + 0x00, 0x21, 0x04, 0x20, 0x12, 0xf0, 0xc8, 0xfc, + 0x06, 0xf0, 0xd8, 0xf8, 0x3c, 0x00, 0xa8, 0x0c, + 0x00, 0x00, 0xb0, 0xbd, 0x00, 0x00, 0xc4, 0x60, + 0x01, 0x00, 0xbc, 0x74, 0x01, 0x00, 0x05, 0x4a, + 0x51, 0x69, 0x08, 0x1a, 0x11, 0x69, 0x09, 0x68, + 0x10, 0x31, 0x81, 0x42, 0x01, 0xd8, 0x50, 0x61, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x8c, 0x6e, + 0x01, 0x00, 0x01, 0x49, 0x49, 0x68, 0x40, 0x1a, + 0x70, 0x47, 0x8c, 0x6e, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x69, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x0c, 0x00, 0x00, 0x8c, 0x6e, 0x01, 0x00, + 0x02, 0x4a, 0x51, 0x69, 0x08, 0x18, 0x50, 0x61, + 0x70, 0x47, 0x00, 0x00, 0x8c, 0x6e, 0x01, 0x00, + 0x0e, 0x49, 0x0f, 0x48, 0x10, 0xb5, 0x19, 0x22, + 0x92, 0x01, 0x41, 0x60, 0x89, 0x18, 0xc1, 0x60, + 0x0b, 0x49, 0x00, 0x22, 0x0c, 0x31, 0x01, 0x60, + 0x0a, 0x49, 0x82, 0x60, 0x09, 0x68, 0x01, 0x23, + 0xdb, 0x03, 0xc9, 0x18, 0x08, 0x4c, 0x41, 0x61, + 0x3c, 0x00, 0x20, 0x0d, 0x00, 0x00, 0x21, 0x68, + 0x00, 0x29, 0x02, 0xd0, 0x07, 0x49, 0x01, 0x61, + 0x01, 0xe0, 0x00, 0xf0, 0x0c, 0xf8, 0x22, 0x60, + 0x10, 0xbd, 0x44, 0xdc, 0x01, 0x00, 0x8c, 0x6e, + 0x01, 0x00, 0xc8, 0x09, 0x00, 0x00, 0x34, 0x58, + 0x01, 0x00, 0xc4, 0x09, 0x00, 0x00, 0x01, 0x48, + 0x02, 0x49, 0x08, 0x61, 0x70, 0x47, 0xc8, 0x09, + 0x00, 0x00, 0x8c, 0x6e, 0x01, 0x00, 0x08, 0x28, + 0x05, 0xd2, 0x3c, 0x00, 0x5c, 0x0d, 0x00, 0x00, + 0x03, 0x4b, 0x80, 0x00, 0x19, 0x50, 0x02, 0x49, + 0x20, 0x31, 0x0a, 0x50, 0x70, 0x47, 0x00, 0x00, + 0x64, 0x6d, 0x01, 0x00, 0x70, 0xb5, 0x06, 0x1c, + 0x0d, 0x48, 0x0d, 0x1c, 0x00, 0x68, 0x14, 0x1c, + 0x00, 0x28, 0x03, 0xd1, 0x20, 0x1c, 0x00, 0xf0, + 0x09, 0xfc, 0x70, 0xbd, 0x28, 0x06, 0x01, 0xd5, + 0x00, 0xf0, 0x22, 0xfe, 0x22, 0x1c, 0x29, 0x1c, + 0x30, 0x1c, 0x08, 0xf0, 0x3c, 0x00, 0x98, 0x0d, + 0x00, 0x00, 0xdd, 0xfd, 0x01, 0x1c, 0x03, 0x48, + 0x54, 0x30, 0x43, 0x69, 0x32, 0x1c, 0xff, 0xf7, + 0x1b, 0xfb, 0x70, 0xbd, 0x00, 0x00, 0x50, 0x6d, + 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0d, 0x48, + 0x1f, 0x1c, 0x00, 0x68, 0x15, 0x1c, 0x0c, 0x1c, + 0x00, 0x28, 0x02, 0xd1, 0x28, 0x1c, 0x00, 0xf0, + 0xe8, 0xfb, 0x20, 0x06, 0x01, 0xd5, 0x00, 0xf0, + 0x02, 0xfe, 0x2a, 0x1c, 0x21, 0x1c, 0x3c, 0x00, + 0xd4, 0x0d, 0x00, 0x00, 0x30, 0x1c, 0x08, 0xf0, + 0xbd, 0xfd, 0x01, 0x1c, 0x03, 0x48, 0x54, 0x30, + 0x43, 0x69, 0x3a, 0x1c, 0xff, 0xf7, 0xfb, 0xfa, + 0xf8, 0xbd, 0x00, 0x00, 0x50, 0x6d, 0x01, 0x00, + 0xf8, 0xb5, 0xf1, 0x28, 0x4e, 0xd1, 0x2a, 0x48, + 0x69, 0x46, 0x82, 0x69, 0xff, 0xf7, 0xee, 0xfa, + 0x27, 0x49, 0x00, 0x26, 0x54, 0x39, 0xc8, 0x68, + 0x8b, 0x68, 0xc2, 0x00, 0x01, 0x30, 0xd5, 0x18, + 0x3c, 0x00, 0x10, 0x0e, 0x00, 0x00, 0x07, 0x28, + 0xc8, 0x60, 0x00, 0xd1, 0xce, 0x60, 0x22, 0x48, + 0x6c, 0x68, 0x00, 0x68, 0x00, 0x28, 0x03, 0xd0, + 0x00, 0x21, 0x20, 0x1c, 0x08, 0xf0, 0x3b, 0xfb, + 0x6e, 0x60, 0x25, 0x68, 0x20, 0x89, 0xa9, 0x78, + 0x02, 0x39, 0x40, 0x1a, 0xe9, 0x78, 0x40, 0x1a, + 0x20, 0x81, 0xa8, 0x78, 0x28, 0x18, 0x02, 0x38, + 0x20, 0x60, 0x6e, 0x78, 0x28, 0x78, 0x08, 0x28, + 0x17, 0xd2, 0x3c, 0x00, 0x4c, 0x0e, 0x00, 0x00, + 0x30, 0x06, 0x07, 0xd5, 0x27, 0x1c, 0x20, 0x1c, + 0x00, 0xf0, 0x7a, 0xfc, 0x04, 0x1c, 0x38, 0x1c, + 0x00, 0xf0, 0x9c, 0xfb, 0x28, 0x78, 0x0f, 0x49, + 0x40, 0x39, 0x80, 0x00, 0x0a, 0x58, 0x00, 0x2a, + 0x04, 0xd0, 0x31, 0x1c, 0x20, 0x1c, 0xff, 0xf7, + 0xb3, 0xfa, 0x08, 0xe0, 0x05, 0x21, 0x00, 0xe0, + 0x04, 0x21, 0x06, 0x20, 0x00, 0xf0, 0x10, 0xfa, + 0x20, 0x1c, 0x00, 0xf0, 0x3c, 0x00, 0x88, 0x0e, + 0x00, 0x00, 0x87, 0xfb, 0x30, 0x06, 0x01, 0xd5, + 0x00, 0xf0, 0xa1, 0xfd, 0xf8, 0xbd, 0x01, 0x21, + 0x06, 0x20, 0x00, 0xf0, 0x04, 0xfa, 0xf9, 0xe7, + 0x00, 0x00, 0xa4, 0x6d, 0x01, 0x00, 0xcc, 0x5c, + 0x01, 0x00, 0xf8, 0xb5, 0x1a, 0x4d, 0x19, 0x4f, + 0x01, 0x24, 0x54, 0x35, 0x29, 0x1c, 0x03, 0x20, + 0x7c, 0x60, 0x17, 0x4b, 0x18, 0x4a, 0x05, 0xf0, + 0xf4, 0xfb, 0x00, 0x28, 0x02, 0xd0, 0x3c, 0x00, + 0xc4, 0x0e, 0x00, 0x00, 0x00, 0x20, 0x38, 0x60, + 0x1f, 0xe0, 0x3c, 0x60, 0x07, 0x21, 0x28, 0x1c, + 0xea, 0x69, 0xff, 0xf7, 0x83, 0xfa, 0x38, 0x20, + 0x00, 0xf0, 0x80, 0xfc, 0x00, 0x24, 0xb8, 0x60, + 0xb8, 0x68, 0xe6, 0x00, 0x35, 0x18, 0x68, 0x46, + 0x02, 0x21, 0x00, 0xf0, 0x75, 0xfb, 0x28, 0x60, + 0x28, 0x1c, 0x00, 0xf0, 0xa5, 0xfd, 0xb8, 0x68, + 0x81, 0x59, 0x06, 0x48, 0x54, 0x30, 0x02, 0x6a, + 0x3c, 0x00, 0x00, 0x0f, 0x00, 0x00, 0xff, 0xf7, + 0x6c, 0xfa, 0x01, 0x34, 0x07, 0x2c, 0xea, 0xdb, + 0x00, 0x20, 0xf8, 0x60, 0x38, 0x61, 0xf8, 0xbd, + 0x00, 0x00, 0x50, 0x6d, 0x01, 0x00, 0x81, 0x9a, + 0x00, 0x00, 0x61, 0x9a, 0x00, 0x00, 0x05, 0x48, + 0x80, 0xb5, 0x00, 0x68, 0x00, 0x28, 0x05, 0xd0, + 0x03, 0x48, 0x54, 0x30, 0x42, 0x6a, 0x00, 0x21, + 0xff, 0xf7, 0x53, 0xfa, 0x80, 0xbd, 0x50, 0x6d, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0x0f, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0xb5, 0x0a, 0x4e, + 0x09, 0x4d, 0x08, 0x4c, 0x08, 0x3e, 0xa1, 0x69, + 0x00, 0x29, 0x07, 0xd0, 0x30, 0x68, 0x41, 0x60, + 0x00, 0x7b, 0x81, 0x00, 0x69, 0x58, 0xff, 0xf7, + 0x3e, 0xfa, 0xf4, 0xe7, 0x03, 0x49, 0x02, 0x20, + 0x08, 0x70, 0x70, 0xbd, 0x00, 0x10, 0x07, 0x00, + 0xe0, 0x7e, 0x01, 0x00, 0x00, 0x02, 0x07, 0x00, + 0x70, 0xb5, 0x0a, 0x4e, 0x3c, 0x00, 0x78, 0x0f, + 0x00, 0x00, 0x09, 0x4d, 0x08, 0x4c, 0x08, 0x3e, + 0xe1, 0x69, 0x00, 0x29, 0x07, 0xd0, 0x70, 0x68, + 0x41, 0x60, 0x00, 0x7b, 0x81, 0x00, 0x69, 0x58, + 0xff, 0xf7, 0x24, 0xfa, 0xf4, 0xe7, 0x03, 0x49, + 0x02, 0x20, 0x08, 0x70, 0x70, 0xbd, 0x00, 0x10, + 0x07, 0x00, 0xe0, 0x7e, 0x01, 0x00, 0x00, 0x02, + 0x07, 0x00, 0xb0, 0xb5, 0x09, 0x4d, 0x04, 0x1c, + 0x28, 0x1c, 0x20, 0x22, 0x40, 0x30, 0x3c, 0x00, + 0xb4, 0x0f, 0x00, 0x00, 0x05, 0x49, 0xff, 0xf7, + 0x9f, 0xfa, 0xe0, 0x68, 0xe8, 0x60, 0x20, 0x69, + 0x28, 0x61, 0xa0, 0x6a, 0xa8, 0x62, 0x60, 0x68, + 0x68, 0x60, 0xb0, 0xbd, 0x70, 0x52, 0x01, 0x00, + 0x00, 0x10, 0x07, 0x00, 0xf8, 0xb5, 0x00, 0x24, + 0x00, 0x23, 0x20, 0x28, 0x01, 0xdb, 0x01, 0x24, + 0x07, 0xe0, 0x08, 0x4e, 0x80, 0x00, 0x35, 0x58, + 0x07, 0x4f, 0xbd, 0x42, 0x00, 0xd0, 0x2b, 0x1c, + 0x3c, 0x00, 0xf0, 0x0f, 0x00, 0x00, 0x31, 0x50, + 0x13, 0x60, 0x00, 0x2c, 0x03, 0xd0, 0x21, 0x1c, + 0x82, 0x20, 0x00, 0xf0, 0x52, 0xf9, 0x20, 0x1c, + 0xf8, 0xbd, 0xe0, 0x7e, 0x01, 0x00, 0x75, 0x75, + 0x00, 0x00, 0xb0, 0xb5, 0x0b, 0x4d, 0x04, 0x1c, + 0x28, 0x68, 0x00, 0x28, 0x0f, 0xd0, 0x20, 0x1c, + 0x12, 0xf0, 0xb7, 0xfd, 0x00, 0x28, 0x0a, 0xd0, + 0x21, 0x7a, 0x28, 0x7a, 0x0a, 0x07, 0x00, 0x07, + 0x00, 0x0f, 0x3c, 0x00, 0x2c, 0x10, 0x00, 0x00, + 0x12, 0x0f, 0x90, 0x42, 0x29, 0x72, 0x01, 0xd0, + 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, + 0x70, 0x78, 0x01, 0x00, 0xf0, 0xb5, 0x42, 0x4e, + 0x05, 0x1c, 0x30, 0x68, 0x85, 0xb0, 0x00, 0x28, + 0x63, 0xd0, 0x00, 0x24, 0x00, 0x20, 0x00, 0x2d, + 0x06, 0xd0, 0x69, 0x78, 0x18, 0x29, 0x03, 0xd1, + 0xe9, 0x79, 0x01, 0x29, 0x00, 0xd1, 0x01, 0x20, + 0x00, 0x28, 0x45, 0xd0, 0x3c, 0x00, 0x68, 0x10, + 0x00, 0x00, 0x00, 0x20, 0xb0, 0x72, 0x81, 0x00, + 0x4a, 0x19, 0x93, 0x7a, 0x59, 0x06, 0x89, 0x0f, + 0xdb, 0x06, 0x04, 0xd5, 0xb3, 0x7a, 0x01, 0x27, + 0x8f, 0x40, 0x3b, 0x43, 0xb3, 0x72, 0xd2, 0x7a, + 0x13, 0x09, 0x12, 0x07, 0x12, 0x0f, 0x93, 0x42, + 0x05, 0xd3, 0x01, 0x22, 0x8a, 0x40, 0x14, 0x43, + 0x01, 0xaa, 0x89, 0x00, 0x50, 0x50, 0x01, 0x30, + 0x04, 0x28, 0xe4, 0xdb, 0xb0, 0x7a, 0x3c, 0x00, + 0xa4, 0x10, 0x00, 0x00, 0x20, 0x40, 0x01, 0x07, + 0x0d, 0xd5, 0x41, 0x07, 0x09, 0xd5, 0xc1, 0x07, + 0x05, 0xd5, 0x81, 0x07, 0x01, 0xd5, 0x00, 0x24, + 0x05, 0xe0, 0x02, 0x99, 0x02, 0xe0, 0x01, 0x99, + 0x00, 0xe0, 0x03, 0x99, 0x04, 0x91, 0x41, 0x07, + 0x09, 0xd5, 0xc1, 0x07, 0x05, 0xd5, 0x81, 0x07, + 0x01, 0xd5, 0x00, 0x24, 0x03, 0xe0, 0x02, 0x99, + 0x00, 0xe0, 0x01, 0x99, 0x03, 0x91, 0xc1, 0x07, + 0x3c, 0x00, 0xe0, 0x10, 0x00, 0x00, 0x05, 0xd5, + 0x81, 0x07, 0x01, 0xd5, 0x00, 0x24, 0x01, 0xe0, + 0x02, 0x99, 0x01, 0x91, 0x80, 0x07, 0x01, 0xd5, + 0x00, 0x24, 0x22, 0xe0, 0x0f, 0x2c, 0x20, 0xd1, + 0x70, 0x68, 0x00, 0x28, 0x0b, 0xd0, 0x04, 0x9a, + 0x02, 0xab, 0x00, 0x92, 0x0a, 0xcb, 0x01, 0x9a, + 0x28, 0x1c, 0x0b, 0xf0, 0x8a, 0xfb, 0x00, 0x20, + 0x70, 0x60, 0x10, 0xe0, 0x17, 0xe0, 0x30, 0x7a, + 0x29, 0x7a, 0x3c, 0x00, 0x1c, 0x11, 0x00, 0x00, + 0x00, 0x07, 0x09, 0x07, 0x09, 0x0f, 0x00, 0x0f, + 0x88, 0x42, 0x07, 0xd0, 0x04, 0x9a, 0x02, 0xab, + 0x00, 0x92, 0x0a, 0xcb, 0x01, 0x9a, 0x28, 0x1c, + 0x0b, 0xf0, 0x76, 0xfb, 0x28, 0x7a, 0x30, 0x72, + 0x01, 0x20, 0x0f, 0x2c, 0x00, 0xd0, 0x00, 0x20, + 0x05, 0xb0, 0xf0, 0xbd, 0x01, 0x20, 0xfb, 0xe7, + 0x70, 0x78, 0x01, 0x00, 0x0d, 0x4a, 0x70, 0xb5, + 0x11, 0x68, 0x00, 0x20, 0x3c, 0x00, 0x58, 0x11, + 0x00, 0x00, 0x00, 0x29, 0x0e, 0xd0, 0x11, 0x7a, + 0x09, 0x06, 0x0b, 0xd5, 0x53, 0x7a, 0x94, 0x7a, + 0x03, 0x21, 0x01, 0x25, 0x2a, 0x1c, 0x8a, 0x40, + 0x1e, 0x1c, 0x16, 0x40, 0x03, 0xd0, 0x22, 0x40, + 0x01, 0xd1, 0x01, 0x20, 0x70, 0xbd, 0xff, 0x31, + 0x09, 0x06, 0x09, 0x16, 0xf2, 0xd5, 0x70, 0xbd, + 0x00, 0x00, 0x70, 0x78, 0x01, 0x00, 0x10, 0xb5, + 0x08, 0x4c, 0x20, 0x68, 0x00, 0x28, 0x3c, 0x00, + 0x94, 0x11, 0x00, 0x00, 0x04, 0xd0, 0x60, 0x68, + 0x00, 0x28, 0x01, 0xd1, 0x0b, 0xf0, 0xc0, 0xfb, + 0x00, 0x20, 0x00, 0x21, 0x00, 0x22, 0x07, 0xc4, + 0x0c, 0x3c, 0x01, 0x20, 0x60, 0x60, 0x10, 0xbd, + 0x70, 0x78, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0x08, 0x60, 0x70, 0x47, 0x70, 0x78, 0x01, 0x00, + 0xf8, 0xb5, 0x0e, 0x4d, 0x04, 0x1c, 0x00, 0x20, + 0x68, 0x72, 0x20, 0x1c, 0x12, 0xf0, 0xde, 0xfc, + 0x3c, 0x00, 0xd0, 0x11, 0x00, 0x00, 0x00, 0x28, + 0x12, 0xd0, 0x00, 0x20, 0x03, 0x21, 0x01, 0x22, + 0x0f, 0x1a, 0x16, 0x1c, 0x23, 0x7a, 0xbe, 0x40, + 0x33, 0x40, 0x04, 0xd0, 0x6b, 0x7a, 0x16, 0x1c, + 0x86, 0x40, 0x33, 0x43, 0x6b, 0x72, 0x01, 0x30, + 0x00, 0x06, 0x00, 0x0e, 0x03, 0x28, 0xef, 0xd9, + 0xf8, 0xbd, 0x70, 0x78, 0x01, 0x00, 0x92, 0x00, + 0x51, 0x18, 0x8a, 0x7a, 0x12, 0x07, 0x12, 0x0f, + 0x02, 0x70, 0x3c, 0x00, 0x0c, 0x12, 0x00, 0x00, + 0xca, 0x7a, 0x12, 0x07, 0x12, 0x0f, 0x42, 0x70, + 0xca, 0x7a, 0x12, 0x09, 0x82, 0x70, 0x09, 0x7b, + 0x81, 0x80, 0x70, 0x47, 0x03, 0x4a, 0x0f, 0x21, + 0x52, 0x7a, 0x01, 0x20, 0x91, 0x43, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x78, 0x01, 0x00, + 0x40, 0x07, 0x05, 0x49, 0x40, 0x0f, 0x05, 0x4a, + 0x09, 0x56, 0x52, 0x7a, 0x01, 0x20, 0x0a, 0x40, + 0x00, 0xd1, 0x00, 0x20, 0x3c, 0x00, 0x48, 0x12, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x5e, 0x46, + 0x01, 0x00, 0x70, 0x78, 0x01, 0x00, 0x12, 0x4a, + 0x70, 0xb5, 0x53, 0x7a, 0x94, 0x7a, 0xff, 0x20, + 0x03, 0x21, 0x01, 0x25, 0x2a, 0x1c, 0x8a, 0x40, + 0x1e, 0x1c, 0x16, 0x40, 0x14, 0xd0, 0x22, 0x40, + 0x12, 0xd1, 0x08, 0x06, 0x00, 0x0e, 0x07, 0xd0, + 0x01, 0x28, 0x07, 0xd0, 0x02, 0x28, 0x07, 0xd0, + 0x03, 0x28, 0x07, 0xd1, 0x07, 0x20, 0x3c, 0x00, + 0x84, 0x12, 0x00, 0x00, 0x70, 0xbd, 0x03, 0x20, + 0x70, 0xbd, 0x01, 0x20, 0x70, 0xbd, 0x05, 0x20, + 0x70, 0xbd, 0xff, 0x20, 0x70, 0xbd, 0xff, 0x31, + 0x09, 0x06, 0x09, 0x16, 0xe1, 0xd5, 0x70, 0xbd, + 0x70, 0x78, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x13, 0x48, 0x0d, 0x1c, 0x81, 0x68, 0x00, 0x29, + 0x05, 0xd0, 0x01, 0x7b, 0x00, 0x29, 0x01, 0xd1, + 0x04, 0x73, 0x45, 0x73, 0xf8, 0xbd, 0x0f, 0x4e, + 0x3c, 0x00, 0xc0, 0x12, 0x00, 0x00, 0x31, 0x1c, + 0x20, 0x31, 0x8a, 0x79, 0x00, 0xab, 0x1a, 0x70, + 0xc9, 0x79, 0x59, 0x70, 0x42, 0x68, 0x00, 0x2a, + 0x07, 0xd0, 0x20, 0x02, 0x28, 0x43, 0x01, 0x1c, + 0x00, 0x20, 0xff, 0xf7, 0x7e, 0xf8, 0x00, 0x28, + 0x04, 0xd1, 0x2a, 0x1c, 0x21, 0x1c, 0x00, 0x20, + 0x11, 0xf0, 0x0f, 0xf8, 0x00, 0xab, 0x18, 0x88, + 0xf0, 0x84, 0xe2, 0xe7, 0x00, 0x00, 0x88, 0x5a, + 0x01, 0x00, 0x3c, 0x00, 0xfc, 0x12, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x81, 0x20, 0xff, 0xf7, 0xcd, 0xff, 0x80, 0xbd, + 0x01, 0x49, 0x01, 0x20, 0x88, 0x60, 0x70, 0x47, + 0x88, 0x5a, 0x01, 0x00, 0x05, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0x88, 0x60, 0x08, 0x7b, 0x00, 0x28, + 0x02, 0xd0, 0x49, 0x7b, 0xff, 0xf7, 0xbc, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x88, 0x5a, 0x01, 0x00, + 0x02, 0x4a, 0x01, 0x1c, 0x3c, 0x00, 0x38, 0x13, + 0x00, 0x00, 0x50, 0x68, 0x51, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x88, 0x5a, 0x01, 0x00, 0x10, 0xb5, + 0x0c, 0x1c, 0x07, 0xf0, 0x64, 0xfa, 0x04, 0x61, + 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, 0xff, 0xb5, + 0x0e, 0x1c, 0x1f, 0x1c, 0x38, 0x20, 0x81, 0xb0, + 0x00, 0xf0, 0x3d, 0xfa, 0x1d, 0x49, 0x04, 0x1c, + 0x48, 0x69, 0x00, 0x28, 0x01, 0xd1, 0x4c, 0x61, + 0x00, 0xe0, 0x04, 0x60, 0x30, 0x01, 0x3c, 0x00, + 0x74, 0x13, 0x00, 0x00, 0x00, 0x90, 0x00, 0x04, + 0x00, 0x0c, 0x00, 0xf0, 0x15, 0xfa, 0x05, 0x1c, + 0x00, 0x99, 0xff, 0xf7, 0x8b, 0xf8, 0x00, 0x20, + 0x73, 0x1e, 0x04, 0xe0, 0x01, 0x01, 0x4a, 0x19, + 0x10, 0x32, 0x6a, 0x50, 0x01, 0x30, 0x98, 0x42, + 0xf8, 0xd3, 0x00, 0x01, 0x2d, 0x50, 0x38, 0x21, + 0x20, 0x1c, 0xff, 0xf7, 0x7b, 0xf8, 0xa5, 0x60, + 0x65, 0x60, 0xe6, 0x85, 0x0c, 0x20, 0x60, 0x86, + 0x3c, 0x00, 0xb0, 0x13, 0x00, 0x00, 0xaf, 0x20, + 0x80, 0x01, 0xe0, 0x61, 0x0e, 0x20, 0xe0, 0x86, + 0x00, 0x20, 0x20, 0x60, 0x01, 0x98, 0xe0, 0x60, + 0x38, 0x68, 0x60, 0x61, 0x03, 0x99, 0x04, 0x48, + 0x08, 0x60, 0x04, 0x48, 0x38, 0x60, 0x05, 0xb0, + 0x00, 0x20, 0xf0, 0xbd, 0x00, 0x00, 0xfc, 0x5a, + 0x01, 0x00, 0xdd, 0x15, 0x01, 0x00, 0xfd, 0x16, + 0x01, 0x00, 0x02, 0x1c, 0x08, 0x1c, 0xf0, 0x2a, + 0x80, 0xb5, 0x3c, 0x00, 0xec, 0x13, 0x00, 0x00, + 0x04, 0xd0, 0xf1, 0x2a, 0x07, 0xd1, 0x06, 0xf0, + 0x09, 0xfb, 0x80, 0xbd, 0x07, 0xf0, 0x0c, 0xfa, + 0x0d, 0xf0, 0xa8, 0xfa, 0x80, 0xbd, 0x01, 0x21, + 0x02, 0x20, 0xff, 0xf7, 0x4d, 0xff, 0x80, 0xbd, + 0x01, 0x49, 0x00, 0x20, 0x48, 0x61, 0x70, 0x47, + 0xfc, 0x5a, 0x01, 0x00, 0x00, 0x28, 0x02, 0xd0, + 0x00, 0x29, 0x00, 0xd0, 0xc1, 0x60, 0x70, 0x47, + 0xf8, 0xb5, 0x17, 0x1c, 0x3c, 0x00, 0x28, 0x14, + 0x00, 0x00, 0x0e, 0x1c, 0x05, 0x1c, 0x1c, 0x1c, + 0x1c, 0x30, 0x07, 0xf0, 0xc8, 0xf8, 0x01, 0x69, + 0x42, 0x69, 0x80, 0x68, 0x89, 0x19, 0x89, 0x1a, + 0x81, 0x42, 0x06, 0xd2, 0x23, 0x1c, 0x3a, 0x1c, + 0x31, 0x1c, 0x28, 0x1c, 0x00, 0xf0, 0x05, 0xf8, + 0xf8, 0xbd, 0x00, 0x20, 0x38, 0x60, 0x20, 0x60, + 0xfa, 0xe7, 0xff, 0xb5, 0x85, 0xb0, 0x05, 0x98, + 0x01, 0x27, 0x0e, 0x1c, 0x1c, 0x30, 0x3c, 0x00, + 0x64, 0x14, 0x00, 0x00, 0x07, 0xf0, 0xae, 0xf8, + 0x04, 0x1c, 0x80, 0x88, 0x04, 0x30, 0x03, 0x90, + 0x2c, 0x48, 0x04, 0x90, 0x80, 0x79, 0x02, 0x90, + 0xa0, 0x69, 0xb0, 0x42, 0x17, 0xd2, 0x35, 0x1a, + 0x11, 0xe0, 0x03, 0x98, 0xff, 0xf7, 0x16, 0xfc, + 0x00, 0x28, 0x06, 0xd1, 0x01, 0x21, 0x8e, 0x20, + 0xff, 0xf7, 0x08, 0xff, 0x00, 0x25, 0x00, 0x27, + 0x05, 0xe0, 0x21, 0x68, 0x01, 0x60, 0x20, 0x60, + 0x3c, 0x00, 0xa0, 0x14, 0x00, 0x00, 0xa0, 0x69, + 0x01, 0x30, 0xa0, 0x61, 0x01, 0x3d, 0xeb, 0xd2, + 0x00, 0x2f, 0x35, 0xd0, 0xa0, 0x69, 0x80, 0x1b, + 0xa0, 0x61, 0x20, 0x69, 0x80, 0x19, 0x20, 0x61, + 0x61, 0x69, 0x40, 0x1a, 0xe1, 0x68, 0x88, 0x42, + 0x03, 0xd9, 0x07, 0x21, 0x8e, 0x20, 0xff, 0xf7, + 0xec, 0xfe, 0x25, 0x68, 0x2f, 0x1c, 0x70, 0x1e, + 0x01, 0x95, 0x00, 0xe0, 0x3f, 0x68, 0x01, 0x38, + 0xfc, 0xd2, 0x3c, 0x00, 0xdc, 0x14, 0x00, 0x00, + 0x38, 0x68, 0x20, 0x60, 0x02, 0x98, 0x04, 0x99, + 0x88, 0x71, 0x2e, 0x68, 0x2c, 0x60, 0x32, 0x1d, + 0x00, 0x92, 0x29, 0x1c, 0x20, 0x31, 0x01, 0x22, + 0x28, 0x1d, 0x05, 0x9b, 0x08, 0xf0, 0x7a, 0xfc, + 0xbd, 0x42, 0x01, 0xd0, 0x35, 0x1c, 0xf0, 0xe7, + 0x00, 0x20, 0x38, 0x61, 0x01, 0x98, 0x07, 0x99, + 0x04, 0x30, 0x08, 0x60, 0x08, 0x98, 0x04, 0x37, + 0x07, 0x60, 0x09, 0xb0, 0x3c, 0x00, 0x18, 0x15, + 0x00, 0x00, 0xf0, 0xbd, 0x02, 0x98, 0x04, 0x99, + 0x88, 0x71, 0xf9, 0xe7, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0x38, 0xb5, 0x04, 0x1c, 0x15, 0x1c, + 0x00, 0x20, 0x0c, 0x60, 0x09, 0xe0, 0xe2, 0x68, + 0x20, 0x1c, 0x00, 0x92, 0xa3, 0x8a, 0x21, 0x68, + 0xa2, 0x69, 0x08, 0xf0, 0x56, 0xfc, 0x20, 0x1c, + 0xe4, 0x68, 0x00, 0x2c, 0xf3, 0xd1, 0x28, 0x60, + 0x38, 0xbd, 0x80, 0xb5, 0x0c, 0xe0, 0x3c, 0x00, + 0x54, 0x15, 0x00, 0x00, 0xc2, 0x68, 0x8a, 0x42, + 0x08, 0xd1, 0x00, 0x21, 0xc1, 0x60, 0x00, 0x28, + 0x03, 0xd1, 0x06, 0x21, 0x8e, 0x20, 0xff, 0xf7, + 0x9d, 0xfe, 0x80, 0xbd, 0x10, 0x1c, 0x00, 0x28, + 0xf7, 0xd0, 0xef, 0xe7, 0x10, 0xb5, 0x04, 0x1c, + 0x0c, 0xd0, 0xa0, 0x69, 0x00, 0x28, 0x06, 0xd1, + 0x20, 0x69, 0x00, 0x28, 0x03, 0xd0, 0x06, 0xf0, + 0xf7, 0xfd, 0x00, 0x20, 0x20, 0x61, 0x20, 0x1c, + 0x3c, 0x00, 0x90, 0x15, 0x00, 0x00, 0x06, 0xf0, + 0xf2, 0xfd, 0x10, 0xbd, 0x00, 0x00, 0x10, 0xb5, + 0x00, 0x28, 0x09, 0xd0, 0xc4, 0x68, 0x03, 0xe0, + 0xff, 0xf7, 0xe7, 0xff, 0x20, 0x1c, 0xf9, 0xe7, + 0x00, 0x2c, 0xf9, 0xd1, 0xff, 0xf7, 0xe1, 0xff, + 0x10, 0xbd, 0x01, 0x1c, 0x00, 0x20, 0x04, 0xe0, + 0x0a, 0x89, 0xc9, 0x68, 0x10, 0x18, 0x00, 0x04, + 0x00, 0x0c, 0x00, 0x29, 0xf8, 0xd1, 0x70, 0x47, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x15, 0x00, 0x00, + 0x00, 0xe0, 0x08, 0x1c, 0xc1, 0x68, 0x00, 0x29, + 0xfb, 0xd1, 0x70, 0x47, 0xf8, 0xb5, 0x06, 0x1c, + 0x0c, 0x1c, 0x1c, 0x20, 0x00, 0xf0, 0x68, 0xfa, + 0x05, 0x1c, 0x00, 0x2e, 0x01, 0xd1, 0x00, 0x2c, + 0x02, 0xd1, 0x30, 0x1c, 0x01, 0x21, 0x03, 0xe0, + 0x20, 0x1c, 0x00, 0xf0, 0x5d, 0xfa, 0x00, 0x21, + 0x00, 0x22, 0x00, 0x92, 0x0a, 0x1c, 0x01, 0x1c, + 0x23, 0x1c, 0x28, 0x1c, 0x3c, 0x00, 0x08, 0x16, + 0x00, 0x00, 0x08, 0xf0, 0xf2, 0xfb, 0x28, 0x1c, + 0xf8, 0xbd, 0xb0, 0xb5, 0x03, 0x32, 0x92, 0x08, + 0x92, 0x00, 0x14, 0x04, 0x24, 0x0c, 0x09, 0x19, + 0x1d, 0x1c, 0xc9, 0x18, 0x09, 0x04, 0x09, 0x0c, + 0xff, 0xf7, 0xd7, 0xff, 0x01, 0x89, 0x02, 0x68, + 0x12, 0x19, 0x09, 0x1b, 0x49, 0x1b, 0x02, 0x60, + 0x01, 0x81, 0xb0, 0xbd, 0x00, 0x00, 0xf8, 0xb5, + 0x0a, 0x4c, 0xa0, 0x21, 0x20, 0x1c, 0x3c, 0x00, + 0x44, 0x16, 0x00, 0x00, 0xfe, 0xf7, 0x2a, 0xff, + 0x00, 0x20, 0x26, 0x1c, 0xa0, 0x36, 0x07, 0x4d, + 0x07, 0xe0, 0x0c, 0x21, 0x41, 0x43, 0x49, 0x19, + 0x0e, 0xc9, 0x27, 0x1d, 0x0e, 0xc7, 0x20, 0x34, + 0x01, 0x30, 0xa6, 0x42, 0xf5, 0xd1, 0xf8, 0xbd, + 0xd0, 0x5c, 0x01, 0x00, 0xc8, 0x3f, 0x01, 0x00, + 0xf7, 0xb5, 0xc4, 0x68, 0x06, 0x1c, 0x00, 0x25, + 0x00, 0x2c, 0x82, 0xb0, 0x23, 0xd0, 0x20, 0x89, + 0x3c, 0x00, 0x80, 0x16, 0x00, 0x00, 0x90, 0x42, + 0x20, 0xd3, 0xe1, 0x68, 0x87, 0x1a, 0x01, 0x91, + 0x00, 0x21, 0xe1, 0x60, 0x03, 0x99, 0x00, 0x20, + 0xff, 0xf7, 0xa1, 0xff, 0x05, 0x1c, 0x20, 0x89, + 0xc0, 0x1b, 0x20, 0x81, 0x2a, 0x68, 0x03, 0x99, + 0x30, 0x1c, 0x00, 0xf0, 0x16, 0xf8, 0x20, 0x89, + 0xc0, 0x19, 0x20, 0x81, 0x01, 0x99, 0x20, 0x1c, + 0xff, 0xf7, 0xb1, 0xfe, 0x21, 0x1c, 0x28, 0x1c, + 0xff, 0xf7, 0x3c, 0x00, 0xbc, 0x16, 0x00, 0x00, + 0xad, 0xfe, 0x29, 0x1c, 0x30, 0x1c, 0xff, 0xf7, + 0xa9, 0xfe, 0x01, 0x20, 0x00, 0x2d, 0x00, 0xd1, + 0x00, 0x20, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xf7, 0xb5, 0x04, 0x1c, 0x0e, 0x1c, 0x00, 0x20, + 0x01, 0xe0, 0x20, 0x1c, 0x0c, 0x1c, 0xe1, 0x68, + 0x00, 0x29, 0xfa, 0xd1, 0x27, 0x89, 0xb7, 0x42, + 0x0a, 0xd3, 0xb8, 0x1b, 0x00, 0x04, 0x00, 0x0c, + 0x20, 0x81, 0x21, 0x68, 0x3c, 0x00, 0xf8, 0x16, + 0x00, 0x00, 0x09, 0x18, 0x02, 0x98, 0x32, 0x1c, + 0xfe, 0xf7, 0xfb, 0xfe, 0xfe, 0xbd, 0xf1, 0x1b, + 0x0d, 0x04, 0x2d, 0x0c, 0x00, 0x28, 0x19, 0xd0, + 0x01, 0x89, 0xa9, 0x42, 0x16, 0xd3, 0x49, 0x1b, + 0x09, 0x04, 0x09, 0x0c, 0x01, 0x81, 0x00, 0x68, + 0x41, 0x18, 0x02, 0x98, 0x2a, 0x1c, 0xfe, 0xf7, + 0xe8, 0xfe, 0x21, 0x68, 0x02, 0x98, 0x72, 0x1b, + 0x40, 0x19, 0xfe, 0xf7, 0xe2, 0xfe, 0x3c, 0x00, + 0x34, 0x17, 0x00, 0x00, 0x20, 0x89, 0xc0, 0x1b, + 0x20, 0x81, 0x20, 0x68, 0xc0, 0x19, 0x20, 0x60, + 0xdf, 0xe7, 0x03, 0x21, 0x8e, 0x20, 0xff, 0xf7, + 0xad, 0xfd, 0xda, 0xe7, 0xf8, 0xb5, 0x04, 0x1c, + 0x00, 0x26, 0x13, 0xe0, 0x21, 0x89, 0x00, 0x20, + 0xff, 0xf7, 0x3e, 0xff, 0x05, 0x1c, 0x22, 0x89, + 0x21, 0x68, 0x00, 0x68, 0xfe, 0xf7, 0xc8, 0xfe, + 0x00, 0x2e, 0x01, 0xd1, 0x2e, 0x1c, 0x03, 0xe0, + 0x3c, 0x00, 0x70, 0x17, 0x00, 0x00, 0x29, 0x1c, + 0x38, 0x1c, 0xff, 0xf7, 0x50, 0xfe, 0xe4, 0x68, + 0x2f, 0x1c, 0x00, 0x2c, 0xe9, 0xd1, 0x30, 0x1c, + 0xf8, 0xbd, 0xb0, 0xb5, 0x04, 0x1c, 0x00, 0x89, + 0x40, 0x1a, 0x05, 0x04, 0x20, 0x68, 0x2d, 0x0c, + 0x40, 0x18, 0x29, 0x1c, 0xff, 0xf7, 0x1f, 0xff, + 0x21, 0x89, 0x49, 0x1b, 0x21, 0x81, 0xe1, 0x68, + 0xc1, 0x60, 0xe0, 0x60, 0xb0, 0xbd, 0x10, 0xb5, + 0x03, 0x30, 0x3c, 0x00, 0xac, 0x17, 0x00, 0x00, + 0x09, 0x4a, 0x81, 0x08, 0x10, 0x68, 0x3d, 0x24, + 0x08, 0x4b, 0x64, 0x01, 0x89, 0x00, 0x09, 0x18, + 0x1b, 0x19, 0x99, 0x42, 0x01, 0xd8, 0x11, 0x60, + 0x10, 0xbd, 0x0f, 0x21, 0x80, 0x20, 0xff, 0xf7, + 0x6b, 0xfd, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0xb4, 0xcf, 0x01, 0x00, 0x14, 0xc8, 0x01, 0x00, + 0x10, 0xb5, 0x11, 0xf0, 0x61, 0xff, 0x04, 0x1c, + 0x03, 0xd1, 0x0d, 0x21, 0x3c, 0x00, 0xe8, 0x17, + 0x00, 0x00, 0x80, 0x20, 0xff, 0xf7, 0x5b, 0xfd, + 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x01, 0x1f, 0x0b, 0x68, 0x0d, 0x48, 0x00, 0x22, + 0x83, 0x42, 0x04, 0xd0, 0x01, 0x32, 0x10, 0x30, + 0x03, 0x2a, 0xf9, 0xd3, 0x01, 0xe0, 0x03, 0x2a, + 0x06, 0xd3, 0x09, 0x24, 0x21, 0x1c, 0x80, 0x20, + 0xff, 0xf7, 0x45, 0xfd, 0x20, 0x1c, 0xb0, 0xbd, + 0x05, 0x4b, 0x00, 0x24, 0x9a, 0x79, 0x3c, 0x00, + 0x24, 0x18, 0x00, 0x00, 0x85, 0x68, 0x0d, 0x60, + 0x81, 0x60, 0x9a, 0x71, 0xf5, 0xe7, 0x00, 0x00, + 0x20, 0x57, 0x01, 0x00, 0x20, 0x10, 0x07, 0x00, + 0xb0, 0xb5, 0x00, 0x21, 0x10, 0x4a, 0x00, 0x23, + 0xd4, 0x68, 0x84, 0x42, 0x04, 0xd2, 0x01, 0x33, + 0x10, 0x32, 0x03, 0x2b, 0xf8, 0xd3, 0x01, 0xe0, + 0x03, 0x2b, 0x01, 0xd3, 0x04, 0x21, 0x0e, 0xe0, + 0x0a, 0x4c, 0xa3, 0x79, 0x90, 0x68, 0x00, 0x28, + 0x3c, 0x00, 0x60, 0x18, 0x00, 0x00, 0x02, 0xd1, + 0xa3, 0x71, 0x03, 0x21, 0x06, 0xe0, 0x05, 0x68, + 0x95, 0x60, 0xa3, 0x71, 0x00, 0x29, 0x01, 0xd1, + 0x04, 0xc0, 0xb0, 0xbd, 0x80, 0x20, 0xff, 0xf7, + 0x14, 0xfd, 0x00, 0x20, 0xb0, 0xbd, 0x20, 0x57, + 0x01, 0x00, 0x20, 0x10, 0x07, 0x00, 0xa0, 0x30, + 0x00, 0x8a, 0x40, 0x07, 0x40, 0x0f, 0x08, 0x28, + 0x0f, 0xd2, 0x01, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x3c, 0x00, 0x9c, 0x18, 0x00, 0x00, + 0x05, 0x03, 0x03, 0x05, 0x07, 0x07, 0x09, 0x09, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x02, 0x20, 0x70, 0x47, 0x03, 0x20, 0x70, 0x47, + 0x04, 0x20, 0x70, 0x47, 0xb0, 0xb5, 0x10, 0x4d, + 0x68, 0x69, 0x00, 0x28, 0x07, 0xd0, 0x0e, 0x49, + 0x00, 0x22, 0x2c, 0x31, 0x03, 0xc9, 0x01, 0x43, + 0x03, 0x20, 0x06, 0xf0, 0xcf, 0xff, 0x0b, 0x4c, + 0x00, 0x22, 0x03, 0xcc, 0x3c, 0x00, 0xd8, 0x18, + 0x00, 0x00, 0x08, 0x3c, 0x01, 0x43, 0x03, 0x20, + 0x06, 0xf0, 0xaf, 0xff, 0x03, 0xcc, 0x08, 0x43, + 0x07, 0x49, 0x4a, 0x68, 0x02, 0x43, 0x4a, 0x60, + 0x8a, 0x68, 0x10, 0x43, 0x88, 0x60, 0x01, 0x20, + 0x68, 0x61, 0xb0, 0xbd, 0x00, 0x00, 0x64, 0x73, + 0x01, 0x00, 0xb0, 0x58, 0x01, 0x00, 0x10, 0x00, + 0x07, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x0f, 0xf0, + 0xa8, 0xfa, 0x05, 0x4d, 0xe8, 0x6a, 0x3c, 0x00, + 0x14, 0x19, 0x00, 0x00, 0x00, 0x28, 0x06, 0xd1, + 0x00, 0x2c, 0x04, 0xd0, 0x20, 0x1c, 0x0f, 0xf0, + 0xb7, 0xfd, 0x01, 0x20, 0x28, 0x70, 0xb0, 0xbd, + 0xf4, 0x6e, 0x01, 0x00, 0x05, 0x49, 0x80, 0xb5, + 0x88, 0x6a, 0x00, 0x28, 0x04, 0xda, 0x00, 0x20, + 0x88, 0x62, 0x01, 0x21, 0x0d, 0xf0, 0x42, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7e, 0x01, 0x00, + 0xf8, 0xb5, 0x1e, 0x4d, 0x04, 0x1c, 0x00, 0x20, + 0x3c, 0x00, 0x50, 0x19, 0x00, 0x00, 0x68, 0x62, + 0xa8, 0x70, 0x1c, 0x48, 0x00, 0x78, 0xc0, 0x07, + 0x22, 0xd5, 0xb8, 0x20, 0x03, 0x59, 0x1a, 0x48, + 0x00, 0x78, 0x0e, 0x28, 0x09, 0xd1, 0x0a, 0x1c, + 0x80, 0x32, 0x06, 0xd0, 0x18, 0x4e, 0x0d, 0x20, + 0x32, 0x5c, 0x8a, 0x42, 0x01, 0xdd, 0x01, 0x38, + 0xfa, 0xd1, 0x59, 0x1e, 0x0b, 0x06, 0x1b, 0x0e, + 0xab, 0x70, 0xab, 0x62, 0x0e, 0x28, 0x0b, 0xd2, + 0x08, 0xe0, 0x3c, 0x00, 0x8c, 0x19, 0x00, 0x00, + 0x62, 0x18, 0xb0, 0x32, 0x12, 0x7b, 0x82, 0x42, + 0x02, 0xd8, 0x58, 0x1a, 0xa8, 0x62, 0x02, 0xe0, + 0x01, 0x39, 0x00, 0x29, 0xf4, 0xda, 0x0e, 0xf0, + 0x35, 0xf9, 0x00, 0x90, 0x00, 0xab, 0x18, 0x78, + 0x59, 0x78, 0x81, 0x42, 0x00, 0xd9, 0x58, 0x78, + 0xed, 0x30, 0xe8, 0x70, 0x01, 0x21, 0x20, 0x1c, + 0x0d, 0xf0, 0x02, 0xfd, 0xf8, 0xbd, 0x00, 0x00, + 0xac, 0x7e, 0x01, 0x00, 0x3c, 0x00, 0xc8, 0x19, + 0x00, 0x00, 0x1d, 0x75, 0x01, 0x00, 0x11, 0x67, + 0x01, 0x00, 0xc7, 0x52, 0x01, 0x00, 0x0e, 0x49, + 0x10, 0xb5, 0x08, 0x69, 0x8b, 0x68, 0xc2, 0x00, + 0xd4, 0x18, 0x62, 0x68, 0x00, 0x2a, 0x0f, 0xd1, + 0x01, 0x30, 0x08, 0x61, 0x07, 0x28, 0x01, 0xd1, + 0x00, 0x20, 0x08, 0x61, 0x20, 0x1c, 0x00, 0xf0, + 0x24, 0xf8, 0x05, 0x48, 0x21, 0x68, 0x54, 0x30, + 0x02, 0x6a, 0xfe, 0xf7, 0xec, 0xfc, 0x3c, 0x00, + 0x04, 0x1a, 0x00, 0x00, 0x10, 0xbd, 0x06, 0x21, + 0x06, 0x20, 0xff, 0xf7, 0x4b, 0xfc, 0x10, 0xbd, + 0x50, 0x6d, 0x01, 0x00, 0x08, 0x49, 0x09, 0x79, + 0xc9, 0x07, 0x08, 0x4a, 0x08, 0xd4, 0x00, 0xe0, + 0x08, 0x1c, 0xc1, 0x68, 0x00, 0x29, 0xfb, 0xd1, + 0x01, 0x89, 0x04, 0x31, 0x01, 0x81, 0x00, 0xe0, + 0x00, 0x20, 0xd0, 0x62, 0x70, 0x47, 0x00, 0x00, + 0x60, 0x80, 0x07, 0x00, 0x04, 0x6c, 0x01, 0x00, + 0x3c, 0x00, 0x40, 0x1a, 0x00, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x19, 0x21, 0x89, 0x01, 0x00, 0x20, + 0xff, 0xf7, 0xc5, 0xfd, 0x01, 0x1c, 0x60, 0x60, + 0x20, 0x68, 0xff, 0xf7, 0xe0, 0xfc, 0x60, 0x68, + 0x21, 0x68, 0x08, 0x30, 0x08, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x0a, 0x28, 0x01, 0xda, 0x04, 0x20, + 0x04, 0xe0, 0x50, 0x28, 0x01, 0xda, 0x05, 0x20, + 0x00, 0xe0, 0x07, 0x20, 0x04, 0x4a, 0x11, 0x78, + 0x38, 0x23, 0x3c, 0x00, 0x7c, 0x1a, 0x00, 0x00, + 0xc0, 0x00, 0x18, 0x40, 0x99, 0x43, 0x08, 0x43, + 0x10, 0x70, 0x70, 0x47, 0x88, 0x00, 0x07, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x07, 0x48, 0x40, 0x68, + 0x08, 0xe0, 0x01, 0x69, 0xa9, 0x42, 0x04, 0xd1, + 0x44, 0x68, 0x05, 0xf0, 0xc7, 0xfd, 0x20, 0x1c, + 0x00, 0xe0, 0x40, 0x68, 0x00, 0x28, 0xf4, 0xd1, + 0xb0, 0xbd, 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, + 0xf8, 0xb5, 0x00, 0x25, 0x3c, 0x00, 0xb8, 0x1a, + 0x00, 0x00, 0x06, 0xf0, 0x84, 0xfd, 0x11, 0x4f, + 0x04, 0x1c, 0xbe, 0x79, 0x20, 0x68, 0x00, 0x28, + 0x07, 0xd1, 0xa0, 0x88, 0x04, 0x30, 0xff, 0xf7, + 0xf2, 0xf8, 0x00, 0x28, 0x06, 0xd1, 0x01, 0x21, + 0x0f, 0xe0, 0x01, 0x68, 0x21, 0x60, 0xa1, 0x69, + 0x01, 0x39, 0xa1, 0x61, 0x10, 0xc0, 0x05, 0x1c, + 0x20, 0x69, 0x01, 0x30, 0x20, 0x61, 0x61, 0x69, + 0x40, 0x1a, 0xe1, 0x68, 0x88, 0x42, 0x3c, 0x00, + 0xf4, 0x1a, 0x00, 0x00, 0x03, 0xd9, 0x07, 0x21, + 0x8e, 0x20, 0xff, 0xf7, 0xd3, 0xfb, 0xbe, 0x71, + 0x28, 0x1c, 0xf8, 0xbd, 0x20, 0x10, 0x07, 0x00, + 0xb0, 0xb5, 0x09, 0xf0, 0xbb, 0xff, 0x2f, 0x4c, + 0x00, 0x28, 0x20, 0x74, 0x03, 0xd0, 0x01, 0x21, + 0x01, 0x20, 0x0a, 0xf0, 0x71, 0xfc, 0x2b, 0x4d, + 0x14, 0x35, 0x28, 0x68, 0x00, 0x28, 0x4d, 0xd0, + 0x01, 0x21, 0x0f, 0x20, 0x11, 0xf0, 0x82, 0xfd, + 0x3c, 0x00, 0x30, 0x1b, 0x00, 0x00, 0x28, 0x89, + 0x08, 0xf0, 0xfb, 0xff, 0x01, 0x1c, 0x01, 0x22, + 0x0f, 0x20, 0x11, 0xf0, 0x40, 0xfd, 0xe0, 0x78, + 0x01, 0x25, 0x02, 0x28, 0x36, 0xd1, 0x0a, 0xf0, + 0xc6, 0xf8, 0x00, 0x28, 0x0a, 0xd0, 0x0b, 0xf0, + 0x92, 0xfb, 0x1e, 0x49, 0x09, 0x68, 0x40, 0x18, + 0x11, 0xf0, 0x5f, 0xf8, 0x00, 0x28, 0x01, 0xd1, + 0x02, 0x20, 0x2f, 0xe0, 0xe0, 0x78, 0x02, 0x28, + 0x24, 0xd1, 0x3c, 0x00, 0x6c, 0x1b, 0x00, 0x00, + 0x60, 0x70, 0x25, 0x70, 0x60, 0x68, 0x01, 0x28, + 0x1c, 0xd0, 0x15, 0x48, 0x10, 0x38, 0x81, 0x7b, + 0x00, 0x29, 0x04, 0xd1, 0x85, 0x73, 0x0f, 0x20, + 0x13, 0x49, 0x10, 0xf0, 0x01, 0xfc, 0x08, 0xf0, + 0x4f, 0xfe, 0x00, 0x28, 0x07, 0xd0, 0x0e, 0x48, + 0x01, 0x21, 0x98, 0x38, 0x00, 0x69, 0x01, 0xf0, + 0xb7, 0xfd, 0x00, 0x28, 0x05, 0xd0, 0x01, 0x20, + 0x0e, 0xf0, 0x0c, 0xfd, 0x3c, 0x00, 0xa8, 0x1b, + 0x00, 0x00, 0x01, 0x20, 0x0e, 0xf0, 0x1d, 0xfc, + 0xb0, 0xbd, 0x05, 0xf0, 0xdc, 0xfe, 0xb0, 0xbd, + 0xe0, 0x78, 0x00, 0x28, 0x01, 0xd1, 0x25, 0x70, + 0xf7, 0xe7, 0x03, 0x20, 0x00, 0xe0, 0x04, 0x20, + 0x0d, 0xf0, 0x8d, 0xfa, 0xb0, 0xbd, 0x84, 0x66, + 0x01, 0x00, 0x6c, 0x57, 0x01, 0x00, 0xe9, 0x03, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x00, 0x21, + 0x00, 0x20, 0x0a, 0x4d, 0x00, 0xe0, 0x3c, 0x00, + 0xe4, 0x1b, 0x00, 0x00, 0x01, 0x31, 0xcb, 0x00, + 0x5a, 0x19, 0x16, 0x79, 0x01, 0x2e, 0x02, 0xd0, + 0x52, 0x79, 0xa2, 0x42, 0x02, 0xd0, 0x0b, 0x29, + 0xf4, 0xd3, 0x70, 0xbd, 0x0b, 0x29, 0xfc, 0xd2, + 0xc8, 0x00, 0x01, 0x21, 0x5a, 0x19, 0x28, 0x58, + 0x11, 0x71, 0x70, 0xbd, 0x38, 0x58, 0x01, 0x00, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x7f, 0x24, 0x23, + 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, 0x00, 0x6a, + 0x3c, 0x00, 0x20, 0x1c, 0x00, 0x00, 0xfe, 0xf7, + 0xda, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x94, 0x46, 0x01, 0x00, 0x80, 0xb5, + 0x04, 0xf0, 0x37, 0xff, 0x00, 0x20, 0x11, 0xf0, + 0x84, 0xfc, 0x00, 0x20, 0x80, 0xbd, 0xb0, 0xb5, + 0x05, 0x4c, 0x05, 0x1c, 0x20, 0x6b, 0xe1, 0x6a, + 0x02, 0xf0, 0xe3, 0xfd, 0x29, 0x1c, 0xa0, 0x6a, + 0x02, 0xf0, 0x11, 0xfb, 0xb0, 0xbd, 0xa4, 0x6c, + 0x01, 0x00, 0x3c, 0x00, 0x5c, 0x1c, 0x00, 0x00, + 0xb0, 0xb5, 0x03, 0x1c, 0x08, 0x1c, 0x14, 0x1c, + 0x00, 0x2b, 0x0c, 0x4d, 0x09, 0xd0, 0x69, 0x69, + 0x89, 0x00, 0x01, 0x31, 0x0a, 0x04, 0x12, 0x0c, + 0x22, 0x80, 0x29, 0x1c, 0xfe, 0xf7, 0x3e, 0xfc, + 0x0a, 0xe0, 0x01, 0x1c, 0x28, 0x1c, 0x22, 0x88, + 0xfe, 0xf7, 0x38, 0xfc, 0x20, 0x88, 0x01, 0x28, + 0x02, 0xd9, 0x80, 0x08, 0x01, 0x38, 0x68, 0x61, + 0x01, 0x20, 0xb0, 0xbd, 0x3c, 0x00, 0x98, 0x1c, + 0x00, 0x00, 0x20, 0x6e, 0x01, 0x00, 0xf1, 0xb5, + 0x00, 0x98, 0x00, 0x26, 0xc1, 0x68, 0x08, 0x68, + 0x09, 0x89, 0x1c, 0x29, 0x34, 0xd3, 0xc1, 0x88, + 0xff, 0x23, 0x01, 0x33, 0x99, 0x42, 0x2f, 0xd1, + 0x01, 0x88, 0xc9, 0x1a, 0x2c, 0xd1, 0x41, 0x88, + 0x08, 0x29, 0x29, 0xd1, 0x01, 0x79, 0x06, 0x29, + 0x26, 0xd1, 0x41, 0x79, 0x04, 0x29, 0x23, 0xd1, + 0x00, 0x25, 0x00, 0x24, 0x07, 0x1c, 0x3c, 0x00, + 0xd4, 0x1c, 0x00, 0x00, 0x18, 0x37, 0x0b, 0xe0, + 0xa0, 0x00, 0x41, 0x18, 0x04, 0x31, 0x04, 0x22, + 0x38, 0x1c, 0xfe, 0xf7, 0x8b, 0xfb, 0x00, 0x28, + 0x01, 0xd1, 0x01, 0x25, 0x04, 0xe0, 0x01, 0x34, + 0x0a, 0x49, 0x48, 0x69, 0xa0, 0x42, 0xef, 0xd8, + 0x08, 0x49, 0x08, 0x78, 0x00, 0x28, 0x0a, 0xd0, + 0x01, 0x28, 0x01, 0xd0, 0x02, 0x28, 0x06, 0xd1, + 0x00, 0x2d, 0x04, 0xd1, 0x00, 0x98, 0xc0, 0x68, + 0x3c, 0x00, 0x10, 0x1d, 0x00, 0x00, 0xff, 0xf7, + 0x42, 0xfc, 0x01, 0x26, 0x30, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x20, 0x6e, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x68, 0x70, 0x47, 0x00, 0x00, 0x20, 0x6e, + 0x01, 0x00, 0x02, 0x49, 0x48, 0x60, 0x01, 0x20, + 0x48, 0x61, 0x70, 0x47, 0x00, 0x00, 0x20, 0x6e, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x01, 0x26, + 0x03, 0xf0, 0xef, 0xfa, 0x25, 0x1c, 0x10, 0x35, + 0x00, 0x28, 0x3c, 0x00, 0x4c, 0x1d, 0x00, 0x00, + 0x04, 0xd0, 0x00, 0x20, 0x20, 0x77, 0x03, 0xf0, + 0xf1, 0xfb, 0x07, 0xe0, 0x03, 0xf0, 0x38, 0xfd, + 0x00, 0x28, 0x09, 0xd0, 0x01, 0x20, 0x20, 0x77, + 0x03, 0xf0, 0xce, 0xfc, 0x01, 0x1c, 0x06, 0x22, + 0x28, 0x1c, 0xfe, 0xf7, 0xc3, 0xfb, 0x02, 0xe0, + 0x02, 0x20, 0x20, 0x77, 0x00, 0x26, 0x30, 0x1c, + 0x70, 0xbd, 0x00, 0x00, 0x03, 0x48, 0x80, 0x7a, + 0xc0, 0x07, 0x03, 0x49, 0x3c, 0x00, 0x88, 0x1d, + 0x00, 0x00, 0xc0, 0x0f, 0x88, 0x62, 0x70, 0x47, + 0x00, 0x00, 0x40, 0x90, 0x07, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, 0x88, 0x62, + 0x70, 0x47, 0xa4, 0x6c, 0x01, 0x00, 0x06, 0x48, + 0x80, 0x7a, 0xc1, 0x07, 0x06, 0x4a, 0xc9, 0x0f, + 0x91, 0x62, 0x20, 0x21, 0x80, 0x07, 0x00, 0xd4, + 0x00, 0x21, 0xa0, 0x32, 0x11, 0x70, 0x70, 0x47, + 0x00, 0x00, 0x40, 0x90, 0x07, 0x00, 0x3c, 0x00, + 0xc4, 0x1d, 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x07, 0x4a, 0x12, 0x68, 0x07, 0x4b, 0x9b, 0x69, + 0x1a, 0x40, 0x01, 0xd0, 0x01, 0x22, 0x00, 0xe0, + 0x00, 0x22, 0x0a, 0x60, 0x01, 0x21, 0x00, 0x2a, + 0x00, 0xd0, 0x00, 0x21, 0x01, 0x60, 0x70, 0x47, + 0x10, 0x00, 0x07, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x01, 0x22, 0x02, 0x60, 0x0a, 0x60, 0x70, 0x47, + 0xb0, 0xb5, 0x0d, 0x1c, 0x01, 0x1c, 0x58, 0x31, + 0x3c, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x04, 0x1c, + 0x06, 0x22, 0x28, 0x1d, 0xfe, 0xf7, 0x77, 0xfb, + 0x21, 0x1c, 0x5e, 0x31, 0x06, 0x22, 0x28, 0x1c, + 0x0a, 0x30, 0xfe, 0xf7, 0x70, 0xfb, 0x21, 0x1c, + 0x64, 0x31, 0x06, 0x22, 0x28, 0x1c, 0x10, 0x30, + 0xfe, 0xf7, 0x69, 0xfb, 0xb0, 0xbd, 0xfe, 0xb5, + 0x00, 0x25, 0x1d, 0x72, 0x17, 0x1c, 0x0e, 0x1c, + 0xb2, 0x6d, 0x00, 0x21, 0x92, 0x19, 0x50, 0x32, + 0xd2, 0x7a, 0x3c, 0x00, 0x3c, 0x1e, 0x00, 0x00, + 0x1c, 0x1c, 0x5a, 0x72, 0x00, 0x78, 0x32, 0x1c, + 0x80, 0x32, 0xc0, 0x07, 0xc0, 0x17, 0x01, 0x30, + 0x01, 0x90, 0x08, 0x98, 0x02, 0x92, 0x00, 0x28, + 0x01, 0xd1, 0x30, 0x7f, 0x2b, 0xe0, 0x37, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x00, 0xdd, 0x01, 0x1c, + 0x01, 0x98, 0x00, 0x28, 0x02, 0xd0, 0x08, 0x98, + 0x01, 0x28, 0x10, 0xd1, 0x02, 0x9a, 0x90, 0x6b, + 0x00, 0x28, 0x06, 0xd0, 0x3c, 0x00, 0x78, 0x1e, + 0x00, 0x00, 0x88, 0x42, 0x01, 0xd9, 0x45, 0x1a, + 0x01, 0x3d, 0x70, 0x19, 0xb0, 0x30, 0x03, 0xe0, + 0xb5, 0x6d, 0x01, 0x3d, 0x70, 0x19, 0x50, 0x30, + 0x00, 0x7b, 0x0f, 0xe0, 0x02, 0x9a, 0x10, 0x6a, + 0x00, 0x28, 0x07, 0xd0, 0x88, 0x42, 0x01, 0xd9, + 0x45, 0x1a, 0x01, 0x3d, 0x70, 0x19, 0xa0, 0x30, + 0x00, 0x79, 0x03, 0xe0, 0xbd, 0x69, 0x01, 0x3d, + 0x78, 0x19, 0x00, 0x7f, 0xa0, 0x72, 0x3c, 0x00, + 0xb4, 0x1e, 0x00, 0x00, 0x0e, 0xf0, 0x0c, 0xf8, + 0x0e, 0x28, 0x11, 0xd1, 0xa0, 0x7a, 0x08, 0xf0, + 0x67, 0xff, 0x00, 0x28, 0x0c, 0xd0, 0x78, 0x68, + 0x00, 0x28, 0x05, 0xd1, 0x1b, 0x48, 0x00, 0x25, + 0x00, 0x78, 0x08, 0xf0, 0x4b, 0xff, 0x02, 0xe0, + 0x45, 0x1e, 0x78, 0x19, 0x00, 0x7a, 0xa0, 0x72, + 0x02, 0x9a, 0x50, 0x69, 0x00, 0x28, 0x17, 0xd0, + 0x08, 0x98, 0x01, 0x28, 0x14, 0xd0, 0xa0, 0x7a, + 0x3c, 0x00, 0xf0, 0x1e, 0x00, 0x00, 0x08, 0xf0, + 0x4e, 0xff, 0x00, 0x28, 0x0f, 0xd0, 0x01, 0x98, + 0x00, 0x28, 0x07, 0xd0, 0x02, 0x20, 0x20, 0x72, + 0x70, 0x6c, 0x80, 0x19, 0x40, 0x30, 0xc0, 0x79, + 0x60, 0x72, 0x04, 0xe0, 0x7d, 0x68, 0x01, 0x3d, + 0x78, 0x19, 0x00, 0x7a, 0xa0, 0x72, 0x02, 0x9a, + 0xa0, 0x7a, 0x91, 0x69, 0x08, 0xf0, 0x51, 0xff, + 0x20, 0x60, 0x02, 0x9a, 0x60, 0x7a, 0x91, 0x69, + 0x08, 0xf0, 0x3c, 0x00, 0x2c, 0x1f, 0x00, 0x00, + 0x4b, 0xff, 0x60, 0x60, 0xa0, 0x7a, 0xe0, 0x72, + 0x25, 0x73, 0xfe, 0xbd, 0xd4, 0x7e, 0x01, 0x00, + 0x90, 0x57, 0x01, 0x00, 0x00, 0x06, 0x00, 0x0e, + 0x00, 0x2a, 0x8c, 0xb5, 0x01, 0xd0, 0x8a, 0x22, + 0x00, 0xe0, 0x88, 0x22, 0x00, 0xab, 0x1a, 0x80, + 0x0c, 0xf0, 0xc2, 0xf8, 0x01, 0x90, 0x68, 0x46, + 0x0b, 0xf0, 0xbc, 0xfa, 0x8c, 0xbd, 0x00, 0x00, + 0x01, 0x1c, 0x08, 0x48, 0x3c, 0x00, 0x68, 0x1f, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x68, 0x00, 0x28, + 0x09, 0xd0, 0x49, 0x68, 0x02, 0x20, 0x00, 0x29, + 0x00, 0xd1, 0x01, 0x20, 0x01, 0x06, 0x09, 0x0e, + 0x00, 0x20, 0x06, 0xf0, 0xd8, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x20, 0x67, 0x01, 0x00, 0x1c, 0xb5, + 0x01, 0x90, 0x04, 0x1c, 0x44, 0x30, 0x01, 0xaa, + 0x69, 0x46, 0x11, 0xf0, 0xb8, 0xfd, 0x00, 0x28, + 0x0b, 0xd0, 0xa0, 0x69, 0x00, 0x21, 0x3c, 0x00, + 0xa4, 0x1f, 0x00, 0x00, 0xc2, 0x07, 0xd2, 0x0f, + 0x02, 0x20, 0xff, 0xf7, 0xc9, 0xff, 0x00, 0x21, + 0x20, 0x1c, 0x0f, 0xf0, 0xd9, 0xfe, 0x1c, 0xbd, + 0x04, 0x21, 0x98, 0x20, 0xff, 0xf7, 0x72, 0xf9, + 0xf9, 0xe7, 0x00, 0x00, 0x8c, 0xb5, 0x00, 0xab, + 0x84, 0x21, 0x19, 0x80, 0x05, 0x4b, 0x02, 0x1c, + 0x18, 0x1c, 0x99, 0x8a, 0x0c, 0xf0, 0x8e, 0xf8, + 0x01, 0x90, 0x68, 0x46, 0x0b, 0xf0, 0x7c, 0xfa, + 0x3c, 0x00, 0xe0, 0x1f, 0x00, 0x00, 0x8c, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x06, 0x49, 0x80, 0xb5, 0xc9, 0x68, + 0x14, 0x23, 0x40, 0x31, 0x89, 0x7a, 0x04, 0x4a, + 0x59, 0x43, 0x89, 0x18, 0x80, 0x00, 0x08, 0x58, + 0xfe, 0xf7, 0xe9, 0xf9, 0x80, 0xbd, 0x70, 0x7c, + 0x01, 0x00, 0x54, 0x47, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x20, 0xff, 0xf7, 0xd6, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x20, 0x00, 0x00, + 0x80, 0xb5, 0x12, 0x48, 0x11, 0x49, 0x80, 0x8a, + 0x0a, 0x8b, 0x00, 0x21, 0x00, 0x28, 0xc2, 0xb0, + 0x0c, 0xd1, 0x01, 0x2a, 0x05, 0xd0, 0x02, 0x2a, + 0x15, 0xd0, 0x00, 0xab, 0x5a, 0x80, 0x0e, 0x22, + 0x07, 0xe0, 0x02, 0x22, 0x00, 0xab, 0x5a, 0x80, + 0x99, 0x80, 0x04, 0xe0, 0x00, 0xab, 0x5a, 0x80, + 0x0d, 0x22, 0x00, 0xab, 0x9a, 0x80, 0x00, 0xab, + 0x18, 0x80, 0xff, 0x20, 0x3c, 0x00, 0x58, 0x20, + 0x00, 0x00, 0x98, 0x71, 0xd9, 0x71, 0x68, 0x46, + 0x00, 0xf0, 0xd1, 0xf9, 0x42, 0xb0, 0x80, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x09, 0xf0, 0x5f, 0xfc, 0x00, 0x20, 0x05, 0xf0, + 0x2a, 0xf9, 0x03, 0x4c, 0xe0, 0x8a, 0x05, 0xf0, + 0x36, 0xf9, 0x20, 0x1c, 0x0f, 0xf0, 0xb3, 0xfe, + 0x10, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x1c, 0xb5, + 0x09, 0xf0, 0x4f, 0xfc, 0x07, 0x20, 0x3c, 0x00, + 0x94, 0x20, 0x00, 0x00, 0x00, 0xab, 0x07, 0x4c, + 0x18, 0x80, 0xe1, 0x8a, 0x20, 0x1c, 0x0c, 0xf0, + 0x0b, 0xf8, 0x01, 0x90, 0x68, 0x46, 0x0b, 0xf0, + 0x17, 0xfa, 0x20, 0x1c, 0x0f, 0xf0, 0x9e, 0xfe, + 0x1c, 0xbd, 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x98, 0x20, 0xff, 0xf7, + 0xf1, 0xf8, 0x80, 0xbd, 0x10, 0xb5, 0x15, 0x4c, + 0xc2, 0xb0, 0xa0, 0x8a, 0x00, 0x28, 0x03, 0xd0, + 0x3c, 0x00, 0xd0, 0x20, 0x00, 0x00, 0x01, 0x28, + 0x1e, 0xd1, 0x02, 0x20, 0x00, 0xe0, 0x01, 0x20, + 0xe1, 0x68, 0x40, 0x31, 0x88, 0x72, 0x20, 0x69, + 0x08, 0xf0, 0x23, 0xfd, 0x02, 0x1c, 0x0c, 0x48, + 0x18, 0x38, 0x80, 0x88, 0xe1, 0x68, 0x0f, 0xf0, + 0xa4, 0xfe, 0xa0, 0x8a, 0x00, 0xab, 0x18, 0x80, + 0x01, 0x20, 0x58, 0x80, 0x00, 0x20, 0x98, 0x80, + 0xff, 0x21, 0x99, 0x71, 0xd8, 0x71, 0x68, 0x46, + 0x00, 0xf0, 0x3c, 0x00, 0x0c, 0x21, 0x00, 0x00, + 0x7b, 0xf9, 0x42, 0xb0, 0x10, 0xbd, 0x03, 0x21, + 0x98, 0x20, 0xff, 0xf7, 0xc5, 0xf8, 0xf8, 0xe7, + 0x70, 0x7c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0x03, 0x48, 0x0f, 0xf0, 0x60, 0xfe, + 0x00, 0x20, 0x05, 0xf0, 0xcd, 0xf8, 0x80, 0xbd, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x48, + 0x0f, 0xf0, 0x56, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0x70, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0x48, 0x21, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0x21, 0x98, 0x20, + 0xff, 0xf7, 0xa9, 0xf8, 0x80, 0xbd, 0x80, 0xb5, + 0x03, 0x20, 0xff, 0xf7, 0x34, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0xf0, 0xb5, 0x21, 0x4e, 0x00, 0x27, + 0xb1, 0x8a, 0x30, 0x1c, 0x00, 0x25, 0x04, 0x24, + 0x00, 0x29, 0x00, 0x8b, 0xc3, 0xb0, 0x1e, 0xd1, + 0x01, 0x28, 0x07, 0xd0, 0x31, 0x1c, 0x49, 0x8b, + 0x02, 0x28, 0x12, 0xd1, 0x00, 0x29, 0x3c, 0x00, + 0x84, 0x21, 0x00, 0x00, 0x07, 0xd1, 0x00, 0x24, + 0x05, 0xe0, 0x00, 0x24, 0x01, 0x25, 0x02, 0x20, + 0x00, 0xab, 0xd8, 0x80, 0x1f, 0x81, 0x0f, 0xf0, + 0x7f, 0xff, 0x00, 0x2c, 0x10, 0xd1, 0xf1, 0x68, + 0x05, 0x20, 0x40, 0x31, 0x88, 0x72, 0x0e, 0xe0, + 0x00, 0x29, 0x1a, 0xd1, 0x00, 0xab, 0xd8, 0x80, + 0x0e, 0x20, 0x02, 0xe0, 0x00, 0xab, 0xd8, 0x80, + 0x0d, 0x20, 0x00, 0xab, 0x18, 0x81, 0x07, 0xe0, + 0x3c, 0x00, 0xc0, 0x21, 0x00, 0x00, 0x30, 0x1c, + 0x0f, 0xf0, 0x13, 0xfe, 0x20, 0x1c, 0xff, 0xf7, + 0xfc, 0xfe, 0x00, 0x2d, 0x08, 0xd0, 0xb0, 0x8a, + 0x00, 0xab, 0x98, 0x80, 0xff, 0x20, 0x98, 0x72, + 0xdf, 0x72, 0x01, 0xa8, 0x00, 0xf0, 0x11, 0xf9, + 0x43, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0x10, 0xb5, 0x00, 0x20, 0x05, 0xf0, + 0x6c, 0xf8, 0x04, 0x4c, 0xe0, 0x8a, 0x05, 0xf0, + 0x78, 0xf8, 0x3c, 0x00, 0xfc, 0x21, 0x00, 0x00, + 0x0f, 0xf0, 0x4c, 0xff, 0x20, 0x1c, 0x0f, 0xf0, + 0xf3, 0xfd, 0x10, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x80, 0xb5, 0x04, 0x20, 0xff, 0xf7, 0xd8, 0xfe, + 0x01, 0x48, 0x0f, 0xf0, 0xe9, 0xfd, 0x80, 0xbd, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x20, + 0xff, 0xf7, 0xce, 0xfe, 0x01, 0x20, 0x05, 0xf0, + 0x5f, 0xf8, 0x02, 0x48, 0x0f, 0xf0, 0xdc, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x22, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, + 0x03, 0x20, 0xff, 0xf7, 0xc0, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x1d, 0x4d, 0xc2, 0xb0, + 0x28, 0x8b, 0x00, 0xab, 0xff, 0x21, 0x58, 0x80, + 0x99, 0x71, 0x00, 0x21, 0xd9, 0x71, 0xaa, 0x8a, + 0x00, 0x24, 0x01, 0x2a, 0x18, 0xd1, 0x2a, 0x1c, + 0x52, 0x8b, 0x02, 0x28, 0x0f, 0xd1, 0x00, 0x2a, + 0x16, 0xd1, 0x03, 0x20, 0x58, 0x80, 0x3c, 0x00, + 0x74, 0x22, 0x00, 0x00, 0x99, 0x80, 0x2c, 0x1c, + 0xff, 0x22, 0x98, 0x1d, 0xe9, 0x69, 0xfe, 0xf7, + 0x3b, 0xf9, 0xe1, 0x68, 0x04, 0x20, 0x40, 0x31, + 0x88, 0x72, 0x10, 0xe0, 0x00, 0x2a, 0x06, 0xd1, + 0x01, 0x24, 0x0e, 0x20, 0x01, 0xe0, 0x01, 0x24, + 0x0d, 0x20, 0x00, 0xab, 0x98, 0x80, 0x28, 0x1c, + 0x0f, 0xf0, 0xa4, 0xfd, 0x04, 0x20, 0xff, 0xf7, + 0x8d, 0xfe, 0x00, 0x2c, 0x05, 0xd0, 0xa8, 0x8a, + 0x3c, 0x00, 0xb0, 0x22, 0x00, 0x00, 0x00, 0xab, + 0x18, 0x80, 0x68, 0x46, 0x00, 0xf0, 0xa5, 0xf8, + 0x42, 0xb0, 0xb0, 0xbd, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0x10, 0xb5, 0x00, 0x20, 0x05, 0xf0, + 0x00, 0xf8, 0x03, 0x4c, 0xe0, 0x8a, 0x05, 0xf0, + 0x0c, 0xf8, 0x20, 0x1c, 0x0f, 0xf0, 0x89, 0xfd, + 0x10, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, + 0x04, 0x20, 0xff, 0xf7, 0x6e, 0xfe, 0x01, 0x48, + 0x0f, 0xf0, 0x3c, 0x00, 0xec, 0x22, 0x00, 0x00, + 0x7f, 0xfd, 0x80, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x20, 0xff, 0xf7, 0x64, 0xfe, + 0x01, 0x20, 0x04, 0xf0, 0xf5, 0xff, 0x02, 0x48, + 0x0f, 0xf0, 0x72, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x03, 0x20, + 0xff, 0xf7, 0x56, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x19, 0x4d, 0x04, 0x24, 0xa9, 0x8a, + 0x28, 0x1c, 0x02, 0x8b, 0x3c, 0x00, 0x28, 0x23, + 0x00, 0x00, 0xc2, 0xb0, 0x01, 0x29, 0x14, 0xd1, + 0x40, 0x8b, 0x04, 0x2a, 0x0b, 0xd1, 0x00, 0x28, + 0x00, 0xd1, 0x00, 0x24, 0x0f, 0xf0, 0xad, 0xfe, + 0x00, 0x2c, 0x19, 0xd1, 0xe9, 0x68, 0x05, 0x20, + 0x40, 0x31, 0x88, 0x72, 0x17, 0xe0, 0x00, 0x28, + 0x10, 0xd1, 0x00, 0xab, 0x5a, 0x80, 0x0e, 0x20, + 0x02, 0xe0, 0x00, 0xab, 0x5a, 0x80, 0x0d, 0x20, + 0x00, 0xab, 0x98, 0x80, 0x19, 0x80, 0x3c, 0x00, + 0x64, 0x23, 0x00, 0x00, 0xff, 0x20, 0x98, 0x71, + 0x00, 0x20, 0xd8, 0x71, 0x68, 0x46, 0x00, 0xf0, + 0x49, 0xf8, 0x42, 0xb0, 0xb0, 0xbd, 0x28, 0x1c, + 0x0f, 0xf0, 0x38, 0xfd, 0x20, 0x1c, 0xff, 0xf7, + 0x21, 0xfe, 0xf6, 0xe7, 0x70, 0x7c, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x20, 0x04, 0xf0, 0x9e, 0xff, + 0x03, 0x4c, 0xe0, 0x8a, 0x04, 0xf0, 0xaa, 0xff, + 0x20, 0x1c, 0x0f, 0xf0, 0x27, 0xfd, 0x10, 0xbd, + 0x3c, 0x00, 0xa0, 0x23, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0x80, 0xb5, 0x04, 0x20, 0xff, 0xf7, + 0x0c, 0xfe, 0x01, 0x48, 0x0f, 0xf0, 0x1d, 0xfd, + 0x80, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x20, 0xff, 0xf7, 0x02, 0xfe, 0x01, 0x20, + 0x04, 0xf0, 0x93, 0xff, 0x02, 0x48, 0x0f, 0xf0, + 0x10, 0xfd, 0x80, 0xbd, 0x00, 0x00, 0x70, 0x7c, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x01, 0x1c, + 0x44, 0x31, 0x3c, 0x00, 0xdc, 0x23, 0x00, 0x00, + 0x04, 0x1c, 0x06, 0x22, 0x28, 0x1c, 0xfe, 0xf7, + 0x89, 0xf8, 0xec, 0x60, 0x20, 0x69, 0x03, 0xf0, + 0x97, 0xf8, 0x01, 0x1c, 0x06, 0x22, 0xa8, 0x18, + 0xfe, 0xf7, 0x80, 0xf8, 0x04, 0x20, 0xff, 0xf7, + 0xf7, 0xfd, 0xb0, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x90, 0xb5, 0x04, 0x1c, 0x80, 0x88, 0x93, 0xb0, + 0x00, 0x28, 0x06, 0xd0, 0x15, 0x49, 0x06, 0x22, + 0x48, 0x80, 0x18, 0x31, 0x3c, 0x00, 0x18, 0x24, + 0x00, 0x00, 0x88, 0x1f, 0xfe, 0xf7, 0x6d, 0xf8, + 0x68, 0x46, 0x0c, 0xf0, 0x14, 0xf8, 0x20, 0x88, + 0x01, 0x28, 0x08, 0xd1, 0x60, 0x88, 0x03, 0x28, + 0x05, 0xd1, 0xa0, 0x88, 0x00, 0x28, 0x02, 0xd1, + 0x06, 0x20, 0x0c, 0xa9, 0x08, 0x70, 0xa0, 0x79, + 0x06, 0x21, 0xff, 0x28, 0x04, 0xd0, 0xe0, 0x79, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x1c, 0x08, 0x31, + 0x0b, 0x20, 0x08, 0xaa, 0x50, 0x72, 0x3c, 0x00, + 0x54, 0x24, 0x00, 0x00, 0x20, 0x1c, 0x08, 0xf0, + 0x3b, 0xff, 0x03, 0x90, 0x68, 0x46, 0x0b, 0xf0, + 0x31, 0xf8, 0x13, 0xb0, 0x90, 0xbd, 0x00, 0x00, + 0x58, 0x7c, 0x01, 0x00, 0x07, 0x4b, 0x1a, 0x78, + 0x82, 0x42, 0x01, 0xd0, 0x00, 0x29, 0x07, 0xd0, + 0xff, 0x20, 0x18, 0x70, 0x04, 0x48, 0x01, 0x88, + 0x01, 0x22, 0x52, 0x03, 0x91, 0x43, 0x01, 0x80, + 0x70, 0x47, 0x00, 0x00, 0x4c, 0x7b, 0x01, 0x00, + 0x3c, 0x00, 0x90, 0x24, 0x00, 0x00, 0x32, 0x80, + 0x07, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x0c, 0x23, + 0x07, 0x49, 0x58, 0x43, 0x40, 0x18, 0x00, 0x79, + 0x0a, 0xf0, 0x4f, 0xf9, 0x01, 0x20, 0x03, 0x49, + 0xa0, 0x40, 0x08, 0x39, 0x0a, 0x78, 0x10, 0x43, + 0x08, 0x70, 0x10, 0xbd, 0x00, 0x00, 0x74, 0x7a, + 0x01, 0x00, 0x03, 0x4a, 0x00, 0x21, 0x11, 0x54, + 0x80, 0x00, 0x30, 0x32, 0x10, 0x58, 0x01, 0x70, + 0x70, 0x47, 0x3c, 0x00, 0xcc, 0x24, 0x00, 0x00, + 0xe0, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xfe, 0xf7, 0x12, 0xff, + 0x20, 0x1c, 0xff, 0xf7, 0xed, 0xff, 0x00, 0x21, + 0x20, 0x1c, 0x0e, 0xf0, 0x89, 0xfb, 0x10, 0xbd, + 0x05, 0x49, 0x80, 0xb5, 0x88, 0x60, 0x08, 0x7f, + 0x24, 0x23, 0x04, 0x49, 0x58, 0x43, 0x08, 0x58, + 0xfd, 0xf7, 0x6c, 0xff, 0x80, 0xbd, 0x00, 0x00, + 0xd4, 0x79, 0x01, 0x00, 0x3c, 0x00, 0x08, 0x25, + 0x00, 0x00, 0x94, 0x46, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x21, 0x91, 0x20, 0xfe, 0xf7, 0xc7, 0xfe, + 0x80, 0xbd, 0x02, 0x4a, 0x11, 0x68, 0x81, 0x43, + 0x11, 0x60, 0x70, 0x47, 0x00, 0x00, 0x78, 0x6e, + 0x01, 0x00, 0x80, 0xb5, 0xfe, 0xf7, 0xe9, 0xfe, + 0x80, 0xbd, 0x80, 0xb5, 0xfe, 0xf7, 0xe5, 0xfe, + 0x80, 0xbd, 0x80, 0xb5, 0x00, 0xf0, 0x31, 0xfa, + 0x80, 0xbd, 0x03, 0x49, 0x80, 0xb5, 0x3c, 0x00, + 0x44, 0x25, 0x00, 0x00, 0x04, 0x20, 0x88, 0x60, + 0x00, 0xf0, 0xd0, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x99, 0xfa, 0x80, 0xbd, 0x80, 0xb5, 0x00, 0xf0, + 0x99, 0xfb, 0x80, 0xbd, 0x38, 0xb5, 0x20, 0x28, + 0x15, 0xd2, 0x0d, 0x4c, 0x22, 0x1c, 0x20, 0x32, + 0x95, 0x79, 0x00, 0xab, 0x1d, 0x70, 0xd2, 0x79, + 0x5a, 0x70, 0x0a, 0x4b, 0x82, 0x00, 0x99, 0x50, + 0x3c, 0x00, 0x80, 0x25, 0x00, 0x00, 0x01, 0x21, + 0x81, 0x40, 0x08, 0x48, 0x01, 0x60, 0x42, 0x68, + 0x11, 0x43, 0x41, 0x60, 0x00, 0xab, 0x18, 0x88, + 0xe0, 0x84, 0x38, 0xbd, 0x01, 0x21, 0xff, 0x20, + 0xfe, 0xf7, 0x83, 0xfe, 0xf9, 0xe7, 0x00, 0x10, + 0x07, 0x00, 0x30, 0x74, 0x01, 0x00, 0x00, 0x40, + 0x07, 0x00, 0x20, 0x28, 0x09, 0xd2, 0x05, 0x49, + 0x06, 0x4b, 0x82, 0x00, 0x99, 0x50, 0x05, 0x4a, + 0x51, 0x68, 0x3c, 0x00, 0xbc, 0x25, 0x00, 0x00, + 0x01, 0x23, 0x83, 0x40, 0x99, 0x43, 0x51, 0x60, + 0x70, 0x47, 0x00, 0x00, 0xa9, 0x75, 0x00, 0x00, + 0x30, 0x74, 0x01, 0x00, 0x00, 0x40, 0x07, 0x00, + 0x02, 0x4a, 0x11, 0x68, 0x08, 0x43, 0x10, 0x60, + 0x70, 0x47, 0x00, 0x00, 0x78, 0x6e, 0x01, 0x00, + 0x0b, 0x48, 0x01, 0x68, 0x03, 0x22, 0x12, 0x04, + 0x11, 0x43, 0x01, 0x60, 0x01, 0x68, 0x07, 0x22, + 0x12, 0x06, 0x91, 0x43, 0x3c, 0x00, 0xf8, 0x25, + 0x00, 0x00, 0x01, 0x22, 0x52, 0x06, 0x89, 0x18, + 0x01, 0x60, 0x01, 0x68, 0x12, 0x0c, 0x11, 0x43, + 0x01, 0x60, 0x01, 0x68, 0x52, 0x08, 0x11, 0x43, + 0x01, 0x60, 0x70, 0x47, 0x00, 0x00, 0x80, 0x00, + 0x07, 0x00, 0xfe, 0xb5, 0x1c, 0x4e, 0x05, 0x1c, + 0xb0, 0x8a, 0xf2, 0x68, 0x12, 0xd0, 0x01, 0x24, + 0x00, 0x29, 0x09, 0xd1, 0x11, 0x6d, 0x02, 0xaa, + 0x01, 0xab, 0xfe, 0xf7, 0xf8, 0xfe, 0x3c, 0x00, + 0x34, 0x26, 0x00, 0x00, 0x02, 0x98, 0x00, 0x28, + 0x01, 0xd0, 0x00, 0x24, 0x0b, 0xe0, 0x01, 0xaa, + 0x02, 0xa9, 0x28, 0x1c, 0xfe, 0xf7, 0x70, 0xff, + 0x05, 0xe0, 0x11, 0x6d, 0x02, 0xaa, 0x00, 0x24, + 0x01, 0xab, 0xfe, 0xf7, 0x01, 0xff, 0x0e, 0x49, + 0x08, 0x1c, 0x20, 0x30, 0x82, 0x79, 0x00, 0xab, + 0x1a, 0x70, 0xc0, 0x79, 0x58, 0x70, 0x30, 0x68, + 0x00, 0x28, 0x02, 0xd1, 0x02, 0x98, 0x30, 0x60, + 0x3c, 0x00, 0x70, 0x26, 0x00, 0x00, 0x02, 0xe0, + 0x02, 0x98, 0x72, 0x68, 0xd0, 0x60, 0x01, 0x98, + 0x00, 0xab, 0x70, 0x60, 0x18, 0x88, 0xc8, 0x84, + 0xf0, 0x68, 0xc0, 0x6c, 0xf0, 0x60, 0x20, 0x1c, + 0xfe, 0xbd, 0x24, 0x7e, 0x01, 0x00, 0x00, 0x10, + 0x07, 0x00, 0xf8, 0xb5, 0x04, 0x1c, 0x54, 0x27, + 0x1d, 0x4e, 0x00, 0x20, 0x30, 0x60, 0x70, 0x60, + 0x67, 0x43, 0x38, 0x04, 0x15, 0x1c, 0x00, 0x0c, + 0xb1, 0x82, 0x3c, 0x00, 0xac, 0x26, 0x00, 0x00, + 0xff, 0xf7, 0x96, 0xf8, 0x08, 0x21, 0x30, 0x61, + 0x00, 0x26, 0x17, 0x4a, 0x14, 0xe0, 0x03, 0x1c, + 0x24, 0x33, 0x42, 0x61, 0x03, 0x61, 0xc6, 0x61, + 0x01, 0x83, 0x08, 0x33, 0x03, 0x60, 0xb1, 0x23, + 0x43, 0x60, 0x03, 0x1c, 0x64, 0x33, 0xc3, 0x60, + 0x0c, 0x23, 0x03, 0x81, 0x03, 0x1c, 0x54, 0x33, + 0x4c, 0x30, 0x28, 0xc0, 0x01, 0x3c, 0x18, 0x1c, + 0x00, 0x2c, 0xe8, 0xd1, 0x3c, 0x00, 0xe8, 0x26, + 0x00, 0x00, 0x09, 0x4e, 0x07, 0x22, 0x30, 0x69, + 0xd2, 0x43, 0xc1, 0x19, 0x50, 0x50, 0x02, 0x1c, + 0x10, 0x32, 0x80, 0x39, 0x8a, 0x63, 0xf0, 0x60, + 0xb0, 0x60, 0x00, 0x21, 0x00, 0x20, 0xff, 0xf7, + 0x88, 0xff, 0x30, 0x69, 0xf0, 0x60, 0xb0, 0x60, + 0xf8, 0xbd, 0x24, 0x7e, 0x01, 0x00, 0x91, 0x00, + 0x05, 0x00, 0x01, 0x48, 0x40, 0x6a, 0x70, 0x47, + 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, 0x3c, 0x00, + 0x24, 0x27, 0x00, 0x00, 0x01, 0x48, 0x00, 0x88, + 0x70, 0x47, 0x00, 0x00, 0xfc, 0x6b, 0x01, 0x00, + 0x06, 0x49, 0x80, 0xb5, 0x08, 0x88, 0x01, 0x30, + 0x08, 0x80, 0x05, 0x49, 0x08, 0x20, 0x08, 0x60, + 0x04, 0x49, 0x88, 0x69, 0x88, 0x61, 0x00, 0xf0, + 0x21, 0xf8, 0x80, 0xbd, 0xfc, 0x6b, 0x01, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x03, 0x4a, 0x01, 0x20, 0x12, 0x1d, 0x06, 0xca, + 0x3c, 0x00, 0x60, 0x27, 0x00, 0x00, 0x91, 0x42, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0xe8, 0x7d, + 0x01, 0x00, 0x06, 0x48, 0x00, 0xb5, 0xc0, 0x7c, + 0x00, 0x28, 0x03, 0xd1, 0xff, 0xf7, 0xef, 0xff, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, 0x00, 0xbd, + 0x00, 0x20, 0x00, 0xbd, 0x00, 0x00, 0xa0, 0x80, + 0x07, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x80, 0x07, + 0x02, 0xd5, 0x06, 0xf0, 0x3e, 0xfd, 0x03, 0xe0, + 0xe0, 0x07, 0x3c, 0x00, 0x9c, 0x27, 0x00, 0x00, + 0x01, 0xd5, 0x06, 0xf0, 0xe3, 0xfd, 0x60, 0x07, + 0x01, 0xd5, 0xfe, 0xf7, 0xab, 0xfd, 0x10, 0xbd, + 0x02, 0x4a, 0x01, 0x1c, 0x10, 0x68, 0x11, 0x60, + 0x70, 0x47, 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, + 0x38, 0xb5, 0x20, 0x4d, 0x2c, 0x1c, 0x20, 0x34, + 0xa0, 0x79, 0x00, 0xab, 0x18, 0x70, 0xe0, 0x79, + 0x58, 0x70, 0xfe, 0xf7, 0x27, 0xfa, 0x00, 0xab, + 0x18, 0x88, 0xe8, 0x84, 0x3c, 0x00, 0xd8, 0x27, + 0x00, 0x00, 0x1a, 0x48, 0x81, 0x78, 0x08, 0x22, + 0x91, 0x43, 0x81, 0x70, 0x81, 0x78, 0x11, 0x43, + 0x81, 0x70, 0x17, 0x48, 0x41, 0x68, 0x80, 0x22, + 0x91, 0x43, 0x41, 0x60, 0x01, 0x68, 0x11, 0x43, + 0x01, 0x60, 0x00, 0x20, 0x01, 0x30, 0x64, 0x28, + 0xfc, 0xd3, 0xa0, 0x79, 0x0f, 0x4d, 0x00, 0xab, + 0x18, 0x70, 0xe0, 0x79, 0x10, 0x4c, 0x58, 0x70, + 0x20, 0x1c, 0x10, 0x30, 0x00, 0xf0, 0x3c, 0x00, + 0x14, 0x28, 0x00, 0x00, 0xdf, 0xfb, 0x00, 0x20, + 0xc0, 0x43, 0xa0, 0x61, 0xff, 0xf7, 0x9c, 0xff, + 0x00, 0x28, 0x09, 0xd0, 0x0a, 0x49, 0x08, 0x69, + 0x01, 0x30, 0x08, 0x61, 0x00, 0x20, 0x3c, 0x31, + 0x89, 0x68, 0x48, 0x63, 0x06, 0xf0, 0xee, 0xfc, + 0x00, 0xab, 0x18, 0x88, 0xe8, 0x84, 0x38, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, + 0xf4, 0x00, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x3c, 0x00, 0x50, 0x28, 0x00, 0x00, 0xe8, 0x7d, + 0x01, 0x00, 0x0a, 0x48, 0x80, 0xb5, 0x00, 0x6a, + 0x00, 0x28, 0x01, 0xd0, 0xfe, 0xf7, 0xc1, 0xf9, + 0x07, 0x48, 0x07, 0x49, 0x3c, 0x30, 0x80, 0x68, + 0x10, 0x30, 0x48, 0x61, 0x01, 0x20, 0x08, 0x61, + 0x05, 0x49, 0x08, 0x68, 0x80, 0x22, 0x90, 0x43, + 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, 0xe8, 0x7d, + 0x01, 0x00, 0x00, 0x30, 0x07, 0x00, 0xf4, 0x00, + 0x07, 0x00, 0x3c, 0x00, 0x8c, 0x28, 0x00, 0x00, + 0x80, 0xb5, 0x0c, 0xf0, 0xcb, 0xfe, 0x06, 0xf0, + 0xbf, 0xfc, 0x80, 0xbd, 0x01, 0x49, 0xc8, 0x62, + 0x70, 0x47, 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, + 0x02, 0x4a, 0x91, 0x6a, 0x08, 0x43, 0x90, 0x62, + 0x70, 0x47, 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, + 0x18, 0x23, 0x06, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x00, 0x21, 0x02, 0x79, 0x03, 0x68, 0x1a, 0x70, + 0x01, 0x31, 0x08, 0x30, 0x3c, 0x00, 0xc8, 0x28, + 0x00, 0x00, 0x03, 0x29, 0xf8, 0xd3, 0x70, 0x47, + 0x00, 0x00, 0x28, 0x52, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, + 0x81, 0x62, 0x70, 0x47, 0x00, 0x00, 0x85, 0x75, + 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, 0xf8, 0xb5, + 0xff, 0xf7, 0x33, 0xff, 0x28, 0x4f, 0x00, 0x28, + 0x04, 0xd0, 0xff, 0xf7, 0xc8, 0xff, 0x38, 0x6a, + 0x01, 0x30, 0x38, 0x62, 0xf8, 0x6a, 0x3c, 0x00, + 0x04, 0x29, 0x00, 0x00, 0x00, 0x28, 0x02, 0xd0, + 0x01, 0x89, 0x04, 0x39, 0x01, 0x81, 0x38, 0x6b, + 0x00, 0x25, 0x00, 0x28, 0x08, 0xd0, 0x0b, 0x20, + 0x3d, 0x63, 0x10, 0xf0, 0xe5, 0xfa, 0x1e, 0x49, + 0x08, 0x68, 0x21, 0x22, 0x90, 0x43, 0x08, 0x60, + 0x38, 0x78, 0x3c, 0x21, 0x1b, 0x4a, 0x41, 0x43, + 0x8c, 0x18, 0xff, 0x22, 0x79, 0x6a, 0x3a, 0x70, + 0x00, 0x29, 0x0c, 0xd0, 0xb9, 0x69, 0x01, 0x31, + 0x3c, 0x00, 0x40, 0x29, 0x00, 0x00, 0xb9, 0x61, + 0x7d, 0x62, 0xbd, 0x68, 0x00, 0x2d, 0x04, 0xd0, + 0x63, 0x6b, 0x7a, 0x6b, 0x00, 0x21, 0xfd, 0xf7, + 0x47, 0xfd, 0xf8, 0xbd, 0x04, 0x28, 0x03, 0xd3, + 0x01, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0xa1, 0xfc, + 0x38, 0x69, 0x26, 0x1c, 0x01, 0x30, 0x38, 0x61, + 0x20, 0x36, 0x30, 0x78, 0x02, 0x28, 0x03, 0xd0, + 0x0c, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x95, 0xfc, + 0x35, 0x70, 0x3c, 0x00, 0x7c, 0x29, 0x00, 0x00, + 0xa1, 0x69, 0x00, 0x29, 0xe8, 0xd0, 0x63, 0x6b, + 0x30, 0x34, 0x20, 0x78, 0x0c, 0x1c, 0x00, 0x21, + 0x7a, 0x6b, 0xfd, 0xf7, 0x27, 0xfd, 0xdf, 0xe7, + 0x04, 0x6c, 0x01, 0x00, 0xf4, 0x00, 0x07, 0x00, + 0x18, 0xdb, 0x01, 0x00, 0x10, 0xb5, 0x0b, 0x4c, + 0x60, 0x6a, 0x00, 0x28, 0x0e, 0xd0, 0x0a, 0x48, + 0x00, 0xf0, 0x12, 0xfb, 0x00, 0x20, 0x60, 0x62, + 0xa4, 0x68, 0x00, 0x2c, 0x3c, 0x00, 0xb8, 0x29, + 0x00, 0x00, 0x05, 0xd0, 0x7e, 0x23, 0xdb, 0x43, + 0x00, 0x22, 0x01, 0x21, 0xfd, 0xf7, 0x0d, 0xfd, + 0x10, 0xbd, 0xe0, 0x69, 0x01, 0x30, 0xe0, 0x61, + 0x10, 0xbd, 0x04, 0x6c, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x09, 0x48, 0x41, 0x68, 0x3f, 0x22, + 0x12, 0x04, 0x91, 0x43, 0x0d, 0x22, 0x12, 0x04, + 0x89, 0x18, 0x41, 0x60, 0x41, 0x68, 0x01, 0x22, + 0x52, 0x02, 0x91, 0x43, 0x41, 0x60, 0x3c, 0x00, + 0xf4, 0x29, 0x00, 0x00, 0x03, 0x48, 0x81, 0x78, + 0x81, 0x70, 0x81, 0x78, 0x81, 0x70, 0x70, 0x47, + 0x80, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, + 0xf0, 0xb5, 0x01, 0x25, 0x08, 0x24, 0x00, 0x20, + 0x0e, 0x4a, 0x0f, 0x49, 0x00, 0x26, 0x3c, 0x23, + 0x43, 0x43, 0xd1, 0x52, 0x9b, 0x18, 0x5d, 0x71, + 0x9b, 0x60, 0x5e, 0x61, 0x1c, 0x82, 0xc0, 0x27, + 0xdf, 0x60, 0x20, 0x27, 0xfe, 0x54, 0x9e, 0x61, + 0x3c, 0x00, 0x30, 0x2a, 0x00, 0x00, 0x30, 0x27, + 0xfe, 0x54, 0x07, 0x4f, 0x3f, 0x18, 0x20, 0x37, + 0x01, 0x30, 0x05, 0x28, 0x9f, 0x63, 0xe9, 0xd3, + 0x05, 0x48, 0xff, 0x32, 0x01, 0x32, 0x90, 0x62, + 0xf0, 0xbd, 0x18, 0xdb, 0x01, 0x00, 0xbe, 0xba, + 0x00, 0x00, 0x30, 0x80, 0x07, 0x00, 0x06, 0x6c, + 0x01, 0x00, 0x01, 0x49, 0x48, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, 0x05, 0x49, + 0x08, 0x5c, 0x3c, 0x00, 0x6c, 0x2a, 0x00, 0x00, + 0x05, 0x49, 0x49, 0x68, 0x40, 0x18, 0xc0, 0x06, + 0xc0, 0x0e, 0x04, 0x49, 0x20, 0x30, 0x48, 0x72, + 0x70, 0x47, 0x00, 0x00, 0xa0, 0x57, 0x01, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x80, 0xb5, 0x15, 0x21, 0x84, 0x20, 0xfe, 0xf7, + 0x07, 0xfc, 0x80, 0xbd, 0xf8, 0xb5, 0x43, 0x48, + 0x84, 0x68, 0x03, 0x34, 0x42, 0x4d, 0x04, 0xe0, + 0x20, 0x1c, 0x10, 0xf0, 0x3c, 0x00, 0xa8, 0x2a, + 0x00, 0x00, 0xb9, 0xf8, 0x00, 0x28, 0x71, 0xd1, + 0x28, 0x69, 0xc0, 0x07, 0xf7, 0xd5, 0x3e, 0x48, + 0x28, 0x60, 0x3e, 0x4a, 0x14, 0x1c, 0x20, 0x34, + 0x20, 0x79, 0x00, 0x90, 0x3c, 0x23, 0x3c, 0x49, + 0x58, 0x43, 0x45, 0x18, 0x28, 0x79, 0xff, 0xf7, + 0xcc, 0xff, 0x28, 0x1c, 0x3a, 0x49, 0x08, 0x30, + 0x48, 0x60, 0x01, 0x26, 0x08, 0x1c, 0x06, 0x60, + 0x68, 0x6a, 0x00, 0x28, 0x0d, 0xd0, 0x3c, 0x00, + 0xe4, 0x2a, 0x00, 0x00, 0xa9, 0x6a, 0x92, 0x6a, + 0x35, 0x4b, 0x9f, 0x68, 0xd7, 0x1b, 0x1a, 0x68, + 0x51, 0x18, 0x79, 0x18, 0x8a, 0x42, 0x5a, 0x68, + 0x00, 0xd8, 0x00, 0xe0, 0x01, 0x32, 0x06, 0xc0, + 0xe8, 0x6a, 0xfe, 0xf7, 0x87, 0xff, 0x2d, 0x49, + 0xe8, 0x6a, 0x48, 0x60, 0x30, 0x1c, 0x0e, 0x60, + 0x66, 0x79, 0x1f, 0xe0, 0x2b, 0x48, 0x46, 0x61, + 0x04, 0x7f, 0x29, 0x49, 0x20, 0x1c, 0x50, 0x39, + 0x3c, 0x00, 0x20, 0x2b, 0x00, 0x00, 0x89, 0x6a, + 0xfd, 0xf7, 0x5a, 0xfc, 0x00, 0x98, 0x84, 0x42, + 0x10, 0xd0, 0x3c, 0x20, 0x22, 0x49, 0x60, 0x43, + 0x40, 0x18, 0x87, 0x69, 0x00, 0x2f, 0x09, 0xd0, + 0x00, 0x21, 0x20, 0x30, 0x01, 0x70, 0x7e, 0x23, + 0xdb, 0x43, 0x02, 0x21, 0x00, 0x22, 0x20, 0x1c, + 0xfd, 0xf7, 0x4c, 0xfc, 0x01, 0x20, 0xa0, 0x40, + 0x86, 0x43, 0x00, 0x2e, 0xdd, 0xd1, 0xe9, 0x69, + 0x00, 0x29, 0x3c, 0x00, 0x5c, 0x2b, 0x00, 0x00, + 0x03, 0xd0, 0x30, 0x20, 0x40, 0x5d, 0xfd, 0xf7, + 0x3a, 0xfc, 0x16, 0x4c, 0x50, 0x3c, 0x60, 0x6a, + 0x00, 0x28, 0x03, 0xd0, 0x0a, 0x21, 0x84, 0x20, + 0xfe, 0xf7, 0x96, 0xfb, 0x20, 0x35, 0x28, 0x78, + 0x01, 0x28, 0x03, 0xd0, 0x0b, 0x21, 0x84, 0x20, + 0xfe, 0xf7, 0x8e, 0xfb, 0x02, 0x20, 0x28, 0x70, + 0xe0, 0x68, 0x01, 0x30, 0x00, 0xe0, 0x07, 0xe0, + 0xe0, 0x60, 0x00, 0x98, 0x3c, 0x00, 0x98, 0x2b, + 0x00, 0x00, 0x20, 0x70, 0x00, 0x98, 0x60, 0x70, + 0x0a, 0x48, 0x00, 0x68, 0x60, 0x63, 0xf8, 0xbd, + 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x40, + 0x07, 0x00, 0x01, 0x00, 0x00, 0x01, 0x30, 0x80, + 0x07, 0x00, 0x18, 0xdb, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x54, 0x6c, 0x01, 0x00, 0x00, 0xa0, + 0x07, 0x00, 0x78, 0x6e, 0x01, 0x00, 0x3c, 0x22, + 0x3c, 0x23, 0x4a, 0x43, 0x09, 0x49, 0x3c, 0x00, + 0xd4, 0x2b, 0x00, 0x00, 0xb0, 0xb5, 0x54, 0x18, + 0x58, 0x43, 0x45, 0x18, 0x21, 0x1c, 0x38, 0x22, + 0x28, 0x1c, 0xfd, 0xf7, 0xe5, 0xfc, 0xa0, 0x6b, + 0x00, 0x78, 0xa9, 0x6b, 0x08, 0x70, 0x00, 0x20, + 0x20, 0x34, 0x20, 0x70, 0xb0, 0xbd, 0x00, 0x00, + 0x18, 0xdb, 0x01, 0x00, 0x3c, 0x23, 0x07, 0x49, + 0x58, 0x43, 0x10, 0xb5, 0x44, 0x18, 0x20, 0x34, + 0x20, 0x78, 0x02, 0x28, 0x03, 0xd1, 0x0d, 0x21, + 0x3c, 0x00, 0x10, 0x2c, 0x00, 0x00, 0x84, 0x20, + 0xfe, 0xf7, 0x47, 0xfb, 0x00, 0x20, 0x20, 0x70, + 0x10, 0xbd, 0x18, 0xdb, 0x01, 0x00, 0xff, 0xb5, + 0x3c, 0x20, 0x48, 0x43, 0x1a, 0x49, 0x81, 0xb0, + 0x44, 0x18, 0x26, 0x1c, 0x20, 0x36, 0x30, 0x78, + 0x15, 0x1c, 0x0f, 0x9f, 0x02, 0x28, 0x03, 0xd1, + 0x04, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x31, 0xfb, + 0x01, 0x20, 0x30, 0x70, 0x25, 0x71, 0x0b, 0x99, + 0x30, 0x22, 0x3c, 0x00, 0x4c, 0x2c, 0x00, 0x00, + 0x61, 0x80, 0x0a, 0x99, 0xe1, 0x62, 0x0d, 0x99, + 0xa1, 0x61, 0x0c, 0x99, 0xe1, 0x61, 0x0e, 0x99, + 0x61, 0x62, 0xa7, 0x62, 0x01, 0x99, 0x11, 0x55, + 0x7e, 0x21, 0xc9, 0x43, 0x61, 0x63, 0x04, 0x99, + 0x00, 0x29, 0x00, 0xd1, 0x00, 0x20, 0x06, 0x1c, + 0x28, 0x1c, 0x08, 0xf0, 0x8b, 0xf8, 0x00, 0x28, + 0x01, 0xd0, 0x02, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0xa1, 0x6b, 0x30, 0x43, 0x3c, 0x00, 0x88, 0x2c, + 0x00, 0x00, 0x08, 0x70, 0x05, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0x18, 0xdb, 0x01, 0x00, 0x80, 0xb5, + 0x14, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x03, 0xfb, + 0x80, 0xbd, 0x01, 0x48, 0x40, 0x78, 0x70, 0x47, + 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, 0x02, 0x48, + 0x00, 0x69, 0xc0, 0x07, 0xc0, 0x0f, 0x70, 0x47, + 0x00, 0x00, 0x00, 0x40, 0x07, 0x00, 0x01, 0x1c, + 0x3c, 0x23, 0x04, 0x4a, 0x59, 0x43, 0x3c, 0x00, + 0xc4, 0x2c, 0x00, 0x00, 0x89, 0x18, 0x20, 0x31, + 0x09, 0x78, 0x01, 0x20, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x18, 0xdb, 0x01, 0x00, + 0x08, 0x48, 0x40, 0x6a, 0x00, 0x28, 0x0a, 0xd1, + 0x07, 0x4a, 0x00, 0x21, 0x20, 0x23, 0x9b, 0x5c, + 0x02, 0x2b, 0x04, 0xd0, 0x01, 0x31, 0x3c, 0x32, + 0x05, 0x29, 0xf7, 0xd3, 0x70, 0x47, 0x01, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, + 0x3c, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x18, 0xdb, + 0x01, 0x00, 0xf8, 0xb5, 0x0e, 0x1c, 0x04, 0x1c, + 0x17, 0x1c, 0xfe, 0xf7, 0x82, 0xfe, 0x20, 0x1c, + 0x11, 0x4c, 0x60, 0x60, 0x01, 0x20, 0x20, 0x60, + 0x10, 0x4d, 0x68, 0x69, 0x01, 0x30, 0x68, 0x61, + 0x68, 0x6a, 0x00, 0x28, 0x03, 0xd0, 0x07, 0x21, + 0x84, 0x20, 0xfe, 0xf7, 0xba, 0xfa, 0xa0, 0x68, + 0x40, 0x07, 0x03, 0xd5, 0x06, 0x21, 0x84, 0x20, + 0xfe, 0xf7, 0x3c, 0x00, 0x3c, 0x2d, 0x00, 0x00, + 0xb3, 0xfa, 0x08, 0x48, 0x00, 0x69, 0x00, 0x28, + 0x03, 0xda, 0xaa, 0x21, 0x84, 0x20, 0xfe, 0xf7, + 0xab, 0xfa, 0x02, 0x20, 0x68, 0x62, 0xae, 0x60, + 0x2f, 0x70, 0xf8, 0xbd, 0x00, 0x30, 0x07, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0x00, 0x40, 0x07, 0x00, + 0x04, 0x4a, 0x51, 0x80, 0x10, 0x71, 0x03, 0x48, + 0x03, 0x49, 0x08, 0x30, 0x48, 0x60, 0x01, 0x20, + 0x08, 0x60, 0x70, 0x47, 0x3c, 0x00, 0x78, 0x2d, + 0x00, 0x00, 0x3c, 0x6c, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x00, 0x21, 0x00, 0x23, 0x05, 0xe0, + 0x02, 0x89, 0x43, 0x60, 0xc0, 0x68, 0x51, 0x18, + 0x09, 0x04, 0x09, 0x0c, 0x00, 0x28, 0xf7, 0xd1, + 0x04, 0x31, 0x08, 0x04, 0x00, 0x0c, 0x70, 0x47, + 0x00, 0x00, 0x02, 0x4a, 0x51, 0x6b, 0x08, 0x43, + 0x50, 0x63, 0x70, 0x47, 0x00, 0x00, 0x04, 0x6c, + 0x01, 0x00, 0x38, 0xb5, 0x0a, 0x4c, 0x3c, 0x00, + 0xb4, 0x2d, 0x00, 0x00, 0x22, 0x1c, 0x20, 0x32, + 0x95, 0x79, 0x00, 0xab, 0x1d, 0x70, 0xd2, 0x79, + 0x5a, 0x70, 0x03, 0x68, 0x40, 0x68, 0x06, 0x4a, + 0x50, 0x65, 0x05, 0x48, 0x13, 0x65, 0x50, 0x30, + 0x81, 0x60, 0x00, 0xab, 0x18, 0x88, 0xe0, 0x84, + 0x38, 0xbd, 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0x98, 0xb5, 0x0d, 0x4c, + 0x20, 0x1c, 0x20, 0x30, 0x81, 0x79, 0x00, 0xab, + 0x3c, 0x00, 0xf0, 0x2d, 0x00, 0x00, 0x19, 0x70, + 0xc0, 0x79, 0x58, 0x70, 0x0a, 0x48, 0x00, 0xf0, + 0xec, 0xf8, 0x09, 0x49, 0x00, 0x20, 0x48, 0x62, + 0xff, 0xf7, 0x69, 0xff, 0x00, 0x28, 0x03, 0xd0, + 0x12, 0x21, 0x84, 0x20, 0xfe, 0xf7, 0x49, 0xfa, + 0x00, 0xab, 0x18, 0x88, 0xe0, 0x84, 0x98, 0xbd, + 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x04, 0x6c, 0x01, 0x00, 0x03, 0x48, + 0x01, 0x7a, 0x3c, 0x00, 0x2c, 0x2e, 0x00, 0x00, + 0xfe, 0x22, 0x91, 0x43, 0x0a, 0x31, 0x01, 0x72, + 0x70, 0x47, 0x00, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x90, 0xb5, 0x0e, 0x4c, 0x85, 0xb0, 0xa0, 0x78, + 0x02, 0x28, 0x14, 0xd1, 0x03, 0x20, 0xa0, 0x70, + 0x0b, 0x49, 0x00, 0x20, 0x00, 0x22, 0x04, 0x92, + 0x02, 0x90, 0x03, 0x91, 0xe1, 0x88, 0x01, 0x22, + 0x01, 0x92, 0x00, 0x91, 0x61, 0x78, 0x20, 0x78, + 0x22, 0x69, 0xe3, 0x68, 0x3c, 0x00, 0x68, 0x2e, + 0x00, 0x00, 0x08, 0xf0, 0x94, 0xfd, 0x04, 0x48, + 0x09, 0xf0, 0x7f, 0xf9, 0x05, 0xb0, 0x90, 0xbd, + 0x00, 0x00, 0xb4, 0x79, 0x01, 0x00, 0xad, 0xb6, + 0x00, 0x00, 0x71, 0xb6, 0x00, 0x00, 0xb0, 0xb5, + 0x0c, 0x4d, 0xac, 0x79, 0x0c, 0x49, 0x09, 0x78, + 0x00, 0x29, 0x03, 0xd0, 0x01, 0x29, 0x0e, 0xd0, + 0x02, 0x29, 0x08, 0xd1, 0xc2, 0x88, 0x00, 0x2a, + 0x09, 0xd0, 0x01, 0x23, 0x81, 0x68, 0x3c, 0x00, + 0xa4, 0x2e, 0x00, 0x00, 0x02, 0x20, 0x0f, 0xf0, + 0xc1, 0xf8, 0x03, 0xe0, 0x02, 0x21, 0x86, 0x20, + 0xfe, 0xf7, 0xf8, 0xf9, 0xac, 0x71, 0xb0, 0xbd, + 0x20, 0x10, 0x07, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x68, 0x07, 0x49, 0x4a, 0x60, + 0x03, 0x79, 0xca, 0x78, 0xcb, 0x70, 0x00, 0x79, + 0x90, 0x42, 0x06, 0xd0, 0x03, 0x48, 0x14, 0x30, + 0x00, 0x89, 0x07, 0xf0, 0x27, 0xfe, 0x06, 0xf0, + 0x3c, 0x00, 0xe0, 0x2e, 0x00, 0x00, 0xab, 0xfa, + 0x80, 0xbd, 0x84, 0x66, 0x01, 0x00, 0x70, 0xb5, + 0x16, 0x4c, 0x15, 0x4d, 0xa0, 0x78, 0x00, 0x26, + 0x98, 0x3d, 0x01, 0x28, 0x03, 0xd1, 0x28, 0x69, + 0x08, 0xf0, 0xfb, 0xfc, 0xa6, 0x70, 0x60, 0x68, + 0x01, 0x28, 0x03, 0xd0, 0x00, 0x21, 0x28, 0x69, + 0x00, 0xf0, 0xff, 0xfb, 0x0e, 0x48, 0x29, 0x69, + 0x0c, 0xf0, 0x31, 0xfa, 0x01, 0x20, 0x0c, 0xf0, + 0xe4, 0xf8, 0x3c, 0x00, 0x1c, 0x2f, 0x00, 0x00, + 0xe0, 0x78, 0x01, 0x28, 0x02, 0xd0, 0x01, 0x20, + 0x60, 0x70, 0x00, 0xe0, 0x66, 0x70, 0x06, 0x48, + 0x14, 0x30, 0x41, 0x68, 0x01, 0x29, 0x06, 0xd1, + 0x06, 0x60, 0x41, 0x6f, 0x00, 0x29, 0x02, 0xd0, + 0x00, 0x20, 0xfd, 0xf7, 0x4c, 0xfa, 0x70, 0xbd, + 0x84, 0x66, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x30, 0xb5, 0x00, 0x22, 0x00, 0x23, 0x01, 0x25, + 0x2c, 0x1c, 0x94, 0x40, 0x3c, 0x00, 0x58, 0x2f, + 0x00, 0x00, 0x04, 0x40, 0x01, 0xd0, 0xca, 0x54, + 0x01, 0x33, 0x01, 0x32, 0x0e, 0x2a, 0xf6, 0xdb, + 0x18, 0x1c, 0x30, 0xbd, 0x00, 0x00, 0xff, 0xb5, + 0x01, 0x27, 0x00, 0x26, 0x05, 0x1c, 0x02, 0x20, + 0x81, 0xb0, 0x00, 0x90, 0x00, 0x2d, 0x18, 0xd0, + 0x28, 0x78, 0xff, 0x28, 0x15, 0xd0, 0x00, 0x24, + 0x10, 0xe0, 0x28, 0x19, 0x80, 0x78, 0x0a, 0x99, + 0x00, 0x29, 0x01, 0xd0, 0x01, 0x06, 0x3c, 0x00, + 0x94, 0x2f, 0x00, 0x00, 0x08, 0xd5, 0x07, 0xf0, + 0xe9, 0xfe, 0x0e, 0x28, 0x03, 0xd0, 0x01, 0x21, + 0x81, 0x40, 0x0e, 0x43, 0x00, 0xe0, 0x00, 0x27, + 0x01, 0x34, 0x68, 0x78, 0xa0, 0x42, 0xeb, 0xdc, + 0x00, 0x98, 0x02, 0x9d, 0x01, 0x38, 0x00, 0x90, + 0xdf, 0xd1, 0x03, 0x98, 0x31, 0x1c, 0x81, 0x43, + 0x02, 0xd0, 0x03, 0x98, 0x06, 0x40, 0x00, 0x27, + 0x04, 0x98, 0x06, 0x60, 0x05, 0xb0, 0x38, 0x1c, + 0x3c, 0x00, 0xd0, 0x2f, 0x00, 0x00, 0xf0, 0xbd, + 0x00, 0x00, 0x02, 0x21, 0x01, 0x60, 0x64, 0x21, + 0x01, 0xe0, 0x01, 0x39, 0x02, 0xd0, 0x02, 0x68, + 0x92, 0x07, 0xfa, 0xd4, 0x01, 0x20, 0x00, 0x29, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x10, 0xb5, + 0x00, 0x20, 0xc4, 0x43, 0x05, 0x4b, 0x02, 0x22, + 0x01, 0x01, 0x5a, 0x50, 0xc9, 0x18, 0x8c, 0x60, + 0x01, 0x30, 0x08, 0x28, 0xf8, 0xdb, 0x10, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x30, 0x00, 0x00, + 0x00, 0x30, 0x07, 0x00, 0xf0, 0xb5, 0x05, 0x1c, + 0x60, 0x35, 0xc7, 0x6a, 0x04, 0x1c, 0x28, 0x7b, + 0x00, 0x2f, 0x8b, 0xb0, 0x15, 0xd0, 0x08, 0x28, + 0x15, 0xd2, 0x02, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x00, 0x00, 0x07, 0x04, 0x04, 0x07, + 0x09, 0x09, 0x0c, 0x0c, 0x01, 0x26, 0x00, 0x21, + 0x09, 0xe0, 0x00, 0x26, 0x06, 0xe0, 0x02, 0x26, + 0x02, 0x21, 0x04, 0xe0, 0x3c, 0x00, 0x48, 0x30, + 0x00, 0x00, 0x03, 0x26, 0x03, 0x21, 0x01, 0xe0, + 0x04, 0x26, 0x01, 0x21, 0x8c, 0x22, 0x12, 0x59, + 0x07, 0x91, 0x26, 0x49, 0x06, 0x90, 0x04, 0x91, + 0x00, 0x20, 0x03, 0x90, 0x05, 0x97, 0x08, 0x92, + 0xe0, 0x69, 0x22, 0x69, 0x21, 0x1c, 0x70, 0x31, + 0x01, 0x91, 0x21, 0x49, 0x00, 0x90, 0x70, 0x00, + 0x40, 0x18, 0x60, 0x30, 0x02, 0x92, 0x03, 0x88, + 0x59, 0x1c, 0x01, 0x80, 0x1e, 0x48, 0x3c, 0x00, + 0x84, 0x30, 0x00, 0x00, 0x02, 0x88, 0xa1, 0x68, + 0x0a, 0xa8, 0x09, 0xf0, 0xe1, 0xff, 0x60, 0x60, + 0xe8, 0x7a, 0xa1, 0x6a, 0xc9, 0x07, 0x00, 0x07, + 0x00, 0x0e, 0xc9, 0x0d, 0x08, 0x43, 0x61, 0x6a, + 0x22, 0x69, 0xc9, 0x07, 0x89, 0x0d, 0x01, 0x43, + 0x01, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x80, 0x03, 0x08, 0x43, 0x21, 0x6a, 0xc9, 0x03, + 0x08, 0x43, 0x08, 0x21, 0x08, 0x43, 0x0a, 0x99, + 0x3c, 0x00, 0xc0, 0x30, 0x00, 0x00, 0x08, 0x80, + 0x20, 0x1c, 0xfe, 0xf7, 0x98, 0xfe, 0x20, 0x69, + 0x00, 0x28, 0x04, 0xd1, 0x20, 0x1c, 0x0a, 0xf0, + 0x82, 0xf9, 0x0b, 0xb0, 0xf0, 0xbd, 0x80, 0x79, + 0x06, 0x28, 0x01, 0xd9, 0xfe, 0xf7, 0x0f, 0xf9, + 0x20, 0x69, 0x06, 0x49, 0x80, 0x79, 0x80, 0x00, + 0x09, 0x58, 0x20, 0x1c, 0xfd, 0xf7, 0x74, 0xf9, + 0xef, 0xe7, 0x79, 0x2f, 0x01, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x3c, 0x00, 0xfc, 0x30, 0x00, 0x00, + 0x08, 0x61, 0x01, 0x00, 0x74, 0x57, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x58, 0x30, 0x8a, 0xb0, + 0x0e, 0xf0, 0x7c, 0xfe, 0x22, 0x1c, 0x80, 0x32, + 0x51, 0x68, 0x00, 0x29, 0x01, 0xd0, 0x11, 0x7a, + 0x07, 0xe0, 0x00, 0x28, 0x04, 0xd0, 0x80, 0x69, + 0x80, 0x07, 0x01, 0xd5, 0x03, 0x21, 0x00, 0xe0, + 0x01, 0x21, 0xd2, 0x68, 0x07, 0x91, 0x22, 0x49, + 0x00, 0x20, 0x08, 0x92, 0x3c, 0x00, 0x38, 0x31, + 0x00, 0x00, 0x04, 0x91, 0x00, 0x22, 0x05, 0x92, + 0x06, 0x90, 0x03, 0x90, 0xe0, 0x69, 0x22, 0x69, + 0x00, 0x90, 0x21, 0x1c, 0x70, 0x31, 0x1c, 0x48, + 0x01, 0x91, 0x02, 0x92, 0x03, 0x89, 0x59, 0x1c, + 0x01, 0x81, 0x1a, 0x48, 0x02, 0x88, 0xa1, 0x68, + 0x09, 0xa8, 0x09, 0xf0, 0x76, 0xff, 0x60, 0x60, + 0x6b, 0x20, 0x00, 0x5d, 0xa1, 0x6a, 0x22, 0x69, + 0xc9, 0x07, 0x00, 0x07, 0x00, 0x0e, 0x3c, 0x00, + 0x74, 0x31, 0x00, 0x00, 0xc9, 0x0d, 0x01, 0x43, + 0x01, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x80, 0x03, 0x08, 0x43, 0x09, 0x99, 0x08, 0x80, + 0x20, 0x1c, 0xfe, 0xf7, 0x35, 0xfe, 0x20, 0x69, + 0x00, 0x28, 0x04, 0xd1, 0x20, 0x1c, 0x0a, 0xf0, + 0x1f, 0xf9, 0x0a, 0xb0, 0x10, 0xbd, 0x80, 0x79, + 0x06, 0x28, 0x01, 0xd9, 0xfe, 0xf7, 0xac, 0xf8, + 0x20, 0x69, 0x07, 0x49, 0x80, 0x79, 0x80, 0x00, + 0x3c, 0x00, 0xb0, 0x31, 0x00, 0x00, 0x09, 0x58, + 0x20, 0x1c, 0xfd, 0xf7, 0x11, 0xf9, 0xef, 0xe7, + 0x00, 0x00, 0xbd, 0x2f, 0x01, 0x00, 0x24, 0x6a, + 0x01, 0x00, 0x08, 0x61, 0x01, 0x00, 0x74, 0x57, + 0x01, 0x00, 0x3e, 0xb5, 0x05, 0x1c, 0x00, 0x69, + 0x04, 0x21, 0x07, 0xf0, 0xd2, 0xfa, 0x00, 0x28, + 0x09, 0xd0, 0x42, 0x78, 0x02, 0x32, 0x01, 0x1c, + 0x68, 0x46, 0xfd, 0xf7, 0x88, 0xf9, 0xe8, 0x6a, + 0x6c, 0x46, 0x3c, 0x00, 0xec, 0x31, 0x00, 0x00, + 0x02, 0x90, 0x00, 0xe0, 0x00, 0x24, 0x28, 0x1c, + 0x14, 0x30, 0x02, 0xf0, 0x03, 0xfb, 0x00, 0x28, + 0x04, 0xd0, 0x21, 0x1c, 0x28, 0x1c, 0x05, 0xf0, + 0xa5, 0xfe, 0x3e, 0xbd, 0x00, 0x2c, 0xfc, 0xd0, + 0x02, 0x49, 0x20, 0x1c, 0x49, 0x69, 0xfd, 0xf7, + 0xe2, 0xf8, 0xf6, 0xe7, 0x44, 0x7d, 0x01, 0x00, + 0x70, 0xb5, 0x1e, 0x1c, 0x18, 0x23, 0x58, 0x43, + 0x06, 0x4b, 0x04, 0x9d, 0x3c, 0x00, 0x28, 0x32, + 0x00, 0x00, 0x19, 0x50, 0xc4, 0x18, 0x00, 0x20, + 0x60, 0x61, 0x62, 0x60, 0xa6, 0x60, 0xe5, 0x60, + 0x0f, 0xf0, 0xb9, 0xfd, 0x20, 0x61, 0x70, 0xbd, + 0x00, 0x00, 0xb8, 0x7d, 0x01, 0x00, 0x02, 0x4a, + 0x01, 0x1c, 0x90, 0x69, 0x91, 0x61, 0x70, 0x47, + 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x6b, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x04, 0x49, 0x04, 0x4b, 0x3c, 0x00, + 0x64, 0x32, 0x00, 0x00, 0xca, 0x68, 0x09, 0x69, + 0x5c, 0x3b, 0x5b, 0x68, 0xc9, 0x1a, 0x41, 0x43, + 0x50, 0x18, 0x70, 0x47, 0xa0, 0x7d, 0x01, 0x00, + 0x01, 0x48, 0x00, 0x78, 0x70, 0x47, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0x80, 0xb5, 0x06, 0x22, + 0x01, 0x49, 0xfd, 0xf7, 0x35, 0xf9, 0x80, 0xbd, + 0xfe, 0x67, 0x01, 0x00, 0xf0, 0xb5, 0x89, 0xb0, + 0x00, 0x93, 0x16, 0x4f, 0x13, 0x1c, 0x0e, 0x1c, + 0x3c, 0x00, 0xa0, 0x32, 0x00, 0x00, 0x04, 0x1c, + 0x3a, 0x1c, 0x01, 0xf0, 0x62, 0xff, 0x01, 0xa9, + 0x06, 0xa8, 0xa2, 0x68, 0x02, 0xf0, 0x0b, 0xf9, + 0x01, 0xaa, 0x06, 0xa9, 0x38, 0x1c, 0x63, 0x6a, + 0x02, 0xf0, 0x81, 0xfc, 0x05, 0x1c, 0x01, 0x28, + 0x14, 0xd1, 0x0c, 0x48, 0xfc, 0x21, 0xc8, 0x51, + 0x38, 0x1c, 0x02, 0xf0, 0x0c, 0xf8, 0x03, 0x21, + 0x30, 0x1c, 0x07, 0xf0, 0x52, 0xfa, 0x00, 0x28, + 0x07, 0xd0, 0x3c, 0x00, 0xdc, 0x32, 0x00, 0x00, + 0x80, 0x78, 0x00, 0xf0, 0x33, 0xfc, 0x20, 0x1c, + 0x10, 0x30, 0x0e, 0xf0, 0x47, 0xfd, 0x00, 0xe0, + 0x00, 0x25, 0x28, 0x1c, 0x09, 0xb0, 0xf0, 0xbd, + 0xf4, 0x67, 0x01, 0x00, 0xc1, 0x38, 0x00, 0x00, + 0x10, 0xb5, 0x07, 0x4c, 0x06, 0x48, 0x06, 0x22, + 0x21, 0x1d, 0x08, 0x38, 0xfd, 0xf7, 0xf6, 0xf8, + 0x01, 0xf0, 0xfc, 0xff, 0x00, 0xf0, 0x42, 0xfc, + 0x20, 0x1c, 0x02, 0xf0, 0x3c, 0x00, 0x18, 0x33, + 0x00, 0x00, 0x27, 0xfc, 0x10, 0xbd, 0xf4, 0x67, + 0x01, 0x00, 0x08, 0x49, 0xc9, 0x68, 0x00, 0x29, + 0x0a, 0xd0, 0x06, 0x4a, 0x01, 0x32, 0x51, 0x78, + 0x12, 0x78, 0x48, 0x43, 0x00, 0x2a, 0x01, 0xd1, + 0x08, 0x18, 0x70, 0x47, 0x10, 0x18, 0x70, 0x47, + 0x01, 0x30, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x04, 0x4b, 0x05, 0x49, 0x00, 0x28, + 0x5a, 0x69, 0x00, 0xd0, 0x01, 0x1c, 0x3c, 0x00, + 0x54, 0x33, 0x00, 0x00, 0x10, 0x1c, 0x59, 0x61, + 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0xb9, 0x75, 0x00, 0x00, 0x07, 0x49, 0x00, 0x20, + 0x0a, 0x78, 0x02, 0x2a, 0x09, 0xd1, 0x0a, 0x7c, + 0x00, 0x2a, 0x05, 0xd1, 0xca, 0x68, 0x00, 0x2a, + 0x03, 0xd0, 0x49, 0x69, 0x00, 0x29, 0x00, 0xd0, + 0x01, 0x20, 0x70, 0x47, 0x78, 0x69, 0x01, 0x00, + 0x0c, 0x4a, 0x80, 0xb5, 0x01, 0x21, 0x51, 0x60, + 0x3c, 0x00, 0x90, 0x33, 0x00, 0x00, 0x09, 0xf0, + 0x6a, 0xf8, 0x09, 0x48, 0x1c, 0x30, 0x81, 0x69, + 0x00, 0x29, 0x07, 0xd0, 0x00, 0x23, 0x83, 0x61, + 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, 0x00, 0xf0, + 0xd2, 0xf8, 0x80, 0xbd, 0x00, 0x22, 0x00, 0x21, + 0x03, 0x48, 0x00, 0xf0, 0x5c, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, 0x51, 0x35, + 0x00, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x01, 0x28, + 0x16, 0xd1, 0x3c, 0x00, 0xcc, 0x33, 0x00, 0x00, + 0x0e, 0x4d, 0x02, 0x2c, 0x09, 0xd1, 0x00, 0xf0, + 0x2b, 0xfa, 0x00, 0x28, 0x0e, 0xd0, 0x68, 0x69, + 0x00, 0x28, 0x0b, 0xd1, 0x21, 0x1c, 0x13, 0x20, + 0x0c, 0xe0, 0x03, 0x2c, 0xfa, 0xd1, 0x00, 0xf0, + 0xf9, 0xf9, 0x00, 0x28, 0x02, 0xd0, 0x28, 0x7c, + 0x00, 0x28, 0xf3, 0xd0, 0xb0, 0xbd, 0x21, 0x1c, + 0x00, 0x06, 0x00, 0x0e, 0x04, 0xf0, 0x62, 0xfc, + 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x34, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x0c, 0x4c, 0x00, 0x25, 0x25, 0x74, 0x65, 0x61, + 0xe5, 0x60, 0x00, 0xf0, 0x3c, 0xfa, 0x00, 0xf0, + 0x34, 0xfa, 0x07, 0x48, 0x1c, 0x38, 0x05, 0x61, + 0x09, 0xf0, 0x33, 0xff, 0x20, 0x78, 0x00, 0x28, + 0x02, 0xd1, 0x04, 0xf0, 0x6e, 0xfa, 0xb0, 0xbd, + 0x02, 0x28, 0xfc, 0xd1, 0x04, 0xf0, 0xa5, 0xfb, + 0xb0, 0xbd, 0x78, 0x69, 0x01, 0x00, 0x3c, 0x00, + 0x44, 0x34, 0x00, 0x00, 0x0c, 0x48, 0x80, 0xb5, + 0x01, 0x78, 0x00, 0x29, 0x12, 0xd0, 0xc0, 0x68, + 0x00, 0x28, 0x0f, 0xd1, 0x08, 0x48, 0x1c, 0x38, + 0x40, 0x69, 0x00, 0x28, 0x0a, 0xd1, 0x07, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x06, 0xd0, 0x00, 0x22, + 0x07, 0x21, 0x10, 0x20, 0x10, 0xf0, 0xa0, 0xf9, + 0x02, 0xf0, 0x2c, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0xd4, 0x67, 0x01, 0x00, + 0x3c, 0x00, 0x80, 0x34, 0x00, 0x00, 0xf8, 0xb5, + 0x1d, 0x4e, 0x1c, 0x4d, 0x04, 0x1c, 0xf0, 0x68, + 0x02, 0x27, 0x1c, 0x3d, 0x00, 0x28, 0x07, 0xd0, + 0xe8, 0x68, 0x00, 0x28, 0x04, 0xd0, 0xfd, 0xf7, + 0xc2, 0xfe, 0x00, 0x28, 0x00, 0xd0, 0xbc, 0x43, + 0x00, 0x2c, 0x14, 0xd0, 0x37, 0x70, 0xf0, 0x68, + 0x14, 0x4f, 0x00, 0x28, 0x10, 0xd0, 0xe0, 0x07, + 0x17, 0xd4, 0xfd, 0xf7, 0xb4, 0xfe, 0x00, 0x28, + 0x13, 0xd0, 0x3c, 0x00, 0xbc, 0x34, 0x00, 0x00, + 0x70, 0x69, 0x00, 0x28, 0x06, 0xd1, 0xe8, 0x68, + 0x00, 0x28, 0x01, 0xd0, 0xfd, 0xf7, 0x1a, 0xff, + 0x0d, 0xf0, 0x0a, 0xfa, 0xf8, 0xbd, 0x68, 0x69, + 0x00, 0x28, 0x05, 0xd1, 0x09, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x2c, 0x04, 0xd1, + 0x39, 0x1c, 0x20, 0x1c, 0x0e, 0xf0, 0x52, 0xfd, + 0xf0, 0xe7, 0x04, 0xf0, 0x1d, 0xfb, 0x02, 0xf0, + 0xeb, 0xfb, 0xeb, 0xe7, 0x3c, 0x00, 0xf8, 0x34, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0x50, 0xc3, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x05, 0x48, + 0x41, 0x69, 0x00, 0x29, 0x04, 0xd0, 0x40, 0x6a, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x06, 0x49, + 0x00, 0x20, 0x48, 0x60, 0x08, 0x60, 0x88, 0x60, + 0x08, 0xf0, 0x9b, 0xff, 0x07, 0x21, 0x3c, 0x00, + 0x34, 0x35, 0x00, 0x00, 0x12, 0x20, 0x22, 0x79, + 0x10, 0xf0, 0x3a, 0xf9, 0x10, 0xbd, 0x00, 0x00, + 0x5c, 0x69, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0x08, 0x60, 0x70, 0x47, 0xe8, 0x67, 0x01, 0x00, + 0xf8, 0xb5, 0x07, 0x1c, 0x0e, 0x1c, 0x08, 0xf0, + 0xa3, 0xfa, 0x13, 0x4d, 0x04, 0x1c, 0x68, 0x68, + 0x00, 0x28, 0x17, 0xd0, 0x00, 0x2f, 0x02, 0xd0, + 0xa8, 0x68, 0x03, 0x28, 0x13, 0xd3, 0x00, 0x20, + 0x3c, 0x00, 0x70, 0x35, 0x00, 0x00, 0xa8, 0x60, + 0x68, 0x60, 0x21, 0x1c, 0x0f, 0x20, 0x0e, 0xf0, + 0xf0, 0xfe, 0x28, 0x68, 0x00, 0x28, 0x03, 0xd0, + 0x00, 0x2c, 0x06, 0xd1, 0x01, 0x20, 0x02, 0xe0, + 0x01, 0x2c, 0x02, 0xd1, 0x00, 0x20, 0xff, 0xf7, + 0xfa, 0xfe, 0xf8, 0xbd, 0x72, 0x1c, 0x00, 0x21, + 0x04, 0x48, 0x00, 0xf0, 0x68, 0xf8, 0xa8, 0x68, + 0x01, 0x30, 0xa8, 0x60, 0xf5, 0xe7, 0x5c, 0x69, + 0x01, 0x00, 0x3c, 0x00, 0xac, 0x35, 0x00, 0x00, + 0x51, 0x35, 0x00, 0x00, 0x0a, 0x49, 0x80, 0xb5, + 0xca, 0x68, 0x00, 0x2a, 0x0b, 0xd0, 0x42, 0x68, + 0x00, 0x2a, 0x09, 0xd0, 0x00, 0x22, 0x4a, 0x62, + 0x02, 0x68, 0x0a, 0x62, 0x02, 0x68, 0x07, 0x21, + 0x17, 0x20, 0x10, 0xf0, 0xef, 0xf8, 0x80, 0xbd, + 0x01, 0x20, 0x48, 0x62, 0x80, 0xbd, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0x70, 0xb5, 0x14, 0x4d, + 0x84, 0x6c, 0xe9, 0x68, 0x3c, 0x00, 0xe8, 0x35, + 0x00, 0x00, 0x00, 0x29, 0x17, 0xd0, 0x40, 0x30, + 0xec, 0x61, 0x40, 0x78, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x68, 0x62, 0x28, 0x6a, 0x0e, 0x4e, + 0x00, 0x1b, 0xb0, 0x42, 0x0c, 0xd2, 0x08, 0xf0, + 0x3a, 0xfe, 0x29, 0x6a, 0x40, 0x1a, 0xb0, 0x42, + 0x03, 0xd2, 0x02, 0x22, 0x07, 0x21, 0x13, 0x20, + 0x09, 0xe0, 0x04, 0xf0, 0xb6, 0xfa, 0x70, 0xbd, + 0x07, 0x48, 0xa9, 0x68, 0x0b, 0xf0, 0x3c, 0x00, + 0x24, 0x36, 0x00, 0x00, 0xbd, 0xfe, 0x22, 0x1c, + 0x07, 0x21, 0x16, 0x20, 0x10, 0xf0, 0xc0, 0xf8, + 0x70, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x0a, 0x49, 0x80, 0xb5, 0x00, 0x20, 0x88, 0x61, + 0x08, 0x69, 0x00, 0x28, 0x0c, 0xd0, 0x07, 0x48, + 0x1c, 0x30, 0x00, 0x78, 0x00, 0x28, 0x07, 0xd0, + 0x01, 0xf0, 0xd2, 0xff, 0x02, 0x28, 0x03, 0xd1, + 0x3c, 0x00, 0x60, 0x36, 0x00, 0x00, 0x00, 0xf0, + 0x12, 0xf9, 0x00, 0xf0, 0xbc, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, 0xf0, 0xb5, + 0x06, 0x1c, 0x0c, 0x1c, 0x15, 0x1c, 0x91, 0xb0, + 0x01, 0xa8, 0x40, 0x21, 0xfc, 0xf7, 0x0d, 0xff, + 0x00, 0x21, 0x68, 0x46, 0xfd, 0xf7, 0xa7, 0xff, + 0x04, 0x90, 0x01, 0xa8, 0x06, 0x22, 0x08, 0x49, + 0xfc, 0xf7, 0x31, 0xff, 0x06, 0x22, 0x02, 0xa8, + 0x02, 0x30, 0x3c, 0x00, 0x9c, 0x36, 0x00, 0x00, + 0x06, 0x49, 0xfc, 0xf7, 0x2b, 0xff, 0x00, 0xab, + 0xdc, 0x76, 0x0c, 0x95, 0x31, 0x1c, 0x01, 0xa8, + 0x07, 0xf0, 0x4e, 0xf8, 0x11, 0xb0, 0xf0, 0xbd, + 0x12, 0x61, 0x01, 0x00, 0xf8, 0x67, 0x01, 0x00, + 0x03, 0x1c, 0x08, 0x1c, 0x19, 0x1c, 0x11, 0x4b, + 0x80, 0xb5, 0x06, 0xd0, 0x04, 0x21, 0x11, 0x80, + 0x04, 0x22, 0x19, 0x1c, 0xfc, 0xf7, 0x12, 0xff, + 0x16, 0xe0, 0x04, 0x22, 0x3c, 0x00, 0xd8, 0x36, + 0x00, 0x00, 0x01, 0x1c, 0x18, 0x1c, 0xfc, 0xf7, + 0x0c, 0xff, 0x09, 0x48, 0x10, 0x38, 0x00, 0x69, + 0x00, 0x28, 0x0c, 0xd0, 0x07, 0x48, 0x0c, 0x30, + 0x00, 0x78, 0x00, 0x28, 0x07, 0xd0, 0x01, 0xf0, + 0x84, 0xff, 0x02, 0x28, 0x03, 0xd1, 0x00, 0xf0, + 0xc4, 0xf8, 0x00, 0xf0, 0x6e, 0xf8, 0x01, 0x20, + 0x80, 0xbd, 0x6c, 0x69, 0x01, 0x00, 0xf8, 0xb5, + 0x04, 0x1c, 0x0f, 0x1c, 0x00, 0x25, 0x3c, 0x00, + 0x14, 0x37, 0x00, 0x00, 0x00, 0x26, 0x01, 0xf0, + 0x73, 0xff, 0x02, 0x28, 0x2f, 0xd1, 0x19, 0x49, + 0x01, 0x2f, 0x08, 0x68, 0x07, 0xd1, 0x02, 0x1c, + 0x22, 0x40, 0x0a, 0xd1, 0x20, 0x43, 0x08, 0x60, + 0xa0, 0x42, 0x06, 0xd1, 0x04, 0xe0, 0x00, 0x28, + 0x03, 0xd0, 0xa0, 0x43, 0x08, 0x60, 0x00, 0xd1, + 0x01, 0x25, 0x48, 0x68, 0x00, 0x28, 0x1a, 0xd1, + 0x00, 0x2d, 0x17, 0xd0, 0x01, 0x20, 0x48, 0x60, + 0x3c, 0x00, 0x50, 0x37, 0x00, 0x00, 0x38, 0x1c, + 0x08, 0xf0, 0x89, 0xfe, 0x0b, 0x48, 0x1c, 0x30, + 0x81, 0x69, 0x00, 0x29, 0x07, 0xd0, 0x00, 0x23, + 0x83, 0x61, 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, + 0xff, 0xf7, 0xf1, 0xfe, 0x06, 0xe0, 0x00, 0x22, + 0x00, 0x21, 0x04, 0x48, 0xff, 0xf7, 0x7b, 0xff, + 0x00, 0xe0, 0x01, 0x26, 0x30, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, 0x51, 0x35, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x37, 0x00, 0x00, + 0x03, 0x1c, 0x08, 0x1c, 0x19, 0x1c, 0x12, 0x4b, + 0x80, 0xb5, 0x06, 0xd0, 0x04, 0x21, 0x11, 0x80, + 0x04, 0x22, 0x19, 0x1c, 0xfc, 0xf7, 0xaa, 0xfe, + 0x18, 0xe0, 0x04, 0x22, 0x01, 0x1c, 0x18, 0x1c, + 0xfc, 0xf7, 0xa4, 0xfe, 0x0a, 0x48, 0x10, 0x30, + 0xc1, 0x68, 0x00, 0x29, 0x0e, 0xd0, 0x00, 0x78, + 0x00, 0x28, 0x0b, 0xd0, 0x01, 0xf0, 0x1e, 0xff, + 0x02, 0x28, 0x07, 0xd1, 0x3c, 0x00, 0xc8, 0x37, + 0x00, 0x00, 0x00, 0xf0, 0x64, 0xf8, 0x00, 0xf0, + 0x2e, 0xf8, 0x00, 0x28, 0x01, 0xd1, 0x09, 0xf0, + 0x7a, 0xfd, 0x01, 0x20, 0x80, 0xbd, 0x68, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x0a, 0x4c, 0x20, 0x69, + 0x00, 0x28, 0x09, 0xd0, 0xa1, 0x69, 0x00, 0x29, + 0x06, 0xd1, 0x7d, 0x21, 0xc9, 0x00, 0x41, 0x43, + 0x03, 0x22, 0x07, 0x20, 0x0f, 0xf0, 0xe1, 0xfe, + 0x21, 0x69, 0x01, 0x20, 0x00, 0x29, 0x3c, 0x00, + 0x04, 0x38, 0x00, 0x00, 0x00, 0xd1, 0x00, 0x20, + 0x10, 0xbd, 0x00, 0x00, 0x5c, 0x69, 0x01, 0x00, + 0x10, 0xb5, 0x05, 0x4c, 0x00, 0x28, 0x03, 0xd0, + 0xfd, 0xf7, 0x9a, 0xfc, 0xe0, 0x60, 0x10, 0xbd, + 0x01, 0x20, 0x00, 0x21, 0xe1, 0x60, 0x10, 0xbd, + 0x78, 0x69, 0x01, 0x00, 0x0a, 0x48, 0x0a, 0x49, + 0x10, 0xb5, 0xc0, 0x68, 0x1c, 0x39, 0xc9, 0x68, + 0x00, 0x28, 0x03, 0xd0, 0x00, 0x29, 0x01, 0xd0, + 0x3c, 0x00, 0x40, 0x38, 0x00, 0x00, 0x01, 0x24, + 0x00, 0xe0, 0x00, 0x24, 0x00, 0x2c, 0x03, 0xd0, + 0x02, 0x22, 0x07, 0x20, 0x0f, 0xf0, 0xb7, 0xfe, + 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x4c, 0x00, 0x20, + 0x21, 0x69, 0x00, 0x29, 0x0c, 0xd0, 0x06, 0x49, + 0x1c, 0x31, 0x09, 0x78, 0x00, 0x29, 0x07, 0xd0, + 0x00, 0xf0, 0x09, 0xf8, 0x01, 0x20, 0xa0, 0x61, + 0x20, 0x69, 0x3c, 0x00, 0x7c, 0x38, 0x00, 0x00, + 0x7d, 0x23, 0xdb, 0x00, 0x58, 0x43, 0x10, 0xbd, + 0x5c, 0x69, 0x01, 0x00, 0x80, 0xb5, 0x03, 0x21, + 0x07, 0x20, 0x0f, 0xf0, 0xd1, 0xfe, 0x80, 0xbd, + 0x80, 0xb5, 0x02, 0x21, 0x07, 0x20, 0x0f, 0xf0, + 0xcb, 0xfe, 0x80, 0xbd, 0x06, 0x48, 0x80, 0xb5, + 0x00, 0x78, 0x00, 0x28, 0x01, 0xd0, 0xfd, 0xf7, + 0x29, 0xfd, 0x00, 0x22, 0x07, 0x21, 0x11, 0x20, + 0x0f, 0xf0, 0x7c, 0xff, 0x3c, 0x00, 0xb8, 0x38, + 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x10, 0x1c, + 0x06, 0x4a, 0x51, 0x61, 0x00, 0xf0, 0xa3, 0xf8, + 0x10, 0x20, 0x00, 0x2c, 0x00, 0xd1, 0x11, 0x20, + 0x00, 0x22, 0x07, 0x21, 0x0f, 0xf0, 0x69, 0xff, + 0x10, 0xbd, 0x5c, 0x69, 0x01, 0x00, 0x01, 0x49, + 0x48, 0x62, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x4c, 0x3c, 0x00, + 0xf4, 0x38, 0x00, 0x00, 0xe0, 0x69, 0x00, 0x28, + 0x0c, 0xd1, 0xe0, 0x62, 0x01, 0x20, 0xe0, 0x61, + 0x0b, 0xf0, 0x08, 0xfd, 0x0b, 0xf0, 0x74, 0xfe, + 0x01, 0x20, 0x00, 0xf0, 0xb5, 0xf8, 0x0f, 0xf0, + 0x4d, 0xfa, 0x60, 0x63, 0x10, 0xbd, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x05, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0xc8, 0x61, 0x88, 0x63, 0x00, 0xf0, + 0x89, 0xf8, 0x00, 0xf0, 0x01, 0xf9, 0x02, 0xf0, + 0x3c, 0x00, 0x30, 0x39, 0x00, 0x00, 0x91, 0xfb, + 0x80, 0xbd, 0x44, 0x7d, 0x01, 0x00, 0x10, 0xb5, + 0x01, 0x28, 0x38, 0xd1, 0x08, 0x06, 0x00, 0x0e, + 0x05, 0x28, 0x32, 0xd1, 0x1d, 0x4c, 0x20, 0x78, + 0x01, 0x28, 0x09, 0xd0, 0x02, 0x28, 0x1b, 0xd0, + 0x03, 0x28, 0x2a, 0xd1, 0x02, 0xf0, 0x7d, 0xfb, + 0x00, 0xf0, 0x6f, 0xf8, 0x01, 0x20, 0x10, 0xe0, + 0x17, 0x48, 0x21, 0x6b, 0x0b, 0xf0, 0x1b, 0xfd, + 0x0b, 0xf0, 0x3c, 0x00, 0x6c, 0x39, 0x00, 0x00, + 0x41, 0xfe, 0x15, 0x48, 0x00, 0x69, 0x03, 0x28, + 0x01, 0xd3, 0xc0, 0x07, 0x03, 0xd5, 0x01, 0x21, + 0x20, 0x6b, 0x07, 0xf0, 0x19, 0xff, 0x02, 0x20, + 0x00, 0xf0, 0x78, 0xf8, 0x10, 0xbd, 0x0f, 0x48, + 0x00, 0x68, 0x20, 0x64, 0x0a, 0x48, 0x5c, 0x30, + 0xc1, 0x68, 0x02, 0x69, 0x89, 0x18, 0xc1, 0x60, + 0x03, 0xf0, 0xcc, 0xfc, 0x03, 0x20, 0x00, 0xf0, + 0x69, 0xf8, 0x01, 0x20, 0x3c, 0x00, 0xa8, 0x39, + 0x00, 0x00, 0xe0, 0x62, 0x10, 0xbd, 0x09, 0x21, + 0x00, 0xe0, 0x08, 0x21, 0x09, 0x20, 0xfd, 0xf7, + 0x76, 0xfc, 0x10, 0xbd, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0xf4, 0x68, + 0x01, 0x00, 0x78, 0x6e, 0x01, 0x00, 0xb0, 0xb5, + 0x0f, 0x4c, 0x20, 0x78, 0x65, 0x1e, 0x01, 0x28, + 0x0f, 0xd1, 0x00, 0x20, 0xff, 0xf7, 0xa1, 0xfc, + 0x0c, 0x49, 0x09, 0x88, 0x49, 0x08, 0x3c, 0x00, + 0xe4, 0x39, 0x00, 0x00, 0x40, 0x1a, 0x0f, 0xf0, + 0x19, 0xf9, 0x00, 0x28, 0x04, 0xd0, 0x28, 0x78, + 0x01, 0x28, 0x07, 0xd0, 0x02, 0x28, 0x05, 0xd0, + 0x20, 0x78, 0x00, 0x28, 0x04, 0xd1, 0x28, 0x78, + 0x03, 0x28, 0x01, 0xd1, 0x01, 0x20, 0xb0, 0xbd, + 0x00, 0x20, 0xb0, 0xbd, 0x45, 0x7d, 0x01, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x01, 0x49, 0xc8, 0x64, + 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0x3c, 0x00, 0x20, 0x3a, 0x00, 0x00, 0x04, 0x49, + 0x05, 0x4a, 0x89, 0x68, 0x12, 0x6d, 0x01, 0x20, + 0x91, 0x42, 0x00, 0xd3, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, 0x20, 0x6b, + 0x07, 0xf0, 0xf9, 0xfe, 0xa0, 0x6b, 0x00, 0x28, + 0x03, 0xd1, 0x03, 0x48, 0x21, 0x6b, 0x0b, 0xf0, + 0x92, 0xfc, 0x10, 0xbd, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x3c, 0x00, 0x5c, 0x3a, 0x00, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x04, 0x48, 0x00, 0x78, + 0x02, 0x28, 0x01, 0xd0, 0x03, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x44, 0x7d, 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x1c, + 0xff, 0xf7, 0xd0, 0xff, 0x06, 0x1c, 0x01, 0x2f, + 0x26, 0x4d, 0x1f, 0xd0, 0x02, 0x2f, 0x45, 0xd0, + 0x03, 0x2f, 0x12, 0xd1, 0x24, 0x48, 0x25, 0x4b, + 0x00, 0x69, 0x6a, 0x69, 0x3c, 0x00, 0x98, 0x3a, + 0x00, 0x00, 0x41, 0x08, 0x5a, 0x43, 0x23, 0x4b, + 0xd4, 0x18, 0x8c, 0x42, 0x00, 0xd9, 0x0c, 0x1c, + 0x00, 0x2e, 0x05, 0xd0, 0x1e, 0x49, 0x5b, 0x39, + 0x09, 0x78, 0x00, 0x29, 0x00, 0xd1, 0x04, 0x1c, + 0x05, 0x22, 0x21, 0x1c, 0x09, 0x20, 0x0f, 0xf0, + 0x80, 0xfd, 0x18, 0x4a, 0x5c, 0x3a, 0x17, 0x70, + 0xf8, 0xbd, 0xff, 0xf7, 0xd6, 0xfb, 0x00, 0x28, + 0x02, 0xd0, 0x28, 0x69, 0x00, 0x28, 0x3c, 0x00, + 0xd4, 0x3a, 0x00, 0x00, 0x0e, 0xd0, 0x04, 0xf0, + 0xcf, 0xfb, 0x13, 0x4b, 0x69, 0x69, 0x11, 0x4a, + 0x59, 0x43, 0x5c, 0x3a, 0xd2, 0x6b, 0x89, 0x18, + 0x88, 0x42, 0x01, 0xd9, 0x44, 0x1a, 0x04, 0xe0, + 0x00, 0x24, 0x02, 0xe0, 0x04, 0xf0, 0xae, 0xfd, + 0x04, 0x1c, 0x00, 0x2e, 0xdb, 0xd0, 0x09, 0x48, + 0x5b, 0x38, 0x00, 0x78, 0x01, 0x28, 0xd6, 0xd1, + 0x08, 0x4b, 0x9c, 0x42, 0x02, 0xd9, 0x58, 0x42, + 0x3c, 0x00, 0x10, 0x3b, 0x00, 0x00, 0x24, 0x18, + 0xd0, 0xe7, 0x00, 0x24, 0xce, 0xe7, 0x04, 0xf0, + 0xae, 0xfb, 0xca, 0xe7, 0x00, 0x00, 0xf4, 0x68, + 0x01, 0x00, 0xa0, 0x7d, 0x01, 0x00, 0x98, 0x3a, + 0x00, 0x00, 0x88, 0x13, 0x00, 0x00, 0x80, 0xb5, + 0x05, 0x21, 0x09, 0x20, 0x0f, 0xf0, 0x7d, 0xfd, + 0x02, 0x49, 0x00, 0x20, 0x08, 0x70, 0x80, 0xbd, + 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, 0x70, 0xb5, + 0x06, 0x1c, 0x3c, 0x00, 0x4c, 0x3b, 0x00, 0x00, + 0x0d, 0xf0, 0xbc, 0xfa, 0xff, 0xf7, 0xce, 0xfe, + 0x09, 0x4c, 0x0a, 0x48, 0x21, 0x6b, 0x0b, 0xf0, + 0x21, 0xfc, 0x01, 0x25, 0x01, 0x21, 0x30, 0x06, + 0x00, 0x0e, 0xa5, 0x63, 0x07, 0xf0, 0x3a, 0xfe, + 0x05, 0x48, 0x29, 0x02, 0x09, 0x58, 0x00, 0x29, + 0x00, 0xd1, 0x05, 0x61, 0x70, 0xbd, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x3c, 0x00, 0x88, 0x3b, + 0x00, 0x00, 0x02, 0x4a, 0x11, 0x6c, 0x08, 0x43, + 0x10, 0x64, 0x70, 0x47, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0x80, 0xb5, 0xff, 0xf7, 0xbf, 0xfe, + 0x0b, 0xf0, 0xa1, 0xfb, 0x80, 0xbd, 0x02, 0x4a, + 0x01, 0x1c, 0x10, 0x69, 0x11, 0x61, 0x70, 0x47, + 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, 0xf3, 0xb5, + 0x06, 0x1c, 0x00, 0x20, 0x89, 0xb0, 0xf8, 0x4c, + 0x08, 0x90, 0xe2, 0x69, 0x08, 0x25, 0x3c, 0x00, + 0xc4, 0x3b, 0x00, 0x00, 0x00, 0x2a, 0x03, 0xd0, + 0x06, 0xa9, 0x07, 0xa8, 0xfc, 0xf7, 0x06, 0xfc, + 0x30, 0x1c, 0xf3, 0x4e, 0x00, 0x27, 0x20, 0x36, + 0x82, 0x28, 0x6f, 0xd0, 0x15, 0xdc, 0x01, 0x28, + 0x18, 0xd0, 0x80, 0x28, 0x6b, 0xd1, 0xee, 0x4d, + 0x80, 0x3d, 0xa8, 0x68, 0x01, 0x28, 0x67, 0xd1, + 0x68, 0x68, 0x0f, 0xf0, 0x1b, 0xf8, 0x00, 0x28, + 0x63, 0xd1, 0x01, 0x21, 0x01, 0x20, 0x0d, 0xf0, + 0x3c, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x9d, 0xf8, + 0x08, 0xf0, 0xdb, 0xfd, 0x0b, 0xb0, 0xf0, 0xbd, + 0x83, 0x28, 0x6d, 0xd0, 0x84, 0x28, 0x55, 0xd1, + 0xe7, 0xe0, 0x0a, 0x98, 0x0a, 0x28, 0x04, 0xd2, + 0x03, 0xa3, 0x1b, 0x18, 0x1b, 0x5a, 0x5b, 0x00, + 0x9f, 0x44, 0xf6, 0xe0, 0x00, 0x00, 0xee, 0x00, + 0x0b, 0x00, 0xf7, 0x00, 0xf7, 0x00, 0xf7, 0x00, + 0xf7, 0x00, 0x2f, 0x00, 0x88, 0x00, 0x8b, 0x00, + 0xad, 0x00, 0x3c, 0x00, 0x3c, 0x3c, 0x00, 0x00, + 0x00, 0xf0, 0x56, 0xfe, 0x00, 0x28, 0x17, 0xd0, + 0xd6, 0x4a, 0x80, 0x3a, 0xd1, 0x6a, 0x06, 0x98, + 0x81, 0x42, 0x16, 0xd0, 0x06, 0x21, 0x00, 0x28, + 0x00, 0xd1, 0x07, 0x21, 0x0d, 0x06, 0x2d, 0x0e, + 0x00, 0x28, 0x0e, 0xd0, 0xcf, 0x4a, 0x01, 0x20, + 0x80, 0x3a, 0x50, 0x65, 0x0f, 0xf0, 0xa0, 0xf8, + 0xcc, 0x4a, 0x80, 0x3a, 0x50, 0x66, 0x04, 0xe0, + 0x00, 0x21, 0x16, 0x20, 0x3c, 0x00, 0x78, 0x3c, + 0x00, 0x00, 0x0f, 0xf0, 0xdc, 0xfc, 0x01, 0x25, + 0x02, 0x20, 0x05, 0x90, 0x2e, 0xe2, 0xc6, 0x48, + 0x80, 0x38, 0x40, 0x6d, 0x00, 0x28, 0x2e, 0xd0, + 0xc6, 0x49, 0x20, 0x69, 0xc4, 0x4d, 0x40, 0x18, + 0x0e, 0xf0, 0xc1, 0xff, 0x00, 0x28, 0x12, 0xd0, + 0x0f, 0xf0, 0x85, 0xf8, 0xc1, 0x49, 0x49, 0x42, + 0x40, 0x18, 0xbd, 0x49, 0x20, 0x61, 0x80, 0x39, + 0x48, 0x6e, 0x40, 0x19, 0x0e, 0xf0, 0x3c, 0x00, + 0xb4, 0x3c, 0x00, 0x00, 0xbb, 0xff, 0x00, 0x28, + 0x11, 0xd0, 0x0a, 0xe0, 0xf7, 0xe0, 0x17, 0xe2, + 0xb2, 0xe0, 0xb0, 0xe0, 0xb6, 0x49, 0x20, 0x69, + 0x80, 0x39, 0x49, 0x6e, 0x40, 0x1a, 0xa8, 0x42, + 0x05, 0xdb, 0xb3, 0x49, 0xb5, 0x4d, 0x80, 0x39, + 0x4f, 0x65, 0x03, 0xf0, 0x27, 0xfb, 0x06, 0x22, + 0x29, 0x1c, 0x16, 0x20, 0x0f, 0xf0, 0x72, 0xfc, + 0x47, 0xe0, 0x95, 0xe0, 0x00, 0xf0, 0xfe, 0xfd, + 0x3c, 0x00, 0xf0, 0x3c, 0x00, 0x00, 0x00, 0x28, + 0x42, 0xd1, 0xaa, 0x4d, 0xc4, 0x3d, 0xef, 0x60, + 0x08, 0xf0, 0x19, 0xfd, 0x03, 0xf0, 0x15, 0xfb, + 0xa8, 0x6a, 0x00, 0x28, 0x02, 0xd0, 0xff, 0xf7, + 0x4c, 0xff, 0xaf, 0x62, 0xa4, 0x48, 0x80, 0x38, + 0x00, 0x68, 0x00, 0x21, 0xff, 0xf7, 0xf9, 0xfc, + 0x08, 0xf0, 0x3f, 0xf9, 0x09, 0x21, 0x16, 0x20, + 0x0f, 0xf0, 0x87, 0xfc, 0x00, 0x22, 0x16, 0x21, + 0x83, 0x20, 0x3c, 0x00, 0x2c, 0x3d, 0x00, 0x00, + 0x0f, 0xf0, 0x40, 0xfd, 0xff, 0xf7, 0x86, 0xfc, + 0x21, 0xe0, 0x00, 0xf0, 0x1b, 0xfe, 0x1e, 0xe0, + 0x06, 0xf0, 0x54, 0xfa, 0x97, 0x4d, 0x80, 0x3d, + 0xa9, 0x6f, 0x40, 0x1a, 0x04, 0x90, 0x06, 0x98, + 0x00, 0x28, 0x01, 0xd0, 0xaf, 0x65, 0x02, 0xe0, + 0xa8, 0x6d, 0x00, 0x28, 0x08, 0xd1, 0x91, 0x48, + 0xc4, 0x38, 0x00, 0x78, 0x80, 0x07, 0x03, 0xd5, + 0x92, 0x48, 0x47, 0x60, 0x3c, 0x00, 0x68, 0x3d, + 0x00, 0x00, 0x00, 0xf0, 0x02, 0xfe, 0x04, 0x98, + 0xff, 0x38, 0x23, 0x38, 0x14, 0x28, 0x02, 0xd2, + 0x01, 0x20, 0xe8, 0x63, 0x53, 0xe0, 0xef, 0x63, + 0x51, 0xe0, 0x87, 0x4a, 0xb5, 0x7a, 0x80, 0x3a, + 0x00, 0x2d, 0x4c, 0xd0, 0x0d, 0xf0, 0x71, 0xff, + 0x00, 0xf0, 0xad, 0xfd, 0x07, 0x1c, 0x82, 0x48, + 0x80, 0x38, 0x40, 0x6f, 0xff, 0x30, 0x5f, 0x30, + 0x0e, 0xf0, 0x3d, 0xff, 0x02, 0x1c, 0x3c, 0x00, + 0xa4, 0x3d, 0x00, 0x00, 0x7e, 0x48, 0x80, 0x38, + 0x40, 0x6d, 0x00, 0x28, 0x1a, 0xd1, 0x00, 0xf0, + 0xf1, 0xfd, 0x00, 0x28, 0x16, 0xd1, 0x04, 0x2d, + 0x02, 0xd1, 0x00, 0x2f, 0x12, 0xd1, 0x1b, 0xe0, + 0x00, 0x2f, 0x06, 0xd0, 0x02, 0x2d, 0x14, 0xd0, + 0x79, 0x48, 0x40, 0x68, 0x00, 0x28, 0x09, 0xd0, + 0x12, 0xe0, 0x00, 0x2a, 0x10, 0xd1, 0x4b, 0x21, + 0xc9, 0x00, 0x01, 0x23, 0x09, 0x22, 0x16, 0x20, + 0x3c, 0x00, 0xe0, 0x3d, 0x00, 0x00, 0x0f, 0xf0, + 0xd6, 0xfc, 0x6e, 0x4a, 0x73, 0x48, 0x80, 0x3a, + 0x11, 0x68, 0x0b, 0xf0, 0xd8, 0xfa, 0x18, 0xe0, + 0x01, 0x21, 0x00, 0x20, 0x01, 0xe0, 0x01, 0x21, + 0x01, 0x20, 0x00, 0xf0, 0x2a, 0xfe, 0x10, 0xe0, + 0x67, 0x4a, 0x6c, 0x49, 0x80, 0x3a, 0x90, 0x6e, + 0x40, 0x18, 0x90, 0x66, 0x01, 0x25, 0x08, 0x95, + 0x8b, 0xe1, 0x04, 0x21, 0x6c, 0xe1, 0x61, 0x4a, + 0x66, 0x48, 0x3c, 0x00, 0x1c, 0x3e, 0x00, 0x00, + 0x80, 0x3a, 0x11, 0x68, 0x0b, 0xf0, 0xaa, 0xfa, + 0x88, 0xe1, 0xaf, 0x60, 0xa8, 0x6f, 0xe8, 0x67, + 0x63, 0x48, 0x01, 0x6d, 0xa9, 0x67, 0x07, 0x9a, + 0x14, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x08, 0x18, 0x12, 0x30, 0xa8, 0x66, 0x70, 0x78, + 0xb0, 0x70, 0x30, 0x78, 0x70, 0x70, 0x02, 0x20, + 0x30, 0x70, 0xa0, 0x69, 0xfc, 0xf7, 0xc2, 0xfa, + 0xef, 0x64, 0xa8, 0x6f, 0x3c, 0x00, 0x58, 0x3e, + 0x00, 0x00, 0xe9, 0x6f, 0x59, 0x4b, 0x40, 0x1a, + 0x98, 0x42, 0x12, 0xd2, 0x68, 0x6d, 0x06, 0x99, + 0x88, 0x42, 0x0e, 0xd0, 0x30, 0x78, 0x02, 0x28, + 0x0b, 0xd8, 0x0e, 0xf0, 0x9c, 0xff, 0xa9, 0x6f, + 0x08, 0x22, 0x40, 0x1a, 0x52, 0x49, 0x09, 0x1a, + 0x3b, 0x1c, 0x16, 0x20, 0x0f, 0xf0, 0x85, 0xfc, + 0x00, 0xe0, 0xaf, 0x65, 0x01, 0x20, 0x05, 0x90, + 0x08, 0x90, 0x43, 0x48, 0x02, 0x25, 0x3c, 0x00, + 0x94, 0x3e, 0x00, 0x00, 0xc4, 0x38, 0xc1, 0x68, + 0x00, 0x29, 0x72, 0xd1, 0x01, 0x21, 0xc1, 0x60, + 0x49, 0x48, 0x00, 0x6b, 0x00, 0x28, 0x6c, 0xd0, + 0x08, 0xf0, 0x66, 0xfc, 0x69, 0xe0, 0x3c, 0x48, + 0x00, 0x22, 0x01, 0x92, 0x80, 0x38, 0x80, 0x68, + 0x01, 0x28, 0x04, 0xd1, 0x38, 0x48, 0x80, 0x38, + 0x87, 0x60, 0x01, 0x20, 0x48, 0xe1, 0x3a, 0x48, + 0x01, 0x23, 0x43, 0x60, 0x34, 0x48, 0xc4, 0x38, + 0x3c, 0x00, 0xd0, 0x3e, 0x00, 0x00, 0x00, 0x78, + 0x00, 0x28, 0x0a, 0xd1, 0x00, 0xf0, 0x25, 0xfe, + 0x00, 0x28, 0x06, 0xd0, 0xff, 0x21, 0x91, 0x31, + 0x01, 0x23, 0x09, 0x22, 0x16, 0x20, 0x0f, 0xf0, + 0x52, 0xfc, 0x2c, 0x49, 0x80, 0x39, 0x48, 0x6f, + 0x89, 0x6f, 0x42, 0x1a, 0x03, 0x92, 0x06, 0xf0, + 0x76, 0xf9, 0x28, 0x49, 0x80, 0x39, 0x89, 0x6f, + 0x03, 0x9a, 0x40, 0x1a, 0x02, 0x90, 0x37, 0x20, + 0x00, 0x01, 0x3c, 0x00, 0x0c, 0x3f, 0x00, 0x00, + 0x10, 0x1a, 0x50, 0x28, 0x0d, 0xd2, 0x23, 0x48, + 0x80, 0x38, 0x40, 0x6d, 0x00, 0x28, 0x04, 0xd1, + 0x02, 0x98, 0xff, 0x38, 0x55, 0x38, 0x14, 0x28, + 0x01, 0xd2, 0x01, 0x22, 0x00, 0xe0, 0x00, 0x22, + 0x01, 0x92, 0x03, 0x9a, 0x01, 0x20, 0xff, 0x3a, + 0x0b, 0x3a, 0x50, 0x2a, 0x00, 0xd3, 0x00, 0x20, + 0x04, 0x90, 0x00, 0x28, 0x0a, 0xd0, 0x17, 0x48, + 0x80, 0x38, 0xc0, 0x6f, 0x3c, 0x00, 0x48, 0x3f, + 0x00, 0x00, 0x08, 0x1a, 0x9b, 0x21, 0xc9, 0x00, + 0x40, 0x1a, 0x14, 0x28, 0x01, 0xd2, 0x01, 0x22, + 0x00, 0xe0, 0x00, 0x22, 0x00, 0x92, 0x00, 0x2a, + 0x11, 0xd0, 0x0f, 0x4d, 0x01, 0x20, 0x80, 0x3d, + 0x68, 0x65, 0x0e, 0xf0, 0x20, 0xff, 0x68, 0x66, + 0x01, 0x25, 0x01, 0x21, 0x16, 0x20, 0x0f, 0xf0, + 0x5e, 0xfb, 0x00, 0x21, 0x16, 0x20, 0x0f, 0xf0, + 0x5a, 0xfb, 0x00, 0xe0, 0xba, 0xe0, 0x3c, 0x00, + 0x84, 0x3f, 0x00, 0x00, 0xf0, 0x79, 0x02, 0x28, + 0x3c, 0xd8, 0x05, 0x4a, 0x80, 0x3a, 0x51, 0x6c, + 0x00, 0x29, 0x37, 0xd1, 0x13, 0x6c, 0x11, 0x1c, + 0x00, 0x2b, 0x33, 0xd1, 0x16, 0xe0, 0x00, 0x00, + 0x24, 0x6d, 0x01, 0x00, 0x50, 0xc3, 0x00, 0x00, + 0xc0, 0x5c, 0x15, 0x00, 0x70, 0x99, 0x14, 0x00, + 0xb0, 0x57, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xe2, 0x04, 0x00, 0x00, 0x00, 0x90, 0x07, 0x00, + 0x3c, 0x00, 0xc0, 0x3f, 0x00, 0x00, 0x53, 0x07, + 0x00, 0x00, 0x1e, 0x02, 0x00, 0x00, 0xc8, 0x57, + 0x01, 0x00, 0x4a, 0x6d, 0x00, 0x2a, 0x02, 0xd0, + 0xb2, 0x7a, 0x02, 0x2a, 0x15, 0xd1, 0x00, 0x9a, + 0x00, 0x2a, 0x03, 0xd0, 0xca, 0x6d, 0x01, 0x32, + 0xca, 0x65, 0x00, 0xe0, 0xcf, 0x65, 0x01, 0x9a, + 0x00, 0x2a, 0x0b, 0xd0, 0x8a, 0x6f, 0xcb, 0x6f, + 0xd2, 0x1a, 0x5a, 0x4b, 0x9a, 0x42, 0x02, 0xd2, + 0x8a, 0x6d, 0x3c, 0x00, 0xfc, 0x3f, 0x00, 0x00, + 0x01, 0x32, 0x00, 0xe0, 0x01, 0x22, 0x8a, 0x65, + 0x00, 0xe0, 0x8f, 0x65, 0x04, 0x99, 0x00, 0x29, + 0x01, 0xd1, 0x02, 0x28, 0x0b, 0xd9, 0x54, 0x4a, + 0x02, 0x28, 0x1e, 0xd9, 0xd0, 0x6f, 0x61, 0x68, + 0x88, 0x42, 0x1a, 0xd1, 0x91, 0x6f, 0x08, 0x1a, + 0x50, 0x49, 0x88, 0x42, 0x15, 0xdd, 0x4e, 0x4b, + 0x98, 0x6f, 0xe1, 0x68, 0x40, 0x1a, 0x7d, 0x21, + 0xc9, 0x00, 0x88, 0x42, 0x3c, 0x00, 0x38, 0x40, + 0x00, 0x00, 0x0b, 0xdd, 0x61, 0x69, 0x40, 0x1a, + 0x00, 0x28, 0x04, 0xdd, 0x02, 0x11, 0x40, 0x11, + 0x10, 0x18, 0x40, 0x18, 0x01, 0xe0, 0x80, 0x10, + 0x08, 0x18, 0x60, 0x61, 0x58, 0x6f, 0xe0, 0x60, + 0x03, 0x98, 0xff, 0x38, 0x23, 0x38, 0x14, 0x28, + 0x09, 0xd2, 0x02, 0x98, 0xff, 0x38, 0x23, 0x38, + 0x14, 0x28, 0x04, 0xd2, 0x3e, 0x4a, 0x90, 0x6f, + 0x50, 0x64, 0x90, 0x6a, 0x90, 0x64, 0x3c, 0x00, + 0x74, 0x40, 0x00, 0x00, 0x0e, 0xf0, 0x9a, 0xfe, + 0x3a, 0x49, 0x49, 0x6c, 0x40, 0x1a, 0x3b, 0x49, + 0x88, 0x42, 0x01, 0xd9, 0x37, 0x49, 0x4f, 0x64, + 0x39, 0x49, 0x03, 0x98, 0x40, 0x18, 0x14, 0x28, + 0x07, 0xd2, 0x34, 0x49, 0xc8, 0x6b, 0x00, 0x28, + 0x03, 0xd0, 0x88, 0x6f, 0x08, 0x64, 0x88, 0x6a, + 0x88, 0x64, 0x0e, 0xf0, 0x83, 0xfe, 0x2f, 0x49, + 0x09, 0x6c, 0x40, 0x1a, 0x31, 0x49, 0x88, 0x42, + 0x3c, 0x00, 0xb0, 0x40, 0x00, 0x00, 0x01, 0xd9, + 0x2c, 0x48, 0x07, 0x64, 0x04, 0x20, 0x05, 0x90, + 0x08, 0x21, 0x16, 0x20, 0x0f, 0xf0, 0xb9, 0xfa, + 0x28, 0x48, 0x40, 0x6d, 0x00, 0x28, 0x02, 0xd0, + 0x04, 0x99, 0x00, 0x29, 0x08, 0xd0, 0x29, 0x49, + 0x00, 0x28, 0x00, 0xd1, 0x29, 0x49, 0x3b, 0x1c, + 0x06, 0x22, 0x16, 0x20, 0x0f, 0xf0, 0x57, 0xfb, + 0x02, 0x2d, 0x09, 0xd0, 0x06, 0x2d, 0x0a, 0xd0, + 0x07, 0x2d, 0x3c, 0x00, 0xec, 0x40, 0x00, 0x00, + 0x13, 0xd1, 0x07, 0xe0, 0x01, 0x21, 0x16, 0x20, + 0xfd, 0xf7, 0xd6, 0xf8, 0x1e, 0xe0, 0x1a, 0x4a, + 0x57, 0x63, 0x97, 0x63, 0x18, 0x4a, 0x06, 0x98, + 0xd0, 0x62, 0x07, 0x99, 0x11, 0x63, 0x53, 0x6b, + 0x18, 0x43, 0x50, 0x63, 0x90, 0x6b, 0x08, 0x43, + 0x90, 0x63, 0x05, 0x98, 0x00, 0x28, 0x05, 0xd0, + 0x05, 0x98, 0x0c, 0xf0, 0x5f, 0xfa, 0x05, 0x98, + 0x0c, 0xf0, 0xd2, 0xf9, 0x3c, 0x00, 0x28, 0x41, + 0x00, 0x00, 0x08, 0x2d, 0x05, 0xd0, 0x0d, 0x48, + 0x44, 0x38, 0x85, 0x70, 0x28, 0x1c, 0x03, 0xf0, + 0xdc, 0xfd, 0x11, 0x49, 0xe0, 0x69, 0x88, 0x42, + 0x00, 0xd1, 0x61, 0xe5, 0x08, 0x98, 0x00, 0x28, + 0xfb, 0xd0, 0xb0, 0x7a, 0x02, 0x28, 0xf8, 0xd1, + 0x01, 0x21, 0x16, 0x20, 0x0f, 0xf0, 0x6f, 0xfa, + 0x02, 0x20, 0x0d, 0xf0, 0xe8, 0xfe, 0x53, 0xe5, + 0x00, 0x00, 0x53, 0x07, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x41, 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x20, 0xa1, 0x07, 0x00, 0x20, 0x4e, 0x00, 0x00, + 0x3f, 0xfb, 0xff, 0xff, 0xa0, 0x86, 0x01, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0xc0, 0x5c, 0x15, 0x00, + 0xf1, 0x1d, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xf8, 0xb5, 0x21, 0x48, + 0x00, 0x68, 0x21, 0x4d, 0x69, 0x69, 0x08, 0x40, + 0x01, 0xd1, 0x01, 0x27, 0x00, 0xe0, 0x00, 0x27, + 0x3c, 0x00, 0xa0, 0x41, 0x00, 0x00, 0x1d, 0x4d, + 0x01, 0x26, 0x69, 0x6a, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x26, 0x1b, 0x4d, 0x1a, 0x48, 0x2c, 0x1c, + 0xa0, 0x30, 0x02, 0x7a, 0x28, 0x1c, 0x40, 0x30, + 0x80, 0x34, 0x10, 0x23, 0xb7, 0x42, 0x10, 0xd1, + 0x01, 0x25, 0xc5, 0x80, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x23, 0x1a, 0x43, 0x11, 0x1c, 0x01, 0x73, + 0x01, 0x20, 0x0e, 0xf0, 0x88, 0xfe, 0x08, 0x20, + 0x20, 0x70, 0x3c, 0x00, 0xdc, 0x41, 0x00, 0x00, + 0x00, 0x22, 0x16, 0x21, 0x80, 0x20, 0x13, 0xe0, + 0x11, 0x27, 0xc7, 0x80, 0x2e, 0x1c, 0x0b, 0x4d, + 0x00, 0x29, 0x00, 0xd1, 0x00, 0x23, 0x1a, 0x43, + 0x11, 0x1c, 0x01, 0x73, 0x01, 0x20, 0x0e, 0xf0, + 0x75, 0xfe, 0x08, 0x20, 0x20, 0x70, 0x30, 0x6d, + 0x00, 0x22, 0x16, 0x21, 0x68, 0x67, 0x82, 0x20, + 0x0f, 0xf0, 0xd0, 0xfa, 0xf8, 0xbd, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0x3c, 0x00, 0x18, 0x42, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x00, 0x90, + 0x07, 0x00, 0xb0, 0xb5, 0x0f, 0x4d, 0x04, 0x1c, + 0xaa, 0x7a, 0x01, 0x21, 0x08, 0x1c, 0x00, 0x2a, + 0x00, 0xd0, 0x00, 0x20, 0x00, 0x2c, 0x00, 0xd0, + 0x00, 0x21, 0x88, 0x42, 0x0a, 0xd0, 0x00, 0x2c, + 0x04, 0xd1, 0x00, 0xf0, 0x42, 0xfb, 0x00, 0xf0, + 0xd6, 0xfa, 0x03, 0xe0, 0x00, 0xf0, 0xd9, 0xfa, + 0x00, 0xf0, 0x09, 0xf8, 0xa8, 0x7a, 0x3c, 0x00, + 0x54, 0x42, 0x00, 0x00, 0x02, 0x49, 0xe4, 0x39, + 0x48, 0x71, 0xac, 0x72, 0xb0, 0xbd, 0x00, 0x00, + 0x44, 0x6d, 0x01, 0x00, 0x80, 0xb5, 0x3e, 0xf0, + 0x55, 0xf8, 0x02, 0x49, 0x01, 0x20, 0x08, 0x70, + 0x80, 0xbd, 0x00, 0x00, 0x68, 0x7e, 0x01, 0x00, + 0xf3, 0xb5, 0x01, 0x20, 0x8d, 0xb0, 0x0f, 0x1c, + 0x01, 0x24, 0x08, 0x90, 0x0e, 0xf0, 0x92, 0xfd, + 0x06, 0x1c, 0x00, 0xf0, 0xb5, 0xfa, 0x09, 0x90, + 0x3c, 0x00, 0x90, 0x42, 0x00, 0x00, 0x00, 0xf0, + 0x80, 0xfb, 0x07, 0x90, 0xfe, 0xf7, 0x3f, 0xfa, + 0x05, 0x1c, 0x00, 0x21, 0x0c, 0x91, 0x08, 0xf0, + 0xf0, 0xfb, 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x0a, 0x90, 0xfe, 0xf7, + 0x12, 0xfd, 0x05, 0xf0, 0xe0, 0xfe, 0x0b, 0x90, + 0x00, 0x2d, 0x23, 0xd0, 0x28, 0x88, 0x41, 0x07, + 0x20, 0xd4, 0x29, 0x1d, 0x04, 0x91, 0x0a, 0x35, + 0x00, 0x06, 0x3c, 0x00, 0xcc, 0x42, 0x00, 0x00, + 0x80, 0x0e, 0x01, 0x21, 0x20, 0x28, 0x03, 0x95, + 0x00, 0xd0, 0x00, 0x21, 0x0d, 0x1c, 0x04, 0x98, + 0x06, 0xf0, 0x38, 0xfd, 0x0c, 0x90, 0x04, 0x98, + 0x06, 0xf0, 0x10, 0xfd, 0x00, 0x28, 0x08, 0xd0, + 0x03, 0x98, 0x01, 0xf0, 0x87, 0xfa, 0x00, 0x28, + 0x03, 0xd0, 0x00, 0x2d, 0x01, 0xd1, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x0c, 0x99, 0x01, 0x43, + 0x0c, 0x91, 0xfc, 0xf7, 0x3c, 0x00, 0x08, 0x43, + 0x00, 0x00, 0x23, 0xff, 0x00, 0x28, 0x2f, 0xd0, + 0x07, 0xf0, 0x99, 0xff, 0x05, 0x1c, 0x07, 0xf0, + 0xb2, 0xff, 0x04, 0x90, 0xff, 0xf7, 0xf3, 0xf8, + 0x0c, 0x99, 0x01, 0x43, 0x00, 0x2d, 0x06, 0xd0, + 0x04, 0x98, 0xf0, 0x4a, 0x30, 0x1a, 0x90, 0x42, + 0x01, 0xd2, 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0x08, 0x43, 0x0c, 0x90, 0x0b, 0x98, 0x0a, 0x9b, + 0x18, 0x43, 0x01, 0x1c, 0x0b, 0x91, 0x3c, 0x00, + 0x44, 0x43, 0x00, 0x00, 0x05, 0xf0, 0xce, 0xfe, + 0x00, 0x28, 0x1a, 0xd1, 0x00, 0x2d, 0x06, 0xd0, + 0x04, 0x98, 0xe7, 0x49, 0x30, 0x1a, 0x88, 0x42, + 0x01, 0xd2, 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0x0c, 0x99, 0x08, 0x43, 0x05, 0x1c, 0x00, 0xf0, + 0x1f, 0xfb, 0x28, 0x43, 0x03, 0xe0, 0x00, 0xf0, + 0x1b, 0xfb, 0x0c, 0x99, 0x08, 0x43, 0x0c, 0x90, + 0x00, 0xf0, 0xd4, 0xfb, 0x0b, 0x99, 0x01, 0x43, + 0x3c, 0x00, 0x80, 0x43, 0x00, 0x00, 0x0b, 0x91, + 0xdc, 0x49, 0xc8, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0x01, 0x38, 0xc8, 0x60, 0x08, 0xf0, 0xe7, 0xfb, + 0x06, 0x90, 0x08, 0xf0, 0x90, 0xfd, 0x31, 0x1a, + 0x05, 0x91, 0x06, 0x99, 0xd6, 0x48, 0x81, 0x42, + 0x08, 0xd8, 0x00, 0x2f, 0x08, 0xd1, 0x05, 0x99, + 0x40, 0x08, 0x81, 0x42, 0x04, 0xd9, 0x06, 0x99, + 0x81, 0x42, 0x01, 0xd9, 0x00, 0x24, 0x8b, 0xe0, + 0xd0, 0x48, 0x3c, 0x00, 0xbc, 0x43, 0x00, 0x00, + 0x05, 0x99, 0xd0, 0x4d, 0x81, 0x42, 0x26, 0xd2, + 0xe8, 0x79, 0x10, 0x28, 0x06, 0xd2, 0x00, 0x2f, + 0x21, 0xd1, 0xcc, 0x48, 0xa0, 0x38, 0x80, 0x6a, + 0x00, 0x28, 0x1c, 0xd1, 0x09, 0xf0, 0x62, 0xff, + 0x04, 0x90, 0x00, 0x28, 0x02, 0xd1, 0x00, 0x20, + 0xc3, 0x49, 0x13, 0xe0, 0x09, 0xf0, 0x10, 0xfe, + 0x00, 0x28, 0x03, 0xd0, 0xc4, 0x48, 0xc0, 0x69, + 0x00, 0x28, 0xf4, 0xd0, 0x3c, 0x00, 0xf8, 0x43, + 0x00, 0x00, 0x04, 0x98, 0x05, 0x28, 0x03, 0xd0, + 0xc1, 0x48, 0x00, 0x6a, 0x00, 0x28, 0x65, 0xd1, + 0xbb, 0x49, 0x48, 0x6a, 0x00, 0x28, 0x23, 0xd0, + 0x01, 0x38, 0x48, 0x62, 0x00, 0xf0, 0x87, 0xff, + 0x00, 0x28, 0x11, 0xd0, 0xbb, 0x48, 0x05, 0x99, + 0x81, 0x42, 0x0d, 0xd2, 0x01, 0xf0, 0x9b, 0xf8, + 0x04, 0x30, 0x0d, 0xf0, 0xee, 0xfc, 0x40, 0x30, + 0xc1, 0x7a, 0x01, 0x29, 0x4e, 0xd0, 0x3c, 0x00, + 0x34, 0x44, 0x00, 0x00, 0x80, 0x7a, 0x00, 0x28, + 0x01, 0xd0, 0x05, 0x28, 0x49, 0xd3, 0x01, 0xf0, + 0xdf, 0xf8, 0x02, 0x28, 0x10, 0xd0, 0x00, 0x2f, + 0x02, 0xd1, 0x06, 0x98, 0x00, 0x28, 0x40, 0xd1, + 0x00, 0x20, 0x08, 0x90, 0x82, 0xe1, 0xaa, 0x48, + 0xa0, 0x38, 0xc0, 0x68, 0x00, 0x28, 0x38, 0xd0, + 0xa8, 0x48, 0x80, 0x69, 0x48, 0x62, 0x34, 0xe0, + 0x0a, 0xa9, 0x03, 0xc9, 0x08, 0x43, 0x45, 0xd0, + 0x3c, 0x00, 0x70, 0x44, 0x00, 0x00, 0xa3, 0x48, + 0x29, 0x78, 0xa0, 0x38, 0x02, 0x29, 0x40, 0xd8, + 0x40, 0x6d, 0x00, 0x28, 0x0a, 0xd0, 0x9f, 0x48, + 0xa2, 0x49, 0x20, 0x38, 0xc0, 0x68, 0x40, 0x18, + 0x0e, 0xf0, 0xc7, 0xfb, 0x00, 0x28, 0x01, 0xd0, + 0x01, 0x21, 0x00, 0xe0, 0x00, 0x21, 0x96, 0x4a, + 0x90, 0x6a, 0x00, 0x28, 0x02, 0xda, 0x64, 0x08, + 0x64, 0x00, 0x2a, 0xe0, 0x00, 0x29, 0x09, 0xd1, + 0x95, 0x4b, 0x3c, 0x00, 0xac, 0x44, 0x00, 0x00, + 0xa0, 0x3b, 0x5b, 0x6d, 0x00, 0x2b, 0x02, 0xd0, + 0x05, 0x28, 0x0d, 0xdb, 0x01, 0xe0, 0x07, 0x28, + 0x0a, 0xdb, 0x01, 0x20, 0xc0, 0x43, 0x90, 0x62, + 0x64, 0x08, 0x8e, 0x49, 0x64, 0x00, 0x00, 0x20, + 0xa0, 0x39, 0x88, 0x65, 0x14, 0xe0, 0xd1, 0xe0, + 0x39, 0x43, 0x11, 0xd1, 0x89, 0x49, 0xa0, 0x39, + 0xcb, 0x6d, 0x00, 0x2b, 0x02, 0xd1, 0x89, 0x6d, + 0x01, 0x29, 0x09, 0xd9, 0x3c, 0x00, 0xe8, 0x44, + 0x00, 0x00, 0x07, 0x9b, 0x00, 0x2b, 0x01, 0xd1, + 0x07, 0x28, 0x01, 0xdb, 0x64, 0x08, 0x64, 0x00, + 0x01, 0x30, 0x90, 0x62, 0xbd, 0xe0, 0x7d, 0x49, + 0x88, 0x69, 0x04, 0x90, 0x00, 0x20, 0x88, 0x61, + 0x0c, 0x98, 0x00, 0x28, 0x2c, 0xd0, 0x07, 0xf0, + 0x66, 0xfc, 0x00, 0x28, 0x02, 0xd0, 0x02, 0x20, + 0x04, 0x43, 0x25, 0xe0, 0x7a, 0x48, 0xc0, 0x6a, + 0x00, 0x28, 0x04, 0xd1, 0x77, 0x48, 0x3c, 0x00, + 0x24, 0x45, 0x00, 0x00, 0xa0, 0x38, 0xc0, 0x68, + 0x00, 0x28, 0x1c, 0xd1, 0x04, 0x98, 0x00, 0x28, + 0x0d, 0xd1, 0x28, 0x78, 0x10, 0x28, 0x02, 0xd3, + 0xe8, 0x78, 0x02, 0x28, 0x02, 0xd9, 0x28, 0x79, + 0x10, 0x28, 0x04, 0xd3, 0x04, 0x24, 0x6b, 0x49, + 0x01, 0x22, 0x8a, 0x61, 0x94, 0xe0, 0x6c, 0x48, + 0xa0, 0x38, 0x40, 0x6d, 0x00, 0x28, 0x71, 0xd0, + 0x05, 0xf0, 0xa2, 0xfd, 0x00, 0x28, 0x6d, 0xd0, + 0x3c, 0x00, 0x60, 0x45, 0x00, 0x00, 0x64, 0x08, + 0x64, 0x00, 0x88, 0xe0, 0xff, 0xf7, 0x5b, 0xfa, + 0x00, 0x28, 0x1a, 0xd0, 0x68, 0x48, 0x00, 0x78, + 0x02, 0x28, 0x01, 0xd1, 0x00, 0x2f, 0x14, 0xd1, + 0x00, 0x20, 0xfe, 0xf7, 0x70, 0xfe, 0x30, 0x1a, + 0x04, 0x90, 0xff, 0xf7, 0x6c, 0xfa, 0x00, 0x28, + 0x07, 0xd0, 0xff, 0xf7, 0x1e, 0xfa, 0x00, 0x28, + 0x03, 0xd0, 0x5d, 0x49, 0x04, 0x98, 0x88, 0x42, + 0x4f, 0xd3, 0x3c, 0x00, 0x9c, 0x45, 0x00, 0x00, + 0x05, 0xf0, 0x6c, 0xfd, 0x00, 0x28, 0x4b, 0xd1, + 0x53, 0x49, 0x08, 0x78, 0x03, 0x28, 0x08, 0xd1, + 0x88, 0x68, 0x01, 0x22, 0xd2, 0x07, 0x30, 0x1a, + 0x90, 0x42, 0x41, 0xd2, 0x01, 0x22, 0x0a, 0x70, + 0x57, 0xe0, 0x54, 0x48, 0x00, 0x78, 0x02, 0x28, + 0x01, 0xd1, 0x00, 0x2f, 0x51, 0xd1, 0x4a, 0x49, + 0x88, 0x68, 0x51, 0x49, 0x80, 0x1b, 0x88, 0x42, + 0x07, 0xd9, 0x01, 0x20, 0x3c, 0x00, 0xd8, 0x45, + 0x00, 0x00, 0xfe, 0xf7, 0x42, 0xfe, 0x7d, 0x21, + 0x09, 0x01, 0x40, 0x18, 0x44, 0x49, 0x88, 0x60, + 0x4a, 0x48, 0x00, 0x78, 0x02, 0x28, 0x04, 0xd1, + 0x07, 0x9b, 0x00, 0x2b, 0x01, 0xd1, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x47, 0x4b, 0x47, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x3c, 0x49, 0x89, 0x68, + 0x89, 0x1b, 0x88, 0x42, 0x30, 0xd9, 0x07, 0x9b, + 0x00, 0x20, 0x03, 0x93, 0x00, 0xf0, 0x3c, 0x00, + 0x14, 0x46, 0x00, 0x00, 0x79, 0xff, 0x02, 0x90, + 0xff, 0xf7, 0xd8, 0xf9, 0x04, 0x90, 0x01, 0xf0, + 0x57, 0xf8, 0x04, 0x99, 0x02, 0x9a, 0x51, 0x43, + 0x48, 0x43, 0x01, 0x90, 0x00, 0xf0, 0xdc, 0xff, + 0x41, 0x1c, 0x01, 0x98, 0x01, 0x22, 0x48, 0x43, + 0x11, 0x1c, 0x00, 0xe0, 0x1b, 0xe0, 0x31, 0x4b, + 0x5b, 0x6a, 0x83, 0x42, 0x00, 0xd3, 0x00, 0x21, + 0x03, 0x9b, 0x01, 0x22, 0x00, 0x2b, 0x00, 0xd0, + 0x3c, 0x00, 0x50, 0x46, 0x00, 0x00, 0x00, 0x22, + 0x2c, 0x4b, 0x51, 0x43, 0x9b, 0x6a, 0x01, 0x22, + 0x83, 0x42, 0x00, 0xd3, 0x00, 0x22, 0x50, 0x00, + 0x08, 0x18, 0x03, 0xd0, 0x23, 0x49, 0x03, 0x20, + 0x08, 0x70, 0x03, 0xe0, 0x09, 0x98, 0xc0, 0x68, + 0x06, 0x28, 0x08, 0xd9, 0x02, 0x24, 0x08, 0x98, + 0x00, 0x28, 0x6e, 0xd0, 0x1d, 0x49, 0x00, 0x20, + 0xc8, 0x61, 0x48, 0x61, 0xa5, 0xe0, 0x1a, 0x49, + 0x48, 0x69, 0x3c, 0x00, 0x8c, 0x46, 0x00, 0x00, + 0x00, 0x28, 0x0a, 0xd1, 0x00, 0x2f, 0x05, 0xd0, + 0x01, 0x22, 0x4a, 0x61, 0xc8, 0x69, 0x80, 0x18, + 0xc8, 0x61, 0x0a, 0xe0, 0x00, 0x20, 0xc8, 0x61, + 0x03, 0xe0, 0x00, 0x2f, 0x05, 0xd1, 0x00, 0x20, + 0x48, 0x61, 0x0d, 0x98, 0x00, 0x28, 0x00, 0xd1, + 0xc8, 0x68, 0x00, 0x20, 0x08, 0x90, 0x08, 0x78, + 0x01, 0x28, 0x2f, 0xd0, 0x02, 0x28, 0x4b, 0xd1, + 0x00, 0x2f, 0x08, 0xd1, 0x3c, 0x00, 0xc8, 0x46, + 0x00, 0x00, 0xe8, 0x78, 0x00, 0x28, 0x02, 0xd1, + 0x28, 0x78, 0x10, 0x28, 0x43, 0xd2, 0x28, 0x79, + 0x10, 0x28, 0x40, 0xd2, 0x48, 0x68, 0x0a, 0x69, + 0x30, 0x1a, 0x90, 0x42, 0x67, 0xd3, 0x01, 0x22, + 0x0a, 0x70, 0x38, 0xe0, 0x00, 0x00, 0xe2, 0x04, + 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x68, 0x7e, + 0x01, 0x00, 0xa0, 0x86, 0x01, 0x00, 0x88, 0x13, + 0x00, 0x00, 0x44, 0x6d, 0x01, 0x00, 0x3c, 0x00, + 0x04, 0x47, 0x00, 0x00, 0xc8, 0x57, 0x01, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0x98, 0x3a, 0x00, 0x00, + 0xc0, 0x57, 0x01, 0x00, 0x40, 0x0d, 0x03, 0x00, + 0xc4, 0x09, 0x00, 0x00, 0xb2, 0x0c, 0x00, 0x00, + 0x00, 0x20, 0x0b, 0x9a, 0x0a, 0x9b, 0xc0, 0x43, + 0x1a, 0x43, 0x37, 0xd0, 0x00, 0x2f, 0x35, 0xd1, + 0x07, 0x9b, 0x00, 0x2b, 0x08, 0xd0, 0x6a, 0x78, + 0x02, 0x2a, 0x2f, 0xd9, 0x2a, 0x78, 0x10, 0x2a, + 0x3c, 0x00, 0x40, 0x47, 0x00, 0x00, 0x2c, 0xd2, + 0x2a, 0x79, 0x10, 0x2a, 0x29, 0xd2, 0x25, 0x4b, + 0x1a, 0x6c, 0x00, 0x2a, 0x06, 0xd0, 0x9a, 0x6a, + 0x9f, 0x6c, 0xba, 0x42, 0x02, 0xd1, 0x1f, 0x20, + 0x1f, 0xe0, 0x2e, 0xe0, 0x20, 0x4b, 0x5a, 0x6c, + 0x00, 0x2a, 0x03, 0xd0, 0x1f, 0x4f, 0xb3, 0x1a, + 0xbb, 0x42, 0x16, 0xd3, 0x1c, 0x4b, 0x00, 0x2a, + 0x05, 0xd0, 0x9a, 0x6a, 0x9f, 0x6c, 0xba, 0x42, + 0x01, 0xd1, 0x3c, 0x00, 0x7c, 0x47, 0x00, 0x00, + 0x0f, 0x20, 0x0d, 0xe0, 0x07, 0x9a, 0x00, 0x2a, + 0x04, 0xd0, 0xea, 0x79, 0x20, 0x2a, 0x01, 0xd1, + 0x00, 0x20, 0x05, 0xe0, 0xea, 0x79, 0x10, 0x2a, + 0x01, 0xd3, 0x03, 0x20, 0x00, 0xe0, 0x9a, 0x6a, + 0x12, 0x4a, 0x12, 0x68, 0x02, 0x40, 0x0b, 0xd1, + 0x01, 0x20, 0x08, 0x90, 0x02, 0x20, 0x08, 0x70, + 0x0f, 0x48, 0x08, 0x61, 0x4e, 0x60, 0x64, 0xe7, + 0xff, 0xe7, 0x01, 0x20, 0x3c, 0x00, 0xb8, 0x47, + 0x00, 0x00, 0x08, 0x90, 0x60, 0xe7, 0x0c, 0x49, + 0x88, 0x6a, 0x00, 0x28, 0x01, 0xda, 0x01, 0x30, + 0x02, 0xe0, 0x00, 0x28, 0x01, 0xdd, 0x00, 0x20, + 0x88, 0x62, 0x00, 0x20, 0x08, 0x62, 0x08, 0x99, + 0x20, 0x04, 0x08, 0x43, 0x0f, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x71, 0x02, + 0x00, 0x00, 0x08, 0x20, 0x07, 0x00, 0x53, 0x07, + 0x00, 0x00, 0x68, 0x7e, 0x01, 0x00, 0x3c, 0x00, + 0xf4, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x48, 0x70, 0x47, 0x50, 0x7e, 0x01, 0x00, + 0x80, 0xb5, 0x3d, 0xf0, 0x7f, 0xfd, 0x02, 0x49, + 0x01, 0x20, 0x08, 0x70, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x7e, 0x01, 0x00, 0xf8, 0xb5, 0x0d, 0x1c, + 0x0e, 0xf0, 0xc8, 0xfa, 0x26, 0x49, 0x04, 0x1c, + 0x88, 0x6a, 0x26, 0x4e, 0x00, 0x28, 0x01, 0xd0, + 0x04, 0x20, 0x03, 0xe0, 0x70, 0x6a, 0x00, 0x28, + 0x3c, 0x00, 0x30, 0x48, 0x00, 0x00, 0x01, 0xd0, + 0x01, 0x38, 0x70, 0x62, 0x00, 0x27, 0x00, 0x2d, + 0x02, 0xd0, 0xb7, 0x61, 0xf7, 0x61, 0x0a, 0xe0, + 0xb0, 0x69, 0x1c, 0x49, 0x01, 0x30, 0xb0, 0x61, + 0x49, 0x6d, 0x00, 0x29, 0x03, 0xd0, 0x03, 0x28, + 0x01, 0xd9, 0x01, 0x20, 0xf0, 0x61, 0xb4, 0x60, + 0xf1, 0x68, 0x00, 0x91, 0x08, 0xf0, 0xf7, 0xfc, + 0xf0, 0x60, 0x00, 0x99, 0x88, 0x42, 0x02, 0xd0, + 0x30, 0x62, 0x3c, 0x00, 0x6c, 0x48, 0x00, 0x00, + 0x34, 0x61, 0x0b, 0xe0, 0x00, 0xf0, 0x90, 0xf8, + 0x00, 0x28, 0x01, 0xd0, 0x11, 0x48, 0x00, 0xe0, + 0x11, 0x48, 0x31, 0x69, 0x61, 0x1a, 0x81, 0x42, + 0x00, 0xd9, 0x37, 0x62, 0x0b, 0x4a, 0x0c, 0x48, + 0xd1, 0x6c, 0x20, 0x30, 0x00, 0x29, 0x01, 0xd0, + 0x0a, 0x21, 0x03, 0xe0, 0x01, 0x7a, 0x00, 0x29, + 0x01, 0xd0, 0xff, 0x31, 0x01, 0x72, 0x00, 0x2d, + 0x03, 0xd1, 0x01, 0x7a, 0x3c, 0x00, 0xa8, 0x48, + 0x00, 0x00, 0x00, 0x29, 0x00, 0xd0, 0x91, 0x6a, + 0x00, 0x7a, 0x00, 0x28, 0x00, 0xd1, 0x17, 0x65, + 0xf8, 0xbd, 0xa4, 0x6c, 0x01, 0x00, 0x3c, 0x7e, + 0x01, 0x00, 0xa6, 0x0e, 0x00, 0x00, 0xa8, 0x61, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x06, 0x49, + 0x80, 0xb5, 0x89, 0x68, 0x00, 0x29, 0x07, 0xd0, + 0x05, 0x21, 0x00, 0x28, 0x00, 0xd1, 0x04, 0x21, + 0x08, 0x06, 0x00, 0x0e, 0x03, 0xf0, 0x3c, 0x00, + 0xe4, 0x48, 0x00, 0x00, 0x05, 0xfa, 0x80, 0xbd, + 0x60, 0x6c, 0x01, 0x00, 0x07, 0x48, 0x00, 0x68, + 0x07, 0x49, 0x4a, 0x69, 0x10, 0x40, 0x01, 0xd0, + 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, 0x49, 0x6a, + 0x88, 0x42, 0x01, 0xd1, 0x01, 0x20, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x10, 0x00, 0x07, 0x00, + 0xa4, 0x6c, 0x01, 0x00, 0x70, 0xb5, 0x0e, 0xf0, + 0x49, 0xfa, 0x02, 0x1c, 0x00, 0xf0, 0x3a, 0xf8, + 0x3c, 0x00, 0x20, 0x49, 0x00, 0x00, 0x10, 0x49, + 0x00, 0x28, 0x0e, 0xd0, 0x08, 0x1c, 0xa0, 0x31, + 0x0e, 0x78, 0x0e, 0x4b, 0x10, 0x2e, 0x01, 0xd3, + 0x80, 0x6f, 0x03, 0xe0, 0x49, 0x78, 0x10, 0x29, + 0x0e, 0xd3, 0xc0, 0x6f, 0xc0, 0x18, 0x84, 0x1a, + 0x0a, 0xe0, 0x08, 0x1c, 0x80, 0x30, 0x45, 0x69, + 0x08, 0x49, 0x8d, 0x42, 0x01, 0xd9, 0x0c, 0x1c, + 0x05, 0xe0, 0xc0, 0x68, 0x10, 0x1a, 0x2c, 0x1a, + 0x00, 0x2c, 0x3c, 0x00, 0x5c, 0x49, 0x00, 0x00, + 0x00, 0xda, 0x64, 0x19, 0x20, 0x1c, 0x70, 0xbd, + 0xa4, 0x6c, 0x01, 0x00, 0xa6, 0x0e, 0x00, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0x80, 0xb5, 0x05, 0xf0, + 0xb7, 0xfb, 0x00, 0x28, 0x02, 0xd0, 0x07, 0xf0, + 0x1f, 0xff, 0x80, 0xbd, 0x03, 0x48, 0x00, 0x78, + 0x00, 0x28, 0xfa, 0xd0, 0x07, 0xf0, 0x70, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, + 0x03, 0x49, 0x01, 0x20, 0x3c, 0x00, 0x98, 0x49, + 0x00, 0x00, 0x49, 0x69, 0x03, 0x29, 0x00, 0xd8, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x60, 0x6c, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x00, 0x24, + 0x28, 0x78, 0x01, 0x28, 0x03, 0xd0, 0x05, 0xf0, + 0x6a, 0xfb, 0x04, 0x06, 0x24, 0x0e, 0xfe, 0xf7, + 0xd2, 0xfc, 0x00, 0x02, 0x20, 0x43, 0x02, 0xd1, + 0x68, 0x6a, 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, + 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, 0x3c, 0x00, + 0xd4, 0x49, 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, + 0x01, 0x21, 0x01, 0x28, 0x00, 0xd0, 0x00, 0x21, + 0x01, 0x48, 0x41, 0x62, 0x70, 0x47, 0x00, 0x00, + 0x60, 0x6c, 0x01, 0x00, 0x15, 0x48, 0x10, 0xb5, + 0x04, 0x68, 0x15, 0x48, 0x00, 0x6a, 0x00, 0x28, + 0x14, 0xd0, 0xff, 0xf7, 0xcb, 0xff, 0x00, 0x28, + 0x0e, 0xd1, 0x11, 0x48, 0x11, 0x49, 0xc4, 0x30, + 0x40, 0x69, 0x88, 0x42, 0x08, 0xd2, 0xcc, 0x08, + 0x3c, 0x00, 0x10, 0x4a, 0x00, 0x00, 0xa0, 0x42, + 0x05, 0xd3, 0xff, 0xf7, 0x7e, 0xff, 0xa0, 0x42, + 0x01, 0xda, 0x0c, 0x4c, 0x01, 0xe0, 0xff, 0x24, + 0x91, 0x34, 0x7d, 0x20, 0x00, 0x01, 0x84, 0x42, + 0x04, 0xd9, 0x00, 0x22, 0x16, 0x21, 0x83, 0x20, + 0x0e, 0xf0, 0xbd, 0xfe, 0x01, 0x23, 0x09, 0x22, + 0x21, 0x1c, 0x16, 0x20, 0x0e, 0xf0, 0xa7, 0xfe, + 0x10, 0xbd, 0xb0, 0x57, 0x01, 0x00, 0x60, 0x6c, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x4a, 0x00, 0x00, + 0xc0, 0x5d, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x0e, 0x1c, 0x00, 0xf0, + 0x43, 0xf8, 0x00, 0x28, 0x0f, 0xd0, 0x08, 0x4c, + 0x20, 0x78, 0xc0, 0x07, 0x03, 0xd4, 0x05, 0xf0, + 0xab, 0xf9, 0x09, 0xf0, 0x31, 0xfe, 0x00, 0x2d, + 0x05, 0xd0, 0x20, 0x78, 0x80, 0x07, 0x02, 0xd4, + 0x30, 0x1c, 0x02, 0xf0, 0xfd, 0xfe, 0x70, 0xbd, + 0x60, 0x6c, 0x01, 0x00, 0x3c, 0x00, 0x88, 0x4a, + 0x00, 0x00, 0xb0, 0xb5, 0x00, 0x28, 0x18, 0xd0, + 0x11, 0x48, 0x81, 0x42, 0x15, 0xd2, 0x10, 0x48, + 0x0c, 0x1c, 0x0d, 0x18, 0x07, 0xf0, 0xdf, 0xfa, + 0x81, 0x00, 0x09, 0x18, 0xa1, 0x42, 0x01, 0xd2, + 0x40, 0x00, 0x03, 0xe0, 0x41, 0x00, 0x09, 0x18, + 0xa1, 0x42, 0x01, 0xd2, 0x24, 0x1a, 0x06, 0xe0, + 0x41, 0x00, 0xa1, 0x42, 0x03, 0xd2, 0x40, 0x08, + 0xf8, 0xe7, 0x06, 0x4d, 0x07, 0x4c, 0x3c, 0x00, + 0xc4, 0x4a, 0x00, 0x00, 0x0e, 0xf0, 0x72, 0xf9, + 0x00, 0x19, 0x29, 0x1c, 0x07, 0xf0, 0xdc, 0xfa, + 0xb0, 0xbd, 0x00, 0x00, 0x80, 0xb9, 0x2a, 0x00, + 0x53, 0x07, 0x00, 0x00, 0x4c, 0x1d, 0x00, 0x00, + 0x88, 0x13, 0x00, 0x00, 0xb0, 0xb5, 0x05, 0xf0, + 0xfd, 0xfa, 0x00, 0x28, 0x13, 0xd1, 0xfe, 0xf7, + 0xb5, 0xfe, 0x0a, 0x4c, 0x0a, 0x4d, 0x00, 0x28, + 0x60, 0x63, 0x00, 0xd0, 0x28, 0x60, 0x0e, 0xf0, + 0x3c, 0x00, 0x00, 0x4b, 0x00, 0x00, 0x55, 0xf9, + 0x21, 0x6a, 0x00, 0x29, 0x04, 0xd1, 0xe1, 0x69, + 0x40, 0x1a, 0x29, 0x68, 0x88, 0x42, 0x01, 0xd9, + 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, + 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, 0xb0, 0x57, + 0x01, 0x00, 0x80, 0xb5, 0xff, 0xf7, 0xdd, 0xff, + 0x00, 0x28, 0x05, 0xd0, 0x05, 0xf0, 0xb7, 0xfa, + 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, 0x80, 0xbd, + 0x00, 0x20, 0x3c, 0x00, 0x3c, 0x4b, 0x00, 0x00, + 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x0a, 0x4c, + 0x00, 0x21, 0xa2, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0xa1, 0x60, 0x02, 0xf0, 0x83, 0xf9, 0x10, 0xbd, + 0x61, 0x60, 0x01, 0x1c, 0x00, 0x22, 0x04, 0x20, + 0x0e, 0xf0, 0x36, 0xfd, 0x03, 0x48, 0x21, 0x68, + 0x0a, 0xf0, 0x08, 0xfc, 0x10, 0xbd, 0x00, 0x00, + 0xbc, 0x74, 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x3c, 0x00, 0x78, 0x4b, + 0x00, 0x00, 0x01, 0xd1, 0xfc, 0xf7, 0xc1, 0xfb, + 0x20, 0x4c, 0xe0, 0x6a, 0x00, 0x28, 0x15, 0xd0, + 0x1f, 0x4b, 0xa0, 0x69, 0x58, 0x43, 0xc6, 0x0b, + 0x20, 0x88, 0x46, 0x43, 0xf0, 0x00, 0x80, 0x19, + 0xe6, 0x60, 0xfb, 0xf7, 0x1c, 0xfe, 0xa8, 0x42, + 0x05, 0xd8, 0x30, 0x1c, 0xfb, 0xf7, 0x17, 0xfe, + 0x80, 0x19, 0xa8, 0x42, 0x02, 0xd2, 0x00, 0x20, + 0xe0, 0x60, 0x20, 0xe0, 0xe5, 0x60, 0x3c, 0x00, + 0xb4, 0x4b, 0x00, 0x00, 0x00, 0x2d, 0x1d, 0xd0, + 0x26, 0x88, 0xa0, 0x69, 0x70, 0x43, 0xc1, 0x03, + 0x28, 0x1c, 0xfb, 0xf7, 0xa5, 0xfd, 0x60, 0x61, + 0x0d, 0x48, 0x32, 0x1c, 0x29, 0x1c, 0x30, 0x30, + 0xfb, 0xf7, 0x0a, 0xfc, 0x0c, 0x4b, 0x60, 0x69, + 0x58, 0x43, 0xc0, 0x0b, 0x60, 0x62, 0x01, 0xf0, + 0xb7, 0xfd, 0xa0, 0x62, 0xe0, 0x68, 0x00, 0x28, + 0x04, 0xd0, 0x20, 0x69, 0xa1, 0x68, 0xfb, 0xf7, + 0x3c, 0x00, 0xf0, 0x4b, 0x00, 0x00, 0xf4, 0xfb, + 0x70, 0xbd, 0x05, 0x48, 0xa1, 0x68, 0xfb, 0xf7, + 0xef, 0xfb, 0x70, 0xbd, 0x00, 0x00, 0xc8, 0x74, + 0x01, 0x00, 0x40, 0x42, 0x0f, 0x00, 0xc0, 0xc6, + 0x2d, 0x00, 0x88, 0x13, 0x00, 0x00, 0xf1, 0xb5, + 0x3e, 0x48, 0x00, 0xab, 0x81, 0x78, 0xc0, 0x78, + 0x3e, 0x4f, 0x0a, 0x07, 0x04, 0x07, 0x58, 0x78, + 0x3b, 0x49, 0x12, 0x0f, 0x08, 0x5c, 0x14, 0x39, + 0x24, 0x0f, 0x3c, 0x00, 0x2c, 0x4c, 0x00, 0x00, + 0x80, 0x18, 0x78, 0x60, 0x01, 0x30, 0xb8, 0x60, + 0x18, 0x78, 0x35, 0x4d, 0x08, 0x5c, 0x00, 0x19, + 0xb8, 0x61, 0x01, 0x30, 0xf8, 0x61, 0xeb, 0x78, + 0x33, 0x48, 0x1e, 0x09, 0x33, 0x4b, 0x18, 0x38, + 0x81, 0x78, 0x5e, 0x43, 0xab, 0x78, 0x1d, 0x09, + 0xc8, 0x23, 0x6b, 0x43, 0x00, 0x29, 0x08, 0xd1, + 0x2b, 0x4d, 0x2d, 0x78, 0x3d, 0x60, 0xc5, 0x60, + 0x7d, 0x25, 0xed, 0x00, 0x3c, 0x00, 0x68, 0x4c, + 0x00, 0x00, 0x5d, 0x1b, 0x2c, 0x4b, 0x07, 0xe0, + 0x27, 0x4d, 0x6d, 0x78, 0x3d, 0x60, 0xc5, 0x60, + 0x4b, 0x25, 0x2d, 0x01, 0x5d, 0x1b, 0x28, 0x4b, + 0xf6, 0x18, 0x02, 0x20, 0x00, 0xf0, 0x57, 0xf8, + 0x28, 0x1a, 0xf8, 0x60, 0x22, 0x48, 0x22, 0x1c, + 0x18, 0x38, 0x81, 0x78, 0x03, 0x20, 0x00, 0xf0, + 0x4e, 0xf8, 0x30, 0x1a, 0x38, 0x62, 0x39, 0x68, + 0x00, 0xab, 0x79, 0x61, 0x5a, 0x78, 0x3c, 0x00, + 0xa4, 0x4c, 0x00, 0x00, 0x56, 0x23, 0xf9, 0x68, + 0x5a, 0x43, 0x89, 0x1a, 0xf9, 0x60, 0xc8, 0x31, + 0x39, 0x61, 0x18, 0x49, 0x18, 0x39, 0x89, 0x78, + 0x00, 0x29, 0xb9, 0x69, 0x11, 0xd1, 0x00, 0xab, + 0x1a, 0x78, 0x13, 0x4b, 0x14, 0x3b, 0x9a, 0x5c, + 0x53, 0x1c, 0x59, 0x43, 0x0a, 0x23, 0x59, 0x43, + 0x14, 0x4b, 0x59, 0x1a, 0x51, 0x43, 0x0a, 0x23, + 0x59, 0x43, 0x40, 0x1a, 0x38, 0x62, 0x12, 0x49, + 0x3c, 0x00, 0xe0, 0x4c, 0x00, 0x00, 0x10, 0xe0, + 0x00, 0xab, 0x1a, 0x78, 0x0a, 0x4b, 0x14, 0x3b, + 0x9a, 0x5c, 0x53, 0x1c, 0x59, 0x43, 0x0a, 0x23, + 0x59, 0x43, 0x0d, 0x4b, 0x59, 0x1a, 0x51, 0x43, + 0x0a, 0x23, 0x59, 0x43, 0x40, 0x1a, 0x0b, 0x49, + 0x38, 0x62, 0x40, 0x18, 0x78, 0x62, 0xf8, 0xbd, + 0x00, 0x00, 0x0c, 0x5a, 0x01, 0x00, 0x66, 0x5a, + 0x01, 0x00, 0x94, 0x78, 0x01, 0x00, 0xa0, 0x86, + 0x01, 0x00, 0x3c, 0x00, 0x1c, 0x4d, 0x00, 0x00, + 0x00, 0x48, 0x71, 0x00, 0xb0, 0xd6, 0x8c, 0x00, + 0x88, 0x10, 0x00, 0x00, 0x80, 0x38, 0x01, 0x00, + 0x58, 0x12, 0x00, 0x00, 0x70, 0x11, 0x01, 0x00, + 0x30, 0xb5, 0x19, 0x4b, 0x02, 0x28, 0xdd, 0x68, + 0x06, 0xd1, 0x00, 0x29, 0x04, 0xd1, 0x2b, 0x1c, + 0x0c, 0x33, 0x9c, 0x1a, 0x64, 0x23, 0x5c, 0x43, + 0x02, 0x28, 0x09, 0xd1, 0x01, 0x29, 0x07, 0xd1, + 0x64, 0x23, 0x7d, 0x24, 0x3c, 0x00, 0x58, 0x4d, + 0x00, 0x00, 0xe4, 0x00, 0x6b, 0x43, 0x1c, 0x19, + 0xa0, 0x23, 0x53, 0x43, 0xe4, 0x1a, 0x0a, 0x23, + 0x5a, 0x43, 0x03, 0x28, 0x09, 0xd1, 0x00, 0x29, + 0x07, 0xd1, 0x13, 0x23, 0xff, 0x24, 0xe4, 0x00, + 0x6b, 0x43, 0x1b, 0x19, 0x9b, 0x1a, 0x1c, 0x1c, + 0x5c, 0x43, 0x03, 0x28, 0x08, 0xd1, 0x01, 0x29, + 0x06, 0xd1, 0x0e, 0x20, 0x05, 0x49, 0x68, 0x43, + 0x40, 0x18, 0x80, 0x1a, 0x04, 0x1c, 0x3c, 0x00, + 0x94, 0x4d, 0x00, 0x00, 0x44, 0x43, 0x20, 0x1c, + 0x30, 0xbd, 0x00, 0x00, 0x7c, 0x78, 0x01, 0x00, + 0x84, 0x08, 0x00, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0x0c, 0x23, 0x60, 0x78, 0x05, 0x49, 0x14, 0x31, + 0x58, 0x43, 0x40, 0x18, 0x40, 0x68, 0x01, 0xf0, + 0x4f, 0xfc, 0x00, 0x21, 0x60, 0x78, 0x02, 0xf0, + 0x4b, 0xff, 0x10, 0xbd, 0x4c, 0x7b, 0x01, 0x00, + 0x0c, 0x48, 0xf8, 0xb5, 0x40, 0x78, 0x0c, 0x23, + 0x3c, 0x00, 0xd0, 0x4d, 0x00, 0x00, 0x0a, 0x49, + 0x58, 0x43, 0x14, 0x31, 0x44, 0x18, 0x26, 0x1d, + 0x60, 0xce, 0x30, 0x1c, 0x0b, 0xf0, 0x0b, 0xfd, + 0x00, 0x27, 0x41, 0x20, 0x47, 0x55, 0x05, 0x48, + 0x29, 0x1c, 0x02, 0xf0, 0xf0, 0xfe, 0x28, 0x1c, + 0x01, 0xf0, 0x31, 0xfc, 0x04, 0x34, 0xc0, 0xc4, + 0xf8, 0xbd, 0x4c, 0x7b, 0x01, 0x00, 0x55, 0x80, + 0x00, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x4c, 0x21, + 0x28, 0x78, 0x3c, 0x00, 0x0c, 0x4e, 0x00, 0x00, + 0x09, 0x4a, 0x41, 0x43, 0x8c, 0x18, 0x22, 0x68, + 0x01, 0x21, 0xfb, 0xf7, 0xe1, 0xfa, 0x28, 0x78, + 0x01, 0xf0, 0xfa, 0xfb, 0x3c, 0x23, 0xe0, 0x56, + 0x41, 0x1e, 0x01, 0x20, 0x07, 0xf0, 0x34, 0xfb, + 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x7c, 0x01, 0x00, + 0x58, 0xe3, 0x01, 0x00, 0x0c, 0x23, 0x07, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x80, 0xb5, 0x40, 0x68, + 0x41, 0x6b, 0x00, 0x29, 0x3c, 0x00, 0x48, 0x4e, + 0x00, 0x00, 0x02, 0xd0, 0x0b, 0xf0, 0xfb, 0xfd, + 0x80, 0xbd, 0x0b, 0xf0, 0x2c, 0xfd, 0x80, 0xbd, + 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, 0x38, 0x22, + 0x0a, 0x4b, 0x42, 0x43, 0xd2, 0x18, 0x00, 0x29, + 0x80, 0xb5, 0x04, 0xd0, 0x02, 0x29, 0x07, 0xd1, + 0x0b, 0xf0, 0xfb, 0xfc, 0x80, 0xbd, 0xd2, 0x6a, + 0x01, 0x21, 0xfb, 0xf7, 0xb0, 0xfa, 0x80, 0xbd, + 0x03, 0x21, 0x86, 0x20, 0xfc, 0xf7, 0x3c, 0x00, + 0x84, 0x4e, 0x00, 0x00, 0x0f, 0xfa, 0x80, 0xbd, + 0xd4, 0xe4, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x06, + 0x24, 0x0e, 0x0c, 0x20, 0x0e, 0x49, 0x60, 0x43, + 0x40, 0x18, 0x45, 0x68, 0xa8, 0x6b, 0x00, 0x28, + 0x03, 0xd1, 0x00, 0x21, 0x20, 0x1c, 0xfd, 0xf7, + 0xe1, 0xfa, 0x20, 0x1c, 0x07, 0xf0, 0xf2, 0xff, + 0x00, 0x28, 0x08, 0xd0, 0x28, 0x1c, 0x60, 0x30, + 0xc1, 0x79, 0x01, 0x29, 0x03, 0xd9, 0xff, 0x31, + 0x3c, 0x00, 0xc0, 0x4e, 0x00, 0x00, 0xc1, 0x71, + 0xff, 0x31, 0x81, 0x71, 0x01, 0x21, 0x20, 0x1c, + 0x02, 0xf0, 0xc5, 0xfe, 0xb0, 0xbd, 0x60, 0x7b, + 0x01, 0x00, 0x70, 0xb5, 0x00, 0x06, 0x00, 0x0e, + 0x05, 0x1c, 0x4c, 0x23, 0x0a, 0x49, 0x58, 0x43, + 0x44, 0x18, 0x3c, 0x20, 0x00, 0x5d, 0xff, 0x30, + 0x06, 0x06, 0x36, 0x16, 0x28, 0x1c, 0x01, 0xf0, + 0x90, 0xfb, 0x00, 0x21, 0x28, 0x1c, 0x22, 0x68, + 0xfb, 0xf7, 0x3c, 0x00, 0xfc, 0x4e, 0x00, 0x00, + 0x6f, 0xfa, 0x31, 0x1c, 0x00, 0x20, 0x07, 0xf0, + 0xc7, 0xfa, 0x70, 0xbd, 0x58, 0xe3, 0x01, 0x00, + 0x0c, 0x22, 0x0f, 0x4b, 0x42, 0x43, 0xd2, 0x18, + 0x10, 0xb5, 0x54, 0x68, 0x00, 0x29, 0x0d, 0xd0, + 0x02, 0x29, 0x0f, 0xd1, 0x2c, 0x20, 0x00, 0x5d, + 0x00, 0x28, 0x03, 0xd0, 0x07, 0x21, 0x0c, 0x20, + 0xfc, 0xf7, 0xba, 0xf9, 0x20, 0x1c, 0x0b, 0xf0, + 0xbb, 0xfc, 0x10, 0xbd, 0x3c, 0x00, 0x38, 0x4f, + 0x00, 0x00, 0x00, 0x21, 0x02, 0xf0, 0x8d, 0xfe, + 0x10, 0xbd, 0x04, 0x21, 0x0c, 0x20, 0xfc, 0xf7, + 0xae, 0xf9, 0x10, 0xbd, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x29, 0x07, 0xd0, + 0x0c, 0x23, 0x05, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x40, 0x68, 0x0b, 0xf0, 0x4a, 0xfc, 0x80, 0xbd, + 0x01, 0x21, 0x02, 0xf0, 0x76, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, 0x3c, 0x00, + 0x74, 0x4f, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x00, 0x29, 0x05, 0xd0, 0x02, 0x29, 0x1a, 0xd1, + 0x20, 0x1c, 0x0b, 0xf0, 0xeb, 0xfc, 0x10, 0xbd, + 0x0d, 0x48, 0x04, 0x70, 0x0d, 0x48, 0x07, 0xf0, + 0x07, 0xf9, 0x0d, 0x48, 0x01, 0x88, 0x01, 0x22, + 0x12, 0x03, 0x11, 0x43, 0x01, 0x80, 0x4c, 0x20, + 0x0a, 0x49, 0x60, 0x43, 0x40, 0x18, 0x40, 0x30, + 0x00, 0x78, 0xfd, 0xf7, 0x5d, 0xfd, 0x20, 0x1c, + 0x3c, 0x00, 0xb0, 0x4f, 0x00, 0x00, 0x0a, 0xf0, + 0xd4, 0xf8, 0x10, 0xbd, 0x03, 0x21, 0x86, 0x20, + 0xfc, 0xf7, 0x73, 0xf9, 0x10, 0xbd, 0x3c, 0x7c, + 0x01, 0x00, 0x05, 0x4e, 0x00, 0x00, 0x32, 0x80, + 0x07, 0x00, 0x58, 0xe3, 0x01, 0x00, 0xff, 0xb5, + 0x05, 0x1c, 0x01, 0x20, 0x83, 0xb0, 0x01, 0x90, + 0x0c, 0x20, 0x5d, 0x4a, 0x68, 0x43, 0x86, 0x18, + 0x01, 0x27, 0x00, 0x29, 0x74, 0x68, 0x0e, 0xd0, + 0x02, 0x29, 0x3c, 0x00, 0xec, 0x4f, 0x00, 0x00, + 0x6a, 0xd1, 0x2c, 0x20, 0x00, 0x5d, 0x00, 0x28, + 0x03, 0xd0, 0x06, 0x21, 0x0c, 0x20, 0xfc, 0xf7, + 0x53, 0xf9, 0x20, 0x1c, 0x0b, 0xf0, 0x20, 0xfd, + 0x07, 0xb0, 0xf0, 0xbd, 0x52, 0x48, 0x14, 0x38, + 0x45, 0x70, 0xa0, 0x6b, 0x00, 0x28, 0x07, 0xd0, + 0x50, 0x48, 0x07, 0xf0, 0x7f, 0xf8, 0x01, 0x21, + 0x28, 0x1c, 0xfd, 0xf7, 0x25, 0xfa, 0x1c, 0xe0, + 0x4d, 0x48, 0x07, 0xf0, 0x3c, 0x00, 0x28, 0x50, + 0x00, 0x00, 0x77, 0xf8, 0x4a, 0x48, 0x14, 0x38, + 0x05, 0x70, 0x4b, 0x48, 0x01, 0x88, 0x01, 0x22, + 0x52, 0x03, 0x11, 0x43, 0x01, 0x80, 0x40, 0x20, + 0x00, 0x5d, 0xfd, 0xf7, 0x12, 0xfd, 0xb0, 0x68, + 0x00, 0x28, 0x09, 0xd1, 0x28, 0x1c, 0x07, 0xf0, + 0x64, 0xff, 0xb0, 0x60, 0x00, 0x28, 0x03, 0xd1, + 0x09, 0x21, 0x0c, 0x20, 0xfc, 0xf7, 0x23, 0xf9, + 0x05, 0x98, 0x00, 0x28, 0x03, 0xd0, 0x3c, 0x00, + 0x64, 0x50, 0x00, 0x00, 0xe0, 0x6c, 0x01, 0x30, + 0xe0, 0x64, 0x0e, 0xe0, 0x67, 0x20, 0x00, 0x5d, + 0x00, 0x28, 0x07, 0xd1, 0xe0, 0x6c, 0x00, 0x28, + 0x04, 0xd1, 0x39, 0x48, 0x02, 0x38, 0xc0, 0x6a, + 0xa0, 0x64, 0x09, 0xe0, 0x20, 0x6d, 0x00, 0x28, + 0x01, 0xd0, 0x00, 0x27, 0x04, 0xe0, 0x28, 0x1c, + 0x07, 0xf0, 0x00, 0xff, 0x00, 0x28, 0xe5, 0xd1, + 0x05, 0x98, 0x20, 0x65, 0x20, 0x1c, 0x20, 0x30, + 0x3c, 0x00, 0xa0, 0x50, 0x00, 0x00, 0x62, 0x6a, + 0x02, 0x90, 0x81, 0x7b, 0x28, 0x1c, 0x07, 0xf0, + 0x78, 0xff, 0x00, 0x2f, 0x19, 0xd0, 0x20, 0x1c, + 0x60, 0x30, 0xc1, 0x79, 0x4a, 0x1c, 0xc2, 0x71, + 0x80, 0x79, 0x81, 0x42, 0x02, 0xd2, 0x01, 0x20, + 0x01, 0xe0, 0x40, 0xe0, 0x00, 0x20, 0x01, 0x90, + 0x00, 0x28, 0x0a, 0xd0, 0x25, 0x48, 0x00, 0x78, + 0x80, 0x07, 0x06, 0xd5, 0x00, 0xf0, 0x0d, 0xfb, + 0x01, 0x1c, 0x3c, 0x00, 0xdc, 0x50, 0x00, 0x00, + 0x20, 0x1c, 0x0b, 0xf0, 0x15, 0xfd, 0x01, 0x90, + 0x01, 0x98, 0x00, 0x28, 0x0f, 0xd0, 0x02, 0x98, + 0x00, 0x7b, 0x02, 0x28, 0x03, 0xd1, 0x20, 0x1c, + 0x04, 0xf0, 0xd0, 0xfe, 0x84, 0xe7, 0x01, 0x28, + 0x00, 0xd0, 0x7e, 0xe7, 0x21, 0x1c, 0x30, 0x1c, + 0x04, 0xf0, 0xe2, 0xfe, 0x7c, 0xe7, 0x25, 0x1c, + 0x60, 0x35, 0xe8, 0x79, 0xff, 0x30, 0xa8, 0x71, + 0x68, 0x7a, 0x06, 0xf0, 0x3c, 0x00, 0x18, 0x51, + 0x00, 0x00, 0x9d, 0xfc, 0x0d, 0xf0, 0x47, 0xfe, + 0x07, 0x1c, 0x05, 0xf0, 0x12, 0xff, 0x3f, 0x18, + 0x02, 0x98, 0x81, 0x7b, 0x20, 0x69, 0x04, 0x30, + 0x00, 0xf0, 0x35, 0xfa, 0x61, 0x6a, 0x05, 0xf0, + 0xea, 0xfe, 0x39, 0x18, 0x6b, 0x7a, 0x30, 0x88, + 0x80, 0x31, 0x09, 0x4a, 0x0d, 0xf0, 0x91, 0xfe, + 0x5d, 0xe7, 0x03, 0x21, 0x0c, 0x20, 0xfc, 0xf7, + 0xaa, 0xf8, 0x58, 0xe7, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x51, 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, + 0xa5, 0x4d, 0x00, 0x00, 0xc9, 0x4d, 0x00, 0x00, + 0x32, 0x80, 0x07, 0x00, 0x1d, 0x75, 0x01, 0x00, + 0x8d, 0x4e, 0x00, 0x00, 0xff, 0xb5, 0x81, 0xb0, + 0x1f, 0x1c, 0x05, 0x1c, 0x14, 0x1c, 0x10, 0x1c, + 0x0a, 0x9e, 0x00, 0xf0, 0xf5, 0xfc, 0x29, 0x1c, + 0x10, 0x31, 0x20, 0x1d, 0x06, 0x22, 0xfb, 0xf7, + 0xb7, 0xf9, 0xa8, 0x8e, 0x20, 0x80, 0xe8, 0x8e, + 0x3c, 0x00, 0x90, 0x51, 0x00, 0x00, 0x60, 0x80, + 0x02, 0x99, 0x20, 0x1c, 0x00, 0xf0, 0x07, 0xf9, + 0xff, 0x34, 0x01, 0x34, 0x66, 0x60, 0x27, 0x60, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xf8, 0xb5, + 0x0f, 0x1c, 0x1e, 0x1c, 0x05, 0x1c, 0x14, 0x1c, + 0x10, 0x1c, 0x00, 0xf0, 0xd8, 0xfc, 0xa8, 0x88, + 0x39, 0x1c, 0x20, 0x80, 0x28, 0x89, 0x60, 0x80, + 0x20, 0x1c, 0x00, 0xf0, 0xf0, 0xf8, 0xff, 0x34, + 0x01, 0x34, 0x3c, 0x00, 0xcc, 0x51, 0x00, 0x00, + 0x66, 0x60, 0xf8, 0xbd, 0x70, 0xb5, 0x04, 0x1c, + 0xc0, 0x68, 0x05, 0x68, 0x20, 0x1c, 0x14, 0x30, + 0x06, 0x1c, 0x00, 0xf0, 0x0f, 0xfb, 0x00, 0x28, + 0x16, 0xd0, 0x01, 0x22, 0x02, 0x21, 0x20, 0x69, + 0x05, 0xf0, 0xf8, 0xfa, 0x00, 0x28, 0x01, 0xd0, + 0xfb, 0xf7, 0x24, 0xff, 0x00, 0x22, 0x02, 0x21, + 0x20, 0x69, 0x05, 0xf0, 0xef, 0xfa, 0x00, 0x28, + 0x06, 0xd0, 0xfb, 0xf7, 0x3c, 0x00, 0x08, 0x52, + 0x00, 0x00, 0x01, 0xff, 0x00, 0x28, 0x02, 0xd0, + 0x30, 0x1c, 0x0b, 0xf0, 0x7c, 0xfb, 0x68, 0x89, + 0x80, 0x07, 0xc0, 0x0f, 0x03, 0xf0, 0xa7, 0xf8, + 0x18, 0x23, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0xc1, 0x68, 0x00, 0x29, 0x02, 0xd0, 0x20, 0x1c, + 0xfb, 0xf7, 0xd4, 0xf8, 0x70, 0xbd, 0x94, 0x67, + 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, 0x10, 0x1c, + 0x0d, 0x1c, 0x19, 0x1c, 0xff, 0x22, 0x3c, 0x00, + 0x44, 0x52, 0x00, 0x00, 0x00, 0x27, 0xff, 0x2d, + 0x25, 0xd0, 0x00, 0x29, 0x05, 0xd0, 0x4b, 0x88, + 0x00, 0x2b, 0x02, 0xd0, 0x00, 0xf0, 0x50, 0xfc, + 0x15, 0xe0, 0x00, 0x21, 0x10, 0x4e, 0x4b, 0x00, + 0x9e, 0x19, 0x02, 0x23, 0xf6, 0x5e, 0x86, 0x42, + 0x01, 0xdd, 0x0a, 0x1c, 0x04, 0xe0, 0x01, 0x31, + 0x09, 0x06, 0x09, 0x0e, 0x26, 0x29, 0xf1, 0xd3, + 0x09, 0x4e, 0x50, 0x00, 0x80, 0x19, 0x4e, 0x23, + 0x3c, 0x00, 0x80, 0x52, 0x00, 0x00, 0xc0, 0x5e, + 0x27, 0x2a, 0x07, 0xd2, 0x06, 0x49, 0x20, 0x39, + 0x49, 0x57, 0x47, 0x31, 0x40, 0x1a, 0x20, 0x60, + 0x01, 0x27, 0x02, 0xe0, 0x7e, 0x20, 0xc0, 0x43, + 0x20, 0x60, 0x38, 0x1c, 0xf8, 0xbd, 0xfa, 0x47, + 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x7e, 0x21, + 0x05, 0x1c, 0x00, 0x20, 0xc9, 0x43, 0x00, 0x2c, + 0x0f, 0xd0, 0x10, 0x1c, 0x05, 0xf0, 0x6b, 0xfd, + 0x00, 0x28, 0x3c, 0x00, 0xbc, 0x52, 0x00, 0x00, + 0x02, 0xd0, 0x21, 0x1c, 0xc9, 0x39, 0x01, 0xe0, + 0x21, 0x1c, 0x86, 0x39, 0x02, 0x20, 0xc0, 0x43, + 0xfb, 0xf7, 0xb4, 0xf9, 0x01, 0x1c, 0x01, 0x20, + 0x29, 0x60, 0xb0, 0xbd, 0x98, 0xb5, 0x14, 0x1c, + 0x00, 0x22, 0x00, 0x92, 0x22, 0x1c, 0xfd, 0xf7, + 0x43, 0xfe, 0x98, 0xbd, 0x05, 0x49, 0x80, 0xb5, + 0x08, 0x60, 0x05, 0x49, 0x01, 0x20, 0xc8, 0x61, + 0x01, 0x21, 0x00, 0x20, 0x3c, 0x00, 0xf8, 0x52, + 0x00, 0x00, 0x03, 0xf0, 0x1c, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x20, 0x67, 0x01, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x21, 0x00, 0x20, + 0x03, 0xf0, 0x11, 0xfe, 0x06, 0xf0, 0x0d, 0xfb, + 0x02, 0x49, 0x00, 0x20, 0x08, 0x60, 0x80, 0xbd, + 0x00, 0x00, 0x20, 0x67, 0x01, 0x00, 0x03, 0x49, + 0x01, 0x20, 0x09, 0x69, 0x00, 0x29, 0x00, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x53, 0x00, 0x00, 0x10, 0x67, 0x01, 0x00, + 0x03, 0x48, 0x00, 0x69, 0x00, 0x28, 0x01, 0xd0, + 0x40, 0x69, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x70, 0xb5, 0x16, 0x1c, + 0x0d, 0x1c, 0x04, 0x1c, 0x00, 0x28, 0x01, 0xd0, + 0x01, 0x2c, 0x07, 0xd1, 0x00, 0xf0, 0x36, 0xfa, + 0x00, 0x28, 0x05, 0xd0, 0x13, 0xf0, 0xca, 0xf9, + 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, 0x70, 0xbd, + 0x3c, 0x00, 0x70, 0x53, 0x00, 0x00, 0x01, 0x20, + 0x00, 0x2c, 0x00, 0xd0, 0x00, 0x20, 0x0a, 0x4c, + 0x04, 0x34, 0x61, 0xc4, 0x10, 0x3c, 0x00, 0xf0, + 0x24, 0xfa, 0x00, 0x28, 0x02, 0xd0, 0x00, 0xf0, + 0xc6, 0xf9, 0x01, 0xe0, 0x00, 0xf0, 0xe5, 0xf8, + 0xc0, 0x30, 0xc3, 0x6b, 0x22, 0x1d, 0x07, 0xca, + 0xfb, 0xf7, 0x20, 0xf8, 0x00, 0x20, 0x70, 0xbd, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0xf8, 0xb5, + 0x0d, 0x1c, 0x3c, 0x00, 0xac, 0x53, 0x00, 0x00, + 0x00, 0x21, 0x04, 0x1c, 0x28, 0x1c, 0x05, 0xf0, + 0xe3, 0xf9, 0x23, 0x1c, 0xff, 0x33, 0x21, 0x33, + 0xff, 0x27, 0x00, 0x28, 0x05, 0xd0, 0x22, 0x22, + 0x01, 0x1c, 0x18, 0x1c, 0xfb, 0xf7, 0x96, 0xf8, + 0x00, 0xe0, 0x1f, 0x70, 0x03, 0x21, 0x28, 0x1c, + 0x05, 0xf0, 0xd2, 0xf9, 0x26, 0x1c, 0xff, 0x36, + 0x41, 0x36, 0x00, 0x28, 0x05, 0xd0, 0x03, 0x22, + 0x01, 0x1c, 0xb0, 0x1c, 0x3c, 0x00, 0xe8, 0x53, + 0x00, 0x00, 0xfb, 0xf7, 0x86, 0xf8, 0x00, 0xe0, + 0xb7, 0x70, 0x01, 0x21, 0x28, 0x1c, 0x05, 0xf0, + 0xc2, 0xf9, 0x00, 0x28, 0x07, 0xd0, 0x01, 0x1c, + 0x20, 0x1c, 0xff, 0x30, 0x0a, 0x22, 0x46, 0x30, + 0xfb, 0xf7, 0x77, 0xf8, 0x00, 0xe0, 0x77, 0x71, + 0x32, 0x21, 0x28, 0x1c, 0x05, 0xf0, 0xb3, 0xf9, + 0x00, 0x28, 0x07, 0xd0, 0x01, 0x1c, 0x20, 0x1c, + 0xff, 0x30, 0x12, 0x22, 0x50, 0x30, 0x3c, 0x00, + 0x24, 0x54, 0x00, 0x00, 0xfb, 0xf7, 0x68, 0xf8, + 0x00, 0xe0, 0xf7, 0x73, 0x06, 0x21, 0x28, 0x1c, + 0x05, 0xf0, 0xa4, 0xf9, 0x00, 0x28, 0x07, 0xd0, + 0x01, 0x1c, 0x20, 0x1c, 0xff, 0x30, 0x04, 0x22, + 0x63, 0x30, 0xfb, 0xf7, 0x59, 0xf8, 0xf8, 0xbd, + 0xff, 0x34, 0x61, 0x34, 0xa7, 0x70, 0xfa, 0xe7, + 0x08, 0x49, 0x80, 0xb5, 0x09, 0x68, 0x00, 0x28, + 0x01, 0xd1, 0x07, 0x48, 0x01, 0x68, 0x08, 0x1c, + 0x3c, 0x00, 0x60, 0x54, 0x00, 0x00, 0x05, 0xd1, + 0x03, 0x21, 0x90, 0x20, 0xfb, 0xf7, 0x1d, 0xff, + 0x00, 0x20, 0x80, 0xbd, 0x01, 0xf0, 0xd7, 0xfb, + 0x80, 0xbd, 0x1c, 0x67, 0x01, 0x00, 0x20, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0xff, 0xf7, 0xe7, 0xff, + 0x80, 0xbd, 0xf0, 0xb5, 0x00, 0x24, 0x84, 0x46, + 0x00, 0x20, 0x0b, 0xe0, 0x87, 0x40, 0x17, 0x40, + 0x07, 0xd0, 0x14, 0x23, 0x0b, 0x4d, 0x43, 0x43, + 0x5b, 0x19, 0x3c, 0x00, 0x9c, 0x54, 0x00, 0x00, + 0x1b, 0x7c, 0x65, 0x46, 0x2b, 0x55, 0x01, 0x34, + 0x01, 0x30, 0x01, 0x27, 0x3b, 0x1c, 0x0e, 0x28, + 0x00, 0xd3, 0x00, 0x23, 0x0e, 0x88, 0x3d, 0x1c, + 0xa6, 0x42, 0x00, 0xdc, 0x00, 0x25, 0x2b, 0x40, + 0xe7, 0xd1, 0x0c, 0x80, 0xf0, 0xbd, 0x00, 0x00, + 0x74, 0x40, 0x01, 0x00, 0x78, 0xb5, 0x04, 0x1c, + 0x01, 0x20, 0x20, 0x70, 0x08, 0x20, 0x00, 0xab, + 0x0d, 0x1c, 0x18, 0x80, 0x3c, 0x00, 0xd8, 0x54, + 0x00, 0x00, 0x16, 0x1c, 0xa0, 0x1c, 0x69, 0x46, + 0xff, 0xf7, 0xd1, 0xff, 0x00, 0xab, 0x00, 0x22, + 0xd2, 0x43, 0x19, 0x88, 0x82, 0x40, 0x61, 0x70, + 0x32, 0x20, 0x28, 0x70, 0x10, 0x20, 0x18, 0x80, + 0x32, 0x40, 0xa8, 0x1c, 0x69, 0x46, 0xff, 0xf7, + 0xc2, 0xff, 0x00, 0xab, 0x18, 0x88, 0x68, 0x70, + 0x78, 0xbd, 0x80, 0xb5, 0x02, 0xf0, 0x35, 0xff, + 0x00, 0x21, 0x00, 0x28, 0x00, 0xd0, 0x3c, 0x00, + 0x14, 0x55, 0x00, 0x00, 0x01, 0x69, 0x08, 0x1c, + 0x80, 0xbd, 0x00, 0x00, 0x05, 0x49, 0x00, 0x28, + 0x01, 0xd0, 0xc8, 0x68, 0x00, 0xe0, 0x08, 0x69, + 0x00, 0x28, 0x01, 0xd0, 0x04, 0x30, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x10, 0x67, 0x01, 0x00, + 0x03, 0x48, 0x00, 0x69, 0x00, 0x28, 0x01, 0xd0, + 0x04, 0x30, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x02, 0x48, 0x00, 0x69, + 0x3c, 0x00, 0x50, 0x55, 0x00, 0x00, 0x00, 0x28, + 0xff, 0xd1, 0x70, 0x47, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, 0x20, 0x69, + 0x00, 0x28, 0x03, 0xd1, 0x04, 0x21, 0x90, 0x20, + 0xfb, 0xf7, 0x9b, 0xfe, 0x20, 0x69, 0x10, 0xbd, + 0x00, 0x00, 0x10, 0x67, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x00, 0xf0, 0x40, 0xf9, 0x00, 0x28, + 0x01, 0xd0, 0x00, 0x20, 0x10, 0xbd, 0x20, 0x1c, + 0x00, 0xf0, 0x3c, 0x00, 0x8c, 0x55, 0x00, 0x00, + 0x57, 0xf9, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, + 0x10, 0xbd, 0x02, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x70, 0xb5, 0x0f, 0x4e, 0x04, 0x1c, 0x30, 0x68, + 0x0d, 0x1c, 0x00, 0x28, 0x07, 0xd0, 0x21, 0x1c, + 0x04, 0x30, 0x05, 0xf0, 0xc1, 0xfb, 0x00, 0x28, + 0x01, 0xd0, 0x30, 0x68, 0x0b, 0xe0, 0x09, 0x4a, + 0x10, 0x68, 0x00, 0x28, 0x09, 0xd0, 0x21, 0x1c, + 0x14, 0x1c, 0x04, 0x30, 0x3c, 0x00, 0xc8, 0x55, + 0x00, 0x00, 0x05, 0xf0, 0xb4, 0xfb, 0x00, 0x28, + 0x02, 0xd0, 0x20, 0x68, 0x9c, 0x30, 0x00, 0xe0, + 0x03, 0x48, 0x40, 0x5d, 0x70, 0xbd, 0x20, 0x67, + 0x01, 0x00, 0x1c, 0x67, 0x01, 0x00, 0xcc, 0x47, + 0x01, 0x00, 0x04, 0x49, 0x00, 0x20, 0x09, 0x69, + 0x00, 0x29, 0x02, 0xd0, 0xff, 0x31, 0x01, 0x31, + 0x88, 0x69, 0x70, 0x47, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0x01, 0x48, 0x00, 0x7a, 0x3c, 0x00, + 0x04, 0x56, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0xac, 0x7c, 0x01, 0x00, 0xfe, 0xb5, 0x06, 0x1c, + 0x00, 0x20, 0x1f, 0x1c, 0x14, 0x1c, 0x00, 0x29, + 0x02, 0x90, 0x19, 0xd0, 0x01, 0x29, 0x26, 0xd0, + 0x02, 0x29, 0x47, 0xd1, 0x26, 0x48, 0x00, 0x78, + 0x05, 0xf0, 0xa0, 0xfb, 0xa0, 0x72, 0x0a, 0xf0, + 0x4f, 0xfc, 0x0e, 0x28, 0x09, 0xd1, 0xa0, 0x7a, + 0x05, 0xf0, 0xaa, 0xfb, 0x00, 0x28, 0x04, 0xd0, + 0x3c, 0x00, 0x40, 0x56, 0x00, 0x00, 0x20, 0x48, + 0x00, 0x78, 0x05, 0xf0, 0x92, 0xfb, 0xa0, 0x72, + 0x00, 0x20, 0x20, 0x72, 0x2f, 0xe0, 0x1d, 0x4d, + 0x28, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xfb, 0xf7, + 0x52, 0xfe, 0x00, 0x97, 0x2a, 0x68, 0x23, 0x1c, + 0x18, 0x32, 0x11, 0x1c, 0x30, 0x1c, 0xfc, 0xf7, + 0xde, 0xfb, 0x26, 0xe0, 0x30, 0x1c, 0x0c, 0xf0, + 0xca, 0xfb, 0x05, 0x1c, 0x02, 0xd0, 0xa8, 0x68, + 0x00, 0x28, 0x3c, 0x00, 0x7c, 0x56, 0x00, 0x00, + 0x08, 0xd1, 0x13, 0x48, 0x00, 0x68, 0x00, 0x28, + 0x01, 0xd1, 0xfb, 0xf7, 0x3b, 0xfe, 0x10, 0x48, + 0x00, 0x68, 0x18, 0x30, 0x02, 0x1c, 0x0e, 0x48, + 0x00, 0x97, 0x01, 0x68, 0x23, 0x1c, 0x18, 0x31, + 0x30, 0x1c, 0xfc, 0xf7, 0xc3, 0xfb, 0x00, 0x2d, + 0x0a, 0xd0, 0x40, 0x35, 0x28, 0x88, 0x80, 0x06, + 0x06, 0xd4, 0x00, 0x20, 0x20, 0x60, 0x03, 0xe0, + 0x01, 0x21, 0x90, 0x20, 0x3c, 0x00, 0xb8, 0x56, + 0x00, 0x00, 0xfb, 0xf7, 0xf4, 0xfd, 0x02, 0x98, + 0xfe, 0xbd, 0xb0, 0x69, 0x01, 0x00, 0x90, 0x57, + 0x01, 0x00, 0x20, 0x67, 0x01, 0x00, 0x1c, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x20, 0x02, 0xf0, + 0x4a, 0xfe, 0x18, 0x23, 0x05, 0x4a, 0x58, 0x43, + 0x80, 0x18, 0x40, 0x69, 0x01, 0x21, 0x00, 0x28, + 0x00, 0xd0, 0x41, 0x78, 0x08, 0x1c, 0x80, 0xbd, + 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, 0x3c, 0x00, + 0xf4, 0x56, 0x00, 0x00, 0x02, 0x49, 0x08, 0x69, + 0x00, 0x28, 0x00, 0xd1, 0xc8, 0x68, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x03, 0x48, 0xc0, 0x68, + 0x00, 0x28, 0x01, 0xd0, 0x04, 0x30, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x10, 0x67, 0x01, 0x00, + 0x10, 0xb5, 0x05, 0x4c, 0xe0, 0x68, 0x00, 0x28, + 0x03, 0xd1, 0x05, 0x21, 0x90, 0x20, 0xfb, 0xf7, + 0xbd, 0xfd, 0xe0, 0x68, 0x10, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x57, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0xf8, 0xb5, 0x0d, 0x1c, 0x00, 0x2a, + 0x03, 0xd0, 0x11, 0x49, 0x12, 0x4f, 0x0e, 0x78, + 0x01, 0xe0, 0x11, 0x4f, 0x0c, 0x26, 0x08, 0x2e, + 0x01, 0xd2, 0x34, 0x1c, 0x00, 0xe0, 0x08, 0x24, + 0x01, 0x21, 0x01, 0x70, 0x44, 0x70, 0x39, 0x1c, + 0x22, 0x1c, 0x02, 0x30, 0xfa, 0xf7, 0xcb, 0xfe, + 0x32, 0x1b, 0x00, 0x2a, 0x07, 0xdd, 0x32, 0x20, + 0x28, 0x70, 0x3c, 0x00, 0x6c, 0x57, 0x00, 0x00, + 0x39, 0x19, 0xa8, 0x1c, 0x6a, 0x70, 0xfa, 0xf7, + 0xc1, 0xfe, 0xf8, 0xbd, 0xff, 0x20, 0x28, 0x70, + 0x00, 0x20, 0x68, 0x70, 0xf9, 0xe7, 0x00, 0x00, + 0xa4, 0x69, 0x01, 0x00, 0xb0, 0x69, 0x01, 0x00, + 0x90, 0x57, 0x01, 0x00, 0x01, 0x49, 0x48, 0x62, + 0x70, 0x47, 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, + 0x03, 0x49, 0x80, 0xb5, 0x08, 0x60, 0x01, 0x21, + 0x01, 0x20, 0x03, 0xf0, 0x3c, 0x00, 0xa8, 0x57, + 0x00, 0x00, 0xc5, 0xfb, 0x80, 0xbd, 0x1c, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x21, 0x01, 0x20, + 0x03, 0xf0, 0xbd, 0xfb, 0x06, 0xf0, 0xb9, 0xf8, + 0x02, 0x49, 0x00, 0x20, 0x08, 0x60, 0x80, 0xbd, + 0x00, 0x00, 0x1c, 0x67, 0x01, 0x00, 0x03, 0x49, + 0x01, 0x20, 0xc9, 0x68, 0x00, 0x29, 0x00, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x10, 0x67, + 0x01, 0x00, 0x03, 0x48, 0xc0, 0x68, 0x3c, 0x00, + 0xe4, 0x57, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd0, + 0x40, 0x69, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x10, 0x67, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x01, 0x20, 0x03, 0xf0, 0x9b, 0xfb, 0x80, 0xbd, + 0x05, 0x4a, 0x80, 0xb5, 0x12, 0x69, 0x00, 0x21, + 0x00, 0x2a, 0x03, 0xd0, 0x11, 0x1d, 0x05, 0xf0, + 0x91, 0xfa, 0x01, 0x1c, 0x08, 0x1c, 0x80, 0xbd, + 0x10, 0x67, 0x01, 0x00, 0x06, 0x4a, 0x80, 0xb5, + 0x3c, 0x00, 0x20, 0x58, 0x00, 0x00, 0x12, 0x69, + 0x00, 0x21, 0x00, 0x2a, 0x05, 0xd0, 0x11, 0x1c, + 0xff, 0x31, 0x21, 0x31, 0x05, 0xf0, 0x8b, 0xfa, + 0x01, 0x1c, 0x08, 0x1c, 0x80, 0xbd, 0x10, 0x67, + 0x01, 0x00, 0x05, 0x4a, 0x80, 0xb5, 0xd2, 0x68, + 0x00, 0x21, 0x00, 0x2a, 0x03, 0xd0, 0x11, 0x1d, + 0x05, 0xf0, 0x73, 0xfa, 0x01, 0x1c, 0x08, 0x1c, + 0x80, 0xbd, 0x10, 0x67, 0x01, 0x00, 0x06, 0x4a, + 0x80, 0xb5, 0x3c, 0x00, 0x5c, 0x58, 0x00, 0x00, + 0xd2, 0x68, 0x00, 0x21, 0x00, 0x2a, 0x05, 0xd0, + 0x11, 0x1c, 0xff, 0x31, 0x21, 0x31, 0x05, 0xf0, + 0x6d, 0xfa, 0x01, 0x1c, 0x08, 0x1c, 0x80, 0xbd, + 0x10, 0x67, 0x01, 0x00, 0xff, 0xb5, 0x0d, 0x1c, + 0x1f, 0x1c, 0x87, 0xb0, 0x10, 0x9e, 0x00, 0x24, + 0x02, 0xf0, 0x72, 0xfd, 0x18, 0x23, 0x13, 0x49, + 0x58, 0x43, 0x08, 0x58, 0x00, 0x28, 0x19, 0xd0, + 0x04, 0x1c, 0x33, 0x1c, 0x3c, 0x00, 0x98, 0x58, + 0x00, 0x00, 0x3a, 0x1c, 0x28, 0x1c, 0x09, 0x99, + 0xfa, 0xf7, 0x9f, 0xfd, 0x04, 0x1c, 0x14, 0xd0, + 0x18, 0x20, 0x00, 0xab, 0x18, 0x80, 0xaa, 0x68, + 0x01, 0xa8, 0x69, 0x46, 0xff, 0xf7, 0xe7, 0xfd, + 0x6a, 0x46, 0x01, 0xa9, 0x00, 0x20, 0x07, 0xf0, + 0x44, 0xfe, 0x00, 0x28, 0x05, 0xd1, 0x0a, 0x21, + 0x00, 0xe0, 0x0f, 0x21, 0x90, 0x20, 0xfb, 0xf7, + 0xea, 0xfc, 0x20, 0x1c, 0x0b, 0xb0, 0x3c, 0x00, + 0xd4, 0x58, 0x00, 0x00, 0xf0, 0xbd, 0x00, 0x00, + 0x94, 0x67, 0x01, 0x00, 0x10, 0xb5, 0x00, 0x24, + 0x02, 0xf0, 0x44, 0xfd, 0x18, 0x23, 0x05, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x80, 0x68, 0x00, 0x28, + 0x02, 0xd0, 0xfa, 0xf7, 0x71, 0xfd, 0x01, 0x24, + 0x20, 0x1c, 0x10, 0xbd, 0x94, 0x67, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x4b, 0x00, 0xf0, 0x4e, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x10, 0x67, 0x01, 0x00, + 0x3c, 0x00, 0x10, 0x59, 0x00, 0x00, 0x80, 0xb5, + 0x02, 0x4b, 0x00, 0xf0, 0x46, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x11, 0x67, 0x01, 0x00, 0xf8, 0xb5, + 0x0e, 0x1c, 0x15, 0x1c, 0x00, 0x28, 0x1c, 0x49, + 0x10, 0xd0, 0x48, 0x68, 0x1c, 0x4a, 0x28, 0x80, + 0x00, 0x20, 0x07, 0xe0, 0x0b, 0x18, 0x1c, 0x7a, + 0x14, 0x23, 0x63, 0x43, 0x9b, 0x18, 0x1b, 0x7c, + 0x33, 0x54, 0x01, 0x30, 0x2b, 0x88, 0x83, 0x42, + 0xf4, 0xdc, 0x3c, 0x00, 0x4c, 0x59, 0x00, 0x00, + 0x24, 0xe0, 0x00, 0x20, 0x0f, 0x1c, 0x00, 0x24, + 0x08, 0x60, 0x0f, 0xe0, 0x30, 0x5d, 0x05, 0xf0, + 0x07, 0xfa, 0x0e, 0x28, 0x01, 0xd1, 0x00, 0x20, + 0xf8, 0xbd, 0x39, 0x19, 0x08, 0x72, 0x01, 0x22, + 0x39, 0x68, 0x82, 0x40, 0x11, 0x43, 0x08, 0x1c, + 0x38, 0x60, 0x01, 0x34, 0x28, 0x88, 0xa0, 0x42, + 0xec, 0xdc, 0x28, 0x88, 0x78, 0x60, 0xff, 0xf7, + 0xb7, 0xfe, 0x00, 0x28, 0x3c, 0x00, 0x88, 0x59, + 0x00, 0x00, 0x06, 0xd0, 0x01, 0x69, 0x00, 0x29, + 0x03, 0xd0, 0x7f, 0x21, 0xc9, 0x43, 0x0b, 0xf0, + 0x52, 0xfb, 0x01, 0x20, 0xe3, 0xe7, 0x2c, 0x7d, + 0x01, 0x00, 0x74, 0x40, 0x01, 0x00, 0x10, 0xb5, + 0x1c, 0x1c, 0x00, 0x28, 0x0b, 0xd0, 0x20, 0x78, + 0x0e, 0x28, 0x05, 0xd2, 0x14, 0x23, 0x0c, 0x4a, + 0x58, 0x43, 0x80, 0x18, 0x00, 0x7c, 0x00, 0xe0, + 0x00, 0x20, 0x08, 0x70, 0x0e, 0xe0, 0x3c, 0x00, + 0xc4, 0x59, 0x00, 0x00, 0x08, 0x78, 0x05, 0xf0, + 0xd1, 0xf9, 0x20, 0x70, 0xff, 0xf7, 0x92, 0xfe, + 0x00, 0x28, 0x06, 0xd0, 0x01, 0x69, 0x00, 0x29, + 0x03, 0xd0, 0x7f, 0x21, 0xc9, 0x43, 0x0b, 0xf0, + 0x2d, 0xfb, 0x01, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x74, 0x40, 0x01, 0x00, 0x80, 0xb5, 0x27, 0x20, + 0xc0, 0x43, 0x09, 0xf0, 0x31, 0xfc, 0x80, 0xbd, + 0x80, 0xb5, 0x27, 0x20, 0xc0, 0x43, 0x09, 0xf0, + 0x3c, 0x00, 0x00, 0x5a, 0x00, 0x00, 0x39, 0xfc, + 0x80, 0xbd, 0x80, 0xb5, 0x28, 0x20, 0x09, 0xf0, + 0x42, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x28, 0x20, 0x09, 0xf0, 0x4a, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x01, 0x28, 0x28, 0xd1, + 0x01, 0x29, 0x01, 0xd0, 0xfb, 0xf7, 0x6b, 0xfc, + 0xff, 0xf7, 0xe9, 0xfd, 0x02, 0x28, 0x1a, 0xd1, + 0x07, 0xf0, 0x13, 0xfc, 0x12, 0x4c, 0x21, 0x69, + 0x88, 0x42, 0x3c, 0x00, 0x3c, 0x5a, 0x00, 0x00, + 0x15, 0xd0, 0x07, 0xf0, 0x0d, 0xfc, 0x20, 0x61, + 0x20, 0x68, 0x7d, 0x24, 0xe4, 0x00, 0x44, 0x43, + 0x0d, 0xf0, 0xae, 0xf9, 0x05, 0x1c, 0x07, 0xf0, + 0x0b, 0xfc, 0x28, 0x1a, 0x84, 0x42, 0x00, 0xd9, + 0x24, 0x1a, 0x01, 0x22, 0x21, 0x1c, 0x0a, 0x20, + 0x0d, 0xf0, 0xb2, 0xfd, 0xb0, 0xbd, 0x00, 0x21, + 0x09, 0x20, 0x0c, 0xf0, 0x75, 0xfc, 0xb0, 0xbd, + 0x07, 0x21, 0x0a, 0x20, 0x3c, 0x00, 0x78, 0x5a, + 0x00, 0x00, 0xfb, 0xf7, 0x14, 0xfc, 0xb0, 0xbd, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x7d, 0x20, + 0x02, 0x49, 0x00, 0x01, 0x08, 0x60, 0x70, 0x47, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x10, 0xb5, + 0x81, 0x6d, 0x04, 0x1c, 0xff, 0x30, 0x46, 0x30, + 0x0c, 0xf0, 0xd1, 0xfc, 0x20, 0x1c, 0xff, 0x30, + 0x50, 0x30, 0xa1, 0x6d, 0x0c, 0xf0, 0xcb, 0xfc, + 0x10, 0xbd, 0xb0, 0xb5, 0x04, 0x1c, 0x3c, 0x00, + 0xb4, 0x5a, 0x00, 0x00, 0x0d, 0x1c, 0x02, 0xf0, + 0x59, 0xfc, 0x20, 0x1c, 0x02, 0xf0, 0x56, 0xfc, + 0x18, 0x23, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x18, 0x22, 0x29, 0x1c, 0xfa, 0xf7, 0x70, 0xfd, + 0xb0, 0xbd, 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x09, 0xf0, 0xbc, 0xfb, + 0x20, 0x1c, 0x09, 0xf0, 0xc7, 0xfb, 0x10, 0xbd, + 0x10, 0xb5, 0x04, 0x1c, 0x09, 0xf0, 0xd0, 0xfb, + 0x3c, 0x00, 0xf0, 0x5a, 0x00, 0x00, 0x20, 0x1c, + 0x09, 0xf0, 0xdb, 0xfb, 0x10, 0xbd, 0x70, 0xb5, + 0x0c, 0x78, 0x06, 0x1c, 0x48, 0x88, 0x4d, 0x78, + 0xe2, 0x00, 0x80, 0x1a, 0xe9, 0x00, 0x40, 0x1a, + 0x01, 0x1c, 0x41, 0x43, 0x12, 0x31, 0x24, 0x20, + 0xfa, 0xf7, 0x91, 0xfd, 0x21, 0x1c, 0x61, 0x43, + 0xc9, 0x00, 0x40, 0x18, 0x29, 0x1c, 0x69, 0x43, + 0xc9, 0x00, 0x42, 0x18, 0x0c, 0x49, 0x88, 0x79, + 0x0c, 0x4b, 0x3c, 0x00, 0x2c, 0x5b, 0x00, 0x00, + 0x53, 0x43, 0x0c, 0x4a, 0x13, 0x60, 0x53, 0x7b, + 0x34, 0x02, 0x14, 0x60, 0x52, 0x7b, 0x88, 0x71, + 0x01, 0x33, 0x58, 0x10, 0x08, 0x4b, 0x80, 0x1a, + 0x01, 0x21, 0x49, 0x02, 0x58, 0x43, 0x00, 0x28, + 0x00, 0xda, 0x49, 0x42, 0x08, 0x18, 0x80, 0x12, + 0x21, 0x38, 0x70, 0xbd, 0x20, 0x10, 0x07, 0x00, + 0xec, 0x04, 0x00, 0x00, 0x00, 0xa0, 0x07, 0x00, + 0x03, 0x03, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x5b, + 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x06, 0x21, + 0x04, 0x30, 0xfa, 0xf7, 0x70, 0xfc, 0xff, 0x20, + 0x21, 0x30, 0xff, 0x21, 0x01, 0x55, 0x20, 0x1c, + 0xff, 0x30, 0x41, 0x30, 0x81, 0x70, 0x41, 0x71, + 0xc1, 0x73, 0xff, 0x20, 0x63, 0x30, 0x01, 0x55, + 0x00, 0x20, 0x20, 0x61, 0x60, 0x61, 0xff, 0x34, + 0x01, 0x34, 0xa0, 0x60, 0xe0, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x70, 0xb5, 0x06, 0x1c, 0x3c, 0x00, + 0xa4, 0x5b, 0x00, 0x00, 0x08, 0x1c, 0x58, 0x60, + 0x9a, 0x60, 0x1c, 0x1c, 0x1e, 0x60, 0x15, 0x1c, + 0x9b, 0x8a, 0xe2, 0x8a, 0x31, 0x1c, 0x02, 0xf0, + 0xa1, 0xfc, 0x28, 0x1a, 0xe0, 0x60, 0x70, 0xbd, + 0x70, 0xb5, 0x04, 0x1c, 0x08, 0x1c, 0x11, 0x1c, + 0x1e, 0x1c, 0x00, 0x25, 0xeb, 0x43, 0x22, 0x1c, + 0x18, 0x32, 0x0b, 0xf0, 0xf7, 0xfb, 0x22, 0x1c, + 0xff, 0x32, 0x50, 0x32, 0x11, 0x1c, 0x0a, 0x39, + 0x3c, 0x00, 0xe0, 0x5b, 0x00, 0x00, 0x01, 0x23, + 0x20, 0x1c, 0x00, 0xf0, 0xc6, 0xf8, 0x0c, 0x28, + 0x10, 0xd0, 0x01, 0x25, 0x20, 0x1c, 0x0b, 0xf0, + 0xac, 0xfa, 0x20, 0x1c, 0x00, 0xf0, 0x19, 0xf8, + 0x20, 0x1c, 0x00, 0xf0, 0x0a, 0xf8, 0x20, 0x1c, + 0x00, 0xf0, 0x29, 0xf8, 0x31, 0x1c, 0x20, 0x1c, + 0x0b, 0xf0, 0x17, 0xfa, 0x28, 0x1c, 0x70, 0xbd, + 0x00, 0x00, 0xff, 0x21, 0x1d, 0x31, 0x09, 0x58, + 0x80, 0x30, 0x3c, 0x00, 0x1c, 0x5c, 0x00, 0x00, + 0x89, 0x07, 0x00, 0x29, 0x01, 0xda, 0x01, 0x21, + 0x00, 0xe0, 0x00, 0x21, 0xc1, 0x62, 0x70, 0x47, + 0x01, 0x1c, 0x80, 0x31, 0x00, 0x22, 0x0a, 0x63, + 0x07, 0x4a, 0x12, 0x68, 0x00, 0x2a, 0x09, 0xd0, + 0x42, 0x88, 0x92, 0x06, 0x06, 0xd5, 0xff, 0x30, + 0x01, 0x30, 0xc0, 0x69, 0x40, 0x07, 0x01, 0xd4, + 0x01, 0x20, 0x08, 0x63, 0x70, 0x47, 0x00, 0x00, + 0xac, 0x69, 0x01, 0x00, 0x3c, 0x00, 0x58, 0x5c, + 0x00, 0x00, 0x80, 0xb5, 0x01, 0x1c, 0x4a, 0x88, + 0x00, 0x20, 0x52, 0x05, 0x05, 0xd5, 0xff, 0x31, + 0x01, 0x31, 0xc9, 0x69, 0x49, 0x07, 0x00, 0xd4, + 0x01, 0x20, 0x06, 0xf0, 0xec, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xf8, 0xb5, 0x05, 0x1c, 0x98, 0x68, + 0x17, 0x1c, 0x0e, 0x1c, 0x1c, 0x1c, 0x00, 0x28, + 0x02, 0xd1, 0x20, 0x1c, 0x0c, 0xf0, 0x31, 0xf8, + 0xab, 0x69, 0x39, 0x1c, 0x30, 0x1c, 0x3c, 0x00, + 0x94, 0x5c, 0x00, 0x00, 0xa2, 0x68, 0x0b, 0xf0, + 0x95, 0xfb, 0xf8, 0xbd, 0xf8, 0xb5, 0x16, 0x1c, + 0x0d, 0x1c, 0x1f, 0x1c, 0x00, 0x24, 0x02, 0xf0, + 0x61, 0xfb, 0x18, 0x23, 0x06, 0x49, 0x58, 0x43, + 0x40, 0x18, 0x43, 0x68, 0x00, 0x2b, 0x05, 0xd0, + 0x3a, 0x1c, 0x31, 0x1c, 0x28, 0x1c, 0xfa, 0xf7, + 0x8e, 0xfb, 0x01, 0x24, 0x20, 0x1c, 0xf8, 0xbd, + 0x94, 0x67, 0x01, 0x00, 0x80, 0xb5, 0x07, 0xf0, + 0x3c, 0x00, 0xd0, 0x5c, 0x00, 0x00, 0xc5, 0xfa, + 0x09, 0x49, 0x08, 0x61, 0x08, 0x68, 0x00, 0x28, + 0x02, 0xd1, 0x7d, 0x20, 0x00, 0x01, 0x08, 0x60, + 0x08, 0x68, 0x7d, 0x21, 0xc9, 0x00, 0x41, 0x43, + 0x00, 0x23, 0x01, 0x22, 0x0a, 0x20, 0x0d, 0xf0, + 0x4e, 0xfd, 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x67, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x21, 0x0a, 0x20, + 0x0d, 0xf0, 0x97, 0xfc, 0x80, 0xbd, 0xf8, 0xb5, + 0x0e, 0x1c, 0x3c, 0x00, 0x0c, 0x5d, 0x00, 0x00, + 0x51, 0x68, 0x14, 0x1c, 0x12, 0x68, 0xa5, 0x68, + 0x0b, 0x1c, 0x75, 0x1b, 0x57, 0x19, 0x97, 0x42, + 0x00, 0xd2, 0x01, 0x31, 0x42, 0x68, 0x00, 0x25, + 0x8a, 0x42, 0x02, 0xdd, 0x01, 0x25, 0x62, 0x60, + 0x05, 0xe0, 0x9a, 0x42, 0x03, 0xd1, 0x01, 0x68, + 0xb9, 0x42, 0x00, 0xd9, 0x01, 0x25, 0x00, 0x2d, + 0x09, 0xd0, 0x01, 0x68, 0x21, 0x60, 0xa6, 0x60, + 0xa3, 0x8a, 0xe2, 0x8a, 0x3c, 0x00, 0x48, 0x5d, + 0x00, 0x00, 0x60, 0x68, 0x02, 0xf0, 0xd7, 0xfb, + 0x30, 0x1a, 0xe0, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0xf0, 0x07, 0xfb, + 0x18, 0x23, 0x03, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x18, 0x21, 0xfa, 0xf7, 0x98, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x94, 0x67, 0x01, 0x00, 0xfe, 0xb5, + 0x04, 0x1c, 0x08, 0x1c, 0x11, 0x1c, 0x1e, 0x1c, + 0x0c, 0x25, 0x01, 0x22, 0x00, 0x92, 0x3c, 0x00, + 0x84, 0x5d, 0x00, 0x00, 0xa2, 0x69, 0x02, 0xab, + 0xfd, 0xf7, 0xf0, 0xf8, 0x00, 0x28, 0x45, 0xd0, + 0x02, 0x98, 0x27, 0x21, 0x02, 0x1c, 0x0a, 0x40, + 0x01, 0xd1, 0x08, 0x43, 0x02, 0x90, 0x21, 0x49, + 0xa0, 0x69, 0x08, 0x40, 0x06, 0xd0, 0x02, 0x98, + 0x01, 0x40, 0x03, 0xd1, 0x49, 0x21, 0xc9, 0x00, + 0x08, 0x43, 0x02, 0x90, 0xa0, 0x6d, 0x02, 0x99, + 0x88, 0x42, 0x30, 0xd0, 0x00, 0x2e, 0x2d, 0xd0, + 0x3c, 0x00, 0xc0, 0x5d, 0x00, 0x00, 0x40, 0x21, + 0x20, 0x1c, 0x58, 0x30, 0xfa, 0xf7, 0x69, 0xfb, + 0x02, 0x98, 0x00, 0x25, 0x00, 0x26, 0x37, 0x1c, + 0xa0, 0x65, 0x19, 0xe0, 0xc0, 0x07, 0x11, 0xd5, + 0xf0, 0x19, 0x00, 0x19, 0x70, 0x30, 0x05, 0x71, + 0x28, 0x1c, 0x04, 0xf0, 0xd4, 0xff, 0x00, 0x28, + 0x04, 0xd0, 0xa0, 0x19, 0x80, 0x30, 0x05, 0x72, + 0x01, 0x36, 0x03, 0xe0, 0xe0, 0x19, 0x60, 0x30, + 0x05, 0x70, 0x3c, 0x00, 0xfc, 0x5d, 0x00, 0x00, + 0x01, 0x37, 0x01, 0x35, 0x2d, 0x06, 0x02, 0x98, + 0x2d, 0x0e, 0x40, 0x08, 0x02, 0x90, 0x02, 0x98, + 0x00, 0x28, 0xe2, 0xd1, 0x84, 0x20, 0x06, 0x51, + 0xf0, 0x19, 0x20, 0x67, 0xe7, 0x65, 0x00, 0x25, + 0x00, 0xe0, 0x0b, 0x25, 0x28, 0x1c, 0xfe, 0xbd, + 0xd8, 0x3a, 0x00, 0x00, 0x38, 0xb5, 0x05, 0x1c, + 0x08, 0x1c, 0x11, 0x1c, 0x00, 0x24, 0xe2, 0x43, + 0x6b, 0x46, 0xff, 0xf7, 0x3c, 0x00, 0x38, 0x5e, + 0x00, 0x00, 0x4f, 0xfa, 0x00, 0x28, 0x05, 0xd0, + 0xa8, 0x69, 0x00, 0x99, 0x01, 0x40, 0x81, 0x42, + 0x00, 0xd1, 0x01, 0x24, 0x20, 0x1c, 0x38, 0xbd, + 0x00, 0x00, 0x7c, 0xb5, 0x05, 0x6a, 0x86, 0x69, + 0x04, 0x1c, 0xc0, 0x68, 0xfb, 0xf7, 0xb7, 0xfb, + 0xe1, 0x69, 0xfb, 0xf7, 0xda, 0xfa, 0x20, 0x1c, + 0xe2, 0x69, 0x40, 0x30, 0xc1, 0x8b, 0x12, 0x89, + 0x89, 0x18, 0xc1, 0x83, 0x06, 0x49, 0x3c, 0x00, + 0x74, 0x5e, 0x00, 0x00, 0x01, 0x94, 0x00, 0x91, + 0x28, 0x69, 0x33, 0x1c, 0x82, 0x88, 0x01, 0x68, + 0xe0, 0x68, 0xc0, 0x68, 0x00, 0xf0, 0xf2, 0xf9, + 0x7c, 0xbd, 0x00, 0x00, 0x91, 0x5e, 0x00, 0x00, + 0xb0, 0xb5, 0xd1, 0x68, 0x55, 0x69, 0xc8, 0x68, + 0x14, 0x1c, 0x14, 0x4b, 0x0c, 0xe0, 0x02, 0x68, + 0x9a, 0x42, 0x07, 0xd1, 0xc2, 0x68, 0xca, 0x60, + 0x00, 0x21, 0xc1, 0x60, 0x01, 0x60, 0xfb, 0xf7, + 0x3c, 0x00, 0xb0, 0x5e, 0x00, 0x00, 0x73, 0xfb, + 0x03, 0xe0, 0x01, 0x1c, 0xc0, 0x68, 0x00, 0x28, + 0xf0, 0xd1, 0xe0, 0x68, 0xc0, 0x68, 0xe8, 0x60, + 0xe0, 0x68, 0xc5, 0x60, 0x20, 0x1c, 0x40, 0x30, + 0xc1, 0x8b, 0x2a, 0x89, 0x89, 0x18, 0xc1, 0x83, + 0x20, 0x68, 0x00, 0x28, 0x02, 0xd0, 0xff, 0xf7, + 0xba, 0xff, 0xb0, 0xbd, 0x04, 0x48, 0x04, 0xf0, + 0x4e, 0xf9, 0x00, 0x6a, 0x07, 0xf0, 0x77, 0xfa, + 0xb0, 0xbd, 0x3c, 0x00, 0xec, 0x5e, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0xa0, 0x6a, 0x01, 0x00, + 0xf1, 0xb5, 0x82, 0xb0, 0x02, 0x98, 0x06, 0x69, + 0x01, 0x1c, 0x08, 0x36, 0x60, 0x31, 0x45, 0x68, + 0x01, 0x91, 0x82, 0xe0, 0x10, 0x21, 0x00, 0x20, + 0x2f, 0x69, 0xfb, 0xf7, 0x63, 0xfb, 0x68, 0x61, + 0x01, 0x89, 0x08, 0x39, 0x09, 0x04, 0x09, 0x0c, + 0x01, 0x81, 0x68, 0x69, 0x00, 0x68, 0x40, 0x18, + 0x08, 0x21, 0xfb, 0xf7, 0x3c, 0x00, 0x28, 0x5f, + 0x00, 0x00, 0x57, 0xfb, 0xe8, 0x61, 0x68, 0x69, + 0x71, 0x88, 0x00, 0x68, 0x20, 0x22, 0x01, 0x80, + 0x71, 0x68, 0x41, 0x60, 0x01, 0x99, 0x49, 0x7b, + 0x89, 0x01, 0x11, 0x43, 0xc1, 0x70, 0x00, 0x21, + 0x81, 0x70, 0x28, 0x20, 0xfb, 0xf7, 0x75, 0xfc, + 0x39, 0x88, 0x04, 0x1c, 0xc1, 0x81, 0xa8, 0x6b, + 0x00, 0x28, 0x03, 0xd1, 0x01, 0x20, 0x80, 0x02, + 0x08, 0x43, 0xe0, 0x81, 0x06, 0x22, 0x3c, 0x00, + 0x64, 0x5f, 0x00, 0x00, 0x39, 0x1d, 0x20, 0x1c, + 0x10, 0x30, 0xfa, 0xf7, 0xc5, 0xfa, 0x39, 0x1c, + 0x0a, 0x31, 0x06, 0x22, 0x20, 0x1c, 0x16, 0x30, + 0x00, 0x90, 0xfa, 0xf7, 0xbd, 0xfa, 0x39, 0x1c, + 0x10, 0x31, 0x06, 0x22, 0x20, 0x1c, 0x1c, 0x30, + 0xfa, 0xf7, 0xb6, 0xfa, 0xe1, 0x89, 0x25, 0x4a, + 0x5c, 0x20, 0x11, 0x40, 0x01, 0x22, 0x92, 0x03, + 0x11, 0x43, 0x40, 0x5b, 0xe1, 0x81, 0x0f, 0x21, + 0x3c, 0x00, 0xa0, 0x5f, 0x00, 0x00, 0x08, 0x40, + 0x60, 0x84, 0x20, 0x1c, 0x20, 0x30, 0x16, 0x21, + 0x81, 0x71, 0x00, 0x21, 0x21, 0x70, 0xe9, 0x6b, + 0x00, 0x29, 0x07, 0xd0, 0x29, 0x69, 0x09, 0x8b, + 0x09, 0x07, 0x09, 0x0f, 0x21, 0x70, 0xa1, 0x84, + 0x18, 0x21, 0x81, 0x71, 0x06, 0x22, 0x60, 0x1c, + 0x00, 0x99, 0xfa, 0xf7, 0x94, 0xfa, 0x70, 0x68, + 0x00, 0x0e, 0xe0, 0x71, 0x70, 0x68, 0x00, 0x02, + 0x00, 0x0e, 0x3c, 0x00, 0xdc, 0x5f, 0x00, 0x00, + 0x20, 0x72, 0x70, 0x68, 0x00, 0x04, 0x00, 0x0e, + 0x60, 0x72, 0x70, 0x68, 0xa0, 0x72, 0x70, 0x88, + 0x00, 0x0a, 0xe0, 0x72, 0x70, 0x88, 0x20, 0x73, + 0x70, 0x88, 0x01, 0x30, 0x00, 0x04, 0x00, 0x0c, + 0x70, 0x80, 0x02, 0xd1, 0x70, 0x68, 0x01, 0x30, + 0x70, 0x60, 0xac, 0x61, 0x02, 0x98, 0x28, 0x62, + 0x2d, 0x68, 0x00, 0x2d, 0x00, 0xd0, 0x79, 0xe7, + 0x02, 0x98, 0x04, 0x49, 0x3c, 0x00, 0x18, 0x60, + 0x00, 0x00, 0x42, 0x68, 0x04, 0x48, 0x04, 0xf0, + 0x74, 0xf8, 0xfe, 0xbd, 0x00, 0x00, 0x8f, 0xc7, + 0xff, 0xff, 0x3d, 0xda, 0x00, 0x00, 0xa0, 0x6a, + 0x01, 0x00, 0xb0, 0xb5, 0x07, 0x4d, 0x28, 0x78, + 0x03, 0x28, 0x08, 0xd0, 0x00, 0x24, 0x2c, 0x70, + 0x69, 0x68, 0x00, 0x29, 0x03, 0xd0, 0x01, 0x20, + 0xfa, 0xf7, 0xc8, 0xf9, 0x6c, 0x60, 0xb0, 0xbd, + 0x00, 0x00, 0x9c, 0x73, 0x01, 0x00, 0x3c, 0x00, + 0x54, 0x60, 0x00, 0x00, 0xf8, 0xb5, 0x2b, 0x4b, + 0xd8, 0x6a, 0x00, 0x28, 0x50, 0xd0, 0x2a, 0x48, + 0x01, 0x1c, 0xff, 0x31, 0x01, 0x31, 0xca, 0x68, + 0x01, 0x32, 0xca, 0x60, 0x1a, 0x6c, 0x00, 0x2a, + 0x02, 0xd1, 0x4a, 0x69, 0x01, 0x32, 0x4a, 0x61, + 0x0a, 0x69, 0x01, 0x32, 0x0a, 0x61, 0xda, 0x68, + 0x00, 0x2a, 0x04, 0xd0, 0x1f, 0x4a, 0x01, 0x32, + 0x12, 0x78, 0x00, 0x2a, 0x02, 0xd1, 0x8a, 0x69, + 0x3c, 0x00, 0x90, 0x60, 0x00, 0x00, 0x01, 0x32, + 0x8a, 0x61, 0x00, 0x25, 0x07, 0x1d, 0x18, 0x26, + 0x1a, 0x4a, 0x6e, 0x43, 0x74, 0x32, 0x90, 0x59, + 0x00, 0x28, 0x29, 0xd0, 0xb4, 0x18, 0x60, 0x69, + 0x00, 0x28, 0x25, 0xd1, 0x60, 0x68, 0x00, 0x28, + 0x02, 0xd0, 0x01, 0x68, 0x00, 0x29, 0x05, 0xd1, + 0xa1, 0x68, 0x00, 0x29, 0x1c, 0xd0, 0x09, 0x68, + 0x00, 0x29, 0x19, 0xd0, 0x00, 0x28, 0x05, 0xd0, + 0xe1, 0x68, 0x3c, 0x00, 0xcc, 0x60, 0x00, 0x00, + 0x01, 0x31, 0xe1, 0x60, 0x00, 0x68, 0x81, 0x42, + 0x11, 0xd3, 0xa0, 0x68, 0x00, 0x28, 0x06, 0xd0, + 0x21, 0x69, 0x00, 0x68, 0x08, 0x18, 0x0c, 0xf0, + 0xa3, 0xfd, 0x00, 0x28, 0x07, 0xd0, 0x06, 0x4a, + 0x01, 0x20, 0x60, 0x61, 0x74, 0x32, 0x91, 0x59, + 0x38, 0x1c, 0xfa, 0xf7, 0x70, 0xf9, 0x01, 0x35, + 0x02, 0x2d, 0xcb, 0xdb, 0xf8, 0xbd, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x3c, 0x00, 0x08, 0x61, + 0x00, 0x00, 0xf4, 0x67, 0x01, 0x00, 0xf8, 0xb5, + 0x0f, 0x1c, 0x00, 0x25, 0x04, 0x1c, 0x00, 0x28, + 0x25, 0xd0, 0x20, 0x1c, 0x04, 0xf0, 0x03, 0xfe, + 0x00, 0x28, 0x06, 0xd0, 0xff, 0xf7, 0xff, 0xf8, + 0x04, 0x1c, 0xff, 0xf7, 0x50, 0xfb, 0x06, 0x1c, + 0x07, 0xe0, 0x20, 0x1c, 0xff, 0xf7, 0x91, 0xfb, + 0x06, 0x1c, 0x20, 0x1c, 0xff, 0xf7, 0x6f, 0xfb, + 0x04, 0x1c, 0x00, 0x2e, 0x06, 0xd0, 0x3c, 0x00, + 0x44, 0x61, 0x00, 0x00, 0xff, 0xf7, 0x4c, 0xfb, + 0x00, 0x28, 0x02, 0xd0, 0x01, 0x25, 0x01, 0x20, + 0x07, 0xe0, 0x00, 0x2c, 0x06, 0xd0, 0xff, 0xf7, + 0xef, 0xf8, 0x00, 0x28, 0x02, 0xd0, 0x01, 0x25, + 0x00, 0x20, 0x38, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0xb0, 0xb5, 0xc5, 0x68, 0x04, 0x1c, 0x0d, 0xf0, + 0x8f, 0xfc, 0x20, 0x7e, 0xc1, 0x07, 0x08, 0xd5, + 0xe1, 0x68, 0xa9, 0x42, 0x05, 0xd9, 0x22, 0x69, + 0x3c, 0x00, 0x80, 0x61, 0x00, 0x00, 0x91, 0x42, + 0x02, 0xd3, 0xe1, 0x8a, 0x01, 0x31, 0xe1, 0x82, + 0x81, 0x07, 0x08, 0xd5, 0xe1, 0x68, 0xa9, 0x42, + 0x05, 0xd2, 0x22, 0x69, 0x91, 0x42, 0x02, 0xd8, + 0xe1, 0x8a, 0x01, 0x31, 0xe1, 0x82, 0x40, 0x07, + 0x06, 0xd5, 0xe0, 0x68, 0x21, 0x69, 0x88, 0x42, + 0x02, 0xd1, 0xe0, 0x8a, 0x01, 0x30, 0xe0, 0x82, + 0xe0, 0x8a, 0xa1, 0x8a, 0x88, 0x42, 0x0d, 0xd3, + 0x60, 0x7e, 0x3c, 0x00, 0xbc, 0x61, 0x00, 0x00, + 0x02, 0x28, 0x0b, 0xd0, 0x20, 0x68, 0xe1, 0x68, + 0x04, 0x22, 0x07, 0xf0, 0x65, 0xfb, 0x60, 0x7e, + 0x00, 0x28, 0x03, 0xd1, 0x20, 0x68, 0x08, 0xf0, + 0xab, 0xff, 0xb0, 0xbd, 0x00, 0x20, 0xe0, 0x82, + 0xb0, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x06, 0x1c, + 0x0c, 0x23, 0x20, 0x49, 0x58, 0x43, 0x45, 0x18, + 0x00, 0x20, 0xa8, 0x60, 0x30, 0x1c, 0x06, 0xf0, + 0x91, 0xfe, 0x04, 0x1c, 0x3c, 0x00, 0xf8, 0x61, + 0x00, 0x00, 0x68, 0x60, 0x33, 0xd0, 0x01, 0x20, + 0xa8, 0x70, 0x2c, 0x20, 0x00, 0x5d, 0x02, 0x28, + 0x03, 0xd1, 0x20, 0x1c, 0x03, 0xf0, 0x45, 0xfe, + 0x10, 0xe0, 0x61, 0x6b, 0x00, 0x29, 0x0a, 0xd0, + 0x01, 0x28, 0x04, 0xd1, 0x21, 0x1c, 0x28, 0x1c, + 0x03, 0xf0, 0x55, 0xfe, 0x06, 0xe0, 0x20, 0x1c, + 0x0a, 0xf0, 0x0d, 0xfc, 0x02, 0xe0, 0x20, 0x1c, + 0x0a, 0xf0, 0x3d, 0xfb, 0x0d, 0x48, 0x3c, 0x00, + 0x34, 0x62, 0x00, 0x00, 0x14, 0x38, 0x41, 0x68, + 0x00, 0x29, 0x10, 0xd0, 0x20, 0x1c, 0x40, 0x30, + 0x02, 0x8b, 0x12, 0x07, 0x92, 0x0f, 0x01, 0x2a, + 0x09, 0xd0, 0x80, 0x8b, 0x32, 0x02, 0x00, 0x09, + 0x00, 0x04, 0x10, 0x43, 0x81, 0x22, 0x02, 0x43, + 0x0c, 0x20, 0x0d, 0xf0, 0xb7, 0xf9, 0x0c, 0xf0, + 0xa5, 0xfd, 0x60, 0x64, 0x70, 0xbd, 0x00, 0x00, + 0x60, 0x7b, 0x01, 0x00, 0xff, 0xb5, 0x08, 0x1c, + 0x3c, 0x00, 0x70, 0x62, 0x00, 0x00, 0x11, 0x1c, + 0x0c, 0x32, 0x20, 0x24, 0x14, 0x43, 0x0c, 0x4a, + 0x83, 0xb0, 0x0c, 0xae, 0x52, 0x68, 0x60, 0xce, + 0x94, 0x70, 0x00, 0x24, 0xd4, 0x70, 0x93, 0x63, + 0x0d, 0x23, 0x40, 0x27, 0xbb, 0x52, 0x94, 0x61, + 0x14, 0x84, 0x01, 0x22, 0x02, 0x92, 0x32, 0x1c, + 0x00, 0x90, 0x01, 0x91, 0x23, 0x1c, 0x29, 0x1c, + 0x03, 0x98, 0x00, 0xf0, 0x66, 0xf9, 0x07, 0xb0, + 0xf0, 0xbd, 0x3c, 0x00, 0xac, 0x62, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x00, 0x27, 0x11, 0x4e, 0x1d, 0xe0, 0xe0, 0x68, + 0x00, 0x28, 0x70, 0x68, 0x0c, 0xd1, 0x80, 0x88, + 0x00, 0x07, 0x0d, 0xd1, 0x01, 0x21, 0x0c, 0x48, + 0xfb, 0xf7, 0x84, 0xf9, 0xc4, 0x60, 0xe8, 0x60, + 0x70, 0x68, 0x81, 0x88, 0x01, 0x31, 0x02, 0xe0, + 0x81, 0x88, 0x22, 0x89, 0x89, 0x18, 0x81, 0x80, + 0xe0, 0x68, 0x39, 0x1c, 0x3c, 0x00, 0xe8, 0x62, + 0x00, 0x00, 0x00, 0x28, 0x01, 0xd1, 0x71, 0x68, + 0xc9, 0x6d, 0x25, 0x1c, 0x61, 0x60, 0x04, 0x1c, + 0x00, 0x2c, 0xdf, 0xd1, 0xf8, 0xbd, 0xa0, 0x7e, + 0x01, 0x00, 0x06, 0x49, 0x10, 0xb5, 0x49, 0x68, + 0x00, 0x23, 0x05, 0xe0, 0x8a, 0x88, 0x04, 0x89, + 0x12, 0x19, 0x8a, 0x80, 0x43, 0x60, 0xc0, 0x68, + 0x00, 0x28, 0xf7, 0xd1, 0x10, 0xbd, 0xa0, 0x7e, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x49, 0x3c, 0x00, + 0x24, 0x63, 0x00, 0x00, 0x00, 0x24, 0x49, 0x68, + 0x0a, 0xe0, 0x8a, 0x88, 0x03, 0x89, 0xd2, 0x18, + 0x8a, 0x80, 0xc3, 0x68, 0x22, 0x1c, 0x00, 0x2b, + 0x00, 0xd1, 0xca, 0x6d, 0x42, 0x60, 0x18, 0x1c, + 0x00, 0x28, 0xf2, 0xd1, 0x10, 0xbd, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x01, 0x1c, 0x13, 0x48, + 0x10, 0xb5, 0x40, 0x68, 0x00, 0x23, 0x09, 0xe0, + 0x82, 0x88, 0x0c, 0x89, 0x12, 0x19, 0x82, 0x80, + 0x3c, 0x00, 0x60, 0x63, 0x00, 0x00, 0x4b, 0x60, + 0xca, 0x68, 0x00, 0x2a, 0x00, 0xd1, 0x41, 0x66, + 0xc9, 0x68, 0x00, 0x29, 0xf3, 0xd1, 0x01, 0x1c, + 0x68, 0x31, 0x81, 0x64, 0xc3, 0x64, 0x43, 0x65, + 0x82, 0x88, 0x08, 0x23, 0x11, 0x1c, 0x08, 0x31, + 0x89, 0x07, 0x89, 0x0f, 0x59, 0x1a, 0x50, 0x23, + 0x19, 0x52, 0x51, 0x18, 0x81, 0x80, 0x01, 0x1c, + 0x40, 0x6e, 0x48, 0x31, 0xc1, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x63, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x10, 0xb5, 0x07, 0x49, + 0x00, 0x24, 0x4b, 0x68, 0x06, 0xe0, 0xc2, 0x68, + 0x21, 0x1c, 0x00, 0x2a, 0x00, 0xd1, 0xd9, 0x6d, + 0x41, 0x60, 0x10, 0x1c, 0x00, 0x28, 0xf6, 0xd1, + 0x10, 0xbd, 0x00, 0x00, 0xa0, 0x7e, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xfe, 0xb5, 0x06, 0x1c, + 0x0c, 0x48, 0x0c, 0x1c, 0x40, 0x68, 0x80, 0x21, + 0x81, 0x70, 0x00, 0x21, 0x3c, 0x00, 0xd8, 0x63, + 0x00, 0x00, 0xc1, 0x70, 0x15, 0x1c, 0x40, 0x22, + 0x81, 0x63, 0x11, 0x52, 0x81, 0x61, 0x01, 0x84, + 0x00, 0x20, 0x04, 0x22, 0x02, 0x92, 0x00, 0x90, + 0x01, 0x91, 0x29, 0x1c, 0x20, 0x1c, 0x1a, 0x1c, + 0x33, 0x1c, 0x00, 0xf0, 0xbc, 0xf8, 0xfe, 0xbd, + 0x00, 0x00, 0xa0, 0x7e, 0x01, 0x00, 0x70, 0xb5, + 0x06, 0x1c, 0x17, 0x48, 0x80, 0x78, 0x02, 0x21, + 0x16, 0x4a, 0x88, 0x43, 0x90, 0x70, 0x3c, 0x00, + 0x14, 0x64, 0x00, 0x00, 0x10, 0x1c, 0x80, 0x78, + 0x08, 0x43, 0x11, 0x1c, 0x88, 0x70, 0x13, 0x48, + 0x00, 0x24, 0xc4, 0x70, 0x70, 0x20, 0xfb, 0xf7, + 0xd9, 0xf9, 0x11, 0x4d, 0x70, 0x21, 0x68, 0x60, + 0xfa, 0xf7, 0x34, 0xf8, 0x30, 0x07, 0x00, 0x0f, + 0x69, 0x68, 0x90, 0x30, 0xc8, 0x65, 0x0d, 0x48, + 0x68, 0x22, 0x08, 0x80, 0x08, 0x1c, 0x28, 0x30, + 0x89, 0x60, 0x48, 0x61, 0x08, 0x20, 0x08, 0x82, + 0x3c, 0x00, 0x50, 0x64, 0x00, 0x00, 0x08, 0x1c, + 0x38, 0x30, 0x48, 0x63, 0x20, 0x38, 0x48, 0x64, + 0x5a, 0x20, 0x50, 0x54, 0x06, 0x48, 0x08, 0x31, + 0x41, 0x64, 0x44, 0x65, 0x70, 0xbd, 0x00, 0x00, + 0x07, 0x00, 0x58, 0x00, 0x07, 0x00, 0xa0, 0x7e, + 0x01, 0x00, 0xde, 0xc0, 0x00, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x0a, 0x4b, 0x10, 0xb5, 0x58, 0x6d, + 0x0a, 0x49, 0x00, 0x22, 0x49, 0x68, 0x00, 0x24, + 0x4a, 0x62, 0x3c, 0x00, 0x8c, 0x64, 0x00, 0x00, + 0x5c, 0x65, 0x4b, 0x6e, 0x00, 0x2b, 0x01, 0xd0, + 0xda, 0x60, 0x4a, 0x66, 0x8b, 0x6d, 0x00, 0x2b, + 0x03, 0xd0, 0x0a, 0x6e, 0x00, 0x21, 0xf9, 0xf7, + 0x9c, 0xff, 0x10, 0xbd, 0x00, 0x30, 0x07, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x09, 0x49, 0x10, 0xb5, + 0x08, 0x88, 0x01, 0x30, 0x08, 0x80, 0x01, 0x20, + 0x07, 0x49, 0x80, 0x02, 0x08, 0x60, 0x07, 0x4c, + 0xa2, 0x6d, 0x00, 0x2a, 0x3c, 0x00, 0xc8, 0x64, + 0x00, 0x00, 0x05, 0xd0, 0x05, 0x21, 0xd1, 0x20, + 0x0d, 0xf0, 0x6f, 0xf9, 0x01, 0x20, 0xa0, 0x65, + 0x10, 0xbd, 0xb0, 0x74, 0x01, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, 0xff, 0xb5, + 0x83, 0xb0, 0x0c, 0xae, 0x86, 0x46, 0x8c, 0x46, + 0x0e, 0x4a, 0x43, 0xce, 0x0f, 0xad, 0x0f, 0x1c, + 0x52, 0x68, 0x0c, 0x37, 0x30, 0xcd, 0x97, 0x70, + 0xd3, 0x70, 0x96, 0x63, 0x0d, 0x26, 0x3c, 0x00, + 0x04, 0x65, 0x00, 0x00, 0x40, 0x27, 0xbe, 0x52, + 0x05, 0x9e, 0x96, 0x61, 0x13, 0x84, 0x00, 0x22, + 0x02, 0x92, 0x2a, 0x1c, 0x00, 0x90, 0x01, 0x91, + 0x21, 0x1c, 0x60, 0x46, 0x73, 0x46, 0x00, 0xf0, + 0x29, 0xf8, 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0xff, 0xb5, 0x10, 0x1c, + 0x1a, 0x1c, 0x0c, 0x1c, 0x19, 0x1c, 0x60, 0x23, + 0xff, 0x32, 0x13, 0x43, 0x0c, 0x4a, 0x83, 0xb0, + 0x3c, 0x00, 0x40, 0x65, 0x00, 0x00, 0x0c, 0xae, + 0x52, 0x68, 0x60, 0xce, 0x93, 0x70, 0x00, 0x23, + 0xd3, 0x70, 0x93, 0x63, 0x40, 0x27, 0xbb, 0x52, + 0x93, 0x61, 0x13, 0x84, 0x03, 0x22, 0x02, 0x92, + 0x01, 0x91, 0x29, 0x1c, 0x32, 0x1c, 0x00, 0x90, + 0x20, 0x1c, 0x03, 0x9b, 0x00, 0xf0, 0x05, 0xf8, + 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xa0, 0x7e, + 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x1c, 0x11, 0x48, + 0x1c, 0x1c, 0x3c, 0x00, 0x7c, 0x65, 0x00, 0x00, + 0x08, 0x9b, 0x07, 0x9f, 0x40, 0x68, 0xde, 0x00, + 0x81, 0x65, 0x02, 0x66, 0x00, 0x21, 0x81, 0x80, + 0x0d, 0x48, 0x81, 0x59, 0x20, 0x1c, 0xf9, 0xf7, + 0x22, 0xff, 0x0b, 0x48, 0x30, 0x18, 0x41, 0x68, + 0x28, 0x1c, 0xf9, 0xf7, 0x1c, 0xff, 0x07, 0x49, + 0x06, 0x98, 0x49, 0x68, 0x00, 0x2c, 0x88, 0x62, + 0x0f, 0x86, 0x00, 0xd1, 0x2c, 0x1c, 0x05, 0x48, + 0x4c, 0x62, 0x45, 0x65, 0x3c, 0x00, 0xb8, 0x65, + 0x00, 0x00, 0x01, 0x21, 0x01, 0x65, 0x01, 0x64, + 0xf8, 0xbd, 0xa0, 0x7e, 0x01, 0x00, 0x90, 0x52, + 0x01, 0x00, 0x00, 0x30, 0x07, 0x00, 0xff, 0xb5, + 0x83, 0xb0, 0x0d, 0xae, 0x60, 0xce, 0x0c, 0x9f, + 0x08, 0x1c, 0x11, 0x1c, 0xd2, 0x19, 0xff, 0x32, + 0x40, 0x24, 0x14, 0x43, 0x0b, 0x4a, 0x52, 0x68, + 0x94, 0x70, 0x00, 0x24, 0xd4, 0x70, 0x93, 0x63, + 0x40, 0x23, 0x9f, 0x52, 0x94, 0x61, 0x3c, 0x00, + 0xf4, 0x65, 0x00, 0x00, 0x14, 0x84, 0x02, 0x22, + 0x02, 0x92, 0x32, 0x1c, 0x00, 0x90, 0x01, 0x91, + 0x23, 0x1c, 0x29, 0x1c, 0x03, 0x98, 0xff, 0xf7, + 0xb5, 0xff, 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xa0, 0x7e, 0x01, 0x00, 0x4c, 0x21, 0x0d, 0x4a, + 0x41, 0x43, 0x10, 0xb5, 0x8c, 0x18, 0x0c, 0x49, + 0x09, 0x78, 0x88, 0x42, 0x07, 0xd1, 0x05, 0xf0, + 0xc7, 0xfd, 0x0a, 0x48, 0x01, 0x88, 0x01, 0x22, + 0x3c, 0x00, 0x30, 0x66, 0x00, 0x00, 0x12, 0x03, + 0x91, 0x43, 0x01, 0x80, 0x20, 0x1c, 0x30, 0x30, + 0x0c, 0x23, 0xc1, 0x56, 0x40, 0x7b, 0x81, 0x42, + 0x02, 0xdd, 0x20, 0x8d, 0x0c, 0xf0, 0xe5, 0xfb, + 0x10, 0xbd, 0x58, 0xe3, 0x01, 0x00, 0x3c, 0x7c, + 0x01, 0x00, 0x32, 0x80, 0x07, 0x00, 0x01, 0x1c, + 0x60, 0x31, 0x80, 0xb5, 0xca, 0x79, 0x8b, 0x79, + 0x9a, 0x42, 0x07, 0xd9, 0x48, 0x7a, 0x0c, 0x23, + 0x07, 0x49, 0x3c, 0x00, 0x6c, 0x66, 0x00, 0x00, + 0x58, 0x43, 0x08, 0x5a, 0x0c, 0xf0, 0xd0, 0xfb, + 0x80, 0xbd, 0x20, 0x30, 0x00, 0x7b, 0x01, 0x28, + 0xfa, 0xd1, 0x48, 0x7a, 0x05, 0xf0, 0x40, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x1c, 0x21, 0xf9, 0xf7, + 0x03, 0xff, 0x03, 0x48, 0xa0, 0x80, 0xe0, 0x80, + 0x20, 0x81, 0x60, 0x81, 0xa0, 0x81, 0x10, 0xbd, + 0xff, 0xff, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x66, + 0x00, 0x00, 0xff, 0xb5, 0x04, 0x1c, 0x00, 0x20, + 0x83, 0xb0, 0x0d, 0x1c, 0x06, 0x2c, 0x02, 0x90, + 0x38, 0xd2, 0x1f, 0x4a, 0xff, 0x26, 0xc1, 0x00, + 0x89, 0x18, 0x89, 0x78, 0xa1, 0x42, 0x03, 0xd1, + 0xc0, 0x00, 0x80, 0x18, 0x46, 0x78, 0x04, 0xe0, + 0x01, 0x30, 0x00, 0x06, 0x00, 0x16, 0x06, 0x28, + 0xf1, 0xdb, 0xff, 0x2e, 0x24, 0xd0, 0x01, 0x93, + 0x20, 0x1c, 0x0d, 0xf0, 0xe8, 0xf9, 0x3c, 0x00, + 0xe4, 0x66, 0x00, 0x00, 0x00, 0x28, 0x05, 0xd0, + 0x24, 0x21, 0x28, 0x1c, 0x01, 0xab, 0x02, 0xaa, + 0xfa, 0xf7, 0x30, 0xfe, 0x10, 0x49, 0xf0, 0x00, + 0x30, 0x39, 0x0f, 0x58, 0x31, 0x06, 0x09, 0x16, + 0x28, 0x1c, 0x05, 0x9a, 0x01, 0x9b, 0xf9, 0xf7, + 0x6e, 0xfe, 0x06, 0x1c, 0x10, 0xd1, 0x20, 0x1c, + 0x0d, 0xf0, 0xd0, 0xf9, 0x00, 0x28, 0x0b, 0xd0, + 0x28, 0x1c, 0x69, 0x69, 0xfa, 0xf7, 0x12, 0xfe, + 0x3c, 0x00, 0x20, 0x67, 0x00, 0x00, 0x02, 0x98, + 0x68, 0x61, 0x04, 0xe0, 0x06, 0x2c, 0x01, 0xd3, + 0x07, 0x26, 0x00, 0xe0, 0x08, 0x26, 0x30, 0x1c, + 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xcc, 0x5a, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x1c, 0x09, 0xf0, + 0x86, 0xf8, 0x00, 0x28, 0x02, 0xd0, 0x20, 0x1c, + 0x09, 0xf0, 0xb5, 0xf8, 0x10, 0xbd, 0xfe, 0xb5, + 0x13, 0x4d, 0x04, 0x1c, 0xae, 0x69, 0x00, 0x2e, + 0x1c, 0xd0, 0x3c, 0x00, 0x5c, 0x67, 0x00, 0x00, + 0x10, 0x4f, 0x30, 0x37, 0x78, 0x68, 0x60, 0x43, + 0x01, 0x1c, 0x28, 0x88, 0xf9, 0xf7, 0xd2, 0xff, + 0x39, 0x68, 0x61, 0x43, 0x41, 0x18, 0x01, 0xa8, + 0x32, 0x1c, 0xf9, 0xf7, 0x37, 0xfe, 0x02, 0x98, + 0x29, 0x6a, 0x40, 0x18, 0x28, 0x62, 0x0b, 0xd4, + 0xe9, 0x69, 0x88, 0x42, 0x08, 0xd9, 0xa9, 0x69, + 0x40, 0x1a, 0x28, 0x62, 0x01, 0x98, 0x01, 0x30, + 0x01, 0xe0, 0x00, 0x20, 0x3c, 0x00, 0x98, 0x67, + 0x00, 0x00, 0x02, 0x90, 0x01, 0x90, 0x01, 0x98, + 0xfe, 0xbd, 0xc8, 0x74, 0x01, 0x00, 0xf8, 0xb5, + 0x00, 0x28, 0x28, 0xd0, 0x00, 0x24, 0x14, 0x4d, + 0x00, 0xe0, 0x01, 0x34, 0x61, 0x00, 0x09, 0x19, + 0x49, 0x19, 0x49, 0x78, 0x00, 0x29, 0xf8, 0xd1, + 0x63, 0x00, 0x1b, 0x19, 0x03, 0x33, 0x07, 0x22, + 0x69, 0x46, 0x03, 0xf0, 0xd4, 0xfb, 0x00, 0x2c, + 0x0f, 0xd0, 0x00, 0x20, 0x00, 0x99, 0x3c, 0x00, + 0xd4, 0x67, 0x00, 0x00, 0x0a, 0xe0, 0x42, 0x00, + 0x12, 0x18, 0xae, 0x5c, 0x53, 0x18, 0x52, 0x19, + 0x5e, 0x71, 0x56, 0x78, 0x01, 0x30, 0x9e, 0x71, + 0x92, 0x78, 0xda, 0x71, 0xa0, 0x42, 0xf2, 0xdb, + 0x00, 0x98, 0x03, 0x22, 0x02, 0x30, 0x03, 0x49, + 0xf9, 0xf7, 0x7e, 0xfe, 0xf8, 0xbd, 0x00, 0x00, + 0xeb, 0x62, 0x01, 0x00, 0xe8, 0x62, 0x01, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x08, 0x1c, 0xfa, 0xf7, + 0x3c, 0x00, 0x10, 0x68, 0x00, 0x00, 0x9d, 0xff, + 0x04, 0x1c, 0x28, 0x1c, 0xfa, 0xf7, 0xd9, 0xfe, + 0x21, 0x1c, 0xfa, 0xf7, 0xfc, 0xfd, 0x20, 0x1c, + 0xb0, 0xbd, 0xf3, 0xb5, 0x44, 0x48, 0x0c, 0x1c, + 0x00, 0x78, 0x81, 0xb0, 0x01, 0x28, 0x72, 0xd1, + 0xfa, 0xf7, 0x82, 0xf8, 0x41, 0x4d, 0xe8, 0x6a, + 0x41, 0x49, 0x08, 0x60, 0xe8, 0x6b, 0x48, 0x60, + 0x40, 0x48, 0xfa, 0xf7, 0xa6, 0xf9, 0xe8, 0x6a, + 0x00, 0x28, 0x3c, 0x00, 0x4c, 0x68, 0x00, 0x00, + 0xfc, 0xda, 0x22, 0x1c, 0x0f, 0x20, 0x01, 0x99, + 0x0a, 0xf0, 0xa4, 0xf8, 0x38, 0x4d, 0x02, 0x27, + 0x2f, 0x63, 0x38, 0x4a, 0x64, 0x26, 0x00, 0x20, + 0xaa, 0x21, 0x08, 0x32, 0x13, 0x18, 0x01, 0x30, + 0x00, 0x04, 0x00, 0x0c, 0x64, 0x28, 0x19, 0x74, + 0xf8, 0xd3, 0x16, 0x81, 0x00, 0x20, 0x50, 0x60, + 0x10, 0x1c, 0x10, 0x30, 0x10, 0x60, 0x00, 0x25, + 0x17, 0x1c, 0xd2, 0x60, 0x3c, 0x00, 0x88, 0x68, + 0x00, 0x00, 0x08, 0xe0, 0x28, 0x1c, 0xf9, 0xf7, + 0xa2, 0xff, 0x41, 0x31, 0x78, 0x19, 0x01, 0x35, + 0x2d, 0x04, 0x2d, 0x0c, 0x01, 0x74, 0xb5, 0x42, + 0xf4, 0xd3, 0x26, 0x4d, 0x6f, 0x63, 0x01, 0x20, + 0x28, 0x63, 0x24, 0x4d, 0xe8, 0x6a, 0x00, 0x28, + 0xfb, 0xda, 0x0b, 0x22, 0x3b, 0x1c, 0x24, 0x4e, + 0x03, 0xe0, 0x01, 0x32, 0x64, 0x2a, 0x00, 0xd1, + 0x00, 0x22, 0x10, 0x1c, 0x0c, 0x21, 0x3c, 0x00, + 0xc4, 0x68, 0x00, 0x00, 0x01, 0x39, 0x75, 0x5c, + 0x1f, 0x18, 0x3f, 0x7c, 0xbd, 0x42, 0xf3, 0xd1, + 0x01, 0x38, 0x00, 0xd5, 0x63, 0x20, 0x00, 0x29, + 0xf4, 0xd1, 0x18, 0x4e, 0x50, 0x1c, 0xf1, 0x6b, + 0x1a, 0x4a, 0x10, 0x1c, 0x01, 0x38, 0xfd, 0xd1, + 0xf0, 0x6b, 0x88, 0x42, 0x01, 0xd0, 0x01, 0x1c, + 0xf7, 0xe7, 0x02, 0x27, 0x37, 0x63, 0x16, 0x4d, + 0x90, 0x21, 0x28, 0x1c, 0xf9, 0xf7, 0xce, 0xfd, + 0x3c, 0x00, 0x00, 0x69, 0x00, 0x00, 0x28, 0x1c, + 0x28, 0x30, 0x28, 0x60, 0x28, 0x1c, 0x10, 0x30, + 0x2f, 0x81, 0xe8, 0x60, 0x28, 0x1c, 0x20, 0x30, + 0x28, 0x61, 0x04, 0x21, 0x00, 0xe0, 0x0c, 0xe0, + 0x29, 0x83, 0xe8, 0x61, 0xed, 0x62, 0x75, 0x63, + 0x01, 0x20, 0x30, 0x63, 0x22, 0x1c, 0x89, 0x20, + 0x01, 0x99, 0x0a, 0xf0, 0x38, 0xf8, 0x00, 0x20, + 0x28, 0x63, 0xfe, 0xbd, 0x00, 0x00, 0x08, 0x57, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0x69, 0x00, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x10, 0x8e, 0x01, 0x00, + 0x74, 0xff, 0x01, 0x00, 0x09, 0x57, 0x01, 0x00, + 0x20, 0x4e, 0x00, 0x00, 0xe4, 0xfe, 0x01, 0x00, + 0x80, 0xb5, 0x13, 0x28, 0x1e, 0xd0, 0xf0, 0x28, + 0x16, 0xd1, 0x09, 0xf0, 0xb5, 0xf9, 0x00, 0x28, + 0x13, 0xd1, 0x0d, 0xf0, 0xbf, 0xfa, 0x11, 0xf0, + 0x0d, 0xfc, 0x00, 0x22, 0x04, 0x21, 0xc4, 0x20, + 0x0c, 0xf0, 0x1c, 0xff, 0x3c, 0x00, 0x78, 0x69, + 0x00, 0x00, 0x09, 0x48, 0x00, 0x21, 0x00, 0x78, + 0x05, 0xf0, 0x3f, 0xfd, 0x05, 0xf0, 0x93, 0xf8, + 0x07, 0x49, 0x01, 0x20, 0x08, 0x60, 0x80, 0xbd, + 0x01, 0x1c, 0x01, 0x20, 0xfa, 0xf7, 0x87, 0xfc, + 0x80, 0xbd, 0x00, 0xf0, 0x32, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x6a, 0x57, 0x01, 0x00, 0x3c, 0xd9, + 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0xf0, 0xff, 0xf9, + 0x0b, 0x49, 0x02, 0x24, 0x48, 0x60, 0x3c, 0x00, + 0xb4, 0x69, 0x00, 0x00, 0x0a, 0x48, 0x04, 0x61, + 0x01, 0x20, 0x77, 0x21, 0x09, 0x03, 0x08, 0x61, + 0x08, 0x4d, 0x68, 0x68, 0x80, 0x07, 0x02, 0xd4, + 0x68, 0x68, 0x20, 0x43, 0x68, 0x60, 0x09, 0xf0, + 0xc7, 0xf9, 0x68, 0x68, 0xa0, 0x43, 0x68, 0x60, + 0x00, 0x20, 0xb0, 0xbd, 0xe0, 0x60, 0x01, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x00, 0x01, 0x07, 0x00, + 0x80, 0xb5, 0x01, 0x23, 0x03, 0x22, 0x00, 0x21, + 0x3c, 0x00, 0xf0, 0x69, 0x00, 0x00, 0x02, 0x20, + 0x3c, 0xf0, 0xf1, 0xfa, 0x00, 0x28, 0x01, 0xd0, + 0xfa, 0xf7, 0x81, 0xfc, 0x80, 0xbd, 0x1c, 0xb5, + 0xfc, 0xf7, 0xf5, 0xfa, 0xfa, 0xf7, 0x19, 0xfe, + 0x01, 0xf0, 0x03, 0xf9, 0x00, 0x24, 0x21, 0x1c, + 0x68, 0x46, 0x01, 0xf0, 0xe2, 0xfb, 0x00, 0xab, + 0x18, 0x78, 0x01, 0x28, 0x03, 0xd0, 0x02, 0x28, + 0x01, 0xd0, 0x03, 0x28, 0x01, 0xd1, 0x0c, 0xf0, + 0xb2, 0xfc, 0x3c, 0x00, 0x2c, 0x6a, 0x00, 0x00, + 0x01, 0x34, 0x24, 0x06, 0x24, 0x16, 0x06, 0x2c, + 0xec, 0xdb, 0xfa, 0xf7, 0x09, 0xf9, 0xfa, 0xf7, + 0xe7, 0xfc, 0xfa, 0xf7, 0x33, 0xfa, 0xfa, 0xf7, + 0x6d, 0xfa, 0xfb, 0xf7, 0xdf, 0xff, 0x05, 0xf0, + 0x4d, 0xfb, 0x06, 0xf0, 0x81, 0xfc, 0x0b, 0xf0, + 0x7d, 0xf9, 0x07, 0xf0, 0x29, 0xfc, 0x11, 0x48, + 0x10, 0x21, 0x01, 0x60, 0x09, 0x01, 0x01, 0x60, + 0xc9, 0x02, 0x01, 0x60, 0x3c, 0x00, 0x68, 0x6a, + 0x00, 0x00, 0x89, 0x00, 0x01, 0x60, 0x20, 0x21, + 0x01, 0x60, 0x04, 0x21, 0x01, 0x60, 0x08, 0x21, + 0x01, 0x60, 0x40, 0x21, 0x01, 0x60, 0x80, 0x21, + 0x01, 0x60, 0x89, 0x00, 0x01, 0x60, 0x49, 0x00, + 0x01, 0x60, 0x49, 0x00, 0x01, 0x60, 0x49, 0x00, + 0x01, 0x60, 0xc9, 0x03, 0x01, 0x60, 0x89, 0x0b, + 0x01, 0x60, 0xf9, 0xf7, 0x41, 0xff, 0x1c, 0xbd, + 0x00, 0x00, 0x00, 0x10, 0x07, 0x00, 0x3c, 0x00, + 0xa4, 0x6a, 0x00, 0x00, 0x80, 0xb5, 0x3b, 0xf0, + 0x4f, 0xf8, 0x3b, 0xf0, 0x7d, 0xf9, 0xfa, 0xf7, + 0x4b, 0xf9, 0x80, 0xbd, 0xf8, 0xb5, 0x00, 0x25, + 0x00, 0x24, 0x00, 0x22, 0x00, 0x28, 0x71, 0xd0, + 0x43, 0x4f, 0xb9, 0x68, 0x0b, 0x1a, 0xbb, 0x60, + 0xf8, 0x68, 0x39, 0x1c, 0x01, 0x30, 0xf8, 0x60, + 0x89, 0x6a, 0x00, 0x2b, 0x1e, 0xdc, 0x02, 0x24, + 0x00, 0x29, 0x06, 0xda, 0xfb, 0x69, 0x98, 0x42, + 0x3c, 0x00, 0xe0, 0x6a, 0x00, 0x00, 0x06, 0xdd, + 0x3b, 0x69, 0x98, 0x42, 0x09, 0xdd, 0x07, 0xe0, + 0xbb, 0x69, 0x98, 0x42, 0x01, 0xdc, 0x01, 0x24, + 0x03, 0xe0, 0x7b, 0x69, 0x98, 0x42, 0x00, 0xdd, + 0x03, 0x24, 0x78, 0x6a, 0x00, 0x28, 0x08, 0xd0, + 0x00, 0x20, 0x78, 0x62, 0x03, 0x2c, 0x01, 0xd1, + 0x02, 0x24, 0x02, 0xe0, 0x02, 0x2c, 0x00, 0xd1, + 0x01, 0x24, 0x2e, 0x48, 0x01, 0x2c, 0x00, 0x79, + 0x18, 0xd1, 0x3c, 0x00, 0x1c, 0x6b, 0x00, 0x00, + 0xbb, 0x78, 0x99, 0x42, 0x15, 0xda, 0x3b, 0x78, + 0x7b, 0x70, 0x39, 0x70, 0x01, 0x31, 0xb9, 0x62, + 0x01, 0xd5, 0x01, 0x31, 0xb9, 0x62, 0xb9, 0x6a, + 0x01, 0x25, 0x99, 0x42, 0x03, 0xd1, 0x04, 0x28, + 0x04, 0xd2, 0x01, 0x30, 0x00, 0xe0, 0x00, 0x20, + 0x38, 0x71, 0x01, 0x22, 0x00, 0x29, 0x33, 0xda, + 0x27, 0xe0, 0x03, 0x2c, 0x35, 0xd1, 0x00, 0x26, + 0x00, 0x28, 0x07, 0xd0, 0x3c, 0x00, 0x58, 0x6b, + 0x00, 0x00, 0x1e, 0x49, 0x81, 0x40, 0x38, 0x6a, + 0x08, 0x18, 0x0c, 0xf0, 0x5c, 0xf8, 0x00, 0x28, + 0x2c, 0xd0, 0x1b, 0x48, 0x00, 0x78, 0x40, 0x07, + 0x05, 0xd5, 0xf8, 0x68, 0x39, 0x69, 0x88, 0x42, + 0x01, 0xdb, 0x03, 0x23, 0xfe, 0x56, 0xb8, 0x6a, + 0xb0, 0x42, 0x12, 0xdd, 0x01, 0x21, 0x79, 0x62, + 0x39, 0x78, 0x01, 0x25, 0x79, 0x70, 0x38, 0x70, + 0x01, 0x38, 0xb8, 0x62, 0x88, 0x42, 0x3c, 0x00, + 0x94, 0x6b, 0x00, 0x00, 0x01, 0xd0, 0x00, 0x21, + 0x39, 0x71, 0x00, 0x28, 0x0c, 0xda, 0x07, 0x20, + 0x38, 0x71, 0x00, 0xe0, 0x12, 0xe0, 0x07, 0xe0, + 0x38, 0x79, 0x00, 0x28, 0x09, 0xd0, 0xff, 0x30, + 0x38, 0x71, 0x06, 0xe0, 0x00, 0x2a, 0x02, 0xd0, + 0x0c, 0xf0, 0xf8, 0xf8, 0x38, 0x62, 0x00, 0x2c, + 0x04, 0xd0, 0xfe, 0xf7, 0x97, 0xfd, 0x29, 0x1c, + 0x08, 0xf0, 0xfc, 0xfb, 0xf8, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x6b, 0x00, 0x00, 0xac, 0x7e, + 0x01, 0x00, 0x50, 0xc3, 0x00, 0x00, 0x1d, 0x75, + 0x01, 0x00, 0x80, 0xb5, 0x10, 0x68, 0x00, 0x28, + 0x02, 0xd0, 0x00, 0xf0, 0x0a, 0xf8, 0x80, 0xbd, + 0x03, 0x48, 0xc0, 0x69, 0x80, 0x68, 0x08, 0xf0, + 0xb2, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x84, 0x6a, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0xc0, 0x68, + 0xc0, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xfa, 0xf7, + 0x7a, 0xfb, 0x3c, 0x00, 0x0c, 0x6c, 0x00, 0x00, + 0xe0, 0x68, 0xe1, 0x69, 0xc0, 0x68, 0x23, 0x1c, + 0x01, 0x4a, 0xff, 0xf7, 0xd7, 0xfb, 0x10, 0xbd, + 0xdd, 0x6b, 0x00, 0x00, 0xb0, 0xb5, 0x05, 0x1c, + 0x0c, 0x21, 0x00, 0x20, 0xfa, 0xf7, 0xd6, 0xfc, + 0x04, 0x1c, 0x00, 0x68, 0x00, 0x21, 0x41, 0x60, + 0x01, 0x60, 0x29, 0x88, 0x01, 0x81, 0x69, 0x88, + 0x41, 0x81, 0x29, 0x1c, 0xff, 0x31, 0x21, 0x31, + 0x20, 0x1c, 0x03, 0xf0, 0x3c, 0x00, 0x48, 0x6c, + 0x00, 0x00, 0x77, 0xf9, 0x29, 0x1c, 0xff, 0x31, + 0x46, 0x31, 0x20, 0x1c, 0x03, 0xf0, 0x71, 0xf9, + 0x29, 0x1c, 0xff, 0x31, 0x50, 0x31, 0x20, 0x1c, + 0x03, 0xf0, 0x6b, 0xf9, 0x29, 0x1c, 0xff, 0x31, + 0x43, 0x31, 0x20, 0x1c, 0x03, 0xf0, 0x65, 0xf9, + 0x29, 0x1c, 0xff, 0x31, 0x63, 0x31, 0x20, 0x1c, + 0x03, 0xf0, 0x5f, 0xf9, 0x04, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x20, 0x1c, 0x3c, 0x00, + 0x84, 0x6c, 0x00, 0x00, 0xff, 0xf7, 0x8e, 0xfd, + 0x20, 0x1c, 0xb0, 0xbd, 0xe4, 0x62, 0x01, 0x00, + 0xf8, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, 0x04, 0xd1, + 0x05, 0x21, 0x18, 0x20, 0xfa, 0xf7, 0x02, 0xfb, + 0x4d, 0xe0, 0x29, 0x1c, 0x12, 0x31, 0x06, 0x22, + 0x60, 0x1c, 0xf9, 0xf7, 0x25, 0xfc, 0x22, 0x1c, + 0x30, 0x32, 0x00, 0x26, 0x00, 0x21, 0x00, 0x20, + 0x16, 0x70, 0x34, 0x4b, 0x1b, 0x5c, 0x2f, 0x8a, + 0x3c, 0x00, 0xc0, 0x6c, 0x00, 0x00, 0xdf, 0x40, + 0xff, 0x07, 0x07, 0xd5, 0x17, 0x78, 0x01, 0x33, + 0x01, 0x37, 0x17, 0x70, 0x67, 0x18, 0x30, 0x37, + 0x7b, 0x70, 0x01, 0x31, 0x01, 0x30, 0x0e, 0x28, + 0xee, 0xdb, 0xa8, 0x7b, 0x60, 0x72, 0x10, 0x78, + 0x00, 0x28, 0x2b, 0xd0, 0x2a, 0x48, 0x1e, 0x21, + 0x09, 0x5c, 0x27, 0x1c, 0x10, 0x37, 0x21, 0x72, + 0x01, 0x68, 0x61, 0x81, 0xc1, 0x89, 0x21, 0x77, + 0x81, 0x89, 0x3c, 0x00, 0xfc, 0x6c, 0x00, 0x00, + 0x79, 0x73, 0xc1, 0x8a, 0xa1, 0x81, 0x01, 0x8b, + 0xe1, 0x81, 0x42, 0x8a, 0x21, 0x1c, 0x60, 0x31, + 0x4a, 0x80, 0x82, 0x8a, 0x8a, 0x80, 0x1f, 0x49, + 0x2c, 0x31, 0x09, 0x7a, 0x00, 0x29, 0x09, 0xd0, + 0x02, 0x29, 0x0a, 0xd1, 0x01, 0x22, 0x62, 0x62, + 0x62, 0x72, 0x42, 0x8b, 0xa2, 0x81, 0x80, 0x8b, + 0xe0, 0x81, 0x03, 0xe0, 0x01, 0x21, 0x66, 0x62, + 0x00, 0xe0, 0x00, 0x21, 0x3c, 0x00, 0x38, 0x6d, + 0x00, 0x00, 0xe8, 0x7b, 0x08, 0x40, 0x01, 0xd1, + 0x00, 0x20, 0xf8, 0xbd, 0xa8, 0x68, 0x43, 0x1c, + 0x09, 0xd0, 0x22, 0x1c, 0x12, 0x32, 0x00, 0x92, + 0x93, 0x1d, 0x02, 0x32, 0x21, 0x1c, 0x01, 0xf0, + 0x9c, 0xfa, 0xa0, 0x62, 0x00, 0xe0, 0xa6, 0x62, + 0x68, 0x7b, 0x29, 0x1c, 0x1d, 0x31, 0x20, 0x74, + 0x0b, 0x48, 0x20, 0x22, 0x20, 0x62, 0x20, 0x1c, + 0x42, 0x30, 0xbe, 0x73, 0xf9, 0xf7, 0x3c, 0x00, + 0x74, 0x6d, 0x00, 0x00, 0xc1, 0xfb, 0x40, 0x34, + 0x26, 0x70, 0x68, 0x7e, 0x04, 0x49, 0x60, 0x70, + 0x68, 0x68, 0x2c, 0x31, 0x48, 0x60, 0x01, 0x20, + 0xda, 0xe7, 0x00, 0x00, 0x90, 0x58, 0x01, 0x00, + 0xc8, 0x6e, 0x01, 0x00, 0x91, 0x02, 0x01, 0x00, + 0x70, 0xb5, 0x16, 0x1c, 0x0d, 0x1c, 0x04, 0x1c, + 0x00, 0x28, 0x06, 0xd0, 0x0c, 0x20, 0xfa, 0xf7, + 0x47, 0xfd, 0x30, 0xc0, 0x08, 0x38, 0x06, 0x72, + 0x3c, 0x00, 0xb0, 0x6d, 0x00, 0x00, 0x70, 0xbd, + 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x01, 0x1c, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x68, 0x01, 0xd0, + 0x01, 0x21, 0x00, 0xe0, 0x00, 0x21, 0xfc, 0xf7, + 0xa0, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x0c, 0x79, + 0x01, 0x00, 0x70, 0xb5, 0x0e, 0x1c, 0x04, 0x1c, + 0x00, 0x28, 0x01, 0xd1, 0xfa, 0xf7, 0x8f, 0xfa, + 0x06, 0x4d, 0x28, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0xfa, 0xf7, 0x3c, 0x00, 0xec, 0x6d, 0x00, 0x00, + 0x89, 0xfa, 0x04, 0x48, 0x2e, 0x60, 0xc4, 0x60, + 0x01, 0x21, 0x01, 0x70, 0x70, 0xbd, 0x00, 0x00, + 0xa8, 0x7e, 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, + 0x10, 0xb5, 0x07, 0x4c, 0x20, 0x68, 0x00, 0x28, + 0x01, 0xd1, 0xfa, 0xf7, 0x77, 0xfa, 0x05, 0x48, + 0x00, 0x69, 0x21, 0x68, 0xf9, 0xf7, 0xdf, 0xfa, + 0x00, 0x20, 0x20, 0x60, 0x10, 0xbd, 0x00, 0x00, + 0xa8, 0x7e, 0x01, 0x00, 0x3c, 0x00, 0x28, 0x6e, + 0x00, 0x00, 0x30, 0x00, 0x07, 0x00, 0x01, 0x20, + 0x05, 0x49, 0xc0, 0x06, 0x80, 0xb5, 0x08, 0x60, + 0x00, 0x22, 0x03, 0x21, 0x54, 0x20, 0x0c, 0xf0, + 0xb8, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x04, 0x21, + 0xc4, 0x20, 0x0c, 0xf0, 0xae, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x04, 0x48, 0x80, 0xb5, 0x00, 0x88, + 0x02, 0x49, 0xff, 0xf7, 0xb8, 0xff, 0x3c, 0x00, + 0x64, 0x6e, 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0x75, 0x4b, 0x00, 0x00, 0xc8, 0x74, 0x01, 0x00, + 0xf8, 0xb5, 0x06, 0x1c, 0x31, 0x48, 0x00, 0x25, + 0xc0, 0x68, 0x0c, 0x1c, 0x00, 0x28, 0x30, 0xd0, + 0x2e, 0x48, 0x2f, 0x4f, 0x04, 0x30, 0x00, 0x78, + 0x38, 0x76, 0x2c, 0x48, 0x04, 0x30, 0x40, 0x78, + 0x38, 0x81, 0x00, 0x2a, 0x0b, 0xd0, 0xf9, 0xf7, + 0xa5, 0xfa, 0x1f, 0x20, 0xb8, 0x76, 0x20, 0x1c, + 0x3c, 0x00, 0xa0, 0x6e, 0x00, 0x00, 0xf9, 0xf7, + 0xf6, 0xf9, 0x25, 0x48, 0x04, 0x30, 0x80, 0x78, + 0xb8, 0x76, 0x43, 0xe0, 0x25, 0x48, 0x22, 0x49, + 0x84, 0x42, 0x4d, 0x69, 0x02, 0xd2, 0x6c, 0x43, + 0xe4, 0x0b, 0x0f, 0xe0, 0x1f, 0x48, 0x21, 0x1c, + 0x80, 0x6a, 0x00, 0x90, 0xf9, 0xf7, 0x23, 0xfc, + 0x00, 0x99, 0x02, 0x1c, 0x4a, 0x43, 0xa1, 0x1a, + 0x1a, 0x4a, 0x69, 0x43, 0x52, 0x6a, 0xc9, 0x0b, + 0x50, 0x43, 0x3c, 0x00, 0xdc, 0x6e, 0x00, 0x00, + 0x44, 0x18, 0x02, 0x2c, 0x01, 0xd8, 0x00, 0x20, + 0xf8, 0xbd, 0xf9, 0xf7, 0x7d, 0xfa, 0x1f, 0x20, + 0xb8, 0x76, 0x20, 0x1c, 0xf9, 0xf7, 0xae, 0xf9, + 0x04, 0x1c, 0x11, 0x48, 0x04, 0x30, 0x80, 0x78, + 0xb8, 0x76, 0x0f, 0x4f, 0x7d, 0x6a, 0xac, 0x42, + 0x04, 0xd2, 0x20, 0x1c, 0xff, 0xf7, 0x22, 0xfc, + 0x05, 0x1c, 0x12, 0xe0, 0x21, 0x1c, 0x28, 0x1c, + 0xf9, 0xf7, 0xfc, 0xfb, 0x3c, 0x00, 0x18, 0x6f, + 0x00, 0x00, 0x06, 0x1c, 0x68, 0x43, 0x20, 0x1a, + 0xff, 0xf7, 0x17, 0xfc, 0x05, 0x1c, 0x00, 0x24, + 0x04, 0xe0, 0x78, 0x6a, 0xff, 0xf7, 0x11, 0xfc, + 0x45, 0x19, 0x01, 0x34, 0xb4, 0x42, 0xf8, 0xd3, + 0x28, 0x1c, 0xd4, 0xe7, 0x00, 0x00, 0xc8, 0x74, + 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, 0xc0, 0xc6, + 0x2d, 0x00, 0x01, 0x1c, 0x7d, 0x20, 0x80, 0xb5, + 0xc0, 0x00, 0xf9, 0xf7, 0x72, 0xfb, 0x3c, 0x00, + 0x54, 0x6f, 0x00, 0x00, 0x02, 0x49, 0x88, 0x61, + 0x40, 0x08, 0xc8, 0x61, 0x80, 0xbd, 0x00, 0x00, + 0xc8, 0x74, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, + 0x21, 0x1c, 0x00, 0x20, 0x0b, 0xf0, 0x42, 0xfa, + 0x21, 0x1c, 0x00, 0x20, 0x0b, 0xf0, 0x0a, 0xfa, + 0x00, 0xf0, 0x68, 0xfe, 0x10, 0xbd, 0x00, 0x00, + 0x85, 0x6f, 0x00, 0x00, 0x30, 0xb5, 0x0f, 0x4d, + 0x2a, 0x78, 0x04, 0x2a, 0x19, 0xd8, 0x00, 0x2a, + 0x3c, 0x00, 0x90, 0x6f, 0x00, 0x00, 0x17, 0xd0, + 0x00, 0x21, 0x07, 0xe0, 0x4b, 0x00, 0x5b, 0x18, + 0x5c, 0x19, 0x01, 0x23, 0xe4, 0x56, 0x84, 0x42, + 0x02, 0xda, 0x01, 0x31, 0x8a, 0x42, 0xf5, 0xdc, + 0x8a, 0x42, 0x00, 0xd1, 0x01, 0x39, 0x48, 0x00, + 0x40, 0x18, 0x40, 0x19, 0x81, 0x78, 0x02, 0x4a, + 0x34, 0x3a, 0x11, 0x70, 0xc0, 0x78, 0x50, 0x70, + 0x30, 0xbd, 0x00, 0x75, 0x01, 0x00, 0x30, 0xb5, + 0x11, 0x1c, 0x3c, 0x00, 0xcc, 0x6f, 0x00, 0x00, + 0x38, 0x31, 0x85, 0xb0, 0x91, 0x62, 0x08, 0x21, + 0x11, 0x86, 0x00, 0x23, 0x14, 0x1c, 0x01, 0x1c, + 0x53, 0x63, 0xc0, 0x68, 0x15, 0x4d, 0x0b, 0xe0, + 0x02, 0x68, 0xaa, 0x42, 0x06, 0xd1, 0xc2, 0x68, + 0xca, 0x60, 0xc3, 0x60, 0x03, 0x60, 0xfa, 0xf7, + 0xd1, 0xfa, 0x03, 0xe0, 0x01, 0x1c, 0xc0, 0x68, + 0x00, 0x28, 0xf1, 0xd1, 0x22, 0x1c, 0x40, 0x32, + 0x08, 0x21, 0x20, 0x68, 0x3c, 0x00, 0x08, 0x70, + 0x00, 0x00, 0xfa, 0xf7, 0x64, 0xfb, 0x0b, 0x49, + 0x20, 0x1c, 0x48, 0x30, 0x02, 0x90, 0x04, 0x94, + 0x03, 0x91, 0xe0, 0x69, 0x82, 0x88, 0x01, 0x68, + 0x6e, 0x20, 0x01, 0x92, 0x00, 0x91, 0x22, 0x1c, + 0x56, 0x32, 0x03, 0x5d, 0x21, 0x1c, 0x28, 0x31, + 0x20, 0x68, 0xff, 0xf7, 0x58, 0xfa, 0x05, 0xb0, + 0x30, 0xbd, 0xa0, 0x7e, 0x01, 0x00, 0xd5, 0x70, + 0x00, 0x00, 0x1c, 0xb5, 0x07, 0x49, 0x3c, 0x00, + 0x44, 0x70, 0x00, 0x00, 0x02, 0x1c, 0x01, 0x90, + 0x00, 0x91, 0xc0, 0x69, 0x13, 0x1c, 0x84, 0x88, + 0x01, 0x68, 0x10, 0x68, 0x48, 0x33, 0x22, 0x1c, + 0xff, 0xf7, 0x08, 0xf9, 0x1c, 0xbd, 0x00, 0x00, + 0xc9, 0x6f, 0x00, 0x00, 0x10, 0xb5, 0x14, 0x1c, + 0x18, 0x48, 0x03, 0xf0, 0x89, 0xf8, 0xa0, 0x42, + 0x01, 0xd0, 0xfa, 0xf7, 0x45, 0xf9, 0x04, 0x22, + 0x20, 0x1c, 0x40, 0x30, 0xa1, 0x6a, 0xf9, 0xf7, + 0x3c, 0x00, 0x80, 0x70, 0x00, 0x00, 0xbd, 0xf9, + 0x00, 0x28, 0x02, 0xd1, 0x01, 0x20, 0x20, 0x62, + 0x05, 0xe0, 0x00, 0x20, 0x20, 0x62, 0x84, 0x20, + 0x00, 0x5d, 0x00, 0x28, 0x03, 0xd1, 0x20, 0x1c, + 0x09, 0xf0, 0x23, 0xfb, 0x05, 0xe0, 0x20, 0x68, + 0xfa, 0xf7, 0x79, 0xfa, 0x20, 0x1c, 0xfa, 0xf7, + 0xa4, 0xfb, 0xe0, 0x69, 0x80, 0x79, 0x06, 0x28, + 0x06, 0xd1, 0x20, 0x6a, 0x06, 0x49, 0x00, 0x28, + 0x03, 0xd0, 0x3c, 0x00, 0xbc, 0x70, 0x00, 0x00, + 0x08, 0x69, 0x01, 0x30, 0x08, 0x61, 0x10, 0xbd, + 0x48, 0x69, 0x01, 0x30, 0x48, 0x61, 0x10, 0xbd, + 0xa0, 0x6a, 0x01, 0x00, 0x28, 0x61, 0x01, 0x00, + 0x1c, 0xb5, 0x14, 0x1c, 0x15, 0x48, 0x03, 0xf0, + 0x51, 0xf8, 0xa0, 0x42, 0x01, 0xd0, 0xfa, 0xf7, + 0x0d, 0xf9, 0x20, 0x1c, 0x4f, 0x30, 0x02, 0x79, + 0x41, 0x79, 0x00, 0xab, 0x12, 0x02, 0x11, 0x43, + 0xc2, 0x78, 0x12, 0x04, 0x3c, 0x00, 0xf8, 0x70, + 0x00, 0x00, 0x11, 0x43, 0x82, 0x78, 0x12, 0x06, + 0x11, 0x43, 0x00, 0x91, 0x01, 0x78, 0x40, 0x78, + 0x09, 0x02, 0x08, 0x43, 0x98, 0x80, 0x20, 0x1c, + 0x69, 0x46, 0x06, 0xf0, 0x3c, 0xf9, 0x00, 0x28, + 0x03, 0xd1, 0x20, 0x1c, 0x09, 0xf0, 0xe3, 0xfa, + 0x1c, 0xbd, 0x20, 0x68, 0xfa, 0xf7, 0x39, 0xfa, + 0x20, 0x1c, 0xfa, 0xf7, 0x64, 0xfb, 0xf7, 0xe7, + 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, 0x3c, 0x00, + 0x34, 0x71, 0x00, 0x00, 0xbc, 0xb5, 0x1f, 0x4d, + 0x14, 0x1c, 0x28, 0x1c, 0xdc, 0x30, 0x03, 0xf0, + 0x1f, 0xf8, 0xa0, 0x42, 0x01, 0xd0, 0xfa, 0xf7, + 0xdb, 0xf8, 0xa0, 0x6c, 0x00, 0xab, 0x02, 0x78, + 0x81, 0x78, 0x12, 0x02, 0x11, 0x43, 0x02, 0x79, + 0x12, 0x04, 0x11, 0x43, 0x42, 0x79, 0x12, 0x06, + 0x11, 0x43, 0x00, 0x91, 0x81, 0x79, 0xc0, 0x79, + 0x00, 0x02, 0x08, 0x43, 0x98, 0x80, 0x20, 0x1c, + 0x3c, 0x00, 0x70, 0x71, 0x00, 0x00, 0x69, 0x46, + 0x06, 0xf0, 0x0b, 0xf9, 0x00, 0x28, 0x17, 0xd0, + 0x01, 0x28, 0x0e, 0xd1, 0xed, 0x6c, 0x00, 0x2d, + 0x0b, 0xd0, 0x80, 0x20, 0x02, 0x5d, 0xe0, 0x6c, + 0x01, 0x21, 0x00, 0x28, 0x00, 0xd1, 0x00, 0x21, + 0x60, 0x68, 0x6b, 0x46, 0x0a, 0x30, 0xf9, 0xf7, + 0x23, 0xf9, 0x20, 0x68, 0xfa, 0xf7, 0xfb, 0xf9, + 0x20, 0x1c, 0xfa, 0xf7, 0x26, 0xfb, 0xbc, 0xbd, + 0x20, 0x1c, 0x3c, 0x00, 0xac, 0x71, 0x00, 0x00, + 0x00, 0xf0, 0x8e, 0xfe, 0xfa, 0xe7, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0xbc, 0xb5, 0x04, 0x1c, + 0x40, 0x6a, 0x00, 0x25, 0x00, 0x28, 0x03, 0xd0, + 0x60, 0x68, 0x00, 0x8b, 0x05, 0x07, 0x2d, 0x0f, + 0x22, 0x1c, 0x40, 0x32, 0x08, 0x21, 0x20, 0x68, + 0xfa, 0xf7, 0x7e, 0xfa, 0xa1, 0x68, 0x01, 0x95, + 0x00, 0x91, 0x21, 0x1c, 0x22, 0x1c, 0x60, 0x32, + 0x20, 0x68, 0x50, 0x31, 0x3c, 0x00, 0xe8, 0x71, + 0x00, 0x00, 0x0d, 0x1c, 0xe3, 0x68, 0x09, 0xf0, + 0xe2, 0xff, 0xe0, 0x69, 0x80, 0x6b, 0x00, 0x28, + 0x03, 0xd1, 0xfe, 0xf7, 0xe8, 0xfa, 0x00, 0x28, + 0x01, 0xd0, 0x18, 0x20, 0x00, 0xe0, 0x10, 0x20, + 0x06, 0x49, 0x01, 0x94, 0x00, 0x91, 0xe1, 0x69, + 0x08, 0x23, 0x09, 0x68, 0x0a, 0x18, 0x21, 0x1c, + 0x28, 0x31, 0x28, 0x1c, 0xff, 0xf7, 0x87, 0xf9, + 0xbc, 0xbd, 0x35, 0x71, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x72, 0x00, 0x00, 0x10, 0xb5, 0x10, 0x1c, + 0x38, 0x30, 0x90, 0x62, 0x04, 0x20, 0x10, 0x86, + 0x00, 0x20, 0x50, 0x63, 0x10, 0x68, 0x14, 0x1c, + 0x40, 0x32, 0x04, 0x21, 0xfa, 0xf7, 0x4a, 0xfa, + 0x23, 0x1c, 0x21, 0x1c, 0x28, 0x31, 0x02, 0x4a, + 0x20, 0x68, 0xff, 0xf7, 0xbd, 0xf8, 0x10, 0xbd, + 0x65, 0x70, 0x00, 0x00, 0x0e, 0xb5, 0xc3, 0x69, + 0x02, 0x1c, 0x98, 0x88, 0x05, 0x49, 0x02, 0x92, + 0x3c, 0x00, 0x60, 0x72, 0x00, 0x00, 0x01, 0x91, + 0x00, 0x90, 0x1b, 0x68, 0x10, 0x68, 0x91, 0x69, + 0x03, 0x22, 0xff, 0xf7, 0xae, 0xf9, 0x0e, 0xbd, + 0x00, 0x00, 0x25, 0x72, 0x00, 0x00, 0x0e, 0xb5, + 0x02, 0x1c, 0x06, 0x49, 0x10, 0x20, 0x00, 0x90, + 0x02, 0x92, 0x13, 0x1c, 0x01, 0x91, 0x10, 0x68, + 0x00, 0x22, 0x70, 0x33, 0x00, 0x21, 0xff, 0xf7, + 0x9c, 0xf9, 0x0e, 0xbd, 0x00, 0x00, 0x25, 0x72, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x72, 0x00, 0x00, + 0x10, 0xb5, 0x03, 0x1c, 0x00, 0x21, 0x00, 0x20, + 0x08, 0x4c, 0x00, 0xe0, 0x01, 0x31, 0xca, 0x00, + 0xa2, 0x58, 0x9a, 0x42, 0x02, 0xd0, 0x0b, 0x29, + 0xf8, 0xd3, 0x10, 0xbd, 0x0b, 0x29, 0xfc, 0xd2, + 0xc9, 0x00, 0x09, 0x19, 0x00, 0x20, 0x08, 0x71, + 0x01, 0x20, 0x10, 0xbd, 0x38, 0x58, 0x01, 0x00, + 0x8c, 0xb5, 0x00, 0xab, 0x86, 0x21, 0x19, 0x80, + 0x01, 0x1c, 0x04, 0x48, 0x3c, 0x00, 0xd8, 0x72, + 0x00, 0x00, 0x06, 0xf0, 0xee, 0xfe, 0x01, 0x90, + 0x68, 0x46, 0x06, 0xf0, 0xfa, 0xf8, 0x8c, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x0d, 0x48, 0x0d, 0x49, 0x94, 0xb0, + 0x04, 0x80, 0x06, 0x22, 0x18, 0x31, 0x0c, 0x30, + 0xf9, 0xf7, 0xfb, 0xf8, 0x01, 0xa8, 0x07, 0xf0, + 0xa2, 0xf8, 0x0c, 0x20, 0x09, 0xa9, 0x48, 0x72, + 0x00, 0xab, 0x1c, 0x80, 0x02, 0x21, 0x3c, 0x00, + 0x14, 0x73, 0x00, 0x00, 0x68, 0x46, 0x03, 0xf0, + 0xdb, 0xff, 0x04, 0x90, 0x01, 0xa8, 0x06, 0xf0, + 0xd1, 0xf8, 0x14, 0xb0, 0x10, 0xbd, 0x00, 0x00, + 0x58, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x04, 0xf0, + 0x45, 0xfe, 0x05, 0xf0, 0x53, 0xfa, 0x80, 0xbd, + 0x10, 0xb5, 0x19, 0x4c, 0xe0, 0x68, 0x00, 0x28, + 0x06, 0xd0, 0x61, 0x1c, 0x08, 0x78, 0x00, 0x28, + 0x03, 0xd1, 0x48, 0x78, 0xff, 0x30, 0x08, 0x70, + 0x3c, 0x00, 0x50, 0x73, 0x00, 0x00, 0x10, 0xbd, + 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, 0x08, 0x70, + 0xa1, 0x68, 0x00, 0x29, 0xf7, 0xd0, 0x00, 0x28, + 0xf5, 0xd1, 0x0e, 0x48, 0x54, 0x30, 0x81, 0x78, + 0x00, 0x29, 0x03, 0xd1, 0xc1, 0x78, 0xff, 0x31, + 0x81, 0x70, 0x10, 0xbd, 0xff, 0x31, 0x09, 0x06, + 0x09, 0x0e, 0x81, 0x70, 0xf9, 0xd1, 0xa1, 0x69, + 0x00, 0x29, 0xf6, 0xd0, 0x80, 0x88, 0x03, 0xf0, + 0xd0, 0xfb, 0x3c, 0x00, 0x8c, 0x73, 0x00, 0x00, + 0x04, 0x4a, 0x01, 0x1c, 0x5c, 0x32, 0x0c, 0x32, + 0x05, 0xca, 0x80, 0x1a, 0xa2, 0x69, 0xf9, 0xf7, + 0x1f, 0xf8, 0x10, 0xbd, 0x44, 0x7d, 0x01, 0x00, + 0xf0, 0xb5, 0x04, 0x1c, 0x40, 0x68, 0x00, 0x25, + 0x01, 0x79, 0x00, 0x22, 0x85, 0xb0, 0xc9, 0x07, + 0xcb, 0x17, 0x69, 0x49, 0x01, 0x33, 0x89, 0x6a, + 0x10, 0x29, 0x05, 0xd3, 0x66, 0x49, 0xc0, 0x39, + 0x08, 0x6b, 0x01, 0x30, 0x3c, 0x00, 0xc8, 0x73, + 0x00, 0x00, 0x08, 0x63, 0x8e, 0xe0, 0x21, 0x68, + 0x0e, 0x68, 0xf6, 0x78, 0xb7, 0x06, 0xff, 0x0f, + 0xb6, 0x09, 0x00, 0x2b, 0x04, 0x97, 0x06, 0xd0, + 0x63, 0x69, 0x1f, 0x1c, 0x1b, 0x6a, 0x50, 0x37, + 0x9f, 0x42, 0x00, 0xd1, 0x01, 0x25, 0x00, 0x2d, + 0x02, 0xd0, 0x63, 0x69, 0x1b, 0x6a, 0x04, 0xe0, + 0x3c, 0x23, 0x59, 0x4f, 0x73, 0x43, 0xdb, 0x19, + 0x04, 0x33, 0xe3, 0x61, 0x9f, 0x88, 0x3c, 0x00, + 0x04, 0x74, 0x00, 0x00, 0x00, 0x2f, 0x70, 0xd0, + 0x9b, 0x79, 0x02, 0x2b, 0x6e, 0xd0, 0x04, 0x2b, + 0x17, 0xd0, 0x06, 0x2b, 0x69, 0xd1, 0x08, 0x68, + 0xa0, 0x61, 0x08, 0x89, 0x04, 0x38, 0x08, 0x81, + 0x20, 0x68, 0x01, 0x68, 0x04, 0x31, 0x01, 0x60, + 0x4e, 0x49, 0x00, 0x29, 0x5d, 0xd0, 0x04, 0x9f, + 0xba, 0x42, 0x5a, 0xd1, 0x49, 0x48, 0x22, 0x1c, + 0x1c, 0x30, 0x02, 0xf0, 0x65, 0xfe, 0x05, 0xb0, + 0x3c, 0x00, 0x40, 0x74, 0x00, 0x00, 0xf0, 0xbd, + 0x09, 0x68, 0x25, 0x1c, 0xca, 0x79, 0x40, 0x35, + 0x26, 0x1c, 0xea, 0x73, 0x8b, 0x79, 0x22, 0x1c, + 0x50, 0x32, 0x13, 0x70, 0x4b, 0x79, 0x60, 0x36, + 0x53, 0x70, 0x0b, 0x79, 0x93, 0x70, 0x4b, 0x78, + 0xd3, 0x70, 0x09, 0x78, 0x11, 0x71, 0x00, 0x21, + 0x29, 0x72, 0x16, 0x21, 0xb1, 0x73, 0x61, 0x6a, + 0x00, 0x29, 0x06, 0xd0, 0x01, 0x8b, 0x09, 0x07, + 0x09, 0x0f, 0x3c, 0x00, 0x7c, 0x74, 0x00, 0x00, + 0x29, 0x72, 0xb1, 0x81, 0x18, 0x21, 0xb1, 0x73, + 0x01, 0x1c, 0x0a, 0x31, 0x20, 0x1c, 0x06, 0x22, + 0x49, 0x30, 0xf9, 0xf7, 0x33, 0xf8, 0x60, 0x68, + 0x14, 0x22, 0x01, 0x88, 0xe9, 0x82, 0x01, 0x1d, + 0x20, 0x1c, 0x58, 0x30, 0xf9, 0xf7, 0x2a, 0xf8, + 0xe8, 0x8a, 0x30, 0x49, 0x08, 0x40, 0x01, 0x21, + 0x89, 0x03, 0x08, 0x43, 0xe8, 0x82, 0x70, 0x89, + 0x0f, 0x21, 0x08, 0x40, 0x3c, 0x00, 0xb8, 0x74, + 0x00, 0x00, 0x70, 0x81, 0x20, 0x68, 0x01, 0x89, + 0x08, 0x39, 0x01, 0x81, 0x20, 0x68, 0x01, 0x68, + 0x08, 0x31, 0x01, 0x60, 0x08, 0x21, 0x00, 0x20, + 0xfa, 0xf7, 0x83, 0xf8, 0x05, 0x1c, 0x02, 0x68, + 0x20, 0x68, 0x08, 0x21, 0xfa, 0xf7, 0xfb, 0xf8, + 0x20, 0x68, 0xfa, 0xf7, 0x74, 0xf8, 0x21, 0x49, + 0xc5, 0x60, 0x2f, 0xe0, 0x30, 0xe0, 0xff, 0xe7, + 0x21, 0x68, 0x60, 0x68, 0x0a, 0x68, 0x3c, 0x00, + 0xf4, 0x74, 0x00, 0x00, 0x80, 0x23, 0xa2, 0x64, + 0x1e, 0x55, 0xe5, 0x64, 0x55, 0x79, 0x13, 0x79, + 0x2d, 0x02, 0x5b, 0x19, 0x95, 0x79, 0x2d, 0x04, + 0x5b, 0x19, 0xd5, 0x79, 0x2d, 0x06, 0x5b, 0x19, + 0x95, 0x78, 0x12, 0x78, 0x12, 0x02, 0xaa, 0x18, + 0x15, 0x04, 0x0a, 0x89, 0x2d, 0x0c, 0x08, 0x3a, + 0x0a, 0x81, 0x21, 0x68, 0x0a, 0x68, 0x08, 0x32, + 0x0a, 0x60, 0xe1, 0x69, 0x02, 0x1c, 0x0a, 0x32, + 0x3c, 0x00, 0x30, 0x75, 0x00, 0x00, 0x01, 0xa8, + 0x09, 0x68, 0x0b, 0xf0, 0x3e, 0xf9, 0xe0, 0x69, + 0x2b, 0x1c, 0x01, 0x68, 0x20, 0x1c, 0x70, 0x30, + 0x01, 0xaa, 0x0b, 0xf0, 0x86, 0xf9, 0x09, 0x49, + 0x01, 0x22, 0x6d, 0xe7, 0x20, 0x68, 0xfa, 0xf7, + 0x22, 0xf8, 0x20, 0x1c, 0xfa, 0xf7, 0x4d, 0xf9, + 0x70, 0xe7, 0x84, 0x6a, 0x01, 0x00, 0x68, 0x61, + 0x01, 0x00, 0x55, 0x72, 0x00, 0x00, 0x8f, 0xc7, + 0xff, 0xff, 0x3c, 0x00, 0x6c, 0x75, 0x00, 0x00, + 0x41, 0x70, 0x00, 0x00, 0x79, 0x72, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x82, 0x20, 0xf9, 0xf7, + 0x93, 0xfe, 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0xc0, 0x68, 0xf9, 0xf7, 0xfa, 0xff, + 0x01, 0x20, 0x80, 0xbd, 0x3c, 0x00, 0xa8, 0x75, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x21, 0xff, 0x20, + 0xf9, 0xf7, 0x79, 0xfe, 0x80, 0xbd, 0x70, 0x47, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x01, 0x20, + 0x70, 0x47, 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x06, 0x21, 0x99, 0x20, + 0xf9, 0xf7, 0x65, 0xfe, 0x80, 0xbd, 0xb0, 0xb5, + 0x00, 0x25, 0x01, 0x29, 0x12, 0x4c, 0x3c, 0x00, + 0xe4, 0x75, 0x00, 0x00, 0x0f, 0xd1, 0x0a, 0xf0, + 0x0f, 0xfc, 0x00, 0x28, 0x1d, 0xd0, 0x61, 0x78, + 0x3c, 0x23, 0x59, 0x43, 0x09, 0x19, 0x04, 0x31, + 0x01, 0x62, 0x61, 0x1c, 0x41, 0x62, 0x84, 0x62, + 0x04, 0x1c, 0x50, 0x34, 0x06, 0xe0, 0x00, 0x29, + 0x0f, 0xd1, 0x3c, 0x20, 0x50, 0x43, 0x25, 0x70, + 0x04, 0x19, 0x04, 0x34, 0x00, 0x2c, 0x08, 0xd0, + 0x20, 0x68, 0x00, 0x28, 0x02, 0xd0, 0x20, 0x21, + 0x3c, 0x00, 0x20, 0x76, 0x00, 0x00, 0xf8, 0xf7, + 0x18, 0xff, 0xa5, 0x80, 0x07, 0x20, 0xa0, 0x71, + 0xb0, 0xbd, 0x68, 0x61, 0x01, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x00, 0x21, 0x01, 0xf0, 0x41, 0xfc, + 0x60, 0x68, 0x00, 0x28, 0x01, 0xd0, 0x21, 0x68, + 0x01, 0x60, 0x20, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0x61, 0x68, 0x41, 0x60, 0x12, 0x4e, 0x70, 0x68, + 0xa0, 0x42, 0x01, 0xd1, 0x60, 0x68, 0x70, 0x60, + 0xe0, 0x68, 0x3c, 0x00, 0x5c, 0x76, 0x00, 0x00, + 0x00, 0x28, 0x0b, 0xd0, 0x00, 0x25, 0x06, 0xe0, + 0xe0, 0x68, 0xe9, 0x00, 0x41, 0x18, 0x14, 0x20, + 0x0b, 0xf0, 0xe2, 0xff, 0x01, 0x35, 0x30, 0x88, + 0x85, 0x42, 0xf5, 0xdb, 0x06, 0x21, 0x20, 0x1c, + 0x44, 0x30, 0xf8, 0xf7, 0xe9, 0xfe, 0x20, 0x6b, + 0x00, 0x28, 0x01, 0xd0, 0xf9, 0xf7, 0x86, 0xff, + 0xe0, 0x69, 0x00, 0x28, 0x01, 0xd0, 0xfa, 0xf7, + 0xaf, 0xf8, 0x70, 0xbd, 0x3c, 0x00, 0x98, 0x76, + 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, 0xf0, 0xb5, + 0x1d, 0x4f, 0x05, 0x9d, 0x3f, 0x68, 0x01, 0x26, + 0x1c, 0x1c, 0x33, 0x1c, 0x00, 0x2f, 0x00, 0xd0, + 0x2b, 0x1c, 0x1d, 0x06, 0x2d, 0x0e, 0x00, 0x29, + 0x06, 0xd0, 0x11, 0x78, 0x0e, 0x23, 0x16, 0x4f, + 0x09, 0x18, 0x09, 0x7a, 0x6b, 0x43, 0x10, 0xe0, + 0x21, 0x78, 0x00, 0x29, 0x13, 0xd0, 0xff, 0x31, + 0x0d, 0xe0, 0x01, 0x29, 0x01, 0xd9, 0x3c, 0x00, + 0xd4, 0x76, 0x00, 0x00, 0x01, 0x31, 0x11, 0x70, + 0x11, 0x78, 0x0e, 0x23, 0x0f, 0x4f, 0x49, 0x08, + 0x11, 0x70, 0x09, 0x18, 0x09, 0x7a, 0x6b, 0x43, + 0xdb, 0x19, 0x59, 0x5c, 0x21, 0x70, 0x21, 0x78, + 0x00, 0x29, 0x02, 0xd1, 0x11, 0x78, 0x00, 0x29, + 0xea, 0xd1, 0x09, 0x48, 0xc0, 0x68, 0x00, 0x28, + 0x05, 0xd0, 0x21, 0x78, 0x30, 0x1c, 0x00, 0x29, + 0x00, 0xd1, 0x00, 0x20, 0xf0, 0xbd, 0x01, 0x20, + 0x3c, 0x00, 0x10, 0x77, 0x00, 0x00, 0xf0, 0xbd, + 0x00, 0x00, 0x18, 0x67, 0x01, 0x00, 0x24, 0x67, + 0x01, 0x00, 0x5c, 0x67, 0x01, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x84, 0x46, 0x00, 0x20, 0xf0, 0xb5, + 0x00, 0x29, 0x09, 0xd0, 0x11, 0x78, 0x1a, 0x4e, + 0xb1, 0x70, 0x19, 0x4e, 0xb1, 0x78, 0x71, 0x70, + 0x31, 0x70, 0x01, 0x21, 0x31, 0x61, 0x27, 0xe0, + 0x16, 0x4e, 0x01, 0x23, 0xf1, 0x56, 0x63, 0x46, + 0x5f, 0x68, 0x3c, 0x00, 0x4c, 0x77, 0x00, 0x00, + 0x00, 0x23, 0xf6, 0x56, 0x01, 0x25, 0xcc, 0x0f, + 0xb7, 0x42, 0x00, 0xd9, 0x00, 0x25, 0x00, 0x2c, + 0x01, 0xd0, 0x00, 0x2d, 0xe8, 0xd1, 0x0e, 0x4f, + 0x3b, 0x69, 0x00, 0x2b, 0x03, 0xd0, 0x00, 0x2d, + 0x01, 0xd1, 0x16, 0x70, 0x02, 0xe0, 0x1c, 0x43, + 0x01, 0xd1, 0x11, 0x70, 0x01, 0x20, 0x01, 0x24, + 0x00, 0x2b, 0x00, 0xd0, 0x00, 0x24, 0x3c, 0x61, + 0x00, 0x2c, 0x02, 0xd0, 0x3c, 0x00, 0x88, 0x77, + 0x00, 0x00, 0x71, 0x1c, 0x39, 0x70, 0x01, 0xe0, + 0xff, 0x31, 0x79, 0x70, 0x00, 0x28, 0xd5, 0xd0, + 0x01, 0x20, 0xf0, 0xbd, 0x00, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x90, 0xb5, 0x0a, 0x4c, 0x00, 0x20, + 0x93, 0xb0, 0x20, 0x61, 0x03, 0x90, 0x68, 0x46, + 0x00, 0x21, 0x08, 0xf0, 0x84, 0xfd, 0x20, 0x7a, + 0x02, 0x28, 0x01, 0xd1, 0xe0, 0x6b, 0x00, 0xe0, + 0x20, 0x6c, 0xe0, 0x61, 0x01, 0x20, 0x3c, 0x00, + 0xc4, 0x77, 0x00, 0x00, 0x08, 0xf0, 0x8a, 0xfd, + 0x13, 0xb0, 0x90, 0xbd, 0xf4, 0x6e, 0x01, 0x00, + 0xf7, 0xb5, 0x05, 0x1c, 0x88, 0x88, 0x0c, 0x1c, + 0x82, 0xb0, 0x1f, 0x4f, 0x00, 0x28, 0x00, 0xd1, + 0x00, 0x27, 0x04, 0x98, 0x00, 0x28, 0x01, 0xd1, + 0xf9, 0xf7, 0x8a, 0xfd, 0x1b, 0x48, 0x3b, 0x1c, + 0x00, 0x68, 0x21, 0x1c, 0x02, 0x68, 0x28, 0x1c, + 0x00, 0x92, 0x04, 0x9a, 0xfe, 0xf7, 0x3c, 0xf8, + 0x3c, 0x00, 0x00, 0x78, 0x00, 0x00, 0x06, 0x1c, + 0x22, 0xd0, 0x03, 0x21, 0x04, 0x98, 0x02, 0xf0, + 0xb8, 0xff, 0x00, 0x28, 0x1b, 0xd0, 0x80, 0x78, + 0x01, 0x21, 0x03, 0xf0, 0xe4, 0xff, 0xa0, 0x88, + 0xa1, 0x8e, 0x48, 0x43, 0x00, 0x04, 0x0f, 0x49, + 0x00, 0x0c, 0x08, 0x80, 0x03, 0xf0, 0x81, 0xf9, + 0x01, 0x22, 0x00, 0x2d, 0x00, 0xd1, 0x00, 0x22, + 0x01, 0x1c, 0x0e, 0x20, 0x0b, 0xf0, 0xc9, 0xfe, + 0x00, 0x2f, 0x3c, 0x00, 0x3c, 0x78, 0x00, 0x00, + 0x08, 0xd1, 0x00, 0x21, 0x28, 0x1c, 0x02, 0xf0, + 0xbd, 0xfc, 0x03, 0xe0, 0x00, 0x26, 0x28, 0x1c, + 0x00, 0xf0, 0x0a, 0xf8, 0x30, 0x1c, 0x05, 0xb0, + 0xf0, 0xbd, 0x00, 0x00, 0xc1, 0xa1, 0x00, 0x00, + 0xe4, 0x65, 0x01, 0x00, 0xa8, 0x7c, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0xfe, 0xf7, 0x38, 0xf8, + 0x01, 0x21, 0x00, 0x2c, 0x00, 0xd1, 0x00, 0x21, + 0x0e, 0x20, 0x0b, 0xf0, 0x3c, 0x00, 0x78, 0x78, + 0x00, 0x00, 0xdd, 0xfe, 0x10, 0xbd, 0xf8, 0xb5, + 0x07, 0x1c, 0x0b, 0xf0, 0x94, 0xfa, 0xfd, 0xf7, + 0xbc, 0xfe, 0x00, 0x26, 0x02, 0x28, 0x1e, 0x4d, + 0x01, 0xd0, 0x2e, 0x70, 0xf8, 0xbd, 0xfd, 0xf7, + 0x3e, 0xf8, 0x04, 0x1c, 0xf9, 0xf7, 0x59, 0xfc, + 0x00, 0x28, 0x14, 0xd0, 0xfd, 0xf7, 0x77, 0xf8, + 0x00, 0x28, 0x10, 0xd0, 0x02, 0xf0, 0xf9, 0xfb, + 0x00, 0x28, 0x01, 0xd0, 0x00, 0x24, 0x3c, 0x00, + 0xb4, 0x78, 0x00, 0x00, 0x00, 0xe0, 0x15, 0x4c, + 0x33, 0x1c, 0x21, 0x1c, 0x07, 0x22, 0x16, 0x20, + 0x0b, 0xf0, 0x66, 0xff, 0x68, 0x78, 0x80, 0x21, + 0x08, 0x43, 0x68, 0x70, 0x02, 0xf0, 0x0a, 0xfc, + 0x00, 0x28, 0xde, 0xd1, 0x28, 0x78, 0x80, 0x07, + 0xdb, 0xd4, 0xfd, 0xf7, 0x23, 0xf9, 0x00, 0x28, + 0x05, 0xd1, 0x28, 0x78, 0xc0, 0x07, 0x02, 0xd5, + 0xfd, 0xf7, 0x42, 0xf8, 0xd1, 0xe7, 0x02, 0xf0, + 0x3c, 0x00, 0xf0, 0x78, 0x00, 0x00, 0xcd, 0xfb, + 0x00, 0x28, 0xcd, 0xd0, 0x28, 0x78, 0x02, 0x21, + 0x08, 0x43, 0x28, 0x70, 0x21, 0x1c, 0x38, 0x1c, + 0xfd, 0xf7, 0xc1, 0xf8, 0xc4, 0xe7, 0x60, 0x6c, + 0x01, 0x00, 0x71, 0x02, 0x00, 0x00, 0x10, 0xb5, + 0x12, 0x4c, 0x01, 0x20, 0x20, 0x70, 0xfe, 0xf7, + 0xf0, 0xf9, 0x01, 0x21, 0xa0, 0x68, 0xfb, 0xf7, + 0xf4, 0xfe, 0xa0, 0x68, 0x03, 0xf0, 0x87, 0xff, + 0x0d, 0x48, 0x3c, 0x00, 0x2c, 0x79, 0x00, 0x00, + 0xa1, 0x68, 0x07, 0xf0, 0x23, 0xfd, 0xfb, 0xf7, + 0x55, 0xff, 0xe0, 0x68, 0x00, 0x28, 0x0d, 0xd0, + 0x09, 0x49, 0x06, 0x20, 0x0a, 0xf0, 0x24, 0xfd, + 0x08, 0x49, 0x05, 0x20, 0x0a, 0xf0, 0x20, 0xfd, + 0xfb, 0xf7, 0x6e, 0xff, 0x00, 0x28, 0x01, 0xd0, + 0x05, 0xf0, 0xf8, 0xfc, 0x10, 0xbd, 0x00, 0x00, + 0x78, 0x69, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xe1, 0x35, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x79, + 0x00, 0x00, 0xb1, 0x35, 0x00, 0x00, 0xf0, 0xb5, + 0x24, 0x4d, 0x23, 0x4c, 0x68, 0x7c, 0x20, 0x3c, + 0x9b, 0xb0, 0x00, 0x28, 0x08, 0xd0, 0x02, 0x28, + 0x03, 0xd8, 0x20, 0x89, 0x01, 0x38, 0x20, 0x81, + 0x37, 0xe0, 0x00, 0x27, 0x6f, 0x74, 0x34, 0xe0, + 0x1c, 0x4e, 0x68, 0x22, 0x14, 0x36, 0x31, 0x1c, + 0x0c, 0x31, 0x01, 0xa8, 0xf8, 0xf7, 0x09, 0xfe, + 0x18, 0x48, 0x33, 0x89, 0x01, 0x21, 0x3c, 0x00, + 0xa4, 0x79, 0x00, 0x00, 0x44, 0x30, 0x0a, 0x1c, + 0x00, 0x2b, 0x00, 0x7b, 0x00, 0xd1, 0x02, 0x1c, + 0x12, 0x06, 0x12, 0x0e, 0x0d, 0xaf, 0x3a, 0x70, + 0x94, 0x46, 0xaa, 0x7b, 0x93, 0x19, 0x30, 0x33, + 0x5b, 0x7b, 0x7b, 0x70, 0xea, 0x73, 0x01, 0x32, + 0x12, 0x06, 0x12, 0x0e, 0x00, 0x27, 0x82, 0x42, + 0xaa, 0x73, 0x01, 0xd3, 0xaf, 0x73, 0x04, 0xe0, + 0x62, 0x46, 0x01, 0x2a, 0x01, 0xd1, 0x77, 0x60, + 0x3c, 0x00, 0xe0, 0x79, 0x00, 0x00, 0x00, 0xe0, + 0x71, 0x60, 0x06, 0x48, 0x07, 0x4a, 0x80, 0x38, + 0x81, 0x67, 0x42, 0x67, 0x68, 0x22, 0x01, 0xa9, + 0xf8, 0xf7, 0xdd, 0xfd, 0x27, 0x81, 0x08, 0xf0, + 0x12, 0xfd, 0x1b, 0xb0, 0xf0, 0xbd, 0x84, 0x66, + 0x01, 0x00, 0xe9, 0x2e, 0x00, 0x00, 0xf1, 0xb5, + 0x86, 0xb0, 0x06, 0x99, 0x00, 0x20, 0x88, 0x61, + 0x06, 0x98, 0x84, 0x68, 0x80, 0x8d, 0x65, 0x68, + 0x01, 0x28, 0x3c, 0x00, 0x1c, 0x7a, 0x00, 0x00, + 0x4c, 0xd9, 0x35, 0x49, 0x49, 0x68, 0x05, 0x91, + 0x00, 0x29, 0x47, 0xd0, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x23, 0x03, 0x90, 0x28, 0x1c, 0x96, 0x46, + 0x94, 0x46, 0x06, 0x68, 0x04, 0x96, 0xf2, 0x78, + 0x80, 0x26, 0xb2, 0x43, 0x3f, 0x2a, 0x2e, 0xd8, + 0xd7, 0x06, 0xff, 0x0e, 0x01, 0x26, 0xbe, 0x40, + 0x37, 0x1c, 0x04, 0x9e, 0x52, 0x09, 0xb6, 0x78, + 0x76, 0x00, 0xb2, 0x18, 0x3c, 0x00, 0x58, 0x7a, + 0x00, 0x00, 0x26, 0x4e, 0x92, 0x00, 0x1c, 0x36, + 0xb2, 0x58, 0x3a, 0x40, 0x1e, 0xd0, 0x03, 0xe0, + 0x02, 0x90, 0x02, 0x89, 0xc0, 0x68, 0x51, 0x18, + 0x00, 0x28, 0xf9, 0xd1, 0x05, 0x98, 0x81, 0x42, + 0x14, 0xd8, 0x70, 0x46, 0x01, 0x30, 0x86, 0x46, + 0x00, 0x2b, 0x04, 0xd0, 0x60, 0x46, 0xd8, 0x60, + 0x01, 0x98, 0x62, 0x46, 0xd0, 0x60, 0x03, 0x98, + 0x01, 0x38, 0x03, 0x90, 0x06, 0xd0, 0x3c, 0x00, + 0x94, 0x7a, 0x00, 0x00, 0x23, 0x1c, 0x24, 0x68, + 0x60, 0x68, 0x02, 0x9a, 0x01, 0x90, 0x94, 0x46, + 0xc9, 0xe7, 0x70, 0x46, 0x01, 0x28, 0x07, 0xd9, + 0x2a, 0x1c, 0x00, 0x21, 0x3f, 0x20, 0x01, 0xf0, + 0x51, 0xff, 0x05, 0x1c, 0x06, 0x98, 0x85, 0x61, + 0x28, 0x1c, 0x01, 0xf0, 0xb3, 0xff, 0x0e, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x07, 0xd0, 0x28, 0x68, + 0x01, 0x88, 0x40, 0x79, 0x02, 0x31, 0x09, 0x1a, + 0x3c, 0x00, 0xd0, 0x7a, 0x00, 0x00, 0x28, 0x1c, + 0x01, 0xf0, 0xe5, 0xfc, 0xa2, 0x68, 0x06, 0x98, + 0xc0, 0x68, 0x06, 0x99, 0x0b, 0x69, 0x29, 0x1c, + 0xf8, 0xf7, 0x7c, 0xfc, 0x03, 0x49, 0x08, 0x69, + 0x01, 0x30, 0x08, 0x61, 0x07, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xfc, 0x5a, 0x01, 0x00, 0xcc, 0x5c, + 0x01, 0x00, 0x10, 0xb5, 0x09, 0x4a, 0x80, 0x00, + 0x12, 0x58, 0xd0, 0x06, 0xc0, 0x0e, 0x01, 0x30, + 0x07, 0x4b, 0x3c, 0x00, 0x0c, 0x7b, 0x00, 0x00, + 0x1c, 0x68, 0x00, 0x2c, 0xfc, 0xdb, 0x5a, 0x60, + 0x20, 0x22, 0x12, 0x1a, 0x91, 0x40, 0x19, 0x60, + 0x19, 0x68, 0x00, 0x29, 0xfc, 0xdb, 0x10, 0xbd, + 0xe8, 0x60, 0x01, 0x00, 0x30, 0x20, 0x07, 0x00, + 0xb0, 0xb5, 0x12, 0x4c, 0x00, 0x25, 0x25, 0x70, + 0xa1, 0x68, 0x11, 0x48, 0x07, 0xf0, 0x32, 0xfc, + 0x65, 0x61, 0xfb, 0xf7, 0xa3, 0xfe, 0xe0, 0x68, + 0x00, 0x28, 0x0d, 0xd0, 0x3c, 0x00, 0x48, 0x7b, + 0x00, 0x00, 0xfb, 0xf7, 0xa4, 0xfe, 0x01, 0x21, + 0x07, 0x20, 0x0b, 0xf0, 0x70, 0xfd, 0x0a, 0x49, + 0x06, 0x20, 0x0a, 0xf0, 0x4c, 0xfc, 0x09, 0x49, + 0x05, 0x20, 0x0a, 0xf0, 0x48, 0xfc, 0xa0, 0x68, + 0x03, 0xf0, 0x67, 0xfe, 0x00, 0x21, 0xa0, 0x68, + 0xfb, 0xf7, 0xcd, 0xfd, 0x05, 0xf0, 0xab, 0xfb, + 0xb0, 0xbd, 0x78, 0x69, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0xe1, 0x35, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x7b, 0x00, 0x00, 0xb1, 0x35, 0x00, 0x00, + 0x10, 0xb5, 0x0f, 0x4c, 0x20, 0x7c, 0x00, 0x28, + 0x19, 0xd1, 0x60, 0x69, 0x00, 0x28, 0x16, 0xd1, + 0xe0, 0x68, 0x00, 0x28, 0x06, 0xd0, 0x0a, 0x48, + 0x1c, 0x38, 0xc0, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0x05, 0xf0, 0xce, 0xfb, 0x01, 0x21, 0x07, 0x20, + 0x0b, 0xf0, 0x40, 0xfd, 0xa0, 0x68, 0x03, 0xf0, + 0x3f, 0xfe, 0x04, 0x48, 0xa1, 0x68, 0x07, 0xf0, + 0x3c, 0x00, 0xc0, 0x7b, 0x00, 0x00, 0xdb, 0xfb, + 0x01, 0x20, 0x20, 0x70, 0x10, 0xbd, 0x78, 0x69, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0x70, 0xb5, + 0x0e, 0x4c, 0x01, 0x22, 0xa3, 0x68, 0xe5, 0x68, + 0x26, 0x8a, 0x5d, 0x1b, 0xb5, 0x42, 0x01, 0xd1, + 0x00, 0x22, 0x06, 0xe0, 0x25, 0x68, 0x01, 0x33, + 0x2e, 0x68, 0xa3, 0x60, 0x26, 0x60, 0x04, 0x35, + 0x03, 0xc5, 0x00, 0x2a, 0x04, 0xd1, 0x01, 0x21, + 0x9d, 0x20, 0x3c, 0x00, 0xfc, 0x7b, 0x00, 0x00, + 0xf9, 0xf7, 0x52, 0xfb, 0x70, 0xbd, 0x03, 0x49, + 0x02, 0x20, 0x08, 0x60, 0x70, 0xbd, 0x00, 0x00, + 0x44, 0xe3, 0x01, 0x00, 0x40, 0x20, 0x07, 0x00, + 0x80, 0xb5, 0x02, 0xf0, 0xb9, 0xf8, 0x80, 0xbd, + 0x80, 0xb5, 0x02, 0x21, 0x2d, 0x20, 0xf9, 0xf7, + 0x3f, 0xfb, 0x00, 0x20, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x2a, 0x20, 0xf9, 0xf7, + 0x37, 0xfb, 0x00, 0x20, 0x3c, 0x00, 0x38, 0x7c, + 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x01, 0x21, 0x2b, 0x20, 0xf9, 0xf7, 0x2f, 0xfb, + 0x02, 0x20, 0x80, 0xbd, 0x00, 0x00, 0x01, 0x49, + 0x01, 0x20, 0x08, 0x61, 0x70, 0x47, 0x7c, 0x78, + 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0c, 0x23, + 0x0f, 0x1c, 0x17, 0x49, 0x58, 0x43, 0x45, 0x18, + 0x6c, 0x68, 0x30, 0x1c, 0x0b, 0xf0, 0x3f, 0xfe, + 0x00, 0x2f, 0x09, 0xd1, 0x30, 0x1c, 0x3c, 0x00, + 0x74, 0x7c, 0x00, 0x00, 0x03, 0xf0, 0xee, 0xfe, + 0x41, 0x20, 0x07, 0x55, 0x11, 0x48, 0x21, 0x1c, + 0xff, 0xf7, 0xa6, 0xff, 0xf8, 0xbd, 0x41, 0x20, + 0x07, 0x55, 0xa0, 0x6b, 0x00, 0x28, 0x03, 0xd0, + 0x20, 0x1c, 0x00, 0xf0, 0xdf, 0xf9, 0xf5, 0xe7, + 0x20, 0x1c, 0x00, 0xf0, 0xdb, 0xf9, 0xac, 0x68, + 0x00, 0x2c, 0x02, 0xd0, 0x00, 0x20, 0xa8, 0x60, + 0xed, 0xe7, 0x30, 0x1c, 0x05, 0xf0, 0x34, 0xf9, + 0x3c, 0x00, 0xb0, 0x7c, 0x00, 0x00, 0x04, 0x1c, + 0xe8, 0xd1, 0x08, 0x21, 0x0c, 0x20, 0xf9, 0xf7, + 0xf4, 0xfa, 0xe3, 0xe7, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x55, 0x80, 0x00, 0x00, 0x07, 0x4a, + 0x80, 0xb5, 0x50, 0x70, 0x51, 0x60, 0x12, 0x78, + 0x06, 0x4b, 0x80, 0x00, 0x52, 0x01, 0xd2, 0x18, + 0x10, 0x18, 0x40, 0x38, 0x02, 0x68, 0x08, 0x1c, + 0xf8, 0xf7, 0x7b, 0xfb, 0x80, 0xbd, 0x78, 0x69, + 0x01, 0x00, 0x3c, 0x00, 0xec, 0x7c, 0x00, 0x00, + 0xfc, 0x42, 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x49, + 0x04, 0x1c, 0xc8, 0x70, 0x08, 0x4d, 0xe4, 0x35, + 0xa8, 0x7a, 0x08, 0x71, 0x08, 0x2c, 0x01, 0xd3, + 0xf9, 0xf7, 0xfc, 0xfa, 0xa8, 0x7a, 0x05, 0x49, + 0x40, 0x01, 0x40, 0x18, 0xa1, 0x00, 0x40, 0x58, + 0xf8, 0xf7, 0x60, 0xfb, 0xb0, 0xbd, 0x00, 0x00, + 0x60, 0x6c, 0x01, 0x00, 0x80, 0x43, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x28, 0x3c, 0x00, 0x28, 0x7d, + 0x00, 0x00, 0x01, 0xd0, 0x09, 0xf0, 0x1d, 0xf9, + 0x80, 0xbd, 0xb0, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, + 0x00, 0x20, 0x08, 0x60, 0x68, 0x68, 0x09, 0xf0, + 0x36, 0xfb, 0x6c, 0x60, 0xb0, 0xbd, 0x10, 0xb5, + 0x04, 0x1c, 0x09, 0xf0, 0x34, 0xfb, 0x21, 0x68, + 0x00, 0x29, 0x00, 0xd1, 0x64, 0x60, 0x10, 0xbd, + 0x00, 0x00, 0x00, 0x21, 0x01, 0x60, 0x40, 0x60, + 0x70, 0x47, 0xf8, 0xb5, 0x46, 0x68, 0x3c, 0x00, + 0x64, 0x7d, 0x00, 0x00, 0x04, 0x1c, 0x40, 0x6a, + 0x35, 0x1c, 0x0a, 0x35, 0x00, 0x28, 0x04, 0xd0, + 0x20, 0x1c, 0xf9, 0xf7, 0x89, 0xfd, 0x07, 0x1c, + 0x00, 0xe0, 0x04, 0x27, 0x29, 0x1c, 0x60, 0x69, + 0x00, 0xf0, 0xf6, 0xfc, 0x79, 0x00, 0x0f, 0x18, + 0xba, 0x88, 0xf1, 0x8a, 0x05, 0x1c, 0x8a, 0x42, + 0x05, 0xd1, 0x30, 0x88, 0x00, 0x05, 0x02, 0xd5, + 0x04, 0xf0, 0xbe, 0xfb, 0x3c, 0xe0, 0x28, 0x68, + 0x3c, 0x00, 0xa0, 0x7d, 0x00, 0x00, 0x00, 0x28, + 0x0f, 0xd0, 0x01, 0x32, 0x8a, 0x42, 0x04, 0xd1, + 0xf9, 0xf7, 0x0f, 0xfc, 0x21, 0x68, 0xc1, 0x60, + 0x0b, 0xe0, 0xf9, 0xf7, 0xf0, 0xfb, 0xf0, 0x8a, + 0x00, 0x07, 0x04, 0xd0, 0x00, 0x21, 0x29, 0x60, + 0x29, 0xe0, 0x08, 0x07, 0x27, 0xd1, 0x20, 0x68, + 0x28, 0x60, 0xf0, 0x8a, 0xb8, 0x80, 0x13, 0x48, + 0x01, 0x68, 0x01, 0x31, 0x01, 0x60, 0x31, 0x88, + 0x49, 0x05, 0x3c, 0x00, 0xdc, 0x7d, 0x00, 0x00, + 0x18, 0xd4, 0x29, 0x68, 0x21, 0x60, 0x00, 0x21, + 0x29, 0x60, 0xe1, 0x69, 0x00, 0x29, 0x0d, 0xd0, + 0x89, 0x79, 0x02, 0x29, 0x0a, 0xd1, 0x08, 0x21, + 0x21, 0x86, 0x21, 0x1c, 0x38, 0x31, 0xa1, 0x62, + 0x22, 0x1c, 0xdc, 0x30, 0x08, 0x49, 0x02, 0xf0, + 0x81, 0xf9, 0xf8, 0xbd, 0x20, 0x1c, 0x00, 0xf0, + 0x5f, 0xf8, 0xfa, 0xe7, 0x20, 0x1c, 0xf9, 0xf7, + 0xef, 0xfc, 0xf6, 0xe7, 0x3c, 0x00, 0x18, 0x7e, + 0x00, 0x00, 0x20, 0x68, 0xf9, 0xf7, 0xbd, 0xfb, + 0xf7, 0xe7, 0xc4, 0x69, 0x01, 0x00, 0xb9, 0x71, + 0x00, 0x00, 0xf8, 0xb5, 0x0f, 0x1c, 0x09, 0x78, + 0x01, 0x24, 0xc9, 0x07, 0x21, 0xd5, 0x02, 0xf0, + 0x8c, 0xff, 0x00, 0x28, 0x01, 0xd0, 0x00, 0x24, + 0x1b, 0xe0, 0x0e, 0x4e, 0x75, 0x6e, 0x00, 0x2d, + 0x17, 0xd0, 0x34, 0x6e, 0x06, 0x22, 0x31, 0x1c, + 0x38, 0x1c, 0xf8, 0xf7, 0xd4, 0xfa, 0x3c, 0x00, + 0x54, 0x7e, 0x00, 0x00, 0x00, 0x28, 0x05, 0xd1, + 0x01, 0x20, 0x00, 0x2c, 0x00, 0xd0, 0x00, 0x20, + 0x04, 0x1c, 0x03, 0xe0, 0x01, 0x3d, 0x06, 0x36, + 0x00, 0x2d, 0xee, 0xd1, 0x00, 0x2c, 0x03, 0xd1, + 0x02, 0x4e, 0xb0, 0x6e, 0x01, 0x30, 0xb0, 0x66, + 0x20, 0x1c, 0xf8, 0xbd, 0x10, 0x79, 0x01, 0x00, + 0x30, 0xb5, 0x05, 0x1c, 0x00, 0x20, 0x06, 0x49, + 0x00, 0x22, 0x1c, 0x23, 0xcc, 0x56, 0xac, 0x42, + 0x3c, 0x00, 0x90, 0x7e, 0x00, 0x00, 0x01, 0xd1, + 0x08, 0x1c, 0x30, 0xbd, 0x01, 0x32, 0x48, 0x31, + 0x01, 0x2a, 0xf5, 0xd3, 0x30, 0xbd, 0xcc, 0x6d, + 0x01, 0x00, 0x10, 0xb5, 0x08, 0x4c, 0x00, 0x22, + 0x1c, 0x23, 0x53, 0x43, 0xe3, 0x58, 0x83, 0x42, + 0x04, 0xd1, 0x1c, 0x20, 0x50, 0x43, 0x00, 0x19, + 0x0a, 0x60, 0x10, 0xbd, 0x01, 0x32, 0x0e, 0x2a, + 0xf2, 0xd3, 0x00, 0x20, 0x10, 0xbd, 0xdc, 0x71, + 0x01, 0x00, 0x3c, 0x00, 0xcc, 0x7e, 0x00, 0x00, + 0xf0, 0xb5, 0x41, 0x68, 0x95, 0xb0, 0x07, 0x1c, + 0x90, 0x37, 0x13, 0x91, 0x04, 0x1c, 0xf8, 0x78, + 0x25, 0x1c, 0x80, 0x35, 0xc6, 0x07, 0x28, 0x79, + 0xf6, 0x0f, 0x4a, 0x49, 0x02, 0x28, 0x4d, 0xd1, + 0x0a, 0x6d, 0x00, 0x2a, 0x4a, 0xd0, 0x48, 0x68, + 0x01, 0x30, 0x48, 0x60, 0x0a, 0xf0, 0x58, 0xff, + 0x44, 0x49, 0x08, 0x61, 0x48, 0x61, 0x13, 0x99, + 0x09, 0x79, 0xc9, 0x07, 0x3c, 0x00, 0x08, 0x7f, + 0x00, 0x00, 0x01, 0xd4, 0x41, 0x49, 0x88, 0x61, + 0x20, 0x68, 0x06, 0x22, 0x06, 0x90, 0xa1, 0x68, + 0x03, 0xa8, 0xf8, 0xf7, 0xee, 0xfa, 0x06, 0x22, + 0x04, 0xa8, 0x02, 0x30, 0xe1, 0x68, 0xf8, 0xf7, + 0xe8, 0xfa, 0x07, 0xa8, 0x06, 0x22, 0x21, 0x69, + 0xf8, 0xf7, 0xe3, 0xfa, 0xb8, 0x78, 0x08, 0xab, + 0x00, 0x21, 0x98, 0x70, 0x0c, 0x96, 0x63, 0x6a, + 0x20, 0x1c, 0xa0, 0x30, 0x0a, 0x1c, 0x3c, 0x00, + 0x44, 0x7f, 0x00, 0x00, 0x00, 0x2b, 0x02, 0xd0, + 0x02, 0x8a, 0x52, 0x07, 0x52, 0x0f, 0x08, 0xab, + 0xda, 0x70, 0x00, 0xab, 0x99, 0x84, 0x13, 0x99, + 0x09, 0x88, 0xc9, 0x0b, 0xd9, 0x84, 0x69, 0x6b, + 0x10, 0xab, 0x10, 0x91, 0xa9, 0x6b, 0x11, 0x91, + 0x80, 0x8b, 0x29, 0x49, 0x18, 0x81, 0x09, 0x6d, + 0x03, 0xa8, 0xf8, 0xf7, 0x32, 0xfa, 0x29, 0x79, + 0x68, 0x6b, 0x0b, 0xf0, 0x4d, 0xfd, 0x29, 0x79, + 0x3c, 0x00, 0x80, 0x7f, 0x00, 0x00, 0xa8, 0x6b, + 0x0b, 0xf0, 0x67, 0xfd, 0x3d, 0xe0, 0x00, 0x28, + 0x38, 0xd1, 0x48, 0x6d, 0x14, 0x90, 0x00, 0x28, + 0x34, 0xd0, 0x20, 0x68, 0x06, 0x22, 0x03, 0x90, + 0xa1, 0x68, 0x68, 0x46, 0xf8, 0xf7, 0xab, 0xfa, + 0x06, 0x22, 0x68, 0x46, 0x80, 0x18, 0xe1, 0x68, + 0xf8, 0xf7, 0xa5, 0xfa, 0x05, 0xa8, 0x06, 0x22, + 0x21, 0x69, 0xf8, 0xf7, 0xa0, 0xfa, 0x00, 0x21, + 0x04, 0x91, 0x3c, 0x00, 0xbc, 0x7f, 0x00, 0x00, + 0xb9, 0x78, 0x08, 0xa8, 0x10, 0xab, 0x01, 0x72, + 0x08, 0x96, 0xe9, 0x68, 0x0b, 0x91, 0x69, 0x79, + 0x41, 0x72, 0x68, 0x6b, 0x0e, 0x90, 0xa8, 0x6b, + 0x10, 0x90, 0x28, 0x8d, 0xd8, 0x80, 0x68, 0x8d, + 0x18, 0x81, 0xe1, 0x69, 0x0c, 0xa8, 0x00, 0x29, + 0x04, 0xd0, 0x89, 0x79, 0x01, 0x70, 0x20, 0x6a, + 0x0d, 0x90, 0x01, 0xe0, 0x07, 0x21, 0x01, 0x70, + 0x68, 0x46, 0x14, 0x99, 0x3c, 0x00, 0xf8, 0x7f, + 0x00, 0x00, 0xf8, 0xf7, 0xef, 0xf9, 0x02, 0xe0, + 0x20, 0x68, 0xf9, 0xf7, 0xca, 0xfa, 0x20, 0x1c, + 0xf9, 0xf7, 0xf5, 0xfb, 0x15, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0xc0, 0x68, 0x06, 0x22, 0x01, 0x89, + 0x0c, 0x31, 0x01, 0x81, 0x05, 0x68, 0x21, 0x1c, + 0x0c, 0x3d, 0x05, 0x60, 0xa8, 0x18, 0xf8, 0xf7, + 0x64, 0xfa, 0x06, 0x22, 0xa1, 0x18, 0x3c, 0x00, + 0x34, 0x80, 0x00, 0x00, 0x28, 0x1c, 0xf8, 0xf7, + 0x5f, 0xfa, 0xa0, 0x8f, 0x00, 0x09, 0xe0, 0x62, + 0x20, 0x63, 0x03, 0x48, 0x01, 0x69, 0x20, 0x1c, + 0xf8, 0xf7, 0xc7, 0xf9, 0xb0, 0xbd, 0x00, 0x00, + 0x7c, 0x79, 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x60, 0x36, 0x05, 0x1c, 0x70, 0x7a, 0x0c, 0x23, + 0x25, 0x49, 0x58, 0x43, 0x44, 0x18, 0xa8, 0x6b, + 0x00, 0x27, 0x00, 0x28, 0x06, 0xd0, 0xa0, 0x78, + 0x3c, 0x00, 0x70, 0x80, 0x00, 0x00, 0x01, 0x28, + 0x03, 0xd1, 0xa7, 0x70, 0x70, 0x7a, 0x0a, 0xf0, + 0xb6, 0xfd, 0x2a, 0x1c, 0x0c, 0x21, 0x80, 0x20, + 0x0b, 0xf0, 0x95, 0xfb, 0xa8, 0x6b, 0x00, 0x28, + 0x33, 0xd0, 0xa0, 0x78, 0x02, 0x28, 0x0b, 0xd0, + 0x04, 0x28, 0x22, 0xd1, 0xa7, 0x70, 0x2f, 0x1c, + 0x40, 0x37, 0x78, 0x78, 0x02, 0x28, 0x0c, 0xd1, + 0x70, 0x7a, 0x0a, 0xf0, 0xa0, 0xfd, 0x18, 0xe0, + 0x03, 0x20, 0x3c, 0x00, 0xac, 0x80, 0x00, 0x00, + 0xa0, 0x70, 0x12, 0x49, 0x00, 0x20, 0x14, 0x39, + 0x09, 0x69, 0xf8, 0xf7, 0x90, 0xf9, 0x0f, 0xe0, + 0x2c, 0x1c, 0x07, 0xe0, 0x78, 0x78, 0x41, 0x21, + 0x22, 0x1c, 0x08, 0x55, 0x0c, 0x21, 0x80, 0x20, + 0x0b, 0xf0, 0x70, 0xfb, 0x60, 0x34, 0x60, 0x7a, + 0x04, 0xf0, 0x20, 0xff, 0x04, 0x1c, 0xf1, 0xd1, + 0x70, 0x7a, 0x40, 0x35, 0xa9, 0x8b, 0x00, 0x02, + 0x09, 0x09, 0x09, 0x04, 0x3c, 0x00, 0xe8, 0x80, + 0x00, 0x00, 0x08, 0x43, 0x81, 0x21, 0x01, 0x43, + 0x0c, 0x20, 0x0b, 0xf0, 0xa0, 0xfa, 0xf8, 0xbd, + 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, 0xf8, 0xb5, + 0x1c, 0x49, 0x05, 0x1c, 0x88, 0x6a, 0x01, 0x30, + 0x88, 0x62, 0x28, 0x1c, 0x0b, 0xf0, 0x7d, 0xfd, + 0x04, 0x1c, 0x11, 0xd0, 0x2b, 0x1c, 0x20, 0x33, + 0x1e, 0x1c, 0x5a, 0x79, 0x20, 0x1c, 0xb4, 0x30, + 0x19, 0x79, 0x14, 0x4f, 0xfd, 0xf7, 0x3c, 0x00, + 0x24, 0x81, 0x00, 0x00, 0x89, 0xf8, 0xaa, 0x7a, + 0x20, 0x1c, 0xb8, 0x30, 0xb1, 0x79, 0xfd, 0xf7, + 0xb9, 0xf8, 0x00, 0x2f, 0x04, 0xd1, 0x01, 0x21, + 0x28, 0x68, 0xfa, 0xf7, 0x6d, 0xfa, 0xf8, 0xbd, + 0x60, 0x68, 0xbc, 0x21, 0xc0, 0x8a, 0x08, 0x53, + 0x28, 0x68, 0x00, 0x21, 0xfa, 0xf7, 0x64, 0xfa, + 0x00, 0x28, 0x09, 0xd0, 0x06, 0x49, 0xc8, 0x6a, + 0x01, 0x30, 0xc8, 0x62, 0x00, 0x2c, 0xee, 0xd0, + 0x3c, 0x00, 0x60, 0x81, 0x00, 0x00, 0x20, 0x1c, + 0xf9, 0xf7, 0x47, 0xfb, 0xea, 0xe7, 0x20, 0x1c, + 0xf8, 0xf7, 0x3c, 0xf9, 0xe6, 0xe7, 0xc4, 0x69, + 0x01, 0x00, 0xa1, 0xff, 0x00, 0x00, 0xf8, 0xb5, + 0x16, 0x4c, 0x05, 0x1f, 0x00, 0x22, 0x21, 0x1c, + 0xa0, 0x31, 0x03, 0xe0, 0x28, 0x68, 0xa0, 0x42, + 0x09, 0xd0, 0x20, 0x34, 0xa1, 0x42, 0xf9, 0xd1, + 0x00, 0x2a, 0x04, 0xd1, 0x02, 0x21, 0x8e, 0x20, + 0xf9, 0xf7, 0x3c, 0x00, 0x9c, 0x81, 0x00, 0x00, + 0x83, 0xf8, 0xf8, 0xbd, 0x0d, 0x4f, 0xbe, 0x79, + 0x60, 0x69, 0x01, 0x30, 0x60, 0x61, 0xf8, 0xf7, + 0x97, 0xfd, 0xa8, 0x42, 0x07, 0xd1, 0xa0, 0x88, + 0x04, 0x30, 0xf8, 0xf7, 0x97, 0xfd, 0xe0, 0x69, + 0x01, 0x30, 0xe0, 0x61, 0x05, 0xe0, 0x20, 0x68, + 0x28, 0x60, 0x25, 0x60, 0xa0, 0x69, 0x01, 0x30, + 0xa0, 0x61, 0xbe, 0x71, 0xe5, 0xe7, 0x00, 0x00, + 0xd0, 0x5c, 0x01, 0x00, 0x3c, 0x00, 0xd8, 0x81, + 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, 0x00, 0x29, + 0x01, 0xdb, 0x06, 0x29, 0x01, 0xdb, 0x02, 0x20, + 0x70, 0x47, 0x06, 0x4b, 0xc9, 0x00, 0x5a, 0x5c, + 0xc9, 0x18, 0x02, 0x70, 0x4a, 0x78, 0x42, 0x70, + 0x8a, 0x78, 0x82, 0x70, 0x49, 0x68, 0x41, 0x60, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0xcc, 0x5a, + 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xf9, 0xf7, 0x3c, 0x00, + 0x14, 0x82, 0x00, 0x00, 0x75, 0xf8, 0x10, 0x48, + 0x40, 0x68, 0x00, 0x28, 0x00, 0xd0, 0x03, 0x24, + 0x10, 0x2d, 0x00, 0xd3, 0x0f, 0x25, 0x06, 0x20, + 0x0b, 0x49, 0x60, 0x43, 0x12, 0x31, 0x40, 0x18, + 0x41, 0x78, 0x80, 0x78, 0x49, 0x19, 0x09, 0x06, + 0x09, 0x0e, 0x88, 0x42, 0x00, 0xd2, 0x01, 0x1c, + 0x01, 0x20, 0x88, 0x40, 0x05, 0x49, 0x01, 0x38, + 0x09, 0x68, 0x08, 0x40, 0x00, 0x04, 0x00, 0x0c, + 0x3c, 0x00, 0x50, 0x82, 0x00, 0x00, 0x02, 0xf0, + 0x44, 0xfe, 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x7a, + 0x01, 0x00, 0x08, 0x20, 0x07, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0d, 0x1c, 0x09, 0xf0, 0xcf, 0xfd, + 0x00, 0x28, 0x03, 0xd1, 0x20, 0x1c, 0x09, 0xf0, + 0x82, 0xfd, 0x05, 0x61, 0xb0, 0xbd, 0x80, 0xb5, + 0x0a, 0xf0, 0x97, 0xfd, 0x03, 0x4a, 0x0c, 0x32, + 0x06, 0xca, 0x89, 0x18, 0x08, 0x1a, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x82, 0x00, 0x00, + 0xa0, 0x7d, 0x01, 0x00, 0x70, 0xb5, 0x0b, 0x4c, + 0x04, 0x9e, 0x64, 0x68, 0x0d, 0xe0, 0x65, 0x68, + 0x85, 0x42, 0x09, 0xd1, 0x20, 0x7a, 0x08, 0x70, + 0xe0, 0x68, 0x10, 0x60, 0x20, 0x69, 0x18, 0x60, + 0x20, 0x7d, 0x30, 0x80, 0x01, 0x20, 0x70, 0xbd, + 0x24, 0x68, 0x00, 0x2c, 0xef, 0xd1, 0x00, 0x20, + 0x70, 0xbd, 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x3c, 0x00, 0xc8, 0x82, + 0x00, 0x00, 0x20, 0x30, 0x81, 0x7b, 0x20, 0x69, + 0x04, 0x30, 0xfd, 0xf7, 0x64, 0xf9, 0x01, 0x1c, + 0x62, 0x20, 0x02, 0x5b, 0x63, 0x6a, 0x40, 0x34, + 0x20, 0x78, 0x02, 0xf0, 0xce, 0xfd, 0x10, 0xbd, + 0x00, 0x00, 0x0b, 0x49, 0x10, 0xb5, 0x08, 0x88, + 0x8a, 0x69, 0x0a, 0x23, 0x50, 0x43, 0x58, 0x43, + 0x0e, 0xd0, 0x08, 0x4a, 0x53, 0x89, 0x94, 0x88, + 0xd2, 0x88, 0x1b, 0x19, 0x52, 0x04, 0x3c, 0x00, + 0x04, 0x83, 0x00, 0x00, 0x52, 0x0c, 0x9a, 0x18, + 0xc9, 0x68, 0x06, 0x32, 0x4a, 0x43, 0x0a, 0x21, + 0x51, 0x43, 0xf8, 0xf7, 0xfd, 0xf9, 0x10, 0xbd, + 0xc8, 0x74, 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, + 0x10, 0xb5, 0x43, 0x1c, 0x01, 0xd1, 0x10, 0x48, + 0x10, 0xbd, 0x0f, 0x4a, 0x0e, 0x4b, 0x94, 0x3a, + 0x12, 0x68, 0x44, 0x3b, 0x1b, 0x7a, 0x10, 0xe0, + 0x54, 0x68, 0x84, 0x42, 0x0c, 0xd1, 0x00, 0x29, + 0x3c, 0x00, 0x40, 0x83, 0x00, 0x00, 0x0f, 0xd1, + 0x02, 0x2b, 0x03, 0xd1, 0xd4, 0x7b, 0x02, 0x2c, + 0x0a, 0xd2, 0x04, 0xe0, 0x00, 0x2b, 0x05, 0xd1, + 0xd4, 0x7b, 0xe4, 0x07, 0x04, 0xd4, 0x12, 0x68, + 0x00, 0x2a, 0xec, 0xd1, 0x00, 0x20, 0x10, 0xbd, + 0x10, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0x38, 0x6f, + 0x01, 0x00, 0x01, 0x1c, 0x01, 0x20, 0x01, 0x29, + 0x00, 0xd0, 0x00, 0x20, 0x70, 0x47, 0x00, 0xb5, + 0x02, 0x1c, 0x3c, 0x00, 0x7c, 0x83, 0x00, 0x00, + 0xfd, 0xf7, 0xce, 0xf8, 0x00, 0x28, 0x08, 0xd0, + 0x10, 0x1c, 0xff, 0xf7, 0xf1, 0xff, 0x18, 0x23, + 0x03, 0x49, 0x58, 0x43, 0x40, 0x18, 0x00, 0x69, + 0x00, 0xbd, 0x00, 0x20, 0x00, 0xbd, 0x00, 0x00, + 0x94, 0x67, 0x01, 0x00, 0x80, 0xb5, 0x00, 0x28, + 0x00, 0xd1, 0x08, 0x48, 0x07, 0x49, 0x00, 0x68, + 0x50, 0x31, 0x09, 0x7a, 0x00, 0x29, 0x02, 0xd0, + 0x02, 0x29, 0x04, 0xd1, 0x3c, 0x00, 0xb8, 0x83, + 0x00, 0x00, 0x00, 0xe0, 0x01, 0x21, 0x00, 0xf0, + 0x06, 0xf8, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, 0x12, 0x4a, + 0x12, 0x4b, 0x12, 0x7a, 0x2c, 0x3b, 0x00, 0x2a, + 0x03, 0xd1, 0x5a, 0x68, 0x00, 0x2a, 0x18, 0xd1, + 0x04, 0xe0, 0x02, 0x2a, 0x02, 0xd1, 0x9a, 0x68, + 0x00, 0x2a, 0x12, 0xd1, 0x00, 0x20, 0x70, 0x47, + 0xc2, 0x7b, 0x8a, 0x42, 0x01, 0xd0, 0x3c, 0x00, + 0xf4, 0x83, 0x00, 0x00, 0x03, 0x2a, 0x0a, 0xd1, + 0x82, 0x7e, 0x01, 0x2a, 0x07, 0xd1, 0x02, 0x7f, + 0x01, 0x32, 0x12, 0x06, 0x12, 0x0e, 0x02, 0x77, + 0xc3, 0x7e, 0x9a, 0x42, 0xee, 0xd2, 0x00, 0x68, + 0x00, 0x28, 0xec, 0xd1, 0x70, 0x47, 0x00, 0x00, + 0xf4, 0x6e, 0x01, 0x00, 0xf7, 0xb5, 0x84, 0x46, + 0x00, 0x20, 0x01, 0x27, 0x00, 0x24, 0x00, 0x25, + 0x88, 0xb0, 0x07, 0xe0, 0x62, 0x46, 0x52, 0x5d, + 0x3c, 0x00, 0x30, 0x84, 0x00, 0x00, 0x00, 0x2a, + 0x05, 0xd0, 0xab, 0x00, 0x6e, 0x46, 0xf2, 0x50, + 0x01, 0x35, 0x8d, 0x42, 0xf5, 0xd3, 0x00, 0x2d, + 0x00, 0xd0, 0x01, 0x20, 0x00, 0x28, 0x28, 0xd0, + 0x00, 0x27, 0x16, 0x4c, 0x6e, 0x46, 0x22, 0xe0, + 0x20, 0x1c, 0x00, 0xf0, 0x30, 0xf8, 0x01, 0x28, + 0x01, 0xd0, 0x07, 0x28, 0x06, 0xd1, 0x00, 0x21, + 0x20, 0x1c, 0x00, 0xf0, 0x34, 0xf8, 0x31, 0x68, + 0x88, 0x42, 0x3c, 0x00, 0x6c, 0x84, 0x00, 0x00, + 0x01, 0xd2, 0x02, 0x27, 0x14, 0xe0, 0x20, 0x68, + 0xc9, 0x00, 0x0c, 0x18, 0x08, 0x3c, 0x20, 0x1c, + 0x00, 0xf0, 0x1c, 0xf8, 0x07, 0x28, 0x07, 0xd1, + 0x01, 0x20, 0x01, 0x2d, 0x00, 0xd0, 0x00, 0x20, + 0x24, 0x68, 0x00, 0x28, 0x00, 0xd1, 0x08, 0x34, + 0x01, 0x3d, 0x04, 0x36, 0x00, 0x2d, 0xda, 0xd1, + 0x0a, 0x98, 0x04, 0x60, 0x0b, 0xb0, 0x38, 0x1c, + 0xf0, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x84, + 0x00, 0x00, 0x20, 0x52, 0x01, 0x00, 0x00, 0x68, + 0x00, 0x29, 0x01, 0xd0, 0x80, 0x02, 0x80, 0x0a, + 0x70, 0x47, 0x10, 0xb5, 0x40, 0x68, 0x80, 0x00, + 0x44, 0x0f, 0x08, 0x2c, 0x03, 0xd3, 0x02, 0x21, + 0x87, 0x20, 0xf8, 0xf7, 0xec, 0xfe, 0x20, 0x1c, + 0x10, 0xbd, 0x00, 0x29, 0x02, 0xd0, 0x00, 0x68, + 0x80, 0x0d, 0x70, 0x47, 0x40, 0x68, 0x80, 0x05, + 0x80, 0x0d, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x84, 0x00, 0x00, 0x10, 0xb5, 0x40, 0x68, + 0x40, 0x01, 0x44, 0x0f, 0x05, 0x2c, 0x03, 0xd3, + 0x05, 0x21, 0x87, 0x20, 0xf8, 0xf7, 0xd6, 0xfe, + 0x20, 0x1c, 0x10, 0xbd, 0xf8, 0xb5, 0x05, 0x1c, + 0x88, 0x0a, 0x00, 0x90, 0x1c, 0x48, 0x8e, 0x05, + 0xc0, 0x69, 0xb6, 0x0d, 0x17, 0x1c, 0x1c, 0x1c, + 0x00, 0x28, 0x05, 0xd1, 0x18, 0x48, 0x81, 0x69, + 0x8d, 0x42, 0x1d, 0xd0, 0x85, 0x61, 0x11, 0xe0, + 0x3c, 0x00, 0x20, 0x85, 0x00, 0x00, 0xfd, 0xf7, + 0xe8, 0xf8, 0x15, 0x49, 0x09, 0x78, 0x0e, 0x29, + 0x07, 0xd1, 0x00, 0x28, 0x05, 0xd0, 0x11, 0x49, + 0x50, 0x31, 0x06, 0x23, 0xc9, 0x56, 0xf9, 0xf7, + 0x06, 0xfa, 0x0e, 0x49, 0x00, 0x20, 0xc8, 0x61, + 0x8d, 0x61, 0x29, 0x1c, 0x20, 0x1c, 0xf8, 0xf7, + 0xe2, 0xf8, 0x79, 0x43, 0x20, 0x1c, 0xf8, 0xf7, + 0xde, 0xf8, 0x08, 0x48, 0x41, 0x61, 0x20, 0x1c, + 0x00, 0x99, 0x3c, 0x00, 0x5c, 0x85, 0x00, 0x00, + 0xf8, 0xf7, 0xd8, 0xf8, 0x05, 0x48, 0x40, 0x69, + 0x0a, 0x18, 0xa2, 0x42, 0x01, 0xd2, 0x40, 0x18, + 0x01, 0xe0, 0x40, 0x18, 0x00, 0x1b, 0x80, 0x02, + 0x80, 0x19, 0xf8, 0xbd, 0xac, 0x7c, 0x01, 0x00, + 0x11, 0x67, 0x01, 0x00, 0xf8, 0xb5, 0x0f, 0x1c, + 0x06, 0x1c, 0x14, 0x1c, 0x1d, 0x1c, 0x07, 0xf0, + 0xa1, 0xfc, 0x0e, 0x28, 0x09, 0xd1, 0x20, 0x1c, + 0x02, 0xf0, 0xfc, 0xfb, 0x3c, 0x00, 0x98, 0x85, + 0x00, 0x00, 0x00, 0x28, 0x04, 0xd0, 0x08, 0x48, + 0x00, 0x78, 0x02, 0xf0, 0xe4, 0xfb, 0x04, 0x1c, + 0x01, 0x21, 0x00, 0x2e, 0xac, 0x72, 0x00, 0xd0, + 0x39, 0x1c, 0x20, 0x1c, 0x02, 0xf0, 0x07, 0xfc, + 0x28, 0x60, 0x00, 0x20, 0x28, 0x72, 0x6c, 0x72, + 0xf8, 0xbd, 0x90, 0x57, 0x01, 0x00, 0x03, 0x1c, + 0x0a, 0x48, 0x10, 0xb5, 0x00, 0x24, 0x02, 0x1c, + 0xa0, 0x32, 0x03, 0xe0, 0x81, 0x88, 0x3c, 0x00, + 0xd4, 0x85, 0x00, 0x00, 0x99, 0x42, 0x09, 0xd2, + 0x20, 0x30, 0x82, 0x42, 0xf9, 0xd1, 0x00, 0x2c, + 0x04, 0xd1, 0x02, 0x21, 0x8e, 0x20, 0xf8, 0xf7, + 0x5d, 0xfe, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0xd0, 0x5c, 0x01, 0x00, 0xff, 0xb5, 0x06, 0x1c, + 0x00, 0x20, 0x81, 0xb0, 0x10, 0x60, 0x1f, 0x1c, + 0x01, 0x25, 0x14, 0x1c, 0x30, 0x1c, 0xff, 0xf7, + 0x6d, 0xff, 0x05, 0x28, 0x12, 0xd2, 0x02, 0xa3, + 0x3c, 0x00, 0x10, 0x86, 0x00, 0x00, 0x1b, 0x5c, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x03, 0x03, + 0x03, 0x03, 0x08, 0x00, 0x39, 0x1c, 0x30, 0x1c, + 0xff, 0xf7, 0x55, 0xff, 0x03, 0xe0, 0x02, 0x98, + 0xf8, 0xf7, 0xeb, 0xf8, 0x01, 0x30, 0x20, 0x60, + 0x04, 0xe0, 0x05, 0x21, 0x87, 0x20, 0xf8, 0xf7, + 0x34, 0xfe, 0x00, 0x25, 0x20, 0x68, 0x80, 0x28, + 0x04, 0xd9, 0x06, 0x21, 0x87, 0x20, 0xf8, 0xf7, + 0x2c, 0xfe, 0x3c, 0x00, 0x4c, 0x86, 0x00, 0x00, + 0x00, 0x25, 0x28, 0x1c, 0x05, 0xb0, 0xf0, 0xbd, + 0x70, 0xb5, 0x17, 0x4c, 0x60, 0x6c, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x1d, 0xe0, 0x16, 0x4e, + 0x14, 0x4d, 0x31, 0x88, 0xa0, 0x6c, 0x00, 0x28, + 0x08, 0xd0, 0x28, 0x78, 0x81, 0x42, 0x05, 0xd9, + 0xf8, 0xf7, 0x4c, 0xf8, 0x01, 0x38, 0xfa, 0xf7, + 0x51, 0xfe, 0x0e, 0xe0, 0xe0, 0x6c, 0x00, 0x28, + 0x0a, 0xd0, 0x00, 0x20, 0x3c, 0x00, 0x88, 0x86, + 0x00, 0x00, 0xfa, 0xf7, 0x4a, 0xfe, 0x29, 0x78, + 0x32, 0x88, 0x91, 0x42, 0x04, 0xd9, 0x90, 0x42, + 0x02, 0xd9, 0x10, 0x1c, 0x00, 0xe0, 0x08, 0x1c, + 0xfa, 0xf7, 0xdf, 0xfd, 0xe1, 0x6b, 0x44, 0x1a, + 0x0a, 0xf0, 0x81, 0xfb, 0x20, 0x1a, 0x00, 0xd5, + 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x44, 0x7d, + 0x01, 0x00, 0xf8, 0x60, 0x01, 0x00, 0xfc, 0x60, + 0x01, 0x00, 0xff, 0xb5, 0x27, 0x4e, 0x3c, 0x00, + 0xc4, 0x86, 0x00, 0x00, 0x04, 0x1c, 0xb0, 0x79, + 0x0f, 0x1c, 0x15, 0x1c, 0x81, 0xb0, 0x00, 0x90, + 0x0a, 0xf0, 0x6c, 0xfb, 0xc1, 0x19, 0x23, 0x48, + 0x07, 0x68, 0x00, 0x2f, 0x05, 0xd1, 0x0a, 0x21, + 0x80, 0x20, 0xf8, 0xf7, 0xdf, 0xfd, 0x05, 0xb0, + 0xf0, 0xbd, 0x1e, 0x48, 0x40, 0x68, 0x84, 0x46, + 0x00, 0x28, 0x01, 0xd1, 0x00, 0x22, 0x0e, 0xe0, + 0x82, 0x68, 0x03, 0x68, 0xab, 0x42, 0x07, 0xd1, + 0x3c, 0x00, 0x00, 0x87, 0x00, 0x00, 0x03, 0x79, + 0xa3, 0x42, 0x04, 0xd1, 0x0b, 0x21, 0x80, 0x20, + 0xf8, 0xf7, 0xcb, 0xfd, 0x23, 0xe0, 0xc0, 0x68, + 0x00, 0x28, 0xf1, 0xd1, 0x13, 0x4b, 0xf8, 0x68, + 0x18, 0x60, 0x3d, 0x60, 0x3c, 0x71, 0xb9, 0x60, + 0x04, 0x98, 0x8d, 0x1a, 0x38, 0x61, 0x60, 0x46, + 0x00, 0x23, 0x05, 0xe0, 0x84, 0x68, 0xa4, 0x1a, + 0xac, 0x42, 0x03, 0xda, 0x03, 0x1c, 0xc0, 0x68, + 0x00, 0x28, 0x3c, 0x00, 0x3c, 0x87, 0x00, 0x00, + 0xf7, 0xd1, 0xf8, 0x60, 0x00, 0x2b, 0x08, 0xd1, + 0x07, 0x48, 0x3b, 0x1c, 0x47, 0x60, 0x08, 0x48, + 0x06, 0x4a, 0x00, 0x88, 0x0a, 0xf0, 0x8a, 0xfb, + 0x00, 0xe0, 0xdf, 0x60, 0x00, 0x98, 0xb0, 0x71, + 0xc3, 0xe7, 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, + 0x7c, 0x5d, 0x01, 0x00, 0x21, 0x38, 0x01, 0x00, + 0x2c, 0x74, 0x01, 0x00, 0xf3, 0xb5, 0x83, 0xb0, + 0x04, 0x1c, 0x09, 0xd0, 0x3c, 0x00, 0x78, 0x87, + 0x00, 0x00, 0x20, 0x1c, 0x04, 0x99, 0x09, 0xf0, + 0x8e, 0xfb, 0x00, 0x28, 0x03, 0xd0, 0x20, 0x1c, + 0x30, 0x30, 0x05, 0xb0, 0xf0, 0xbd, 0x0a, 0xf0, + 0x0e, 0xfb, 0x1e, 0x4a, 0x00, 0x26, 0x04, 0x9f, + 0x01, 0x96, 0x00, 0x90, 0x02, 0x92, 0x02, 0x9c, + 0x00, 0x25, 0x39, 0x1c, 0x20, 0x1c, 0x14, 0x30, + 0x02, 0xf0, 0xc5, 0xfa, 0x00, 0x28, 0x01, 0xd0, + 0x26, 0x1c, 0x03, 0xe0, 0x01, 0x35, 0x3c, 0x00, + 0xb4, 0x87, 0x00, 0x00, 0x1c, 0x34, 0x04, 0x2d, + 0xf2, 0xd3, 0x00, 0x2e, 0x22, 0xd1, 0x01, 0x98, + 0x13, 0x4f, 0x01, 0x30, 0x01, 0x90, 0x02, 0x28, + 0xe8, 0xd3, 0x01, 0x21, 0xc9, 0x06, 0x02, 0x9a, + 0x00, 0x20, 0x13, 0x69, 0x00, 0x9c, 0xe3, 0x1a, + 0x8b, 0x42, 0x01, 0xdd, 0x19, 0x1c, 0x16, 0x1c, + 0x01, 0x30, 0x1c, 0x32, 0x04, 0x28, 0xf4, 0xd3, + 0x30, 0x68, 0x00, 0x28, 0x01, 0xd0, 0xf8, 0xf7, + 0x3c, 0x00, 0xf0, 0x87, 0x00, 0x00, 0xd3, 0xfe, + 0x30, 0x1c, 0xfd, 0xf7, 0x4a, 0xff, 0x30, 0x1c, + 0x14, 0x30, 0x06, 0x22, 0x04, 0x99, 0xf7, 0xf7, + 0x7a, 0xfe, 0x00, 0x9c, 0x30, 0x1c, 0x34, 0x61, + 0xbd, 0xe7, 0x30, 0x6a, 0x01, 0x00, 0x34, 0x42, + 0x01, 0x00, 0x09, 0x49, 0x10, 0xb5, 0x4c, 0x69, + 0x03, 0xe0, 0xe1, 0x68, 0x81, 0x42, 0x03, 0xd0, + 0x24, 0x68, 0x00, 0x2c, 0xf9, 0xd1, 0x01, 0xe0, + 0x00, 0x2c, 0x3c, 0x00, 0x2c, 0x88, 0x00, 0x00, + 0x03, 0xd1, 0x02, 0x21, 0x02, 0x20, 0xf8, 0xf7, + 0x37, 0xfd, 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, + 0xfc, 0x5a, 0x01, 0x00, 0x10, 0xb5, 0xc3, 0x07, + 0x06, 0xd5, 0x08, 0x4b, 0x5c, 0x69, 0x0c, 0x43, + 0x5c, 0x61, 0x1c, 0x7e, 0x14, 0x43, 0x1c, 0x76, + 0x80, 0x07, 0x06, 0xd5, 0x04, 0x48, 0x43, 0x69, + 0x19, 0x43, 0x41, 0x61, 0x01, 0x7e, 0x11, 0x43, + 0x01, 0x76, 0x10, 0xbd, 0x3c, 0x00, 0x68, 0x88, + 0x00, 0x00, 0xfc, 0x57, 0x01, 0x00, 0x18, 0x58, + 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x16, 0x1c, 0x00, 0xf0, 0x08, 0xf8, 0xa0, 0x07, + 0xc0, 0x17, 0x01, 0x30, 0x32, 0x1c, 0x29, 0x1c, + 0x00, 0xf0, 0x21, 0xf8, 0x70, 0xbd, 0x10, 0xb5, + 0xc3, 0x07, 0x06, 0xd5, 0x08, 0x4b, 0x5c, 0x69, + 0x8c, 0x43, 0x5c, 0x61, 0x1c, 0x7e, 0x94, 0x43, + 0x1c, 0x76, 0x80, 0x07, 0x06, 0xd5, 0x3c, 0x00, + 0xa4, 0x88, 0x00, 0x00, 0x04, 0x48, 0x43, 0x69, + 0x8b, 0x43, 0x43, 0x61, 0x01, 0x7e, 0x91, 0x43, + 0x01, 0x76, 0x10, 0xbd, 0xfc, 0x57, 0x01, 0x00, + 0x18, 0x58, 0x01, 0x00, 0x03, 0x22, 0x11, 0x1f, + 0x80, 0xb5, 0x01, 0x20, 0x00, 0xf0, 0x02, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x30, 0xb5, 0x15, 0x1c, + 0x0c, 0x1c, 0x00, 0x28, 0x87, 0xb0, 0x02, 0xd0, + 0x1c, 0x22, 0x22, 0x49, 0x01, 0xe0, 0x22, 0x49, + 0x3c, 0x00, 0xe0, 0x88, 0x00, 0x00, 0x1c, 0x22, + 0x68, 0x46, 0xf7, 0xf7, 0x64, 0xfe, 0x05, 0x99, + 0x00, 0xab, 0x1a, 0x7e, 0x8c, 0x43, 0x20, 0x1c, + 0x95, 0x43, 0x02, 0x9a, 0x29, 0x1c, 0x02, 0x40, + 0x02, 0x92, 0x01, 0x9a, 0x02, 0x40, 0x01, 0x92, + 0x00, 0x9a, 0x02, 0x40, 0x00, 0x92, 0x03, 0x9a, + 0x02, 0x40, 0x03, 0x92, 0x98, 0x7c, 0x08, 0x40, + 0x98, 0x74, 0x58, 0x7c, 0x08, 0x40, 0x58, 0x74, + 0x18, 0x7c, 0x3c, 0x00, 0x1c, 0x89, 0x00, 0x00, + 0x08, 0x40, 0x18, 0x74, 0xd8, 0x7c, 0x08, 0x40, + 0xd8, 0x74, 0x02, 0x99, 0x10, 0x48, 0x41, 0x61, + 0x01, 0xaa, 0x06, 0xca, 0x91, 0x43, 0x81, 0x61, + 0x81, 0x68, 0x01, 0x9a, 0x11, 0x43, 0x81, 0x60, + 0x81, 0x68, 0x00, 0x9a, 0x91, 0x43, 0x81, 0x60, + 0x00, 0xaa, 0x06, 0xca, 0x11, 0x43, 0x42, 0x68, + 0x11, 0x43, 0x41, 0x60, 0x41, 0x68, 0x03, 0x9a, + 0x91, 0x43, 0x41, 0x60, 0x3c, 0x00, 0x58, 0x89, + 0x00, 0x00, 0x04, 0xa8, 0x0b, 0xf0, 0x01, 0xf8, + 0x07, 0xb0, 0x30, 0xbd, 0x00, 0x00, 0xfc, 0x57, + 0x01, 0x00, 0x18, 0x58, 0x01, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x01, 0x1c, + 0x01, 0x20, 0x08, 0xf0, 0xe0, 0xf9, 0x00, 0x2c, + 0x02, 0xd0, 0x03, 0xf0, 0x1c, 0xff, 0x10, 0xbd, + 0xfe, 0xf7, 0xd1, 0xfc, 0x10, 0xbd, 0xf0, 0xb5, + 0x0c, 0x1c, 0x01, 0x0e, 0x01, 0x23, 0x3c, 0x00, + 0x94, 0x89, 0x00, 0x00, 0x1b, 0x06, 0x09, 0x06, + 0x99, 0x42, 0x9f, 0xb0, 0x28, 0xd1, 0x17, 0x49, + 0x08, 0x40, 0x00, 0x21, 0x1a, 0x28, 0x00, 0xd3, + 0x02, 0x21, 0x00, 0x29, 0x19, 0xd1, 0xc5, 0x00, + 0x13, 0x4f, 0x10, 0xa8, 0xee, 0x19, 0xb2, 0x88, + 0x21, 0x68, 0xf7, 0xf7, 0x9d, 0xfd, 0x20, 0x1c, + 0xf8, 0xf7, 0xea, 0xfd, 0x7a, 0x59, 0x01, 0xa9, + 0x10, 0xa8, 0xf7, 0xf7, 0x07, 0xfd, 0x00, 0x28, + 0x3c, 0x00, 0xd0, 0x89, 0x00, 0x00, 0x05, 0xd0, + 0x10, 0x98, 0x01, 0xa9, 0x01, 0x90, 0xb0, 0x79, + 0x00, 0xf0, 0x9d, 0xf8, 0x1f, 0xb0, 0xf0, 0xbd, + 0x2a, 0x20, 0xf8, 0xf7, 0x5e, 0xfc, 0x20, 0x1c, + 0xf8, 0xf7, 0xd5, 0xfd, 0xf6, 0xe7, 0x03, 0x21, + 0x2a, 0x20, 0xf8, 0xf7, 0x56, 0xfc, 0xf1, 0xe7, + 0x00, 0x00, 0x7f, 0xff, 0xff, 0x00, 0x24, 0x45, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x1c, 0x80, 0x28, + 0x02, 0xd0, 0x3c, 0x00, 0x0c, 0x8a, 0x00, 0x00, + 0x81, 0x28, 0x08, 0xd1, 0x03, 0xe0, 0x20, 0x1c, + 0x00, 0xf0, 0x06, 0xf9, 0x10, 0xbd, 0x20, 0x1c, + 0xf8, 0xf7, 0xbc, 0xfd, 0x10, 0xbd, 0x03, 0x21, + 0x2c, 0x20, 0xf8, 0xf7, 0x3d, 0xfc, 0xf6, 0xe7, + 0xf0, 0xb5, 0x0c, 0x1c, 0x00, 0x21, 0x8b, 0xb0, + 0x0a, 0x91, 0x01, 0x0e, 0x01, 0x23, 0x1b, 0x06, + 0x09, 0x06, 0x99, 0x42, 0x2a, 0xd1, 0x18, 0x49, + 0x08, 0x40, 0x06, 0x1c, 0x3c, 0x00, 0x48, 0x8a, + 0x00, 0x00, 0x06, 0x2e, 0x01, 0xd3, 0x07, 0x21, + 0x24, 0xe0, 0x20, 0x89, 0xf8, 0xf7, 0xf1, 0xfe, + 0x22, 0x89, 0x21, 0x68, 0x05, 0x1c, 0xf7, 0xf7, + 0x4c, 0xfd, 0x20, 0x1c, 0xf8, 0xf7, 0x99, 0xfd, + 0xf4, 0x00, 0x0f, 0x4e, 0x28, 0x1c, 0x0a, 0xaa, + 0x69, 0x46, 0x33, 0x59, 0xf7, 0xf7, 0xb4, 0xfc, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x28, 0x07, 0xd1, + 0x28, 0x68, 0x69, 0x46, 0x00, 0x90, 0x3c, 0x00, + 0x84, 0x8a, 0x00, 0x00, 0xa0, 0x19, 0x00, 0x79, + 0x0a, 0x9a, 0x00, 0xf0, 0x09, 0xf9, 0x28, 0x1c, + 0xf8, 0xf7, 0xb0, 0xfe, 0x0b, 0xb0, 0xf0, 0xbd, + 0x01, 0x21, 0x2b, 0x20, 0xf8, 0xf7, 0x02, 0xfc, + 0xf8, 0xe7, 0x00, 0x00, 0x7f, 0xff, 0xff, 0x00, + 0x28, 0x46, 0x01, 0x00, 0x0a, 0x1c, 0x01, 0x0e, + 0x01, 0x23, 0x1b, 0x06, 0x09, 0x06, 0x99, 0x42, + 0x80, 0xb5, 0x08, 0xd0, 0x5b, 0x00, 0x99, 0x42, + 0x3c, 0x00, 0xc0, 0x8a, 0x00, 0x00, 0x0b, 0xd1, + 0x00, 0x06, 0x00, 0x0e, 0x11, 0x1c, 0x00, 0xf0, + 0x0e, 0xf9, 0x80, 0xbd, 0x05, 0x49, 0x01, 0x40, + 0x10, 0x1c, 0x05, 0xf0, 0xa2, 0xf9, 0x80, 0xbd, + 0x01, 0x21, 0x2d, 0x20, 0xf8, 0xf7, 0xe1, 0xfb, + 0x80, 0xbd, 0x7f, 0xff, 0xff, 0x00, 0x80, 0xb5, + 0x01, 0x1c, 0x0f, 0x20, 0x00, 0xf0, 0x13, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x01, 0x1c, 0x04, 0x20, + 0x00, 0xf0, 0x3c, 0x00, 0xfc, 0x8a, 0x00, 0x00, + 0x0d, 0xf8, 0x80, 0xbd, 0x80, 0xb5, 0x01, 0x1c, + 0x17, 0x20, 0x00, 0xf0, 0x07, 0xf8, 0x80, 0xbd, + 0x80, 0xb5, 0x01, 0x1c, 0x01, 0x20, 0x00, 0xf0, + 0x01, 0xf8, 0x80, 0xbd, 0xf8, 0xb5, 0x04, 0x1c, + 0x06, 0x1c, 0x80, 0x20, 0x84, 0x43, 0x0f, 0x1c, + 0x19, 0x2c, 0x01, 0xd3, 0xf8, 0xf7, 0xea, 0xfb, + 0x08, 0x48, 0x04, 0x5d, 0x21, 0x1c, 0x00, 0x20, + 0xf8, 0xf7, 0x50, 0xfd, 0x3c, 0x00, 0x38, 0x8b, + 0x00, 0x00, 0x05, 0x1c, 0x22, 0x1c, 0x39, 0x1c, + 0x00, 0x68, 0xf7, 0xf7, 0xda, 0xfc, 0x2a, 0x1c, + 0x31, 0x1c, 0x07, 0x20, 0xf8, 0xf7, 0x11, 0xf9, + 0xf8, 0xbd, 0xf4, 0x45, 0x01, 0x00, 0xf8, 0xb5, + 0x0d, 0x1c, 0x16, 0x1c, 0x04, 0x1c, 0x1f, 0x1c, + 0x08, 0x21, 0x00, 0x20, 0xf8, 0xf7, 0x39, 0xfd, + 0x14, 0x22, 0x01, 0x68, 0x0e, 0x4b, 0x72, 0x43, + 0xd2, 0x18, 0x0c, 0x71, 0x12, 0x7c, 0x3c, 0x00, + 0x74, 0x8b, 0x00, 0x00, 0x4a, 0x71, 0x0d, 0x60, + 0x0b, 0x4a, 0x8f, 0x71, 0x12, 0x68, 0x7f, 0x2a, + 0x03, 0xd9, 0x52, 0x05, 0x52, 0x0e, 0x80, 0x23, + 0x1a, 0x43, 0xca, 0x71, 0x07, 0x4a, 0x00, 0x23, + 0x51, 0x68, 0x01, 0x31, 0x51, 0x60, 0x02, 0x1c, + 0x81, 0x21, 0x00, 0x20, 0xf8, 0xf7, 0x08, 0xf9, + 0xf8, 0xbd, 0x00, 0x00, 0x74, 0x40, 0x01, 0x00, + 0xfc, 0x5a, 0x01, 0x00, 0x80, 0x6e, 0x01, 0x00, + 0x3c, 0x00, 0xb0, 0x8b, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x08, 0x21, 0x00, 0x20, 0xf8, 0xf7, + 0x0e, 0xfd, 0x21, 0x8b, 0xe2, 0x7d, 0x05, 0x1c, + 0x09, 0x05, 0x52, 0x07, 0x52, 0x0f, 0x49, 0x0c, + 0x00, 0x68, 0x11, 0x43, 0x81, 0x80, 0xa1, 0x7d, + 0x14, 0x23, 0x0e, 0x4a, 0x59, 0x43, 0x89, 0x18, + 0x09, 0x7c, 0xc1, 0x71, 0xe1, 0x6a, 0x01, 0x60, + 0xe1, 0x68, 0x28, 0x1c, 0xf8, 0xf7, 0x17, 0xfc, + 0x0a, 0x48, 0x3c, 0x00, 0xec, 0x8b, 0x00, 0x00, + 0x00, 0x68, 0x00, 0x28, 0x01, 0xd0, 0xf7, 0xf7, + 0xf1, 0xfb, 0x07, 0x49, 0x04, 0x31, 0x88, 0x68, + 0x01, 0x30, 0x88, 0x60, 0x00, 0x21, 0x2a, 0x1c, + 0x00, 0x20, 0x23, 0x6b, 0xf8, 0xf7, 0xd2, 0xf8, + 0x01, 0x20, 0xb0, 0xbd, 0x74, 0x40, 0x01, 0x00, + 0x7c, 0x6e, 0x01, 0x00, 0x01, 0x48, 0x80, 0x68, + 0x70, 0x47, 0x00, 0x00, 0x80, 0x6e, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x3c, 0x00, 0x28, 0x8c, + 0x00, 0x00, 0x92, 0xb0, 0x01, 0x68, 0x68, 0x46, + 0x08, 0x22, 0xf7, 0xf7, 0x62, 0xfc, 0x00, 0xab, + 0x98, 0x88, 0x40, 0x07, 0x40, 0x0f, 0xd8, 0x77, + 0x98, 0x88, 0x40, 0x04, 0x00, 0x0d, 0x18, 0x84, + 0xd8, 0x88, 0x58, 0x84, 0x00, 0x98, 0x0d, 0x90, + 0x05, 0x94, 0x20, 0x89, 0x08, 0x38, 0x20, 0x81, + 0x05, 0x98, 0x01, 0x68, 0x08, 0x31, 0x01, 0x60, + 0x00, 0x20, 0x0a, 0x90, 0x0c, 0x90, 0x3c, 0x00, + 0x64, 0x8c, 0x00, 0x00, 0x00, 0x21, 0x11, 0x20, + 0x09, 0xf0, 0x78, 0xfb, 0x05, 0x49, 0x06, 0x4a, + 0x08, 0x68, 0x01, 0x30, 0x08, 0x60, 0x02, 0x21, + 0x02, 0xa8, 0x01, 0xf0, 0xcd, 0xfc, 0x12, 0xb0, + 0x10, 0xbd, 0x00, 0x00, 0x80, 0x6e, 0x01, 0x00, + 0x55, 0x8b, 0x00, 0x00, 0x02, 0x1c, 0x01, 0x20, + 0x00, 0x06, 0x08, 0x43, 0x80, 0xb5, 0x2b, 0x21, + 0x0a, 0xf0, 0x8a, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x8c, 0x00, 0x00, 0xf7, 0xb5, + 0x04, 0x1c, 0x06, 0x1c, 0x80, 0x20, 0x84, 0x43, + 0x17, 0x1c, 0x06, 0x2c, 0x01, 0xd3, 0xf8, 0xf7, + 0x26, 0xfb, 0x0b, 0x48, 0x05, 0x5d, 0x29, 0x1c, + 0x00, 0x20, 0xf8, 0xf7, 0x8c, 0xfc, 0x04, 0x1c, + 0x00, 0x68, 0x01, 0x99, 0x2a, 0x1c, 0xf7, 0xf7, + 0x16, 0xfc, 0x39, 0x1c, 0x20, 0x1c, 0xf8, 0xf7, + 0xa2, 0xfb, 0x22, 0x1c, 0x31, 0x1c, 0x00, 0x23, + 0x02, 0x20, 0x3c, 0x00, 0xdc, 0x8c, 0x00, 0x00, + 0xf8, 0xf7, 0x68, 0xf8, 0xfe, 0xbd, 0x00, 0x00, + 0x20, 0x46, 0x01, 0x00, 0x0a, 0x1c, 0x01, 0x1c, + 0x80, 0xb5, 0x00, 0x23, 0x01, 0x20, 0xf8, 0xf7, + 0x5d, 0xf8, 0x80, 0xbd, 0xff, 0xb5, 0x9f, 0xb0, + 0x1f, 0x1c, 0x05, 0x1c, 0x0a, 0x30, 0x1e, 0x90, + 0x1c, 0xaa, 0x1d, 0xa9, 0x0a, 0xf0, 0x00, 0xff, + 0x00, 0x28, 0x71, 0xd0, 0x00, 0x2f, 0x09, 0xd0, + 0x0a, 0x21, 0x00, 0x20, 0x3c, 0x00, 0x18, 0x8d, + 0x00, 0x00, 0xf8, 0xf7, 0x5e, 0xfc, 0x06, 0x68, + 0x04, 0x1c, 0x30, 0x1d, 0xfa, 0xf7, 0xaf, 0xfa, + 0x05, 0xe0, 0x04, 0x21, 0x00, 0x20, 0xf8, 0xf7, + 0x54, 0xfc, 0x06, 0x68, 0x04, 0x1c, 0x28, 0x89, + 0x36, 0x49, 0x01, 0x22, 0x08, 0x80, 0x70, 0x80, + 0xe8, 0x88, 0x14, 0xa9, 0x30, 0x80, 0x19, 0xa8, + 0xfc, 0xf7, 0xf5, 0xfc, 0xfc, 0xf7, 0xff, 0xfb, + 0x01, 0x1c, 0xff, 0x31, 0x21, 0x31, 0x3c, 0x00, + 0x54, 0x8d, 0x00, 0x00, 0x20, 0x1c, 0x01, 0xf0, + 0xef, 0xf8, 0x19, 0xa9, 0x20, 0x1c, 0x01, 0xf0, + 0xeb, 0xf8, 0x14, 0xa9, 0x20, 0x1c, 0x01, 0xf0, + 0xe7, 0xf8, 0x20, 0x1c, 0x20, 0x99, 0xfd, 0xf7, + 0x4b, 0xfd, 0x00, 0x22, 0x02, 0x21, 0x01, 0xf0, + 0x33, 0xfd, 0x06, 0x1c, 0x1c, 0x99, 0x00, 0x20, + 0x88, 0x61, 0x30, 0x1c, 0xf8, 0xf7, 0x1c, 0xfa, + 0x00, 0x2e, 0x0b, 0xd0, 0x30, 0x7a, 0x00, 0x28, + 0x3c, 0x00, 0x90, 0x8d, 0x00, 0x00, 0x02, 0xd0, + 0x40, 0x21, 0x08, 0x43, 0x30, 0x72, 0x1c, 0x98, + 0x02, 0x22, 0x81, 0x69, 0x11, 0x43, 0x81, 0x61, + 0x04, 0xe0, 0x1c, 0x99, 0x02, 0x22, 0x88, 0x69, + 0x90, 0x43, 0x88, 0x61, 0x1d, 0xaa, 0x06, 0xca, + 0x01, 0xa8, 0x05, 0xf0, 0x58, 0xfb, 0x09, 0xa8, + 0x00, 0x2f, 0x02, 0xd0, 0x02, 0x22, 0x42, 0x72, + 0x01, 0xe0, 0x00, 0x21, 0x41, 0x72, 0x04, 0x94, + 0x01, 0xa8, 0x3c, 0x00, 0xcc, 0x8d, 0x00, 0x00, + 0x04, 0xf0, 0x7a, 0xfb, 0x01, 0x21, 0x1c, 0x98, + 0x08, 0xf0, 0xc8, 0xff, 0x00, 0x2f, 0x04, 0xd0, + 0x1c, 0x98, 0x01, 0x22, 0x81, 0x69, 0x11, 0x43, + 0x81, 0x61, 0xa8, 0x88, 0x1c, 0x9c, 0x01, 0xf0, + 0x9f, 0xfe, 0x02, 0x1c, 0x21, 0x1c, 0x00, 0xe0, + 0x04, 0xe0, 0x07, 0x48, 0x40, 0x88, 0x09, 0xf0, + 0x1f, 0xf8, 0x04, 0xe0, 0x3a, 0x1c, 0x00, 0x21, + 0x05, 0x20, 0xf9, 0xf7, 0x3c, 0x00, 0x08, 0x8e, + 0x00, 0x00, 0x9b, 0xf8, 0x00, 0x20, 0x23, 0xb0, + 0xf0, 0xbd, 0xfc, 0x60, 0x01, 0x00, 0x98, 0x7c, + 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, 0xc0, 0x68, + 0x05, 0x68, 0xa0, 0x1d, 0x01, 0xf0, 0x95, 0xff, + 0x00, 0x28, 0x45, 0xd0, 0x21, 0x1c, 0x14, 0x31, + 0x20, 0x1c, 0x6a, 0x46, 0x0a, 0xf0, 0x55, 0xfe, + 0x00, 0x28, 0x3d, 0xd0, 0xfc, 0xf7, 0x7d, 0xfa, + 0x00, 0x28, 0x39, 0xd1, 0x00, 0x98, 0x3c, 0x00, + 0x44, 0x8e, 0x00, 0x00, 0x4b, 0x21, 0x09, 0x5c, + 0x01, 0x29, 0x34, 0xd1, 0x04, 0x26, 0x09, 0xf0, + 0x19, 0xf9, 0x68, 0x88, 0x00, 0x28, 0x1b, 0xd1, + 0xa8, 0x88, 0x03, 0x21, 0x89, 0x03, 0x88, 0x43, + 0x15, 0x49, 0x00, 0x26, 0x08, 0x80, 0x01, 0x22, + 0x02, 0x21, 0x20, 0x69, 0x01, 0xf0, 0xb8, 0xfc, + 0x04, 0x1c, 0x14, 0xd0, 0x00, 0x98, 0x80, 0x69, + 0x80, 0x07, 0x10, 0xd5, 0xf8, 0xf7, 0x9a, 0xf9, + 0x3c, 0x00, 0x80, 0x8e, 0x00, 0x00, 0x20, 0x1c, + 0xf8, 0xf7, 0xdd, 0xf8, 0x00, 0x28, 0x09, 0xd1, + 0xf8, 0xf7, 0x7f, 0xf9, 0x01, 0x26, 0x00, 0x98, + 0x02, 0x22, 0x81, 0x69, 0x91, 0x43, 0x81, 0x61, + 0x00, 0x21, 0x01, 0xe0, 0x00, 0x98, 0x02, 0x21, + 0x08, 0xf0, 0x61, 0xff, 0x00, 0x98, 0x80, 0x69, + 0xa9, 0x88, 0xc2, 0x07, 0xd2, 0x0f, 0x30, 0x1c, + 0xf9, 0xf7, 0x45, 0xf8, 0xf8, 0xbd, 0xfa, 0x60, + 0x01, 0x00, 0x3c, 0x00, 0xbc, 0x8e, 0x00, 0x00, + 0x1c, 0xb5, 0x04, 0x69, 0x00, 0x23, 0x00, 0x22, + 0x00, 0x2c, 0x13, 0xd1, 0x4b, 0x24, 0x24, 0x5c, + 0x02, 0x2c, 0x03, 0xd1, 0x02, 0x29, 0x05, 0xd0, + 0x01, 0x22, 0x03, 0xe0, 0x02, 0x29, 0x01, 0xd1, + 0x01, 0x22, 0x01, 0x23, 0x00, 0x2a, 0x05, 0xd0, + 0x00, 0x90, 0x04, 0x20, 0x01, 0x93, 0x69, 0x46, + 0x09, 0xf0, 0x36, 0xfa, 0x1c, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x3c, 0x00, 0xf8, 0x8e, + 0x00, 0x00, 0xf2, 0x21, 0x0f, 0x20, 0x0c, 0x4d, + 0x0a, 0xf0, 0x99, 0xfb, 0x28, 0x78, 0x08, 0x28, + 0x0b, 0xd2, 0x01, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x07, 0x03, 0x03, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x00, 0x2c, 0x01, 0xd1, 0x05, 0xf0, + 0xbc, 0xfb, 0xb0, 0xbd, 0x01, 0x2c, 0xfc, 0xd1, + 0xff, 0x20, 0x07, 0xf0, 0x38, 0xfa, 0xb0, 0xbd, + 0x00, 0x00, 0x74, 0x66, 0x01, 0x00, 0x3c, 0x00, + 0x34, 0x8f, 0x00, 0x00, 0x8c, 0xb5, 0x05, 0x4a, + 0x00, 0xab, 0x11, 0x72, 0x00, 0x90, 0x19, 0x71, + 0x69, 0x46, 0x08, 0x20, 0x09, 0xf0, 0x0a, 0xfa, + 0x8c, 0xbd, 0x00, 0x00, 0xac, 0x7c, 0x01, 0x00, + 0xf3, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0x06, 0x27, + 0x85, 0xb0, 0x06, 0x68, 0x09, 0xf0, 0x26, 0xff, + 0x98, 0x49, 0x48, 0x63, 0x20, 0x69, 0x03, 0x21, + 0x01, 0xf0, 0x08, 0xfc, 0x96, 0x4d, 0x00, 0x28, + 0x3c, 0x00, 0x70, 0x8f, 0x00, 0x00, 0x4d, 0xd0, + 0x95, 0x49, 0x40, 0x31, 0x09, 0x79, 0x80, 0x78, + 0x81, 0x42, 0x47, 0xd1, 0x01, 0x21, 0x20, 0x69, + 0x01, 0xf0, 0xfb, 0xfb, 0x02, 0x90, 0x20, 0x69, + 0x32, 0x21, 0x01, 0xf0, 0xf6, 0xfb, 0x01, 0x90, + 0x02, 0x1c, 0x8d, 0x48, 0x02, 0x99, 0xfc, 0xf7, + 0x46, 0xff, 0x00, 0x28, 0x36, 0xd0, 0x00, 0x23, + 0x8a, 0x48, 0x02, 0x99, 0x01, 0x9a, 0xfc, 0xf7, + 0xe4, 0xfe, 0x3c, 0x00, 0xac, 0x8f, 0x00, 0x00, + 0x0b, 0x28, 0x2e, 0xd1, 0x86, 0x4a, 0x51, 0x88, + 0x70, 0x89, 0x41, 0x40, 0x03, 0x91, 0x0b, 0x1c, + 0x84, 0x49, 0x0b, 0x40, 0x25, 0xd1, 0x50, 0x80, + 0x03, 0x99, 0x17, 0x1c, 0x00, 0x29, 0x0b, 0xd0, + 0x03, 0x99, 0x48, 0x05, 0x02, 0xd5, 0x38, 0x1c, + 0xfc, 0xf7, 0x40, 0xfe, 0x03, 0x99, 0x88, 0x06, + 0x02, 0xd5, 0x38, 0x1c, 0xfc, 0xf7, 0x24, 0xfe, + 0x2a, 0x21, 0x20, 0x69, 0x3c, 0x00, 0xe8, 0x8f, + 0x00, 0x00, 0x01, 0xf0, 0xc8, 0xfb, 0x00, 0x28, + 0x0d, 0xd0, 0x80, 0x78, 0xe9, 0x69, 0x81, 0x42, + 0x09, 0xd0, 0xe8, 0x61, 0x38, 0x1c, 0xfc, 0xf7, + 0x16, 0xfe, 0x38, 0x1c, 0xfc, 0xf7, 0x07, 0xfe, + 0x38, 0x1c, 0xfc, 0xf7, 0x26, 0xfe, 0x00, 0x27, + 0x20, 0x1c, 0x20, 0x30, 0x04, 0x90, 0x40, 0x7a, + 0x08, 0x28, 0x71, 0xd1, 0x0a, 0xf0, 0xd1, 0xfc, + 0x00, 0x20, 0x68, 0x61, 0x00, 0x23, 0x3c, 0x00, + 0x24, 0x90, 0x00, 0x00, 0x2b, 0x61, 0xa8, 0x68, + 0x66, 0x49, 0x01, 0x30, 0xa8, 0x60, 0x30, 0x89, + 0x5c, 0x31, 0x88, 0x82, 0x01, 0xf0, 0x7a, 0xfd, + 0x62, 0x49, 0x5c, 0x31, 0x08, 0x61, 0x22, 0x6a, + 0x04, 0x98, 0x18, 0x21, 0x00, 0x7a, 0x01, 0xf0, + 0x33, 0xfe, 0xe1, 0x6a, 0x40, 0x18, 0x03, 0x90, + 0x5c, 0x48, 0x00, 0x6a, 0x00, 0x28, 0x0d, 0xd0, + 0x00, 0x2f, 0x0b, 0xd1, 0x59, 0x48, 0x01, 0x23, + 0x3c, 0x00, 0x60, 0x90, 0x00, 0x00, 0x5c, 0x30, + 0x01, 0x68, 0x1b, 0x07, 0x00, 0x22, 0x30, 0x68, + 0x09, 0xf0, 0x49, 0xff, 0x00, 0x28, 0x00, 0xd1, + 0x05, 0x27, 0x00, 0x21, 0xa0, 0x6b, 0x0a, 0xf0, + 0xce, 0xfc, 0x00, 0x21, 0x20, 0x6c, 0x0a, 0xf0, + 0xe8, 0xfc, 0x4f, 0x4b, 0x03, 0xce, 0x03, 0x9a, + 0x5c, 0x33, 0xfc, 0xf7, 0x88, 0xfd, 0x00, 0x20, + 0x4c, 0x4e, 0x05, 0x21, 0xb0, 0x63, 0x20, 0x69, + 0x01, 0xf0, 0x3c, 0x00, 0x9c, 0x90, 0x00, 0x00, + 0x6f, 0xfb, 0x01, 0x1c, 0x01, 0xd1, 0xf0, 0x60, + 0x1c, 0xe0, 0x01, 0x20, 0xf0, 0x60, 0x88, 0x78, + 0x45, 0x4a, 0x01, 0x32, 0x10, 0x70, 0xc8, 0x78, + 0x50, 0x70, 0x47, 0x4a, 0x10, 0x70, 0x30, 0x69, + 0x00, 0x28, 0x0a, 0xd0, 0x4a, 0x78, 0x08, 0x79, + 0x05, 0x31, 0x09, 0xf0, 0xdd, 0xfa, 0x31, 0x69, + 0xf7, 0xf7, 0x85, 0xf9, 0xf0, 0x68, 0x00, 0x28, + 0x04, 0xd0, 0x3b, 0x4a, 0x3c, 0x00, 0xd8, 0x90, + 0x00, 0x00, 0x01, 0x32, 0x10, 0x78, 0x00, 0x28, + 0x08, 0xd1, 0x00, 0x20, 0xa8, 0x61, 0x71, 0x6a, + 0x00, 0x29, 0x03, 0xd0, 0x20, 0x1c, 0x14, 0x30, + 0xf7, 0xf7, 0x74, 0xf9, 0x34, 0x4a, 0x5c, 0x32, + 0x10, 0x69, 0x31, 0x6a, 0x41, 0x18, 0x00, 0xe0, + 0x20, 0xe0, 0x0a, 0x23, 0xd0, 0x68, 0x0a, 0x22, + 0x09, 0xf0, 0xfb, 0xfe, 0x00, 0x28, 0x07, 0xd0, + 0x2d, 0x4a, 0x31, 0x6a, 0x5c, 0x32, 0x3c, 0x00, + 0x14, 0x91, 0x00, 0x00, 0xd0, 0x68, 0x40, 0x1a, + 0x11, 0x69, 0x40, 0x1a, 0x70, 0x60, 0x29, 0x4a, + 0x5c, 0x32, 0xd0, 0x68, 0x30, 0x62, 0xf0, 0x69, + 0x00, 0x28, 0x04, 0xd0, 0xfa, 0xf7, 0x00, 0xfd, + 0x01, 0x20, 0xfa, 0xf7, 0xa1, 0xfc, 0xfa, 0xf7, + 0x81, 0xfc, 0x27, 0x48, 0x00, 0x68, 0x03, 0xf0, + 0x07, 0xf9, 0x06, 0x98, 0x00, 0x28, 0x03, 0xd1, + 0x1e, 0x4e, 0x00, 0x23, 0xb3, 0x60, 0x16, 0xe0, + 0x3c, 0x00, 0x50, 0x91, 0x00, 0x00, 0x1c, 0x4e, + 0x01, 0x20, 0xb0, 0x60, 0x06, 0x98, 0x01, 0x68, + 0x40, 0x68, 0xb0, 0x65, 0x19, 0x48, 0x71, 0x65, + 0x54, 0x30, 0xc0, 0x88, 0x00, 0x28, 0x09, 0xd0, + 0xb1, 0x69, 0x00, 0x29, 0x06, 0xd0, 0x01, 0xf0, + 0xdc, 0xfc, 0x01, 0x1c, 0xe0, 0x6a, 0xb2, 0x69, + 0xf7, 0xf7, 0x2f, 0xf9, 0x00, 0x2f, 0x15, 0xd1, + 0x12, 0x48, 0x01, 0x69, 0x00, 0x29, 0x08, 0xd1, + 0x01, 0x21, 0x3c, 0x00, 0x8c, 0x91, 0x00, 0x00, + 0x01, 0x61, 0x2a, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0x00, 0x21, 0x00, 0x20, 0xf7, 0xf7, 0x20, 0xf9, + 0x09, 0x49, 0x00, 0x23, 0xcb, 0x62, 0x2b, 0x61, + 0x6b, 0x61, 0x06, 0xf0, 0xb5, 0xf8, 0x07, 0xb0, + 0xf0, 0xbd, 0x6b, 0x68, 0x06, 0x48, 0x00, 0x2b, + 0xf9, 0xd0, 0x02, 0x1d, 0x11, 0x1c, 0x38, 0x1c, + 0xf7, 0xf7, 0x0f, 0xf9, 0xf3, 0xe7, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x3c, 0x00, 0xc8, 0x91, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0xf4, 0x67, + 0x01, 0x00, 0x03, 0x08, 0x00, 0x00, 0xf8, 0x60, + 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, 0x08, 0xb5, + 0xf8, 0xf7, 0x2f, 0xfd, 0x00, 0x90, 0x00, 0xab, + 0x18, 0x88, 0x00, 0x28, 0x0c, 0xd0, 0x05, 0xf0, + 0x50, 0xff, 0x00, 0xab, 0x59, 0x88, 0x18, 0x88, + 0x05, 0xf0, 0x6d, 0xf9, 0xfe, 0xf7, 0x97, 0xf8, + 0x03, 0x20, 0xfb, 0xf7, 0x0e, 0xf8, 0x3c, 0x00, + 0x04, 0x92, 0x00, 0x00, 0x08, 0xbd, 0x01, 0x20, + 0xff, 0xf7, 0xb2, 0xfb, 0x00, 0x20, 0x08, 0xf0, + 0x8d, 0xfe, 0xf7, 0xe7, 0xf8, 0xb5, 0x4f, 0x49, + 0x8c, 0x68, 0x20, 0x6a, 0x00, 0x68, 0x05, 0x78, + 0xfc, 0xf7, 0x68, 0xfa, 0x00, 0x28, 0x12, 0xd0, + 0x2a, 0x07, 0x92, 0x0f, 0x01, 0x21, 0x01, 0x2a, + 0x00, 0xd0, 0x00, 0x21, 0x00, 0x29, 0x03, 0xd0, + 0x29, 0x06, 0x09, 0x0f, 0x0b, 0x29, 0x06, 0xd1, + 0x3c, 0x00, 0x40, 0x92, 0x00, 0x00, 0x2a, 0x21, + 0x09, 0x5d, 0x08, 0x18, 0x90, 0x30, 0x00, 0x7b, + 0xf9, 0xf7, 0x0d, 0xfc, 0x41, 0x4f, 0x3c, 0x3f, + 0xb8, 0x6b, 0x79, 0x6b, 0xf7, 0xf7, 0xc0, 0xf8, + 0xa0, 0x6c, 0x00, 0x26, 0xc6, 0x60, 0x60, 0x6b, + 0x80, 0x08, 0x04, 0xd0, 0xb8, 0x69, 0x01, 0x30, + 0xb8, 0x61, 0x06, 0xf0, 0xdc, 0xf9, 0x39, 0x4d, + 0x28, 0x69, 0x80, 0x05, 0x80, 0x0f, 0x08, 0xd1, + 0x78, 0x69, 0x3c, 0x00, 0x7c, 0x92, 0x00, 0x00, + 0x04, 0x21, 0x01, 0x30, 0x78, 0x61, 0x60, 0x6b, + 0x40, 0x08, 0x40, 0x00, 0x08, 0x43, 0x60, 0x63, + 0xb8, 0x6a, 0x00, 0x28, 0x03, 0xd0, 0x60, 0x6b, + 0x08, 0x21, 0x08, 0x43, 0x60, 0x63, 0x20, 0x1c, + 0x20, 0x30, 0x00, 0x90, 0x39, 0x68, 0xf7, 0xf7, + 0x9a, 0xf8, 0x03, 0x20, 0x00, 0x02, 0x28, 0x60, + 0x2b, 0x49, 0x88, 0x68, 0xa0, 0x63, 0xc8, 0x68, + 0xe0, 0x63, 0x08, 0x79, 0x3c, 0x00, 0xb8, 0x92, + 0x00, 0x00, 0xc0, 0x06, 0xc0, 0x0e, 0x25, 0x1c, + 0x40, 0x35, 0x28, 0x71, 0x48, 0x79, 0x68, 0x71, + 0x23, 0x48, 0x3c, 0x38, 0x46, 0x62, 0x00, 0x98, + 0x80, 0x7a, 0x01, 0xf0, 0x5e, 0xfd, 0x00, 0x21, + 0x00, 0x28, 0x21, 0x4a, 0x01, 0xd0, 0x11, 0x78, + 0x03, 0xe0, 0x93, 0x78, 0xdb, 0x07, 0x00, 0xd5, + 0x51, 0x78, 0xa9, 0x71, 0x00, 0x28, 0x04, 0xd0, + 0x1b, 0x49, 0x14, 0x31, 0x08, 0x68, 0x3c, 0x00, + 0xf4, 0x92, 0x00, 0x00, 0x20, 0x64, 0x00, 0xe0, + 0x6e, 0x80, 0xb8, 0x6a, 0xc0, 0x07, 0x02, 0xd5, + 0xff, 0x20, 0x28, 0x71, 0xae, 0x71, 0xe6, 0x61, + 0xb8, 0x68, 0x01, 0x30, 0xb8, 0x60, 0x79, 0x68, + 0x88, 0x42, 0x03, 0xd0, 0x0b, 0x21, 0x85, 0x20, + 0xf7, 0xf7, 0xc4, 0xff, 0x0d, 0x49, 0x88, 0x68, + 0xc0, 0x6c, 0x88, 0x60, 0xfb, 0x6a, 0x00, 0x2b, + 0x0c, 0xd0, 0x0e, 0x4a, 0xd4, 0x7b, 0x00, 0x2b, + 0x3c, 0x00, 0x30, 0x93, 0x00, 0x00, 0x02, 0xdd, + 0x7f, 0x2c, 0x05, 0xd2, 0x01, 0xe0, 0x00, 0x2c, + 0x02, 0xd0, 0xd4, 0x7b, 0xe3, 0x18, 0xd3, 0x73, + 0xfe, 0x62, 0xc9, 0x68, 0x88, 0x42, 0x03, 0xd1, + 0x05, 0x21, 0x85, 0x20, 0xf7, 0xf7, 0xa9, 0xff, + 0xf8, 0xbd, 0x24, 0x7e, 0x01, 0x00, 0x00, 0x40, + 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, 0xe8, 0x80, + 0x07, 0x00, 0x40, 0x00, 0x07, 0x00, 0xfe, 0xb5, + 0x30, 0x4c, 0x3c, 0x00, 0x6c, 0x93, 0x00, 0x00, + 0xa0, 0x6b, 0x21, 0x6b, 0xf7, 0xf7, 0x33, 0xf8, + 0x2d, 0x49, 0x3c, 0x31, 0x8e, 0x68, 0x70, 0x8b, + 0x06, 0x28, 0x04, 0xd2, 0xe0, 0x69, 0x01, 0x30, + 0xe0, 0x61, 0x0e, 0x20, 0x30, 0x85, 0x28, 0x49, + 0x3c, 0x31, 0x0d, 0x68, 0x00, 0x2d, 0x03, 0xd1, + 0x03, 0x21, 0x85, 0x20, 0xf7, 0xf7, 0x84, 0xff, + 0x24, 0x48, 0x45, 0x61, 0x35, 0x62, 0x31, 0x8d, + 0xef, 0x68, 0x04, 0x39, 0x3c, 0x00, 0xa8, 0x93, + 0x00, 0x00, 0x0c, 0x04, 0x01, 0x21, 0x02, 0x91, + 0x24, 0x0c, 0x00, 0x21, 0x01, 0x91, 0x1d, 0x48, + 0x3c, 0x30, 0x80, 0x8a, 0xa0, 0x42, 0x03, 0xd3, + 0x2c, 0x81, 0xee, 0x60, 0x00, 0x24, 0x0b, 0xe0, + 0x00, 0x2f, 0x04, 0xd1, 0x03, 0x21, 0x85, 0x20, + 0xf7, 0xf7, 0x69, 0xff, 0x04, 0xe0, 0x3d, 0x1c, + 0x20, 0x1a, 0x04, 0x04, 0xff, 0x68, 0x24, 0x0c, + 0x02, 0x98, 0x00, 0x28, 0x04, 0xd0, 0x3c, 0x00, + 0xe4, 0x93, 0x00, 0x00, 0x12, 0x49, 0x01, 0x20, + 0x08, 0x61, 0x00, 0x20, 0x02, 0x90, 0x01, 0x98, + 0x01, 0x30, 0x01, 0x90, 0x00, 0x2c, 0xdd, 0xd1, + 0x0c, 0x48, 0x0c, 0x4c, 0x3c, 0x30, 0x07, 0x60, + 0x01, 0x98, 0x30, 0x65, 0xb5, 0x64, 0x30, 0x6a, + 0x00, 0x68, 0x60, 0x62, 0x60, 0x68, 0x01, 0x30, + 0x60, 0x60, 0xa1, 0x68, 0x01, 0x31, 0x88, 0x42, + 0x03, 0xd0, 0x0a, 0x21, 0x85, 0x20, 0xf7, 0xf7, + 0x3c, 0x00, 0x20, 0x94, 0x00, 0x00, 0x41, 0xff, + 0x04, 0x48, 0x00, 0x68, 0xa0, 0x62, 0xfe, 0xbd, + 0x00, 0x00, 0xe8, 0x7d, 0x01, 0x00, 0x00, 0x30, + 0x07, 0x00, 0x78, 0x6e, 0x01, 0x00, 0xb0, 0xb5, + 0x05, 0x1c, 0x01, 0x21, 0x0f, 0x20, 0x0a, 0xf0, + 0xf8, 0xf8, 0xf2, 0x21, 0x0f, 0x20, 0x0a, 0xf0, + 0xf4, 0xf8, 0x0c, 0x48, 0x0c, 0x4c, 0x00, 0x68, + 0x14, 0x3c, 0x00, 0x28, 0x0c, 0xd0, 0xe0, 0x78, + 0x01, 0x28, 0x3c, 0x00, 0x5c, 0x94, 0x00, 0x00, + 0x09, 0xd0, 0x01, 0x22, 0x29, 0x1c, 0x0f, 0x20, + 0x0a, 0xf0, 0xac, 0xf8, 0x60, 0x78, 0x02, 0x28, + 0x06, 0xd0, 0x01, 0x20, 0x03, 0xe0, 0x60, 0x78, + 0x02, 0x28, 0x01, 0xd0, 0x00, 0x20, 0x60, 0x70, + 0xb0, 0xbd, 0x00, 0x00, 0x98, 0x66, 0x01, 0x00, + 0x02, 0x22, 0x00, 0x28, 0x80, 0xb5, 0x00, 0xd1, + 0x03, 0x22, 0x03, 0x49, 0x0e, 0x20, 0x0a, 0xf0, + 0x9b, 0xf8, 0x00, 0x20, 0x3c, 0x00, 0x98, 0x94, + 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x50, 0xc3, + 0x00, 0x00, 0xf8, 0xb5, 0x00, 0x23, 0x00, 0x22, + 0x00, 0x28, 0x2e, 0xd0, 0x06, 0x89, 0x04, 0x68, + 0x75, 0x1e, 0x2d, 0x04, 0xb6, 0x1a, 0xf6, 0x07, + 0x2d, 0x0c, 0xf6, 0x0f, 0xb4, 0x46, 0x0e, 0xe0, + 0xa7, 0x5c, 0xa6, 0x18, 0x02, 0x33, 0x00, 0x97, + 0x77, 0x78, 0xa7, 0x54, 0x02, 0x32, 0x12, 0x04, + 0x00, 0x9f, 0x12, 0x0c, 0x00, 0x29, 0x3c, 0x00, + 0xd4, 0x94, 0x00, 0x00, 0x77, 0x70, 0x01, 0xdd, + 0x8b, 0x42, 0x15, 0xda, 0xaa, 0x42, 0xee, 0xd3, + 0xc0, 0x68, 0x00, 0x28, 0x10, 0xd0, 0x02, 0x89, + 0x00, 0x2a, 0xf9, 0xd0, 0x62, 0x46, 0x00, 0x2a, + 0x0b, 0xd0, 0x02, 0x68, 0x66, 0x5d, 0x17, 0x78, + 0x02, 0x33, 0x67, 0x55, 0x16, 0x70, 0x01, 0x22, + 0x00, 0x29, 0xd2, 0xdd, 0x8b, 0x42, 0xd0, 0xdb, + 0xf8, 0xbd, 0x00, 0x22, 0xcd, 0xe7, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x95, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0d, 0x1c, 0x01, 0x20, 0xf8, 0xf7, + 0x5e, 0xfb, 0x0d, 0x49, 0x00, 0x28, 0xc8, 0x61, + 0x14, 0xd0, 0x62, 0x68, 0x42, 0x60, 0xa2, 0x7c, + 0x02, 0x72, 0xa2, 0x68, 0xc2, 0x60, 0xe2, 0x68, + 0x02, 0x61, 0x22, 0x8a, 0x02, 0x75, 0x0a, 0x1d, + 0x0a, 0x62, 0x12, 0x68, 0x00, 0x2a, 0xff, 0xd1, + 0x02, 0x60, 0x48, 0x60, 0x00, 0x20, 0xa8, 0x60, + 0x01, 0x20, 0x3c, 0x00, 0x4c, 0x95, 0x00, 0x00, + 0xb0, 0xbd, 0x01, 0x20, 0xfa, 0xe7, 0x00, 0x00, + 0xa4, 0x6e, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x40, 0x68, 0x0d, 0x1c, 0x43, 0x1c, 0x02, 0xd1, + 0x21, 0x1c, 0x09, 0x48, 0x08, 0xe0, 0x00, 0x20, + 0xf8, 0xf7, 0x34, 0xfb, 0x06, 0x49, 0x94, 0x39, + 0x08, 0x61, 0x00, 0x28, 0x03, 0xd0, 0x21, 0x1c, + 0x00, 0xf0, 0x48, 0xfe, 0x00, 0xe0, 0x01, 0x20, + 0xa8, 0x60, 0x01, 0x20, 0x3c, 0x00, 0x88, 0x95, + 0x00, 0x00, 0xb0, 0xbd, 0x00, 0x00, 0x38, 0x6f, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x21, 0x97, 0x20, + 0xf7, 0xf7, 0x85, 0xfe, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x38, 0xb5, 0x0a, 0x1c, 0x14, 0x32, + 0x00, 0x92, 0x13, 0x1f, 0x05, 0x1c, 0x08, 0x3a, + 0x0c, 0x1c, 0x16, 0x31, 0x40, 0x68, 0xfe, 0xf7, + 0x6c, 0xfe, 0x00, 0x28, 0x01, 0xd0, 0x00, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0x69, 0x68, 0x3c, 0x00, + 0xc4, 0x95, 0x00, 0x00, 0xa0, 0x60, 0x61, 0x60, + 0x01, 0x20, 0x38, 0xbd, 0x10, 0xb5, 0x0c, 0x1c, + 0x01, 0x7a, 0x00, 0x29, 0x0f, 0xd0, 0x01, 0x29, + 0x09, 0xd0, 0x02, 0x29, 0x03, 0xd1, 0x00, 0x21, + 0x00, 0x20, 0x0a, 0xf0, 0x73, 0xfc, 0x00, 0x20, + 0x20, 0x71, 0x01, 0x20, 0x10, 0xbd, 0x41, 0x68, + 0x01, 0x20, 0x0a, 0xf0, 0x6b, 0xfc, 0x00, 0xf0, + 0x0d, 0xf9, 0xf4, 0xe7, 0x80, 0xb5, 0x04, 0x49, + 0x3c, 0x00, 0x00, 0x96, 0x00, 0x00, 0x48, 0x68, + 0x01, 0x38, 0x48, 0x60, 0x01, 0xd1, 0x07, 0xf0, + 0x6e, 0xfb, 0x00, 0x20, 0x80, 0xbd, 0xac, 0x79, + 0x01, 0x00, 0xb0, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, + 0x00, 0xf0, 0x4f, 0xfe, 0xa0, 0x60, 0x68, 0x68, + 0x60, 0x60, 0x01, 0x20, 0xb0, 0xbd, 0xb0, 0xb5, + 0x05, 0x1c, 0x0c, 0x1c, 0x00, 0xf0, 0x6f, 0xfe, + 0xa0, 0x60, 0x68, 0x68, 0x60, 0x60, 0x01, 0x20, + 0xb0, 0xbd, 0x3c, 0x00, 0x3c, 0x96, 0x00, 0x00, + 0x08, 0x1c, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x08, 0xc0, 0x01, 0x20, 0x70, 0x47, + 0xf8, 0xb5, 0x0f, 0x1c, 0x04, 0x1c, 0x20, 0x79, + 0x20, 0x28, 0x01, 0xd2, 0x20, 0x20, 0x20, 0x71, + 0x66, 0x79, 0x00, 0x2e, 0x02, 0xd1, 0x25, 0x79, + 0x00, 0x22, 0x0d, 0xe0, 0x25, 0x79, 0x29, 0x1c, + 0x30, 0x1c, 0xf7, 0xf7, 0x4f, 0xf8, 0x00, 0x29, + 0x01, 0xd1, 0x32, 0x1c, 0x3c, 0x00, 0x78, 0x96, + 0x00, 0x00, 0x04, 0xe0, 0x70, 0x43, 0x80, 0x19, + 0x05, 0x06, 0x2d, 0x0e, 0x32, 0x1c, 0xe0, 0x79, + 0x29, 0x1c, 0x00, 0xf0, 0xf2, 0xf9, 0x20, 0x7a, + 0x2f, 0x49, 0xc0, 0x07, 0xc0, 0x0f, 0x08, 0x60, + 0x2e, 0x48, 0x00, 0x78, 0xc0, 0x07, 0x43, 0xd5, + 0xa1, 0x79, 0x2c, 0x4a, 0xc8, 0x07, 0x48, 0xd4, + 0x2c, 0x4e, 0x16, 0x60, 0x8b, 0x07, 0x2b, 0x48, + 0x08, 0xd5, 0xcc, 0x08, 0x01, 0x23, 0x3c, 0x00, + 0xb4, 0x96, 0x00, 0x00, 0xa3, 0x40, 0x03, 0x60, + 0x49, 0x07, 0x04, 0xd5, 0x28, 0x49, 0x11, 0x60, + 0x01, 0xe0, 0x40, 0x21, 0x01, 0x60, 0x13, 0x68, + 0x26, 0x4a, 0xb3, 0x42, 0x10, 0xd1, 0x54, 0x68, + 0x01, 0x68, 0x0c, 0x43, 0x54, 0x60, 0x14, 0x68, + 0x0c, 0x40, 0x01, 0xd0, 0x51, 0x61, 0x00, 0xe0, + 0x91, 0x61, 0x54, 0x68, 0x0c, 0x43, 0x54, 0x60, + 0x94, 0x68, 0x21, 0x43, 0x91, 0x60, 0x13, 0xe0, + 0x3c, 0x00, 0xf0, 0x96, 0x00, 0x00, 0x54, 0x7c, + 0x01, 0x68, 0x0c, 0x43, 0x54, 0x74, 0x14, 0x7c, + 0x0c, 0x40, 0x03, 0xd0, 0x14, 0x7c, 0x0c, 0x43, + 0x14, 0x74, 0x02, 0xe0, 0x14, 0x7c, 0x8c, 0x43, + 0x14, 0x74, 0x54, 0x7c, 0x0c, 0x43, 0x54, 0x74, + 0x94, 0x7c, 0x21, 0x43, 0x91, 0x74, 0xb3, 0x42, + 0x05, 0xd1, 0x00, 0x22, 0x01, 0x68, 0x03, 0x20, + 0xff, 0xf7, 0x8d, 0xf8, 0x09, 0xe0, 0x00, 0x68, + 0x00, 0x21, 0x3c, 0x00, 0x2c, 0x97, 0x00, 0x00, + 0x02, 0x06, 0x12, 0x0e, 0x03, 0x20, 0xff, 0xf7, + 0x85, 0xf8, 0x01, 0xe0, 0x0b, 0x48, 0x10, 0x60, + 0x00, 0x20, 0x38, 0x71, 0x7d, 0x71, 0xf7, 0xf7, + 0xe9, 0xfd, 0x01, 0x20, 0xf8, 0xbd, 0x00, 0x00, + 0xcc, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x07, 0x00, + 0x5c, 0x5b, 0x01, 0x00, 0xb9, 0x9b, 0x00, 0x00, + 0x58, 0x5b, 0x01, 0x00, 0x95, 0x9b, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0x3c, 0x00, 0x68, 0x97, + 0x00, 0x00, 0x55, 0x9b, 0x00, 0x00, 0xb0, 0xb5, + 0x0d, 0x1c, 0x04, 0x30, 0x00, 0x24, 0xfe, 0xf7, + 0xd6, 0xfa, 0x01, 0x20, 0x6c, 0x60, 0xb0, 0xbd, + 0x00, 0x00, 0xf0, 0xb5, 0x07, 0x7a, 0x43, 0x68, + 0x04, 0x1c, 0x0e, 0x48, 0x0e, 0x1c, 0x00, 0x68, + 0x01, 0x25, 0x01, 0x1c, 0x9b, 0xb0, 0x06, 0xe0, + 0x4a, 0x68, 0x9a, 0x42, 0x02, 0xd1, 0x8f, 0x76, + 0x00, 0x25, 0x02, 0xe0, 0x09, 0x68, 0x3c, 0x00, + 0xa4, 0x97, 0x00, 0x00, 0x00, 0x29, 0xf6, 0xd1, + 0x00, 0x2d, 0x05, 0xd1, 0x21, 0x7a, 0x01, 0x29, + 0x02, 0xd1, 0x01, 0xa9, 0xf8, 0xf7, 0xa8, 0xf8, + 0x60, 0x68, 0x04, 0x36, 0x21, 0xc6, 0x1b, 0xb0, + 0x01, 0x20, 0xf0, 0xbd, 0xa4, 0x6e, 0x01, 0x00, + 0x10, 0xb5, 0x0c, 0x1c, 0x08, 0xf0, 0xae, 0xfc, + 0x60, 0x60, 0x01, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x10, 0xb5, 0x0c, 0x1c, 0x07, 0xf0, 0x84, 0xfa, + 0x3c, 0x00, 0xe0, 0x97, 0x00, 0x00, 0x04, 0xf0, + 0x54, 0xff, 0x00, 0x20, 0x60, 0x60, 0x01, 0x20, + 0x10, 0xbd, 0x00, 0x20, 0xc0, 0x43, 0x48, 0x60, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, + 0x0c, 0x1c, 0x00, 0x79, 0xfa, 0xf7, 0x07, 0xf8, + 0x00, 0x28, 0x01, 0xd0, 0x00, 0x20, 0x00, 0xe0, + 0x02, 0x20, 0x60, 0x60, 0x01, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0x1c, 0xb5, 0x06, 0x4c, 0x20, 0x68, + 0x00, 0x28, 0x3c, 0x00, 0x1c, 0x98, 0x00, 0x00, + 0x07, 0xd0, 0x09, 0xf0, 0xc5, 0xfa, 0x01, 0x90, + 0x20, 0x68, 0x41, 0x68, 0x68, 0x46, 0xf6, 0xf7, + 0xd6, 0xfd, 0x1c, 0xbd, 0xac, 0x79, 0x01, 0x00, + 0x01, 0x49, 0x08, 0x60, 0x70, 0x47, 0x00, 0x00, + 0xac, 0x79, 0x01, 0x00, 0x0e, 0xb5, 0x06, 0x4b, + 0x1b, 0x68, 0x00, 0x2b, 0x06, 0xd0, 0x02, 0x90, + 0x00, 0x91, 0x01, 0x92, 0x68, 0x46, 0xd9, 0x68, + 0xf6, 0xf7, 0xc1, 0xfd, 0x3c, 0x00, 0x58, 0x98, + 0x00, 0x00, 0x0e, 0xbd, 0x00, 0x00, 0xac, 0x79, + 0x01, 0x00, 0x1c, 0xb5, 0x04, 0x1c, 0x07, 0xf0, + 0x4c, 0xfa, 0x06, 0x48, 0x41, 0x68, 0x01, 0x31, + 0x41, 0x60, 0x00, 0x94, 0x00, 0x21, 0x01, 0x91, + 0x00, 0x68, 0x01, 0x68, 0x68, 0x46, 0xf6, 0xf7, + 0xad, 0xfd, 0x1c, 0xbd, 0x00, 0x00, 0xac, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0xf8, 0xf7, 0xa3, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x02, 0x1c, 0x3c, 0x00, + 0x94, 0x98, 0x00, 0x00, 0x80, 0x21, 0x03, 0x20, + 0x00, 0xf0, 0x5c, 0xf8, 0x01, 0x1c, 0x03, 0x48, + 0x00, 0x22, 0x43, 0x69, 0xf6, 0xf7, 0x9b, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xa4, 0x6d, 0x01, 0x00, + 0xf8, 0xb5, 0x0c, 0x1c, 0x13, 0x49, 0x05, 0x1c, + 0x08, 0x68, 0x16, 0x1c, 0x01, 0x30, 0x08, 0x60, + 0x00, 0x20, 0x20, 0x61, 0x22, 0x1c, 0x10, 0x32, + 0x28, 0x1d, 0x00, 0x21, 0x07, 0x1c, 0x00, 0x92, + 0x3c, 0x00, 0xd0, 0x98, 0x00, 0x00, 0x03, 0xf0, + 0xde, 0xfe, 0x20, 0x71, 0x20, 0x69, 0x00, 0x28, + 0x10, 0xd0, 0x01, 0x04, 0x09, 0x0c, 0x00, 0x20, + 0xf7, 0xf7, 0x79, 0xfe, 0x30, 0x60, 0x29, 0x1d, + 0x03, 0xc9, 0xa0, 0x60, 0xe1, 0x60, 0x30, 0x68, + 0x01, 0x68, 0x00, 0x9a, 0x38, 0x1c, 0x03, 0xf0, + 0xca, 0xfe, 0x20, 0x71, 0x01, 0x20, 0xf8, 0xbd, + 0x00, 0x00, 0x10, 0x75, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x1c, 0x3c, 0x00, 0x0c, 0x99, 0x00, 0x00, + 0x08, 0x21, 0x04, 0x20, 0x09, 0xf0, 0x4e, 0xff, + 0x03, 0x20, 0x80, 0xbd, 0x10, 0xb5, 0x07, 0x4a, + 0x0c, 0x1c, 0x51, 0x68, 0x01, 0x31, 0x51, 0x60, + 0x01, 0x1c, 0x10, 0x31, 0xc2, 0x68, 0x04, 0x30, + 0x03, 0xf0, 0xf0, 0xfe, 0x20, 0x71, 0x00, 0x20, + 0x10, 0xbd, 0x00, 0x00, 0x10, 0x75, 0x01, 0x00, + 0x04, 0x49, 0x80, 0xb5, 0x81, 0x61, 0x08, 0x21, + 0x02, 0x1c, 0x03, 0x20, 0x3c, 0x00, 0x48, 0x99, + 0x00, 0x00, 0x09, 0xf0, 0x32, 0xff, 0x03, 0x20, + 0x80, 0xbd, 0x95, 0xd8, 0x00, 0x00, 0xf7, 0xb5, + 0x07, 0x1c, 0x16, 0x1c, 0x06, 0x21, 0x00, 0x20, + 0x82, 0xb0, 0xf7, 0xf7, 0x3a, 0xfe, 0x05, 0x1c, + 0x20, 0x48, 0x00, 0x78, 0x06, 0x28, 0x00, 0xd9, + 0x28, 0x81, 0x2c, 0x68, 0x00, 0x20, 0xa7, 0x70, + 0x03, 0x99, 0xe1, 0x70, 0x31, 0x1c, 0x03, 0xe0, + 0x0a, 0x89, 0x10, 0x18, 0x0f, 0x1c, 0x3c, 0x00, + 0x84, 0x99, 0x00, 0x00, 0xc9, 0x68, 0x00, 0x29, + 0xf9, 0xd1, 0x6b, 0x46, 0x01, 0xaa, 0x21, 0x1d, + 0x00, 0xf0, 0x34, 0xf8, 0x00, 0xab, 0x18, 0x78, + 0x60, 0x71, 0x18, 0x78, 0x00, 0x28, 0x17, 0xd0, + 0x11, 0x48, 0x40, 0x68, 0x00, 0x28, 0x08, 0xd0, + 0x19, 0x78, 0x00, 0x20, 0xf7, 0xf7, 0x14, 0xfe, + 0x01, 0x1c, 0x38, 0x1c, 0xf7, 0xf7, 0x30, 0xfd, + 0x0a, 0xe0, 0x38, 0x68, 0x00, 0x28, 0x02, 0xd1, + 0x3c, 0x00, 0xc0, 0x99, 0x00, 0x00, 0x3f, 0x60, + 0x01, 0x20, 0xb8, 0x61, 0x00, 0xab, 0x19, 0x78, + 0x38, 0x89, 0x40, 0x18, 0x38, 0x81, 0x00, 0xab, + 0x98, 0x88, 0x31, 0x1c, 0x02, 0x38, 0x20, 0x80, + 0x28, 0x1c, 0xf7, 0xf7, 0x1c, 0xfd, 0x28, 0x1c, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xc8, 0x5c, + 0x01, 0x00, 0x01, 0x79, 0x42, 0x79, 0x00, 0x88, + 0x89, 0x18, 0x02, 0x39, 0x40, 0x1a, 0x70, 0x47, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x99, 0x00, 0x00, + 0x70, 0xb5, 0x08, 0x4d, 0x2c, 0x78, 0xad, 0x78, + 0x20, 0x18, 0x06, 0x1c, 0x00, 0x2d, 0x03, 0xd0, + 0x70, 0x19, 0x01, 0x38, 0x01, 0x3d, 0xa8, 0x43, + 0x10, 0x80, 0x80, 0x1b, 0x18, 0x70, 0x0c, 0x70, + 0x70, 0xbd, 0x00, 0x00, 0xc8, 0x5c, 0x01, 0x00, + 0xb0, 0xb5, 0x04, 0x68, 0x0c, 0x4a, 0x21, 0x88, + 0x52, 0x78, 0x02, 0x31, 0x91, 0x42, 0x11, 0xd2, + 0x55, 0x1a, 0xf7, 0xf7, 0x3c, 0x00, 0x38, 0x9a, + 0x00, 0x00, 0xc9, 0xfd, 0x01, 0x68, 0x00, 0x29, + 0x02, 0xd1, 0x00, 0x60, 0x01, 0x21, 0x81, 0x61, + 0x01, 0x89, 0x49, 0x19, 0x01, 0x81, 0x20, 0x88, + 0x40, 0x19, 0x20, 0x80, 0x60, 0x79, 0x40, 0x19, + 0x60, 0x71, 0xb0, 0xbd, 0x00, 0x00, 0xc8, 0x5c, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x06, 0x21, + 0xf1, 0x20, 0x09, 0xf0, 0xa2, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x1c, 0x02, 0x48, 0x3c, 0x00, + 0x74, 0x9a, 0x00, 0x00, 0x03, 0x70, 0x41, 0x70, + 0x82, 0x70, 0x70, 0x47, 0xc8, 0x5c, 0x01, 0x00, + 0xb0, 0xb5, 0x08, 0x1c, 0x09, 0x68, 0x15, 0x1c, + 0x8c, 0x78, 0xf7, 0xf7, 0x85, 0xfd, 0x04, 0x49, + 0xa0, 0x00, 0x09, 0x58, 0x00, 0x29, 0x02, 0xd0, + 0x28, 0x1c, 0xf6, 0xf7, 0x9e, 0xfc, 0xb0, 0xbd, + 0x84, 0x6d, 0x01, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0xc0, 0x7a, 0xa1, 0x7a, 0xc6, 0x07, 0xf6, 0x0f, + 0x3c, 0x00, 0xb0, 0x9a, 0x00, 0x00, 0x32, 0x1c, + 0x20, 0x1d, 0x01, 0xf0, 0x3c, 0xf8, 0x60, 0x69, + 0x25, 0x4f, 0xc1, 0x07, 0x37, 0xd5, 0xb8, 0x69, + 0x00, 0x28, 0x01, 0xd0, 0xf6, 0xf7, 0x87, 0xfc, + 0x20, 0x68, 0x05, 0x68, 0x28, 0x88, 0x80, 0x07, + 0x34, 0xd1, 0x01, 0xaa, 0x02, 0xa9, 0x28, 0x1c, + 0x01, 0xf0, 0x0b, 0xfc, 0x28, 0x1c, 0x01, 0xf0, + 0x12, 0xfc, 0x00, 0x78, 0xc0, 0x07, 0x0a, 0xd4, + 0x60, 0x69, 0x3c, 0x00, 0xec, 0x9a, 0x00, 0x00, + 0x80, 0x07, 0x26, 0xd4, 0x33, 0x1c, 0x29, 0x1c, + 0xa2, 0x7a, 0x20, 0x69, 0x7d, 0x69, 0xf6, 0xf7, + 0x72, 0xfc, 0x1e, 0xe0, 0x00, 0xab, 0x18, 0x7a, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x28, 0x06, 0xd0, + 0x02, 0x28, 0x16, 0xd1, 0x28, 0x1c, 0x79, 0x6a, + 0xf6, 0xf7, 0x61, 0xfc, 0x11, 0xe0, 0x00, 0xab, + 0x18, 0x79, 0x0e, 0x28, 0x01, 0xd0, 0x0f, 0x28, + 0x0b, 0xd1, 0x28, 0x1c, 0x3c, 0x00, 0x28, 0x9b, + 0x00, 0x00, 0x39, 0x6a, 0xf6, 0xf7, 0x56, 0xfc, + 0x06, 0xe0, 0x00, 0x07, 0x80, 0x0f, 0x03, 0xd1, + 0x20, 0x69, 0xf9, 0x69, 0xf6, 0xf7, 0x4e, 0xfc, + 0x78, 0x6b, 0x21, 0x21, 0x01, 0x30, 0x78, 0x63, + 0x22, 0x1c, 0x80, 0x20, 0x09, 0xf0, 0x31, 0xfe, + 0xfe, 0xbd, 0x28, 0x7a, 0x01, 0x00, 0x0b, 0x49, + 0x18, 0xb5, 0x08, 0x78, 0xc0, 0x07, 0x11, 0xd5, + 0x0a, 0x4a, 0x10, 0x1c, 0x20, 0x30, 0x3c, 0x00, + 0x64, 0x9b, 0x00, 0x00, 0x84, 0x79, 0x00, 0xab, + 0x1c, 0x70, 0xc0, 0x79, 0x58, 0x70, 0x08, 0x78, + 0x40, 0x23, 0x18, 0x43, 0x08, 0x70, 0x05, 0x48, + 0x00, 0x78, 0x08, 0x70, 0x00, 0xab, 0x18, 0x88, + 0xd0, 0x84, 0x18, 0xbd, 0x04, 0x00, 0x07, 0x00, + 0x00, 0x10, 0x07, 0x00, 0xe0, 0x60, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x05, 0x49, 0x10, 0xb5, + 0x88, 0x79, 0x05, 0x4b, 0x1a, 0x7c, 0x05, 0x4c, + 0x3c, 0x00, 0xa0, 0x9b, 0x00, 0x00, 0x24, 0x68, + 0x62, 0x40, 0x1a, 0x74, 0x88, 0x71, 0x10, 0xbd, + 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x58, 0x5b, 0x01, 0x00, 0x04, 0x49, + 0x0a, 0x68, 0x04, 0x48, 0x00, 0x68, 0x02, 0x40, + 0x01, 0xd0, 0x88, 0x61, 0x70, 0x47, 0x48, 0x61, + 0x70, 0x47, 0x10, 0x00, 0x07, 0x00, 0x58, 0x5b, + 0x01, 0x00, 0x02, 0x1c, 0x01, 0x20, 0x00, 0x06, + 0x08, 0x43, 0x3c, 0x00, 0xdc, 0x9b, 0x00, 0x00, + 0x80, 0xb5, 0x2a, 0x21, 0x09, 0xf0, 0xe6, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x00, 0x29, 0x03, 0xd0, 0x81, 0x29, 0x07, 0xd1, + 0x81, 0x20, 0x00, 0xe0, 0x80, 0x20, 0x22, 0x1c, + 0x2c, 0x21, 0x09, 0xf0, 0xd7, 0xfd, 0x10, 0xbd, + 0x02, 0x21, 0x2c, 0x20, 0xf7, 0xf7, 0x4c, 0xfb, + 0x20, 0x1c, 0xf7, 0xf7, 0xc3, 0xfc, 0x10, 0xbd, + 0x80, 0xb5, 0xb4, 0xb0, 0x3c, 0x00, 0x18, 0x9c, + 0x00, 0x00, 0x01, 0x28, 0x06, 0xd0, 0x82, 0x28, + 0x1c, 0xd1, 0x1a, 0xa8, 0x07, 0xf0, 0x35, 0xfc, + 0x34, 0xb0, 0x80, 0xbd, 0x81, 0x29, 0x13, 0xd1, + 0x0d, 0x48, 0x0c, 0x4a, 0x81, 0x69, 0x00, 0x68, + 0x50, 0x32, 0x81, 0x42, 0x02, 0xd0, 0xd1, 0x6a, + 0x01, 0x29, 0x02, 0xd0, 0x11, 0x78, 0x02, 0x29, + 0x02, 0xd1, 0x07, 0xf0, 0x0a, 0xf9, 0xeb, 0xe7, + 0x69, 0x46, 0xf7, 0xf7, 0x5a, 0xfe, 0x3c, 0x00, + 0x54, 0x9c, 0x00, 0x00, 0xe7, 0xe7, 0x01, 0x21, + 0x00, 0xe0, 0x02, 0x21, 0x18, 0x20, 0xf7, 0xf7, + 0x21, 0xfb, 0xe0, 0xe7, 0xa4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x00, 0x68, 0x17, 0x4d, + 0x9a, 0xb0, 0x68, 0x63, 0x08, 0xf0, 0x3e, 0xfa, + 0x20, 0x79, 0x14, 0x49, 0x13, 0x4a, 0x50, 0x39, + 0x2c, 0x3a, 0x02, 0x28, 0x0a, 0xd1, 0x90, 0x68, + 0x80, 0x02, 0xa8, 0x61, 0xc8, 0x68, 0xe8, 0x61, + 0x3c, 0x00, 0x90, 0x9c, 0x00, 0x00, 0x02, 0x20, + 0x28, 0x72, 0x07, 0xf0, 0xe4, 0xf8, 0x1a, 0xb0, + 0xb0, 0xbd, 0x03, 0x1c, 0x00, 0x20, 0x00, 0x2b, + 0x0b, 0xd1, 0x52, 0x68, 0x92, 0x02, 0xaa, 0x61, + 0x0a, 0x1c, 0x89, 0x68, 0xe9, 0x61, 0x28, 0x72, + 0x10, 0x68, 0x69, 0x46, 0xf7, 0xf7, 0x27, 0xfe, + 0xed, 0xe7, 0xa8, 0x61, 0x01, 0x20, 0x28, 0x72, + 0x28, 0x70, 0x00, 0x20, 0x06, 0xf0, 0x7d, 0xfa, + 0xe5, 0xe7, 0x3c, 0x00, 0xcc, 0x9c, 0x00, 0x00, + 0xf4, 0x6e, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x07, 0x20, 0xf7, 0xf7, 0xe1, 0xfa, 0x80, 0xbd, + 0x70, 0x47, 0x00, 0x00, 0xf8, 0xb5, 0x00, 0x24, + 0x19, 0x4a, 0x00, 0x26, 0xd5, 0x68, 0x11, 0x68, + 0x04, 0x35, 0x08, 0x1c, 0x91, 0x60, 0x02, 0xe0, + 0x01, 0x1c, 0x40, 0x19, 0x08, 0x60, 0x53, 0x68, + 0x83, 0x42, 0xf9, 0xd8, 0x3c, 0x00, 0x08, 0x9d, + 0x00, 0x00, 0x01, 0x34, 0x10, 0x32, 0x03, 0x2c, + 0x0e, 0x60, 0xee, 0xd3, 0xf6, 0xf7, 0xf1, 0xff, + 0x10, 0x48, 0x10, 0x49, 0x12, 0x4c, 0x08, 0x60, + 0x10, 0x49, 0x00, 0x20, 0x01, 0x22, 0x19, 0x23, + 0x5b, 0x01, 0x0c, 0x25, 0x43, 0x43, 0x1b, 0x19, + 0x45, 0x43, 0x4a, 0x51, 0x1f, 0x1c, 0x6d, 0x18, + 0xab, 0x60, 0x6b, 0x60, 0x00, 0x25, 0x1e, 0x1c, + 0x14, 0x36, 0x9e, 0x60, 0x33, 0x1c, 0x3c, 0x00, + 0x44, 0x9d, 0x00, 0x00, 0x01, 0x35, 0x27, 0x2d, + 0xf8, 0xdb, 0x01, 0x30, 0x03, 0x28, 0x9f, 0x60, + 0xe8, 0xdb, 0xf8, 0xbd, 0x20, 0x57, 0x01, 0x00, + 0x14, 0xc8, 0x01, 0x00, 0xb4, 0xcf, 0x01, 0x00, + 0x18, 0xd9, 0x01, 0x00, 0xb8, 0xcf, 0x01, 0x00, + 0xb0, 0xb5, 0x07, 0x4c, 0x25, 0x1c, 0xc0, 0x35, + 0x28, 0x6b, 0x1e, 0x21, 0x00, 0xf0, 0xf2, 0xf9, + 0xa2, 0x6b, 0x20, 0x1c, 0xdc, 0x30, 0x29, 0x6b, + 0x3c, 0x00, 0x80, 0x9d, 0x00, 0x00, 0x00, 0xf0, + 0xb6, 0xf9, 0xb0, 0xbd, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x00, 0x20, 0x10, 0x22, 0x10, 0xb5, + 0x0a, 0x49, 0x05, 0xe0, 0x0c, 0x23, 0x43, 0x43, + 0x5c, 0x18, 0x0c, 0x34, 0xcc, 0x50, 0x01, 0x30, + 0x0f, 0x28, 0xf7, 0xd3, 0x0c, 0x23, 0x58, 0x43, + 0x09, 0x50, 0x04, 0x48, 0x41, 0x60, 0x01, 0x60, + 0x02, 0x82, 0x00, 0x21, 0x81, 0x60, 0xc1, 0x60, + 0x10, 0xbd, 0x3c, 0x00, 0xbc, 0x9d, 0x00, 0x00, + 0x84, 0xe2, 0x01, 0x00, 0x44, 0xe3, 0x01, 0x00, + 0x10, 0xb5, 0x08, 0x4c, 0xa0, 0x6a, 0x00, 0x28, + 0x03, 0xd1, 0x07, 0x48, 0xf9, 0xf7, 0xe8, 0xfe, + 0xa0, 0x62, 0x04, 0x48, 0x44, 0x30, 0x00, 0x68, + 0x01, 0x21, 0xf9, 0xf7, 0x95, 0xfc, 0x60, 0x62, + 0x10, 0xbd, 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, + 0xcd, 0x26, 0x01, 0x00, 0xff, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x1e, 0x1c, 0x3c, 0x00, 0xf8, 0x9d, + 0x00, 0x00, 0x81, 0xb0, 0x0a, 0x9f, 0x1c, 0x21, + 0xf6, 0xf7, 0x4d, 0xfb, 0x03, 0x98, 0xa0, 0x61, + 0x25, 0x60, 0x25, 0x61, 0x26, 0x81, 0xa6, 0x82, + 0xe7, 0x60, 0x05, 0xb0, 0xf0, 0xbd, 0x70, 0xb5, + 0x0d, 0x1c, 0xa4, 0x21, 0x04, 0x1c, 0x08, 0x30, + 0xf6, 0xf7, 0x3d, 0xfb, 0x20, 0x1c, 0x44, 0x30, + 0x06, 0x22, 0x29, 0x1c, 0xf6, 0xf7, 0x65, 0xfb, + 0x18, 0x48, 0x3c, 0x23, 0x41, 0x1c, 0x3c, 0x00, + 0x34, 0x9e, 0x00, 0x00, 0x61, 0x62, 0x41, 0x78, + 0x59, 0x43, 0x09, 0x18, 0x89, 0x7a, 0x06, 0x29, + 0x01, 0xd1, 0xa0, 0x62, 0x02, 0xe0, 0x21, 0x1c, + 0x4d, 0x31, 0xa1, 0x62, 0x41, 0x78, 0x3c, 0x23, + 0x59, 0x43, 0x08, 0x18, 0x04, 0x30, 0x0f, 0x49, + 0x20, 0x62, 0x0b, 0x88, 0x00, 0x2b, 0x15, 0xd0, + 0xac, 0x20, 0x00, 0x5d, 0x0b, 0x4a, 0x18, 0x32, + 0x00, 0x02, 0x80, 0x18, 0xb0, 0x30, 0xe0, 0x60, + 0x3c, 0x00, 0x70, 0x9e, 0x00, 0x00, 0x8d, 0x68, + 0x00, 0x20, 0x08, 0xe0, 0xe2, 0x68, 0xc1, 0x00, + 0x54, 0x50, 0xe6, 0x68, 0x82, 0x00, 0x52, 0x19, + 0x71, 0x18, 0x4a, 0x60, 0x01, 0x30, 0x98, 0x42, + 0xf4, 0xdb, 0x70, 0xbd, 0x00, 0x00, 0x68, 0x61, + 0x01, 0x00, 0x58, 0x75, 0x01, 0x00, 0x1f, 0xb5, + 0x04, 0x1c, 0x60, 0x34, 0x61, 0x7a, 0x03, 0x1c, + 0x80, 0x6a, 0x08, 0x4a, 0x02, 0x91, 0x01, 0x90, + 0x03, 0x92, 0x3c, 0x00, 0xac, 0x9e, 0x00, 0x00, + 0xe2, 0x79, 0x18, 0x1c, 0x20, 0x30, 0x00, 0x92, + 0x44, 0x7b, 0x82, 0x7b, 0x5e, 0x20, 0xc1, 0x5a, + 0x18, 0x69, 0x04, 0x30, 0x23, 0x1c, 0x02, 0xf0, + 0x7f, 0xfe, 0x1f, 0xbd, 0x39, 0x4e, 0x00, 0x00, + 0xb0, 0xb5, 0x0b, 0x1c, 0x01, 0x88, 0x69, 0x20, + 0xc0, 0x5c, 0x86, 0xb0, 0x0e, 0x4a, 0x04, 0x91, + 0x03, 0x90, 0x05, 0x92, 0x0d, 0x4d, 0x59, 0x6a, + 0x9a, 0x6a, 0x2d, 0x68, 0x3c, 0x00, 0xe8, 0x9e, + 0x00, 0x00, 0x01, 0x24, 0x00, 0x2d, 0x00, 0xd0, + 0x04, 0x1c, 0x0a, 0x48, 0x00, 0x5d, 0x01, 0x91, + 0x02, 0x92, 0x00, 0x90, 0x18, 0x1c, 0x20, 0x30, + 0x44, 0x7b, 0x82, 0x7b, 0x5e, 0x20, 0xc1, 0x5a, + 0x18, 0x69, 0x04, 0x30, 0x23, 0x1c, 0x02, 0xf0, + 0xa4, 0xfe, 0x06, 0xb0, 0xb0, 0xbd, 0x51, 0x4f, + 0x00, 0x00, 0x18, 0x67, 0x01, 0x00, 0x0a, 0x61, + 0x01, 0x00, 0x01, 0x89, 0x8a, 0x1c, 0x3c, 0x00, + 0x24, 0x9f, 0x00, 0x00, 0x02, 0x81, 0x02, 0x68, + 0x02, 0x3a, 0x02, 0x60, 0x08, 0x0a, 0x09, 0x02, + 0x08, 0x43, 0x10, 0x80, 0x70, 0x47, 0x00, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x08, 0x78, 0x0e, 0x1c, + 0xff, 0x28, 0x14, 0xd0, 0x71, 0x78, 0x02, 0x31, + 0x00, 0x20, 0xf7, 0xf7, 0x45, 0xfb, 0x04, 0x1c, + 0x02, 0x89, 0x00, 0x68, 0x31, 0x1c, 0xf6, 0xf7, + 0xcf, 0xfa, 0x00, 0x2d, 0x06, 0xd0, 0x28, 0x1c, + 0x3c, 0x00, 0x60, 0x9f, 0x00, 0x00, 0xf7, 0xf7, + 0x34, 0xfb, 0x21, 0x1c, 0xf7, 0xf7, 0x57, 0xfa, + 0x00, 0xe0, 0x25, 0x1c, 0x28, 0x1c, 0x70, 0xbd, + 0x00, 0x00, 0xff, 0xb5, 0x0f, 0x1c, 0x1e, 0x1c, + 0x04, 0x1c, 0x98, 0x1c, 0x01, 0x04, 0x09, 0x0c, + 0x00, 0x20, 0x81, 0xb0, 0xf7, 0xf7, 0x27, 0xfb, + 0x05, 0x1c, 0x00, 0x68, 0x00, 0x2c, 0x38, 0x60, + 0x03, 0x99, 0x01, 0x70, 0x38, 0x68, 0x46, 0x70, + 0x06, 0xd0, 0x3c, 0x00, 0x9c, 0x9f, 0x00, 0x00, + 0x20, 0x1c, 0xf7, 0xf7, 0x15, 0xfb, 0x29, 0x1c, + 0xf7, 0xf7, 0x38, 0xfa, 0x00, 0xe0, 0x2c, 0x1c, + 0x20, 0x1c, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0x70, 0xb5, 0x10, 0x48, 0x04, 0x68, 0x04, 0x60, + 0x0f, 0x49, 0x20, 0x20, 0x08, 0x60, 0xa0, 0x05, + 0x0e, 0x4e, 0x02, 0xd5, 0x70, 0x6a, 0xf6, 0xf7, + 0x05, 0xfa, 0xe0, 0x01, 0x02, 0xd5, 0x30, 0x6e, + 0xf6, 0xf7, 0x00, 0xfa, 0x3c, 0x00, 0xd8, 0x9f, + 0x00, 0x00, 0x0a, 0x48, 0x04, 0x40, 0x00, 0x25, + 0x07, 0xe0, 0xe0, 0x07, 0x03, 0xd5, 0xa8, 0x00, + 0x30, 0x58, 0xf6, 0xf7, 0xf6, 0xf9, 0x01, 0x35, + 0x64, 0x08, 0x00, 0x2c, 0xf5, 0xd1, 0x70, 0xbd, + 0x00, 0x00, 0x00, 0x40, 0x07, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x30, 0x74, 0x01, 0x00, 0xff, 0xfd, + 0xff, 0xfe, 0x80, 0xb5, 0x07, 0x21, 0x80, 0x20, + 0xf7, 0xf7, 0x49, 0xf9, 0x80, 0xbd, 0x3c, 0x00, + 0x14, 0xa0, 0x00, 0x00, 0xf8, 0xb5, 0x14, 0x4b, + 0x82, 0x00, 0x9c, 0x58, 0xca, 0x06, 0x01, 0x27, + 0x39, 0x1c, 0xd2, 0x0e, 0x91, 0x40, 0x11, 0x4a, + 0x11, 0x60, 0x11, 0x4e, 0x40, 0x00, 0x85, 0x19, + 0x15, 0xe0, 0x60, 0x60, 0x20, 0x7b, 0xc1, 0x00, + 0x89, 0x19, 0x10, 0x31, 0x0a, 0x78, 0x0d, 0x23, + 0x9a, 0x43, 0x0a, 0x70, 0x39, 0x1c, 0x81, 0x40, + 0x31, 0x73, 0x07, 0x49, 0x00, 0x01, 0x08, 0x31, + 0x3c, 0x00, 0x50, 0xa0, 0x00, 0x00, 0x40, 0x18, + 0x08, 0x4a, 0x41, 0x68, 0x42, 0x60, 0x80, 0x68, + 0xf6, 0xf7, 0xbe, 0xf9, 0x28, 0x7b, 0x00, 0x28, + 0xe6, 0xd1, 0xf8, 0xbd, 0x00, 0x00, 0xa4, 0x73, + 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, 0x00, 0x60, + 0x07, 0x00, 0xd1, 0x75, 0x00, 0x00, 0x03, 0x49, + 0x01, 0x20, 0x09, 0x7a, 0x00, 0x29, 0x00, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x04, 0x7a, + 0x01, 0x00, 0x3c, 0x00, 0x8c, 0xa0, 0x00, 0x00, + 0x03, 0x49, 0x01, 0x20, 0x89, 0x7a, 0x00, 0x29, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0xb0, 0xb5, 0x00, 0x24, + 0xfa, 0xf7, 0x76, 0xfc, 0x00, 0x28, 0x14, 0xd0, + 0x01, 0x24, 0x08, 0xf0, 0x7d, 0xfe, 0x0a, 0x4d, + 0x0a, 0x4b, 0x00, 0x21, 0x5a, 0x18, 0xa0, 0x32, + 0x12, 0x78, 0x10, 0x2a, 0x06, 0xd3, 0x8a, 0x00, + 0xd2, 0x18, 0x92, 0x6f, 0x3c, 0x00, 0xc8, 0xa0, + 0x00, 0x00, 0x82, 0x1a, 0xaa, 0x42, 0x00, 0xd2, + 0x00, 0x24, 0x01, 0x31, 0x03, 0x29, 0xf0, 0xd3, + 0x20, 0x1c, 0xb0, 0xbd, 0x00, 0x00, 0x8b, 0x08, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x01, 0x48, + 0xc0, 0x68, 0x70, 0x47, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x16, 0x1c, 0xfd, 0xf7, 0x2e, 0xfe, 0x00, 0x20, + 0xe0, 0x60, 0x26, 0x61, 0xa5, 0x60, 0x3c, 0x00, + 0x04, 0xa1, 0x00, 0x00, 0x70, 0xbd, 0x00, 0x00, + 0xf8, 0xb5, 0x17, 0x1c, 0x0e, 0x1c, 0x04, 0x1c, + 0x00, 0x28, 0x01, 0xd0, 0x00, 0x2e, 0x01, 0xd1, + 0xf7, 0xf7, 0xf2, 0xf8, 0xa0, 0x68, 0x07, 0xf0, + 0x49, 0xf9, 0x05, 0x1c, 0x01, 0xd1, 0xf7, 0xf7, + 0xeb, 0xf8, 0x29, 0x1c, 0x6e, 0x60, 0xaf, 0x60, + 0x20, 0x1c, 0xfd, 0xf7, 0xfd, 0xfd, 0xe0, 0x68, + 0x41, 0x1c, 0xe1, 0x60, 0x00, 0x28, 0x03, 0xd1, + 0x3c, 0x00, 0x40, 0xa1, 0x00, 0x00, 0x05, 0x48, + 0x21, 0x69, 0x05, 0xf0, 0x2c, 0xf9, 0x20, 0x68, + 0xa8, 0x42, 0x02, 0xd1, 0x38, 0x1c, 0xf6, 0xf7, + 0x48, 0xf9, 0xf8, 0xbd, 0x00, 0x00, 0xc4, 0x60, + 0x01, 0x00, 0x00, 0x22, 0x01, 0x39, 0x10, 0xb5, + 0x05, 0xe0, 0x0c, 0x23, 0x53, 0x43, 0x1c, 0x18, + 0x0c, 0x34, 0xc4, 0x50, 0x01, 0x32, 0x8a, 0x42, + 0xf7, 0xd3, 0x00, 0x21, 0x0c, 0x23, 0x5a, 0x43, + 0x81, 0x50, 0x3c, 0x00, 0x7c, 0xa1, 0x00, 0x00, + 0x10, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x01, 0xd1, 0xf7, 0xf7, 0xbb, 0xf8, 0x20, 0x1c, + 0xfd, 0xf7, 0xda, 0xfd, 0x01, 0x1c, 0x85, 0x68, + 0xa0, 0x68, 0x07, 0xf0, 0x09, 0xf9, 0xe0, 0x68, + 0x01, 0x38, 0xe0, 0x60, 0x03, 0xd1, 0x06, 0x48, + 0x21, 0x69, 0x05, 0xf0, 0xe7, 0xf8, 0x21, 0x68, + 0x00, 0x29, 0x03, 0xd0, 0x88, 0x68, 0x49, 0x68, + 0xf6, 0xf7, 0x11, 0xf9, 0x3c, 0x00, 0xb8, 0xa1, + 0x00, 0x00, 0x28, 0x1c, 0xb0, 0xbd, 0xc4, 0x60, + 0x01, 0x00, 0x01, 0x21, 0x00, 0x28, 0x8c, 0xb5, + 0x00, 0xd1, 0x00, 0x21, 0x0e, 0x20, 0x09, 0xf0, + 0x32, 0xfa, 0x83, 0x20, 0x00, 0xab, 0x18, 0x80, + 0x00, 0x20, 0x04, 0xf0, 0x0c, 0xf8, 0x01, 0x90, + 0x68, 0x46, 0x03, 0xf0, 0x7a, 0xf9, 0x8c, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x08, 0xf0, 0xdf, 0xfd, + 0x06, 0x49, 0x0a, 0x89, 0x06, 0x49, 0x3c, 0x00, + 0xf4, 0xa1, 0x00, 0x00, 0x09, 0x6e, 0x41, 0x1a, + 0x0b, 0x0c, 0x59, 0x18, 0x89, 0x1a, 0x09, 0x04, + 0x09, 0x0c, 0x40, 0x1a, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x90, 0x07, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x70, 0xb5, 0x04, 0x1c, 0x88, 0x7e, 0x0d, 0x1c, + 0x20, 0x28, 0x03, 0xd9, 0x03, 0x21, 0x18, 0x20, + 0xf7, 0xf7, 0x40, 0xf8, 0x00, 0x26, 0x26, 0x76, + 0xa8, 0x7e, 0x29, 0x1c, 0x1b, 0x31, 0x60, 0x76, + 0x3c, 0x00, 0x30, 0xa2, 0x00, 0x00, 0x20, 0x1c, + 0x1d, 0x30, 0xaa, 0x7e, 0xf6, 0xf7, 0x5f, 0xf9, + 0x68, 0x68, 0x29, 0x1c, 0x60, 0x60, 0xa8, 0x68, + 0x13, 0x31, 0xa0, 0x60, 0xa8, 0x7b, 0x06, 0x22, + 0x20, 0x73, 0xe8, 0x7b, 0x60, 0x73, 0x28, 0x7c, + 0xa0, 0x73, 0x68, 0x7c, 0xe0, 0x73, 0xa8, 0x89, + 0x20, 0x82, 0xa8, 0x7c, 0xe0, 0x76, 0x26, 0x77, + 0x20, 0x1c, 0x12, 0x30, 0xa6, 0x76, 0xf6, 0xf7, + 0x46, 0xf9, 0x3c, 0x00, 0x6c, 0xa2, 0x00, 0x00, + 0x60, 0x68, 0x43, 0x1c, 0x1d, 0xd0, 0x11, 0x4d, + 0x6d, 0x61, 0x28, 0x68, 0x00, 0x28, 0x1a, 0xd0, + 0x22, 0x7b, 0x01, 0x1c, 0x0b, 0x7b, 0x9a, 0x42, + 0x01, 0xd3, 0x20, 0x60, 0x14, 0xe0, 0x0b, 0x1c, + 0x09, 0x68, 0x00, 0x29, 0x0b, 0xd0, 0x0e, 0x7b, + 0xb2, 0x42, 0x08, 0xd2, 0x0b, 0x68, 0x00, 0x2b, + 0xf0, 0xd0, 0x1e, 0x7b, 0xb2, 0x42, 0xed, 0xd3, + 0x23, 0x60, 0x0c, 0x60, 0x3c, 0x00, 0xa8, 0xa2, + 0x00, 0x00, 0x01, 0xe0, 0x21, 0x60, 0x1c, 0x60, + 0x00, 0x20, 0x70, 0xbd, 0x26, 0x60, 0x2c, 0x60, + 0xfa, 0xe7, 0xa4, 0x6e, 0x01, 0x00, 0x13, 0x4a, + 0xb0, 0xb5, 0x51, 0x68, 0x01, 0x24, 0x00, 0x29, + 0x1e, 0xd0, 0x13, 0x1d, 0xd1, 0x61, 0x13, 0x62, + 0x43, 0x68, 0x04, 0xe0, 0x10, 0x62, 0x00, 0x68, + 0xd0, 0x61, 0x00, 0x28, 0x14, 0xd0, 0xd0, 0x69, + 0x45, 0x68, 0x9d, 0x42, 0xf6, 0xd1, 0x3c, 0x00, + 0xe4, 0xa2, 0x00, 0x00, 0x10, 0x6a, 0x81, 0x42, + 0x04, 0xd1, 0x51, 0x60, 0xd0, 0x69, 0x00, 0x68, + 0x08, 0x60, 0x02, 0xe0, 0xd1, 0x69, 0x09, 0x68, + 0x01, 0x60, 0xd0, 0x69, 0xfc, 0xf7, 0xce, 0xff, + 0x00, 0x28, 0x00, 0xd0, 0x00, 0x24, 0x20, 0x1c, + 0xb0, 0xbd, 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x17, 0x4d, 0x01, 0x24, 0x29, 0x68, + 0x00, 0x29, 0x27, 0xd0, 0x6d, 0x61, 0x29, 0x61, + 0x3c, 0x00, 0x20, 0xa3, 0x00, 0x00, 0x43, 0x68, + 0x04, 0xe0, 0x68, 0x61, 0x00, 0x68, 0x28, 0x61, + 0x00, 0x28, 0x1d, 0xd0, 0x28, 0x69, 0x42, 0x68, + 0x9a, 0x42, 0xf6, 0xd1, 0xaa, 0x69, 0x2b, 0x69, + 0x9a, 0x42, 0x00, 0xd1, 0xa9, 0x61, 0x6a, 0x69, + 0x91, 0x42, 0x03, 0xd1, 0x29, 0x60, 0x00, 0x68, + 0x08, 0x60, 0x06, 0xe0, 0x00, 0x68, 0x10, 0x60, + 0x28, 0x68, 0x00, 0x28, 0x01, 0xd1, 0x07, 0xf0, + 0xcc, 0xfe, 0x3c, 0x00, 0x5c, 0xa3, 0x00, 0x00, + 0x28, 0x69, 0xfc, 0xf7, 0x9d, 0xff, 0x00, 0x28, + 0x02, 0xd0, 0x00, 0x24, 0x00, 0xe0, 0x01, 0x24, + 0x20, 0x1c, 0xb0, 0xbd, 0xa4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x07, 0x48, 0x44, 0x68, + 0x07, 0xe0, 0x21, 0x1c, 0x44, 0x31, 0x28, 0x1c, + 0x00, 0xf0, 0xd6, 0xfc, 0x00, 0x28, 0x02, 0xd1, + 0x64, 0x68, 0x00, 0x2c, 0xf5, 0xd1, 0x20, 0x1c, + 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xa3, + 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, 0x70, 0xb5, + 0x0d, 0x1c, 0x14, 0x1c, 0x00, 0x28, 0x0b, 0x4e, + 0x08, 0xd0, 0x70, 0x6e, 0x06, 0x23, 0x58, 0x43, + 0x02, 0x04, 0x12, 0x0c, 0x31, 0x1c, 0x28, 0x1c, + 0x22, 0x80, 0x07, 0xe0, 0x21, 0x88, 0x06, 0x20, + 0xf6, 0xf7, 0xa7, 0xf9, 0x70, 0x66, 0x22, 0x88, + 0x29, 0x1c, 0x30, 0x1c, 0xf6, 0xf7, 0x95, 0xf8, + 0x01, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xa3, 0x00, 0x00, 0x10, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x03, 0x28, 0x03, 0xd8, 0x04, 0x4a, + 0xc0, 0x00, 0x11, 0x50, 0x80, 0xbd, 0x01, 0x21, + 0x26, 0x20, 0xf6, 0xf7, 0x5b, 0xff, 0x80, 0xbd, + 0x7c, 0x79, 0x01, 0x00, 0xb0, 0xb5, 0x05, 0x1c, + 0xc0, 0x68, 0x01, 0x89, 0x39, 0x29, 0x39, 0xd3, + 0x04, 0x68, 0xa0, 0x79, 0x88, 0x28, 0x35, 0xd1, + 0xe0, 0x79, 0x8e, 0x28, 0x32, 0xd1, 0x20, 0x7a, + 0x3c, 0x00, 0x10, 0xa4, 0x00, 0x00, 0x01, 0x28, + 0x2f, 0xd1, 0x60, 0x7a, 0x03, 0x28, 0x2c, 0xd1, + 0x20, 0x7b, 0x02, 0x28, 0x01, 0xd0, 0xfe, 0x28, + 0x27, 0xd1, 0x60, 0x7b, 0x1d, 0x21, 0x08, 0x40, + 0x01, 0x28, 0x22, 0xd1, 0xa0, 0x7b, 0xc8, 0x21, + 0x08, 0x40, 0x08, 0x28, 0x1d, 0xd1, 0xa8, 0x1d, + 0xfb, 0xf7, 0xe1, 0xf9, 0x00, 0x28, 0x18, 0xd0, + 0x19, 0x20, 0x21, 0x5c, 0x00, 0x29, 0x14, 0xd1, + 0x01, 0x30, 0x3c, 0x00, 0x4c, 0xa4, 0x00, 0x00, + 0x39, 0x28, 0xf9, 0xdb, 0x68, 0x8b, 0x04, 0x21, + 0x08, 0x43, 0x68, 0x83, 0x03, 0xf0, 0xd6, 0xfe, + 0x00, 0x28, 0x09, 0xd1, 0x00, 0x23, 0x00, 0x22, + 0x26, 0x20, 0x04, 0x49, 0x09, 0xf0, 0x92, 0xf9, + 0x03, 0x48, 0x00, 0x68, 0x01, 0xf0, 0x84, 0xf9, + 0xb0, 0xbd, 0x00, 0x00, 0x50, 0xc3, 0x00, 0x00, + 0x0c, 0x79, 0x01, 0x00, 0xb0, 0xb5, 0x08, 0x4c, + 0xa3, 0x68, 0x01, 0x33, 0x3c, 0x00, 0x88, 0xa4, + 0x00, 0x00, 0xa3, 0x60, 0x0c, 0x1c, 0x09, 0xd0, + 0x25, 0x68, 0x00, 0x2d, 0x03, 0xd0, 0x23, 0x7a, + 0x61, 0x68, 0xf5, 0xf7, 0xa3, 0xff, 0x20, 0x1c, + 0xf7, 0xf7, 0xa9, 0xf9, 0xb0, 0xbd, 0x94, 0x79, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0xc0, 0x68, + 0x01, 0x89, 0x05, 0x68, 0x08, 0x29, 0x53, 0xd3, + 0x06, 0x22, 0x28, 0x1c, 0x55, 0x49, 0xf5, 0xf7, + 0x9e, 0xff, 0x00, 0x28, 0x37, 0xd1, 0x3c, 0x00, + 0xc4, 0xa4, 0x00, 0x00, 0xe9, 0x88, 0x52, 0x4e, + 0x04, 0x3e, 0x81, 0x29, 0x24, 0xd1, 0xe5, 0x68, + 0x29, 0x68, 0x08, 0x7a, 0x4a, 0x7a, 0x00, 0x02, + 0x80, 0x18, 0x00, 0x04, 0x00, 0x0c, 0x42, 0x0b, + 0x00, 0x05, 0x00, 0x0d, 0xe2, 0x75, 0x20, 0x83, + 0x4b, 0x89, 0x00, 0x20, 0x42, 0x00, 0xb2, 0x5a, + 0x9a, 0x42, 0x06, 0xd1, 0x28, 0x89, 0x0c, 0x38, + 0x02, 0x0a, 0x00, 0x02, 0x10, 0x43, 0x48, 0x81, + 0x3c, 0x00, 0x00, 0xa5, 0x00, 0x00, 0x02, 0xe0, + 0x01, 0x30, 0x02, 0x28, 0xf1, 0xd3, 0xe0, 0x68, + 0x01, 0x89, 0x0a, 0x39, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x0a, 0x31, 0x1c, 0xe0, 0x00, 0x22, + 0x00, 0x20, 0x43, 0x00, 0xf3, 0x5a, 0x8b, 0x42, + 0x01, 0xd1, 0x01, 0x22, 0x02, 0xe0, 0x01, 0x30, + 0x02, 0x28, 0xf6, 0xd3, 0x00, 0x2a, 0x11, 0xd1, + 0x07, 0xe0, 0x36, 0x49, 0x06, 0x22, 0x06, 0x31, + 0x28, 0x1c, 0x3c, 0x00, 0x3c, 0xa5, 0x00, 0x00, + 0xf5, 0xf7, 0x5e, 0xff, 0x00, 0x28, 0x08, 0xd1, + 0xe0, 0x68, 0x01, 0x89, 0x06, 0x39, 0x01, 0x81, + 0xe0, 0x68, 0x01, 0x68, 0x06, 0x31, 0x01, 0x60, + 0x10, 0xe0, 0xe0, 0x68, 0xff, 0xf7, 0xe2, 0xfc, + 0x0c, 0xe0, 0x02, 0x31, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x02, 0x39, 0x01, 0x60, 0xe0, 0x68, + 0x00, 0x89, 0x02, 0x38, 0x02, 0x0a, 0x00, 0x02, + 0x10, 0x43, 0x08, 0x80, 0x3c, 0x00, 0x78, 0xa5, + 0x00, 0x00, 0xe0, 0x68, 0x03, 0x25, 0x02, 0x89, + 0x01, 0x68, 0x24, 0x4e, 0x02, 0x2a, 0x10, 0xd9, + 0x09, 0x88, 0x08, 0x29, 0x05, 0xd0, 0xc1, 0x23, + 0xdb, 0x00, 0x99, 0x42, 0x03, 0xd1, 0x01, 0x25, + 0x02, 0xe0, 0x00, 0x25, 0x00, 0xe0, 0x02, 0x25, + 0xe9, 0x00, 0x71, 0x58, 0x00, 0x29, 0x00, 0xd1, + 0x02, 0x25, 0xf7, 0xf7, 0x04, 0xf8, 0xe9, 0x00, + 0x89, 0x19, 0x89, 0x88, 0x88, 0x42, 0x3c, 0x00, + 0xb4, 0xa5, 0x00, 0x00, 0x00, 0xd9, 0x03, 0x25, + 0xa1, 0x1d, 0x20, 0x1c, 0xfd, 0xf7, 0x34, 0xfc, + 0x00, 0x28, 0x00, 0xd1, 0x03, 0x25, 0x02, 0x2d, + 0x05, 0xd0, 0x03, 0x2d, 0x07, 0xd1, 0xe0, 0x68, + 0xf6, 0xf7, 0xe2, 0xff, 0x70, 0xbd, 0x20, 0x1c, + 0xfd, 0xf7, 0x1c, 0xfd, 0x70, 0xbd, 0xe0, 0x68, + 0x01, 0x89, 0x02, 0x39, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x02, 0x31, 0x01, 0x60, 0xe8, 0x00, + 0x3c, 0x00, 0xf0, 0xa5, 0x00, 0x00, 0x31, 0x58, + 0x20, 0x1c, 0xf5, 0xf7, 0xf1, 0xfe, 0x00, 0x28, + 0xef, 0xd1, 0xe0, 0x68, 0x01, 0x89, 0x02, 0x31, + 0x01, 0x81, 0xe0, 0x68, 0x01, 0x68, 0x02, 0x39, + 0x01, 0x60, 0xe3, 0xe7, 0x00, 0x00, 0x6a, 0x46, + 0x01, 0x00, 0x7c, 0x79, 0x01, 0x00, 0x70, 0xb5, + 0x0e, 0x1c, 0x04, 0x1c, 0x15, 0x1c, 0xf7, 0xf7, + 0x8c, 0xfb, 0x00, 0x28, 0x2a, 0xd0, 0x1b, 0x49, + 0x08, 0x68, 0x3c, 0x00, 0x2c, 0xa6, 0x00, 0x00, + 0x01, 0x30, 0x08, 0x60, 0x00, 0x2e, 0x0a, 0xd0, + 0x01, 0x2e, 0x0b, 0xd0, 0x02, 0x2e, 0x0f, 0xd1, + 0x20, 0x1c, 0x04, 0xf0, 0xcd, 0xf8, 0x20, 0x1c, + 0xff, 0xf7, 0xd6, 0xfe, 0x0c, 0xe0, 0x08, 0x21, + 0xe0, 0x68, 0x02, 0xe0, 0xc1, 0x21, 0xe0, 0x68, + 0xc9, 0x00, 0x04, 0xf0, 0x35, 0xf9, 0x03, 0xe0, + 0x02, 0x21, 0x26, 0x20, 0xf6, 0xf7, 0x20, 0xfe, + 0xe2, 0x7d, 0xe1, 0x6a, 0x3c, 0x00, 0x68, 0xa6, + 0x00, 0x00, 0x28, 0x1c, 0xfc, 0xf7, 0x95, 0xfb, + 0x20, 0x63, 0x00, 0x20, 0x20, 0x62, 0xa0, 0x62, + 0x20, 0x1c, 0x00, 0xf0, 0x6c, 0xfe, 0x70, 0xbd, + 0xe0, 0x68, 0xf6, 0xf7, 0x8a, 0xff, 0x00, 0x2d, + 0xf9, 0xd0, 0xe3, 0x7d, 0x00, 0x22, 0x01, 0x20, + 0xe1, 0x6a, 0xf5, 0xf7, 0xa7, 0xfe, 0x70, 0xbd, + 0x00, 0x00, 0x94, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x28, 0x04, 0xd1, 0x05, 0x48, 0x3c, 0x00, + 0xa4, 0xa6, 0x00, 0x00, 0x00, 0x68, 0x01, 0xf0, + 0x09, 0xf9, 0x80, 0xbd, 0x03, 0x21, 0x26, 0x20, + 0xf6, 0xf7, 0xf8, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x0c, 0x79, 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x80, 0x79, 0x00, 0x24, 0xc0, 0x07, 0x2d, 0xd5, + 0xf0, 0x68, 0x00, 0x68, 0x41, 0x7a, 0x11, 0x29, + 0x28, 0xd1, 0xc1, 0x88, 0x0a, 0x0a, 0x09, 0x02, + 0x11, 0x43, 0xc9, 0x04, 0x22, 0xd1, 0x01, 0x78, + 0x3c, 0x00, 0xe0, 0xa6, 0x00, 0x00, 0x11, 0x4f, + 0x09, 0x07, 0x89, 0x0e, 0x08, 0x18, 0x41, 0x88, + 0x0a, 0x0a, 0x09, 0x02, 0x11, 0x43, 0x0d, 0x04, + 0x2d, 0x0c, 0x43, 0x2d, 0x39, 0x68, 0x01, 0xd1, + 0xca, 0x07, 0x0e, 0xd4, 0x44, 0x2d, 0x06, 0xd1, + 0xc9, 0x07, 0x04, 0xd5, 0x24, 0x30, 0x00, 0xf0, + 0x22, 0xfb, 0x00, 0x28, 0x05, 0xd0, 0x06, 0x48, + 0x85, 0x42, 0x06, 0xd1, 0x38, 0x68, 0x80, 0x07, + 0x03, 0xd5, 0x3c, 0x00, 0x1c, 0xa7, 0x00, 0x00, + 0x01, 0x24, 0xf0, 0x68, 0xf6, 0xf7, 0x3a, 0xff, + 0x20, 0x1c, 0xf8, 0xbd, 0x7c, 0x5a, 0x01, 0x00, + 0x6c, 0x07, 0x00, 0x00, 0x80, 0xb5, 0x00, 0x28, + 0x07, 0xd0, 0x00, 0x21, 0x26, 0x20, 0x08, 0xf0, + 0x7b, 0xff, 0x02, 0x48, 0x00, 0x68, 0x01, 0xf0, + 0xbb, 0xf8, 0x80, 0xbd, 0x0c, 0x79, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x09, 0x4a, 0x08, 0x1c, + 0x51, 0x68, 0x01, 0x31, 0x3c, 0x00, 0x58, 0xa7, + 0x00, 0x00, 0x51, 0x60, 0x00, 0x21, 0x21, 0x62, + 0xa1, 0x62, 0xe2, 0x7d, 0xe1, 0x6a, 0xfc, 0xf7, + 0x18, 0xfb, 0x20, 0x63, 0x20, 0x1c, 0xf7, 0xf7, + 0xe6, 0xfa, 0x20, 0x1c, 0x00, 0xf0, 0xef, 0xfd, + 0x10, 0xbd, 0x94, 0x79, 0x01, 0x00, 0x0c, 0xb5, + 0x02, 0x1c, 0x08, 0x1c, 0x00, 0x21, 0x01, 0x91, + 0x00, 0x92, 0x6a, 0x46, 0x01, 0xa9, 0x00, 0xf0, + 0x02, 0xf8, 0x0c, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xa7, 0x00, 0x00, 0x70, 0xb5, 0x13, 0x68, + 0x00, 0x2b, 0x1e, 0xd0, 0x00, 0x26, 0x0b, 0x68, + 0x00, 0x2b, 0x02, 0xd1, 0x13, 0x68, 0x1b, 0x68, + 0x0b, 0x60, 0x13, 0x68, 0x1c, 0x68, 0x1b, 0x89, + 0xe5, 0x18, 0x08, 0xe0, 0x5c, 0x78, 0x1c, 0x19, + 0x02, 0x34, 0x0c, 0x60, 0x1c, 0x78, 0x84, 0x42, + 0x01, 0xd1, 0x18, 0x1c, 0x70, 0xbd, 0x0b, 0x68, + 0xab, 0x42, 0xf3, 0xd3, 0x13, 0x68, 0xdb, 0x68, + 0x3c, 0x00, 0xd0, 0xa7, 0x00, 0x00, 0x13, 0x60, + 0x0e, 0x60, 0x13, 0x68, 0x00, 0x2b, 0xe1, 0xd1, + 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, 0x70, 0xb5, + 0x03, 0x1c, 0x20, 0xd0, 0x18, 0x68, 0x1e, 0x89, + 0x05, 0x1c, 0x16, 0xe0, 0x04, 0x78, 0xdd, 0x2c, + 0x10, 0xd1, 0x84, 0x78, 0x00, 0x2c, 0x0d, 0xd1, + 0xc4, 0x78, 0x50, 0x2c, 0x0a, 0xd1, 0x04, 0x79, + 0xf2, 0x2c, 0x07, 0xd1, 0x44, 0x79, 0x8c, 0x42, + 0x04, 0xd1, 0x3c, 0x00, 0x0c, 0xa8, 0x00, 0x00, + 0x02, 0x29, 0x0c, 0xd1, 0x84, 0x79, 0x94, 0x42, + 0x09, 0xd0, 0x44, 0x78, 0x20, 0x18, 0x02, 0x30, + 0x44, 0x1b, 0xb4, 0x42, 0xe5, 0xdb, 0xdb, 0x68, + 0x00, 0x2b, 0xde, 0xd1, 0x00, 0x20, 0x70, 0xbd, + 0x04, 0x49, 0x80, 0xb5, 0x0a, 0x78, 0x0a, 0x20, + 0x00, 0x2a, 0x00, 0xd0, 0x48, 0x6a, 0x00, 0xf0, + 0xd1, 0xf8, 0x80, 0xbd, 0x1c, 0x75, 0x01, 0x00, + 0xb0, 0xb5, 0x17, 0x4c, 0x3c, 0x00, 0x48, 0xa8, + 0x00, 0x00, 0x20, 0x68, 0x00, 0x28, 0x29, 0xd0, + 0x16, 0x4d, 0xe8, 0x69, 0x00, 0x28, 0x25, 0xd1, + 0x01, 0xf0, 0x3f, 0xfa, 0x00, 0x28, 0x21, 0xd1, + 0xff, 0xf7, 0x41, 0xfc, 0x00, 0x28, 0x1d, 0xd1, + 0x20, 0x68, 0xa9, 0x69, 0x40, 0x18, 0x08, 0xf0, + 0xd6, 0xf9, 0x00, 0x28, 0x16, 0xd0, 0x02, 0xf0, + 0x06, 0xfd, 0x21, 0x68, 0x40, 0x18, 0x08, 0xf0, + 0xce, 0xf9, 0x00, 0x28, 0x0e, 0xd0, 0x3c, 0x00, + 0x84, 0xa8, 0x00, 0x00, 0x01, 0x20, 0xe8, 0x61, + 0x00, 0x22, 0x25, 0x21, 0x80, 0x20, 0x08, 0xf0, + 0x8f, 0xff, 0x06, 0x48, 0x29, 0x6a, 0x04, 0xf0, + 0x83, 0xfd, 0x01, 0x21, 0x28, 0x6a, 0x00, 0xf0, + 0x89, 0xff, 0xb0, 0xbd, 0xe8, 0x59, 0x01, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x00, 0x24, 0xfa, 0xf7, + 0x0b, 0xff, 0x18, 0x4e, 0x71, 0x6a, 0x40, 0x18, + 0x3c, 0x00, 0xc0, 0xa8, 0x00, 0x00, 0x00, 0xf0, + 0x8e, 0xf8, 0x00, 0x28, 0x0b, 0xd1, 0x04, 0xf0, + 0xfe, 0xfb, 0x00, 0x21, 0x25, 0x20, 0x08, 0xf0, + 0xb0, 0xfe, 0x03, 0x22, 0x29, 0x1c, 0x28, 0x1c, + 0x00, 0xf0, 0xaf, 0xf8, 0x18, 0xe0, 0x70, 0x6a, + 0x44, 0x1e, 0x00, 0xf0, 0x7c, 0xf8, 0x00, 0x28, + 0x12, 0xd1, 0x0c, 0x48, 0x31, 0x6a, 0x04, 0xf0, + 0x56, 0xfd, 0x01, 0x21, 0x30, 0x6a, 0x00, 0xf0, + 0x5c, 0xff, 0x3c, 0x00, 0xfc, 0xa8, 0x00, 0x00, + 0x00, 0x20, 0xfa, 0xf7, 0x0d, 0xfe, 0x06, 0xf0, + 0x03, 0xf8, 0x00, 0x23, 0x00, 0x22, 0x25, 0x20, + 0x05, 0x49, 0x08, 0xf0, 0x3f, 0xff, 0x20, 0x1c, + 0x07, 0xf0, 0xfc, 0xfa, 0x70, 0xbd, 0x00, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x10, 0x27, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x28, + 0x07, 0xd0, 0x80, 0x28, 0x0d, 0xd1, 0x00, 0x22, + 0x00, 0x21, 0x08, 0x48, 0x3c, 0x00, 0x38, 0xa9, + 0x00, 0x00, 0xf8, 0xf7, 0x9a, 0xfe, 0x80, 0xbd, + 0x01, 0x29, 0x02, 0xd1, 0x06, 0x49, 0x00, 0x20, + 0xc8, 0x61, 0x04, 0xf0, 0xbe, 0xfb, 0x80, 0xbd, + 0x05, 0x21, 0x25, 0x20, 0xf6, 0xf7, 0xa7, 0xfc, + 0x80, 0xbd, 0x61, 0xa9, 0x00, 0x00, 0x1c, 0x75, + 0x01, 0x00, 0x00, 0x21, 0x00, 0x28, 0x80, 0xb5, + 0x01, 0xd1, 0x03, 0x48, 0x41, 0x68, 0x01, 0x22, + 0x25, 0x20, 0x08, 0xf0, 0x2c, 0xfe, 0x3c, 0x00, + 0x74, 0xa9, 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0xe8, 0x59, 0x01, 0x00, 0x02, 0x49, 0xc8, 0x68, + 0x01, 0x38, 0x48, 0x62, 0x70, 0x47, 0x00, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0x38, 0xb5, 0x03, 0x1c, + 0x08, 0x1c, 0x19, 0x1c, 0x11, 0x4b, 0x06, 0xd0, + 0x01, 0x21, 0x11, 0x80, 0x0a, 0x1c, 0x19, 0x1c, + 0xf5, 0xf7, 0xaa, 0xfd, 0x17, 0xe0, 0x0d, 0x4d, + 0x01, 0x1c, 0x2c, 0x78, 0x12, 0x88, 0x18, 0x1c, + 0x3c, 0x00, 0xb0, 0xa9, 0x00, 0x00, 0xf5, 0xf7, + 0xa2, 0xfd, 0x28, 0x78, 0x84, 0x42, 0x0d, 0xd0, + 0x00, 0x23, 0x6b, 0x61, 0x00, 0x28, 0x03, 0xd0, + 0x00, 0x20, 0x07, 0xf0, 0xa4, 0xfa, 0x05, 0xe0, + 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, 0x00, 0x92, + 0xf8, 0xf7, 0x23, 0xfc, 0x01, 0x20, 0x38, 0xbd, + 0x00, 0x00, 0x1c, 0x75, 0x01, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x01, 0x26, 0x08, 0xf0, 0xe1, 0xf9, + 0x05, 0x1c, 0x3c, 0x00, 0xec, 0xa9, 0x00, 0x00, + 0x00, 0x20, 0xfa, 0xf7, 0x8b, 0xfd, 0x44, 0x43, + 0x02, 0xf0, 0x40, 0xfc, 0x02, 0xf0, 0x3e, 0xfc, + 0x01, 0x1c, 0x23, 0x1c, 0x00, 0x22, 0x28, 0x1c, + 0x08, 0xf0, 0x7c, 0xfa, 0x00, 0x28, 0x13, 0xd1, + 0x0a, 0x48, 0x23, 0x1c, 0x00, 0x22, 0x81, 0x69, + 0x28, 0x1c, 0x08, 0xf0, 0x73, 0xfa, 0x00, 0x28, + 0x0a, 0xd1, 0xf8, 0xf7, 0x19, 0xfc, 0x01, 0x1c, + 0x23, 0x1c, 0x00, 0x22, 0x3c, 0x00, 0x28, 0xaa, + 0x00, 0x00, 0x28, 0x1c, 0x08, 0xf0, 0x69, 0xfa, + 0x00, 0x28, 0x00, 0xd1, 0x00, 0x26, 0x30, 0x1c, + 0x70, 0xbd, 0x1c, 0x75, 0x01, 0x00, 0x70, 0xb5, + 0x0d, 0x1c, 0x04, 0x1c, 0x16, 0x1c, 0x07, 0xf0, + 0x76, 0xf9, 0x00, 0x28, 0x0d, 0xd0, 0xfa, 0xf7, + 0x52, 0xfe, 0x00, 0x28, 0x09, 0xd0, 0xff, 0x30, + 0x01, 0x30, 0x43, 0x68, 0x00, 0x2b, 0x04, 0xd0, + 0x22, 0x1c, 0x29, 0x1c, 0x30, 0x1c, 0x3c, 0x00, + 0x64, 0xaa, 0x00, 0x00, 0xf5, 0xf7, 0xbb, 0xfc, + 0x70, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x1d, 0x20, 0x08, 0xf0, 0xdf, 0xfd, 0x07, 0x4a, + 0x07, 0x48, 0x11, 0x69, 0x01, 0x60, 0x51, 0x69, + 0x41, 0x60, 0x06, 0x49, 0x49, 0x68, 0x81, 0x60, + 0x00, 0x21, 0xc1, 0x60, 0x03, 0xf0, 0x74, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x28, 0x61, 0x01, 0x00, + 0x48, 0x75, 0x01, 0x00, 0x90, 0x5c, 0x01, 0x00, + 0x3c, 0x00, 0xa0, 0xaa, 0x00, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x40, 0x6b, 0x00, 0x28, 0x35, 0xd0, + 0x1d, 0x4d, 0x00, 0x26, 0x28, 0x78, 0x00, 0x28, + 0x24, 0xd0, 0x41, 0x20, 0x00, 0x5d, 0x00, 0x28, + 0x03, 0xd1, 0x08, 0xf0, 0x76, 0xf9, 0xa8, 0x61, + 0x1b, 0xe0, 0x69, 0x69, 0x01, 0x31, 0x69, 0x61, + 0xa8, 0x68, 0x00, 0x28, 0x08, 0xd0, 0x81, 0x42, + 0x06, 0xd1, 0x20, 0x69, 0x01, 0x1c, 0x10, 0x31, + 0x04, 0x30, 0x3c, 0x00, 0xdc, 0xaa, 0x00, 0x00, + 0x82, 0x22, 0xff, 0xf7, 0xad, 0xff, 0x68, 0x68, + 0x00, 0x28, 0x0a, 0xd0, 0x69, 0x69, 0x81, 0x42, + 0x07, 0xd1, 0x20, 0x69, 0x01, 0x1c, 0x10, 0x31, + 0x04, 0x30, 0x02, 0x22, 0xff, 0xf7, 0xa0, 0xff, + 0x6e, 0x61, 0x68, 0x78, 0x05, 0x21, 0x08, 0x40, + 0x08, 0xd0, 0x07, 0x48, 0x00, 0x78, 0x0e, 0x28, + 0x03, 0xd3, 0x60, 0x34, 0xe0, 0x79, 0xfb, 0xf7, + 0xcf, 0xff, 0x70, 0xbd, 0x3c, 0x00, 0x18, 0xab, + 0x00, 0x00, 0x03, 0x48, 0x06, 0x60, 0x70, 0xbd, + 0x00, 0x00, 0x1c, 0x75, 0x01, 0x00, 0x10, 0x67, + 0x01, 0x00, 0xd4, 0x7e, 0x01, 0x00, 0x80, 0x02, + 0x70, 0x47, 0x14, 0x23, 0x30, 0xb5, 0x09, 0x4d, + 0x4b, 0x43, 0x5b, 0x19, 0x5b, 0x68, 0x08, 0x24, + 0x00, 0x2b, 0x00, 0xd1, 0x02, 0x24, 0x38, 0x23, + 0x5a, 0x43, 0x05, 0x4b, 0x89, 0x00, 0xd2, 0x18, + 0x51, 0x5a, 0x02, 0x68, 0x09, 0x19, 0x3c, 0x00, + 0x54, 0xab, 0x00, 0x00, 0x51, 0x1a, 0x01, 0x60, + 0x30, 0xbd, 0x00, 0x00, 0x74, 0x40, 0x01, 0x00, + 0x8c, 0x41, 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x1c, + 0x2c, 0x48, 0x14, 0x1c, 0x2c, 0x4a, 0x48, 0x43, + 0x86, 0x46, 0x80, 0x18, 0x80, 0x0d, 0x84, 0x46, + 0x2b, 0x48, 0x2a, 0x4a, 0x06, 0x26, 0x1d, 0x1c, + 0x48, 0x43, 0x4a, 0x43, 0x0e, 0x2f, 0x40, 0xd2, + 0x01, 0xa3, 0xdb, 0x5d, 0x5b, 0x00, 0x9f, 0x44, + 0x3c, 0x00, 0x90, 0xab, 0x00, 0x00, 0x06, 0x08, + 0x0a, 0x0f, 0x14, 0x18, 0x1d, 0x20, 0x27, 0x24, + 0x27, 0x2b, 0x2f, 0x31, 0xc8, 0x00, 0x1f, 0xe0, + 0x88, 0x00, 0x1d, 0xe0, 0x21, 0x49, 0x70, 0x46, + 0x40, 0x18, 0x00, 0x0d, 0x18, 0xe0, 0x1f, 0x4a, + 0x80, 0x18, 0x80, 0x0d, 0x40, 0x18, 0x21, 0xe0, + 0x1e, 0x48, 0x10, 0x18, 0x00, 0x0d, 0x1d, 0xe0, + 0x1d, 0x49, 0x70, 0x46, 0x40, 0x18, 0x40, 0x0d, + 0x0a, 0xe0, 0x3c, 0x00, 0xcc, 0xab, 0x00, 0x00, + 0x1b, 0x49, 0x40, 0x18, 0x01, 0xe0, 0x1b, 0x48, + 0x10, 0x18, 0x40, 0x0d, 0x11, 0xe0, 0x1a, 0x49, + 0x40, 0x18, 0x05, 0xe0, 0x60, 0x46, 0x20, 0x80, + 0x00, 0x20, 0x16, 0xe0, 0x17, 0x48, 0x10, 0x18, + 0x80, 0x0d, 0x06, 0xe0, 0x16, 0x49, 0x02, 0xe0, + 0x16, 0x48, 0x48, 0x43, 0x16, 0x49, 0x40, 0x18, + 0xc0, 0x0d, 0x03, 0x30, 0x80, 0x08, 0x80, 0x00, + 0x20, 0x80, 0x2e, 0x80, 0x3c, 0x00, 0x08, 0xac, + 0x00, 0x00, 0xf8, 0xbd, 0xff, 0x21, 0xff, 0x20, + 0xf6, 0xf7, 0x49, 0xfb, 0x00, 0x20, 0x20, 0x80, + 0x28, 0x80, 0xf6, 0xe7, 0x00, 0x00, 0xd1, 0x45, + 0x17, 0x00, 0xff, 0xff, 0x3f, 0x00, 0xe3, 0x38, + 0x0e, 0x00, 0x55, 0x55, 0x15, 0x00, 0xff, 0xff, + 0x0f, 0x00, 0xa9, 0xaa, 0x2a, 0x01, 0x70, 0x1c, + 0x37, 0x00, 0xff, 0xff, 0x1f, 0x00, 0xcb, 0xcc, + 0x4c, 0x00, 0x70, 0x1c, 0x47, 0x00, 0x3c, 0x00, + 0x44, 0xac, 0x00, 0x00, 0xa9, 0xaa, 0x7a, 0x00, + 0x70, 0x1c, 0x67, 0x00, 0xa9, 0xaa, 0xba, 0x00, + 0x84, 0xf6, 0x12, 0x00, 0xec, 0x25, 0xb4, 0x00, + 0x04, 0x49, 0x00, 0x28, 0x01, 0xd0, 0x09, 0x22, + 0x00, 0xe0, 0x14, 0x22, 0x4a, 0x80, 0x48, 0x60, + 0x70, 0x47, 0x00, 0x00, 0xa4, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0x06, 0x22, 0xf5, 0xf7, 0x40, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0xbc, 0xb5, 0x15, 0x1c, + 0x3c, 0x00, 0x80, 0xac, 0x00, 0x00, 0x04, 0x1c, + 0x04, 0x31, 0x09, 0x04, 0x09, 0x0c, 0x01, 0xaa, + 0x6b, 0x46, 0xff, 0xf7, 0x6a, 0xff, 0x38, 0x20, + 0x06, 0x49, 0x68, 0x43, 0x40, 0x18, 0xa1, 0x00, + 0x40, 0x5a, 0x00, 0xab, 0x99, 0x88, 0x40, 0x18, + 0x19, 0x88, 0x40, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0xbc, 0xbd, 0x8c, 0x41, 0x01, 0x00, 0xbc, 0xb5, + 0x04, 0x1c, 0x15, 0x1c, 0x01, 0xaa, 0x6b, 0x46, + 0xff, 0xf7, 0x3c, 0x00, 0xbc, 0xac, 0x00, 0x00, + 0x53, 0xff, 0x38, 0x20, 0x05, 0x49, 0x68, 0x43, + 0x40, 0x18, 0xa1, 0x00, 0x40, 0x5a, 0x00, 0xab, + 0x99, 0x88, 0x40, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0xbc, 0xbd, 0x00, 0x00, 0x8c, 0x41, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x28, 0x0f, 0xd0, 0x00, 0x29, + 0x0d, 0xd0, 0x02, 0x78, 0x0b, 0x78, 0x9a, 0x42, + 0x09, 0xd1, 0xff, 0x2a, 0x05, 0xd0, 0x42, 0x78, + 0x02, 0x32, 0xf5, 0xf7, 0x3c, 0x00, 0xf8, 0xac, + 0x00, 0x00, 0x81, 0xfb, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x06, 0x22, 0x04, 0x49, + 0xf5, 0xf7, 0x75, 0xfb, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x5e, 0x40, 0x01, 0x00, 0x01, 0x1c, + 0x49, 0x78, 0x01, 0x20, 0x00, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xad, 0x00, 0x00, 0x80, 0xb5, 0x06, 0x22, + 0xf5, 0xf7, 0x60, 0xfb, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, + 0x80, 0xb5, 0xff, 0xf7, 0xc7, 0xff, 0x80, 0xbd, + 0x80, 0xb5, 0x06, 0x22, 0x04, 0x49, 0xf5, 0xf7, + 0x51, 0xfb, 0x00, 0x28, 0x01, 0xd1, 0x01, 0x20, + 0x80, 0xbd, 0x00, 0x20, 0x80, 0xbd, 0x00, 0x00, + 0x12, 0x61, 0x01, 0x00, 0x01, 0x1c, 0x80, 0x20, + 0x3c, 0x00, 0x70, 0xad, 0x00, 0x00, 0x81, 0x43, + 0x8a, 0x08, 0x0e, 0x20, 0x1c, 0x2a, 0x10, 0xb5, + 0x06, 0xd2, 0x03, 0x4c, 0x52, 0x00, 0xa3, 0x5c, + 0x8b, 0x42, 0x01, 0xd1, 0x10, 0x19, 0x40, 0x78, + 0x10, 0xbd, 0xfc, 0x41, 0x01, 0x00, 0x14, 0x23, + 0x02, 0x49, 0x58, 0x43, 0x40, 0x18, 0x40, 0x68, + 0x70, 0x47, 0x74, 0x40, 0x01, 0x00, 0x20, 0x22, + 0x01, 0x1c, 0x80, 0xb5, 0x02, 0x48, 0xf5, 0xf7, + 0x52, 0xfd, 0x3c, 0x00, 0xac, 0xad, 0x00, 0x00, + 0x80, 0xbd, 0x00, 0x00, 0x48, 0x61, 0x01, 0x00, + 0x08, 0x06, 0x00, 0x0e, 0x02, 0x28, 0x01, 0xd1, + 0x00, 0x20, 0x70, 0x47, 0x01, 0x20, 0x70, 0x47, + 0x00, 0x29, 0x0c, 0xd0, 0x07, 0x49, 0x09, 0x68, + 0x00, 0x29, 0x08, 0xd0, 0x14, 0x23, 0x06, 0x49, + 0x58, 0x43, 0x40, 0x18, 0xc0, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xad, + 0x00, 0x00, 0xac, 0x69, 0x01, 0x00, 0x74, 0x40, + 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x06, 0x22, + 0x01, 0x1c, 0x04, 0x48, 0xf5, 0xf7, 0x7d, 0xfb, + 0x06, 0x22, 0x21, 0x1c, 0x03, 0x48, 0xf5, 0xf7, + 0x78, 0xfb, 0x10, 0xbd, 0x00, 0x00, 0x12, 0x61, + 0x01, 0x00, 0x40, 0x80, 0x07, 0x00, 0x00, 0x29, + 0x01, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x38, 0x23, + 0x5a, 0x43, 0x07, 0x4b, 0xd2, 0x18, 0x3c, 0x00, + 0x24, 0xae, 0x00, 0x00, 0x83, 0x00, 0xd2, 0x5a, + 0x14, 0x23, 0x58, 0x43, 0x05, 0x4b, 0xc0, 0x18, + 0x40, 0x88, 0x10, 0x18, 0x08, 0x1a, 0x0a, 0x38, + 0x00, 0x04, 0x00, 0x0c, 0x70, 0x47, 0x00, 0x00, + 0x8c, 0x41, 0x01, 0x00, 0x74, 0x40, 0x01, 0x00, + 0xf8, 0xb5, 0x07, 0x1c, 0x08, 0x1c, 0x16, 0x1c, + 0x1c, 0x1c, 0x19, 0x1c, 0x00, 0xf0, 0x5a, 0xf8, + 0x05, 0x1c, 0x14, 0x35, 0x22, 0x1c, 0x31, 0x1c, + 0x3c, 0x00, 0x60, 0xae, 0x00, 0x00, 0x38, 0x1c, + 0xff, 0xf7, 0x0b, 0xff, 0x28, 0x18, 0x00, 0x04, + 0x00, 0x0c, 0xf8, 0xbd, 0x00, 0x00, 0x00, 0xb5, + 0x00, 0xf0, 0x4b, 0xf8, 0x0a, 0x30, 0x00, 0x04, + 0x00, 0x0c, 0x00, 0xbd, 0x00, 0x00, 0xf8, 0xb5, + 0x07, 0x1c, 0x08, 0x1c, 0x16, 0x1c, 0x1c, 0x1c, + 0x19, 0x1c, 0x00, 0xf0, 0x3e, 0xf8, 0x45, 0x00, + 0x1e, 0x35, 0x22, 0x1c, 0x31, 0x1c, 0x38, 0x1c, + 0xff, 0xf7, 0x3c, 0x00, 0x9c, 0xae, 0x00, 0x00, + 0xef, 0xfe, 0x28, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0xf8, 0xbd, 0x00, 0x00, 0xff, 0xb5, 0x0f, 0x1c, + 0x81, 0xb0, 0x0a, 0xa9, 0x14, 0x1c, 0x1e, 0x1c, + 0x03, 0xc9, 0x00, 0xf0, 0x29, 0xf8, 0x05, 0x1c, + 0x1e, 0x35, 0x21, 0x1c, 0x30, 0x1c, 0x00, 0xf0, + 0x23, 0xf8, 0x2d, 0x18, 0x22, 0x1c, 0x39, 0x1c, + 0x01, 0x98, 0xff, 0xf7, 0xd5, 0xfe, 0x28, 0x18, + 0x00, 0x04, 0x00, 0x0c, 0x3c, 0x00, 0xd8, 0xae, + 0x00, 0x00, 0x05, 0xb0, 0xf0, 0xbd, 0x0a, 0x49, + 0x80, 0xb5, 0x09, 0x88, 0x09, 0x29, 0x04, 0xd0, + 0x14, 0x29, 0x07, 0xd1, 0x01, 0x01, 0x80, 0x00, + 0x00, 0xe0, 0xc1, 0x00, 0x08, 0x18, 0x00, 0x04, + 0x00, 0x0c, 0x80, 0xbd, 0xff, 0x21, 0xff, 0x20, + 0xf6, 0xf7, 0xd1, 0xf9, 0x00, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0xa6, 0x69, 0x01, 0x00, 0x38, 0x23, + 0x59, 0x43, 0x06, 0x4a, 0x14, 0x23, 0x3c, 0x00, + 0x14, 0xaf, 0x00, 0x00, 0x89, 0x18, 0x82, 0x00, + 0x89, 0x5a, 0x05, 0x4a, 0x58, 0x43, 0x80, 0x18, + 0x40, 0x88, 0x08, 0x18, 0x00, 0x04, 0x00, 0x0c, + 0x70, 0x47, 0x00, 0x00, 0x8c, 0x41, 0x01, 0x00, + 0x74, 0x40, 0x01, 0x00, 0x02, 0x48, 0x03, 0x49, + 0x00, 0x68, 0x40, 0x00, 0x08, 0x5a, 0x70, 0x47, + 0xa8, 0x69, 0x01, 0x00, 0x54, 0x40, 0x01, 0x00, + 0x0a, 0x20, 0x70, 0x47, 0x10, 0xb5, 0x04, 0x1c, + 0x3c, 0x00, 0x50, 0xaf, 0x00, 0x00, 0xfd, 0xf7, + 0x62, 0xff, 0x20, 0x1c, 0x10, 0xbd, 0xb0, 0xb5, + 0x04, 0x1c, 0xc0, 0x68, 0x05, 0x68, 0xa0, 0x1d, + 0xff, 0xf7, 0xf5, 0xfe, 0x00, 0x28, 0x18, 0xd0, + 0x21, 0x1c, 0x14, 0x31, 0x20, 0x1c, 0x08, 0xf0, + 0xe2, 0xfd, 0x00, 0x28, 0x11, 0xd0, 0x29, 0x88, + 0x09, 0x48, 0x20, 0x22, 0x81, 0x82, 0x69, 0x88, + 0x01, 0x83, 0xa9, 0x88, 0x06, 0x35, 0x41, 0x83, + 0xc5, 0x61, 0x3c, 0x00, 0x8c, 0xaf, 0x00, 0x00, + 0x30, 0x21, 0x09, 0x5d, 0x11, 0x54, 0x61, 0x6b, + 0x41, 0x62, 0x01, 0x20, 0xf7, 0xf7, 0x28, 0xf8, + 0x20, 0x1c, 0xb0, 0xbd, 0x70, 0x7c, 0x01, 0x00, + 0x70, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0x21, 0x1c, + 0x14, 0x31, 0x05, 0x68, 0x20, 0x1c, 0x08, 0xf0, + 0xc1, 0xfd, 0x00, 0x28, 0x08, 0xd0, 0x05, 0x4e, + 0xf0, 0x68, 0x02, 0xf0, 0xcf, 0xfd, 0x28, 0x88, + 0xf0, 0x82, 0x03, 0x20, 0x3c, 0x00, 0xc8, 0xaf, + 0x00, 0x00, 0xf7, 0xf7, 0x10, 0xf8, 0x20, 0x1c, + 0x70, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x3e, 0xb5, + 0x04, 0x1c, 0xc0, 0x68, 0x05, 0x68, 0xa0, 0x1d, + 0xff, 0xf7, 0xb7, 0xfe, 0x00, 0x28, 0x21, 0xd0, + 0x21, 0x1c, 0x14, 0x31, 0x20, 0x1c, 0x02, 0xaa, + 0x08, 0xf0, 0x77, 0xfd, 0x00, 0x28, 0x19, 0xd0, + 0x02, 0x98, 0x4b, 0x21, 0x09, 0x5c, 0x00, 0x29, + 0x10, 0xd0, 0x01, 0x29, 0x14, 0xd0, 0x3c, 0x00, + 0x04, 0xb0, 0x00, 0x00, 0x02, 0x29, 0x0c, 0xd1, + 0x29, 0x88, 0x0d, 0x20, 0x00, 0xab, 0x18, 0x80, + 0x20, 0x1c, 0x03, 0xf0, 0x51, 0xf8, 0x01, 0x90, + 0x68, 0x46, 0x02, 0xf0, 0x5d, 0xfa, 0xf6, 0xf7, + 0xb5, 0xf8, 0x00, 0x21, 0x02, 0x98, 0x06, 0xf0, + 0x9f, 0xfe, 0x20, 0x1c, 0x3e, 0xbd, 0x07, 0xf0, + 0x29, 0xf8, 0x02, 0x98, 0x00, 0x21, 0x80, 0x69, + 0xc2, 0x07, 0xd2, 0x0f, 0x04, 0x20, 0xf6, 0xf7, + 0x3c, 0x00, 0x40, 0xb0, 0x00, 0x00, 0x7f, 0xff, + 0xee, 0xe7, 0x10, 0xb5, 0x04, 0x1c, 0xfd, 0xf7, + 0xe6, 0xfe, 0x20, 0x1c, 0x10, 0xbd, 0x3e, 0xb5, + 0x05, 0x1c, 0x00, 0xf0, 0x40, 0xfe, 0x00, 0x28, + 0x15, 0xd1, 0x28, 0x1c, 0x14, 0x30, 0xfa, 0xf7, + 0xce, 0xfb, 0x00, 0x28, 0x0f, 0xd0, 0x05, 0x21, + 0x28, 0x69, 0xff, 0xf7, 0x86, 0xfb, 0x04, 0x1c, + 0x09, 0xd0, 0x05, 0x22, 0x21, 0x1c, 0x68, 0x46, + 0xf5, 0xf7, 0x3c, 0x00, 0x7c, 0xb0, 0x00, 0x00, + 0x3d, 0xfa, 0x05, 0x34, 0x02, 0x94, 0x68, 0x46, + 0x03, 0xf0, 0x1a, 0xfb, 0x2a, 0x1c, 0x0d, 0x21, + 0x8f, 0x20, 0x08, 0xf0, 0x8f, 0xfb, 0x00, 0x20, + 0x3e, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0xfa, 0xf7, 0x98, 0xf8, 0x20, 0x1c, 0x05, 0xf0, + 0xe5, 0xf8, 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x00, 0x69, 0x00, 0x21, + 0x94, 0xb0, 0xff, 0xf7, 0x3c, 0x00, 0xb8, 0xb0, + 0x00, 0x00, 0x61, 0xfb, 0x69, 0x46, 0xfb, 0xf7, + 0x26, 0xf8, 0x00, 0x28, 0x1e, 0xd0, 0x00, 0x98, + 0xfa, 0xf7, 0x29, 0xfa, 0x01, 0x1c, 0x01, 0xa8, + 0x02, 0xf0, 0xd7, 0xf9, 0x00, 0x98, 0xfa, 0xf7, + 0xd2, 0xf9, 0x04, 0x90, 0x05, 0x20, 0x09, 0xad, + 0x68, 0x72, 0x02, 0xa8, 0x21, 0x1c, 0x06, 0x22, + 0x02, 0x30, 0xf5, 0xf7, 0x06, 0xfa, 0x01, 0x20, + 0x08, 0x90, 0x21, 0x6a, 0x0a, 0x90, 0x3c, 0x00, + 0xf4, 0xb0, 0x00, 0x00, 0x28, 0x20, 0x09, 0x91, + 0x00, 0x5d, 0x28, 0x72, 0x01, 0xa8, 0x00, 0xf0, + 0x69, 0xf8, 0x20, 0x1c, 0x14, 0xb0, 0xb0, 0xbd, + 0xff, 0xb5, 0x16, 0x1c, 0x1f, 0x1c, 0x81, 0xb0, + 0x0a, 0x9d, 0x4c, 0x20, 0xf6, 0xf7, 0x90, 0xfb, + 0x04, 0x1c, 0x14, 0x30, 0x06, 0x22, 0x02, 0x99, + 0xf5, 0xf7, 0xea, 0xf9, 0x20, 0x1c, 0x06, 0x22, + 0x01, 0x99, 0xf5, 0xf7, 0xe5, 0xf9, 0x28, 0x20, + 0x3c, 0x00, 0x30, 0xb1, 0x00, 0x00, 0x00, 0x21, + 0x06, 0x55, 0xe1, 0x60, 0x27, 0x62, 0x00, 0x2d, + 0x01, 0xd0, 0x8e, 0x20, 0x00, 0xe0, 0x8d, 0x20, + 0x22, 0x1c, 0x0d, 0x21, 0x08, 0xf0, 0x33, 0xfb, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x05, 0x1c, 0x4c, 0x20, 0xf6, 0xf7, 0x6f, 0xfb, + 0x04, 0x1c, 0x4c, 0x22, 0x29, 0x1c, 0xf5, 0xf7, + 0x26, 0xfa, 0x29, 0x20, 0x40, 0x5d, 0x0d, 0x28, + 0x2c, 0xd2, 0x3c, 0x00, 0x6c, 0xb1, 0x00, 0x00, + 0x01, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, + 0x28, 0x1a, 0x28, 0x1e, 0x06, 0x0a, 0x28, 0x28, + 0x0e, 0x28, 0x22, 0x12, 0x16, 0x00, 0x22, 0x1c, + 0x0d, 0x21, 0x8c, 0x20, 0x1a, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x83, 0x20, 0x16, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x84, 0x20, 0x12, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x85, 0x20, 0x0e, 0xe0, 0x22, 0x1c, + 0x0d, 0x21, 0x86, 0x20, 0x3c, 0x00, 0xa8, 0xb1, + 0x00, 0x00, 0x0a, 0xe0, 0x22, 0x1c, 0x0d, 0x21, + 0x87, 0x20, 0x06, 0xe0, 0x22, 0x1c, 0x0d, 0x21, + 0x89, 0x20, 0x02, 0xe0, 0x22, 0x1c, 0x0d, 0x21, + 0x8b, 0x20, 0x08, 0xf0, 0xf6, 0xfa, 0xb0, 0xbd, + 0xe8, 0x68, 0xf6, 0xf7, 0xe6, 0xf9, 0x20, 0x1c, + 0xf6, 0xf7, 0x11, 0xfb, 0xb0, 0xbd, 0xfe, 0xb5, + 0x05, 0x1c, 0x90, 0x20, 0xf6, 0xf7, 0x2d, 0xfb, + 0x04, 0x1c, 0x90, 0x21, 0xf5, 0xf7, 0x3c, 0x00, + 0xe4, 0xb1, 0x00, 0x00, 0x5b, 0xf9, 0x37, 0x4e, + 0x01, 0x27, 0xf0, 0x69, 0x04, 0x28, 0x03, 0xd9, + 0x70, 0x6b, 0x01, 0x30, 0x70, 0x63, 0x4d, 0xe0, + 0x33, 0x48, 0xb1, 0x6b, 0x04, 0xf0, 0xd0, 0xf8, + 0x01, 0x20, 0x20, 0x62, 0xa8, 0x7e, 0x21, 0x1c, + 0x80, 0x31, 0x02, 0x91, 0x08, 0x70, 0x22, 0x1c, + 0x60, 0x32, 0x01, 0x92, 0x00, 0x20, 0x2f, 0x1c, + 0x20, 0x37, 0x90, 0x72, 0x78, 0x7a, 0x2b, 0x1c, + 0x3c, 0x00, 0x20, 0xb2, 0x00, 0x00, 0x14, 0x33, + 0xd0, 0x72, 0xe8, 0x68, 0xaa, 0x1d, 0xa0, 0x60, + 0xe8, 0x6b, 0x48, 0x60, 0x44, 0x20, 0x40, 0x5d, + 0x08, 0x72, 0x29, 0x1c, 0x20, 0x1c, 0x05, 0xf0, + 0xaa, 0xfc, 0x68, 0x6a, 0x00, 0x28, 0x0a, 0xd1, + 0x01, 0x9a, 0x20, 0x1c, 0x93, 0x7a, 0x02, 0x99, + 0x22, 0x1c, 0x70, 0x32, 0x58, 0x30, 0x09, 0x78, + 0xfa, 0xf7, 0xdb, 0xf9, 0x06, 0xe0, 0x3a, 0x7a, + 0x23, 0x1c, 0x3c, 0x00, 0x5c, 0xb2, 0x00, 0x00, + 0xe8, 0x69, 0x29, 0x6a, 0x70, 0x33, 0xfd, 0xf7, + 0x8d, 0xf9, 0x30, 0x20, 0x40, 0x5d, 0x18, 0x49, + 0x07, 0x28, 0x0b, 0xd1, 0x58, 0x20, 0x00, 0x5d, + 0xc0, 0x07, 0xc0, 0x17, 0x01, 0x30, 0xe0, 0x61, + 0x00, 0x20, 0x20, 0x61, 0x20, 0x1c, 0xf7, 0xf7, + 0x3f, 0xff, 0x18, 0xe0, 0x01, 0x22, 0x20, 0x1c, + 0x05, 0xf0, 0xac, 0xff, 0x07, 0x1c, 0x12, 0xd0, + 0x03, 0xf0, 0x06, 0xff, 0x3c, 0x00, 0x98, 0xb2, + 0x00, 0x00, 0xf3, 0x6d, 0x00, 0x2b, 0x06, 0xd0, + 0x60, 0x68, 0x20, 0x30, 0x82, 0x7b, 0x61, 0x6b, + 0x38, 0x1c, 0xf5, 0xf7, 0x99, 0xf8, 0xe8, 0x68, + 0xf6, 0xf7, 0x73, 0xf9, 0x20, 0x1c, 0xf6, 0xf7, + 0x9e, 0xfa, 0xfe, 0xbd, 0xf0, 0x69, 0x01, 0x30, + 0xf0, 0x61, 0xfa, 0xe7, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0x05, 0x31, + 0x00, 0x00, 0x70, 0xb5, 0x06, 0x1c, 0x3c, 0x00, + 0xd4, 0xb2, 0x00, 0x00, 0x0d, 0x1c, 0x09, 0x04, + 0x09, 0x0c, 0x00, 0x20, 0xf6, 0xf7, 0x7c, 0xf9, + 0x04, 0x1c, 0x2a, 0x1c, 0x31, 0x1c, 0x00, 0x68, + 0xf5, 0xf7, 0x06, 0xf9, 0x20, 0x1c, 0x70, 0xbd, + 0x40, 0x88, 0x70, 0x47, 0x03, 0x78, 0x1b, 0x07, + 0x9b, 0x0f, 0x0b, 0x70, 0x00, 0x78, 0x00, 0x09, + 0x10, 0x70, 0x70, 0x47, 0x04, 0x30, 0x70, 0x47, + 0x04, 0x30, 0x70, 0x47, 0xd4, 0x21, 0x01, 0x70, + 0x3c, 0x00, 0x10, 0xb3, 0x00, 0x00, 0x00, 0x21, + 0x41, 0x70, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x21, + 0x01, 0x70, 0x00, 0x21, 0x41, 0x70, 0x70, 0x47, + 0x00, 0x00, 0xb4, 0x21, 0x01, 0x70, 0x00, 0x21, + 0x41, 0x70, 0x70, 0x47, 0x00, 0x00, 0x01, 0x49, + 0x48, 0x65, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x01, 0x49, 0x08, 0x65, 0x70, 0x47, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0x01, 0x49, + 0x88, 0x65, 0x3c, 0x00, 0x4c, 0xb3, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, + 0xf8, 0xb5, 0x5f, 0x4f, 0x05, 0x1c, 0xb8, 0x68, + 0x01, 0x30, 0xb8, 0x60, 0x07, 0xf0, 0x24, 0xfd, + 0x38, 0x61, 0x90, 0x20, 0xf6, 0xf7, 0x66, 0xfa, + 0x04, 0x1c, 0x90, 0x21, 0xf5, 0xf7, 0x94, 0xf8, + 0x28, 0x6b, 0x27, 0x1c, 0x60, 0x63, 0x68, 0x8b, + 0x80, 0x37, 0x26, 0x1c, 0xc0, 0x07, 0xc0, 0x0f, + 0x20, 0x62, 0x68, 0x8b, 0x3c, 0x00, 0x88, 0xb3, + 0x00, 0x00, 0x60, 0x36, 0x02, 0x21, 0x40, 0x07, + 0xc0, 0x0f, 0x20, 0x63, 0x68, 0x8b, 0x80, 0x07, + 0xc0, 0x0f, 0xf8, 0x60, 0x28, 0x7f, 0x38, 0x70, + 0xb1, 0x72, 0x00, 0x28, 0x08, 0xd1, 0xf9, 0xf7, + 0xc8, 0xff, 0x00, 0x28, 0x02, 0xd0, 0x01, 0x20, + 0x60, 0x62, 0x01, 0xe0, 0x01, 0x20, 0xa0, 0x62, + 0xf8, 0x68, 0x00, 0x28, 0x03, 0xd0, 0x00, 0x21, + 0x02, 0x20, 0x06, 0xf0, 0xcc, 0xff, 0x3c, 0x00, + 0xc4, 0xb3, 0x00, 0x00, 0x2b, 0x1c, 0x10, 0x33, + 0xaa, 0x1d, 0x29, 0x1c, 0x20, 0x1c, 0x05, 0xf0, + 0xdf, 0xfb, 0xa8, 0x6a, 0x00, 0x28, 0x0c, 0xd1, + 0x39, 0x78, 0x02, 0x29, 0x07, 0xd0, 0x22, 0x1c, + 0x70, 0x32, 0x20, 0x1c, 0x58, 0x30, 0xb3, 0x7a, + 0xfa, 0xf7, 0x10, 0xf9, 0x08, 0xe0, 0x01, 0x26, + 0x5e, 0xe0, 0xaa, 0x7d, 0x23, 0x1c, 0x28, 0x6a, + 0x69, 0x6a, 0x70, 0x33, 0xfd, 0xf7, 0xc0, 0xf8, + 0x3c, 0x00, 0x00, 0xb4, 0x00, 0x00, 0xe9, 0x68, + 0x00, 0x20, 0x09, 0x89, 0x00, 0x29, 0x00, 0xd1, + 0x04, 0x20, 0xf0, 0x72, 0x38, 0x78, 0x01, 0x28, + 0x14, 0xd1, 0x00, 0x27, 0x00, 0x90, 0x00, 0x20, + 0x06, 0xe0, 0x29, 0x69, 0x01, 0x29, 0x03, 0xd1, + 0xa9, 0x69, 0x01, 0x27, 0x89, 0x07, 0x1a, 0xd5, + 0x06, 0xf0, 0x79, 0xfc, 0x00, 0x28, 0xf4, 0xd1, + 0x01, 0x2f, 0x14, 0xd1, 0x00, 0x98, 0x01, 0x28, + 0x11, 0xd1, 0x3c, 0x00, 0x3c, 0xb4, 0x00, 0x00, + 0x08, 0xe0, 0x20, 0x1c, 0x58, 0x30, 0x06, 0xf0, + 0xe1, 0xfc, 0x00, 0x28, 0x0a, 0xd0, 0x80, 0x69, + 0x80, 0x07, 0x07, 0xd5, 0xf0, 0x7a, 0x08, 0x21, + 0x08, 0x43, 0xf0, 0x72, 0x01, 0x20, 0xe0, 0x62, + 0xe8, 0x7d, 0x30, 0x73, 0xe8, 0x68, 0xa0, 0x60, + 0xe0, 0x6a, 0x00, 0x28, 0x12, 0xd0, 0x1a, 0x4f, + 0xf8, 0x6b, 0x00, 0x28, 0x0e, 0xd0, 0x30, 0x7b, + 0xf5, 0xf7, 0xde, 0xfe, 0x3c, 0x00, 0x78, 0xb4, + 0x00, 0x00, 0x00, 0x28, 0x09, 0xd0, 0x21, 0x1c, + 0x38, 0x1c, 0x40, 0x30, 0xfc, 0xf7, 0x55, 0xfc, + 0x14, 0x48, 0xb9, 0x6b, 0x03, 0xf0, 0x89, 0xff, + 0xf8, 0xbd, 0x10, 0x4f, 0x12, 0x48, 0xb9, 0x6b, + 0x03, 0xf0, 0x83, 0xff, 0x00, 0x22, 0x20, 0x1c, + 0x10, 0x49, 0x05, 0xf0, 0xa2, 0xfe, 0x06, 0x1c, + 0x03, 0xd1, 0x38, 0x6a, 0x01, 0x30, 0x38, 0x62, + 0xee, 0xe7, 0x20, 0x1c, 0xf6, 0xf7, 0x3c, 0x00, + 0xb4, 0xb4, 0x00, 0x00, 0x9f, 0xf9, 0xe8, 0x68, + 0xf6, 0xf7, 0x6e, 0xf8, 0x03, 0xf0, 0xf2, 0xfd, + 0x04, 0x48, 0x83, 0x6d, 0x00, 0x2b, 0xe2, 0xd0, + 0x00, 0x22, 0x30, 0x1c, 0x29, 0x6b, 0xf4, 0xf7, + 0x86, 0xff, 0xdc, 0xe7, 0xc4, 0x69, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x11, 0x30, 0x00, 0x00, 0x10, 0xb5, 0x0a, 0x20, + 0x07, 0xf0, 0xfe, 0xfc, 0x07, 0xf0, 0x5e, 0xfc, + 0x3c, 0x00, 0xf0, 0xb4, 0x00, 0x00, 0x0b, 0x49, + 0x44, 0x18, 0x0c, 0xe0, 0x20, 0x1c, 0x07, 0xf0, + 0x90, 0xfb, 0x00, 0x28, 0x07, 0xd0, 0xf7, 0xf7, + 0x34, 0xf9, 0x00, 0x28, 0x03, 0xd0, 0x12, 0x21, + 0x86, 0x20, 0xf5, 0xf7, 0xca, 0xfe, 0xf7, 0xf7, + 0x2c, 0xf9, 0x00, 0x28, 0xee, 0xd1, 0x01, 0xf0, + 0x80, 0xfd, 0x10, 0xbd, 0x00, 0x00, 0x40, 0x9c, + 0x00, 0x00, 0x10, 0xb5, 0x0c, 0x1c, 0x01, 0x1c, + 0x17, 0x4a, 0x3c, 0x00, 0x2c, 0xb5, 0x00, 0x00, + 0x01, 0x29, 0x50, 0x69, 0x04, 0xd0, 0x80, 0x29, + 0x1d, 0xd0, 0x81, 0x29, 0x21, 0xd1, 0x1c, 0xe0, + 0x91, 0x78, 0x01, 0x29, 0x15, 0xd1, 0x02, 0x21, + 0x91, 0x70, 0x14, 0x1c, 0x01, 0x1c, 0x10, 0x48, + 0x03, 0xf0, 0x28, 0xff, 0x01, 0x21, 0x60, 0x69, + 0x00, 0xf0, 0x2e, 0xf9, 0x60, 0x69, 0x01, 0xf0, + 0x5f, 0xfc, 0x20, 0x70, 0xa0, 0x88, 0xa1, 0x69, + 0x00, 0x23, 0x0a, 0x4a, 0x3c, 0x00, 0x68, 0xb5, + 0x00, 0x00, 0x07, 0xf0, 0x7e, 0xfc, 0x10, 0xbd, + 0x22, 0x21, 0x06, 0xe0, 0x01, 0xf0, 0x1d, 0xfc, + 0x20, 0x1c, 0x00, 0xf0, 0x4a, 0xf8, 0x10, 0xbd, + 0x1c, 0x21, 0x20, 0x20, 0xf5, 0xf7, 0x8f, 0xfe, + 0x10, 0xbd, 0xb4, 0x79, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0x3d, 0x2e, 0x00, 0x00, 0x70, 0xb5, + 0x1c, 0x4c, 0xa0, 0x78, 0x00, 0x28, 0x32, 0xd0, + 0x05, 0x28, 0x30, 0xd0, 0x60, 0x69, 0x3c, 0x00, + 0xa4, 0xb5, 0x00, 0x00, 0x00, 0xf0, 0xea, 0xf8, + 0x18, 0x4e, 0xb5, 0x79, 0xa0, 0x78, 0x01, 0x28, + 0x0b, 0xd0, 0x02, 0x28, 0x0e, 0xd0, 0x03, 0x28, + 0x10, 0xd0, 0x04, 0x28, 0x17, 0xd1, 0x42, 0x1f, + 0x80, 0x21, 0x20, 0x20, 0x08, 0xf0, 0x08, 0xf8, + 0x0e, 0xe0, 0x00, 0x21, 0x20, 0x20, 0x08, 0xf0, + 0x31, 0xf8, 0x0c, 0xe0, 0xa0, 0x88, 0x07, 0xf0, + 0x1d, 0xfc, 0x05, 0xe0, 0x20, 0x78, 0x00, 0xf0, + 0x3c, 0x00, 0xe0, 0xb5, 0x00, 0x00, 0x39, 0xfa, + 0x00, 0x20, 0x00, 0xf0, 0xc4, 0xfd, 0x60, 0x69, + 0x01, 0xf0, 0xe1, 0xfb, 0x05, 0x20, 0xa0, 0x70, + 0xb5, 0x71, 0x60, 0x69, 0x00, 0xf0, 0x61, 0xf9, + 0x00, 0x22, 0x20, 0x21, 0x81, 0x20, 0x08, 0xf0, + 0xd6, 0xf8, 0x70, 0xbd, 0x00, 0x00, 0xb4, 0x79, + 0x01, 0x00, 0x20, 0x10, 0x07, 0x00, 0xb0, 0xb5, + 0x0d, 0x4d, 0x04, 0x1c, 0xa8, 0x78, 0x00, 0x28, + 0x14, 0xd0, 0x3c, 0x00, 0x1c, 0xb6, 0x00, 0x00, + 0x68, 0x69, 0x00, 0xf0, 0x0b, 0xf9, 0x0a, 0x48, + 0x69, 0x69, 0x03, 0xf0, 0xa7, 0xfe, 0xa8, 0x88, + 0x07, 0xf0, 0x9e, 0xfb, 0x00, 0x2c, 0x02, 0xd0, + 0x68, 0x78, 0x00, 0xf0, 0x79, 0xff, 0x00, 0x20, + 0xa8, 0x70, 0xa9, 0x68, 0x20, 0x1c, 0xf4, 0xf7, + 0xca, 0xfe, 0xb0, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x06, 0x4b, 0x80, 0xb5, + 0x99, 0x78, 0x03, 0x29, 0x3c, 0x00, 0x58, 0xb6, + 0x00, 0x00, 0x06, 0xd1, 0x04, 0x21, 0x99, 0x70, + 0x20, 0x21, 0x02, 0x1c, 0x80, 0x20, 0x08, 0xf0, + 0xa4, 0xf8, 0x80, 0xbd, 0x00, 0x00, 0xb4, 0x79, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x4c, 0xa1, 0x78, + 0x03, 0x29, 0x0f, 0xd1, 0x10, 0x30, 0xfa, 0xf7, + 0xde, 0xf8, 0x00, 0x28, 0x09, 0xd0, 0x20, 0x78, + 0x00, 0xf0, 0xe5, 0xf9, 0x00, 0x20, 0x00, 0xf0, + 0x70, 0xfd, 0x00, 0x21, 0x05, 0x48, 0x3c, 0x00, + 0x94, 0xb6, 0x00, 0x00, 0xfc, 0xf7, 0x9c, 0xfa, + 0x10, 0xbd, 0x1b, 0x21, 0x20, 0x20, 0xf5, 0xf7, + 0x01, 0xfe, 0x10, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0x51, 0xb6, 0x00, 0x00, 0x09, 0x49, 0x80, 0xb5, + 0x89, 0x78, 0x03, 0x29, 0x09, 0xd1, 0x00, 0xf0, + 0xcd, 0xf9, 0x00, 0x20, 0x00, 0xf0, 0x58, 0xfd, + 0x01, 0x21, 0x05, 0x48, 0xfc, 0xf7, 0x84, 0xfa, + 0x80, 0xbd, 0x17, 0x21, 0x20, 0x20, 0xf5, 0xf7, + 0x3c, 0x00, 0xd0, 0xb6, 0x00, 0x00, 0xe9, 0xfd, + 0x80, 0xbd, 0xb4, 0x79, 0x01, 0x00, 0x51, 0xb6, + 0x00, 0x00, 0x70, 0xb5, 0x10, 0x4c, 0x1d, 0x1c, + 0xa3, 0x78, 0x06, 0x1c, 0x04, 0x98, 0x00, 0x2b, + 0x18, 0xd1, 0x01, 0x23, 0xa3, 0x70, 0x22, 0x61, + 0xe6, 0x60, 0x61, 0x70, 0xa0, 0x60, 0xa5, 0x61, + 0x00, 0x20, 0x07, 0xf0, 0xac, 0xfa, 0xa0, 0x80, + 0x30, 0x1c, 0xf7, 0xf7, 0x3c, 0xfb, 0xe0, 0x80, + 0x07, 0xf0, 0x3c, 0x00, 0x0c, 0xb7, 0x00, 0x00, + 0x4f, 0xfb, 0xc7, 0x21, 0xc9, 0x00, 0x28, 0x1a, + 0x41, 0x1a, 0x00, 0x22, 0x20, 0x20, 0x07, 0xf0, + 0x57, 0xff, 0x70, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0xb0, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, 0x00, 0xf0, + 0x09, 0xf8, 0x20, 0x1c, 0x00, 0xf0, 0x24, 0xf8, + 0x00, 0x2d, 0x01, 0xd0, 0xff, 0xf7, 0xd4, 0xfe, + 0xb0, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x0c, 0x4c, + 0x05, 0x1c, 0xa0, 0x68, 0x3c, 0x00, 0x48, 0xb7, + 0x00, 0x00, 0x00, 0x28, 0x0f, 0xd1, 0x0a, 0x48, + 0x01, 0x7e, 0x02, 0x22, 0x11, 0x40, 0x61, 0x60, + 0x01, 0x7e, 0x11, 0x43, 0x01, 0x76, 0x07, 0x20, + 0x03, 0xf0, 0x49, 0xfc, 0x20, 0x60, 0x03, 0xf0, + 0x98, 0xff, 0x03, 0xf0, 0xee, 0xff, 0xa0, 0x68, + 0x28, 0x43, 0xa0, 0x60, 0xb0, 0xbd, 0x40, 0x7c, + 0x01, 0x00, 0x0c, 0x80, 0x07, 0x00, 0x0a, 0x49, + 0x38, 0xb5, 0x0a, 0x1c, 0x20, 0x32, 0x3c, 0x00, + 0x84, 0xb7, 0x00, 0x00, 0x94, 0x79, 0x00, 0xab, + 0x1c, 0x70, 0xd2, 0x79, 0x07, 0x4c, 0x5a, 0x70, + 0xe2, 0x68, 0x00, 0x2a, 0x02, 0xd1, 0x06, 0x4d, + 0x01, 0x23, 0x6b, 0x70, 0x10, 0x43, 0xe0, 0x60, + 0x00, 0xab, 0x18, 0x88, 0xc8, 0x84, 0x38, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0x40, 0x7c, 0x01, 0x00, + 0x00, 0x50, 0x07, 0x00, 0xb0, 0xb5, 0x05, 0x1c, + 0x00, 0x29, 0x01, 0xd0, 0x00, 0xf0, 0x28, 0xf8, + 0x3c, 0x00, 0xc0, 0xb7, 0x00, 0x00, 0x06, 0x4c, + 0x60, 0x78, 0x21, 0x69, 0x08, 0x43, 0x03, 0xd1, + 0x01, 0x21, 0x0e, 0x20, 0x06, 0xf0, 0xc5, 0xfd, + 0x20, 0x69, 0x28, 0x43, 0x20, 0x61, 0xb0, 0xbd, + 0x00, 0x00, 0x18, 0x63, 0x01, 0x00, 0xb0, 0xb5, + 0x0a, 0x4c, 0x05, 0x1c, 0x22, 0x69, 0x00, 0x20, + 0x00, 0x2a, 0x0c, 0xd1, 0x00, 0x29, 0x00, 0xd0, + 0x04, 0xe0, 0x60, 0x78, 0x00, 0x28, 0x02, 0xd1, + 0x04, 0xf0, 0x3c, 0x00, 0xfc, 0xb7, 0x00, 0x00, + 0x69, 0xfb, 0x60, 0x70, 0x28, 0x1c, 0x06, 0xf0, + 0xef, 0xfc, 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x00, + 0x18, 0x63, 0x01, 0x00, 0x10, 0xb5, 0x08, 0x4c, + 0x60, 0x78, 0x00, 0x28, 0x0a, 0xd0, 0x06, 0xf0, + 0xe3, 0xfc, 0x00, 0x20, 0x60, 0x70, 0x20, 0x69, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x21, 0x0e, 0x20, + 0x06, 0xf0, 0x96, 0xfd, 0x10, 0xbd, 0x00, 0x00, + 0x18, 0x63, 0x01, 0x00, 0x3c, 0x00, 0x38, 0xb8, + 0x00, 0x00, 0x09, 0x49, 0x80, 0xb5, 0x0b, 0x69, + 0x83, 0x42, 0x04, 0xd1, 0x4a, 0x78, 0x00, 0x2a, + 0x01, 0xd1, 0x01, 0x22, 0x00, 0xe0, 0x00, 0x22, + 0x83, 0x43, 0x0b, 0x61, 0x00, 0x2a, 0x03, 0xd0, + 0x00, 0x21, 0x0e, 0x20, 0x06, 0xf0, 0x7f, 0xfd, + 0x80, 0xbd, 0x18, 0x63, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x20, 0xf6, 0xf7, 0x56, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x10, 0xb5, 0x04, 0x1c, 0x3c, 0x00, + 0x74, 0xb8, 0x00, 0x00, 0x00, 0xf0, 0x04, 0xf8, + 0x20, 0x1c, 0x00, 0xf0, 0x1f, 0xf8, 0x10, 0xbd, + 0xb0, 0xb5, 0x0c, 0x4d, 0x04, 0x1c, 0xa8, 0x68, + 0xa0, 0x42, 0x0f, 0xd1, 0x07, 0x20, 0x29, 0x68, + 0x08, 0xf0, 0x8c, 0xfb, 0x68, 0x68, 0x02, 0x22, + 0x07, 0x49, 0x00, 0x28, 0x08, 0x7e, 0x01, 0xd0, + 0x10, 0x43, 0x00, 0xe0, 0x90, 0x43, 0x08, 0x76, + 0x04, 0xf0, 0xc4, 0xf8, 0xa8, 0x68, 0xa0, 0x43, + 0x3c, 0x00, 0xb0, 0xb8, 0x00, 0x00, 0xa8, 0x60, + 0xb0, 0xbd, 0x40, 0x7c, 0x01, 0x00, 0x0c, 0x80, + 0x07, 0x00, 0x0a, 0x49, 0x38, 0xb5, 0x0a, 0x1c, + 0x20, 0x32, 0x94, 0x79, 0x00, 0xab, 0x1c, 0x70, + 0xd2, 0x79, 0x07, 0x4c, 0x5a, 0x70, 0xe2, 0x68, + 0x82, 0x42, 0x02, 0xd1, 0x06, 0x4d, 0x00, 0x23, + 0x6b, 0x70, 0x82, 0x43, 0xe2, 0x60, 0x00, 0xab, + 0x18, 0x88, 0xc8, 0x84, 0x38, 0xbd, 0x00, 0x10, + 0x07, 0x00, 0x3c, 0x00, 0xec, 0xb8, 0x00, 0x00, + 0x40, 0x7c, 0x01, 0x00, 0x00, 0x50, 0x07, 0x00, + 0xb0, 0xb5, 0x05, 0x1c, 0x0a, 0x4c, 0x00, 0x21, + 0x60, 0x69, 0xff, 0xf7, 0x11, 0xff, 0x04, 0x20, + 0x01, 0xf0, 0x46, 0xf9, 0x01, 0xf0, 0x88, 0xfb, + 0x00, 0x22, 0x04, 0x21, 0x04, 0x20, 0x01, 0xf0, + 0x8b, 0xf8, 0x28, 0x1c, 0x01, 0xf0, 0x4a, 0xfa, + 0x60, 0x69, 0xff, 0xf7, 0xa7, 0xff, 0xb0, 0xbd, + 0x40, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0x28, 0xb9, + 0x00, 0x00, 0x80, 0xb5, 0x01, 0xf0, 0x77, 0xfa, + 0x80, 0xbd, 0xb0, 0xb5, 0x0d, 0x4d, 0x01, 0x21, + 0x28, 0x69, 0xff, 0xf7, 0xf4, 0xfe, 0xff, 0xf7, + 0x2a, 0xfe, 0x00, 0xf0, 0x2c, 0xfb, 0x00, 0xf0, + 0x84, 0xfa, 0x00, 0x24, 0x00, 0x22, 0x04, 0x21, + 0x20, 0x1c, 0x01, 0xf0, 0x6c, 0xf8, 0x01, 0x34, + 0x24, 0x06, 0x24, 0x0e, 0x04, 0x2c, 0xf5, 0xd3, + 0x28, 0x69, 0xff, 0xf7, 0x86, 0xff, 0x3c, 0x00, + 0x64, 0xb9, 0x00, 0x00, 0xb0, 0xbd, 0x00, 0x00, + 0x40, 0x7c, 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x1c, + 0x0e, 0x1c, 0x07, 0x4c, 0x17, 0x1c, 0x01, 0x21, + 0x20, 0x69, 0xff, 0xf7, 0xd3, 0xfe, 0x3a, 0x1c, + 0x31, 0x1c, 0x28, 0x1c, 0x01, 0xf0, 0x52, 0xf8, + 0x20, 0x69, 0xff, 0xf7, 0x71, 0xff, 0xf8, 0xbd, + 0x40, 0x7c, 0x01, 0x00, 0xff, 0xb5, 0x89, 0xb0, + 0x06, 0x1c, 0x16, 0x98, 0x1d, 0x1c, 0x00, 0x28, + 0x3c, 0x00, 0xa0, 0xb9, 0x00, 0x00, 0x01, 0xd0, + 0x29, 0x48, 0x14, 0x90, 0x28, 0x68, 0x00, 0x88, + 0x00, 0x06, 0x80, 0x0e, 0x20, 0x28, 0x01, 0xd0, + 0x14, 0x28, 0x17, 0xd1, 0x0a, 0xaa, 0x18, 0x24, + 0x18, 0x21, 0x05, 0xca, 0xff, 0xf7, 0x77, 0xf9, + 0x07, 0x1c, 0x28, 0x1c, 0x01, 0x89, 0xa1, 0x42, + 0x02, 0xdd, 0x00, 0x68, 0x01, 0x19, 0x0b, 0xe0, + 0xc0, 0x68, 0x64, 0x1a, 0x00, 0x28, 0xf5, 0xd1, + 0x0f, 0x21, 0x3c, 0x00, 0xdc, 0xb9, 0x00, 0x00, + 0x86, 0x20, 0xf5, 0xf7, 0x61, 0xfc, 0x00, 0x21, + 0x01, 0xe0, 0x00, 0x21, 0x00, 0x27, 0x18, 0x48, + 0x08, 0x90, 0x80, 0x79, 0x07, 0x90, 0x0c, 0x20, + 0x16, 0x4a, 0x70, 0x43, 0x80, 0x18, 0x04, 0x79, + 0x04, 0x91, 0x12, 0x99, 0x15, 0x98, 0x14, 0x9a, + 0x01, 0x91, 0x03, 0x90, 0x05, 0x97, 0x00, 0x95, + 0x0a, 0xab, 0x02, 0x92, 0x21, 0x1c, 0x30, 0x1c, + 0x0c, 0xcb, 0xf7, 0xf7, 0x3c, 0x00, 0x18, 0xba, + 0x00, 0x00, 0x03, 0xf9, 0x01, 0x25, 0xb5, 0x40, + 0x0c, 0x4e, 0x08, 0x3e, 0x30, 0x78, 0x28, 0x40, + 0x06, 0xd0, 0x20, 0x1c, 0x00, 0xf0, 0xc9, 0xfd, + 0x30, 0x78, 0xa8, 0x43, 0x30, 0x70, 0x03, 0xe0, + 0x20, 0x1c, 0x13, 0x99, 0x00, 0xf0, 0x43, 0xff, + 0x07, 0xa9, 0x03, 0xc9, 0x88, 0x71, 0x0d, 0xb0, + 0xf0, 0xbd, 0x95, 0x24, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0x74, 0x7a, 0x01, 0x00, 0x3c, 0x00, + 0x54, 0xba, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0c, 0x23, 0x09, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x00, 0x79, 0x05, 0x1c, 0x00, 0xf0, 0x92, 0xfe, + 0x28, 0x1c, 0xf7, 0xf7, 0xc7, 0xf8, 0x01, 0x20, + 0x03, 0x4a, 0xa0, 0x40, 0x08, 0x3a, 0x11, 0x78, + 0x81, 0x43, 0x11, 0x70, 0xb0, 0xbd, 0x00, 0x00, + 0x74, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, + 0x20, 0x78, 0x00, 0x28, 0x03, 0xd1, 0x1a, 0x21, + 0x3c, 0x00, 0x90, 0xba, 0x00, 0x00, 0x86, 0x20, + 0xf5, 0xf7, 0x07, 0xfc, 0x20, 0x78, 0x10, 0xbd, + 0x00, 0x00, 0x18, 0x63, 0x01, 0x00, 0x01, 0x48, + 0x40, 0x78, 0x70, 0x47, 0x00, 0x00, 0x2c, 0x63, + 0x01, 0x00, 0x80, 0xb5, 0xf6, 0xf7, 0xd1, 0xfe, + 0x00, 0xf0, 0x1b, 0xf9, 0x80, 0xbd, 0xfe, 0xb5, + 0x01, 0x68, 0x05, 0x1c, 0x0c, 0x68, 0x0e, 0x1c, + 0x21, 0x78, 0x88, 0x07, 0x71, 0xd1, 0x68, 0x69, + 0xc2, 0x07, 0x3c, 0x00, 0xcc, 0xba, 0x00, 0x00, + 0x6e, 0xd5, 0x80, 0x07, 0x6d, 0xd5, 0xe8, 0x7a, + 0xc2, 0x07, 0x08, 0x07, 0x09, 0x09, 0x02, 0x91, + 0x45, 0x49, 0x80, 0x0f, 0xd2, 0x0f, 0x00, 0x28, + 0x4f, 0x68, 0x05, 0xd0, 0x01, 0x28, 0x09, 0xd0, + 0x02, 0x28, 0x21, 0xd0, 0x03, 0x28, 0x5b, 0xd1, + 0xff, 0x23, 0x20, 0x1c, 0xa9, 0x7a, 0xf4, 0xf7, + 0x74, 0xfc, 0x55, 0xe0, 0x02, 0x98, 0x0b, 0x28, + 0x0a, 0xd0, 0x0c, 0x28, 0x3c, 0x00, 0x08, 0xbb, + 0x00, 0x00, 0x0f, 0xd0, 0x0d, 0x28, 0x4e, 0xd1, + 0x39, 0x4f, 0xf8, 0x68, 0xf4, 0xf7, 0x61, 0xfc, + 0x00, 0x20, 0xc0, 0x43, 0x5a, 0xe0, 0x35, 0x4f, + 0xa9, 0x7a, 0xbb, 0x68, 0x20, 0x1c, 0xf4, 0xf7, + 0x5b, 0xfc, 0x40, 0xe0, 0x32, 0x4f, 0x38, 0x69, + 0xf4, 0xf7, 0x53, 0xfc, 0x3b, 0xe0, 0x00, 0x21, + 0x01, 0x91, 0x02, 0x99, 0x00, 0x20, 0xff, 0x23, + 0x09, 0x07, 0x01, 0xd4, 0x01, 0x20, 0x3c, 0x00, + 0x44, 0xbb, 0x00, 0x00, 0x13, 0xe0, 0x31, 0x89, + 0x19, 0x29, 0x01, 0xd3, 0x26, 0x7e, 0x07, 0xe0, + 0x15, 0x29, 0x04, 0xd3, 0x18, 0x26, 0x71, 0x1a, + 0x49, 0x19, 0x0e, 0x7b, 0x00, 0xe0, 0x00, 0x26, + 0xb1, 0x06, 0x02, 0xd4, 0x01, 0x20, 0x73, 0x07, + 0x5b, 0x0f, 0x01, 0x21, 0x01, 0x91, 0x00, 0x28, + 0x03, 0xd0, 0xa9, 0x7a, 0x20, 0x1c, 0xf4, 0xf7, + 0x36, 0xfc, 0x01, 0x99, 0x01, 0x29, 0x15, 0xd1, + 0x3c, 0x00, 0x80, 0xbb, 0x00, 0x00, 0xf0, 0x06, + 0xc6, 0x0f, 0x20, 0x88, 0x1b, 0x4f, 0xe4, 0x8a, + 0xf9, 0x6b, 0x00, 0x05, 0xc0, 0x0f, 0x00, 0x29, + 0x1a, 0xd0, 0x4b, 0x1c, 0x18, 0xd0, 0x00, 0x2e, + 0x0a, 0xd0, 0x00, 0x28, 0x08, 0xd0, 0x38, 0x88, + 0x84, 0x42, 0x13, 0xd0, 0x02, 0x98, 0x0c, 0x28, + 0x01, 0xe0, 0x1d, 0xe0, 0x12, 0xe0, 0x0d, 0xd0, + 0x08, 0x1c, 0x01, 0xf0, 0x76, 0xf9, 0x00, 0x28, + 0x03, 0xd1, 0x3c, 0x00, 0xbc, 0xbb, 0x00, 0x00, + 0x00, 0xf0, 0xa6, 0xfa, 0xf4, 0xf7, 0x0a, 0xfc, + 0x00, 0x20, 0xc0, 0x43, 0xf8, 0x63, 0x00, 0x2e, + 0x0d, 0xd0, 0x3c, 0x80, 0x00, 0x20, 0xf8, 0x63, + 0x09, 0xe0, 0x20, 0x88, 0x00, 0x06, 0x80, 0x0e, + 0x20, 0x28, 0x04, 0xd1, 0x04, 0x4f, 0x20, 0x1c, + 0xb9, 0x6a, 0xf4, 0xf7, 0xf8, 0xfb, 0x29, 0x1c, + 0x02, 0x48, 0xfb, 0xf7, 0xef, 0xff, 0xfe, 0xbd, + 0x28, 0x7a, 0x01, 0x00, 0x3c, 0x00, 0xf8, 0xbb, + 0x00, 0x00, 0xa5, 0x9a, 0x00, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x00, 0x78, 0x00, 0x21, 0x00, 0xf0, + 0xfc, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0x18, 0x63, + 0x01, 0x00, 0x04, 0x4b, 0x05, 0x49, 0x00, 0x28, + 0x1a, 0x68, 0x00, 0xd0, 0x01, 0x1c, 0x10, 0x1c, + 0x19, 0x60, 0x70, 0x47, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x95, 0x75, 0x00, 0x00, 0x05, 0x48, + 0x80, 0xb5, 0x00, 0x7f, 0x24, 0x23, 0x3c, 0x00, + 0x34, 0xbc, 0x00, 0x00, 0x04, 0x49, 0x58, 0x43, + 0x40, 0x18, 0xc0, 0x69, 0xf4, 0xf7, 0xcc, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x79, 0x01, 0x00, + 0x94, 0x46, 0x01, 0x00, 0x02, 0x1c, 0x06, 0x48, + 0x80, 0xb5, 0x81, 0x62, 0x82, 0x60, 0x00, 0x7f, + 0x24, 0x23, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x80, 0x69, 0xf4, 0xf7, 0xb9, 0xfb, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x94, 0x46, 0x01, 0x00, + 0x3c, 0x00, 0x70, 0xbc, 0x00, 0x00, 0x80, 0xb5, + 0x00, 0x20, 0x00, 0xf0, 0x3c, 0xfb, 0x00, 0x20, + 0x00, 0xf0, 0x6d, 0xfa, 0x00, 0xf0, 0x65, 0xfa, + 0x04, 0x49, 0xc8, 0x6a, 0x01, 0x30, 0xc8, 0x62, + 0x08, 0x1f, 0x00, 0x88, 0x07, 0xf0, 0xc1, 0xf8, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x06, 0x48, + 0x80, 0xb5, 0x00, 0x21, 0x01, 0x77, 0xc1, 0x6a, + 0x01, 0x31, 0xc1, 0x62, 0x04, 0x38, 0x00, 0x88, + 0x07, 0xf0, 0x3c, 0x00, 0xac, 0xbc, 0x00, 0x00, + 0xb3, 0xf8, 0x03, 0xf0, 0xd1, 0xf9, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, 0x05, 0xf0, + 0xe9, 0xfa, 0x80, 0xbd, 0x80, 0xb5, 0x00, 0x28, + 0x03, 0xd1, 0x01, 0x20, 0x04, 0xf0, 0x22, 0xfa, + 0x80, 0xbd, 0x01, 0x20, 0x03, 0xf0, 0xe6, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x03, 0x49, 0x01, 0x20, + 0x49, 0x78, 0x00, 0x29, 0x00, 0xd0, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xbc, + 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, 0x70, 0xb5, + 0x13, 0x4d, 0x28, 0x78, 0x00, 0x28, 0x20, 0xd1, + 0x01, 0x21, 0x2e, 0x1c, 0x70, 0x68, 0xff, 0xf7, + 0x12, 0xfd, 0x00, 0x21, 0x07, 0x20, 0x06, 0xf0, + 0x2a, 0xfb, 0x0d, 0x48, 0x00, 0x24, 0x04, 0x71, + 0x04, 0xf0, 0xed, 0xf8, 0x06, 0xf0, 0xd5, 0xf9, + 0x01, 0x20, 0x28, 0x70, 0x0a, 0x48, 0x04, 0x60, + 0x44, 0x60, 0xf6, 0xf7, 0x4c, 0xfd, 0x3c, 0x00, + 0x24, 0xbd, 0x00, 0x00, 0xf7, 0xf7, 0x5e, 0xf8, + 0xff, 0xf7, 0xa2, 0xff, 0x00, 0xf0, 0xa8, 0xfd, + 0x05, 0x48, 0x71, 0x68, 0x03, 0xf0, 0x20, 0xfb, + 0x01, 0x20, 0x70, 0xbd, 0x2c, 0x63, 0x01, 0x00, + 0x50, 0x00, 0x07, 0x00, 0x80, 0x00, 0x07, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0xb0, 0xb5, 0x1e, 0x4c, + 0x20, 0x78, 0x01, 0x28, 0x35, 0xd1, 0x25, 0x1c, + 0x69, 0x68, 0x1c, 0x48, 0x03, 0xf0, 0x20, 0xfb, + 0x3c, 0x00, 0x60, 0xbd, 0x00, 0x00, 0x04, 0xf0, + 0xf0, 0xf8, 0x1a, 0x48, 0x01, 0x68, 0x49, 0x08, + 0x49, 0x00, 0x01, 0x60, 0x01, 0x68, 0x01, 0x22, + 0x11, 0x43, 0x01, 0x60, 0x00, 0xf0, 0x2b, 0xfe, + 0x00, 0xf0, 0x1b, 0xfc, 0x06, 0xf0, 0x99, 0xf8, + 0xf6, 0xf7, 0x29, 0xfe, 0xf6, 0xf7, 0x2d, 0xfc, + 0x00, 0x20, 0x20, 0x70, 0xff, 0xf7, 0x83, 0xff, + 0x00, 0xf0, 0x8b, 0xfd, 0x0f, 0x48, 0x81, 0x78, + 0x08, 0x22, 0x3c, 0x00, 0x9c, 0xbd, 0x00, 0x00, + 0x91, 0x43, 0x81, 0x70, 0x81, 0x78, 0x11, 0x43, + 0x81, 0x70, 0x0c, 0x49, 0x10, 0x20, 0x08, 0x71, + 0x68, 0x68, 0xff, 0xf7, 0x5f, 0xfd, 0xf7, 0xf7, + 0x39, 0xf8, 0xf6, 0xf7, 0x4d, 0xfd, 0x01, 0x21, + 0x07, 0x20, 0x06, 0xf0, 0xcd, 0xfa, 0x01, 0x20, + 0xb0, 0xbd, 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0xf0, 0x00, 0x07, 0x00, + 0x00, 0x00, 0x07, 0x00, 0x3c, 0x00, 0xd8, 0xbd, + 0x00, 0x00, 0x50, 0x00, 0x07, 0x00, 0x03, 0x49, + 0x01, 0x20, 0x89, 0x7a, 0x01, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0xb0, 0xb5, 0x15, 0x4d, 0x04, 0x1c, + 0x28, 0x7a, 0x00, 0x28, 0x20, 0xd1, 0xf9, 0xf7, + 0x00, 0xfc, 0x02, 0x28, 0x1c, 0xd1, 0x01, 0x20, + 0x28, 0x72, 0xe8, 0x68, 0x00, 0x28, 0x10, 0xd0, + 0x20, 0x68, 0x29, 0x68, 0x08, 0x60, 0x3c, 0x00, + 0x14, 0xbe, 0x00, 0x00, 0x69, 0x68, 0x0d, 0x48, + 0x03, 0xf0, 0xc2, 0xfa, 0x01, 0x21, 0x68, 0x68, + 0xff, 0xf7, 0xc8, 0xfc, 0x00, 0x22, 0x24, 0x20, + 0x61, 0x68, 0x07, 0xf0, 0xcf, 0xfb, 0xb0, 0xbd, + 0x00, 0x20, 0x28, 0x72, 0x21, 0x68, 0x01, 0x20, + 0xf4, 0xf7, 0xcf, 0xfa, 0xb0, 0xbd, 0x00, 0x20, + 0x21, 0x68, 0xf4, 0xf7, 0xca, 0xfa, 0xb0, 0xbd, + 0x04, 0x7a, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x3c, 0x00, 0x50, 0xbe, 0x00, 0x00, 0x04, 0x48, + 0x80, 0xb5, 0x00, 0x7a, 0x01, 0x28, 0x02, 0xd1, + 0x00, 0x20, 0x02, 0xf0, 0xf0, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x04, 0x7a, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x28, 0x07, 0xd0, 0x80, 0x28, 0x09, 0xd1, + 0x07, 0x48, 0x00, 0x7a, 0x00, 0x28, 0x04, 0xd0, + 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, 0x02, 0xf0, + 0xde, 0xfe, 0x80, 0xbd, 0x0e, 0x21, 0x24, 0x20, + 0xf5, 0xf7, 0x3c, 0x00, 0x8c, 0xbe, 0x00, 0x00, + 0x0b, 0xfa, 0x80, 0xbd, 0x04, 0x7a, 0x01, 0x00, + 0xf8, 0xb5, 0x3a, 0x4e, 0x05, 0x1c, 0xb0, 0x7a, + 0x00, 0x28, 0x69, 0xd1, 0xf9, 0xf7, 0xae, 0xfb, + 0x02, 0x28, 0x65, 0xd1, 0x36, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x61, 0xd0, 0x35, 0x48, 0x71, 0x68, + 0x03, 0xf0, 0x74, 0xfa, 0x01, 0x21, 0x70, 0x68, + 0xff, 0xf7, 0x7a, 0xfc, 0x6c, 0x20, 0xf5, 0xf7, + 0xb9, 0xfc, 0x04, 0x1c, 0x3c, 0x00, 0xc8, 0xbe, + 0x00, 0x00, 0x6c, 0x21, 0xf4, 0xf7, 0xe7, 0xfa, + 0x30, 0x68, 0x2c, 0x22, 0x04, 0x60, 0x29, 0x68, + 0x81, 0x60, 0x69, 0x68, 0xc1, 0x60, 0x00, 0x21, + 0x11, 0x54, 0x81, 0x62, 0xa9, 0x68, 0x00, 0x29, + 0x02, 0xd0, 0xe9, 0x68, 0x01, 0x61, 0x05, 0xe0, + 0x06, 0xf0, 0x5d, 0xff, 0x69, 0x68, 0x40, 0x18, + 0x31, 0x68, 0x08, 0x61, 0x70, 0x68, 0xff, 0xf7, + 0x14, 0xfd, 0x69, 0x21, 0x08, 0x55, 0x3c, 0x00, + 0x04, 0xbf, 0x00, 0x00, 0x00, 0x20, 0xf9, 0xf7, + 0x09, 0xfb, 0x01, 0x27, 0x3b, 0x1c, 0x06, 0x1c, + 0x22, 0x1c, 0x24, 0x32, 0x00, 0x21, 0xf9, 0xf7, + 0x79, 0xfb, 0x1c, 0x48, 0x03, 0x21, 0x00, 0x88, + 0x89, 0x03, 0x08, 0x43, 0x21, 0x1c, 0x40, 0x31, + 0x00, 0x91, 0x48, 0x83, 0x18, 0x48, 0x10, 0x21, + 0x60, 0x60, 0x18, 0x48, 0xa0, 0x60, 0xa7, 0x63, + 0x67, 0x63, 0x00, 0x20, 0xf5, 0xf7, 0x4c, 0xfb, + 0x3c, 0x00, 0x40, 0xbf, 0x00, 0x00, 0xe0, 0x60, + 0x02, 0x89, 0x00, 0x99, 0xca, 0x83, 0x07, 0x68, + 0x31, 0x1c, 0x38, 0x1d, 0x27, 0x61, 0xfe, 0xf7, + 0x8e, 0xfe, 0x38, 0x1c, 0x0a, 0x30, 0x0f, 0x49, + 0xfe, 0xf7, 0x89, 0xfe, 0xa4, 0x20, 0x38, 0x80, + 0x00, 0x20, 0x04, 0xf0, 0xde, 0xfb, 0x00, 0x22, + 0x1f, 0x20, 0x69, 0x68, 0x07, 0xf0, 0x2d, 0xfb, + 0xf8, 0xbd, 0xff, 0xe7, 0x00, 0x20, 0x29, 0x68, + 0xf4, 0xf7, 0x3c, 0x00, 0x7c, 0xbf, 0x00, 0x00, + 0x2e, 0xfa, 0xf8, 0xe7, 0x14, 0x7a, 0x01, 0x00, + 0x80, 0x5a, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0xfa, 0x60, 0x01, 0x00, 0x99, 0xec, 0x00, 0x00, + 0x15, 0xed, 0x00, 0x00, 0x12, 0x61, 0x01, 0x00, + 0x06, 0x48, 0x80, 0xb5, 0x81, 0x7a, 0x00, 0x29, + 0x07, 0xd0, 0x00, 0x68, 0x04, 0x22, 0x20, 0x30, + 0x01, 0x7b, 0x11, 0x43, 0x01, 0x73, 0x02, 0xf0, + 0x6b, 0xfd, 0x80, 0xbd, 0x3c, 0x00, 0xb8, 0xbf, + 0x00, 0x00, 0x14, 0x7a, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x4c, 0xa0, 0x7a, 0x01, 0x28, 0x03, 0xd1, + 0x06, 0xf0, 0xf1, 0xfe, 0x21, 0x68, 0x88, 0x61, + 0x10, 0xbd, 0x14, 0x7a, 0x01, 0x00, 0x03, 0x1c, + 0x08, 0x1c, 0x1f, 0x49, 0x70, 0xb5, 0x0a, 0x68, + 0x01, 0x2b, 0x1c, 0xd0, 0x80, 0x2b, 0x05, 0xd0, + 0x83, 0x2b, 0x30, 0xd1, 0x88, 0x7a, 0x00, 0x28, + 0x14, 0xd0, 0x29, 0xe0, 0x53, 0x69, 0x3c, 0x00, + 0xf4, 0xbf, 0x00, 0x00, 0x00, 0x2b, 0x0e, 0xd0, + 0x94, 0x69, 0xd5, 0x69, 0x2e, 0x1b, 0x0c, 0x69, + 0x5d, 0x1b, 0x36, 0x1b, 0xb6, 0x10, 0xa4, 0x19, + 0x0c, 0x61, 0xcc, 0x68, 0x2d, 0x1b, 0xad, 0x10, + 0x64, 0x19, 0xcc, 0x60, 0x93, 0x61, 0x02, 0xf0, + 0x81, 0xfd, 0x70, 0xbd, 0x02, 0x28, 0x12, 0xd1, + 0x90, 0x6a, 0x0c, 0x1c, 0x00, 0x28, 0xf8, 0xd0, + 0x07, 0xf0, 0x0e, 0xfa, 0xa0, 0x7a, 0x01, 0x28, + 0x3c, 0x00, 0x30, 0xc0, 0x00, 0x00, 0xf3, 0xd1, + 0x20, 0x68, 0x81, 0x6a, 0x00, 0x29, 0xef, 0xd1, + 0x20, 0x30, 0x01, 0x7b, 0x08, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x70, 0xbd, 0x02, 0xf0, 0x21, 0xfd, + 0x70, 0xbd, 0x0e, 0x21, 0x1f, 0x20, 0xf5, 0xf7, + 0x28, 0xf9, 0x70, 0xbd, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0x02, 0x49, 0x0c, 0x31, 0x03, 0xc9, + 0x40, 0x18, 0x70, 0x47, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0x3c, 0x00, 0x6c, 0xc0, 0x00, 0x00, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x68, 0x04, 0x22, + 0x20, 0x30, 0x01, 0x7b, 0x11, 0x43, 0x01, 0x73, + 0x07, 0xf0, 0xe4, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0x70, 0xb5, 0x16, 0x4c, + 0x0e, 0x1c, 0xa1, 0x7a, 0x00, 0x29, 0x1c, 0xd0, + 0x21, 0x68, 0x08, 0x61, 0x07, 0xf0, 0x32, 0xfa, + 0x00, 0x28, 0x17, 0xd0, 0x20, 0x68, 0x00, 0x25, + 0x05, 0x62, 0x00, 0x22, 0x3c, 0x00, 0xa8, 0xc0, + 0x00, 0x00, 0x83, 0x21, 0x1f, 0x20, 0x07, 0xf0, + 0x94, 0xfa, 0x60, 0x68, 0xff, 0xf7, 0x03, 0xfc, + 0x21, 0x68, 0x04, 0x22, 0x20, 0x31, 0x08, 0x7b, + 0x2b, 0x1c, 0x90, 0x43, 0x08, 0x73, 0x31, 0x1c, + 0x00, 0x22, 0x1f, 0x20, 0x07, 0xf0, 0x61, 0xfb, + 0x70, 0xbd, 0x20, 0x68, 0x08, 0x22, 0x20, 0x30, + 0x01, 0x7b, 0x11, 0x43, 0x01, 0x73, 0x02, 0xf0, + 0xd6, 0xfc, 0x70, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xc0, 0x00, 0x00, 0x14, 0x7a, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0x77, 0xfc, 0x00, 0xf0, + 0x6f, 0xfc, 0x00, 0xf0, 0x29, 0xff, 0x00, 0xf0, + 0x5d, 0xfa, 0x00, 0xf0, 0xc5, 0xf8, 0x00, 0xf0, + 0x85, 0xff, 0x80, 0xbd, 0x80, 0xb5, 0xfa, 0xf7, + 0x85, 0xfa, 0x80, 0xbd, 0x01, 0x48, 0xc0, 0x68, + 0x70, 0x47, 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, + 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, + 0x3c, 0x00, 0x20, 0xc1, 0x00, 0x00, 0x02, 0x48, + 0xc1, 0x60, 0x70, 0x47, 0x00, 0x00, 0x81, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x01, 0x48, + 0x02, 0x49, 0xc8, 0x60, 0x70, 0x47, 0x81, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x01, 0x49, + 0x88, 0x61, 0x70, 0x47, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x01, 0x49, 0x00, 0x20, 0x88, 0x61, + 0x70, 0x47, 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x3c, 0x00, 0x5c, 0xc1, 0x00, 0x00, + 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, 0xc1, 0x61, + 0x70, 0x47, 0x00, 0x00, 0x89, 0x75, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, + 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, 0x81, 0x62, + 0x70, 0x47, 0x00, 0x00, 0x8d, 0x75, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, + 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, 0x01, 0x62, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xc1, + 0x00, 0x00, 0x91, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, + 0x01, 0x1c, 0x02, 0x48, 0x01, 0x61, 0x70, 0x47, + 0x00, 0x00, 0x99, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x01, 0x48, 0x02, 0x49, 0x08, 0x61, + 0x70, 0x47, 0x81, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x02, 0x1c, 0x08, 0x1c, 0x80, 0x2a, + 0x80, 0xb5, 0x02, 0xd1, 0x00, 0xf0, 0x3c, 0x00, + 0xd4, 0xc1, 0x00, 0x00, 0x07, 0xf8, 0x80, 0xbd, + 0x1e, 0x21, 0x21, 0x20, 0xf5, 0xf7, 0x62, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x10, 0x4d, + 0x04, 0x1c, 0xa8, 0x6b, 0x01, 0x30, 0xa8, 0x63, + 0x69, 0x6b, 0x09, 0x1a, 0x28, 0x1c, 0x00, 0x6b, + 0x0c, 0x29, 0x03, 0xd9, 0x00, 0x21, 0xff, 0xf7, + 0x91, 0xfa, 0x03, 0xe0, 0x08, 0x29, 0x01, 0xd1, + 0xff, 0xf7, 0x32, 0xfb, 0x20, 0x1c, 0x00, 0xf0, + 0x3c, 0x00, 0x10, 0xc2, 0x00, 0x00, 0x4d, 0xf9, + 0x60, 0x69, 0x40, 0x07, 0x01, 0xd5, 0x03, 0xf0, + 0x0c, 0xfc, 0x20, 0x1c, 0xe9, 0x6a, 0xf4, 0xf7, + 0xdb, 0xf8, 0xb0, 0xbd, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, + 0x01, 0x1c, 0x02, 0x48, 0x41, 0x62, 0x70, 0x47, + 0x00, 0x00, 0xb5, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0x03, 0x49, 0x01, 0x20, 0x09, 0x6c, + 0x00, 0x29, 0x3c, 0x00, 0x4c, 0xc2, 0x00, 0x00, + 0x00, 0xd1, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0xe1, 0x6b, 0x00, 0x29, 0x01, 0xd1, 0xe0, 0x63, + 0x04, 0xe0, 0x81, 0x42, 0x02, 0xd0, 0x00, 0x20, + 0xc0, 0x43, 0xf8, 0xe7, 0x06, 0xf0, 0x9c, 0xfd, + 0x20, 0x64, 0x10, 0xbd, 0x28, 0x7a, 0x01, 0x00, + 0x01, 0x48, 0x00, 0x6c, 0x70, 0x47, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x3c, 0x00, 0x88, 0xc2, + 0x00, 0x00, 0x05, 0x49, 0x80, 0xb5, 0x00, 0x20, + 0x48, 0x63, 0x88, 0x63, 0xff, 0x21, 0x09, 0x31, + 0x15, 0x22, 0x10, 0x20, 0xf6, 0xf7, 0xfb, 0xf9, + 0x80, 0xbd, 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x02, 0x48, + 0x81, 0x60, 0x70, 0x47, 0x00, 0x00, 0xc1, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x03, 0x49, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x3c, 0x00, + 0xc4, 0xc2, 0x00, 0x00, 0x02, 0x48, 0xc1, 0x62, + 0x70, 0x47, 0x00, 0x00, 0xc5, 0x75, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0x04, 0x4b, 0x05, 0x49, + 0x00, 0x28, 0x5a, 0x68, 0x00, 0xd0, 0x01, 0x1c, + 0x10, 0x1c, 0x59, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x28, 0x7a, 0x01, 0x00, 0xc9, 0x75, 0x00, 0x00, + 0x03, 0x49, 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, + 0x02, 0x48, 0x41, 0x61, 0x70, 0x47, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xc3, 0x00, 0x00, 0xcd, 0x75, + 0x00, 0x00, 0x28, 0x7a, 0x01, 0x00, 0x0f, 0x4b, + 0x10, 0xb5, 0xd9, 0x68, 0x00, 0x29, 0x19, 0xd0, + 0x0e, 0x4c, 0x00, 0x21, 0xca, 0x00, 0x12, 0x19, + 0x40, 0x3a, 0xd2, 0x6b, 0x82, 0x42, 0x02, 0xda, + 0x01, 0x31, 0x03, 0x29, 0xf6, 0xd3, 0x48, 0x1c, + 0x1a, 0x78, 0x00, 0x06, 0x00, 0x0e, 0x90, 0x42, + 0x08, 0xd0, 0x18, 0x70, 0x08, 0x06, 0x00, 0x0e, + 0x04, 0x1c, 0x3c, 0x00, 0x3c, 0xc3, 0x00, 0x00, + 0xf6, 0xf7, 0xba, 0xfa, 0x20, 0x1c, 0x03, 0xf0, + 0x1b, 0xfd, 0x10, 0xbd, 0x18, 0x63, 0x01, 0x00, + 0x3c, 0x42, 0x01, 0x00, 0x10, 0xb5, 0x14, 0x4c, + 0xe1, 0x68, 0x00, 0x29, 0x22, 0xd0, 0x21, 0x78, + 0x12, 0x4b, 0xca, 0x00, 0xd2, 0x18, 0x40, 0x3a, + 0xd3, 0x6b, 0x83, 0x42, 0x02, 0xda, 0x48, 0x1c, + 0x20, 0x70, 0x0b, 0xe0, 0x92, 0x6b, 0x82, 0x42, + 0x14, 0xdd, 0xff, 0x31, 0x3c, 0x00, 0x78, 0xc3, + 0x00, 0x00, 0x08, 0x06, 0x00, 0x0e, 0x20, 0x70, + 0x03, 0xd1, 0x19, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x8e, 0xff, 0x20, 0x78, 0xff, 0x30, 0x00, 0x06, + 0x00, 0x0e, 0xf6, 0xf7, 0x90, 0xfa, 0x20, 0x78, + 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, 0x03, 0xf0, + 0xee, 0xfc, 0x10, 0xbd, 0x00, 0x00, 0x18, 0x63, + 0x01, 0x00, 0x3c, 0x42, 0x01, 0x00, 0x09, 0x48, + 0x00, 0x21, 0x01, 0x81, 0x41, 0x81, 0x3c, 0x00, + 0xb4, 0xc3, 0x00, 0x00, 0x81, 0x81, 0xc1, 0x81, + 0x07, 0x4a, 0x02, 0x80, 0x01, 0x23, 0xdb, 0x02, + 0x43, 0x80, 0x82, 0x80, 0xc2, 0x80, 0x41, 0x76, + 0x31, 0x21, 0x81, 0x76, 0x01, 0x21, 0x01, 0x76, + 0x70, 0x47, 0x00, 0x00, 0x30, 0x80, 0x07, 0x00, + 0xff, 0xff, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x20, + 0xf6, 0xf7, 0xf8, 0xf8, 0x01, 0x20, 0xf6, 0xf7, + 0xdb, 0xfc, 0x01, 0x20, 0xf6, 0xf7, 0x5a, 0xfa, + 0x3c, 0x00, 0xf0, 0xc3, 0x00, 0x00, 0x01, 0x20, + 0x00, 0xf0, 0xf1, 0xfd, 0x01, 0x20, 0xf7, 0xf7, + 0xc6, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, + 0x11, 0x4c, 0x00, 0x29, 0x07, 0xd1, 0x00, 0x28, + 0x02, 0xd1, 0x01, 0x20, 0xe0, 0x60, 0x06, 0xe0, + 0x00, 0x21, 0xe1, 0x60, 0x03, 0xe0, 0x01, 0x29, + 0x07, 0xd1, 0x00, 0x28, 0x01, 0xd0, 0x20, 0x70, + 0x03, 0xe0, 0x18, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x3c, 0xff, 0x3c, 0x00, 0x2c, 0xc4, 0x00, 0x00, + 0x20, 0x78, 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, + 0xf6, 0xf7, 0x3e, 0xfa, 0x20, 0x78, 0xff, 0x30, + 0x00, 0x06, 0x00, 0x0e, 0x03, 0xf0, 0x9c, 0xfc, + 0x10, 0xbd, 0x00, 0x00, 0x18, 0x63, 0x01, 0x00, + 0x05, 0x49, 0x80, 0xb5, 0x09, 0x68, 0x88, 0x42, + 0x05, 0xd0, 0xfe, 0xf7, 0xff, 0xfb, 0x00, 0xf0, + 0x87, 0xfa, 0xff, 0xf7, 0x2b, 0xfc, 0x80, 0xbd, + 0xa8, 0x69, 0x01, 0x00, 0x3c, 0x00, 0x68, 0xc4, + 0x00, 0x00, 0x01, 0x49, 0x48, 0x70, 0x70, 0x47, + 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, 0x01, 0x49, + 0xc8, 0x60, 0x70, 0x47, 0x00, 0x00, 0x4c, 0x7b, + 0x01, 0x00, 0x03, 0x49, 0x01, 0x20, 0x09, 0x78, + 0x00, 0x29, 0x00, 0xd0, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, 0x04, 0x4a, + 0x00, 0x28, 0x02, 0xd0, 0x90, 0x69, 0x01, 0x30, + 0x90, 0x61, 0xd0, 0x69, 0x40, 0x18, 0x3c, 0x00, + 0xa4, 0xc4, 0x00, 0x00, 0xd0, 0x61, 0x70, 0x47, + 0x90, 0x5c, 0x01, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0x00, 0x68, 0x05, 0x68, 0x28, 0x1c, 0xfe, 0xf7, + 0x27, 0xff, 0x07, 0x1c, 0x60, 0x69, 0x15, 0x4e, + 0xc0, 0x07, 0xc0, 0x0f, 0x21, 0xd0, 0x01, 0xaa, + 0x02, 0xa9, 0x28, 0x1c, 0xfe, 0xf7, 0x12, 0xff, + 0x38, 0x78, 0xc0, 0x07, 0x0c, 0xd4, 0x60, 0x69, + 0x80, 0x07, 0x08, 0xd5, 0x00, 0xab, 0x18, 0x7a, + 0x3c, 0x00, 0xe0, 0xc4, 0x00, 0x00, 0x00, 0x28, + 0x01, 0xd0, 0x02, 0x28, 0x02, 0xd1, 0x70, 0x6a, + 0x01, 0x30, 0x70, 0x62, 0xfe, 0xbd, 0x00, 0xab, + 0x18, 0x7a, 0x00, 0x28, 0x01, 0xd0, 0x02, 0x28, + 0xf8, 0xd1, 0x70, 0x6a, 0x01, 0x30, 0x70, 0x62, + 0xb0, 0x6a, 0x01, 0x30, 0xb0, 0x62, 0xf1, 0xe7, + 0xf0, 0x6a, 0x01, 0x30, 0xf0, 0x62, 0xed, 0xe7, + 0x00, 0x00, 0x90, 0x5c, 0x01, 0x00, 0x02, 0x49, + 0x48, 0x69, 0x3c, 0x00, 0x1c, 0xc5, 0x00, 0x00, + 0x01, 0x30, 0x48, 0x61, 0x70, 0x47, 0x00, 0x00, + 0x90, 0x5c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x01, 0x1c, 0x40, 0x31, + 0x10, 0xb5, 0x0a, 0x8b, 0x12, 0x07, 0x92, 0x0f, + 0x01, 0x2a, 0x33, 0xd0, 0x4a, 0x78, 0x1a, 0x49, + 0x04, 0x1c, 0x60, 0x34, 0x00, 0x2a, 0x0b, 0x6a, + 0x22, 0xd1, 0xe2, 0x79, 0x01, 0x2a, 0x02, 0xd9, + 0xcc, 0x68, 0x01, 0x34, 0x3c, 0x00, 0x58, 0xc5, + 0x00, 0x00, 0xcc, 0x60, 0x02, 0x2a, 0x02, 0xd9, + 0x0c, 0x69, 0x01, 0x34, 0x0c, 0x61, 0x0c, 0x68, + 0x01, 0x34, 0x0c, 0x60, 0x44, 0x6b, 0x00, 0x2c, + 0x03, 0xd0, 0x04, 0x69, 0x24, 0x7c, 0xe4, 0x07, + 0x02, 0xd5, 0x4c, 0x68, 0x01, 0x34, 0x4c, 0x60, + 0x80, 0x6b, 0x00, 0x28, 0x02, 0xd0, 0x08, 0x6b, + 0x01, 0x30, 0x08, 0x63, 0x00, 0x2a, 0x0c, 0xd0, + 0x98, 0x18, 0x01, 0x38, 0x08, 0xe0, 0x3c, 0x00, + 0x94, 0xc5, 0x00, 0x00, 0x01, 0x2a, 0x01, 0xd0, + 0x02, 0x2a, 0x02, 0xd1, 0x88, 0x68, 0x01, 0x30, + 0x88, 0x60, 0xe0, 0x79, 0x18, 0x18, 0x08, 0x62, + 0x10, 0xbd, 0x00, 0x00, 0x90, 0x5c, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x01, 0x49, 0x0a, 0x20, + 0x08, 0x81, 0x70, 0x47, 0xc4, 0x7a, 0x01, 0x00, + 0xf0, 0xb5, 0x32, 0x4f, 0x04, 0x1c, 0x78, 0x78, + 0x85, 0xb0, 0xc0, 0x07, 0xc0, 0x0f, 0x03, 0x90, + 0x3c, 0x00, 0xd0, 0xc5, 0x00, 0x00, 0xb8, 0x78, + 0x02, 0x90, 0x01, 0x20, 0xa0, 0x40, 0x04, 0x90, + 0x39, 0x1c, 0x88, 0x70, 0x2c, 0x48, 0x00, 0x88, + 0x06, 0xf0, 0x0b, 0xfc, 0x01, 0x90, 0xfe, 0xf7, + 0xae, 0xfc, 0x04, 0x30, 0x29, 0x4e, 0xa5, 0x00, + 0x71, 0x59, 0x09, 0x79, 0x88, 0x42, 0x06, 0xd0, + 0xfe, 0xf7, 0xa5, 0xfc, 0x71, 0x59, 0x04, 0x30, + 0x08, 0x71, 0x01, 0x20, 0x78, 0x70, 0x00, 0x20, + 0x78, 0x70, 0x3c, 0x00, 0x0c, 0xc6, 0x00, 0x00, + 0x21, 0x48, 0x01, 0x21, 0x20, 0x4e, 0x30, 0x38, + 0x01, 0x55, 0x71, 0x59, 0x03, 0x20, 0x08, 0x70, + 0x06, 0xf0, 0xc6, 0xfb, 0x06, 0x1c, 0xfe, 0xf7, + 0x91, 0xfc, 0x36, 0x18, 0x0e, 0x36, 0x09, 0xe0, + 0x30, 0x1c, 0x06, 0xf0, 0xf5, 0xfa, 0x00, 0x28, + 0x04, 0xd0, 0x23, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x33, 0xfe, 0x03, 0xe0, 0xf6, 0xf7, 0x34, 0xfb, + 0x00, 0x28, 0xf1, 0xd0, 0x3c, 0x00, 0x48, 0xc6, + 0x00, 0x00, 0x12, 0x48, 0x13, 0x49, 0x3c, 0x38, + 0x00, 0x78, 0x08, 0x72, 0x20, 0x1c, 0xf4, 0xf7, + 0xa2, 0xfa, 0x0e, 0x4e, 0x71, 0x59, 0x08, 0x71, + 0x03, 0x98, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x21, + 0x79, 0x70, 0x09, 0x48, 0x00, 0x88, 0x01, 0x99, + 0x06, 0xf0, 0xbd, 0xfb, 0x02, 0x98, 0xb8, 0x70, + 0x09, 0x49, 0x49, 0x79, 0x04, 0x98, 0x88, 0x42, + 0x03, 0xd0, 0x24, 0x21, 0x86, 0x20, 0x3c, 0x00, + 0x84, 0xc6, 0x00, 0x00, 0xf4, 0xf7, 0x0e, 0xfe, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x50, 0x07, 0x00, + 0xd0, 0x79, 0x01, 0x00, 0x10, 0x7b, 0x01, 0x00, + 0x80, 0x80, 0x07, 0x00, 0x50, 0x80, 0x07, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, 0x05, 0x28, + 0x01, 0xd3, 0xf4, 0xf7, 0x29, 0xfe, 0x05, 0x2d, + 0x01, 0xd3, 0xf4, 0xf7, 0x25, 0xfe, 0x0b, 0x4a, + 0xa8, 0x00, 0x11, 0x58, 0xa0, 0x00, 0x10, 0x58, + 0x3c, 0x00, 0xc0, 0xc6, 0x00, 0x00, 0x0e, 0xc9, + 0x0e, 0xc0, 0x06, 0x21, 0x06, 0x22, 0x06, 0x48, + 0x69, 0x43, 0x2a, 0x38, 0x09, 0x18, 0x62, 0x43, + 0x10, 0x18, 0x06, 0x22, 0xf3, 0xf7, 0x0f, 0xff, + 0x02, 0x48, 0x30, 0x38, 0x41, 0x5d, 0x01, 0x55, + 0xb0, 0xbd, 0x10, 0x7b, 0x01, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0e, 0x48, 0x0d, 0x1c, 0x80, 0x78, + 0x01, 0x21, 0xa1, 0x40, 0x08, 0x40, 0x03, 0xd0, + 0x01, 0x21, 0x3c, 0x00, 0xfc, 0xc6, 0x00, 0x00, + 0x86, 0x20, 0xf4, 0xf7, 0xd1, 0xfd, 0x06, 0x21, + 0x06, 0x22, 0x09, 0x48, 0x69, 0x43, 0x09, 0x18, + 0x62, 0x43, 0x10, 0x18, 0x06, 0x22, 0xf3, 0xf7, + 0xf1, 0xfe, 0x20, 0x1c, 0xf4, 0xf7, 0x40, 0xfa, + 0x03, 0x4a, 0xa1, 0x00, 0x2a, 0x32, 0x51, 0x58, + 0x08, 0x71, 0xb0, 0xbd, 0x00, 0x50, 0x07, 0x00, + 0xe6, 0x7a, 0x01, 0x00, 0x03, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0x48, 0x60, 0x3c, 0x00, 0x38, 0xc7, + 0x00, 0x00, 0x07, 0xf0, 0x32, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0xd4, 0x7a, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x05, 0x28, 0x01, 0xd3, 0xf4, 0xf7, + 0xd8, 0xfd, 0x07, 0x49, 0x08, 0x7a, 0x07, 0x4a, + 0x10, 0x70, 0x01, 0x20, 0x08, 0x72, 0xfe, 0xf7, + 0xf4, 0xfb, 0x04, 0x4a, 0x04, 0x30, 0xa1, 0x00, + 0x3c, 0x32, 0x51, 0x58, 0x08, 0x71, 0x10, 0xbd, + 0x00, 0x00, 0x80, 0x80, 0x07, 0x00, 0x3c, 0x00, + 0x74, 0xc7, 0x00, 0x00, 0xd4, 0x7a, 0x01, 0x00, + 0x03, 0x49, 0x80, 0xb5, 0x01, 0x20, 0x48, 0x60, + 0x07, 0xf0, 0x0e, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0xd4, 0x7a, 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xf4, 0xf7, 0xb4, 0xfd, + 0x20, 0x1c, 0xf5, 0xf7, 0x8f, 0xfe, 0x00, 0x21, + 0x20, 0x1c, 0xfb, 0xf7, 0x31, 0xfd, 0x01, 0x21, + 0x00, 0x28, 0x00, 0xd0, 0x01, 0x1c, 0x09, 0x04, + 0x3c, 0x00, 0xb0, 0xc7, 0x00, 0x00, 0x09, 0x0c, + 0x20, 0x1c, 0x04, 0xf0, 0x22, 0xfa, 0x10, 0xbd, + 0x00, 0x00, 0x06, 0x49, 0x01, 0x20, 0x05, 0x4b, + 0x88, 0x60, 0x00, 0x20, 0x3c, 0x33, 0x00, 0x21, + 0x82, 0x00, 0x9a, 0x58, 0x11, 0x70, 0x01, 0x30, + 0x05, 0x28, 0xf9, 0xdb, 0x70, 0x47, 0xd4, 0x7a, + 0x01, 0x00, 0x0f, 0x49, 0x38, 0xb5, 0x00, 0x20, + 0x88, 0x60, 0x0e, 0x48, 0x01, 0x1c, 0x20, 0x31, + 0x8a, 0x79, 0x3c, 0x00, 0xec, 0xc7, 0x00, 0x00, + 0x00, 0xab, 0x1a, 0x70, 0xc9, 0x79, 0x0a, 0x4c, + 0x09, 0x4d, 0x59, 0x70, 0x0c, 0x34, 0x3c, 0x35, + 0x00, 0x21, 0x03, 0x22, 0x63, 0x5c, 0x00, 0x2b, + 0x02, 0xd0, 0x8b, 0x00, 0xeb, 0x58, 0x1a, 0x70, + 0x01, 0x31, 0x05, 0x29, 0xf6, 0xdb, 0x00, 0xab, + 0x19, 0x88, 0xc1, 0x84, 0x38, 0xbd, 0x00, 0x00, + 0xd4, 0x7a, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0xff, 0xb5, 0x14, 0x4f, 0x3c, 0x00, 0x28, 0xc8, + 0x00, 0x00, 0x04, 0x1c, 0xbe, 0x79, 0x0d, 0x1c, + 0x81, 0xb0, 0x0f, 0x20, 0x00, 0xf0, 0xb9, 0xf8, + 0x2a, 0x1c, 0x10, 0x4d, 0x00, 0x90, 0x21, 0x1c, + 0x28, 0x1c, 0xf4, 0xf7, 0xde, 0xfc, 0x21, 0x1c, + 0xa8, 0x1d, 0x03, 0x9a, 0xf4, 0xf7, 0xd9, 0xfc, + 0x21, 0x1c, 0x28, 0x1c, 0x0c, 0x30, 0x04, 0x9a, + 0xf4, 0xf7, 0xd3, 0xfc, 0x21, 0x1c, 0x28, 0x1c, + 0x12, 0x30, 0x0a, 0x9a, 0xf4, 0xf7, 0x3c, 0x00, + 0x64, 0xc8, 0x00, 0x00, 0xcd, 0xfc, 0x07, 0xf0, + 0x9b, 0xf8, 0x00, 0x98, 0x00, 0xf0, 0x76, 0xf8, + 0xbe, 0x71, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0x20, 0x10, 0x07, 0x00, 0xe6, 0x7a, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x20, 0xf6, 0xf7, 0x26, 0xf8, + 0x07, 0x49, 0x88, 0x78, 0x00, 0x09, 0x00, 0x01, + 0x88, 0x70, 0x00, 0x24, 0x20, 0x1c, 0xf5, 0xf7, + 0x11, 0xfe, 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, + 0x3c, 0x00, 0xa0, 0xc8, 0x00, 0x00, 0x04, 0x2c, + 0xf7, 0xd3, 0x10, 0xbd, 0x00, 0x00, 0x00, 0x50, + 0x07, 0x00, 0x80, 0xb5, 0x02, 0xf0, 0xe3, 0xfb, + 0x03, 0x48, 0x81, 0x78, 0x0f, 0x22, 0x11, 0x43, + 0x81, 0x70, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x50, + 0x07, 0x00, 0xf8, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x05, 0x28, 0x01, 0xd3, 0xf4, 0xf7, 0x17, 0xfd, + 0xa6, 0x00, 0x00, 0x2d, 0x11, 0x4f, 0x07, 0xd1, + 0xb8, 0x59, 0x3c, 0x00, 0xdc, 0xc8, 0x00, 0x00, + 0x81, 0x68, 0x00, 0x29, 0x0e, 0xd1, 0x40, 0x78, + 0x00, 0x28, 0x0b, 0xd0, 0x02, 0xe0, 0xff, 0x35, + 0x2d, 0x06, 0x2d, 0x0e, 0x29, 0x1c, 0x20, 0x1c, + 0xfb, 0xf7, 0x88, 0xfc, 0x01, 0x1c, 0x20, 0x1c, + 0x04, 0xf0, 0x7e, 0xf9, 0x06, 0x49, 0x01, 0x20, + 0x30, 0x39, 0x08, 0x55, 0x04, 0x48, 0x3c, 0x38, + 0x80, 0x68, 0x00, 0x28, 0x02, 0xd1, 0xb9, 0x59, + 0x03, 0x20, 0x08, 0x70, 0x3c, 0x00, 0x18, 0xc9, + 0x00, 0x00, 0xf8, 0xbd, 0x00, 0x00, 0x10, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0x04, 0xf0, 0xcd, 0xf9, + 0x80, 0xbd, 0x10, 0xb5, 0x04, 0x1c, 0x05, 0x28, + 0x01, 0xd3, 0xf4, 0xf7, 0xe6, 0xfc, 0x20, 0x1c, + 0xf5, 0xf7, 0xc1, 0xfd, 0x00, 0x20, 0x05, 0x4a, + 0xa1, 0x00, 0x51, 0x58, 0x88, 0x60, 0x04, 0x49, + 0x88, 0x78, 0x01, 0x22, 0xa2, 0x40, 0x10, 0x43, + 0x88, 0x70, 0x10, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xc9, 0x00, 0x00, 0x10, 0x7b, 0x01, 0x00, + 0x00, 0x50, 0x07, 0x00, 0x02, 0x4a, 0x91, 0x78, + 0x08, 0x43, 0x90, 0x70, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x50, 0x07, 0x00, 0xf8, 0xb5, 0x0c, 0x4f, + 0xbe, 0x79, 0x0f, 0x20, 0x00, 0xf0, 0x18, 0xf8, + 0x05, 0x1c, 0x00, 0x24, 0x20, 0x1c, 0xf4, 0xf7, + 0x0d, 0xf9, 0x08, 0x4a, 0xa1, 0x00, 0x51, 0x58, + 0x08, 0x71, 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, + 0x3c, 0x00, 0x90, 0xc9, 0x00, 0x00, 0x04, 0x2c, + 0xf3, 0xd3, 0x28, 0x1c, 0xff, 0xf7, 0xe1, 0xff, + 0xbe, 0x71, 0xf8, 0xbd, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0x10, 0x7b, 0x01, 0x00, 0xb0, 0xb5, + 0x08, 0x49, 0x8d, 0x78, 0x8a, 0x78, 0x05, 0x40, + 0x82, 0x43, 0x8a, 0x70, 0x06, 0xf0, 0xf9, 0xf9, + 0x04, 0x1c, 0x0a, 0x34, 0x20, 0x1c, 0x06, 0xf0, + 0x34, 0xf9, 0x00, 0x28, 0xfa, 0xd0, 0x28, 0x1c, + 0xb0, 0xbd, 0x3c, 0x00, 0xcc, 0xc9, 0x00, 0x00, + 0x00, 0x50, 0x07, 0x00, 0x01, 0x49, 0x0a, 0x20, + 0x08, 0x81, 0x70, 0x47, 0x38, 0x7b, 0x01, 0x00, + 0xf8, 0xb5, 0x10, 0x48, 0x04, 0x26, 0x04, 0x1c, + 0xe0, 0x34, 0x05, 0x1c, 0x38, 0x3d, 0x00, 0x27, + 0x20, 0x1c, 0x1c, 0x30, 0xe4, 0x60, 0xa0, 0x61, + 0x27, 0x61, 0x0b, 0x48, 0xa6, 0x82, 0xe0, 0x61, + 0x27, 0x62, 0xa7, 0x62, 0x06, 0x20, 0xa0, 0x84, + 0x20, 0x1c, 0xfe, 0xf7, 0x3c, 0x00, 0x08, 0xca, + 0x00, 0x00, 0x87, 0xfc, 0x20, 0x1c, 0x0c, 0x30, + 0xf6, 0xf7, 0xb7, 0xf9, 0x05, 0x49, 0x38, 0x3c, + 0xac, 0x42, 0x08, 0x80, 0xe7, 0xd1, 0xf8, 0xbd, + 0x00, 0x00, 0xd4, 0xe4, 0x01, 0x00, 0x12, 0x61, + 0x01, 0x00, 0x48, 0x7b, 0x01, 0x00, 0xf7, 0xb5, + 0x05, 0x1c, 0x0c, 0x23, 0x0f, 0x1c, 0x12, 0x49, + 0x58, 0x43, 0x44, 0x18, 0x20, 0x88, 0x06, 0xf0, + 0xea, 0xf9, 0xa0, 0x78, 0x01, 0x28, 0x3c, 0x00, + 0x44, 0xca, 0x00, 0x00, 0x1a, 0xd1, 0x66, 0x68, + 0x02, 0x2f, 0x05, 0xd1, 0x5c, 0x20, 0x80, 0x5b, + 0x02, 0x99, 0x00, 0x09, 0x88, 0x42, 0x11, 0xd1, + 0x28, 0x1c, 0xfe, 0xf7, 0xfb, 0xff, 0x30, 0x1c, + 0xf9, 0xf7, 0xfa, 0xfd, 0x04, 0x20, 0xa0, 0x70, + 0x39, 0x1c, 0x28, 0x1c, 0xfb, 0xf7, 0xf4, 0xf8, + 0x03, 0x4a, 0xe8, 0x00, 0x3c, 0x32, 0x11, 0x58, + 0x01, 0x31, 0x11, 0x50, 0xfe, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xca, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x01, 0x20, 0x06, 0x4a, 0x00, 0x21, + 0x0c, 0x23, 0x4b, 0x43, 0x9b, 0x18, 0x9b, 0x78, + 0x00, 0x2b, 0x00, 0xd0, 0x00, 0x20, 0x01, 0x31, + 0x04, 0x29, 0xf5, 0xdb, 0x70, 0x47, 0x60, 0x7b, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0xff, 0xf7, + 0xea, 0xfc, 0x00, 0x28, 0x03, 0xd1, 0x20, 0x21, + 0x0c, 0x20, 0xf4, 0xf7, 0xf6, 0xfb, 0x26, 0x1c, + 0x60, 0x36, 0x3c, 0x00, 0xbc, 0xca, 0x00, 0x00, + 0x00, 0x21, 0xf1, 0x71, 0xe1, 0x64, 0x60, 0x6b, + 0x25, 0x1c, 0x40, 0x35, 0x00, 0x28, 0x31, 0xd0, + 0xff, 0xf7, 0x04, 0xf9, 0x01, 0x22, 0x12, 0x03, + 0x00, 0x28, 0x20, 0x69, 0x01, 0x88, 0x01, 0xd0, + 0x91, 0x43, 0x00, 0xe0, 0x11, 0x43, 0x01, 0x80, + 0x20, 0x69, 0x01, 0x22, 0x00, 0x88, 0xd2, 0x02, + 0x28, 0x83, 0x20, 0x1c, 0x58, 0x30, 0x01, 0x88, + 0x91, 0x43, 0x01, 0x80, 0x3c, 0x00, 0xf8, 0xca, + 0x00, 0x00, 0xa3, 0x6b, 0x52, 0x08, 0x00, 0x2b, + 0x10, 0xd0, 0x91, 0x43, 0x01, 0x80, 0x28, 0x8b, + 0x00, 0x07, 0x80, 0x0f, 0x01, 0x28, 0x15, 0xd0, + 0x2e, 0x20, 0x01, 0x5d, 0x20, 0x69, 0x04, 0x30, + 0xf8, 0xf7, 0x41, 0xfd, 0x61, 0x6a, 0xfe, 0xf7, + 0xa8, 0xf9, 0x04, 0xe0, 0x11, 0x43, 0x01, 0x80, + 0x20, 0x1c, 0xfb, 0xf7, 0xcc, 0xfb, 0x68, 0x83, + 0x04, 0xe0, 0x20, 0x69, 0x41, 0x80, 0x3c, 0x00, + 0x34, 0xcb, 0x00, 0x00, 0xa8, 0x8b, 0x21, 0x69, + 0xc8, 0x82, 0xe0, 0x68, 0xf6, 0xf7, 0x20, 0xf9, + 0x30, 0x80, 0x60, 0x6d, 0x00, 0x28, 0x04, 0xd0, + 0x00, 0x22, 0x03, 0x21, 0x70, 0x7a, 0xfe, 0xf7, + 0x0d, 0xff, 0x20, 0x1c, 0x00, 0xf0, 0xb6, 0xf9, + 0x70, 0x7a, 0x06, 0xf0, 0x45, 0xf8, 0x70, 0xbd, + 0xb0, 0xb5, 0x00, 0x24, 0x06, 0xf0, 0x22, 0xf9, + 0x09, 0x4a, 0x00, 0x21, 0x0c, 0x23, 0x4b, 0x43, + 0x3c, 0x00, 0x70, 0xcb, 0x00, 0x00, 0x9d, 0x18, + 0x6b, 0x68, 0x5b, 0x6c, 0xad, 0x78, 0xc3, 0x1a, + 0x01, 0x2d, 0x02, 0xd1, 0xa3, 0x42, 0x00, 0xdd, + 0x1c, 0x1c, 0x01, 0x31, 0x05, 0x29, 0xf0, 0xd3, + 0x20, 0x1c, 0xb0, 0xbd, 0x00, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x06, 0xf0, + 0xa8, 0xfe, 0x0c, 0x20, 0x08, 0x49, 0x60, 0x43, + 0x45, 0x18, 0x28, 0x88, 0x06, 0xf0, 0x35, 0xf9, + 0x68, 0x68, 0x3c, 0x00, 0xac, 0xcb, 0x00, 0x00, + 0x00, 0x28, 0x06, 0xd0, 0x20, 0x30, 0x00, 0x7b, + 0x01, 0x28, 0x02, 0xd1, 0x20, 0x1c, 0xff, 0xf7, + 0xa3, 0xfa, 0xb0, 0xbd, 0x60, 0x7b, 0x01, 0x00, + 0xff, 0xb5, 0x85, 0xb0, 0x0f, 0xae, 0x60, 0xce, + 0x38, 0x20, 0x1e, 0x49, 0x70, 0x43, 0x17, 0x1c, + 0x44, 0x18, 0xff, 0xf7, 0x7f, 0xf8, 0x01, 0x22, + 0x12, 0x03, 0x00, 0x28, 0x03, 0xd0, 0x20, 0x88, + 0x90, 0x43, 0x20, 0x80, 0x3c, 0x00, 0xe8, 0xcb, + 0x00, 0x00, 0x02, 0xe0, 0x21, 0x88, 0x11, 0x43, + 0x21, 0x80, 0x11, 0x98, 0x39, 0x1c, 0xe0, 0x62, + 0x05, 0x98, 0xf8, 0xf7, 0xd0, 0xfc, 0x01, 0x1c, + 0x2b, 0x1c, 0x38, 0x1c, 0x06, 0x9a, 0xfe, 0xf7, + 0x20, 0xf9, 0x60, 0x80, 0x06, 0x22, 0x20, 0x1d, + 0x0f, 0x49, 0xf3, 0xf7, 0x72, 0xfc, 0x23, 0x1c, + 0x08, 0x98, 0x30, 0x33, 0x18, 0x70, 0x0e, 0x98, + 0x0c, 0x49, 0x58, 0x70, 0x65, 0x63, 0x3c, 0x00, + 0x24, 0xcc, 0x00, 0x00, 0x00, 0x20, 0x02, 0x90, + 0x01, 0x22, 0x04, 0x92, 0x09, 0x48, 0x03, 0x91, + 0x5a, 0x78, 0x01, 0x88, 0x01, 0x92, 0x00, 0x91, + 0x19, 0x78, 0x24, 0x3b, 0x30, 0x1c, 0x62, 0x6b, + 0xfe, 0xf7, 0xa8, 0xfe, 0x09, 0xb0, 0xf0, 0xbd, + 0xd4, 0xe4, 0x01, 0x00, 0x12, 0x61, 0x01, 0x00, + 0x5d, 0x4e, 0x00, 0x00, 0x48, 0x7b, 0x01, 0x00, + 0xff, 0xb5, 0x87, 0xb0, 0x10, 0x98, 0x12, 0xaf, + 0x3c, 0x00, 0x60, 0xcc, 0x00, 0x00, 0x8c, 0x46, + 0xa2, 0xcf, 0x4c, 0x23, 0x30, 0x4c, 0x6b, 0x43, + 0x1c, 0x19, 0x16, 0x1c, 0x15, 0x9a, 0x27, 0x85, + 0x27, 0x1c, 0x30, 0x37, 0x06, 0x97, 0x05, 0x97, + 0x00, 0x23, 0x3b, 0x73, 0x05, 0x9f, 0x78, 0x73, + 0x11, 0x98, 0x27, 0x1c, 0x60, 0x64, 0x61, 0x60, + 0x22, 0x60, 0x40, 0x37, 0x3e, 0x70, 0x61, 0x46, + 0x61, 0x87, 0x07, 0x98, 0x31, 0x1c, 0xf8, 0xf7, + 0x80, 0xfc, 0x3c, 0x00, 0x9c, 0xcc, 0x00, 0x00, + 0x05, 0x99, 0xc8, 0x73, 0x0a, 0x98, 0x78, 0x70, + 0x30, 0x1c, 0xfe, 0xf7, 0x73, 0xf8, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x00, 0xe0, 0x00, 0x20, + 0x41, 0x00, 0x02, 0x20, 0x01, 0x40, 0x11, 0x9a, + 0x01, 0x20, 0x00, 0x2a, 0x00, 0xd1, 0x00, 0x20, + 0x08, 0x43, 0x38, 0x72, 0x20, 0x1c, 0x2e, 0x30, + 0x07, 0x99, 0xfd, 0xf7, 0xcf, 0xff, 0x28, 0x1c, + 0x04, 0xf0, 0xae, 0xf8, 0x3c, 0x00, 0xd8, 0xcc, + 0x00, 0x00, 0xfe, 0xf7, 0xfe, 0xff, 0x4c, 0x22, + 0x12, 0x4b, 0x6a, 0x43, 0xd2, 0x18, 0x01, 0x21, + 0x09, 0x03, 0x2a, 0x32, 0x00, 0x28, 0x04, 0xd0, + 0x10, 0x1c, 0x12, 0x88, 0x8a, 0x43, 0x02, 0x80, + 0x02, 0xe0, 0x10, 0x88, 0x08, 0x43, 0x10, 0x80, + 0x0b, 0x49, 0x00, 0x20, 0x03, 0x91, 0x06, 0x99, + 0x02, 0x90, 0x00, 0x22, 0x04, 0x92, 0x08, 0x48, + 0x0a, 0x7b, 0x41, 0x88, 0x23, 0x1c, 0x3c, 0x00, + 0x14, 0xcd, 0x00, 0x00, 0x01, 0x92, 0x00, 0x91, + 0x79, 0x78, 0x08, 0x33, 0x28, 0x1c, 0x62, 0x68, + 0xfe, 0xf7, 0x38, 0xfe, 0x0b, 0xb0, 0xf0, 0xbd, + 0x58, 0xe3, 0x01, 0x00, 0x75, 0x4f, 0x00, 0x00, + 0x3c, 0x7c, 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, + 0x01, 0x28, 0x27, 0xd0, 0x80, 0x28, 0x30, 0xd1, + 0xe0, 0x6c, 0x00, 0x28, 0x08, 0xd0, 0x69, 0x20, + 0x00, 0x5d, 0x18, 0x49, 0xc0, 0x00, 0x40, 0x18, + 0x3c, 0x00, 0x50, 0xcd, 0x00, 0x00, 0x04, 0x30, + 0x01, 0x68, 0x01, 0x31, 0x01, 0x60, 0x20, 0x1c, + 0xff, 0xf7, 0xe9, 0xfb, 0x13, 0x4d, 0x50, 0x3d, + 0xe8, 0x68, 0x00, 0x28, 0x05, 0xd0, 0x2e, 0x20, + 0x00, 0x5d, 0xfe, 0xf7, 0x10, 0xf8, 0x02, 0xf0, + 0x42, 0xfe, 0x20, 0x1c, 0x61, 0x68, 0xf3, 0xf7, + 0x2f, 0xfb, 0x40, 0x34, 0x60, 0x78, 0x00, 0x28, + 0x02, 0xd1, 0x06, 0xf0, 0x12, 0xf8, 0xa8, 0x60, + 0xb0, 0xbd, 0x3c, 0x00, 0x8c, 0xcd, 0x00, 0x00, + 0x20, 0x06, 0x00, 0x0e, 0x81, 0x28, 0xfa, 0xd1, + 0x22, 0x0c, 0x20, 0x04, 0x00, 0x0e, 0x02, 0x21, + 0xfe, 0xf7, 0xe6, 0xfd, 0xb0, 0xbd, 0x0a, 0x21, + 0x0c, 0x20, 0xf4, 0xf7, 0x7d, 0xfa, 0xb0, 0xbd, + 0x9c, 0x7b, 0x01, 0x00, 0xf8, 0xb5, 0x18, 0x4e, + 0x18, 0x4f, 0x05, 0x1c, 0x34, 0x79, 0xb8, 0x79, + 0x00, 0x90, 0x20, 0x1c, 0xf5, 0xf7, 0x7c, 0xff, + 0x00, 0x28, 0x06, 0xd0, 0x3c, 0x00, 0xc8, 0xcd, + 0x00, 0x00, 0x12, 0x48, 0x38, 0x38, 0x40, 0x68, + 0x85, 0x42, 0x01, 0xd1, 0x00, 0x2d, 0x03, 0xd1, + 0x10, 0x21, 0x86, 0x20, 0xf4, 0xf7, 0x63, 0xfa, + 0x0d, 0x49, 0x00, 0x20, 0x38, 0x39, 0x48, 0x60, + 0x04, 0x21, 0x20, 0x1c, 0xff, 0xf7, 0x59, 0xfc, + 0x04, 0x21, 0x20, 0x1c, 0xf5, 0xf7, 0xeb, 0xfe, + 0x0c, 0x21, 0x06, 0x4a, 0x61, 0x43, 0x30, 0x3a, + 0x89, 0x18, 0x0c, 0x71, 0x04, 0x20, 0x3c, 0x00, + 0x04, 0xce, 0x00, 0x00, 0x30, 0x71, 0x00, 0x98, + 0xb8, 0x71, 0x0f, 0x20, 0xff, 0xf7, 0xa6, 0xfd, + 0xf8, 0xbd, 0x00, 0x00, 0xa4, 0x7a, 0x01, 0x00, + 0x20, 0x10, 0x07, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x0f, 0x20, 0xff, 0xf7, 0xc1, 0xfd, 0xf5, 0xf7, + 0x3b, 0xff, 0x01, 0x25, 0x00, 0x28, 0x00, 0xd0, + 0x00, 0x25, 0x16, 0x4e, 0xb0, 0x79, 0x16, 0x4f, + 0x00, 0x90, 0x38, 0x79, 0x04, 0x28, 0x01, 0xd1, + 0x3c, 0x00, 0x40, 0xce, 0x00, 0x00, 0x00, 0x2c, + 0x03, 0xd1, 0x11, 0x21, 0x86, 0x20, 0xf4, 0xf7, + 0x2c, 0xfa, 0x10, 0x48, 0x29, 0x06, 0x38, 0x38, + 0x44, 0x60, 0x09, 0x0e, 0x0c, 0x1c, 0x04, 0x20, + 0xff, 0xf7, 0x21, 0xfc, 0x03, 0x21, 0x20, 0x1c, + 0xff, 0xf7, 0x41, 0xfc, 0x21, 0x1c, 0x04, 0x20, + 0xf5, 0xf7, 0xaf, 0xfe, 0x0c, 0x21, 0x07, 0x4a, + 0x69, 0x43, 0x04, 0x20, 0x30, 0x3a, 0x89, 0x18, + 0x08, 0x71, 0x3c, 0x00, 0x7c, 0xce, 0x00, 0x00, + 0x3c, 0x71, 0x00, 0x98, 0xb0, 0x71, 0x20, 0x1c, + 0xff, 0xf7, 0x50, 0xfd, 0x04, 0x20, 0xf8, 0xbd, + 0x20, 0x10, 0x07, 0x00, 0xa4, 0x7a, 0x01, 0x00, + 0x0c, 0x23, 0x02, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x80, 0x68, 0x70, 0x47, 0x74, 0x7a, 0x01, 0x00, + 0x60, 0x30, 0xc1, 0x79, 0x80, 0x79, 0x81, 0x42, + 0x01, 0xd9, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xce, + 0x00, 0x00, 0x01, 0x48, 0x80, 0x68, 0x70, 0x47, + 0x00, 0x00, 0x4c, 0x7b, 0x01, 0x00, 0x38, 0xb5, + 0x69, 0x21, 0x09, 0x5c, 0x18, 0x23, 0x10, 0x4a, + 0x59, 0x43, 0x89, 0x18, 0x8a, 0x68, 0x01, 0x32, + 0x8a, 0x60, 0x4b, 0x69, 0xd2, 0x1a, 0xcb, 0x68, + 0x93, 0x42, 0x00, 0xd2, 0xca, 0x60, 0x00, 0x22, + 0x0b, 0x4c, 0x02, 0x60, 0x22, 0x1c, 0x20, 0x32, + 0x95, 0x79, 0x00, 0xab, 0x1d, 0x70, 0x3c, 0x00, + 0xf4, 0xce, 0x00, 0x00, 0xd2, 0x79, 0x5a, 0x70, + 0x0a, 0x68, 0x00, 0x2a, 0x01, 0xd1, 0x48, 0x60, + 0x00, 0xe0, 0x10, 0x60, 0x00, 0xab, 0x08, 0x60, + 0x18, 0x88, 0xe0, 0x84, 0x38, 0xbd, 0x00, 0x00, + 0xc4, 0x7b, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x18, 0x23, 0x0a, 0x49, 0x58, 0x43, 0x41, 0x18, + 0x08, 0x69, 0x01, 0x30, 0x08, 0x61, 0x48, 0x68, + 0x00, 0x28, 0x09, 0xd0, 0x48, 0x69, 0x01, 0x30, + 0x3c, 0x00, 0x30, 0xcf, 0x00, 0x00, 0x48, 0x61, + 0x48, 0x68, 0x02, 0x68, 0x4a, 0x60, 0x00, 0x2a, + 0x00, 0xd1, 0x0a, 0x60, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0xc4, 0x7b, 0x01, 0x00, 0xf8, 0xb5, + 0x12, 0x4e, 0x10, 0x4d, 0x0f, 0x4c, 0x0a, 0x27, + 0x21, 0x1c, 0x00, 0x20, 0xe0, 0x60, 0x2a, 0x31, + 0x22, 0x1c, 0x18, 0x32, 0xa1, 0x60, 0x62, 0x61, + 0x27, 0x82, 0x0c, 0x4a, 0xe0, 0x61, 0xa2, 0x61, + 0x60, 0x62, 0x3c, 0x00, 0x6c, 0xcf, 0x00, 0x00, + 0x06, 0x20, 0x20, 0x84, 0x08, 0x1c, 0xfe, 0xf7, + 0xd7, 0xf9, 0x20, 0x1c, 0x08, 0x30, 0xf5, 0xf7, + 0x01, 0xff, 0x4c, 0x3c, 0xac, 0x42, 0x70, 0x80, + 0xe5, 0xd1, 0xff, 0x20, 0x30, 0x70, 0xf8, 0xbd, + 0x88, 0xe4, 0x01, 0x00, 0x0c, 0xe3, 0x01, 0x00, + 0x3c, 0x7c, 0x01, 0x00, 0x12, 0x61, 0x01, 0x00, + 0xf8, 0xb5, 0x04, 0x1c, 0x0b, 0x48, 0x0e, 0x1c, + 0x17, 0x1c, 0x44, 0x70, 0x3c, 0x00, 0xa8, 0xcf, + 0x00, 0x00, 0x05, 0xf0, 0x00, 0xff, 0x05, 0x1c, + 0x39, 0x1c, 0x30, 0x1c, 0xfd, 0xf7, 0xab, 0xff, + 0x0c, 0x21, 0x05, 0x4a, 0x28, 0x18, 0x0a, 0x30, + 0x61, 0x43, 0x08, 0x32, 0x50, 0x50, 0x03, 0x48, + 0x89, 0x18, 0x00, 0x68, 0x88, 0x60, 0xf8, 0xbd, + 0x00, 0x00, 0x6c, 0x7a, 0x01, 0x00, 0x78, 0x6e, + 0x01, 0x00, 0x70, 0xb5, 0x0b, 0x4e, 0x05, 0x1c, + 0x70, 0x78, 0xff, 0x28, 0x0f, 0xd0, 0x3c, 0x00, + 0xe4, 0xcf, 0x00, 0x00, 0x0c, 0x23, 0x08, 0x4c, + 0x58, 0x43, 0x08, 0x34, 0x20, 0x58, 0x05, 0xf0, + 0x1d, 0xfe, 0x00, 0x28, 0x06, 0xd1, 0x70, 0x78, + 0x0c, 0x23, 0x58, 0x43, 0x00, 0x19, 0x81, 0x68, + 0x29, 0x43, 0x81, 0x60, 0x70, 0xbd, 0x00, 0x00, + 0x6c, 0x7a, 0x01, 0x00, 0x80, 0xb5, 0x30, 0x21, + 0x01, 0x48, 0xf3, 0xf7, 0x43, 0xfa, 0x80, 0xbd, + 0xec, 0xe5, 0x01, 0x00, 0x10, 0xb5, 0x05, 0xf0, + 0x3c, 0x00, 0x20, 0xd0, 0x00, 0x00, 0xc5, 0xfe, + 0x0a, 0x49, 0x44, 0x18, 0x0c, 0xe0, 0x20, 0x1c, + 0x05, 0xf0, 0xf7, 0xfd, 0x00, 0x28, 0x07, 0xd0, + 0xf5, 0xf7, 0x51, 0xfe, 0x00, 0x28, 0x03, 0xd0, + 0x13, 0x21, 0x86, 0x20, 0xf4, 0xf7, 0x31, 0xf9, + 0xf5, 0xf7, 0x49, 0xfe, 0x00, 0x28, 0xee, 0xd1, + 0x10, 0xbd, 0xb0, 0x36, 0x00, 0x00, 0xff, 0xb5, + 0x8b, 0xb0, 0x19, 0x9b, 0x0d, 0x1c, 0x04, 0x1c, + 0x1a, 0x20, 0x3c, 0x00, 0x5c, 0xd0, 0x00, 0x00, + 0x00, 0x2b, 0x16, 0x99, 0x00, 0xd1, 0x18, 0x20, + 0x01, 0x90, 0x14, 0x98, 0x00, 0x28, 0x27, 0xd0, + 0xff, 0x20, 0x19, 0x9b, 0x01, 0x30, 0x00, 0x2b, + 0x01, 0xd1, 0x18, 0x23, 0x00, 0xe0, 0x1a, 0x23, + 0x04, 0x33, 0x82, 0x42, 0x04, 0xd3, 0xd0, 0x1a, + 0x40, 0x08, 0x40, 0x00, 0x00, 0x04, 0x00, 0x0c, + 0x0d, 0x90, 0x6a, 0x48, 0x00, 0x88, 0xc2, 0x1a, + 0x12, 0x04, 0x12, 0x0c, 0x3c, 0x00, 0x98, 0xd0, + 0x00, 0x00, 0x04, 0x92, 0x00, 0x29, 0x08, 0xd0, + 0x89, 0x79, 0x66, 0x4a, 0x49, 0x00, 0x51, 0x5a, + 0x04, 0x9a, 0x51, 0x1a, 0x0a, 0x04, 0x12, 0x0c, + 0x04, 0x92, 0x04, 0x9a, 0x82, 0x42, 0x05, 0xd9, + 0x00, 0x20, 0x04, 0x90, 0x02, 0xe0, 0x60, 0x48, + 0x04, 0x90, 0x0d, 0x90, 0x01, 0x98, 0x01, 0x04, + 0x09, 0x0c, 0x0a, 0x91, 0x00, 0x20, 0xf4, 0xf7, + 0x84, 0xfa, 0x00, 0x90, 0x00, 0x68, 0x3c, 0x00, + 0xd4, 0xd0, 0x00, 0x00, 0x00, 0x26, 0x06, 0x90, + 0x20, 0x60, 0x00, 0x20, 0x05, 0x90, 0x0e, 0x98, + 0x00, 0x24, 0x00, 0x05, 0x00, 0x0c, 0x09, 0x90, + 0x1a, 0x98, 0x0d, 0x9f, 0x40, 0x07, 0x40, 0x0f, + 0x08, 0x90, 0x07, 0x94, 0x03, 0x95, 0x00, 0x2d, + 0x0d, 0xd0, 0x28, 0x89, 0xb8, 0x42, 0x04, 0xd8, + 0x36, 0x18, 0x3f, 0x1a, 0x07, 0xd0, 0xed, 0x68, + 0xf5, 0xe7, 0x39, 0x04, 0x09, 0x0c, 0x28, 0x1c, + 0x3c, 0x00, 0x10, 0xd1, 0x00, 0x00, 0xf4, 0xf7, + 0x38, 0xfb, 0xef, 0xe7, 0x00, 0x2e, 0x02, 0xd1, + 0x07, 0x99, 0x00, 0x29, 0x71, 0xd1, 0x27, 0x1c, + 0x6c, 0x20, 0xf4, 0xf7, 0x88, 0xfb, 0x07, 0x99, + 0x04, 0x1c, 0x00, 0x29, 0x20, 0xd1, 0x07, 0x94, + 0x00, 0x20, 0xa0, 0x61, 0x18, 0x98, 0x27, 0x1c, + 0x60, 0x60, 0x17, 0x98, 0x24, 0x37, 0xa0, 0x60, + 0x06, 0x98, 0x20, 0x61, 0x15, 0x98, 0x0f, 0xc8, + 0x0f, 0xc7, 0x3c, 0x00, 0x4c, 0xd1, 0x00, 0x00, + 0x14, 0x98, 0x5c, 0x21, 0x60, 0x63, 0x09, 0x98, + 0x08, 0x53, 0x19, 0x98, 0x69, 0x21, 0xe0, 0x63, + 0x1b, 0x98, 0x08, 0x55, 0x1c, 0x98, 0x60, 0x65, + 0x19, 0x98, 0x00, 0x28, 0x23, 0xd0, 0x08, 0x98, + 0x06, 0x99, 0x08, 0x83, 0x1f, 0xe0, 0x6c, 0x22, + 0x20, 0x1c, 0x07, 0x99, 0xf3, 0xf7, 0x1a, 0xfa, + 0x3c, 0x60, 0x01, 0x98, 0x62, 0x21, 0x30, 0x18, + 0xc8, 0x53, 0x15, 0x98, 0x3c, 0x00, 0x88, 0xd1, + 0x00, 0x00, 0x40, 0x21, 0x80, 0x7a, 0xc8, 0x55, + 0x00, 0x20, 0xb8, 0x63, 0x06, 0x98, 0x0a, 0x99, + 0xf4, 0xf7, 0x1f, 0xfa, 0xf8, 0x60, 0x02, 0x99, + 0xf4, 0xf7, 0x3b, 0xf9, 0x20, 0x1c, 0x40, 0x30, + 0x81, 0x8b, 0x05, 0x9a, 0x12, 0x07, 0x12, 0x0f, + 0x11, 0x43, 0x81, 0x83, 0x03, 0x98, 0x5e, 0x21, + 0x02, 0x90, 0x01, 0x98, 0x22, 0x4a, 0x30, 0x18, + 0x08, 0x53, 0x12, 0x68, 0x01, 0x21, 0x3c, 0x00, + 0xc4, 0xd1, 0x00, 0x00, 0x08, 0x1c, 0x00, 0x2a, + 0x00, 0xd0, 0x1b, 0x98, 0x00, 0x06, 0x04, 0x9a, + 0x00, 0x0e, 0x96, 0x42, 0x03, 0xd9, 0x2c, 0x22, + 0x11, 0x55, 0x1b, 0x49, 0x04, 0xe0, 0x15, 0x99, + 0x2c, 0x22, 0x09, 0x7a, 0x11, 0x55, 0x19, 0x49, + 0x08, 0x5c, 0x66, 0x21, 0x08, 0x55, 0x1c, 0x98, + 0x00, 0x28, 0x01, 0xd0, 0x1f, 0x20, 0x08, 0x55, + 0x00, 0x2d, 0x03, 0xd0, 0xe8, 0x68, 0x03, 0x90, + 0x3c, 0x00, 0x00, 0xd2, 0x00, 0x00, 0x00, 0x20, + 0x00, 0xe0, 0x09, 0xe0, 0xe8, 0x60, 0x05, 0x98, + 0x00, 0x26, 0x01, 0x30, 0x00, 0x04, 0x00, 0x0c, + 0x0d, 0x9f, 0x05, 0x90, 0x03, 0x9d, 0x6d, 0xe7, + 0x00, 0x98, 0xe0, 0x60, 0x02, 0x99, 0xf4, 0xf7, + 0xfa, 0xf8, 0x00, 0x20, 0x20, 0x60, 0x01, 0x21, + 0xa1, 0x63, 0x60, 0x34, 0x60, 0x80, 0x07, 0x98, + 0x0f, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x06, 0x61, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0xd2, 0x00, 0x00, + 0x5c, 0x43, 0x01, 0x00, 0x38, 0x09, 0x00, 0x00, + 0x18, 0x67, 0x01, 0x00, 0x0e, 0x61, 0x01, 0x00, + 0x0a, 0x61, 0x01, 0x00, 0x01, 0x48, 0x00, 0x68, + 0x70, 0x47, 0x00, 0x00, 0xc4, 0x6a, 0x01, 0x00, + 0x02, 0x49, 0x09, 0x1d, 0x03, 0xc9, 0x40, 0x18, + 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, + 0x01, 0x48, 0x00, 0x69, 0x70, 0x47, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0x3c, 0x00, 0x78, 0xd2, + 0x00, 0x00, 0x01, 0x48, 0x40, 0x69, 0x70, 0x47, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0x01, 0x48, + 0x80, 0x69, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x4e, 0x00, 0x20, + 0x35, 0x1c, 0x40, 0x35, 0xf0, 0x63, 0x0d, 0xe0, + 0xa0, 0x68, 0xf4, 0xf7, 0x7a, 0xf9, 0xb3, 0x6d, + 0x00, 0x2b, 0x04, 0xd0, 0x00, 0x22, 0x01, 0x20, + 0x61, 0x6b, 0xf3, 0xf7, 0x95, 0xf8, 0x3c, 0x00, + 0xb4, 0xd2, 0x00, 0x00, 0x20, 0x1c, 0xf4, 0xf7, + 0x9d, 0xfa, 0x28, 0x1c, 0xfa, 0xf7, 0x42, 0xfd, + 0x04, 0x1c, 0xec, 0xd1, 0x70, 0xbd, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0xf8, 0xb5, 0x1a, 0x4f, + 0x00, 0x26, 0xf8, 0x6b, 0x00, 0x28, 0x2c, 0xd0, + 0x38, 0x1c, 0x40, 0x30, 0x00, 0x90, 0x1d, 0xe0, + 0x16, 0x48, 0xb9, 0x6b, 0x02, 0xf0, 0x5c, 0xf8, + 0x00, 0x22, 0x20, 0x1c, 0x14, 0x49, 0x03, 0xf0, + 0x3c, 0x00, 0xf0, 0xd2, 0x00, 0x00, 0x7b, 0xff, + 0x05, 0x1c, 0x04, 0xd1, 0x38, 0x6a, 0x01, 0x30, + 0x38, 0x62, 0x01, 0x36, 0x0d, 0xe0, 0xa0, 0x68, + 0xf4, 0xf7, 0x49, 0xf9, 0xbb, 0x6d, 0x00, 0x2b, + 0x04, 0xd0, 0x00, 0x22, 0x28, 0x1c, 0x61, 0x6b, + 0xf3, 0xf7, 0x64, 0xf8, 0x20, 0x1c, 0xf4, 0xf7, + 0x6c, 0xfa, 0x00, 0x98, 0xfa, 0xf7, 0x11, 0xfd, + 0x04, 0x1c, 0xdc, 0xd1, 0x07, 0x48, 0xb9, 0x6b, + 0x02, 0xf0, 0x3c, 0x00, 0x2c, 0xd3, 0x00, 0x00, + 0x25, 0xf8, 0x00, 0x20, 0xf8, 0x63, 0x30, 0x1c, + 0xf8, 0xbd, 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x11, 0x30, 0x00, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0xc8, 0x63, 0x70, 0x47, 0xc4, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0x05, 0x4a, 0x00, 0x21, + 0x1c, 0x23, 0x43, 0x43, 0x9b, 0x18, 0x01, 0x30, + 0x04, 0x28, 0xd9, 0x66, 0x3c, 0x00, 0x68, 0xd3, + 0x00, 0x00, 0xf8, 0xdb, 0xfc, 0xf7, 0xfd, 0xfc, + 0x80, 0xbd, 0xc4, 0x69, 0x01, 0x00, 0x01, 0x49, + 0xc8, 0x64, 0x70, 0x47, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x01, 0x49, 0x88, 0x64, 0x70, 0x47, + 0x00, 0x00, 0xc4, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0d, 0x1c, 0x21, 0x1c, 0x02, 0x8e, + 0x80, 0x6a, 0x40, 0x31, 0xf3, 0xf7, 0x2f, 0xf8, + 0x00, 0x28, 0x16, 0xd1, 0x02, 0x21, 0x3c, 0x00, + 0xa4, 0xd3, 0x00, 0x00, 0x20, 0x1c, 0xf4, 0xf7, + 0x6f, 0xfa, 0xe2, 0x69, 0xc0, 0x00, 0x10, 0x18, + 0x82, 0x8b, 0xab, 0x88, 0x9a, 0x42, 0x04, 0xd1, + 0x82, 0x69, 0x2b, 0x68, 0x9a, 0x42, 0x08, 0xd2, + 0x01, 0xe0, 0x9a, 0x42, 0x05, 0xd2, 0x00, 0x21, + 0x18, 0x30, 0x0c, 0xcd, 0x0c, 0xc0, 0x00, 0xe0, + 0x01, 0x21, 0x08, 0x1c, 0xb0, 0xbd, 0x00, 0x00, + 0xf8, 0xb5, 0x06, 0x1c, 0x00, 0x27, 0x44, 0x68, + 0x3c, 0x00, 0xe0, 0xd3, 0x00, 0x00, 0x0f, 0xe0, + 0x09, 0x49, 0x48, 0x6a, 0x01, 0x30, 0x48, 0x62, + 0xa0, 0x69, 0x00, 0x28, 0x02, 0xd0, 0xf4, 0xf7, + 0x00, 0xfa, 0xa7, 0x61, 0x26, 0x62, 0x25, 0x68, + 0x20, 0x1c, 0xff, 0xf7, 0x52, 0xfb, 0x2c, 0x1c, + 0x00, 0x2c, 0xed, 0xd1, 0xf8, 0xbd, 0xc4, 0x69, + 0x01, 0x00, 0x03, 0x30, 0x07, 0x4a, 0x81, 0x08, + 0x13, 0x68, 0x50, 0x68, 0x1b, 0x68, 0x89, 0x00, + 0x09, 0x18, 0x3c, 0x00, 0x1c, 0xd4, 0x00, 0x00, + 0x8b, 0x42, 0x01, 0xd3, 0x51, 0x60, 0x00, 0xe0, + 0x00, 0x20, 0x90, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x8c, 0x6e, 0x01, 0x00, 0x70, 0xb5, 0x12, 0x4e, + 0x80, 0x38, 0xc5, 0x00, 0x70, 0x59, 0x0c, 0x1c, + 0x00, 0x28, 0x04, 0xd1, 0x01, 0x21, 0x0d, 0x20, + 0xf3, 0xf7, 0x2e, 0xff, 0x0d, 0xe0, 0x20, 0x69, + 0x00, 0x28, 0x05, 0xd1, 0xa8, 0x19, 0x81, 0x88, + 0xe0, 0x68, 0x01, 0xf0, 0x3c, 0x00, 0x58, 0xd4, + 0x00, 0x00, 0x47, 0xfa, 0x20, 0x61, 0x71, 0x59, + 0x20, 0x1c, 0xf2, 0xf7, 0xbb, 0xff, 0x04, 0x1c, + 0x00, 0x2c, 0x07, 0xd0, 0xe0, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0xf4, 0xf7, 0x92, 0xf8, 0x20, 0x1c, + 0xf4, 0xf7, 0xbd, 0xf9, 0x70, 0xbd, 0x54, 0x42, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, + 0x0e, 0x49, 0x06, 0x22, 0xf3, 0xf7, 0x35, 0xf8, + 0x00, 0x26, 0xe6, 0x61, 0x66, 0x62, 0x3c, 0x00, + 0x94, 0xd4, 0x00, 0x00, 0x07, 0x20, 0x30, 0x21, + 0x08, 0x55, 0xe6, 0x63, 0x28, 0x1c, 0xf8, 0xf7, + 0x6b, 0xf8, 0xa0, 0x76, 0x20, 0x1c, 0x14, 0x30, + 0x06, 0x22, 0x29, 0x1c, 0xf3, 0xf7, 0x24, 0xf8, + 0x06, 0x22, 0x29, 0x1c, 0xa0, 0x18, 0xf3, 0xf7, + 0x1f, 0xf8, 0x26, 0x61, 0x70, 0xbd, 0x00, 0x00, + 0x12, 0x61, 0x01, 0x00, 0x80, 0xb5, 0xfd, 0xf7, + 0x85, 0xfe, 0x80, 0xbd, 0x01, 0x49, 0x48, 0x60, + 0x3c, 0x00, 0xd0, 0xd4, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, 0x02, 0x49, + 0x80, 0xb5, 0x49, 0x68, 0xf2, 0xf7, 0x7c, 0xff, + 0x80, 0xbd, 0xe4, 0x65, 0x01, 0x00, 0x80, 0xb5, + 0xf4, 0xf7, 0xe5, 0xf9, 0x07, 0x49, 0x07, 0x48, + 0x0e, 0xc9, 0x0e, 0xc0, 0x18, 0x38, 0x00, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x02, 0xf0, 0xb7, 0xfa, + 0x80, 0xbd, 0x02, 0xf0, 0x9e, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xd5, 0x00, 0x00, + 0xb0, 0x58, 0x01, 0x00, 0x90, 0x73, 0x01, 0x00, + 0x05, 0x49, 0x80, 0xb5, 0x89, 0x68, 0x00, 0x20, + 0x00, 0x29, 0x00, 0xd1, 0x03, 0x20, 0x00, 0x06, + 0x00, 0x0e, 0xfa, 0xf7, 0xe3, 0xfb, 0x80, 0xbd, + 0x60, 0x6c, 0x01, 0x00, 0x80, 0xb5, 0x03, 0x48, + 0x06, 0x22, 0x03, 0x49, 0xf2, 0xf7, 0xde, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x40, 0x80, 0x07, 0x00, + 0x12, 0x61, 0x01, 0x00, 0x3c, 0x00, 0x48, 0xd5, + 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x0c, 0x4d, + 0x0b, 0x1c, 0x21, 0x1c, 0x00, 0x20, 0x0c, 0x3d, + 0x00, 0x29, 0x09, 0x4c, 0x05, 0xd0, 0x28, 0x78, + 0x21, 0x1c, 0x10, 0x80, 0x02, 0x1c, 0x18, 0x1c, + 0x07, 0xe0, 0x11, 0x88, 0x0e, 0x29, 0x07, 0xd8, + 0x0a, 0x06, 0x12, 0x0e, 0x19, 0x1c, 0x20, 0x1c, + 0x2a, 0x70, 0xf2, 0xf7, 0xbe, 0xff, 0x01, 0x20, + 0xb0, 0xbd, 0xb0, 0x69, 0x01, 0x00, 0x3c, 0x00, + 0x84, 0xd5, 0x00, 0x00, 0x10, 0xb5, 0x00, 0x20, + 0x0a, 0x4a, 0x01, 0x21, 0x11, 0x60, 0x0a, 0x4c, + 0x0a, 0xe0, 0x02, 0x1c, 0x01, 0x6a, 0x50, 0x32, + 0x91, 0x42, 0x05, 0xd0, 0x61, 0x78, 0x3c, 0x23, + 0x59, 0x43, 0x09, 0x19, 0x04, 0x31, 0x01, 0x62, + 0x04, 0xf0, 0xba, 0xfb, 0x00, 0x28, 0xf0, 0xd1, + 0x10, 0xbd, 0x00, 0x00, 0xdc, 0x62, 0x01, 0x00, + 0x68, 0x61, 0x01, 0x00, 0x04, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0xc0, 0xd5, 0x00, 0x00, 0x00, 0x68, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x1c, 0x10, 0x20, + 0x04, 0xf0, 0xc7, 0xfe, 0x80, 0xbd, 0x28, 0x61, + 0x01, 0x00, 0x03, 0x22, 0x11, 0x1f, 0x80, 0xb5, + 0x00, 0x20, 0xfb, 0xf7, 0x76, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x0b, 0xf0, 0xb9, 0xfa, + 0x80, 0xbd, 0xff, 0xb5, 0x83, 0xb0, 0x16, 0x1c, + 0x00, 0x21, 0x01, 0x91, 0x1f, 0x1c, 0x08, 0x21, + 0x02, 0xaa, 0x3c, 0x00, 0xfc, 0xd5, 0x00, 0x00, + 0xfa, 0xf7, 0x0e, 0xff, 0x04, 0x1c, 0x2a, 0xd1, + 0x02, 0x98, 0x41, 0x68, 0x49, 0x00, 0x01, 0xd4, + 0x09, 0x24, 0x24, 0xe0, 0xfa, 0xf7, 0x52, 0xff, + 0x38, 0x60, 0x02, 0x98, 0x41, 0x68, 0x49, 0x02, + 0xcd, 0x0f, 0x29, 0x1c, 0xfa, 0xf7, 0x44, 0xff, + 0x01, 0x1c, 0x30, 0x60, 0x38, 0x68, 0x00, 0x06, + 0x00, 0x0e, 0x00, 0xf0, 0x1b, 0xf8, 0x00, 0x28, + 0x01, 0xd1, 0x0a, 0x24, 0x3c, 0x00, 0x38, 0xd6, + 0x00, 0x00, 0x0f, 0xe0, 0x31, 0x68, 0x02, 0x98, + 0x2b, 0x1c, 0x01, 0xaa, 0xfa, 0xf7, 0xd7, 0xff, + 0x00, 0x28, 0x06, 0xd0, 0x01, 0x98, 0x00, 0x28, + 0x04, 0xd0, 0x04, 0x99, 0x09, 0x68, 0x81, 0x42, + 0x00, 0xd2, 0x03, 0x24, 0x01, 0x98, 0x04, 0x99, + 0x08, 0x60, 0x07, 0xb0, 0x20, 0x1c, 0xf0, 0xbd, + 0x00, 0x00, 0x70, 0xb5, 0x05, 0x1c, 0x0e, 0x1c, + 0x01, 0x24, 0x00, 0xf0, 0x84, 0xff, 0x3c, 0x00, + 0x74, 0xd6, 0x00, 0x00, 0x00, 0x28, 0x08, 0xd0, + 0x03, 0x2d, 0x01, 0xd0, 0x04, 0x2d, 0x04, 0xd1, + 0x03, 0x20, 0xc0, 0x03, 0x86, 0x42, 0x00, 0xd3, + 0x00, 0x24, 0x20, 0x1c, 0x70, 0xbd, 0x00, 0x00, + 0x7c, 0xb5, 0x15, 0x1c, 0x06, 0x1c, 0x0c, 0x1c, + 0x29, 0x1c, 0x6a, 0x46, 0x01, 0xab, 0xff, 0xf7, + 0xa5, 0xff, 0x00, 0x28, 0x02, 0xd1, 0x00, 0x2c, + 0x01, 0xd1, 0x03, 0x20, 0x7c, 0xbd, 0x17, 0x48, + 0x3c, 0x00, 0xb0, 0xd6, 0x00, 0x00, 0x00, 0xab, + 0x06, 0x60, 0x18, 0x79, 0x07, 0x28, 0x21, 0xd2, + 0x02, 0xa3, 0x1b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, + 0x00, 0x00, 0x1d, 0x04, 0x04, 0x06, 0x10, 0x17, + 0x13, 0x00, 0x04, 0x20, 0xed, 0xe7, 0x2a, 0x1c, + 0x21, 0x1c, 0x01, 0x20, 0x00, 0x9b, 0xf2, 0xf7, + 0x81, 0xfe, 0x00, 0x28, 0x12, 0xd1, 0x06, 0x20, + 0xe3, 0xe7, 0x2a, 0x68, 0x00, 0x99, 0x05, 0xe0, + 0x00, 0x98, 0x3c, 0x00, 0xec, 0xd6, 0x00, 0x00, + 0x42, 0x78, 0x81, 0x1c, 0x01, 0xe0, 0x2a, 0x68, + 0x69, 0x46, 0x20, 0x1c, 0xf2, 0xf7, 0xfe, 0xfe, + 0x03, 0xe0, 0x04, 0x21, 0x87, 0x20, 0xf3, 0xf7, + 0xcf, 0xfd, 0x00, 0x20, 0xd0, 0xe7, 0x00, 0x00, + 0xf8, 0x6b, 0x01, 0x00, 0xf7, 0xb5, 0x86, 0xb0, + 0x0e, 0x1c, 0x08, 0x21, 0x05, 0xaa, 0x06, 0x98, + 0xfa, 0xf7, 0x7e, 0xfe, 0x04, 0x1c, 0x45, 0xd1, + 0x05, 0x98, 0x41, 0x68, 0x3c, 0x00, 0x28, 0xd7, + 0x00, 0x00, 0x02, 0x90, 0x49, 0x02, 0xc9, 0x0f, + 0x00, 0x25, 0x04, 0x95, 0x03, 0x91, 0x08, 0x9f, + 0xfa, 0xf7, 0xd5, 0xfe, 0x01, 0x90, 0x02, 0xa9, + 0x03, 0xc9, 0xfa, 0xf7, 0xc6, 0xfe, 0x01, 0x99, + 0x05, 0x29, 0x14, 0xd2, 0x02, 0xa3, 0x5b, 0x5c, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x0e, 0x03, + 0x06, 0x0c, 0x03, 0x00, 0x87, 0x42, 0x0e, 0xd8, + 0x07, 0xe0, 0x87, 0x42, 0x0b, 0xd8, 0x3c, 0x00, + 0x64, 0xd7, 0x00, 0x00, 0x01, 0x25, 0xc0, 0x1b, + 0x04, 0x90, 0x07, 0xe0, 0x87, 0x42, 0x05, 0xd1, + 0x01, 0x25, 0x03, 0xe0, 0x05, 0x21, 0x87, 0x20, + 0xf3, 0xf7, 0x94, 0xfd, 0x00, 0x2d, 0x01, 0xd1, + 0x03, 0x24, 0x15, 0xe0, 0x05, 0x98, 0x41, 0x68, + 0x00, 0x29, 0x69, 0xda, 0x3a, 0x4a, 0x06, 0x99, + 0x11, 0x60, 0xfa, 0xf7, 0x91, 0xfe, 0x07, 0x1c, + 0x05, 0x98, 0x03, 0x99, 0xfa, 0xf7, 0x86, 0xfe, + 0x3c, 0x00, 0xa0, 0xd7, 0x00, 0x00, 0x05, 0x1c, + 0x01, 0x1c, 0x38, 0x1c, 0xff, 0xf7, 0x5f, 0xff, + 0x00, 0x28, 0x01, 0xd1, 0x0a, 0x24, 0x5e, 0xe0, + 0x07, 0x2f, 0x57, 0xd2, 0x02, 0xa3, 0xdb, 0x5d, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x53, 0x04, + 0x04, 0x06, 0x2e, 0x50, 0x48, 0x00, 0x04, 0x24, + 0x51, 0xe0, 0x04, 0x98, 0x00, 0x28, 0x01, 0xd1, + 0x00, 0x27, 0x14, 0xe0, 0x08, 0x99, 0x08, 0x18, + 0x00, 0x04, 0x3c, 0x00, 0xdc, 0xd7, 0x00, 0x00, + 0x00, 0x0c, 0xf4, 0xf7, 0x2b, 0xf8, 0x07, 0x1c, + 0x31, 0x1c, 0x08, 0x9a, 0xf2, 0xf7, 0x86, 0xfe, + 0x08, 0x98, 0x04, 0x99, 0x38, 0x18, 0xf2, 0xf7, + 0x2f, 0xfe, 0x08, 0x98, 0x04, 0x99, 0x3e, 0x1c, + 0x40, 0x18, 0x08, 0x90, 0x31, 0x1c, 0x00, 0x20, + 0x08, 0xaa, 0xf2, 0xf7, 0xec, 0xfd, 0x00, 0x28, + 0x00, 0xd1, 0x05, 0x24, 0x00, 0x2f, 0x2d, 0xd0, + 0x38, 0x1c, 0xf3, 0xf7, 0x3c, 0x00, 0x18, 0xd8, + 0x00, 0x00, 0xed, 0xff, 0x29, 0xe0, 0x03, 0x99, + 0x00, 0x29, 0x04, 0xd0, 0x05, 0x98, 0x40, 0x68, + 0x87, 0x02, 0xbf, 0x0a, 0x00, 0xe0, 0x00, 0x27, + 0x31, 0x1c, 0x28, 0x1c, 0x08, 0x9a, 0xf2, 0xf7, + 0x60, 0xfe, 0x04, 0x99, 0x00, 0x29, 0x03, 0xd0, + 0x08, 0x98, 0x28, 0x18, 0xf2, 0xf7, 0x07, 0xfe, + 0x00, 0x2f, 0x12, 0xd0, 0xf2, 0xf7, 0xcc, 0xfd, + 0x0f, 0xe0, 0x31, 0x1c, 0xa8, 0x1c, 0x3c, 0x00, + 0x54, 0xd8, 0x00, 0x00, 0x08, 0x9a, 0xf2, 0xf7, + 0x4f, 0xfe, 0x08, 0x98, 0x68, 0x70, 0x07, 0xe0, + 0xff, 0xe7, 0x07, 0x24, 0x04, 0xe0, 0x08, 0x24, + 0x03, 0x21, 0x87, 0x20, 0xf3, 0xf7, 0x1a, 0xfd, + 0x20, 0x1c, 0x09, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0xf8, 0x6b, 0x01, 0x00, 0x9e, 0xb5, 0x1c, 0x1c, + 0x00, 0xab, 0x19, 0x72, 0x00, 0x92, 0x00, 0x22, + 0x01, 0x94, 0x69, 0x46, 0xfb, 0xf7, 0x08, 0xfa, + 0x3c, 0x00, 0x90, 0xd8, 0x00, 0x00, 0x9e, 0xbd, + 0x00, 0x00, 0x8f, 0xb5, 0x02, 0x92, 0x00, 0x22, + 0x00, 0x90, 0x01, 0x90, 0x03, 0x91, 0x69, 0x46, + 0x04, 0x20, 0xfb, 0xf7, 0xfc, 0xf9, 0x8f, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x0c, 0x1c, 0x01, 0x28, + 0x0a, 0xd0, 0x03, 0x28, 0x19, 0xd0, 0x04, 0x28, + 0x2c, 0xd1, 0x60, 0x68, 0x01, 0xf0, 0x35, 0xfc, + 0x01, 0x1c, 0x83, 0x20, 0x0c, 0xcc, 0x22, 0xe0, + 0x1c, 0x20, 0x3c, 0x00, 0xcc, 0xd8, 0x00, 0x00, + 0x14, 0x49, 0x60, 0x43, 0x40, 0x18, 0x14, 0x49, + 0x45, 0x18, 0x28, 0x1c, 0xf8, 0xf7, 0x46, 0xfc, + 0xa9, 0x68, 0x00, 0x29, 0x03, 0xd0, 0x22, 0x1c, + 0x08, 0x20, 0x05, 0xf0, 0x71, 0xfe, 0xb0, 0xbd, + 0x20, 0x8c, 0xc8, 0x28, 0x01, 0xd3, 0x04, 0x20, + 0x04, 0xe0, 0x65, 0x28, 0x01, 0xd3, 0x02, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0x20, 0x84, 0x20, 0x1c, + 0x03, 0xf0, 0xdc, 0xfa, 0x3c, 0x00, 0x08, 0xd9, + 0x00, 0x00, 0x22, 0x68, 0xe3, 0x68, 0x01, 0x1c, + 0x82, 0x20, 0xff, 0xf7, 0xb4, 0xff, 0xb0, 0xbd, + 0xa0, 0x21, 0x08, 0x20, 0xf3, 0xf7, 0xc3, 0xfc, + 0xb0, 0xbd, 0xdc, 0x71, 0x01, 0x00, 0x64, 0xee, + 0xff, 0xff, 0x03, 0x48, 0x04, 0x4a, 0x81, 0x68, + 0x51, 0x61, 0xc0, 0x68, 0x90, 0x61, 0x70, 0x47, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0xc0, 0x71, + 0x01, 0x00, 0x03, 0x49, 0x04, 0x4a, 0x3c, 0x00, + 0x44, 0xd9, 0x00, 0x00, 0x08, 0x6b, 0x90, 0x60, + 0x88, 0x68, 0xd0, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x90, 0x5c, 0x01, 0x00, 0xc0, 0x71, 0x01, 0x00, + 0x00, 0xb5, 0xff, 0xf7, 0xf1, 0xff, 0xff, 0xf7, + 0xe3, 0xff, 0x00, 0xbd, 0xb0, 0xb5, 0x0d, 0x1c, + 0x00, 0x28, 0x14, 0xd0, 0x0b, 0x49, 0x0c, 0x4c, + 0x88, 0x68, 0x62, 0x69, 0xc9, 0x68, 0x80, 0x1a, + 0xa2, 0x69, 0x89, 0x1a, 0x40, 0x18, 0x04, 0xd0, + 0x3c, 0x00, 0x80, 0xd9, 0x00, 0x00, 0x64, 0x23, + 0x59, 0x43, 0xf2, 0xf7, 0xc4, 0xfe, 0x20, 0x61, + 0xff, 0xf7, 0xcd, 0xff, 0x20, 0x69, 0x28, 0x60, + 0x01, 0x20, 0xb0, 0xbd, 0x00, 0x20, 0xb0, 0xbd, + 0x00, 0x00, 0xf4, 0x68, 0x01, 0x00, 0xc0, 0x71, + 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, 0x00, 0x28, + 0x17, 0xd0, 0x0c, 0x49, 0x0d, 0x4c, 0x08, 0x6b, + 0xa2, 0x68, 0x89, 0x68, 0x80, 0x1a, 0xe2, 0x68, + 0x89, 0x1a, 0x3c, 0x00, 0xbc, 0xd9, 0x00, 0x00, + 0x40, 0x18, 0x07, 0xd0, 0x22, 0x88, 0x90, 0x42, + 0x04, 0xd9, 0x64, 0x23, 0x59, 0x43, 0xf2, 0xf7, + 0xa1, 0xfe, 0x60, 0x60, 0xff, 0xf7, 0xb6, 0xff, + 0x60, 0x68, 0x28, 0x60, 0x01, 0x20, 0xb0, 0xbd, + 0x00, 0x20, 0xb0, 0xbd, 0x90, 0x5c, 0x01, 0x00, + 0xc0, 0x71, 0x01, 0x00, 0x7c, 0xb5, 0x10, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x00, 0xf0, 0x24, 0xf8, + 0x7c, 0xbd, 0x0f, 0x48, 0x3c, 0x00, 0xf8, 0xd9, + 0x00, 0x00, 0xc0, 0x69, 0x84, 0x68, 0xe0, 0x68, + 0x25, 0x6a, 0xa6, 0x69, 0xf3, 0xf7, 0xe3, 0xfd, + 0xe1, 0x69, 0xf3, 0xf7, 0x06, 0xfd, 0x20, 0x1c, + 0xe2, 0x69, 0x40, 0x30, 0xc1, 0x8b, 0x12, 0x89, + 0x89, 0x18, 0xc1, 0x83, 0x07, 0x49, 0x01, 0x94, + 0x00, 0x91, 0x28, 0x69, 0x33, 0x1c, 0x82, 0x88, + 0x01, 0x68, 0xe0, 0x68, 0xc0, 0x68, 0xf8, 0xf7, + 0x1e, 0xfc, 0xe0, 0xe7, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xda, 0x00, 0x00, 0x84, 0x6a, 0x01, 0x00, + 0x91, 0x5e, 0x00, 0x00, 0xf0, 0xb5, 0x85, 0x69, + 0x06, 0x6a, 0x04, 0x1c, 0xc0, 0x68, 0x85, 0xb0, + 0xc0, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xf3, 0xf7, + 0x57, 0xfc, 0x0a, 0x49, 0x02, 0x95, 0x04, 0x94, + 0x03, 0x91, 0x30, 0x69, 0x82, 0x88, 0x01, 0x68, + 0x26, 0x20, 0x01, 0x92, 0x00, 0x91, 0x43, 0x5d, + 0xe0, 0x68, 0xe1, 0x69, 0x2a, 0x1c, 0x0e, 0x32, + 0x3c, 0x00, 0x70, 0xda, 0x00, 0x00, 0xc0, 0x68, + 0xf8, 0xf7, 0x37, 0xfd, 0x05, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xe9, 0xd9, 0x00, 0x00, 0x10, 0xb5, + 0x14, 0x1c, 0x05, 0x48, 0xfc, 0xf7, 0x7b, 0xfb, + 0xa0, 0x68, 0xf3, 0xf7, 0x9e, 0xfd, 0xe1, 0x68, + 0xc1, 0x60, 0x20, 0x1c, 0xf5, 0xf7, 0xbb, 0xfa, + 0x10, 0xbd, 0xa0, 0x6a, 0x01, 0x00, 0x7c, 0xb5, + 0x04, 0x1c, 0x60, 0x30, 0x02, 0x7b, 0xa1, 0x69, + 0x00, 0x91, 0x3c, 0x00, 0xac, 0xda, 0x00, 0x00, + 0x01, 0x92, 0x22, 0x1c, 0x21, 0x1c, 0x38, 0x31, + 0xa0, 0x68, 0x48, 0x32, 0x0d, 0x1c, 0x63, 0x69, + 0x03, 0xf0, 0x7a, 0xfb, 0x08, 0x21, 0x00, 0x20, + 0xf3, 0xf7, 0x88, 0xfd, 0xe0, 0x60, 0x26, 0x69, + 0xb1, 0x6b, 0x00, 0x29, 0x01, 0xd0, 0x10, 0x23, + 0x00, 0xe0, 0x18, 0x23, 0x05, 0x49, 0x01, 0x94, + 0x00, 0x91, 0x31, 0x68, 0xca, 0x18, 0x08, 0x23, + 0x01, 0x1c, 0x28, 0x1c, 0x3c, 0x00, 0xe8, 0xda, + 0x00, 0x00, 0xf8, 0xf7, 0x20, 0xfd, 0x7c, 0xbd, + 0x00, 0x00, 0x81, 0xda, 0x00, 0x00, 0xf0, 0xb5, + 0x46, 0x68, 0x17, 0x1c, 0x04, 0x1c, 0x01, 0x21, + 0x30, 0x1c, 0x9b, 0xb0, 0xfa, 0xf7, 0x0d, 0xfc, + 0x00, 0x25, 0x00, 0x28, 0x03, 0xd0, 0x13, 0x49, + 0x0a, 0x7a, 0x01, 0x2a, 0x01, 0xd1, 0x01, 0x25, + 0x1c, 0xe0, 0x88, 0x62, 0x4e, 0x61, 0x20, 0x89, + 0xc8, 0x61, 0x60, 0x89, 0x00, 0x28, 0x3c, 0x00, + 0x24, 0xdb, 0x00, 0x00, 0x03, 0xd0, 0x00, 0x20, + 0x08, 0x84, 0x48, 0x84, 0x04, 0xe0, 0xe0, 0x68, + 0x08, 0x84, 0x20, 0x8a, 0x48, 0x84, 0x60, 0x8a, + 0x88, 0x84, 0x08, 0x6b, 0x00, 0x28, 0x03, 0xd1, + 0x01, 0xa8, 0x03, 0xf0, 0x77, 0xfc, 0x04, 0xe0, + 0x01, 0x20, 0x08, 0x61, 0x00, 0x20, 0x02, 0xf0, + 0x39, 0xfb, 0x3d, 0x71, 0x1b, 0xb0, 0x01, 0x20, + 0xf0, 0xbd, 0x00, 0x00, 0xf4, 0x6e, 0x01, 0x00, + 0x3c, 0x00, 0x60, 0xdb, 0x00, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0xf7, 0xf7, 0xe8, 0xfb, 0x00, 0x28, + 0x11, 0xd1, 0x4b, 0x20, 0x00, 0x5d, 0x01, 0x28, + 0x0d, 0xd1, 0x20, 0x1c, 0x04, 0xf0, 0x85, 0xfa, + 0x00, 0x21, 0x20, 0x1c, 0x04, 0xf0, 0xf3, 0xf8, + 0xa0, 0x69, 0x00, 0x21, 0xc2, 0x07, 0xd2, 0x0f, + 0x04, 0x20, 0xf4, 0xf7, 0xd8, 0xf9, 0x10, 0xbd, + 0x00, 0x00, 0x38, 0xb5, 0x04, 0x1c, 0x04, 0xf0, + 0x36, 0xf9, 0x3c, 0x00, 0x9c, 0xdb, 0x00, 0x00, + 0x00, 0x28, 0x03, 0xd0, 0x40, 0x30, 0x80, 0x7a, + 0x00, 0x28, 0x25, 0xd1, 0x0c, 0x20, 0x29, 0x21, + 0x08, 0x55, 0x21, 0x1c, 0x06, 0x22, 0xa0, 0x18, + 0xf2, 0xf7, 0xa0, 0xfc, 0x20, 0x1c, 0x06, 0x22, + 0x0e, 0x49, 0xf2, 0xf7, 0x9b, 0xfc, 0x01, 0x20, + 0xe0, 0x61, 0x60, 0x62, 0x07, 0x20, 0x30, 0x21, + 0x08, 0x55, 0x00, 0x25, 0xe5, 0x63, 0x06, 0x20, + 0x00, 0xab, 0x18, 0x80, 0x3c, 0x00, 0xd8, 0xdb, + 0x00, 0x00, 0xe0, 0x68, 0x00, 0x28, 0x01, 0xd0, + 0xf3, 0xf7, 0xdb, 0xfc, 0x02, 0x21, 0x68, 0x46, + 0xfd, 0xf7, 0x73, 0xfb, 0xe0, 0x60, 0x20, 0x1c, + 0xff, 0xf7, 0x69, 0xfc, 0xe5, 0x60, 0x20, 0x1c, + 0x38, 0xbd, 0x12, 0x61, 0x01, 0x00, 0xfe, 0xb5, + 0x05, 0x1c, 0x0e, 0x1c, 0x15, 0x20, 0x00, 0xab, + 0x98, 0x80, 0x14, 0x21, 0x17, 0x1c, 0x00, 0x20, + 0xf3, 0xf7, 0xe3, 0xfc, 0x02, 0x90, 0x3c, 0x00, + 0x14, 0xdc, 0x00, 0x00, 0x04, 0x68, 0x06, 0x22, + 0x31, 0x1c, 0x60, 0x1d, 0x25, 0x71, 0xf2, 0xf7, + 0x6b, 0xfc, 0x06, 0x22, 0x39, 0x1c, 0x20, 0x1c, + 0x0b, 0x30, 0xf2, 0xf7, 0x65, 0xfc, 0x01, 0xa8, + 0xff, 0xf7, 0x52, 0xfc, 0xfe, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x23, 0xfb, 0xf7, 0x5c, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x05, 0x1c, + 0x08, 0x35, 0x0f, 0x4e, 0x29, 0x1c, 0x04, 0x1c, + 0x3c, 0x00, 0x50, 0xdc, 0x00, 0x00, 0x06, 0x22, + 0x30, 0x1c, 0xf2, 0xf7, 0x50, 0xfc, 0xa0, 0x88, + 0xb0, 0x82, 0x28, 0x1c, 0x05, 0xf0, 0xa1, 0xff, + 0x00, 0x28, 0x0b, 0xd0, 0xe0, 0x88, 0x30, 0x61, + 0x28, 0x1c, 0x04, 0xf0, 0xcc, 0xf8, 0xa1, 0x88, + 0x40, 0x30, 0x41, 0x80, 0x00, 0x20, 0xf4, 0xf7, + 0xb8, 0xf9, 0x02, 0xe0, 0x04, 0x20, 0xf4, 0xf7, + 0xa0, 0xf9, 0x00, 0x20, 0x70, 0xbd, 0x70, 0x7c, + 0x01, 0x00, 0x3c, 0x00, 0x8c, 0xdc, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0xfb, 0xf7, 0xf8, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x04, 0x1c, + 0x04, 0x30, 0x05, 0x1c, 0xfd, 0xf7, 0x32, 0xf8, + 0x00, 0x28, 0x09, 0xd0, 0x00, 0x20, 0xf7, 0xf7, + 0x37, 0xfc, 0x00, 0x28, 0x04, 0xd0, 0x06, 0x22, + 0x01, 0x1c, 0x28, 0x1c, 0xf2, 0xf7, 0x1e, 0xfc, + 0x0a, 0x4e, 0x06, 0x22, 0x29, 0x1c, 0x30, 0x1c, + 0xf2, 0xf7, 0x18, 0xfc, 0x3c, 0x00, 0xc8, 0xdc, + 0x00, 0x00, 0x60, 0x89, 0xf0, 0x82, 0x28, 0x1c, + 0x05, 0xf0, 0x69, 0xff, 0x00, 0x28, 0x03, 0xd0, + 0x02, 0x20, 0xf4, 0xf7, 0x88, 0xf9, 0x02, 0xe0, + 0x05, 0x20, 0xf9, 0xf7, 0xf4, 0xfa, 0x00, 0x20, + 0x70, 0xbd, 0x70, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x00, 0x79, 0x04, 0x28, 0x1c, 0xd2, + 0x60, 0x79, 0x01, 0x28, 0x01, 0xd0, 0x03, 0x28, + 0x04, 0xd1, 0x00, 0x22, 0x01, 0x21, 0x3c, 0x00, + 0x04, 0xdd, 0x00, 0x00, 0xa0, 0x1d, 0xf9, 0xf7, + 0x69, 0xfc, 0x60, 0x79, 0x00, 0x28, 0x04, 0xd1, + 0x22, 0x79, 0x00, 0x21, 0xf9, 0xf7, 0x62, 0xfc, + 0x0a, 0xe0, 0x03, 0x28, 0x08, 0xd1, 0x00, 0x24, + 0x22, 0x1c, 0x00, 0x21, 0x00, 0x20, 0xf9, 0xf7, + 0x59, 0xfc, 0x01, 0x34, 0x04, 0x2c, 0xf7, 0xdb, + 0x01, 0x20, 0x10, 0xbd, 0xf0, 0xb5, 0x97, 0xb0, + 0x17, 0x1c, 0x05, 0x1c, 0x04, 0x30, 0x04, 0x1c, + 0x3c, 0x00, 0x40, 0xdd, 0x00, 0x00, 0x15, 0xaa, + 0x16, 0xa9, 0x05, 0xf0, 0xe2, 0xfe, 0x00, 0x28, + 0x2e, 0xd0, 0x15, 0x98, 0x4b, 0x21, 0x09, 0x5c, + 0x00, 0x29, 0x23, 0xd0, 0x01, 0x29, 0x02, 0xd0, + 0x02, 0x29, 0x1f, 0xd1, 0x01, 0xe0, 0x04, 0xf0, + 0x90, 0xf9, 0xad, 0x7a, 0x13, 0x48, 0x16, 0x9e, + 0x05, 0x80, 0x06, 0x22, 0x21, 0x1c, 0x08, 0x30, + 0xf2, 0xf7, 0xc1, 0xfb, 0x22, 0x1c, 0x31, 0x1c, + 0x02, 0xa8, 0x3c, 0x00, 0x7c, 0xdd, 0x00, 0x00, + 0x00, 0xf0, 0x74, 0xfb, 0x0a, 0x20, 0x0a, 0xa9, + 0x48, 0x72, 0x00, 0xab, 0x9d, 0x80, 0x02, 0x21, + 0x01, 0xa8, 0xfd, 0xf7, 0x9f, 0xfa, 0x05, 0x90, + 0x02, 0xa8, 0xff, 0xf7, 0x95, 0xfb, 0xf3, 0xf7, + 0xf7, 0xf9, 0x00, 0x21, 0x15, 0x98, 0x03, 0xf0, + 0xe1, 0xff, 0x00, 0x20, 0x00, 0xe0, 0x01, 0x20, + 0x38, 0x71, 0x17, 0xb0, 0x01, 0x20, 0xf0, 0xbd, + 0x98, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0xb8, 0xdd, + 0x00, 0x00, 0x80, 0xb5, 0x01, 0x20, 0xfb, 0xf7, + 0x62, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x80, 0x7d, 0x15, 0x1c, 0x0a, 0x1c, + 0xc0, 0x07, 0xc0, 0x17, 0x01, 0x30, 0x21, 0x1c, + 0xf9, 0xf7, 0xfb, 0xfc, 0x00, 0x28, 0x03, 0xd1, + 0x04, 0x20, 0x28, 0x71, 0x01, 0x20, 0xb0, 0xbd, + 0x20, 0x6a, 0xf7, 0xf7, 0x76, 0xfe, 0x60, 0x6a, + 0xf7, 0xf7, 0x7b, 0xfe, 0x20, 0x6a, 0x3c, 0x00, + 0xf4, 0xdd, 0x00, 0x00, 0xfe, 0xf7, 0x88, 0xfa, + 0x00, 0x20, 0xb0, 0xbd, 0x10, 0xb5, 0x14, 0x1c, + 0xc2, 0x79, 0x81, 0x79, 0x80, 0x88, 0xf7, 0xf7, + 0xa1, 0xfa, 0x20, 0x71, 0x01, 0x20, 0x10, 0xbd, + 0x80, 0xb5, 0x01, 0x23, 0xfa, 0xf7, 0x70, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0xf0, 0xb5, 0x04, 0x1c, + 0x08, 0x1c, 0x00, 0x21, 0x0f, 0x28, 0x91, 0xb0, + 0x00, 0xd3, 0x02, 0x21, 0x00, 0x29, 0x41, 0xd1, + 0x3c, 0x00, 0x30, 0xde, 0x00, 0x00, 0xc0, 0x00, + 0x24, 0x4f, 0x10, 0x90, 0xc6, 0x19, 0xb2, 0x88, + 0x21, 0x68, 0x02, 0xa8, 0xf2, 0xf7, 0x5b, 0xfb, + 0x21, 0x89, 0xb0, 0x88, 0x09, 0x1a, 0x00, 0x29, + 0x07, 0xdd, 0x09, 0x04, 0x22, 0x68, 0x09, 0x0c, + 0x10, 0x18, 0xf3, 0xf7, 0xc0, 0xfb, 0x05, 0x1c, + 0x00, 0xe0, 0x00, 0x25, 0xb0, 0x79, 0x80, 0x21, + 0x88, 0x43, 0x17, 0x49, 0x78, 0x31, 0x09, 0x5c, + 0x00, 0x20, 0x3c, 0x00, 0x6c, 0xde, 0x00, 0x00, + 0xf3, 0xf7, 0xb4, 0xfb, 0x07, 0x1c, 0x00, 0x68, + 0x13, 0x49, 0x01, 0x90, 0x10, 0x98, 0x0b, 0x58, + 0x01, 0x9a, 0x29, 0x1c, 0x02, 0xa8, 0xf2, 0xf7, + 0xac, 0xfa, 0x00, 0x90, 0x28, 0x1c, 0xf3, 0xf7, + 0x73, 0xfb, 0x20, 0x1c, 0xf3, 0xf7, 0x82, 0xfb, + 0x00, 0x98, 0x00, 0x28, 0x08, 0xd0, 0x02, 0x98, + 0x01, 0x99, 0x08, 0x60, 0xb0, 0x79, 0x39, 0x1c, + 0xfa, 0xf7, 0x20, 0xff, 0x3c, 0x00, 0xa8, 0xde, + 0x00, 0x00, 0x11, 0xb0, 0xf0, 0xbd, 0x38, 0x1c, + 0xf3, 0xf7, 0x61, 0xfb, 0xf9, 0xe7, 0x2d, 0x20, + 0xf3, 0xf7, 0xf5, 0xf9, 0x20, 0x1c, 0xf3, 0xf7, + 0x6c, 0xfb, 0xf2, 0xe7, 0x00, 0x00, 0x24, 0x44, + 0x01, 0x00, 0x70, 0xb5, 0x05, 0x1c, 0x20, 0x35, + 0x06, 0x1c, 0xa8, 0x79, 0x04, 0x28, 0x48, 0xd2, + 0xe9, 0x79, 0x01, 0x29, 0x13, 0xd1, 0x30, 0x1c, + 0x28, 0x30, 0x03, 0xf0, 0x92, 0xff, 0x3c, 0x00, + 0xe4, 0xde, 0x00, 0x00, 0x00, 0x28, 0x3f, 0xd0, + 0x01, 0x1c, 0x8c, 0x31, 0x01, 0x65, 0xa9, 0x79, + 0x4c, 0x22, 0x04, 0x1c, 0x11, 0x54, 0x81, 0x18, + 0x41, 0x62, 0x50, 0x34, 0x04, 0x62, 0xe1, 0x1e, + 0x81, 0x62, 0x0b, 0xe0, 0x00, 0x29, 0x2f, 0xd1, + 0x3c, 0x22, 0x18, 0x49, 0x42, 0x43, 0x54, 0x18, + 0x17, 0x4a, 0x04, 0x34, 0x12, 0x68, 0x00, 0x2a, + 0x00, 0xd1, 0x48, 0x70, 0x00, 0x2c, 0x23, 0xd0, + 0x3c, 0x00, 0x20, 0xdf, 0x00, 0x00, 0x35, 0x1c, + 0x30, 0x35, 0xe8, 0x79, 0x01, 0x28, 0x01, 0xd0, + 0x05, 0x28, 0x01, 0xd1, 0x06, 0x20, 0xe8, 0x71, + 0x20, 0x22, 0x31, 0x1d, 0x20, 0x68, 0xf2, 0xf7, + 0xde, 0xfa, 0xb0, 0x8c, 0xa0, 0x80, 0xe8, 0x79, + 0xa0, 0x71, 0xa8, 0x79, 0x00, 0x25, 0xa0, 0x63, + 0x01, 0x20, 0x60, 0x81, 0x00, 0x20, 0xe0, 0x60, + 0x2e, 0x36, 0xe8, 0x00, 0x00, 0x19, 0x18, 0x30, + 0x08, 0x22, 0x3c, 0x00, 0x5c, 0xdf, 0x00, 0x00, + 0x31, 0x1c, 0xf2, 0xf7, 0xcb, 0xfa, 0x01, 0x35, + 0x04, 0x2d, 0xf5, 0xd3, 0x01, 0x20, 0x70, 0xbd, + 0x68, 0x61, 0x01, 0x00, 0xdc, 0x62, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0xc0, 0x7a, 0x01, 0x28, + 0x01, 0xd0, 0x03, 0x28, 0x07, 0xd1, 0x20, 0x1d, + 0x03, 0xf0, 0x40, 0xff, 0x00, 0x28, 0x02, 0xd0, + 0xa1, 0x7a, 0x40, 0x30, 0x41, 0x73, 0xe0, 0x7a, + 0x00, 0x28, 0x01, 0xd0, 0x3c, 0x00, 0x98, 0xdf, + 0x00, 0x00, 0x03, 0x28, 0x02, 0xd1, 0xa0, 0x7a, + 0x02, 0x49, 0x08, 0x70, 0x01, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0x68, 0x61, 0x01, 0x00, 0x70, 0xb5, + 0x0e, 0x1c, 0x03, 0x21, 0x04, 0x1c, 0x30, 0x1c, + 0xfc, 0xf7, 0xe1, 0xfb, 0x00, 0x28, 0x01, 0xd0, + 0x85, 0x78, 0x00, 0xe0, 0x00, 0x25, 0x0b, 0x48, + 0x32, 0x1c, 0x00, 0x68, 0x03, 0x68, 0x20, 0x7c, + 0x80, 0x07, 0xc0, 0x0f, 0x21, 0x1c, 0x3c, 0x00, + 0xd4, 0xdf, 0x00, 0x00, 0xf7, 0xf7, 0x62, 0xfe, + 0x00, 0x28, 0x05, 0xd0, 0x01, 0x21, 0x28, 0x1c, + 0xfd, 0xf7, 0xfe, 0xfb, 0x00, 0x20, 0x00, 0xe0, + 0x08, 0x20, 0x03, 0xf0, 0xc5, 0xff, 0x00, 0x20, + 0x70, 0xbd, 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, + 0x80, 0xb5, 0x42, 0x68, 0x00, 0x88, 0x01, 0x21, + 0x49, 0x06, 0x08, 0x43, 0x2d, 0x21, 0x05, 0xf0, + 0xd3, 0xfb, 0x80, 0xbd, 0x03, 0x49, 0x01, 0x20, + 0x3c, 0x00, 0x10, 0xe0, 0x00, 0x00, 0x49, 0x78, + 0x02, 0x29, 0x00, 0xd0, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, 0x8c, 0xb5, + 0x01, 0x28, 0x1f, 0xd1, 0x00, 0x29, 0x0d, 0xd0, + 0x01, 0x29, 0x0b, 0xd0, 0x02, 0x29, 0x01, 0xd0, + 0x03, 0x29, 0x16, 0xd1, 0x00, 0x20, 0xf9, 0xf7, + 0x14, 0xfc, 0x93, 0x20, 0x00, 0xab, 0x18, 0x80, + 0x00, 0x20, 0x08, 0xe0, 0x01, 0x29, 0x00, 0xd0, + 0x00, 0x20, 0x3c, 0x00, 0x4c, 0xe0, 0x00, 0x00, + 0xf9, 0xf7, 0x0a, 0xfc, 0x83, 0x20, 0x00, 0xab, + 0x18, 0x80, 0x02, 0x20, 0x00, 0xf0, 0xcc, 0xf8, + 0x01, 0x90, 0x68, 0x46, 0xff, 0xf7, 0x3a, 0xfa, + 0x8c, 0xbd, 0x01, 0x21, 0x0e, 0x20, 0xf3, 0xf7, + 0x1b, 0xf9, 0xf9, 0xe7, 0xff, 0xb5, 0x17, 0x1c, + 0x1e, 0x1c, 0x14, 0x21, 0x00, 0x20, 0x83, 0xb0, + 0xf3, 0xf7, 0xac, 0xfa, 0x05, 0x1c, 0x04, 0x68, + 0x12, 0x20, 0x00, 0xab, 0x3c, 0x00, 0x88, 0xe0, + 0x00, 0x00, 0x98, 0x80, 0x06, 0x22, 0x60, 0x1d, + 0x03, 0x99, 0xf2, 0xf7, 0x32, 0xfa, 0x00, 0x20, + 0x20, 0x71, 0x27, 0x73, 0x04, 0x99, 0x20, 0x1c, + 0xe1, 0x72, 0x31, 0x1c, 0x06, 0x22, 0x0d, 0x30, + 0xf2, 0xf7, 0x27, 0xfa, 0x02, 0x95, 0x01, 0xa8, + 0xff, 0xf7, 0x13, 0xfa, 0x07, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0f, 0x1c, + 0x0c, 0x21, 0x00, 0x20, 0xf3, 0xf7, 0x3c, 0x00, + 0xc4, 0xe0, 0x00, 0x00, 0x89, 0xfa, 0x05, 0x68, + 0x04, 0x1c, 0x28, 0x1d, 0x06, 0x22, 0x31, 0x1c, + 0xf2, 0xf7, 0x12, 0xfa, 0x6f, 0x81, 0x20, 0x1c, + 0xf8, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0d, 0x1c, 0x08, 0x21, 0x00, 0x20, 0xf3, 0xf7, + 0x77, 0xfa, 0x01, 0x68, 0x8c, 0x71, 0x8d, 0x80, + 0xb0, 0xbd, 0x00, 0x00, 0xf7, 0xb5, 0x0e, 0x1c, + 0x10, 0x21, 0x17, 0x1c, 0x00, 0x20, 0xf3, 0xf7, + 0x3c, 0x00, 0x00, 0xe1, 0x00, 0x00, 0x6b, 0xfa, + 0x04, 0x68, 0x05, 0x1c, 0x20, 0x1d, 0x06, 0x22, + 0x00, 0x99, 0xf2, 0xf7, 0xf4, 0xf9, 0x66, 0x81, + 0xa7, 0x81, 0x28, 0x1c, 0xfe, 0xbd, 0xf3, 0xb5, + 0x0c, 0x1c, 0x08, 0x21, 0x00, 0x20, 0x85, 0xb0, + 0xf3, 0xf7, 0x59, 0xfa, 0x06, 0x1c, 0x07, 0x68, + 0xe0, 0x68, 0x00, 0x28, 0x02, 0xd0, 0x05, 0x99, + 0x01, 0x29, 0x04, 0xd1, 0x05, 0x98, 0x38, 0x71, + 0x00, 0x20, 0x3c, 0x00, 0x3c, 0xe1, 0x00, 0x00, + 0x78, 0x71, 0x56, 0xe0, 0x03, 0x68, 0x01, 0x21, + 0x03, 0x93, 0x20, 0x69, 0x02, 0x90, 0xfc, 0xf7, + 0x17, 0xfb, 0x05, 0x1c, 0x02, 0x98, 0x32, 0x21, + 0xfc, 0xf7, 0x12, 0xfb, 0x00, 0x22, 0xd2, 0x43, + 0x01, 0x1c, 0x28, 0x1c, 0x04, 0xab, 0xf7, 0xf7, + 0xb9, 0xf8, 0x00, 0x28, 0x04, 0xd1, 0x30, 0x1c, + 0xf3, 0xf7, 0x02, 0xfa, 0x00, 0x26, 0x3c, 0xe0, + 0x00, 0x2d, 0x05, 0xd0, 0x3c, 0x00, 0x78, 0xe1, + 0x00, 0x00, 0x68, 0x78, 0x09, 0x38, 0x07, 0x28, + 0x01, 0xd8, 0x32, 0x20, 0x28, 0x70, 0x1c, 0x21, + 0x00, 0x20, 0xf3, 0xf7, 0x26, 0xfa, 0x01, 0x90, + 0x05, 0x68, 0x01, 0x1c, 0x30, 0x1c, 0xf3, 0xf7, + 0x40, 0xf9, 0xe0, 0x68, 0xf3, 0xf7, 0x0b, 0xfa, + 0xa8, 0x61, 0xe1, 0x68, 0x01, 0x98, 0xf3, 0xf7, + 0x38, 0xf9, 0x00, 0x20, 0xe0, 0x60, 0x05, 0x98, + 0x80, 0x21, 0x08, 0x43, 0x38, 0x71, 0x3c, 0x00, + 0xb4, 0xe1, 0x00, 0x00, 0x01, 0x20, 0x21, 0x1c, + 0x14, 0x31, 0x78, 0x71, 0x28, 0x1c, 0x06, 0x22, + 0xf2, 0xf7, 0x9a, 0xf9, 0x02, 0x9a, 0x29, 0x20, + 0x00, 0x92, 0x00, 0x5d, 0x01, 0x21, 0xe2, 0x6a, + 0x08, 0x28, 0x00, 0xd0, 0x00, 0x21, 0x28, 0x1c, + 0x03, 0x9b, 0x02, 0xf0, 0x9d, 0xff, 0xa0, 0x6b, + 0x28, 0x61, 0x20, 0x6c, 0x68, 0x61, 0x7f, 0x30, + 0x01, 0xd1, 0x0f, 0x20, 0x68, 0x61, 0x30, 0x1c, + 0x3c, 0x00, 0xf0, 0xe1, 0x00, 0x00, 0x07, 0xb0, + 0xf0, 0xbd, 0x10, 0xb5, 0x04, 0x1c, 0x08, 0x21, + 0x00, 0x20, 0xf3, 0xf7, 0xec, 0xf9, 0x01, 0x68, + 0x0c, 0x71, 0x10, 0xbd, 0x00, 0x00, 0x01, 0x48, + 0x00, 0x68, 0x70, 0x47, 0x00, 0x00, 0x28, 0x61, + 0x01, 0x00, 0x01, 0x49, 0x08, 0x60, 0x70, 0x47, + 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, 0x02, 0x1c, + 0x01, 0x20, 0x00, 0x06, 0x08, 0x43, 0x80, 0xb5, + 0x2d, 0x21, 0x3c, 0x00, 0x2c, 0xe2, 0x00, 0x00, + 0x05, 0xf0, 0xc0, 0xfa, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x01, 0x28, 0x07, 0xd0, 0xf1, 0x28, + 0x25, 0xd0, 0xf3, 0x28, 0x27, 0xd1, 0x02, 0x20, + 0x02, 0xf0, 0xbc, 0xf9, 0x80, 0xbd, 0x00, 0x29, + 0x1a, 0xd0, 0x01, 0x29, 0x03, 0xd0, 0xf2, 0x29, + 0xf8, 0xd1, 0x88, 0x21, 0x1c, 0xe0, 0x10, 0x48, + 0x01, 0x78, 0x00, 0x29, 0x05, 0xd1, 0x40, 0x78, + 0x01, 0x28, 0xef, 0xd1, 0x3c, 0x00, 0x68, 0xe2, + 0x00, 0x00, 0x00, 0xf0, 0x16, 0xfa, 0x80, 0xbd, + 0x0b, 0x48, 0x14, 0x30, 0x00, 0x89, 0xfc, 0xf7, + 0x5a, 0xfc, 0x01, 0x1c, 0x01, 0x22, 0x0f, 0x20, + 0x05, 0xf0, 0x9f, 0xf9, 0x80, 0xbd, 0x04, 0xf0, + 0x52, 0xfa, 0x80, 0xbd, 0x00, 0x20, 0xfa, 0xf7, + 0x32, 0xfe, 0x80, 0xbd, 0x02, 0x21, 0x0f, 0x20, + 0xf3, 0xf7, 0x05, 0xf8, 0x80, 0xbd, 0x84, 0x66, + 0x01, 0x00, 0x01, 0x48, 0x00, 0x78, 0x3c, 0x00, + 0xa4, 0xe2, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x74, 0x66, 0x01, 0x00, 0x01, 0x49, 0x00, 0x20, + 0x48, 0x60, 0x70, 0x47, 0xec, 0x65, 0x01, 0x00, + 0xf8, 0xb5, 0x0e, 0x1c, 0x13, 0x4d, 0x01, 0x1c, + 0x14, 0x1c, 0x68, 0x22, 0x28, 0x1c, 0x1f, 0x1c, + 0x0c, 0x30, 0xf2, 0xf7, 0x71, 0xf9, 0x0f, 0x49, + 0x00, 0x20, 0xac, 0x39, 0x48, 0x60, 0x01, 0x21, + 0x29, 0x60, 0x19, 0x21, 0x19, 0x2c, 0x6e, 0x67, + 0x3c, 0x00, 0xe0, 0xe2, 0x00, 0x00, 0x00, 0xd3, + 0x21, 0x1c, 0x29, 0x81, 0x09, 0x49, 0x14, 0x39, + 0x88, 0x73, 0x8f, 0x74, 0xc8, 0x78, 0x01, 0x28, + 0x08, 0xd0, 0x01, 0x21, 0x0f, 0x20, 0x05, 0xf0, + 0x9c, 0xf9, 0x19, 0x20, 0xfc, 0xf7, 0x15, 0xfc, + 0xfb, 0xf7, 0x99, 0xf8, 0x01, 0x20, 0xf8, 0xbd, + 0x00, 0x00, 0x98, 0x66, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x28, 0x02, 0xd1, 0x00, 0xf0, 0x2f, 0xf8, + 0x80, 0xbd, 0x3c, 0x00, 0x1c, 0xe3, 0x00, 0x00, + 0x01, 0x21, 0x1d, 0x20, 0xf2, 0xf7, 0xc0, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x01, 0x20, 0x07, 0x49, 0x00, 0x05, 0x80, 0xb5, + 0x88, 0x60, 0x00, 0x22, 0x80, 0x21, 0x16, 0x20, + 0x05, 0xf0, 0x4c, 0xf9, 0x04, 0xf0, 0x34, 0xfd, + 0x02, 0x49, 0x08, 0x61, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x24, 0x6d, 0x01, 0x00, + 0x06, 0x4a, 0x80, 0xb5, 0x3c, 0x00, 0x58, 0xe3, + 0x00, 0x00, 0xd1, 0x6a, 0x81, 0x42, 0x07, 0xd1, + 0x10, 0x7f, 0x24, 0x23, 0x04, 0x49, 0x58, 0x43, + 0x40, 0x18, 0xc0, 0x68, 0xf2, 0xf7, 0x35, 0xf8, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x94, 0x46, + 0x01, 0x00, 0x1d, 0x48, 0x1c, 0xb5, 0x00, 0x78, + 0x00, 0x28, 0x2d, 0xd0, 0x1c, 0x48, 0x00, 0x68, + 0x00, 0x28, 0x29, 0xd0, 0x1a, 0x4a, 0x1a, 0x4b, + 0x04, 0x32, 0x11, 0x68, 0x1c, 0x69, 0x3c, 0x00, + 0x94, 0xe3, 0x00, 0x00, 0xa1, 0x42, 0x22, 0xd1, + 0x51, 0x68, 0x5b, 0x69, 0x99, 0x42, 0x1f, 0xd1, + 0x16, 0x49, 0x49, 0x68, 0x93, 0x68, 0xc9, 0x1a, + 0x81, 0x42, 0x19, 0xd2, 0xd0, 0x68, 0x14, 0x49, + 0x01, 0x30, 0xd0, 0x60, 0x09, 0x68, 0x88, 0x42, + 0x0c, 0xd9, 0x06, 0x22, 0xff, 0x21, 0x68, 0x46, + 0xf2, 0xf7, 0x2e, 0xf9, 0xf3, 0xf7, 0xac, 0xfc, + 0x01, 0x1c, 0x00, 0x23, 0x00, 0x22, 0x68, 0x46, + 0x3c, 0x00, 0xd0, 0xe3, 0x00, 0x00, 0x02, 0xf0, + 0xce, 0xf9, 0x01, 0x22, 0x1d, 0x20, 0x0a, 0x49, + 0x05, 0xf0, 0xf7, 0xf8, 0x1c, 0xbd, 0xf7, 0xf7, + 0x88, 0xf9, 0x04, 0x22, 0x81, 0x18, 0x08, 0x1c, + 0xfc, 0xf7, 0x27, 0xfb, 0xf6, 0xe7, 0x1c, 0x75, + 0x01, 0x00, 0x44, 0x75, 0x01, 0x00, 0x28, 0x61, + 0x01, 0x00, 0x90, 0x5c, 0x01, 0x00, 0xf0, 0x59, + 0x01, 0x00, 0xa0, 0x86, 0x01, 0x00, 0x80, 0xb5, + 0x01, 0x68, 0x3c, 0x00, 0x0c, 0xe4, 0x00, 0x00, + 0x00, 0x29, 0x15, 0xd1, 0x00, 0x79, 0x02, 0x28, + 0x12, 0xd1, 0x08, 0x1c, 0xf7, 0xf7, 0x80, 0xf8, + 0x00, 0x28, 0x0d, 0xd0, 0x03, 0xf0, 0xf2, 0xfc, + 0x08, 0x30, 0x41, 0x8f, 0x00, 0x29, 0x07, 0xd1, + 0x80, 0x69, 0x00, 0x28, 0x04, 0xd0, 0x80, 0x79, + 0x06, 0x28, 0x01, 0xd1, 0xfc, 0xf7, 0x18, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x01, 0x49, 0x00, 0x20, + 0x88, 0x62, 0x70, 0x47, 0x3c, 0x00, 0x48, 0xe4, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0xb0, 0xb5, + 0x05, 0x4d, 0x04, 0x1c, 0xa9, 0x1d, 0xff, 0xf7, + 0x14, 0xf8, 0x06, 0x22, 0x29, 0x1c, 0xa0, 0x18, + 0xf2, 0xf7, 0x4b, 0xf8, 0xb0, 0xbd, 0x70, 0x7c, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x15, 0x1c, + 0xff, 0xf7, 0x07, 0xf8, 0x06, 0x22, 0x29, 0x1c, + 0xa0, 0x18, 0xf2, 0xf7, 0x3e, 0xf8, 0xb0, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x0a, 0x30, 0x3c, 0x00, + 0x84, 0xe4, 0x00, 0x00, 0xf7, 0xf7, 0xbc, 0xf9, + 0x01, 0x23, 0x00, 0x28, 0x03, 0xd0, 0x05, 0x48, + 0x00, 0x78, 0x01, 0x28, 0x04, 0xd1, 0x00, 0x22, + 0x00, 0x21, 0x00, 0x20, 0x03, 0xf0, 0xc6, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x23, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x03, 0xf0, 0xbb, 0xfd, 0x80, 0xbd, + 0xb0, 0xb5, 0x05, 0x4d, 0xac, 0x79, 0x0a, 0x1c, + 0x3c, 0x00, 0xc0, 0xe4, 0x00, 0x00, 0x01, 0x1c, + 0x01, 0x23, 0x01, 0x20, 0x03, 0xf0, 0xb1, 0xfd, + 0xac, 0x71, 0xb0, 0xbd, 0x00, 0x00, 0x20, 0x10, + 0x07, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x0c, 0x1c, + 0x88, 0x07, 0x02, 0xd5, 0xf6, 0xf7, 0x47, 0xfa, + 0x10, 0xe0, 0x60, 0x07, 0x0e, 0xd5, 0x17, 0x4f, + 0xa3, 0x20, 0xc0, 0x5d, 0x15, 0x4d, 0x10, 0x28, + 0x00, 0xd3, 0x15, 0x4d, 0x04, 0xf0, 0x59, 0xfc, + 0xb9, 0x6f, 0x3c, 0x00, 0xfc, 0xe4, 0x00, 0x00, + 0x40, 0x1a, 0x29, 0x1a, 0x01, 0x20, 0xf6, 0xf7, + 0xc1, 0xfa, 0xe0, 0x07, 0x11, 0x49, 0xc0, 0x0f, + 0x48, 0x60, 0x0c, 0xd0, 0x0d, 0x4c, 0x44, 0x3c, + 0x20, 0x78, 0x03, 0x28, 0x0f, 0xd1, 0x00, 0x2e, + 0x06, 0xd0, 0xf6, 0xf7, 0xf9, 0xf9, 0x01, 0x1c, + 0x01, 0x20, 0xf6, 0xf7, 0xaf, 0xfa, 0xf8, 0xbd, + 0x09, 0x49, 0x01, 0x20, 0xf6, 0xf7, 0xaa, 0xfa, + 0x01, 0x20, 0x20, 0x70, 0x3c, 0x00, 0x38, 0xe5, + 0x00, 0x00, 0xf7, 0xe7, 0x01, 0x21, 0x30, 0x1c, + 0xf6, 0xf7, 0x89, 0xfa, 0xf2, 0xe7, 0xa6, 0x0e, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0xc4, 0x09, + 0x00, 0x00, 0xb0, 0x57, 0x01, 0x00, 0x40, 0x42, + 0x0f, 0x00, 0x80, 0xb5, 0x06, 0x28, 0x04, 0xdb, + 0x05, 0x21, 0xff, 0x20, 0xf2, 0xf7, 0x9f, 0xfe, + 0x80, 0xbd, 0x03, 0x4a, 0xc0, 0x00, 0x11, 0x50, + 0x01, 0x21, 0x80, 0x18, 0x01, 0x71, 0x3c, 0x00, + 0x74, 0xe5, 0x00, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0x9c, 0x5a, 0x01, 0x00, 0x01, 0x48, 0x80, 0x68, + 0x70, 0x47, 0x00, 0x00, 0xd0, 0x60, 0x01, 0x00, + 0xb0, 0xb5, 0x08, 0x4c, 0x25, 0x1d, 0x28, 0x1c, + 0x21, 0x68, 0x00, 0xf0, 0xf1, 0xfe, 0x00, 0x28, + 0x03, 0xd1, 0x01, 0x21, 0x04, 0x48, 0xf2, 0xf7, + 0xcf, 0xfa, 0x28, 0x1c, 0x21, 0x68, 0x00, 0xf0, + 0xfb, 0xfe, 0xb0, 0xbd, 0xc0, 0x60, 0x01, 0x00, + 0x3c, 0x00, 0xb0, 0xe5, 0x00, 0x00, 0x2c, 0x10, + 0x07, 0x00, 0xb0, 0xb5, 0x10, 0x4d, 0x0c, 0x1c, + 0xa8, 0x68, 0x00, 0x28, 0x02, 0xd1, 0x04, 0xf0, + 0xf4, 0xfb, 0x28, 0x60, 0x20, 0x1c, 0x04, 0xf0, + 0x38, 0xfb, 0x01, 0x21, 0x03, 0x20, 0x03, 0xf0, + 0xc4, 0xfe, 0x04, 0xf0, 0xf0, 0xfb, 0xa8, 0x68, + 0x00, 0x28, 0x0b, 0xd1, 0x04, 0xf0, 0xe5, 0xfb, + 0x29, 0x68, 0x00, 0x1b, 0x40, 0x1a, 0x69, 0x68, + 0x40, 0x18, 0x3c, 0x00, 0xec, 0xe5, 0x00, 0x00, + 0x41, 0x08, 0x40, 0x18, 0x28, 0x60, 0x01, 0x20, + 0xa8, 0x60, 0xb0, 0xbd, 0xd0, 0x60, 0x01, 0x00, + 0xf8, 0xb5, 0x1f, 0x4e, 0x00, 0x24, 0xb0, 0x68, + 0x00, 0x28, 0x02, 0xd1, 0x04, 0xf0, 0xd0, 0xfb, + 0x70, 0x60, 0x05, 0xf0, 0x61, 0xf8, 0x04, 0xf0, + 0x8f, 0xfb, 0x05, 0x1c, 0xf9, 0xf7, 0x66, 0xfe, + 0x31, 0x68, 0x18, 0x4a, 0x41, 0x18, 0x12, 0x68, + 0xe8, 0x0b, 0x00, 0x2a, 0x3c, 0x00, 0x28, 0xe6, + 0x00, 0x00, 0x00, 0xd1, 0xa8, 0x0a, 0x40, 0x18, + 0x85, 0x42, 0x1f, 0xd9, 0x14, 0x4f, 0x2d, 0x1a, + 0x38, 0x1c, 0x20, 0x30, 0x81, 0x79, 0x00, 0xab, + 0x19, 0x70, 0xc0, 0x79, 0x58, 0x70, 0x05, 0xf0, + 0x6e, 0xf8, 0x00, 0x28, 0x03, 0xd1, 0x02, 0x21, + 0x8f, 0x20, 0xf2, 0xf7, 0x28, 0xfe, 0x29, 0x1c, + 0x0c, 0x48, 0xf2, 0x68, 0xf8, 0xf7, 0x09, 0xfc, + 0x00, 0x28, 0x04, 0xd0, 0x01, 0x1c, 0x3c, 0x00, + 0x64, 0xe6, 0x00, 0x00, 0x28, 0x1c, 0xff, 0xf7, + 0xa5, 0xff, 0x01, 0x24, 0x00, 0xab, 0x18, 0x88, + 0xf8, 0x84, 0x05, 0xf0, 0x47, 0xf8, 0x20, 0x1c, + 0xf8, 0xbd, 0x00, 0x00, 0xd0, 0x60, 0x01, 0x00, + 0xf4, 0x74, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x89, 0x13, 0x01, 0x00, 0x01, 0x49, 0x01, 0x20, + 0xc8, 0x60, 0x70, 0x47, 0xd0, 0x60, 0x01, 0x00, + 0x06, 0x48, 0x80, 0xb5, 0x00, 0x68, 0x01, 0x28, + 0x3c, 0x00, 0xa0, 0xe6, 0x00, 0x00, 0x07, 0xd1, + 0x04, 0x48, 0xac, 0x38, 0x01, 0x69, 0x03, 0x48, + 0x00, 0xf0, 0x79, 0xfe, 0xf3, 0xf7, 0x2b, 0xfa, + 0x80, 0xbd, 0x98, 0x66, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0x80, 0xb5, 0x42, 0x78, 0x81, 0x68, + 0x00, 0x79, 0x03, 0xf0, 0xde, 0xff, 0x00, 0x28, + 0x01, 0xd1, 0xf5, 0xf7, 0xb6, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x1f, 0xb5, 0x04, 0xf0, 0x69, 0xfb, + 0xf6, 0xf7, 0x3c, 0x00, 0xdc, 0xe6, 0x00, 0x00, + 0x91, 0xff, 0x16, 0x4c, 0x02, 0x28, 0x03, 0xd1, + 0xff, 0xf7, 0xdc, 0xfd, 0x04, 0x28, 0x02, 0xd3, + 0x00, 0x20, 0x20, 0x70, 0x1f, 0xbd, 0xfb, 0xf7, + 0xf7, 0xfc, 0x00, 0x28, 0xfa, 0xd1, 0x60, 0x6a, + 0x00, 0x28, 0xf7, 0xd0, 0x20, 0x78, 0x80, 0x07, + 0xf4, 0xd4, 0x09, 0x21, 0x16, 0x20, 0x04, 0xf0, + 0x93, 0xff, 0x01, 0x20, 0x20, 0x70, 0x0b, 0x4c, + 0x09, 0x49, 0x02, 0x90, 0x3c, 0x00, 0x18, 0xe7, + 0x00, 0x00, 0x01, 0x94, 0x00, 0x91, 0x04, 0xf0, + 0x46, 0xfb, 0x00, 0x19, 0x03, 0x90, 0x68, 0x46, + 0xfd, 0xf7, 0xb5, 0xfb, 0x00, 0x22, 0x16, 0x21, + 0x84, 0x20, 0x05, 0xf0, 0x3e, 0xf8, 0xdc, 0xe7, + 0x00, 0x00, 0x60, 0x6c, 0x01, 0x00, 0x61, 0xed, + 0x00, 0x00, 0x40, 0x42, 0x0f, 0x00, 0x23, 0x48, + 0x70, 0xb5, 0x80, 0x78, 0x9c, 0xb0, 0x01, 0x28, + 0x3e, 0xd1, 0x20, 0x4c, 0x09, 0xa8, 0x3c, 0x00, + 0x54, 0xe7, 0x00, 0x00, 0x80, 0x3c, 0x61, 0x1c, + 0xfe, 0xf7, 0x92, 0xfe, 0x04, 0x20, 0x11, 0xad, + 0x68, 0x72, 0xa0, 0x6f, 0x19, 0xa9, 0x18, 0x90, + 0x7c, 0x20, 0x00, 0x5d, 0x01, 0x26, 0x08, 0x71, + 0x1d, 0x20, 0x00, 0x5d, 0x00, 0x28, 0x06, 0xd0, + 0x10, 0x96, 0x12, 0x96, 0xfc, 0xf7, 0xf6, 0xfa, + 0x28, 0x72, 0x20, 0x7a, 0x11, 0x90, 0xf3, 0xf7, + 0xcd, 0xff, 0x6a, 0x21, 0x08, 0x53, 0x40, 0x34, + 0x3c, 0x00, 0x90, 0xe7, 0x00, 0x00, 0x00, 0x22, + 0x01, 0xa9, 0x06, 0xa8, 0xf6, 0xf7, 0xcd, 0xff, + 0x21, 0x1c, 0x00, 0x20, 0xfb, 0xf7, 0xcb, 0xfb, + 0x06, 0xa9, 0xfb, 0xf7, 0xc8, 0xfb, 0x01, 0xa9, + 0xfb, 0xf7, 0xc5, 0xfb, 0x0a, 0x49, 0x09, 0x68, + 0x00, 0x29, 0x07, 0xd0, 0x33, 0x1c, 0x0a, 0x22, + 0x69, 0x46, 0xfb, 0xf7, 0xda, 0xfb, 0x00, 0x9a, + 0x07, 0x21, 0x91, 0x70, 0x0c, 0x90, 0x09, 0xa8, + 0xfe, 0xf7, 0x3c, 0x00, 0xcc, 0xe7, 0x00, 0x00, + 0x7b, 0xfe, 0x1c, 0xb0, 0x70, 0xbd, 0x00, 0x00, + 0x84, 0x66, 0x01, 0x00, 0xe4, 0x62, 0x01, 0x00, + 0xf8, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0xff, 0x22, + 0x01, 0x68, 0x12, 0x02, 0x0e, 0x1c, 0x08, 0x7b, + 0x49, 0x7b, 0x09, 0x02, 0x11, 0x40, 0x08, 0x43, + 0x05, 0x1c, 0x31, 0x1c, 0x06, 0x22, 0xa0, 0x18, + 0xf1, 0xf7, 0x7c, 0xfe, 0x06, 0x22, 0xb1, 0x18, + 0x20, 0x1c, 0xf1, 0xf7, 0x3c, 0x00, 0x08, 0xe8, + 0x00, 0x00, 0x77, 0xfe, 0x28, 0x0a, 0x29, 0x02, + 0x08, 0x43, 0x00, 0x04, 0x03, 0x21, 0x49, 0x02, + 0x00, 0x0c, 0x88, 0x42, 0x08, 0xd2, 0xe0, 0x68, + 0x01, 0x89, 0x0e, 0x39, 0x01, 0x81, 0xe0, 0x68, + 0x01, 0x68, 0x0e, 0x31, 0x01, 0x60, 0xf8, 0xbd, + 0x00, 0x26, 0x20, 0x1c, 0x10, 0x30, 0x03, 0xf0, + 0xe8, 0xfa, 0x21, 0x8b, 0x00, 0x29, 0x05, 0xd1, + 0xe1, 0x7d, 0x00, 0x29, 0x0b, 0xd0, 0x3c, 0x00, + 0x44, 0xe8, 0x00, 0x00, 0x80, 0x69, 0x80, 0x07, + 0x08, 0xd4, 0xe0, 0x68, 0x01, 0x26, 0x01, 0x89, + 0x02, 0x39, 0x01, 0x81, 0xe0, 0x68, 0x01, 0x68, + 0x02, 0x31, 0x06, 0xe0, 0xe0, 0x68, 0x01, 0x89, + 0x06, 0x39, 0x01, 0x81, 0xe0, 0x68, 0x01, 0x68, + 0x06, 0x31, 0x01, 0x60, 0x14, 0x49, 0x00, 0x20, + 0x0b, 0x1f, 0x42, 0x00, 0x9a, 0x5a, 0xaa, 0x42, + 0x02, 0xd1, 0x11, 0x49, 0x06, 0x31, 0x02, 0xe0, + 0x3c, 0x00, 0x80, 0xe8, 0x00, 0x00, 0x01, 0x30, + 0x02, 0x28, 0xf5, 0xd3, 0xe0, 0x68, 0x06, 0x22, + 0x00, 0x68, 0xf1, 0xf7, 0x34, 0xfe, 0x01, 0x2e, + 0xcb, 0xd1, 0x81, 0x20, 0x00, 0xab, 0x18, 0x80, + 0xe1, 0x7d, 0x20, 0x8b, 0x49, 0x03, 0x08, 0x43, + 0x31, 0x03, 0x08, 0x43, 0x00, 0x04, 0x00, 0x0c, + 0x01, 0x0a, 0x00, 0x02, 0x08, 0x43, 0x58, 0x80, + 0xe0, 0x68, 0x19, 0x88, 0x00, 0x68, 0xc1, 0x80, + 0x59, 0x88, 0x3c, 0x00, 0xbc, 0xe8, 0x00, 0x00, + 0x01, 0x81, 0xb5, 0xe7, 0x6a, 0x46, 0x01, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x01, 0x89, 0x06, 0x22, + 0x08, 0x31, 0x01, 0x81, 0x04, 0x68, 0x04, 0x49, + 0x08, 0x3c, 0x04, 0x60, 0x20, 0x1c, 0xf1, 0xf7, + 0x0d, 0xfe, 0xe5, 0x80, 0xb0, 0xbd, 0x00, 0x00, + 0x6a, 0x46, 0x01, 0x00, 0xf8, 0xb5, 0x00, 0x29, + 0x01, 0xd0, 0x00, 0x28, 0x01, 0xd1, 0x00, 0x20, + 0xf8, 0xbd, 0x09, 0x04, 0x3c, 0x00, 0xf8, 0xe8, + 0x00, 0x00, 0x09, 0x0c, 0xf2, 0xf7, 0x43, 0xff, + 0x06, 0x1c, 0x05, 0x1c, 0x00, 0x27, 0x20, 0xe0, + 0x2c, 0x89, 0x29, 0x68, 0x02, 0x2c, 0x01, 0xd2, + 0x02, 0x20, 0x01, 0xe0, 0x48, 0x78, 0x02, 0x30, + 0x84, 0x42, 0x02, 0xdd, 0x24, 0x1a, 0x09, 0x18, + 0xf4, 0xe7, 0x84, 0x42, 0x10, 0xd0, 0x01, 0x1b, + 0x0a, 0x04, 0x01, 0x04, 0x09, 0x0c, 0x12, 0x0c, + 0x28, 0x1c, 0xf2, 0xf7, 0x9e, 0xfe, 0x3c, 0x00, + 0x34, 0xe9, 0x00, 0x00, 0x00, 0x28, 0x06, 0xd1, + 0xe8, 0x68, 0xf2, 0xf7, 0x2d, 0xfe, 0xef, 0x60, + 0x28, 0x89, 0x00, 0x1b, 0x28, 0x81, 0xed, 0x68, + 0x00, 0x2d, 0xdc, 0xd1, 0x30, 0x1c, 0xd1, 0xe7, + 0xf8, 0xb5, 0x85, 0x68, 0x04, 0x1c, 0x80, 0x69, + 0x2e, 0x1c, 0x00, 0x28, 0x0d, 0xd0, 0x71, 0x68, + 0xf2, 0xf7, 0xf6, 0xfd, 0xa0, 0x69, 0xf2, 0xf7, + 0x17, 0xfe, 0x06, 0xe0, 0x00, 0x21, 0xc1, 0x60, + 0x3c, 0x00, 0x70, 0xe9, 0x00, 0x00, 0xf1, 0x60, + 0xa0, 0x8d, 0x36, 0x68, 0x01, 0x38, 0xa0, 0x85, + 0xf0, 0x68, 0x00, 0x28, 0xf5, 0xd1, 0x30, 0x68, + 0xa0, 0x60, 0xa0, 0x8d, 0x01, 0x38, 0x00, 0x04, + 0x00, 0x0c, 0xa0, 0x85, 0x02, 0xd0, 0x20, 0x1c, + 0xf9, 0xf7, 0x39, 0xf8, 0x2a, 0x4f, 0x2a, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x03, 0xd0, 0x06, 0x21, + 0x68, 0x68, 0xfa, 0xf7, 0x7c, 0xfd, 0x68, 0x68, + 0x00, 0x68, 0x3c, 0x00, 0xac, 0xe9, 0x00, 0x00, + 0x81, 0x78, 0x00, 0x29, 0x2b, 0xd1, 0xc1, 0x78, + 0x00, 0x29, 0x30, 0xd1, 0x21, 0x8e, 0x01, 0x39, + 0x21, 0x86, 0xfb, 0xf7, 0x15, 0xf8, 0xa1, 0x6a, + 0x08, 0x1a, 0xa0, 0x62, 0xe1, 0x69, 0x88, 0x42, + 0x03, 0xd9, 0x04, 0x21, 0x02, 0x20, 0xf2, 0xf7, + 0x67, 0xfc, 0xb8, 0x68, 0x00, 0x28, 0x1e, 0xd0, + 0x1a, 0x49, 0x20, 0x8e, 0x49, 0x68, 0x0c, 0x22, + 0x52, 0x1a, 0x90, 0x42, 0x3c, 0x00, 0xe8, 0xe9, + 0x00, 0x00, 0x08, 0xd3, 0x19, 0x23, 0x9b, 0x01, + 0xaf, 0x22, 0x92, 0x01, 0x59, 0x43, 0xa0, 0x6a, + 0x51, 0x1a, 0x88, 0x42, 0x0e, 0xd2, 0x00, 0x21, + 0x0c, 0x20, 0x03, 0xf0, 0xac, 0xfc, 0x00, 0x20, + 0xb8, 0x60, 0x07, 0xe0, 0x01, 0x29, 0x05, 0xd1, + 0xc0, 0x78, 0x17, 0x28, 0x02, 0xd1, 0xa0, 0x8e, + 0x01, 0x38, 0xa0, 0x86, 0x2a, 0x1d, 0x06, 0xca, + 0xe0, 0x68, 0x63, 0x69, 0xf1, 0xf7, 0x3c, 0x00, + 0x24, 0xea, 0x00, 0x00, 0xdc, 0xfc, 0xb5, 0x42, + 0x01, 0xd0, 0x2d, 0x68, 0xb4, 0xe7, 0xa0, 0x8d, + 0x00, 0x28, 0x03, 0xd1, 0x05, 0x48, 0xb9, 0x69, + 0x00, 0xf0, 0x9e, 0xfc, 0xf8, 0xbd, 0x00, 0x00, + 0xfc, 0x5a, 0x01, 0x00, 0xcc, 0x5c, 0x01, 0x00, + 0x18, 0x57, 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, + 0x89, 0x07, 0x07, 0x4b, 0xca, 0x0f, 0x80, 0xb5, + 0x19, 0x7c, 0x00, 0x29, 0x06, 0xd0, 0x81, 0x43, + 0x3c, 0x00, 0x60, 0xea, 0x00, 0x00, 0x19, 0x74, + 0x03, 0xd1, 0x07, 0x21, 0x15, 0x20, 0x04, 0xf0, + 0xa2, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x1c, 0x01, 0x20, + 0xff, 0xf7, 0xe9, 0xff, 0x80, 0xbd, 0x80, 0xb5, + 0x01, 0x1c, 0x02, 0x20, 0xff, 0xf7, 0xe3, 0xff, + 0x80, 0xbd, 0xb0, 0xb5, 0x1b, 0x4c, 0x60, 0x68, + 0xfc, 0xf7, 0x2f, 0xff, 0x20, 0x68, 0x00, 0x25, + 0x40, 0x68, 0x3c, 0x00, 0x9c, 0xea, 0x00, 0x00, + 0x00, 0x28, 0x03, 0xd0, 0xfd, 0xf7, 0x18, 0xfc, + 0x20, 0x68, 0x45, 0x60, 0x60, 0x68, 0xfc, 0xf7, + 0xc5, 0xfe, 0x14, 0x48, 0x61, 0x68, 0x00, 0xf0, + 0x61, 0xfc, 0xa0, 0x7a, 0x01, 0x28, 0x05, 0xd0, + 0x02, 0x28, 0x03, 0xd0, 0x20, 0x68, 0x00, 0x68, + 0x00, 0xf0, 0xde, 0xf8, 0x01, 0x21, 0x1f, 0x20, + 0x04, 0xf0, 0xb2, 0xfd, 0x00, 0x21, 0x1f, 0x20, + 0x04, 0xf0, 0xae, 0xfd, 0x3c, 0x00, 0xd8, 0xea, + 0x00, 0x00, 0x02, 0x21, 0x1f, 0x20, 0x04, 0xf0, + 0xaa, 0xfd, 0xa5, 0x72, 0x21, 0x68, 0x2c, 0x20, + 0x40, 0x5c, 0x89, 0x68, 0xf1, 0xf7, 0x76, 0xfc, + 0x60, 0x68, 0xfc, 0xf7, 0xe4, 0xfe, 0x20, 0x68, + 0x05, 0x62, 0xb0, 0xbd, 0x00, 0x00, 0x14, 0x7a, + 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, 0x04, 0x49, + 0x0a, 0x68, 0xc8, 0x68, 0x92, 0x6a, 0x00, 0x2a, + 0x01, 0xd0, 0x09, 0x69, 0x08, 0x18, 0x3c, 0x00, + 0x14, 0xeb, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0xb0, 0xb5, 0x13, 0x4c, + 0x05, 0x1c, 0xa0, 0x7a, 0x01, 0x38, 0x02, 0x28, + 0x19, 0xd8, 0x01, 0x21, 0x1f, 0x20, 0x04, 0xf0, + 0x81, 0xfd, 0x20, 0x68, 0xfc, 0x23, 0x01, 0x1c, + 0x20, 0x30, 0x02, 0x7b, 0x1a, 0x40, 0x02, 0x73, + 0x00, 0x2d, 0x0f, 0xd0, 0x01, 0x23, 0x1a, 0x43, + 0x02, 0x73, 0xa0, 0x7a, 0x03, 0x28, 0x07, 0xd1, + 0x3c, 0x00, 0x50, 0xeb, 0x00, 0x00, 0x01, 0x20, + 0x01, 0xf0, 0xe7, 0xfd, 0x00, 0x28, 0x01, 0xd1, + 0xff, 0xf7, 0x97, 0xff, 0xb0, 0xbd, 0x4b, 0x62, + 0xb0, 0xbd, 0x02, 0x21, 0x11, 0x43, 0x01, 0x73, + 0xf6, 0xe7, 0x14, 0x7a, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x0a, 0x30, 0xf6, 0xf7, 0x43, 0xfe, + 0x00, 0x28, 0x0c, 0xd0, 0x22, 0x88, 0x0a, 0x49, + 0x0b, 0x7a, 0x90, 0x04, 0xc0, 0x0f, 0x00, 0x2b, + 0x06, 0xd1, 0x3c, 0x00, 0x8c, 0xeb, 0x00, 0x00, + 0x12, 0x06, 0x92, 0x0e, 0x20, 0x2a, 0x00, 0xd1, + 0x01, 0x20, 0xc8, 0x60, 0x10, 0xbd, 0x00, 0x28, + 0xfc, 0xd1, 0x00, 0x22, 0x24, 0x21, 0x80, 0x20, + 0x04, 0xf0, 0x04, 0xfe, 0x10, 0xbd, 0x00, 0x00, + 0x04, 0x7a, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x1c, + 0x1f, 0x21, 0x80, 0x20, 0x04, 0xf0, 0xfa, 0xfd, + 0x80, 0xbd, 0x00, 0x00, 0xf8, 0xb5, 0x1d, 0x4e, + 0x04, 0x1c, 0x30, 0x68, 0x3c, 0x00, 0xc8, 0xeb, + 0x00, 0x00, 0x1d, 0x1c, 0x47, 0x68, 0x20, 0x1c, + 0xf1, 0xf7, 0x0a, 0xfc, 0xfb, 0xf7, 0x87, 0xfa, + 0x00, 0x28, 0x04, 0xd0, 0x28, 0x1c, 0xf2, 0xf7, + 0x2a, 0xfb, 0x00, 0x28, 0x28, 0xd1, 0x20, 0x88, + 0x40, 0x05, 0x25, 0xd4, 0x30, 0x68, 0x00, 0x68, + 0xfe, 0xf7, 0x59, 0xf9, 0x00, 0x28, 0x03, 0xd1, + 0xfd, 0xf7, 0x89, 0xfa, 0xf1, 0xf7, 0xed, 0xfb, + 0x30, 0x68, 0x00, 0x25, 0x40, 0x68, 0x3c, 0x00, + 0x04, 0xec, 0x00, 0x00, 0x00, 0x28, 0x03, 0xd0, + 0xfd, 0xf7, 0x64, 0xfb, 0x30, 0x68, 0x45, 0x60, + 0x20, 0x88, 0x00, 0x09, 0x00, 0x07, 0x03, 0xd1, + 0x04, 0xf0, 0xc8, 0xf8, 0x61, 0x88, 0x45, 0x18, + 0x30, 0x68, 0x45, 0x61, 0x81, 0x6a, 0x01, 0x31, + 0x81, 0x62, 0x20, 0x88, 0x80, 0x04, 0xc1, 0x0f, + 0x02, 0x48, 0xf8, 0xf7, 0xcd, 0xff, 0xf8, 0xbd, + 0x14, 0x7a, 0x01, 0x00, 0xb1, 0xeb, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xec, 0x00, 0x00, 0xb0, 0xb5, + 0x0e, 0x4c, 0x05, 0x1c, 0x60, 0x68, 0xfc, 0xf7, + 0xf6, 0xfd, 0x0c, 0x48, 0x61, 0x68, 0x00, 0xf0, + 0x92, 0xfb, 0x00, 0x21, 0x24, 0x20, 0x04, 0xf0, + 0xec, 0xfc, 0x00, 0x22, 0xd2, 0x43, 0x80, 0x21, + 0x24, 0x20, 0x04, 0xf0, 0xb8, 0xfc, 0x00, 0x20, + 0xe0, 0x60, 0x20, 0x72, 0x20, 0x68, 0x01, 0x68, + 0x28, 0x06, 0x00, 0x0e, 0xf1, 0xf7, 0xb0, 0xfb, + 0xb0, 0xbd, 0x3c, 0x00, 0x7c, 0xec, 0x00, 0x00, + 0x04, 0x7a, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0xc0, 0x68, 0xf2, 0xf7, + 0x85, 0xfc, 0x20, 0x1c, 0xf2, 0xf7, 0xb0, 0xfd, + 0x10, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x1c, 0x4e, + 0x05, 0x1c, 0xb0, 0x7a, 0x2c, 0x1c, 0x40, 0x34, + 0x02, 0x28, 0x26, 0xd1, 0xa0, 0x8b, 0x31, 0x89, + 0x88, 0x42, 0x22, 0xd1, 0x30, 0x68, 0x41, 0x6a, + 0x00, 0x29, 0x08, 0xd0, 0x3c, 0x00, 0xb8, 0xec, + 0x00, 0x00, 0x20, 0x30, 0x00, 0x7b, 0xc0, 0x07, + 0x04, 0xd5, 0x01, 0x20, 0x01, 0xf0, 0x2f, 0xfd, + 0x00, 0x28, 0x18, 0xd1, 0x60, 0x78, 0x00, 0x28, + 0x09, 0xd1, 0x30, 0x68, 0x02, 0x23, 0x20, 0x30, + 0x02, 0x7b, 0x0d, 0x49, 0x52, 0x08, 0x52, 0x00, + 0x1a, 0x43, 0x02, 0x73, 0x01, 0xe0, 0xff, 0x21, + 0xf5, 0x31, 0x01, 0x22, 0x1f, 0x20, 0x04, 0xf0, + 0x6e, 0xfc, 0x03, 0x20, 0xb0, 0x72, 0x3c, 0x00, + 0xf4, 0xec, 0x00, 0x00, 0x02, 0xe0, 0x28, 0x1c, + 0xff, 0xf7, 0xc4, 0xff, 0x60, 0x78, 0x00, 0x28, + 0x03, 0xd1, 0x29, 0x1c, 0x01, 0x20, 0x03, 0xf0, + 0x29, 0xfb, 0x70, 0xbd, 0x14, 0x7a, 0x01, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x60, 0x34, 0xe0, 0x79, 0x0e, 0x4d, 0x00, 0x28, + 0x0a, 0xd1, 0x02, 0x20, 0xa8, 0x72, 0x28, 0x68, + 0x40, 0x68, 0x00, 0x28, 0x04, 0xd1, 0x0b, 0x48, + 0x3c, 0x00, 0x30, 0xed, 0x00, 0x00, 0xfd, 0xf7, + 0xd0, 0xfa, 0x29, 0x68, 0x48, 0x60, 0x04, 0xf0, + 0x38, 0xf8, 0x29, 0x68, 0xc8, 0x61, 0xff, 0xf7, + 0xe0, 0xfe, 0x29, 0x68, 0x09, 0x69, 0x08, 0x1a, + 0x03, 0xf0, 0x6f, 0xff, 0x00, 0x28, 0x01, 0xd0, + 0xe0, 0x79, 0xa0, 0x71, 0xb0, 0xbd, 0x14, 0x7a, + 0x01, 0x00, 0xc1, 0xeb, 0x00, 0x00, 0xf8, 0xb5, + 0x04, 0x1c, 0x00, 0x26, 0x04, 0xf0, 0x21, 0xf8, + 0x05, 0x1c, 0x3c, 0x00, 0x6c, 0xed, 0x00, 0x00, + 0x22, 0x48, 0x00, 0x27, 0x07, 0x70, 0xa1, 0x07, + 0x04, 0xd0, 0xe1, 0x07, 0xc9, 0x0f, 0x01, 0x62, + 0xc5, 0x61, 0x01, 0x26, 0x41, 0x6b, 0x00, 0x29, + 0x34, 0xd1, 0x00, 0x2e, 0x32, 0xd0, 0x06, 0x1c, + 0xf9, 0xf7, 0x44, 0xff, 0x31, 0x6b, 0x1a, 0x4b, + 0x41, 0x1a, 0xa2, 0x07, 0x12, 0xd5, 0xda, 0x68, + 0x00, 0x2a, 0x08, 0xdd, 0x91, 0x42, 0x1a, 0x68, + 0x02, 0xda, 0x14, 0x09, 0x3c, 0x00, 0xa8, 0xed, + 0x00, 0x00, 0xa2, 0x18, 0x06, 0xe0, 0x14, 0x09, + 0x12, 0x1b, 0x03, 0xe0, 0x0a, 0x43, 0x02, 0xd1, + 0x1a, 0x68, 0x52, 0x00, 0x1a, 0x60, 0xb7, 0x63, + 0x0a, 0xe0, 0xb2, 0x6b, 0x01, 0x32, 0xb2, 0x63, + 0x02, 0x2a, 0x1a, 0x68, 0x01, 0xdd, 0x94, 0x08, + 0x00, 0xe0, 0x14, 0x09, 0x12, 0x1b, 0x1a, 0x60, + 0xd9, 0x60, 0x30, 0x63, 0xf5, 0x62, 0x18, 0x68, + 0x08, 0x49, 0x88, 0x42, 0x01, 0xd9, 0x3c, 0x00, + 0xe4, 0xed, 0x00, 0x00, 0x19, 0x60, 0x03, 0xe0, + 0x64, 0x28, 0x01, 0xd2, 0x64, 0x20, 0x18, 0x60, + 0xf5, 0xf7, 0xfc, 0xfd, 0xf8, 0xbd, 0x00, 0x00, + 0x60, 0x6c, 0x01, 0x00, 0xb0, 0x57, 0x01, 0x00, + 0x20, 0xa1, 0x07, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0x00, 0x20, 0x50, 0x4d, 0x00, 0x21, 0x68, 0x61, + 0x20, 0x69, 0xfb, 0xf7, 0xb3, 0xfc, 0x07, 0x1c, + 0x20, 0x69, 0x03, 0x21, 0xfb, 0xf7, 0xae, 0xfc, + 0x3c, 0x00, 0x20, 0xee, 0x00, 0x00, 0x00, 0x28, + 0x03, 0xd0, 0x80, 0x78, 0x29, 0x78, 0x88, 0x42, + 0x63, 0xd1, 0x47, 0x4d, 0x20, 0x1c, 0x14, 0x30, + 0x39, 0x1c, 0x06, 0x1c, 0x2a, 0x78, 0x02, 0xf0, + 0x5a, 0xfa, 0x00, 0x28, 0x59, 0xd1, 0xe0, 0x68, + 0x05, 0x68, 0x41, 0x48, 0x01, 0x95, 0x58, 0x30, + 0x02, 0x90, 0xfb, 0xf7, 0x6a, 0xff, 0x3e, 0x4d, + 0x19, 0x35, 0x00, 0x28, 0x0b, 0xd0, 0x28, 0x1c, + 0xfb, 0xf7, 0x3c, 0x00, 0x5c, 0xee, 0x00, 0x00, + 0x55, 0xff, 0x00, 0x28, 0x1e, 0xd1, 0x31, 0x1c, + 0x28, 0x1c, 0xfb, 0xf7, 0x65, 0xff, 0x00, 0x28, + 0x42, 0xd0, 0x17, 0xe0, 0x28, 0x1c, 0xfb, 0xf7, + 0x49, 0xff, 0x00, 0x28, 0x06, 0xd0, 0x39, 0x1c, + 0x02, 0x98, 0xfb, 0xf7, 0x63, 0xff, 0x00, 0x28, + 0x36, 0xd0, 0x0b, 0xe0, 0x39, 0x1c, 0x02, 0x98, + 0xfb, 0xf7, 0x5c, 0xff, 0x00, 0x28, 0x2f, 0xd0, + 0x31, 0x1c, 0x28, 0x1c, 0x3c, 0x00, 0x98, 0xee, + 0x00, 0x00, 0xfb, 0xf7, 0x4c, 0xff, 0x00, 0x28, + 0x29, 0xd0, 0x30, 0x1c, 0xf6, 0xf7, 0xad, 0xfc, + 0x29, 0x4a, 0x18, 0x32, 0x11, 0x7c, 0x00, 0x29, + 0x04, 0xd0, 0x51, 0x6a, 0x00, 0x29, 0x01, 0xd0, + 0x00, 0x28, 0x1c, 0xd1, 0x90, 0x6a, 0x00, 0x28, + 0x3b, 0xd0, 0x13, 0x78, 0x01, 0x9d, 0x01, 0x21, + 0x6d, 0x89, 0x01, 0x20, 0x2b, 0x40, 0x9b, 0x07, + 0x11, 0xd0, 0xa3, 0x6b, 0x1e, 0x4e, 0x3c, 0x00, + 0xd4, 0xee, 0x00, 0x00, 0x1d, 0x1c, 0x7f, 0x35, + 0x98, 0x36, 0x00, 0x2d, 0x14, 0xd0, 0x55, 0x8a, + 0x00, 0x2d, 0x08, 0xd1, 0x55, 0x69, 0xab, 0x42, + 0x0f, 0xda, 0x00, 0x20, 0x17, 0x4d, 0x01, 0x23, + 0x6b, 0x61, 0x0a, 0xe0, 0x29, 0xe0, 0xf5, 0x78, + 0x02, 0x2d, 0x06, 0xd1, 0x14, 0x4f, 0x55, 0x69, + 0x3f, 0x68, 0xed, 0x19, 0xab, 0x42, 0x00, 0xda, + 0x00, 0x20, 0x23, 0x6c, 0x1d, 0x1c, 0x7f, 0x35, + 0x3c, 0x00, 0x10, 0xef, 0x00, 0x00, 0x10, 0xd0, + 0x55, 0x8a, 0x00, 0x2d, 0x03, 0xd1, 0x95, 0x69, + 0xab, 0x42, 0x0a, 0xd2, 0x08, 0xe0, 0xf5, 0x78, + 0x02, 0x2d, 0x06, 0xd1, 0x0b, 0x4e, 0x95, 0x69, + 0x36, 0x68, 0xad, 0x19, 0xab, 0x42, 0x00, 0xd2, + 0x00, 0x21, 0x08, 0x43, 0x08, 0xd0, 0x10, 0x6a, + 0x00, 0x28, 0x01, 0xd0, 0xf1, 0xf7, 0x4b, 0xfa, + 0x00, 0x21, 0x20, 0x1c, 0x01, 0xf0, 0xb9, 0xf9, + 0xfe, 0xbd, 0x3c, 0x00, 0x4c, 0xef, 0x00, 0x00, + 0xec, 0x65, 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, + 0xcc, 0x67, 0x01, 0x00, 0x3e, 0xb5, 0x05, 0x6a, + 0x04, 0x1c, 0xc0, 0x68, 0xf2, 0xf7, 0x34, 0xfb, + 0xe1, 0x69, 0xf2, 0xf7, 0x57, 0xfa, 0x20, 0x1c, + 0x40, 0x30, 0xc1, 0x8b, 0x04, 0x31, 0xc1, 0x83, + 0x2b, 0x69, 0x10, 0x49, 0x98, 0x79, 0x06, 0x28, + 0x0a, 0xd1, 0x98, 0x88, 0x01, 0x91, 0x02, 0x94, + 0x00, 0x90, 0x60, 0x69, 0x3c, 0x00, 0x88, 0xef, + 0x00, 0x00, 0x1b, 0x68, 0x01, 0x68, 0xe0, 0x68, + 0x03, 0x22, 0xc0, 0x68, 0x0a, 0xe0, 0x02, 0x28, + 0x0b, 0xd1, 0x10, 0x20, 0x00, 0x90, 0x01, 0x91, + 0x02, 0x94, 0xe0, 0x68, 0xa3, 0x69, 0xc0, 0x68, + 0x00, 0x22, 0x00, 0x21, 0xf7, 0xf7, 0x0f, 0xfb, + 0x3e, 0xbd, 0xf2, 0xf7, 0xa6, 0xf9, 0xfb, 0xe7, + 0x00, 0x00, 0xbd, 0xef, 0x00, 0x00, 0x80, 0xb5, + 0xd1, 0x68, 0x50, 0x69, 0xc9, 0x68, 0x3c, 0x00, + 0xc4, 0xef, 0x00, 0x00, 0xc1, 0x60, 0xd1, 0x68, + 0xc8, 0x60, 0x11, 0x1c, 0x40, 0x31, 0xcb, 0x8b, + 0x00, 0x89, 0x18, 0x18, 0xc8, 0x83, 0x10, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0xff, 0xf7, 0xbc, 0xff, + 0x80, 0xbd, 0x03, 0x48, 0xfb, 0xf7, 0xcc, 0xf8, + 0x00, 0x6a, 0xfe, 0xf7, 0xf5, 0xf9, 0x80, 0xbd, + 0xa0, 0x6a, 0x01, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x0a, 0x24, 0x30, 0x07, 0x01, 0x09, 0xa0, 0x07, + 0x3c, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x01, 0x43, + 0x0f, 0x1c, 0x0a, 0x4d, 0x2f, 0x60, 0x04, 0xf0, + 0xfa, 0xfe, 0xad, 0x68, 0x28, 0x01, 0x00, 0x0f, + 0xb0, 0x42, 0x05, 0xd0, 0x01, 0x3c, 0xf4, 0xd2, + 0x01, 0x21, 0x9b, 0x20, 0xf2, 0xf7, 0x41, 0xf9, + 0x28, 0x02, 0x00, 0x0a, 0x08, 0x2e, 0x01, 0xd1, + 0x31, 0x05, 0x08, 0x43, 0xf8, 0xbd, 0x60, 0x00, + 0x07, 0x00, 0x01, 0x22, 0xd2, 0x05, 0x80, 0xb5, + 0x00, 0x21, 0x3c, 0x00, 0x3c, 0xf0, 0x00, 0x00, + 0x04, 0x20, 0x04, 0xf0, 0xdd, 0xfc, 0x0f, 0x20, + 0xff, 0xf7, 0xd6, 0xff, 0x0f, 0x21, 0x09, 0x04, + 0x08, 0x40, 0x00, 0x0c, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x05, 0x48, 0xfd, 0xf7, 0x4a, 0xf9, + 0x04, 0x48, 0xfd, 0xf7, 0x7b, 0xf8, 0x04, 0x48, + 0xfd, 0xf7, 0x6c, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0x89, 0x34, 0x01, 0x00, 0xed, 0x24, 0x00, 0x00, + 0x11, 0x1c, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xf0, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0x48, 0xf3, 0xf7, + 0x2a, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0xd1, 0x24, + 0x00, 0x00, 0x80, 0xb5, 0xf2, 0xf7, 0x53, 0xf9, + 0x80, 0xbd, 0x80, 0xb5, 0x00, 0x21, 0x00, 0x20, + 0x01, 0xf0, 0x51, 0xfe, 0x03, 0x20, 0x02, 0xf0, + 0x46, 0xff, 0x80, 0xbd, 0x00, 0x00, 0x06, 0x48, + 0x80, 0xb5, 0xc1, 0x69, 0x00, 0x29, 0x06, 0xd1, + 0x01, 0x6a, 0x00, 0x29, 0x03, 0xd1, 0x3c, 0x00, + 0xb4, 0xf0, 0x00, 0x00, 0x81, 0x6b, 0x03, 0x48, + 0x00, 0xf0, 0x5e, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0x34, 0x63, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x4c, 0x20, 0x6a, 0xfc, 0xf7, + 0xb3, 0xfb, 0x03, 0x48, 0x21, 0x6a, 0x00, 0xf0, + 0x4f, 0xf9, 0x10, 0xbd, 0x1c, 0x75, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x4c, + 0x20, 0x7c, 0x00, 0x28, 0x02, 0xd0, 0x01, 0x21, + 0x3c, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0xfd, 0xf7, + 0x86, 0xf9, 0x00, 0x25, 0x25, 0x70, 0xa0, 0x68, + 0x01, 0x28, 0x03, 0xd1, 0x00, 0x20, 0xa5, 0x60, + 0x01, 0xf0, 0x8f, 0xf8, 0xa0, 0x78, 0x01, 0x28, + 0x05, 0xd1, 0x03, 0x48, 0x98, 0x38, 0x00, 0x69, + 0xfc, 0xf7, 0xef, 0xfb, 0xa5, 0x70, 0xb0, 0xbd, + 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x21, 0x01, 0x20, 0x01, 0xf0, 0x09, 0xfe, + 0x80, 0xbd, 0x3c, 0x00, 0x2c, 0xf1, 0x00, 0x00, + 0x38, 0xb5, 0x69, 0x46, 0x00, 0x25, 0xf8, 0xf7, + 0xb7, 0xfe, 0x04, 0x1c, 0x01, 0xd1, 0x01, 0x20, + 0x38, 0xbd, 0xa0, 0x68, 0x00, 0x28, 0x04, 0xd0, + 0x00, 0x99, 0xa1, 0x31, 0x08, 0x20, 0x04, 0xf0, + 0x73, 0xfa, 0x1c, 0x21, 0x20, 0x1c, 0xf1, 0xf7, + 0xa3, 0xf9, 0x28, 0x1c, 0xf0, 0xe7, 0x00, 0x00, + 0xfe, 0xb5, 0x07, 0x1c, 0x4c, 0x23, 0x39, 0x49, + 0x58, 0x43, 0x44, 0x18, 0x3c, 0x00, 0x68, 0xf1, + 0x00, 0x00, 0x25, 0x1c, 0x40, 0x35, 0x28, 0x7a, + 0x37, 0x49, 0x48, 0x76, 0x21, 0x1c, 0x30, 0x31, + 0x02, 0x91, 0x0c, 0x23, 0xc8, 0x56, 0x42, 0x1c, + 0x0a, 0x73, 0x49, 0x7b, 0x88, 0x42, 0x46, 0xda, + 0x32, 0x48, 0x00, 0x78, 0x80, 0x07, 0x3e, 0xd5, + 0x00, 0x20, 0x01, 0x90, 0xf6, 0xf7, 0xaf, 0xfa, + 0x00, 0x28, 0x2e, 0xd0, 0xac, 0x21, 0x09, 0x58, + 0x00, 0x29, 0x01, 0xd0, 0xe4, 0x30, 0x3c, 0x00, + 0xa4, 0xf1, 0x00, 0x00, 0x00, 0xe0, 0xcc, 0x30, + 0x06, 0x1c, 0x40, 0x68, 0x00, 0x28, 0x25, 0xd0, + 0x02, 0x99, 0x08, 0x7b, 0x01, 0x28, 0x11, 0xd1, + 0x20, 0x1c, 0x2e, 0x30, 0x29, 0x78, 0xf6, 0xf7, + 0xed, 0xf9, 0x71, 0x68, 0x03, 0xe0, 0x72, 0x18, + 0x12, 0x7a, 0x82, 0x42, 0x03, 0xd9, 0xff, 0x31, + 0x09, 0x06, 0x09, 0x0e, 0xf7, 0xd1, 0xa9, 0x70, + 0x01, 0x20, 0x01, 0x90, 0x23, 0x1c, 0x3e, 0x33, + 0x3c, 0x00, 0xe0, 0xf1, 0x00, 0x00, 0x1a, 0x1d, + 0x30, 0x1c, 0x00, 0x97, 0x01, 0x99, 0xf8, 0xf7, + 0x58, 0xfa, 0x00, 0x28, 0x11, 0xd0, 0xa8, 0x78, + 0x80, 0x19, 0x00, 0x7a, 0x00, 0xe0, 0x00, 0x20, + 0x68, 0x70, 0x68, 0x78, 0x01, 0x21, 0xfb, 0xf7, + 0xe0, 0xfd, 0x60, 0x60, 0x38, 0x1c, 0x01, 0xf0, + 0x14, 0xfe, 0x38, 0x1c, 0x01, 0xf0, 0xa5, 0xfb, + 0xfe, 0xbd, 0x02, 0x99, 0x08, 0x7b, 0xff, 0x30, + 0x48, 0x73, 0x3c, 0x00, 0x1c, 0xf2, 0x00, 0x00, + 0x38, 0x1c, 0xfc, 0xf7, 0x19, 0xfc, 0x03, 0xf0, + 0xc3, 0xfd, 0x06, 0x1c, 0xfb, 0xf7, 0x8e, 0xfe, + 0x41, 0x00, 0x76, 0x18, 0x68, 0x78, 0x61, 0x68, + 0xfb, 0xf7, 0x6a, 0xfe, 0x31, 0x18, 0x20, 0x8d, + 0x3b, 0x1c, 0x05, 0x4a, 0x03, 0xf0, 0x12, 0xfe, + 0xe5, 0xe7, 0x00, 0x00, 0x58, 0xe3, 0x01, 0x00, + 0x30, 0x80, 0x07, 0x00, 0x1d, 0x75, 0x01, 0x00, + 0xd5, 0x4e, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xf2, + 0x00, 0x00, 0x03, 0x1c, 0x04, 0x48, 0x80, 0xb5, + 0x02, 0x79, 0x20, 0x30, 0x03, 0x49, 0x00, 0xf0, + 0x30, 0xf8, 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, 0x03, 0x1c, + 0x04, 0x48, 0x80, 0xb5, 0xc2, 0x78, 0x38, 0x30, + 0x03, 0x49, 0x00, 0xf0, 0x22, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0xac, 0x7c, 0x01, 0x00, 0xc8, 0x67, + 0x01, 0x00, 0x03, 0x1c, 0x04, 0x48, 0x3c, 0x00, + 0x94, 0xf2, 0x00, 0x00, 0x80, 0xb5, 0x82, 0x79, + 0x50, 0x30, 0x03, 0x49, 0x00, 0xf0, 0x14, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7c, 0x01, 0x00, + 0xcc, 0x67, 0x01, 0x00, 0x03, 0x1c, 0x04, 0x48, + 0x80, 0xb5, 0x42, 0x79, 0x68, 0x30, 0x03, 0x49, + 0x00, 0xf0, 0x06, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0xac, 0x7c, 0x01, 0x00, 0xd0, 0x67, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x24, 0x84, 0x80, 0x0b, 0x60, + 0x3c, 0x00, 0xd0, 0xf2, 0x00, 0x00, 0x19, 0x1c, + 0x51, 0x43, 0x01, 0x60, 0x19, 0x06, 0x09, 0x16, + 0x10, 0x22, 0x06, 0x30, 0xf1, 0xf7, 0x9f, 0xf9, + 0x10, 0xbd, 0xb0, 0xb5, 0x06, 0x4d, 0x00, 0x24, + 0xac, 0x60, 0xec, 0x60, 0xec, 0x61, 0x2c, 0x62, + 0x02, 0xf0, 0xf1, 0xfc, 0x00, 0xf0, 0x0d, 0xf8, + 0xec, 0x62, 0x2c, 0x70, 0xb0, 0xbd, 0x44, 0x7d, + 0x01, 0x00, 0x80, 0xb5, 0x80, 0x21, 0x01, 0x48, + 0xf1, 0xf7, 0x3c, 0x00, 0x0c, 0xf3, 0x00, 0x00, + 0xc7, 0xf8, 0x80, 0xbd, 0x04, 0x66, 0x01, 0x00, + 0xf8, 0xb5, 0x07, 0x4f, 0x00, 0x24, 0x00, 0x26, + 0x18, 0x20, 0x60, 0x43, 0xc5, 0x19, 0xee, 0x60, + 0x03, 0xf0, 0x42, 0xfd, 0x10, 0x35, 0x01, 0x34, + 0x02, 0x2c, 0x41, 0xc5, 0xf4, 0xdb, 0xf8, 0xbd, + 0xb8, 0x7d, 0x01, 0x00, 0x00, 0x23, 0x03, 0x60, + 0x04, 0x4b, 0x00, 0x29, 0x00, 0xd1, 0x19, 0x1c, + 0x41, 0x60, 0x00, 0x2a, 0x3c, 0x00, 0x48, 0xf3, + 0x00, 0x00, 0x00, 0xd1, 0x1a, 0x1c, 0x82, 0x60, + 0x70, 0x47, 0xbd, 0x75, 0x00, 0x00, 0x10, 0xb5, + 0x07, 0x4c, 0x20, 0x68, 0x01, 0x30, 0x20, 0x60, + 0x20, 0x28, 0x03, 0xd9, 0x58, 0x21, 0x58, 0x20, + 0xf1, 0xf7, 0x9d, 0xff, 0x21, 0x68, 0x01, 0x20, + 0x01, 0x39, 0x88, 0x40, 0x10, 0xbd, 0x60, 0x5b, + 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, + 0x21, 0x68, 0x00, 0x20, 0x00, 0x29, 0x3c, 0x00, + 0x84, 0xf3, 0x00, 0x00, 0x0a, 0xd0, 0xa9, 0x43, + 0x21, 0x60, 0x07, 0xd1, 0xa0, 0x68, 0xf1, 0xf7, + 0x23, 0xf8, 0x00, 0x28, 0x02, 0xd1, 0x21, 0x68, + 0x29, 0x43, 0x21, 0x60, 0xb0, 0xbd, 0x00, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x04, 0x1c, 0x21, 0x68, + 0x00, 0x20, 0x29, 0x43, 0x21, 0x60, 0xa9, 0x42, + 0x07, 0xd1, 0x60, 0x68, 0xf1, 0xf7, 0x10, 0xf8, + 0x00, 0x28, 0x02, 0xd1, 0x21, 0x68, 0xa9, 0x43, + 0x3c, 0x00, 0xc0, 0xf3, 0x00, 0x00, 0x21, 0x60, + 0xb0, 0xbd, 0x1a, 0x4b, 0xb0, 0xb5, 0x9a, 0x6a, + 0x00, 0x28, 0x0b, 0xd0, 0x00, 0x2a, 0x07, 0xdb, + 0xb8, 0x24, 0x24, 0x58, 0x01, 0x3c, 0xa4, 0x1a, + 0x00, 0x19, 0xb0, 0x30, 0x00, 0x7b, 0x02, 0xe0, + 0x0e, 0x20, 0x00, 0xe0, 0x0d, 0x20, 0x5d, 0x6a, + 0x12, 0x4c, 0x00, 0x2d, 0x01, 0xd0, 0x20, 0x78, + 0x00, 0xe0, 0x20, 0x5c, 0xff, 0x24, 0xa8, 0x34, + 0xc4, 0x40, 0x3c, 0x00, 0xfc, 0xf3, 0x00, 0x00, + 0x9c, 0x60, 0xf5, 0x24, 0xc4, 0x40, 0x9c, 0x61, + 0xfd, 0x24, 0xc4, 0x40, 0xdc, 0x61, 0xff, 0x24, + 0x29, 0x34, 0xc4, 0x40, 0x5c, 0x61, 0xff, 0x24, + 0x53, 0x34, 0xc4, 0x40, 0x00, 0x20, 0x0c, 0x33, + 0x11, 0xc3, 0x00, 0x29, 0x05, 0xd0, 0x00, 0x2a, + 0x03, 0xdc, 0x02, 0x21, 0x50, 0x42, 0x00, 0xf0, + 0x65, 0xfb, 0xb0, 0xbd, 0xac, 0x7e, 0x01, 0x00, + 0xb8, 0x52, 0x01, 0x00, 0x3c, 0x00, 0x38, 0xf4, + 0x00, 0x00, 0x10, 0xb5, 0x13, 0x4c, 0x13, 0x48, + 0x21, 0x1c, 0xff, 0x31, 0x69, 0x31, 0x0e, 0xc9, + 0x0e, 0xc0, 0x21, 0x1c, 0xff, 0x31, 0x24, 0x22, + 0x75, 0x31, 0x0f, 0x48, 0xf1, 0xf7, 0x51, 0xf8, + 0x21, 0x1c, 0xff, 0x31, 0x3c, 0x22, 0x99, 0x31, + 0x0d, 0x48, 0xf1, 0xf7, 0xa6, 0xf8, 0xfc, 0xf7, + 0xa2, 0xff, 0x21, 0x1c, 0xff, 0x31, 0x10, 0x22, + 0xd5, 0x31, 0x09, 0x48, 0xf1, 0xf7, 0x3c, 0x00, + 0x74, 0xf4, 0x00, 0x00, 0x41, 0xf8, 0x21, 0x1c, + 0xff, 0x31, 0x28, 0x22, 0xe5, 0x31, 0x07, 0x48, + 0xf1, 0xf7, 0x96, 0xf8, 0x10, 0xbd, 0x00, 0x00, + 0x40, 0x63, 0x01, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x0c, 0x80, 0x07, 0x00, 0x30, 0x80, 0x07, 0x00, + 0x80, 0x80, 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, + 0xf8, 0xb5, 0x00, 0x28, 0x59, 0xd0, 0x04, 0xf0, + 0x4b, 0xf9, 0xf8, 0xf7, 0xb3, 0xfb, 0x00, 0x22, + 0x3c, 0x00, 0xb0, 0xf4, 0x00, 0x00, 0x01, 0x21, + 0x13, 0x20, 0x04, 0xf0, 0x7c, 0xf9, 0x2a, 0x49, + 0x29, 0x48, 0x49, 0x6c, 0x01, 0x60, 0x00, 0x21, + 0x29, 0x48, 0xc9, 0x43, 0x41, 0x60, 0x26, 0x4c, + 0x14, 0x34, 0x61, 0x6c, 0x81, 0x60, 0xa1, 0x6c, + 0xc1, 0x60, 0x00, 0x20, 0x25, 0x4d, 0x02, 0x26, + 0x01, 0x01, 0x6e, 0x50, 0x0a, 0x19, 0x4f, 0x19, + 0x50, 0x32, 0x04, 0x37, 0x0e, 0xca, 0x01, 0x30, + 0x08, 0x28, 0x3c, 0x00, 0xec, 0xf4, 0x00, 0x00, + 0x0e, 0xc7, 0xf4, 0xdb, 0x14, 0x22, 0x21, 0x1c, + 0xcc, 0x31, 0x1e, 0x48, 0xf1, 0xf7, 0x5a, 0xf8, + 0x1d, 0x48, 0x81, 0x78, 0x09, 0x09, 0x09, 0x01, + 0x81, 0x70, 0x00, 0x21, 0xc1, 0x70, 0x41, 0x70, + 0x21, 0x1c, 0xe0, 0x31, 0x0a, 0x78, 0x02, 0x70, + 0x49, 0x78, 0x41, 0x70, 0x21, 0x1c, 0xe8, 0x31, + 0x30, 0x22, 0x08, 0x30, 0xf1, 0xf7, 0x46, 0xf8, + 0x21, 0x1c, 0xff, 0x31, 0x3c, 0x00, 0x28, 0xf5, + 0x00, 0x00, 0x50, 0x22, 0x19, 0x31, 0x12, 0x48, + 0xf1, 0xf7, 0x3f, 0xf8, 0x83, 0x20, 0x80, 0x00, + 0x14, 0x22, 0x21, 0x18, 0x10, 0x48, 0xf1, 0xf7, + 0x38, 0xf8, 0x11, 0x20, 0x40, 0x01, 0x84, 0x22, + 0x21, 0x18, 0x0d, 0x48, 0xf1, 0xf7, 0x31, 0xf8, + 0xff, 0xf7, 0x73, 0xff, 0x20, 0x1c, 0xf1, 0xf7, + 0x28, 0xfd, 0xf8, 0xbd, 0xff, 0xf7, 0x6d, 0xff, + 0xfb, 0xe7, 0x08, 0x20, 0x07, 0x00, 0x3c, 0x00, + 0x64, 0xf5, 0x00, 0x00, 0x2c, 0x63, 0x01, 0x00, + 0x40, 0x20, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x00, 0x40, 0x07, 0x00, 0x00, 0x50, 0x07, 0x00, + 0x00, 0x60, 0x07, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x00, 0x90, 0x07, 0x00, 0xf8, 0xb5, 0x05, 0x1c, + 0x18, 0x48, 0xc0, 0x68, 0x00, 0x28, 0x25, 0xd0, + 0x16, 0x4e, 0x01, 0x36, 0x74, 0x78, 0x30, 0x78, + 0x27, 0x1a, 0x79, 0x19, 0x20, 0x1c, 0xf1, 0xf7, + 0x3c, 0x00, 0xa0, 0xf5, 0x00, 0x00, 0x4b, 0xf8, + 0x00, 0x90, 0x29, 0x1c, 0x20, 0x1c, 0xf1, 0xf7, + 0xb2, 0xf8, 0xc1, 0x19, 0x20, 0x1c, 0xf1, 0xf7, + 0x42, 0xf8, 0x60, 0x1a, 0x30, 0x70, 0x70, 0x1e, + 0x80, 0x68, 0x00, 0x28, 0x0d, 0xd0, 0x53, 0x36, + 0xf4, 0x78, 0x00, 0x99, 0x20, 0x1c, 0xf1, 0xf7, + 0xa2, 0xf8, 0xb1, 0x78, 0x61, 0x1a, 0x41, 0x18, + 0x20, 0x1c, 0xf1, 0xf7, 0x9c, 0xf8, 0x60, 0x1a, + 0xb0, 0x70, 0x3c, 0x00, 0xdc, 0xf5, 0x00, 0x00, + 0x03, 0x48, 0x5c, 0x30, 0x01, 0x69, 0xc2, 0x68, + 0x69, 0x43, 0x51, 0x18, 0xc1, 0x60, 0xf8, 0xbd, + 0x44, 0x7d, 0x01, 0x00, 0xb0, 0xb5, 0x0c, 0x4d, + 0xe8, 0x68, 0x29, 0x69, 0x40, 0x18, 0x7d, 0x21, + 0x09, 0x01, 0x44, 0x18, 0x20, 0x1c, 0x03, 0xf0, + 0x0b, 0xfb, 0x00, 0x28, 0x0a, 0xd0, 0x03, 0xf0, + 0xcf, 0xfb, 0x01, 0x1b, 0x28, 0x69, 0xf1, 0xf7, + 0x7d, 0xf8, 0x01, 0x30, 0x3c, 0x00, 0x18, 0xf6, + 0x00, 0x00, 0x00, 0x04, 0x00, 0x0c, 0xff, 0xf7, + 0xb2, 0xff, 0xb0, 0xbd, 0x00, 0x00, 0xa0, 0x7d, + 0x01, 0x00, 0x70, 0xb5, 0x10, 0x4c, 0x60, 0x68, + 0x80, 0x25, 0xa8, 0x43, 0x60, 0x60, 0x20, 0x68, + 0x28, 0x43, 0x20, 0x60, 0x0d, 0x4e, 0x30, 0x1c, + 0x10, 0x30, 0xf3, 0xf7, 0xc8, 0xfc, 0x00, 0x28, + 0x03, 0xd1, 0x07, 0x21, 0x85, 0x20, 0xf1, 0xf7, + 0x2a, 0xfe, 0x08, 0x48, 0x00, 0x21, 0x3c, 0x00, + 0x54, 0xf6, 0x00, 0x00, 0x80, 0x68, 0x41, 0x63, + 0xc0, 0x6c, 0x10, 0x30, 0x70, 0x61, 0x01, 0x20, + 0x30, 0x61, 0x20, 0x68, 0xa8, 0x43, 0x20, 0x60, + 0x70, 0xbd, 0x00, 0x00, 0xf4, 0x00, 0x07, 0x00, + 0x00, 0x30, 0x07, 0x00, 0x24, 0x7e, 0x01, 0x00, + 0x01, 0x1c, 0x00, 0x20, 0x05, 0x29, 0x80, 0xb5, + 0x09, 0xd2, 0x02, 0xa3, 0x5b, 0x5c, 0x5b, 0x00, + 0x9f, 0x44, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, + 0x3c, 0x00, 0x90, 0xf6, 0x00, 0x00, 0x03, 0x00, + 0xff, 0xf7, 0xcf, 0xfc, 0x80, 0xbd, 0x01, 0x22, + 0x92, 0x02, 0x80, 0xb5, 0x00, 0x21, 0x07, 0x20, + 0x04, 0xf0, 0xab, 0xf9, 0x80, 0xbd, 0x80, 0xb5, + 0x40, 0x22, 0x00, 0x21, 0x00, 0x20, 0x04, 0xf0, + 0xa4, 0xf9, 0x03, 0x22, 0x00, 0x21, 0x00, 0x20, + 0x04, 0xf0, 0x9f, 0xf9, 0x80, 0xbd, 0x70, 0xb5, + 0x0e, 0x1c, 0x05, 0x1c, 0x14, 0x1c, 0x08, 0x28, + 0x0e, 0xd1, 0x3c, 0x00, 0xcc, 0xf6, 0x00, 0x00, + 0x00, 0xf0, 0x00, 0xfc, 0x0e, 0x28, 0x01, 0xd1, + 0x14, 0x20, 0x00, 0xe0, 0x10, 0x20, 0xe1, 0x03, + 0x00, 0xd5, 0x01, 0x38, 0xc0, 0x06, 0x0a, 0x49, + 0xc0, 0x0e, 0x88, 0x71, 0x08, 0xe0, 0x09, 0x2d, + 0x06, 0xd1, 0xa0, 0x04, 0x01, 0xd5, 0x00, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0xf3, 0xf7, 0xb0, 0xf9, + 0x34, 0x40, 0x21, 0x1c, 0x32, 0x1c, 0x28, 0x1c, + 0x04, 0xf0, 0x7a, 0xf9, 0x3c, 0x00, 0x08, 0xf7, + 0x00, 0x00, 0x70, 0xbd, 0x00, 0x00, 0x00, 0x80, + 0x07, 0x00, 0x70, 0xb5, 0x00, 0x24, 0x13, 0x29, + 0x11, 0xd8, 0x00, 0x28, 0x01, 0xd1, 0x08, 0x4e, + 0x08, 0x25, 0x01, 0x28, 0x01, 0xd1, 0x07, 0x4e, + 0x09, 0x25, 0x00, 0xf0, 0x78, 0xfa, 0x00, 0x28, + 0x05, 0xd0, 0x02, 0x1c, 0x31, 0x1c, 0x28, 0x1c, + 0xff, 0xf7, 0xc3, 0xff, 0x01, 0x24, 0x20, 0x1c, + 0x70, 0xbd, 0xf8, 0xff, 0x07, 0x00, 0x3c, 0x00, + 0x44, 0xf7, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x01, 0x22, 0xd2, 0x02, 0x80, 0xb5, 0x00, 0x21, + 0x07, 0x20, 0x04, 0xf0, 0x53, 0xf9, 0x80, 0xbd, + 0x0f, 0x22, 0x12, 0x04, 0x07, 0x21, 0x49, 0x04, + 0x80, 0xb5, 0x09, 0x20, 0x04, 0xf0, 0x4a, 0xf9, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x00, 0x21, + 0x04, 0x20, 0x04, 0xf0, 0x1b, 0xfc, 0x40, 0x21, + 0x00, 0x20, 0x04, 0xf0, 0x17, 0xfc, 0x04, 0x49, + 0x3c, 0x00, 0x80, 0xf7, 0x00, 0x00, 0x00, 0x20, + 0x88, 0x60, 0x02, 0x48, 0x09, 0x69, 0x20, 0x30, + 0xff, 0xf7, 0x09, 0xfe, 0x80, 0xbd, 0x64, 0x73, + 0x01, 0x00, 0xb0, 0xb5, 0x60, 0x21, 0x00, 0x20, + 0x04, 0xf0, 0x07, 0xfc, 0x11, 0x4d, 0x00, 0x24, + 0x00, 0x22, 0x04, 0x20, 0x29, 0x5d, 0x04, 0xf0, + 0x28, 0xf9, 0x0c, 0x20, 0x03, 0xf0, 0x9b, 0xfb, + 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, 0x05, 0x2c, + 0xf2, 0xd3, 0x3c, 0x00, 0xbc, 0xf7, 0x00, 0x00, + 0x0f, 0x22, 0x00, 0x21, 0x0a, 0x20, 0x04, 0xf0, + 0x1b, 0xf9, 0x61, 0x21, 0x00, 0x20, 0x04, 0xf0, + 0xef, 0xfb, 0x06, 0x49, 0x01, 0x20, 0x88, 0x60, + 0x04, 0x48, 0x09, 0x69, 0x20, 0x30, 0xff, 0xf7, + 0xcd, 0xfd, 0xff, 0x20, 0x2d, 0x30, 0xb0, 0xbd, + 0xa8, 0x58, 0x01, 0x00, 0x64, 0x73, 0x01, 0x00, + 0xf8, 0xb5, 0x06, 0x1c, 0x12, 0x48, 0xc6, 0x70, + 0x01, 0x20, 0xff, 0xf7, 0x3c, 0x00, 0xf8, 0xf7, + 0x00, 0x00, 0xfd, 0xfb, 0x01, 0x27, 0xbf, 0x02, + 0x04, 0x1c, 0xb8, 0x43, 0x01, 0x1c, 0x01, 0x20, + 0x04, 0xf0, 0xd1, 0xfb, 0x03, 0x20, 0xff, 0xf7, + 0xf2, 0xfb, 0x05, 0x1c, 0xb8, 0x43, 0x01, 0x1c, + 0x03, 0x20, 0x04, 0xf0, 0xc8, 0xfb, 0x30, 0x1c, + 0x00, 0xf0, 0x9f, 0xf9, 0x00, 0xf0, 0x57, 0xf8, + 0x21, 0x1c, 0x01, 0x20, 0x04, 0xf0, 0xbf, 0xfb, + 0x29, 0x1c, 0x03, 0x20, 0x04, 0xf0, 0x3c, 0x00, + 0x34, 0xf8, 0x00, 0x00, 0xbb, 0xfb, 0x00, 0x20, + 0xf8, 0xbd, 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x22, 0x40, 0x21, 0x00, 0x20, + 0x04, 0xf0, 0xd8, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x01, 0x24, 0x09, 0x20, + 0xff, 0xf7, 0xcc, 0xfb, 0x0f, 0x21, 0x09, 0x04, + 0x88, 0x43, 0x03, 0x21, 0x89, 0x04, 0xe2, 0x04, + 0x05, 0x2d, 0x12, 0x4e, 0x20, 0xd2, 0x02, 0xa3, + 0x3c, 0x00, 0x70, 0xf8, 0x00, 0x00, 0x5b, 0x5d, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x06, 0x09, + 0x0c, 0x10, 0x03, 0x00, 0x03, 0x21, 0x09, 0x04, + 0x0c, 0xe0, 0x01, 0x21, 0x09, 0x04, 0x09, 0xe0, + 0x01, 0x21, 0x49, 0x04, 0x06, 0xe0, 0xf3, 0x68, + 0x04, 0x2b, 0x05, 0xd9, 0x02, 0xe0, 0xf3, 0x68, + 0x04, 0x2b, 0x01, 0xd8, 0x01, 0x43, 0x01, 0xe0, + 0x10, 0x43, 0x01, 0x1c, 0x09, 0x20, 0x04, 0xf0, + 0x80, 0xfb, 0x3c, 0x00, 0xac, 0xf8, 0x00, 0x00, + 0x20, 0x1c, 0x70, 0xbd, 0x00, 0x24, 0xfb, 0xe7, + 0x64, 0x73, 0x01, 0x00, 0x01, 0x21, 0xc9, 0x05, + 0x00, 0x28, 0x80, 0xb5, 0x02, 0xd0, 0x0a, 0x1c, + 0x00, 0x21, 0x00, 0xe0, 0x00, 0x22, 0x04, 0x20, + 0x04, 0xf0, 0x96, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0xf0, 0xb5, 0x91, 0xb0, 0x00, 0x26, 0x40, 0x21, + 0x01, 0xa8, 0xf0, 0xf7, 0xdd, 0xfd, 0x2a, 0x4f, + 0xb8, 0x79, 0x01, 0x22, 0x3c, 0x00, 0xe8, 0xf8, + 0x00, 0x00, 0x52, 0x03, 0x00, 0x90, 0x00, 0x21, + 0x06, 0x20, 0x04, 0xf0, 0x84, 0xf8, 0x60, 0x21, + 0x00, 0x20, 0x04, 0xf0, 0x58, 0xfb, 0x61, 0x21, + 0x00, 0x20, 0x04, 0xf0, 0x54, 0xfb, 0x08, 0x20, + 0x03, 0xf0, 0xef, 0xfa, 0x00, 0x24, 0x0f, 0x20, + 0xff, 0xf7, 0x71, 0xfb, 0x40, 0x05, 0x05, 0x0f, + 0xa8, 0x00, 0x01, 0xa9, 0x09, 0x58, 0x01, 0xaa, + 0x01, 0x31, 0x01, 0x34, 0x0c, 0x2c, 0x3c, 0x00, + 0x24, 0xf9, 0x00, 0x00, 0x11, 0x50, 0xf1, 0xd3, + 0x00, 0x20, 0x81, 0x00, 0x01, 0xaa, 0x51, 0x58, + 0xb1, 0x42, 0x01, 0xd9, 0x0e, 0x1c, 0x05, 0x1c, + 0x01, 0x30, 0x10, 0x28, 0xf5, 0xd3, 0x06, 0x20, + 0xff, 0xf7, 0x58, 0xfb, 0x0f, 0x21, 0x49, 0x02, + 0x88, 0x43, 0x69, 0x02, 0x08, 0x43, 0x01, 0x21, + 0x49, 0x03, 0x01, 0x43, 0x06, 0x20, 0x04, 0xf0, + 0x29, 0xfb, 0x0d, 0x48, 0x84, 0x68, 0x64, 0x34, + 0x3c, 0x00, 0x60, 0xf9, 0x00, 0x00, 0x08, 0xe0, + 0x20, 0x1c, 0x03, 0xf0, 0x5a, 0xf9, 0x00, 0x28, + 0x03, 0xd0, 0x01, 0x21, 0x95, 0x20, 0xf1, 0xf7, + 0x98, 0xfc, 0x0f, 0x20, 0xff, 0xf7, 0x3d, 0xfb, + 0x00, 0x04, 0xf1, 0xd5, 0x87, 0x20, 0x03, 0xf0, + 0xb2, 0xfa, 0x00, 0x98, 0xb8, 0x71, 0x11, 0xb0, + 0xf0, 0xbd, 0x20, 0x10, 0x07, 0x00, 0x00, 0x01, + 0x07, 0x00, 0x10, 0xb5, 0x17, 0x4c, 0x61, 0x69, + 0x00, 0x29, 0x3c, 0x00, 0x9c, 0xf9, 0x00, 0x00, + 0x04, 0xd0, 0x0a, 0x21, 0x13, 0x20, 0x03, 0xf0, + 0x47, 0xfe, 0x10, 0xbd, 0x01, 0x1c, 0x12, 0x48, + 0x01, 0x29, 0x00, 0x78, 0x0c, 0xd0, 0x11, 0x29, + 0xf7, 0xd1, 0x05, 0x28, 0x03, 0xd1, 0x01, 0x21, + 0x13, 0x20, 0xf1, 0xf7, 0x71, 0xfc, 0x20, 0x78, + 0x07, 0x28, 0xee, 0xd1, 0x02, 0x21, 0x0a, 0xe0, + 0x05, 0x28, 0x07, 0xd0, 0x06, 0x28, 0x0a, 0xd0, + 0x07, 0x28, 0xf7, 0xd0, 0x3c, 0x00, 0xd8, 0xf9, + 0x00, 0x00, 0x08, 0x28, 0xe4, 0xd1, 0x00, 0x20, + 0x05, 0xe0, 0x01, 0x21, 0x13, 0x20, 0xf1, 0xf7, + 0x5e, 0xfc, 0x10, 0xbd, 0x01, 0x20, 0x02, 0xf0, + 0x6c, 0xfd, 0x10, 0xbd, 0x00, 0x00, 0x7c, 0x78, + 0x01, 0x00, 0x0d, 0x49, 0x80, 0xb5, 0x09, 0x78, + 0x03, 0x29, 0x01, 0xd1, 0x00, 0x28, 0x0b, 0xd0, + 0x07, 0x29, 0x01, 0xd1, 0x00, 0x28, 0x07, 0xd0, + 0x02, 0x29, 0x01, 0xd1, 0x00, 0x28, 0x3c, 0x00, + 0x14, 0xfa, 0x00, 0x00, 0x03, 0xd1, 0x05, 0x29, + 0x09, 0xd1, 0x00, 0x28, 0x07, 0xd0, 0x00, 0x20, + 0xfc, 0xf7, 0x28, 0xfd, 0x00, 0x22, 0x13, 0x21, + 0x11, 0x20, 0x03, 0xf0, 0xc1, 0xfe, 0x80, 0xbd, + 0x7c, 0x78, 0x01, 0x00, 0x80, 0xb5, 0x06, 0x22, + 0x08, 0x21, 0x00, 0x20, 0x03, 0xf0, 0xde, 0xff, + 0x80, 0xbd, 0x00, 0x00, 0x07, 0x48, 0x80, 0xb5, + 0x40, 0x69, 0x00, 0x28, 0x01, 0xd1, 0xf1, 0xf7, + 0x3c, 0x00, 0x50, 0xfa, 0x00, 0x00, 0x33, 0xff, + 0x05, 0x49, 0x05, 0x4a, 0x08, 0x68, 0x50, 0x61, + 0x48, 0x68, 0x90, 0x61, 0x01, 0x20, 0x80, 0xbd, + 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, 0xb0, 0x58, + 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, 0x07, 0x48, + 0x80, 0xb5, 0x40, 0x69, 0x00, 0x28, 0x01, 0xd1, + 0xf1, 0xf7, 0x1d, 0xff, 0x05, 0x49, 0x05, 0x4a, + 0x08, 0x68, 0x90, 0x61, 0x48, 0x68, 0x50, 0x61, + 0x01, 0x20, 0x3c, 0x00, 0x8c, 0xfa, 0x00, 0x00, + 0x80, 0xbd, 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, + 0xb0, 0x58, 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x11, 0xb5, 0x00, 0xab, 0x59, 0x78, 0x14, 0x48, + 0x01, 0x23, 0xc0, 0x56, 0x00, 0x22, 0x09, 0x18, + 0x0b, 0x06, 0x1b, 0x16, 0x13, 0x21, 0x13, 0x2b, + 0x02, 0xdd, 0x00, 0xab, 0x59, 0x70, 0x07, 0xe0, + 0x00, 0x2b, 0x02, 0xda, 0x00, 0xab, 0x5a, 0x70, + 0x02, 0xe0, 0x1c, 0x1c, 0x3c, 0x00, 0xc8, 0xfa, + 0x00, 0x00, 0x00, 0xab, 0x5c, 0x70, 0x00, 0xab, + 0x1b, 0x78, 0x18, 0x18, 0x00, 0x06, 0x00, 0x16, + 0x13, 0x28, 0x02, 0xdd, 0x00, 0xab, 0x19, 0x70, + 0x06, 0xe0, 0x00, 0x28, 0x02, 0xda, 0x00, 0xab, + 0x1a, 0x70, 0x01, 0xe0, 0x00, 0xab, 0x18, 0x70, + 0x00, 0x98, 0x18, 0xbd, 0x00, 0x00, 0x64, 0x73, + 0x01, 0x00, 0x38, 0xb5, 0x0c, 0x1c, 0x15, 0x49, + 0x00, 0xab, 0x49, 0x68, 0x13, 0x25, 0x3c, 0x00, + 0x04, 0xfb, 0x00, 0x00, 0x00, 0x91, 0x59, 0x78, + 0x09, 0x18, 0x59, 0x70, 0x19, 0x78, 0x08, 0x18, + 0x18, 0x70, 0x19, 0x88, 0x10, 0x48, 0x02, 0x2c, + 0xc1, 0x80, 0x01, 0xd0, 0x00, 0x2c, 0x0b, 0xd1, + 0x00, 0xab, 0x18, 0x78, 0x13, 0x28, 0x00, 0xd9, + 0x1d, 0x70, 0x00, 0xab, 0x19, 0x78, 0x00, 0x20, + 0xff, 0xf7, 0xee, 0xfd, 0x02, 0x2c, 0x01, 0xd0, + 0x01, 0x2c, 0x09, 0xd1, 0x00, 0xab, 0x58, 0x78, + 0x3c, 0x00, 0x40, 0xfb, 0x00, 0x00, 0x13, 0x28, + 0x00, 0xd9, 0x5d, 0x70, 0x00, 0xab, 0x59, 0x78, + 0x01, 0x20, 0xff, 0xf7, 0xe0, 0xfd, 0x38, 0xbd, + 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, 0xa0, 0x58, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0xb0, 0xb5, + 0x04, 0x1c, 0x0e, 0x28, 0x13, 0x4d, 0x04, 0xd0, + 0x12, 0x49, 0xa0, 0x00, 0x00, 0x19, 0x4d, 0x39, + 0x45, 0x18, 0x06, 0x20, 0xff, 0xf7, 0x3d, 0xfa, + 0x0f, 0x49, 0x3c, 0x00, 0x7c, 0xfb, 0x00, 0x00, + 0xe0, 0x22, 0x09, 0x19, 0x10, 0x39, 0xc9, 0x7b, + 0x90, 0x43, 0x49, 0x01, 0x11, 0x40, 0x01, 0x43, + 0x06, 0x20, 0x04, 0xf0, 0x0d, 0xfa, 0x29, 0x1c, + 0x05, 0x20, 0x09, 0x4a, 0x03, 0xf0, 0x30, 0xff, + 0x08, 0x48, 0x1f, 0x22, 0x00, 0x19, 0x10, 0x38, + 0xc0, 0x7b, 0xc1, 0x04, 0xd2, 0x04, 0x08, 0x20, + 0x03, 0xf0, 0x26, 0xff, 0xb0, 0xbd, 0x00, 0x00, + 0xb4, 0x09, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xfb, + 0x00, 0x00, 0x14, 0x45, 0x01, 0x00, 0xff, 0x0f, + 0x00, 0x00, 0xc0, 0x58, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x06, 0x49, 0x00, 0x28, + 0x01, 0xd1, 0x08, 0x68, 0x80, 0xbd, 0x01, 0x28, + 0x01, 0xd1, 0x48, 0x68, 0x80, 0xbd, 0xf1, 0xf7, + 0x90, 0xfb, 0x00, 0x20, 0x80, 0xbd, 0x7c, 0x73, + 0x01, 0x00, 0x01, 0x48, 0x40, 0x68, 0x70, 0x47, + 0x00, 0x00, 0xa0, 0x58, 0x01, 0x00, 0x3c, 0x00, + 0xf4, 0xfb, 0x00, 0x00, 0x04, 0x48, 0x01, 0x23, + 0x04, 0x49, 0xc0, 0x56, 0xc9, 0x56, 0x40, 0x18, + 0x00, 0x04, 0x00, 0x0c, 0x70, 0x47, 0x00, 0x00, + 0xa0, 0x58, 0x01, 0x00, 0xa2, 0x58, 0x01, 0x00, + 0x01, 0x48, 0x40, 0x68, 0x70, 0x47, 0x00, 0x00, + 0x64, 0x73, 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x1c, + 0x0e, 0x1c, 0x00, 0xf0, 0x55, 0xf9, 0x04, 0x1c, + 0x00, 0xf0, 0x58, 0xf9, 0x00, 0x28, 0x2c, 0xd0, + 0x3c, 0x00, 0x30, 0xfc, 0x00, 0x00, 0xb3, 0x00, + 0x60, 0x1e, 0x00, 0x2d, 0x1c, 0x4e, 0x19, 0x49, + 0x1a, 0x4a, 0x06, 0xd1, 0x0b, 0x25, 0x0e, 0x2c, + 0x00, 0xd1, 0x19, 0x4a, 0xd2, 0x58, 0x08, 0x56, + 0x08, 0xe0, 0x01, 0x2d, 0x1c, 0xd1, 0x9a, 0x18, + 0x04, 0x36, 0x08, 0x18, 0x08, 0x25, 0x0e, 0x23, + 0x12, 0x6d, 0xc0, 0x56, 0x07, 0x1c, 0x47, 0x43, + 0xfb, 0x00, 0xdf, 0x19, 0x12, 0x4b, 0x3f, 0x21, + 0x58, 0x43, 0x3c, 0x00, 0x6c, 0xfc, 0x00, 0x00, + 0x11, 0x4b, 0xa9, 0x40, 0x0c, 0x1c, 0x38, 0x18, + 0xc0, 0x18, 0x14, 0x40, 0xec, 0x40, 0xc0, 0x11, + 0x60, 0x43, 0x1b, 0x0a, 0xc0, 0x18, 0x80, 0x12, + 0x03, 0xd1, 0x01, 0x20, 0x04, 0xe0, 0x00, 0x20, + 0xf8, 0xbd, 0x3f, 0x28, 0x00, 0xdd, 0x3f, 0x20, + 0x30, 0x60, 0xa8, 0x40, 0x08, 0x40, 0x8a, 0x43, + 0x10, 0x43, 0xf5, 0xe7, 0xcc, 0x59, 0x01, 0x00, + 0xdc, 0x58, 0x01, 0x00, 0x3c, 0x00, 0xa8, 0xfc, + 0x00, 0x00, 0x7c, 0x73, 0x01, 0x00, 0x7c, 0x59, + 0x01, 0x00, 0x06, 0x06, 0x00, 0x00, 0x26, 0x00, + 0x02, 0x00, 0x03, 0x48, 0x08, 0xb5, 0xc0, 0x88, + 0x00, 0xab, 0x18, 0x80, 0x00, 0x98, 0x08, 0xbd, + 0x00, 0x00, 0xa0, 0x58, 0x01, 0x00, 0xb0, 0xb5, + 0x0b, 0x4d, 0x09, 0x4c, 0x0e, 0x20, 0x6c, 0x60, + 0xff, 0xf7, 0x8d, 0xf9, 0x09, 0x49, 0x02, 0x1c, + 0xc8, 0x60, 0x01, 0x06, 0x09, 0x0e, 0x3c, 0x00, + 0xe4, 0xfc, 0x00, 0x00, 0x13, 0x3a, 0x02, 0x2a, + 0x02, 0xd9, 0x17, 0x38, 0x04, 0x28, 0x00, 0xd8, + 0x00, 0x21, 0x08, 0x1c, 0x6c, 0x60, 0xb0, 0xbd, + 0x04, 0x18, 0x02, 0x00, 0x60, 0x00, 0x07, 0x00, + 0x64, 0x73, 0x01, 0x00, 0x0a, 0x48, 0x98, 0xb5, + 0x02, 0x78, 0x13, 0x21, 0x14, 0x2a, 0x00, 0xd3, + 0x01, 0x70, 0x42, 0x78, 0x14, 0x2a, 0x00, 0xd3, + 0x41, 0x70, 0x06, 0x4c, 0x60, 0x68, 0xff, 0xf7, + 0x3c, 0x00, 0x20, 0xfd, 0x00, 0x00, 0xbd, 0xfe, + 0x00, 0x90, 0x00, 0xab, 0x18, 0x88, 0xe0, 0x80, + 0x00, 0xf0, 0x75, 0xff, 0x98, 0xbd, 0xa4, 0x58, + 0x01, 0x00, 0xa0, 0x58, 0x01, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x41, 0x78, 0x01, 0x20, 0xff, 0xf7, + 0xe6, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0xa6, 0x58, + 0x01, 0x00, 0x03, 0x48, 0x80, 0xb5, 0x01, 0x78, + 0x00, 0x20, 0xff, 0xf7, 0xdc, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xfd, 0x00, 0x00, + 0xa6, 0x58, 0x01, 0x00, 0xb0, 0xb5, 0x05, 0x4d, + 0x00, 0x24, 0x20, 0x1c, 0xff, 0xf7, 0x44, 0xf9, + 0x01, 0x34, 0x10, 0x2c, 0x01, 0xc5, 0xf8, 0xd3, + 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x44, 0x01, 0x00, + 0x04, 0x49, 0x80, 0xb5, 0x88, 0x70, 0x04, 0x49, + 0x80, 0x00, 0x09, 0x58, 0x07, 0x20, 0x04, 0xf0, + 0x0f, 0xf9, 0x80, 0xbd, 0x64, 0x73, 0x01, 0x00, + 0xd0, 0x58, 0x01, 0x00, 0x3c, 0x00, 0x98, 0xfd, + 0x00, 0x00, 0xb0, 0xb5, 0x3f, 0x24, 0x02, 0x1c, + 0x00, 0x2a, 0x01, 0xd1, 0x08, 0x20, 0x0b, 0x23, + 0x01, 0x2a, 0x01, 0xd1, 0x09, 0x20, 0x08, 0x23, + 0x25, 0x1c, 0x9d, 0x40, 0x00, 0x29, 0x00, 0xd1, + 0x01, 0x21, 0x3f, 0x29, 0x00, 0xd9, 0x21, 0x1c, + 0x99, 0x40, 0x0a, 0x1c, 0x29, 0x1c, 0xff, 0xf7, + 0x7c, 0xfc, 0xb0, 0xbd, 0x00, 0x00, 0x91, 0xb5, + 0x12, 0x49, 0x00, 0xab, 0x1a, 0x78, 0x3c, 0x00, + 0xd4, 0xfd, 0x00, 0x00, 0x08, 0x78, 0x11, 0x4c, + 0x80, 0x18, 0x00, 0x06, 0x00, 0x0e, 0x20, 0x70, + 0x49, 0x78, 0x5a, 0x78, 0x89, 0x18, 0x09, 0x06, + 0x09, 0x0e, 0x13, 0x22, 0x13, 0x28, 0x61, 0x70, + 0x00, 0xd9, 0x22, 0x70, 0x13, 0x29, 0x00, 0xd9, + 0x62, 0x70, 0x08, 0x49, 0x08, 0x48, 0x06, 0x39, + 0xc9, 0x88, 0x81, 0x80, 0x21, 0x78, 0x00, 0x20, + 0xff, 0xf7, 0x82, 0xfc, 0x61, 0x78, 0x01, 0x20, + 0x3c, 0x00, 0x10, 0xfe, 0x00, 0x00, 0xff, 0xf7, + 0x7e, 0xfc, 0x98, 0xbd, 0x00, 0x00, 0xa4, 0x58, + 0x01, 0x00, 0xa6, 0x58, 0x01, 0x00, 0x64, 0x73, + 0x01, 0x00, 0x70, 0xb5, 0x1d, 0x4d, 0x04, 0x1c, + 0x28, 0x78, 0x0e, 0x1c, 0x03, 0x28, 0x03, 0xd1, + 0x02, 0x21, 0x11, 0x20, 0xf1, 0xf7, 0x35, 0xfa, + 0x20, 0x1c, 0x00, 0xf0, 0x4e, 0xf8, 0x00, 0x28, + 0x25, 0xd0, 0x28, 0x78, 0x01, 0x28, 0x0a, 0xd1, + 0x68, 0x68, 0x3c, 0x00, 0x4c, 0xfe, 0x00, 0x00, + 0x00, 0x28, 0x07, 0xd0, 0x01, 0x21, 0x11, 0x20, + 0x03, 0xf0, 0xee, 0xfb, 0x01, 0x20, 0x69, 0x68, + 0xf0, 0xf7, 0xbd, 0xfa, 0x6c, 0x70, 0x6e, 0x60, + 0x20, 0x1c, 0xff, 0xf7, 0xc1, 0xfc, 0x04, 0x1c, + 0x00, 0xf0, 0xd4, 0xfe, 0x00, 0x2c, 0x02, 0xd0, + 0x68, 0x68, 0x00, 0x28, 0x02, 0xd1, 0xf6, 0xf7, + 0xd9, 0xf8, 0x70, 0xbd, 0x01, 0x20, 0x28, 0x70, + 0x01, 0x22, 0x21, 0x1c, 0x3c, 0x00, 0x88, 0xfe, + 0x00, 0x00, 0x11, 0x20, 0x03, 0xf0, 0x9f, 0xfb, + 0x70, 0xbd, 0x02, 0x21, 0x11, 0x20, 0xf1, 0xf7, + 0x06, 0xfa, 0x70, 0xbd, 0x00, 0x00, 0x9c, 0x73, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x28, 0x05, 0xd1, + 0x00, 0x29, 0x04, 0xd0, 0x01, 0x29, 0x01, 0xd1, + 0xf6, 0xf7, 0xbf, 0xf8, 0x80, 0xbd, 0x05, 0x49, + 0x08, 0x78, 0x03, 0x28, 0x02, 0xd0, 0x00, 0x20, + 0x08, 0x70, 0x80, 0xbd, 0x03, 0x21, 0x3c, 0x00, + 0xc4, 0xfe, 0x00, 0x00, 0x11, 0x20, 0xf1, 0xf7, + 0xed, 0xf9, 0x80, 0xbd, 0x9c, 0x73, 0x01, 0x00, + 0x01, 0x48, 0x40, 0x78, 0x70, 0x47, 0x00, 0x00, + 0x9c, 0x73, 0x01, 0x00, 0x01, 0x1c, 0x01, 0x39, + 0x01, 0x20, 0x0e, 0x29, 0x00, 0xd3, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, 0x13, 0x4c, + 0x20, 0x78, 0x01, 0x28, 0x0e, 0xd1, 0x60, 0x68, + 0x00, 0x28, 0x0d, 0xd0, 0x01, 0x21, 0x11, 0x20, + 0x3c, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0xf0, + 0x98, 0xfb, 0x01, 0x20, 0x61, 0x68, 0xf0, 0xf7, + 0x67, 0xfa, 0x00, 0x20, 0x60, 0x60, 0x20, 0x70, + 0x01, 0xe0, 0x03, 0x28, 0x0e, 0xd0, 0x00, 0x21, + 0x11, 0x20, 0x03, 0xf0, 0x8a, 0xfb, 0xff, 0xf7, + 0x24, 0xfc, 0xff, 0xf7, 0xc0, 0xfb, 0x05, 0x49, + 0x08, 0x7b, 0x40, 0x08, 0x40, 0x00, 0x08, 0x73, + 0x03, 0x20, 0x20, 0x70, 0x01, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xff, 0x00, 0x00, + 0x9c, 0x73, 0x01, 0x00, 0x88, 0x00, 0x07, 0x00, + 0x10, 0xb5, 0x0d, 0x4c, 0x20, 0x78, 0x03, 0x28, + 0x13, 0xd1, 0x00, 0x20, 0x20, 0x70, 0x0b, 0x48, + 0x01, 0x7b, 0x01, 0x22, 0x11, 0x43, 0x01, 0x73, + 0xff, 0xf7, 0x70, 0xfc, 0xff, 0xf7, 0x18, 0xfc, + 0x00, 0x28, 0x06, 0xd0, 0x02, 0x21, 0x21, 0x70, + 0x01, 0x1c, 0x00, 0x22, 0x11, 0x20, 0x03, 0xf0, + 0x2b, 0xfb, 0x01, 0x20, 0x3c, 0x00, 0x78, 0xff, + 0x00, 0x00, 0x10, 0xbd, 0x00, 0x00, 0x9c, 0x73, + 0x01, 0x00, 0x88, 0x00, 0x07, 0x00, 0x80, 0xb5, + 0x05, 0x49, 0x00, 0x28, 0x04, 0xd0, 0x00, 0x20, + 0x08, 0x60, 0x03, 0xf0, 0x5a, 0xfa, 0x80, 0xbd, + 0x01, 0x20, 0x08, 0x60, 0x80, 0xbd, 0x80, 0x5a, + 0x01, 0x00, 0xfe, 0xb5, 0x05, 0x1c, 0x80, 0x35, + 0x04, 0x1c, 0xa8, 0x68, 0x29, 0x79, 0x06, 0x68, + 0x20, 0x1c, 0xa0, 0x30, 0x02, 0x29, 0x3c, 0x00, + 0xb4, 0xff, 0x00, 0x00, 0x1c, 0xd1, 0x69, 0x79, + 0x08, 0x29, 0x01, 0xd0, 0x0c, 0x29, 0x17, 0xd1, + 0x01, 0x21, 0x61, 0x62, 0xa9, 0x68, 0x09, 0x68, + 0x09, 0x8b, 0x01, 0x82, 0xa9, 0x69, 0x01, 0x91, + 0x00, 0x8a, 0xc0, 0x06, 0x05, 0xd5, 0x60, 0x68, + 0x00, 0x88, 0x40, 0x05, 0x01, 0xd4, 0x01, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x02, 0x90, 0x05, 0x20, + 0x01, 0xa9, 0x02, 0xf0, 0xb7, 0xf9, 0x02, 0xe0, + 0x3c, 0x00, 0xf0, 0xff, 0x00, 0x00, 0x00, 0x21, + 0x61, 0x62, 0x01, 0x82, 0xa9, 0x68, 0x1a, 0x23, + 0x0a, 0x89, 0x67, 0x6a, 0x18, 0x1c, 0x00, 0x2f, + 0x00, 0xd1, 0x18, 0x20, 0x10, 0x1a, 0x08, 0x81, + 0xa8, 0x68, 0x01, 0x68, 0x62, 0x6a, 0x00, 0x2a, + 0x00, 0xd1, 0x18, 0x23, 0xc9, 0x18, 0x01, 0x60, + 0xa8, 0x68, 0x41, 0xc4, 0x30, 0x88, 0x08, 0x3c, + 0x40, 0x04, 0x03, 0xd5, 0x20, 0x1c, 0xf7, 0xf7, + 0xbc, 0xf9, 0x3c, 0x00, 0x2c, 0x00, 0x01, 0x00, + 0xfe, 0xbd, 0x00, 0x21, 0xe1, 0x61, 0x30, 0x79, + 0xc0, 0x07, 0x03, 0xd4, 0x20, 0x1c, 0xf7, 0xf7, + 0x91, 0xfe, 0xf5, 0xe7, 0x20, 0x1c, 0xf7, 0xf7, + 0x43, 0xff, 0xf1, 0xe7, 0xf7, 0xb5, 0x05, 0x1c, + 0x0a, 0x30, 0x06, 0x1c, 0xf5, 0xf7, 0xa4, 0xfa, + 0x14, 0x4f, 0x04, 0x1c, 0x39, 0x88, 0xf2, 0xf7, + 0x83, 0xfe, 0x32, 0x88, 0x78, 0x68, 0x02, 0x80, + 0x72, 0x88, 0x02, 0x30, 0x3c, 0x00, 0x68, 0x00, + 0x01, 0x00, 0x02, 0x80, 0xb1, 0x88, 0x41, 0x80, + 0x69, 0x88, 0x02, 0x9a, 0x20, 0x1c, 0xfa, 0xf7, + 0xce, 0xfe, 0x0b, 0x4d, 0x08, 0x35, 0x68, 0x80, + 0xfb, 0xf7, 0x2b, 0xfe, 0x01, 0x21, 0x09, 0x03, + 0x00, 0x28, 0x28, 0x88, 0x01, 0xd0, 0x88, 0x43, + 0x00, 0xe0, 0x08, 0x43, 0x28, 0x80, 0x04, 0x48, + 0x00, 0x22, 0x00, 0x21, 0x14, 0x30, 0xf2, 0xf7, + 0x32, 0xfe, 0x20, 0x1c, 0xfc, 0xf7, 0x3c, 0x00, + 0xa4, 0x00, 0x01, 0x00, 0x85, 0xfa, 0xfe, 0xbd, + 0x24, 0x7b, 0x01, 0x00, 0x10, 0xb5, 0x13, 0x4c, + 0x11, 0x49, 0x20, 0x1c, 0xff, 0x30, 0x69, 0x30, + 0x0e, 0xc9, 0x0e, 0xc0, 0x20, 0x1c, 0xff, 0x30, + 0x24, 0x22, 0x75, 0x30, 0x0e, 0x49, 0xf0, 0xf7, + 0x17, 0xfa, 0x20, 0x1c, 0xff, 0x30, 0x3c, 0x22, + 0x99, 0x30, 0x0c, 0x49, 0xf0, 0xf7, 0x6c, 0xfa, + 0x20, 0x1c, 0xff, 0x30, 0x10, 0x22, 0xd5, 0x30, + 0x3c, 0x00, 0xe0, 0x00, 0x01, 0x00, 0x09, 0x49, + 0xf0, 0xf7, 0x09, 0xfa, 0x20, 0x1c, 0xff, 0x30, + 0x28, 0x22, 0xe5, 0x30, 0x07, 0x49, 0xf0, 0xf7, + 0x5e, 0xfa, 0x10, 0xbd, 0x00, 0x00, 0x00, 0x80, + 0x07, 0x00, 0x40, 0x63, 0x01, 0x00, 0x0c, 0x80, + 0x07, 0x00, 0x30, 0x80, 0x07, 0x00, 0x80, 0x80, + 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, 0xb0, 0xb5, + 0x00, 0x28, 0x3f, 0xd0, 0x21, 0x48, 0x41, 0x68, + 0x21, 0x4c, 0x3c, 0x00, 0x1c, 0x01, 0x01, 0x00, + 0x61, 0x60, 0xc1, 0x68, 0xe1, 0x60, 0x01, 0x69, + 0x21, 0x61, 0x80, 0x6a, 0xa0, 0x62, 0x1e, 0x49, + 0x1c, 0x48, 0x09, 0x68, 0x14, 0x38, 0x41, 0x64, + 0x1c, 0x48, 0x25, 0x1c, 0x3c, 0x35, 0x0f, 0xc8, + 0x0f, 0xc5, 0x20, 0x1c, 0x80, 0x22, 0x4c, 0x30, + 0x19, 0x49, 0xf0, 0xf7, 0x33, 0xfa, 0x14, 0x22, + 0x20, 0x1c, 0xcc, 0x30, 0x17, 0x49, 0xf0, 0xf7, + 0x2d, 0xfa, 0x38, 0x22, 0x3c, 0x00, 0x58, 0x01, + 0x01, 0x00, 0x20, 0x1c, 0xe0, 0x30, 0x15, 0x49, + 0xf0, 0xf7, 0x27, 0xfa, 0x20, 0x1c, 0xff, 0x30, + 0x50, 0x22, 0x19, 0x30, 0x13, 0x49, 0xf0, 0xf7, + 0x20, 0xfa, 0x83, 0x20, 0x80, 0x00, 0x14, 0x22, + 0x20, 0x18, 0x10, 0x49, 0xf0, 0xf7, 0x19, 0xfa, + 0x11, 0x20, 0x40, 0x01, 0x84, 0x22, 0x20, 0x18, + 0x0e, 0x49, 0xf0, 0xf7, 0x12, 0xfa, 0xff, 0xf7, + 0x8e, 0xff, 0xf8, 0xf7, 0x94, 0xfb, 0x3c, 0x00, + 0x94, 0x01, 0x01, 0x00, 0xb0, 0xbd, 0xff, 0xf7, + 0x89, 0xff, 0xb0, 0xbd, 0x00, 0x10, 0x07, 0x00, + 0x40, 0x63, 0x01, 0x00, 0x08, 0x20, 0x07, 0x00, + 0x40, 0x20, 0x07, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x00, 0x40, 0x07, 0x00, 0x00, 0x50, 0x07, 0x00, + 0x00, 0x60, 0x07, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x00, 0x90, 0x07, 0x00, 0x0c, 0x49, 0x80, 0xb5, + 0x01, 0x20, 0x48, 0x60, 0x0a, 0x48, 0x14, 0x38, + 0x3c, 0x00, 0xd0, 0x01, 0x01, 0x00, 0x00, 0x78, + 0x01, 0x28, 0x04, 0xd0, 0x08, 0x48, 0x94, 0x38, + 0x40, 0x6f, 0x00, 0x28, 0x03, 0xd0, 0x00, 0x20, + 0x00, 0xf0, 0x1f, 0xf8, 0x80, 0xbd, 0x08, 0x68, + 0x00, 0x28, 0xfb, 0xd0, 0x03, 0x48, 0xf2, 0xf7, + 0x7a, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x98, 0x66, + 0x01, 0x00, 0xff, 0xff, 0x00, 0x00, 0x80, 0xb5, + 0x00, 0x28, 0x09, 0xd1, 0xf2, 0x21, 0x0f, 0x20, + 0x03, 0xf0, 0x3c, 0x00, 0x0c, 0x02, 0x01, 0x00, + 0x13, 0xfa, 0x00, 0x22, 0x0f, 0x21, 0xf1, 0x20, + 0x03, 0xf0, 0xcc, 0xfa, 0x80, 0xbd, 0x01, 0x20, + 0xf8, 0xf7, 0x6a, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x03, 0x20, 0x00, 0xf0, + 0xc9, 0xf9, 0x00, 0x21, 0x0f, 0x20, 0x03, 0xf0, + 0xff, 0xf9, 0xff, 0xf7, 0x65, 0xf8, 0x0b, 0x49, + 0x00, 0x20, 0x48, 0x74, 0xfb, 0xf7, 0xe6, 0xfa, + 0x09, 0x48, 0x00, 0x68, 0x3c, 0x00, 0x48, 0x02, + 0x01, 0x00, 0x00, 0x28, 0x03, 0xdc, 0x02, 0x21, + 0x40, 0x42, 0xff, 0xf7, 0x52, 0xfc, 0x04, 0x48, + 0x14, 0x30, 0x00, 0x68, 0x00, 0x28, 0x02, 0xd0, + 0x20, 0x1c, 0xf2, 0xf7, 0x42, 0xfe, 0x10, 0xbd, + 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, 0xd4, 0x7e, + 0x01, 0x00, 0x06, 0x49, 0x80, 0xb5, 0x09, 0x78, + 0x04, 0x29, 0x05, 0xd0, 0x05, 0x29, 0x03, 0xd0, + 0x06, 0x29, 0x01, 0xd0, 0x07, 0x29, 0x3c, 0x00, + 0x84, 0x02, 0x01, 0x00, 0x01, 0xd1, 0xfe, 0xf7, + 0xbd, 0xfd, 0x80, 0xbd, 0x74, 0x66, 0x01, 0x00, + 0x10, 0xb5, 0x09, 0x4c, 0xe0, 0x68, 0x00, 0x28, + 0x0b, 0xd1, 0x07, 0x48, 0x2c, 0x38, 0x00, 0x8a, + 0xc0, 0x07, 0x04, 0xd5, 0x00, 0x21, 0x01, 0x20, + 0x62, 0x68, 0xf9, 0xf7, 0xc9, 0xfa, 0x01, 0x20, + 0xe0, 0x60, 0x01, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0xf4, 0x6e, 0x01, 0x00, 0x8c, 0xb5, 0x02, 0x1c, + 0x3c, 0x00, 0xc0, 0x02, 0x01, 0x00, 0x08, 0x1c, + 0x11, 0x1c, 0xfd, 0xf7, 0x28, 0xff, 0x01, 0x90, + 0x00, 0x28, 0x05, 0xd0, 0x17, 0x20, 0x00, 0xab, + 0x18, 0x80, 0x68, 0x46, 0xfd, 0xf7, 0xff, 0xf8, + 0x8c, 0xbd, 0xf1, 0xb5, 0x2e, 0x4c, 0xae, 0xb0, + 0x00, 0x25, 0x25, 0x63, 0x20, 0x69, 0x01, 0x28, + 0x03, 0xd1, 0x01, 0xa8, 0x01, 0xf0, 0xa1, 0xf8, + 0x4e, 0xe0, 0x01, 0x26, 0x28, 0x4f, 0x26, 0x70, + 0x50, 0x3f, 0x3c, 0x00, 0xfc, 0x02, 0x01, 0x00, + 0xb8, 0x69, 0xf8, 0xf7, 0x4f, 0xf8, 0x25, 0x49, + 0x2c, 0x39, 0x00, 0x28, 0x1d, 0xd0, 0xe0, 0x6a, + 0x01, 0x28, 0x1a, 0xd1, 0x08, 0x8a, 0x0f, 0x1c, + 0x80, 0x07, 0x04, 0xd5, 0x00, 0x21, 0x02, 0x20, + 0x62, 0x68, 0xf9, 0xf7, 0x8f, 0xfa, 0x38, 0x8a, + 0x00, 0x07, 0x07, 0xd5, 0xe0, 0x68, 0x01, 0x28, + 0x04, 0xd1, 0x00, 0x21, 0x08, 0x20, 0x62, 0x68, + 0xf9, 0xf7, 0x84, 0xfa, 0x3c, 0x00, 0x38, 0x03, + 0x01, 0x00, 0x00, 0x22, 0x18, 0x21, 0x82, 0x20, + 0x26, 0x63, 0x03, 0xf0, 0x36, 0xfa, 0x25, 0xe0, + 0x08, 0x8a, 0x0e, 0x1c, 0x80, 0x07, 0x04, 0xd5, + 0x00, 0x21, 0x02, 0x20, 0x62, 0x68, 0xf9, 0xf7, + 0x74, 0xfa, 0x30, 0x8a, 0x00, 0x07, 0x07, 0xd5, + 0xe0, 0x68, 0x01, 0x28, 0x04, 0xd1, 0x00, 0x21, + 0x08, 0x20, 0x62, 0x68, 0xf9, 0xf7, 0x69, 0xfa, + 0x30, 0x8a, 0x40, 0x07, 0x04, 0xd5, 0x3c, 0x00, + 0x74, 0x03, 0x01, 0x00, 0x00, 0x22, 0x00, 0x21, + 0x04, 0x20, 0xf9, 0xf7, 0x61, 0xfa, 0x2e, 0x98, + 0x01, 0x28, 0x04, 0xd0, 0x1e, 0x95, 0x09, 0x21, + 0x1b, 0xa8, 0xff, 0xf7, 0x97, 0xff, 0xe5, 0x62, + 0xbd, 0x61, 0xe5, 0x60, 0x2f, 0xb0, 0xf0, 0xbd, + 0xf4, 0x6e, 0x01, 0x00, 0x80, 0xb5, 0x07, 0x20, + 0xfe, 0xf7, 0xa0, 0xfe, 0x00, 0x21, 0x0f, 0x20, + 0x03, 0xf0, 0x44, 0xf9, 0x0c, 0x48, 0x01, 0x78, + 0x3c, 0x00, 0xb0, 0x03, 0x01, 0x00, 0x00, 0x29, + 0x0f, 0xd0, 0x02, 0x21, 0x01, 0x70, 0x88, 0x38, + 0x00, 0x78, 0x00, 0x28, 0x04, 0xd0, 0x07, 0x49, + 0x10, 0x31, 0x48, 0x7c, 0x01, 0x30, 0x48, 0x74, + 0xf2, 0x22, 0x0f, 0x20, 0x05, 0x49, 0x03, 0xf0, + 0xfc, 0xf8, 0x00, 0x22, 0x0f, 0x21, 0xf3, 0x20, + 0x03, 0xf0, 0xe9, 0xf9, 0x80, 0xbd, 0x74, 0x66, + 0x01, 0x00, 0x80, 0x84, 0x1e, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x3c, 0x00, 0xec, 0x03, 0x01, 0x00, + 0xf2, 0x21, 0x0f, 0x20, 0x03, 0xf0, 0x20, 0xf9, + 0x01, 0x2c, 0x0a, 0xd1, 0x08, 0x48, 0x08, 0x49, + 0x00, 0x68, 0x14, 0x39, 0x00, 0x28, 0x05, 0xd0, + 0xc8, 0x78, 0x02, 0x28, 0x02, 0xd1, 0xf7, 0xf7, + 0xaf, 0xfa, 0x10, 0xbd, 0x00, 0x20, 0x48, 0x70, + 0x05, 0x20, 0xfe, 0xf7, 0x65, 0xfe, 0x10, 0xbd, + 0x98, 0x66, 0x01, 0x00, 0xf8, 0xb5, 0x28, 0x4e, + 0x30, 0x21, 0x35, 0x1c, 0x3c, 0x00, 0x28, 0x04, + 0x01, 0x00, 0x60, 0x35, 0x28, 0x89, 0x89, 0x5d, + 0x88, 0x42, 0x03, 0xd1, 0x00, 0x20, 0xff, 0xf7, + 0xf6, 0xfe, 0xf8, 0xbd, 0x34, 0x1c, 0x70, 0x34, + 0x01, 0x21, 0x21, 0x70, 0x41, 0x18, 0x80, 0x19, + 0x30, 0x30, 0x29, 0x81, 0x40, 0x78, 0x1d, 0x4f, + 0x18, 0x3f, 0x38, 0x70, 0x00, 0x28, 0x08, 0xd0, + 0x00, 0x21, 0xfb, 0xf7, 0xc2, 0xf9, 0x00, 0x28, + 0x07, 0xd1, 0x20, 0x78, 0xff, 0xf7, 0x3c, 0x00, + 0x64, 0x04, 0x01, 0x00, 0x9b, 0xff, 0xe7, 0xe7, + 0x01, 0x21, 0x0f, 0x20, 0xf0, 0xf7, 0x1a, 0xff, + 0x14, 0x48, 0x01, 0x21, 0x80, 0x30, 0x81, 0x70, + 0x38, 0x69, 0xfb, 0xf7, 0x55, 0xfa, 0x20, 0x73, + 0x00, 0x21, 0x0f, 0x20, 0x03, 0xf0, 0xd6, 0xf8, + 0x70, 0x7a, 0x01, 0x28, 0x0e, 0xd1, 0x0e, 0x48, + 0x00, 0x68, 0x00, 0x28, 0x04, 0xd0, 0x38, 0x78, + 0x02, 0xf0, 0xda, 0xfa, 0x00, 0x28, 0x05, 0xd0, + 0x3c, 0x00, 0xa0, 0x04, 0x01, 0x00, 0x30, 0x7f, + 0x60, 0x73, 0x03, 0x20, 0x20, 0x70, 0x71, 0x89, + 0x05, 0xe0, 0x05, 0x20, 0x20, 0x70, 0xa8, 0x88, + 0xfa, 0xf7, 0x3b, 0xfb, 0x01, 0x1c, 0x00, 0x22, + 0x0f, 0x20, 0x03, 0xf0, 0x86, 0xf8, 0xba, 0xe7, + 0x00, 0x00, 0x04, 0x66, 0x01, 0x00, 0xe4, 0x62, + 0x01, 0x00, 0x70, 0xb5, 0x04, 0x1c, 0x02, 0xf0, + 0x6c, 0xfc, 0x36, 0x4b, 0x19, 0x1c, 0xa0, 0x31, + 0x0a, 0x78, 0x3c, 0x00, 0xdc, 0x04, 0x01, 0x00, + 0x10, 0x2a, 0x02, 0xd2, 0x0a, 0x79, 0x10, 0x2a, + 0x01, 0xd3, 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, + 0x30, 0x4e, 0xca, 0x79, 0x80, 0x36, 0x01, 0x2c, + 0x12, 0xd0, 0x00, 0x25, 0x02, 0x2c, 0x2e, 0xd0, + 0x04, 0x2c, 0x3c, 0xd1, 0x5c, 0x6b, 0x00, 0x2c, + 0x39, 0xd1, 0x9c, 0x6f, 0x00, 0x1b, 0x2a, 0x4c, + 0xa0, 0x42, 0x34, 0xd9, 0xb2, 0x68, 0x98, 0x6a, + 0x82, 0x42, 0x31, 0xd0, 0x3c, 0x00, 0x18, 0x05, + 0x01, 0x00, 0x4d, 0x72, 0x34, 0xe0, 0xb0, 0x68, + 0x9c, 0x6a, 0x02, 0x22, 0xa0, 0x42, 0x21, 0xd1, + 0x58, 0x6b, 0x00, 0x28, 0x1e, 0xd1, 0x00, 0x2d, + 0x1c, 0xd1, 0x48, 0x7a, 0x19, 0x28, 0x20, 0xd0, + 0x34, 0x68, 0x98, 0x6f, 0x64, 0x00, 0x00, 0x1b, + 0x74, 0x68, 0x00, 0x19, 0xff, 0x30, 0x1c, 0x4c, + 0x39, 0x30, 0xa0, 0x42, 0x16, 0xd2, 0x48, 0x79, + 0x8c, 0x79, 0x00, 0x19, 0x30, 0x28, 0x3c, 0x00, + 0x54, 0x05, 0x01, 0x00, 0x11, 0xd3, 0x10, 0x22, + 0x0f, 0xe0, 0x5c, 0x6b, 0x01, 0x2c, 0x06, 0xd1, + 0xb0, 0x68, 0x9a, 0x6a, 0x90, 0x42, 0x00, 0xd1, + 0x4d, 0x72, 0x00, 0x22, 0x05, 0xe0, 0x9c, 0x6f, + 0x00, 0x1b, 0x12, 0x4c, 0xa0, 0x42, 0x00, 0xd3, + 0x20, 0x22, 0x06, 0xe0, 0x4a, 0x7a, 0x19, 0x2a, + 0x01, 0xd2, 0x01, 0x32, 0x4a, 0x72, 0x20, 0x22, + 0xb0, 0x60, 0x30, 0x68, 0x9b, 0x6f, 0x98, 0x42, + 0x3c, 0x00, 0x90, 0x05, 0x01, 0x00, 0x04, 0xd1, + 0x00, 0x2a, 0x00, 0xd1, 0x48, 0x79, 0x4a, 0x71, + 0x06, 0xe0, 0x10, 0x2a, 0x04, 0xd3, 0x70, 0x60, + 0x33, 0x60, 0x48, 0x79, 0x88, 0x71, 0xf6, 0xe7, + 0xca, 0x71, 0x70, 0xbd, 0x00, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0xa3, 0x04, 0x00, 0x00, 0x71, 0x02, + 0x00, 0x00, 0x35, 0x0c, 0x00, 0x00, 0x05, 0x48, + 0x80, 0xb5, 0x81, 0x7b, 0x00, 0x29, 0x05, 0xd0, + 0x00, 0x21, 0x3c, 0x00, 0xcc, 0x05, 0x01, 0x00, + 0x81, 0x73, 0x03, 0x49, 0x0f, 0x20, 0x01, 0xf0, + 0x0f, 0xff, 0x80, 0xbd, 0x74, 0x66, 0x01, 0x00, + 0xe9, 0x03, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x1c, + 0x02, 0xf0, 0xe2, 0xfb, 0x05, 0x1c, 0x38, 0x4e, + 0x20, 0x1c, 0x37, 0x49, 0x34, 0x1c, 0xa0, 0x34, + 0x10, 0x22, 0x44, 0x39, 0x01, 0x28, 0x2c, 0xd0, + 0x04, 0x28, 0x4e, 0xd1, 0x37, 0x1c, 0x74, 0x36, + 0x09, 0xce, 0x26, 0x78, 0x3c, 0x00, 0x08, 0x06, + 0x01, 0x00, 0xc0, 0x1a, 0x20, 0x2e, 0x04, 0xd1, + 0x30, 0x4e, 0xb0, 0x42, 0x01, 0xd9, 0x00, 0x26, + 0x4e, 0x61, 0x3e, 0x1c, 0x3f, 0x6c, 0x00, 0x2f, + 0x48, 0xd1, 0x77, 0x6c, 0x00, 0x2f, 0x45, 0xd1, + 0xb7, 0x6a, 0x00, 0x2f, 0x3d, 0xd0, 0x77, 0x6b, + 0x00, 0x2f, 0x3a, 0xd0, 0x27, 0x4f, 0xb8, 0x42, + 0x37, 0xd2, 0x60, 0x78, 0x10, 0x28, 0x06, 0xd3, + 0xf0, 0x6f, 0x18, 0x1a, 0x24, 0x4b, 0x3c, 0x00, + 0x44, 0x06, 0x01, 0x00, 0x98, 0x42, 0x01, 0xd2, + 0xe2, 0x70, 0xf5, 0x66, 0x48, 0x69, 0x06, 0x28, + 0x2f, 0xd2, 0x01, 0x30, 0x2c, 0xe0, 0x20, 0x78, + 0x20, 0x28, 0x01, 0xd1, 0x06, 0x23, 0x4b, 0x61, + 0x02, 0x23, 0x23, 0x71, 0xb3, 0x6a, 0x00, 0x2b, + 0x19, 0xd0, 0x49, 0x69, 0x03, 0x29, 0x16, 0xd9, + 0x71, 0x6b, 0x73, 0x6d, 0x59, 0x40, 0x12, 0xd0, + 0xe1, 0x78, 0x10, 0x29, 0x10, 0xd3, 0x61, 0x78, + 0x3c, 0x00, 0x80, 0x06, 0x01, 0x00, 0x33, 0x1c, + 0x10, 0x29, 0x0c, 0xd3, 0xd9, 0x6f, 0x69, 0x1a, + 0x13, 0x4d, 0xa9, 0x42, 0x07, 0xd2, 0x58, 0x6c, + 0x00, 0x28, 0x02, 0xd0, 0x98, 0x6c, 0x00, 0x28, + 0x00, 0xd1, 0x22, 0x71, 0xf8, 0xbd, 0x02, 0x28, + 0xfc, 0xd1, 0x22, 0x70, 0xfa, 0xe7, 0x48, 0x69, + 0x00, 0x28, 0x01, 0xd0, 0x01, 0x38, 0x48, 0x61, + 0x0a, 0x49, 0xf0, 0x6e, 0x40, 0x18, 0x02, 0xf0, + 0xb0, 0xfa, 0x3c, 0x00, 0xbc, 0x06, 0x01, 0x00, + 0x00, 0x28, 0xee, 0xd0, 0x01, 0x20, 0xe0, 0x70, + 0x06, 0x48, 0x28, 0x18, 0xf0, 0x66, 0xe8, 0xe7, + 0xa4, 0x6c, 0x01, 0x00, 0xe2, 0x04, 0x00, 0x00, + 0x1a, 0x06, 0x00, 0x00, 0x53, 0x07, 0x00, 0x00, + 0x00, 0x2d, 0x31, 0x01, 0x00, 0x5a, 0x62, 0x02, + 0x80, 0xb5, 0x41, 0x68, 0x09, 0x79, 0xc9, 0x07, + 0x13, 0xd5, 0xc1, 0x69, 0x00, 0x29, 0x0d, 0xd0, + 0x89, 0x79, 0x02, 0x29, 0x3c, 0x00, 0xf8, 0x06, + 0x01, 0x00, 0x0a, 0xd1, 0x08, 0x21, 0x01, 0x86, + 0x01, 0x1c, 0x38, 0x31, 0x81, 0x62, 0x02, 0x1c, + 0x06, 0x48, 0x04, 0x49, 0xf9, 0xf7, 0xfd, 0xfc, + 0x80, 0xbd, 0xf7, 0xf7, 0xdc, 0xfb, 0x80, 0xbd, + 0xf7, 0xf7, 0x23, 0xfb, 0x80, 0xbd, 0xb9, 0x71, + 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, 0x10, 0xb5, + 0x00, 0x24, 0x00, 0x28, 0x03, 0xd0, 0x02, 0xf0, + 0xe8, 0xfe, 0x00, 0x28, 0x17, 0xd0, 0x3c, 0x00, + 0x34, 0x07, 0x01, 0x00, 0x0c, 0x4c, 0x01, 0x20, + 0xa0, 0x72, 0x20, 0x68, 0x00, 0x21, 0x41, 0x62, + 0x0a, 0x49, 0x02, 0x68, 0xc9, 0x78, 0x60, 0x32, + 0x91, 0x71, 0x21, 0x89, 0x01, 0x31, 0x21, 0x81, + 0x00, 0x68, 0x40, 0x30, 0x81, 0x83, 0xfb, 0xf7, + 0x31, 0xfc, 0x20, 0x68, 0x00, 0x68, 0xfc, 0xf7, + 0xa1, 0xf9, 0x01, 0x24, 0x20, 0x1c, 0x10, 0xbd, + 0x14, 0x7a, 0x01, 0x00, 0x0e, 0x61, 0x01, 0x00, + 0x3c, 0x00, 0x70, 0x07, 0x01, 0x00, 0x7f, 0xb5, + 0x06, 0x1c, 0x1e, 0x48, 0x1d, 0x1c, 0x43, 0x88, + 0x02, 0x88, 0x1c, 0x21, 0x00, 0x20, 0x90, 0xb0, + 0xf0, 0xf7, 0x45, 0xff, 0x03, 0x90, 0x04, 0x68, + 0xff, 0x21, 0x01, 0x31, 0x21, 0x80, 0x08, 0x20, + 0x60, 0x80, 0x06, 0x20, 0x20, 0x71, 0x04, 0x20, + 0x60, 0x71, 0xc0, 0x01, 0x00, 0x2d, 0x00, 0xd1, + 0x08, 0x1c, 0xe0, 0x80, 0x01, 0xa8, 0x02, 0x30, + 0x31, 0x1c, 0x3c, 0x00, 0xac, 0x07, 0x01, 0x00, + 0x05, 0x1c, 0xfa, 0xf7, 0x5f, 0xfa, 0x10, 0x49, + 0x68, 0x46, 0xfa, 0xf7, 0x5b, 0xfa, 0x20, 0x1c, + 0x08, 0x30, 0x69, 0x46, 0xfa, 0xf7, 0x56, 0xfa, + 0x29, 0x1c, 0x20, 0x1c, 0x12, 0x30, 0xfa, 0xf7, + 0x51, 0xfa, 0x10, 0xab, 0x98, 0x88, 0x00, 0x22, + 0x01, 0x21, 0x20, 0x83, 0xd8, 0x88, 0x60, 0x83, + 0x18, 0x89, 0xe0, 0x81, 0x58, 0x89, 0x20, 0x82, + 0x68, 0x46, 0xf9, 0xf7, 0x3c, 0x00, 0xe8, 0x07, + 0x01, 0x00, 0x17, 0xff, 0x14, 0xb0, 0x70, 0xbd, + 0x00, 0x00, 0x14, 0x6e, 0x01, 0x00, 0x12, 0x61, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x18, 0x48, + 0x25, 0x1c, 0x00, 0x78, 0x60, 0x35, 0x80, 0x07, + 0x00, 0x28, 0x08, 0xda, 0xe8, 0x79, 0x00, 0x28, + 0x05, 0xd0, 0xf4, 0xf7, 0x70, 0xff, 0x01, 0x1c, + 0x20, 0x1c, 0x00, 0xf0, 0x78, 0xf9, 0x29, 0x88, + 0x2e, 0x20, 0x00, 0x5d, 0xf2, 0xf7, 0x3c, 0x00, + 0x24, 0x08, 0x01, 0x00, 0x9f, 0xfa, 0xe8, 0x79, + 0x00, 0x28, 0x0b, 0xd1, 0x20, 0x1c, 0x40, 0x30, + 0x01, 0x8b, 0x22, 0x69, 0x11, 0x80, 0x41, 0x8b, + 0x22, 0x69, 0x51, 0x80, 0x80, 0x8b, 0x21, 0x69, + 0xc8, 0x82, 0x07, 0xe0, 0x01, 0x28, 0x05, 0xd1, + 0x20, 0x69, 0x01, 0x22, 0x01, 0x88, 0xd2, 0x02, + 0x11, 0x43, 0x01, 0x80, 0x6a, 0x7a, 0xe0, 0x68, + 0x02, 0x49, 0xf2, 0xf7, 0x53, 0xfa, 0xb0, 0xbd, + 0x3c, 0x00, 0x60, 0x08, 0x01, 0x00, 0x1d, 0x75, + 0x01, 0x00, 0xd1, 0x4f, 0x00, 0x00, 0x90, 0xb5, + 0x04, 0x1c, 0x38, 0x23, 0x0c, 0x49, 0x58, 0x43, + 0x43, 0x18, 0x85, 0xb0, 0x00, 0x20, 0x0a, 0x49, + 0x02, 0x90, 0x18, 0x1c, 0x01, 0x22, 0x03, 0x91, + 0x09, 0x49, 0x04, 0x92, 0x30, 0x30, 0x42, 0x78, + 0x09, 0x88, 0x01, 0x92, 0x00, 0x91, 0x01, 0x78, + 0x5a, 0x6b, 0x0c, 0x33, 0x20, 0x1c, 0xfb, 0xf7, + 0x7c, 0xf8, 0x3c, 0x00, 0x9c, 0x08, 0x01, 0x00, + 0x05, 0xb0, 0x90, 0xbd, 0xd4, 0xe4, 0x01, 0x00, + 0x5d, 0x4e, 0x00, 0x00, 0x48, 0x7b, 0x01, 0x00, + 0x90, 0xb5, 0x85, 0xb0, 0x03, 0x1c, 0x00, 0x20, + 0x02, 0x90, 0x0a, 0x49, 0x18, 0x1c, 0x00, 0x22, + 0x04, 0x92, 0x60, 0x30, 0x03, 0x91, 0xc2, 0x79, + 0x01, 0x88, 0x01, 0x92, 0x00, 0x91, 0x5a, 0x6a, + 0xdc, 0x68, 0x20, 0x33, 0x99, 0x7b, 0x40, 0x7a, + 0x23, 0x1c, 0xfb, 0xf7, 0x3c, 0x00, 0xd8, 0x08, + 0x01, 0x00, 0x5d, 0xf8, 0x05, 0xb0, 0x90, 0xbd, + 0x00, 0x00, 0x0d, 0x4f, 0x00, 0x00, 0x07, 0x49, + 0x80, 0xb5, 0x88, 0x6a, 0x00, 0x28, 0x08, 0xd1, + 0x01, 0x20, 0x88, 0x62, 0xf0, 0xf7, 0xaf, 0xfc, + 0x01, 0x1c, 0x03, 0x48, 0x00, 0x22, 0xf2, 0xf7, + 0xb8, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x41, 0xe4, 0x00, 0x00, 0xf0, 0xb5, + 0x9b, 0xb0, 0x00, 0x28, 0x20, 0xd0, 0x3c, 0x00, + 0x14, 0x09, 0x01, 0x00, 0x01, 0x1c, 0x08, 0xa8, + 0xfc, 0xf7, 0xb2, 0xfd, 0x01, 0x20, 0x11, 0x90, + 0x03, 0x20, 0x10, 0xad, 0x28, 0x72, 0x04, 0x20, + 0x68, 0x72, 0x05, 0xa8, 0x00, 0x22, 0x69, 0x46, + 0xf4, 0xf7, 0x00, 0xff, 0x00, 0x24, 0x00, 0x26, + 0x05, 0xa9, 0x00, 0x20, 0xf9, 0xf7, 0xfc, 0xfa, + 0x69, 0x46, 0xf9, 0xf7, 0xf9, 0xfa, 0x0b, 0x90, + 0x08, 0xa8, 0xfc, 0xf7, 0xbb, 0xfd, 0x01, 0x34, + 0x3c, 0x00, 0x50, 0x09, 0x01, 0x00, 0x02, 0x2c, + 0x2e, 0x72, 0xf0, 0xdb, 0x1b, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0x90, 0xb5, 0x04, 0x1c, 0x4c, 0x23, + 0x0c, 0x49, 0x58, 0x43, 0x43, 0x18, 0x85, 0xb0, + 0x00, 0x20, 0x0a, 0x49, 0x02, 0x90, 0x00, 0x22, + 0x04, 0x92, 0x3c, 0x20, 0x03, 0x91, 0xc2, 0x5c, + 0x08, 0x48, 0x41, 0x88, 0x01, 0x92, 0x41, 0x20, + 0x00, 0x91, 0xc1, 0x5c, 0x5a, 0x68, 0x08, 0x33, + 0x20, 0x1c, 0x3c, 0x00, 0x8c, 0x09, 0x01, 0x00, + 0xfb, 0xf7, 0x02, 0xf8, 0x05, 0xb0, 0x90, 0xbd, + 0x58, 0xe3, 0x01, 0x00, 0x75, 0x4f, 0x00, 0x00, + 0x3c, 0x7c, 0x01, 0x00, 0xf8, 0xb5, 0x0e, 0x1c, + 0x22, 0x4c, 0x38, 0x21, 0x17, 0x1c, 0x05, 0x1c, + 0x20, 0x1c, 0xef, 0xf7, 0x75, 0xfd, 0x23, 0x1c, + 0x25, 0x33, 0x21, 0x1c, 0x24, 0x31, 0x10, 0x20, + 0x6a, 0x46, 0xf9, 0xf7, 0x1d, 0xf8, 0x00, 0xab, + 0x18, 0x88, 0x07, 0x21, 0x3c, 0x00, 0xc8, 0x09, + 0x01, 0x00, 0x1a, 0x4a, 0x02, 0x38, 0x20, 0x84, + 0x20, 0x1c, 0x20, 0x30, 0x81, 0x70, 0xc5, 0x70, + 0x11, 0x1c, 0x06, 0x73, 0x47, 0x73, 0x34, 0x31, + 0x21, 0x63, 0x30, 0x32, 0x62, 0x63, 0x01, 0x79, + 0x25, 0x1c, 0x10, 0x35, 0x21, 0x81, 0x20, 0x60, + 0xe5, 0x60, 0x18, 0x88, 0x40, 0x1a, 0x20, 0x83, + 0x20, 0x1c, 0x28, 0x30, 0x20, 0x61, 0x20, 0x1c, + 0xf9, 0xf7, 0x11, 0xf8, 0x0d, 0x48, 0x3c, 0x00, + 0x04, 0x0a, 0x01, 0x00, 0x00, 0x68, 0x00, 0x28, + 0x07, 0xd0, 0x06, 0x21, 0x20, 0x1c, 0xf8, 0xf7, + 0x47, 0xfd, 0x10, 0x21, 0x28, 0x1c, 0xf8, 0xf7, + 0x43, 0xfd, 0x08, 0x48, 0x02, 0x21, 0x01, 0x62, + 0x44, 0x62, 0x01, 0x21, 0x01, 0x62, 0x06, 0x48, + 0x00, 0x68, 0xef, 0xf7, 0xd5, 0xfc, 0xf8, 0xbd, + 0x8c, 0x8e, 0x01, 0x00, 0xe4, 0xfe, 0x01, 0x00, + 0xcc, 0x5c, 0x01, 0x00, 0x00, 0x30, 0x07, 0x00, + 0x3c, 0x00, 0x40, 0x0a, 0x01, 0x00, 0x5c, 0x5b, + 0x01, 0x00, 0xf0, 0xb5, 0x06, 0x1c, 0x40, 0x36, + 0x31, 0x8b, 0x04, 0x1c, 0x25, 0x1c, 0x08, 0x07, + 0x80, 0x0f, 0x60, 0x35, 0x01, 0x28, 0x85, 0xb0, + 0x3b, 0xd0, 0xe8, 0x79, 0x00, 0x28, 0x05, 0xd1, + 0x20, 0x69, 0x01, 0x80, 0xb0, 0x8b, 0x21, 0x69, + 0xc8, 0x82, 0x07, 0xe0, 0x01, 0x28, 0x05, 0xd1, + 0x20, 0x69, 0x01, 0x22, 0x01, 0x88, 0xd2, 0x02, + 0x11, 0x43, 0x3c, 0x00, 0x7c, 0x0a, 0x01, 0x00, + 0x01, 0x80, 0x20, 0x48, 0x00, 0x78, 0x80, 0x07, + 0x26, 0xd5, 0xe8, 0x79, 0x00, 0x28, 0x23, 0xd0, + 0xa0, 0x6b, 0x00, 0x28, 0x1c, 0xd0, 0xf4, 0xf7, + 0x2f, 0xfe, 0x00, 0x28, 0x09, 0xd0, 0xb8, 0x21, + 0x09, 0x58, 0x00, 0x29, 0x05, 0xd0, 0x30, 0x21, + 0x09, 0x5d, 0xb4, 0x30, 0x08, 0x18, 0x07, 0x7a, + 0x00, 0xe0, 0x00, 0x27, 0x01, 0x21, 0x38, 0x1c, + 0xfa, 0xf7, 0x86, 0xf9, 0x3c, 0x00, 0xb8, 0x0a, + 0x01, 0x00, 0x04, 0x90, 0x20, 0x69, 0x04, 0x30, + 0x39, 0x1c, 0xf4, 0xf7, 0x6c, 0xfd, 0x04, 0x99, + 0xfa, 0xf7, 0xd3, 0xf9, 0x02, 0xe0, 0x20, 0x1c, + 0xf7, 0xf7, 0xf9, 0xfb, 0x70, 0x83, 0x70, 0x8b, + 0x21, 0x69, 0x00, 0x22, 0x48, 0x80, 0x09, 0x49, + 0x0a, 0x48, 0x04, 0x92, 0x03, 0x91, 0x02, 0x90, + 0xea, 0x79, 0x29, 0x88, 0x01, 0x92, 0x00, 0x91, + 0x62, 0x6a, 0xe3, 0x68, 0x20, 0x34, 0x3c, 0x00, + 0xf4, 0x0a, 0x01, 0x00, 0xa1, 0x7b, 0x68, 0x7a, + 0xfa, 0xf7, 0x4c, 0xff, 0x05, 0xb0, 0xf0, 0xbd, + 0x1d, 0x75, 0x01, 0x00, 0xd1, 0x4f, 0x00, 0x00, + 0xdd, 0x2f, 0x01, 0x00, 0xfe, 0xb5, 0x04, 0x1c, + 0x26, 0x1c, 0x01, 0x20, 0x20, 0x36, 0x00, 0x29, + 0x02, 0x90, 0x2e, 0xd0, 0x58, 0x20, 0x00, 0x5b, + 0x00, 0x07, 0x80, 0x0f, 0x01, 0x28, 0x01, 0xd1, + 0xcc, 0x31, 0x00, 0xe0, 0xb4, 0x31, 0x48, 0x68, + 0x3c, 0x00, 0x30, 0x0b, 0x01, 0x00, 0x0d, 0x1c, + 0x00, 0x28, 0x24, 0xd0, 0x20, 0x1c, 0x60, 0x30, + 0xc2, 0x79, 0x01, 0x21, 0x01, 0x2a, 0x00, 0xd0, + 0x00, 0x21, 0x27, 0x1c, 0x62, 0x6d, 0x30, 0x37, + 0x00, 0x2a, 0x04, 0xd0, 0x3a, 0x1c, 0x28, 0x1c, + 0xf6, 0xf7, 0xe7, 0xfd, 0x07, 0xe0, 0x42, 0x7a, + 0x23, 0x1c, 0x68, 0x33, 0x00, 0x92, 0x3a, 0x1c, + 0x28, 0x1c, 0xf6, 0xf7, 0x9a, 0xfd, 0x02, 0x90, + 0x38, 0x78, 0x3c, 0x00, 0x6c, 0x0b, 0x01, 0x00, + 0x40, 0x19, 0x00, 0x7a, 0x01, 0x21, 0xb0, 0x73, + 0xfa, 0xf7, 0x26, 0xf9, 0x01, 0xe0, 0x00, 0x20, + 0xb0, 0x73, 0x60, 0x62, 0xb0, 0x7b, 0x0d, 0x28, + 0x01, 0xd9, 0xf0, 0xf7, 0xbb, 0xfb, 0x02, 0x98, + 0xfe, 0xbd, 0x00, 0x00, 0xff, 0xb5, 0x04, 0x1c, + 0x80, 0x30, 0x25, 0x1c, 0x5e, 0x35, 0x00, 0x78, + 0xae, 0x1d, 0xaf, 0x1f, 0x00, 0x28, 0x83, 0xb0, + 0x12, 0xd1, 0xf4, 0xf7, 0x3c, 0x00, 0xa8, 0x0b, + 0x01, 0x00, 0xc7, 0xfb, 0x00, 0x28, 0x07, 0xd0, + 0x06, 0x98, 0x05, 0x99, 0x02, 0x90, 0x04, 0x98, + 0x01, 0x90, 0xa6, 0x61, 0x67, 0x61, 0x0d, 0xe0, + 0x04, 0x98, 0x06, 0x99, 0x02, 0x90, 0x05, 0x98, + 0x01, 0x90, 0x66, 0x61, 0x05, 0xe0, 0x04, 0xa9, + 0x03, 0xc9, 0x02, 0x90, 0x06, 0x98, 0x01, 0x90, + 0x67, 0x61, 0xa5, 0x61, 0x06, 0x22, 0x38, 0x1c, + 0xef, 0xf7, 0x8b, 0xfc, 0x06, 0x22, 0x3c, 0x00, + 0xe4, 0x0b, 0x01, 0x00, 0x28, 0x1c, 0x02, 0x99, + 0xef, 0xf7, 0x86, 0xfc, 0x06, 0x22, 0x30, 0x1c, + 0x01, 0x99, 0xef, 0xf7, 0x81, 0xfc, 0x07, 0xb0, + 0xf0, 0xbd, 0x00, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x05, 0x28, 0x01, 0xd3, 0xf0, 0xf7, + 0x7b, 0xfb, 0x02, 0x49, 0xa0, 0x00, 0x08, 0x58, + 0x85, 0x60, 0xb0, 0xbd, 0x10, 0x7b, 0x01, 0x00, + 0xf8, 0xb5, 0xff, 0xf7, 0x59, 0xf9, 0x05, 0x1c, + 0x3c, 0x00, 0x20, 0x0c, 0x01, 0x00, 0xfe, 0xf7, + 0xe8, 0xff, 0x04, 0x1c, 0x28, 0x1c, 0xff, 0xf7, + 0x58, 0xf9, 0x00, 0x28, 0x42, 0xd0, 0x69, 0x1e, + 0x21, 0x4d, 0x4a, 0x00, 0x20, 0x4b, 0x1c, 0x3d, + 0xae, 0x5c, 0x98, 0x5c, 0x30, 0x40, 0xd6, 0x18, + 0x01, 0x23, 0xf6, 0x56, 0x52, 0x19, 0xd2, 0x56, + 0x96, 0x42, 0x01, 0xdd, 0x15, 0x1c, 0x00, 0xe0, + 0x35, 0x1c, 0x18, 0x4b, 0x2a, 0x3b, 0x59, 0x56, + 0x51, 0x18, 0x3c, 0x00, 0x5c, 0x0c, 0x01, 0x00, + 0xb1, 0x42, 0x00, 0xdb, 0x31, 0x1c, 0x0e, 0x1c, + 0x00, 0x28, 0x26, 0xd0, 0xfe, 0xf7, 0xbe, 0xff, + 0x00, 0x90, 0x00, 0xab, 0x18, 0x78, 0x12, 0x49, + 0x00, 0x23, 0xc9, 0x56, 0x00, 0xab, 0x15, 0x22, + 0x10, 0x1a, 0x5b, 0x78, 0x00, 0x1b, 0x40, 0x18, + 0xd2, 0x1a, 0x12, 0x1b, 0x51, 0x18, 0x00, 0x22, + 0x85, 0x42, 0x02, 0xdb, 0x00, 0xab, 0x1a, 0x70, + 0x02, 0xe0, 0x40, 0x1b, 0x3c, 0x00, 0x98, 0x0c, + 0x01, 0x00, 0x00, 0xab, 0x18, 0x70, 0x8e, 0x42, + 0x02, 0xdb, 0x00, 0xab, 0x5a, 0x70, 0x02, 0xe0, + 0x88, 0x1b, 0x00, 0xab, 0x58, 0x70, 0x00, 0x98, + 0xff, 0xf7, 0x8d, 0xf8, 0x01, 0xf0, 0xff, 0xf8, + 0xf8, 0xbd, 0xe6, 0x78, 0x01, 0x00, 0x65, 0x73, + 0x01, 0x00, 0x70, 0xb5, 0x08, 0x4e, 0x06, 0x4d, + 0x00, 0x24, 0x06, 0x20, 0x60, 0x43, 0x80, 0x19, + 0x06, 0x22, 0x29, 0x1c, 0xef, 0xf7, 0x3c, 0x00, + 0xd4, 0x0c, 0x01, 0x00, 0x11, 0xfc, 0x01, 0x34, + 0x05, 0x2c, 0xf5, 0xdb, 0x70, 0xbd, 0x00, 0x00, + 0x4e, 0x47, 0x01, 0x00, 0xe6, 0x7a, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x01, 0x68, 0x03, 0x48, + 0xfe, 0xf7, 0x42, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0xa8, 0x79, 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x01, 0x68, 0x03, 0x48, + 0xfe, 0xf7, 0x4a, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x0d, 0x01, 0x00, 0xa8, 0x79, + 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, 0x10, 0xb5, + 0x00, 0x28, 0x0a, 0xd0, 0x06, 0x4c, 0xa1, 0x69, + 0x00, 0x29, 0x01, 0xd1, 0x00, 0x20, 0x00, 0xe0, + 0x09, 0x68, 0xf7, 0xf7, 0x38, 0xfb, 0xa0, 0x61, + 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, 0xa4, 0x6e, + 0x01, 0x00, 0xf3, 0xb5, 0x37, 0x48, 0x83, 0xb0, + 0x02, 0x90, 0x80, 0x79, 0x0e, 0x1c, 0x00, 0x27, + 0x01, 0x90, 0x3c, 0x00, 0x4c, 0x0d, 0x01, 0x00, + 0x34, 0x48, 0x35, 0x4a, 0x01, 0x6a, 0x03, 0x9c, + 0x03, 0x1c, 0x1b, 0x69, 0xa1, 0x42, 0x01, 0xd0, + 0x93, 0x61, 0x00, 0xe0, 0x53, 0x61, 0x31, 0x49, + 0x8a, 0x68, 0x96, 0x42, 0x3f, 0xd0, 0x2d, 0x48, + 0x8e, 0x60, 0xc1, 0x68, 0x00, 0x24, 0x25, 0x1c, + 0x00, 0x29, 0x2d, 0x48, 0x09, 0xd0, 0x00, 0x2e, + 0x0b, 0xd0, 0x28, 0x48, 0x01, 0x24, 0xc0, 0x6a, + 0x24, 0x03, 0x00, 0x28, 0x3c, 0x00, 0x88, 0x0d, + 0x01, 0x00, 0x06, 0xd0, 0x01, 0x27, 0x04, 0xe0, + 0x00, 0x2e, 0x01, 0xd0, 0x05, 0x1c, 0xf9, 0xe7, + 0x04, 0x1c, 0x00, 0x2f, 0x06, 0xd0, 0xfb, 0xf7, + 0x1e, 0xfb, 0x1f, 0x48, 0x01, 0x68, 0x22, 0x48, + 0xfe, 0xf7, 0xfb, 0xfa, 0x20, 0x1c, 0x28, 0x43, + 0x0e, 0xd0, 0x2a, 0x1c, 0x21, 0x1c, 0x01, 0x20, + 0x02, 0xf0, 0x21, 0xfe, 0x2a, 0x1c, 0x21, 0x1c, + 0x02, 0x20, 0x02, 0xf0, 0x1c, 0xfe, 0x3c, 0x00, + 0xc4, 0x0d, 0x01, 0x00, 0x2a, 0x1c, 0x21, 0x1c, + 0x03, 0x20, 0x02, 0xf0, 0x17, 0xfe, 0x00, 0x2f, + 0x06, 0xd1, 0x13, 0x48, 0x01, 0x68, 0x16, 0x48, + 0xfe, 0xf7, 0xce, 0xfa, 0xfa, 0xf7, 0x42, 0xfd, + 0x03, 0x9c, 0x00, 0x2c, 0x01, 0xd1, 0x01, 0xf0, + 0xe1, 0xff, 0x01, 0xa9, 0x03, 0xc9, 0x88, 0x71, + 0x01, 0xf0, 0xdc, 0xff, 0x0a, 0x4c, 0x0a, 0x4b, + 0x44, 0x3c, 0xa1, 0x69, 0x22, 0x69, 0x08, 0x3b, + 0x3c, 0x00, 0x00, 0x0e, 0x01, 0x00, 0x41, 0x1a, + 0x00, 0x2a, 0x03, 0xd0, 0x1a, 0x68, 0x51, 0x18, + 0x19, 0x60, 0x02, 0xe0, 0x5a, 0x68, 0x51, 0x18, + 0x59, 0x60, 0xa0, 0x61, 0x26, 0x61, 0x05, 0xb0, + 0xf0, 0xbd, 0x20, 0x10, 0x07, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, 0xb0, 0x57, + 0x01, 0x00, 0x00, 0x10, 0x60, 0x00, 0x84, 0x73, + 0x01, 0x00, 0x1c, 0xb5, 0x4c, 0x23, 0x08, 0x49, + 0x58, 0x43, 0x3c, 0x00, 0x3c, 0x0e, 0x01, 0x00, + 0x44, 0x18, 0x20, 0x1c, 0x40, 0x30, 0x41, 0x78, + 0x62, 0x68, 0x00, 0x91, 0x01, 0x92, 0x3f, 0x21, + 0x0b, 0x5d, 0x61, 0x8f, 0x00, 0x78, 0x62, 0x6c, + 0xfa, 0xf7, 0x28, 0xf8, 0xa0, 0x85, 0x1c, 0xbd, + 0x58, 0xe3, 0x01, 0x00, 0xb0, 0xb5, 0x16, 0x4d, + 0xa9, 0x69, 0x00, 0x29, 0x25, 0xd0, 0x2c, 0x1c, + 0x30, 0x34, 0x20, 0x7a, 0x00, 0x28, 0x20, 0xd0, + 0x00, 0x23, 0x81, 0x22, 0x3c, 0x00, 0x78, 0x0e, + 0x01, 0x00, 0x18, 0x20, 0x02, 0xf0, 0x89, 0xfc, + 0x20, 0x7a, 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, + 0x20, 0x72, 0x12, 0xd1, 0x0c, 0x48, 0x28, 0x21, + 0x2c, 0x38, 0x09, 0x5c, 0x21, 0x72, 0x29, 0x7a, + 0x00, 0x29, 0x01, 0xd1, 0x00, 0x6a, 0x00, 0xe0, + 0x40, 0x6a, 0xa9, 0x69, 0x80, 0x02, 0x81, 0x42, + 0x03, 0xd2, 0x49, 0x00, 0x81, 0x42, 0x01, 0xd2, + 0xa9, 0x61, 0xb0, 0xbd, 0xa8, 0x61, 0x3c, 0x00, + 0xb4, 0x0e, 0x01, 0x00, 0xb0, 0xbd, 0x01, 0xf0, + 0x1d, 0xf9, 0xb0, 0xbd, 0xf4, 0x6e, 0x01, 0x00, + 0x7f, 0xb5, 0x05, 0x1c, 0x04, 0x20, 0x6b, 0x46, + 0x1b, 0x18, 0x02, 0x90, 0x00, 0x26, 0x28, 0x18, + 0x6a, 0x46, 0x02, 0xa9, 0xfc, 0xf7, 0x8a, 0xfb, + 0x00, 0x28, 0x06, 0xd1, 0x00, 0xab, 0x18, 0x79, + 0x04, 0x28, 0x08, 0xd0, 0x18, 0x79, 0x03, 0x28, + 0x05, 0xd0, 0x00, 0xab, 0x18, 0x79, 0x10, 0x21, + 0x3c, 0x00, 0xf0, 0x0e, 0x01, 0x00, 0x08, 0x43, + 0x04, 0xb0, 0x70, 0xbd, 0x03, 0xa9, 0xe8, 0x68, + 0xf6, 0xf7, 0xd3, 0xff, 0x00, 0x28, 0x05, 0xd0, + 0x03, 0x98, 0x20, 0x21, 0x08, 0x43, 0x00, 0x06, + 0x00, 0x0e, 0xf1, 0xe7, 0x03, 0xa9, 0x00, 0x20, + 0xf6, 0xf7, 0xc7, 0xff, 0x04, 0x1c, 0x01, 0xd1, + 0x02, 0x20, 0xe9, 0xe7, 0xe8, 0x68, 0x00, 0xab, + 0x20, 0x60, 0x00, 0x98, 0x60, 0x60, 0x18, 0x79, + 0xa0, 0x76, 0x3c, 0x00, 0x2c, 0x0f, 0x01, 0x00, + 0xa8, 0x8c, 0x60, 0x76, 0xe8, 0x69, 0x20, 0x61, + 0x68, 0x8c, 0xa0, 0x82, 0x28, 0x8c, 0x20, 0x76, + 0x69, 0x69, 0x09, 0x48, 0x81, 0x42, 0x00, 0xd9, + 0x08, 0x1c, 0xa0, 0x60, 0x20, 0x1c, 0x02, 0xf0, + 0xa1, 0xfd, 0xa1, 0x68, 0x00, 0x29, 0x04, 0xd0, + 0x03, 0x9a, 0xa1, 0x32, 0x08, 0x20, 0x02, 0xf0, + 0x37, 0xfb, 0x30, 0x1c, 0xc7, 0xe7, 0x00, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x3c, 0x00, 0x68, 0x0f, + 0x01, 0x00, 0xfe, 0xb5, 0x06, 0x1c, 0x40, 0x78, + 0x01, 0x24, 0x06, 0x28, 0x50, 0xd3, 0xc1, 0x1e, + 0x03, 0x20, 0xef, 0xf7, 0x5e, 0xfb, 0x00, 0x90, + 0x0e, 0x28, 0x49, 0xd8, 0x00, 0x20, 0x0a, 0xe0, + 0x41, 0x00, 0x09, 0x18, 0x89, 0x19, 0x4a, 0x79, + 0x89, 0x79, 0x51, 0x18, 0x01, 0x39, 0x0e, 0x29, + 0x00, 0xd9, 0x00, 0x24, 0x01, 0x30, 0x00, 0x99, + 0x88, 0x42, 0xf1, 0xdb, 0x00, 0x2c, 0x3c, 0x00, + 0xa4, 0x0f, 0x01, 0x00, 0x37, 0xd0, 0x03, 0x22, + 0xb1, 0x1c, 0x1b, 0x48, 0xef, 0xf7, 0xa4, 0xfa, + 0x1a, 0x4c, 0x1c, 0x21, 0x20, 0x1c, 0xef, 0xf7, + 0x4d, 0xfa, 0x00, 0x25, 0x28, 0xe0, 0x69, 0x00, + 0x49, 0x19, 0x02, 0x91, 0x8a, 0x19, 0x53, 0x79, + 0x15, 0x48, 0x43, 0x54, 0x93, 0x79, 0x0f, 0x18, + 0x7b, 0x70, 0xd3, 0x79, 0xbb, 0x70, 0x07, 0x23, + 0xd2, 0x56, 0x01, 0x92, 0x44, 0x5c, 0x0f, 0xe0, + 0x3c, 0x00, 0xe0, 0x0f, 0x01, 0x00, 0x20, 0x1c, + 0xfe, 0xf7, 0x7b, 0xff, 0x00, 0x28, 0x07, 0xd0, + 0x0c, 0x4a, 0x60, 0x00, 0x80, 0x18, 0x01, 0x21, + 0x10, 0x38, 0x81, 0x73, 0x01, 0x99, 0xc1, 0x73, + 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, 0x07, 0x48, + 0x02, 0x99, 0x40, 0x5c, 0x79, 0x78, 0x40, 0x18, + 0xa0, 0x42, 0xe8, 0xd8, 0x01, 0x35, 0x00, 0x98, + 0x85, 0x42, 0xd3, 0xdb, 0xfe, 0xbd, 0xe8, 0x62, + 0x01, 0x00, 0x3c, 0x00, 0x1c, 0x10, 0x01, 0x00, + 0xe6, 0x78, 0x01, 0x00, 0xeb, 0x62, 0x01, 0x00, + 0x01, 0x68, 0x0f, 0x29, 0x01, 0xdd, 0x0f, 0x21, + 0x01, 0x60, 0x01, 0x68, 0x00, 0x29, 0x01, 0xda, + 0x00, 0x21, 0x01, 0x60, 0x70, 0x47, 0x00, 0x00, + 0xf8, 0xb5, 0x04, 0x1c, 0x1e, 0x48, 0x22, 0x1d, + 0x05, 0x68, 0x00, 0x92, 0x16, 0x1c, 0x23, 0x1c, + 0x0f, 0x1c, 0xcc, 0x33, 0x2a, 0x1c, 0x20, 0x1c, + 0x70, 0x30, 0xa1, 0x6d, 0x3c, 0x00, 0x58, 0x10, + 0x01, 0x00, 0x00, 0xf0, 0x3e, 0xf9, 0x00, 0x96, + 0xa1, 0x6d, 0x27, 0x20, 0x01, 0x40, 0x23, 0x1c, + 0xe4, 0x33, 0x20, 0x1c, 0x2a, 0x1c, 0x5c, 0x30, + 0x00, 0xf0, 0x33, 0xf9, 0x13, 0x48, 0x00, 0x78, + 0x0e, 0x28, 0x01, 0xd2, 0x01, 0x25, 0x85, 0x40, + 0x11, 0x48, 0xa1, 0x69, 0x00, 0x78, 0x29, 0x40, + 0x00, 0x07, 0x0b, 0xd4, 0x48, 0x07, 0x03, 0xd5, + 0x08, 0x07, 0x01, 0xd5, 0x04, 0x20, 0x3c, 0x00, + 0x94, 0x10, 0x01, 0x00, 0x81, 0x43, 0x88, 0x06, + 0x03, 0xd5, 0x48, 0x06, 0x01, 0xd5, 0x20, 0x20, + 0x81, 0x43, 0x23, 0x1c, 0xb4, 0x33, 0x2a, 0x1c, + 0x20, 0x1c, 0x30, 0x30, 0x00, 0x96, 0x00, 0xf0, + 0x13, 0xf9, 0x39, 0x1c, 0x20, 0x1c, 0xf0, 0xf7, + 0x47, 0xfc, 0xf8, 0xbd, 0x2c, 0x7d, 0x01, 0x00, + 0x10, 0x67, 0x01, 0x00, 0x1d, 0x75, 0x01, 0x00, + 0xb0, 0xb5, 0xf2, 0xf7, 0x27, 0xfc, 0xfe, 0xf7, + 0x3c, 0x00, 0xd0, 0x10, 0x01, 0x00, 0x09, 0xf9, + 0x0f, 0x48, 0x00, 0x25, 0x45, 0x70, 0x0e, 0x48, + 0x0d, 0x4c, 0x00, 0x88, 0x5b, 0x34, 0xa0, 0x82, + 0xf9, 0xf7, 0x23, 0xfd, 0x20, 0x61, 0xa0, 0x8a, + 0x00, 0x28, 0x04, 0xd0, 0x01, 0x21, 0x89, 0x05, + 0xef, 0xf7, 0x0d, 0xfb, 0xe1, 0x82, 0x05, 0x48, + 0x01, 0x38, 0x45, 0x60, 0x01, 0xf0, 0x55, 0xfe, + 0x02, 0x1c, 0x23, 0x1c, 0x00, 0x21, 0x00, 0x20, + 0xf4, 0xf7, 0x3c, 0x00, 0x0c, 0x11, 0x01, 0x00, + 0x49, 0xfd, 0xb0, 0xbd, 0x45, 0x7d, 0x01, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x70, 0xb5, 0x16, 0x1c, + 0x5a, 0x89, 0x04, 0x1c, 0x04, 0x98, 0x92, 0x07, + 0x92, 0x0f, 0x00, 0x25, 0x00, 0x29, 0xa2, 0x71, + 0x09, 0xd0, 0x05, 0x21, 0xf9, 0xf7, 0x24, 0xfb, + 0x00, 0x28, 0x01, 0xd0, 0xc0, 0x78, 0x00, 0xe0, + 0x01, 0x20, 0xe0, 0x71, 0x00, 0xe0, 0xe5, 0x71, + 0xe5, 0x60, 0xa6, 0x60, 0x3c, 0x00, 0x48, 0x11, + 0x01, 0x00, 0x70, 0xbd, 0x00, 0x00, 0xfe, 0xb5, + 0x05, 0x1c, 0x0e, 0x22, 0x9c, 0x30, 0x16, 0x49, + 0xef, 0xf7, 0xcf, 0xf9, 0x29, 0x1c, 0x28, 0x1c, + 0x80, 0x30, 0x88, 0x31, 0x00, 0x24, 0x2f, 0x1c, + 0x60, 0x37, 0x02, 0x91, 0x01, 0x90, 0x20, 0x06, + 0x00, 0x0e, 0x06, 0x1c, 0xf9, 0xf7, 0x0d, 0xfe, + 0x00, 0x28, 0x03, 0xd0, 0x01, 0x98, 0x42, 0x68, + 0x02, 0x99, 0x01, 0xe0, 0xea, 0x6d, 0x3c, 0x00, + 0x84, 0x11, 0x01, 0x00, 0x39, 0x1c, 0x00, 0x2a, + 0x0d, 0xd0, 0x00, 0x20, 0x03, 0xe0, 0x0b, 0x5c, + 0xb3, 0x42, 0x02, 0xd8, 0x01, 0x30, 0x90, 0x42, + 0xf9, 0xdb, 0x08, 0x18, 0x10, 0x38, 0xc0, 0x7b, + 0x29, 0x19, 0x90, 0x31, 0x08, 0x73, 0x01, 0x34, + 0x0e, 0x2c, 0xdf, 0xd3, 0xfe, 0xbd, 0x00, 0x00, + 0xcc, 0x47, 0x01, 0x00, 0xff, 0xb5, 0x81, 0xb0, + 0x14, 0x1c, 0x10, 0x1c, 0x06, 0x22, 0x0d, 0x1c, + 0x3c, 0x00, 0xc0, 0x11, 0x01, 0x00, 0x19, 0x1c, + 0x0b, 0x9e, 0x0a, 0x9f, 0xef, 0xf7, 0x97, 0xf9, + 0x06, 0x22, 0x39, 0x1c, 0xa0, 0x18, 0xef, 0xf7, + 0x92, 0xf9, 0xe6, 0x60, 0x2c, 0x60, 0x10, 0x20, + 0x28, 0x81, 0x6e, 0x60, 0x01, 0x98, 0xe8, 0x60, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x70, 0xb5, + 0x04, 0x1c, 0x00, 0x20, 0x20, 0x61, 0x58, 0x20, + 0x00, 0x5d, 0x0e, 0x1c, 0x15, 0x1c, 0xc0, 0x07, + 0xc0, 0x17, 0x3c, 0x00, 0xfc, 0x11, 0x01, 0x00, + 0x01, 0x30, 0xe0, 0x61, 0x21, 0x6b, 0x00, 0x29, + 0x36, 0xd1, 0x1e, 0x49, 0x09, 0x68, 0x29, 0x43, + 0x32, 0xd0, 0xa1, 0x68, 0x89, 0x8a, 0x00, 0x29, + 0x2e, 0xd0, 0x00, 0x28, 0x0b, 0xd0, 0x20, 0x1c, + 0x58, 0x30, 0x00, 0xf0, 0xf3, 0xfd, 0x00, 0x28, + 0x1b, 0xd0, 0x81, 0x6a, 0x02, 0x6a, 0x40, 0x6a, + 0x09, 0x78, 0x00, 0x78, 0x06, 0xe0, 0x14, 0x4a, + 0x3c, 0x23, 0x11, 0x78, 0x3c, 0x00, 0x38, 0x12, + 0x01, 0x00, 0x50, 0x78, 0x43, 0x43, 0x9a, 0x18, + 0x04, 0x32, 0x00, 0x2d, 0x03, 0xd1, 0x02, 0x29, + 0x01, 0xd0, 0x03, 0x29, 0x02, 0xd1, 0x6d, 0x21, + 0x22, 0x61, 0x08, 0x55, 0x20, 0x69, 0x00, 0x28, + 0x0d, 0xd0, 0x81, 0x88, 0x00, 0x29, 0x01, 0xd1, + 0x01, 0x20, 0x70, 0xbd, 0x80, 0x79, 0x02, 0x28, + 0x05, 0xd1, 0x22, 0x1c, 0x07, 0x49, 0x07, 0x48, + 0xf8, 0xf7, 0x4b, 0xff, 0x02, 0xe0, 0x3c, 0x00, + 0x74, 0x12, 0x01, 0x00, 0x20, 0x1c, 0xef, 0xf7, + 0xb5, 0xf8, 0x00, 0x20, 0x70, 0xbd, 0x00, 0x00, + 0x28, 0x61, 0x01, 0x00, 0x68, 0x61, 0x01, 0x00, + 0xa1, 0xda, 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x21, 0x00, 0x20, 0xf9, 0xf7, + 0x39, 0xfe, 0xc4, 0x00, 0xf9, 0xf7, 0x54, 0xfe, + 0x24, 0x18, 0xf9, 0xf7, 0x47, 0xfe, 0x08, 0x49, + 0x20, 0x18, 0x09, 0x88, 0x08, 0x4c, 0x40, 0x18, + 0x3c, 0x00, 0xb0, 0x12, 0x01, 0x00, 0x06, 0x49, + 0x09, 0x88, 0x40, 0x18, 0x60, 0x61, 0xf9, 0xf7, + 0x46, 0xfe, 0x05, 0x49, 0x09, 0x88, 0x40, 0x18, + 0x40, 0x00, 0xa0, 0x61, 0x10, 0xbd, 0x02, 0x61, + 0x01, 0x00, 0x04, 0x61, 0x01, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0xa6, 0x69, 0x01, 0x00, 0x11, 0x40, + 0x08, 0x1c, 0x10, 0xb5, 0x1c, 0x1c, 0x19, 0x1c, + 0x08, 0x31, 0x18, 0x60, 0xf1, 0xf7, 0x31, 0xfe, + 0x60, 0x60, 0x3c, 0x00, 0xec, 0x12, 0x01, 0x00, + 0x10, 0xbd, 0x00, 0x00, 0xf8, 0xb5, 0x06, 0x1c, + 0x22, 0x48, 0x0f, 0x1c, 0x41, 0x68, 0x91, 0x42, + 0x03, 0xd0, 0x00, 0x21, 0x81, 0x60, 0xc1, 0x60, + 0x42, 0x60, 0xc4, 0x68, 0x15, 0xe0, 0x28, 0x20, + 0x1d, 0x49, 0x60, 0x43, 0x40, 0x18, 0x05, 0x1c, + 0x06, 0x22, 0x31, 0x1c, 0xef, 0xf7, 0x70, 0xf8, + 0x00, 0x28, 0x07, 0xd1, 0xa8, 0x1d, 0x39, 0x1c, + 0xf9, 0xf7, 0x10, 0xfd, 0x3c, 0x00, 0x28, 0x13, + 0x01, 0x00, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x20, + 0xf8, 0xbd, 0x01, 0x34, 0x24, 0x07, 0x24, 0x0f, + 0x12, 0x48, 0x80, 0x68, 0x84, 0x42, 0xe5, 0xd1, + 0x10, 0x4c, 0x28, 0x23, 0xa0, 0x68, 0x0f, 0x4d, + 0x58, 0x43, 0x40, 0x19, 0x06, 0x22, 0x31, 0x1c, + 0xef, 0xf7, 0xd3, 0xf8, 0xa0, 0x68, 0x28, 0x23, + 0x58, 0x43, 0x40, 0x19, 0x06, 0x30, 0x22, 0x22, + 0x39, 0x1c, 0xef, 0xf7, 0xca, 0xf8, 0x3c, 0x00, + 0x64, 0x13, 0x01, 0x00, 0xa0, 0x68, 0x01, 0x30, + 0x00, 0x07, 0x00, 0x0f, 0xa0, 0x60, 0xe1, 0x68, + 0x81, 0x42, 0x03, 0xd1, 0x01, 0x31, 0x08, 0x07, + 0x00, 0x0f, 0xe0, 0x60, 0x00, 0x20, 0xd6, 0xe7, + 0xec, 0x65, 0x01, 0x00, 0xa0, 0xf4, 0x01, 0x00, + 0x10, 0xb5, 0x00, 0x21, 0x03, 0x20, 0x00, 0xf0, + 0xe5, 0xff, 0x05, 0x4c, 0xa0, 0x68, 0x00, 0x28, + 0x04, 0xd1, 0x01, 0xf0, 0x07, 0xfd, 0x61, 0x68, + 0x3c, 0x00, 0xa0, 0x13, 0x01, 0x00, 0x40, 0x1a, + 0x60, 0x60, 0x10, 0xbd, 0x00, 0x00, 0xd0, 0x60, + 0x01, 0x00, 0x02, 0x68, 0x0a, 0x60, 0x01, 0x60, + 0x70, 0x47, 0x01, 0x1c, 0x00, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0x02, 0x68, 0x0a, 0x60, 0x70, 0x47, + 0x00, 0x00, 0xfe, 0xb5, 0x14, 0x1c, 0x1d, 0x1c, + 0x00, 0x22, 0xd2, 0x43, 0x01, 0xab, 0xf3, 0xf7, + 0x82, 0xff, 0x01, 0x98, 0x00, 0x26, 0x28, 0x40, + 0x01, 0x90, 0x3c, 0x00, 0xdc, 0x13, 0x01, 0x00, + 0x00, 0x25, 0x00, 0x27, 0x20, 0x60, 0x1e, 0xe0, + 0x01, 0x21, 0xb9, 0x40, 0x0a, 0x1c, 0x02, 0x40, + 0x18, 0xd0, 0x88, 0x43, 0x01, 0x90, 0x39, 0x06, + 0x09, 0x0e, 0x70, 0x19, 0x00, 0x19, 0x02, 0x91, + 0x01, 0x77, 0x08, 0x1c, 0xf9, 0xf7, 0xc6, 0xfc, + 0x00, 0x28, 0x06, 0xd0, 0x30, 0x1c, 0x00, 0x19, + 0x01, 0x36, 0x02, 0x99, 0x30, 0x30, 0x01, 0x70, + 0x04, 0xe0, 0x28, 0x1c, 0x3c, 0x00, 0x18, 0x14, + 0x01, 0x00, 0x01, 0x35, 0x02, 0x99, 0x00, 0x19, + 0x01, 0x72, 0x01, 0x37, 0x01, 0x98, 0x00, 0x28, + 0xdd, 0xd1, 0x70, 0x19, 0xa0, 0x61, 0x65, 0x60, + 0xe6, 0x62, 0xfe, 0xbd, 0x00, 0x00, 0xb0, 0xb5, + 0x14, 0x4d, 0x04, 0x1c, 0x28, 0x7a, 0x01, 0x28, + 0x02, 0xd1, 0x04, 0x20, 0xf6, 0xf7, 0xad, 0xf9, + 0x21, 0x1c, 0xa8, 0x6a, 0xf5, 0xf7, 0x21, 0xfc, + 0x00, 0x28, 0x03, 0xd1, 0x04, 0x20, 0x3c, 0x00, + 0x54, 0x14, 0x01, 0x00, 0xf6, 0xf7, 0xa4, 0xf9, + 0xb0, 0xbd, 0x02, 0x20, 0x28, 0x70, 0x28, 0x8c, + 0x00, 0x28, 0x00, 0xd0, 0x60, 0x81, 0x68, 0x8c, + 0x00, 0x28, 0x00, 0xd0, 0xa0, 0x81, 0xa8, 0x8c, + 0x00, 0x28, 0x00, 0xd0, 0xe0, 0x81, 0xe8, 0x69, + 0x01, 0x23, 0x02, 0x04, 0x12, 0x0c, 0x20, 0x1c, + 0x02, 0x49, 0xfc, 0xf7, 0x19, 0xff, 0xb0, 0xbd, + 0xf4, 0x6e, 0x01, 0x00, 0xa1, 0x77, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x14, 0x01, 0x00, 0xf8, 0xb5, + 0x19, 0x4e, 0x05, 0x1c, 0xb0, 0x69, 0x00, 0x28, + 0x00, 0xd1, 0x30, 0x68, 0xff, 0xf7, 0x3b, 0xfc, + 0x15, 0x4f, 0x04, 0x1c, 0x50, 0x37, 0x00, 0x28, + 0x0b, 0xd0, 0x60, 0x68, 0x29, 0x1c, 0x78, 0x60, + 0x01, 0x20, 0x38, 0x63, 0x20, 0x1c, 0xf5, 0xf7, + 0xea, 0xfb, 0x00, 0x28, 0x04, 0xd1, 0x00, 0x20, + 0xf8, 0xbd, 0x00, 0x23, 0xfb, 0x62, 0xfa, 0xe7, + 0x00, 0x23, 0x3c, 0x00, 0xcc, 0x14, 0x01, 0x00, + 0x23, 0x77, 0xf8, 0x6a, 0x00, 0x28, 0x01, 0xd1, + 0x01, 0x20, 0xf8, 0x62, 0x38, 0x7a, 0x01, 0x28, + 0x07, 0xd0, 0xf8, 0x69, 0x06, 0x49, 0x02, 0x04, + 0x12, 0x0c, 0x28, 0x1c, 0xfc, 0xf7, 0xe6, 0xfe, + 0x01, 0xe0, 0xfb, 0x62, 0xb3, 0x61, 0x01, 0x20, + 0xe5, 0xe7, 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, + 0xdd, 0x02, 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x16, 0x1c, 0x3c, 0x00, 0x08, 0x15, + 0x01, 0x00, 0x04, 0x2c, 0x1b, 0xd2, 0x10, 0x48, + 0x83, 0x42, 0x07, 0xd2, 0x58, 0x00, 0x0f, 0x49, + 0xef, 0xf7, 0xfb, 0xf8, 0xff, 0x30, 0x00, 0x0a, + 0x01, 0x38, 0x00, 0xe0, 0x00, 0x20, 0x1f, 0x35, + 0xea, 0x06, 0x61, 0x07, 0x09, 0x0e, 0xd2, 0x0e, + 0x11, 0x43, 0x72, 0x07, 0x52, 0x0d, 0x11, 0x43, + 0x00, 0x06, 0x00, 0x0a, 0x08, 0x43, 0x06, 0x4a, + 0xa1, 0x00, 0x50, 0x50, 0x70, 0xbd, 0x3c, 0x00, + 0x44, 0x15, 0x01, 0x00, 0x01, 0x21, 0x8d, 0x20, + 0xef, 0xf7, 0xac, 0xfe, 0x70, 0xbd, 0x00, 0x00, + 0x40, 0x9c, 0x00, 0x00, 0x00, 0x80, 0x38, 0x01, + 0xe8, 0x60, 0x01, 0x00, 0x09, 0x4a, 0x80, 0x00, + 0x10, 0x58, 0x40, 0x09, 0x40, 0x01, 0x07, 0x22, + 0x02, 0x43, 0x07, 0x48, 0x03, 0x68, 0x00, 0x2b, + 0xfc, 0xdb, 0x42, 0x60, 0x09, 0x06, 0x01, 0x60, + 0x01, 0x68, 0x00, 0x29, 0xfc, 0xdb, 0x08, 0x20, + 0x3c, 0x00, 0x80, 0x15, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0xe8, 0x60, 0x01, 0x00, 0x30, 0x20, + 0x07, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, + 0x07, 0x49, 0xa0, 0x00, 0x08, 0x58, 0x00, 0x28, + 0x03, 0xd1, 0x02, 0x21, 0x8d, 0x20, 0xef, 0xf7, + 0x80, 0xfe, 0x29, 0x1c, 0x20, 0x1c, 0xf6, 0xf7, + 0xa8, 0xfa, 0xb0, 0xbd, 0x00, 0x00, 0xe8, 0x60, + 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, 0x0d, 0x1c, + 0x07, 0x49, 0x3c, 0x00, 0xbc, 0x15, 0x01, 0x00, + 0xa0, 0x00, 0x08, 0x58, 0x00, 0x28, 0x03, 0xd1, + 0x02, 0x21, 0x8d, 0x20, 0xef, 0xf7, 0x6c, 0xfe, + 0x29, 0x1c, 0x20, 0x1c, 0xff, 0xf7, 0xc4, 0xff, + 0xb0, 0xbd, 0x00, 0x00, 0xe8, 0x60, 0x01, 0x00, + 0xf8, 0xb5, 0x0d, 0x1c, 0x16, 0x1c, 0xf7, 0xf7, + 0x17, 0xf9, 0x04, 0x1c, 0x28, 0x68, 0x40, 0x4f, + 0x81, 0x78, 0x00, 0x29, 0x3b, 0xd1, 0xc1, 0x78, + 0x00, 0x29, 0x58, 0xd1, 0x3c, 0x00, 0xf8, 0x15, + 0x01, 0x00, 0xf8, 0xf7, 0xf8, 0xf9, 0x22, 0x8e, + 0x61, 0x8e, 0x8a, 0x42, 0x04, 0xd0, 0xa1, 0x6a, + 0x09, 0x18, 0xe0, 0x69, 0x81, 0x42, 0x10, 0xd9, + 0x38, 0x49, 0x32, 0x1c, 0x48, 0x6b, 0x01, 0x30, + 0x48, 0x63, 0x20, 0x6a, 0x01, 0x30, 0x20, 0x62, + 0x38, 0x68, 0x01, 0x30, 0x38, 0x60, 0xe0, 0x68, + 0x63, 0x69, 0x29, 0x1c, 0xee, 0xf7, 0xd8, 0xfe, + 0xf8, 0xbd, 0x01, 0x32, 0x12, 0x04, 0x3c, 0x00, + 0x34, 0x16, 0x01, 0x00, 0x12, 0x0c, 0x22, 0x86, + 0xa1, 0x62, 0xb8, 0x68, 0x00, 0x28, 0x34, 0xd1, + 0x2c, 0x48, 0x0c, 0x23, 0x00, 0x68, 0x1b, 0x1a, + 0x9a, 0x42, 0x07, 0xd2, 0x19, 0x23, 0x9b, 0x01, + 0xaf, 0x22, 0x92, 0x01, 0x58, 0x43, 0x10, 0x1a, + 0x81, 0x42, 0x26, 0xd3, 0x01, 0x20, 0xb8, 0x60, + 0x01, 0x21, 0x0c, 0x20, 0x00, 0xf0, 0x7a, 0xfe, + 0x1f, 0xe0, 0x01, 0x29, 0x1d, 0xd1, 0xc0, 0x78, + 0x3c, 0x00, 0x70, 0x16, 0x01, 0x00, 0x17, 0x28, + 0x1a, 0xd1, 0xa0, 0x8e, 0xe1, 0x8e, 0x88, 0x42, + 0x14, 0xd3, 0xe9, 0x68, 0x09, 0x68, 0x09, 0x79, + 0x09, 0x06, 0x0f, 0xd5, 0x60, 0x6a, 0x32, 0x1c, + 0x01, 0x30, 0x60, 0x62, 0xe0, 0x68, 0x63, 0x69, + 0x29, 0x1c, 0xee, 0xf7, 0xa3, 0xfe, 0xe8, 0x68, + 0x01, 0x68, 0x08, 0x31, 0x0b, 0x20, 0x00, 0xf0, + 0x5c, 0xfe, 0xc3, 0xe7, 0x01, 0x30, 0xa0, 0x86, + 0xa0, 0x8d, 0x3c, 0x00, 0xac, 0x16, 0x01, 0x00, + 0xe1, 0x8d, 0x88, 0x42, 0x04, 0xd1, 0x03, 0x21, + 0x02, 0x20, 0xef, 0xf7, 0xf5, 0xfd, 0xb8, 0xe7, + 0x60, 0x68, 0x45, 0x60, 0x86, 0x60, 0x00, 0x68, + 0x60, 0x60, 0xf8, 0x68, 0x01, 0x30, 0xf8, 0x60, + 0xa0, 0x8d, 0x41, 0x1c, 0xa1, 0x85, 0x00, 0x28, + 0xab, 0xd1, 0x08, 0x48, 0xb9, 0x69, 0xfd, 0xf7, + 0x61, 0xfe, 0x22, 0x1c, 0x02, 0x21, 0xf1, 0x20, + 0x02, 0xf0, 0x64, 0xf8, 0x3c, 0x00, 0xe8, 0x16, + 0x01, 0x00, 0xa1, 0xe7, 0x00, 0x00, 0xfc, 0x5a, + 0x01, 0x00, 0x90, 0x5c, 0x01, 0x00, 0x18, 0x57, + 0x01, 0x00, 0xc4, 0x60, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x1c, 0x02, 0x21, 0xf0, 0x20, 0x02, 0xf0, + 0x54, 0xf8, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x28, + 0x03, 0xd1, 0x02, 0x48, 0x41, 0x78, 0xc9, 0x07, + 0xfc, 0xd5, 0x70, 0x47, 0x00, 0x00, 0x04, 0x00, + 0x07, 0x00, 0x80, 0xb5, 0x00, 0x06, 0x3c, 0x00, + 0x24, 0x17, 0x01, 0x00, 0x01, 0xd1, 0xf1, 0xf7, + 0x71, 0xfe, 0x80, 0xbd, 0x80, 0xb5, 0xf4, 0xf7, + 0xe5, 0xfa, 0x80, 0xbd, 0x80, 0xb5, 0xf6, 0xf7, + 0xeb, 0xf8, 0x80, 0xbd, 0x01, 0x49, 0x00, 0x20, + 0x08, 0x74, 0x70, 0x47, 0x78, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0xc0, 0x07, 0x03, 0xd5, 0x02, 0x49, + 0x01, 0x20, 0x00, 0xf0, 0x1d, 0xfc, 0x80, 0xbd, + 0x50, 0xc3, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0e, + 0x3c, 0x00, 0x60, 0x17, 0x01, 0x00, 0x01, 0x28, + 0x80, 0xb5, 0x02, 0xd1, 0xf6, 0xf7, 0xe1, 0xf9, + 0x80, 0xbd, 0x00, 0x28, 0xfc, 0xd1, 0xf1, 0xf7, + 0x4c, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0xf6, 0xf7, 0xd7, 0xf9, 0x80, 0xbd, 0x03, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x08, 0x74, 0xf6, 0xf7, + 0xfe, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x06, 0x00, 0x0e, + 0xf1, 0xf7, 0x3c, 0x00, 0x9c, 0x17, 0x01, 0x00, + 0x71, 0xfe, 0x80, 0xbd, 0x10, 0xb5, 0x01, 0x28, + 0x08, 0xd0, 0x02, 0x28, 0x03, 0xd0, 0x03, 0x28, + 0x01, 0xd0, 0xef, 0xf7, 0xa7, 0xfd, 0xf6, 0xf7, + 0xe9, 0xf9, 0x10, 0xbd, 0x01, 0xf0, 0xf8, 0xfa, + 0x04, 0x1c, 0xfa, 0xf7, 0x5d, 0xfd, 0x24, 0x1a, + 0xfa, 0xf7, 0x3e, 0xfd, 0x08, 0x49, 0x00, 0x28, + 0x0b, 0xd0, 0x48, 0x6a, 0x00, 0x28, 0x08, 0xd0, + 0x06, 0x48, 0x84, 0x42, 0x3c, 0x00, 0xd8, 0x17, + 0x01, 0x00, 0x05, 0xd2, 0x01, 0x1b, 0x01, 0x22, + 0x07, 0x20, 0x01, 0xf0, 0xf4, 0xfe, 0xe5, 0xe7, + 0x00, 0x20, 0x48, 0x61, 0xe2, 0xe7, 0x78, 0x69, + 0x01, 0x00, 0x50, 0xc3, 0x00, 0x00, 0x09, 0x49, + 0x80, 0xb5, 0x48, 0x69, 0x00, 0x28, 0x0c, 0xd0, + 0x08, 0x6a, 0xca, 0x69, 0x80, 0x1a, 0x00, 0x28, + 0x07, 0xdd, 0x00, 0x20, 0x48, 0x61, 0x01, 0x21, + 0x07, 0x20, 0x01, 0xf0, 0x10, 0xff, 0x3c, 0x00, + 0x14, 0x18, 0x01, 0x00, 0xf6, 0xf7, 0xb8, 0xf9, + 0x80, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0xe7, 0xfb, 0x80, 0xbd, + 0x80, 0xb5, 0x00, 0xf0, 0x3f, 0xfc, 0x00, 0x20, + 0xf7, 0xf7, 0xd4, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0x37, 0xfc, 0xfd, 0xf7, + 0x6f, 0xfc, 0xf5, 0xf7, 0x73, 0xfd, 0x30, 0xf0, + 0x47, 0xfb, 0x80, 0xbd, 0x04, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0x50, 0x18, 0x01, 0x00, 0xc1, 0x6a, + 0x00, 0x6b, 0xf2, 0xf7, 0xde, 0xff, 0x01, 0x20, + 0xf7, 0xf7, 0x89, 0xf8, 0x80, 0xbd, 0xa4, 0x6c, + 0x01, 0x00, 0x10, 0xb5, 0xf3, 0xf7, 0x41, 0xf8, + 0x0d, 0x4c, 0x00, 0x28, 0x04, 0xd0, 0x01, 0x20, + 0xe0, 0x64, 0xf7, 0xf7, 0xb2, 0xfc, 0x10, 0xbd, + 0x01, 0x21, 0x01, 0x20, 0xf3, 0xf7, 0xe9, 0xf8, + 0xfd, 0xf7, 0x4d, 0xfc, 0x60, 0x6d, 0x00, 0x28, + 0x03, 0xd0, 0x3c, 0x00, 0x8c, 0x18, 0x01, 0x00, + 0xf3, 0xf7, 0x82, 0xf8, 0x00, 0x28, 0x01, 0xd0, + 0xf5, 0xf7, 0x4a, 0xfd, 0x01, 0x20, 0xf2, 0xf7, + 0xc1, 0xfc, 0x10, 0xbd, 0xa4, 0x6c, 0x01, 0x00, + 0x04, 0x48, 0x80, 0xb5, 0xc1, 0x6a, 0x00, 0x6b, + 0xf2, 0xf7, 0xb2, 0xff, 0x01, 0x20, 0xf7, 0xf7, + 0x5d, 0xf8, 0x80, 0xbd, 0xa4, 0x6c, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0xf5, 0xfb, 0xf5, 0xf7, + 0x33, 0xfd, 0xfc, 0xf7, 0x3c, 0x00, 0xc8, 0x18, + 0x01, 0x00, 0x31, 0xfd, 0xf9, 0xf7, 0xcb, 0xff, + 0x04, 0x20, 0xf2, 0xf7, 0xa6, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, 0xc1, 0x6a, + 0x00, 0x6b, 0xf2, 0xf7, 0x98, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0xf0, 0xdd, 0xfb, 0x00, 0x20, 0xf7, 0xf7, + 0x3c, 0xf8, 0x30, 0xf0, 0xee, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x21, 0x3c, 0x00, + 0x04, 0x19, 0x01, 0x00, 0x01, 0x20, 0xff, 0xf7, + 0x19, 0xfa, 0x01, 0x20, 0xf2, 0xf7, 0x88, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0xc9, 0xfb, 0xfc, 0xf7, 0x07, 0xfd, 0x01, 0x21, + 0x01, 0x20, 0xff, 0xf7, 0x0b, 0xfa, 0x04, 0x20, + 0xf2, 0xf7, 0x7a, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, 0x00, 0x20, + 0x00, 0xf0, 0x8a, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x19, 0x01, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x82, 0x6a, 0x01, 0x21, 0x04, 0x20, + 0x00, 0xf0, 0x81, 0xfb, 0x80, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x03, 0x20, 0x00, 0xf0, 0x78, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, 0x82, 0x6a, + 0x01, 0x21, 0x04, 0x20, 0x00, 0xf0, 0x6f, 0xfb, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x22, 0x3c, 0x00, 0x7c, 0x19, 0x01, 0x00, + 0x00, 0x21, 0x03, 0x20, 0x00, 0xf0, 0x66, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x06, 0x48, 0x80, 0xb5, + 0x81, 0x68, 0x42, 0x69, 0x00, 0x69, 0x51, 0x18, + 0x81, 0x42, 0x03, 0xd9, 0x01, 0x21, 0x01, 0x20, + 0x00, 0xf0, 0x58, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0xd4, 0x79, 0x01, 0x00, 0x06, 0x48, 0x80, 0xb5, + 0x82, 0x88, 0x81, 0x68, 0x00, 0x69, 0x51, 0x18, + 0x81, 0x42, 0x03, 0xd9, 0x3c, 0x00, 0xb8, 0x19, + 0x01, 0x00, 0x01, 0x21, 0x02, 0x20, 0x00, 0xf0, + 0x48, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x10, 0xb5, 0x08, 0x4c, 0x20, 0x7b, + 0x21, 0x6a, 0xf9, 0xf7, 0x9c, 0xfa, 0xa1, 0x69, + 0x42, 0x18, 0xa0, 0x68, 0x21, 0x69, 0x80, 0x18, + 0x88, 0x42, 0x03, 0xd9, 0x01, 0x21, 0x02, 0x20, + 0x00, 0xf0, 0x33, 0xfb, 0x10, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x3c, 0x00, + 0xf4, 0x19, 0x01, 0x00, 0x00, 0x21, 0x00, 0x20, + 0x00, 0xf0, 0x2a, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x00, 0x06, 0x00, 0x0e, 0x01, 0x28, 0x80, 0xb5, + 0x02, 0xd1, 0xf6, 0xf7, 0x8f, 0xf8, 0x80, 0xbd, + 0x00, 0x28, 0xfc, 0xd1, 0xf1, 0xf7, 0xfa, 0xfc, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0xf6, 0xf7, + 0x85, 0xf8, 0x80, 0xbd, 0x80, 0xb5, 0x00, 0x06, + 0x00, 0x0e, 0xf1, 0xf7, 0x29, 0xfd, 0x80, 0xbd, + 0x3c, 0x00, 0x30, 0x1a, 0x01, 0x00, 0xb0, 0xb5, + 0x02, 0x25, 0x02, 0x28, 0x10, 0x4c, 0x0b, 0xd1, + 0xfb, 0xf7, 0x47, 0xfc, 0x00, 0x28, 0x01, 0xd1, + 0xfe, 0xf7, 0x4f, 0xff, 0x25, 0x70, 0xa1, 0x68, + 0x0c, 0x48, 0xfd, 0xf7, 0xa8, 0xfc, 0xb0, 0xbd, + 0x03, 0x28, 0x0d, 0xd1, 0x08, 0x48, 0x7d, 0x23, + 0x1c, 0x38, 0x00, 0x69, 0xdb, 0x00, 0x58, 0x43, + 0x19, 0x1c, 0x40, 0x18, 0x41, 0x08, 0x02, 0x20, + 0x00, 0xf0, 0x3c, 0x00, 0x6c, 0x1a, 0x01, 0x00, + 0x91, 0xfa, 0x25, 0x70, 0xb0, 0xbd, 0xf8, 0xf7, + 0x31, 0xf9, 0xb0, 0xbd, 0x78, 0x69, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, + 0xe0, 0x68, 0x00, 0x28, 0x01, 0xd1, 0xef, 0xf7, + 0x39, 0xfc, 0x02, 0x20, 0x20, 0x70, 0x00, 0xf0, + 0xaf, 0xfa, 0x10, 0xbd, 0x78, 0x69, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x82, 0x6a, 0x01, 0x21, + 0x04, 0x20, 0x00, 0xf0, 0x3c, 0x00, 0xa8, 0x1a, + 0x01, 0x00, 0xd3, 0xfa, 0x80, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x03, 0x20, 0x00, 0xf0, 0xca, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x00, 0xf0, 0xc2, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, 0x42, 0x69, + 0x01, 0x21, 0x01, 0x20, 0x00, 0xf0, 0xb9, 0xfa, + 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, 0x3c, 0x00, + 0xe4, 0x1a, 0x01, 0x00, 0x06, 0x48, 0x80, 0xb5, + 0x82, 0x88, 0x00, 0x2a, 0x02, 0xd0, 0x01, 0x21, + 0x02, 0x20, 0x02, 0xe0, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x00, 0xf0, 0xa9, 0xfa, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, + 0x20, 0x7b, 0x21, 0x6a, 0xf9, 0xf7, 0xfe, 0xf9, + 0xa1, 0x69, 0x42, 0x18, 0x01, 0x21, 0x02, 0x20, + 0x00, 0xf0, 0x9a, 0xfa, 0x10, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x1b, 0x01, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x80, 0xb5, 0x00, 0x22, 0x00, 0x21, + 0x00, 0x20, 0x00, 0xf0, 0x90, 0xfa, 0x80, 0xbd, + 0x00, 0x00, 0x38, 0xb5, 0xfa, 0xf7, 0x41, 0xfe, + 0x00, 0x20, 0xf0, 0xf7, 0x80, 0xf8, 0x00, 0x90, + 0x00, 0xab, 0x1c, 0x88, 0x5d, 0x88, 0xf8, 0xf7, + 0x3c, 0xf9, 0x00, 0x2c, 0x02, 0xd0, 0xfd, 0xf7, + 0x9e, 0xfa, 0x02, 0xe0, 0x01, 0x20, 0xf6, 0xf7, + 0x0a, 0xff, 0x3c, 0x00, 0x5c, 0x1b, 0x01, 0x00, + 0x29, 0x1c, 0x20, 0x1c, 0xfc, 0xf7, 0xb8, 0xfc, + 0x00, 0x2c, 0x02, 0xd0, 0xf5, 0xf7, 0xe0, 0xfb, + 0x02, 0xe0, 0x00, 0x20, 0x00, 0xf0, 0xdc, 0xf9, + 0x03, 0x20, 0x00, 0x2c, 0x00, 0xd1, 0x02, 0x20, + 0x00, 0x06, 0x00, 0x0e, 0xf2, 0xf7, 0x4e, 0xfb, + 0x38, 0xbd, 0x00, 0x00, 0x03, 0x48, 0x80, 0xb5, + 0x82, 0x6a, 0x01, 0x21, 0x04, 0x20, 0x00, 0xf0, + 0x5d, 0xfa, 0x80, 0xbd, 0x3c, 0x00, 0x98, 0x1b, + 0x01, 0x00, 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x30, 0xf0, 0x9b, 0xf9, 0x80, 0xbd, 0x80, 0xb5, + 0x00, 0x22, 0x00, 0x21, 0x03, 0x20, 0x00, 0xf0, + 0x50, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x03, 0x48, + 0x80, 0xb5, 0x42, 0x69, 0x01, 0x21, 0x01, 0x20, + 0x00, 0xf0, 0x47, 0xfa, 0x80, 0xbd, 0xd4, 0x79, + 0x01, 0x00, 0x04, 0x48, 0x80, 0xb5, 0x82, 0x88, + 0x00, 0x2a, 0x03, 0xd0, 0x01, 0x21, 0x3c, 0x00, + 0xd4, 0x1b, 0x01, 0x00, 0x02, 0x20, 0x00, 0xf0, + 0x3b, 0xfa, 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, + 0x10, 0xb5, 0x06, 0x4c, 0x20, 0x7b, 0x21, 0x6a, + 0xf9, 0xf7, 0x90, 0xf9, 0xa1, 0x69, 0x42, 0x18, + 0x01, 0x21, 0x02, 0x20, 0x00, 0xf0, 0x2c, 0xfa, + 0x10, 0xbd, 0x00, 0x00, 0xd4, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0xfc, 0xf7, 0x93, 0xfb, 0x01, 0x21, + 0x01, 0x20, 0xff, 0xf7, 0x97, 0xf8, 0x04, 0x20, + 0x3c, 0x00, 0x10, 0x1c, 0x01, 0x00, 0xf2, 0xf7, + 0x06, 0xfb, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x2f, 0xf0, 0x6b, 0xfb, 0x00, 0x28, 0x0a, 0xd0, + 0x01, 0x20, 0xf2, 0xf7, 0xfc, 0xfa, 0xfa, 0xf7, + 0x2a, 0xfc, 0x00, 0x28, 0x02, 0xd1, 0x04, 0x20, + 0xf6, 0xf7, 0x5d, 0xf8, 0x80, 0xbd, 0x03, 0x21, + 0x16, 0x20, 0xef, 0xf7, 0x32, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x02, 0x48, 0x80, 0xb5, 0x00, 0x68, + 0xee, 0xf7, 0x3c, 0x00, 0x4c, 0x1c, 0x01, 0x00, + 0xc5, 0xfb, 0x80, 0xbd, 0xd4, 0x79, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0x42, 0x69, 0x01, 0x21, + 0x01, 0x20, 0x00, 0xf0, 0xf7, 0xf9, 0x80, 0xbd, + 0xd4, 0x79, 0x01, 0x00, 0x80, 0xb5, 0x30, 0xf0, + 0x35, 0xf9, 0x80, 0xbd, 0xb0, 0xb5, 0x18, 0x4c, + 0xaa, 0x20, 0x00, 0x5d, 0x04, 0x28, 0x19, 0xd1, + 0x01, 0x25, 0xe5, 0x62, 0x25, 0x63, 0x01, 0xf0, + 0x93, 0xf8, 0xa0, 0x66, 0x3c, 0x00, 0x88, 0x1c, + 0x01, 0x00, 0x01, 0xf0, 0xfc, 0xfd, 0xf2, 0xf7, + 0x2e, 0xfe, 0x00, 0x28, 0x0e, 0xd0, 0x02, 0x20, + 0xf2, 0xf7, 0xc3, 0xfa, 0xa5, 0x60, 0x01, 0xf0, + 0x86, 0xf8, 0x64, 0x30, 0x60, 0x60, 0xfa, 0xf7, + 0x8a, 0xfd, 0x01, 0x21, 0x01, 0x20, 0xff, 0xf7, + 0x46, 0xf8, 0xb0, 0xbd, 0x01, 0x20, 0xf2, 0xf7, + 0xb4, 0xfa, 0x00, 0x20, 0xa0, 0x60, 0x00, 0x21, + 0x01, 0x20, 0xff, 0xf7, 0x3c, 0xf8, 0x3c, 0x00, + 0xc4, 0x1c, 0x01, 0x00, 0xf2, 0xf7, 0x66, 0xfe, + 0x00, 0x28, 0xf1, 0xd0, 0xfa, 0xf7, 0x76, 0xfd, + 0xb0, 0xbd, 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0xef, 0xf7, 0xd6, 0xfe, + 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, 0x01, 0x20, + 0xef, 0xf7, 0xd0, 0xfe, 0x80, 0xbd, 0x00, 0x00, + 0xac, 0x21, 0x09, 0x5c, 0x02, 0x4a, 0x09, 0x02, + 0x89, 0x18, 0xc0, 0x31, 0x81, 0x60, 0x70, 0x47, + 0x3c, 0x00, 0x00, 0x1d, 0x01, 0x00, 0x70, 0x75, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x28, 0x04, 0xd1, + 0x03, 0xc9, 0x09, 0x68, 0xee, 0xf7, 0x64, 0xfb, + 0x80, 0xbd, 0x01, 0x21, 0x14, 0x20, 0xef, 0xf7, + 0xc4, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x28, + 0x02, 0xd1, 0x02, 0x48, 0x40, 0x68, 0x70, 0x47, + 0x40, 0x68, 0x70, 0x47, 0x00, 0x00, 0x58, 0x75, + 0x01, 0x00, 0x10, 0xb5, 0x00, 0x24, 0xf8, 0xf7, + 0x1c, 0xfb, 0x3c, 0x00, 0x3c, 0x1d, 0x01, 0x00, + 0x00, 0x28, 0x04, 0xd0, 0x40, 0x30, 0x80, 0x7a, + 0x05, 0x28, 0x00, 0xd1, 0x01, 0x24, 0x20, 0x1c, + 0x10, 0xbd, 0x00, 0x00, 0x04, 0x48, 0x00, 0x21, + 0x40, 0x68, 0x01, 0xe0, 0x01, 0x63, 0x40, 0x68, + 0x00, 0x28, 0xfb, 0xd1, 0x70, 0x47, 0x00, 0x00, + 0x58, 0x75, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0d, 0x1c, 0xf7, 0xf7, 0xa5, 0xf8, 0x40, 0x34, + 0xe5, 0x72, 0xb0, 0xbd, 0x3c, 0x00, 0x78, 0x1d, + 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x1c, 0xf8, 0xf7, + 0xfa, 0xfa, 0x04, 0x1c, 0x04, 0xd0, 0x05, 0x21, + 0x14, 0x20, 0xef, 0xf7, 0x8c, 0xfa, 0x28, 0xe0, + 0x00, 0x25, 0x14, 0x49, 0x28, 0x02, 0x46, 0x18, + 0x30, 0x1c, 0x44, 0x30, 0x06, 0x22, 0x12, 0x49, + 0xee, 0xf7, 0x2d, 0xfb, 0x00, 0x28, 0x02, 0xd1, + 0xac, 0x20, 0x85, 0x55, 0x34, 0x1c, 0x01, 0x35, + 0x03, 0x2d, 0xee, 0xd3, 0x00, 0x2c, 0x3c, 0x00, + 0xb4, 0x1d, 0x01, 0x00, 0x14, 0xd0, 0x39, 0x1c, + 0x20, 0x1c, 0xf8, 0xf7, 0x2b, 0xf8, 0x09, 0x49, + 0x00, 0x20, 0x20, 0x60, 0x18, 0x39, 0x48, 0x68, + 0x60, 0x60, 0x00, 0x28, 0x00, 0xd0, 0x04, 0x60, + 0x4c, 0x60, 0xca, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0x01, 0x21, 0x20, 0x1c, 0xee, 0xf7, 0xfe, 0xfa, + 0x20, 0x1c, 0xf8, 0xbd, 0x70, 0x75, 0x01, 0x00, + 0x58, 0x46, 0x01, 0x00, 0x80, 0xb5, 0xf8, 0xf7, + 0x3c, 0x00, 0xf0, 0x1d, 0x01, 0x00, 0xc1, 0xfa, + 0x00, 0x28, 0x04, 0xd1, 0x06, 0x21, 0x14, 0x20, + 0xef, 0xf7, 0x53, 0xfa, 0x80, 0xbd, 0xf5, 0xf7, + 0x16, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0xf8, 0xf7, 0xb3, 0xfa, 0x80, 0xbd, 0x10, 0xb5, + 0x09, 0x4c, 0x21, 0x88, 0x02, 0x29, 0x03, 0xd1, + 0x14, 0x20, 0xef, 0xf7, 0x42, 0xfa, 0x04, 0xe0, + 0xa3, 0x68, 0x8a, 0x00, 0x98, 0x50, 0x48, 0x1c, + 0x20, 0x80, 0x3c, 0x00, 0x2c, 0x1e, 0x01, 0x00, + 0x20, 0x88, 0x01, 0x38, 0x00, 0x04, 0x00, 0x0c, + 0x10, 0xbd, 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, + 0x0b, 0x1c, 0x11, 0x1c, 0x08, 0x4a, 0x80, 0xb5, + 0x12, 0x88, 0x90, 0x42, 0x06, 0xd2, 0xda, 0x68, + 0xc0, 0x00, 0x12, 0x18, 0x14, 0x20, 0x01, 0xf0, + 0xbb, 0xfb, 0x80, 0xbd, 0x03, 0x21, 0x14, 0x20, + 0xef, 0xf7, 0x22, 0xfa, 0x80, 0xbd, 0x00, 0x00, + 0x58, 0x75, 0x01, 0x00, 0x3c, 0x00, 0x68, 0x1e, + 0x01, 0x00, 0x08, 0x4a, 0x80, 0xb5, 0x12, 0x88, + 0x90, 0x42, 0x06, 0xd2, 0xc9, 0x68, 0xc0, 0x00, + 0x09, 0x18, 0x14, 0x20, 0x01, 0xf0, 0xdb, 0xfb, + 0x80, 0xbd, 0x04, 0x21, 0x14, 0x20, 0xef, 0xf7, + 0x0e, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x58, 0x75, + 0x01, 0x00, 0x01, 0x49, 0xc8, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x58, 0x75, 0x01, 0x00, 0x80, 0xb5, + 0x06, 0x22, 0x44, 0x30, 0xee, 0xf7, 0x3c, 0x00, + 0xa4, 0x1e, 0x01, 0x00, 0xab, 0xfa, 0x00, 0x28, + 0x01, 0xd1, 0x01, 0x20, 0x80, 0xbd, 0x00, 0x20, + 0x80, 0xbd, 0x00, 0x00, 0x1c, 0xb5, 0x14, 0x4c, + 0x20, 0x69, 0x00, 0x28, 0x23, 0xd0, 0x20, 0x78, + 0x0a, 0x28, 0x01, 0xd0, 0x00, 0xf0, 0xfc, 0xf8, + 0x00, 0x20, 0x60, 0x61, 0x0f, 0x48, 0x40, 0x79, + 0xa0, 0x70, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x28, + 0x15, 0xd1, 0xfd, 0xf7, 0xed, 0xfe, 0x01, 0x90, + 0x3c, 0x00, 0xe0, 0x1e, 0x01, 0x00, 0xfd, 0xf7, + 0x82, 0xfe, 0x00, 0x90, 0x00, 0xab, 0x18, 0x79, + 0x19, 0x78, 0x40, 0x1a, 0x18, 0x71, 0x58, 0x79, + 0x59, 0x78, 0x40, 0x1a, 0x58, 0x71, 0x01, 0x98, + 0xf2, 0xf7, 0x89, 0xfe, 0x05, 0x20, 0x20, 0x70, + 0x00, 0xf0, 0xbf, 0xf9, 0x1c, 0xbd, 0x7c, 0x78, + 0x01, 0x00, 0x0c, 0x5a, 0x01, 0x00, 0x08, 0xb5, + 0x04, 0x4a, 0x00, 0x90, 0x14, 0x32, 0x00, 0x20, + 0x02, 0x4b, 0x3c, 0x00, 0x1c, 0x1f, 0x01, 0x00, + 0x02, 0x49, 0xf1, 0xf7, 0x7d, 0xf9, 0x08, 0xbd, + 0x2c, 0x75, 0x01, 0x00, 0xb1, 0xa8, 0x00, 0x00, + 0xb0, 0xb5, 0x00, 0x28, 0x06, 0xd0, 0x01, 0x28, + 0x06, 0xd0, 0x02, 0x28, 0x07, 0xd1, 0x0c, 0x4c, + 0x01, 0x25, 0x07, 0xe0, 0x0b, 0x4c, 0x04, 0xe0, + 0x0a, 0x4c, 0x2a, 0x3c, 0x01, 0xe0, 0x08, 0x4c, + 0xb6, 0x34, 0x00, 0x25, 0x00, 0xf0, 0x2c, 0xff, + 0x07, 0x49, 0x89, 0x6e, 0x3c, 0x00, 0x58, 0x1f, + 0x01, 0x00, 0x09, 0x19, 0x09, 0x1a, 0xa1, 0x42, + 0x00, 0xd9, 0x00, 0x21, 0x2a, 0x1c, 0x16, 0x20, + 0x01, 0xf0, 0x31, 0xfb, 0xb0, 0xbd, 0x71, 0x02, + 0x00, 0x00, 0x0c, 0x05, 0x00, 0x00, 0xa4, 0x6c, + 0x01, 0x00, 0x8c, 0xb5, 0x00, 0xab, 0x8e, 0x21, + 0x19, 0x80, 0xfc, 0xf7, 0x38, 0xf9, 0x01, 0x90, + 0x68, 0x46, 0xfb, 0xf7, 0xa6, 0xfa, 0x8c, 0xbd, + 0x00, 0x00, 0xbf, 0xb5, 0x13, 0x4a, 0x3c, 0x00, + 0x94, 0x1f, 0x01, 0x00, 0x01, 0x91, 0x0d, 0x1c, + 0x11, 0x7c, 0x88, 0x43, 0x04, 0x1c, 0x21, 0x43, + 0x08, 0x1c, 0x10, 0x74, 0xa0, 0x07, 0x0b, 0xd5, + 0x0e, 0x48, 0x00, 0x90, 0x01, 0x20, 0x02, 0x90, + 0x00, 0xf0, 0xfc, 0xfe, 0x0c, 0x49, 0x40, 0x18, + 0x03, 0x90, 0x68, 0x46, 0xf9, 0xf7, 0x6a, 0xff, + 0xe0, 0x07, 0x0c, 0xd5, 0xf1, 0xf7, 0x2c, 0xfd, + 0x00, 0x28, 0x03, 0xd0, 0x07, 0x48, 0x85, 0x42, + 0x3c, 0x00, 0xd0, 0x1f, 0x01, 0x00, 0x00, 0xd2, + 0x01, 0x90, 0x06, 0x48, 0x00, 0x90, 0x68, 0x46, + 0xf9, 0xf7, 0x09, 0xff, 0xbf, 0xbd, 0x78, 0x69, + 0x01, 0x00, 0x81, 0xea, 0x00, 0x00, 0x10, 0x27, + 0x00, 0x00, 0xa0, 0x86, 0x01, 0x00, 0x75, 0xea, + 0x00, 0x00, 0x10, 0xb5, 0x0a, 0x4c, 0x60, 0x69, + 0x00, 0x28, 0x0e, 0xd1, 0x01, 0x20, 0x60, 0x61, + 0xa1, 0x68, 0x07, 0x48, 0xfd, 0xf7, 0xcb, 0xf9, + 0x00, 0x21, 0x3c, 0x00, 0x0c, 0x20, 0x01, 0x00, + 0xa0, 0x68, 0xf9, 0xf7, 0xd1, 0xfb, 0x01, 0x22, + 0x07, 0x20, 0x04, 0x49, 0x01, 0xf0, 0xd8, 0xfa, + 0x10, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0x34, 0x63, 0x01, 0x00, 0x98, 0x3a, 0x00, 0x00, + 0x10, 0xb5, 0x0c, 0x1c, 0x11, 0x1c, 0x06, 0x4a, + 0x00, 0x2b, 0x10, 0x70, 0x03, 0xd0, 0x00, 0x28, + 0x02, 0xd1, 0xf9, 0xf7, 0xf5, 0xfd, 0x10, 0xbd, + 0x20, 0x1c, 0xf9, 0xf7, 0x3c, 0x00, 0x48, 0x20, + 0x01, 0x00, 0x01, 0xfe, 0x10, 0xbd, 0xa0, 0x79, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4c, 0x05, 0x1c, + 0xe3, 0x6a, 0x20, 0x1f, 0x01, 0x33, 0xe3, 0x62, + 0x00, 0x88, 0x00, 0x29, 0x06, 0xd0, 0xa1, 0x68, + 0x89, 0x18, 0x21, 0x61, 0x05, 0x4a, 0x00, 0xf0, + 0xfc, 0xfe, 0x01, 0xe0, 0x00, 0xf0, 0xcf, 0xfe, + 0x25, 0x77, 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x55, 0xe3, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x20, 0x01, 0x00, 0x01, 0x1c, 0x03, 0x48, + 0x80, 0xb5, 0x40, 0x88, 0xff, 0xf7, 0xec, 0xfe, + 0x80, 0xbd, 0x00, 0x00, 0x98, 0x7c, 0x01, 0x00, + 0x03, 0x48, 0x80, 0xb5, 0xc1, 0x68, 0x18, 0x38, + 0x80, 0x88, 0xff, 0xf7, 0xe1, 0xfe, 0x80, 0xbd, + 0x70, 0x7c, 0x01, 0x00, 0x80, 0xb5, 0x00, 0x21, + 0x16, 0x20, 0x01, 0xf0, 0xbf, 0xfa, 0x01, 0x21, + 0x16, 0x20, 0x01, 0xf0, 0xbb, 0xfa, 0x80, 0xbd, + 0x3c, 0x00, 0xc0, 0x20, 0x01, 0x00, 0x10, 0xb5, + 0x0b, 0x4c, 0x20, 0x78, 0x0a, 0x28, 0x10, 0xd0, + 0x01, 0x20, 0x60, 0x61, 0x0a, 0x21, 0x13, 0x20, + 0x01, 0xf0, 0xaf, 0xfa, 0x0a, 0x20, 0x60, 0x70, + 0x20, 0x70, 0xfd, 0xf7, 0x3c, 0xfb, 0x01, 0x20, + 0xfd, 0xf7, 0xe9, 0xfb, 0x00, 0x20, 0xfa, 0xf7, + 0xc4, 0xf9, 0x10, 0xbd, 0x00, 0x00, 0x7c, 0x78, + 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x4c, 0x00, 0x20, + 0x0b, 0x49, 0x3c, 0x00, 0xfc, 0x20, 0x01, 0x00, + 0x20, 0x63, 0xe0, 0x62, 0x50, 0x39, 0x88, 0x61, + 0x20, 0x70, 0x08, 0x48, 0x38, 0x21, 0x0c, 0x38, + 0x00, 0x7a, 0x08, 0x55, 0x81, 0x21, 0x18, 0x20, + 0x01, 0xf0, 0x8e, 0xfa, 0x20, 0x69, 0x01, 0x28, + 0x02, 0xd1, 0x00, 0x20, 0xf5, 0xf7, 0x3e, 0xfb, + 0x10, 0xbd, 0x00, 0x00, 0xf4, 0x6e, 0x01, 0x00, + 0xb0, 0xb5, 0x1c, 0x4c, 0x00, 0x25, 0x2c, 0x22, + 0x01, 0x1d, 0x20, 0x1c, 0x3c, 0x00, 0x38, 0x21, + 0x01, 0x00, 0x9a, 0xb0, 0xee, 0xf7, 0x39, 0xfa, + 0x18, 0x49, 0x2c, 0x31, 0x08, 0x1c, 0x00, 0x7a, + 0x8a, 0x69, 0x00, 0x2a, 0x13, 0xd1, 0x02, 0x28, + 0x03, 0xd1, 0xa0, 0x68, 0x00, 0x28, 0x20, 0xd0, + 0x04, 0xe0, 0x00, 0x28, 0x1d, 0xd1, 0x60, 0x68, + 0x00, 0x28, 0x1a, 0xd0, 0x80, 0x02, 0x88, 0x61, + 0x0e, 0x48, 0x69, 0x46, 0x24, 0x38, 0x00, 0x68, + 0xef, 0xf7, 0xcb, 0xfb, 0x11, 0xe0, 0x3c, 0x00, + 0x74, 0x21, 0x01, 0x00, 0x00, 0x22, 0x02, 0x28, + 0x03, 0xd1, 0xa0, 0x68, 0x00, 0x28, 0x09, 0xd1, + 0x04, 0xe0, 0x00, 0x28, 0x08, 0xd1, 0x60, 0x68, + 0x00, 0x28, 0x03, 0xd1, 0x8a, 0x61, 0xff, 0xf7, + 0xb1, 0xff, 0x01, 0xe0, 0x80, 0x02, 0x88, 0x61, + 0x28, 0x1c, 0x1a, 0xb0, 0xb0, 0xbd, 0x00, 0x00, + 0xc8, 0x6e, 0x01, 0x00, 0xf8, 0xb5, 0x0c, 0x49, + 0x02, 0x20, 0x48, 0x60, 0x0b, 0x49, 0x00, 0x05, + 0x3c, 0x00, 0xb0, 0x21, 0x01, 0x00, 0x08, 0x60, + 0x0b, 0x4f, 0xb8, 0x68, 0xf9, 0x68, 0x7c, 0x68, + 0x45, 0x1a, 0x2e, 0x1c, 0x04, 0xe0, 0xa0, 0x68, + 0x61, 0x68, 0xee, 0xf7, 0x09, 0xf9, 0x24, 0x68, + 0x01, 0x3d, 0xf8, 0xd2, 0x7c, 0x60, 0xf8, 0x68, + 0x80, 0x19, 0xf8, 0x60, 0xf8, 0xbd, 0x40, 0x20, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0x44, 0xe3, + 0x01, 0x00, 0xf8, 0xb5, 0x1f, 0x4e, 0x04, 0x1c, + 0x30, 0x69, 0x3c, 0x00, 0xec, 0x21, 0x01, 0x00, + 0x01, 0x21, 0xf9, 0xf7, 0x99, 0xfa, 0x1d, 0x49, + 0x60, 0x00, 0x40, 0x18, 0x10, 0x38, 0x81, 0x7b, + 0x1b, 0x4a, 0x51, 0x72, 0xc0, 0x7b, 0x10, 0x74, + 0x1a, 0x4f, 0x1b, 0x4d, 0x0e, 0x2c, 0x0a, 0xd1, + 0x01, 0x22, 0x02, 0x21, 0x08, 0x20, 0x01, 0xf0, + 0xf3, 0xfb, 0x03, 0x20, 0xff, 0x21, 0x41, 0x31, + 0x39, 0x86, 0x14, 0x21, 0x08, 0xe0, 0x02, 0x22, + 0x01, 0x21, 0x08, 0x20, 0x3c, 0x00, 0x28, 0x22, + 0x01, 0x00, 0x01, 0xf0, 0xe8, 0xfb, 0x12, 0x49, + 0x02, 0x20, 0x39, 0x86, 0x10, 0x21, 0xa9, 0x71, + 0xe8, 0x71, 0x10, 0x48, 0x11, 0x4a, 0x00, 0x19, + 0x10, 0x38, 0xc0, 0x7b, 0x00, 0x28, 0x03, 0xd0, + 0x01, 0x21, 0x51, 0x73, 0x10, 0x73, 0x01, 0xe0, + 0x00, 0x20, 0x50, 0x73, 0x00, 0x21, 0x20, 0x1c, + 0xfd, 0xf7, 0xe5, 0xfd, 0x30, 0x69, 0xf9, 0xf7, + 0x08, 0xfb, 0xf8, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x22, 0x01, 0x00, 0x40, 0x7c, 0x01, 0x00, + 0x76, 0x46, 0x01, 0x00, 0x0c, 0x80, 0x07, 0x00, + 0x30, 0x80, 0x07, 0x00, 0x00, 0x80, 0x07, 0x00, + 0xff, 0x01, 0x00, 0x00, 0x5c, 0x57, 0x01, 0x00, + 0xd0, 0x80, 0x07, 0x00, 0x10, 0xb5, 0x15, 0x4c, + 0x14, 0x4a, 0x21, 0x78, 0x00, 0x20, 0x18, 0x32, + 0x05, 0x29, 0x1d, 0xd0, 0x06, 0x29, 0x1b, 0xd0, + 0x07, 0x29, 0x01, 0xd0, 0x08, 0x29, 0x06, 0xd1, + 0x3c, 0x00, 0xa0, 0x22, 0x01, 0x00, 0x91, 0x68, + 0x05, 0x20, 0x10, 0x29, 0x00, 0xdb, 0x06, 0x20, + 0x20, 0x70, 0x01, 0x20, 0xa1, 0x78, 0x00, 0x28, + 0x61, 0x70, 0x0b, 0xd0, 0x00, 0x20, 0xfa, 0xf7, + 0xdc, 0xf8, 0x00, 0x21, 0x60, 0x78, 0xf4, 0xf7, + 0x3c, 0xfa, 0x0a, 0x22, 0x1e, 0x21, 0x13, 0x20, + 0x01, 0xf0, 0x7f, 0xf9, 0x10, 0xbd, 0xd1, 0x69, + 0x07, 0x20, 0x10, 0x29, 0xe8, 0xdb, 0x08, 0x20, + 0xe6, 0xe7, 0x3c, 0x00, 0xdc, 0x22, 0x01, 0x00, + 0x7c, 0x78, 0x01, 0x00, 0xb0, 0xb5, 0x0d, 0x1c, + 0x01, 0x1c, 0x04, 0x1c, 0x44, 0x31, 0x00, 0x20, + 0xf6, 0xf7, 0x40, 0xfa, 0x30, 0x34, 0x00, 0x2d, + 0x07, 0xd0, 0x0e, 0xc8, 0x0e, 0xc4, 0x08, 0xc8, + 0x10, 0x38, 0x08, 0xc4, 0xf4, 0xf7, 0xc4, 0xf9, + 0xb0, 0xbd, 0x1e, 0xcc, 0x1e, 0xc0, 0xb0, 0xbd, + 0xf8, 0xb5, 0x08, 0x1c, 0x11, 0x1c, 0xf4, 0xf7, + 0x87, 0xfa, 0x08, 0x4c, 0x3c, 0x00, 0x18, 0x23, + 0x01, 0x00, 0x00, 0x25, 0x08, 0x4e, 0x08, 0x4f, + 0x06, 0xe0, 0x30, 0x6b, 0x00, 0x28, 0x03, 0xd0, + 0x35, 0x63, 0x20, 0x68, 0xee, 0xf7, 0x55, 0xf8, + 0x38, 0x68, 0x00, 0x28, 0xf5, 0xd0, 0xf8, 0xbd, + 0x00, 0x00, 0x5c, 0x5b, 0x01, 0x00, 0xe4, 0xfe, + 0x01, 0x00, 0x84, 0x5a, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x06, 0x00, 0x0e, 0x00, 0xf0, 0x07, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x0a, 0x1c, 0x3c, 0x00, + 0x54, 0x23, 0x01, 0x00, 0x23, 0x21, 0x01, 0xf0, + 0x2b, 0xfa, 0x80, 0xbd, 0xb0, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x12, 0x28, 0x03, 0xd3, 0x01, 0x21, + 0x23, 0x20, 0xee, 0xf7, 0x9b, 0xff, 0x06, 0x49, + 0xa0, 0x00, 0x08, 0x58, 0x04, 0xe0, 0x12, 0xc8, + 0x28, 0x1c, 0xee, 0xf7, 0x2e, 0xf8, 0x20, 0x1c, + 0x00, 0x28, 0xf8, 0xd1, 0xb0, 0xbd, 0x00, 0x00, + 0x68, 0x5b, 0x01, 0x00, 0xf8, 0xb5, 0x0e, 0x1c, + 0x3c, 0x00, 0x90, 0x23, 0x01, 0x00, 0x00, 0x25, + 0x04, 0x1c, 0x12, 0x28, 0x03, 0xd3, 0x01, 0x21, + 0x23, 0x20, 0xee, 0xf7, 0x82, 0xff, 0x13, 0x48, + 0xa7, 0x00, 0xc4, 0x59, 0x08, 0xe0, 0x20, 0x68, + 0xb0, 0x42, 0x03, 0xd1, 0x03, 0x21, 0x23, 0x20, + 0xee, 0xf7, 0x77, 0xff, 0x25, 0x1c, 0x64, 0x68, + 0x00, 0x2c, 0xf4, 0xd1, 0x0c, 0x4a, 0x04, 0x3a, + 0x10, 0x68, 0x00, 0x28, 0x01, 0xd0, 0x41, 0x68, + 0x11, 0x60, 0x3c, 0x00, 0xcc, 0x23, 0x01, 0x00, + 0x00, 0x28, 0x04, 0xd1, 0x02, 0x21, 0x23, 0x20, + 0xee, 0xf7, 0x66, 0xff, 0xf8, 0xbd, 0x00, 0x21, + 0x41, 0x60, 0x06, 0x60, 0x00, 0x2d, 0x01, 0xd0, + 0x68, 0x60, 0xf7, 0xe7, 0x01, 0x49, 0xc8, 0x51, + 0xf4, 0xe7, 0x00, 0x00, 0x68, 0x5b, 0x01, 0x00, + 0x70, 0xb5, 0x0e, 0x1c, 0x05, 0x1c, 0x00, 0x24, + 0x12, 0x28, 0x03, 0xd3, 0x01, 0x21, 0x23, 0x20, + 0xee, 0xf7, 0x4e, 0xff, 0x3c, 0x00, 0x08, 0x24, + 0x01, 0x00, 0x0d, 0x4b, 0xaa, 0x00, 0x98, 0x58, + 0x04, 0xe0, 0x01, 0x68, 0xb1, 0x42, 0x04, 0xd0, + 0x04, 0x1c, 0x40, 0x68, 0x00, 0x28, 0xf8, 0xd1, + 0x70, 0xbd, 0x00, 0x28, 0xfc, 0xd0, 0x00, 0x2c, + 0x41, 0x68, 0x01, 0xd1, 0x99, 0x50, 0x00, 0xe0, + 0x61, 0x60, 0x00, 0x21, 0x03, 0x4a, 0x01, 0x60, + 0x04, 0x3a, 0x11, 0x68, 0x41, 0x60, 0x10, 0x60, + 0x70, 0xbd, 0x68, 0x5b, 0x01, 0x00, 0x3c, 0x00, + 0x44, 0x24, 0x01, 0x00, 0xf3, 0xb5, 0x81, 0xb0, + 0x00, 0x28, 0x17, 0xd0, 0x01, 0x78, 0xff, 0x29, + 0x14, 0xd0, 0x45, 0x78, 0x44, 0x19, 0x02, 0x34, + 0x80, 0x27, 0x01, 0x3c, 0x26, 0x78, 0x01, 0x3d, + 0xbe, 0x43, 0x30, 0x1c, 0xf8, 0xf7, 0x82, 0xfc, + 0x01, 0x21, 0x81, 0x40, 0x02, 0x98, 0x01, 0x40, + 0x02, 0xd0, 0x3e, 0x43, 0x30, 0x1c, 0x20, 0x70, + 0x00, 0x2d, 0xee, 0xd1, 0xfe, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x24, 0x01, 0x00, 0x10, 0x4b, + 0x10, 0xb5, 0x59, 0x68, 0x41, 0x1a, 0x0f, 0x29, + 0x0d, 0xdc, 0x0e, 0x22, 0xd2, 0x43, 0x91, 0x42, + 0x09, 0xdb, 0x1a, 0x1c, 0x92, 0x68, 0x00, 0x29, + 0x01, 0xdd, 0x00, 0x2a, 0x03, 0xda, 0x00, 0x29, + 0x0d, 0xda, 0x00, 0x2a, 0x0b, 0xdc, 0x04, 0x33, + 0x03, 0xc3, 0xfd, 0xf7, 0x10, 0xfd, 0x04, 0x1c, + 0xfd, 0xf7, 0x13, 0xfd, 0x00, 0x28, 0x02, 0xd0, + 0x20, 0x1c, 0x3c, 0x00, 0xbc, 0x24, 0x01, 0x00, + 0xff, 0xf7, 0x92, 0xfe, 0x10, 0xbd, 0x00, 0x00, + 0x18, 0x63, 0x01, 0x00, 0xf8, 0xb5, 0x64, 0x4c, + 0x07, 0x1c, 0x60, 0x78, 0xa1, 0x78, 0x88, 0x42, + 0x0f, 0xd1, 0x08, 0x1c, 0xfd, 0xf7, 0xce, 0xf8, + 0xe0, 0x60, 0x04, 0x20, 0x60, 0x70, 0x0a, 0x22, + 0x1e, 0x21, 0x13, 0x20, 0x01, 0xf0, 0x70, 0xf8, + 0x00, 0x21, 0x60, 0x78, 0xf4, 0xf7, 0x24, 0xf9, + 0xf8, 0xbd, 0x04, 0x28, 0x3c, 0x00, 0xf8, 0x24, + 0x01, 0x00, 0x6e, 0xd1, 0x58, 0x4e, 0xfd, 0xf7, + 0xbc, 0xf8, 0x00, 0x90, 0x71, 0x78, 0x04, 0x1c, + 0x00, 0x20, 0x05, 0x29, 0x21, 0xd2, 0x01, 0xa3, + 0x5b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, 0x0b, 0x0f, + 0x14, 0x1a, 0x02, 0x00, 0x51, 0x48, 0x51, 0x49, + 0x60, 0x43, 0x41, 0x18, 0x7d, 0x20, 0xc0, 0x00, + 0xee, 0xf7, 0x87, 0xf8, 0x11, 0xe0, 0x87, 0x20, + 0x60, 0x43, 0x4d, 0x49, 0x02, 0xe0, 0x3c, 0x00, + 0x34, 0x25, 0x01, 0x00, 0x45, 0x20, 0x4d, 0x49, + 0x60, 0x43, 0x40, 0x18, 0x08, 0xe0, 0x4c, 0x48, + 0xcd, 0x21, 0x09, 0x01, 0x60, 0x43, 0x40, 0x1a, + 0x02, 0xe0, 0x46, 0x20, 0x60, 0x43, 0x82, 0x38, + 0x06, 0x06, 0x48, 0x48, 0x07, 0x21, 0x00, 0x79, + 0x36, 0x16, 0x08, 0x1a, 0x00, 0x19, 0x00, 0x90, + 0x68, 0x46, 0xfe, 0xf7, 0x5f, 0xfd, 0x38, 0x1c, + 0xfd, 0xf7, 0x2e, 0xfb, 0x00, 0x99, 0x42, 0x4a, + 0x3c, 0x00, 0x70, 0x25, 0x01, 0x00, 0x49, 0x00, + 0x51, 0x5a, 0x48, 0x43, 0x39, 0x49, 0x04, 0x1c, + 0x88, 0x78, 0x00, 0x28, 0x01, 0xd0, 0x01, 0x28, + 0x1e, 0xd1, 0x35, 0x49, 0x00, 0x28, 0x03, 0xd1, + 0x3a, 0x48, 0x05, 0x78, 0x04, 0x20, 0x02, 0xe0, + 0x38, 0x48, 0x45, 0x78, 0x0c, 0x20, 0x30, 0x49, + 0xc9, 0x68, 0x49, 0x1b, 0x08, 0x18, 0x00, 0x90, + 0x68, 0x46, 0xfe, 0xf7, 0x3e, 0xfd, 0x00, 0x98, + 0x33, 0x49, 0x3c, 0x00, 0xac, 0x25, 0x01, 0x00, + 0x40, 0x00, 0x20, 0x31, 0x08, 0x5a, 0x2a, 0x49, + 0x44, 0x43, 0xc8, 0x68, 0xa8, 0x42, 0x01, 0xd9, + 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, 0x2e, 0x48, + 0x21, 0x18, 0x40, 0x00, 0xee, 0xf7, 0xa2, 0xf8, + 0x04, 0x1c, 0x00, 0x2d, 0x03, 0xd0, 0xfd, 0xf7, + 0xc3, 0xfa, 0x02, 0xe0, 0x3d, 0xe0, 0xfd, 0xf7, + 0xf3, 0xfa, 0x00, 0x2f, 0x02, 0xd1, 0x25, 0x48, + 0x0e, 0x38, 0x01, 0xe0, 0x3c, 0x00, 0xe8, 0x25, + 0x01, 0x00, 0x23, 0x48, 0x0a, 0x38, 0x01, 0x68, + 0x61, 0x1a, 0xcb, 0x1c, 0x01, 0xdb, 0x03, 0x29, + 0x00, 0xdd, 0x04, 0x60, 0x01, 0x68, 0xa1, 0x42, + 0x01, 0xd2, 0x01, 0x31, 0x04, 0xe0, 0xa1, 0x42, + 0x03, 0xd9, 0x00, 0x29, 0x01, 0xd0, 0x01, 0x39, + 0x01, 0x60, 0x01, 0x68, 0x38, 0x1c, 0xfd, 0xf7, + 0xc0, 0xfb, 0x10, 0x4c, 0x0a, 0x20, 0x60, 0x70, + 0x0a, 0x22, 0x13, 0x20, 0xa1, 0x68, 0x3c, 0x00, + 0x24, 0x26, 0x01, 0x00, 0x00, 0xf0, 0xd2, 0xff, + 0x60, 0x68, 0x00, 0xf0, 0xf7, 0xfa, 0x00, 0x28, + 0x00, 0xd1, 0x5f, 0xe7, 0x00, 0xf0, 0xba, 0xfb, + 0x11, 0x49, 0x00, 0x23, 0x40, 0x18, 0x0e, 0x49, + 0x60, 0x60, 0x1e, 0x39, 0xc8, 0x56, 0xb0, 0x42, + 0xf3, 0xd0, 0x0e, 0x70, 0x31, 0x1c, 0x00, 0x20, + 0xff, 0xf7, 0x84, 0xfe, 0x4e, 0xe7, 0xff, 0xf7, + 0x15, 0xfe, 0x4b, 0xe7, 0x7c, 0x78, 0x01, 0x00, + 0x3c, 0x00, 0x60, 0x26, 0x01, 0x00, 0x60, 0xd7, + 0xff, 0xff, 0x60, 0x8f, 0x01, 0x00, 0x54, 0x0b, + 0x00, 0x00, 0xc9, 0x09, 0x00, 0x00, 0x8e, 0xfe, + 0xff, 0xff, 0x0c, 0x5a, 0x01, 0x00, 0x12, 0x5a, + 0x01, 0x00, 0x20, 0xa1, 0x07, 0x00, 0x40, 0x42, + 0x0f, 0x00, 0x30, 0xb5, 0x0c, 0x4b, 0xfe, 0x24, + 0x1b, 0x88, 0x04, 0x40, 0xc0, 0x07, 0x5d, 0x07, + 0x6d, 0x0f, 0xdb, 0x08, 0xc0, 0x0f, 0x9c, 0x42, + 0x0b, 0xd8, 0x3c, 0x00, 0x9c, 0x26, 0x01, 0x00, + 0xa2, 0x18, 0x04, 0x3a, 0x9a, 0x42, 0x07, 0xd3, + 0x1a, 0x1b, 0x89, 0x5c, 0x01, 0x22, 0xaa, 0x40, + 0x11, 0x40, 0x01, 0xd0, 0x02, 0x21, 0x08, 0x43, + 0x30, 0xbd, 0x00, 0x00, 0xfa, 0x60, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x28, 0x03, 0xd0, 0x01, 0x1c, + 0x14, 0x20, 0xf5, 0xf7, 0xff, 0xfa, 0x80, 0xbd, + 0xb0, 0xb5, 0x04, 0x1c, 0xf7, 0xf7, 0x08, 0xfd, + 0x13, 0x4d, 0x00, 0x28, 0x3c, 0x00, 0xd8, 0x26, + 0x01, 0x00, 0x1d, 0xd1, 0xa0, 0x07, 0x16, 0xd5, + 0x02, 0x20, 0x84, 0x43, 0x11, 0x48, 0x01, 0x22, + 0x2a, 0x62, 0x40, 0x68, 0x00, 0x28, 0x13, 0xd0, + 0xf2, 0xf7, 0x51, 0xf9, 0x00, 0x28, 0x0f, 0xd1, + 0x0b, 0x48, 0xe4, 0x30, 0x80, 0x7a, 0x01, 0x28, + 0x00, 0xd0, 0x00, 0x22, 0x11, 0x1c, 0x01, 0x20, + 0xf2, 0xf7, 0xa5, 0xf9, 0x04, 0xe0, 0x00, 0xf0, + 0x4e, 0xfb, 0xe8, 0x61, 0xf2, 0xf7, 0x3c, 0x00, + 0x14, 0x27, 0x01, 0x00, 0x6b, 0xf9, 0xa9, 0x6a, + 0x00, 0x29, 0x02, 0xd0, 0x20, 0x1c, 0xed, 0xf7, + 0x5c, 0xfe, 0xb0, 0xbd, 0x60, 0x6c, 0x01, 0x00, + 0xb0, 0x57, 0x01, 0x00, 0x20, 0x48, 0xb0, 0xb5, + 0x81, 0x68, 0x01, 0x29, 0x04, 0xd1, 0x00, 0x78, + 0x00, 0x28, 0x01, 0xd1, 0xfd, 0xf7, 0x72, 0xfd, + 0x1b, 0x4d, 0x80, 0x3d, 0x2c, 0x1c, 0x70, 0x34, + 0x20, 0x78, 0x03, 0x38, 0x05, 0x28, 0x18, 0xd2, + 0x3c, 0x00, 0x50, 0x27, 0x01, 0x00, 0x01, 0xa3, + 0x1b, 0x5c, 0x5b, 0x00, 0x9f, 0x44, 0x04, 0x15, + 0x27, 0x27, 0x27, 0x00, 0xfb, 0xf7, 0xf1, 0xff, + 0x60, 0x7b, 0x01, 0x1c, 0xff, 0x31, 0x61, 0x73, + 0x00, 0x28, 0xf7, 0xd1, 0x04, 0x20, 0x20, 0x70, + 0xa8, 0x89, 0xf8, 0xf7, 0xda, 0xf9, 0x01, 0x1c, + 0x00, 0x22, 0x0f, 0x20, 0x00, 0xf0, 0x25, 0xff, + 0xb0, 0xbd, 0xef, 0xf7, 0xce, 0xff, 0x6a, 0x21, + 0x49, 0x5b, 0x3c, 0x00, 0x8c, 0x27, 0x01, 0x00, + 0x88, 0x42, 0x0b, 0xd0, 0xe8, 0x89, 0xf8, 0xf7, + 0xcb, 0xf9, 0x01, 0x1c, 0x00, 0x23, 0x00, 0x22, + 0x0f, 0x20, 0x00, 0xf0, 0xf7, 0xff, 0x07, 0x20, + 0x20, 0x70, 0xb0, 0xbd, 0xfd, 0xf7, 0x3a, 0xfe, + 0xb0, 0xbd, 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, + 0xf0, 0xb5, 0x85, 0xb0, 0x04, 0x1c, 0x03, 0x80, + 0x18, 0x0c, 0x60, 0x80, 0x0d, 0x1c, 0x51, 0x78, + 0x10, 0x78, 0x09, 0x02, 0x3c, 0x00, 0xc8, 0x27, + 0x01, 0x00, 0x48, 0x40, 0xa0, 0x80, 0xd1, 0x78, + 0x90, 0x78, 0x09, 0x02, 0x48, 0x40, 0xe0, 0x80, + 0x51, 0x79, 0x10, 0x79, 0x09, 0x02, 0x48, 0x40, + 0x20, 0x81, 0x68, 0x46, 0x1a, 0x49, 0x14, 0x22, + 0xed, 0xf7, 0xe3, 0xfe, 0x00, 0x23, 0x00, 0x20, + 0xd9, 0x07, 0xc9, 0x0f, 0x8c, 0x46, 0x42, 0x00, + 0x56, 0x07, 0x76, 0x0f, 0x61, 0x46, 0x89, 0x19, + 0x49, 0x00, 0x6e, 0x5c, 0x49, 0x19, 0x3c, 0x00, + 0x04, 0x28, 0x01, 0x00, 0x49, 0x78, 0x6f, 0x46, + 0x09, 0x02, 0x4e, 0x40, 0x81, 0x00, 0x79, 0x58, + 0x0f, 0x4f, 0x49, 0x00, 0x61, 0x5a, 0x01, 0x30, + 0x4e, 0x40, 0x31, 0x06, 0x36, 0x0a, 0x76, 0x00, + 0xc9, 0x0d, 0x79, 0x5a, 0xf6, 0x19, 0x01, 0x27, + 0x7f, 0x02, 0xf6, 0x19, 0x36, 0x88, 0x71, 0x40, + 0xa6, 0x5a, 0x89, 0x19, 0xa1, 0x52, 0x05, 0x28, + 0xdc, 0xdb, 0x20, 0x89, 0xc0, 0x18, 0x01, 0x33, + 0x3c, 0x00, 0x40, 0x28, 0x01, 0x00, 0x08, 0x2b, + 0x20, 0x81, 0xd2, 0xdb, 0x05, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xd8, 0x56, 0x01, 0x00, 0xd8, 0x52, + 0x01, 0x00, 0xf0, 0xb5, 0x05, 0x1c, 0x0c, 0x1c, + 0x1e, 0x1c, 0x00, 0x20, 0x89, 0xb0, 0x41, 0x00, + 0x53, 0x5a, 0x01, 0x30, 0x06, 0xaf, 0x7b, 0x52, + 0x05, 0x28, 0xf8, 0xdb, 0x10, 0x89, 0x00, 0xab, + 0x3a, 0x49, 0x80, 0x19, 0x58, 0x84, 0x68, 0x46, + 0x18, 0x22, 0x3c, 0x00, 0x7c, 0x28, 0x01, 0x00, + 0xed, 0xf7, 0x98, 0xfe, 0x00, 0x20, 0x41, 0x00, + 0x0a, 0x19, 0x52, 0x78, 0x63, 0x5c, 0x6f, 0x46, + 0x12, 0x02, 0x53, 0x40, 0x82, 0x00, 0xba, 0x58, + 0x06, 0xaf, 0x52, 0x00, 0xba, 0x5a, 0x31, 0x4f, + 0x01, 0x30, 0x53, 0x40, 0x1a, 0x06, 0x1b, 0x0a, + 0x5b, 0x00, 0xd2, 0x0d, 0xba, 0x5a, 0xdb, 0x19, + 0x01, 0x27, 0x7f, 0x02, 0xdb, 0x19, 0x1b, 0x88, + 0x5a, 0x40, 0x06, 0xab, 0x3c, 0x00, 0xb8, 0x28, + 0x01, 0x00, 0x5b, 0x5a, 0xd2, 0x18, 0x06, 0xab, + 0x5a, 0x52, 0x06, 0x28, 0xde, 0xdb, 0x61, 0x7b, + 0x20, 0x7b, 0x00, 0xab, 0x09, 0x02, 0x48, 0x40, + 0x59, 0x8c, 0x48, 0x40, 0x41, 0x08, 0xc0, 0x03, + 0x48, 0x40, 0x19, 0x8b, 0x40, 0x18, 0x18, 0x83, + 0xe1, 0x7b, 0xa0, 0x7b, 0x09, 0x02, 0x48, 0x40, + 0x19, 0x8b, 0x48, 0x40, 0x41, 0x08, 0xc0, 0x03, + 0x48, 0x40, 0x59, 0x8b, 0x40, 0x18, 0x3c, 0x00, + 0xf4, 0x28, 0x01, 0x00, 0x58, 0x83, 0x02, 0x20, + 0x41, 0x00, 0x06, 0xaa, 0x8a, 0x18, 0x20, 0x3a, + 0xd2, 0x8b, 0x01, 0x30, 0x53, 0x08, 0xd2, 0x03, + 0x5a, 0x40, 0x06, 0xab, 0x5b, 0x5a, 0xd2, 0x18, + 0x06, 0xab, 0x5a, 0x52, 0x06, 0x28, 0xef, 0xdb, + 0x30, 0x0a, 0x28, 0x70, 0x70, 0x04, 0x40, 0x0e, + 0x20, 0x21, 0x08, 0x43, 0x68, 0x70, 0xae, 0x70, + 0x61, 0x78, 0x20, 0x78, 0x00, 0xab, 0x09, 0x02, + 0x3c, 0x00, 0x30, 0x29, 0x01, 0x00, 0x48, 0x40, + 0x59, 0x8c, 0x48, 0x40, 0xc0, 0x05, 0x00, 0x0e, + 0xe8, 0x70, 0x00, 0x20, 0x41, 0x00, 0x06, 0xaa, + 0x53, 0x5a, 0x4a, 0x19, 0x01, 0x30, 0x13, 0x71, + 0x06, 0xab, 0x59, 0x5a, 0x09, 0x0a, 0x51, 0x71, + 0x06, 0x28, 0xf3, 0xdb, 0x09, 0xb0, 0xf0, 0xbd, + 0x00, 0x00, 0xec, 0x56, 0x01, 0x00, 0xd8, 0x52, + 0x01, 0x00, 0xf0, 0xb5, 0x46, 0x68, 0x05, 0x1c, + 0x60, 0x30, 0x3c, 0x00, 0x6c, 0x29, 0x01, 0x00, + 0x85, 0xb0, 0x04, 0x90, 0x60, 0xe0, 0x68, 0x68, + 0x0c, 0x21, 0x07, 0x69, 0x00, 0x20, 0xee, 0xf7, + 0x2d, 0xfe, 0x70, 0x61, 0x01, 0x89, 0x04, 0x39, + 0x09, 0x04, 0x09, 0x0c, 0x01, 0x81, 0x70, 0x69, + 0x00, 0x68, 0x40, 0x18, 0x04, 0x21, 0xee, 0xf7, + 0x21, 0xfe, 0xf0, 0x61, 0x70, 0x69, 0x20, 0x21, + 0x04, 0x68, 0x04, 0x98, 0x04, 0x22, 0x40, 0x7b, + 0x80, 0x01, 0x08, 0x43, 0x3c, 0x00, 0xa8, 0x29, + 0x01, 0x00, 0xe0, 0x70, 0x28, 0x69, 0x40, 0x89, + 0xa0, 0x70, 0x28, 0x69, 0x40, 0x89, 0x00, 0x0a, + 0x20, 0x70, 0x29, 0x69, 0x0c, 0x31, 0xa0, 0x18, + 0xed, 0xf7, 0x9b, 0xfd, 0x20, 0x78, 0x20, 0x21, + 0x40, 0x06, 0x40, 0x0e, 0x08, 0x43, 0x60, 0x70, + 0x28, 0x69, 0x0a, 0x30, 0x01, 0x88, 0x01, 0x31, + 0x09, 0x04, 0x09, 0x0c, 0x01, 0x80, 0x04, 0xd1, + 0x28, 0x69, 0x0c, 0x30, 0x01, 0x68, 0x3c, 0x00, + 0xe4, 0x29, 0x01, 0x00, 0x01, 0x31, 0x01, 0x60, + 0x35, 0x62, 0x61, 0x79, 0x20, 0x79, 0x09, 0x02, + 0x40, 0x18, 0xa1, 0x79, 0x09, 0x04, 0x40, 0x18, + 0xe1, 0x79, 0x09, 0x06, 0x43, 0x18, 0x00, 0x93, + 0xa0, 0x78, 0x21, 0x78, 0x09, 0x02, 0x40, 0x18, + 0x04, 0x04, 0x24, 0x0c, 0x10, 0x20, 0xee, 0xf7, + 0x13, 0xff, 0xb0, 0x61, 0x28, 0x69, 0x3a, 0x1c, + 0x01, 0x68, 0x00, 0x9b, 0x01, 0xa8, 0x0a, 0x32, + 0x3c, 0x00, 0x20, 0x2a, 0x01, 0x00, 0xff, 0xf7, + 0xc8, 0xfe, 0x28, 0x69, 0x23, 0x1c, 0x01, 0x68, + 0xb0, 0x69, 0x01, 0xaa, 0xff, 0xf7, 0x11, 0xff, + 0x36, 0x68, 0x00, 0x2e, 0x9c, 0xd1, 0x03, 0x49, + 0x04, 0x48, 0x6a, 0x68, 0xf7, 0xf7, 0x63, 0xfb, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xfd, 0x6b, + 0x00, 0x00, 0xa0, 0x6a, 0x01, 0x00, 0x01, 0x38, + 0x07, 0x49, 0x40, 0x00, 0x09, 0x5c, 0x00, 0x29, + 0x06, 0xd0, 0x3c, 0x00, 0x5c, 0x2a, 0x01, 0x00, + 0x04, 0x49, 0x1c, 0x39, 0x08, 0x5c, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0xe6, 0x78, 0x01, 0x00, + 0xfe, 0xb5, 0x05, 0x1c, 0x00, 0x20, 0x02, 0x90, + 0x13, 0x48, 0x17, 0x1c, 0x00, 0x68, 0x0c, 0x1c, + 0x86, 0x78, 0x30, 0x1c, 0xfd, 0xf7, 0x28, 0xfa, + 0x00, 0x28, 0x01, 0xd1, 0x02, 0x98, 0xfe, 0xbd, + 0x00, 0x2d, 0x08, 0xd1, 0x3c, 0x00, 0x98, 0x2a, + 0x01, 0x00, 0x20, 0x68, 0x00, 0xab, 0x18, 0x71, + 0x60, 0x68, 0x58, 0x71, 0xa0, 0x68, 0x98, 0x71, + 0x03, 0x20, 0x38, 0x80, 0x29, 0x1c, 0x30, 0x1c, + 0x01, 0xaa, 0x00, 0xf0, 0x0e, 0xf8, 0x00, 0x2d, + 0xec, 0xd0, 0x00, 0xab, 0x19, 0x79, 0x21, 0x60, + 0x59, 0x79, 0x61, 0x60, 0x99, 0x79, 0xa1, 0x60, + 0x0c, 0x21, 0x39, 0x80, 0xe2, 0xe7, 0xf8, 0x6b, + 0x01, 0x00, 0xf8, 0xb5, 0x15, 0x1c, 0x3c, 0x00, + 0xd4, 0x2a, 0x01, 0x00, 0x42, 0x1e, 0x01, 0x38, + 0x47, 0x00, 0x3f, 0x18, 0x1f, 0x48, 0x3e, 0x18, + 0x00, 0x29, 0x06, 0xd0, 0x01, 0x24, 0x03, 0x22, + 0x31, 0x1c, 0x28, 0x1c, 0xed, 0xf7, 0x04, 0xfd, + 0x32, 0xe0, 0x68, 0x78, 0x01, 0x24, 0x00, 0x28, + 0x05, 0xd0, 0x29, 0x78, 0x08, 0x18, 0x01, 0x38, + 0x0e, 0x28, 0x00, 0xd9, 0x00, 0x24, 0x00, 0x2c, + 0x26, 0xd0, 0x00, 0x2a, 0x07, 0xd1, 0x2a, 0x21, + 0x3c, 0x00, 0x10, 0x2b, 0x01, 0x00, 0x12, 0x48, + 0xed, 0xf7, 0x9f, 0xfc, 0x1c, 0x21, 0x11, 0x48, + 0xed, 0xf7, 0x9b, 0xfc, 0x0f, 0x48, 0x03, 0x22, + 0x29, 0x1c, 0x30, 0x1c, 0xed, 0xf7, 0xe7, 0xfc, + 0x0c, 0x48, 0x71, 0x78, 0xc0, 0x5d, 0xb2, 0x78, + 0x00, 0x29, 0x0e, 0xd0, 0x00, 0x2a, 0x0c, 0xd0, + 0x01, 0x22, 0x43, 0x18, 0x08, 0x4d, 0x06, 0xe0, + 0x41, 0x00, 0x49, 0x19, 0x10, 0x39, 0x8a, 0x73, + 0xb7, 0x78, 0x3c, 0x00, 0x4c, 0x2b, 0x01, 0x00, + 0x01, 0x30, 0xcf, 0x73, 0x83, 0x42, 0xf6, 0xd8, + 0xfe, 0xf7, 0x60, 0xf8, 0x20, 0x1c, 0xf8, 0xbd, + 0xeb, 0x62, 0x01, 0x00, 0xca, 0x78, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x1c, 0x1c, 0x48, 0x00, 0x23, + 0xc0, 0x56, 0x43, 0x1c, 0x32, 0xd1, 0xa8, 0x7a, + 0xf8, 0xf7, 0x0c, 0xf9, 0x00, 0x26, 0x00, 0x28, + 0x18, 0x4c, 0x08, 0xd0, 0xe8, 0x69, 0xe1, 0x6b, + 0x00, 0x29, 0x0b, 0xd1, 0x3c, 0x00, 0x88, 0x2b, + 0x01, 0x00, 0x66, 0x63, 0x01, 0x21, 0xe1, 0x63, + 0xa6, 0x63, 0x06, 0xe0, 0xa8, 0x69, 0xe1, 0x6b, + 0x00, 0x29, 0x02, 0xd0, 0x66, 0x63, 0xa6, 0x63, + 0xe6, 0x63, 0xa1, 0x6b, 0x01, 0x31, 0xa1, 0x63, + 0x82, 0x03, 0x01, 0xd5, 0x0e, 0x4a, 0x10, 0x43, + 0xe2, 0x6b, 0x00, 0x2a, 0x00, 0xd0, 0x40, 0x42, + 0x62, 0x6b, 0x10, 0x18, 0x60, 0x63, 0x08, 0x29, + 0x0b, 0xd1, 0x00, 0x28, 0x01, 0xdd, 0x3c, 0x00, + 0xc4, 0x2b, 0x01, 0x00, 0x01, 0x20, 0x03, 0xe0, + 0x00, 0x28, 0x03, 0xda, 0x00, 0x20, 0xc0, 0x43, + 0xef, 0xf7, 0x62, 0xfe, 0x66, 0x63, 0xa6, 0x63, + 0x70, 0xbd, 0x00, 0x00, 0xf4, 0x6b, 0x01, 0x00, + 0x84, 0x6a, 0x01, 0x00, 0x00, 0x00, 0xfe, 0xff, + 0x0c, 0x21, 0x05, 0x4a, 0x41, 0x43, 0x89, 0x18, + 0x80, 0xb5, 0x89, 0x78, 0x00, 0x29, 0x01, 0xd1, + 0xf3, 0xf7, 0xf2, 0xfa, 0x80, 0xbd, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x2c, 0x01, 0x00, 0x60, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x1c, 0x00, 0x20, + 0xf7, 0xf7, 0x03, 0xfa, 0x80, 0xbd, 0x80, 0xb5, + 0x01, 0x1c, 0x01, 0x20, 0xf7, 0xf7, 0xfd, 0xf9, + 0x80, 0xbd, 0x02, 0x49, 0x89, 0x68, 0x40, 0x1a, + 0xc0, 0x0f, 0x70, 0x47, 0x00, 0x00, 0x00, 0x01, + 0x07, 0x00, 0x02, 0x49, 0x89, 0x68, 0x08, 0x1a, + 0xc0, 0x17, 0x01, 0x30, 0x70, 0x47, 0x00, 0x01, + 0x07, 0x00, 0x3c, 0x00, 0x3c, 0x2c, 0x01, 0x00, + 0x05, 0x49, 0x4a, 0x68, 0x01, 0x23, 0x1a, 0x43, + 0x4a, 0x60, 0x8a, 0x68, 0x10, 0x18, 0x88, 0x60, + 0x48, 0x68, 0x98, 0x43, 0x48, 0x60, 0x70, 0x47, + 0x00, 0x01, 0x07, 0x00, 0x10, 0xb5, 0x15, 0x4b, + 0x00, 0x21, 0x0a, 0x01, 0x9a, 0x58, 0x00, 0x2a, + 0x17, 0xd1, 0x01, 0x24, 0x0a, 0x01, 0x9c, 0x50, + 0xd2, 0x18, 0x10, 0x73, 0x00, 0x23, 0x53, 0x73, + 0x02, 0x23, 0x01, 0x28, 0x3c, 0x00, 0x78, 0x2c, + 0x01, 0x00, 0x0e, 0x4a, 0x05, 0xd1, 0xc8, 0x00, + 0x80, 0x18, 0x10, 0x30, 0x02, 0x78, 0x9a, 0x43, + 0x04, 0xe0, 0xc8, 0x00, 0x80, 0x18, 0x10, 0x30, + 0x02, 0x78, 0x1a, 0x43, 0x02, 0x70, 0x02, 0xe0, + 0x01, 0x31, 0x08, 0x29, 0xe0, 0xdb, 0x08, 0x29, + 0x04, 0xd1, 0x01, 0x21, 0x99, 0x20, 0xee, 0xf7, + 0xfe, 0xfa, 0x03, 0x49, 0x08, 0x04, 0x00, 0x0c, + 0x10, 0xbd, 0xac, 0x73, 0x01, 0x00, 0x3c, 0x00, + 0xb4, 0x2c, 0x01, 0x00, 0x00, 0x60, 0x07, 0x00, + 0xff, 0xff, 0x00, 0x00, 0xf7, 0xb5, 0x19, 0x4f, + 0x19, 0x4e, 0x0c, 0x1c, 0xc1, 0x00, 0xc9, 0x19, + 0xb2, 0x68, 0x10, 0x31, 0x81, 0xb0, 0x01, 0x3a, + 0x4a, 0x60, 0x0b, 0x78, 0x1d, 0x1c, 0x0d, 0x22, + 0x93, 0x43, 0x0b, 0x70, 0x01, 0x22, 0x82, 0x40, + 0x3a, 0x73, 0x12, 0x4b, 0x00, 0x01, 0x03, 0x9a, + 0xc0, 0x18, 0x82, 0x60, 0x10, 0x4a, 0x10, 0x1c, + 0x3c, 0x00, 0xf0, 0x2c, 0x01, 0x00, 0x20, 0x30, + 0x87, 0x79, 0x00, 0xab, 0x1f, 0x70, 0xc0, 0x79, + 0x58, 0x70, 0xb0, 0x68, 0x03, 0x30, 0x00, 0x23, + 0x26, 0x1a, 0x01, 0xd5, 0x04, 0x1c, 0x01, 0x23, + 0x4c, 0x60, 0x0d, 0x70, 0x00, 0x2b, 0x04, 0xd0, + 0x20, 0x1c, 0xff, 0xf7, 0x8a, 0xff, 0x00, 0x28, + 0xfa, 0xd0, 0x00, 0xab, 0x18, 0x88, 0xd0, 0x84, + 0xff, 0xbd, 0x00, 0x60, 0x07, 0x00, 0x00, 0x01, + 0x07, 0x00, 0x3c, 0x00, 0x2c, 0x2d, 0x01, 0x00, + 0xac, 0x73, 0x01, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x30, 0xb5, 0x00, 0x20, 0xc0, 0x43, 0x0b, 0x4c, + 0x09, 0x4b, 0x00, 0x22, 0xd1, 0x00, 0x09, 0x19, + 0x0d, 0x7c, 0xed, 0x07, 0x07, 0xd5, 0x49, 0x69, + 0x9d, 0x68, 0x49, 0x1b, 0x00, 0xd5, 0x00, 0x21, + 0x81, 0x42, 0x00, 0xd2, 0x08, 0x1c, 0x01, 0x32, + 0x08, 0x2a, 0xef, 0xdb, 0x30, 0xbd, 0x00, 0x00, + 0x00, 0x01, 0x07, 0x00, 0x3c, 0x00, 0x68, 0x2d, + 0x01, 0x00, 0x00, 0x60, 0x07, 0x00, 0xb0, 0xb5, + 0x08, 0x28, 0x0b, 0xd2, 0x08, 0x4d, 0x04, 0x01, + 0x29, 0x59, 0x00, 0x29, 0x04, 0xd0, 0x00, 0xf0, + 0x4a, 0xf8, 0x00, 0x20, 0x28, 0x51, 0xb0, 0xbd, + 0x02, 0x21, 0x00, 0xe0, 0x03, 0x21, 0x99, 0x20, + 0xee, 0xf7, 0x89, 0xfa, 0xb0, 0xbd, 0xac, 0x73, + 0x01, 0x00, 0x03, 0x49, 0x00, 0x01, 0x40, 0x18, + 0x41, 0x7b, 0x08, 0x22, 0x11, 0x43, 0x3c, 0x00, + 0xa4, 0x2d, 0x01, 0x00, 0x41, 0x73, 0x70, 0x47, + 0xac, 0x73, 0x01, 0x00, 0x01, 0x48, 0x80, 0x68, + 0x70, 0x47, 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, + 0x70, 0xb5, 0x0b, 0x4e, 0x09, 0x4d, 0x00, 0x22, + 0xd0, 0x00, 0x84, 0x19, 0x20, 0x7c, 0xc0, 0x07, + 0x07, 0xd5, 0x60, 0x69, 0xff, 0xf7, 0x26, 0xff, + 0x00, 0x28, 0x02, 0xd0, 0xa8, 0x68, 0x32, 0x30, + 0x60, 0x61, 0x01, 0x32, 0x08, 0x2a, 0xef, 0xdb, + 0x3c, 0x00, 0xe0, 0x2d, 0x01, 0x00, 0x70, 0xbd, + 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x02, 0x4a, 0xc0, 0x00, 0x80, 0x18, + 0x01, 0x74, 0x70, 0x47, 0x00, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x04, 0x49, 0xc0, 0x00, 0x41, 0x18, + 0x08, 0x7c, 0x08, 0x23, 0x02, 0x1c, 0x9a, 0x43, + 0x0a, 0x74, 0x70, 0x47, 0x00, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x70, 0xb5, 0x08, 0x28, 0x17, 0xd2, + 0x0e, 0x49, 0x3c, 0x00, 0x1c, 0x2e, 0x01, 0x00, + 0x8a, 0x68, 0x0e, 0x4d, 0x01, 0x3a, 0xc1, 0x00, + 0x49, 0x19, 0x4a, 0x61, 0x0c, 0x4b, 0x9a, 0x79, + 0x10, 0x31, 0x0c, 0x78, 0x0d, 0x26, 0xb4, 0x43, + 0x0c, 0x70, 0x01, 0x21, 0x81, 0x40, 0x29, 0x73, + 0x9a, 0x71, 0x09, 0x4a, 0x07, 0x49, 0x00, 0x01, + 0x80, 0x18, 0x41, 0x60, 0x70, 0xbd, 0x05, 0x21, + 0x99, 0x20, 0xee, 0xf7, 0x29, 0xfa, 0x70, 0xbd, + 0x00, 0x01, 0x07, 0x00, 0x3c, 0x00, 0x58, 0x2e, + 0x01, 0x00, 0x00, 0x60, 0x07, 0x00, 0x20, 0x10, + 0x07, 0x00, 0xd1, 0x75, 0x00, 0x00, 0xac, 0x73, + 0x01, 0x00, 0xf8, 0xb5, 0x9e, 0x46, 0x1a, 0x4b, + 0x94, 0x46, 0x9b, 0x68, 0x1a, 0x4c, 0xc2, 0x00, + 0x12, 0x19, 0x01, 0x3b, 0x53, 0x61, 0x15, 0x1c, + 0x18, 0x4c, 0xa6, 0x79, 0x2a, 0x1c, 0x10, 0x32, + 0x13, 0x78, 0x0d, 0x27, 0xbb, 0x43, 0x13, 0x70, + 0x01, 0x27, 0x12, 0x4b, 0x87, 0x40, 0x3c, 0x00, + 0x94, 0x2e, 0x01, 0x00, 0x1f, 0x73, 0xa6, 0x71, + 0x12, 0x4e, 0x00, 0x01, 0x80, 0x19, 0x63, 0x46, + 0x43, 0x60, 0x73, 0x46, 0x83, 0x60, 0x13, 0x78, + 0x40, 0x7b, 0xa6, 0x79, 0x01, 0x27, 0x18, 0x43, + 0x38, 0x43, 0x14, 0x35, 0x00, 0xab, 0x1e, 0x70, + 0xe4, 0x79, 0x5c, 0x70, 0x06, 0x4b, 0x9b, 0x68, + 0x03, 0x33, 0xcc, 0x1a, 0x00, 0xd5, 0x19, 0x1c, + 0x29, 0x60, 0x10, 0x70, 0x00, 0xab, 0x18, 0x88, + 0x3c, 0x00, 0xd0, 0x2e, 0x01, 0x00, 0x03, 0x4c, + 0x20, 0x3c, 0xe0, 0x84, 0xf8, 0xbd, 0x00, 0x01, + 0x07, 0x00, 0x00, 0x60, 0x07, 0x00, 0x20, 0x10, + 0x07, 0x00, 0xac, 0x73, 0x01, 0x00, 0x00, 0xb5, + 0x01, 0x1c, 0xff, 0xf7, 0x5e, 0xff, 0x42, 0x18, + 0x10, 0x1c, 0xff, 0xf7, 0x92, 0xfe, 0x00, 0x28, + 0xfa, 0xd0, 0x00, 0xbd, 0x00, 0x00, 0x89, 0x1a, + 0x40, 0x1a, 0x99, 0x18, 0x88, 0x42, 0x01, 0xd8, + 0x01, 0x20, 0x3c, 0x00, 0x0c, 0x2f, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0xf8, 0xb5, 0x0f, 0x1c, 0x04, 0x1c, 0x00, 0x28, + 0x01, 0xd1, 0xee, 0xf7, 0xef, 0xf9, 0x21, 0x1c, + 0x01, 0x20, 0xff, 0xf7, 0x19, 0xfa, 0x41, 0x20, + 0x00, 0x5d, 0x00, 0x28, 0x01, 0xd1, 0x00, 0x25, + 0x04, 0xe0, 0x02, 0x28, 0x01, 0xd1, 0x05, 0x25, + 0x00, 0xe0, 0x01, 0x25, 0xe0, 0x68, 0xee, 0xf7, + 0x29, 0xfb, 0xa6, 0x6b, 0x3c, 0x00, 0x48, 0x2f, + 0x01, 0x00, 0x00, 0x2e, 0x10, 0xd0, 0x00, 0x2f, + 0x06, 0xd0, 0x2f, 0x20, 0x02, 0x5d, 0x20, 0x6a, + 0x41, 0x6b, 0x28, 0x1c, 0xed, 0xf7, 0x44, 0xfa, + 0xa0, 0x69, 0x00, 0x28, 0x01, 0xd0, 0xee, 0xf7, + 0x46, 0xfc, 0x20, 0x6a, 0xee, 0xf7, 0x43, 0xfc, + 0x20, 0x1c, 0xee, 0xf7, 0x40, 0xfc, 0x30, 0x1c, + 0xf8, 0xbd, 0xb0, 0xb5, 0x04, 0x1c, 0xc0, 0x6b, + 0x00, 0x28, 0x09, 0xd0, 0x20, 0x69, 0x3c, 0x00, + 0x84, 0x2f, 0x01, 0x00, 0x00, 0x8b, 0xee, 0xf7, + 0x55, 0xf9, 0x00, 0x28, 0x03, 0xd0, 0x21, 0x1c, + 0x06, 0x20, 0xff, 0xf7, 0xe3, 0xf9, 0x08, 0x4d, + 0x20, 0x1c, 0xa9, 0x6d, 0xff, 0xf7, 0xba, 0xff, + 0x00, 0x28, 0x07, 0xd0, 0xe8, 0x68, 0x01, 0x30, + 0xe8, 0x60, 0x28, 0x6a, 0x01, 0x38, 0x28, 0x62, + 0xfc, 0xf7, 0x78, 0xf8, 0xb0, 0xbd, 0x00, 0x00, + 0xc4, 0x69, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x4c, + 0x3c, 0x00, 0xc0, 0x2f, 0x01, 0x00, 0xe1, 0x6d, + 0xff, 0xf7, 0xa7, 0xff, 0x00, 0x28, 0x04, 0xd0, + 0xe0, 0x69, 0x01, 0x38, 0xe0, 0x61, 0xfc, 0xf7, + 0x68, 0xf8, 0x10, 0xbd, 0x00, 0x00, 0xc4, 0x69, + 0x01, 0x00, 0x0c, 0x23, 0x0c, 0x49, 0x58, 0x43, + 0x40, 0x18, 0x10, 0xb5, 0x44, 0x68, 0xa1, 0x68, + 0x00, 0x29, 0x02, 0xd0, 0x20, 0x1c, 0xed, 0xf7, + 0xf3, 0xf9, 0xe0, 0x6b, 0x00, 0x28, 0x08, 0xd0, + 0x20, 0x69, 0x3c, 0x00, 0xfc, 0x2f, 0x01, 0x00, + 0x00, 0x8b, 0xee, 0xf7, 0x19, 0xf9, 0x00, 0x28, + 0x02, 0xd0, 0x20, 0x1c, 0xf9, 0xf7, 0x26, 0xf9, + 0x10, 0xbd, 0x00, 0x00, 0x60, 0x7b, 0x01, 0x00, + 0xf8, 0xb5, 0x22, 0x49, 0x48, 0x68, 0x80, 0x00, + 0x06, 0xd4, 0x01, 0x20, 0x40, 0x07, 0x08, 0x60, + 0x4a, 0x69, 0x92, 0x00, 0x00, 0xd4, 0x48, 0x60, + 0x1d, 0x4f, 0x78, 0x7e, 0xc3, 0x06, 0x01, 0x20, + 0x02, 0x1c, 0xdb, 0x0e, 0x3c, 0x00, 0x38, 0x30, + 0x01, 0x00, 0x9a, 0x40, 0x0a, 0x60, 0x79, 0x69, + 0x8c, 0x68, 0x8c, 0x60, 0x21, 0x07, 0x89, 0x0f, + 0x09, 0xd0, 0x21, 0x07, 0x04, 0xd5, 0x0b, 0x21, + 0x9e, 0x20, 0xee, 0xf7, 0x28, 0xf9, 0x00, 0xe0, + 0x78, 0x64, 0x0c, 0x20, 0x84, 0x43, 0x12, 0x48, + 0x3d, 0x68, 0x06, 0x5d, 0x6c, 0x68, 0x2c, 0x34, + 0x06, 0xe0, 0xa0, 0x68, 0x00, 0x68, 0xa0, 0x60, + 0xe9, 0x68, 0x28, 0x1c, 0xed, 0xf7, 0x3c, 0x00, + 0x74, 0x30, 0x01, 0x00, 0xb2, 0xf9, 0x01, 0x3e, + 0xf6, 0xd2, 0xa0, 0x68, 0x80, 0x68, 0x00, 0x28, + 0x0d, 0xd0, 0x40, 0x89, 0x00, 0x28, 0x0a, 0xd0, + 0x78, 0x6c, 0x00, 0x28, 0x07, 0xd1, 0x78, 0x69, + 0x80, 0x68, 0x80, 0x07, 0x03, 0xd1, 0x0c, 0x21, + 0x9e, 0x20, 0xee, 0xf7, 0x03, 0xf9, 0xf8, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0xcc, 0x6d, 0x01, 0x00, + 0xb4, 0x44, 0x01, 0x00, 0x09, 0x49, 0x80, 0xb5, + 0x3c, 0x00, 0xb0, 0x30, 0x01, 0x00, 0x08, 0x7e, + 0xc2, 0x06, 0xd2, 0x0e, 0x01, 0x20, 0x90, 0x40, + 0x07, 0x4a, 0x10, 0x60, 0x00, 0x20, 0x0a, 0x69, + 0xc0, 0x43, 0x90, 0x60, 0x08, 0x68, 0x24, 0x31, + 0x06, 0xc9, 0x03, 0x69, 0xed, 0xf7, 0x86, 0xf9, + 0x80, 0xbd, 0xcc, 0x6d, 0x01, 0x00, 0x00, 0x10, + 0x07, 0x00, 0xf8, 0xb5, 0x44, 0x68, 0x06, 0x1c, + 0x2c, 0x34, 0x20, 0x68, 0x0d, 0x1c, 0x80, 0x68, + 0x00, 0x90, 0x3c, 0x00, 0xec, 0x30, 0x01, 0x00, + 0x00, 0x28, 0x00, 0xd0, 0xc5, 0x60, 0x20, 0x68, + 0x00, 0x68, 0x20, 0x60, 0x40, 0x68, 0x00, 0x28, + 0x03, 0xd0, 0x0a, 0x21, 0x9e, 0x20, 0xee, 0xf7, + 0xcf, 0xf8, 0x20, 0x68, 0x45, 0x60, 0x28, 0x1c, + 0x02, 0xe0, 0x00, 0x22, 0x42, 0x60, 0x08, 0x1c, + 0xc1, 0x68, 0x00, 0x29, 0xf9, 0xd1, 0x71, 0x68, + 0x60, 0x27, 0x0b, 0x1c, 0x40, 0x33, 0x9c, 0x46, + 0x9b, 0x78, 0xca, 0x7e, 0x3c, 0x00, 0x28, 0x31, + 0x01, 0x00, 0x5b, 0x01, 0x12, 0x07, 0x12, 0x0f, + 0x3b, 0x40, 0x1a, 0x43, 0x8b, 0x8f, 0xff, 0x27, + 0x3f, 0x04, 0x1b, 0x04, 0x3b, 0x40, 0x1a, 0x43, + 0x90, 0x23, 0x1a, 0x43, 0x42, 0x60, 0x63, 0x46, + 0x9a, 0x78, 0x01, 0x32, 0xd2, 0x07, 0xd2, 0x0f, + 0x9a, 0x70, 0x89, 0x6b, 0xc1, 0x60, 0x21, 0x68, + 0x88, 0x60, 0x00, 0x98, 0x00, 0x28, 0x01, 0xd0, + 0x00, 0x98, 0xc5, 0x60, 0x0a, 0x4f, 0x3c, 0x00, + 0x64, 0x31, 0x01, 0x00, 0xbd, 0x79, 0xa0, 0x69, + 0x00, 0x28, 0x0c, 0xd0, 0x00, 0x22, 0xa2, 0x61, + 0x74, 0x68, 0x60, 0x69, 0xef, 0xf7, 0x2e, 0xff, + 0xe0, 0x6a, 0x61, 0x69, 0x40, 0x68, 0x48, 0x60, + 0x61, 0x69, 0x01, 0x20, 0x08, 0x60, 0xbd, 0x71, + 0xf8, 0xbd, 0x00, 0x00, 0x20, 0x10, 0x07, 0x00, + 0xfe, 0xb5, 0x44, 0x68, 0x0f, 0x1c, 0x01, 0x94, + 0x2c, 0x34, 0x20, 0x1c, 0x12, 0x30, 0x02, 0x90, + 0x3c, 0x00, 0xa0, 0x31, 0x01, 0x00, 0x2c, 0xe0, + 0x0c, 0x20, 0xee, 0xf7, 0x00, 0xfb, 0x05, 0x1c, + 0x60, 0x68, 0x00, 0x28, 0x1d, 0xd1, 0x02, 0x98, + 0x00, 0x21, 0x00, 0x90, 0x00, 0x20, 0xee, 0xf7, + 0x0e, 0xfa, 0x06, 0x1c, 0x00, 0x98, 0x04, 0x21, + 0xee, 0xf7, 0x09, 0xfa, 0x01, 0x1c, 0x01, 0x98, + 0xc0, 0x7e, 0x00, 0x07, 0x00, 0x0f, 0xd0, 0x30, + 0x70, 0x60, 0x01, 0x98, 0xc0, 0x7e, 0x00, 0x07, + 0x00, 0x0f, 0x3c, 0x00, 0xdc, 0x31, 0x01, 0x00, + 0xf0, 0x30, 0x48, 0x60, 0x30, 0x1c, 0xee, 0xf7, + 0x19, 0xf9, 0x65, 0x60, 0xe6, 0x60, 0x01, 0xe0, + 0x20, 0x68, 0x05, 0x60, 0x60, 0x68, 0x28, 0x60, + 0x25, 0x60, 0x00, 0x20, 0x68, 0x60, 0xa8, 0x60, + 0x38, 0x1c, 0xff, 0x30, 0x00, 0x06, 0x00, 0x0e, + 0x39, 0x1c, 0x07, 0x1c, 0x00, 0x29, 0xca, 0xd1, + 0x60, 0x68, 0xa0, 0x60, 0xfe, 0xbd, 0x00, 0x00, + 0xff, 0xb5, 0x05, 0x1c, 0x3c, 0x00, 0x18, 0x32, + 0x01, 0x00, 0x08, 0x1c, 0x00, 0x26, 0x81, 0xb0, + 0xf4, 0xf7, 0x2f, 0xfe, 0x04, 0x1c, 0x02, 0xd0, + 0x60, 0x68, 0xff, 0x28, 0x01, 0xd1, 0x06, 0x26, + 0x28, 0xe0, 0x21, 0x1c, 0x20, 0x31, 0x0a, 0x78, + 0x01, 0x2a, 0x01, 0xd1, 0x03, 0x26, 0x21, 0xe0, + 0x01, 0x27, 0x25, 0x60, 0x0f, 0x70, 0x11, 0xc5, + 0x1d, 0x48, 0x08, 0x3d, 0x68, 0x61, 0x03, 0x98, + 0x6a, 0x46, 0xe8, 0x60, 0x04, 0x98, 0x3c, 0x00, + 0x54, 0x32, 0x01, 0x00, 0x28, 0x61, 0x1a, 0x48, + 0xa8, 0x61, 0x1a, 0x48, 0xe8, 0x61, 0x1a, 0x48, + 0x28, 0x62, 0x1a, 0x48, 0x68, 0x62, 0x20, 0x7e, + 0xa1, 0x68, 0xed, 0xf7, 0xb3, 0xfe, 0x00, 0x28, + 0x06, 0xd1, 0x60, 0x7e, 0xe1, 0x68, 0x6a, 0x46, + 0xed, 0xf7, 0xac, 0xfe, 0x00, 0x28, 0x07, 0xd0, + 0x04, 0x26, 0x31, 0x1c, 0x9e, 0x20, 0xee, 0xf7, + 0x0d, 0xf8, 0x30, 0x1c, 0x05, 0xb0, 0xf0, 0xbd, + 0x3c, 0x00, 0x90, 0x32, 0x01, 0x00, 0x6a, 0x46, + 0x0f, 0x49, 0x1d, 0x20, 0xed, 0xf7, 0x9d, 0xfe, + 0x01, 0x21, 0x0d, 0x48, 0x49, 0x07, 0x01, 0x60, + 0x22, 0x7e, 0x3b, 0x1c, 0xd2, 0x06, 0xd2, 0x0e, + 0x93, 0x40, 0x43, 0x60, 0x62, 0x7e, 0xd2, 0x06, + 0xd2, 0x0e, 0x97, 0x40, 0x47, 0x60, 0x41, 0x60, + 0xe6, 0xe7, 0x31, 0x33, 0x01, 0x00, 0xd9, 0x32, + 0x01, 0x00, 0x91, 0x31, 0x01, 0x00, 0xdd, 0x30, + 0x01, 0x00, 0x3c, 0x00, 0xcc, 0x32, 0x01, 0x00, + 0xfd, 0x32, 0x01, 0x00, 0x71, 0x33, 0x01, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x42, 0x68, 0x2c, 0x32, + 0x50, 0x68, 0x43, 0x68, 0x0b, 0x60, 0x81, 0x68, + 0x4b, 0x89, 0x0b, 0x81, 0x83, 0x68, 0x00, 0x21, + 0xd9, 0x60, 0x41, 0x60, 0x81, 0x60, 0x00, 0x68, + 0x50, 0x60, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, + 0x70, 0xb5, 0x42, 0x68, 0xff, 0x26, 0x91, 0x87, + 0x10, 0x6b, 0x0c, 0x04, 0x3c, 0x00, 0x08, 0x33, + 0x01, 0x00, 0x05, 0x1c, 0x36, 0x04, 0x34, 0x40, + 0x43, 0x68, 0x59, 0x68, 0xb1, 0x43, 0x21, 0x43, + 0x59, 0x60, 0x00, 0x68, 0xa8, 0x42, 0xf7, 0xd1, + 0x10, 0x6b, 0x51, 0x69, 0x40, 0x68, 0x48, 0x60, + 0x51, 0x69, 0x01, 0x20, 0x08, 0x60, 0x70, 0xbd, + 0x00, 0x00, 0xb0, 0xb5, 0x43, 0x68, 0x08, 0x1c, + 0x59, 0x62, 0x9a, 0x62, 0x00, 0x25, 0x0a, 0xe0, + 0x45, 0x81, 0xc4, 0x68, 0x2a, 0x1c, 0x3c, 0x00, + 0x44, 0x33, 0x01, 0x00, 0x00, 0x2c, 0x03, 0xd1, + 0x9a, 0x7e, 0x12, 0x07, 0x12, 0x0f, 0x10, 0x32, + 0x42, 0x60, 0x20, 0x1c, 0x00, 0x28, 0xf2, 0xd1, + 0x18, 0x69, 0x41, 0x60, 0x19, 0x69, 0x01, 0x20, + 0x08, 0x60, 0x02, 0x48, 0x00, 0x68, 0xed, 0xf7, + 0x37, 0xf8, 0xb0, 0xbd, 0x5c, 0x5b, 0x01, 0x00, + 0x01, 0x20, 0x05, 0x49, 0x40, 0x07, 0x80, 0xb5, + 0x88, 0x60, 0x04, 0x48, 0x01, 0x68, 0x0d, 0x20, + 0x3c, 0x00, 0x80, 0x33, 0x01, 0x00, 0xfe, 0xf7, + 0xe6, 0xff, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0xc4, 0x60, 0x01, 0x00, 0xf8, 0xb5, + 0x0e, 0x4f, 0x0c, 0x4e, 0x00, 0x24, 0x48, 0x20, + 0x60, 0x43, 0xc5, 0x19, 0x48, 0x21, 0x28, 0x1c, + 0xed, 0xf7, 0x7b, 0xf8, 0x1c, 0x20, 0x60, 0x43, + 0x81, 0x19, 0x28, 0x1d, 0x1c, 0x22, 0xed, 0xf7, + 0xfe, 0xf8, 0x1c, 0x23, 0xe8, 0x56, 0x05, 0x49, + 0xfb, 0xf7, 0x3c, 0x00, 0xbc, 0x33, 0x01, 0x00, + 0xcd, 0xf8, 0x01, 0x34, 0x01, 0x2c, 0xe9, 0xd3, + 0xf8, 0xbd, 0x00, 0x00, 0xb8, 0x44, 0x01, 0x00, + 0xcc, 0x6d, 0x01, 0x00, 0x15, 0x32, 0x01, 0x00, + 0xff, 0xb5, 0x05, 0x1c, 0x0a, 0x30, 0x06, 0x1c, + 0x81, 0xb0, 0xf2, 0xf7, 0xdd, 0xf8, 0x18, 0x4f, + 0x04, 0x1c, 0x39, 0x88, 0xef, 0xf7, 0xbc, 0xfc, + 0x32, 0x88, 0x78, 0x68, 0x02, 0x80, 0x72, 0x88, + 0x02, 0x30, 0x02, 0x80, 0x3c, 0x00, 0xf8, 0x33, + 0x01, 0x00, 0xb1, 0x88, 0x12, 0x4e, 0x41, 0x80, + 0x28, 0x88, 0x08, 0x36, 0x40, 0x05, 0x00, 0x28, + 0x05, 0xda, 0x69, 0x88, 0x03, 0x9a, 0x20, 0x1c, + 0xf7, 0xf7, 0x01, 0xfd, 0x00, 0xe0, 0x00, 0x20, + 0x70, 0x80, 0xf8, 0xf7, 0x5e, 0xfc, 0x01, 0x21, + 0x09, 0x03, 0x00, 0x28, 0x30, 0x88, 0x01, 0xd0, + 0x88, 0x43, 0x00, 0xe0, 0x08, 0x43, 0x30, 0x80, + 0x05, 0x48, 0x00, 0x22, 0x00, 0x21, 0x3c, 0x00, + 0x34, 0x34, 0x01, 0x00, 0x14, 0x30, 0xef, 0xf7, + 0x65, 0xfc, 0x20, 0x1c, 0xf9, 0xf7, 0x74, 0xf8, + 0x05, 0xb0, 0xf0, 0xbd, 0xb0, 0x7a, 0x01, 0x00, + 0x10, 0xb5, 0x0e, 0x4c, 0x60, 0x68, 0xf8, 0xf7, + 0x95, 0xf9, 0x20, 0x68, 0x00, 0x6a, 0x00, 0x28, + 0x13, 0xd1, 0xf8, 0xf7, 0xbf, 0xfc, 0x00, 0x28, + 0x08, 0xd0, 0x21, 0x68, 0x01, 0x20, 0x08, 0x62, + 0x1f, 0x21, 0x00, 0x22, 0x83, 0x20, 0x00, 0xf0, + 0x3c, 0x00, 0x70, 0x34, 0x01, 0x00, 0x9f, 0xf9, + 0x02, 0xe0, 0x60, 0x68, 0xf8, 0xf7, 0x21, 0xfa, + 0xff, 0xf7, 0x97, 0xfc, 0x21, 0x68, 0x08, 0x61, + 0x10, 0xbd, 0x14, 0x7a, 0x01, 0x00, 0xfe, 0xb5, + 0x1b, 0x4e, 0x0f, 0x1c, 0x1d, 0x1c, 0x14, 0x1c, + 0xb0, 0x60, 0x08, 0x1c, 0xf7, 0xf7, 0x2b, 0xff, + 0xb0, 0x80, 0x34, 0x73, 0x35, 0x62, 0x38, 0x1c, + 0x01, 0xaa, 0x02, 0xa9, 0xf7, 0xf7, 0x25, 0xff, + 0x00, 0xab, 0x3c, 0x00, 0xac, 0x34, 0x01, 0x00, + 0x18, 0x7a, 0x01, 0x28, 0x18, 0xd1, 0x18, 0x79, + 0x0b, 0x28, 0x08, 0xd1, 0x30, 0x7f, 0x24, 0x23, + 0x0f, 0x49, 0x58, 0x43, 0x40, 0x18, 0x80, 0x68, + 0xec, 0xf7, 0x88, 0xff, 0xfe, 0xbd, 0x00, 0xab, + 0x18, 0x79, 0x0a, 0x28, 0x08, 0xd1, 0xf7, 0xf7, + 0x39, 0xfd, 0x07, 0x1c, 0x29, 0x1c, 0x20, 0x1c, + 0xf7, 0xf7, 0x16, 0xfd, 0x38, 0x18, 0xb0, 0x80, + 0x30, 0x7f, 0x24, 0x23, 0x3c, 0x00, 0xe8, 0x34, + 0x01, 0x00, 0x04, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x40, 0x68, 0xec, 0xf7, 0x72, 0xff, 0xe8, 0xe7, + 0x00, 0x00, 0xd4, 0x79, 0x01, 0x00, 0x94, 0x46, + 0x01, 0x00, 0xb0, 0xb5, 0xff, 0xf7, 0x53, 0xfc, + 0x04, 0x1c, 0xfb, 0xf7, 0xfc, 0xfa, 0x0c, 0x4d, + 0x29, 0x68, 0x09, 0x69, 0x09, 0x1b, 0x0c, 0x1a, + 0x02, 0x21, 0x1f, 0x20, 0x00, 0xf0, 0x8b, 0xf8, + 0x14, 0x2c, 0x06, 0xdd, 0x02, 0x22, 0x3c, 0x00, + 0x24, 0x35, 0x01, 0x00, 0x21, 0x1c, 0x1f, 0x20, + 0x00, 0xf0, 0x50, 0xf8, 0x01, 0x20, 0xb0, 0xbd, + 0x29, 0x68, 0x01, 0x20, 0x89, 0x6a, 0x00, 0x29, + 0xf9, 0xd0, 0x00, 0x20, 0xb0, 0xbd, 0x00, 0x00, + 0x14, 0x7a, 0x01, 0x00, 0xf8, 0xb5, 0x1a, 0x4d, + 0x07, 0x1c, 0xae, 0x79, 0x01, 0x21, 0x19, 0x4c, + 0x00, 0x20, 0x22, 0x68, 0x00, 0x2a, 0x14, 0xd1, + 0xae, 0x71, 0xa2, 0x68, 0xd0, 0x68, 0x06, 0xca, + 0x3c, 0x00, 0x60, 0x35, 0x01, 0x00, 0xec, 0xf7, + 0x3c, 0xff, 0xae, 0x79, 0x00, 0x21, 0x13, 0x4a, + 0x50, 0x69, 0x01, 0x30, 0x50, 0x61, 0xa0, 0x68, + 0x80, 0x68, 0xa0, 0x60, 0x62, 0x68, 0x90, 0x42, + 0x06, 0xd1, 0x01, 0x20, 0x20, 0x60, 0x03, 0xe0, + 0x01, 0x30, 0x0c, 0x34, 0x03, 0x28, 0xe3, 0xdb, + 0x00, 0x2f, 0x08, 0xd1, 0x00, 0x29, 0x0a, 0xd0, + 0x0a, 0x48, 0x40, 0x68, 0x00, 0x28, 0x06, 0xd0, + 0xfa, 0xf7, 0x3c, 0x00, 0x9c, 0x35, 0x01, 0x00, + 0xf5, 0xff, 0x03, 0xe0, 0x01, 0x2f, 0x03, 0xd0, + 0x00, 0x29, 0x01, 0xd1, 0xae, 0x71, 0xce, 0xe7, + 0xae, 0x71, 0xf8, 0xbd, 0x20, 0x10, 0x07, 0x00, + 0x18, 0xd9, 0x01, 0x00, 0xa8, 0x60, 0x01, 0x00, + 0x70, 0x5d, 0x01, 0x00, 0x80, 0xb5, 0x01, 0x23, + 0xf5, 0xf7, 0x7c, 0xf8, 0x80, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0x00, 0x23, 0xf5, 0xf7, 0x76, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x35, + 0x01, 0x00, 0xf8, 0xb5, 0x13, 0x4b, 0x00, 0x24, + 0x1b, 0x88, 0x98, 0x42, 0x1b, 0xd2, 0x11, 0x4b, + 0xc0, 0x00, 0xc0, 0x18, 0x45, 0x68, 0x06, 0x68, + 0x28, 0x68, 0x00, 0x28, 0x17, 0xd1, 0x0e, 0x4f, + 0xa8, 0x68, 0x43, 0x68, 0xb3, 0x42, 0x09, 0xd1, + 0xc3, 0x68, 0x8b, 0x42, 0x06, 0xd1, 0x03, 0x68, + 0x93, 0x42, 0x01, 0xd0, 0x53, 0x1c, 0x01, 0xd1, + 0x01, 0x24, 0x47, 0x60, 0x80, 0x68, 0x3c, 0x00, + 0x14, 0x36, 0x01, 0x00, 0x6b, 0x68, 0x83, 0x42, + 0xee, 0xd1, 0x03, 0xe0, 0x01, 0x21, 0x80, 0x20, + 0xed, 0xf7, 0x40, 0xfe, 0x20, 0x1c, 0xf8, 0xbd, + 0x56, 0x57, 0x01, 0x00, 0x84, 0x5d, 0x01, 0x00, + 0x29, 0xe3, 0x00, 0x00, 0xf8, 0xb5, 0x17, 0x4f, + 0x0a, 0x1c, 0xbe, 0x79, 0x16, 0x4d, 0x00, 0x23, + 0x6c, 0x68, 0x07, 0xe0, 0x21, 0x68, 0x91, 0x42, + 0x02, 0xd1, 0x21, 0x79, 0x81, 0x42, 0x04, 0xd0, + 0x3c, 0x00, 0x50, 0x36, 0x01, 0x00, 0x23, 0x1c, + 0xe4, 0x68, 0x00, 0x2c, 0xf5, 0xd1, 0x17, 0xe0, + 0x00, 0x2c, 0x15, 0xd0, 0x00, 0x2b, 0x0d, 0xd1, + 0xe3, 0x68, 0x0d, 0x48, 0x6b, 0x60, 0x00, 0x88, + 0x00, 0x2b, 0x02, 0xd1, 0xff, 0xf7, 0xd1, 0xfb, + 0x06, 0xe0, 0x0a, 0x4a, 0x99, 0x68, 0xff, 0xf7, + 0xf6, 0xfb, 0x01, 0xe0, 0xe0, 0x68, 0xd8, 0x60, + 0x28, 0x68, 0xe0, 0x60, 0x2c, 0x60, 0x02, 0xe0, + 0x01, 0x21, 0x3c, 0x00, 0x8c, 0x36, 0x01, 0x00, + 0xff, 0xf7, 0xa4, 0xff, 0xbe, 0x71, 0xf8, 0xbd, + 0x20, 0x10, 0x07, 0x00, 0x7c, 0x5d, 0x01, 0x00, + 0x2c, 0x74, 0x01, 0x00, 0x21, 0x38, 0x01, 0x00, + 0x70, 0xb5, 0x09, 0x4e, 0xb5, 0x79, 0xf9, 0xf7, + 0xaf, 0xfe, 0x04, 0x1c, 0x09, 0xd0, 0x20, 0x1c, + 0xed, 0xf7, 0x0c, 0xfb, 0x05, 0x49, 0x8a, 0x68, + 0x80, 0x18, 0x88, 0x60, 0x08, 0x68, 0x01, 0x30, + 0x08, 0x60, 0xb5, 0x71, 0x3c, 0x00, 0xc8, 0x36, + 0x01, 0x00, 0x20, 0x1c, 0x70, 0xbd, 0x20, 0x10, + 0x07, 0x00, 0xa8, 0x60, 0x01, 0x00, 0x09, 0x48, + 0x80, 0xb5, 0x40, 0x68, 0x02, 0x1c, 0x0b, 0xe0, + 0x01, 0x69, 0x00, 0x29, 0x07, 0xd0, 0x82, 0x42, + 0x04, 0xd0, 0x81, 0x68, 0x05, 0x48, 0x00, 0x88, + 0xff, 0xf7, 0xe5, 0xfa, 0x80, 0xbd, 0xc0, 0x68, + 0x00, 0x28, 0xf1, 0xd1, 0x80, 0xbd, 0x7c, 0x5d, + 0x01, 0x00, 0x2c, 0x74, 0x01, 0x00, 0x3c, 0x00, + 0x04, 0x37, 0x01, 0x00, 0x05, 0x48, 0x80, 0xb5, + 0x42, 0x68, 0x00, 0x2a, 0x04, 0xd0, 0x04, 0x48, + 0x00, 0x88, 0x91, 0x68, 0xff, 0xf7, 0xd2, 0xfa, + 0x80, 0xbd, 0x00, 0x00, 0x7c, 0x5d, 0x01, 0x00, + 0x2c, 0x74, 0x01, 0x00, 0x05, 0x48, 0x01, 0x68, + 0x00, 0x29, 0x04, 0xd0, 0xc0, 0x68, 0x00, 0x28, + 0x01, 0xd0, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x00, 0x18, 0xd9, 0x01, 0x00, + 0x3c, 0x00, 0x40, 0x37, 0x01, 0x00, 0x80, 0xb5, + 0xf6, 0xf7, 0xd1, 0xfa, 0x80, 0xbd, 0x13, 0x1c, + 0x0d, 0x4a, 0xb0, 0xb5, 0x12, 0x88, 0x90, 0x42, + 0x0f, 0xd2, 0x03, 0x29, 0x0d, 0xd2, 0x0a, 0x4a, + 0xc0, 0x00, 0x14, 0x58, 0x0a, 0x4d, 0xac, 0x42, + 0x07, 0xd1, 0x13, 0x50, 0x0c, 0x23, 0x59, 0x43, + 0x08, 0x4b, 0xc9, 0x18, 0x80, 0x18, 0x41, 0x60, + 0xb0, 0xbd, 0x02, 0x21, 0x80, 0x20, 0xed, 0xf7, + 0x94, 0xfd, 0x3c, 0x00, 0x7c, 0x37, 0x01, 0x00, + 0xb0, 0xbd, 0x00, 0x00, 0x56, 0x57, 0x01, 0x00, + 0x84, 0x5d, 0x01, 0x00, 0x09, 0xa0, 0x00, 0x00, + 0x18, 0xd9, 0x01, 0x00, 0xf8, 0xb5, 0x0f, 0x1c, + 0x1e, 0x1c, 0x15, 0x1c, 0x04, 0x1c, 0x11, 0x1c, + 0xff, 0xf7, 0x4a, 0xff, 0x33, 0x1c, 0x2a, 0x1c, + 0x39, 0x1c, 0x20, 0x1c, 0xf4, 0xf7, 0x8a, 0xff, + 0xf8, 0xbd, 0x00, 0x00, 0xf7, 0xb5, 0x94, 0x46, + 0xff, 0x29, 0x21, 0xd0, 0x3c, 0x00, 0xb8, 0x37, + 0x01, 0x00, 0x15, 0x48, 0x00, 0x88, 0x81, 0x42, + 0x21, 0xd2, 0x14, 0x4a, 0x15, 0x4e, 0xc8, 0x00, + 0x85, 0x18, 0xb4, 0x79, 0x68, 0x68, 0x02, 0x68, + 0x00, 0x2a, 0x03, 0xd1, 0x03, 0x1d, 0x0c, 0xcb, + 0x9a, 0x42, 0x11, 0xd0, 0x43, 0x68, 0x9a, 0x68, + 0x42, 0x60, 0x0e, 0x4a, 0x17, 0x69, 0x01, 0x37, + 0x17, 0x61, 0xb4, 0x71, 0x00, 0x22, 0x02, 0x60, + 0x00, 0x98, 0xd8, 0x60, 0x60, 0x46, 0x3c, 0x00, + 0xf4, 0x37, 0x01, 0x00, 0x18, 0x60, 0x19, 0x74, + 0x28, 0x68, 0x58, 0x60, 0xfe, 0xbd, 0xb4, 0x71, + 0x06, 0x21, 0x00, 0xe0, 0x07, 0x21, 0x80, 0x20, + 0xed, 0xf7, 0x4c, 0xfd, 0xf6, 0xe7, 0x00, 0x00, + 0x56, 0x57, 0x01, 0x00, 0x84, 0x5d, 0x01, 0x00, + 0x20, 0x10, 0x07, 0x00, 0xa8, 0x60, 0x01, 0x00, + 0xb0, 0xb5, 0x14, 0x4d, 0x6c, 0x68, 0x00, 0x2c, + 0x01, 0xd0, 0x84, 0x42, 0x04, 0xd0, 0x0c, 0x21, + 0x3c, 0x00, 0x30, 0x38, 0x01, 0x00, 0x80, 0x20, + 0xed, 0xf7, 0x37, 0xfd, 0xb0, 0xbd, 0xff, 0xf7, + 0xb8, 0xfa, 0xa1, 0x68, 0x40, 0x1a, 0x0d, 0x49, + 0x88, 0x42, 0x03, 0xda, 0x10, 0x21, 0x80, 0x20, + 0xed, 0xf7, 0x2b, 0xfd, 0x21, 0x79, 0x22, 0x68, + 0x01, 0x20, 0xff, 0xf7, 0xac, 0xff, 0xe3, 0x68, + 0x6b, 0x60, 0x00, 0x2b, 0x05, 0xd0, 0x07, 0x48, + 0x06, 0x4a, 0x00, 0x88, 0x99, 0x68, 0xff, 0xf7, + 0xfe, 0xfa, 0x3c, 0x00, 0x6c, 0x38, 0x01, 0x00, + 0x28, 0x68, 0xe0, 0x60, 0x2c, 0x60, 0xb0, 0xbd, + 0x7c, 0x5d, 0x01, 0x00, 0x18, 0xfc, 0xff, 0xff, + 0x21, 0x38, 0x01, 0x00, 0x2c, 0x74, 0x01, 0x00, + 0xb0, 0xb5, 0x15, 0x4c, 0x08, 0x20, 0x21, 0x1c, + 0x80, 0x31, 0x08, 0x70, 0x13, 0x4a, 0x41, 0x04, + 0x11, 0x60, 0x13, 0x48, 0x00, 0x68, 0x13, 0x4d, + 0x6b, 0x69, 0x18, 0x40, 0x01, 0xd1, 0x10, 0x20, + 0x00, 0xe0, 0x00, 0x20, 0x3c, 0x00, 0xa8, 0x38, + 0x01, 0x00, 0xa8, 0x23, 0x5b, 0x5d, 0x18, 0x43, + 0x23, 0x1c, 0x40, 0x33, 0x18, 0x73, 0x51, 0x60, + 0x20, 0x78, 0x80, 0x08, 0x80, 0x00, 0x20, 0x70, + 0x00, 0x20, 0xff, 0xf7, 0x12, 0xfb, 0xff, 0xf7, + 0x72, 0xfa, 0x64, 0x30, 0x28, 0x66, 0x01, 0x38, + 0xa0, 0x61, 0x20, 0x78, 0x03, 0x21, 0x08, 0x43, + 0x20, 0x70, 0xb0, 0xbd, 0x00, 0x00, 0x00, 0x90, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0x3c, 0x00, + 0xe4, 0x38, 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, + 0xa4, 0x6c, 0x01, 0x00, 0x38, 0xb5, 0x0a, 0x4c, + 0x21, 0x1c, 0x20, 0x31, 0x8a, 0x79, 0x00, 0xab, + 0x1a, 0x70, 0xc9, 0x79, 0x07, 0x4d, 0x59, 0x70, + 0x69, 0x78, 0x88, 0x42, 0x03, 0xd1, 0xf8, 0xf7, + 0x13, 0xfc, 0xff, 0x20, 0x68, 0x70, 0x00, 0xab, + 0x18, 0x88, 0xe0, 0x84, 0x38, 0xbd, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x4c, 0x7b, 0x01, 0x00, + 0x3c, 0x00, 0x20, 0x39, 0x01, 0x00, 0xf8, 0xb5, + 0x0b, 0x1c, 0x06, 0x1c, 0x04, 0x1d, 0x7f, 0x33, + 0x14, 0xd0, 0x33, 0x68, 0x5d, 0x18, 0x35, 0x60, + 0x23, 0x88, 0x1f, 0x18, 0x06, 0x23, 0xff, 0x56, + 0xeb, 0x1b, 0x33, 0x60, 0x23, 0x88, 0x18, 0x18, + 0x81, 0x71, 0x20, 0x88, 0x01, 0x30, 0x00, 0x04, + 0x00, 0x0c, 0x20, 0x80, 0x90, 0x42, 0x01, 0xd3, + 0x00, 0x20, 0x20, 0x80, 0x10, 0x1c, 0x31, 0x68, + 0xec, 0xf7, 0x3c, 0x00, 0x5c, 0x39, 0x01, 0x00, + 0x6d, 0xfe, 0xf8, 0xbd, 0x0e, 0x49, 0x0a, 0x7c, + 0x83, 0x78, 0x1a, 0x43, 0x0a, 0x74, 0x42, 0x78, + 0x83, 0x78, 0x9a, 0x43, 0x0b, 0x7c, 0x93, 0x43, + 0x0b, 0x74, 0x8a, 0x7c, 0x43, 0x78, 0x1a, 0x43, + 0x8a, 0x74, 0x8a, 0x7c, 0x03, 0x78, 0x9a, 0x43, + 0x8a, 0x74, 0x02, 0x78, 0x43, 0x78, 0x1a, 0x43, + 0x4b, 0x7c, 0x1a, 0x43, 0x4a, 0x74, 0x4a, 0x7c, + 0xc0, 0x78, 0x82, 0x43, 0x3c, 0x00, 0x98, 0x39, + 0x01, 0x00, 0x4a, 0x74, 0x70, 0x47, 0x10, 0x00, + 0x07, 0x00, 0xb0, 0xb5, 0x06, 0x4d, 0x00, 0x24, + 0x20, 0x06, 0x00, 0x0e, 0xed, 0xf7, 0xf7, 0xf8, + 0xa1, 0x00, 0x69, 0x58, 0x08, 0x71, 0x01, 0x34, + 0x04, 0x2c, 0xf5, 0xdb, 0xb0, 0xbd, 0x10, 0x7b, + 0x01, 0x00, 0x0b, 0x48, 0x0c, 0x49, 0x7d, 0x23, + 0x42, 0x69, 0xdb, 0x00, 0x00, 0x2a, 0xc8, 0x6b, + 0x07, 0xd0, 0xc0, 0x18, 0x1a, 0x01, 0x3c, 0x00, + 0xd4, 0x39, 0x01, 0x00, 0x90, 0x42, 0xc8, 0x63, + 0x01, 0xd9, 0x07, 0x48, 0xc8, 0x63, 0x70, 0x47, + 0xff, 0x38, 0xf5, 0x38, 0xc8, 0x63, 0x98, 0x42, + 0xf9, 0xd2, 0xcb, 0x63, 0x70, 0x47, 0x00, 0x00, + 0xf4, 0x68, 0x01, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0x70, 0x17, 0x00, 0x00, 0x70, 0xb5, 0x0d, 0x1c, + 0x04, 0x1c, 0x16, 0x1c, 0xfb, 0xf7, 0xf6, 0xfa, + 0xb0, 0x43, 0x28, 0x43, 0x01, 0x1c, 0x20, 0x1c, + 0x3c, 0x00, 0x10, 0x3a, 0x01, 0x00, 0x00, 0xf0, + 0xcc, 0xfa, 0x70, 0xbd, 0x00, 0x00, 0x80, 0xb5, + 0x0b, 0x4a, 0x00, 0x29, 0x09, 0xd0, 0x02, 0x29, + 0x0f, 0xd1, 0x01, 0x1c, 0x08, 0x48, 0xd2, 0x78, + 0x38, 0x30, 0xff, 0xf7, 0x78, 0xff, 0x06, 0x49, + 0x06, 0xe0, 0x01, 0x1c, 0x04, 0x48, 0x12, 0x79, + 0x20, 0x30, 0xff, 0xf7, 0x70, 0xff, 0x03, 0x49, + 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, 0xac, 0x7c, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x3a, 0x01, 0x00, + 0xc8, 0x67, 0x01, 0x00, 0xc4, 0x67, 0x01, 0x00, + 0x80, 0xb5, 0x0b, 0x4a, 0x00, 0x29, 0x09, 0xd0, + 0x02, 0x29, 0x0f, 0xd1, 0x01, 0x1c, 0x08, 0x48, + 0x52, 0x79, 0x68, 0x30, 0xff, 0xf7, 0x5a, 0xff, + 0x06, 0x49, 0x06, 0xe0, 0x01, 0x1c, 0x04, 0x48, + 0x92, 0x79, 0x50, 0x30, 0xff, 0xf7, 0x52, 0xff, + 0x03, 0x49, 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, + 0xac, 0x7c, 0x01, 0x00, 0x3c, 0x00, 0x88, 0x3a, + 0x01, 0x00, 0xd0, 0x67, 0x01, 0x00, 0xcc, 0x67, + 0x01, 0x00, 0x08, 0xb5, 0x04, 0x21, 0x00, 0x91, + 0x81, 0x7e, 0x43, 0x68, 0x03, 0x29, 0x06, 0xd1, + 0x01, 0x1c, 0x0c, 0x31, 0x01, 0x20, 0x6a, 0x46, + 0xec, 0xf7, 0x9a, 0xfc, 0x08, 0xbd, 0x19, 0x68, + 0xc1, 0x60, 0xfb, 0xe7, 0x00, 0x00, 0x10, 0xb5, + 0x03, 0x1c, 0x00, 0x20, 0x08, 0x4c, 0x00, 0x21, + 0xca, 0x00, 0x12, 0x19, 0x92, 0x78, 0x3c, 0x00, + 0xc4, 0x3a, 0x01, 0x00, 0x9a, 0x42, 0x03, 0xd1, + 0xc8, 0x00, 0x00, 0x19, 0x40, 0x68, 0x10, 0xbd, + 0x01, 0x31, 0x09, 0x06, 0x09, 0x16, 0x06, 0x29, + 0xf1, 0xdb, 0x10, 0xbd, 0xcc, 0x5a, 0x01, 0x00, + 0xf8, 0xb5, 0x0f, 0x1c, 0x16, 0x1c, 0x00, 0x25, + 0xfe, 0xf7, 0x8e, 0xf9, 0x04, 0x1c, 0x0a, 0xd0, + 0x4a, 0x20, 0x00, 0x5d, 0x05, 0x28, 0x06, 0xd1, + 0x38, 0x1c, 0xf1, 0xf7, 0x81, 0xfe, 0x00, 0x28, + 0x3c, 0x00, 0x00, 0x3b, 0x01, 0x00, 0x01, 0xd0, + 0x01, 0x25, 0x34, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x70, 0xb5, 0x0d, 0x1c, 0x16, 0x1c, + 0x00, 0x24, 0xfe, 0xf7, 0x78, 0xf9, 0x00, 0x28, + 0x0b, 0xd0, 0x4a, 0x21, 0x09, 0x5c, 0x05, 0x29, + 0x07, 0xd1, 0x01, 0x69, 0x00, 0x29, 0x04, 0xd1, + 0x30, 0x60, 0xf1, 0xf7, 0x04, 0xfd, 0x01, 0x24, + 0x28, 0x60, 0x20, 0x1c, 0x70, 0xbd, 0xf8, 0xb5, + 0x06, 0x1c, 0x3c, 0x00, 0x3c, 0x3b, 0x01, 0x00, + 0x00, 0x25, 0x0c, 0x1c, 0x08, 0x1c, 0xf1, 0xf7, + 0x5d, 0xfe, 0x00, 0x28, 0x01, 0xd0, 0x00, 0x21, + 0x05, 0xe0, 0x20, 0x1c, 0xf1, 0xf7, 0x74, 0xfe, + 0x00, 0x28, 0x14, 0xd0, 0x01, 0x21, 0x30, 0x1c, + 0xf4, 0xf7, 0x80, 0xfb, 0x00, 0x90, 0x00, 0x28, + 0x0d, 0xd0, 0x08, 0x4f, 0x01, 0x25, 0x06, 0x22, + 0x31, 0x1c, 0x38, 0x1c, 0xec, 0xf7, 0xc2, 0xfc, + 0x06, 0x22, 0x21, 0x1c, 0x3c, 0x00, 0x78, 0x3b, + 0x01, 0x00, 0xb8, 0x18, 0xec, 0xf7, 0xbd, 0xfc, + 0x00, 0x98, 0xf8, 0x60, 0x28, 0x1c, 0xf8, 0xbd, + 0x00, 0x00, 0x70, 0x7c, 0x01, 0x00, 0x00, 0x21, + 0x00, 0x28, 0x06, 0xd0, 0x42, 0x78, 0x07, 0x2a, + 0x03, 0xd1, 0xc0, 0x79, 0x01, 0x28, 0x00, 0xd1, + 0x01, 0x21, 0x08, 0x1c, 0x70, 0x47, 0xf8, 0xb5, + 0x05, 0x1c, 0x00, 0x27, 0x16, 0x4e, 0xf1, 0xf7, + 0x28, 0xfe, 0x00, 0x28, 0x07, 0xd0, 0x3c, 0x00, + 0xb4, 0x3b, 0x01, 0x00, 0xf1, 0xf7, 0xc0, 0xfb, + 0x00, 0x28, 0x10, 0xd1, 0x00, 0x24, 0xf1, 0xf7, + 0xbb, 0xfc, 0x06, 0xe0, 0xf1, 0xf7, 0x02, 0xfe, + 0x00, 0x28, 0x08, 0xd0, 0x01, 0x24, 0xf1, 0xf7, + 0x99, 0xfd, 0x01, 0x1c, 0x06, 0x22, 0x30, 0x1c, + 0xec, 0xf7, 0x8e, 0xfc, 0x01, 0x27, 0x00, 0x2f, + 0x0d, 0xd0, 0x21, 0x1c, 0x28, 0x1c, 0xf4, 0xf7, + 0x3b, 0xfb, 0x01, 0x1c, 0x05, 0x48, 0x06, 0x22, + 0x3c, 0x00, 0xf0, 0x3b, 0x01, 0x00, 0x06, 0x38, + 0xc1, 0x60, 0x29, 0x1c, 0xec, 0xf7, 0x7f, 0xfc, + 0x01, 0x20, 0xf8, 0xbd, 0x00, 0x20, 0xfc, 0xe7, + 0x00, 0x00, 0x76, 0x7c, 0x01, 0x00, 0xf0, 0xb5, + 0x07, 0x1c, 0x00, 0x68, 0x02, 0x21, 0x04, 0x68, + 0x78, 0x69, 0x87, 0xb0, 0x01, 0x40, 0x00, 0x25, + 0x00, 0x29, 0x05, 0x91, 0x74, 0x4e, 0x12, 0xd0, + 0x22, 0x88, 0x01, 0x21, 0x13, 0x05, 0x02, 0xd4, + 0xc0, 0x07, 0x3c, 0x00, 0x2c, 0x3c, 0x01, 0x00, + 0xc1, 0x17, 0x01, 0x31, 0x6f, 0x48, 0x00, 0x29, + 0x00, 0x68, 0x01, 0xd0, 0x01, 0x30, 0x04, 0xe0, + 0x11, 0x06, 0x89, 0x0e, 0x2d, 0x29, 0x01, 0xd1, + 0x03, 0x30, 0x30, 0x60, 0x20, 0x88, 0x80, 0x07, + 0x67, 0xd1, 0x78, 0x69, 0xc0, 0x07, 0x64, 0xd5, + 0x03, 0xaa, 0x04, 0xa9, 0x20, 0x1c, 0xf7, 0xf7, + 0x4b, 0xfb, 0x00, 0xab, 0x18, 0x7c, 0x00, 0x28, + 0x07, 0xd0, 0x18, 0x7c, 0x3c, 0x00, 0x68, 0x3c, + 0x01, 0x00, 0x02, 0x28, 0x58, 0xd1, 0x18, 0x7b, + 0x40, 0x07, 0x40, 0x0f, 0x04, 0x28, 0x53, 0xd8, + 0x20, 0x79, 0x05, 0x99, 0xc0, 0x07, 0xc0, 0x17, + 0x01, 0x30, 0x02, 0x90, 0x00, 0x29, 0x02, 0xd1, + 0x02, 0x98, 0x00, 0x28, 0x48, 0xd1, 0x05, 0x99, + 0x00, 0x29, 0x04, 0xd0, 0x20, 0x88, 0x00, 0x05, + 0x01, 0xd4, 0x00, 0x20, 0x30, 0x60, 0xc0, 0x20, + 0xed, 0xf7, 0xcb, 0xfd, 0x05, 0x1c, 0x3c, 0x00, + 0xa4, 0x3c, 0x01, 0x00, 0x20, 0x1c, 0x0a, 0x30, + 0x06, 0x90, 0xfe, 0xf7, 0xad, 0xf8, 0x06, 0x1c, + 0x28, 0x1c, 0x08, 0x30, 0x23, 0x88, 0x02, 0x1d, + 0x11, 0x1d, 0xdb, 0x05, 0x06, 0xd5, 0x06, 0x9b, + 0x03, 0x60, 0x20, 0x1c, 0x10, 0x30, 0x10, 0x60, + 0x20, 0x1d, 0x0e, 0xe0, 0x23, 0x1d, 0x13, 0x60, + 0x22, 0x88, 0x92, 0x05, 0x05, 0xd5, 0x22, 0x1c, + 0x10, 0x32, 0x02, 0x60, 0x06, 0x9b, 0x0b, 0x60, + 0x3c, 0x00, 0xe0, 0x3c, 0x01, 0x00, 0x04, 0xe0, + 0x06, 0x9b, 0x03, 0x60, 0x20, 0x1c, 0x10, 0x30, + 0x08, 0x60, 0x28, 0x69, 0xf1, 0xf7, 0x43, 0xfc, + 0x00, 0x28, 0x08, 0xd0, 0x01, 0x28, 0x12, 0xd0, + 0x02, 0x28, 0x58, 0xd1, 0x00, 0xab, 0x18, 0x7c, + 0x00, 0x28, 0x54, 0xd1, 0x12, 0xe0, 0x00, 0xab, + 0x18, 0x7c, 0x02, 0x28, 0x0b, 0xd1, 0x00, 0x2e, + 0x4d, 0xd0, 0x4b, 0x20, 0x80, 0x5d, 0x02, 0x28, + 0x49, 0xd1, 0x3c, 0x00, 0x1c, 0x3d, 0x01, 0x00, + 0x07, 0xe0, 0x63, 0xe0, 0x00, 0xab, 0x18, 0x7c, + 0x00, 0x28, 0x02, 0xd1, 0x38, 0x1c, 0xfe, 0xf7, + 0x1b, 0xff, 0x20, 0x88, 0x41, 0x04, 0x30, 0x48, + 0x11, 0xd5, 0x00, 0x2e, 0x52, 0xd0, 0x00, 0xab, + 0x19, 0x7c, 0x00, 0x29, 0x26, 0xd0, 0x02, 0x99, + 0x00, 0x29, 0x02, 0xd0, 0xb0, 0x6a, 0x00, 0x78, + 0x00, 0xe0, 0x00, 0x78, 0x01, 0x28, 0x1d, 0xd0, + 0x03, 0x28, 0x43, 0xd1, 0x3c, 0x00, 0x58, 0x3d, + 0x01, 0x00, 0x1a, 0xe0, 0x00, 0xab, 0x19, 0x7c, + 0x02, 0x29, 0x16, 0xd1, 0x19, 0x7b, 0x04, 0x29, + 0x13, 0xd0, 0x19, 0x7b, 0x0c, 0x29, 0x10, 0xd0, + 0x22, 0x49, 0x09, 0x68, 0x00, 0x29, 0x0c, 0xd0, + 0x00, 0x2e, 0x0a, 0xd0, 0x02, 0x99, 0x00, 0x29, + 0x02, 0xd0, 0xb0, 0x6a, 0x00, 0x78, 0x00, 0xe0, + 0x00, 0x78, 0x01, 0x28, 0x29, 0xd0, 0x03, 0x28, + 0x27, 0xd0, 0x28, 0x22, 0x39, 0x1c, 0x3c, 0x00, + 0x94, 0x3d, 0x01, 0x00, 0x28, 0x1c, 0x88, 0x30, + 0xec, 0xf7, 0x0a, 0xfc, 0x00, 0xab, 0x19, 0x7c, + 0x28, 0x1c, 0x80, 0x30, 0x01, 0x71, 0x19, 0x7b, + 0x41, 0x71, 0x6c, 0x60, 0x6e, 0x61, 0x1b, 0xe0, + 0x05, 0x99, 0x00, 0x29, 0x14, 0xd0, 0x11, 0x48, + 0x84, 0x6c, 0x00, 0x2c, 0x10, 0xd0, 0x00, 0x22, + 0x00, 0x2e, 0x04, 0xd0, 0x40, 0x36, 0xb0, 0x7a, + 0x05, 0x28, 0x00, 0xd1, 0x01, 0x22, 0x00, 0x92, + 0x3c, 0x00, 0xd0, 0x3d, 0x01, 0x00, 0xf8, 0x7a, + 0xba, 0x7a, 0x29, 0x69, 0xc3, 0x07, 0xdb, 0x0f, + 0x06, 0x98, 0xec, 0xf7, 0x00, 0xfb, 0x28, 0x1c, + 0xed, 0xf7, 0x07, 0xfd, 0x00, 0x25, 0x28, 0x1c, + 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0xc4, 0x6a, + 0x01, 0x00, 0x68, 0x61, 0x01, 0x00, 0x28, 0x61, + 0x01, 0x00, 0xc4, 0x69, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x20, 0xff, 0xf7, 0x70, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x3e, 0x01, 0x00, + 0xb0, 0xb5, 0x1d, 0x4d, 0x01, 0x28, 0x17, 0xd0, + 0xa2, 0x28, 0x06, 0xd0, 0xa3, 0x28, 0x03, 0xd1, + 0x01, 0x21, 0x15, 0x20, 0xff, 0xf7, 0x08, 0xfc, + 0xb0, 0xbd, 0x00, 0x29, 0x01, 0xd1, 0x17, 0x48, + 0x02, 0xe0, 0x7d, 0x20, 0xc0, 0x00, 0x48, 0x43, + 0x00, 0x23, 0x01, 0x22, 0x01, 0x1c, 0x28, 0x60, + 0x15, 0x20, 0xff, 0xf7, 0xa7, 0xfc, 0xb0, 0xbd, + 0x01, 0x29, 0x04, 0xd0, 0x3c, 0x00, 0x48, 0x3e, + 0x01, 0x00, 0x02, 0x29, 0xfa, 0xd1, 0x00, 0xf0, + 0x2a, 0xf8, 0xb0, 0xbd, 0x6c, 0x68, 0xf5, 0xf7, + 0xde, 0xfc, 0xfe, 0xf7, 0xa8, 0xff, 0x68, 0x60, + 0x00, 0x2c, 0x09, 0xd0, 0x29, 0x68, 0x0a, 0x23, + 0x59, 0x43, 0x00, 0x1b, 0x88, 0x42, 0x03, 0xd9, + 0x01, 0x21, 0x15, 0x20, 0xed, 0xf7, 0x17, 0xfa, + 0x01, 0x22, 0x15, 0x20, 0x29, 0x68, 0xff, 0xf7, + 0xa6, 0xfb, 0xb0, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x3e, 0x01, 0x00, 0x04, 0x79, 0x01, 0x00, + 0x00, 0x87, 0x93, 0x03, 0x01, 0x20, 0x04, 0x49, + 0x40, 0x03, 0x80, 0xb5, 0x08, 0x60, 0x03, 0x21, + 0x15, 0x20, 0xed, 0xf7, 0x03, 0xfa, 0x80, 0xbd, + 0x00, 0x10, 0x07, 0x00, 0x07, 0x48, 0x80, 0xb5, + 0xbe, 0x21, 0x01, 0x73, 0x01, 0x7a, 0x10, 0x22, + 0x11, 0x43, 0x01, 0x72, 0x00, 0x23, 0x02, 0x22, + 0x15, 0x20, 0x03, 0x49, 0xff, 0xf7, 0x68, 0xfc, + 0x3c, 0x00, 0xc0, 0x3e, 0x01, 0x00, 0x80, 0xbd, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x00, 0x80, 0x9f, + 0xd5, 0x00, 0x80, 0xb5, 0x00, 0x28, 0x03, 0xd0, + 0x0a, 0x1c, 0x15, 0x21, 0xa2, 0x20, 0x02, 0xe0, + 0x00, 0x22, 0x15, 0x21, 0xa3, 0x20, 0xff, 0xf7, + 0x66, 0xfc, 0x80, 0xbd, 0x00, 0x00, 0x10, 0xb5, + 0x00, 0xf0, 0x19, 0xf8, 0x0a, 0x48, 0xbe, 0x21, + 0x01, 0x73, 0x03, 0x7a, 0x10, 0x22, 0x93, 0x43, + 0x01, 0x24, 0x3c, 0x00, 0xfc, 0x3e, 0x01, 0x00, + 0x23, 0x43, 0x03, 0x72, 0x01, 0x73, 0x01, 0x7a, + 0x91, 0x43, 0x20, 0x22, 0x11, 0x43, 0x01, 0x72, + 0x02, 0x22, 0x15, 0x20, 0x02, 0x49, 0xff, 0xf7, + 0x5b, 0xfb, 0x10, 0xbd, 0x00, 0x03, 0x07, 0x00, + 0x80, 0x9f, 0xd5, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x15, 0x20, 0xff, 0xf7, 0x85, 0xfb, 0x04, 0x48, + 0xbe, 0x21, 0x01, 0x73, 0x01, 0x7a, 0x11, 0x22, + 0x91, 0x43, 0x01, 0x72, 0x3c, 0x00, 0x38, 0x3f, + 0x01, 0x00, 0x80, 0xbd, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x00, 0xf8, 0xb5, 0x06, 0x1c, 0x05, 0x1c, + 0x60, 0x36, 0x00, 0x27, 0x44, 0x68, 0x22, 0xe0, + 0x08, 0x21, 0x00, 0x20, 0xed, 0xf7, 0x41, 0xfb, + 0x60, 0x61, 0x01, 0x89, 0x04, 0x39, 0x09, 0x04, + 0x09, 0x0c, 0x01, 0x81, 0x60, 0x69, 0x00, 0x68, + 0x40, 0x18, 0x04, 0x21, 0xed, 0xf7, 0x35, 0xfb, + 0xe0, 0x61, 0x60, 0x69, 0x71, 0x7b, 0x3c, 0x00, + 0x74, 0x3f, 0x01, 0x00, 0x00, 0x68, 0x89, 0x01, + 0xc1, 0x70, 0x29, 0x69, 0x0c, 0x31, 0x03, 0x22, + 0xec, 0xf7, 0xba, 0xfa, 0x28, 0x69, 0x0c, 0x30, + 0x01, 0x68, 0x01, 0x31, 0x01, 0x60, 0x25, 0x62, + 0xa7, 0x61, 0x24, 0x68, 0x00, 0x2c, 0xda, 0xd1, + 0x02, 0x49, 0x03, 0x48, 0x6a, 0x68, 0xf6, 0xf7, + 0xb3, 0xf8, 0xf8, 0xbd, 0xfd, 0x6b, 0x00, 0x00, + 0xa0, 0x6a, 0x01, 0x00, 0x80, 0xb5, 0x00, 0x07, + 0x3c, 0x00, 0xb0, 0x3f, 0x01, 0x00, 0x00, 0x09, + 0x09, 0x02, 0x09, 0x0a, 0x08, 0x43, 0x02, 0x49, + 0x08, 0x60, 0xff, 0xf7, 0x20, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x60, 0x00, 0x07, 0x00, 0x08, 0x00, + 0x14, 0x00, 0xc8, 0x00, 0x00, 0x00, 0xe8, 0x03, + 0x00, 0x00, 0x10, 0x00, 0x14, 0x00, 0xc8, 0x00, + 0x00, 0x00, 0xe8, 0x03, 0x00, 0x00, 0x1c, 0x00, + 0x14, 0x00, 0xc8, 0x00, 0x00, 0x00, 0xe8, 0x03, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x3f, 0x01, 0x00, + 0x24, 0x01, 0x07, 0x00, 0x32, 0x00, 0x00, 0x00, + 0xe8, 0x03, 0x00, 0x00, 0x40, 0x06, 0x01, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x41, 0x6e, 0x62, 0x69, 0x7e, 0x64, 0x61, 0x6f, + 0x6f, 0x00, 0x00, 0x00, 0x52, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x20, 0x36, 0x5f, 0x37, 0x5f, + 0x31, 0x35, 0x20, 0x42, 0x75, 0x69, 0x6c, 0x64, + 0x20, 0x32, 0x3a, 0x35, 0x3c, 0x00, 0x28, 0x40, + 0x01, 0x00, 0x32, 0x39, 0x38, 0x20, 0x53, 0x65, + 0x70, 0x20, 0x30, 0x34, 0x20, 0x32, 0x30, 0x30, + 0x39, 0x20, 0x31, 0x37, 0x3a, 0x31, 0x33, 0x3a, + 0x32, 0x30, 0x20, 0x28, 0x48, 0x57, 0x3d, 0x34, + 0x3a, 0x33, 0x2c, 0x42, 0x54, 0x43, 0x4f, 0x45, + 0x58, 0x29, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, + 0x1c, 0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x00, + 0x64, 0x40, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xe8, 0x03, 0x70, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0xd0, 0x07, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x7c, 0x15, 0x15, 0x00, + 0x3c, 0x00, 0xa0, 0x40, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x70, 0x17, + 0x1e, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, + 0x00, 0x00, 0x28, 0x23, 0x16, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0xf8, 0x2a, + 0x0b, 0x00, 0x3c, 0x00, 0xdc, 0x40, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, + 0xe0, 0x2e, 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x00, 0x00, 0x00, 0x50, 0x46, 0x0e, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, + 0xf0, 0x55, 0x08, 0x00, 0x3c, 0x00, 0x18, 0x41, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2c, 0x00, + 0x00, 0x00, 0xc0, 0x5d, 0x0e, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0xe8, 0x80, + 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x42, 0x00, + 0x00, 0x00, 0xa0, 0x8c, 0x0a, 0x00, 0x3c, 0x00, + 0x54, 0x41, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x48, 0x00, 0x00, 0x00, 0x80, 0xbb, 0x0a, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, + 0xf0, 0xd2, 0x0a, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x6c, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x90, 0x00, + 0x3c, 0x00, 0x90, 0x41, 0x01, 0x00, 0xc0, 0x00, + 0x90, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x14, 0x00, + 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, 0xc0, 0x00, + 0x90, 0x00, 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, + 0x10, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x14, 0x00, + 0x10, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x14, 0x00, + 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, + 0x10, 0x00, 0xc0, 0x00, 0x90, 0x00, 0x60, 0x00, + 0x48, 0x00, 0x3c, 0x00, 0xcc, 0x41, 0x01, 0x00, + 0x60, 0x00, 0x48, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x14, 0x00, 0x10, 0x00, 0x60, 0x00, 0x48, 0x00, + 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x60, 0x00, 0x48, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x60, 0x00, 0x48, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x14, 0x00, 0x10, 0x00, 0x14, 0x00, 0x10, 0x00, + 0x02, 0x00, 0x04, 0x01, 0x0b, 0x02, 0x0c, 0x03, + 0x12, 0x04, 0x16, 0x05, 0x3c, 0x00, 0x08, 0x42, + 0x01, 0x00, 0x18, 0x06, 0x00, 0x0e, 0x00, 0x0e, + 0x24, 0x07, 0x00, 0x0e, 0x2c, 0x08, 0x30, 0x09, + 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x42, 0x0a, + 0x00, 0x0e, 0x48, 0x0b, 0x00, 0x0e, 0x00, 0x0e, + 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x60, 0x0c, + 0x00, 0x0e, 0x00, 0x0e, 0x6c, 0x0d, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0xc0, 0xff, 0xff, 0xff, 0x3c, 0x00, + 0x44, 0x42, 0x01, 0x00, 0xb6, 0xff, 0xff, 0xff, + 0xd3, 0xff, 0xff, 0xff, 0xc9, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x51, 0xb0, 0x00, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x51, 0xb0, 0x00, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x59, 0xaf, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x42, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xa5, 0xaf, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x4d, 0xaf, 0x00, 0x00, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x45, 0xb0, 0x00, 0x00, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xd5, 0xaf, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xad, 0xb0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x42, 0x01, 0x00, + 0x95, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x95, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x99, 0xb0, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x42, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x17, + 0x01, 0x00, 0x35, 0x17, 0x01, 0x00, 0x21, 0x17, + 0x01, 0x00, 0xd9, 0x9c, 0x00, 0x00, 0x49, 0x17, + 0x01, 0x00, 0x3d, 0x17, 0x01, 0x00, 0xd1, 0x9c, + 0x00, 0x00, 0xd1, 0x9c, 0x00, 0x00, 0x1d, 0x1a, + 0x01, 0x00, 0xd1, 0x9c, 0x00, 0x00, 0x01, 0x1a, + 0x01, 0x00, 0x31, 0x1a, 0x01, 0x00, 0x25, 0x1a, + 0x01, 0x00, 0x3d, 0x17, 0x01, 0x00, 0x3c, 0x00, + 0x34, 0x43, 0x01, 0x00, 0x81, 0x1a, 0x01, 0x00, + 0xd1, 0x9c, 0x00, 0x00, 0x79, 0x17, 0x01, 0x00, + 0xd9, 0x9c, 0x00, 0x00, 0x5d, 0x17, 0x01, 0x00, + 0xa1, 0x17, 0x01, 0x00, 0x95, 0x17, 0x01, 0x00, + 0x81, 0x17, 0x01, 0x00, 0x21, 0x18, 0x01, 0x00, + 0xf5, 0x17, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x10, 0x00, 0x08, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x43, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x19, 0x1c, + 0x01, 0x00, 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x85, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x85, 0x41, + 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, 0x85, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x35, 0x1b, + 0x01, 0x00, 0x3c, 0x00, 0xac, 0x43, 0x01, 0x00, + 0x9d, 0x1b, 0x01, 0x00, 0x01, 0x1c, 0x01, 0x00, + 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, + 0x89, 0x41, 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, + 0x65, 0x18, 0x01, 0x00, 0x29, 0x18, 0x01, 0x00, + 0x39, 0x18, 0x01, 0x00, 0xbd, 0x18, 0x01, 0x00, + 0x89, 0x41, 0x00, 0x00, 0x4d, 0x18, 0x01, 0x00, + 0xa5, 0x18, 0x01, 0x00, 0x85, 0x41, 0x00, 0x00, + 0x01, 0x19, 0x01, 0x00, 0x3c, 0x00, 0xe8, 0x43, + 0x01, 0x00, 0xd9, 0x18, 0x01, 0x00, 0xed, 0x18, + 0x01, 0x00, 0x15, 0x19, 0x01, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x85, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0x89, 0x41, 0x00, 0x00, 0x69, 0x1c, + 0x01, 0x00, 0x89, 0x41, 0x00, 0x00, 0x71, 0x1c, + 0x01, 0x00, 0x89, 0x41, 0x00, 0x00, 0x89, 0x41, + 0x00, 0x00, 0xfd, 0xdb, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x44, 0x01, 0x00, 0x1d, 0x7c, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x00, 0xf5, 0xda, 0x00, 0x00, + 0x14, 0x00, 0x81, 0x00, 0xfd, 0xdd, 0x00, 0x00, + 0x08, 0x00, 0x82, 0x00, 0xc5, 0xdd, 0x00, 0x00, + 0x38, 0x00, 0x83, 0x00, 0x45, 0xdc, 0x00, 0x00, + 0x10, 0x00, 0x84, 0x00, 0x99, 0xdc, 0x00, 0x00, + 0x0c, 0x00, 0x86, 0x00, 0x39, 0xdc, 0x00, 0x00, + 0x10, 0x00, 0x88, 0x00, 0x11, 0xde, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x44, 0x01, 0x00, 0x10, 0x00, + 0x8a, 0x00, 0x35, 0xdd, 0x00, 0x00, 0x0c, 0x00, + 0x8c, 0x00, 0xad, 0xdf, 0x00, 0x00, 0x1c, 0x00, + 0x8e, 0x00, 0xc9, 0xde, 0x00, 0x00, 0x38, 0x00, + 0x8f, 0x00, 0xed, 0xdc, 0x00, 0x00, 0x38, 0x00, + 0x90, 0x00, 0x75, 0xdf, 0x00, 0x00, 0x0c, 0x00, + 0x91, 0x00, 0x8d, 0xdc, 0x00, 0x00, 0x0c, 0x00, + 0x93, 0x00, 0xb9, 0xdd, 0x00, 0x00, 0x0c, 0x00, + 0x94, 0x00, 0x3c, 0x00, 0x9c, 0x44, 0x01, 0x00, + 0x00, 0x08, 0x08, 0x08, 0x10, 0x0c, 0x0c, 0x0c, + 0x08, 0x0c, 0x08, 0x0c, 0x08, 0x0c, 0x08, 0x08, + 0x08, 0x08, 0x14, 0x08, 0x08, 0x14, 0x00, 0x30, + 0x00, 0x01, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, + 0xad, 0x30, 0x01, 0x00, 0x15, 0x30, 0x01, 0x00, + 0x20, 0x30, 0x07, 0x00, 0x30, 0x30, 0x07, 0x00, + 0x06, 0x07, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x44, + 0x01, 0x00, 0xff, 0xff, 0xff, 0x00, 0xff, 0xff, + 0xff, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc9, 0x02, 0x00, 0x94, 0x3f, + 0x03, 0x00, 0xe0, 0x8b, 0x5a, 0x00, 0x05, 0x3a, + 0x85, 0x00, 0xc8, 0xf2, 0x06, 0x00, 0xf8, 0x4c, + 0x56, 0x00, 0x20, 0xa7, 0x3d, 0x00, 0xb7, 0x4a, + 0x00, 0x00, 0xb7, 0x4a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x45, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, + 0x02, 0x02, 0x03, 0x03, 0x03, 0x04, 0x04, 0x04, + 0x05, 0x06, 0x00, 0x00, 0x2d, 0x7c, 0x00, 0x00, + 0x00, 0x00, 0xff, 0x00, 0xfd, 0x95, 0x00, 0x00, + 0x08, 0x00, 0xff, 0x00, 0xed, 0x97, 0x00, 0x00, + 0x08, 0x00, 0x82, 0x00, 0xcd, 0x95, 0x00, 0x00, + 0x0c, 0x00, 0x83, 0x00, 0x4d, 0x96, 0x00, 0x00, + 0x0c, 0x00, 0x85, 0x00, 0x2d, 0x7c, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x45, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x3d, 0x96, 0x00, 0x00, 0x0c, 0x00, + 0x89, 0x00, 0xd9, 0x97, 0x00, 0x00, 0x08, 0x00, + 0x8a, 0x00, 0x91, 0x95, 0x00, 0x00, 0x08, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0x00, 0x3c, 0x00, 0x8c, 0x45, 0x01, 0x00, + 0xf9, 0x97, 0x00, 0x00, 0x08, 0x00, 0x8d, 0x00, + 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, + 0x2d, 0x7c, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, + 0xc9, 0x97, 0x00, 0x00, 0x30, 0x00, 0x90, 0x00, + 0x11, 0x95, 0x00, 0x00, 0x18, 0x00, 0x91, 0x00, + 0x15, 0x96, 0x00, 0x00, 0x08, 0x00, 0x92, 0x00, + 0x59, 0x95, 0x00, 0x00, 0x3c, 0x00, 0x93, 0x00, + 0x29, 0x96, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x45, + 0x01, 0x00, 0x08, 0x00, 0x94, 0x00, 0xa1, 0x95, + 0x00, 0x00, 0x08, 0x00, 0x95, 0x00, 0x81, 0x97, + 0x00, 0x00, 0x0c, 0x00, 0x96, 0x00, 0x6d, 0x97, + 0x00, 0x00, 0x10, 0x00, 0x98, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x10, + 0x08, 0x00, 0x00, 0x08, 0x00, 0x10, 0x3c, 0x00, + 0x04, 0x46, 0x01, 0x00, 0x08, 0x0c, 0x0c, 0x0c, + 0x0c, 0x1c, 0x0c, 0x0c, 0x08, 0x00, 0x00, 0x00, + 0x0d, 0x8b, 0x00, 0x00, 0xf5, 0x8a, 0x00, 0x00, + 0xe9, 0x8a, 0x00, 0x00, 0x01, 0x8b, 0x00, 0x00, + 0x14, 0x08, 0x0c, 0x0c, 0x10, 0x0c, 0x00, 0x00, + 0xb1, 0x98, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, + 0x19, 0x99, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, + 0x3d, 0x7c, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x46, 0x01, 0x00, 0x3d, 0x99, + 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, 0x09, 0x99, + 0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x3d, 0x7c, + 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x01, + 0x04, 0x04, 0x08, 0x08, 0x81, 0x37, 0x80, 0xf3, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0xaa, 0xaa, + 0x03, 0x00, 0x00, 0xf8, 0x6d, 0xa9, 0x6d, 0xa9, + 0x6e, 0xa9, 0x3c, 0x00, 0x7c, 0x46, 0x01, 0x00, + 0x6e, 0xa8, 0x6e, 0xa8, 0x6e, 0xa8, 0x6f, 0xa7, + 0x6f, 0xa7, 0x6f, 0xa7, 0x6f, 0xa6, 0x6f, 0xa6, + 0x70, 0xa6, 0x70, 0xa5, 0x70, 0xa4, 0x00, 0x00, + 0xb5, 0x1b, 0x01, 0x00, 0xc9, 0x1b, 0x01, 0x00, + 0xe1, 0x1b, 0x01, 0x00, 0xe5, 0x9c, 0x00, 0x00, + 0xa5, 0x1b, 0x01, 0x00, 0xe5, 0x9c, 0x00, 0x00, + 0x89, 0x1b, 0x01, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x46, + 0x01, 0x00, 0xd1, 0x1a, 0x01, 0x00, 0xe5, 0x1a, + 0x01, 0x00, 0x05, 0x1b, 0x01, 0x00, 0x25, 0x1b, + 0x01, 0x00, 0xb1, 0x1a, 0x01, 0x00, 0xe5, 0x9c, + 0x00, 0x00, 0x9d, 0x1a, 0x01, 0x00, 0xd5, 0x9c, + 0x00, 0x00, 0xc1, 0x1a, 0x01, 0x00, 0x89, 0x19, + 0x01, 0x00, 0xa9, 0x19, 0x01, 0x00, 0xc9, 0x19, + 0x01, 0x00, 0xf1, 0x19, 0x01, 0x00, 0x79, 0x19, + 0x01, 0x00, 0xe5, 0x9c, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x46, 0x01, 0x00, 0x65, 0x19, 0x01, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0x55, 0x1c, 0x01, 0x00, + 0x45, 0x1c, 0x01, 0x00, 0x45, 0x1c, 0x01, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0xd5, 0x9c, 0x00, 0x00, 0xd5, 0x9c, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x47, 0x01, 0x00, 0xd5, 0x9c, + 0x00, 0x00, 0x55, 0x19, 0x01, 0x00, 0xe5, 0x9c, + 0x00, 0x00, 0x41, 0x19, 0x01, 0x00, 0x31, 0x19, + 0x01, 0x00, 0xd5, 0x9c, 0x00, 0x00, 0x02, 0x05, + 0x0a, 0x00, 0x00, 0x00, 0x02, 0x04, 0x0a, 0x00, + 0x00, 0x00, 0xc5, 0x20, 0x00, 0x00, 0x21, 0x21, + 0x00, 0x00, 0x25, 0x21, 0x00, 0x00, 0x39, 0x21, + 0x00, 0x00, 0x49, 0x21, 0x00, 0x00, 0x55, 0x21, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x47, 0x01, 0x00, + 0x61, 0x21, 0x00, 0x00, 0xed, 0x21, 0x00, 0x00, + 0x0d, 0x22, 0x00, 0x00, 0x21, 0x22, 0x00, 0x00, + 0x3d, 0x22, 0x00, 0x00, 0x49, 0x22, 0x00, 0x00, + 0xc5, 0x22, 0x00, 0x00, 0xe1, 0x22, 0x00, 0x00, + 0xf5, 0x22, 0x00, 0x00, 0xe9, 0x1f, 0x00, 0x00, + 0xe9, 0x1f, 0x00, 0x00, 0xe9, 0x1f, 0x00, 0x00, + 0xe9, 0x1f, 0x00, 0x00, 0xe9, 0x1f, 0x00, 0x00, + 0x11, 0x23, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x47, + 0x01, 0x00, 0x1d, 0x23, 0x00, 0x00, 0x89, 0x23, + 0x00, 0x00, 0xa5, 0x23, 0x00, 0x00, 0xb9, 0x23, + 0x00, 0x00, 0x11, 0x20, 0x00, 0x00, 0x1d, 0x20, + 0x00, 0x00, 0x6d, 0x20, 0x00, 0x00, 0x8d, 0x20, + 0x00, 0x00, 0xb9, 0x20, 0x00, 0x00, 0x00, 0x01, + 0x02, 0x03, 0x03, 0x05, 0x06, 0x06, 0x08, 0x09, + 0x08, 0x09, 0x09, 0x09, 0xc4, 0x80, 0xca, 0x80, + 0x80, 0x80, 0x80, 0x80, 0xd0, 0x80, 0x3c, 0x00, + 0xe4, 0x47, 0x01, 0x00, 0xd6, 0xd9, 0xdc, 0xdf, + 0xe2, 0x80, 0x80, 0x80, 0xe5, 0xe8, 0x80, 0x80, + 0x80, 0x80, 0xeb, 0xee, 0xf1, 0xf4, 0xf7, 0xfa, + 0xfd, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, + 0x04, 0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, + 0x08, 0x00, 0x09, 0x00, 0x0a, 0x00, 0x0b, 0x00, + 0x0c, 0x00, 0x0e, 0x00, 0x10, 0x00, 0x11, 0x00, + 0x13, 0x00, 0x16, 0x00, 0x18, 0x00, 0x1b, 0x00, + 0x3c, 0x00, 0x20, 0x48, 0x01, 0x00, 0x1e, 0x00, + 0x22, 0x00, 0x26, 0x00, 0x2b, 0x00, 0x30, 0x00, + 0x36, 0x00, 0x3c, 0x00, 0x44, 0x00, 0x4c, 0x00, + 0x55, 0x00, 0x5f, 0x00, 0x6b, 0x00, 0x78, 0x00, + 0x86, 0x00, 0x97, 0x00, 0xa9, 0x00, 0xbe, 0x00, + 0xd5, 0x00, 0xef, 0x00, 0xff, 0x7f, 0x0c, 0x00, + 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0xfe, 0xff, + 0xfc, 0xff, 0xfb, 0xff, 0xfa, 0xff, 0xf9, 0xff, + 0xf8, 0xff, 0x3c, 0x00, 0x5c, 0x48, 0x01, 0x00, + 0xf7, 0xff, 0xf6, 0xff, 0xf5, 0xff, 0xf4, 0xff, + 0xf3, 0xff, 0xf2, 0xff, 0xf1, 0xff, 0xf0, 0xff, + 0xef, 0xff, 0xee, 0xff, 0xed, 0xff, 0xec, 0xff, + 0xeb, 0xff, 0xea, 0xff, 0xe9, 0xff, 0xe8, 0xff, + 0xe7, 0xff, 0xe6, 0xff, 0xe5, 0xff, 0xe4, 0xff, + 0xe3, 0xff, 0xe2, 0xff, 0xe1, 0xff, 0xe0, 0xff, + 0xdf, 0xff, 0xde, 0xff, 0xdd, 0xff, 0xdc, 0xff, + 0xdc, 0xff, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x48, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xb1, 0x7c, 0x41, 0x00, 0x11, 0x5a, + 0x40, 0xe2, 0xb2, 0x7c, 0x41, 0x00, 0x05, 0x5a, + 0x40, 0xe2, 0xaf, 0x7c, 0x41, 0x00, 0xf9, 0x59, + 0x40, 0xe2, 0xb0, 0x7c, 0x41, 0x00, 0xed, 0x59, + 0x40, 0xe2, 0x24, 0x67, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x5c, 0x67, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x0a, 0x61, 0x01, 0x00, 0x3c, 0x00, + 0xd4, 0x48, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x0e, 0x61, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x32, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x6a, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x0b, 0x61, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x0f, 0x61, 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, + 0x40, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x78, 0x67, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0x3c, 0x00, 0x10, 0x49, 0x01, 0x00, 0x0c, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0x10, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0x4e, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x86, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x0d, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0x11, 0x61, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe3, 0xc0, 0x48, + 0x01, 0x00, 0x04, 0x00, 0x00, 0x0a, 0xe0, 0x48, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x49, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x00, 0x49, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x20, 0x49, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x18, 0x67, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x28, 0x75, 0x01, 0x01, + 0x7d, 0xa9, 0x40, 0xe2, 0x2c, 0x75, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x20, 0x75, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x44, 0x75, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x88, 0x49, + 0x01, 0x00, 0xf0, 0x59, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x24, 0x75, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0xb8, 0x7c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x8d, 0xa9, 0x00, 0x00, 0x01, 0x00, + 0x00, 0xda, 0x1d, 0x75, 0x01, 0x00, 0x01, 0x00, + 0x00, 0xe2, 0xc4, 0x67, 0x01, 0x00, 0x3c, 0x00, + 0xc4, 0x49, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x59, 0x00, 0x00, 0x0e, 0x00, 0x00, 0xd9, + 0xc8, 0x67, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xcc, 0x67, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xd0, 0x67, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x65, 0xd9, 0x00, 0x00, 0x04, 0x00, 0x00, 0xda, + 0xa5, 0xd9, 0x00, 0x00, 0x04, 0x00, 0x00, 0xda, + 0x3c, 0x00, 0x00, 0x4a, 0x01, 0x00, 0x01, 0x59, + 0x00, 0x00, 0x01, 0x00, 0x00, 0xda, 0x32, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x6a, 0x67, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, 0x11, 0x59, + 0x00, 0x00, 0x01, 0x00, 0x00, 0xda, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x48, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0xa0, 0x48, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x40, 0x49, + 0x01, 0x00, 0x3c, 0x00, 0x3c, 0x4a, 0x01, 0x00, + 0x05, 0x00, 0x00, 0x0a, 0x68, 0x49, 0x01, 0x00, + 0x09, 0x00, 0x00, 0x0a, 0x6c, 0x57, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x38, 0x61, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xac, 0x6e, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0xb0, 0x6e, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x70, 0x57, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x78, 0x4a, + 0x01, 0x00, 0xe8, 0x59, 0x01, 0x00, 0x08, 0x00, + 0x00, 0xe3, 0xdc, 0x58, 0x01, 0x14, 0x4d, 0xfd, + 0x40, 0xe3, 0x2c, 0x59, 0x01, 0x14, 0x39, 0xfd, + 0x40, 0xe3, 0xc0, 0x58, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x64, 0x73, 0x41, 0x00, 0x3d, 0x2e, + 0x44, 0xe2, 0x7c, 0x59, 0x01, 0x14, 0x3c, 0x00, + 0xb4, 0x4a, 0x01, 0x00, 0x9d, 0x2f, 0x44, 0xe3, + 0x5c, 0x57, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe2, + 0x79, 0x2e, 0x04, 0x00, 0x01, 0x00, 0x00, 0xdb, + 0xa0, 0x58, 0x01, 0x00, 0x02, 0x00, 0x00, 0xe3, + 0xa2, 0x58, 0x01, 0x00, 0x02, 0x00, 0x00, 0xe3, + 0xa0, 0x57, 0x01, 0x00, 0x0e, 0x00, 0x00, 0xe3, + 0xd1, 0x88, 0x01, 0x00, 0x01, 0x00, 0x00, 0xda, + 0x1d, 0x89, 0x01, 0x00, 0x04, 0x00, 0x00, 0xda, + 0x3c, 0x00, 0xf0, 0x4a, 0x01, 0x00, 0x95, 0x88, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xdb, 0x31, 0x2f, + 0x04, 0x00, 0x0e, 0x00, 0x00, 0xd9, 0xc5, 0x2e, + 0x04, 0x00, 0x0e, 0x00, 0x00, 0xd9, 0x68, 0x6c, + 0x01, 0x01, 0x15, 0xd5, 0x40, 0xe2, 0xc0, 0x57, + 0x01, 0x00, 0x08, 0x00, 0x00, 0xe3, 0xc8, 0x57, + 0x01, 0x00, 0x34, 0x00, 0x00, 0xe3, 0x9c, 0x6c, + 0x01, 0x00, 0x08, 0x00, 0x00, 0xe3, 0xb0, 0x58, + 0x01, 0x03, 0x3c, 0x00, 0x2c, 0x4b, 0x01, 0x00, + 0xe9, 0xd4, 0x40, 0xe2, 0xbc, 0x58, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x9d, 0xa3, 0x00, 0x00, + 0x60, 0x00, 0x00, 0xd9, 0x70, 0x79, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x78, 0x79, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x7c, 0x5a, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x5d, 0x1c, 0x00, 0x00, + 0x11, 0x00, 0x00, 0xd9, 0x24, 0x6e, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x68, 0x4b, + 0x01, 0x00, 0x18, 0x58, 0x01, 0x05, 0xd5, 0xd5, + 0x40, 0xe3, 0xfc, 0x57, 0x01, 0x00, 0x14, 0x00, + 0x00, 0xe3, 0x04, 0x8e, 0x01, 0x03, 0xe5, 0xd5, + 0x40, 0xe3, 0x00, 0x5b, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x18, 0x5b, 0x01, 0x00, 0x40, 0x00, + 0x00, 0xe2, 0xd4, 0x67, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x8d, 0x37, 0x00, 0x00, 0x04, 0x00, + 0x00, 0xdb, 0xbd, 0x36, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x4b, 0x01, 0x00, 0x04, 0x00, 0x00, 0xdb, + 0xfc, 0x60, 0x01, 0x00, 0x02, 0x00, 0x00, 0xe2, + 0x90, 0x7d, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x70, 0x69, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xb0, 0x49, 0x01, 0x00, 0x1a, 0x00, 0x00, 0x0a, + 0x90, 0x4b, 0x01, 0x00, 0x06, 0x00, 0x00, 0x0a, + 0xa4, 0x58, 0x81, 0x00, 0x05, 0xfd, 0x40, 0xe3, + 0x3c, 0x00, 0xe0, 0x4b, 0x01, 0x00, 0x80, 0x4a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0x0a, 0x0c, 0x5a, + 0x81, 0x01, 0x25, 0x2d, 0x44, 0xe3, 0xe0, 0x4a, + 0x01, 0x00, 0x03, 0x00, 0x00, 0x0a, 0x18, 0x63, + 0x41, 0x00, 0xfd, 0xbb, 0x40, 0xe2, 0x08, 0x57, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe2, 0x9c, 0x48, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x4a, + 0x01, 0x00, 0x3c, 0x00, 0x1c, 0x4c, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x0a, 0xcc, 0x74, 0x01, 0x00, + 0x03, 0x00, 0x00, 0xe3, 0x65, 0x73, 0x41, 0x00, + 0xa9, 0x2e, 0x44, 0xe2, 0xf6, 0x59, 0x01, 0x01, + 0xd1, 0x2c, 0x44, 0xe3, 0x08, 0x4b, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x0a, 0x07, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x6a, 0x28, 0x4b, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x0a, 0x88, 0x7d, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x58, 0x4c, + 0x01, 0x00, 0x00, 0x75, 0x01, 0x04, 0x65, 0x6f, + 0x40, 0xe3, 0xbc, 0x78, 0x01, 0x00, 0x0e, 0x00, + 0x00, 0xe3, 0x38, 0x4b, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x0a, 0x04, 0x57, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x62, 0x58, 0x4b, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x80, 0x4b, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x68, 0x4b, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x8c, 0x7d, 0x01, 0x00, 0x3c, 0x00, + 0x94, 0x4c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x39, 0x2d, 0x04, 0x00, 0x04, 0x00, 0x00, 0xdb, + 0x94, 0x7d, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x40, 0x01, 0x00, 0x00, 0x00, 0x00, 0x64, + 0xa8, 0x4c, 0x01, 0x00, 0x04, 0x00, 0x00, 0x0a, + 0x3c, 0x00, 0xd0, 0x4c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x4c, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x0a, 0xd0, 0x4c, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x7a, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe2, 0xe8, 0x7a, + 0x01, 0x00, 0x01, 0x00, 0x00, 0xe2, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0x7a, + 0x01, 0x00, 0x3c, 0x00, 0x0c, 0x4d, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0xee, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf3, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0xf4, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf9, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0xfa, 0x7a, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe2, 0x3c, 0x00, 0x48, 0x4d, + 0x01, 0x00, 0xe8, 0x4c, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x00, 0x4d, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x18, 0x4d, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x30, 0x4d, 0x01, 0x00, 0x03, 0x00, + 0x00, 0x0a, 0x90, 0x5c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x94, 0x5c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x98, 0x5c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x9c, 0x5c, 0x01, 0x00, 0x3c, 0x00, + 0x84, 0x4d, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xa0, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xa4, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xa8, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xac, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xb0, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xb4, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0xb8, 0x5c, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x3c, 0x00, 0xc0, 0x4d, 0x01, 0x00, 0xbc, 0x5c, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0xc0, 0x5c, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0xc4, 0x5c, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0x90, 0x5c, + 0x01, 0x00, 0x38, 0x00, 0x00, 0xe3, 0x68, 0x4d, + 0x01, 0x00, 0x0e, 0x00, 0x00, 0x0a, 0xd8, 0x4d, + 0x01, 0x00, 0x02, 0x00, 0x00, 0xfa, 0x12, 0x61, + 0x81, 0x01, 0x31, 0xd5, 0x40, 0xe3, 0x06, 0x61, + 0x01, 0x00, 0x3c, 0x00, 0xfc, 0x4d, 0x01, 0x00, + 0x02, 0x00, 0x00, 0xe2, 0x0b, 0x61, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe3, 0x0f, 0x61, 0x01, 0x00, + 0x01, 0x00, 0x00, 0xe3, 0x08, 0x61, 0x01, 0x00, + 0x02, 0x00, 0x00, 0xe2, 0x50, 0x7b, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0x01, 0x00, + 0x0e, 0x00, 0x00, 0x64, 0x9c, 0x57, 0x01, 0x01, + 0x91, 0x88, 0x41, 0xe3, 0x3c, 0x00, 0x38, 0x4e, + 0x01, 0x00, 0x6e, 0x41, 0x67, 0x6f, 0xe2, 0x65, + 0x60, 0x69, 0x6f, 0x20, 0x41, 0x42, 0x00, 0x00, + 0x00, 0x00, 0xf0, 0x4d, 0x01, 0x00, 0x09, 0x00, + 0x00, 0x0a, 0x48, 0x4e, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x0a, 0xe8, 0x4d, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x48, 0x4d, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x0a, 0x28, 0x61, 0x01, 0x01, 0x3c, 0x00, + 0x74, 0x4e, 0x01, 0x00, 0xbd, 0xd5, 0x40, 0xe2, + 0x69, 0x61, 0x41, 0x00, 0x85, 0xd5, 0x40, 0xe2, + 0x30, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x34, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x3c, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x34, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x44, 0x61, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x3c, 0x00, 0xb0, 0x4e, 0x01, 0x00, 0x70, 0x4e, + 0x01, 0x00, 0x08, 0x00, 0x00, 0x0a, 0x18, 0x61, + 0x01, 0x00, 0x02, 0x00, 0x00, 0xe2, 0x1c, 0x61, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0x20, 0x61, + 0x01, 0x00, 0x02, 0x00, 0x00, 0xe2, 0x24, 0x61, + 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, 0xb8, 0x4e, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0xc8, 0x4e, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0xd8, 0x4e, + 0x01, 0x00, 0x3c, 0x00, 0xec, 0x4e, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x0a, 0x96, 0x48, 0x01, 0x00, + 0x06, 0x00, 0x00, 0xe3, 0xe0, 0x62, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x9b, 0x7d, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x62, 0x9c, 0x7d, 0x01, 0x00, + 0x02, 0x00, 0x00, 0x62, 0x60, 0x7c, 0x01, 0x00, + 0x04, 0x00, 0x00, 0xe2, 0x01, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x3c, 0x00, 0x28, 0x4f, + 0x01, 0x00, 0x2d, 0x63, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x62, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x49, 0xd5, 0x00, 0x00, 0x0e, 0x00, + 0x00, 0xd9, 0xf4, 0x67, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x62, 0x46, 0x7d, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x62, 0x9c, 0x7c, 0x01, 0x00, 0x04, 0x00, + 0x00, 0xe2, 0x98, 0x7c, 0x01, 0x00, 0x3c, 0x00, + 0x64, 0x4f, 0x01, 0x00, 0x02, 0x00, 0x00, 0x62, + 0xa0, 0x7c, 0x01, 0x00, 0x06, 0x00, 0x00, 0x62, + 0x58, 0x7c, 0x01, 0x00, 0x02, 0x00, 0x00, 0x62, + 0x64, 0x7c, 0x01, 0x00, 0x06, 0x00, 0x00, 0x62, + 0x5a, 0x7c, 0x01, 0x00, 0x02, 0x00, 0x00, 0x62, + 0x6a, 0x7c, 0x01, 0x00, 0x06, 0x00, 0x00, 0x62, + 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0xe4, 0x62, 0x01, 0x00, 0x04, 0x00, 0x00, 0xe2, + 0x3c, 0x00, 0xa0, 0x4f, 0x01, 0x00, 0xe8, 0x62, + 0x01, 0x00, 0x03, 0x00, 0x00, 0xe2, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x01, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x4f, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x3c, 0x00, 0x18, 0x50, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0xf0, 0x4e, 0x01, 0x00, 0x2a, 0x00, + 0x00, 0x0a, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, 0x3c, 0x00, + 0x54, 0x50, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, + 0x05, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, + 0x3c, 0x00, 0x90, 0x50, 0x01, 0x00, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x06, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x07, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x08, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, + 0x01, 0x00, 0x0c, 0x00, 0x00, 0xdb, 0x09, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x50, 0x01, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x0a, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x0b, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x0c, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, + 0x0c, 0x00, 0x00, 0xdb, 0x3c, 0x00, 0x08, 0x51, + 0x01, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, + 0x00, 0xdb, 0x0e, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x6a, 0x75, 0x2a, 0x01, 0x00, 0x0c, 0x00, + 0x00, 0xdb, 0x48, 0x50, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x58, 0x50, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x68, 0x50, 0x01, 0x00, 0x02, 0x00, + 0x00, 0x0a, 0x78, 0x50, 0x01, 0x00, 0x3c, 0x00, + 0x44, 0x51, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0x88, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0x98, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xa8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xb8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xc8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xd8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0xe8, 0x50, 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, + 0x3c, 0x00, 0x80, 0x51, 0x01, 0x00, 0xf8, 0x50, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x08, 0x51, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x18, 0x51, + 0x01, 0x00, 0x02, 0x00, 0x00, 0x0a, 0x40, 0x50, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x0a, 0xe8, 0x4e, + 0x01, 0x00, 0x01, 0x00, 0x00, 0x0a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x4e, + 0x01, 0x00, 0x3c, 0x00, 0xbc, 0x51, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x28, 0x51, 0x01, 0x00, + 0x0e, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x51, + 0x01, 0x00, 0x98, 0x51, 0x01, 0x00, 0x0c, 0x00, + 0x00, 0x0a, 0x50, 0x4e, 0x01, 0x00, 0x04, 0x00, + 0x00, 0x0a, 0xe0, 0x4c, 0x01, 0x00, 0x01, 0x00, + 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0x4b, 0x01, 0x00, 0x1d, 0x00, + 0x00, 0x0a, 0xf8, 0x51, 0x01, 0x00, 0x05, 0x00, + 0x00, 0x0a, 0x24, 0x80, 0x07, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1d, 0x80, 0x07, 0x00, 0x3c, 0x00, + 0x34, 0x52, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x2a, 0x80, 0x07, 0x00, 0x5c, 0x00, 0x00, 0x00, + 0x24, 0x80, 0x07, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x1d, 0x80, 0x07, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x2a, 0x80, 0x07, 0x00, 0x6a, 0x00, 0x00, 0x00, + 0x24, 0x80, 0x07, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x1d, 0x80, 0x07, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x2a, 0x80, 0x07, 0x00, 0x6a, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x52, 0x01, 0x00, 0x00, 0x01, + 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, + 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, + 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, + 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x01, 0x63, + 0x00, 0x00, 0xa1, 0x63, 0x00, 0x00, 0xc5, 0x63, + 0x00, 0x00, 0xb1, 0x62, 0x00, 0x00, 0xc5, 0x63, + 0x00, 0x00, 0x21, 0x63, 0x00, 0x00, 0x4d, 0x63, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x52, 0x01, 0x00, + 0xa1, 0x63, 0x00, 0x00, 0x01, 0x63, 0x00, 0x00, + 0xa1, 0x63, 0x00, 0x00, 0x06, 0x05, 0x05, 0x05, + 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, + 0x05, 0x05, 0x03, 0x05, 0x06, 0x07, 0x08, 0x09, + 0x0a, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x0f, 0x10, + 0x11, 0x00, 0x00, 0x00, 0xa5, 0xc6, 0x84, 0xf8, + 0x99, 0xee, 0x8d, 0xf6, 0x0d, 0xff, 0xbd, 0xd6, + 0xb1, 0xde, 0x54, 0x91, 0x3c, 0x00, 0xe8, 0x52, + 0x01, 0x00, 0x50, 0x60, 0x03, 0x02, 0xa9, 0xce, + 0x7d, 0x56, 0x19, 0xe7, 0x62, 0xb5, 0xe6, 0x4d, + 0x9a, 0xec, 0x45, 0x8f, 0x9d, 0x1f, 0x40, 0x89, + 0x87, 0xfa, 0x15, 0xef, 0xeb, 0xb2, 0xc9, 0x8e, + 0x0b, 0xfb, 0xec, 0x41, 0x67, 0xb3, 0xfd, 0x5f, + 0xea, 0x45, 0xbf, 0x23, 0xf7, 0x53, 0x96, 0xe4, + 0x5b, 0x9b, 0xc2, 0x75, 0x1c, 0xe1, 0xae, 0x3d, + 0x6a, 0x4c, 0x5a, 0x6c, 0x41, 0x7e, 0x3c, 0x00, + 0x24, 0x53, 0x01, 0x00, 0x02, 0xf5, 0x4f, 0x83, + 0x5c, 0x68, 0xf4, 0x51, 0x34, 0xd1, 0x08, 0xf9, + 0x93, 0xe2, 0x73, 0xab, 0x53, 0x62, 0x3f, 0x2a, + 0x0c, 0x08, 0x52, 0x95, 0x65, 0x46, 0x5e, 0x9d, + 0x28, 0x30, 0xa1, 0x37, 0x0f, 0x0a, 0xb5, 0x2f, + 0x09, 0x0e, 0x36, 0x24, 0x9b, 0x1b, 0x3d, 0xdf, + 0x26, 0xcd, 0x69, 0x4e, 0xcd, 0x7f, 0x9f, 0xea, + 0x1b, 0x12, 0x9e, 0x1d, 0x74, 0x58, 0x2e, 0x34, + 0x3c, 0x00, 0x60, 0x53, 0x01, 0x00, 0x2d, 0x36, + 0xb2, 0xdc, 0xee, 0xb4, 0xfb, 0x5b, 0xf6, 0xa4, + 0x4d, 0x76, 0x61, 0xb7, 0xce, 0x7d, 0x7b, 0x52, + 0x3e, 0xdd, 0x71, 0x5e, 0x97, 0x13, 0xf5, 0xa6, + 0x68, 0xb9, 0x00, 0x00, 0x2c, 0xc1, 0x60, 0x40, + 0x1f, 0xe3, 0xc8, 0x79, 0xed, 0xb6, 0xbe, 0xd4, + 0x46, 0x8d, 0xd9, 0x67, 0x4b, 0x72, 0xde, 0x94, + 0xd4, 0x98, 0xe8, 0xb0, 0x4a, 0x85, 0x6b, 0xbb, + 0x2a, 0xc5, 0x3c, 0x00, 0x9c, 0x53, 0x01, 0x00, + 0xe5, 0x4f, 0x16, 0xed, 0xc5, 0x86, 0xd7, 0x9a, + 0x55, 0x66, 0x94, 0x11, 0xcf, 0x8a, 0x10, 0xe9, + 0x06, 0x04, 0x81, 0xfe, 0xf0, 0xa0, 0x44, 0x78, + 0xba, 0x25, 0xe3, 0x4b, 0xf3, 0xa2, 0xfe, 0x5d, + 0xc0, 0x80, 0x8a, 0x05, 0xad, 0x3f, 0xbc, 0x21, + 0x48, 0x70, 0x04, 0xf1, 0xdf, 0x63, 0xc1, 0x77, + 0x75, 0xaf, 0x63, 0x42, 0x30, 0x20, 0x1a, 0xe5, + 0x0e, 0xfd, 0x6d, 0xbf, 0x3c, 0x00, 0xd8, 0x53, + 0x01, 0x00, 0x4c, 0x81, 0x14, 0x18, 0x35, 0x26, + 0x2f, 0xc3, 0xe1, 0xbe, 0xa2, 0x35, 0xcc, 0x88, + 0x39, 0x2e, 0x57, 0x93, 0xf2, 0x55, 0x82, 0xfc, + 0x47, 0x7a, 0xac, 0xc8, 0xe7, 0xba, 0x2b, 0x32, + 0x95, 0xe6, 0xa0, 0xc0, 0x98, 0x19, 0xd1, 0x9e, + 0x7f, 0xa3, 0x66, 0x44, 0x7e, 0x54, 0xab, 0x3b, + 0x83, 0x0b, 0xca, 0x8c, 0x29, 0xc7, 0xd3, 0x6b, + 0x3c, 0x28, 0x79, 0xa7, 0xe2, 0xbc, 0x3c, 0x00, + 0x14, 0x54, 0x01, 0x00, 0x1d, 0x16, 0x76, 0xad, + 0x3b, 0xdb, 0x56, 0x64, 0x4e, 0x74, 0x1e, 0x14, + 0xdb, 0x92, 0x0a, 0x0c, 0x6c, 0x48, 0xe4, 0xb8, + 0x5d, 0x9f, 0x6e, 0xbd, 0xef, 0x43, 0xa6, 0xc4, + 0xa8, 0x39, 0xa4, 0x31, 0x37, 0xd3, 0x8b, 0xf2, + 0x32, 0xd5, 0x43, 0x8b, 0x59, 0x6e, 0xb7, 0xda, + 0x8c, 0x01, 0x64, 0xb1, 0xd2, 0x9c, 0xe0, 0x49, + 0xb4, 0xd8, 0xfa, 0xac, 0x07, 0xf3, 0x25, 0xcf, + 0x3c, 0x00, 0x50, 0x54, 0x01, 0x00, 0xaf, 0xca, + 0x8e, 0xf4, 0xe9, 0x47, 0x18, 0x10, 0xd5, 0x6f, + 0x88, 0xf0, 0x6f, 0x4a, 0x72, 0x5c, 0x24, 0x38, + 0xf1, 0x57, 0xc7, 0x73, 0x51, 0x97, 0x23, 0xcb, + 0x7c, 0xa1, 0x9c, 0xe8, 0x21, 0x3e, 0xdd, 0x96, + 0xdc, 0x61, 0x86, 0x0d, 0x85, 0x0f, 0x90, 0xe0, + 0x42, 0x7c, 0xc4, 0x71, 0xaa, 0xcc, 0xd8, 0x90, + 0x05, 0x06, 0x01, 0xf7, 0x12, 0x1c, 0xa3, 0xc2, + 0x5f, 0x6a, 0x3c, 0x00, 0x8c, 0x54, 0x01, 0x00, + 0xf9, 0xae, 0xd0, 0x69, 0x91, 0x17, 0x58, 0x99, + 0x27, 0x3a, 0xb9, 0x27, 0x38, 0xd9, 0x13, 0xeb, + 0xb3, 0x2b, 0x33, 0x22, 0xbb, 0xd2, 0x70, 0xa9, + 0x89, 0x07, 0xa7, 0x33, 0xb6, 0x2d, 0x22, 0x3c, + 0x92, 0x15, 0x20, 0xc9, 0x49, 0x87, 0xff, 0xaa, + 0x78, 0x50, 0x7a, 0xa5, 0x8f, 0x03, 0xf8, 0x59, + 0x80, 0x09, 0x17, 0x1a, 0xda, 0x65, 0x31, 0xd7, + 0xc6, 0x84, 0xb8, 0xd0, 0x3c, 0x00, 0xc8, 0x54, + 0x01, 0x00, 0xc3, 0x82, 0xb0, 0x29, 0x77, 0x5a, + 0x11, 0x1e, 0xcb, 0x7b, 0xfc, 0xa8, 0xd6, 0x6d, + 0x3a, 0x2c, 0xc6, 0xa5, 0xf8, 0x84, 0xee, 0x99, + 0xf6, 0x8d, 0xff, 0x0d, 0xd6, 0xbd, 0xde, 0xb1, + 0x91, 0x54, 0x60, 0x50, 0x02, 0x03, 0xce, 0xa9, + 0x56, 0x7d, 0xe7, 0x19, 0xb5, 0x62, 0x4d, 0xe6, + 0xec, 0x9a, 0x8f, 0x45, 0x1f, 0x9d, 0x89, 0x40, + 0xfa, 0x87, 0xef, 0x15, 0xb2, 0xeb, 0x3c, 0x00, + 0x04, 0x55, 0x01, 0x00, 0x8e, 0xc9, 0xfb, 0x0b, + 0x41, 0xec, 0xb3, 0x67, 0x5f, 0xfd, 0x45, 0xea, + 0x23, 0xbf, 0x53, 0xf7, 0xe4, 0x96, 0x9b, 0x5b, + 0x75, 0xc2, 0xe1, 0x1c, 0x3d, 0xae, 0x4c, 0x6a, + 0x6c, 0x5a, 0x7e, 0x41, 0xf5, 0x02, 0x83, 0x4f, + 0x68, 0x5c, 0x51, 0xf4, 0xd1, 0x34, 0xf9, 0x08, + 0xe2, 0x93, 0xab, 0x73, 0x62, 0x53, 0x2a, 0x3f, + 0x08, 0x0c, 0x95, 0x52, 0x46, 0x65, 0x9d, 0x5e, + 0x3c, 0x00, 0x40, 0x55, 0x01, 0x00, 0x30, 0x28, + 0x37, 0xa1, 0x0a, 0x0f, 0x2f, 0xb5, 0x0e, 0x09, + 0x24, 0x36, 0x1b, 0x9b, 0xdf, 0x3d, 0xcd, 0x26, + 0x4e, 0x69, 0x7f, 0xcd, 0xea, 0x9f, 0x12, 0x1b, + 0x1d, 0x9e, 0x58, 0x74, 0x34, 0x2e, 0x36, 0x2d, + 0xdc, 0xb2, 0xb4, 0xee, 0x5b, 0xfb, 0xa4, 0xf6, + 0x76, 0x4d, 0xb7, 0x61, 0x7d, 0xce, 0x52, 0x7b, + 0xdd, 0x3e, 0x5e, 0x71, 0x13, 0x97, 0xa6, 0xf5, + 0xb9, 0x68, 0x3c, 0x00, 0x7c, 0x55, 0x01, 0x00, + 0x00, 0x00, 0xc1, 0x2c, 0x40, 0x60, 0xe3, 0x1f, + 0x79, 0xc8, 0xb6, 0xed, 0xd4, 0xbe, 0x8d, 0x46, + 0x67, 0xd9, 0x72, 0x4b, 0x94, 0xde, 0x98, 0xd4, + 0xb0, 0xe8, 0x85, 0x4a, 0xbb, 0x6b, 0xc5, 0x2a, + 0x4f, 0xe5, 0xed, 0x16, 0x86, 0xc5, 0x9a, 0xd7, + 0x66, 0x55, 0x11, 0x94, 0x8a, 0xcf, 0xe9, 0x10, + 0x04, 0x06, 0xfe, 0x81, 0xa0, 0xf0, 0x78, 0x44, + 0x25, 0xba, 0x4b, 0xe3, 0x3c, 0x00, 0xb8, 0x55, + 0x01, 0x00, 0xa2, 0xf3, 0x5d, 0xfe, 0x80, 0xc0, + 0x05, 0x8a, 0x3f, 0xad, 0x21, 0xbc, 0x70, 0x48, + 0xf1, 0x04, 0x63, 0xdf, 0x77, 0xc1, 0xaf, 0x75, + 0x42, 0x63, 0x20, 0x30, 0xe5, 0x1a, 0xfd, 0x0e, + 0xbf, 0x6d, 0x81, 0x4c, 0x18, 0x14, 0x26, 0x35, + 0xc3, 0x2f, 0xbe, 0xe1, 0x35, 0xa2, 0x88, 0xcc, + 0x2e, 0x39, 0x93, 0x57, 0x55, 0xf2, 0xfc, 0x82, + 0x7a, 0x47, 0xc8, 0xac, 0xba, 0xe7, 0x3c, 0x00, + 0xf4, 0x55, 0x01, 0x00, 0x32, 0x2b, 0xe6, 0x95, + 0xc0, 0xa0, 0x19, 0x98, 0x9e, 0xd1, 0xa3, 0x7f, + 0x44, 0x66, 0x54, 0x7e, 0x3b, 0xab, 0x0b, 0x83, + 0x8c, 0xca, 0xc7, 0x29, 0x6b, 0xd3, 0x28, 0x3c, + 0xa7, 0x79, 0xbc, 0xe2, 0x16, 0x1d, 0xad, 0x76, + 0xdb, 0x3b, 0x64, 0x56, 0x74, 0x4e, 0x14, 0x1e, + 0x92, 0xdb, 0x0c, 0x0a, 0x48, 0x6c, 0xb8, 0xe4, + 0x9f, 0x5d, 0xbd, 0x6e, 0x43, 0xef, 0xc4, 0xa6, + 0x3c, 0x00, 0x30, 0x56, 0x01, 0x00, 0x39, 0xa8, + 0x31, 0xa4, 0xd3, 0x37, 0xf2, 0x8b, 0xd5, 0x32, + 0x8b, 0x43, 0x6e, 0x59, 0xda, 0xb7, 0x01, 0x8c, + 0xb1, 0x64, 0x9c, 0xd2, 0x49, 0xe0, 0xd8, 0xb4, + 0xac, 0xfa, 0xf3, 0x07, 0xcf, 0x25, 0xca, 0xaf, + 0xf4, 0x8e, 0x47, 0xe9, 0x10, 0x18, 0x6f, 0xd5, + 0xf0, 0x88, 0x4a, 0x6f, 0x5c, 0x72, 0x38, 0x24, + 0x57, 0xf1, 0x73, 0xc7, 0x97, 0x51, 0xcb, 0x23, + 0xa1, 0x7c, 0x3c, 0x00, 0x6c, 0x56, 0x01, 0x00, + 0xe8, 0x9c, 0x3e, 0x21, 0x96, 0xdd, 0x61, 0xdc, + 0x0d, 0x86, 0x0f, 0x85, 0xe0, 0x90, 0x7c, 0x42, + 0x71, 0xc4, 0xcc, 0xaa, 0x90, 0xd8, 0x06, 0x05, + 0xf7, 0x01, 0x1c, 0x12, 0xc2, 0xa3, 0x6a, 0x5f, + 0xae, 0xf9, 0x69, 0xd0, 0x17, 0x91, 0x99, 0x58, + 0x3a, 0x27, 0x27, 0xb9, 0xd9, 0x38, 0xeb, 0x13, + 0x2b, 0xb3, 0x22, 0x33, 0xd2, 0xbb, 0xa9, 0x70, + 0x07, 0x89, 0x33, 0xa7, 0x3c, 0x00, 0xa8, 0x56, + 0x01, 0x00, 0x2d, 0xb6, 0x3c, 0x22, 0x15, 0x92, + 0xc9, 0x20, 0x87, 0x49, 0xaa, 0xff, 0x50, 0x78, + 0xa5, 0x7a, 0x03, 0x8f, 0x59, 0xf8, 0x09, 0x80, + 0x1a, 0x17, 0x65, 0xda, 0xd7, 0x31, 0x84, 0xc6, + 0xd0, 0xb8, 0x82, 0xc3, 0x29, 0xb0, 0x5a, 0x77, + 0x1e, 0x11, 0x7b, 0xcb, 0xa8, 0xfc, 0x6d, 0xd6, + 0x2c, 0x3a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x56, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x72, 0x65, 0x71, 0x45, 0x72, 0x72, 0x52, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x57, 0x01, 0x00, 0xc4, 0x8e, + 0x01, 0x00, 0x24, 0x9a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x24, 0x9a, + 0x01, 0x00, 0xa4, 0xb2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0xa4, 0xb2, + 0x01, 0x00, 0x14, 0xc8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x10, 0x20, + 0x30, 0x40, 0x50, 0xbb, 0x30, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x57, 0x01, 0x00, + 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x22, + 0x24, 0x26, 0x28, 0x2a, 0x2b, 0x2c, 0x01, 0x00, + 0x70, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x0d, 0x25, 0x00, 0x00, 0x41, 0x3f, 0x01, 0x00, + 0x65, 0x29, 0x01, 0x00, 0x0d, 0x25, 0x00, 0x00, + 0xf5, 0x5e, 0x00, 0x00, 0x41, 0x3f, 0x01, 0x00, + 0x41, 0x3f, 0x01, 0x00, 0x02, 0x04, 0x0b, 0x0c, + 0x12, 0x16, 0x18, 0x24, 0x3c, 0x00, 0x98, 0x57, + 0x01, 0x00, 0x30, 0x48, 0x60, 0x6c, 0x01, 0x00, + 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x02, 0x10, 0x12, 0x11, 0x00, + 0x00, 0x01, 0x18, 0x00, 0x00, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x57, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xe0, 0x93, 0x04, 0x00, + 0x40, 0x42, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, + 0xdf, 0x40, 0xcf, 0xfd, 0x00, 0x40, 0x83, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x58, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x00, 0x80, 0x81, 0x00, 0x00, + 0x80, 0x00, 0xbf, 0xff, 0x7f, 0x7e, 0x01, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x6f, + 0x01, 0x00, 0x3c, 0x00, 0x4c, 0x58, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x78, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xb8, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf8, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x71, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x78, 0x71, 0x01, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x90, 0x71, 0x01, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x58, + 0x01, 0x00, 0xa8, 0x71, 0x01, 0x00, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x05, 0x0a, 0x01, 0x06, 0x0b, + 0x02, 0x07, 0x0c, 0x03, 0x08, 0x0d, 0x04, 0x09, + 0x00, 0x00, 0x03, 0x03, 0x01, 0x01, 0x00, 0x04, + 0x00, 0x04, 0x04, 0x06, 0x16, 0x1e, 0x1f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xff, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0xc4, 0x58, 0x01, 0x00, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, + 0x61, 0x8b, 0x4a, 0x00, 0x61, 0x8f, 0x4a, 0x00, + 0x61, 0x8b, 0x4a, 0x00, 0x05, 0xe3, 0xc0, 0x00, + 0x05, 0xcb, 0xc0, 0x00, 0x05, 0xbb, 0xc0, 0x00, + 0x85, 0xba, 0xc0, 0x00, 0x85, 0xa2, 0xc0, 0x00, + 0x85, 0x92, 0xc0, 0x00, 0x85, 0x8a, 0xc0, 0x00, + 0x85, 0x7a, 0xc0, 0x00, 0x45, 0x89, 0xc0, 0x00, + 0x3c, 0x00, 0x00, 0x59, 0x01, 0x00, 0x45, 0x71, + 0xc0, 0x00, 0x45, 0x69, 0xc0, 0x00, 0x45, 0x61, + 0xc0, 0x00, 0x45, 0x59, 0xc0, 0x00, 0x45, 0x51, + 0xc0, 0x00, 0x45, 0x49, 0xc0, 0x00, 0x45, 0x41, + 0xc0, 0x00, 0x45, 0x39, 0xc0, 0x00, 0x45, 0x31, + 0xc0, 0x00, 0x45, 0x29, 0xc0, 0x00, 0x45, 0x21, + 0xc0, 0x00, 0x60, 0x2d, 0x06, 0x00, 0x60, 0x2d, + 0x06, 0x00, 0x60, 0x2d, 0x06, 0x00, 0x60, 0x2d, + 0x06, 0x00, 0x3c, 0x00, 0x3c, 0x59, 0x01, 0x00, + 0x60, 0x2d, 0x06, 0x00, 0x60, 0x28, 0x06, 0x00, + 0x50, 0x26, 0x06, 0x00, 0x50, 0x21, 0x06, 0x00, + 0x50, 0x1f, 0x06, 0x00, 0x50, 0x1c, 0x06, 0x00, + 0x50, 0x1a, 0x06, 0x00, 0x50, 0x18, 0x06, 0x00, + 0x50, 0x16, 0x06, 0x00, 0x50, 0x14, 0x06, 0x00, + 0x50, 0x12, 0x06, 0x00, 0x50, 0x10, 0x06, 0x00, + 0x50, 0x0e, 0x06, 0x00, 0x50, 0x0c, 0x06, 0x00, + 0x50, 0x0a, 0x06, 0x00, 0x3c, 0x00, 0x78, 0x59, + 0x01, 0x00, 0x2b, 0x0b, 0x06, 0x00, 0x1d, 0x75, + 0xc0, 0x00, 0x1d, 0x75, 0xc0, 0x00, 0x1d, 0x75, + 0xc0, 0x00, 0x1d, 0x75, 0xc0, 0x00, 0x1d, 0x75, + 0xc0, 0x00, 0x1d, 0x75, 0xc0, 0x00, 0x1d, 0x6d, + 0xc0, 0x00, 0xdd, 0x5b, 0xc0, 0x00, 0xdd, 0x4b, + 0xc0, 0x00, 0xdd, 0x43, 0xc0, 0x00, 0xdd, 0x3b, + 0xc0, 0x00, 0xdd, 0x33, 0xc0, 0x00, 0xdd, 0x2b, + 0xc0, 0x00, 0xdd, 0x23, 0xc0, 0x00, 0x3c, 0x00, + 0xb4, 0x59, 0x01, 0x00, 0xdd, 0x1b, 0xc0, 0x00, + 0xdd, 0x13, 0xc0, 0x00, 0xdd, 0x13, 0xc0, 0x00, + 0xdd, 0x13, 0xc0, 0x00, 0xdd, 0x13, 0xc0, 0x00, + 0xdd, 0x13, 0xc0, 0x00, 0x05, 0x05, 0x05, 0x04, + 0x04, 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x05, 0x05, 0x05, 0x04, 0x04, 0x03, + 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x88, 0x13, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x59, 0x01, 0x00, 0x07, 0x00, + 0x00, 0x00, 0x80, 0x00, 0x5b, 0x00, 0x40, 0x02, + 0xe0, 0xfd, 0xf2, 0x00, 0xb8, 0xfc, 0xa4, 0x01, + 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, + 0x00, 0x00, 0x03, 0x0b, 0x9f, 0x5f, 0x07, 0x01, + 0x2a, 0x04, 0x21, 0x04, 0x17, 0x04, 0x0e, 0x04, + 0x04, 0x04, 0xfb, 0x03, 0xf1, 0x03, 0xe8, 0x03, + 0xc9, 0x03, 0xaa, 0x03, 0x8a, 0x03, 0x6b, 0x03, + 0x4c, 0x03, 0x3c, 0x00, 0x2c, 0x5a, 0x01, 0x00, + 0x2d, 0x03, 0x0e, 0x03, 0xee, 0x02, 0xec, 0x02, + 0x01, 0x03, 0x16, 0x03, 0x2b, 0x03, 0x40, 0x03, + 0x55, 0x03, 0x6a, 0x03, 0x7f, 0x03, 0x94, 0x03, + 0xa9, 0x03, 0xbe, 0x03, 0xd3, 0x03, 0xe8, 0x03, + 0xbe, 0x03, 0x94, 0x03, 0x6a, 0x03, 0x00, 0x02, + 0x04, 0x06, 0x07, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, + 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x00, 0x03, 0x3c, 0x00, 0x68, 0x5a, + 0x01, 0x00, 0x05, 0x08, 0x0b, 0x0e, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x5a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x5a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x5b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x5b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x5b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x5b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x5c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x5c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x5c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x5c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x5c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x5d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x5d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x5d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x5d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x5e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x5e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x5e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x5e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x5f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x5f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x5f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x5f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x60, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x60, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x60, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x60, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x60, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x61, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x61, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x61, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x62, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x62, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x62, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x62, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x63, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x63, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x63, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x63, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0x64, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x64, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0x64, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x64, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x64, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x65, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x65, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x65, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x65, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x66, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x66, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x66, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x66, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x67, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0x67, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x67, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0x67, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x68, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x68, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0x68, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0x68, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x68, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0x69, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x69, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x69, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x69, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x6a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x6a, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x6a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x6a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x6b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x6b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x6b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x6b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x6b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x6c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x6c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x6c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x6c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x6d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x6d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x6d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x6d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x6e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x6e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x6e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x6e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x6f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x6f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x6f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x6f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x70, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x70, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x70, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x70, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x71, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x71, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x71, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x71, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x72, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x72, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x72, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x72, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0x73, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x73, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0x73, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x73, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x73, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x74, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x74, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x74, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x74, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x75, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x75, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x75, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x75, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x76, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0x76, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x76, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0x76, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x77, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x77, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0x77, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0x77, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x77, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0x78, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x78, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x78, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x78, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x79, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x79, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x79, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x79, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x7a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x7a, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x7a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x7a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x7a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x7b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x7b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x7b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x7b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x7c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x7c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x7c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x7c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x7d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x7d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x7d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x7d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x7e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x7e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x7e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x7e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x7e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x7f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x7f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x7f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x7f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x70, 0xb5, 0x01, 0x25, 0x07, 0x4e, + 0xad, 0x03, 0x75, 0x61, 0x0a, 0x20, 0xfa, 0xf7, + 0x6c, 0xff, 0x30, 0x68, 0x80, 0x03, 0xc4, 0x0f, + 0xb5, 0x61, 0x0a, 0x20, 0xfa, 0xf7, 0x65, 0xff, + 0x20, 0x1c, 0x70, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x80, 0x01, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x70, 0xb5, 0x01, 0x25, 0x6d, 0x04, 0x00, 0x28, + 0x10, 0x4c, 0x01, 0xd0, 0x65, 0x61, 0x00, 0xe0, + 0xa5, 0x61, 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, + 0xa0, 0x68, 0x28, 0x43, 0xa0, 0x60, 0x0a, 0x20, + 0xfa, 0xf7, 0x4e, 0xff, 0x01, 0x26, 0xb6, 0x03, + 0x66, 0x61, 0x0a, 0x20, 0xfa, 0xf7, 0x48, 0xff, + 0xa6, 0x61, 0x01, 0x20, 0xfa, 0xf7, 0x44, 0xff, + 0x3c, 0x00, 0x60, 0x80, 0x01, 0x00, 0xa0, 0x68, + 0xa8, 0x43, 0xa0, 0x60, 0x60, 0x68, 0x28, 0x43, + 0x60, 0x60, 0x0a, 0x20, 0xfa, 0xf7, 0x3b, 0xff, + 0x70, 0xbd, 0x10, 0x00, 0x07, 0x00, 0x70, 0xb5, + 0x01, 0x25, 0x10, 0x4c, 0x6d, 0x04, 0x65, 0x61, + 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, 0xa0, 0x68, + 0x28, 0x43, 0xa0, 0x60, 0xee, 0x08, 0xa6, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0x28, 0xff, 0x66, 0x61, + 0x0a, 0x20, 0x3c, 0x00, 0x9c, 0x80, 0x01, 0x00, + 0xfa, 0xf7, 0x24, 0xff, 0xa5, 0x61, 0x0a, 0x20, + 0xfa, 0xf7, 0x20, 0xff, 0xa6, 0x61, 0x0a, 0x20, + 0xfa, 0xf7, 0x1c, 0xff, 0xa0, 0x68, 0xa8, 0x43, + 0xa0, 0x60, 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, + 0x70, 0xbd, 0x00, 0x00, 0x10, 0x00, 0x07, 0x00, + 0x70, 0xb5, 0x01, 0x25, 0x0e, 0x4c, 0x6d, 0x04, + 0xa5, 0x61, 0x60, 0x68, 0x28, 0x43, 0x60, 0x60, + 0xa0, 0x68, 0x28, 0x43, 0x3c, 0x00, 0xd8, 0x80, + 0x01, 0x00, 0xa0, 0x60, 0xee, 0x08, 0x66, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0x02, 0xff, 0x65, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0xfe, 0xfe, 0xa6, 0x61, + 0x0a, 0x20, 0xfa, 0xf7, 0xfa, 0xfe, 0xa0, 0x68, + 0xa8, 0x43, 0xa0, 0x60, 0x60, 0x68, 0x28, 0x43, + 0x60, 0x60, 0x70, 0xbd, 0x00, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x70, 0xb5, 0x05, 0x1c, 0x00, 0x24, + 0x80, 0x26, 0x28, 0x1c, 0x30, 0x40, 0x3c, 0x00, + 0x14, 0x81, 0x01, 0x00, 0xff, 0xf7, 0x88, 0xff, + 0x68, 0x06, 0x05, 0x0e, 0x01, 0x34, 0x08, 0x2c, + 0xf6, 0xdb, 0xff, 0xf7, 0x6d, 0xff, 0x70, 0xbd, + 0x80, 0xb5, 0x02, 0x1c, 0x0b, 0x21, 0x80, 0x20, + 0xfb, 0xf7, 0x3e, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0xf8, 0xb5, 0x12, 0x48, 0x00, 0x25, 0x07, 0x1c, + 0xff, 0x37, 0x06, 0x1d, 0x01, 0x37, 0x28, 0x1c, + 0xf9, 0xf7, 0xea, 0xfd, 0x04, 0x1c, 0x17, 0xd0, + 0x3c, 0x00, 0x50, 0x81, 0x01, 0x00, 0x20, 0x69, + 0x00, 0x28, 0x04, 0xd0, 0xe0, 0x6a, 0x00, 0x28, + 0x03, 0xd0, 0x00, 0x20, 0xe0, 0x62, 0x25, 0x1c, + 0xf0, 0xe7, 0x7b, 0x68, 0x00, 0x2b, 0x05, 0xd0, + 0x32, 0x1c, 0x21, 0x1c, 0x44, 0x31, 0x01, 0x20, + 0xe8, 0xf7, 0x34, 0xf9, 0x20, 0x1c, 0x44, 0x30, + 0xf9, 0xf7, 0x37, 0xfe, 0xe2, 0xe7, 0xf8, 0xbd, + 0x00, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x11, 0x48, + 0x70, 0xb5, 0x3c, 0x00, 0x8c, 0x81, 0x01, 0x00, + 0x00, 0x68, 0xff, 0x28, 0x1d, 0xd1, 0xff, 0x20, + 0x32, 0x30, 0xfa, 0xf7, 0xa7, 0xfe, 0x0e, 0x4d, + 0x6c, 0x68, 0x0e, 0x48, 0xfa, 0xf7, 0xa2, 0xfe, + 0x68, 0x68, 0x24, 0x1a, 0x01, 0x20, 0x00, 0xf0, + 0x95, 0xfd, 0x6e, 0x68, 0x09, 0x48, 0xfa, 0xf7, + 0x99, 0xfe, 0x68, 0x68, 0x21, 0x1c, 0x0a, 0x39, + 0x30, 0x1a, 0x88, 0x42, 0x02, 0xd3, 0x0a, 0x34, + 0xa0, 0x42, 0x02, 0xd9, 0x3c, 0x00, 0xc8, 0x81, + 0x01, 0x00, 0x00, 0x20, 0x00, 0xf0, 0x85, 0xfd, + 0x70, 0xbd, 0xf4, 0x74, 0x01, 0x00, 0x00, 0x03, + 0x07, 0x00, 0x93, 0x03, 0x00, 0x00, 0x70, 0xb5, + 0x00, 0xf0, 0x4d, 0xf8, 0x01, 0x20, 0xed, 0xf7, + 0x34, 0xf9, 0x11, 0x4d, 0x18, 0x21, 0x68, 0x60, + 0x00, 0x20, 0xe9, 0xf7, 0xf2, 0xf9, 0x28, 0x60, + 0x04, 0x68, 0x80, 0x20, 0x20, 0x80, 0x00, 0x26, + 0x06, 0x22, 0xff, 0x21, 0x20, 0x1d, 0x3c, 0x00, + 0x04, 0x82, 0x01, 0x00, 0x66, 0x80, 0xe8, 0xf7, + 0x0b, 0xfa, 0x20, 0x1c, 0x0a, 0x30, 0x09, 0x49, + 0xf2, 0xf7, 0x2e, 0xfd, 0x20, 0x1c, 0x10, 0x30, + 0x07, 0x49, 0xf2, 0xf7, 0x29, 0xfd, 0xe6, 0x82, + 0x03, 0xcd, 0xe9, 0xf7, 0xf9, 0xf8, 0x02, 0x49, + 0x01, 0x20, 0x14, 0x39, 0x88, 0x60, 0x70, 0xbd, + 0x90, 0xd9, 0x01, 0x00, 0x12, 0x61, 0x01, 0x00, + 0x24, 0xf7, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x82, 0x01, 0x00, 0x10, 0xb5, + 0x06, 0x4c, 0x00, 0x22, 0x02, 0x20, 0xe1, 0x68, + 0xf0, 0xf7, 0x11, 0xfb, 0x60, 0x78, 0x02, 0x28, + 0x01, 0xd1, 0x00, 0xf0, 0x1a, 0xf9, 0x10, 0xbd, + 0x00, 0x00, 0x40, 0xd9, 0x01, 0x00, 0x80, 0xb5, + 0xa1, 0x20, 0xff, 0xf7, 0x50, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0x40, 0x00, 0x0e, 0x21, 0x08, 0x40, + 0x80, 0xb5, 0xa0, 0x30, 0xff, 0xf7, 0x47, 0xff, + 0x80, 0xbd, 0x3c, 0x00, 0x7c, 0x82, 0x01, 0x00, + 0x10, 0xb5, 0x05, 0x4c, 0x20, 0x68, 0x00, 0x28, + 0x04, 0xd0, 0xe9, 0xf7, 0x87, 0xf9, 0x00, 0x20, + 0x20, 0x60, 0x60, 0x60, 0x10, 0xbd, 0x00, 0x00, + 0x90, 0xd9, 0x01, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0x01, 0x21, 0x07, 0x4a, 0x21, 0x61, 0x02, 0x20, + 0x10, 0x70, 0x61, 0x61, 0x00, 0xf0, 0xd6, 0xfc, + 0x00, 0xf0, 0xc8, 0xfb, 0x20, 0x1c, 0xed, 0xf7, + 0x9f, 0xfa, 0x10, 0xbd, 0x3c, 0x00, 0xb8, 0x82, + 0x01, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x7c, 0xd9, + 0x01, 0x00, 0x70, 0xb5, 0x02, 0x1c, 0x08, 0x1c, + 0x02, 0x25, 0x00, 0x2a, 0x13, 0x4e, 0x14, 0xd0, + 0x00, 0xf0, 0x11, 0xfc, 0x30, 0x78, 0x01, 0x21, + 0x08, 0x43, 0x30, 0x70, 0x30, 0x78, 0x28, 0x43, + 0x30, 0x70, 0x00, 0x20, 0x7d, 0x21, 0x49, 0x01, + 0xb2, 0x79, 0x92, 0x07, 0x00, 0xd5, 0x01, 0x34, + 0x01, 0x30, 0x88, 0x42, 0xf8, 0xdb, 0x3c, 0x00, + 0xf4, 0x82, 0x01, 0x00, 0x20, 0x1c, 0x70, 0xbd, + 0x30, 0x78, 0xa8, 0x43, 0x30, 0x70, 0x30, 0x78, + 0x40, 0x08, 0x40, 0x00, 0x30, 0x70, 0x05, 0x49, + 0x48, 0x68, 0x01, 0x22, 0x12, 0x04, 0x90, 0x43, + 0x48, 0x60, 0x01, 0x20, 0x70, 0xbd, 0x00, 0x00, + 0x88, 0x00, 0x07, 0x00, 0x6c, 0x00, 0x07, 0x00, + 0xff, 0xb5, 0x09, 0xae, 0x00, 0x20, 0x60, 0xce, + 0x28, 0x60, 0x00, 0x23, 0x9c, 0x46, 0x30, 0x60, + 0x3c, 0x00, 0x30, 0x83, 0x01, 0x00, 0x69, 0x46, + 0x01, 0xaa, 0x17, 0xe0, 0xdb, 0x07, 0x0e, 0xd5, + 0x12, 0x4b, 0x1c, 0x56, 0x63, 0x1c, 0x0a, 0xd0, + 0x01, 0x27, 0x2b, 0x68, 0xa7, 0x40, 0x3b, 0x43, + 0x2b, 0x60, 0x13, 0x68, 0xdb, 0x07, 0x02, 0xd5, + 0x33, 0x68, 0x3b, 0x43, 0x33, 0x60, 0x0b, 0x68, + 0x5b, 0x08, 0x0b, 0x60, 0x13, 0x68, 0x5b, 0x08, + 0x13, 0x60, 0x01, 0x30, 0x0b, 0x68, 0x00, 0x2b, + 0x01, 0xd0, 0x3c, 0x00, 0x6c, 0x83, 0x01, 0x00, + 0x22, 0x28, 0xe2, 0xd3, 0x63, 0x46, 0x01, 0x33, + 0x20, 0x20, 0x02, 0x2b, 0x9c, 0x46, 0x02, 0xa9, + 0x03, 0xaa, 0xf2, 0xdb, 0xff, 0xbd, 0x00, 0x00, + 0xb4, 0x8d, 0x01, 0x00, 0xb0, 0xb5, 0x04, 0x1c, + 0x0d, 0x1c, 0x1e, 0x21, 0x00, 0x22, 0x03, 0x20, + 0x05, 0x4b, 0xf9, 0xf7, 0xb3, 0xf8, 0x21, 0x1c, + 0x03, 0x20, 0xf9, 0xf7, 0xf5, 0xf8, 0x29, 0x1c, + 0x03, 0x20, 0xf9, 0xf7, 0x3c, 0x00, 0xa8, 0x83, + 0x01, 0x00, 0xf1, 0xf8, 0xb0, 0xbd, 0x80, 0x38, + 0x01, 0x00, 0xb0, 0xb5, 0x1c, 0x4c, 0x1c, 0x4d, + 0x21, 0x78, 0x02, 0x29, 0x09, 0xd0, 0x03, 0x29, + 0x19, 0xd0, 0x04, 0x29, 0x1f, 0xd0, 0x05, 0x29, + 0x23, 0xd1, 0x00, 0x20, 0x00, 0xf0, 0x17, 0xfb, + 0x23, 0xe0, 0x68, 0x61, 0x14, 0x48, 0x1c, 0x30, + 0xc1, 0x68, 0x02, 0x69, 0x89, 0x18, 0xc1, 0x60, + 0x00, 0xf0, 0x2f, 0xfb, 0xe0, 0x68, 0x3c, 0x00, + 0xe4, 0x83, 0x01, 0x00, 0x01, 0x38, 0xe0, 0x60, + 0x16, 0xd1, 0x32, 0x20, 0xe0, 0x60, 0xff, 0xf7, + 0xa3, 0xfe, 0x11, 0xe0, 0x00, 0x20, 0x00, 0xf0, + 0x01, 0xfb, 0x00, 0xf0, 0x2d, 0xfc, 0x01, 0x20, + 0x20, 0x70, 0x09, 0xe0, 0x00, 0x20, 0x00, 0xf0, + 0xf9, 0xfa, 0xff, 0xf7, 0x45, 0xff, 0x03, 0xe0, + 0x05, 0x21, 0x0b, 0x20, 0xe8, 0xf7, 0x46, 0xff, + 0x68, 0x69, 0x61, 0x68, 0xe7, 0xf7, 0xdd, 0xff, + 0x3c, 0x00, 0x20, 0x84, 0x01, 0x00, 0xb0, 0xbd, + 0x00, 0x00, 0x7c, 0xd9, 0x01, 0x00, 0x20, 0xf7, + 0x01, 0x00, 0xf7, 0xb5, 0x04, 0x1c, 0x17, 0x1c, + 0xff, 0xf7, 0x21, 0xfe, 0x20, 0x0a, 0xff, 0xf7, + 0x18, 0xff, 0x20, 0x06, 0x00, 0x0e, 0xff, 0xf7, + 0x62, 0xfe, 0xff, 0xf7, 0x18, 0xfe, 0xa1, 0x20, + 0xff, 0xf7, 0x5d, 0xfe, 0x00, 0x25, 0x16, 0xe0, + 0x00, 0x20, 0x00, 0x24, 0x40, 0x06, 0x06, 0x0e, + 0xff, 0xf7, 0x3c, 0x00, 0x5c, 0x84, 0x01, 0x00, + 0xd1, 0xfd, 0x00, 0x06, 0x00, 0x0e, 0x30, 0x43, + 0x01, 0x34, 0x08, 0x2c, 0xf5, 0xdb, 0x29, 0x1c, + 0x01, 0x9a, 0x01, 0x35, 0xbd, 0x42, 0x50, 0x54, + 0x01, 0xda, 0x00, 0x20, 0x00, 0xe0, 0x01, 0x20, + 0xff, 0xf7, 0xd4, 0xfd, 0xbd, 0x42, 0xe6, 0xdb, + 0xff, 0xf7, 0x1e, 0xfe, 0xfe, 0xbd, 0x00, 0x00, + 0x80, 0xb5, 0xff, 0xf7, 0x19, 0xfe, 0x09, 0x21, + 0x89, 0x03, 0x00, 0x22, 0x3c, 0x00, 0x98, 0x84, + 0x01, 0x00, 0x02, 0x20, 0xf0, 0xf7, 0xe9, 0xf9, + 0x80, 0xbd, 0x09, 0x21, 0x89, 0x03, 0x80, 0xb5, + 0x00, 0x22, 0x02, 0x20, 0xf0, 0xf7, 0xc9, 0xf9, + 0x01, 0x21, 0x09, 0x48, 0x89, 0x03, 0x81, 0x61, + 0x42, 0x68, 0x0a, 0x43, 0x42, 0x60, 0x82, 0x68, + 0x11, 0x43, 0x81, 0x60, 0x01, 0x21, 0x49, 0x04, + 0x81, 0x61, 0x82, 0x68, 0x8a, 0x43, 0x82, 0x60, + 0x42, 0x68, 0x11, 0x43, 0x41, 0x60, 0x3c, 0x00, + 0xd4, 0x84, 0x01, 0x00, 0x80, 0xbd, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0xf0, 0xb5, 0x04, 0x1c, + 0xc0, 0x68, 0x7b, 0x4e, 0x05, 0x68, 0x30, 0x78, + 0x85, 0xb0, 0x01, 0x28, 0x01, 0xd0, 0x02, 0x28, + 0x72, 0xd1, 0x00, 0x21, 0x20, 0x69, 0xf2, 0xf7, + 0x41, 0xf9, 0x76, 0x49, 0xf2, 0xf7, 0x24, 0xfc, + 0x00, 0x28, 0x69, 0xd0, 0x20, 0x1c, 0x20, 0x30, + 0x41, 0x7a, 0x08, 0x29, 0x02, 0xd1, 0x72, 0x4a, + 0x3c, 0x00, 0x10, 0x85, 0x01, 0x00, 0x00, 0x21, + 0x51, 0x61, 0x00, 0x7a, 0x22, 0x6a, 0x18, 0x21, + 0xf2, 0xf7, 0xc9, 0xfb, 0xe1, 0x6a, 0x37, 0x1c, + 0x40, 0x18, 0x6c, 0x49, 0x02, 0x90, 0x30, 0x78, + 0x0e, 0x1c, 0xff, 0x36, 0x0a, 0x1d, 0x01, 0x36, + 0x01, 0x28, 0x04, 0x92, 0x07, 0xd0, 0x65, 0x4a, + 0x02, 0x99, 0x1c, 0x32, 0x28, 0x1c, 0xed, 0xf7, + 0xe2, 0xfb, 0x00, 0x28, 0x6b, 0xd0, 0x32, 0x21, + 0x20, 0x69, 0x3c, 0x00, 0x4c, 0x85, 0x01, 0x00, + 0xf2, 0xf7, 0x16, 0xf9, 0x01, 0x90, 0x20, 0x69, + 0x01, 0x21, 0xf2, 0xf7, 0x11, 0xf9, 0x01, 0x1c, + 0x5e, 0x48, 0x01, 0x23, 0x01, 0x9a, 0xed, 0xf7, + 0x07, 0xfc, 0x00, 0x28, 0x04, 0xd1, 0x5b, 0x48, + 0xed, 0xf7, 0x92, 0xfa, 0x00, 0x21, 0xb9, 0x60, + 0x56, 0x48, 0x1c, 0x30, 0x81, 0x68, 0xea, 0xf7, + 0x19, 0xfc, 0x20, 0x1c, 0x14, 0x30, 0x03, 0x90, + 0x04, 0x99, 0xf2, 0xf7, 0x3c, 0x00, 0x88, 0x85, + 0x01, 0x00, 0xd5, 0xfb, 0x00, 0x28, 0x05, 0xd1, + 0x00, 0x22, 0xba, 0x60, 0x04, 0x98, 0x03, 0x99, + 0xf2, 0xf7, 0x6b, 0xfb, 0x4f, 0x49, 0x28, 0x89, + 0x09, 0x88, 0x88, 0x42, 0x03, 0xd0, 0x00, 0x22, + 0x4c, 0x49, 0xba, 0x60, 0x08, 0x80, 0x03, 0x21, + 0x20, 0x69, 0xf2, 0xf7, 0xe4, 0xf8, 0x00, 0x28, + 0x10, 0xd0, 0x46, 0x49, 0x82, 0x78, 0x20, 0x31, + 0x0b, 0x79, 0x94, 0x46, 0x9a, 0x42, 0x3c, 0x00, + 0xc4, 0x85, 0x01, 0x00, 0x09, 0xd0, 0x00, 0x22, + 0xba, 0x60, 0x62, 0x46, 0x0a, 0x71, 0x80, 0x78, + 0x01, 0x21, 0xf3, 0xf7, 0x05, 0xf9, 0x00, 0xe0, + 0x77, 0xe0, 0x06, 0x21, 0x20, 0x69, 0xf2, 0xf7, + 0xcd, 0xf8, 0x00, 0x28, 0x08, 0xd0, 0x81, 0x78, + 0x3a, 0x48, 0x40, 0x30, 0x82, 0x88, 0x91, 0x42, + 0x02, 0xd0, 0x00, 0x22, 0xba, 0x60, 0x81, 0x80, + 0x2a, 0x21, 0x20, 0x69, 0xf2, 0xf7, 0xbe, 0xf8, + 0x3c, 0x00, 0x00, 0x86, 0x01, 0x00, 0x00, 0x28, + 0x0d, 0xd0, 0x80, 0x78, 0xf1, 0x69, 0x33, 0x4a, + 0x81, 0x42, 0x08, 0xd0, 0x00, 0x21, 0xb9, 0x60, + 0xf0, 0x61, 0x10, 0x1c, 0xed, 0xf7, 0x09, 0xfb, + 0x2f, 0x48, 0xed, 0xf7, 0xfa, 0xfa, 0x38, 0x78, + 0x3b, 0x1c, 0x01, 0x28, 0x17, 0xd1, 0x02, 0x20, + 0x18, 0x70, 0x2a, 0x4f, 0x01, 0x23, 0x3b, 0x61, + 0x27, 0x4b, 0x03, 0xcd, 0x1c, 0x33, 0x08, 0x3d, + 0x02, 0x9a, 0x3c, 0x00, 0x3c, 0x86, 0x01, 0x00, + 0xed, 0xf7, 0xb0, 0xfa, 0x38, 0x1c, 0xed, 0xf7, + 0xd7, 0xf8, 0x32, 0x68, 0x00, 0x2a, 0x03, 0xd0, + 0x00, 0x21, 0x01, 0x20, 0xe7, 0xf7, 0xc4, 0xfe, + 0x00, 0xf0, 0xf4, 0xf9, 0x20, 0x1c, 0xf9, 0xf7, + 0xd5, 0xfb, 0x07, 0x1c, 0x11, 0xd1, 0x20, 0x1c, + 0xf9, 0xf7, 0x88, 0xfb, 0x07, 0x1c, 0x2e, 0xd0, + 0x01, 0x23, 0x3b, 0x61, 0x68, 0x89, 0x40, 0x21, + 0xc8, 0x53, 0x73, 0x68, 0x3c, 0x00, 0x78, 0x86, + 0x01, 0x00, 0x00, 0x2b, 0x04, 0xd0, 0x21, 0x1c, + 0x00, 0x20, 0x04, 0x9a, 0xe7, 0xf7, 0xac, 0xfe, + 0x01, 0x23, 0xfb, 0x62, 0x20, 0x69, 0x32, 0x21, + 0xf2, 0xf7, 0x75, 0xf8, 0x05, 0x1c, 0x20, 0x69, + 0x01, 0x21, 0xf2, 0xf7, 0x70, 0xf8, 0x0e, 0x4e, + 0x01, 0x1c, 0x2a, 0x1c, 0x30, 0x1c, 0xed, 0xf7, + 0xc0, 0xfb, 0x00, 0x28, 0x0e, 0xd1, 0x32, 0x21, + 0x20, 0x69, 0xf2, 0xf7, 0x64, 0xf8, 0x3c, 0x00, + 0xb4, 0x86, 0x01, 0x00, 0x05, 0x1c, 0x20, 0x69, + 0x01, 0x21, 0xf2, 0xf7, 0x5f, 0xf8, 0x01, 0x1c, + 0x3b, 0x1c, 0x2a, 0x1c, 0x30, 0x1c, 0xed, 0xf7, + 0xd7, 0xfa, 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, + 0x7c, 0xd9, 0x01, 0x00, 0x40, 0xf8, 0x01, 0x00, + 0x20, 0xf7, 0x01, 0x00, 0x02, 0x1c, 0x08, 0x1c, + 0x80, 0x2a, 0x80, 0xb5, 0x06, 0xd0, 0x81, 0x2a, + 0x03, 0xd0, 0x04, 0x21, 0x0b, 0x20, 0xe8, 0xf7, + 0x3c, 0x00, 0xf0, 0x86, 0x01, 0x00, 0xd9, 0xfd, + 0x80, 0xbd, 0xff, 0xf7, 0x5c, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x03, 0x48, 0x81, 0x78, 0xff, 0x29, + 0x01, 0xd0, 0x00, 0x79, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x80, 0xf8, 0x01, 0x00, 0x30, 0xb5, + 0x89, 0xb0, 0x00, 0x93, 0x0e, 0x4d, 0x13, 0x1c, + 0x04, 0x1c, 0x2a, 0x1c, 0xec, 0xf7, 0x25, 0xfd, + 0x01, 0xa9, 0x06, 0xa8, 0xa2, 0x68, 0xec, 0xf7, + 0xce, 0xfe, 0x3c, 0x00, 0x2c, 0x87, 0x01, 0x00, + 0x01, 0xaa, 0x06, 0xa9, 0x28, 0x1c, 0x63, 0x6a, + 0xed, 0xf7, 0x44, 0xfa, 0x04, 0x1c, 0x01, 0x28, + 0x04, 0xd1, 0x28, 0x1c, 0xed, 0xf7, 0x2c, 0xf8, + 0x00, 0xf0, 0x4a, 0xf8, 0x20, 0x1c, 0x09, 0xb0, + 0x30, 0xbd, 0x00, 0x00, 0x20, 0xf7, 0x01, 0x00, + 0x80, 0xb5, 0xed, 0xf7, 0x2b, 0xf8, 0x00, 0xf0, + 0x7d, 0xf8, 0x02, 0x48, 0xed, 0xf7, 0x02, 0xfa, + 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x87, + 0x01, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0x28, 0x0b, 0xd1, 0x06, 0x48, 0xed, 0xf7, + 0xf8, 0xf9, 0x00, 0xf0, 0x6e, 0xf8, 0x01, 0x20, + 0xed, 0xf7, 0xeb, 0xfa, 0x03, 0x49, 0x03, 0x20, + 0xf9, 0xf7, 0x35, 0xfe, 0x80, 0xbd, 0x20, 0xf7, + 0x01, 0x00, 0x6d, 0x87, 0x01, 0x00, 0xb0, 0xb5, + 0x10, 0x4d, 0x04, 0x1c, 0x13, 0x1c, 0x2a, 0x1c, + 0x88, 0xb0, 0xec, 0xf7, 0x02, 0xfd, 0x3c, 0x00, + 0xa4, 0x87, 0x01, 0x00, 0x21, 0x1c, 0x0a, 0x31, + 0x06, 0x22, 0x28, 0x1d, 0xe7, 0xf7, 0xa4, 0xfe, + 0x69, 0x46, 0x05, 0xa8, 0x62, 0x69, 0xec, 0xf7, + 0x87, 0xfe, 0x28, 0x1c, 0xec, 0xf7, 0xee, 0xff, + 0x7f, 0x23, 0xdb, 0x43, 0x28, 0x1c, 0x6a, 0x46, + 0x05, 0xa9, 0xed, 0xf7, 0xf9, 0xf9, 0x00, 0xf0, + 0x1d, 0xf8, 0x08, 0xb0, 0xb0, 0xbd, 0x00, 0x00, + 0x20, 0xf7, 0x01, 0x00, 0x0a, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0xe0, 0x87, 0x01, 0x00, 0x01, 0x78, + 0x00, 0x29, 0x06, 0xd0, 0x02, 0x29, 0x01, 0xd0, + 0x05, 0x29, 0x07, 0xd1, 0x03, 0x21, 0x01, 0x70, + 0x80, 0xbd, 0x01, 0x21, 0x01, 0x70, 0x00, 0xf0, + 0x2e, 0xfa, 0x80, 0xbd, 0x03, 0x21, 0x0b, 0x20, + 0xe8, 0xf7, 0x4f, 0xfd, 0x80, 0xbd, 0x7c, 0xd9, + 0x01, 0x00, 0x09, 0x49, 0x80, 0xb5, 0x08, 0x78, + 0x00, 0x28, 0x06, 0xd0, 0x02, 0x28, 0x01, 0xd0, + 0x05, 0x28, 0x3c, 0x00, 0x1c, 0x88, 0x01, 0x00, + 0x05, 0xd1, 0x04, 0x20, 0x08, 0x70, 0x80, 0xbd, + 0xff, 0xf7, 0x38, 0xfd, 0x80, 0xbd, 0x02, 0x21, + 0x0b, 0x20, 0xe8, 0xf7, 0x39, 0xfd, 0x80, 0xbd, + 0x7c, 0xd9, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x0b, 0x20, 0x04, 0x4a, 0xfa, 0xf7, 0x82, 0xff, + 0xf6, 0xf7, 0x86, 0xfd, 0x02, 0x49, 0x08, 0x61, + 0x80, 0xbd, 0x00, 0x00, 0xdd, 0x86, 0x01, 0x00, + 0x7c, 0xd9, 0x01, 0x00, 0x3c, 0x00, 0x58, 0x88, + 0x01, 0x00, 0x0c, 0x48, 0x80, 0xb5, 0x01, 0x78, + 0x06, 0x29, 0x0e, 0xd2, 0x02, 0xa3, 0x5b, 0x5c, + 0x5b, 0x00, 0x9f, 0x44, 0x00, 0x00, 0x06, 0x03, + 0x07, 0x07, 0x07, 0x06, 0x00, 0x20, 0x00, 0xf0, + 0xc2, 0xf8, 0x80, 0xbd, 0x05, 0x21, 0x01, 0x70, + 0x80, 0xbd, 0x04, 0x21, 0x0b, 0x20, 0xe8, 0xf7, + 0x0e, 0xfd, 0x80, 0xbd, 0x00, 0x00, 0x7c, 0xd9, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x88, 0x01, 0x00, 0x10, 0xb5, 0x0d, 0x4b, + 0x04, 0x1c, 0x18, 0x1c, 0x10, 0x30, 0x00, 0x2c, + 0x08, 0xd0, 0xdb, 0x88, 0x5b, 0x04, 0x5b, 0x0c, + 0x0b, 0x80, 0x80, 0x7b, 0x48, 0x80, 0x04, 0x20, + 0x10, 0x80, 0x08, 0xe0, 0xda, 0x88, 0x01, 0x24, + 0xe4, 0x03, 0x22, 0x40, 0x0c, 0x88, 0x22, 0x43, + 0xda, 0x80, 0x49, 0x88, 0x81, 0x73, 0x01, 0x20, + 0x10, 0xbd, 0x00, 0x00, 0x30, 0x00, 0x07, 0x00, + 0x3c, 0x00, 0xd0, 0x88, 0x01, 0x00, 0x70, 0xb5, + 0x10, 0x4e, 0x02, 0x1c, 0x00, 0x23, 0xf0, 0x56, + 0x00, 0x2a, 0x02, 0xd0, 0x08, 0x70, 0x01, 0x24, + 0x15, 0xe0, 0x00, 0x23, 0xcd, 0x56, 0x85, 0x42, + 0x01, 0xd1, 0x01, 0x20, 0x70, 0xbd, 0x28, 0x1c, + 0x00, 0xf0, 0x5f, 0xf9, 0x04, 0x1c, 0x0a, 0xd0, + 0x07, 0x48, 0x35, 0x70, 0x00, 0x68, 0x00, 0x28, + 0x03, 0xd0, 0x00, 0x21, 0x0a, 0x20, 0xf9, 0xf7, + 0x28, 0xfd, 0x3c, 0x00, 0x0c, 0x89, 0x01, 0x00, + 0x00, 0xf0, 0x16, 0xfa, 0x20, 0x1c, 0x70, 0xbd, + 0xf4, 0x6b, 0x01, 0x00, 0x3c, 0xd9, 0x01, 0x00, + 0x03, 0x1c, 0x08, 0x1c, 0x00, 0x2b, 0x80, 0xb5, + 0x06, 0xd0, 0x04, 0x21, 0x11, 0x80, 0x04, 0x22, + 0x04, 0x49, 0xe7, 0xf7, 0xe3, 0xfd, 0x02, 0xe0, + 0x00, 0x68, 0x00, 0xf0, 0xcf, 0xf9, 0x01, 0x20, + 0x80, 0xbd, 0x00, 0x00, 0xf4, 0x74, 0x01, 0x00, + 0x10, 0xb5, 0xff, 0xf7, 0x3c, 0x00, 0x48, 0x89, + 0x01, 0x00, 0x97, 0xfb, 0xff, 0xf7, 0x89, 0xfc, + 0x04, 0x1c, 0xff, 0xf7, 0xb8, 0xfb, 0xff, 0xf7, + 0x84, 0xfc, 0x00, 0x2c, 0x02, 0xd1, 0x01, 0x28, + 0x00, 0xd1, 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, + 0x00, 0x00, 0xf8, 0xb5, 0x20, 0x4f, 0x04, 0x1c, + 0x78, 0x78, 0x0e, 0x1c, 0x02, 0x28, 0x2e, 0xd0, + 0x1e, 0x4a, 0xf9, 0x68, 0x91, 0x61, 0x14, 0x23, + 0x1d, 0x49, 0x58, 0x43, 0x40, 0x18, 0x3c, 0x00, + 0x84, 0x89, 0x01, 0x00, 0x41, 0x7b, 0xb8, 0x78, + 0xf8, 0xf7, 0x14, 0xfe, 0x00, 0xf0, 0x8a, 0xf9, + 0x00, 0x25, 0x04, 0xe0, 0x00, 0x21, 0xb8, 0x78, + 0xf8, 0xf7, 0x0c, 0xfe, 0x01, 0x35, 0x78, 0x78, + 0x14, 0x23, 0x14, 0x49, 0x58, 0x43, 0x40, 0x18, + 0x80, 0x7a, 0xa8, 0x42, 0xf2, 0xdc, 0x00, 0x25, + 0x08, 0xe0, 0x00, 0x21, 0xb8, 0x78, 0xf8, 0xf7, + 0xfd, 0xfd, 0x0f, 0x48, 0x00, 0x68, 0x20, 0x70, + 0x3c, 0x00, 0xc0, 0x89, 0x01, 0x00, 0x01, 0x34, + 0x01, 0x35, 0xb5, 0x42, 0xf4, 0xdb, 0x09, 0x4a, + 0xf8, 0x68, 0x50, 0x61, 0x78, 0x78, 0x02, 0x28, + 0x06, 0xd1, 0xb8, 0x68, 0x32, 0x1c, 0x21, 0x1c, + 0x00, 0x04, 0x00, 0x0c, 0xff, 0xf7, 0x25, 0xfd, + 0xb8, 0x68, 0x80, 0x19, 0xb8, 0x60, 0xf8, 0xbd, + 0x00, 0x00, 0x40, 0xd9, 0x01, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x64, 0x8d, 0x01, 0x00, 0x30, 0x20, + 0x07, 0x00, 0x3c, 0x00, 0xfc, 0x89, 0x01, 0x00, + 0x70, 0xb5, 0x06, 0x1c, 0x0c, 0x4d, 0x00, 0x24, + 0x2c, 0x70, 0xff, 0xf7, 0x39, 0xfc, 0x0a, 0x48, + 0x18, 0x21, 0x1c, 0x30, 0xac, 0x60, 0xe7, 0xf7, + 0x43, 0xfd, 0x08, 0x48, 0x44, 0x61, 0xf9, 0xf7, + 0x63, 0xf9, 0x00, 0x2e, 0x06, 0xd1, 0x06, 0x48, + 0x29, 0x69, 0xf6, 0xf7, 0xa7, 0xfc, 0x00, 0x20, + 0xec, 0xf7, 0xb0, 0xfe, 0x70, 0xbd, 0x00, 0x00, + 0x7c, 0xd9, 0x01, 0x00, 0x3c, 0x00, 0x38, 0x8a, + 0x01, 0x00, 0x20, 0xf7, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0x30, 0xb5, 0x12, 0x4c, 0x85, 0xb0, + 0x20, 0x68, 0x00, 0x28, 0x1c, 0xd0, 0x0f, 0x48, + 0x14, 0x38, 0x80, 0x68, 0x00, 0x28, 0x01, 0xd1, + 0xff, 0xf7, 0xc1, 0xfb, 0x20, 0x68, 0x00, 0x23, + 0x00, 0x68, 0x01, 0xaa, 0x04, 0x30, 0x01, 0x21, + 0xec, 0xf7, 0xd1, 0xfd, 0x08, 0x49, 0x08, 0x4a, + 0x08, 0x31, 0x0c, 0x31, 0x00, 0x92, 0x3c, 0x00, + 0x74, 0x8a, 0x01, 0x00, 0x03, 0xc9, 0x00, 0xab, + 0x45, 0x18, 0x99, 0x7b, 0x01, 0x9a, 0x20, 0x68, + 0x2b, 0x1c, 0xf2, 0xf7, 0x2b, 0xfe, 0x05, 0xb0, + 0x30, 0xbd, 0x00, 0x00, 0x90, 0xd9, 0x01, 0x00, + 0x29, 0x81, 0x01, 0x00, 0x10, 0xb5, 0x13, 0x4c, + 0x14, 0x23, 0x60, 0x70, 0x58, 0x43, 0x12, 0x4b, + 0xc1, 0x18, 0x8a, 0x88, 0xe2, 0x80, 0x18, 0x58, + 0xe0, 0x60, 0x08, 0x7a, 0xa0, 0x70, 0xff, 0x28, + 0x3c, 0x00, 0xb0, 0x8a, 0x01, 0x00, 0x12, 0xd0, + 0x00, 0x22, 0x08, 0x21, 0x0d, 0x4b, 0xf8, 0xf7, + 0x22, 0xfd, 0x00, 0x22, 0x02, 0x20, 0xe1, 0x68, + 0xef, 0xf7, 0xbd, 0xfe, 0x0a, 0x49, 0xe0, 0x68, + 0x48, 0x61, 0x4a, 0x68, 0x02, 0x43, 0x4a, 0x60, + 0x8a, 0x68, 0x10, 0x43, 0x88, 0x60, 0x60, 0x78, + 0x02, 0x28, 0x01, 0xd1, 0xff, 0xf7, 0xdf, 0xfc, + 0x10, 0xbd, 0x40, 0xd9, 0x01, 0x00, 0x64, 0x8d, + 0x01, 0x00, 0x3c, 0x00, 0xec, 0x8a, 0x01, 0x00, + 0xb8, 0x0b, 0x00, 0x00, 0x10, 0x00, 0x07, 0x00, + 0xfe, 0x30, 0x00, 0x06, 0x00, 0x0e, 0x06, 0x21, + 0x15, 0x4b, 0x41, 0x43, 0x58, 0x5c, 0x82, 0x06, + 0x14, 0x48, 0x92, 0x0e, 0x42, 0x71, 0xc9, 0x18, + 0x4a, 0x78, 0xd2, 0x06, 0xd2, 0x0e, 0x02, 0x71, + 0x42, 0x78, 0x0c, 0x23, 0x1a, 0x43, 0x42, 0x70, + 0x42, 0x78, 0x8b, 0x78, 0x92, 0x08, 0x92, 0x00, + 0x9b, 0x07, 0x9b, 0x0f, 0x3c, 0x00, 0x28, 0x8b, + 0x01, 0x00, 0x1a, 0x43, 0x42, 0x70, 0x02, 0x78, + 0xc0, 0x23, 0x9a, 0x43, 0x40, 0x32, 0x02, 0x70, + 0x02, 0x78, 0x38, 0x23, 0x1a, 0x43, 0x02, 0x70, + 0x02, 0x78, 0xc9, 0x78, 0x04, 0x23, 0x9a, 0x43, + 0x89, 0x00, 0x19, 0x40, 0x11, 0x43, 0x01, 0x70, + 0x01, 0x20, 0x70, 0x47, 0x00, 0x00, 0xd8, 0x8d, + 0x01, 0x00, 0x88, 0x00, 0x07, 0x00, 0x8f, 0xb5, + 0x00, 0x20, 0x02, 0x90, 0x03, 0x90, 0x3c, 0x00, + 0x64, 0x8b, 0x01, 0x00, 0x07, 0x48, 0x02, 0xaa, + 0x03, 0xa9, 0x00, 0x91, 0x01, 0x92, 0x43, 0x89, + 0x02, 0x89, 0x03, 0xc8, 0xff, 0xf7, 0xd4, 0xfb, + 0x03, 0x98, 0x02, 0x99, 0xff, 0xf7, 0x04, 0xfc, + 0x8f, 0xbd, 0x00, 0x00, 0x04, 0x8e, 0x01, 0x00, + 0x08, 0x49, 0x4a, 0x78, 0x00, 0x2a, 0x03, 0xd1, + 0x88, 0x80, 0x00, 0x20, 0x88, 0x60, 0x70, 0x47, + 0x14, 0x23, 0x5a, 0x43, 0x04, 0x4b, 0xd2, 0x18, + 0x3c, 0x00, 0xa0, 0x8b, 0x01, 0x00, 0xd2, 0x88, + 0x42, 0x43, 0xc8, 0x88, 0x42, 0x43, 0x8a, 0x60, + 0x70, 0x47, 0x40, 0xd9, 0x01, 0x00, 0x64, 0x8d, + 0x01, 0x00, 0xf8, 0xb5, 0x25, 0x4e, 0x04, 0x1c, + 0x30, 0x7a, 0x40, 0x08, 0x40, 0x00, 0x30, 0x72, + 0xb0, 0x7a, 0x00, 0x20, 0xb0, 0x72, 0x01, 0x27, + 0x01, 0x2c, 0x20, 0x4d, 0x01, 0xd0, 0xfc, 0x42, + 0x13, 0xd1, 0x30, 0x7b, 0x38, 0x43, 0x30, 0x73, + 0x00, 0x22, 0x3c, 0x00, 0xdc, 0x8b, 0x01, 0x00, + 0x21, 0x1c, 0x00, 0x20, 0xff, 0xf7, 0x6e, 0xfb, + 0x63, 0x1c, 0x01, 0xd1, 0x3f, 0x21, 0xe9, 0x73, + 0xb1, 0x7a, 0xa0, 0x22, 0x11, 0x43, 0xb1, 0x72, + 0x31, 0x7a, 0x39, 0x43, 0x31, 0x72, 0xf8, 0xbd, + 0x30, 0x7b, 0x40, 0x08, 0x40, 0x00, 0x30, 0x73, + 0x01, 0x22, 0x21, 0x1c, 0x01, 0x20, 0xff, 0xf7, + 0x59, 0xfb, 0x01, 0x20, 0x00, 0x21, 0xe9, 0x73, + 0xb1, 0x7a, 0x02, 0x22, 0x3c, 0x00, 0x18, 0x8c, + 0x01, 0x00, 0x11, 0x43, 0xb1, 0x72, 0xb1, 0x7a, + 0x04, 0x22, 0x11, 0x43, 0xb1, 0x72, 0xb1, 0x7a, + 0x30, 0x22, 0x11, 0x43, 0xb1, 0x72, 0x31, 0x7a, + 0x39, 0x43, 0x31, 0x72, 0x08, 0x49, 0x4a, 0x68, + 0x80, 0x23, 0x9a, 0x43, 0x4a, 0x60, 0x0a, 0x68, + 0x1a, 0x43, 0x0a, 0x60, 0x31, 0x7b, 0x39, 0x43, + 0x31, 0x73, 0xd7, 0xe7, 0x00, 0x00, 0x88, 0x00, + 0x07, 0x00, 0x40, 0x00, 0x07, 0x00, 0x3c, 0x00, + 0x54, 0x8c, 0x01, 0x00, 0x6c, 0x00, 0x07, 0x00, + 0xb0, 0xb5, 0x0e, 0x4d, 0x0e, 0x48, 0x29, 0x69, + 0xf6, 0xf7, 0x9e, 0xfb, 0x0d, 0x48, 0xec, 0xf7, + 0x93, 0xfd, 0x0d, 0x48, 0x09, 0x4c, 0x00, 0x88, + 0x1c, 0x34, 0xa0, 0x82, 0xf1, 0xf7, 0x5a, 0xff, + 0x20, 0x61, 0xfa, 0xf7, 0x97, 0xf8, 0x02, 0x1c, + 0x23, 0x1c, 0x00, 0x21, 0x00, 0x20, 0xec, 0xf7, + 0x8b, 0xff, 0x32, 0x20, 0xe8, 0x60, 0xff, 0xf7, + 0x3c, 0x00, 0x90, 0x8c, 0x01, 0x00, 0xa5, 0xfa, + 0xb0, 0xbd, 0x7c, 0xd9, 0x01, 0x00, 0x34, 0x63, + 0x01, 0x00, 0xdd, 0x84, 0x01, 0x00, 0x20, 0xf7, + 0x01, 0x00, 0xb0, 0xb5, 0x0a, 0x4d, 0x68, 0x78, + 0x00, 0x28, 0x0e, 0xd0, 0x14, 0x23, 0x08, 0x49, + 0x58, 0x43, 0x40, 0x18, 0x44, 0x7a, 0x06, 0xe0, + 0xa8, 0x68, 0xe0, 0x40, 0x01, 0x06, 0x09, 0x0e, + 0xa8, 0x78, 0xf8, 0xf7, 0x76, 0xfc, 0x08, 0x3c, + 0xf6, 0xd5, 0x3c, 0x00, 0xcc, 0x8c, 0x01, 0x00, + 0xb0, 0xbd, 0x00, 0x00, 0x40, 0xd9, 0x01, 0x00, + 0x64, 0x8d, 0x01, 0x00, 0x01, 0x1c, 0x14, 0x48, + 0xb0, 0xb5, 0x01, 0x60, 0x13, 0x48, 0x02, 0x7f, + 0x02, 0x23, 0x9a, 0x43, 0x02, 0x77, 0x02, 0x7f, + 0x01, 0x24, 0x22, 0x43, 0x02, 0x77, 0x10, 0x4d, + 0x00, 0x29, 0x0c, 0xd0, 0x01, 0x22, 0x00, 0x21, + 0x03, 0x20, 0xef, 0xf7, 0x9f, 0xfd, 0x0d, 0x49, + 0x48, 0x7c, 0xa0, 0x43, 0x3c, 0x00, 0x08, 0x8d, + 0x01, 0x00, 0x48, 0x74, 0x68, 0x7a, 0x20, 0x43, + 0x68, 0x72, 0xb0, 0xbd, 0x01, 0x7f, 0x21, 0x43, + 0x01, 0x77, 0x68, 0x7a, 0x40, 0x08, 0x40, 0x00, + 0x68, 0x72, 0x01, 0x22, 0x00, 0x21, 0x03, 0x20, + 0xef, 0xf7, 0xb1, 0xfd, 0xb0, 0xbd, 0xf4, 0x74, + 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, 0x88, 0x00, + 0x07, 0x00, 0x10, 0x00, 0x07, 0x00, 0x10, 0xb5, + 0x07, 0x4c, 0x21, 0x1c, 0x00, 0x20, 0x3c, 0x00, + 0x44, 0x8d, 0x01, 0x00, 0xf9, 0xf7, 0x56, 0xfb, + 0x05, 0x48, 0x00, 0x23, 0xc0, 0x56, 0x01, 0x28, + 0x03, 0xdd, 0x21, 0x1c, 0x00, 0x20, 0xf9, 0xf7, + 0x19, 0xfb, 0x10, 0xbd, 0x65, 0x1a, 0x00, 0x00, + 0xf4, 0x6b, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, + 0x08, 0x01, 0x01, 0x00, 0x02, 0x18, 0x04, 0xff, + 0x82, 0xe8, 0xd7, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, + 0x3c, 0x00, 0x80, 0x8d, 0x01, 0x00, 0x00, 0x18, + 0x00, 0x06, 0x02, 0x03, 0x05, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, + 0x01, 0x00, 0xff, 0x10, 0x00, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x20, 0x00, 0x01, 0x00, 0x02, 0x10, + 0x00, 0x06, 0x02, 0x03, 0x05, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x0c, + 0x0d, 0x0e, 0x3c, 0x00, 0xbc, 0x8d, 0x01, 0x00, + 0xff, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1b, + 0x1c, 0x1d, 0xff, 0x1a, 0x11, 0x13, 0x12, 0x0f, + 0x10, 0xff, 0x02, 0x00, 0xff, 0x01, 0x03, 0x09, + 0x0a, 0x0b, 0x00, 0x00, 0x30, 0x0d, 0x02, 0x00, + 0x00, 0x00, 0x28, 0x0e, 0x03, 0x00, 0x00, 0x00, + 0x1e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x30, 0x0d, + 0x02, 0x01, 0x00, 0x00, 0x1e, 0x0c, 0x00, 0x01, + 0x00, 0x00, 0x23, 0x0d, 0x3c, 0x00, 0xf8, 0x8d, + 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x1d, 0x0d, + 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfe, + 0xfb, 0x6d, 0x00, 0x00, 0x80, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x8e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x8e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x8e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x8e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x8f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x8f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x8f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x8f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x90, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x90, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x90, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x90, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0x91, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0x91, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0x91, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0x91, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0x91, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0x92, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0x92, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0x92, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0x92, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0x93, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0x93, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0x93, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0x93, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0x94, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0x94, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0x94, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0x94, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0x95, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0x95, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0x95, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0x95, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0x95, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0x96, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0x96, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0x96, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0x96, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0x97, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0x97, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0x97, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0x97, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0x98, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0x98, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0x98, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0x98, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0x98, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0x99, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0x99, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0x99, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0x99, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0x9a, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0x9a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0x9a, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0x9a, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0x9b, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0x9b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0x9b, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0x9b, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0x9c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0x9c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0x9c, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0x9c, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x9c, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0x9d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0x9d, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0x9d, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x9d, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0x9e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0x9e, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0x9e, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0x9e, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0x9f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0x9f, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0x9f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0x9f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xa0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xa0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xa0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xa0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xa0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xa1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xa1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xa1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xa1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xa2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xa2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xa2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xa2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xa3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xa3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xa3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xa3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xa4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xa4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xa4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xa4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xa4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xa5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xa5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xa5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xa5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xa6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xa6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xa6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xa6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xa7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xa7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xa7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xa7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xa7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xa8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xa8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xa8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xa8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xa9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xa9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xa9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xa9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xaa, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xaa, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xaa, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xaa, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xab, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xab, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xab, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xab, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xab, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xac, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xac, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xac, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xac, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xad, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xad, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xad, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xad, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xae, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xae, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xae, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xae, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xaf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xaf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xaf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xaf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xaf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xb0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xb0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xb0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xb0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xb1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xb1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xb1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xb1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xb2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xb2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xb2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xb2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xb3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xb3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xb3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xb3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xb3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xb4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xb4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xb4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xb4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xb5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xb5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xb5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xb5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xb6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xb6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xb6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xb6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xb6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xb7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xb7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xb7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xb7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xb8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xb8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xb8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xb8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xb9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xb9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xb9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xb9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xba, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xba, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xba, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xba, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xba, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xbb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xbb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xbb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xbb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xbc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xbc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xbc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xbc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xbd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xbd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xbd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xbd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xbe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xbe, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xbe, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xbe, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xbe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xbf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xbf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xbf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xbf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xc0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xc0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xc0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xc0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xc1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xc1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xc1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xc1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xc2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xc2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xc2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xc2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xc2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xc3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xc3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xc3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xc3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xc4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xc4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xc4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xc4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xc5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xc5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xc5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xc5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xc5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xc6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xc6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xc6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xc6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xc7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xc7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xc7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xc7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xc8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xc8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xc8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xc8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xc9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xc9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xc9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xc9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xc9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xca, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xca, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xca, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xca, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xcb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xcb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xcb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xcb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xcc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xcc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xcc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xcc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xcd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xcd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xcd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xcd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xcd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xce, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xce, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xce, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xce, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xcf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xcf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xcf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xcf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xd0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xd0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xd0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xd0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xd1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xd1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xd1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xd1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xd1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xd2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xd2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xd2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xd2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xd3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xd3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xd3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xd3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xd4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xd4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xd4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xd4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xd4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xd5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xd5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xd5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xd5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xd6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xd6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xd6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xd6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xd7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xd7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xd7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xd7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xd8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xd8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xd8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xd8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xd8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xd9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xd9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xd9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xd9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xda, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xda, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xda, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xda, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xdb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xdb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xdb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xdc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xdc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xdc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xdc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xdc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xdd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xdd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xdd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xdd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xde, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xde, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xde, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xde, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xdf, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xdf, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xdf, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xdf, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xe0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xe0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xe0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xe0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xe0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xe1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xe1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xe1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xe1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xe2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xe2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xe2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xe2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xe3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xe3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xe3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xe3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xe3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xe4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xe4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xe4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xe4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xe5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xe5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xe5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xe5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xe6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xe6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xe6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xe6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xe7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xe7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xe7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xe7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xe7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xe8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xe8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xe8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xe8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xe9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xe9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xe9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xe9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xea, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xea, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xea, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xea, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xeb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xeb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xeb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xeb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xeb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xec, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xec, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xec, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xec, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xed, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xed, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xed, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xed, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xee, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xee, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xee, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xee, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xef, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xef, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xef, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xef, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xef, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xf0, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x68, 0xf0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xa4, 0xf0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xe0, 0xf0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x1c, 0xf1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x58, 0xf1, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x94, 0xf1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xd0, 0xf1, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xf2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x48, 0xf2, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x84, 0xf2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xc0, 0xf2, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xfc, 0xf2, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x38, 0xf3, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x74, 0xf3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xb0, 0xf3, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xec, 0xf3, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x28, 0xf4, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x64, 0xf4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xa0, 0xf4, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xdc, 0xf4, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x18, 0xf5, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x54, 0xf5, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x90, 0xf5, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xcc, 0xf5, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x08, 0xf6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x44, 0xf6, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x80, 0xf6, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xbc, 0xf6, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xf8, 0xf6, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x34, 0xf7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x70, 0xf7, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0xac, 0xf7, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0xf7, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x24, 0xf8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x60, 0xf8, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x9c, 0xf8, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xd8, 0xf8, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x14, 0xf9, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x50, 0xf9, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x8c, 0xf9, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xc8, 0xf9, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x04, 0xfa, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x40, 0xfa, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x7c, 0xfa, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xb8, 0xfa, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xf4, 0xfa, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x30, 0xfb, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x6c, 0xfb, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xa8, 0xfb, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xe4, 0xfb, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x20, 0xfc, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x5c, 0xfc, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x98, 0xfc, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xd4, 0xfc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x10, 0xfd, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x4c, 0xfd, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x88, 0xfd, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xc4, 0xfd, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0x00, 0xfe, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x3c, 0xfe, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x78, 0xfe, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0xb4, 0xfe, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3c, 0x00, 0xf0, 0xfe, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x00, 0x2c, 0xff, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x68, 0xff, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, + 0x00, 0x10, 0x04, 0x00, 0x70, 0xb5, 0x2b, 0x48, + 0x06, 0x21, 0x81, 0x75, 0xc1, 0x75, 0x01, 0x7e, + 0x49, 0x08, 0x49, 0x00, 0x01, 0x76, 0x01, 0x7e, + 0x02, 0x22, 0x91, 0x43, 0x01, 0x76, 0x26, 0x49, + 0x0b, 0x78, 0x5b, 0x08, 0x5b, 0x00, 0x0b, 0x70, + 0x04, 0x23, 0x8b, 0x70, 0x0c, 0x23, 0x43, 0x76, + 0x20, 0x23, 0x03, 0x75, 0x1a, 0x24, 0x44, 0x75, + 0x24, 0x24, 0x84, 0x76, 0x10, 0x24, 0xc4, 0x76, + 0x3c, 0x00, 0x3c, 0x10, 0x04, 0x00, 0x2a, 0x25, + 0x4d, 0x70, 0x05, 0x7a, 0x30, 0x26, 0xb5, 0x43, + 0x20, 0x35, 0x05, 0x72, 0x85, 0x7a, 0x6d, 0x08, + 0x6d, 0x00, 0x85, 0x72, 0x85, 0x7a, 0x95, 0x43, + 0x85, 0x72, 0x85, 0x7a, 0x04, 0x26, 0x35, 0x43, + 0x85, 0x72, 0x85, 0x7a, 0x08, 0x26, 0x35, 0x43, + 0x85, 0x72, 0x85, 0x7a, 0xa5, 0x43, 0x85, 0x72, + 0x05, 0x7b, 0x2c, 0x43, 0x04, 0x73, 0x04, 0x7b, + 0x1c, 0x43, 0x3c, 0x00, 0x78, 0x10, 0x04, 0x00, + 0x04, 0x73, 0x04, 0x7b, 0x40, 0x25, 0x2c, 0x43, + 0x04, 0x73, 0x84, 0x7a, 0x23, 0x43, 0x83, 0x72, + 0x83, 0x7a, 0xab, 0x43, 0x83, 0x72, 0x03, 0x7b, + 0x80, 0x24, 0x23, 0x43, 0x03, 0x73, 0x08, 0x78, + 0x90, 0x43, 0x08, 0x70, 0x08, 0x78, 0x01, 0x22, + 0x10, 0x43, 0x08, 0x70, 0x08, 0x78, 0x04, 0x22, + 0x90, 0x43, 0x08, 0x70, 0x70, 0xbd, 0x00, 0x00, + 0x0c, 0x80, 0x07, 0x00, 0x3c, 0x00, 0xb4, 0x10, + 0x04, 0x00, 0x80, 0x80, 0x07, 0x00, 0x01, 0x49, + 0x04, 0x20, 0x48, 0x73, 0x70, 0x47, 0x40, 0x80, + 0x07, 0x00, 0x03, 0x49, 0x80, 0xb5, 0x00, 0x20, + 0x08, 0x80, 0x00, 0xf0, 0x0a, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xfc, 0x6b, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x67, 0xfb, + 0x80, 0xbd, 0x80, 0xb5, 0x0a, 0x49, 0x18, 0x20, + 0xc1, 0xf7, 0x3b, 0xfa, 0x09, 0x49, 0x3c, 0x00, + 0xf0, 0x10, 0x04, 0x00, 0x02, 0x20, 0xc1, 0xf7, + 0x37, 0xfa, 0x08, 0x49, 0x1f, 0x20, 0xc1, 0xf7, + 0x33, 0xfa, 0x07, 0x49, 0x1c, 0x20, 0xc1, 0xf7, + 0x2f, 0xfa, 0x06, 0x49, 0x03, 0x20, 0xc1, 0xf7, + 0x2b, 0xfa, 0x80, 0xbd, 0x99, 0x2a, 0x00, 0x00, + 0x41, 0x25, 0x00, 0x00, 0x55, 0x25, 0x00, 0x00, + 0x5d, 0x25, 0x00, 0x00, 0x39, 0x25, 0x00, 0x00, + 0x80, 0xb5, 0xbf, 0xf7, 0x91, 0xfd, 0x80, 0xbd, + 0x3c, 0x00, 0x2c, 0x11, 0x04, 0x00, 0x80, 0xb5, + 0x05, 0x4a, 0x05, 0x49, 0x0a, 0x20, 0xbf, 0xf7, + 0x4e, 0xff, 0x01, 0x20, 0x04, 0x49, 0x80, 0x02, + 0x08, 0x60, 0x48, 0x60, 0x80, 0xbd, 0xb4, 0x74, + 0x01, 0x00, 0xb1, 0x64, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x91, 0xfe, + 0x80, 0xbd, 0x80, 0xb5, 0x05, 0x4a, 0x05, 0x49, + 0x1b, 0x20, 0xbf, 0xf7, 0x38, 0xff, 0x01, 0x20, + 0x04, 0x49, 0x3c, 0x00, 0x68, 0x11, 0x04, 0x00, + 0xc0, 0x06, 0x08, 0x60, 0x48, 0x60, 0x80, 0xbd, + 0xb8, 0x74, 0x01, 0x00, 0x2d, 0x6e, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0x80, 0xb5, 0x04, 0x48, + 0x00, 0xf0, 0x80, 0xfe, 0x03, 0x49, 0x00, 0x20, + 0x48, 0x60, 0x88, 0x60, 0x80, 0xbd, 0x00, 0x00, + 0x41, 0x4b, 0x00, 0x00, 0xbc, 0x74, 0x01, 0x00, + 0x80, 0xb5, 0xc5, 0xf7, 0xd5, 0xfe, 0xce, 0xf7, + 0xd9, 0xf8, 0x03, 0x49, 0x3c, 0x00, 0xa4, 0x11, + 0x04, 0x00, 0x08, 0x60, 0x03, 0x49, 0x0a, 0x20, + 0xd1, 0xf7, 0xef, 0xf8, 0x80, 0xbd, 0xbc, 0x74, + 0x01, 0x00, 0x49, 0x6e, 0x00, 0x00, 0x80, 0xb5, + 0x01, 0x22, 0x20, 0x21, 0x06, 0x20, 0xc8, 0xf7, + 0x56, 0xfc, 0xbf, 0xf7, 0x70, 0xfe, 0x03, 0x49, + 0x00, 0x20, 0x08, 0x60, 0x20, 0x21, 0x02, 0x48, + 0xbf, 0xf7, 0x63, 0xf9, 0x80, 0xbd, 0xcc, 0x5c, + 0x01, 0x00, 0x64, 0x6d, 0x01, 0x00, 0x3c, 0x00, + 0xe0, 0x11, 0x04, 0x00, 0x08, 0x48, 0x80, 0xb5, + 0x00, 0x68, 0x00, 0x28, 0x05, 0xd0, 0x06, 0x48, + 0x54, 0x30, 0x42, 0x6a, 0x00, 0x21, 0xbf, 0xf7, + 0xf3, 0xf8, 0x04, 0x4a, 0x04, 0x49, 0x03, 0x20, + 0xbf, 0xf7, 0xac, 0xfd, 0x80, 0xbd, 0x00, 0x00, + 0x50, 0x6d, 0x01, 0x00, 0x89, 0x98, 0x00, 0x00, + 0x91, 0x98, 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x03, 0xf8, 0x00, 0xf0, 0x19, 0xf8, 0x80, 0xbd, + 0x3c, 0x00, 0x1c, 0x12, 0x04, 0x00, 0x10, 0xb5, + 0x09, 0x4c, 0x60, 0x21, 0x20, 0x1c, 0xbf, 0xf7, + 0x3a, 0xf9, 0x00, 0x20, 0xc0, 0x43, 0xa0, 0x60, + 0x20, 0x60, 0xff, 0x20, 0x02, 0x30, 0xe0, 0x84, + 0x20, 0x22, 0x20, 0x1c, 0x40, 0x30, 0x02, 0x49, + 0xbf, 0xf7, 0x5b, 0xf9, 0x10, 0xbd, 0x00, 0x10, + 0x07, 0x00, 0x70, 0x52, 0x01, 0x00, 0x00, 0x20, + 0x0a, 0x49, 0xc0, 0x43, 0x88, 0x60, 0x09, 0x4b, + 0x0a, 0x49, 0x3c, 0x00, 0x58, 0x12, 0x04, 0x00, + 0x00, 0x20, 0x82, 0x00, 0x01, 0x30, 0x00, 0x06, + 0x00, 0x0e, 0x20, 0x28, 0x99, 0x50, 0xf8, 0xd3, + 0x06, 0x49, 0x04, 0x4a, 0x08, 0x1c, 0x10, 0x30, + 0x08, 0x3a, 0x03, 0xc2, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x10, 0x07, 0x00, 0xe0, 0x7e, 0x01, 0x00, + 0x75, 0x75, 0x00, 0x00, 0x00, 0xa0, 0x07, 0x00, + 0x04, 0x48, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x0c, 0x38, 0x3c, 0x00, 0x94, 0x12, + 0x04, 0x00, 0x01, 0x21, 0x41, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x70, 0x78, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x03, 0x48, 0x00, 0x21, 0x00, 0x22, + 0x00, 0x23, 0x0e, 0xc0, 0x08, 0xc0, 0x70, 0x47, + 0x00, 0x00, 0x88, 0x5a, 0x01, 0x00, 0x04, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x48, 0x61, 0x02, 0x48, + 0x40, 0x21, 0x1c, 0x30, 0xbf, 0xf7, 0xe9, 0xf8, + 0x80, 0xbd, 0xfc, 0x5a, 0x01, 0x00, 0x3c, 0x00, + 0xd0, 0x12, 0x04, 0x00, 0x80, 0xb5, 0xce, 0xf7, + 0x3f, 0xf8, 0x03, 0x49, 0x88, 0x61, 0x03, 0x49, + 0x03, 0x20, 0xd1, 0xf7, 0x55, 0xf8, 0x80, 0xbd, + 0xfc, 0x5a, 0x01, 0x00, 0x0d, 0x17, 0x01, 0x00, + 0x80, 0xb5, 0xc0, 0xf7, 0xa5, 0xf9, 0x80, 0xbd, + 0xfe, 0xb5, 0x6c, 0x49, 0x00, 0x20, 0x00, 0x90, + 0xc8, 0x78, 0x6b, 0x4c, 0x6b, 0x4f, 0x43, 0x07, + 0xc0, 0x06, 0xc0, 0x17, 0xdb, 0x0e, 0xe3, 0x58, + 0x3c, 0x00, 0x0c, 0x13, 0x04, 0x00, 0x01, 0x30, + 0x38, 0x62, 0x3b, 0x61, 0x08, 0x1c, 0x80, 0x78, + 0x66, 0x4e, 0x03, 0x22, 0x41, 0x07, 0xa0, 0x36, + 0x02, 0x96, 0x49, 0x0f, 0x31, 0x72, 0x89, 0x00, + 0x61, 0x58, 0x3c, 0x1c, 0x61, 0x61, 0x01, 0x91, + 0xc0, 0x06, 0xc0, 0x0f, 0x78, 0x62, 0x20, 0x1c, + 0x00, 0x27, 0x87, 0x61, 0x00, 0x20, 0x21, 0x1c, + 0xc8, 0x61, 0x59, 0x48, 0x59, 0x49, 0x00, 0x78, + 0x09, 0x79, 0x3c, 0x00, 0x48, 0x13, 0x04, 0x00, + 0x5a, 0x4c, 0x4e, 0x07, 0x76, 0x0f, 0x71, 0x1c, + 0x8c, 0x46, 0xb1, 0x00, 0x8e, 0x46, 0x56, 0x49, + 0x80, 0x31, 0x00, 0x28, 0x24, 0xd0, 0x52, 0x4f, + 0x01, 0x28, 0x7f, 0x78, 0x1a, 0xd0, 0x02, 0x28, + 0x71, 0xd1, 0x4f, 0x48, 0x00, 0x2f, 0x0c, 0xd0, + 0x01, 0x2f, 0x6c, 0xd1, 0x40, 0x79, 0x4d, 0x4d, + 0x40, 0x07, 0x40, 0x0f, 0x82, 0x00, 0xaa, 0x58, + 0x4b, 0x4d, 0x01, 0x30, 0x3c, 0x00, 0x84, 0x13, + 0x04, 0x00, 0xea, 0x61, 0xa0, 0x73, 0x04, 0x22, + 0x4b, 0x48, 0x48, 0x4d, 0xc8, 0x61, 0x4a, 0x48, + 0x00, 0x2f, 0x00, 0xd0, 0x4a, 0x48, 0x2f, 0x1c, + 0x11, 0xe0, 0x42, 0x48, 0x00, 0x2f, 0x55, 0xd1, + 0x07, 0x70, 0x02, 0x27, 0x47, 0x70, 0x3f, 0x48, + 0x40, 0x78, 0x00, 0x28, 0x10, 0xd0, 0x01, 0x28, + 0x01, 0xd0, 0x02, 0x28, 0x4a, 0xd1, 0x3f, 0x48, + 0x3d, 0x4f, 0xc8, 0x61, 0x3f, 0x48, 0x3c, 0x00, + 0xc0, 0x13, 0x04, 0x00, 0x88, 0x61, 0x3a, 0x49, + 0x70, 0x46, 0x08, 0x58, 0x35, 0x1c, 0xb8, 0x61, + 0x60, 0x46, 0x60, 0x73, 0x04, 0xe0, 0x3c, 0x48, + 0x02, 0x22, 0x88, 0x61, 0x3b, 0x48, 0xc8, 0x61, + 0x00, 0x20, 0x32, 0x49, 0x06, 0xe0, 0x0e, 0x18, + 0xb6, 0x78, 0x76, 0x07, 0x76, 0x0f, 0x04, 0x2e, + 0x2f, 0xd8, 0x01, 0x30, 0x90, 0x42, 0xf6, 0xd3, + 0xc8, 0x79, 0x2e, 0x4f, 0xc0, 0x07, 0xc0, 0x0f, + 0x3c, 0x00, 0xfc, 0x13, 0x04, 0x00, 0xf8, 0x60, + 0x33, 0x48, 0x41, 0x68, 0x19, 0x43, 0x41, 0x60, + 0x81, 0x68, 0x19, 0x43, 0x81, 0x60, 0x01, 0x9a, + 0xb9, 0x69, 0x8c, 0x46, 0x11, 0x43, 0xfa, 0x69, + 0x86, 0x68, 0x11, 0x43, 0x8e, 0x43, 0x86, 0x60, + 0x46, 0x68, 0x31, 0x43, 0x41, 0x60, 0x01, 0x99, + 0x0b, 0x43, 0x18, 0x1c, 0x61, 0x46, 0x08, 0x43, + 0x10, 0x43, 0x01, 0x1c, 0x00, 0x22, 0x02, 0x20, + 0xc7, 0xf7, 0x3c, 0x00, 0x38, 0x14, 0x04, 0x00, + 0x03, 0xfa, 0x1e, 0x4e, 0x40, 0x3e, 0x70, 0x78, + 0xc0, 0x08, 0xc0, 0x00, 0x28, 0x43, 0x70, 0x70, + 0x70, 0x1c, 0x01, 0x78, 0x00, 0xe0, 0x29, 0xe0, + 0x08, 0x25, 0xa9, 0x43, 0x01, 0x70, 0x01, 0x20, + 0xc0, 0x43, 0xb0, 0x80, 0x00, 0x21, 0x01, 0x20, + 0xcf, 0xf7, 0x6c, 0xfc, 0x30, 0x1c, 0x80, 0x30, + 0x81, 0x78, 0x09, 0x09, 0x09, 0x01, 0x81, 0x70, + 0x0f, 0x21, 0x01, 0x70, 0x3c, 0x00, 0x74, 0x14, + 0x04, 0x00, 0x16, 0x4a, 0x69, 0x04, 0x11, 0x60, + 0x51, 0x60, 0x02, 0x9e, 0x10, 0x21, 0x32, 0x7a, + 0x7b, 0x6a, 0x00, 0x2b, 0x00, 0xd1, 0x00, 0x21, + 0x11, 0x43, 0x21, 0x73, 0x81, 0x78, 0x29, 0x43, + 0x81, 0x70, 0xe0, 0x78, 0x01, 0x21, 0x08, 0x43, + 0xe0, 0x70, 0xd2, 0xf7, 0xf2, 0xf9, 0x01, 0x20, + 0x00, 0x90, 0x00, 0x98, 0xfe, 0xbd, 0xc0, 0x57, + 0x01, 0x00, 0x6c, 0x43, 0x01, 0x00, 0x3c, 0x00, + 0xb0, 0x14, 0x04, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x40, 0x90, 0x07, 0x00, 0xc9, 0x1d, 0x00, 0x00, + 0x81, 0x1d, 0x00, 0x00, 0xa5, 0x1d, 0x00, 0x00, + 0x99, 0x1d, 0x00, 0x00, 0xf1, 0x1d, 0x00, 0x00, + 0x10, 0x00, 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x03, 0x49, 0x00, 0x20, 0x88, 0x62, 0x08, 0x70, + 0x48, 0x70, 0x08, 0x71, 0x08, 0x62, 0x70, 0x47, + 0xac, 0x7e, 0x01, 0x00, 0x80, 0xb5, 0x01, 0x21, + 0x3c, 0x00, 0xec, 0x14, 0x04, 0x00, 0x00, 0x20, + 0xcd, 0xf7, 0x69, 0xff, 0x80, 0xbd, 0xb0, 0xb5, + 0x0f, 0x48, 0xc0, 0xf7, 0x18, 0xfc, 0x0e, 0x4d, + 0x03, 0x20, 0x28, 0x70, 0x0d, 0x49, 0x0d, 0x48, + 0x0c, 0x39, 0x48, 0x60, 0x0d, 0x48, 0x0a, 0x4c, + 0x88, 0x60, 0x40, 0x21, 0x18, 0x34, 0x20, 0x1c, + 0xbe, 0xf7, 0xc1, 0xff, 0xff, 0x21, 0x68, 0x68, + 0x09, 0x06, 0x08, 0x43, 0x20, 0x60, 0xff, 0x21, + 0x06, 0x22, 0x3c, 0x00, 0x28, 0x15, 0x04, 0x00, + 0x20, 0x1d, 0xbf, 0xf7, 0x79, 0xf8, 0x01, 0x20, + 0xe0, 0x60, 0xb0, 0xbd, 0xc0, 0xa8, 0x13, 0x0a, + 0x20, 0x6e, 0x01, 0x00, 0xc0, 0xa8, 0x13, 0x01, + 0xff, 0xff, 0xff, 0x00, 0x80, 0xb5, 0x02, 0x49, + 0x01, 0x20, 0xc8, 0xf7, 0x45, 0xff, 0x80, 0xbd, + 0x9d, 0x1c, 0x00, 0x00, 0x98, 0xb5, 0x0c, 0x4c, + 0x00, 0x20, 0x60, 0x60, 0xe0, 0x60, 0x0b, 0x4b, + 0x0b, 0x49, 0x82, 0x00, 0x3c, 0x00, 0x64, 0x15, + 0x04, 0x00, 0x01, 0x30, 0x20, 0x28, 0x99, 0x50, + 0xfa, 0xdb, 0x6a, 0x46, 0x09, 0x49, 0x05, 0x20, + 0xbf, 0xf7, 0x2f, 0xfd, 0x00, 0x20, 0xc0, 0x43, + 0x20, 0x60, 0x06, 0x49, 0x20, 0x20, 0x08, 0x60, + 0x48, 0x60, 0x98, 0xbd, 0x00, 0x00, 0x00, 0x40, + 0x07, 0x00, 0x30, 0x74, 0x01, 0x00, 0xa9, 0x75, + 0x00, 0x00, 0xb5, 0x9f, 0x00, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x05, 0x49, 0x00, 0x20, 0x3c, 0x00, + 0xa0, 0x15, 0x04, 0x00, 0x08, 0x60, 0x05, 0x48, + 0x81, 0x78, 0x28, 0x22, 0x91, 0x43, 0x81, 0x70, + 0x81, 0x78, 0x11, 0x43, 0x81, 0x70, 0x70, 0x47, + 0x78, 0x6e, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x41, 0x48, 0x10, 0xb5, + 0x00, 0x68, 0x02, 0x21, 0x88, 0x43, 0x3f, 0x49, + 0x08, 0x60, 0x08, 0x1c, 0x00, 0x68, 0x02, 0x21, + 0x08, 0x43, 0x3c, 0x49, 0x08, 0x60, 0x3c, 0x48, + 0x3c, 0x00, 0xdc, 0x15, 0x04, 0x00, 0x40, 0x68, + 0x80, 0x21, 0x88, 0x43, 0x3a, 0x49, 0x48, 0x60, + 0x08, 0x1c, 0x00, 0x68, 0x80, 0x21, 0x08, 0x43, + 0x37, 0x49, 0x08, 0x60, 0x37, 0x48, 0x01, 0x7a, + 0x01, 0x24, 0x21, 0x43, 0x01, 0x72, 0x01, 0x7a, + 0x02, 0x22, 0x11, 0x43, 0x01, 0x72, 0x01, 0x7a, + 0x04, 0x22, 0x91, 0x43, 0x01, 0x72, 0x01, 0x7a, + 0x08, 0x22, 0x11, 0x43, 0x01, 0x72, 0x01, 0x7b, + 0x21, 0x43, 0x3c, 0x00, 0x18, 0x16, 0x04, 0x00, + 0x01, 0x73, 0x01, 0x7b, 0x02, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x01, 0x7b, 0x04, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x01, 0x7b, 0x08, 0x22, 0x11, 0x43, + 0x01, 0x73, 0x2e, 0x21, 0x41, 0x73, 0x81, 0x7b, + 0x38, 0x22, 0x91, 0x43, 0x28, 0x31, 0x81, 0x73, + 0x20, 0x21, 0x41, 0x74, 0x81, 0x7b, 0xc9, 0x08, + 0xc9, 0x00, 0x03, 0x31, 0x81, 0x73, 0x22, 0x21, + 0xc1, 0x73, 0x20, 0x49, 0x3c, 0x00, 0x54, 0x16, + 0x04, 0x00, 0x09, 0x7a, 0x41, 0x72, 0x1e, 0x49, + 0x49, 0x7a, 0x01, 0x74, 0x3c, 0x22, 0x02, 0x77, + 0x01, 0x1c, 0x10, 0x31, 0x4a, 0x73, 0x50, 0x23, + 0x8b, 0x73, 0x5a, 0x23, 0xcb, 0x73, 0x0d, 0x23, + 0x01, 0x1c, 0x20, 0x31, 0x0b, 0x70, 0x17, 0x4b, + 0x43, 0x84, 0x0e, 0x23, 0x4b, 0x70, 0x00, 0x21, + 0x41, 0x82, 0x30, 0x21, 0x01, 0x70, 0x05, 0x21, + 0x41, 0x70, 0x04, 0x21, 0x41, 0x71, 0x3c, 0x00, + 0x90, 0x16, 0x04, 0x00, 0x84, 0x71, 0xc4, 0x71, + 0x0c, 0x21, 0x01, 0x71, 0xf8, 0x21, 0x41, 0x80, + 0x0f, 0x49, 0xca, 0x72, 0x8a, 0x72, 0x03, 0x22, + 0x0a, 0x72, 0x09, 0x22, 0x4a, 0x72, 0x08, 0x22, + 0x0a, 0x73, 0x02, 0x7a, 0x40, 0x23, 0x1a, 0x43, + 0x02, 0x72, 0x4c, 0x73, 0xff, 0xf7, 0xa2, 0xfc, + 0x08, 0x48, 0x01, 0x78, 0x21, 0x43, 0x01, 0x70, + 0x10, 0xbd, 0x00, 0x00, 0xf0, 0x00, 0x07, 0x00, + 0x3c, 0x00, 0xcc, 0x16, 0x04, 0x00, 0xf4, 0x00, + 0x07, 0x00, 0x0c, 0x80, 0x07, 0x00, 0x76, 0x46, + 0x01, 0x00, 0x24, 0x09, 0x00, 0x00, 0x80, 0x80, + 0x07, 0x00, 0xa0, 0x80, 0x07, 0x00, 0x80, 0xb5, + 0x18, 0x21, 0x09, 0x48, 0xbe, 0xf7, 0xd7, 0xfe, + 0x08, 0x48, 0x00, 0x21, 0x3c, 0x38, 0x41, 0x60, + 0x81, 0x60, 0xc1, 0x60, 0x01, 0x61, 0x41, 0x61, + 0x81, 0x61, 0x01, 0x21, 0x01, 0x62, 0xff, 0xf7, + 0x5c, 0xff, 0x3c, 0x00, 0x08, 0x17, 0x04, 0x00, + 0xc0, 0xf7, 0x6c, 0xff, 0x80, 0xbd, 0x00, 0x00, + 0x24, 0x7e, 0x01, 0x00, 0xb0, 0xb5, 0x21, 0x48, + 0x00, 0x68, 0x40, 0x08, 0x1f, 0x49, 0x40, 0x00, + 0x08, 0x60, 0x08, 0x1c, 0x00, 0x68, 0x01, 0x21, + 0x08, 0x43, 0x1c, 0x49, 0x08, 0x60, 0x1c, 0x4a, + 0x10, 0x79, 0x01, 0x21, 0x08, 0x43, 0x10, 0x71, + 0x10, 0x79, 0x02, 0x21, 0x88, 0x43, 0x10, 0x71, + 0x00, 0xf0, 0x6c, 0xf8, 0x3c, 0x00, 0x44, 0x17, + 0x04, 0x00, 0x10, 0x7a, 0x01, 0x21, 0x08, 0x43, + 0x10, 0x72, 0x10, 0x7a, 0xfe, 0x21, 0x88, 0x43, + 0x0a, 0x30, 0x10, 0x72, 0x28, 0x20, 0x90, 0x72, + 0x5a, 0x20, 0xd0, 0x72, 0x11, 0x4d, 0x14, 0x20, + 0x28, 0x77, 0x2c, 0x1c, 0x10, 0x34, 0xa0, 0x73, + 0x16, 0x20, 0xa8, 0x75, 0x18, 0x20, 0xe8, 0x75, + 0xff, 0xf7, 0xa1, 0xfc, 0x0c, 0x48, 0x68, 0x86, + 0xe0, 0x7b, 0x40, 0x06, 0x40, 0x0e, 0x3c, 0x00, + 0x80, 0x17, 0x04, 0x00, 0x0e, 0x21, 0x08, 0x43, + 0xe0, 0x73, 0xe0, 0x7b, 0x80, 0x21, 0x08, 0x43, + 0xe0, 0x73, 0x07, 0x48, 0x41, 0x79, 0x04, 0x22, + 0x11, 0x43, 0x41, 0x71, 0xb0, 0xbd, 0x00, 0x00, + 0xf0, 0x00, 0x07, 0x00, 0x00, 0x80, 0x07, 0x00, + 0x30, 0x80, 0x07, 0x00, 0xff, 0x01, 0x00, 0x00, + 0x50, 0x00, 0x07, 0x00, 0x80, 0xb5, 0xff, 0xf7, + 0xaf, 0xff, 0x00, 0x20, 0x14, 0x49, 0xc0, 0x43, + 0x3c, 0x00, 0xbc, 0x17, 0x04, 0x00, 0x88, 0x60, + 0xc1, 0xf7, 0x0b, 0xf9, 0x13, 0x49, 0x00, 0x20, + 0x48, 0x62, 0xc8, 0x60, 0x48, 0x61, 0x08, 0x61, + 0x88, 0x61, 0xc8, 0x61, 0x0f, 0x4b, 0x08, 0x62, + 0x0f, 0x4a, 0x08, 0x63, 0x38, 0x33, 0x1a, 0x80, + 0x01, 0x22, 0x5a, 0x71, 0x0b, 0x4a, 0x40, 0x32, + 0xd0, 0x60, 0x13, 0x60, 0x08, 0x23, 0x13, 0x81, + 0x50, 0x60, 0x09, 0x4a, 0x8a, 0x62, 0xff, 0x22, + 0x0a, 0x70, 0x3c, 0x00, 0xf8, 0x17, 0x04, 0x00, + 0x48, 0x70, 0x05, 0x48, 0x00, 0x21, 0x00, 0x22, + 0x50, 0x30, 0x00, 0x23, 0x0e, 0xc0, 0xc1, 0xf7, + 0xff, 0xf8, 0x80, 0xbd, 0x00, 0x30, 0x07, 0x00, + 0x04, 0x6c, 0x01, 0x00, 0xbe, 0xba, 0x00, 0x00, + 0x85, 0x75, 0x00, 0x00, 0x03, 0x48, 0x10, 0x21, + 0x81, 0x71, 0x02, 0x21, 0xc1, 0x71, 0x30, 0x21, + 0x41, 0x72, 0x70, 0x47, 0x00, 0x80, 0x07, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x3c, 0x00, 0x34, 0x18, + 0x04, 0x00, 0x00, 0xb5, 0xc1, 0xf7, 0xdb, 0xfb, + 0x00, 0xbd, 0x70, 0x47, 0x00, 0x00, 0x80, 0xb5, + 0xcd, 0xf7, 0x87, 0xfd, 0x01, 0x49, 0x88, 0x60, + 0x80, 0xbd, 0x50, 0xd9, 0x01, 0x00, 0x80, 0xb5, + 0x06, 0x21, 0x05, 0x48, 0xbe, 0xf7, 0xfd, 0xfd, + 0x04, 0x49, 0x00, 0x20, 0x04, 0x39, 0x08, 0x60, + 0x00, 0xf0, 0x67, 0xf8, 0x00, 0xf0, 0x03, 0xf8, + 0x80, 0xbd, 0xec, 0x67, 0x01, 0x00, 0x3c, 0x00, + 0x70, 0x18, 0x04, 0x00, 0x10, 0xb5, 0x07, 0x4c, + 0x2c, 0x21, 0x20, 0x1c, 0xbe, 0xf7, 0x10, 0xfe, + 0x01, 0x20, 0x20, 0x70, 0x03, 0x49, 0x00, 0x20, + 0x1c, 0x39, 0xc8, 0x60, 0x08, 0x61, 0x88, 0x61, + 0x10, 0xbd, 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, + 0x80, 0xb5, 0xcd, 0xf7, 0x5d, 0xfd, 0x09, 0x49, + 0x88, 0x60, 0x09, 0x49, 0x08, 0x20, 0xd0, 0xf7, + 0x73, 0xfd, 0x08, 0x49, 0x09, 0x20, 0xd0, 0xf7, + 0x3c, 0x00, 0xac, 0x18, 0x04, 0x00, 0x6f, 0xfd, + 0x07, 0x49, 0x11, 0x20, 0xd0, 0xf7, 0x6b, 0xfd, + 0x06, 0x48, 0xc2, 0xf7, 0x74, 0xf9, 0x80, 0xbd, + 0x00, 0x00, 0x78, 0x69, 0x01, 0x00, 0x21, 0x35, + 0x00, 0x00, 0xa1, 0x38, 0x00, 0x00, 0x45, 0x34, + 0x00, 0x00, 0xbd, 0x26, 0x01, 0x00, 0x80, 0xb5, + 0x86, 0xb0, 0x0f, 0x48, 0xc4, 0xf7, 0x45, 0xf9, + 0x00, 0xf0, 0x45, 0xf8, 0xff, 0xf7, 0xd7, 0xff, + 0xff, 0xf7, 0x3c, 0x00, 0xe8, 0x18, 0x04, 0x00, + 0xab, 0xff, 0x0c, 0x49, 0x03, 0x20, 0xd0, 0xf7, + 0x4d, 0xfd, 0x0b, 0x48, 0x69, 0x46, 0x00, 0x90, + 0x00, 0x20, 0x01, 0x90, 0x09, 0x48, 0x04, 0x90, + 0x09, 0x48, 0x02, 0x90, 0x09, 0x48, 0x03, 0x90, + 0x09, 0x48, 0x05, 0x90, 0x00, 0x20, 0xc4, 0xf7, + 0xcf, 0xf8, 0x06, 0xb0, 0x80, 0xbd, 0x00, 0x00, + 0xf4, 0x67, 0x01, 0x00, 0x45, 0x35, 0x00, 0x00, + 0x95, 0x32, 0x00, 0x00, 0x3c, 0x00, 0x24, 0x19, + 0x04, 0x00, 0xa0, 0x7d, 0x01, 0x00, 0xfd, 0x32, + 0x00, 0x00, 0xcd, 0x31, 0x00, 0x00, 0x45, 0x7d, + 0x01, 0x00, 0x10, 0xb5, 0xcd, 0xf7, 0xd5, 0xfc, + 0x09, 0x48, 0x09, 0x4c, 0x30, 0x21, 0x60, 0x61, + 0x08, 0x48, 0x74, 0x30, 0xbe, 0xf7, 0xa9, 0xfd, + 0x00, 0x20, 0xa0, 0x62, 0x06, 0x49, 0x20, 0x61, + 0xe1, 0x63, 0x60, 0x64, 0xa0, 0x64, 0x14, 0x21, + 0x21, 0x65, 0x60, 0x62, 0x10, 0xbd, 0x3c, 0x00, + 0x60, 0x19, 0x04, 0x00, 0xb9, 0x75, 0x00, 0x00, + 0x44, 0x7d, 0x01, 0x00, 0x70, 0x17, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x09, 0x20, 0x04, 0x4a, + 0xd1, 0xf7, 0xe8, 0xfe, 0xcd, 0xf7, 0xec, 0xfc, + 0x02, 0x49, 0x08, 0x63, 0x80, 0xbd, 0x00, 0x00, + 0x39, 0x39, 0x00, 0x00, 0x44, 0x7d, 0x01, 0x00, + 0x80, 0xb5, 0xac, 0x21, 0x03, 0x48, 0xbe, 0xf7, + 0x83, 0xfd, 0x00, 0xf0, 0x51, 0xf8, 0x00, 0xf0, + 0x3c, 0x00, 0x9c, 0x19, 0x04, 0x00, 0x49, 0xf8, + 0x80, 0xbd, 0xa4, 0x6c, 0x01, 0x00, 0x08, 0xb5, + 0x00, 0xf0, 0x4d, 0xf8, 0x00, 0xf0, 0x45, 0xf8, + 0x00, 0x21, 0x16, 0x20, 0x18, 0x4a, 0xd1, 0xf7, + 0xc8, 0xfe, 0x17, 0x4a, 0x04, 0x21, 0x10, 0x1c, + 0x40, 0x30, 0x01, 0x70, 0x00, 0x21, 0x81, 0x70, + 0x11, 0x21, 0xc1, 0x80, 0x14, 0x49, 0x01, 0x81, + 0x10, 0x1c, 0x80, 0x30, 0xc1, 0x78, 0x08, 0x22, + 0x91, 0x43, 0x3c, 0x00, 0xd8, 0x19, 0x04, 0x00, + 0xc1, 0x70, 0xc1, 0x78, 0x11, 0x43, 0xc1, 0x70, + 0x6a, 0x46, 0x0f, 0x49, 0x14, 0x20, 0xbf, 0xf7, + 0xf5, 0xfa, 0x0e, 0x49, 0x07, 0x20, 0xd0, 0xf7, + 0xcd, 0xfc, 0x0d, 0x49, 0x0f, 0x20, 0xd0, 0xf7, + 0xc9, 0xfc, 0xcd, 0xf7, 0xab, 0xfc, 0x0b, 0x49, + 0x08, 0x60, 0x0a, 0x48, 0x44, 0x38, 0x80, 0x68, + 0x00, 0x28, 0x02, 0xd0, 0x00, 0x20, 0xc6, 0xf7, + 0x6f, 0xf9, 0x08, 0xbd, 0x3c, 0x00, 0x14, 0x1a, + 0x04, 0x00, 0xb5, 0x3b, 0x00, 0x00, 0x00, 0x90, + 0x07, 0x00, 0xe7, 0xfd, 0x00, 0x00, 0x8d, 0x41, + 0x00, 0x00, 0xcd, 0x48, 0x00, 0x00, 0xd9, 0x49, + 0x00, 0x00, 0xa4, 0x6c, 0x01, 0x00, 0x80, 0xb5, + 0x00, 0xf0, 0x6f, 0xfc, 0x80, 0xbd, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x61, 0xfc, + 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, 0xb0, 0xb5, + 0x30, 0x21, 0x0c, 0x48, 0xbe, 0xf7, 0x3c, 0x00, + 0x50, 0x1a, 0x04, 0x00, 0x25, 0xfd, 0x0b, 0x4c, + 0x00, 0x25, 0x0a, 0x48, 0x84, 0x3c, 0x38, 0x22, + 0x03, 0x21, 0x70, 0x38, 0x65, 0x60, 0xbe, 0xf7, + 0xdd, 0xfd, 0x06, 0x48, 0x38, 0x22, 0x01, 0x21, + 0x38, 0x38, 0xbe, 0xf7, 0xd7, 0xfd, 0x0e, 0x20, + 0xa5, 0x60, 0x60, 0x70, 0x20, 0x70, 0x00, 0xf0, + 0x1d, 0xf8, 0xb0, 0xbd, 0x94, 0x67, 0x01, 0x00, + 0x04, 0x49, 0x00, 0xb5, 0x01, 0x20, 0x48, 0x60, + 0x3c, 0x00, 0x8c, 0x1a, 0x04, 0x00, 0x88, 0x60, + 0xc8, 0x60, 0xc3, 0xf7, 0xf8, 0xff, 0x00, 0xbd, + 0x00, 0x00, 0xd4, 0x67, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x0a, 0x20, 0x02, 0x4a, 0xd1, 0xf7, + 0x50, 0xfe, 0x80, 0xbd, 0x00, 0x00, 0x1d, 0x5a, + 0x00, 0x00, 0x80, 0xb5, 0x00, 0xf0, 0x05, 0xf8, + 0x80, 0xbd, 0x80, 0xb5, 0x00, 0xf0, 0xfd, 0xfb, + 0x80, 0xbd, 0x80, 0xb5, 0x02, 0x49, 0x04, 0x20, + 0xd0, 0xf7, 0x3c, 0x00, 0xc8, 0x1a, 0x04, 0x00, + 0x61, 0xfc, 0x80, 0xbd, 0x65, 0x1f, 0x00, 0x00, + 0x00, 0x21, 0x17, 0x48, 0xc9, 0x43, 0x80, 0xb5, + 0x16, 0x4b, 0x01, 0x70, 0x18, 0x1c, 0x10, 0x22, + 0x20, 0x30, 0x02, 0x71, 0x00, 0x22, 0x10, 0x33, + 0x9a, 0x73, 0x42, 0x79, 0x04, 0x23, 0x1a, 0x43, + 0x42, 0x71, 0x42, 0x79, 0x18, 0x23, 0x9a, 0x43, + 0x08, 0x32, 0x42, 0x71, 0x08, 0x1c, 0xd7, 0xf7, + 0x59, 0xf8, 0x00, 0x28, 0x3c, 0x00, 0x04, 0x1b, + 0x04, 0x00, 0x03, 0xd1, 0x01, 0x21, 0x9a, 0x20, + 0xbf, 0xf7, 0xcb, 0xfb, 0x50, 0x20, 0x09, 0x49, + 0x50, 0x22, 0x0a, 0x60, 0xc8, 0x60, 0x88, 0x60, + 0x48, 0x60, 0x08, 0x61, 0x01, 0x20, 0x48, 0x61, + 0x00, 0x20, 0xd7, 0xf7, 0xd8, 0xf8, 0x04, 0x49, + 0xff, 0x20, 0x08, 0x60, 0x80, 0xbd, 0xf4, 0x6b, + 0x01, 0x00, 0x30, 0x00, 0x07, 0x00, 0x04, 0x02, + 0x07, 0x00, 0xf4, 0x74, 0x01, 0x00, 0x3c, 0x00, + 0x40, 0x1b, 0x04, 0x00, 0x80, 0xb5, 0xd7, 0xf7, + 0xfb, 0xf8, 0x80, 0xbd, 0x10, 0xb5, 0xff, 0xf7, + 0xab, 0xfb, 0xbf, 0xf7, 0xdd, 0xfb, 0x81, 0x48, + 0xcd, 0xf7, 0x98, 0xfa, 0x00, 0x24, 0x23, 0x1c, + 0x04, 0x22, 0x04, 0x21, 0x00, 0x20, 0x01, 0xf0, + 0x39, 0xfa, 0x00, 0x28, 0x01, 0xd0, 0xbf, 0xf7, + 0xc9, 0xfb, 0x23, 0x1c, 0x00, 0x22, 0xff, 0x21, + 0x00, 0x20, 0x01, 0xf0, 0x2f, 0xfa, 0x00, 0x28, + 0x3c, 0x00, 0x7c, 0x1b, 0x04, 0x00, 0x01, 0xd0, + 0xbf, 0xf7, 0xbf, 0xfb, 0x23, 0x1c, 0x00, 0x22, + 0xff, 0x21, 0x00, 0x20, 0x01, 0xf0, 0x25, 0xfa, + 0x00, 0x28, 0x01, 0xd0, 0xbf, 0xf7, 0xb5, 0xfb, + 0xc4, 0xf7, 0x27, 0xff, 0x70, 0x48, 0x84, 0x70, + 0x6f, 0x49, 0x7f, 0x20, 0x88, 0x70, 0x6e, 0x49, + 0x0c, 0x60, 0x03, 0x20, 0x08, 0x60, 0x6b, 0x48, + 0x44, 0x70, 0x6c, 0x48, 0x04, 0x80, 0x69, 0x48, + 0xc0, 0x78, 0x3c, 0x00, 0xb8, 0x1b, 0x04, 0x00, + 0x08, 0x21, 0x08, 0x43, 0x67, 0x49, 0xc8, 0x70, + 0x08, 0x1c, 0xc0, 0x78, 0x04, 0x21, 0x08, 0x43, + 0x64, 0x49, 0xc8, 0x70, 0x01, 0xf0, 0x7e, 0xfa, + 0xff, 0xf7, 0x7e, 0xff, 0xff, 0xf7, 0x2c, 0xfe, + 0x01, 0xf0, 0x46, 0xfb, 0xff, 0xf7, 0x18, 0xfb, + 0x01, 0xf0, 0x52, 0xfa, 0xff, 0xf7, 0x82, 0xfb, + 0x5f, 0x48, 0xc1, 0x68, 0x10, 0x22, 0x91, 0x43, + 0xc1, 0x60, 0x01, 0x69, 0x3c, 0x00, 0xf4, 0x1b, + 0x04, 0x00, 0x5d, 0x4a, 0x11, 0x43, 0x01, 0x61, + 0x01, 0x69, 0xd2, 0x0a, 0x91, 0x43, 0x01, 0x61, + 0xc1, 0x68, 0x5a, 0x4a, 0x11, 0x43, 0xc1, 0x60, + 0x81, 0x6a, 0x59, 0x4a, 0x11, 0x43, 0x81, 0x62, + 0x00, 0xf0, 0x77, 0xf9, 0x01, 0xf0, 0x1f, 0xf8, + 0x00, 0xf0, 0x93, 0xfa, 0x01, 0xf0, 0x99, 0xfb, + 0x00, 0xf0, 0xf1, 0xff, 0x00, 0xf0, 0x99, 0xfc, + 0x00, 0xf0, 0xdd, 0xfc, 0x00, 0xf0, 0x3c, 0x00, + 0x30, 0x1c, 0x04, 0x00, 0x83, 0xfc, 0xff, 0xf7, + 0xb3, 0xfc, 0x01, 0xf0, 0x31, 0xfa, 0x01, 0xf0, + 0x71, 0xfa, 0xff, 0xf7, 0x87, 0xfa, 0xff, 0xf7, + 0x9b, 0xfa, 0x01, 0x21, 0x01, 0x20, 0x4b, 0x4a, + 0xd1, 0xf7, 0x7c, 0xfd, 0x01, 0x21, 0x02, 0x20, + 0x49, 0x4a, 0xd1, 0xf7, 0x77, 0xfd, 0x02, 0x21, + 0x03, 0x20, 0x48, 0x4a, 0xd1, 0xf7, 0x72, 0xfd, + 0x02, 0x21, 0x04, 0x20, 0x46, 0x4a, 0xd1, 0xf7, + 0x3c, 0x00, 0x6c, 0x1c, 0x04, 0x00, 0x6d, 0xfd, + 0x02, 0x21, 0x05, 0x20, 0x45, 0x4a, 0xd1, 0xf7, + 0x68, 0xfd, 0x02, 0x21, 0x06, 0x20, 0x43, 0x4a, + 0xd1, 0xf7, 0x63, 0xfd, 0x01, 0x21, 0x07, 0x20, + 0x42, 0x4a, 0xd1, 0xf7, 0x5e, 0xfd, 0x02, 0x21, + 0x17, 0x20, 0x40, 0x4a, 0xd1, 0xf7, 0x59, 0xfd, + 0x02, 0x21, 0x08, 0x20, 0x3f, 0x4a, 0xd1, 0xf7, + 0x54, 0xfd, 0xff, 0xf7, 0xc8, 0xfd, 0x3d, 0x48, + 0x04, 0x60, 0x3c, 0x00, 0xa8, 0x1c, 0x04, 0x00, + 0x44, 0x60, 0xff, 0xf7, 0x17, 0xfa, 0xff, 0xf7, + 0x09, 0xfa, 0xff, 0xf7, 0x4f, 0xfc, 0x00, 0xf0, + 0x43, 0xf9, 0xff, 0xf7, 0x33, 0xfa, 0xff, 0xf7, + 0xfb, 0xfa, 0x01, 0xf0, 0x85, 0xf8, 0x01, 0xf0, + 0xeb, 0xf9, 0x01, 0xf0, 0x23, 0xfa, 0x01, 0xf0, + 0x71, 0xf9, 0x00, 0xf0, 0xe3, 0xff, 0xff, 0xf7, + 0x6f, 0xfa, 0x00, 0xf0, 0xaf, 0xf9, 0x00, 0xf0, + 0xbd, 0xf9, 0x00, 0xf0, 0x3c, 0x00, 0xe4, 0x1c, + 0x04, 0x00, 0xad, 0xfc, 0x00, 0xf0, 0x9b, 0xfe, + 0xff, 0xf7, 0xcd, 0xfa, 0xff, 0xf7, 0xab, 0xfe, + 0x00, 0xf0, 0xc3, 0xf9, 0xff, 0xf7, 0xab, 0xfd, + 0x00, 0xf0, 0x8d, 0xff, 0x00, 0xf0, 0x21, 0xff, + 0x00, 0xf0, 0x65, 0xf9, 0x00, 0xf0, 0x97, 0xf9, + 0x00, 0xf0, 0xfd, 0xfe, 0x00, 0xf0, 0xe5, 0xfe, + 0x00, 0xf0, 0x3f, 0xf9, 0x00, 0xf0, 0x73, 0xf9, + 0xff, 0xf7, 0x37, 0xfe, 0x00, 0xf0, 0x3c, 0x00, + 0x20, 0x1d, 0x04, 0x00, 0x21, 0xf9, 0x00, 0xf0, + 0x73, 0xfb, 0xff, 0xf7, 0xe5, 0xfb, 0x00, 0xf0, + 0xd3, 0xfb, 0xff, 0xf7, 0xa9, 0xfe, 0x00, 0xf0, + 0xbb, 0xfb, 0x00, 0xf0, 0x09, 0xff, 0x00, 0xf0, + 0xdb, 0xf9, 0x18, 0x48, 0xc9, 0xf7, 0x56, 0xf8, + 0x17, 0x48, 0xc9, 0xf7, 0x2b, 0xf8, 0x00, 0x22, + 0x01, 0x21, 0xf0, 0x20, 0xd1, 0xf7, 0x2e, 0xfd, + 0x00, 0x20, 0x10, 0xbd, 0xa9, 0x69, 0x00, 0x00, + 0x3c, 0x00, 0x5c, 0x1d, 0x04, 0x00, 0x00, 0x00, + 0x07, 0x00, 0xf0, 0x00, 0x07, 0x00, 0x2c, 0x00, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0x3c, 0x00, + 0x08, 0x00, 0xc0, 0x3f, 0x74, 0x38, 0xfc, 0xdf, + 0x7f, 0x38, 0x55, 0x69, 0x00, 0x00, 0xe5, 0x13, + 0x00, 0x00, 0x61, 0x0c, 0x00, 0x00, 0x6d, 0x0c, + 0x00, 0x00, 0x3d, 0x0c, 0x00, 0x00, 0xf1, 0x0d, + 0x00, 0x00, 0xc5, 0x33, 0x00, 0x00, 0x3d, 0x0f, + 0x00, 0x00, 0x3c, 0x00, 0x98, 0x1d, 0x04, 0x00, + 0xad, 0xd8, 0x00, 0x00, 0x80, 0x00, 0x07, 0x00, + 0x50, 0x57, 0x01, 0x00, 0x04, 0x40, 0x01, 0x00, + 0x80, 0xb5, 0x01, 0xf0, 0xa9, 0xf9, 0x00, 0xf0, + 0xc9, 0xf8, 0xff, 0xf7, 0xc5, 0xfe, 0x01, 0xf0, + 0x03, 0xfb, 0x01, 0xf0, 0x93, 0xfa, 0xff, 0xf7, + 0xcb, 0xf9, 0x2c, 0x48, 0xff, 0xf7, 0xe8, 0xf9, + 0x00, 0xf0, 0xaa, 0xf8, 0x00, 0xf0, 0x58, 0xff, + 0xff, 0xf7, 0x34, 0xfd, 0x3c, 0x00, 0xd4, 0x1d, + 0x04, 0x00, 0xff, 0xf7, 0xf2, 0xfb, 0xff, 0xf7, + 0x7a, 0xfa, 0xff, 0xf7, 0x00, 0xfa, 0x00, 0xf0, + 0x34, 0xf9, 0x00, 0xf0, 0x3c, 0xf9, 0x01, 0xf0, + 0xe2, 0xf8, 0xff, 0xf7, 0x7a, 0xf9, 0xff, 0xf7, + 0x72, 0xf9, 0xff, 0xf7, 0x9a, 0xf9, 0x01, 0xf0, + 0x66, 0xf9, 0x01, 0xf0, 0x8e, 0xf9, 0x01, 0xf0, + 0xe0, 0xf8, 0x00, 0xf0, 0x06, 0xff, 0x00, 0xf0, + 0xf0, 0xfb, 0x00, 0xf0, 0x46, 0xfb, 0x3c, 0x00, + 0x10, 0x1e, 0x04, 0x00, 0x00, 0xf0, 0xbc, 0xff, + 0x00, 0xf0, 0xe4, 0xfc, 0x00, 0xf0, 0x20, 0xfe, + 0xff, 0xf7, 0x40, 0xfa, 0xff, 0xf7, 0x46, 0xfe, + 0xff, 0xf7, 0x56, 0xfd, 0x00, 0xf0, 0x2c, 0xf9, + 0x00, 0xf0, 0xfa, 0xfe, 0x00, 0xf0, 0x8a, 0xfe, + 0x00, 0xf0, 0xd4, 0xf8, 0x00, 0xf0, 0xb4, 0xf8, + 0x00, 0xf0, 0x78, 0xfe, 0x00, 0xf0, 0x4e, 0xfe, + 0x00, 0xf0, 0xde, 0xf8, 0xff, 0xf7, 0xac, 0xfd, + 0x3c, 0x00, 0x4c, 0x1e, 0x04, 0x00, 0x00, 0xf0, + 0x8c, 0xf8, 0x00, 0xf0, 0xf8, 0xfa, 0xff, 0xf7, + 0x76, 0xfb, 0xff, 0xf7, 0x20, 0xfe, 0x01, 0xf0, + 0xa6, 0xfa, 0x00, 0xf0, 0x48, 0xfb, 0x00, 0xf0, + 0x7c, 0xfe, 0x00, 0xf0, 0x5c, 0xf9, 0xbe, 0xf7, + 0x57, 0xfd, 0x00, 0x20, 0x80, 0xbd, 0x80, 0x38, + 0x01, 0x00, 0x01, 0x49, 0x00, 0x20, 0x08, 0x60, + 0x70, 0x47, 0xa8, 0x7e, 0x01, 0x00, 0x10, 0xb5, + 0x04, 0x1c, 0x3c, 0x00, 0x88, 0x1e, 0x04, 0x00, + 0x01, 0xd1, 0xbf, 0xf7, 0x39, 0xfa, 0x0f, 0x48, + 0x7d, 0x21, 0xc9, 0x00, 0x84, 0x60, 0x01, 0x80, + 0x0d, 0x49, 0x01, 0x61, 0x80, 0x21, 0x41, 0x80, + 0x00, 0x21, 0xc1, 0x60, 0x01, 0x62, 0x0b, 0x48, + 0x41, 0x80, 0x14, 0x21, 0x81, 0x80, 0x07, 0x21, + 0x41, 0x81, 0x06, 0x4a, 0x46, 0x23, 0x04, 0x32, + 0x05, 0x24, 0x13, 0x70, 0x54, 0x70, 0x0a, 0x21, + 0x91, 0x70, 0x81, 0x76, 0x3c, 0x00, 0xc4, 0x1e, + 0x04, 0x00, 0x03, 0x76, 0x04, 0x81, 0x10, 0xbd, + 0x00, 0x00, 0xc8, 0x74, 0x01, 0x00, 0x00, 0x87, + 0x93, 0x03, 0x30, 0x00, 0x07, 0x00, 0x09, 0x48, + 0x80, 0xb5, 0x01, 0x69, 0x42, 0x69, 0x11, 0x43, + 0x82, 0x69, 0xc0, 0x69, 0x11, 0x43, 0x01, 0x43, + 0x00, 0x22, 0x03, 0x20, 0xc6, 0xf7, 0xbf, 0xfc, + 0xcc, 0xf7, 0x1b, 0xfa, 0x00, 0x20, 0xc2, 0xf7, + 0x92, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x3c, 0x00, + 0x00, 0x1f, 0x04, 0x00, 0xa4, 0x6c, 0x01, 0x00, + 0x05, 0x48, 0x80, 0xb5, 0x00, 0x21, 0x81, 0x60, + 0x02, 0x21, 0xc1, 0x60, 0x03, 0x39, 0x41, 0x60, + 0xc7, 0xf7, 0x3a, 0xff, 0x80, 0xbd, 0x00, 0x00, + 0x40, 0x20, 0x07, 0x00, 0x08, 0xb5, 0x6a, 0x46, + 0x04, 0x49, 0x15, 0x20, 0xbf, 0xf7, 0x54, 0xf8, + 0x01, 0x20, 0x03, 0x49, 0x40, 0x05, 0x08, 0x60, + 0x48, 0x60, 0x08, 0xbd, 0xa5, 0x21, 0x01, 0x00, + 0x3c, 0x00, 0x3c, 0x1f, 0x04, 0x00, 0x00, 0x10, + 0x07, 0x00, 0x70, 0x47, 0x00, 0x00, 0x06, 0x48, + 0x80, 0xb5, 0x80, 0x68, 0xc0, 0x01, 0x80, 0x0f, + 0x05, 0xd1, 0x03, 0x22, 0xc1, 0x43, 0xc6, 0xf7, + 0xba, 0xfc, 0xd6, 0xf7, 0x00, 0xfe, 0x80, 0xbd, + 0x00, 0x00, 0x10, 0x00, 0x07, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0x02, 0x21, 0x2a, 0x20, + 0x06, 0x4a, 0xd1, 0xf7, 0xea, 0xfb, 0x00, 0x22, + 0x07, 0x20, 0x3c, 0x00, 0x78, 0x1f, 0x04, 0x00, + 0x04, 0x49, 0xbe, 0xf7, 0xed, 0xfe, 0x04, 0x48, + 0xc7, 0xf7, 0x58, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0x8d, 0x89, 0x00, 0x00, 0xd5, 0x9b, 0x00, 0x00, + 0x10, 0x46, 0x01, 0x00, 0x02, 0x48, 0x00, 0x21, + 0x00, 0x22, 0x00, 0x23, 0x0e, 0xc0, 0x70, 0x47, + 0x80, 0x6e, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x2c, 0x20, 0x06, 0x4a, 0xd1, 0xf7, 0xcc, 0xfb, + 0x00, 0x22, 0x00, 0x20, 0x3c, 0x00, 0xb4, 0x1f, + 0x04, 0x00, 0x04, 0x49, 0xbe, 0xf7, 0xcf, 0xfe, + 0x04, 0x49, 0x02, 0x20, 0xc8, 0xf7, 0x0b, 0xfa, + 0x80, 0xbd, 0x05, 0x8a, 0x00, 0x00, 0xe9, 0x9b, + 0x00, 0x00, 0xb1, 0x8b, 0x00, 0x00, 0x02, 0x48, + 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, 0x0e, 0xc0, + 0x70, 0x47, 0x10, 0x75, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x2b, 0x20, 0x04, 0x4a, 0xd1, 0xf7, + 0xae, 0xfb, 0x00, 0x22, 0x02, 0x20, 0x3c, 0x00, + 0xf0, 0x1f, 0x04, 0x00, 0x02, 0x49, 0xbe, 0xf7, + 0xb1, 0xfe, 0x80, 0xbd, 0x2d, 0x8a, 0x00, 0x00, + 0x8d, 0x8c, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x2d, 0x20, 0x07, 0x4a, + 0xd1, 0xf7, 0x9c, 0xfb, 0x00, 0x22, 0x01, 0x20, + 0x05, 0x49, 0xbe, 0xf7, 0x9f, 0xfe, 0x05, 0x48, + 0xcb, 0xf7, 0x56, 0xfa, 0x04, 0x48, 0xcc, 0xf7, + 0xf7, 0xf8, 0x80, 0xbd, 0xad, 0x8a, 0x00, 0x00, + 0x3c, 0x00, 0x2c, 0x20, 0x04, 0x00, 0x21, 0xe2, + 0x00, 0x00, 0xf9, 0xdf, 0x00, 0x00, 0x20, 0x44, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x02, 0x49, + 0x00, 0x20, 0x08, 0x60, 0x01, 0x20, 0x48, 0x60, + 0x70, 0x47, 0xac, 0x79, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x49, 0x0d, 0x20, 0xd0, 0xf7, 0x9b, 0xf9, + 0x80, 0xbd, 0x61, 0x98, 0x00, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x80, 0xb5, 0xcd, 0xf7, 0x77, 0xf9, + 0x03, 0x49, 0x3c, 0x00, 0x68, 0x20, 0x04, 0x00, + 0x08, 0x60, 0x01, 0x1c, 0x02, 0x48, 0xcd, 0xf7, + 0x97, 0xf9, 0x80, 0xbd, 0xa8, 0x79, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x29, 0xf8, 0x80, 0xbd, 0x80, 0xb5, 0x86, 0xb0, + 0x0c, 0x48, 0xc3, 0xf7, 0x6d, 0xfd, 0xd6, 0xf7, + 0xd3, 0xfb, 0x0b, 0x48, 0x0d, 0x49, 0x00, 0x90, + 0x0a, 0x48, 0x04, 0x91, 0x01, 0x90, 0x0a, 0x48, + 0x69, 0x46, 0x02, 0x90, 0x3c, 0x00, 0xa4, 0x20, + 0x04, 0x00, 0x00, 0x20, 0x03, 0x90, 0x05, 0x90, + 0x01, 0x20, 0xc3, 0xf7, 0x00, 0xfd, 0x07, 0x49, + 0x03, 0x20, 0xd0, 0xf7, 0x6a, 0xf9, 0x06, 0xb0, + 0x80, 0xbd, 0x20, 0xf7, 0x01, 0x00, 0x11, 0x87, + 0x01, 0x00, 0x95, 0x87, 0x01, 0x00, 0x55, 0x87, + 0x01, 0x00, 0x98, 0xd9, 0x01, 0x00, 0x6d, 0x87, + 0x01, 0x00, 0x80, 0xb5, 0x01, 0x20, 0xd6, 0xf7, + 0x90, 0xfc, 0x03, 0x49, 0x00, 0x20, 0x3c, 0x00, + 0xe0, 0x20, 0x04, 0x00, 0x08, 0x60, 0x48, 0x60, + 0x02, 0x48, 0x14, 0x39, 0x48, 0x60, 0x80, 0xbd, + 0x90, 0xd9, 0x01, 0x00, 0x3d, 0x82, 0x01, 0x00, + 0x70, 0xb5, 0x00, 0x26, 0x09, 0x4c, 0x09, 0x4d, + 0x26, 0x60, 0x66, 0x60, 0x44, 0x21, 0x50, 0x35, + 0x28, 0x1c, 0xa6, 0x61, 0xbe, 0xf7, 0xc8, 0xf9, + 0x14, 0x20, 0xe0, 0x60, 0xe8, 0x63, 0x28, 0x20, + 0xe8, 0x61, 0xa0, 0x60, 0x28, 0x64, 0x2e, 0x70, + 0x3c, 0x00, 0x1c, 0x21, 0x04, 0x00, 0x70, 0xbd, + 0x00, 0x00, 0xa4, 0x6e, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x18, 0x20, 0x04, 0x4a, 0xd1, 0xf7, + 0x0c, 0xfb, 0x03, 0x49, 0x08, 0x20, 0xd0, 0xf7, + 0x2a, 0xf9, 0x80, 0xbd, 0x00, 0x00, 0x15, 0x9c, + 0x00, 0x00, 0x69, 0x9c, 0x00, 0x00, 0xfe, 0xb5, + 0x26, 0x4d, 0x28, 0x78, 0xc0, 0x07, 0x0c, 0xd4, + 0x25, 0x49, 0x00, 0x20, 0x08, 0x70, 0x28, 0x70, + 0x24, 0x48, 0x3c, 0x00, 0x58, 0x21, 0x04, 0x00, + 0x81, 0x78, 0x49, 0x08, 0x49, 0x00, 0x81, 0x70, + 0x81, 0x78, 0x01, 0x22, 0x11, 0x43, 0x81, 0x70, + 0x00, 0x24, 0xff, 0x26, 0x1f, 0x4f, 0x01, 0x36, + 0x21, 0x1c, 0x01, 0xa8, 0xc6, 0xf7, 0x32, 0xf8, + 0x00, 0xab, 0x18, 0x79, 0x01, 0x28, 0x1f, 0xd0, + 0x02, 0x28, 0x19, 0xd0, 0x03, 0x28, 0x1e, 0xd1, + 0xb8, 0x68, 0x00, 0x21, 0xb0, 0x43, 0xb8, 0x60, + 0x78, 0x68, 0x30, 0x43, 0x3c, 0x00, 0x94, 0x21, + 0x04, 0x00, 0x78, 0x60, 0x3a, 0x68, 0x32, 0x40, + 0xa0, 0x20, 0x05, 0xe0, 0x3b, 0x68, 0x33, 0x40, + 0x93, 0x42, 0x01, 0xd0, 0x01, 0x21, 0x01, 0xe0, + 0x01, 0x38, 0xf7, 0xd2, 0x78, 0x68, 0xb0, 0x43, + 0x78, 0x60, 0x00, 0x29, 0x03, 0xd0, 0x01, 0xa8, + 0x00, 0xf0, 0x27, 0xff, 0x02, 0xe0, 0x01, 0xa8, + 0x00, 0xf0, 0x45, 0xff, 0x01, 0x34, 0x24, 0x06, + 0x24, 0x16, 0x06, 0x2c, 0xcf, 0xdb, 0x3c, 0x00, + 0xd0, 0x21, 0x04, 0x00, 0x04, 0x49, 0x02, 0x22, + 0x08, 0x78, 0x10, 0x43, 0x08, 0x70, 0x28, 0x70, + 0xfe, 0xbd, 0x00, 0x00, 0x04, 0x00, 0x07, 0x00, + 0xe0, 0x60, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, + 0x10, 0x00, 0x07, 0x00, 0xb0, 0xb5, 0x00, 0x20, + 0x15, 0x23, 0x14, 0x49, 0x01, 0x25, 0x42, 0x00, + 0x8d, 0x54, 0x52, 0x18, 0x01, 0x30, 0x0e, 0x28, + 0x53, 0x70, 0xf8, 0xd3, 0x0f, 0x48, 0x1c, 0x22, + 0x3c, 0x00, 0x0c, 0x22, 0x04, 0x00, 0x1c, 0x38, + 0xbe, 0xf7, 0x73, 0xf9, 0x0d, 0x48, 0x0e, 0x21, + 0x2a, 0x38, 0xbe, 0xf7, 0x1c, 0xf9, 0x0b, 0x49, + 0x00, 0x20, 0x08, 0x60, 0x0b, 0x4c, 0x2a, 0x21, + 0x20, 0x1c, 0xbe, 0xf7, 0x14, 0xf9, 0x25, 0x70, + 0x0e, 0x20, 0x60, 0x70, 0x17, 0x20, 0xa0, 0x70, + 0x07, 0x48, 0x53, 0x21, 0x01, 0x70, 0x45, 0x21, + 0x41, 0x70, 0x20, 0x21, 0x81, 0x70, 0xb0, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x48, 0x22, 0x04, 0x00, + 0xe6, 0x78, 0x01, 0x00, 0xe4, 0x62, 0x01, 0x00, + 0xeb, 0x62, 0x01, 0x00, 0xe8, 0x62, 0x01, 0x00, + 0x0c, 0x49, 0x0d, 0x48, 0x00, 0x22, 0x41, 0x60, + 0x0c, 0x49, 0x81, 0x60, 0x0c, 0x49, 0xc1, 0x60, + 0x0c, 0x49, 0x01, 0x61, 0x0c, 0x49, 0x41, 0x61, + 0x0c, 0x49, 0x82, 0x61, 0xc1, 0x61, 0x0c, 0x49, + 0x01, 0x62, 0x0c, 0x49, 0x41, 0x62, 0x0c, 0x49, + 0x81, 0x62, 0x0c, 0x49, 0x3c, 0x00, 0x84, 0x22, + 0x04, 0x00, 0xc1, 0x62, 0xc2, 0x63, 0x70, 0x47, + 0x00, 0x00, 0xc9, 0x75, 0x00, 0x00, 0x28, 0x7a, + 0x01, 0x00, 0xc1, 0x75, 0x00, 0x00, 0x81, 0x75, + 0x00, 0x00, 0x99, 0x75, 0x00, 0x00, 0xcd, 0x75, + 0x00, 0x00, 0x89, 0x75, 0x00, 0x00, 0x91, 0x75, + 0x00, 0x00, 0xb5, 0x75, 0x00, 0x00, 0x8d, 0x75, + 0x00, 0x00, 0xc5, 0x75, 0x00, 0x00, 0xb0, 0xb5, + 0x0e, 0x48, 0x0e, 0x49, 0x08, 0x60, 0x3c, 0x00, + 0xc0, 0x22, 0x04, 0x00, 0x08, 0x31, 0xc0, 0xf7, + 0x43, 0xfe, 0x0c, 0x49, 0x00, 0x25, 0x48, 0x60, + 0x0b, 0x48, 0x0a, 0x4c, 0x05, 0x60, 0x0b, 0x48, + 0x80, 0x3c, 0x05, 0x60, 0x10, 0x20, 0x20, 0x71, + 0xe0, 0x70, 0xa0, 0x71, 0x60, 0x71, 0x27, 0x20, + 0xc0, 0x43, 0xc3, 0xf7, 0xf7, 0xfb, 0x28, 0x20, + 0xc3, 0xf7, 0xfc, 0xfb, 0x25, 0x72, 0xb0, 0xbd, + 0xff, 0x3f, 0x00, 0x00, 0x2c, 0x7d, 0x01, 0x00, + 0x3c, 0x00, 0xfc, 0x22, 0x04, 0x00, 0x1c, 0x67, + 0x01, 0x00, 0x20, 0x67, 0x01, 0x00, 0x80, 0xb5, + 0x2c, 0x21, 0x01, 0x48, 0xbe, 0xf7, 0xc7, 0xf8, + 0x80, 0xbd, 0x3c, 0x7e, 0x01, 0x00, 0x80, 0xb5, + 0x38, 0x21, 0x01, 0x48, 0xbe, 0xf7, 0xbf, 0xf8, + 0x80, 0xbd, 0x68, 0x7e, 0x01, 0x00, 0x80, 0xb5, + 0x02, 0x21, 0x0e, 0x20, 0x02, 0x4a, 0xd1, 0xf7, + 0x0c, 0xfa, 0x80, 0xbd, 0x00, 0x00, 0x21, 0xe0, + 0x00, 0x00, 0x3c, 0x00, 0x38, 0x23, 0x04, 0x00, + 0x70, 0x47, 0x00, 0x00, 0xf0, 0xb5, 0x85, 0xb0, + 0x00, 0x27, 0x00, 0xab, 0x2f, 0x4e, 0x1f, 0x81, + 0x00, 0x25, 0x00, 0x24, 0x28, 0x1c, 0xd6, 0xf7, + 0xa1, 0xfb, 0x02, 0x2d, 0x03, 0xd1, 0xd6, 0xf7, + 0xf5, 0xfa, 0x00, 0x28, 0x0c, 0xd0, 0x01, 0x24, + 0x01, 0x2d, 0x03, 0xd1, 0x07, 0x20, 0x00, 0xab, + 0x18, 0x71, 0x01, 0xe0, 0x00, 0xab, 0x1f, 0x71, + 0x00, 0xab, 0x18, 0x79, 0x3c, 0x00, 0x74, 0x23, + 0x04, 0x00, 0xd6, 0xf7, 0x08, 0xfc, 0x00, 0x2c, + 0x39, 0xd0, 0x08, 0x21, 0x03, 0xa8, 0xd6, 0xf7, + 0xf2, 0xfa, 0x00, 0xab, 0x18, 0x7b, 0xfe, 0x28, + 0x31, 0xd1, 0x58, 0x7b, 0x01, 0x28, 0x2a, 0xd1, + 0x02, 0x21, 0x02, 0xa8, 0xd6, 0xf7, 0xe7, 0xfa, + 0x00, 0xab, 0x18, 0x89, 0x00, 0x28, 0x26, 0xd0, + 0x18, 0x89, 0x18, 0x49, 0x88, 0x42, 0x22, 0xd0, + 0x19, 0x89, 0x00, 0x20, 0xbf, 0xf7, 0x3c, 0x00, + 0xb0, 0x23, 0x04, 0x00, 0x13, 0xf9, 0x04, 0x1c, + 0x00, 0x69, 0x00, 0xab, 0x19, 0x89, 0xd6, 0xf7, + 0xd5, 0xfa, 0x20, 0x68, 0x00, 0xab, 0x1a, 0x89, + 0x01, 0x1c, 0x08, 0x31, 0x08, 0x3a, 0xcb, 0xf7, + 0xa1, 0xf9, 0x00, 0x28, 0x06, 0xd0, 0x02, 0x28, + 0x04, 0xd0, 0x02, 0x21, 0x94, 0x20, 0x37, 0x60, + 0xbe, 0xf7, 0x62, 0xff, 0x20, 0x1c, 0xbf, 0xf7, + 0xc7, 0xf8, 0xd4, 0xe7, 0x01, 0x21, 0x94, 0x20, + 0x3c, 0x00, 0xec, 0x23, 0x04, 0x00, 0xbe, 0xf7, + 0x5a, 0xff, 0xd5, 0xf7, 0x26, 0xff, 0x01, 0x35, + 0x2d, 0x06, 0x2d, 0x0e, 0x04, 0x2d, 0xa5, 0xd3, + 0x05, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x58, 0x57, + 0x01, 0x00, 0xff, 0xff, 0x00, 0x00, 0x0a, 0x48, + 0x00, 0x21, 0x02, 0x1c, 0x18, 0x32, 0x80, 0xb5, + 0x09, 0x4b, 0x02, 0xe0, 0x01, 0x60, 0x83, 0x80, + 0x08, 0x30, 0x82, 0x42, 0xfa, 0xd1, 0x04, 0x48, + 0x6c, 0x21, 0x3c, 0x00, 0x28, 0x24, 0x04, 0x00, + 0x6c, 0x38, 0xbe, 0xf7, 0x37, 0xf8, 0x04, 0x49, + 0x02, 0x20, 0xc7, 0xf7, 0xd1, 0xff, 0x80, 0xbd, + 0x7c, 0x79, 0x01, 0x00, 0xfc, 0x05, 0x00, 0x00, + 0x9d, 0x75, 0x00, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x26, 0x20, 0x0d, 0x4a, 0xd1, 0xf7, 0x7c, 0xf9, + 0x0c, 0x48, 0xc8, 0xf7, 0x73, 0xff, 0x0c, 0x48, + 0xc8, 0xf7, 0x76, 0xff, 0x0b, 0x49, 0x10, 0x20, + 0xcf, 0xf7, 0x94, 0xff, 0x3c, 0x00, 0x64, 0x24, + 0x04, 0x00, 0x0a, 0x49, 0x0c, 0x20, 0xcf, 0xf7, + 0x90, 0xff, 0x09, 0x49, 0x00, 0x20, 0xc7, 0xf7, + 0xb2, 0xff, 0xcc, 0xf7, 0x6e, 0xff, 0x07, 0x49, + 0x08, 0x60, 0x80, 0xbd, 0x00, 0x00, 0x9d, 0xa6, + 0x00, 0x00, 0xa9, 0xa4, 0x00, 0x00, 0x81, 0xa4, + 0x00, 0x00, 0x31, 0xa7, 0x00, 0x00, 0xb9, 0x6d, + 0x00, 0x00, 0xbd, 0xa6, 0x00, 0x00, 0x0c, 0x79, + 0x01, 0x00, 0x02, 0x49, 0x08, 0x78, 0x3c, 0x00, + 0xa0, 0x24, 0x04, 0x00, 0x40, 0x08, 0x40, 0x00, + 0x08, 0x70, 0x70, 0x47, 0x58, 0x00, 0x07, 0x00, + 0x00, 0x21, 0x08, 0x48, 0x80, 0xb5, 0x41, 0x61, + 0x81, 0x61, 0x01, 0x70, 0x41, 0x70, 0x41, 0x60, + 0x81, 0x60, 0x14, 0x22, 0xc2, 0x60, 0x01, 0x61, + 0x42, 0x62, 0xc1, 0x61, 0xff, 0xf7, 0x04, 0xf8, + 0x80, 0xbd, 0x00, 0x00, 0x1c, 0x75, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x1d, 0x20, 0x04, 0x4a, + 0x3c, 0x00, 0xdc, 0x24, 0x04, 0x00, 0xd1, 0xf7, + 0x34, 0xf9, 0x03, 0x49, 0x08, 0x20, 0xcf, 0xf7, + 0x52, 0xff, 0x80, 0xbd, 0x00, 0x00, 0x11, 0xe3, + 0x00, 0x00, 0x09, 0xe4, 0x00, 0x00, 0x80, 0xb5, + 0x01, 0x21, 0x25, 0x20, 0x0a, 0x4a, 0xd1, 0xf7, + 0x24, 0xf9, 0xcc, 0xf7, 0x28, 0xff, 0x08, 0x49, + 0x08, 0x62, 0x08, 0x49, 0x01, 0x20, 0xcf, 0xf7, + 0x3e, 0xff, 0x07, 0x49, 0x02, 0x20, 0xcf, 0xf7, + 0x3a, 0xff, 0x3c, 0x00, 0x18, 0x25, 0x04, 0x00, + 0xfe, 0xf7, 0xe6, 0xff, 0x05, 0x48, 0xc1, 0xf7, + 0xe1, 0xf9, 0x80, 0xbd, 0x29, 0xa9, 0x00, 0x00, + 0x1c, 0x75, 0x01, 0x00, 0xa1, 0xaa, 0x00, 0x00, + 0x2d, 0x19, 0x00, 0x00, 0x45, 0xa8, 0x00, 0x00, + 0x10, 0xb5, 0x06, 0x4c, 0x0c, 0x22, 0x22, 0x70, + 0xa0, 0x18, 0x05, 0x49, 0xbd, 0xf7, 0xd8, 0xff, + 0x00, 0x20, 0xc8, 0xf7, 0x85, 0xfb, 0x01, 0x20, + 0xa0, 0x60, 0x10, 0xbd, 0x3c, 0x00, 0x54, 0x25, + 0x04, 0x00, 0xa4, 0x69, 0x01, 0x00, 0x90, 0x57, + 0x01, 0x00, 0xb0, 0xb5, 0x1f, 0x4c, 0x00, 0x25, + 0x65, 0x80, 0x01, 0x20, 0x20, 0x70, 0x0a, 0x20, + 0xa0, 0x80, 0x90, 0x20, 0xe0, 0x80, 0x30, 0x20, + 0x20, 0x81, 0x90, 0x20, 0x60, 0x81, 0x30, 0x20, + 0xa0, 0x81, 0x17, 0x48, 0x04, 0x22, 0x07, 0x21, + 0x12, 0x30, 0xbe, 0xf7, 0x4c, 0xf8, 0x14, 0x48, + 0x04, 0x22, 0x05, 0x21, 0x16, 0x30, 0x3c, 0x00, + 0x90, 0x25, 0x04, 0x00, 0xbe, 0xf7, 0x46, 0xf8, + 0x12, 0x48, 0x11, 0x4a, 0xe0, 0x81, 0x20, 0x82, + 0x70, 0x32, 0x15, 0x70, 0x55, 0x70, 0x00, 0x20, + 0x3c, 0x23, 0x41, 0x01, 0x43, 0x43, 0x89, 0x18, + 0xf4, 0x31, 0x9b, 0x18, 0x01, 0x30, 0x04, 0x28, + 0x59, 0x60, 0xf5, 0xdb, 0x08, 0x48, 0x06, 0x22, + 0x1a, 0x30, 0x09, 0x49, 0xbd, 0xf7, 0x9a, 0xff, + 0x07, 0x48, 0x05, 0x4c, 0x0c, 0x30, 0x0f, 0xc8, + 0x3c, 0x00, 0xcc, 0x25, 0x04, 0x00, 0x20, 0x34, + 0x0f, 0xc4, 0x20, 0x21, 0x20, 0x1c, 0xbd, 0xf7, + 0x62, 0xff, 0xb0, 0xbd, 0x00, 0x00, 0xf8, 0x60, + 0x01, 0x00, 0x2c, 0x09, 0x00, 0x00, 0x58, 0x40, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x07, 0x48, + 0x10, 0xb5, 0x00, 0x68, 0x00, 0x28, 0x08, 0xd0, + 0x06, 0x48, 0xbe, 0xf7, 0x9c, 0xfe, 0x04, 0x1c, + 0xff, 0xf7, 0x9d, 0xfe, 0x20, 0x1c, 0xbe, 0xf7, + 0x96, 0xfe, 0x3c, 0x00, 0x08, 0x26, 0x04, 0x00, + 0x10, 0xbd, 0x00, 0x00, 0x58, 0x57, 0x01, 0x00, + 0xb5, 0xad, 0x00, 0x00, 0x04, 0x49, 0x80, 0xb5, + 0x00, 0x20, 0x88, 0x70, 0x02, 0x21, 0x20, 0x20, + 0x02, 0x4a, 0xd1, 0xf7, 0x91, 0xf8, 0x80, 0xbd, + 0xb4, 0x79, 0x01, 0x00, 0x25, 0xb5, 0x00, 0x00, + 0x80, 0xb5, 0xcc, 0xf7, 0x8f, 0xfe, 0x01, 0x49, + 0x48, 0x61, 0x80, 0xbd, 0xb4, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x18, 0x21, 0x3c, 0x00, 0x44, 0x26, + 0x04, 0x00, 0x14, 0x48, 0xbd, 0xf7, 0x29, 0xff, + 0x14, 0x48, 0x01, 0x21, 0x01, 0x70, 0x00, 0x21, + 0xc1, 0x60, 0x41, 0x70, 0x01, 0x61, 0x00, 0xf0, + 0x02, 0xf9, 0x00, 0xf0, 0xaa, 0xf8, 0x00, 0xf0, + 0x1e, 0xf8, 0x00, 0xf0, 0xba, 0xf9, 0x00, 0xf0, + 0xcc, 0xf9, 0x00, 0xf0, 0x20, 0xf9, 0x00, 0xf0, + 0x64, 0xf9, 0x00, 0xf0, 0xce, 0xf9, 0x00, 0xf0, + 0xfc, 0xf8, 0x00, 0xf0, 0x82, 0xf9, 0x3c, 0x00, + 0x80, 0x26, 0x04, 0x00, 0x00, 0xf0, 0x28, 0xf8, + 0x00, 0xf0, 0x6e, 0xf8, 0x00, 0xf0, 0x4a, 0xf8, + 0xff, 0xf7, 0xc2, 0xff, 0x00, 0xf0, 0x72, 0xf9, + 0x80, 0xbd, 0x00, 0x00, 0x40, 0x7c, 0x01, 0x00, + 0x18, 0x63, 0x01, 0x00, 0xb0, 0xb5, 0x08, 0x4c, + 0x00, 0x25, 0x08, 0x48, 0x25, 0x77, 0x20, 0x60, + 0xce, 0xf7, 0xf0, 0xfd, 0x00, 0x20, 0xe5, 0x62, + 0xd0, 0xf7, 0xd0, 0xfa, 0x21, 0x1f, 0x08, 0x80, + 0x3c, 0x00, 0xbc, 0x26, 0x04, 0x00, 0xd0, 0xf7, + 0x6c, 0xfb, 0xb0, 0xbd, 0x00, 0x00, 0xd4, 0x79, + 0x01, 0x00, 0x95, 0x75, 0x00, 0x00, 0x80, 0xb5, + 0xcc, 0xf7, 0xc1, 0xfc, 0x80, 0xbd, 0x05, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x08, 0x70, 0x48, 0x70, + 0x03, 0x48, 0x04, 0x49, 0x03, 0x4a, 0x08, 0x30, + 0xcc, 0xf7, 0x27, 0xfe, 0x80, 0xbd, 0x2c, 0x63, + 0x01, 0x00, 0xed, 0xbc, 0x00, 0x00, 0x4d, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0xf8, 0x26, 0x04, 0x00, + 0x80, 0xb5, 0xcc, 0xf7, 0x2b, 0xfe, 0x05, 0x49, + 0x48, 0x60, 0x01, 0x1c, 0x04, 0x48, 0xcc, 0xf7, + 0x4b, 0xfe, 0x04, 0x49, 0x03, 0x20, 0xcf, 0xf7, + 0x3d, 0xfe, 0x80, 0xbd, 0x2c, 0x63, 0x01, 0x00, + 0xc4, 0x60, 0x01, 0x00, 0xc1, 0xbc, 0x00, 0x00, + 0x04, 0x48, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x08, 0xc0, 0x02, 0x49, 0x10, 0x38, + 0x01, 0x60, 0x70, 0x47, 0x3c, 0x00, 0x34, 0x27, + 0x04, 0x00, 0x04, 0x7a, 0x01, 0x00, 0x1c, 0xe6, + 0x01, 0x00, 0x80, 0xb5, 0xcc, 0xf7, 0x09, 0xfe, + 0x05, 0x49, 0x05, 0x4a, 0x48, 0x60, 0x02, 0x21, + 0x24, 0x20, 0xd0, 0xf7, 0xfc, 0xff, 0x03, 0x48, + 0xc9, 0xf7, 0x6b, 0xfd, 0x80, 0xbd, 0x04, 0x7a, + 0x01, 0x00, 0x69, 0xbe, 0x00, 0x00, 0x71, 0xeb, + 0x00, 0x00, 0x10, 0xb5, 0x04, 0x4c, 0x14, 0x21, + 0x20, 0x1c, 0xbd, 0xf7, 0x96, 0xfe, 0x3c, 0x00, + 0x70, 0x27, 0x04, 0x00, 0x02, 0x48, 0x20, 0x60, + 0x10, 0xbd, 0x00, 0x00, 0x14, 0x7a, 0x01, 0x00, + 0xec, 0xe5, 0x01, 0x00, 0x80, 0xb5, 0xcc, 0xf7, + 0xe7, 0xfd, 0x07, 0x49, 0x07, 0x4a, 0x48, 0x60, + 0x02, 0x21, 0x1f, 0x20, 0xd0, 0xf7, 0xda, 0xff, + 0x05, 0x49, 0x01, 0x20, 0x08, 0x60, 0x05, 0x49, + 0x0c, 0x20, 0xcf, 0xf7, 0xf5, 0xfd, 0x80, 0xbd, + 0x14, 0x7a, 0x01, 0x00, 0xd5, 0xbf, 0x00, 0x00, + 0x3c, 0x00, 0xac, 0x27, 0x04, 0x00, 0x80, 0x5a, + 0x01, 0x00, 0x85, 0xff, 0x00, 0x00, 0x80, 0xb5, + 0xff, 0xf7, 0x4f, 0xfd, 0x01, 0x21, 0x21, 0x20, + 0x02, 0x4a, 0xd0, 0xf7, 0xc2, 0xff, 0x80, 0xbd, + 0x00, 0x00, 0xc9, 0xc1, 0x00, 0x00, 0x80, 0xb5, + 0xcc, 0xf7, 0xc1, 0xfd, 0x02, 0x49, 0x08, 0x63, + 0xc9, 0xf7, 0x57, 0xfd, 0x80, 0xbd, 0x28, 0x7a, + 0x01, 0x00, 0x10, 0xb5, 0xcc, 0xf7, 0xb7, 0xfd, + 0x16, 0x4c, 0x3c, 0x00, 0xe8, 0x27, 0x04, 0x00, + 0x20, 0x61, 0xcc, 0xf7, 0xb3, 0xfd, 0x60, 0x61, + 0x14, 0x48, 0x15, 0x49, 0x08, 0x60, 0x16, 0x49, + 0x14, 0x48, 0x08, 0x60, 0xcc, 0xf7, 0xaa, 0xfd, + 0x14, 0x49, 0x08, 0x60, 0x00, 0xf0, 0x34, 0xf8, + 0xff, 0xf7, 0xe0, 0xff, 0xff, 0xf7, 0x5e, 0xff, + 0x00, 0xf0, 0x04, 0xf9, 0x00, 0xf0, 0x8e, 0xf8, + 0xff, 0xf7, 0x6e, 0xff, 0xff, 0xf7, 0xb0, 0xff, + 0xff, 0xf7, 0x8c, 0xff, 0x3c, 0x00, 0x24, 0x28, + 0x04, 0x00, 0xff, 0xf7, 0x04, 0xff, 0x00, 0xf0, + 0xaa, 0xf8, 0x0a, 0x48, 0xbf, 0xf7, 0xbd, 0xff, + 0xc9, 0xf7, 0xbb, 0xfd, 0x09, 0x49, 0x00, 0x20, + 0xcf, 0xf7, 0xa7, 0xfd, 0x10, 0xbd, 0x40, 0x7c, + 0x01, 0x00, 0x7d, 0xb7, 0x00, 0x00, 0x18, 0x7e, + 0x01, 0x00, 0xbd, 0xb8, 0x00, 0x00, 0x1c, 0x7e, + 0x01, 0x00, 0x20, 0x7e, 0x01, 0x00, 0xb9, 0xba, + 0x00, 0x00, 0x81, 0x24, 0x01, 0x00, 0x3c, 0x00, + 0x60, 0x28, 0x04, 0x00, 0x80, 0xb5, 0x38, 0x21, + 0x01, 0x48, 0xbd, 0xf7, 0x19, 0xfe, 0x80, 0xbd, + 0x90, 0x5c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0xb0, 0xb5, 0x0c, 0x4c, 0x0b, 0x4d, 0x00, 0x20, + 0x0c, 0x34, 0x60, 0x60, 0x25, 0x60, 0xe0, 0x60, + 0x0a, 0x20, 0x20, 0x81, 0x28, 0x1c, 0xc8, 0xf7, + 0x3f, 0xfd, 0x28, 0x1c, 0xc8, 0xf7, 0x3a, 0xfd, + 0x08, 0x3d, 0x68, 0x60, 0x04, 0x48, 0xc9, 0xf7, + 0x3c, 0x00, 0x9c, 0x28, 0x04, 0x00, 0x1b, 0xfd, + 0x20, 0x1c, 0xc0, 0xf7, 0x6e, 0xfa, 0x28, 0x80, + 0xb0, 0xbd, 0xb8, 0x7a, 0x01, 0x00, 0xd5, 0x33, + 0x01, 0x00, 0xf8, 0xb5, 0x1f, 0x4e, 0x1d, 0x4c, + 0x00, 0x20, 0x0c, 0x21, 0x41, 0x43, 0x82, 0x00, + 0x01, 0x30, 0x09, 0x19, 0x08, 0x31, 0x00, 0x06, + 0x00, 0x0e, 0x04, 0x28, 0xb1, 0x50, 0xf4, 0xd3, + 0x18, 0x48, 0x0c, 0x38, 0x30, 0x61, 0xce, 0xf7, + 0xf4, 0xf9, 0x3c, 0x00, 0xd8, 0x28, 0x04, 0x00, + 0x14, 0x4c, 0xa0, 0x78, 0x00, 0x09, 0x00, 0x01, + 0xa0, 0x70, 0x00, 0x27, 0xe7, 0x70, 0x67, 0x70, + 0x00, 0x24, 0xa5, 0x00, 0x70, 0x59, 0x07, 0x70, + 0x20, 0x1c, 0xbe, 0xf7, 0x53, 0xf9, 0x71, 0x59, + 0x08, 0x71, 0x00, 0x21, 0x20, 0x1c, 0xce, 0xf7, + 0x7d, 0xf9, 0x01, 0x34, 0x24, 0x06, 0x24, 0x0e, + 0x04, 0x2c, 0xee, 0xd3, 0x07, 0x4c, 0x20, 0x78, + 0x00, 0x09, 0x00, 0x01, 0x3c, 0x00, 0x14, 0x29, + 0x04, 0x00, 0x0a, 0x30, 0x20, 0x70, 0x20, 0x78, + 0xf0, 0x21, 0x88, 0x43, 0x30, 0x30, 0x20, 0x70, + 0xa0, 0x78, 0x0f, 0x21, 0x08, 0x43, 0xa0, 0x70, + 0xf8, 0xbd, 0x00, 0x50, 0x07, 0x00, 0x10, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0xcc, 0xf7, 0x9f, 0xfb, + 0x80, 0xbd, 0xb0, 0xb5, 0x0c, 0x4c, 0x0b, 0x4d, + 0x00, 0x20, 0x0c, 0x34, 0x60, 0x60, 0x25, 0x60, + 0xe0, 0x60, 0x0a, 0x20, 0x20, 0x81, 0x3c, 0x00, + 0x50, 0x29, 0x04, 0x00, 0x28, 0x1c, 0xc8, 0xf7, + 0xe1, 0xfc, 0x28, 0x1c, 0xc8, 0xf7, 0xd4, 0xfc, + 0x08, 0x3d, 0x68, 0x60, 0x20, 0x1c, 0xc0, 0xf7, + 0x0d, 0xfa, 0x28, 0x80, 0x02, 0x48, 0xc9, 0xf7, + 0x9b, 0xfc, 0xb0, 0xbd, 0x2c, 0x7b, 0x01, 0x00, + 0x49, 0x00, 0x01, 0x00, 0x80, 0xb5, 0xca, 0xf7, + 0x2f, 0xf8, 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, + 0xb0, 0xb5, 0x12, 0x4d, 0x3c, 0x21, 0x28, 0x1c, + 0x3c, 0x00, 0x8c, 0x29, 0x04, 0x00, 0xbd, 0xf7, + 0x86, 0xfd, 0x0f, 0x48, 0x28, 0x21, 0x3c, 0x30, + 0xbd, 0xf7, 0x81, 0xfd, 0x0d, 0x48, 0x00, 0x21, + 0x14, 0x38, 0x01, 0x61, 0xc1, 0x60, 0xff, 0x21, + 0x01, 0x70, 0x41, 0x70, 0x0a, 0x49, 0x0a, 0x4a, + 0x41, 0x60, 0x01, 0x21, 0x0c, 0x20, 0xd0, 0xf7, + 0xc8, 0xfe, 0x2c, 0x1c, 0x30, 0x34, 0x0c, 0x3d, + 0x00, 0x20, 0xd0, 0xf7, 0x4a, 0xf9, 0x20, 0x80, + 0x0c, 0x3c, 0x3c, 0x00, 0xc8, 0x29, 0x04, 0x00, + 0xac, 0x42, 0xf8, 0xd1, 0xb0, 0xbd, 0x00, 0x00, + 0x60, 0x7b, 0x01, 0x00, 0x20, 0xa1, 0x07, 0x00, + 0x35, 0xcd, 0x00, 0x00, 0x08, 0x49, 0x00, 0x20, + 0x0c, 0x22, 0x42, 0x43, 0x52, 0x18, 0x10, 0x71, + 0x01, 0x30, 0x05, 0x28, 0xf8, 0xdb, 0x04, 0x48, + 0x00, 0x21, 0x08, 0x38, 0x01, 0x70, 0x41, 0x60, + 0xff, 0x21, 0x41, 0x70, 0x70, 0x47, 0x00, 0x00, + 0x74, 0x7a, 0x01, 0x00, 0x3c, 0x00, 0x04, 0x2a, + 0x04, 0x00, 0x80, 0xb5, 0x78, 0x21, 0x01, 0x48, + 0xbd, 0xf7, 0x47, 0xfd, 0x80, 0xbd, 0xc4, 0x7b, + 0x01, 0x00, 0x80, 0xb5, 0xca, 0xf7, 0x97, 0xfa, + 0x80, 0xbd, 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, + 0x0b, 0x4c, 0xff, 0x21, 0x05, 0x31, 0x20, 0x1c, + 0xbd, 0xf7, 0x37, 0xfd, 0x09, 0x48, 0xf0, 0x21, + 0x08, 0x51, 0x20, 0x1c, 0x40, 0x30, 0xc5, 0xf7, + 0x8e, 0xf9, 0x6c, 0x21, 0x06, 0x48, 0x3c, 0x00, + 0x40, 0x2a, 0x04, 0x00, 0xbd, 0xf7, 0x2c, 0xfd, + 0x04, 0x48, 0xc0, 0x21, 0x6c, 0x30, 0xbd, 0xf7, + 0x27, 0xfd, 0x10, 0xbd, 0xc4, 0x69, 0x01, 0x00, + 0xb0, 0xd9, 0x01, 0x00, 0xc8, 0x6a, 0x01, 0x00, + 0xb0, 0xb5, 0x0b, 0x4d, 0x00, 0x24, 0x1c, 0x20, + 0x60, 0x43, 0x40, 0x19, 0x6c, 0x30, 0xc3, 0xf7, + 0x0f, 0xfe, 0x01, 0x34, 0x04, 0x2c, 0xf6, 0xdb, + 0xcc, 0xf7, 0x6e, 0xfc, 0xa8, 0x63, 0xc7, 0xf7, + 0x3c, 0x00, 0x7c, 0x2a, 0x04, 0x00, 0x75, 0xf9, + 0x04, 0x48, 0xc9, 0xf7, 0x1c, 0xfc, 0x03, 0x48, + 0xcf, 0xf7, 0x03, 0xfa, 0xb0, 0xbd, 0xc4, 0x69, + 0x01, 0x00, 0xfd, 0x80, 0x00, 0x00, 0xe1, 0x22, + 0x01, 0x00, 0x10, 0xb5, 0x05, 0x4c, 0x00, 0x20, + 0x20, 0x80, 0x03, 0x48, 0x06, 0x21, 0x08, 0x30, + 0xbd, 0xf7, 0xd5, 0xfc, 0x14, 0x20, 0x60, 0x60, + 0x10, 0xbd, 0x98, 0x7c, 0x01, 0x00, 0x10, 0xb5, + 0x08, 0x4c, 0x3c, 0x00, 0xb8, 0x2a, 0x04, 0x00, + 0x00, 0x20, 0x20, 0x80, 0x60, 0x80, 0x06, 0x48, + 0x06, 0x21, 0x0c, 0x30, 0xbd, 0xf7, 0xc6, 0xfc, + 0x03, 0x48, 0x06, 0x21, 0x12, 0x30, 0xbd, 0xf7, + 0xc1, 0xfc, 0x14, 0x20, 0xa0, 0x60, 0x10, 0xbd, + 0x58, 0x7c, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x0d, 0x20, 0x05, 0x4a, + 0xd0, 0xf7, 0x2e, 0xfe, 0x04, 0x48, 0xc8, 0xf7, + 0x1f, 0xfc, 0x04, 0x48, 0x3c, 0x00, 0xf4, 0x2a, + 0x04, 0x00, 0xca, 0xf7, 0x44, 0xfc, 0x80, 0xbd, + 0x00, 0x00, 0x31, 0xd4, 0x00, 0x00, 0x51, 0xb1, + 0x00, 0x00, 0x09, 0xb1, 0x00, 0x00, 0x08, 0x49, + 0x80, 0xb5, 0x00, 0x20, 0x08, 0x60, 0xff, 0xf7, + 0xd0, 0xff, 0xff, 0xf7, 0xc0, 0xff, 0xff, 0xf7, + 0x04, 0xfc, 0x00, 0xf0, 0x4a, 0xf8, 0xff, 0xf7, + 0x0a, 0xfc, 0x00, 0xf0, 0x3c, 0xf8, 0x80, 0xbd, + 0x00, 0x00, 0xe4, 0x65, 0x01, 0x00, 0x3c, 0x00, + 0x30, 0x2b, 0x04, 0x00, 0x80, 0xb5, 0x00, 0xf0, + 0x29, 0xf8, 0x00, 0xf0, 0x1b, 0xf8, 0x00, 0xf0, + 0x51, 0xf8, 0x00, 0xf0, 0x31, 0xf8, 0x80, 0xbd, + 0x70, 0x47, 0x00, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x80, 0xb5, 0xff, 0x21, 0x89, 0x31, 0x02, 0x48, + 0xbd, 0xf7, 0xa2, 0xfc, 0x80, 0xbd, 0x00, 0x00, + 0xdc, 0x71, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x49, + 0x08, 0x20, 0xcf, 0xf7, 0x11, 0xfc, 0x80, 0xbd, + 0x3c, 0x00, 0x6c, 0x2b, 0x04, 0x00, 0x59, 0xd9, + 0x00, 0x00, 0x80, 0xb5, 0x03, 0x48, 0xcf, 0xf7, + 0x4c, 0xf9, 0x02, 0x49, 0x48, 0x80, 0x80, 0xbd, + 0x00, 0x00, 0x8d, 0x1f, 0x00, 0x00, 0x98, 0x7c, + 0x01, 0x00, 0x80, 0xb5, 0x03, 0x48, 0xcf, 0xf7, + 0x40, 0xf9, 0x02, 0x49, 0x88, 0x80, 0x80, 0xbd, + 0x00, 0x00, 0xd5, 0x23, 0x00, 0x00, 0x58, 0x7c, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x80, 0xb5, + 0x02, 0x48, 0x3c, 0x00, 0xa8, 0x2b, 0x04, 0x00, + 0xca, 0xf7, 0xe4, 0xfb, 0x80, 0xbd, 0x00, 0x00, + 0x71, 0xe0, 0x00, 0x00, 0x80, 0xb5, 0xcc, 0xf7, + 0xa5, 0xfb, 0x02, 0x21, 0x0f, 0x20, 0x06, 0x4a, + 0xd0, 0xf7, 0xc2, 0xfd, 0x14, 0x21, 0x05, 0x48, + 0xbd, 0xf7, 0x68, 0xfc, 0x03, 0x48, 0x78, 0x21, + 0x14, 0x30, 0xbd, 0xf7, 0x63, 0xfc, 0x80, 0xbd, + 0x35, 0xe2, 0x00, 0x00, 0x84, 0x66, 0x01, 0x00, + 0x80, 0xb5, 0xcc, 0xf7, 0x3c, 0x00, 0xe4, 0x2b, + 0x04, 0x00, 0xb7, 0xfb, 0x05, 0x49, 0x08, 0x61, + 0x05, 0x49, 0x0e, 0x20, 0xcf, 0xf7, 0xcd, 0xfb, + 0x04, 0x49, 0x08, 0x20, 0xcf, 0xf7, 0xc9, 0xfb, + 0x80, 0xbd, 0xec, 0x65, 0x01, 0x00, 0x01, 0x02, + 0x01, 0x00, 0xc1, 0x2e, 0x00, 0x00, 0x01, 0x49, + 0x00, 0x20, 0x08, 0x70, 0x70, 0x47, 0x40, 0xd9, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x01, 0x49, + 0x00, 0x20, 0x08, 0x70, 0x70, 0x47, 0x3c, 0x00, + 0x20, 0x2c, 0x04, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x07, 0x48, 0xc8, 0xf7, 0xf2, 0xff, + 0x06, 0x49, 0x48, 0x60, 0x06, 0x48, 0xc0, 0xf7, + 0x07, 0xfb, 0x06, 0x48, 0xc0, 0xf7, 0x86, 0xfb, + 0x05, 0x48, 0xc9, 0xf7, 0xa3, 0xfa, 0x80, 0xbd, + 0xa9, 0xe4, 0x00, 0x00, 0xa0, 0x79, 0x01, 0x00, + 0xb9, 0xe4, 0x00, 0x00, 0x85, 0x2e, 0x00, 0x00, + 0x81, 0xe4, 0x00, 0x00, 0x07, 0x48, 0x80, 0xb5, + 0x3c, 0x00, 0x5c, 0x2c, 0x04, 0x00, 0x00, 0x21, + 0x00, 0x22, 0x00, 0x23, 0x0e, 0xc0, 0x08, 0xc0, + 0x10, 0x38, 0xc8, 0x21, 0x01, 0x60, 0x00, 0x21, + 0x0c, 0x38, 0x02, 0x4a, 0xcc, 0xf7, 0x61, 0xfb, + 0x80, 0xbd, 0xd0, 0x60, 0x01, 0x00, 0xfd, 0xe5, + 0x00, 0x00, 0x80, 0xb5, 0xcc, 0xf7, 0x67, 0xfb, + 0x04, 0x49, 0x08, 0x60, 0x01, 0x1c, 0x02, 0x48, + 0x04, 0x30, 0xcc, 0xf7, 0x86, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0x3c, 0x00, 0x98, 0x2c, 0x04, 0x00, + 0xc0, 0x60, 0x01, 0x00, 0x09, 0x48, 0x80, 0xb5, + 0x0a, 0x21, 0x01, 0x70, 0x41, 0x70, 0x08, 0x49, + 0x08, 0x4a, 0x81, 0x60, 0x00, 0x21, 0xc1, 0x60, + 0x52, 0x79, 0x82, 0x70, 0x01, 0x61, 0x41, 0x61, + 0x28, 0x21, 0x18, 0x30, 0xbd, 0xf7, 0xee, 0xfb, + 0x80, 0xbd, 0x00, 0x00, 0x7c, 0x78, 0x01, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x0c, 0x5a, 0x01, 0x00, + 0xf8, 0xb5, 0x0f, 0x49, 0x3c, 0x00, 0xd4, 0x2c, + 0x04, 0x00, 0x0f, 0x48, 0x0d, 0x88, 0x4f, 0x88, + 0x06, 0x79, 0x00, 0x24, 0x30, 0x1b, 0x68, 0x43, + 0x68, 0x23, 0x0c, 0x49, 0x58, 0x43, 0x41, 0x18, + 0x7d, 0x20, 0xc0, 0x00, 0xbd, 0xf7, 0x0f, 0xfd, + 0x61, 0x00, 0x09, 0x4a, 0xa6, 0x42, 0x50, 0x52, + 0x00, 0xd1, 0x3d, 0x1c, 0x01, 0x34, 0x24, 0x06, + 0x24, 0x0e, 0x10, 0x2c, 0xea, 0xd3, 0x05, 0x49, + 0x01, 0x20, 0x08, 0x61, 0xf8, 0xbd, 0x3c, 0x00, + 0x10, 0x2d, 0x04, 0x00, 0xf6, 0x59, 0x01, 0x00, + 0x0c, 0x5a, 0x01, 0x00, 0x34, 0x44, 0x0f, 0x00, + 0x12, 0x5a, 0x01, 0x00, 0x7c, 0x78, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0xf0, 0xe7, 0xfa, 0x02, 0x49, + 0x01, 0x20, 0x08, 0x61, 0x80, 0xbd, 0x00, 0x00, + 0x7c, 0x78, 0x01, 0x00, 0x10, 0xb5, 0x04, 0x1c, + 0x08, 0x1c, 0x0f, 0x49, 0x49, 0x79, 0x00, 0x29, + 0x01, 0xd1, 0x0e, 0x4b, 0x00, 0xe0, 0x0e, 0x4b, + 0x3c, 0x00, 0x4c, 0x2d, 0x04, 0x00, 0x00, 0x2c, + 0x07, 0xd0, 0x04, 0x21, 0x11, 0x80, 0x0a, 0x1c, + 0x01, 0x24, 0x19, 0x1c, 0xbd, 0xf7, 0xcd, 0xfb, + 0x0a, 0xe0, 0x01, 0x24, 0x01, 0x1c, 0x18, 0x1c, + 0x12, 0x88, 0xbd, 0xf7, 0xc6, 0xfb, 0x00, 0xf0, + 0xc4, 0xfa, 0x05, 0x49, 0x01, 0x20, 0x08, 0x61, + 0x20, 0x1c, 0x10, 0xbd, 0x00, 0x00, 0x0c, 0x5a, + 0x01, 0x00, 0xfe, 0x59, 0x01, 0x00, 0xfa, 0x59, + 0x01, 0x00, 0x3c, 0x00, 0x88, 0x2d, 0x04, 0x00, + 0x7c, 0x78, 0x01, 0x00, 0x0d, 0x48, 0x8c, 0xb5, + 0xc1, 0x88, 0x00, 0xab, 0x0c, 0x4a, 0x99, 0x80, + 0x01, 0x89, 0x04, 0x20, 0xd9, 0x80, 0x18, 0x80, + 0x02, 0x21, 0x13, 0x20, 0xd0, 0xf7, 0xd0, 0xfc, + 0x00, 0xf0, 0xa6, 0xfa, 0x07, 0x49, 0x01, 0x20, + 0x08, 0x61, 0xff, 0xf7, 0x8d, 0xff, 0x6a, 0x46, + 0x01, 0xa9, 0x00, 0x20, 0xff, 0xf7, 0xbc, 0xff, + 0x8c, 0xbd, 0x00, 0x00, 0x3c, 0x00, 0xc4, 0x2d, + 0x04, 0x00, 0xf4, 0x59, 0x01, 0x00, 0x95, 0xf9, + 0x00, 0x00, 0x7c, 0x78, 0x01, 0x00, 0xf8, 0xb5, + 0x13, 0x4e, 0x01, 0x25, 0xb5, 0x70, 0x05, 0x20, + 0xf0, 0x70, 0x11, 0x49, 0x10, 0x48, 0x0e, 0xc9, + 0x2c, 0x30, 0x0e, 0xc0, 0x00, 0x20, 0x70, 0x61, + 0x0f, 0x48, 0x0f, 0x49, 0x10, 0x4f, 0x00, 0x24, + 0x48, 0x60, 0xa0, 0x00, 0x39, 0x58, 0x20, 0x1c, + 0xd1, 0xf7, 0xd7, 0xf8, 0x01, 0x34, 0x3c, 0x00, + 0x00, 0x2e, 0x04, 0x00, 0x10, 0x2c, 0xf7, 0xd3, + 0x06, 0x4c, 0x0b, 0x4a, 0x20, 0x34, 0x20, 0x1c, + 0x0a, 0x49, 0xb5, 0x60, 0xcc, 0xf7, 0x92, 0xfa, + 0xcc, 0xf7, 0x9e, 0xfa, 0x30, 0x61, 0x20, 0x60, + 0xf8, 0xbd, 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, + 0xb0, 0x58, 0x01, 0x00, 0x04, 0x18, 0x02, 0x00, + 0x60, 0x00, 0x07, 0x00, 0xd4, 0x44, 0x01, 0x00, + 0x45, 0xfa, 0x00, 0x00, 0x71, 0xfa, 0x00, 0x00, + 0x3c, 0x00, 0x3c, 0x2e, 0x04, 0x00, 0x0c, 0x49, + 0x30, 0xb5, 0x00, 0x23, 0xcc, 0x56, 0x0b, 0x4b, + 0x00, 0x20, 0xf0, 0x25, 0x1a, 0x5c, 0x11, 0x07, + 0x09, 0x0f, 0x09, 0x19, 0x0f, 0x29, 0x01, 0xdd, + 0x0f, 0x21, 0x02, 0xe0, 0x00, 0x29, 0x00, 0xda, + 0x00, 0x21, 0x2a, 0x40, 0x51, 0x18, 0x19, 0x54, + 0x01, 0x30, 0x0e, 0x28, 0xee, 0xdb, 0x30, 0xbd, + 0x00, 0x00, 0x64, 0x73, 0x01, 0x00, 0xc0, 0x58, + 0x01, 0x00, 0x3c, 0x00, 0x78, 0x2e, 0x04, 0x00, + 0xb0, 0xb5, 0x0d, 0x1c, 0x00, 0x28, 0x08, 0xd0, + 0x01, 0x24, 0x14, 0x80, 0x05, 0x20, 0xcc, 0xf7, + 0xb5, 0xf8, 0x80, 0x03, 0xc0, 0x0f, 0x28, 0x70, + 0x07, 0xe0, 0x28, 0x78, 0x01, 0x22, 0x41, 0x04, + 0x52, 0x04, 0x05, 0x20, 0xd0, 0xf7, 0xae, 0xfd, + 0x01, 0x24, 0x20, 0x1c, 0xb0, 0xbd, 0x00, 0x00, + 0x98, 0xb5, 0x05, 0x4c, 0x60, 0x68, 0xcc, 0xf7, + 0xf5, 0xfd, 0x00, 0x90, 0x3c, 0x00, 0xb4, 0x2e, + 0x04, 0x00, 0x00, 0xab, 0x18, 0x88, 0xe0, 0x80, + 0xce, 0xf7, 0xfb, 0xff, 0x98, 0xbd, 0xa0, 0x58, + 0x01, 0x00, 0x38, 0xb5, 0x03, 0x1c, 0x08, 0x1c, + 0x00, 0x24, 0x00, 0x2b, 0x17, 0x4d, 0x07, 0xd0, + 0x0e, 0x21, 0x11, 0x80, 0x0a, 0x1c, 0x01, 0x24, + 0x29, 0x1c, 0xbd, 0xf7, 0x0c, 0xfb, 0x22, 0xe0, + 0x11, 0x88, 0x04, 0x29, 0x17, 0xd1, 0x01, 0x1c, + 0x68, 0x46, 0x12, 0x88, 0xbd, 0xf7, 0x3c, 0x00, + 0xf0, 0x2e, 0x04, 0x00, 0x03, 0xfb, 0x00, 0x98, + 0x00, 0x28, 0x01, 0xdb, 0x32, 0x30, 0x00, 0xe0, + 0x32, 0x38, 0x00, 0x90, 0x01, 0x1c, 0x64, 0x20, + 0xbd, 0xf7, 0x98, 0xfb, 0x01, 0x06, 0x09, 0x16, + 0x00, 0x90, 0x0e, 0x22, 0x28, 0x1c, 0xbd, 0xf7, + 0x85, 0xfb, 0x06, 0xe0, 0x0e, 0x29, 0x05, 0xd1, + 0x0a, 0x1c, 0x01, 0x1c, 0x28, 0x1c, 0xbd, 0xf7, + 0xe9, 0xfa, 0x01, 0x24, 0x20, 0x1c, 0x38, 0xbd, + 0x3c, 0x00, 0x2c, 0x2f, 0x04, 0x00, 0xda, 0x59, + 0x01, 0x00, 0x38, 0xb5, 0x03, 0x1c, 0x08, 0x1c, + 0x00, 0x24, 0x00, 0x2b, 0x17, 0x4d, 0x07, 0xd0, + 0x0e, 0x21, 0x11, 0x80, 0x0a, 0x1c, 0x01, 0x24, + 0x29, 0x1c, 0xbd, 0xf7, 0xd6, 0xfa, 0x22, 0xe0, + 0x11, 0x88, 0x04, 0x29, 0x17, 0xd1, 0x01, 0x1c, + 0x68, 0x46, 0x12, 0x88, 0xbd, 0xf7, 0xcd, 0xfa, + 0x00, 0x98, 0x00, 0x28, 0x01, 0xdb, 0x32, 0x30, + 0x00, 0xe0, 0x3c, 0x00, 0x68, 0x2f, 0x04, 0x00, + 0x32, 0x38, 0x00, 0x90, 0x01, 0x1c, 0x64, 0x20, + 0xbd, 0xf7, 0x62, 0xfb, 0x01, 0x06, 0x09, 0x16, + 0x00, 0x90, 0x0e, 0x22, 0x28, 0x1c, 0xbd, 0xf7, + 0x4f, 0xfb, 0x06, 0xe0, 0x0e, 0x29, 0x05, 0xd1, + 0x0a, 0x1c, 0x01, 0x1c, 0x28, 0x1c, 0xbd, 0xf7, + 0xb3, 0xfa, 0x01, 0x24, 0x20, 0x1c, 0x38, 0xbd, + 0xcc, 0x59, 0x01, 0x00, 0x03, 0x48, 0x80, 0xb5, + 0x01, 0x78, 0x00, 0x20, 0x3c, 0x00, 0xa4, 0x2f, + 0x04, 0x00, 0xcc, 0xf7, 0xb4, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xa6, 0x58, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x02, 0x49, 0x03, 0x20, 0x08, 0x70, + 0x00, 0x20, 0x48, 0x70, 0x70, 0x47, 0x9c, 0x73, + 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, 0x11, 0x20, + 0x02, 0x4a, 0xd0, 0xf7, 0xbc, 0xfb, 0x80, 0xbd, + 0x00, 0x00, 0xa1, 0xfe, 0x00, 0x00, 0xf0, 0xb5, + 0x0b, 0x4f, 0x1c, 0x1c, 0x00, 0x23, 0x3c, 0x00, + 0xe0, 0x2f, 0x04, 0x00, 0xfd, 0x56, 0x2b, 0x1c, + 0x06, 0x2d, 0x01, 0xd1, 0x01, 0x20, 0xf0, 0xbd, + 0x06, 0x4e, 0x05, 0x1c, 0xd8, 0x00, 0x34, 0x36, + 0x35, 0x54, 0x80, 0x19, 0x41, 0x70, 0x82, 0x70, + 0x44, 0x60, 0x58, 0x1c, 0x38, 0x70, 0x00, 0x20, + 0xf0, 0xbd, 0x00, 0x00, 0x98, 0x5a, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x1c, 0x0c, 0x48, 0x00, 0xf0, + 0x21, 0xf9, 0x60, 0x78, 0xff, 0x28, 0x04, 0xd0, + 0x3c, 0x00, 0x1c, 0x30, 0x04, 0x00, 0x01, 0x23, + 0xe0, 0x56, 0x06, 0x21, 0x00, 0xf0, 0xcd, 0xf8, + 0x08, 0x4a, 0x01, 0x21, 0x10, 0x78, 0x08, 0x43, + 0x07, 0x49, 0x08, 0x70, 0x20, 0x23, 0x18, 0x43, + 0x08, 0x70, 0x80, 0x23, 0x18, 0x43, 0x10, 0x70, + 0x08, 0x70, 0x10, 0xbd, 0x00, 0x00, 0x91, 0x9b, + 0x00, 0x00, 0xe0, 0x60, 0x01, 0x00, 0x04, 0x00, + 0x07, 0x00, 0x10, 0xb5, 0x0a, 0x49, 0x04, 0x1c, + 0x08, 0x78, 0x3c, 0x00, 0x58, 0x30, 0x04, 0x00, + 0x40, 0x08, 0x40, 0x00, 0x08, 0x70, 0x08, 0x49, + 0x08, 0x70, 0x08, 0x48, 0x00, 0xf0, 0xf8, 0xf8, + 0x60, 0x78, 0xff, 0x28, 0x04, 0xd0, 0x01, 0x23, + 0xe0, 0x56, 0x05, 0x21, 0x00, 0xf0, 0xa4, 0xf8, + 0x10, 0xbd, 0x00, 0x00, 0xe0, 0x60, 0x01, 0x00, + 0x04, 0x00, 0x07, 0x00, 0x91, 0x9b, 0x00, 0x00, + 0x03, 0x48, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x0e, 0xc0, 0x08, 0xc0, 0x3c, 0x00, 0x94, 0x30, + 0x04, 0x00, 0x70, 0x47, 0x00, 0x00, 0xe8, 0x60, + 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, + 0x07, 0x4c, 0x00, 0x20, 0x60, 0x60, 0x20, 0x80, + 0xe0, 0x60, 0x02, 0x21, 0x14, 0x20, 0x04, 0x4a, + 0xd0, 0xf7, 0x49, 0xfb, 0x02, 0x48, 0x10, 0x30, + 0xa0, 0x60, 0x10, 0xbd, 0x00, 0x00, 0x58, 0x75, + 0x01, 0x00, 0x05, 0x1d, 0x01, 0x00, 0x70, 0x47, + 0x00, 0x00, 0x10, 0xb5, 0x48, 0x21, 0x3c, 0x00, + 0xd0, 0x30, 0x04, 0x00, 0x0a, 0x48, 0xbd, 0xf7, + 0xe3, 0xf9, 0x09, 0x4c, 0xe0, 0x21, 0x48, 0x34, + 0x20, 0x1c, 0xbd, 0xf7, 0xdd, 0xf9, 0x00, 0x20, + 0xc1, 0x00, 0x09, 0x19, 0x0a, 0x1c, 0x08, 0x32, + 0x01, 0x30, 0x1b, 0x28, 0x4a, 0x60, 0xf7, 0xd3, + 0x01, 0x48, 0x04, 0x38, 0x04, 0x60, 0x10, 0xbd, + 0x68, 0x5b, 0x01, 0x00, 0x80, 0xb5, 0x02, 0x21, + 0x23, 0x20, 0x02, 0x4a, 0xd0, 0xf7, 0x1e, 0xfb, + 0x3c, 0x00, 0x0c, 0x31, 0x04, 0x00, 0x80, 0xbd, + 0x00, 0x00, 0x45, 0x23, 0x01, 0x00, 0x80, 0xb5, + 0xff, 0xf7, 0x6b, 0xf8, 0x80, 0xbd, 0x70, 0x47, + 0x00, 0x00, 0xf8, 0xb5, 0x01, 0x20, 0x1d, 0x49, + 0xc0, 0x07, 0x48, 0x60, 0x1d, 0x49, 0xff, 0x20, + 0x08, 0x73, 0x1c, 0x4e, 0x10, 0x20, 0x30, 0x60, + 0x05, 0x01, 0x35, 0x60, 0x1b, 0x4c, 0x80, 0x21, + 0x20, 0x1c, 0xbd, 0xf7, 0xac, 0xf9, 0x00, 0x21, + 0x19, 0x4a, 0x3c, 0x00, 0x48, 0x31, 0x04, 0x00, + 0x15, 0x4f, 0x00, 0x20, 0x0b, 0x01, 0x1b, 0x19, + 0x5a, 0x60, 0xcb, 0x00, 0xdb, 0x19, 0x18, 0x74, + 0x01, 0x31, 0x08, 0x29, 0xf6, 0xdb, 0x0f, 0x4c, + 0xfa, 0x21, 0x21, 0x80, 0x12, 0x49, 0x61, 0x80, + 0xa0, 0x60, 0x6a, 0x46, 0x11, 0x49, 0x04, 0x20, + 0xbd, 0xf7, 0x30, 0xff, 0x6a, 0x46, 0x10, 0x49, + 0x08, 0x20, 0xbd, 0xf7, 0x2b, 0xff, 0x10, 0x20, + 0x70, 0x60, 0x75, 0x60, 0x3c, 0x00, 0x84, 0x31, + 0x04, 0x00, 0x60, 0x68, 0x02, 0x21, 0x08, 0x43, + 0x60, 0x60, 0x0b, 0x49, 0x06, 0x4a, 0x08, 0x1c, + 0x10, 0x30, 0x08, 0x3a, 0x03, 0xc2, 0xf8, 0xbd, + 0x00, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x60, + 0x07, 0x00, 0x00, 0x10, 0x07, 0x00, 0xac, 0x73, + 0x01, 0x00, 0xd1, 0x75, 0x00, 0x00, 0x20, 0x4e, + 0x00, 0x00, 0x05, 0x2c, 0x01, 0x00, 0x11, 0x2c, + 0x01, 0x00, 0x00, 0xa0, 0x07, 0x00, 0x3c, 0x00, + 0xc0, 0x31, 0x04, 0x00, 0x70, 0xb5, 0x0e, 0x1c, + 0x00, 0x24, 0xc4, 0xf7, 0x5b, 0xfe, 0x00, 0x28, + 0x3b, 0xd0, 0x45, 0x68, 0xff, 0x2d, 0x38, 0xd0, + 0x0c, 0x2e, 0x28, 0xd2, 0x01, 0xa3, 0x9b, 0x5d, + 0x5b, 0x00, 0x9f, 0x44, 0x05, 0x07, 0x09, 0x0b, + 0x0d, 0x10, 0x13, 0x16, 0x18, 0x1b, 0x1e, 0x21, + 0x18, 0x24, 0x20, 0xe0, 0x30, 0x24, 0x1e, 0xe0, + 0x60, 0x24, 0x1c, 0xe0, 0xc0, 0x24, 0x1a, 0xe0, + 0x3c, 0x00, 0xfc, 0x31, 0x04, 0x00, 0xff, 0x24, + 0x81, 0x34, 0x17, 0xe0, 0x09, 0x24, 0xa4, 0x01, + 0x14, 0xe0, 0x09, 0x24, 0xe4, 0x01, 0x11, 0xe0, + 0x0f, 0x4c, 0x0f, 0xe0, 0x09, 0x24, 0x24, 0x02, + 0x0c, 0xe0, 0x09, 0x24, 0x64, 0x02, 0x09, 0xe0, + 0x03, 0x24, 0xe4, 0x02, 0x06, 0xe0, 0x09, 0x24, + 0xa4, 0x02, 0x03, 0xe0, 0x09, 0x21, 0x9e, 0x20, + 0xbe, 0xf7, 0x39, 0xf8, 0x60, 0x00, 0x00, 0x19, + 0x40, 0x08, 0x3c, 0x00, 0x38, 0x32, 0x04, 0x00, + 0x05, 0x49, 0x80, 0x04, 0x40, 0x18, 0x05, 0x4a, + 0xa9, 0x00, 0x89, 0x18, 0x48, 0x60, 0x64, 0x20, + 0x60, 0x43, 0x70, 0xbd, 0xdc, 0x07, 0x00, 0x00, + 0x80, 0x38, 0x01, 0x00, 0x04, 0x00, 0x07, 0x00, + 0x02, 0x49, 0x80, 0xb5, 0x08, 0x60, 0xd0, 0xf7, + 0x97, 0xf8, 0x80, 0xbd, 0x5c, 0x5b, 0x01, 0x00, + 0xf8, 0xb5, 0x00, 0x26, 0x17, 0x4c, 0x17, 0x4b, + 0x19, 0x49, 0x26, 0x70, 0x3c, 0x00, 0x74, 0x32, + 0x04, 0x00, 0x00, 0x20, 0x14, 0x33, 0x0d, 0x88, + 0x15, 0x4e, 0x15, 0x4a, 0x04, 0xe0, 0xc1, 0x00, + 0xcf, 0x18, 0x7a, 0x60, 0x5e, 0x50, 0x01, 0x30, + 0xa8, 0x42, 0xf8, 0xdb, 0xc6, 0xf7, 0x2b, 0xfd, + 0xff, 0x21, 0x11, 0x4d, 0xa5, 0x31, 0x28, 0x1c, + 0xbd, 0xf7, 0xff, 0xf8, 0x00, 0x21, 0x28, 0x1c, + 0x02, 0x1c, 0x14, 0x32, 0xc2, 0x60, 0x10, 0x1c, + 0x01, 0x31, 0x14, 0x29, 0xf8, 0xdb, 0x3c, 0x00, + 0xb0, 0x32, 0x04, 0x00, 0x00, 0x26, 0xc6, 0x60, + 0x05, 0x48, 0x0c, 0x30, 0x60, 0xc0, 0x09, 0x48, + 0x18, 0x21, 0xbd, 0xf7, 0xed, 0xf8, 0x01, 0x20, + 0x04, 0x34, 0x41, 0xc4, 0x00, 0x20, 0xf8, 0xbd, + 0x70, 0x5d, 0x01, 0x00, 0x09, 0xa0, 0x00, 0x00, + 0x30, 0xd9, 0x01, 0x00, 0x56, 0x57, 0x01, 0x00, + 0x04, 0x5f, 0x01, 0x00, 0xa8, 0x60, 0x01, 0x00, + 0x80, 0xb5, 0x00, 0x20, 0xcf, 0xf7, 0xb6, 0xfc, + 0x3c, 0x00, 0xec, 0x32, 0x04, 0x00, 0x01, 0x49, + 0x08, 0x80, 0x80, 0xbd, 0x00, 0x00, 0x2c, 0x74, + 0x01, 0x00, 0x11, 0x48, 0xf8, 0xb5, 0x41, 0x79, + 0x00, 0x29, 0x02, 0xd1, 0x05, 0x78, 0x0f, 0x4e, + 0x01, 0xe0, 0x45, 0x78, 0x0f, 0x4e, 0x02, 0x23, + 0xf7, 0x5e, 0x00, 0x24, 0x60, 0x1b, 0x78, 0x43, + 0x64, 0x23, 0x0c, 0x49, 0x58, 0x43, 0x41, 0x18, + 0x7d, 0x20, 0xc0, 0x00, 0xbd, 0xf7, 0xf5, 0xf9, + 0x61, 0x00, 0x3c, 0x00, 0x28, 0x33, 0x04, 0x00, + 0x09, 0x4a, 0xac, 0x42, 0x50, 0x52, 0x01, 0xd1, + 0x00, 0x23, 0xf7, 0x5e, 0x01, 0x34, 0x24, 0x06, + 0x24, 0x0e, 0x10, 0x2c, 0xe9, 0xd3, 0xf8, 0xbd, + 0x0c, 0x5a, 0x01, 0x00, 0xfe, 0x59, 0x01, 0x00, + 0xfa, 0x59, 0x01, 0x00, 0x34, 0x44, 0x0f, 0x00, + 0x32, 0x5a, 0x01, 0x00, 0x38, 0xb5, 0x10, 0x4c, + 0xbe, 0x25, 0x25, 0x73, 0x20, 0x7a, 0x18, 0x21, + 0x88, 0x43, 0x20, 0x72, 0x3c, 0x00, 0x64, 0x33, + 0x04, 0x00, 0x6a, 0x46, 0x0d, 0x49, 0x0d, 0x20, + 0xbd, 0xf7, 0x33, 0xfe, 0x01, 0x20, 0x0b, 0x49, + 0x40, 0x03, 0x08, 0x60, 0x48, 0x60, 0x25, 0x73, + 0x2d, 0x20, 0xc0, 0x03, 0x20, 0x60, 0x25, 0x73, + 0x20, 0x7a, 0x10, 0x21, 0x08, 0x43, 0x20, 0x72, + 0x06, 0x48, 0x06, 0x49, 0x08, 0x60, 0x00, 0x20, + 0x48, 0x60, 0x38, 0xbd, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x00, 0x8d, 0x3e, 0x01, 0x00, 0x24, 0x00, + 0xa0, 0x33, 0x04, 0x00, 0x00, 0x10, 0x07, 0x00, + 0x00, 0x87, 0x93, 0x03, 0x04, 0x79, 0x01, 0x00, + 0x80, 0xb5, 0x02, 0x21, 0x15, 0x20, 0x02, 0x4a, + 0xd0, 0xf7, 0xc8, 0xf9, 0x80, 0xbd, 0x00, 0x00, + 0x0d, 0x3e, 0x01, 0x00, 0x70, 0x47, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x60, 0x04, 0x00, 0x44, 0x00, + 0x00, 0x00, 0x04, 0x00, 0x40, 0x20, 0x07, 0x00, + 0xff, 0xff, 0xff, 0xff, +}; +const uint32_t fw_len = sizeof(fw_buf) / sizeof(fw_buf[0]); diff --git a/libraries/WiFi/extras/wifi_dnld/wifi_dnld.cproj b/libraries/WiFi/extras/wifi_dnld/wifi_dnld.cproj new file mode 100644 index 000000000..790db3c67 --- /dev/null +++ b/libraries/WiFi/extras/wifi_dnld/wifi_dnld.cproj @@ -0,0 +1,495 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <SchemaVersion>2.0</SchemaVersion> + <ProjectVersion>6.0</ProjectVersion> + <ToolchainName>com.Atmel.AVRGCC32</ToolchainName> + <ProjectGuid>eb9606bc-de32-4edd-9cda-ae3bf36977a2</ProjectGuid> + <Name>wifi_dnld</Name> + <avrdevice>AT32uc3a1256</avrdevice> + <avrdeviceseries>none</avrdeviceseries> + <AvrProjectType>Importer</AvrProjectType> + <OutputType>Executable</OutputType> + <Language>C</Language> + <OutputFileName>wifi_dnld</OutputFileName> + <OutputFileExtension>.elf</OutputFileExtension> + <OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory> + <ToolchainFlavour>Native</ToolchainFlavour> + <avrtool /> + <KeepTimersRunning>true</KeepTimersRunning> + <OverrideVtor>false</OverrideVtor> + <OverrideVtorValue /> + <eraseonlaunchrule>0</eraseonlaunchrule> + <AsfVersion>3.5.0</AsfVersion> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)' == 'Release' "> + <ToolchainSettings> + <Avr32Gcc> + <avr32gcc.common.outputfiles.hex>True</avr32gcc.common.outputfiles.hex> + <avr32gcc.common.outputfiles.lss>True</avr32gcc.common.outputfiles.lss> + <avr32gcc.common.outputfiles.eep>True</avr32gcc.common.outputfiles.eep> + <avr32gcc.common.outputfiles.srec>True</avr32gcc.common.outputfiles.srec> + <avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories>false</avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories> + <avr32gcc.compiler.preprocessor.PreprocessOnly>false</avr32gcc.compiler.preprocessor.PreprocessOnly> + <avr32gcc.compiler.symbols.DefSymbols> + <ListValues> + <Value>BOARD=ARDUINO</Value> + </ListValues> + </avr32gcc.compiler.symbols.DefSymbols> + <avr32gcc.compiler.directories.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src</Value> + </ListValues> + </avr32gcc.compiler.directories.IncludePaths> + <avr32gcc.compiler.optimization.OtherFlags>-fdata-sections</avr32gcc.compiler.optimization.OtherFlags> + <avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection>true</avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection> + <avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.compiler.optimization.EnableFastMath>false</avr32gcc.compiler.optimization.EnableFastMath> + <avr32gcc.compiler.optimization.GeneratePositionIndependentCode>false</avr32gcc.compiler.optimization.GeneratePositionIndependentCode> + <avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions>true</avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions> + <avr32gcc.compiler.optimization.ForceDoubleWordAlignment>false</avr32gcc.compiler.optimization.ForceDoubleWordAlignment> + <avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool>false</avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool> + <avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing>false</avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing> + <avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData>false</avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData> + <avr32gcc.compiler.optimization.OtherDebuggingFlags /> + <avr32gcc.compiler.optimization.GenerateGprofInformation>false</avr32gcc.compiler.optimization.GenerateGprofInformation> + <avr32gcc.compiler.optimization.GenerateProfInformation>false</avr32gcc.compiler.optimization.GenerateProfInformation> + <avr32gcc.compiler.warnings.AllWarnings>true</avr32gcc.compiler.warnings.AllWarnings> + <avr32gcc.compiler.warnings.CheckSyntaxOnly>false</avr32gcc.compiler.warnings.CheckSyntaxOnly> + <avr32gcc.compiler.warnings.Pedantic>false</avr32gcc.compiler.warnings.Pedantic> + <avr32gcc.compiler.warnings.PedanticWarningsAsErrors>false</avr32gcc.compiler.warnings.PedanticWarningsAsErrors> + <avr32gcc.compiler.warnings.InhibitAllWarnings>false</avr32gcc.compiler.warnings.InhibitAllWarnings> + <avr32gcc.compiler.miscellaneous.OtherFlags>-c -fmessage-length=0</avr32gcc.compiler.miscellaneous.OtherFlags> + <avr32gcc.compiler.miscellaneous.SupportAnsiPrograms>false</avr32gcc.compiler.miscellaneous.SupportAnsiPrograms> + <avr32gcc.linker.general.DoNotUseStandardStartFiles>true</avr32gcc.linker.general.DoNotUseStandardStartFiles> + <avr32gcc.linker.general.DoNotUseDefaultLibraries>false</avr32gcc.linker.general.DoNotUseDefaultLibraries> + <avr32gcc.linker.general.NoStartupOrDefaultLibs>false</avr32gcc.linker.general.NoStartupOrDefaultLibs> + <avr32gcc.linker.general.OmitAllSymbolInformation>false</avr32gcc.linker.general.OmitAllSymbolInformation> + <avr32gcc.linker.general.NoSharedLibraries>false</avr32gcc.linker.general.NoSharedLibraries> + <avr32gcc.linker.libraries.Libraries> + <ListValues> + <Value>newlib_addons-at32ucr2-speed_opt</Value> + </ListValues> + </avr32gcc.linker.libraries.Libraries> + <avr32gcc.linker.libraries.LibrarySearchPaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.linker.libraries.LibrarySearchPaths> + <avr32gcc.linker.optimization.GarbageCollectUnusedSections>true</avr32gcc.linker.optimization.GarbageCollectUnusedSections> + <avr32gcc.linker.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.linker.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.linker.optimization.EnableFastMath>false</avr32gcc.linker.optimization.EnableFastMath> + <avr32gcc.linker.optimization.GeneratePositionIndependentCode>false</avr32gcc.linker.optimization.GeneratePositionIndependentCode> + <avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection>true</avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection> + <avr32gcc.linker.optimization.AllowDirectReferencesToDataSection>true</avr32gcc.linker.optimization.AllowDirectReferencesToDataSection> + <avr32gcc.assembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.assembler.general.IncludePaths> + <avr32gcc.assembler.general.AnounceVersion>false</avr32gcc.assembler.general.AnounceVersion> + <avr32gcc.preprocessingassembler.general.AssemblerFlags>-Wa,-g</avr32gcc.preprocessingassembler.general.AssemblerFlags> + <avr32gcc.preprocessingassembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.preprocessingassembler.general.IncludePaths> + <avr32gcc.preprocessingassembler.general.SuppressWarnings>false</avr32gcc.preprocessingassembler.general.SuppressWarnings> + <avr32gcc.preprocessingassembler.general.AnounceVersion>false</avr32gcc.preprocessingassembler.general.AnounceVersion> + </Avr32Gcc> + </ToolchainSettings> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> + <ToolchainSettings> + <Avr32Gcc> + <avr32gcc.common.outputfiles.hex>True</avr32gcc.common.outputfiles.hex> + <avr32gcc.common.outputfiles.lss>True</avr32gcc.common.outputfiles.lss> + <avr32gcc.common.outputfiles.eep>True</avr32gcc.common.outputfiles.eep> + <avr32gcc.common.outputfiles.srec>True</avr32gcc.common.outputfiles.srec> + <avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories>false</avr32gcc.compiler.preprocessor.DoNotSearchSystemDirectories> + <avr32gcc.compiler.preprocessor.PreprocessOnly>false</avr32gcc.compiler.preprocessor.PreprocessOnly> + <avr32gcc.compiler.symbols.DefSymbols> + <ListValues> + <Value>BOARD=ARDUINO</Value> + </ListValues> + </avr32gcc.compiler.symbols.DefSymbols> + <avr32gcc.compiler.directories.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + <Value>../src</Value> + </ListValues> + </avr32gcc.compiler.directories.IncludePaths> + <avr32gcc.compiler.optimization.OtherFlags>-fdata-sections</avr32gcc.compiler.optimization.OtherFlags> + <avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection>true</avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection> + <avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.compiler.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.compiler.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.compiler.optimization.EnableFastMath>false</avr32gcc.compiler.optimization.EnableFastMath> + <avr32gcc.compiler.optimization.GeneratePositionIndependentCode>false</avr32gcc.compiler.optimization.GeneratePositionIndependentCode> + <avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions>true</avr32gcc.compiler.optimization.UseAssemblerForPseudoInstructions> + <avr32gcc.compiler.optimization.ForceDoubleWordAlignment>false</avr32gcc.compiler.optimization.ForceDoubleWordAlignment> + <avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool>false</avr32gcc.compiler.optimization.PutLargeImmediatesInConstPool> + <avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing>false</avr32gcc.compiler.optimization.DoNotInitializeGotRegisterBeforeUsing> + <avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData>false</avr32gcc.compiler.optimization.UseSectionRoDataForReadOnlyData> + <avr32gcc.compiler.optimization.DebugLevel>Maximum (-g3)</avr32gcc.compiler.optimization.DebugLevel> + <avr32gcc.compiler.optimization.OtherDebuggingFlags /> + <avr32gcc.compiler.optimization.GenerateGprofInformation>false</avr32gcc.compiler.optimization.GenerateGprofInformation> + <avr32gcc.compiler.optimization.GenerateProfInformation>false</avr32gcc.compiler.optimization.GenerateProfInformation> + <avr32gcc.compiler.warnings.AllWarnings>true</avr32gcc.compiler.warnings.AllWarnings> + <avr32gcc.compiler.warnings.CheckSyntaxOnly>false</avr32gcc.compiler.warnings.CheckSyntaxOnly> + <avr32gcc.compiler.warnings.Pedantic>false</avr32gcc.compiler.warnings.Pedantic> + <avr32gcc.compiler.warnings.PedanticWarningsAsErrors>false</avr32gcc.compiler.warnings.PedanticWarningsAsErrors> + <avr32gcc.compiler.warnings.InhibitAllWarnings>false</avr32gcc.compiler.warnings.InhibitAllWarnings> + <avr32gcc.compiler.miscellaneous.OtherFlags>-c -fmessage-length=0</avr32gcc.compiler.miscellaneous.OtherFlags> + <avr32gcc.compiler.miscellaneous.SupportAnsiPrograms>false</avr32gcc.compiler.miscellaneous.SupportAnsiPrograms> + <avr32gcc.linker.general.DoNotUseStandardStartFiles>true</avr32gcc.linker.general.DoNotUseStandardStartFiles> + <avr32gcc.linker.general.DoNotUseDefaultLibraries>false</avr32gcc.linker.general.DoNotUseDefaultLibraries> + <avr32gcc.linker.general.NoStartupOrDefaultLibs>false</avr32gcc.linker.general.NoStartupOrDefaultLibs> + <avr32gcc.linker.general.OmitAllSymbolInformation>false</avr32gcc.linker.general.OmitAllSymbolInformation> + <avr32gcc.linker.general.NoSharedLibraries>false</avr32gcc.linker.general.NoSharedLibraries> + <avr32gcc.linker.libraries.Libraries> + <ListValues> + <Value>newlib_addons-at32ucr2-speed_opt</Value> + </ListValues> + </avr32gcc.linker.libraries.Libraries> + <avr32gcc.linker.libraries.LibrarySearchPaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.linker.libraries.LibrarySearchPaths> + <avr32gcc.linker.optimization.GarbageCollectUnusedSections>true</avr32gcc.linker.optimization.GarbageCollectUnusedSections> + <avr32gcc.linker.optimization.EnableFastFloatingPointLibrary>false</avr32gcc.linker.optimization.EnableFastFloatingPointLibrary> + <avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations>false</avr32gcc.linker.optimization.EnableUnsafeMatchOptimizations> + <avr32gcc.linker.optimization.EnableFastMath>false</avr32gcc.linker.optimization.EnableFastMath> + <avr32gcc.linker.optimization.GeneratePositionIndependentCode>false</avr32gcc.linker.optimization.GeneratePositionIndependentCode> + <avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection>true</avr32gcc.linker.optimization.PutReadOnlyDataInWritableDataSection> + <avr32gcc.linker.optimization.AllowDirectReferencesToDataSection>true</avr32gcc.linker.optimization.AllowDirectReferencesToDataSection> + <avr32gcc.assembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.assembler.general.IncludePaths> + <avr32gcc.assembler.general.AnounceVersion>false</avr32gcc.assembler.general.AnounceVersion> + <avr32gcc.assembler.debugging.DebugLevel>Default (-g)</avr32gcc.assembler.debugging.DebugLevel> + <avr32gcc.preprocessingassembler.general.AssemblerFlags>-Wa,-g</avr32gcc.preprocessingassembler.general.AssemblerFlags> + <avr32gcc.preprocessingassembler.general.IncludePaths> + <ListValues> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/DEBUG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/SERVICES/MEMORY/CTRL_ACCESS</Value> + <Value>../src/CONFIG</Value> + <Value>../src/SOFTWARE_FRAMEWORK/COMPONENTS/MEMORY/DATA_FLASH/AT45DBX</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/USART</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/SPI</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/PM</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/FLASHC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR</Value> + <Value>../src/SOFTWARE_FRAMEWORK/UTILS</Value> + <Value>../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC</Value> + <Value>../src/SOFTWARE_FRAMEWORK/BOARDS</Value> + </ListValues> + </avr32gcc.preprocessingassembler.general.IncludePaths> + <avr32gcc.preprocessingassembler.general.SuppressWarnings>false</avr32gcc.preprocessingassembler.general.SuppressWarnings> + <avr32gcc.preprocessingassembler.general.AnounceVersion>false</avr32gcc.preprocessingassembler.general.AnounceVersion> + <avr32gcc.preprocessingassembler.debugging.DebugLevel>Default (-Wa,-g)</avr32gcc.preprocessingassembler.debugging.DebugLevel> + </Avr32Gcc> + </ToolchainSettings> + </PropertyGroup> + <Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Compiler.targets" /> + <ItemGroup> + <Folder Include="src" /> + <Compile Include="src\clocks.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\clocks.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\flash_fw.c"> + <SubType>compile</SubType> + </Compile> + <None Include="src\license.txt"> + <SubType>compile</SubType> + </None> + <Compile Include="src\nor_flash.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\nor_flash.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\printf-stdarg.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\printf-stdarg.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\startup.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\startup.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\wl_fw.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\CONFIG" /> + <Compile Include="src\CONFIG\conf_access.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\CONFIG\conf_at45dbx.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\Doc" /> + <None Include="src\Doc\gettingstarted.pdf"> + <SubType>compile</SubType> + </None> + <None Include="src\Doc\SPB104 product brief.pdf"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\ASM" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\ASM\trampoline.x"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\BOARDS" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\board.h"> + <SubType>compile</SubType> + </Compile> + <None Include="src\SOFTWARE_FRAMEWORK\BOARDS\board.h.ori"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO\arduino.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO\led.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\BOARDS\ARDUINO\led.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx_mem.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\COMPONENTS\MEMORY\DATA_FLASH\AT45DBX\at45dbx_mem.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\FLASHC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\FLASHC\flashc.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\FLASHC\flashc.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\GPIO" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\GPIO\gpio.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\GPIO\gpio.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC\exception.x"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC\intc.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\INTC\intc.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\pm.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\pm.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\pm_conf_clocks.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\power_clocks_lib.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\PM\power_clocks_lib.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\SPI" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\SPI\spi.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\SPI\spi.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\DRIVERS\USART" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\USART\usart.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\DRIVERS\USART\usart.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY\CTRL_ACCESS" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY\CTRL_ACCESS\ctrl_access.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\SERVICES\MEMORY\CTRL_ACCESS\ctrl_access.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\compiler.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\conf_isp.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\parts.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\debug.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\debug.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\print_funcs.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\DEBUG\print_funcs.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS" /> + <None Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\libnewlib_addons-at32ucr2-speed_opt.a"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_cpu.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_exceptions.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_interrupts.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_io.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\LIBS\NEWLIB_ADDONS\INCLUDE\nlao_usart.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\0512" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\0512\GCC" /> + <None Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\0512\GCC\link_uc3a0512.lds"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\1256" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\1256\GCC" /> + <None Include="src\SOFTWARE_FRAMEWORK\UTILS\LINKER_SCRIPTS\AT32UC3A\1256\GCC\link_uc3a1256.lds"> + <SubType>compile</SubType> + </None> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\mrepeat.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\preprocessor.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\stringz.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\PREPROCESSOR\tpaste.h"> + <SubType>compile</SubType> + </Compile> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES" /> + <Folder Include="src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES\GCC" /> + <Compile Include="src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES\GCC\crt0.x"> + <SubType>compile</SubType> + </Compile> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/libraries/WiFi/extras/wifishield.atsln b/libraries/WiFi/extras/wifishield.atsln new file mode 100644 index 000000000..e9a149ba1 --- /dev/null +++ b/libraries/WiFi/extras/wifishield.atsln @@ -0,0 +1,36 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Atmel Studio Solution File, Format Version 11.00 +Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "wifi_dnld", "wifi_dnld\wifi_dnld.cproj", "{EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}" +EndProject +Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "wifiHD", "wifiHD\wifiHD.cproj", "{417E15DB-488A-4B56-8D4E-FBE832B2B649}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug_512|AVR = Debug_512|AVR + Debug|AVR = Debug|AVR + Release_512|AVR = Release_512|AVR + Release|AVR = Release|AVR + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Debug_512|AVR.ActiveCfg = Debug|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Debug_512|AVR.Build.0 = Debug|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Debug|AVR.ActiveCfg = Debug|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Debug|AVR.Build.0 = Debug|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Release_512|AVR.ActiveCfg = Release|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Release_512|AVR.Build.0 = Release|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Release|AVR.ActiveCfg = Release|AVR + {EB9606BC-DE32-4EDD-9CDA-AE3BF36977A2}.Release|AVR.Build.0 = Release|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Debug_512|AVR.ActiveCfg = Debug_512|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Debug_512|AVR.Build.0 = Debug_512|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Debug|AVR.ActiveCfg = Debug|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Debug|AVR.Build.0 = Debug|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Release_512|AVR.ActiveCfg = Release_512|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Release_512|AVR.Build.0 = Release_512|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Release|AVR.ActiveCfg = Release|AVR + {417E15DB-488A-4B56-8D4E-FBE832B2B649}.Release|AVR.Build.0 = Release|AVR + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/hardware/arduino/avr/libraries/WiFi/keywords.txt b/libraries/WiFi/keywords.txt similarity index 86% rename from hardware/arduino/avr/libraries/WiFi/keywords.txt rename to libraries/WiFi/keywords.txt index 4106a7d47..7a6f0bc05 100644 --- a/hardware/arduino/avr/libraries/WiFi/keywords.txt +++ b/libraries/WiFi/keywords.txt @@ -2,11 +2,17 @@ # Syntax Coloring Map For WiFi ####################################### +####################################### +# Library (KEYWORD3) +####################################### + +WiFi KEYWORD3 +WiFiUdp KEYWORD3 + ####################################### # Datatypes (KEYWORD1) ####################################### -WiFi KEYWORD1 Client KEYWORD1 Server KEYWORD1 @@ -14,6 +20,7 @@ Server KEYWORD1 # Methods and Functions (KEYWORD2) ####################################### +firmwareVersion KEYWORD2 status KEYWORD2 connect KEYWORD2 write KEYWORD2 @@ -45,6 +52,7 @@ parsePacket KEYWORD2 remoteIP KEYWORD2 remotePort KEYWORD2 + ####################################### # Constants (LITERAL1) ####################################### diff --git a/libraries/WiFi/library.properties b/libraries/WiFi/library.properties new file mode 100644 index 000000000..619690785 --- /dev/null +++ b/libraries/WiFi/library.properties @@ -0,0 +1,10 @@ +name=WiFi +author=Arduino +email=info@arduino.cc +sentence=The libary to use with the Arduino WiFi shield. +paragraph=With this library you can instantiate Servers, Clients and send/receive UDP packets through WiFi. The shield can connect either to open or encrypted networks (WEP, WPA). The IP address can be assigned statically or through a DHCP. The library can also manage DNS. +url=http:http://arduino.cc/en/Reference/WiFi +architectures=avr, sam +version=1.2 +dependencies=SPI, IPAddress +core-dependencies=arduino (>=1.5.0) diff --git a/hardware/arduino/avr/libraries/WiFi/WiFi.cpp b/libraries/WiFi/src/WiFi.cpp old mode 100644 new mode 100755 similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/WiFi.cpp rename to libraries/WiFi/src/WiFi.cpp index f209280fd..5d6cd121b --- a/hardware/arduino/avr/libraries/WiFi/WiFi.cpp +++ b/libraries/WiFi/src/WiFi.cpp @@ -1,10 +1,10 @@ -#include "wifi_drv.h" +#include "utility/wifi_drv.h" #include "WiFi.h" extern "C" { #include "utility/wl_definitions.h" #include "utility/wl_types.h" - #include "debug.h" + #include "utility/debug.h" } // XXX: don't make assumptions about the value of MAX_SOCK_NUM. diff --git a/hardware/arduino/avr/libraries/WiFi/WiFi.h b/libraries/WiFi/src/WiFi.h old mode 100644 new mode 100755 similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/WiFi.h rename to libraries/WiFi/src/WiFi.h diff --git a/hardware/arduino/avr/libraries/WiFi/WiFiClient.h b/libraries/WiFi/src/WiFiClient.h old mode 100644 new mode 100755 similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/WiFiClient.h rename to libraries/WiFi/src/WiFiClient.h diff --git a/hardware/arduino/avr/libraries/WiFi/WiFiServer.cpp b/libraries/WiFi/src/WiFiServer.cpp similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/WiFiServer.cpp rename to libraries/WiFi/src/WiFiServer.cpp index 2f03bc1c1..2dc2dfa20 100644 --- a/hardware/arduino/avr/libraries/WiFi/WiFiServer.cpp +++ b/libraries/WiFi/src/WiFiServer.cpp @@ -1,5 +1,5 @@ #include <string.h> -#include "server_drv.h" +#include "utility/server_drv.h" extern "C" { #include "utility/debug.h" diff --git a/hardware/arduino/avr/libraries/WiFi/WiFiServer.h b/libraries/WiFi/src/WiFiServer.h old mode 100644 new mode 100755 similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/WiFiServer.h rename to libraries/WiFi/src/WiFiServer.h diff --git a/hardware/arduino/avr/libraries/WiFi/WiFiUdp.h b/libraries/WiFi/src/WiFiUdp.h similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/WiFiUdp.h rename to libraries/WiFi/src/WiFiUdp.h diff --git a/hardware/arduino/avr/libraries/WiFi/utility/debug.h b/libraries/WiFi/src/utility/debug.h similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/utility/debug.h rename to libraries/WiFi/src/utility/debug.h diff --git a/hardware/arduino/avr/libraries/WiFi/utility/server_drv.cpp b/libraries/WiFi/src/utility/server_drv.cpp similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/utility/server_drv.cpp rename to libraries/WiFi/src/utility/server_drv.cpp index 4a6d2932b..14c2a7877 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/server_drv.cpp +++ b/libraries/WiFi/src/utility/server_drv.cpp @@ -1,25 +1,25 @@ //#define _DEBUG_ -#include "server_drv.h" +#include "utility/server_drv.h" #include "Arduino.h" -#include "spi_drv.h" +#include "utility/spi_drv.h" extern "C" { -#include "wl_types.h" -#include "debug.h" +#include "utility/wl_types.h" +#include "utility/debug.h" } // Start server TCP on port specified -void ServerDrv::startServer(uint16_t port, uint8_t sock, uint8_t protMode) +void ServerDrv::startServer(uint16_t port, uint8_t sock, uint8_t protMode) { WAIT_FOR_SLAVE_SELECT(); // Send Command - SpiDrv::sendCmd(START_SERVER_TCP_CMD, PARAM_NUMS_3); + SpiDrv::sendCmd(START_SERVER_TCP_CMD, PARAM_NUMS_3); SpiDrv::sendParam(port); - SpiDrv::sendParam(&sock, 1); - SpiDrv::sendParam(&protMode, 1, LAST_PARAM); + SpiDrv::sendParam(&sock, 1); + SpiDrv::sendParam(&protMode, 1, LAST_PARAM); //Wait the reply elaboration SpiDrv::waitForSlaveReady(); @@ -35,15 +35,15 @@ void ServerDrv::startServer(uint16_t port, uint8_t sock, uint8_t protMode) } // Start server TCP on port specified -void ServerDrv::startClient(uint32_t ipAddress, uint16_t port, uint8_t sock, uint8_t protMode) +void ServerDrv::startClient(uint32_t ipAddress, uint16_t port, uint8_t sock, uint8_t protMode) { WAIT_FOR_SLAVE_SELECT(); // Send Command - SpiDrv::sendCmd(START_CLIENT_TCP_CMD, PARAM_NUMS_4); + SpiDrv::sendCmd(START_CLIENT_TCP_CMD, PARAM_NUMS_4); SpiDrv::sendParam((uint8_t*)&ipAddress, sizeof(ipAddress)); SpiDrv::sendParam(port); - SpiDrv::sendParam(&sock, 1); - SpiDrv::sendParam(&protMode, 1, LAST_PARAM); + SpiDrv::sendParam(&sock, 1); + SpiDrv::sendParam(&protMode, 1, LAST_PARAM); //Wait the reply elaboration SpiDrv::waitForSlaveReady(); @@ -193,57 +193,57 @@ bool ServerDrv::getDataBuf(uint8_t sock, uint8_t *_data, uint16_t *_dataLen) return false; } -bool ServerDrv::insertDataBuf(uint8_t sock, const uint8_t *data, uint16_t _len) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(INSERT_DATABUF_CMD, PARAM_NUMS_2); - SpiDrv::sendBuffer(&sock, sizeof(sock)); - SpiDrv::sendBuffer((uint8_t *)data, _len, LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseData8(INSERT_DATABUF_CMD, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - if (_dataLen!=0) - { - return (_data == 1); - } - return false; -} - -bool ServerDrv::sendUdpData(uint8_t sock) -{ - WAIT_FOR_SLAVE_SELECT(); - // Send Command - SpiDrv::sendCmd(SEND_DATA_UDP_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - uint8_t _data = 0; - uint8_t _dataLen = 0; - if (!SpiDrv::waitResponseData8(SEND_DATA_UDP_CMD, &_data, &_dataLen)) - { - WARN("error waitResponse"); - } - SpiDrv::spiSlaveDeselect(); - if (_dataLen!=0) - { - return (_data == 1); - } - return false; -} - +bool ServerDrv::insertDataBuf(uint8_t sock, const uint8_t *data, uint16_t _len) +{ + WAIT_FOR_SLAVE_SELECT(); + // Send Command + SpiDrv::sendCmd(INSERT_DATABUF_CMD, PARAM_NUMS_2); + SpiDrv::sendBuffer(&sock, sizeof(sock)); + SpiDrv::sendBuffer((uint8_t *)data, _len, LAST_PARAM); + + //Wait the reply elaboration + SpiDrv::waitForSlaveReady(); + + // Wait for reply + uint8_t _data = 0; + uint8_t _dataLen = 0; + if (!SpiDrv::waitResponseData8(INSERT_DATABUF_CMD, &_data, &_dataLen)) + { + WARN("error waitResponse"); + } + SpiDrv::spiSlaveDeselect(); + if (_dataLen!=0) + { + return (_data == 1); + } + return false; +} + +bool ServerDrv::sendUdpData(uint8_t sock) +{ + WAIT_FOR_SLAVE_SELECT(); + // Send Command + SpiDrv::sendCmd(SEND_DATA_UDP_CMD, PARAM_NUMS_1); + SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); + + //Wait the reply elaboration + SpiDrv::waitForSlaveReady(); + + // Wait for reply + uint8_t _data = 0; + uint8_t _dataLen = 0; + if (!SpiDrv::waitResponseData8(SEND_DATA_UDP_CMD, &_data, &_dataLen)) + { + WARN("error waitResponse"); + } + SpiDrv::spiSlaveDeselect(); + if (_dataLen!=0) + { + return (_data == 1); + } + return false; +} + bool ServerDrv::sendData(uint8_t sock, const uint8_t *data, uint16_t len) { diff --git a/hardware/arduino/avr/libraries/WiFi/utility/server_drv.h b/libraries/WiFi/src/utility/server_drv.h similarity index 97% rename from hardware/arduino/avr/libraries/WiFi/utility/server_drv.h rename to libraries/WiFi/src/utility/server_drv.h index 50ba7e396..c8b234418 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/server_drv.h +++ b/libraries/WiFi/src/utility/server_drv.h @@ -2,18 +2,18 @@ #define Server_Drv_h #include <inttypes.h> -#include "wifi_spi.h" +#include "utility/wifi_spi.h" + +typedef enum eProtMode {TCP_MODE, UDP_MODE}tProtMode; -typedef enum eProtMode {TCP_MODE, UDP_MODE}tProtMode; - class ServerDrv { public: - - // Start server TCP on port specified - static void startServer(uint16_t port, uint8_t sock, uint8_t protMode=TCP_MODE); - static void startClient(uint32_t ipAddress, uint16_t port, uint8_t sock, uint8_t protMode=TCP_MODE); + // Start server TCP on port specified + static void startServer(uint16_t port, uint8_t sock, uint8_t protMode=TCP_MODE); + + static void startClient(uint32_t ipAddress, uint16_t port, uint8_t sock, uint8_t protMode=TCP_MODE); static void stopClient(uint8_t sock); @@ -25,12 +25,12 @@ public: static bool getDataBuf(uint8_t sock, uint8_t *data, uint16_t *len); - static bool insertDataBuf(uint8_t sock, const uint8_t *_data, uint16_t _dataLen); - + static bool insertDataBuf(uint8_t sock, const uint8_t *_data, uint16_t _dataLen); + static bool sendData(uint8_t sock, const uint8_t *data, uint16_t len); - static bool sendUdpData(uint8_t sock); - + static bool sendUdpData(uint8_t sock); + static uint16_t availData(uint8_t sock); static uint8_t checkDataSent(uint8_t sock); diff --git a/hardware/arduino/sam/libraries/WiFi/utility/socket.c b/libraries/WiFi/src/utility/socket.c similarity index 95% rename from hardware/arduino/sam/libraries/WiFi/utility/socket.c rename to libraries/WiFi/src/utility/socket.c index 665073b04..acf2777ea 100644 --- a/hardware/arduino/sam/libraries/WiFi/utility/socket.c +++ b/libraries/WiFi/src/utility/socket.c @@ -5,7 +5,7 @@ * */ #include <inttypes.h> -#include "socket.h" +#include "utility/socket.h" SOCKET socket(uint8 protocol) {return 0;} // Opens a socket(TCP or UDP or IP_RAW mode) void close(SOCKET s) {} // Close socket diff --git a/hardware/arduino/avr/libraries/WiFi/utility/spi_drv.h b/libraries/WiFi/src/utility/spi_drv.h similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/utility/spi_drv.h rename to libraries/WiFi/src/utility/spi_drv.h index b7e4cb72e..048c6b0c5 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/spi_drv.h +++ b/libraries/WiFi/src/utility/spi_drv.h @@ -2,9 +2,9 @@ #define SPI_Drv_h #include <inttypes.h> -#include "wifi_spi.h" +#include "utility/wifi_spi.h" -#define SPI_START_CMD_DELAY 10 +#define SPI_START_CMD_DELAY 10 #define NO_LAST_PARAM 0 #define LAST_PARAM 1 diff --git a/hardware/arduino/avr/libraries/WiFi/utility/wifi_drv.cpp b/libraries/WiFi/src/utility/wifi_drv.cpp similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/utility/wifi_drv.cpp rename to libraries/WiFi/src/utility/wifi_drv.cpp index ccd5f254f..8786dada1 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/wifi_drv.cpp +++ b/libraries/WiFi/src/utility/wifi_drv.cpp @@ -3,15 +3,15 @@ #include <stdint.h> #include "Arduino.h" -#include "spi_drv.h" -#include "wifi_drv.h" +#include "utility/spi_drv.h" +#include "utility/wifi_drv.h" #define _DEBUG_ extern "C" { -#include "wifi_spi.h" -#include "wl_types.h" -#include "debug.h" +#include "utility/wifi_spi.h" +#include "utility/wl_types.h" +#include "utility/debug.h" } // Array of data to cache the information related to the networks discovered @@ -53,26 +53,26 @@ void WiFiDrv::getNetworkData(uint8_t *ip, uint8_t *mask, uint8_t *gwip) SpiDrv::spiSlaveDeselect(); } -void WiFiDrv::getRemoteData(uint8_t sock, uint8_t *ip, uint8_t *port) -{ - tParam params[PARAM_NUMS_2] = { {0, (char*)ip}, {0, (char*)port} }; - - WAIT_FOR_SLAVE_SELECT(); - - // Send Command - SpiDrv::sendCmd(GET_REMOTE_DATA_CMD, PARAM_NUMS_1); - SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); - - //Wait the reply elaboration - SpiDrv::waitForSlaveReady(); - - // Wait for reply - SpiDrv::waitResponseParams(GET_REMOTE_DATA_CMD, PARAM_NUMS_2, params); - - SpiDrv::spiSlaveDeselect(); -} - - +void WiFiDrv::getRemoteData(uint8_t sock, uint8_t *ip, uint8_t *port) +{ + tParam params[PARAM_NUMS_2] = { {0, (char*)ip}, {0, (char*)port} }; + + WAIT_FOR_SLAVE_SELECT(); + + // Send Command + SpiDrv::sendCmd(GET_REMOTE_DATA_CMD, PARAM_NUMS_1); + SpiDrv::sendParam(&sock, sizeof(sock), LAST_PARAM); + + //Wait the reply elaboration + SpiDrv::waitForSlaveReady(); + + // Wait for reply + SpiDrv::waitResponseParams(GET_REMOTE_DATA_CMD, PARAM_NUMS_2, params); + + SpiDrv::spiSlaveDeselect(); +} + + // Public Methods diff --git a/hardware/arduino/avr/libraries/WiFi/utility/wifi_drv.h b/libraries/WiFi/src/utility/wifi_drv.h similarity index 99% rename from hardware/arduino/avr/libraries/WiFi/utility/wifi_drv.h rename to libraries/WiFi/src/utility/wifi_drv.h index d6ec029de..61e9a3943 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/wifi_drv.h +++ b/libraries/WiFi/src/utility/wifi_drv.h @@ -2,9 +2,9 @@ #define WiFi_Drv_h #include <inttypes.h> -#include "wifi_spi.h" +#include "utility/wifi_spi.h" #include "IPAddress.h" -#include "../WiFiUdp.h" +#include "WiFiUdp.h" // Key index length #define KEY_IDX_LEN 1 @@ -41,11 +41,11 @@ private: static int getHostByName(IPAddress& aResult); - /* - * Get remote Data information on UDP socket - */ - static void getRemoteData(uint8_t sock, uint8_t *ip, uint8_t *port); - + /* + * Get remote Data information on UDP socket + */ + static void getRemoteData(uint8_t sock, uint8_t *ip, uint8_t *port); + public: /* @@ -239,8 +239,8 @@ public: */ static char* getFwVersion(); - friend class WiFiUDP; - + friend class WiFiUDP; + }; extern WiFiDrv wiFiDrv; diff --git a/hardware/arduino/avr/libraries/WiFi/utility/wl_definitions.h b/libraries/WiFi/src/utility/wl_definitions.h similarity index 98% rename from hardware/arduino/avr/libraries/WiFi/utility/wl_definitions.h rename to libraries/WiFi/src/utility/wl_definitions.h index 1ec8e712c..44d0525a4 100644 --- a/hardware/arduino/avr/libraries/WiFi/utility/wl_definitions.h +++ b/libraries/WiFi/src/utility/wl_definitions.h @@ -28,7 +28,7 @@ #define WL_MAX_ATTEMPT_CONNECTION 10 typedef enum { - WL_NO_SHIELD = 255, + WL_NO_SHIELD = 255, WL_IDLE_STATUS = 0, WL_NO_SSID_AVAIL, WL_SCAN_COMPLETED, diff --git a/hardware/arduino/avr/libraries/WiFi/utility/wl_types.h b/libraries/WiFi/src/utility/wl_types.h similarity index 100% rename from hardware/arduino/avr/libraries/WiFi/utility/wl_types.h rename to libraries/WiFi/src/utility/wl_types.h